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