1 2009-12-01 Alexey Proskuryakov <ap@apple.com>
3 Reviewed by Darin Adler.
5 https://bugs.webkit.org/show_bug.cgi?id=32036
6 Implement CredentialStorage::getFromPersistentStorage for CFNetwork
8 * platform/network/cf/CredentialStorageCFNet.cpp:
9 (WebCore::CredentialStorage::getFromPersistentStorage):
11 2009-12-01 Daniel Bates <dbates@webkit.org>
13 Reviewed by Pavel Feldman.
15 https://bugs.webkit.org/show_bug.cgi?id=32001
17 Added missing localized strings (that I left out of the patch for bug #21554):
19 %d × %d pixels (Natural: %d × %d pixels)
21 Also, changed formatting of these stings to conform with existing ones (added
22 a space on both sides of the multiply sign).
24 * English.lproj/localizedStrings.js: Added stings.
25 * inspector/front-end/ElementsTreeOutline.js:
26 (WebInspector.ElementsTreeElement.prototype.createTooltipForImageNode):
28 2009-12-01 Dave Hyatt <hyatt@apple.com>
30 Reviewed by Simon Fraser.
32 Fix for bug 32032, empty namespaces should be allowed in @namespace directives in CSS.
34 Added fast/css/namespaces/namespaces-empty.xml
36 * css/CSSStyleSheet.cpp:
37 (WebCore::CSSStyleSheet::addNamespace):
38 (WebCore::CSSStyleSheet::determineNamespace):
40 2009-12-01 Joseph Pecoraro <joepeck@webkit.org>
42 Reviewed by Timothy Hatcher.
44 Web Inspector: Escape key in the Search Field should be more User Friendly
45 https://bugs.webkit.org/show_bug.cgi?id=32005
47 * inspector/front-end/inspector.js:
48 (WebInspector.loaded): add mousedown listener on the search field
49 (WebInspector.searchFieldManualFocus): user clicked to focus on the search field
50 (WebInspector.searchKeyDown): handle escape
52 2009-12-01 Dave Hyatt <hyatt@apple.com>
54 Reviewed by David Kilzer.
56 @namespace directives need to use "maybe_space" in the "maybe_ns_prefix" portion of the grammar to match
57 the spec. Not doing so prevent comments from being used immmediately after the namespace prefix.
59 Added fast/css/namespaces-comments.xml
63 2009-12-01 Yael Aharon <yael.aharon@nokia.com>
65 Reviewed by Timothy Hatcher.
67 Reloading WebInspector from context menu is closing it instead of reloading.
68 https://bugs.webkit.org/show_bug.cgi?id=32004
70 When reloading WebInspector, don't delete its m_page.
72 * inspector/InspectorController.cpp:
73 (WebCore::InspectorController::close):
75 2009-12-01 Steve Block <steveblock@google.com>
77 Reviewed by Dimitri Glazkov.
79 Adds V8 bindings for Geolocation.
80 https://bugs.webkit.org/show_bug.cgi?id=30206
82 Also adds Geolocation files to Chrome build files.
84 * WebCore.gyp/WebCore.gyp: Modified. Corrects list of Geolocation IDL files.
85 * WebCore.gypi: Modified. Adds Geolocation files.
86 * bindings/v8/DOMObjectsInclude.h: Modified. Adds Geolocation includes.
87 * bindings/v8/DerivedSourcesAllInOne.cpp: Modified. Adds Geolocation files.
88 * bindings/v8/V8Index.cpp: Modified. Includes Geolocation generated headers.
89 * bindings/v8/V8Index.h: Modified. Adds Geolocation types to DOM_OBJECT_TYPES.
90 * bindings/v8/custom/V8CoordinatesCustom.cpp: Added. Handles optional properties.
91 * bindings/v8/custom/V8CustomBinding.h: Modified. Declares callbacks and getters.
92 * bindings/v8/custom/V8CustomPositionCallback.cpp: Added.
93 (WebCore::V8CustomPositionCallback::V8CustomPositionCallback): Added. Constructor.
94 (WebCore::V8CustomPositionCallback::~V8CustomPositionCallback): Added. Destructor.
95 (WebCore::V8CustomPositionCallback::handleEvent): Added. Invokes callback.
96 * bindings/v8/custom/V8CustomPositionCallback.h: Added.
97 (WebCore::V8CustomPositionCallback::create): Added. Factory method.
98 * bindings/v8/custom/V8CustomPositionErrorCallback.cpp: Added.
99 (WebCore::V8CustomPositionErrorCallback::V8CustomPositionErrorCallback): Added. Constructor.
100 (WebCore::V8CustomPositionErrorCallback::~V8CustomPositionErrorCallback): Added. Destructor.
101 (WebCore::V8CustomPositionErrorCallback::handleEvent): Added. Invokes callback.
102 * bindings/v8/custom/V8CustomPositionErrorCallback.h: Added.
103 (WebCore::V8CustomPositionErrorCallback::create): Added. Factory method.
104 * bindings/v8/custom/V8GeolocationCustom.cpp: Added.
105 (WebCore::throwTypeMismatchException): Added. Throws a type mismatch error.
106 (WebCore::createPositionCallback): Added. Handles type checking for successCallback argument.
107 (WebCore::createPositionErrorCallback): Added. Handles type checking for errorCallback argument.
108 (WebCore::createPositionOptions): Added. Handles type checking for positionOptions argument.
110 2009-12-01 Yury Semikhatsky <yurys@chromium.org>
112 Reviewed by Adam Barth.
114 Provide a way to get ScriptState for the inspected page.
116 https://bugs.webkit.org/show_bug.cgi?id=32020
118 * bindings/v8/ScriptController.cpp:
119 (WebCore::ScriptController::mainWorldScriptState):
120 * bindings/v8/ScriptController.h:
121 * bindings/v8/ScriptState.cpp:
122 (WebCore::scriptStateFromPage):
124 2009-12-01 Chris Marrin <cmarrin@apple.com>
126 Reviewed by Adam Roben.
128 Changed mallocs to fastMallocs and frees to fastFrees in GraphicsContext3D. Also added error returns
129 https://bugs.webkit.org/show_bug.cgi?id=30778
131 * platform/graphics/mac/GraphicsContext3DMac.cpp:
132 (WebCore::GraphicsContext3D::getProgramInfoLog):
133 (WebCore::GraphicsContext3D::getShaderInfoLog):
134 (WebCore::GraphicsContext3D::getShaderSource):
135 (WebCore::imageToTexture):
137 2009-12-01 Mads Ager <ager@chromium.org>
139 Reviewed by Eric Seidel.
141 [V8] Don't crash in DOMWindow event getter in OOM situations
142 https://bugs.webkit.org/show_bug.cgi?id=32017
144 Add missing null handle checks in DOMWindow event property
145 accessors. V8Proxy::context(frame) can return a null handle in
146 OOM situations either if failing to initialize a context or if an
147 OOM is handled gracefully and javascript is disabled.
149 No new tests because we don't have a good way to test
152 * bindings/v8/custom/V8DOMWindowCustom.cpp:
153 (WebCore::ACCESSOR_GETTER):
154 (WebCore::ACCESSOR_SETTER):
156 2009-12-01 Chris Marrin <cmarrin@apple.com>
158 Reviewed by Oliver Hunt.
160 Updated HTMLCanvasElement to accept "experimental-webgl" as the context name.
161 https://bugs.webkit.org/show_bug.cgi?id=31672
163 * html/HTMLCanvasElement.cpp:
164 (WebCore::HTMLCanvasElement::getContext):
166 2009-12-01 Pavel Feldman <pfeldman@dhcp-172-28-174-220.spb.corp.google.com>
168 Not reviewed: chromium build fix, added missing import.
170 * inspector/InspectorFrontendHost.cpp:
172 2009-12-01 Pavel Feldman <pfeldman@chromium.org>
174 Not reviewed: fix windows build via unexcluding generated files from
177 * WebCore.vcproj/WebCore.vcproj:
179 2009-12-01 Mark Rowe <mrowe@apple.com>
181 Stop copying IDL files in to the WebCore framework wrapper.
183 * WebCore.xcodeproj/project.pbxproj:
185 2009-12-01 Mark Rowe <mrowe@apple.com>
187 Fix the Tiger build by making the Xcode project compatible with Xcode 2.4.
189 This was probably broken by hand-editing the project file as Xcode itself
190 knows how to keep project files to a backwards-compatible subset of its format.
192 * WebCore.xcodeproj/project.pbxproj:
194 2009-12-01 Pavel Feldman <pfeldman@chromium.org>
196 Not reviewed: windows build fix (bad vcproj in r51528).
198 * WebCore.vcproj/WebCore.vcproj:
200 2009-11-27 Pavel Feldman <pfeldman@dhcp-172-28-174-220.spb.corp.google.com>
202 Reviewed by Timothy Hatcher.
204 Web Inspector: Split InspectorBackend into three parts: backend,
205 injected script host and frontend host.
207 https://bugs.webkit.org/show_bug.cgi?id=31888
209 * DerivedSources.make:
213 * WebCore.vcproj/WebCore.vcproj:
214 * WebCore.xcodeproj/project.pbxproj:
215 * WebCoreSources.bkl:
216 * bindings/js/JSBindingsAllInOne.cpp:
217 * bindings/js/JSInspectorBackendCustom.cpp: Removed.
218 * bindings/js/JSInspectorFrontendHostCustom.cpp: Added.
219 (WebCore::JSInspectorFrontendHost::search):
220 (WebCore::JSInspectorFrontendHost::setting):
221 (WebCore::JSInspectorFrontendHost::setSetting):
222 * bindings/js/ScriptObject.cpp:
223 (WebCore::ScriptGlobalObject::set):
224 * bindings/js/ScriptObject.h:
225 * bindings/v8/DOMObjectsInclude.h:
226 * bindings/v8/DerivedSourcesAllInOne.cpp:
227 * bindings/v8/ScriptObject.cpp:
228 (WebCore::ScriptGlobalObject::set):
229 * bindings/v8/ScriptObject.h:
230 * bindings/v8/V8Index.cpp:
231 * bindings/v8/V8Index.h:
232 * bindings/v8/custom/V8CustomBinding.h:
233 * bindings/v8/custom/V8InjectedScriptHostCustom.cpp: Added.
234 (WebCore::CALLBACK_FUNC_DECL):
235 * bindings/v8/custom/V8InspectorBackendCustom.cpp: Removed.
236 * bindings/v8/custom/V8InspectorFrontendHostCustom.cpp: Added.
237 (WebCore::CALLBACK_FUNC_DECL):
238 * inspector/InjectedScriptHost.cpp: Added.
239 (WebCore::InjectedScriptHost::InjectedScriptHost):
240 (WebCore::InjectedScriptHost::~InjectedScriptHost):
241 (WebCore::InjectedScriptHost::copyText):
242 (WebCore::InjectedScriptHost::nodeForId):
243 (WebCore::InjectedScriptHost::wrapObject):
244 (WebCore::InjectedScriptHost::unwrapObject):
245 (WebCore::InjectedScriptHost::pushNodePathToFrontend):
246 (WebCore::InjectedScriptHost::addNodesToSearchResult):
247 (WebCore::InjectedScriptHost::currentCallFrame):
248 (WebCore::InjectedScriptHost::databaseForId):
249 (WebCore::InjectedScriptHost::selectDatabase):
250 (WebCore::InjectedScriptHost::selectDOMStorage):
251 (WebCore::InjectedScriptHost::reportDidDispatchOnInjectedScript):
252 (WebCore::InjectedScriptHost::inspectorDOMAgent):
253 (WebCore::InjectedScriptHost::inspectorFrontend):
254 * inspector/InjectedScriptHost.h: Added.
255 (WebCore::InjectedScriptHost::create):
256 (WebCore::InjectedScriptHost::inspectorController):
257 (WebCore::InjectedScriptHost::disconnectController):
258 * inspector/InjectedScriptHost.idl: Added.
259 * inspector/InspectorBackend.cpp:
260 (WebCore::InspectorBackend::InspectorBackend):
261 (WebCore::InspectorBackend::storeLastActivePanel):
262 (WebCore::InspectorBackend::toggleNodeSearch):
263 (WebCore::InspectorBackend::resourceTrackingEnabled):
264 (WebCore::InspectorBackend::debuggerEnabled):
265 (WebCore::InspectorBackend::enableDebugger):
266 (WebCore::InspectorBackend::disableDebugger):
267 (WebCore::InspectorBackend::addBreakpoint):
268 (WebCore::InspectorBackend::updateBreakpoint):
269 (WebCore::InspectorBackend::removeBreakpoint):
270 (WebCore::InspectorBackend::pauseInDebugger):
271 (WebCore::InspectorBackend::resumeDebugger):
272 (WebCore::InspectorBackend::stepOverStatementInDebugger):
273 (WebCore::InspectorBackend::stepIntoStatementInDebugger):
274 (WebCore::InspectorBackend::stepOutOfFunctionInDebugger):
275 (WebCore::InspectorBackend::pauseOnExceptions):
276 (WebCore::InspectorBackend::setPauseOnExceptions):
277 (WebCore::InspectorBackend::profilerEnabled):
278 (WebCore::InspectorBackend::enableProfiler):
279 (WebCore::InspectorBackend::disableProfiler):
280 (WebCore::InspectorBackend::startProfiling):
281 (WebCore::InspectorBackend::stopProfiling):
282 (WebCore::InspectorBackend::getProfileHeaders):
283 (WebCore::InspectorBackend::getProfile):
284 (WebCore::InspectorBackend::currentCallFrame):
285 (WebCore::InspectorBackend::highlightDOMNode):
286 (WebCore::InspectorBackend::hideDOMNodeHighlight):
287 (WebCore::InspectorBackend::getCookies):
288 (WebCore::InspectorBackend::deleteCookie):
289 (WebCore::InspectorBackend::didEvaluateForTestInFrontend):
290 (WebCore::InspectorBackend::nodeForId):
291 * inspector/InspectorBackend.h:
292 (WebCore::InspectorBackend::create):
293 * inspector/InspectorBackend.idl:
294 * inspector/InspectorController.cpp:
295 (WebCore::InspectorController::InspectorController):
296 (WebCore::InspectorController::~InspectorController):
297 (WebCore::InspectorController::inspectedPageDestroyed):
298 (WebCore::InspectorController::windowScriptObjectAvailable):
299 * inspector/InspectorController.h:
300 (WebCore::InspectorController::inspectorFrontendHost):
301 (WebCore::InspectorController::injectedScriptHost):
302 * inspector/InspectorFrontendHost.cpp: Added.
303 (WebCore::InspectorFrontendHost::InspectorFrontendHost):
304 (WebCore::InspectorFrontendHost::~InspectorFrontendHost):
305 (WebCore::InspectorFrontendHost::loaded):
306 (WebCore::InspectorFrontendHost::attach):
307 (WebCore::InspectorFrontendHost::detach):
308 (WebCore::InspectorFrontendHost::closeWindow):
309 (WebCore::InspectorFrontendHost::windowUnloading):
310 (WebCore::InspectorFrontendHost::setAttachedWindowHeight):
311 (WebCore::InspectorFrontendHost::moveWindowBy):
312 (WebCore::InspectorFrontendHost::localizedStringsURL):
313 (WebCore::InspectorFrontendHost::hiddenPanels):
314 (WebCore::InspectorFrontendHost::platform):
315 (WebCore::InspectorFrontendHost::port):
316 (WebCore::InspectorFrontendHost::addResourceSourceToFrame):
317 (WebCore::InspectorFrontendHost::addSourceToFrame):
318 * inspector/InspectorFrontendHost.h: Added.
319 (WebCore::InspectorFrontendHost::create):
320 (WebCore::InspectorFrontendHost::inspectorController):
321 (WebCore::InspectorFrontendHost::disconnectController):
322 * inspector/InspectorFrontendHost.idl: Added.
323 * inspector/front-end/Breakpoint.js:
324 (WebInspector.Breakpoint.prototype.set condition):
325 * inspector/front-end/BreakpointsSidebarPane.js:
326 (WebInspector.BreakpointsSidebarPane.prototype.addBreakpoint):
327 (WebInspector.BreakpointsSidebarPane.prototype.removeBreakpoint):
328 (WebInspector.BreakpointsSidebarPane.prototype._breakpointEnableChanged):
329 * inspector/front-end/ConsoleView.js:
330 (WebInspector.ConsoleView.prototype.clearMessages):
331 * inspector/front-end/CookieItemsView.js:
332 (WebInspector.CookieItemsView.prototype._deleteCookieCallback):
333 * inspector/front-end/DOMAgent.js:
334 (WebInspector.DOMAgent.prototype.getChildNodesAsync):
335 (WebInspector.DOMAgent.prototype.setAttributeAsync):
336 (WebInspector.DOMAgent.prototype.removeAttributeAsync):
337 (WebInspector.DOMAgent.prototype.setTextNodeValueAsync):
338 (WebInspector.Cookies.getCookiesAsync):
339 (WebInspector.EventListeners.getEventListenersForNodeAsync):
340 * inspector/front-end/DOMStorage.js:
341 (WebInspector.DOMStorage.prototype.getEntries):
342 (WebInspector.DOMStorage.prototype.setItem):
343 (WebInspector.DOMStorage.prototype.removeItem):
344 * inspector/front-end/Database.js:
345 (WebInspector.Database.prototype.getTableNames):
346 * inspector/front-end/ElementsPanel.js:
347 (WebInspector.ElementsPanel.this.treeOutline.focusedNodeChanged):
348 (WebInspector.ElementsPanel.prototype.hide):
349 (WebInspector.ElementsPanel.prototype.reset):
350 (WebInspector.ElementsPanel.prototype.handleCopyEvent):
351 (WebInspector.ElementsPanel.prototype._nodeSearchButtonClicked):
352 * inspector/front-end/ElementsTreeOutline.js:
353 (WebInspector.ElementsTreeOutline.prototype.set focusedDOMNode.restoreHighlightToHoveredNode):
354 (WebInspector.ElementsTreeOutline.prototype.set focusedDOMNode):
356 * inspector/front-end/EventListenersSidebarPane.js:
357 (WebInspector.EventListenersSidebarPane.prototype):
358 * inspector/front-end/InjectedScript.js:
359 (InjectedScript._evaluateAndWrap):
360 (InjectedScript.performSearch.addNodesToResults):
361 (InjectedScript.getCallFrames):
362 (InjectedScript._callFrameForId):
363 (InjectedScript._clearConsoleMessages):
364 (InjectedScript._inspectObject):
365 (InjectedScript._copy):
366 (InjectedScript._ensureCommandLineAPIInstalled):
367 (InjectedScript._window):
368 (InjectedScript._nodeForId):
369 (InjectedScript._objectForId):
370 (InjectedScript.pushNodeToFrontend):
371 (InjectedScript.executeSql):
372 (InjectedScript.executeSql.errorCallback):
373 (InjectedScript.executeSql.queryTransaction):
374 * inspector/front-end/InjectedScriptAccess.js:
375 (InjectedScriptAccess._installHandler.InjectedScriptAccess.methodName):
376 (InjectedScriptAccess._installHandler):
377 * inspector/front-end/InspectorBackendStub.js: Added.
378 (.WebInspector.InspectorBackendStub):
379 (.WebInspector.InspectorBackendStub.prototype.wrapCallback):
380 (.WebInspector.InspectorBackendStub.prototype.platform):
381 (.WebInspector.InspectorBackendStub.prototype.port):
382 (.WebInspector.InspectorBackendStub.prototype.closeWindow):
383 (.WebInspector.InspectorBackendStub.prototype.attach):
384 (.WebInspector.InspectorBackendStub.prototype.detach):
385 (.WebInspector.InspectorBackendStub.prototype.storeLastActivePanel):
386 (.WebInspector.InspectorBackendStub.prototype.clearMessages):
387 (.WebInspector.InspectorBackendStub.prototype.searchingForNode):
388 (.WebInspector.InspectorBackendStub.prototype.search):
389 (.WebInspector.InspectorBackendStub.prototype.toggleNodeSearch):
390 (.WebInspector.InspectorBackendStub.prototype.setAttachedWindowHeight):
391 (.WebInspector.InspectorBackendStub.prototype.moveByUnrestricted):
392 (.WebInspector.InspectorBackendStub.prototype.addResourceSourceToFrame):
393 (.WebInspector.InspectorBackendStub.prototype.addSourceToFrame):
394 (.WebInspector.InspectorBackendStub.prototype.getResourceDocumentNode):
395 (.WebInspector.InspectorBackendStub.prototype.highlightDOMNode):
396 (.WebInspector.InspectorBackendStub.prototype.hideDOMNodeHighlight):
397 (.WebInspector.InspectorBackendStub.prototype.inspectedWindow):
398 (.WebInspector.InspectorBackendStub.prototype.loaded):
399 (.WebInspector.InspectorBackendStub.prototype.localizedStringsURL):
400 (.WebInspector.InspectorBackendStub.prototype.windowUnloading):
401 (.WebInspector.InspectorBackendStub.prototype.hiddenPanels):
402 (.WebInspector.InspectorBackendStub.prototype.debuggerEnabled):
403 (.WebInspector.InspectorBackendStub.prototype.enableResourceTracking):
404 (.WebInspector.InspectorBackendStub.prototype.disableResourceTracking):
405 (.WebInspector.InspectorBackendStub.prototype.resourceTrackingEnabled):
406 (.WebInspector.InspectorBackendStub.prototype.enableDebugger):
407 (.WebInspector.InspectorBackendStub.prototype.disableDebugger):
408 (.WebInspector.InspectorBackendStub.prototype.addBreakpoint):
409 (.WebInspector.InspectorBackendStub.prototype.removeBreakpoint):
410 (.WebInspector.InspectorBackendStub.prototype.updateBreakpoint):
411 (.WebInspector.InspectorBackendStub.prototype.pauseInDebugger):
412 (.WebInspector.InspectorBackendStub.prototype.pauseOnExceptions):
413 (.WebInspector.InspectorBackendStub.prototype.setPauseOnExceptions):
414 (.WebInspector.InspectorBackendStub.prototype.resumeDebugger):
415 (.WebInspector.InspectorBackendStub.prototype.profilerEnabled):
416 (.WebInspector.InspectorBackendStub.prototype.enableProfiler):
417 (.WebInspector.InspectorBackendStub.prototype.disableProfiler):
418 (.WebInspector.InspectorBackendStub.prototype.startProfiling):
419 (.WebInspector.InspectorBackendStub.prototype.stopProfiling):
420 (.WebInspector.InspectorBackendStub.prototype.getProfileHeaders):
421 (.WebInspector.InspectorBackendStub.prototype.getProfile):
422 (.WebInspector.InspectorBackendStub.prototype.takeHeapSnapshot):
423 (.WebInspector.InspectorBackendStub.prototype.databaseTableNames):
424 (.WebInspector.InspectorBackendStub.prototype.stepIntoStatementInDebugger):
425 (.WebInspector.InspectorBackendStub.prototype.stepOutOfFunctionInDebugger):
426 (.WebInspector.InspectorBackendStub.prototype.stepOverStatementInDebugger):
427 (.WebInspector.InspectorBackendStub.prototype.setSetting):
428 (.WebInspector.InspectorBackendStub.prototype.dispatchOnInjectedScript):
429 (.WebInspector.InspectorBackendStub.prototype.releaseWrapperObjectGroup):
430 (.WebInspector.InspectorBackendStub.prototype.setting):
431 * inspector/front-end/InspectorControllerStub.js:
432 * inspector/front-end/InspectorFrontendHostStub.js: Added.
433 (.WebInspector.InspectorFrontendHostStub):
434 (.WebInspector.InspectorFrontendHostStub.prototype.platform):
435 (.WebInspector.InspectorFrontendHostStub.prototype.port):
436 (.WebInspector.InspectorFrontendHostStub.prototype.closeWindow):
437 (.WebInspector.InspectorFrontendHostStub.prototype.attach):
438 (.WebInspector.InspectorFrontendHostStub.prototype.detach):
439 (.WebInspector.InspectorFrontendHostStub.prototype.search):
440 (.WebInspector.InspectorFrontendHostStub.prototype.setAttachedWindowHeight):
441 (.WebInspector.InspectorFrontendHostStub.prototype.moveWindowBy):
442 (.WebInspector.InspectorFrontendHostStub.prototype.addResourceSourceToFrame):
443 (.WebInspector.InspectorFrontendHostStub.prototype.addSourceToFrame):
444 (.WebInspector.InspectorFrontendHostStub.prototype.loaded):
445 (.WebInspector.InspectorFrontendHostStub.prototype.localizedStringsURL):
446 (.WebInspector.InspectorFrontendHostStub.prototype.hiddenPanels):
447 (.WebInspector.InspectorFrontendHostStub.prototype.setSetting):
448 (.WebInspector.InspectorFrontendHostStub.prototype.setting):
449 * inspector/front-end/ProfileView.js:
450 (WebInspector.CPUProfileView):
451 (WebInspector.CPUProfileType.prototype.buttonClicked):
452 * inspector/front-end/ProfilesPanel.js:
453 (WebInspector.ProfilesPanel.prototype._updateInterface):
454 (WebInspector.ProfilesPanel.prototype._enableProfiling):
455 (WebInspector.ProfilesPanel.prototype._toggleProfiling):
456 * inspector/front-end/ResourcesPanel.js:
457 (WebInspector.ResourcesPanel.prototype.reset):
458 (WebInspector.ResourcesPanel.prototype._toggleLargerResources):
459 (WebInspector.ResourcesPanel.prototype._enableResourceTracking):
460 (WebInspector.ResourcesPanel.prototype._toggleResourceTracking):
461 * inspector/front-end/ScriptView.js:
462 (WebInspector.ScriptView.prototype.setupSourceFrameIfNeeded):
463 * inspector/front-end/ScriptsPanel.js:
464 (WebInspector.ScriptsPanel.prototype.show):
465 (WebInspector.ScriptsPanel.prototype.addScript):
466 (WebInspector.ScriptsPanel.prototype.attachDebuggerWhenShown):
467 (WebInspector.ScriptsPanel.prototype.reset):
468 (WebInspector.ScriptsPanel.prototype.canShowResource):
469 (WebInspector.ScriptsPanel.prototype._showScriptOrResource):
470 (WebInspector.ScriptsPanel.prototype._addScriptToFilesMenu):
471 (WebInspector.ScriptsPanel.prototype._updatePauseOnExceptionsButton):
472 (WebInspector.ScriptsPanel.prototype._updateDebuggerButtons):
473 (WebInspector.ScriptsPanel.prototype._enableDebugging):
474 (WebInspector.ScriptsPanel.prototype._toggleDebugging):
475 (WebInspector.ScriptsPanel.prototype._togglePauseOnExceptions):
476 (WebInspector.ScriptsPanel.prototype._togglePause):
477 (WebInspector.ScriptsPanel.prototype._stepOverClicked):
478 (WebInspector.ScriptsPanel.prototype._stepIntoClicked):
479 (WebInspector.ScriptsPanel.prototype._stepOutClicked):
480 * inspector/front-end/SourceView.js:
481 (WebInspector.SourceView.prototype.setupSourceFrameIfNeeded):
482 (WebInspector.SourceView.prototype.performSearch.findSearchMatches):
483 (WebInspector.SourceView.prototype.performSearch):
484 * inspector/front-end/StylesSidebarPane.js:
485 (WebInspector.StylesSidebarPane.prototype._changeColorFormat):
486 * inspector/front-end/TestController.js:
487 (WebInspector.TestController.prototype.notifyDone):
488 * inspector/front-end/TimelinePanel.js:
489 (WebInspector.TimelinePanel.prototype._toggleTimelineButtonClicked):
490 * inspector/front-end/WatchExpressionsSidebarPane.js:
491 (WebInspector.WatchExpressionsSection.prototype.update):
492 (WebInspector.WatchExpressionsSection.prototype.loadSavedExpressions):
493 (WebInspector.WatchExpressionsSection.prototype.saveExpressions):
494 * inspector/front-end/WebKit.qrc:
495 * inspector/front-end/inspector.html:
496 * inspector/front-end/inspector.js:
497 (WebInspector.pendingDispatches.0.get platform):
498 (WebInspector.get port):
499 (WebInspector.set currentPanel):
500 (WebInspector._createPanels):
501 (WebInspector._loadPreferences):
502 (WebInspector.set attached):
503 (WebInspector._updateHoverHighlight):
504 (WebInspector.loaded):
506 (WebInspector.windowUnload):
507 (WebInspector.close):
508 (WebInspector.toolbarDrag):
509 (WebInspector.UIString):
511 2009-11-30 Shinichiro Hamaji <hamaji@chromium.org>
513 Reviewed by Dan Bernstein.
515 css2.1/t1205-c566-list-stl-00-e-ag.html is failing
516 https://bugs.webkit.org/show_bug.cgi?id=23264
517 css2.1/t1205-c565-list-pos-00-b.html is failing
518 https://bugs.webkit.org/show_bug.cgi?id=23263
520 Ignore whitespaces after list markers.
521 Rendering of this was already done for the case where inside=false.
522 This fixes the rendering of inside=true case and calcInlinePrefWidths.
524 Test: fast/lists/calc-width-with-space.html
526 * rendering/RenderBlock.cpp:
527 (WebCore::RenderBlock::calcInlinePrefWidths):
528 * rendering/RenderBlockLineLayout.cpp:
529 (WebCore::RenderBlock::findNextLineBreak):
531 2009-11-30 Fumitoshi Ukai <ukai@chromium.org>
533 Unreviewed Chromium build fix introduced by r51212
535 Fix scriptStateFromNode and ScriptStateFromPage to take DOMWrapperWorld
536 as the first argument.
537 Move mainThreadNormalWorld() to ScriptState.{h,cpp}.
538 Add debuggerWorld() and pluginWorld() in ScriptState.h.
540 * bindings/v8/ScriptController.cpp:
541 * bindings/v8/ScriptController.h:
542 * bindings/v8/ScriptState.cpp:
543 (WebCore::scriptStateFromNode):
544 (WebCore::scriptStateFromPage):
545 (WebCore::mainThreadNormalWorld):
546 * bindings/v8/ScriptState.h:
547 (WebCore::debuggerWorld):
548 (WebCore::pluginWorld):
550 2009-11-30 Enrica Casucci <enrica@apple.com>
552 Reviewed by Darin Adler.
554 Can focus but not type into content editable block that contains only non-editable content.
555 <rdar://problem/5982901>
556 https://bugs.webkit.org/show_bug.cgi?id=31750
558 The goal is to change the way we choose a visible position
559 after hit detection, by preferring a visually equivalent editable
560 position if available. By doing this, it is possible to add content
561 to an editable block that initially contains only non editable elements.
563 Test: editing/selection/mixed-editability-10.html
565 * WebCore.base.exp: Changed to match the new signature of downstream
566 and upstream in the Position class.
568 (WebCore::Position::atEditingBoundary): Added.
569 (WebCore::Position::upstream): Modified to allow to cross the boundary
570 between editable and non editable content if required.
571 (WebCore::Position::downstream): Modified to allow to cross the boundary
572 between editable and non editable content if required.
573 (WebCore::Position::isCandidate): Modified to qualify as candidates positions
574 that are at the editability boundary.
575 (WebCore::Position::getInlineBoxAndOffset): Modified to retrieve the inline box
576 to be used in calculating the caret rectangle.
578 (WebCore::Position::):
579 * dom/PositionIterator.cpp:
580 (WebCore::PositionIterator::atEditingBoundary): Added.
581 (WebCore::PositionIterator::isCandidate): Modified to qualify as candidates positions
582 that are at the editability boundary.
583 * dom/PositionIterator.h:
584 * editing/htmlediting.cpp:
585 (WebCore::firstEditablePositionAfterPositionInRoot): Modified to accept not only
586 descendants of the editable container, but the container itself.
587 (WebCore::lastEditablePositionBeforePositionInRoot): Modified to accept not only
588 descendants of the editable container, but the container itself.
589 * rendering/RenderObject.cpp:
590 (WebCore::RenderObject::createVisiblePosition): Added logic to prefer an editable position,
592 * rendering/RenderText.cpp:
593 (WebCore::RenderText::isAllCollapsibleWhitespace): Added.
594 * rendering/RenderText.h:
596 2009-11-30 Kevin Ollivier <kevino@theolliviers.com>
598 wx build fix, add header needed for wx build.
600 * css/CSSFontFaceSrcValue.cpp:
602 2009-11-30 Mark Rowe <mrowe@apple.com>
604 Reviewed by David Kilzer.
606 <rdar://problem/7424387> WebCore binary missing symbols when built for x86_64 from a machine that cannot run x86_64 binaries
608 The check for whether WTF_USE_PLUGIN_HOST_PROCESS is defined occurs under the native architecture of the build machine.
609 If that is 32-bit then WTF_USE_PLUGIN_HOST_PROCESS will not be defined. We work around this by forcing the check to
610 be performed against the x86_64 architecture.
612 * DerivedSources.make:
614 2009-11-30 Beth Dakin <bdakin@apple.com>
616 Reviewed by Oliver Hunt.
618 Fix for https://bugs.webkit.org/show_bug.cgi?id=32000 Crash in
619 Safari caused by extreme column-gap and column-width values
621 <rdar://problem/7425433>
623 Prevent desiredColumnCount from being less than 1 since it is used
625 * rendering/RenderBlock.cpp:
626 (WebCore::RenderBlock::calcColumnWidth):
628 2009-11-30 Alexey Proskuryakov <ap@apple.com>
630 Reviewed by Oliver Hunt.
632 https://bugs.webkit.org/show_bug.cgi?id=31659
633 Connection must be closed in case of Web Socket handshake error
635 The network connection was closed, but the close event wasn't dispatched.
637 Tested by websocket/tests/handshake-error.html, which is un-skipped now.
639 * platform/network/cf/SocketStreamHandleCFNet.cpp: (WebCore::SocketStreamHandle::platformClose):
640 Call client didHandle() method. This looks strange in CFNetwork implementation, because
641 it's the client that asked to close the stream, so it shouldn't need the callback. It makes
642 more sense in cross-process implementation, because closing is async there.
644 2009-11-30 Gavin Barraclough <barraclough@apple.com>
646 Reviewed by Geoff Garen.
648 Bug 31859 - Make world selection for JSC IsolatedWorlds automagical.
650 WebCore presently has to explicitly specify the world before entering into JSC,
651 which is a little fragile (particularly since property access via a
652 getter/setter might invoke execution). Instead derive the current world from
653 the lexical global object.
655 Remove the last uses of mainThreadCurrentWorld(), so the world is always obtained via
656 currentWorld(). Switch this to obtain the world from the ExecsState's lexical global
657 object instead. Remove the call/construct/evaluate 'InWorld' methods, since these
658 are no longer necessary.
661 * bindings/js/JSCallbackData.cpp:
662 (WebCore::JSCallbackData::invokeCallback):
663 * bindings/js/JSCallbackData.h:
664 (WebCore::JSCallbackData::JSCallbackData):
665 * bindings/js/JSCustomXPathNSResolver.cpp:
666 (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
667 * bindings/js/JSDOMBinding.cpp:
668 (WebCore::currentWorld):
669 (WebCore::mainThreadNormalWorld):
670 * bindings/js/JSDOMBinding.h:
671 (WebCore::WebCoreJSClientData::WebCoreJSClientData):
672 * bindings/js/JSDOMWindowBase.cpp:
673 (WebCore::JSDOMWindowBase::updateDocument):
674 * bindings/js/JSDOMWindowBase.h:
675 * bindings/js/JSEventListener.cpp:
676 (WebCore::JSEventListener::handleEvent):
677 (WebCore::JSEventListener::reportError):
678 * bindings/js/JSHTMLDocumentCustom.cpp:
679 (WebCore::JSHTMLDocument::open):
680 * bindings/js/JSNodeFilterCondition.cpp:
681 (WebCore::JSNodeFilterCondition::acceptNode):
682 * bindings/js/JSQuarantinedObjectWrapper.cpp:
683 (WebCore::JSQuarantinedObjectWrapper::construct):
684 (WebCore::JSQuarantinedObjectWrapper::call):
685 * bindings/js/ScheduledAction.cpp:
686 (WebCore::ScheduledAction::executeFunctionInContext):
687 * bindings/js/ScriptController.cpp:
688 (WebCore::ScriptController::evaluateInWorld):
689 (WebCore::ScriptController::initScript):
690 (WebCore::ScriptController::updateDocument):
691 * bindings/js/ScriptFunctionCall.cpp:
692 (WebCore::ScriptFunctionCall::call):
693 (WebCore::ScriptFunctionCall::construct):
694 * bindings/js/ScriptObjectQuarantine.cpp:
695 (WebCore::getQuarantinedScriptObject):
696 * bindings/js/ScriptState.cpp:
697 (WebCore::scriptStateFromNode):
698 (WebCore::scriptStateFromPage):
699 * bindings/js/ScriptState.h:
700 * bindings/js/WorkerScriptController.cpp:
701 (WebCore::WorkerScriptController::evaluate):
702 * bindings/objc/WebScriptObject.mm:
703 (-[WebScriptObject callWebScriptMethod:withArguments:]):
704 (-[WebScriptObject evaluateWebScript:]):
705 * bridge/NP_jsobject.cpp:
706 (_NPN_InvokeDefault):
710 * bridge/jni/jni_jsobject.mm:
711 (JavaJSObject::call):
712 (JavaJSObject::eval):
714 (WebCore::NodeFilter::acceptNode):
715 * dom/NodeIterator.h:
716 (WebCore::NodeIterator::nextNode):
717 (WebCore::NodeIterator::previousNode):
719 (WebCore::TreeWalker::parentNode):
720 (WebCore::TreeWalker::firstChild):
721 (WebCore::TreeWalker::lastChild):
722 (WebCore::TreeWalker::previousSibling):
723 (WebCore::TreeWalker::nextSibling):
724 (WebCore::TreeWalker::previousNode):
725 (WebCore::TreeWalker::nextNode):
726 * inspector/InspectorController.cpp:
727 (WebCore::InspectorController::windowScriptObjectAvailable):
728 (WebCore::InspectorController::didEvaluateForTestInFrontend):
729 * inspector/JavaScriptCallFrame.cpp:
730 (WebCore::JavaScriptCallFrame::evaluate):
732 2009-11-30 Eric Carlson <eric.carlson@apple.com>
734 Reviewed by Simon Fraser.
736 All HTML5 media element events should be regular events
737 https://bugs.webkit.org/show_bug.cgi?id=30513
739 * html/HTMLMediaElement.cpp:
740 (WebCore::HTMLMediaElement::selectMediaResource):
741 (WebCore::HTMLMediaElement::noneSupported):
742 (WebCore::HTMLMediaElement::mediaEngineError):
743 (WebCore::HTMLMediaElement::setNetworkState):
744 (WebCore::HTMLMediaElement::userCancelledLoad):
745 Call scheduleEvent instead of scheduleProgressEvent.
746 (WebCore::HTMLMediaElement::progressEventTimerFired):
747 Call scheduleEvent instead of scheduleProgressEvent. Call renderer->updateFromElement
748 after scheduling a 'progress' event so the controller will update download
750 * html/HTMLMediaElement.h:
751 Remove scheduleProgressEvent prototype.
753 2009-11-30 Joseph Pecoraro <joepeck@webkit.org>
755 Reviewed by Pavel Feldman.
757 Web Inspector: Wrong console output for Regexp escape sequence
758 https://bugs.webkit.org/show_bug.cgi?id=31538
760 Updated inspector/console-format.html
762 * inspector/front-end/ConsoleView.js:
763 (WebInspector.ConsoleView.createDividerElement): style issues.
764 (WebInspector.ConsoleView.createFilterElement): style issues.
765 (WebInspector.ConsoleView): added _customFormatters table.
766 (WebInspector.ConsoleView.prototype.updateMessageRepeatCount): style isses.
767 (WebInspector.ConsoleView.prototype._incrementErrorWarningCount): style issues.
768 (WebInspector.ConsoleView.prototype._format): simplified delegation to formatter logic.
769 (WebInspector.ConsoleView.prototype._formatobject):
770 (WebInspector.ConsoleView.prototype._formatnode):
771 (WebInspector.ConsoleView.prototype._printArray):
772 (WebInspector.ConsoleMessage.prototype._format): commented and broke down the algorithm into parts.
773 (WebInspector.ConsoleMessage.prototype._formatWithSubstitutionString.append): handle substitution string formatting.
774 (WebInspector.ConsoleMessage.prototype._formatIndividualValue): handling individual value formatting.
775 (WebInspector.ConsoleCommandResult):
776 * inspector/front-end/InjectedScript.js: simplified regex formatting.
777 * inspector/front-end/inspector.js:
778 (WebInspector.linkifyStringAsFragment): converted new RegExp to literal for performance benefits.
779 * inspector/front-end/utilities.js:
780 (Element.prototype.hasStyleClass): update inaccurate comment.
781 (String.prototype.trimURL): converted new RegExp to literal for performance benefits.
783 2009-11-30 Erik Arvidsson <arv@chromium.org>
785 Reviewed by Adam Barth.
787 Clean up V8 bindings for CSSStyleDeclaration and CSSVariableDeclaration
788 https://bugs.webkit.org/show_bug.cgi?id=31895
790 No new tests. This is already covered by:
791 fast/dom/CSSStyleDeclaration/css-computed-style-item.html
792 fast/dom/CSSStyleDeclaration/css-style-item.html
794 * bindings/v8/V8Collection.h:
795 (WebCore::collectionStringIndexedPropertyGetter):
796 (WebCore::setCollectionStringIndexedGetter):
797 * bindings/v8/V8DOMWrapper.cpp:
798 (WebCore::V8DOMWrapper::getTemplate):
800 2009-11-30 Steve Block <steveblock@google.com>
802 Reviewed by Eric Seidel.
804 Adds include of wtf/StdLibExtras.h for DEFINE_STATIC_LOCAL in V8 ScriptController.
805 https://bugs.webkit.org/show_bug.cgi?id=31932
807 Build fix only, no new tests.
809 * bindings/v8/ScriptController.cpp: Modified. Adds include of wtf/StdLibExtras.h.
811 2009-11-30 Steve Block <steveblock@google.com>
813 Reviewed by Eric Seidel.
815 Adds PassOwnPtr include to ScriptExecutionContext.h.
816 https://bugs.webkit.org/show_bug.cgi?id=31929
818 Build fix only, no new tests.
820 * dom/ScriptExecutionContext.h: Modified. Adds PassOwnPtr include.
822 2009-11-30 Dirk Schulze <krit@webkit.org>
824 Reviewed by Nikolas Zimmermann.
826 REGRESSION (r49757): masking-mask-01-b.svg rendered incorrectly
827 [https://bugs.webkit.org/show_bug.cgi?id=31980]
829 It turns out, that we did not handle maskUnits="userSpaceOnUse"
830 correctly. We just need to move the context of the maskImage
831 if maskContentUnits="objectBoundingBox". The context gets scaled
832 on this unit combination, so we have to substract the position of
833 the targetRect. On userSpaceOnUse the position just depends on the
834 position of the mask element.
835 I added a test with some senseless and reasonable values for size
836 and postion of the mask and it's contents. I also used every
837 combination of maskUnits and maskContentUnits to be sure, that it
840 Test: svg/custom/mask-with-all-units.svg
842 * svg/SVGMaskElement.cpp:
843 (WebCore::SVGMaskElement::drawMaskerContent):
845 2009-11-30 Steve Block <steveblock@google.com>
847 Reviewed by Eric Seidel.
849 Adds ENABLE(INSPECTOR) guards around DOMWindow::inspectorTimelineAgent.
850 https://bugs.webkit.org/show_bug.cgi?id=31928
852 Build fix only, no new tests.
854 * page/DOMWindow.cpp: Modified. Adds ENABLE(INSPECTOR) guards around DOMWindow::inspectorTimelineAgent.
856 2009-11-30 Steve Block <steveblock@google.com>
858 Reviewed by Eric Seidel.
860 Adds SHARED_WORKERS guards to V8 WorkerContextExecutionProxy.
861 https://bugs.webkit.org/show_bug.cgi?id=31926
863 Build fix only, no new tests.
865 * bindings/v8/WorkerContextExecutionProxy.cpp:
866 (WebCore::WorkerContextExecutionProxy::initContextIfNeeded):
867 (WebCore::WorkerContextExecutionProxy::convertToV8Object):
868 (WebCore::WorkerContextExecutionProxy::convertEventTargetToV8Object):
870 2009-11-30 Benjamin Poulain <benjamin.poulain@nokia.com>
872 Reviewed by Kenneth Rohde Christiansen.
874 Chrome::contentsSizeChanged() is called when the content size has not changed
875 https://bugs.webkit.org/show_bug.cgi?id=31978
877 Do not trigger contentsSizeChaned() is the new size is the same as the old one.
879 * page/FrameView.cpp:
880 (WebCore::FrameView::setContentsSize):
882 2009-11-30 Laszlo Gombos <laszlo.1.gombos@nokia.com>
884 Reviewed by Kenneth Rohde Christiansen.
886 [Qt] Fix some compiler warnings seen on QtWebKit/Mac
887 https://bugs.webkit.org/show_bug.cgi?id=31962
889 No new tests as there is no functional change.
891 * platform/network/ResourceHandle.h: Make destructor virtual as
892 after r50772 ResourceHandle has virtual functions.
894 * plugins/mac/PluginPackageMac.cpp:
895 (WebCore::PluginPackage::fetchInfo): Fix typo WTF is a namespace
898 * plugins/mac/PluginViewMac.cpp:
899 (WebCore::PluginView::setNPWindowIfNeeded): Add l to the format
902 2009-11-30 Xan Lopez <xlopez@igalia.com>
904 Reviewed by Gustavo Noronha.
906 Add new headers to sources list.
910 2009-11-30 Girish Ramakrishnan <girish@forwardbias.in>
912 Reviewed by Holger Freyther.
914 [Qt] Mac Plugins : Get context menu to work in QGraphicsView
916 Flash expects the value in record.where to be the global position for
917 displaying the context menu.
919 https://bugs.webkit.org/show_bug.cgi?id=31979
921 * plugins/mac/PluginViewMac.cpp:
922 (WebCore::PluginView::handleMouseEvent):
924 2009-11-30 Steve Block <steveblock@google.com>
926 Reviewed by Eric Seidel.
928 Adds PLATFORM(CHROMIUM) guards around memory usage code in V8GCController.
929 https://bugs.webkit.org/show_bug.cgi?id=31925
931 This code uses ChromiumBridge and Chromium-specific constant values not
932 appropriate for other platforms such as Android.
934 Build fix only, no new tests.
936 * bindings/v8/V8GCController.cpp: Modified. Adds PLATFORM(CHROMIUM) around Chromium-specific code.
938 2009-11-29 Brent Fulgham <bfulgham@webkit.org>
942 Correct draw signature used in ImageCairoWin.cpp.
944 * platform/graphics/win/ImageCairoWin.cpp:
945 (WebCore::BitmapImage::getHBITMAPOfSize):
946 (WebCore::BitmapImage::drawFrameMatchingSourceSize):
948 2009-11-28 Oliver Hunt <oliver@apple.com>
950 Reviewed by Sam Weinig.
952 postMessage should serialize File objects
953 https://bugs.webkit.org/show_bug.cgi?id=31955
955 Update SerializedScriptValue to include support for
956 File objects in the serialized object graph.
958 * bindings/js/SerializedScriptValue.cpp:
959 (WebCore::SerializedScriptValueData::SerializedScriptValueData):
960 (WebCore::SerializingTreeWalker::convertIfTerminal):
961 (WebCore::DeserializingTreeWalker::convertIfTerminal):
962 * bindings/js/SerializedScriptValue.h:
963 (WebCore::SerializedScriptValueData::):
964 (WebCore::SerializedScriptValueData::asString):
966 2009-11-29 Simon Fraser <simon.fraser@apple.com>
968 Reviewed by Dan Bernstein.
970 Optimize the hierarchy rebuilding of compositing layers
971 https://bugs.webkit.org/show_bug.cgi?id=31879
973 When updating the compositing layer hierarchy, instead of removing all
974 child layers and then re-adding them one by one, build a vector of child
975 layers, and set them in one go.
977 * platform/graphics/GraphicsLayer.h:
978 * platform/graphics/GraphicsLayer.cpp:
979 (WebCore::GraphicsLayer::setChildren): New method that takes a Vector of child
982 * platform/graphics/mac/GraphicsLayerCA.h: Override setChildren().
983 * platform/graphics/win/GraphicsLayerCACF.h: Ditto.
984 * platform/graphics/mac/GraphicsLayerCA.mm:
985 (WebCore::GraphicsLayerCA::setChildren): Implement setChildren() to
986 set the bit that notes that sublayers changed.
987 * platform/graphics/win/GraphicsLayerCACF.cpp:
988 (WebCore::GraphicsLayerCACF::setChildren): Implement setChildren() to
989 udpate sublayers, with a note that this is not efficient.
991 * rendering/RenderLayerCompositor.h:
992 * rendering/RenderLayerCompositor.cpp:
993 (WebCore::RenderLayerCompositor::updateCompositingLayers):
994 When updating compositing layers, use the faster updateLayerTreeGeometry() if
995 we know that no layer hierarchy changes are needed, and, at the root, use
996 the vector returned from rebuildCompositingLayerTree() to attach the root
998 (WebCore::RenderLayerCompositor::rebuildCompositingLayerTree): Changed to
999 collect child layers into Vectors of GraphicsLayers, which can be set as
1000 layer children in one go.
1001 (WebCore::RenderLayerCompositor::updateLayerTreeGeometry): Split out from
1002 rebuildCompositingLayerTree() for simplicity, and called when we just need to
1003 update layer geometry, without doing any reparenting.
1005 2009-11-29 Daniel Bates <dbates@webkit.org>
1007 Reviewed by Adam Barth.
1009 https://bugs.webkit.org/show_bug.cgi?id=31971
1011 Updated comment to reflect latest XSSAuditor bindings.
1013 No functionality was changed. So, no new tests.
1015 * page/XSSAuditor.h:
1017 2009-11-29 Daniel Bates <dbates@webkit.org>
1019 Reviewed by Eric Seidel.
1021 https://bugs.webkit.org/show_bug.cgi?id=31969
1023 Removes unnecessary #include files.
1025 No functionality was changed. So, no new tests.
1027 * css/CSSComputedStyleDeclaration.cpp: Removed include CachedImage.h, and
1029 * css/CSSCursorImageValue.cpp: Removed include RenderStyle.h
1030 * css/CSSFontFaceSrcValue.cpp: Removed include Node.h
1031 * css/CSSFontSelector.cpp: Removed include NodeList.h
1032 * css/CSSGradientValue.cpp: Removed include GraphicsContext.h, ImageBuffer.h
1033 * css/CSSImageValue.cpp: Removed include RenderStyle.h
1034 * css/CSSImportRule.cpp: Removed include MediaList.h
1035 * css/CSSMutableStyleDeclaration.cpp: Removed include CSSProperty.h
1036 * css/CSSRule.cpp: Removed include CSSStyleSheet.h
1037 * css/CSSStyleSelector.cpp: Removed include CSSFontFace.h,
1038 CSSFontFaceSource.h, and CSSProperty.h
1039 * page/EventSource.h: Removed include EventListener.h
1041 2009-11-29 Daniel Bates <dbates@webkit.org>
1043 Reviewed by Eric Seidel.
1045 https://bugs.webkit.org/show_bug.cgi?id=31965
1047 Removed #include KeyframeList.h from CSSStyleSelector.h. Instead,
1048 forward declared it.
1050 As a side effect, we need to #include KeyframeList.h in
1051 RenderLayerBacking.cpp.
1053 No functionality was changed. So, no new tests.
1055 * css/CSSStyleSelector.cpp:
1056 * css/CSSStyleSelector.h: Removed #include KeyframeList.h
1057 * rendering/RenderLayerBacking.cpp: Added #include KeyframeList.h
1059 2009-11-29 Shu Chang <Chang.Shu@nokia.com>
1061 Reviewed by Eric Seidel.
1063 Continue to search for matching node in the case where multiple nodes
1065 https://bugs.webkit.org/show_bug.cgi?id=31428
1067 Test: fast/dom/Element/id-in-node-list-index01.html
1069 * dom/DynamicNodeList.cpp:
1070 (WebCore::DynamicNodeList::itemWithName):
1072 2009-11-29 Daniel Bates <dbates@webkit.org>
1074 Reviewed by Eric Seidel.
1076 https://bugs.webkit.org/show_bug.cgi?id=31966
1078 Removed #include RenderStyle.h from file KeyframeAnimation.h. Instead,
1079 forward declared it.
1081 No functionality was changed. So, no new tests.
1083 * page/animation/KeyframeAnimation.cpp:
1084 * page/animation/KeyframeAnimation.h:
1086 2009-11-29 Daniel Bates <dbates@webkit.org>
1088 Unreviewed, fix change log entry date.
1090 For some reason, bugzilla-tool did not update the date in the change
1091 log entry for my last commit (r51468). So, this commit fixes the date
1094 2009-11-29 Daniel Bates <dbates@webkit.org>
1096 Reviewed by Dan Bernstein.
1098 https://bugs.webkit.org/show_bug.cgi?id=31964
1100 Removed #include StringImpl, StyleImage. Instead, forward declared them.
1101 Also, we can substitute #include <wtf/PassRefPtr.h> for #include PlatformString.h,
1102 since it seems we only really used it to include PassRefPtr.h.
1104 No functionality was changed. So, no new tests.
1106 * rendering/style/ContentData.h:
1108 2009-11-29 Zoltan Horvath <zoltan@webkit.org>
1110 Reviewed by Eric Seidel.
1112 Allow custom memory allocation control for classes of the rendering and storage directory in WebCore
1113 https://bugs.webkit.org/show_bug.cgi?id=31906
1115 Inherits the following classes from Noncopyable because these are instantiated
1116 by 'new' and no need to be copyable:
1118 class/struct name - instantiated at: WebCore/'location'
1120 class SQLTransactionClient - storage/DatabaseThread.cpp:45
1121 class SQLTransactionCoordinator - storage/DatabaseThread.cpp:46
1122 class OriginUsageRecord - storage/OriginQuotaManager.cpp:66
1123 class DatabaseTracker - storage/DatabaseTracker.cpp:62
1124 class ScrollbarTheme - (its child class) rendering/RenderScrollbarTheme.cpp:35
1125 class RenderSelectionInfoBase - (its child class) rendering/RenderView.cpp:310
1126 class RenderOverflow - rendering/RenderBox.cpp:2846
1128 Inherits the following classes from FastAllocBase because these are instantiated by 'new':
1130 struct FillLayer - css/CSSStyleSelector.cpp:197
1131 struct ShadowData - rendering/style/ShadowData.cpp:35
1132 class CounterContent - css/CSSStyleSelector.cpp:4111
1134 * platform/ScrollbarTheme.h:
1135 * rendering/RenderOverflow.h:
1136 * rendering/RenderSelectionInfo.h:
1137 * rendering/style/CounterContent.h:
1138 * rendering/style/FillLayer.h:
1139 * rendering/style/ShadowData.h:
1140 * storage/DatabaseTracker.h:
1141 * storage/OriginUsageRecord.h:
1142 * storage/SQLTransactionClient.h:
1143 * storage/SQLTransactionCoordinator.h:
1145 2009-11-28 Adam Barth <abarth@webkit.org>
1147 Reviewed by Dimitri Glazkov.
1149 [Chromium] Sify compose button alerts error
1150 https://bugs.webkit.org/show_bug.cgi?id=31394
1152 Test: http/tests/security/calling-versus-current.html
1154 We're supposed to use the calling context for security checks. In JSC
1155 land, this is the lexicalGlobalObject.
1157 * bindings/v8/V8Proxy.cpp:
1158 (WebCore::V8Proxy::canAccessPrivate):
1160 2009-11-27 Shinichiro Hamaji <hamaji@chromium.org>
1162 Unreviewed Chromium build fix introduced by r51428.
1164 [Chromium] Ignore line-height CSS property for PushButton
1165 https://bugs.webkit.org/show_bug.cgi?id=31712
1167 * rendering/RenderThemeChromiumSkia.cpp:
1168 (WebCore::RenderThemeChromiumSkia::adjustButtonStyle):
1170 2009-11-27 Shinichiro Hamaji <hamaji@chromium.org>
1172 Unreviewed Chromium test fix by reverting r51413.
1174 [v8] Do not check the thread when accessing DOMDataStore
1175 https://bugs.webkit.org/show_bug.cgi?id=31877
1177 * bindings/v8/V8DOMMap.cpp:
1178 (WebCore::getDOMNodeMap):
1179 (WebCore::getDOMObjectMap):
1180 (WebCore::getActiveDOMObjectMap):
1181 (WebCore::getDOMSVGElementInstanceMap):
1182 (WebCore::getDOMSVGObjectWithContextMap):
1184 2009-11-27 Daniel Bates <dbates@webkit.org>
1186 Unreviewed, comment fix.
1188 Corrected misspelling of the word "implemented".
1190 * inspector/front-end/InjectedScriptAccess.js:
1192 2009-11-27 Daniel Bates <dbates@webkit.org>
1194 Reviewed by Adam Barth.
1196 https://bugs.webkit.org/show_bug.cgi?id=31940
1198 Makes the error messages more descriptive when we refuse to load an object/embed or
1199 refuse to load from the document base URL.
1201 * page/XSSAuditor.cpp:
1202 (WebCore::XSSAuditor::canLoadObject): Changed console message to be more descriptive.
1203 (WebCore::XSSAuditor::canSetBaseElementURL): Ditto.
1205 2009-11-27 Yury Semikhatsky <yurys@chromium.org>
1207 Reviewed by Pavel Feldman.
1209 This is a WebCore part of the fix that allows to view plugin
1210 resources loaded by plugins.
1212 https://bugs.webkit.org/show_bug.cgi?id=31832
1214 * inspector/InspectorController.cpp:
1215 (WebCore::InspectorController::willSendRequest):
1216 (WebCore::InspectorController::didReceiveResponse):
1217 (WebCore::InspectorController::didReceiveContentLength):
1218 (WebCore::InspectorController::didFinishLoading):
1219 (WebCore::InspectorController::didFailLoading):
1220 * inspector/InspectorController.h:
1221 * inspector/InspectorResource.cpp:
1222 (WebCore::InspectorResource::addLength):
1223 * loader/ResourceLoadNotifier.cpp:
1224 (WebCore::ResourceLoadNotifier::didFailToLoad):
1225 (WebCore::ResourceLoadNotifier::dispatchWillSendRequest):
1226 (WebCore::ResourceLoadNotifier::dispatchDidReceiveResponse):
1227 (WebCore::ResourceLoadNotifier::dispatchDidReceiveContentLength):
1228 (WebCore::ResourceLoadNotifier::dispatchDidFinishLoading):
1230 2009-11-27 Yury Semikhatsky <yurys@chromium.org>
1232 Reviewed by Pavel Feldman.
1234 Instead of generating negative identifiers for cached resources in
1235 InspectorController and extending identifier type from 'unsigned long' to 'long
1236 long' reuse progress tracker from the inspected page to generate those
1237 identifiers. It guarantees that InspectorResources have unique ids since
1238 all of them are generated by that progress tracker.
1240 Added a couple new overloaded methods to Script* objects that accept
1241 long and unsigned long arguments. These types of argumens have already
1242 been passed as long long.
1244 https://bugs.webkit.org/show_bug.cgi?id=31921
1246 * bindings/js/ScriptFunctionCall.cpp:
1247 (WebCore::ScriptFunctionCall::appendArgument):
1248 * bindings/js/ScriptFunctionCall.h:
1249 * bindings/js/ScriptObject.cpp:
1250 (WebCore::ScriptObject::set):
1251 * bindings/js/ScriptObject.h:
1252 * bindings/v8/ScriptFunctionCall.cpp:
1253 (WebCore::ScriptFunctionCall::appendArgument):
1254 * bindings/v8/ScriptFunctionCall.h:
1255 * bindings/v8/ScriptObject.cpp:
1256 (WebCore::ScriptObject::set):
1257 * bindings/v8/ScriptObject.h:
1258 * inspector/InspectorBackend.cpp:
1259 (WebCore::InspectorBackend::dispatchOnInjectedScript):
1260 * inspector/InspectorController.cpp:
1261 (WebCore::InspectorController::InspectorController):
1262 (WebCore::InspectorController::getTrackedResource):
1263 (WebCore::InspectorController::didLoadResourceFromMemoryCache): Use inspected page's ProgressTracker to generate unique identifiers for cached resources in InspectorController.
1264 * inspector/InspectorController.h:
1265 * inspector/InspectorDOMAgent.cpp:
1266 (WebCore::InspectorDOMAgent::buildObjectForNode):
1267 (WebCore::InspectorDOMAgent::buildObjectForEventListener):
1268 * inspector/InspectorFrontend.cpp:
1269 (WebCore::InspectorFrontend::addResource):
1270 (WebCore::InspectorFrontend::updateResource):
1271 (WebCore::InspectorFrontend::removeResource):
1272 (WebCore::InspectorFrontend::updateFocusedNode):
1273 * inspector/InspectorFrontend.h:
1274 * inspector/InspectorResource.cpp:
1275 (WebCore::InspectorResource::InspectorResource):
1276 (WebCore::InspectorResource::createCached):
1277 * inspector/InspectorResource.h: Change InspectorResource identifier type from 'long long' to 'unsigned long'.
1278 (WebCore::InspectorResource::create):
1279 (WebCore::InspectorResource::identifier):
1280 * inspector/TimelineRecordFactory.cpp:
1281 (WebCore::TimelineRecordFactory::createResourceSendRequestRecord):
1282 (WebCore::TimelineRecordFactory::createResourceReceiveResponseRecord):
1283 (WebCore::TimelineRecordFactory::createResourceFinishRecord):
1285 2009-11-26 Shinichiro Hamaji <hamaji@chromium.org>
1287 Reviewed by Dan Bernstein.
1289 Assertion failure in RenderBlock::positionForPointWithInlineChildren when running fast/inline/relative-positioned-overflow.html
1290 https://bugs.webkit.org/show_bug.cgi?id=29966
1292 When an empty inline element is clicked, the root inline box has
1293 no leaf children. Use the renderer of a normal child instead.
1295 This change resolves Windows port's assertion failure in a layout test.
1296 Also, this fixes the behavior when a user drags the mouse from an
1297 empty inline element to above texts.
1299 Test: editing/selection/last-empty-inline.html
1301 * rendering/RenderBlock.cpp:
1302 (WebCore::RenderBlock::positionForPointWithInlineChildren):
1304 2009-11-26 Kent Tamura <tkent@chromium.org>
1306 Reviewed by Eric Seidel.
1308 [Chromium] Ignore line-height CSS property specified to push buttons on
1310 https://bugs.webkit.org/show_bug.cgi?id=31712
1312 LayoutTests/fast/forms/control-restrict-line-height.html checks that the
1313 following controls should ignore line-height CSS property.
1315 - <input type=button>
1316 - <input type=search>
1317 This change addresses the <input type=button> issue with Chromium/Windows
1320 * rendering/RenderThemeChromiumSkia.cpp: Implement adjustButtonStyle() to ignore line-height.
1321 * rendering/RenderThemeChromiumSkia.h: Declare adjustButtonStyle().
1323 2009-11-26 Kinuko Yasuda <kinuko@chromium.com>
1325 Reviewed by Eric Seidel.
1327 Remove the special charset meta tag in the clipboard so that
1328 copy-and-paste with interchange breaklines/spaces works correctly
1331 No new tests. Layout tests that involve copy-and-paste with
1332 interchange breaklines (like editing/pasteboard/paste-line-endings-00?)
1333 should pass on Mac/Chromium with this fix.
1335 * platform/chromium/ClipboardChromium.cpp:
1336 * platform/chromium/PasteboardChromium.cpp:
1337 (WebCore::Pasteboard::documentFragment):
1339 2009-11-26 İsmail Dönmez <ismail@namtrac.org>
1341 Reviewed by Eric Seidel.
1343 Compile with QT_NO_WHEELEVENT defined.
1345 * platform/qt/WheelEventQt.cpp:
1346 (WebCore::PlatformWheelEvent::applyDelta):
1348 2009-11-26 Laszlo Gombos <laszlo.1.gombos@nokia.com>
1350 Reviewed by Oliver Hunt.
1352 Move GOwnPtr* from wtf to wtf/gtk
1353 https://bugs.webkit.org/show_bug.cgi?id=31793
1355 No new tests as there is no functional change.
1357 * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp: Change the
1359 * platform/text/TextEncoding.cpp: Ditto.
1360 * platform/text/gtk/TextCodecGtk.cpp: Ditto.
1362 2009-11-26 Yury Semikhatsky <yurys@chromium.org>
1364 Not reviewed. Build fix: revert r51421.
1366 * inspector/InspectorController.cpp:
1367 (WebCore::InspectorController::willSendRequest):
1368 (WebCore::InspectorController::didReceiveResponse):
1369 (WebCore::InspectorController::didReceiveContentLength):
1370 (WebCore::InspectorController::didFinishLoading):
1371 (WebCore::InspectorController::didFailLoading):
1372 * inspector/InspectorController.h:
1373 * inspector/InspectorResource.cpp:
1374 (WebCore::InspectorResource::addLength):
1375 * loader/ResourceLoadNotifier.cpp:
1376 (WebCore::ResourceLoadNotifier::didFailToLoad):
1377 (WebCore::ResourceLoadNotifier::dispatchWillSendRequest):
1378 (WebCore::ResourceLoadNotifier::dispatchDidReceiveResponse):
1379 (WebCore::ResourceLoadNotifier::dispatchDidReceiveContentLength):
1380 (WebCore::ResourceLoadNotifier::dispatchDidFinishLoading):
1382 2009-11-26 Yury Semikhatsky <yurys@chromium.org>
1384 Reviewed by Pavel Feldman.
1386 This is a WebCore part of the fix that allows to view plugin
1387 resources loaded by plugins.
1389 https://bugs.webkit.org/show_bug.cgi?id=31832
1391 * inspector/InspectorController.cpp:
1392 (WebCore::InspectorController::willSendRequest):
1393 (WebCore::InspectorController::didReceiveResponse):
1394 (WebCore::InspectorController::didReceiveContentLength):
1395 (WebCore::InspectorController::didFinishLoading):
1396 (WebCore::InspectorController::didFailLoading):
1397 * inspector/InspectorController.h: Remove unused DocumentLoader parameters from inspector methods.
1398 * inspector/InspectorResource.cpp:
1399 (WebCore::InspectorResource::addLength): Update loading end time when new data are received.
1400 * loader/ResourceLoadNotifier.cpp:
1401 (WebCore::ResourceLoadNotifier::didFailToLoad): Notify InspectorController about the failure.
1402 (WebCore::ResourceLoadNotifier::dispatchWillSendRequest):
1403 (WebCore::ResourceLoadNotifier::dispatchDidReceiveResponse):
1404 (WebCore::ResourceLoadNotifier::dispatchDidReceiveContentLength):
1405 (WebCore::ResourceLoadNotifier::dispatchDidFinishLoading):
1407 2009-11-26 Daniel Bates <dbates@webkit.org>
1409 Reviewed by Pavel Feldman.
1411 https://bugs.webkit.org/show_bug.cgi?id=21554
1413 Implements support for hovering over <img> src to display the height and width of that image
1414 in a tooltip. Displays both the displayable and natural dimensions of the image.
1416 Test: inspector/elements-img-tooltip.html
1418 * inspector/front-end/ElementsTreeOutline.js:
1419 (WebInspector.ElementsTreeElement.prototype.createTooltipForImageNode): Added.
1420 (WebInspector.ElementsTreeElement.prototype._updateTitle.callback):
1421 (WebInspector.ElementsTreeElement.prototype._updateTitle):
1422 (WebInspector.ElementsTreeElement.prototype._nodeTitleInfo):
1423 * inspector/front-end/ObjectProxy.js:
1424 (WebInspector.ObjectProxy.getPropertiesAsync): Added.
1425 * inspector/front-end/inspector.js:
1426 (WebInspector.linkifyURLAsNode): Added tooltipText argument.
1427 (WebInspector.linkifyURL): Ditto.
1429 2009-11-26 Kevin Ollivier <kevino@theolliviers.com>
1431 wx build fix after drawPattern API change.
1433 * platform/graphics/wx/ImageWx.cpp:
1434 (WebCore::Image::drawPattern):
1436 2009-11-26 Anton Muhin <antonm@chromium.org>
1438 Reviewed by Adam Barth.
1440 Use an internal field instead of hidden property to speedup lookup
1441 of entered isolated world.
1443 Plus some inlinings.
1444 https://bugs.webkit.org/show_bug.cgi?id=31884
1446 Covered by layout tests + manual running of some benchmarks as
1449 * bindings/v8/V8DOMWrapper.cpp:
1450 * bindings/v8/V8DOMWrapper.h:
1451 (WebCore::V8DOMWrapper::setDOMWrapper):
1452 * bindings/v8/V8HiddenPropertyName.h:
1453 * bindings/v8/V8IsolatedWorld.cpp:
1454 (WebCore::V8IsolatedWorld::V8IsolatedWorld):
1455 * bindings/v8/V8IsolatedWorld.h:
1456 (WebCore::V8IsolatedWorld::getEntered):
1457 (WebCore::V8IsolatedWorld::getGlobalObject):
1458 * bindings/v8/custom/V8CustomBinding.h:
1460 2009-11-26 Jocelyn Turcotte <jocelyn.turcotte@nokia.com>
1462 Reviewed by Kenneth Rohde Christiansen.
1464 [Qt] Corrects build break on Windows.
1466 Rename platform/text/qt/TextBoundaries.cpp to TextBoundariesQt.cpp since
1467 platform/text/TextBoundaries.cpp was compiled instead when compiling with nmake.
1470 * platform/text/qt/TextBoundariesQt.cpp: Renamed from WebCore/platform/text/qt/TextBoundaries.cpp.
1471 (WebCore::findNextWordFromIndex):
1472 (WebCore::findWordBoundary):
1474 2009-11-26 Anton Muhin <antonm@chromium.org>
1476 Reviewed by Adam Barth.
1478 Do not check if the thread is main or not when accessing DOMDataStore as currently in Chromium WebKit is used in main thread only.
1479 https://bugs.webkit.org/show_bug.cgi?id=31877
1481 Covered by layout tests and buildbots.
1483 * bindings/v8/V8DOMMap.cpp:
1484 (WebCore::getDOMNodeMap):
1485 (WebCore::getDOMObjectMap):
1486 (WebCore::getActiveDOMObjectMap):
1487 (WebCore::getDOMSVGElementInstanceMap):
1488 (WebCore::getDOMSVGObjectWithContextMap):
1490 2009-11-26 Girish Ramakrishnan <girish@forwardbias.in>
1492 Reviewed by Holger Freyther.
1494 [Qt] Mac Plugins : Pass mouse position relative to the fake window
1496 When using off-screen rendering, we need to pass mouse events relative
1497 to the fake window instead of the global position.
1499 https://bugs.webkit.org/show_bug.cgi?id=31794
1501 * plugins/mac/PluginViewMac.cpp:
1502 (WebCore::PluginView::platformStart):
1503 (WebCore::PluginView::handleMouseEvent):
1505 2009-11-24 Holger Hans Peter Freyther <zecke@selfish.org>
1507 Reviewed by Eric Seidel.
1509 [Qt] Use QNetworkReply::rawHeaderPairs
1510 https://bugs.webkit.org/show_bug.cgi?id=31826
1512 The QNetworkReply is internally storing the HTTP headers
1513 as a list of pairs. Currently we have to ask the QNetworkReply
1514 to put all header names into a QStringList. Afterwards we will
1515 iterate over this QStringList and ask the QNetworkReply to
1516 give us the value for this header name. The current Qt implementation
1517 is doing a linear to find the header value.
1519 Use a new API to directly access the list of pairs and push
1520 this into WebCore. This avoids doing some allocations and doing
1521 linear searches from within a loop.
1523 * platform/network/qt/QNetworkReplyHandler.cpp:
1524 (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
1526 2009-11-21 Holger Hans Peter Freyther <zecke@selfish.org>
1528 Reviewed by Kenneth Rohde Christiansen.
1530 [Qt] Add Qt specific information of RenderPart
1531 https://bugs.webkit.org/show_bug.cgi?id=31203
1533 The WebCore::Widget of the RenderPart (RenderWidget) might be
1534 backed with a platform widget. Print both the WebCore::Widget
1535 and platform widget state. In the above bug we had a problem
1536 that the WebCore::Widget was invisible but the QWidget was
1539 * rendering/RenderTreeAsText.cpp:
1540 (WebCore::operator<<): Add special case for RenderPart
1542 2009-11-17 Holger Hans Peter Freyther <zecke@selfish.org>
1544 Reviewed by Kenneth Rohde Christiansen.
1546 [Qt] Call Widget::setSelfVisible from hide/show
1547 https://bugs.webkit.org/show_bug.cgi?id=31203
1549 Call Widget::setSelfVisible from Widget::show and
1550 Widget::hide and use isParentVisible to decide
1551 if the widget should be shown. This way client
1552 code can rely on isVisible.
1554 Change PluginViewQt::show, PluginViewQt::hide to
1555 call the base class as it is doing the right thing
1556 now. Add an assert verify that platfomWidget and
1557 platformPluginWidget are the same.
1559 * manual-tests/qt/qtplugin.html: Modify manual test
1560 * platform/qt/WidgetQt.cpp:
1561 (WebCore::Widget::show):
1562 (WebCore::Widget::hide):
1563 * plugins/qt/PluginViewQt.cpp:
1564 (WebCore::PluginView::show):
1565 (WebCore::PluginView::hide):
1567 2009-11-24 Holger Hans Peter Freyther <zecke@selfish.org>
1569 Reviewed by Alexey Proskuryakov.
1571 Fix compilation of REQUEST_DEBUG debug code
1572 https://bugs.webkit.org/show_bug.cgi?id=31850
1574 In r47907 the single parameter KURL constructor to parse
1575 from a WebCore::String was replaced with a two parameter
1576 constructor. I think in this debug case parsing the urls
1577 again is no problem and I have changed the code to use the
1578 two parameter version.
1580 * loader/loader.cpp:
1581 (WebCore::Loader::Host::didFinishLoading):
1583 2009-11-26 Søren Gjesse <sgjesse@chromium.org>
1585 Reviewed by Pavel Feldman.
1587 [V8] Avoid using JavaScript objects as context data
1588 https://bugs.webkit.org/show_bug.cgi?id=31873
1590 Change the context "data" from a JavaScript object holding the two properties type and value to
1591 a string holding type and value separated by a comma.
1593 * bindings/v8/V8Proxy.cpp:
1594 (WebCore::V8Proxy::setInjectedScriptContextDebugId):
1595 (WebCore::V8Proxy::setContextDebugId):
1596 (WebCore::V8Proxy::contextDebugId):
1598 2009-11-25 Dimitri Glazkov <dglazkov@chromium.org>
1600 Reviewed by David Levin.
1602 [Chromium] Implement canSetValueAttribute in the API, the clean-up part.
1603 https://bugs.webkit.org/show_bug.cgi?id=31894
1605 * accessibility/chromium/AccessibilityObjectWrapper.h: Added RefCounted decl.
1606 (WebCore::AccessibilityObjectWrapper::AccessibilityObjectWrapper): Removed mis-refcountingness.
1608 2009-11-25 Kenneth Russell <kbr@google.com>
1610 Reviewed by Oliver Hunt.
1612 Off-by-one error in index validation for drawElements and drawArrays
1613 https://bugs.webkit.org/show_bug.cgi?id=31891
1615 Fixed computation of number of elements for bound array objects.
1617 Test: fast/canvas/webgl/index-validation.html
1619 * html/canvas/WebGLRenderingContext.cpp:
1620 (WebCore::WebGLRenderingContext::vertexAttribPointer):
1622 2009-11-25 Dmitry Titov <dimich@chromium.org>
1624 Reviewed by David Levin.
1626 Update SharedScript to use eventNames() instead of EventNames()
1627 https://bugs.webkit.org/show_bug.cgi?id=31890
1629 * SharedScript/WebKitSharedScript.cpp:
1630 (WebCore::LoadEventTask::performTask):
1632 2009-11-25 Eric Carlson <eric.carlson@apple.com>
1634 Reviewed by Simon Fraser.
1636 <rdar://problem/7409331> Windows: Support closed caption in <video> element
1638 Enable closed captions in QuickTime/Windows media engine.
1640 * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
1641 (WebCore::MediaPlayerPrivate::hasClosedCaptions):
1642 (WebCore::MediaPlayerPrivate::setClosedCaptionsVisible):
1643 New, all through to m_qtMovie.
1645 * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.h:
1646 Make all but the destructor private since MediaPlayer call through the media
1649 * platform/graphics/win/QTMovieWin.cpp:
1650 (QTMovieWin::disableUnsupportedTracks):
1651 Use handy new constants for QuickTime track types.
1652 (QTMovieWin::hasClosedCaptions):
1653 (QTMovieWin::setClosedCaptionsVisible):
1654 New, closed caption support.
1655 * platform/graphics/win/QTMovieWin.h:
1657 * rendering/RenderMediaControls.cpp:
1658 (WebCore::RenderMediaControls::paintMediaControlsPart):
1659 Deal with closed caption buttons.
1661 * rendering/RenderThemeWin.cpp:
1662 (WebCore::RenderThemeWin::shouldRenderMediaControlPart):
1663 New, don't ask the media engine if it has closed captions unless the Safari theme will
1664 be able to render the button.
1665 (WebCore::RenderThemeWin::paintMediaToggleClosedCaptionsButton):
1667 * rendering/RenderThemeWin.h:
1669 2009-11-25 Drew Wilson <atwilson@chromium.org>
1671 Reviewed by David Levin.
1673 MessagePorts always look remotely entangled even when closed.
1674 https://bugs.webkit.org/show_bug.cgi?id=31698
1676 Tests: Existing tests suffice, Chromium soak test passes now.
1678 * bindings/v8/custom/V8CustomBinding.h:
1679 Removed kMessagePortEntangledPortIndex which is no longer used.
1680 * bindings/v8/V8GCController.cpp:
1681 (WebCore::GCPrologueVisitor::visitDOMWrapper):
1682 Simplified GC code to reflect the Chromium MessagePort implementation
1683 (locallyEntangledPort() always returns false).
1684 (WebCore::GCEpilogueVisitor::visitDOMWrapper):
1685 Cleaned up epilogue code to handle the case where the port gets closed
1686 in mid-GC (due to the parent context being freed).
1687 * dom/MessagePort.cpp:
1688 (WebCore::MessagePort::MessagePort):
1689 (WebCore::MessagePort::close):
1690 Now sets the closed flag.
1691 (WebCore::MessagePort::disentanglePorts):
1692 Updated to use new isCloned() API instead of relying on isEntangled(), which was incorrect.
1693 * dom/MessagePort.h:
1694 Added a m_closed flag and updated isEntangled() to check it.
1695 (WebCore::MessagePort::isEntangled):
1696 Now returns false if the port has been closed.
1697 (WebCore::MessagePort::isCloned):
1698 Added new API to differentiate between cloned and closed ports (closed ports can still be passed to postMessage).
1700 2009-11-25 Jocelyn Turcotte <jocelyn.turcotte@nokia.com>
1702 Reviewed by Simon Hausmann.
1704 [Qt] Fix crash of QtWebKit on any page with Flash when compiled with MinGW.
1706 Fix inline assembly, don't dereference the function pointer twice.
1708 * plugins/win/PluginViewWin.cpp:
1709 (WebCore::PluginView::hookedBeginPaint):
1710 (WebCore::PluginView::hookedEndPaint):
1712 2009-11-22 Jakub Wieczorek <faw217@gmail.com>
1714 Reviewed by Adam Barth.
1716 [Qt] Remove the Referer header when redirecting to a non-secure site
1717 https://bugs.webkit.org/show_bug.cgi?id=31785
1719 This makes Qt pass two tests introduced in r50226.
1721 * platform/network/qt/QNetworkReplyHandler.cpp:
1722 (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
1724 2009-11-25 Andrei Popescu <andreip@google.com>
1726 Reviewed by Dimitri Glazkov.
1728 The select elements do not reflect the actual choice the user makes.
1729 https://bugs.webkit.org/show_bug.cgi?id=31831
1731 Handle the drawing of the listboxes in Android code.
1733 No new features, just fixing an Android problem. Existing layout tests are sufficient.
1735 * platform/android/RenderThemeAndroid.cpp:
1737 (WebCore::RenderThemeAndroid::platformActiveSelectionBackgroundColor):
1738 (WebCore::RenderThemeAndroid::platformActiveListBoxSelectionBackgroundColor):
1739 (WebCore::RenderThemeAndroid::platformInactiveListBoxSelectionBackgroundColor):
1740 (WebCore::RenderThemeAndroid::platformActiveListBoxSelectionForegroundColor):
1741 (WebCore::RenderThemeAndroid::platformInactiveListBoxSelectionForegroundColor):
1742 (WebCore::RenderThemeAndroid::adjustButtonStyle):
1743 (WebCore::RenderThemeAndroid::paintTextArea):
1744 (WebCore::RenderThemeAndroid::adjustListboxStyle):
1745 * platform/android/RenderThemeAndroid.h:
1747 2009-11-25 Alexander Pavlov <apavlov@chromium.org>
1749 Reviewed by Pavel Feldman.
1751 Load InspectorResource mime type from CachedResource for 304 responses
1753 For network libraries that do not merge cache data into 304 ResourceResponses,
1754 the mime type for cached resources is unknown.
1755 https://bugs.webkit.org/show_bug.cgi?id=31868
1757 * inspector/InspectorResource.cpp:
1758 (WebCore::InspectorResource::updateResponse):
1759 (WebCore::InspectorResource::updateScriptObject):
1760 (WebCore::InspectorResource::type):
1762 2009-11-25 Andrei Popescu <andreip@google.com>
1764 Reviewed by Eric Seidel.
1766 Android is missing implementation of SSL Key generator functions.
1767 https://bugs.webkit.org/show_bug.cgi?id=31825
1769 This change adds the PlatformBridge class to platform/android.
1770 PlarformBridge is used to access the embedding layer for things
1771 such as key generator, cookies, plugins, etc.
1773 No new tests required, this is platform code.
1775 * platform/android/PlatformBridge.h: Added.
1776 * platform/android/SSLKeyGeneratorAndroid.cpp: Added.
1777 (WebCore::getSupportedKeySizes):
1778 (WebCore::signedPublicKeyAndChallengeString):
1780 2009-11-25 Philippe Normand <pnormand@igalia.com>
1782 Reviewed by Eric Seidel.
1784 [GTK] use gst_init_check() instead of gst_init()
1785 https://bugs.webkit.org/show_bug.cgi?id=31864
1787 Use gst_init_check() instead of gst_init() to prevent eventual
1788 unexpected exit of the application.
1790 * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
1791 (WebCore::do_gst_init):
1792 (WebCore::MediaPlayerPrivate::isAvailable):
1794 2009-11-25 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
1796 Reviewed by Xan Lopez.
1798 Some tests are crashing from time to time
1799 https://bugs.webkit.org/show_bug.cgi?id=31866
1801 Make sure we do not notify the client of a finished load, if the
1802 load has been cancelled, or the client is gone.
1804 * platform/network/soup/ResourceHandleSoup.cpp:
1807 2009-11-24 Ben Murdoch <benm@google.com>
1809 Reviewed by Eric Seidel.
1811 [Android] Upstream Android changes to WebCore/bridge/jni
1812 https://bugs.webkit.org/show_bug.cgi?id=31824
1814 No new tests required as no new functionality.
1816 * bridge/jni/jni_class.cpp:
1817 (JavaClass::JavaClass): Add calls to delete allocated references, to avoid potential leaks.
1818 * bridge/jni/jni_instance.cpp: Add an Android include path.
1819 * bridge/jni/jni_instance.h: Add getter/setter for JObjectWrapper::_instance and make the JavaInstance ctor and member variables protected. Both needed for the Android port, see bug for discussion.
1820 (JSC::Bindings::JObjectWrapper::instance): Added.
1821 (JSC::Bindings::JObjectWrapper::setInstance): Added.
1822 * bridge/jni/jni_runtime.cpp:
1823 (JavaMethod::JavaMethod): Delete an allocated reference to avoid a potential leak.
1824 * bridge/jni/jni_utility.h:
1825 (JSC::Bindings::callJNIMethodV): Delete an allocated reference to avoid a potential leak.
1827 2009-11-24 Zoltan Horvath <zoltan@webkit.org>
1829 Reviewed by Eric Seidel.
1831 Allow custom memory allocation control for classes of the plugins and rendering directory in WebCore
1832 https://bugs.webkit.org/show_bug.cgi?id=31827
1834 Inherits the following classes from Noncopyable because these are instantiated
1835 by 'new' and no need to be copyable:
1837 class/struct name - instantiated at: WebCore/'location'
1839 class PluginRequest - plugins/PluginView.cpp:521
1840 class PluginMainThreadScheduler - plugins/PluginMainThreadScheduler.cpp:34
1841 class PluginDatabase - plugins/PluginDatabase.cpp:50
1842 struct MimeClassInfo - plugins/PluginInfoStore.cpp:50
1843 struct PluginInfo - plugins/PluginInfoStore.cpp:40
1844 class RenderArena - dom/Document.cpp:1401
1845 class RenderImageScaleData - rendering/RenderImage.cpp:149
1846 class TableLayout - (its child class) rendering/RenderTable.cpp:82
1847 struct ColumnInfo - rendering/RenderBlock.cpp:3590
1848 struct FloatingObject - rendering/RenderBlock.cpp:2300
1849 struct MaxMargin - rendering/RenderBlock.cpp:4794
1850 class RenderMarquee - rendering/RenderLayer.cpp:3277
1852 * plugins/PluginData.h:
1853 * plugins/PluginDatabase.h:
1854 * plugins/PluginMainThreadScheduler.h:
1855 * plugins/PluginView.h:
1856 * rendering/RenderArena.h:
1857 * rendering/RenderBlock.cpp:
1858 * rendering/RenderBlock.h:
1859 * rendering/RenderImage.cpp:
1860 * rendering/RenderMarquee.h:
1861 * rendering/TableLayout.h:
1863 2009-11-24 Dmitry Titov <dimich@chromium.org>
1865 Reviewed by David Levin.
1867 Initial implementation of WebKitSharedScript and SharedScriptContext
1868 https://bugs.webkit.org/show_bug.cgi?id=31569
1870 No new tests since there are no bindings yet (soon to come).
1872 * DerivedSources.make: Add WebKitSharedScript and SharedScriptContext to a list of idl files.
1873 * WebCore.xcodeproj/project.pbxproj:
1875 (WebCore::Document::detach): Notify WebKitSharedScriptRepository that document is detaching.
1876 * dom/EventTarget.cpp: Add new casting methods, since the new types are EventTargets.
1877 (WebCore::EventTarget::toWebKitSharedScript):
1878 (WebCore::EventTarget::toSharedScriptContext):
1879 * dom/EventTarget.h: Ditto
1880 * dom/ScriptExecutionContext.h:
1881 (WebCore::ScriptExecutionContext::isSharedScriptContext): New virtual method, since there is a new type of context.
1883 * SharedScript/SharedScriptContext.cpp: Added. Similar to WorkerContext, but w/o threading.
1884 (WebCore::SharedScriptContext::SharedScriptContext):
1885 (WebCore::SharedScriptContext::~SharedScriptContext):
1886 (WebCore::SharedScriptContext::clearScript):
1887 (WebCore::SharedScriptContext::virtualURL):
1888 (WebCore::SharedScriptContext::virtualCompleteURL):
1889 (WebCore::SharedScriptContext::reportException):
1890 (WebCore::SharedScriptContext::addMessage):
1891 (WebCore::SharedScriptContext::resourceRetrievedByXMLHttpRequest):
1892 (WebCore::SharedScriptContext::scriptImported):
1893 (WebCore::SharedScriptContext::matches):
1894 (WebCore::SharedScriptContext::addToDocumentsList):
1895 (WebCore::SharedScriptContext::destructionTimerFired):
1896 (WebCore::SharedScriptContext::removeFromDocumentList):
1897 (WebCore::SharedScriptContext::load):
1898 (WebCore::SharedScriptContext::postTask):
1899 (WebCore::SharedScriptContext::eventTargetData):
1900 (WebCore::SharedScriptContext::ensureEventTargetData):
1901 (WebCore::SharedScriptContext::scriptExecutionContext):
1902 * SharedScript/SharedScriptContext.h: Added.
1903 (WebCore::SharedScriptContext::create):
1904 (WebCore::SharedScriptContext::isSharedScriptContext):
1905 (WebCore::SharedScriptContext::userAgent):
1906 (WebCore::SharedScriptContext::toSharedScriptContext):
1907 (WebCore::SharedScriptContext::self):
1908 (WebCore::SharedScriptContext::script):
1909 (WebCore::SharedScriptContext::loaded):
1910 (WebCore::SharedScriptContext::name):
1911 (WebCore::SharedScriptContext::refEventTarget):
1912 (WebCore::SharedScriptContext::derefEventTarget):
1913 (WebCore::SharedScriptContext::refScriptExecutionContext):
1914 (WebCore::SharedScriptContext::derefScriptExecutionContext):
1915 * SharedScript/SharedScriptContext.idl: Added.
1917 * SharedScript/SharedScriptController.h:
1918 Added. Empty implementation of a ScriptController, will come later as part of bindings. Needed to compile.
1920 * SharedScript/WebKitSharedScript.cpp: Added. EventTarget-based DOM object.
1921 (WebCore::WebKitSharedScript::WebKitSharedScript):
1922 (WebCore::WebKitSharedScript::~WebKitSharedScript):
1923 (WebCore::WebKitSharedScript::setContext):
1924 (WebCore::LoadEventTask::create): Fires asynchronous 'load' event when underlying SharedScriptContext is initialized.
1925 (WebCore::LoadEventTask::performTask):
1926 (WebCore::LoadEventTask::LoadEventTask):
1927 (WebCore::WebKitSharedScript::scheduleLoadEvent):
1928 * SharedScript/WebKitSharedScript.h: Added.
1929 (WebCore::WebKitSharedScript::create):
1930 (WebCore::WebKitSharedScript::scriptExecutionContext):
1931 (WebCore::WebKitSharedScript::toWebKitSharedScript):
1932 (WebCore::WebKitSharedScript::context):
1933 (WebCore::WebKitSharedScript::refEventTarget):
1934 (WebCore::WebKitSharedScript::derefEventTarget):
1935 (WebCore::WebKitSharedScript::eventTargetData):
1936 (WebCore::WebKitSharedScript::ensureEventTargetData):
1937 * SharedScript/WebKitSharedScript.idl: Added.
1939 * SharedScript/WebKitSharedScriptRepository.cpp: Added. Implements a list of running SharedScriptContexts.
1940 (WebCore::ScriptLoader::ScriptLoader): The helper class to load an initial script of SharedScriptContext.
1941 (WebCore::ScriptLoader::load):
1942 (WebCore::ScriptLoader::notifyFinished):
1943 (WebCore::WebKitSharedScriptRepository::instance): Repository has a static global instance.
1944 (WebCore::WebKitSharedScriptRepository::connect):
1945 (WebCore::WebKitSharedScriptRepository::documentDetached): Called from Document::detach().
1946 (WebCore::WebKitSharedScriptRepository::removeSharedScriptContext): Called from ~SharedScriptContext().
1947 (WebCore::WebKitSharedScriptRepository::connectToSharedScript):
1948 (WebCore::WebKitSharedScriptRepository::getSharedScriptContext):
1949 * SharedScript/WebKitSharedScriptRepository.h: Added.
1950 (WebCore::WebKitSharedScriptRepository::WebKitSharedScriptRepository):
1952 2009-11-24 Dmitry Titov <dimich@chromium.org>
1954 Reviewed by Eric Seidel.
1956 Add ENABLE_SHARED_SCRIPT feature define and flag for build-webkit
1957 https://bugs.webkit.org/show_bug.cgi?id=31444
1959 * Configurations/FeatureDefines.xcconfig:
1963 2009-11-24 Chris Marrin <cmarrin@apple.com>
1965 Reviewed by Simon Fraser.
1967 Implement accelerated compositing
1968 https://bugs.webkit.org/show_bug.cgi?id=27314
1970 This part of the checkin adds the Windows specific GraphicsLayer support files.
1971 It provides the interface between GraphicsLayer and CACF. It also deals with
1972 the compositing loop, and provides the plumbing to pass the root layer up to
1975 * WebCore.vcproj/WebCore.vcproj:
1976 * WebCore.vcproj/WebCoreCommon.vsprops:
1977 * page/FrameView.cpp:
1978 (WebCore::FrameView::syncCompositingStateRecursive):
1979 * platform/graphics/GraphicsLayer.cpp:
1980 (WebCore::GraphicsLayer::GraphicsLayer):
1981 * platform/graphics/GraphicsLayer.h:
1982 * platform/graphics/win/GraphicsLayerCACF.cpp: Added.
1983 * platform/graphics/win/GraphicsLayerCACF.h: Added.
1984 * platform/graphics/win/WKCACFContextFlusher.cpp: Added.
1985 * platform/graphics/win/WKCACFContextFlusher.h: Added.
1986 * platform/graphics/win/WKCACFContextFlusherWin.cpp: Added.
1987 * platform/graphics/win/WKCACFLayer.cpp: Added.
1988 * platform/graphics/win/WKCACFLayer.h: Added.
1989 * platform/graphics/win/WKCACFLayerWindow.cpp: Added.
1990 * platform/graphics/win/WKCACFLayerWindow.h: Added.
1992 2009-11-24 Chris Marrin <cmarrin@apple.com>
1994 Reviewed by Eric Seidel.
1996 Do error checking of parameter to createShader
1997 https://bugs.webkit.org/show_bug.cgi?id=31808
1999 Test: fast/canvas/webgl/invalidPassedParams.html
2001 * html/canvas/WebGLRenderingContext.cpp:
2002 (WebCore::WebGLRenderingContext::createShader):
2003 * html/canvas/WebGLRenderingContext.h:
2004 * html/canvas/WebGLRenderingContext.idl:
2006 2009-11-24 Kent Tamura <tkent@chromium.org>
2008 Reviewed by Eric Seidel.
2010 [Chromium] Ignore line-height CSS property specified to a search field on
2012 https://bugs.webkit.org/show_bug.cgi?id=31820
2014 LayoutTests/fast/forms/control-restrict-line-height.html checks that the
2015 following controls should ignore line-height CSS property.
2017 - <input type=button>
2018 - <input type=search>
2019 This change addresses the <input type=search> issue with Chromium/Windows
2022 * rendering/RenderThemeChromiumSkia.cpp:
2023 (WebCore::RenderThemeChromiumSkia::adjustSearchFieldStyle): Implement this to ignore line-height.
2024 * rendering/RenderThemeChromiumSkia.h: Declare adjustSearchFieldStyle().
2026 2009-11-24 Simon Fraser <simon.fraser@apple.com>
2030 Stylistic fix: indent the member var initialisation.
2032 * platform/graphics/mac/GraphicsLayerCA.mm:
2033 (WebCore::GraphicsLayerCA::GraphicsLayerCA):
2035 2009-11-24 Gavin Barraclough <barraclough@apple.com>
2037 Reviewed by Geoff Garen.
2039 Bug 31848 - Remove uses of mainThreadCurrentWorld, and of currentWorld using a globalData.
2041 These methods get the world from the global data rather than from an execstate.
2042 If the current world is always read from an exec state then it can be read
2043 from the global object, and world entry can become automagical, rather than
2044 being explicitly set by an EnterDOMWrapperWorld.
2046 * bindings/js/JSCSSRuleCustom.cpp:
2048 * bindings/js/JSCSSValueCustom.cpp:
2050 * bindings/js/JSDOMBinding.cpp:
2051 (WebCore::currentWorld):
2052 (WebCore::DOMObjectWrapperMapFor):
2053 (WebCore::hasCachedDOMObjectWrapper):
2054 (WebCore::getCachedDOMObjectWrapper):
2055 (WebCore::cacheDOMObjectWrapper):
2056 (WebCore::hasCachedDOMNodeWrapper):
2057 (WebCore::getCachedDOMNodeWrapper):
2058 (WebCore::cacheDOMNodeWrapper):
2059 * bindings/js/JSDOMBinding.h:
2060 (WebCore::createDOMObjectWrapper):
2061 (WebCore::getDOMObjectWrapper):
2062 (WebCore::createDOMNodeWrapper):
2063 (WebCore::getDOMNodeWrapper):
2064 * bindings/js/JSDOMWindowCustom.cpp:
2065 (WebCore::JSDOMWindow::history):
2066 (WebCore::JSDOMWindow::location):
2067 * bindings/js/JSDocumentCustom.cpp:
2068 (WebCore::JSDocument::location):
2070 * bindings/js/JSElementCustom.cpp:
2071 (WebCore::toJSNewlyCreated):
2072 * bindings/js/JSEventCustom.cpp:
2074 * bindings/js/JSHTMLCollectionCustom.cpp:
2076 * bindings/js/JSImageDataCustom.cpp:
2078 * bindings/js/JSNodeCustom.cpp:
2079 (WebCore::JSNode::markChildren):
2080 (WebCore::createWrapper):
2082 * bindings/js/JSSVGPathSegCustom.cpp:
2084 * bindings/js/JSStyleSheetCustom.cpp:
2086 * xml/XMLHttpRequest.cpp:
2087 (WebCore::XMLHttpRequest::dropProtection):
2089 2009-11-24 Alexey Proskuryakov <ap@apple.com>
2093 * platform/network/cf/SocketStreamHandleCFNet.cpp: Also, don't include the wrong one!
2095 2009-11-24 Alexey Proskuryakov <ap@apple.com>
2099 * platform/network/cf/SocketStreamHandleCFNet.cpp: Include the proper WKSI header.
2101 2009-11-24 Simon Fraser <simon.fraser@apple.com>
2103 Reviewed by Oliver Hunt.
2105 SVGUseElement::toClipPath can crash
2106 <rdar://problem/7385270>
2108 Null-test m_shadowTreeRootElement again, because the call to buildPendingResource() may not
2109 actually initialize it.
2111 * svg/SVGUseElement.cpp:
2112 (WebCore::SVGUseElement::toClipPath):
2114 2009-11-24 Simon Fraser <simon.fraser@apple.com>
2118 * page/win/FrameCGWin.cpp:
2119 (WebCore::imageFromRect):
2120 (WebCore::imageFromSelection):
2122 2009-11-24 Eric Carlson <eric.carlson@apple.com>
2124 Not reviewed. Revert r51351 until a new WebKitSupportLibrary is available.
2126 * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
2127 * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.h:
2128 * platform/graphics/win/QTMovieWin.cpp:
2129 * platform/graphics/win/QTMovieWin.h:
2130 * rendering/RenderMediaControls.cpp:
2131 * rendering/RenderThemeWin.cpp:
2132 * rendering/RenderThemeWin.h:
2134 2009-11-24 Alexey Proskuryakov <ap@apple.com>
2136 Reviewed by Brady Eidson.
2138 https://bugs.webkit.org/show_bug.cgi?id=31844
2139 SocketStreamHandleCFNet should support CONNECT proxy credentials
2141 * WebCore.vcproj/WebCore.vcproj:
2142 * WebCore.xcodeproj/project.pbxproj:
2143 * platform/network/CredentialStorage.h:
2144 * platform/network/mac/CredentialStorageMac.mm: Added.
2145 (WebCore::CredentialStorage::getFromPersistentStorage):
2146 * platform/network/cf/CredentialStorageCFNet.cpp: Added.
2147 (WebCore::CredentialStorage::getFromPersistentStorage):
2148 Add support for fetching credentials from persistent storage (CFNet version is currently
2151 * bindings/js/JSWebSocketCustom.cpp: Removed an unneeded include.
2153 * platform/network/cf/SocketStreamHandle.h:
2154 * platform/network/cf/SocketStreamHandleCFNet.cpp:
2155 (WebCore::SocketStreamHandle::SocketStreamHandle):
2156 (WebCore::SocketStreamHandle::createStreams):
2157 (WebCore::getStoredCONNECTProxyCredentials):
2158 (WebCore::authenticationSchemeFromAuthenticationMethod):
2159 (WebCore::SocketStreamHandle::addCONNECTCredentials):
2160 (WebCore::SocketStreamHandle::readStreamCallback):
2161 Check if connection attempt was resulted in 407, and try stored credentials if it did.
2163 * platform/mac/WebCoreSystemInterface.h:
2164 * platform/mac/WebCoreSystemInterface.mm:
2168 2009-11-24 Simon Fraser <simon.fraser@apple.com>
2170 Reviewed by Dan Bernstein.
2172 Find highlight is drawn incorrectly on pages with compositing layers
2173 <rdar://problem/7413925>
2175 Part 2: Add a new bit to the PaintBehavior flags, PaintBehaviorFlattenCompositingLayers,
2176 and pass that down when painting into an image.
2178 When set, it forces painting of compositing layers to go down a software paint path
2179 when all layers are painted, irrespective of compositing status, and where
2180 3d transforms are flattened to 2d. When doing this, we also need to use temporary
2181 clip rects for layers which are normally composited.
2184 (WebCore::FrameView::paintBehavior):
2185 * page/mac/FrameMac.mm:
2186 (WebCore::Frame::imageFromRect):
2187 * rendering/RenderLayer.cpp:
2188 (WebCore::RenderLayer::renderableTransform):
2189 (WebCore::expandClipRectForDescendantsAndReflection):
2190 (WebCore::transparencyClipBox):
2191 (WebCore::RenderLayer::beginTransparencyLayers):
2192 (WebCore::RenderLayer::paintLayer):
2193 * rendering/RenderLayer.h:
2194 (WebCore::RenderLayer::paintsWithTransparency):
2195 (WebCore::RenderLayer::paintsWithTransform):
2196 * rendering/RenderLayerCompositor.cpp:
2197 (WebCore::RenderLayerCompositor::calculateCompositedBounds):
2198 * rendering/RenderObject.h:
2200 2009-11-24 Simon Fraser <simon.fraser@apple.com>
2202 Reviewed by Dan Bernstein.
2204 Find highlight is drawn incorrectly on pages with compositing layers
2205 <rdar://problem/7413925>
2207 Part 1: Rename PaintRestriction to PaintBehavior, and make it a bitmask, in
2208 preparation for adding a new flag related to painting into an image.
2210 PaintBehaviorSelectionOnly and PaintBehaviorForceBlackText are now separate flags.
2212 * page/FrameView.cpp:
2213 (WebCore::FrameView::reset):
2214 (WebCore::FrameView::paintContents):
2215 (WebCore::FrameView::setPaintBehavior):
2217 * page/mac/FrameMac.mm:
2218 (WebCore::Frame::selectionImage):
2219 * rendering/RenderLayer.cpp:
2220 (WebCore::RenderLayer::paint):
2221 (WebCore::RenderLayer::paintLayer):
2222 * rendering/RenderLayer.h:
2223 * rendering/RenderLayerBacking.cpp:
2224 (WebCore::RenderLayerBacking::paintIntoLayer):
2225 (WebCore::RenderLayerBacking::paintContents):
2226 * rendering/RenderLayerBacking.h:
2227 * rendering/RenderObject.h:
2228 * rendering/RenderReplica.cpp:
2229 (WebCore::RenderReplica::paint):
2231 2009-11-24 Eric Carlson <eric.carlson@apple.com>
2233 Reviewed by Simon Fraser.
2235 <rdar://problem/7409331> Windows: Support closed caption in <video> element
2237 Enable closed captions in QuickTime/Windows media engine.
2239 * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
2240 (WebCore::MediaPlayerPrivate::hasClosedCaptions):
2241 (WebCore::MediaPlayerPrivate::setClosedCaptionsVisible):
2242 * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.h:
2243 * platform/graphics/win/QTMovieWin.cpp:
2244 (QTMovieWin::hasClosedCaptions):
2245 (QTMovieWin::setClosedCaptionsVisible):
2246 * platform/graphics/win/QTMovieWin.h:
2247 * rendering/RenderMediaControls.cpp:
2248 (WebCore::RenderMediaControls::paintMediaControlsPart):
2249 * rendering/RenderThemeWin.cpp:
2250 (WebCore::RenderThemeWin::paintMediaToggleClosedCaptionsButton):
2251 * rendering/RenderThemeWin.h:
2253 2009-11-24 Darin Fisher <darin@chromium.org>
2255 Reviewed by Adam Barth.
2257 [Chromium] Renderer hang when using www.expedia.com
2258 https://bugs.webkit.org/show_bug.cgi?id=31822
2260 Test: http/tests/cache/subresource-failover-to-network.html
2262 * loader/FrameLoader.cpp:
2263 (WebCore::FrameLoader::loadResourceSynchronously): Use the originalRequest
2264 when inheriting cache policy. This matches SubresourceLoader::create.
2266 2009-11-23 Kenneth Russell <kbr@google.com>
2268 Reviewed by Oliver Hunt.
2270 Change get... calls to latest spec
2271 https://bugs.webkit.org/show_bug.cgi?id=30091
2273 Removed old versions of get calls on WebGLRenderingContext and
2274 added new ones per spec returning "any". New code simplifies
2275 GraphicsContext3D and fixes previously unimplemented routines.
2276 Added custom JS and V8 bindings. Added exhaustive test case
2277 exercising all new code paths. Updated preexisting test cases for
2278 new APIs. Fixed preexisting bugs in WebKit's and Chrome's WebGL
2281 Ran WebGL layout tests in WebKit (clean) and Chrome (couple of
2282 preexisting known failures) and manual WebGL tests in both
2285 Test: fast/canvas/webgl/gl-object-get-calls.html
2288 * WebCore.xcodeproj/project.pbxproj:
2289 * bindings/js/JSWebGLRenderingContextCustom.cpp:
2292 (WebCore::getObjectParameter):
2293 (WebCore::getProgramParameterHelper):
2294 (WebCore::JSWebGLRenderingContext::getBufferParameter):
2295 (WebCore::JSWebGLRenderingContext::getFramebufferAttachmentParameter):
2296 (WebCore::JSWebGLRenderingContext::getParameter):
2297 (WebCore::JSWebGLRenderingContext::getProgramParameter):
2298 (WebCore::JSWebGLRenderingContext::getRenderbufferParameter):
2299 (WebCore::JSWebGLRenderingContext::getShaderParameter):
2300 (WebCore::JSWebGLRenderingContext::getTexParameter):
2301 (WebCore::JSWebGLRenderingContext::getUniform):
2302 (WebCore::JSWebGLRenderingContext::getVertexAttrib):
2303 * bindings/v8/custom/V8CustomBinding.h:
2304 * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
2307 (WebCore::getObjectParameter):
2308 (WebCore::getProgramParameter):
2309 (WebCore::CALLBACK_FUNC_DECL):
2310 * html/canvas/CanvasObject.cpp:
2311 (WebCore::CanvasObject::CanvasObject):
2312 (WebCore::CanvasObject::setObject):
2313 (WebCore::CanvasObject::deleteObject):
2314 * html/canvas/CanvasObject.h:
2315 * html/canvas/WebGLBuffer.cpp:
2316 (WebCore::WebGLBuffer::create):
2317 (WebCore::WebGLBuffer::WebGLBuffer):
2318 * html/canvas/WebGLBuffer.h:
2319 * html/canvas/WebGLGetInfo.cpp: Added.
2320 (WebCore::WebGLGetInfo::WebGLGetInfo):
2321 (WebCore::WebGLGetInfo::~WebGLGetInfo):
2322 (WebCore::WebGLGetInfo::getType):
2323 (WebCore::WebGLGetInfo::getBool):
2324 (WebCore::WebGLGetInfo::getFloat):
2325 (WebCore::WebGLGetInfo::getLong):
2326 (WebCore::WebGLGetInfo::getString):
2327 (WebCore::WebGLGetInfo::getUnsignedLong):
2328 (WebCore::WebGLGetInfo::getWebGLBuffer):
2329 (WebCore::WebGLGetInfo::getWebGLFloatArray):
2330 (WebCore::WebGLGetInfo::getWebGLFramebuffer):
2331 (WebCore::WebGLGetInfo::getWebGLIntArray):
2332 (WebCore::WebGLGetInfo::getWebGLProgram):
2333 (WebCore::WebGLGetInfo::getWebGLRenderbuffer):
2334 (WebCore::WebGLGetInfo::getWebGLTexture):
2335 (WebCore::WebGLGetInfo::getWebGLUnsignedByteArray):
2336 * html/canvas/WebGLGetInfo.h: Added.
2337 (WebCore::WebGLGetInfo::):
2338 * html/canvas/WebGLRenderbuffer.cpp:
2339 (WebCore::WebGLRenderbuffer::create):
2340 (WebCore::WebGLRenderbuffer::WebGLRenderbuffer):
2341 * html/canvas/WebGLRenderbuffer.h:
2342 * html/canvas/WebGLRenderingContext.cpp:
2343 (WebCore::WebGLStateRestorer::WebGLStateRestorer):
2344 (WebCore::WebGLStateRestorer::~WebGLStateRestorer):
2345 (WebCore::WebGLRenderingContext::WebGLRenderingContext):
2346 (WebCore::WebGLRenderingContext::activeTexture):
2347 (WebCore::WebGLRenderingContext::bindBuffer):
2348 (WebCore::WebGLRenderingContext::bindFramebuffer):
2349 (WebCore::WebGLRenderingContext::bindRenderbuffer):
2350 (WebCore::WebGLRenderingContext::bindTexture):
2351 (WebCore::WebGLRenderingContext::getBufferParameter):
2352 (WebCore::WebGLRenderingContext::getFramebufferAttachmentParameter):
2353 (WebCore::WebGLRenderingContext::getParameter):
2354 (WebCore::WebGLRenderingContext::getProgramParameter):
2355 (WebCore::WebGLRenderingContext::getProgramInfoLog):
2356 (WebCore::WebGLRenderingContext::getRenderbufferParameter):
2357 (WebCore::WebGLRenderingContext::getShaderParameter):
2358 (WebCore::WebGLRenderingContext::getShaderInfoLog):
2359 (WebCore::WebGLRenderingContext::getShaderSource):
2360 (WebCore::WebGLRenderingContext::getString):
2361 (WebCore::WebGLRenderingContext::getTexParameter):
2362 (WebCore::WebGLRenderingContext::getUniform):
2363 (WebCore::WebGLRenderingContext::getVertexAttrib):
2364 (WebCore::WebGLRenderingContext::useProgram):
2365 (WebCore::WebGLRenderingContext::getBooleanParameter):
2366 (WebCore::WebGLRenderingContext::getFloatParameter):
2367 (WebCore::WebGLRenderingContext::getIntParameter):
2368 (WebCore::WebGLRenderingContext::getLongParameter):
2369 (WebCore::WebGLRenderingContext::getUnsignedLongParameter):
2370 (WebCore::WebGLRenderingContext::getWebGLFloatArrayParameter):
2371 (WebCore::WebGLRenderingContext::getWebGLIntArrayParameter):
2372 (WebCore::WebGLRenderingContext::getWebGLUnsignedByteArrayParameter):
2373 * html/canvas/WebGLRenderingContext.h:
2374 * html/canvas/WebGLRenderingContext.idl:
2375 * html/canvas/WebGLTexture.cpp:
2376 (WebCore::WebGLTexture::create):
2377 (WebCore::WebGLTexture::WebGLTexture):
2378 * html/canvas/WebGLTexture.h:
2379 * manual-tests/webgl/resources/utils3d.js:
2382 (Framerate.prototype.snapshot):
2383 * platform/graphics/GraphicsContext3D.h:
2384 * platform/graphics/mac/GraphicsContext3DMac.cpp:
2385 (WebCore::GraphicsContext3D::bindRenderbuffer):
2386 (WebCore::GraphicsContext3D::getBooleanv):
2387 (WebCore::GraphicsContext3D::getBufferParameteriv):
2388 (WebCore::GraphicsContext3D::getFloatv):
2389 (WebCore::GraphicsContext3D::getFramebufferAttachmentParameteriv):
2390 (WebCore::GraphicsContext3D::getIntegerv):
2391 (WebCore::GraphicsContext3D::getProgramiv):
2392 (WebCore::GraphicsContext3D::getRenderbufferParameteriv):
2393 (WebCore::GraphicsContext3D::getShaderiv):
2394 (WebCore::GraphicsContext3D::getTexParameterfv):
2395 (WebCore::GraphicsContext3D::getTexParameteriv):
2396 (WebCore::GraphicsContext3D::getUniformfv):
2397 (WebCore::GraphicsContext3D::getUniformiv):
2398 (WebCore::GraphicsContext3D::getVertexAttribfv):
2399 (WebCore::GraphicsContext3D::getVertexAttribiv):
2401 2009-11-24 Steve Falkenburg <sfalken@apple.com>
2405 * WebCore.vcproj/QTMovieWin.vcproj: Add additional search path for QuickTime SDK.
2407 2009-11-24 Philippe Normand <pnormand@igalia.com>
2409 Reviewed by Gustavo Noronha Silva.
2411 [Gtk] GStreamer-CRITICAL's (and other warnings) on <video>
2412 https://bugs.webkit.org/show_bug.cgi?id=26354
2414 Implemented MediaPlayerPrivate::isAvailable by checking the
2415 presence of the playbin2 GStreamer element.
2417 * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
2418 (WebCore::MediaPlayerPrivate::isAvailable):
2419 * platform/graphics/gtk/MediaPlayerPrivateGStreamer.h:
2421 2009-11-24 Joanmarie Diggs <joanmarie.diggs@gmail.com>
2423 Reviewed by Xan Lopez.
2425 https://bugs.webkit.org/show_bug.cgi?id=25415
2426 [GTK][ATK] Please implement support for get_text_at_offset
2428 When building up the pango layout from text boxes, only append a
2429 newline char after verifying there are no more boxes on this line.
2431 * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
2432 (getPangoLayoutForAtk):
2434 2009-11-24 Joseph Pecoraro <joepeck@webkit.org>
2436 Reviewed by Pavel Feldman.
2438 Web Inspector: Keyboard Shortcut to Clear Console Messages
2439 https://bugs.webkit.org/show_bug.cgi?id=31780
2441 All Platforms: Ctrl+L = Clear Console Messages
2442 Mac Only: Cmd+K = Clear Console Messages
2444 * inspector/front-end/ConsoleView.js:
2445 (WebInspector.ConsoleView): create shortcuts
2446 (WebInspector.ConsoleView.prototype._promptKeyDown): handle shortcuts
2447 * inspector/front-end/KeyboardShortcut.js:
2448 (WebInspector.KeyboardShortcut.makeKey): convenience conversion of "a-z" character to keyCode
2449 * inspector/front-end/ScriptsPanel.js:
2450 (WebInspector.ScriptsPanel): style fixes for keyboard shortcuts
2452 2009-11-24 Pavel Feldman <pfeldman@chromium.org>
2454 Not reviewed: touch inspector controller in order to
2455 kick win bot inspector deploy. rs=aroben.
2457 * inspector/InspectorController.cpp:
2459 2009-11-23 Pavel Feldman <pfeldman@chromium.org>
2461 Reviewed by Timothy Hatcher.
2463 Web Inspector: Implement expandable compartments on timeline panel.
2465 https://bugs.webkit.org/show_bug.cgi?id=31796
2467 * inspector/front-end/TimelineOverviewPane.js:
2468 (WebInspector.TimelineOverviewPane.prototype._setWindowPosition):
2469 * inspector/front-end/TimelinePanel.js:
2470 (WebInspector.TimelinePanel):
2471 (WebInspector.TimelinePanel.prototype.addRecordToTimeline):
2472 (WebInspector.TimelinePanel.prototype._innerAddRecordToTimeline):
2473 (WebInspector.TimelinePanel.prototype._formatRecord):
2474 (WebInspector.TimelinePanel.prototype._refreshRecords):
2475 (WebInspector.TimelinePanel.prototype._addToRecordsWindow):
2476 (WebInspector.TimelineRecordListRow):
2477 (WebInspector.TimelineRecordListRow.prototype.update):
2478 (WebInspector.TimelineRecordListRow.prototype.dispose):
2479 (WebInspector.TimelineRecordGraphRow):
2480 (WebInspector.TimelineRecordGraphRow.prototype.update):
2481 (WebInspector.TimelineRecordGraphRow.prototype._onClick):
2482 (WebInspector.TimelineRecordGraphRow.prototype.dispose):
2483 * inspector/front-end/inspector.css:
2485 2009-11-24 Mark Rowe <mrowe@apple.com>
2487 Fix production builds where the source tree may be read-only.
2489 * WebCore.xcodeproj/project.pbxproj:
2491 2009-11-23 Laszlo Gombos <laszlo.1.gombos@nokia.com>
2493 Reviewed by Kenneth Rohde Christiansen.
2495 Include "config.h" to meet Coding Style Guidelines
2496 https://bugs.webkit.org/show_bug.cgi?id=31792
2498 No new tests as there is no new functionality.
2500 * platform/graphics/win/IntPointWin.cpp:
2501 * platform/graphics/win/IntRectWin.cpp:
2502 * platform/graphics/win/IntSizeWin.cpp:
2503 * platform/network/chromium/ResourceRequest.cpp:
2504 * platform/win/PlatformMouseEventWin.cpp:
2506 2009-11-23 Jian Li <jianli@chromium.org>
2508 Reviewed by NOBODY (Chromium build fix).
2510 * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
2511 (WebCore::CALLBACK_FUNC_DECL):
2512 * platform/graphics/GraphicsContext3D.h:
2514 2009-11-23 Aaron Golden <agolden@apple.com>
2516 Reviewed by Alexey Proskuryakov.
2518 Prevent ResourceHandleMac's version of ResourceHandle::receivedCredential from stripping
2519 identity and certificate information from a WebCore::Credential when receivedCredential
2520 needs to modify the credential's persistence.
2522 Adding a new constructor Credential(const Credential& original, CredentialPersistence)
2523 that copies every field from original except for persistence.
2525 * platform/network/Credential.cpp:
2526 (WebCore::Credential::Credential):
2527 * platform/network/Credential.h:
2528 * platform/network/mac/ResourceHandleMac.mm:
2529 (WebCore::ResourceHandle::receivedCredential):
2531 2009-11-23 Gavin Barraclough <barraclough@apple.com>
2533 Reviewed by Geoff Garen.
2535 Part 2/3 of <rdar://problem/7377477> REGRESSION: Many web pages fail to render after interesting script runs in isolated world
2537 Some clients of the JavaScriptCore API expect to be able to make callbacks over the JSC API,
2538 and for this to automagically cause execution to take place in the world associated with the
2539 global object associated with the ExecState (JSContextRef) passed. However this is not how
2540 things work - the world must be explicitly set within WebCore.
2542 Making this work just for API calls to evaluate & call will be a far from perfect solution,
2543 since direct (non-API) use of JSC still relies on WebCore setting the current world correctly.
2544 A better solution would be to make this all work automagically all throughout WebCore, but this
2545 will require more refactoring.
2547 Add references from the JSDOMWindowShell and the JSDOMGlobalObject to the world that owns them,
2548 so that we can get to the world from the lexical global object of an ExecState. In the long-term
2549 we should switch over to using this approach for all cases we want to get a world from an exec state.
2551 * bindings/js/JSDOMBinding.cpp:
2552 (WebCore::WebCoreJSClientData::beginningExecution):
2553 (WebCore::WebCoreJSClientData::completedExecution):
2554 * bindings/js/JSDOMBinding.h:
2555 * bindings/js/JSDOMGlobalObject.h:
2556 (WebCore::JSDOMGlobalObject::world):
2557 (WebCore::JSDOMGlobalObject::JSDOMGlobalObjectData::JSDOMGlobalObjectData):
2558 * bindings/js/JSDOMWindowBase.cpp:
2559 (WebCore::JSDOMWindowBase::JSDOMWindowBaseData::JSDOMWindowBaseData):
2560 * bindings/js/JSDOMWindowBase.h:
2561 * bindings/js/JSDOMWindowShell.cpp:
2562 (WebCore::JSDOMWindowShell::JSDOMWindowShell):
2563 * bindings/js/JSDOMWindowShell.h:
2564 (WebCore::JSDOMWindowShell::world):
2565 * bindings/js/JSWorkerContextBase.cpp:
2566 (WebCore::JSWorkerContextBase::JSWorkerContextBase):
2567 * bindings/js/ScriptController.cpp:
2568 (WebCore::ScriptController::initScript):
2570 2009-11-23 Chris Marrin <cmarrin@apple.com>
2572 Reviewed by Oliver Hunt.
2574 Add range checks to rendering calls in WebGL
2575 https://bugs.webkit.org/show_bug.cgi?id=31239
2577 I am now tracking the size of the data in each CanvasBuffer object
2578 and keeping track of the buffer size of each active vertex attrib.
2579 In drawArrays and drawElements I make sure no attempt is made to
2580 access elements outside the valid buffer ranges. The test at:
2582 http://cs.helsinki.fi/u/ilmarihe/c3d/functions/drawArraysOutOfBounds.html
2586 I also added all the WebGL enumerations to GraphicsContext3D to use them in the validation checks
2588 Tests: fast/canvas/webgl/drawArraysOutOfBounds.html
2589 fast/canvas/webgl/drawElementssOutOfBounds.html
2591 * bindings/js/JSWebGLArrayCustom.cpp:
2593 * bindings/js/JSWebGLRenderingContextCustom.cpp:
2594 (WebCore::JSWebGLRenderingContext::bufferData):
2595 (WebCore::JSWebGLRenderingContext::bufferSubData):
2596 (WebCore::JSWebGLRenderingContext::texSubImage2D):
2597 * html/canvas/WebGLArrayBuffer.cpp:
2598 (WebCore::WebGLArrayBuffer::create):
2599 (WebCore::WebGLArrayBuffer::data):
2600 * html/canvas/WebGLArrayBuffer.h:
2601 * html/canvas/WebGLBuffer.cpp:
2602 (WebCore::WebGLBuffer::WebGLBuffer):
2603 (WebCore::WebGLBuffer::associateBufferData):
2604 (WebCore::WebGLBuffer::associateBufferSubData):
2605 (WebCore::WebGLBuffer::byteLength):
2606 * html/canvas/WebGLBuffer.h:
2607 (WebCore::WebGLBuffer::elementArrayBuffer):
2608 * html/canvas/WebGLRenderingContext.cpp:
2609 (WebCore::WebGLRenderingContext::WebGLRenderingContext):
2610 (WebCore::WebGLRenderingContext::sizeInBytes):
2611 (WebCore::WebGLRenderingContext::bindBuffer):
2612 (WebCore::WebGLRenderingContext::bufferData):
2613 (WebCore::WebGLRenderingContext::bufferSubData):
2614 (WebCore::WebGLRenderingContext::createShader):
2615 (WebCore::WebGLRenderingContext::disableVertexAttribArray):
2616 (WebCore::WebGLRenderingContext::validateIndexArray):
2617 (WebCore::WebGLRenderingContext::validateRenderingState):
2618 (WebCore::WebGLRenderingContext::drawArrays):
2619 (WebCore::WebGLRenderingContext::drawElements):
2620 (WebCore::WebGLRenderingContext::enableVertexAttribArray):
2621 (WebCore::WebGLRenderingContext::isFramebuffer):
2622 (WebCore::WebGLRenderingContext::isProgram):
2623 (WebCore::WebGLRenderingContext::isRenderbuffer):
2624 (WebCore::WebGLRenderingContext::isShader):
2625 (WebCore::WebGLRenderingContext::isTexture):
2626 (WebCore::WebGLRenderingContext::useProgram):
2627 (WebCore::WebGLRenderingContext::validateProgram):
2628 (WebCore::WebGLRenderingContext::vertexAttribPointer):
2629 (WebCore::WebGLRenderingContext::detachAndRemoveAllObjects):
2630 * html/canvas/WebGLRenderingContext.h:
2631 (WebCore::WebGLRenderingContext::VertexAttribState::VertexAttribState):
2632 * html/canvas/WebGLRenderingContext.idl:
2633 * html/canvas/WebGLShader.cpp:
2634 (WebCore::WebGLShader::create):
2635 (WebCore::WebGLShader::WebGLShader):
2636 * html/canvas/WebGLShader.h:
2637 * platform/graphics/GraphicsContext3D.h:
2638 (WebCore::GraphicsContext3D::):
2639 * platform/graphics/mac/GraphicsContext3DMac.cpp:
2640 (WebCore::GraphicsContext3D::createShader):
2642 2009-11-23 Erik Arvidsson <arv@chromium.org>
2644 Reviewed by Eric Seidel.
2646 JSC bindings for HasIndexGetter generates incorrect code (affects
2647 MediaList and CSSStyleDeclaration).
2648 This cleans up the edge cases for indexing out of range for style and
2649 computed style objects to return an empty string according to the spec.
2650 MediaList now returns null when indexed out of range.
2651 https://bugs.webkit.org/show_bug.cgi?id=31683
2653 Tests: fast/dom/CSSStyleDeclaration/css-computed-style-item.html
2654 fast/dom/CSSStyleDeclaration/css-style-item.html
2655 fast/dom/StyleSheet/css-medialist-item.html
2657 * bindings/scripts/CodeGeneratorJS.pm: If IndexGetterReturnsString then
2658 we do not check the length before calling the item function.
2659 * css/CSSComputedStyleDeclaration.cpp:
2660 (WebCore::CSSComputedStyleDeclaration::item):
2661 * css/CSSMutableStyleDeclaration.cpp:
2662 (WebCore::CSSMutableStyleDeclaration::item):
2663 * css/CSSStyleDeclaration.idl:
2665 2009-11-23 Simon Fraser <simon.fraser@apple.com>
2667 Reviewed by Dan Bernstein.
2669 DocumentMarkers need to be educated about transforms
2670 https://bugs.webkit.org/show_bug.cgi?id=31751
2672 Find highlight is incorrect with transforms
2673 <rdar://problem/6358394>
2675 Allow callers to specify that Frame::selectionTextRects() takes transforms into account
2676 when computing the set of rects that encompass a selection. For transformed elemenets, the
2677 selection rect will be the bounding box of the selected content.
2679 Fix DocumentMarkers to cache rects in absolute coordinates, rather than painting coordinates.
2681 Test: editing/selection/transformed-selection-rects.html
2684 Frame::selectionTextRects() has a new parameter.
2687 (WebCore::Document::setRenderedRectForMarker):
2689 Pass the marker as a const reference.
2693 (WebCore::Range::textQuads):
2694 Add a new method, textQuads(), which returns a list of quads, respecting transforms.
2698 (WebCore::Frame::selectionTextRects):
2699 Add a new parameter, respectTransforms, and when that is RespectTransforms, use the quad
2700 method to get quads for ranges, and then take their bounding boxes.
2702 * rendering/InlineTextBox.h:
2703 * rendering/InlineTextBox.cpp:
2704 (WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
2705 (WebCore::InlineTextBox::paintTextMatchMarker):
2706 (WebCore::InlineTextBox::computeRectForReplacementMarker):
2707 (WebCore::InlineTextBox::paintDocumentMarkers):
2708 (WebCore::InlineTextBox::textPos):
2709 (WebCore::InlineTextBox::offsetForPosition):
2711 Pass DocumentMarkers as a const references.
2712 Convert the argument to setRenderedRectForMarker() into absolute coordinates.
2714 * rendering/RenderView.cpp:
2715 (WebCore::RenderView::selectionBounds):
2717 2009-11-23 Dirk Schulze <krit@webkit.org>
2719 Reviewed by Oliver Hunt.
2721 [Cairo] support blurred test-shadow
2722 [https://bugs.webkit.org/show_bug.cgi?id=31797]
2724 Support for blurred text-shadows on Cairo. This patch
2725 reuses the code of blurred box-shadows, introduced in
2726 bug 26102. For a full textshadow support, a filters enabled
2729 * platform/graphics/cairo/FontCairo.cpp:
2730 (WebCore::Font::drawGlyphs):
2732 2009-11-23 Jens Alfke <snej@chromium.org>
2734 Reviewed by Geoffrey Garen.
2736 Change incorrect calls to the constructor "EventNames()" to the correct accessor
2737 "eventNames()". This saves ~100 AtomicString lookups each time.
2738 https://bugs.webkit.org/show_bug.cgi?id=31811
2740 * dom/EventNames.h: Make constructor private to prevent this from happening again.
2741 * history/CachedFrame.cpp:
2742 (WebCore::CachedFrameBase::restore): EventNames() --> eventNames()
2743 * html/HTMLFormControlElement.cpp:
2744 (WebCore::HTMLFormControlElement::checkValidity): EventNames() --> eventNames()
2745 * loader/FrameLoader.cpp:
2746 (WebCore::FrameLoader::stopLoading): EventNames() --> eventNames()
2747 (WebCore::FrameLoader::pageHidden): EventNames() --> eventNames()
2748 * page/DOMWindow.cpp:
2749 (WebCore::DOMWindow::dispatchAllPendingUnloadEvents): EventNames() --> eventNames()
2751 2009-11-23 Adam Langley <agl@google.com>
2753 Reviewed by Dmitry Titov.
2755 Chromium Linux: Limit the stroke width and mitre limit.
2757 Limit the stroke width and mitre limit that we'll pass into Skia to
2758 avoid overflowing Skia's uint16_t glyph widths.
2760 http://code.google.com/p/chromium/issues/detail?id=28250
2761 https://bugs.webkit.org/show_bug.cgi?id=31747
2763 * platform/graphics/skia/PlatformContextSkia.cpp:
2765 (PlatformContextSkia::setupPaintForStroking):
2767 2009-11-23 Alexey Proskuryakov <ap@apple.com>
2769 Reviewed by Oliver Hunt.
2771 https://bugs.webkit.org/show_bug.cgi?id=31812
2772 WebSocket code uses RefPtr::get() where it shouldn't
2774 No change in funcitonality, just coding style correction.
2776 * websockets/WebSocket.cpp:
2777 (WebCore::WebSocket::~WebSocket):
2778 * websockets/WebSocketChannel.cpp:
2779 (WebCore::WebSocketChannel::connect):
2780 (WebCore::WebSocketChannel::send):
2781 (WebCore::WebSocketChannel::bufferedAmount):
2782 (WebCore::WebSocketChannel::close):
2783 (WebCore::WebSocketChannel::disconnect):
2784 (WebCore::WebSocketChannel::didOpen):
2785 (WebCore::WebSocketChannel::didClose):
2786 (WebCore::WebSocketChannel::didReceiveData):
2787 (WebCore::WebSocketChannel::didFail):
2789 2009-11-23 Alexey Proskuryakov <ap@apple.com>
2793 * platform/network/cf/SocketStreamHandleCFNet.cpp:
2794 (WebCore::SocketStreamHandle::pacExecutionCallbackMainThread): pacExecutionCallbackMainThread
2795 is static, so it can't use member variables directly.
2797 2009-11-23 Alexey Proskuryakov <ap@apple.com>
2799 Reviewed by Brady Eidson.
2801 https://bugs.webkit.org/show_bug.cgi?id=31748
2802 Make WebSocketHandleCFNet respect proxy auto-configuration files via CFProxySupport
2804 * platform/network/cf/SocketStreamHandle.h: Removed names from some void* arguments, since
2805 they didn't carry useful information.
2807 * platform/network/cf/SocketStreamHandleCFNet.cpp:
2808 (WebCore::SocketStreamHandle::SocketStreamHandle): When we need an http-style URL, we actually
2810 (WebCore::SocketStreamHandle::scheduleStreams): Factored out from constructor, since streams
2811 only get scheduled after PAC is fetched and executed asynchronously.
2812 (WebCore::SocketStreamHandle::copyPACExecutionDescription): Return a description for event
2814 (WebCore::MainThreadPACCallbackInfo::MainThreadPACCallbackInfo): Forward callback to main thread.
2815 (WebCore::SocketStreamHandle::pacExecutionCallback): Ditto.
2816 (WebCore::SocketStreamHandle::pacExecutionCallbackMainThread): Ditto. To avoid code duplication,
2817 we make the call even on Mac.
2818 (WebCore::SocketStreamHandle::executePACFileURL): Make an async call to CFNetworkExecuteProxyAutoConfigurationURL.
2819 (WebCore::SocketStreamHandle::removePACRunLoopSource): Once PAC execution is done or aborted,
2820 we need to get rid of the event source.
2821 (WebCore::SocketStreamHandle::chooseProxy): Use stored m_httpsURL.get.
2822 (WebCore::SocketStreamHandle::chooseProxyFromArray): Factored out from chooseProxy - the
2823 array may come directly from system configuration, or from PAC.
2824 (WebCore::SocketStreamHandle::chooseProxy): Tiger version of this function is now completely
2826 (WebCore::SocketStreamHandle::~SocketStreamHandle): Run loop source should be destroyed
2827 before we get to the destructor.
2828 (WebCore::SocketStreamHandle::platformClose): Destroy the run loop source, if PAC execution
2829 is still in progress.
2831 2009-11-23 Oliver Hunt <oliver@apple.com>
2833 Reviewed by Geoff Garen.
2835 Don't leak the CGImage we create when drawing a sub image.
2837 * platform/graphics/cg/ImageCG.cpp:
2838 (WebCore::BitmapImage::draw):
2840 2009-11-23 Adam Barth <abarth@webkit.org>
2842 Reviewed by Dimitri Glazkov.
2844 [V8] Don't crash when OOM in creating isolated world
2845 https://bugs.webkit.org/show_bug.cgi?id=31805
2847 We need to add some more null checks to avoid crashing. No new tests
2848 because we don't have a good way to test out-of-memory bugs.
2850 * bindings/v8/V8Proxy.cpp:
2851 (WebCore::V8Proxy::evaluateInIsolatedWorld):
2852 (WebCore::V8Proxy::evaluateInNewContext):
2853 (WebCore::V8Proxy::setInjectedScriptContextDebugId):
2854 * bindings/v8/V8Proxy.h:
2856 2009-11-23 Dirk Schulze <krit@webkit.org>
2858 Reviewed by Nikolas Zimmermann.
2860 This is the implementation of the filterRes attribute. It
2861 helps the SVG developer to set the quality of a filter by
2862 giving the width or height of filter.
2863 This patch also sets the filter resolution to lower values
2864 if a intermediate ImageBuffer size is bigger than the given
2866 The maximal size is set to 5000x5000 by default. This is a
2867 subjectiv decission. Everthing greater than this values gets
2868 sensible slower. Values of 10000x10000 crashed on WebKitGtk.
2869 For mobil devices a maximum size of 100x100 or 200x200 seems
2871 The important fact on filter resolution is, that the output
2872 size is still the size given by the <filter> element.
2874 Tests: svg/filters/big-sized-filter-2.svg
2875 svg/filters/big-sized-filter.svg
2876 svg/filters/filterRes.svg
2878 * platform/graphics/FloatRect.cpp:
2879 (WebCore::FloatRect::scale): Add the abbility to scale a rect by x and y.
2880 * platform/graphics/FloatRect.h:
2881 (WebCore::FloatRect::scale): Add the abbility to scale a rect by x and y.
2882 * platform/graphics/cairo/GraphicsContextCairo.cpp:
2883 (WebCore::GraphicsContext::createPlatformShadow): Use scaledSubRegion for
2885 * platform/graphics/filters/FEBlend.cpp:
2886 (WebCore::FEBlend::apply): Use scaledSubRegion for effect intern calculations.
2887 * platform/graphics/filters/FEColorMatrix.cpp:
2888 (WebCore::FEColorMatrix::apply): Use scaledSubRegion for effect intern calculations.
2889 * platform/graphics/filters/FEComponentTransfer.cpp:
2890 (WebCore::FEComponentTransfer::apply): Use scaledSubRegion for effect intern
2892 * platform/graphics/filters/FEComposite.cpp:
2893 (WebCore::FEComposite::apply): Use scaledSubRegion for effect intern calculations.
2894 * platform/graphics/filters/FEGaussianBlur.cpp:
2895 (WebCore::FEGaussianBlur::apply): Use scaledSubRegion for effect intern calculations.
2896 * platform/graphics/filters/Filter.h: Add the abbility to change the quality
2898 (WebCore::Filter::filterResolution):
2899 (WebCore::Filter::setFilterResolution):
2900 (WebCore::Filter::calculateEffectSubRegion): Calculates the correct subRegion
2901 as well as the scaledSubRegion. It also searches for the biggest effect size.
2902 We have to change the filter resolution, if one intermediate ImageBuffer size
2903 doesn't fit in the maximal image size.
2904 * platform/graphics/filters/FilterEffect.cpp:
2905 (WebCore::FilterEffect::calculateDrawingIntRect): Use scaledSubRegion to get
2906 the right part of a previous effect result.
2907 (WebCore::FilterEffect::calculateDrawingRect): Use scaledSubRegion to get
2908 the right part of a previous effect result.
2909 (WebCore::FilterEffect::getEffectContext): Use scaledSubRegion to create
2910 a new intermediate ImageBuffer for the result of the current effect.
2911 * platform/graphics/filters/FilterEffect.h:
2912 (WebCore::FilterEffect::scaledSubRegion): The scaled subRegion of a the
2914 (WebCore::FilterEffect::setScaledSubRegion):
2915 (WebCore::FilterEffect::effectBoundaries): The original values of the
2916 EffectElement for a second subRegion calculation.
2917 (WebCore::FilterEffect::setEffectBoundaries):
2918 * platform/graphics/filters/ImageBufferFilter.cpp:
2919 (WebCore::ImageBufferFilter::ImageBufferFilter): Set the scale factor to one.
2920 * platform/graphics/filters/ImageBufferFilter.h:
2921 (WebCore::ImageBufferFilter::maxImageSize):
2922 (WebCore::ImageBufferFilter::calculateEffectSubRegion):
2923 * platform/graphics/filters/SourceAlpha.cpp:
2924 (WebCore::SourceAlpha::calculateEffectRect): Use scaledSubRegion for effect
2925 intern calculations.
2926 * platform/graphics/filters/SourceGraphic.cpp:
2927 (WebCore::SourceGraphic::calculateEffectRect): Use scaledSubRegion for effect
2928 intern calculations.
2929 * svg/SVGFilterElement.cpp:
2930 (WebCore::SVGFilterElement::parseMappedAttribute): Parse filterRes attribute.
2931 (WebCore::SVGFilterElement::buildFilter): Give SVGResourceFilter the current
2933 * svg/SVGFilterPrimitiveStandardAttributes.cpp:
2934 (WebCore::SVGFilterPrimitiveStandardAttributes::setStandardAttributes): Save
2935 values to effectBoundaries of the filter effect
2936 * svg/graphics/SVGResourceFilter.cpp:
2937 (WebCore::SVGResourceFilter::SVGResourceFilter):
2938 (WebCore::shouldProcessFilter): Return signal if a neccessary value is zero.
2939 (WebCore::SVGResourceFilter::fitsInMaximumImageSize): Checks if the given size
2940 fits into the maximal image size, modifys scale factors if not and return a
2942 (WebCore::SVGResourceFilter::prepareFilter): Scale the SourceImage to
2943 filterResolution (given by FilterElement or calculated on to big image sizes).
2944 Set the scale level to SVGFilter.
2945 (WebCore::SVGResourceFilter::applyFilter): Don't apply filters if shouldProcessFilter
2947 * svg/graphics/SVGResourceFilter.h:
2948 (WebCore::SVGResourceFilter::setFilterResolution): FilterResolution of FilterElement.
2949 (WebCore::SVGResourceFilter::setHasFilterResolution): Does FilterElement provides
2951 (WebCore::SVGResourceFilter::scaleX): Current scale factor for horizontal.
2952 (WebCore::SVGResourceFilter::scaleY): Current scale factor for vertical.
2953 * svg/graphics/filters/SVGFEDisplacementMap.cpp:
2954 (WebCore::FEDisplacementMap::apply): Use scaledSubRegion for effect intern calculations.
2955 Kernel values are scaled to current filter resolution too.
2956 * svg/graphics/filters/SVGFEFlood.cpp:
2957 (WebCore::FEFlood::apply): Use scaledSubRegion for effect intern calculations.
2958 * svg/graphics/filters/SVGFEMerge.cpp:
2959 (WebCore::FEMerge::apply): Use scaledSubRegion for effect intern calculations.
2960 Kernel values are scaled to current filter resolution too.
2961 * svg/graphics/filters/SVGFEMorphology.cpp:
2962 (WebCore::FEMorphology::apply): Use scaledSubRegion for effect intern calculations.
2963 Kernel values are scaled to current filter resolution too.
2964 * svg/graphics/filters/SVGFEOffset.cpp:
2965 (WebCore::FEOffset::apply): Use scaledSubRegion for effect intern calculations.
2966 * svg/graphics/filters/SVGFETile.cpp:
2967 (WebCore::FETile::apply): Use scaledSubRegion for effect intern calculations.
2968 * svg/graphics/filters/SVGFilter.cpp:
2969 (WebCore::SVGFilter::calculateEffectSubRegion): Calculate subRegion for LayoutTests,
2970 scaledSubRegion according to the current filterResolution and get the maximal image size.
2971 * svg/graphics/filters/SVGFilter.h:
2972 (WebCore::SVGFilter::effectBoundingBoxMode): Original values of the FilterElement.
2973 (WebCore::SVGFilter::filterRegion): Use virtual for clarification.
2974 (WebCore::SVGFilter::sourceImageRect): Use virtual for clarification.
2975 (WebCore::SVGFilter::maxImageSize): Get the maximal image size.
2977 2009-11-23 Simon Hausmann <simon.hausmann@nokia.com>
2979 Reviewed by Kenneth Rohde Christiansen.
2981 [Qt] Wrong runtime instance objects of wrapped QObjects may be used if
2982 the wrapped object died before the gc removed the instance.
2984 https://bugs.webkit.org/show_bug.cgi?id=31681
2986 Before using a cached instance, verify that its wrapped QObject is
2989 * bridge/qt/qt_instance.cpp:
2990 (JSC::Bindings::QtInstance::getQtInstance):
2991 * bridge/qt/qt_instance.h:
2992 (JSC::Bindings::QtInstance::hashKey):
2994 2009-11-22 Chris Fleizach <cfleizach@apple.com>
2996 Reviewed by Oliver Hunt.
2998 ARIA: support aria-flowto
2999 https://bugs.webkit.org/show_bug.cgi?id=31762
3001 Test: platform/mac/accessibility/aria-flowto.html
3003 * accessibility/AccessibilityObject.h:
3004 (WebCore::AccessibilityObject::ariaOwnsElements):
3005 (WebCore::AccessibilityObject::supportsARIAFlowTo):
3006 (WebCore::AccessibilityObject::ariaFlowToElements):
3007 * accessibility/AccessibilityRenderObject.cpp:
3008 (WebCore::AccessibilityRenderObject::linkedUIElements):
3009 (WebCore::AccessibilityRenderObject::supportsARIAFlowTo):
3010 (WebCore::AccessibilityRenderObject::ariaFlowToElements):
3011 * accessibility/AccessibilityRenderObject.h:
3012 * html/HTMLAttributeNames.in:
3014 2009-11-22 Nikolas Zimmermann <nzimmermann@rim.com>
3016 Not reviewed. Build fix for WML enabled builds.
3017 Adopt WebCore API changes.
3019 * wml/WMLAElement.cpp:
3020 (WebCore::WMLAElement::defaultEventHandler):
3021 * wml/WMLInputElement.cpp:
3022 (WebCore::WMLInputElement::defaultEventHandler):
3024 2009-11-22 Pavel Feldman <pfeldman@chromium.org>
3026 Reviewed by Timothy Hatcher.
3028 Web Inspector: Introduce sidebar background on timeline panel in order
3029 to prevent it from flickering on scroll.
3031 https://bugs.webkit.org/show_bug.cgi?id=31789
3033 * inspector/front-end/TimelinePanel.js:
3034 (WebInspector.TimelinePanel):
3035 (WebInspector.TimelinePanel.prototype.setSidebarWidth):
3036 (WebInspector.TimelinePanel.prototype._onScroll):
3037 (WebInspector.TimelinePanel.prototype._scheduleRefresh):
3038 * inspector/front-end/inspector.css:
3040 2009-11-22 Pavel Feldman <pfeldman@chromium.org>
3042 Reviewed by Timothy Hatcher.
3044 Web Inspector: Reimplement TimelinePanel to make it fast:
3045 - Extract grid and overview into separate files
3046 - Make timeline create only divs for visible rows
3048 https://bugs.webkit.org/show_bug.cgi?id=31784
3051 * WebCore.vcproj/WebCore.vcproj:
3052 * inspector/front-end/AbstractTimelinePanel.js:
3053 (WebInspector.AbstractTimelinePanel.prototype.createInterface):
3054 (WebInspector.AbstractTimelinePanel.prototype.refresh):
3055 (WebInspector.AbstractTimelinePanel.prototype.set calculator):
3056 * inspector/front-end/TimelineGrid.js: Added.
3057 (WebInspector.TimelineGrid):
3058 (WebInspector.TimelineGrid.prototype.get itemsGraphsElement):
3059 (WebInspector.TimelineGrid.prototype.updateDividers):
3060 (WebInspector.TimelineGrid.prototype.addEventDivider):
3061 (WebInspector.TimelineGrid.prototype.setScrollAndDividerTop):
3062 * inspector/front-end/TimelineOverviewPane.js: Added.
3063 (WebInspector.TimelineOverviewPane):
3064 (WebInspector.TimelineOverviewPane.prototype._onCheckboxClicked):
3065 (WebInspector.TimelineOverviewPane.prototype.update):
3066 (WebInspector.TimelineOverviewPane.prototype.setSidebarWidth):
3067 (WebInspector.TimelineOverviewPane.prototype.updateMainViewWidth):
3068 (WebInspector.TimelineOverviewPane.prototype.reset):
3069 (WebInspector.TimelineOverviewPane.prototype._resizeWindow):
3070 (WebInspector.TimelineOverviewPane.prototype._windowResizeDragging):
3071 (WebInspector.TimelineOverviewPane.prototype._dragWindow):
3072 (WebInspector.TimelineOverviewPane.prototype._windowDragging):
3073 (WebInspector.TimelineOverviewPane.prototype._resizeWindowLeft):
3074 (WebInspector.TimelineOverviewPane.prototype._resizeWindowRight):
3075 (WebInspector.TimelineOverviewPane.prototype._setWindowPosition):
3076 (WebInspector.TimelineOverviewPane.prototype._endWindowDragging):
3077 (WebInspector.TimelineOverviewCalculator):
3078 (WebInspector.TimelineOverviewCalculator.prototype.computeBarGraphPercentages):
3079 (WebInspector.TimelineOverviewCalculator.prototype.reset):
3080 (WebInspector.TimelineOverviewCalculator.prototype.updateBoundaries):
3081 (WebInspector.TimelineOverviewCalculator.prototype.get boundarySpan):
3082 (WebInspector.TimelineOverviewCalculator.prototype.formatValue):
3083 (WebInspector.TimelineCategoryTreeElement):
3084 (WebInspector.TimelineCategoryTreeElement.prototype.onattach):
3085 (WebInspector.TimelineCategoryGraph):
3086 (WebInspector.TimelineCategoryGraph.prototype.get graphElement):
3087 (WebInspector.TimelineCategoryGraph.prototype.addChunk):
3088 (WebInspector.TimelineCategoryGraph.prototype.clearChunks):
3089 (WebInspector.TimelineCategoryGraph.prototype.set dimmed):
3090 * inspector/front-end/TimelinePanel.js:
3091 (WebInspector.TimelinePanel):
3092 (WebInspector.TimelinePanel.prototype._toggleTimelineButtonClicked):
3093 (WebInspector.TimelinePanel.prototype.addRecordToTimeline):
3094 (WebInspector.TimelinePanel.prototype._formatRecord):
3095 (WebInspector.TimelinePanel.prototype.setSidebarWidth):
3096 (WebInspector.TimelinePanel.prototype.updateMainViewWidth):
3097 (WebInspector.TimelinePanel.prototype.resize):
3098 (WebInspector.TimelinePanel.prototype.reset):
3099 (WebInspector.TimelinePanel.prototype.show):
3100 (WebInspector.TimelinePanel.prototype._onScroll):
3101 (WebInspector.TimelinePanel.prototype._scheduleRefresh):
3102 (WebInspector.TimelinePanel.prototype._refresh):
3103 (WebInspector.TimelinePanel.prototype._refreshRecords):
3104 (WebInspector.TimelinePanel.prototype._adjustScrollPosition):
3105 (WebInspector.TimelineCategory):
3106 (WebInspector.TimelineCalculator):
3107 (WebInspector.TimelineCalculator.prototype.get boundarySpan):
3108 (WebInspector.TimelineRecordListRow):
3109 (WebInspector.TimelineRecordListRow.prototype.update):
3110 (WebInspector.TimelineRecordGraphRow):
3111 (WebInspector.TimelineRecordGraphRow.prototype.update):
3112 * inspector/front-end/WebKit.qrc:
3113 * inspector/front-end/inspector.css:
3114 * inspector/front-end/inspector.html:
3116 2009-11-22 Chris Evans <cevans@chromium.org>
3118 Reviewed by Adam Barth.
3120 Disable access to file:/// directory listings
3121 https://bugs.webkit.org/show_bug.cgi?id=31329
3123 Deny access to directory listings. This needs doing in WebKit for
3124 WebKit clients that do permit top-level navigation to file:///dir.
3125 This matches Firefox, plus the existing Safari implementation (which
3126 does not support any directory access at all). It will fix the
3127 LayoutTest named below for Chromium.
3129 Test: fast/xmlhttprequest/xmlhttprequest-nonexistent-file.html
3131 * page/SecurityOrigin.cpp: Deny access to directory listings.
3132 (WebCore::SecurityOrigin::SecurityOrigin):
3133 (WebCore::SecurityOrigin::canRequest):
3135 2009-11-20 Joseph Pecoraro <joepeck@webkit.org>
3137 Reviewed by Timothy Hatcher.
3139 Web Inspector: Support Ctrl+P and Ctrl+N, Readline keyboard shortcuts in the Console
3140 https://bugs.webkit.org/show_bug.cgi?id=31400
3142 Handle the following when on a Mac:
3144 Ctrl+P = Previous (like Up arrow)
3145 Ctrl+N = Next (like Down arrow)
3147 No longer rerun autocompletion when just pushing a modifier key
3148 like Control, Alt, Shift, or Meta.
3150 Improved arrow key behavior with Multiline code in the Console, with the following behavior:
3152 Up = Previous Command if on First Line (caret moves to the end of the first line)
3153 otherwise default caret movement in text.
3154 Down = Next Command if on Last Line (caret naturally moves to the end)
3155 otherwise default caret movement in text.
3157 * inspector/front-end/TextPrompt.js:
3158 (WebInspector.TextPrompt.prototype.handleKeyEvent): handle new keyboard shortcuts
3159 (WebInspector.TextPrompt.prototype.isCaretOnFirstLine): check if the caret is on the top line
3160 (WebInspector.TextPrompt.prototype.isCaretOnLastLine): check if the caret is on the bottom line
3161 (WebInspector.TextPrompt.prototype._upKeyPressed):
3162 (WebInspector.TextPrompt.prototype._downKeyPressed):
3163 (WebInspector.TextPrompt.prototype._moveBackInHistory):
3164 (WebInspector.TextPrompt.prototype._moveForwardInHistory):
3166 2009-11-21 Jessie Berlin <jberlin@webkit.org>
3168 Reviewed by Timothy Hatcher.
3170 Adds a tooltip containing the full url of the resource to each element
3171 in the Resources panel so that it is possible to quickly see the query
3173 https://bugs.webkit.org/show_bug.cgi?id=19103
3175 * inspector/front-end/ResourcesPanel.js:
3176 (WebInspector.ResourceSidebarTreeElement.prototype.refresh):
3177 Set the tooltip to be the resource's url.
3179 2009-11-21 Simon Fraser <simon.fraser@apple.com>
3181 Reviewed by Dan Bernstein.
3183 CSSKeyframesRule::findRule() and deleteRule() should accept 'from' and 'to' as well as percentages
3184 https://bugs.webkit.org/show_bug.cgi?id=31588
3186 In WebKitCSSKeyframesRule::findRuleIndex(), map 'from' to 0% an 'to' to 100%
3187 so that findRule() and deleteRule() work with these keywords.
3189 * css/WebKitCSSKeyframesRule.cpp:
3190 (WebCore::WebKitCSSKeyframesRule::findRuleIndex):
3192 2009-11-21 Daniel Bates <dbates@webkit.org>
3194 Reviewed by Eric Seidel.
3196 https://bugs.webkit.org/show_bug.cgi?id=31647
3198 Changed KeyboardEvent::m_keyEvent from a raw pointer to an OwnPtr.
3200 No functionality was changed. So, no new tests.
3202 * dom/KeyboardEvent.cpp:
3203 (WebCore::KeyboardEvent::~KeyboardEvent):
3204 * dom/KeyboardEvent.h: Changed m_keyEvent to OwnPtr.
3205 (WebCore::KeyboardEvent::keyEvent):
3207 2009-11-20 Chris Fleizach <cfleizach@apple.com>
3209 Reviewed by Beth Dakin.
3211 WAI-ARIA: add support for aria-owns
3212 https://bugs.webkit.org/show_bug.cgi?id=31702
3214 Re-organized how accessibilityAttributeNames are returned so
3215 that it's possible for an element to add an attribute based on
3216 a dynamic value. In this case, we only want to add AXOwn if the
3217 element actually supports aria-owns.
3219 Test: platform/mac/accessibility/aria-owns.html
3221 * accessibility/AccessibilityObject.h:
3222 (WebCore::AccessibilityObject::supportsARIAOwns):
3223 (WebCore::AccessibilityObject::ariaOwnsElements):
3224 * accessibility/AccessibilityRenderObject.cpp:
3225 (WebCore::AccessibilityRenderObject::ariaOwnsElements):
3226 (WebCore::AccessibilityRenderObject::supportsARIAOwns):
3227 * accessibility/AccessibilityRenderObject.h:
3228 * accessibility/mac/AccessibilityObjectWrapper.mm:
3229 (-[AccessibilityObjectWrapper additionalAccessibilityAttributeNames]):
3230 (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
3231 (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
3232 * html/HTMLAttributeNames.in:
3234 2009-11-20 Eric Carlson <eric.carlson@apple.com>
3236 Reviewed by Simon Fraser.
3238 <rdar://problem/7414396> Leopard & Tiger: Support closed caption in <video> element
3240 * css/mediaControls.css:
3241 Define closed caption toggle button.
3243 * rendering/RenderMedia.cpp:
3244 (WebCore::RenderMedia::updateControls):
3245 Create closed caption toggle button in display order.
3247 * rendering/RenderThemeMac.mm:
3248 (WebCore::RenderThemeMac::shouldRenderMediaControlPart):
3249 Don't require MediaControllerThemeQuickTime theme for captions toggle button.
3250 No need to check if the movie has video, a closed captions track is a video
3253 2009-11-20 Joseph Pecoraro <joepeck@webkit.org>
3255 Reviewed by Timothy Hatcher.
3257 Web Inspector: Running code in the Console that ends with a
3258 single line comment no longer produces a parse error.
3260 * inspector/front-end/InjectedScript.js:
3261 (InjectedScript._evaluateOn):
3263 2009-11-20 Chris Fleizach <cfleizach@apple.com>
3265 Reviewed by Beth Dakin.
3267 WAI-ARIA: add support for 'math' role
3268 https://bugs.webkit.org/show_bug.cgi?id=31706
3270 * accessibility/AccessibilityObject.cpp:
3271 * accessibility/AccessibilityObject.h:
3272 * accessibility/mac/AccessibilityObjectWrapper.mm:
3274 2009-11-20 Yael Aharon <yael.aharon@nokia.com>
3276 Reviewed by Kenneth Rohde Christiansen.
3278 NPN_ReloadPlugins does not reload the page even if reloadPages is true.
3279 https://bugs.webkit.org/show_bug.cgi?id=30460
3281 Replace call to PluginDatabase::installedPlugins()->refresh() with Page::refreshPlugins().
3282 It already refreshes plugins and reloads pages when necessary.
3284 Tests: plugins/reloadplugins-and-pages.html
3285 plugins/reloadplugins-no-pages.html
3287 * plugins/PluginInfoStore.cpp:
3288 (WebCore::refreshPlugins):
3290 2009-11-20 Oliver Hunt <oliver@apple.com>
3292 Reviewed by Dave Hyatt.
3294 <rdar://7409188> WebKit needs to be able to serialize and deserialize objects.
3296 Expose WebCore object serialization to WebKit.
3299 * bindings/js/SerializedScriptValue.cpp:
3300 (WebCore::SerializedScriptValue::~SerializedScriptValue):
3301 (WebCore::SerializedScriptValue::create):
3302 (WebCore::SerializedScriptValue::deserialize):
3303 * bindings/js/SerializedScriptValue.h:
3305 2009-11-20 Brian Weinstein <bweinstein@apple.com>
3307 Reviewed by Tim Hatcher.
3309 Fixes <http://webkit.org/b/31741>.
3310 Web Inspector: User Entered Data on the console should show up no matter what filters.
3312 Always show .console-user-command-result, no matter what the filter say
3313 we should do with the other classes.
3315 * inspector/front-end/inspector.css:
3317 2009-11-20 Brian Weinstein <bweinstein@apple.com>
3319 Reviewed by Tim Hatcher.
3321 Fixes <http://webkit.org/b/31700>.
3322 Web Inspector: isMac should be in one central location + Cached.
3324 We should cache the value of isMac, and make the indexOf call in one
3325 single location, because we are calling it from multiple places, and saving
3326 the result can save us time, and make the call sites simpler.
3328 * inspector/front-end/AbstractTimelinePanel.js:
3329 (WebInspector.AbstractTimelinePanel.prototype._updateFilter):
3330 * inspector/front-end/ConsoleView.js:
3331 (WebInspector.ConsoleView.prototype._updateFilter):
3332 * inspector/front-end/ElementsPanel.js:
3333 (WebInspector.ElementsPanel.prototype.handleKeyEvent):
3334 * inspector/front-end/ScriptsPanel.js:
3335 (WebInspector.ScriptsPanel):
3336 * inspector/front-end/SourceFrame.js:
3337 (WebInspector.SourceFrame.prototype._loaded):
3338 * inspector/front-end/inspector.js:
3339 (WebInspector.documentKeyDown):
3340 (WebInspector.isMac):
3342 2009-11-19 Joseph Pecoraro <joepeck@webkit.org>
3344 Removed .DS_Store accidentally added in last (r51245).
3346 2009-11-19 Joseph Pecoraro <joepeck@webkit.org>
3348 Reviewed by Timothy Hatcher.
3350 Web Inspector: Add Console Only Layout Mode
3351 https://bugs.webkit.org/show_bug.cgi?id=30282
3353 Adds a Console Panel, which allows for a Full size Console. This
3354 extends the Drawer to the size of a Panel. This also fixes previous
3355 resize issues with the Drawer.
3357 * inspector/front-end/ConsolePanel.js: added.
3358 (WebInspector.ConsolePanel):
3359 (WebInspector.ConsolePanel.prototype.toolbarItemClass.get toolbarItemLabel):
3360 (WebInspector.ConsolePanel.prototype.show):
3361 (WebInspector.ConsolePanel.prototype.hide):
3362 * inspector/front-end/Drawer.js:
3363 (WebInspector.Drawer):
3364 (WebInspector.Drawer.prototype.set visibleView):
3365 (WebInspector.Drawer.prototype.get savedHeight): access the saved height of the variable console.
3366 (WebInspector.Drawer.prototype.show.animationFinished):
3367 (WebInspector.Drawer.prototype.show):
3368 (WebInspector.Drawer.prototype.hide.animationFinished):
3369 (WebInspector.Drawer.prototype.hide):
3370 (WebInspector.Drawer.prototype.resize): resize appropriately if full/non-full
3371 (WebInspector.Drawer.prototype.enterPanelMode):
3372 (WebInspector.Drawer.prototype.exitPanelMode):
3373 (WebInspector.Drawer.prototype.immediatelyExitPanelMode):
3374 (WebInspector.Drawer.prototype._cancelAnimationIfNeeded):
3375 (WebInspector.Drawer.prototype._animateDrawerHeight.animationFinished):
3376 (WebInspector.Drawer.prototype._animateDrawerHeight):
3377 (WebInspector.Drawer.prototype._animationDuration):
3378 (WebInspector.Drawer.prototype._startStatusBarDragging):
3379 (WebInspector.Drawer.prototype._statusBarDragging):
3380 (WebInspector.Drawer.prototype._endStatusBarDragging):
3382 Miscellaneous changes and cleanup.
3384 * English.lproj/localizedStrings.js: "Console" toolbar title.
3385 * inspector/front-end/ConsoleView.js: removed unnecessary element reordering
3386 * inspector/front-end/Images/consoleIcon.png: added.
3387 * inspector/front-end/inspector.css: added icon.
3388 * inspector/front-end/inspector.html:
3389 * inspector/front-end/inspector.js:
3390 (WebInspector._createPanels): create console panel
3391 (WebInspector.windowResize): resize drawer if necessary
3392 (WebInspector.documentKeyDown): esc should not toggle the console when in panel mode
3393 (WebInspector.animateStyle): start animation interval, returns the interval key
3394 (WebInspector.toggleAttach): resize drawer if necessary
3395 (WebInspector.showConsolePanel): restore the panel when the inspector restarts
3396 (WebInspector.showProfileForURL): style fix
3398 Restore the panel when the inspector restarts.
3400 * inspector/InspectorController.cpp:
3401 (WebCore::InspectorController::setWindowVisible):
3402 (WebCore::InspectorController::specialPanelForJSName):
3403 * inspector/InspectorFrontend.cpp:
3404 (WebCore::InspectorFrontend::showPanel):
3409 * WebCore.vcproj/WebCore.vcproj:
3410 * inspector/front-end/WebKit.qrc:
3412 2009-11-20 Brian Weinstein <bweinstein@apple.com>
3414 Reviewed by Tim Hatcher.
3416 Fixes <http://webkit.org/b/31699>.
3417 Web Inspector: Should Cache Values of InspectorController.platform() and port().
3419 Refactor the Inspector to cache the value of InspectorController.platform
3420 and InspectorController.port, because those need to call into C++, they are
3421 being called more and more as we add platform specific keyboard shortcuts, and
3422 they shouldn't change in the lifecycle of the Web Inspector.
3424 * inspector/front-end/AbstractTimelinePanel.js:
3425 (WebInspector.AbstractTimelinePanel.prototype._updateFilter):
3426 * inspector/front-end/ConsoleView.js:
3427 (WebInspector.ConsoleView.prototype._updateFilter):
3428 * inspector/front-end/ElementsPanel.js:
3429 (WebInspector.ElementsPanel.prototype.handleKeyEvent):
3430 * inspector/front-end/ScriptsPanel.js:
3431 (WebInspector.ScriptsPanel):
3432 * inspector/front-end/SourceFrame.js:
3433 (WebInspector.SourceFrame.prototype._loaded):
3434 * inspector/front-end/inspector.js:
3435 (WebInspector.get platform):
3436 (WebInspector.get port):
3437 (WebInspector.loaded):
3438 (WebInspector.documentKeyDown):
3439 (WebInspector.toolbarDragStart):
3441 2009-11-20 Dirk Schulze <krit@webkit.org>
3443 Unreviewed build fix for filters enabled builds.
3445 * platform/graphics/filters/FEColorMatrix.cpp:
3446 (WebCore::FEColorMatrix::apply):
3447 * platform/graphics/filters/FEComposite.cpp:
3448 (WebCore::FEComposite::apply):
3449 * platform/graphics/filters/SourceGraphic.cpp:
3450 (WebCore::SourceGraphic::apply):
3451 * svg/graphics/SVGResourceFilter.cpp:
3452 (WebCore::SVGResourceFilter::applyFilter):
3453 * svg/graphics/filters/SVGFEMerge.cpp:
3454 (WebCore::FEMerge::apply):
3455 * svg/graphics/filters/SVGFEOffset.cpp:
3456 (WebCore::FEOffset::apply):
3457 * svg/graphics/filters/SVGFETile.cpp:
3458 (WebCore::FETile::apply):
3460 2009-11-20 Eric Carlson <eric.carlson@apple.com>
3462 Reviewed by Simon Fraser.
3464 <rdar://problem/7389945> QTKit based media engine should not claim to support
3465 fullscreen on Leopard
3467 * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
3468 (WebCore::MediaPlayerPrivate::supportsFullscreen):
3469 Only return true on SnowLeopard for now.
3471 * rendering/RenderThemeMac.mm:
3472 (WebCore::RenderThemeMac::shouldRenderMediaControlPart):
3473 No need to special case MediaFullscreenButtonPart as the default implementation
3474 asks the media engine if it supports fullscreen.
3476 2009-11-18 Girish Ramakrishnan <girish@forwardbias.in>
3478 Reviewed by Simon Hausmann.
3480 Patch by Yongjun Zhang <yongjun.zhang@nokia.com> and
3481 Girish Ramakrishnan <girish@forwardbias.in>
3483 [Qt] Implement support for rendering plugins on Qt/Mac when a page is used
3484 without a QWebView or when inside QGraphicsWebView.
3486 Currently, the code provides the cgcontext of the PlatformPluginWidget to
3487 the plugin. This approach does not work when we are printing, or using
3488 QWebFrame::render() to render to a QImage/QPixmap since the plugin ends
3489 up drawing on the QWebView (i.e platformPluginWidget's cgcontext) instead
3490 of the QPaintDevice's context.
3492 To solve all cases and keep the code simple, we render the plugin to an
3493 offscreen pixmap in all cases. This way, the plugin always renders to the
3494 CGContext of the pixmap and we then use QPainter to blit the pixmap into
3495 the QPaintDevice. We also create a fake window and set it's WindowRef in
3496 NPWindow. Only with this WindowRef does Flash paint correctly to the QPixmap.
3498 Now, that's the theory. In practice, ATM, mouse events do not work when using
3499 the fake window. So, setPlatformPluginWidget() is still called when using QWebView
3500 so that there are no regressions after this patch. Once we get mouse events
3501 working, setPlatformPluginWidget will be removed.
3503 https://bugs.webkit.org/show_bug.cgi?id=31183
3505 * plugins/PluginView.cpp:
3506 (WebCore::PluginView::PluginView):
3507 * plugins/PluginView.h:
3508 * plugins/mac/PluginViewMac.cpp:
3509 (WebCore::PluginView::platformStart):
3510 (WebCore::PluginView::platformDestroy):
3511 (WebCore::PluginView::setNPWindowIfNeeded):
3512 (WebCore::PluginView::updatePluginWidget):
3513 (WebCore::PluginView::paint):
3514 (WebCore::PluginView::invalidateRect):
3516 2009-11-19 Joseph Pecoraro <joepeck@webkit.org>
3518 Reviewed by Timothy Hatcher.
3520 Web Inspector: Resync Resources Backend and Frontend
3521 https://bugs.webkit.org/show_bug.cgi?id=31705
3523 * inspector/front-end/Resource.js: resync enum values with backend
3524 (WebInspector.Resource.prototype._mimeTypeIsConsistentWithType): return false if all else fails, not true in all cases
3526 2009-11-19 Steve Block <steveblock@google.com>
3528 Reviewed by Darin Fisher.
3530 Android port lacks configuration in Platform.h and config.h.
3531 https://bugs.webkit.org/show_bug.cgi?id=31671
3533 Build change only. No new tests possible.
3535 * config.h: Modified. Added Android-specific configuration.
3537 2009-11-20 Roland Steiner <rolandsteiner@chromium.org>
3539 Reviewed by Darin Adler.
3541 Change default stylesheet to reset text indentation for ruby elements by default.
3542 (https://bugs.webkit.org/show_bug.cgi?id=31247)
3544 Test: fast/ruby/ruby-text-indent.html
3546 * css/html.css: reset text-indent on <ruby> and <rt> elements
3548 2009-11-19 Brian Weinstein <bweinstein@apple.com>
3550 Reviewed by Darin Adler.
3552 Fixes <http://webkit.org/b/22754>.
3553 Web Inspector: Keyboard shortcut for Element finder.