4331f67ceb199cee746341ba757e786ead4b35a9
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2011-11-19  David Barr  <davidbarr@chromium.org>
2
3         REGRESSION(r98542): Chromium: CSS text is rendered on page
4         https://bugs.webkit.org/show_bug.cgi?id=71703
5
6         Reviewed by Antti Koivisto.
7
8         Matched UA declarations uncacheable when using simpleDefaultStyleSheet.
9
10         Test: fast/css/style-tag-display-none.html
11
12         * css/CSSStyleSelector.cpp:
13         (WebCore::CSSStyleSelector::matchUARules):
14
15 2011-11-19  Jay Civelli  <jcivelli@chromium.org>
16
17         When loading a MHTML document, make sure we set the base URL before
18         we notify the frame was committed (so the document has the right base
19         URL when the notification happens). 
20         https://bugs.webkit.org/show_bug.cgi?id=72788
21
22         Reviewed by Adam Barth.
23
24         * loader/FrameLoader.cpp:
25         (WebCore::FrameLoader::receivedFirstData):
26
27 2011-11-19  Adam Barth  <abarth@webkit.org>
28
29         Integrate Source/WTF with the Chromium build system
30         https://bugs.webkit.org/show_bug.cgi?id=72790
31
32         Reviewed by Eric Seidel.
33
34         Add a dependency on the new WTF.
35
36         * WebCore.gyp/WebCore.gyp:
37
38 2011-11-18  Takashi Toyoshima  <toyoshim@chromium.org>
39
40         [Chromium] [WebSocket] export WebSocketChannel interface for plugins
41         https://bugs.webkit.org/show_bug.cgi?id=72016
42
43         Reviewed by Darin Fisher.
44
45         Add a interface to send raw binary data.
46         This interface is used by WebWebSocketChannel implementation
47         in WebKit API.
48
49         No new tests because just export a interface.
50
51         * websockets/WebSocketChannel.cpp:
52         (WebCore::WebSocketChannel::send):
53         * websockets/WebSocketChannel.h:
54
55 2011-11-18  Vineet Chaudhary  <vineet.chaudhary@motorola.com>
56
57         https://bugs.webkit.org/show_bug.cgi?id=72591
58         Remove document.width / document.height
59
60         Reviewed by Darin Adler.
61
62         Removed document.width/document.height from JS bindings,
63         but keeping the same for ObjC bindings. Also it should use
64         document.body.clientWidth and document.body.clientHeight instead.
65
66         * html/HTMLDocument.idl:
67
68 2011-11-18  Martin Robinson  <mrobinson@igalia.com>
69
70         Fix the GTK+ build.
71
72         * page/Navigator.idl: Properly disable the webkitGamepads API if gamepad
73         isn't enabled at compile time.
74
75 2011-11-18  Daniel Bates  <dbates@rim.com>
76
77         Add CMake build infrastructure for the BlackBerry port
78         https://bugs.webkit.org/show_bug.cgi?id=72768
79
80         Reviewed by Antonio Gomes.
81
82         * CMakeLists.txt: At this time the BlackBerry port doesn't support generating
83           DOM bindings from the SVG IDLs. See WebKit bug #72773.
84         * PlatformBlackBerry.cmake: Added.
85
86 2011-11-18  Sheriff Bot  <webkit.review.bot@gmail.com>
87
88         Unreviewed, rolling out r100826.
89         http://trac.webkit.org/changeset/100826
90         https://bugs.webkit.org/show_bug.cgi?id=72786
91
92         Broke Chromium Mac build (Requested by aklein on #webkit).
93
94         * page/ChromeClient.h:
95         * page/FrameView.cpp:
96         * page/FrameView.h:
97         * platform/ScrollView.cpp:
98         (WebCore::ScrollView::wheelEvent):
99         * platform/ScrollView.h:
100         * platform/ScrollableArea.h:
101         (WebCore::ScrollableArea::scrollbarStyleChanged):
102         * platform/mac/ScrollAnimatorMac.mm:
103         (WebCore::ScrollAnimatorMac::updateScrollerStyle):
104
105 2011-11-18  Alpha Lam  <hclam@chromium.org>
106
107         [chromium] composited layers are blurry with a zoom-in page scale factor
108         https://bugs.webkit.org/show_bug.cgi?id=71225
109
110         Reviewed by James Robinson.
111
112         Pass contents scale factor to the compositor such that it can:
113         1. Adjust contentBounds() of the compositoer layers with content scale.
114         2. Apply the content scale in the painter for texture update in better resolution.
115         3. Apply the content scale to the dirty rect in CanvasLayerTextureUpdater.
116
117         This change fixed blurry problem for all tiled layer types and is not limited to
118         position:fixed layers.
119
120         Tests: compositing/geometry/fixed-position-composited-page-scale-down.html
121                compositing/geometry/fixed-position-composited-page-scale.html
122                compositing/geometry/fixed-position-iframe-composited-page-scale-down.html
123                compositing/geometry/fixed-position-iframe-composited-page-scale.html
124                compositing/geometry/fixed-position-transform-composited-page-scale-down.html
125                compositing/geometry/fixed-position-transform-composited-page-scale.html
126
127         * platform/graphics/chromium/GraphicsLayerChromium.cpp:
128         (WebCore::GraphicsLayerChromium::setTransform):
129         (WebCore::GraphicsLayerChromium::updateLayerPreserves3D):
130         (WebCore::GraphicsLayerChromium::updateContentsScale):
131         (WebCore::GraphicsLayerChromium::contentsScale):
132         (WebCore::GraphicsLayerChromium::deviceOrPageScaleFactorChanged):
133         * platform/graphics/chromium/GraphicsLayerChromium.h:
134         * platform/graphics/chromium/ImageLayerChromium.cpp:
135         (WebCore::ImageLayerTextureUpdater::prepareToUpdate):
136         (WebCore::ImageLayerChromium::needsContentsScale):
137         * platform/graphics/chromium/ImageLayerChromium.h:
138         * platform/graphics/chromium/LayerChromium.cpp:
139         (WebCore::LayerChromium::LayerChromium):
140         (WebCore::LayerChromium::setContentsScale):
141         * platform/graphics/chromium/LayerChromium.h:
142         (WebCore::LayerChromium::needsContentsScale):
143         (WebCore::LayerChromium::contentsScale):
144         * platform/graphics/chromium/LayerTextureUpdater.h:
145         * platform/graphics/chromium/LayerTextureUpdaterCanvas.cpp:
146         (WebCore::LayerTextureUpdaterCanvas::paintContents):
147         (WebCore::LayerTextureUpdaterBitmap::prepareToUpdate):
148         (WebCore::LayerTextureUpdaterSkPicture::prepareToUpdate):
149         * platform/graphics/chromium/LayerTextureUpdaterCanvas.h:
150         * platform/graphics/chromium/TiledLayerChromium.cpp:
151         (WebCore::TiledLayerChromium::needsContentsScale):
152         (WebCore::TiledLayerChromium::contentBounds):
153         (WebCore::TiledLayerChromium::prepareToUpdate):
154         * platform/graphics/chromium/TiledLayerChromium.h:
155
156 2011-11-18  Igor Oliveira  <igor.oliveira@openbossa.org>
157
158         [WK2][Qt] Move Accelerated Composite animations to UIProcess
159         https://bugs.webkit.org/show_bug.cgi?id=72753
160
161         Add helper method to synchronize animations in TextureMapper.
162
163         Reviewed by Noam Rosenthal.
164
165         * platform/graphics/texmap/TextureMapperNode.cpp:
166         (WebCore::TextureMapperNode::syncAnimationsRecursively):
167         * platform/graphics/texmap/TextureMapperNode.h:
168
169 2011-11-18  Scott Graham  <scottmg@chromium.org>
170
171         IDL changes for gamepad support
172         https://bugs.webkit.org/show_bug.cgi?id=71753
173
174         Reviewed by Adam Barth.
175
176         IDL changes and associated plumbing to expose list of gamepad objects
177         on navigator object (per current spec). Full patch is
178         https://bugs.webkit.org/show_bug.cgi?id=69451. Only basic existence
179         test until more plumbing in future patches.
180
181         Test: gamepad/gamepad-api.html
182
183         * WebCore.gypi:
184         * bindings/generic/RuntimeEnabledFeatures.h:
185         (WebCore::RuntimeEnabledFeatures::setWebkitGamepadsEnabled):
186         (WebCore::RuntimeEnabledFeatures::webkitGamepadsEnabled):
187         * page/Gamepad.cpp: Added.
188         (WebCore::Gamepad::Gamepad):
189         (WebCore::Gamepad::axes):
190         (WebCore::Gamepad::buttons):
191         (WebCore::Gamepad::~Gamepad):
192         * page/Gamepad.h: Added.
193         * page/Gamepad.idl: Added.
194         * page/GamepadList.cpp: Added.
195         (WebCore::GamepadList::~GamepadList):
196         (WebCore::GamepadList::set):
197         (WebCore::GamepadList::length):
198         (WebCore::GamepadList::item):
199         * page/GamepadList.h: Added.
200         (WebCore::GamepadList::create):
201         (WebCore::GamepadList::GamepadList):
202         * page/GamepadList.idl: Added.
203         * page/Navigator.cpp:
204         (WebCore::Navigator::webkitGamepads):
205         * page/Navigator.h:
206         * page/Navigator.idl:
207
208 2011-11-18  Sheriff Bot  <webkit.review.bot@gmail.com>
209
210         Unreviewed, rolling out r100693.
211         http://trac.webkit.org/changeset/100693
212         https://bugs.webkit.org/show_bug.cgi?id=72779
213
214         This patch caused a rendering regression (see bug 72770)
215         (Requested by philip__ on #webkit).
216
217         * rendering/RenderObject.cpp:
218         (WebCore::RenderObject::setStyle):
219         * rendering/style/RenderStyle.cpp:
220         (WebCore::RenderStyle::diff):
221
222 2011-11-18  Simon Fraser  <simon.fraser@apple.com>
223
224         Reflection on composited element doesn't update if the element changes to show no content
225         https://bugs.webkit.org/show_bug.cgi?id=72774
226
227         Reviewed by Chris Marrin.
228         
229         When a style change results in a reflected element losing its backing store,
230         we need to clear the backing stores on the layer clones as well.
231
232         Test: compositing/reflections/become-simple-composited-reflection.html
233
234         * platform/graphics/ca/GraphicsLayerCA.cpp:
235         (WebCore::GraphicsLayerCA::updateLayerDrawsContent):
236
237 2011-11-18  Daniel Cheng  <dcheng@chromium.org>
238
239         [chromium] Use correct backing store for ChromiumDataObject in pasteboard writes.
240         https://bugs.webkit.org/show_bug.cgi?id=72767
241
242         Reviewed by Tony Chang.
243
244         Covered by existing tests.
245
246         * editing/chromium/EditorChromium.cpp:
247         (WebCore::Editor::newGeneralClipboard):
248         * page/chromium/EventHandlerChromium.cpp:
249         (WebCore::EventHandler::createDraggingClipboard):
250         * platform/chromium/ChromiumDataObject.cpp:
251         (WebCore::ChromiumDataObject::types):
252         (WebCore::ChromiumDataObject::getData):
253         (WebCore::ChromiumDataObject::containsFilenames):
254         (WebCore::ChromiumDataObject::ChromiumDataObject):
255         * platform/chromium/ChromiumDataObject.h:
256         (WebCore::ChromiumDataObject::createFromPasteboard):
257         (WebCore::ChromiumDataObject::create):
258         (WebCore::ChromiumDataObject::storageMode):
259         * platform/chromium/ClipboardChromium.cpp:
260         (WebCore::ClipboardChromium::hasData):
261
262 2011-11-18  Chris Evans  <cevans@google.com>
263
264         Crash with ranges across a detached, reparented node tree
265         https://bugs.webkit.org/show_bug.cgi?id=72757
266
267         Reviewed by Adam Barth.
268
269         Test: fast/dom/move-detached-child-in-range.html
270
271         * dom/RangeBoundaryPoint.h:
272         (WebCore::RangeBoundaryPoint::childBefore): protect the raw child node from getting pulled from under us.
273
274 2011-11-18  Beth Dakin  <bdakin@apple.com>
275
276         https://bugs.webkit.org/show_bug.cgi?id=72551
277         When the recommended scrollbar style changes, WKView's tracking options should 
278         adjust accordingly
279         -and corresponding-
280         <rdar://problem/10409328>
281
282         Reviewed by Darin Adler.
283
284         This new ChromeClient function is called when the recommended scrollbar style 
285         changes. This way, WebKit can respond to the change by adjusting its mouse 
286         tracking.
287         * page/ChromeClient.h:
288         (WebCore::ChromeClient::recommendedScrollbarStyleDidChange):
289
290         Existing ScrollableArea function scrollbarStyleChanged() now takes an int 
291         indicating the new scrollbar style and a bool indicating whether it is necessary 
292         to force an update. It used to be the case that this function was ONLY used to 
293         force an update (and only called when an updated was needed), but now that it must 
294         also call into the ChromeClient, it is necessary to include a bool tracking 
295         whether we need to force an update. New implementation on FrameView is responsible 
296         for calling ChromeClient, and then that calls into the pre-existing ScrollView 
297         function for the forceUpdate part.
298         * page/FrameView.cpp:
299         (WebCore::FrameView::scrollbarStyleChanged):
300         * page/FrameView.h:
301         * platform/ScrollView.cpp:
302         (WebCore::ScrollView:: scrollbarStyleChanged):
303         * platform/ScrollView.h:
304         * platform/ScrollableArea.h:
305         (WebCore::ScrollableArea::scrollbarStyleChanged):
306         * platform/mac/ScrollAnimatorMac.mm:
307         (WebCore::ScrollAnimatorMac::updateScrollerStyle):
308
309 2011-11-18  Kelly Norton  <knorton@google.com>
310
311         Fixes several more void functions in RenderObject that return values.
312         https://bugs.webkit.org/show_bug.cgi?id=72750
313
314         Reviewed by Adam Barth.
315
316         * rendering/RenderBlock.cpp:
317         (WebCore::RenderBlock::updateBeforeAfterContent):
318         (WebCore::RenderBlock::addChildToContinuation):
319         (WebCore::RenderBlock::addChildToAnonymousColumnBlocks):
320         (WebCore::RenderBlock::addChild):
321         (WebCore::RenderBlock::addChildIgnoringContinuation):
322
323 2011-11-18  Shawn Singh  <shawnsingh@chromium.org>
324
325         [chromium] Add some useful text to existing debug dump
326         https://bugs.webkit.org/show_bug.cgi?id=72576
327
328         Reviewed by James Robinson.
329
330         No new tests needed.
331
332         * platform/graphics/chromium/cc/CCLayerImpl.cpp:
333         (WebCore::CCLayerImpl::dumpLayerProperties):
334         * platform/graphics/chromium/cc/CCRenderSurface.cpp:
335         (WebCore::CCRenderSurface::dumpSurface):
336
337 2011-11-18  Xiaomei Ji  <xji@chromium.org>
338
339         REGRESSION: rtl horizontal scrollbar / resize bug - Body shifts on resize when scrolled all the way to the left
340         https://bugs.webkit.org/show_bug.cgi?id=70395
341
342         Reviewed by Tony Chang.
343
344         This patch fixes the problem in Mac and Chromium Mac.
345    
346         The existing test fast/dom/rtl-scroll-to-leftmost-and-resize.html seems does not really work in Mac DRT
347         (the browswer window is not resized). It works in Chromium-Mac. And Chromium-Mac's code
348         is forked from Mac.
349
350         * platform/chromium/ScrollAnimatorChromiumMac.mm:
351         (WebCore::ScrollAnimatorChromiumMac::immediateScrollToPoint):
352         * platform/mac/ScrollAnimatorMac.mm:
353         (WebCore::ScrollAnimatorMac::immediateScrollToPoint):
354
355 2011-11-18  Martin Robinson  <mrobinson@igalia.com>
356
357         REGRESSION (r99924): broke 2 pasteboard tests on GTK
358         https://bugs.webkit.org/show_bug.cgi?id=72131
359
360         Reviewed by Tony Chang.
361
362         * platform/gtk/ClipboardGtk.cpp:
363         (WebCore::ClipboardGtk::clearData): Call clearAll now.
364         (WebCore::ClipboardGtk::clearAllData): Call clearAllExceptFilenames now.
365         * platform/gtk/DataObjectGtk.cpp:
366         (WebCore::DataObjectGtk::clearAllExceptFilenames): Renamed from clear.
367         (WebCore::DataObjectGtk::clearAll): Added this method which also clear filenames.
368         * platform/gtk/DataObjectGtk.h:
369         * platform/gtk/PasteboardGtk.cpp: Call clear before setting new clipboard data.
370         (WebCore::Pasteboard::writeSelection): Ditto.
371         (WebCore::Pasteboard::writePlainText): Ditto.
372         (WebCore::Pasteboard::writeURL): Ditto.
373         (WebCore::Pasteboard::writeImage): Ditto.
374         * platform/gtk/PasteboardHelper.cpp:
375         (WebCore::clearClipboardContentsCallback): Use the clearAll method now.
376
377 2011-11-18  Vineet Chaudhary  <vineet.chaudhary@motorola.com>
378
379         Access key should work on all elements.
380         https://bugs.webkit.org/show_bug.cgi?id=71854
381
382         Reviewed by Ryosuke Niwa.
383
384         All HTML elements can have the accesskey content attribute set.
385         Specification http://dev.w3.org/html5/spec/Overview.html#the-accesskey-attribute
386         Adding "accessKey" attribute to HTMLElement.idl file as [Reflect].
387
388         Test: fast/forms/access-key-for-all-elements.html
389
390         * bindings/objc/PublicDOMInterfaces.h: Moved properties form subclass to base class.
391         * html/BaseButtonInputType.cpp: 
392         (WebCore::BaseButtonInputType::accessKeyAction): Renamed variable sendToAnyElement to sendMouseEvents.
393         * html/BaseButtonInputType.h: Ditto
394         * html/BaseCheckableInputType.cpp:
395         (WebCore::BaseCheckableInputType::accessKeyAction): Ditto
396         * html/BaseCheckableInputType.h: Ditto
397         * html/HTMLAnchorElement.cpp:
398         (WebCore::HTMLAnchorElement::accessKeyAction): Ditto
399         * html/HTMLAnchorElement.h: Ditto
400         * html/HTMLAnchorElement.idl: Removed redundant IDL attribute entries.
401         * html/HTMLAreaElement.idl: Removed redundant IDL attribute entries.
402         * html/HTMLButtonElement.cpp:
403         (WebCore::HTMLButtonElement::accessKeyAction): Renamed variable sendToAnyElement to sendMouseEvents.
404         * html/HTMLButtonElement.h: Ditto
405         * html/HTMLButtonElement.idl: Removed redundant IDL attribute entries.
406         * html/HTMLElement.cpp:
407         (WebCore::HTMLElement::accessKeyAction): Renamed variable sendToAnyElement to sendMouseEvents.
408         If the element does not have a defined activation behavior, fire a click event at the element.
409         * html/HTMLElement.h: Ditto
410         * html/HTMLElement.idl: Added accessKey IDL attribute.
411         * html/HTMLInputElement.cpp:
412         (WebCore::HTMLInputElement::accessKeyAction): Renamed variable sendToAnyElement to sendMouseEvents.
413         * html/HTMLInputElement.h: Ditto
414         * html/HTMLInputElement.idl: Removed redundant IDL attribute entries.
415         * html/HTMLLabelElement.cpp:
416         (WebCore::HTMLLabelElement::accessKeyAction): Renamed variable sendToAnyElement to sendMouseEvents.
417         * html/HTMLLabelElement.h: Ditto
418         * html/HTMLLabelElement.idl: Removed redundant IDL attribute entries.
419         * html/HTMLLegendElement.cpp:
420         (WebCore::HTMLLegendElement::accessKeyAction): Renamed variable sendToAnyElement to sendMouseEvents.
421         * html/HTMLLegendElement.h: Ditto
422         * html/HTMLLegendElement.idl: Removed redundant IDL attribute entries.
423         * html/HTMLOptGroupElement.h: Renamed variable sendToAnyElement to sendMouseEvents.
424         * html/HTMLSelectElement.cpp:
425         (WebCore::HTMLSelectElement::accessKeyAction): Ditto
426         * html/HTMLSelectElement.h: Ditto
427         * html/HTMLTextAreaElement.h: Ditto
428         * html/HTMLTextAreaElement.idl: Removed redundant IDL attribute entries.
429         * html/HiddenInputType.h: Renamed variable sendToAnyElement to sendMouseEvents.
430         * html/InputType.h: Ditto
431         * html/RangeInputType.cpp:
432         (WebCore::RangeInputType::accessKeyAction): Ditto
433         * html/RangeInputType.h: Ditto
434
435 2011-11-18  Simon Fraser  <simon.fraser@apple.com>
436
437         Appearance of compound transform animations under apps linked on SnowLeopard is incorrect
438         https://bugs.webkit.org/show_bug.cgi?id=72641
439         and
440         <rdar://problem/10314267>
441
442         Reviewed by Dean Jackson.
443
444         GraphicsLayerCA contains a "linked on or after" check to account for a bug in
445         Core Animation on SnowLeopard and earlier, which is that CA would apply the list
446         of animations in reverse order.
447         
448         Our previous fix was incorrect, because it only adjusted the 'additive' property
449         of the animation list based on ordering, rather than flipping the entire list.
450         This change reverses the list of animations before giving them to CA, which fixes
451         the bug.
452                 
453         Test: animations/additive-transform-animations.html
454
455         * platform/graphics/ca/GraphicsLayerCA.cpp:
456         (WebCore::GraphicsLayerCA::appendToUncommittedAnimations):
457         (WebCore::GraphicsLayerCA::createTransformAnimationsFromKeyframes):
458         * platform/graphics/ca/GraphicsLayerCA.h:
459
460 2011-11-18  Tim Horton  <timothy_horton@apple.com>
461
462         -webkit-cross-fade rendered incorrectly in overflow divs
463         https://bugs.webkit.org/show_bug.cgi?id=72693
464         <rdar://problem/10468564>
465
466         Reviewed by Simon Fraser.
467
468         Respect the desired source rectangle when rendering the cross-fade.
469
470         Test: css3/images/cross-fade-overflow-position.html
471
472         * platform/graphics/CrossfadeGeneratedImage.cpp:
473         (WebCore::CrossfadeGeneratedImage::drawCrossfade):
474         (WebCore::CrossfadeGeneratedImage::draw):
475         (WebCore::CrossfadeGeneratedImage::drawPattern):
476         * platform/graphics/CrossfadeGeneratedImage.h:
477
478 2011-11-18  Raphael Kubo da Costa  <kubo@profusion.mobi>
479
480         Unreviewed build fix; r100686 broke the EFL build when Geolocation
481         support is enabled.
482
483         * platform/efl/GeolocationServiceEfl.cpp: Only declare
484         s_factoryFunction if CLIENT_BASED_GEOLOCATION is off, otherwise it is
485         also declared in GeolocationService.cpp.
486
487 2011-11-18  Igor Oliveira  <igor.oliveira@openbossa.org>
488
489         [TextureMapper] computePerspectiveTransformIfNeeded is called twice in TextureMapperNode::syncCompositingState
490         https://bugs.webkit.org/show_bug.cgi?id=72727
491
492         TextureMapperNode::computeAllTransforms already has a call to TextureMapperNode::computePerspectiveTransformIfNeeded,
493         so it does not need to be called again after TextureMapperNode::computeAllTransforms.
494
495         Reviewed by Noam Rosenthal.
496
497         * platform/graphics/texmap/TextureMapperNode.cpp:
498         (WebCore::TextureMapperNode::syncCompositingState):
499
500 2011-11-18  Mihnea Ovidenie  <mihnea@adobe.com>
501
502         Fix compilation warning in ComplexTextControllerCoreText.mm
503         https://bugs.webkit.org/show_bug.cgi?id=72702
504
505         Reviewed by Andreas Kling.
506
507         No functionality changed, so no new tests.
508
509         * platform/graphics/mac/ComplexTextControllerCoreText.mm:
510         (WebCore::ComplexTextController::collectComplexTextRunsForCharactersCoreText):
511
512 2011-11-18  Pavel Feldman  <pfeldman@google.com>
513
514         Not reviewed: restore front-end compilability via updating externs and JS generator.
515
516         * inspector/front-end/ElementsPanel.js:
517         (WebInspector.ElementsPanel.prototype.jumpToNextSearchResult):
518         (WebInspector.ElementsPanel.prototype.jumpToPreviousSearchResult):
519         * inspector/front-end/externs.js:
520         (WebInspector.showPanelForAnchorNavigation):
521         * inspector/generate-protocol-externs:
522
523 2011-11-17  Pavel Feldman  <pfeldman@google.com>
524
525         Web Inspector: dispatch messages from the front-end to the backend asynchronously.
526         https://bugs.webkit.org/show_bug.cgi?id=72621
527
528         We should align the way we dispatch messages from the front-end to backend across the environments:
529           - WebKit has it synchronoulsly
530           - Chromium has it asynchronously
531           - Remote debugging has it asynchronously
532         Making it asynchronous made a number of flaky Qt tests pass.
533
534         Tests uncovered console agent problem that was also fixed.
535
536         Reviewed by Yury Semikhatsky.
537
538         * inspector/InspectorConsoleAgent.cpp:
539         (WebCore::InspectorConsoleAgent::clearFrontend):
540         * inspector/InspectorFrontendClient.h:
541         * inspector/InspectorFrontendClientLocal.cpp:
542         (WebCore::InspectorBackendDispatchTask::InspectorBackendDispatchTask):
543         (WebCore::InspectorBackendDispatchTask::dispatch):
544         (WebCore::InspectorBackendDispatchTask::reset):
545         (WebCore::InspectorBackendDispatchTask::onTimer):
546         (WebCore::InspectorFrontendClientLocal::InspectorFrontendClientLocal):
547         (WebCore::InspectorFrontendClientLocal::windowObjectCleared):
548         (WebCore::InspectorFrontendClientLocal::sendMessageToBackend):
549         * inspector/InspectorFrontendClientLocal.h:
550
551 2011-11-18  Iain Merrick  <husky@google.com>
552
553         [chromium] Pass screen refresh rate into compositor.
554         https://bugs.webkit.org/show_bug.cgi?id=71040
555
556         Reviewed by Tony Gentilcore.
557
558         Covered by CCLayerTreeHostTest.
559
560         * platform/PlatformScreen.h:
561         * platform/chromium/PlatformScreenChromium.cpp:
562         (WebCore::screenRefreshRate):
563         * platform/chromium/PlatformSupport.h:
564         * platform/graphics/chromium/cc/CCLayerTreeHost.h:
565         (WebCore::CCSettings::CCSettings):
566         * platform/graphics/chromium/cc/CCThreadProxy.cpp:
567         (WebCore::CCThreadProxy::initializeImplOnImplThread):
568
569 2011-11-18  Alexandru Chiculita  <achicu@adobe.com>
570
571         [CSSShaders] Implement the computed style for mesh parameters of the custom() filter
572         https://bugs.webkit.org/show_bug.cgi?id=72478
573
574         Reviewed by Dean Jackson.
575
576         Added parsing and computed style for the mesh rows, columns, mesh box type 
577         (filter-box, border-box, content-box and padding-box) and the detached mode.
578         
579         Also fixed a case where "custom(none, 10, 10 filter-box)" was incorrectly
580         treated as "custom(none, 10)".
581
582         * css/CSSComputedStyleDeclaration.cpp:
583         (WebCore::CSSComputedStyleDeclaration::valueForFilter):
584         * css/CSSParser.cpp:
585         (WebCore::CSSParser::parseCustomFilter): Fixed a case where invalid syntax was parsed as correct syntax.
586         * css/CSSPrimitiveValueMappings.h:
587         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
588         (WebCore::CSSPrimitiveValue::operator CustomFilterOperation::MeshBoxType):
589         * css/CSSStyleSelector.cpp:
590         (WebCore::CSSStyleSelector::createCustomFilterOperation):
591         * css/CSSValueList.h:
592         (WebCore::CSSValueListIterator::isPrimitiveValue):
593         * platform/graphics/filters/CustomFilterOperation.h:
594
595 2011-11-18  Adam Barth  <abarth@webkit.org>
596
597         Remove unneeded include (and ifdef) from V8DOMWindowCustom.cpp
598         https://bugs.webkit.org/show_bug.cgi?id=72705
599
600         Reviewed by Eric Seidel.
601
602         Death to ifdefs!
603
604         * bindings/v8/custom/V8DOMWindowCustom.cpp:
605
606 2011-11-18  Adam Barth  <abarth@webkit.org>
607
608         Move some mediastream related files into the mediastream directory
609         https://bugs.webkit.org/show_bug.cgi?id=72695
610
611         Reviewed by Eric Seidel.
612
613         Just moving the files to the proper directory.
614
615         * GNUmakefile.list.am:
616         * WebCore.gypi:
617         * mediastream/NavigatorUserMediaError.h: Renamed from Source/WebCore/page/NavigatorUserMediaError.h.
618         (WebCore::NavigatorUserMediaError::create):
619         (WebCore::NavigatorUserMediaError::~NavigatorUserMediaError):
620         (WebCore::NavigatorUserMediaError::code):
621         (WebCore::NavigatorUserMediaError::NavigatorUserMediaError):
622         * mediastream/NavigatorUserMediaError.idl: Renamed from Source/WebCore/page/NavigatorUserMediaError.idl.
623         * mediastream/NavigatorUserMediaErrorCallback.h: Renamed from Source/WebCore/page/NavigatorUserMediaErrorCallback.h.
624         (WebCore::NavigatorUserMediaErrorCallback::~NavigatorUserMediaErrorCallback):
625         * mediastream/NavigatorUserMediaErrorCallback.idl: Renamed from Source/WebCore/page/NavigatorUserMediaErrorCallback.idl.
626         * mediastream/NavigatorUserMediaSuccessCallback.h: Renamed from Source/WebCore/page/NavigatorUserMediaSuccessCallback.h.
627         (WebCore::NavigatorUserMediaSuccessCallback::~NavigatorUserMediaSuccessCallback):
628         * mediastream/NavigatorUserMediaSuccessCallback.idl: Renamed from Source/WebCore/page/NavigatorUserMediaSuccessCallback.idl.
629
630 2011-11-18  Andrey Kosyakov  <caseq@chromium.org>
631
632         Web Inspector: [Extensions API] Provide a way for extension to create a status bar icon
633         https://bugs.webkit.org/show_bug.cgi?id=45955
634
635         Reviewed by Pavel Feldman.
636
637         * inspector/front-end/ExtensionAPI.js:
638         (injectedExtensionAPI.ExtensionPanelImpl.prototype.createStatusBarButton):
639         (injectedExtensionAPI):
640         (injectedExtensionAPI.ButtonImpl.prototype.update):
641         * inspector/front-end/ExtensionPanel.js:
642         (WebInspector.ExtensionPanel):
643         (WebInspector.ExtensionPanel.prototype.get statusBarItems):
644         (WebInspector.ExtensionPanel.prototype.addStatusBarItem):
645         (WebInspector.ExtensionButton):
646         (WebInspector.ExtensionButton.prototype.update):
647         (WebInspector.ExtensionButton.prototype._onClicked):
648         * inspector/front-end/ExtensionServer.js:
649         (WebInspector.ExtensionServer):
650         (WebInspector.ExtensionServer.prototype.notifyButtonClicked):
651         (WebInspector.ExtensionServer.prototype._onCreateStatusBarButton):
652         (WebInspector.ExtensionServer.prototype._onUpdateButton):
653         (WebInspector.ExtensionServer.prototype._onCreateSidebarPane):
654         * inspector/front-end/inspector.css:
655         (button.status-bar-item.extension):
656
657 2011-11-18  Tommy Widenflycht  <tommyw@google.com>
658
659         MediaStream API: Merging the PeerConnectionHandler.h files
660         https://bugs.webkit.org/show_bug.cgi?id=72611
661
662         Reviewed by Adam Barth.
663
664         No actual code changes.
665
666         * GNUmakefile.am:
667         * GNUmakefile.list.am:
668         * WebCore.gyp/WebCore.gyp:
669         * WebCore.gypi:
670         * platform/mediastream/PeerConnectionHandler.h: Renamed from Source/WebCore/platform/mediastream/chromium/PeerConnectionHandler.h.
671         * platform/mediastream/gstreamer/PeerConnectionHandler.h: Removed.
672
673 2011-11-17  Simon Hausmann  <simon.hausmann@nokia.com>
674
675         [Qt] Layer violation: ThirdPartyCookiesQt.cpp uses QWebSettings in two places
676         https://bugs.webkit.org/show_bug.cgi?id=72597
677
678         Reviewed by Kenneth Rohde Christiansen.
679
680         Moved code that queries the third party cookie policy from QWebSettings
681         out of WebCore. Instead NetworkingContext has now the interface that allows
682         delegating the functionality into WebKit/qt.
683
684         In order to do that we need to pass the NetworkingContext around, which is used to
685         retrieve the cookie jar and the originating frame object pointer.
686
687         * platform/network/NetworkingContext.h: Add interface.
688         * platform/network/qt/QNetworkReplyHandler.cpp:
689         (WebCore::QNetworkReplyHandler::QNetworkReplyHandler): Pass NetworkingContext to ResourceRequest::toNetworkRequest.
690         (WebCore::QNetworkReplyHandler::redirect): Ditto.
691         * platform/network/qt/ResourceRequest.h: Replaced originatingObject parameter with NetworkingContext, which can
692         also provide the same plus more (cookie jar, policy callback).
693         * platform/network/qt/ResourceRequestQt.cpp:
694         (WebCore::ResourceRequest::toNetworkRequest): Ditto.
695         * platform/qt/CookieJarQt.cpp: Simplify to use NetworkingContext to get cookie jar and
696         call new thirdPartyCookiePolicyPermits API that takes the context as parameter.
697         (WebCore::networkingContext):
698         (WebCore::setCookies):
699         (WebCore::cookies):
700         (WebCore::cookieRequestHeaderFieldValue):
701         (WebCore::cookiesEnabled):
702         * platform/qt/ThirdPartyCookiesQt.cpp: Replace up-casting to QWebFrame and use of QWebSettings
703         with useage of NetworkingContext.
704         (WebCore::thirdPartyCookiePolicyPermits):
705         * platform/qt/ThirdPartyCookiesQt.h:
706
707 2011-11-17  Kenichi Ishibashi  <bashi@chromium.org>
708
709         crash: WebCore::FontPlatformData::roundsGlyphAdvances on Lion
710         https://bugs.webkit.org/show_bug.cgi?id=71997
711
712         Reviewed by Dan Bernstein.
713
714         The cause is a null dereference of a fontData that is stored in
715         ComplexTextRun. The fontData is initialized by using the
716         fontCache, but it could be null when the font is in fallback
717         list. The reason a font from the fallback list might not be in the
718         font Cache is that it may be a web font. Before looking up the
719         fontCache, try to see whether the font is in the fallback list.
720
721         No new tests. We don't have webfonts that can produce the problem.
722
723         * platform/graphics/mac/ComplexTextControllerCoreText.mm:
724         (WebCore::ComplexTextController::collectComplexTextRunsForCharactersCoreText): See fallback list first, then lookup cache.
725
726 2011-11-17  Kaustubh Atrawalkar  <kaustubh@motorola.com>
727
728         Remove initProgressEvent method
729         https://bugs.webkit.org/show_bug.cgi?id=71340
730
731         Reviewed by Adam Barth.
732
733         This method has been removed from the spec draft.
734         http://www.w3.org/TR/progress-events/#interface-progressevent
735
736         No new tests. Removed method.
737
738         * dom/ProgressEvent.cpp:
739         * dom/ProgressEvent.h:
740         * dom/ProgressEvent.idl:
741
742 2011-11-17  Eunmi Lee  <eunmi15.lee@samsung.com>
743
744         [EFL] Move keyIdentifierForEvasKeyName() and windowsKeyCodeForEvasKeyName() to the
745         EflKeyboardUtilities.cpp to use in the WebKit2
746         https://bugs.webkit.org/show_bug.cgi?id=62451
747
748         Reviewed by Martin Robinson.
749
750         The keyIdentifierForEvasKeyName() and windowsKeyCodeForEvasKeyName() were static functions
751         in the PlatformKeyboardEventEfl.cpp. But they are also needed in the WebKit2 EFL port, so I
752         moved them to the separated file - EflKeyboardUtilities.cpp.
753
754         * PlatformEfl.cmake:
755         * platform/efl/EflKeyboardUtilities.cpp: Copied from Source/WebCore/platform/efl/PlatformKeyboardEventEfl.cpp.
756         (WebCore::createKeyMap):
757         (WebCore::createWindowsKeyMap):
758         (WebCore::keyIdentifierForEvasKeyName):
759         (WebCore::windowsKeyCodeForEvasKeyName):
760         * platform/efl/EflKeyboardUtilities.h: Added.
761         * platform/efl/PlatformKeyboardEventEfl.cpp:
762
763 2011-11-17  Martin Robinson  <mrobinson@igalia.com>
764
765         [GTK] The process freezes when you right click on windowless Flash
766         https://bugs.webkit.org/show_bug.cgi?id=69123
767
768         Reviewed by Xan Lopez.
769
770         No new tests. I tried to create a layout test that exercised this
771         issue, but it appears that EventSender clicks do not trigger
772         it. This is covered by the manual tests containing Flash.
773
774         * plugins/PluginPackage.cpp:
775         (WebCore::PluginPackage::determineQuirks): Always activate the
776         windowless Flash quirk if on x86_64 and X11.
777         * plugins/gtk/PluginViewGtk.cpp:
778         (WebCore::PluginView::handleMouseEvent): Avoid sending right-click
779         events if we have the quirk.
780
781 2011-11-17  Peter Rybin  <peter.rybin@gmail.com>
782
783         Web Inspector: clear fixme in generator script
784         https://bugs.webkit.org/show_bug.cgi?id=71372
785
786         Remove unnecessary field name map and update license year number.
787
788         Reviewed by Pavel Feldman.
789
790         * inspector/CodeGeneratorInspector.py:
791
792 2011-11-17  Raphael Kubo da Costa  <kubo@profusion.mobi>
793
794         [EFL] Clean up the use of DATA_DIR in the buildsystem
795         https://bugs.webkit.org/show_bug.cgi?id=72681
796
797         Reviewed by Daniel Bates.
798
799         Add the -DDATA_DIR definition here instead of defining it globally in
800         OptionsEfl.cmake, as WebCore is the only place which needs it.
801
802         No new tests, this is a buildsystem change.
803
804         * PlatformEfl.cmake:
805
806 2011-11-17  Adam Klein  <adamk@chromium.org>
807
808         Move JS recursion counter from V8Proxy to V8BindingPerIsolateData
809         https://bugs.webkit.org/show_bug.cgi?id=72645
810
811         Reviewed by Adam Barth.
812
813         With the JS recursion level stored as a member of V8Proxy, it's tied
814         to a frame. But this is incorrect, as there's no reason that a JS call
815         stack need be restricted to a single frame (see my new test case for
816         an example of code going across frames).
817
818         In order to get the correct accounting of JS recursion level, per-Isolate
819         is the right granularity (per dslomov), which is what this patch accomplishes.
820
821         Test: storage/indexeddb/transaction-abort-with-js-recursion-cross-frame.html
822
823         * bindings/v8/V8Binding.cpp:
824         (WebCore::V8BindingPerIsolateData::V8BindingPerIsolateData):
825         * bindings/v8/V8Binding.h:
826         (WebCore::V8BindingPerIsolateData::recursionLevel):
827         (WebCore::V8BindingPerIsolateData::incrementRecursionLevel):
828         (WebCore::V8BindingPerIsolateData::decrementRecursionLevel):
829         (WebCore::V8RecursionScope::V8RecursionScope):
830         (WebCore::V8RecursionScope::~V8RecursionScope):
831         * bindings/v8/V8Proxy.cpp:
832         (WebCore::incrementRecursionLevel):
833         (WebCore::decrementRecursionLevel):
834         (WebCore::recursionLevel):
835         (WebCore::V8Proxy::V8Proxy):
836         (WebCore::V8Proxy::runScript):
837         (WebCore::V8Proxy::callFunction):
838         (WebCore::V8Proxy::didLeaveScriptContext):
839         * bindings/v8/V8Proxy.h:
840
841 2011-11-17  Robin Cao  <robin.cao@torchmobile.com.cn>
842
843         [chromium] Font::drawComplexText can not draw a segment of text run
844         https://bugs.webkit.org/show_bug.cgi?id=72095
845
846         Reviewed by Adam Barth.
847
848         drawComplexText() should respect the 'from' and 'to' arguments.
849         Drawing the whole text run may result in text overlapping.
850
851         Test: platform/chromium-linux/fast/text/international/draw-complex-text-from-to.html
852
853         * platform/graphics/chromium/ComplexTextControllerLinux.cpp:
854         (WebCore::ComplexTextController::glyphsForRange):
855         * platform/graphics/chromium/ComplexTextControllerLinux.h:
856         * platform/graphics/chromium/FontLinux.cpp:
857         (WebCore::Font::drawComplexText):
858
859 2011-11-17  Adam Barth  <abarth@webkit.org>
860
861         Unique SecurityOrigins shouldn't remember their old schemes and hosts
862         https://bugs.webkit.org/show_bug.cgi?id=71745
863
864         Reviewed by Darin Adler.
865
866         This is the final step in this series of patches.
867
868         This patch removes the forceUnique flag from SecurityOrigin::create.
869         Now, we create unique origins without passing in the document's URL,
870         preventing information from the document's URL from leaking into the
871         unique origin.
872
873         * WebCore.exp.in:
874         * dom/Document.cpp:
875         (WebCore::Document::setIsViewSource):
876         (WebCore::Document::initSecurityContext):
877         * loader/cache/MemoryCache.cpp:
878         (WebCore::MemoryCache::getOriginsWithCache):
879             - Update this callsite to use createFromString, which does exactly
880               what this code is doing manually.
881         * page/SecurityOrigin.cpp:
882         (WebCore::SecurityOrigin::create):
883         * page/SecurityOrigin.h:
884
885 2011-11-17  Vincent Scheib  <scheib@chromium.org>
886
887         Pointer Lock: Page Settings unecessary
888         https://bugs.webkit.org/show_bug.cgi?id=72662
889
890         Reviewed by Darin Fisher.
891
892         No new tests.
893
894         * page/Settings.cpp:
895         (WebCore::Settings::Settings):
896         * page/Settings.h:
897
898 2011-11-17  James Robinson  <jamesr@chromium.org>
899
900         [chromium] Disable incremental uploading in threaded compositing path
901         https://bugs.webkit.org/show_bug.cgi?id=72669
902
903         Reviewed by Kenneth Russell.
904
905         Since we don't currently support atomic incremental uploads, incremental uploads in the threaded path result in
906         very strange-looking texture popping as tiles come in on pages that require more than 16 tile uploads per frame.
907         This disables that logic (by setting the upload limit per frame to 99999) until we handle the incremental
908         updates in an atomic fashion.
909
910         * platform/graphics/chromium/cc/CCThreadProxy.cpp:
911         (WebCore::CCThreadProxy::scheduledActionUpdateMoreResources):
912
913 2011-11-06  Nat Duca  <nduca@chromium.org>
914
915         [chromium] Fix handling of setNeedsCommit and setNeedsAnimate in threaded mode
916         https://bugs.webkit.org/show_bug.cgi?id=71638
917
918         Reviewed by James Robinson.
919
920         * platform/graphics/chromium/cc/CCThreadProxy.cpp:
921         (WebCore::CCThreadProxy::CCThreadProxy):
922         (WebCore::CCThreadProxy::setNeedsAnimate):
923         (WebCore::CCThreadProxy::beginFrameAndCommit):
924
925 2011-11-17  Adam Barth  <abarth@webkit.org>
926
927         Remove bogus ASSERT.
928
929         * page/SecurityOrigin.cpp:
930         (WebCore::SecurityOrigin::SecurityOrigin):
931
932 2011-11-17  Peter Kasting  <pkasting@google.com>
933
934         Unreviewed, rolling out r100698.
935         http://trac.webkit.org/changeset/100698
936         https://bugs.webkit.org/show_bug.cgi?id=72239
937
938         This change wasn't the problem either.
939
940         * dom/Document.cpp:
941         (WebCore::Document::implicitClose):
942
943 2011-11-17  David Reveman  <reveman@chromium.org>
944
945         [Chromium] Calls to paintContentsIfDirty() and updateCompositorResources() should be balanced.
946         https://bugs.webkit.org/show_bug.cgi?id=72630
947
948         Reviewed by James Robinson.
949
950         Layer property changes during paintContent() can leave the layer
951         in an invalid state as paintContentsIfDirty() has been called
952         without a matching updateCompositorResources() call. Removing
953         conditionals around these calls ensure they are balanced.
954
955         This patch is tested by the following unit test:
956         - CCLayerTreeHostTestOpacityChange.runMultiThread
957
958         * platform/graphics/chromium/ContentLayerChromium.cpp:
959         (WebCore::ContentLayerChromium::paintContentsIfDirty):
960         * platform/graphics/chromium/VideoLayerChromium.cpp:
961         (WebCore::VideoLayerChromium::updateCompositorResources):
962         * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
963         (WebCore::CCLayerTreeHost::paintMaskAndReplicaForRenderSurface):
964         (WebCore::CCLayerTreeHost::paintLayerContents):
965         (WebCore::CCLayerTreeHost::updateCompositorResources):
966         * platform/graphics/chromium/cc/CCLayerTreeHost.h:
967
968 2011-11-17  Peter Kasting  <pkasting@google.com>
969
970         Unreviewed, rolling out r100584.
971         http://trac.webkit.org/changeset/100584
972         https://bugs.webkit.org/show_bug.cgi?id=72239
973
974         See if this change caused Linux dbg crashes.
975
976         * dom/Document.cpp:
977         (WebCore::Document::implicitClose):
978
979 2011-11-17  Adam Barth  <abarth@webkit.org>
980
981         Remove cargo-cult copy/pasting of ScriptExecutionContext namespace
982         https://bugs.webkit.org/show_bug.cgi?id=72676
983
984         Reviewed by Eric Seidel.
985
986         It looks like this cargo-cult started with initDNSPrefetch being hacked
987         into setSecurityOrigin.  I've removed this hack along with the
988         copy/paste code.
989
990         * dom/DOMImplementation.cpp:
991         * dom/Document.cpp:
992         (WebCore::Document::setIsViewSource):
993         (WebCore::Document::open):
994         (WebCore::Document::initSecurityContext):
995         (WebCore::Document::setSecurityOrigin):
996         * dom/Document.h:
997         * xml/XSLTProcessor.cpp:
998
999 2011-11-17  Peter Kasting  <pkasting@google.com>
1000
1001         Unreviewed, rolling out r100676.
1002         http://trac.webkit.org/changeset/100676
1003         https://bugs.webkit.org/show_bug.cgi?id=72393
1004
1005         Looks like r100572 was not the source of the crashes.
1006
1007         * bindings/js/ScriptDebugServer.cpp:
1008         (WebCore::ScriptDebugServer::canSetScriptSource):
1009         * bindings/js/ScriptDebugServer.h:
1010         * bindings/v8/ScriptDebugServer.cpp:
1011         (WebCore::ScriptDebugServer::stepOutOfFunction):
1012         (WebCore::ScriptDebugServer::canSetScriptSource):
1013         * bindings/v8/ScriptDebugServer.h:
1014         * inspector/CodeGeneratorInspector.py:
1015         * inspector/Inspector.json:
1016         * inspector/InspectorDebuggerAgent.cpp:
1017         (WebCore::InspectorDebuggerAgent::getCapabilities):
1018         * inspector/InspectorDebuggerAgent.h:
1019         * inspector/front-end/DebuggerModel.js:
1020         (WebInspector.DebuggerModel):
1021         (WebInspector.DebuggerModel.prototype.enableDebugger):
1022         (WebInspector.DebuggerModel.prototype.disableDebugger):
1023         (WebInspector.DebuggerModel.prototype.canSetScriptSource):
1024         * inspector/front-end/DebuggerPresentationModel.js:
1025         (WebInspector.DebuggerPresentationModel.prototype.canEditScriptSource):
1026         * inspector/front-end/Settings.js:
1027
1028 2011-11-17  Konstantin Scheglov  <scheglov@google.com>
1029
1030         Absolute child is not repainted when parent opacity changes
1031         https://bugs.webkit.org/show_bug.cgi?id=68777
1032
1033         Reviewed by Simon Fraser.
1034
1035         First time when we change opacity for parent we don't have layer, so
1036         diff=StyleDifferenceRepaint is used instead of diff=StyleDifferenceRepaintLayer.
1037         Layer is created later, in styleDidChange().
1038         So, when we recalculate later diff, we now check for diff=StyleDifferenceRepaintLayer and
1039         performs repaintIncludingDescendants().
1040
1041         Test: fast/layers/layer-absolute-parent-opacity.html
1042
1043         * rendering/RenderObject.cpp:
1044         (WebCore::RenderObject::setStyle): Call repaintIncludingDescendants() instead of repaint().
1045         * rendering/style/RenderStyle.cpp:
1046         (WebCore::RenderStyle::diff): Add ContextSensitivePropertyOpacity when change opacity.
1047
1048 2011-11-17  Nate Chapin  <japhet@chromium.org>
1049
1050         r100311 dropped a RefPtr that is very
1051         helpful. Add it back.
1052         https://bugs.webkit.org/show_bug.cgi?id=72647
1053
1054         Reviewed by Adam Barth.
1055
1056         http/tests/misc/xslt-bad-import.html should
1057         stop crashing in full chromium builds.
1058
1059         * loader/cache/CachedResourceLoader.cpp:
1060         (WebCore::CachedResourceLoader::loadDone):
1061
1062 2011-11-17  Adam Barth  <abarth@webkit.org>
1063
1064         Refactor SecurityOrigin::create to be easier to understand
1065         https://bugs.webkit.org/show_bug.cgi?id=72342
1066
1067         Reviewed by Eric Seidel.
1068
1069         Over time, the SecurityOrigin constructor has grown a bit out of
1070         control.  This patch attempts to separate the different concerns into
1071         free functions.  The general approach is to put more logic in the
1072         "create" function and introduce a simple constructor for unique
1073         origins.
1074
1075         This patch shouldn't change any behavior.
1076
1077         * page/SecurityOrigin.cpp:
1078         (WebCore::schemeRequiresAuthority):
1079         (WebCore::shouldUseInnerURL):
1080         (WebCore::extractInnerURL):
1081         (WebCore::isDirectory):
1082         (WebCore::shouldTreatAsUniqueOrigin):
1083         (WebCore::SecurityOrigin::SecurityOrigin):
1084         (WebCore::SecurityOrigin::create):
1085         (WebCore::SecurityOrigin::createUnique):
1086         (WebCore::SecurityOrigin::databaseIdentifier):
1087         * page/SecurityOrigin.h:
1088
1089 2011-11-17  Shawn Singh  <shawnsingh@chromium.org>
1090
1091         [chromium] Fix minor style nit in CCLayerImpl
1092         https://bugs.webkit.org/show_bug.cgi?id=71070
1093
1094         Reviewed by James Robinson.
1095
1096         Fixes if-statements on several settors to follow WebKit
1097         conventions. Existing CCLayerImplTest unit tests already cover
1098         this change.
1099
1100         * platform/graphics/chromium/cc/CCLayerImpl.cpp:
1101         (WebCore::CCLayerImpl::setBounds):
1102         (WebCore::CCLayerImpl::setMaskLayer):
1103         (WebCore::CCLayerImpl::setReplicaLayer):
1104         (WebCore::CCLayerImpl::setDrawsContent):
1105         (WebCore::CCLayerImpl::setAnchorPoint):
1106         (WebCore::CCLayerImpl::setAnchorPointZ):
1107         (WebCore::CCLayerImpl::setBackgroundColor):
1108         (WebCore::CCLayerImpl::setMasksToBounds):
1109         (WebCore::CCLayerImpl::setOpaque):
1110         (WebCore::CCLayerImpl::setOpacity):
1111         (WebCore::CCLayerImpl::setPosition):
1112         (WebCore::CCLayerImpl::setPreserves3D):
1113         (WebCore::CCLayerImpl::setZoomAnimatorTransform):
1114         (WebCore::CCLayerImpl::setSublayerTransform):
1115         (WebCore::CCLayerImpl::setTransform):
1116         (WebCore::CCLayerImpl::setDebugBorderColor):
1117         (WebCore::CCLayerImpl::setDebugBorderWidth):
1118         (WebCore::CCLayerImpl::setContentBounds):
1119         (WebCore::CCLayerImpl::setScrollPosition):
1120         (WebCore::CCLayerImpl::setScrollDelta):
1121         (WebCore::CCLayerImpl::setScaleDelta):
1122         (WebCore::CCLayerImpl::setDoubleSided):
1123
1124 2011-11-17  Michael Saboff  <msaboff@apple.com>
1125
1126         Leaks seen in MemoryPressureHandlerMac.mm on Leaks bot
1127         https://bugs.webkit.org/show_bug.cgi?id=72416
1128
1129         Added code to release _cache_event_source and _timer_event_source
1130         after they are canceled.  Also added defensive code to
1131         clean up the _timer_event_source in uninstall().
1132
1133         Reviewed by Geoffrey Garen.
1134
1135         No new tests, fixing leaks caught by leaks bot.
1136
1137         * platform/mac/MemoryPressureHandlerMac.mm:
1138         (WebCore::MemoryPressureHandler::uninstall):
1139         (WebCore::MemoryPressureHandler::holdOff):
1140
1141 2011-11-17  Ken Buchanan <kenrb@chromium.org>
1142
1143         Crash from positioned generated content under run-in
1144         https://bugs.webkit.org/show_bug.cgi?id=70456
1145
1146         Reviewed by David Hyatt.
1147
1148         Modified handling of run-in children to clear generated children
1149         before removing the parent from the render tree. This caused problems
1150         with absolute positioned children being not properly removed from the
1151         positioned object list of the RenderView.
1152
1153         * rendering/RenderBlock.cpp:
1154         (WebCore::RenderBlock::handleRunInChild):
1155
1156 2011-11-17  Peter Kasting  <pkasting@google.com>
1157
1158         Unreviewed, rolling out r100572.
1159         https://bugs.webkit.org/show_bug.cgi?id=72393
1160         https://bugs.webkit.org/show_bug.cgi?id=72651
1161
1162         May have caused seg faults on Chromium Linux dbg bot.
1163
1164         * bindings/js/ScriptDebugServer.cpp:
1165         * bindings/js/ScriptDebugServer.h:
1166         * bindings/v8/ScriptDebugServer.cpp:
1167         (WebCore::ScriptDebugServer::stepOutOfFunction):
1168         * bindings/v8/ScriptDebugServer.h:
1169         * inspector/CodeGeneratorInspector.py:
1170         * inspector/Inspector.json:
1171         * inspector/InspectorDebuggerAgent.cpp:
1172         * inspector/InspectorDebuggerAgent.h:
1173         * inspector/front-end/DebuggerModel.js:
1174         (WebInspector.DebuggerModel):
1175         (WebInspector.DebuggerModel.prototype.enableDebugger):
1176         (WebInspector.DebuggerModel.prototype.disableDebugger):
1177         * inspector/front-end/DebuggerPresentationModel.js:
1178         (WebInspector.DebuggerPresentationModel.prototype.canEditScriptSource):
1179         * inspector/front-end/Settings.js:
1180
1181 2011-11-17  Sheriff Bot  <webkit.review.bot@gmail.com>
1182
1183         Unreviewed, rolling out r100652.
1184         http://trac.webkit.org/changeset/100652
1185         https://bugs.webkit.org/show_bug.cgi?id=72648
1186
1187         "Caused outline-offset-min-assert.html to assert on debug
1188         builds" (Requested by mwenge2 on #webkit).
1189
1190         * rendering/RenderObject.cpp:
1191         (WebCore::RenderObject::paintOutline):
1192
1193 2011-11-17  Mark Rowe  <mrowe@apple.com>
1194
1195         <http://webkit.org/b/72637> Stop performing runtime version checks on OS versions where the check can never possibly fail.
1196
1197         Reviewed by Simon Fraser.
1198
1199         * platform/graphics/cg/ImageBufferDataCG.cpp:
1200         (WebCore::haveVImageRoundingErrorFix): When not targeting Snow Leopard we always have the fix.
1201
1202 2011-11-17  Chris Fleizach  <cfleizach@apple.com>
1203
1204         AX: The scrollArea is not correctly returning the scrollbars
1205         https://bugs.webkit.org/show_bug.cgi?id=70247
1206
1207         Reviewed by Beth Dakin.
1208
1209         A few bugs that were preventing this from working.
1210            1) In accessibilityAttributeValue: when an element did not have a renderer() we were returning earlier than we should have
1211            2) We were not updating and clearing the scrollbars correctly when children were cleared or when asked for.
1212
1213         Test: platform/mac/accessibility/scrollbars.html
1214
1215         * accessibility/AccessibilityScrollView.cpp:
1216         (WebCore::AccessibilityScrollView::scrollBar):
1217         (WebCore::AccessibilityScrollView::clearChildren):
1218         * accessibility/AccessibilityScrollView.h:
1219         * accessibility/mac/WebAccessibilityObjectWrapper.mm:
1220         (-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]):
1221
1222 2011-11-14  Adam Barth  <abarth@webkit.org>
1223
1224         Unique origins shouldn't remember their scheme, host, or port
1225         https://bugs.webkit.org/show_bug.cgi?id=72308
1226
1227         Reviewed by Eric Seidel.
1228
1229         This patch contains the bulk (all?) of the behavior differences in this
1230         patch series.  Unique origins shouldn't remember their schemes.  Doing
1231         so causes some privileges (e.g., local access) to leak into unique
1232         origins.
1233
1234         * page/SecurityOrigin.cpp:
1235         (WebCore::SecurityOrigin::SecurityOrigin):
1236             - Explicitly clear out the protocol, host, and port for unique
1237               origins.  A future patch will refactor all this code to be more
1238               elegant.
1239         * platform/SchemeRegistry.cpp:
1240         (WebCore::schemesWithUniqueOrigins):
1241             - Merge "about" and "javascript" in with the general case now that
1242               we don't have a separate notion of an empty origin.
1243
1244 2011-11-17  Chris Fleizach  <cfleizach@apple.com>
1245
1246         AX: cleanup style and naming and code in accessibility search mechanism
1247         https://bugs.webkit.org/show_bug.cgi?id=72570
1248
1249         Reviewed by Beth Dakin.
1250
1251         Cleanup the naming and code style within the element searching mechanism.
1252
1253         * accessibility/AccessibilityObject.cpp:
1254         (WebCore::AccessibilityObject::isAccessibilityObjectSearchMatch):
1255         (WebCore::AccessibilityObject::isAccessibilityTextSearchMatch):
1256         (WebCore::AccessibilityObject::firstAccessibleObjectFromNode):
1257         (WebCore::AccessibilityObject::findMatchingObjects):
1258         * accessibility/AccessibilityObject.h:
1259         * accessibility/mac/WebAccessibilityObjectWrapper.mm:
1260         (-[WebAccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
1261
1262 2011-11-17  Julien Chaffraix  <jchaffraix@webkit.org>
1263
1264         CSS table with 100% width can overflow their containing block
1265         https://bugs.webkit.org/show_bug.cgi?id=72180
1266
1267         Reviewed by David Hyatt.
1268
1269         Tests: fast/table/table-in-table-percent-width-collapsing-border-quirks-mode.html
1270                fast/table/table-in-table-percent-width-collapsing-border.html
1271                fast/table/table-in-table-percent-width-quirks-mode.html
1272                fast/table/table-in-table-percent-width.html
1273
1274         After r97555, we would include the borders in a CSS table's logical width even if the 'width'
1275         property was a percent. This does not match what Firefox and IE are doing. Thus don't apply
1276         this behavior to percent 'width'.
1277
1278         * rendering/RenderTable.cpp:
1279         (WebCore::RenderTable::computeLogicalWidth):
1280
1281 2011-11-17  Adrienne Walker  <enne@google.com>
1282
1283         [chromium] Implicitly skip render surfaces that won't be drawn
1284         https://bugs.webkit.org/show_bug.cgi?id=71038
1285
1286         Rather than having redundant checks in three places for how to walk
1287         through a render surface list, instead don't add render surfaces that
1288         don't need to get rendered to the render surface list.
1289
1290         Reviewed by James Robinson.
1291
1292         Covered by existing layout tests and unit tests.
1293
1294         * platform/graphics/chromium/LayerRendererChromium.cpp:
1295         (WebCore::LayerRendererChromium::drawLayersOntoRenderSurfaces):
1296         * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
1297         (WebCore::CCLayerTreeHost::paintLayerContents):
1298         (WebCore::CCLayerTreeHost::updateCompositorResources):
1299         * platform/graphics/chromium/cc/CCLayerTreeHostCommon.cpp:
1300         (WebCore::calculateDrawTransformsAndVisibilityInternal):
1301
1302 2011-11-17  Simon Hausmann  <simon.hausmann@nokia.com>
1303
1304         [Qt] Layer violation: qt_runtime.cpp accesses QWebElement and QTDRTNode
1305         https://bugs.webkit.org/show_bug.cgi?id=72595
1306
1307         Reviewed by Noam Rosenthal.
1308
1309         Removed QWebElement and QtDRTNode usage that reached from WebCore into
1310         WebKit/qt and replaced it with the ability to register custom JSValue
1311         conversion functions. The old code has been moved to WebKit/qt.
1312
1313         * bridge/qt/qt_instance.cpp:
1314         (JSC::Bindings::QtInstance::QtInstance): Remove unnecessary meta type registration
1315         (now done in QtWebElementRuntime::initialize in WebKit/qt).
1316         * bridge/qt/qt_runtime.cpp:
1317         (JSC::Bindings::registerCustomType):
1318         (JSC::Bindings::convertValueToQVariant):
1319         (JSC::Bindings::convertQVariantToValue):
1320         * bridge/qt/qt_runtime.h:
1321
1322 2011-11-17  Fady Samuel  <fsamuel@chromium.org>
1323
1324         Pass Aspect Ratio to RenderStyle
1325         https://bugs.webkit.org/show_bug.cgi?id=72350
1326
1327         Reviewed by Ojan Vafai.
1328
1329         * css/CSSComputedStyleDeclaration.cpp:
1330         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1331         * css/CSSStyleApplyProperty.cpp:
1332         (WebCore::ApplyPropertyAspectRatio::applyInheritValue):
1333         (WebCore::ApplyPropertyAspectRatio::applyInitialValue):
1334         (WebCore::ApplyPropertyAspectRatio::applyValue):
1335         (WebCore::ApplyPropertyAspectRatio::createHandler):
1336         (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
1337         * css/CSSStyleSelector.cpp:
1338         (WebCore::CSSStyleSelector::applyProperty):
1339         * css/CSSValue.h:
1340         (WebCore::CSSValue::isAspectRatioValue):
1341         * rendering/style/RenderStyle.h:
1342         (WebCore::InheritedFlags::hasAspectRatio):
1343         (WebCore::InheritedFlags::aspectRatio):
1344         (WebCore::InheritedFlags::aspectRatioDenominator):
1345         (WebCore::InheritedFlags::aspectRatioNumerator):
1346         (WebCore::InheritedFlags::setHasAspectRatio):
1347         (WebCore::InheritedFlags::setAspectRatioDenominator):
1348         (WebCore::InheritedFlags::setAspectRatioNumerator):
1349         (WebCore::InheritedFlags::initialHasAspectRatio):
1350         (WebCore::InheritedFlags::initialAspectRatioDenominator):
1351         (WebCore::InheritedFlags::initialAspectRatioNumerator):
1352         * rendering/style/StyleRareNonInheritedData.cpp:
1353         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
1354         (WebCore::StyleRareNonInheritedData::operator==):
1355         * rendering/style/StyleRareNonInheritedData.h:
1356
1357 2011-11-09  Robert Hogan  <robert@webkit.org>
1358
1359         CSS 2.1 failure: outline-color-* tests fail
1360         https://bugs.webkit.org/show_bug.cgi?id=71931
1361
1362         Reviewed by Julien Chaffraix.
1363
1364         WebKit wasn't displaying the top block in these tests because it did not paint the outline
1365         of divs with zero size.
1366
1367         * rendering/RenderObject.cpp:
1368         (WebCore::RenderObject::paintOutline): paint the outline even when the block has zero size
1369
1370 2011-11-17  Sergio Villar Senin  <svillar@igalia.com>
1371
1372         [GTK] plugins/get-url-notify-with-url-that-fails-to-load.html on bots after r100466
1373         https://bugs.webkit.org/show_bug.cgi?id=72613
1374
1375         Reviewed by Martin Robinson.
1376
1377         Do not assume that a SoupRequest always exists, it is not
1378         generated for example when the provided URL is
1379         invalid. ResourceHandle::platformSetDefersLoading was crashing
1380         because of that.
1381
1382         * platform/network/soup/ResourceHandleSoup.cpp:
1383         (WebCore::ResourceHandle::platformSetDefersLoading):
1384
1385 2011-11-17  Vsevolod Vlasov  <vsevik@chromium.org>
1386
1387         Web Inspector: Remove onlineDetectionEnabled from Preferences
1388         https://bugs.webkit.org/show_bug.cgi?id=72617
1389
1390         Reviewed by Pavel Feldman.
1391
1392         * inspector/front-end/ApplicationCacheItemsView.js:
1393         (WebInspector.ApplicationCacheItemsView):
1394         (WebInspector.ApplicationCacheItemsView.prototype.get statusBarItems):
1395         * inspector/front-end/Settings.js:
1396
1397 2011-11-17  Ken Buchanan  <kenrb@chromium.org>
1398
1399         Crash from nested tables with generated content
1400         https://bugs.webkit.org/show_bug.cgi?id=68811
1401
1402         Reviewed by David Hyatt.
1403
1404         When adding a child to a table that has generated content, this change
1405         ensures that we leave alone any generated content renderers that belong
1406         to descendants in the tree. They don't need to be touched, and doing so
1407         can create confusion about who the content belongs to.
1408
1409         This patch also simplifies some existing code for finding pseudoelement
1410         renderers. 
1411
1412         * rendering/RenderBlock.cpp:
1413         (WebCore::RenderBlock::addChildIgnoringAnonymousColumnBlocks):
1414         * rendering/RenderObject.cpp:
1415         (WebCore::RenderObject::addChild):
1416         (WebCore::RenderObject::isBeforeAfterContentGeneratedByAncestor): Added
1417         * rendering/RenderObject.h:
1418         (WebCore::RenderObject::findAfterContentRenderer): Deleted
1419         (WebCore::RenderObject::findBeforeContentRenderer): Deleted
1420         * rendering/RenderObjectChildList.cpp:
1421         (WebCore::RenderObjectChildList::beforePseudoElementRenderer):
1422         (WebCore::RenderObjectChildList::afterPseudoElementRenderer):
1423         * rendering/RenderTable.cpp:
1424         (WebCore::RenderTable::addChild):
1425         * rendering/RenderTableRow.cpp:
1426         (WebCore::RenderTableRow::addChild):
1427         * rendering/RenderTableSection.cpp:
1428         (WebCore::RenderTableSection::addChild):
1429
1430 2011-11-17  Patrick Gansterer  <paroga@webkit.org>
1431
1432         Unreviewed WinCE build fix for r94119.
1433
1434         MSVC throws multiply defined symbols linker error when using local class in inline function.
1435
1436         * bindings/js/JSDictionary.h:
1437         (WebCore::JSDictionary::IdentitySetter::identitySetter):
1438         (WebCore::JSDictionary::tryGetProperty):
1439
1440 2011-11-17  Eric Carlson  <eric.carlson@apple.com>
1441
1442         TextTrackList not sorted correctly
1443         https://bugs.webkit.org/show_bug.cgi?id=72545
1444
1445         Reviewed by Darin Adler.
1446
1447         Test: media/track/track-texttracks.html
1448
1449         * WebCore.xcodeproj/project.pbxproj: Add TextTrack.h to WebCore private headers because 
1450             it is included by HTMLMediaElement.h.
1451         * html/LoadableTextTrack.cpp:
1452         (WebCore::LoadableTextTrack::LoadableTextTrack): Pass track type to base class constructor.
1453         (WebCore::LoadableTextTrack::trackElementIndex): New, return the <track> element's tree order
1454             for sorting.
1455         * html/LoadableTextTrack.h:
1456
1457         * html/TextTrack.cpp:
1458         (WebCore::TextTrack::TextTrack): Set track type.
1459         * html/TextTrack.h:
1460         (WebCore::TextTrack::create): Ditto.
1461         (WebCore::TextTrack::trackType): Ditto.
1462
1463         * html/track/TextTrackList.cpp:
1464         (TextTrackList::length): Update to deal with two TextTrack vectors.
1465         (TextTrackList::item): Ditto.
1466         (TextTrackList::append): Ditto.
1467         (TextTrackList::remove): Ditto
1468         * html/track/TextTrackList.h: Store the two types of TextTracks in separate Vectors to make
1469             it simpler to keep them in the correct order.
1470
1471 2011-11-17  Simon Hausmann  <simon.hausmann@nokia.com>
1472
1473         [Qt] Layer violation: WebCore::dnsPrefetch uses QWebSettings::globalSettings()
1474         https://bugs.webkit.org/show_bug.cgi?id=72596
1475
1476         Reviewed by Kenneth Rohde Christiansen.
1477
1478         We don't need to use QWebSettings here, because we now propagate the DNS prefetch
1479         setting to WebCore::Settings and the rest of WebCore checks the setting before calling
1480         WebCore::prefetchDNS.
1481
1482         * platform/network/qt/DnsPrefetchHelper.cpp:
1483         (WebCore::prefetchDNS): Removed the use of QWebSettings.
1484         * platform/network/qt/DnsPrefetchHelper.h: Remove offending qwebsettings.h inclusion.
1485
1486 2011-11-17  Simon Hausmann  <simon.hausmann@nokia.com>
1487
1488         [Qt] Layer violation: Image::loadPlatformResource uses QWebSettings::webGraphic
1489         https://bugs.webkit.org/show_bug.cgi?id=72594
1490
1491         Reviewed by Kenneth Rohde Christiansen.
1492
1493         Move the cache for the resource pixmaps into ImageQt.cpp.
1494
1495         * platform/graphics/Image.h: Add Qt specific setter for resource pixmaps.
1496         * platform/graphics/qt/ImageQt.cpp: Moved resource pixmap hash from qwebsettings.
1497         (earlyClearGraphics):
1498         (graphics):
1499         (loadResourcePixmap):
1500         (WebCore::Image::setPlatformResource):
1501
1502 2011-11-17  Zeno Albisser  <zeno@webkit.org>
1503
1504         [Qt][WK2] Touch/Mouse events are delivered with wrong coordinates.
1505         https://bugs.webkit.org/show_bug.cgi?id=72604
1506
1507         When using the QtViewportInterationEngine for zooming/panning,
1508         no additional scroll offset should be applied to input events
1509         by the ScrollView.
1510
1511         This patch is based on work by Andreas Kling.
1512
1513         Reviewed by Kenneth Rohde Christiansen.
1514
1515         * platform/ScrollView.cpp:
1516         (WebCore::ScrollView::windowToContents):
1517         (WebCore::ScrollView::contentsToWindow):
1518
1519 2011-11-17  Ben Murdoch  <benm@google.com>
1520
1521         Unreviewed build fix.
1522
1523         Fix the Windows builds by adding WorkerEventQueue.cpp|h to the
1524         vcproj. Build break was introduced in
1525         https://bugs.webkit.org/show_bug.cgi?id=72528
1526
1527         * WebCore.vcproj/WebCore.vcproj: Add missing files.
1528
1529 2011-11-17  Mihnea Ovidenie  <mihnea@adobe.com>
1530
1531         CSS Exclusions: parse the wrap-margin and wrap-padding properties
1532         https://bugs.webkit.org/show_bug.cgi?id=71900
1533
1534         Reviewed by Dean Jackson.
1535
1536         Tests: fast/exclusions/wrap-margin-parsing.html
1537                fast/exclusions/wrap-padding-parsing.html
1538
1539         * css/CSSComputedStyleDeclaration.cpp:
1540         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1541         * css/CSSParser.cpp:
1542         (WebCore::isSimpleLengthPropertyID):
1543         (WebCore::CSSParser::parseValue):
1544         * css/CSSProperty.cpp:
1545         (WebCore::CSSProperty::isInheritedProperty):
1546         * css/CSSPropertyNames.in:
1547         * css/CSSStyleApplyProperty.cpp:
1548         (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
1549         * css/CSSStyleSelector.cpp:
1550         (WebCore::CSSStyleSelector::applyProperty):
1551         * rendering/style/RenderStyle.cpp:
1552         (WebCore::RenderStyle::diff):
1553         * rendering/style/RenderStyle.h:
1554         (WebCore::InheritedFlags::wrapPadding):
1555         (WebCore::InheritedFlags::setWrapPadding):
1556         (WebCore::InheritedFlags::initialWrapPadding):
1557         (WebCore::InheritedFlags::wrapMargin):
1558         (WebCore::InheritedFlags::setWrapMargin):
1559         (WebCore::InheritedFlags::initialWrapMargin):
1560         * rendering/style/StyleRareNonInheritedData.cpp:
1561         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
1562         (WebCore::StyleRareNonInheritedData::operator==):
1563         * rendering/style/StyleRareNonInheritedData.h:
1564
1565 2011-11-17  Kenichi Ishibashi  <bashi@chromium.org>
1566
1567         [chromium] don't call fontconfig twice in complex text path
1568         https://bugs.webkit.org/show_bug.cgi?id=38701
1569
1570         Adds a new API for getting font family. For now, FontCacheLinux calls the new API, but don't use additional properties for compatibility. The old API will be removed when Chromium is ready to use new API.
1571
1572         Reviewed by Tony Chang.
1573
1574         No new tests. No behavior changes for now.
1575
1576         * platform/chromium/PlatformSupport.h: Added FontFamily struct and changed the declaration of getFontFamilyForCharacters().
1577         * platform/graphics/chromium/FontCacheLinux.cpp:
1578         (WebCore::FontCache::getFontDataForCharacters): Uses new PlatformSupport::getFontFamilyForCharacters().
1579         * platform/graphics/chromium/FontPlatformDataLinux.h:
1580         (WebCore::FontPlatformData::setFakeBold): Added.
1581         (WebCore::FontPlatformData::setFakeItalic): Added.
1582
1583 2011-11-17  Mario Sanchez Prada  <msanchez@igalia.com>
1584
1585         [GTK] Consider parent AtkObject in webkit_accessible_get_parent(), if already set
1586         https://bugs.webkit.org/show_bug.cgi?id=72525
1587
1588         Reviewed by Xan Lopez.
1589
1590         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
1591         (webkit_accessible_get_parent): Call to the implementation of
1592         atk_object_get_parent in AtkObject class to check whether a parent
1593         AtkObject has been previously set, before trying to find one.
1594
1595 2011-11-17  Pavel Feldman  <pfeldman@google.com>
1596
1597         Not reviewed: fix IE user agents strings in the inspector.
1598
1599         * inspector/front-end/SettingsScreen.js:
1600         (WebInspector.SettingsScreen.prototype._createUserAgentSelectRowElement.get const):
1601
1602 2011-11-16  Kenneth Rohde Christiansen  <kenneth@webkit.org>
1603
1604         Make use-fixed-layout work reliable
1605         https://bugs.webkit.org/show_bug.cgi?id=72511
1606
1607         Reviewed by Simon Hausmann.
1608
1609         Always send a viewport update per page load as we depend on that,
1610         to reset all viewport handling before doing layout.
1611
1612         * page/Page.cpp:
1613         (WebCore::Page::updateViewportArguments):
1614
1615 2011-11-16  Alexander Pavlov  <apavlov@chromium.org>
1616
1617         Web Inspector: inspector follows javascript: hrefs as relative
1618         https://bugs.webkit.org/show_bug.cgi?id=72373
1619
1620         javascript: hrefs should never be linkified for security.
1621
1622         Reviewed by Yury Semikhatsky.
1623
1624         * inspector/front-end/ElementsTreeOutline.js:
1625         (WebInspector.ElementsTreeElement.prototype._buildAttributeDOM):
1626         * inspector/front-end/ResourceUtils.js:
1627         (WebInspector.completeURL):
1628
1629 2011-11-17  Nikolas Zimmermann  <nzimmermann@rim.com>
1630
1631         Not reviewed. Fix 32bit builds.
1632
1633         * platform/ClockGeneric.cpp:
1634         (ClockGeneric::now): Use narrowPrecisionToFloat.
1635         * rendering/FilterEffectRenderer.cpp:
1636         (WebCore::FilterEffectRenderer::build): Use it correctly.
1637
1638 2011-11-17  Dominic Mazzoni  <dmazzoni@google.com>
1639
1640         Accessibility: Chromium requires an AX notification when an iframe loads.
1641         https://bugs.webkit.org/show_bug.cgi?id=72239
1642
1643         When a document finishes loading, we were sending an AXLoadComplete if it
1644         was the top document. Now, if it's a document in an iframe, send an
1645         AXLayoutComplete on the iframe.
1646
1647         Reviewed by Chris Fleizach.
1648
1649         Test: accessibility/loading-iframe-sends-notification.html
1650
1651         * dom/Document.cpp:
1652         (WebCore::Document::implicitClose):
1653
1654 2011-11-16  Mark Rowe  <mrowe@apple.com>
1655
1656         <http://webkit.org/b/72574> Remove unnecessary use of CarbonCore APIs from Audio code
1657
1658         Reviewed by Andy Estes.
1659
1660         * platform/audio/mac/AudioDestinationMac.cpp:
1661         (WebCore::AudioDestinationMac::AudioDestinationMac): Switch from using the Carbon Component Manager
1662         to using AudioUnit's own component interface.
1663         (WebCore::AudioDestinationMac::~AudioDestinationMac): Ditto.
1664         * platform/audio/mac/AudioFileReaderMac.cpp:
1665         (WebCore::AudioFileReader::AudioFileReader): Remove an unncessary trip through the Carbon File Manager
1666         when converting a char* path to a CFURLRef representing the same.
1667
1668 2011-11-17  Adam Barth  <abarth@webkit.org>
1669
1670         CSP report-only mode doesn't work from an HTTP header
1671         https://bugs.webkit.org/show_bug.cgi?id=71958
1672
1673         Reviewed by Eric Seidel.
1674
1675         "It's tested or it's broken." -- Adam Leventhal
1676
1677         Test: http/tests/security/contentSecurityPolicy/report-only-from-header.php
1678
1679         * loader/FrameLoader.cpp:
1680         (WebCore::FrameLoader::didBeginDocument):
1681
1682 2011-11-15  Pavel Feldman  <pfeldman@google.com>
1683
1684         Web Inspector: introduce Debugger domain capabilities concept.
1685         https://bugs.webkit.org/show_bug.cgi?id=72393
1686
1687         Many of the Preferences that we have in Settings.js and override in DevTools.js
1688         are really not preferences, but capabilities. Protocol clients should have a way
1689         of figuring out whether some capability is present before using it.
1690
1691         Reviewed by Yury Semikhatsky.
1692
1693         * bindings/js/ScriptDebugServer.cpp:
1694         (WebCore::ScriptDebugServer::canSetScriptSource):
1695         * bindings/js/ScriptDebugServer.h:
1696         * bindings/v8/ScriptDebugServer.cpp:
1697         (WebCore::ScriptDebugServer::canSetScriptSource):
1698         * bindings/v8/ScriptDebugServer.h:
1699         * inspector/CodeGeneratorInspector.py:
1700         * inspector/Inspector.json:
1701         * inspector/InspectorDebuggerAgent.cpp:
1702         (WebCore::InspectorDebuggerAgent::getCapabilities):
1703         * inspector/InspectorDebuggerAgent.h:
1704         * inspector/front-end/DebuggerModel.js:
1705         (WebInspector.DebuggerModel):
1706         (WebInspector.DebuggerModel.prototype.enableDebugger):
1707         (WebInspector.DebuggerModel.prototype.canSetScriptSource):
1708         * inspector/front-end/DebuggerPresentationModel.js:
1709         (WebInspector.DebuggerPresentationModel.prototype.canEditScriptSource):
1710         * inspector/front-end/Settings.js:
1711
1712 2011-11-17  Mihnea Ovidenie  <mihnea@adobe.com>
1713
1714         CSS exclusions: parse the wrap-flow and wrap-through properties
1715         https://bugs.webkit.org/show_bug.cgi?id=71904
1716
1717         Reviewed by Dean Jackson.
1718
1719         Tests: fast/exclusions/wrap-flow-parsing.html
1720                fast/exclusions/wrap-through-parsing.html
1721
1722         * css/CSSComputedStyleDeclaration.cpp:
1723         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1724         * css/CSSParser.cpp:
1725         (WebCore::CSSParser::parseValue):
1726         * css/CSSPrimitiveValueMappings.h:
1727         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
1728         (WebCore::CSSPrimitiveValue::operator WrapFlow):
1729         (WebCore::CSSPrimitiveValue::operator WrapThrough):
1730         * css/CSSProperty.cpp:
1731         (WebCore::CSSProperty::isInheritedProperty):
1732         * css/CSSPropertyNames.in:
1733         * css/CSSStyleSelector.cpp:
1734         (WebCore::CSSStyleSelector::applyProperty):
1735         * css/CSSValueKeywords.in:
1736         * rendering/style/RenderStyle.cpp:
1737         (WebCore::RenderStyle::diff):
1738         * rendering/style/RenderStyle.h:
1739         (WebCore::InheritedFlags::wrapFlow):
1740         (WebCore::InheritedFlags::wrapThrough):
1741         (WebCore::InheritedFlags::setWrapFlow):
1742         (WebCore::InheritedFlags::setWrapThrough):
1743         (WebCore::InheritedFlags::initialWrapFlow):
1744         (WebCore::InheritedFlags::initialWrapThrough):
1745         * rendering/style/RenderStyleConstants.h:
1746         * rendering/style/StyleRareNonInheritedData.cpp:
1747         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
1748         (WebCore::StyleRareNonInheritedData::operator==):
1749         * rendering/style/StyleRareNonInheritedData.h:
1750
1751 2011-11-16  Dean Jackson  <dino@apple.com>
1752
1753         Implement filter function shorthands
1754         https://bugs.webkit.org/show_bug.cgi?id=68475
1755
1756         Reviewed by Simon Fraser.
1757
1758         Implement the shorthand functions for filter effects.
1759         This includes grayscale, sepia, invert, hue-rotate, saturate,
1760         opacity, gamma, drop-shadow and blur. At the moment sharpen
1761         and url are not supported.
1762
1763         CSSParser needed to be updated because it was mistakenly
1764         clamping saturation values to [0,1]. Any positive number
1765         is allowed so you can produce super-saturated images.
1766
1767         The biggest change was the API to FilterEffectRenderer. It now
1768         builds a list of effects and applies the filter itself.
1769
1770         Note that the drop-shadow and blur operations don't yet
1771         provide accurate results because they produce an output image
1772         that is larger than the input. See
1773         https://bugs.webkit.org/show_bug.cgi?id=71929
1774         https://bugs.webkit.org/show_bug.cgi?id=71930
1775
1776         While I was there, I fixed a small style issue in
1777         CustomFilterOperation.
1778
1779         Tests: css3/filters/effect-blur.html
1780                css3/filters/effect-combined.html
1781                css3/filters/effect-drop-shadow.html
1782                css3/filters/effect-gamma.html
1783                css3/filters/effect-grayscale.html
1784                css3/filters/effect-hue-rotate.html
1785                css3/filters/effect-invert.html
1786                css3/filters/effect-opacity.html
1787                css3/filters/effect-saturate.html
1788                css3/filters/effect-sepia.html
1789
1790         * WebCore.xcodeproj/project.pbxproj: Add StyleShader.h to
1791         the project (missing from earlier commit).
1792         * css/CSSParser.cpp:
1793         (WebCore::CSSParser::isValidFilterArgument): Don't clamp
1794         saturate to [0,1]
1795         * platform/graphics/filters/CustomFilterOperation.h:
1796         * rendering/FilterEffectRenderer.cpp:
1797         (WebCore::endMatrixRow):
1798         (WebCore::lastMatrixRow):
1799         (WebCore::FilterEffectRenderer::FilterEffectRenderer):
1800         (WebCore::FilterEffectRenderer::inputContext):
1801         (WebCore::FilterEffectRenderer::build):
1802         (WebCore::FilterEffectRenderer::prepare):
1803         (WebCore::FilterEffectRenderer::apply):
1804         * rendering/FilterEffectRenderer.h:
1805         (WebCore::FilterEffectRenderer::setSourceImageRect):
1806         (WebCore::FilterEffectRenderer::output):
1807         (WebCore::FilterEffectRenderer::setMaxEffectRects):
1808         (WebCore::FilterEffectRenderer::lastEffect):
1809         * rendering/RenderLayer.cpp:
1810         (WebCore::RenderLayer::paintLayer):
1811         (WebCore::RenderLayer::updateOrRemoveFilterEffect):
1812         (WebCore::RenderLayer::updateFilterBackingStore):
1813
1814 2011-11-16  Kentaro Hara  <haraken@chromium.org>
1815
1816         Remove all custom constructors of Events from JSC
1817         https://bugs.webkit.org/show_bug.cgi?id=72577
1818
1819         Reviewed by Adam Barth.
1820
1821         - Makes CodeGeneratorJS.pm generate Event constructors
1822         if [ConstructorTemplate=Event] IDL is specified.
1823         - Removes EventConstructors.h and JSEventConstructors.cpp.
1824         - Replaces all JSC custom constructors of Events
1825         with the generated code by [ConstructorTemplate=Event] IDL.
1826
1827         Tests: fast/events/constructors/before-load-event-constructor.html
1828                fast/events/constructors/close-event-constructor.html
1829                fast/events/constructors/custom-event-constructor.html
1830                fast/events/constructors/error-event-constructor.html
1831                fast/events/constructors/event-constructors.html
1832                fast/events/constructors/hash-change-event-constructor.html
1833                fast/events/constructors/message-event-constructor.html
1834                fast/events/constructors/overflow-event-constructor.html
1835                fast/events/constructors/page-transition-event-constructor.html
1836                fast/events/constructors/pop-state-event-constructor.html
1837                fast/events/constructors/progress-event-constructor.html
1838                fast/events/constructors/track-event-constructor.html
1839                fast/events/constructors/webkit-animation-event-constructor.html
1840                fast/events/constructors/webkit-transition-event-constructor.html
1841
1842         * bindings/generic/EventConstructors.h: Removed. This is what we wanted to do in this patch.
1843         * bindings/js/JSEventConstructors.cpp: Ditto.
1844         * GNUmakefile.list.am: Removed EventConstructors.h and JSEventConstructors.cpp.
1845         * Target.pri: Ditto.
1846         * UseJSC.cmake: Ditto.
1847         * WebCore.gypi: Ditto.
1848         * WebCore.vcproj/WebCore.vcproj: Ditto.
1849         * WebCore.xcodeproj/project.pbxproj: Ditto.
1850         * bindings/js/JSBindingsAllInOne.cpp: Ditto.
1851
1852         * bindings/scripts/CodeGeneratorJS.pm:
1853         (GenerateHeader): Added JSDictionary.h.
1854         (GenerateConstructorDeclaration): Added a header for fillXXXXEventInit(...).
1855         (GenerateConstructorDefinition): Generates an Event constructor. The generated code is the same as the code that had been written in JSEventConstructors.cpp.
1856         (IsConstructable): Judges if a given interface is constructable.
1857         (IsConstructorTemplate): Judges if a given interface has a given template, e.g. judges if an interface has [ConstructorTemplate=Event].
1858
1859         * bindings/scripts/test/TestEventConstructor.idl: Changed 'CustomConstructor=Event' to 'ConstructorTemplate=Event'. We should have changed this in r100108.
1860         * bindings/scripts/test/JS/JSTestEventConstructor.cpp: Updated a run-bindings-tests result.
1861         (WebCore::JSTestEventConstructorConstructor::constructJSTestEventConstructor):
1862         (WebCore::fillTestEventConstructorInit):
1863         * bindings/scripts/test/JS/JSTestEventConstructor.h: Ditto.
1864         * bindings/scripts/test/V8/V8TestEventConstructor.cpp: Ditto.
1865         (WebCore::V8TestEventConstructor::constructorCallback):
1866         (WebCore::fillTestEventConstructorInit):
1867         * bindings/scripts/test/V8/V8TestEventConstructor.h: Ditto.
1868
1869         * dom/BeforeLoadEvent.idl: In essence, replaced [JSCustomConstructor] IDL with [JSConstructorTemplate=Event] IDL.
1870         * dom/CustomEvent.idl: Ditto.
1871         * dom/ErrorEvent.idl: Ditto.
1872         * dom/Event.idl: Ditto.
1873         * dom/HashChangeEvent.idl: Ditto.
1874         * dom/MessageEvent.idl: Ditto.
1875         * dom/OverflowEvent.idl: Ditto.
1876         * dom/PageTransitionEvent.idl: Ditto.
1877         * dom/PopStateEvent.idl: Ditto.
1878         * dom/ProgressEvent.idl: Ditto.
1879         * dom/WebKitAnimationEvent.idl: Ditto.
1880         * dom/WebKitTransitionEvent.idl: Ditto.
1881         * html/track/TrackEvent.idl: Ditto.
1882         * websockets/CloseEvent.idl: Ditto.
1883
1884 2011-11-16  Dean Jackson  <dino@apple.com>
1885
1886         Build fix for Apple WebKit due to r100560.
1887         When I removed the violating header file it lost the
1888         reference to Color.
1889
1890         No review.
1891
1892         * platform/graphics/filters/FilterOperation.h:
1893
1894 2011-11-16  Dean Jackson  <dino@apple.com>
1895
1896         DropShadowFilterOperation violates platform isolation
1897         https://bugs.webkit.org/show_bug.cgi?id=72544
1898
1899         Reviewed by Simon Fraser.
1900
1901         Move ShadowData properties into the DropShadowFilterOperation
1902         to avoid depending on something outside platform.
1903
1904         * css/CSSComputedStyleDeclaration.cpp:
1905         (WebCore::CSSComputedStyleDeclaration::valueForFilter):
1906         * css/CSSStyleSelector.cpp:
1907         (WebCore::CSSStyleSelector::createFilterOperations):
1908         * platform/graphics/filters/FilterOperation.h:
1909         (WebCore::DropShadowFilterOperation::create):
1910         (WebCore::DropShadowFilterOperation::x):
1911         (WebCore::DropShadowFilterOperation::y):
1912         (WebCore::DropShadowFilterOperation::stdDeviation):
1913         (WebCore::DropShadowFilterOperation::color):
1914         (WebCore::DropShadowFilterOperation::operator==):
1915         (WebCore::DropShadowFilterOperation::DropShadowFilterOperation):
1916
1917 2011-11-16  Adam Bergkvist  <adam.bergkvist@ericsson.com>
1918
1919         Use a simple page client for user consent in getUserMedia()
1920         https://bugs.webkit.org/show_bug.cgi?id=70897
1921
1922         Reviewed by Adam Barth.
1923
1924         This is one in a series of patches that update the MediaStream feature
1925         to use WebCore platform interfaces.
1926
1927         Covered by existing tests.
1928
1929         * GNUmakefile.list.am:
1930         * WebCore.gypi:
1931         * mediastream/MediaStreamClient.h: Removed.
1932         * mediastream/MediaStreamController.cpp: Removed.
1933         * mediastream/MediaStreamController.h: Removed.
1934         * mediastream/MediaStreamFrameController.cpp: Removed.
1935         * mediastream/MediaStreamFrameController.h: Removed.
1936         * mediastream/UserMediaClient.h: Added.
1937         (WebCore::UserMediaClient::~UserMediaClient):
1938         * mediastream/UserMediaRequest.cpp: Added.
1939         (WebCore::UserMediaRequest::create):
1940         (WebCore::UserMediaRequest::UserMediaRequest):
1941         (WebCore::UserMediaRequest::~UserMediaRequest):
1942         (WebCore::UserMediaRequest::start):
1943         (WebCore::UserMediaRequest::mediaStreamSourcesQueryCompleted):
1944         (WebCore::UserMediaRequest::succeed):
1945         (WebCore::UserMediaRequest::fail):
1946         (WebCore::UserMediaRequest::contextDestroyed):
1947         (WebCore::UserMediaRequest::parseOptions):
1948         * mediastream/UserMediaRequest.h: Added.
1949         (WebCore::UserMediaRequest::audio):
1950         (WebCore::UserMediaRequest::video):
1951         (WebCore::UserMediaRequest::cameraPreferenceUser):
1952         (WebCore::UserMediaRequest::cameraPreferenceEnvironment):
1953         (WebCore::UserMediaRequest::successCallback):
1954         (WebCore::UserMediaRequest::errorCallback):
1955         * page/CallbackTask.h: Removed.
1956         * page/Frame.cpp:
1957         (WebCore::Frame::Frame):
1958         (WebCore::Frame::~Frame):
1959         (WebCore::Frame::pageDestroyed):
1960         (WebCore::Frame::transferChildFrameToNewDocument):
1961         * page/Frame.h:
1962         * page/Navigator.cpp:
1963         (WebCore::Navigator::webkitGetUserMedia):
1964         * page/NavigatorUserMediaErrorCallback.h:
1965         * page/Page.cpp:
1966         (WebCore::Page::Page):
1967         (WebCore::Page::~Page):
1968         (WebCore::Page::PageClients::PageClients):
1969         * page/Page.h:
1970         (WebCore::Page::userMediaClient):
1971
1972 2011-11-16  David Grogan  <dgrogan@chromium.org>
1973
1974         instantiate WorkerEventQueue in WorkerContext
1975         https://bugs.webkit.org/show_bug.cgi?id=72528
1976
1977         Reviewed by David Levin.
1978
1979         No new tests - nothing uses it yet.
1980
1981         * workers/WorkerContext.cpp:
1982         (WebCore::WorkerContext::WorkerContext):
1983         Instantiate WorkerEventQueue in InitializerList
1984
1985         * workers/WorkerEventQueue.h:
1986         Don't inherit from RefCounted, WorkerContext has an OwnPtr to it
1987
1988 2011-11-16  Kentaro Hara  <haraken@chromium.org>
1989
1990         Unreviewed. Rebaselined run-bindings-tests results.
1991
1992         * bindings/scripts/test/JS/JSTestEventConstructor.cpp:
1993         (WebCore::JSTestEventConstructor::JSTestEventConstructor):
1994         (WebCore::JSTestEventConstructorOwner::finalize):
1995         * bindings/scripts/test/JS/JSTestEventConstructor.h:
1996         (WebCore::JSTestEventConstructor::impl):
1997         (WebCore::JSTestEventConstructor::releaseImpl):
1998         * bindings/scripts/test/JS/JSTestInterface.cpp:
1999         (WebCore::JSTestInterface::JSTestInterface):
2000         (WebCore::JSTestInterfaceOwner::finalize):
2001         * bindings/scripts/test/JS/JSTestInterface.h:
2002         (WebCore::JSTestInterface::impl):
2003         (WebCore::JSTestInterface::releaseImpl):
2004         * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
2005         (WebCore::JSTestMediaQueryListListener::JSTestMediaQueryListListener):
2006         (WebCore::JSTestMediaQueryListListenerOwner::finalize):
2007         * bindings/scripts/test/JS/JSTestMediaQueryListListener.h:
2008         (WebCore::JSTestMediaQueryListListener::impl):
2009         (WebCore::JSTestMediaQueryListListener::releaseImpl):
2010         * bindings/scripts/test/JS/JSTestNamedConstructor.cpp:
2011         (WebCore::JSTestNamedConstructor::JSTestNamedConstructor):
2012         (WebCore::JSTestNamedConstructorOwner::finalize):
2013         * bindings/scripts/test/JS/JSTestNamedConstructor.h:
2014         (WebCore::JSTestNamedConstructor::impl):
2015         (WebCore::JSTestNamedConstructor::releaseImpl):
2016         * bindings/scripts/test/JS/JSTestObj.cpp:
2017         (WebCore::JSTestObj::JSTestObj):
2018         (WebCore::JSTestObjOwner::finalize):
2019         * bindings/scripts/test/JS/JSTestObj.h:
2020         (WebCore::JSTestObj::impl):
2021         (WebCore::JSTestObj::releaseImpl):
2022         * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
2023         (WebCore::JSTestSerializedScriptValueInterface::JSTestSerializedScriptValueInterface):
2024         (WebCore::JSTestSerializedScriptValueInterfaceOwner::finalize):
2025         * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.h:
2026         (WebCore::JSTestSerializedScriptValueInterface::impl):
2027         (WebCore::JSTestSerializedScriptValueInterface::releaseImpl):
2028
2029 2011-11-16  Jay Civelli  <jcivelli@chromium.org>
2030
2031         Make sure MHTML documents use the domain of the MHTML file.
2032         https://bugs.webkit.org/show_bug.cgi?id=72445
2033
2034         Reviewed by Adam Barth.
2035
2036         * dom/Document.h:
2037         (WebCore::Document::setBaseURL):
2038         * loader/FrameLoader.cpp:
2039         (WebCore::FrameLoader::receivedFirstData):
2040
2041 2011-11-16  Julien Chaffraix  <jchaffraix@webkit.org>
2042
2043         Update supported display list after -webkit-grid and -webkit-inline-grid addition
2044         https://bugs.webkit.org/show_bug.cgi?id=72559
2045
2046         Reviewed by Tony Chang.
2047
2048         * css/CSSParser.cpp:
2049         (WebCore::CSSParser::parseValue): Added the 2 new supported
2050         values (forgotten in the previous change).
2051
2052 2011-11-11  Adrienne Walker  <enne@google.com>
2053
2054         [chromium] Expose mock scrollbars to window.internals
2055         https://bugs.webkit.org/show_bug.cgi?id=72195
2056
2057         Reviewed by James Robinson.
2058
2059         * testing/Internals.cpp:
2060         (WebCore::Internals::setMockScrollbarsEnabled):
2061         * testing/Internals.h:
2062         * testing/Internals.idl:
2063
2064 2011-11-16  Michael Nordman  <michaeln@google.com>
2065
2066         ApplicationCache manifest should work with any MIME type.
2067         https://bugs.webkit.org/show_bug.cgi?id=72082
2068
2069         Reviewed by Alexey Proskuryakov.
2070
2071         * loader/appcache/ApplicationCacheGroup.cpp:
2072         (WebCore::ApplicationCacheGroup::didReceiveManifestResponse): Remove the test for a particular type.
2073
2074 2011-11-16  Daniel Sievers  <sievers@chromium.org>
2075
2076         [Chromium] Avoid color mask operations for root layers
2077         https://bugs.webkit.org/show_bug.cgi?id=72452
2078
2079         Instead of relying on the combination of clearing the surface and initializing
2080         the alpha channel to 1.0 followed by disabling alpha in the color mask when
2081         rendering the root layer tiles, add shaders to support writing out opaque layers
2082         (alpha channel values written as 1.0).
2083
2084         Reviewed by James Robinson.
2085
2086         No functional change made that requires new tests.
2087
2088         * platform/graphics/chromium/LayerRendererChromium.cpp:
2089         (WebCore::LayerRendererChromium::drawLayersInternal):
2090         (WebCore::LayerRendererChromium::initializeSharedObjects):
2091         (WebCore::LayerRendererChromium::tilerProgramOpaque):
2092         (WebCore::LayerRendererChromium::tilerProgramOpaqueAA):
2093         (WebCore::LayerRendererChromium::tilerProgramSwizzleOpaque):
2094         (WebCore::LayerRendererChromium::tilerProgramSwizzleOpaqueAA):
2095         (WebCore::LayerRendererChromium::cleanupSharedObjects):
2096         * platform/graphics/chromium/LayerRendererChromium.h:
2097         * platform/graphics/chromium/ShaderChromium.cpp:
2098         (WebCore::FragmentTexOpaqueBinding::FragmentTexOpaqueBinding):
2099         (WebCore::FragmentTexOpaqueBinding::init):
2100         (WebCore::FragmentShaderRGBATexOpaque::getShaderString):
2101         (WebCore::FragmentShaderRGBATexSwizzleOpaque::getShaderString):
2102         (WebCore::FragmentTexClampOpaqueAABinding::FragmentTexClampOpaqueAABinding):
2103         (WebCore::FragmentTexClampOpaqueAABinding::init):
2104         (WebCore::FragmentShaderRGBATexClampOpaqueAA::getShaderString):
2105         (WebCore::FragmentShaderRGBATexClampSwizzleOpaqueAA::getShaderString):
2106         * platform/graphics/chromium/ShaderChromium.h:
2107         (WebCore::FragmentTexOpaqueBinding::alphaLocation):
2108         (WebCore::FragmentTexOpaqueBinding::samplerLocation):
2109         (WebCore::FragmentTexClampOpaqueAABinding::alphaLocation):
2110         (WebCore::FragmentTexClampOpaqueAABinding::samplerLocation):
2111         (WebCore::FragmentTexClampOpaqueAABinding::fragmentTexTransformLocation):
2112         (WebCore::FragmentTexClampOpaqueAABinding::edgeLocation):
2113         * platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:
2114         (WebCore::CCTiledLayerImpl::draw):
2115         * platform/graphics/chromium/cc/CCTiledLayerImpl.h:
2116
2117 2011-11-16  Tim Horton  <timothy_horton@apple.com>
2118
2119         Implement CSS3 Images cross-fade() image function
2120         https://bugs.webkit.org/show_bug.cgi?id=52162
2121         <rdar://problem/10209254>
2122
2123         Reviewed by Simon Fraser.
2124
2125         Render -webkit-cross-fade. Only cross-fades entirely composed of images will render for now,
2126         cross-fades involving generated images are not yet implemented.
2127
2128         Reorganize GeneratedImage to be the base class for GeneratorGeneratedImage and CrossfadeGeneratedImage.
2129
2130         Add a pending state to CSSImageGeneratorValue, which is used to enable the pending-images loading
2131         mechanism for -webkit-cross-fade's sub-images. Rework the logic in CSSStyleSelector to support pending
2132         generated images.
2133         
2134         Support parsing fractional values for the cross-fade amount (for example, 0.5 = 50%). Clamp cross-fade
2135         amount to 0-1 range.
2136
2137         Tests: css3/images/cross-fade-invalidation.html
2138                css3/images/cross-fade-simple.html
2139                css3/images/cross-fade-sizing.html
2140                css3/images/cross-fade-tiled.html
2141
2142         * CMakeLists.txt:
2143         * GNUmakefile.list.am:
2144         * Target.pri:
2145         * WebCore.gypi:
2146         * WebCore.xcodeproj/project.pbxproj:
2147         * css/CSSCanvasValue.h:
2148         (WebCore::CSSCanvasValue::isPending):
2149         (WebCore::CSSCanvasValue::loadSubimages):
2150         * css/CSSCrossfadeValue.cpp:
2151         (WebCore::CSSCrossfadeValue::isPending):
2152         (WebCore::CSSCrossfadeValue::loadSubimages):
2153         (WebCore::subimageIsPending):
2154         (WebCore::loadSubimage):
2155         (WebCore::cachedImageForCSSValue):
2156         (WebCore::CSSCrossfadeValue::image):
2157         (WebCore::CSSCrossfadeValue::crossfadeChanged):
2158         * css/CSSCrossfadeValue.h:
2159         (WebCore::CSSCrossfadeValue::create):
2160         (WebCore::CSSCrossfadeValue::~CSSCrossfadeValue):
2161         (WebCore::CSSCrossfadeValue::fixedSize):
2162         (WebCore::CSSCrossfadeValue::CSSCrossfadeValue):
2163         (WebCore::CSSCrossfadeValue::CrossfadeObserverProxy::CrossfadeObserverProxy):
2164         * css/CSSGradientValue.cpp:
2165         (WebCore::CSSGradientValue::image):
2166         * css/CSSGradientValue.h:
2167         (WebCore::CSSGradientValue::isPending):
2168         (WebCore::CSSGradientValue::loadSubimages):
2169         * css/CSSImageGeneratorValue.cpp:
2170         (WebCore::CSSImageGeneratorValue::generatedOrPendingImage):
2171         (WebCore::CSSImageGeneratorValue::generatedImage):
2172         (WebCore::CSSImageGeneratorValue::isPending):
2173         (WebCore::CSSImageGeneratorValue::loadSubimages):
2174         * css/CSSImageGeneratorValue.h:
2175         * css/CSSParser.cpp:
2176         (WebCore::CSSParser::parseCrossfade):
2177         * css/CSSStyleSelector.cpp:
2178         (WebCore::CSSStyleSelector::styleImage):
2179         (WebCore::CSSStyleSelector::generatedOrPendingFromValue):
2180         (WebCore::CSSStyleSelector::loadPendingImage):
2181         (WebCore::CSSStyleSelector::loadPendingImages):
2182         * css/CSSStyleSelector.h:
2183         * platform/graphics/BitmapImage.h:
2184         * platform/graphics/CrossfadeGeneratedImage.cpp: Added.
2185         (WebCore::CrossfadeGeneratedImage::CrossfadeGeneratedImage):
2186         (WebCore::CrossfadeGeneratedImage::~CrossfadeGeneratedImage):
2187         (WebCore::CrossfadeGeneratedImage::drawCrossfade):
2188         (WebCore::CrossfadeGeneratedImage::draw):
2189         (WebCore::CrossfadeGeneratedImage::drawPattern):
2190         (WebCore::CrossfadeGeneratedImage::imageChanged):
2191         * platform/graphics/CrossfadeGeneratedImage.h: Added.
2192         (WebCore::CrossfadeGeneratedImage::create):
2193         (WebCore::CrossfadeSubimageObserverProxy::CrossfadeSubimageObserverProxy):
2194         (WebCore::CrossfadeSubimageObserverProxy::setReady):
2195         * platform/graphics/GeneratedImage.h:
2196         (WebCore::GeneratedImage::GeneratedImage):
2197         * platform/graphics/GeneratorGeneratedImage.cpp: Renamed from Source/WebCore/platform/graphics/GeneratedImage.cpp.
2198         (WebCore::GeneratorGeneratedImage::draw):
2199         (WebCore::GeneratorGeneratedImage::drawPattern):
2200         (WebCore::GeneratedImage::computeIntrinsicDimensions):
2201         * platform/graphics/GeneratorGeneratedImage.h: Copied from Source/WebCore/platform/graphics/GeneratedImage.h.
2202         (WebCore::GeneratorGeneratedImage::create):
2203         (WebCore::GeneratorGeneratedImage::~GeneratorGeneratedImage):
2204         (WebCore::GeneratorGeneratedImage::GeneratorGeneratedImage):
2205         * platform/graphics/Image.h:
2206         * platform/graphics/ImageBuffer.h:
2207         * rendering/style/StylePendingImage.h:
2208         (WebCore::StylePendingImage::create):
2209         (WebCore::StylePendingImage::data):
2210         (WebCore::StylePendingImage::cssImageValue):
2211         (WebCore::StylePendingImage::cssImageGeneratorValue):
2212         (WebCore::StylePendingImage::StylePendingImage):
2213
2214
2215 2011-11-16  Dan Bernstein  <mitz@apple.com>
2216
2217         WebCore part of <rdar://problem/10262242> Add API for paginated display
2218         https://bugs.webkit.org/show_bug.cgi?id=72537
2219
2220         Reviewed by Anders Carlsson.
2221
2222         * WebCore.exp.in: Exported Page::pageCount().
2223         * page/Page.cpp:
2224         (WebCore::Page::pageCount): Added this getter.
2225         * page/Page.h:
2226
2227 2011-11-16  Shawn Singh  <shawnsingh@chromium.org>
2228
2229         [chromium] Track property changes for render surfaces.
2230         https://bugs.webkit.org/show_bug.cgi?id=72521
2231
2232         Reviewed by James Robinson.
2233
2234         Created CCRenderSurfaceTest for testing.
2235
2236         * platform/graphics/chromium/LayerRendererChromium.cpp:
2237         (WebCore::LayerRendererChromium::drawLayersOntoRenderSurfaces):
2238         * platform/graphics/chromium/cc/CCLayerImpl.cpp:
2239         (WebCore::CCLayerImpl::resetPropertyChangedFlagForSubtree):
2240         * platform/graphics/chromium/cc/CCLayerImpl.h:
2241         * platform/graphics/chromium/cc/CCRenderSurface.cpp:
2242         (WebCore::CCRenderSurface::CCRenderSurface):
2243         (WebCore::CCRenderSurface::setClipRect):
2244         (WebCore::CCRenderSurface::setContentRect):
2245         (WebCore::CCRenderSurface::surfacePropertyChanged):
2246         * platform/graphics/chromium/cc/CCRenderSurface.h:
2247         (WebCore::CCRenderSurface::resetPropertyChangedFlag):
2248
2249 2011-11-16  Ben Wells  <benwells@chromium.org>
2250
2251         Seaming on border corners with mixed colour alpha borders
2252         https://bugs.webkit.org/show_bug.cgi?id=70471
2253
2254         Reviewed by Simon Fraser.
2255
2256         Seaming is fixed by antialiasing mitred corners for edges that have alpha and are joining
2257         a side that is of a different color.
2258
2259         Test: fast/borders/border-mixed-alpha.html
2260
2261         * rendering/RenderBoxModelObject.cpp:
2262         (WebCore::colorNeedsAntiAliasAtCorner):
2263         (WebCore::RenderBoxModelObject::paintOneBorderSide):
2264
2265 2011-11-16  Sam Weinig  <sam@webkit.org>
2266
2267         JS wrappers of DOM objects should have no-op constructors
2268         https://bugs.webkit.org/show_bug.cgi?id=72556
2269
2270         Reviewed by Geoffrey Garen.
2271
2272         Stop using a RefPtr to hold DOM objects contained by JavaScript
2273         wrappers and instead use a raw pointer. We were already releasing
2274         the underlying object before the destructor ran (via the finalizer)
2275         so the default behavior of destroying the RefPtr is always unnecessary
2276         busy work. 
2277
2278         * bindings/js/JSCSSValueCustom.cpp:
2279         (WebCore::JSCSSValueOwner::finalize):
2280         * bindings/js/JSNodeCustom.cpp:
2281         (WebCore::JSNodeOwner::finalize):
2282         (WebCore::JSNode::visitChildren):
2283         Call releaseImpl() instead of clearImpl().
2284
2285         * bindings/scripts/CodeGeneratorJS.pm:
2286         (GenerateHeader):
2287         Stop storing m_impl in a RefPtr and instead use a raw pointer. Switch
2288         clearImpl() to releaseImpl(), which explicitly derefs the pointer and
2289         clear it.
2290
2291         (GenerateImplementation):
2292         Use leakPtr() to explicitly adopt the PassRefPtr into the raw pointer.
2293         Change default finalize to call releaseImpl() instead of clearImpl().
2294
2295 2011-11-16  Michael Saboff  <msaboff@apple.com>
2296
2297         Enable 8 Bit Strings in JavaScriptCore
2298         https://bugs.webkit.org/show_bug.cgi?id=71337
2299
2300         This patch turns on 8 bit strings in StringImpl and enables
2301         their use in JavaScriptCore. Some of the changes are to
2302         turn on code that had been staged (Lexer.cpp, Identifier.cpp,
2303         SmallStrings.cpp and some of StringImpl.{h,cpp}).
2304         Other changes are minor fixes to make 8 bit strings work
2305         (UString.h, StringImpl::getData16SlowCase()).
2306         Changed StringBuffer to be a templated class based on character
2307         type.  This change riplled into WebCore code as well.
2308
2309         Reviewed by Geoffrey Garen.
2310
2311         No new tests - Changes in response to refactoring StringBuffer to
2312         be a template on character type.
2313
2314         * css/CSSParser.cpp:
2315         (WebCore::quoteCSSString):
2316         * css/CSSPrimitiveValue.cpp:
2317         (WebCore::formatNumber):
2318         * dom/Document.cpp:
2319         (WebCore::canonicalizedTitle):
2320         * platform/Length.cpp:
2321         (WebCore::newCoordsArray):
2322         * platform/sql/SQLiteStatement.cpp:
2323         (WebCore::SQLiteStatement::prepare):
2324         * platform/text/TextCodecUTF16.cpp:
2325         (WebCore::TextCodecUTF16::decode):
2326         * platform/text/TextCodecUTF8.cpp:
2327         (WebCore::TextCodecUTF8::decode):
2328         * rendering/RenderText.cpp:
2329         (WebCore::makeCapitalized):
2330         * xml/XSLTProcessorLibxslt.cpp:
2331         (WebCore::writeToStringBuilder):
2332
2333 2011-11-16  Alexandre Elias  <aelias@google.com>
2334
2335         [chromium] Improvements for page scale delta during commit
2336         https://bugs.webkit.org/show_bug.cgi?id=72471
2337
2338         Reviewed by James Robinson.
2339
2340         Page scale now follows the same commit flow as scroll position:
2341         the delta is folded into m_pageScale at BFAC time, and a "sent" value
2342         is preserved for temporary use until the commit finishes.
2343
2344         I also merged setPageScaleFactor and setPageScaleFactorLimits into one
2345         function on the impl side.  The reason is that setPageFactor must
2346         be applied after the limits are updated, but on the other hand setting
2347         the limits first may cause an unnecessary clamp of the scale delta.
2348         Merging the methods avoids this bind.
2349
2350         No new tests. (planning to add later: https://bugs.webkit.org/show_bug.cgi?id=71529)
2351
2352         * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
2353         (WebCore::CCLayerTreeHost::finishCommitOnImplThread):
2354         (WebCore::CCLayerTreeHost::applyScrollAndScale):
2355         * platform/graphics/chromium/cc/CCLayerTreeHostCommon.h:
2356         * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
2357         (WebCore::CCLayerTreeHostImpl::CCLayerTreeHostImpl):
2358         (WebCore::CCLayerTreeHostImpl::setPageScaleFactorAndLimits):
2359         (WebCore::CCLayerTreeHostImpl::adjustScrollsForPageScaleChange):
2360         (WebCore::CCLayerTreeHostImpl::setScaleDelta):
2361         (WebCore::CCLayerTreeHostImpl::applyScaleDeltaToScrollLayer):
2362         (WebCore::CCLayerTreeHostImpl::scrollRootLayer):
2363         (WebCore::CCLayerTreeHostImpl::processScrollDeltas):
2364         * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
2365
2366 2011-11-16  Joshua Bell  <jsbell@chromium.org>
2367
2368         IndexedDB: Reduce nested key depth threshold, re-enable flaky test
2369         https://bugs.webkit.org/show_bug.cgi?id=72529
2370
2371         Reviewed by Adam Barth.
2372
2373         Drop maximum array key depth from 20k to 2k.
2374
2375         * bindings/v8/IDBBindingUtilities.cpp:
2376
2377 2011-11-16  Nate Chapin  <japhet@chromium.org>
2378
2379         Fix incorrect multipart handling in r100311.
2380         SubresourceLoader::didReceiveData() is getting called
2381         twice, which has unintended side effects.
2382         https://bugs.webkit.org/show_bug.cgi?id=72436
2383
2384         Reviewed by Adam Barth.
2385
2386         http/tests/multipart/invalid-image-data.html should stop
2387         asserting after this.
2388
2389         * loader/SubresourceLoader.cpp:
2390         (WebCore::SubresourceLoader::didReceiveResponse):
2391         (WebCore::SubresourceLoader::didReceiveData):
2392         (WebCore::SubresourceLoader::sendDataToResource):
2393         * loader/SubresourceLoader.h:
2394
2395 2011-11-16  Justin Schuh  <jschuh@chromium.org>
2396
2397         Clear SVG filter client when its node is detached
2398         https://bugs.webkit.org/show_bug.cgi?id=71741
2399
2400         Reviewed by Eric Seidel.
2401
2402         Test: svg/filters/reparent-animated-filter-target.html
2403
2404         * rendering/svg/SVGResourcesCache.cpp:
2405         (WebCore::SVGResourcesCache::clientDestroyed):
2406
2407 2011-11-16  John Bates  <jbates@google.com>
2408
2409         Page/layer flashes after GPU-accelerated CSS transition
2410         https://bugs.webkit.org/show_bug.cgi?id=72343
2411
2412         LayerRendererChromium was resizing the window to 1x1 at initialization.
2413         In some cases, there is no drawLayers before switching back to
2414         software rendering. This left the window resized to 1x1 and the
2415         following software paints would therefore not be visible. This change
2416         moves the reshape call into drawLayers so that it will only be called
2417         if rendering will occur.
2418
2419         Reviewed by James Robinson.
2420
2421         New test: CCLayerTreeHostImplTest.reshapeNotCalledUntilDraw.
2422
2423         * platform/graphics/chromium/LayerRendererChromium.cpp:
2424         (WebCore::LayerRendererChromium::viewportChanged):
2425         (WebCore::LayerRendererChromium::doViewportChanged):
2426         (WebCore::LayerRendererChromium::drawLayersInternal):
2427         * platform/graphics/chromium/LayerRendererChromium.h:
2428
2429 2011-11-16  Alexandre Elias  <aelias@google.com>
2430
2431         [chromium] Add null pointer check in setDeviceScaleFactor
2432         https://bugs.webkit.org/show_bug.cgi?id=72464
2433
2434         Reviewed by James Robinson.
2435
2436         No new tests. (Tiny fix.)
2437
2438         * page/Page.cpp:
2439         (WebCore::Page::setDeviceScaleFactor):
2440
2441 2011-11-16  Sheriff Bot  <webkit.review.bot@gmail.com>
2442
2443         Unreviewed, rolling out r100438.
2444         http://trac.webkit.org/changeset/100438
2445         https://bugs.webkit.org/show_bug.cgi?id=72536
2446
2447         Broke unit tests (Requested by jamesr_ on #webkit).
2448
2449         * platform/PlatformScreen.h:
2450         * platform/chromium/PlatformScreenChromium.cpp:
2451         * platform/chromium/PlatformSupport.h:
2452         * platform/graphics/chromium/cc/CCLayerTreeHost.h:
2453         (WebCore::CCSettings::CCSettings):
2454         * platform/graphics/chromium/cc/CCThreadProxy.cpp:
2455         (WebCore::CCThreadProxy::initializeImplOnImplThread):
2456
2457 2011-11-16  Andy Estes  <aestes@apple.com>
2458
2459         Assertion failure in LayerFlushScheduler::resume() when running some layout tests in WebKitTestRunner
2460         https://bugs.webkit.org/show_bug.cgi?id=72535
2461
2462         Reviewed by Anders Carlsson.
2463
2464         LayerFlushScheduler attempted to use a counter strategy for calls to
2465         suspend() and resume(), which allowed us to assert that these calls
2466         were balanced. Unfortunately it is hard to guarantee this in WebKit2,
2467         where we sometimes try to call suspend() before we've entered
2468         compositing mode (hence before we have a LayerTreeHost and a
2469         LayerFlushScheduler). When we later call resume(), this call ends up
2470         being unbalanced and asserts.
2471
2472         For now, remove the assertions and allow unbalanced calls to suspend()
2473         and resume().
2474
2475         * platform/graphics/ca/LayerFlushScheduler.cpp:
2476         (WebCore::LayerFlushScheduler::suspend):
2477         (WebCore::LayerFlushScheduler::resume):
2478         * platform/graphics/ca/LayerFlushScheduler.h:
2479         * platform/graphics/ca/mac/LayerFlushSchedulerMac.cpp:
2480         (WebCore::LayerFlushScheduler::LayerFlushScheduler):
2481         (WebCore::LayerFlushScheduler::runLoopObserverCallback):
2482         (WebCore::LayerFlushScheduler::schedule):
2483
2484 2011-11-16  Sheriff Bot  <webkit.review.bot@gmail.com>
2485
2486         Unreviewed, rolling out r100473.
2487         http://trac.webkit.org/changeset/100473
2488         https://bugs.webkit.org/show_bug.cgi?id=72534
2489
2490         "Broke the Mac Build" (Requested by mwenge2 on #webkit).
2491
2492         * CMakeLists.txt:
2493         * GNUmakefile.list.am:
2494         * Target.pri:
2495         * WebCore.gypi:
2496         * rendering/RenderBlock.cpp:
2497         (WebCore::RenderBlock::addChildIgnoringAnonymousColumnBlocks):
2498         * rendering/RenderObject.cpp:
2499         (WebCore::RenderObject::createObject):
2500         (WebCore::RenderObject::addChild):
2501         * rendering/RenderObject.h:
2502         * rendering/RenderTable.cpp:
2503         (WebCore::RenderTable::addChild):
2504         * rendering/RenderTable.h:
2505         * rendering/RenderTableCaption.cpp: Removed.
2506         * rendering/RenderTableCaption.h: Removed.
2507
2508 2011-11-16  Sheriff Bot  <webkit.review.bot@gmail.com>
2509
2510         Unreviewed, rolling out r100479.
2511         http://trac.webkit.org/changeset/100479
2512         https://bugs.webkit.org/show_bug.cgi?id=72533
2513
2514         "Broke the Mac Build" (Requested by mwenge2 on #webkit).
2515
2516         * WebCore.vcproj/WebCore.vcproj:
2517         * WebCore.xcodeproj/project.pbxproj:
2518         * rendering/RenderingAllInOne.cpp:
2519
2520 2011-11-16  Chris Fleizach  <cfleizach@apple.com>
2521
2522         WebKitTestRunner needs to support accessibility-related DRT APIs
2523         https://bugs.webkit.org/show_bug.cgi?id=42131
2524
2525         Minor changes needed to support AX testing in WKTestRunner.
2526
2527         Reviewed by Beth Dakin.
2528
2529         * WebCore.exp.in:
2530              Expose focusedUIElementForPage so that the WK2 injected bundle can retrieve it.
2531         * accessibility/mac/WebAccessibilityObjectWrapper.mm:
2532         (accessibilitySearchKeyForString):
2533             Remove an unncessary assert that was causing issues with the WK2 test run.
2534
2535 2011-11-16  Sergio Villar Senin  <svillar@igalia.com>
2536
2537         [Soup] Somet tests fail with FAIL Unexpected response data received: Wrong method: GET
2538         https://bugs.webkit.org/show_bug.cgi?id=69219
2539
2540         Reviewed by Martin Robinson.
2541
2542         Do not stop appending data to the request body if any of the blob
2543         items to upload is not accesible.
2544
2545         * platform/network/soup/ResourceHandleSoup.cpp:
2546         (WebCore::addEncodedBlobToSoupMessageBody):
2547
2548 2011-11-16  Beth Dakin  <bdakin@apple.com>
2549
2550         https://bugs.webkit.org/show_bug.cgi?id=72400
2551         Scrollbar uiStateTransitionProgress requires tracking the mouse all the time
2552         -and corresponding-
2553         <rdar://problem/10409328>
2554
2555         Reviewed by Darin Adler.
2556
2557         This patch makes it so we track the mouse all the time when we have legacy 
2558         scrollbars (rather than only tracking the mouse when the window is key). When 
2559         we're in that mode, we want to do as little work as possible when handling the 
2560         mouseMoved event so that this extra tracking has little to no performance impact. 
2561         Also, we don't want to change basic behaviors by having normal web content hover 
2562         effects start happening when a window is in the background. So this patch also 
2563         introduces a way to handle a mouseMoved event that will only affect scrollbars.
2564
2565         EventHandler::mouseMoved() and EventHandler::handleMouseEvent() both now take a 
2566         boolean parameter that indicates if we are only updating scrollbars. If that is 
2567         the case, then we make our HitTestRequest ReadOnly, and we return early once 
2568         updateLastScrollbarUnderMouse() is called.
2569         * WebCore.exp.in:
2570         * page/EventHandler.cpp:
2571         (WebCore::EventHandler::mouseMoved):
2572         (WebCore::EventHandler::handleMouseMoveEvent):
2573
2574         In addition to calling Scrollbar::mouseExited() when appropriate, this function 
2575         now calls a new function, Scrollbar::mouseEntered() when appropriate. 
2576         (WebCore::EventHandler::updateLastScrollbarUnderMouse):
2577         * page/EventHandler.h:
2578
2579         Scrollbar::mouseMoved() used to be responsible for calling 
2580         ScrollAnimator::mouseEnteredScrollbar(), but now Scrollbar::mouseEntered() takes 
2581         care of that instead, much like how Scrollbar::mouseExited() takes care of calling 
2582         the animator's exit function.
2583         * platform/Scrollbar.cpp:
2584         (WebCore::Scrollbar::mouseMoved):
2585         (WebCore::Scrollbar::mouseEntered):
2586         * platform/Scrollbar.h:
2587
2588 2011-11-16  Andreas Kling  <kling@webkit.org>
2589
2590         CSSValue: isInheritedValue() doesn't need a dedicated bit.
2591         <http://webkit.org/b/72514>
2592
2593         Reviewed by Antti Koivisto.
2594
2595         Remove CSSValue::m_isInherited and have isInheritedValue() check the
2596         class type instead. There's no compelling reason for CSSInheritedValue
2597         to have a dedicated bit, since nobody subclasses it anyway.
2598
2599         * css/CSSValue.h:
2600         (WebCore::CSSValue::isInheritedValue):
2601         (WebCore::CSSValue::CSSValue):
2602
2603 2011-11-16  Robert Hogan  <robert@webkit.org>
2604
2605         Fix build on Windows and Mac after r100473
2606
2607         Unreviewed, fix build.
2608
2609         * WebCore.vcproj/WebCore.vcproj:
2610         * WebCore.xcodeproj/project.pbxproj:
2611         * rendering/RenderingAllInOne.cpp:
2612
2613 2011-11-16  Philip Rogers  <pdr@google.com>
2614
2615         Remove extra GraphicsContextStateSaver restore() call.
2616         https://bugs.webkit.org/show_bug.cgi?id=72497
2617
2618         Reviewed by Andreas Kling.
2619
2620         * html/canvas/CanvasRenderingContext2D.cpp:
2621         (WebCore::CanvasRenderingContext2D::drawTextInternal):
2622
2623 2011-11-08  Robert Hogan  <robert@webkit.org>
2624
2625         CSS 2.1 failure: border-collapse-offset-002.htm fails
2626         https://bugs.webkit.org/show_bug.cgi?id=71705
2627
2628         Table captions are implemented as children of the table but have a special
2629         requirement to expand to the full width of the table rather than just the 'available'
2630         width, i.e. the full width minus padding and borders.
2631
2632         To accomodate this create a RenderTableCaption object that reimplements containingBlockLogicalWidthForContent()
2633         to return the full width of the containing block (i.e. the table) rather than the available width.
2634
2635         Reviewed by Antti Koivisto.
2636
2637         * CMakeLists.txt: Add RenderTableCaption.[cpp|h]
2638         * GNUmakefile.list.am: Add RenderTableCaption.[cpp|h]
2639         * Target.pri: Add RenderTableCaption.[cpp|h]
2640         * WebCore.gypi: Add RenderTableCaption.[cpp|h]
2641         * rendering/RenderBlock.cpp:
2642         (WebCore::RenderBlock::addChildIgnoringAnonymousColumnBlocks): Use RenderTableCaption
2643         * rendering/RenderObject.cpp:
2644         (WebCore::RenderObject::createObject): Add RenderTableCaption.[cpp|h]
2645         (WebCore::RenderObject::addChild): ditto
2646         * rendering/RenderObject.h:
2647         (WebCore::RenderObject::isTableCaption):
2648         * rendering/RenderTable.cpp:
2649         (WebCore::RenderTable::addChild):
2650         * rendering/RenderTable.h:
2651         * rendering/RenderTableCaption.cpp: Added.
2652         (WebCore::RenderTableCaption::RenderTableCaption): Implement RenderTableCaption
2653         (WebCore::RenderTableCaption::~RenderTableCaption):
2654         (WebCore::RenderTableCaption::containingBlockLogicalWidthForContent): Return the containing block's full width rather than it's available width.
2655         * rendering/RenderTableCaption.h: Added.
2656         (WebCore::RenderTableCaption::isTableCaption):
2657         (WebCore::toRenderTableCaption):
2658
2659 2011-11-16  Antaryami Pandia  <antaryami.pandia@motorola.com>
2660
2661         [Gtk] display:none has no effect on <option> element.
2662         https://bugs.webkit.org/show_bug.cgi?id=72370
2663
2664         Reviewed by Martin Robinson.
2665
2666         * platform/gtk/GtkPopupMenu.cpp:
2667         (WebCore::GtkPopupMenu::appendItem):
2668         * platform/gtk/PopupMenuGtk.cpp:
2669         (WebCore::PopupMenuGtk::createGtkActionForMenuItem):
2670
2671 2011-11-16  Dan Winship  <danw@gnome.org>
2672
2673         [GTK] Fix platformDefersLoading to handle non-http requests, and
2674         to not use broken-ish libsoup APIs.
2675         https://bugs.webkit.org/show_bug.cgi?id=72227
2676
2677         Reviewed by Martin Robinson.
2678
2679         * platform/network/ResourceHandleInternal.h:
2680         * platform/network/soup/ResourceHandleSoup.cpp:
2681         (WebCore::sendRequestCallback):
2682         (WebCore::startHTTPRequest):
2683         (WebCore::hasBeenSent):
2684         (WebCore::ResourceHandle::platformSetDefersLoading):
2685         (WebCore::readCallback): rather than deferring by using
2686         soup_session_pause_message(), let the read complete, but just don't
2687         process the result until we're no longer deferred.
2688         (WebCore::startNonHTTPRequest): Don't start the request if
2689         it's deferred.
2690
2691 2011-11-16  Vsevolod Vlasov  <vsevik@chromium.org>
2692
2693         Web Inspector: Application cache status should be updated after swapCache().
2694         https://bugs.webkit.org/show_bug.cgi?id=72123
2695
2696         Reviewed by Pavel Feldman.
2697
2698         Application cache view resources and status are now updated after swapCache() call.
2699         Refresh button removed from application cache view.
2700         Application cache inspector tests are moved to their own folder.
2701
2702         Tests: http/tests/inspector/appcache/appcache-iframe-manifests.html
2703                http/tests/inspector/appcache/appcache-manifest-with-non-existing-file.html
2704                http/tests/inspector/appcache/appcache-swap.html
2705
2706         * inspector/front-end/ApplicationCacheItemsView.js:
2707         (WebInspector.ApplicationCacheItemsView):
2708         (WebInspector.ApplicationCacheItemsView.prototype.get statusBarItems):
2709         (WebInspector.ApplicationCacheItemsView.prototype.wasShown):
2710         (WebInspector.ApplicationCacheItemsView.prototype._maybeUpdate):
2711         (WebInspector.ApplicationCacheItemsView.prototype._markDirty):
2712         (WebInspector.ApplicationCacheItemsView.prototype.updateStatus):
2713         (WebInspector.ApplicationCacheItemsView.prototype._updateCallback):
2714         (WebInspector.ApplicationCacheItemsView.prototype._deleteCallback):
2715         * loader/appcache/ApplicationCacheGroup.cpp:
2716         (WebCore::ApplicationCacheGroup::setNewestCache):
2717         (WebCore::ApplicationCacheGroup::makeObsolete):
2718         (WebCore::ApplicationCacheGroup::setUpdateStatus):
2719         * loader/appcache/ApplicationCacheHost.cpp:
2720         (WebCore::ApplicationCacheHost::notifyDOMApplicationCache):
2721         (WebCore::ApplicationCacheHost::swapCache):
2722
2723 2011-11-16  Eric Carlson  <eric.carlson@apple.com>
2724
2725         addTrack() must throw an exception if 'kind' is unknown
2726         https://bugs.webkit.org/show_bug.cgi?id=71915
2727
2728         Reviewed by Philippe Normand.
2729
2730         Tests: media/track/track-addtrack-kind.html
2731                media/track/track-kind.html
2732
2733         * html/HTMLMediaElement.cpp:
2734         (WebCore::HTMLMediaElement::textTrackKindChanged): New. Will be implemented for 62885.
2735         (WebCore::HTMLMediaElement::addTrack): Throw if  'kind' is not a known value.
2736         (WebCore::HTMLMediaElement::addTextTrack): Call textTracks(), it will allocate the track
2737             list object if necessary.
2738         (WebCore::HTMLMediaElement::textTracks): Never return NULL, a TextTrackList with no tracks
2739             is allowed.
2740         * html/HTMLMediaElement.h:
2741         (WebCore::HTMLMediaElement::addTrack): Add variants to deal with optional parameters plus
2742             a mandatory ExceptionCode parameter.
2743         * html/HTMLMediaElement.idl: addTrack can generate an exception.
2744
2745         * html/HTMLTrackElement.cpp:
2746         (WebCore::HTMLTrackElement::attributeChanged): kind, label, and srclang attribute changes should
2747             percolate down the the TextTrack.
2748         (WebCore::HTMLTrackElement::kind): Return the TextTrack kind because it is not necessarily the
2749             same as the attribute value.
2750         (WebCore::HTMLTrackElement::ensureTrack): Only pass legal 'kind' keywords to create a TextTrack.
2751         (WebCore::HTMLTrackElement::textTrackKindChanged): Notify parent element, if any.
2752         * html/HTMLTrackElement.h:
2753
2754         * html/TextTrack.cpp:
2755         (WebCore::TextTrack::subtitlesKeyword): New, return legal kind attribute value.
2756         (WebCore::TextTrack::captionsKeyword): Ditto.
2757         (WebCore::TextTrack::descriptionsKeyword): Ditto.
2758         (WebCore::TextTrack::chaptersKeyword): Ditto.
2759         (WebCore::TextTrack::metadataKeyword): Ditto.
2760         (WebCore::TextTrack::TextTrack): Call setKind to make sure m_kind is always set to legal value.
2761         (WebCore::TextTrack::isValidKindKeyword): New, validate 'kind' value.
2762         (WebCore::TextTrack::setKind): Only allow legal values.
2763         * html/TextTrack.h:
2764         (WebCore::TextTrack::kind):
2765         (WebCore::TextTrack::label):
2766         (WebCore::TextTrack::setLabel):
2767         (WebCore::TextTrack::language):
2768         (WebCore::TextTrack::setLanguage):
2769         (WebCore::TextTrack::readyState):
2770         (WebCore::TextTrack::mode):
2771
2772 2011-11-16  Andreas Kling  <kling@webkit.org>
2773
2774         CSSValue: Clean up initial value construction.
2775         <http://webkit.org/b/72502>
2776
2777         Reviewed by Antti Koivisto.
2778
2779         Instead of determining whether a given CSSInitialValue is 'implicit' or not by
2780         querying the CSSValue::ClassType (InitialClass vs. ImplicitInitialClass),
2781         add a protected CSSValue member and set it from the CSSInitialValue constructor.
2782
2783         Also get rid of the CSSValue::m_isInitial bit since we can now replace the
2784         checks by classType() == InitialClass.
2785
2786         No new tests, this is a cleanup.
2787
2788         * css/CSSInitialValue.h:
2789         (WebCore::CSSInitialValue::CSSInitialValue):
2790
2791             Poke 'implicit' constructor argument into CSSValue::m_isImplicit.
2792
2793         * css/CSSValue.cpp:
2794         (WebCore::CSSValue::cssText):
2795         (WebCore::CSSValue::destroy):
2796
2797             Remove ImplicitInitialClass cases.
2798
2799         * css/CSSValue.h:
2800         (WebCore::CSSValue::isImplicitInitialValue):
2801         (WebCore::CSSValue::isInitialValue):
2802         (WebCore::CSSValue::CSSValue):
2803
2804 2011-11-16  Antaryami Pandia  <antaryami.pandia@motorola.com>
2805
2806         Remove unnecessary if check from RenderListBox::paintItemForeground.
2807         https://bugs.webkit.org/show_bug.cgi?id=72488
2808
2809         Reviewed by Andreas Kling.
2810
2811         * rendering/RenderListBox.cpp:
2812         (WebCore::RenderListBox::paintItemForeground):
2813
2814 2011-11-15  Simon Hausmann  <simon.hausmann@nokia.com>
2815
2816         [Qt] Centralize hide_symbols and ensure all libs are built with symbol visibility & bsymbolic_functions
2817
2818         Reviewed by Tor Arne Vestbø.
2819
2820         * Target.pri: Eliminate duplicated symbol stuff that lives now in default_post.prf.
2821
2822 2011-11-16  Iain Merrick  <husky@google.com>
2823
2824         [chromium] Pass screen refresh rate into compositor.
2825         https://bugs.webkit.org/show_bug.cgi?id=71040
2826
2827         Reviewed by Tony Gentilcore.
2828
2829         * platform/PlatformScreen.h:
2830         * platform/chromium/PlatformScreenChromium.cpp:
2831         (WebCore::screenRefreshRate):
2832         * platform/chromium/PlatformSupport.h:
2833         * platform/graphics/chromium/cc/CCLayerTreeHost.h:
2834         (WebCore::CCSettings::CCSettings):
2835         * platform/graphics/chromium/cc/CCThreadProxy.cpp:
2836         (WebCore::CCThreadProxy::initializeImplOnImplThread):
2837
2838 2011-11-15  Andrey Kosyakov  <caseq@chromium.org>
2839
2840         Web Inspector: [Extensions API] drop ExtensionSidebarPane.onUpdated, use callbacks instead
2841         https://bugs.webkit.org/show_bug.cgi?id=72388
2842
2843         Reviewed by Pavel Feldman.
2844
2845         Tests: inspector/extensions/extensions-panel.html
2846                inspector/extensions/extensions-sidebar.html
2847
2848         - fire ExtensionSidebarPane.on{Hidden,Shown} for non-iframe content (experssions/objects);
2849         - drop ExtensionsSidebarPane.onUpdated, provide callback for setObject()/setExpression() instead;
2850         - fix an exception when a page is replaced with object/expression.
2851
2852          inspector/front-end/ExtensionAPI.js:
2853         (injectedExtensionAPI.ExtensionSidebarPaneImpl):
2854         (injectedExtensionAPI.ExtensionSidebarPaneImpl.prototype.setExpression):
2855         (injectedExtensionAPI.ExtensionSidebarPaneImpl.prototype.setObject):
2856         * inspector/front-end/ExtensionPanel.js:
2857         (WebInspector.ExtensionNotifierView):
2858         (WebInspector.ExtensionNotifierView.prototype.wasShown):
2859         (WebInspector.ExtensionNotifierView.prototype.willHide):
2860         (WebInspector.ExtensionSidebarPane.prototype.setObject):
2861         (WebInspector.ExtensionSidebarPane.prototype.setExpression):
2862         (WebInspector.ExtensionSidebarPane.prototype.setPage):
2863         (WebInspector.ExtensionSidebarPane.prototype._onEvaluate):
2864         (WebInspector.ExtensionSidebarPane.prototype._makeObjectPropertiesView):
2865         (WebInspector.ExtensionSidebarPane.prototype._setObject):
2866         * inspector/front-end/ExtensionServer.js:
2867         (WebInspector.ExtensionServer.prototype._onSetSidebarContent.callback):
2868         (WebInspector.ExtensionServer.prototype._onSetSidebarContent):
2869         (WebInspector.ExtensionServer.prototype._dispatchCallback):
2870         * inspector/front-end/View.js:
2871         (WebInspector.View.prototype.detach):
2872
2873 2011-11-16  Simon Hausmann  <simon.hausmann@nokia.com>
2874
2875         Unreviewed, rolling out r100266.
2876         http://trac.webkit.org/changeset/100266
2877
2878         Broke WTR.
2879
2880         * Target.pri:
2881
2882 2011-11-16  Per-Erik Brodin  <per-erik.brodin@ericsson.com>
2883
2884         [GTK] fast/events/event-creation.html fails creating MediaStreamEvent
2885         https://bugs.webkit.org/show_bug.cgi?id=70720
2886
2887         Reviewed by Philippe Normand.
2888
2889         Added missing overriding of Event::interfaceName()
2890
2891         * mediastream/MediaStreamEvent.cpp:
2892         (WebCore::MediaStreamEvent::stream): Changed return value to raw pointer.
2893         (WebCore::MediaStreamEvent::interfaceName): Added back from r98044.
2894         * mediastream/MediaStreamEvent.h:
2895         * mediastream/MediaStreamEvent.idl: Changed module name to "events".
2896
2897 2011-11-16  Mario Sanchez Prada  <msanchez@igalia.com>
2898
2899         [GTK] Use GQuark's in the ATK wrapper to get and set arbitrary data
2900         https://bugs.webkit.org/show_bug.cgi?id=72394
2901
2902         Reviewed by Martin Robinson.
2903
2904         No new functionality, no new tests needed.
2905
2906         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
2907         (webkit_accessible_class_init): Initialize GQuarks.
2908         (getGailTextUtilForAtk): Use gailTextUtilQuark.
2909         (getPangoLayoutForAtk): Remove unused call to
2910         g_object_set_data_full, since that data is no used anywhere.
2911         (webkitAccessibleHyperlinkImplGetHyperlink): Use hyperlinkObjectQuark.
2912
2913 2011-11-15  Alexandru Chiculita  <achicu@adobe.com>
2914
2915         [CSSShaders] Implement the style cached resources and computed style for the shader urls
2916         https://bugs.webkit.org/show_bug.cgi?id=72378
2917
2918         Reviewed by Dean Jackson.
2919
2920         Test: css3/filters/custom-filter-property-computed-style.html
2921
2922         * GNUmakefile.list.am:
2923         * Target.pri:
2924         * WebCore.gypi:
2925         * WebCore.vcproj/WebCore.vcproj:
2926         * WebCore.xcodeproj/project.pbxproj:
2927         * css/CSSComputedStyleDeclaration.cpp:
2928         (WebCore::CSSComputedStyleDeclaration::valueForFilter):
2929         * css/CSSStyleSelector.cpp:
2930         (WebCore::CSSStyleSelector::CSSStyleSelector):
2931         (WebCore::CSSStyleSelector::styleForKeyframe):
2932         (WebCore::CSSStyleSelector::pseudoStyleForElement):
2933         (WebCore::CSSStyleSelector::styleForPage):
2934         (WebCore::CSSStyleSelector::applyMatchedDeclarations):
2935         (WebCore::CSSStyleSelector::styleShader):
2936         (WebCore::CSSStyleSelector::cachedOrPendingStyleShaderFromValue):
2937         (WebCore::CSSStyleSelector::loadPendingShaders):
2938         (WebCore::CSSStyleSelector::createCustomFilterOperation):
2939         (WebCore::CSSStyleSelector::createFilterOperations):
2940         * css/CSSStyleSelector.h:
2941         * css/WebKitCSSShaderValue.cpp:
2942         (WebCore::WebKitCSSShaderValue::WebKitCSSShaderValue):
2943         (WebCore::WebKitCSSShaderValue::~WebKitCSSShaderValue):
2944         (WebCore::WebKitCSSShaderValue::cachedShader):
2945         (WebCore::WebKitCSSShaderValue::cachedOrPendingShader):
2946         * css/WebKitCSSShaderValue.h:
2947         * loader/cache/CachedResource.cpp:
2948         (WebCore::defaultPriorityForResourceType):
2949         * loader/cache/CachedResource.h:
2950         * loader/cache/CachedResourceLoader.cpp:
2951         (WebCore::createResource):
2952         (WebCore::CachedResourceLoader::requestShader):
2953         (WebCore::CachedResourceLoader::checkInsecureContent):
2954         (WebCore::CachedResourceLoader::canRequest):
2955         * loader/cache/CachedResourceLoader.h:
2956         * loader/cache/CachedShader.cpp:
2957         (WebCore::CachedShader::CachedShader):
2958         (WebCore::CachedShader::~CachedShader):
2959         * loader/cache/CachedShader.h:
2960         * platform/graphics/filters/CustomFilterOperation.h:
2961         * rendering/style/RenderStyle.h:
2962         (WebCore::InheritedFlags::filter):
2963         * rendering/style/StyleCachedShader.cpp:
2964         (WebCore::StyleCachedShader::StyleCachedShader):
2965         (WebCore::StyleCachedShader::cssValue):
2966         * rendering/style/StyleCachedShader.h:
2967         (WebCore::StyleCachedShader::create):
2968         * rendering/style/StylePendingShader.h:
2969         (WebCore::StylePendingShader::create):
2970         (WebCore::StylePendingShader::cssValue):
2971         (WebCore::StylePendingShader::cssShaderValue):
2972         (WebCore::StylePendingShader::StylePendingShader):
2973         * rendering/style/StyleShader.h:
2974         (WebCore::StyleShader::~StyleShader):
2975         (WebCore::StyleShader::isCachedShader):
2976         (WebCore::StyleShader::isPendingShader):
2977         (WebCore::StyleShader::StyleShader):
2978
2979 2011-11-15  Sergio Villar Senin  <svillar@igalia.com>
2980
2981         [WK2] [GTK] fast/css/webkit-mask-crash-fieldset-legend.html asserts WebKitWebProcess
2982         https://bugs.webkit.org/show_bug.cgi?id=69510
2983
2984         Reviewed by Simon Fraser.
2985
2986         End the current transparency layer before early returning from
2987         paintMask() when there is a maskBoxImage which is still being
2988         loaded. This will balance the previous call to
2989         beginTransparencyLayer().
2990
2991         * rendering/InlineFlowBox.cpp:
2992         (WebCore::InlineFlowBox::paintMask):
2993
2994 2011-11-15  Darin Adler  <darin@apple.com>
2995
2996         Incorrect type checks in RenderTheme media code
2997         https://bugs.webkit.org/show_bug.cgi?id=72184
2998
2999         Reviewed by Eric Carlson.
3000
3001         No tests added. Ideally this patch should be revised to add tests!
3002
3003         * accessibility/AccessibilityMediaControls.cpp:
3004         (WebCore::AccessibilityMediaControl::create): Use mediaControlElementType.
3005         (WebCore::AccessibilityMediaControl::controlType): Ditto.
3006         (WebCore::AccessibilityMediaTimeline::valueDescription): Use early return
3007         rather than an assertion to check type of input element.
3008
3009         * html/shadow/MediaControlElements.cpp:
3010         (WebCore::mediaControlElementType): Added. A type-safe way to get the
3011         media control element type after checking isMediaControlElement but with
3012         no other assumptions.
3013         * html/shadow/MediaControlElements.h: Added mediaControlElementType.
3014
3015         * platform/efl/RenderThemeEfl.cpp:
3016         (WebCore::RenderThemeEfl::paintMediaPlayButton): Use mediaControlElementType.
3017         (WebCore::RenderThemeEfl::paintMediaSeekBackButton): Use mediaControlElementType.
3018         (WebCore::RenderThemeEfl::paintMediaSeekForwardButton): Use mediaControlElementType.
3019         * platform/gtk/RenderThemeGtk.cpp:
3020         (WebCore::RenderThemeGtk::paintMediaPlayButton): Check isMediaControlElement and
3021         use mediaControlElementType.
3022         * rendering/RenderThemeMac.mm:
3023         (WebCore::RenderThemeMac::paintMediaMuteButton): Ditto. Also remove uneeded
3024         redundant null check.
3025         (WebCore::RenderThemeMac::paintMediaPlayButton): Ditto.
3026         (WebCore::RenderThemeMac::paintMediaToggleClosedCaptionsButton): Ditto.
3027
3028 2011-11-15  Jeff Timanus  <twiz@chromium.org>
3029
3030         [chromium] During tear down, prevent the WebGLLayerChromium instance from attempting to stop a timer for a NULL context.
3031         https://bugs.webkit.org/show_bug.cgi?id=72423
3032
3033         Reviewed by Kenneth Russell.
3034
3035         * platform/graphics/chromium/WebGLLayerChromium.cpp:
3036         (WebCore::WebGLLayerChromium::setDrawingBuffer):
3037
3038 2011-11-15  Mark Hahnenberg  <mhahnenberg@apple.com>
3039
3040         Rebaseline generated WebCore bindings
3041
3042         Unreviewed build fix
3043
3044         No new tests.
3045
3046         * bindings/scripts/test/JS/JSTestEventConstructor.cpp:
3047         (WebCore::isObservable):
3048         (WebCore::JSTestEventConstructorOwner::isReachableFromOpaqueRoots):
3049         (WebCore::JSTestEventConstructorOwner::finalize):
3050         * bindings/scripts/test/JS/JSTestEventConstructor.h:
3051         (WebCore::JSTestEventConstructor::clearImpl):
3052         (WebCore::wrapperOwner):
3053         (WebCore::wrapperContext):
3054         * bindings/scripts/test/JS/JSTestInterface.cpp:
3055         (WebCore::JSTestInterfaceOwner::finalize):
3056         * bindings/scripts/test/JS/JSTestInterface.h:
3057         (WebCore::JSTestInterface::clearImpl):
3058         * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
3059         (WebCore::isObservable):
3060         (WebCore::JSTestMediaQueryListListenerOwner::isReachableFromOpaqueRoots):
3061         (WebCore::JSTestMediaQueryListListenerOwner::finalize):
3062         * bindings/scripts/test/JS/JSTestMediaQueryListListener.h:
3063         (WebCore::JSTestMediaQueryListListener::clearImpl):
3064         (WebCore::wrapperOwner):
3065         (WebCore::wrapperContext):
3066         * bindings/scripts/test/JS/JSTestNamedConstructor.cpp:
3067         (WebCore::JSTestNamedConstructorOwner::finalize):
3068         * bindings/scripts/test/JS/JSTestNamedConstructor.h:
3069         (WebCore::JSTestNamedConstructor::clearImpl):
3070         * bindings/scripts/test/JS/JSTestObj.cpp:
3071         (WebCore::isObservable):
3072         (WebCore::JSTestObjOwner::isReachableFromOpaqueRoots):
3073         (WebCore::JSTestObjOwner::finalize):
3074         * bindings/scripts/test/JS/JSTestObj.h:
3075         (WebCore::JSTestObj::clearImpl):
3076         (WebCore::wrapperOwner):
3077         (WebCore::wrapperContext):
3078         * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
3079         (WebCore::isObservable):
3080         (WebCore::JSTestSerializedScriptValueInterfaceOwner::isReachableFromOpaqueRoots):
3081         (WebCore::JSTestSerializedScriptValueInterfaceOwner::finalize):
3082         * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.h:
3083         (WebCore::JSTestSerializedScriptValueInterface::clearImpl):
3084         (WebCore::wrapperOwner):
3085         (WebCore::wrapperContext):
3086
3087 2011-11-15  Jeff Timanus  <twiz@chromium.org>
3088
3089         Patch removing duplicated code in the setup of the DrawingBuffer used
3090         to host the back-buffer for WebGL contents.
3091         https://bugs.webkit.org/show_bug.cgi?id=72327
3092
3093         Reviewed by Kenneth Russell.
3094
3095         * html/canvas/WebGLRenderingContext.cpp:
3096         (WebCore::WebGLRenderingContext::copyTexImage2D):
3097         (WebCore::WebGLRenderingContext::copyTexSubImage2D):
3098         (WebCore::WebGLRenderingContext::readPixels):
3099
3100 2011-11-15  Mark Hahnenberg  <mhahnenberg@apple.com>
3101
3102         JS DOM wrappers depend on destructor to deref impl RefPtrs
3103         https://bugs.webkit.org/show_bug.cgi?id=72341
3104
3105         Reviewed by Sam Weinig.
3106
3107         No new tests.
3108
3109         Added clearing of impl RefPtrs to JS DOM wrapper nodes and removed the default 
3110         wrapperOwner function in favor of generating all WeakHandleOwners and wrapperOwner functions.
3111
3112         * bindings/js/JSCSSValueCustom.cpp:
3113         (WebCore::JSCSSValueOwner::finalize):
3114         * bindings/js/JSDOMBinding.h:
3115         * bindings/js/JSNodeCustom.cpp:
3116         (WebCore::JSNodeOwner::finalize):
3117         * bindings/scripts/CodeGeneratorJS.pm:
3118         (GenerateHeader):
3119         (GenerateImplementation):
3120
3121 2011-11-15  Joseph Pecoraro  <pecoraro@apple.com>
3122
3123         Web Inspector: Share Highlight Code for Drawing Outlined Quad
3124         https://bugs.webkit.org/show_bug.cgi?id=72451
3125
3126         Reviewed by Timothy Hatcher.
3127
3128         * inspector/DOMNodeHighlighter.cpp:
3129
3130 2011-11-15  Sheriff Bot  <webkit.review.bot@gmail.com>
3131
3132         Unreviewed, rolling out r100308.
3133         http://trac.webkit.org/changeset/100308
3134         https://bugs.webkit.org/show_bug.cgi?id=72450
3135
3136         Introduces WebGL conformance test regressions. (Requested by
3137         twiz on #webkit).
3138
3139         * html/canvas/WebGLRenderingContext.cpp:
3140         (WebCore::WebGLRenderingContext::copyTexImage2D):
3141         (WebCore::WebGLRenderingContext::copyTexSubImage2D):
3142         (WebCore::WebGLRenderingContext::readPixels):
3143
3144 2011-11-15  James Robinson  <jamesr@chromium.org>
3145
3146         Rollout http://trac.webkit.org/changeset/99813, caused some crashes in
3147         TiledLayerChromium::updateCompositorResources()
3148
3149         * WebCore.gypi:
3150         * platform/graphics/chromium/BitmapCanvasLayerTextureUpdater.cpp: Removed.
3151         * platform/graphics/chromium/BitmapCanvasLayerTextureUpdater.h: Removed.
3152         * platform/graphics/chromium/CanvasLayerTextureUpdater.cpp: Removed.
3153         * platform/graphics/chromium/CanvasLayerTextureUpdater.h: Removed.
3154         * platform/graphics/chromium/ContentLayerChromium.cpp:
3155         (WebCore::ContentLayerChromium::createTextureUpdater):
3156         * platform/graphics/chromium/FrameBufferSkPictureCanvasLayerTextureUpdater.h: Removed.
3157         * platform/graphics/chromium/ImageLayerChromium.cpp:
3158         (WebCore::ImageLayerTextureUpdater::prepareToUpdate):
3159         * platform/graphics/chromium/LayerRendererChromium.cpp:
3160         * platform/graphics/chromium/LayerTextureUpdater.h:
3161         * platform/graphics/chromium/LayerTextureUpdaterCanvas.cpp: Renamed from Source/WebCore/platform/graphics/chromium/FrameBufferSkPictureCanvasLayerTextureUpdater.cpp.
3162         (WebCore::FrameBuffer::FrameBuffer::FrameBuffer):
3163         (WebCore::FrameBuffer::FrameBuffer::~FrameBuffer):
3164         (WebCore::FrameBuffer::FrameBuffer::initialize):
3165         (WebCore::LayerTextureUpdaterCanvas::LayerTextureUpdaterCanvas):
3166         (WebCore::LayerTextureUpdaterCanvas::paintContents):
3167         (WebCore::LayerTextureUpdaterBitmap::create):
3168         (WebCore::LayerTextureUpdaterBitmap::LayerTextureUpdaterBitmap):
3169         (WebCore::LayerTextureUpdaterBitmap::sampledTexelFormat):
3170         (WebCore::LayerTextureUpdaterBitmap::prepareToUpdate):
3171         (WebCore::LayerTextureUpdaterBitmap::updateTextureRect):
3172         (WebCore::LayerTextureUpdaterSkPicture::create):
3173         (WebCore::LayerTextureUpdaterSkPicture::LayerTextureUpdaterSkPicture):
3174         (WebCore::LayerTextureUpdaterSkPicture::~LayerTextureUpdaterSkPicture):
3175         (WebCore::LayerTextureUpdaterSkPicture::sampledTexelFormat):
3176         (WebCore::LayerTextureUpdaterSkPicture::prepareToUpdate):
3177         (WebCore::LayerTextureUpdaterSkPicture::updateTextureRect):
3178         * platform/graphics/chromium/LayerTextureUpdaterCanvas.h: Added.
3179         (WebCore::LayerTextureUpdaterCanvas::contentRect):
3180         (WebCore::LayerTextureUpdaterBitmap::orientation):
3181         (WebCore::LayerTextureUpdaterSkPicture::orientation):
3182         * platform/graphics/chromium/SkPictureCanvasLayerTextureUpdater.cpp: Removed.
3183         * platform/graphics/chromium/SkPictureCanvasLayerTextureUpdater.h: Removed.
3184         * platform/graphics/chromium/TiledLayerChromium.cpp:
3185         (WebCore::UpdatableTile::UpdatableTile):
3186         (WebCore::UpdatableTile::texture):
3187         (WebCore::TiledLayerChromium::updateCompositorResources):
3188         (WebCore::TiledLayerChromium::pushPropertiesTo):
3189         (WebCore::TiledLayerChromium::createTile):
3190         (WebCore::TiledLayerChromium::protectTileTextures):
3191         (WebCore::TiledLayerChromium::prepareToUpdate):
3192         * platform/graphics/chromium/cc/CCTextureUpdater.cpp:
3193         (WebCore::CCTextureUpdater::append):
3194         (WebCore::CCTextureUpdater::update):
3195         * platform/graphics/chromium/cc/CCTextureUpdater.h:
3196
3197 2011-11-15  Julien Chaffraix  <jchaffraix@webkit.org>
3198
3199         Add the needed plumbing to parse display: -webkit-inline-grid
3200         https://bugs.webkit.org/show_bug.cgi?id=72438
3201
3202         Reviewed by Tony Chang.
3203
3204         Test: fast/css-grid-layout/display-grid-set-get.html
3205
3206         Added the needed constants and plugged everything together.
3207         Again we treat display: -webkit-inline-grid like display: none
3208         for the moment.
3209
3210         * css/CSSParser.cpp:
3211         (WebCore::CSSParser::parseValue):
3212         * css/CSSPrimitiveValueMappings.h:
3213         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
3214         * css/CSSValueKeywords.in:
3215         * rendering/RenderObject.cpp:
3216         (WebCore::RenderObject::createObject):
3217         * rendering/style/RenderStyleConstants.h:
3218
3219 2011-11-15  W. James MacLean  <wjmaclean@chromium.org>
3220
3221         [chromium] Move setVisibleRect() calls into calculateDrawTransformAndVisibility()
3222         https://bugs.webkit.org/show_bug.cgi?id=72162
3223
3224         Reviewed by Kenneth Russell.
3225
3226         Refactoring of existing functionality, so uses existing tests.
3227
3228         * platform/graphics/chromium/LayerRendererChromium.cpp:
3229         (WebCore::LayerRendererChromium::drawLayer):
3230         * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
3231         (WebCore::paintContentsIfDirty):
3232         (WebCore::CCLayerTreeHost::paintMaskAndReplicaForRenderSurface):
3233         (WebCore::CCLayerTreeHost::paintLayerContents):
3234         * platform/graphics/chromium/cc/CCLayerTreeHostCommon.cpp:
3235         (WebCore::walkLayersAndCalculateVisibleLayerRects):
3236         (WebCore::CCLayerTreeHostCommon::calculateDrawTransformsAndVisibility):
3237
3238 2011-11-15  Sheriff Bot  <webkit.review.bot@gmail.com>
3239
3240         Unreviewed, rolling out r100340.
3241         http://trac.webkit.org/changeset/100340
3242         https://bugs.webkit.org/show_bug.cgi?id=72448
3243
3244         Caused assertion failure in Win dbg canary. (Requested by
3245         pkasting on #webkit).
3246
3247         * platform/graphics/chromium/LayerRendererChromium.cpp:
3248         (WebCore::LayerRendererChromium::LayerRendererChromium):
3249         (WebCore::LayerRendererChromium::viewportChanged):
3250         (WebCore::LayerRendererChromium::drawLayersInternal):
3251         * platform/graphics/chromium/LayerRendererChromium.h:
3252
3253 2011-11-15  Julien Chaffraix  <jchaffraix@webkit.org>
3254
3255         Switch table indexing to unsigned
3256         https://bugs.webkit.org/show_bug.cgi?id=72083
3257
3258         Reviewed by Darin Adler.
3259
3260         No expected change in behavior.
3261
3262         All of the code is now using unsigned for indexing!
3263
3264         * rendering/FixedTableLayout.cpp:
3265         (WebCore::FixedTableLayout::layout):
3266         * rendering/RenderTable.cpp:
3267         (WebCore::RenderTable::colElement):
3268         (WebCore::RenderTable::cellAbove):
3269         * rendering/RenderTableSection.cpp:
3270         (WebCore::RenderTableSection::splitColumn):
3271         Added some ASSERTs to make sure we don't underflow. Looking at how
3272         the different variables are populated, they should not be reached.
3273
3274         * rendering/RenderTableCell.cpp:
3275         (WebCore::RenderTableCell::colSpan):
3276         (WebCore::RenderTableCell::rowSpan):
3277         Those 2 functions promotes HTMLTableCellElement's int to unsigned
3278         which should be fine as we make sure their are positive. Also HTML5
3279         makes those 2 fields "unsigned long" which goes in the same direction.
3280
3281         * rendering/AutoTableLayout.cpp:
3282         (WebCore::AutoTableLayout::layout):
3283         * rendering/RenderTableSection.cpp:
3284         (WebCore::RenderTableSection::nodeAtPoint):
3285         Rewrote a couple of reverse iterating to be able to use unsigned
3286         without overflowing.
3287
3288         * rendering/AutoTableLayout.cpp:
3289         (WebCore::AutoTableLayout::recalcColumn):
3290         (WebCore::AutoTableLayout::fullRecalc):
3291         (WebCore::AutoTableLayout::calcEffectiveLogicalWidth):
3292         (WebCore::AutoTableLayout::insertSpanCell):
3293         * rendering/AutoTableLayout.h:
3294         * rendering/FixedTableLayout.cpp:
3295         (WebCore::FixedTableLayout::calcWidthArray):
3296         * rendering/RenderTable.cpp:
3297         (WebCore::RenderTable::splitColumn):
3298         (WebCore::RenderTable::appendColumn):
3299         (WebCore::RenderTable::recalcSections):
3300         * rendering/RenderTable.h:
3301         (WebCore::RenderTable::getColumnPos):
3302         (WebCore::RenderTable::spanOfEffCol):
3303         (WebCore::RenderTable::effColToCol):
3304         * rendering/RenderTableCell.cpp:
3305         (WebCore::RenderTableCell::styleOrColLogicalWidth):
3306         (WebCore::CollapsedBorders::nextBorder):
3307         * rendering/RenderTableCell.h:
3308         * rendering/RenderTableCol.cpp:
3309         (WebCore::RenderTableCol::updateFromElement):
3310         * rendering/RenderTableCol.h:
3311         (WebCore::RenderTableCol::span):
3312         (WebCore::RenderTableCol::setSpan):
3313         * rendering/RenderTableSection.cpp:
3314         (WebCore::RenderTableSection::addCell):
3315         (WebCore::RenderTableSection::setCellLogicalWidths):
3316         (WebCore::RenderTableSection::layoutRows):
3317         (WebCore::RenderTableSection::calcOuterBorderBefore):
3318         (WebCore::RenderTableSection::calcOuterBorderAfter):
3319         (WebCore::RenderTableSection::calcOuterBorderStart):
3320         (WebCore::RenderTableSection::calcOuterBorderEnd):
3321         (WebCore::RenderTableSection::paintObject):
3322         (WebCore::RenderTableSection::appendColumn):
3323         * rendering/RenderTableSection.h:
3324         (WebCore::RenderTableSection::cellAt):
3325         (WebCore::RenderTableSection::primaryCellAt):
3326         (WebCore::RenderTableSection::getBaseline):
3327         Mechanical change int -> unsigned.
3328
3329 2011-11-15  Andy Estes  <aestes@apple.com>
3330
3331         Consolidate the logic that creates run loop observers for flushing layer tree changes to CoreAnimation
3332         https://bugs.webkit.org/show_bug.cgi?id=72106
3333
3334         Reviewed by Anders Carlsson.
3335
3336         Add a class that encapsulates the logic of scheduling, enabling and
3337         invalidating a run loop observer that fires before Core Animation's
3338         commit observer. Clients can subclass LayerFlushSchedulerClient and
3339         implement flushLayers(), which will be called by the observer.
3340
3341         * WebCore.exp.in:
3342         * WebCore.xcodeproj/project.pbxproj:
3343         * platform/graphics/ca/LayerFlushScheduler.cpp: Added.
3344         (WebCore::LayerFlushScheduler::suspend): Suspend scheduling by
3345         invalidating the run loop observer. Keep a count of calls to suspend()
3346         in m_suspendCount.
3347         (WebCore::LayerFlushScheduler::resume): Decrement m_suspendCount.
3348         Install the run loop observer when it reaches 0.
3349         * platform/graphics/ca/LayerFlushSchedulerClient.h: Added.
3350         (WebCore::LayerFlushSchedulerClient::~LayerFlushSchedulerClient):
3351         * platform/graphics/ca/LayerFlushScheduler.h: Added.
3352         * platform/graphics/ca/mac/LayerFlushSchedulerMac.cpp: Added.
3353         (LayerFlushScheduler::LayerFlushScheduler):
3354         (LayerFlushScheduler::~LayerFlushScheduler):
3355         (LayerFlushScheduler::runLoopObserverCallback): Call flushLayers() on
3356         the LayerFlushSchedulerClient.
3357         (LayerFlushScheduler::schedule): Install the run loop observer.
3358         (LayerFlushScheduler::invalidate): Remove the run loop
3359         observer if it is installed.
3360
3361 2011-11-15  Adam Klein  <adamk@chromium.org>
3362
3363         [v8] Use throwError instead of compiling and running script in handleMaxRecursionDepthExceeded
3364         https://bugs.webkit.org/show_bug.cgi?id=72432
3365
3366         Reviewed by Adam Barth.
3367
3368         * bindings/v8/V8Proxy.cpp:
3369         (WebCore::handleMaxRecursionDepthExceeded):
3370
3371 2011-11-15  Vincent Scheib  <scheib@chromium.org>
3372
3373         Pointer Lock: Refactoring: PointerLock.idl: Dropping webkit prefix
3374         https://bugs.webkit.org/show_bug.cgi?id=72431
3375
3376         Reviewed by Adam Barth.
3377
3378         * page/PointerLock.cpp:
3379         (WebCore::PointerLock::lock):
3380         (WebCore::PointerLock::unlock):
3381         (WebCore::PointerLock::isLocked):
3382         * page/PointerLock.h:
3383         * page/PointerLock.idl:
3384
3385 2011-11-15  Nat Duca  <nduca@chromium.org>
3386
3387         [chromium] Fuse MainThread and CCThread
3388         https://bugs.webkit.org/show_bug.cgi?id=72426
3389
3390         Reviewed by James Robinson.
3391
3392         * WebCore.gypi:
3393         * platform/graphics/chromium/LayerRendererChromium.cpp:
3394         * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
3395         (WebCore::CCLayerTreeHost::CCLayerTreeHost):
3396         * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
3397         * platform/graphics/chromium/cc/CCMainThread.cpp: Removed.
3398         * platform/graphics/chromium/cc/CCMainThread.h: Removed.
3399         * platform/graphics/chromium/cc/CCMainThreadTask.h: Removed.
3400         * platform/graphics/chromium/cc/CCProxy.cpp:
3401         (WebCore::CCProxy::setMainThread):
3402         (WebCore::CCProxy::mainThread):
3403         (WebCore::CCProxy::setImplThread):
3404         (WebCore::CCProxy::implThread):
3405         (WebCore::CCProxy::isMainThread):
3406         (WebCore::CCProxy::isImplThread):
3407         (WebCore::CCProxy::~CCProxy):
3408         * platform/graphics/chromium/cc/CCProxy.h:
3409         * platform/graphics/chromium/cc/CCScopedThreadProxy.h: Renamed from Source/WebCore/platform/graphics/chromium/cc/CCScopedMainThreadProxy.h.
3410         (WebCore::CCScopedThreadProxy::create):
3411         (WebCore::CCScopedThreadProxy::postTask):
3412         (WebCore::CCScopedThreadProxy::shutdown):
3413         (WebCore::CCScopedThreadProxy::CCScopedThreadProxy):
3414         (WebCore::CCScopedThreadProxy::runTaskIfNotShutdown):
3415         * platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
3416         * platform/graphics/chromium/cc/CCThreadProxy.cpp:
3417         (WebCore::CCThreadProxy::CCThreadProxy):
3418         (WebCore::CCThreadProxy::compositeAndReadback):
3419         (WebCore::CCThreadProxy::finishAllRendering):
3420         (WebCore::CCThreadProxy::initializeLayerRenderer):
3421         (WebCore::CCThreadProxy::setNeedsAnimate):
3422         (WebCore::CCThreadProxy::setNeedsCommit):
3423         (WebCore::CCThreadProxy::onSwapBuffersCompleteOnImplThread):
3424         (WebCore::CCThreadProxy::setNeedsRedraw):
3425         (WebCore::CCThreadProxy::setVisible):
3426         (WebCore::CCThreadProxy::start):
3427         (WebCore::CCThreadProxy::stop):
3428         (WebCore::CCThreadProxy::obtainBeginFrameAndCommitTaskFromCCThread):
3429         (WebCore::CCThreadProxy::createBeginFrameAndCommitTaskOnImplThread):
3430         (WebCore::CCThreadProxy::beginFrameAndCommit):
3431         (WebCore::CCThreadProxy::scheduledActionDrawAndSwap):
3432         (WebCore::CCThreadProxy::initializeImplOnImplThread):
3433         * platform/graphics/chromium/cc/CCThreadProxy.h:
3434
3435 2011-11-15  Vincent Scheib  <scheib@chromium.org>
3436
3437         Pointer Lock: Refactor: MouseEvent.idl movementX/Y
3438         https://bugs.webkit.org/show_bug.cgi?id=72427
3439
3440         - [Conditional...] vs #if defined
3441         - Runtime enabled
3442         - .movementX/Y prefixed with 'webkit'
3443
3444         Reviewed by Adam Barth.
3445
3446         No new tests.
3447
3448         * bindings/generic/RuntimeEnabledFeatures.h:
3449         (WebCore::RuntimeEnabledFeatures::webkitMovementXEnabled):
3450         (WebCore::RuntimeEnabledFeatures::webkitMovementYEnabled):
3451         * dom/MouseEvent.idl:
3452         * dom/MouseRelatedEvent.h:
3453         (WebCore::MouseRelatedEvent::webkitMovementX):
3454         (WebCore::MouseRelatedEvent::webkitMovementY):
3455
3456 2011-10-28  Ojan Vafai  <ojan@chromium.org>
3457
3458         implement flex-align for flex-flow: column
3459         https://bugs.webkit.org/show_bug.cgi?id=70754
3460
3461         Reviewed by David Hyatt.
3462
3463         Tests: css3/flexbox/flex-align-column.html
3464                css3/flexbox/line-wrapping.html
3465
3466         * rendering/RenderBox.cpp:
3467         (WebCore::RenderBox::sizesToIntrinsicLogicalWidth):
3468         When flexitems are column, they should size to the intrinsic width unless flex-flow is stretch.
3469
3470         * rendering/RenderFlexibleBox.cpp:
3471         (WebCore::RenderFlexibleBox::alignChildrenBlockDirection):
3472         This was just using the wrong, non-flow-aware method.
3473
3474 2011-11-15  Jochen Eisinger  <jochen@chromium.org>
3475
3476         Rename ReferrerPolicy to clarify its meaning
3477         https://bugs.webkit.org/show_bug.cgi?id=72420
3478
3479         Reviewed by Nate Chapin.
3480
3481         On the one hand, even if the ReferrerPolicy was set to SendReferrer, the
3482         referrer wasn't necessarily send. On the other hand, I want to use the
3483         name ReferrerPolicy when implementing the meta referrer tag.
3484
3485         No change in behavior expected so no test.
3486
3487         * html/HTMLAnchorElement.cpp:
3488         (WebCore::HTMLAnchorElement::handleClick):
3489         (WebCore::handleLinkClick):
3490         * loader/FrameLoader.cpp:
3491         (WebCore::FrameLoader::changeLocation):
3492         (WebCore::FrameLoader::urlSelected):
3493         (WebCore::FrameLoader::loadFrameRequest):
3494         * loader/FrameLoader.h:
3495         * loader/FrameLoaderTypes.h:
3496         * loader/NavigationScheduler.cpp:
3497         (WebCore::ScheduledHistoryNavigation::fire):
3498         (WebCore::ScheduledFormSubmission::fire):
3499         * page/ContextMenuController.cpp:
3500         (WebCore::openNewWindow):
3501         (WebCore::ContextMenuController::contextMenuItemSelected):
3502         * WebCore.exp.in: updated.
3503
3504 2011-11-15  Adam Klein  <adamk@chromium.org>
3505
3506         Factor out V8Proxy's max recursion depth handling code
3507         https://bugs.webkit.org/show_bug.cgi?id=72422
3508
3509         Reviewed by Nate Chapin.
3510
3511         Previously, V8Proxy used slightly different code to handle stack limit
3512         violations depending on whether they occured in runScript or
3513         callFunction. As described in http://webkit.org/b/72063, I intend to
3514         expand the usage of m_recursion when calling into script. This patch
3515         is intended to unify the existing handling code, making it easier to
3516         move elsewhere without causing unintended side-effects.
3517
3518         No tests changed, as the only change in behavior is the string passed
3519         to RangeError in the runScript case, and it's not mentioned anywhere
3520         in the LayoutTests.
3521
3522         * bindings/v8/V8Proxy.cpp:
3523         (WebCore::handleMaxRecursionDepthExceeded):
3524         (WebCore::V8Proxy::runScript): Use callFunction's factored-out code.
3525         (WebCore::V8Proxy::callFunction): Simplify and factor out code into handleMaxRecursionDepthExceeded.
3526
3527 2011-11-15  Jessie Berlin  <jberlin@apple.com>
3528
3529         NSURLRequest leak beneath ResourceRequest::setStorageSession seen on Leaks bot.
3530         https://bugs.webkit.org/show_bug.cgi?id=72419
3531
3532         Reviewed by Adam Roben.
3533
3534         Adopt the copied NSURLRequest.
3535
3536         * platform/network/mac/ResourceRequestMac.mm:
3537         (WebCore::ResourceRequest::setStorageSession):
3538
3539 2011-11-15  John Bates  <jbates@google.com>
3540
3541         Page/layer flashes after GPU-accelerated CSS transition
3542         https://bugs.webkit.org/show_bug.cgi?id=72343
3543
3544         LayerRendererChromium was resizing the window to 1x1 at initialization.
3545         In some cases, there is no drawLayers before switching back to
3546         software rendering. This left the window resized to 1x1 and the
3547         following software paints would therefore not be visible. This change
3548         moves the reshape call into drawLayers so that it will only be called
3549         if rendering will occur.
3550
3551         Reviewed by James Robinson.
3552
3553         New test: CCLayerTreeHostImplTest.reshapeNotCalledUntilDraw.
3554
3555         * platform/graphics/chromium/LayerRendererChromium.cpp:
3556         (WebCore::LayerRendererChromium::viewportChanged):
3557         (WebCore::LayerRendererChromium::doViewportChanged):
3558         (WebCore::LayerRendererChromium::drawLayersInternal):
3559         * platform/graphics/chromium/LayerRendererChromium.h:
3560
3561 2011-11-15  Julien Chaffraix  <jchaffraix@webkit.org>
3562
3563         Add the needed plumbing to parse display: -webkit-grid
3564         https://bugs.webkit.org/show_bug.cgi?id=72331
3565
3566         Reviewed by Tony Chang.
3567
3568         Test: fast/css-grid-layout/display-grid-set-get.html
3569
3570         Added parsing support for display: -webkit-grid. From a rendering perspective,
3571         the value is equivalent to display: none until we properly implement it.
3572
3573         * css/CSSParser.cpp:
3574         (WebCore::CSSParser::parseValue):
3575         * css/CSSPrimitiveValueMappings.h:
3576         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
3577         * css/CSSValueKeywords.in:
3578         * rendering/style/RenderStyleConstants.h:
3579         Added the new CSS value and plumbed the parsing and style application of
3580         the new value.
3581
3582         * css/CSSPrimitiveValueMappings.h:
3583         (WebCore::CSSPrimitiveValue::operator EDisplay):
3584         Added an ASSERT here as I bumped into some non-trivial issues due to bug 72296.
3585         -wap-marquee was offsetting the new value and was wrongly casted by the CSSPrimitiveValueMapping
3586         logic outside the EDisplay range which would lead to crashes.
3587
3588         * rendering/RenderObject.cpp:
3589         (WebCore::RenderObject::createObject):
3590         Fixed the indentation to follow our coding rules.
3591
3592 2011-11-15  Vincent Scheib  <scheib@chromium.org>
3593
3594         Mouse Lock: Renaming to 'Pointer Lock': MouseLockable to PointerLock
3595         https://bugs.webkit.org/show_bug.cgi?id=72315
3596
3597         Reviewed by Dimitri Glazkov.
3598
3599         * WebCore.gypi:
3600         * page/Navigator.cpp:
3601         (WebCore::Navigator::webkitPointer):
3602         * page/Navigator.h:
3603         * page/Navigator.idl:
3604         * page/PointerLock.cpp: Renamed from Source/WebCore/page/MouseLockable.cpp.
3605         (WebCore::PointerLock::PointerLock):
3606         (WebCore::PointerLock::~PointerLock):
3607         (WebCore::PointerLock::webkitLock):
3608         (WebCore::PointerLock::webkitUnlock):
3609         (WebCore::PointerLock::webkitIsLocked):
3610         * page/PointerLock.h: Renamed from Source/WebCore/page/MouseLockable.h.
3611         (WebCore::PointerLock::create):
3612         * page/PointerLock.idl: Renamed from Source/WebCore/page/MouseLockable.idl.
3613
3614 2011-10-28  Ojan Vafai  <ojan@chromium.org>
3615
3616         Overflow and relayout are broken in the new flexboxes
3617         https://bugs.webkit.org/show_bug.cgi?id=71161
3618
3619         Reviewed by David Hyatt.
3620
3621         Tests: css3/flexbox/auto-height-dynamic.html
3622                css3/flexbox/flex-item-child-overflow-expected.html
3623                css3/flexbox/flex-item-child-overflow.html
3624
3625         * rendering/RenderFlexibleBox.cpp:
3626         (WebCore::RenderFlexibleBox::layoutBlock):
3627         -Always set the logical height to 0 to start with to ensure we don't
3628         use the height from the previous layout when we are computing the
3629         intrinsic size of the flexbox.
3630         -Call computeOverflow after computeLogicalHeight so that flex-item's children's
3631         overflow is properly rendered.
3632
3633         (WebCore::RenderFlexibleBox::layoutAndPlaceChildrenInlineDirection):
3634         -Now that we setLogicalHeight in layoutBlock, we no longer need to do it here.
3635         -Refactor flipping code. The behavior is the same, but the variable names are just
3636         more correct.
3637
3638 2011-10-28  Ojan Vafai  <ojan@chromium.org>
3639
3640         Overflow and relayout are broken in the new flexboxes
3641         https://bugs.webkit.org/show_bug.cgi?id=71161
3642
3643         Reviewed by David Hyatt.
3644
3645         Tests: css3/flexbox/auto-height-dynamic.html
3646                css3/flexbox/flex-item-child-overflow-expected.html
3647                css3/flexbox/flex-item-child-overflow.html
3648
3649         * rendering/RenderFlexibleBox.cpp:
3650         (WebCore::RenderFlexibleBox::layoutBlock):
3651         -Always set the logical height to 0 to start with to ensure we don't
3652         use the height from the previous layout when we are computing the
3653         intrinsic size of the flexbox.
3654         -Call computeOverflow after computeLogicalHeight so that flex-item's children's
3655         overflow is properly rendered.
3656
3657         (WebCore::RenderFlexibleBox::layoutAndPlaceChildrenInlineDirection):
3658         -Now that we setLogicalHeight in layoutBlock, we no longer need to do it here.
3659         -Refactor flipping code. The behavior is the same, but the variable names are just
3660         more correct.
3661
3662 2011-11-15  Nate Chapin  <japhet@chromium.org>
3663
3664         CachedResourceRequest is now the only SubresourceLoaderClient
3665         Merge CachedResourceRequest into SubresourceLoader and delete
3666         the SubresourceLoaderClient interface. A few items were moved
3667         to CachedResource instead of SubresourceLoader.
3668         https://bugs.webkit.org/show_bug.cgi?id=71149
3669
3670         Reviewed by Adam Barth.
3671
3672         * CMakeLists.txt:
3673         * GNUmakefile.list.am:
3674         * WebCore.gypi:
3675         * WebCore.pro:
3676         * WebCore.vcproj/WebCore.vcproj:
3677         * WebCore.xcodeproj/project.pbxproj:
3678         * loader/ResourceLoadScheduler.cpp:
3679         * loader/ResourceLoadScheduler.h:
3680         * loader/ResourceLoader.cpp:
3681         * loader/SubresourceLoader.cpp:
3682         (WebCore::SubresourceLoader::SubresourceLoader):
3683         (WebCore::SubresourceLoader::create):
3684         (WebCore::SubresourceLoader::init): Do work that had previously been
3685             done in SubresourceLoader::create() after the constructor.
3686         (WebCore::SubresourceLoader::willSendRequest):
3687         (WebCore::SubresourceLoader::didSendData):
3688         (WebCore::SubresourceLoader::didReceiveResponse):
3689         (WebCore::SubresourceLoader::didReceiveData):
3690         (WebCore::SubresourceLoader::didReceiveCachedMetadata):
3691         (WebCore::SubresourceLoader::didFinishLoading):
3692         (WebCore::SubresourceLoader::didFail):
3693         (WebCore::SubresourceLoader::willCancel):
3694         (WebCore::SubresourceLoader::releaseResources): Do the cleanup work that was
3695             duplicated throughout the various terminal CachedResourceRequest callbacks.
3696         * loader/SubresourceLoader.h: Fix indentation style issues.
3697         * loader/SubresourceLoaderClient.h: Removed.
3698         * loader/cache/CachedImage.cpp:
3699         * loader/cache/CachedRawResource.cpp:
3700         * loader/cache/CachedResource.cpp:
3701         (WebCore::cachedResourceTypeToTargetType):
3702         (WebCore::CachedResource::load): Do the work that had been done in
3703             CachedResourceRequest::load().
3704         (WebCore::CachedResource::finish):
3705         (WebCore::CachedResource::setResponse):
3706         (WebCore::CachedResource::stopLoading):
3707         * loader/cache/CachedResource.h:
3708         (WebCore::CachedResource::canDelete):
3709         * loader/cache/CachedResourceLoader.cpp:
3710         * loader/cache/CachedResourceRequest.cpp: Removed.
3711         * loader/cache/CachedResourceRequest.h: Removed.
3712         * loader/cf/SubresourceLoaderCF.cpp:
3713         * loader/chromium/CachedResourceRequestChromium.cpp: Removed.
3714         * loader/chromium/SubresourceLoaderChromium.cpp:
3715
3716 2011-11-15  Anders Carlsson  <andersca@apple.com>
3717
3718         HostWindow screenToWindow/windowToScreen should be screenToRootView/rootViewToScreen
3719         https://bugs.webkit.org/show_bug.cgi?id=72397
3720
3721         Reviewed by Dan Bernstein.
3722
3723         screenToWindow and windowToScreen already use root view coordinates everywhere, with the
3724         exception of Mac WebKit1 which doesn't even implement the functions.
3725
3726         * accessibility/mac/WebAccessibilityObjectWrapper.mm:
3727         (-[WebAccessibilityObjectWrapper position]):
3728         * loader/EmptyClients.h:
3729         * page/Chrome.cpp:
3730         (WebCore::Chrome::screenToRootView):
3731         (WebCore::Chrome::rootViewToScreen):
3732         * page/Chrome.h:
3733         * page/ChromeClient.h:
3734         * platform/HostWindow.h:
3735         * platform/ScrollView.cpp:
3736         (WebCore::ScrollView::contentsToScreen):
3737         (WebCore::ScrollView::screenToContents):
3738         * platform/chromium/PopupContainer.cpp:
3739         (WebCore::PopupContainer::layoutAndCalculateWidgetRect):
3740         (WebCore::PopupContainer::refresh):
3741
3742 2011-11-15  Jeff Timanus  <twiz@chromium.org>
3743
3744         Patch removing duplicated code in the setup of the DrawingBuffer used
3745         to host the back-buffer for WebGL contents.
3746         https://bugs.webkit.org/show_bug.cgi?id=72327
3747
3748         Reviewed by Julien Chaffraix.
3749
3750         * html/canvas/WebGLRenderingContext.cpp:
3751         (WebCore::WebGLRenderingContext::copyTexImage2D):
3752         (WebCore::WebGLRenderingContext::copyTexSubImage2D):
3753         (WebCore::WebGLRenderingContext::readPixels):
3754
3755 2011-11-15  Eugene Nalimov  <enal@google.com>
3756
3757         Event listener for active DOM object that is also DOM node can be garbage collected prematurely.
3758         https://bugs.webkit.org/show_bug.cgi?id=70421 
3759
3760         Reviewed by Adam Barth.
3761
3762         Problem demonstrated itself when HTMLAudioElement was changed to become active DOM object.
3763         Before that there were no DOM objects that simultaneously were nodes and active objects.
3764         DOM object could be held in one of 3 maps -- node map, active objects map, and all other
3765         objects map, and HTMLAudioElement should be in 2 maps simultaneously. When it was in the
3766         active DOM objects map only, its event listener could be garbage collected, because special
3767         code that groups listeners with wrappers could handle only wrappers for objects in the node
3768         map. If we put HTMLAudioElement into nodes map, it would not be active DOM node, and can be
3769         garbage collected prematurely itself (see https://bugs.webkit.org/show_bug.cgi?id=66878).
3770         Fix is to introduce 4th map -- active nodes map, and change the code accordingly.
3771
3772         Test: media/audio-garbage-collect.html
3773
3774         * bindings/scripts/CodeGeneratorV8.pm:
3775         (GenerateNamedConstructorCallback):
3776         (GetDomMapFunction):
3777         * bindings/v8/DOMDataStore.cpp:
3778         (WebCore::DOMDataStore::DOMDataStore):
3779         (WebCore::DOMDataStore::getDOMWrapperMap):
3780         (WebCore::DOMDataStore::weakNodeCallback):
3781         * bindings/v8/DOMDataStore.h:
3782         (WebCore::DOMDataStore::activeDomNodeMap):
3783         * bindings/v8/ScopedDOMDataStore.cpp:
3784         (WebCore::ScopedDOMDataStore::ScopedDOMDataStore):
3785         (WebCore::ScopedDOMDataStore::~ScopedDOMDataStore):
3786         * bindings/v8/StaticDOMDataStore.cpp:
3787         (WebCore::StaticDOMDataStore::StaticDOMDataStore):
3788         * bindings/v8/StaticDOMDataStore.h:
3789         * bindings/v8/V8DOMMap.cpp:
3790         (WebCore::getActiveDOMNodeMap):
3791         (WebCore::removeAllDOMObjects):
3792         (WebCore::visitActiveDOMNodes):
3793         * bindings/v8/V8DOMMap.h:
3794         * bindings/v8/V8DOMWrapper.cpp:
3795         (WebCore::V8DOMWrapper::setJSWrapperForDOMNode):
3796         (WebCore::V8DOMWrapper::getWrapperSlow):
3797         * bindings/v8/V8GCController.cpp:
3798         (WebCore::GCPrologueSpecialCase):
3799         (WebCore::void):
3800         (WebCore::Node):
3801         (WebCore::GCPrologueVisitor::visitDOMWrapper):
3802         (WebCore::V8GCController::gcPrologue):
3803         (WebCore::GCEpilogueHelper::GCEpilogueSpecialCase):
3804         (WebCore::GCEpilogueVisitor::visitDOMWrapper):
3805         (WebCore::V8GCController::gcEpilogue):
3806         * dom/Node.h:
3807         (WebCore::Node::isActiveNode):
3808         * html/HTMLAudioElement.h:
3809         (WebCore::HTMLAudioElement::isActiveNode):
3810
3811 2011-11-15  David Kilzer  <ddkilzer@apple.com>
3812
3813         Remove useless const modifier from KURL::init
3814         <http://webkit.org/b/72387>
3815
3816         Reviewed by Darin Adler.
3817
3818         * platform/KURL.cpp:
3819         (WebCore::KURL::init): Remove useless const.
3820
3821 2011-11-14  Anders Carlsson  <andersca@apple.com>
3822
3823         HostWindow invalidation functions should use root view coordinates
3824         https://bugs.webkit.org/show_bug.cgi?id=72338
3825
3826         Reviewed by Dan Bernstein.
3827
3828         Rename invalidateWindow to invalidateRootView, and invalidateContentsAndWindow
3829         to invalidateContentsAndRootView. Make sure that the rects passed to the renamed functions
3830         are in root view coordinates by changing contentsToWindow calls to contentsToRootView.
3831         
3832         In practice this doesn't matter because for all platforms except Mac WebKit1, root view coordinates
3833         and window coordinates are equivalent, and Mac WebKit1 doesn't use these invalidation functions.
3834
3835         * loader/EmptyClients.h:
3836         * page/Chrome.cpp:
3837         (WebCore::Chrome::invalidateRootView):
3838         (WebCore::Chrome::invalidateContentsAndRootView):
3839         * page/Chrome.h:
3840         * page/ChromeClient.h:
3841         * page/Frame.cpp:
3842         (WebCore::Frame::tiledBackingStorePaintEnd):
3843         * page/FrameView.cpp:
3844         (WebCore::FrameView::invalidateRect):
3845         (WebCore::FrameView::scrollContentsFastPath):
3846         * platform/HostWindow.h:
3847         * platform/ScrollView.cpp:
3848         (WebCore::ScrollView::rectToCopyOnScroll):
3849         (WebCore::ScrollView::scrollContents):
3850         (WebCore::ScrollView::wheelEvent):
3851         * platform/chromium/FramelessScrollView.cpp:
3852         (WebCore::FramelessScrollView::invalidateRect):
3853         * svg/graphics/SVGImage.cpp:
3854         (WebCore::SVGImageChromeClient::invalidateContentsAndRootView):
3855
3856 2011-11-15  Philip Rogers  <pdr@google.com>
3857
3858         Implement maxWidth for fillText and strokeText, fixing the canvas/philip/tests/2d.text.draw.fill.maxWidth.fontface.html test.
3859         https://bugs.webkit.org/show_bug.cgi?id=61528
3860
3861         Reviewed by Stephen White.
3862
3863         Tests: fast/canvas/2d.text.draw.fill.maxWidth.gradient.html
3864                fast/canvas/2d.text.draw.fill.maxWidth.negative.html
3865                fast/canvas/2d.text.draw.fill.maxWidth.veryLarge.html
3866                fast/canvas/2d.text.draw.fill.maxWidth.verySmall.html
3867
3868         * html/canvas/CanvasRenderingContext2D.cpp:
3869         (WebCore::CanvasRenderingContext2D::drawTextInternal):
3870
3871 2011-11-15  Carlos Garcia Campos  <cgarcia@igalia.com>
3872
3873         [GTK] Implement download support in WebKit2
3874         https://bugs.webkit.org/show_bug.cgi?id=72258
3875
3876         Reviewed by Martin Robinson.
3877
3878         Add common download errors to ErrorsGtk.
3879
3880         * platform/gtk/ErrorsGtk.cpp:
3881         (WebCore::downloadNetworkError):
3882         (WebCore::downloadCancelledByUserError):
3883         (WebCore::downloadDestinationError):
3884         * platform/gtk/ErrorsGtk.h:
3885
3886 2011-11-15  Cary Clark  <caryclark@google.com>
3887
3888         [chromium-mac] Enable vertical text using Skia
3889         https://bugs.webkit.org/show_bug.cgi?id=72137
3890
3891         Use Skia to draw vertical text. This is much
3892         faster and has higher fidelity than the old method
3893         of drawing text on a path.
3894
3895         The graphics context passed to Skia has been
3896         rotated 90 degrees but the character advances
3897         have not, so it is necessary to unrotate the canvas,
3898         and re-rotate the positions.
3899
3900         This generates correct output (or, at least,
3901         consistent with Chromium CG on Mac) for all vertical
3902         text tests, one of which is mentioned below.
3903         
3904         Reviewed by Stephen White.
3905
3906         Test: fast/writing-mode/text-orientation-basic.html
3907
3908         * platform/graphics/skia/FontSkia.cpp:
3909         (WebCore::setupPaint):
3910         (WebCore::Font::drawGlyphs):
3911
3912 2011-11-15  Philip Rogers  <pdr@google.com>
3913
3914         Fix SVG hit testing when padding is present
3915         https://bugs.webkit.org/show_bug.cgi?id=37325
3916
3917         Reviewed by Nikolas Zimmermann.
3918
3919         Test: svg/hittest/svg-padding.xhtml
3920
3921         * rendering/svg/RenderSVGRoot.cpp:
3922         (WebCore::RenderSVGRoot::nodeAtPoint):
3923
3924 2011-11-15  Pavel Feldman  <pfeldman@google.com>
3925
3926         Web Inspector: move generic code from DevTools.js into the WebCore.
3927         https://bugs.webkit.org/show_bug.cgi?id=72377
3928
3929         re-landing r100269.
3930
3931         Reviewed by Yury Semikhatsky.
3932
3933         * English.lproj/localizedStrings.js:
3934         * inspector/front-end/InspectorFrontendHostStub.js:
3935         (.WebInspector.InspectorFrontendHostStub.prototype.inspectedURLChanged):
3936         * inspector/front-end/ProfilesPanel.js:
3937         * inspector/front-end/Resource.js:
3938         * inspector/front-end/Settings.js:
3939         * inspector/front-end/UIUtils.js:
3940         (WebInspector.setToolbarColors):
3941         (WebInspector.resetToolbarColors):
3942         * inspector/front-end/inspector.js:
3943
3944 2011-11-15  Sheriff Bot  <webkit.review.bot@gmail.com>
3945
3946         Unreviewed, rolling out r100269.
3947         http://trac.webkit.org/changeset/100269
3948         https://bugs.webkit.org/show_bug.cgi?id=72383
3949
3950         "Broke dozens of tests due to exception in loadingFinished"
3951         (Requested by tonyg-cr on #webkit).
3952
3953         * English.lproj/localizedStrings.js:
3954         * inspector/front-end/InspectorFrontendHostStub.js:
3955         (.WebInspector.InspectorFrontendHostStub.prototype.inspectedURLChanged):
3956         * inspector/front-end/ProfilesPanel.js:
3957         * inspector/front-end/Resource.js:
3958         * inspector/front-end/Settings.js:
3959         * inspector/front-end/UIUtils.js:
3960         * inspector/front-end/inspector.js:
3961
3962 2011-11-15  Alexander Pavlov  <apavlov@chromium.org>
3963
3964         font property does not show up as "shorthand" in inspector
3965         https://bugs.webkit.org/show_bug.cgi?id=15598
3966
3967         Reviewed by Nikolas Zimmermann.
3968
3969         The "font" CSS property is turned into a real shorthand, as its longhands used to float around
3970         in the resulting style declaration without any reference to their underlying "font" property.
3971
3972         Test: fast/css/font-shorthand.html
3973
3974         * css/CSSMutableStyleDeclaration.cpp:
3975         (WebCore::CSSMutableStyleDeclaration::getPropertyValue): Extracted the "font" value building into fontValue().
3976         (WebCore::CSSMutableStyleDeclaration::appendFontLonghandValueIfExplicit): Added
3977         (WebCore::CSSMutableStyleDeclaration::fontValue): Build the "font" value from longhands.
3978         * css/CSSMutableStyleDeclaration.h:
3979         * css/CSSParser.cpp:
3980         (WebCore::CSSParser::addProperty): Added optional "implicit" parameter.
3981         (WebCore::CSSParser::parseFont): Build respective longhands instead of the shorthand "font" property.
3982         * css/CSSParser.h: Added optional "implicit" parameter to addProperty().
3983         * css/CSSPropertyLonghand.cpp:
3984         (WebCore::initShorthandMap): Added "font" shorthand map entry.
3985         * css/CSSStyleSelector.cpp:
3986         (WebCore::CSSStyleSelector::applyPropertyToStyle): Separated the property application from the instance setup.
3987         (WebCore::CSSStyleSelector::applyPropertyToCurrentStyle): Added.
3988         * css/CSSStyleSelector.h: Made updateFont() public.
3989         * css/FontValue.cpp:
3990         (WebCore::FontValue::customCssText): Made use of StringBuilder.
3991         * html/canvas/CanvasRenderingContext2D.cpp:
3992         (WebCore::CanvasRenderingContext2D::setFont): Apply "font" longhands rather than the (non-existent) "font" property.
3993         * inspector/front-end/StylesSidebarPane.js:
3994         (WebInspector.StylesSidebarPane.prototype._markUsedProperties): Removed a workaround for "font" not being a shorthand.
3995         * page/animation/AnimationBase.cpp:
3996         (WebCore::addShorthandProperties): Removed a workaround for "font" not being a shorthand.
3997
3998 2011-11-15  Pierre Rossi  <pierre.rossi@gmail.com>
3999
4000         [Qt] Clean up the remaining duplicate code after the RenderThemeQt refactoring.
4001         https://bugs.webkit.org/show_bug.cgi?id=72262
4002
4003         Reviewed by Antonio Gomes.
4004
4005         No new tests needed, this is purely cosmetic.
4006
4007         * platform/qt/RenderThemeQStyle.cpp:
4008         (WebCore::RenderThemeQStyle::adjustMenuListButtonStyle):
4009         * platform/qt/RenderThemeQStyle.h:
4010         * platform/qt/RenderThemeQt.cpp:
4011         (WebCore::RenderThemeQt::adjustMenuListButtonStyle): remove the call to resetBorderRadius()
4012         since the mobile theme actually didn't do this.
4013         * platform/qt/RenderThemeQtMobile.cpp:
4014         (WebCore::RenderThemeQtMobile::adjustMenuListStyle):
4015
4016 2011-11-15  Pavel Feldman  <pfeldman@google.com>
4017
4018         Web Inspector: move generic code from DevTools.js into the WebCore.
4019         https://bugs.webkit.org/show_bug.cgi?id=72377
4020
4021         This includes support for themed toolbar, remote debugging routines,
4022         removes a couple of obsolete overrides from the DevTools.js
4023
4024         Reviewed by Yury Semikhatsky.
4025
4026         * English.lproj/localizedStrings.js:
4027         * inspector/front-end/InspectorFrontendHostStub.js:
4028         (.WebInspector.InspectorFrontendHostStub.prototype.inspectedURLChanged):
4029         * inspector/front-end/ProfilesPanel.js:
4030         * inspector/front-end/Resource.js:
4031         * inspector/front-end/Settings.js:
4032         * inspector/front-end/UIUtils.js:
4033         (WebInspector.setToolbarColors):
4034         (WebInspector.resetToolbarColors):
4035         * inspector/front-end/inspector.js:
4036
4037 2011-11-15  Simon Hausmann  <simon.hausmann@nokia.com>
4038
4039         [Qt] Centralize hide_symbols and ensure all libs are built with symbol visibility & bsymbolic_functions
4040
4041         Reviewed by Tor Arne Vestbø.
4042
4043         * Target.pri: Eliminate duplicated symbol stuff that lives now in default_post.prf.
4044
4045 2011-11-15  Sheriff Bot  <webkit.review.bot@gmail.com>
4046
4047         Unreviewed, rolling out r100213.
4048         http://trac.webkit.org/changeset/100213
4049         https://bugs.webkit.org/show_bug.cgi?id=72371
4050
4051         "Breaks test_shell_tests" (Requested by tonyg-cr on #webkit).
4052
4053         * page/SecurityOrigin.cpp:
4054         (WebCore::SecurityOrigin::SecurityOrigin):
4055         * platform/SchemeRegistry.cpp:
4056         (WebCore::schemesWithUniqueOrigins):
4057
4058 2011-11-15  Alpha Lam  <hclam@chromium.org>
4059
4060         [chromium] scroll deltas are cleared during commit to the main thread
4061         https://bugs.webkit.org/show_bug.cgi?id=71916
4062
4063         Reviewed by James Robinson.
4064
4065         Patch is covered by unit test.
4066
4067         Add a member m_sentScrollDelta to CCLayerImpl to keep track of the scroll delta being
4068         sent to the main thread during commit. This gives a simpler approach to keep tracking of a
4069         layer's scroll delta in impl thread.
4070
4071         * platform/graphics/chromium/LayerChromium.h:
4072         (WebCore::LayerChromium::sentScrollDelta):
4073         * platform/graphics/chromium/cc/CCLayerImpl.h:
4074         (WebCore::CCLayerImpl::sentScrollDelta):
4075         (WebCore::CCLayerImpl::setSentScrollDelta):
4076         * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
4077         (WebCore::CCLayerTreeHostImpl::processScrollDeltas):
4078         * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
4079
4080 2011-11-15  Simon Hausmann  <simon.hausmann@nokia.com>
4081
4082         [Qt] REGRESSION(100123): It made inspector tests crash
4083         https://bugs.webkit.org/show_bug.cgi?id=72274
4084
4085         Reviewed by Tor Arne Vestbø.
4086
4087         * platform/qt/RenderThemeQStyle.h: Remove uninitialized and duplicated
4088         m_page member that should really come from RenderThemeQt.
4089
4090 2011-11-15  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
4091
4092         Unreviewed. Fix build breaks when EFL port is built.
4093
4094         * CMakeLists.txt:
4095         * UseJSC.cmake:
4096
4097 2011-11-15  Noel Gordon  <noel.gordon@gmail.com>
4098
4099         Make ImageFrame member getAddr() public
4100         https://bugs.webkit.org/show_bug.cgi?id=72321
4101
4102         Reviewed by Adam Barth.<