3dab606d9afe4d53b762af27632508ad3ae34c2c
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2011-03-03  Anders Carlsson  <andersca@apple.com>
2
3         Try to fix the Windows build again.
4
5         * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
6         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
7
8 2011-03-03  Mihai Parparita  <mihaip@chromium.org>
9
10         Reviewed by Dimitri Glazkov.
11
12         Add another CRASH() for CSSSelector double frees
13         https://bugs.webkit.org/show_bug.cgi?id=55693
14
15         To help track down bug 53045, add a CRASH call when the the array and/or
16         CSSSelector member in CSSSelectorList is disposed of more than once.
17
18         Just a check, no new tests necessary.
19         
20         * css/CSSSelectorList.cpp:
21         (WebCore::CSSSelectorList::deleteSelectors):
22
23 2011-03-03  Anders Carlsson  <andersca@apple.com>
24
25         Yet another attempt at fixing the Windows build.
26
27         * platform/graphics/ca/win/CACFLayerTreeHost.cpp:
28         * platform/graphics/ca/win/LegacyCACFLayerTreeHost.cpp:
29         * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.h:
30         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
31
32 2011-03-02  Chris Marrin  <cmarrin@apple.com>
33
34         Reviewed by Simon Fraser.
35
36         REGRESSION: Accelerated transitions are jumpy
37         https://bugs.webkit.org/show_bug.cgi?id=55022
38
39         Got rid of default TimingFunction values from PlatformCAAnimation*. A TimingFunction
40         is now always passed in. The TimingFunction class now has a static method to get
41         a default object which has the 'ease' values in it. I now assert in both Mac and
42         Win implementations if a null TimingFunction pointer is seen.
43
44         * platform/animation/TimingFunction.h:
45         (WebCore::CubicBezierTimingFunction::create):
46         (WebCore::CubicBezierTimingFunction::defaultTimingFunction):
47         (WebCore::CubicBezierTimingFunction::CubicBezierTimingFunction):
48         * platform/graphics/ca/GraphicsLayerCA.cpp:
49         (WebCore::GraphicsLayerCA::timingFunctionForAnimationValue):
50         * platform/graphics/ca/mac/PlatformCAAnimationMac.mm:
51         (toCAMediaTimingFunction):
52         * platform/graphics/ca/win/PlatformCAAnimationWin.cpp:
53         (toCACFTimingFunction):
54
55 2011-03-03  Tony Gentilcore  <tonyg@chromium.org>
56
57         Unreviewed build fix.
58
59         Fix clang compile after r80220
60         https://bugs.webkit.org/show_bug.cgi?id=55692
61
62         * storage/IDBBackingStore.cpp:
63         (WebCore::IDBBackingStore::getPrimaryKeyViaIndex):
64
65 2011-03-03  Anders Carlsson  <andersca@apple.com>
66
67         Attempt to fix the Windows build.
68
69         * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
70         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
71
72 2011-03-02  Brian Weinstein  <bweinstein@apple.com>
73
74         Reviewed by Adam Roben.
75
76         Rest of WebKit2: Need a way to send notifications to client when cookies change
77         https://bugs.webkit.org/show_bug.cgi?id=55427
78         <rdar://problem/9056027>
79
80         Add functions to be exported.
81
82         * WebCore.exp.in:
83
84 2011-03-03  Anders Carlsson  <andersca@apple.com>
85
86         Reviewed by Darin Adler.
87
88         Improve WebCore build time by ~5%
89         https://bugs.webkit.org/show_bug.cgi?id=55688
90
91         Forward declare the CATransform3D and CGAffineTransform structs instead of including
92         large chunks of QuartzCore and Core Graphics.
93
94         On an 8 core Mac Pro, this sped up building WebCore by about 5%.
95
96         * platform/graphics/ca/GraphicsLayerCA.cpp:
97         * platform/graphics/ca/TransformationMatrixCA.cpp:
98         * platform/graphics/transforms/TransformationMatrix.h:
99
100 2011-03-03  Andrey Kosyakov  <caseq@chromium.org>
101
102         Unreviewed. Adjusted call to a method renamed in r80102.
103
104         * inspector/front-end/SourceFrame.js:
105         (WebInspector.SourceFrame.prototype._startEditing):
106
107 2011-03-03  Timothy Hatcher  <timothy@apple.com>
108
109         Use APIEntryShim instead of JSLock in SerializedScriptValue to allow it to be used
110         by contexts not created by WebCore.
111
112         https://webkit.org/b/55642
113
114         Reviewed by Oliver Hunt.
115
116         * bindings/js/SerializedScriptValue.cpp:
117         (WebCore::SerializedScriptValue::create): Use APIEntryShim instead of JSLock.
118         (WebCore::SerializedScriptValue::deserialize): Ditto.
119
120 2011-03-03  Alexey Proskuryakov  <ap@apple.com>
121
122         Reviewed by Darin Adler.
123
124         WebCore should check for "Upgrade" and "Connection" header fields in WebSockets handshake
125         https://bugs.webkit.org/show_bug.cgi?id=55498
126         <rdar://problem/8752706>
127
128         Tests: http/tests/websocket/tests/handshake-fail-by-no-connection-header.html
129                http/tests/websocket/tests/handshake-fail-by-no-upgrade-header.html
130
131         * websockets/WebSocketHandshake.h: Removed unused and meaningless setters for response
132         header fields. Removed separate member variables for those, as they were duplicating data
133         available in response, and there is no reason to squeeze microsecods here.
134
135         * websockets/WebSocketHandshake.cpp:
136         (WebCore::WebSocketHandshake::reset): There are no longer member variables for header field
137         values to reset here.
138         (WebCore::WebSocketHandshake::readServerHandshake): Removed a call for processHeaders().
139         (WebCore::WebSocketHandshake::serverWebSocketOrigin): Changed to get the value from response.
140         (WebCore::WebSocketHandshake::serverWebSocketLocation): Ditto.
141         (WebCore::WebSocketHandshake::serverWebSocketProtocol): Ditto.
142         (WebCore::WebSocketHandshake::serverSetCookie): Ditto.
143         (WebCore::WebSocketHandshake::serverSetCookie2): Ditto.
144         (WebCore::WebSocketHandshake::serverUpgrade): Added.
145         (WebCore::WebSocketHandshake::serverConnection): Added.
146         (WebCore::WebSocketHandshake::checkResponseHeaders): Added checks for Upgrade and Connection
147         header field presence and values.
148
149 2011-03-03  Helder Correia  <helder@sencha.com>
150
151         Reviewed by Andreas Kling.
152
153         [Qt] fast/canvas/canvas-strokePath-gradient-shadow.html fails
154         https://bugs.webkit.org/show_bug.cgi?id=55651
155
156         When relying on ContextShadow and using a gradient stroke for a path,
157         the alpha of the shadow is incorrect.
158
159         * platform/graphics/qt/GraphicsContextQt.cpp:
160         (WebCore::GraphicsContext::strokePath):
161
162 2011-03-03  Martin Robinson  <mrobinson@igalia.com>
163
164         XHTMLMP build broken after r78342
165         https://bugs.webkit.org/show_bug.cgi?id=55286
166
167         Fix XHTMLMP build now that the DocumentWriter is a member of DocumentLoader
168         instead of FrameLoader.
169
170         No new tests. This is a build fix.
171
172         * dom/Document.cpp:
173         (WebCore::Document::isXHTMLMPDocument):
174
175 2011-03-03  Dimitri Glazkov  <dglazkov@chromium.org>
176
177         Reviewed by Eric Carlson.
178
179         Tweak MediaControlMuteButtonElement class hierarchy.
180         https://bugs.webkit.org/show_bug.cgi?id=55614
181
182         This allows the mute button on the panel to have event handlers that are
183         different from the mute button in the volume slider.
184
185         No change in behavior, covered by existing tests.
186
187         * html/shadow/MediaControls.cpp:
188         (WebCore::MediaControls::createMuteButton): Changed to use MediaControlPanelMuteButtonElement.
189         * rendering/MediaControlElements.cpp:
190         (WebCore::MediaControlMuteButtonElement::updateDisplayType):
191         (WebCore::MediaControlPanelMuteButtonElement::MediaControlPanelMuteButtonElement): Added.
192         (WebCore::MediaControlPanelMuteButtonElement::create): Added.
193         (WebCore::MediaControlPanelMuteButtonElement::shadowPseudoId): Moved.
194         * rendering/MediaControlElements.h: Added defs.
195
196 2011-03-03  Yury Semikhatsky  <yurys@chromium.org>
197
198         Reviewed by Pavel Feldman.
199
200         Web Inspector: Resource agent should have same lifetime as Inspector agent
201         https://bugs.webkit.org/show_bug.cgi?id=55461
202
203         * inspector/Inspector.idl:
204         * inspector/InspectorAgent.cpp:
205         (WebCore::InspectorAgent::InspectorAgent):
206         (WebCore::InspectorAgent::inspectedPageDestroyed): disconnectFrontend is called before the agent is destroyed
207         to clear frontend reference in all agents.
208         (WebCore::InspectorAgent::restoreInspectorStateFromCookie):
209         (WebCore::InspectorAgent::setFrontend):
210         (WebCore::InspectorAgent::disconnectFrontend):
211         (WebCore::InspectorAgent::releaseFrontendLifetimeAgents):
212         (WebCore::InspectorAgent::didCommitLoad):
213         * inspector/InspectorAgent.h:
214         (WebCore::InspectorAgent::resourceAgent):
215         * inspector/InspectorBrowserDebuggerAgent.cpp:
216         (WebCore::InspectorBrowserDebuggerAgent::~InspectorBrowserDebuggerAgent):
217         * inspector/InspectorDebuggerAgent.cpp:
218         (WebCore::InspectorDebuggerAgent::~InspectorDebuggerAgent):
219         * inspector/InspectorInstrumentation.cpp:
220         (WebCore::InspectorInstrumentation::didCreateWebSocketImpl):
221         (WebCore::InspectorInstrumentation::willSendWebSocketHandshakeRequestImpl):
222         (WebCore::InspectorInstrumentation::didReceiveWebSocketHandshakeResponseImpl):
223         (WebCore::InspectorInstrumentation::didCloseWebSocketImpl):
224         (WebCore::InspectorInstrumentation::retrieveResourceAgent):
225         * inspector/InspectorResourceAgent.cpp:
226         (WebCore::InspectorResourceAgent::setFrontend):
227         (WebCore::InspectorResourceAgent::clearFrontend):
228         (WebCore::InspectorResourceAgent::restore):
229         (WebCore::InspectorResourceAgent::~InspectorResourceAgent):
230         (WebCore::InspectorResourceAgent::enable):
231         (WebCore::InspectorResourceAgent::disable):
232         (WebCore::InspectorResourceAgent::InspectorResourceAgent):
233         * inspector/InspectorResourceAgent.h:
234         (WebCore::InspectorResourceAgent::create):
235         * inspector/InspectorTimelineAgent.cpp:
236         (WebCore::InspectorTimelineAgent::restore):
237         * inspector/InspectorTimelineAgent.h:
238         * inspector/front-end/NetworkManager.js:
239         (WebInspector.NetworkManager):
240         (WebInspector.NetworkManager.prototype.frontendReused):
241         * inspector/front-end/inspector.js:
242         (WebInspector.frontendReused):
243
244 2011-03-03  Andras Becsi  <abecsi@webkit.org>
245
246         Reviewed by Andreas Kling.
247
248         CSS RGBA fast-path color parsing should clamp of out-of-range alpha values
249         https://bugs.webkit.org/show_bug.cgi?id=55661
250
251         Test case originally written by Andreas Kling <andreas.kling@nokia.com>
252
253         Test: fast/canvas/rgba-parsing.html
254
255         * css/CSSParser.cpp:
256         (WebCore::isValidDouble): Check whether the given string is a valid double.
257         (WebCore::parseAlphaValue): Out-of-range alpha values should be clamped to the (0.0, 1.0) range.
258
259 2011-03-03  David Holloway  <dhollowa@chromium.org>
260
261         Reviewed by Dimitri Glazkov.
262
263         Changes HTMLTextFormControlElement::placeholderShouldBeVisible to account
264         for non-empty suggestion text.  The visibility of the placeholder text
265         now turned off when suggestion text is set.
266         https://bugs.webkit.org/show_bug.cgi?id=55245
267
268         No new tests because, by design, the suggestion text is not accessible
269         through the DOM.
270
271         * html/HTMLFormControlElement.cpp:
272         (WebCore::HTMLTextFormControlElement::placeholderShouldBeVisible):
273         * html/HTMLFormControlElement.h:
274         (WebCore::HTMLTextFormControlElement::isEmptySuggestedValue):
275         * html/HTMLInputElement.h:
276         (WebCore::HTMLInputElement::isEmptySuggestedValue):
277
278 2011-03-03  Andy Estes  <aestes@apple.com>
279
280         Reviewed by Eric Seidel.
281
282         HTML5 TreeBuilder regressed a Peacekeeper DOM test by 25% (was 40%)
283         https://bugs.webkit.org/show_bug.cgi?id=48719
284         
285         Instead of pushing a fake HTMLHtmlElement onto the open element stack
286         during fragment parsing only to later remove it and reparent its
287         children to the DocumentFragment, push the DocumentFragment directly
288         onto the open element stack as the root node. This requires refactoring
289         HTMLElementStack to hold ContainerNode pointers rather than Element
290         pointers, which has implications for HTMLConstructionSite and
291         HTMLTreeBuilder as well.
292         
293         With this patch, the regression in Peacekeeper from Safari 5.0.3 to ToT
294         is ~14%. However, if you discount the 'domDynamicCreationCreateElement'
295         test, ToT is now ~4% faster than Safari 5.0.3. This indicates that the
296         regression no longer lies in fragment parsing.
297
298         No new tests. No change in behavior.
299
300         * dom/Element.h:
301         (WebCore::Node::hasLocalName):
302         * dom/Node.h:
303         * html/parser/HTMLConstructionSite.cpp:
304         (WebCore::HTMLNames::hasImpliedEndTag):
305         (WebCore::HTMLConstructionSite::HTMLConstructionSite):
306         (WebCore::HTMLConstructionSite::insertHTMLHtmlStartTagInBody):
307         (WebCore::HTMLConstructionSite::insertComment):
308         (WebCore::HTMLConstructionSite::insertCommentOnHTMLHtmlElement):
309         (WebCore::HTMLConstructionSite::attachToCurrent):
310         (WebCore::HTMLConstructionSite::insertScriptElement):
311         (WebCore::HTMLConstructionSite::insertTextNode):
312         (WebCore::HTMLConstructionSite::createElement):
313         (WebCore::HTMLConstructionSite::createHTMLElement):
314         (WebCore::HTMLConstructionSite::generateImpliedEndTagsWithExclusion):
315         (WebCore::HTMLConstructionSite::generateImpliedEndTags):
316         (WebCore::HTMLConstructionSite::findFosterSite):
317         (WebCore::HTMLConstructionSite::shouldFosterParent):
318         * html/parser/HTMLConstructionSite.h:
319         (WebCore::HTMLConstructionSite::currentNode):
320         * html/parser/HTMLElementStack.cpp:
321         (WebCore::HTMLNames::isNumberedHeaderElement):
322         (WebCore::HTMLNames::isScopeMarker):
323         (WebCore::HTMLNames::isListItemScopeMarker):
324         (WebCore::HTMLNames::isTableScopeMarker):
325         (WebCore::HTMLNames::isTableBodyScopeMarker):
326         (WebCore::HTMLNames::isTableRowScopeMarker):
327         (WebCore::HTMLNames::isButtonScopeMarker):
328         (WebCore::HTMLNames::isSelectScopeMarker):
329         (WebCore::HTMLElementStack::ElementRecord::ElementRecord):
330         (WebCore::HTMLElementStack::ElementRecord::replaceElement):
331         (WebCore::HTMLElementStack::HTMLElementStack):
332         (WebCore::HTMLElementStack::secondElementIsHTMLBodyElement):
333         (WebCore::HTMLElementStack::popAll):
334         (WebCore::HTMLElementStack::popUntilNumberedHeaderElementPopped):
335         (WebCore::HTMLElementStack::popUntil):
336         (WebCore::HTMLElementStack::popUntilPopped):
337         (WebCore::HTMLElementStack::popUntilTableScopeMarker):
338         (WebCore::HTMLElementStack::popUntilTableBodyScopeMarker):
339         (WebCore::HTMLElementStack::popUntilTableRowScopeMarker):
340         (WebCore::HTMLElementStack::pushHTMLHtmlElement):
341         (WebCore::HTMLElementStack::push):
342         (WebCore::HTMLElementStack::insertAbove):
343         (WebCore::HTMLElementStack::find):
344         (WebCore::HTMLElementStack::topmost):
345         (WebCore::HTMLElementStack::contains):
346         (WebCore::inScopeCommon):
347         (WebCore::HTMLElementStack::hasNumberedHeaderElementInScope):
348         (WebCore::HTMLElementStack::htmlElement):
349         (WebCore::HTMLElementStack::rootNode):
350         (WebCore::HTMLElementStack::pushCommon):
351         * html/parser/HTMLElementStack.h:
352         (WebCore::HTMLElementStack::ElementRecord::element):
353         (WebCore::HTMLElementStack::ElementRecord::node):
354         (WebCore::HTMLElementStack::topNode):
355         * html/parser/HTMLTreeBuilder.cpp:
356         (WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
357         (WebCore::HTMLTreeBuilder::processCloseWhenNestedTag):
358         (WebCore::HTMLTreeBuilder::processStartTagForInBody):
359         (WebCore::HTMLTreeBuilder::processColgroupEndTagForInColumnGroup):
360         (WebCore::HTMLTreeBuilder::processStartTag):
361         (WebCore::HTMLTreeBuilder::processAnyOtherEndTagForInBody):
362         (WebCore::HTMLTreeBuilder::callTheAdoptionAgency):
363         (WebCore::HTMLTreeBuilder::resetInsertionModeAppropriately):
364         (WebCore::HTMLTreeBuilder::processEndTagForInCell):
365         (WebCore::HTMLTreeBuilder::processEndTagForInBody):
366         (WebCore::HTMLTreeBuilder::processEndTag):
367         (WebCore::HTMLTreeBuilder::processEndOfFile):
368         (WebCore::HTMLTreeBuilder::finished):
369         * html/parser/HTMLTreeBuilder.h:
370
371 2011-03-02  Yury Semikhatsky  <yurys@chromium.org>
372
373         Reviewed by Pavel Feldman.
374
375         Web Inspector: inspector protocol should allow different domains to have methods with same name
376         https://bugs.webkit.org/show_bug.cgi?id=55558
377
378         * inspector/CodeGeneratorInspector.pm: each command is now identified by domain + command-name(was command-name only).
379
380 2011-03-02  Pavel Podivilov  <podivilov@chromium.org>
381
382         Reviewed by Yury Semikhatsky.
383
384         Web Inspector: make selected call frame debugger presentation model property.
385         https://bugs.webkit.org/show_bug.cgi?id=55582
386
387         * inspector/front-end/CallStackSidebarPane.js:
388         (WebInspector.CallStackSidebarPane):
389         (WebInspector.CallStackSidebarPane.prototype.update):
390         (WebInspector.CallStackSidebarPane.prototype.set selectedCallFrame):
391         (WebInspector.CallStackSidebarPane.prototype._selectedCallFrameIndex):
392         * inspector/front-end/ConsoleView.js:
393         (WebInspector.ConsoleView.prototype.completions):
394         * inspector/front-end/DebuggerPresentationModel.js:
395         (WebInspector.DebuggerPresentationModel.prototype.set selectedCallFrame):
396         (WebInspector.DebuggerPresentationModel.prototype.get selectedCallFrame):
397         * inspector/front-end/ScriptsPanel.js:
398         (WebInspector.ScriptsPanel):
399         (WebInspector.ScriptsPanel.prototype.getCompletionsOnCallFrame):
400         (WebInspector.ScriptsPanel.prototype._debuggerResumed):
401         (WebInspector.ScriptsPanel.prototype._sourceFrameLoaded):
402         (WebInspector.ScriptsPanel.prototype._callFrameSelected):
403
404 2011-03-03  Jia Pu  <jpu@apple.com>
405
406         Reviewed by Darin Adler.
407
408         On Mac OS X, spelling suggestion panel stops showing up after change set 80121
409         https://bugs.webkit.org/show_bug.cgi?id=55628
410
411         Removed a call to stopCorrectionPanelTimer() to fix a regression introduced by changeset 80121.
412
413         * editing/Editor.cpp:
414         (WebCore::Editor::appliedEditing):
415         * manual-tests/autocorrection/autocorrection-contraction.html:
416
417 2011-03-03  Pavel Podivilov  <podivilov@chromium.org>
418
419         Reviewed by Pavel Feldman.
420
421         Web Inspector: rename "sourceName" to "sourceFileId" in ScriptsPanel.js.
422         https://bugs.webkit.org/show_bug.cgi?id=55569
423
424         sourceFileId better reflects the intention to have unique identifier for each source that is shown in scripts panel.
425
426         * inspector/front-end/DebuggerPresentationModel.js:
427         * inspector/front-end/ScriptsPanel.js:
428
429 2011-03-03  Steve Block  <steveblock@google.com>
430
431         Reviewed by David Levin.
432
433         JavaString API should be implementable by both JSC and V8
434         https://bugs.webkit.org/show_bug.cgi?id=55567
435
436         Remove JavaString's UString operator and replace it with a
437         script-engine-independent impl() method, which returns a
438         StringImpl and can be implemented with both JSC and V8.
439
440         No new tests, refactoring only. 
441
442         * bridge/jni/JNIBridge.h:
443         (JSC::Bindings::JavaString::impl):
444         * bridge/jni/jni_jsobject.mm:
445         (JavaJSObject::call):
446         (JavaJSObject::eval):
447         (JavaJSObject::getMember):
448         (JavaJSObject::setMember):
449         (JavaJSObject::removeMember):
450         * bridge/jni/jsc/JNIBridgeJSC.cpp:
451         (JavaField::valueFromInstance):
452         (JavaField::setValueToInstance):
453         * bridge/jni/jsc/JavaClassJSC.cpp:
454         (JavaClass::JavaClass):
455         * bridge/jni/jsc/JavaInstanceJSC.cpp:
456         (JavaInstance::invokeMethod):
457         * bridge/jni/jsc/JavaStringJSC.h:
458         (JSC::Bindings::JavaStringImpl::impl):
459         * bridge/jni/v8/JavaStringV8.h:
460         (JSC::Bindings::JavaStringImpl::impl):
461
462 2011-03-03  Benjamin Poulain  <ikipou@gmail.com>
463
464         Reviewed by Adam Roben.
465
466         REGRESSION (r79817): Lots of leaks of FloatingObjects seen on SnowLeopard Intel Leaks bot
467         https://bugs.webkit.org/show_bug.cgi?id=55602
468
469         Delete the FloatingObject referenced by m_floatingObjects when clearing the floats.
470
471         The DeprecatedPtrList was deleting the objects automatically due to its autoDelete behavior. The
472         objects need to be deleted manually with ListHashSet.
473
474         * rendering/RenderBlock.cpp:
475         (WebCore::RenderBlock::clearFloats):
476
477 2011-03-03  Hans Wennborg  <hans@chromium.org>
478
479         Reviewed by Jeremy Orlow.
480
481         IndexedDB: Move SQL code, especially for cursors, to IDBBackingStore
482         https://bugs.webkit.org/show_bug.cgi?id=55376
483
484         Move SQL code from IDBKey, IDBKeyRange, IDBIndexBackendImpl,
485         IDBObjectStoreBackendImpl, and especially IDBCursorBackendImpl.
486
487         No new functionality, so no new tests.
488
489         * storage/IDBBackingStore.cpp:
490         (WebCore::lowerCursorWhereFragment):
491         (WebCore::upperCursorWhereFragment):
492         (WebCore::IDBBackingStore::deleteObjectStoreRecord):
493         (WebCore::IDBBackingStore::keyExistsInObjectStore):
494         (WebCore::IDBBackingStore::getObjectViaIndex):
495         (WebCore::keyFromQuery):
496         (WebCore::IDBBackingStore::getPrimaryKeyViaIndex):
497         (WebCore::IDBBackingStore::keyExistsInIndex):
498         (WebCore::CursorImplCommon::CursorImplCommon::continueInternal):
499         (WebCore::CursorImplCommon::ObjectStoreCursorImpl::ObjectStoreCursorImpl):
500         (WebCore::CursorImplCommon::ObjectStoreCursorImpl::objectStoreDataId):
501         (WebCore::CursorImplCommon::ObjectStoreCursorImpl::key):
502         (WebCore::CursorImplCommon::ObjectStoreCursorImpl::value):
503         (WebCore::CursorImplCommon::ObjectStoreCursorImpl::continueFunction):
504         (WebCore::IDBBackingStore::openObjectStoreCursor):
505         (WebCore::ObjectStoreCursorImpl::loadCurrentRow):
506         (WebCore::ObjectStoreCursorImpl::currentRowExists):
507         (WebCore::IndexKeyCursorImpl::IndexKeyCursorImpl):
508         (WebCore::IndexKeyCursorImpl::indexDataId):
509         (WebCore::IndexKeyCursorImpl::key):
510         (WebCore::IndexKeyCursorImpl::primaryKey):
511         (WebCore::IndexKeyCursorImpl::continueFunction):
512         (WebCore::IDBBackingStore::openIndexKeyCursor):
513         (WebCore::IndexKeyCursorImpl::loadCurrentRow):
514         (WebCore::IndexKeyCursorImpl::currentRowExists):
515         (WebCore::IndexCursorImpl::IndexCursorImpl):
516         (WebCore::IndexCursorImpl::indexDataId):
517         (WebCore::IndexCursorImpl::key):
518         (WebCore::IndexCursorImpl::primaryKey):
519         (WebCore::IndexCursorImpl::value):
520         (WebCore::IndexCursorImpl::continueFunction):
521         (WebCore::IDBBackingStore::openIndexCursor):
522         (WebCore::IndexCursorImpl::loadCurrentRow):
523         (WebCore::IndexCursorImpl::currentRowExists):
524         * storage/IDBBackingStore.h:
525         (WebCore::IDBBackingStore::Cursor::~Cursor):
526         * storage/IDBCursorBackendImpl.cpp:
527         (WebCore::IDBCursorBackendImpl::IDBCursorBackendImpl):
528         (WebCore::IDBCursorBackendImpl::key):
529         (WebCore::IDBCursorBackendImpl::value):
530         (WebCore::IDBCursorBackendImpl::update):
531         (WebCore::IDBCursorBackendImpl::continueFunctionInternal):
532         (WebCore::IDBCursorBackendImpl::deleteFunction):
533         * storage/IDBCursorBackendImpl.h:
534         (WebCore::IDBCursorBackendImpl::create):
535         * storage/IDBIndexBackendImpl.cpp:
536         (WebCore::IDBIndexBackendImpl::openCursorInternal):
537         (WebCore::IDBIndexBackendImpl::getInternal):
538         (WebCore::IDBIndexBackendImpl::addingKeyAllowed):
539         * storage/IDBIndexBackendImpl.h:
540         * storage/IDBKey.cpp:
541         (WebCore::IDBKey::isEqual):
542         * storage/IDBKey.h:
543         * storage/IDBKeyRange.cpp:
544         * storage/IDBKeyRange.h:
545         * storage/IDBObjectStoreBackendImpl.cpp:
546         (WebCore::IDBObjectStoreBackendImpl::putInternal):
547         (WebCore::IDBObjectStoreBackendImpl::deleteInternal):
548         (WebCore::IDBObjectStoreBackendImpl::openCursorInternal):
549         * storage/IDBObjectStoreBackendImpl.h:
550
551 2011-03-03  Peter Kasting  <pkasting@google.com>
552
553         Reviewed by James Robinson.
554
555         Drop redundant "Windows; " from the Windows-specific User Agent string.
556         https://bugs.webkit.org/show_bug.cgi?id=54567
557
558         * StringsNotToBeLocalized.txt:
559
560 2011-03-03  Mario Sanchez Prada  <msanchez@igalia.com>
561
562         Reviewed by Martin Robinson.
563
564         [GTK] Combo boxes should emit object:selection-changed even when collapsed
565         https://bugs.webkit.org/show_bug.cgi?id=53146
566
567         Emit the selection-changed signals when the menu list value has changed
568
569         Test: platform/gtk/accessibility/combo-box-collapsed-selection-changed.html
570
571         * accessibility/gtk/AXObjectCacheAtk.cpp:
572         (WebCore::getListObject): New, return the right list object for
573         menu lists and list boxes.
574         (WebCore::notifyChildrenSelectionChange): Support menu lists.
575         (WebCore::AXObjectCache::postPlatformNotification): Call function
576         notifyChildrenSelectionChange for AXMenuListValueChanged.
577
578 2011-03-03  Ryosuke Niwa  <rniwa@webkit.org>
579
580         Reviewed by Tony Chang.
581
582         applyInlineStyleToPushDown and removeInlineStyleFromElement should take EditingStyle
583         https://bugs.webkit.org/show_bug.cgi?id=55338
584
585         Include wtf/Forward.h instead of wtf/text/String.h
586
587         * editing/EditingStyle.h:
588
589 2011-03-03  Csaba Osztrogonác  <ossy@webkit.org>
590
591         Unreviewed trivial fix after r80169.
592
593         [Qt][WK2] Memory exhausted when building qtwebkit2 on linux
594         https://bugs.webkit.org/show_bug.cgi?id=55484
595
596         * WebCore.pro: Typo fix. We have to use linux-g++* instead of linux-g++.
597
598
599 2011-03-02  MORITA Hajime  <morrita@google.com>
600
601         Reviewed by Kent Tamura.
602
603         [Refactoring] Make ScheduledEvent on FrameView abstract out to ScheduleAction
604         https://bugs.webkit.org/show_bug.cgi?id=54440
605
606         - Extracted FrameActionScheduler from FrameView
607         - Extracted FrameAction abstract class from ScheduledEvent,
608           which has fire() virtual method.
609         - Renamed ScheduledEvent EventFrameAction
610         
611         With this change, Any action can be hooked up to the end of the layout.
612         
613         No new tests. No behavioral change.
614
615         * Android.mk:
616         * CMakeLists.txt:
617         * GNUmakefile.am:
618         * WebCore.gypi:
619         * WebCore.pro:
620         * WebCore.vcproj/WebCore.vcproj:
621         * WebCore.xcodeproj/project.pbxproj:
622         * page/FrameActionScheduler.cpp: Added.
623         (WebCore::EventFrameAction::EventFrameAction):
624         (WebCore::EventFrameAction::fire):
625         (WebCore::FrameActionScheduler::FrameActionScheduler):
626         (WebCore::FrameActionScheduler::~FrameActionScheduler):
627         (WebCore::FrameActionScheduler::isEmpty):
628         (WebCore::FrameActionScheduler::clear):
629         (WebCore::FrameActionScheduler::pause):
630         (WebCore::FrameActionScheduler::resume):
631         (WebCore::FrameActionScheduler::dispatch):
632         (WebCore::FrameActionScheduler::scheduleAction):
633         (WebCore::FrameActionScheduler::scheduleEvent):
634         * page/FrameActionScheduler.h: Added.
635         (WebCore::FrameAction::FrameAction):
636         (WebCore::FrameAction::~FrameAction):
637         (WebCore::FrameActionScheduler::isScheduled):
638         * page/FrameView.cpp:
639         (WebCore::FrameView::FrameView):
640         (WebCore::FrameView::~FrameView):
641         (WebCore::FrameView::layout):
642         (WebCore::FrameView::scheduleEvent):
643         (WebCore::FrameView::pauseScheduledEvents):
644         (WebCore::FrameView::resumeScheduledEvents):
645         (WebCore::FrameView::performPostLayoutTasks):
646         (WebCore::FrameView::updateOverflowStatus):
647         * page/FrameView.h:
648
649 2011-03-02  Sheriff Bot  <webkit.review.bot@gmail.com>
650
651         Unreviewed, rolling out r80201.
652         http://trac.webkit.org/changeset/80201
653         https://bugs.webkit.org/show_bug.cgi?id=55648
654
655         "caused tests to crash on several bots" (Requested by rniwa on
656         #webkit).
657
658         * dom/Element.h:
659         (WebCore::Node::hasTagName):
660         * dom/Node.h:
661         * html/parser/HTMLConstructionSite.cpp:
662         (WebCore::HTMLNames::hasImpliedEndTag):
663         (WebCore::HTMLConstructionSite::insertHTMLHtmlStartTagInBody):
664         (WebCore::HTMLConstructionSite::insertComment):
665         (WebCore::HTMLConstructionSite::insertCommentOnHTMLHtmlElement):
666         (WebCore::HTMLConstructionSite::attachToCurrent):
667         (WebCore::HTMLConstructionSite::insertScriptElement):
668         (WebCore::HTMLConstructionSite::insertTextNode):
669         (WebCore::HTMLConstructionSite::createElement):
670         (WebCore::HTMLConstructionSite::createHTMLElement):
671         (WebCore::HTMLConstructionSite::generateImpliedEndTagsWithExclusion):
672         (WebCore::HTMLConstructionSite::generateImpliedEndTags):
673         (WebCore::HTMLConstructionSite::findFosterSite):
674         (WebCore::HTMLConstructionSite::shouldFosterParent):
675         * html/parser/HTMLConstructionSite.h:
676         * html/parser/HTMLElementStack.cpp:
677         (WebCore::HTMLNames::isNumberedHeaderElement):
678         (WebCore::HTMLNames::isScopeMarker):
679         (WebCore::HTMLNames::isListItemScopeMarker):
680         (WebCore::HTMLNames::isTableScopeMarker):
681         (WebCore::HTMLNames::isTableBodyScopeMarker):
682         (WebCore::HTMLNames::isTableRowScopeMarker):
683         (WebCore::HTMLNames::isButtonScopeMarker):
684         (WebCore::HTMLNames::isSelectScopeMarker):
685         (WebCore::HTMLElementStack::ElementRecord::ElementRecord):
686         (WebCore::HTMLElementStack::ElementRecord::replaceElement):
687         (WebCore::HTMLElementStack::HTMLElementStack):
688         (WebCore::HTMLElementStack::secondElementIsHTMLBodyElement):
689         (WebCore::HTMLElementStack::popAll):
690         (WebCore::HTMLElementStack::popUntilTableScopeMarker):
691         (WebCore::HTMLElementStack::popUntilTableBodyScopeMarker):
692         (WebCore::HTMLElementStack::popUntilTableRowScopeMarker):
693         (WebCore::HTMLElementStack::popUntilForeignContentScopeMarker):
694         (WebCore::HTMLElementStack::pushHTMLHtmlElement):
695         (WebCore::HTMLElementStack::push):
696         (WebCore::HTMLElementStack::insertAbove):
697         (WebCore::HTMLElementStack::find):
698         (WebCore::HTMLElementStack::topmost):
699         (WebCore::inScopeCommon):
700         (WebCore::HTMLElementStack::hasNumberedHeaderElementInScope):
701         (WebCore::HTMLElementStack::htmlElement):
702         (WebCore::HTMLElementStack::bodyElement):
703         (WebCore::HTMLElementStack::pushCommon):
704         * html/parser/HTMLElementStack.h:
705         (WebCore::HTMLElementStack::ElementRecord::element):
706         (WebCore::HTMLElementStack::top):
707         * html/parser/HTMLTreeBuilder.cpp:
708         (WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
709         (WebCore::HTMLTreeBuilder::FragmentParsingContext::finished):
710         (WebCore::HTMLTreeBuilder::processCloseWhenNestedTag):
711         (WebCore::HTMLTreeBuilder::processStartTagForInBody):
712         (WebCore::HTMLTreeBuilder::processColgroupEndTagForInColumnGroup):
713         (WebCore::HTMLTreeBuilder::processStartTag):
714         (WebCore::HTMLTreeBuilder::processAnyOtherEndTagForInBody):
715         (WebCore::HTMLTreeBuilder::callTheAdoptionAgency):
716         (WebCore::HTMLTreeBuilder::resetInsertionModeAppropriately):
717         (WebCore::HTMLTreeBuilder::processEndTagForInCell):
718         (WebCore::HTMLTreeBuilder::processEndTagForInBody):
719         (WebCore::HTMLTreeBuilder::processEndTag):
720         (WebCore::HTMLTreeBuilder::processEndOfFile):
721         (WebCore::HTMLTreeBuilder::finished):
722         * html/parser/HTMLTreeBuilder.h:
723
724 2011-03-02  Yury Semikhatsky  <yurys@chromium.org>
725
726         Reviewed by Pavel Feldman.
727
728         Web Inspector: break down InspectorFrontend into domain-specific classes
729         https://bugs.webkit.org/show_bug.cgi?id=55584
730
731         * inspector/CodeGeneratorInspector.pm: InspectorFrontend now contains nested classes for
732         all domains that have event notifications.
733         * inspector/ConsoleMessage.cpp:
734         (WebCore::ConsoleMessage::addToFrontend):
735         (WebCore::ConsoleMessage::updateRepeatCountInConsole):
736         * inspector/ConsoleMessage.h:
737         * inspector/InjectedScriptHost.cpp:
738         (WebCore::InjectedScriptHost::inspectImpl):
739         * inspector/Inspector.idl:
740         * inspector/InspectorAgent.cpp:
741         (WebCore::InspectorAgent::inspectedPageDestroyed):
742         (WebCore::InspectorAgent::restoreInspectorStateFromCookie):
743         (WebCore::InspectorAgent::setFrontend):
744         (WebCore::InspectorAgent::disconnectFrontend):
745         (WebCore::InspectorAgent::populateScriptObjects):
746         (WebCore::InspectorAgent::pushDataCollectedOffline):
747         (WebCore::InspectorAgent::didCommitLoad):
748         (WebCore::InspectorAgent::domContentLoadedEventFired):
749         (WebCore::InspectorAgent::loadEventFired):
750         (WebCore::InspectorAgent::postWorkerNotificationToFrontend):
751         (WebCore::InspectorAgent::evaluateForTestInFrontend):
752         (WebCore::InspectorAgent::showPanel):
753         * inspector/InspectorApplicationCacheAgent.cpp:
754         (WebCore::InspectorApplicationCacheAgent::InspectorApplicationCacheAgent):
755         * inspector/InspectorApplicationCacheAgent.h:
756         * inspector/InspectorConsoleAgent.cpp:
757         (WebCore::InspectorConsoleAgent::setFrontend):
758         * inspector/InspectorConsoleAgent.h:
759         * inspector/InspectorController.cpp:
760         (WebCore::InspectorController::show):
761         (WebCore::InspectorController::close):
762         * inspector/InspectorDOMAgent.cpp:
763         (WebCore::InspectorDOMAgent::setFrontend):
764         * inspector/InspectorDOMAgent.h:
765         * inspector/InspectorDOMStorageResource.cpp:
766         (WebCore::InspectorDOMStorageResource::bind):
767         * inspector/InspectorDOMStorageResource.h:
768         * inspector/InspectorDatabaseAgent.cpp:
769         (WebCore::InspectorDatabaseAgent::FrontendProvider::frontend):
770         (WebCore::InspectorDatabaseAgent::FrontendProvider::FrontendProvider):
771         (WebCore::InspectorDatabaseAgent::setFrontend):
772         * inspector/InspectorDatabaseResource.cpp:
773         (WebCore::InspectorDatabaseResource::bind):
774         * inspector/InspectorDatabaseResource.h:
775         * inspector/InspectorDebuggerAgent.cpp:
776         (WebCore::InspectorDebuggerAgent::setFrontend):
777         * inspector/InspectorDebuggerAgent.h:
778         * inspector/InspectorProfilerAgent.cpp:
779         * inspector/InspectorProfilerAgent.h:
780         (WebCore::InspectorProfilerAgent::setFrontend):
781         (WebCore::InspectorProfilerAgent::clearFrontend):
782         * inspector/InspectorResourceAgent.cpp:
783         (WebCore::InspectorResourceAgent::InspectorResourceAgent):
784         * inspector/InspectorResourceAgent.h:
785         * inspector/InspectorTimelineAgent.cpp:
786         (WebCore::InspectorTimelineAgent::setFrontend):
787         * inspector/InspectorTimelineAgent.h:
788         * inspector/front-end/DOMAgent.js:
789         (WebInspector.DOMDispatcher.prototype.inspectElementRequested):
790         (WebInspector.DOMDispatcher.prototype.addNodesToSearchResult):
791         * inspector/front-end/inspector.js:
792
793 2011-03-02  Kent Tamura  <tkent@chromium.org>
794
795         Unreviewed, a trivial regression fix.
796
797         Fix LocalizedNumberICU regression by r80198 and r80199.
798         https://bugs.webkit.org/show_bug.cgi?id=55629
799
800         * platform/text/LocalizedNumberICU.cpp:
801           We should use U_SUCCESS().
802         (WebCore::createFormatterForCurrentLocale):
803         (WebCore::parseLocalizedNumber):
804
805 2011-03-02  Dan Bernstein  <mitz@apple.com>
806
807         Let Xcode know that Localizable.strings is UTF-16-encoded.
808
809         * WebCore.xcodeproj/project.pbxproj:
810
811 2011-03-02  Andy Estes  <aestes@apple.com>
812
813         Reviewed by Eric Seidel.
814
815         HTML5 TreeBuilder regressed a Peacekeeper DOM test by 25% (was 40%)
816         https://bugs.webkit.org/show_bug.cgi?id=48719
817         
818         Instead of pushing a fake HTMLHtmlElement onto the open element stack
819         during fragment parsing only to later remove it and reparent its
820         children to the DocumentFragment, push the DocumentFragment directly
821         onto the open element stack as the root node. This requires refactoring
822         HTMLElementStack to hold ContainerNode pointers rather than Element
823         pointers, which has implications for HTMLConstructionSite and
824         HTMLTreeBuilder as well.
825         
826         With this patch, the regression in Peacekeeper due to the introduction
827         of the HTML5 fragment parsing algorithm is ~14%. The regression from
828         Safari 5.0.3 is ~24%.
829
830         No new tests. No change in behavior.
831
832         * dom/Element.h:
833         (WebCore::Node::hasLocalName):
834         * dom/Node.h:
835         * html/parser/HTMLConstructionSite.cpp:
836         (WebCore::HTMLNames::hasImpliedEndTag):
837         (WebCore::HTMLConstructionSite::HTMLConstructionSite):
838         (WebCore::HTMLConstructionSite::insertHTMLHtmlStartTagInBody):
839         (WebCore::HTMLConstructionSite::insertComment):
840         (WebCore::HTMLConstructionSite::insertCommentOnHTMLHtmlElement):
841         (WebCore::HTMLConstructionSite::attachToCurrent):
842         (WebCore::HTMLConstructionSite::insertScriptElement):
843         (WebCore::HTMLConstructionSite::insertTextNode):
844         (WebCore::HTMLConstructionSite::createElement):
845         (WebCore::HTMLConstructionSite::createHTMLElement):
846         (WebCore::HTMLConstructionSite::generateImpliedEndTagsWithExclusion):
847         (WebCore::HTMLConstructionSite::generateImpliedEndTags):
848         (WebCore::HTMLConstructionSite::findFosterSite):
849         (WebCore::HTMLConstructionSite::shouldFosterParent):
850         * html/parser/HTMLConstructionSite.h:
851         (WebCore::HTMLConstructionSite::currentNode):
852         * html/parser/HTMLElementStack.cpp:
853         (WebCore::HTMLNames::isNumberedHeaderElement):
854         (WebCore::HTMLNames::isScopeMarker):
855         (WebCore::HTMLNames::isListItemScopeMarker):
856         (WebCore::HTMLNames::isTableScopeMarker):
857         (WebCore::HTMLNames::isTableBodyScopeMarker):
858         (WebCore::HTMLNames::isTableRowScopeMarker):
859         (WebCore::HTMLNames::isButtonScopeMarker):
860         (WebCore::HTMLNames::isSelectScopeMarker):
861         (WebCore::HTMLElementStack::ElementRecord::ElementRecord):
862         (WebCore::HTMLElementStack::ElementRecord::replaceElement):
863         (WebCore::HTMLElementStack::HTMLElementStack):
864         (WebCore::HTMLElementStack::secondElementIsHTMLBodyElement):
865         (WebCore::HTMLElementStack::popAll):
866         (WebCore::HTMLElementStack::popUntilNumberedHeaderElementPopped):
867         (WebCore::HTMLElementStack::popUntil):
868         (WebCore::HTMLElementStack::popUntilPopped):
869         (WebCore::HTMLElementStack::popUntilTableScopeMarker):
870         (WebCore::HTMLElementStack::popUntilTableBodyScopeMarker):
871         (WebCore::HTMLElementStack::popUntilTableRowScopeMarker):
872         (WebCore::HTMLElementStack::pushHTMLHtmlElement):
873         (WebCore::HTMLElementStack::push):
874         (WebCore::HTMLElementStack::insertAbove):
875         (WebCore::HTMLElementStack::find):
876         (WebCore::HTMLElementStack::topmost):
877         (WebCore::HTMLElementStack::contains):
878         (WebCore::inScopeCommon):
879         (WebCore::HTMLElementStack::hasNumberedHeaderElementInScope):
880         (WebCore::HTMLElementStack::htmlElement):
881         (WebCore::HTMLElementStack::rootNode):
882         (WebCore::HTMLElementStack::pushCommon):
883         * html/parser/HTMLElementStack.h:
884         (WebCore::HTMLElementStack::ElementRecord::element):
885         (WebCore::HTMLElementStack::ElementRecord::node):
886         (WebCore::HTMLElementStack::topNode):
887         * html/parser/HTMLTreeBuilder.cpp:
888         (WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
889         (WebCore::HTMLTreeBuilder::processCloseWhenNestedTag):
890         (WebCore::HTMLTreeBuilder::processStartTagForInBody):
891         (WebCore::HTMLTreeBuilder::processColgroupEndTagForInColumnGroup):
892         (WebCore::HTMLTreeBuilder::processStartTag):
893         (WebCore::HTMLTreeBuilder::processAnyOtherEndTagForInBody):
894         (WebCore::HTMLTreeBuilder::callTheAdoptionAgency):
895         (WebCore::HTMLTreeBuilder::resetInsertionModeAppropriately):
896         (WebCore::HTMLTreeBuilder::processEndTagForInCell):
897         (WebCore::HTMLTreeBuilder::processEndTagForInBody):
898         (WebCore::HTMLTreeBuilder::processEndTag):
899         (WebCore::HTMLTreeBuilder::processEndOfFile):
900         (WebCore::HTMLTreeBuilder::finished):
901         * html/parser/HTMLTreeBuilder.h:
902
903 2011-03-02  Sheriff Bot  <webkit.review.bot@gmail.com>
904
905         Unreviewed, rolling out r80188.
906         http://trac.webkit.org/changeset/80188
907         https://bugs.webkit.org/show_bug.cgi?id=55647
908
909         Broke the WebKit API tests. (Requested by xenon on #webkit).
910
911         * WebCore.exp.in:
912
913 2011-03-02  Kent Tamura  <tkent@chromium.org>
914
915         Unreviewed, build fix.
916
917         * platform/text/LocalizedNumberICU.cpp:
918         (WebCore::createFormatterForCurrentLocale): Fix a typo.
919
920 2011-03-02  Kent Tamura  <tkent@chromium.org>
921
922         Reviewed by Darin Adler.
923
924         Caching number formatter instances in LocalizedNumber* implementations
925         https://bugs.webkit.org/show_bug.cgi?id=55629
926
927         No new tests. This change doesn't change existing behavior, and is
928         covered by existing tests.
929
930         * platform/text/LocalizedNumberICU.cpp:
931         (WebCore::createFormatterForCurrentLocale):
932         (WebCore::numberFormatter): Introduce a function to return a static
933           instance of NumberFormat.
934         (WebCore::parseLocalizedNumber): Use numberFormatter().
935         (WebCore::formatLocalizedNumber): Use numberFormatter().
936         * platform/text/mac/LocalizedNumberMac.mm:
937         (WebCore::createFormatterForCurrentLocale):
938         (WebCore::numberFormatter): Introduce a function to return a static
939           instance of NSNumberFormatter.
940         (WebCore::parseLocalizedNumber): Use numberFormatter().
941         (WebCore::formatLocalizedNumber): Use numberFormatter().
942
943 2011-03-02  Levi Weintraub  <leviw@chromium.org>
944
945         Reviewed by Ryosuke Niwa.
946
947         deprecatedEditingOffset should actually return the expected deprecated value for "after" positions
948         https://bugs.webkit.org/show_bug.cgi?id=54986
949
950         Calls to deprecatedEditingOffset needs to return the expected value for new Before/After positions
951         until we can update all the call sites to consider the new position types.
952
953         No tests. This is intended to simplify the transition to new Positions, not to change behavior.
954
955         * dom/Position.cpp:
956         (WebCore::Position::deprecatedEditingOffset):
957         (WebCore::Position::offsetForPositionAfterAnchor): Added to do the right thing while ensuring
958         inline-speed for most calls to deprecatedEditingOffset.
959         * dom/Position.h:
960
961 2011-03-02  Timothy Hatcher  <timothy@apple.com>
962
963         Export SerializedScriptValue::create(JSC::ExecState* exec, JSC::JSValue value).
964
965         Reviewed by Darin Adler.
966
967         * WebCore.exp.in: Added __ZN7WebCore21SerializedScriptValue6createEPN3JSC9ExecStateENS1_7JSValueE.
968
969 2011-03-02  Daniel Cheng  <dcheng@chromium.org>
970
971         Reviewed by David Levin.
972
973         Manually revert ChromiumDataObject changes.
974         https://bugs.webkit.org/show_bug.cgi?id=55627
975
976         No new tests since no functionality should change.
977
978         * WebCore.gypi:
979         * editing/chromium/EditorChromium.cpp:
980         (WebCore::Editor::newGeneralClipboard):
981         * page/chromium/EventHandlerChromium.cpp:
982         (WebCore::EventHandler::createDraggingClipboard):
983         * platform/chromium/ChromiumDataObject.cpp:
984         (WebCore::ChromiumDataObject::clearData):
985         (WebCore::ChromiumDataObject::clearAll):
986         (WebCore::ChromiumDataObject::clearAllExceptFiles):
987         (WebCore::ChromiumDataObject::hasData):
988         (WebCore::ChromiumDataObject::types):
989         (WebCore::ChromiumDataObject::getData):
990         (WebCore::ChromiumDataObject::setData):
991         (WebCore::ChromiumDataObject::ChromiumDataObject):
992         * platform/chromium/ChromiumDataObject.h:
993         (WebCore::ChromiumDataObject::create):
994         (WebCore::ChromiumDataObject::copy):
995         (WebCore::ChromiumDataObject::urlTitle):
996         (WebCore::ChromiumDataObject::setUrlTitle):
997         (WebCore::ChromiumDataObject::htmlBaseUrl):
998         (WebCore::ChromiumDataObject::setHtmlBaseUrl):
999         (WebCore::ChromiumDataObject::containsFilenames):
1000         (WebCore::ChromiumDataObject::filenames):
1001         (WebCore::ChromiumDataObject::setFilenames):
1002         (WebCore::ChromiumDataObject::fileExtension):
1003         (WebCore::ChromiumDataObject::setFileExtension):
1004         (WebCore::ChromiumDataObject::fileContentFilename):
1005         (WebCore::ChromiumDataObject::setFileContentFilename):
1006         (WebCore::ChromiumDataObject::fileContent):
1007         (WebCore::ChromiumDataObject::setFileContent):
1008         * platform/chromium/ClipboardChromium.cpp:
1009         * platform/chromium/ClipboardChromium.h:
1010
1011 2011-03-02  David Grogan  <dgrogan@chromium.org>
1012
1013         Reviewed by Jeremy Orlow.
1014
1015         IndexedDB: fire versionchange events when calling setVersion
1016         https://bugs.webkit.org/show_bug.cgi?id=55095
1017
1018         * dom/EventNames.h:
1019         * storage/IDBDatabase.cpp:
1020         (WebCore::IDBDatabase::setVersion):
1021         (WebCore::IDBDatabase::close):
1022         (WebCore::IDBDatabase::onVersionChange):
1023         (WebCore::IDBDatabase::open):
1024         (WebCore::IDBDatabase::enqueueEvent):
1025         (WebCore::IDBDatabase::dispatchEvent):
1026         * storage/IDBDatabase.h:
1027         (WebCore::IDBDatabase::dispatchEvent):
1028         * storage/IDBDatabase.idl:
1029         * storage/IDBDatabaseBackendImpl.cpp:
1030         (WebCore::IDBDatabaseBackendImpl::PendingSetVersionCall::create):
1031         (WebCore::IDBDatabaseBackendImpl::PendingSetVersionCall::databaseCallbacks):
1032         (WebCore::IDBDatabaseBackendImpl::PendingSetVersionCall::PendingSetVersionCall):
1033         (WebCore::IDBDatabaseBackendImpl::IDBDatabaseBackendImpl):
1034         (WebCore::IDBDatabaseBackendImpl::setVersion):
1035         (WebCore::IDBDatabaseBackendImpl::open):
1036         (WebCore::IDBDatabaseBackendImpl::close):
1037         * storage/IDBDatabaseBackendImpl.h:
1038         * storage/IDBDatabaseBackendInterface.h:
1039         * storage/IDBDatabaseCallbacks.h: Copied from Source/WebCore/storage/IDBVersionChangeEvent.cpp.
1040         (WebCore::IDBDatabaseCallbacks::~IDBDatabaseCallbacks):
1041         * storage/IDBFactoryBackendImpl.cpp:
1042         (WebCore::IDBFactoryBackendImpl::open):
1043         * storage/IDBRequest.cpp:
1044         (WebCore::IDBRequest::onSuccess):
1045         * storage/IDBVersionChangeEvent.cpp:
1046         (WebCore::IDBVersionChangeEvent::create):
1047         (WebCore::IDBVersionChangeEvent::IDBVersionChangeEvent):
1048         * storage/IDBVersionChangeEvent.h:
1049         * storage/IDBVersionChangeRequest.cpp:
1050         (WebCore::IDBVersionChangeRequest::onBlocked):
1051
1052 2011-03-02  Alexey Proskuryakov  <ap@apple.com>
1053
1054         Fix assertion failures on Gtk bot.
1055
1056         * page/EventHandler.cpp: (WebCore::EventHandler::tabsToLinks): Removed an overzealous
1057         assertion. We can get here with non-Tab key events when spatial navigation is enabled.
1058
1059 2011-03-02  Sheriff Bot  <webkit.review.bot@gmail.com>
1060
1061         Unreviewed, rolling out r80139.
1062         http://trac.webkit.org/changeset/80139
1063         https://bugs.webkit.org/show_bug.cgi?id=55620
1064
1065         failing and crashing tests on Snow Leopard bot (Requested by
1066         mihaip1 on #webkit).
1067
1068         * page/DOMWindow.cpp:
1069         * page/DOMWindow.h:
1070         * page/Frame.cpp:
1071         (WebCore::Frame::pageDestroyed):
1072         (WebCore::Frame::transferChildFrameToNewDocument):
1073         * page/Frame.h:
1074         (WebCore::Frame::detachFromPage):
1075         * page/Geolocation.cpp:
1076         (WebCore::Geolocation::~Geolocation):
1077         (WebCore::Geolocation::disconnectFrame):
1078         (WebCore::Geolocation::lastPosition):
1079         (WebCore::Geolocation::requestPermission):
1080         (WebCore::Geolocation::startUpdating):
1081         (WebCore::Geolocation::stopUpdating):
1082         * page/Geolocation.h:
1083         * page/GeolocationController.cpp:
1084         (WebCore::GeolocationController::~GeolocationController):
1085         * page/Navigator.cpp:
1086         * page/Navigator.h:
1087         * platform/mock/GeolocationClientMock.cpp:
1088         * platform/mock/GeolocationClientMock.h:
1089
1090 2011-03-02  Jessie Berlin  <jberlin@apple.com>
1091
1092         Reviewed by Adam Roben.
1093
1094         WebKit2: Use CFNetwork Sessions API.
1095         https://bugs.webkit.org/show_bug.cgi?id=55435
1096
1097         Add the ability to create a Private Browsing Storage Session.
1098
1099         * WebCore.exp.in:
1100         Export the symbol for ResourceHandle::setPrivateBrowsingStorageSessionIdentifierBase.
1101
1102         * page/Settings.cpp:
1103         (WebCore::Settings::setPrivateBrowsingEnabled):
1104         Propagate the private browsing state to the ResourceHandle.
1105
1106         * platform/mac/WebCoreSystemInterface.h:
1107         Add the function declaration for wkCreatePrivateStorageSession.
1108         * platform/mac/WebCoreSystemInterface.mm:
1109
1110         * platform/network/ResourceHandle.cpp:
1111         (WebCore::privateStorageSession):
1112         Since the same Private Browsing Storage Session will need to be accessed throughout the loading
1113         code and will need to be used by all web pages and page groups, make it a global static.
1114         (WebCore::privateBrowsingStorageSessionIdentifierBase):
1115         Ditto, since the identifier is needed to create the Private Browsing Storage Session.
1116         (WebCore::ResourceHandle::setPrivateBrowsingEnabled):
1117         If enabled, create and store the Private Browsing Storage Session.
1118         (WebCore::ResourceHandle::privateBrowsingStorageSession):
1119         (WebCore::ResourceHandle::setPrivateBrowsingStorageSessionIdentifierBase):
1120         * platform/network/ResourceHandle.h:
1121
1122         * platform/network/cf/ResourceHandleCFNet.cpp:
1123         (WebCore::ResourceHandle::createPrivateBrowsingStorageSession):
1124         The call to wkCreatePrivateStorageSession needs to be in a file including the correct
1125         version of WKSI.
1126         (WebCore::ResourceHandle::privateBrowsingStorageSessionIdentifierDefaultBase):
1127         Return the bundle identifier.
1128         * platform/network/mac/ResourceHandleMac.mm:
1129         (WebCore::ResourceHandle::createPrivateBrowsingStorageSession):
1130         The call to wkCreatePrivateStorageSession needs to be in a file importing the correct
1131         version of WKSI.
1132         (WebCore::ResourceHandle::privateBrowsingStorageSessionIdentifierDefaultBase):
1133         Return the bundle identifier.
1134
1135 2011-03-02  Daniel Cheng  <dcheng@chromium.org>
1136
1137         Revert frame-specific WebClipboard changes
1138         https://bugs.webkit.org/show_bug.cgi?id=55617
1139
1140         This code is no longer needed since we've decided to use the original
1141         approach to copy/paste drag/drop handling in ClipboardChromium.
1142
1143         No new tests because no functionality changes.
1144
1145         * platform/chromium/ChromiumDataObject.cpp:
1146         (WebCore::ChromiumDataObject::createReadable):
1147         * platform/chromium/ChromiumDataObject.h:
1148         * platform/chromium/ClipboardChromium.cpp:
1149         (WebCore::ClipboardChromium::create):
1150         * platform/chromium/PlatformBridge.h:
1151         * platform/chromium/ReadableDataObject.cpp:
1152         (WebCore::ReadableDataObject::create):
1153         (WebCore::ReadableDataObject::ReadableDataObject):
1154         (WebCore::ReadableDataObject::getData):
1155         (WebCore::ReadableDataObject::urlTitle):
1156         (WebCore::ReadableDataObject::htmlBaseUrl):
1157         (WebCore::ReadableDataObject::filenames):
1158         (WebCore::ReadableDataObject::ensureTypeCacheInitialized):
1159         * platform/chromium/ReadableDataObject.h:
1160
1161 2011-03-02  Tony Chang  <tony@chromium.org>
1162
1163         Unreviewed, rolling chromium DEPS to r76362.
1164
1165         https://bugs.webkit.org/show_bug.cgi?id=55564
1166
1167         * WebCore.gyp/WebCore.gyp: Switch to libjpeg_turbo to match chromium
1168
1169 2011-03-02  Alexey Proskuryakov  <ap@apple.com>
1170
1171         Build fix.
1172
1173         * page/ChromeClient.h: (WebCore::ChromeClient::keyboardUIMode): I didn't mean to commit these
1174         changes yet.
1175
1176 2011-03-02  Alexey Proskuryakov  <ap@apple.com>
1177
1178         Reviewed by John Sullivan.
1179
1180         Clean up WebCore tabsToLinks code a little
1181         https://bugs.webkit.org/show_bug.cgi?id=55606
1182
1183         No change in behavior, so no tests.
1184
1185         * html/HTMLFormControlElement.cpp: (WebCore::HTMLFormControlElement::isKeyboardFocusable):
1186         This is the only caller of tabsToAllControls(). Renamed this function to tabsToAllFormControls().
1187
1188         * page/EventHandler.cpp:
1189         (WebCore::EventHandler::isKeyboardOptionTab): Moved from platform specific files. This
1190         function cannot be file static, because EventHandlerMac.mm uses it.
1191         (WebCore::eventInvertsTabsToLinksClientCallResult): Merged implementations from platform
1192         specific files. We can just as well have #if here. Renamed for clarity.
1193         (WebCore::EventHandler::tabsToLinks): Rewrote in a way that makes it clearer how "invert"
1194         works.
1195         
1196         * page/EventHandler.h: We no longer need invertSenseOfTabsToLinks() here, it's only used
1197         in EventHandler.cpp.
1198
1199         * page/android/EventHandlerAndroid.cpp: (WebCore::EventHandler::tabsToAllFormControls):
1200         * page/brew/EventHandlerBrew.cpp: (WebCore::EventHandler::tabsToAllFormControls):
1201         * page/chromium/EventHandlerChromium.cpp: (WebCore::EventHandler::tabsToAllFormControls):
1202         * page/efl/EventHandlerEfl.cpp: (WebCore::EventHandler::tabsToAllFormControls):
1203         * page/gtk/EventHandlerGtk.cpp: (WebCore::EventHandler::tabsToAllFormControls):
1204         * page/haiku/EventHandlerHaiku.cpp: (WebCore::EventHandler::tabsToAllFormControls):
1205         * page/mac/EventHandlerMac.mm: (WebCore::EventHandler::tabsToAllFormControls):
1206         * page/qt/EventHandlerQt.cpp: (WebCore::EventHandler::tabsToAllFormControls):
1207         * page/win/EventHandlerWin.cpp: (WebCore::EventHandler::tabsToAllFormControls):
1208         * page/wx/EventHandlerWx.cpp: (WebCore::EventHandler::tabsToAllFormControls):
1209         Updating all port files.
1210
1211 2011-02-28  Jeremy Orlow  <jorlow@chromium.org>
1212
1213         Reviewed by James Robinson.
1214
1215         Split IDBCursor.value into IDBCursor.primaryKey and IDBCursor.value
1216         https://bugs.webkit.org/show_bug.cgi?id=55443
1217
1218         Implement http://www.w3.org/Bugs/Public/show_bug.cgi?id=11948
1219
1220         The idea is to have an IDBCursor and an IDBCursorWithValue interface which
1221         inherits from the former.  index.openKeyCursor will return the former and
1222         index/objectStore.openCursor will return the latter.  We'll add a primaryKey
1223         attribute to IDBCursor.  It will always be the key of the associated object
1224         store entry.  For index.openCursor cursors, the key attribute will be the key
1225         of the index.  For objectStore.openCursors, it'll be the same as the
1226         primaryKey.  The value will be the value of the objectStore entry.
1227
1228         * WebCore.gypi:
1229         * bindings/scripts/CodeGeneratorV8.pm:
1230         * bindings/v8/SerializedScriptValue.cpp:
1231         (WebCore::SerializedScriptValue::deserializeAndSetProperty):
1232         * bindings/v8/SerializedScriptValue.h:
1233         * bindings/v8/custom/V8IDBAnyCustom.cpp:
1234         (WebCore::toV8):
1235         * storage/IDBAny.cpp:
1236         (WebCore::IDBAny::idbCursorWithValue):
1237         (WebCore::IDBAny::set):
1238         * storage/IDBAny.h:
1239         * storage/IDBCursor.cpp:
1240         (WebCore::IDBCursor::create):
1241         (WebCore::IDBCursor::primaryKey):
1242         (WebCore::IDBCursor::value):
1243         * storage/IDBCursor.h:
1244         * storage/IDBCursor.idl:
1245         * storage/IDBCursorBackendImpl.cpp:
1246         (WebCore::IDBCursorBackendImpl::IDBCursorBackendImpl):
1247         (WebCore::IDBCursorBackendImpl::primaryKey):
1248         (WebCore::IDBCursorBackendImpl::value):
1249         (WebCore::IDBCursorBackendImpl::update):
1250         (WebCore::IDBCursorBackendImpl::currentRowExists):
1251         (WebCore::IDBCursorBackendImpl::continueFunctionInternal):
1252         (WebCore::IDBCursorBackendImpl::deleteFunction):
1253         (WebCore::IDBCursorBackendImpl::loadCurrentRow):
1254         * storage/IDBCursorBackendImpl.h:
1255         (WebCore::IDBCursorBackendImpl::create):
1256         * storage/IDBCursorBackendInterface.h:
1257         * storage/IDBCursorWithValue.cpp: Copied from Source/WebCore/storage/IDBCursor.idl.
1258         (WebCore::IDBCursorWithValue::create):
1259         (WebCore::IDBCursorWithValue::IDBCursorWithValue):
1260         (WebCore::IDBCursorWithValue::~IDBCursorWithValue):
1261         * storage/IDBCursorWithValue.h: Copied from Source/WebCore/storage/IDBCursorBackendInterface.h.
1262         * storage/IDBCursorWithValue.idl: Copied from Source/WebCore/storage/IDBCursor.idl.
1263         * storage/IDBIndex.cpp:
1264         (WebCore::IDBIndex::openCursor):
1265         (WebCore::IDBIndex::openKeyCursor):
1266         * storage/IDBIndexBackendImpl.cpp:
1267         (WebCore::IDBIndexBackendImpl::openCursorInternal):
1268         (WebCore::IDBIndexBackendImpl::openCursor):
1269         (WebCore::IDBIndexBackendImpl::openKeyCursor):
1270         * storage/IDBIndexBackendImpl.h:
1271         * storage/IDBObjectStore.cpp:
1272         (WebCore::IDBObjectStore::openCursor):
1273         * storage/IDBObjectStoreBackendImpl.cpp:
1274         (WebCore::IDBObjectStoreBackendImpl::openCursorInternal):
1275         * storage/IDBRequest.cpp:
1276         (WebCore::IDBRequest::IDBRequest):
1277         (WebCore::IDBRequest::setCursorType):
1278         (WebCore::IDBRequest::onSuccess):
1279         (WebCore::IDBRequest::dispatchEvent):
1280         * storage/IDBRequest.h:
1281
1282 2011-03-02  Aravind Akella  <aravind.akella@nokia.com>
1283
1284          Reviewed by Csaba Osztrogonác.
1285
1286          [Qt][WK2] Memory exhausted when building qtwebkit2 on linux
1287          https://bugs.webkit.org/show_bug.cgi?id=55484
1288
1289          Using AllInOne files to avoid memory exhaustion for debug 
1290          builds on 32 bit linux machines.
1291
1292          No new tests. Fixing a build issue.
1293
1294          * WebCore.pro:
1295
1296 2011-03-02  Daniel Cheng  <dcheng@chromium.org>
1297
1298         Reviewed by David Levin.
1299
1300         Add feature define for data transfer items
1301         https://bugs.webkit.org/show_bug.cgi?id=55510
1302
1303         * Configurations/FeatureDefines.xcconfig:
1304         * GNUmakefile.am:
1305         * features.pri:
1306
1307 2011-03-02  Dimitri Glazkov  <dglazkov@chromium.org>
1308
1309         Update location of media-file.js, which was moved in r79630.
1310
1311         * manual-tests/media-controls.html: Updated location.
1312
1313 2011-03-02  Sheriff Bot  <webkit.review.bot@gmail.com>
1314
1315         Unreviewed, rolling out r80156.
1316         http://trac.webkit.org/changeset/80156
1317         https://bugs.webkit.org/show_bug.cgi?id=55604
1318
1319         "Broke SL compile" (Requested by tonyg-cr on #webkit).
1320
1321         * bridge/jni/JNIBridge.h:
1322         (JSC::Bindings::JavaString::operator UString):
1323         * bridge/jni/jni_jsobject.mm:
1324         (JavaJSObject::call):
1325         (JavaJSObject::eval):
1326         (JavaJSObject::getMember):
1327         (JavaJSObject::setMember):
1328         (JavaJSObject::removeMember):
1329         * bridge/jni/jsc/JavaClassJSC.cpp:
1330         (JavaClass::JavaClass):
1331         * bridge/jni/jsc/JavaStringJSC.h:
1332         (JSC::Bindings::JavaStringImpl::uString):
1333         * bridge/jni/v8/JavaStringV8.h:
1334
1335 2011-03-02  Steve Block  <steveblock@google.com>
1336
1337         Reviewed by Jeremy Orlow.
1338
1339         JavaString API should be implementable by both JSC and V8
1340         https://bugs.webkit.org/show_bug.cgi?id=55567
1341
1342         Remove JavaString's UString operator and replace it with a
1343         script-engine-independent impl() method, which returns a
1344         StringImpl and can be implemented with both JSC and V8.
1345
1346         No new tests, refactoring only.
1347
1348         * bridge/jni/JNIBridge.h:
1349         (JSC::Bindings::JavaString::impl):
1350         * bridge/jni/jni_jsobject.mm:
1351         (JavaJSObject::call):
1352         (JavaJSObject::eval):
1353         (JavaJSObject::getMember):
1354         (JavaJSObject::setMember):
1355         (JavaJSObject::removeMember):
1356         * bridge/jni/jsc/JavaClassJSC.cpp:
1357         (JavaClass::JavaClass):
1358         * bridge/jni/jsc/JavaStringJSC.h:
1359         (JSC::Bindings::JavaStringImpl::impl):
1360         * bridge/jni/v8/JavaStringV8.h:
1361         (JSC::Bindings::JavaStringImpl::impl):
1362
1363 2011-03-02  Mihai Parparita  <mihaip@chromium.org>
1364
1365         Reviewed by Dimitri Glazkov.
1366
1367         Add CRASH() for CSSSelector double frees
1368         https://bugs.webkit.org/show_bug.cgi?id=55596
1369         
1370         To help track down bug 53045, add a CRASH call when the CSSSelector
1371         destructor is invoked more than once.
1372
1373         Just a check, no new tests necessary.
1374
1375         * css/CSSSelector.h:
1376         (WebCore::CSSSelector::CSSSelector):
1377         (WebCore::CSSSelector::~CSSSelector):
1378
1379 2011-03-02  Carol Szabo  <carol.szabo@nokia.com>
1380
1381         Reviewed by David Hyatt  <hyatt@apple.com>
1382
1383         content property doesn't support quotes
1384         https://bugs.webkit.org/show_bug.cgi?id=6503
1385
1386         Added full support for quotes as defined by CSS 2.1.
1387
1388         Tests: fast/css/content/content-quotes-01.html
1389                fast/css/content/content-quotes-02.html
1390                fast/css/content/content-quotes-03.html
1391                fast/css/content/content-quotes-04.html
1392                fast/css/content/content-quotes-05.html
1393                fast/css/content/content-quotes-06.html
1394
1395         * Android.mk:
1396         * CMakeLists.txt:
1397         * GNUmakefile.am:
1398         * WebCore.gypi:
1399         * WebCore.pro:
1400         * WebCore.vcproj/WebCore.vcproj:
1401         * WebCore.xcodeproj/project.pbxproj:
1402         Added RenderQuote.cpp/h and QuotesData.cpp/h to the dependency lists
1403         * css/CSSParser.cpp:
1404         (WebCore::CSSParser::parseValue):
1405         (WebCore::CSSParser::parseQuotes):
1406         * css/CSSParser.h:
1407         Added needed stylesheet parsing support for quotes,
1408         (no-)open-quote and (no-)close-quote
1409         * css/CSSStyleSelector.cpp:
1410         (WebCore::CSSStyleSelector::applyProperty):
1411         Handled setting of the new quotes RenderStyle property and added
1412         handling of quotes for the content property.
1413         * css/html.css:
1414         (q:before):
1415         (q:after):
1416         replaced the '"' workaround with open/close-quote
1417         * rendering/RenderBlockLineLayout.cpp:
1418         (WebCore::dirtyLineBoxesForRenderer):
1419         Made RenderQuote behave like RenderCounter.
1420         Needed to ensure that the Quote text is calculated before layout,
1421         just as it is for RenderCounter.
1422         * rendering/RenderObject.h:
1423         (WebCore::RenderObject::isQuote):
1424         * rendering/RenderObjectChildList.cpp:
1425         (WebCore::RenderObjectChildList::removeChildNode):
1426         (WebCore::RenderObjectChildList::appendChildNode):
1427         (WebCore::RenderObjectChildList::insertChildNode):
1428         Handled updating of quote depth when renderers are added and removed
1429         from the tree.
1430         (WebCore::RenderObjectChildList::updateBeforeAfterContent):
1431         Added support for Quote content.
1432         * rendering/RenderQuote.cpp: Added.
1433         (WebCore::adjustDepth):
1434         (WebCore::RenderQuote::RenderQuote):
1435         (WebCore::RenderQuote::~RenderQuote):
1436         (WebCore::RenderQuote::renderName):
1437         (WebCore::RenderQuote::placeQuote):
1438         (WebCore::LanguageData::operator<):
1439         (WebCore::defaultLanguageQuotes):
1440         (WebCore::quotesMap):
1441         (WebCore::quotesForLanguage):
1442         (WebCore::defaultQuotes):
1443         (WebCore::RenderQuote::originalText):
1444         (WebCore::RenderQuote::computePreferredLogicalWidths):
1445         (WebCore::RenderQuote::rendererSubtreeAttached):
1446         (WebCore::RenderQuote::rendererRemovedFromTree):
1447         (WebCore::RenderQuote::styleDidChange):
1448         * rendering/RenderQuote.h: Added.
1449         (WebCore::RenderQuote::isQuote):
1450         (WebCore::toRenderQuote):
1451         * rendering/RenderingAllInOne.cpp:
1452         Included RenderQuote.cpp
1453         * rendering/style/StyleAllInOne.cpp:
1454         Included QuotesData.cpp
1455         * rendering/style/ContentData.cpp:
1456         (WebCore::ContentData::dataEquivalent):
1457         Checked for quotetype identity.
1458         (WebCore::ContentData::deleteContent):
1459         Accounted for the new QUOTE_TYPE.
1460         * rendering/style/ContentData.h:
1461         (WebCore::ContentData::isQuote):
1462         (WebCore::ContentData::quote):
1463         (WebCore::ContentData::setQuote):
1464         * rendering/style/QuotesData.cpp: Added.
1465         (WebCore::QuotesData::create):
1466         (WebCore::QuotesData::operator==):
1467         (WebCore::QuotesData::~QuotesData):
1468         * rendering/style/QuotesData.h: Added.
1469         (WebCore::QuotesData::data):
1470         (WebCore::QuotesData::operator delete):
1471         (WebCore::QuotesData::QuotesData):
1472         * rendering/style/RenderStyle.cpp:
1473         (WebCore::RenderStyle::setContent):
1474         (WebCore::RenderStyle::setQuotes):
1475         * rendering/style/RenderStyle.h:
1476         (WebCore::InheritedFlags::quotes):
1477         (WebCore::InheritedFlags::setQuotes):
1478         * rendering/style/RenderStyleConstants.h:
1479         * rendering/style/StyleAllInOne.cpp:
1480         Added QuotesData.cpp to the included files list.
1481         * rendering/style/StyleRareInheritedData.cpp:
1482         (WebCore::StyleRareInheritedData::operator==):
1483         Included quotes in equality check.
1484         * rendering/style/StyleRareInheritedData.h:
1485         Added quotes
1486
1487 2011-03-02  Antti Koivisto  <antti@apple.com>
1488
1489         Reviewed by Dave Hyatt.
1490
1491         Selector usage flags should not be set by the CSS parser
1492         https://bugs.webkit.org/show_bug.cgi?id=55573
1493         
1494         Currently flags like Document::usesSiblingRules() are set directly by the CSS parser. This is wrong as 
1495         we may parse stylesheets that are not actually used for document rendering. This is especially bad when
1496         the page uses querySelectorAll(). As a result we may end up in various performance penalty boxes 
1497         triggered by complex selectors for no good reason.
1498         
1499         - Use the selector traversal in style selector constructor to figure out which flags
1500           are actually needed for the currently active style sheets.
1501         - Remove the selector flag related code from the CSS parser/grammar.
1502         - Remove the usesDescendantRules flag completely. We have descendant rules in the default
1503           style sheet, every document uses them.
1504
1505         * css/CSSGrammar.y:
1506         * css/CSSParser.cpp:
1507         (WebCore::CSSParser::updateSpecifiersWithElementName):
1508         * css/CSSStyleSelector.cpp:
1509         (WebCore::collectSiblingRulesInDefaultStyle):
1510         (WebCore::CSSStyleSelector::CSSStyleSelector):
1511         (WebCore::CSSStyleSelector::Features::Features):
1512         (WebCore::CSSStyleSelector::Features::~Features):
1513         (WebCore::CSSStyleSelector::locateCousinList):
1514         (WebCore::CSSStyleSelector::matchesSiblingRules):
1515         (WebCore::CSSStyleSelector::canShareStyleWithElement):
1516         (WebCore::CSSStyleSelector::locateSharedStyle):
1517         (WebCore::collectFeaturesFromSelector):
1518         (WebCore::collectFeaturesFromList):
1519         (WebCore::RuleSet::collectFeatures):
1520         * css/CSSStyleSelector.h:
1521         (WebCore::CSSStyleSelector::usesSiblingRules):
1522         (WebCore::CSSStyleSelector::usesFirstLineRules):
1523         (WebCore::CSSStyleSelector::usesBeforeAfterRules):
1524         (WebCore::CSSStyleSelector::usesLinkRules):
1525         * dom/Document.cpp:
1526         (WebCore::Document::Document):
1527         (WebCore::Document::recalcStyle):
1528         (WebCore::Document::createStyleSelector):
1529         * dom/Document.h:
1530         (WebCore::Document::usesSiblingRules):
1531         (WebCore::Document::setUsesSiblingRules):
1532         (WebCore::Document::usesFirstLineRules):
1533         (WebCore::Document::usesBeforeAfterRules):
1534         (WebCore::Document::setUsesBeforeAfterRules):
1535         * dom/Element.cpp:
1536         (WebCore::Element::recalcStyle):
1537
1538 2011-03-02  Brian Weinstein  <bweinstein@apple.com>
1539
1540         Fix fallout from a last minute renaming.
1541
1542         * platform/network/cf/CookieStorageCFNet.cpp:
1543         (WebCore::startObservingCookieChanges):
1544         (WebCore::stopObservingCookieChanges):
1545
1546 2011-03-01  Brian Weinstein  <bweinstein@apple.com>
1547
1548         Reviewed by Adam Roben.
1549
1550         Part of WebKit2: Need a way to send notifications to client when cookies change
1551         https://bugs.webkit.org/show_bug.cgi?id=55427
1552         <rdar://problem/9056027>
1553         
1554         Add functions on CookieStorage that allow listening for changes in cookies. When
1555         the cookies are changed, they call through to CookiesStrategy::notifyCookiesChanged.
1556
1557         No change in behavior requiring tests.
1558
1559         * platform/CookiesStrategy.h: Added.
1560         (WebCore::CookiesStrategy::~CookiesStrategy):
1561
1562         * platform/PlatformStrategies.h:
1563         (WebCore::PlatformStrategies::cookiesStrategy):
1564         (WebCore::PlatformStrategies::PlatformStrategies):
1565
1566         * platform/network/CookieStorage.h: Add new function declarations.
1567
1568         * platform/network/cf/CookieStorageCFNet.cpp:
1569         (WebCore::notifyCookiesChangedOnMainThread): Call through to CookiesStrategy::notifyCookiesChanged.
1570         (WebCore::notifyCookiesChanged): Call notifyCookiesChangedOnMainThread on the main thread.
1571         (WebCore::beginObservingCookieChanges): Set up cookie observers on the loader run loop.
1572         (WebCore::finishObservingCookieChanges): Remove our cookie observers from the loader run loop.
1573
1574         * platform/network/mac/CookieStorageMac.mm:
1575         (-[CookieStorageObjCAdapter notifyCookiesChangedOnMainThread]): Call through to CookiesStrategy::notifyCookiesChanged.
1576         (-[CookieStorageObjCAdapter cookiesChangedNotificationHandler:]): Call notifyCookiesChangedOnMainThread on 
1577             the main thread.
1578         (-[CookieStorageObjCAdapter registerForCookieChangeNotifications]): Set up the observer for cookie change notifications.
1579         (-[CookieStorageObjCAdapter unregisterForCookieChangeNotifications]): Remove the observer for cookie change notifications.
1580         (WebCore::beginObservingCookieChanges): Create our CookieStorageObjCAdapter, and call registerForCookieChangeNotifications.
1581         (WebCore::finishObservingCookieChanges): Call unregisterForCookieChangeNotifications.
1582         
1583         Add new file.
1584         * WebCore.vcproj/WebCore.vcproj:
1585         * WebCore.xcodeproj/project.pbxproj: Set role on files we need to include in WebKit to private.
1586
1587 2011-03-02  Sergey Glazunov  <serg.glazunov@gmail.com>
1588
1589         Reviewed by Dimitri Glazkov.
1590
1591         A WebKitCSSKeyframesRule object should set itself as the parent for inserted rules
1592         https://bugs.webkit.org/show_bug.cgi?id=55488
1593
1594         Test: fast/css/css-keyframe-parent.html
1595
1596         * css/WebKitCSSKeyframesRule.cpp:
1597         (WebCore::WebKitCSSKeyframesRule::append):
1598
1599 2011-03-02  Sergio Villar Senin  <svillar@igalia.com>
1600
1601         Reviewed by Martin Robinson.
1602
1603         [GTK] Add support for external protocol handlers
1604         https://bugs.webkit.org/show_bug.cgi?id=55473
1605
1606         Do not unconditionally create and replace the SoupRequester of the
1607         SoupSession if there is already one. No new tests needed as we
1608         just allow clients to create their our SoupRequesters.
1609
1610         * platform/network/soup/ResourceHandleSoup.cpp:
1611         (WebCore::ensureSessionIsInitialized):
1612
1613 2011-03-02  John Knottenbelt  <jknotten@chromium.org>
1614
1615         Reviewed by jknotten@chromium.org.
1616
1617         Fix build-breakage when GEOLOCATION not enabled.
1618         https://bugs.webkit.org/show_bug.cgi?id=55586
1619
1620         Geolocation::reset needs to be defined if ENABLE(GEOLOCATION)
1621         is not true.
1622
1623         * page/Geolocation.cpp:
1624         (WebCore::Geolocation::reset):
1625
1626 2011-03-02  Pavel Feldman  <pfeldman@chromium.org>
1627
1628         Reviewed by Yury Semikhatsky.
1629
1630         Web Inspector: remove InjectedScriptHost -> DOMAgent dependency.
1631         https://bugs.webkit.org/show_bug.cgi?id=55575
1632
1633         * bindings/js/JSInjectedScriptHostCustom.cpp:
1634         (WebCore::JSInjectedScriptHost::inspectedNode):
1635         * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
1636         (WebCore::V8InjectedScriptHost::inspectedNodeCallback):
1637         * inspector/ConsoleMessage.cpp:
1638         (WebCore::ConsoleMessage::addToFrontend):
1639         * inspector/InjectedScript.cpp:
1640         (WebCore::InjectedScript::evaluateOn):
1641         (WebCore::InjectedScript::wrapObject):
1642         (WebCore::InjectedScript::wrapNode):
1643         (WebCore::InjectedScript::inspectNode):
1644         (WebCore::InjectedScript::nodeAsScriptValue):
1645         * inspector/InjectedScript.h:
1646         * inspector/InjectedScriptHost.cpp:
1647         (WebCore::InjectedScriptHost::addInspectedNode):
1648         (WebCore::InjectedScriptHost::clearInspectedNodes):
1649         (WebCore::InjectedScriptHost::copyText):
1650         (WebCore::InjectedScriptHost::inspectedNode):
1651         * inspector/InjectedScriptHost.h:
1652         * inspector/InjectedScriptHost.idl:
1653         * inspector/InjectedScriptSource.js:
1654         * inspector/Inspector.idl:
1655         * inspector/InspectorDOMAgent.cpp:
1656         (WebCore::InspectorDOMAgent::discardBindings):
1657         (WebCore::InspectorDOMAgent::addInspectedNode):
1658         (WebCore::InspectorDOMAgent::resolveNode):
1659         (WebCore::InspectorDOMAgent::injectedScriptForNode):
1660         * inspector/InspectorDOMAgent.h:
1661         * inspector/InspectorRuntimeAgent.cpp:
1662         (WebCore::InspectorRuntimeAgent::evaluateOn):
1663         * inspector/InspectorRuntimeAgent.h:
1664         * inspector/front-end/ElementsTreeOutline.js:
1665         (WebInspector.ElementsTreeElement.prototype._createTooltipForNode.setTooltip):
1666         (WebInspector.ElementsTreeElement.prototype._createTooltipForNode.resolvedNode):
1667         (WebInspector.ElementsTreeElement.prototype._createTooltipForNode):
1668         * inspector/front-end/PropertiesSidebarPane.js:
1669         (WebInspector.PropertiesSidebarPane.prototype.update.nodeResolved):
1670         (WebInspector.PropertiesSidebarPane.prototype.update.nodePrototypesReady):
1671         (WebInspector.PropertiesSidebarPane.prototype.update.fillSection):
1672         (WebInspector.PropertiesSidebarPane.prototype.update):
1673         * inspector/front-end/RemoteObject.js:
1674         (WebInspector.RemoteObject.resolveNode):
1675         (WebInspector.RemoteObject.prototype.pushNodeToFrontend):
1676         (WebInspector.RemoteObject.prototype.evaluate):
1677
1678 2011-01-21  John Knottenbelt  <jknotten@chromium.org>
1679
1680         Reviewed by Dmitry Titov.
1681
1682         Detach Geolocation from Frame when Page destroyed.
1683         https://bugs.webkit.org/show_bug.cgi?id=52877
1684
1685         On Page destruction, any outstanding Geolocation permission
1686         requests should be cancelled, because the Geolocation can only
1687         access the client indirectly via m_frame->page().
1688
1689         Additionally, if the Frame is reparented to another page, the
1690         Geolocation should cancel watches, single-shots and requests on
1691         the old page.
1692
1693         Page destruction is signalled by a call to the
1694         Frame::pageDestroyed() method. This calls Frame::detachFromPage,
1695         where we extend the call chain to Geolocation::detachFromPage()
1696         where we call Geolocation::reset() which detaches from the
1697         GeolocationController, cancels requests, watches and single shots,
1698         and sets the permission state back to Unknown.
1699
1700         We also now call detachFromPage when the frame reparented in
1701         Frame::transferChildFrameToNewDocument.
1702
1703         Frame::pageDestroyed() is also called by FrameLoader even though
1704         the page is not destroyed. We should still cancel permission
1705         requests, because the GeolocationClient will become inaccessible
1706         to the Geolocation object after this call.
1707
1708         Since GeolocationController is owned by Page, and all Geolocation
1709         objects will now unsubscribe from the GeolocationController on
1710         pageDetached(), we no longer need to call stopUpdating() from the
1711         GeolocationController's destructor. Instead we can simply assert
1712         that there should be no no observers. See related bug
1713         https://bugs.webkit.org/show_bug.cgi?id=52216 .
1714
1715         Introduced new method 'numberOfPendingPermissionRequests' on
1716         GeolocationClientMock to count the number of outstanding pending
1717         permission requests. This provides a reusable implementation for
1718         client-based implementations of the LayoutTestController's
1719         numberOfPendingGeolocationPermissionRequests method.
1720
1721         Tests: fast/dom/Geolocation/iframe-reparent.html
1722                fast/dom/Geolocation/page-reload-cancel-permission-requests.html
1723
1724         * page/DOMWindow.cpp:
1725         (WebCore::DOMWindow::resetGeolocationPermissions):
1726         * page/DOMWindow.h:
1727         * page/Frame.cpp:
1728         (WebCore::Frame::detachFromPage):
1729         (WebCore::Frame::pageDestroyed):
1730         (WebCore::Frame::transferChildFrameToNewDocument):
1731         * page/Frame.h:
1732         * page/Geolocation.cpp:
1733         (WebCore::Geolocation::~Geolocation):
1734         (WebCore::Geolocation::page):
1735         (WebCore::Geolocation::reset):
1736         (WebCore::Geolocation::disconnectFrame):
1737         (WebCore::Geolocation::lastPosition):
1738         (WebCore::Geolocation::requestPermission):
1739         (WebCore::Geolocation::startUpdating):
1740         (WebCore::Geolocation::stopUpdating):
1741         * page/Geolocation.h:
1742         * page/GeolocationController.cpp:
1743         (WebCore::GeolocationController::~GeolocationController):
1744         * page/Navigator.cpp:
1745         (WebCore::Navigator::resetGeolocationPermissions):
1746         * page/Navigator.h:
1747         * platform/mock/GeolocationClientMock.cpp:
1748         (WebCore::GeolocationClientMock::numberOfPendingPermissionRequests):
1749         * platform/mock/GeolocationClientMock.h:
1750
1751 2011-03-02  Mikhail Naganov  <mnaganov@chromium.org>
1752
1753         Reviewed by Pavel Feldman.
1754
1755         Web Inspector: [Chromium] Landing detailed heap snapshots, part 4.
1756         https://bugs.webkit.org/show_bug.cgi?id=55563
1757
1758         This part adds implementations for data grids used to display
1759         different heap snapshots projections. We are almost done.
1760
1761         * English.lproj/localizedStrings.js:
1762         * WebCore.gypi:
1763         * bindings/v8/ScriptHeapSnapshot.cpp:
1764         (WebCore::ScriptHeapSnapshot::getExactRetainedSize):
1765         * bindings/v8/ScriptHeapSnapshot.h:
1766         * inspector/Inspector.idl:
1767         * inspector/InspectorProfilerAgent.cpp:
1768         (WebCore::InspectorProfilerAgent::getExactHeapSnapshotNodeRetainedSize):
1769         * inspector/InspectorProfilerAgent.h:
1770         * inspector/front-end/DetailedHeapshotGridNodes.js:
1771         (WebInspector.HeapSnapshotObjectNode):
1772         (WebInspector.HeapSnapshotObjectNode.prototype._createProvider):
1773         (WebInspector.HeapSnapshotInstanceNode):
1774         (WebInspector.HeapSnapshotInstanceNode.prototype._createProvider):
1775         (WebInspector.HeapSnapshotDominatorObjectNode):
1776         (WebInspector.HeapSnapshotDominatorObjectNode.prototype._createProvider):
1777         (MixInSnapshotNodeFunctions):
1778         * inspector/front-end/DetailedHeapshotView.js:
1779         (WebInspector.HeapSnapshotContainmentDataGrid):
1780         (WebInspector.HeapSnapshotSortableDataGrid):
1781         (WebInspector.HeapSnapshotConstructorsDataGrid):
1782         (WebInspector.HeapSnapshotDiffDataGrid):
1783         (WebInspector.HeapSnapshotDominatorsDataGrid):
1784         (WebInspector.HeapSnapshotRetainingPathsList):
1785         (WebInspector.DetailedHeapshotView.profileCallback):
1786         (WebInspector.DetailedHeapshotView):
1787         * inspector/front-end/HeapSnapshot.js:
1788         (WebInspector.HeapSnapshotEdge.prototype.get isInvisible):
1789         (WebInspector.HeapSnapshotEdge.prototype.toString):
1790         (WebInspector.HeapSnapshot.prototype._init):
1791         (WebInspector.HeapSnapshot.prototype._buildAggregatesIndexes):
1792         (WebInspector.HeapSnapshot.prototype._markInvisibleEdges):
1793         (WebInspector.HeapSnapshotPathFinder.prototype._skipEdge):
1794         * inspector/front-end/Images/helpButtonGlyph.png: Added.
1795         * inspector/front-end/Panel.js:
1796         (WebInspector.Panel.prototype.reset):
1797         * inspector/front-end/Popover.js:
1798         (WebInspector.Popover):
1799         (WebInspector.Popover.prototype.show):
1800         (WebInspector.Popover.prototype.hide):
1801         (WebInspector.Popover.prototype.get visible):
1802         * inspector/front-end/ProfilesPanel.js:
1803         (WebInspector.ProfilesPanel.prototype._reset):
1804         (WebInspector.ProfilesPanel.prototype.getProfile):
1805         * inspector/front-end/heapProfiler.css:
1806         * inspector/front-end/inspector.js:
1807         (WebInspector.resetFocusElement):
1808
1809 2011-03-02  David Kilzer  <ddkilzer@apple.com>
1810
1811         <http://webkit.org/b/55534> Clean up macros in Extensions3DOpenGL.cpp
1812
1813         Reviewed by Darin Adler.
1814
1815         Change "#if GL_APPLE_vertex_array_object" macros to check that
1816         GL_APPLE_vertex_array_object is both defined and non-zero.
1817
1818         * platform/graphics/opengl/Extensions3DOpenGL.cpp:
1819         (WebCore::Extensions3DOpenGL::createVertexArrayOES):
1820         (WebCore::Extensions3DOpenGL::deleteVertexArrayOES): Remove
1821         empty #else clause.
1822         (WebCore::Extensions3DOpenGL::isVertexArrayOES):
1823         (WebCore::Extensions3DOpenGL::bindVertexArrayOES): Add early
1824         return check.  Remove #else clause that would never have
1825         compiled (since array is not a WTF::String).
1826
1827 2011-03-01  Ryosuke Niwa  <rniwa@webkit.org>
1828
1829         Reviewed by Darin Adler.
1830
1831         Assertion failure after removing a selection in keydown handler
1832         https://bugs.webkit.org/show_bug.cgi?id=51389
1833
1834         The bug was caused by textWillBeReplaced's not always updating selection, and
1835         shouldRemovePositionAfterAdoptingTextReplacement's not moving the end offset when it's
1836         at the end of replaced data.
1837
1838         Fixed the bug by always updating selection in textWillBeReplaced and fixing the condition
1839         to move the offset in shouldRemovePositionAfterAdoptingTextReplacement. Also added a call
1840         to setSelection instead of directly modifying m_selection to notify all the clients.
1841         Namely, the call to EditorClient::respondToChangedSelection is required for
1842         setting-input-value-cancel-ime-composition.html.
1843
1844         Note that we must update layout before calling setSelection because setSelection calls
1845         setFocusedNodeIfNeeded and it requires layout to be up-to-date. Without this call, tests
1846         such as fast/forms/input-appearance-maxlength.html hits an assertion in Node::isFocusable.
1847
1848         Test: editing/input/setting-input-value-cancel-ime-composition.html
1849
1850         * editing/SelectionController.cpp:
1851         (WebCore::shouldRemovePositionAfterAdoptingTextReplacement): When replacing text, the offset
1852         of the selection end must be updated even if it was at the end of the replaced text.
1853         e.g. removing "world" from "hello world] WebKit" should result in "hello ] WebKit" not
1854         "hello  WebK[it". Note we don't move the offset if no text is removed because appending
1855         "world" to "hello ]" should result in "hello ]world" not "hello world]".
1856         (WebCore::SelectionController::textWillBeReplaced): Calls setSelection to update
1857         the selection instead of modifying m_selection directly.
1858
1859 2011-03-02  Andrey Adaikin  <aandrey@google.com>
1860
1861         Reviewed by Pavel Feldman.
1862
1863         Web Inspector: highlighted line does not span horizonally in scripts panel while debugging.
1864         https://bugs.webkit.org/show_bug.cgi?id=54675
1865
1866         * inspector/front-end/TextViewer.js:
1867         (WebInspector.TextViewer.prototype._syncScroll):
1868         (WebInspector.TextEditorChunkedPanel.prototype._buildChunks):
1869         (WebInspector.TextEditorChunkedPanel.prototype.makeLineAChunk):
1870         (WebInspector.TextEditorGutterPanel):
1871         (WebInspector.TextEditorGutterPanel.prototype._expandChunks):
1872         (WebInspector.TextEditorGutterPanel.prototype.textChanged):
1873         (WebInspector.TextEditorMainPanel):
1874         (WebInspector.TextEditorMainPanel.prototype.set readOnly):
1875         (WebInspector.TextEditorMainPanel.prototype._getSelection):
1876         (WebInspector.TextEditorMainPanel.prototype._selectionToPosition):
1877         (WebInspector.TextEditorMainPanel.prototype._handleDOMSubtreeModified):
1878         (WebInspector.TextEditorMainPanel.prototype._applyDomUpdates):
1879         (WebInspector.TextEditorMainPanel.prototype._updateChunksForRanges):
1880         * inspector/front-end/textViewer.css:
1881         (.inner-container):
1882
1883 2011-03-02  Oleg Romashin  <romaxa@gmail.com>
1884
1885         Reviewed by Andreas Kling.
1886
1887         Fixing inspector compilation with JAVASCRIPT_DEBUGGER disabled
1888         https://bugs.webkit.org/show_bug.cgi?id=55477
1889
1890         * inspector/InspectorAgent.cpp:
1891         (WebCore::InspectorAgent::populateScriptObjects):
1892
1893 2011-03-02  Kent Tamura  <tkent@chromium.org>
1894
1895         Unreviewed, a trivial fix for r80096.
1896
1897         REGRESSION (r80096): [Chromium] fast/forms/input-number-unacceptable-style.html failure
1898         https://bugs.webkit.org/show_bug.cgi?id=55562
1899
1900         * platform/text/LocalizedNumberICU.cpp:
1901         (WebCore::parseLocalizedNumber): Check the ParsePosition after NumberFormat::parse()
1902           to reject strings with a valid number + extra letters.
1903
1904 2011-03-02  Steve Block  <steveblock@google.com>
1905
1906         Reviewed by Jeremy Orlow.
1907
1908         JObjectWrapper should be moved to its own file
1909         https://bugs.webkit.org/show_bug.cgi?id=55384
1910
1911         No new tests, refactoring only.
1912
1913         * Android.v8bindings.mk:
1914         * WebCore.gypi:
1915         * bridge/jni/v8/JNIBridgeV8.cpp:
1916         (JavaField::JavaField):
1917         * bridge/jni/v8/JNIBridgeV8.h:
1918         * bridge/jni/v8/JavaInstanceV8.cpp:
1919         (JavaInstance::JavaInstance):
1920         * bridge/jni/v8/JavaInstanceV8.h:
1921         * bridge/jni/v8/JobjectWrapper.cpp: Copied from Source/WebCore/bridge/jni/v8/JNIBridgeV8.h.
1922         (JobjectWrapper::JobjectWrapper):
1923         (JobjectWrapper::~JobjectWrapper):
1924         * bridge/jni/v8/JobjectWrapper.h: Copied from Source/WebCore/bridge/jni/v8/JNIBridgeV8.h.
1925         (JSC::Bindings::JobjectWrapper::instance):
1926         (JSC::Bindings::JobjectWrapper::setInstance):
1927         (JSC::Bindings::JobjectWrapper::ref):
1928         (JSC::Bindings::JobjectWrapper::deref):
1929
1930 2011-02-25  Andrey Kosyakov  <caseq@chromium.org>
1931
1932         Reviewed by Pavel Feldman.
1933
1934         Web Inspector: factor search logic out of inspector.js
1935         https://bugs.webkit.org/show_bug.cgi?id=54965
1936
1937         * WebCore.gypi:
1938         * WebCore.vcproj/WebCore.vcproj:
1939         * inspector/front-end/ElementsPanel.js:
1940         (WebInspector.ElementsPanel.prototype.searchCanceled):
1941         (WebInspector.ElementsPanel.prototype.switchToAndFocus):
1942         (WebInspector.ElementsPanel.prototype._updateMatchesCount):
1943         * inspector/front-end/Panel.js:
1944         (WebInspector.Panel.prototype.searchCanceled):
1945         (WebInspector.Panel.prototype.performSearch.updateMatchesCount):
1946         * inspector/front-end/ScriptsPanel.js:
1947         (WebInspector.ScriptsPanel.prototype.searchCanceled):
1948         (WebInspector.ScriptsPanel.prototype.performSearch.finishedCallback):
1949         (WebInspector.ScriptsPanel.prototype.performSearch):
1950         * inspector/front-end/SearchController.js: Added.
1951         (WebInspector.SearchController):
1952         (WebInspector.SearchController.prototype.updateSearchMatchesCount):
1953         (WebInspector.SearchController.prototype.updateSearchLabel):
1954         (WebInspector.SearchController.prototype.cancelSearch):
1955         (WebInspector.SearchController.prototype.handleShortcut):
1956         (WebInspector.SearchController.prototype.activePanelChanged.performPanelSearch):
1957         (WebInspector.SearchController.prototype.activePanelChanged):
1958         (WebInspector.SearchController.prototype._updateSearchMatchesCount):
1959         (WebInspector.SearchController.prototype._focusSearchField):
1960         (WebInspector.SearchController.prototype._onSearchFieldManualFocus):
1961         (WebInspector.SearchController.prototype._onKeyDown):
1962         (WebInspector.SearchController.prototype._onSearch):
1963         (WebInspector.SearchController.prototype._performSearch):
1964         * inspector/front-end/WebKit.qrc:
1965         * inspector/front-end/inspector.html:
1966         * inspector/front-end/inspector.js:
1967         (WebInspector.set currentPanel):
1968         (WebInspector.set attached):
1969         (WebInspector.doLoadedDone):
1970         (WebInspector.documentKeyDown):
1971
1972 2011-03-02  Renata Hodovan  <reni@webkit.org>
1973
1974         Reviewed by Andreas Kling.
1975
1976         FEMorphologyElement changes doesn't require relayout
1977         https://bugs.webkit.org/show_bug.cgi?id=55462
1978
1979         When the FEMorphologyElement receives an update message but the given value remains the same we don't need
1980         to relayout the filter.
1981
1982         No new tests are needed because this modification is covered by the dynamic update tests of FEMorphology.
1983
1984         * platform/graphics/filters/FEMorphology.cpp:
1985         (WebCore::FEMorphology::setMorphologyOperator):
1986         (WebCore::FEMorphology::setRadiusX):
1987         (WebCore::FEMorphology::setRadiusY):
1988         * platform/graphics/filters/FEMorphology.h:
1989         * svg/SVGFEMorphologyElement.cpp:
1990         (WebCore::SVGFEMorphologyElement::setFilterEffectAttribute):
1991         (WebCore::SVGFEMorphologyElement::svgAttributeChanged):
1992         * svg/SVGFEMorphologyElement.h:
1993
1994 2011-03-01  Kent Tamura  <tkent@chromium.org>
1995
1996         Reviewed by Dimitri Glazkov.
1997
1998         Assertion fails when a form validation bubble appears
1999         https://bugs.webkit.org/show_bug.cgi?id=55550
2000
2001         Test: fast/forms/interactive-validation-attach-assertion.html
2002
2003         * html/ValidationMessage.cpp:
2004         (WebCore::ValidationMessage::buildBubbleTree):
2005          Just remove unnecessary attach().
2006
2007 2011-03-01  Kent Tamura  <tkent@chromium.org>
2008
2009         Reviewed by Dimitri Glazkov.
2010
2011         Support localized numbers in <input type=number>
2012         https://bugs.webkit.org/show_bug.cgi?id=42484
2013
2014         This change adds support of localized numbers in <input type=number>.
2015         This affects only the UI, and not HTMLInputElement::value.
2016
2017         - Remove the keyboard input restriction feature because it is hard to
2018           retrieve characters usable for localized numbers in ICU.
2019
2020         - Separate convertFromVisibleValue() from sanitizeValue().
2021           sanitizeValue() is used for not only converting a renderer value to a
2022           DOM value.
2023
2024         - Implement LocalizedNumber functions for ICU and NSNumberFormatter.
2025           It is used only in Chromium for now.
2026
2027         Test: manual-tests/input-number-localization.html
2028
2029         * WebCore.gypi: Use LocalizedNumberICU.cpp.
2030         * WebCore.xcodeproj/project.pbxproj:
2031           Add LocalizedNumberMac.mm and remove LocalizedNumberNone.cpp.
2032         * dom/InputElement.h: Introduce convertFromVisibleValue().
2033         * html/HTMLInputElement.cpp:
2034         (WebCore::HTMLInputElement::convertFromVisibleValue):
2035         * html/HTMLInputElement.h:
2036         * html/InputType.cpp:
2037         (WebCore::InputType::convertFromVisibleValue):
2038         * html/InputType.h:
2039         * html/NumberInputType.cpp: Remove isHTMLNumberCharacter(),
2040           isNumberCharacter(), and handleBeforeTextInsertedEvent() because we
2041           remove the keyboard input restriction feature for type=number.
2042         (WebCore::NumberInputType::convertFromVisibleValue):
2043         (WebCore::NumberInputType::sanitizeValue):
2044         * html/NumberInputType.h:
2045         * manual-tests/input-number-localization.html: Add a manual test because
2046           the behavior depends on the current locale.
2047         * platform/text/LocalizedNumber.h: Remove isLocalizedNumberCharacter().
2048         * platform/text/LocalizedNumberICU.cpp:
2049           Implement LocalizedNumber functions with ICU NumberFormat.
2050         (WebCore::createFormatterForCurrentLocale):
2051         (WebCore::parseLocalizedNumber):
2052         (WebCore::formatLocalizedNumber):
2053         * platform/text/LocalizedNumberNone.cpp: Remove isLocalizedNumberCharacter().
2054         * platform/text/mac/LocalizedNumberMac.mm:
2055           Implement LocalizedNumber functions with NSNumberFormatter.
2056         (WebCore::parseLocalizedNumber):
2057         (WebCore::formatLocalizedNumber):
2058         * rendering/RenderTextControlSingleLine.cpp:
2059         (WebCore::RenderTextControlSingleLine::subtreeHasChanged):
2060         * wml/WMLInputElement.h:
2061         (WebCore::WMLInputElement::convertFromVisibleValue):
2062           Implemented as a function doing nothing.
2063
2064 2011-03-01  Yuta Kitamura  <yutak@chromium.org>
2065
2066         Reviewed by Darin Adler.
2067
2068         REGRESSION(r78383): Failure to connect on websocketstest.com
2069         https://bugs.webkit.org/show_bug.cgi?id=54811
2070
2071         After r78383, KURL::setPort() no longer appends ":port" part
2072         if that port is the default port for URL scheme. This broke
2073         SocketStreamHandleCFNet, whose code was based on an assumption
2074         that KURL::setPort() always inserts ":port" part.
2075
2076         To fix this, KURL::port() call is removed from SocketStreamHandle
2077         and the port number is calculated on-the-fly.
2078
2079         Unfortunately it is impossible to write a test; this bug only
2080         affects WebSockets connecting to the default port (port 80
2081         for ws, port 443 for wss), while we use different ports to test
2082         WebSockets in LayoutTests.
2083
2084         * platform/network/cf/SocketStreamHandle.h:
2085         * platform/network/cf/SocketStreamHandleCFNet.cpp:
2086         (WebCore::SocketStreamHandle::SocketStreamHandle):
2087         (WebCore::SocketStreamHandle::createStreams):
2088         (WebCore::SocketStreamHandle::port):
2089
2090 2011-03-01  Sheriff Bot  <webkit.review.bot@gmail.com>
2091
2092         Unreviewed, rolling out r80079.
2093         http://trac.webkit.org/changeset/80079
2094         https://bugs.webkit.org/show_bug.cgi?id=55547
2095
2096         "Broke the Win debug build?" (Requested by dcheng on #webkit).
2097
2098         * Configurations/FeatureDefines.xcconfig:
2099         * GNUmakefile.am:
2100         * features.pri:
2101
2102 2011-02-25  Adrienne Walker  <enne@google.com>
2103
2104         Reviewed by James Robinson.
2105
2106         [chromium] Abstract "pixels with a graphics context" into its own class
2107         https://bugs.webkit.org/show_bug.cgi?id=55259
2108
2109         This creates new PlatformCanvas/PlatformImage classes which wrap
2110         all of the #ifdef Skia/Cg warts from the compositor.  All classes
2111         (LayerTilerChromium, ContentLayerChromium, and ImageLayerChromium) are
2112         modified to use these abstractions.
2113
2114         Tests: LayoutTests/compositing
2115
2116         * WebCore.gypi:
2117         * platform/graphics/chromium/ContentLayerChromium.cpp:
2118         (WebCore::ContentLayerChromium::updateContentsIfDirty):
2119         (WebCore::ContentLayerChromium::resizeUploadBuffer):
2120         (WebCore::ContentLayerChromium::updateTextureIfNeeded):
2121         (WebCore::ContentLayerChromium::updateTexture):
2122         (WebCore::ContentLayerChromium::draw):
2123         * platform/graphics/chromium/ContentLayerChromium.h:
2124         * platform/graphics/chromium/ImageLayerChromium.cpp:
2125         (WebCore::ImageLayerChromium::updateContentsIfDirty):
2126         (WebCore::ImageLayerChromium::updateTextureIfNeeded):
2127         * platform/graphics/chromium/ImageLayerChromium.h:
2128         * platform/graphics/chromium/LayerTilerChromium.cpp:
2129         (WebCore::LayerTilerChromium::contentRectToTileIndices):
2130         (WebCore::LayerTilerChromium::update):
2131         (WebCore::LayerTilerChromium::updateFromPixels):
2132         * platform/graphics/chromium/LayerTilerChromium.h:
2133         * platform/graphics/chromium/PlatformCanvas.cpp: Added.
2134         (WebCore::PlatformCanvas::PlatformCanvas):
2135         (WebCore::PlatformCanvas::~PlatformCanvas):
2136         (WebCore::PlatformCanvas::resize):
2137         (WebCore::PlatformCanvas::AutoLocker::AutoLocker):
2138         (WebCore::PlatformCanvas::AutoLocker::~AutoLocker):
2139         (WebCore::PlatformCanvas::Painter::Painter):
2140         (WebCore::PlatformCanvas::Painter::~Painter):
2141         * platform/graphics/chromium/PlatformCanvas.h: Added.
2142         (WebCore::PlatformCanvas::AutoLocker::pixels):
2143         (WebCore::PlatformCanvas::Painter::context):
2144         (WebCore::PlatformCanvas::size):
2145         * platform/graphics/chromium/PlatformImage.cpp: Copied from Source/WebCore/platform/graphics/chromium/ImageLayerChromium.cpp.
2146         (WebCore::PlatformImage::PlatformImage):
2147         (WebCore::PlatformImage::updateFromImage):
2148         * platform/graphics/chromium/PlatformImage.h: Added.
2149         (WebCore::PlatformImage::pixels):
2150         (WebCore::PlatformImage::size):
2151
2152 2011-03-01  Daniel Cheng  <dcheng@chromium.org>
2153
2154         Reviewed by David Levin.
2155
2156         Add feature define for data transfer items
2157         https://bugs.webkit.org/show_bug.cgi?id=55510
2158
2159         * Configurations/FeatureDefines.xcconfig:
2160         * GNUmakefile.am:
2161         * features.pri:
2162
2163 2011-03-01  Joseph Pecoraro  <joepeck@webkit.org>
2164
2165         Unreviewed. Roll out r80068 and r80073 due to breaking WebKit2 Qt port.
2166
2167         * dom/ViewportArguments.cpp:
2168         (WebCore::computeViewportAttributes):
2169         (WebCore::numericPrefix):
2170         (WebCore::findSizeValue):
2171         (WebCore::setViewportFeature):
2172         (WebCore::viewportErrorMessageTemplate):
2173         (WebCore::viewportErrorMessageLevel):
2174         * dom/ViewportArguments.h:
2175
2176 2011-03-01  Jeremy Orlow  <jorlow@chromium.org>
2177
2178         Reviewed by James Robinson.
2179
2180         IDBKeyRange.bound() should not use the optional options object
2181         https://bugs.webkit.org/show_bug.cgi?id=55419
2182
2183         http://dvcs.w3.org/hg/IndexedDB/raw-file/tip/Overview.html#range-concept
2184
2185         Added some code to existing tests to cover these cases.
2186
2187         * storage/IDBKeyRange.cpp:
2188         (WebCore::IDBKeyRange::bound):
2189         * storage/IDBKeyRange.h:
2190         * storage/IDBKeyRange.idl:
2191
2192 2011-03-01  Dan Bernstein  <mitz@apple.com>
2193
2194         Build fix.
2195
2196         * dom/DocumentMarkerController.cpp:
2197         (WebCore::DocumentMarkerController::clearDescriptionOnMarkersIntersectingRange):
2198
2199 2011-03-01  Kent Tamura  <tkent@chromium.org>
2200
2201         Unreviewed. Apply sort-Xcode-project-file.
2202
2203         * WebCore.xcodeproj/project.pbxproj:
2204
2205 2011-03-01  Jeremy Orlow  <jorlow@chromium.org>
2206
2207         Reviewed by James Robinson.
2208
2209         V8 code generator doesn't properly support a single SerializedScriptValue attribute
2210         https://bugs.webkit.org/show_bug.cgi?id=55530
2211
2212         This is tested by the bindings tests changes.
2213
2214         * bindings/scripts/CodeGeneratorV8.pm:
2215         * bindings/scripts/test/CPP/WebDOMTestSerializedScriptValueInterface.cpp: Added.
2216         (WebDOMTestSerializedScriptValueInterface::WebDOMTestSerializedScriptValueInterfacePrivate::WebDOMTestSerializedScriptValueInterfacePrivate):
2217         (WebDOMTestSerializedScriptValueInterface::WebDOMTestSerializedScriptValueInterface):
2218         (WebDOMTestSerializedScriptValueInterface::operator=):
2219         (WebDOMTestSerializedScriptValueInterface::impl):
2220         (WebDOMTestSerializedScriptValueInterface::~WebDOMTestSerializedScriptValueInterface):
2221         (WebDOMTestSerializedScriptValueInterface::value):
2222         (toWebCore):
2223         (toWebKit):
2224         * bindings/scripts/test/CPP/WebDOMTestSerializedScriptValueInterface.h: Added.
2225         * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.cpp: Added.
2226         (WebKit::kit):
2227         (webkit_dom_test_serialized_script_value_interface_get_value):
2228         (WebKit::core):
2229         (webkit_dom_test_serialized_script_value_interface_finalize):
2230         (webkit_dom_test_serialized_script_value_interface_set_property):
2231         (webkit_dom_test_serialized_script_value_interface_get_property):
2232         (webkit_dom_test_serialized_script_value_interface_constructed):
2233         (webkit_dom_test_serialized_script_value_interface_class_init):
2234         (webkit_dom_test_serialized_script_value_interface_init):
2235         (WebKit::wrapTestSerializedScriptValueInterface):
2236         * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.h: Added.
2237         * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterfacePrivate.h: Added.
2238         * bindings/scripts/test/JS/JSTestInterface.cpp:
2239         (WebCore::JSTestInterfaceConstructor::JSTestInterfaceConstructor):
2240         (WebCore::JSTestInterface::JSTestInterface):
2241         * bindings/scripts/test/JS/JSTestInterface.h:
2242         * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
2243         (WebCore::JSTestMediaQueryListListenerConstructor::JSTestMediaQueryListListenerConstructor):
2244         (WebCore::JSTestMediaQueryListListener::JSTestMediaQueryListListener):
2245         (WebCore::jsTestMediaQueryListListenerPrototypeFunctionMethod):
2246         * bindings/scripts/test/JS/JSTestMediaQueryListListener.h:
2247         * bindings/scripts/test/JS/JSTestObj.cpp:
2248         (WebCore::JSTestObjConstructor::JSTestObjConstructor):
2249         (WebCore::JSTestObj::JSTestObj):
2250         (WebCore::jsTestObjPrototypeFunctionVoidMethodWithArgs):
2251         (WebCore::jsTestObjPrototypeFunctionIntMethodWithArgs):
2252         (WebCore::jsTestObjPrototypeFunctionObjMethodWithArgs):
2253         (WebCore::jsTestObjPrototypeFunctionMethodThatRequiresAllArgs):
2254         (WebCore::jsTestObjPrototypeFunctionMethodThatRequiresAllArgsAndThrows):
2255         (WebCore::jsTestObjPrototypeFunctionSerializedValue):
2256         (WebCore::jsTestObjPrototypeFunctionIdbKey):
2257         (WebCore::jsTestObjPrototypeFunctionOptionsObject):
2258         (WebCore::jsTestObjPrototypeFunctionCustomArgsAndException):
2259         (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndArg):
2260         (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndOptionalArg):
2261         (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndUserGesture):
2262         (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndUserGestureASAD):
2263         (WebCore::jsTestObjPrototypeFunctionMethodWithOptionalArg):
2264         (WebCore::jsTestObjPrototypeFunctionMethodWithNonOptionalArgAndOptionalArg):
2265         (WebCore::jsTestObjPrototypeFunctionMethodWithNonOptionalArgAndTwoOptionalArgs):
2266         (WebCore::jsTestObjPrototypeFunctionMethodWithNonCallbackArgAndCallbackArg):
2267         (WebCore::jsTestObjPrototypeFunctionOverloadedMethod1):
2268         (WebCore::jsTestObjPrototypeFunctionOverloadedMethod2):
2269         (WebCore::jsTestObjPrototypeFunctionOverloadedMethod3):
2270         (WebCore::jsTestObjPrototypeFunctionOverloadedMethod4):
2271         (WebCore::jsTestObjPrototypeFunctionClassMethodWithOptional):
2272         * bindings/scripts/test/JS/JSTestObj.h:
2273         * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp: Added.
2274         (WebCore::JSTestSerializedScriptValueInterfaceConstructor::createStructure):
2275         (WebCore::JSTestSerializedScriptValueInterfaceConstructor::JSTestSerializedScriptValueInterfaceConstructor):
2276         (WebCore::JSTestSerializedScriptValueInterfaceConstructor::getOwnPropertySlot):
2277         (WebCore::JSTestSerializedScriptValueInterfaceConstructor::getOwnPropertyDescriptor):
2278         (WebCore::JSTestSerializedScriptValueInterfacePrototype::self):
2279         (WebCore::JSTestSerializedScriptValueInterface::JSTestSerializedScriptValueInterface):
2280         (WebCore::JSTestSerializedScriptValueInterface::createPrototype):
2281         (WebCore::JSTestSerializedScriptValueInterface::getOwnPropertySlot):
2282         (WebCore::JSTestSerializedScriptValueInterface::getOwnPropertyDescriptor):
2283         (WebCore::jsTestSerializedScriptValueInterfaceValue):
2284         (WebCore::jsTestSerializedScriptValueInterfaceConstructor):
2285         (WebCore::JSTestSerializedScriptValueInterface::getConstructor):
2286         (WebCore::toJS):
2287         (WebCore::toTestSerializedScriptValueInterface):
2288         * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.h: Copied from Source/WebCore/bindings/scripts/test/JS/JSTestInterface.h.
2289         (WebCore::JSTestSerializedScriptValueInterface::createStructure):
2290         (WebCore::JSTestSerializedScriptValueInterface::impl):
2291         (WebCore::JSTestSerializedScriptValueInterfacePrototype::createStructure):
2292         (WebCore::JSTestSerializedScriptValueInterfacePrototype::JSTestSerializedScriptValueInterfacePrototype):
2293         * bindings/scripts/test/ObjC/DOMTestSerializedScriptValueInterface.h: Added.
2294         * bindings/scripts/test/ObjC/DOMTestSerializedScriptValueInterface.mm: Added.
2295         (-[DOMTestSerializedScriptValueInterface dealloc]):
2296         (-[DOMTestSerializedScriptValueInterface finalize]):
2297         (-[DOMTestSerializedScriptValueInterface value]):
2298         (core):
2299         (kit):
2300         * bindings/scripts/test/ObjC/DOMTestSerializedScriptValueInterfaceInternal.h: Added.
2301         * bindings/scripts/test/TestSerializedScriptValueInterface.idl: Added.
2302         * bindings/scripts/test/V8/V8TestInterface.cpp:
2303         (WebCore::ConfigureV8TestInterfaceTemplate):
2304         * bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp: Copied from Source/WebCore/bindings/scripts/test/V8/V8TestInterface.cpp.
2305         (WebCore::TestSerializedScriptValueInterfaceInternal::V8_USE):
2306         (WebCore::ConfigureV8TestSerializedScriptValueInterfaceTemplate):
2307         (WebCore::V8TestSerializedScriptValueInterface::GetRawTemplate):
2308         (WebCore::V8TestSerializedScriptValueInterface::GetTemplate):
2309         (WebCore::V8TestSerializedScriptValueInterface::HasInstance):
2310         (WebCore::V8TestSerializedScriptValueInterface::wrapSlow):
2311         (WebCore::V8TestSerializedScriptValueInterface::derefObject):
2312         * bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.h: Added.
2313         (WebCore::V8TestSerializedScriptValueInterface::toNative):
2314         (WebCore::V8TestSerializedScriptValueInterface::wrap):
2315         (WebCore::toV8):
2316
2317 2011-03-01  Oliver Hunt  <oliver@apple.com>
2318
2319         Reviewed by Joseph Pecoraro.
2320
2321         Misaligned memory access in CloneDeserializer on all ARM arch.
2322         https://bugs.webkit.org/show_bug.cgi?id=48742
2323
2324         Push platforms that need aligned memory access down the
2325         endian independent serialization and deserialization
2326         paths.
2327
2328         * bindings/js/SerializedScriptValue.cpp:
2329
2330 2011-03-01  Joseph Pecoraro  <joepeck@webkit.org>
2331
2332         Reviewed by Kenneth Rohde Christiansen.
2333
2334         Viewport Warning/Error Messages Are Now Inaccurate
2335         https://bugs.webkit.org/show_bug.cgi?id=53707
2336
2337         Correct and improve the error messages for viewport
2338         parsing. Clarify the difference between incorrect
2339         keys, values, and when to use the device-width or
2340         device-height constants.
2341
2342         * dom/ViewportArguments.cpp:
2343         (WebCore::computeViewportAttributes): suggest using keywords if fixed input matches device width or height.
2344         (WebCore::numericPrefix):
2345         (WebCore::findSizeValue): remove incorrect warnings about fixed numbers because we don't know the device width or height.
2346         (WebCore::setViewportFeature): report a warning for an unrecognized key.
2347         (WebCore::viewportErrorMessageTemplate): added template for unrecognized key.
2348         (WebCore::viewportErrorMessageLevel):
2349         * dom/ViewportArguments.h:
2350
2351 2011-03-01  Ryosuke Niwa  <rniwa@webkit.org>
2352
2353         Reviewed by Darin Adler.
2354
2355         WebKit does not merge text decorations in the typing style and the selected element properly
2356         https://bugs.webkit.org/show_bug.cgi?id=55349
2357
2358         The bug was caused by EditingStyle::mergeTypingStyle's not properly merging text decoration property.
2359         Fixed the bug by extracting a function from ApplyStyleCommand::pushDownInlineStyleAroundNode and
2360         calling it in pushDownInlineStyleAroundNode and in mergeTypingStyle.
2361
2362         Test: editing/execCommand/merge-text-decoration-with-typing-style.html
2363
2364         * editing/ApplyStyleCommand.cpp:
2365         (WebCore::ApplyStyleCommand::applyInlineStyleToPushDown): Takes EditingStyle*;
2366         calls mergeInlineStyleOfElement.
2367         (WebCore::ApplyStyleCommand::pushDownInlineStyleAroundNode): Calls applyInlineStyleToPushDown.
2368         (WebCore::ApplyStyleCommand::removeInlineStyle): Ditto.
2369         * editing/ApplyStyleCommand.h:
2370         * editing/EditingStyle.cpp:
2371         (WebCore::EditingStyle::mergeTypingStyle): Added; calls mergeStyle.
2372         (WebCore::EditingStyle::mergeInlineStyleOfElement): Ditto.
2373         (WebCore::EditingStyle::mergeStyle): Extracted from applyInlineStyleToPushDown.
2374         * editing/EditingStyle.h:
2375
2376 2011-03-01  Levi Weintraub  <leviw@chromium.org>
2377
2378         Reviewed by Ryosuke Niwa.
2379
2380         Stop instantiating legacy editing Positions in VisiblePosition
2381         https://bugs.webkit.org/show_bug.cgi?id=52919
2382
2383         Changing VisiblePosition completely away from legacy positions.
2384
2385         No new tests since this is functionaly equivalent.
2386
2387         * WebCore.exp.in: Removing the legacy VisiblePosition constructor and
2388         adding the PositionIsOffsetInAnchor symbol. If we must create VisiblePositions
2389         outside of WebCore, they should be parent anchored.
2390         * accessibility/AXObjectCache.cpp:
2391         (WebCore::AXObjectCache::visiblePositionForTextMarkerData):
2392         * accessibility/AccessibilityObject.cpp:
2393         (WebCore::startOfStyleRange):
2394         (WebCore::endOfStyleRange):
2395         * accessibility/AccessibilityRenderObject.cpp:
2396         (WebCore::AccessibilityRenderObject::visiblePositionForIndex):
2397         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
2398         (objectAndOffsetUnignored):
2399         * dom/Position.cpp:
2400         (WebCore::Position::document): Added this inline function to avoid the necessity
2401         of calling anchorNode to assure a document from a Position.
2402         (WebCore::Position::upstream): Fixed to correctly respect PositionIsAfterAnchor
2403         (WebCore::Position::downstream): ditto
2404         * dom/Range.cpp:
2405         (WebCore::Range::editingStartPosition):
2406         * editing/Editor.cpp:
2407         (WebCore::Editor::canDeleteRange):
2408         * editing/ReplaceSelectionCommand.cpp:
2409         (WebCore::ReplaceSelectionCommand::doApply):
2410         * editing/SelectionController.cpp:
2411         (WebCore::SelectionController::selectFrameElementInParentIfFullySelected):
2412         (WebCore::SelectionController::setSelectedRange):
2413         * editing/TextIterator.cpp:
2414         (WebCore::TextIterator::shouldRepresentNodeOffsetZero):
2415         * editing/TypingCommand.cpp:
2416         (WebCore::TypingCommand::deleteKeyPressed):
2417         * editing/VisiblePosition.cpp:
2418         (WebCore::VisiblePosition::leftVisuallyDistinctCandidate):
2419         (WebCore::VisiblePosition::rightVisuallyDistinctCandidate):
2420         (WebCore::VisiblePosition::canonicalPosition):
2421         (WebCore::VisiblePosition::characterAfter):
2422         (WebCore::VisiblePosition::localCaretRect):
2423         (WebCore::makeRange):
2424         (WebCore::startVisiblePosition):
2425         (WebCore::endVisiblePosition):
2426         (WebCore::setStart):
2427         (WebCore::setEnd):
2428         (WebCore::isFirstVisiblePositionInNode):
2429         (WebCore::isLastVisiblePositionInNode):
2430         * editing/VisiblePosition.h:
2431         (WebCore::VisiblePosition::VisiblePosition):
2432         * editing/htmlediting.cpp:
2433         (WebCore::firstInSpecialElement):
2434         (WebCore::lastInSpecialElement):
2435         (WebCore::visiblePositionBeforeNode):
2436         (WebCore::visiblePositionAfterNode):
2437         * editing/visible_units.cpp:
2438         (WebCore::startPositionForLine):
2439         (WebCore::endPositionForLine):
2440         (WebCore::previousLinePosition):
2441         (WebCore::nextLinePosition):
2442         (WebCore::startOfParagraph):
2443         (WebCore::endOfParagraph):
2444         (WebCore::endOfBlock):
2445         (WebCore::startOfDocument):
2446         (WebCore::endOfDocument):
2447         (WebCore::logicalStartPositionForLine):
2448         (WebCore::logicalEndPositionForLine):
2449         * page/DOMSelection.cpp:
2450         (WebCore::DOMSelection::collapse):
2451         (WebCore::DOMSelection::setBaseAndExtent):
2452         (WebCore::DOMSelection::setPosition):
2453         (WebCore::DOMSelection::extend):
2454         * page/EventHandler.cpp:
2455         (WebCore::EventHandler::handleMousePressEventSingleClick):
2456         * rendering/RenderObject.cpp:
2457         (WebCore::RenderObject::createVisiblePosition):
2458         * rendering/RenderTextControl.cpp:
2459         (WebCore::RenderTextControl::visiblePositionForIndex):
2460         * svg/SVGTextContentElement.cpp:
2461         (WebCore::SVGTextContentElement::selectSubString):
2462
2463 2011-03-01  Jeremy Orlow  <jorlow@chromium.org>
2464
2465        Reviewed by Steve Block.
2466
2467        When an IDBTransaction is aborted, all requests that have not yet fired should fire an ABORT_ERR
2468        https://bugs.webkit.org/show_bug.cgi?id=54785
2469
2470        This patch adds in a lot of sanity checks/ASSERTs to make sure we're doing
2471        the right thing and continue to do the right thing. It also modifies EventQueue
2472        so that we can cancel an event. To do this efficiently, the vector is now a
2473        ListHashSet.
2474
2475        Cancelling the event is harder/messier, but the most deterministic thing to do.
2476        To the user, the work isn't done until we fire the onsuccess/onerror handler.
2477        So the event (which does fire that) needs to be cancelable.
2478
2479        transaction-abort.html tests this.
2480
2481        * dom/EventQueue.cpp:
2482        (WebCore::EventQueue::enqueueEvent):
2483        (WebCore::EventQueue::cancelEvent):
2484        (WebCore::EventQueue::pendingEventTimerFired):
2485        (WebCore::EventQueue::dispatchEvent):
2486        * dom/EventQueue.h:
2487        * dom/ExceptionCode.cpp:
2488        * storage/IDBCursor.cpp:
2489        (WebCore::IDBCursor::update):
2490        (WebCore::IDBCursor::deleteFunction):
2491        * storage/IDBDatabaseBackendImpl.cpp:
2492        (WebCore::IDBDatabaseBackendImpl::close):
2493        * storage/IDBDatabaseException.h:
2494        * storage/IDBIndex.cpp:
2495        (WebCore::IDBIndex::openCursor):
2496        (WebCore::IDBIndex::openKeyCursor):
2497        (WebCore::IDBIndex::get):
2498        (WebCore::IDBIndex::getKey):
2499        * storage/IDBObjectStore.cpp:
2500        (WebCore::IDBObjectStore::get):
2501        (WebCore::IDBObjectStore::add):
2502        (WebCore::IDBObjectStore::put):
2503        (WebCore::IDBObjectStore::deleteFunction):
2504        (WebCore::IDBObjectStore::clear):
2505        (WebCore::IDBObjectStore::openCursor):
2506        * storage/IDBRequest.cpp:
2507        (WebCore::IDBRequest::IDBRequest):
2508        (WebCore::IDBRequest::~IDBRequest):
2509        (WebCore::IDBRequest::readyState):
2510        (WebCore::IDBRequest::markEarlyDeath):
2511        (WebCore::IDBRequest::source):
2512        (WebCore::IDBRequest::abort):
2513        (WebCore::IDBRequest::onSuccess):
2514        (WebCore::IDBRequest::dispatchEvent):
2515        (WebCore::IDBRequest::enqueueEvent):
2516        * storage/IDBRequest.h:
2517        * storage/IDBTransaction.cpp:
2518        (WebCore::IDBTransaction::registerRequest):
2519        (WebCore::IDBTransaction::unregisterRequest):
2520        (WebCore::IDBTransaction::onAbort):
2521        * storage/IDBTransaction.h:
2522
2523 2011-03-01  Jeremy Orlow  <jorlow@chromium.org>
2524
2525         Reviewed by Mihai Parparita.
2526
2527         EventQueue needs to be ref counted
2528         https://bugs.webkit.org/show_bug.cgi?id=55512
2529
2530         EventQueue needs to be ref counted because it's possible for its instance
2531         to be deleted while it's dispatching events. This is the reason why
2532         https://bugs.webkit.org/show_bug.cgi?id=54785 had to be reverted.
2533
2534         No change of behavior, so no tests.
2535
2536         * dom/Document.h:
2537         * dom/EventQueue.cpp:
2538         (WebCore::EventQueue::create):
2539         * dom/EventQueue.h:
2540
2541 2011-03-01  Helder Correia  <helder@sencha.com>
2542
2543         Reviewed by Simon Fraser.
2544
2545         No shadow when stroking a path with a gradient
2546         https://bugs.webkit.org/show_bug.cgi?id=55436
2547
2548         This happens in CG and is related to bug 52509, this time to be fixed
2549         in GraphicsContext::strokePath(). The gradient needs to be drawn
2550         clipped to the stroke on a CGLayer first, then the layer drawn on the
2551         GraphicsContext.
2552
2553         Tests: fast/canvas/canvas-strokePath-gradient-shadow.html
2554                svg/css/path-gradient-stroke-shadow.svg
2555
2556         * platform/graphics/cg/GraphicsContextCG.cpp:
2557         (WebCore::GraphicsContext::strokePath):
2558
2559 2011-03-01  David Hyatt  <hyatt@apple.com>
2560
2561         Reviewed by Dan Bernstein.
2562
2563         Fix Font::spaceWidth() to be a float instead of an int.
2564
2565         * platform/graphics/Font.h:
2566         (WebCore::Font::spaceWidth):
2567
2568 2011-02-28  Steve Block  <steveblock@google.com>
2569
2570         Reviewed by Jeremy Orlow.
2571
2572         Chromium gypi file should include Java bridge files from WebCore/bridge
2573         https://bugs.webkit.org/show_bug.cgi?id=55387
2574
2575         No new tests, no code changes.
2576
2577         * WebCore.gyp/WebCore.gyp:
2578         * WebCore.gypi:
2579
2580 2011-03-01  James Simonsen  <simonjam@chromium.org>
2581
2582         Reviewed by Tony Gentilcore.
2583
2584         [Web Timing] Handle the case where no responseEnd time is available.
2585         https://bugs.webkit.org/show_bug.cgi?id=55444
2586
2587         * loader/MainResourceLoader.cpp:
2588         (WebCore::MainResourceLoader::MainResourceLoader): Initialize to 0.
2589         (WebCore::MainResourceLoader::didFinishLoading): Fall back to current time if no other time is available.
2590
2591 2011-03-01  Patrick Gansterer  <paroga@webkit.org>
2592
2593         Unreviewed, adding missing change for r80034.
2594
2595         Add a handler class for Win32 HANDLE
2596         https://bugs.webkit.org/show_bug.cgi?id=55334
2597
2598         * platform/win/Win32Handle.h: Added missing WTF_MAKE_NONCOPYABLE macro.
2599
2600 2011-03-01  Sheriff Bot  <webkit.review.bot@gmail.com>
2601
2602         Unreviewed, rolling out r80037.
2603         http://trac.webkit.org/changeset/80037
2604         https://bugs.webkit.org/show_bug.cgi?id=55508
2605
2606         broke compile on SL (Requested by tonyg-cr on #webkit).
2607
2608         * Android.mk:
2609         * CMakeLists.txt:
2610         * GNUmakefile.am:
2611         * WebCore.gypi:
2612         * WebCore.pro:
2613         * WebCore.vcproj/WebCore.vcproj:
2614         * WebCore.xcodeproj/project.pbxproj:
2615         * css/CSSParser.cpp:
2616         (WebCore::CSSParser::parseValue):
2617         * css/CSSParser.h:
2618         * css/CSSStyleSelector.cpp:
2619         (WebCore::CSSStyleSelector::applyProperty):
2620         * css/html.css:
2621         (q:before):
2622         (q:after):
2623         * rendering/RenderBlockLineLayout.cpp:
2624         (WebCore::dirtyLineBoxesForRenderer):
2625         * rendering/RenderObject.h:
2626         * rendering/RenderObjectChildList.cpp:
2627         (WebCore::RenderObjectChildList::removeChildNode):
2628         (WebCore::RenderObjectChildList::appendChildNode):
2629         (WebCore::RenderObjectChildList::insertChildNode):
2630         (WebCore::RenderObjectChildList::updateBeforeAfterContent):
2631         * rendering/RenderQuote.cpp: Removed.
2632         * rendering/RenderQuote.h: Removed.
2633         * rendering/RenderingAllInOne.cpp:
2634         * rendering/style/ContentData.cpp:
2635         (WebCore::ContentData::dataEquivalent):
2636         (WebCore::ContentData::deleteContent):
2637         * rendering/style/ContentData.h:
2638         * rendering/style/QuotesData.cpp: Removed.
2639         * rendering/style/QuotesData.h: Removed.
2640         * rendering/style/RenderStyle.cpp:
2641         * rendering/style/RenderStyle.h:
2642         * rendering/style/RenderStyleConstants.h:
2643         * rendering/style/StyleAllInOne.cpp:
2644         * rendering/style/StyleRareInheritedData.cpp:
2645         (WebCore::StyleRareInheritedData::operator==):
2646         * rendering/style/StyleRareInheritedData.h:
2647
2648 2011-03-01  Abhishek Arya  <inferno@chromium.org>
2649
2650         Reviewed by Dave Hyatt.
2651
2652         Paint outline for tables.
2653         https://bugs.webkit.org/show_bug.cgi?id=55474
2654
2655         Test: fast/table/table-and-parts-outline.html
2656
2657         * rendering/RenderTable.cpp:
2658         (WebCore::RenderTable::paintObject):
2659
2660 2011-03-01  Sheriff Bot  <webkit.review.bot@gmail.com>
2661
2662         Unreviewed, rolling out r80028.
2663         http://trac.webkit.org/changeset/80028
2664         https://bugs.webkit.org/show_bug.cgi?id=55502
2665
2666         'caused crashes; rolling out while investigating' (Requested
2667         by jorlow on #webkit).
2668
2669         * dom/EventQueue.cpp:
2670         (WebCore::EventQueue::enqueueEvent):
2671         (WebCore::EventQueue::pendingEventTimerFired):
2672         (WebCore::EventQueue::dispatchEvent):
2673         * dom/EventQueue.h:
2674         * dom/ExceptionCode.cpp:
2675         * storage/IDBCursor.cpp:
2676         (WebCore::IDBCursor::update):
2677         (WebCore::IDBCursor::deleteFunction):
2678         * storage/IDBDatabaseException.h:
2679         * storage/IDBDatabaseException.idl:
2680         * storage/IDBIndex.cpp:
2681         (WebCore::IDBIndex::openCursor):
2682         (WebCore::IDBIndex::openKeyCursor):
2683         (WebCore::IDBIndex::get):
2684         (WebCore::IDBIndex::getKey):
2685         * storage/IDBObjectStore.cpp:
2686         (WebCore::IDBObjectStore::get):
2687         (WebCore::IDBObjectStore::add):
2688         (WebCore::IDBObjectStore::put):
2689         (WebCore::IDBObjectStore::deleteFunction):
2690         (WebCore::IDBObjectStore::clear):
2691         (WebCore::IDBObjectStore::openCursor):
2692         * storage/IDBRequest.cpp:
2693         (WebCore::IDBRequest::IDBRequest):
2694         (WebCore::IDBRequest::~IDBRequest):
2695         (WebCore::IDBRequest::readyState):
2696         (WebCore::IDBRequest::dispatchEvent):
2697         (WebCore::IDBRequest::enqueueEvent):
2698         (WebCore::IDBRequest::source):
2699         * storage/IDBRequest.h:
2700         * storage/IDBTransaction.cpp:
2701         (WebCore::IDBTransaction::onAbort):
2702         * storage/IDBTransaction.h:
2703
2704 2011-03-01  Carol Szabo  <carol.szabo@nokia.com>
2705
2706         Reviewed by David Hyatt  <hyatt@apple.com>
2707
2708         content property doesn't support quotes
2709         https://bugs.webkit.org/show_bug.cgi?id=6503
2710
2711         Added full support for quotes as defined by CSS 2.1.
2712
2713         Tests: fast/css/content/content-quotes-01.html
2714                fast/css/content/content-quotes-02.html
2715                fast/css/content/content-quotes-03.html
2716                fast/css/content/content-quotes-04.html
2717                fast/css/content/content-quotes-05.html
2718
2719         * Android.mk:
2720         * CMakeLists.txt:
2721         * GNUmakefile.am:
2722         * WebCore.pro:
2723         * WebCore.vcproj/WebCore.vcproj:
2724         * WebCore.xcodeproj/project.pbxproj:
2725         Added RenderQuote.cpp/h and QuotesData.cpp/h to the dependency lists
2726         * css/CSSParser.cpp:
2727         (WebCore::CSSParser::parseValue):
2728         (WebCore::CSSParser::parseQuotes):
2729         * css/CSSParser.h:
2730         Added needed stylesheet parsing support for quotes,
2731         (no-)open-quote and (no-)close-quote
2732         * css/CSSStyleSelector.cpp:
2733         (WebCore::CSSStyleSelector::applyProperty):
2734         Handled setting of the new quotes RenderStyle property and added
2735         handling of quotes for the content property.
2736         * css/html.css:
2737         (q:before):
2738         (q:after):
2739         replaced the '"' workaround with open/close-quote
2740         * rendering/RenderBlockLineLayout.cpp:
2741         (WebCore::dirtyLineBoxesForRenderer):
2742         Made RenderQuote behave like RenderCounter.
2743         Needed to ensure that the Quote text is calculated before layout,
2744         just as it is for RenderCounter.
2745         * rendering/RenderObject.h:
2746         (WebCore::RenderObject::isQuote):
2747         * rendering/RenderObjectChildList.cpp:
2748         (WebCore::RenderObjectChildList::removeChildNode):
2749         (WebCore::RenderObjectChildList::appendChildNode):
2750         (WebCore::RenderObjectChildList::insertChildNode):
2751         Handled updating of quote depth when renderers are added and removed
2752         from the tree.
2753         (WebCore::RenderObjectChildList::updateBeforeAfterContent):
2754         * rendering/RenderQuote.cpp: Added.
2755         (WebCore::adjustDepth):
2756         (WebCore::RenderQuote::RenderQuote):
2757         (WebCore::RenderQuote::~RenderQuote):
2758         (WebCore::RenderQuote::renderName):
2759         (WebCore::RenderQuote::placeQuote):
2760         (WebCore::RenderQuote::originalText):
2761         (WebCore::RenderQuote::computePreferredLogicalWidths):
2762         (WebCore::RenderQuote::rendererSubtreeAttached):
2763         (WebCore::RenderQuote::rendererRemovedFromTree):
2764         (WebCore::RenderQuote::styleDidChange):
2765         * rendering/RenderQuote.h: Added.
2766         (WebCore::RenderQuote::isQuote):
2767         (WebCore::toRenderQuote):
2768         * rendering/RenderingAllInOne.cpp:
2769         Included RenderQuote.cpp
2770         * rendering/style/StyleAllInOne.cpp:
2771         Included QuotesData.cpp
2772         * rendering/style/ContentData.cpp:
2773         (WebCore::ContentData::dataEquivalent):
2774         Checked for quotetype identity.
2775         (WebCore::ContentData::deleteContent):
2776         Accounted for the new QUOTE_TYPE.
2777         * rendering/style/ContentData.h:
2778         (WebCore::ContentData::isQuote):
2779         (WebCore::ContentData::quote):
2780         (WebCore::ContentData::setQuote):
2781         * rendering/style/RenderStyle.cpp:
2782         (WebCore::RenderStyle::setContent):
2783         * rendering/style/RenderStyle.h:
2784         (WebCore::InheritedFlags::quotes):
2785         (WebCore::InheritedFlags::setQuotes):
2786         * rendering/style/RenderStyleConstants.h:
2787         * rendering/style/StyleRareInheritedData.cpp:
2788         (WebCore::StyleRareInheritedData::operator==):
2789         Included quotes in equality check.
2790         * rendering/style/StyleRareInheritedData.h:
2791         Added quotes
2792
2793 2011-03-01  Michael Nordman  <michaeln@google.com>
2794
2795         Reviewed by Alexey Proskuryakov.
2796
2797         Alter the relative priorities of network vs fallback namespaces in the appcache.
2798         If a resource url is in an appcache's network namespace and fallback namespace, the network
2799         namespace wins (with the exception of the special '*' network namespace which does not take
2800         priority over the fallback namespace.
2801         https://bugs.webkit.org/show_bug.cgi?id=49292
2802
2803         Test: http/tests/appcache/online-fallback-layering.html
2804
2805         * loader/appcache/ApplicationCache.cpp:
2806         (WebCore::ApplicationCache::isURLInOnlineWhitelist):
2807         * loader/appcache/ApplicationCacheHost.cpp:
2808         (WebCore::ApplicationCacheHost::shouldLoadResourceFromApplicationCache):
2809         (WebCore::ApplicationCacheHost::getApplicationCacheFallbackResource):
2810         * loader/appcache/ApplicationCacheStorage.cpp:
2811         (WebCore::ApplicationCacheStorage::fallbackCacheGroupForURL):
2812
2813 2011-03-01  Patrick Gansterer  <paroga@webkit.org>
2814
2815         Reviewed by Adam Roben.
2816
2817         Add a handler class for Win32 HANDLE
2818         https://bugs.webkit.org/show_bug.cgi?id=55334
2819
2820         This class will call CloseHandle in the destructor for valid handles.
2821
2822         * platform/win/Win32Handle.h: Added.
2823
2824 2011-03-01  Eric Carlson  <eric.carlson@apple.com>
2825
2826         Reviewed by Chris Marrin.
2827
2828         <audio> and <video> should respect private browsing mode
2829         https://bugs.webkit.org/show_bug.cgi?id=55287
2830         <rdar://problem/9057699>
2831
2832         No new tests, this is just the plumbing.
2833
2834         * dom/Document.cpp:
2835         (WebCore::Document::privateBrowsingStateDidChange): New.
2836         (WebCore::Document::registerForPrivateBrowsingStateChangedCallbacks): Ditto.
2837         (WebCore::Document::unregisterForPrivateBrowsingStateChangedCallbacks): Ditto.
2838         * dom/Document.h:
2839
2840         * dom/Element.h:
2841         (WebCore::Element::privateBrowsingStateDidChange): New.
2842
2843         * html/HTMLMediaElement.cpp:
2844         (WebCore::HTMLMediaElement::HTMLMediaElement): Register for privacy mode changes.
2845         (WebCore::HTMLMediaElement::~HTMLMediaElement): Unregister for privacy mode changes.
2846         (WebCore::HTMLMediaElement::loadResource): Tell player current privacy mode.
2847         (WebCore::HTMLMediaElement::privateBrowsingStateDidChange):  New, call through to MediaPlayer.
2848         * html/HTMLMediaElement.h:
2849
2850         * page/Page.cpp:
2851         (WebCore::Page::privateBrowsingStateChanged): Call document()->privateBrowsingStateDidChange.
2852
2853         * platform/graphics/MediaPlayer.cpp:
2854         (WebCore::MediaPlayer::setPrivateBrowsingMode): New, call through to media engine.
2855         * platform/graphics/MediaPlayer.h:
2856
2857         * platform/graphics/MediaPlayerPrivate.h:
2858         (WebCore::MediaPlayerPrivateInterface::setPrivateBrowsingMode):  Declare new interface.
2859
2860 2011-03-01  Jeremy Orlow  <jorlow@chromium.org>
2861
2862         Reviewed by Steve Block.
2863
2864         When an IDBTransaction is aborted, all requests that have not yet fired should fire an ABORT_ERR
2865         https://bugs.webkit.org/show_bug.cgi?id=54785
2866
2867         This patch adds in a lot of sanity checks/ASSERTs to make sure we're doing
2868         the right thing and continue to do the right thing. It also modifies EventQueue
2869         so that we can cancel an event. To do this efficiently, the vector is now a
2870         ListHashSet.
2871
2872         Canelling the event is harder/messier, but the most deterministic thing to do.
2873         To the user, the work isn't done until we fire the onsuccess/onerror handler.
2874         So the event (which does fire that) needs to be cancelable.
2875
2876         transaction-abort.html tests this.
2877
2878         * dom/EventQueue.cpp:
2879         (WebCore::EventQueue::enqueueEvent):
2880         (WebCore::EventQueue::cancelEvent):
2881         (WebCore::EventQueue::pendingEventTimerFired):
2882         (WebCore::EventQueue::dispatchEvent):
2883         * dom/EventQueue.h:
2884         * dom/ExceptionCode.cpp:
2885         * storage/IDBCursor.cpp:
2886         (WebCore::IDBCursor::update):
2887         (WebCore::IDBCursor::deleteFunction):
2888         * storage/IDBDatabaseBackendImpl.cpp:
2889         (WebCore::IDBDatabaseBackendImpl::close):
2890         * storage/IDBDatabaseException.h:
2891         * storage/IDBIndex.cpp:
2892         (WebCore::IDBIndex::openCursor):
2893         (WebCore::IDBIndex::openKeyCursor):
2894         (WebCore::IDBIndex::get):
2895         (WebCore::IDBIndex::getKey):
2896         * storage/IDBObjectStore.cpp:
2897         (WebCore::IDBObjectStore::get):
2898         (WebCore::IDBObjectStore::add):
2899         (WebCore::IDBObjectStore::put):
2900         (WebCore::IDBObjectStore::deleteFunction):
2901         (WebCore::IDBObjectStore::clear):
2902         (WebCore::IDBObjectStore::openCursor):
2903         * storage/IDBRequest.cpp:
2904         (WebCore::IDBRequest::IDBRequest):
2905         (WebCore::IDBRequest::~IDBRequest):
2906         (WebCore::IDBRequest::readyState):
2907         (WebCore::IDBRequest::markEarlyDeath):
2908         (WebCore::IDBRequest::source):
2909         (WebCore::IDBRequest::abort):
2910         (WebCore::IDBRequest::onSuccess):
2911         (WebCore::IDBRequest::dispatchEvent):
2912         (WebCore::IDBRequest::enqueueEvent):
2913         * storage/IDBRequest.h:
2914         * storage/IDBTransaction.cpp:
2915         (WebCore::IDBTransaction::registerRequest):
2916         (WebCore::IDBTransaction::unregisterRequest):
2917         (WebCore::IDBTransaction::onAbort):
2918         * storage/IDBTransaction.h:
2919
2920 2011-03-01  Jeremy Orlow  <jorlow@chromium.org>
2921
2922         Reviewed by Steve Block.
2923
2924         Only IndexedDB's error event should be cancelable
2925         https://bugs.webkit.org/show_bug.cgi?id=55413
2926
2927         * storage/IDBRequest.cpp:
2928         (WebCore::createSuccessEvent):
2929         * storage/IDBTransaction.cpp:
2930         (WebCore::IDBTransaction::onAbort):
2931         (WebCore::IDBTransaction::onComplete):
2932
2933 2011-03-01  Jia Pu  <jpu@apple.com>
2934
2935         Reviewed by Darin Adler.
2936
2937         Remove CorrectionIndicator markers sooner.
2938         https://bugs.webkit.org/show_bug.cgi?id=54893
2939         <rdar://problem/8997524>
2940
2941         Test: platform/mac/editing/spelling/removing-underline-after-accepting-autocorrection-using-punctuation.html
2942
2943         This patch changes the autocorrection behavior on Mac OS X. We want to remove CorrectionIndicator
2944         marker after any editing command if the command:
2945         1. is not a SpellingCorrectionCommand itself.
2946         2. is not the command that triggers the autocorrection.
2947         This is achieved by adding shouldRetainAutocorrectionIndicator() function to EditCommand. This function returns
2948         false for all commands derived from EditCommand, except SpellingCorrectionCommand and TypingCommand. This function
2949         always returns true for SpellingCorrectionCommand. For TypingCommand, the return value is determined by member
2950         variable m_shouldRetainAutocorrectionIndicator, which can be modified by passing option into the TypingCommand's
2951         public functions.
2952         
2953         To avoid constantly searching marker list, we use variable DocumentMarkerController::m_absentMarkerTypeCache
2954         to cache whether there is any marker of a particular type.
2955
2956         This patch also fixes two minor existing bugs.
2957         
2958         1. We used to show reversion panel for word with CorrectionIndicator marker. This is incorrect because
2959         CorrectionIndicator marker can be removed from corrected words. Since all autocorrected words have Replacement
2960         marker unless the whole word is deleted, the correct behavior is to show reversion panel for word with Replacement
2961         marker, since all autocorrected words have such marker. However, since we don't want to show the reversion panel
2962         if an autocorrected word has been edited, we also check to see if the Replacement marker's description is null.
2963         
2964         This works as following:
2965         When we apply an autocorrection, we add Replacement marker to corrected word, and store original word
2966         as the marker's description. If the user edited the corrected word afterward, we set description to null.
2967         So when we decide whether to show a reversion panel, we not only check for the existence of Replacement
2968         marker, but also check if description is null.
2969         
2970         2. Fixed an assertion violation in Editor::removeSpellAndCorrectionMarkersFromWordsToBeEdited(), which would
2971         occur when deleting the first character in an editable area.
2972
2973         * dom/DocumentMarker.h: Added m_possiblyExistingMarkerTypes to allow quickly checking whether a marker type is
2974            completely in from the document.
2975
2976         * dom/DocumentMarkerController.cpp: Most of the functions listed here are optimized for early return by checking
2977            the return value of possiblyHasMarkers() at beginning.
2978         (WebCore::DocumentMarkerController::possiblyHasMarkers):
2979         (WebCore::DocumentMarkerController::DocumentMarkerController):
2980         (WebCore::DocumentMarkerController::detach):
2981         (WebCore::DocumentMarkerController::removeMarkers):
2982         (WebCore::DocumentMarkerController::addMarker):
2983         (WebCore::DocumentMarkerController::copyMarkers):
2984         (WebCore::DocumentMarkerController::markerContainingPoint):
2985         (WebCore::DocumentMarkerController::renderedRectsForMarkers):
2986         (WebCore::DocumentMarkerController::removeMarkersFromMarkerMapVectorPair):
2987         (WebCore::DocumentMarkerController::repaintMarkers):
2988         (WebCore::DocumentMarkerController::shiftMarkers):
2989         (WebCore::DocumentMarkerController::setMarkersActive):
2990         (WebCore::DocumentMarkerController::hasMarkers):
2991         (WebCore::DocumentMarkerController::clearDescriptionOnMarkersIntersectingRange):
2992         * dom/DocumentMarkerController.h:
2993         * editing/EditCommand.cpp:
2994         (WebCore::EditCommand::apply):
2995         (WebCore::EditCommand::shouldRetainAutocorrectionIndicator):
2996         (WebCore::EditCommand::setShouldRetainAutocorrectionIndicator):
2997         * editing/EditCommand.h:
2998         * editing/Editor.cpp:
2999         (WebCore::Editor::respondToChangedSelection):
3000         (WebCore::Editor::appliedEditing):
3001         (WebCore::Editor::insertTextWithoutSendingTextEvent):
3002         (WebCore::Editor::insertLineBreak):
3003         (WebCore::Editor::insertParagraphSeparator):
3004         (WebCore::Editor::markMisspellingsAfterTypingToWord):
3005         (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges):
3006         (WebCore::Editor::removeSpellAndCorrectionMarkersFromWordsToBeEdited):
3007         (WebCore::Editor::applyAutocorrectionBeforeTypingIfAppropriate):
3008         * editing/Editor.h:
3009         * editing/EditorCommand.cpp:
3010         (WebCore::executeInsertLineBreak):
3011         (WebCore::executeInsertParagraph):
3012         (WebCore::executeInsertText):
3013         * editing/SpellingCorrectionCommand.cpp:
3014         (WebCore::SpellingCorrectionCommand::shouldRetainAutocorrectionIndicator):
3015         * editing/SpellingCorrectionCommand.h:
3016         * editing/TypingCommand.cpp:
3017         (WebCore::TypingCommand::TypingCommand):
3018         (WebCore::TypingCommand::deleteSelection):
3019         (WebCore::TypingCommand::deleteKeyPressed):
3020         (WebCore::TypingCommand::forwardDeleteKeyPressed):
3021         (WebCore::TypingCommand::updateSelectionIfDifferentFromCurrentSelection):
3022         (WebCore::TypingCommand::insertText):
3023         (WebCore::TypingCommand::insertLineBreak):
3024         (WebCore::TypingCommand::insertParagraphSeparatorInQuotedContent):
3025         (WebCore::TypingCommand::insertParagraphSeparator):
3026         * editing/TypingCommand.h:
3027         (WebCore::TypingCommand::create):
3028         (WebCore::TypingCommand::shouldRetainAutocorrectionIndicator):
3029         (WebCore::TypingCommand::setShouldRetainAutocorrectionIndicator):
3030         * manual-tests/autocorrection/type-whitespace-to-dismiss-reversion.html:
3031
3032 2011-03-01  Renata Hodovan  <reni@webkit.org>
3033
3034         Reviewed by Andreas Kling.
3035
3036         FEDisplacementMapElement changes doesn't require relayout
3037         https://bugs.webkit.org/show_bug.cgi?id=55454
3038
3039         When the FEDisplacementMapElement receives an update message but the given value remains the same we don't need
3040         to relayout the filter.
3041
3042         No new tests are needed because this modification is covered by the dynamic update tests of FEDisplacementMap.
3043
3044         * platform/graphics/filters/FEDisplacementMap.cpp:
3045         (WebCore::FEDisplacementMap::setXChannelSelector):
3046         (WebCore::FEDisplacementMap::setYChannelSelector):
3047         (WebCore::FEDisplacementMap::setScale):
3048         * platform/graphics/filters/FEDisplacementMap.h:
3049         * svg/SVGFEDisplacementMapElement.cpp:
3050         (WebCore::SVGFEDisplacementMapElement::setFilterEffectAttribute):
3051         (WebCore::SVGFEDisplacementMapElement::svgAttributeChanged):
3052         * svg/SVGFEDisplacementMapElement.h:
3053
3054 2011-03-01  Dan Bernstein  <mitz@apple.com>
3055
3056         Reviewed by Darin Adler.
3057
3058         <rdar://problem/8902714> Expand ruby text when it is shorter than the ruby base
3059         https://bugs.webkit.org/show_bug.cgi?id=55487
3060
3061         * css/html.css:
3062         (ruby > rt): Changed the default text-align value to -webkit-auto to signal
3063         the default expansion behavior.
3064         * rendering/RenderBlock.h:
3065         (WebCore::RenderRubyText::textAlignmentForLine): Made protected.
3066         (WebCore::RenderBlock::adjustInlineDirectionLineBounds): Made protected.
3067         * rendering/RenderRubyText.cpp:
3068         (WebCore::RenderRubyText::textAlignmentForLine): Added. If text-align is
3069         -webkit-auto, returns JUSTIFY to allow expansion.
3070         (WebCore::RenderRubyText::adjustInlineDirectionLineBounds): Added. If
3071         text-align is -webkit-auto, insets the line such that the inset on each side
3072         is the half the inter-ideograph expansion, or one ruby character wide,
3073         whichever is smaller.
3074         * rendering/RenderRubyText.h:
3075
3076 2011-03-01  Sam Weinig  <sam@webkit.org>
3077
3078         Reviewed by Timothy Hatcher.
3079
3080         WebKit2 needs to be made localizable
3081         https://bugs.webkit.org/show_bug.cgi?id=55483
3082
3083         * English.lproj/Localizable.strings: Copied from Source/WebKit/English.lproj/Localizable.strings.
3084         * WebCore.xcodeproj/project.pbxproj:
3085         Move Localizable.strings to WebCore.
3086
3087         * WebCore.exp.in:
3088         Add export for localizedString function.
3089
3090         * platform/LocalizedStrings.h:
3091         * platform/mac/LocalizedStringsMac.mm: Added.
3092         Add function to get localized version of a string from the WebCore bundle.
3093
3094 2011-03-01  Joseph Pecoraro  <joepeck@webkit.org>
3095
3096         Reviewed by Timothy Hatcher.
3097
3098         All Console Messages should be passed to ChromeClients.
3099         https://bugs.webkit.org/show_bug.cgi?id=54926
3100
3101         Do not filter the message type here, allow clients
3102         to filter and deal with the different message types.
3103
3104         * page/Console.cpp:
3105         (WebCore::Console::addMessage):
3106
3107 2011-02-23  Joseph Pecoraro  <joepeck@webkit.org>
3108
3109         Reviewed by Kenneth Rohde Christiansen.
3110
3111         Viewport parsing no longer accepts "1.0;" value as valid.
3112         https://bugs.webkit.org/show_bug.cgi?id=53705
3113
3114         When parsing numeric values, the "css-viewport" spec says
3115         to use the number prefix, and the non numeric part of the
3116         string can be ignored. This matches our behavior before
3117         r67376. The change was that checking the error out condition
3118         of String::toFloat doesn't necessarily mean that there
3119         was a non-numeric prefix. This patch checks if there was
3120         or wasn't a non-numeric prefix.
3121
3122         There is a console warning in any case where a numeric
3123         value is not parsed cleanly. There is an error warning
3124         when it is not a number at all, and a tip warning when
3125         it has been truncated.
3126
3127         Error messages are slightly improved to provide more
3128         context, both the key and value, when an error happens.
3129
3130         Test: fast/viewport/viewport-129.html
3131
3132         * dom/ViewportArguments.cpp:
3133         (WebCore::numericPrefix):
3134         (WebCore::findSizeValue):
3135         (WebCore::findScaleValue):
3136         (WebCore::findUserScalableValue):
3137         (WebCore::findTargetDensityDPIValue):
3138         (WebCore::viewportErrorMessageTemplate):
3139         (WebCore::viewportErrorMessageLevel):
3140         (WebCore::reportViewportWarning):
3141         * dom/ViewportArguments.h:
3142
3143 2011-03-01  Ilya Tikhonovsky  <loislo@chromium.org>
3144
3145         Reviewed by Pavel Feldman.
3146
3147         Web Inspector: InjectedScript.setPropertyValue doesn't work.
3148         https://bugs.webkit.org/show_bug.cgi?id=55475
3149
3150         * inspector/InjectedScript.cpp:
3151         (WebCore::InjectedScript::setPropertyValue):
3152
3153 2011-03-01  Steve Block  <steveblock@google.com>
3154
3155         Reviewed by Jeremy Orlow.
3156
3157         Remove unused JavaString::uchars()
3158         https://bugs.webkit.org/show_bug.cgi?id=55465
3159
3160         No new tests, removing dead code only.
3161
3162         * bridge/jni/JNIBridge.h:
3163         * bridge/jni/jsc/JavaStringJSC.h:
3164         (JSC::Bindings::JavaStringImpl::utf8):
3165         * bridge/jni/v8/JavaStringV8.h:
3166
3167 2011-03-01  Alexander Pavlov  <apavlov@chromium.org>
3168
3169         Reviewed by Yury Semikhatsky.
3170
3171         Web Inspector: Extremely slow DOM search in GMail
3172         https://bugs.webkit.org/show_bug.cgi?id=55456
3173
3174         The solution comprises three major parts:
3175         - avoid multiple invocations of highlightSearchResults(), one per each nodeIds chunk.
3176         - cache highlighted node's innerHTML so that no extra _nodeTitleInfo() calls will be needed.
3177         - replace hand-written Text nodes iteration with a snapshot-based ".//text()" XPathResult.
3178
3179         * inspector/front-end/ElementsPanel.js:
3180         (WebInspector.ElementsPanel.prototype.searchCanceled):
3181         (WebInspector.ElementsPanel.prototype.addNodesToSearchResult):
3182         * inspector/front-end/ElementsTreeOutline.js:
3183         (WebInspector.ElementsTreeElement.prototype.highlightSearchResults):
3184         (WebInspector.ElementsTreeElement.prototype.updateTitle):
3185         ():
3186         * inspector/front-end/utilities.js:
3187         ():
3188
3189 2011-03-01  Adam Roben  <aroben@apple.com>
3190
3191         Fix multiple-definition linker warnings introduced by r79978 on Windows
3192
3193         * rendering/RenderingAllInOne.cpp: Removed TextControlInnerElements.cpp, as it is now being
3194         compiled separately.
3195
3196 2011-03-01  Andras Becsi  <abecsi@webkit.org>
3197
3198         Reviewed by Csaba Osztrogonác.
3199
3200         [Qt] Clean up the project files and move common options to WebKit.pri.
3201
3202         No new tests needed.
3203
3204         * WebCore.pri: Move common options to WebKit.pri.
3205         * WebCore.pro: Ditto.
3206
3207 2011-03-01  Steve Block  <steveblock@google.com>
3208
3209         Reviewed by Pavel Feldman.
3210
3211         JNI code in Java bridge is not correctly guarded
3212         https://bugs.webkit.org/show_bug.cgi?id=55459
3213
3214         No new tests, build fix only.
3215
3216         * bridge/jni/v8/JNIBridgeV8.cpp:
3217         * bridge/jni/v8/JNIBridgeV8.h:
3218         * bridge/jni/v8/JNIUtilityPrivate.cpp:
3219         * bridge/jni/v8/JNIUtilityPrivate.h:
3220         * bridge/jni/v8/JavaClassV8.cpp:
3221         * bridge/jni/v8/JavaClassV8.h:
3222         * bridge/jni/v8/JavaInstanceV8.cpp:
3223         * bridge/jni/v8/JavaInstanceV8.h:
3224         * bridge/jni/v8/JavaNPObjectV8.cpp:
3225         * bridge/jni/v8/JavaNPObjectV8.h:
3226
3227 2011-03-01  Steve Block  <steveblock@google.com>
3228
3229         Reviewed by Jeremy Orlow.
3230
3231         Bridge.h should not include BridgeJSC.h
3232         https://bugs.webkit.org/show_bug.cgi?id=55212
3233
3234         Instead, BridgeJSC.h should include Bridge.h and code should include
3235         BridgeJSC.h as appropriate.
3236
3237         This prevents ports that use V8 from having to include JSC-specific
3238         files, even if the contents of those files are guarded.
3239
3240         No new tests, cleanup only.
3241
3242         * bindings/js/JSPluginElementFunctions.cpp:
3243         * bindings/js/ScriptControllerBrew.cpp:
3244         * bindings/js/ScriptControllerGtk.cpp:
3245         * bindings/js/ScriptControllerHaiku.cpp:
3246         * bindings/js/ScriptControllerQt.cpp:
3247         * bindings/js/ScriptControllerMac.mm:
3248         * bindings/js/ScriptControllerWin.cpp:
3249         * bindings/js/ScriptControllerWx.cpp:
3250         * bindings/js/ScriptInstance.h:
3251         * bindings/objc/WebScriptObject.mm:
3252         * bridge/Bridge.h:
3253         * bridge/c/c_class.h:
3254         * bridge/c/c_instance.h:
3255         * bridge/c/c_runtime.h:
3256         * bridge/jni/jsc/JNIBridgeJSC.h:
3257         * bridge/jni/jsc/JavaInstanceJSC.h:
3258         * bridge/jsc/BridgeJSC.h:
3259         * bridge/objc/objc_runtime.h:
3260         * bridge/qt/qt_class.h:
3261         * bridge/qt/qt_instance.h:
3262         * bridge/qt/qt_pixmapruntime.h:
3263         * bridge/qt/qt_runtime.h:
3264         * bridge/runtime_array.h:
3265         * bridge/runtime_method.h:
3266         * bridge/runtime_object.h:
3267         * bridge/runtime_root.cpp:
3268         * bridge/testbindings.cpp:
3269         * bridge/testbindings.mm:
3270         * bridge/testqtbindings.cpp:
3271         * page/win/FrameWin.cpp:
3272         * platform/graphics/wince/MediaPlayerProxy.cpp:
3273         * plugins/PluginView.cpp:
3274         * plugins/PluginViewNone.cpp:
3275         * plugins/gtk/PluginViewGtk.cpp:
3276         * plugins/mac/PluginViewMac.mm:
3277         * plugins/qt/PluginViewQt.cpp:
3278         * plugins/symbian/PluginViewSymbian.cpp:
3279         * plugins/win/PluginViewWin.cpp:
3280
3281 2011-03-01  Nikolas Zimmermann  <nzimmermann@rim.com>
3282
3283         Reviewed by Antti Koivisto.
3284
3285         SVG 1.1 2nd Edition color-prop-05-t.svg exposes bug in 'currentColor' handling
3286         https://bugs.webkit.org/show_bug.cgi?id=54800
3287
3288         Wrong handling of currentColor on inherit
3289         https://bugs.webkit.org/show_bug.cgi?id=38102
3290
3291         Stop storing RefPtr<SVGPaint> objects in the SVGRenderStyle for fill/stroke. These are the last
3292         two objects that held references to CSSValues, they're all gone now, aligning better with RenderStyle.
3293         It's also dangerous, as a SVGPaint object can be shared by multiple SVGRenderStyles (MappedAttribute will
3294         once create a CSSStyleDeclaration for fill="red" and reuse it where possible), and it was easy to
3295         accidently mutate the object, affecting multiple styles. Instead store a Color, an URI and a paint
3296         type in SVGRenderStyle, enough to create a SVGPaint object, if needed (eg for computed styles).
3297
3298         <g color="green"><rect fill="currentColor"/> already worked fine in trunk, but
3299         <g fill="currentColor" color="green"><rect color="red"/> procuded a red rectangle.
3300
3301         In order to fix to bug we have to resolve all currentColor values for SVGPaint objects, in SVGCSSStyleSelector,
3302         as it's already done for SVGColor objects (stop-color, flood-color, etc.) instead of in RenderSVGResource::fill/strokePaintingResource,
3303         when trying to use the paint server. The correct "color" value that should be used from the RenderStyle, is directly
3304         available in CSSStyleSelector: in applyProperty m_style->color() gives the desired value. In CSSStyleSelector it's handled
3305         exactly this way for non-SVG currentColor properties. Also fix computed styles, which did not resolve currentColor for SVGPaint/SVGColor.
3306
3307         A previous patch implemented the SVGPaint/SVGColor API. SVG demands these CSSValues to be mutable. Introduce
3308         CSSMutableValue, which extends CSSValue by a Node pointer, and let SVGPaint/SVGColor inherit from it.
3309         Mutating a SVGPaint/SVGColor object now takes immediate effect, which is reflected in the inline style / computed style.
3310         (Note that getPresentationAttribute() already takes care of removing the CSSValue from the mapped attribute cache, so that it's no longer shared.)
3311
3312         Add several new tests covering the patch.
3313
3314         Tests: svg/W3C-SVG-1.1-SE/color-prop-05-t.svg
3315                svg/animations/animate-color-fill-currentColor.html
3316                svg/custom/SVGPaint-mutate-attribute.svg
3317                svg/custom/SVGPaint-mutate-inline-style.svg
3318
3319         * GNUMakefile.am: Add CSSMutableValue.h
3320         * WebCore.gypi: Ditto.
3321         * WebCore.xcodeproj/project.pbxproj: Ditto.
3322         * css/CSSMutableStyleDeclaration.cpp: Reset the Node pointer in all CSSMutableValues belonging to this style declaration.
3323         (WebCore::CSSMutableStyleDeclaration::~CSSMutableStyleDeclaration):
3324         * css/CSSMutableStyleDeclaration.h: Add destructor.
3325         * css/CSSMutableValue.h: Added.
3326         (WebCore::CSSMutableValue::CSSMutableValue):
3327         (WebCore::CSSMutableValue::~CSSMutableValue):
3328         (WebCore::CSSMutableValue::isMutableValue):
3329         (WebCore::CSSMutableValue::node):
3330         (WebCore::CSSMutableValue::setNode):
3331         (WebCore::CSSMutableValue::setNeedsStyleRecalc):
3332         * css/CSSStyleDeclaration.cpp:
3333         (WebCore::CSSStyleDeclaration::getPropertyCSSValue): Set the Node object of a CSSMutableValue to the Node, this style declaration belongs to.
3334         * css/CSSValue.h:
3335         (WebCore::CSSValue::isMutableValue): Return false, default.
3336         * css/SVGCSSComputedStyleDeclaration.cpp:
3337         (WebCore::CSSComputedStyleDeclaration::adjustSVGPaintForCurrentColor): Add helper function, resolving currentColor values for SVGPaint objects.
3338         (WebCore::CSSComputedStyleDeclaration::getSVGPropertyCSSValue): Use currentColorOrValidColor/adjustSVGPaintForCurrentColor to resolve SVGColor/SVGPaint values.
3339         * css/SVGCSSStyleSelector.cpp:
3340         (WebCore::CSSStyleSelector::applySVGProperty): Store fill/stroke uri, color, paint type seperated in SVGRenderStyle, don't store the full SVGPaint object anymore.
3341         * rendering/style/SVGRenderStyle.cpp:
3342         (WebCore::SVGRenderStyle::diff): Adapt to SVGPaint changes.
3343         * rendering/style/SVGRenderStyle.h: Ditto.
3344         (WebCore::SVGRenderStyle::initialFillOpacity):
3345         (WebCore::SVGRenderStyle::initialFillPaintType):
3346         (WebCore::SVGRenderStyle::initialFillPaintColor):
3347         (WebCore::SVGRenderStyle::initialFillPaintUri):
3348         (WebCore::SVGRenderStyle::initialStrokeOpacity):
3349         (WebCore::SVGRenderStyle::initialStrokePaintType):
3350         (WebCore::SVGRenderStyle::initialStrokePaintColor):
3351         (WebCore::SVGRenderStyle::initialStrokePaintUri):
3352         (WebCore::SVGRenderStyle::initialStrokeMiterLimit):
3353         (WebCore::SVGRenderStyle::initialStopOpacity):
3354         (WebCore::SVGRenderStyle::initialFloodOpacity):
3355         (WebCore::SVGRenderStyle::setFillPaint):
3356         (WebCore::SVGRenderStyle::setStrokePaint):
3357         (WebCore::SVGRenderStyle::fillPaintType):
3358         (WebCore::SVGRenderStyle::fillPaintColor):
3359         (WebCore::SVGRenderStyle::fillPaintUri):
3360         (WebCore::SVGRenderStyle::strokePaintType):
3361         (WebCore::SVGRenderStyle::strokePaintColor):
3362         (WebCore::SVGRenderStyle::strokePaintUri):
3363         (WebCore::SVGRenderStyle::hasStroke):
3364         (WebCore::SVGRenderStyle::hasFill):
3365         * rendering/style/SVGRenderStyleDefs.cpp: Ditto.
3366         (WebCore::StyleFillData::StyleFillData):
3367         (WebCore::StyleFillData::operator==):
3368         (WebCore::StyleStrokeData::StyleStrokeData):
3369         (WebCore::StyleStrokeData::operator==):
3370         * rendering/style/SVGRenderStyleDefs.h: Ditto.
3371         * rendering/svg/RenderSVGResource.cpp: Ditto.
3372         (WebCore::requestPaintingResource):
3373         * rendering/svg/RenderSVGResourceClipper.cpp: Ditto.
3374         (WebCore::RenderSVGResourceClipper::drawContentIntoMaskImage):
3375         * rendering/svg/SVGResources.cpp: Ditto.
3376         (WebCore::paintingResourceFromSVGPaint):
3377         (WebCore::SVGResources::buildCachedResources):
3378         * svg/SVGColor.cpp: Call setNeedsStyleRecalc() after mutating the object.
3379         (WebCore::SVGColor::setRGBColor):
3380         (WebCore::SVGColor::setRGBColorICCColor):
3381         (WebCore::SVGColor::setColor):
3382         * svg/SVGColor.h:
3383         * svg/SVGPaint.cpp: Ditto.
3384         (WebCore::SVGPaint::setUri):
3385         (WebCore::SVGPaint::setPaint):
3386         * svg/SVGPaint.h:
3387
3388 2011-03-01  Andrey Adaikin  <aandrey@google.com>
3389
3390         Reviewed by Pavel Feldman.
3391
3392         Web Inspector: [Text editor] Handle decorated lines in the editor
3393         https://bugs.webkit.org/show_bug.cgi?id=55373
3394
3395         * inspector/front-end/SourceFrame.js:
3396         (WebInspector.SourceFrame.prototype._startEditing):
3397         (WebInspector.SourceFrame.prototype._endEditing):
3398         (WebInspector.SourceFrame.prototype._createTextViewer):
3399         * inspector/front-end/TextViewer.js:
3400         (WebInspector.TextEditorGutterPanel.prototype.textChanged):
3401         (WebInspector.TextEditorGutterChunk.prototype.addDecoration):
3402         (WebInspector.TextEditorGutterChunk.prototype.removeDecoration):
3403         (WebInspector.TextEditorMainPanel.prototype.set readOnly):
3404         (WebInspector.TextEditorMainPanel.prototype._handleDOMUpdates):
3405         (WebInspector.TextEditorMainPanel.prototype._handleDOMSubtreeModified):
3406         (WebInspector.TextEditorMainPanel.prototype._markDirtyLines):
3407         (WebInspector.TextEditorMainPanel.prototype._applyDomUpdates):
3408         (WebInspector.TextEditorMainPanel.prototype._removeDecorationsInRange):
3409         (WebInspector.TextEditorMainPanel.prototype._updateChunksForRanges):
3410         (WebInspector.TextEditorMainPanel.prototype._collectLinesFromDiv):
3411         (WebInspector.TextEditorMainChunk.prototype.addDecoration):
3412         (WebInspector.TextEditorMainChunk.prototype.removeDecoration):
3413         (WebInspector.TextEditorMainChunk.prototype.removeAllDecorations):
3414         (WebInspector.TextEditorMainChunk.prototype.get decorated):
3415
3416 2011-03-01  Philippe Normand  <pnormand@igalia.com>
3417
3418         Unreviewed GTK build fix after r79978
3419
3420         * GNUmakefile.am:
3421
3422 2011-03-01  Andras Becsi  <abecsi@webkit.org>
3423
3424         Unreviewed build fix.
3425
3426         [Qt] Fix minimal build.
3427
3428         No new tests needed.
3429
3430         * WebCore.pri: Is included in WebKit2.pro, so XP_UNIX can remain here.
3431
3432 2011-03-01  anthony taranto  <anthony.taranto@gmail.com>
3433
3434         Return undefined value from ScriptController::evaluate(), allowing the
3435         caller to distinguish between an error and an undefined return value.
3436         https://bugs.webkit.org/show_bug.cgi?id=51528
3437
3438         * bindings/v8/ScriptController.cpp: 
3439
3440 2011-03-01  Roland Steiner  <rolandsteiner@chromium.org>
3441
3442         Reviewed by Kent Tamura.
3443
3444         Bug 54853 - Move TextControlInnerElements from WebCore/rendering to WebCore/html/shadow
3445         https://bugs.webkit.org/show_bug.cgi?id=54853
3446         
3447         Moving the files from rendering to html/shadow, with the exception of
3448         the class RenderTextControlInnerBlock, which I moved to RenderTextControlSingleLine
3449         (this place is not ideal, but only a temporary state during the larger refactoring
3450         for <input>).
3451
3452         No new tests. (refactoring)
3453
3454         * Android.mk:
3455         * CMakeLists.txt:
3456         * WebCore.gypi:
3457         * WebCore.pro:
3458         * WebCore.vcproj/WebCore.vcproj:
3459         * WebCore.xcodeproj/project.pbxproj:
3460         * html/shadow/TextControlInnerElements.cpp: Copied from Source/WebCore/rendering/TextControlInnerElements.cpp.
3461         * html/shadow/TextControlInnerElements.h: Copied from Source/WebCore/rendering/TextControlInnerElements.h.
3462         * rendering/RenderTextControlSingleLine.cpp:
3463         (WebCore::RenderTextControlInnerBlock::positionForPoint):
3464         * rendering/RenderTextControlSingleLine.h:
3465         (WebCore::RenderTextControlInnerBlock::RenderTextControlInnerBlock):
3466         (WebCore::RenderTextControlInnerBlock::hasLineIfEmpty):
3467         * rendering/TextControlInnerElements.cpp: Removed.
3468         * rendering/TextControlInnerElements.h: Removed.
3469
3470 2011-03-01  Ryosuke Niwa  <rniwa@webkit.org>
3471
3472         Reviewed by Tony Chang.
3473
3474         applyInlineStyleToPushDown and removeInlineStyleFromElement should take EditingStyle
3475         https://bugs.webkit.org/show_bug.cgi?id=55338
3476
3477         Deployed EditingStyle in applyInlineStyleToPushDown and removeInlineStyleFromElement.
3478
3479         Also added a convenience function EditingStyle::setProperty, which lazily instantiates
3480         new CSSMutableStyleDeclaration for m_mutableStyle.
3481
3482         * editing/ApplyStyleCommand.cpp:
3483         (WebCore::ApplyStyleCommand::removeInlineStyleFromElement): Takes EditingStyle*.
3484         (WebCore::ApplyStyleCommand::removeImplicitlyStyledElement): Ditto.
3485         (WebCore::ApplyStyleCommand::removeCSSStyle): Ditto.
3486         (WebCore::ApplyStyleCommand::pushDownInlineStyleAroundNode): Calls the above three functions.
3487         (WebCore::ApplyStyleCommand::removeInlineStyle): Calls pushDownInlineStyleAroundNode.
3488         * editing/ApplyStyleCommand.h:
3489         * editing/EditingStyle.cpp:
3490         (WebCore::HTMLElementEquivalent::addToStyle): Takes EditingStyle*; calls EditingStyle::setProperty.
3491         (WebCore::HTMLAttributeEquivalent::addToStyle): Ditto.
3492         (WebCore::EditingStyle::setProperty): Added.  This member function lazily instantiates
3493         new CSSMutableStyleDeclaration for m_mutableStyle.
3494         (WebCore::EditingStyle::conflictsWithInlineStyleOfElement): Takes EditingStyle*.
3495         (WebCore::EditingStyle::conflictsWithImplicitStyleOfElement): Ditto.
3496         (WebCore::EditingStyle::extractConflictingImplicitStyleOfAttributes): Ditto.
3497         * editing/EditingStyle.h: Added HTMLElementEquivalent and HTMLAttributeEquivalent as friends.
3498         (WebCore::EditingStyle::conflictsWithInlineStyleOfElement): Ditto.
3499         * editing/InsertTextCommand.cpp: Removed unnecessary includes.
3500         * editing/RemoveCSSPropertyCommand.h: Ditto.
3501
3502 2011-02-28  Pavel Feldman  <pfeldman@chromium.org>
3503
3504         Not reviewed: chromium rebuilds XMLViewer after noop. Fixed gyp file.
3505
3506         * WebCore.gyp/WebCore.gyp:
3507
3508 2011-02-28  David Levin  <levin@chromium.org>
3509
3510         Reviewed by Darin Adler.
3511
3512         KURL should expose a referrer property.
3513         https://bugs.webkit.org/show_bug.cgi?id=55415
3514
3515         No change in functionality so no new tests.
3516
3517         * loader/FrameLoader.cpp:
3518         (WebCore::FrameLoader::setOutgoingReferrer): Refactor to put the majority
3519         of functionality in KURL::strippedForUseAsReferrer() so that this code can
3520         be more easily reused.
3521         * platform/KURL.cpp:
3522         (WebCore::KURL::strippedForUseAsReferrer): Converts the url to a string
3523         which is suitable for use as a referrer.
3524         * platform/KURL.h:
3525
3526 2011-02-28  Chang Shu  <cshu@webkit.org>
3527
3528         Reviewed by Ryosuke Niwa.
3529
3530         Remove the support of Frame::isContentEditable and its dependencies.
3531         https://bugs.webkit.org/show_bug.cgi?id=54292
3532
3533         Frame::isContentEditable is currently based on two things: Editor::clientIsEditable and
3534         Document::inDesignMode. In fact, it should only rely on Document::inDesignMode. As a result,
3535         Editor::clientIsEditable and its client-side implementation can be removed.
3536
3537         * WebCore.exp.in:
3538         * accessibility/AccessibilityRenderObject.cpp:
3539         (WebCore::AccessibilityRenderObject::isReadOnly):
3540         * editing/Editor.cpp:
3541         * editing/Editor.h:
3542         * editing/SelectionController.cpp:
3543         (WebCore::SelectionController::setSelectionFromNone):
3544         * html/HTMLElement.cpp:
3545         (WebCore::HTMLElement::isContentEditable):
3546         (WebCore::HTMLElement::isContentRichlyEditable):
3547         * page/DragController.cpp:
3548         (WebCore::DragController::operationForLoad):
3549         * page/EditorClient.h:
3550         * page/Frame.cpp:
3551         * page/Frame.h:
3552
3553 2011-02-28  Kent Tamura  <tkent@chromium.org>
3554
3555         Reviewed by Darin Adler.
3556
3557         Number type input cannot be set to empty string if it has an initial value
3558         https://bugs.webkit.org/show_bug.cgi?id=53744
3559
3560         We need to distinguish null strings and empty strings for
3561         InputElementData::value. So InputType::sanitizeValue() also needs to
3562         take care of it.
3563
3564         * dom/InputElement.h: Add a comment to InputElementData::value and
3565           setValue about null strings.
3566         * html/InputType.h: Add a comment to sanitizeValue about null strings.
3567         * html/NumberInputType.cpp:
3568         (WebCore::NumberInputType::sanitizeValue): Returns a null string if the
3569           proposed value is a null string. Returning an empty string if the
3570           proposed value is not a number.
3571
3572 2011-02-28  Kent Tamura  <tkent@chromium.org>
3573
3574         Reviewed by Darin Adler.
3575
3576         Number type input should not handle mouse wheel events if it has no focus.
3577         https://bugs.webkit.org/show_bug.cgi?id=53638
3578
3579         * html/TextFieldInputType.cpp:
3580         (WebCore::TextFieldInputType::handleWheelEventForSpinButton): Check focused().
3581
3582 2011-02-28  Noel Gordon  <noel.gordon@gmail.com>
3583         Reviewed by James Robinson.
3584
3585         [chromium] GradientSkia: use the common Gradient stop sorting methods.
3586         https://bugs.webkit.org/show_bug.cgi?id=54625
3587
3588         Remove a FIXME: call the Gradient.cpp stop storting routines, no need
3589         to duplicate that code herein.
3590
3591         No change in behavior, so no new tests.
3592
3593         * platform/graphics/skia/GradientSkia.cpp:
3594         (WebCore::Gradient::platformGradient):
3595
3596 2011-02-28  Steve Block  <steveblock@google.com>
3597
3598         Reviewed by Jeremy Orlow.
3599
3600         JNI code should include <jni.h> on non-OSX platforms.
3601         https://bugs.webkit.org/show_bug.cgi?id=55219
3602
3603         On Mac we need to include <JavaVM/jni.h> as this is a framework
3604         include. We include jni.h through JNIUtility.h to minimize the
3605         number of ifdefs.
3606
3607         No new tests, build fix only.
3608
3609         * WebCore.xcodeproj/project.pbxproj
3610         * bridge/jni/JNIUtility.h:
3611         * bridge/jni/jni_jsobject.h:
3612         * bridge/jni/jsc/JNIBridgeJSC.h:
3613         * bridge/jni/jsc/JavaInstanceJSC.h:
3614         * bridge/jni/v8/JavaInstanceV8.h:
3615
3616 2011-02-28  Nebojsa Sabovic  <neb@chromium.org>
3617
3618         Reviewed by James Robinson.
3619
3620         [chromium] Pepper plugins render upside down
3621         https://bugs.webkit.org/show_bug.cgi?id=55101
3622
3623         No layout tests for pepper plugins (yet).
3624
3625         * platform/graphics/chromium/PluginLayerChromium.h:
3626
3627 2011-02-28  Tony Gentilcore  <tonyg@chromium.org>
3628
3629         Reviewed by Adam Barth.
3630
3631         Follow HTML5 spec for document.open() a little more closely
3632         https://bugs.webkit.org/show_bug.cgi?id=55392
3633
3634         See: 3.5.1.4 at http://www.whatwg.org/specs/web-apps/current-work/#dom-document-open.
3635
3636         The second return check matches the spec. The first return check (isExecutingScript())
3637         was left in place because without it, fast/tokenizer/write-external-script-open.html
3638         would fail. It also possible there is a spec bug because FF4 crashes on that test and
3639         IE9 prints "FAILURE." The isLoadingMainResource() check was removed because the main
3640         resource is always loading while parser->isParsing().
3641
3642         Test: fast/parser/double-write-from-closed-iframe.html
3643
3644         * dom/Document.cpp:
3645         (WebCore::Document::open):
3646
3647 2011-02-28  Avi Drissman  <avi@google.com>
3648
3649         Reviewed by James Robinson.
3650
3651         WebCursorInfo needs to match enums in platform/Cursor.h
3652         https://bugs.webkit.org/show_bug.cgi?id=55094
3653
3654         * platform/chromium/CursorChromium.cpp:
3655         (WebCore::grabCursor):
3656         (WebCore::grabbingCursor):
3657         * platform/chromium/PlatformCursor.h:
3658
3659 2011-02-28  Jia Pu  <jpu@apple.com>
3660
3661         Reviewed by Darin Adler.
3662
3663         [Mac] Make "Change back to …" contextual menu item work with new autocorrection.
3664         https://bugs.webkit.org/show_bug.cgi?id=55396
3665         <rdar://problem/8836093>
3666
3667         The change in InlineTextBox.cpp fixes a bug, where the rectangle of Replacement marker isn't
3668         calculated. We need this to do hit test when deciding whether to show "Change back to ..." on
3669         contextual menu.
3670
3671         The change in Editor.cpp is for notifying spellchecker about the reversion whenever "Change
3672         back to ..." is clicked.
3673
3674         * editing/Editor.cpp:
3675         (WebCore::Editor::changeBackToReplacedString):
3676         * rendering/InlineTextBox.cpp:
3677         (WebCore::InlineTextBox::paintDocumentMarkers):
3678
3679 2011-02-28  Victoria Kirst  <vrk@google.com>
3680
3681         Reviewed by Kenneth Russell.
3682
3683         [chromium] Fall back to texSubImage2D when mapTexSubImage2D fails in VideoLayerChromium
3684         https://bugs.webkit.org/show_bug.cgi?id=55269
3685
3686         Mesa does not support mapTexSubImage2D, so this change lets
3687         GPU-accelerated video work with DRT layout tests.
3688
3689         * platform/graphics/chromium/VideoLayerChromium.cpp:
3690         (WebCore::VideoLayerChromium::updateTexture):
3691
3692 2011-02-28  David Hyatt  <hyatt@apple.com>
3693
3694         Reviewed by Dan Bernstein.
3695
3696         https://bugs.webkit.org/show_bug.cgi?id=46500, make positioned elements work with vertical text.  Change staticX and staticY
3697         to be staticInlinePosition and staticBlockPosition.  Patch all of the computations involving these variables to be writing
3698         mode aware.  Mixed writing modes are not yet supported.
3699
3700         Added new tests in fast/block/positioning/auto.
3701
3702         * rendering/RenderBlock.cpp:
3703         (WebCore::RenderBlock::adjustPositionedBlock):
3704         (WebCore::RenderBlock::layoutPositionedObjects):
3705         * rendering/RenderBlock.h:
3706         (WebCore::RenderBlock::startOffsetForLine):
3707         * rendering/RenderBlockLineLayout.cpp:
3708         (WebCore::RenderBlock::appendRunsForObject):
3709         (WebCore::setStaticPositions):
3710         (WebCore::RenderBlock::skipTrailingWhitespace):
3711         (WebCore::RenderBlock::skipLeadingWhitespace):
3712         (WebCore::RenderBlock::findNextLineBreak):
3713         * rendering/RenderBox.cpp:
3714         (WebCore::RenderBox::positionLineBox):
3715         (WebCore::computeInlineStaticDistance):
3716         (WebCore::RenderBox::computePositionedLogicalWidth):
3717         (WebCore::computeBlockStaticDistance):
3718         (WebCore::RenderBox::computePositionedLogicalHeight):
3719         (WebCore::RenderBox::computePositionedLogicalWidthReplaced):
3720         (WebCore::RenderBox::computePositionedLogicalHeightReplaced):
3721         * rendering/RenderBoxModelObject.h:
3722         (WebCore::RenderBoxModelObject::borderAndPaddingLogicalLeft):
3723         (WebCore::RenderBoxModelObject::borderAndPaddingStart):
3724         (WebCore::RenderBoxModelObject::borderLogicalLeft):
3725         (WebCore::RenderBoxModelObject::borderLogicalRight):
3726         * rendering/RenderFlexibleBox.cpp:
3727         (WebCore::RenderFlexibleBox::layoutHorizontalBox):
3728         (WebCore::RenderFlexibleBox::layoutVerticalBox):
3729         * rendering/RenderInline.cpp:
3730         (WebCore::RenderInline::relativePositionedInlineOffset):
3731         * rendering/RenderLayer.cpp:
3732         (WebCore::RenderLayer::RenderLayer):
3733         * rendering/RenderLayer.h:
3734         (WebCore::RenderLayer::staticInlinePosition):
3735         (WebCore::RenderLayer::staticBlockPosition):
3736         (WebCore::RenderLayer::setStaticInlinePosition):
3737         (WebCore::RenderLayer::setStaticBlockPosition):
3738         * rendering/style/RenderStyle.h:
3739         (WebCore::InheritedFlags::hasAutoLeftAndRight):
3740         (WebCore::InheritedFlags::hasAutoTopAndBottom):
3741         (WebCore::InheritedFlags::hasStaticInlinePosition):
3742         (WebCore::InheritedFlags::hasStaticBlockPosition):
3743
3744 2011-02-28  Balazs Kelemen  <kbalazs@webkit.org>
3745
3746         Reviewed by Anders Carlsson.
3747
3748         [Qt][WK2] Plugin initialization
3749         https://bugs.webkit.org/show_bug.cgi?id=48127
3750
3751         No function change so no new tests.
3752
3753         * WebCore.pri: Lift the definition of the XP_UNIX macro
3754         from WebCore.pri to WebKit.pri to apply it to WebKit2 as well.
3755
3756 2011-02-28  Dean Jackson  <dino@apple.com>
3757
3758         Reviewed by Eric Carlson.
3759
3760         https://bugs.webkit.org/show_bug.cgi?id=55239
3761
3762         Allow webkitEnterFullScreen to be called from outside
3763         a user gesture, but only when the correct restrictions
3764         have been lifted in WebCore. Add a new restriction type
3765         for this situation. Meanwhile, expose the current
3766         restrictions externally from HTMLMediaElement, so that
3767         clients can easily set restrictions on their port.
3768
3769         No new tests. This doesn't change existing behavior. Some
3770         WebKit clients may lift the restriction.
3771
3772         * html/HTMLMediaElement.cpp:
3773         (WebCore::HTMLMediaElement::HTMLMediaElement):
3774         - ensure restrictions initialize with fullscreen restricted
3775         * html/HTMLMediaElement.h:
3776         (WebCore::HTMLMediaElement::requireUserGestureForLoad):
3777         (WebCore::HTMLMediaElement::requireUserGestureForRateChange):
3778         (WebCore::HTMLMediaElement::requireUserGestureForFullScreen):
3779         (WebCore::HTMLMediaElement::setBehaviorRestrictions):
3780         - new methods to expose the current restrictions
3781         * html/HTMLVideoElement.cpp:
3782         (WebCore::HTMLVideoElement::webkitEnterFullscreen):
3783
3784 2011-02-28  Sheriff Bot  <webkit.review.bot@gmail.com>
3785
3786         Unreviewed, rolling out r78789.
3787         http://trac.webkit.org/changeset/78789
3788         https://bugs.webkit.org/show_bug.cgi?id=55409
3789
3790         Incorrect canvas fallback implementation (Requested by
3791         inferno-sec on #webkit).
3792
3793         * accessibility/AccessibilityObject.h:
3794         * accessibility/AccessibilityRenderObject.cpp:
3795         (WebCore::AccessibilityRenderObject::determineAccessibilityRole):
3796         (WebCore::AccessibilityRenderObject::canHaveChildren):
3797         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
3798         (atkRole):
3799         * accessibility/mac/AccessibilityObjectWrapper.mm:
3800         * html/HTMLFormControlElement.cpp:
3801         (WebCore::HTMLFormControlElement::isFocusable):
3802         * rendering/RenderHTMLCanvas.cpp:
3803         * rendering/RenderHTMLCanvas.h:
3804         * rendering/RenderObject.cpp:
3805         (WebCore::RenderObject::repaint):
3806         * rendering/RenderTreeAsText.cpp:
3807         (WebCore::write):
3808
3809 2011-02-28  Sheriff Bot  <webkit.review.bot@gmail.com>
3810
3811         Unreviewed, rolling out r79425.
3812         http://trac.webkit.org/changeset/79425
3813         https://bugs.webkit.org/show_bug.cgi?id=55406
3814
3815         Incorrect canvas fallback implementation. (Requested by
3816         inferno-sec on #webkit).
3817
3818         * rendering/RenderHTMLCanvas.cpp:
3819         (WebCore::RenderHTMLCanvas::nodeAtPoint):
3820
3821 2011-02-28  Adam Klein  <adamk@chromium.org>
3822
3823         Reviewed by Adam Barth.
3824
3825         [fileapi] Implement LocalFileSystem.resolveLocalFileSystemURI
3826         https://bugs.webkit.org/show_bug.cgi?id=54774
3827
3828         See http://dev.w3.org/2009/dap/file-system/file-dir-sys.html#methods
3829         for the spec implemented by this patch.
3830
3831         Test: fast/filesystem/resolve-uri.html
3832
3833         * fileapi/DOMFileSystemBase.cpp:
3834         (WebCore::DOMFileSystemBase::crackFileSystemURL):
3835         * fileapi/DOMFileSystemBase.h:
3836         Added constants for "temporary" and "persistent".
3837         * fileapi/EntryBase.cpp:
3838         Replace hardcoded strings with aforementioned constants.
3839         * fileapi/FileSystemCallbacks.cpp:
3840         (WebCore::ResolveURICallbacks::create):
3841         (WebCore::ResolveURICallbacks::ResolveURICallbacks):
3842         (WebCore::ResolveURICallbacks::didOpenFileSystem):
3843         Chains a call of openFileSystem to calls to getDirectory/getFile.
3844         * fileapi/FileSystemCallbacks.h:
3845         * fileapi/LocalFileSystem.cpp:
3846         (WebCore::LocalFileSystem::readFileSystem):
3847         * fileapi/LocalFileSystem.h:
3848         Remove size argument from readFileSystem()
3849         * page/DOMWindow.cpp:
3850         (WebCore::DOMWindow::resolveLocalFileSystemURI):
3851         * page/DOMWindow.h:
3852         * page/DOMWindow.idl:
3853
3854 2011-02-28  Alexis Menard  <alexis.menard@openbossa.org>
3855
3856         Reviewed by Oliver Hunt.
3857
3858         Build fix for Qt port after API changes of http://trac.webkit.org/changeset/79904.
3859
3860         * bridge/qt/qt_runtime.cpp:
3861         (JSC::Bindings::QtConnectionObject::execute):
3862
3863 2011-02-25  David Levin  <levin@chromium.org>
3864
3865         Reviewed by Darin Adler.
3866
3867         Remove some duplicate code from KURLGoogle.cpp
3868         https://bugs.webkit.org/show_bug.cgi?id=55266
3869
3870         No change in functionality so no new tests.
3871
3872         * WebCore.gyp/WebCore.gyp: Make KURL.cpp get built by Chromium.
3873         * platform/KURL.cpp:
3874         Simply moved #include's and some code that was identical (i.e.
3875         had been copied) to KURLGoogle.cpp outside of ifdef !USE(GOOGLEURL)
3876         to reduce duplication.
3877         * platform/KURLGoogle.cpp:
3878         Removed the duplicate code.
3879
3880 2011-02-28  Oliver Hunt  <oliver@apple.com>
3881
3882         Reviewed by Gavin Barraclough.
3883
3884         Make ScopeChainNode GC allocated
3885         https://bugs.webkit.org/show_bug.cgi?id=55283
3886
3887         Update WebCore to deal with the absence of the ScopeChain
3888         class.
3889
3890         * ForwardingHeaders/runtime/ScopeChain.h: Added.
3891         * bindings/js/JSHTMLElementCustom.cpp:
3892         (WebCore::JSHTMLElement::pushEventHandlerScope):
3893         * bindings/js/JSJavaScriptCallFrameCustom.cpp:
3894         (WebCore::JSJavaScriptCallFrame::scopeChain):
3895         (WebCore::JSJavaScriptCallFrame::scopeType):
3896         * bindings/js/JSLazyEventListener.cpp:
3897         (WebCore::JSLazyEventListener::initializeJSFunction):
3898         * bindings/js/JSMainThreadExecState.h:
3899         (WebCore::JSMainThreadExecState::evaluate):
3900         * bindings/js/JSNodeCustom.cpp:
3901         (WebCore::JSNode::pushEventHandlerScope):
3902         * bindings/js/JavaScriptCallFrame.cpp:
3903         (WebCore::JavaScriptCallFrame::scopeChain):
3904         * bindings/js/JavaScriptCallFrame.h:
3905         * bindings/scripts/CodeGeneratorJS.pm:
3906         * bridge/c/c_class.cpp:
3907         * bridge/c/c_runtime.cpp:
3908         * bridge/jni/JNIBridge.cpp:
3909         * bridge/qt/qt_runtime.cpp:
3910         (JSC::Bindings::QtConnectionObject::execute):
3911         * plugins/PluginViewNone.cpp:
3912
3913 2011-02-28  Chang Shu  <cshu@webkit.org>
3914
3915         Reviewed by Adele Peterson.
3916
3917         REGRESSION (r79762): Items in <select multiple> have focus rings, but shouldn't
3918         https://bugs.webkit.org/show_bug.cgi?id=55323
3919
3920         Draw focus ring on selected items only if spatial navigation is enabled.
3921
3922         Test: fast/forms/select-listbox-multiple-no-focusring.html
3923
3924         * rendering/RenderBlock.h:
3925         * rendering/RenderListBox.cpp:
3926         (WebCore::RenderListBox::addFocusRingRects):
3927
3928 2011-02-28  Abhishek Arya  <inferno@chromium.org>
3929
3930         Reviewed by Anders Carlsson.
3931
3932         We can cancel the plugin load and fail with error before m_manualStream
3933         got a chance to initialize in PluginView::didReceiveResponse. This can
3934         happen when we run pending document onload events during plugin load that
3935         remove the frame from underneath. So, change the assert into a null check. 
3936         https://bugs.webkit.org/show_bug.cgi?id=55307
3937
3938         * plugins/PluginView.cpp:
3939         (WebCore::PluginView::didFail):
3940
3941 2011-02-28  Alexis Menard  <alexis.menard@openbossa.org>
3942
3943         Reviewed by Alexey Proskuryakov.
3944
3945         Build fix for Intel ICC Compiler.
3946         https://bugs.webkit.org/show_bug.cgi?id=55221
3947
3948         The virtual inheritance seems to confuse ICC.
3949         Anything that links with webkit has an undefined reference otherwise.
3950
3951         * svg/SVGTransformable.cpp:
3952         (WebCore::SVGTransformable::~SVGTransformable):
3953         * svg/SVGTransformable.h:
3954
3955 2011-02-28  Sergio Villar Senin  <svillar@igalia.com>
3956
3957         Reviewed by Martin Robinson.
3958
3959         [Gtk] Resource size is incorrectly reported to WebCore
3960         https://bugs.webkit.org/show_bug.cgi?id=53228
3961
3962         When calling didReceiveData we are sending an invalid value for
3963         lengthReceived. Sometimes we were even passing a boolean value instead of the
3964         expected integer. We should pass the size of the received data instead of the
3965         total amount of data received.
3966
3967         * platform/network/ResourceHandleInternal.h:
3968         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
3969         * platform/network/soup/ResourceHandleSoup.cpp:
3970         (WebCore::gotChunkCallback):
3971         (WebCore::sendRequestCallback):
3972         (WebCore::readCallback):
3973
3974 2011-02-28  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
3975
3976         Reviewed by Dan Bernstein.
3977
3978         Cleanup the include guard form an Objective-C files
3979         https://bugs.webkit.org/show_bug.cgi?id=55379
3980
3981         Normally Objective-C files do not need include guard.
3982         r76916 introduced an include guard in EmptyProtocolDefinitions.h.
3983         The guard is no longer needed after r76991.
3984
3985         No new tests as there is no new functionality. 
3986
3987         * platform/mac/EmptyProtocolDefinitions.h:
3988
3989 2011-02-28  Pavel Podivilov  <podivilov@chromium.org>
3990
3991         Reviewed by Pavel Feldman.
3992
3993         Web Inspector: [REGRESSION] no resources in scripts panel because debugger is enabled too early.
3994         https://bugs.webkit.org/show_bug.cgi?id=55389
3995
3996         * inspector/InspectorAgent.cpp:
3997         (WebCore::InspectorAgent::populateScriptObjects):
3998         * inspector/InspectorDebuggerAgent.cpp:
3999         (WebCore::InspectorDebuggerAgent::setFrontend):
4000         (WebCore::InspectorDebuggerAgent::enableDebuggerAfterShown):
4001         * inspector/InspectorDebuggerAgent.h:
4002
4003 2011-02-28  Sheriff Bot  <webkit.review.bot@gmail.com>
4004
4005         Unreviewed, rolling out r79877.
4006         http://trac.webkit.org/changeset/79877
4007         https://bugs.webkit.org/show_bug.cgi?id=55388
4008
4009         Breaks chromium build (Requested by antonm_ on #webkit).
4010
4011         * WebCore.gypi:
4012         * platform/graphics/chromium/ContentLayerChromium.cpp:
4013         (WebCore::ContentLayerChromium::updateContentsIfDirty):
4014         (WebCore::ContentLayerChromium::resizeUploadBufferForImage):
4015         (WebCore::ContentLayerChromium::resizeUploadBuffer):
4016         (WebCore::SkBitmapConditionalAutoLockerPixels::SkBitmapConditionalAutoLockerPixels):
4017         (WebCore::SkBitmapConditionalAutoLockerPixels::~SkBitmapConditionalAutoLockerPixels):
4018         (WebCore::SkBitmapConditionalAutoLockerPixels::lockPixels):
4019         (WebCore::ContentLayerChromium::updateTextureIfNeeded):
4020         (WebCore::ContentLayerChromium::draw):
4021         * platform/graphics/chromium/ContentLayerChromium.h:
4022         * platform/graphics/chromium/ImageLayerChromium.cpp:
4023         (WebCore::ImageLayerChromium::updateContentsIfDirty):
4024         * platform/graphics/chromium/ImageLayerChromium.h:
4025         * platform/graphics/chromium/LayerTilerChromium.cpp:
4026         (WebCore::LayerTilerChromium::contentRectToTileIndices):
4027         (WebCore::LayerTilerChromium::update):
4028         * platform/graphics/chromium/LayerTilerChromium.h:
4029         * platform/graphics/chromium/PlatformCanvas.cpp: Removed.
4030         * platform/graphics/chromium/PlatformCanvas.h: Removed.
4031         * platform/graphics/chromium/PlatformImage.cpp: Removed.
4032         * platform/graphics/chromium/PlatformImage.h: Removed.
4033
4034 2011-02-28  Pavel Podivilov  <podivilov@chromium.org>
4035
4036         Reviewed by Pavel Feldman.
4037
4038         Web Inspector: add live edit test.
4039         https://bugs.webkit.org/show_bug.cgi?id=55360
4040
4041         Test: inspector/debugger/live-edit.html
4042
4043         * inspector/front-end/SourceFrame.js:
4044         (WebInspector.SourceFrame.prototype._doubleClick):
4045         (WebInspector.SourceFrame.prototype._didEditLine):
4046
4047 2011-02-28  Pavel Feldman  <pfeldman@chromium.org>
4048
4049         Not reviewed. Follow up to r79858, removing optimistic assertion that fails on debug bot.
4050
4051         * inspector/InspectorBrowserDebuggerAgent.cpp:
4052         (WebCore::InspectorBrowserDebuggerAgent::inspectedURLChanged):
4053
4054 2011-02-25  Adrienne Walker  <enne@google.com>
4055
4056         Reviewed by James Robinson.
4057
4058         [chromium] Abstract "pixels with a graphics context" into its own class
4059         https://bugs.webkit.org/show_bug.cgi?id=55259
4060
4061         This creates new PlatformCanvas/PlatformImage classes which wrap
4062         all of the #ifdef Skia/Cg warts from the compositor.  All classes
4063         (LayerTilerChromium, ContentLayerChromium, and ImageLayerChromium) are
4064         modified to use these abstractions.
4065
4066         Tests: LayoutTests/compositing
4067
4068         * WebCore.gypi:
4069         * platform/graphics/chromium/ContentLayerChromium.cpp:
4070         (WebCore::ContentLayerChromium::updateContentsIfDirty):
4071         (WebCore::ContentLayerChromium::resizeUploadBuffer):
4072         (WebCore::ContentLayerChromium::updateTextureIfNeeded):
4073         (WebCore::ContentLayerChromium: