1 2013-03-04 Vsevolod Vlasov <vsevik@chromium.org>
3 Web Inspector: Fix front-end compilation
4 https://bugs.webkit.org/show_bug.cgi?id=111286
6 Reviewed by Alexander Pavlov.
8 * inspector/InjectedScriptSource.js:
9 * inspector/front-end/FileSystemProjectDelegate.js:
10 * inspector/front-end/NavigatorView.js:
11 (WebInspector.NavigatorView.prototype.removeUISourceCode):
12 (WebInspector.NavigatorTreeNode.prototype.reset):
13 (WebInspector.NavigatorFolderTreeNode.prototype.didAddChild):
15 2013-03-03 Kondapally Kalyan <kalyan.kondapally@intel.com>
17 [EFL][WebGL] Add proper checks to enable GraphicsSurface usage on EGL without XCompositeWindow.
18 https://bugs.webkit.org/show_bug.cgi?id=108034
20 Reviewed by Laszlo Gombos.
22 Covered by existing WebGL tests.
24 Currently, we set GRAPHICS_SURFACE to true if support for XCompositeWindow
25 is identified during compile time. This is ok, when using GLX. We might not
26 have support for XCompositeWindow when using EGL and GLES2.0. This patch
27 makes changes so that GRAPHICS_SURFACE is always enabled with EGL and adds
28 GLX guard to the parts of code dependent on XCompositeWindow support.
30 * platform/graphics/opengl/GLPlatformSurface.cpp:
31 * platform/graphics/surfaces/glx/GLXConfigSelector.h:
32 (WebCore::GLXConfigSelector::findMatchingConfig):
33 * platform/graphics/surfaces/glx/X11Helper.cpp:
34 (WebCore::X11Helper::createOffScreenWindow):
35 (WebCore::X11Helper::isXRenderExtensionSupported):
36 * platform/graphics/surfaces/glx/X11Helper.h:
38 2013-03-03 Alexander Pavlov <apavlov@chromium.org>
40 Web Inspector: [PageAgent] can't find frame by security origin.
41 https://bugs.webkit.org/show_bug.cgi?id=110849
43 Use toRawString() in order to compare Frames' SecurityOrigins for storage-related goals.
45 Reviewed by Vsevolod Vlasov.
47 * inspector/InspectorPageAgent.cpp:
48 (WebCore::InspectorPageAgent::findFrameWithSecurityOrigin):
50 2013-03-03 Alexander Pavlov <apavlov@chromium.org>
52 Unreviewed, rolling out r144455.
53 http://trac.webkit.org/changeset/144455
54 https://bugs.webkit.org/show_bug.cgi?id=111165
56 A simpler solution to the SecurityOrigin -> localStorage
59 * inspector/front-end/DOMStorage.js:
60 (WebInspector.DOMStorage.storageId):
61 (WebInspector.DOMStorage.prototype.get id):
62 (WebInspector.DOMStorage.prototype.getItems):
63 (WebInspector.DOMStorage.prototype.setItem):
64 (WebInspector.DOMStorage.prototype.removeItem):
65 (WebInspector.DOMStorageModel.prototype._securityOriginAdded):
66 (WebInspector.DOMStorageModel.prototype._securityOriginRemoved):
67 (WebInspector.DOMStorageModel.prototype._storageKey):
68 * inspector/front-end/ExtensionAuditCategory.js:
69 * inspector/front-end/FileSystemModel.js:
70 (WebInspector.FileSystemModel.prototype._reset):
71 (WebInspector.FileSystemModel.prototype._securityOriginAdded):
72 (WebInspector.FileSystemModel.prototype._securityOriginRemoved):
73 (WebInspector.FileSystemModel.prototype._addOrigin):
74 (WebInspector.FileSystemModel.prototype._removeOrigin):
75 (WebInspector.FileSystemModel.prototype._requestFileSystemRoot):
76 (WebInspector.FileSystemModel.prototype._fileSystemRootReceived):
77 (WebInspector.FileSystemModel.prototype._removeFileSystem):
78 (WebInspector.FileSystemModel.FileSystem.prototype.get name):
79 * inspector/front-end/IndexedDBModel.js:
80 (WebInspector.IndexedDBModel.prototype._reset):
81 (WebInspector.IndexedDBModel.prototype.refreshDatabaseNames):
82 (WebInspector.IndexedDBModel.prototype._securityOriginAdded):
83 (WebInspector.IndexedDBModel.prototype._securityOriginRemoved):
84 (WebInspector.IndexedDBModel.prototype._addOrigin):
85 (WebInspector.IndexedDBModel.prototype._removeOrigin):
86 (WebInspector.IndexedDBModel.prototype._updateOriginDatabaseNames):
87 (WebInspector.IndexedDBModel.prototype._loadDatabaseNames):
88 (WebInspector.IndexedDBModel.prototype._loadDatabase):
89 (WebInspector.IndexedDBModel.prototype.):
90 (WebInspector.IndexedDBModel.prototype._requestData):
91 (WebInspector.IndexedDBModel.DatabaseId.prototype.equals):
92 * inspector/front-end/IndexedDBViews.js:
93 (WebInspector.IDBDatabaseView.prototype._refreshDatabase):
94 * inspector/front-end/ResourceTreeModel.js:
95 (WebInspector.ResourceTreeModel):
96 (WebInspector.ResourceTreeModel.prototype._addFrame):
97 (WebInspector.ResourceTreeModel.prototype._addSecurityOrigin):
98 (WebInspector.ResourceTreeModel.prototype._removeSecurityOrigin):
99 (WebInspector.ResourceTreeModel.prototype.securityOrigins):
100 (WebInspector.ResourceTreeModel.prototype._handleMainFrameDetached):
101 (WebInspector.ResourceTreeModel.prototype._frameNavigated):
102 (WebInspector.ResourceTreeModel.prototype._frameDetached):
103 (WebInspector.ResourceTreeFrame):
104 (WebInspector.ResourceTreeFrame.prototype._navigate):
105 * inspector/front-end/ResourcesPanel.js:
106 (WebInspector.IDBDatabaseTreeElement):
107 (WebInspector.IDBDatabaseTreeElement.prototype.get itemURL):
108 (WebInspector.IDBObjectStoreTreeElement.prototype.get itemURL):
109 (WebInspector.IDBIndexTreeElement.prototype.get itemURL):
110 (WebInspector.DOMStorageTreeElement):
111 (WebInspector.DOMStorageTreeElement.prototype.get itemURL):
112 (WebInspector.FileSystemTreeElement):
114 2013-03-01 Vsevolod Vlasov <vsevik@chromium.org>
116 Web Inspector: Let user know when file system based uiSourceCode was changed on disk.
117 https://bugs.webkit.org/show_bug.cgi?id=110133
119 Reviewed by Pavel Feldman.
121 We now check if file system based uiSourceCode content was updated externally when
122 UISourceCodeFrame is shown or inspector window is focused.
123 If there is no working copy being edited right now we replace old content with the new one silently.
124 Otherwise ask user if he wants to replace his working copy with the new content.
126 * English.lproj/localizedStrings.js:
127 * WebCore.vcproj/WebCore.vcproj:
128 * inspector/front-end/DefaultTextEditor.js:
129 (WebInspector.DefaultTextEditor.prototype.editRange):
130 * inspector/front-end/FileSystemProjectDelegate.js:
131 (WebInspector.FileSystemProjectDelegate.prototype.innerCallback):
132 (WebInspector.FileSystemProjectDelegate.prototype.requestFileContent):
133 (WebInspector.FileSystemProjectDelegate.prototype._contentRequestFinished):
134 (WebInspector.FileSystemProjectDelegate.prototype.requestUpdatedFileContent):
135 (WebInspector.FileSystemProjectDelegate.prototype.contentCallback):
136 (WebInspector.FileSystemProjectDelegate.prototype.searchInFileContent):
137 * inspector/front-end/JavaScriptSourceFrame.js:
138 (WebInspector.JavaScriptSourceFrame.prototype.wasShown):
139 (WebInspector.JavaScriptSourceFrame.prototype.willHide):
140 * inspector/front-end/SimpleWorkspaceProvider.js:
141 (WebInspector.SimpleProjectDelegate.prototype.requestUpdatedFileContent):
142 * inspector/front-end/SourceFrame.js:
143 (WebInspector.SourceFrame.prototype.setContent):
144 * inspector/front-end/UISourceCode.js:
145 (WebInspector.UISourceCode.prototype.checkContentUpdated.updatedContentLoaded):
146 (WebInspector.UISourceCode.prototype.checkContentUpdated):
147 * inspector/front-end/UISourceCodeFrame.js:
148 (WebInspector.UISourceCodeFrame.prototype.wasShown):
149 (WebInspector.UISourceCodeFrame.prototype.willHide):
150 (WebInspector.UISourceCodeFrame.prototype._windowFocused):
151 (WebInspector.UISourceCodeFrame.prototype._checkContentUpdated):
152 * inspector/front-end/Workspace.js:
153 (WebInspector.ProjectDelegate.prototype.requestUpdatedFileContent):
154 (WebInspector.Project.prototype.requestUpdatedFileContent):
156 2013-03-03 Arpita Bahuguna <a.bah@samsung.com>
158 createAttribute/setAttributeNode does not properly normalize case
159 https://bugs.webkit.org/show_bug.cgi?id=90341
161 Reviewed by Darin Adler.
163 setAttributeNode() verifies for existing attributes in a case sensitive
164 manner. Thus, it would add another attribute if specified in a case
165 different from the existing one. Instead, like setAttribute(), it too
166 should modify the existing attribute's value.
168 Test: fast/dom/Element/setAttributeNode-case-insensitivity.html
171 (WebCore::Element::setAttributeNode):
172 Made changes to check for an existing attribute by converting the
173 specified attribute's localName to lowercase.
175 2013-03-03 Kentaro Hara <haraken@chromium.org>
177 Unreviewed. Rebaselined run-bindings-tests.
179 * bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
180 (WebCore::TestActiveDOMObjectV8Internal::indexedSecurityCheck):
181 (TestActiveDOMObjectV8Internal):
182 (WebCore::TestActiveDOMObjectV8Internal::namedSecurityCheck):
183 (WebCore::ConfigureV8TestActiveDOMObjectTemplate):
184 * bindings/scripts/test/V8/V8TestActiveDOMObject.h:
185 (V8TestActiveDOMObject):
187 2013-03-03 Kentaro Hara <haraken@chromium.org>
189 Unreviewed build fix after r144590.
191 * bindings/scripts/CodeGeneratorV8.pm:
192 (GenerateSecurityCheckFunctions):
194 2013-03-03 Kentaro Hara <haraken@chromium.org>
196 Unreviewed build fix after r144587.
198 * bindings/v8/V8Binding.cpp:
199 (WebCore::toV8Context):
200 * bindings/v8/V8MutationCallback.cpp:
201 (WebCore::V8MutationCallback::V8MutationCallback):
203 2013-03-01 Kentaro Hara <haraken@chromium.org>
205 [V8] HTMLDocument.all should have [Replaceable]
206 https://bugs.webkit.org/show_bug.cgi?id=111230
208 Reviewed by Adam Barth.
210 (Although HTMLDocument.all is already removed from the spec,)
211 it is expected to behave as a [Replaceable] attribute. By adding
212 a [Replaceable] IDL attribute, we can remove custom implementation
215 I confimed that exactly the same code is generated for .all getter
218 No tests. No change in behavior.
220 * bindings/v8/custom/V8HTMLDocumentCustom.cpp:
221 * html/HTMLDocument.idl:
223 2013-03-01 Kentaro Hara <haraken@chromium.org>
225 [V8] indexedSecurityCheck() and namedSecurityCheck() should be auto-generated
226 https://bugs.webkit.org/show_bug.cgi?id=111225
228 Reviewed by Adam Barth.
230 indexedSecurityCheck() and namedSecurityCheck() should be auto-generated,
231 except for DOMWindow's ones.
233 No tests. No change in behavior.
235 * bindings/scripts/CodeGeneratorV8.pm:
237 (GenerateImplementation):
238 (GenerateSecurityCheckFunctions):
239 * bindings/v8/custom/V8DOMWindowCustom.cpp:
240 (WebCore::V8DOMWindow::namedSecurityCheckCustom):
241 (WebCore::V8DOMWindow::indexedSecurityCheckCustom):
242 * bindings/v8/custom/V8HistoryCustom.cpp:
243 * bindings/v8/custom/V8LocationCustom.cpp:
245 2013-03-01 Kentaro Hara <haraken@chromium.org>
247 [V8] Rename $implContentDecls to $implContentInternals in CodeGeneratorV8.pm
248 https://bugs.webkit.org/show_bug.cgi?id=111214
250 Reviewed by Adam Barth.
252 $implContentDecls stores generated code that is put in a namespace 'XXXV8Internal'.
253 For clarification, it should be renamed to $implContentInternals.
255 No tests. No change in behavior.
257 * bindings/scripts/CodeGeneratorV8.pm:
258 (GenerateDomainSafeFunctionGetter):
259 (GenerateDomainSafeFunctionSetter):
260 (GenerateConstructorGetter):
261 (GenerateNormalAttrGetterCallback):
262 (GenerateNormalAttrGetter):
263 (GenerateReplaceableAttrSetterCallback):
264 (GenerateReplaceableAttrSetter):
265 (GenerateNormalAttrSetterCallback):
266 (GenerateNormalAttrSetter):
267 (GenerateOverloadedFunction):
268 (GenerateFunctionCallback):
270 (GenerateOverloadedConstructorCallback):
271 (GenerateSingleConstructorCallback):
272 (GenerateEventConstructor):
273 (GenerateTypedArrayConstructor):
274 (GenerateImplementation):
277 2013-03-01 Kentaro Hara <haraken@chromium.org>
279 [V8] Rename getWorld() to isolatedWorld(), and getWorldForEnteredContext() to isolatedWorldForEnteredContext()
280 https://bugs.webkit.org/show_bug.cgi?id=111212
282 Reviewed by Adam Barth.
284 The rename I did in r142424 was wrong. Given that getWorld() returns 0
285 for the main world, it should be named isolatedWorld(). Similarly,
286 given that getWorldForEnteredContext() returns 0 for the main world,
287 it should be named isolatedWorldForEnteredContext().
289 No tests. No change in behavior.
291 * bindings/v8/CustomElementHelpers.cpp:
292 (WebCore::CustomElementHelpers::isFeatureAllowed):
293 * bindings/v8/DOMDataStore.cpp:
294 (WebCore::DOMDataStore::current):
295 * bindings/v8/DOMWrapperWorld.cpp:
296 (WebCore::DOMWrapperWorld::makeContextWeak):
297 * bindings/v8/DOMWrapperWorld.h:
298 (WebCore::DOMWrapperWorld::isolatedWorld):
299 * bindings/v8/ScriptController.cpp:
300 (WebCore::ScriptController::shouldBypassMainWorldContentSecurityPolicy):
301 (WebCore::ScriptController::currentWorldContext):
302 * bindings/v8/V8Binding.h:
303 (WebCore::isolatedWorldForEnteredContext):
304 * bindings/v8/WorldContextHandle.cpp:
305 (WebCore::WorldContextHandle::WorldContextHandle):
306 * bindings/v8/custom/V8DocumentCustom.cpp:
308 * bindings/v8/custom/V8HTMLDocumentCustom.cpp:
310 * bindings/v8/custom/V8SVGDocumentCustom.cpp:
312 * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
313 (WebCore::V8XMLHttpRequest::constructorCustom):
315 2013-03-01 Kentaro Hara <haraken@chromium.org>
317 [V8] Move HTMLDocument::getNamedProperty() to DOMWindowShell
318 https://bugs.webkit.org/show_bug.cgi?id=111223
320 Reviewed by Adam Barth.
322 HTMLDocument::getNamedProperty() is used by DOMWindowShell.
323 It can be a static method in DOMWindowShell.
325 No tests. No change in behavior.
327 * bindings/scripts/CodeGeneratorV8.pm:
329 * bindings/v8/V8DOMWindowShell.cpp:
330 (WebCore::getNamedProperty):
333 * bindings/v8/custom/V8HTMLDocumentCustom.cpp:
335 2013-03-03 Dan Bernstein <mitz@apple.com>
337 Build fix after r144565. Reverted r144533.
339 * platform/graphics/avfoundation/objc/WebCoreAVFResourceLoader.h:
341 2013-03-03 Adam Barth <abarth@webkit.org>
343 Attempt to fix the Qt build after r144498
344 https://bugs.webkit.org/show_bug.cgi?id=111272
346 Reviewed by Eric Seidel.
348 Update the Qt version of the XML parser to call the new API.
350 * xml/parser/XMLDocumentParserQt.cpp:
351 (WebCore::XMLDocumentParser::resumeParsing):
352 (WebCore::XMLDocumentParser::appendFragmentSource):
354 2013-03-03 Dean Jackson <dino@apple.com>
356 Plug-ins that are appropriately large w.r.t page size should autostart
357 https://bugs.webkit.org/show_bug.cgi?id=111242
359 Reviewed by Brady Eidson.
361 A "full-page" plug-in site should never snapshot. The trick is
362 how to determine what is full-page. This change implements the
365 - The plug-in is in the main frame (not an iframe).
366 - The plug-in is sized with width and height 100%.
367 - The displayed area of the plug-in is more than 96% of the viewport area.
369 This is definitely not foolproof. For example, zombo.com has a slight
370 border around its plug-in. As the window size gets smaller, the body margin
371 takes up more than 5% of the width or height, and the plug-in doesn't pass
374 * html/HTMLPlugInImageElement.cpp:
375 (WebCore): New static constant: sizingFullPageThresholdPercentage
376 (WebCore::HTMLPlugInImageElement::subframeLoaderWillCreatePlugIn): Implements
377 the rules described above.
379 2013-03-03 Ryosuke Niwa <rniwa@webkit.org>
381 [Win] IDLParser.pm fails to parse OESTextureHalfFloat and causes a build failure
382 https://bugs.webkit.org/show_bug.cgi?id=111267
384 Reviewed by Kentaro Hara.
386 Allow empty definitions.
388 * bindings/scripts/IDLParser.pm:
391 2013-03-03 David Kilzer <ddkilzer@apple.com>
393 BUILD FIX: RenderLayerFilterInfo.h needs to include Element.h with ENABLE(SVG)
395 Fixes the following build failures:
397 In file included from Source/WebCore/rendering/RenderLayerFilterInfo.cpp:33:
398 Source/WebCore/rendering/RenderLayerFilterInfo.h:118:19: error: use of undeclared identifier 'Element'
399 Vector<RefPtr<Element> > m_internalSVGReferences;
401 Source/WebCore/rendering/RenderLayerFilterInfo.h:118:28: error: expected a type
402 Vector<RefPtr<Element> > m_internalSVGReferences;
404 Source/WebCore/rendering/RenderLayerFilterInfo.h:118:30: error: private field 'm_internalSVGReferences' is not used [-Werror,-Wunused-private-field]
405 Vector<RefPtr<Element> > m_internalSVGReferences;
409 * rendering/RenderLayerFilterInfo.h: Include Element.h within
410 ENABLE(SVG). Move ENABLE(SVG) block below unconditional
413 2013-03-03 Sheriff Bot <webkit.review.bot@gmail.com>
415 Unreviewed, rolling out r144567.
416 http://trac.webkit.org/changeset/144567
417 https://bugs.webkit.org/show_bug.cgi?id=111266
419 Does not compile on apple-win (Requested by abarth on
424 (WebCore::Document::iconURLs):
427 * loader/icon/IconController.cpp:
428 (WebCore::IconController::iconURL):
429 (WebCore::IconController::urlsForTypes):
430 * loader/icon/IconController.h:
432 * testing/Internals.cpp:
433 (WebCore::Internals::iconURLs):
434 * testing/Internals.h:
435 * testing/Internals.idl:
437 2013-03-03 Mike West <mkwst@chromium.org>
439 CSP 1.1: Support CSP 1.1 directives on the unprefixed header.
440 https://bugs.webkit.org/show_bug.cgi?id=111254
442 Reviewed by Adam Barth.
444 We'd like to ensure that early adopters don't get stuck on a prefixed
445 header; when CSP 1.1 is baked enough to be supported in multiple
446 browsers, everything should Just Workâ„¢.
448 This patch changes WebKit's behavior regarding CSP_NEXT features.
449 Currently, they're only exposed on the prefixed header ('X-WebKit-CSP').
450 This patch exposes those features on the canonical header, assuming
451 that the runtime flag is set. This shouldn't have any effect at all on
452 ports that haven't yet enabled CSP_NEXT, and will simply clear the way
453 for a clean deployment to a wider audience once the specification
454 process is further along.
456 This change shouldn't have any effect on the existing tests: they
457 should run just as they did before. The next step will be to adjust
458 the LayoutTests for 1.1 to prefer the canonical header, but I'll do
459 that in another patch to reduce churn.
461 Related, the enum names no longer made sense: the difference between the
462 canonical 'Content-Security-Policy' header and 'X-WebKit-CSP' is the
463 prefix, not the functionality. This patch renames them for clarity.
466 (WebCore::Document::processHttpEquiv):
467 * loader/FrameLoader.cpp:
468 (WebCore::FrameLoader::didBeginDocument):
469 Use the new enum names.
470 * page/ContentSecurityPolicy.cpp:
472 (WebCore::CSPDirectiveList::CSPDirectiveList):
473 (WebCore::CSPDirectiveList::addDirective):
474 Drop the 'm_experimental' property from CSPDirectiveList; we'll
475 control the behavior via the runtime flag from now on.
477 Also, this fixes a small bug in 'addDirective()': we never threw
478 unrecognized directive errors for users who were sending the
479 prefixed header. Oops!
480 (WebCore::ContentSecurityPolicy::deprecatedHeaderType):
481 Use the new enum names.
482 * page/ContentSecurityPolicy.h:
483 Redefine the enum for clarity: 'PrefixedReport' and 'Report'
484 rather than 'ReportAllDirectives' and 'ReportStableDirectives'.
486 2013-03-03 Ryosuke Niwa <rniwa@webkit.org>
488 Another Windows build fix attempt after r144567.
489 Try touching the IDL file in a hope it'll regenerate JSInternals.cpp.
491 * testing/Internals.idl:
493 2013-03-03 Adam Barth <abarth@webkit.org>
495 Unreviewed attempted build fix. Adds back some includes removed in
496 http://trac.webkit.org/changeset/144565.
498 * Modules/mediastream/RTCPeerConnection.cpp:
499 * bindings/ScriptControllerBase.cpp:
500 * bindings/objc/DOM.mm:
501 * bindings/v8/ScriptController.cpp:
502 * bindings/v8/V8DOMWindowShell.cpp:
503 * bindings/v8/custom/V8DOMWindowCustom.cpp:
504 * css/CSSFontSelector.cpp:
505 * css/WebKitCSSSVGDocumentValue.cpp:
506 * dom/DOMImplementation.cpp:
507 * dom/PendingScript.h:
508 * dom/ScriptElement.cpp:
509 * dom/ScriptElement.h:
510 * history/CachedFrame.cpp:
512 * html/HTMLAnchorElement.cpp:
513 * html/HTMLAppletElement.cpp:
514 * html/HTMLElement.cpp:
515 * html/HTMLEmbedElement.cpp:
516 * html/HTMLFrameSetElement.cpp:
517 * html/HTMLHtmlElement.cpp:
518 * html/HTMLImageElement.cpp:
519 * html/HTMLObjectElement.cpp:
520 * html/HTMLPlugInElement.cpp:
521 * html/ImageDocument.cpp:
522 * html/ImageInputType.cpp:
523 * html/MediaDocument.cpp:
524 * html/PluginDocument.cpp:
525 * html/canvas/WebGLRenderingContext.cpp:
527 * html/parser/HTMLConstructionSite.cpp:
528 * html/parser/HTMLParserOptions.cpp:
529 * html/parser/XSSAuditorDelegate.cpp:
530 * inspector/InspectorDebuggerAgent.cpp:
531 * inspector/InspectorFileSystemAgent.cpp:
532 * inspector/InspectorFrontendHost.cpp:
533 * inspector/InspectorInstrumentation.h:
534 * inspector/InspectorPageAgent.cpp:
535 * inspector/NetworkResourcesData.cpp:
536 * inspector/NetworkResourcesData.h:
538 * loader/CookieJar.cpp:
539 * loader/CrossOriginAccessControl.cpp:
540 * loader/FrameLoader.cpp:
541 * loader/MainResourceLoader.cpp:
542 * loader/MixedContentChecker.cpp:
543 * loader/PingLoader.cpp:
544 * loader/SubframeLoader.cpp:
545 * loader/SubresourceLoader.cpp:
546 * loader/appcache/ApplicationCacheGroup.cpp:
547 * loader/appcache/ApplicationCacheHost.cpp:
548 * loader/cache/CachedResource.cpp:
549 * loader/icon/IconController.cpp:
550 * page/DOMWindowExtension.cpp:
552 * page/PerformanceTiming.cpp:
553 * page/PointerLockController.cpp:
554 * page/animation/CSSPropertyAnimation.cpp:
555 * platform/chromium/PasteboardChromium.cpp:
556 * platform/efl/ErrorsEfl.cpp:
557 * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
558 * platform/gtk/ErrorsGtk.cpp:
559 * platform/gtk/PasteboardGtk.cpp:
560 * platform/gtk/PasteboardHelper.h:
561 * platform/mac/ClipboardMac.mm:
562 * platform/mac/HTMLConverter.mm:
563 * platform/qt/PasteboardQt.cpp:
564 * plugins/DOMMimeType.cpp:
565 * plugins/PluginView.cpp:
566 * rendering/HitTestResult.cpp:
567 * rendering/RenderImage.cpp:
568 * rendering/RenderImageResource.cpp:
569 * rendering/RenderImageResourceStyleImage.cpp:
570 * rendering/RenderLayer.cpp:
571 * rendering/RenderLayerBacking.cpp:
572 * svg/SVGImageLoader.cpp:
573 * svg/SVGUseElement.cpp:
574 * testing/MockPagePopupDriver.cpp:
575 * xml/XSLStyleSheet.h:
578 2013-03-03 Ruslan Abdikeev <aruslan@chromium.org>
580 <link rel="apple-touch-icon"> tag is not honored on CNN.com, workflowy.com etc
581 https://bugs.webkit.org/show_bug.cgi?id=109061
583 Reviewed by Adam Barth.
585 Test: fast/dom/icon-url-list-apple-touch.html
587 Added iconTypes parameter to Document::iconURLs().
588 Added Document::shortcutIconURLs() with original semantics of iconURLs().
589 Fixed IconController.cpp to provide iconTypesMask to iconURLs().
590 Renamed iconTypes to iconTypesMask to make the meaning clearer.
594 (WebCore::Document::shortcutIconURLs):
596 (WebCore::Document::iconURLs):
599 * loader/icon/IconController.cpp:
600 (WebCore::IconController::iconURL):
601 (WebCore::IconController::urlsForTypes):
602 * testing/Internals.cpp:
603 (WebCore::Internals::iconURLs):
604 (WebCore::Internals::shortcutIconURLs):
606 (WebCore::Internals::allIconURLs):
607 * testing/Internals.h:
608 * testing/Internals.idl:
610 2013-03-03 Mike West <mkwst@chromium.org>
612 CSP: Throw a warning when a '*-report-only' header doesn't contain a 'report-uri' directive.
613 https://bugs.webkit.org/show_bug.cgi?id=111208
615 Reviewed by Adam Barth.
617 Developers in the wild have been observed to serve a report-only CSP
618 header with a policy that doesn't contain a 'report-uri' directive.
619 This has zero effect, of course, and we should help them understand
620 that by throwing a warning up on the console.
622 Test: http/tests/security/contentSecurityPolicy/report-only-report-uri-missing.html
624 * page/ContentSecurityPolicy.cpp:
625 (WebCore::CSPDirectiveList::isReportOnly): Added.
626 (WebCore::CSPDirectiveList::reportURIs): Added.
627 (WebCore::CSPDirectiveList::create):
628 After creating a CSPDirectiveList, check whether it's in
629 report-only mode without a report-uri. If so, warn the developer.
630 (WebCore::ContentSecurityPolicy::reportMissingReportURI): Added.
631 Write an exciting message to the console, warning the developer
632 about her expensive no-op machine.
634 2013-03-03 Adam Barth <abarth@webkit.org>
636 Unreviewed rollout of http://trac.webkit.org/r144530
637 As described in https://bugs.webkit.org/show_bug.cgi?id=111167 and
638 https://bugs.webkit.org/show_bug.cgi?id=111035, this patch caused a
639 large number of ASSERTs in chromium-win.
642 * GNUmakefile.list.am:
643 * Modules/mediastream/RTCPeerConnection.cpp:
644 * Modules/notifications/Notification.cpp:
648 * WebCore.vcproj/WebCore.vcproj:
649 * WebCore.vcxproj/WebCore.vcxproj:
650 * WebCore.vcxproj/WebCore.vcxproj.filters:
651 * WebCore.xcodeproj/project.pbxproj:
652 * bindings/ScriptControllerBase.cpp:
653 * bindings/js/JSNodeCustom.cpp:
654 * bindings/js/ScriptController.cpp:
655 * bindings/js/ScriptSourceCode.h:
657 * bindings/objc/DOM.mm:
658 * bindings/v8/ScriptController.cpp:
659 * bindings/v8/V8DOMWindowShell.cpp:
660 * bindings/v8/custom/V8DOMWindowCustom.cpp:
661 * css/CSSCrossfadeValue.h:
662 (WebCore::CSSCrossfadeValue::CSSCrossfadeValue):
663 (WebCore::CSSCrossfadeValue::CrossfadeSubimageObserverProxy::CrossfadeSubimageObserverProxy):
664 * css/CSSFontFaceSource.h:
665 * css/CSSFontSelector.cpp:
666 * css/WebKitCSSSVGDocumentValue.cpp:
667 * css/WebKitCSSSVGDocumentValue.h:
670 (WebCore::Clipboard::Clipboard):
671 * dom/ContainerNode.cpp:
672 * dom/DOMImplementation.cpp:
673 * dom/PendingScript.h:
674 * dom/ScriptElement.cpp:
675 * dom/ScriptElement.h:
676 * history/CachedFrame.cpp:
678 * html/HTMLAnchorElement.cpp:
679 * html/HTMLAppletElement.cpp:
680 * html/HTMLElement.cpp:
681 * html/HTMLEmbedElement.cpp:
682 * html/HTMLFrameSetElement.cpp:
683 * html/HTMLHtmlElement.cpp:
684 * html/HTMLImageElement.cpp:
685 * html/HTMLObjectElement.cpp:
686 * html/HTMLPlugInElement.cpp:
687 * html/ImageDocument.cpp:
688 * html/ImageInputType.cpp:
689 * html/MediaDocument.cpp:
690 * html/PluginDocument.cpp:
691 * html/canvas/WebGLRenderingContext.cpp:
693 * html/parser/HTMLConstructionSite.cpp:
694 * html/parser/HTMLParserOptions.cpp:
695 * html/parser/HTMLScriptRunner.h:
696 * html/parser/XSSAuditor.cpp:
697 * html/parser/XSSAuditorDelegate.cpp:
698 * inspector/InspectorDebuggerAgent.cpp:
699 * inspector/InspectorFileSystemAgent.cpp:
700 * inspector/InspectorFrontendHost.cpp:
701 * inspector/InspectorInstrumentation.h:
703 * inspector/InspectorPageAgent.cpp:
704 * inspector/NetworkResourcesData.cpp:
705 * inspector/NetworkResourcesData.h:
707 * loader/CookieJar.cpp:
708 * loader/CrossOriginAccessControl.cpp:
709 * loader/CrossOriginAccessControl.h:
711 * loader/CrossOriginPreflightResultCache.h:
712 * loader/DocumentThreadableLoader.h:
713 * loader/FrameLoader.cpp:
714 (WebCore::FrameLoader::FrameLoader):
715 * loader/FrameLoader.h:
717 (WebCore::FrameLoader::policyChecker):
718 * loader/ImageLoader.cpp:
719 * loader/ImageLoader.h:
720 * loader/LinkLoader.h:
722 * loader/MainResourceLoader.cpp:
723 * loader/MainResourceLoader.h:
725 * loader/MixedContentChecker.cpp:
726 * loader/PingLoader.cpp:
727 * loader/PolicyChecker.h:
729 * loader/ProgressTracker.cpp:
730 * loader/SubframeLoader.cpp:
731 * loader/SubresourceLoader.cpp:
732 * loader/TextTrackLoader.cpp:
733 * loader/TextTrackLoader.h:
735 * loader/ThreadableLoader.h:
736 * loader/appcache/ApplicationCacheGroup.cpp:
737 * loader/appcache/ApplicationCacheGroup.h:
739 * loader/appcache/ApplicationCacheHost.cpp:
740 * loader/archive/cf/LegacyWebArchive.cpp:
741 * loader/cache/CachedFont.cpp:
742 * loader/cache/CachedFont.h:
744 (WebCore::CachedFontClient::~CachedFontClient):
745 (WebCore::CachedFontClient::expectedType):
746 (WebCore::CachedFontClient::resourceClientType):
747 (WebCore::CachedFontClient::fontLoaded):
749 * loader/cache/CachedFontClient.h: Removed.
750 * loader/cache/CachedImage.cpp:
751 * loader/cache/CachedRawResource.cpp:
752 * loader/cache/CachedRawResource.h:
754 (CachedRawResourceClient):
755 (WebCore::CachedRawResourceClient::~CachedRawResourceClient):
756 (WebCore::CachedRawResourceClient::expectedType):
757 (WebCore::CachedRawResourceClient::resourceClientType):
758 (WebCore::CachedRawResourceClient::dataSent):
759 (WebCore::CachedRawResourceClient::responseReceived):
760 (WebCore::CachedRawResourceClient::dataReceived):
761 (WebCore::CachedRawResourceClient::redirectReceived):
762 (WebCore::CachedRawResourceClient::dataDownloaded):
763 * loader/cache/CachedRawResourceClient.h: Removed.
764 * loader/cache/CachedResource.cpp:
765 * loader/cache/CachedResourceHandle.cpp:
767 * loader/cache/CachedResourceHandle.h:
769 (WebCore::CachedResourceHandleBase::~CachedResourceHandleBase):
770 (WebCore::CachedResourceHandleBase::CachedResourceHandleBase):
771 * loader/cache/CachedSVGDocument.h:
772 (CachedSVGDocumentClient):
773 (WebCore::CachedSVGDocumentClient::~CachedSVGDocumentClient):
774 (WebCore::CachedSVGDocumentClient::expectedType):
775 (WebCore::CachedSVGDocumentClient::resourceClientType):
777 * loader/cache/CachedSVGDocumentClient.h: Removed.
778 * loader/cache/CachedSVGDocumentReference.cpp: Removed.
779 * loader/cache/CachedSVGDocumentReference.h:
781 (WebCore::CachedSVGDocumentReference::CachedSVGDocumentReference):
782 (WebCore::CachedSVGDocumentReference::~CachedSVGDocumentReference):
783 * loader/cache/CachedStyleSheetClient.h:
785 * loader/cache/MemoryCache.h:
788 * loader/chromium/CachedRawResourceChromium.cpp:
789 * loader/icon/IconController.cpp:
790 * loader/icon/IconLoader.h:
791 * loader/mac/ResourceLoaderMac.mm:
792 * page/DOMWindowExtension.cpp:
794 (WebCore::Frame::Frame):
796 (WebCore::Frame::reportMemoryUsage):
800 (WebCore::Frame::init):
801 (WebCore::Frame::loader):
802 * page/PerformanceNavigation.cpp:
803 * page/PerformanceTiming.cpp:
804 * page/PointerLockController.cpp:
806 * page/animation/CSSPropertyAnimation.cpp:
807 * platform/chromium/PasteboardChromium.cpp:
808 * platform/efl/ErrorsEfl.cpp:
809 * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
810 * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
811 * platform/graphics/filters/FilterOperation.cpp:
813 * platform/graphics/filters/FilterOperation.h:
815 (WebCore::FilterOperation::ReferenceFilterOperation::setCachedSVGDocumentReference):
816 (WebCore::FilterOperation::ReferenceFilterOperation::ReferenceFilterOperation):
817 * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
818 * platform/gtk/ErrorsGtk.cpp:
819 * platform/gtk/PasteboardGtk.cpp:
820 * platform/gtk/PasteboardHelper.h:
821 * platform/mac/ClipboardMac.h:
822 * platform/mac/ClipboardMac.mm:
823 * platform/mac/HTMLConverter.mm:
824 * platform/mac/PasteboardMac.mm:
825 * platform/network/AuthenticationChallengeBase.cpp:
826 * platform/network/cf/CookieJarCFNet.cpp:
827 * platform/network/cf/ResourceRequestCFNet.cpp:
828 * platform/network/mac/CookieStorageMac.mm:
829 * platform/qt/PasteboardQt.cpp:
830 * plugins/DOMMimeType.cpp:
831 * plugins/PluginRequest.h: Removed.
832 * plugins/PluginStream.h:
833 (PluginStreamClient):
834 (WebCore::PluginStreamClient::~PluginStreamClient):
835 (WebCore::PluginStreamClient::streamDidFinishLoading):
837 * plugins/PluginStreamClient.h: Removed.
838 * plugins/PluginView.cpp:
839 * plugins/PluginView.h:
842 (WebCore::PluginRequest::PluginRequest):
843 (WebCore::PluginRequest::frameLoadRequest):
844 (WebCore::PluginRequest::notifyData):
845 (WebCore::PluginRequest::sendNotification):
846 (WebCore::PluginRequest::shouldAllowPopups):
847 * rendering/HitTestResult.cpp:
848 * rendering/InlineFlowBox.cpp:
849 * rendering/RenderBox.cpp:
850 * rendering/RenderEmbeddedObject.cpp:
851 * rendering/RenderImage.cpp:
852 * rendering/RenderImageResource.cpp:
853 (WebCore::RenderImageResource::RenderImageResource):
855 * rendering/RenderImageResource.h:
856 (WebCore::RenderImageResource::image):
857 (WebCore::RenderImageResource::errorOccurred):
858 (WebCore::RenderImageResource::usesImageContainerSize):
859 (WebCore::RenderImageResource::imageHasRelativeWidth):
860 (WebCore::RenderImageResource::imageHasRelativeHeight):
861 (WebCore::RenderImageResource::imageSize):
862 * rendering/RenderImageResourceStyleImage.cpp:
863 * rendering/RenderLayer.cpp:
864 * rendering/RenderLayerBacking.cpp:
865 * rendering/RenderLayerFilterInfo.h:
867 * rendering/RenderListItem.cpp:
868 * rendering/RenderListMarker.cpp:
869 * rendering/RenderSnapshottedPlugIn.cpp:
870 * rendering/RenderTableCol.cpp:
871 * rendering/RenderTableRow.cpp:
872 * rendering/RenderTableSection.cpp:
873 * rendering/style/StyleCachedShader.h:
874 * rendering/style/StyleCustomFilterProgram.cpp: Removed.
875 * rendering/style/StyleCustomFilterProgram.h:
877 (WebCore::StyleCustomFilterProgram::vertexShaderString):
878 (StyleCustomFilterProgram):
879 (WebCore::StyleCustomFilterProgram::fragmentShaderString):
880 (WebCore::StyleCustomFilterProgram::isLoaded):
881 (WebCore::StyleCustomFilterProgram::willHaveClients):
882 (WebCore::StyleCustomFilterProgram::didRemoveLastClient):
883 (WebCore::StyleCustomFilterProgram::notifyFinished):
884 * svg/SVGFEImageElement.h:
885 * svg/SVGFontFaceUriElement.h:
886 (SVGFontFaceUriElement):
887 * svg/SVGImageLoader.cpp:
888 * svg/SVGUseElement.cpp:
889 * svg/SVGUseElement.h:
890 * svg/graphics/SVGImageCache.cpp:
891 * testing/MockPagePopupDriver.cpp:
892 * xml/XSLStyleSheet.h:
894 * xml/XSLTProcessorLibxslt.cpp:
895 * xml/parser/XMLDocumentParser.cpp:
896 * xml/parser/XMLDocumentParser.h:
897 * xml/parser/XMLDocumentParserLibxml2.cpp:
899 2013-03-03 Kentaro Hara <haraken@chromium.org>
901 [V8] Remove TranslateParameter() from CodeGeneratorV8.pm
902 https://bugs.webkit.org/show_bug.cgi?id=111218
904 Reviewed by Adam Barth.
906 TranslateParameter() does nothing. It tries to convert TimeoutHandler to DOMString,
907 but there is no non-custom method that uses TimeoutHandler.
909 The only place where TimeoutHandler is used in the WebKit IDL is setTimeout() and setInterval().
910 However, the latest spec uses 'any' instead of TimeoutHandler.
911 http://dev.w3.org/html5/spec-LC/timers.html
912 Thus, this patch updates the IDL declarations of setTimeout() and setInterval()
913 according to the spec. By this change, TimeoutHandler is gone away from the WebKit IDL.
914 (Anyway this IDL change has no effect, because setTimeout() and setInterval() are written
917 No tests. No change in behavior.
919 * bindings/scripts/CodeGeneratorV8.pm:
920 (GenerateParametersCheck):
921 * page/DOMWindow.idl:
922 * workers/WorkerContext.idl:
924 2013-03-03 James Weatherall <wez@chromium.org>
926 keydown and keyup events have zero keycode for some numeric pad keys under Chromium on Linux
927 https://bugs.webkit.org/show_bug.cgi?id=85642
929 Add missing key mappings for GDK_KP_Begin, GDK_KP_Insert, GDK_KP_Delete and GDK_ISO_Level3_Shift.
931 Reviewed by Adam Barth.
933 * platform/chromium/KeyCodeConversionGtk.cpp:
934 (WebCore::windowsKeyCodeForKeyEvent):
936 2013-03-03 Adam Barth <abarth@webkit.org>
938 REGRESSION(144520): Does not compile on chromium-win
939 https://bugs.webkit.org/show_bug.cgi?id=111261
941 Unreviewed rollout of http://trac.webkit.org/changeset/144520. This
942 patch does not compile for chromium-win. See the bug for the compile
945 * rendering/ExclusionShapeInsideInfo.cpp:
946 * rendering/ExclusionShapeInsideInfo.h:
949 (WebCore::LineSegmentRange::LineSegmentRange):
950 (WebCore::ExclusionShapeInsideInfo::isEnabledFor):
951 * rendering/RenderBlock.cpp:
952 (WebCore::RenderBlock::willBeDestroyed):
953 (WebCore::RenderBlock::exclusionShapeInsideInfo):
955 (WebCore::RenderBlock::updateExclusionShapeInsideInfoAfterStyleChange):
956 * rendering/RenderBlock.h:
959 (RenderBlockRareData):
960 * rendering/RenderBlockLineLayout.cpp:
961 (WebCore::constructBidiRunsForLine):
963 2013-03-02 Zan Dobersek <zdobersek@igalia.com>
965 REGRESSION (r144517): IndexedDB layout test failures on GTK
966 https://bugs.webkit.org/show_bug.cgi?id=111243
968 Reviewed by Martin Robinson.
970 Changes to the custom JSC bindings for IDBAny are required after r144517,
971 specifically the case of IDBAny object having the KeyPathType type has to be covered.
972 These changes are analogous to those made to the V8 bindings in the mentioned commit.
974 No new tests - already covered by existing tests.
976 * bindings/js/JSIDBAnyCustom.cpp:
977 (WebCore::toJS): A helper function that wraps an IDBKeyPath into a JSValue.
978 (WebCore): Shuffle the order inside the switch statement a bit to match the V8 custom bindings.
979 Cover the case where the IDBAny object has the KeyPathType, calling the new helper method.
981 2013-03-02 Darin Adler <darin@apple.com>
983 Another try at fixing the build.
985 * loader/cache/MemoryCache.cpp: Added an include of CachedResourceHandle.h.
987 2013-03-02 Darin Adler <darin@apple.com>
991 * inspector/InspectorInstrumentation.h: Add missing forward declaration
994 2013-02-18 Darin Adler <darin@apple.com>
996 Cut down the number of source files that depend on Clipboard.h
997 https://bugs.webkit.org/show_bug.cgi?id=110030
999 Reviewed by Ryosuke Niwa.
1001 I am doing some work on Clipboard and it's better to recompile 50 files
1002 each time we touch the header instead of 700. Also cut down on includes
1005 * WebCore.exp.in: Updated for new MouseEvent::create function.
1007 * dom/ClipboardEvent.cpp: Added include of Clipboard.h since we use it
1008 here and the world no longer includes it everywhere.
1010 * dom/ClipboardEvent.h: Forward declared Clipboard instead of including
1011 Clipboard.h. Also made some overrides private because they can be.
1013 * dom/DataTransferItem.h: Removed unneeded include of Clipboard.h.
1015 * dom/MouseEvent.cpp: Added include of Clipboard.h since we use it
1016 here and the world no longer includes it everywhere.
1017 (WebCore::MouseEvent::create): Made the create function non-inline
1018 since we can't compile it without including Clipboard.h and we don't
1019 want to include Clipboard.h in the header. This is not so commonly
1020 used or so hot that this needs to be inlined.
1022 * dom/MouseEvent.h: Forward declared Clipboard instead of including
1023 Clipboard.h. Made MouseEvent::create a non-inline function and also
1024 used overloading instead of default arguments, since we can't compile
1025 a default argument of type PassRefPtr<Clipboard> without including
1028 * dom/WheelEvent.cpp: Added include of Clipboard.h since we use it
1029 here and the world no longer includes it everywhere.
1031 * dom/WheelEvent.h: Forward declare PlatformWheelEvent since it is used
1032 in this header. Previously we'd get it indirectly from including a header
1033 that included Clipboard.h.
1035 * editing/Editor.cpp: Added include of Clipboard.h since we use it here
1036 and the world no longer includes it everywhere.
1038 * inspector/InspectorDebuggerAgent.cpp: Added include of CachedResource.h.
1039 We used to get this indirectly through Clipboard.h.
1041 * inspector/InspectorFrontendHost.cpp: Added includes of ResourceError.h
1042 and ResourceResponse.h. We used to get these indirectly through Clipboard.h.
1043 Also removed unneeded include of <wtf/RefPtr.h>.
1045 * inspector/NetworkResourcesData.cpp: Added include of CachedResource.h.
1046 We used to get this indirectly through Clipboard.h.
1048 * loader/PingLoader.cpp: Added include of ResourceResponse.h.
1049 We used to get this indirectly through Clipboard.h.
1051 * page/DragController.cpp: Added include of DragState.h.
1052 We used to get this indirectly through EventHandler.h
1054 * page/EventHandler.h: Forward declared DragState and Element instead of
1055 including DragState.h. Also added an include of LayoutPoint.h, which we
1056 used to get indirectly through DragState.h.
1058 2013-02-27 Darin Adler <darin@apple.com>
1060 StringHasher functions require alignment that call sites do not all guarantee
1061 https://bugs.webkit.org/show_bug.cgi?id=110171
1063 Reviewed by Benjamin Poulain.
1065 * platform/graphics/WidthCache.h:
1066 (WebCore::WidthCache::SmallStringKey::SmallStringKey): Use the newly added
1067 addCharactersAssumingAligned to make sure we don't slow this call site down.
1068 It's safe since this code always adds characters two at a time.
1070 2013-03-02 Adam Barth <abarth@webkit.org>
1072 XSSAuditor has a subtle race condition when used with the threaded HTML parser
1073 https://bugs.webkit.org/show_bug.cgi?id=111253
1075 Reviewed by Eric Seidel.
1077 We were refing and derefing a StringImpl for a main-thread
1078 AtomicString. Using QualifiedNames on the background thread is very
1079 fragile and we should figure out a more robust solution.
1081 * html/parser/XSSAuditor.cpp:
1082 (WebCore::findAttributeWithName):
1084 2013-03-02 Benjamin Poulain <bpoulain@apple.com>
1086 Move computedStyleIncludingVisitedInfo from TestRunner to Internals
1087 https://bugs.webkit.org/show_bug.cgi?id=109772
1089 Reviewed by Andreas Kling.
1091 The function computedStyleIncludingVisitedInfo() is purely internal to WebCore,
1092 it is better defined on Internals than on TestRunner.
1094 * testing/Internals.cpp:
1095 (WebCore::Internals::computedStyleIncludingVisitedInfo):
1096 * testing/Internals.h:
1097 * testing/Internals.idl:
1099 2013-03-02 David Kilzer <ddkilzer@apple.com>
1101 BUILD FIX (r143637): Export ScriptController::javaScriptContext() on iOS
1102 <http://webkit.org/b/106059>
1104 Fixes the following build failure:
1106 Undefined symbols for architecture armv7:
1107 "__ZN7WebCore16ScriptController17javaScriptContextEv", referenced from:
1108 -[WebFrame javaScriptContext] in WebFrame.o
1109 __ZN20WebFrameLoaderClient35dispatchDidClearWindowObjectInWorldEPN7WebCore15DOMWrapperWorldE in WebFrameLoaderClient.o
1110 ld: symbol(s) not found for architecture armv7
1112 * WebCore.exp.in: Export ScriptController::javaScriptContext()
1113 even more unconditionally.
1115 2013-03-02 Eric Seidel <eric@webkit.org>
1117 Remove two unnecessary mallocs from the main-thread-parser code path
1118 https://bugs.webkit.org/show_bug.cgi?id=111249
1120 Reviewed by Adam Barth.
1122 I noticed these while fixing up our Vector -> String conversions
1123 but never went back to fix the FIXME.
1125 AtomicString(Vector<UChar, capacity>) is smart enough to avoid mallocing
1126 if the represented string is already in the AtomicString table. It
1127 also handles 8bit vs. 16bit and empty() just like nameString() does.
1129 I also removed a 3rd caller to nameString() in the XSSAuditor which
1130 was causing an unnecessary malloc in both the main and background
1131 thread parser paths.
1133 * html/parser/AtomicHTMLToken.h:
1134 (WebCore::AtomicHTMLToken::AtomicHTMLToken):
1135 * html/parser/HTMLToken.h:
1136 * html/parser/XSSAuditor.cpp:
1138 (WebCore::threadSafeMatch):
1141 2013-03-02 Eric Seidel <eric@webkit.org>
1143 constructTreeFromCompactHTMLToken should call clearExternalCharacters
1144 https://bugs.webkit.org/show_bug.cgi?id=111248
1146 Reviewed by Adam Barth.
1148 I don't know how to write a test for this. It's possible characters()
1149 is never accessed from HTMLStackItem::token(), but it's better to be
1150 safe than sorry here.
1152 * html/parser/HTMLDocumentParser.cpp:
1153 (WebCore::HTMLDocumentParser::constructTreeFromCompactHTMLToken):
1155 2013-03-02 Rob Buis <rbuis@rim.com>
1157 Text overflow ellipsis wrong color when using webkit-text-fill-color
1158 https://bugs.webkit.org/show_bug.cgi?id=54841
1160 Reviewed by David Hyatt.
1162 Take -webkit-text-fill-color into account for ellipsis painting.
1164 Test: fast/css/text-overflow-ellipsis-color.html
1166 * rendering/EllipsisBox.cpp:
1167 (WebCore::EllipsisBox::paint):
1169 2013-03-02 Ryosuke Niwa <rniwa@webkit.org>
1171 Fix a typo in my previous commit (r144534).
1173 * platform/win/PasteboardWin.cpp:
1175 2013-03-02 Nayan Kumar K <nayankk@motorola.com>
1177 [WebGL] Support for texImage2D of type HALF_FLOAT_OES with ArrayBufferView.
1178 https://bugs.webkit.org/show_bug.cgi?id=110818
1180 Reviewed by Kenneth Russell.
1182 As per OES_texture_half_float specification texImage2D and texSubImage2D entry
1183 points taking ArrayBufferView should extended to accept null with the pixel type
1186 Tests: fast/canvas/webgl/oes-texture-half-float-not-supported.html
1187 fast/canvas/webgl/oes-texture-half-float.html
1190 * DerivedSources.make:
1191 * DerivedSources.pri:
1192 * GNUmakefile.list.am:
1195 * WebCore.xcodeproj/project.pbxproj:
1196 * bindings/js/JSWebGLRenderingContextCustom.cpp:
1198 * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
1199 (WebCore::toV8Object):
1200 * html/canvas/OESTextureHalfFloat.cpp: Copied from Source/WebCore/html/canvas/WebGLExtension.h.
1202 (WebCore::OESTextureHalfFloat::OESTextureHalfFloat):
1203 (WebCore::OESTextureHalfFloat::~OESTextureHalfFloat):
1204 (WebCore::OESTextureHalfFloat::getName):
1205 (WebCore::OESTextureHalfFloat::create):
1206 * html/canvas/OESTextureHalfFloat.h: Copied from Source/WebCore/html/canvas/WebGLExtension.h.
1208 (OESTextureHalfFloat):
1209 * html/canvas/OESTextureHalfFloat.idl: Copied from Source/WebCore/html/canvas/WebGLExtension.h.
1210 * html/canvas/WebGLExtension.h:
1211 * html/canvas/WebGLRenderingContext.cpp:
1213 (WebCore::WebGLRenderingContext::getExtension):
1214 (WebCore::WebGLRenderingContext::texImage2D):
1215 (WebCore::WebGLRenderingContext::texSubImage2D):
1216 (WebCore::WebGLRenderingContext::validateTexFuncFormatAndType):
1217 (WebCore::WebGLRenderingContext::validateTexFuncData):
1218 * html/canvas/WebGLRenderingContext.h:
1220 (WebGLRenderingContext):
1221 * html/canvas/WebGLRenderingContext.idl:
1222 * platform/graphics/Extensions3D.h:
1224 * platform/graphics/GraphicsContext3D.cpp:
1225 (WebCore::GraphicsContext3D::computeFormatAndTypeParameters):
1226 * platform/graphics/GraphicsContext3D.h:
1227 * platform/graphics/GraphicsTypes3D.h:
1228 * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
1229 (WebCore::GraphicsContext3D::texImage2D):
1231 2013-03-02 Ryosuke Niwa <rniwa@webkit.org>
1233 Windows build fix attempt after r144530.
1235 * platform/win/PasteboardWin.cpp:
1237 2013-03-01 Dan Bernstein <mitz@apple.com>
1239 Tried to fix the build after r144530.
1241 * platform/graphics/avfoundation/objc/WebCoreAVFResourceLoader.h: Include the header for the
1244 2013-03-01 Terry Anderson <tdanderson@chromium.org>
1246 Remove unused member variable m_useLatchedEventNode from PlatformWheelEvent.h
1247 https://bugs.webkit.org/show_bug.cgi?id=107314
1249 Reviewed by Darin Adler.
1251 EventHandler::handleGestureScrollCore() was removed in http://trac.webkit.org/changeset/140177,
1252 and this was the only place where the member variable |m_useLatchedEventNode| in
1253 PlatformWheelEvent was mutated. This variable is no longer needed and so it should be removed.
1255 No change in behavior, so no new tests needed.
1257 * platform/PlatformWheelEvent.h:
1258 (WebCore::PlatformWheelEvent::PlatformWheelEvent):
1259 (WebCore::PlatformWheelEvent::useLatchedEventNode):
1260 (PlatformWheelEvent):
1262 2013-02-28 Alexey Proskuryakov <ap@apple.com>
1264 Reduce amount of rebuilding when touching networking headers
1265 https://bugs.webkit.org/show_bug.cgi?id=111035
1267 Reviewed by Eric Seidel.
1269 This uses a number of common unsurprising techniques. One interesting observation
1270 is that including CachedResource related headers is very expensive. We can usually
1271 get away with their Client counterparts, and with CachedResourceHandle.
1275 Don't include FrameLoader, greatly reducing include graph for most non-loader files.
1276 This required making Frame::init() non-inline - I'm not sure why it ever was.
1278 * loader/FrameLoader.cpp:
1279 * loader/FrameLoader.h:
1280 Even though FrameLoader is logically on loading side of WebCore, it's included in
1281 too many places. Not including PolicyChecker.h and ResourceHandle.h was among the
1282 largest wins. As a future improvement, we should probably convert other members
1285 * css/CSSCrossfadeValue.h: Initializing CachedResourceHandle with 0 requires a
1286 definition of a class it holds, but default construction does not.
1288 * loader/CrossOriginAccessControl.h: This file among others only needs ResourceHandleTypes.h,
1289 not ResourceHandle.h. This header is semi-recent, so not all include sites were updated.
1291 * loader/cache/CachedFont.h:
1292 * loader/cache/CachedFontClient.h: Added.
1293 * loader/cache/CachedRawResource.h:
1294 * loader/cache/CachedRawResourceClient.h: Added.
1295 * loader/cache/CachedSVGDocument.h:
1296 * loader/cache/CachedSVGDocumentClient.h: Added.
1297 These types were defining client types in the same headers, making it impossible
1298 to avoid including networking headers through CachedResource. Moved clients into
1301 * plugins/PluginStream.h:
1302 * plugins/PluginStreamClient.h: Added.
1303 Similar situation here.
1305 * loader/cache/CachedResourceHandle.cpp:
1306 * loader/cache/CachedResourceHandle.h:
1307 Moved functions that need to know about CachedResource to .cpp file. This is another
1308 huge win. Added a destructor, so that CachedResource woudn't be needed in all files
1309 that include CachedResourceHandle.
1311 * loader/cache/CachedSVGDocumentReference.cpp: Added.
1312 * loader/cache/CachedSVGDocumentReference.h:
1313 Moved constructor and virtual function implementations to a .cpp file - they need
1314 not inlining, and this lets us avoid including CachedSVGDocument.h in the header.
1316 * platform/graphics/filters/FilterOperation.cpp:
1317 * platform/graphics/filters/FilterOperation.h:
1318 Avoid including CachedSVGDocumentReference.h. This is not such a big win now that
1319 CachedSVGDocumentReference.h itself is smaller, but FilterOperation is so clearly
1320 rendering code that it seems best to cut any ties with resources and loading.
1321 Added a virtual destrutor in .cpp file, because inline destructors in polymorphic
1322 classes are generally harmful (due to code bloat).
1324 * plugins/PluginRequest.h: Added.
1325 * plugins/PluginView.h:
1326 Moved PluginRequest into a separate file, it was out of place in a view hierarchy
1329 * rendering/RenderImageResource.cpp:
1330 * rendering/RenderImageResource.h:
1331 Moved definitions of virtual functions to a .cpp file. Thre is no win from having
1332 them inline, and now we don't need CachedImage.h in the header.
1334 * rendering/style/StyleCustomFilterProgram.cpp: Added.
1335 * rendering/style/StyleCustomFilterProgram.h:
1339 * GNUmakefile.list.am:
1340 * Modules/mediastream/RTCPeerConnection.cpp:
1341 * Modules/notifications/Notification.cpp:
1345 * WebCore.vcproj/WebCore.vcproj:
1346 * WebCore.vcxproj/WebCore.vcxproj:
1347 * WebCore.vcxproj/WebCore.vcxproj.filters:
1348 * WebCore.xcodeproj/project.pbxproj:
1349 * bindings/ScriptControllerBase.cpp:
1350 * bindings/js/JSNodeCustom.cpp:
1351 * bindings/js/ScriptController.cpp:
1352 * bindings/js/ScriptSourceCode.h:
1353 * bindings/objc/DOM.mm:
1354 * bindings/v8/ScriptController.cpp:
1355 * bindings/v8/V8DOMWindowShell.cpp:
1356 * bindings/v8/custom/V8DOMWindowCustom.cpp:
1357 * css/CSSFontFaceSource.h:
1358 * css/CSSFontSelector.cpp:
1359 * css/WebKitCSSSVGDocumentValue.cpp:
1360 * css/WebKitCSSSVGDocumentValue.h:
1361 * dom/Clipboard.cpp:
1362 * dom/ContainerNode.cpp:
1363 * dom/DOMImplementation.cpp:
1364 * dom/PendingScript.h:
1365 * dom/ScriptElement.cpp:
1366 * dom/ScriptElement.h:
1367 * history/CachedFrame.cpp:
1369 * html/HTMLAnchorElement.cpp:
1370 * html/HTMLAppletElement.cpp:
1371 * html/HTMLElement.cpp:
1372 * html/HTMLEmbedElement.cpp:
1373 * html/HTMLFrameSetElement.cpp:
1374 * html/HTMLHtmlElement.cpp:
1375 * html/HTMLImageElement.cpp:
1376 * html/HTMLObjectElement.cpp:
1377 * html/HTMLPlugInElement.cpp:
1378 * html/ImageDocument.cpp:
1379 * html/ImageInputType.cpp:
1380 * html/MediaDocument.cpp:
1381 * html/PluginDocument.cpp:
1382 * html/canvas/WebGLRenderingContext.cpp:
1383 * html/parser/HTMLConstructionSite.cpp:
1384 * html/parser/HTMLParserOptions.cpp:
1385 * html/parser/HTMLScriptRunner.h:
1386 * html/parser/XSSAuditor.cpp:
1387 * html/parser/XSSAuditorDelegate.cpp:
1388 * inspector/InspectorDebuggerAgent.cpp:
1389 * inspector/InspectorFileSystemAgent.cpp:
1390 * inspector/InspectorFrontendHost.cpp:
1391 * inspector/InspectorInstrumentation.h:
1392 * inspector/InspectorPageAgent.cpp:
1393 * inspector/NetworkResourcesData.cpp:
1394 * inspector/NetworkResourcesData.h:
1395 * loader/CookieJar.cpp:
1396 * loader/CrossOriginAccessControl.cpp:
1397 * loader/CrossOriginPreflightResultCache.h:
1398 * loader/DocumentThreadableLoader.h:
1399 * loader/ImageLoader.cpp:
1400 * loader/ImageLoader.h:
1401 * loader/LinkLoader.h:
1402 * loader/MainResourceLoader.cpp:
1403 * loader/MainResourceLoader.h:
1404 * loader/MixedContentChecker.cpp:
1405 * loader/PingLoader.cpp:
1406 * loader/PolicyChecker.h:
1407 * loader/ProgressTracker.cpp:
1408 * loader/SubframeLoader.cpp:
1409 * loader/SubresourceLoader.cpp:
1410 * loader/TextTrackLoader.cpp:
1411 * loader/TextTrackLoader.h:
1412 * loader/ThreadableLoader.h:
1413 * loader/appcache/ApplicationCacheGroup.cpp:
1414 * loader/appcache/ApplicationCacheGroup.h:
1415 * loader/appcache/ApplicationCacheHost.cpp:
1416 * loader/archive/cf/LegacyWebArchive.cpp:
1417 * loader/cache/CachedFont.cpp:
1418 * loader/cache/CachedImage.cpp:
1419 * loader/cache/CachedRawResource.cpp:
1420 * loader/cache/CachedResource.cpp:
1421 * loader/cache/CachedStyleSheetClient.h:
1422 * loader/cache/MemoryCache.cpp:
1423 * loader/cache/MemoryCache.h:
1424 * loader/chromium/CachedRawResourceChromium.cpp:
1425 * loader/icon/IconController.cpp:
1426 * loader/icon/IconLoader.h:
1427 * loader/mac/ResourceLoaderMac.mm:
1428 * page/DOMWindowExtension.cpp:
1429 * page/DragController.cpp:
1430 * page/PerformanceNavigation.cpp:
1431 * page/PerformanceTiming.cpp:
1432 * page/PointerLockController.cpp:
1433 * page/Settings.cpp:
1434 * page/animation/CSSPropertyAnimation.cpp:
1435 * platform/chromium/PasteboardChromium.cpp:
1436 * platform/efl/ErrorsEfl.cpp:
1437 * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
1438 * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
1439 * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
1440 * platform/gtk/ErrorsGtk.cpp:
1441 * platform/gtk/PasteboardGtk.cpp:
1442 * platform/gtk/PasteboardHelper.h:
1443 * platform/mac/ClipboardMac.h:
1444 * platform/mac/ClipboardMac.mm:
1445 * platform/mac/HTMLConverter.mm:
1446 * platform/mac/PasteboardMac.mm:
1447 * platform/network/AuthenticationChallengeBase.cpp:
1448 * platform/network/cf/CookieJarCFNet.cpp:
1449 * platform/network/cf/ResourceRequestCFNet.cpp:
1450 * platform/network/mac/CookieStorageMac.mm:
1451 * platform/qt/PasteboardQt.cpp:
1452 * plugins/DOMMimeType.cpp:
1453 * plugins/PluginView.cpp:
1454 * rendering/HitTestResult.cpp:
1455 * rendering/InlineFlowBox.cpp:
1456 * rendering/RenderBox.cpp:
1457 * rendering/RenderEmbeddedObject.cpp:
1458 * rendering/RenderImage.cpp:
1459 * rendering/RenderImageResourceStyleImage.cpp:
1460 * rendering/RenderLayer.cpp:
1461 * rendering/RenderLayerBacking.cpp:
1462 * rendering/RenderLayerFilterInfo.h:
1463 * rendering/RenderListItem.cpp:
1464 * rendering/RenderListMarker.cpp:
1465 * rendering/RenderSnapshottedPlugIn.cpp:
1466 * rendering/RenderTableCol.cpp:
1467 * rendering/RenderTableRow.cpp:
1468 * rendering/RenderTableSection.cpp:
1469 * rendering/style/StyleCachedShader.h:
1470 * svg/SVGFEImageElement.h:
1471 * svg/SVGFontFaceUriElement.h:
1472 * svg/SVGImageLoader.cpp:
1473 * svg/SVGUseElement.cpp:
1474 * svg/SVGUseElement.h:
1475 * svg/graphics/SVGImageCache.cpp:
1476 * testing/MockPagePopupDriver.cpp:
1477 * xml/XSLStyleSheet.h:
1478 * xml/XSLTProcessorLibxslt.cpp:
1479 * xml/parser/XMLDocumentParser.cpp:
1480 * xml/parser/XMLDocumentParser.h:
1481 * xml/parser/XMLDocumentParserLibxml2.cpp:
1482 Many self-evident changes - removing unnecessary header includes, adding smaller
1483 more local ones that are now necessary.
1485 2013-03-01 David Hyatt <hyatt@apple.com>
1487 [New Multicolumn] Transformed objects inside fragmented transparent objects don't render
1488 https://bugs.webkit.org/show_bug.cgi?id=111221.
1490 Reviewed by Simon Fraser.
1492 Improve transparencyClipBox so that it understands when moving into descendants
1493 that it does in fact have to break up the transformed clip rect across the
1496 Make sure when handling fragmented transforms using multiple paints that
1497 the test that determines the extent of the transform within the fragments
1498 uses transparencyClipBox. This gives us an accurate set of columns that the
1499 final transformed result will paint across.
1501 Tests: fast/multicol/mixed-opacity-fixed-test.html
1502 fast/multicol/mixed-opacity-test.html
1503 fast/multicol/transform-inside-opacity.html
1505 * rendering/RenderLayer.cpp:
1506 (WebCore::transparencyClipBox):
1507 (WebCore::expandClipRectForDescendantsAndReflection):
1508 Break transformed boxes up into fragments when they are
1509 being requested by an ancestor.
1511 (WebCore::RenderLayer::collectFragments):
1512 (WebCore::RenderLayer::paintTransformedLayerIntoFragments):
1513 (WebCore::RenderLayer::hitTestTransformedLayerInFragments):
1514 * rendering/RenderLayer.h:
1516 Modify collectFragments so that we pass in the correct range
1517 within the columns that can possibly cover the fragmented
1520 2013-03-01 Ilya Tikhonovsky <loislo@chromium.org>
1522 Web Inspector: Native Memory Instrumentation: do not visit raw pointers by default.
1523 https://bugs.webkit.org/show_bug.cgi?id=110943
1525 Reviewed by Yury Semikhatsky.
1527 Unfortunately in many cases raw pointer may point to an object that has been deleted.
1528 There is no working solution to solve this problem in general.
1529 It could be solved only on case by case basis.
1531 * inspector/HeapGraphSerializer.cpp:
1532 (WebCore::HeapGraphSerializer::HeapGraphSerializer):
1533 (WebCore::HeapGraphSerializer::reportLeaf):
1534 * loader/cache/MemoryCache.cpp:
1535 (WebCore::MemoryCache::reportMemoryUsage):
1536 * platform/graphics/BitmapImage.cpp:
1537 (WebCore::FrameData::reportMemoryUsage):
1538 * platform/graphics/skia/MemoryInstrumentationSkia.cpp:
1539 (reportMemoryUsage):
1541 2013-03-01 Kentaro Hara <haraken@chromium.org>
1543 Style recalculation takes too long when adding whitespace text nodes
1544 https://bugs.webkit.org/show_bug.cgi?id=110786
1546 Reviewed by Darin Adler.
1548 // This takes 216 msec.
1549 for (var i = 0; i < 1500; ++i) {
1550 document.body.appendChild(document.createTextNode('x'));
1551 document.body.appendChild(document.createElement('div'));
1552 document.body.appendChild(document.createTextNode('x'));
1555 // But this takes 25.3 seconds.
1556 for (var i = 0; i < 1500; ++i) {
1557 document.body.appendChild(document.createTextNode(' '));
1558 document.body.appendChild(document.createElement('div'));
1559 document.body.appendChild(document.createTextNode(' '));
1562 The reason is that we do not create renderers for empty text
1563 nodes and thus we are hitting the worst O(N^2) case in Node::attach().
1564 (See FIXME in Node::attach().)
1566 This patch adds a logic to bail out the loop to avoid the O(N^2) case.
1567 Specifically, the patch bails out the loop if we encounter a text node
1568 for which we again decided not to create a renderer. This bail out is
1569 reasonable because the fact that we again decided not to create a renderer
1570 for the text node indicates that there will be no affect of the result
1571 of Text::textRendererIsNeeded() of the rest of the sibling nodes.
1573 Performance test: https://bugs.webkit.org/attachment.cgi?id=190545
1574 Performance result in Chromium/Linux: 25.3 sec => 48 msec !
1576 Test: perf/append-text-nodes-without-renderers.html (for performance)
1577 fast/dynamic/create-renderer-for-whitespace-only-text.html (for correctness)
1579 The loop was introduced in r29054. We have to make sure that
1580 all layout tests that were updated in r29054 pass with this patch.
1581 See http://trac.webkit.org/changeset/29054.
1584 (WebCore::Node::attach):
1586 2013-03-01 Jason Anderssen <janderssen@gmail.com>
1588 Moved markerTextForListItem from TestRunner to Internals
1589 https://bugs.webkit.org/show_bug.cgi?id=110939
1591 Reviewed by Benjamin Poulain.
1593 TestRunner framework is an old way of testing webkit, it would be
1594 better to incorporate the testing frame directly into the WebCore itself
1595 as to make it more compatible with WK2.
1597 * testing/Internals.cpp:
1598 (WebCore::Internals::markerTextForListItem):
1600 * testing/Internals.h:
1601 * testing/Internals.idl:
1603 2013-03-01 Elliott Sprehn <esprehn@gmail.com>
1605 Don't leak Documents when using MutationObserver from extensions
1606 https://bugs.webkit.org/show_bug.cgi?id=111234
1608 Reviewed by Adam Barth.
1610 MutationObserverCallback holds a WorldContextHandle which secretly isn't
1611 a handle to anything when it's for the main world. When it's for a non-main
1612 world though, like those used in extensions, it becomes a strong reference
1613 to the v8::Context which results in leaks by creating cycles:
1615 MutationObserver -> Callback -> World -> Document -> Node -> MutationObserver.
1617 Instead we should keep a RefPtr to a DOMWrapperWorld in the callback and then
1618 get the v8::Context from that inside handleEvent.
1620 Tests: ManualTests/leak-observer-nonmain-world.html
1622 * bindings/v8/V8Binding.cpp:
1623 (WebCore::toV8Context): Added overload that takes a DOMWrapperWorld.
1624 * bindings/v8/V8Binding.h:
1625 * bindings/v8/V8MutationCallback.cpp:
1626 (WebCore::V8MutationCallback::V8MutationCallback):
1627 (WebCore::V8MutationCallback::handleEvent):
1628 * bindings/v8/V8MutationCallback.h:
1629 (V8MutationCallback):
1631 2013-03-01 Bear Travis <betravis@adobe.com>
1633 [css exclusions] Move ExclusionShapeInsideInfo into RenderBlockRareData
1634 https://bugs.webkit.org/show_bug.cgi?id=110995
1636 Reviewed by Julien Chaffraix.
1638 This patch moves ExclusionShapeInsideInfo into the RenderBlockRareData struct,
1639 which enables us to move away from the global ExclusionShapeInsideInfo map.
1640 Some additional refactoring was done to remove ExclusionShapeInsideInfo's
1641 dependency on InlineIterator, which depended on RenderBlock. This work required
1642 adding a new LineSegmentIterator struct.
1644 Refactoring, no new tests.
1646 * rendering/ExclusionShapeInsideInfo.cpp:
1648 (WebCore::LineSegmentRange::LineSegmentRange): Moving the InlineIterator
1649 constructor to the .cpp file, as InlineIterator is now forward declared in
1651 (WebCore::ExclusionShapeInsideInfo::isEnabledFor): Moving isEnabledFor to
1652 the .cpp file, as RenderBlock is now forward declared in the .h file.
1653 * rendering/ExclusionShapeInsideInfo.h:
1655 (LineSegmentIterator): A simple struct for containing segment positions for
1657 (WebCore::LineSegmentIterator::LineSegmentIterator): Constructor.
1658 (LineSegmentRange): Transitioning to store LineSegmentIterator.
1659 (WebCore::LineSegmentRange::LineSegmentRange): Ditto.
1660 (ExclusionShapeInsideInfo):
1661 * rendering/RenderBlock.cpp:
1662 (WebCore::RenderBlock::willBeDestroyed): Destroying a block will now destroy
1663 its ExclusionShapeInsideInfo, so there is no need to remove it from the map.
1665 (WebCore::RenderBlock::updateExclusionShapeInsideInfoAfterStyleChange): Use
1666 the RenderBlockRareData struct rather than the global map.
1667 * rendering/RenderBlock.h:
1669 (WebCore::RenderBlock::ensureExclusionShapeInsideInfo): Ensure an info struct
1670 is present if the shape-inside style is set.
1671 (WebCore::RenderBlock::exclusionShapeInsideInfo): Look up the info struct for
1673 (WebCore::RenderBlock::setExclusionShapeInsideInfo): Update the info struct
1674 for the current block.
1675 (RenderBlockRareData): Add the ExclusionShapeInsideInfo member.
1676 * rendering/RenderBlockLineLayout.cpp:
1677 (WebCore::constructBidiRunsForLine): Construct the appropriate offsets during
1678 layout based on the stored LineSegmentIterators.
1680 2013-03-01 Terry Anderson <tdanderson@chromium.org>
1682 EventHandler::handleGestureScrollUpdate() should invoke the user-generated scroll routines
1683 so its behavior matches other user-initiated scrolls
1684 https://bugs.webkit.org/show_bug.cgi?id=109769
1686 Reviewed by James Robinson.
1688 To ensure that the scrolling behavior of GestureScrollUpdate events are consistent with
1689 the scrolling behavior of mousewheel events, use the existing user-generated scroll logic
1690 instead of calling into RenderLayer::scrollByRecursively(). This patch fixes the bug
1691 reported in https://bugs.webkit.org/show_bug.cgi?id=109316, where the example page can
1692 be scrolled using touch but cannot be scrolled using mousewheels.
1694 Note that this patch does not use any of the mousewheel event-handling code.
1696 Tests: fast/events/touch/gesture/touch-gesture-noscroll-body-propagated.html
1697 fast/events/touch/gesture/touch-gesture-noscroll-body-xhidden.html
1698 fast/events/touch/gesture/touch-gesture-noscroll-body-yhidden.html
1699 fast/events/touch/gesture/touch-gesture-noscroll-body.html
1701 * page/EventHandler.cpp:
1702 (WebCore::EventHandler::clear):
1703 (WebCore::EventHandler::handleGestureEvent):
1704 (WebCore::EventHandler::handleGestureScrollBegin):
1705 (WebCore::EventHandler::handleGestureScrollUpdate):
1706 (WebCore::EventHandler::sendScrollEventToView):
1707 By calling this function at the start of handleGestureScrollUpdate() in the case
1708 where |m_scrollGestureHandlingNode| is null, we ensure that the scroll updates
1709 can still scroll the page itself, if possible.
1711 (WebCore::EventHandler::clearGestureScrollNodes):
1712 * page/EventHandler.h:
1714 * platform/PlatformWheelEvent.h:
1715 (WebCore::PlatformWheelEvent::setHasPreciseScrollingDeltas):
1717 2013-03-01 Alec Flett <alecflett@chromium.org>
1719 IndexedDB: Avoid ScriptValue copies in IDBAny
1720 https://bugs.webkit.org/show_bug.cgi?id=111002
1722 Reviewed by Adam Barth.
1724 This avoids some v8 handle thrashing in the long term,
1725 and protects us against some crashes in the short term.
1727 The crashes will be fixed in
1728 https://bugs.webkit.org/show_bug.cgi?id=110206.
1730 * Modules/indexeddb/IDBAny.cpp:
1731 (WebCore::IDBAny::createNull):
1732 (WebCore::IDBAny::createString):
1733 (WebCore::IDBAny::IDBAny):
1734 (WebCore::IDBAny::scriptValue):
1735 * Modules/indexeddb/IDBAny.h:
1736 (WebCore::IDBAny::create):
1738 (WebCore::IDBAny::keyPath):
1739 * bindings/v8/custom/V8IDBAnyCustom.cpp:
1743 2013-03-01 Victor Carbune <vcarbune@chromium.org>
1745 Support padding, margin and border for internal UA cue styling
1746 https://bugs.webkit.org/show_bug.cgi?id=110703
1748 Reviewed by Eric Carlson.
1750 For some particular user agent styling this allows the possibility
1751 of making the window around the cue text bigger to match some user
1752 styles (see CaptionUserPreferencesMac::captionsStyleSheetOverride).
1754 These properties *cannot* be set through by using the ::cue
1755 pseudo-element and, as specified, are used only internally.
1757 Note: This patch is identical to the previously commited one,
1758 as it was rolled back without related tests failing.
1760 Test: media/track/track-cue-rendering-with-padding.html
1762 * css/mediaControls.css:
1763 (video::-webkit-media-text-track-display): Set the CSS box model
1764 to include in the specified width or height the values of
1765 padding / margin / border by using -webkit-box-sizing and avoid
1766 overflow over 100% width because of having these properties set.
1767 * rendering/RenderTextTrackCue.cpp:
1768 (WebCore::RenderTextTrackCue::isOutside): To not interfere with
1769 the regular WebVTT positioning algorithm, the check is done for
1770 the absolute content box.
1771 (WebCore::RenderTextTrackCue::repositionCueSnapToLinesSet): Added
1772 an extra adjustment step to accomodate vertical padding (and not
1773 overflow the cue container)
1775 2013-03-01 Andy Estes <aestes@apple.com>
1777 REGRESSION (r125809): CFStrings created via StringImpl::createCFString() might reference freed memory when Objective-C garbage collection is enabled
1778 https://bugs.webkit.org/show_bug.cgi?id=111219
1780 Reviewed by Benjamin Poulain.
1782 StringImpl::createCFString() uses CFStringCreateWithBytesNoCopy() in
1783 order to create CFString without making an unnecessary copy. In order
1784 to ensure that the the StringImpl's backing buffer isn't deallocated
1785 while the CFString is still alive, we use a custom CFAllocator to
1786 ref/deref the StringImpl at the appropriate times.
1788 However, custom allocators aren't supported when Objective-C garbage
1789 collection is enabled, so in this case we use the default CF allocator.
1790 Since we can't guarantee the lifetime of the StringImpl in this case,
1791 we should just fall back to copying the string, as we did prior to r125809.
1793 * platform/text/cf/StringImplCF.cpp:
1794 (garbageCollectionEnabled): Moved the check for whether garbage
1795 collection is enabled from StringWrapperCFAllocator::create() to here.
1796 (WTF::StringWrapperCFAllocator::create): Call garbageCollectionEnabled().
1797 (WTF::StringImpl::createCFString): If garbage collection is enabled,
1798 call the variants of CFStringCreate that copy the string.
1800 2013-03-01 Roger Fong <roger_fong@apple.com>
1802 Unreviewed AppleWin build fix.
1804 * platform/network/cf/ResourceHandleCFNet.cpp:
1805 (WebCore::ResourceHandle::createCFURLConnection):
1807 2013-03-01 Martin Robinson <mrobinson@igalia.com>
1809 [GTK] Allow sharing the WebCore include list with the Chromium build
1810 https://bugs.webkit.org/show_bug.cgi?id=110241
1812 Reviewed by Dirk Pranke.
1814 * WebCore.gyp/WebCoreGTK.gyp: Added. A skeleton gyp file for WebCoreGTK+.
1815 * WebCore.gypi: Added shared include directories.
1817 2013-03-01 Alexey Proskuryakov <ap@apple.com>
1819 Make in-memory blobs work in NetworkProcess
1820 https://bugs.webkit.org/show_bug.cgi?id=111132
1822 Reviewed by Sam Weinig.
1825 * WebCore.xcodeproj/project.pbxproj:
1826 Exported functions now needed by WebKit2, and made some headers Private instead
1829 2013-03-01 Eric Seidel <eric@webkit.org>
1831 Threaded HTML Parser has an extra copy of every byte from the network
1832 https://bugs.webkit.org/show_bug.cgi?id=111135
1834 Reviewed by Adam Barth.
1836 Every LayoutTest executes this code in threaded parsing mode.
1838 * dom/DecodedDataDocumentParser.cpp:
1839 (WebCore::DecodedDataDocumentParser::appendBytes):
1840 - Pass ownership of the decoded string to the parser.
1841 (WebCore::DecodedDataDocumentParser::flush):
1843 * dom/DecodedDataDocumentParser.h:
1844 (DecodedDataDocumentParser):
1846 (WebCore::Document::setContent):
1847 * dom/DocumentParser.h:
1849 * dom/RawDataDocumentParser.h:
1850 (WebCore::RawDataDocumentParser::append):
1851 * html/FTPDirectoryDocument.cpp:
1852 (FTPDirectoryDocumentParser):
1853 (WebCore::FTPDirectoryDocumentParser::append):
1854 * html/parser/HTMLDocumentParser.cpp:
1855 (WebCore::HTMLDocumentParser::append):
1856 * html/parser/HTMLDocumentParser.h:
1857 (HTMLDocumentParser):
1858 * html/parser/HTMLViewSourceParser.cpp:
1859 (WebCore::HTMLViewSourceParser::append):
1860 * html/parser/HTMLViewSourceParser.h:
1861 (HTMLViewSourceParser):
1862 * html/parser/TextDocumentParser.cpp:
1863 (WebCore::TextDocumentParser::append):
1864 * html/parser/TextDocumentParser.h:
1865 (TextDocumentParser):
1866 * loader/DocumentWriter.cpp:
1867 (WebCore::DocumentWriter::replaceDocument):
1868 * xml/parser/XMLDocumentParser.cpp:
1869 (WebCore::XMLDocumentParser::append):
1870 * xml/parser/XMLDocumentParser.h:
1871 (XMLDocumentParser):
1872 * xml/parser/XMLDocumentParserLibxml2.cpp:
1873 (WebCore::XMLDocumentParser::resumeParsing):
1875 2013-03-01 David Hyatt <hyatt@apple.com>
1877 [New Multicolumn] Change inRenderFlowThread to follow containing block chain
1878 https://bugs.webkit.org/show_bug.cgi?id=111206
1880 Reviewed by Simon Fraser.
1882 This patch removes inRenderFlowThread and changes enclosingRenderFlowThread()
1883 to flowThreadContainingBlock(). flowThreadContainingBlock() now follows
1884 the containing block chain instead of the parent chain when outside of layout.
1885 (It already did the right thing when called during layout.)
1887 By removing inRenderFlowThread (which was following the parent chain), all
1888 code that is checking for flow thread containment now correctly uses the
1889 containing block chain. This allows for content to escape in-flow flow threads
1890 and do the right thing without asserting.
1892 Test: fast/multicol/positioned-outside-of-columns.html
1894 * dom/WebKitNamedFlow.cpp:
1895 (WebCore::inFlowThread):
1896 (WebCore::WebKitNamedFlow::getRegionsByContent):
1897 * rendering/RenderBlock.cpp:
1898 (WebCore::RenderBlock::removeLeftoverAnonymousBlock):
1899 (WebCore::RenderBlock::collapseAnonymousBoxChild):
1900 (WebCore::RenderBlock::updateRegionsAndExclusionsLogicalSize):
1901 (WebCore::RenderBlock::computeRegionRangeForBlock):
1902 (WebCore::RenderBlock::layoutBlock):
1903 (WebCore::RenderBlock::computeOverflow):
1904 (WebCore::RenderBlock::determineLogicalLeftPositionForChild):
1905 (WebCore::RenderBlock::computeLogicalLocationForFloat):
1906 (WebCore::RenderBlock::logicalLeftOffsetForContent):
1907 (WebCore::RenderBlock::logicalRightOffsetForContent):
1908 (WebCore::RenderBlock::hasNextPage):
1909 (WebCore::RenderBlock::applyBeforeBreak):
1910 (WebCore::RenderBlock::applyAfterBreak):
1911 (WebCore::RenderBlock::pageLogicalTopForOffset):
1912 (WebCore::RenderBlock::pageLogicalHeightForOffset):
1913 (WebCore::RenderBlock::pageRemainingLogicalHeightForOffset):
1914 (WebCore::RenderBlock::adjustForUnsplittableChild):
1915 (WebCore::RenderBlock::adjustLinePositionForPagination):
1916 (WebCore::RenderBlock::lineWidthForPaginatedLineChanged):
1917 (WebCore::RenderBlock::offsetFromLogicalTopOfFirstPage):
1918 (WebCore::RenderBlock::regionAtBlockOffset):
1919 (WebCore::RenderBlock::setStaticInlinePositionForChild):
1920 (WebCore::RenderBlock::logicalWidthChangedInRegions):
1921 (WebCore::RenderBlock::clampToStartAndEndRegions):
1922 * rendering/RenderBlock.h:
1924 * rendering/RenderBlockLineLayout.cpp:
1925 (WebCore::layoutExclusionShapeInsideInfo):
1926 (WebCore::LineLayoutState::LineLayoutState):
1927 (WebCore::LineLayoutState::flowThread):
1928 (WebCore::LineLayoutState::setFlowThread):
1930 (WebCore::RenderBlock::layoutRunsAndFloatsInRange):
1931 (WebCore::RenderBlock::linkToEndLineIfNeeded):
1932 (WebCore::RenderBlock::layoutInlineChildren):
1933 (WebCore::RenderBlock::determineStartPosition):
1934 (WebCore::RenderBlock::checkPaginationAndFloatsAtEndLine):
1935 * rendering/RenderBox.cpp:
1936 (WebCore::RenderBox::clearRenderBoxRegionInfo):
1937 (WebCore::RenderBox::renderBoxRegionInfo):
1938 (WebCore::RenderBox::containingBlockLogicalWidthForPositioned):
1939 (WebCore::RenderBox::containingBlockLogicalHeightForPositioned):
1940 (WebCore::RenderBox::computePositionedLogicalWidth):
1941 (WebCore::RenderBox::computePositionedLogicalHeight):
1942 * rendering/RenderDeprecatedFlexibleBox.cpp:
1943 (WebCore::RenderDeprecatedFlexibleBox::layoutBlock):
1944 * rendering/RenderFlexibleBox.cpp:
1945 (WebCore::RenderFlexibleBox::layoutBlock):
1946 * rendering/RenderFlowThread.cpp:
1947 (WebCore::RenderFlowThread::objectInFlowRegion):
1948 * rendering/RenderGrid.cpp:
1949 (WebCore::RenderGrid::layoutBlock):
1950 * rendering/RenderInline.cpp:
1951 (WebCore::RenderInline::updateAlwaysCreateLineBoxes):
1952 * rendering/RenderLayer.cpp:
1953 (WebCore::accumulateOffsetTowardsAncestor):
1954 * rendering/RenderLayerCompositor.cpp:
1955 (WebCore::RenderLayerCompositor::canBeComposited):
1956 * rendering/RenderMedia.cpp:
1957 (WebCore::RenderMedia::layout):
1958 * rendering/RenderObject.cpp:
1959 (WebCore::RenderObject::locateFlowThreadContainingBlock):
1960 (WebCore::RenderObject::containerForRepaint):
1961 (WebCore::RenderObject::willBeRemovedFromTree):
1962 (WebCore::RenderObject::removeFromRenderFlowThread):
1963 (WebCore::RenderObject::removeFromRenderFlowThreadRecursive):
1964 * rendering/RenderObject.h:
1966 (WebCore::RenderObject::flowThreadContainingBlock):
1967 * rendering/RenderRegion.cpp:
1968 (WebCore::RenderRegion::setObjectStyleInRegion):
1969 * rendering/RenderView.cpp:
1970 (WebCore::RenderView::addChild):
1971 (WebCore::RenderView::initializeLayoutState):
1972 (WebCore::RenderView::setSelection):
1973 * rendering/RenderView.h:
1974 (WebCore::RenderView::pushLayoutState):
1975 * rendering/RootInlineBox.cpp:
1976 (WebCore::RootInlineBox::containingRegion):
1977 (WebCore::RootInlineBox::setContainingRegion):
1979 2013-02-28 Sam Weinig <sam@webkit.org>
1981 Add SPI for marking a WebView as doing things on behalf of another process
1982 https://bugs.webkit.org/show_bug.cgi?id=111125
1984 Reviewed by Alexey Proskuryakov.
1986 * platform/network/NetworkingContext.h:
1987 (NetworkingContext):
1988 * platform/network/cf/ResourceHandleCFNet.cpp:
1989 (WebCore::ResourceHandle::createCFURLConnection):
1990 * platform/network/mac/ResourceHandleMac.mm:
1991 (WebCore::ResourceHandle::createNSURLConnection):
1992 Set the sourceApplicationAuditData on the URL connection if available.
1994 2013-03-01 Brent Fulgham <bfulgham@webkit.org>
1996 [Windows] Unreviewed VS2010 build fix.
1998 * WebCore.vcxproj/WebCore.vcxproj: Add missing TimelineTraceEventProcessor
1999 files to the project.
2000 * WebCore.vcxproj/WebCore.vcxproj.filters: Ditto.
2002 2013-03-01 Bear Travis <betravis@adobe.com>
2004 [css exclusions] setting shape-inside on a parent does not relayout child blocks' inline content
2005 https://bugs.webkit.org/show_bug.cgi?id=108128
2007 Reviewed by David Hyatt.
2009 Ensure that blocks lay out when their parent's shape-inside changes.
2010 ExclusionShapeInsideInfo now stores an additional flag indicating whether
2011 the shape has changed and its block's children require layout. Each block
2012 can look up the flag via LayoutState to determine whether it needs to lay
2015 Test: fast/exclusions/shape-inside/shape-inside-dynamic-nested.html
2017 * rendering/ExclusionShapeInfo.h:
2018 (WebCore::ExclusionShapeInfo::shapeSizeDirty): Add a method to determine
2019 if the shape has changed.
2020 (ExclusionShapeInfo):
2021 * rendering/ExclusionShapeInsideInfo.h:
2022 (WebCore::ExclusionShapeInsideInfo::setNeedsLayout): Set the flag indicating
2023 layout is necessary.
2024 (WebCore::ExclusionShapeInsideInfo::needsLayout): Retrieve the layout flag.
2025 (ExclusionShapeInsideInfo):
2026 (WebCore::ExclusionShapeInsideInfo::ExclusionShapeInsideInfo): Initialize
2028 * rendering/RenderBlock.cpp:
2029 (WebCore::exclusionInfoRequiresRelayout): Return true if the shape info should
2030 cause a relayout. Also update the needsLayout flag on the ExclusionShapeInsideInfo.
2032 (WebCore::RenderBlock::updateRegionsAndExclusionsLogicalSize): Return a boolean
2033 indicating whether regions or exclusions updates should cause a relayout.
2034 (WebCore::RenderBlock::layoutBlock): Relayout children if the shape inside has
2036 * rendering/RenderBlock.h:
2038 * rendering/RenderBlockLineLayout.cpp:
2039 (WebCore::RenderBlock::layoutExclusionShapeInsideInfo): Changing to be a
2041 (WebCore::LineWidth::LineWidth): Changing to use class method.
2042 (WebCore::RenderBlock::computeInlineDirectionPositionsForLine): Ditto.
2043 (WebCore::constructBidiRunsForLine): Ditto.
2044 (WebCore::RenderBlock::layoutRunsAndFloatsInRange): Ditto.
2045 (WebCore::RenderBlock::LineBreaker::nextLineBreak): Ditto.
2047 2013-03-01 Uday Kiran <udaykiran@motorola.com>
2049 getComputedStyle not implemented for -webkit-column-rule shorthand
2050 https://bugs.webkit.org/show_bug.cgi?id=111203
2052 Reviewed by Alexis Menard.
2054 Implement getComputedStyle for -webkit-column-rule property.
2056 Test: fast/css/getComputedStyle/getComputedStyle-column-rule.html
2058 * css/CSSComputedStyleDeclaration.cpp:
2059 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
2061 2013-02-28 David Hyatt <hyatt@apple.com>
2063 REGRESSION(r144318) 1-7% perf. regression on SVG/SvgHitTesting
2064 https://bugs.webkit.org/show_bug.cgi?id=111117
2066 Make sure the allocated vector has a capacity of 1, since that is
2067 far and away the most common case.
2069 Reviewed by Andreas Kling.
2071 * rendering/RenderFlowThread.h:
2073 * rendering/RenderLayer.h:
2075 * rendering/RenderMultiColumnSet.cpp:
2076 (WebCore::RenderMultiColumnSet::collectLayerFragments):
2077 * rendering/RenderMultiColumnSet.h:
2078 * rendering/RenderRegion.h:
2080 (WebCore::RenderRegion::collectLayerFragments):
2082 2013-03-01 Enrica Casucci <enrica@apple.com>
2084 Crash at WebCore::SharedBuffer::hasPlatformData writing an image to the pasteboard.
2085 https://bugs.webkit.org/show_bug.cgi?id=111211.
2086 <rdar://problem/8772758>
2088 Reviewed by Ryosuke Niwa.
2090 This is a speculative fix since we don't have a solid repro case.
2091 Adding null check every time we build a SharedBuffer from an NSData
2092 we have obtained manipulating data from the pasteboard.
2094 * platform/mac/PasteboardMac.mm:
2095 (WebCore::writeFileWrapperAsRTFDAttachment):
2096 (WebCore::Pasteboard::writeImage):
2098 2013-03-01 Enrica Casucci <enrica@apple.com>
2100 Crash at WebCore::SharedBuffer::hasPlatformData during paste.
2101 https://bugs.webkit.org/show_bug.cgi?id=111207.
2102 <rdar://problem/13024528>
2104 Reviewed by Ryosuke Niwa.
2106 This is a speculative fix since we don't have a solid repro case.
2107 Adding null check every time we get a SharedBuffer from the pasteboard.
2109 * platform/mac/PasteboardMac.mm:
2110 (WebCore::Pasteboard::plainText):
2111 (WebCore::documentFragmentWithRTF):
2113 2013-03-01 Alexey Proskuryakov <ap@apple.com>
2115 Build fix for builds with BLOB disabled. This fixes it for me on Mac at least.
2117 * platform/network/BlobRegistryImpl.cpp:
2119 2013-03-01 peavo@outlook.com <peavo@outlook.com>
2121 [Curl] Session cookies should not be persistent.
2122 https://bugs.webkit.org/show_bug.cgi?id=111060
2124 Reviewed by Brent Fulgham.
2126 Curl saves both persistent cookies, and session cookies to the cookie file.
2127 The session cookies should be deleted before starting a new session.
2129 * platform/network/curl/ResourceHandleManager.cpp:
2130 (WebCore::ResourceHandleManager::ResourceHandleManager): Call method to initialize cookie session.
2131 (WebCore::ResourceHandleManager::initCookieSession): Added method to initialize cookie session.
2132 * platform/network/curl/ResourceHandleManager.h: Added method to initialize cookie session.
2134 2013-03-01 Vsevolod Vlasov <vsevik@chromium.org>
2136 Web Inspector: Navigator should show tree element for each folder in the source path.
2137 https://bugs.webkit.org/show_bug.cgi?id=108943
2139 Reviewed by Pavel Feldman.
2141 NavigatorView now renders tree element for each folder in uiSourceCode uri.
2142 Merging several folders into one tree elememnt when folder has only one folder as a child is supported.
2143 ScriptsNavigator has horizontal scroll now.
2144 Projects are shown in ScriptsNavigator by their displayName. This allows us to show several root file system folders
2145 with the same name in the navigator (e.g. 'Source/WebCore/inspector' and 'LayoutTests/inspector').
2147 Test: inspector/debugger/navigator-view.html: Renamed from scripts-file-selector.html
2149 * English.lproj/localizedStrings.js:
2150 * inspector/front-end/NavigatorView.js:
2151 (WebInspector.NavigatorView):
2152 (WebInspector.NavigatorView.iconClassForType):
2153 (WebInspector.NavigatorView.prototype.addUISourceCode):
2154 (WebInspector.NavigatorView.prototype._getProjectNode):
2155 (WebInspector.NavigatorView.prototype._createProjectNode):
2156 (WebInspector.NavigatorView.prototype._getOrCreateProjectNode):
2157 (WebInspector.NavigatorView.prototype._getFolderNode):
2158 (WebInspector.NavigatorView.prototype._createFolderNode):
2159 (WebInspector.NavigatorView.prototype._getOrCreateFolderNode):
2160 (WebInspector.NavigatorView.prototype._getUISourceCodeParentNode):
2161 (WebInspector.NavigatorView.prototype._getOrCreateUISourceCodeParentNode):
2162 (WebInspector.NavigatorView.prototype.revealUISourceCode):
2163 (WebInspector.NavigatorView.prototype.removeUISourceCode):
2164 (WebInspector.NavigatorView.prototype.rename):
2165 (WebInspector.NavigatorView.prototype.reset):
2167 (WebInspector.NavigatorTreeOutline._treeElementsCompare):
2168 (WebInspector.BaseNavigatorTreeElement):
2169 (WebInspector.BaseNavigatorTreeElement.prototype.type):
2170 (WebInspector.NavigatorFolderTreeElement):
2171 (WebInspector.NavigatorFolderTreeElement.prototype.onpopulate):
2172 (WebInspector.NavigatorFolderTreeElement.prototype.onattach):
2173 (WebInspector.NavigatorSourceTreeElement):
2174 (WebInspector.NavigatorTreeNode):
2175 (WebInspector.NavigatorTreeNode.prototype.treeElement):
2176 (WebInspector.NavigatorTreeNode.prototype.dispose):
2177 (WebInspector.NavigatorTreeNode.prototype.isRoot):
2178 (WebInspector.NavigatorTreeNode.prototype.hasChildren):
2179 (WebInspector.NavigatorTreeNode.prototype.populate):
2180 (WebInspector.NavigatorTreeNode.prototype.wasPopulated):
2181 (WebInspector.NavigatorTreeNode.prototype.didAddChild):
2182 (WebInspector.NavigatorTreeNode.prototype.willRemoveChild):
2183 (WebInspector.NavigatorTreeNode.prototype.isPopulated):
2184 (WebInspector.NavigatorTreeNode.prototype.isEmpty):
2185 (WebInspector.NavigatorTreeNode.prototype.child):
2186 (WebInspector.NavigatorTreeNode.prototype.children):
2187 (WebInspector.NavigatorTreeNode.prototype.appendChild):
2188 (WebInspector.NavigatorTreeNode.prototype.removeChild):
2189 (WebInspector.NavigatorTreeNode.prototype.reset):
2190 (WebInspector.NavigatorRootTreeNode):
2191 (WebInspector.NavigatorRootTreeNode.prototype.isRoot):
2192 (WebInspector.NavigatorRootTreeNode.prototype.treeElement):
2193 (WebInspector.NavigatorRootTreeNode.prototype.wasPopulated):
2194 (WebInspector.NavigatorRootTreeNode.prototype.didAddChild):
2195 (WebInspector.NavigatorRootTreeNode.prototype.willRemoveChild):
2196 (WebInspector.NavigatorUISourceCodeTreeNode):
2197 (WebInspector.NavigatorUISourceCodeTreeNode.prototype.treeElement):
2198 (WebInspector.NavigatorUISourceCodeTreeNode.prototype.updateTitle):
2199 (WebInspector.NavigatorUISourceCodeTreeNode.prototype.hasChildren):
2200 (WebInspector.NavigatorUISourceCodeTreeNode.prototype.dispose):
2201 (WebInspector.NavigatorUISourceCodeTreeNode.prototype._titleChanged):
2202 (WebInspector.NavigatorUISourceCodeTreeNode.prototype._workingCopyChanged):
2203 (WebInspector.NavigatorUISourceCodeTreeNode.prototype._workingCopyCommitted):
2204 (WebInspector.NavigatorUISourceCodeTreeNode.prototype._formattedChanged):
2205 (WebInspector.NavigatorUISourceCodeTreeNode.prototype.reveal):
2206 (WebInspector.NavigatorUISourceCodeTreeNode.prototype.rename.commitHandler):
2207 (WebInspector.NavigatorUISourceCodeTreeNode.prototype.rename.cancelHandler):
2208 (WebInspector.NavigatorUISourceCodeTreeNode.prototype.rename.afterEditing):
2209 (WebInspector.NavigatorUISourceCodeTreeNode.prototype.rename):
2210 (WebInspector.NavigatorFolderTreeNode):
2211 (WebInspector.NavigatorFolderTreeNode.prototype.treeElement):
2212 (WebInspector.NavigatorFolderTreeNode.prototype._createTreeElement):
2213 (WebInspector.NavigatorFolderTreeNode.prototype.wasPopulated):
2214 (WebInspector.NavigatorFolderTreeNode.prototype._addChildrenRecursive):
2215 (WebInspector.NavigatorFolderTreeNode.prototype._shouldMerge):
2216 (WebInspector.NavigatorFolderTreeNode.prototype.didAddChild):
2217 (WebInspector.NavigatorFolderTreeNode.prototype.willRemoveChild):
2218 * inspector/front-end/ScriptsNavigator.js:
2219 * inspector/front-end/SimpleWorkspaceProvider.js:
2220 (WebInspector.SimpleProjectDelegate.prototype.displayName):
2221 * inspector/front-end/navigatorView.css:
2223 (.navigator .base-navigator-tree-element-title):
2224 (.navigator-tabbed-pane .navigator-container):
2226 2013-03-01 Arvid Nilsson <anilsson@rim.com>
2228 [BlackBerry] Upstream BlackBerry::Platform::Graphics::GraphicsContext integration related changes in platform/graphics/blackberry
2229 https://bugs.webkit.org/show_bug.cgi?id=111072
2231 Reviewed by Rob Buis.
2233 BlackBerry PR 293208
2235 This patch contains contributions from many members of the BlackBerry
2259 Covered by existing tests.
2261 * platform/graphics/blackberry/CanvasLayerWebKitThread.cpp:
2262 (WebCore::CanvasLayerWebKitThread::deleteTextures):
2263 (CanvasLayerCompositingThreadClient):
2264 (WebCore::CanvasLayerCompositingThreadClient::layerCompositingThreadDestroyed):
2265 (WebCore::CanvasLayerCompositingThreadClient::layerVisibilityChanged):
2266 (WebCore::CanvasLayerCompositingThreadClient::uploadTexturesIfNeeded):
2267 (WebCore::CanvasLayerCompositingThreadClient::clearBuffer):
2269 (WebCore::CanvasLayerCompositingThreadClient::CanvasLayerCompositingThreadClient):
2270 (WebCore::CanvasLayerCompositingThreadClient::drawTextures):
2271 (WebCore::CanvasLayerCompositingThreadClient::deleteTextures):
2272 (WebCore::CanvasLayerCompositingThreadClient::commitPendingTextureUploads):
2273 (WebCore::CanvasLayerWebKitThread::CanvasLayerWebKitThread):
2274 (WebCore::CanvasLayerWebKitThread::~CanvasLayerWebKitThread):
2275 (WebCore::CanvasLayerWebKitThread::clearBuffer):
2276 * platform/graphics/blackberry/CanvasLayerWebKitThread.h:
2278 (WebCore::CanvasLayerWebKitThread::create):
2279 (CanvasLayerWebKitThread):
2280 * platform/graphics/blackberry/DisplayRefreshMonitorBlackBerry.cpp:
2281 (WebCore::DisplayRefreshMonitor::displayLinkFired):
2282 * platform/graphics/blackberry/DrawingBufferBlackBerry.cpp:
2283 (WebCore::DrawingBuffer::DrawingBuffer):
2285 (WebCore::DrawingBuffer::publishToPlatformLayer):
2286 (WebCore::DrawingBuffer::platformLayer):
2287 * platform/graphics/blackberry/EGLImageLayerCompositingThreadClient.cpp:
2288 (WebCore::EGLImageLayerCompositingThreadClient::~EGLImageLayerCompositingThreadClient):
2289 (WebCore::EGLImageLayerCompositingThreadClient::uploadTexturesIfNeeded):
2290 (WebCore::EGLImageLayerCompositingThreadClient::drawTextures):
2291 (WebCore::EGLImageLayerCompositingThreadClient::deleteTextures):
2292 (WebCore::EGLImageLayerCompositingThreadClient::bindContentsTexture):
2293 (WebCore::EGLImageLayerCompositingThreadClient::setTextureAccessor):
2294 * platform/graphics/blackberry/EGLImageLayerCompositingThreadClient.h:
2296 (EGLImageLayerCompositingThreadClient):
2297 (WebCore::EGLImageLayerCompositingThreadClient::EGLImageLayerCompositingThreadClient):
2298 * platform/graphics/blackberry/EGLImageLayerWebKitThread.cpp:
2299 (WebCore::EGLImageLayerWebKitThread::EGLImageLayerWebKitThread):
2300 (WebCore::EGLImageLayerWebKitThread::~EGLImageLayerWebKitThread):
2301 (WebCore::EGLImageLayerWebKitThread::updateFrontBuffer):
2302 (WebCore::EGLImageLayerWebKitThread::deleteFrontBuffer):
2303 (WebCore::EGLImageLayerWebKitThread::commitPendingTextureUploads):
2304 (WebCore::EGLImageLayerWebKitThread::createTextureIfNeeded):
2305 (WebCore::EGLImageLayerWebKitThread::blitToFrontBuffer):
2306 * platform/graphics/blackberry/EGLImageLayerWebKitThread.h:
2308 (EGLImageLayerWebKitThread):
2309 * platform/graphics/blackberry/FloatRectBlackBerry.cpp:
2310 (WebCore::FloatRect::normalized):
2312 * platform/graphics/blackberry/FontCacheBlackberry.cpp: Removed.
2313 * platform/graphics/blackberry/GraphicsContext3DBlackBerry.cpp:
2314 (WebCore::GraphicsContext3D::GraphicsContext3D):
2315 (WebCore::GraphicsContext3D::paintToCanvas):
2316 (WebCore::GraphicsContext3D::getImageData):
2318 * platform/graphics/blackberry/GraphicsLayerBlackBerry.cpp:
2319 (WebCore::GraphicsLayerBlackBerry::GraphicsLayerBlackBerry):
2320 (WebCore::GraphicsLayerBlackBerry::setBackgroundColor):
2321 (WebCore::GraphicsLayerBlackBerry::clearBackgroundColor):
2323 (WebCore::GraphicsLayerBlackBerry::setContentsNeedsDisplay):
2324 (WebCore::GraphicsLayerBlackBerry::setNeedsDisplay):
2325 (WebCore::GraphicsLayerBlackBerry::setNeedsDisplayInRect):
2326 (WebCore::GraphicsLayerBlackBerry::updateLayerBackgroundColor):
2327 (WebCore::GraphicsLayerBlackBerry::setupContentsLayer):
2328 * platform/graphics/blackberry/GraphicsLayerBlackBerry.h:
2329 (GraphicsLayerBlackBerry):
2330 (WebCore::GraphicsLayerBlackBerry::notifySyncRequired):
2331 * platform/graphics/blackberry/ImageBlackBerry.cpp:
2332 (WebCore::ImageFrame::asNewNativeImage):
2334 (WebCore::FrameData::clear):
2335 (WebCore::BitmapImage::BitmapImage):
2336 (WebCore::BitmapImage::checkForSolidColor):
2337 (WebCore::BitmapImage::invalidatePlatformData):
2338 (WebCore::BitmapImage::draw):
2339 (WebCore::Image::drawPattern):
2340 * platform/graphics/blackberry/InstrumentedPlatformCanvas.h: Removed.
2341 * platform/graphics/blackberry/LayerCompositingThread.cpp:
2342 (WebCore::LayerCompositingThread::drawTextures):
2343 (WebCore::LayerCompositingThread::drawSurface):
2344 (WebCore::LayerCompositingThread::contentsTexture):
2345 (WebCore::LayerCompositingThread::commitPendingTextureUploads):
2347 * platform/graphics/blackberry/LayerCompositingThread.h:
2349 (LayerCompositingThread):
2350 * platform/graphics/blackberry/LayerCompositingThreadClient.h:
2353 (LayerCompositingThreadClient):
2354 (WebCore::LayerCompositingThreadClient::contentsTexture):
2355 (WebCore::LayerCompositingThreadClient::commitPendingTextureUploads):
2356 * platform/graphics/blackberry/LayerData.h:
2357 (WebCore::LayerData::LayerData):
2358 (WebCore::LayerData::contentsResolutionIndependent):
2360 (WebCore::LayerData::layerProgram):
2361 (WebCore::LayerData::isContainerForFixedPositionLayers):
2362 (WebCore::LayerData::isFixedToTop):
2363 (WebCore::LayerData::isFixedToLeft):
2364 (WebCore::LayerData::frameVisibleRect):
2365 (WebCore::LayerData::frameContentsSize):
2366 (WebCore::LayerData::contentsScale):
2367 * platform/graphics/blackberry/LayerFilterRenderer.cpp:
2368 (WebCore::LayerFilterRendererAction::LayerFilterRendererAction):
2369 (WebCore::LayerFilterRenderer::initializeSharedGLObjects):
2370 (WebCore::LayerFilterRenderer::ping):
2371 (WebCore::LayerFilterRenderer::pong):
2372 (WebCore::LayerFilterRenderer::pushSnapshot):
2373 (WebCore::LayerFilterRenderer::popSnapshot):
2374 (WebCore::LayerFilterRenderer::applyActions):
2375 * platform/graphics/blackberry/LayerRenderer.cpp:
2377 (WebCore::LayerRenderer::LayerRenderer):
2378 (WebCore::LayerRenderer::~LayerRenderer):
2379 (WebCore::LayerRenderer::setViewport):
2380 (WebCore::LayerRenderer::compositeLayers):
2381 (WebCore::LayerRenderer::compositeBuffer):
2382 (WebCore::LayerRenderer::drawColor):
2383 (WebCore::LayerRenderer::useSurface):
2384 (WebCore::LayerRenderer::drawLayersOnSurfaces):
2386 (WebCore::LayerRenderer::toOpenGLWindowCoordinates):
2387 (WebCore::LayerRenderer::drawDebugBorder):
2388 (WebCore::LayerRenderer::drawHolePunchRect):
2389 (WebCore::LayerRenderer::updateLayersRecursive):
2390 (WebCore::LayerRenderer::compositeLayersRecursive):
2391 (WebCore::LayerRenderer::createProgram):
2392 (WebCore::LayerRenderer::useProgram):
2393 (WebCore::LayerRenderer::useLayerProgram):
2394 * platform/graphics/blackberry/LayerRenderer.h:
2396 * platform/graphics/blackberry/LayerRendererSurface.cpp:
2397 (WebCore::LayerRendererSurface::ensureTexture):
2398 * platform/graphics/blackberry/LayerTile.cpp:
2399 (WebCore::LayerTile::LayerTile):
2400 (WebCore::LayerTile::setContents):
2401 (WebCore::LayerTile::updateContents):
2402 * platform/graphics/blackberry/LayerTile.h:
2404 (WebCore::LayerTile::renderState):
2405 (WebCore::LayerTile::needsRender):
2406 (WebCore::LayerTile::setNeedsRender):
2407 (WebCore::LayerTile::setRenderPending):
2408 (WebCore::LayerTile::setRenderDone):
2409 * platform/graphics/blackberry/LayerTileIndex.h:
2410 * platform/graphics/blackberry/LayerTiler.cpp:
2412 (WebCore::defaultTileSize):
2413 (WebCore::LayerTiler::LayerTiler):
2414 (WebCore::LayerTiler::updateTextureContentsIfNeeded):
2415 (WebCore::LayerTiler::createBuffer):
2416 (WebCore::LayerTiler::willCommit):
2417 (WebCore::LayerTiler::commitPendingTextureUploads):
2418 (WebCore::LayerTiler::layerVisibilityChanged):
2419 (WebCore::LayerTiler::uploadTexturesIfNeeded):
2420 (WebCore::LayerTiler::processTextureJob):
2421 (WebCore::LayerTiler::addTileJob):
2422 (WebCore::LayerTiler::performTileJob):
2423 (WebCore::LayerTiler::drawTile):
2424 (WebCore::LayerTiler::drawTextures):
2425 (WebCore::LayerTiler::pruneTextures):
2426 (WebCore::LayerTiler::updateTileSize):
2427 (WebCore::LayerTiler::setNeedsBacking):
2428 (WebCore::LayerTiler::contentsTexture):
2429 * platform/graphics/blackberry/LayerTiler.h:
2430 (WebCore::LayerTiler::tileSize):
2432 (WebCore::LayerTiler::TextureJob::TextureJob):
2433 (WebCore::LayerTiler::TextureJob::setContents):
2434 (WebCore::LayerTiler::TextureJob::updateContents):
2436 (WebCore::LayerTiler::needsRender):
2437 (WebCore::LayerTiler::removeUpdateContentsJobs):
2438 * platform/graphics/blackberry/LayerWebKitThread.cpp:
2439 (WebCore::LayerWebKitThread::LayerWebKitThread):
2440 (WebCore::LayerWebKitThread::~LayerWebKitThread):
2441 (WebCore::LayerWebKitThread::paintContents):
2442 (WebCore::LayerWebKitThread::commitPendingTextureUploads):
2443 (WebCore::LayerWebKitThread::setContents):
2444 (WebCore::LayerWebKitThread::setNeedsCommit):
2445 (WebCore::LayerWebKitThread::notifyAnimationsStarted):
2446 (WebCore::LayerWebKitThread::commitOnWebKitThread):
2447 (WebCore::LayerWebKitThread::startAnimations):
2448 (WebCore::LayerWebKitThread::updateTextureContents):
2449 (WebCore::LayerWebKitThread::commitOnCompositingThread):
2450 (WebCore::LayerWebKitThread::addSublayer):
2452 (WebCore::LayerWebKitThread::addOverlay):
2453 (WebCore::LayerWebKitThread::insert):
2454 (WebCore::LayerWebKitThread::removeFromSuperlayer):
2455 (WebCore::LayerWebKitThread::removeSublayerOrOverlay):
2456 (WebCore::LayerWebKitThread::remove):
2457 (WebCore::LayerWebKitThread::replaceSublayer):
2458 (WebCore::LayerWebKitThread::filtersCanBeComposited):
2459 (WebCore::LayerWebKitThread::removeAll):
2460 (WebCore::LayerWebKitThread::setSublayers):
2461 (WebCore::LayerWebKitThread::updateLayerHierarchy):
2462 (WebCore::LayerWebKitThread::setIsMask):
2463 (WebCore::LayerWebKitThread::releaseLayerResources):
2464 * platform/graphics/blackberry/LayerWebKitThread.h:
2465 (WebCore::LayerWebKitThread::insertSublayer):
2466 (LayerWebKitThread):
2467 (WebCore::LayerWebKitThread::isMask):
2468 (WebCore::LayerWebKitThread::removeAllSublayers):
2469 (WebCore::LayerWebKitThread::setFixedPosition):
2470 (WebCore::LayerWebKitThread::setIsContainerForFixedPositionLayers):
2471 (WebCore::LayerWebKitThread::setFixedToTop):
2472 (WebCore::LayerWebKitThread::setFixedToLeft):
2473 (WebCore::LayerWebKitThread::setFrameVisibleRect):
2474 (WebCore::LayerWebKitThread::setFrameContentsSize):
2475 (WebCore::LayerWebKitThread::setLayerProgram):
2476 * platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.cpp:
2477 (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
2478 (WebCore::MediaPlayerPrivate::play):
2479 (WebCore::MediaPlayerPrivate::supportsFullscreen):
2480 (WebCore::MediaPlayerPrivate::paintCurrentFrameInContext):
2481 (WebCore::MediaPlayerPrivate::prepareForRendering):
2483 (WebCore::MediaPlayerPrivate::resizeSourceDimensions):
2484 (WebCore::MediaPlayerPrivate::percentLoaded):
2485 (WebCore::MediaPlayerPrivate::updateStates):
2486 (WebCore::MediaPlayerPrivate::waitMetadataTimerFired):
2487 (WebCore::MediaPlayerPrivate::onAuthenticationNeeded):
2488 (WebCore::MediaPlayerPrivate::notifyChallengeResult):
2489 (WebCore::MediaPlayerPrivate::isProcessingUserGesture):
2490 (WebCore::loadBufferingImageData):
2491 (WebCore::MediaPlayerPrivate::setBuffering):
2492 (WebCore::MediaPlayerPrivate::drawBufferingAnimation):
2493 (WebCore::MediaPlayerPrivate::onConditionallyEnterFullscreen):
2494 (WebCore::MediaPlayerPrivate::onExitFullscreen):
2495 (WebCore::MediaPlayerPrivate::onCreateHolePunchRect):
2496 (WebCore::MediaPlayerPrivate::onDestroyHolePunchRect):
2497 * platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.h:
2501 (MediaPlayerPrivate):
2502 * platform/graphics/blackberry/PluginLayerWebKitThread.cpp:
2503 (WebCore::PluginLayerWebKitThread::setPluginView):
2504 * platform/graphics/blackberry/Texture.cpp:
2505 (WebCore::Texture::Texture):
2506 (WebCore::Texture::updateContents):
2507 (WebCore::Texture::setContentsToColor):
2508 (WebCore::Texture::protect):
2509 * platform/graphics/blackberry/Texture.h:
2511 (WebCore::Texture::textureId):
2512 (WebCore::Texture::isDirty):
2513 (WebCore::Texture::hasTexture):
2514 (WebCore::Texture::sizeInBytes):
2515 (WebCore::Texture::setTextureId):
2516 (WebCore::Texture::setSize):
2517 * platform/graphics/blackberry/TextureCacheCompositingThread.cpp:
2518 (WebCore::TextureCacheCompositingThread::allocateTextureId):
2519 (WebCore::freeTextureId):
2520 (WebCore::TextureCacheCompositingThread::collectGarbage):
2521 (WebCore::TextureCacheCompositingThread::textureSizeInBytesChanged):
2523 (WebCore::TextureCacheCompositingThread::textureDestroyed):
2524 (WebCore::TextureCacheCompositingThread::install):
2525 (WebCore::TextureCacheCompositingThread::resizeTexture):
2526 (WebCore::TextureCacheCompositingThread::evict):
2527 (WebCore::TextureCacheCompositingThread::prune):
2528 (WebCore::TextureCacheCompositingThread::clear):
2529 (WebCore::TextureCacheCompositingThread::textureForTiledContents):
2530 (WebCore::TextureCacheCompositingThread::updateContents):
2531 * platform/graphics/blackberry/TextureCacheCompositingThread.h:
2532 (TextureCacheCompositingThread):
2533 (WebCore::TextureCacheCompositingThread::ZombieTexture::ZombieTexture):
2535 * platform/graphics/blackberry/skia/ImageBufferDataSkia.h: Removed.
2536 * platform/graphics/blackberry/skia/PlatformSupport.cpp: Removed.
2537 * platform/graphics/blackberry/skia/PlatformSupport.h: Removed.
2539 2013-03-01 Jocelyn Turcotte <jocelyn.turcotte@digia.com>
2541 [Qt] Fix the Mac build with the current qtbase/dev branch
2542 https://bugs.webkit.org/show_bug.cgi?id=111190
2544 Reviewed by Allan Sandfeld Jensen.
2546 QMAKE_MACOSX_DEPLOYMENT_TARGET now influences
2547 __MAC_OS_X_VERSION_MIN_REQUIRED through -mmacosx-version-min after
2548 changes in qtbase to support iOS.
2550 Having only WebCore defining it to 10.5 would create a mismatch of
2551 ENABLE_THREADING_LIBDISPATCH with WTF to cause undefined symbols
2552 while linking both together at the end.
2554 Fix it by removing the statement which isn't needed anymore.
2555 qtbase/mkspecs/common/mac-minimum-version.conf already defines
2556 10.6 as the minimum Mac version.
2560 2013-03-01 Vsevolod Vlasov <vsevik@chromium.org>
2562 Web Inspector: [Regression] Snippets renaming is broken.
2563 https://bugs.webkit.org/show_bug.cgi?id=111181
2565 Reviewed by Alexander Pavlov.
2567 * inspector/front-end/NavigatorView.js:
2568 * inspector/front-end/ScriptSnippetModel.js:
2569 * inspector/front-end/ScriptsPanel.js:
2570 (WebInspector.ScriptsPanel.prototype.set _fileRenamed):
2571 * inspector/front-end/UISourceCode.js:
2572 (WebInspector.UISourceCode.prototype.rename):
2574 2013-03-01 David Hyatt <hyatt@apple.com>
2576 Fix a misspelled word in RenderObject.h. staticly -> statically.
2578 Reviewed by Dean Jackson.
2580 * rendering/RenderObject.h:
2581 (WebCore::RenderObject::RenderObjectBitfields::RenderObjectBitfields):
2582 (WebCore::RenderObject::RenderObjectBitfields::isPositioned):
2584 2013-03-01 David Hyatt <hyatt@apple.com>
2586 [New Multicolumn] Change flow thread containment to be a state.
2587 https://bugs.webkit.org/show_bug.cgi?id=111110
2589 Change m_inRenderFlowThread from a single bit to an actual state. This
2590 will let us track whether we're inside a multicolumn (in-flow) flow thread
2591 or a named (out-of-flow) flow thread. In the former case, we're going to have
2592 to do more work to maintain this state, but for now I've kept all the logic
2593 the same just for the initial landing.
2595 Reviewed by Andreas Kling.
2597 * dom/NodeRenderingContext.cpp:
2598 (WebCore::NodeRenderingContext::createRendererForElementIfNeeded):
2599 (WebCore::NodeRenderingContext::createRendererForTextIfNeeded):
2600 * rendering/RenderBlock.cpp:
2601 (WebCore::RenderBlock::clone):
2602 * rendering/RenderFlowThread.cpp:
2603 (WebCore::RenderFlowThread::RenderFlowThread):
2604 * rendering/RenderInline.cpp:
2605 (WebCore::RenderInline::clone):
2606 * rendering/RenderMultiColumnFlowThread.cpp:
2607 (WebCore::RenderMultiColumnFlowThread::RenderMultiColumnFlowThread):
2608 * rendering/RenderObject.cpp:
2609 (WebCore::RenderObject::setFlowThreadStateIncludingDescendants):
2610 (WebCore::RenderObject::removeFromRenderFlowThreadRecursive):
2611 * rendering/RenderObject.h:
2612 (WebCore::RenderObject::setParent):
2614 (WebCore::RenderObject::inRenderFlowThread):
2615 (WebCore::RenderObject::flowThreadState):
2616 (WebCore::RenderObject::setFlowThreadState):
2617 (WebCore::RenderObject::RenderObjectBitfields::RenderObjectBitfields):
2618 (RenderObjectBitfields):
2619 (WebCore::RenderObject::RenderObjectBitfields::flowThreadState):
2620 (WebCore::RenderObject::RenderObjectBitfields::setFlowThreadState):
2621 * rendering/RenderView.cpp:
2622 (WebCore::RenderView::addChild):
2624 2013-03-01 Jessie Berlin <jberlin@apple.com>
2628 Roll out r144431 because it was a build fix for r144422, which was rolled out in r144446.
2630 * platform/graphics/avfoundation/objc/WebCoreAVFResourceLoader.h:
2632 2013-03-01 David Kilzer <ddkilzer@apple.com>
2634 BUILD FIX (r144358): Add UNUSED_PARAM() macros to WebCore::Extensions3DOpenGL::drawBuffersEXT()
2635 <http://webkit.org/b/109331>
2637 Fixes the following build failures:
2639 Source/WebCore/platform/graphics/opengl/Extensions3DOpenGL.cpp:218:51: error: unused parameter 'n' [-Werror,-Wunused-parameter]
2640 void Extensions3DOpenGL::drawBuffersEXT(GC3Dsizei n, const GC3Denum* bufs)
2642 Source/WebCore/platform/graphics/opengl/Extensions3DOpenGL.cpp:218:70: error: unused parameter 'bufs' [-Werror,-Wunused-parameter]
2643 void Extensions3DOpenGL::drawBuffersEXT(GC3Dsizei n, const GC3Denum* bufs)
2647 * platform/graphics/opengl/Extensions3DOpenGL.cpp:
2648 (WebCore::Extensions3DOpenGL::drawBuffersEXT): Add UNUSED_PARAM()
2651 2013-03-01 Dan Carney <dcarney@google.com>
2653 [v8] ScriptValue has dangerous copy semantics
2654 https://bugs.webkit.org/show_bug.cgi?id=110206
2656 Reviewed by Kentaro Hara.
2658 Update ScriptValue to used a SharedPersistent,
2659 making it impossible to return dead references.
2661 No new tests. No change in functionality.
2663 * bindings/v8/ScriptValue.cpp:
2664 (WebCore::ScriptValue::serialize):
2665 (WebCore::ScriptValue::getString):
2666 (WebCore::ScriptValue::toString):
2667 (WebCore::ScriptValue::toInspectorValue):
2668 * bindings/v8/ScriptValue.h:
2669 (WebCore::ScriptValue::ScriptValue):
2670 (WebCore::ScriptValue::operator=):
2671 (WebCore::ScriptValue::operator==):
2672 (WebCore::ScriptValue::isEqual):
2673 (WebCore::ScriptValue::isFunction):
2674 (WebCore::ScriptValue::isNull):
2675 (WebCore::ScriptValue::isUndefined):
2676 (WebCore::ScriptValue::isObject):
2677 (WebCore::ScriptValue::hasNoValue):
2678 (WebCore::ScriptValue::clear):
2680 (WebCore::ScriptValue::v8Value):
2681 (WebCore::ScriptValue::v8ValueRaw):
2682 * bindings/v8/SharedPersistent.h:
2683 * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
2684 (WebCore::InjectedScriptHost::scriptValueAsNode):
2685 * bindings/v8/custom/V8MessageEventCustom.cpp:
2686 (WebCore::V8MessageEvent::dataAttrGetterCustom):
2688 2013-03-01 Julien Chaffraix <jchaffraix@webkit.org>
2690 Add FeatureObserver for marquee and reflection
2691 https://bugs.webkit.org/show_bug.cgi?id=111118
2693 Reviewed by Simon Fraser.
2695 Refactoring covered by existing tests.
2697 * page/FeatureObserver.h:
2698 * rendering/RenderLayer.cpp:
2699 (WebCore::RenderLayer::styleChanged):
2700 Added some instrumentation for reflection and marquee as they are both prefixed and this would help
2701 to know their popularity on the web. Marquee was split between <marquee> (HTMLMarqueeElement) and
2702 overflow: -webkit-marquee (CSSOverflowMarquee).
2704 2013-03-01 Alexander Pavlov <apavlov@chromium.org>
2706 Web Inspector: Introduce opaque SecurityOrigin string identifiers in the frontend
2707 https://bugs.webkit.org/show_bug.cgi?id=111165
2709 Reviewed by Vsevolod Vlasov.
2711 A plain string security origin value has been replaced by WebInspector.SecurityOrigin all over the code,
2712 containing a URL (which holds a stringified security origin) and an identifier (which is now used
2713 as a key in place of the stringified security origin in various maps). To avoid the ResourceTreeModel
2714 code clutter, the security origin tracking code has been extracted into a separate type,
2715 WebInspector.SecurityOriginTracker, which works as a helper on the ResourceTreeModel.
2717 No new tests, as it is a refactoring.
2719 * inspector/front-end/DOMStorage.js:
2720 (WebInspector.DOMStorage.storageId):
2721 (WebInspector.DOMStorage.prototype.id):
2722 (WebInspector.DOMStorage.prototype.getItems):
2723 (WebInspector.DOMStorage.prototype.setItem):
2724 (WebInspector.DOMStorage.prototype.removeItem):
2725 (WebInspector.DOMStorageModel.prototype._securityOriginAdded):
2726 (WebInspector.DOMStorageModel.prototype._securityOriginRemoved):
2727 (WebInspector.DOMStorageModel.prototype._storageKey):
2728 * inspector/front-end/ExtensionAuditCategory.js:
2729 * inspector/front-end/FileSystemModel.js:
2730 (WebInspector.FileSystemModel.prototype._reset):
2731 (WebInspector.FileSystemModel.prototype._securityOriginAdded):
2732 (WebInspector.FileSystemModel.prototype._securityOriginRemoved):
2733 (WebInspector.FileSystemModel.prototype._addOrigin):
2734 (WebInspector.FileSystemModel.prototype._removeOrigin):
2735 (WebInspector.FileSystemModel.prototype._requestFileSystemRoot):
2736 (WebInspector.FileSystemModel.prototype._fileSystemRootReceived):
2737 (WebInspector.FileSystemModel.prototype._removeFileSystem):
2738 (WebInspector.FileSystemModel.FileSystem.prototype.get name):
2739 * inspector/front-end/IndexedDBModel.js:
2740 (WebInspector.IndexedDBModel.prototype._reset):
2741 (WebInspector.IndexedDBModel.prototype.refreshDatabaseNames):
2742 (WebInspector.IndexedDBModel.prototype._securityOriginAdded):
2743 (WebInspector.IndexedDBModel.prototype._securityOriginRemoved):
2744 (WebInspector.IndexedDBModel.prototype._addOrigin):
2745 (WebInspector.IndexedDBModel.prototype._removeOrigin):
2746 (WebInspector.IndexedDBModel.prototype._updateOriginDatabaseNames):
2747 (WebInspector.IndexedDBModel.prototype._loadDatabaseNames):
2748 (WebInspector.IndexedDBModel.prototype._loadDatabase):
2749 (WebInspector.IndexedDBModel.prototype.):
2750 (WebInspector.IndexedDBModel.prototype._requestData):
2751 (WebInspector.IndexedDBModel.DatabaseId.prototype.equals):
2752 * inspector/front-end/IndexedDBViews.js:
2753 (WebInspector.IDBDatabaseView.prototype._refreshDatabase):
2754 * inspector/front-end/ResourceTreeModel.js:
2755 (WebInspector.ResourceTreeModel.prototype._addFrame):
2756 (WebInspector.ResourceTreeModel.prototype.securityOriginForId):
2757 (WebInspector.ResourceTreeModel.prototype.securityOrigins):
2758 (WebInspector.ResourceTreeModel.prototype._handleMainFrameDetached):
2759 (WebInspector.ResourceTreeModel.prototype._frameNavigated):
2760 (WebInspector.ResourceTreeModel.prototype._frameDetached):
2761 (WebInspector.ResourceTreeModel.SecurityOriginTracker):
2762 (WebInspector.ResourceTreeModel.SecurityOriginTracker.prototype._addSecurityOrigin):
2763 (WebInspector.ResourceTreeModel.SecurityOriginTracker.prototype._removeSecurityOrigin):
2764 (WebInspector.ResourceTreeModel.SecurityOriginTracker.prototype._bindSecurityOrigin):
2765 (WebInspector.ResourceTreeModel.SecurityOriginTracker.prototype._unbindSecurityOrigin):
2766 (WebInspector.ResourceTreeModel.SecurityOriginTracker.prototype._detachMainFrame):
2767 (WebInspector.ResourceTreeModel.SecurityOriginTracker.prototype._securityOriginForId):
2768 (WebInspector.ResourceTreeModel.SecurityOriginTracker.prototype._securityOrigins):
2769 (WebInspector.ResourceTreeFrame.prototype._navigate):
2770 (WebInspector.SecurityOrigin.prototype.id):
2771 (WebInspector.SecurityOrigin.prototype.url):
2772 (WebInspector.SecurityOrigin.prototype.uiTitle):
2773 (WebInspector.SecurityOrigin.prototype.toProtocol):
2774 * inspector/front-end/ResourcesPanel.js:
2775 (WebInspector.IDBDatabaseTreeElement):
2776 (WebInspector.IDBDatabaseTreeElement.prototype.get itemURL):
2777 (WebInspector.IDBObjectStoreTreeElement.prototype.get itemURL):
2778 (WebInspector.IDBIndexTreeElement.prototype.get itemURL):
2779 (WebInspector.DOMStorageTreeElement):
2780 (WebInspector.DOMStorageTreeElement.prototype.get itemURL):
2781 (WebInspector.FileSystemTreeElement):
2783 2013-03-01 Eugene Klyuchnikov <eustas@chromium.org>
2785 Web Inspector: [Timeline] Show "curtains" when mouse is over CPU bar.
2786 https://bugs.webkit.org/show_bug.cgi?id=108930
2788 Reviewed by Pavel Feldman.
2790 This feature will help developers to focus on events
2791 that caused CPU bar.
2793 * inspector/front-end/Popover.js: Added "arrowDirection" parameter.
2794 * inspector/front-end/TimelineGrid.js:
2795 (WebInspector.TimelineGrid): Added "curtains".
2796 * inspector/front-end/TimelinePanel.js:
2797 (WebInspector.TimelinePanel.prototype._mouseMove): Show/hide "curtains"
2798 when mouse is over CPU bar.
2799 * inspector/front-end/timelinePanel.css: Added "curtains" style rules.
2801 2013-03-01 Alexander Pavlov <apavlov@chromium.org>
2803 Web Inspector: [Styles] Implement navigation to UI locations of property names/values in the source code
2804 Relanding fixed r144449.
2805 https://bugs.webkit.org/show_bug.cgi?id=105285
2807 Reviewed by Vsevolod Vlasov.
2809 Users can now Ctrl/Cmd-click CSS property names/values whose UI locations are found in
2810 an external stylesheet/sass/other file. Inline stylesheets are not navigable,
2811 since their start position is not detectable inside the surrounding HTML as of yet.
2813 No new tests, a UI change.
2815 * inspector/front-end/CSSStyleModel.js:
2816 (WebInspector.CSSRule.prototype.isSourceNavigable): Whether the rule contains reliable source code information.
2817 (WebInspector.CSSProperty.prototype.uiLocation): Returns a UILocation for the property name of value.
2818 * inspector/front-end/StylesSidebarPane.js: Add navigation code.
2819 (WebInspector.StylesSidebarPane.prototype._innerRebuildUpdate):
2820 (WebInspector.StylePropertiesSection):
2822 2013-03-01 Sheriff Bot <webkit.review.bot@gmail.com>
2824 Unreviewed, rolling out r144449.
2825 http://trac.webkit.org/changeset/144449
2826 https://bugs.webkit.org/show_bug.cgi?id=111175
2828 Breaks style-related inspector tests (Requested by apavlov on
2831 * inspector/front-end/CSSStyleModel.js:
2832 (WebInspector.CSSRule.prototype.get isRegular):
2833 (WebInspector.CSSProperty.prototype.setDisabled):
2834 * inspector/front-end/StylesSidebarPane.js:
2835 (WebInspector.StylesSidebarPane.prototype._innerRebuildUpdate):
2836 (WebInspector.StylePropertiesSection):
2840 2013-03-01 Alexander Pavlov <apavlov@chromium.org>
2842 Web Inspector: [Styles] Implement navigation to UI locations of property names/values in the source code
2843 https://bugs.webkit.org/show_bug.cgi?id=105285
2845 Reviewed by Vsevolod Vlasov.
2847 Users can now Ctrl/Cmd-click CSS property names/values whose UI locations are found in
2848 an external stylesheet/sass/other file. Inline stylesheets are not navigable,
2849 since their start position is not detectable inside the surrounding HTML as of yet.
2851 No new tests, a UI change.
2853 * inspector/front-end/CSSStyleModel.js:
2854 (WebInspector.CSSRule.prototype.isSourceNavigable): Whether the rule contains reliable source code information.
2855 (WebInspector.CSSProperty.prototype.uiLocation): Returns a UILocation for the property name of value.
2856 * inspector/front-end/StylesSidebarPane.js: Add navigation code.
2857 (WebInspector.StylesSidebarPane.prototype._innerRebuildUpdate):
2858 (WebInspector.StylePropertiesSection):
2860 2013-03-01 Sheriff Bot <webkit.review.bot@gmail.com>
2862 Unreviewed, rolling out r144443.
2863 http://trac.webkit.org/changeset/144443
2864 https://bugs.webkit.org/show_bug.cgi?id=111169
2866 Caused 2 tests to crash by segv on Chromium Mac10.6 (Requested
2867 by toyoshim on #webkit).
2869 * css/mediaControls.css:
2870 (video::-webkit-media-text-track-display):
2871 * rendering/RenderTextTrackCue.cpp:
2872 (WebCore::RenderTextTrackCue::isOutside):
2873 (WebCore::RenderTextTrackCue::repositionCueSnapToLinesSet):
2875 2013-03-01 Sheriff Bot <webkit.review.bot@gmail.com>
2877 Unreviewed, rolling out r144422 and r144424.
2878 http://trac.webkit.org/changeset/144422
2879 http://trac.webkit.org/changeset/144424
2880 https://bugs.webkit.org/show_bug.cgi?id=111167
2882 Caused over 20 tests to fail assertion on Chromium Win port as
2883 ASSERTION FAILED: m_platformRequestUpdated (Requested by
2884 toyoshim on #webkit).
2887 * GNUmakefile.list.am:
2888 * Modules/mediastream/RTCPeerConnection.cpp:
2889 * Modules/notifications/Notification.cpp:
2893 * WebCore.vcproj/WebCore.vcproj:
2894 * WebCore.vcxproj/WebCore.vcxproj:
2895 * WebCore.vcxproj/WebCore.vcxproj.filters:
2896 * WebCore.xcodeproj/project.pbxproj:
2897 * bindings/ScriptControllerBase.cpp:
2898 * bindings/js/JSNodeCustom.cpp:
2899 * bindings/js/ScriptController.cpp:
2900 * bindings/js/ScriptSourceCode.h:
2901 * bindings/objc/DOM.mm:
2902 * bindings/v8/ScriptController.cpp:
2903 * bindings/v8/V8DOMWindowShell.cpp:
2904 * bindings/v8/custom/V8DOMWindowCustom.cpp:
2905 * css/CSSCrossfadeValue.h:
2906 (WebCore::CSSCrossfadeValue::CSSCrossfadeValue):
2907 (WebCore::CSSCrossfadeValue::CrossfadeSubimageObserverProxy::CrossfadeSubimageObserverProxy):
2908 * css/CSSFontFaceSource.h:
2909 * css/CSSFontSelector.cpp:
2910 * css/WebKitCSSSVGDocumentValue.cpp:
2911 * css/WebKitCSSSVGDocumentValue.h:
2913 * dom/Clipboard.cpp:
2914 (WebCore::Clipboard::Clipboard):
2915 * dom/ContainerNode.cpp:
2916 * dom/DOMImplementation.cpp:
2917 * dom/PendingScript.h:
2918 * dom/ScriptElement.cpp:
2919 * dom/ScriptElement.h:
2920 * history/CachedFrame.cpp:
2922 * html/HTMLAnchorElement.cpp:
2923 * html/HTMLAppletElement.cpp:
2924 * html/HTMLElement.cpp:
2925 * html/HTMLEmbedElement.cpp:
2926 * html/HTMLFrameSetElement.cpp:
2927 * html/HTMLHtmlElement.cpp:
2928 * html/HTMLImageElement.cpp:
2929 * html/HTMLObjectElement.cpp:
2930 * html/HTMLPlugInElement.cpp:
2931 * html/ImageDocument.cpp:
2932 * html/ImageInputType.cpp:
2933 * html/MediaDocument.cpp:
2934 * html/PluginDocument.cpp:
2935 * html/canvas/WebGLRenderingContext.cpp:
2937 * html/parser/HTMLConstructionSite.cpp:
2938 * html/parser/HTMLParserOptions.cpp:
2939 * html/parser/HTMLScriptRunner.h:
2940 * html/parser/XSSAuditor.cpp:
2941 * html/parser/XSSAuditorDelegate.cpp:
2942 * inspector/InspectorDebuggerAgent.cpp:
2943 * inspector/InspectorFileSystemAgent.cpp:
2944 * inspector/InspectorFrontendHost.cpp:
2945 * inspector/InspectorInstrumentation.h:
2947 * inspector/InspectorPageAgent.cpp:
2948 * inspector/NetworkResourcesData.cpp:
2949 * inspector/NetworkResourcesData.h:
2951 * loader/CookieJar.cpp:
2952 * loader/CrossOriginAccessControl.cpp:
2953 * loader/CrossOriginAccessControl.h:
2955 * loader/CrossOriginPreflightResultCache.h:
2956 * loader/DocumentThreadableLoader.h:
2957 * loader/FrameLoader.cpp:
2958 (WebCore::FrameLoader::FrameLoader):
2959 * loader/FrameLoader.h:
2961 (WebCore::FrameLoader::policyChecker):
2962 * loader/ImageLoader.cpp:
2963 * loader/ImageLoader.h:
2964 * loader/LinkLoader.h:
2965 * loader/MainResourceLoader.cpp:
2966 * loader/MainResourceLoader.h:
2967 * loader/MixedContentChecker.cpp:
2968 * loader/PingLoader.cpp:
2969 * loader/PolicyChecker.h:
2971 * loader/ProgressTracker.cpp:
2972 * loader/SubframeLoader.cpp:
2973 * loader/SubresourceLoader.cpp:
2974 * loader/TextTrackLoader.cpp:
2975 * loader/TextTrackLoader.h:
2976 * loader/ThreadableLoader.h:
2977 * loader/appcache/ApplicationCacheGroup.cpp:
2978 * loader/appcache/ApplicationCacheGroup.h:
2980 * loader/appcache/ApplicationCacheHost.cpp:
2981 * loader/archive/cf/LegacyWebArchive.cpp:
2982 * loader/cache/CachedFont.cpp:
2983 * loader/cache/CachedFont.h:
2985 (WebCore::CachedFontClient::~CachedFontClient):
2986 (WebCore::CachedFontClient::expectedType):
2987 (WebCore::CachedFontClient::resourceClientType):
2988 (WebCore::CachedFontClient::fontLoaded):
2990 * loader/cache/CachedFontClient.h: Removed.
2991 * loader/cache/CachedImage.cpp:
2992 * loader/cache/CachedRawResource.cpp:
2993 * loader/cache/CachedRawResource.h:
2995 (CachedRawResourceClient):
2996 (WebCore::CachedRawResourceClient::~CachedRawResourceClient):
2997 (WebCore::CachedRawResourceClient::expectedType):
2998 (WebCore::CachedRawResourceClient::resourceClientType):
2999 (WebCore::CachedRawResourceClient::dataSent):
3000 (WebCore::CachedRawResourceClient::responseReceived):
3001 (WebCore::CachedRawResourceClient::dataReceived):
3002 (WebCore::CachedRawResourceClient::redirectReceived):
3003 (WebCore::CachedRawResourceClient::dataDownloaded):
3004 * loader/cache/CachedRawResourceClient.h: Removed.
3005 * loader/cache/CachedResource.cpp:
3006 * loader/cache/CachedResourceHandle.cpp:
3007 * loader/cache/CachedResourceHandle.h:
3008 (WebCore::CachedResourceHandleBase::~CachedResourceHandleBase):
3009 (WebCore::CachedResourceHandleBase::CachedResourceHandleBase):
3010 * loader/cache/CachedSVGDocument.h:
3011 (CachedSVGDocumentClient):
3012 (WebCore::CachedSVGDocumentClient::~CachedSVGDocumentClient):
3013 (WebCore::CachedSVGDocumentClient::expectedType):
3014 (WebCore::CachedSVGDocumentClient::resourceClientType):
3016 * loader/cache/CachedSVGDocumentClient.h: Removed.
3017 * loader/cache/CachedSVGDocumentReference.cpp: Removed.
3018 * loader/cache/CachedSVGDocumentReference.h:
3019 (WebCore::CachedSVGDocumentReference::CachedSVGDocumentReference):
3020 (WebCore::CachedSVGDocumentReference::~CachedSVGDocumentReference):
3021 * loader/cache/CachedStyleSheetClient.h:
3022 * loader/cache/MemoryCache.cpp:
3023 * loader/cache/MemoryCache.h:
3026 * loader/chromium/CachedRawResourceChromium.cpp:
3027 * loader/icon/IconController.cpp:
3028 * loader/icon/IconLoader.h:
3029 * loader/mac/ResourceLoaderMac.mm:
3030 * page/DOMWindowExtension.cpp:
3031 * page/DragController.cpp:
3033 (WebCore::Frame::Frame):
3034 (WebCore::Frame::reportMemoryUsage):
3038 (WebCore::Frame::init):
3039 (WebCore::Frame::loader):
3040 * page/PerformanceNavigation.cpp:
3041 * page/PerformanceTiming.cpp:
3042 * page/PointerLockController.cpp:
3043 * page/Settings.cpp:
3044 * page/animation/CSSPropertyAnimation.cpp:
3045 * platform/chromium/PasteboardChromium.cpp:
3046 * platform/efl/ErrorsEfl.cpp:
3047 * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
3048 * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
3049 * platform/graphics/filters/FilterOperation.cpp:
3050 * platform/graphics/filters/FilterOperation.h:
3051 (WebCore::FilterOperation::ReferenceFilterOperation::setCachedSVGDocumentReference):
3052 (WebCore::FilterOperation::ReferenceFilterOperation::ReferenceFilterOperation):
3053 * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
3054 * platform/gtk/ErrorsGtk.cpp:
3055 * platform/gtk/PasteboardGtk.cpp:
3056 * platform/gtk/PasteboardHelper.h:
3057 * platform/mac/ClipboardMac.h:
3058 * platform/mac/ClipboardMac.mm:
3059 * platform/mac/HTMLConverter.mm:
3060 * platform/mac/PasteboardMac.mm:
3061 * platform/network/AuthenticationChallengeBase.cpp:
3062 * platform/network/cf/CookieJarCFNet.cpp:
3063 * platform/network/cf/ResourceRequestCFNet.cpp:
3064 * platform/network/mac/CookieStorageMac.mm:
3065 * platform/qt/PasteboardQt.cpp:
3066 * plugins/DOMMimeType.cpp:
3067 * plugins/PluginRequest.h: Removed.
3068 * plugins/PluginStream.h:
3069 (PluginStreamClient):
3070 (WebCore::PluginStreamClient::~PluginStreamClient):
3071 (WebCore::PluginStreamClient::streamDidFinishLoading):
3073 * plugins/PluginStreamClient.h: Removed.
3074 * plugins/PluginView.cpp:
3075 * plugins/PluginView.h:
3078 (WebCore::PluginRequest::PluginRequest):
3079 (WebCore::PluginRequest::frameLoadRequest):
3080 (WebCore::PluginRequest::notifyData):
3081 (WebCore::PluginRequest::sendNotification):
3082 (WebCore::PluginRequest::shouldAllowPopups):
3083 * rendering/HitTestResult.cpp:
3084 * rendering/InlineFlowBox.cpp:
3085 * rendering/RenderBox.cpp:
3086 * rendering/RenderEmbeddedObject.cpp:
3087 * rendering/RenderImage.cpp:
3088 * rendering/RenderImageResource.cpp:
3089 (WebCore::RenderImageResource::RenderImageResource):
3090 * rendering/RenderImageResource.h:
3091 (WebCore::RenderImageResource::image):
3092 (WebCore::RenderImageResource::errorOccurred):
3093 (WebCore::RenderImageResource::usesImageContainerSize):
3094 (WebCore::RenderImageResource::imageHasRelativeWidth):
3095 (WebCore::RenderImageResource::imageHasRelativeHeight):
3096 (WebCore::RenderImageResource::imageSize):
3097 * rendering/RenderImageResourceStyleImage.cpp:
3098 * rendering/RenderLayer.cpp:
3099 * rendering/RenderLayerBacking.cpp:
3100 * rendering/RenderLayerFilterInfo.h:
3101 * rendering/RenderListItem.cpp:
3102 * rendering/RenderListMarker.cpp:
3103 * rendering/RenderSnapshottedPlugIn.cpp:
3104 * rendering/RenderTableCol.cpp:
3105 * rendering/RenderTableRow.cpp:
3106 * rendering/RenderTableSection.cpp:
3107 * rendering/style/StyleCachedShader.h:
3108 * rendering/style/StyleCustomFilterProgram.cpp: Removed.
3109 * rendering/style/StyleCustomFilterProgram.h:
3111 (WebCore::StyleCustomFilterProgram::vertexShaderString):
3112 (StyleCustomFilterProgram):
3113 (WebCore::StyleCustomFilterProgram::fragmentShaderString):
3114 (WebCore::StyleCustomFilterProgram::isLoaded):
3115 (WebCore::StyleCustomFilterProgram::willHaveClients):
3116 (WebCore::StyleCustomFilterProgram::didRemoveLastClient):
3117 (WebCore::StyleCustomFilterProgram::notifyFinished):
3118 * svg/SVGFEImageElement.h:
3119 * svg/SVGFontFaceUriElement.h:
3120 (SVGFontFaceUriElement):
3121 * svg/SVGImageLoader.cpp:
3122 * svg/SVGUseElement.cpp:
3123 * svg/SVGUseElement.h:
3124 * svg/graphics/SVGImageCache.cpp:
3125 * testing/MockPagePopupDriver.cpp:
3126 * xml/XSLStyleSheet.h:
3127 * xml/XSLTProcessorLibxslt.cpp:
3128 * xml/parser/XMLDocumentParser.cpp:
3129 * xml/parser/XMLDocumentParser.h:
3130 * xml/parser/XMLDocumentParserLibxml2.cpp:
3132 2013-03-01 Alexei Filippov <alph@chromium.org>
3134 Web Inspector: fix closure compiler warnings in ProfilesPanel
3135 https://bugs.webkit.org/show_bug.cgi?id=111163
3137 Reviewed by Vsevolod Vlasov.
3139 * inspector/front-end/ProfileLauncherView.js:
3140 (WebInspector.ProfileLauncherView.prototype.addProfileType):
3141 * inspector/front-end/ProfilesPanel.js:
3143 2013-03-01 Victor Carbune <vcarbune@chromium.org>
3145 Support padding, margin and border for internal UA cue styling
3146 https://bugs.webkit.org/show_bug.cgi?id=110703
3148 Reviewed by Eric Carlson.
3150 For some particular user agent styling this allows the possibility
3151 of making the window around the cue text bigger to match some user
3152 styles (see CaptionUserPreferencesMac::captionsStyleSheetOverride).
3154 These properties *cannot* be set through by using the ::cue
3155 pseudo-element and, as specified, are used only internally.
3157 Test: media/track/track-cue-rendering-with-padding.html
3159 * css/mediaControls.css:
3160 (video::-webkit-media-text-track-display): Set the CSS box model
3161 to include in the specified width or height the values of
3162 padding / margin / border by using -webkit-box-sizing and avoid
3163 overflow over 100% width because of having these properties set.
3164 * rendering/RenderTextTrackCue.cpp:
3165 (WebCore::RenderTextTrackCue::isOutside): To not interfere with
3166 the regular WebVTT positioning algorithm, the check is done for
3167 the absolute content box.
3168 (WebCore::RenderTextTrackCue::repositionCueSnapToLinesSet): Added
3169 an extra adjustment step to accomodate vertical padding (and not
3170 overflow the cue container)
3172 2013-02-26 Eugene Klyuchnikov <eustas@chromium.org>
3174 Web Inspector: Save/load timeline should preserve DOMContentLoaded and Load event markers
3175 https://bugs.webkit.org/show_bug.cgi?id=110819
3177 Reviewed by Pavel Feldman.
3179 To create event divider TimelinePresentation model checks if record
3180 frame is main frame. With this patch check is moved to backend and
3181 result is saved in record to avoid incoherence.
3183 * inspector/InspectorTimelineAgent.cpp:
3184 (WebCore::InspectorTimelineAgent::didMarkDOMContentEvent):
3185 Record "isMainFrame" flag.
3186 (WebCore::InspectorTimelineAgent::didMarkLoadEvent): Ditto.
3187 * inspector/TimelineRecordFactory.cpp:
3188 (WebCore::TimelineRecordFactory::createMarkData):
3189 Added data object constructor.
3190 * inspector/TimelineRecordFactory.h: Ditto.
3191 * inspector/front-end/TimelinePresentationModel.js:
3192 (WebInspector.TimelinePresentationModel.isEventDivider):
3193 Use saved flag value instead of comparing with "current" main frame.
3195 2013-03-01 Eugene Klyuchnikov <eustas@chromium.org>
3197 Web Inspector: [DataGrid] Columns are misaligned after rows being refreshed.
3198 https://bugs.webkit.org/show_bug.cgi?id=111077
3200 Reviewed by Pavel Feldman.
3202 Analysis: DataGridNode.refresh removes all cells and then recreates them.
3203 The issue is that mandatory "corner" cell is not recreated.
3205 * inspector/front-end/DataGrid.js:
3206 (WebInspector.DataGridNode.prototype.refresh):
3207 Added "corner" cell restoration code.
3209 2013-02-28 Alexander Pavlov <apavlov@chromium.org>
3211 Web Inspector: Selector's raw start position in its line is considered to be 0 when computing UILocation
3212 https://bugs.webkit.org/show_bug.cgi?id=110732
3214 Reviewed by Vsevolod Vlasov.
3216 Test: inspector/styles/selector-line.html
3218 * inspector/ContentSearchUtils.cpp:
3219 (WebCore::ContentSearchUtils::sizetExtractor): Utility for binary search.
3220 (WebCore::ContentSearchUtils::textPositionFromOffset): Converts absolute raw text offset into line:column.
3221 (WebCore::ContentSearchUtils::getRegularExpressionMatchesByLines): Refactor.
3222 (WebCore::ContentSearchUtils::lineEndings): Factored out of getRegularExpressionMatchesByLines.
3223 (WebCore::ContentSearchUtils::buildObjectForSearchMatch): Drive-by: pass String by reference.
3224 * inspector/ContentSearchUtils.h:
3225 * inspector/Inspector.json: Use line:column for SourceRange boundaries rather than raw offsets.
3226 * inspector/InspectorStyleSheet.cpp:
3227 (ParsedStyleSheet::text): ASSERT(m_hasText).
3228 (WebCore::InspectorStyle::buildObjectForStyle): Supply the lineEndings argument.
3229 (WebCore::buildSourceRangeObject): Follow the protocol change.
3230 (WebCore::InspectorStyle::setPropertyText): Refactor.
3231 (WebCore::InspectorStyle::toggleProperty): Ditto.
3232 (WebCore::InspectorStyle::styleText): Ditto.
3233 (WebCore::InspectorStyle::populateAllProperties): Ditto.
3234 (WebCore::InspectorStyle::styleWithProperties): Convert relative property range offsets into absolute ones.
3235 (WebCore::InspectorStyle::extractSourceData): Factored out.
3236 (WebCore::InspectorStyle::newLineAndWhitespaceDelimiters): Supply the lineEndings argument.
3237 (WebCore::InspectorStyleSheet::buildObjectForSelectorList): Ditto.
3238 (WebCore::InspectorStyleSheet::lineEndings): Compute line endings for ordinary stylesheets.
3239 (WebCore::InspectorStyleSheetForInlineStyle::lineEndings): Ditto for bogus inline style stylesheets.
3240 * inspector/InspectorStyleSheet.h:
3241 * inspector/front-end/AuditRules.js: Removed the byte counting for unused CSS.
3242 * inspector/front-end/CSSStyleModel.js:
3243 (WebInspector.CSSRule): Set selector rawLocation based on the selectorList range or sourceLine.
3244 (WebInspector.CSSRule.prototype._setRawLocation): Added.
3245 * inspector/front-end/SASSSourceMapping.js:
3246 (WebInspector.SASSSourceMapping.prototype._bindUISourceCode): Fix call order when binding scss sourcecodes.
3248 2013-03-01 Benjamin Poulain <benjamin@webkit.org>
3250 Get rid of two silly static null Strings
3251 https://bugs.webkit.org/show_bug.cgi?id=111151
3253 Reviewed by Eric Seidel.
3255 We have a global null String through nullAtom, there is no need
3256 for local static null strings.
3259 (WebCore::Page::groupName):
3260 * rendering/RenderListItem.cpp:
3261 (WebCore::RenderListItem::markerText):
3263 2013-03-01 Mark Rowe <mrowe@apple.com>
3267 * platform/graphics/avfoundation/objc/WebCoreAVFResourceLoader.h: Add a missing #include.
3269 2013-03-01 Andrey Lushnikov <lushnikov@chromium.org>
3271 Web Inspector: fix code-mirror experiment to work in debug mode
3272 https://bugs.webkit.org/show_bug.cgi?id=111064
3274 Reviewed by Pavel Feldman.
3276 No new tests: no change in behaviour.
3278 Improve importScript function to try load a script from the root
3279 directory iff its loading from the given path failed.
3281 * inspector/front-end/utilities.js:
3283 2013-03-01 Andrey Adaikin <aandrey@chromium.org>
3285 Web Inspector: [Canvas] capture a WebGL extension by it's name in lower case
3286 https://bugs.webkit.org/show_bug.cgi?id=110745
3288 Reviewed by Pavel Feldman.
3290 WebGL's getExtension accepts a name that is tested against an ASCII case-insensitive match.
3291 Just force lower case for extension names.
3293 * inspector/InjectedScriptCanvasModuleSource.js:
3296 2013-03-01 Mike West <mkwst@chromium.org>
3298 XSSAuditor should use threadSafeMatch when relevant.
3299 https://bugs.webkit.org/show_bug.cgi?id=111099
3301 Reviewed by Adam Barth.
3303 Given the work on breaking parsing out into a background thread, we
3304 should compare QualifiedNames in a thread-safe manner. Rather than
3305 casting the result of QualifiedName::localName to a String, we can
3306 call out to threadSafeMatch to do the comparison.
3308 This patch leaves one use of equalIgnoringNullity in
3309 XSSAuditor::findAttributeWithName. That usage seems safe, since we're
3310 creating a new string against which to compare.
3312 * html/parser/XSSAuditor.cpp:
3314 Replace call to equalIgnoringNullity(Vector<UChar...>, String)
3315 with threadSafeMatch(String, QualifiedName).
3317 2013-02-28 Keishi Hattori <keishi@webkit.org>
3319 Add calendar table view for the new calendar picker
3320 https://bugs.webkit.org/show_bug.cgi?id=110970
3322 Reviewed by Kent Tamura.
3324 The calendar table that will be used in the new calendar picker (Bug 109439).
3326 No new tests. Code is not used yet.
3328 * Resources/pagepopups/calendarPicker.js:
3329 (DayCell): Cell which represents one day in the calendar.
3330 (DayCell.recycleOrCreate):
3331 (DayCell.prototype._recycleBin):
3332 (DayCell.prototype.throwAway):
3333 (DayCell.prototype.setHighlighted): Sets the highlighted class on the element.
3334 (DayCell.prototype.setDisabled): Sets the disabled class on the element.
3335 (DayCell.prototype.setIsInCurrentMonth): Sets the current-month class on the element.
3336 (DayCell.prototype.setIsToday): Sets the today class on the element.
3337 (DayCell.prototype.reset): Resets the day cell to be reused.
3338 (WeekNumberCell): Cell used for the week number column.
3339 (WeekNumberCell.prototype._recycleBin):
3340 (WeekNumberCell.recycleOrCreate):
3341 (WeekNumberCell.prototype.reset):
3342 (WeekNumberCell.prototype.throwAway):
3343 (WeekNumberCell.prototype.setHighlighted): Sets the highlighted class on the element.
3344 (WeekNumberCell.prototype.setDisabled): Sets the disabled class on the element.
3345 (CalendarTableHeaderView): Header for the calendar table. Contains the column labels.
3346 (CalendarRowCell): Row containing day cells and maybe a week number cell.
3347 (CalendarRowCell.prototype._recycleBin):
3348 (CalendarRowCell.prototype.reset):
3349 (CalendarRowCell.prototype.throwAway):
3350 (CalendarTableView): A list view showing a grid of days.
3351 (CalendarTableView.prototype.rowAtScrollOffset): Returns the row number currently at the scroll offset.
3352 (CalendarTableView.prototype.scrollOffsetForRow): Returns the current scroll offset for the given row.
3353 (CalendarTableView.prototype.onClick): If the click is on a DayCell or WeekNumberCell, select the appropriate date range.
3354 (CalendarTableView.prototype.onMouseOver): If the click is on a DayCell or WeekNumberCell, highlight the appropriate date range.
3355 (CalendarTableView.prototype.onMouseOut):
3356 (CalendarTableView.prototype.prepareNewCell): Prepares a new row cell by recycling or creating a new one.
3357 (CalendarTableView.prototype.height): Returns the height of the view in pixels.
3358 (CalendarTableView.prototype.setHeight): Sets the height of the view in pixels.
3359 (CalendarTableView.prototype.scrollToMonth): Scrolls to reveal the given month.
3360 (CalendarTableView.prototype.dayAtColumnAndRow): Day at a given column and row. Column number doesn't count week number column.
3361 (CalendarTableView.prototype.columnAndRowForDay): Column and row for the given day.
3362 (CalendarTableView.prototype.updateCells): Update the position and appearance of the cell.s
3363 (CalendarTableView.prototype.prepareNewDayCell): Prepares a new day cell. The cell is registered to this._dayCells.
3364 (CalendarTableView.prototype.prepareNewWeekNumberCell): Prepares a new week number cell. The cell is registered to this._weekNumberCells.
3365 (CalendarTableView.prototype.throwAwayDayCell): The cell is unregistered from this._dayCells.
3366 (CalendarTableView.prototype.throwAwayWeekNumberCell): The cell is unregistered from this._weekNumberCells.
3368 2013-02-28 Alexey Proskuryakov <ap@apple.com>
3370 Reduce amount of rebuilding when touching networking headers
3371 https://bugs.webkit.org/show_bug.cgi?id=111035
3373 Reviewed by Eric Seidel.
3375 This uses a number of common unsurprising techniques. One interesting observation
3376 is that including CachedResource related headers is very expensive. We can usually
3377 get away with their Client counterparts, and with CachedResourceHandle.
3381 Don't include FrameLoader, greatly reducing include graph for most non-loader files.
3382 This required making Frame::init() non-inline - I'm not sure why it ever was.
3384 * loader/FrameLoader.cpp:
3385 * loader/FrameLoader.h:
3386 Even though FrameLoader is logically on loading side of WebCore, it's included in
3387 too many places. Not including PolicyChecker.h and ResourceHandle.h was among the
3388 largest wins. As a future improvement, we should probably convert other members
3391 * css/CSSCrossfadeValue.h: Initializing CachedResourceHandle with 0 requires a
3392 definition of a class it holds, but default construction does not.
3394 * loader/CrossOriginAccessControl.h: This file among others only needs ResourceHandleTypes.h,
3395 not ResourceHandle.h. This header is semi-recent, so not all include sites were updated.
3397 * loader/cache/CachedFont.h:
3398 * loader/cache/CachedFontClient.h: Added.
3399 * loader/cache/CachedRawResource.h:
3400 * loader/cache/CachedRawResourceClient.h: Added.
3401 * loader/cache/CachedSVGDocument.h:
3402 * loader/cache/CachedSVGDocumentClient.h: Added.
3403 These types were defining client types in the same headers, making it impossible
3404 to avoid including networking headers through CachedResource. Moved clients into
3407 * plugins/PluginStream.h:
3408 * plugins/PluginStreamClient.h: Added.
3409 Similar situation here.
3411 * loader/cache/CachedResourceHandle.cpp:
3412 * loader/cache/CachedResourceHandle.h:
3413 Moved functions that need to know about CachedResource to .cpp file. This is another
3414 huge win. Added a destructor, so that CachedResource woudn't be needed in all files
3415 that include CachedResourceHandle.
3417 * loader/cache/CachedSVGDocumentReference.cpp: Added.
3418 * loader/cache/CachedSVGDocumentReference.h:
3419 Moved constructor and virtual function implementations to a .cpp file - they need
3420 not inlining, and this lets us avoid including CachedSVGDocument.h in the header.
3422 * platform/graphics/filters/FilterOperation.cpp:
3423 * platform/graphics/filters/FilterOperation.h:
3424 Avoid including CachedSVGDocumentReference.h. This is not such a big win now that
3425 CachedSVGDocumentReference.h itself is smaller, but FilterOperation is so clearly
3426 rendering code that it seems best to cut any ties with resources and loading.
3427 Added a virtual destrutor in .cpp file, because inline destructors in polymorphic
3428 classes are generally harmful (due to code bloat).
3430 * plugins/PluginRequest.h: Added.
3431 * plugins/PluginView.h:
3432 Moved PluginRequest into a separate file, it was out of place in a view hierarchy
3435 * rendering/RenderImageResource.cpp: