edfb462df34593153f0ff0a9a5dac437706d698a
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2011-05-03  Simon Fraser  <simon.fraser@apple.com>
2
3         Reviewed by Dan Bernstein.
4
5         <rdar://problem/9278296> Flicker zooming on Google Maps satellite view with accelerated compositing turned on
6
7         Conditionalize compositing tiled layer size-constraining logic to older
8         OSes.
9
10         * platform/graphics/ca/GraphicsLayerCA.cpp:
11         (WebCore::GraphicsLayerCA::constrainedSize):
12
13 2011-05-03  Roland Steiner  <rolandsteiner@chromium.org>
14
15         Reviewed by Dimitri Glazkov.
16
17         Allow access keys to be used in shadow DOM
18         https://bugs.webkit.org/show_bug.cgi?id=59979
19
20         Move access key methods and members back to Document from TreeScope.
21         Also traverse into shadow trees when building the access key map.
22
23         No new tests. (refactoring)
24
25         * dom/Document.cpp:
26         (WebCore::Document::Document):
27         (WebCore::Document::getElementByAccessKey):
28         (WebCore::Document::buildAccessKeyMap):
29         (WebCore::Document::invalidateAccessKeyMap):
30         * dom/Document.h:
31         * dom/TreeScope.cpp:
32         (WebCore::TreeScope::TreeScope):
33         (WebCore::TreeScope::destroyTreeScopeData):
34         * dom/TreeScope.h:
35
36 2011-05-03  Dan Bernstein  <mitz@apple.com>
37
38         Reviewed by Darin Adler.
39
40         <rdar://problem/8891395> -[DOMRange textRects] returns incorrect results for vertical or flipped text
41         https://bugs.webkit.org/show_bug.cgi?id=60067
42
43         No test because this code path is only used by the Objective-C API, which is not testable from DumpRenderTree.
44
45         * rendering/RenderText.cpp:
46         (WebCore::RenderText::absoluteRectsForRange): Use width/height instead of logicalWidth/logicalHeight here,
47         and perform the local-to-absolute mapping on the rects rather than their origin, in order to get the right
48         results for flipped writing modes.
49
50 2011-05-03  Anton Muhin  <antonm@chromium.org>
51
52         Reviewed by Yury Semikhatsky.
53
54         [v8] remove an ASSERT from grouping logic
55         https://bugs.webkit.org/show_bug.cgi?id=60024
56
57         This ASSERT was exploratory.  Alas, right now I am aware of no easy way to
58         repro it.  Removing for now for greener bots.
59
60         No new tests, only an ASSERT removal.
61
62         * bindings/v8/V8GCController.cpp:
63         (WebCore::calculateGroupId):
64
65 2011-05-03  Ryosuke Niwa  <rniwa@webkit.org>
66
67         Reviewed by Darin Adler.
68
69         WebKit allows selection that crosses the shadow boundary of a readonly input element
70         https://bugs.webkit.org/show_bug.cgi?id=60000
71
72         The bug was caused by VisibleSelection's not validating shadow DOM boundaries.
73         Fixed the bug by adding an extra adjustment, adjustSelectionToAvoidCrossingShadowBoundaries,
74         in its validation process.
75
76         Tests: editing/selection/select-across-readonly-input-1.html
77                editing/selection/select-across-readonly-input-2.html
78                editing/selection/select-across-readonly-input-3.html
79                editing/selection/select-across-readonly-input-4.html
80                editing/selection/select-across-readonly-input-5.html
81
82         * editing/VisibleSelection.cpp:
83         (WebCore::VisibleSelection::validate): Calls adjustSelectionToAvoidCrossingShadowBoundaries.
84         (WebCore::VisibleSelection::adjustSelectionToAvoidCrossingShadowBoundaries): Added.
85         * editing/VisibleSelection.h:
86
87 2011-05-03  Eric Seidel  <eric@webkit.org>
88
89         Reviewed by Ryosuke Niwa.
90
91         Split out layoutRunsAndFloats from layoutInlineChildren
92         https://bugs.webkit.org/show_bug.cgi?id=60052
93
94         No new tests, just moving code here.  There should be
95         no change in behavior.
96
97         * rendering/RenderBlock.h:
98         * rendering/RenderBlockLineLayout.cpp:
99         (WebCore::RenderBlock::layoutRunsAndFloats):
100         (WebCore::RenderBlock::layoutInlineChildren):
101
102 2011-05-03  James Robinson  <jamesr@chromium.org>
103
104         Reviewed by Kenneth Russell.
105
106         [chromium] Resizing a 2d canvas to huge dimensions after compositing crashes with accelerated 2d canvas option enabled
107         https://bugs.webkit.org/show_bug.cgi?id=59965
108
109         Fixes a few bugs leading to a crash if a canvas already being composited was resized to huge dimensions.
110
111         Test: fast/canvas/canvas-resize-after-paint.html
112
113         * html/canvas/CanvasRenderingContext2D.cpp:
114         (WebCore::CanvasRenderingContext2D::reset):
115             Mark the canvas's layer as needing a synthetic style recalculation when creating or destroying the backing
116             DrawingBuffer so that we exit compositing mode properly if we can't handle the canvas dimensions.
117         * platform/graphics/chromium/Canvas2DLayerChromium.cpp:
118         (WebCore::Canvas2DLayerChromium::setLayerRenderer):
119             Add a null check for m_drawingBuffer
120         * platform/graphics/gpu/DrawingBuffer.cpp:
121         (WebCore::DrawingBuffer::clear):
122             Avoid clearing the m_context pointer in reset() - we destroy the DrawingBuffer whenever reset() fails, so
123             this is unnecessary.
124
125 2011-05-03  Adam Roben  <aroben@apple.com>
126
127         Fix most strict PassOwnPtr violations on Windows
128
129         Fixes <http://webkit.org/b/60025> Windows should (almost) build with strict PassOwnPtr
130         enabled
131
132         Reviewed by Anders Carlsson.
133
134         * loader/EmptyClients.h:
135         * platform/GeolocationService.cpp:
136         * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
137         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
138         * platform/mock/GeolocationServiceMock.cpp:
139         * rendering/RenderTheme.cpp:
140         * rendering/RenderThemeSafari.cpp:
141
142 2011-05-03  Levi Weintraub  <leviw@chromium.org>
143
144         Reviewed by Eric Seidel.
145
146         Extract LineInfo class
147         https://bugs.webkit.org/show_bug.cgi?id=60044
148
149         Created a LineInfo class in RenderBlockLineLayout.cpp that brings together the relevant
150         layout information about a line. This simplifies function signatures and clears up initialization.
151
152         No new tests as this is refactoring.
153
154         * rendering/RenderBlock.h: Updated internal layout function signatures to use LineInfo.
155         * rendering/RenderBlockLineLayout.cpp:
156         (WebCore::LineInfo::LineInfo):
157         (WebCore::LineInfo::isFirstLine):
158         (WebCore::LineInfo::isLastLine):
159         (WebCore::LineInfo::isEmpty):
160         (WebCore::LineInfo::previousLineBrokeCleanly):
161         (WebCore::LineInfo::setFirstLine):
162         (WebCore::LineInfo::setLastLine):
163         (WebCore::LineInfo::setEmpty):
164         (WebCore::LineInfo::setPreviousLineBrokeCleanly):
165         (WebCore::RenderBlock::createLineBoxes):
166         (WebCore::RenderBlock::constructLine):
167         (WebCore::RenderBlock::computeInlineDirectionPositionsForLine):
168         (WebCore::RenderBlock::layoutInlineChildren):
169         (WebCore::RenderBlock::determineStartPosition):
170         (WebCore::skipNonBreakingSpace):
171         (WebCore::shouldCollapseWhiteSpace):
172         (WebCore::requiresLineBox): Moved from RenderBlock.h and made it locally scoped to RenderBlockLineLayout.cpp
173         (WebCore::RenderBlock::generatesLineBoxesForInlineChild):
174         (WebCore::RenderBlock::skipTrailingWhitespace):
175         (WebCore::RenderBlock::skipLeadingWhitespace):
176         (WebCore::RenderBlock::findNextLineBreak):
177
178 2011-05-03  Roland Steiner  <rolandsteiner@chromium.org>
179
180         Reviewed by Dimitri Glazkov.
181
182         Update node list cache count on the containing TreeScope rather than the Document
183         https://bugs.webkit.org/show_bug.cgi?id=59983
184
185         Change code to call add/removeNodeListCache() and hasNodeListCaches() on the proper tree scope.
186         Move updating of the node list cache count from setDocument() to setTreeScopeRecursively().
187         Make setDocument() and setDocumentRecursively() private.
188
189         No new tests. (refactoring)
190
191         * dom/ContainerNode.cpp:
192         (WebCore::ContainerNode::childrenChanged):
193         * dom/Node.cpp:
194         (WebCore::Node::~Node):
195         (WebCore::Node::setDocument):
196         (WebCore::Node::setTreeScopeRecursively):
197         (WebCore::Node::childNodes):
198         (WebCore::Node::registerDynamicNodeList):
199         (WebCore::Node::unregisterDynamicNodeList):
200         (WebCore::Node::notifyLocalNodeListsAttributeChanged):
201         (WebCore::Node::notifyLocalNodeListsChildrenChanged):
202         (WebCore::Node::getElementsByTagName):
203         (WebCore::Node::getElementsByTagNameNS):
204         (WebCore::Node::getElementsByName):
205         (WebCore::Node::getElementsByClassName):
206         * dom/Node.h:
207         * html/HTMLFormControlElement.cpp:
208         (WebCore::HTMLFormControlElement::labels):
209
210 2011-05-03  Ryosuke Niwa  <rniwa@webkit.org>
211
212         Reviewed by Eric Seidel.
213
214         Bundle trailingSpaceObject and trailingPositionedBoxes in findNextLineBreak as a class
215         https://bugs.webkit.org/show_bug.cgi?id=60046
216
217         Extracted TrailingObjects that encapsulates trailingSpaceObject and trailingPositionedBoxes.
218
219         * rendering/RenderBlockLineLayout.cpp:
220         (WebCore::TrailingObjects::TrailingObjects):
221         (WebCore::TrailingObjects::setTrailingWhitespace):
222         (WebCore::TrailingObjects::clear):
223         (WebCore::TrailingObjects::appendBoxIfNeeded):
224         (WebCore::TrailingObjects::addMidpoints):
225         (WebCore::RenderBlock::findNextLineBreak):
226
227 2011-05-03  Igor Oliveira  <igor.oliveira@openbossa.org>
228
229         Reviewed by Eric Seidel.
230
231         [Qt] Implement initial support to DataTransferItems
232         https://bugs.webkit.org/show_bug.cgi?id=58448
233
234         Implement initial support to DataTransferItems. DataTransferItems are used to 
235         hold data for drag and drop operations. DataTransferItems hold a list of 
236         DataTransferItem objects each of which holds an item being dragged.
237
238         * WebCore.pro:
239         * dom/DataTransferItems.idl:
240         * editing/qt/EditorQt.cpp:
241         (WebCore::Editor::newGeneralClipboard):
242         * page/qt/EventHandlerQt.cpp:
243         (WebCore::EventHandler::createDraggingClipboard):
244         * platform/chromium/DataTransferItemsChromium.h:
245         * platform/qt/ClipboardQt.cpp:
246         (WebCore::Clipboard::create):
247         (WebCore::ClipboardQt::ClipboardQt):
248         (WebCore::ClipboardQt::items):
249         * platform/qt/ClipboardQt.h:
250         (WebCore::ClipboardQt::create):
251         * platform/qt/DataTransferItemQt.cpp: Added.
252         (WebCore::DataTransferItem::create):
253         (WebCore::DataTransferItemQt::createFromPasteboard):
254         (WebCore::DataTransferItemQt::create):
255         (WebCore::DataTransferItemQt::DataTransferItemQt):
256         (WebCore::DataTransferItemQt::getAsString):
257         (WebCore::DataTransferItemQt::getAsFile):
258         * platform/qt/DataTransferItemQt.h: Added.
259         * platform/qt/DataTransferItemsQt.cpp: Copied from Source/WebCore/editing/qt/EditorQt.cpp.
260         (WebCore::DataTransferItemsQt::create):
261         (WebCore::DataTransferItemsQt::DataTransferItemsQt):
262         (WebCore::DataTransferItemsQt::addPasteboardItem):
263         * platform/qt/DataTransferItemsQt.h: Copied from Source/WebCore/editing/qt/EditorQt.cpp.
264
265 2011-05-03  Julien Chaffraix  <jchaffraix@codeaurora.org>
266
267         Reviewed by Dimitri Glazkov.
268
269         Element:shadowRoot & Element::ensureShadowRoot should return ShadowRoot*
270         https://bugs.webkit.org/show_bug.cgi?id=58703
271
272         No new tests, refactoring only.
273
274         * dom/Element.cpp:
275         (WebCore::Element::copyNonAttributeProperties):
276         (WebCore::Element::insertedIntoDocument):
277         (WebCore::Element::removedFromDocument):
278         (WebCore::Element::insertedIntoTree):
279         (WebCore::Element::removedFromTree):
280         (WebCore::Element::attach):
281         (WebCore::Element::detach):
282         (WebCore::Element::recalcStyle):
283         (WebCore::Element::shadowRoot):
284         (WebCore::Element::ensureShadowRoot):
285         (WebCore::Element::childrenChanged):
286         * dom/Node.cpp:
287         (WebCore::Node::setTreeScopeRecursively):
288         (WebCore::shadowRoot):
289         (WebCore::Node::setDocumentRecursively):
290         (WebCore::NodeRendererFactory::findVisualParent):
291         Updated all the call sites for shadowRoot and ensureShadowRoot in the 2
292         previous classes.
293
294         * dom/Element.h: Updated 2 methods' signature to return a ShadowRoot*.
295
296         * dom/ShadowRoot.h: Removed toShadowRoot as it is not used anymore.
297
298         * html/HTMLDetailsElement.cpp:
299         * html/HTMLSummaryElement.cpp:
300         Added #include for ShadowRoot.h.
301
302 2011-05-03  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
303
304         Reviewed by Kenneth Rohde Christiansen.
305
306         [EFL] Implement mediaSliderTrack
307         https://bugs.webkit.org/show_bug.cgi?id=59998
308
309         Implement paintMediaSliderTrack.
310
311         * platform/efl/RenderThemeEfl.cpp:
312         (WebCore::RenderThemeEfl::RenderThemeEfl):
313         (WebCore::RenderThemeEfl::paintMediaSliderTrack):
314         * platform/efl/RenderThemeEfl.h:
315
316 2011-05-03  Mikhail Naganov  <mnaganov@chromium.org>
317
318         Reviewed by Pavel Feldman.
319
320         WebInspector: [Chromium] Fix slowness of Summary view nodes expansion in detailed heap profiles.
321         https://bugs.webkit.org/show_bug.cgi?id=60023
322
323         * inspector/front-end/DetailedHeapshotGridNodes.js:
324         (WebInspector.HeapSnapshotConstructorNode):
325         (WebInspector.HeapSnapshotConstructorNode.prototype._createNodesProvider):
326         * inspector/front-end/HeapSnapshot.js:
327         (WebInspector.HeapSnapshot.prototype.dispose):
328         (WebInspector.HeapSnapshot.prototype.aggregates):
329         (WebInspector.HeapSnapshot.prototype._buildAggregates):
330         (WebInspector.HeapSnapshot.prototype._sortAggregateIndexes):
331         (WebInspector.HeapSnapshot.prototype.createNodesProviderForClass):
332         (WebInspector.HeapSnapshotFilteredOrderedIterator):
333         (WebInspector.HeapSnapshotNodesProvider):
334         * inspector/front-end/HeapSnapshotProxy.js:
335         (WebInspector.HeapSnapshotProxy.prototype.aggregates):
336         (WebInspector.HeapSnapshotProxy.prototype.createNodesProviderForClass):
337
338 2011-05-03  Mikhail Naganov  <mnaganov@chromium.org>
339
340         Reviewed by Pavel Feldman.
341
342         WebInspector: [Chromium] Hint user that to display retaining paths, an object entry must be clicked.
343         https://bugs.webkit.org/show_bug.cgi?id=60029
344
345         * English.lproj/localizedStrings.js:
346         * inspector/front-end/DetailedHeapshotView.js:
347         (WebInspector.HeapSnapshotRetainingPathsList.prototype.reset):
348         (WebInspector.DetailedHeapshotView.prototype._mouseClickInContainmentGrid):
349
350 2011-05-03  Beth Dakin  <bdakin@apple.com>
351
352         Reviewed by Dan Bernstein.
353
354         https://bugs.webkit.org/show_bug.cgi?id=60045
355         Scrollbar thumb sometimes leaves artifacts in the track after scrolling
356         -and corresponding-
357         <rdar://problem/9015376>
358
359         When we're using WK_SCROLLBAR_PAINTER, the AppleScrollBarVariant default should 
360         always be ignored.
361         * platform/mac/ScrollbarThemeMac.mm:
362         (WebCore::updateArrowPlacement):
363
364 2011-05-03  David Hyatt  <hyatt@apple.com>
365
366         Reviewed by Dan Bernstein.
367
368         https://bugs.webkit.org/show_bug.cgi?id=60040
369         <rdar://problem/9261591>
370
371         Links broken at iplanwebsites.com. Make sure that culledInlineAbsoluteQuads still does
372         a translation of a 0,0 point to absolute coordinates so that the top left position is
373         accurate.
374
375         Added fast/inline/skipped-whitespace-client-rect.html
376         
377         * rendering/RenderInline.cpp:
378         (WebCore::RenderInline::culledInlineAbsoluteQuads):
379
380 2011-05-03  Sam Weinig  <sam@webkit.org>
381
382         Fix chromium build.
383
384         * page/Settings.cpp:
385
386 2011-05-02  Roland Steiner  <rolandsteiner@chromium.org>
387
388         Reviewed by Dimitri Glazkov.
389
390         Bug 59974 - Update image map on the containing TreeScope rather than the Document
391         https://bugs.webkit.org/show_bug.cgi?id=59974
392
393         No new tests. (reefactoring)
394
395         * html/HTMLMapElement.cpp:
396         (WebCore::HTMLMapElement::parseMappedAttribute):
397         (WebCore::HTMLMapElement::insertedIntoDocument):
398         (WebCore::HTMLMapElement::removedFromDocument):
399         * rendering/RenderImage.cpp:
400         (WebCore::RenderImage::imageMap):
401
402 2011-05-03  Sam Weinig  <sam@webkit.org>
403
404         Fix chromium build.
405
406         * loader/HistoryController.cpp:
407
408 2011-05-02  Roland Steiner  <rolandsteiner@chromium.org>
409
410         Reviewed by Dimitri Glazkov.
411
412         Bug 59966 - Update ID hash on the containing TreeScope rather than the Document
413         https://bugs.webkit.org/show_bug.cgi?id=59966
414
415         No new tests. (refactoring)
416
417         * accessibility/AccessibilityRenderObject.cpp:
418         (WebCore::AccessibilityRenderObject::elementsFromAttribute):
419         (WebCore::AccessibilityRenderObject::activeDescendant):
420         * accessibility/AccessibilityRenderObject.h:
421         (WebCore::AccessibilityRenderObject::isAccessibilityRenderObject):
422         * css/CSSCursorImageValue.cpp:
423         (WebCore::resourceReferencedByCursorElement):
424         (WebCore::CSSCursorImageValue::~CSSCursorImageValue):
425         (WebCore::CSSCursorImageValue::updateIfSVGCursorIsUsed):
426         (WebCore::CSSCursorImageValue::cachedImage):
427         * dom/DynamicNodeList.cpp:
428         (WebCore::DynamicNodeList::itemWithName):
429         * dom/Element.h:
430         (WebCore::Element::updateId):
431         * dom/Node.cpp:
432         (WebCore::Node::querySelector):
433         * html/FormAssociatedElement.cpp:
434         (WebCore::FormAssociatedElement::insertedIntoTree):
435         (WebCore::FormAssociatedElement::resetFormOwner):
436         * html/HTMLInputElement.cpp:
437         (WebCore::HTMLInputElement::dataList):
438         * html/HTMLLabelElement.cpp:
439         (WebCore::HTMLLabelElement::control):
440         * rendering/svg/RenderSVGTextPath.cpp:
441         (WebCore::RenderSVGTextPath::layoutPath):
442         * svg/SVGAElement.cpp:
443         (WebCore::SVGAElement::defaultEventHandler):
444         * svg/SVGAltGlyphElement.cpp:
445         (WebCore::SVGAltGlyphElement::glyphElement):
446         * svg/SVGFEImageElement.cpp:
447         (WebCore::SVGFEImageElement::requestImageResource):
448         (WebCore::SVGFEImageElement::build):
449         * svg/SVGLinearGradientElement.cpp:
450         (WebCore::SVGLinearGradientElement::collectGradientAttributes):
451         * svg/SVGMPathElement.cpp:
452         (WebCore::SVGMPathElement::pathElement):
453         * svg/SVGPatternElement.cpp:
454         (WebCore::SVGPatternElement::collectPatternAttributes):
455         * svg/SVGRadialGradientElement.cpp:
456         (WebCore::SVGRadialGradientElement::collectGradientAttributes):
457         * svg/SVGSVGElement.cpp:
458         (WebCore::SVGSVGElement::getElementById):
459         * svg/SVGTRefElement.cpp:
460         (WebCore::SVGTRefElement::updateReferencedText):
461         * svg/SVGTextPathElement.cpp:
462         (WebCore::SVGTextPathElement::insertedIntoDocument):
463         * svg/SVGUseElement.cpp:
464         (WebCore::SVGUseElement::buildPendingResource):
465         (WebCore::SVGUseElement::hasCycleUseReferencing):
466         (WebCore::SVGUseElement::expandUseElementsInShadowTree):
467         * svg/SVGViewSpec.cpp:
468         (WebCore::SVGViewSpec::viewTarget):
469         * svg/animation/SVGSMILElement.cpp:
470         (WebCore::SVGSMILElement::eventBaseFor):
471         (WebCore::SVGSMILElement::connectConditions):
472         (WebCore::SVGSMILElement::targetElement):
473         * xml/XPathFunctions.cpp:
474         (WebCore::XPath::FunId::evaluate):
475
476 2011-05-03  Sam Weinig  <sam@webkit.org>
477
478         Fix chromium build.
479
480         * css/StyleMedia.cpp:
481
482 2011-05-03  Sam Weinig  <sam@webkit.org>
483
484         Reviewed by Anders Carlsson.
485
486         Prune #includes from FrameView.h (Part 1)
487         https://bugs.webkit.org/show_bug.cgi?id=59957
488
489         * page/FrameView.h:
490         Prune #includes.
491
492         * accessibility/chromium/AXObjectCacheChromium.cpp:
493         * page/win/FrameCGWin.cpp:
494         * platform/Scrollbar.cpp:
495         Add not necessary #includes.
496
497         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationObjC.h:
498         Add now necessary forward declaration.
499
500 2011-05-03  Andrey Kosyakov  <caseq@chromium.org>
501
502         Reviewed by Dimitri Glazkov.
503
504         [Chromium] toV8(Node*) will enter infinite recursion when called with a node of type SHADOW_ROOT_NODE
505         https://bugs.webkit.org/show_bug.cgi?id=60026
506
507         Return a wrapper for Node in toV8(Node*) when called with a node of type
508         SHADOW_ROOT_NODE instead of entering infinite recursion.
509
510         * bindings/v8/custom/V8NodeCustom.cpp:
511         (WebCore::toV8Slow):
512
513 2011-05-02  Adam Roben  <aroben@apple.com>
514
515         Take advantage of implicit conversion from nullptr_t to PassOwnPtr
516
517         Fixes <http://webkit.org/b/59964> Implicit conversion from std::nullptr_t to PassOwnPtr
518         doesn't work, but should
519
520         Reviewed by Adam Barth.
521
522         * bindings/js/ScheduledAction.cpp:
523         * css/CSSStyleSelector.cpp:
524         * css/MediaList.cpp:
525         * css/MediaQueryMatcher.cpp:
526         * css/SVGCSSStyleSelector.cpp:
527         * dom/MessagePort.cpp:
528         * html/InputType.cpp:
529         * html/canvas/WebGLRenderingContext.cpp:
530         * inspector/InspectorStyleSheet.cpp:
531         * page/ContextMenuController.cpp:
532         * page/Page.cpp:
533         * platform/PlatformGestureRecognizer.cpp:
534         * platform/PurgeableBuffer.h:
535         * platform/graphics/ImageBuffer.h:
536         * platform/leveldb/LevelDBDatabase.cpp:
537         * platform/mac/PurgeableBufferMac.cpp:
538         * platform/text/RegularExpression.cpp:
539         * rendering/RenderTheme.cpp:
540         * rendering/RenderThemeMac.mm:
541         * rendering/style/RenderStyle.h:
542         * rendering/style/SVGRenderStyleDefs.cpp:
543         * rendering/style/ShadowData.cpp:
544         * rendering/style/StyleRareInheritedData.cpp:
545         * rendering/style/StyleRareNonInheritedData.cpp:
546         * rendering/svg/RenderSVGResourcePattern.cpp:
547
548 2011-05-03  Pavel Feldman  <pfeldman@google.com>
549
550         Not reviewed: fix inspector status bar image glyph reference in network panel.
551
552         * inspector/front-end/networkPanel.css:
553         (.network-larger-resources-status-bar-item .glyph):
554
555 2011-05-03  Pavel Feldman  <pfeldman@google.com>
556
557         Reviewed by Yury Semikhatsky.
558
559         Web Inspector: rename BrowserDebugger agent to DOMDebugger.
560         https://bugs.webkit.org/show_bug.cgi?id=60019
561
562         * inspector/CodeGeneratorInspector.pm:
563         * inspector/Inspector.json:
564         * inspector/InspectorController.cpp:
565         (WebCore::InspectorController::connectFrontend):
566         * inspector/front-end/BreakpointsSidebarPane.js:
567         (WebInspector.XHRBreakpointsSidebarPane.prototype._setBreakpoint):
568         (WebInspector.XHRBreakpointsSidebarPane.prototype._removeBreakpoint):
569         (WebInspector.XHRBreakpointsSidebarPane.prototype._checkboxClicked):
570         (WebInspector.EventListenerBreakpointsSidebarPane.prototype._setBreakpoint):
571         (WebInspector.EventListenerBreakpointsSidebarPane.prototype._removeBreakpoint):
572         * inspector/generate-inspector-idl:
573
574 2011-05-03  Yury Semikhatsky  <yurys@chromium.org>
575
576         Reviewed by Pavel Feldman.
577
578         Web Inspector: remove special logic for type of document.__proto__
579         https://bugs.webkit.org/show_bug.cgi?id=60014
580
581         Test: inspector/console/console-log-document-proto.html
582
583         * inspector/InjectedScriptSource.js: removed unnecessary check nodeType === undefined
584
585 2011-05-03  Pavel Feldman  <pfeldman@google.com>
586
587         Not reviewed: fixed typo in inspector style.
588
589         * inspector/front-end/inspector.css:
590         (.status-bar-item > .glyph):
591
592 2011-05-03  Pavel Feldman  <pfeldman@chromium.org>
593
594         Reviewed by Yury Semikhatsky.
595
596         Web Inspector: revision history storage is too slow.
597         https://bugs.webkit.org/show_bug.cgi?id=59939
598
599         It turns out that iterating localStorage keys is very
600         expensive (results in slow inspector start), refactor revision
601         history in order not to rely upon that operation.
602
603         * inspector/front-end/Resource.js:
604         (WebInspector.Resource):
605         (WebInspector.Resource._resourceRevisionRegistry):
606         (WebInspector.Resource.restoreRevisions.persist):
607         (WebInspector.Resource.restoreRevisions):
608         (WebInspector.Resource.persistRevision):
609         (WebInspector.Resource.prototype._persistRevision):
610         * inspector/front-end/ResourceTreeModel.js:
611         (WebInspector.ResourceTreeModel.prototype._processCachedResources):
612         (WebInspector.ResourceTreeModel.prototype._frameNavigated):
613
614 2011-05-03  Pavel Feldman  <pfeldman@chromium.org>
615
616         Reviewed by Yury Semikhatsky.
617
618         Web Inspector: combine toolbar icon images.
619         https://bugs.webkit.org/show_bug.cgi?id=59931
620
621         * WebCore.gypi:
622         * inspector/front-end/Images/auditsIcon.png: Removed.
623         * inspector/front-end/Images/consoleIcon.png: Removed.
624         * inspector/front-end/Images/elementsIcon.png: Removed.
625         * inspector/front-end/Images/networkIcon.png: Removed.
626         * inspector/front-end/Images/profilesIcon.png: Removed.
627         * inspector/front-end/Images/resourcesIcon.png: Removed.
628         * inspector/front-end/Images/scriptsIcon.png: Removed.
629         * inspector/front-end/Images/timelineIcon.png: Removed.
630         * inspector/front-end/Images/toolbarIcons.png: Added.
631         * inspector/front-end/Images/toolbarIconsSmall.png: Added.
632         * inspector/front-end/WebKit.qrc:
633         * inspector/front-end/inspector.css:
634         (.toolbar-icon):
635         (#toolbar-dropdown .toolbar-icon):
636         (.toolbar-item:active .toolbar-icon):
637         (#toolbar-dropdown .toolbar-item:active .toolbar-icon):
638         (.toolbar-item.elements .toolbar-icon):
639         (.toolbar-item.resources .toolbar-icon):
640         (#toolbar-dropdown .toolbar-item.resources .toolbar-icon):
641         (.toolbar-item.network .toolbar-icon):
642         (#toolbar-dropdown .toolbar-item.network .toolbar-icon):
643         (.toolbar-item.scripts .toolbar-icon):
644         (#toolbar-dropdown .toolbar-item.scripts .toolbar-icon):
645         (.toolbar-item.timeline .toolbar-icon):
646         (#toolbar-dropdown .toolbar-item.timeline .toolbar-icon):
647         (.toolbar-item.profiles .toolbar-icon):
648         (#toolbar-dropdown .toolbar-item.profiles .toolbar-icon):
649         (.toolbar-item.audits .toolbar-icon):
650         (#toolbar-dropdown .toolbar-item.audits .toolbar-icon):
651         (.toolbar-item.console .toolbar-icon):
652         (#toolbar-dropdown .toolbar-item.console .toolbar-icon):
653         (.status-bar-item > .glyph):
654
655 2011-05-03  Pavel Feldman  <pfeldman@chromium.org>
656
657         Reviewed by Yury Semikhatsky.
658
659         Web Inspector: combine status bar button glyphs.
660         https://bugs.webkit.org/show_bug.cgi?id=59885
661
662         * WebCore.gypi:
663         * inspector/front-end/Images/breakpointsActivateButtonGlyph.png: Removed.
664         * inspector/front-end/Images/breakpointsDeactivateButtonGlyph.png: Removed.
665         * inspector/front-end/Images/clearConsoleButtonGlyph.png: Removed.
666         * inspector/front-end/Images/consoleButtonGlyph.png: Removed.
667         * inspector/front-end/Images/dockButtonGlyph.png: Removed.
668         * inspector/front-end/Images/enableOutlineButtonGlyph.png: Removed.
669         * inspector/front-end/Images/enableSolidButtonGlyph.png: Removed.
670         * inspector/front-end/Images/excludeButtonGlyph.png: Removed.
671         * inspector/front-end/Images/focusButtonGlyph.png: Removed.
672         * inspector/front-end/Images/garbageCollectButtonGlyph.png: Removed.
673         * inspector/front-end/Images/gearButtonGlyph.png: Removed.
674         * inspector/front-end/Images/helpButtonGlyph.png: Removed.
675         * inspector/front-end/Images/largerResourcesButtonGlyph.png: Removed.
676         * inspector/front-end/Images/nodeSearchButtonGlyph.png: Removed.
677         * inspector/front-end/Images/pauseOnExceptionButtonGlyph.png: Removed.
678         * inspector/front-end/Images/percentButtonGlyph.png: Removed.
679         * inspector/front-end/Images/prettyPrintButtonGlyph.png: Removed.
680         * inspector/front-end/Images/recordButtonGlyph.png: Removed.
681         * inspector/front-end/Images/recordToggledButtonGlyph.png: Removed.
682         * inspector/front-end/Images/reloadButtonGlyph.png: Removed.
683         * inspector/front-end/Images/statusBarButtonGlyphs.png: Added.
684         * inspector/front-end/Images/undockButtonGlyph.png: Removed.
685         * inspector/front-end/WebKit.qrc:
686         * inspector/front-end/inspector.css:
687         (.status-bar-item > .glyph):
688         (#dock-status-bar-item .glyph):
689         (body.detached #dock-status-bar-item .glyph):
690         (#console-status-bar-item .glyph):
691         (.clear-status-bar-item .glyph):
692         (button.enable-toggle-status-bar-item .glyph):
693         (button.enable-toggle-status-bar-item.toggled-on .glyph):
694         (.scripts-pause-on-exceptions-status-bar-item .glyph):
695         (.scripts-toggle-pretty-print-status-bar-item .glyph):
696         (.toggle-breakpoints .glyph):
697         (.toggle-breakpoints.toggled-on .glyph):
698         (.resources-larger-resources-status-bar-item .glyph):
699         (.timeline-filter-status-bar-item .glyph):
700         (.garbage-collect-status-bar-item .glyph):
701         (.record-profile-status-bar-item .glyph):
702         (.record-profile-status-bar-item.toggled-on .glyph):
703         (.heap-snapshot-status-bar-item .glyph):
704         (.node-search-status-bar-item .glyph):
705         (.percent-time-status-bar-item .glyph):
706         (.focus-profile-node-status-bar-item .glyph):
707         (.exclude-profile-node-status-bar-item .glyph):
708         (.reset-profile-status-bar-item .glyph):
709         (.delete-storage-status-bar-item .glyph):
710         (.refresh-storage-status-bar-item .glyph):
711         * inspector/front-end/inspector.js:
712
713 2011-05-02  Simon Fraser  <simon.fraser@apple.com>
714
715         Reviewed by Dan Bernstein.
716
717         Possible crash when removing elements with reflections
718         https://bugs.webkit.org/show_bug.cgi?id=60009
719         
720         RenderLayer's destructor deleted its z-order list Vector pointers
721         before removing the reflection layer. However, the reflection cleanup
722         code could call back into the RenderLayer to dirty z-order lists,
723         so move reflection cleanup to before z-order vector deletion.
724         
725         The test crashes when run manually a few times with MallocScribble enabled,
726         but I was not able to create a test that crashed reliably.
727
728         Test: fast/reflections/remove-reflection-crash.html
729
730         * rendering/RenderLayer.cpp:
731         (WebCore::RenderLayer::~RenderLayer):
732
733 2011-05-02  Ian Henderson  <ianh@apple.com>
734
735         Reviewed by Dan Bernstein.
736
737         CSS !important not respected by JavaScript
738         https://bugs.webkit.org/show_bug.cgi?id=60007
739
740         The addParsedProperty and addParsedProperties methods were subtly
741         different.  The former did not check for !important before setting the
742         given property.
743
744         Change addParsedProperties to call addParsedProperty and move the
745         relevant code.  The one other caller of this method, in
746         editing/markup.cpp, probably wanted this behavior anyway.
747
748         Test: fast/css/important-js-override.html
749
750         * css/CSSMutableStyleDeclaration.cpp:
751         (WebCore::CSSMutableStyleDeclaration::addParsedProperties):
752         (WebCore::CSSMutableStyleDeclaration::addParsedProperty):
753
754 2011-05-02  Ben Wells  <benwells@chromium.org>
755
756         Reviewed by Simon Fraser.
757
758         Cleanup variable usage in RenderObject.cpp paintOutline()
759         https://bugs.webkit.org/show_bug.cgi?id=59911
760
761         No new tests for this, there should be no change in behaviour.
762
763         * rendering/RenderObject.cpp:
764         (WebCore::RenderObject::paintOutline):
765
766 2011-05-02  Ryosuke Niwa  <rniwa@webkit.org>
767
768         Reviewed by James Robinson.
769
770         REGRESSION(r84672): showTree doesn't work for input/textarea elements
771         https://bugs.webkit.org/show_bug.cgi?id=60001
772
773         When shadow is null, try retrieving the inner element of a render text control.
774
775         * dom/Node.cpp:
776         (WebCore::traverseTreeAndMark):
777
778 2011-05-02  Joseph Pecoraro  <joepeck@webkit.org>
779
780         Reviewed by David Kilzer.
781
782         Respect fixed text-indent on ::-webkit-input-placeholder
783         https://bugs.webkit.org/show_bug.cgi?id=59825
784
785         Test: fast/forms/input-placeholder-text-indent.html
786
787         * rendering/RenderTextControl.cpp:
788         (WebCore::RenderTextControl::paintPlaceholder): indent by
789         a fixed text-indent size specified on the placeholder style.
790
791 2011-05-02  Eric Uhrhane  <ericu@chromium.org>
792
793         Reviewed by Eric Seidel.
794
795         Some FileWriter progress events should be queued
796         https://bugs.webkit.org/show_bug.cgi?id=50846
797
798         * fileapi/FileWriter.cpp:
799         * fileapi/FileWriter.h:
800         Create a new asynchronous Task [FileWriterCompletionEventTask] that will set readyState to DONE and fire off the right events.
801
802 2011-05-02  Jia Pu  <jpu@apple.com>
803
804         Reviewed by Alexey Proskuryakov.
805
806         [Mac] Need to truncate the string sent to "Look Up … " menu item, if it's too long.
807         https://bugs.webkit.org/show_bug.cgi?id=59836
808         <rdar://problem/9275983>
809
810         * platform/DefaultLocalizationStrategy.cpp:
811         (WebCore::truncatedStringForLookupMenuItem):
812         (WebCore::DefaultLocalizationStrategy::contextMenuItemTagLookUpInDictionary):
813
814 2011-05-02  Brady Eidson  <beidson@apple.com>
815
816         Reviewed by Anders Carlsson.
817
818         <rdar://problem/9340945> and https://bugs.webkit.org/show_bug.cgi?id=59973
819         In Aperture, a WebView might be dealloc'ed before it finishes loading.
820
821         * WebCore.exp.in:
822         * platform/RuntimeApplicationChecks.cpp:
823         (WebCore::applicationIsAperture): Perform a com.apple.Aperture bundle check.
824         * platform/RuntimeApplicationChecks.h:
825
826 2011-05-02  Simon Fraser  <simon.fraser@apple.com>
827
828         Reviewed by Dan Bernstein.
829
830         Avoid wasted cycles updating paths when popping the context stack
831         https://bugs.webkit.org/show_bug.cgi?id=59967
832
833         CanvasRenderingContext2D has to map the current path through
834         transforms whenever the context stack is popped, which creates
835         a lot of platform path objects. Avoid extra work here when the
836         path is empty, or when the transform is identity.
837
838         * platform/graphics/cg/PathCG.cpp:
839         (WebCore::Path::transform):
840
841 2011-05-02  Enrica Casucci  <enrica@apple.com>
842
843         Reviewed by Dan Bernstein.
844
845         Text does not split on white space when typing to the edge of window.
846         https://bugs.webkit.org/show_bug.cgi?id=59968
847         <rdar://problem/9112683>
848
849         Test: editing/inserting/typing-at-end-of-line.html
850
851         This is a regression introduced when we converted the line box tree to
852         floating point in r78846. In findNextLineBreak, there was still one place where
853         the character width was treated as int and truncated and we were inconsistent
854         in the way we treated a character that did not fit entirely in the line.
855
856         * rendering/RenderBlockLineLayout.cpp:
857         (WebCore::RenderBlock::findNextLineBreak):
858
859 2011-04-19  Adrienne Walker  <enne@google.com>
860
861         Reviewed by James Robinson.
862
863         [chromium] Don't unnecessarily resize skia/cg canvases when painting in compositor
864         https://bugs.webkit.org/show_bug.cgi?id=58907
865
866         Additionally, move the context save/restore logic to a place where it
867         will reset the translation added in LayerTilerChromium.
868
869         Test: compositing/repaint/same-size-invalidation.html
870
871         * platform/graphics/chromium/ContentLayerChromium.cpp:
872         (WebCore::ContentLayerPainter::paint):
873         * platform/graphics/chromium/PlatformCanvas.cpp:
874         (WebCore::PlatformCanvas::resize):
875         (WebCore::PlatformCanvas::Painter::Painter):
876         (WebCore::PlatformCanvas::Painter::~Painter):
877         * platform/graphics/chromium/PlatformCanvas.h:
878
879 2011-05-02  Csaba Osztrogonác  <ossy@webkit.org>
880
881         Enable strict OwnPtr for Qt
882         https://bugs.webkit.org/show_bug.cgi?id=59667
883
884         Unreviewed buildfix after r85343.
885
886         * platform/graphics/qt/GraphicsContext3DQt.cpp:
887         (WebCore::GraphicsContext3D::GraphicsContext3D):
888
889 2011-05-02  Sheriff Bot  <webkit.review.bot@gmail.com>
890
891         Unreviewed, rolling out r85483.
892         http://trac.webkit.org/changeset/85483
893         https://bugs.webkit.org/show_bug.cgi?id=59958
894
895         Causes media test failures. (Requested by eric_carlson on
896         #webkit).
897
898         * html/HTMLMediaElement.cpp:
899         (WebCore::HTMLMediaElement::HTMLMediaElement):
900         (WebCore::HTMLMediaElement::prepareForLoad):
901         (WebCore::HTMLMediaElement::seek):
902         (WebCore::HTMLMediaElement::updatePlayState):
903         * html/HTMLMediaElement.h:
904         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
905         (WebCore::MediaPlayerPrivateAVFoundation::MediaPlayerPrivateAVFoundation):
906         (WebCore::MediaPlayerPrivateAVFoundation::resumeLoad):
907         (WebCore::MediaPlayerPrivateAVFoundation::load):
908         (WebCore::MediaPlayerPrivateAVFoundation::prepareToPlay):
909         (WebCore::MediaPlayerPrivateAVFoundation::paint):
910         (WebCore::MediaPlayerPrivateAVFoundation::duration):
911         (WebCore::MediaPlayerPrivateAVFoundation::seeking):
912         (WebCore::MediaPlayerPrivateAVFoundation::updateStates):
913         (WebCore::MediaPlayerPrivateAVFoundation::hasAvailableVideoFrame):
914         (WebCore::MediaPlayerPrivateAVFoundation::metadataLoaded):
915         (WebCore::MediaPlayerPrivateAVFoundation::loadedTimeRangesChanged):
916         (WebCore::MediaPlayerPrivateAVFoundation::timeChanged):
917         (WebCore::MediaPlayerPrivateAVFoundation::seekCompleted):
918         (WebCore::MediaPlayerPrivateAVFoundation::repaint):
919         (WebCore::MediaPlayerPrivateAVFoundation::setPreload):
920         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:
921         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationObjC.h:
922         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationObjC.mm:
923         (WebCore::MediaPlayerPrivateAVFoundationObjC::MediaPlayerPrivateAVFoundationObjC):
924         (WebCore::MediaPlayerPrivateAVFoundationObjC::videoLayerIsReadyToDisplay):
925         (WebCore::MediaPlayerPrivateAVFoundationObjC::createAVPlayerForURL):
926         (WebCore::MediaPlayerPrivateAVFoundationObjC::createAVPlayerForCacheResource):
927         (WebCore::MediaPlayerPrivateAVFoundationObjC::createAVPlayer):
928         (WebCore::MediaPlayerPrivateAVFoundationObjC::beginLoadingMetadata):
929         (WebCore::MediaPlayerPrivateAVFoundationObjC::playerItemStatus):
930         (WebCore::MediaPlayerPrivateAVFoundationObjC::platformDuration):
931         (WebCore::MediaPlayerPrivateAVFoundationObjC::assetStatus):
932         (WebCore::MediaPlayerPrivateAVFoundationObjC::paint):
933         (WebCore::MediaPlayerPrivateAVFoundationObjC::tracksChanged):
934         (WebCore::MediaPlayerPrivateAVFoundationObjC::sizeChanged):
935
936 2011-05-02  Adam Barth  <abarth@webkit.org>
937
938         Reviewed by David Levin.
939
940         PLATFORM(MAC) should (almost!) build with strict PassOwnPtr
941         https://bugs.webkit.org/show_bug.cgi?id=59924
942
943         * css/CSSGrammar.y:
944         * platform/graphics/mac/SimpleFontDataMac.mm:
945             - Memory management for the font cache is somewhat... complext.
946               This will require some careful thought to sort out.
947
948 2011-05-02  Levi Weintraub  <leviw@chromium.org>
949
950         Reviewed by Eric Seidel.
951
952         showLineTree/showLineTreeForThis would make working with the line box tree easier
953         https://bugs.webkit.org/show_bug.cgi?id=59662
954
955         Adding a showLineTree/showLineTreeForThis method to help visualize and debug
956         the line tree. Also adding a missing showRenderTreeForThis method to RenderObject.
957
958         No new tests since this is a debugging feature only and not compiled in release.
959
960         * rendering/InlineBox.cpp:
961         (WebCore::InlineBox::showLineTreeForThis):
962         (WebCore::InlineBox::showLineTreeAndMark):
963         (WebCore::InlineBox::showBox):
964         (showLineTree):
965         * rendering/InlineBox.h:
966         * rendering/InlineFlowBox.cpp:
967         (WebCore::InlineFlowBox::showLineTreeAndMark):
968         * rendering/InlineFlowBox.h:
969         * rendering/InlineTextBox.cpp:
970         (WebCore::InlineTextBox::showBox):
971         * rendering/InlineTextBox.h:
972         * rendering/RenderBlock.cpp:
973         (WebCore::RenderBlock::showLineTreeAndMark):
974         * rendering/RenderBlock.h:
975         * rendering/RenderObject.cpp:
976         (WebCore::RenderObject::showRenderTreeForThis):
977         (WebCore::RenderObject::showLineTreeForThis):
978         (showTree):
979         (showLineTree):
980         * rendering/RenderObject.h:
981
982 2011-05-02  Dimitri Glazkov  <dglazkov@chromium.org>
983
984         Reviewed by Eric Carlson.
985
986         REGRESSIONS (r71934): In standalone media documents, (double-)clicking the media element doesn’t play/pause
987         https://bugs.webkit.org/show_bug.cgi?id=59917
988
989         Since default event handlers are not retargeted, we should always attempt ancestor
990         traversal to find out whether the event.
991
992         * html/MediaDocument.cpp:
993         (WebCore::ancestorVideoElement): Added ancestor-traversing helper.
994         (WebCore::MediaDocument::defaultEventHandler): Changed to use ancestorVideoElement.
995
996 2011-05-02  Sam Weinig  <sam@webkit.org>
997
998         Attempt to fix the Leopard build.
999
1000         * platform/graphics/FontPlatformData.h:
1001         * platform/graphics/mac/ComplexTextController.h:
1002         * platform/graphics/mac/ComplexTextControllerATSUI.cpp:
1003         * platform/mac/WebCoreSystemInterface.h:
1004
1005 2011-05-02  Tony Chang  <tony@chromium.org>
1006
1007         Reviewed by Kent Tamura.
1008
1009         convert manual-tests/bugzilla-6821.html to a layout test
1010         https://bugs.webkit.org/show_bug.cgi?id=59404
1011
1012         Test: fast/css/hover-update.html
1013
1014         * manual-tests/bugzilla-6821.html: Removed.
1015
1016 2011-05-02  Sam Weinig  <sam@webkit.org>
1017
1018         Reviewed by Anders Carlsson.
1019
1020         Prune ApplicationServices.h out of the headers
1021         https://bugs.webkit.org/show_bug.cgi?id=59952
1022
1023         More forward declares are better.
1024
1025         * html/canvas/CanvasRenderingContext2D.cpp:
1026         * html/canvas/CanvasRenderingContext2D.h:
1027         * platform/graphics/GlyphBuffer.h:
1028         * platform/graphics/cg/ImageBufferCG.cpp:
1029         * platform/graphics/cg/PDFDocumentImage.cpp:
1030         * platform/graphics/cg/PDFDocumentImage.h:
1031         * platform/graphics/mac/ComplexTextController.h:
1032         * platform/graphics/mac/ComplexTextControllerCoreText.cpp:
1033         * platform/graphics/mac/GlyphPageTreeNodeMac.cpp:
1034         * platform/mac/ScrollAnimatorMac.h:
1035         * platform/mac/ScrollAnimatorMac.mm:
1036         * platform/mac/ScrollbarThemeMac.h:
1037         * platform/mac/ScrollbarThemeMac.mm:
1038         * platform/mac/WebCoreNSStringExtras.h:
1039         * platform/mac/WebCoreSystemInterface.h:
1040
1041 2011-05-02  Dan Bernstein  <mitz@apple.com>
1042
1043         Reviewed by Simon Fraser.
1044
1045         <rdar://problem/7972529> Images with percentage based height/max-height are missing when they are inside blocks inside tables
1046         https://bugs.webkit.org/show_bug.cgi?id=58006
1047
1048         * rendering/RenderBox.cpp:
1049         (WebCore::RenderBox::computeReplacedLogicalHeightUsing): Expanded the scope of the fix for
1050         <http://webkit.org/b/15359> from r29039 to cover not just the case of a auto-or-percent-height
1051         table cell as the immediate containing block, but any case where all containing block ancestors
1052         up to and including a table cell are auto-or-percent height.
1053
1054 2011-05-02  Daniel Bates  <dbates@webkit.org>
1055
1056         Reviewed by Sam Weinig.
1057
1058         Convert manual test onblur-remove.html to a DRT test; onblur-remove.html fails
1059         https://bugs.webkit.org/show_bug.cgi?id=59379
1060
1061         Move manual test onblur-remove.html to LayoutTests/fast/events.
1062
1063         Test: fast/events/onblur-remove.html
1064
1065         * manual-tests/onblur-remove.html: Removed.
1066
1067 2011-05-02  Sailesh Agrawal  <sail@chromium.org>
1068
1069         Reviewed by Dimitri Glazkov.
1070
1071         Chromium Mac: Add scrollbar overlay drawing functions
1072         https://bugs.webkit.org/show_bug.cgi?id=59741
1073
1074         These functions are simply copied from WebCoreSystemInterface. These will be used to implement overlay scrollbars for Chromium Mac.
1075
1076         No new tests, since this code is only enabled on future versions of Mac OS X.
1077
1078         * WebCore.gypi:
1079         * platform/chromium/ScrollbarOverlayUtilitiesMac.h: Added.
1080         * platform/chromium/ScrollbarOverlayUtilitiesMac.mm: Added.
1081         (LookUpNSScrollerImpClass):
1082         (LookUpNSScrollerImpPairClass):
1083         (ScrollbarControlSizeToNSControlSize):
1084         (wkScrollbarPainterUsesOverlayScrollers):
1085         (wkScrollbarPainterIsHorizontal):
1086         (wkScrollbarPainterKnobAlpha):
1087         (wkScrollbarPainterSetOverlayState):
1088         (wkScrollbarPainterPaint):
1089         (wkScrollbarMinimumThumbLength):
1090         (wkScrollbarPainterSetDelegate):
1091         (wkScrollbarPainterTrackAlpha):
1092         (wkMakeScrollbarPainter):
1093         (wkScrollbarThickness):
1094         (wkScrollbarMinimumTotalLengthNeededForThumb):
1095         (wkVerticalScrollbarPainterForController):
1096         (wkHorizontalScrollbarPainterForController):
1097         (wkMakeScrollbarReplacementPainter):
1098         (wkSetPainterForPainterController):
1099         (wkSetScrollbarPainterControllerStyle):
1100         (wkScrollbarPainterKnobRect):
1101         (wkSetScrollbarPainterKnobAlpha):
1102         (wkSetScrollbarPainterTrackAlpha):
1103         (wkSetScrollbarPainterKnobStyle):
1104         (wkMakeScrollbarPainterController):
1105         (wkContentAreaScrolled):
1106         (wkContentAreaWillPaint):
1107         (wkMouseEnteredContentArea):
1108         (wkMouseExitedContentArea):
1109         (wkMouseMovedInContentArea):
1110         (wkWillStartLiveResize):
1111         (wkContentAreaResized):
1112         (wkWillEndLiveResize):
1113         (wkContentAreaDidShow):
1114         (wkContentAreaDidHide):
1115         (wkDidBeginScrollGesture):
1116         (wkDidEndScrollGesture):
1117         (wkScrollbarPainterForceFlashScrollers):
1118         (IsScrollbarOverlayAPIAvailable):
1119
1120 2011-05-02  Luke Macpherson   <macpherson@chromium.org>
1121
1122         Reviewed by Dimitri Glazkov.
1123
1124         Implement Length based CSS properties in CSSStyleApplyProperty
1125         https://bugs.webkit.org/show_bug.cgi?id=59314
1126
1127         No new tests as no functionality changed.
1128
1129         * css/CSSStyleApplyProperty.cpp:
1130         (WebCore::ApplyPropertyLength::ApplyPropertyLength):
1131         Added this class to handle all length types.
1132         Property specific behavior is handled through set of boolean parameters.
1133         (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
1134         Added calls to set up entries for the newly added length properties.
1135         * css/CSSStyleSelector.cpp:
1136         (WebCore::CSSStyleSelector::applyProperty):
1137         Remove property implementations mow implemented in CSSStyleApplyProperty.
1138         * css/CSSStyleSelector.h:
1139         (WebCore::CSSStyleSelector::rootElementStyle):
1140         Expose m_rootElementStyle via getter.
1141
1142 2011-05-02  Eric Carlson  <eric.carlson@apple.com>
1143
1144         Reviewed by Eric Seidel.
1145
1146         HTMLMediaElement should not seek to time 0 when readyState reaches HAVE_METADATA
1147         https://bugs.webkit.org/show_bug.cgi?id=59828
1148
1149         No new tests required, no functional change because seeking to time zero before playback
1150         begins has no effect.
1151
1152         * html/HTMLMediaElement.cpp:
1153         (WebCore::HTMLMediaElement::setReadyState): Don't seek to time 0 when readyState reaches
1154             HAVE_METADATA.
1155
1156 2011-05-02  Sam Weinig  <sam@webkit.org>
1157
1158         Reviewed by Gavin Barraclough.
1159
1160         Fix extra whitespace in license in FocusDirection.h.
1161
1162         * page/FocusDirection.h:
1163
1164 2011-05-02  Sam Weinig  <sam@webkit.org>
1165
1166         Reviewed by Adam Barth.
1167
1168         Prune some #includes from DOMWindow.h
1169         https://bugs.webkit.org/show_bug.cgi?id=59907
1170
1171         * page/DOMWindow.cpp:
1172         (WebCore::DOMWindow::setSecurityOrigin):
1173         * page/DOMWindow.h:
1174         Remove #includes of SecurityOrigin and MessagePort by forward declaring
1175         and moving the SecurityOrigin setter to the .cpp file. Also adds EventTarget
1176         #include that was getting added by MessagePort.h.
1177
1178         * bindings/js/JSCustomVoidCallback.cpp:
1179         * bindings/js/JSCustomXPathNSResolver.cpp:
1180         * bindings/js/JSDOMWindowCustom.h:
1181         * bindings/js/JSHistoryCustom.cpp:
1182         * bindings/js/ScriptController.h:
1183         * html/HTMLAnchorElement.cpp:
1184         * html/HTMLMediaElement.cpp:
1185         * html/parser/XSSFilter.cpp:
1186         * inspector/InspectorDOMStorageResource.cpp:
1187         * loader/MainResourceLoader.cpp:
1188         * page/DragController.cpp:
1189         * page/EventSource.cpp:
1190         * page/Location.cpp:
1191         * websockets/WebSocket.cpp:
1192         * xml/XSLTProcessorLibxslt.cpp:
1193         Add now missing SecurityOrigin.h #includes.
1194
1195 2011-05-02  Eric Carlson  <eric.carlson@apple.com>
1196
1197         Reviewed by Brady Eidson.
1198
1199         The preload attribute of the video tag is not completely implemented
1200         https://bugs.webkit.org/show_bug.cgi?id=43673
1201         <rdar://problem/7508322>
1202
1203         Tested manually with manual-tests/media-elements/video-preload.html.
1204
1205         * html/HTMLMediaElement.cpp:
1206         (WebCore::HTMLMediaElement::HTMLMediaElement): Initialize m_havePreparedToPlay.
1207         (WebCore::HTMLMediaElement::prepareForLoad): Ditto.
1208         (WebCore::HTMLMediaElement::prepareToPlay): New, tell player to prepare to play.
1209         (WebCore::HTMLMediaElement::seek): Call prepareToPlay when preload is less than 'metadata'
1210             because we need to have media data loaded to seek.
1211         (WebCore::HTMLMediaElement::updatePlayState): Call prepareToPlay.
1212         * html/HTMLMediaElement.h:
1213
1214         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
1215         (WebCore::MediaPlayerPrivateAVFoundation::MediaPlayerPrivateAVFoundation):  Remove 
1216             m_videoFrameHasDrawn and m_delayingLoad as they are no longer used.
1217         (WebCore::MediaPlayerPrivateAVFoundation::resumeLoad): Removed.
1218         (WebCore::MediaPlayerPrivateAVFoundation::load): Don't initialize m_videoFrameHasDrawn. 
1219             Move all preload logic to setPreload, call it from here.
1220         (WebCore::MediaPlayerPrivateAVFoundation::prepareToPlay): Move all preload logic to 
1221             setPreload, call it.
1222         (WebCore::MediaPlayerPrivateAVFoundation::duration): Don't cache duration = 0, it is
1223             unlikely to be correct and isn't worth caching.
1224         (WebCore::MediaPlayerPrivateAVFoundation::updateStates): Update for name change AVAssetStatus
1225             to AssetStatus. Create the AVPlayer once we know an asset is playable but preload is
1226             'metadata'. Set networkState to 'idle' when the playback buffer is full because that is
1227             a signal that AVFoundation won't do any more IO. Set readyState to 'HAVE_CURRENT_DATA' 
1228             when the first frame is available.
1229         (WebCore::MediaPlayerPrivateAVFoundation::metadataLoaded): Call tracksChanged so we cache
1230             width, height, hasVideo, etc.
1231         (WebCore::MediaPlayerPrivateAVFoundation::repaint): Don't set m_videoFrameHasDrawn, it is done
1232             in derived classes.
1233         (WebCore::MediaPlayerPrivateAVFoundation::setPreload): Centralize all logic about when to create
1234             AVAsset and AVPlayerItem here.
1235         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:
1236
1237         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationObjC.h:
1238         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationObjC.mm:
1239         (WebCore::MediaPlayerPrivateAVFoundationObjC::MediaPlayerPrivateAVFoundationObjC): Initialize
1240             m_videoFrameHasDrawn.
1241         (WebCore::MediaPlayerPrivateAVFoundationObjC::hasAvailableVideoFrame): New, renamed from
1242             videoLayerIsReadyToDisplay. Return true if we have a layer with frames available or
1243             if we have painted a frame to the context.
1244         (WebCore::MediaPlayerPrivateAVFoundationObjC::createAVAssetForURL): New, create the AVAsset
1245             if necessary.
1246         (WebCore::MediaPlayerPrivateAVFoundationObjC::createAVAssetForCacheResource): Ditto.
1247         (WebCore::MediaPlayerPrivateAVFoundationObjC::createAVPlayer): Restructure logic.
1248         (WebCore::MediaPlayerPrivateAVFoundationObjC::createAVPlayerItem): New, create AVPlayerItem.
1249         (WebCore::MediaPlayerPrivateAVFoundationObjC::beginLoadingMetadata): Correct logging.
1250         (WebCore::MediaPlayerPrivateAVFoundationObjC::playerItemStatus): Return "buffer full" when
1251             the buffer is full.
1252         (WebCore::MediaPlayerPrivateAVFoundationObjC::platformDuration): Get the duration from the
1253             AVAsset when we haven't allocated the AVPlayerItem yet so that we can return duration
1254             when we only have metadata.
1255         (WebCore::MediaPlayerPrivateAVFoundationObjC::assetStatus): Update for name change.
1256         (WebCore::MediaPlayerPrivateAVFoundationObjC::paint): Set m_videoFrameHasDrawn.
1257         (WebCore::MediaPlayerPrivateAVFoundationObjC::tracksChanged): Get attributes from AVAsset
1258             when when we haven't allocated the AVPlayerItem yet so that we can report attributes
1259             when we only have metadata.
1260         (WebCore::MediaPlayerPrivateAVFoundationObjC::sizeChanged): Guard against being called before
1261             we have allocated the AVPlayerItem.
1262
1263 2011-05-02  Philippe Normand  <pnormand@igalia.com>
1264
1265         Reviewed by Martin Robinson.
1266
1267         [GTK] gdk_drawable_get_size() shouldn't be used with GTK+ >= 2.24
1268         https://bugs.webkit.org/show_bug.cgi?id=59932
1269
1270         Use gdk_window_get_width() and gdk_window_get_height() if
1271         available, instead of the deprecated gdk_drawable_get_size().
1272
1273         No new tests, build fix only.
1274
1275         * platform/gtk/WidgetRenderingContext.cpp:
1276         (WebCore::WidgetRenderingContext::WidgetRenderingContext):
1277
1278 2011-05-02  Eric Carlson  <eric.carlson@apple.com>
1279
1280         Reviewed by Brady Eidson.
1281
1282         The preload attribute of the video tag is not completely implemented
1283         https://bugs.webkit.org/show_bug.cgi?id=43673
1284         <rdar://problem/7508322>
1285
1286         Test manually with manual-tests/media-elements/video-preload.html.
1287
1288         * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
1289         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
1290         (WebCore::MediaPlayerPrivateQTKit::commonMovieAttributes): Add new "limit read-ahead"
1291             attribute when preload is not "auto".
1292         (WebCore::MediaPlayerPrivateQTKit::resumeLoad): Remove m_delayingLoad, we don't need it.
1293         (WebCore::MediaPlayerPrivateQTKit::load): Correct comment.
1294         (WebCore::MediaPlayerPrivateQTKit::prepareToPlay): Call setPreload('auto').
1295         (WebCore::MediaPlayerPrivateQTKit::setPreload): Set new attribue if we already have
1296             a QTMovie.
1297
1298 2011-05-02  Eric Carlson  <eric.carlson@apple.com>
1299
1300         Reviewed by Brady Eidson.
1301
1302         The preload attribute of the video tag is not completely implemented
1303         https://bugs.webkit.org/show_bug.cgi?id=43673
1304         <rdar://problem/7508322>
1305
1306         Manual test manual-tests/media-elements/video-preload.html added.
1307
1308         * manual-tests/media-elements/video-preload.html: Added. New manual test for media element 
1309             'preload' attribute because it is not possible to detect if a media engine supports 
1310             "preload=metadata" in a way that lets us have per-platform layout test results.
1311
1312 2011-05-01  Abhishek Arya  <inferno@chromium.org>
1313
1314         Reviewed by Eric Carlson.
1315
1316         Regression(r74787): Media document mouse click and double-click
1317         events should be checked on target node only and not its descendants.
1318         https://bugs.webkit.org/show_bug.cgi?id=59886
1319
1320         * html/MediaDocument.cpp:
1321         (WebCore::MediaDocument::defaultEventHandler):
1322
1323 2011-05-01  Adam Barth  <abarth@webkit.org>
1324
1325         Reviewed by Eric Seidel.
1326
1327         Polish CSP host and port matching
1328         https://bugs.webkit.org/show_bug.cgi?id=59899
1329
1330         Finish last two details of host and port matching.  I don't think the
1331         default port handling is testable with our current testing
1332         infrastructure.
1333
1334         Tests: http/tests/security/contentSecurityPolicy/image-full-host-wildcard-allowed.html
1335                http/tests/security/contentSecurityPolicy/image-host-wildcard-allowed.html
1336
1337         * page/ContentSecurityPolicy.cpp:
1338         (WebCore::CSPSource::hostMatches):
1339         (WebCore::CSPSource::portMatches):
1340
1341 2011-05-01  Adam Barth  <abarth@webkit.org>
1342
1343         Reviewed by Eric Seidel.
1344
1345         CSP default-src is missing
1346         https://bugs.webkit.org/show_bug.cgi?id=58641
1347
1348         Add support for default-src.  The default-src provides a default policy
1349         for every directive that sends in "-src".  If the more-specific
1350         directive is present, it takes precedence.  I also took this
1351         opportunity to refactor the internals of ContentSecurityPolicy a bit to
1352         reduce duplicate code.
1353
1354         Tests: http/tests/security/contentSecurityPolicy/default-src-inline-allowed.html
1355                http/tests/security/contentSecurityPolicy/default-src-inline-blocked.html
1356                http/tests/security/contentSecurityPolicy/script-src-overrides-default-src.html
1357
1358         * page/ContentSecurityPolicy.cpp:
1359         (WebCore::ContentSecurityPolicy::didReceiveHeader):
1360         (WebCore::ContentSecurityPolicy::checkEval):
1361         (WebCore::ContentSecurityPolicy::operativeDirective):
1362         (WebCore::ContentSecurityPolicy::checkInlineAndReportViolation):
1363         (WebCore::ContentSecurityPolicy::checkEvalAndReportViolation):
1364         (WebCore::ContentSecurityPolicy::checkSourceAndReportViolation):
1365         (WebCore::ContentSecurityPolicy::allowJavaScriptURLs):
1366         (WebCore::ContentSecurityPolicy::allowInlineEventHandlers):
1367         (WebCore::ContentSecurityPolicy::allowInlineScript):
1368         (WebCore::ContentSecurityPolicy::allowInlineStyle):
1369         (WebCore::ContentSecurityPolicy::allowEval):
1370         (WebCore::ContentSecurityPolicy::allowScriptFromSource):
1371         (WebCore::ContentSecurityPolicy::allowObjectFromSource):
1372         (WebCore::ContentSecurityPolicy::allowChildFrameFromSource):
1373         (WebCore::ContentSecurityPolicy::allowImageFromSource):
1374         (WebCore::ContentSecurityPolicy::allowStyleFromSource):
1375         (WebCore::ContentSecurityPolicy::allowFontFromSource):
1376         (WebCore::ContentSecurityPolicy::allowMediaFromSource):
1377         (WebCore::ContentSecurityPolicy::addDirective):
1378         * page/ContentSecurityPolicy.h:
1379
1380 2011-05-01  Sam Weinig  <sam@webkit.org>
1381
1382         Reviewed by Anders Carlsson.
1383
1384         Prune some unnecessary #includes
1385         https://bugs.webkit.org/show_bug.cgi?id=59895
1386
1387         Start getting rid of unnecessary #includes and forward declares.
1388
1389         * bindings/js/JSDOMBinding.h:
1390         * bindings/js/JSDOMWindowBase.h:
1391         * bindings/js/JSDOMWindowShell.h:
1392         * bindings/js/ScheduledAction.cpp:
1393         * bindings/js/ScriptController.cpp:
1394         * bindings/js/ScriptController.h:
1395         * bindings/js/ScriptDebugServer.cpp:
1396         * editing/Editor.h:
1397         * inspector/InspectorClient.cpp:
1398         * loader/FrameLoader.h:
1399         * loader/NavigationScheduler.h:
1400         * page/Console.cpp:
1401         * xml/XMLTreeViewer.cpp:
1402         * xml/XMLTreeViewer.h:
1403
1404 2011-05-01  Patrick Gansterer  <paroga@webkit.org>
1405
1406         [WIN] Unreviewed buildfix after r85434.
1407
1408         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
1409         (WebCore::MediaPlayerPrivate::createLayerForMovie):
1410
1411 2011-05-01  Patrick Gansterer  <paroga@webkit.org>
1412
1413         [WIN] Unreviewed buildfix after r85434.
1414
1415         * platform/graphics/win/QTMovieVisualContext.cpp:
1416         (QTMovieVisualContext::QTMovieVisualContext): Added missing header.
1417
1418 2011-05-01  Justin Schuh  <jschuh@chromium.org>
1419
1420         Reviewed by Adam Barth.
1421
1422         History::stateObjectAdded should check origin via SecurityOrigin::canRequest
1423         https://bugs.webkit.org/show_bug.cgi?id=59840
1424
1425         Tests: fast/loader/stateobjects/pushstate-in-data-url-denied.html
1426                http/tests/navigation/replacestate-base-illegal.html
1427                http/tests/navigation/replacestate-base-legal.html
1428
1429         * page/History.cpp:
1430         (WebCore::History::stateObjectAdded):
1431
1432 2011-05-01  Patrick Gansterer  <paroga@webkit.org>
1433
1434         [WIN] Unreviewed buildfix after r85434.
1435
1436         * platform/graphics/win/QTMovieVisualContext.cpp:
1437         (QTMovieVisualContext::QTMovieVisualContext):
1438
1439 2011-05-01  Patrick Gansterer  <paroga@webkit.org>
1440
1441         Reviewed by Adam Barth.
1442
1443         [WINCE] Fix OwnPtr strict issues
1444         https://bugs.webkit.org/show_bug.cgi?id=59898
1445
1446         * page/wince/FrameWinCE.cpp:
1447         (WebCore::imageFromSelection):
1448         * platform/graphics/wince/FontPlatformData.cpp:
1449         (WebCore::FixedSizeFontData::create):
1450         (WebCore::FontPlatformPrivateData::FontPlatformData::hfont):
1451         (WebCore::FontPlatformPrivateData::FontPlatformData::getScaledFontHandle):
1452         (WebCore::FontPlatformPrivateData::FontPlatformData::discardFontHandle):
1453         * platform/graphics/wince/GraphicsContextWinCE.cpp:
1454         (WebCore::GraphicsContext::strokeArc):
1455         (WebCore::GraphicsContext::fillRect):
1456         (WebCore::GraphicsContext::clip):
1457         (WebCore::GraphicsContext::fillRoundedRect):
1458         (WebCore::GraphicsContext::drawRoundCorner):
1459         (WebCore::GraphicsContext::drawText):
1460         * platform/graphics/wince/ImageBufferWinCE.cpp:
1461         (WebCore::ImageBuffer::ImageBuffer):
1462         * platform/graphics/wince/ImageWinCE.cpp:
1463         (WebCore::BitmapImage::getHBITMAPOfSize):
1464         * platform/graphics/wince/SharedBitmap.cpp:
1465         (WebCore::SharedBitmap::SharedBitmap):
1466
1467 2011-05-01  Ryosuke Niwa  <rniwa@webkit.org>
1468
1469         Reviewed by Eric Seidel.
1470
1471         Get rid of versions of sendContextMenuEvent and eventMayStartDrag that takes NSEvent
1472         https://bugs.webkit.org/show_bug.cgi?id=59837
1473
1474         Removed EventHandler::sendContextMenuEvent(NSEvent*) and EventHandler::eventMayStartDrag(NSEvent*)
1475
1476         * WebCore.exp.in:
1477         * page/EventHandler.h:
1478         * page/mac/EventHandlerMac.mm:
1479
1480 2011-05-01  Ryosuke Niwa  <rniwa@webkit.org>
1481
1482         Reviewed by Eric Seidel.
1483
1484         Move currentKeyboardEvent from EventHandlerMac.mm to WebHTMLView.mm
1485         https://bugs.webkit.org/show_bug.cgi?id=59835
1486
1487         Moved currentKeyboardEvent.
1488
1489         * WebCore.exp.in:
1490         * page/EventHandler.h:
1491         * page/mac/EventHandlerMac.mm:
1492
1493 2011-05-01  ojab  <ojab@ojab.ru>
1494
1495         Reviewed by Eric Seidel.
1496
1497         Fix build with --disable-video --enable-fullscreen-api
1498         https://bugs.webkit.org/show_bug.cgi?id=59698
1499
1500         * rendering/RenderTheme.h:
1501         (WebCore::RenderTheme::extraFullScreenStyleSheet):
1502
1503 2011-05-01  Jeff Timanus  <twiz@chromium.org>
1504
1505         Reviewed by Eric Seidel.
1506
1507         Add solid-color checking to BitmapImage::checkForSolidColour in the skia port.
1508         https://bugs.webkit.org/show_bug.cgi?id=59041
1509
1510         Test:css2.1/t140201-c533-bgimage-00-a.html
1511
1512         * platform/graphics/Image.cpp:
1513         (WebCore::Image::drawTiled): Removal of macro exclusion of assert for Skia path.
1514         * platform/graphics/skia/ImageSkia.cpp:
1515         (WebCore::BitmapImage::checkForSolidColor):
1516
1517 2011-05-01  Patrick Gansterer  <paroga@webkit.org>
1518
1519         Reviewed by Adam Barth.
1520
1521         Fix OwnPtr strict issues in windows build
1522         https://bugs.webkit.org/show_bug.cgi?id=59878
1523
1524         * platform/graphics/ca/win/CACFLayerTreeHost.cpp:
1525         (WebCore::getDirtyRects):
1526         * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
1527         (WebCore::MediaPlayerPrivateQuickTimeVisualContext::MediaPlayerPrivateQuickTimeVisualContext):
1528         * platform/graphics/win/WKCAImageQueue.cpp:
1529         (WebCore::WKCAImageQueue::WKCAImageQueue):
1530         * platform/win/CursorWin.cpp:
1531         (WebCore::createSharedCursor):
1532         * platform/win/PasteboardWin.cpp:
1533         (WebCore::Pasteboard::writeImage):
1534
1535 2011-05-01  Patrick Gansterer  <paroga@webkit.org>
1536
1537         Reviewed by Eric Seidel.
1538
1539         Use PassOwnPtr as return value of GraphicsContext::createWindowsBitmap
1540         https://bugs.webkit.org/show_bug.cgi?id=59876
1541
1542         Also pass the size "as reference" instead of "as value".
1543
1544         * platform/graphics/GraphicsContext.h:
1545         * platform/graphics/win/FontCGWin.cpp:
1546         (WebCore::drawGDIGlyphs):
1547         * platform/graphics/win/GraphicsContextWin.cpp:
1548         (WebCore::GraphicsContext::WindowsBitmap::WindowsBitmap):
1549         (WebCore::GraphicsContext::createWindowsBitmap):
1550         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
1551         (WebCore::MediaPlayerPrivate::paint):
1552
1553 2011-05-01  Emil A Eklund  <eae@chromium.org>
1554
1555         Reviewed by Eric Seidel.
1556
1557         getComputedStyle() returns unitless values for some properties that require units
1558         https://bugs.webkit.org/show_bug.cgi?id=55111
1559
1560         Change getComputedStyle to return value with unit for -webkit-column-width, -webkit-column-gap and -webkit-perspective
1561
1562         Test: fast/css/getComputedStyle/getComputedStyle-length-unit.html
1563
1564         * css/CSSComputedStyleDeclaration.cpp:
1565         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1566
1567 2011-05-01  Young Han Lee  <joybro@company100.net>
1568
1569         Reviewed by Eric Seidel.
1570
1571         Change TEXMAP_OPENGL_ES2 to TEXMAP_OPENGL_ES_2
1572         https://bugs.webkit.org/show_bug.cgi?id=59608
1573
1574         TEXMAP_OPENGL_ES2 is a wrong name. TEXMAP_OPENGL_ES_2 is already defined in TextureMapper.h
1575
1576         No new functionality, no new tests.
1577
1578         * platform/graphics/opengl/TextureMapperGL.cpp:
1579         (WebCore::TextureMapperGL::TextureMapperGL):
1580
1581 2011-05-01  Yael Aharon  <yael.aharon@nokia.com>
1582
1583         Reviewed by Eric Seidel.
1584
1585         CSS3 nth-child(n) selector fails
1586         https://bugs.webkit.org/show_bug.cgi?id=56943
1587
1588         Regression from r75158.
1589         "n" is a valid parameter to nth() and should be allowed.
1590
1591         Test: fast/css/nth-child-n.html
1592
1593         * css/CSSParser.cpp:
1594         (WebCore::isValidNthToken):
1595
1596 2011-05-01  Pavel Feldman  <pfeldman@chromium.org>
1597
1598         Not reviewed: address stack frame scriptName -> url rename in timeline panel.
1599
1600         * inspector/front-end/TimelinePanel.js:
1601         (WebInspector.TimelinePanel.FormattedRecord.prototype._getRecordDetails):
1602         (WebInspector.TimelinePanel.PopupContentHelper.prototype._appendStackTrace):
1603
1604 2011-05-01  Chris Fleizach  <cfleizach@apple.com>
1605
1606         Reviewed by Maciej Stachowiak.
1607
1608         Crash in AccessibilityRenderObject while viewing PDFs in iframes
1609         https://bugs.webkit.org/show_bug.cgi?id=59629
1610
1611         Could not reproduce this crash, but it's quite clear how it could happen.
1612  
1613         * accessibility/AccessibilityRenderObject.cpp:
1614         (WebCore::AccessibilityRenderObject::accessibilityHitTest):
1615
1616 2011-05-01  Nikolas Zimmermann  <nzimmermann@rim.com>
1617
1618         Reviewed by Dirk Schulze.
1619
1620         LEAK: SVGElement leaks when detaching it in a pending resource state
1621         https://bugs.webkit.org/show_bug.cgi?id=59072
1622
1623         Make the pending resources set non-refcounted again. We made it refcounted a while ago
1624         to fix a security bug, as we had dangling pointers in the set in SVGDocumentExtensions.
1625         Fix the underlying problem, by removing all pending resources referencing to a particular
1626         SVGElement, upon its destruction or upon removing it from the document.
1627
1628         Example: <rect fill="url(#foo)" id="rect">
1629         When we try to render the rect, the foo paint server can't be found and thus "foo" will be
1630         added to the pending resource set, with "rect" as client. When "foo" appears, it would remove
1631         itself from the pending resource set, and a ref count to the "rect" would be released.
1632         If "foo" never appears, SVGDocumentExtensions still holds a ref to the <rect>, thus keeping
1633         it and the associated document alive.
1634
1635         Tests: svg/custom/pending-resource-leak-2.svg
1636                svg/custom/pending-resource-leak-3.svg
1637                svg/custom/pending-resource-leak.svg
1638
1639         These tests cover several scenarios where we used to leak. Should fix several SVG*Element leaks on the bots.
1640         I manually tested reloading above testcases dozens of times, before the leak count was incremented by 2 nodes on every reload, that's gone now.
1641
1642         * rendering/svg/RenderSVGResourceContainer.cpp:
1643         (WebCore::RenderSVGResourceContainer::registerResource):
1644         * rendering/svg/RenderSVGShadowTreeRootContainer.cpp:
1645         (WebCore::RenderSVGShadowTreeRootContainer::updateFromElement):
1646         * rendering/svg/SVGResources.cpp:
1647         (WebCore::registerPendingResource):
1648         * svg/SVGDocumentExtensions.cpp:
1649         (WebCore::SVGDocumentExtensions::addPendingResource):
1650         (WebCore::SVGDocumentExtensions::hasPendingResources):
1651         (WebCore::SVGDocumentExtensions::removeElementFromPendingResources):
1652         (WebCore::SVGDocumentExtensions::removePendingResource):
1653         * svg/SVGDocumentExtensions.h:
1654         * svg/SVGElement.cpp:
1655         * svg/SVGElement.h:
1656         * svg/SVGElementRareData.h:
1657         (WebCore::SVGElementRareData::SVGElementRareData):
1658         (WebCore::SVGElementRareData::hasPendingResources):
1659         (WebCore::SVGElementRareData::setHasPendingResources):
1660         * svg/SVGStyledElement.cpp:
1661         (WebCore::SVGStyledElement::~SVGStyledElement):
1662         (WebCore::SVGStyledElement::insertedIntoDocument):
1663         (WebCore::SVGStyledElement::removedFromDocument):
1664         (WebCore::SVGStyledElement::hasPendingResources):
1665         (WebCore::SVGStyledElement::setHasPendingResources):
1666         * svg/SVGStyledElement.h:
1667         (WebCore::SVGStyledElement::needsPendingResourceHandling):
1668         (WebCore::SVGStyledElement::buildPendingResource):
1669         * svg/SVGUseElement.cpp:
1670         (WebCore::SVGUseElement::SVGUseElement):
1671         (WebCore::SVGUseElement::insertedIntoDocument):
1672         (WebCore::SVGUseElement::svgAttributeChanged):
1673         (WebCore::SVGUseElement::buildPendingResource):
1674         * svg/SVGUseElement.h:
1675
1676 2011-05-01  Rafael Brandao  <rafael.lobo@openbossa.org>
1677
1678         Reviewed by Csaba Osztrogonác.
1679
1680         [Qt] build-webkit warning Inspector.idl is missing
1681         https://bugs.webkit.org/show_bug.cgi?id=59047
1682         
1683         Added variable_out to pipe output from one compiler to another,
1684         and then forced the output to be added to the sources.
1685
1686         * CodeGenerators.pri:
1687
1688 2011-05-01  Dan Bernstein  <mitz@apple.com>
1689
1690         Reviewed by Anders Carlsson.
1691
1692         <rdar://problem/9155067> REGRESSION (float-based line boxes): Gaps and overlaps in selection highlight
1693         https://bugs.webkit.org/show_bug.cgi?id=56658
1694
1695         Test: fast/text/selection-rect-rounding.html
1696
1697         * platform/graphics/FontFastPath.cpp:
1698         (WebCore::Font::selectionRectForSimpleText): Account for non-integral anchor point coordinates.
1699         * platform/graphics/mac/FontComplexTextMac.cpp:
1700         (WebCore::Font::selectionRectForComplexText): Ditto.
1701         * rendering/InlineTextBox.cpp:
1702         (WebCore::InlineTextBox::selectionRect): Floor the horizontal sides of the clip rect.
1703         (WebCore::InlineTextBox::paintSelection): Pass the logical left location to Font::selectionRectForText(),
1704         since it affects rounding.
1705
1706 2011-04-30  Justin Schuh  <jschuh@chromium.org>
1707
1708         Reviewed by Dirk Schulze.
1709
1710         Make RenderSVGResourceFilter take ownership of filter data when painting
1711         https://bugs.webkit.org/show_bug.cgi?id=51524
1712
1713         Test: svg/custom/filter-on-svgimage.svg
1714
1715         * rendering/svg/RenderSVGResourceFilter.cpp:
1716         (WebCore::RenderSVGResourceFilter::removeClientFromCache):
1717         (WebCore::RenderSVGResourceFilter::postApplyResource):
1718         * rendering/svg/RenderSVGResourceFilter.h:
1719         (WebCore::FilterData::FilterData):
1720
1721 2011-04-30  Martin Robinson  <mrobinson@igalia.com>
1722
1723         Reviewed by Adam Barth.
1724
1725         Enable strict mode for OwnPtr and PassOwnPtr
1726         https://bugs.webkit.org/show_bug.cgi?id=59428
1727
1728         Fix assignments and .set() calls with OwnPtr to use adoptPtr. Have GeolocationService
1729         factory methods return a PassOwnPtr.
1730
1731         No new tests. This should not change functionality.
1732
1733         * platform/GeolocationService.cpp:
1734         (WebCore::createGeolocationServiceNull):
1735         (WebCore::GeolocationService::create):
1736         * platform/GeolocationService.h:
1737         * platform/android/GeolocationServiceAndroid.cpp:
1738         (WebCore::GeolocationServiceAndroid::create):
1739         * platform/android/GeolocationServiceAndroid.h:
1740         * platform/efl/GeolocationServiceEfl.cpp:
1741         (WebCore::GeolocationServiceEfl::create):
1742         * platform/efl/GeolocationServiceEfl.h:
1743         * platform/graphics/cairo/CairoUtilities.cpp:
1744         (WebCore::appendPathToCairoContext):
1745         * platform/graphics/cairo/GraphicsContextCairo.cpp:
1746         (WebCore::drawPathShadow):
1747         (WebCore::GraphicsContext::clip):
1748         * platform/graphics/cairo/ImageBufferCairo.cpp:
1749         (WebCore::ImageBuffer::ImageBuffer):
1750         * platform/graphics/cairo/OwnPtrCairo.h:
1751         * platform/graphics/cairo/PathCairo.cpp:
1752         (WebCore::Path::Path):
1753         (WebCore::Path::operator=):
1754         (WebCore::Path::apply):
1755         * platform/gtk/GeolocationServiceGtk.cpp:
1756         (WebCore::GeolocationServiceGtk::create):
1757         * platform/gtk/GeolocationServiceGtk.h:
1758         * platform/mock/GeolocationServiceMock.cpp:
1759         (WebCore::GeolocationServiceMock::create):
1760         * platform/mock/GeolocationServiceMock.h:
1761
1762 2011-04-30  Pavel Feldman  <pfeldman@chromium.org>
1763
1764         Not reviewed: inspector toolbar titles were 2px off.
1765
1766         * inspector/front-end/inspector.css:
1767         (#toolbar-dropdown .toolbar-label):
1768
1769 2011-04-30  Mihai Parparita  <mihaip@chromium.org>
1770
1771         Reviewed by Eric Seidel.
1772
1773         V8Proxy.h shouldn't include SecurityOrigin.h
1774         https://bugs.webkit.org/show_bug.cgi?id=59859
1775
1776         Remove SecurityOrigin.h #include from V8Proxy.h. Touching
1777         SecurityOrigin.h now rebuilds 234 targets instead of 638 (when building
1778         chromium's DumpRenderTree).
1779
1780         * bindings/v8/NPV8Object.cpp:
1781         * bindings/v8/V8Proxy.cpp:
1782         * bindings/v8/V8Proxy.h:
1783         * css/CSSStyleSelector.cpp:
1784         * dom/XMLDocumentParserLibxml2.cpp:
1785         * html/HTMLLinkElement.cpp:
1786         * loader/SubframeLoader.cpp:
1787         * page/History.cpp:
1788         * storage/IDBFactory.cpp:
1789         * storage/StorageAreaImpl.cpp:
1790
1791 2011-04-29  Adam Barth  <abarth@webkit.org>
1792
1793         Reviewed by Eric Seidel.
1794
1795         CSP script-src should block eval
1796         https://bugs.webkit.org/show_bug.cgi?id=59850
1797
1798         Rather than have JavaScriptCore call back into WebCore to learn whether
1799         eval is enabled, we push that bit of the policy into JavaScriptCore.
1800
1801         Tests: http/tests/security/contentSecurityPolicy/eval-allowed.html
1802                http/tests/security/contentSecurityPolicy/eval-blocked.html
1803
1804         * bindings/js/ScriptController.cpp:
1805         (WebCore::ScriptController::disableEval):
1806         * bindings/js/ScriptController.h:
1807         * page/ContentSecurityPolicy.cpp:
1808         (WebCore::ContentSecurityPolicy::didReceiveHeader):
1809         (WebCore::ContentSecurityPolicy::internalAllowEval):
1810         (WebCore::ContentSecurityPolicy::allowEval):
1811         * page/ContentSecurityPolicy.h:
1812
1813 2011-04-29  Joseph Pecoraro  <joepeck@webkit.org>
1814
1815         GTK build fix. Missed moving DateComponents and
1816         adding LocalizedDate files for their build file.
1817
1818         * GNUmakefile.list.am:
1819
1820 2011-04-29  Adam Barth  <abarth@webkit.org>
1821
1822         Reviewed by Eric Seidel.
1823
1824         style-src should block @style
1825         https://bugs.webkit.org/show_bug.cgi?id=59293
1826
1827         This patch blocks @style when style-src doesn't have the
1828         'unsafe-inline' token.  This patch blocks the parsing of the attribute
1829         itself.  That feels vaguely like too low a level to interpose the
1830         policy, but there didn't seem to be anywhere else natural to enforce
1831         the policy.
1832
1833         Tests: http/tests/security/contentSecurityPolicy/inline-style-attribute-allowed.html
1834                http/tests/security/contentSecurityPolicy/inline-style-attribute-blocked.html
1835                http/tests/security/contentSecurityPolicy/inline-style-on-html.html
1836
1837         * dom/StyledElement.cpp:
1838         (WebCore::StyledElement::parseMappedAttribute):
1839
1840 2011-04-29  Joseph Pecoraro  <joepeck@webkit.org>
1841
1842         Reviewed by Kent Tamura.
1843
1844         Allow Localized Date Strings for Date Input Fields
1845         https://bugs.webkit.org/show_bug.cgi?id=59752
1846
1847         Test: fast/forms/date-input-visible-strings.html
1848
1849         * CMakeLists.txt:
1850         * WebCore.gypi:
1851         * WebCore.pro:
1852         * WebCore.vcproj/WebCore.vcproj:
1853         * WebCore.xcodeproj/project.pbxproj: update build files for
1854         moving DateComponents from WebCore/html to WebCore/platform
1855         and adding the LocalizedDate files.
1856
1857         * html/BaseDateAndTimeInputType.cpp:
1858         (WebCore::BaseDateAndTimeInputType::serialize):
1859         (WebCore::BaseDateAndTimeInputType::serializeWithComponents):
1860         (WebCore::BaseDateAndTimeInputType::serializeWithMilliseconds):
1861         InputType::serialize for a double value with date types is
1862         different for the month type because it assumes the incoming
1863         value is months instead of msecs (matching valueAsNumber in
1864         HTML5).  So provide a more general serialization function,
1865         serializeWithComponents, that will always serialize a string
1866         correctly for the current type but taking in a DateComponents
1867         object. The default serialize, and new serializeWithMilliseconds,
1868         can fall back to this and allows an override point for
1869         the month type.
1870
1871         * html/MonthInputType.cpp:
1872         (WebCore::MonthInputType::serializeWithMilliseconds): the month
1873         type is a case where the default serialize does not take msec,
1874         so provide an implementation for month which handles msec input.
1875
1876         * html/BaseDateAndTimeInputType.cpp:
1877         (WebCore::BaseDateAndTimeInputType::setValueAsDate): switch
1878         to serializeWithMilliseconds as the incoming date value is msec.
1879         * html/MonthInputType.cpp:
1880         (WebCore::MonthInputType::setValueAsDate): removed.
1881
1882         * html/BaseDateAndTimeInputType.cpp:
1883         (WebCore::BaseDateAndTimeInputType::visibleValue): allow
1884         localized formatting of a date value.
1885         (WebCore::BaseDateAndTimeInputType::convertFromVisibleValue):
1886         allow parsing for a formatted date value.
1887
1888         * html/BaseDateAndTimeInputType.h:
1889         * platform/DateComponents.cpp: Renamed from Source/WebCore/html/DateComponents.cpp.
1890         Expose the Type enum so it can be used outside of the DateComponents class.
1891         * platform/text/LocalizedDate.h: Added.
1892         * platform/text/LocalizedDateNone.cpp: Added.
1893         (WebCore::formatLocalizedDate): Default implementation falls back to
1894         existing HTML5 date input value formatting.
1895
1896         * html/BaseDateAndTimeInputType.h:
1897         * html/DateInputType.cpp:
1898         (WebCore::DateInputType::dateType):
1899         * html/DateInputType.h:
1900         * html/DateTimeInputType.cpp:
1901         (WebCore::DateTimeInputType::dateType):
1902         * html/DateTimeInputType.h:
1903         * html/DateTimeLocalInputType.cpp:
1904         (WebCore::DateTimeLocalInputType::dateType):
1905         * html/DateTimeLocalInputType.h:
1906         * html/MonthInputType.cpp:
1907         (WebCore::MonthInputType::dateType):
1908         * html/MonthInputType.h:
1909         * html/TimeInputType.cpp:
1910         (WebCore::TimeInputType::dateType):
1911         * html/TimeInputType.h:
1912         * html/WeekInputType.cpp:
1913         (WebCore::WeekInputType::dateType):
1914         * html/WeekInputType.h: Accessors for the desired date
1915         type of a date input type. This allows the base class
1916         to write a generic algorithm.
1917
1918 2011-04-29  Adam Barth  <abarth@webkit.org>
1919
1920         Reviewed by Eric Seidel.
1921
1922         style-src should block inline style from <style>
1923         https://bugs.webkit.org/show_bug.cgi?id=59292
1924
1925         The spec has been updated to allow blocking of inline styles with
1926         style-src.  This will help folks defend against tricky CSS3 injections.
1927
1928         This patch covers the <style> case.  The next patch will cover the
1929         @style case.
1930
1931         Tests: http/tests/security/contentSecurityPolicy/inline-style-allowed.html
1932                http/tests/security/contentSecurityPolicy/inline-style-blocked.html
1933
1934         * dom/StyleElement.cpp:
1935         (WebCore::StyleElement::createSheet):
1936         * page/ContentSecurityPolicy.cpp:
1937         (WebCore::ContentSecurityPolicy::allowInlineStyle):
1938         * page/ContentSecurityPolicy.h:
1939
1940 2011-04-29  Chris Evans  <cevans@chromium.org>
1941
1942         Reviewed by Adam Barth.
1943
1944         Add WebCore::Setting to block displaying and/or running insecure content on secure pages
1945         https://bugs.webkit.org/show_bug.cgi?id=58378
1946
1947         Test: To follow in subsequent patch, including the wiring to expose the new settings to LayoutTests.
1948
1949         * loader/FrameLoader.cpp:
1950         (WebCore::FrameLoader::checkIfDisplayInsecureContent): Return whether or not the load should be blocked, and tweak the message upon blocking.
1951         (WebCore::FrameLoader::checkIfRunInsecureContent): Return whether or not the load should be blocked, and tweak the message upon blocking.
1952         * loader/FrameLoader.h:
1953         * loader/MainResourceLoader.cpp:
1954         (WebCore::MainResourceLoader::willSendRequest): Check if the frame load is blocked due to mixed content and cancel it if so. The check was moved up so that it occurs before firing the load callbacks, to avoid any outgoing network hits or accounting. Redirects are handled because willSendRequest is called for each one in the chain.
1955         * loader/SubframeLoader.cpp:
1956         (WebCore::SubframeLoader::loadMediaPlayerProxyPlugin): Handle the blocking of mixed-content plug-in loads.
1957         (WebCore::SubframeLoader::loadPlugin): Handle the blocking of mixed-content plug-in loads.
1958         * loader/cache/CachedResourceLoader.cpp:
1959         (WebCore::CachedResourceLoader::canRequest): Handle the blocking of various loads due to mixed content conditions.
1960         * page/Settings.cpp:
1961         (WebCore::Settings::Settings): Permit mixed-content loads by default to avoid a change in behavior by default.
1962         * page/Settings.h: Add two new booleans to control blocking of mixed content (displaying and running thereof).
1963         (WebCore::Settings::setAllowDisplayOfInsecureContent):
1964         (WebCore::Settings::allowDisplayOfInsecureContent):
1965         (WebCore::Settings::setAllowRunningOfInsecureContent):
1966         (WebCore::Settings::allowRunningOfInsecureContent):
1967
1968 2011-04-29  Ryosuke Niwa  <rniwa@webkit.org>
1969
1970         Reviewed by Eric Seidel.
1971
1972         Extract a function to obtain VisiblePosition from RenderText::positionForPoint
1973         https://bugs.webkit.org/show_bug.cgi?id=59811
1974
1975         Extracted lineDirectionPointFitsInBox from positionForPoint.
1976
1977         * rendering/RenderText.cpp:
1978         (WebCore::lineDirectionPointFitsInBox):
1979         (WebCore::RenderText::positionForPoint):
1980
1981 2011-04-29  Geoffrey Garen  <ggaren@apple.com>
1982
1983         Reviewed by Alexey Proskuryakov.
1984
1985         REGRESSION: r83938 abandons GC memory
1986         https://bugs.webkit.org/show_bug.cgi?id=59604
1987
1988         This bug was caused by script and image elements waiting indefinitely
1989         for their loads to finish.
1990
1991         * bindings/js/JSNodeCustom.cpp:
1992         (WebCore::isReachableFromDOM): Don't test for the load event firing,
1993         since the load event doesn't fire in cases of canceled or errored loads.
1994         Instead, test hasPendingActivity().
1995         
1996         Don't do this test at all for script elements because script elements
1997         can't load while outside the document. (fast/dom/script-element-gc.html
1998         verifies that this is correct.)
1999
2000         * html/HTMLImageElement.cpp:
2001         (WebCore::HTMLImageElement::hasPendingActivity):
2002         * html/HTMLImageElement.h:
2003         * loader/ImageLoader.cpp:
2004         (WebCore::ImageEventSender::hasPendingEvents):
2005         (WebCore::ImageLoader::hasPendingLoadEvent):
2006         * loader/ImageLoader.h: Added API for finding out if an image element
2007         has pending activity.
2008
2009         * loader/cache/CachedResource.cpp:
2010         (WebCore::CachedResource::setRequest): All loads are supposed to end in
2011         data(allDataReceived = true) or error(), but in the edge case of a
2012         canceled load, all we get is a call to setRequest(0). Be sure to
2013         record that we're no longer loading in that case, otherwise our element
2014         will leak forever, waiting for its load to complete.
2015
2016 2011-04-29  Emil Eklund  <eae@chromium.org>
2017
2018         Reviewed by Tony Chang.
2019
2020         Setting outerHTML should merge text nodes
2021         https://bugs.webkit.org/show_bug.cgi?id=52686
2022
2023         When setting outerHTML adjacent text nodes should be merged. This matches
2024         the behavior of outerText and the IE implementation of outerHTML.       
2025
2026         Test: fast/dom/set-outer-html.html
2027
2028         * html/HTMLElement.cpp:
2029         (WebCore::mergeWithNextTextNode): Move function to before setOuterHTML.
2030         (WebCore::HTMLElement::setOuterHTML): Merge adjacent text nodes after replacing the element.
2031
2032 2011-04-29  Emil A Eklund  <eae@chromium.org>
2033
2034         Reviewed by Dimitri Glazkov.
2035
2036         Onchange on text fields has an incoherent behavior
2037         https://bugs.webkit.org/show_bug.cgi?id=57330
2038
2039         * html/HTMLFormControlElement.cpp:
2040         (WebCore::HTMLTextFormControlElement::insertedIntoDocument):
2041         Initialize m_textAsOfLastFormControlChangeEvent to empty string rather
2042         than null for empty fields.
2043
2044 2011-04-29  Csaba Osztrogonác  <ossy@webkit.org>
2045
2046         [Qt] Unreviewed buildfix after r85343.
2047
2048         Enable strict OwnPtr for Qt
2049         https://bugs.webkit.org/show_bug.cgi?id=59667
2050
2051         * plugins/mac/PluginViewMac.mm:
2052         (WebCore::PluginView::platformStart):
2053
2054 2011-04-29  Jon Lee  <jonlee@apple.com>
2055
2056         Reviewed by mitzpettel.
2057
2058         REGRESSION (WebKit2): (Mac) Selection is gone after switching tabs (59721)
2059         <rdar://problem/9327332>
2060         https://bugs.webkit.org/show_bug.cgi?id=59721
2061
2062         Removing shouldClearSelectionWhenLosingWebPageFocus().  Reverting changelist 83814.
2063
2064         * WebCore.exp.in:
2065         * editing/EditingBehavior.h:
2066
2067 2011-04-29  Abhishek Arya  <inferno@chromium.org>
2068
2069         Reviewed by Dave Hyatt.
2070
2071         Allow only first table caption and destroy the remaining ones.
2072         https://bugs.webkit.org/show_bug.cgi?id=58249
2073
2074         Previously, we were only laying out the first table caption.
2075         However Table::layout didn't mark the other ones as not needing
2076         layout. So after table layout completes, table is marked as not
2077         needing layout with its other table caption still needing layout.
2078         This causes incorrect layout root calculations and set it to a
2079         node which is already getting deleted.
2080
2081         Tests: fast/table/dynamic-caption-add-before-child.xhtml
2082                fast/table/dynamic-caption-add-remove-before-child.xhtml
2083                fast/table/multiple-captions-crash.xhtml
2084                fast/table/multiple-captions-crash2.xhtml
2085                fast/table/multiple-captions-display.xhtml
2086
2087         * rendering/RenderTable.cpp:
2088         (WebCore::RenderTable::addChild): when new caption or a before
2089         child caption is added, we need to explicitly trigger section
2090         recalc or otherwise layout won't catch it.
2091         (WebCore::RenderTable::removeChild): when child to be removed is
2092         m_caption, make sure to trigger style recalc on the table.
2093         (WebCore::RenderTable::recalcCaption): code to destroy captions
2094         other than the first one.
2095         (WebCore::RenderTable::recalcSections): call recalcCaption
2096         helper. Store the next sibling early since child can get destroyed
2097         in recalcCaption.
2098         * rendering/RenderTable.h:
2099
2100 2011-04-29  David Kilzer  <ddkilzer@apple.com>
2101
2102         Remove WML
2103         https://bugs.webkit.org/show_bug.cgi?id=59678
2104
2105         * DerivedSources.make: Removed $(WebCore)/wml path in VPATH.
2106
2107 2011-04-29  James Robinson  <jamesr@chromium.org>
2108
2109         Unreviewed, rolling out r85330.
2110         http://trac.webkit.org/changeset/85330
2111         https://bugs.webkit.org/show_bug.cgi?id=41311
2112
2113         Caused unexpected border rendering change on 500 tests on chromium linux.
2114
2115         * platform/graphics/skia/GraphicsContextSkia.cpp:
2116         (WebCore::GraphicsContext::drawConvexPolygon):
2117         (WebCore::GraphicsContext::clipConvexPolygon):
2118
2119 2011-04-29  Csaba Osztrogonác  <ossy@webkit.org>
2120
2121         [Qt] Unreviewed buildfix after r85343.
2122
2123         Enable strict OwnPtr for Qt
2124         https://bugs.webkit.org/show_bug.cgi?id=59667
2125
2126         * plugins/win/PluginViewWin.cpp:
2127         (WebCore::PluginView::wndProc):
2128         (WebCore::PluginView::snapshot):
2129
2130 2011-04-29  Csaba Osztrogonác  <ossy@webkit.org>
2131
2132         Reviewed by Adam Barth.
2133
2134         Enable strict OwnPtr for Qt
2135         https://bugs.webkit.org/show_bug.cgi?id=59667
2136
2137         * platform/graphics/qt/ImageBufferQt.cpp:
2138         (WebCore::ImageBufferData::ImageBufferData):
2139         (WebCore::ImageBuffer::ImageBuffer):
2140         * platform/graphics/qt/ImageDecoderQt.cpp:
2141         (WebCore::ImageDecoderQt::setData):
2142         * platform/graphics/qt/ImageDecoderQt.h:
2143         * platform/network/qt/QNetworkReplyHandler.cpp:
2144         (WebCore::QNetworkReplyWrapper::QNetworkReplyWrapper):
2145         (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
2146
2147 2011-04-29  Dean Jackson  <dino@apple.com>
2148
2149         Reviewed by Simon Fraser.
2150
2151         Add ENABLE macro for WebKitAnimation
2152         https://bugs.webkit.org/show_bug.cgi?id=59729
2153
2154         Add new feature to toggle WebKit Animation API.
2155
2156         * Configurations/FeatureDefines.xcconfig:
2157         * GNUmakefile.am:
2158         * dom/Element.idl:
2159         * features.pri:
2160         * page/DOMWindow.idl:
2161
2162 2011-04-29  Dean Jackson  <dino@apple.com>
2163
2164         Reviewed by Simon Fraser.
2165
2166         https://bugs.webkit.org/show_bug.cgi?id=59149
2167         (Regression) Existing animations are not replaced when filling.
2168
2169         Hardware animations that fill forwards were not being correctly
2170         replaced when the animation was removed. The actual animation
2171         logic was working correctly, but it wasn't deleting the
2172         CoreAnimation animation from the PlatformLayer. The fix was
2173         to explicitly call endAnimation when disconnecting the animation
2174         from its RenderObject.
2175
2176         Test: animations/3d/replace-filling-transform.html
2177
2178         * page/animation/AnimationBase.h:
2179         (WebCore::AnimationBase::clear): call endAnimation as the animation is cleared
2180
2181 2011-04-29  Abhishek Arya  <inferno@chromium.org>
2182
2183         Reviewed by Nikolas Zimmermann.
2184
2185         When svg inline text is getting destroyed, make sure to mark
2186         its svg text ancestor as needing a positioning values update.
2187         This helps to recalculate layout attributes and makes sure
2188         that svg inline text is not used again.
2189         https://bugs.webkit.org/show_bug.cgi?id=59161
2190
2191         Test: svg/text/inline-text-destroy-attributes-crash.xhtml
2192
2193         * rendering/svg/RenderSVGInlineText.cpp:
2194         (WebCore::RenderSVGInlineText::destroy):
2195         * rendering/svg/RenderSVGInlineText.h:
2196
2197 2011-04-29  Kevin Ollivier  <kevino@theolliviers.com>
2198
2199         [wx] Unreviewed build fix. Fix wxMSW trunk builds by adding include.
2200
2201         * platform/graphics/wx/GraphicsContextWx.cpp:
2202
2203 2011-04-29  Mike Reed  <reed@google.com>
2204
2205         Reviewed by Ojan Vafai.
2206
2207         Skia: Need to implement GraphicsContext::clipConvexPolygon()
2208         https://bugs.webkit.org/show_bug.cgi?id=41311
2209
2210         This does not (yet) enable HAVE_PATH_BASED_BORDER_RADIUS_DRAWING
2211         as that shows other issues/question unrelated to clipping.
2212         https://bugs.webkit.org/show_bug.cgi?id=41311
2213
2214         No new tests. covered by existing layout tests
2215
2216         * platform/graphics/skia/GraphicsContextSkia.cpp:
2217         (WebCore::setPathFromConvexPoints):
2218         (WebCore::GraphicsContext::drawConvexPolygon):
2219         (WebCore::GraphicsContext::clipConvexPolygon):
2220
2221 2011-04-29  Mike Lawther  <mikelawther@chromium.org>
2222
2223         Reviewed by Ojan Vafai.
2224
2225         Fix IR->SR typo in enum value (and resulting style fails)
2226         https://bugs.webkit.org/show_bug.cgi?id=59779
2227
2228         No functionality change, so no new tests
2229
2230         * css/CSSPrimitiveValueMappings.h:
2231         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
2232         (WebCore::CSSPrimitiveValue::operator EShapeRendering):
2233
2234 2011-04-29  Pavel Feldman  <pfeldman@google.com>
2235
2236         Reviewed by Yury Semikhatsky.
2237
2238         Web Inspector: CSS editing breaks when entering "color: rgb(1"
2239         https://bugs.webkit.org/show_bug.cgi?id=59789
2240
2241         Tests: inspector/styles/styles-add-invalid-property.html
2242                inspector/styles/styles-cancel-editing.html
2243                inspector/styles/styles-commit-editing.html
2244
2245         * inspector/front-end/CSSStyleModel.js:
2246         (WebInspector.CSSProperty.prototype.setText.callback):
2247         (WebInspector.CSSProperty.prototype.setText):
2248         * inspector/front-end/StylesSidebarPane.js:
2249         (WebInspector.StylePropertyTreeElement.prototype.selectElement):
2250         (WebInspector.StylePropertyTreeElement.prototype):
2251         (WebInspector.StylePropertyTreeElement.prototype.styleText.updateInterface.majorChange.isRevert.originalPropertyText):
2252         * inspector/front-end/inspector.js:
2253         (WebInspector.startEditing.defaultFinishHandler):
2254         (WebInspector.startEditing.keyDownEventListener):
2255         (WebInspector.startEditing):
2256
2257 2011-04-29  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
2258
2259         Reviewed by Simon Hausmann.
2260
2261         ENABLE(QT_BEARER) -> USE(QT_BEARER)
2262
2263         * WebCore.pri:
2264         * WebCore.pro:
2265         * features.pri:
2266         * platform/network/NetworkStateNotifier.h:
2267         * platform/network/qt/NetworkStateNotifierQt.cpp:
2268
2269 2011-04-29  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
2270
2271         Reviewed by Simon Hausmann.
2272
2273         ENABLE(QT_USERAGENT_DEVICEMODEL) -> USE(QT_MOBILITY_SYSTEMINFO)
2274
2275         * WebCore.pri:
2276         * features.pri:
2277
2278 2011-04-29  Pavel Podivilov  <podivilov@chromium.org>
2279
2280         Reviewed by Pavel Feldman.
2281
2282         Web Inspector: breakpoints set in original and formatted scripts are messed up after navigation.
2283         https://bugs.webkit.org/show_bug.cgi?id=59476
2284
2285         * inspector/front-end/DebuggerPresentationModel.js:
2286         (WebInspector.DebuggerPresentationModel.prototype.setFormatSourceFiles):
2287         (WebInspector.DebuggerPresentationModel.prototype._removeBreakpointFromDebugger):
2288         (WebInspector.PresentationBreakpoint.prototype.serialize):
2289         * inspector/front-end/ScriptsPanel.js:
2290         (WebInspector.ScriptsPanel.prototype._addOptionToFilesSelect.optionCompare):
2291         (WebInspector.ScriptsPanel.prototype._addOptionToFilesSelect):
2292         (WebInspector.ScriptsPanel.prototype.reset):
2293
2294 2011-04-28  Pavel Podivilov  <podivilov@chromium.org>
2295
2296         Reviewed by Yury Semikhatsky.
2297
2298         Web Inspector: include script end line:column in scriptParsed parameters.
2299         https://bugs.webkit.org/show_bug.cgi?id=59717
2300
2301         * bindings/js/ScriptDebugServer.cpp:
2302         (WebCore::ScriptDebugServer::dispatchDidParseSource):
2303         * bindings/v8/DebuggerScript.js:
2304         ():
2305         * bindings/v8/ScriptDebugServer.cpp:
2306         (WebCore::ScriptDebugServer::dispatchDidParseSource):
2307         * inspector/Inspector.json:
2308         * inspector/InspectorDebuggerAgent.cpp:
2309         (WebCore::InspectorDebuggerAgent::resolveBreakpoint):
2310         (WebCore::InspectorDebuggerAgent::didParseSource):
2311         * inspector/InspectorDebuggerAgent.h:
2312         (WebCore::InspectorDebuggerAgent::Script::Script):
2313         * inspector/ScriptDebugListener.h:
2314         * inspector/front-end/DebuggerModel.js:
2315         (WebInspector.DebuggerModel.prototype._parsedScriptSource):
2316         (WebInspector.DebuggerModel.prototype._failedToParseScriptSource):
2317         (WebInspector.DebuggerDispatcher.prototype.scriptParsed):
2318         * inspector/front-end/Script.js:
2319         (WebInspector.Script):
2320
2321 2011-04-28  Yury Semikhatsky  <yurys@chromium.org>
2322
2323         Reviewed by Pavel Feldman.
2324
2325         Web Inspector: [protocol] Evaluate should expose thrown exception value
2326         https://bugs.webkit.org/show_bug.cgi?id=59000
2327
2328         Each evaluation command may have either thrown or returned result. This is indicated
2329         by wasThrown property in the protocol.
2330
2331         * inspector/InjectedScript.cpp:
2332         (WebCore::InjectedScript::evaluate):
2333         (WebCore::InjectedScript::evaluateOn):
2334         (WebCore::InjectedScript::evaluateOnCallFrame):
2335         (WebCore::InjectedScript::getProperties):
2336         (WebCore::InjectedScript::makeEvalCall):
2337         * inspector/InjectedScript.h:
2338         * inspector/InjectedScriptSource.js:
2339         * inspector/Inspector.json: Removed "error" remote object type, added "wasThrown" property to
2340         the evaluation results.
2341         * inspector/InspectorDebuggerAgent.cpp:
2342         (WebCore::InspectorDebuggerAgent::evaluateOnCallFrame):
2343         * inspector/InspectorDebuggerAgent.h:
2344         * inspector/InspectorRuntimeAgent.cpp:
2345         (WebCore::InspectorRuntimeAgent::evaluate):
2346         (WebCore::InspectorRuntimeAgent::evaluateOn):
2347         (WebCore::InspectorRuntimeAgent::getProperties):
2348         * inspector/InspectorRuntimeAgent.h:
2349         * inspector/front-end/ConsoleView.js:
2350         (WebInspector.ConsoleView.prototype.completions.evaluated):
2351         (WebInspector.ConsoleView.prototype.evalInInspectedWindow):
2352         (WebInspector.ConsoleView.prototype._enterKeyPressed.printResult):
2353         (WebInspector.ConsoleView.prototype._enterKeyPressed):
2354         (WebInspector.ConsoleCommandResult):
2355         * inspector/front-end/DebuggerPresentationModel.js:
2356         (WebInspector.PresenationCallFrame.prototype.evaluate):
2357         * inspector/front-end/ElementsTreeOutline.js:
2358         (WebInspector.ElementsTreeElement.prototype._createTooltipForNode.setTooltip):
2359         * inspector/front-end/ExtensionPanel.js:
2360         (WebInspector.ExtensionSidebarPane.prototype._onEvaluate):
2361         * inspector/front-end/ExtensionServer.js:
2362         (WebInspector.ExtensionServer.prototype._onEvaluateOnInspectedPage):
2363         * inspector/front-end/ObjectPropertiesSection.js:
2364         (WebInspector.ObjectPropertyTreeElement.prototype.update):
2365         * inspector/front-end/PropertiesSidebarPane.js:
2366         (WebInspector.PropertiesSidebarPane.prototype.update.nodePrototypesReady):
2367         * inspector/front-end/SourceFrame.js:
2368         (WebInspector.SourceFrame.prototype._showPopup.showObjectPopup):
2369         (WebInspector.SourceFrame.prototype._showPopup):
2370
2371 2011-04-29  Sheriff Bot  <webkit.review.bot@gmail.com>
2372
2373         Unreviewed, rolling out r85315.
2374         http://trac.webkit.org/changeset/85315
2375         https://bugs.webkit.org/show_bug.cgi?id=59792
2376
2377         Broke script-formatter.html test (Requested by podivilov on
2378         #webkit).
2379
2380         * inspector/front-end/DebuggerPresentationModel.js:
2381         (WebInspector.DebuggerPresentationModel.prototype.setFormatSourceFiles):
2382         (WebInspector.DebuggerPresentationModel.prototype._removeBreakpointFromDebugger.didRemoveBreakpoint):
2383         (WebInspector.DebuggerPresentationModel.prototype._removeBreakpointFromDebugger):
2384         (WebInspector.PresentationBreakpoint.prototype.serialize):
2385         * inspector/front-end/ScriptsPanel.js:
2386         (WebInspector.ScriptsPanel.prototype._addOptionToFilesSelect.optionCompare):
2387         (WebInspector.ScriptsPanel.prototype._addOptionToFilesSelect):
2388         (WebInspector.ScriptsPanel.prototype.reset):
2389
2390 2011-04-29  Vsevolod Vlasov  <vsevik@chromium.org>
2391
2392         Reviewed by Pavel Feldman.
2393
2394         Web Inspector: Hyperlink Auditing (ping) requests are not shown in network panel
2395         https://bugs.webkit.org/show_bug.cgi?id=58794
2396
2397         Added ping requests to network panel.
2398
2399         Test: http/tests/inspector/network/ping.html
2400
2401         * English.lproj/localizedStrings.js:
2402         * inspector/InspectorInstrumentation.cpp:
2403         (WebCore::InspectorInstrumentation::continueAfterPingLoaderImpl):
2404         * inspector/InspectorInstrumentation.h:
2405         (WebCore::InspectorInstrumentation::continueAfterPingLoader):
2406         * inspector/front-end/NetworkPanel.js:
2407         (WebInspector.NetworkDataGridNode.prototype.refreshResource):
2408         (WebInspector.NetworkDataGridNode.prototype._refreshStatusCell):
2409         (WebInspector.NetworkDataGridNode.prototype._refreshTypeCell):
2410         * inspector/front-end/Resource.js:
2411         (WebInspector.Resource.prototype.get formParameters):
2412         (WebInspector.Resource.prototype.requestContentType):
2413         (WebInspector.Resource.prototype.isPingRequest):
2414         * loader/PingLoader.cpp:
2415         (WebCore::PingLoader::PingLoader):
2416         * loader/PingLoader.h:
2417
2418 2011-04-28  Pavel Podivilov  <podivilov@chromium.org>
2419
2420         Reviewed by Pavel Feldman.
2421
2422         Web Inspector: breakpoints set in original and formatted scripts are messed up after navigation.
2423         https://bugs.webkit.org/show_bug.cgi?id=59476
2424
2425         * inspector/front-end/DebuggerPresentationModel.js:
2426         (WebInspector.DebuggerPresentationModel.prototype.toggleFormatSourceFiles):
2427         (WebInspector.DebuggerPresentationModel.prototype._removeBreakpointFromDebugger):
2428         (WebInspector.PresentationBreakpoint.prototype.serialize):
2429         * inspector/front-end/ScriptsPanel.js:
2430         (WebInspector.ScriptsPanel.prototype._addOptionToFilesSelect.optionCompare):
2431         (WebInspector.ScriptsPanel.prototype._addOptionToFilesSelect):
2432         (WebInspector.ScriptsPanel.prototype.reset):
2433
2434 2011-04-29  Pavel Feldman  <pfeldman@google.com>
2435
2436         Reviewed by Yury Semikhatsky.
2437
2438         Web Inspector: add "open link in new tab" action into the network and resources panels.
2439         https://bugs.webkit.org/show_bug.cgi?id=59788
2440
2441         This change also distinguishes context menu items case between platforms.
2442
2443         * English.lproj/localizedStrings.js:
2444         * inspector/front-end/ConsoleView.js:
2445         (WebInspector.ConsoleView.prototype._handleContextMenuEvent):
2446         * inspector/front-end/DOMBreakpointsSidebarPane.js:
2447         (WebInspector.DOMBreakpointsSidebarPane):
2448         * inspector/front-end/ElementsPanel.js:
2449         (WebInspector.ElementsPanel.prototype._contextMenuEventFired):
2450         (WebInspector.ElementsPanel.prototype.populateHrefContextMenu):
2451         * inspector/front-end/ElementsTreeOutline.js:
2452         (WebInspector.ElementsTreeElement.prototype._populateTagContextMenu):
2453         (WebInspector.ElementsTreeElement.prototype._populateTextContextMenu):
2454         * inspector/front-end/NetworkPanel.js:
2455         (WebInspector.NetworkPanel.prototype._contextMenu):
2456         * inspector/front-end/ResourcesPanel.js:
2457         (WebInspector.FrameResourceTreeElement.prototype._handleContextMenuEvent):
2458         (WebInspector.FrameResourceTreeElement.prototype._appendSaveAsAction):
2459         (WebInspector.ResourceRevisionTreeElement.prototype._handleContextMenuEvent):
2460         * inspector/front-end/Settings.js:
2461         * inspector/front-end/SourceFrame.js:
2462         (WebInspector.SourceFrame.prototype.populateLineGutterContextMenu):
2463         * inspector/front-end/TextViewer.js:
2464         (WebInspector.TextViewer.prototype._contextMenu):
2465         * inspector/front-end/inspector.js:
2466         (WebInspector.openLinkExternallyLabel):
2467         (WebInspector.openResource):
2468         (WebInspector.useLowerCaseMenuTitles):
2469
2470 2011-04-28  Simon Fraser  <simon.fraser@apple.com>
2471
2472         Reviewed by Dan Bernstein.
2473
2474         Mask placement on composited layer is incorrect sometimes
2475         https://bugs.webkit.org/show_bug.cgi?id=59775
2476         
2477         The mask layer always has the same size as its owning GraphicsLayer,
2478         so it needs to share the same offsetFromRenderer as well. This fixes
2479         the offset at which the mask layer contents are painted in cases where
2480         that offset is non-zero, for example when outline style bloats all of
2481         the layer sizes.
2482
2483         Test: compositing/masks/layer-mask-placement.html
2484
2485         * rendering/RenderLayerBacking.cpp:
2486         (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
2487
2488 2011-04-28  Dan Bernstein  <mitz@apple.com>
2489
2490         Rubber-stamped by Mark Rowe.
2491
2492         Reverted r81319.
2493
2494         Fixes <rdar://problem/9331580> REGRESSION (r81319): Safari fails to display dropdown navigation on classics.berkeley.edu
2495
2496         * page/NavigatorBase.cpp:
2497
2498 2011-04-28  Simon Fraser  <simon.fraser@apple.com>
2499
2500         Reviewed by Dirk Schulze.
2501
2502         1px box-shadow looks ugly
2503         https://bugs.webkit.org/show_bug.cgi?id=58100
2504         and
2505         ShadowBlur incorrectly handles zero-sized blur radius in one axis
2506         https://bugs.webkit.org/show_bug.cgi?id=59710
2507         
2508         blurLayerImage() has issues at the edges if the blur radius
2509         is one, so in that case bump the buffer size out by a pixel.
2510         This results in a correct, symmetrical blur.
2511         
2512         Also fix an issue noticed during testing where a zero
2513         height or width radius would still blur on that axis,
2514         because we clamp the kernel size to a minimum of two.
2515
2516         Test: fast/box-shadow/single-pixel-shadow.html
2517
2518         * platform/graphics/ShadowBlur.h:
2519         * platform/graphics/ShadowBlur.cpp:
2520         (WebCore::ShadowBlur::blurLayerImage):
2521         Skip horizontal or vertial passes if the radius on that axis is zero.
2522         Move the "if (pass && m_blurRadius.width() != m_blurRadius.height())"
2523         clause to the end of the loop, since it only needs to execute once
2524         after the first pass.        
2525         (WebCore::ShadowBlur::blurredEdgeSize):
2526         New method to compute the width of the blurred edge (radius + extra
2527         pixel when necessary).
2528         (WebCore::ShadowBlur::calculateLayerBoundingRect):
2529         (WebCore::ShadowBlur::templateSize):
2530         (WebCore::ShadowBlur::drawRectShadow):
2531         (WebCore::ShadowBlur::drawInsetShadow):
2532         (WebCore::ShadowBlur::drawInsetShadowWithTiling):
2533         (WebCore::ShadowBlur::drawRectShadowWithTiling):
2534         (WebCore::ShadowBlur::drawLayerPieces):
2535         Use the result of blurredEdgeSize() rather than recomputing.
2536
2537 2011-04-28  Yael Aharon  <yael.aharon@nokia.com>
2538
2539         Reviewed by Beth Dakin.
2540
2541         CSS sibling selector (~) does not work with :target pseudo class
2542         https://bugs.webkit.org/show_bug.cgi?id=26539
2543
2544         Allow style recalculation of forward siblings of elements with
2545         forward positional rules.
2546
2547         Tests: fast/css/pseudo-target-indirect-sibling-001.html
2548                fast/css/pseudo-target-indirect-sibling-002.html
2549
2550         * dom/Element.cpp:
2551         (WebCore::Element::recalcStyle):
2552
2553 2011-04-28  Nat Duca  <nduca@chromium.org>
2554
2555         Reviewed by Kenneth Russell.
2556
2557         [chromium] Add swapBuffersCompleteCallback to Extensions3DChromium
2558         https://bugs.webkit.org/show_bug.cgi?id=59626
2559
2560         * platform/graphics/chromium/Extensions3DChromium.h:
2561         (WebCore::Extensions3DChromium::SwapBuffersCompleteCallbackCHROMIUM::~SwapBuffersCompleteCallbackCHROMIUM):
2562
2563 2011-04-28  Steve Lacey  <sjl@chromium.org>
2564
2565         Reviewed by Eric Carlson.
2566
2567         Change chromium media controls to use absolute positioning until bug 59644 is fixed.
2568         https://bugs.webkit.org/show_bug.cgi?id=59732
2569
2570         * css/mediaControlsChromium.css:
2571         (audio::-webkit-media-controls-current-time-display, video::-webkit-media-controls-current-time-display):
2572         (audio::-webkit-media-controls-timeline, video::-webkit-media-controls-timeline):
2573
2574 2011-04-28  Luke Macpherson   <macpherson@chromium.org>
2575
2576         Reviewed by Eric Seidel.
2577
2578         Implement CSS border width and related properties in CSSStyleApplyProperty.
2579         https://bugs.webkit.org/show_bug.cgi?id=59414
2580
2581         No new tests as no functionality added.
2582
2583         * css/CSSStyleApplyProperty.cpp:
2584         Separated ApplyPropertyDefault into parent and child so that other classes could inherit
2585         the applyInheritValue and applyInitialValue methods only.
2586         This was necessary to avoid casting from CSSPrimitiveValue to inappropriate types in ApplyPropertyDefault::applyValue().
2587         
2588         Added ApplyPropertyWidth class for handling width based CSS properties.
2589         * css/CSSStyleSelector.cpp:
2590         Removed no-longer-required code for handling width based CSS properties.
2591         * css/CSSStyleSelector.h:
2592         Added a getter for m_rootElementStyle.
2593
2594 2011-04-28  Kent Tamura  <tkent@chromium.org>
2595
2596         Run sort-Xcode-project-file.
2597
2598         * WebCore.xcodeproj/project.pbxproj:
2599
2600 2011-04-28  Martin Robinson  <mrobinson@igalia.com>
2601
2602         Reviewed by Dirk Schulze.
2603
2604         [Cairo] Text underline is not shadowed when text-shadow is enabled
2605         https://bugs.webkit.org/show_bug.cgi?id=48074
2606
2607         Use ContextShadow to enable shadows for text underlines. Also remove quite a bit
2608         of duplicate code in GraphicsContext used for stroking lines. This code looks like it was
2609         originally copied from the CG GraphicsContext.
2610
2611         * platform/graphics/GraphicsContext.h: Make adjustLineToPixelBoundaries so that we
2612           can call it from a static helper function.
2613         * platform/graphics/cairo/GraphicsContextCairo.cpp:
2614         (WebCore::calculateStrokePatternOffset): Abstracted this code into a helper.
2615         (WebCore::drawLineOnCairoContext): Abstracted this code into a helper. We need to
2616         call it multiple times when shadowing text underlines.
2617         (WebCore::GraphicsContext::drawLine): Use drawLineOnCairoContext.
2618         (WebCore::GraphicsContext::strokeArc): Use calculateStrokePatternOffset.
2619         (WebCore::GraphicsContext::drawLineForText): Use drawLineOnCairoContext.
2620
2621 2011-04-28  Sam Weinig  <sam@webkit.org>
2622
2623         Rubber-stamped by Mark Rowe.
2624
2625         Cleanup WebCore.xcodeproj a bit.
2626
2627         * WebCore.xcodeproj/project.pbxproj:
2628         Added CompilerVersion.xcconfig and moved some JS bindings files into the
2629         correct sub groups.
2630
2631 2011-04-28  David Levin  <levin@chromium.org>
2632
2633         Reviewed by Adam Barth.
2634
2635         Remove IMAGE_RESIZER related code.
2636         https://bugs.webkit.org/show_bug.cgi?id=59735
2637
2638         * CMakeLists.txt:
2639         * Configurations/FeatureDefines.xcconfig:
2640         * GNUmakefile.am:
2641         * GNUmakefile.list.am:
2642         * WebCore.gypi:
2643         * WebCore.pro:
2644         * WebCore.vcproj/WebCore.vcproj:
2645         * WebCore.xcodeproj/project.pbxproj:
2646         * features.pri:
2647         * html/AsyncImageResizer.cpp: Removed.
2648         * html/AsyncImageResizer.h: Removed.
2649         * html/ImageResizerThread.cpp: Removed.
2650         * html/ImageResizerThread.h: Removed.
2651
2652 2011-04-28  Ilya Tikhonovsky  <loislo@chromium.org>
2653
2654         Unreviewed trivial one-line fix inspired by wrong patch for https://bugs.webkit.org/show_bug.cgi?id=59630.
2655
2656         * inspector/front-end/Settings.js:
2657         (WebInspector.Settings):
2658
2659 2011-04-28  Beth Dakin  <bdakin@apple.com>
2660
2661         Rubber-stamped by Sam Weinig.
2662
2663         Rolling out revision 85258! I want to fix that bug a different way.
2664         * platform/mac/ScrollbarThemeMac.mm:
2665         (WebCore::ScrollbarThemeMac::paint):
2666
2667 2011-04-28  Chang Shu  <cshu@webkit.org>
2668
2669         Reviewed by Eric Seidel.
2670
2671         isContentEditable is not working properly with document.designMode
2672         https://bugs.webkit.org/show_bug.cgi?id=53031
2673
2674         The specification (http://dev.w3.org/html5/spec/Overview.html#attr-contenteditable)
2675         indicates that the element.isContentEditable relies on document.designMode if its
2676         and its ancestors' contenteditable attributes are set to inherit.
2677
2678         1. Sync document render style after document.designMode is changed.
2679         2. Removed the code that does unnecessary and incorrect handling for contenteditable
2680         attribute with "inherit" value.
2681         3. Ryosuke Niwa also helped to fix the code in ApplyStyleCommand that causes an assertion.
2682
2683         Tests: fast/dom/HTMLElement/iscontenteditable-designmodeon-allinherit-subframe.html
2684                fast/dom/HTMLElement/iscontenteditable-designmodeon-allinherit.html
2685                fast/dom/HTMLElement/iscontenteditable-designmodeon-ancestor.html
2686                fast/dom/HTMLElement/iscontenteditable-designmodeon.html
2687
2688         * css/CSSStyleSelector.cpp:
2689         (WebCore::CSSStyleSelector::styleForDocument):
2690         * dom/Document.cpp:
2691         (WebCore::Document::setDesignMode):
2692         * dom/Node.cpp:
2693         (WebCore::Node::rendererIsEditable):
2694         * editing/ApplyStyleCommand.cpp:
2695         (WebCore::ApplyStyleCommand::surroundNodeRangeWithElement):
2696         * html/HTMLElement.cpp:
2697         (WebCore::HTMLElement::setContentEditable):
2698
2699 2011-04-28  Sheriff Bot  <webkit.review.bot@gmail.com>
2700
2701         Unreviewed, rolling out r85101.
2702         http://trac.webkit.org/changeset/85101
2703         https://bugs.webkit.org/show_bug.cgi?id=59757
2704
2705          it'd be better to rollout the patch and do another one with
2706         another property name. Current one will bring us to a problem
2707         at first run after upgrade because it's type was changed from
2708         int to string. (Requested by loislo on #webkit).
2709
2710         * inspector/front-end/ScriptsPanel.js:
2711         (WebInspector.ScriptsPanel.prototype._debuggerWasEnabled):
2712         (WebInspector.ScriptsPanel.prototype._setPauseOnExceptions.callback):
2713         (WebInspector.ScriptsPanel.prototype._setPauseOnExceptions):
2714
2715 2011-04-28  Mike Reed  <reed@google.com>
2716
2717         Reviewed by Eric Seidel.
2718
2719         fix shadw behavior for both CSS and Canvas -- skia only
2720         https://bugs.webkit.org/show_bug.cgi?id=59700
2721
2722         Test:
2723         canvas/philip/tests/2d.shadow.alpha.3.html
2724         canvas/philip/tests/2d.shadow.alpha.4.html
2725         canvas/philip/tests/2d.shadow.alpha.5.html
2726         fast/canvas/canvas-fillPath-alpha-shadow.html
2727         fast/canvas/canvas-strokePath-alpha-shadow.html
2728         fast/canvas/canvas-strokeRect-alpha-shadow.html
2729         fast/css/text-input-with-webkit-border-radius.html
2730         fast/repaint/shadow-multiple-horizontal.html
2731         fast/repaint/shadow-multiple-strict-horizontal.html
2732         fast/repaint/shadow-multiple-strict-vertical.html
2733         fast/repaint/shadow-multiple-vertical.html
2734         fast/canvas/canvas-getImageData.html
2735
2736         * platform/graphics/chromium/FontChromiumWin.cpp:
2737         (WebCore::Font::drawGlyphs):
2738         * platform/graphics/skia/GraphicsContextSkia.cpp:
2739         (WebCore::GraphicsContext::setPlatformShadow):
2740
2741 2011-04-28  David Kilzer  <ddkilzer@apple.com>
2742
2743         <http://webkit.org/b/59755> AXObjectCache::attachWrapper() over-retains an AccessibilityObjectWrapper
2744
2745         Reviewed by Chris Fleizach.
2746
2747         Previously, AXObjectCache::attachWrapper over-retained each
2748         AccessibilityObjectWrapper it created, which is why
2749         AXObjectCache::detachWrapper() contained an extra -release.
2750
2751         * accessibility/mac/AXObjectCacheMac.mm:
2752         (WebCore::AXObjectCache::detachWrapper): Removed extra -release.
2753         (WebCore::AXObjectCache::attachWrapper): Because setWrapper()
2754         assigns to a RetainPtr<> instance variable, it doesn't need a +1
2755         retained object passed in.  Fix the leak by using a RetainPtr<>
2756         for the AccessibilityObjectWrapper.
2757
2758 2011-04-28  Nat Duca  <nduca@chromium.org>
2759
2760         Reviewed by Darin Fisher.
2761
2762         [chromium] Compute compositor fps value and history using the frameBegin timestamp
2763         https://bugs.webkit.org/show_bug.cgi?id=59668
2764
2765         This change switches the compositor FPS meter to use the timestamp
2766         of the beginning of the frame rather than the time we call
2767         swapBuffers. When scheduling is correctly tied to vsync, we can
2768         have highly variable times when we finish vsync and still have
2769         stable frame rates.
2770
2771         * platform/graphics/chromium/LayerRendererChromium.cpp:
2772         (WebCore::LayerRendererChromium::updateAndDrawLayers):
2773         * platform/graphics/chromium/cc/CCHeadsUpDisplay.cpp:
2774         (WebCore::CCHeadsUpDisplay::CCHeadsUpDisplay):
2775         (WebCore::CCHeadsUpDisplay::drawFPSCounter):
2776         (WebCore::CCHeadsUpDisplay::onFrameBegin):
2777         (WebCore::CCHeadsUpDisplay::onPresent):
2778         * platform/graphics/chromium/cc/CCHeadsUpDisplay.h:
2779
2780 2011-04-28  Beth Dakin  <bdakin@apple.com>
2781
2782         Reviewed by Darin Adler.
2783
2784         https://bugs.webkit.org/show_bug.cgi?id=59759
2785         Overflow:scroll regions with overlay scrollbars show full thumb instead of just a 
2786         track when there is nothing to scroll to
2787         <rdar://problem/9282066>
2788
2789         Scrollbar::totalSize() and Scrollbar::visibleSize() are the same when there is 
2790         nothing to scroll to. Just dividing them to get a knob proportion yields 1, which 
2791         is not right. Set the proportion to 0 in this case instead.
2792         * platform/mac/ScrollbarThemeMac.mm:
2793         (WebCore::ScrollbarThemeMac::paint):
2794
2795 2011-04-28  Dan Bernstein  <mitz@apple.com>
2796
2797         Reviewed by Simon Fraser.
2798
2799         <rdar://problem/9291132> Add support for -epub-prefixed properties
2800
2801         Test: fast/css/epub-properties.html
2802
2803         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
2804         (WebCore::cssPropertyName): Map "epub"-prefixed properties to "-epub"-prefixed ones.
2805         * css/CSSPropertyNames.in: Added -epub- aliases to caption-side, -webkit-hyphens, -webkit-text-combine,
2806         -webkit-text-emphasis, -webkit-text-emphasis-color, -webkit-text-emphasis-style, -webkit-text-orientation,
2807         text-transform, text-transform, word-break, and -webkit-writing-mode.
2808
2809 2011-04-28  Adam Barth  <abarth@webkit.org>
2810
2811         Reviewed by Eric Seidel.
2812
2813         Remove WML
2814         https://bugs.webkit.org/show_bug.cgi?id=59678
2815
2816         This patch removes WML from WebCore.  After removing WML, there's a
2817         bunch of twisted code that could be untwisted, but this patch contains
2818         only the purely mechanical part of removing the feature.
2819
2820         There's been a lot of discussion on webkit-dev about whether we should
2821         remove WML.  In addition to those threads, we've had an informal poll
2822         of the reviewers as well as an in-person discussion at the WebKit
2823         contributor's meeting.  Removing any feature is likely to make some
2824         folks unhappy, but, on balance, removing WML appears to be the right
2825         thing for the project to do at this time.
2826
2827         * CMakeLists.txt:
2828         * CodeGenerators.pri:
2829         * Configurations/FeatureDefines.xcconfig:
2830         * DerivedSources.cpp:
2831         * DerivedSources.make:
2832         * GNUmakefile.am:
2833         * GNUmakefile.list.am:
2834         * WebCore.gyp/WebCore.gyp:
2835         * WebCore.gypi:
2836         * WebCore.pro:
2837         * WebCore.vcproj/WebCore.vcproj:
2838         * WebCore.xcodeproj/project.pbxproj:
2839         * css/CSSStyleSelector.cpp:
2840         (WebCore::linkAttribute):
2841         (WebCore::CSSStyleSelector::styleForElement):
2842         (WebCore::CSSStyleSelector::adjustRenderStyle):
2843         * css/wml.css: Removed.
2844         * dom/DOMImplementation.cpp:
2845         (WebCore::DOMImplementation::createDocument):
2846         * dom/Document.cpp:
2847         (WebCore::Document::Document):
2848         (WebCore::Document::createElement):
2849         * dom/Document.h:
2850         (WebCore::Document::isMediaDocument):
2851         * dom/Document.idl:
2852         * dom/InputElement.h:
2853         * dom/Node.cpp:
2854         (WebCore::Node::toInputElement):
2855         * dom/Node.h:
2856         * dom/OptionElement.cpp:
2857         (WebCore::toOptionElement):
2858         (WebCore::isOptionElement):
2859         * dom/OptionElement.h:
2860         * dom/OptionGroupElement.cpp:
2861         (WebCore::toOptionGroupElement):
2862         (WebCore::isOptionGroupElement):
2863         * dom/SelectElement.cpp:
2864         (WebCore::toSelectElement):
2865         * dom/SelectElement.h:
2866         * dom/Text.cpp:
2867         (WebCore::Text::attach):
2868         * dom/XMLDocumentParser.cpp:
2869         (WebCore::XMLDocumentParser::insertErrorMessageBlock):
2870         * dom/XMLDocumentParser.h:
2871         * dom/XMLDocumentParserLibxml2.cpp:
2872         (WebCore::XMLDocumentParser::internalSubset):
2873         (WebCore::getEntityHandler):
2874         * dom/XMLDocumentParserQt.cpp:
2875         (WebCore::XMLDocumentParser::parse):
2876         (WebCore::XMLDocumentParser::parseDtd):
2877         * editing/htmlediting.cpp:
2878         (WebCore::canHaveChildrenForEditing):
2879         * features.pri:
2880         * history/BackForwardList.h:
2881         * history/BackForwardListImpl.cpp:
2882         * history/BackForwardListImpl.h:
2883         * history/PageCache.cpp:
2884         (WebCore::PageCache::canCachePageContainingThisFrame):
2885         * html/HTMLAnchorElement.h:
2886         * inspector/ConsoleMessage.cpp:
2887         (WebCore::messageSourceValue):
2888         * inspector/front-end/ConsoleView.js:
2889         (WebInspector.ConsoleMessage.prototype.toString):
2890         * loader/FrameLoader.cpp:
2891         (WebCore::isBackForwardLoadType):
2892         (WebCore::FrameLoader::transitionToCommitted):
2893         (WebCore::FrameLoader::shouldReload):
2894         (WebCore::FrameLoader::loadDifferentDocumentItem):
2895         (WebCore::FrameLoader::loadItem):
2896         * loader/FrameLoaderTypes.h:
2897         * loader/HistoryController.cpp:
2898         (WebCore::HistoryController::restoreDocumentState):
2899         * manual-tests/wml: Removed.
2900         * manual-tests/wml/StartTests.wml: Removed.
2901         * manual-tests/wml/a-br-element.wml: Removed.
2902         * manual-tests/wml/a-element.wml: Removed.
2903         * manual-tests/wml/a-img-element.wml: Removed.
2904         * manual-tests/wml/access-target.wml: Removed.
2905         * manual-tests/wml/anchor-br-element.wml: Removed.
2906         * manual-tests/wml/anchor-element.wml: Removed.
2907         * manual-tests/wml/anchor-img-element.wml: Removed.
2908         * manual-tests/wml/card-newcontext-attr.wml: Removed.
2909         * manual-tests/wml/card-onenterbackward.wml: Removed.
2910         * manual-tests/wml/card-onenterforward.wml: Removed.
2911         * manual-tests/wml/card-ontimer.wml: Removed.
2912         * manual-tests/wml/deck-access-control.wml: Removed.
2913         * manual-tests/wml/input-format.wml: Removed.
2914         * manual-tests/wml/onevent-go.wml: Removed.
2915         * manual-tests/wml/onevent-noop.wml: Removed.
2916         * manual-tests/wml/onevent-prev.wml: Removed.
2917         * manual-tests/wml/onevent-refresh.wml: Removed.
2918         * manual-tests/wml/onevent-shadow.wml: Removed.
2919         * manual-tests/wml/resources: Removed.
2920         * manual-tests/wml/resources/smiley.png: Removed.
2921         * manual-tests/wml/select-element.wml: Removed.
2922         * manual-tests/wml/select-onpick-event-crash.wml: Removed.
2923         * manual-tests/wml/select-onpick-event.wml: Removed.
2924         * manual-tests/wml/setvar-element.wml: Removed.
2925         * manual-tests/wml/targetdeck.wml: Removed.
2926         * manual-tests/wml/task-go-in-anchor.wml: Removed.
2927         * manual-tests/wml/task-prev-in-anchor.wml: Removed.
2928         * manual-tests/wml/task-refresh-in-anchor.wml: Removed.
2929         * manual-tests/wml/template-go.wml: Removed.
2930         * manual-tests/wml/template-ontimer.wml: Removed.
2931         * manual-tests/wml/timer.wml: Removed.
2932         * manual-tests/wml/variable-substitution.wml: Removed.
2933         * page/Console.cpp:
2934         (WebCore::printMessageSourceAndLevelPrefix):
2935         * page/Console.h:
2936         * page/Frame.cpp:
2937         (WebCore::Frame::Frame):
2938         * page/Page.cpp:
2939         * page/Page.h:
2940         * platform/MIMETypeRegistry.cpp:
2941         (WebCore::initializeSupportedNonImageMimeTypes):
2942         * platform/network/FormDataBuilder.h:
2943         * platform/network/mac/ResourceHandleMac.mm:
2944         (-[WebCoreResourceHandleAsDelegate connection:didReceiveResponse:]):
2945         * platform/wince/MIMETypeRegistryWinCE.cpp:
2946         (WebCore::initMIMETypeEntensionMap):
2947         * rendering/HitTestResult.cpp:
2948         (WebCore::HitTestResult::altDisplayString):
2949         (WebCore::HitTestResult::absoluteImageURL):
2950         (WebCore::HitTestResult::absoluteLinkURL):
2951         (WebCore::HitTestResult::isLiveLink):
2952         * rendering/RenderBox.cpp:
2953         * rendering/RenderButton.cpp:
2954         (WebCore::RenderButton::updateFromElement):
2955         * rendering/RenderFieldset.cpp:
2956         (WebCore::RenderFieldset::findLegend):
2957         * rendering/RenderImage.cpp:
2958         (WebCore::RenderImage::updateAltText):
2959         * rendering/RenderObject.cpp:
2960         (WebCore::RenderObject::isLegend):
2961         (WebCore::RenderObject::offsetParent):
2962         * wml: Removed.
2963         * wml/WMLAElement.cpp: Removed.
2964         * wml/WMLAElement.h: Removed.
2965         * wml/WMLAccessElement.cpp: Removed.
2966         * wml/WMLAccessElement.h: Removed.
2967         * wml/WMLAnchorElement.cpp: Removed.
2968         * wml/WMLAnchorElement.h: Removed.
2969         * wml/WMLAttributeNames.in: Removed.
2970         * wml/WMLBRElement.cpp: Removed.
2971         * wml/WMLBRElement.h: Removed.
2972         * wml/WMLCardElement.cpp: Removed.
2973         * wml/WMLCardElement.h: Removed.
2974         * wml/WMLDoElement.cpp: Removed.
2975         * wml/WMLDoElement.h: Removed.
2976         * wml/WMLDocument.cpp: Removed.
2977         * wml/WMLDocument.h: Removed.
2978         * wml/WMLElement.cpp: Removed.
2979         * wml/WMLElement.h: Removed.
2980         * wml/WMLErrorHandling.cpp: Removed.
2981         * wml/WMLErrorHandling.h: Removed.
2982         * wml/WMLEventHandlingElement.cpp: Removed.
2983         * wml/WMLEventHandlingElement.h: Removed.
2984         * wml/WMLFieldSetElement.cpp: Removed.
2985         * wml/WMLFieldSetElement.h: Removed.
2986         * wml/WMLFormControlElement.cpp: Removed.
2987         * wml/WMLFormControlElement.h: Removed.
2988         * wml/WMLGoElement.cpp: Removed.
2989         * wml/WMLGoElement.h: Removed.
2990         * wml/WMLImageElement.cpp: Removed.
2991         * wml/WMLImageElement.h: Removed.
2992         * wml/WMLImageLoader.cpp: Removed.
2993         * wml/WMLImageLoader.h: Removed.
2994         * wml/WMLInputElement.cpp: Removed.
2995         * wml/WMLInputElement.h: Removed.
2996         * wml/WMLInsertedLegendElement.cpp: Removed.
2997         * wml/WMLInsertedLegendElement.h: Removed.
2998         * wml/WMLIntrinsicEvent.cpp: Removed.
2999         * wml/WMLIntrinsicEvent.h: Removed.
3000         * wml/WMLIntrinsicEventHandler.cpp: Removed.
3001         * wml/WMLIntrinsicEventHandler.h: Removed.
3002         * wml/WMLMetaElement.cpp: Removed.
3003         * wml/WMLMetaElement.h: Removed.
3004         * wml/WMLNoopElement.cpp: Removed.
3005         * wml/WMLNoopElement.h: Removed.
3006         * wml/WMLOnEventElement.cpp: Removed.
3007         * wml/WMLOnEventElement.h: Removed.
3008         * wml/WMLOptGroupElement.cpp: Removed.
3009         * wml/WMLOptGroupElement.h: Removed.
3010         * wml/WMLOptionElement.cpp: Removed.
3011         * wml/WMLOptionElement.h: Removed.
3012         * wml/WMLPElement.cpp: Removed.
3013         * wml/WMLPElement.h: Removed.
3014         * wml/WMLPageState.cpp: Removed.
3015         * wml/WMLPageState.h: Removed.
3016         * wml/WMLPostfieldElement.cpp: Removed.
3017         * wml/WMLPostfieldElement.h: Removed.
3018         * wml/WMLPrevElement.cpp: Removed.
3019         * wml/WMLPrevElement.h: Removed.
3020         * wml/WMLRefreshElement.cpp: Removed.
3021         * wml/WMLRefreshElement.h: Removed.
3022         * wml/WMLSelectElement.cpp: Removed.
3023         * wml/WMLSelectElement.h: Removed.
3024         * wml/WMLSetvarElement.cpp: Removed.
3025         * wml/WMLSetvarElement.h: Removed.
3026         * wml/WMLTableElement.cpp: Removed.
3027         * wml/WMLTableElement.h: Removed.
3028         * wml/WMLTagNames.in: Removed.
3029         * wml/WMLTaskElement.cpp: Removed.
3030         * wml/WMLTaskElement.h: Removed.
3031         * wml/WMLTemplateElement.cpp: Removed.
3032         * wml/WMLTemplateElement.h: Removed.
3033         * wml/WMLTimerElement.cpp: Removed.
3034         * wml/WMLTimerElement.h: Removed.
3035         * wml/WMLVariables.cpp: Removed.
3036         * wml/WMLVariables.h: Removed.
3037
3038 2011-04-28  Sheriff Bot  <webkit.review.bot@gmail.com>
3039
3040         Unreviewed, rolling out r85233 and r85235.
3041         http://trac.webkit.org/changeset/85233
3042         http://trac.webkit.org/changeset/85235
3043         https://bugs.webkit.org/show_bug.cgi?id=59754
3044
3045         Causes issues with jsc. (Requested by dave_levin on #webkit).
3046
3047         * ForwardingHeaders/wtf/ThreadRestrictionVerifier.h: Removed.
3048         * loader/icon/IconDatabase.cpp:
3049         (WebCore::IconDatabase::defaultIcon):
3050         (WebCore::IconDatabase::setIconDataForIconURL):
3051         (WebCore::IconDatabase::getOrCreateIconRecord):
3052         (WebCore::IconDatabase::readFromDatabase):
3053
3054 2011-04-28  Jay Civelli  <jcivelli@chromium.org>
3055
3056         Reviewed by Adam Barth.
3057
3058         Introducing a new class that allows serialization of a page back
3059         to HTML/XML with all its sub-frames and also retrieves the page's
3060         resources.
3061         Tests: unit-tests in chromium/tests/WebPageNewSerializerTest.cpp
3062         https://bugs.webkit.org/show_bug.cgi?id=58947
3063
3064         * Android.mk:
3065         * CMakeLists.txt:
3066         * GNUmakefile.list.am:
3067         * WebCore.gypi:
3068         * WebCore.pro:
3069         * WebCore.vcproj/WebCore.vcproj:
3070         * dom/Document.cpp:
3071         (WebCore::Document::suggestedMIMEType):
3072         * dom/Document.h:
3073         * editing/MarkupAccumulator.cpp:
3074         (WebCore::MarkupAccumulator::appendCustomAttributes):
3075         (WebCore::MarkupAccumulator::appendElement):
3076         * editing/MarkupAccumulator.h:
3077         * html/parser/HTMLMetaCharsetParser.cpp:
3078         (WebCore::HTMLMetaCharsetParser::processMeta):
3079         (WebCore::HTMLMetaCharsetParser::encodingFromMetaAttributes):
3080         * html/parser/HTMLMetaCharsetParser.h:
3081         * page/PageSerializer.cpp: Added.
3082         * page/PageSerializer.h: Added.
3083
3084 2011-04-28  Mark Pilgrim  <pilgrim@chromium.org>
3085
3086         Reviewed by Tony Chang.
3087
3088         IndexedDB createIndex should fail if name arg is null
3089         https://bugs.webkit.org/show_bug.cgi?id=58365
3090
3091         Test: storage/indexeddb/mozilla/create-index-null-name.html
3092
3093         * storage/IDBObjectStore.idl:
3094         * storage/IDBObjectStoreBackendImpl.cpp:
3095         (WebCore::IDBObjectStoreBackendImpl::createIndex):
3096
3097 2011-04-28  Mark Pilgrim  <pilgrim@chromium.org>
3098
3099         Reviewed by Tony Chang.
3100
3101         IndexedDB put() should fail if second (key) parameter is null
3102         https://bugs.webkit.org/show_bug.cgi?id=58613
3103
3104         If key arg is not specified, prpKey ends up as a null pointer in ::put().
3105         However, if the key arg is specified but is null, prpKey ends up as a
3106         valid IDBKey which has a null key type. As it happens, we need to be able
3107         to detect the difference between these cases (the key arg is optional but
3108         if specified must not be null).
3109
3110         Test: storage/indexeddb/mozilla/key-requirements-put-null-key.html
3111
3112         * storage/IDBObjectStoreBackendImpl.cpp:
3113         (WebCore::IDBObjectStoreBackendImpl::put):
3114
3115 2011-04-07  David Levin  <levin@chromium.org>
3116
3117         Reviewed by Darin Adler.
3118
3119         Add asserts to RefCounted to make sure ref/deref happens on the right thread.
3120         https://bugs.webkit.org/show_bug.cgi?id=31639
3121
3122         No new functionality exposed so no new tests. (The change is basically adding
3123         more testing.)
3124
3125         * ForwardingHeaders/wtf/ThreadRestrictionVerifier.h: Added.
3126         * loader/icon/IconDatabase.cpp:
3127         (WebCore::IconDatabase::defaultIcon): Set the mutex which does the guarding of the variable.
3128         (WebCore::IconDatabase::getOrCreateIconRecord): Ditto.
3129         (WebCore::IconDatabase::setIconDataForIconURL): Ditto.
3130         (WebCore::IconDatabase::readFromDatabase): Ditto.
3131
3132 2011-04-28  Kenneth Russell  <kbr@google.com>
3133
3134         Unreviewed build fix for Web Audio with strict OwnPtr.
3135
3136         * platform/audio/HRTFDatabaseLoader.cpp:
3137         (WebCore::HRTFDatabaseLoader::HRTFDatabaseLoader):
3138
3139 2011-04-28  Dominic Cooney  <dominicc@chromium.org>
3140
3141         Reviewed by Geoffrey Garen.
3142
3143         Walk shadow hosts as well as parent nodes when finding opaque roots.
3144         https://bugs.webkit.org/show_bug.cgi?id=59571
3145
3146         Test: fast/dom/shadow/gc-shadow.html
3147
3148         * bindings/js/JSDOMBinding.h:
3149         (WebCore::root):
3150
3151 2011-04-28  Martin Robinson  <mrobinson@igalia.com>
3152
3153         Reviewed by Xan Lopez.
3154
3155         [GTK] Click counting logic should be shared between WebKit1 and WebKit2
3156         https://bugs.webkit.org/show_bug.cgi?id=59715
3157
3158         Added a GtkClickCounter class which is just the logic from WebKit1 pushed down
3159         into WebCore so that WebKit1 and WebKit2 can share the code.
3160
3161         No new tests. This is covered by fast/events/click-count.html.
3162
3163         * GNUmakefile.list.am: Added new files.
3164         * platform/gtk/GtkClickCounter.cpp: Added.
3165         (WebCore::GtkClickCounter::GtkClickCounter): Added.
3166         (WebCore::GtkClickCounter::reset): Added.
3167         (WebCore::GtkClickCounter::shouldProcessButtonEvent): Added.
3168         (WebCore::getEventTime): Added.
3169         (WebCore::GtkClickCounter::clickCountForGdkButtonEvent): Added.
3170         * platform/gtk/GtkClickCounter.h: Added.
3171
3172 2011-04-28  Dan Bernstein  <mitz@apple.com>
3173
3174         Build fix.
3175
3176         * css/CSSParser.cpp:
3177         (WebCore::cssPropertyID):
3178
3179 2011-04-28  Dan Bernstein  <mitz@apple.com>
3180
3181         Reviewed by Simon Fraser.
3182
3183         Allow specifying CSS property aliases in CSSPropertyNames.in files
3184         https://bugs.webkit.org/show_bug.cgi?id=59712
3185
3186         * css/CSSParser.cpp:
3187         (WebCore::cssPropertyID): Removed code to handle some aliases
3188         * css/CSSPropertyNames.in: Added aliases no longer handled in code.
3189         * css/makeprop.pl: Interpret lines of the form "alias-property-name = property-name" as
3190         defining an alias, and add an appropriate entry to the gperf file.
3191
3192 2011-04-28  Arno Renevier  <arno@renevier.net>
3193
3194         Reviewed by Gustavo Noronha Silva.
3195
3196         [Soup] does not load css stylesheets without content-type
3197         https://bugs.webkit.org/show_bug.cgi?id=59697
3198
3199         When sniffing content type, do not replace http Content-Type header in
3200         soup message anymore, but keep sniffed content type in a separate
3201         variable.
3202
3203         * platform/network/soup/ResourceHandleSoup.cpp:
3204         (WebCore::contentSniffedCallback):
3205         * platform/network/soup/ResourceResponse.h:
3206         (WebCore::ResourceResponse::sniffedContentType):
3207         (WebCore::ResourceResponse::setSniffedContentType):
3208         * platform/network/soup/ResourceResponseSoup.cpp:
3209         (WebCore::ResourceResponse::updateFromSoupMessage):
3210
3211 2011-04-28  Yael Aharon  <yael.aharon@nokia.com>
3212
3213         Reviewed by Andreas Kling.
3214
3215         Remove flag ENABLE_SYMBIAN_DIALOG_PROVIDER
3216         https://bugs.webkit.org/show_bug.cgi?id=59704
3217
3218         No new tests, just code cleanup.
3219
3220         * WebCore.pri:
3221
3222 2011-04-28  Pavel Podivilov  <podivilov@chromium.org>
3223
3224         Reviewed by Pavel Feldman.
3225
3226         Web Inspector: remove "Pretty print" source frame context menu item.
3227         https://bugs.webkit.org/show_bug.cgi?id=59709
3228
3229         * inspector/front-end/DebuggerPresentationModel.js:
3230         (WebInspector.DebuggerPresentationModel.prototype.setFormatSourceFiles):
3231         * inspector/front-end/ScriptsPanel.js:
3232         (WebInspector.ScriptsPanel.prototype._toggleFormatSourceFiles):
3233         * inspector/front-end/SourceFrame.js:
3234         (WebInspector.SourceFrame.prototype.populateTextAreaContextMenu):
3235
3236 2011-04-28  Satish Sampath  <satish@chromium.org>
3237
3238         Reviewed by Tony Gentilcore.
3239
3240         Speech input button layout issues with padding and border.
3241         https://bugs.webkit.org/show_bug.cgi?id=59613
3242
3243         * rendering/RenderTextControlSingleLine.cpp:
3244         (WebCore::RenderTextControlSingleLine::layout):
3245         (WebCore::RenderTextControlSingleLine::nodeAtPoint):
3246         (WebCore::RenderTextControlSingleLine::forwardEvent):
3247
3248 2011-04-28  Carlos Garcia Campos  <cgarcia@igalia.com>
3249
3250         Reviewed by Martin Robinson.
3251
3252         [GTK] Check whether to use native scrollbars at run time
3253         https://bugs.webkit.org/show_bug.cgi?id=59694
3254
3255         It's currently decided at build time depending on whether webkit2
3256         build is enabled or not. That makes imposible to build both
3257         webkit1 and webkit2 using the same libWebCore.
3258
3259         * GNUmakefile.am:
3260         * platform/ScrollView.cpp:
3261         (WebCore::ScrollView::wheelEvent):
3262         * platform/gtk/ScrollViewGtk.cpp:
3263         (WebCore::ScrollView::createScrollbar):
3264
3265 2011-04-28  Pavel Feldman  <pfeldman@google.com>
3266
3267         Reviewed by Yury Semikhatsky.
3268
3269         Web Inspector: add status bar button for pretty print.
3270         https://bugs.webkit.org/show_bug.cgi?id=59467
3271
3272         * WebCore.gypi:
3273         * inspector/front-end/Images/prettyPrintButtonGlyph.png: Added.
3274         * inspector/front-end/ScriptsPanel.js:
3275         (WebInspector.ScriptsPanel):
3276         (WebInspector.ScriptsPanel.prototype.get statusBarItems):
3277         (WebInspector.ScriptsPanel.prototype._toggleFormatSourceFiles):
3278         * inspector/front-end/WebKit.qrc:
3279         * inspector/front-end/inspector.css:
3280         (.scripts-toggle-pretty-print-status-bar-item .glyph):
3281         (.scripts-toggle-pretty-print-status-bar-item.toggled .glyph):
3282
3283 2011-04-28  Pavel Feldman  <pfeldman@google.com>
3284
3285         Reviewed by Yury Semikhatsky.
3286
3287         Web Inspector: add ResourceTreeModel tests.
3288         https://bugs.webkit.org/show_bug.cgi?id=59616
3289
3290         Tests: http/tests/inspector/resource-tree/resource-tree-document-url.html
3291                http/tests/inspector/resource-tree/resource-tree-frame-navigate.html
3292                http/tests/inspector/resource-tree/resource-tree-reload.html
3293
3294         * inspector/front-end/ResourceTreeModel.js:
3295         (WebInspector.ResourceTreeModel.prototype.frontendReused):
3296         (WebInspector.ResourceTreeModel.prototype._addFrame):
3297         (WebInspector.ResourceTreeModel.prototype._frameNavigated):
3298         (WebInspector.ResourceTreeModel.prototype._frameDetached):
3299         (WebInspector.ResourceTreeModel.prototype._onResourceUpdated):
3300         (WebInspector.ResourceTreeModel.prototype.forAllResources):
3301         (WebInspector.ResourceTreeModel.prototype._clearChildFramesAndResources):
3302         (WebInspector.ResourceTreeModel.prototype._callForFrameResources):
3303         (WebInspector.ResourceTreeModel.prototype._addFramesRecursively):
3304         * inspector/front-end/ResourcesPanel.js:
3305         (WebInspector.ResourcesPanel.prototype._populateResourceTree):
3306         (WebInspector.ResourcesPanel.prototype._frameAdded):
3307         (WebInspector.ResourcesPanel.prototype._frameDetached):
3308         (WebInspector.ResourcesPanel.prototype._frameNavigated):
3309         (WebInspector.FrameTreeElement):
3310         (WebInspector.FrameTreeElement.prototype.frameNavigated):
3311
3312 2011-04-28  Mikhail Naganov  <mnaganov@chromium.org>
3313
3314         Reviewed by Yury Semikhatsky.
3315
3316         WebInspector: [Chromium] Implement retaining paths following in detailed heap snapshots.
3317         https://bugs.webkit.org/show_bug.cgi?id=59592
3318
3319         * inspector/front-end/DetailedHeapshotGridNodes.js:
3320         (WebInspector.HeapSnapshotGridNode.prototype._populate):
3321         (WebInspector.HeapSnapshotGridNode.prototype.populateChildren.childrenRetrieved):
3322         (WebInspector.HeapSnapshotGridNode.prototype.populateChildren.callSerialize):
3323         (WebInspector.HeapSnapshotGridNode.prototype.populateChildren):
3324         * inspector/front-end/DetailedHeapshotView.js:
3325         (WebInspector.HeapSnapshotContainmentDataGrid.prototype._defaultPopulateCount.100.expandRoute.nextStep.else.afterExpand):
3326         (WebInspector.HeapSnapshotContainmentDataGrid.prototype._defaultPopulateCount.100.expandRoute):
3327         (WebInspector.HeapSnapshotRetainingPathsList.prototype.showNext.pathFound):
3328         (WebInspector.DetailedHeapshotView.prototype._mouseClickInRetainmentGrid.expandRoute):
3329         (WebInspector.DetailedHeapshotView.prototype._mouseClickInRetainmentGrid):
3330         (WebInspector.DetailedHeapshotView.prototype.changeView.sortingComplete):
3331         (WebInspector.DetailedHeapshotView.prototype.changeView):
3332         * inspector/front-end/HeapSnapshot.js:
3333         (WebInspector.HeapSnapshotPathFinder.prototype.findNext):
3334         (WebInspector.HeapSnapshotPathFinder.prototype._nextEdgeIter):
3335         (WebInspector.HeapSnapshotPathFinder.prototype._buildNextPath):
3336         (WebInspector.HeapSnapshotPathFinder.prototype._pathToString):
3337         (WebInspector.HeapSnapshotPathFinder.prototype._pathToRoute):
3338         * inspector/front-end/heapProfiler.css:
3339         (div.retaining-paths-view td.path-column div:hover):
3340
3341 2011-04-28  Mikhail Naganov  <mnaganov@chromium.org>
3342
3343         Reviewed by Yury Semikhatsky.
3344
3345         Web Inspector: [Chromium] Optimize detailed heap snapshots loading / parsing.
3346         https://bugs.webkit.org/show_bug.cgi?id=59454
3347
3348         Test: inspector/profiler/heap-snapshot-loader.html
3349
3350         * inspector/front-end/HeapSnapshot.js:
3351         (WebInspector.HeapSnapshotLoader):
3352         (WebInspector.HeapSnapshotLoader.prototype._findBalancedCurlyBrackets):
3353         (WebInspector.HeapSnapshotLoader.prototype.finishLoading):
3354         (WebInspector.HeapSnapshotLoader.prototype._parseNodes):
3355         (WebInspector.HeapSnapshotLoader.prototype._parseStringsArray):
3356         (WebInspector.HeapSnapshotLoader.prototype.pushJSONChunk):
3357         * inspector/front-end/HeapSnapshotProxy.js:
3358         (WebInspector.HeapSnapshotFakeWorker.prototype.postMessage):
3359
3360 2011-04-28  ojab  <ojab@ojab.ru>
3361
3362         Reviewed by David Levin.
3363
3364         Fix build with libpng-1.5.1
3365         https://bugs.webkit.org/show_bug.cgi?id=59607
3366
3367         * platform/image-decoders/png/PNGImageDecoder.cpp:
3368         (WebCore::readColorProfile):
3369
3370 2011-04-28  Zoltan Herczeg  <zherczeg@inf.u-szeged.hu>
3371
3372         Reviewed by Nikolas Zimmermann.
3373
3374         Optimizing gaussian blur filter to ARM-neon SIMD instruction set
3375         https://bugs.webkit.org/show_bug.cgi?id=59447
3376
3377         This patch contains two sub-routines, one for speeding up
3378         alpha channel only gaussian blur (by 2.5 times) and one
3379         for speeding up all channel blur (by 4 times).
3380
3381         The common code is also redesigned to better fit for platform
3382         specific code. This means large chunks of code was moved to
3383         different files, and all platform specific files are added to
3384         all build systems.
3385
3386         * CMakeLists.txt:
3387         * GNUmakefile.am:
3388         * GNUmakefile.list.am:
3389         * WebCore.gypi:
3390         * WebCore.pro:
3391         * WebCore.vcproj/WebCore.vcproj:
3392         * WebCore.vcproj/WebCoreCommon.vsprops:
3393         * WebCore.xcodeproj/project.pbxproj:
3394         * platform/graphics/filters/FEGaussianBlur.cpp:
3395         (WebCore::FEGaussianBlur::platformApplyGeneric):
3396         (WebCore::FEGaussianBlur::apply):
3397         * platform/graphics/filters/FEGaussianBlur.h:
3398         (WebCore::FEGaussianBlur::kernelPosition):
3399         (WebCore::FEGaussianBlur::platformApply):
3400         * platform/graphics/filters/FELighting.cpp:
3401         (WebCore::FELighting::platformApplyGeneric):
3402         (WebCore::FELighting::drawLighting):
3403         * platform/graphics/filters/FELighting.h:
3404         (WebCore::FELighting::platformApply):
3405         * platform/graphics/filters/arm/FEGaussianBlurNEON.cpp: Added.
3406         (WebCore::WTF_ALIGNED):
3407         (WebCore::feGaussianBlurConstantsForNeon):
3408         * platform/graphics/filters/arm/FEGaussianBlurNEON.h: Added.
3409         (WebCore::FEGaussianBlur::platformApplyNeon):
3410         * platform/graphics/filters/arm/FELightingNEON.cpp:
3411         (WebCore::WTF_ALIGNED):
3412         (WebCore::FELighting::getPowerCoefficients):
3413         * platform/graphics/filters/arm/FELightingNEON.h:
3414         (WebCore::FELighting::platformApplyNeon):
3415
3416 2011-04-28  Alexander Pavlov  <apavlov@chromium.org>
3417
3418         Reviewed by Yury Semikhatsky.
3419
3420         Web Inspector: provide a hotkey for script pause
3421         https://bugs.webkit.org/show_bug.cgi?id=59593
3422
3423         In fact, F8 works as a hotkey, but this fact was not reflected
3424         in the shortcut help popup.
3425
3426         * English.lproj/localizedStrings.js:
3427         * inspector/front-end/ScriptsPanel.js:
3428         (WebInspector.ScriptsPanel.prototype._registerShortcuts):
3429
3430 2011-04-28  Adam Barth  <abarth@webkit.org>
3431
3432         Reviewed by Eric Seidel.
3433
3434         PluginStream should play nice with strict OwnPtr
3435         https://bugs.webkit.org/show_bug.cgi?id=59675
3436
3437         These failures appear when enabling strict OwnPtr on Qt.
3438
3439         * plugins/PluginStream.cpp:
3440         (WebCore::PluginStream::PluginStream):
3441         (WebCore::PluginStream::didReceiveData):
3442
3443 2011-04-26  Alexander Pavlov  <apavlov@chromium.org>
3444
3445         Reviewed by Pavel Feldman.
3446
3447         Web Inspector: Use CachedResource to retrieve charset-decoded stylesheet text
3448         https://bugs.webkit.org/show_bug.cgi?id=59326
3449
3450         Concrete CachedResource successors for stylesheets and scripts
3451         can decode their content better than the generic approach we use.
3452
3453         * inspector/InspectorPageAgent.cpp:
3454         (WebCore::decodeSharedBuffer):
3455         (WebCore::prepareCachedResourceBuffer):
3456         (WebCore::cachedResourceDecoded):
3457         (WebCore::InspectorPageAgent::resourceContent):
3458         (WebCore::InspectorPageAgent::resourceData):
3459         * inspector/InspectorStyleSheet.cpp:
3460         (WebCore::InspectorStyleSheet::originalStyleSheetText):
3461
3462 2011-04-28  Jon Lee  <jonlee@apple.com>
3463
3464         Reviewed by Simon Fraser.
3465
3466         REGRESSION: white overlay scrollbars on apple.com/startpage
3467         https://bugs.webkit.org/show_bug.cgi?id=59540
3468         <rdar://problem/9338653>
3469
3470         Now we look at the document background in addition to the <body> element,
3471         and blend those colors in with the base background of the frame view to
3472         arrive at our aggregate color. This provides a better result to determine
3473         overlay scrollbar style.
3474
3475         * page/Frame.cpp:
3476         (WebCore::Frame::getDocumentBackgroundColor): look up the colors on the html and body element, and properly composite them.
3477         * platform/graphics/Color.h: a short comment to note that blend() uses the Porter-Duff source-over equation
3478
3479 2011-04-27  Adam Barth  <abarth@webkit.org>
3480
3481         Reviewed by Maciej Stachowiak.
3482
3483         Fix OwnPtr issues in IndexedDB
3484         https://bugs.webkit.org/show_bug.cgi?id=59656
3485
3486         This patch is an attempt to fix the clang build.  Clang can't seem to
3487         cope with OwnPtrs to classes declared in an anonymous namespace because
3488         OwnPtr's copy constructor isn't defined (but would need to be defined
3489         in this translation unit).
3490
3491         * platform/leveldb/LevelDBDatabase.cpp:
3492
3493 2011-04-27  Ryuan Choi  <ryuan.choi@samsung.com>
3494
3495         Reviewed by Antonio Gomes.
3496
3497         [EFL] Change cursor to LAZY_NATIVE_CURSOR
3498         https://bugs.webkit.org/show_bug.cgi?id=59411
3499
3500         Enable LAZY_NATIVE_CURSOR on EFL build.
3501
3502         No test added because functionality is unchanged.
3503
3504         * CMakeListsEfl.txt: Add Cursor.cpp
3505         * platform/Cursor.h:
3506         (WebCore::Cursor::Cursor):
3507         * platform/efl/CursorEfl.cpp:
3508         (WebCore::Cursor::Cursor):
3509         (WebCore::Cursor::~Cursor):
3510         (WebCore::getCursorString):
3511         (WebCore::Cursor::ensurePlatformCursor):
3512         * platform/efl/WidgetEfl.cpp:
3513         (WebCore::Widget::setCursor):
3514
3515 2011-04-27  Adam Barth  <abarth@webkit.org>
3516
3517         Build fix from the future.  Another trival strict OwnPtr fixes.  This