2011-03-31 Xan Lopez <xlopez@igalia.com>
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2011-03-31  Xan Lopez  <xlopez@igalia.com>
2
3         Reviewed by Martin Robinson.
4
5         [GTK] Link explicitly with XRender on Linux/Unix
6         https://bugs.webkit.org/show_bug.cgi?id=57558
7
8         * GNUmakefile.am: add XRender CFLAGS.
9
10 2011-03-31  Eric Seidel  <eric@webkit.org>
11
12         Reviewed by Ryosuke Niwa.
13
14         Rename BidiResolver::emptyRun to m_emtpyRun to match modern style
15         https://bugs.webkit.org/show_bug.cgi?id=57549
16
17         * platform/text/BidiResolver.h:
18         (WebCore::BidiResolver::BidiResolver):
19         (WebCore::::appendRun):
20         (WebCore::::lowerExplicitEmbeddingLevel):
21         (WebCore::::raiseExplicitEmbeddingLevel):
22         (WebCore::::deleteRuns):
23         (WebCore::::createBidiRunsForLine):
24         * rendering/InlineIterator.h:
25         (WebCore::InlineBidiResolver::appendRun):
26
27 2011-03-31  Tom Sepez  <tsepez@chromium.org>
28
29         Reviewed by Eric Seidel.
30
31         Make ContainerNode::insertIntoDocument() collect all nodes before
32         operating on any of them.  Add small helper function and use it
33         througout the file where this action is already taking place.
34         https://bugs.webkit.org/show_bug.cgi?id=57265
35         
36         Test: svg/dom/range-delete.html
37
38         * dom/ContainerNode.cpp:
39         (WebCore::collectNodes):
40         (WebCore::collectTargetNodes):
41         (WebCore::ContainerNode::takeAllChildrenFrom):
42         (WebCore::willRemoveChildren):
43         (WebCore::ContainerNode::insertedIntoDocument):
44
45 2011-03-31  Satish Sampath  <satish@chromium.org>
46
47         Reviewed by Steve Block.
48
49         While drawing a speech input button, validate that the node is really a speech input button.
50         https://bugs.webkit.org/show_bug.cgi?id=57469
51
52         Test: fast/speech/speech-style-on-non-speech-elements.html
53
54         * dom/Element.h:
55         (WebCore::Element::isInputFieldSpeechButtonElement):
56         * html/shadow/TextControlInnerElements.h:
57         (WebCore::InputFieldSpeechButtonElement::isInputFieldSpeechButtonElement):
58         (WebCore::toInputFieldSpeechButtonElement):
59         * rendering/RenderInputSpeech.cpp:
60         (WebCore::RenderInputSpeech::paintInputFieldSpeechButton):
61
62 2011-03-31  Ryosuke Niwa  <rniwa@webkit.org>
63
64         Build fix after r82588. Reverted unintentional change.
65
66         * editing/SelectionController.cpp:
67         (WebCore::SelectionController::modifyMovingLeft):
68
69 2011-03-31  Mario Sanchez Prada  <msanchez@igalia.com>
70
71         Reviewed by Xan Lopez.
72
73         [GTK] Warnings happening because of unhandled switch cases in AccessibilityObjectWrapperAtk
74         https://bugs.webkit.org/show_bug.cgi?id=57534
75
76         Fix compilation warnings.
77
78         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
79         (getAttributeSetForAccessibilityObject): Add unhandled cases.
80
81 2011-03-30  Pavel Podivilov  <podivilov@chromium.org>
82
83         Reviewed by Pavel Feldman.
84
85         Web Inspector: remove unnecessary newBody output parameter from editScriptSource protocol method.
86         https://bugs.webkit.org/show_bug.cgi?id=57444
87
88         * bindings/js/ScriptDebugServer.cpp:
89         (WebCore::ScriptDebugServer::editScriptSource):
90         * bindings/js/ScriptDebugServer.h:
91         * bindings/v8/ScriptDebugServer.cpp:
92         (WebCore::ScriptDebugServer::editScriptSource):
93         * bindings/v8/ScriptDebugServer.h:
94         * inspector/Inspector.json:
95         * inspector/InspectorDebuggerAgent.cpp:
96         (WebCore::InspectorDebuggerAgent::editScriptSource):
97         * inspector/InspectorDebuggerAgent.h:
98         * inspector/front-end/DebuggerModel.js:
99         (WebInspector.DebuggerModel.prototype.editScriptSource):
100         (WebInspector.DebuggerModel.prototype._didEditScriptSource):
101         * inspector/front-end/DebuggerPresentationModel.js:
102         (WebInspector.DebuggerPresentationModel.prototype.editScriptSource.didEditScriptSource):
103         (WebInspector.DebuggerPresentationModel.prototype.editScriptSource):
104         * inspector/front-end/SourceFrame.js:
105         (WebInspector.SourceFrame.prototype._handleSave.didEditScriptSource):
106         (WebInspector.SourceFrame.prototype._handleSave):
107
108 2011-03-30  MORITA Hajime <morrita@google.com>
109
110         Reviewed by Dimitri Glazkov.
111
112         <meter> can only support horizontal indicator
113         https://bugs.webkit.org/show_bug.cgi?id=56001
114
115         - Removed code which deals with the direction and
116           left the horizontal path.
117         - Removed "horizontal" from related names which is now
118           redundant.
119         
120         * css/CSSSelector.cpp:
121         (WebCore::CSSSelector::pseudoId):
122         (WebCore::nameToPseudoTypeMap):
123         (WebCore::CSSSelector::extractPseudoType):
124         * css/CSSSelector.h:
125         * css/html.css:
126         (meter::-webkit-meter-bar):
127         (meter::-webkit-meter-optimum-value):
128         (meter::-webkit-meter-suboptimal-value):
129         (meter::-webkit-meter-even-less-good-value):
130         * rendering/RenderMeter.cpp:
131         (WebCore::RenderMeter::~RenderMeter):
132         (WebCore::RenderMeter::createPart):
133         (WebCore::RenderMeter::updateFromElement):
134         (WebCore::RenderMeter::layoutParts):
135         (WebCore::RenderMeter::styleDidChange):
136         (WebCore::RenderMeter::shouldHaveParts):
137         (WebCore::RenderMeter::valuePartRect):
138         (WebCore::RenderMeter::valuePseudoId):
139         (WebCore::RenderMeter::barPseudoId):
140         (WebCore::RenderMeter::detachShadows):
141         (WebCore::RenderMeter::updateShadows):
142         * rendering/RenderMeter.h:
143         (WebCore::RenderMeter::shadowAttached):
144         * rendering/RenderTheme.cpp:
145         (WebCore::RenderTheme::supportsMeter):
146         * rendering/RenderTheme.h:
147         * rendering/RenderThemeMac.h:
148         * rendering/RenderThemeMac.mm:
149         (WebCore::RenderThemeMac::paintMeter):
150         (WebCore::RenderThemeMac::supportsMeter):
151         * rendering/style/RenderStyleConstants.h:
152
153 2011-03-30  Xiaomei Ji  <xji@chromium.org>
154
155         Reviewed by Ryosuke Niwa.
156
157         Experiment with moving caret by word in visual order.
158         https://bugs.webkit.org/show_bug.cgi?id=57336
159
160         Follow Firefox's convention in Windows, 
161         In LTR block, word break visually moves cursor to the left boundary of words,
162         In RTL block, word break visually moves cursor to the right boundary of words.
163
164         This is the 1st version of implementing "move caret by word in visual order".
165         It only works in the following situation:
166         1. For a LTR box in a LTR block or a RTL box in RTL block, 
167         when caret is at the left boundary of the box and we are looking for 
168         the word boundary in right.
169         2. For a LTR or RTL box in a LTR block, when caret is at the left boundary
170         of the box and we are looking for the word boundary in left and 
171         previous box is a LTR box.
172         3. For a LTR or RTL box in a RTL block, when the caret is at the right 
173         boundary of the box and we are looking for the word boundary in right and next box is RTL box.
174
175         An experimental granularity is introduced, as a side effect, functions having switch statements
176         to handle those granularities have to add more one case to handle this new granularity.
177         The experimental granularity is exposed though JS by '-webkit-visual-word".
178
179         The overall algorithm is looping through inline boxes visually and looking
180         for the visually nearest word break position. 
181
182         Test: editing/selection/move-by-word-visually.html
183
184         * editing/SelectionController.cpp:
185         (WebCore::SelectionController::modifyExtendingRight):
186         (WebCore::SelectionController::modifyExtendingForward):
187         (WebCore::SelectionController::modifyMovingRight):
188         (WebCore::SelectionController::modifyMovingForward):
189         (WebCore::SelectionController::modifyExtendingLeft):
190         (WebCore::SelectionController::modifyExtendingBackward):
191         (WebCore::SelectionController::modifyMovingLeft):
192         (WebCore::SelectionController::modifyMovingBackward):
193         * editing/TextGranularity.h:
194         * editing/VisibleSelection.cpp:
195         (WebCore::VisibleSelection::setStartAndEndFromBaseAndExtentRespectingGranularity):
196         * editing/visible_units.cpp:
197         (WebCore::previousWordBreakInBoxInsideBlockWithSameDirectionality):
198         (WebCore::wordBoundaryInBox):
199         (WebCore::wordBoundaryInAdjacentBoxes):
200         (WebCore::leftWordBoundary):
201         (WebCore::rightWordBoundary):
202         (WebCore::leftWordPosition):
203         (WebCore::rightWordPosition):
204         * editing/visible_units.h:
205         * page/DOMSelection.cpp:
206         (WebCore::DOMSelection::modify):
207
208 2011-03-31  Dimitri Glazkov  <dglazkov@chromium.org>
209
210         Reviewed by Darin Adler.
211
212         Move coordinate-computing logic into MouseRelatedEvent.
213         https://bugs.webkit.org/show_bug.cgi?id=57521
214
215         Refactoring, covered by existing tests.
216
217         * dom/EventDispatcher.cpp:
218         (WebCore::EventDispatcher::dispatchWheelEvent): Yank calculation of
219             coordinates out.
220         (WebCore::EventDispatcher::dispatchMouseEvent): Ditto.
221         * dom/MouseEvent.cpp:
222         (WebCore::MouseEvent::create): Add coordinate-computing logic.
223         * dom/MouseEvent.h: Adjust decl to reflect new meaning of params.
224         * dom/MouseRelatedEvent.cpp:
225         (WebCore::MouseRelatedEvent::MouseRelatedEvent): Ditto.
226         * page/EventHandler.cpp:
227         (WebCore::EventHandler::dispatchDragEvent): Ditto.
228
229 2011-03-30  Alexander Pavlov  <apavlov@chromium.org>
230
231         Reviewed by Pavel Feldman.
232
233         Web Inspector: document CSS agent.
234         https://bugs.webkit.org/show_bug.cgi?id=57435
235
236         * inspector/Inspector.json:
237
238 2011-03-31  Andrey Kosyakov  <caseq@chromium.org>
239
240         Reviewed by Yury Semikhatsky.
241
242         Web Inspector: remove periods at the end of error messages
243         https://bugs.webkit.org/show_bug.cgi?id=57544
244
245         * inspector/InjectedScript.cpp:
246         (WebCore::InjectedScript::getProperties):
247         (WebCore::InjectedScript::makeObjectCall):
248         * inspector/InspectorCSSAgent.cpp:
249         (WebCore::InspectorCSSAgent::elementForId):
250         (WebCore::InspectorCSSAgent::styleSheetForId):
251         * inspector/InspectorDOMAgent.cpp:
252         (WebCore::InspectorDOMAgent::assertNode):
253         (WebCore::InspectorDOMAgent::assertElement):
254         (WebCore::InspectorDOMAgent::assertHTMLElement):
255         (WebCore::InspectorDOMAgent::querySelector):
256         (WebCore::InspectorDOMAgent::querySelectorAll):
257         (WebCore::InspectorDOMAgent::setAttribute):
258         (WebCore::InspectorDOMAgent::removeAttribute):
259         (WebCore::InspectorDOMAgent::removeNode):
260         (WebCore::InspectorDOMAgent::setNodeValue):
261         * inspector/InspectorDebuggerAgent.cpp:
262         (WebCore::InspectorDebuggerAgent::setPauseOnExceptionsState):
263         * inspector/InspectorResourceAgent.cpp:
264         (WebCore::InspectorResourceAgent::resourceContent):
265         (WebCore::InspectorResourceAgent::resourceContentBase64):
266         (WebCore::InspectorResourceAgent::getResourceContent):
267         * inspector/InspectorRuntimeAgent.cpp:
268         (WebCore::InspectorRuntimeAgent::setPropertyValue):
269
270 2011-03-31  Evan Martin  <evan@chromium.org>
271
272         Reviewed by Eric Seidel.
273
274         <title> should support dir attribute
275         https://bugs.webkit.org/show_bug.cgi?id=50961
276
277         Introduce a new StringWithDirection object that carries a String along
278         with the TextDirection associated with the String.  Use this object for
279         document titles used within WebCore, because in HTML the direction of
280         a title can be set with the 'dir' attribute.
281
282         Put FIXMEs at the WebKit level to expose the new direction information
283         to clients.
284
285         No behavioral change intended, so no new tests.  A follow-up will expose
286         the title direction and hopefully can be accompanied by tests that
287         verify it is correct.
288
289         * dom/Document.cpp:
290         (WebCore::Document::Document):
291         (WebCore::Document::updateTitle):
292         (WebCore::Document::setTitle):
293         (WebCore::Document::removeTitle):
294         * dom/Document.h:
295         (WebCore::Document::title):
296         * html/HTMLTitleElement.cpp:
297         (WebCore::HTMLTitleElement::HTMLTitleElement):
298         (WebCore::HTMLTitleElement::childrenChanged):
299         (WebCore::HTMLTitleElement::text):
300         (WebCore::HTMLTitleElement::textWithDirection):
301         * html/HTMLTitleElement.h:
302         * loader/DocumentLoader.cpp:
303         (WebCore::DocumentLoader::setTitle):
304         * loader/DocumentLoader.h:
305         (WebCore::DocumentLoader::title):
306         * loader/EmptyClients.h:
307         (WebCore::EmptyFrameLoaderClient::dispatchDidReceiveTitle):
308         (WebCore::EmptyFrameLoaderClient::setTitle):
309         * loader/FrameLoader.cpp:
310         (WebCore::FrameLoader::receivedFirstData):
311         (WebCore::FrameLoader::commitProvisionalLoad):
312         (WebCore::FrameLoader::setTitle):
313         * loader/FrameLoader.h:
314         * loader/FrameLoaderClient.h:
315         * loader/HistoryController.cpp:
316         (WebCore::HistoryController::updateForBackForwardNavigation):
317         (WebCore::HistoryController::updateForReload):
318         (WebCore::HistoryController::updateForRedirectWithLockedBackForwardList):
319         (WebCore::HistoryController::updateForClientRedirect):
320         (WebCore::HistoryController::updateForCommit):
321         (WebCore::HistoryController::setCurrentItemTitle):
322         (WebCore::HistoryController::initializeItem):
323         * loader/HistoryController.h:
324         * platform/text/StringWithDirection.h: Added.
325         (WebCore::StringWithDirection::StringWithDirection):
326         (WebCore::StringWithDirection::operator==):
327         (WebCore::StringWithDirection::operator!=):
328         * svg/SVGTitleElement.cpp:
329         (WebCore::SVGTitleElement::insertedIntoDocument):
330         (WebCore::SVGTitleElement::childrenChanged):
331
332 2011-03-31  Alexander Pavlov  <apavlov@chromium.org>
333
334         Reviewed by Yury Semikhatsky.
335
336         Web Inspector: CSS domain - make a "range" object, get rid of "properties" object for Style objects
337         https://bugs.webkit.org/show_bug.cgi?id=57538
338
339         * inspector/InspectorStyleSheet.cpp:
340         (WebCore::buildSourceRangeObject):
341         (WebCore::InspectorStyle::buildObjectForStyle):
342         (WebCore::InspectorStyle::populateObjectWithStyleProperties):
343         * inspector/front-end/AuditRules.js:
344         (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.evalCallback.selectorsCallback):
345         * inspector/front-end/CSSStyleModel.js:
346         (WebInspector.CSSStyleDeclaration):
347
348 2011-03-31  Sheriff Bot  <webkit.review.bot@gmail.com>
349
350         Unreviewed, rolling out r82565.
351         http://trac.webkit.org/changeset/82565
352         https://bugs.webkit.org/show_bug.cgi?id=57541
353
354         Caused assertion failures. (Requested by bbandix on #webkit).
355
356         * platform/graphics/filters/FEFlood.cpp:
357         (WebCore::FEFlood::setFloodColor):
358         (WebCore::FEFlood::setFloodOpacity):
359         * platform/graphics/filters/FEFlood.h:
360         * platform/graphics/filters/FESpecularLighting.cpp:
361         (WebCore::FESpecularLighting::setLightingColor):
362         * platform/graphics/filters/FESpecularLighting.h:
363         * rendering/svg/RenderSVGResourceFilterPrimitive.cpp:
364         * rendering/svg/RenderSVGResourceFilterPrimitive.h:
365         * rendering/svg/SVGResourcesCache.cpp:
366         (WebCore::SVGResourcesCache::clientStyleChanged):
367         * svg/SVGFEDiffuseLightingElement.cpp:
368         (WebCore::SVGFEDiffuseLightingElement::setFilterEffectAttribute):
369         * svg/SVGFEFloodElement.cpp:
370         * svg/SVGFEFloodElement.h:
371         * svg/SVGFESpecularLightingElement.cpp:
372         (WebCore::SVGFESpecularLightingElement::setFilterEffectAttribute):
373
374 2011-03-31  Renata Hodovan  <reni@webkit.org>
375
376         Reviewed by Dirk Schulze.
377
378         CSS related SVG*Element changes doesn't require relayout
379         https://bugs.webkit.org/show_bug.cgi?id=56906
380
381         The changes of some CSS related SVGFilter properties e.g. lighting-color, flood-color, flood-opacity
382         need only repaint. To avoid the default invalidation of filters in SVGResourceCache::clientStyleChange()
383         we need an early return. So RenderSVGResourceFilterPrimitive::styleDidChange() can handle these properties
384         via RenderSVGResourceFilter::primitiveAttributeChanged() the same way like we do it for the other SVGAttributes.
385
386         Tests: svg/dynamic-updates/SVGFEDiffuseLightingElement-inherit-lighting-color-css-prop.html
387                svg/dynamic-updates/SVGFEFloodElement-inherit-flood-color.html
388                svg/dynamic-updates/SVGFESpecularLightingElement-inherit-lighting-color-css-prop.html
389                svg/dynamic-updates/SVGFESpecularLightingElement-lighting-color-css-prop.html
390
391         * platform/graphics/filters/FEFlood.cpp:
392         (WebCore::FEFlood::setFloodColor):
393         (WebCore::FEFlood::setFloodOpacity):
394         * platform/graphics/filters/FEFlood.h:
395         * platform/graphics/filters/FESpecularLighting.cpp:
396         (WebCore::FESpecularLighting::setLightingColor):
397         * platform/graphics/filters/FESpecularLighting.h:
398         * rendering/svg/RenderSVGResourceFilterPrimitive.cpp:
399         (WebCore::RenderSVGResourceFilterPrimitive::styleDidChange):
400         * rendering/svg/RenderSVGResourceFilterPrimitive.h:
401         * rendering/svg/SVGResourcesCache.cpp:
402         (WebCore::SVGResourcesCache::clientStyleChanged):
403         * svg/SVGFEDiffuseLightingElement.cpp:
404         (WebCore::SVGFEDiffuseLightingElement::setFilterEffectAttribute):
405         * svg/SVGFEFloodElement.cpp:
406         (WebCore::SVGFEFloodElement::setFilterEffectAttribute):
407         * svg/SVGFEFloodElement.h:
408         * svg/SVGFESpecularLightingElement.cpp:
409         (WebCore::SVGFESpecularLightingElement::setFilterEffectAttribute):
410
411 2011-03-29  Vsevolod Vlasov  <vsevik@chromium.org>
412
413         Reviewed by Pavel Feldman.
414
415         XML Viewer: declared namespaces are not rendered.
416         https://bugs.webkit.org/show_bug.cgi?id=56262
417
418         XML viewer rewritten on javascript.
419
420         * CMakeLists.txt:
421         * DerivedSources.make:
422         * GNUmakefile.am:
423         * WebCore.gyp/WebCore.gyp:
424         * WebCore.gypi:
425         * WebCore.vcproj/WebCore.vcproj:
426         * WebCore.xcodeproj/project.pbxproj:
427         * dom/XMLDocumentParserLibxml2.cpp:
428         (WebCore::XMLDocumentParser::doEnd):
429         * xml/XMLTreeViewer.cpp:
430         (WebCore::XMLTreeViewer::transformDocumentToTreeView):
431         * xml/XMLViewer.css: Added.
432         * xml/XMLViewer.js: Added.
433         * xml/XMLViewer.xsl: Removed.
434         * xml/XSLStyleSheet.h:
435
436 2011-03-31  Jaehun Lim  <ljaehun.lim@samsung.com>
437
438         Unreviewed build fix.
439
440         Fix build break after rolling out r82496
441         https://bugs.webkit.org/show_bug.cgi?id=57536
442
443         * platform/efl/RenderThemeEfl.cpp:
444
445 2011-03-31  Andrey Adaikin  <aandrey@google.com>
446
447         Reviewed by Pavel Feldman.
448
449         Web Inspector: execution line is displayed incorrectly after source editing.
450         https://bugs.webkit.org/show_bug.cgi?id=57229
451
452         * inspector/front-end/SourceFrame.js:
453         (WebInspector.SourceFrame.prototype._saveViewerState):
454         (WebInspector.SourceFrame.prototype._restoreViewerState):
455         (WebInspector.SourceFrame.prototype._startEditing):
456         (WebInspector.SourceFrame.prototype._endEditing):
457         (WebInspector.SourceFrame.prototype._createTextViewer):
458         (WebInspector.SourceFrame.prototype.setExecutionLine):
459         (WebInspector.SourceFrame.prototype._handleSave.didEditScriptSource):
460         (WebInspector.SourceFrame.prototype._handleSave):
461         (WebInspector.SourceFrame.prototype._handleRevertEditing):
462         * inspector/front-end/TextViewer.js:
463         (WebInspector.TextEditorChunkedPanel.prototype.addDecoration):
464         (WebInspector.TextEditorChunkedPanel.prototype.removeDecoration):
465         (WebInspector.TextEditorMainPanel.prototype.makeLineAChunk):
466         (WebInspector.TextEditorMainPanel.prototype._positionToSelection):
467
468 2011-03-30  Alexander Pavlov  <apavlov@chromium.org>
469
470         Reviewed by Pavel Feldman.
471
472         Web Inspector: Make the CSStyle "shorthandValues" name-value map an array
473         https://bugs.webkit.org/show_bug.cgi?id=57452
474
475         No new tests, as this is a refactoring.
476
477         * inspector/InspectorCSSAgent.cpp:
478         * inspector/InspectorStyleSheet.cpp:
479         (WebCore::InspectorStyle::populateObjectWithStyleProperties):
480         * inspector/front-end/CSSStyleModel.js:
481         (WebInspector.CSSStyleDeclaration):
482         (WebInspector.CSSStyleDeclaration.buildShorthandValueMap):
483
484 2011-03-30  Steve Block  <steveblock@google.com>
485
486         Reviewed by Jeremy Orlow.
487
488         JavaField should not expose JavaString in its API
489         https://bugs.webkit.org/show_bug.cgi?id=55766
490
491         This patch fixes JavaField for V8 only.
492         - Factors out a JavaField interface which does not use JNI types.
493           This will allow the Java bridge to be used with objects that
494           don't use JNI directly. The existing jobject-backed
495           implementation is moved to a new JavaFieldJobject class which
496           implements the interface.
497         - Use WTF::String in place of JavaString in the API, as JavaString
498           exposes JNI types in its interface.
499
500         No new tests, refactoring only.
501
502         * Android.v8bindings.mk:
503         * WebCore.gypi:
504         * bridge/jni/JavaMethod.h:
505         (JSC::Bindings::JavaMethod::~JavaMethod):
506         * bridge/jni/JobjectWrapper.h:
507         * bridge/jni/v8/JavaClassV8.cpp:
508         (JavaClass::JavaClass):
509         * bridge/jni/v8/JavaFieldJobjectV8.cpp:
510         (JavaFieldJobject::JavaFieldJobject):
511         * bridge/jni/v8/JavaFieldJobjectV8.h:
512         (JSC::Bindings::JavaFieldJobject::name):
513         (JSC::Bindings::JavaFieldJobject::typeClassName):
514         (JSC::Bindings::JavaFieldJobject::type):
515         * bridge/jni/v8/JavaFieldV8.h:
516         (JSC::Bindings::JavaField::~JavaField):
517         * bridge/jni/v8/JavaInstanceV8.cpp:
518         (JavaInstance::getField):
519
520 2011-03-31  Levi Weintraub  <leviw@chromium.org>
521
522         Reviewed by Ryosuke Niwa.
523
524         Clean up from r82447.
525         https://bugs.webkit.org/attachment.cgi?bugid=57532
526
527         No new tests since this doesn't change behavior.
528
529         * rendering/RenderBlock.cpp: Removing unnecessary visible_units.h include.
530         * rendering/RootInlineBox.cpp:
531         (WebCore::RootInlineBox::getLogicalStartBoxWithNode): Making const.
532         (WebCore::RootInlineBox::getLogicalEndBoxWithNode): Ditto.
533         * rendering/RootInlineBox.h:
534
535 2011-03-31  Benjamin Kalman  <kalman@chromium.org>
536
537         Reviewed by Ojan Vafai.
538
539         DeleteSelectionCommand::removeNode tries to insert block placeholder in non-editable table cell positions
540         https://bugs.webkit.org/show_bug.cgi?id=57079
541
542         Test: editing/execCommand/delete-table-with-empty-contents.html
543
544         This bug results in an ASSERT fail in CompositeEditCommand::insertNodeAt, so is only observable in debug builds
545         of WebKit.
546
547         * editing/DeleteSelectionCommand.cpp:
548         (WebCore::firstEditablePositionInNode):
549         (WebCore::DeleteSelectionCommand::removeNode): Use firstEditablePositionInNode rather than firstPositionInNode
550         to find anchor node for the placeholder's position, if any.
551
552 2011-03-30  Ojan Vafai  <ojan@chromium.org>
553
554         Reviewed by Adam Roben.
555
556         REGRESSION (r82400): Leaks seen beneath CSSParser::createFloatingVectorSelector when parsing UA stylesheet
557         https://bugs.webkit.org/show_bug.cgi?id=57478
558
559         * css/CSSGrammar.y:
560         * css/CSSParser.cpp:
561         (WebCore::CSSParser::sinkFloatingSelectorVector):
562         * css/CSSParser.h:
563
564 2011-03-30  Dominic Cooney  <dominicc@google.com>
565
566         Reviewed by Dimitri Glazkov.
567
568         Adds layoutTestController.shadowRoot accessor to Mac DRT.
569         https://bugs.webkit.org/show_bug.cgi?id=57415
570
571         * WebCore.exp.in: DRT needs to link WebCore::Element::shadowRoot
572
573 2011-03-30  Kent Tamura  <tkent@chromium.org>
574
575         Reviewed by Dimitri Glazkov.
576
577         Simplify HTMLFormElement::validateInteractively() for asynchronous scroll event
578         https://bugs.webkit.org/show_bug.cgi?id=57424
579
580         r75555 made 'scroll' event asynchronous. So we don't need to worry about
581         deleting or moving a target node in scrollIntoViewIfNeeded().
582
583         * html/HTMLFormElement.cpp:
584         (WebCore::HTMLFormElement::validateInteractively): Remove unnecessary code.
585
586 2011-03-30  Kent Tamura  <tkent@chromium.org>
587
588         Reviewed by Darin Adler.
589
590         REGRESSION (r74895): Crash if input.type = 'file' twice
591         https://bugs.webkit.org/show_bug.cgi?id=57343
592
593         * html/HTMLInputElement.cpp:
594         (WebCore::HTMLInputElement::updateType):
595           Don't call setAttribute() if the type is not changed.
596
597 2011-03-30  Jia Pu  <jpu@apple.com>
598
599         Reviewed by Darin Adler.
600
601         Autocorrection panel isn't positioned correctly in Safari (mac) when the zooming is not 1x.
602         https://bugs.webkit.org/show_bug.cgi?id=57353
603         <rdar://problem/9163983>
604
605         We use Range::textQuads() instead of Range::boundingRect() to compute the position of correction
606         panel. The latter function compensates for zooming, which we don't need in this case. We also
607         dismiss correction panel when zooming factor is changed. This is done in Frame::setPageAndTextZoomFactors().
608
609         * WebCore.exp.in:
610         * dom/Range.cpp:
611         (WebCore::Range::textQuads):
612         * dom/Range.h:
613         * editing/Editor.cpp:
614         (WebCore::Editor::windowRectForRange):
615         * editing/Editor.h:
616         * page/Frame.cpp:
617         (WebCore::Frame::setPageAndTextZoomFactors):
618
619 2011-03-30  Chris Guillory  <chris.guillory@google.com>
620
621         Reviewed by Dimitri Glazkov.
622
623         Render fonts using skia when requested by platform context.
624         https://bugs.webkit.org/show_bug.cgi?id=56441
625
626         * platform/graphics/skia/PlatformContextSkia.cpp:
627         (WebCore::PlatformContextSkia::isNativeFontRenderingAllowed):
628         * platform/graphics/skia/PlatformContextSkia.h:
629         * platform/graphics/skia/SkiaFontWin.cpp:
630         (WebCore::windowsCanHandleTextDrawing):
631         (WebCore::skiaDrawText):
632         (WebCore::setupPaintForFont):
633         (WebCore::paintSkiaText):
634
635 2011-03-30  Dan Bernstein  <mitz@apple.com>
636
637         Reviewed by Darin Adler.
638
639         <rdar://problem/9199518> Crash when focusing a styled editable element
640
641         Test: editing/deleting/delete-button-background-image-none.html
642
643         * editing/DeleteButtonController.cpp:
644         (WebCore::isDeletableElement): Check all background layers for background images.
645         * rendering/style/RenderStyle.h: Removed backgroundImage() as it was only used, incorrectly,
646         in the above function.
647
648 2011-03-30  Martin Robinson  <mrobinson@igalia.com>
649
650         Try once more to fix the EFL build.
651
652         * platform/efl/RenderThemeEfl.cpp:
653
654 2011-03-30  Chris Fleizach  <cfleizach@apple.com>
655
656         Reviewed by Darin Adler.
657
658         Regression: VO cursor doesn't follow KB focus back into HTML view
659         https://bugs.webkit.org/show_bug.cgi?id=57509
660
661         In WK2, because the web area never believes focus leave the area, sending the initial
662         focus change when moving back into the web area, does not trigger a notification.
663
664         That behavior needs to be overridden by explicitly posting a focused UI element change
665         at the appropriate time. This is only used in WK2, hence the absence of a layout test for now.
666
667         * page/FocusController.cpp:
668         (WebCore::FocusController::setInitialFocus):
669
670 2011-03-30  MORITA Hajime  <morrita@google.com>
671
672         Reviewed by Simon Fraser.
673
674         box-shadow radii stays the same regardless of any spread set
675         https://bugs.webkit.org/show_bug.cgi?id=49726
676
677         - Removed special shadowSpread handling path
678         - Fixed broken multple inset shadow border computation.
679
680         Test: fast/box-shadow/spread-multiple-inset.html
681
682         * rendering/RenderBoxModelObject.cpp:
683         (WebCore::RenderBoxModelObject::paintBoxShadow):
684
685 2011-03-29  Matthew Delaney  <mdelaney@apple.com>
686
687         Reviewed by Simon Fraser.
688
689         Use the Accelerate vImage vectorized (un)premultiplyImageData functions for ImageBufferCG
690
691         https://bugs.webkit.org/show_bug.cgi?id=53134
692
693         Test: fast/canvas/getPutImageDataPairTest.html
694
695         * platform/graphics/cg/ImageBufferCG.cpp:
696
697 2011-03-30  Steve Falkenburg  <sfalken@apple.com>
698
699         Reviewed by Adam Roben.
700
701         Share most vsprops between Release and Production builds in releaseproduction.vsprops
702         https://bugs.webkit.org/show_bug.cgi?id=57508
703
704         * WebCore.vcproj/QTMovieWinProduction.vsprops:
705         * WebCore.vcproj/QTMovieWinRelease.vsprops:
706         * WebCore.vcproj/QTMovieWinReleaseCairoCFLite.vsprops:
707         * WebCore.vcproj/WebCoreProduction.vsprops:
708         * WebCore.vcproj/WebCoreRelease.vsprops:
709         * WebCore.vcproj/WebCoreReleaseCairoCFLite.vsprops:
710
711 2011-03-30  Timur Iskhodzhanov  <timurrrr@google.com>
712
713         Reviewed by Alexey Proskuryakov.
714
715         Add some dynamic annotations to JavaScriptCore/wtf
716         https://bugs.webkit.org/show_bug.cgi?id=53747
717
718         By using these annotations we can improve the precision of finding
719         WebKit errors using dynamic analysis tools like ThreadSanitizer and Valgrind.
720         These annotations don't affect the compiled binaries unless USE(DYNAMIC_ANNOTATIONS) is "1".
721
722         These files don't add new functionality, so don't need extra tests.
723
724         * ForwardingHeaders/wtf/DynamicAnnotations.h: Added.
725
726 2011-03-30  Abhishek Arya  <inferno@chromium.org>
727
728         Reviewed by Simon Fraser.
729
730         Fix wrong type assumptions in editing code. Move code
731         from ASSERTs to hard checks.
732         https://bugs.webkit.org/show_bug.cgi?id=57348
733
734         Test: editing/execCommand/remove-format-non-html-element-crash.html
735
736         * css/CSSStyleSelector.cpp:
737         (WebCore::CSSStyleSelector::applyProperty):
738         * editing/ApplyStyleCommand.cpp:
739         (WebCore::getRGBAFontColor):
740         (WebCore::ApplyStyleCommand::pushDownInlineStyleAroundNode):
741         * editing/DeleteButtonController.cpp:
742         (WebCore::enclosingDeletableElement):
743         * editing/EditingStyle.cpp:
744         (WebCore::EditingStyle::textDirection):
745         (WebCore::EditingStyle::prepareToApplyAt):
746         * editing/Editor.cpp:
747         (WebCore::Editor::textDirectionForSelection):
748         * editing/FormatBlockCommand.cpp:
749         (WebCore::FormatBlockCommand::elementForFormatBlockCommand):
750
751 2011-03-30  Stephen White  <senorblanco@chromium.org>
752
753         Reviewed by Kenneth Russell.
754
755         Speed up clipping in accelerated 2D canvas.
756         https://bugs.webkit.org/show_bug.cgi?id=57464
757
758         Instead of clearing the entire stencil buffer when removing clipping paths, we erase the path with a DECR stencil operation.
759         Covered by canvas/philip/tests/2d.path.clip.intersect.html, and others.
760
761         * platform/graphics/chromium/GLES2Canvas.cpp:
762         (WebCore::PathAndTransform::PathAndTransform):
763         New structure to keep track of the CTM at the time the clipping path was added.
764         (WebCore::GLES2Canvas::State::State):
765         Replace m_clippingEnabled with a count of total clipping paths.
766         (WebCore::GLES2Canvas::clearRect):
767         Check the total clipping path count, instead of m_clippingEnabled.
768         (WebCore::GLES2Canvas::fillPath):
769         (WebCore::GLES2Canvas::fillRect):
770         Perform state application after doing shadows.  This is necessary
771         since restore() may now leave clipping enabled.
772         (WebCore::GLES2Canvas::clipPath):
773         Explicitly specify the stencil operation as INCR.  Store the current
774         transformation when saving clipping paths.
775         (WebCore::GLES2Canvas::restore):
776         Don't clear the stencil buffer and re-draw active paths on each restore.
777         Erase the old paths with DECR.
778         (WebCore::GLES2Canvas::drawTexturedRect):
779         Check m_numClippingPaths instead of m_clippingEnabled.
780         (WebCore::GLES2Canvas::beginShadowDraw):
781         Perform state application when drawing hard shadows.
782         (WebCore::GLES2Canvas::endShadowDraw):
783         Check m_numClippingPaths instead of m_clippingEnabled.
784         (WebCore::GLES2Canvas::beginStencilDraw):
785         Make the stencil op a parameter to beginShadowDraw().
786         (WebCore::GLES2Canvas::applyClipping):
787         Compare against the total number of stencil paths, not just the ones in
788         the current state.
789         * platform/graphics/chromium/GLES2Canvas.h:
790         Make the stencil op a parameter to beginShadowDraw().
791
792 2011-03-29  Dimitri Glazkov  <dglazkov@chromium.org>
793
794         Reviewed by Darin Adler.
795
796         Move factory-like things in EventDispatcher::dispatchMouseEvent to a factory, clean up names and ordering.
797         https://bugs.webkit.org/show_bug.cgi?id=57419
798
799         Refactoring, covered by existing tests.
800
801         * dom/EventDispatcher.cpp:
802         (WebCore::EventDispatcher::dispatchMouseEvent): Reordered and clarified names.
803         * dom/MouseEvent.cpp:
804         (WebCore::MouseEvent::create): Added a new factory method that takes PlatformMouseEvent.
805         * dom/MouseEvent.h: Added decl.
806
807 2011-03-30  Erik Arvidsson  <arv@chromium.org>
808
809         Reviewed by Alexey Proskuryakov.
810
811         Missing DOM bindings for a ping
812         https://bugs.webkit.org/show_bug.cgi?id=51955
813
814         Test: fast/dom/ping-attribute-dom-binding.html
815
816         * html/HTMLAnchorElement.idl:
817         * html/HTMLAreaElement.idl:
818
819 2011-03-30  Patrick Gansterer  <paroga@webkit.org>
820
821         Unreviewed WinCE build fix for r82465.
822
823         * CMakeListsWinCE.txt:
824
825 2011-03-30  Steve Falkenburg  <sfalken@apple.com>
826
827         Reviewed by Adam Roben.
828
829         Update Windows production build logic for new production configurations
830         https://bugs.webkit.org/show_bug.cgi?id=57494
831
832         * WebCore.vcproj/QTMovieWinProduction.vsprops:
833         * WebCore.vcproj/WebCore.make:
834         * WebCore.vcproj/WebCoreProduction.vsprops:
835
836 2011-03-30  Sam Weinig  <sam@webkit.org>
837
838         Reviewed by Brady Eidson.
839
840         WebKit2: Attempting to view css file from url causes it to download
841         <rdar://problem/9102611>
842         https://bugs.webkit.org/show_bug.cgi?id=57501
843
844         * WebCore.exp.in:
845         * platform/MIMETypeRegistry.cpp:
846         (WebCore::initializeUnsupportedTextMIMETypes):
847         (WebCore::initializeMIMETypeRegistry):
848         (WebCore::MIMETypeRegistry::isUnsupportedTextMIMEType):
849         (WebCore::MIMETypeRegistry::getUnsupportedTextMIMETypes):
850         * platform/MIMETypeRegistry.h:
851         Add set of unsupported text MIME types, taken from WebKit/mac.
852
853 2011-03-30  Brian Weinstein  <bweinstein@apple.com>
854
855         Reviewed by Darin Adler.
856         
857         Crash when closing "Add Bookmark" dialog using the Enter Key
858         https://bugs.webkit.org/show_bug.cgi?id=57294
859         <rdar://problem/9044756>
860
861         Protect the FrameView in EventHandler::keyEvent, like we do in other EventHandler
862         functions that could destroy the frame.
863
864         * page/EventHandler.cpp:
865         (WebCore::EventHandler::keyEvent):
866
867 2011-03-30  Sheriff Bot  <webkit.review.bot@gmail.com>
868
869         Unreviewed, rolling out r82463.
870         http://trac.webkit.org/changeset/82463
871         https://bugs.webkit.org/show_bug.cgi?id=57482
872
873         Assertion failure in Node::rendererIsEditable on multiple
874         editing tests (Requested by aroben|meeting on #webkit).
875
876         * css/CSSParser.cpp:
877         (WebCore::CSSParser::parseValue):
878         * css/CSSPrimitiveValueMappings.h:
879         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
880         (WebCore::CSSPrimitiveValue::operator EUnicodeBidi):
881         * css/CSSValueKeywords.in:
882         * rendering/style/RenderStyle.h:
883         * rendering/style/RenderStyleConstants.h:
884
885 2011-03-24  Luiz Agostini  <luiz.agostini@openbossa.org>
886
887         Reviewed by Kenneth Rohde Christiansen.
888
889         [Qt] QNetworkReplyHandler refactoring: signal sequence.
890         https://bugs.webkit.org/show_bug.cgi?id=57049
891
892         This is the first step in QNetworkReplyHandler. The main objective here is to create simple invariants:
893
894             1 - that the signals metadatachanged, readyRead and finished will come in this order.
895             2 - that signals metadatachanged and finished will be called exactly once.
896
897         Having these invariants further simplifications will be possible and will come in future patches.
898
899         Class QNetworkReplyWrapper was created to handle QNetworkReply object. To connect to the signals of it
900         instead of connecting to the signals of QNetworkReply is what guarantees the sequence of the signals.
901         QNetworkReplyWrapper will be used in future to perform mime type sniffing before sending
902         metadatachanged signal.
903
904         * platform/network/qt/QNetworkReplyHandler.cpp:
905         (WebCore::QNetworkReplyWrapper::QNetworkReplyWrapper):
906         (WebCore::QNetworkReplyWrapper::~QNetworkReplyWrapper):
907         (WebCore::QNetworkReplyWrapper::release):
908         (WebCore::QNetworkReplyWrapper::resetConnections):
909         (WebCore::QNetworkReplyWrapper::receiveMetaData):
910         (WebCore::QNetworkReplyWrapper::didReceiveFinished):
911         (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
912         (WebCore::QNetworkReplyHandler::resetState):
913         (WebCore::QNetworkReplyHandler::release):
914         (WebCore::QNetworkReplyHandler::finish):
915         (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
916         (WebCore::QNetworkReplyHandler::redirect):
917         (WebCore::QNetworkReplyHandler::forwardData):
918         (WebCore::QNetworkReplyHandler::sendNetworkRequest):
919         (WebCore::QNetworkReplyHandler::start):
920         * platform/network/qt/QNetworkReplyHandler.h:
921         (WebCore::QNetworkReplyWrapper::reply):
922         (WebCore::QNetworkReplyWrapper::redirectionTargetUrl):
923         (WebCore::QNetworkReplyWrapper::encoding):
924         (WebCore::QNetworkReplyWrapper::advertisedMimeType):
925         (WebCore::QNetworkReplyHandler::reply):
926
927 2011-03-30  Steve Falkenburg  <sfalken@apple.com>
928
929         Reviewed by Adam Roben.
930
931         Rename Windows configuration Release_LTCG to Production for clarity
932         https://bugs.webkit.org/show_bug.cgi?id=57465
933
934         * WebCore.vcproj/QTMovieWin.vcproj:
935         * WebCore.vcproj/QTMovieWinProduction.vsprops: Copied from Source/WebCore/WebCore.vcproj/QTMovieWinReleaseLTCG.vsprops.
936         * WebCore.vcproj/QTMovieWinReleaseLTCG.vsprops: Removed.
937         * WebCore.vcproj/WebCore.sln:
938         * WebCore.vcproj/WebCore.submit.sln:
939         * WebCore.vcproj/WebCore.vcproj:
940         * WebCore.vcproj/WebCoreGenerated.vcproj:
941         * WebCore.vcproj/WebCoreProduction.vsprops: Copied from Source/WebCore/WebCore.vcproj/WebCoreReleaseLTCG.vsprops.
942         * WebCore.vcproj/WebCoreReleaseLTCG.vsprops: Removed.
943
944 2011-03-30  Brian Weinstein  <bweinstein@apple.com>
945
946         Reviewed by Anders Carlsson.
947         
948         ASSERT(cookieStorageAdapter) when calling stopObservingCookieChanges after WebProcess has crashed
949         https://bugs.webkit.org/show_bug.cgi?id=57477
950         <rdar://problem/9178751>
951         
952         If someone has called startObservingCookieChanges, and the WebProcess crashes and restarts, the UIProcess
953         will call stopObservingCookieChanges when cookieStorageAdapter is nil.
954         
955         The assert is wrong when the web process crashes, and there is no harm in dispatching a message to nil,
956         so remove the assert.
957         
958         * platform/network/mac/CookieStorageMac.mm:
959         (WebCore::stopObservingCookieChanges):
960
961 2011-03-30  Sam Weinig  <sam@webkit.org>
962
963         Fix Leopard build.
964
965         * platform/DefaultLocalizationStrategy.cpp:
966         (WebCore::DefaultLocalizationStrategy::contextMenuItemTagLookUpInDictionary):
967
968 2011-03-30  Sam Weinig  <sam@webkit.org>
969
970         Reviewed by Anders Carlsson.
971
972         Add default localization strategy that can be shared by WebKit1 and WebKit2
973         https://bugs.webkit.org/show_bug.cgi?id=57406
974
975         Currently, only WebKit2 uses this default strategy, but WebKit1 should be able
976         to adopt it soon.
977
978         * platform/DefaultLocalizationStrategy.cpp: Copied from Source/WebKit2/WebProcess/WebCoreSupport/WebPlatformStrategies.cpp.
979         (WebCore::DefaultLocalizationStrategy::DefaultLocalizationStrategy):
980         * platform/DefaultLocalizationStrategy.h: Copied from Source/WebKit2/WebProcess/WebCoreSupport/WebPlatformStrategies.h.
981         Copy the implementation of the Localization strategy from WebKit2 into a shared default strategy.
982
983         * platform/LocalizedStrings.cpp:
984         (WebCore::localizedString):
985         Add default implementation of localization bottleneck function.
986
987         * platform/LocalizedStrings.h:
988         Add localization macros here, instead of defining them in the above layer.
989
990         * platform/PlatformStrategies.cpp:
991         (WebCore::PlatformStrategies::createLocalizationStrategy):
992         * platform/PlatformStrategies.h:
993         Add default implementation of strategy creation function which creates the default strategy.
994
995         * platform/win/LocalizedStringsWin.cpp: Copied from Source/WebCore/platform/mac/LocalizedStringsMac.mm.
996         (WebCore::localizedString):
997         Add stub for windows, this will be update to pull from the bundle in a follow up patch.
998
999         * Android.mk:
1000         * CMakeLists.txt:
1001         * GNUmakefile.am:
1002         * WebCore.exp.in:
1003         * WebCore.gypi:
1004         * WebCore.pro:
1005         * WebCore.vcproj/WebCore.vcproj:
1006         * WebCore.xcodeproj/project.pbxproj:
1007         Add new files.
1008
1009 2011-03-30  Andras Becsi  <abecsi@webkit.org>
1010
1011         Reviewed by Darin Adler.
1012
1013         CSS: Slow parsing of rgb() with percent values
1014         https://bugs.webkit.org/show_bug.cgi?id=16708
1015
1016         Implement fast-path parsing for percentage color values.
1017
1018         Gain ~30% speedup on  http://canvex.lazyilluminati.com/misc/3d.html
1019
1020         Relanding with rounding fix after it was rolled out in r82315.
1021
1022         * css/CSSParser.cpp:
1023         (WebCore::checkForValidDouble): Extend to return the number of characters forming a valid double.
1024         (WebCore::parseDouble): Function for parsing double values if they are valid.
1025         (WebCore::parseColorIntOrPercentage): Extend parseColorInt to deal with percentage values.
1026         (WebCore::parseAlphaValue): Use the new functions.
1027         (WebCore::CSSParser::parseColor): Ditto.
1028
1029 2011-03-30  Ofri Wolfus  <ofri@dhcp-172-28-40-178.tlv.corp.google.com>
1030
1031         Reviewed by Eric Seidel.
1032
1033         Add support for parsing unicode-bidi: -webkit-plaintext.
1034         https://bugs.webkit.org/show_bug.cgi?id=57457
1035
1036         Test: css3/unicode-bidi-plaintext-parse.html
1037
1038         * css/CSSParser.cpp:
1039         (WebCore::CSSParser::parseValue):
1040         * css/CSSPrimitiveValueMappings.h:
1041         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
1042         (WebCore::CSSPrimitiveValue::operator EUnicodeBidi):
1043         * css/CSSValueKeywords.in:
1044         * rendering/style/RenderStyle.h:
1045         * rendering/style/RenderStyleConstants.h:
1046
1047 2011-03-30  Andreas Kling  <kling@webkit.org>
1048
1049         Reviewed by Benjamin Poulain.
1050
1051         [Qt] Remove unused variables in GraphicsContext::fillRect()
1052
1053         * platform/graphics/qt/GraphicsContextQt.cpp:
1054         (WebCore::GraphicsContext::fillRect):
1055
1056 2011-03-30  Yael Aharon  <yael.aharon@nokia.com>
1057
1058         Reviewed by Eric Seidel.
1059
1060         REGRESSION(r82419): New pixel test failure fast/box-shadow/basic-shadows.html
1061         https://bugs.webkit.org/show_bug.cgi?id=57442
1062
1063         When checking the position of the inline iterator in the logicallyLastRun, we should not consider BR as text.
1064
1065         No new tests as existing test covers this case.
1066
1067         * rendering/RenderBlockLineLayout.cpp:
1068         (WebCore::reachedEndOfTextRenderer):
1069
1070 2011-03-30  Mario Sanchez Prada  <msanchez@igalia.com>
1071
1072         Reviewed by Chris Fleizach.
1073
1074         AX: GTK: ARIA role is not respected on <p> <label> <div> and <form>
1075         https://bugs.webkit.org/show_bug.cgi?id=47636
1076
1077         Define new roles in WebCore and map them to ATK accordingly.
1078
1079         Test: platform/gtk/accessibility/aria-roles-unignored.html
1080
1081         * accessibility/AccessibilityObject.h: Added new roles to
1082         represent paragraphs, labels, forms and div sections.
1083         * accessibility/AccessibilityRenderObject.cpp:
1084         (WebCore::AccessibilityRenderObject::determineAccessibilityRole):
1085         Return ParagraphRole, LabelRole, FormRole and DivRole when needed
1086         for the GTK platform only.
1087         * accessibility/gtk/AccessibilityObjectAtk.cpp:
1088         (WebCore::AccessibilityObject::allowsTextRanges): Consider the new
1089         roles now that those kind of nodes won't return true to isGroup().
1090         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
1091         (atkRole): Map new WebCore roles to ATK Roles.
1092         (webkit_accessible_get_role): Remove code to define roles for
1093         paragraphs, labels, forms and divs based on node's tag name.
1094
1095         Update mappings for the Mac platform.
1096
1097         * accessibility/mac/AccessibilityObjectWrapper.mm:
1098         (createAccessibilityRoleMap): Add explicit mappings from the new
1099         roles introduced to NSAccessibilityGroupRole.
1100
1101 2011-03-30  Yury Semikhatsky  <yurys@chromium.org>
1102
1103         Unreviewed. Build fix for Efl and Qt Win.
1104
1105         * inspector/PageDebuggerAgent.cpp: removed ENABLE(WORKERS) guard from code that has nothing to do with workers.
1106
1107 2011-03-30  Andrey Kosyakov  <caseq@chromium.org>
1108
1109         Reviewed by Pavel Feldman.
1110
1111         Web Inspector: audit run never completes, fails in DOMAgent.js
1112         https://bugs.webkit.org/show_bug.cgi?id=57349
1113
1114         - assure document is present before calling DOMAgent.querySelectAll()
1115
1116         * inspector/front-end/AuditRules.js:
1117         (WebInspector.AuditRules.ImageDimensionsRule.prototype.doRun):
1118
1119 2011-03-30  Yury Semikhatsky  <yurys@chromium.org>
1120
1121         Unreviewed. Build fix.
1122
1123         * UseJSC.cmake: fix typo PageDebugServer -> PageScriptDebugServer
1124
1125 2011-03-30  Yury Semikhatsky  <yurys@chromium.org>
1126
1127         Reviewed by Pavel Feldman.
1128
1129         Web Inspector: split debugger agent into Page and Worker-specific ones
1130         https://bugs.webkit.org/show_bug.cgi?id=57345
1131
1132         ScriptDebugServer and InspectorDebuggerAgent contain only functionality common
1133         for Worker and Page debugger. All specifics is moved into Page/WorkerScriptDebugServer
1134         and Page/WorkerDebuggerAgent.
1135
1136         * CMakeLists.txt:
1137         * GNUmakefile.am:
1138         * UseJSC.cmake:
1139         * WebCore.gypi:
1140         * WebCore.pro:
1141         * WebCore.vcproj/WebCore.vcproj:
1142         * WebCore.xcodeproj/project.pbxproj:
1143         * bindings/js/JSBindingsAllInOne.cpp:
1144         * bindings/js/JSInjectedScriptHostCustom.cpp:
1145         (WebCore::JSInjectedScriptHost::currentCallFrame):
1146         * bindings/js/PageScriptDebugServer.cpp: Added.
1147         (WebCore::toPage):
1148         (WebCore::PageScriptDebugServer::shared):
1149         (WebCore::PageScriptDebugServer::PageScriptDebugServer):
1150         (WebCore::PageScriptDebugServer::~PageScriptDebugServer):
1151         (WebCore::PageScriptDebugServer::addListener):
1152         (WebCore::PageScriptDebugServer::removeListener):
1153         (WebCore::PageScriptDebugServer::recompileAllJSFunctions):
1154         (WebCore::PageScriptDebugServer::getListenersForGlobalObject):
1155         (WebCore::PageScriptDebugServer::didPause):
1156         (WebCore::PageScriptDebugServer::didContinue):
1157         (WebCore::PageScriptDebugServer::didRemoveLastListener):
1158         (WebCore::PageScriptDebugServer::setJavaScriptPaused):
1159         * bindings/js/PageScriptDebugServer.h: Added.
1160         * bindings/js/ScriptDebugServer.cpp:
1161         (WebCore::ScriptDebugServer::ScriptDebugServer):
1162         (WebCore::ScriptDebugServer::sourceParsed):
1163         (WebCore::ScriptDebugServer::dispatchFunctionToListeners):
1164         (WebCore::ScriptDebugServer::createCallFrameAndPauseIfNeeded):
1165         (WebCore::ScriptDebugServer::updateCallFrameAndPauseIfNeeded):
1166         (WebCore::ScriptDebugServer::pauseIfNeeded):
1167         * bindings/js/ScriptDebugServer.h:
1168         * bindings/js/WorkerScriptDebugServer.cpp: Added.
1169         (WebCore::WorkerScriptDebugServer::WorkerScriptDebugServer):
1170         (WebCore::WorkerScriptDebugServer::addListener):
1171         (WebCore::WorkerScriptDebugServer::removeListener):
1172         * bindings/js/WorkerScriptDebugServer.h: Added.
1173         (WebCore::WorkerScriptDebugServer::~WorkerScriptDebugServer):
1174         (WebCore::WorkerScriptDebugServer::recompileAllJSFunctions):
1175         (WebCore::WorkerScriptDebugServer::getListenersForGlobalObject):
1176         (WebCore::WorkerScriptDebugServer::didPause):
1177         (WebCore::WorkerScriptDebugServer::didContinue):
1178         * bindings/v8/PageScriptDebugServer.cpp: Added.
1179         (WebCore::retrieveFrame):
1180         (WebCore::PageScriptDebugServer::shared):
1181         (WebCore::PageScriptDebugServer::PageScriptDebugServer):
1182         (WebCore::PageScriptDebugServer::addListener):
1183         (WebCore::PageScriptDebugServer::removeListener):
1184         (WebCore::PageScriptDebugServer::setClientMessageLoop):
1185         (WebCore::PageScriptDebugServer::getDebugListenerForContext):
1186         (WebCore::PageScriptDebugServer::runMessageLoopOnPause):
1187         (WebCore::PageScriptDebugServer::quitMessageLoopOnPause):
1188         * bindings/v8/PageScriptDebugServer.h: Added.
1189         (WebCore::PageScriptDebugServer::setEnabled):
1190         (WebCore::PageScriptDebugServer::ClientMessageLoop::~ClientMessageLoop):
1191         (WebCore::PageScriptDebugServer::~PageScriptDebugServer):
1192         * bindings/v8/ScriptDebugServer.cpp:
1193         (WebCore::ScriptDebugServer::ScriptDebugServer):
1194         (WebCore::ScriptDebugServer::setPauseOnNextStatement):
1195         (WebCore::ScriptDebugServer::breakProgram):
1196         (WebCore::ScriptDebugServer::continueProgram):
1197         (WebCore::ScriptDebugServer::stepIntoStatement):
1198         (WebCore::ScriptDebugServer::stepOverStatement):
1199         (WebCore::ScriptDebugServer::stepOutOfFunction):
1200         (WebCore::ScriptDebugServer::editScriptSource):
1201         (WebCore::toScriptDebugServer):
1202         (WebCore::ScriptDebugServer::breakProgramCallback):
1203         (WebCore::ScriptDebugServer::v8DebugEventCallback):
1204         (WebCore::ScriptDebugServer::handleV8DebugEvent):
1205         (WebCore::ScriptDebugServer::isPaused):
1206         * bindings/v8/ScriptDebugServer.h:
1207         * bindings/v8/WorkerScriptDebugServer.cpp: Added.
1208         (WebCore::WorkerScriptDebugServer::WorkerScriptDebugServer):
1209         (WebCore::WorkerScriptDebugServer::addListener):
1210         (WebCore::WorkerScriptDebugServer::removeListener):
1211         * bindings/v8/WorkerScriptDebugServer.h: Added.
1212         (WebCore::WorkerScriptDebugServer::~WorkerScriptDebugServer):
1213         (WebCore::WorkerScriptDebugServer::getDebugListenerForContext):
1214         (WebCore::WorkerScriptDebugServer::runMessageLoopOnPause):
1215         (WebCore::WorkerScriptDebugServer::quitMessageLoopOnPause):
1216         * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
1217         (WebCore::V8InjectedScriptHost::currentCallFrameCallback):
1218         * inspector/InjectedScriptHost.h:
1219         (WebCore::InjectedScriptHost::init):
1220         (WebCore::InjectedScriptHost::debuggerAgent):
1221         * inspector/InspectorAgent.cpp:
1222         (WebCore::InspectorAgent::InspectorAgent):
1223         * inspector/InspectorDebuggerAgent.cpp:
1224         (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
1225         (WebCore::InspectorDebuggerAgent::enable):
1226         (WebCore::InspectorDebuggerAgent::disable):
1227         (WebCore::InspectorDebuggerAgent::setBreakpointsActive):
1228         (WebCore::InspectorDebuggerAgent::removeBreakpoint):
1229         (WebCore::InspectorDebuggerAgent::continueToLocation):
1230         (WebCore::InspectorDebuggerAgent::resolveBreakpoint):
1231         (WebCore::InspectorDebuggerAgent::editScriptSource):
1232         (WebCore::InspectorDebuggerAgent::schedulePauseOnNextStatement):
1233         (WebCore::InspectorDebuggerAgent::cancelPauseOnNextStatement):
1234         (WebCore::InspectorDebuggerAgent::resume):
1235         (WebCore::InspectorDebuggerAgent::stepOver):
1236         (WebCore::InspectorDebuggerAgent::stepInto):
1237         (WebCore::InspectorDebuggerAgent::stepOut):
1238         (WebCore::InspectorDebuggerAgent::setPauseOnExceptionsState):
1239         (WebCore::InspectorDebuggerAgent::didPause):
1240         (WebCore::InspectorDebuggerAgent::breakProgram):
1241         * inspector/InspectorDebuggerAgent.h:
1242         * inspector/InspectorProfilerAgent.cpp:
1243         (WebCore::InspectorProfilerAgent::disable):
1244         (WebCore::InspectorProfilerAgent::enable):
1245         (WebCore::InspectorProfilerAgent::startUserInitiatedProfiling):
1246         * inspector/PageDebuggerAgent.cpp: Added.
1247         (WebCore::PageDebuggerAgent::create):
1248         (WebCore::PageDebuggerAgent::PageDebuggerAgent):
1249         (WebCore::PageDebuggerAgent::~PageDebuggerAgent):
1250         (WebCore::PageDebuggerAgent::startListeningScriptDebugServer):
1251         (WebCore::PageDebuggerAgent::stopListeningScriptDebugServer):
1252         (WebCore::PageDebuggerAgent::scriptDebugServer):
1253         * inspector/PageDebuggerAgent.h: Added.
1254         * inspector/WorkerDebuggerAgent.cpp: Added.
1255         (WebCore::WorkerDebuggerAgent::create):
1256         (WebCore::WorkerDebuggerAgent::WorkerDebuggerAgent):
1257         (WebCore::WorkerDebuggerAgent::~WorkerDebuggerAgent):
1258         (WebCore::WorkerDebuggerAgent::startListeningScriptDebugServer):
1259         (WebCore::WorkerDebuggerAgent::stopListeningScriptDebugServer):
1260         (WebCore::WorkerDebuggerAgent::scriptDebugServer):
1261         * inspector/WorkerDebuggerAgent.h: Added.
1262
1263 2011-03-30  Levi Weintraub  <leviw@chromium.org>
1264
1265         Reviewed by Ryosuke Niwa.
1266
1267         Clicking below last line of right-to-left editable text that puts caret in the wrong place
1268         https://bugs.webkit.org/show_bug.cgi?id=38087
1269
1270         Moving getLogical[Start/End]BoxWithNode to RootInlineBox and using it in positionForPointWithInlineChildren
1271         instead of lastLeafChild, which wasn't correct in the RTL case.
1272
1273         Test: editing/selection/click-below-rtl-text.html
1274
1275         * editing/visible_units.cpp:
1276         (WebCore::logicalStartPositionForLine): Moved to RootInlineBox.
1277         (WebCore::logicalEndPositionForLine): Ditto.
1278         * editing/visible_units.h:
1279         * rendering/RenderBlock.cpp:
1280         (WebCore::RenderBlock::positionForPointWithInlineChildren): Useing getLogicalEndBoxWithNode instead
1281         of lastLeafChild.
1282         * rendering/RootInlineBox.cpp:
1283         (WebCore::RootInlineBox::getLogicalStartBoxWithNode): Moved and refactored.
1284         (WebCore::RootInlineBox::getLogicalEndBoxWithNode): Ditto.
1285         * rendering/RootInlineBox.h:
1286
1287 2011-03-30  Yury Semikhatsky  <yurys@chromium.org>
1288
1289         Unreviewed. Rollout r82438 and r82436.
1290
1291         * CMakeLists.txt:
1292         * GNUmakefile.am:
1293         * UseJSC.cmake:
1294         * WebCore.gypi:
1295         * WebCore.pro:
1296         * WebCore.vcproj/WebCore.vcproj:
1297         * WebCore.xcodeproj/project.pbxproj:
1298         * bindings/js/JSBindingsAllInOne.cpp:
1299         * bindings/js/JSInjectedScriptHostCustom.cpp:
1300         (WebCore::JSInjectedScriptHost::currentCallFrame):
1301         * bindings/js/PageScriptDebugServer.cpp: Removed.
1302         * bindings/js/PageScriptDebugServer.h: Removed.
1303         * bindings/js/ScriptDebugServer.cpp:
1304         (WebCore::ScriptDebugServer::shared):
1305         (WebCore::ScriptDebugServer::ScriptDebugServer):
1306         (WebCore::ScriptDebugServer::addListener):
1307         (WebCore::ScriptDebugServer::removeListener):
1308         (WebCore::ScriptDebugServer::hasListenersInterestedInPage):
1309         (WebCore::toPage):
1310         (WebCore::ScriptDebugServer::sourceParsed):
1311         (WebCore::ScriptDebugServer::dispatchFunctionToListeners):
1312         (WebCore::ScriptDebugServer::setJavaScriptPaused):
1313         (WebCore::ScriptDebugServer::createCallFrameAndPauseIfNeeded):
1314         (WebCore::ScriptDebugServer::updateCallFrameAndPauseIfNeeded):
1315         (WebCore::ScriptDebugServer::pauseIfNeeded):
1316         (WebCore::ScriptDebugServer::recompileAllJSFunctions):
1317         (WebCore::ScriptDebugServer::didAddListener):
1318         (WebCore::ScriptDebugServer::didRemoveListener):
1319         * bindings/js/ScriptDebugServer.h:
1320         * bindings/js/WorkerScriptDebugServer.cpp: Removed.
1321         * bindings/js/WorkerScriptDebugServer.h: Removed.
1322         * bindings/v8/PageScriptDebugServer.cpp: Removed.
1323         * bindings/v8/PageScriptDebugServer.h: Removed.
1324         * bindings/v8/ScriptDebugServer.cpp:
1325         (WebCore::retrieveFrame):
1326         (WebCore::ScriptDebugServer::shared):
1327         (WebCore::ScriptDebugServer::ScriptDebugServer):
1328         (WebCore::ScriptDebugServer::addListener):
1329         (WebCore::ScriptDebugServer::removeListener):
1330         (WebCore::ScriptDebugServer::setPauseOnNextStatement):
1331         (WebCore::ScriptDebugServer::breakProgram):
1332         (WebCore::ScriptDebugServer::continueProgram):
1333         (WebCore::ScriptDebugServer::stepIntoStatement):
1334         (WebCore::ScriptDebugServer::stepOverStatement):
1335         (WebCore::ScriptDebugServer::stepOutOfFunction):
1336         (WebCore::ScriptDebugServer::editScriptSource):
1337         (WebCore::ScriptDebugServer::setEnabled):
1338         (WebCore::ScriptDebugServer::breakProgramCallback):
1339         (WebCore::ScriptDebugServer::v8DebugEventCallback):
1340         (WebCore::ScriptDebugServer::handleV8DebugEvent):
1341         (WebCore::ScriptDebugServer::didResume):
1342         * bindings/v8/ScriptDebugServer.h:
1343         (WebCore::ScriptDebugServer::pageCreated):
1344         (WebCore::ScriptDebugServer::ClientMessageLoop::~ClientMessageLoop):
1345         (WebCore::ScriptDebugServer::setClientMessageLoop):
1346         * bindings/v8/WorkerScriptDebugServer.cpp: Removed.
1347         * bindings/v8/WorkerScriptDebugServer.h: Removed.
1348         * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
1349         (WebCore::V8InjectedScriptHost::currentCallFrameCallback):
1350         * inspector/InjectedScriptHost.h:
1351         (WebCore::InjectedScriptHost::init):
1352         * inspector/InspectorAgent.cpp:
1353         (WebCore::InspectorAgent::InspectorAgent):
1354         * inspector/InspectorDebuggerAgent.cpp:
1355         (WebCore::InspectorDebuggerAgent::create):
1356         (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
1357         (WebCore::InspectorDebuggerAgent::enable):
1358         (WebCore::InspectorDebuggerAgent::disable):
1359         (WebCore::InspectorDebuggerAgent::setBreakpointsActive):
1360         (WebCore::InspectorDebuggerAgent::removeBreakpoint):
1361         (WebCore::InspectorDebuggerAgent::continueToLocation):
1362         (WebCore::InspectorDebuggerAgent::resolveBreakpoint):
1363         (WebCore::InspectorDebuggerAgent::editScriptSource):
1364         (WebCore::InspectorDebuggerAgent::schedulePauseOnNextStatement):
1365         (WebCore::InspectorDebuggerAgent::cancelPauseOnNextStatement):
1366         (WebCore::InspectorDebuggerAgent::resume):
1367         (WebCore::InspectorDebuggerAgent::stepOver):
1368         (WebCore::InspectorDebuggerAgent::stepInto):
1369         (WebCore::InspectorDebuggerAgent::stepOut):
1370         (WebCore::InspectorDebuggerAgent::setPauseOnExceptionsState):
1371         (WebCore::InspectorDebuggerAgent::didPause):
1372         (WebCore::InspectorDebuggerAgent::breakProgram):
1373         * inspector/InspectorDebuggerAgent.h:
1374         * inspector/InspectorProfilerAgent.cpp:
1375         (WebCore::InspectorProfilerAgent::disable):
1376         (WebCore::InspectorProfilerAgent::enable):
1377         (WebCore::InspectorProfilerAgent::startUserInitiatedProfiling):
1378         * inspector/PageDebuggerAgent.cpp: Removed.
1379         * inspector/PageDebuggerAgent.h: Removed.
1380         * inspector/WorkerDebuggerAgent.cpp: Removed.
1381         * inspector/WorkerDebuggerAgent.h: Removed.
1382
1383 2011-03-30  Yury Semikhatsky  <yurys@chromium.org>
1384
1385         Unreviewed. Fix compilation on Windows and EFL.
1386
1387         * CMakeLists.txt:
1388         * bindings/js/JSBindingsAllInOne.cpp:
1389
1390 2011-03-30  Yury Semikhatsky  <yurys@chromium.org>
1391
1392         Reviewed by Pavel Feldman.
1393
1394         Web Inspector: split debugger agent into Page and Worker-specific ones
1395         https://bugs.webkit.org/show_bug.cgi?id=57345
1396
1397         ScriptDebugServer and InspectorDebuggerAgent contain only functionality common
1398         for Worker and Page debugger. All specifics is moved into Page/WorkerScriptDebugServer
1399         and Page/WorkerDebuggerAgent.
1400
1401         * GNUmakefile.am:
1402         * UseJSC.cmake:
1403         * WebCore.gypi:
1404         * WebCore.pro:
1405         * WebCore.vcproj/WebCore.vcproj:
1406         * WebCore.xcodeproj/project.pbxproj:
1407         * bindings/js/JSInjectedScriptHostCustom.cpp:
1408         (WebCore::JSInjectedScriptHost::currentCallFrame):
1409         * bindings/js/PageScriptDebugServer.cpp: Added.
1410         (WebCore::toPage):
1411         (WebCore::PageScriptDebugServer::shared):
1412         (WebCore::PageScriptDebugServer::PageScriptDebugServer):
1413         (WebCore::PageScriptDebugServer::~PageScriptDebugServer):
1414         (WebCore::PageScriptDebugServer::addListener):
1415         (WebCore::PageScriptDebugServer::removeListener):
1416         (WebCore::PageScriptDebugServer::recompileAllJSFunctions):
1417         (WebCore::PageScriptDebugServer::getListenersForGlobalObject):
1418         (WebCore::PageScriptDebugServer::didPause):
1419         (WebCore::PageScriptDebugServer::didContinue):
1420         (WebCore::PageScriptDebugServer::didRemoveLastListener):
1421         (WebCore::PageScriptDebugServer::setJavaScriptPaused):
1422         * bindings/js/PageScriptDebugServer.h: Added.
1423         * bindings/js/ScriptDebugServer.cpp:
1424         (WebCore::ScriptDebugServer::ScriptDebugServer):
1425         (WebCore::ScriptDebugServer::sourceParsed):
1426         (WebCore::ScriptDebugServer::dispatchFunctionToListeners):
1427         (WebCore::ScriptDebugServer::createCallFrameAndPauseIfNeeded):
1428         (WebCore::ScriptDebugServer::updateCallFrameAndPauseIfNeeded):
1429         (WebCore::ScriptDebugServer::pauseIfNeeded):
1430         * bindings/js/ScriptDebugServer.h:
1431         * bindings/js/WorkerScriptDebugServer.cpp: Added.
1432         (WebCore::WorkerScriptDebugServer::WorkerScriptDebugServer):
1433         (WebCore::WorkerScriptDebugServer::addListener):
1434         (WebCore::WorkerScriptDebugServer::removeListener):
1435         * bindings/js/WorkerScriptDebugServer.h: Added.
1436         (WebCore::WorkerScriptDebugServer::~WorkerScriptDebugServer):
1437         (WebCore::WorkerScriptDebugServer::recompileAllJSFunctions):
1438         (WebCore::WorkerScriptDebugServer::getListenersForGlobalObject):
1439         (WebCore::WorkerScriptDebugServer::didPause):
1440         (WebCore::WorkerScriptDebugServer::didContinue):
1441         * bindings/v8/PageScriptDebugServer.cpp: Added.
1442         (WebCore::retrieveFrame):
1443         (WebCore::PageScriptDebugServer::shared):
1444         (WebCore::PageScriptDebugServer::PageScriptDebugServer):
1445         (WebCore::PageScriptDebugServer::addListener):
1446         (WebCore::PageScriptDebugServer::removeListener):
1447         (WebCore::PageScriptDebugServer::setClientMessageLoop):
1448         (WebCore::PageScriptDebugServer::getDebugListenerForContext):
1449         (WebCore::PageScriptDebugServer::runMessageLoopOnPause):
1450         (WebCore::PageScriptDebugServer::quitMessageLoopOnPause):
1451         * bindings/v8/PageScriptDebugServer.h: Added.
1452         (WebCore::PageScriptDebugServer::setEnabled):
1453         (WebCore::PageScriptDebugServer::ClientMessageLoop::~ClientMessageLoop):
1454         (WebCore::PageScriptDebugServer::~PageScriptDebugServer):
1455         * bindings/v8/ScriptDebugServer.cpp:
1456         (WebCore::ScriptDebugServer::ScriptDebugServer):
1457         (WebCore::ScriptDebugServer::setPauseOnNextStatement):
1458         (WebCore::ScriptDebugServer::breakProgram):
1459         (WebCore::ScriptDebugServer::continueProgram):
1460         (WebCore::ScriptDebugServer::stepIntoStatement):
1461         (WebCore::ScriptDebugServer::stepOverStatement):
1462         (WebCore::ScriptDebugServer::stepOutOfFunction):
1463         (WebCore::ScriptDebugServer::editScriptSource):
1464         (WebCore::toScriptDebugServer):
1465         (WebCore::ScriptDebugServer::breakProgramCallback):
1466         (WebCore::ScriptDebugServer::v8DebugEventCallback):
1467         (WebCore::ScriptDebugServer::handleV8DebugEvent):
1468         (WebCore::ScriptDebugServer::isPaused):
1469         * bindings/v8/ScriptDebugServer.h:
1470         * bindings/v8/WorkerScriptDebugServer.cpp: Added.
1471         (WebCore::WorkerScriptDebugServer::WorkerScriptDebugServer):
1472         (WebCore::WorkerScriptDebugServer::addListener):
1473         (WebCore::WorkerScriptDebugServer::removeListener):
1474         * bindings/v8/WorkerScriptDebugServer.h: Added.
1475         (WebCore::WorkerScriptDebugServer::~WorkerScriptDebugServer):
1476         (WebCore::WorkerScriptDebugServer::getDebugListenerForContext):
1477         (WebCore::WorkerScriptDebugServer::runMessageLoopOnPause):
1478         (WebCore::WorkerScriptDebugServer::quitMessageLoopOnPause):
1479         * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
1480         (WebCore::V8InjectedScriptHost::currentCallFrameCallback):
1481         * inspector/InjectedScriptHost.h:
1482         (WebCore::InjectedScriptHost::init):
1483         (WebCore::InjectedScriptHost::debuggerAgent):
1484         * inspector/InspectorAgent.cpp:
1485         (WebCore::InspectorAgent::InspectorAgent):
1486         * inspector/InspectorDebuggerAgent.cpp:
1487         (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
1488         (WebCore::InspectorDebuggerAgent::enable):
1489         (WebCore::InspectorDebuggerAgent::disable):
1490         (WebCore::InspectorDebuggerAgent::setBreakpointsActive):
1491         (WebCore::InspectorDebuggerAgent::removeBreakpoint):
1492         (WebCore::InspectorDebuggerAgent::continueToLocation):
1493         (WebCore::InspectorDebuggerAgent::resolveBreakpoint):
1494         (WebCore::InspectorDebuggerAgent::editScriptSource):
1495         (WebCore::InspectorDebuggerAgent::schedulePauseOnNextStatement):
1496         (WebCore::InspectorDebuggerAgent::cancelPauseOnNextStatement):
1497         (WebCore::InspectorDebuggerAgent::resume):
1498         (WebCore::InspectorDebuggerAgent::stepOver):
1499         (WebCore::InspectorDebuggerAgent::stepInto):
1500         (WebCore::InspectorDebuggerAgent::stepOut):
1501         (WebCore::InspectorDebuggerAgent::setPauseOnExceptionsState):
1502         (WebCore::InspectorDebuggerAgent::didPause):
1503         (WebCore::InspectorDebuggerAgent::breakProgram):
1504         * inspector/InspectorDebuggerAgent.h:
1505         * inspector/InspectorProfilerAgent.cpp:
1506         (WebCore::InspectorProfilerAgent::disable):
1507         (WebCore::InspectorProfilerAgent::enable):
1508         (WebCore::InspectorProfilerAgent::startUserInitiatedProfiling):
1509         * inspector/PageDebuggerAgent.cpp: Added.
1510         (WebCore::PageDebuggerAgent::create):
1511         (WebCore::PageDebuggerAgent::PageDebuggerAgent):
1512         (WebCore::PageDebuggerAgent::~PageDebuggerAgent):
1513         (WebCore::PageDebuggerAgent::startListeningScriptDebugServer):
1514         (WebCore::PageDebuggerAgent::stopListeningScriptDebugServer):
1515         (WebCore::PageDebuggerAgent::scriptDebugServer):
1516         * inspector/PageDebuggerAgent.h: Added.
1517         * inspector/WorkerDebuggerAgent.cpp: Added.
1518         (WebCore::WorkerDebuggerAgent::create):
1519         (WebCore::WorkerDebuggerAgent::WorkerDebuggerAgent):
1520         (WebCore::WorkerDebuggerAgent::~WorkerDebuggerAgent):
1521         (WebCore::WorkerDebuggerAgent::startListeningScriptDebugServer):
1522         (WebCore::WorkerDebuggerAgent::stopListeningScriptDebugServer):
1523         (WebCore::WorkerDebuggerAgent::scriptDebugServer):
1524         * inspector/WorkerDebuggerAgent.h: Added.
1525
1526 2011-03-30  Alexander Pavlov  <apavlov@chromium.org>
1527
1528         Reviewed by Pavel Feldman.
1529
1530         Web Inspector: Make the getStylesForNode result "styleAttributes" value an array rather than a map
1531         https://bugs.webkit.org/show_bug.cgi?id=57440
1532
1533         * inspector/InspectorCSSAgent.cpp:
1534         (WebCore::InspectorCSSAgent::getStylesForNode):
1535         (WebCore::InspectorCSSAgent::buildArrayForAttributeStyles):
1536         * inspector/InspectorCSSAgent.h:
1537         * inspector/front-end/CSSStyleModel.js:
1538         (WebInspector.CSSStyleModel.prototype.getStylesAsync):
1539
1540 2011-03-30  Evan Martin  <evan@chromium.org>
1541
1542         Reviewed by Ryosuke Niwa.
1543
1544         Fix a last-second ASSERT in previous change that was wrong.
1545
1546         * dom/Document.cpp:
1547         (WebCore::Document::setTitle):
1548
1549 2011-03-30  Levi Weintraub  <leviw@chromium.org>
1550
1551         Reviewed by Eric Seidel.
1552
1553         RTL:  Directionality always reset on hard line break
1554         https://bugs.webkit.org/show_bug.cgi?id=23124
1555
1556         No longer clearing all BidiContexts when we hit a hard line break.
1557         Instead, directionality applied by DOM elements is preserved by
1558         reconstructing the context stack ignoring those that didn't come
1559         from the DOM.
1560
1561         Test: fast/text/international/bidi-br-as-paragraph-separator.html
1562
1563         * platform/text/BidiContext.cpp:
1564         (WebCore::BidiContext::createUncached):
1565         (WebCore::BidiContext::create):
1566         (WebCore::copyContextAndRebaselineLevel): Helper to make a copy of a context
1567         and recalculate its bidi level.
1568         (WebCore::BidiContext::copyStackRemovingUnicodeEmbeddingContexts): Returns the top of
1569         a BidiContext stack that's equivalent but without contexts from Unicode directional
1570         characters.
1571         (WebCore::operator==): Now takes into account embedding source.
1572         * platform/text/BidiContext.h:
1573         (WebCore::BidiContext::source): Enum to specify whether an embedded
1574         bidirectional control came from the DOM/Style or Unicode characters
1575         (WebCore::BidiContext::BidiContext):
1576         * platform/text/BidiResolver.h:
1577         (WebCore::BidiEmbedding::BidiEmbedding): An embedding is now a direction
1578         and a hint about where it came from so we can differentiate DOM directions
1579         from unicode direction control characters.
1580         (WebCore::BidiEmbedding::direction):
1581         (WebCore::BidiEmbedding::source):
1582         (WebCore::::embed): Now takes a source as well as a direction.
1583         (WebCore::::commitExplicitEmbedding):
1584         (WebCore::::createBidiRunsForLine):
1585         * rendering/InlineIterator.h:
1586         (WebCore::bidiNext):
1587         (WebCore::bidiFirst):
1588         * rendering/RenderBlockLineLayout.cpp:
1589         (WebCore::RenderBlock::determineStartPosition):
1590
1591 2011-03-30  Steve Block  <steveblock@google.com>
1592
1593         Reviewed by Jeremy Orlow.
1594
1595         JavaMethod should not expose JavaString in its API
1596         https://bugs.webkit.org/show_bug.cgi?id=55765
1597
1598         - Factors out a JavaMethod interface which does not use JNI types.
1599           This will allow the Java bridge to be used with objects that
1600           don't use JNI directly. The existing jobject-backed
1601           implementation is moved to a new JavaMethodJobject class which
1602           implements the interface.
1603         - Use WTF::String in place of JavaString in the API, as JavaString
1604           exposes JNI types in its interface.
1605         - Remove the method ID as it uses JNI types.
1606
1607         No new tests, refactoring only.
1608
1609         * Android.jscbindings.mk:
1610         * Android.v8bindings.mk:
1611         * GNUmakefile.am:
1612         * WebCore.gypi:
1613         * WebCore.xcodeproj/project.pbxproj:
1614         * bridge/jni/JavaMethod.h:
1615         * bridge/jni/JavaMethodJobject.cpp:
1616         (JavaMethodJobject::JavaMethodJobject):
1617         (JavaMethodJobject::~JavaMethodJobject):
1618         (appendClassName):
1619         (JavaMethodJobject::signature):
1620         * bridge/jni/JavaMethodJobject.h: Copied from Source/WebCore/bridge/jni/JavaMethod.h.
1621         (JSC::Bindings::JavaMethodJobject::name):
1622         (JSC::Bindings::JavaMethodJobject::returnTypeClassName):
1623         (JSC::Bindings::JavaMethodJobject::parameterAt):
1624         (JSC::Bindings::JavaMethodJobject::returnType):
1625         (JSC::Bindings::JavaMethodJobject::isStatic):
1626         (JSC::Bindings::JavaMethodJobject::numParameters):
1627         * bridge/jni/jsc/JavaClassJSC.cpp:
1628         (JavaClass::JavaClass):
1629         * bridge/jni/jsc/JavaInstanceJSC.cpp:
1630         (JavaInstance::invokeMethod):
1631         * bridge/jni/v8/JavaClassV8.cpp:
1632         (JavaClass::JavaClass):
1633         * bridge/jni/v8/JavaInstanceV8.cpp:
1634         (JavaInstance::invokeMethod):
1635
1636 2011-03-30  Evan Martin  <evan@chromium.org>
1637
1638         Reviewed by Ryosuke Niwa.
1639
1640         clean up Document's handling of title changes
1641         https://bugs.webkit.org/show_bug.cgi?id=57433
1642
1643         Document::setTitle has two entry points:
1644         1) from DOM bindings, like document.title="foo"
1645         2) from title tags, like <title>foo</title> in HTML
1646
1647         Split these two code paths to make the code easier to follow.
1648         Also, replace the repeated pattern of
1649             m_rawTitle = "foo"; updateTitle();
1650         with
1651             updateTitle("foo");
1652
1653         * dom/Document.cpp:
1654         (WebCore::Document::updateTitle):
1655         (WebCore::Document::setTitle):
1656         (WebCore::Document::setTitleElement):
1657         (WebCore::Document::removeTitle):
1658         * dom/Document.h:
1659         * html/HTMLTitleElement.cpp:
1660         (WebCore::HTMLTitleElement::insertedIntoDocument):
1661         (WebCore::HTMLTitleElement::childrenChanged):
1662         * svg/SVGTitleElement.cpp:
1663         (WebCore::SVGTitleElement::insertedIntoDocument):
1664         (WebCore::SVGTitleElement::childrenChanged):
1665
1666 2011-03-30  Levi Weintraub  <leviw@chromium.org>
1667
1668         Reviewed by Ryosuke Niwa.
1669
1670         BreakBlockQuoteCommand assumes all li tags have list item renderers
1671         https://bugs.webkit.org/show_bug.cgi?id=57253
1672
1673         Checking that the renderers of li nodes are actually RenderListItems
1674         before treating them as such.
1675
1676         Test: editing/execCommand/crash-breaking-blockquote-with-list.html
1677
1678         * editing/BreakBlockquoteCommand.cpp:
1679         (WebCore::BreakBlockQuoteCommand::doApply):
1680
1681 2011-03-30  Pavel Feldman  <pfeldman@chromium.org>
1682
1683         Not reviewed: fixing typo in the inspector front-end.
1684
1685         Web Inspector: REGRESSION: Broken live edit errors handling
1686         https://bugs.webkit.org/show_bug.cgi?id=57436
1687
1688         * inspector/front-end/DebuggerModel.js:
1689         (WebInspector.DebuggerModel.prototype._didEditScriptSource):
1690
1691 2011-03-30  Yael Aharon  <yael.aharon@nokia.com>
1692
1693         Reviewed by Eric Seidel.
1694
1695         Left/Right borders/padding/margins are not always added correctly when rendering multiline inline boxes with bidi elements
1696         https://bugs.webkit.org/show_bug.cgi?id=9272
1697
1698
1699         Also fixes https://bugs.webkit.org/show_bug.cgi?id=47210 and https://bugs.webkit.org/show_bug.cgi?id=8392.
1700
1701         Change how we decide if an InlineFlowBox is the last one for its renderer. Use the position of resolver's logicallyLastRun
1702         to decide if there is more text in the next line.
1703
1704         Tests: fast/borders/rtl-border-01.html
1705                fast/borders/rtl-border-02.html
1706                fast/borders/rtl-border-03.html
1707                fast/borders/rtl-border-04.html
1708                fast/borders/rtl-border-05.html
1709
1710         * rendering/InlineFlowBox.cpp:
1711         (WebCore::isAnsectorAndWithinBlock):
1712         (WebCore::InlineFlowBox::determineSpacingForFlowBoxes):
1713         * rendering/InlineFlowBox.h:
1714         * rendering/RenderBlock.h:
1715         * rendering/RenderBlockLineLayout.cpp:
1716         (WebCore::RenderBlock::constructLine):
1717         (WebCore::reachedEndOfTextRenderer):
1718         (WebCore::RenderBlock::layoutInlineChildren):
1719
1720 2011-03-29  Nikolas Zimmermann  <nzimmermann@rim.com>
1721
1722         Reviewed by Eric Seidel.
1723
1724         REGRESSION (r68976): Incorrect bidi rendering in SVG text
1725         https://bugs.webkit.org/show_bug.cgi?id=53980
1726
1727         Deconvolute SVGTextLayoutEngine code, which was confusing due to the simultaneous processing of the rendered text
1728         in visual and logical order. Added several helper methods to make the code more readable.
1729
1730         Fix Unicode directional formatting characters support, now works as expected.
1731
1732         Test: svg/text/bidi-embedded-direction.svg
1733
1734         * editing/visible_units.cpp: Refactor getLeafBoxesInLogicalOrder(), move to InlineFlowBox.
1735         (WebCore::getLogicalStartBoxAndNode): Use new collectLeafBoxesInLogicalOrder() method in InlineFlowBox.
1736         (WebCore::getLogicalEndBoxAndNode): Ditto.
1737         * rendering/InlineFlowBox.cpp: Add new helper function, that returns a list of all leaf boxes in logical order.
1738         (WebCore::InlineFlowBox::collectLeafBoxesInLogicalOrder):
1739         * rendering/InlineFlowBox.h:
1740         * rendering/svg/RenderSVGText.cpp: Actually trigger reordering the x/y/dx/dy/rotate value lists, if needed.
1741         (WebCore::RenderSVGText::RenderSVGText):
1742         (WebCore::RenderSVGText::layout):
1743         * rendering/svg/RenderSVGText.h: Ditto.
1744         (WebCore::RenderSVGText::layoutAttributes):
1745         (WebCore::RenderSVGText::needsReordering):
1746         * rendering/svg/SVGRootInlineBox.cpp: Use new InlineFlowBox::collectLeafBoxesINLogicalOrder(), with a custom "inline box reverse" implementation,
1747                                               which not only reverses the order of InlineBoxes, but also the order of the x/y/dx/dy/rotate value lists, if needed.
1748         (WebCore::SVGRootInlineBox::computePerCharacterLayoutInformation):
1749         (WebCore::SVGRootInlineBox::layoutCharactersInTextBoxes):
1750         (WebCore::swapItems):
1751         (WebCore::reverseInlineBoxRangeAndValueListsIfNeeded):
1752         (WebCore::SVGRootInlineBox::reorderValueLists):
1753         * rendering/svg/SVGRootInlineBox.h:
1754         * rendering/svg/SVGTextLayoutAttributes.cpp: Store RenderSVGInlineText* pointer, where we belong to.
1755         (WebCore::SVGTextLayoutAttributes::SVGTextLayoutAttributes):
1756         (WebCore::SVGTextLayoutAttributes::dump):
1757         * rendering/svg/SVGTextLayoutAttributes.h:
1758         (WebCore::SVGTextLayoutAttributes::context):
1759         * rendering/svg/SVGTextLayoutAttributesBuilder.cpp: Pass RenderSVGInlineText* object when creating SVGTextLayoutAttributes.
1760         (WebCore::SVGTextLayoutAttributesBuilder::buildLayoutAttributesForTextSubtree):
1761         (WebCore::SVGTextLayoutAttributesBuilder::propagateLayoutAttributes):
1762         * rendering/svg/SVGTextLayoutAttributesBuilder.h:
1763         * rendering/svg/SVGTextLayoutEngine.cpp: Rewrite & cleanup the main layout algorithm, to be less confusing.
1764         (WebCore::SVGTextLayoutEngine::SVGTextLayoutEngine):
1765         (WebCore::SVGTextLayoutEngine::updateRelativePositionAdjustmentsIfNeeded):
1766         (WebCore::SVGTextLayoutEngine::recordTextFragment):
1767         (WebCore::SVGTextLayoutEngine::currentLogicalCharacterAttributes):
1768         (WebCore::SVGTextLayoutEngine::currentLogicalCharacterMetrics):
1769         (WebCore::SVGTextLayoutEngine::currentVisualCharacterMetrics):
1770         (WebCore::SVGTextLayoutEngine::advanceToNextLogicalCharacter):
1771         (WebCore::SVGTextLayoutEngine::advanceToNextVisualCharacter):
1772         (WebCore::SVGTextLayoutEngine::layoutTextOnLineOrPath):
1773         * rendering/svg/SVGTextLayoutEngine.h:
1774
1775 2011-03-30  Ilya Tikhonovsky  <loislo@chromium.org>
1776
1777         Not reviewed trivial change.
1778
1779         Web Inspector: Remove unnecessary function arguments after r82281.
1780         https://bugs.webkit.org/show_bug.cgi?id=57327
1781
1782         * inspector/InspectorAgent.cpp:
1783         (WebCore::InspectorAgent::didCommitLoad):
1784         (WebCore::InspectorAgent::domContentLoadedEventFired):
1785         * inspector/InspectorAgent.h:
1786         * inspector/InspectorInstrumentation.cpp:
1787         (WebCore::InspectorInstrumentation::domContentLoadedEventFiredImpl):
1788         (WebCore::InspectorInstrumentation::didCommitLoadImpl):
1789
1790 2011-03-30  Kent Tamura  <tkent@chromium.org>
1791
1792         Reviewed by Ojan Vafai.
1793
1794         H1 element should have different default style if it is in HTML5 sectioning elements.
1795         https://bugs.webkit.org/show_bug.cgi?id=52693
1796
1797         Test: fast/css/h1-in-section-elements.html
1798
1799         * css/html.css: Add font-size and margin declarations to follow HTML5 specification.
1800         (:-webkit-any(article,aside,nav,section) h1):
1801         (:-webkit-any(article,aside,nav,section) :-webkit-any(article,aside,nav,section) h1):
1802         (:-webkit-any(article,aside,nav,section) :-webkit-any(article,aside,nav,section) :-webkit-any(article,aside,nav,section) h1):
1803         (:-webkit-any(article,aside,nav,section) :-webkit-any(article,aside,nav,section) :-webkit-any(article,aside,nav,section) :-webkit-any(article,aside,nav,section) h1):
1804         (:-webkit-any(article,aside,nav,section) :-webkit-any(article,aside,nav,section) :-webkit-any(article,aside,nav,section) :-webkit-any(article,aside,nav,section) :-webkit-any(article,aside,nav,section) h1):
1805
1806 2011-03-29  Beth Dakin  <bdakin@apple.com>
1807
1808         Reviewed by Maciej Stachowiak.
1809
1810         Fix for https://bugs.webkit.org/show_bug.cgi?id=57408
1811         webkit-min-device-pixel-ratio media query doesn't work post-SnowLeopard 
1812         -and corresponding-
1813         <rdar://problem/8665411>
1814
1815         * platform/mac/PlatformScreenMac.mm:
1816         (WebCore::windowScaleFactor):
1817         (WebCore::toUserSpace):
1818         (WebCore::toDeviceSpace):
1819
1820 2011-03-29  Eric Seidel  <eric@webkit.org>
1821
1822         Reviewed by Dimitri Glazkov.
1823
1824         Rename BidiResolver::eor and sor to m_eor and m_sor to match modern style
1825         https://bugs.webkit.org/show_bug.cgi?id=57369
1826
1827         I considered renaming these to m_endOfRun and m_startOfRun but decided
1828         that was too verbose for now (given how often they're used).  I suspect
1829         with a bit more refactoring we'll find they're not used very often and can be renamed
1830         if so desired.
1831
1832         * platform/text/BidiResolver.h:
1833         (WebCore::::appendRun):
1834         (WebCore::::checkDirectionInLowerRaiseEmbeddingLevel):
1835         (WebCore::::lowerExplicitEmbeddingLevel):
1836         (WebCore::::raiseExplicitEmbeddingLevel):
1837         (WebCore::::createBidiRunsForLine):
1838         * rendering/InlineIterator.h:
1839         (WebCore::InlineBidiResolver::appendRun):
1840
1841 2011-03-29  Mikhail Naganov  <mnaganov@chromium.org>
1842
1843         Reviewed by Pavel Feldman.
1844
1845         Web Inspector: [Chromium] Remove exact retained size request in detailed heap snapshots.
1846         https://bugs.webkit.org/show_bug.cgi?id=57351
1847
1848         * bindings/js/ScriptHeapSnapshot.h:
1849         * bindings/v8/ScriptHeapSnapshot.cpp:
1850         * bindings/v8/ScriptHeapSnapshot.h:
1851         * inspector/Inspector.json:
1852         * inspector/InspectorProfilerAgent.cpp:
1853         * inspector/InspectorProfilerAgent.h:
1854         * inspector/front-end/DetailedHeapshotGridNodes.js:
1855         (WebInspector.HeapSnapshotGenericObjectNode):
1856         (WebInspector.HeapSnapshotGenericObjectNode.prototype.get data):
1857         * inspector/front-end/DetailedHeapshotView.js:
1858         (WebInspector.DetailedHeapshotView.prototype._mouseClickInContainmentGrid):
1859
1860 2011-03-29  Eric Seidel  <eric@webkit.org>
1861
1862         Reviewed by Ryosuke Niwa.
1863
1864         Split more logic out from createBidiRunsForLine for readability
1865         https://bugs.webkit.org/show_bug.cgi?id=57341
1866
1867         I marked reorderRunsFromLevels inline, but it probably doesn't actually need to (or want to) be.
1868         This lops another large hunk off of reorderRunsFromLevels further reducing the size and complexity.
1869
1870         * platform/text/BidiResolver.h:
1871         (WebCore::::reorderRunsFromLevels):
1872         (WebCore::::createBidiRunsForLine):
1873
1874 2011-03-29  Kent Tamura  <tkent@chromium.org>
1875
1876         Reviewed by Dimitri Glazkov.
1877
1878         Make validation message bubble testable
1879         https://bugs.webkit.org/show_bug.cgi?id=57290
1880
1881         Introduce a setting for validation message timer so that we can configure
1882         how long we show a validation message bubble.
1883
1884         Test: fast/forms/validation-message-appearance.html
1885
1886         * html/ValidationMessage.cpp:
1887         (WebCore::ValidationMessage::setMessageDOMAndStartTimer):
1888           Don't set a timer if the timer magnification value is 0 or negative.
1889           Otherwise, hides the bubble length * magnification / 1000 seconds.
1890         * page/Settings.cpp:
1891         (WebCore::Settings::Settings): Initialize the timer magnification value.
1892         * page/Settings.h:
1893         (WebCore::Settings::setValidationMessageTimerMagnification): Added.
1894         (WebCore::Settings::validationMessageTimerMaginification): Added.
1895
1896 2011-03-29  Dimitri Glazkov  <dglazkov@chromium.org>
1897
1898         Remove the extraneous declaration I accidentally added in r82376.
1899
1900         * dom/MouseEvent.h: Removed createSimulated decl.
1901
1902 2011-03-29  James Robinson  <jamesr@chromium.org>
1903
1904         Reviewed by Kenneth Russell.
1905
1906         [chromium] Compositor crash with show-layer-borders flag
1907         https://bugs.webkit.org/show_bug.cgi?id=57292
1908
1909         Synchronize the debug border color/width with other properties to ensure the appropriate
1910         CCLayerImpl exists.  Code is only exercised with a debugging command line flag so no layout
1911         test.
1912
1913         * platform/graphics/chromium/LayerChromium.cpp:
1914         (WebCore::LayerChromium::pushPropertiesTo):
1915         (WebCore::LayerChromium::setBorderColor):
1916         (WebCore::LayerChromium::setBorderWidth):
1917         * platform/graphics/chromium/LayerChromium.h:
1918
1919 2011-03-29  Tony Gentilcore  <tonyg@chromium.org>
1920
1921         Reviewed by Adam Barth.
1922
1923         Teach the preload scanner about &lt;input type=image&gt;
1924         https://bugs.webkit.org/show_bug.cgi?id=57404
1925
1926         I did a very rough sample of the top 50 web pages to see how many of each
1927         HTML resource type they include:
1928         img src: 1,359
1929         script src: 276
1930         link href: 256
1931         iframe src: 104
1932         input src: 50
1933         embed src: 37
1934         @import: 13
1935         object data: 11
1936
1937         Based on this, it seems worthwhile to preload inputs and iframes (possibly embed).
1938         This patch only does inputs.
1939
1940         Test: fast/preloader/input.html
1941
1942         * html/parser/HTMLPreloadScanner.cpp:
1943         (WebCore::HTMLNames::PreloadTask::PreloadTask):
1944         (WebCore::HTMLNames::PreloadTask::processAttributes):
1945         (WebCore::HTMLNames::PreloadTask::inputTypeAttributeIsImage):
1946         (WebCore::HTMLNames::PreloadTask::preload):
1947
1948 2011-03-29  Luke Macpherson   <macpherson@chromium.org>
1949
1950         Reviewed by David Levin.
1951
1952         Improve the massive switch statement in CSSStyleSelector::applyProperty.
1953         https://bugs.webkit.org/show_bug.cgi?id=56288
1954
1955         No new tests are needed because no new functionality exposed.
1956
1957         * css/CSSStyleSelector.cpp:
1958         (WebCore::CSSStyleSelector::applyProperty):
1959         Asserted that cases implemented in the CSSStyleApplyProperty lookup table are unreachable.
1960         Updated comment.
1961
1962 2011-03-29  Dimitri Glazkov  <dglazkov@chromium.org>
1963
1964         Reviewed by Darin Adler.
1965
1966         Introduce SimulatedMouseEvent and teach EventDispatcher how to use it.
1967         https://bugs.webkit.org/show_bug.cgi?id=57402
1968
1969         No functional changes, covered by existing tests.
1970
1971         * dom/EventDispatcher.cpp:
1972         (WebCore::EventDispatcher::dispatchSimulatedClick): Changed to use SimulatedMouseEvent.
1973         (WebCore::EventDispatcher::dispatchMouseEvent): Combined two dispatchMouseEvent methods
1974             into one, now that simulated-click events don't need one.
1975         * dom/EventDispatcher.h: Updated decls.
1976         * dom/MouseEvent.cpp:
1977         (WebCore::SimulatedMouseEvent::create): Added.
1978         (WebCore::SimulatedMouseEvent::~SimulatedMouseEvent): Added.
1979         (WebCore::SimulatedMouseEvent::SimulatedMouseEvent): Added.
1980         * dom/MouseEvent.h: Made constructor protected.
1981
1982 2011-03-29  Anders Carlsson  <andersca@apple.com>
1983
1984         Fix build.
1985
1986         * WebCore.exp.in:
1987
1988 2011-03-29  Steve Block  <steveblock@google.com>
1989
1990         Reviewed by Jeremy Orlow.
1991
1992         JavaInstance should not use jvalue in its API
1993         https://bugs.webkit.org/show_bug.cgi?id=57019
1994
1995         This change updates JavaInstance for V8 to use JavaValue, rather than
1996         jvalue, in its API. This will allow us to create an API for
1997         JavaInstance that is independent of JNI, to allow it to be
1998         implemented on platforms that do not use JNI directly.
1999
2000         Refactoring only, no new tests.
2001
2002         * bridge/jni/v8/JavaInstanceV8.cpp:
2003         (JavaInstance::invokeMethod):
2004         (JavaInstance::getField):
2005         * bridge/jni/v8/JavaInstanceV8.h:
2006         * bridge/jni/v8/JavaNPObjectV8.cpp:
2007         (JSC::Bindings::JavaNPObjectInvoke):
2008         (JSC::Bindings::JavaNPObjectGetProperty):
2009         * bridge/jni/v8/JavaValueV8.h:
2010
2011 2011-03-29  Eric Seidel  <eric@webkit.org>
2012
2013         Reviewed by Dimitri Glazkov.
2014
2015         Rename BidiResolver::last to m_last to match modern style
2016         https://bugs.webkit.org/show_bug.cgi?id=57367
2017
2018         * platform/text/BidiResolver.h:
2019         (WebCore::::lowerExplicitEmbeddingLevel):
2020         (WebCore::::raiseExplicitEmbeddingLevel):
2021         (WebCore::::createBidiRunsForLine):
2022
2023 2011-03-29  Justin Schuh  <jschuh@chromium.org>
2024
2025         Reviewed by Maciej Stachowiak.
2026
2027         SVGComponentTransferFunctionElement should validate type
2028         https://bugs.webkit.org/show_bug.cgi?id=56960
2029
2030         Test: svg/filters/feComponentTransfer-style-crash.xhtml
2031
2032         * svg/SVGComponentTransferFunctionElement.cpp:
2033         (WebCore::SVGComponentTransferFunctionElement::svgAttributeChanged):
2034         * svg/SVGComponentTransferFunctionElement.h:
2035
2036 2011-03-29  Thomas Klausner  <tk@giga.or.at>
2037
2038         Reviewed by David Levin.
2039
2040         png-1.5 fixes
2041         https://bugs.webkit.org/show_bug.cgi?id=54406
2042
2043         Fix compilation with png-1.5: struct members were hidden, and
2044         a new API to terminate data processing was added (especially for
2045         WebKit).
2046
2047         Compilation fixes, so no new tests.
2048
2049         * platform/image-decoders/png/PNGImageDecoder.cpp:
2050         (WebCore::PNGImageDecoder::headerAvailable):
2051         (WebCore::PNGImageDecoder::rowAvailable):
2052
2053 2011-03-29  Gavin Peters  <gavinp@chromium.org>
2054
2055         Reviewed by Tony Gentilcore.
2056
2057         Add beforeload to icon and prefetch link rel types
2058         https://bugs.webkit.org/show_bug.cgi?id=56424
2059
2060         Over in https://lists.webkit.org/pipermail/webkit-dev/2011-February/016034.html , a webkit-dev
2061         thread, I've discussed my hopes for the link element, and adding the link header.  This
2062         change helps improve the link header by making it participate in the beforeload event in
2063         two more important cases.
2064
2065         Tests: fast/dom/HTMLLinkElement/prefetch-beforeload.html
2066                http/tests/misc/link-rel-icon-beforeload.html
2067                webarchive/test-link-rel-icon-beforeload.html
2068
2069         * html/HTMLLinkElement.cpp:
2070         (WebCore::HTMLLinkElement::checkBeforeLoadEvent):
2071         (WebCore::HTMLLinkElement::process):
2072         * html/HTMLLinkElement.h:
2073
2074 2011-03-29  Eric Seidel  <eric@webkit.org>
2075
2076         Reviewed by Dimitri Glazkov.
2077
2078         Rename BidiResolver::current to BidiResolver::m_current to match modern style
2079         https://bugs.webkit.org/show_bug.cgi?id=57363
2080
2081         I was very confused by current until I realized it was a member variable.
2082         I also did m_reachedEndOfLine since that was small.
2083
2084         * platform/text/BidiResolver.h:
2085         (WebCore::BidiResolver::position):
2086         (WebCore::BidiResolver::setPosition):
2087         (WebCore::BidiResolver::increment):
2088         (WebCore::::createBidiRunsForLine):
2089
2090 2011-03-29  Geoff Pike  <gpike@chromium.org>
2091
2092         Reviewed by Dimitri Glazkov.
2093
2094         In HitTestResult objects, initialize the ListHashSet<RefPtr<Node> >
2095         lazily.  In my informal testing it seems to be used hardly at all, so
2096         it's wasteful to create it eagerly.  Initializing a ListHashSet
2097         is expensive because a ListHashSet initially has space for 256
2098         elements, and that space is memset to 0.
2099
2100         This change should improve performance but have no impact on
2101         correctness.  On x86-64, for example, the change cuts the
2102         cost of HitTestResult(IntPoint()) in EventHandler::mouseMoved()
2103         from ~1700 cycles to ~300 cycles.
2104
2105         * rendering/HitTestResult.cpp:
2106         (WebCore::HitTestResult::HitTestResult): copy *m_rectBasedTestResult if m_rectBasedTestResult isn't 0
2107         (WebCore::HitTestResult::operator=): copy *m_rectBasedTestResult if m_rectBasedTestResult isn't 0
2108         (WebCore::HitTestResult::addNodeToRectBasedTestResult): use mutableRectBasedTestResult() rather than m_rectBasedTestResult
2109         (WebCore::HitTestResult::append): append *(other.m_rectBasedTestResult) if other.m_rectBasedTestResult isn't 0
2110         * rendering/HitTestResult.h:
2111         (WebCore::HitTestResult::rectBasedTestResult): Add a typedef for ListHashSet<RefPtr<Node> > to ease readability.  Change m_rectBasedTestResult from ListHashSet<RefPtr<Node> > to an OwnPtr of same.  Modify rectBasedTestResult() and add mutableRectBasedTestResult().
2112
2113 2011-03-29  Timothy Hatcher  <timothy@apple.com>
2114
2115         Update the order of the context menu to better match AppKit on Mac.
2116
2117         <rdar://problem/9054893>
2118
2119         Reviewed by John Sullivan.
2120
2121         * English.lproj/Localizable.strings: Updated.
2122         * page/ContextMenuController.cpp:
2123         (WebCore::ContextMenuController::populate): Update the order of items on Mac.
2124         * platform/LocalizationStrategy.h:
2125         * platform/LocalizedStrings.cpp:
2126         (WebCore::contextMenuItemTagLookUpInDictionary): Added argument for selected string.
2127         * platform/LocalizedStrings.h:
2128         * platform/android/LocalizedStringsAndroid.cpp:
2129         (WebCore::contextMenuItemTagLookUpInDictionary): Ditto.
2130         * platform/brew/LocalizedStringsBrew.cpp:
2131         (WebCore::contextMenuItemTagLookUpInDictionary): Ditto.
2132         * platform/efl/LocalizedStringsEfl.cpp:
2133         (WebCore::contextMenuItemTagLookUpInDictionary): Ditto.
2134         * platform/gtk/LocalizedStringsGtk.cpp:
2135         (WebCore::contextMenuItemTagLookUpInDictionary): Ditto.
2136         * platform/haiku/LocalizedStringsHaiku.cpp:
2137         (WebCore::contextMenuItemTagLookUpInDictionary): Ditto.
2138         * platform/wx/LocalizedStringsWx.cpp:
2139         (WebCore::contextMenuItemTagLookUpInDictionary): Ditto.
2140
2141 2011-03-29  Dean Jackson  <dino@apple.com>
2142
2143         Reviewed by Chris Marrin and Ken Russell.
2144
2145         https://bugs.webkit.org/show_bug.cgi?id=57248
2146         Occlusion issues with WebGL in Safari
2147
2148         The depth buffer on Safari ports was being set up with a
2149         maximum of 16 bits. Now we use a combined 24/8 depth/stencil
2150         buffer on Mac ports.
2151
2152         No new tests as this is the setting for a particular port. Other
2153         ports may use different defaults.
2154
2155         * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
2156         (WebCore::GraphicsContext3D::validateAttributes):
2157         - use Extensions3D to test for depth and multisample extensions
2158           rather than querying OpenGL directly.
2159         (WebCore::GraphicsContext3D::reshape):
2160         - use a 24bit depth buffer when the extension is enabled.
2161
2162 2011-03-29  Dimitri Glazkov  <dglazkov@chromium.org>
2163
2164         Sorted XCode project. It's gotten quite out of sorts.
2165
2166         * WebCore.xcodeproj/project.pbxproj: Ran sort-XCode-project-file.
2167
2168 2011-03-29  Emil A Eklund  <eae@chromium.org>
2169
2170         Reviewed by Dimitri Glazkov.
2171
2172         DatasetDOMStringMap::item and ::contains copies attribute name string
2173         https://bugs.webkit.org/show_bug.cgi?id=55645
2174
2175         Change propertyNameMatchesAttributeName to match without creating a copy
2176         of the string.
2177
2178         * dom/DatasetDOMStringMap.cpp:
2179         (WebCore::propertyNameMatchesAttributeName):
2180
2181 2011-03-29  Csaba Osztrogon√°c  <ossy@webkit.org>
2182
2183         Unreviewed rollout r82282, part of r82288, r82298.
2184
2185         * css/CSSParser.cpp:
2186         (WebCore::parseColorInt):
2187         (WebCore::isValidDouble):
2188         (WebCore::parseAlphaValue):
2189         (WebCore::CSSParser::parseColor):
2190
2191 2011-03-25  Brent Fulgham  <bfulgham@webkit.org>
2192
2193         Reviewed by Dave Hyatt.
2194
2195         https://bugs.webkit.org/show_bug.cgi?id=55981
2196         Second round of clean-ups, aimed at supporting GTK with the
2197         same unified FontPlatformData header.  This version removes
2198         some unneeded WinCairo code, and aligns the WinCairo and
2199         GTK ports to reduce code duplication.
2200
2201         * WebCore.vcproj/WebCore.vcproj: Get rid of a dangling reference
2202           to an old WinCairo file.
2203         * platform/graphics/FontPlatformData.h: Remove unneeded member
2204           for m_fontFace, which is a member of m_scaledFont.  Switch to
2205           standard Cairo hashing.
2206         (WebCore::FontPlatformData::FontPlatformData):
2207         (WebCore::FontPlatformData::font):
2208         (WebCore::FontPlatformData::scaledFont):
2209         (WebCore::FontPlatformData::hash):
2210         (WebCore::FontPlatformData::isHashTableDeletedValue):
2211         (WebCore::FontPlatformData::hashTableDeletedFontValue):
2212         * platform/graphics/win/FontCacheWin.cpp: Update to no longer use
2213           the unnecessary fontFace() accessor.
2214         (WebCore::FontCache::createFontPlatformData):
2215         * platform/graphics/win/FontCustomPlatformDataCairo.cpp:
2216         * platform/graphics/win/FontPlatformDataCairoWin.cpp:
2217         (WebCore::FontPlatformData::platformDataInit):
2218         (WebCore::FontPlatformData::FontPlatformData):
2219         (WebCore::FontPlatformData::~FontPlatformData):
2220         (WebCore::FontPlatformData::platformDataAssign):
2221         (WebCore::FontPlatformData::platformIsEqual):
2222         * platform/graphics/win/FontPlatformDataWin.cpp:
2223         (WebCore::FontPlatformData::FontPlatformData):
2224
2225 2011-03-29  Jian Li  <jianli@chromium.org>
2226
2227         Reviewed by Adam Barth.
2228
2229         Inline worker powered by blob URL does not work with files URL even if
2230         allowFileAccessFromFileURLs is enabled
2231         https://bugs.webkit.org/show_bug.cgi?id=56063
2232
2233         Test: fast/files/workers/inline-worker-via-blob-url.html
2234
2235         * fileapi/BlobURL.cpp: Removed unneeded getOrigin() method.
2236         * fileapi/BlobURL.h: Removed unneeded getOrigin() method.
2237         * page/SecurityOrigin.cpp:
2238         (WebCore::SecurityOrigin::SecurityOrigin): Extended the logic to handle
2239         filesystem URL also to blob URL. Also fixed the problem that m_isUnique
2240         is incorrectly set for blob and filesystem URLs.
2241         (WebCore::SecurityOrigin::create): Removed the special logic for blob URL
2242         since we use the same logic in SecurityOrigin constructor as filesystem
2243         URL.
2244         (WebCore::SecurityOrigin::canRequest): Removed the special logic for blob
2245         URL since it is not needed with the fix in SecurityOrigin constructor.
2246
2247 2011-03-29  Timothy Hatcher  <timothy@apple.com>
2248
2249         Update WebCore Localizable.strings to contain WebCore, WebKit/mac and WebKit2 strings.
2250
2251         https://webkit.org/b/57354
2252
2253         Reviewed by Sam Weinig.
2254
2255         * English.lproj/Localizable.strings: Updated.
2256         * StringsNotToBeLocalized.txt: Removed. To hard to maintain in WebCore.
2257         * platform/network/cf/LoaderRunLoopCF.h: Remove a single quote in an #error so
2258         extract-localizable-strings does not complain about unbalanced single quotes.
2259
2260 2011-03-29  Sheriff Bot  <webkit.review.bot@gmail.com>
2261
2262         Unreviewed, rolling out r82295 and r82300.
2263         http://trac.webkit.org/changeset/82295
2264         http://trac.webkit.org/changeset/82300
2265         https://bugs.webkit.org/show_bug.cgi?id=57380
2266
2267         This patch breaks compile on Chromium (Requested by
2268         abarth|gardener on #webkit).
2269
2270         * accessibility/AccessibilityObject.h:
2271         * accessibility/AccessibilityRenderObject.cpp:
2272         (WebCore::AccessibilityRenderObject::determineAccessibilityRole):
2273         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
2274         (atkRole):
2275         (webkit_accessible_get_role):
2276         * accessibility/mac/AccessibilityObjectWrapper.mm:
2277
2278 2011-03-29  Anders Carlsson  <andersca@apple.com>
2279
2280         Fix clang build.
2281
2282         * platform/text/BidiResolver.h:
2283         (WebCore::::createBidiRunsForLine):
2284
2285 2011-03-29  Steve Falkenburg  <sfalken@apple.com>
2286
2287         Reviewed by Adam Roben.
2288
2289         Use per-configuration vsprops in WebCore to avoid WebKitVSPropsRedirectionDir removal by MSVC IDE
2290         https://bugs.webkit.org/show_bug.cgi?id=57378
2291
2292         Visual Studio's IDE was removing instances of $(WebKitVSPropsRedirectionDir) from
2293         InheritedPropertySheet rules in our vcproj files when the vcproj was edited from within
2294         the IDE. To avoid this, add a separate vsprops file for each project configuration that
2295         contains the required inherited property sheets.
2296
2297         * WebCore.vcproj/QTMovieWin.vcproj:
2298         * WebCore.vcproj/QTMovieWinDebug.vsprops: Added.
2299         * WebCore.vcproj/QTMovieWinDebugAll.vsprops: Added.
2300         * WebCore.vcproj/QTMovieWinDebugCairoCFLite.vsprops: Added.
2301         * WebCore.vcproj/QTMovieWinRelease.vsprops: Added.
2302         * WebCore.vcproj/QTMovieWinReleaseCairoCFLite.vsprops: Added.
2303         * WebCore.vcproj/QTMovieWinReleaseLTCG.vsprops: Added.
2304         * WebCore.vcproj/WebCore.vcproj:
2305         * WebCore.vcproj/WebCoreDebug.vsprops: Added.
2306         * WebCore.vcproj/WebCoreDebugAll.vsprops: Added.
2307         * WebCore.vcproj/WebCoreDebugCairoCFLite.vsprops: Added.
2308         * WebCore.vcproj/WebCoreRelease.vsprops: Added.
2309         * WebCore.vcproj/WebCoreReleaseCairoCFLite.vsprops: Added.
2310         * WebCore.vcproj/WebCoreReleaseLTCG.vsprops: Added.
2311
2312 2011-03-29  David Hyatt  <hyatt@apple.com>
2313
2314         Reviewed by Simon Fraser.
2315
2316         <rdar://problem/9194927> REGRESSION (r81691): Page at www.mondaynote.com lays out incorrectly
2317         
2318         Back out the optimization that stopped when it hit the first float. This was an incorrect optimization
2319         and can't be done without more work.
2320
2321         Added fast/block/float/float-forced-below-other-floats.html
2322
2323         * rendering/RenderBlock.cpp:
2324         (WebCore::RenderBlock::logicalLeftOffsetForLine):
2325         (WebCore::RenderBlock::logicalRightOffsetForLine):
2326
2327 2011-03-29  Eric Seidel  <eric@webkit.org>
2328
2329         Reviewed by Ryosuke Niwa.
2330
2331         Start to clean up BidiResolver::createBidiRunsForLine so that mere mortals can understand it
2332         https://bugs.webkit.org/show_bug.cgi?id=57338
2333
2334         I'm attempting to break createBidiRunsForLine into understandable pieces
2335         so that we can tell what it's actually doing.  Our implementation of the
2336         unicode bidi algorithm is slightly different from the spec in that we
2337         run it per-line (instead of over the entire paragraph at once).  This is
2338         great for performance (our implementation is resumable), but it makes
2339         things a bit tricky to understand.  Splitting createBidiRunsForLine into
2340         pieces should help make our UBA implementation more readable.
2341
2342         * platform/text/BidiResolver.h:
2343         (WebCore::::updateStatusLastFromCurrentDirection):
2344         (WebCore::::createBidiRunsForLine):
2345
2346 2011-03-29  Mario Sanchez Prada  <msanchez@igalia.com>
2347
2348         Reviewed by Martin Robinson.
2349
2350         [Gtk] Consistent crash from Google/ARIA combobox click
2351         https://bugs.webkit.org/show_bug.cgi?id=55883
2352
2353         Do not call to firstChild() to avoid entering into infinite loops.
2354
2355         This would happen when current item is a WebCore Group and some of
2356         its children have either role 'option' or 'menuitem'. Other than
2357         that the logic behind that call to firstChild() seems to be no
2358         longer needed so it's safe to remove it.
2359
2360         Test: platform/gtk/accessibility/aria-options-and-menuitems-crash.html
2361
2362         * accessibility/gtk/AccessibilityObjectAtk.cpp:
2363         (WebCore::AccessibilityObject::accessibilityPlatformIncludesObject):
2364         Remove call to firsChild, which was leading to crashes sometimes.
2365
2366 2011-03-29  Mario Sanchez Prada  <msanchez@igalia.com>
2367
2368         Reviewed by Chris Fleizach.
2369
2370         AX: GTK: ARIA role is not respected on <p> <label> <div> and <form>
2371         https://bugs.webkit.org/show_bug.cgi?id=47636
2372
2373         Define new roles in WebCore and map them to ATK accordingly.
2374
2375         Test: platform/gtk/accessibility/aria-roles-unignored.html
2376
2377         * accessibility/AccessibilityObject.h: Added new roles to
2378         represent paragraphs, labels, forms and div sections.
2379         * accessibility/AccessibilityRenderObject.cpp:
2380         (WebCore::AccessibilityRenderObject::determineAccessibilityRole):
2381         Return ParagraphRole, LabelRole, FormRole and DivRole when needed.
2382         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
2383         (atkRole): Map new WebCore roles to ATK Roles.
2384         (webkit_accessible_get_role): Remove code to define roles for
2385         paragraphs, labels, forms and divs based on node's tag name.
2386
2387         Update mappings for the Mac platform.
2388
2389         * accessibility/mac/AccessibilityObjectWrapper.mm:
2390         (createAccessibilityRoleMap): Add explicit mappings from the new
2391         roles introduced to NSAccessibilityGroupRole.
2392
2393 2011-03-29  Philippe Normand  <pnormand@igalia.com>
2394
2395         Unreviewed build fix. Remove ASSERT hitting consitently on GTK.
2396
2397         * rendering/InlineIterator.h:
2398         (WebCore::InlineIterator::moveToStartOf):
2399
2400 2011-03-29  Darin Adler  <darin@apple.com>
2401
2402         Fix some just-introduced build failures.
2403
2404         * WebCore.pro: Correct spelling of filename.
2405
2406         * css/CSSParser.cpp:
2407         (WebCore::parseColorIntOrPercentage): Fix double/int conversion that fails to compile
2408         on Leopard. Also renamed one local variabel.
2409
2410         * inspector/InspectorAgent.cpp:
2411         (WebCore::InspectorAgent::didCommitLoad): Removed unused argument names to avoid warning.
2412         (WebCore::InspectorAgent::domContentLoadedEventFired): Ditto.
2413
2414 2011-03-29  Andras Becsi  <abecsi@webkit.org>
2415
2416         Reviewed by Darin Adler.
2417
2418         CSS: Slow parsing of rgb() with percent values
2419         https://bugs.webkit.org/show_bug.cgi?id=16708
2420
2421         Implement fast-path parsing for percentage color values.
2422
2423         Gain ~30% speedup on http://canvex.lazyilluminati.com/misc/3d.html.
2424
2425         * css/CSSParser.cpp:
2426         (WebCore::checkForValidDouble): Extend to return the number of characters forming a valid double.
2427         (WebCore::parseDouble): Function for parsing double values if they are valid.
2428         (WebCore::parseColorIntOrPercentage): Extend parseColorInt to deal with percentage values.
2429         (WebCore::parseAlphaValue): Use the new functions.
2430         (WebCore::CSSParser::parseColor): Ditto.
2431
2432 2011-03-29  Ilya Tikhonovsky  <loislo@chromium.org>
2433
2434         Reviewed by Pavel Feldman.
2435
2436         Web Inspector: extract InspectorPageAgent from InspectorAgent.
2437         https://bugs.webkit.org/show_bug.cgi?id=57327
2438
2439         There are page related methods and inspector related methods in InspectorAgent.
2440         It would be nice to extract page specific methods for future usage the rest of methods in workers debugger.
2441
2442         * GNUmakefile.am:
2443         * WebCore.gypi:
2444         * inspector/CodeGeneratorInspector.pm:
2445         * inspector/Inspector.json:
2446         * inspector/InspectorAgent.cpp:
2447         (WebCore::InspectorAgent::InspectorAgent):
2448         (WebCore::InspectorAgent::restoreInspectorStateFromCookie):
2449         (WebCore::InspectorAgent::didClearWindowObjectInWorld):
2450         (WebCore::InspectorAgent::setFrontend):
2451         (WebCore::InspectorAgent::disconnectFrontend):
2452         (WebCore::InspectorAgent::didCommitLoad):
2453         (WebCore::InspectorAgent::domContentLoadedEventFired):
2454         * inspector/InspectorAgent.h:
2455         (WebCore::InspectorAgent::pageAgent):
2456         * inspector/InspectorPageAgent.cpp: Added.
2457         (WebCore::InspectorPageAgent::create):
2458         (WebCore::InspectorPageAgent::InspectorPageAgent):
2459         (WebCore::InspectorPageAgent::setFrontend):
2460         (WebCore::InspectorPageAgent::clearFrontend):
2461         (WebCore::InspectorPageAgent::addScriptToEvaluateOnLoad):
2462         (WebCore::InspectorPageAgent::removeAllScriptsToEvaluateOnLoad):
2463         (WebCore::InspectorPageAgent::reloadPage):
2464         (WebCore::InspectorPageAgent::openInInspectedWindow):
2465         (WebCore::InspectorPageAgent::setUserAgentOverride):
2466         (WebCore::buildObjectForCookie):
2467         (WebCore::buildArrayForCookies):
2468         (WebCore::InspectorPageAgent::getCookies):
2469         (WebCore::InspectorPageAgent::deleteCookie):
2470         (WebCore::InspectorPageAgent::inspectedURLChanged):
2471         (WebCore::InspectorPageAgent::restore):
2472         (WebCore::InspectorPageAgent::didCommitLoad):
2473         (WebCore::InspectorPageAgent::domContentEventFired):
2474         (WebCore::InspectorPageAgent::loadEventFired):
2475         (WebCore::InspectorPageAgent::didClearWindowObjectInWorld):
2476         (WebCore::InspectorPageAgent::applyUserAgentOverride):
2477         * inspector/InspectorPageAgent.h: Added.
2478         * inspector/InspectorController.cpp:
2479         (WebCore::InspectorController::connectFrontend):
2480         * inspector/InspectorInstrumentation.cpp:
2481         (WebCore::InspectorInstrumentation::didClearWindowObjectInWorldImpl):
2482         (WebCore::InspectorInstrumentation::applyUserAgentOverrideImpl):
2483         (WebCore::InspectorInstrumentation::domContentLoadedEventFiredImpl):
2484         (WebCore::InspectorInstrumentation::loadEventFiredImpl):
2485         (WebCore::InspectorInstrumentation::didCommitLoadImpl):
2486         (WebCore::InspectorInstrumentation::retrievePageAgent):
2487         * inspector/InspectorInstrumentation.h:
2488         * inspector/InstrumentingAgents.h:
2489         (WebCore::InstrumentingAgents::InstrumentingAgents):
2490         (WebCore::InstrumentingAgents::inspectorPageAgent):
2491         (WebCore::InstrumentingAgents::setInspectorPageAgent):
2492         * inspector/front-end/AuditsPanel.js:
2493         (WebInspector.AuditsPanel.prototype._reloadResources):
2494         * inspector/front-end/CookieItemsView.js:
2495         (WebInspector.CookieItemsView.prototype._deleteCookie):
2496         (WebInspector.Cookies.getCookiesAsync):
2497         * inspector/front-end/ExtensionServer.js:
2498         (WebInspector.ExtensionServer.prototype._onReload):
2499         * inspector/front-end/NetworkPanel.js:
2500         (WebInspector.NetworkDataGridNode.prototype._openInNewTab):
2501         * inspector/front-end/ResourcesPanel.js:
2502         (WebInspector.FrameResourceTreeElement.prototype.ondblclick):
2503         * inspector/front-end/WorkersSidebarPane.js:
2504         (WebInspector.WorkersSidebarPane.prototype.setInstrumentation):
2505         * inspector/front-end/inspector.js:
2506         (WebInspector.openResource):
2507         (WebInspector.documentKeyDown):
2508
2509 2011-03-29  David Hyatt  <hyatt@apple.com>
2510
2511         Reviewed by Darin Adler.
2512
2513         https://bugs.webkit.org/show_bug.cgi?id=57276
2514         
2515         Add optimizations to make the vertical placement of boxes much faster. Whenever a box is added
2516         to a line, compare it with the parent box. If we can determine that the child box has the exact
2517         same height and baseline position as the parent box, then we keep a boolean flag set called
2518         descendantsHaveSameLineHeightAndBaseline(). If the box is different for any reason then we clear the
2519         flag up the line box parent chain.
2520
2521         When it comes time to do computeLogicalboxHeights, we can avoid recurring into the children of
2522         a box whose descendants all have the same position. When we do placeBoxesInBlockDirection, we
2523         can do a simplified recursion that just calls adjustBlockDirectionPosition to offset the boxes
2524         without doing anything else.
2525         
2526         Because of the quirks mode rule of only shrinking boxes with no immediate text children, we need
2527         to track whether a box has text descendants now as well.  When we avoid doing the recursion
2528         this flag tells us whether the collection of boxes should have an effect on the ascent and descent
2529         of the line in quirks mode.
2530  
2531         * rendering/InlineFlowBox.cpp:
2532         (WebCore::InlineFlowBox::addToLine):
2533         (WebCore::InlineFlowBox::computeLogicalBoxHeights):
2534         (WebCore::InlineFlowBox::placeBoxesInBlockDirection):
2535         (WebCore::InlineFlowBox::nodeAtPoint):
2536         (WebCore::InlineFlowBox::paintBoxDecorations):
2537         (WebCore::InlineFlowBox::paintMask):
2538         * rendering/InlineFlowBox.h:
2539         (WebCore::InlineFlowBox::InlineFlowBox):
2540         (WebCore::InlineFlowBox::hasTextDescendants):
2541         (WebCore::InlineFlowBox::descendantsHaveSameLineHeightAndBaseline):
2542         (WebCore::InlineFlowBox::clearDescendantsHaveSameLineHeightAndBaseline):
2543         * rendering/RenderBlock.h:
2544         * rendering/RenderBlockLineLayout.cpp:
2545         (WebCore::RenderBlock::createLineBoxes):
2546         (WebCore::RenderBlock::constructLine):
2547         (WebCore::RenderBlock::computeInlineDirectionPositionsForLine):
2548
2549 2011-03-29  Eric Seidel  <eric@webkit.org>
2550
2551         Reviewed by Ryosuke Niwa.
2552
2553         Remove a bunch of duplicate code by adding some InlineIterator helper methods
2554         https://bugs.webkit.org/show_bug.cgi?id=57326
2555
2556         Once I started adding these it became clear how much crazy duplicated code
2557         we had due to treating InlineIterator as a struct and accessing its
2558         members directly.  We can't quite make the members private yet since
2559         findNextLineBreak still splits out the members.  But this change
2560         makes the code much cleaner.
2561
2562         * rendering/InlineIterator.h:
2563         (WebCore::InlineIterator::clear):
2564         (WebCore::InlineIterator::moveToStartOf):i
2565         (WebCore::InlineIterator::moveTo):
2566         (WebCore::InlineIterator::increment):
2567         * rendering/RenderBlockLineLayout.cpp:
2568         (WebCore::tryHyphenating):
2569         (WebCore::RenderBlock::findNextLineBreak):
2570
2571 2011-03-29  Eric Seidel  <eric@webkit.org>
2572
2573         Reviewed by Ryosuke Niwa.
2574
2575         Clean up bidiNext by abstracting repeated code
2576         https://bugs.webkit.org/show_bug.cgi?id=57335
2577
2578         I also added a comment to explain what bidiNext is actually doing.
2579         This whole area of code is confusing but need not be.
2580
2581         * rendering/InlineIterator.h:
2582         (WebCore::embedCharFromDirection):
2583         (WebCore::notifyResolverEnteredObject):
2584         (WebCore::notifyResolverWillExitObject):
2585         (WebCore::bidiNext):
2586         (WebCore::bidiFirst):
2587
2588 2011-03-29  Alexander Pavlov  <apavlov@chromium.org>
2589
2590         Reviewed by Yury Semikhatsky.
2591
2592         Web Inspector: Support external CSS stylesheet freeflow text editing
2593         https://bugs.webkit.org/show_bug.cgi?id=54397
2594
2595         In this implementation, Ctrl/Cmd-S commits the current changes into the model.
2596
2597         * inspector/front-end/ResourceView.js:
2598         (WebInspector.ResourceView.createResourceView):
2599         (WebInspector.CSSSourceFrameDelegateForResourcesPanel):
2600         (WebInspector.CSSSourceFrameDelegateForResourcesPanel.prototype.canEditScriptSource):
2601         (WebInspector.CSSSourceFrameDelegateForResourcesPanel.prototype.editScriptSource):
2602         (WebInspector.CSSSourceFrameDelegateForResourcesPanel.prototype.editScriptSource.handleInfos):
2603         (WebInspector.CSSSourceFrameDelegateForResourcesPanel.prototype._saveStyleSheet):
2604         * inspector/front-end/ResourcesPanel.js:
2605         (WebInspector.ResourcesPanel.prototype._applyDiffMarkup):
2606         (WebInspector.FrameResourceTreeElement.prototype._contentChanged):
2607         * inspector/front-end/SourceFrame.js:
2608         (WebInspector.SourceFrame.prototype._createTextViewer):
2609
2610 2011-03-29  Eric Carlson  <eric.carlson@apple.com>
2611
2612         Reviewed by Dan Bernstein.
2613
2614         playbackRate should not be set to defaultPlaybackRate in play()
2615         https://bugs.webkit.org/show_bug.cgi?id=55943
2616
2617         Test: media/video-playbackrate.html
2618
2619         * html/HTMLMediaElement.cpp:
2620         (WebCore::HTMLMediaElement::playbackRate): No need to ask the media engine for the current
2621             rate, we already have the current value cached.
2622         (WebCore::HTMLMediaElement::playInternal): Don't reset the engine's playback rate to 
2623             the default rate.
2624         (WebCore::HTMLMediaElement::togglePlayState): Do reset the engine's playback rate to 
2625             the default rate before triggering playback.
2626         * manual-tests/media-default-playback-rate.html: Added.
2627
2628 2011-03-28  Dimitri Glazkov  <dglazkov@chromium.org>
2629
2630         Reviewed by Eric Seidel.
2631
2632         Remove specialization of EventDispatcher with inversion of control.
2633         https://bugs.webkit.org/show_bug.cgi?id=57285
2634
2635         Since some events have extra logic around their dispatch, allow them
2636         to dispatch themselves and specialize the logic. This change only
2637         converts KeyboardEvent to this model.
2638
2639         No functional change, covered by existing tests.
2640
2641         * dom/Event.cpp:
2642         (WebCore::Event::dispatch): Added.
2643         * dom/Event.h: Updated decls.
2644         * dom/EventDispatcher.cpp:
2645         (WebCore::EventDispatcher::dispatchEvent): Changed to ask event to dispatch
2646             itself.
2647         * dom/EventDispatcher.h: Updated decls.
2648         * dom/KeyboardEvent.cpp:
2649         (WebCore::KeyboardEvent::dispatch): Added, moving code from EventDispatcher.
2650         * dom/KeyboardEvent.h: Updated decls.
2651         * dom/Node.cpp:
2652         (WebCore::Node::dispatchKeyEvent): Changed to use the new ways.
2653
2654 2011-03-29  Ilya Tikhonovsky  <loislo@chromium.org>
2655
2656         Reviewed by Yury Semikhatsky.
2657
2658         Web Inspector: InspectorDOMAgent has unnecessary dependency from InspectorAgent.
2659         https://bugs.webkit.org/show_bug.cgi?id=57329
2660
2661         * inspector/InspectorAgent.cpp:
2662         (WebCore::InspectorAgent::InspectorAgent):
2663         (WebCore::InspectorAgent::setFrontend):
2664         * inspector/InspectorAgent.h:
2665         * inspector/InspectorController.cpp:
2666         (WebCore::InspectorController::inspect):
2667         * inspector/InspectorDOMAgent.cpp:
2668         (WebCore::InspectorDOMAgent::InspectorDOMAgent):
2669         (WebCore::InspectorDOMAgent::setFrontend):
2670         (WebCore::InspectorDOMAgent::handleMousePress):
2671         (WebCore::InspectorDOMAgent::inspect):
2672         (WebCore::InspectorDOMAgent::focusNode):
2673         (WebCore::InspectorDOMAgent::highlight):
2674         (WebCore::InspectorDOMAgent::hideHighlight):
2675         * inspector/InspectorDOMAgent.h:
2676         (WebCore::InspectorDOMAgent::create):
2677
2678 2011-03-29  Eric Seidel  <eric@webkit.org>
2679
2680         Reviewed by Nikolas Zimmermann.
2681
2682         Rename InlineIterator::pos to m_pos to match modern style
2683         https://bugs.webkit.org/show_bug.cgi?id=57342
2684
2685         Somehow I failed to upload this one earlier, no wonder later patches didn't apply.
2686
2687         * rendering/InlineIterator.h:
2688         (WebCore::InlineIterator::InlineIterator):
2689         (WebCore::operator==):
2690         (WebCore::operator!=):
2691         (WebCore::InlineIterator::increment):
2692         (WebCore::InlineIterator::current):
2693         (WebCore::InlineBidiResolver::appendRun):
2694         * rendering/RenderBlockLineLayout.cpp:
2695         (WebCore::checkMidpoints):
2696         (WebCore::RenderBlock::appendRunsForObject):
2697         (WebCore::RenderBlock::layoutInlineChildren):
2698         (WebCore::RenderBlock::matchedEndLine):
2699         (WebCore::tryHyphenating):
2700         (WebCore::RenderBlock::findNextLineBreak):
2701
2702 2011-03-29  Pavel Feldman  <pfeldman@chromium.org>
2703
2704         Reviewed by Yury Semikhatsky.
2705
2706         Web Inspector: document BrowserDebugger agent.
2707         https://bugs.webkit.org/show_bug.cgi?id=57331
2708
2709         * inspector/Inspector.json:
2710
2711 2011-03-29  Alexander Pavlov  <apavlov@chromium.org>
2712
2713         Reviewed by Pavel Feldman.
2714
2715         Web Inspector: Fix handling of the CSSAgent.setStyleSheetText() results in CSSStyleModel.js
2716         https://bugs.webkit.org/show_bug.cgi?id=56310
2717
2718         Instead of stylesheet ids, CSSAgent.getAllStyleSheets() now returns metainfo objects containing
2719         "styleSheetId", "sourceURL", "disabled", and "title" fields. The latter three are not returned
2720         by CSSAgent.getStyleSheet() anymore.
2721
2722         Test: inspector/styles/get-set-stylesheet-text.html
2723
2724         * inspector/Inspector.json:
2725         * inspector/InspectorCSSAgent.cpp:
2726         (WebCore::InspectorCSSAgent::getAllStyleSheets):
2727         * inspector/InspectorCSSAgent.h:
2728         * inspector/InspectorStyleSheet.cpp:
2729         (WebCore::InspectorStyleSheet::buildObjectForStyleSheet):
2730         (WebCore::InspectorStyleSheet::buildObjectForStyleSheetInfo):
2731         * inspector/InspectorStyleSheet.h:
2732         * inspector/front-end/AuditRules.js:
2733         (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.styleSheetCallback):
2734         (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.allStylesCallback):
2735         (WebInspector.AuditRules.UnusedCssRule.prototype.doRun):
2736         * inspector/front-end/CSSStyleModel.js:
2737         (WebInspector.CSSStyleModel.prototype._styleSheetChanged.callback):
2738         (WebInspector.CSSStyleModel.prototype._styleSheetChanged):
2739         (WebInspector.CSSStyleModel.prototype._onRevert):
2740         (WebInspector.CSSStyleSheet):
2741         (WebInspector.CSSStyleSheet.prototype.setText):
2742
2743 2011-03-29  Jeremy Moskovich  <jeremy@chromium.org>
2744
2745         Reviewed by Eric Seidel.
2746
2747         Implement text-align:match-parent as -webkit-match-parent.
2748         https://bugs.webkit.org/show_bug.cgi?id=50951
2749
2750         Add support to the CSS parser.
2751
2752         Tests: fast/css/text-align-webkit-match-parent-parse.html
2753                fast/css/text-align-webkit-match-parent.html
2754
2755         * css/CSSParser.cpp:
2756         (WebCore::CSSParser::parseValue):
2757         * css/CSSStyleSelector.cpp:
2758         (WebCore::CSSStyleSelector::applyProperty):
2759         * css/CSSValueKeywords.in:
2760
2761 2011-03-29  Eric Seidel  <eric@webkit.org>
2762
2763         Reviewed by Ryosuke Niwa.
2764
2765         Rename InlineIterator::nextBreakablePosition to m_nextBreakablePosition to match modern style
2766         https://bugs.webkit.org/show_bug.cgi?id=57323
2767
2768         All of these m_nextBreakablePosition = -1 could probably be replaced with
2769         some new methods.  But I'll do that in a separate change.  Clearly
2770         m_nextBreakablePosition is just a cached value which should be cleared
2771         at the right times.  I suspect we may even fail to clear it sometimes when
2772         we should due to the current used of direct access instead of smarter functions.
2773
2774         * rendering/InlineIterator.h:
2775         (WebCore::InlineIterator::InlineIterator):
2776         (WebCore::InlineIterator::increment):
2777         * rendering/RenderBlockLineLayout.cpp:
2778         (WebCore::tryHyphenating):
2779         (WebCore::RenderBlock::findNextLineBreak):
2780
2781 2011-03-29  Jeff Miller  <jeffm@apple.com>
2782
2783         Reviewed by Jon Honeycutt.
2784
2785         Add WebCore::copyCertificateToData() on Windows
2786         https://bugs.webkit.org/show_bug.cgi?id=57296
2787
2788         Create a new win directory in platform/cf and add CertificateCFWin.cpp and CertificateCFWin.h to it.
2789
2790         * WebCore.vcproj/WebCore.vcproj: Added CertificateCFWin.cpp and CertificateCFWin.h.
2791         * WebCore.vcproj/copyForwardingHeaders.cmd: Copy all header files in \platform\cf\win\.
2792         * platform/cf/win: Added.
2793         * platform/cf/win/CertificateCFWin.cpp: Added.
2794         (WebCore::deallocCertContext): Added.
2795         (WebCore::createCertContextDeallocator): Added.
2796         (WebCore::copyCertificateToData): Added.
2797         * platform/cf/win/CertificateCFWin.h: Added.
2798
2799 2011-03-29  Eric Seidel  <eric@webkit.org>
2800
2801         Reviewed by Ryosuke Niwa.
2802
2803         Rename InlineIterator::block to m_block to match modern style
2804         https://bugs.webkit.org/show_bug.cgi?id=57321
2805
2806         I could have made m_block private, since it's only accessed in
2807         one place outside of InlineIterator (for an ASSERT).  But I chose
2808         not to do so in this change.
2809
2810         * rendering/InlineIterator.h:
2811         (WebCore::InlineIterator::InlineIterator):
2812         (WebCore::InlineIterator::increment):
2813         (WebCore::InlineBidiResolver::appendRun):
2814         * rendering/RenderBlockLineLayout.cpp:
2815         (WebCore::RenderBlock::findNextLineBreak):
2816
2817 2011-03-29  Leo Yang  <leo.yang@torchmobile.com.cn>
2818
2819         Reviewed by Nikolas Zimmermann.
2820
2821         Incorrect offset of svg <use> element which is in <symbol> element
2822         https://bugs.webkit.org/show_bug.cgi?id=57318
2823
2824         When webkit expanded a svg <symbol> element in the shadow tree it
2825         would clone the children of the <symbol>. The children may contain
2826         SVGShadowTreeContainerElement which was expanded from svg <use>
2827         element. But the clone operation would clone a
2828         SVGShadowTreeContainerElement as a svg <g> element. This resulted
2829         that updateContainerOffset wouldn't update offset for those elements
2830         which were expand from <use> elements.
2831
2832         This patch implements cloneElementWithoutAttributesAndChildren for
2833         SVGShadowTreeContainerElement to make the container clone itself
2834         correctly.
2835
2836         Test: svg/custom/use-in-symbol-with-offset.svg
2837
2838         * rendering/svg/SVGShadowTreeElements.cpp:
2839         (WebCore::SVGShadowTreeContainerElement::cloneElementWithoutAttributesAndChildren):
2840         * rendering/svg/SVGShadowTreeElements.h:
2841
2842 2011-03-29  Eric Seidel  <eric@webkit.org>
2843
2844         Reviewed by Ryosuke Niwa.
2845
2846         Rename InlineIterator::obj to m_obj to match modern style
2847         https://bugs.webkit.org/show_bug.cgi?id=57319
2848
2849         I started this rename after confusion in InlineBidiResolver::appendRun.
2850         (Which uses an "obj" local in InlineIterator.h.  It's not actually
2851         masking m_obj because it's a separate class, but I didn't realize
2852         that at the time because it's in InlineIterator.h which is itself confusing!)
2853
2854         * rendering/InlineIterator.h:
2855         (WebCore::InlineIterator::InlineIterator):
2856         (WebCore::operator==):
2857         (WebCore::operator!=):
2858         (WebCore::InlineIterator::increment):
2859         (WebCore::InlineIterator::atEnd):
2860         (WebCore::InlineIterator::current):
2861         (WebCore::InlineIterator::direction):
2862         (WebCore::InlineBidiResolver::appendRun):
2863         * rendering/RenderBlockLineLayout.cpp:
2864         (WebCore::checkMidpoints):
2865         (WebCore::RenderBlock::appendRunsForObject):
2866         (WebCore::RenderBlock::layoutInlineChildren):
2867         (WebCore::RenderBlock::matchedEndLine):
2868         (WebCore::skipNonBreakingSpace):
2869         (WebCore::RenderBlock::requiresLineBox):
2870         (WebCore::RenderBlock::skipTrailingWhitespace):
2871         (WebCore::RenderBlock::skipLeadingWhitespace):
2872         (WebCore::tryHyphenating):
2873         (WebCore::RenderBlock::findNextLineBreak):
2874
2875 2011-03-29  Pavel Feldman  <pfeldman@chromium.org>
2876
2877         Reviewed by Yury Semikhatsky.
2878
2879         Web Inspector: document Timeline domain, make timeline event types of type string.
2880         https://bugs.webkit.org/show_bug.cgi?id=57299
2881
2882         * inspector/Inspector.json:
2883         * inspector/InspectorTimelineAgent.cpp:
2884         (WebCore::InspectorTimelineAgent::pushGCEventRecords):
2885         (WebCore::InspectorTimelineAgent::start):
2886         (WebCore::InspectorTimelineAgent::stop):
2887         (WebCore::InspectorTimelineAgent::willCallFunction):
2888         (WebCore::InspectorTimelineAgent::didCallFunction):
2889         (WebCore::InspectorTimelineAgent::willDispatchEvent):
2890         (WebCore::InspectorTimelineAgent::didDispatchEvent):
2891         (WebCore::InspectorTimelineAgent::willLayout):
2892         (WebCore::InspectorTimelineAgent::didLayout):
2893         (WebCore::InspectorTimelineAgent::willRecalculateStyle):
2894         (WebCore::InspectorTimelineAgent::didRecalculateStyle):
2895         (WebCore::InspectorTimelineAgent::willPaint):
2896         (WebCore::InspectorTimelineAgent::didPaint):
2897         (WebCore::InspectorTimelineAgent::willWriteHTML):
2898         (WebCore::InspectorTimelineAgent::didWriteHTML):
2899         (WebCore::InspectorTimelineAgent::didInstallTimer):
2900         (WebCore::InspectorTimelineAgent::didRemoveTimer):
2901         (WebCore::InspectorTimelineAgent::willFireTimer):
2902         (WebCore::InspectorTimelineAgent::didFireTimer):
2903         (WebCore::InspectorTimelineAgent::willChangeXHRReadyState):
2904         (WebCore::InspectorTimelineAgent::didChangeXHRReadyState):
2905         (WebCore::InspectorTimelineAgent::willLoadXHR):
2906         (WebCore::InspectorTimelineAgent::didLoadXHR):
2907         (WebCore::InspectorTimelineAgent::willEvaluateScript):
2908         (WebCore::InspectorTimelineAgent::didEvaluateScript):
2909         (WebCore::InspectorTimelineAgent::didScheduleResourceRequest):
2910         (WebCore::InspectorTimelineAgent::willSendResourceRequest):
2911         (WebCore::InspectorTimelineAgent::willReceiveResourceData):
2912         (WebCore::InspectorTimelineAgent::didReceiveResourceData):
2913         (WebCore::InspectorTimelineAgent::willReceiveResourceResponse):
2914         (WebCore::InspectorTimelineAgent::didReceiveResourceResponse):
2915         (WebCore::InspectorTimelineAgent::didFinishLoadingResource):
2916         (WebCore::InspectorTimelineAgent::didMarkTimeline):
2917         (WebCore::InspectorTimelineAgent::didMarkDOMContentEvent):
2918         (WebCore::InspectorTimelineAgent::didMarkLoadEvent):
2919         (WebCore::InspectorTimelineAgent::addRecordToTimeline):
2920         (WebCore::InspectorTimelineAgent::didCompleteCurrentRecord):
2921         (WebCore::InspectorTimelineAgent::pushCurrentRecord):
2922         * inspector/InspectorTimelineAgent.h:
2923         (WebCore::InspectorTimelineAgent::TimelineRecordEntry::TimelineRecordEntry):
2924         * inspector/front-end/TimelineAgent.js:
2925         * inspector/front-end/TimelinePanel.js:
2926         (WebInspector.TimelinePanel.prototype.get _recordStyles):
2927         (WebInspector.TimelinePanel.prototype._createEventDivider):
2928         (WebInspector.TimelinePanel.prototype._findParentRecord):
2929         (WebInspector.TimelinePanel.prototype._innerAddRecordToTimeline):
2930         (WebInspector.TimelineDispatcher.prototype.started):
2931         (WebInspector.TimelineDispatcher.prototype.stopped):
2932         (WebInspector.TimelineDispatcher.prototype.eventRecorded):
2933         (WebInspector.TimelinePanel.FormattedRecord):
2934         (WebInspector.TimelinePanel.FormattedRecord.prototype._generatePopupContent):
2935         (WebInspector.TimelinePanel.FormattedRecord.prototype._getRecordDetails):
2936
2937 2011-03-29  Andrey Adaikin  <aandrey@google.com>
2938
2939         Reviewed by Pavel Feldman.
2940
2941         Web Inspector: Fixing live edits tests on chromium.
2942         https://bugs.webkit.org/show_bug.cgi?id=57316
2943
2944         * inspector/front-end/ScriptsPanel.js:
2945         (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.editScriptSource):
2946         * inspector/front-end/SourceFrame.js:
2947         (WebInspector.SourceFrame.prototype._handleSave.didEditScriptSource):
2948         (WebInspector.SourceFrame.prototype._handleSave):
2949         (WebInspector.SourceFrameDelegate.prototype.editScriptSource):
2950
2951 2011-03-29  Pavel Podivilov  <podivilov@chromium.org>
2952
2953         Reviewed by Yury Semikhatsky.
2954
2955         Web Inspector: fix call frames positions in formatted scripts.
2956         https://bugs.webkit.org/show_bug.cgi?id=57036
2957
2958         Introduce PresentationCallFrame class that encapsulates source mapping details from UI components.
2959
2960         * inspector/front-end/CallStackSidebarPane.js:
2961         (WebInspector.CallStackSidebarPane.prototype.update.didGetSourceLocation):
2962         (WebInspector.CallStackSidebarPane.prototype.update):
2963         (WebInspector.CallStackSidebarPane.prototype.set selectedCallFrame):
2964         (WebInspector.CallStackSidebarPane.prototype._placardSelected):
2965         (WebInspector.CallStackSidebarPane.prototype._contextMenu):
2966         (WebInspector.CallStackSidebarPane.prototype._copyStackTrace):
2967         * inspector/front-end/DebuggerModel.js:
2968         (WebInspector.DebuggerModel.prototype._didEditScriptSource):
2969         (WebInspector.DebuggerModel.prototype.get debuggerPausedDetails):
2970         (WebInspector.DebuggerModel.prototype._pausedScript):
2971         * inspector/front-end/DebuggerPresentationModel.js:
2972         (WebInspector.DebuggerPresentationModel):
2973         (WebInspector.DebuggerPresentationModel.prototype.editScriptSource.didEditScriptSource):
2974         (WebInspector.DebuggerPresentationModel.prototype.editScriptSource):
2975         (WebInspector.DebuggerPresentationModel.prototype.toggleFormatSourceFiles):
2976         (WebInspector.DebuggerPresentationModel.prototype._debuggerPaused):
2977         (WebInspector.DebuggerPresentationModel.prototype._debuggerResumed):
2978         (WebInspector.DebuggerPresentationModel.prototype.set selectedCallFrame):
2979         (WebInspector.DebuggerPresentationModel.prototype.get selectedCallFrame):
2980         (WebInspector.DebuggerPresentationModel.prototype._reset):
2981         (WebInspector.PresenationCallFrame): Call frame wrapper for UI.
2982         * inspector/front-end/ScriptsPanel.js:
2983         (WebInspector.ScriptsPanel):
2984         (WebInspector.ScriptsPanel.prototype.evaluateInSelectedCallFrame):
2985         (WebInspector.ScriptsPanel.prototype._debuggerPaused.else.didGetSourceLocation):
2986         (WebInspector.ScriptsPanel.prototype._debuggerPaused):
2987         (WebInspector.ScriptsPanel.prototype._debuggerResumed):
2988         (WebInspector.ScriptsPanel.prototype._sourceFrameLoaded):
2989         (WebInspector.ScriptsPanel.prototype._callFrameSelected.didGetSourceLocation):
2990         (WebInspector.ScriptsPanel.prototype._callFrameSelected):
2991         (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.evaluateInSelectedCallFrame):
2992         * inspector/front-end/SourceFile.js:
2993         (WebInspector.SourceFile.prototype.get content):
2994         * inspector/front-end/SourceFrame.js:
2995         (WebInspector.SourceFrame.prototype._createTextViewer):
2996         (WebInspector.SourceFrame.prototype.setExecutionLine):
2997         (WebInspector.SourceFrame.prototype.clearExecutionLine):
2998         (WebInspector.SourceFrame.prototype._showPopup.showObjectPopup):
2999         (WebInspector.SourceFrame.prototype._showPopup):
3000
3001 2011-03-29  Emil A Eklund  <eae@chromium.org>
3002
3003         Reviewed by Darin Adler.
3004
3005         Fix for execCommand("Delete") with an empty selection.
3006         https://bugs.webkit.org/show_bug.cgi?id=56652
3007
3008         Test: editing/execCommand/delete-empty-container.html
3009
3010         * editing/TypingCommand.cpp:
3011         (WebCore::TypingCommand::makeEditableRootEmpty): Add check for root element.
3012
3013 2011-03-29  Mikhail Naganov  <mnaganov@chromium.org>
3014
3015         Reviewed by Pavel Feldman.
3016
3017         Web Inspector: [Chromium] Refactor HeapSnapshot-related code to
3018         make sure we don't return big amounts of data to forms.
3019         https://bugs.webkit.org/show_bug.cgi?id=57227
3020
3021         * inspector/front-end/DetailedHeapshotGridNodes.js:
3022         (WebInspector.HeapSnapshotGridNode.prototype.populateChildren):
3023         (WebInspector.HeapSnapshotGenericObjectNode.prototype.get _countPercent):
3024         (WebInspector.HeapSnapshotObjectNode):
3025         (WebInspector.HeapSnapshotObjectNode.prototype._createProvider):
3026         (WebInspector.HeapSnapshotInstanceNode):
3027         (WebInspector.HeapSnapshotInstanceNode.prototype._createProvider):
3028         (WebInspector.HeapSnapshotConstructorNode.prototype._createNodesProvider):
3029         (WebInspector.HeapSnapshotConstructorNode.prototype.get _countPercent):
3030         (WebInspector.HeapSnapshotDiffNode.prototype._createNodesProvider.createProvider):
3031         (WebInspector.HeapSnapshotDiffNode.prototype._createNodesProvider):
3032         (WebInspector.HeapSnapshotDominatorObjectNode.prototype._createProvider):
3033         * inspector/front-end/DetailedHeapshotView.js:
3034         (WebInspector.HeapSnapshotContainmentDataGrid.prototype.setDataSource):
3035         (WebInspector.HeapSnapshotDominatorsDataGrid.prototype.setDataSource):
3036         * inspector/front-end/HeapSnapshot.js:
3037         (WebInspector.HeapSnapshotNode.prototype.get dominatorIndex):
3038         (WebInspector.HeapSnapshotNode.prototype.get retainers):
3039         (WebInspector.HeapSnapshot):
3040         (WebInspector.HeapSnapshot.prototype.get _allNodes):
3041         (WebInspector.HeapSnapshot.prototype.get nodeCount):
3042         (WebInspector.HeapSnapshot.prototype.get rootNodeIndex):
3043         (WebInspector.HeapSnapshot.prototype.hasId):
3044         (WebInspector.HeapSnapshot.prototype.get nodeIds):
3045         (WebInspector.HeapSnapshot.prototype._retainersForNode):
3046         (WebInspector.HeapSnapshot.prototype._buildRetainers):
3047         (WebInspector.HeapSnapshot.prototype._buildAggregates):
3048         (WebInspector.HeapSnapshot.prototype._buildAggregatesIndexes):
3049         (WebInspector.HeapSnapshot.prototype._buildIdsList):
3050         (WebInspector.HeapSnapshot.prototype._buildNodeIndex):
3051         (WebInspector.HeapSnapshotFilteredOrderedIterator):
3052         (WebInspector.HeapSnapshotFilteredOrderedIterator.prototype.next):
3053         (WebInspector.HeapSnapshotEdgesProvider):
3054         (WebInspector.HeapSnapshotNodesProvider):
3055
3056 2011-03-29  Mikhail Naganov  <mnaganov@chromium.org>
3057
3058         Reviewed by Pavel Feldman.
3059
3060         Web Inspector: [Chromium] Fix detailed heap snapshots UI.
3061         https://bugs.webkit.org/show_bug.cgi?id=57235
3062
3063         Fix two problems:
3064           1. Text color of grid cells under selection needs to be white, otherwise it's unreadable for some colors;
3065           2. Long strings need to be truncated in grid, their contents can be shown on hover.
3066
3067         * inspector/front-end/DetailedHeapshotView.js:
3068         (WebInspector.DetailedHeapshotView.prototype._getHoverAnchor):
3069         (WebInspector.DetailedHeapshotView.prototype._showStringContentPopup):
3070         * inspector/front-end/heapProfiler.css:
3071         (.detailed-heapshot-view .console-formatted-string):
3072         (.detailed-heapshot-view .data-grid tr.selected *):
3073         (.detailed-heapshot-view .data-grid:focus tr.selected *):
3074
3075 2011-03-29  Andrey Adaikin  <aandrey@google.com>
3076
3077         Reviewed by Yury Semikhatsky.
3078
3079         Web Inspector: Highlight visible lines first
3080         https://bugs.webkit.org/show_bug.cgi?id=57013
3081
3082         * inspector/front-end/TextViewer.js:
3083         (WebInspector.TextEditorChunkedPanel.prototype._findFirstVisibleChunkNumber):
3084         (WebInspector.TextEditorChunkedPanel.prototype._findVisibleChunks):
3085         (WebInspector.TextEditorChunkedPanel.prototype._findFirstVisibleLineNumber.compareLineRowOffsetTops):
3086         (WebInspector.TextEditorChunkedPanel.prototype._findFirstVisibleLineNumber):
3087         (WebInspector.TextEditorMainPanel.prototype._paintScheduledLines):
3088         (WebInspector.TextEditorMainPanel.prototype._paintLines):
3089         (WebInspector.TextEditorMainPanel.prototype._paintLineChunks):
3090         (WebInspector.TextEditorMainPanel.prototype._paintLine):
3091         (WebInspector.TextEditorMainChunk.prototype.set expanded):
3092
3093 2011-03-29  Emil A Eklund  <eae@chromium.org>
3094
3095         Reviewed by Dimitri Glazkov.
3096
3097         Relative mouse coordinates recalculated for each target
3098         https://bugs.webkit.org/show_bug.cgi?id=57130
3099
3100         Calculate relative coordinates lazily for mouse events instead of doing
3101         it for each target. Speeds up dispatching of mouse events in deep dom
3102         structures significantly, O(n^2) to O(n).
3103
3104         Also fixes https://bugs.webkit.org/show_bug.cgi?id=34973
3105
3106         Tests: fast/events/mouse-relative-position.html
3107                perf/mouse-event.html
3108
3109         * dom/Event.cpp:
3110         (WebCore::Event::setTarget):
3111         * dom/MouseRelatedEvent.cpp:
3112         (WebCore::MouseRelatedEvent::MouseRelatedEvent):
3113         (WebCore::MouseRelatedEvent::initCoordinates):
3114         (WebCore::pageZoomFactor):
3115         (WebCore::MouseRelatedEvent::receivedTarget):
3116         (WebCore::MouseRelatedEvent::computeRelativePosition):
3117         (WebCore::MouseRelatedEvent::layerX):
3118         (WebCore::MouseRelatedEvent::layerY):
3119         (WebCore::MouseRelatedEvent::offsetX):
3120         (WebCore::MouseRelatedEvent::offsetY):
3121         * dom/MouseRelatedEvent.h:
3122         * dom/UIEvent.cpp:
3123         (WebCore::UIEvent::layerX):
3124         (WebCore::UIEvent::layerY):
3125         * dom/UIEvent.h:
3126
3127 2011-03-29  Emil A Eklund  <eae@chromium.org>
3128
3129         Reviewed by Darin Adler.
3130
3131         getComputedStyle counterIncrement crash @ WebCore::counterToCSSValue
3132         https://bugs.webkit.org/show_bug.cgi?id=57266
3133
3134         Add null check to counterToCSSValue.
3135
3136         Test: fast/css/getComputedStyle/counterIncrement-without-counter.html
3137
3138         * css/CSSComputedStyleDeclaration.cpp:
3139         (WebCore::counterToCSSValue):
3140
3141 2011-03-29  Gavin Peters  <gavinp@chromium.org>
3142
3143         Reviewed by Tony Gentilcore.
3144
3145         Implement onerror events for <link rel=prefetch>
3146         https://bugs.webkit.org/show_bug.cgi?id=57182
3147
3148         These events are equired on link elements, see
3149         http://dev.w3.org/html5/spec/Overview.html#the-link-element
3150
3151         After a discussion in WebKit-dev about the direction of prefetch in the loader, and about a path
3152         to adding the Link header, we decided to look at making onerror, onload and onbeforeload events
3153         more uniformly supported.  See the thread at
3154         https://lists.webkit.org/pipermail/webkit-dev/2011-February/016034.html .
3155
3156         It turned out that part of adding onerror for link prefetch was to make the top CachedResource less
3157         abstract.  It was pure virtual until prefetch became the first consumer to use an unspecialised
3158         implementation, and this CL continues that by adding a default checkNotify method to it.  As it
3159         happens there were already two subclasses using what amounted to the generic checkNotify, so I
3160         also removed those, buying us some code cleanup with the change.
3161
3162         Test: fast/dom/HTMLLinkElement/prefetch-onerror.html
3163
3164         * html/HTMLLinkElement.cpp:
3165         (WebCore::HTMLLinkElement::parseMappedAttribute):
3166         (WebCore::HTMLLinkElement::onloadTimerFired):
3167         (WebCore::HTMLLinkElement::notifyFinished):
3168         * loader/cache/CachedImage.cpp:
3169         * loader/cache/CachedImage.h:
3170         * loader/cache/CachedResource.cpp:
3171         (WebCore::CachedResource::checkNotify):
3172         (WebCore::CachedResource::data):
3173         (WebCore::CachedResource::error):
3174         * loader/cache/CachedResource.h:
3175         * loader/cache/CachedScript.cpp:
3176         * loader/cache/CachedScript.h:
3177
3178 2011-03-29  Eric Seidel  <eric@webkit.org>
3179
3180         Reviewed by Ryosuke Niwa.
3181
3182         Add support for parsing unicode-bidi: -webkit-isolate
3183         https://bugs.webkit.org/show_bug.cgi?id=57181
3184
3185         Test: css3/unicode-bidi-insolate-parse.html
3186
3187         * WebCore.xcodeproj/project.pbxproj:
3188         * css/CSSParser.cpp:
3189         (WebCore::CSSParser::parseValue):
3190         * css/CSSPrimitiveValueMappings.h:
3191         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
3192         (WebCore::CSSPrimitiveValue::operator EUnicodeBidi):
3193         * css/CSSValueKeywords.in:
3194         * rendering/style/RenderStyleConstants.h:
3195
3196 2011-03-29  Patrick Gansterer  <paroga@webkit.org>
3197
3198         Unreviewed WinCE build fix for r82193.
3199
3200         * platform/wince/FileSystemWinCE.cpp:
3201         (WebCore::openTemporaryFile):
3202
3203 2011-03-28  Sheriff Bot  <webkit.review.bot@gmail.com>
3204
3205         Unreviewed, rolling out r82198.
3206         http://trac.webkit.org/changeset/82198
3207         https://bugs.webkit.org/show_bug.cgi?id=57304
3208
3209         Broke Chromium Win build. (Requested by dave_levin on
3210         #webkit).
3211
3212         * platform/image-decoders/png/PNGImageDecoder.cpp:
3213         (WebCore::PNGImageDecoder::headerAvailable):
3214         (WebCore::PNGImageDecoder::rowAvailable):
3215
3216 2011-03-28  Ofri Wolfus  <ofri@google.com>
3217
3218         Reviewed by Eric Seidel.
3219
3220         RTL: Select elements with a size attribute are always left aligned.
3221         https://bugs.webkit.org/show_bug.cgi?id=50928
3222
3223         Added support for alignment in RenderListBox.
3224
3225         Test: fast/forms/listbox-bidi-align.html
3226
3227         * rendering/RenderListBox.cpp:
3228         (WebCore::itemOffsetForAlignment):
3229         (WebCore::RenderListBox::paintItemForeground): Add support for alignment and directionality.
3230
3231 2011-03-28  Kwang Yul Seo  <skyul@company100.net>
3232
3233         Reviewed by Benjamin Poulain.
3234
3235         [Qt] Change TextureMapperVideoLayer to TextureMapperMediaLayer
3236         https://bugs.webkit.org/show_bug.cgi?id=57142
3237
3238         TextureMapperMediaLayer is a better name here because both video and plugins use this layer.
3239         Remove ENABLE(VIDEO) guard.
3240
3241         * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
3242         * platform/graphics/qt/MediaPlayerPrivateQt.h:
3243         * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
3244         (WebCore::GraphicsLayerTextureMapper::setContentsToMedia):
3245         * platform/graphics/texmap/TextureMapperNode.h:
3246         * platform/graphics/texmap/TextureMapperPlatformLayer.h:
3247         (WebCore::TextureMapperMediaLayer::layerType):
3248
3249 2011-03-28  Thomas Klausner  <tk@giga.or.at>
3250
3251         Reviewed by David Levin.
3252
3253         png-1.5 fixes
3254         https://bugs.webkit.org/show_bug.cgi?id=54406
3255
3256         Fix compilation with png-1.5: struct members were hidden, and
3257         a new API to terminate data processing was added (especially for
3258         WebKit).
3259
3260         Compilation fixes, so no new tests.
3261
3262         * platform/image-decoders/png/PNGImageDecoder.cpp:
3263         (WebCore::PNGImageDecoder::headerAvailable):
3264         (WebCore::PNGImageDecoder::rowAvailable):
3265
3266 2011-03-28  Kwang Yul Seo  <skyul@company100.net>
3267
3268         Reviewed by Adam Barth.
3269
3270         Replace fprintf(stderr, ...) with LOG_ERROR
3271         https://bugs.webkit.org/show_bug.cgi?id=57216
3272
3273         LOG_ERROR is a better choice here.
3274
3275         * bridge/jni/v8/JavaClassV8.cpp:
3276         (JavaClass::JavaClass):
3277
3278 2011-03-28  Steve Block  <steveblock@google.com>
3279
3280         Reviewed by Jeremy Orlow.
3281
3282         Add a new JavaValue to type to represent a Java value in the Java bridge
3283         https://bugs.webkit.org/show_bug.cgi?id=57022
3284
3285         This change introduces a new JavaValue type and uses it in place of jvalue
3286         in the conversions to and from JavaNPObject used in the V8 Java bridge.
3287
3288         Refactoring only, no new tests.
3289
3290         * WebCore.gypi:
3291         * bridge/jni/JNIUtility.cpp:
3292         (JSC::Bindings::javaTypeFromClassName):
3293         (JSC::Bindings::signatureFromJavaType):
3294         (JSC::Bindings::getJNIField):
3295         (JSC::Bindings::callJNIMethod):
3296         * bridge/jni/JavaType.h:
3297         * bridge/jni/v8/JNIUtilityPrivate.cpp:
3298         (JSC::Bindings::convertNPVariantToJavaValue):
3299         (JSC::Bindings::convertJavaValueToNPVariant):
3300         (JSC::Bindings::jvalueToJavaValue):
3301         (JSC::Bindings::javaValueToJvalue):
3302         * bridge/jni/v8/JNIUtilityPrivate.h:
3303         * bridge/jni/v8/JavaNPObjectV8.cpp:
3304         (JSC::Bindings::JavaNPObjectInvoke):
3305         (JSC::Bindings::JavaNPObjectGetProperty):
3306         * bridge/jni/v8/JavaValueV8.h: Added.
3307         (JSC::Bindings::JavaValue::JavaValue):
3308
3309 2011-03-28  Patrick Gansterer  <paroga@webkit.org>
3310
3311         Reviewed by Darin Adler.
3312
3313         Use String instead of CString as return value of openTemporaryFile
3314         https://bugs.webkit.org/show_bug.cgi?id=55332
3315
3316         We usually store all paths as UTF-16. Do this for temporary files too.
3317
3318         * WebCore.exp.in
3319         * platform/FileSystem.h:
3320         * platform/android/FileSystemAndroid.cpp:
3321         * platform/brew/FileSystemBrew.cpp:
3322         * platform/efl/FileSystemEfl.cpp:
3323         * platform/gtk/FileSystemGtk.cpp:
3324         * platform/haiku/FileSystemHaiku.cpp:
3325         * platform/mac/FileSystemMac.mm:
3326         * platform/qt/FileSystemQt.cpp:
3327         * platform/win/FileSystemWin.cpp:
3328         * platform/wince/FileSystemWinCE.cpp:
3329         * platform/wx/FileSystemWx.cpp:
3330         * plugins/PluginStream.cpp:
3331         (WebCore::PluginStream::destroyStream):
3332         * plugins/PluginStream.h:
3333
3334 2011-03-28  Jeff Johnson  <opendarwin@lapcatsoftware.com>
3335
3336         Reviewed by Pavel Feldman.
3337
3338         Web Inspector: empty, non-functional window
3339         https://bugs.webkit.org/show_bug.cgi?id=56354
3340
3341         Check whether DOM local storage is enabled
3342         before attempting to access window.localStorage.
3343
3344         No new tests.
3345
3346         * inspector/front-end/Settings.js:
3347         (WebInspector.Settings.prototype.findSettingForAllProjects):
3348         (WebInspector.Settings.prototype._get):
3349         (WebInspector.Settings.prototype._set):
3350
3351 2011-03-28  Beth Dakin  <bdakin@apple.com>
3352
3353         Reviewed by Darin Adler.
3354
3355         Fix for https://bugs.webkit.org/show_bug.cgi?id=57286 Alternative fix for: 
3356         Horizontal scroller stops appearing after going Forward
3357         -and corresponding-
3358         <rdar://problem/9026946>
3359
3360         This patch rolls out revision 79053 and fixes the same bug in a  better way.
3361
3362         New function resetScrollbarsAndClearContentsSize() calls resetScrollbars() and then 
3363         sets the contents size to 0. This is called when a document is going into the page 
3364         cache.
3365         * dom/Document.cpp:
3366         (WebCore::Document::setInPageCache):
3367         (WebCore::FrameView::resetScrollbarsAndClearContentsSize):
3368
3369         Roll-out of 79053.
3370         * history/CachedFrame.cpp:
3371         (WebCore::CachedFrameBase::restore):
3372         * page/FrameView.cpp:
3373         (WebCore::FrameView::FrameView):
3374         (WebCore::FrameView::reset):
3375         (WebCore::FrameView::layout):
3376         * page/FrameView.h:
3377
3378 2011-03-28  Ojan Vafai  <ojan@chromium.org>
3379
3380         Reviewed by Antti Koivisto.
3381
3382         fix style sharing with :any and sibling selectors
3383         https://bugs.webkit.org/show_bug.cgi?id=57211
3384
3385         Test: fast/css/sibling-selectors.html
3386
3387         * css/CSSStyleSelector.cpp:
3388         (WebCore::collectFeaturesFromList):
3389
3390 2011-03-27  Ojan Vafai  <ojan@chromium.org>
3391
3392         Reviewed by Antti Koivisto.
3393
3394         fix :-webkit-any(:last-child)
3395         https://bugs.webkit.org/show_bug.cgi?id=57207
3396
3397         We were passing the wrong arguments to checkSelector. Also, we were not
3398         passing through the encounteredLink bool.
3399
3400         * css/CSSStyleSelector.cpp:
3401         (WebCore::CSSStyleSelector::SelectorChecker::checkSelector):
3402         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
3403         * css/CSSStyleSelector.h:
3404
3405 2011-03-27  Ojan Vafai  <ojan@chromium.org>
3406
3407         Reviewed by Antti Koivisto.
3408
3409         fix :-webkit-any(:last-child)
3410         https://bugs.webkit.org/show_bug.cgi?id=57207
3411
3412         We were passing the wrong arguments to checkSelector. Also, we were not
3413         passing through the encounteredLink bool.
3414
3415         * css/CSSStyleSelector.cpp:
3416         (WebCore::CSSStyleSelector::SelectorChecker::checkSelector):
3417         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
3418         * css/CSSStyleSelector.h:
3419
3420 2011-03-28  Maciej Stachowiak  <mjs@apple.com>
3421
3422         Reviewed by Darin Adler.
3423
3424         REGRESSION(r82152): fast/dom/HTMLAnchorElement/set-href-attribute-pathname.html
3425         https://bugs.webkit.org/show_bug.cgi?id=57291
3426
3427         * platform/KURL.cpp:
3428         (WebCore::KURL::parse): Instead of considering URLs with
3429         credentials but no host invalid, consider them to have a host
3430         ending in @ (which fails down the line)/
3431
3432 2011-03-28  Kent Tamura  <tkent@chromium.org>
3433
3434         Reviewed by Dimitri Glazkov.
3435
3436         Fix some problems of the appearance of form validation message bubble.
3437         https://bugs.webkit.org/show_bug.cgi?id=57208
3438
3439         No new tests. Validation message bubble appearance is not testable
3440         because it depends on a timer.
3441
3442         * css/html.css:
3443         (::-webkit-validation-bubble):
3444         (::-webkit-validation-bubble-message):
3445         (::-webkit-validation-bubble-arrow):
3446         (::-webkit-validation-bubble-arrow-clipper):
3447           - Explicitly set margin, padding, and color.
3448           - Make the shadow darker.
3449           - Make the background color darker.
3450           - Make opacity larger.
3451           - Make the border color lighter.
3452           - Add inset shadows
3453           - Change the implementation of an arrow.
3454             Stop making a right triangle by the border trick.
3455             Use -webkit-transform instead.
3456           - Make min-width workable by changing display property of
3457             -webkit-validation-bubble to "inline-block".
3458         * html/ValidationMessage.cpp:
3459         (WebCore::ValidationMessage::buildBubbleTree):
3460           Change the node structure. Before this change, -webkit-validation-bubble
3461           had three DIVs inside. After this change, it has two DIVs;
3462           -webkit-validation-bubble-arrow-clipper and
3463           -webkit-validation-bubble-message, and
3464           -webkit-validation-bubble-arrow-clipper contains
3465           -webkit-validation-bubble-arrow.
3466
3467 2011-03-28  Enrica Casucci  <enrica@apple.com>
3468
3469         Reviewed by Sam Weinig.
3470
3471         REGRESSION: Can't enter pasted with context or Edit menu text in search or address field in the browser.
3472         https://bugs.webkit.org/show_bug.cgi?id=57275
3473         <rdar://problem/8246691>
3474
3475         We need to classify cut and paste actions as user typing actions even when
3476         the action is triggered by a context menu selection to
3477         allow the propagation of the textDidChangeInTextField event.
3478
3479         * editing/EditorCommand.cpp:
3480         The following methods have been modified to properly set up
3481         the UserTypingGestureAction when the command source is the
3482         menu or a key binding sequence.
3483         (WebCore::executeCut):
3484         (WebCore::executePaste):
3485         (WebCore::executePasteAndMatchStyle):
3486         (WebCore::executePasteAsPlainText):