cd1b92791bc56f9d1910cff2079d7a88897c9be9
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2011-01-19  Levi Weintraub  <leviw@google.com>
2
3         Reviewed by Ryosuke Niwa.
4
5         Replaced rangeCompliantEquivalent with Position::parentAnchoredEquivalent
6         and simplified the logic a bit. Unfortunately, Tables and some legacy
7         editing positions still need to be handled specifically.
8
9         remove rangeCompliantEquivalent and replace it with Position methods
10         https://bugs.webkit.org/show_bug.cgi?id=25057
11
12         No new tests as this is a refactor that doesn't change behavior.
13
14         * WebCore.exp.in:
15         * dom/Document.cpp:
16         (WebCore::Document::caretRangeFromPoint):
17         * dom/Position.cpp:
18         (WebCore::Position::parentAnchoredEquivalent):
19         * dom/Position.h:
20         * editing/ApplyStyleCommand.cpp:
21         (WebCore::ApplyStyleCommand::applyBlockStyle):
22         * editing/CompositeEditCommand.cpp:
23         (WebCore::CompositeEditCommand::insertNodeAt):
24         (WebCore::CompositeEditCommand::moveParagraphs):
25         * editing/DeleteSelectionCommand.cpp:
26         (WebCore::DeleteSelectionCommand::initializePositionData):
27         (WebCore::DeleteSelectionCommand::mergeParagraphs):
28         * editing/Editor.cpp:
29         (WebCore::Editor::textDirectionForSelection):
30         (WebCore::Editor::advanceToNextMisspelling):
31         * editing/InsertLineBreakCommand.cpp:
32         (WebCore::InsertLineBreakCommand::shouldUseBreakElement):
33         * editing/InsertParagraphSeparatorCommand.cpp:
34         (WebCore::InsertParagraphSeparatorCommand::doApply):
35         * editing/ReplaceSelectionCommand.cpp:
36         (WebCore::handleStyleSpansBeforeInsertion):
37         * editing/VisiblePosition.cpp:
38         (WebCore::makeRange):
39         (WebCore::setStart):
40         (WebCore::setEnd):
41         * editing/VisibleSelection.cpp:
42         (WebCore::VisibleSelection::firstRange):
43         (WebCore::VisibleSelection::toNormalizedRange):
44         (WebCore::makeSearchRange):
45         * editing/htmlediting.cpp:
46         (WebCore::indexForVisiblePosition):
47         * editing/htmlediting.h:
48         * editing/visible_units.cpp:
49         (WebCore::previousBoundary):
50         (WebCore::nextBoundary):
51         * page/DOMSelection.cpp:
52         (WebCore::anchorPosition):
53         (WebCore::focusPosition):
54         (WebCore::basePosition):
55         (WebCore::extentPosition):
56
57 2011-01-19  Peter Rybin  <peter.rybin@gmail.com>
58
59         Reviewed by Yury Semikhatsky.
60
61         Web Inspector: script column offset is incorrect
62         https://bugs.webkit.org/show_bug.cgi?id=52580
63
64         Column is updated in 3 places, 2 less probable places contained error.
65         Fixed now.
66
67         * platform/text/SegmentedString.cpp:
68         (WebCore::SegmentedString::advanceSlowCase):
69         * platform/text/SegmentedString.h:
70         (WebCore::SegmentedString::advancePastNewline):
71
72 2011-01-18  Pavel Feldman  <pfeldman@chromium.org>
73
74         Reviewed by Yury Semikhatsky.
75
76         Web Inspector: make InjectedScriptAccess API a part of Web Inspector protocol.
77         https://bugs.webkit.org/show_bug.cgi?id=52652
78
79         Calls served by the InjectedScript should be first class protocol
80         citizens, not dispatched via single protocol message.
81
82         * WebCore.gypi:
83         * WebCore.vcproj/WebCore.vcproj:
84         * inspector/CodeGeneratorInspector.pm:
85         * inspector/InjectedScript.cpp:
86         (WebCore::InjectedScript::evaluate):
87         (WebCore::InjectedScript::evaluateInCallFrame):
88         (WebCore::InjectedScript::evaluateOnSelf):
89         (WebCore::InjectedScript::getCompletions):
90         (WebCore::InjectedScript::getProperties):
91         (WebCore::InjectedScript::pushNodeToFrontend):
92         (WebCore::InjectedScript::resolveNode):
93         (WebCore::InjectedScript::getNodeProperties):
94         (WebCore::InjectedScript::getNodePrototypes):
95         (WebCore::InjectedScript::setPropertyValue):
96         (WebCore::InjectedScript::makeCall):
97         * inspector/InjectedScript.h:
98         * inspector/InjectedScriptHost.cpp:
99         (WebCore::InjectedScriptHost::evaluate):
100         (WebCore::InjectedScriptHost::evaluateInCallFrame):
101         (WebCore::InjectedScriptHost::evaluateOnSelf):
102         (WebCore::InjectedScriptHost::getCompletions):
103         (WebCore::InjectedScriptHost::getProperties):
104         (WebCore::InjectedScriptHost::pushNodeToFrontend):
105         (WebCore::InjectedScriptHost::resolveNode):
106         (WebCore::InjectedScriptHost::getNodeProperties):
107         (WebCore::InjectedScriptHost::getNodePrototypes):
108         (WebCore::InjectedScriptHost::setPropertyValue):
109         (WebCore::InjectedScriptHost::injectedScriptForObjectId):
110         (WebCore::InjectedScriptHost::injectedScriptForNodeId):
111         (WebCore::InjectedScriptHost::injectedScriptForMainWorld):
112         * inspector/InjectedScriptHost.h:
113         * inspector/InjectedScriptSource.js:
114         (.):
115         * inspector/Inspector.idl:
116         * inspector/InspectorController.cpp:
117         * inspector/InspectorController.h:
118         * inspector/InspectorValues.cpp:
119         (WebCore::InspectorObject::getNumber):
120         * inspector/InspectorValues.h:
121         * inspector/front-end/AuditRules.js:
122         (WebInspector.AuditRules.evaluateInTargetWindow):
123         * inspector/front-end/ConsoleView.js:
124         (WebInspector.ConsoleView.prototype.completions):
125         (WebInspector.ConsoleView.prototype.doEvalInWindow):
126         * inspector/front-end/ElementsTreeOutline.js:
127         (WebInspector.ElementsTreeElement.prototype._createTooltipForNode):
128         * inspector/front-end/ExtensionPanel.js:
129         (WebInspector.ExtensionWatchSidebarPane.prototype.setExpression):
130         * inspector/front-end/ExtensionServer.js:
131         (WebInspector.ExtensionServer.prototype._onEvaluateOnInspectedPage):
132         * inspector/front-end/InjectedScriptAccess.js: Removed.
133         * inspector/front-end/PropertiesSidebarPane.js:
134         (WebInspector.PropertiesSidebarPane.prototype.update.callback):
135         (WebInspector.PropertiesSidebarPane.prototype.update):
136         * inspector/front-end/RemoteObject.js:
137         (WebInspector.RemoteObject.resolveNode):
138         (WebInspector.RemoteObject.prototype.getProperties):
139         (WebInspector.RemoteObject.prototype.setPropertyValue):
140         (WebInspector.RemoteObject.prototype.pushNodeToFrontend):
141         * inspector/front-end/ScriptsPanel.js:
142         (WebInspector.ScriptsPanel.prototype.doEvalInCallFrame):
143         * inspector/front-end/WebKit.qrc:
144         * inspector/front-end/inspector.html:
145
146 2011-01-18  Anton Muhin  <antonm@chromium.org>
147
148         Reviewed by Adam Barth.
149
150         [v8] Minor cleanup: make 2nd argument of removeIfPresnt accept only a value type stored in the DOM map
151         https://bugs.webkit.org/show_bug.cgi?id=51683
152
153         Covered by the existing tests.
154
155         * bindings/v8/DOMDataStore.cpp:
156         (WebCore::DOMDataStore::weakNodeCallback):
157         (WebCore::DOMDataStore::IntrusiveDOMWrapperMap::removeIfPresent):
158         * bindings/v8/DOMDataStore.h:
159         * bindings/v8/V8DOMMap.h:
160         (WebCore::WeakReferenceMap::removeIfPresent):
161
162 2011-01-18 MORITA Hajime  <morrita@google.com>
163
164         Reviewed by Ryosuke Niwa.
165         
166         Refactoring: EventHandler::handleTextInputEvent should accept an enum instead of bools.
167         https://bugs.webkit.org/show_bug.cgi?id=52608
168
169         No new tests. no behavioral change.
170
171         * GNUmakefile.am:
172         * WebCore.gypi:
173         * WebCore.pro:
174         * WebCore.vcproj/WebCore.vcproj:
175         * WebCore.xcodeproj/project.pbxproj:
176         * dom/TextEvent.cpp:
177         (WebCore::TextEvent::create):
178         (WebCore::TextEvent::createForDrop):
179         (WebCore::TextEvent::TextEvent):
180         * dom/TextEvent.h:
181         (WebCore::TextEvent::isLineBreak):
182         (WebCore::TextEvent::isBackTab):
183         (WebCore::TextEvent::isPaste):
184         (WebCore::TextEvent::isDrop):
185         * dom/TextEventInputType.h: Added. Extracted from TextEvent::TextInputType.
186         * editing/EditorCommand.cpp:
187         (WebCore::executeInsertBacktab):
188         (WebCore::executeInsertLineBreak):
189         (WebCore::executeInsertNewline):
190         (WebCore::executeInsertTab):
191         * page/EventHandler.cpp:
192         (WebCore::EventHandler::handleTextInputEvent):
193         * page/EventHandler.h:
194
195 2011-01-18  Ben Vanik  <ben.vanik@gmail.com>
196
197         Reviewed by Kenneth Russell.
198
199         Updating ANGLE in WebKit to r533.
200         https://bugs.webkit.org/show_bug.cgi?id=47194
201
202         * platform/graphics/ANGLEWebKitBridge.cpp:
203         (WebCore::ANGLEWebKitBridge::ANGLEWebKitBridge):
204         (WebCore::ANGLEWebKitBridge::~ANGLEWebKitBridge):
205         (WebCore::ANGLEWebKitBridge::validateShaderSource):
206         Update to new ANGLE API for shader validation.
207         * platform/graphics/ANGLEWebKitBridge.h:
208         (WebCore::ANGLEWebKitBridge::setResources): 
209         Renaming types to new names.
210         * platform/graphics/mac/GraphicsContext3DMac.mm:
211         (WebCore::GraphicsContext3D::GraphicsContext3D):
212         Initialize ANGLEResources with ANGLE init call to prevent uninitialized variables.
213
214 2011-01-18  MORITA Hajime  <morrita@google.com>
215
216         Reviewed by Simon Fraser.
217
218         Refactoring: Extract RoundedIntRect class
219         https://bugs.webkit.org/show_bug.cgi?id=51664
220
221         RoundedIntRect is a pair of rect and four IntSize objects which represent
222         corner radii of the rectangle. IntSize is grouped into RoundedIntRect::Radii.
223         Now RenderStyle::getRoundedBorderFor() and RenderStyle::getRoundedInnerBorderWithBorderWidths()
224         return RoundedIntRect and GraphicsContext::addRoundedRectClip(), GraphicsContext::fillRoundedRect()
225         and other functions accept RoundedIntRect as an argument.
226
227         * Android.mk:
228         * CMakeLists.txt:
229         * GNUmakefile.am:
230         * WebCore.gypi:
231         * WebCore.pro:
232         * WebCore.vcproj/WebCore.vcproj:
233         * WebCore.xcodeproj/project.pbxproj:
234         * platform/graphics/GraphicsContext.cpp:
235         (WebCore::GraphicsContext::addRoundedRectClip):
236         (WebCore::GraphicsContext::clipOutRoundedRect):
237         (WebCore::GraphicsContext::fillRoundedRect):
238         * platform/graphics/GraphicsContext.h:
239         * platform/graphics/RoundedIntRect.cpp: Added.
240         (WebCore::RoundedIntRect::Radii::isZero):
241         (WebCore::RoundedIntRect::Radii::scale):
242         (WebCore::RoundedIntRect::Radii::expand):
243         (WebCore::RoundedIntRect::Radii::includeLogicalEdges):
244         (WebCore::RoundedIntRect::Radii::excludeLogicalEdges):
245         (WebCore::RoundedIntRect::RoundedIntRect):
246         (WebCore::RoundedIntRect::includeLogicalEdges):
247         (WebCore::RoundedIntRect::excludeLogicalEdges):
248         * platform/graphics/RoundedIntRect.h: Added.
249         (WebCore::RoundedIntRect::Radii::Radii):
250         (WebCore::RoundedIntRect::Radii::setTopLeft):
251         (WebCore::RoundedIntRect::Radii::setTopRight):
252         (WebCore::RoundedIntRect::Radii::setBottomLeft):
253         (WebCore::RoundedIntRect::Radii::setBottomRight):
254         (WebCore::RoundedIntRect::Radii::topLeft):
255         (WebCore::RoundedIntRect::Radii::topRight):
256         (WebCore::RoundedIntRect::Radii::bottomLeft):
257         (WebCore::RoundedIntRect::Radii::bottomRight):
258         (WebCore::RoundedIntRect::Radii::expand):
259         (WebCore::RoundedIntRect::Radii::shrink):
260         (WebCore::RoundedIntRect::rect):
261         (WebCore::RoundedIntRect::radii):
262         (WebCore::RoundedIntRect::isRounded):
263         (WebCore::RoundedIntRect::isEmpty):
264         (WebCore::RoundedIntRect::setRect):
265         (WebCore::RoundedIntRect::setRadii):
266         (WebCore::RoundedIntRect::move):
267         (WebCore::RoundedIntRect::inflate):
268         (WebCore::RoundedIntRect::inflateWithRadii):
269         (WebCore::RoundedIntRect::expandRadii):
270         (WebCore::RoundedIntRect::shrinkRadii):
271         * rendering/RenderBox.cpp:
272         (WebCore::RenderBox::pushContentsClip):
273         * rendering/RenderBoxModelObject.cpp:
274         (WebCore::RenderBoxModelObject::paintFillLayerExtended):
275         (WebCore::RenderBoxModelObject::paintBorder):
276         (WebCore::RenderBoxModelObject::clipBorderSidePolygon):
277         (WebCore::RenderBoxModelObject::paintBoxShadow):
278         * rendering/RenderBoxModelObject.h:
279         * rendering/RenderObject.cpp:
280         (WebCore::RenderObject::drawBoxSideFromPath):
281         * rendering/RenderReplaced.cpp:
282         (WebCore::RenderReplaced::paint):
283         * rendering/RenderThemeChromiumWin.cpp:
284         (WebCore::RenderThemeChromiumWin::paintTextFieldInternal):
285         * rendering/RenderThemeMac.mm:
286         (WebCore::RenderThemeMac::paintMenuListButtonGradients):
287         (WebCore::RenderThemeMac::paintSliderTrack):
288         * rendering/RenderThemeSafari.cpp:
289         (WebCore::RenderThemeSafari::paintMenuListButtonGradients):
290         (WebCore::RenderThemeSafari::paintSliderTrack):
291         * rendering/RenderThemeWinCE.cpp:
292         (WebCore::RenderThemeWinCE::paintSearchFieldCancelButton):
293         * rendering/RenderWidget.cpp:
294         (WebCore::RenderWidget::paint):
295         * rendering/style/BorderData.h:
296         * rendering/style/RenderStyle.cpp:
297         (WebCore::calcRadiiFor):
298         (WebCore::calcConstraintScaleFor):
299         (WebCore::RenderStyle::getRoundedBorderFor):
300         (WebCore::RenderStyle::getRoundedInnerBorderWithBorderWidths):
301         * rendering/style/RenderStyle.h:
302         (WebCore::InheritedFlags::setBorderRadius):
303
304 2011-01-18  MORITA Hajime  <morrita@google.com>
305
306         Reviewed by Simon Fraser.
307
308         Refactoring: Extract RoundedIntRect class
309         https://bugs.webkit.org/show_bug.cgi?id=51664
310
311         RoundedIntRect is a pair of rect and four IntSize objects which represent
312         corner radii of the rectangle. IntSize is grouped into RoundedIntRect::Radii.
313         Now RenderStyle::getRoundedBorderFor() and RenderStyle::getRoundedInnerBorderWithBorderWidths()
314         return RoundedIntRect and GraphicsContext::addRoundedRectClip(), GraphicsContext::fillRoundedRect()
315         and other functions accept RoundedIntRect as an argument.
316
317         No new tests. No behavioral change.
318
319         * Android.mk:
320         * CMakeLists.txt:
321         * WebCore.gypi:
322         * WebCore.pro:
323         * WebCore.xcodeproj/project.pbxproj:
324         * platform/graphics/GraphicsContext.cpp:
325         (WebCore::GraphicsContext::addRoundedRectClip):
326         (WebCore::GraphicsContext::clipOutRoundedRect):
327         (WebCore::GraphicsContext::fillRoundedRect):
328         * platform/graphics/GraphicsContext.h:
329         * platform/graphics/RoundedIntRect.cpp: Added.
330         (WebCore::RoundedIntRect::Radii::isZero):
331         (WebCore::RoundedIntRect::Radii::scale):
332         (WebCore::RoundedIntRect::Radii::expand):
333         (WebCore::RoundedIntRect::Radii::includeLogicalEdges):
334         (WebCore::RoundedIntRect::Radii::excludeLogicalEdges):
335         (WebCore::RoundedIntRect::RoundedIntRect):
336         (WebCore::RoundedIntRect::includeLogicalEdges):
337         (WebCore::RoundedIntRect::excludeLogicalEdges):
338         * platform/graphics/RoundedIntRect.h: Added.
339         (WebCore::RoundedIntRect::Radii::Radii):
340         (WebCore::RoundedIntRect::Radii::setTopLeft):
341         (WebCore::RoundedIntRect::Radii::setTopRight):
342         (WebCore::RoundedIntRect::Radii::setBottomLeft):
343         (WebCore::RoundedIntRect::Radii::setBottomRight):
344         (WebCore::RoundedIntRect::Radii::topLeft):
345         (WebCore::RoundedIntRect::Radii::topRight):
346         (WebCore::RoundedIntRect::Radii::bottomLeft):
347         (WebCore::RoundedIntRect::Radii::bottomRight):
348         (WebCore::RoundedIntRect::Radii::expand):
349         (WebCore::RoundedIntRect::Radii::shrink):
350         (WebCore::RoundedIntRect::rect):
351         (WebCore::RoundedIntRect::radii):
352         (WebCore::RoundedIntRect::isRounded):
353         (WebCore::RoundedIntRect::isEmpty):
354         (WebCore::RoundedIntRect::setRect):
355         (WebCore::RoundedIntRect::setRadii):
356         (WebCore::RoundedIntRect::move):
357         (WebCore::RoundedIntRect::inflate):
358         (WebCore::RoundedIntRect::inflateWithRadii):
359         (WebCore::RoundedIntRect::expandRadii):
360         (WebCore::RoundedIntRect::shrinkRadii):
361         * rendering/RenderBox.cpp:
362         (WebCore::RenderBox::pushContentsClip):
363         * rendering/RenderBoxModelObject.cpp:
364         (WebCore::RenderBoxModelObject::paintFillLayerExtended):
365         (WebCore::RenderBoxModelObject::paintBorder):
366         (WebCore::RenderBoxModelObject::clipBorderSidePolygon):
367         (WebCore::RenderBoxModelObject::paintBoxShadow):
368         * rendering/RenderBoxModelObject.h:
369         * rendering/RenderObject.cpp:
370         (WebCore::RenderObject::drawBoxSideFromPath):
371         * rendering/RenderReplaced.cpp:
372         (WebCore::RenderReplaced::paint):
373         * rendering/RenderThemeChromiumWin.cpp:
374         (WebCore::RenderThemeChromiumWin::paintTextFieldInternal):
375         * rendering/RenderThemeMac.mm:
376         (WebCore::RenderThemeMac::paintMenuListButtonGradients):
377         (WebCore::RenderThemeMac::paintSliderTrack):
378         * rendering/RenderThemeSafari.cpp:
379         (WebCore::RenderThemeSafari::paintMenuListButtonGradients):
380         (WebCore::RenderThemeSafari::paintSliderTrack):
381         * rendering/RenderThemeWinCE.cpp:
382         (WebCore::RenderThemeWinCE::paintSearchFieldCancelButton):
383         * rendering/RenderWidget.cpp:
384         (WebCore::RenderWidget::paint):
385         * rendering/style/BorderData.h:
386         * rendering/style/RenderStyle.cpp:
387         (WebCore::calcRadiiFor):
388         (WebCore::calcConstraintScaleFor):
389         (WebCore::RenderStyle::getRoundedBorderFor):
390         (WebCore::RenderStyle::getRoundedInnerBorderWithBorderWidths):
391         * rendering/style/RenderStyle.h:
392         (WebCore::InheritedFlags::setBorderRadius):
393
394 2011-01-18  Victoria Kirst  <vrk@chromium.org>
395
396         Reviewed by Kenneth Russell.
397
398         [chromium] Adding support for YV16 video frame formats.
399         https://bugs.webkit.org/show_bug.cgi?id=52345
400
401         * platform/graphics/chromium/VideoLayerChromium.cpp:
402         (WebCore::VideoLayerChromium::determineTextureFormat):
403         (WebCore::VideoLayerChromium::draw):
404
405 2011-01-18  David Hyatt  <hyatt@apple.com>
406
407         Reviewed by Dan Bernstein.
408
409         <rdar://problem/8479998> REGRESSION (r67660): broken button layout at devforums.apple.com
410         
411         Exclude floating objects from shrinking to avoid floats.  They should never do this.  Timing-related bugs could
412         occur as a result of this mistake, and the change to rewrite pagination to defer layout of floats until they
413         got encountered on the correct line exposed this issue.
414
415         Added /fast/block/float/float-overflow-hidden-containing-block-width.html.
416
417         * rendering/RenderBox.cpp:
418         (WebCore::RenderBox::shrinkToAvoidFloats):
419
420 2011-01-18  Zhenyao Mo  <zmo@google.com>
421
422         Reviewed by Kenneth Russell.
423
424         Make CheckedInt<long> and CheckedInt<unsigned long> work
425         https://bugs.webkit.org/show_bug.cgi?id=52401
426
427         * html/canvas/CheckedInt.h:
428         (WebCore::CheckedInt::CheckedInt): Merge with the patch provided by Benoit Jacob.
429         * html/canvas/WebGLBuffer.cpp:
430         (WebCore::WebGLBuffer::associateBufferDataImpl): Use CheckedInt<long> instead of CheckedInt<int>.
431         (WebCore::WebGLBuffer::associateBufferSubDataImpl): Ditto.
432
433 2011-01-18  Kenneth Russell  <kbr@google.com>
434
435         Reviewed by David Levin.
436
437         Must strip comments from WebGL shaders before enforcing character set
438         https://bugs.webkit.org/show_bug.cgi?id=52390
439
440         Strip comments from incoming shaders, preserving line numbers,
441         before validating that they conform to the ESSL character set.
442         Revert changes from http://trac.webkit.org/changeset/75735 which
443         allowed invalid characters to be passed to certain APIs.
444
445         Tested with WebGL layout tests, conformance test suite and several
446         WebGL demos in both Safari and Chromium.
447
448         * html/canvas/WebGLRenderingContext.cpp:
449         (WebCore::StripComments::StripComments::process):
450         (WebCore::WebGLRenderingContext::shaderSource):
451
452 2011-01-18  Ryosuke Niwa  <rniwa@webkit.org>
453
454         Reviewed by Eric Seidel.
455
456         Stop instantiating legacy editing positions in DeleteSelectionCommand, IndentOudentCommand,
457         InsertLineBreakCommand, InsertListCOmmand.cpp, InsertParagraphSeparatorCommand, and htmlediting.cpp
458         https://bugs.webkit.org/show_bug.cgi?id=52644
459
460         This is a cleanup to stop instantiating legacy editing positions in the following tests.
461         firstDeepEditingPositionForNode and lastDeepEditingPositionForNode in htmlediting.h are not updated
462         because doing so requires significant code changes. They are tracked on the bug 52642.
463
464         * editing/DeleteSelectionCommand.cpp:
465         (WebCore::DeleteSelectionCommand::initializeStartEnd):
466         (WebCore::updatePositionForNodeRemoval):
467         (WebCore::DeleteSelectionCommand::removeNode):
468         (WebCore::updatePositionForTextRemoval):
469         (WebCore::DeleteSelectionCommand::handleGeneralDelete):
470         * editing/IndentOutdentCommand.cpp:
471         (WebCore::IndentOutdentCommand::outdentParagraph):
472         * editing/InsertLineBreakCommand.cpp:
473         (WebCore::InsertLineBreakCommand::doApply):
474         * editing/InsertListCommand.cpp:
475         (WebCore::InsertListCommand::doApplyForSingleParagraph):
476         (WebCore::InsertListCommand::unlistifyParagraph):
477         (WebCore::InsertListCommand::listifyParagraph):
478         * editing/InsertParagraphSeparatorCommand.cpp:
479         (WebCore::InsertParagraphSeparatorCommand::doApply):
480         * editing/htmlediting.cpp:
481         (WebCore::enclosingBlock):
482         (WebCore::enclosingList):
483         (WebCore::enclosingListChild):
484         (WebCore::indexForVisiblePosition):
485         (WebCore::isNodeVisiblyContainedWithin):
486         (WebCore::avoidIntersectionWithNode):
487
488 2011-01-18  Benjamin Kalman  <kalman@chromium.org>
489
490         Reviewed by Ryosuke Niwa.
491
492         Tweak style in visible_units.cpp and TextIterator.cpp in preparation for another patch
493         https://bugs.webkit.org/show_bug.cgi?id=52610
494
495         This is a purely aesthetic change.
496
497         * editing/TextIterator.cpp:
498         (WebCore::SimplifiedBackwardsTextIterator::advance):
499         * editing/visible_units.cpp:
500         (WebCore::previousBoundary):
501
502 2011-01-18  Adam Klein  <adamk@chromium.org>
503
504         Reviewed by Darin Fisher.
505
506         [Chromium] Replace ChromiumBridge::widgetSetCursor with ChromeClient::setCursor
507         https://bugs.webkit.org/show_bug.cgi?id=42236
508
509         * platform/chromium/ChromiumBridge.h:
510         * platform/chromium/WidgetChromium.cpp:
511         (WebCore::Widget::setCursor):
512
513 2011-01-18  Chris Fleizach  <cfleizach@apple.com>
514
515         Reviewed by Darin Adler.
516
517         REGRESSION: A problem with Voiceover and finding links
518         https://bugs.webkit.org/show_bug.cgi?id=52324
519
520         Fallout from recent change to make WebCore return its own scroll view.
521            1) There were two scroll views in the hierarchy, one which no needed to be ignored.
522            2) Hit tests for sub frames needed to be offset.
523            3) The check for whether an attachment is ignored must happen earlier than using
524               the helpText to determine if an element should be ignored.
525
526         Test: platform/mac/accessibility/iframe-with-title-correct-hierarchy.html
527
528         * accessibility/AccessibilityObject.cpp:
529         (WebCore::AccessibilityObject::elementAccessibilityHitTest):
530         * accessibility/AccessibilityRenderObject.cpp:
531         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
532         * accessibility/mac/AccessibilityObjectWrapper.mm:
533         (-[AccessibilityObjectWrapper scrollViewParent]):
534
535 2011-01-18  Adam Roben  <aroben@apple.com>
536
537         Call alternate CFHTTPCookie functions if available
538
539         Fixes <http://webkit.org/b/52637> <rdar://problem/8878984>.
540
541         Reviewed by Darin Adler.
542
543         * platform/network/cf/CookieJarCFNet.cpp: Added soft-linking macros to
544         pull in the alternate CFHTTPCookie functions.
545
546         (WebCore::cookieDomain):
547         (WebCore::cookieExpirationTime):
548         (WebCore::cookieName):
549         (WebCore::cookiePath):
550         (WebCore::cookieValue):
551         Added these wrappers around the CFHTTPCookie functions. We call the
552         alternate functions if they exist, otherwise fall back to the current
553         functions.
554
555         (WebCore::filterCookies):
556         (WebCore::getRawCookies):
557         (WebCore::deleteCookie):
558         Changed to use the wrapper functions.
559
560 2011-01-18  Martin Robinson  <mrobinson@igalia.com>
561
562         Reviewed by Eric Seidel.
563
564         [GTK] Filenames are converted to URLs during edit drags
565         https://bugs.webkit.org/show_bug.cgi?id=52096
566
567         * platform/gtk/DragDataGtk.cpp: Only advertise and deliver filenames as URLs if the
568         conversion policy allows it.
569         (WebCore::DragData::containsURL): Ditto.
570         (WebCore::DragData::asURL): Ditto.
571
572 2011-01-18  Helder Correia  <helder@sencha.com>
573
574         Reviewed by Kenneth Rohde Christiansen.
575
576         [Qt] Incorrect shadow alpha with semi-transparent solid fillStyle
577         https://bugs.webkit.org/show_bug.cgi?id=52611
578
579         This is related to bug 52559. The shadow color alpha must be multiplied
580         by the context brush alpha.
581
582         Test: fast/canvas/canvas-fillPath-alpha-shadow.html
583
584         * platform/graphics/qt/GraphicsContextQt.cpp:
585         (WebCore::GraphicsContext::fillPath):
586
587 2011-01-18  Andrey Kosyakov  <caseq@chromium.org>
588
589         Reviewed by Yury Semikhatsky.
590
591         Web Inspector: fail resource.requestContent() immediately for WebSocket resources
592         https://bugs.webkit.org/show_bug.cgi?id=52628
593
594         * English.lproj/localizedStrings.js: Rename WebSocket -> WebSockets in resource catetegories (rest are in plural, too)
595         * inspector/front-end/ExtensionServer.js: Do not expose webInspector.resources.Types in extensions API (obsolete)
596         (WebInspector.ExtensionServer.prototype._buildExtensionAPIInjectedScript):
597         * inspector/front-end/Resource.js:
598         (WebInspector.Resource.Type.toUIString): Remove ResourceType.Media as it's not used.
599         (WebInspector.Resource.Type.toString): ditto.
600         (WebInspector.Resource.prototype.requestContent): Fail immediately for WebSocket resources.
601         * inspector/front-end/inspector.js: Rename WebSocket -> WebSockets in resource catetegories (rest are in plural, too)
602
603 2011-01-18  Helder Correia  <helder@sencha.com>
604
605         Reviewed by Dirk Schulze.
606
607         REGRESSION(75139): SVG gradients are not applied to texts
608         https://bugs.webkit.org/show_bug.cgi?id=52531
609
610         r75139 caused a problem with filling and stroking text with a gradient
611         fill in SVG. The order of CGContextConcatCTM and CGContextClipToRect
612         was mixed up.
613
614         Test: svg/css/text-gradient-shadow.svg
615
616         * platform/graphics/cg/GraphicsContextCG.cpp:
617         (WebCore::GraphicsContext::fillRect):
618
619 2011-01-18  Leo Yang  <leo.yang@torchmobile.com.cn>
620
621         Reviewed by Nikolas Zimmermann.
622
623         Unable to indirectly animate visibility of SVGUseElement
624         https://bugs.webkit.org/show_bug.cgi?id=50240
625
626         SVGUseElement::recalcStyle should take care of its shadow
627         tree's style recalculation when it is called with change >= Inherit
628         or when childNeedsStyleRecalc() is true because in these two
629         cases needStyleRecalc() may not be true.
630
631         Test: svg/custom/use-inherit-style.svg
632
633         * svg/SVGUseElement.cpp:
634         (WebCore::SVGUseElement::recalcStyle):
635
636 2011-01-18  Pavel Podivilov  <podivilov@chromium.org>
637
638         Reviewed by Yury Semikhatsky.
639
640         Web Inspector: provide script length to frontend.
641         https://bugs.webkit.org/show_bug.cgi?id=52620
642
643         * inspector/Inspector.idl:
644         * inspector/InspectorDebuggerAgent.cpp:
645         (WebCore::InspectorDebuggerAgent::didParseSource):
646         * inspector/front-end/DebuggerModel.js:
647         (WebInspector.DebuggerModel.prototype._parsedScriptSource):
648         (WebInspector.DebuggerDispatcher.prototype.parsedScriptSource):
649         * inspector/front-end/Script.js:
650         (WebInspector.Script):
651
652 2011-01-18  Zoltan Herczeg  <zherczeg@webkit.org>
653
654         Rubber-stamped by Csaba Osztrogonác
655
656         Fixing ChangeLog
657
658         Removing a line introduced by
659         http://trac.webkit.org/changeset/75743/trunk/Source/WebCore/ChangeLog
660         Removing an unnecessary space before a time stamp.
661
662 2011-01-17  Andrey Kosyakov  <caseq@chromium.org>
663
664         Reviewed by Yury Semikhatsky.
665
666         Web Inspector: [refactoring] use events to notify NetworkManager clients
667         https://bugs.webkit.org/show_bug.cgi?id=52588
668
669         * inspector/front-end/AuditLauncherView.js:
670         (WebInspector.AuditLauncherView): Do not expose public interface to resource count. Do not reset resource count upon reset().
671         (WebInspector.AuditLauncherView.prototype._resetResourceCount):
672         (WebInspector.AuditLauncherView.prototype._onResourceStarted):
673         (WebInspector.AuditLauncherView.prototype._onResourceFinished):
674         * inspector/front-end/AuditsPanel.js: Do not expose public interface to resource start/finish events.
675         * inspector/front-end/ExtensionServer.js:
676         (WebInspector.ExtensionServer):
677         (WebInspector.ExtensionServer.prototype._notifyResourceFinished):
678         (WebInspector.ExtensionServer.prototype.initExtensions):
679         * inspector/front-end/NetworkManager.js: Dispatch events rather than directly call clients.
680         (WebInspector.NetworkManager):
681         (WebInspector.NetworkManager.prototype.willSendRequest):
682         (WebInspector.NetworkManager.prototype.markResourceAsCached):
683         (WebInspector.NetworkManager.prototype.didReceiveResponse):
684         (WebInspector.NetworkManager.prototype.didReceiveContentLength):
685         (WebInspector.NetworkManager.prototype.setInitialContent):
686         (WebInspector.NetworkManager.prototype.didCommitLoadForFrame):
687         (WebInspector.NetworkManager.prototype.willSendWebSocketHandshakeRequest):
688         (WebInspector.NetworkManager.prototype.didReceiveWebSocketHandshakeResponse):
689         (WebInspector.NetworkManager.prototype._startResource):
690         (WebInspector.NetworkManager.prototype._finishResource):
691         * inspector/front-end/NetworkPanel.js:
692         (WebInspector.NetworkPanel):
693         (WebInspector.NetworkPanel.prototype._onResourceStarted):
694         (WebInspector.NetworkPanel.prototype._appendResource):
695         (WebInspector.NetworkPanel.prototype._onResourceUpdated):
696         (WebInspector.NetworkPanel.prototype._refreshResource):
697         (WebInspector.NetworkPanel.prototype._onMainResourceChanged):
698         * inspector/front-end/ResourcesPanel.js:
699         (WebInspector.ResourcesPanel):
700         (WebInspector.ResourcesPanel.prototype._refreshResource):
701
702 2011-01-18  Pavel Feldman  <pfeldman@chromium.org>
703
704         Reviewed by Yury Semikhatsky.
705
706         Web Inspector: preserve pause on exception state in settings.
707         https://bugs.webkit.org/show_bug.cgi?id=52619
708
709         * inspector/InspectorController.cpp:
710         (WebCore::InspectorController::getInspectorState):
711         * inspector/InspectorDebuggerAgent.cpp:
712         (WebCore::InspectorDebuggerAgent::setPauseOnExceptionsState):
713         * inspector/InspectorDebuggerAgent.h:
714         * inspector/front-end/ScriptsPanel.js:
715         (WebInspector.ScriptsPanel):
716         (WebInspector.ScriptsPanel.prototype.debuggerWasEnabled):
717         (WebInspector.ScriptsPanel.prototype._updatePauseOnExceptionsState):
718         (WebInspector.ScriptsPanel.prototype._togglePauseOnExceptions):
719         (WebInspector.ScriptsPanel.prototype._setPauseOnExceptions):
720         * inspector/front-end/Settings.js:
721         (WebInspector.Settings):
722         * inspector/front-end/inspector.js:
723         (WebInspector.doLoadedDone.populateInspectorState):
724
725 2011-01-18  Pavel Podivilov  <podivilov@chromium.org>
726
727         Reviewed by Yury Semikhatsky.
728
729         Web Inspector: [REGRESSION] JavaScript exceptions aren't shown in source frame.
730         https://bugs.webkit.org/show_bug.cgi?id=52623
731
732         * inspector/front-end/ConsoleView.js:
733         (WebInspector.ConsoleMessage):
734         (WebInspector.ConsoleMessage.prototype._formatMessage):
735
736 2011-01-18  Pavel Feldman  <pfeldman@chromium.org>
737
738         Revert r76017. No need to guard InspectorInstrumentation:: in WebCore.
739
740         * page/Page.cpp:
741         (WebCore::networkStateChanged):
742
743 2011-01-18  Konstantin Tokarev  <annulen@yandex.ru>
744
745         Reviewed by Kent Tamura.
746
747         Fixed compilation when Inspector is disabled
748         https://bugs.webkit.org/show_bug.cgi?id=52564
749
750         * page/Page.cpp:
751         (WebCore::networkStateChanged): Added ENABLE(INSPECTOR) guard
752
753 2011-01-18  MORITA Hajime  <morrita@google.com>
754
755         Unreviewed, rolling out r76004, r76005, r76007, and r76011.
756         http://trac.webkit.org/changeset/76004
757         http://trac.webkit.org/changeset/76005
758         http://trac.webkit.org/changeset/76007
759         http://trac.webkit.org/changeset/76011
760         https://bugs.webkit.org/show_bug.cgi?id=51664
761
762         The r76004 broke pixel tests.
763         (The failure was missed due to the tolerance.)
764
765         * Android.mk:
766         * CMakeLists.txt:
767         * GNUmakefile.am:
768         * WebCore.gypi:
769         * WebCore.pro:
770         * WebCore.vcproj/WebCore.vcproj:
771         * WebCore.xcodeproj/project.pbxproj:
772         * platform/graphics/GraphicsContext.cpp:
773         (WebCore::GraphicsContext::addRoundedRectClip):
774         (WebCore::GraphicsContext::clipOutRoundedRect):
775         * platform/graphics/GraphicsContext.h:
776         * platform/graphics/RoundedIntRect.cpp: Removed.
777         * platform/graphics/RoundedIntRect.h: Removed.
778         * rendering/RenderBox.cpp:
779         (WebCore::RenderBox::pushContentsClip):
780         * rendering/RenderBoxModelObject.cpp:
781         (WebCore::RenderBoxModelObject::paintFillLayerExtended):
782         (WebCore::RenderBoxModelObject::paintBorder):
783         (WebCore::RenderBoxModelObject::clipBorderSidePolygon):
784         (WebCore::uniformlyExpandBorderRadii):
785         (WebCore::RenderBoxModelObject::paintBoxShadow):
786         * rendering/RenderBoxModelObject.h:
787         * rendering/RenderObject.cpp:
788         (WebCore::RenderObject::drawBoxSideFromPath):
789         * rendering/RenderReplaced.cpp:
790         (WebCore::RenderReplaced::paint):
791         * rendering/RenderThemeChromiumWin.cpp:
792         (WebCore::RenderThemeChromiumWin::paintTextFieldInternal):
793         * rendering/RenderThemeMac.mm:
794         (WebCore::RenderThemeMac::paintMenuListButtonGradients):
795         (WebCore::RenderThemeMac::paintSliderTrack):
796         * rendering/RenderThemeSafari.cpp:
797         (WebCore::RenderThemeSafari::paintMenuListButtonGradients):
798         (WebCore::RenderThemeSafari::paintSliderTrack):
799         * rendering/RenderThemeWinCE.cpp:
800         (WebCore::RenderThemeWinCE::paintSearchFieldCancelButton):
801         * rendering/RenderWidget.cpp:
802         (WebCore::RenderWidget::paint):
803         * rendering/style/BorderData.h:
804         * rendering/style/RenderStyle.cpp:
805         (WebCore::constrainCornerRadiiForRect):
806         (WebCore::RenderStyle::getBorderRadiiForRect):
807         (WebCore::RenderStyle::getInnerBorderRadiiForRectWithBorderWidths):
808         * rendering/style/RenderStyle.h:
809
810 2011-01-17  Pavel Podivilov  <podivilov@chromium.org>
811
812         Reviewed by Yury Semikhatsky.
813
814         Web Inspector: add source column field to debugger call frames.
815         https://bugs.webkit.org/show_bug.cgi?id=52443
816
817         * bindings/js/JavaScriptCallFrame.cpp:
818         (WebCore::JavaScriptCallFrame::JavaScriptCallFrame):
819         * bindings/js/JavaScriptCallFrame.h:
820         (WebCore::JavaScriptCallFrame::create):
821         (WebCore::JavaScriptCallFrame::line):
822         (WebCore::JavaScriptCallFrame::column):
823         (WebCore::JavaScriptCallFrame::update):
824         * bindings/js/ScriptDebugServer.cpp:
825         (WebCore::ScriptDebugServer::createCallFrameAndPauseIfNeeded):
826         (WebCore::ScriptDebugServer::updateCallFrameAndPauseIfNeeded):
827         (WebCore::ScriptDebugServer::callEvent):
828         (WebCore::ScriptDebugServer::atStatement):
829         (WebCore::ScriptDebugServer::returnEvent):
830         (WebCore::ScriptDebugServer::exception):
831         (WebCore::ScriptDebugServer::willExecuteProgram):
832         (WebCore::ScriptDebugServer::didExecuteProgram):
833         (WebCore::ScriptDebugServer::didReachBreakpoint):
834         * bindings/js/ScriptDebugServer.h:
835         * bindings/v8/DebuggerScript.js:
836         ():
837         * bindings/v8/JavaScriptCallFrame.cpp:
838         (WebCore::JavaScriptCallFrame::column):
839         * bindings/v8/JavaScriptCallFrame.h:
840         * inspector/InjectedScriptSource.js:
841         ():
842         * inspector/JavaScriptCallFrame.idl:
843
844 2011-01-18  Antti Koivisto  <antti@apple.com>
845
846         Reviewed by Dave Hyatt.
847
848         https://bugs.webkit.org/show_bug.cgi?id=52370
849         <rdar://problem/8856808>
850         Style sharing optimization no longer works on major web sites
851         
852         The code in CSSStyleSelector::locateSharedStyle() that tries to share style information between element has been defeated 
853         by widespread use of certain CSS selectors (:first-child pseudo class and similar). The current implementation disables
854         the sharing optimization for the whole page if one of these constructs is seen in any style sheet used by the page.  
855         
856         This patch gets the style sharing back to 25-40% range on most web sites.
857
858         * css/CSSMutableStyleDeclaration.h:
859         (WebCore::CSSMutableStyleDeclaration::propertiesEqual):
860             
861             Needed to improve equality checking in NamedNodeMap::mappedMapsEquivalent.
862         
863         * css/CSSSelector.h:
864         (WebCore::CSSSelector::isSiblingSelector):
865         
866             Test for selectors that are affected by the sibling elements.
867         
868         * css/CSSStyleSelector.cpp:
869         (WebCore::elementCanUseSimpleDefaultStyle):
870         (WebCore::collectSiblingRulesInDefaultStyle):
871         (WebCore::assertNoSiblingRulesInDefaultStyle):
872             
873             Extract sibling rules from the MathML default stylesheet. 
874             Assert that no other default stylesheet has them.
875             
876         (WebCore::CSSStyleSelector::CSSStyleSelector):
877         (WebCore::CSSStyleSelector::locateCousinList):
878         (WebCore::CSSStyleSelector::matchesSiblingRules):
879         (WebCore::CSSStyleSelector::canShareStyleWithElement):
880         (WebCore::CSSStyleSelector::locateSharedStyle):
881         (WebCore::CSSStyleSelector::styleForElement):
882         (WebCore::collectIdsAndSiblingRulesFromList):
883         (WebCore::CSSRuleSet::collectIdsAndSiblingRules):
884
885             Track sibling rules and ids used in the stylesheets to allow much more fine-grained rejection of cases
886             where style sharing can't be used.
887
888         * css/CSSStyleSelector.h:
889         * dom/NamedNodeMap.cpp:
890         (WebCore::NamedNodeMap::mappedMapsEquivalent):
891             
892             Check also for CSSValue mutation from DOM. 
893             
894         * mathml/MathMLMathElement.cpp:
895         (WebCore::MathMLMathElement::insertedIntoDocument):
896         * mathml/MathMLMathElement.h:
897         
898             MathML default style sheet has sibling rules which don't get noticed by the normal document
899             stylesheet parsing.
900         
901         * rendering/style/RenderStyle.h:
902         (WebCore::InheritedFlags::setFirstChildState):
903         (WebCore::InheritedFlags::setLastChildState):
904         (WebCore::InheritedFlags::setChildIndex):
905         
906             These all make style non-shareable (unique).
907
908 2011-01-18  MORITA Hajime  <morrita@google.com>
909
910         Unreviewed crash fix on release builds.
911
912         * rendering/RenderBoxModelObject.cpp:
913         (WebCore::RenderBoxModelObject::paintFillLayerExtended):
914
915 2011-01-18  Pavel Podivilov  <podivilov@chromium.org>
916
917         Unreviewed, update localizedStrings.js.
918
919         * English.lproj/localizedStrings.js:
920
921 2011-01-11  Pavel Podivilov  <podivilov@chromium.org>
922
923         Reviewed by Pavel Feldman.
924
925         Web Inspector: implement script beautifier prototype.
926         https://bugs.webkit.org/show_bug.cgi?id=51588
927
928         * WebCore.gypi:
929         * WebCore.vcproj/WebCore.vcproj:
930         * inspector/front-end/ScriptFormatter.js: Added.
931         (WebInspector.ScriptFormatter): Implements JavaScript source beautification and conversion between original and
932         formatted line numbers
933         (WebInspector.ScriptFormatter.findLineEndings):
934         (WebInspector.ScriptFormatter.locationToPosition):
935         (WebInspector.ScriptFormatter.positionToLocation):
936         (WebInspector.ScriptFormatter.upperBound):
937         (WebInspector.ScriptFormatter.prototype.format):
938         (WebInspector.ScriptFormatter.prototype.originalLineNumberToFormattedLineNumber):
939         (WebInspector.ScriptFormatter.prototype.formattedLineNumberToOriginalLineNumber):
940         (WebInspector.ScriptFormatter.prototype.originalPositionToFormattedLineNumber):
941         (WebInspector.ScriptFormatter.prototype.formattedLineNumberToOriginalPosition):
942         (WebInspector.ScriptFormatter.prototype._convertPosition):
943         * inspector/front-end/ScriptsPanel.js:
944         (WebInspector.ScriptsPanel):
945         (WebInspector.ScriptsPanel.prototype._clearCurrentExecutionLine):
946         (WebInspector.ScriptsPanel.prototype._callFrameSelected):
947         (WebInspector.ScriptsPanel.prototype._formatScript):
948         * inspector/front-end/SourceFrame.js: Convert original line numbers to UI line numbers and vice versa
949         * inspector/front-end/WebKit.qrc:
950         * inspector/front-end/inspector.html:
951
952 2011-01-18  Philippe Normand  <pnormand@igalia.com>
953
954         Unreviewed, GTK build fix as follow-up of r76004.
955
956         * GNUmakefile.am: Include RoundedIntRect files in the build
957
958 2011-01-18  Philippe Normand  <pnormand@igalia.com>
959
960         Unreviewed, rolling out r76002.
961         http://trac.webkit.org/changeset/76002
962         https://bugs.webkit.org/show_bug.cgi?id=49790
963
964         breaks a bunch of fast/forms tests on mac and GTK
965
966         * html/HTMLOptionElement.cpp:
967         (WebCore::HTMLOptionElement::setRenderStyle):
968
969 2011-01-18 MORITA Hajime <morrita@google.com>
970
971         Unreviewed windows build fix.
972
973         * WebCore.vcproj/WebCore.vcproj:
974
975 2011-01-17  MORITA Hajime  <morrita@google.com>
976
977         Reviewed by Simon Fraser.
978
979         Refactoring: Extract RoundedIntRect class
980         https://bugs.webkit.org/show_bug.cgi?id=51664
981
982         RoundedIntRect is a pair of rect and four IntSize objects which represent
983         corner radii of the rectangle. IntSize is grouped into RoundedIntRect::Radii.
984         Now RenderStyle::getRoundedBorderFor() and RenderStyle::getRoundedInnerBorderWithBorderWidths()
985         return RoundedIntRect and GraphicsContext::addRoundedRectClip(), GraphicsContext::fillRoundedRect()
986         and other functions accept RoundedIntRect as an argument.
987
988         No new tests. No behavioral change.
989
990         * Android.mk:
991         * CMakeLists.txt:
992         * WebCore.gypi:
993         * WebCore.pro:
994         * WebCore.xcodeproj/project.pbxproj:
995         * platform/graphics/GraphicsContext.cpp:
996         (WebCore::GraphicsContext::addRoundedRectClip):
997         (WebCore::GraphicsContext::clipOutRoundedRect):
998         (WebCore::GraphicsContext::fillRoundedRect):
999         * platform/graphics/GraphicsContext.h:
1000         * platform/graphics/RoundedIntRect.cpp: Added.
1001         (WebCore::RoundedIntRect::Radii::isZero):
1002         (WebCore::RoundedIntRect::Radii::scale):
1003         (WebCore::RoundedIntRect::Radii::expand):
1004         (WebCore::RoundedIntRect::Radii::includeLogicalEdges):
1005         (WebCore::RoundedIntRect::Radii::excludeLogicalEdges):
1006         (WebCore::RoundedIntRect::RoundedIntRect):
1007         (WebCore::RoundedIntRect::includeLogicalEdges):
1008         (WebCore::RoundedIntRect::excludeLogicalEdges):
1009         * platform/graphics/RoundedIntRect.h: Added.
1010         (WebCore::RoundedIntRect::Radii::Radii):
1011         (WebCore::RoundedIntRect::Radii::setTopLeft):
1012         (WebCore::RoundedIntRect::Radii::setTopRight):
1013         (WebCore::RoundedIntRect::Radii::setBottomLeft):
1014         (WebCore::RoundedIntRect::Radii::setBottomRight):
1015         (WebCore::RoundedIntRect::Radii::topLeft):
1016         (WebCore::RoundedIntRect::Radii::topRight):
1017         (WebCore::RoundedIntRect::Radii::bottomLeft):
1018         (WebCore::RoundedIntRect::Radii::bottomRight):
1019         (WebCore::RoundedIntRect::Radii::expand):
1020         (WebCore::RoundedIntRect::Radii::shrink):
1021         (WebCore::RoundedIntRect::location):
1022         (WebCore::RoundedIntRect::size):
1023         (WebCore::RoundedIntRect::x):
1024         (WebCore::RoundedIntRect::y):
1025         (WebCore::RoundedIntRect::width):
1026         (WebCore::RoundedIntRect::height):
1027         (WebCore::RoundedIntRect::right):
1028         (WebCore::RoundedIntRect::bottom):
1029         (WebCore::RoundedIntRect::rect):
1030         (WebCore::RoundedIntRect::radii):
1031         (WebCore::RoundedIntRect::isRounded):
1032         (WebCore::RoundedIntRect::isEmpty):
1033         (WebCore::RoundedIntRect::setRect):
1034         (WebCore::RoundedIntRect::setRadii):
1035         (WebCore::RoundedIntRect::move):
1036         (WebCore::RoundedIntRect::inflate):
1037         (WebCore::RoundedIntRect::inflateWithRadii):
1038         (WebCore::RoundedIntRect::expandRadii):
1039         (WebCore::RoundedIntRect::shrinkRadii):
1040         * rendering/RenderBox.cpp:
1041         (WebCore::RenderBox::pushContentsClip):
1042         * rendering/RenderBoxModelObject.cpp:
1043         (WebCore::RenderBoxModelObject::paintFillLayerExtended):
1044         (WebCore::RenderBoxModelObject::paintBorder):
1045         (WebCore::RenderBoxModelObject::clipBorderSidePolygon):
1046         (WebCore::RenderBoxModelObject::paintBoxShadow):
1047         * rendering/RenderBoxModelObject.h:
1048         * rendering/RenderObject.cpp:
1049         (WebCore::RenderObject::drawBoxSideFromPath):
1050         * rendering/RenderReplaced.cpp:
1051         (WebCore::RenderReplaced::paint):
1052         * rendering/RenderThemeChromiumWin.cpp:
1053         (WebCore::RenderThemeChromiumWin::paintTextFieldInternal):
1054         * rendering/RenderThemeMac.mm:
1055         (WebCore::RenderThemeMac::paintMenuListButtonGradients):
1056         (WebCore::RenderThemeMac::paintSliderTrack):
1057         * rendering/RenderThemeSafari.cpp:
1058         (WebCore::RenderThemeSafari::paintMenuListButtonGradients):
1059         (WebCore::RenderThemeSafari::paintSliderTrack):
1060         * rendering/RenderThemeWinCE.cpp:
1061         (WebCore::RenderThemeWinCE::paintSearchFieldCancelButton):
1062         * rendering/RenderWidget.cpp:
1063         (WebCore::RenderWidget::paint):
1064         * rendering/style/BorderData.h:
1065         * rendering/style/RenderStyle.cpp:
1066         (WebCore::calcRadiiFor):
1067         (WebCore::calcConstraintScaleFor):
1068         (WebCore::RenderStyle::getRoundedBorderFor):
1069         (WebCore::RenderStyle::getRoundedInnerBorderWithBorderWidths):
1070         * rendering/style/RenderStyle.h:
1071         (WebCore::InheritedFlags::setBorderRadius):
1072
1073 2011-01-17  Rob Buis  <rwlbuis@gmail.com>
1074
1075         Reviewed by Kent Tamura.
1076
1077         Color changes to option elements in a select multiple aren't drawn immediately
1078         https://bugs.webkit.org/show_bug.cgi?id=49790
1079
1080         Redirect style changes on <option> element to the owner <select> element.
1081
1082         Tests: fast/forms/select-option-background-color-change.html
1083                fast/forms/select-option-color-change.html
1084                fast/forms/select-option-visibility-change.html
1085
1086         * html/HTMLOptionElement.cpp:
1087         (WebCore::HTMLOptionElement::setRenderStyle):
1088
1089 2011-01-17  MORITA Hajime  <morrita@google.com>
1090
1091         Unreviewed, rolling out r75995.
1092         http://trac.webkit.org/changeset/75995
1093         https://bugs.webkit.org/show_bug.cgi?id=51914
1094
1095         Causes assertion failures.
1096
1097         * dom/Element.cpp:
1098         (WebCore::Element::shadowRoot):
1099         (WebCore::Element::setShadowRoot):
1100         (WebCore::Element::removeShadowRoot):
1101         * dom/ElementRareData.h:
1102         (WebCore::ElementRareData::ElementRareData):
1103
1104 2011-01-17  MORITA Hajime  <morrita@google.com>
1105
1106         Unreviewed, rolling out r75999.
1107         http://trac.webkit.org/changeset/75999
1108
1109         * dom/Element.cpp:
1110         (WebCore::Element::removeShadowRoot):
1111
1112 2011-01-17 MORITA Hajime  <morrita@google.com>
1113
1114         Unreviewed crash fix, which introduced at r75995
1115
1116         * dom/Element.cpp:
1117         (WebCore::Element::removeShadowRoot):
1118
1119 2011-01-17  MORITA Hajime  <morrita@google.com>
1120
1121         Reviewed by Dimitri Glazkov.
1122
1123         ElementRareData::m_shadowRoot should not be RefPtr.
1124         https://bugs.webkit.org/show_bug.cgi?id=51914
1125
1126         This change makes m_shadowRoot a raw pointer, as Node::m_parent is.
1127         This change is safe because shadow host pointer is stored as TreeShared::m_parent
1128         which prevents deletion unless set to null.
1129         
1130         No test, no behavioral change.
1131
1132         * dom/Element.cpp:
1133         (WebCore::Element::shadowRoot):
1134         (WebCore::Element::setShadowRoot):
1135         (WebCore::Element::removeShadowRoot):
1136         * dom/ElementRareData.h:
1137         (WebCore::ElementRareData::ElementRareData):
1138
1139 2011-01-17  Maciej Stachowiak  <mjs@apple.com>
1140
1141         Reviewed by Dan Bernstein.
1142
1143         Some WebKit2 layout tests crash due to focus being on a frame in the page cache
1144         https://bugs.webkit.org/show_bug.cgi?id=52607
1145
1146         No new tests. Existing tests crash in WebKit2 without this fix.
1147         
1148         I suspect there are other consequences besides the WebKit2 crash, but I
1149         was unable to identify any for certain.
1150
1151         * history/CachedFrame.cpp:
1152         (WebCore::CachedFrame::CachedFrame): If a frame still has focus when its page
1153         goes in the page cache, reset focus to the main frame.
1154
1155 2011-01-17  Adam Roben  <aroben@apple.com>
1156
1157         Simplify WKCACFLayerRenderer's API
1158
1159         createRenderer/destroyRenderer are now hidden behind setHostWindow.
1160         WKCACFLayerRendererClient::animationsStarted has been removed, as it
1161         was never called. (The work it was supposed to do was already being
1162         accomplished by WKCACFLayerRenderer::render telling each layer that
1163         animations are starting.)
1164
1165         Fixes <http://webkit.org/b/52587> WKCACFLayerRenderer is hard to use
1166
1167         Reviewed by Chris Marrin.
1168
1169         * platform/graphics/win/MediaPlayerPrivateFullscreenWindow.cpp:
1170         (WebCore::MediaPlayerPrivateFullscreenWindow::createWindow): Moved the
1171         call to setHostWindow here from the WM_CREATE handler. The WM_CREATE
1172         handler was causing the Direct3D device to be created, but MSDN says
1173         you shouldn't create a device while handling WM_CREATE. Removed
1174         no-longer-needed call to createRenderer (setHostWindow does this now)
1175         and the never-needed call to setNeedsDisplay (we never draw into the
1176         root layer; this was just creating an unnecessary backing store the
1177         size of the screen!).
1178         (WebCore::MediaPlayerPrivateFullscreenWindow::wndProc): Moved WM_CREATE
1179         code, as described above. Removed call to destroyRenderer when handling
1180         WM_DESTROY; setHostWindow does this now. Fixed up our WM_PAINT handler
1181         to do a synchronous paint and to clear our dirty region, while I was in
1182         here.
1183
1184         * platform/graphics/win/WKCACFLayerRenderer.cpp:
1185         (WebCore::WKCACFLayerRenderer::~WKCACFLayerRenderer): Changed to call
1186         setHostWindow instead of destroyRenderer; the former calls the latter
1187         if needed.
1188         (WebCore::WKCACFLayerRenderer::setHostWindow): Moved here from the
1189         header file. Destroys our old renderer (i.e., IDirect3DDevice9) if
1190         we're losing our window, or creates a renderer if we're gaining a
1191         window.
1192         (WebCore::WKCACFLayerRenderer::createRenderer): Updated for WKSI function rename.
1193         (WebCore::WKCACFLayerRenderer::destroyRenderer): Changed to clear the
1194         D3D device from our context before releasing the device.
1195
1196         * platform/graphics/win/WKCACFLayerRenderer.h: Removed
1197         WKCACFLayerRendererClient::animationsStarted. Removed setNeedsDisplay.
1198         Make createRenderer, destroyRenderer, and renderSoon private.
1199
1200 2011-01-17  Adam Roben  <aroben@apple.com>
1201
1202         Remove special-cased support for providing content for the root layer
1203
1204         Clients will just have to provide content through the normal
1205         GraphicsLayer channels now!
1206
1207         Support for <http://webkit.org/b/52582> WebView should paint directly
1208         into a GraphicsLayer when in accelerated compositing mode
1209
1210         Reviewed by Simon Fraser and Chris Marrin.
1211
1212         * platform/graphics/win/WKCACFLayerRenderer.cpp:
1213         (WebCore::WKCACFLayerRenderer::WKCACFLayerRenderer): Removed
1214         initialization of m_backingStoreDirty, which has itself been removed.
1215         (WebCore::WKCACFLayerRenderer::setNeedsDisplay): Moved code to schedule
1216         a sync from here to syncCompositingStateSoon. We only need to call
1217         renderSoon if we don't call syncCompositingStateSoon; the latter
1218         function calls the former.
1219         (WebCore::WKCACFLayerRenderer::paint): Removed code to handle
1220         m_backingStoreDirty. We don't want to know anything about clients'
1221         backing stores.
1222         (WebCore::WKCACFLayerRenderer::syncCompositingStateSoon): Added. Code
1223         came from setNeedsDisplay.
1224
1225         * platform/graphics/win/WKCACFLayerRenderer.h:
1226         Removed setRootContents[AndDisplay], setBackingStoreDirty, and
1227         m_backingStoreDirty. Made paint() public so that clients can force a
1228         synchronous render (e.g., when handling WM_PAINT).
1229
1230 2011-01-17  Adam Roben  <aroben@apple.com>
1231
1232         Remove contexts from WKCACFContextFlusher before destroying them
1233
1234         We aren't really using WKCACFContextFlusher for anything useful at the
1235         moment, but that will probably change in the near future.
1236
1237         I couldn't come up with a way to test this because it isn't possible to
1238         resize a window in DumpRenderTree.
1239
1240         Fixes <http://webkit.org/b/52573> REGRESSION (r75262): Crash beneath
1241         WKCACFContextFlusher::flushAllContexts when resizing window on page
1242         that uses accelerated compositing
1243
1244         Reviewed by Simon Fraser.
1245
1246         * platform/graphics/win/WKCACFLayerRenderer.cpp:
1247         (WebCore::WKCACFLayerRenderer::~WKCACFLayerRenderer): Remove our
1248         context from WKCACFContextFlusher. (This code was erroneously removed
1249         from WKCACFLayerRenderer::destroyRenderer in r75262. This is a more
1250         sensible place for it.)
1251
1252 2011-01-17  Adam Roben  <aroben@apple.com>
1253
1254         Don't access the CACFLayerRef's sublayers directly from PlatformCALayer
1255
1256         There might be a secret extra sublayer (the tile parent layer) that
1257         PlatformCALayer doesn't know about. When PlatformCALayer would
1258         encounter this, it would try to use the tile parent layer's
1259         PlatformCALayer wrapper, which was null, and then would crash. We now
1260         ask PlatformCALayerWinInternal for the sublayer list, since that class
1261         knows about the tile parent layer and can exclude it from the sublayer
1262         list.
1263
1264         Covered by compositing/tiling/huge-layer-resize.html.
1265
1266         Fixes <http://webkit.org/b/52597> Crash beneath
1267         PlatformCALayer::adoptSublayers when switching out of tiling mode
1268         (null-dereference of a PlatformCALayer)
1269
1270         Reviewed by Darin Adler and Chris Marrin.
1271
1272         * platform/graphics/ca/win/PlatformCALayerWin.cpp:
1273         (PlatformCALayer::adoptSublayers):
1274         (printLayer):
1275         Changed to use PlatformCALayerWinInternal::getSublayers.
1276
1277         * platform/graphics/ca/win/PlatformCALayerWinInternal.cpp:
1278         (PlatformCALayerWinInternal::getSublayers): Added. Retrieves the list
1279         of PlatformCALayers that represent our sublayers. Significantly, this
1280         code knows about the tile parent layer and can thus exclude it.
1281
1282         * platform/graphics/ca/win/PlatformCALayerWinInternal.h: Added
1283         getSublayers.
1284
1285 2011-01-17  Naoki Takano  <takano.naoki@gmail.com>
1286
1287         Reviewed by Kent Tamura.
1288
1289         [Chromium] Fix popup menu re-positioning when the menu is opened upward, above the corresponding form field.
1290         https://bugs.webkit.org/show_bug.cgi?id=51382
1291         http://crbug.com/60427
1292
1293         Calculate correct location of popup window whenever the items in the window change.
1294
1295         No new tests, because this fix is for Chromium project and hard to test only in WebKit project
1296
1297         * platform/chromium/PopupMenuChromium.cpp:
1298         (WebCore::PopupContainer::layoutAndCalculateWidgetRect): New Function to layout and calculate popup widget rect.
1299         (WebCore::PopupContainer::showPopup): Move widgetRect calculation logic to calculateWidgetRect().
1300         (WebCore::PopupContainer::refresh): Add parameter focusRect to take the location and the size of focus text input field to calculate correct popup window location.
1301         * platform/chromium/PopupMenuChromium.h: Append new input parameter for refresh().
1302
1303 2011-01-17  Mark Rowe  <mrowe@apple.com>
1304
1305         Fix the 32-bit build.
1306
1307         * WebCore.exp.in:
1308
1309 2011-01-17  Dan Bernstein  <mitz@apple.com>
1310
1311         Reviewed by Darin Adler.
1312
1313         Use of invalid hash map key in CSSFontFaceSource::getFontData() with 0-sized remote font
1314         https://bugs.webkit.org/show_bug.cgi?id=52598
1315
1316         Test: fast/css/font-face-zero-hash-key.html
1317
1318         * css/CSSFontFaceSource.cpp:
1319         (WebCore::CSSFontFaceSource::getFontData): Add 1 to the font size to avoid a 0 hash key.
1320         * css/CSSSegmentedFontFace.cpp:
1321         (WebCore::CSSSegmentedFontFace::getFontData): Ditto.
1322
1323 2011-01-17  David Kilzer  <ddkilzer@apple.com>
1324
1325         <http://webkit.org/b/52596> Add missing DOMDocument/DOMDocumentFragment headers to Xcode project
1326
1327         Reviewed by Dan Bernstein.
1328
1329         This fixes two issues:
1330
1331         Add missing DOMDocumentFragmentPrivate.h and
1332         DOMDocumentPrivate.h files to the project.  These files were
1333         never added to the the project although their *Internal.h
1334         counterparts were added in r16548 and r17390.
1335
1336         Add missing DOMDocumentFragmentInternal.h to the Headers
1337         section.  It was moved from Headers to "Copy Generated Headers"
1338         in r31045, but it should have an entry in both sections.
1339
1340         * WebCore.xcodeproj/project.pbxproj:
1341
1342 2011-01-17  Helder Correia  <helder@sencha.com>
1343
1344         Reviewed by Andreas Kling.
1345
1346         [Qt] Incorrect shadow alpha with pattern fillStyle
1347         https://bugs.webkit.org/show_bug.cgi?id=52559
1348
1349         The shadow color opacity needs to be set on the shadow painter.
1350         This is related to bug 52556.
1351
1352         Test: fast/canvas/canvas-fillPath-pattern-shadow.html
1353
1354         * platform/graphics/qt/GraphicsContextQt.cpp:
1355         (WebCore::GraphicsContext::fillPath):
1356
1357 2011-01-17  Martin Robinson  <mrobinson@igalia.com>
1358
1359         Reviewed by Andreas Kling.
1360
1361         [GTK] Port a crash fix from libsoup upstream to the libsoup cache code
1362         https://bugs.webkit.org/show_bug.cgi?id=52586
1363
1364         No new tests. This is just a merge from upstream.
1365
1366         * platform/network/soup/cache/soup-http-input-stream.c:
1367         (webkit_soup_http_input_stream_got_chunk): Properly handle unsigned numbers.
1368
1369 2011-01-17  Tony Gentilcore  <tonyg@chromium.org>
1370
1371         Reviewed by Alexey Proskuryakov.
1372
1373         Fix some headers with missing or misspelled #ifndef guards
1374         https://bugs.webkit.org/show_bug.cgi?id=52545
1375
1376         No new tests because no new functionality.
1377
1378         * ForwardingHeaders/runtime/InitializeThreading.h:
1379         * editing/SmartReplace.h:
1380         * loader/CrossOriginAccessControl.h:
1381         * loader/NetscapePlugInStreamLoader.h:
1382         * platform/chromium/ClipboardUtilitiesChromium.h:
1383         * platform/graphics/cairo/DrawErrorUnderline.h:
1384         * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h:
1385         * platform/graphics/cg/GraphicsContextPlatformPrivateCG.h:
1386         * platform/graphics/cg/PDFDocumentImage.h:
1387         * platform/win/WebCoreTextRenderer.h:
1388
1389 2011-01-17  Pavel Feldman  <pfeldman@chromium.org>
1390
1391         Not reviewed: follow-up fix for r52574: do not reuse clear() for navigation.
1392
1393         * inspector/front-end/NetworkPanel.js:
1394         (WebInspector.NetworkPanel.prototype.clear):
1395         (WebInspector.NetworkPanel.prototype.mainResourceChanged):
1396
1397 2011-01-17  Sergio Villar Senin  <svillar@igalia.com>
1398
1399         Reviewed by Martin Robinson.
1400
1401         [Gtk] No need to content sniff 304 Not Modified responses
1402         https://bugs.webkit.org/show_bug.cgi?id=52570
1403
1404         Makes no sense to wait for the outcome of content sniffing when WebCore
1405         is validating resources. If we get a 304 Not Modified it means that we can
1406         safely use the cached version of the resource we're asking for.
1407
1408         No new tests because it does not change functionality, it just
1409         calls didReceiveResponse sooner for 304 Not Modified responses.
1410
1411         * platform/network/soup/ResourceHandleSoup.cpp:
1412         (WebCore::gotHeadersCallback):
1413
1414 2011-01-17  Jessie Berlin  <jberlin@apple.com>
1415
1416         Reviewed by Anders Carlsson.
1417
1418         REGRESSION: Assertion failure in FrameLoader::continueLoadAfterWillSubmitForm() when
1419         navigating back to an unreachable URL
1420         https://bugs.webkit.org/show_bug.cgi?id=52388
1421
1422         Test: http/tests/navigation/go-back-to-error-page.html
1423
1424         * history/PageCache.cpp:
1425         (WebCore::PageCache::canCachePageContainingThisFrame):
1426         Do not cache any error pages (which we can recognize as having substitute data and/or an
1427         unreachableURL).
1428
1429 2011-01-17  Pavel Feldman  <pfeldman@chromium.org>
1430
1431         Not reviewed: fixing typo in r75952.
1432
1433         * inspector/front-end/NetworkPanel.js:
1434         (WebInspector.NetworkDataGridNode.prototype._refreshNameCell):
1435
1436 2011-01-17  Enrica Casucci  <enrica@apple.com>
1437
1438         Reviewed by Alexey Proskuryakov.
1439
1440         Drag and drop support: refactoring of image from link and image from selection
1441         https://bugs.webkit.org/show_bug.cgi?id=52496
1442
1443         This work cleans up the Mac code and makes it more similar to the Windows implementation,
1444         avoiding the use of an NSView when the FrameView can be used.
1445         The refactoring is a necessary step towards the complete support of drag and drop
1446         in WebKit2.
1447         
1448         * page/mac/FrameMac.mm:
1449         (WebCore::Frame::imageFromRect): Modified to use FrameView instead of NSView
1450         to generate the image for drag.
1451
1452 2011-01-17  Dan Bernstein  <mitz@apple.com>
1453
1454         Rubber-stamped by Mark Rowe.
1455
1456         Update xcodeproj svn:ignore to include xcuserdata.
1457
1458         * WebCore.xcodeproj: Modified property svn:ignore.
1459         * manual-tests/NPN_Invoke/NPN_Invoke.xcodeproj: Modified property svn:ignore.
1460
1461 2011-01-17  Alexey Proskuryakov  <ap@apple.com>
1462
1463         Leopard build fix.
1464
1465         * page/PrintContext.cpp: GCC complained about shortening a double value to float.
1466
1467 2011-01-17  Alexey Proskuryakov  <ap@apple.com>
1468
1469         Reviewed by Dan Bernstein.
1470
1471         https://bugs.webkit.org/show_bug.cgi?id=52495
1472
1473         No change in behavior, so no tests.
1474
1475         * WebCore.exp.in: Export additional methods, as I'm going to use more code from PrintContext.
1476
1477         * page/PrintContext.cpp:
1478         (WebCore::PrintContext::~PrintContext): No need to clear m_pageRects, the object is being
1479         destroyed already.
1480         (WebCore::PrintContext::pageCount): Changed page count from int to size_t.
1481         (WebCore::PrintContext::pageRect): Ditto.
1482         (WebCore::PrintContext::computePageRects): Pass allowHorizontalTiling as an argument.
1483         PrintContext already has code to calculate scale factor, so it makes sense to make methods
1484         that contain it universal (allowHorizontalTiling is always true for Safari).
1485         Round page height to an integer, because Mac code does that, and because page height is
1486         treated as integer almost everywhere else in code.
1487         (WebCore::PrintContext::begin): Allow calling this function multiple times. There is no need
1488         to return to screen mode if e.g. "print backgounds" option changes.
1489         (WebCore::PrintContext::computeAutomaticScaleFactor): Expose scale factor computation, so
1490         that clients don't have to copy it.
1491         (WebCore::PrintContext::spoolRect): Add a way to spool a precomputed rect - handy if a request
1492         comes from code that doesn't have page number.
1493         (WebCore::PrintContext::pageNumberForElement): Page number int -> size_t.
1494
1495         * page/PrintContext.h: Added comments and FIXMEs. PrintContext needs cleanup, but that
1496         depends on deciding how it really needs to work (e.g. whether computePageRects() should
1497         cause relayout).
1498
1499 2011-01-17  Pavel Feldman  <pfeldman@chromium.org>
1500
1501         Reviewed by Yury Semikhatsky.
1502
1503         Web Inspector: unify image data source assignment, add image url
1504         to the image view properties list.
1505         https://bugs.webkit.org/show_bug.cgi?id=52584
1506
1507         * English.lproj/localizedStrings.js:
1508         * inspector/front-end/ImageView.js:
1509         (WebInspector.ImageView.prototype._createContentIfNeeded.onImageLoad):
1510         (WebInspector.ImageView.prototype._createContentIfNeeded):
1511         * inspector/front-end/NetworkPanel.js:
1512         (WebInspector.NetworkDataGridNode.prototype._refreshNameCell):
1513         * inspector/front-end/Resource.js:
1514         (WebInspector.Resource.prototype.populateImageSource):
1515         (WebInspector.Resource.prototype._contentURL):
1516         * inspector/front-end/ResourcesPanel.js:
1517         (WebInspector.FrameResourceTreeElement.prototype.onattach):
1518
1519 2011-01-17  Andrey Kosyakov  <caseq@chromium.org>
1520
1521         Reviewed by Pavel Feldman.
1522
1523         Web Inspector: [Extensions API] webInspector.resources.onFinished is not fired for redirected resources
1524         Make resource start/finish hanlding more consistent.
1525         https://bugs.webkit.org/show_bug.cgi?id=52452
1526
1527         * inspector/front-end/AuditLauncherView.js: Ignore WebSocket resources when displaying progress indicator
1528         (WebInspector.AuditLauncherView.prototype._resetResourceCount):
1529         (WebInspector.AuditLauncherView.prototype.resourceStarted):
1530         (WebInspector.AuditLauncherView.prototype.resourceFinished):
1531         * inspector/front-end/NetworkManager.js:
1532         (WebInspector.NetworkManager): Factor out resource start/finish logic to _startResource()/_finishResource()
1533         (WebInspector.NetworkManager.prototype.identifierForInitialRequest):
1534         (WebInspector.NetworkManager.prototype.willSendRequest):
1535         (WebInspector.NetworkManager.prototype.markResourceAsCached):
1536         (WebInspector.NetworkManager.prototype.didReceiveResponse):
1537         (WebInspector.NetworkManager.prototype.didReceiveContentLength):
1538         (WebInspector.NetworkManager.prototype.didFinishLoading):
1539         (WebInspector.NetworkManager.prototype.didFailLoading):
1540         (WebInspector.NetworkManager.prototype.didLoadResourceFromMemoryCache):
1541         (WebInspector.NetworkManager.prototype.didCreateWebSocket):
1542         (WebInspector.NetworkManager.prototype.willSendWebSocketHandshakeRequest):
1543         (WebInspector.NetworkManager.prototype.didReceiveWebSocketHandshakeResponse):
1544         (WebInspector.NetworkManager.prototype.didCloseWebSocket):
1545         (WebInspector.NetworkManager.prototype._appendRedirect):
1546         (WebInspector.NetworkManager.prototype._startResource):
1547         (WebInspector.NetworkManager.prototype._finishResource):
1548
1549 2011-01-17  Pavel Feldman  <pfeldman@chromium.org>
1550
1551         Reviewed by Yury Semikhatsky.
1552
1553         Web Inspector: restore dom and network state upon frontend reuse.
1554         https://bugs.webkit.org/show_bug.cgi?id=52574
1555
1556         * inspector/Inspector.idl:
1557         * inspector/InspectorController.cpp:
1558         (WebCore::InspectorController::restoreInspectorStateFromCookie):
1559         (WebCore::InspectorController::populateScriptObjects):
1560         (WebCore::InspectorController::pushDataCollectedOffline):
1561         (WebCore::InspectorController::didCommitLoad):
1562         * inspector/InspectorController.h:
1563         * inspector/front-end/NetworkManager.js:
1564         (WebInspector.NetworkManager.prototype.reset):
1565         * inspector/front-end/NetworkPanel.js:
1566         (WebInspector.NetworkPanel.prototype.clear):
1567         (WebInspector.NetworkPanel.prototype.mainResourceChanged):
1568         * inspector/front-end/ResourceTreeModel.js:
1569         (WebInspector.ResourceTreeModel):
1570         (WebInspector.ResourceTreeModel.prototype.reloadCachedResources):
1571         * inspector/front-end/ResourcesPanel.js:
1572         (WebInspector.ResourcesPanel.prototype.clear):
1573         * inspector/front-end/inspector.js:
1574         (WebInspector.frontendReused):
1575
1576 2011-01-17  Csaba Osztrogonác  <ossy@webkit.org>
1577
1578         Unreviewed buildfix after r75944.
1579
1580         * WebCore.pro:
1581
1582 2011-01-17  Yi Shen  <yi.4.shen@nokia.com>
1583
1584         Reviewed by Andreas Kling.
1585
1586         [Qt] Extend the Platform Plugin to support full screen video handler
1587         https://bugs.webkit.org/show_bug.cgi?id=51249
1588
1589         Make MediaPlayerPrivateQt support a fullscreen player.
1590
1591         No new tests because LayoutTests/media/media-fullscreen-inline.html already exists.
1592         However, this test failed for Qt (QtMediaPlayer) due to durationchange event getting fired twice.
1593         So, still skip it for Qt.
1594
1595         * WebCore.pro:
1596         * features.pri:
1597         * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
1598         (WebCore::MediaPlayerPrivateQt::MediaPlayerPrivateQt):
1599         (WebCore::MediaPlayerPrivateQt::removeVideoItem):
1600         (WebCore::MediaPlayerPrivateQt::restoreVideoItem):
1601         * platform/graphics/qt/MediaPlayerPrivateQt.h:
1602         (WebCore::MediaPlayerPrivateQt::supportsFullscreen):
1603         (WebCore::MediaPlayerPrivateQt::mediaPlayer):
1604
1605 2011-01-17  Anthony Ricaud  <rik@webkit.org>
1606
1607         Reviewed by Kent Tamura.
1608
1609         [HTML5] Revert display:none on datalist
1610         https://bugs.webkit.org/show_bug.cgi?id=52214
1611
1612         * css/html.css:
1613
1614 2011-01-17  Pavel Feldman  <pfeldman@chromium.org>
1615
1616         Reviewed by Yury Semikhatsky.
1617
1618         Web Inspector: simplify debugger enabling routine.
1619         https://bugs.webkit.org/show_bug.cgi?id=52472
1620
1621         * inspector/Inspector.idl:
1622         * inspector/InspectorController.cpp:
1623         (WebCore::InspectorController::restoreDebugger):
1624         (WebCore::InspectorController::showAndEnableDebugger):
1625         (WebCore::InspectorController::enableDebugger):
1626         * inspector/InspectorController.h:
1627         * inspector/front-end/DebuggerModel.js:
1628         * inspector/front-end/ScriptsPanel.js:
1629         (WebInspector.ScriptsPanel.prototype.show):
1630         (WebInspector.ScriptsPanel.prototype._toggleDebugging):
1631
1632 2011-01-17  Pavel Podivilov  <podivilov@chromium.org>
1633
1634         Reviewed by Pavel Feldman.
1635
1636         Web Inspector: refactoring: encapsulate lazy initialization of SourceFrame.
1637         https://bugs.webkit.org/show_bug.cgi?id=51738
1638
1639         Extract content loading logic from SourceView and ScriptView to ContentProvider implementations.
1640         Pass ContentProvider in SourceFrame constructor to allow SourceFrame manage it's lazy initialization.
1641
1642         * inspector/front-end/ScriptView.js:
1643         (WebInspector.ScriptView):
1644         (WebInspector.SourceFrameContentProviderForScript):
1645         (WebInspector.SourceFrameContentProviderForScript.prototype.requestContent.didRequestSource):
1646         (WebInspector.SourceFrameContentProviderForScript.prototype.requestContent):
1647         (WebInspector.SourceFrameContentProviderForScript.prototype.scripts):
1648         * inspector/front-end/ScriptsPanel.js:
1649         (WebInspector.ScriptsPanel.prototype._addScript):
1650         (WebInspector.ScriptsPanel.prototype.sourceFrameForScript):
1651         (WebInspector.ScriptsPanel.prototype._sourceFrameForResource):
1652         * inspector/front-end/SourceFrame.js:
1653         (WebInspector.SourceFrame):
1654         (WebInspector.SourceFrame.prototype.set visible):
1655         (WebInspector.SourceFrame.prototype._createTextViewer):
1656         (WebInspector.SourceFrame.prototype._breakpointAdded):
1657         (WebInspector.SourceFrame.prototype._breakpoints):
1658         (WebInspector.SourceFrame.prototype._sourceIDForLine):
1659         (WebInspector.SourceFrame.prototype._sourceIDSet):
1660         (WebInspector.SourceFrameContentProvider):
1661         (WebInspector.SourceFrameContentProvider.prototype.requestContent):
1662         (WebInspector.SourceFrameContentProvider.prototype.scripts):
1663         * inspector/front-end/SourceView.js:
1664         (WebInspector.SourceView):
1665         (WebInspector.SourceView.prototype.show):
1666         (WebInspector.SourceView.prototype.resize):
1667         (WebInspector.SourceView.prototype.performSearch.didFindSearchMatches):
1668         (WebInspector.SourceView.prototype.performSearch):
1669         (WebInspector.SourceView.prototype.revealLine):
1670         (WebInspector.SourceView.prototype.highlightLine):
1671         (WebInspector.SourceView.prototype._jumpToSearchResult):
1672         (WebInspector.SourceFrameContentProviderForResource):
1673         (WebInspector.SourceFrameContentProviderForResource.prototype.requestContent):
1674         (WebInspector.SourceFrameContentProviderForResource.prototype.scripts):
1675
1676 2011-01-17  John Knottenbelt  <jknotten@chromium.org>
1677
1678         Reviewed by Jeremy Orlow.
1679
1680         GeolocationController should call stopUpdating on destruction
1681         https://bugs.webkit.org/show_bug.cgi?id=52216
1682
1683         Test: fast/dom/Geolocation/window-close-crash.html
1684
1685         * page/GeolocationController.cpp:
1686         (WebCore::GeolocationController::~GeolocationController):
1687
1688 2011-01-17  Pavel Feldman  <pfeldman@chromium.org>
1689
1690         Not reviewed: Qt build fix.
1691
1692         * inspector/InspectorInstrumentation.h:
1693
1694 2011-01-16  Pavel Feldman  <pfeldman@chromium.org>
1695
1696         Reviewed by Yury Semikhatsky.
1697
1698         Web Inspector: make WebCore use InspectorInstrumentation
1699         for instrumentation calls.
1700         https://bugs.webkit.org/show_bug.cgi?id=52532
1701
1702         This change makes WebCore classes issue instrumentation signals
1703         by means of InspectorInstrumentation interface. It covered migration
1704         for Document, FrameLoader, Database, DOMStorage, etc. It fixed
1705         instrumentation handling for Console as well. This all is a part
1706         of story described in the bug 52510.
1707
1708         * dom/Document.cpp:
1709         (WebCore::Document::finishedParsing):
1710         * dom/Document.h:
1711         * dom/ScriptExecutionContext.h:
1712         * inspector/InspectorBrowserDebuggerAgent.cpp:
1713         (WebCore::InspectorBrowserDebuggerAgent::InspectorBrowserDebuggerAgent):
1714         (WebCore::InspectorBrowserDebuggerAgent::setDOMBreakpoint):
1715         (WebCore::InspectorBrowserDebuggerAgent::removeDOMBreakpoint):
1716         (WebCore::InspectorBrowserDebuggerAgent::willInsertDOMNode):
1717         (WebCore::InspectorBrowserDebuggerAgent::willRemoveDOMNode):
1718         (WebCore::InspectorBrowserDebuggerAgent::willModifyDOMAttr):
1719         (WebCore::InspectorBrowserDebuggerAgent::descriptionForDOMEvent):
1720         (WebCore::InspectorBrowserDebuggerAgent::pauseOnNativeEventIfNeeded):
1721         (WebCore::InspectorBrowserDebuggerAgent::willSendXMLHttpRequest):
1722         * inspector/InspectorBrowserDebuggerAgent.h:
1723         (WebCore::InspectorBrowserDebuggerAgent::create):
1724         * inspector/InspectorConsoleAgent.cpp:
1725         (WebCore::InspectorConsoleAgent::stopTiming):
1726         (WebCore::InspectorConsoleAgent::count):
1727         * inspector/InspectorConsoleAgent.h:
1728         * inspector/InspectorController.cpp:
1729         (WebCore::InspectorController::InspectorController):
1730         (WebCore::InspectorController::~InspectorController):
1731         (WebCore::InspectorController::handleMousePress):
1732         (WebCore::InspectorController::didClearWindowObjectInWorld):
1733         (WebCore::PostWorkerNotificationToFrontendTask::performTask):
1734         * inspector/InspectorController.h:
1735         * inspector/InspectorDOMAgent.h:
1736         * inspector/InspectorDOMStorageAgent.h:
1737         * inspector/InspectorDatabaseAgent.cpp:
1738         * inspector/InspectorDatabaseAgent.h:
1739         * inspector/InspectorFrontendHost.cpp:
1740         * inspector/InspectorFrontendHost.h:
1741         * inspector/InspectorInstrumentation.cpp:
1742         (WebCore::InspectorInstrumentation::didClearWindowObjectInWorldImpl):
1743         (WebCore::InspectorInstrumentation::inspectedPageDestroyedImpl):
1744         (WebCore::InspectorInstrumentation::mouseDidMoveOverElementImpl):
1745         (WebCore::InspectorInstrumentation::handleMousePressImpl):
1746         (WebCore::InspectorInstrumentation::mainResourceFiredLoadEventImpl):
1747         (WebCore::InspectorInstrumentation::mainResourceFiredDOMContentEventImpl):
1748         (WebCore::InspectorInstrumentation::frameDetachedFromParentImpl):
1749         (WebCore::InspectorInstrumentation::didCommitLoadImpl):
1750         (WebCore::InspectorInstrumentation::addMessageToConsoleImpl):
1751         (WebCore::InspectorInstrumentation::consoleCountImpl):
1752         (WebCore::InspectorInstrumentation::startConsoleTimingImpl):
1753         (WebCore::InspectorInstrumentation::stopConsoleTimingImpl):
1754         (WebCore::InspectorInstrumentation::consoleMarkTimelineImpl):
1755         (WebCore::InspectorInstrumentation::addStartProfilingMessageToConsoleImpl):
1756         (WebCore::InspectorInstrumentation::didOpenDatabaseImpl):
1757         (WebCore::InspectorInstrumentation::didUseDOMStorageImpl):
1758         (WebCore::InspectorInstrumentation::didCreateWorkerImpl):
1759         (WebCore::InspectorInstrumentation::didDestroyWorkerImpl):
1760         (WebCore::InspectorInstrumentation::didCreateWebSocketImpl):
1761         (WebCore::InspectorInstrumentation::willSendWebSocketHandshakeRequestImpl):
1762         (WebCore::InspectorInstrumentation::didReceiveWebSocketHandshakeResponseImpl):
1763         (WebCore::InspectorInstrumentation::didCloseWebSocketImpl):
1764         (WebCore::InspectorInstrumentation::networkStateChangedImpl):
1765         (WebCore::InspectorInstrumentation::updateApplicationCacheStatusImpl):
1766         * inspector/InspectorInstrumentation.h:
1767         (WebCore::InspectorInstrumentation::inspectorControllerCreated):
1768         (WebCore::InspectorInstrumentation::inspectorControllerDeleted):
1769         (WebCore::InspectorInstrumentation::didClearWindowObjectInWorld):
1770         (WebCore::InspectorInstrumentation::inspectedPageDestroyed):
1771         (WebCore::InspectorInstrumentation::willInsertDOMNode):
1772         (WebCore::InspectorInstrumentation::didInsertDOMNode):
1773         (WebCore::InspectorInstrumentation::willRemoveDOMNode):
1774         (WebCore::InspectorInstrumentation::willModifyDOMAttr):
1775         (WebCore::InspectorInstrumentation::didModifyDOMAttr):
1776         (WebCore::InspectorInstrumentation::mouseDidMoveOverElement):
1777         (WebCore::InspectorInstrumentation::handleMousePress):
1778         (WebCore::InspectorInstrumentation::characterDataModified):
1779         (WebCore::InspectorInstrumentation::willSendXMLHttpRequest):
1780         (WebCore::InspectorInstrumentation::didScheduleResourceRequest):
1781         (WebCore::InspectorInstrumentation::didInstallTimer):
1782         (WebCore::InspectorInstrumentation::didRemoveTimer):
1783         (WebCore::InspectorInstrumentation::willCallFunction):
1784         (WebCore::InspectorInstrumentation::willChangeXHRReadyState):
1785         (WebCore::InspectorInstrumentation::willDispatchEvent):
1786         (WebCore::InspectorInstrumentation::willDispatchEventOnWindow):
1787         (WebCore::InspectorInstrumentation::willEvaluateScript):
1788         (WebCore::InspectorInstrumentation::willFireTimer):
1789         (WebCore::InspectorInstrumentation::willLayout):
1790         (WebCore::InspectorInstrumentation::willLoadXHR):
1791         (WebCore::InspectorInstrumentation::willPaint):
1792         (WebCore::InspectorInstrumentation::willRecalculateStyle):
1793         (WebCore::InspectorInstrumentation::identifierForInitialRequest):
1794         (WebCore::InspectorInstrumentation::willSendRequest):
1795         (WebCore::InspectorInstrumentation::markResourceAsCached):
1796         (WebCore::InspectorInstrumentation::didLoadResourceFromMemoryCache):
1797         (WebCore::InspectorInstrumentation::willReceiveResourceData):
1798         (WebCore::InspectorInstrumentation::willReceiveResourceResponse):
1799         (WebCore::InspectorInstrumentation::didReceiveContentLength):
1800         (WebCore::InspectorInstrumentation::didFinishLoading):
1801         (WebCore::InspectorInstrumentation::didFailLoading):
1802         (WebCore::InspectorInstrumentation::resourceRetrievedByXMLHttpRequest):
1803         (WebCore::InspectorInstrumentation::scriptImported):
1804         (WebCore::InspectorInstrumentation::mainResourceFiredLoadEvent):
1805         (WebCore::InspectorInstrumentation::mainResourceFiredDOMContentEvent):
1806         (WebCore::InspectorInstrumentation::frameDetachedFromParent):
1807         (WebCore::InspectorInstrumentation::didCommitLoad):
1808         (WebCore::InspectorInstrumentation::willWriteHTML):
1809         (WebCore::InspectorInstrumentation::didOpenDatabase):
1810         (WebCore::InspectorInstrumentation::didUseDOMStorage):
1811         (WebCore::InspectorInstrumentation::didCreateWorker):
1812         (WebCore::InspectorInstrumentation::didDestroyWorker):
1813         (WebCore::InspectorInstrumentation::didCreateWebSocket):
1814         (WebCore::InspectorInstrumentation::willSendWebSocketHandshakeRequest):
1815         (WebCore::InspectorInstrumentation::didReceiveWebSocketHandshakeResponse):
1816         (WebCore::InspectorInstrumentation::didCloseWebSocket):
1817         (WebCore::InspectorInstrumentation::networkStateChanged):
1818         (WebCore::InspectorInstrumentation::updateApplicationCacheStatus):
1819         (WebCore::InspectorInstrumentation::addMessageToConsole):
1820         (WebCore::InspectorInstrumentation::consoleCount):
1821         (WebCore::InspectorInstrumentation::startConsoleTiming):
1822         (WebCore::InspectorInstrumentation::stopConsoleTiming):
1823         (WebCore::InspectorInstrumentation::consoleMarkTimeline):
1824         (WebCore::InspectorInstrumentation::addStartProfilingMessageToConsole):
1825         (WebCore::InspectorInstrumentation::inspectorControllerForContext):
1826         (WebCore::InspectorInstrumentation::inspectorControllerForFrame):
1827         (WebCore::InspectorInstrumentation::inspectorControllerForPage):
1828         (WebCore::InspectorInstrumentation::inspectorControllerWithFrontendForContext):
1829         (WebCore::InspectorInstrumentation::inspectorControllerWithFrontendForDocument):
1830         (WebCore::InspectorInstrumentation::inspectorControllerWithFrontendForFrame):
1831         (WebCore::InspectorInstrumentation::inspectorControllerWithFrontendForPage):
1832         * inspector/InspectorState.cpp:
1833         * loader/FrameLoader.cpp:
1834         (WebCore::FrameLoader::detachFromParent):
1835         (WebCore::FrameLoader::dispatchDidClearWindowObjectInWorld):
1836         (WebCore::FrameLoader::dispatchDidCommitLoad):
1837         * page/Chrome.cpp:
1838         (WebCore::Chrome::mouseDidMoveOverElement):
1839         * page/Console.cpp:
1840         (WebCore::Console::addMessage):
1841         (WebCore::Console::count):
1842         (WebCore::Console::markTimeline):
1843         (WebCore::Console::profile):
1844         (WebCore::Console::time):
1845         (WebCore::Console::timeEnd):
1846         (WebCore::Console::group):
1847         (WebCore::Console::groupCollapsed):
1848         (WebCore::Console::groupEnd):
1849         * page/DOMWindow.cpp:
1850         (WebCore::DOMWindow::sessionStorage):
1851         (WebCore::DOMWindow::localStorage):
1852         (WebCore::DOMWindow::dispatchLoadEvent):
1853         * page/EventHandler.cpp:
1854         (WebCore::EventHandler::handleMousePressEvent):
1855         * page/Page.cpp:
1856         (WebCore::Page::~Page):
1857         * storage/Database.cpp:
1858         (WebCore::Database::openDatabase):
1859         * workers/AbstractWorker.cpp:
1860         (WebCore::AbstractWorker::onDestroyWorker):
1861         * workers/SharedWorker.cpp:
1862         (WebCore::SharedWorker::create):
1863         * workers/Worker.cpp:
1864         (WebCore::Worker::create):
1865         * workers/WorkerMessagingProxy.cpp:
1866
1867 2011-01-17  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
1868
1869         Unreviewed, rolling out r75923.
1870
1871         GTK guy rolls out the r75914.
1872
1873         * platform/efl/ScrollViewEfl.cpp:
1874         (WebCore::ScrollView::platformInit):
1875
1876 2011-01-17  Helder Correia  <helder@sencha.com>
1877
1878         Reviewed by Kenneth Rohde Christiansen.
1879
1880         [Qt] fast/canvas/canvas-fillPath-gradient-shadow.html does not pass
1881         https://bugs.webkit.org/show_bug.cgi?id=52556
1882
1883         The shadow color opacity needs to be set on the shadow painter.
1884         Additionally, the gradient brush should be transformed.
1885
1886         * platform/graphics/qt/GraphicsContextQt.cpp:
1887         (WebCore::GraphicsContext::fillPath):
1888
1889 2011-01-17  No'am Rosenthal  <noam.rosenthal@nokia.com>
1890
1891         Reviewed by Kenneth Rohde Christiansen.
1892
1893         [Qt] Background image rendering is slow
1894         https://bugs.webkit.org/show_bug.cgi?id=50527
1895
1896         When tiling a scaled pixmap in Image::drawPattern, scale the tile
1897         first and only then draw it to the target. Do so only when drawing
1898         more than one tile.
1899
1900         Tests in fast/backgrounds/size cover this.
1901
1902         * platform/graphics/qt/ImageQt.cpp:
1903         (WebCore::Image::drawPattern):
1904
1905 2011-01-17  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
1906
1907         Reviewed by Simon Hausmann.
1908
1909         [Qt] [Symbian] Fix building NPAPI support
1910         https://bugs.webkit.org/show_bug.cgi?id=51981
1911
1912         Make sure that npapi.h is always included outside of the extern "C"
1913         linkage declaration block.
1914
1915         No new tests as there is no new functionality.
1916
1917         * bridge/npruntime.h:
1918
1919 2011-01-17  Philippe Normand  <pnormand@igalia.com>
1920
1921         Unreviewed, rolling out r75914.
1922         http://trac.webkit.org/changeset/75914
1923         https://bugs.webkit.org/show_bug.cgi?id=49177
1924
1925         multiple crashes on GTK
1926
1927         * platform/ScrollView.cpp:
1928         (WebCore::ScrollView::removeChild):
1929         (WebCore::ScrollView::wheelEvent):
1930         * platform/gtk/MainFrameScrollbarGtk.cpp:
1931         (MainFrameScrollbarGtk::attachAdjustment):
1932         (MainFrameScrollbarGtk::gtkValueChanged):
1933         * platform/gtk/ScrollViewGtk.cpp:
1934         (WebCore::ScrollView::platformInit):
1935         (WebCore::ScrollView::platformAddChild):
1936         (WebCore::ScrollView::platformRemoveChild):
1937
1938 2011-01-17  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
1939
1940         Unreviewed build fix.
1941
1942         Bug 49177's patch enabled platformInit() in super class(ScrollView).
1943         But, it didn't removed the function in ScrollViewEfl.cpp.
1944
1945         * platform/efl/ScrollViewEfl.cpp:
1946
1947 2011-01-16  Dan Bernstein  <mitz@apple.com>
1948
1949         Reviewed by Sam Weinig.
1950
1951         <rdar://problem/8871903> REGRESSION (r75897): Crash with 0-by-0 iframe in scaled WebView
1952
1953         Avoid use of FloatRect::enclosingBoundingBox(), which can stretch an empty
1954         quad to a non-empty rect.
1955
1956         * rendering/RenderWidget.cpp:
1957         (WebCore::RenderWidget::setWidget):
1958         (WebCore::RenderWidget::updateWidgetPosition):
1959
1960 2011-01-16  Martin Robinson  <mrobinson@igalia.com>
1961
1962         Reviewed by Xan Lopez.
1963
1964         [GTK] fast/events/scroll-after-click-on-tab-index has been failing on the bots
1965         https://bugs.webkit.org/show_bug.cgi?id=49177
1966
1967         * platform/ScrollView.cpp: Move the platform guards around a little. GTK+
1968         now shares the implementation of platformAddChild and platformRemoveChild,
1969         but has its own implementation of removeChild, which knows how to inform
1970         main frame scrollbars that they no longer control the WebCore scrollbar.
1971         * platform/gtk/MainFrameScrollbarGtk.cpp:
1972         (MainFrameScrollbarGtk::attachAdjustment): If we are attaching the same adjustment
1973         that we already have, bail out early. Apply the value changed signal handler
1974         after configuring the adjustment. We don't want our reset of the adjustment to
1975         stomp on WebCore values.
1976         (MainFrameScrollbarGtk::gtkValueChanged): Do not adjust the value if the WebCore
1977         state already matches ours. This prevents some unnecessary recursion
1978         * platform/gtk/ScrollViewGtk.cpp:
1979         (WebCore::ScrollView::removeChild): Added, special cases main frame scrollbars
1980         which need their adjustments detached.
1981
1982 2011-01-13  Yuzo Fujishima  <yuzo@google.com>
1983
1984         Reviewed by Antti Koivisto.
1985
1986         Fix for Bug 52427 - Inconsistent use of m_cache in CachedResourceLoader
1987         https://bugs.webkit.org/show_bug.cgi?id=52427
1988
1989         In constructor/destructor of CachedResourceLoader, m_cache has been
1990         used to call MemoryCache::addCachedResourceLoader/removeCachedResourceLoader
1991         while cache() is used everywhere else.
1992
1993         Actually addCachedResourceLoader/removeCachedResourceLoader need not be called at all.
1994         Remove the call sites and make MemoryCache non-friend of CachedResourceLoader.
1995
1996         No new tests because the behavior remains the same.
1997
1998         * loader/cache/CachedResourceLoader.cpp:
1999         (WebCore::CachedResourceLoader::CachedResourceLoader):
2000         (WebCore::CachedResourceLoader::~CachedResourceLoader):
2001         * loader/cache/CachedResourceLoader.h:
2002         * loader/cache/MemoryCache.cpp:
2003         * loader/cache/MemoryCache.h:
2004
2005 2011-01-16  Adam Barth  <abarth@webkit.org>
2006
2007         Rubber-stamped by Eric Seidel.
2008
2009         Move WebKit into Source
2010         https://bugs.webkit.org/show_bug.cgi?id=52530
2011
2012         * WebCore.gyp/WebCore.gyp:
2013         * WebCore.pri:
2014         * WebCore.pro:
2015
2016 2011-01-16  Simon Fraser  <simon.fraser@apple.com>
2017
2018         Reviewed by Dan Bernstein.
2019
2020         frame-removed-during-resize.html test crashes (shows up as image-map-2.html crash)
2021         https://bugs.webkit.org/show_bug.cgi?id=52549
2022
2023         Fix regression from r75900; m_widget->setFrameRect() can run script that
2024         clears m_widget, so null-check it before calling setBoundsSize().
2025         
2026         Tested by fast/replaced/frame-removed-during-resize.html
2027
2028         * rendering/RenderWidget.cpp:
2029         (WebCore::RenderWidget::setWidgetGeometry):
2030
2031 2011-01-16  Simon Fraser  <simon.fraser@apple.com>
2032
2033         Keep Leopard build happy.
2034
2035         * platform/mac/WidgetMac.mm:
2036         (WebCore::Widget::setBoundsSize):
2037
2038 2011-01-16  Robert Hogan  <robert@webkit.org>
2039
2040         Reviewed by Andreas Kling.
2041
2042         [Qt] plugins/keyboard-events.html fails after r72717
2043         https://bugs.webkit.org/show_bug.cgi?id=50050
2044
2045         * plugins/qt/PluginViewQt.cpp:
2046         (WebCore::setXKeyEventSpecificFields): map event text to keycode
2047
2048 2011-01-16  Simon Fraser  <simon.fraser@apple.com>
2049
2050         Reviewed by Dan Bernstein.
2051
2052         Issues with iframes and plugins when the WebView is scaled.
2053         <rdar://problem/6213380>
2054         
2055         When _scaleWebView has been called on a WebView, iframes
2056         in WebKit1 render and hit-test incorrectly, and plug-ins don't scale up.
2057         This is caused by AppKit NSViews not playing nicely with the scale
2058         applied through style.
2059         
2060         Work around most of these issues by adjusting the bounds size
2061         of widgets to allow iframe contents to paint with the correct scale,
2062         and fix various places in the code where we relied on coordinate
2063         transforms via NSViews (which ignore CSS transforms).
2064
2065         * WebCore.exp.in:
2066         * platform/Widget.cpp:
2067         (WebCore::Widget::setBoundsSize):
2068         * platform/Widget.h:
2069         * platform/mac/WidgetMac.mm:
2070         (WebCore::Widget::setBoundsSize):
2071         (WebCore::Widget::paint):
2072         * rendering/RenderLayerCompositor.cpp:
2073         (WebCore::RenderLayerCompositor::shouldPropagateCompositingToEnclosingIFrame):
2074         * rendering/RenderWidget.cpp:
2075         (WebCore::RenderWidget::setWidgetGeometry):
2076         (WebCore::RenderWidget::setWidget):
2077         (WebCore::RenderWidget::updateWidgetPosition):
2078         * rendering/RenderWidget.h:
2079
2080 2011-01-16  Simon Fraser  <simon.fraser@apple.com>
2081
2082         Reviewed by Dan Bernstein.
2083
2084         RenderView needs to take transforms on its layer into account
2085         https://bugs.webkit.org/show_bug.cgi?id=52536
2086         
2087         The RenderView's coordinate mapping methods failed to
2088         take into account a transform on the RenderView's layer.
2089
2090         No tests because it's not possible to get a transform
2091         on the RenderView's layer through content.
2092
2093         * rendering/RenderView.cpp:
2094         (WebCore::RenderView::mapLocalToContainer):
2095         (WebCore::RenderView::mapAbsoluteToLocalPoint):
2096
2097 2011-01-15  Sheriff Bot  <webkit.review.bot@gmail.com>
2098
2099         Unreviewed, rolling out r75708.
2100         http://trac.webkit.org/changeset/75708
2101         https://bugs.webkit.org/show_bug.cgi?id=52521
2102
2103         Breaks Qt build if mobility is not installed. (Requested by
2104         benjaminp on #webkit).
2105
2106         * WebCore.pro:
2107         * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
2108         (WebCore::MediaPlayerPrivateQt::MediaPlayerPrivateQt):
2109         * platform/graphics/qt/MediaPlayerPrivateQt.h:
2110         (WebCore::MediaPlayerPrivateQt::supportsFullscreen):
2111
2112 2011-01-15  David Kilzer  <ddkilzer@apple.com>
2113
2114         <http://webkit.org/b/52512> REGRESSION(r73818): range.cloneContents() ignores end offset
2115
2116         Reviewed by Adele Peterson.
2117
2118         The fix for Bug 50710 in r73799 introduced an off-by-one error
2119         when copying nodes to a local NodeVector for processing.  A fix
2120         was attempted for Bug 50854 in r73818, but instead of stopping
2121         at the end offset, it iterates through all the sibling nodes
2122         because the loop variable (i) is never incremented.  To clean
2123         this up, revert back to the code in r73799 and fix the
2124         off-by-one error.
2125
2126         Test: fast/dom/Range/range-clone-contents.html
2127
2128         * dom/Range.cpp:
2129         (WebCore::Range::processContents): Fix the loop that copies
2130         nodes to a local NodeVector by restoring the code from r73799
2131         and fixing the off-by-one error.
2132
2133 2011-01-15  Adam Barth  <abarth@webkit.org>
2134
2135         Rubber-stamped by Eric Seidel.
2136
2137         Move WebKit2 into Source
2138         https://bugs.webkit.org/show_bug.cgi?id=52438
2139
2140         * WebCore.pro:
2141
2142 2011-01-15  Joone Hur  <joone.hur@collabora.co.uk>
2143
2144         Reviewed by Martin Robinson.
2145
2146         [GTK] Linux build with FileSystem API enabled fails
2147         https://bugs.webkit.org/show_bug.cgi?id=43878
2148
2149         This patch allows WebKitGtk+ to build with FileSystem API option.
2150
2151         No new tests because no new functionality.
2152
2153         * GNUmakefile.am: Included AsyncFileSystem.h,cpp and Excluded duplicated JSFileException.h,cpp.
2154         * bindings/js/JSDirectoryEntryCustom.cpp: Included ExceptionCode.h.
2155
2156 2011-01-14  Sam Magnuson  <smagnuso@gmail.com>
2157
2158         Reviewed by Kenneth Rohde Christiansen.
2159
2160         [Qt] Compile with QT_NO_GRAPHICSVIEW
2161         https://bugs.webkit.org/show_bug.cgi?id=49750
2162
2163         * platform/graphics/qt/GraphicsLayerQt.cpp:
2164         * platform/graphics/qt/GraphicsLayerQt.h:
2165         * platform/qt/PlatformMouseEventQt.cpp:
2166
2167 2011-01-14  Tony Chang  <tony@chromium.org>
2168
2169         Reviewed by Alexey Proskuryakov.
2170
2171         Strip NUL character when copying text on Windows
2172         https://bugs.webkit.org/show_bug.cgi?id=52236
2173
2174         Test: editing/pasteboard/copy-null-characters.html
2175
2176         * editing/Editor.cpp:
2177         (WebCore::Editor::selectedText):
2178         * platform/mac/PasteboardMac.mm:
2179         (WebCore::Pasteboard::writeSelection): Use editor()->selectedText() which matches the other platforms.
2180
2181 2011-01-14  Yuzo Fujishima  <yuzo@google.com>
2182
2183         Reviewed by Antti Koivisto.
2184
2185         Rename cache() to memoryCache()
2186         https://bugs.webkit.org/show_bug.cgi?id=52433
2187
2188         No new tests because the behavior remains the same.
2189
2190         * WebCore.exp.in:
2191         * WebCore.order:
2192         * history/PageCache.cpp:
2193         (WebCore::PageCache::releaseAutoreleasedPagesNow):
2194         * inspector/InspectorResourceAgent.cpp:
2195         (WebCore::InspectorResourceAgent::cachedResource):
2196         * loader/FrameLoader.cpp:
2197         (WebCore::FrameLoader::tellClientAboutPastMemoryCacheLoads):
2198         * loader/archive/cf/LegacyWebArchive.cpp:
2199         (WebCore::LegacyWebArchive::create):
2200         * loader/cache/CachedImage.cpp:
2201         (WebCore::CachedImage::allClientsRemoved):
2202         (WebCore::CachedImage::data):
2203         * loader/cache/CachedResource.cpp:
2204         (WebCore::CachedResource::~CachedResource):
2205         (WebCore::CachedResource::addClientToSet):
2206         (WebCore::CachedResource::removeClient):
2207         (WebCore::CachedResource::setDecodedSize):
2208         (WebCore::CachedResource::setEncodedSize):
2209         (WebCore::CachedResource::didAccessDecodedData):
2210         * loader/cache/CachedResourceLoader.cpp:
2211         (WebCore::CachedResourceLoader::CachedResourceLoader):
2212         (WebCore::CachedResourceLoader::requestUserCSSStyleSheet):
2213         (WebCore::CachedResourceLoader::requestResource):
2214         (WebCore::CachedResourceLoader::revalidateResource):
2215         (WebCore::CachedResourceLoader::loadResource):
2216         (WebCore::CachedResourceLoader::clearPreloads):
2217         (WebCore::CachedResourceLoader::printPreloadStats):
2218         * loader/cache/CachedResourceRequest.cpp:
2219         (WebCore::CachedResourceRequest::load):
2220         (WebCore::CachedResourceRequest::didFail):
2221         (WebCore::CachedResourceRequest::didReceiveResponse):
2222         * loader/cache/MemoryCache.cpp:
2223         (WebCore::memoryCache):
2224         * loader/cache/MemoryCache.h:
2225
2226 2011-01-14  Dan Bernstein  <mitz@apple.com>
2227
2228         Reviewed by Simon Fraser.
2229
2230         WebCore part of <rdar://problem/8441312> Crash in -[NSView _invalidateGStatesForTree]
2231
2232         * WebCore.exp.in: Export RenderWidget::suspendWidgetHierarchyUpdates() and
2233         RenderWidget::resumeWidgetHierarchyUpdates().
2234         * manual-tests/plug-in-mutates-NSView-hierarchy-during-resize.html: Added.
2235         * rendering/RenderWidget.cpp:
2236         (WebCore::RenderWidget::setWidgetGeometry): Removed the assertion that widget hierarchy updates
2237         are disabled. When this assertion was added, this condition was a subset of the “calling out to
2238         plug-in code is forbidden” condition, hence the assertion was valid. The WebKit part of this
2239         change now suspends widget hierarchy updates even at times where plug-in code is expected to be
2240         called, which invalidates the assertion.
2241
2242 2011-01-14  Tony Gentilcore  <tonyg@chromium.org>
2243
2244         Unreviewed build fix.
2245
2246         Fix Qt build after r75837
2247         https://bugs.webkit.org/show_bug.cgi?id=52494
2248
2249         * rendering/style/StyleRareInheritedData.cpp:
2250         * rendering/style/StyleRareNonInheritedData.cpp:
2251
2252 2011-01-14  Tony Gentilcore  <tonyg@chromium.org>
2253
2254         Unreviewed build fix.
2255
2256         Fix Qt build after r75837
2257         https://bugs.webkit.org/show_bug.cgi?id=52494
2258
2259         * rendering/style/RenderStyle.cpp:
2260
2261 2011-01-14  Tony Gentilcore  <tonyg@chromium.org>
2262
2263         Unreviewed build fix.
2264
2265         Fix Qt build after r75837
2266         https://bugs.webkit.org/show_bug.cgi?id=52494
2267
2268         * editing/EditorCommand.cpp:
2269
2270 2011-01-14  Tony Gentilcore  <tonyg@chromium.org>
2271
2272         Unreviewed build fix.
2273
2274         Fix Qt build after r75837
2275         https://bugs.webkit.org/show_bug.cgi?id=52494
2276
2277         * editing/ApplyStyleCommand.cpp:
2278
2279 2011-01-14  Tony Gentilcore  <tonyg@chromium.org>
2280
2281         Unreviewed build fix.
2282
2283         Fix Qt build after r75837
2284         https://bugs.webkit.org/show_bug.cgi?id=52494
2285
2286         * css/CSSStyleSelector.cpp:
2287
2288 2011-01-14  Tony Gentilcore  <tonyg@chromium.org>
2289
2290         Unreviewed build fix.
2291
2292         Fix Qt build after r75837
2293         https://bugs.webkit.org/show_bug.cgi?id=52494
2294
2295         * rendering/InlineFlowBox.h:
2296         * rendering/RenderBoxModelObject.h:
2297
2298 2011-01-14  Tony Gentilcore  <tonyg@chromium.org>
2299
2300         Reviewed by David Levin.
2301
2302         Do some forward declaration in RenderStyle.h
2303         https://bugs.webkit.org/show_bug.cgi?id=52453
2304
2305         No new tests because no new functionality.
2306
2307         * css/CSSComputedStyleDeclaration.cpp:
2308         * css/CSSStyleSelector.cpp:
2309         * editing/Editor.cpp:
2310         * page/EventHandler.cpp:
2311         * rendering/EllipsisBox.cpp:
2312         * rendering/InlineBox.cpp:
2313         * rendering/InlineTextBox.cpp:
2314         * rendering/RenderBlock.cpp:
2315         * rendering/RenderBlock.h:
2316         * rendering/RenderBox.cpp:
2317         * rendering/RenderBox.h:
2318         * rendering/RenderEmbeddedObject.cpp:
2319         * rendering/RenderFieldset.cpp:
2320         * rendering/RenderFileUploadControl.cpp:
2321         * rendering/RenderFrameSet.cpp:
2322         * rendering/RenderHTMLCanvas.cpp:
2323         * rendering/RenderImageResource.cpp:
2324         * rendering/RenderInputSpeech.cpp:
2325         * rendering/RenderLayer.h:
2326         * rendering/RenderLineBoxList.cpp:
2327         * rendering/RenderListBox.cpp:
2328         * rendering/RenderMediaControlsChromium.cpp:
2329         * rendering/RenderObject.cpp:
2330         * rendering/RenderObject.h:
2331         * rendering/RenderObjectChildList.cpp:
2332         * rendering/RenderProgress.cpp:
2333         * rendering/RenderScrollbarPart.cpp:
2334         * rendering/RenderTable.cpp:
2335         * rendering/RenderTable.h:
2336         * rendering/RenderTableCell.cpp:
2337         * rendering/RenderTableRow.cpp:
2338         * rendering/RenderTableSection.cpp:
2339         * rendering/RenderTheme.cpp:
2340         * rendering/RenderThemeChromiumSkia.cpp:
2341         * rendering/RenderThemeChromiumWin.cpp:
2342         * rendering/RootInlineBox.cpp:
2343         * rendering/style/RenderStyle.cpp:
2344         * rendering/style/RenderStyle.h:
2345         * rendering/style/StyleRareInheritedData.cpp:
2346
2347 2011-01-14  Ryosuke Niwa  <rniwa@webkit.org>
2348
2349         Reviewed by Eric Seidel.
2350
2351         Stop instantiating legacy editing positions in AccessibilityRenderObject.cpp, Element.cpp,
2352         BreakBlockquoteCommand.cpp, CompositeEditCommand.cpp, and DeleteButtonController.cpp
2353         https://bugs.webkit.org/show_bug.cgi?id=52481
2354
2355         Removed instantiation of legacy editing positions.
2356         Calls to Position::Position are replaced by calls to Position's convenience functions.
2357         
2358         Also fixed firstPositionInOrBeforeNode and lastPositionInOrAfterNode so that
2359         they instantiate right positions for text nodes.
2360
2361         * accessibility/AccessibilityRenderObject.cpp:
2362         (WebCore::AccessibilityRenderObject::setSelectedTextRange):
2363         * dom/Element.cpp:
2364         (WebCore::Element::updateFocusAppearance):
2365         * editing/BreakBlockquoteCommand.cpp:
2366         (WebCore::BreakBlockquoteCommand::doApply):
2367         * editing/CompositeEditCommand.cpp:
2368         (WebCore::CompositeEditCommand::inputText):
2369         (WebCore::CompositeEditCommand::rebalanceWhitespaceAt):
2370         (WebCore::CompositeEditCommand::moveParagraphContentsToNewBlockIfNecessary):
2371         (WebCore::CompositeEditCommand::moveParagraphs):
2372         (WebCore::CompositeEditCommand::breakOutOfEmptyListItem):
2373         (WebCore::CompositeEditCommand::breakOutOfEmptyMailBlockquotedParagraph):
2374         (WebCore::CompositeEditCommand::splitTreeToNode):
2375         * editing/DeleteButtonController.cpp:
2376         (WebCore::enclosingDeletableElement):
2377         * editing/htmlediting.h:
2378         (WebCore::firstPositionInOrBeforeNode): Instantiates firstPositionInNode instead of
2379         positionBeforeNode for a text node.
2380         (WebCore::lastPositionInOrAfterNode): Ditto.
2381
2382 2011-01-14  Helder Correia  <helder@sencha.com>
2383
2384         Reviewed by Simon Fraser.
2385
2386         Shadow is not drawn when filling a path with a gradient
2387         https://bugs.webkit.org/show_bug.cgi?id=51982
2388
2389         This happens in CG and is related to bug 51869, this time to be fixed
2390         in GraphicsContext::fillPath(const Path& path). We need to draw the
2391         gradient clipped to the path on a CGLayer first, and then draw the
2392         layer on the GraphicsContext.
2393
2394         Test: fast/canvas/canvas-fillPath-gradient-shadow.html
2395
2396         * platform/graphics/cg/GraphicsContextCG.cpp:
2397         (WebCore::GraphicsContext::fillPath):
2398
2399 2011-01-14  Simon Fraser  <simon.fraser@apple.com>
2400
2401         Reviewed by Adam Roben.
2402
2403         Layer syncing should go through the compositor
2404         https://bugs.webkit.org/show_bug.cgi?id=52486
2405
2406         Rather than have FrameView go directly to GraphicsLayer to
2407         sync pending changes, route the call through RenderLayerCompositor.
2408         
2409         Add a FIXME about an existing issue with flushing and subframes.
2410         
2411         No behavior change, so no tests.
2412
2413         * page/FrameView.cpp:
2414         (WebCore::FrameView::syncCompositingStateForThisFrame):
2415         * rendering/RenderLayerBacking.cpp:
2416         (WebCore::RenderLayerBacking::notifySyncRequired):
2417         * rendering/RenderLayerCompositor.cpp:
2418         (WebCore::RenderLayerCompositor::scheduleLayerFlush):
2419         (WebCore::RenderLayerCompositor::flushPendingLayerChanges):
2420         * rendering/RenderLayerCompositor.h:
2421         (WebCore::RenderLayerCompositor::notifySyncRequired):
2422
2423 2011-01-14  Abhishek Arya  <inferno@chromium.org>
2424
2425         Reviewed by David Hyatt.
2426
2427         Fix parent block calculation when trying to find top most node
2428         containing "this" float.
2429         https://bugs.webkit.org/show_bug.cgi?id=51711
2430
2431         Replace use of containingBlock and traverse the parents directly
2432         to check for float existence. containingBlock can skip parents and
2433         jump to the RenderView directly which will cause floats to not get
2434         cleared from intermediate parents.
2435
2436         Test: fast/block/float/floats-not-cleared-crash.html
2437
2438         * rendering/RenderBox.cpp:
2439         (WebCore::RenderBox::removeFloatingOrPositionedChildFromBlockLists):
2440
2441 2011-01-14  Adam Klein  <adamk@chromium.org>
2442
2443         Reviewed by Darin Fisher.
2444
2445         [Chromium] Replace BackForwardListClient with BackForwardControllerClient/BackForwardList
2446         https://bugs.webkit.org/show_bug.cgi?id=42237
2447
2448         Remove Chromium-specific implementation from WebCore.
2449
2450         No tests added; this refactor should be covered by existing history-exercising tests.
2451
2452         * WebCore.gyp/WebCore.gyp:
2453         * WebCore.gypi:
2454         * history/BackForwardListChromium.cpp: Removed.
2455         * history/BackForwardListImpl.h:
2456
2457 2011-01-12  Satish Sampath  <satish@chromium.org>
2458
2459         Reviewed by Dimitri Glazkov.
2460
2461         Fix a crash when accessing speech input from script.
2462         https://bugs.webkit.org/show_bug.cgi?id=52325
2463
2464         Test: fast/speech/speech-input-scripting.html
2465
2466         * html/HTMLInputElement.cpp:
2467         (WebCore::HTMLInputElement::parseMappedAttribute): Recreate renderer when speech input is enabled/disabled.
2468         * rendering/RenderTextControlSingleLine.cpp: Remove unused code.
2469         * rendering/RenderTextControlSingleLine.h:
2470         * rendering/TextControlInnerElements.cpp: Take self references before firing events and check for renderer validity after.
2471         (WebCore::InputFieldSpeechButtonElement::defaultEventHandler):
2472         (WebCore::InputFieldSpeechButtonElement::setRecognitionResult):
2473         (WebCore::InputFieldSpeechButtonElement::detach):
2474
2475 2011-01-14  Abhishek Arya  <inferno@chromium.org>
2476
2477         Reviewed by David Hyatt.
2478
2479         Prevent merging of anonymous blocks if one of them is already getting
2480         destroyed.
2481         https://bugs.webkit.org/show_bug.cgi?id=52402
2482
2483         Test: fast/block/merge-anonymous-block-remove-child-crash2.html
2484
2485         * rendering/RenderBlock.cpp:
2486         (WebCore::RenderBlock::RenderBlock): initialize m_beingDestroyed to false.
2487         (WebCore::RenderBlock::destroy): set m_beingDestroyed to true.
2488         (WebCore::canMergeContiguousAnonymousBlocks): do not merge if any or prev or next is being destroyed.
2489         (WebCore::RenderBlock::removeChild): remove the hack previously done for preventing oldChild merging with nextBlock's next sibling.
2490         * rendering/RenderBlock.h:
2491         (WebCore::RenderBlock::beingDestroyed): public function for m_beingDestroyed.
2492
2493 2011-01-14  Pavel Feldman  <pfeldman@chromium.org>
2494
2495         Not reviewed. Follow up to r75791: fix missing dispatch.
2496         https://bugs.webkit.org/show_bug.cgi?id=52442
2497
2498         * inspector/front-end/DebuggerModel.js:
2499         (WebInspector.DebuggerDispatcher.prototype.breakpointResolved):
2500
2501 2011-01-14  Simon Fraser  <simon.fraser@apple.com>
2502
2503         Reviewed by Adam Roben.
2504
2505         Issues with contentsScale in GraphicsLayerCA
2506         https://bugs.webkit.org/show_bug.cgi?id=52463
2507
2508         Fix various issues with the recent contentsScale changes:
2509
2510         * platform/graphics/ca/GraphicsLayerCA.cpp:
2511         (WebCore::GraphicsLayerCA::GraphicsLayerCA): Initialize m_contentsScale to 1.
2512         (WebCore::GraphicsLayerCA::updateContentsScale): Only do a setNeedsDisplay()
2513         if the layer draws content, otherwise we'll create backing store for empty layers.
2514         (WebCore::GraphicsLayerCA::swapFromOrToTiledLayer): Be sure to set contentsScale
2515         on the new (tiled or untiled) layer.
2516         (WebCore::GraphicsLayerCA::cloneLayer): Clones need contentsScale too.
2517
2518 2011-01-14  Simon Fraser  <simon.fraser@apple.com>
2519
2520         Let Xcode have it's way with the project file.
2521
2522         * WebCore.xcodeproj/project.pbxproj:
2523
2524 2011-01-14  Simon Fraser  <simon.fraser@apple.com>
2525
2526         Reviewed by Anders Carlsson.
2527
2528         Refactor some FrameView::syncCompositingState code
2529         https://bugs.webkit.org/show_bug.cgi?id=52459
2530
2531         Refactor some code in FrameView related to synchronizing
2532         compositing layer state.
2533         
2534         * page/FrameView.cpp:
2535         (WebCore::FrameView::syncCompositingStateForThisFrame):
2536         (WebCore::FrameView::syncCompositingStateRecursive):
2537         (WebCore::FrameView::paintContents):
2538         * page/FrameView.h:
2539
2540 2011-01-14  Viatcheslav Ostapenko  <ostapenko.viatcheslav@nokia.com>
2541
2542         Reviewed by Eric Seidel.
2543
2544         [Qt] Fix build problem introduced by http://trac.webkit.org/changeset/75713
2545         https://bugs.webkit.org/show_bug.cgi?id=30179
2546
2547         * plugins/symbian/PluginViewSymbian.cpp:
2548
2549 2011-01-14  Carlos Garcia Campos  <cgarcia@igalia.com>
2550
2551         Reviewed by Martin Robinson.
2552
2553         [GTK] Add volume slider to media player
2554         https://bugs.webkit.org/show_bug.cgi?id=51532
2555
2556         * css/mediaControlsGtk.css:
2557         (audio::-webkit-media-controls-panel, video::-webkit-media-controls-panel):
2558         (audio::-webkit-media-controls-volume-slider-container, video::-webkit-media-controls-volume-slider-container):
2559         (audio::-webkit-media-controls-volume-slider, video::-webkit-media-controls-volume-slider):
2560         * platform/gtk/RenderThemeGtk.cpp:
2561         (WebCore::RenderThemeGtk::adjustMediaSliderThumbSize):
2562         (WebCore::RenderThemeGtk::paintMediaVolumeSliderContainer):
2563         (WebCore::RenderThemeGtk::paintMediaVolumeSliderTrack):
2564         (WebCore::RenderThemeGtk::paintMediaVolumeSliderThumb):
2565         * platform/gtk/RenderThemeGtk.h:
2566         * platform/gtk/RenderThemeGtk2.cpp:
2567         (WebCore::RenderThemeGtk::paintSliderTrack):
2568         (WebCore::RenderThemeGtk::paintSliderThumb):
2569         (WebCore::RenderThemeGtk::adjustSliderThumbSize):
2570         * platform/gtk/RenderThemeGtk3.cpp:
2571         (WebCore::RenderThemeGtk::paintSliderTrack):
2572         (WebCore::RenderThemeGtk::paintSliderThumb):
2573         (WebCore::RenderThemeGtk::adjustSliderThumbSize):
2574
2575 2011-01-14  Joone Hur  <joone.hur@collabora.co.uk>
2576
2577         Reviewed by David Levin.
2578
2579         [GTK] Convert use of raw pointers to GOwnPtr in FileSystemGtk.cpp
2580         https://bugs.webkit.org/show_bug.cgi?id=52434
2581
2582         No new tests. This code will be tested when an implementation 
2583         of beginDragWithFiles is complete. 
2584
2585         * platform/gtk/FileSystemGtk.cpp:
2586         (WebCore::filenameToString): Use GOwnPtr instead of gchar pointer.
2587         (WebCore::fileSystemRepresentation): Ditto.
2588         (WebCore::filenameForDisplay): Ditto.
2589         (WebCore::pathGetFileName): Ditto.
2590
2591 2011-01-14  Pavel Podivilov  <podivilov@chromium.org>
2592
2593         Reviewed by Yury Semikhatsky.
2594
2595         Web Inspector: breakpoint text snippet in breakpoints sidebar pane disappears after reload.
2596         https://bugs.webkit.org/show_bug.cgi?id=52215
2597
2598         * inspector/front-end/Breakpoint.js:
2599         (WebInspector.Breakpoint):
2600         (WebInspector.Breakpoint.prototype.populateLabelElement):
2601         * inspector/front-end/Script.js:
2602         (WebInspector.Script.prototype.get linesCount):
2603         (WebInspector.Script.prototype.sourceLine):
2604         (WebInspector.Script.prototype.sourceLine.didRequestSource):
2605         (WebInspector.Script.prototype.set source):
2606         (WebInspector.Script.prototype.requestSource.didGetScriptSource):
2607         (WebInspector.Script.prototype.requestSource):
2608         * inspector/front-end/ScriptView.js:
2609         (WebInspector.ScriptView.prototype.setupSourceFrameIfNeeded.didRequestSource):
2610         (WebInspector.ScriptView.prototype.setupSourceFrameIfNeeded):
2611         * inspector/front-end/SourceFrame.js:
2612         (WebInspector.SourceFrame.prototype._addBreakpoint):
2613         * inspector/front-end/utilities.js:
2614         (String.prototype.findAll):
2615
2616 2011-01-14  Pavel Podivilov  <podivilov@chromium.org>
2617
2618         Reviewed by Yury Semikhatsky.
2619
2620         Web Inspector: provide script column offset to frontend.
2621         https://bugs.webkit.org/show_bug.cgi?id=52377
2622
2623         * bindings/js/ScriptDebugServer.cpp:
2624         (WebCore::ScriptDebugServer::dispatchDidParseSource):
2625         * bindings/js/ScriptSourceCode.h:
2626         (WebCore::ScriptSourceCode::ScriptSourceCode):
2627         * bindings/v8/DebuggerScript.js:
2628         ():
2629         * bindings/v8/ScriptDebugServer.cpp:
2630         (WebCore::ScriptDebugServer::dispatchDidParseSource):
2631         * inspector/Inspector.idl:
2632         * inspector/InspectorDebuggerAgent.cpp:
2633         (WebCore::InspectorDebuggerAgent::didParseSource):
2634         * inspector/InspectorDebuggerAgent.h:
2635         * inspector/ScriptDebugListener.h:
2636         * inspector/front-end/DebuggerModel.js:
2637         (WebInspector.DebuggerModel.prototype.parsedScriptSource):
2638         * inspector/front-end/Script.js:
2639         (WebInspector.Script):
2640
2641 2011-01-14  Ilya Tikhonovsky  <loislo@chromium.org>
2642
2643         Unreviewed one line fix for console-xhr-logging test.
2644
2645         The problem was introduced at r75788.
2646
2647         * inspector/InspectorBrowserDebuggerAgent.cpp:
2648         (WebCore::InspectorBrowserDebuggerAgent::willSendXMLHttpRequest):
2649
2650 2011-01-13  Yury Semikhatsky  <yurys@chromium.org>
2651
2652         Reviewed by Pavel Feldman.
2653
2654         Web Inspector: extract console related functionality into InspectorConsoleAgent
2655         https://bugs.webkit.org/show_bug.cgi?id=52282
2656
2657         * CMakeLists.txt:
2658         * GNUmakefile.am:
2659         * WebCore.gypi:
2660         * WebCore.pro:
2661         * inspector/CodeGeneratorInspector.pm:
2662         * inspector/ConsoleMessage.cpp:
2663         (WebCore::ConsoleMessage::~ConsoleMessage):
2664         * inspector/ConsoleMessage.h:
2665         * inspector/Inspector.idl:
2666         * inspector/InspectorConsoleAgent.cpp: Added.
2667         (WebCore::InspectorConsoleAgent::InspectorConsoleAgent):
2668         (WebCore::InspectorConsoleAgent::~InspectorConsoleAgent):
2669         (WebCore::InspectorConsoleAgent::setConsoleMessagesEnabled):
2670         (WebCore::InspectorConsoleAgent::clearConsoleMessages):
2671         (WebCore::InspectorConsoleAgent::reset):
2672         (WebCore::InspectorConsoleAgent::setFrontend):
2673         (WebCore::InspectorConsoleAgent::addMessageToConsole):
2674         (WebCore::InspectorConsoleAgent::startTiming):
2675         (WebCore::InspectorConsoleAgent::stopTiming):
2676         (WebCore::InspectorConsoleAgent::count):
2677         (WebCore::InspectorConsoleAgent::resourceRetrievedByXMLHttpRequest):
2678         (WebCore::InspectorConsoleAgent::didReceiveResponse):
2679         (WebCore::InspectorConsoleAgent::didFailLoading):
2680         (WebCore::InspectorConsoleAgent::addConsoleMessage):
2681         * inspector/InspectorConsoleAgent.h: Added.
2682         * inspector/InspectorController.cpp:
2683         (WebCore::InspectorController::InspectorController):
2684         (WebCore::InspectorController::clearConsoleMessages):
2685         (WebCore::InspectorController::connectFrontend):
2686         (WebCore::InspectorController::disconnectFrontend):
2687         (WebCore::InspectorController::didCommitLoad):
2688         * inspector/InspectorController.h:
2689         (WebCore::InspectorController::consoleAgent):
2690         * inspector/InspectorInstrumentation.cpp:
2691         (WebCore::InspectorInstrumentation::didReceiveResourceResponseImpl):
2692         (WebCore::InspectorInstrumentation::didFailLoadingImpl):
2693         (WebCore::InspectorInstrumentation::resourceRetrievedByXMLHttpRequestImpl):
2694         (WebCore::InspectorInstrumentation::addMessageToConsole):
2695         (WebCore::InspectorInstrumentation::count):
2696         (WebCore::InspectorInstrumentation::startTiming):
2697         (WebCore::InspectorInstrumentation::stopTiming):
2698         (WebCore::InspectorInstrumentation::addStartProfilingMessageToConsole):
2699         * inspector/InspectorInstrumentation.h:
2700         * inspector/InspectorProfilerAgent.cpp:
2701         (WebCore::InspectorProfilerAgent::addProfileFinishedMessageToConsole):
2702         (WebCore::InspectorProfilerAgent::addStartProfilingMessageToConsole):
2703         * inspector/front-end/ConsoleView.js:
2704         (WebInspector.ConsoleView):
2705         (WebInspector.ConsoleView.prototype.addConsoleMessage):
2706         (WebInspector.ConsoleView.prototype.updateConsoleMessageExpiredCount):
2707         (WebInspector.ConsoleView.prototype.consoleMessagesCleared):
2708         * inspector/front-end/inspector.js:
2709         * page/Console.cpp:
2710         (WebCore::Console::addMessage):
2711         (WebCore::Console::count):
2712         (WebCore::Console::profile):
2713         (WebCore::Console::time):
2714         (WebCore::Console::timeEnd):
2715         (WebCore::Console::group):
2716         (WebCore::Console::groupCollapsed):
2717         (WebCore::Console::groupEnd):
2718         * page/Console.h:
2719         * page/Console.idl:
2720
2721 2011-01-14  Pavel Feldman  <pfeldman@chromium.org>
2722
2723         Reviewed by Yury Semikhatsky.
2724
2725         Web Inspector: do not use this as protocol message
2726         dispatcher in models / agents.
2727         https://bugs.webkit.org/show_bug.cgi?id=52442
2728
2729         Models should never for InspectorBackend.registerDomainDispatcher("foo", this).
2730         There should be a clear way to tell whether method is being called
2731         from within front-end or by the backend.
2732
2733         * inspector/front-end/DOMAgent.js:
2734         (WebInspector.DOMAgent):
2735         (WebInspector.DOMAgent.prototype.nodeForId):
2736         (WebInspector.DOMAgent.prototype._bindNodes):
2737         (WebInspector.DOMAgent.prototype._removeBreakpoints):
2738         (WebInspector.DOMDispatcher):
2739         (WebInspector.DOMDispatcher.prototype.setDocument):
2740         (WebInspector.DOMDispatcher.prototype.attributesUpdated):
2741         (WebInspector.DOMDispatcher.prototype.characterDataModified):
2742         (WebInspector.DOMDispatcher.prototype.setChildNodes):
2743         (WebInspector.DOMDispatcher.prototype.setDetachedRoot):
2744         (WebInspector.DOMDispatcher.prototype.childNodeCountUpdated):
2745         (WebInspector.DOMDispatcher.prototype.childNodeInserted):
2746         (WebInspector.DOMDispatcher.prototype.childNodeRemoved):
2747         (WebInspector.DOMDispatcher.prototype.didCommitLoad):
2748         (WebInspector.ApplicationCacheDispatcher):
2749         (WebInspector.ApplicationCacheDispatcher.prototype.getApplicationCachesAsync):
2750         (WebInspector.ApplicationCacheDispatcher.prototype.updateApplicationCacheStatus):
2751         (WebInspector.ApplicationCacheDispatcher.prototype.updateNetworkState):
2752         * inspector/front-end/DOMStorage.js:
2753         (WebInspector.DOMStorageDispatcher):
2754         (WebInspector.DOMStorageDispatcher.prototype.addDOMStorage):
2755         (WebInspector.DOMStorageDispatcher.prototype.selectDOMStorage):
2756         (WebInspector.DOMStorageDispatcher.prototype.updateDOMStorage):
2757         * inspector/front-end/Database.js:
2758         (WebInspector.Database.prototype.executeSql):
2759         (WebInspector.DatabaseDispatcher):
2760         (WebInspector.DatabaseDispatcher.prototype.addDatabase):
2761         (WebInspector.DatabaseDispatcher.prototype.selectDatabase):
2762         (WebInspector.DatabaseDispatcher.prototype.sqlTransactionSucceeded):
2763         (WebInspector.DatabaseDispatcher.prototype.sqlTransactionFailed):
2764         * inspector/front-end/DebuggerModel.js:
2765         (WebInspector.DebuggerModel):
2766         (WebInspector.DebuggerModel.prototype._pausedScript):
2767         (WebInspector.DebuggerModel.prototype._resumedScript):
2768         (WebInspector.DebuggerModel.prototype._parsedScriptSource):
2769         (WebInspector.DebuggerModel.prototype._failedToParseScriptSource):
2770         (WebInspector.DebuggerDispatcher):
2771         (WebInspector.DebuggerDispatcher.prototype.pausedScript):
2772         (WebInspector.DebuggerDispatcher.prototype.resumedScript):
2773         (WebInspector.DebuggerDispatcher.prototype.parsedScriptSource):
2774         (WebInspector.DebuggerDispatcher.prototype.failedToParseScriptSource):
2775         * inspector/front-end/FileSystemView.js:
2776         (WebInspector.FileSystemDispatcher):
2777         (WebInspector.FileSystemDispatcher.prototype.getFileSystemPathsAsync):
2778         (WebInspector.FileSystemDispatcher.prototype.didGetFileSystemPath):
2779         (WebInspector.FileSystemDispatcher.prototype.didGetFileSystemError):
2780         (WebInspector.FileSystemDispatcher.prototype.didGetFileSystemDisabled):
2781         * inspector/front-end/ProfilesPanel.js:
2782         (WebInspector.ProfilesPanel):
2783         (WebInspector.ProfilesPanel.prototype._addProfileHeader):
2784         (WebInspector.ProfilesPanel.prototype._removeProfileHeader):
2785         (WebInspector.ProfilesPanel.prototype._addHeapSnapshotChunk):
2786         (WebInspector.ProfilesPanel.prototype._finishHeapSnapshot):
2787         (WebInspector.ProfilesPanel.prototype._setRecordingProfile):
2788         (WebInspector.ProfilerDispatcher):
2789         (WebInspector.ProfilerDispatcher.prototype.profilerWasEnabled):
2790         (WebInspector.ProfilerDispatcher.prototype.profilerWasDisabled):
2791         (WebInspector.ProfilerDispatcher.prototype.resetProfiles):
2792         (WebInspector.ProfilerDispatcher.prototype.addProfileHeader):
2793         (WebInspector.ProfilerDispatcher.prototype.addHeapSnapshotChunk):
2794         (WebInspector.ProfilerDispatcher.prototype.finishHeapSnapshot):
2795         (WebInspector.ProfilerDispatcher.prototype.setRecordingProfile):
2796         (WebInspector.ProfileSidebarTreeElement.prototype.ondelete):
2797         * inspector/front-end/ResourceTreeModel.js:
2798         (WebInspector.ResourceTreeModel):
2799         * inspector/front-end/TimelinePanel.js:
2800         (WebInspector.TimelinePanel):
2801         (WebInspector.TimelinePanel.prototype._timelineProfilerWasStarted):
2802         (WebInspector.TimelinePanel.prototype._timelineProfilerWasStopped):
2803         (WebInspector.TimelinePanel.prototype._addRecordToTimeline):
2804         (WebInspector.TimelineDispatcher):
2805         (WebInspector.TimelineDispatcher.prototype.timelineProfilerWasStarted):
2806         (WebInspector.TimelineDispatcher.prototype.timelineProfilerWasStopped):
2807         (WebInspector.TimelineDispatcher.prototype.addRecordToTimeline):
2808
2809 2011-01-14  Csaba Osztrogonác  <ossy@webkit.org>
2810
2811         [Qt][V8] Unreviewed buildfix after r75788.
2812
2813         * inspector/InspectorBrowserDebuggerAgent.cpp:
2814
2815 2011-01-12  Ilya Tikhonovsky  <loislo@chromium.org>
2816
2817         Reviewed by Yury Semikhatsky.
2818
2819         Web Inspector: Extract BrowserDebuggerAgent from InspectorController, InspectorDOMAgent and InspectorDebugger agent.
2820         We have some methods of Debugger which are related to DOM.
2821         Lets extract these methods to BrowserDebugger agent.
2822
2823         http://bugs.webkit.org/show_bug.cgi?id=52294
2824
2825         * CMakeLists.txt:
2826         * WebCore.gypi:
2827         * WebCore.pro:
2828         * WebCore.vcproj/WebCore.vcproj:
2829         * WebCore.xcodeproj/project.pbxproj:
2830         * inspector/CodeGeneratorInspector.pm:
2831         * inspector/Inspector.idl:
2832         * inspector/InspectorBrowserDebuggerAgent.cpp: Added.
2833         (WebCore::InspectorBrowserDebuggerAgent::InspectorBrowserDebuggerAgent):
2834         (WebCore::InspectorBrowserDebuggerAgent::~InspectorBrowserDebuggerAgent):
2835         (WebCore::InspectorBrowserDebuggerAgent::discardBindings):
2836         (WebCore::InspectorBrowserDebuggerAgent::setEventListenerBreakpoint):
2837         (WebCore::InspectorBrowserDebuggerAgent::removeEventListenerBreakpoint):
2838         (WebCore::InspectorBrowserDebuggerAgent::didInsertDOMNode):
2839         (WebCore::InspectorBrowserDebuggerAgent::didRemoveDOMNode):
2840         (WebCore::InspectorBrowserDebuggerAgent::setDOMBreakpoint):
2841         (WebCore::InspectorBrowserDebuggerAgent::removeDOMBreakpoint):
2842         (WebCore::InspectorBrowserDebuggerAgent::willInsertDOMNode):
2843         (WebCore::InspectorBrowserDebuggerAgent::willRemoveDOMNode):
2844         (WebCore::InspectorBrowserDebuggerAgent::willModifyDOMAttr):
2845         (WebCore::InspectorBrowserDebuggerAgent::descriptionForDOMEvent):
2846         (WebCore::InspectorBrowserDebuggerAgent::hasBreakpoint):
2847         (WebCore::InspectorBrowserDebuggerAgent::updateSubtreeBreakpoints):
2848         (WebCore::InspectorBrowserDebuggerAgent::pauseOnNativeEventIfNeeded):
2849         (WebCore::InspectorBrowserDebuggerAgent::setXHRBreakpoint):
2850         (WebCore::InspectorBrowserDebuggerAgent::removeXHRBreakpoint):
2851         (WebCore::InspectorBrowserDebuggerAgent::willSendXMLHttpRequest):
2852         (WebCore::InspectorBrowserDebuggerAgent::clearForPageNavigation):
2853         * inspector/InspectorBrowserDebuggerAgent.h: Added.
2854         (WebCore::InspectorBrowserDebuggerAgent::create):
2855         * inspector/InspectorController.cpp:
2856         (WebCore::InspectorController::InspectorController):
2857         (WebCore::InspectorController::inspectedPageDestroyed):
2858         (WebCore::InspectorController::didCommitLoad):
2859         (WebCore::InspectorController::enableDebuggerFromFrontend):
2860         (WebCore::InspectorController::disableDebugger):
2861         (WebCore::InspectorController::restoreStickyBreakpoints):
2862         (WebCore::InspectorController::restoreStickyBreakpoint):
2863         * inspector/InspectorController.h:
2864         * inspector/InspectorDOMAgent.cpp:
2865         (WebCore::InspectorDOMAgent::discardBindings):
2866         (WebCore::InspectorDOMAgent::didInsertDOMNode):
2867         (WebCore::InspectorDOMAgent::didRemoveDOMNode):
2868         * inspector/InspectorDOMAgent.h:
2869         * inspector/InspectorInstrumentation.cpp:
2870         (WebCore::InspectorInstrumentation::willInsertDOMNodeImpl):
2871         (WebCore::InspectorInstrumentation::didInsertDOMNodeImpl):
2872         (WebCore::InspectorInstrumentation::willRemoveDOMNodeImpl):
2873         (WebCore::InspectorInstrumentation::didRemoveDOMNodeImpl):
2874         (WebCore::InspectorInstrumentation::willModifyDOMAttrImpl):
2875         (WebCore::InspectorInstrumentation::willSendXMLHttpRequestImpl):
2876         (WebCore::InspectorInstrumentation::pauseOnNativeEventIfNeeded):
2877
2878 2011-01-14  Andrey Kosyakov  <caseq@chromium.org>
2879
2880         Reviewed by Pavel Feldman.
2881
2882         Web Inspector: redirected resources not handled properly in Network panel
2883         https://bugs.webkit.org/show_bug.cgi?id=52292
2884
2885         * inspector/Inspector.idl: Do not pass isMainResource to identifierForInitialRequest() (it's useless, as we may hit provisional load)
2886         * inspector/InspectorInstrumentation.cpp: Ditto.
2887         (WebCore::InspectorInstrumentation::identifierForInitialRequestImpl):
2888         * inspector/InspectorResourceAgent.cpp: Ditto.
2889         (WebCore::InspectorResourceAgent::identifierForInitialRequest):
2890         * inspector/InspectorResourceAgent.h: Ditto.
2891         * inspector/InspectorInstrumentation.cpp: Ditto.
2892         (WebCore::InspectorInstrumentation::identifierForInitialRequestImpl): Fix main resource detection.
2893         * inspector/front-end/AuditsPanel.js: WebInspector.networkResources now returns array, not map.
2894         * inspector/front-end/ConsoleView.js: User WebInspector.resourceById() to get resource
2895         (WebInspector.ConsoleMessage.prototype._formatMessage):
2896         * inspector/front-end/ExtensionServer.js: Ditto.
2897         (WebInspector.ExtensionServer.prototype._onRevealAndSelectResource):
2898         (WebInspector.ExtensionServer.prototype._onGetResourceContent):
2899         * inspector/front-end/HAREntry.js: WebInspector.networkResources now returns array, not map
2900         (WebInspector.HARLog.prototype.build):
2901         (WebInspector.HARLog.prototype._convertResource):
2902         * inspector/front-end/NetworkManager.js:
2903         (WebInspector.NetworkManager): Use appendResource, not refreshResource, when adding a new resource.
2904         (WebInspector.NetworkManager.prototype.identifierForInitialRequest):
2905         (WebInspector.NetworkManager.prototype.willSendRequest):
2906         (WebInspector.NetworkManager.prototype.didLoadResourceFromMemoryCache):
2907         (WebInspector.NetworkManager.prototype.setInitialContent):
2908         (WebInspector.NetworkManager.prototype.didCommitLoadForFrame):
2909         (WebInspector.NetworkManager.prototype.didCreateWebSocket):
2910         (WebInspector.NetworkManager.prototype._createResource): always register resource URL with ResourceTreeModel
2911         (WebInspector.NetworkManager.prototype._appendRedirect):
2912         * inspector/front-end/NetworkPanel.js:
2913         (WebInspector.NetworkPanel):
2914         (WebInspector.NetworkPanel.prototype.get resources):
2915         (WebInspector.NetworkPanel.prototype.resourceById):
2916         (WebInspector.NetworkPanel.prototype.appendResource): Add resource as new iff appendResource was added.
2917         (WebInspector.NetworkPanel.prototype.refreshResource): ditto.
2918         (WebInspector.NetworkPanel.prototype.mainResourceChanged): Clear console upon arrival of new main resource.
2919         * inspector/front-end/ResourceTreeModel.js: Expose unbindResourceURL, bind resources automatically upon creation.
2920         (WebInspector.ResourceTreeModel.prototype._clearResources):
2921         (WebInspector.ResourceTreeModel.prototype.unbindResourceURL):
2922         (WebInspector.ResourceTreeModel.prototype._addFramesRecursively):
2923         (WebInspector.ResourceTreeModel.prototype.createResource):
2924         * inspector/front-end/inspector.js:
2925         (WebInspector.resourceById):
2926
2927 2011-01-14  Sheriff Bot  <webkit.review.bot@gmail.com>
2928
2929         Unreviewed, rolling out r75783.
2930         http://trac.webkit.org/changeset/75783
2931         https://bugs.webkit.org/show_bug.cgi?id=52439
2932
2933         a bit strange but the same patch have broken mac builds at
2934         linking stage. (Requested by loislo2 on #webkit).
2935
2936         * CMakeLists.txt:
2937         * GNUmakefile.am:
2938         * WebCore.gypi:
2939         * WebCore.pro:
2940         * WebCore.vcproj/WebCore.vcproj:
2941         * WebCore.xcodeproj/project.pbxproj:
2942         * inspector/CodeGeneratorInspector.pm:
2943         * inspector/Inspector.idl:
2944         * inspector/InspectorBrowserDebuggerAgent.cpp: Removed.
2945         * inspector/InspectorBrowserDebuggerAgent.h: Removed.
2946         * inspector/InspectorController.cpp:
2947         (WebCore::InspectorController::InspectorController):
2948         (WebCore::InspectorController::inspectedPageDestroyed):
2949         (WebCore::InspectorController::didCommitLoad):
2950         (WebCore::InspectorController::enableDebuggerFromFrontend):
2951         (WebCore::InspectorController::disableDebugger):
2952         (WebCore::InspectorController::restoreStickyBreakpoints):
2953         (WebCore::InspectorController::restoreStickyBreakpoint):
2954         (WebCore::InspectorController::setEventListenerBreakpoint):
2955         (WebCore::InspectorController::removeEventListenerBreakpoint):
2956         (WebCore::InspectorController::hasEventListenerBreakpoint):
2957         (WebCore::InspectorController::setXHRBreakpoint):
2958         (WebCore::InspectorController::removeXHRBreakpoint):
2959         (WebCore::InspectorController::hasXHRBreakpoint):
2960         * inspector/InspectorController.h:
2961         * inspector/InspectorDOMAgent.cpp:
2962         (WebCore::InspectorDOMAgent::discardBindings):
2963         (WebCore::InspectorDOMAgent::setDOMBreakpoint):
2964         (WebCore::InspectorDOMAgent::removeDOMBreakpoint):
2965         (WebCore::InspectorDOMAgent::shouldBreakOnNodeInsertion):
2966         (WebCore::InspectorDOMAgent::shouldBreakOnNodeRemoval):
2967         (WebCore::InspectorDOMAgent::shouldBreakOnAttributeModification):
2968         (WebCore::InspectorDOMAgent::descriptionForDOMEvent):
2969         (WebCore::InspectorDOMAgent::didInsertDOMNode):
2970         (WebCore::InspectorDOMAgent::didRemoveDOMNode):
2971         (WebCore::InspectorDOMAgent::hasBreakpoint):
2972         (WebCore::InspectorDOMAgent::updateSubtreeBreakpoints):
2973         * inspector/InspectorDOMAgent.h:
2974         * inspector/InspectorInstrumentation.cpp:
2975         (WebCore::InspectorInstrumentation::willInsertDOMNodeImpl):
2976         (WebCore::InspectorInstrumentation::didInsertDOMNodeImpl):
2977         (WebCore::InspectorInstrumentation::willRemoveDOMNodeImpl):
2978         (WebCore::InspectorInstrumentation::didRemoveDOMNodeImpl):
2979         (WebCore::InspectorInstrumentation::willModifyDOMAttrImpl):
2980         (WebCore::InspectorInstrumentation::willSendXMLHttpRequestImpl):
2981         (WebCore::InspectorInstrumentation::pauseOnNativeEventIfNeeded):
2982
2983 2011-01-12  Ilya Tikhonovsky  <loislo@chromium.org>
2984
2985         Reviewed by Yury Semikhatsky.
2986
2987         Web Inspector: Extract BrowserDebuggerAgent from InspectorController, InspectorDOMAgent and InspectorDebugger agent.
2988         We have some methods of Debugger which are related to DOM.
2989         Lets extract these methods to BrowserDebugger agent.
2990
2991         http://bugs.webkit.org/show_bug.cgi?id=52294
2992
2993         * CMakeLists.txt:
2994         * WebCore.gypi:
2995         * WebCore.pro:
2996         * WebCore.vcproj/WebCore.vcproj:
2997         * WebCore.xcodeproj/project.pbxproj:
2998         * inspector/CodeGeneratorInspector.pm:
2999         * inspector/Inspector.idl:
3000         * inspector/InspectorBrowserDebuggerAgent.cpp: Added.
3001         (WebCore::InspectorBrowserDebuggerAgent::InspectorBrowserDebuggerAgent):
3002         (WebCore::InspectorBrowserDebuggerAgent::~InspectorBrowserDebuggerAgent):
3003         (WebCore::InspectorBrowserDebuggerAgent::discardBindings):
3004         (WebCore::InspectorBrowserDebuggerAgent::setEventListenerBreakpoint):
3005         (WebCore::InspectorBrowserDebuggerAgent::removeEventListenerBreakpoint):
3006         (WebCore::InspectorBrowserDebuggerAgent::didInsertDOMNode):
3007         (WebCore::InspectorBrowserDebuggerAgent::didRemoveDOMNode):
3008         (WebCore::InspectorBrowserDebuggerAgent::setDOMBreakpoint):
3009         (WebCore::InspectorBrowserDebuggerAgent::removeDOMBreakpoint):
3010         (WebCore::InspectorBrowserDebuggerAgent::willInsertDOMNode):
3011         (WebCore::InspectorBrowserDebuggerAgent::willRemoveDOMNode):
3012         (WebCore::InspectorBrowserDebuggerAgent::willModifyDOMAttr):
3013         (WebCore::InspectorBrowserDebuggerAgent::descriptionForDOMEvent):
3014         (WebCore::InspectorBrowserDebuggerAgent::hasBreakpoint):
3015         (WebCore::InspectorBrowserDebuggerAgent::updateSubtreeBreakpoints):
3016         (WebCore::InspectorBrowserDebuggerAgent::pauseOnNativeEventIfNeeded):
3017         (WebCore::InspectorBrowserDebuggerAgent::setXHRBreakpoint):
3018         (WebCore::InspectorBrowserDebuggerAgent::removeXHRBreakpoint):
3019         (WebCore::InspectorBrowserDebuggerAgent::willSendXMLHttpRequest):
3020         (WebCore::InspectorBrowserDebuggerAgent::clearForPageNavigation):
3021         * inspector/InspectorBrowserDebuggerAgent.h: Added.
3022         (WebCore::InspectorBrowserDebuggerAgent::create):
3023         * inspector/InspectorController.cpp:
3024         (WebCore::InspectorController::InspectorController):
3025         (WebCore::InspectorController::inspectedPageDestroyed):
3026         (WebCore::InspectorController::didCommitLoad):
3027         (WebCore::InspectorController::enableDebuggerFromFrontend):
3028         (WebCore::InspectorController::disableDebugger):
3029         (WebCore::InspectorController::restoreStickyBreakpoints):
3030         (WebCore::InspectorController::restoreStickyBreakpoint):
3031         * inspector/InspectorController.h:
3032         * inspector/InspectorDOMAgent.cpp:
3033         (WebCore::InspectorDOMAgent::discardBindings):
3034         (WebCore::InspectorDOMAgent::didInsertDOMNode):
3035         (WebCore::InspectorDOMAgent::didRemoveDOMNode):
3036         * inspector/InspectorDOMAgent.h:
3037         * inspector/InspectorInstrumentation.cpp:
3038         (WebCore::InspectorInstrumentation::willInsertDOMNodeImpl):
3039         (WebCore::InspectorInstrumentation::didInsertDOMNodeImpl):
3040         (WebCore::InspectorInstrumentation::willRemoveDOMNodeImpl):
3041         (WebCore::InspectorInstrumentation::didRemoveDOMNodeImpl):
3042         (WebCore::InspectorInstrumentation::willModifyDOMAttrImpl):
3043         (WebCore::InspectorInstrumentation::willSendXMLHttpRequestImpl):
3044         (WebCore::InspectorInstrumentation::pauseOnNativeEventIfNeeded):
3045
3046 2011-01-14  Pavel Feldman  <pfeldman@chromium.org>
3047
3048         Not reviewed: build fix.
3049
3050         * WebCore.vcproj/WebCore.vcproj:
3051
3052 2011-01-14  Pavel Feldman  <pfeldman@chromium.org>
3053
3054         Reviewed by Yury Semikhatsky.
3055
3056         Web Inspector: extract InspectorSettings from InspectorState,
3057         simplify it.
3058         https://bugs.webkit.org/show_bug.cgi?id=52429
3059
3060         * CMakeLists.txt:
3061         * GNUmakefile.am:
3062         * WebCore.gypi:
3063         * WebCore.pro:
3064         * WebCore.xcodeproj/project.pbxproj:
3065         * inspector/InspectorClient.h:
3066         * inspector/InspectorController.cpp:
3067         (WebCore::InspectorController::InspectorController):
3068         (WebCore::InspectorController::inspectorStartsAttached):
3069         (WebCore::InspectorController::setInspectorStartsAttached):
3070         (WebCore::InspectorController::setInspectorAttachedHeight):
3071         (WebCore::InspectorController::inspectorAttachedHeight):
3072         (WebCore::InspectorController::setMonitoringXHREnabled):
3073         (WebCore::InspectorController::restoreDebugger):
3074         (WebCore::InspectorController::restoreProfiler):
3075         (WebCore::InspectorController::ensureSettingsLoaded):
3076         (WebCore::InspectorController::enableProfiler):
3077         (WebCore::InspectorController::disableProfiler):
3078         (WebCore::InspectorController::enableDebuggerFromFrontend):
3079         (WebCore::InspectorController::disableDebugger):
3080         * inspector/InspectorController.h:
3081         * inspector/InspectorSettings.cpp: Added.
3082         (WebCore::InspectorSettings::InspectorSettings):
3083         (WebCore::InspectorSettings::getBoolean):
3084         (WebCore::InspectorSettings::setBoolean):
3085         (WebCore::InspectorSettings::getLong):
3086         (WebCore::InspectorSettings::setLong):
3087         (WebCore::InspectorSettings::registerBoolean):
3088         (WebCore::InspectorSettings::registerLong):
3089         * inspector/InspectorSettings.h: Added.
3090         * inspector/InspectorState.cpp:
3091         (WebCore::InspectorState::InspectorState):
3092         (WebCore::InspectorState::setValue):
3093         (WebCore::InspectorState::setObject):
3094         (WebCore::InspectorState::registerBoolean):
3095         (WebCore::InspectorState::registerString):
3096         (WebCore::InspectorState::registerLong):
3097         (WebCore::InspectorState::registerObject):
3098         (WebCore::InspectorState::Property::create):
3099         * inspector/InspectorState.h:
3100         (WebCore::InspectorState::setBoolean):
3101         (WebCore::InspectorState::setString):
3102         (WebCore::InspectorState::setLong):
3103
3104 2011-01-14  Sheriff Bot  <webkit.review.bot@gmail.com>
3105
3106         Unreviewed, rolling out r75774.
3107         http://trac.webkit.org/changeset/75774
3108         https://bugs.webkit.org/show_bug.cgi?id=52431
3109
3110         gtk builds were broken (Requested by loislo2 on #webkit).
3111
3112         * CMakeLists.txt:
3113         * WebCore.gypi:
3114         * WebCore.pro:
3115         * WebCore.vcproj/WebCore.vcproj:
3116         * WebCore.xcodeproj/project.pbxproj:
3117         * inspector/CodeGeneratorInspector.pm:
3118         * inspector/Inspector.idl:
3119         * inspector/InspectorBrowserDebuggerAgent.cpp: Removed.
3120         * inspector/InspectorBrowserDebuggerAgent.h: Removed.
3121         * inspector/InspectorController.cpp:
3122         (WebCore::InspectorController::InspectorController):
3123         (WebCore::InspectorController::inspectedPageDestroyed):
3124         (WebCore::InspectorController::didCommitLoad):
3125         (WebCore::InspectorController::enableDebuggerFromFrontend):
3126         (WebCore::InspectorController::disableDebugger):
3127         (WebCore::InspectorController::restoreStickyBreakpoints):
3128         (WebCore::InspectorController::restoreStickyBreakpoint):
3129         (WebCore::InspectorController::setEventListenerBreakpoint):
3130         (WebCore::InspectorController::removeEventListenerBreakpoint):
3131         (WebCore::InspectorController::hasEventListenerBreakpoint):
3132         (WebCore::InspectorController::setXHRBreakpoint):
3133         (WebCore::InspectorController::removeXHRBreakpoint):
3134         (WebCore::InspectorController::hasXHRBreakpoint):
3135         * inspector/InspectorController.h:
3136         * inspector/InspectorDOMAgent.cpp:
3137         (WebCore::InspectorDOMAgent::discardBindings):
3138         (WebCore::InspectorDOMAgent::setDOMBreakpoint):
3139         (WebCore::InspectorDOMAgent::removeDOMBreakpoint):
3140         (WebCore::InspectorDOMAgent::shouldBreakOnNodeInsertion):
3141         (WebCore::InspectorDOMAgent::shouldBreakOnNodeRemoval):
3142         (WebCore::InspectorDOMAgent::shouldBreakOnAttributeModification):
3143         (WebCore::InspectorDOMAgent::descriptionForDOMEvent):
3144         (WebCore::InspectorDOMAgent::didInsertDOMNode):
3145         (WebCore::InspectorDOMAgent::didRemoveDOMNode):
3146         (WebCore::InspectorDOMAgent::hasBreakpoint):
3147         (WebCore::InspectorDOMAgent::updateSubtreeBreakpoints):
3148         * inspector/InspectorDOMAgent.h:
3149         * inspector/InspectorInstrumentation.cpp:
3150         (WebCore::InspectorInstrumentation::willInsertDOMNodeImpl):
3151         (WebCore::InspectorInstrumentation::didInsertDOMNodeImpl):
3152         (WebCore::InspectorInstrumentation::willRemoveDOMNodeImpl):
3153         (WebCore::InspectorInstrumentation::didRemoveDOMNodeImpl):
3154         (WebCore::InspectorInstrumentation::willModifyDOMAttrImpl):
3155         (WebCore::InspectorInstrumentation::willSendXMLHttpRequestImpl):
3156         (WebCore::InspectorInstrumentation::pauseOnNativeEventIfNeeded):
3157
3158 2011-01-12  Ilya Tikhonovsky  <loislo@chromium.org>
3159
3160         Reviewed by Yury Semikhatsky.
3161
3162         Web Inspector: Extract BrowserDebuggerAgent from InspectorController, InspectorDOMAgent and InspectorDebugger agent.
3163         We have some methods of Debugger which are related to DOM.
3164         Lets extract these methods to BrowserDebugger agent.
3165
3166         http://bugs.webkit.org/show_bug.cgi?id=52294
3167
3168         * CMakeLists.txt:
3169         * WebCore.gypi:
3170         * WebCore.pro:
3171         * WebCore.vcproj/WebCore.vcproj:
3172         * WebCore.xcodeproj/project.pbxproj:
3173         * inspector/CodeGeneratorInspector.pm:
3174         * inspector/Inspector.idl:
3175         * inspector/InspectorBrowserDebuggerAgent.cpp: Added.
3176         (WebCore::InspectorBrowserDebuggerAgent::InspectorBrowserDebuggerAgent):
3177         (WebCore::InspectorBrowserDebuggerAgent::~InspectorBrowserDebuggerAgent):
3178         (WebCore::InspectorBrowserDebuggerAgent::discardBindings):
3179         (WebCore::InspectorBrowserDebuggerAgent::setEventListenerBreakpoint):
3180         (WebCore::InspectorBrowserDebuggerAgent::removeEventListenerBreakpoint):
3181         (WebCore::InspectorBrowserDebuggerAgent::didInsertDOMNode):
3182         (WebCore::InspectorBrowserDebuggerAgent::didRemoveDOMNode):
3183         (WebCore::InspectorBrowserDebuggerAgent::setDOMBreakpoint):
3184         (WebCore::InspectorBrowserDebuggerAgent::removeDOMBreakpoint):
3185         (WebCore::InspectorBrowserDebuggerAgent::willInsertDOMNode):
3186         (WebCore::InspectorBrowserDebuggerAgent::willRemoveDOMNode):
3187         (WebCore::InspectorBrowserDebuggerAgent::willModifyDOMAttr):
3188         (WebCore::InspectorBrowserDebuggerAgent::descriptionForDOMEvent):
3189         (WebCore::InspectorBrowserDebuggerAgent::hasBreakpoint):
3190         (WebCore::InspectorBrowserDebuggerAgent::updateSubtreeBreakpoints):
3191         (WebCore::InspectorBrowserDebuggerAgent::pauseOnNativeEventIfNeeded):
3192         (WebCore::InspectorBrowserDebuggerAgent::setXHRBreakpoint):
3193         (WebCore::InspectorBrowserDebuggerAgent::removeXHRBreakpoint):
3194         (WebCore::InspectorBrowserDebuggerAgent::willSendXMLHttpRequest):
3195         (WebCore::InspectorBrowserDebuggerAgent::clearForPageNavigation):
3196         * inspector/InspectorBrowserDebuggerAgent.h: Added.
3197         (WebCore::InspectorBrowserDebuggerAgent::create):
3198         * inspector/InspectorController.cpp:
3199         (WebCore::InspectorController::InspectorController):
3200         (WebCore::InspectorController::inspectedPageDestroyed):
3201         (WebCore::InspectorController::didCommitLoad):
3202         (WebCore::InspectorController::enableDebuggerFromFrontend):
3203         (WebCore::InspectorController::disableDebugger):
3204         (WebCore::InspectorController::restoreStickyBreakpoints):
3205         (WebCore::InspectorController::restoreStickyBreakpoint):
3206         * inspector/InspectorController.h:
3207         * inspector/InspectorDOMAgent.cpp:
3208         (WebCore::InspectorDOMAgent::discardBindings):
3209         (WebCore::InspectorDOMAgent::didInsertDOMNode):
3210         (WebCore::InspectorDOMAgent::didRemoveDOMNode):
3211         * inspector/InspectorDOMAgent.h:
3212         * inspector/InspectorInstrumentation.cpp:
3213         (WebCore::InspectorInstrumentation::willInsertDOMNodeImpl):
3214         (WebCore::InspectorInstrumentation::didInsertDOMNodeImpl):
3215         (WebCore::InspectorInstrumentation::willRemoveDOMNodeImpl):
3216         (WebCore::InspectorInstrumentation::didRemoveDOMNodeImpl):
3217         (WebCore::InspectorInstrumentation::willModifyDOMAttrImpl):
3218         (WebCore::InspectorInstrumentation::willSendXMLHttpRequestImpl):
3219         (WebCore::InspectorInstrumentation::pauseOnNativeEventIfNeeded):
3220
3221 2011-01-13  Kent Tamura  <tkent@chromium.org>
3222
3223         Reviewed by Dimitri Glazkov.
3224
3225         Implement form validation message UI
3226         https://bugs.webkit.org/show_bug.cgi?id=48980
3227
3228         * Add four internal pseudo selectors:
3229           - -webkit-validation-bubble
3230           - -webkit-validation-bubble-message
3231           - -webkit-validation-bubble-top-outer-arrow
3232           - -webkit-validation-bubble-top-inner-arrow
3233
3234         * Implement ValidationMessage functions
3235           Show the message for <the number of characters> / 20.0 seconds.
3236
3237         No new tests because the feature is disabled by default for now and the
3238         new behavior is strongly timing-dependent.
3239
3240         * css/CSSStyleSelector.cpp:
3241         (WebCore::CSSStyleSelector::canShareStyleWithElement):
3242           Do not share a style with elements with different shadowPseudoId().
3243         * css/html.css: Define appearance for the internal selectors.
3244         (::-webkit-validation-bubble):
3245         (::-webkit-validation-bubble-message):
3246         (::-webkit-validation-bubble-top-outer-arrow):
3247         (::-webkit-validation-bubble-top-inner-arrow):
3248         * dom/Node.cpp:
3249         (WebCore::Node::createRendererIfNeeded):
3250           Allow to add shadow renderers even if canHaveChildren() returns false.
3251         * html/HTMLFormControlElement.cpp:
3252         (WebCore::HTMLFormControlElement::detach):
3253           Remove m_validationMessage immediately because we can't use
3254           hideVisibleValidationMessage(), which calls a ValidationMessage function later.
3255         (WebCore::HTMLFormControlElement::updateVisibleValidationMessage):
3256           - Don't create ValidationMessage if the message is empty.
3257           - Remove the check for message equality.
3258         (WebCore::HTMLFormControlElement::hideVisibleValidationMessage):
3259           Don't remove m_validationMessage immediately. We shouldn't make the
3260           element needsLayout() state in this context.
3261         * html/ValidationMessage.cpp:
3262         (WebCore::ValidationMessage::~ValidationMessage):
3263           hideMessage() -> deleteBubbleTree() renaming.
3264         (WebCore::ValidationMessage::setMessage): Implemented.
3265         (WebCore::ValidationMessage::setMessageDOMAndStartTimer):
3266           Added. This updates the validation message and starts the timer to hide it.
3267         (WebCore::ElementWithPseudoId):
3268           Added to help implementations of styled shadow nodes.
3269         (WebCore::ValidationMessage::buildBubbleTree): Added.
3270         (WebCore::ValidationMessage::requestToHideMessage): Added.
3271         (WebCore::ValidationMessage::deleteBubbleTree):
3272           Renamed from hideMessage(), and implemented.
3273         * html/ValidationMessage.h: Add declarations.
3274
3275 2011-01-13  Dan Bernstein  <mitz@apple.com>
3276
3277         Reviewed by Alexey Proskuryakov.
3278
3279         <rdar://problem/8827065> REGRESSION (r71884): Cross-origin XHR fails if willSendRequest changes the URL
3280         https://bugs.webkit.org/show_bug.cgi?id=52419
3281
3282         Test: http/tests/loading/cross-origin-XHR-willLoadRequest.html
3283
3284         * loader/ResourceLoader.cpp:
3285         (WebCore::ResourceLoader::init): Complete r74453 by ensuring that m_request is only set after
3286         willSendRequest(). Otherwise, willSendRequest() ends up calling into
3287         ThreadableDocumentRequest::willSendRequest(), which cancels the request.
3288
3289 2011-01-13  Dan Bernstein  <mitz@apple.com>
3290
3291         Reviewed by Mark Rowe.
3292
3293         Don’t try to compile InjectedScriptSource.js into WebCore.
3294
3295         * WebCore.xcodeproj/project.pbxproj:
3296
3297 2011-01-13  Mike Thole  <mthole@apple.com>
3298
3299         Reviewed by Darin Adler and Brady Eidson.
3300
3301         The pageScaleFactor() should be saved/restored along with the scroll position
3302         https://bugs.webkit.org/show_bug.cgi?id=52406
3303         <rdar://problem/8714412>
3304
3305         * history/HistoryItem.cpp:
3306         (WebCore::HistoryItem::HistoryItem): Initialize m_pageScaleFactor.
3307         (WebCore::HistoryItem::pageScaleFactor): Added getter.
3308         (WebCore::HistoryItem::setPageScaleFactor): Added setter.
3309         (WebCore::HistoryItem::encodeBackForwardTreeNode): Encode m_pageScaleFactor.
3310         (WebCore::HistoryItem::decodeBackForwardTree): Decode m_pageScaleFactor.
3311         * history/HistoryItem.h:
3312         * loader/HistoryController.cpp:
3313         (WebCore::HistoryController::saveScrollPositionAndViewStateToItem): Save the page scale factor...
3314         (WebCore::HistoryController::restoreScrollPositionAndViewState): ...and restore it here.
3315
3316 2011-01-13  Evan Martin  <evan@chromium.org>
3317
3318         Reviewed by Tony Chang.
3319
3320         [chromium] drop backwards iteration in Linux complex text code
3321         https://bugs.webkit.org/show_bug.cgi?id=52403
3322
3323         ComplexTextController previously supported iterating through the text in
3324         both directions, but this resulted in duplicate code for each path.
3325         Instead, by being more careful about flipping signs where appropriate,
3326         we can refactor the code into one code path.
3327
3328         No tests, just a refactoring; should be covered by existing tests.
3329
3330         * platform/graphics/chromium/ComplexTextControllerLinux.cpp:
3331         (WebCore::ComplexTextController::ComplexTextController):
3332         (WebCore::ComplexTextController::reset):
3333         (WebCore::ComplexTextController::nextScriptRun):
3334         * platform/graphics/chromium/ComplexTextControllerLinux.h:
3335         * platform/graphics/chromium/FontLinux.cpp:
3336         (WebCore::glyphIndexForXPositionInScriptRun):
3337         (WebCore::Font::selectionRectForComplexText):
3338
3339 2011-01-13  Dimitri Glazkov  <dglazkov@chromium.org>
3340
3341         Reviewed by Darin Adler.
3342
3343         Flip input[type=range] to use the new shadow DOM model.
3344         https://bugs.webkit.org/show_bug.cgi?id=52317
3345
3346         This is a straight-up flip, minimal change to the logic, which will be
3347         refactored in a follow-up patch.
3348
3349         Covered by existing tests.
3350
3351         * css/CSSStyleSelector.cpp:
3352         (WebCore::CSSStyleSelector::initForStyleResolve): Changed to use either
3353             host or parent node to find parent.
3354         * html/HTMLInputElement.cpp:
3355         (WebCore::HTMLInputElement::updateType): Added logic for destroying/creating
3356             shadow DOM subtree.
3357         * html/InputType.cpp:
3358         (WebCore::InputType::createShadowSubtree): Added empty decl.
3359         (WebCore::InputType::destroyShadowSubtree): Added a method to destroy
3360             shadow subtree.
3361         * html/InputType.h: Added defs.
3362         * html/RangeInputType.cpp:
3363         (WebCore::RangeInputType::createShadowSubtree): Added a virtual method to create
3364             slider thumb.
3365         * html/RangeInputType.h: Adde def.
3366         * html/shadow/SliderThumbElement.cpp: Added temporary RenderSliderThumb class
3367             to handle cascading appearance.
3368         (WebCore::RenderSliderThumb::RenderSliderThumb): Added.
3369         (WebCore::RenderSliderThumb::layout): Moved here the logic from
3370             RenderSlider::createThumbStyle.
3371         (WebCore::SliderThumbElement::createRenderer): Added virtual method to
3372             create RenderSliderThumb instance.
3373         (WebCore::SliderThumbElement::defaultEventHandler): Changed to use HTMLDivElement
3374             as base class.
3375         (WebCore::SliderThumbElement::detach): Ditto.
3376         * html/shadow/SliderThumbElement.h:
3377         (WebCore::SliderThumbElement::SliderThumbElement): Ditto.
3378         (WebCore::SliderThumbElement::create): Ditto.
3379         (WebCore::toSliderThumbElement): Added a casting helper.
3380         * rendering/MediaControlElements.cpp:
3381         (WebCore::MediaControlInputElement::attach): Added handling of shadow DOM,
3382             since the whole method is hand-rolled.
3383         (WebCore::MediaControlInputElement::updateStyle): Ditto.
3384         * rendering/RenderSlider.cpp:
3385         (WebCore::RenderSlider::~RenderSlider): Removed unneeded code.
3386         (WebCore::RenderSlider::thumbRect): Changed to use sliderThumbElement helper.
3387         (WebCore::RenderSlider::layout): Ditto.
3388         (WebCore::RenderSlider::sliderThumbElement): Added a temporary helper to access
3389             SliderThumbElement.
3390         (WebCore::RenderSlider::mouseEventIsInThumb): Changed to use sliderThumbElement helper.
3391         (WebCore::RenderSlider::mouseEventOffsetToThumb): Ditto.
3392         (WebCore::RenderSlider::setValueForPosition): Ditto.
3393         (WebCore::RenderSlider::positionForOffset): Ditto.
3394         (WebCore::RenderSlider::currentPosition): Ditto.
3395         (WebCore::RenderSlider::trackSize): Ditto.
3396         (WebCore::RenderSlider::forwardEvent): Ditto.
3397         (WebCore::RenderSlider::inDragMode): Ditto.
3398         * rendering/RenderSlider.h: Added def.
3399
3400 2011-01-13  Adam Barth  <abarth@webkit.org>
3401
3402         Reviewed by Eric Seidel.
3403
3404         Rename RGBA32Buffer to ImageFrame
3405         https://bugs.webkit.org/show_bug.cgi?id=52363
3406
3407         RGBA32Buffer is a terrible misnomer.  ImageFrame is vastly
3408         more accurate.  More cleanup to come.
3409
3410         * WebCore.pro:
3411         * platform/graphics/ImageSource.cpp:
3412         (WebCore::ImageSource::createFrameAtIndex):
3413         (WebCore::ImageSource::frameDurationAtIndex):
3414         (WebCore::ImageSource::frameIsCompleteAtIndex):
3415         * platform/graphics/qt/ImageDecoderQt.cpp:
3416         (WebCore::ImageDecoderQt::frameBufferAtIndex):
3417         (WebCore::ImageDecoderQt::internalReadImage):
3418         (WebCore::ImageDecoderQt::internalHandleCurrentImage):
3419         * platform/graphics/qt/ImageDecoderQt.h:
3420         * platform/graphics/wince/ImageWinCE.cpp:
3421         (WebCore::ImageFrame::asNewNativeImage):
3422         * platform/image-decoders/ImageDecoder.cpp:
3423         (WebCore::ImageFrame::ImageFrame):
3424         (WebCore::ImageFrame::operator=):
3425         (WebCore::ImageFrame::clear):
3426         (WebCore::ImageFrame::zeroFill):
3427         (WebCore::ImageFrame::copyReferenceToBitmapData):
3428         (WebCore::ImageFrame::copyBitmapData):
3429         (WebCore::ImageFrame::setSize):
3430         (WebCore::ImageFrame::hasAlpha):
3431         (WebCore::ImageFrame::setHasAlpha):
3432         (WebCore::ImageFrame::setColorProfile):
3433         (WebCore::ImageFrame::setStatus):
3434         (WebCore::ImageFrame::width):
3435         (WebCore::ImageFrame::height):
3436         * platform/image-decoders/ImageDecoder.h:
3437         (WebCore::ImageFrame::ImageFrame):
3438         * platform/image-decoders/bmp/BMPImageDecoder.cpp:
3439         (WebCore::BMPImageDecoder::frameBufferAtIndex):
3440         (WebCore::BMPImageDecoder::decode):
3441         * platform/image-decoders/bmp/BMPImageDecoder.h:
3442         * platform/image-decoders/bmp/BMPImageReader.cpp:
3443         (WebCore::BMPImageReader::decodeBMP):
3444         * platform/image-decoders/bmp/BMPImageReader.h:
3445         (WebCore::BMPImageReader::setBuffer):
3446         * platform/image-decoders/cairo/ImageDecoderCairo.cpp:
3447         (WebCore::ImageFrame::asNewNativeImage):
3448         * platform/image-decoders/cg/ImageDecoderCG.cpp:
3449         (WebCore::getPtrAsPixelData):
3450         (WebCore::ImageFrame::copyReferenceToBitmapData):
3451         (WebCore::ImageFrame::copyBitmapData):
3452         (WebCore::ImageFrame::setSize):
3453         (WebCore::ImageFrame::asNewNativeImage):
3454         * platform/image-decoders/gif/GIFImageDecoder.cpp:
3455         (WebCore::GIFImageDecoder::frameBufferAtIndex):
3456         (WebCore::GIFImageDecoder::clearFrameBufferCache):
3457         (WebCore::GIFImageDecoder::haveDecodedRow):
3458         (WebCore::GIFImageDecoder::frameComplete):
3459         (WebCore::GIFImageDecoder::initFrameBuffer):
3460         * platform/image-decoders/gif/GIFImageDecoder.h:
3461         * platform/image-decoders/gif/GIFImageReader.cpp:
3462         (GIFImageReader::read):
3463         * platform/image-decoders/gif/GIFImageReader.h:
3464         (GIFFrameReader::GIFFrameReader):
3465         * platform/image-decoders/haiku/ImageDecoderHaiku.cpp:
3466         (WebCore::ImageFrame::asNewNativeImage):
3467         * platform/image-decoders/ico/ICOImageDecoder.cpp:
3468         (WebCore::ICOImageDecoder::frameBufferAtIndex):
3469         (WebCore::ICOImageDecoder::decode):
3470         * platform/image-decoders/ico/ICOImageDecoder.h:
3471         * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
3472         (WebCore::JPEGImageDecoder::frameBufferAtIndex):
3473         (WebCore::JPEGImageDecoder::outputScanlines):
3474         (WebCore::JPEGImageDecoder::jpegComplete):
3475         (WebCore::JPEGImageDecoder::decode):
3476         * platform/image-decoders/jpeg/JPEGImageDecoder.h:
3477         * platform/image-decoders/openvg/ImageDecoderOpenVG.cpp:
3478         (WebCore::ImageFrame::asNewNativeImage):
3479         * platform/image-decoders/png/PNGImageDecoder.cpp:
3480         (WebCore::PNGImageDecoder::frameBufferAtIndex):
3481         (WebCore::PNGImageDecoder::rowAvailable):
3482         (WebCore::PNGImageDecoder::pngComplete):
3483         * platform/image-decoders/png/PNGImageDecoder.h:
3484         (WebCore::PNGImageDecoder::isComplete):
3485         * platform/image-decoders/qt/ImageFrameQt.cpp: Copied from Source/WebCore/platform/image-decoders/qt/RGBA32BufferQt.cpp.
3486         (WebCore::ImageFrame::ImageFrame):
3487         (WebCore::ImageFrame::operator=):
3488         (WebCore::ImageFrame::clear):
3489         (WebCore::ImageFrame::zeroFill):
3490         (WebCore::ImageFrame::copyBitmapData):
3491         (WebCore::ImageFrame::setSize):
3492         (WebCore::ImageFrame::asNewNativeImage):
3493         (WebCore::ImageFrame::hasAlpha):
3494         (WebCore::ImageFrame::setHasAlpha):
3495         (WebCore::ImageFrame::setColorProfile):
3496         (WebCore::ImageFrame::setStatus):
3497         (WebCore::ImageFrame::setPixmap):
3498         (WebCore::ImageFrame::width):
3499         (WebCore::ImageFrame::height):
3500         * platform/image-decoders/qt/RGBA32BufferQt.cpp: Removed.
3501         * platform/image-decoders/skia/ImageDecoderSkia.cpp:
3502         (WebCore::ImageFrame::ImageFrame):
3503         (WebCore::ImageFrame::operator=):
3504         (WebCore::ImageFrame::clear):
3505         (WebCore::ImageFrame::zeroFill):
3506         (WebCore::ImageFrame::copyBitmapData):
3507         (WebCore::ImageFrame::setSize):
3508         (WebCore::ImageFrame::asNewNativeImage):
3509         (WebCore::ImageFrame::hasAlpha):
3510         (WebCore::ImageFrame::setHasAlpha):
3511         (WebCore::ImageFrame::setColorProfile):
3512         (WebCore::ImageFrame::setStatus):
3513         (WebCore::ImageFrame::width):
3514         (WebCore::ImageFrame::height):
3515         * platform/image-decoders/webp/WEBPImageDecoder.cpp:
3516         (WebCore::WEBPImageDecoder::frameBufferAtIndex):
3517         (WebCore::WEBPImageDecoder::decode):
3518         * platform/image-decoders/webp/WEBPImageDecoder.h:
3519         * platform/image-decoders/wx/ImageDecoderWx.cpp:
3520         (WebCore::ImageFrame::asNewNativeImage):
3521
3522 2011-01-13  Dimitri Glazkov  <dglazkov@chromium.org>
3523
3524         Reviewed by Darin Adler.
3525
3526         Transferring nodes between documents should be aware of the shadow DOM.
3527         https://bugs.webkit.org/show_bug.cgi?id=52399
3528
3529         No visible change in behavior at the moment.
3530
3531         Once https://bugs.webkit.org/show_bug.cgi?id=52317 lands, the following
3532         tests should no longer crash:
3533         * fast/css/pseudo-in-range-invalid-value.html
3534         * fast/css/pseudo-in-range.html
3535         * fast/forms/form-collection-elements.html
3536         * fast/forms/range-keyoperation.html
3537
3538         * dom/Document.cpp:
3539         (WebCore::Document::adoptNode): Changed to use Node::setDocumentRecursively.
3540         * dom/Node.cpp:
3541         (WebCore::Node::setDocumentRecursively): Added new method, taking existing
3542             logic and adding shadow DOM traversal.
3543         (WebCore::Node::traverseNextNode): Style fix.
3544         (WebCore::Node::traverseNextSibling): Ditto.
3545         (WebCore::Node::traversePreviousNode): Ditto.
3546         (WebCore::Node::traversePreviousNodePostOrder): Ditto.
3547         (WebCore::Node::checkReplaceChild): Changed to use setDocumentRecursively.
3548         (WebCore::Node::checkAddChild): Ditto.
3549         * dom/Node.h: Added def.
3550
3551 2011-01-12  Enrica Casucci  <enrica@apple.com>
3552
3553         Reviewed by Darin Adler.
3554
3555         WebKit2: Add support for drag and drop
3556         https://bugs.webkit.org/show_bug.cgi?id=52343
3557         <rdar://problem/7660558>
3558                
3559         This patch contains the changes required to support dropping content
3560         in WebKit on the Mac. The DragData class has been extended to provide
3561         additional context from the application (keyboard state, modal windows, etc.)
3562         as well as information of the drag pasteboard being used.
3563         The support for WebKit as drag source will be added with a separate patch.
3564
3565         * WebCore.exp.in:
3566         * page/DragController.cpp:
3567         (WebCore::DragController::dragIsMove): Added DragData parameter.
3568         (WebCore::DragController::tryDocumentDrag): Modified call to dragIsMove.
3569         (WebCore::DragController::concludeEditDrag): Same as above.
3570         * page/DragController.h: Added parameter to isCopyKeyDown.
3571         * page/mac/DragControllerMac.mm:
3572         The following methods have been modified to use the information stored
3573         in the DragData class.
3574         (WebCore::DragController::isCopyKeyDown):
3575         (WebCore::DragController::dragOperation):
3576         * platform/DragData.h:
3577         (WebCore::DragData::flags):
3578         * platform/DragData.cpp: Added default flags parameter to the constructor.
3579         * platform/mac/DragDataMac.mm:
3580         (WebCore::DragData::DragData): Added constructor that receives the name of the pasteboard to use.
3581         (WebCore::DragData::canSmartReplace):
3582         (WebCore::DragData::containsColor):
3583         (WebCore::DragData::containsFiles):
3584         (WebCore::DragData::asFilenames):
3585         (WebCore::DragData::containsPlainText):
3586         (WebCore::DragData::asPlainText):
3587         (WebCore::DragData::containsCompatibleContent):
3588         (WebCore::DragData::asURL):
3589         (WebCore::DragData::asFragment):
3590         All the following files have been modified to add the DragData
3591         parameter to isCopyKeyDown. I plan to improve this in the future
3592         and make isCopyKeyDown not platform specific.
3593         * page/android/DragControllerAndroid.cpp:
3594         (WebCore::DragController::isCopyKeyDown):
3595         * page/brew/DragControllerBrew.cpp:
3596         (WebCore::DragController::isCopyKeyDown):
3597         * page/chromium/DragControllerChromium.cpp:
3598         (WebCore::DragController::isCopyKeyDown):
3599         * page/efl/DragControllerEfl.cpp:
3600         (WebCore::DragController::isCopyKeyDown):
3601         * page/gtk/DragControllerGtk.cpp:
3602         (WebCore::DragController::isCopyKeyDown):
3603         * page/haiku/DragControllerHaiku.cpp:
3604         (WebCore::DragController::isCopyKeyDown):
3605         * page/mac/DragControllerMac.mm:
3606         (WebCore::DragController::isCopyKeyDown):
3607         (WebCore::DragController::dragOperation):
3608         * page/qt/DragControllerQt.cpp:
3609         (WebCore::DragController::isCopyKeyDown):
3610         * page/win/DragControllerWin.cpp:
3611         (WebCore::DragController::isCopyKeyDown):
3612         * page/wx/DragControllerWx.cpp:
3613         (WebCore::DragController::isCopyKeyDown):
3614
3615 2011-01-13  David Kilzer  <ddkilzer@apple.com>
3616
3617         Add missing MathMLElementFactory.h and MathMLNames.h to Xcode project
3618
3619         Not reviewed.
3620
3621         * WebCore.xcodeproj/project.pbxproj: Add missing headers.  Note
3622         that the corresponding source files were originally added to the
3623         project in r48559.
3624
3625 2011-01-12  Zhenyao Mo  <zmo@google.com>
3626
3627         Reviewed by Kenneth Russell.
3628
3629         Use GC3D types in WebGLRenderingContext and related WebGL classes
3630         https://bugs.webkit.org/show_bug.cgi?id=51908
3631
3632         * html/canvas/WebGLActiveInfo.h:
3633         (WebCore::WebGLActiveInfo::create):
3634         (WebCore::WebGLActiveInfo::type):
3635         (WebCore::WebGLActiveInfo::size):
3636         (WebCore::WebGLActiveInfo::WebGLActiveInfo):
3637         * html/canvas/WebGLBuffer.cpp:
3638         (WebCore::WebGLBuffer::associateBufferDataImpl):
3639         (WebCore::WebGLBuffer::associateBufferData):
3640         (WebCore::WebGLBuffer::associateBufferSubDataImpl):
3641         (WebCore::WebGLBuffer::associateBufferSubData):
3642         (WebCore::WebGLBuffer::byteLength):
3643         (WebCore::WebGLBuffer::getCachedMaxIndex):
3644         (WebCore::WebGLBuffer::setCachedMaxIndex):
3645         (WebCore::WebGLBuffer::setTarget):
3646         * html/canvas/WebGLBuffer.h:
3647         (WebCore::WebGLBuffer::getTarget):
3648         * html/canvas/WebGLFramebuffer.cpp:
3649         (WebCore::WebGLFramebuffer::setAttachment):
3650         (WebCore::WebGLFramebuffer::getAttachment):
3651         (WebCore::WebGLFramebuffer::getWidth):
3652         (WebCore::WebGLFramebuffer::getHeight):
3653         (WebCore::WebGLFramebuffer::getColorBufferFormat):
3654         (WebCore::WebGLFramebuffer::initializeRenderbuffers):
3655         * html/canvas/WebGLFramebuffer.h:
3656         * html/canvas/WebGLProgram.cpp:
3657         (WebCore::WebGLProgram::cacheActiveAttribLocations):
3658         (WebCore::WebGLProgram::numActiveAttribLocations):
3659         (WebCore::WebGLProgram::getActiveAttribLocation):
3660         (WebCore::WebGLProgram::isUsingVertexAttrib0):
3661         * html/canvas/WebGLProgram.h:
3662         (WebCore::WebGLProgram::getLinkCount):
3663         * html/canvas/WebGLRenderbuffer.h:
3664         (WebCore::WebGLRenderbuffer::setInternalFormat):
3665         (WebCore::WebGLRenderbuffer::getInternalFormat):
3666         (WebCore::WebGLRenderbuffer::setSize):
3667         (WebCore::WebGLRenderbuffer::getWidth):
3668         (WebCore::WebGLRenderbuffer::getHeight):
3669         * html/canvas/WebGLRenderingContext.cpp:
3670         (WebCore::WebGLRenderingContext::initializeNewContext):
3671         (WebCore::WebGLRenderingContext::sizeInBytes):
3672         (WebCore::WebGLRenderingContext::activeTexture):
3673         (WebCore::WebGLRenderingContext::bindAttribLocation):
3674         (WebCore::WebGLRenderingContext::bindBuffer):
3675         (WebCore::WebGLRenderingContext::bindFramebuffer):
3676         (WebCore::WebGLRenderingContext::bindRenderbuffer):
3677         (WebCore::WebGLRenderingContext::bindTexture):
3678         (WebCore::WebGLRenderingContext::blendColor):
3679         (WebCore::WebGLRenderingContext::blendEquation):
3680         (WebCore::WebGLRenderingContext::blendEquationSeparate):
3681         (WebCore::WebGLRenderingContext::blendFunc):
3682         (WebCore::WebGLRenderingContext::blendFuncSeparate):
3683         (WebCore::WebGLRenderingContext::bufferData):
3684         (WebCore::WebGLRenderingContext::bufferSubData):
3685         (WebCore::WebGLRenderingContext::checkFramebufferStatus):
3686         (WebCore::WebGLRenderingContext::clear):
3687         (WebCore::WebGLRenderingContext::clearColor):
3688         (WebCore::WebGLRenderingContext::clearDepth):
3689         (WebCore::WebGLRenderingContext::clearStencil):
3690         (WebCore::WebGLRenderingContext::colorMask):
3691         (WebCore::WebGLRenderingContext::copyTexImage2D):
3692         (WebCore::WebGLRenderingContext::copyTexSubImage2D):
3693         (WebCore::WebGLRenderingContext::createShader):
3694         (WebCore::WebGLRenderingContext::cullFace):
3695         (WebCore::WebGLRenderingContext::deleteBuffer):
3696         (WebCore::WebGLRenderingContext::depthFunc):
3697         (WebCore::WebGLRenderingContext::depthMask):
3698         (WebCore::WebGLRenderingContext::depthRange):
3699         (WebCore::WebGLRenderingContext::disable):
3700         (WebCore::WebGLRenderingContext::disableVertexAttribArray):
3701         (WebCore::WebGLRenderingContext::validateElementArraySize):
3702         (WebCore::WebGLRenderingContext::validateIndexArrayConservative):
3703         (WebCore::WebGLRenderingContext::validateIndexArrayPrecise):
3704         (WebCore::WebGLRenderingContext::validateRenderingState):
3705         (WebCore::WebGLRenderingContext::drawArrays):
3706         (WebCore::WebGLRenderingContext::drawElements):
3707         (WebCore::WebGLRenderingContext::enable):
3708         (WebCore::WebGLRenderingContext::enableVertexAttribArray):
3709         (WebCore::WebGLRenderingContext::framebufferRenderbuffer):
3710         (WebCore::WebGLRenderingContext::framebufferTexture2D):
3711         (WebCore::WebGLRenderingContext::frontFace):
3712         (WebCore::WebGLRenderingContext::generateMipmap):
3713         (WebCore::WebGLRenderingContext::getActiveAttrib):
3714         (WebCore::WebGLRenderingContext::getActiveUniform):
3715         (WebCore::WebGLRenderingContext::getAttachedShaders):
3716         (WebCore::WebGLRenderingContext::getAttribLocation):
3717         (WebCore::WebGLRenderingContext::getBufferParameter):
3718         (WebCore::WebGLRenderingContext::getError):
3719         (WebCore::WebGLRenderingContext::getFramebufferAttachmentParameter):
3720         (WebCore::WebGLRenderingContext::getParameter):
3721         (WebCore::WebGLRenderingContext::getProgramParameter):
3722         (WebCore::WebGLRenderingContext::getRenderbufferParameter):
3723         (WebCore::WebGLRenderingContext::getShaderParameter):
3724         (WebCore::WebGLRenderingContext::getTexParameter):
3725         (WebCore::WebGLRenderingContext::getUniform):
3726         (WebCore::WebGLRenderingContext::getUniformLocation):
3727         (WebCore::WebGLRenderingContext::getVertexAttrib):
3728         (WebCore::WebGLRenderingContext::getVertexAttribOffset):
3729         (WebCore::WebGLRenderingContext::hint):
3730         (WebCore::WebGLRenderingContext::isBuffer):
3731         (WebCore::WebGLRenderingContext::isEnabled):
3732         (WebCore::WebGLRenderingContext::isFramebuffer):
3733         (WebCore::WebGLRenderingContext::isProgram):
3734         (WebCore::WebGLRenderingContext::isRenderbuffer):
3735         (WebCore::WebGLRenderingContext::isShader):
3736         (WebCore::WebGLRenderingContext::isTexture):
3737         (WebCore::WebGLRenderingContext::lineWidth):
3738         (WebCore::WebGLRenderingContext::linkProgram):
3739         (WebCore::WebGLRenderingContext::pixelStorei):
3740         (WebCore::WebGLRenderingContext::polygonOffset):
3741         (WebCore::WebGLRenderingContext::readPixels):
3742         (WebCore::WebGLRenderingContext::renderbufferStorage):
3743         (WebCore::WebGLRenderingContext::sampleCoverage):
3744         (WebCore::WebGLRenderingContext::scissor):
3745         (WebCore::WebGLRenderingContext::stencilFunc):
3746         (WebCore::WebGLRenderingContext::stencilFuncSeparate):
3747         (WebCore::WebGLRenderingContext::stencilMask):
3748         (WebCore::WebGLRenderingContext::stencilMaskSeparate):
3749         (WebCore::WebGLRenderingContext::stencilOp):
3750         (WebCore::WebGLRenderingContext::stencilOpSeparate):
3751         (WebCore::WebGLRenderingContext::texImage2DBase):
3752         (WebCore::WebGLRenderingContext::texImage2DImpl):
3753         (WebCore::WebGLRenderingContext::texImage2D):
3754         (WebCore::WebGLRenderingContext::texParameter):
3755         (WebCore::WebGLRenderingContext::texParameterf):
3756         (WebCore::WebGLRenderingContext::texParameteri):
3757         (WebCore::WebGLRenderingContext::texSubImage2DBase):
3758         (WebCore::WebGLRenderingContext::texSubImage2DImpl):
3759         (WebCore::WebGLRenderingContext::texSubImage2D):
3760         (WebCore::WebGLRenderingContext::uniform1f):
3761         (WebCore::WebGLRenderingContext::uniform1fv):
3762         (WebCore::WebGLRenderingContext::uniform1i):
3763         (WebCore::WebGLRenderingContext::uniform1iv):
3764         (WebCore::WebGLRenderingContext::uniform2f):
3765         (WebCore::WebGLRenderingContext::uniform2fv):
3766         (WebCore::WebGLRenderingContext::uniform2i):
3767         (WebCore::WebGLRenderingContext::uniform2iv):
3768         (WebCore::WebGLRenderingContext::uniform3f):
3769         (WebCore::WebGLRenderingContext::uniform3fv):
3770         (WebCore::WebGLRenderingContext::uniform3i):
3771         (WebCore::WebGLRenderingContext::uniform3iv):
3772         (WebCore::WebGLRenderingContext::uniform4f):
3773         (WebCore::WebGLRenderingContext::uniform4fv):
3774         (WebCore::WebGLRenderingContext::uniform4i):
3775         (WebCore::WebGLRenderingContext::uniform4iv):
3776         (WebCore::WebGLRenderingContext::uniformMatrix2fv):
3777         (WebCore::WebGLRenderingContext::uniformMatrix3fv):
3778         (WebCore::WebGLRenderingContext::uniformMatrix4fv):
3779         (WebCore::WebGLRenderingContext::vertexAttrib1f):
3780         (WebCore::WebGLRenderingContext::vertexAttrib1fv):
3781         (WebCore::WebGLRenderingContext::vertexAttrib2f):
3782         (WebCore::WebGLRenderingContext::vertexAttrib2fv):
3783         (WebCore::WebGLRenderingContext::vertexAttrib3f):
3784         (WebCore::WebGLRenderingContext::vertexAttrib3fv):
3785         (WebCore::WebGLRenderingContext::vertexAttrib4f):
3786         (WebCore::WebGLRenderingContext::vertexAttrib4fv):
3787         (WebCore::WebGLRenderingContext::vertexAttribPointer):
3788         (WebCore::WebGLRenderingContext::viewport):
3789         (WebCore::WebGLRenderingContext::getBooleanParameter):
3790         (WebCore::WebGLRenderingContext::getBooleanArrayParameter):
3791         (WebCore::WebGLRenderingContext::getFloatParameter):
3792         (WebCore::WebGLRenderingContext::getIntParameter):
3793         (WebCore::WebGLRenderingContext::getLongParameter):
3794         (WebCore::WebGLRenderingContext::getUnsignedLongParameter):
3795         (WebCore::WebGLRenderingContext::getWebGLFloatArrayParameter):
3796         (WebCore::WebGLRenderingContext::getWebGLIntArrayParameter):
3797         (WebCore::WebGLRenderingContext::isTexInternalFormatColorBufferCombinationValid):
3798         (WebCore::WebGLRenderingContext::getBoundFramebufferColorFormat):
3799         (WebCore::WebGLRenderingContext::validateTextureBinding):
3800         (WebCore::WebGLRenderingContext::validateSize):
3801         (WebCore::WebGLRenderingContext::validateTexFuncFormatAndType):
3802         (WebCore::WebGLRenderingContext::validateTexFuncLevel):
3803         (WebCore::WebGLRenderingContext::validateTexFuncParameters):
3804         (WebCore::WebGLRenderingContext::validateTexFuncData):
3805         (WebCore::WebGLRenderingContext::validateDrawMode):
3806         (WebCore::WebGLRenderingContext::validateStencilFunc):
3807         (WebCore::WebGLRenderingContext::validateFramebufferFuncParameters):
3808         (WebCore::WebGLRenderingContext::validateBlendEquation):
3809         (WebCore::WebGLRenderingContext::validateBlendFuncFactors):
3810         (WebCore::WebGLRenderingContext::validateCapability):
3811         (WebCore::WebGLRenderingContext::validateUniformParameters):
3812         (WebCore::WebGLRenderingContext::validateUniformMatrixParameters):
3813         (WebCore::WebGLRenderingContext::validateBufferDataParameters):
3814         (WebCore::WebGLRenderingContext::vertexAttribfImpl):
3815         (WebCore::WebGLRenderingContext::vertexAttribfvImpl):
3816         (WebCore::WebGLRenderingContext::simulateVertexAttrib0):
3817         * html/canvas/WebGLRenderingContext.h:
3818         (WebCore::WebGLRenderingContext::VertexAttribState::VertexAttribState):
3819         * html/canvas/WebGLShader.cpp:
3820         (WebCore::WebGLShader::create):
3821         (WebCore::WebGLShader::WebGLShader):
3822         * html/canvas/WebGLShader.h:
3823         (WebCore::WebGLShader::getType):
3824         * html/canvas/WebGLTexture.cpp:
3825         (WebCore::WebGLTexture::setTarget):
3826         (WebCore::WebGLTexture::setParameteri):
3827         (WebCore::WebGLTexture::setParameterf):
3828         (WebCore::WebGLTexture::setLevelInfo):
3829         (WebCore::WebGLTexture::generateMipmapLevelInfo):
3830         (WebCore::WebGLTexture::getInternalFormat):
3831         (WebCore::WebGLTexture::getType):
3832         (WebCore::WebGLTexture::getWidth):
3833         (WebCore::WebGLTexture::getHeight):
3834         (WebCore::WebGLTexture::isNPOT):
3835         (WebCore::WebGLTexture::mapTargetToIndex):
3836         (WebCore::WebGLTexture::computeLevelCount):
3837         (WebCore::WebGLTexture::update):
3838         (WebCore::WebGLTexture::getLevelInfo):
3839         * html/canvas/WebGLTexture.h:
3840         (WebCore::WebGLTexture::LevelInfo::setInfo):
3841         * html/canvas/WebGLUniformLocation.cpp:
3842         (WebCore::WebGLUniformLocation::create):
3843         (WebCore::WebGLUniformLocation::WebGLUniformLocation):
3844         (WebCore::WebGLUniformLocation::location):
3845         * html/canvas/WebGLUniformLocation.h:
3846         * platform/graphics/GraphicsContext3D.h: Map GC3Dboolean to bool instead of unsigned char.
3847
3848 2011-01-13  Jian Li  <jianli@chromium.org>
3849
3850         Reviewed by Darin Fisher.
3851
3852         Change createObjectURL and revokeObjectURL to put under webkitURL.
3853         https://bugs.webkit.org/show_bug.cgi?id=52257
3854
3855         Note that we add "webkit" vendor prefix to URL that is introduced in
3856         the latest File API spec.
3857
3858         For the time being, we implement webkitURL as a readonly attribute
3859         instead of a constructor so that we will not expose prototype property,
3860         as required by the spec.
3861
3862         * Android.derived.jscbindings.mk:
3863         * Android.derived.v8bindings.mk:
3864         * Android.mk:
3865         * CMakeLists.txt:
3866         * DerivedSources.cpp:
3867         * DerivedSources.make:
3868         * GNUmakefile.am:
3869         * WebCore.gypi:
3870         * WebCore.pri:
3871         * WebCore.pro:
3872         * WebCore.vcproj/WebCore.vcproj:
3873         * WebCore.xcodeproj/project.pbxproj:
3874         * html/DOMURL.cpp: Added.
3875         * html/DOMURL.h: Added.
3876         * html/DOMURL.idl: Added.
3877         * inspector/front-end/NetworkPanel.js:
3878         * inspector/front-end/utilities.js:
3879         * page/DOMWindow.cpp:
3880         (WebCore::DOMWindow::webkitURL):
3881         * page/DOMWindow.h:
3882         * page/DOMWindow.idl:
3883         * workers/WorkerContext.cpp:
3884         (WebCore::WorkerContext::webkitURL):
3885         * workers/WorkerContext.h:
3886         * workers/WorkerContext.idl:
3887
3888 2011-01-13  Emil Eklund  <eae@chromium.org>
3889
3890         Reviewed by Dimitri Glazkov.
3891
3892         Setting outerText should convert CR/LF to <br>
3893         https://bugs.webkit.org/show_bug.cgi?id=52268
3894
3895         Make set outerText support line breaks (sharing the text to fragment code
3896         with setInnerText) and handle empty text nodes the same way IE does.
3897
3898         Test: fast/dom/set-outer-text.html
3899
3900         * html/HTMLElement.cpp:
3901         (WebCore::HTMLElement::textToFragment): Shared between setInnerText and setOuterText
3902         (WebCore::HTMLElement::setInnerText): Split out text parsing code.
3903         (WebCore::mergeWithNextTextNode): Split out text node merging code.
3904         (WebCore::HTMLElement::setOuterText): Added support for line breaks.
3905         * html/HTMLElement.h:
3906
3907 2011-01-13  Zhenyao Mo  <zmo@google.com>
3908
3909         Reviewed by Kenneth Russell.
3910
3911         Relax the ESSL valid charset a little bit to include " ' `
3912         https://bugs.webkit.org/show_bug.cgi?id=52396
3913
3914         * html/canvas/WebGLRenderingContext.cpp:
3915
3916 2011-01-13  Adrienne Walker  <enne@google.com>
3917
3918         Reviewed by Kenneth Russell.
3919
3920         [chromium] Attempt to fix crash in tiled compositor memcpy
3921         https://bugs.webkit.org/show_bug.cgi?id=52379
3922
3923         * platform/graphics/chromium/LayerTilerChromium.cpp:
3924         (WebCore::LayerTilerChromium::update):
3925
3926 2011-01-13  Dimitri Glazkov  <dglazkov@chromium.org>
3927
3928         Unreviewed, rolling out r75725.
3929         http://trac.webkit.org/changeset/75725
3930         https://bugs.webkit.org/show_bug.cgi?id=52317
3931
3932         Caused crashes in layout tests.
3933
3934         * css/CSSStyleSelector.cpp:
3935         (WebCore::CSSStyleSelector::initForStyleResolve):
3936         * html/HTMLInputElement.cpp:
3937         (WebCore::HTMLInputElement::updateType):
3938         * html/InputType.cpp:
3939         * html/InputType.h:
3940         * html/RangeInputType.cpp:
3941         * html/RangeInputType.h:
3942         * html/shadow/SliderThumbElement.cpp:
3943         (WebCore::SliderThumbElement::defaultEventHandler):
3944         (WebCore::SliderThumbElement::detach):
3945         * html/shadow/SliderThumbElement.h:
3946         (WebCore::SliderThumbElement::SliderThumbElement):
3947         (WebCore::SliderThumbElement::create):
3948         * rendering/MediaControlElements.cpp:
3949         (WebCore::MediaControlInputElement::attach):
3950         (WebCore::MediaControlInputElement::updateStyle):
3951         * rendering/RenderSlider.cpp:
3952         (WebCore::RenderSlider::~RenderSlider):
3953         (WebCore::RenderSlider::styleDidChange):
3954         (WebCore::RenderSlider::createThumbStyle):
3955         (WebCore::RenderSlider::thumbRect):
3956         (WebCore::RenderSlider::layout):
3957         (WebCore::RenderSlider::updateFromElement):
3958         (WebCore::RenderSlider::mouseEventIsInThumb):
3959         (WebCore::RenderSlider::mouseEventOffsetToThumb):
3960         (WebCore::RenderSlider::setValueForPosition):
3961         (WebCore::RenderSlider::positionForOffset):
3962         (WebCore::RenderSlider::currentPosition):
3963         (WebCore::RenderSlider::trackSize):
3964         (WebCore::RenderSlider::forwardEvent):
3965         (WebCore::RenderSlider::inDragMode):
3966         * rendering/RenderSlider.h:
3967
3968 2011-01-12  Dimitri Glazkov  <dglazkov@chromium.org>
3969
3970         Reviewed by Darin Adler.
3971
3972         Flip input[type=range] to use the new shadow DOM model.
3973         https://bugs.webkit.org/show_bug.cgi?id=52317
3974
3975         This is a straight-up flip, minimal change to the logic, which will be
3976         refactored in a follow-up patch.
3977
3978         Covered by existing tests.
3979
3980         * css/CSSStyleSelector.cpp:
3981         (WebCore::CSSStyleSelector::initForStyleResolve): Changed to use either
3982             host or parent node to find parent.
3983         * html/HTMLInputElement.cpp:
3984         (WebCore::HTMLInputElement::updateType): Added logic for destroying/creating
3985             shadow DOM subtree.
3986         * html/InputType.cpp:
3987         (WebCore::InputType::createShadowSubtree): Added empty decl.
3988         (WebCore::InputType::destroyShadowSubtree): Added a method to destroy
3989             shadow subtree.
3990         * html/InputType.h: Added defs.
3991         * html/RangeInputType.cpp:
3992         (WebCore::RangeInputType::createShadowSubtree): Added a virtual method to create
3993             slider thumb.
3994         * html/RangeInputType.h: Adde def.
3995         * html/shadow/SliderThumbElement.cpp: Added temporary RenderSliderThumb class
3996             to handle cascading appearance.
3997         (WebCore::RenderSliderThumb::RenderSliderThumb): Added.
3998         (WebCore::RenderSliderThumb::layout): Moved here the logic from
3999             RenderSlider::createThumbStyle.
4000         (WebCore::SliderThumbElement::createRenderer): Added virtual method to
4001             create RenderSliderThumb instance.
4002         (WebCore::SliderThumbElement::defaultEventHandler): Changed to use HTMLDivElement
4003             as base class.
4004         (WebCore::SliderThumbElement::detach): Ditto.
4005         * html/shadow/SliderThumbElement.h:
4006         (WebCore::SliderThumbElement::SliderThumbElement): Ditto.
4007         (WebCore::SliderThumbElement::create): Ditto.
4008         (WebCore::toSliderThumbElement): Added a casting helper.
4009         * rendering/MediaControlElements.cpp:
4010         (WebCore::MediaControlInputElement::attach): Added handling of shadow DOM,
4011             since the whole method is hand-rolled.
4012         (WebCore::MediaControlInputElement::updateStyle): Ditto.
4013         * rendering/RenderSlider.cpp:
4014         (WebCore::RenderSlider::~RenderSlider): Removed unneeded code.
4015         (WebCore::RenderSlider::thumbRect): Changed to use sliderThumbElement helper.
4016         (WebCore::RenderSlider::layout): Ditto.
4017         (WebCore::RenderSlider::sliderThumbElement): Added a temporary helper to access
4018             SliderThumbElement.
4019         (WebCore::RenderSlider::mouseEventIsInThumb): Changed to use sliderThumbElement helper.
4020         (WebCore::RenderSlider::mouseEventOffsetToThumb): Ditto.
4021         (WebCore::RenderSlider::setValueForPosition): Ditto.
4022         (WebCore::RenderSlider::positionForOffset): Ditto.
4023         (WebCore::RenderSlider::currentPosition): Ditto.
4024         (WebCore::RenderSlider::trackSize): Ditto.
4025         (WebCore::RenderSlider::forwardEvent): Ditto.
4026         (WebCore::RenderSlider::inDragMode): Ditto.
4027         * rendering/RenderSlider.h: Added def.
4028
4029 2011-01-13  Dan Bernstein  <mitz@apple.com>
4030
4031         Reviewed by Simon Fraser.
4032
4033         <rdar://problem/8098442> Crash in Widget::setFrameRect()
4034         https://bugs.webkit.org/show_bug.cgi?id=52375
4035
4036         Test: plugins/destroy-on-setwindow.html
4037
4038         * platform/mac/WidgetMac.mm:
4039         (WebCore::Widget::setFrameRect): Protect the Widget from being deleted as a result of calling
4040         out to the view.
4041         (WebCore::Widget::getOuterView): Coding style fix.
4042         (WebCore::Widget::paint): Protect the Widget from being deleted as a result of calling out to
4043         the views. This is precautionary, since this function does not applear to access member variables
4044         after such calls.
4045         * platform/wx/WidgetWx.cpp:
4046         (WebCore::Widget::setFrameRect): Protect the Widget from being deleted as a result of calling
4047         out to the platform widget.
4048
4049 2011-01-13  Csaba Osztrogonác  <ossy@webkit.org>
4050
4051         Unreviewed buildfix after r75715.
4052
4053         * WebCore.pri:
4054         * WebCore.pro:
4055
4056 2011-01-13  Pavel Feldman  <pfeldman@chromium.org>
4057
4058         Not reviewed: Qt build fix.
4059
4060         * WebCore.pri:
4061
4062 2011-01-12  Pavel Feldman  <pfeldman@chromium.org>