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