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