Web Inspector: separate SuggestBox from TextPrompt
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2013-02-12  Andrey Lushnikov  <lushnikov@chromium.org>
2
3         Web Inspector: separate SuggestBox from TextPrompt
4         https://bugs.webkit.org/show_bug.cgi?id=109430
5
6         Reviewed by Alexander Pavlov.
7
8         Create WebInspector.SuggestBoxDelegate interface and
9         refactor TextPrompt to use this interface. Separate SuggestBox into
10         WebInspector.SuggestBox namespace and put it into its own file.
11
12         No new tests: no change in behaviour.
13
14         * WebCore.gypi:
15         * WebCore.vcproj/WebCore.vcproj:
16         * inspector/compile-front-end.py:
17         * inspector/front-end/SuggestBox.js: Added.
18         (WebInspector.SuggestBoxDelegate):
19         (WebInspector.SuggestBoxDelegate.prototype.applySuggestion):
20         (WebInspector.SuggestBoxDelegate.prototype.acceptSuggestion):
21         (WebInspector.SuggestBoxDelegate.prototype.userEnteredText):
22         (WebInspector.SuggestBox):
23         (WebInspector.SuggestBox.prototype.get visible):
24         (WebInspector.SuggestBox.prototype.get hasSelection):
25         (WebInspector.SuggestBox.prototype._onscrollresize):
26         (WebInspector.SuggestBox.prototype._updateBoxPositionWithExistingAnchor):
27         (WebInspector.SuggestBox.prototype._updateBoxPosition):
28         (WebInspector.SuggestBox.prototype._onboxmousedown):
29         (WebInspector.SuggestBox.prototype.hide):
30         (WebInspector.SuggestBox.prototype.removeFromElement):
31         (WebInspector.SuggestBox.prototype._applySuggestion):
32         (WebInspector.SuggestBox.prototype.acceptSuggestion):
33         (WebInspector.SuggestBox.prototype._selectClosest):
34         (WebInspector.SuggestBox.prototype.updateSuggestions):
35         (WebInspector.SuggestBox.prototype._onItemMouseDown):
36         (WebInspector.SuggestBox.prototype._createItemElement):
37         (WebInspector.SuggestBox.prototype._updateItems):
38         (WebInspector.SuggestBox.prototype._selectItem):
39         (WebInspector.SuggestBox.prototype._canShowBox):
40         (WebInspector.SuggestBox.prototype._rememberRowCountPerViewport):
41         (WebInspector.SuggestBox.prototype._completionsReady):
42         (WebInspector.SuggestBox.prototype.upKeyPressed):
43         (WebInspector.SuggestBox.prototype.downKeyPressed):
44         (WebInspector.SuggestBox.prototype.pageUpKeyPressed):
45         (WebInspector.SuggestBox.prototype.pageDownKeyPressed):
46         (WebInspector.SuggestBox.prototype.enterKeyPressed):
47         (WebInspector.SuggestBox.prototype.tabKeyPressed):
48         * inspector/front-end/TextPrompt.js:
49         (WebInspector.TextPrompt.prototype.userEnteredText):
50         (WebInspector.TextPrompt.prototype._attachInternal):
51         (WebInspector.TextPrompt.prototype._completionsReady):
52         (WebInspector.TextPrompt.prototype.applySuggestion):
53         (WebInspector.TextPrompt.prototype._applySuggestion):
54         (WebInspector.TextPrompt.prototype.enterKeyPressed):
55         (WebInspector.TextPrompt.prototype.upKeyPressed):
56         (WebInspector.TextPrompt.prototype.downKeyPressed):
57         (WebInspector.TextPrompt.prototype.pageUpKeyPressed):
58         (WebInspector.TextPrompt.prototype.pageDownKeyPressed):
59         * inspector/front-end/WebKit.qrc:
60         * inspector/front-end/inspector.html:
61
62 2013-02-12  Bruno de Oliveira Abinader  <bruno.abinader@basyskom.com>
63
64         [TexMap] Apply frames-per-second debug counter to WK1.
65         https://bugs.webkit.org/show_bug.cgi?id=109540
66
67         Reviewed by Noam Rosenthal.
68
69         Adds basysKom copyright info to TextureMapperFPSCounter header.
70
71         * platform/graphics/texmap/TextureMapperFPSCounter.cpp:
72         * platform/graphics/texmap/TextureMapperFPSCounter.h:
73
74 2013-02-12  Sheriff Bot  <webkit.review.bot@gmail.com>
75
76         Unreviewed, rolling out r142531.
77         http://trac.webkit.org/changeset/142531
78         https://bugs.webkit.org/show_bug.cgi?id=109569
79
80         Causes html5lib/run-template layout test to crash. (Requested
81         by atwilson_ on #webkit).
82
83         * html/parser/HTMLTreeBuilder.cpp:
84         (WebCore::HTMLTreeBuilder::processTemplateEndTag):
85         (WebCore::HTMLTreeBuilder::processColgroupEndTagForInColumnGroup):
86         (WebCore::HTMLTreeBuilder::processEndOfFile):
87         * html/parser/HTMLTreeBuilder.h:
88         (HTMLTreeBuilder):
89
90 2013-02-12  Zan Dobersek  <zdobersek@igalia.com>
91
92         [GTK] Enable CSS image-set support in development builds
93         https://bugs.webkit.org/show_bug.cgi?id=109475
94
95         Reviewed by Martin Robinson.
96
97         No new tests - majority of the related tests now passes.
98
99         * GNUmakefile.features.am.in: Add the feature define for the CSS image-set feature
100         with the define value defaulting to 0. The value gets overridden with 1 in development
101         builds, meaning the feature is enabled under that configuration.
102
103 2013-02-12  Zan Dobersek  <zdobersek@igalia.com>
104
105         [GTK] Enable DOM4 events constructors in development builds
106         https://bugs.webkit.org/show_bug.cgi?id=109471
107
108         Reviewed by Martin Robinson.
109
110         No new tests - the related tests now pass.
111
112         * GNUmakefile.features.am.in: Add the feature define for the DOM4 events
113         constructors feature, its value defaulting to 0. This value is overridden
114         with 1 in development builds, effectively enabling the feature.
115
116 2013-02-12  Zan Dobersek  <zdobersek@igalia.com>
117
118         Unreviewed build fix for the GTK port after r142595.
119         Adding the TextureMapperFPSCounter files to the list of build targets
120         in case of using the OpenGL texture mapper.
121
122         * GNUmakefile.list.am:
123
124 2013-02-12  Andrey Kosyakov  <caseq@chromium.org>
125
126         Web Inspector: fix closure compiler warnings in extension server and API
127         https://bugs.webkit.org/show_bug.cgi?id=109563
128
129         Reviewed by Vsevolod Vlasov.
130
131         * inspector/front-end/ExtensionAPI.js: drive-by: make sure we fail if extensionServer is not defined in outer scope.
132         * inspector/front-end/ExtensionServer.js:
133         (WebInspector.ExtensionServer.prototype.):
134         (WebInspector.ExtensionServer.prototype._onEvaluateOnInspectedPage):
135         * inspector/front-end/externs.js: add extensionServer
136
137 2013-02-12  Zoltan Arvai  <zarvai@inf.u-szeged.hu>
138
139         Unreviewed. Fix !ENABLE(INSPECTOR) builds after r142575
140
141         * inspector/InspectorInstrumentation.h:
142         (WebCore::InspectorInstrumentation::willDispatchEvent):
143
144 2013-02-12  Andrey Lushnikov  <lushnikov@chromium.org>
145
146         Web Inspector: move showWhitespace option into experiments
147         https://bugs.webkit.org/show_bug.cgi?id=109552
148
149         Reviewed by Vsevolod Vlasov.
150
151         Remove "show whitespace" setting and add it to experiments.
152
153         No new tests: fixed an existing test to verify changes.
154
155         * English.lproj/localizedStrings.js:
156         * inspector/front-end/DefaultTextEditor.js:
157         (WebInspector.TextEditorMainPanel):
158         (WebInspector.TextEditorMainPanel.prototype.wasShown):
159         (WebInspector.TextEditorMainPanel.prototype.willHide):
160         * inspector/front-end/Settings.js:
161         (WebInspector.ExperimentsSettings):
162         * inspector/front-end/SettingsScreen.js:
163         (WebInspector.GenericSettingsTab):
164
165 2013-02-12  Tamas Czene  <tczene@inf.u-szeged.hu>
166
167         Add error checking into OpenCL version of SVG filters.
168         https://bugs.webkit.org/show_bug.cgi?id=107444
169
170         Reviewed by Zoltan Herczeg.
171
172         In case of an error the program runs through all the remaining filters by doing nothing. 
173         After that deletes the results of every filter and starts software rendering.
174
175         * platform/graphics/filters/FilterEffect.cpp:
176         (WebCore):
177         (WebCore::FilterEffect::applyAll): At software rendering this is a simple inline methode, but at OpenCL rendering it releases OpenCL things. If we have an error remove filter's results and start software rendering.
178         (WebCore::FilterEffect::clearResultsRecursive):
179         (WebCore::FilterEffect::openCLImageToImageBuffer):
180         (WebCore::FilterEffect::createOpenCLImageResult):
181         (WebCore::FilterEffect::transformResultColorSpace):
182         * platform/graphics/filters/FilterEffect.h:
183         (FilterEffect):
184         (WebCore::FilterEffect::applyAll):
185         * platform/graphics/gpu/opencl/FilterContextOpenCL.cpp:
186         (WebCore::FilterContextOpenCL::isFailed):
187         (WebCore):
188         (WebCore::FilterContextOpenCL::freeResources):
189         (WebCore::FilterContextOpenCL::destroyContext):
190         (WebCore::FilterContextOpenCL::compileTransformColorSpaceProgram):
191         (WebCore::FilterContextOpenCL::openCLTransformColorSpace):
192         (WebCore::FilterContextOpenCL::compileProgram):
193         (WebCore::FilterContextOpenCL::freeResource):
194         * platform/graphics/gpu/opencl/FilterContextOpenCL.h:
195         (WebCore::FilterContextOpenCL::FilterContextOpenCL):
196         (WebCore::FilterContextOpenCL::setInError):
197         (WebCore::FilterContextOpenCL::inError):
198         (FilterContextOpenCL):
199         (WebCore::FilterContextOpenCL::RunKernel::RunKernel):
200         (WebCore::FilterContextOpenCL::RunKernel::addArgument):
201         (WebCore::FilterContextOpenCL::RunKernel::run):
202         (RunKernel):
203         * platform/graphics/gpu/opencl/OpenCLFEColorMatrix.cpp:
204         (WebCore::FilterContextOpenCL::compileFEColorMatrix):
205         (WebCore::FEColorMatrix::platformApplyOpenCL):
206         * platform/graphics/gpu/opencl/OpenCLFETurbulence.cpp:
207         (WebCore::FilterContextOpenCL::compileFETurbulence):
208         (WebCore::FETurbulence::platformApplyOpenCL):
209         * rendering/svg/RenderSVGResourceFilter.cpp:
210         (WebCore::RenderSVGResourceFilter::postApplyResource):
211
212 2013-02-12  Huang Dongsung  <luxtella@company100.net>
213
214         [TexMap] Apply frames-per-second debug counter to WK1.
215         https://bugs.webkit.org/show_bug.cgi?id=109540
216
217         Reviewed by Noam Rosenthal.
218
219         r142524 implemented frames-per-second debug counter on WK2. This patch
220         applies frames-per-second debug counter to WK1 also.
221
222         Visual debugging feature, no need for new tests.
223
224         * CMakeLists.txt:
225         * GNUmakefile.list.am:
226         * Target.pri:
227         * platform/graphics/texmap/TextureMapper.h:
228         * platform/graphics/texmap/TextureMapperFPSCounter.cpp: Added.
229         (WebCore):
230         (WebCore::TextureMapperFPSCounter::TextureMapperFPSCounter):
231         (WebCore::TextureMapperFPSCounter::updateFPSAndDisplay):
232         * platform/graphics/texmap/TextureMapperFPSCounter.h: Added.
233         (WebCore):
234         (TextureMapperFPSCounter):
235         * platform/graphics/texmap/TextureMapperGL.cpp:
236         (WebCore):
237         (WebCore::TextureMapperGL::drawNumber):
238           Rename from drawRepaintCounter to drawNumber.
239         * platform/graphics/texmap/TextureMapperGL.h:
240         * platform/graphics/texmap/TextureMapperImageBuffer.cpp:
241         (WebCore::TextureMapperImageBuffer::drawNumber):
242         * platform/graphics/texmap/TextureMapperImageBuffer.h:
243         (TextureMapperImageBuffer):
244         * platform/graphics/texmap/TextureMapperTiledBackingStore.cpp:
245         (WebCore::TextureMapperTiledBackingStore::drawRepaintCounter):
246         * platform/graphics/texmap/coordinated/CoordinatedBackingStore.cpp:
247         (WebCore::CoordinatedBackingStore::drawRepaintCounter):
248         * platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.cpp:
249           Move frames-per-second debug counter code to TextureMapperFPSCounter.
250         (WebCore::CoordinatedGraphicsScene::CoordinatedGraphicsScene):
251         (WebCore::CoordinatedGraphicsScene::paintToCurrentGLContext):
252         (WebCore::CoordinatedGraphicsScene::paintToGraphicsContext):
253         * platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.h:
254
255 2013-02-11  Yury Semikhatsky  <yurys@chromium.org>
256
257         Web Inspector: stack trace is cut at native bind if inspector is closed
258         https://bugs.webkit.org/show_bug.cgi?id=109427
259
260         Reviewed by Pavel Feldman.
261
262         Only top frame is collected instead of full stack trace when inspector
263         front-end is closed to avoid expensive operations when exceptions are
264         thrown.
265
266         Test: http/tests/inspector-enabled/console-exception-while-no-inspector.html
267
268         * inspector/InspectorConsoleAgent.cpp:
269         (WebCore::InspectorConsoleAgent::addMessageToConsole):
270
271 2013-02-12  Kent Tamura  <tkent@chromium.org>
272
273         INPUT_MULTIPLE_FIELDS_UI: Mouse click not on sub-fields in multiple fields input  should not move focus
274         https://bugs.webkit.org/show_bug.cgi?id=109544
275
276         Reviewed by Kentaro Hara.
277
278         This is similar to Bug 108914, "Should not move focus if the element
279         already has focus." We fixed a focus() case in Bug 108914. However we
280         still have the problem in a case of focusing by mouse click.
281
282         The fix for Bug 108914 intercepted focus() function to change the
283         behavior. However focus-by-click doesn't call focus(), but calls
284         FocusController::setFocusedNode. To fix this problem, we introduce
285         oldFocusedNode argument to handleFocusEvent, and
286         BaseMultipleFieldsDateAndTimeInputType::handleFocusEvent restores the
287         focus to oldFocusedNode if oldFocusedNode is one of sub-fields.
288         handleFocusEvent is called whenever the focused node is changed.
289
290         We don't need InputType::willCancelFocus any more because the new code
291         in handleFocusEvent covers it.
292
293         Tests: Update fast/forms/time-multiple-fields/time-multiple-fields-focus.html.
294
295         * html/HTMLTextFormControlElement.h:
296         (WebCore::HTMLTextFormControlElement::handleFocusEvent):
297         Add oldFocusedNode argument.
298         * html/HTMLTextFormControlElement.cpp:
299         (WebCore::HTMLTextFormControlElement::dispatchFocusEvent):
300         Pass oldFocusedNode to handleFocusEvent.
301
302         * html/HTMLInputElement.h:
303         (HTMLInputElement):
304          - Add oldFocusedNode argument to handleFocusEvent.
305          - Remove focus() override.
306         * html/HTMLInputElement.cpp: Remove focus() override.
307         (WebCore::HTMLInputElement::handleFocusEvent):
308         Pass oldFocusedNode to InputType::handleFocusEvent.
309         * html/InputType.cpp: Remove willCancelFocus.
310         (WebCore::InputType::handleFocusEvent):
311         Add oldFocusedNode argument.
312         * html/InputType.h:
313         (InputType): Ditto.
314         * html/PasswordInputType.cpp:
315         (WebCore::PasswordInputType::handleFocusEvent): Ditto.
316         * html/PasswordInputType.h:
317         (PasswordInputType): Ditto.
318
319         * html/BaseMultipleFieldsDateAndTimeInputType.h:
320         (BaseMultipleFieldsDateAndTimeInputType):
321         Remove willCancelFocus, and add oldFocusedNode argument to handleFocusEvent.
322         * html/BaseMultipleFieldsDateAndTimeInputType.cpp:
323         (WebCore::BaseMultipleFieldsDateAndTimeInputType::handleFocusEvent):
324         Pass oldFocusedNode to DateTimeEditElement::focusByOwner if the
325         direction is FocusDirectionNone.
326
327         * html/shadow/DateTimeEditElement.h:
328         (DateTimeEditElement): Add oldFocusedNode argument to focusByOwner.
329         * html/shadow/DateTimeEditElement.cpp:
330         (WebCore::DateTimeEditElement::focusByOwner):
331         If oldFocusedNode is one of sub-fields, focus on it again.
332
333 2013-02-12  Takashi Sakamoto  <tasak@google.com>
334
335         [Refactoring] Make m_selectorChecker in StyleResolver an on-stack object.
336         https://bugs.webkit.org/show_bug.cgi?id=108595
337
338         Reviewed by Eric Seidel.
339
340         StyleResolver uses SelectorChecker's mode to change its resolving mode.
341         However it is a state of StyleResolver. StyleResolver should have the
342         mode and make SelectorChecker instance on a stack while required.
343
344         No new tests, just refactoring.
345
346         * css/SelectorChecker.cpp:
347         (WebCore::SelectorChecker::fastCheckRightmostSelector):
348         (WebCore::SelectorChecker::fastCheck):
349         (WebCore::SelectorChecker::commonPseudoClassSelectorMatches):
350         (WebCore::SelectorChecker::matchesFocusPseudoClass):
351         Changed to static class function, because these methods never use
352         "this".
353         (WebCore):
354         * css/SelectorChecker.h:
355         (SelectorChecker):
356         * css/StyleResolver.cpp:
357         (WebCore::StyleResolver::StyleResolver):
358         (WebCore::StyleResolver::collectMatchingRules):
359         Now, matchesFocusPseudoClass is not a static method of
360         SelectorChecker, so replaced "m_selectorChecker." with
361         "SelectorChecker::".
362         (WebCore::StyleResolver::sortAndTransferMatchedRules):
363         (WebCore::StyleResolver::collectMatchingRulesForList):
364         (WebCore::StyleResolver::styleSharingCandidateMatchesRuleSet):
365         (WebCore::StyleResolver::matchUARules):
366         (WebCore::StyleResolver::adjustRenderStyle):
367         (WebCore::StyleResolver::pseudoStyleRulesForElement):
368         Use m_mode instead of m_selectorChecker.mode().
369         Also use document()->inQuirksMode() instead of
370         m_selectoChecker.strictParsing().
371         (WebCore::StyleResolver::ruleMatches):
372         (WebCore::StyleResolver::checkRegionSelector):
373         Created an on-stack SelectorChecker object and used it to check
374         selectors.
375         * css/StyleResolver.h:
376         (WebCore::StyleResolver::State::State):
377         Added m_mode, this keeps m_selectorChecker's mode.
378         (State):
379         (StyleResolver):
380         Removed m_selectorChecker.
381
382 2013-02-11  Viatcheslav Ostapenko  <sl.ostapenko@samsung.com>
383
384         [Qt][EFL][WebGL] Minor refactoring of GraphicsSurface/GraphicsSurfaceGLX
385         https://bugs.webkit.org/show_bug.cgi?id=108686
386
387         Reviewed by Noam Rosenthal.
388
389         Remove unused platformSurface()/m_platformSurface from GraphicsSurface.
390         Move m_texture from GraphicsSurface to GLX GraphicsSurfacePrivate to match
391         Win and Mac implementations.
392
393         No new tests, refactoring only.
394
395         * platform/graphics/surfaces/GraphicsSurface.cpp:
396         (WebCore::GraphicsSurface::GraphicsSurface):
397         * platform/graphics/surfaces/GraphicsSurface.h:
398         (GraphicsSurface):
399         * platform/graphics/surfaces/glx/GraphicsSurfaceGLX.cpp:
400         (WebCore::GraphicsSurfacePrivate::GraphicsSurfacePrivate):
401         (WebCore::GraphicsSurfacePrivate::swapBuffers):
402         (WebCore::GraphicsSurfacePrivate::surface):
403         (GraphicsSurfacePrivate):
404         (WebCore::GraphicsSurfacePrivate::textureID):
405         (WebCore::GraphicsSurfacePrivate::clear):
406         (WebCore::GraphicsSurface::platformExport):
407         (WebCore::GraphicsSurface::platformGetTextureID):
408         (WebCore::GraphicsSurface::platformSwapBuffers):
409         (WebCore::GraphicsSurface::platformCreate):
410         (WebCore::GraphicsSurface::platformImport):
411         (WebCore::GraphicsSurface::platformDestroy):
412
413 2013-02-11  Viatcheslav Ostapenko  <sl.ostapenko@samsung.com>
414
415         [EFL][WebGL] WebGL content is not painted after resizing the viewport.
416         https://bugs.webkit.org/show_bug.cgi?id=106358
417
418         Reviewed by Noam Rosenthal.
419
420         When page size changes and layer parameters get updated LayerTreeRenderer::setLayerState
421         clears the layer backing store and detaches the canvas surface from the layer. If the layer
422         size is not changed then the canvas is not recreated. This leaves the canvas detached from
423         the layer, but still referenced from m_surfaceBackingStores.
424         Don't assign layer backing store to layer in assignImageBackingToLayer if there is a canvas
425         surface already attached to the layer.
426
427         Test: fast/canvas/webgl/webgl-layer-update.html
428
429         * platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.cpp:
430         (WebCore::CoordinatedGraphicsScene::setLayerState):
431         (WebCore::CoordinatedGraphicsScene::assignImageBackingToLayer):
432         * platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.h:
433
434 2013-02-11  Eric Carlson  <eric.carlson@apple.com>
435
436         [Mac] Track language selection should be sticky
437         https://bugs.webkit.org/show_bug.cgi?id=109466
438
439         Reviewed by Dean Jackson.
440
441         Choosing a text track from the caption menu should make that track's language the
442         preferred caption language. Turning captions off from the menu should disable captions
443         in videos loaded subsequently.
444
445         OS X has system support for these settings, so changes made by DRT should not change the
446         settings on the user's system. Add support for all other ports in DRT only.
447
448         Test: media/track/track-user-preferences.html
449
450         * WebCore.exp.in: Export PageGroup::captionPreferences().
451
452         * html/HTMLMediaElement.cpp:
453         (WebCore::HTMLMediaElement::HTMLMediaElement): Use page()->group().captionPreferences().
454         (WebCore::HTMLMediaElement::attach): Ditto.
455         (WebCore::HTMLMediaElement::detach): Ditto.
456         (WebCore::HTMLMediaElement::userPrefersCaptions): Ditto.
457         (WebCore::HTMLMediaElement::configureTextTrackGroup): Ditto. Update for 
458             preferredLanguageFromList change.
459         (WebCore::HTMLMediaElement::toggleTrackAtIndex): Set user prefs for captions visible and
460             caption language as appropriate.
461
462         * html/shadow/MediaControlElements.cpp:
463         (WebCore::MediaControlClosedCaptionsTrackListElement::defaultEventHandler): Remove unneeded comment.
464         (WebCore::MediaControlTextTrackContainerElement::updateSizes):  Use page()->group().captionPreferences().
465
466         * html/shadow/MediaControlsApple.cpp:
467         (WebCore::MediaControlsApple::closedCaptionTracksChanged): Update caption menu button visibility.
468
469         * page/CaptionUserPreferences.h:
470         (WebCore::CaptionUserPreferences::userPrefersCaptions): Support "testing" mode.
471         (WebCore::CaptionUserPreferences::setUserPrefersCaptions): Ditto.
472         (WebCore::CaptionUserPreferences::registerForPreferencesChangedCallbacks): Ditto.
473         (WebCore::CaptionUserPreferences::unregisterForPreferencesChangedCallbacks): Ditto.
474         (WebCore::CaptionUserPreferences::setPreferredLanguage): Ditto.
475         (WebCore::CaptionUserPreferences::preferredLanguages): Ditto.
476         (WebCore::CaptionUserPreferences::testingMode): Ditto.
477         (WebCore::CaptionUserPreferences::setTestingMode): Ditto.
478         (WebCore::CaptionUserPreferences::CaptionUserPreferences): Ditto.
479
480         * page/CaptionUserPreferencesMac.h:
481         * page/CaptionUserPreferencesMac.mm:
482         (WebCore::CaptionUserPreferencesMac::userPrefersCaptions): Support "testing" mode.
483         (WebCore::CaptionUserPreferencesMac::setUserPrefersCaptions): Ditto.
484         (WebCore::CaptionUserPreferencesMac::userHasCaptionPreferences): Ditto.
485         (WebCore::CaptionUserPreferencesMac::registerForPreferencesChangedCallbacks): Change name from
486             registerForCaptionPreferencesChangedCallbacks. Support "testing" mode.
487         (WebCore::CaptionUserPreferencesMac::unregisterForPreferencesChangedCallbacks):  Change name from
488             unregisterForCaptionPreferencesChangedCallbacks. Support "testing" mode.
489         (WebCore::CaptionUserPreferencesMac::captionsStyleSheetOverride): Support "testing" mode.
490         (WebCore::CaptionUserPreferencesMac::captionFontSizeScale): Ditto.
491         (WebCore::CaptionUserPreferencesMac::setPreferredLanguage): Ditto.
492         (WebCore::CaptionUserPreferencesMac::preferredLanguages): Ditto. Return the platform override when set.
493
494         * page/PageGroup.cpp:
495         (WebCore::PageGroup::registerForCaptionPreferencesChangedCallbacks): Remove because it is already
496             available from the caption preference object.
497         (WebCore::PageGroup::unregisterForCaptionPreferencesChangedCallbacks): Ditto.
498         (WebCore::PageGroup::userPrefersCaptions): Ditto.
499         (WebCore::PageGroup::userHasCaptionPreferences): Ditto.
500         (WebCore::PageGroup::captionFontSizeScale): Ditto.
501         * page/PageGroup.h:
502
503         * platform/Language.cpp:
504         (WebCore::preferredLanguageFromList): Take the list of preferred languages instead of assuming
505             the system list.
506         * platform/Language.h:
507
508         * testing/Internals.cpp:
509         (WebCore::Internals::resetToConsistentState): Disable caption testing mode.
510         (WebCore::Internals::Internals): Enable caption testing mode so the user's system
511             preferences are not modified.
512
513 2013-02-11  Huang Dongsung  <luxtella@company100.net>
514
515         Coordinated Graphics: Make CoordinatedGraphicsScene not know contents size.
516         https://bugs.webkit.org/show_bug.cgi?id=108922
517
518         Reviewed by Noam Rosenthal.
519
520         Currently, CoordinatedGraphicsScene has two methods to know contents
521         size: setContentsSize() and setVisibleContentsRect(). Contents size is
522         used when adjusting a scroll position, but adjustment is not needed
523         because EFL and Qt platform code (currently PageViewportController)
524         already adjusts a scroll position, and it is natural for each platform
525         to be in charge of adjusting. So this patch makes CoordinatedGraphicsScene
526         not know contents size.
527
528         In addition, now DrawingAreaProxy::coordinatedLayerTreeHostProxy() is only used
529         to get CoordinatedGraphicsScene.
530
531         This patch can only be tested manually since there is no automated
532         testing facilities for in-motion touch.
533         Test: ManualTests/fixed-position.html
534               ManualTests/nested-fixed-position.html
535
536         * platform/graphics/texmap/TextureMapperLayer.cpp:
537         (WebCore::TextureMapperLayer::setScrollPositionDeltaIfNeeded):
538         * platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.cpp:
539         (WebCore::CoordinatedGraphicsScene::setScrollPosition):
540         (WebCore::CoordinatedGraphicsScene::adjustPositionForFixedLayers):
541         * platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.h:
542         (CoordinatedGraphicsScene):
543
544 2013-02-11  Huang Dongsung  <luxtella@company100.net>
545
546         Coordinated Graphics: remove the DidChangeScrollPosition message.
547         https://bugs.webkit.org/show_bug.cgi?id=108051
548
549         Reviewed by Noam Rosenthal.
550         Signed off for WebKit2 by Benjamin Poulain.
551
552         Currently, we use the DidChangeScrollPosition message to send the scroll
553         position that WebCore used in this frame to UI Process. We had to have
554         some member variables for the DidChangeScrollPosition message.
555         However, we can send a scroll position via the DidRenderFrame message,
556         because CoordinatedGraphicsScene::m_renderedContentsScrollPosition is
557         updated at the moment of flushing. So we can remove the
558         DidChangeScrollPosition message and some redundant member variables.
559
560         No tests. No change in behavior.
561
562         * platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.cpp:
563         (WebCore::CoordinatedGraphicsScene::flushLayerChanges):
564         * platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.h:
565         (CoordinatedGraphicsScene):
566
567 2013-02-11  Ryosuke Niwa  <rniwa@webkit.org>
568
569         Disable delete button controller on non-Mac ports and delete EditorClient::shouldShowDeleteInterface
570         https://bugs.webkit.org/show_bug.cgi?id=109534
571
572         Reviewed by Anders Carlsson.
573
574         * editing/DeleteButtonController.cpp:
575         (WebCore::DeleteButtonController::show):
576         * editing/Editor.cpp:
577         (WebCore):
578         * editing/Editor.h:
579         (Editor):
580         * loader/EmptyClients.h:
581         (WebCore::EmptyEditorClient::shouldDeleteRange):
582         (EmptyEditorClient):
583         (WebCore::EmptyEditorClient::shouldShowDeleteInterface):
584         * page/EditorClient.h:
585         (EditorClient):
586
587 2013-02-11  Hayato Ito  <hayato@chromium.org>
588
589         Factor EventContext and introduces MouseOrFocusEventContext.
590         https://bugs.webkit.org/show_bug.cgi?id=109278
591
592         Reviewed by Dimitri Glazkov.
593
594         To supoort Touch event retargeting (bug 107800), we have to factor
595         event retargeting code so that it can support not only MouseEvent or FocusEvent,
596         but also other events.
597
598         This is the first attempt to refactor event retargeting code, a
599         separated patch from bug 109156.  EventContext is now factored and
600         MouseOrFocusEventContext was introduced to support MouseEvent or
601         FocusEvent separately.
602
603         In following patches, I'll introduce TouchEventContext and
604         TouchEventDispatchMediator to support Touch event retargeting.
605
606         No new tests. No change in functionality.
607
608         * dom/EventContext.cpp:
609         (WebCore::EventContext::EventContext): Factor relatedTarget out from EventContext into MouseOrFocusEventContext.
610         (WebCore::EventContext::~EventContext):
611         (WebCore):
612         (WebCore::EventContext::handleLocalEvents):
613         (WebCore::EventContext::isMouseOrFocusEventContext):
614         (WebCore::MouseOrFocusEventContext::MouseOrFocusEventContext):  New. Handles MouseEvent's (or FocusEvent's) relatedTarget retargeting.
615         (WebCore::MouseOrFocusEventContext::~MouseOrFocusEventContext):
616         (WebCore::MouseOrFocusEventContext::handleLocalEvents):
617         (WebCore::MouseOrFocusEventContext::isMouseOrFocusEventContext):
618         * dom/EventContext.h:
619         (EventContext):
620         (WebCore::EventContext::node):
621         (WebCore::EventContext::target):
622         (WebCore::EventContext::currentTargetSameAsTarget):
623         (WebCore):
624         (MouseOrFocusEventContext):
625         (WebCore::MouseOrFocusEventContext::relatedTarget):
626         (WebCore::MouseOrFocusEventContext::setRelatedTarget):
627         * dom/EventDispatcher.cpp:
628         (WebCore::EventRelatedTargetAdjuster::adjust):
629         (WebCore::EventDispatcher::adjustRelatedTarget):
630         (WebCore::EventDispatcher::ensureEventPath):  Renamad from ensureEventAncestors. Use the DOM Core terminology.
631         (WebCore::EventDispatcher::dispatchEvent):
632         (WebCore::EventDispatcher::dispatchEventAtCapturing):
633         (WebCore::EventDispatcher::dispatchEventAtTarget):
634         (WebCore::EventDispatcher::dispatchEventAtBubbling):
635         (WebCore::EventDispatcher::dispatchEventPostProcess):
636         (WebCore::EventDispatcher::topEventContext):
637         * dom/EventDispatcher.h:
638         (EventRelatedTargetAdjuster):
639         (EventDispatcher):
640         * inspector/InspectorInstrumentation.cpp:
641         (WebCore):
642         (WebCore::eventHasListeners):
643         (WebCore::InspectorInstrumentation::willDispatchEventImpl):
644         * inspector/InspectorInstrumentation.h:
645         (InspectorInstrumentation):
646         (WebCore::InspectorInstrumentation::willDispatchEvent):
647
648 2013-02-11  peavo@outlook.com  <peavo@outlook.com>
649
650         [Curl] setCookiesFromDOM function does not save cookies to disk.
651         https://bugs.webkit.org/show_bug.cgi?id=109285
652
653         Reviewed by Brent Fulgham.
654
655         Write cookies to disk by using the Curl easy api.
656
657         * platform/network/curl/CookieJarCurl.cpp:
658         (WebCore::setCookiesFromDOM):Write cookie to disk.
659         * platform/network/curl/ResourceHandleManager.cpp:
660         (WebCore::ResourceHandleManager::getCurlShareHandle): Added method to get Curl share handle.
661         (WebCore::ResourceHandleManager::getCookieJarFileName): Added method to get cookie file name.
662         * platform/network/curl/ResourceHandleManager.h: Added methods to get cookie file name, and Curl share handle.
663
664 2013-02-11  Hayato Ito  <hayato@chromium.org>
665
666         Split each RuleSet and feature out from StyleResolver into its own class.
667         https://bugs.webkit.org/show_bug.cgi?id=107777
668
669         Reviewed by Dimitri Glazkov.
670
671         Re-landing r141964, which was reverted in r141973, since r141964 seem to be innocent.
672
673         No tests. No change in behavior.
674
675         * CMakeLists.txt:
676         * GNUmakefile.list.am:
677         * Target.pri:
678         * WebCore.gypi:
679         * WebCore.xcodeproj/project.pbxproj:
680         * css/CSSAllInOne.cpp:
681         * css/DocumentRuleSets.cpp: Added.
682         (WebCore):
683         (WebCore::DocumentRuleSets::DocumentRuleSets):
684         (WebCore::DocumentRuleSets::~DocumentRuleSets):
685         (WebCore::DocumentRuleSets::initUserStyle): New helper to initialize each RuleSets.
686         (WebCore::DocumentRuleSets::collectRulesFromUserStyleSheets): Factored out from StyleResolver.
687         (WebCore::makeRuleSet): Ditto.
688         (WebCore::DocumentRuleSets::resetAuthorStyle): Ditto.
689         (WebCore::DocumentRuleSets::appendAuthorStyleSheets): Ditto.
690         (WebCore::DocumentRuleSets::collectFeatures): Ditto.
691         (WebCore::DocumentRuleSets::reportMemoryUsage): New methods to report memory usage. Factored out from StyleResolver.
692         * css/DocumentRuleSets.h: Added.
693         (WebCore):
694         (DocumentRuleSets):
695         (WebCore::DocumentRuleSets::authorStyle): Moved from StyleResolver.
696         (WebCore::DocumentRuleSets::userStyle): Ditto.
697         (WebCore::DocumentRuleSets::features): Ditto.
698         (WebCore::DocumentRuleSets::sibling): Ditto.
699         (WebCore::DocumentRuleSets::uncommonAttribute): Ditto.
700         * css/StyleResolver.cpp:
701         (WebCore::StyleResolver::StyleResolver):
702         (WebCore::StyleResolver::appendAuthorStyleSheets): Now calls DocumentRuleSets::appendAuthorStyleSheets.
703         (WebCore::StyleResolver::matchAuthorRules): Use m_ruleSets.
704         (WebCore::StyleResolver::matchUserRules): Ditto.
705         (WebCore::StyleResolver::classNamesAffectedByRules): Ditto.
706         (WebCore::StyleResolver::locateCousinList): Ditto.
707         (WebCore::StyleResolver::canShareStyleWithElement): Ditto.
708         (WebCore::StyleResolver::locateSharedStyle): Ditto.
709         (WebCore::StyleResolver::styleForPage): Ditto.
710         (WebCore::StyleResolver::checkRegionStyle): Ditto.
711         (WebCore::StyleResolver::applyProperty): Ditto.
712         (WebCore::StyleResolver::reportMemoryUsage): Now calls DocumentRuleSets::reportMemoryUsage.
713         * css/StyleResolver.h:
714         (WebCore::StyleResolver::scopeResolver):
715         (StyleResolver):
716         (WebCore::StyleResolver::ruleSets): accessor r to DocumentRuleSets.
717         (WebCore::StyleResolver::usesSiblingRules): Use m_ruleSets.
718         (WebCore::StyleResolver::usesFirstLineRules): Ditto.
719         (WebCore::StyleResolver::usesBeforeAfterRules): Ditto.
720         (WebCore::StyleResolver::hasSelectorForAttribute): Ditto.
721         (WebCore::StyleResolver::hasSelectorForClass): Ditto.
722         (WebCore::StyleResolver::hasSelectorForId): Ditto.
723         * dom/DocumentStyleSheetCollection.cpp:
724         (WebCore::DocumentStyleSheetCollection::updateActiveStyleSheets):
725
726 2013-02-11  Keishi Hattori  <keishi@webkit.org>
727
728         REGRESSION (r140778):Calendar Picker buttons are wrong when rtl
729         https://bugs.webkit.org/show_bug.cgi?id=109158
730
731         Reviewed by Kent Tamura.
732
733         The calendar picker button's icon and position where wrong when rtl.
734
735
736         Test: platform/chromium/fast/forms/calendar-picker/calendar-picker-appearance-ar.html
737
738         * Resources/pagepopups/calendarPicker.css:
739         (.year-month-button-left .year-month-button): Use -webkit-margin-end so the margin is applide to the right side.
740         (.year-month-button-right .year-month-button): Use -webkit-margin-start so the margin is applide to the right side.
741         (.today-clear-area .today-button): Use -webkit-margin-end so the margin is applide to the right side.
742         * Resources/pagepopups/calendarPicker.js:
743         (YearMonthController.prototype._attachLeftButtonsTo): Flip icon image when rtl.
744         (YearMonthController.prototype._attachRightButtonsTo): Ditto.
745
746 2013-02-11  KwangYong Choi  <ky0.choi@samsung.com>
747
748         REGRESSION (r142549): Remove web intents code
749         https://bugs.webkit.org/show_bug.cgi?id=109532
750
751         Reviewed by Nico Weber.
752
753         Remove remaning code related to web intents.
754
755         No new tests, no change on behavior.
756
757         * UseJSC.cmake:
758         * bindings/js/JSIntentConstructor.cpp: Removed.
759
760 2013-02-11  Kenneth Russell  <kbr@google.com>
761
762         Add temporary typedef to ANGLEWebKitBridge to support incompatible API upgrade
763         https://bugs.webkit.org/show_bug.cgi?id=109127
764
765         Reviewed by Dean Jackson.
766
767         No new tests. Built and tested WebKit and Chromium with this change.
768
769         * platform/graphics/ANGLEWebKitBridge.cpp:
770         (WebCore):
771             Define temporary typedef spanning int -> size_t change.
772         (WebCore::getValidationResultValue):
773         (WebCore::getSymbolInfo):
774             Use temporary typedef.
775
776 2013-02-11  Kentaro Hara  <haraken@chromium.org>
777
778         [V8] ScheduledAction::m_context can be empty, so we shouldn't
779         retrieve an Isolate by using m_context->GetIsolate()
780         https://bugs.webkit.org/show_bug.cgi?id=109523
781
782         Reviewed by Adam Barth.
783
784         Chromium bug: https://code.google.com/p/chromium/issues/detail?id=175307#makechanges
785
786         Currently ScheduledAction is retrieving an Isolate by using m_context->GetIsolate().
787         This can crash because ScheduledAction::m_context can be empty. Specifically,
788         ScheduledAction::m_context is set to ScriptController::currentWorldContext(),
789         which can return an empty handle when a frame does not exist. In addition,
790         'if(context.IsEmpty())' in ScheduledAction.cpp implies that it can be empty.
791
792         Alternately, we should pass an Isolate explicitly when a ScheduledAction is instantiated.
793
794         No tests. The Chromium crash report doesn't provide enough information
795         to reproduce the bug.
796
797         * bindings/v8/ScheduledAction.cpp:
798         (WebCore::ScheduledAction::ScheduledAction):
799         (WebCore):
800         (WebCore::ScheduledAction::~ScheduledAction):
801         * bindings/v8/ScheduledAction.h:
802         (ScheduledAction):
803         * bindings/v8/custom/V8DOMWindowCustom.cpp:
804         (WebCore::WindowSetTimeoutImpl):
805         * bindings/v8/custom/V8WorkerContextCustom.cpp:
806         (WebCore::SetTimeoutOrInterval):
807
808 2013-02-11  Adenilson Cavalcanti  <cavalcantii@gmail.com>
809
810         Build fix: r142549 broke EFL build
811         https://bugs.webkit.org/show_bug.cgi?id=109527
812
813         Reviewed by Kentaro Hara.
814
815         No new tests, no change on behavior.
816
817         * CMakeLists.txt:
818
819 2013-02-11  Simon Fraser  <simon.fraser@apple.com>
820
821         REGRESSION (r142520?): Space no longer scrolls the page
822         https://bugs.webkit.org/show_bug.cgi?id=109526
823
824         Reviewed by Tim Horton.
825
826         ScrollingTree::updateTreeFromStateNode() used to bail early when it had
827         no children (no fixed or sticky elements), but that left updateAfterChildren()
828         uncalled. Fix by always calling updateAfterChildren(), which updates the scroll
829         position.
830
831         * page/scrolling/ScrollingTree.cpp:
832         (WebCore::ScrollingTree::updateTreeFromStateNode):
833
834 2013-02-11  Tim Horton  <timothy_horton@apple.com>
835
836         Remove extra early-return in FrameView::setScrollPosition
837
838         Rubber-stamped by Simon Fraser.
839
840         * page/FrameView.cpp:
841         (WebCore::FrameView::setScrollPosition):
842
843 2013-02-11  Arko Saha  <arko@motorola.com>
844
845         [Microdata] Fix crash after r141034 in chromuim port
846         https://bugs.webkit.org/show_bug.cgi?id=109514
847
848         Reviewed by Ryosuke Niwa.
849
850         Added V8SkipVTableValidation extended attribute to skip
851         VTable validation check for DOMSettableTokenList interface.
852
853         This patch fixes below test failures:
854         Tests: fast/dom/MicroData/domsettabletokenlist-attributes-add-token.html
855                fast/dom/MicroData/domsettabletokenlist-attributes-out-of-range-index.html
856                fast/dom/MicroData/element-with-empty-itemprop.html
857                fast/dom/MicroData/itemprop-add-remove-tokens.html
858                fast/dom/MicroData/itemprop-for-an-element-must-be-correct.html
859                fast/dom/MicroData/itemprop-must-be-read-only.html
860                fast/dom/MicroData/itemprop-reflected-by-itemProp-property.html
861                fast/dom/MicroData/itemref-add-remove-tokens.html
862                fast/dom/MicroData/itemref-attribute-reflected-by-itemRef-property.html
863                fast/dom/MicroData/itemref-for-an-element-must-be-correct.html
864                fast/dom/MicroData/itemref-must-be-read-only.html
865                fast/dom/MicroData/itemtype-add-remove-tokens.html
866                fast/dom/MicroData/itemtype-attribute-test.html
867                fast/dom/MicroData/microdata-domtokenlist-attribute-add-remove-tokens.html
868                fast/dom/MicroData/properties-collection-namedgetter-with-invalid-name.html
869                fast/dom/MicroData/propertynodelist-add-remove-itemprop-tokens.html
870                fast/dom/MicroData/propertynodelist-add-remove-itemref-tokens.html
871
872         * html/DOMSettableTokenList.idl:
873
874 2013-02-11  Adam Barth  <abarth@webkit.org>
875
876         Load event fires too early with threaded HTML parser (take 2)
877         https://bugs.webkit.org/show_bug.cgi?id=109485
878
879         Reviewed by Eric Seidel.
880
881         This patch restores the code that was removed in
882         http://trac.webkit.org/changeset/142492 and adds code to
883         DocumentLoader.cpp to avoid the regression.
884
885         * dom/Document.cpp:
886         (WebCore::Document::hasActiveParser):
887         (WebCore::Document::decrementActiveParserCount):
888         * loader/DocumentLoader.cpp:
889         (WebCore::DocumentLoader::isLoadingInAPISense):
890
891 2013-02-11  Eric Seidel  <eric@webkit.org>
892
893         Fold HTMLTokenizerState back into HTMLTokenizer now that MarkupTokenizerBase is RFG
894         https://bugs.webkit.org/show_bug.cgi?id=109502
895
896         Reviewed by Tony Gentilcore.
897
898         Just a search replace of HTMLTokenizerState with HTMLTokenizer and moving the enum.
899         This restores us to the peacefull world pre-NEW_XML.
900
901         * html/parser/BackgroundHTMLParser.cpp:
902         (WebCore::BackgroundHTMLParser::forcePlaintextForTextDocument):
903         (WebCore::BackgroundHTMLParser::simulateTreeBuilder):
904         * html/parser/HTMLDocumentParser.cpp:
905         (WebCore::tokenizerStateForContextElement):
906         (WebCore::HTMLDocumentParser::forcePlaintextForTextDocument):
907         (WebCore::HTMLDocumentParser::pumpTokenizer):
908         * html/parser/HTMLTokenizer.cpp:
909         (WebCore::isEndTagBufferingState):
910         (WebCore):
911         (WebCore::HTMLTokenizer::reset):
912         (WebCore::HTMLTokenizer::flushEmitAndResumeIn):
913         (WebCore::HTMLTokenizer::nextToken):
914         (WebCore::HTMLTokenizer::updateStateFor):
915         * html/parser/HTMLTokenizer.h:
916         (HTMLTokenizer):
917         (WebCore::HTMLTokenizer::create):
918         (WebCore::HTMLTokenizer::shouldSkipNullCharacters):
919         (WebCore::HTMLTokenizer::emitEndOfFile):
920         * html/parser/HTMLTreeBuilder.cpp:
921         (WebCore::HTMLTreeBuilder::processStartTagForInBody):
922         (WebCore::HTMLTreeBuilder::processEndTag):
923         (WebCore::HTMLTreeBuilder::processGenericRCDATAStartTag):
924         (WebCore::HTMLTreeBuilder::processGenericRawTextStartTag):
925         (WebCore::HTMLTreeBuilder::processScriptStartTag):
926         * html/parser/TextViewSourceParser.cpp:
927         (WebCore::TextViewSourceParser::TextViewSourceParser):
928
929 2013-02-11  Kentaro Hara  <haraken@chromium.org>
930
931         Build fix after r142528
932         https://bugs.webkit.org/show_bug.cgi?id=109520
933
934         Reviewed by Eric Seidel.
935
936         r142528 changed GIFImageReader from a struct to a class.
937         We also need to fix a forward declaration.
938
939         No tests.
940
941         * platform/image-decoders/gif/GIFImageDecoder.h:
942
943 2013-02-11  Nico Weber  <thakis@chromium.org>
944
945         Remove web intents code
946         https://bugs.webkit.org/show_bug.cgi?id=109501
947
948         Reviewed by Eric Seidel.
949
950         See thread "Removing ENABLE(WEB_INTENTS) code" on webkit-dev.
951
952         * DerivedSources.make:
953         * Modules/intents/DOMWindowIntents.cpp: Removed.
954         * Modules/intents/DOMWindowIntents.h: Removed.
955         * Modules/intents/DOMWindowIntents.idl: Removed.
956         * Modules/intents/DeliveredIntent.cpp: Removed.
957         * Modules/intents/DeliveredIntent.h: Removed.
958         * Modules/intents/DeliveredIntent.idl: Removed.
959         * Modules/intents/Intent.cpp: Removed.
960         * Modules/intents/Intent.h: Removed.
961         * Modules/intents/Intent.idl: Removed.
962         * Modules/intents/IntentRequest.cpp: Removed.
963         * Modules/intents/IntentRequest.h: Removed.
964         * Modules/intents/IntentResultCallback.h: Removed.
965         * Modules/intents/IntentResultCallback.idl: Removed.
966         * Modules/intents/NavigatorIntents.cpp: Removed.
967         * Modules/intents/NavigatorIntents.h: Removed.
968         * Modules/intents/NavigatorIntents.idl: Removed.
969         * WebCore.gyp/WebCore.gyp:
970         * WebCore.gypi:
971         * bindings/generic/RuntimeEnabledFeatures.cpp:
972         (WebCore):
973         * bindings/generic/RuntimeEnabledFeatures.h:
974         (RuntimeEnabledFeatures):
975         * bindings/v8/custom/V8IntentCustom.cpp: Removed.
976         * html/HTMLElementsAllInOne.cpp:
977         * html/HTMLIntentElement.cpp: Removed.
978         * html/HTMLIntentElement.h: Removed.
979         * html/HTMLIntentElement.idl: Removed.
980         * loader/EmptyClients.cpp:
981         * loader/EmptyClients.h:
982         (EmptyFrameLoaderClient):
983         * loader/FrameLoaderClient.h:
984         (WebCore):
985         * page/DOMWindow.idl:
986
987 2013-02-11  Eric Seidel  <eric@webkit.org>
988
989         Fix Mac build after http://trac.webkit.org/changeset/142535.
990
991         Unreviewed build fix.
992
993         * html/parser/HTMLTokenizer.h:
994         (WebCore::HTMLTokenizer::emitAndReconsumeIn):
995
996 2013-02-11  David Farler  <dfarler@apple.com>
997
998         Make WebCore Derived Sources work with SDK identifiers too
999         https://bugs.webkit.org/show_bug.cgi?id=109324
1000
1001         Reviewed by Sam Weinig.
1002
1003         * WebCore.xcodeproj/project.pbxproj: Pass SDKROOT to make for DerivedSources.make
1004
1005 2013-02-11  Zhenyao Mo  <zmo@google.com>
1006
1007         WEBGL_compressed_texture_s3tc extension can be enabled even when not supported
1008         https://bugs.webkit.org/show_bug.cgi?id=109508
1009
1010         Reviewed by Kenneth Russell.
1011
1012         * html/canvas/WebGLRenderingContext.cpp:
1013         (WebCore):
1014         (WebCore::WebGLRenderingContext::getExtension): Check whether the extension support is there before returning the extension pointer.
1015
1016 2013-02-11  Emil A Eklund  <eae@chromium.org>
1017
1018         Change RenderFrameSet::paint to use m-rows/m_cols directly.
1019         https://bugs.webkit.org/show_bug.cgi?id=108503
1020
1021         Reviewed by Eric Seidel.
1022
1023         Test: fast/frames/invalid-frameset.html
1024
1025         * rendering/RenderFrameSet.cpp:
1026         (WebCore::RenderFrameSet::paint):
1027
1028 2013-02-11  Yong Li  <yoli@rim.com>
1029
1030         XMLHttpRequestProgressEventThrottle::resume() always schedules timer even when unnecessary
1031         https://bugs.webkit.org/show_bug.cgi?id=105348
1032
1033         Reviewed by Alexey Proskuryakov.
1034
1035         Let resume() clear the defer flag and return if there is deferred events to dispatch.
1036
1037         No new tests as this should not affect existing cross-platform behavior. It should be
1038         OK as long as it doesn't break anything.
1039
1040         * xml/XMLHttpRequestProgressEventThrottle.cpp:
1041         (WebCore::XMLHttpRequestProgressEventThrottle::resume):
1042
1043 2013-02-11  Eric Seidel  <eric@webkit.org>
1044
1045         Fold MarkupTokenizerBase into HTMLTokenizer now that it is the only subclass
1046         https://bugs.webkit.org/show_bug.cgi?id=109499
1047
1048         Reviewed by Adam Barth.
1049
1050         For great justice.  And sanity.
1051         Epic amount of template code deleted.
1052
1053         * GNUmakefile.list.am:
1054         * Target.pri:
1055         * WebCore.gypi:
1056         * WebCore.vcproj/WebCore.vcproj:
1057         * WebCore.vcxproj/WebCore.vcxproj:
1058         * WebCore.vcxproj/WebCore.vcxproj.filters:
1059         * WebCore.xcodeproj/project.pbxproj:
1060         * html/parser/HTMLTokenizer.cpp:
1061         (WebCore::HTMLTokenizer::HTMLTokenizer):
1062         * html/parser/HTMLTokenizer.h:
1063         (HTMLTokenizer):
1064         (Checkpoint):
1065         (WebCore::HTMLTokenizer::state):
1066         (WebCore::HTMLTokenizer::setState):
1067         (WebCore::HTMLTokenizer::shouldSkipNullCharacters):
1068         (WebCore::HTMLTokenizer::bufferCharacter):
1069         (WebCore::HTMLTokenizer::emitAndResumeIn):
1070         (WebCore::HTMLTokenizer::emitAndReconsumeIn):
1071         (WebCore::HTMLTokenizer::emitEndOfFile):
1072         (WebCore::HTMLTokenizer::haveBufferedCharacterToken):
1073         * xml/parser/MarkupTokenizerBase.h: Removed.
1074
1075 2013-02-11  Anton Vayvod  <avayvod@chromium.org>
1076
1077         [Text Autosizing] Collect narrow descendants and process them separately. Refactoring for
1078         a change to follow.
1079         https://bugs.webkit.org/show_bug.cgi?id=109054
1080
1081         Preparational change to combine narrow descendants of the same autosizing cluster into
1082         groups by the width difference between the descendant and the block containing all text of
1083         the parent autosizing cluster. The groups will be autosized with the same multiplier.
1084
1085         For example, on sites with a sidebar, sometimes the paragraphs next to the sidebar will have
1086         a large margin individually applied (via a CSS selector), causing them all to individually
1087         appear narrower than their enclosing blockContainingAllText. Rather than making each of
1088         these paragraphs into a separate cluster, we eventually want to be able to merge them back
1089         together into one (or a few) descendant clusters.
1090
1091         Reviewed by Julien Chaffraix.
1092
1093         No behavioral changes thus no new tests or test changes.
1094
1095         * rendering/TextAutosizer.cpp:
1096         (TextAutosizingClusterInfo): Vector of narrow descendants.
1097         (WebCore::TextAutosizer::processCluster): Process narrow descendants separately.
1098         (WebCore::TextAutosizer::processContainer):
1099
1100             Remember narrow descendants of the parent cluster for later processing.
1101
1102 2013-02-11  Enrica Casucci  <enrica@apple.com>
1103
1104         Add ENABLE_DELETION_UI to control the use of the deletion UI.
1105         https://bugs.webkit.org/show_bug.cgi?id=109463.
1106
1107         Reviewed by Ryosuke Niwa.
1108         
1109         This patch adds #if ENABLE(DELETION_UI) in every spot where
1110         DeleteButtonController is used. This class is now only instantiated
1111         if the feature is enabled. I've also done some cleanup in the
1112         DeleteButtonController class, removing unused methods and making
1113         private some methods only used internally to the class.
1114         Both DeleteButtonController and DeleteButton classes are now excluded
1115         from the compilation if the feature is not enabled.
1116
1117         No new tests, no change of functionality.
1118
1119         * dom/ContainerNode.cpp:
1120         (WebCore::ContainerNode::cloneChildNodes):
1121         * editing/CompositeEditCommand.cpp:
1122         (WebCore::EditCommandComposition::unapply):
1123         (WebCore::EditCommandComposition::reapply):
1124         (WebCore::CompositeEditCommand::apply):
1125         * editing/DeleteButton.cpp:
1126         * editing/DeleteButtonController.cpp:
1127         * editing/DeleteButtonController.h: Some cleanup.
1128         (WebCore::DeleteButtonController::enabled): Made private.
1129         * editing/EditCommand.cpp:
1130         (WebCore::EditCommand::EditCommand):
1131         * editing/Editor.cpp:
1132         (WebCore::Editor::notifyComponentsOnChangedSelection):
1133         (WebCore::Editor::Editor):
1134         (WebCore::Editor::rangeForPoint):
1135         (WebCore::Editor::deviceScaleFactorChanged):
1136         * editing/Editor.h:
1137         * editing/htmlediting.cpp: avoidIntersectionWithNode is
1138         used only if the feature is enabled.
1139         * editing/htmlediting.h:
1140         * editing/markup.cpp:
1141         (WebCore::createMarkup):
1142         (WebCore::createFragmentFromNodes):
1143         * rendering/RenderTable.cpp: Removed unnecessary include
1144         fo DeleteButtonController.h
1145
1146 2013-02-11  Rafael Weinstein  <rafaelw@chromium.org>
1147
1148         [HTMLTemplateElement] <template> inside of <head> may not create <body> if EOF is hit
1149         https://bugs.webkit.org/show_bug.cgi?id=109338
1150
1151         Reviewed by Adam Barth.
1152
1153         This patch adds the logic to clear the stack of open elements back to the first <template> when EOF
1154         is hit. This allows a <body> to be generated if the initial <template> was opened inside of <head>.
1155
1156         Tests added to html5lib.
1157
1158         * html/parser/HTMLTreeBuilder.cpp:
1159         (WebCore):
1160         (WebCore::HTMLTreeBuilder::popAllTemplates):
1161         (WebCore::HTMLTreeBuilder::processEndTag):
1162         (WebCore::HTMLTreeBuilder::processEndOfFile):
1163         * html/parser/HTMLTreeBuilder.h:
1164         (HTMLTreeBuilder):
1165
1166 2013-02-11  Andreas Kling  <akling@apple.com>
1167
1168         RenderText::isAllCollapsibleWhitespace() shouldn't upconvert string to 16-bit.
1169         <http://webkit.org/b/109354>
1170
1171         Reviewed by Eric Seidel.
1172
1173         254 KB progression on Membuster3.
1174
1175         * rendering/RenderText.cpp:
1176         (WebCore::RenderText::isAllCollapsibleWhitespace):
1177
1178 2013-02-11  Alpha Lam  <hclam@chromium.org>
1179
1180         Fix code style violations in GIFImageReader.{cc|h}
1181         https://bugs.webkit.org/show_bug.cgi?id=109007
1182
1183         Reviewed by Stephen White.
1184
1185         This is just a style clean up for GIFImageReader.{cc|h}.
1186
1187         There's going to be a lot changes in these two files and style check
1188         will add a lot of noise in later reviews. Fix style problems first.
1189
1190         There is no change in logic at all. Just style fixes.
1191
1192         No new tests.
1193
1194         * platform/image-decoders/gif/GIFImageDecoder.cpp:
1195         (WebCore::GIFImageDecoder::frameCount):
1196         (WebCore::GIFImageDecoder::repetitionCount):
1197         (WebCore::GIFImageDecoder::haveDecodedRow):
1198         (WebCore::GIFImageDecoder::initFrameBuffer):
1199         * platform/image-decoders/gif/GIFImageReader.cpp:
1200         (GIFImageReader::outputRow):
1201         (GIFImageReader::doLZW):
1202         (GIFImageReader::read):
1203         * platform/image-decoders/gif/GIFImageReader.h:
1204         (GIFFrameContext):
1205         (GIFFrameContext::GIFFrameContext):
1206         (GIFFrameContext::~GIFFrameContext):
1207         (GIFImageReader::GIFImageReader):
1208         (GIFImageReader::~GIFImageReader):
1209         (GIFImageReader):
1210         (GIFImageReader::imagesCount):
1211         (GIFImageReader::loopCount):
1212         (GIFImageReader::globalColormap):
1213         (GIFImageReader::globalColormapSize):
1214         (GIFImageReader::frameContext):
1215
1216 2013-02-11  Bem Jones-Bey  <bjonesbe@adobe.com>
1217
1218         [CSS Exclusions] Handle shape-outside changing a float's overhang behavior
1219         https://bugs.webkit.org/show_bug.cgi?id=106927
1220
1221         Reviewed by Julien Chaffraix.
1222
1223         When the position on a shape outside causes a float to spill out into
1224         another block than it's container, it was not being drawn correctly. It
1225         became apparent that in order to fix this properly, the approach to
1226         positioning shape outsides and floats needed to be changed. The new
1227         approach also fixes some other outstanding issues, like hit detection.
1228
1229         When a float has a shape outside, inline and float layout happens
1230         using the exclusion shape bounds instead of the float's box.  The
1231         effect of this is that the float itself no longer has any effect on
1232         layout, both with respect to positioning of the float's siblings as
1233         well as positioning the float's box. This means that when the float is
1234         positioned, it is the shape's box that must obey the positioning rules
1235         for floats. When the shape is given a position relative to the float's
1236         box, the rules for float positioning determine where the shape sits
1237         in the parent, causing the float's box to be offset by the position of
1238         the shape. Since the float's box does not affect layout (due to the
1239         shape), this is similar to relative positioning in that the offset is
1240         a paint time occurrence.
1241
1242         So the new approach is to implement positioning of shape outside on
1243         floats similar to how relative positioning is implemented, using a
1244         RenderLayer.
1245
1246         This is also tested by the existing tests for shape outside on floats positioning.
1247
1248         Test: fast/exclusions/shape-outside-floats/shape-outside-floats-overhang.html
1249
1250         * rendering/ExclusionShapeOutsideInfo.h:
1251         (WebCore::ExclusionShapeOutsideInfo::shapeLogicalOffset): Utility method to create a LayoutSize for computing the layer offset.
1252         (ExclusionShapeOutsideInfo):
1253         * rendering/LayoutState.cpp:
1254         (WebCore::LayoutState::LayoutState): Check for floats with shape outside as well as in flow positioning.
1255         * rendering/RenderBlock.cpp:
1256         (WebCore::RenderBlock::flipFloatForWritingModeForChild): Remove old positioning implementation.
1257         (WebCore::RenderBlock::paintFloats): Remove old positioning implementation.
1258         (WebCore::RenderBlock::blockSelectionGaps): Check for floats with shape outside as well as in flow positioning.
1259         (WebCore::RenderBlock::positionNewFloats): Remove old positioning implementation.
1260         (WebCore::RenderBlock::addOverhangingFloats): Remove FIXME.
1261         (WebCore::positionForPointRespectingEditingBoundaries): Check for floats with shape outside as well as in flow positioning.
1262         * rendering/RenderBlock.h:
1263         (RenderBlock): Remove old positioning implementation.
1264         (WebCore::RenderBlock::xPositionForFloatIncludingMargin): Remove old positioning implementation.
1265         (WebCore::RenderBlock::yPositionForFloatIncludingMargin): Remove old positioning implementation.
1266         * rendering/RenderBox.cpp:
1267         (WebCore::RenderBox::mapLocalToContainer): Check for floats with shape outside as well as in flow positioning.
1268         (WebCore::RenderBox::offsetFromContainer): Check for floats with shape outside as well as in flow positioning.
1269         (WebCore::RenderBox::computeRectForRepaint): Check for floats with shape outside as well as in flow positioning.
1270         (WebCore::RenderBox::layoutOverflowRectForPropagation): Check for floats with shape outside as well as in flow positioning.
1271         * rendering/RenderBox.h: Make floats with shape outside get a layer.
1272         * rendering/RenderBoxModelObject.cpp:
1273         (WebCore::RenderBoxModelObject::paintOffset): Method to return in flow
1274             positioning offset + offset from shape outside on floats.
1275         * rendering/RenderBoxModelObject.h:
1276         (RenderBoxModelObject): Add paintOffset method.
1277         * rendering/RenderInline.cpp:
1278         (WebCore::RenderInline::clippedOverflowRectForRepaint): Check for floats with shape outside as well as in flow positioning.
1279         (WebCore::RenderInline::computeRectForRepaint): Check for floats with shape outside as well as in flow positioning.
1280         (WebCore::RenderInline::mapLocalToContainer): Check for floats with shape outside as well as in flow positioning.
1281         * rendering/RenderLayer.cpp:
1282         (WebCore::RenderLayer::updateLayerPosition): Check for floats with shape outside as well as in flow positioning.
1283         (WebCore::RenderLayer::calculateClipRects): Check for floats with shape outside as well as in flow positioning.
1284         * rendering/RenderLayer.h:
1285         (WebCore::RenderLayer::paintOffset): Rename offsetForInFlowPosition to reflect that it's not just for
1286             in flow positioning, it also reflects shape outside position on floats.
1287         (RenderLayer):
1288         * rendering/RenderObject.h:
1289         (WebCore::RenderObject::hasPaintOffset): Determines if this object is in flow positioined or is a float with shape outside.
1290         * rendering/style/RenderStyle.h: Add hasPaintOffset method, analagous to method with same name on RenderObject.
1291
1292 2013-02-11  Tim Horton  <timothy_horton@apple.com>
1293
1294         FrameView::setScrollPosition should clamp scroll position before handing it to
1295         ScrollingCoordinator instead of depending on ScrollView to do this
1296         https://bugs.webkit.org/show_bug.cgi?id=109497
1297         <rdar://problem/12631789>
1298
1299         Reviewed by Simon Fraser.
1300
1301         Clamp scroll position before handing it to ScrollingCoordinator. Also, like ScrollView does,
1302         bail out if we've already scrolled to the clamped scroll position.
1303
1304         Test: platform/mac-wk2/tiled-drawing/clamp-out-of-bounds-scrolls.html
1305
1306         * page/FrameView.cpp:
1307         (WebCore::FrameView::setScrollPosition):
1308
1309 2013-02-11  Adam Barth  <abarth@webkit.org>
1310
1311         The threaded HTML parser should pass all the fast/parser tests
1312         https://bugs.webkit.org/show_bug.cgi?id=109486
1313
1314         Reviewed by Tony Gentilcore.
1315
1316         This patch fixes the last two test failures in fast/parser, which were
1317         crashes caused by not having a tokenizer when document.close() was
1318         called. (The tokenizer is created lazily by calls to document.write,
1319         which might not happen before document.close).
1320
1321         fast/parser/document-close-iframe-load.html
1322         fast/parser/document-close-nested-iframe-load.html
1323
1324         In addition, I've added a new test to make sure we flush the tokenizer
1325         properly in these cases.
1326
1327         Test: fast/parser/document-close-iframe-load-partial-entity.html
1328
1329         * html/parser/HTMLDocumentParser.cpp:
1330         (WebCore::HTMLDocumentParser::prepareToStopParsing):
1331         (WebCore::HTMLDocumentParser::pumpTokenizer):
1332
1333 2013-02-11  Bruno de Oliveira Abinader  <bruno.abinader@basyskom.com>
1334
1335         [texmap] Implement frames-per-second debug counter
1336         https://bugs.webkit.org/show_bug.cgi?id=107942
1337
1338         Reviewed by Noam Rosenthal.
1339
1340         Adds FPS counter via WEBKIT_SHOW_FPS=<interval> environment variable,
1341         where <interval> is the period in seconds (i.e. =1.5) between FPS
1342         updates on screen. It is measured by counting
1343         CoordinatedGraphicsScene::paintTo* calls and is painted using
1344         drawRepaintCounter() after TextureMapperLayer has finished painting its
1345         contents.
1346
1347         Visual debugging feature, no need for new tests.
1348
1349         * platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.cpp:
1350         (WebCore::CoordinatedGraphicsScene::CoordinatedGraphicsScene):
1351         (WebCore::CoordinatedGraphicsScene::paintToCurrentGLContext):
1352         (WebCore::CoordinatedGraphicsScene::paintToGraphicsContext):
1353         (WebCore::CoordinatedGraphicsScene::updateFPS):
1354         * platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.h:
1355
1356 2013-02-11  Eric Seidel  <eric@webkit.org>
1357
1358         Fold MarkupTokenBase into HTMLToken now that it has no other subclasses
1359         https://bugs.webkit.org/show_bug.cgi?id=109483
1360
1361         Reviewed by Adam Barth.
1362
1363         This deletes an epic amount of template yuck, as well as removes
1364         a vtable !?! from HTMLToken.
1365
1366         This paves the way for further cleanup of HTMLToken now that we
1367         can see the whole object at once.
1368         We'll also probably re-create an HTMLToken.cpp again, now that we're
1369         free from the chains of template nonsense.
1370
1371         * GNUmakefile.list.am:
1372         * Target.pri:
1373         * WebCore.gypi:
1374         * WebCore.vcproj/WebCore.vcproj:
1375         * WebCore.vcxproj/WebCore.vcxproj:
1376         * WebCore.vcxproj/WebCore.vcxproj.filters:
1377         * WebCore.xcodeproj/project.pbxproj:
1378         * html/parser/HTMLToken.h:
1379         (WebCore::findAttributeInVector):
1380         (WebCore):
1381         (HTMLToken):
1382         (Attribute):
1383         (Range):
1384         (WebCore::HTMLToken::HTMLToken):
1385         (WebCore::HTMLToken::clear):
1386         (WebCore::HTMLToken::isUninitialized):
1387         (WebCore::HTMLToken::type):
1388         (WebCore::HTMLToken::makeEndOfFile):
1389         (WebCore::HTMLToken::startIndex):
1390         (WebCore::HTMLToken::endIndex):
1391         (WebCore::HTMLToken::setBaseOffset):
1392         (WebCore::HTMLToken::end):
1393         (WebCore::HTMLToken::data):
1394         (WebCore::HTMLToken::isAll8BitData):
1395         (WebCore::HTMLToken::name):
1396         (WebCore::HTMLToken::appendToName):
1397         (WebCore::HTMLToken::nameString):
1398         (WebCore::HTMLToken::selfClosing):
1399         (WebCore::HTMLToken::setSelfClosing):
1400         (WebCore::HTMLToken::beginStartTag):
1401         (WebCore::HTMLToken::beginEndTag):
1402         (WebCore::HTMLToken::addNewAttribute):
1403         (WebCore::HTMLToken::beginAttributeName):
1404         (WebCore::HTMLToken::endAttributeName):
1405         (WebCore::HTMLToken::beginAttributeValue):
1406         (WebCore::HTMLToken::endAttributeValue):
1407         (WebCore::HTMLToken::appendToAttributeName):
1408         (WebCore::HTMLToken::appendToAttributeValue):
1409         (WebCore::HTMLToken::attributes):
1410         (WebCore::HTMLToken::eraseValueOfAttribute):
1411         (WebCore::HTMLToken::ensureIsCharacterToken):
1412         (WebCore::HTMLToken::characters):
1413         (WebCore::HTMLToken::appendToCharacter):
1414         (WebCore::HTMLToken::comment):
1415         (WebCore::HTMLToken::beginComment):
1416         (WebCore::HTMLToken::appendToComment):
1417         (WebCore::HTMLToken::eraseCharacters):
1418         * html/parser/HTMLTokenTypes.h:
1419         * html/parser/XSSAuditor.h:
1420         * xml/parser/MarkupTokenBase.h: Removed.
1421
1422 2013-02-11  Gavin Barraclough  <barraclough@apple.com>
1423
1424         PluginProcess should quit immediately if idle in response to low-memory notifications
1425         https://bugs.webkit.org/show_bug.cgi?id=109103
1426         <rdar://problem/12679827>
1427
1428         Reviewed by Brady Eidson.
1429
1430         This patch allows a process to set a custom callback for low memory warnings
1431         (defaulting to the current behaviour, as implemented in releaseMemory).
1432
1433         * platform/MemoryPressureHandler.cpp:
1434         (WebCore::MemoryPressureHandler::MemoryPressureHandler):
1435             - Initialize m_lowMemoryHandler to releaseMemory.
1436         (WebCore::MemoryPressureHandler::install):
1437         (WebCore::MemoryPressureHandler::uninstall):
1438         (WebCore::MemoryPressureHandler::holdOff):
1439             - Cleaned up spacing.
1440         (WebCore::MemoryPressureHandler::releaseMemory):
1441             - Added null implementation for non-Mac builds.
1442         * platform/MemoryPressureHandler.h:
1443         (WebCore::MemoryPressureHandler::setLowMemoryHandler):
1444             - Added method to set m_lowMemoryHandler.
1445         * platform/mac/MemoryPressureHandlerMac.mm:
1446         (WebCore::MemoryPressureHandler::respondToMemoryPressure):
1447             - Changed to call releaseMemory via m_lowMemoryHandler.
1448
1449 2013-02-11  Simon Fraser  <simon.fraser@apple.com>
1450
1451         REGRESSION (r133807): Sticky-position review bar on bugzilla review page is jumpy
1452         https://bugs.webkit.org/show_bug.cgi?id=104276
1453         <rdar://problem/12827187>
1454
1455         Reviewed by Tim Horton.
1456
1457         When committing new scrolling tree state, if the root node has a scroll
1458         position update, we would handle that before updating the state of child
1459         nodes (with possibly new viewport constraints). That would cause incorrect
1460         child layer updates.
1461         
1462         Fix by adding a second 'update' phase that happens after child nodes,
1463         and moving the scroll position update into that.
1464
1465         Scrolling tests only dump the state tree, so cannot test the bug.
1466
1467         * page/FrameView.cpp:
1468         (WebCore::FrameView::setScrollPosition): If the scroll position didn't
1469         actually change, don't request a scroll position update from the ScrollingCoordinator.
1470         * page/scrolling/ScrollingTree.cpp:
1471         (WebCore::ScrollingTree::updateTreeFromStateNode): Keep track of the scrolling node so
1472         that we can call updateAfterChildren() on it.
1473         * page/scrolling/ScrollingTreeNode.h:
1474         (ScrollingTreeNode):
1475         (WebCore::ScrollingTreeNode::updateAfterChildren):
1476         * page/scrolling/ScrollingTreeScrollingNode.cpp:
1477         (WebCore::ScrollingTreeScrollingNode::updateBeforeChildren):
1478         * page/scrolling/ScrollingTreeScrollingNode.h:
1479         (ScrollingTreeScrollingNode):
1480         * page/scrolling/mac/ScrollingCoordinatorMac.mm:
1481         (WebCore::ScrollingCoordinatorMac::updateViewportConstrainedNode):
1482         In the current bug the scrolling tree was scheduled for commit because of a
1483         scroll position request, but if only the viewport constraints change, we also need
1484         to commit the tree.
1485         * page/scrolling/mac/ScrollingTreeFixedNode.h:
1486         (ScrollingTreeFixedNode):
1487         * page/scrolling/mac/ScrollingTreeFixedNode.mm:
1488         (WebCore::ScrollingTreeFixedNode::updateBeforeChildren):
1489         * page/scrolling/mac/ScrollingTreeScrollingNodeMac.h:
1490         (ScrollingTreeScrollingNodeMac):
1491         * page/scrolling/mac/ScrollingTreeScrollingNodeMac.mm:
1492         (WebCore::ScrollingTreeScrollingNodeMac::updateBeforeChildren):
1493         (WebCore::ScrollingTreeScrollingNodeMac::updateAfterChildren): Move code here
1494         that updates things that have to happen after children.
1495         * page/scrolling/mac/ScrollingTreeStickyNode.h:
1496         (ScrollingTreeStickyNode):
1497         * page/scrolling/mac/ScrollingTreeStickyNode.mm:
1498         (WebCore::ScrollingTreeStickyNode::updateBeforeChildren):
1499
1500 2013-02-11  Roger Fong  <roger_fong@apple.com>
1501
1502         Unreviewed. Build fix for Win7 Release.
1503         Because of InspectorAllInOne.cpp static globals must be named differently in files included by InspectorAllInOne.
1504         This was the case for UserInitiatedProfileName. Also removed the repeated HeapProfileType definition in
1505         InspectorHeapProfilerAgent.cpp since it wasn't being used anyways.
1506
1507         * inspector/InspectorHeapProfilerAgent.cpp:
1508         (WebCore):
1509         (WebCore::InspectorHeapProfilerAgent::takeHeapSnapshot):
1510
1511 2013-02-11  Tony Gentilcore  <tonyg@chromium.org>
1512
1513         SegmentedString's copy ctor should copy all fields
1514         https://bugs.webkit.org/show_bug.cgi?id=109477
1515
1516         Reviewed by Adam Barth.
1517
1518         This fixes http/tests/inspector-enabled/document-write.html (and likely others) for the threaded HTML parser.
1519
1520         No new tests because covered by existing tests.
1521
1522         * platform/text/SegmentedString.cpp:
1523         (WebCore::SegmentedString::SegmentedString):
1524
1525 2013-02-11  Joshua Bell  <jsbell@chromium.org>
1526
1527         IndexedDB: database connections don't close after versionchange transaction aborts
1528         https://bugs.webkit.org/show_bug.cgi?id=102298
1529
1530         Reviewed by Tony Chang.
1531
1532         Per spec, close the database if the "versionchange" transaction aborts.
1533
1534         Tests: storage/indexeddb/aborted-versionchange-closes.html
1535                storage/indexeddb/lazy-index-population.html
1536                storage/objectstore-basics.html
1537
1538         * Modules/indexeddb/IDBTransaction.cpp:
1539         (WebCore::IDBTransaction::onAbort): Tell the IDBDatabase (connection) to close if
1540         this was a "versionchange" transaction.
1541
1542 2013-02-11  Christophe Dumez  <ch.dumez@sisa.samsung.com>
1543
1544         [EFL] fast/forms/number/number-l10n-input.html is failing
1545         https://bugs.webkit.org/show_bug.cgi?id=109440
1546
1547         Reviewed by Laszlo Gombos.
1548
1549         Use LocaleICU instead of LocaleNone on EFL port. The EFL
1550         port already depends on ICU library and we get additional
1551         functionality this way.
1552
1553         No new tests, already covered by existing tests.
1554
1555         * CMakeLists.txt:
1556         * PlatformBlackBerry.cmake:
1557         * PlatformEfl.cmake:
1558         * PlatformWinCE.cmake:
1559
1560 2013-02-11  Benjamin Poulain  <benjamin@webkit.org>
1561
1562         Kill TestRunner::setMinimumTimerInterval; implement the feature with InternalSettings
1563         https://bugs.webkit.org/show_bug.cgi?id=109349
1564
1565         Reviewed by Sam Weinig.
1566
1567         Expose setMinimumTimerInterval() and implement the backup/restore to keep
1568         a consistent state between tests.
1569
1570         * testing/InternalSettings.cpp:
1571         (WebCore::InternalSettings::Backup::Backup):
1572         (WebCore::InternalSettings::Backup::restoreTo):
1573         (WebCore::InternalSettings::setMinimumTimerInterval):
1574         (WebCore):
1575         * testing/InternalSettings.h:
1576         (Backup):
1577         (InternalSettings):
1578         * testing/InternalSettings.idl:
1579
1580 2013-02-11  Dean Jackson  <dino@apple.com>
1581
1582         Source/WebCore: Snapshotted plug-in should use shadow root
1583         https://bugs.webkit.org/show_bug.cgi?id=108284
1584
1585         Reviewed by Simon Fraser.
1586
1587         Take three - relanding after rollout in r142400 that was caused by a global
1588         selector interfering with CSS Instrumentation in the Inspector.
1589
1590         A snapshotted plugin needs to indicate to the user that it can be clicked
1591         to be restarted. Previously this was done with an image that had embedded
1592         text. Instead, we now use an internal shadow root to embed some markup that
1593         will display instructions that can be localised.
1594
1595         The UA stylesheet for plug-ins provides a default styling for the label, which
1596         can be overridden by ports.
1597
1598         In the process, RenderSnapshottedPlugIn no longer inherits from RenderEmbeddedObject,
1599         since it is only responsible for drawing a paused plug-in. The snapshot creation
1600         can work with the default renderer, but a shadow root requires something like
1601         RenderBlock in order to draw its children. We swap from one renderer to another when
1602         necessary either by creating the shadow root or by explicitly detaching and attaching
1603         the plugin element.
1604
1605         Unfortunately this is difficult to test, because the snapshotting requires
1606         time to execute, and also a PluginView to be instantiated.
1607
1608         * css/plugIns.css:
1609         (object::-webkit-snapshotted-plugin-content): New rules for a default label style.
1610
1611         * platform/LocalizedStrings.cpp: Make sure all ports have plugin strings, now it is called.
1612         * platform/LocalizedStrings.h:
1613         * platform/blackberry/LocalizedStringsBlackBerry.cpp:
1614         * platform/chromium/LocalizedStringsChromium.cpp:
1615         * platform/efl/LocalizedStringsEfl.cpp:
1616         * platform/gtk/LocalizedStringsGtk.cpp:
1617         * platform/qt/LocalizedStringsQt.cpp:
1618
1619         * html/HTMLPlugInElement.cpp:
1620         (WebCore::HTMLPlugInElement::defaultEventHandler): Take into account the fact
1621         that RenderSnapshottedPlugIn no longer is an embedded object.
1622
1623         * html/HTMLPlugInImageElement.cpp:
1624         (WebCore::HTMLPlugInImageElement::HTMLPlugInImageElement): New default values in constructor.
1625         (WebCore::HTMLPlugInElement::defaultEventHandler): Make sure to call base class.
1626         (WebCore::HTMLPlugInElement::willRecalcStyle): No need to reattach if we're a snapshot.
1627         (WebCore::HTMLPlugInImageElement::createRenderer): If we're showing a snapshot, create such
1628             a renderer, otherwise use the typical plug-in path.
1629         (WebCore::HTMLPlugInImageElement::updateSnapshot): Keep a record of the snapshot, since we'll
1630             need to give it to the renderer.
1631         (WebCore::HTMLPlugInImageElement::didAddUserAgentShadowRoot): Build a subtree that will display a label.
1632         * html/HTMLPlugInImageElement.h:
1633         (HTMLPlugInImageElement): New member variable to record the snapshot image and whether the label
1634             should show immediately.
1635         (WebCore::HTMLPlugInImageElement::swapRendererTimerFired): The callback function triggered when we need
1636             to swap to the Shadow Root.
1637         (WebCore::HTMLPlugInImageElement::userDidClickSnapshot): The user has tapped on the snapshot so the plugin
1638             in being recreated. Make sure we reattach so that a plugin renderer will be created.
1639         (WebCore::HTMLPlugInImageElement::subframeLoaderWillCreatePlugIn): Make sure we set the right
1640             displayState for snapshots.
1641         * html/HTMLPlugInImageElement.h:
1642         (HTMLPlugInImageElement): The new methods listed above.
1643         (WebCore::HTMLPlugInImageElement::setShouldShowSnapshotLabelAutomatically): Indicates whether or not
1644             a snapshot should be immediately labeled.
1645
1646         * page/ChromeClient.h: No need for plugInStartLabelImage any more.
1647
1648         * rendering/RenderSnapshottedPlugIn.cpp:
1649         (WebCore::RenderSnapshottedPlugIn::RenderSnapshottedPlugIn): New inheritance.
1650         (WebCore::RenderSnapshottedPlugIn::paint): If we're in the background paint phase, render the snapshot image.
1651         (WebCore::RenderSnapshottedPlugIn::paintSnapshotImage): Rename.
1652         (WebCore::RenderSnapshottedPlugIn::paintSnapshot): Rename.
1653         (WebCore::RenderSnapshottedPlugIn::paintSnapshotWithLabel): Rename. No need for label sizes.
1654         (WebCore::RenderSnapshottedPlugIn::getCursor):
1655         (WebCore::RenderSnapshottedPlugIn::handleEvent): The renderer doesn't restart the plug-in any more. Tell the element and it will do it.
1656         * rendering/RenderSnapshottedPlugIn.h:
1657         (RenderSnapshottedPlugIn): New inheritance. Some method renaming.
1658
1659 2013-02-11  Mike West  <mkwst@chromium.org>
1660
1661         CSP reports for blocked 'data:' URLs should report the scheme only.
1662         https://bugs.webkit.org/show_bug.cgi?id=109429
1663
1664         Reviewed by Adam Barth.
1665
1666         https://dvcs.w3.org/hg/content-security-policy/rev/001dc8e8bcc3 changed
1667         the CSP 1.1 spec to require that blocked URLs that don't refer to
1668         generally resolvable schemes (e.g. 'data:', 'javascript:', etc.) be
1669         stripped down to their scheme in violation reports.
1670
1671         Test: http/tests/security/contentSecurityPolicy/report-blocked-data-uri.html
1672
1673         * page/ContentSecurityPolicy.cpp:
1674         (WebCore::ContentSecurityPolicy::reportViolation):
1675             If the blocked URL is a web-resolvable scheme, apply the current
1676             stripping logic to it, otherwise, strip it to the scheme only.
1677         * platform/KURL.h:
1678         (KURL):
1679             Move KURL::isHierarchical() out into KURL's public API.
1680
1681 2013-02-11  Simon Fraser  <simon.fraser@apple.com>
1682
1683         ScrollingTree node maps keep getting larger
1684         https://bugs.webkit.org/show_bug.cgi?id=109348
1685
1686         Reviewed by Sam Weinig.
1687
1688         When navigating between pages, nodes would get left in the ScrollingTree's
1689         node map, and the ScrollingStateTree's node map, so these would get larger
1690         and larger as you browse.
1691         
1692         Simplify map maintenance by clearing the map when setting a new root node
1693         (which happens on the first commit of a new page). Also, don't keep root nodes
1694         around, but create them afresh for each page, which simplifies their ID
1695         management.
1696         
1697         This is closer to the original behavior; keeping the root nodes around was
1698         a fix for bug 99668, but we avoid regressing that fix by bailing early
1699         from frameViewLayoutUpdated() if there is no root state node (we'll get
1700         called again anyway).
1701         
1702         This now allows state nodeIDs to be purely read-only.
1703
1704         * page/scrolling/ScrollingStateNode.h:
1705         * page/scrolling/ScrollingStateTree.cpp:
1706         (WebCore::ScrollingStateTree::ScrollingStateTree):
1707         (WebCore::ScrollingStateTree::attachNode):
1708         (WebCore::ScrollingStateTree::clear):
1709         (WebCore::ScrollingStateTree::removeNode):
1710         * page/scrolling/ScrollingTree.cpp:
1711         (WebCore::ScrollingTree::updateTreeFromStateNode):
1712         * page/scrolling/mac/ScrollingCoordinatorMac.mm:
1713         (WebCore::ScrollingCoordinatorMac::frameViewLayoutUpdated):
1714
1715 2013-02-11  Simon Fraser  <simon.fraser@apple.com>
1716
1717         Move m_stateNodeMap from ScrollingCoordinatorMac to ScrollingStateTree
1718         https://bugs.webkit.org/show_bug.cgi?id=109361
1719
1720         Reviewed by Sam Weinig.
1721         
1722         The map of scrolling node IDs to ScollingStateNodes was maintained by
1723         ScrollingCoordinatorMac, rather than ScrollingStateTree. This is different
1724         from the ScrollingTree (which owns its node map), and added some amount
1725         of to-and-fro between ScrollingStateTree and ScrollingCoordinatorMac.
1726         
1727         Having ScrollingCoordinatorMac maintain the map of IDs to state nodes
1728         simplifies things.
1729
1730         No behavior change.
1731
1732         * page/scrolling/ScrollingStateTree.cpp:
1733         (WebCore::ScrollingStateTree::attachNode):
1734         (WebCore::ScrollingStateTree::detachNode):
1735         (WebCore::ScrollingStateTree::clear):
1736         (WebCore::ScrollingStateTree::removeNode):
1737         (WebCore::ScrollingStateTree::stateNodeForID):
1738         * page/scrolling/ScrollingStateTree.h:
1739         (ScrollingStateTree): Remove some stale comments.
1740         (WebCore::ScrollingStateTree::removedNodes):
1741         * page/scrolling/mac/ScrollingCoordinatorMac.h:
1742         (ScrollingCoordinatorMac):
1743         * page/scrolling/mac/ScrollingCoordinatorMac.mm:
1744         (WebCore::ScrollingCoordinatorMac::frameViewLayoutUpdated):
1745         (WebCore::ScrollingCoordinatorMac::recomputeWheelEventHandlerCountForFrameView):
1746         (WebCore::ScrollingCoordinatorMac::frameViewRootLayerDidChange):
1747         (WebCore::ScrollingCoordinatorMac::requestScrollPositionUpdate):
1748         (WebCore::ScrollingCoordinatorMac::attachToStateTree):
1749         (WebCore::ScrollingCoordinatorMac::detachFromStateTree):
1750         (WebCore::ScrollingCoordinatorMac::clearStateTree):
1751         (WebCore::ScrollingCoordinatorMac::updateScrollingNode):
1752         (WebCore::ScrollingCoordinatorMac::updateViewportConstrainedNode):
1753
1754 2013-02-11  Mark Rowe  <mrowe@apple.com>
1755
1756         Build fix.
1757
1758         * platform/mac/PlatformSpeechSynthesizerMac.mm: Fix the case in the include.
1759
1760 2013-02-11  Julien Chaffraix  <jchaffraix@webkit.org>
1761
1762         Regression(r131539): Heap-use-after-free in WebCore::RenderBlock::willBeDestroyed
1763         https://bugs.webkit.org/show_bug.cgi?id=107189
1764
1765         Reviewed by Abhishek Arya.
1766
1767         Test: fast/dynamic/continuation-detach-crash.html
1768
1769         This patch reverts r131539 and the following changes (r132591 and r139664).
1770         This means we redo detaching from the bottom-up which solves the regression.
1771         It fixes the attached test case as we re-attach child nodes before detaching
1772         the parent. It seems wrong to do but this avoid a stale continuation.
1773
1774         * dom/ContainerNode.cpp:
1775         (WebCore::ContainerNode::detach): Detach the children first, then ourself.
1776         * dom/Node.cpp:
1777         (WebCore::Node::detach): Clear the renderer instead of ASSERT'ing.
1778         * rendering/RenderObject.cpp:
1779         (WebCore::RenderObject::willBeDestroyed): Removed the code to clear the associated node's renderer.
1780         (WebCore::RenderObject::destroyAndCleanupAnonymousWrappers):
1781         * rendering/RenderObjectChildList.cpp:
1782         (WebCore::RenderObjectChildList::removeChildNode):
1783         Moved the repainting logic back into removeChildNode from destroyAndCleanupAnonymousWrappers.
1784         (WebCore::RenderObjectChildList::destroyLeftoverChildren): Re-added the code to clear the associated node's
1785         renderer.
1786         * rendering/RenderTextFragment.cpp:
1787         (WebCore::RenderTextFragment::setText): Re-added the code to set the associated node's renderer.
1788
1789         * dom/ContainerNode.cpp:
1790         (WebCore::ContainerNode::detach):
1791         * dom/Node.cpp:
1792         (WebCore::Node::detach):
1793         * rendering/RenderObject.cpp:
1794         (WebCore::RenderObject::willBeDestroyed):
1795         (WebCore::RenderObject::destroyAndCleanupAnonymousWrappers):
1796         * rendering/RenderObjectChildList.cpp:
1797         (WebCore::RenderObjectChildList::destroyLeftoverChildren):
1798         (WebCore::RenderObjectChildList::removeChildNode):
1799         * rendering/RenderTextFragment.cpp:
1800         (WebCore::RenderTextFragment::setText):
1801
1802 2013-02-11  Eric Seidel  <eric@webkit.org>
1803
1804         Make WebVTTTokenizer stop inheriting from MarkupTokenizerBase
1805         https://bugs.webkit.org/show_bug.cgi?id=109411
1806
1807         Reviewed by Adam Barth.
1808
1809         Moved InputStreamPreprocessor into its own header file so it can be
1810         used by both WebVTTTokenizer and HTMLTokenizer.
1811
1812         Also split out kEndOfFileMarker from InputStreamPreprocessor<T> so that
1813         it can be used w/o a specific instantiation of the template class.
1814         This also made it possible to fix three old fixmes about wanting to share
1815         that constant.
1816
1817         Again, separating WebVTT code from Markup* base classes made it simpler
1818         at the cost of a little copy/paste code.  WebVTT tokenization is remarkably
1819         simple compared to HTML.
1820
1821         This will make it immediately possible to pull MarkupTokenizerBase up into
1822         HTMLTokenizer and further simplify the code.
1823
1824         * GNUmakefile.list.am:
1825         * Target.pri:
1826         * WebCore.gypi:
1827         * WebCore.vcproj/WebCore.vcproj:
1828         * WebCore.vcxproj/WebCore.vcxproj:
1829         * WebCore.vcxproj/WebCore.vcxproj.filters:
1830         * WebCore.xcodeproj/project.pbxproj:
1831         * html/parser/BackgroundHTMLParser.cpp:
1832         (WebCore::BackgroundHTMLParser::markEndOfFile):
1833         * html/parser/HTMLInputStream.h:
1834         (WebCore::HTMLInputStream::markEndOfFile):
1835         * html/parser/HTMLTokenizer.cpp:
1836         (WebCore::HTMLTokenizer::nextToken):
1837         * html/parser/InputStreamPreprocessor.h: Added.
1838         (WebCore):
1839         (InputStreamPreprocessor):
1840         (WebCore::InputStreamPreprocessor::InputStreamPreprocessor):
1841         (WebCore::InputStreamPreprocessor::nextInputCharacter):
1842         (WebCore::InputStreamPreprocessor::peek):
1843         (WebCore::InputStreamPreprocessor::advance):
1844         (WebCore::InputStreamPreprocessor::skipNextNewLine):
1845         (WebCore::InputStreamPreprocessor::reset):
1846         (WebCore::InputStreamPreprocessor::shouldTreatNullAsEndOfFileMarker):
1847         * html/track/WebVTTTokenizer.cpp:
1848         (WebCore::WebVTTTokenizer::WebVTTTokenizer):
1849         (WebCore::WebVTTTokenizer::nextToken):
1850         * html/track/WebVTTTokenizer.h:
1851         (WebVTTTokenizer):
1852         (WebCore::WebVTTTokenizer::haveBufferedCharacterToken):
1853         (WebCore::WebVTTTokenizer::bufferCharacter):
1854         (WebCore::WebVTTTokenizer::emitAndResumeIn):
1855         (WebCore::WebVTTTokenizer::emitEndOfFile):
1856         (WebCore::WebVTTTokenizer::shouldSkipNullCharacters):
1857         * xml/parser/MarkupTokenizerBase.h:
1858         (MarkupTokenizerBase):
1859         (WebCore::MarkupTokenizerBase::bufferCharacter):
1860
1861 2013-02-11  Adam Barth  <abarth@webkit.org>
1862
1863         document.write during window.onload can trigger DumpRenderTree to dump the render tree
1864         https://bugs.webkit.org/show_bug.cgi?id=109465
1865
1866         Reviewed by Eric Seidel.
1867
1868         This patch is a partial revert of
1869         http://trac.webkit.org/changeset/142378. It's not safe to call
1870         checkComplete during the load event. We'll need to find another way of
1871         calling checkComplete at the right time.
1872
1873         Test: fast/parser/document-write-during-load.html
1874
1875         * dom/Document.cpp:
1876         (WebCore::Document::decrementActiveParserCount):
1877
1878 2013-02-11  Andrey Kosyakov  <caseq@chromium.org>
1879
1880         Web Inspector: Timeline: invalidate and force locations are same for Layout records caused by style recalculaiton
1881         https://bugs.webkit.org/show_bug.cgi?id=109294
1882
1883         Reviewed by Pavel Feldman.
1884
1885         Use the stack that caused style recalculation as a cause for relayout performed due to
1886         layout invalidation caused by style recalculation.
1887
1888         * inspector/front-end/TimelinePresentationModel.js:
1889         (WebInspector.TimelinePresentationModel.prototype.reset):
1890         (WebInspector.TimelinePresentationModel.Record):
1891
1892 2013-02-01  Andrey Kosyakov  <caseq@chromium.org>
1893
1894         Web Inspector: [Extension API] adjust inspectedWindow.eval() callback parameters to expose non-exceptional error
1895         https://bugs.webkit.org/show_bug.cgi?id=108640
1896
1897         Reviewed by Vsevolod Vlasov.
1898
1899         - only set first parameter to eval() callback iff expression successfully evaluates;
1900         - use object, not bool as second parameter;
1901         - pass exceptions and extension errors as second parameter if evaluate failed;
1902         - minor drive-by changes in ExtensionAPI utilities.
1903
1904         * inspector/front-end/ExtensionAPI.js:
1905         (injectedExtensionAPI.ExtensionSidebarPaneImpl.prototype.setExpression):
1906         (injectedExtensionAPI.InspectedWindow.prototype.):
1907         (injectedExtensionAPI.InspectedWindow.prototype.eval):
1908         (injectedExtensionAPI.extractCallbackArgument):
1909         * inspector/front-end/ExtensionServer.js:
1910         (WebInspector.ExtensionServer.prototype.):
1911         (WebInspector.ExtensionServer.prototype._onEvaluateOnInspectedPage):
1912         (WebInspector.ExtensionStatus):
1913
1914 2013-02-11  Andrey Kosyakov  <caseq@chromium.org>
1915
1916         Web Inspector: [Extensions API] expose ExtensionServerClient to tests so tests use same port as extensions API
1917         https://bugs.webkit.org/show_bug.cgi?id=109443
1918
1919         Reviewed by Vsevolod Vlasov.
1920
1921         Promote extensionServer var to the outer closure, so it may be accessed by platform-specific (or test) code.
1922
1923         * inspector/front-end/ExtensionAPI.js:
1924         (buildExtensionAPIInjectedScript):
1925
1926 2013-02-11  Eric Seidel  <eric@webkit.org>
1927
1928         Move WebVTTToken off of MarkupTokenBase
1929         https://bugs.webkit.org/show_bug.cgi?id=109410
1930
1931         Reviewed by Tony Gentilcore.
1932
1933         This introduces a small amount of "copy/paste" code
1934         but actually makes WebVTTToken much smaller and simpler!
1935         This also frees the HTMLParser to have its Token class
1936         back to itself so we can tune it to make HTML faster.
1937
1938         * html/track/WebVTTToken.h:
1939         (WebVTTToken):
1940         (WebCore::WebVTTToken::WebVTTToken):
1941         (WebCore::WebVTTToken::appendToName):
1942         (WebCore::WebVTTToken::type):
1943         (WebCore::WebVTTToken::name):
1944         (WebCore::WebVTTToken::ensureIsCharacterToken):
1945         (WebCore::WebVTTToken::appendToCharacter):
1946         (WebCore::WebVTTToken::beginEmptyStartTag):
1947         (WebCore::WebVTTToken::beginStartTag):
1948         (WebCore::WebVTTToken::beginEndTag):
1949         (WebCore::WebVTTToken::beginTimestampTag):
1950         (WebCore::WebVTTToken::makeEndOfFile):
1951         (WebCore::WebVTTToken::clear):
1952
1953 2013-02-11  Joshua Bell  <jsbell@chromium.org>
1954
1955         [V8] IndexedDB: Minor GC can collect IDBDatabase wrapper with versionchange handler
1956         https://bugs.webkit.org/show_bug.cgi?id=108670
1957
1958         Reviewed by Kentaro Hara.
1959
1960         Prevent IDBDatabase's wrapper from being GC'd while the database is open if it has
1961         listeners, as those listeners may close the database in response to events.
1962
1963         Also, removed extraneous super-calls from hasPendingActivity() overrides.
1964
1965         Test: storage/indexeddb/database-wrapper.html
1966
1967         * Modules/indexeddb/IDBDatabase.cpp:
1968         (WebCore::IDBDatabase::hasPendingActivity): Implemented.
1969         * Modules/indexeddb/IDBDatabase.h: Declared.
1970         * Modules/indexeddb/IDBRequest.cpp:
1971         (WebCore::IDBRequest::hasPendingActivity): Simplified.
1972         * Modules/indexeddb/IDBTransaction.cpp:
1973         (WebCore::IDBTransaction::hasPendingActivity): Simplified.
1974
1975 2013-02-11  Eric Seidel  <eric@webkit.org>
1976
1977         Remove AttributeBase now that NEW_XML is gone
1978         https://bugs.webkit.org/show_bug.cgi?id=109408
1979
1980         Reviewed by Adam Barth.
1981
1982         Just deleting code.  HTMLToken::Attribute is now just
1983         the real class and not a typedef.
1984
1985         * html/parser/CompactHTMLToken.cpp:
1986         (WebCore::CompactHTMLToken::CompactHTMLToken):
1987         * html/parser/HTMLTokenizer.cpp:
1988         (WebCore::AtomicHTMLToken::nameForAttribute):
1989         * xml/parser/MarkupTokenBase.h:
1990         (WebCore):
1991         (MarkupTokenBase):
1992         (Attribute):
1993         (Range):
1994
1995 2013-02-11  Eric Seidel  <eric@webkit.org>
1996
1997         Rename PreloadTask to StartTagScanner to match its purpose
1998         https://bugs.webkit.org/show_bug.cgi?id=109406
1999
2000         Reviewed by Sam Weinig.
2001
2002         As discussed in bug 107807.
2003
2004         * html/parser/HTMLPreloadScanner.cpp:
2005         (WebCore::StartTagScanner::StartTagScanner):
2006         (WebCore::StartTagScanner::processAttributes):
2007         (WebCore::HTMLPreloadScanner::processToken):
2008
2009 2013-02-11  Vsevolod Vlasov  <vsevik@chromium.org>
2010
2011         Web Inspector: WebInspector.Project refactorings.
2012         https://bugs.webkit.org/show_bug.cgi?id=109433
2013
2014         Reviewed by Alexander Pavlov.
2015
2016         This change prepares Workspace and Project to migration to project-per-domain mode for network based projects.
2017         Renamed WebInspector.WorkspaceProvider to WebInspector.ProjectDelegate.
2018         Renamed Project.name() to Project.id() and delegated it to project delegate.
2019         Added Project.displayName() method that is delegated to project delegate.
2020         SimpleWorkspaceProvider is now responsible for creation of SimpleWorkspaceDelegates and
2021         isolates various mappings from Project/ProjectDelegate concept.
2022         UISourceCode is now created based on path in the project.
2023         UISourceCode uri is now calculated based on project and path (right now uri is equal to path).
2024
2025         * WebCore.gypi:
2026         * WebCore.vcproj/WebCore.vcproj:
2027         * inspector/compile-front-end.py:
2028         * inspector/front-end/FileSystemProjectDelegate.js: Renamed from Source/WebCore/inspector/front-end/FileSystemWorkspaceProvider.js.
2029         (WebInspector.FileSystemProjectDelegate):
2030         (WebInspector.FileSystemProjectDelegate.prototype.id):
2031         (WebInspector.FileSystemProjectDelegate.prototype.type):
2032         (WebInspector.FileSystemProjectDelegate.prototype.displayName):
2033         (WebInspector.FileSystemProjectDelegate.prototype.innerCallback):
2034         (WebInspector.FileSystemProjectDelegate.prototype.requestFileContent):
2035         (WebInspector.FileSystemProjectDelegate.prototype.setFileContent):
2036         (WebInspector.FileSystemProjectDelegate.prototype.contentCallback):
2037         (WebInspector.FileSystemProjectDelegate.prototype.searchInFileContent):
2038         (WebInspector.FileSystemProjectDelegate.prototype._contentTypeForPath):
2039         (WebInspector.FileSystemProjectDelegate.prototype._populate.filesLoaded):
2040         (WebInspector.FileSystemProjectDelegate.prototype._populate):
2041         (WebInspector.FileSystemProjectDelegate.prototype._addFile):
2042         (WebInspector.FileSystemProjectDelegate.prototype._removeFile):
2043         (WebInspector.FileSystemProjectDelegate.prototype.reset):
2044         (WebInspector.FileSystemUtils):
2045         (WebInspector.FileSystemUtils.errorHandler):
2046         (WebInspector.FileSystemUtils.requestFileSystem):
2047         (.fileSystemLoaded):
2048         (.innerCallback):
2049         (WebInspector.FileSystemUtils.requestFilesRecursive):
2050         (.fileEntryLoaded):
2051         (.fileLoaded):
2052         (.readerLoadEnd):
2053         (WebInspector.FileSystemUtils.requestFileContent):
2054         (.fileWriterCreated.fileTruncated):
2055         (.fileWriterCreated):
2056         (.writerEnd):
2057         (WebInspector.FileSystemUtils.setFileContent):
2058         (WebInspector.FileSystemUtils._getDirectory):
2059         (.toArray):
2060         (WebInspector.FileSystemUtils._readDirectory):
2061         (WebInspector.FileSystemUtils._requestEntries):
2062         * inspector/front-end/IsolatedFileSystemModel.js:
2063         (WebInspector.IsolatedFileSystemModel.prototype._innerAddFileSystem):
2064         * inspector/front-end/SimpleWorkspaceProvider.js:
2065         (WebInspector.SimpleProjectDelegate):
2066         (WebInspector.SimpleProjectDelegate.prototype.id):
2067         (WebInspector.SimpleProjectDelegate.prototype.displayName):
2068         (WebInspector.SimpleProjectDelegate.prototype.requestFileContent):
2069         (WebInspector.SimpleProjectDelegate.prototype.setFileContent):
2070         (WebInspector.SimpleProjectDelegate.prototype.searchInFileContent):
2071         (WebInspector.SimpleProjectDelegate.prototype.addFile):
2072         (WebInspector.SimpleProjectDelegate.prototype._uniquePath):
2073         (WebInspector.SimpleProjectDelegate.prototype.removeFile):
2074         (WebInspector.SimpleProjectDelegate.prototype.reset):
2075         (WebInspector.SimpleWorkspaceProvider):
2076         (WebInspector.SimpleWorkspaceProvider.uriForURL):
2077         (WebInspector.SimpleWorkspaceProvider.prototype.addFileForURL):
2078         (WebInspector.SimpleWorkspaceProvider.prototype.addUniqueFileForURL):
2079         (WebInspector.SimpleWorkspaceProvider.prototype._innerAddFileForURL):
2080         (WebInspector.SimpleWorkspaceProvider.prototype.removeFile):
2081         (WebInspector.SimpleWorkspaceProvider.prototype.reset):
2082         * inspector/front-end/UISourceCode.js:
2083         (WebInspector.UISourceCode):
2084         (WebInspector.UISourceCode.prototype.path):
2085         (WebInspector.UISourceCode.prototype.uri):
2086         * inspector/front-end/WebKit.qrc:
2087         * inspector/front-end/Workspace.js:
2088         (WebInspector.FileDescriptor):
2089         (WebInspector.ProjectDelegate):
2090         (WebInspector.ProjectDelegate.prototype.id):
2091         (WebInspector.ProjectDelegate.prototype.displayName):
2092         (WebInspector.ProjectDelegate.prototype.requestFileContent):
2093         (WebInspector.ProjectDelegate.prototype.setFileContent):
2094         (WebInspector.ProjectDelegate.prototype.searchInFileContent):
2095         (WebInspector.Project):
2096         (WebInspector.Project.prototype.id):
2097         (WebInspector.Project.prototype.type):
2098         (WebInspector.Project.prototype.displayName):
2099         (WebInspector.Project.prototype.isServiceProject):
2100         (WebInspector.Project.prototype._fileAdded):
2101         (WebInspector.Project.prototype._fileRemoved):
2102         (WebInspector.Project.prototype._reset):
2103         (WebInspector.Project.prototype.uiSourceCode):
2104         (WebInspector.Project.prototype.uiSourceCodeForOriginURL):
2105         (WebInspector.Project.prototype.uiSourceCodeForURI):
2106         (WebInspector.Project.prototype.uiSourceCodes):
2107         (WebInspector.Project.prototype.requestFileContent):
2108         (WebInspector.Project.prototype.setFileContent):
2109         (WebInspector.Project.prototype.searchInFileContent):
2110         (WebInspector.Project.prototype.dispose):
2111         (WebInspector.Workspace.prototype.uiSourceCode):
2112         (WebInspector.Workspace.prototype.uiSourceCodeForURI):
2113         (WebInspector.Workspace.prototype.addProject):
2114         (WebInspector.Workspace.prototype.removeProject):
2115         (WebInspector.Workspace.prototype.project):
2116         (WebInspector.Workspace.prototype.uiSourceCodes):
2117         (WebInspector.Workspace.prototype.projectForUISourceCode):
2118         * inspector/front-end/inspector.html:
2119
2120 2013-02-11  Yury Semikhatsky  <yurys@chromium.org>
2121
2122         Web Inspector: fix closure compiler warnings in the profiler code
2123         https://bugs.webkit.org/show_bug.cgi?id=109432
2124
2125         Reviewed by Pavel Feldman.
2126
2127         Updated type annotations to match the code.
2128
2129         * inspector/front-end/NativeMemorySnapshotView.js:
2130         * inspector/front-end/ProfilesPanel.js:
2131
2132 2013-02-11  Alexander Shalamov  <alexander.shalamov@intel.com>
2133
2134         [QT] Regression (r142444): Broke qt linux minimal build
2135         https://bugs.webkit.org/show_bug.cgi?id=109423
2136
2137         Reviewed by Kenneth Rohde Christiansen.
2138
2139         Test: cssom/cssvalue-comparison.html
2140
2141         * css/CSSValue.cpp:
2142         (WebCore::CSSValue::equals):
2143
2144 2013-02-11  Andrey Lushnikov  <lushnikov@chromium.org>
2145
2146         Web Inspector: introduce WebInspector.TextUtils
2147         https://bugs.webkit.org/show_bug.cgi?id=109289
2148
2149         Reviewed by Pavel Feldman.
2150
2151         Add new WebInspector.TextUtils file and extract commonly used
2152         text-operation subroutines from DefaultTextEditor into it.
2153
2154         No new tests: no change in behaviour.
2155
2156         * WebCore.gypi:
2157         * WebCore.vcproj/WebCore.vcproj:
2158         * inspector/compile-front-end.py:
2159         * inspector/front-end/DefaultTextEditor.js:
2160         (WebInspector.TextEditorMainPanel.TokenHighlighter.prototype._isWord):
2161         (WebInspector.DefaultTextEditor.WordMovementController.prototype._rangeForCtrlArrowMove):
2162         (WebInspector.TextEditorMainPanel.BraceHighlightController.prototype.handleSelectionChange):
2163         * inspector/front-end/TextUtils.js: Added.
2164         (WebInspector.TextUtils.isStopChar):
2165         (WebInspector.TextUtils.isWordChar):
2166         (WebInspector.TextUtils.isSpaceChar):
2167         (WebInspector.TextUtils.isWord):
2168         (WebInspector.TextUtils.isBraceChar):
2169         * inspector/front-end/WebKit.qrc:
2170         * inspector/front-end/inspector.html:
2171
2172 2013-02-11  Zan Dobersek  <zdobersek@igalia.com>
2173
2174         [GTK][Clang] Build errors in LocalizedStringsGtk.cpp
2175         https://bugs.webkit.org/show_bug.cgi?id=109418
2176
2177         Reviewed by Philippe Normand.
2178
2179         Use the C++ isfinite(float) and abs(float) (instead of fabsf(float))
2180         methods by including the WTF MathExtras.h header. Use a static cast to
2181         an integer type on the float return value of the abs(float) method call
2182         instead of the C-style cast.
2183
2184         No new tests - no new functiolnality.
2185
2186         * platform/gtk/LocalizedStringsGtk.cpp:
2187         (WebCore::localizedMediaTimeDescription):
2188
2189 2013-02-11  Zan Dobersek  <zdobersek@igalia.com>
2190
2191         Unreviewed build fix for the WTFURL backend of KURL.
2192
2193         * platform/KURL.cpp:
2194         (WebCore::KURL::isSafeToSendToAnotherThread): m_urlImpl is of RefPtr type so use
2195         the appropriate operator on it when calling the isSafeToSendToAnotherThread method.
2196
2197 2013-02-11  Mike West  <mkwst@chromium.org>
2198
2199         Range::collapsed callers should explicitly ASSERT_NO_EXCEPTION.
2200         https://bugs.webkit.org/show_bug.cgi?id=108921
2201
2202         Reviewed by Jochen Eisinger.
2203
2204         For clarity and consistency, this patch adjusts Range::collapsed() to
2205         drop the default value of the ExceptionCode parameter it accepts. The
2206         three call sites that called the method with no arguments (all part of
2207         Editor::rangeOfString) will now explicitly ASSERT_NO_EXCEPTION.
2208
2209         * dom/Range.h:
2210         (Range):
2211         * editing/Editor.cpp:
2212         (WebCore::Editor::rangeOfString):
2213
2214 2013-02-11  Alexei Filippov  <alph@chromium.org>
2215
2216         Web Inspector: Split Profiler domain in protocol into Profiler and HeapProfiler
2217         https://bugs.webkit.org/show_bug.cgi?id=108653
2218
2219         Reviewed by Yury Semikhatsky.
2220
2221         Currently CPU and heap profilers share the same domain 'Profiler' in the protocol.
2222         In fact these two profile types have not too much in common. So put each into its own domain.
2223         It should also help when Profiles panel gets split into several tools.
2224         This is the phase 1 which adds InspectorHeapProfilerAgent but doesn't
2225         change the original InspectorProfilerAgent.
2226
2227         * CMakeLists.txt:
2228         * GNUmakefile.list.am:
2229         * Target.pri:
2230         * WebCore.gypi:
2231         * WebCore.vcproj/WebCore.vcproj:
2232         * WebCore.vcxproj/WebCore.vcxproj:
2233         * WebCore.vcxproj/WebCore.vcxproj.filters:
2234         * WebCore.xcodeproj/project.pbxproj:
2235         * inspector/Inspector.json:
2236         * inspector/InspectorAllInOne.cpp:
2237         * inspector/InspectorController.cpp:
2238         (WebCore::InspectorController::InspectorController):
2239         * inspector/InspectorHeapProfilerAgent.cpp: Added.
2240         (WebCore):
2241         (WebCore::InspectorHeapProfilerAgent::create):
2242         (WebCore::InspectorHeapProfilerAgent::InspectorHeapProfilerAgent):
2243         (WebCore::InspectorHeapProfilerAgent::~InspectorHeapProfilerAgent):
2244         (WebCore::InspectorHeapProfilerAgent::resetState):
2245         (WebCore::InspectorHeapProfilerAgent::resetFrontendProfiles):
2246         (WebCore::InspectorHeapProfilerAgent::setFrontend):
2247         (WebCore::InspectorHeapProfilerAgent::clearFrontend):
2248         (WebCore::InspectorHeapProfilerAgent::restore):
2249         (WebCore::InspectorHeapProfilerAgent::collectGarbage):
2250         (WebCore::InspectorHeapProfilerAgent::createSnapshotHeader):
2251         (WebCore::InspectorHeapProfilerAgent::hasHeapProfiler):
2252         (WebCore::InspectorHeapProfilerAgent::getProfileHeaders):
2253         (WebCore::InspectorHeapProfilerAgent::getHeapSnapshot):
2254         (WebCore::InspectorHeapProfilerAgent::removeProfile):
2255         (WebCore::InspectorHeapProfilerAgent::takeHeapSnapshot):
2256         (WebCore::InspectorHeapProfilerAgent::getObjectByHeapObjectId):
2257         (WebCore::InspectorHeapProfilerAgent::getHeapObjectId):
2258         (WebCore::InspectorHeapProfilerAgent::reportMemoryUsage):
2259         * inspector/InspectorHeapProfilerAgent.h: Added.
2260         (WebCore):
2261         (InspectorHeapProfilerAgent):
2262         (WebCore::InspectorHeapProfilerAgent::clearProfiles):
2263         * inspector/InspectorInstrumentation.cpp:
2264         (WebCore):
2265         (WebCore::InspectorInstrumentation::didCommitLoadImpl):
2266         * inspector/InstrumentingAgents.h:
2267         (WebCore):
2268         (InstrumentingAgents):
2269         (WebCore::InstrumentingAgents::inspectorHeapProfilerAgent):
2270         (WebCore::InstrumentingAgents::setInspectorHeapProfilerAgent):
2271         * inspector/WorkerInspectorController.cpp:
2272         (WebCore::WorkerInspectorController::WorkerInspectorController):
2273         * inspector/front-end/HeapSnapshotDataGrids.js:
2274         * inspector/front-end/HeapSnapshotGridNodes.js:
2275         (WebInspector.HeapSnapshotGenericObjectNode.prototype.queryObjectContent):
2276         * inspector/front-end/HeapSnapshotView.js:
2277         (WebInspector.HeapProfileHeader.prototype.startSnapshotTransfer):
2278         (WebInspector.HeapProfileHeader.prototype.saveToFile.onOpen):
2279         (WebInspector.HeapProfileHeader.prototype.saveToFile):
2280         * inspector/front-end/ProfilesPanel.js:
2281         (WebInspector.ProfilesPanel):
2282         (WebInspector.ProfilesPanel.prototype._clearProfiles):
2283         (WebInspector.ProfilesPanel.prototype._garbageCollectButtonClicked):
2284         (WebInspector.ProfilesPanel.prototype._removeProfileHeader):
2285         (WebInspector.ProfilesPanel.prototype._populateProfiles.var):
2286         (WebInspector.ProfilesPanel.prototype._populateProfiles.populateCallback):
2287         (WebInspector.ProfilesPanel.prototype._populateProfiles):
2288         (WebInspector.ProfilesPanel.prototype.takeHeapSnapshot):
2289         (WebInspector.ProfilesPanel.prototype.revealInView):
2290         (WebInspector.HeapProfilerDispatcher):
2291         (WebInspector.HeapProfilerDispatcher.prototype.addProfileHeader):
2292         (WebInspector.HeapProfilerDispatcher.prototype.addHeapSnapshotChunk):
2293         (WebInspector.HeapProfilerDispatcher.prototype.finishHeapSnapshot):
2294         (WebInspector.HeapProfilerDispatcher.prototype.resetProfiles):
2295         (WebInspector.HeapProfilerDispatcher.prototype.reportHeapSnapshotProgress):
2296         * inspector/front-end/TimelinePanel.js:
2297         (WebInspector.TimelinePanel.prototype._garbageCollectButtonClicked):
2298         * inspector/front-end/inspector.js:
2299         (WebInspector.doLoadedDone):
2300
2301 2013-02-11  Mike West  <mkwst@chromium.org>
2302
2303         Use IGNORE_EXCEPTION for Editor::countMatchesForText's ignored exceptions.
2304         https://bugs.webkit.org/show_bug.cgi?id=109372
2305
2306         Reviewed by Jochen Eisinger.
2307
2308         Rather than implicitly ignoring exceptions, we should use the
2309         IGNORE_EXCEPTION macro for clarity.
2310
2311         * editing/Editor.cpp:
2312         (WebCore::Editor::countMatchesForText):
2313
2314 2013-02-11  Zoltan Arvai  <zarvai@inf.u-szeged.hu>
2315
2316         [Qt] Unreviewed. Fix minimal build after r142444.
2317
2318         * css/CSSValue.cpp:
2319         (WebCore::CSSValue::equals):
2320
2321 2013-02-11  Christophe Dumez  <ch.dumez@sisa.samsung.com>
2322
2323         [EFL] Stop using smart pointers for Ecore_Timer
2324         https://bugs.webkit.org/show_bug.cgi?id=109409
2325
2326         Reviewed by Kenneth Rohde Christiansen.
2327
2328         Stop using a smart pointer for Ecore_Timer in RunLoop::TimerBase. This
2329         is a bad idea because the timer handle becomes invalid as soon as the
2330         timer callback returns ECORE_CALLBACK_CANCEL. This may lead to crashes
2331         on destruction because OwnPtr calls ecore_timer_del() on an invalid
2332         handle.
2333
2334         No new tests, already covered by exiting tests.
2335
2336         * platform/RunLoop.h:
2337         (TimerBase):
2338         * platform/efl/RunLoopEfl.cpp:
2339         (WebCore::RunLoop::TimerBase::timerFired):
2340         (WebCore::RunLoop::TimerBase::start):
2341         (WebCore::RunLoop::TimerBase::stop):
2342
2343 2013-02-11  Vladislav Kaznacheev  <kaznacheev@chromium.org>
2344
2345         Web Inspector: Allow SplitView to keep the sidebar size as a fraction of the container size
2346         https://bugs.webkit.org/show_bug.cgi?id=109414
2347
2348         Reviewed by Vsevolod Vlasov.
2349
2350         SplitView now interprets defaultSidebarWidth and defaultSidebarHeight values between 0 and 1 as
2351         fractions of the total container size. The sidebar then will grow or shrink along with the container.
2352         When the sidebar is resized manually the updated ratio is stored in the settings.
2353
2354         * inspector/front-end/SplitView.js:
2355         (WebInspector.SplitView):
2356         (WebInspector.SplitView.prototype._removeAllLayoutProperties):
2357         (WebInspector.SplitView.prototype._updateTotalSize):
2358         (WebInspector.SplitView.prototype._innerSetSidebarSize):
2359         (WebInspector.SplitView.prototype._saveSidebarSize):
2360
2361 2013-02-11  Pavel Feldman  <pfeldman@chromium.org>
2362
2363         Web Inspector: highlight DOM nodes on hover while debugging
2364         https://bugs.webkit.org/show_bug.cgi?id=109355
2365
2366         Reviewed by Vsevolod Vlasov.
2367
2368         Along with showing the popover, highlight the remote object as node.
2369
2370         * inspector/front-end/ObjectPopoverHelper.js:
2371         (WebInspector.ObjectPopoverHelper.prototype.):
2372         (WebInspector.ObjectPopoverHelper.prototype._showObjectPopover):
2373         (WebInspector.ObjectPopoverHelper.prototype._onHideObjectPopover):
2374
2375 2013-02-11  Andrey Lushnikov  <lushnikov@chromium.org>
2376
2377         Web Inspector: displaying whitespace characters is broken
2378         https://bugs.webkit.org/show_bug.cgi?id=109412
2379
2380         Reviewed by Vsevolod Vlasov.
2381
2382         Add "pointer-events: none" rule for pseudo-class "before", which
2383         maintains rendering of whitespace characters.
2384
2385         No new tests.
2386
2387         * inspector/front-end/inspectorSyntaxHighlight.css:
2388         (.webkit-whitespace::before):
2389
2390 2013-02-11  Alexander Pavlov  <apavlov@chromium.org>
2391
2392         Web Inspector: Implement position-based sourcemapping for stylesheets
2393         https://bugs.webkit.org/show_bug.cgi?id=109168
2394
2395         Reviewed by Vsevolod Vlasov.
2396
2397         This change introduces support for position-based source maps for CSS stylesheets.
2398         Sourcemaps and originating resources (sass, scss, etc.) are loaded synchronously
2399         upon the CSS UISourceCode addition. RangeBasedSourceMap is removed as it is not used.
2400
2401         Test: http/tests/inspector/stylesheet-source-mapping.html
2402
2403         * inspector/front-end/CSSStyleModel.js:
2404         (WebInspector.CSSStyleModel):
2405         (WebInspector.CSSStyleModel.prototype.setSourceMapping):
2406         (WebInspector.CSSStyleModel.prototype.rawLocationToUILocation):
2407         (WebInspector.CSSStyleModel.LiveLocation.prototype.uiLocation):
2408         (WebInspector.CSSLocation):
2409         (WebInspector.CSSProperty):
2410         (WebInspector.CSSProperty.parsePayload):
2411         * inspector/front-end/CompilerScriptMapping.js:
2412         (WebInspector.CompilerScriptMapping):
2413         (WebInspector.CompilerScriptMapping.prototype.rawLocationToUILocation):
2414         (WebInspector.CompilerScriptMapping.prototype.loadSourceMapForScript):
2415         * inspector/front-end/SASSSourceMapping.js:
2416         (WebInspector.SASSSourceMapping):
2417         (WebInspector.SASSSourceMapping.prototype._styleSheetChanged.callback):
2418         (WebInspector.SASSSourceMapping.prototype._styleSheetChanged):
2419         (WebInspector.SASSSourceMapping.prototype._reloadCSS):
2420         (WebInspector.SASSSourceMapping.prototype._resourceAdded.didRequestContent):
2421         (WebInspector.SASSSourceMapping.prototype._resourceAdded):
2422         (WebInspector.SASSSourceMapping.prototype._loadAndProcessSourceMap):
2423         (WebInspector.SASSSourceMapping.prototype.loadSourceMapForStyleSheet):
2424         (WebInspector.SASSSourceMapping.prototype._bindUISourceCode):
2425         (WebInspector.SASSSourceMapping.prototype.rawLocationToUILocation):
2426         (WebInspector.SASSSourceMapping.prototype.uiLocationToRawLocation):
2427         (WebInspector.SASSSourceMapping.prototype._reset):
2428         * inspector/front-end/SourceMap.js:
2429         (WebInspector.SourceMap):
2430         (WebInspector.SourceMap.load):
2431         (WebInspector.SourceMap.prototype.findEntry):
2432         (WebInspector.SourceMap.prototype.findEntryReversed):
2433         (WebInspector.SourceMap.prototype._parseMap):
2434         * inspector/front-end/StylesSourceMapping.js:
2435         (WebInspector.StylesSourceMapping):
2436         (WebInspector.StylesSourceMapping.prototype._bindUISourceCode):
2437         * inspector/front-end/inspector.js:
2438
2439 2013-02-11  Alexander Shalamov  <alexander.shalamov@intel.com>
2440
2441         Implement CSSValue::equals(const CSSValue&) to optimise CSSValue comparison
2442         https://bugs.webkit.org/show_bug.cgi?id=102901
2443
2444         Reviewed by Antti Koivisto.
2445
2446         Added comparison method to CSSValue and its children, so that the
2447         css values could be compared efficiently. Before this patch, CSSValue
2448         objects were compared using strings that were generated by the cssText() method.
2449
2450         Test: cssom/cssvalue-comparison.html
2451
2452         * css/CSSAspectRatioValue.cpp:
2453         (WebCore::CSSAspectRatioValue::equals):
2454         (WebCore):
2455         * css/CSSAspectRatioValue.h:
2456         (CSSAspectRatioValue):
2457         * css/CSSBasicShapes.cpp:
2458         (WebCore::CSSBasicShapeRectangle::equals):
2459         (WebCore):
2460         (WebCore::CSSBasicShapeCircle::equals):
2461         (WebCore::CSSBasicShapeEllipse::equals):
2462         (WebCore::CSSBasicShapePolygon::equals):
2463         * css/CSSBasicShapes.h:
2464         (CSSBasicShapeRectangle):
2465         (CSSBasicShapeCircle):
2466         (CSSBasicShapeEllipse):
2467         (CSSBasicShapePolygon):
2468         * css/CSSBorderImageSliceValue.cpp:
2469         (WebCore::CSSBorderImageSliceValue::equals):
2470         (WebCore):
2471         * css/CSSBorderImageSliceValue.h:
2472         (CSSBorderImageSliceValue):
2473         * css/CSSCalculationValue.cpp:
2474         (WebCore::CSSCalcValue::equals):
2475         (WebCore):
2476         (WebCore::CSSCalcPrimitiveValue::equals):
2477         (CSSCalcPrimitiveValue):
2478         (WebCore::CSSCalcPrimitiveValue::type):
2479         (WebCore::CSSCalcBinaryOperation::equals):
2480         (CSSCalcBinaryOperation):
2481         (WebCore::CSSCalcBinaryOperation::type):
2482         * css/CSSCalculationValue.h:
2483         (WebCore::CSSCalcExpressionNode::equals):
2484         (CSSCalcExpressionNode):
2485         (CSSCalcValue):
2486         * css/CSSCanvasValue.cpp:
2487         (WebCore::CSSCanvasValue::equals):
2488         (WebCore):
2489         * css/CSSCanvasValue.h:
2490         (CSSCanvasValue):
2491         * css/CSSComputedStyleDeclaration.cpp:
2492         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
2493         (WebCore::CSSComputedStyleDeclaration::cssPropertyMatches):
2494         (WebCore::CSSComputedStyleDeclaration::getCSSPropertyValuesForSidesShorthand):
2495         * css/CSSCrossfadeValue.cpp:
2496         (WebCore::CSSCrossfadeValue::equals):
2497         (WebCore):
2498         * css/CSSCrossfadeValue.h:
2499         (CSSCrossfadeValue):
2500         * css/CSSCursorImageValue.cpp:
2501         (WebCore::CSSCursorImageValue::equals):
2502         (WebCore):
2503         * css/CSSCursorImageValue.h:
2504         (CSSCursorImageValue):
2505         * css/CSSFontFaceSrcValue.cpp:
2506         (WebCore::CSSFontFaceSrcValue::equals):
2507         (WebCore):
2508         * css/CSSFontFaceSrcValue.h:
2509         (CSSFontFaceSrcValue):
2510         * css/CSSFunctionValue.cpp:
2511         (WebCore::CSSFunctionValue::equals):
2512         (WebCore):
2513         * css/CSSFunctionValue.h:
2514         (CSSFunctionValue):
2515         * css/CSSGradientValue.cpp:
2516         (WebCore::CSSLinearGradientValue::equals):
2517         (WebCore):
2518         (WebCore::CSSRadialGradientValue::equals):
2519         * css/CSSGradientValue.h:
2520         (WebCore::CSSGradientColorStop::operator==):
2521         (CSSLinearGradientValue):
2522         (CSSRadialGradientValue):
2523         * css/CSSImageValue.cpp:
2524         (WebCore::CSSImageValue::equals):
2525         (WebCore):
2526         * css/CSSImageValue.h:
2527         (CSSImageValue):
2528         * css/CSSInheritedValue.h:
2529         (WebCore::CSSInheritedValue::equals):
2530         (CSSInheritedValue):
2531         * css/CSSInitialValue.h:
2532         (WebCore::CSSInitialValue::equals):
2533         (CSSInitialValue):
2534         * css/CSSLineBoxContainValue.h:
2535         (WebCore::CSSLineBoxContainValue::equals):
2536         * css/CSSPrimitiveValue.cpp:
2537         (WebCore::CSSPrimitiveValue::equals):
2538         (WebCore):
2539         * css/CSSPrimitiveValue.h:
2540         (CSSPrimitiveValue):
2541         * css/CSSReflectValue.cpp:
2542         (WebCore::CSSReflectValue::equals):
2543         (WebCore):
2544         * css/CSSReflectValue.h:
2545         (CSSReflectValue):
2546         * css/CSSTimingFunctionValue.cpp:
2547         (WebCore::CSSCubicBezierTimingFunctionValue::equals):
2548         (WebCore):
2549         (WebCore::CSSStepsTimingFunctionValue::equals):
2550         * css/CSSTimingFunctionValue.h:
2551         (WebCore::CSSLinearTimingFunctionValue::equals):
2552         (CSSLinearTimingFunctionValue):
2553         (CSSCubicBezierTimingFunctionValue):
2554         (CSSStepsTimingFunctionValue):
2555         * css/CSSUnicodeRangeValue.cpp:
2556         (WebCore::CSSUnicodeRangeValue::equals):
2557         (WebCore):
2558         * css/CSSUnicodeRangeValue.h:
2559         (CSSUnicodeRangeValue):
2560         * css/CSSValue.cpp:
2561         (WebCore):
2562         (WebCore::compareCSSValues):
2563         (WebCore::CSSValue::equals):
2564         * css/CSSValue.h:
2565         (CSSValue):
2566         (WebCore):
2567         (WebCore::compareCSSValueVector):
2568         (WebCore::compareCSSValuePtr):
2569         * css/CSSValueList.cpp:
2570         (WebCore::CSSValueList::removeAll):
2571         (WebCore::CSSValueList::hasValue):
2572         (WebCore::CSSValueList::equals):
2573         (WebCore):
2574         * css/CSSValueList.h:
2575         (CSSValueList):
2576         * css/CSSVariableValue.h:
2577         (WebCore::CSSVariableValue::equals):
2578         (CSSVariableValue):
2579         * css/Counter.h:
2580         (Counter):
2581         (WebCore::Counter::equals):
2582         * css/DashboardRegion.h:
2583         (WebCore::DashboardRegion::equals):
2584         * css/FontFeatureValue.cpp:
2585         (WebCore::FontFeatureValue::equals):
2586         (WebCore):
2587         * css/FontFeatureValue.h:
2588         (FontFeatureValue):
2589         * css/FontValue.cpp:
2590         (WebCore::FontValue::equals):
2591         (WebCore):
2592         * css/FontValue.h:
2593         (FontValue):
2594         * css/MediaQueryExp.h:
2595         (WebCore::MediaQueryExp::operator==):
2596         * css/Pair.h:
2597         (WebCore::Pair::equals):
2598         (Pair):
2599         * css/Rect.h:
2600         (WebCore::RectBase::equals):
2601         (RectBase):
2602         * css/ShadowValue.cpp:
2603         (WebCore::ShadowValue::equals):
2604         (WebCore):
2605         * css/ShadowValue.h:
2606         (ShadowValue):
2607         * css/StylePropertySet.cpp:
2608         (WebCore::StylePropertySet::get4Values):
2609         (WebCore::StylePropertySet::propertyMatches):
2610         * css/WebKitCSSArrayFunctionValue.cpp:
2611         (WebCore::WebKitCSSArrayFunctionValue::equals):
2612         (WebCore):
2613         * css/WebKitCSSArrayFunctionValue.h:
2614         (WebKitCSSArrayFunctionValue):
2615         * css/WebKitCSSFilterValue.cpp:
2616         (WebCore::WebKitCSSFilterValue::equals):
2617         (WebCore):
2618         * css/WebKitCSSFilterValue.h:
2619         (WebKitCSSFilterValue):
2620         * css/WebKitCSSMixFunctionValue.cpp:
2621         (WebCore::WebKitCSSMixFunctionValue::equals):
2622         (WebCore):
2623         * css/WebKitCSSMixFunctionValue.h:
2624         (WebKitCSSMixFunctionValue):
2625         * css/WebKitCSSSVGDocumentValue.cpp:
2626         (WebCore::WebKitCSSSVGDocumentValue::equals):
2627         (WebCore):
2628         * css/WebKitCSSSVGDocumentValue.h:
2629         (WebKitCSSSVGDocumentValue):
2630         * css/WebKitCSSShaderValue.cpp:
2631         (WebCore::WebKitCSSShaderValue::equals):
2632         (WebCore):
2633         * css/WebKitCSSShaderValue.h:
2634         (WebKitCSSShaderValue):
2635         * css/WebKitCSSTransformValue.h:
2636         (WebCore::WebKitCSSTransformValue::equals):
2637         * editing/EditingStyle.cpp:
2638         (WebCore::HTMLAttributeEquivalent::valueIsPresentInStyle):
2639         * svg/SVGColor.cpp:
2640         (WebCore::SVGColor::equals):
2641         (WebCore):
2642         * svg/SVGColor.h:
2643         (SVGColor):
2644         * svg/SVGPaint.cpp:
2645         (WebCore::SVGPaint::equals):
2646         (WebCore):
2647         * svg/SVGPaint.h:
2648         (SVGPaint):
2649
2650 2013-02-11  Pan Deng  <pan.deng@intel.com>
2651
2652         [Web Inspector] Network panel, sort by "transferSize" instead of "resourceSize".
2653         https://bugs.webkit.org/show_bug.cgi?id=109142.
2654
2655         Reviewed by Vsevolod Vlasov.
2656
2657         Sort by "transferSize" as it is the primary rather than "resoureSize".
2658
2659         No new tests.
2660
2661         * inspector/front-end/NetworkPanel.js:
2662         (WebInspector.NetworkDataGridNode.SizeComparator):
2663
2664 2013-02-11  Eugene Klyuchnikov  <eustas@chromium.org>
2665
2666         Web Inspector: [Resources] Prefactorings in DataGrid and CookieTable
2667         https://bugs.webkit.org/show_bug.cgi?id=109141
2668
2669         Reviewed by Vsevolod Vlasov.
2670
2671         1) Make deleteCookie method static and move to WebInspector.Cookie
2672         2) Replace resfreshCallback getter/setter in DataGrid with
2673         constructor parameter
2674
2675         * inspector/front-end/CookieItemsView.js: Adopt changes.
2676         * inspector/front-end/CookieParser.js:
2677         (WebInspector.Cookie.prototype.remove): Moved from CookiesTable.
2678         * inspector/front-end/CookiesTable.js: Adopt changes.
2679         * inspector/front-end/DataGrid.js:
2680         Replace setter with constructor parameter.
2681
2682 2013-02-11  John J. Barton  <johnjbarton@chromium.org>
2683
2684         Web Inspector: Don't throw exceptions in WebInspector.Color
2685         https://bugs.webkit.org/show_bug.cgi?id=104835
2686
2687         Reviewed by Vsevolod Vlasov.
2688
2689         WebInspector.Color.parse() returns a Color from a string, or null;
2690         Ctor calls now call parse();
2691         In the StylesSideBarPane, test null rather than catch(e).
2692
2693         Added case to inspector/styles/styles-invalid-color-values.html
2694
2695         * inspector/front-end/Color.js:
2696         (WebInspector.Color):
2697         (WebInspector.Color.parse):
2698         (WebInspector.Color.fromRGBA):
2699         (WebInspector.Color.fromRGB):
2700         (WebInspector.Color.prototype.toString):
2701         (WebInspector.Color.prototype._parse.this.alpha.set 0):
2702         (WebInspector.Color.prototype._parse.this.nickname.set 2):
2703         (WebInspector.Color.prototype._parse.this.hsla.set 1):
2704         (WebInspector.Color.prototype._parse.this.rgba.set 0):
2705         (WebInspector.Color.prototype._parse.set WebInspector):
2706         (WebInspector.Color.prototype._parse):
2707         * inspector/front-end/Spectrum.js:
2708         (WebInspector.Spectrum.prototype.get color):
2709         * inspector/front-end/StylesSidebarPane.js:
2710
2711 2013-02-11  Andrey Lushnikov  <lushnikov@chromium.org>
2712
2713         Web Inspector: home button behaviour is wrong in DTE
2714         https://bugs.webkit.org/show_bug.cgi?id=109154
2715
2716         Reviewed by Vsevolod Vlasov.
2717
2718         Handle home key shortcut explicitly in TextEditorMainPanel.
2719
2720         New test: inspector/editor/text-editor-home-button.html
2721
2722         * inspector/front-end/DefaultTextEditor.js:
2723         (WebInspector.TextEditorMainPanel.prototype._registerShortcuts):
2724         (WebInspector.TextEditorMainPanel.prototype._handleHomeKey):
2725
2726 2013-02-11  Abhishek Arya  <inferno@chromium.org>
2727
2728         Add ASSERT_WITH_SECURITY_IMPLICATION to detect out of bounds access
2729         https://bugs.webkit.org/show_bug.cgi?id=108981
2730
2731         Reviewed by Eric Seidel.
2732
2733         * Modules/mediastream/RTCStatsResponse.cpp:
2734         (WebCore::RTCStatsResponse::addElement):
2735         (WebCore::RTCStatsResponse::addStatistic):
2736         * Modules/websockets/WebSocketChannel.cpp:
2737         (WebCore::WebSocketChannel::skipBuffer):
2738         * css/CSSCalculationValue.cpp:
2739         (WebCore::CSSCalcExpressionNodeParser::parseValueMultiplicativeExpression):
2740         (WebCore::CSSCalcExpressionNodeParser::parseAdditiveValueExpression):
2741         * css/WebKitCSSTransformValue.cpp:
2742         (WebCore::transformValueToCssString):
2743         * editing/TextIterator.cpp:
2744         (WebCore::SearchBuffer::search):
2745         * html/HTMLElement.cpp:
2746         (WebCore::parseColorStringWithCrazyLegacyRules):
2747         * html/ImageData.cpp:
2748         (WebCore::ImageData::ImageData):
2749         * html/shadow/DateTimeSymbolicFieldElement.cpp:
2750         (WebCore::DateTimeSymbolicFieldElement::DateTimeSymbolicFieldElement):
2751         * html/track/TextTrackCueList.cpp:
2752         (WebCore::TextTrackCueList::add):
2753         * platform/SharedBuffer.cpp:
2754         (WebCore::SharedBuffer::getSomeData):
2755         * platform/SharedBufferChunkReader.cpp:
2756         (WebCore::SharedBufferChunkReader::nextChunk):
2757         * platform/audio/HRTFDatabase.cpp:
2758         (WebCore::HRTFDatabase::getKernelsFromAzimuthElevation):
2759         * platform/graphics/GlyphPageTreeNode.cpp:
2760         (WebCore::GlyphPageTreeNode::initializePage):
2761         * platform/graphics/Region.cpp:
2762         (WebCore::Region::Shape::segments_end):
2763         * platform/graphics/filters/FEComponentTransfer.cpp:
2764         (WebCore::FEComponentTransfer::getValues):
2765         * platform/graphics/filters/FilterEffect.cpp:
2766         (WebCore::FilterEffect::inputEffect):
2767         * platform/text/TextCodecUTF8.cpp:
2768         (WebCore::TextCodecUTF8::decode):
2769         * platform/text/mac/TextCodecMac.cpp:
2770         (WebCore::TextCodecMac::decode):
2771         * rendering/RenderBlockLineLayout.cpp:
2772         (WebCore::RenderBlock::checkFloatsInCleanLine):
2773         * svg/SVGAnimatedTypeAnimator.h:
2774         (WebCore::SVGAnimatedTypeAnimator::executeAction):
2775         * svg/SVGAnimationElement.cpp:
2776         (WebCore::SVGAnimationElement::calculatePercentForSpline):
2777         * svg/animation/SVGSMILElement.cpp:
2778         (WebCore::SVGSMILElement::findInstanceTime):
2779
2780 2013-02-10  Chris Fleizach  <cfleizach@apple.com>
2781
2782         WebSpeech: Implement basic speaking/finished speaking behavior
2783         https://bugs.webkit.org/show_bug.cgi?id=107135
2784
2785         Reviewed by Sam Weinig.
2786
2787         Implements the basic functionality of speaking utterances.
2788
2789         In the WebCore side, it manages the speech queue the way the spec defines
2790         (that is, new jobs are appended to a queue and wait for other jobs to finish).
2791
2792         On the Mac side, it instantiates a synthesizer and handles the callbacks for when
2793         jobs are finished. It sends those jobs back to WebCore to dispatch the right events.
2794
2795         Test: platform/mac/fast/speechsynthesis/speech-synthesis-speak.html
2796
2797         * Modules/speech/SpeechSynthesis.cpp:
2798         (WebCore::SpeechSynthesis::SpeechSynthesis):
2799         (WebCore::SpeechSynthesis::paused):
2800         (WebCore::SpeechSynthesis::startSpeakingImmediately):
2801         (WebCore::SpeechSynthesis::speak):
2802         (WebCore):
2803         (WebCore::SpeechSynthesis::fireEvent):
2804         (WebCore::SpeechSynthesis::handleSpeakingCompleted):
2805         (WebCore::SpeechSynthesis::didStartSpeaking):
2806         (WebCore::SpeechSynthesis::didFinishSpeaking):
2807         (WebCore::SpeechSynthesis::speakingErrorOccurred):
2808         * Modules/speech/SpeechSynthesis.h:
2809         (WebCore):
2810         (WebCore::SpeechSynthesis::speaking):
2811         (SpeechSynthesis):
2812         * Modules/speech/SpeechSynthesisEvent.cpp:
2813         (WebCore::SpeechSynthesisEvent::create):
2814         (WebCore):
2815         (WebCore::SpeechSynthesisEvent::SpeechSynthesisEvent):
2816         * Modules/speech/SpeechSynthesisEvent.h:
2817         (SpeechSynthesisEvent):
2818         (WebCore::SpeechSynthesisEvent::interfaceName):
2819         * Modules/speech/SpeechSynthesisUtterance.h:
2820         (WebCore::SpeechSynthesisUtterance::startTime):
2821         (WebCore::SpeechSynthesisUtterance::setStartTime):
2822         (SpeechSynthesisUtterance):
2823         * platform/PlatformSpeechSynthesisUtterance.cpp:
2824         (WebCore::PlatformSpeechSynthesisUtterance::PlatformSpeechSynthesisUtterance):
2825         * platform/PlatformSpeechSynthesisUtterance.h:
2826         (PlatformSpeechSynthesisUtterance):
2827         (WebCore::PlatformSpeechSynthesisUtterance::setVolume):
2828         (WebCore::PlatformSpeechSynthesisUtterance::setRate):
2829         (WebCore::PlatformSpeechSynthesisUtterance::setPitch):
2830         (WebCore::PlatformSpeechSynthesisUtterance::startTime):
2831         (WebCore::PlatformSpeechSynthesisUtterance::setStartTime):
2832         (WebCore::PlatformSpeechSynthesisUtterance::client):
2833         * platform/PlatformSpeechSynthesizer.cpp:
2834         (WebCore::PlatformSpeechSynthesizer::PlatformSpeechSynthesizer):
2835         * platform/PlatformSpeechSynthesizer.h:
2836         (PlatformSpeechSynthesizerClient):
2837         (WebCore::PlatformSpeechSynthesizer::client):
2838         (PlatformSpeechSynthesizer):
2839         * platform/mac/PlatformSpeechSynthesizerMac.mm:
2840         (-[WebSpeechSynthesisWrapper initWithSpeechSynthesizer:WebCore::]):
2841         (-[WebSpeechSynthesisWrapper dealloc]):
2842         (-[WebSpeechSynthesisWrapper convertRateToWPM:]):
2843         (-[WebSpeechSynthesisWrapper speakUtterance:WebCore::]):
2844         (-[WebSpeechSynthesisWrapper speechSynthesizer:didFinishSpeaking:]):
2845         (WebCore::PlatformSpeechSynthesizer::speak):
2846
2847 2013-02-10  Eric Seidel  <eric@webkit.org>
2848
2849         Make the existing HTMLPreloadScanner threading-aware
2850         https://bugs.webkit.org/show_bug.cgi?id=107807
2851
2852         Reviewed by Adam Barth.
2853
2854         The HTMLPreloadScanner and CSSPreloadScanner do a number of things.
2855         CSSPreloadScanner is mostly just a helper class for HTMLPreloadScanner.
2856         HTMLPreloadScanner runs its own copy of the HTMLTokenizer and uses
2857         HTMLTokenizer::updateStateFor to emulate enough of the TreeBuilder
2858         to get a realistic stream of tokens.  It does some additional TreeBuilder
2859         emulation, including tracking template tags and base tags, but mostly
2860         just scans the token stream for start-tags and looks for URLs in them.
2861         It tracks when it has seen a <style> tag and starts sending all character tokens
2862         to the CSSPreloadScanner until a </style> tag is seen.
2863         It also (unfortunately) knows some about the loader guts and how to construct
2864         a proper CachedResourcRequest and issue a preload.
2865
2866         This patch changes the model so that the preload scanners only know how to produce
2867         PreloadRequest objects and append them to a passed-in vector.
2868
2869         This changes the preload-scanner behavior so that preloads are now all issued in one large
2870         batch at the end of scanning, instead of as we hit each resource.  It's possible that
2871         we'll wait to instead check for preload requests more often, at a possible tradeoff
2872         to tokenizing speed.
2873
2874         An alternate approach might be to pass in a preload-delegate of sorts which knew how
2875         to either build a vector, or send requests immediately.  For now the build-a-vector-always
2876         approach seems clean, and does not seem to slow down our PerformanceTest microbenchmarks at least.
2877
2878         This patch has 2 main pieces:
2879         - Remove Document and (and loader) dependencies from HTMLPreloadScanner/CSSPreloadScanner
2880           This is done through introduction of a new HTMLResourcePreloader class which holds
2881           a Document* and knows how to talk to the CachedResourceLoader.
2882         - Clean-up HTMLPreloadScanners token-loop to not be tied to having a Tokenizer.
2883           (On a background thead, the HTMLPreloadScanner won't own the tokenizer, it will just
2884            be passed in tokens and expected to issue loads if necessary.)
2885
2886         This passes all of the LayoutTests using the main thread parser.
2887
2888         This patch does not make the HTMLPreloadScanner 100% ready for threading
2889         (it still uses AtomicString which is currently not-OK on the parser thread)
2890         but it's very close.  Two further (already written) patches will complete this.
2891
2892         * CMakeLists.txt:
2893         * GNUmakefile.list.am:
2894         * Target.pri:
2895         * WebCore.gypi:
2896         * WebCore.vcproj/WebCore.vcproj:
2897         * WebCore.vcxproj/WebCore.vcxproj:
2898         * WebCore.xcodeproj/project.pbxproj:
2899         * html/parser/CSSPreloadScanner.cpp:
2900         (WebCore::CSSPreloadScanner::CSSPreloadScanner):
2901         (WebCore::CSSPreloadScanner::scan):
2902         (WebCore::CSSPreloadScanner::emitRule):
2903         * html/parser/CSSPreloadScanner.h:
2904         (CSSPreloadScanner):
2905         * html/parser/HTMLDocumentParser.cpp:
2906         (WebCore::HTMLDocumentParser::HTMLDocumentParser):
2907         (WebCore::HTMLDocumentParser::pumpTokenizer):
2908         (WebCore::HTMLDocumentParser::insert):
2909         (WebCore::HTMLDocumentParser::append):
2910         (WebCore::HTMLDocumentParser::appendCurrentInputStreamToPreloadScannerAndScan):
2911         * html/parser/HTMLDocumentParser.h:
2912         (HTMLDocumentParser):
2913         * html/parser/HTMLPreloadScanner.cpp:
2914         (WebCore::isStartTag):
2915         (WebCore):
2916         (WebCore::isStartOrEndTag):
2917         (WebCore::PreloadTask::processAttributes):
2918         (WebCore::PreloadTask::charset):
2919         (PreloadTask):
2920         (WebCore::PreloadTask::resourceType):
2921         (WebCore::PreloadTask::shouldPreload):
2922         (WebCore::PreloadTask::createPreloadRequest):
2923         (WebCore::HTMLPreloadScanner::HTMLPreloadScanner):
2924         (WebCore::HTMLPreloadScanner::scan):
2925         (WebCore::HTMLPreloadScanner::processPossibleTemplateTag):
2926         (WebCore::HTMLPreloadScanner::processPossibleStyleTag):
2927         (WebCore::HTMLPreloadScanner::processPossibleBaseTag):
2928         (WebCore::HTMLPreloadScanner::processToken):
2929         * html/parser/HTMLPreloadScanner.h:
2930         (HTMLPreloadScanner):
2931         * html/parser/HTMLResourcePreloader.cpp: Added.
2932         (WebCore):
2933         (WebCore::isStringSafeToSendToAnotherThread):
2934         (WebCore::PreloadRequest::isSafeToSendToAnotherThread):
2935         (WebCore::PreloadRequest::completeURL):
2936         (WebCore::PreloadRequest::resourceRequest):
2937         (WebCore::HTMLResourcePreloader::preload):
2938         * html/parser/HTMLResourcePreloader.h: Added.
2939         (WebCore):
2940         (PreloadRequest):
2941         (WebCore::PreloadRequest::create):
2942         (WebCore::PreloadRequest::PreloadRequest):
2943         (HTMLResourcePreloader):
2944         (WebCore::HTMLResourcePreloader::HTMLResourcePreloader):
2945         (WebCore::HTMLResourcePreloader::createWeakPtr):
2946         * loader/cache/CachedResourceRequest.h:
2947
2948 2013-02-06  Kentaro Hara  <haraken@chromium.org>
2949
2950         [V8] Rename isolated() to getWorld(), rename worldForEnteredContextIfIsolated() to worldForEnteredContext()
2951         https://bugs.webkit.org/show_bug.cgi?id=109039
2952
2953         Reviewed by Adam Barth.
2954
2955         This is a follow-up patch for r141983.
2956         Rename methods for consistency.
2957
2958         No tests. No change in behavior.
2959
2960         * bindings/v8/DOMDataStore.cpp:
2961         (WebCore::DOMDataStore::current):
2962         * bindings/v8/DOMWrapperWorld.h:
2963         (WebCore::DOMWrapperWorld::getWorld):
2964         * bindings/v8/ScriptController.cpp:
2965         (WebCore::ScriptController::shouldBypassMainWorldContentSecurityPolicy):
2966         (WebCore::ScriptController::currentWorldContext):
2967         * bindings/v8/V8Binding.h:
2968         (WebCore::worldForEnteredContext):
2969         * bindings/v8/WorldContextHandle.cpp:
2970         (WebCore::WorldContextHandle::WorldContextHandle):
2971         * bindings/v8/custom/V8DocumentCustom.cpp:
2972         (WebCore::wrap):
2973         * bindings/v8/custom/V8HTMLDocumentCustom.cpp:
2974         (WebCore::wrap):
2975         * bindings/v8/custom/V8SVGDocumentCustom.cpp:
2976         (WebCore::wrap):
2977         * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
2978         (WebCore::V8XMLHttpRequest::constructorCallbackCustom):
2979
2980 2013-02-10  Alexandre Elias  <aelias@chromium.org>
2981
2982         [chromium] Fix Android scrollbar size
2983         https://bugs.webkit.org/show_bug.cgi?id=109374
2984
2985         Reviewed by James Robinson.
2986
2987         This shrinks scrollbars to 3 device-independent pixels (usually 6
2988         physical pixels) and deletes the edge fade. Although the Android
2989         system theme does have an edge fade, it's a much sharper cliff
2990         than we had (against black, the colors go 64 -> 64 -> 52 -> 21 -> 0)
2991         and I can't perceive any difference compared with no fade at all.
2992
2993         No new tests (due for rewrite in a week anyway).
2994
2995         * platform/chromium/ScrollbarThemeChromiumAndroid.cpp:
2996         (WebCore):
2997         (WebCore::ScrollbarThemeChromiumAndroid::paintThumb):
2998
2999 2013-02-04  Kentaro Hara  <haraken@chromium.org>
3000
3001         [V8] Remove V8GCController::m_edenNodes and make minor DOM GC more precise
3002         https://bugs.webkit.org/show_bug.cgi?id=108579
3003
3004         Reviewed by Adam Barth.
3005
3006         Currently V8GCController::m_edenNodes stores a list of nodes whose
3007         wrappers have been created since the latest GC. The reason why we
3008         needed m_edenNodes is that there was no way to know a list of wrappers
3009         in the new space of V8. By using m_edenNodes, we had been approximating
3010         'wrappers in the new space' by 'wrappers that have been created since
3011         the latest GC'.
3012
3013         Now V8 provides VisitHandlesForPartialDependence(), with which WebKit
3014         can know a list of wrappers in the new space. By using the API, we can
3015         remove V8GCController::m_edenNodes. The benefit is that (1) we no longer
3016         need to keep m_edenNodes and that (2) it enables more precise minor
3017         DOM GC (Remember that m_edenNodes was just an approximation).
3018
3019         Performance benchmark: https://bugs.webkit.org/attachment.cgi?id=185940
3020         The benchmark runs 300 iterations, each of which creates 100000 elements.
3021         The benchmark measures average, min, median, max and stdev of execution times
3022         of the 300 iterations. This will tell us the worst-case overhead of this change.
3023
3024         Before:
3025           mean=59.91ms, min=39ms, median=42ms, max=258ms, stdev=47.48ms
3026
3027         After:
3028           mean=58.75ms, min=35ms, median=41ms, max=250ms, stdev=47.32ms
3029
3030         As shown above, I couldn't observe any performance regression.
3031
3032         No tests. No change in behavior.
3033
3034         * bindings/v8/DOMDataStore.h:
3035         (WebCore::DOMDataStore::setWrapperInObject):
3036         * bindings/v8/DOMWrapperWorld.h:
3037         (DOMWrapperWorld):
3038         (WebCore::DOMWrapperWorld::getWorldWithoutContextCheck):
3039         * bindings/v8/V8Binding.h:
3040         (WebCore):
3041         (WebCore::worldForEnteredContextIfIsolated):
3042         (WebCore::worldForEnteredContextWithoutContextCheck):
3043         * bindings/v8/V8DOMWindowShell.cpp:
3044         (WebCore::V8DOMWindowShell::initializeIfNeeded):
3045         * bindings/v8/V8GCController.cpp:
3046         (WebCore::gcTree):
3047         (WebCore):
3048         (MinorGCWrapperVisitor):
3049         (WebCore::MinorGCWrapperVisitor::MinorGCWrapperVisitor):
3050         (WebCore::MinorGCWrapperVisitor::notifyFinished):
3051         (WebCore::MajorGCWrapperVisitor::MajorGCWrapperVisitor):
3052         (WebCore::V8GCController::gcPrologue):
3053         (WebCore::V8GCController::minorGCPrologue):
3054         (WebCore::V8GCController::majorGCPrologue):
3055         * bindings/v8/V8GCController.h:
3056         (V8GCController):
3057
3058 2013-02-10  Tim Horton  <timothy_horton@apple.com>
3059
3060         REGRESSION (r132422): Page content and scrollbars are incorrectly offset after restoring a page from the page cache
3061         https://bugs.webkit.org/show_bug.cgi?id=109317
3062         <rdar://problem/12649131>
3063
3064         Reviewed by Simon Fraser.
3065
3066         Mark all scrolling that occurs beneath FrameView::layout as programmatic.
3067
3068         Test: platform/mac-wk2/tiled-drawing/tiled-drawing-scroll-position-page-cache-restoration.html
3069
3070         * page/FrameView.cpp:
3071         (WebCore::FrameView::layout):
3072
3073 2013-02-10  Kent Tamura  <tkent@chromium.org>
3074
3075         [Mac] Fix release build failure by recent reverts
3076
3077         * WebCore.exp.in:
3078
3079 2013-02-10  Philippe Normand  <pnormand@igalia.com>
3080
3081         [GStreamer] media/video-controls-fullscreen-volume.html crashes
3082         https://bugs.webkit.org/show_bug.cgi?id=108682
3083
3084         Reviewed by Martin Robinson.
3085
3086         Clean up various signal handlers and avoid bad interaction between
3087         the FullscreenVideoControllerGStreamer and its subclasses,
3088         especially when the platform video window is created.
3089
3090         * platform/graphics/gstreamer/FullscreenVideoControllerGStreamer.cpp:
3091         (WebCore::FullscreenVideoControllerGStreamer::enterFullscreen):
3092         Initialize the window before connecting to the volume/mute
3093         signals. This ensures that the signals won't ever interfere with
3094         an inexisting window.
3095         * platform/graphics/gstreamer/GStreamerGWorld.cpp:
3096         (WebCore::GStreamerGWorld::~GStreamerGWorld): Remove GstBus
3097         synchronous handler function.
3098         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
3099         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
3100         (WebCore::MediaPlayerPrivateGStreamerBase::~MediaPlayerPrivateGStreamerBase):
3101         Disconnect from volume/mute signals.
3102         (WebCore::MediaPlayerPrivateGStreamerBase::setStreamVolumeElement):
3103         Keep a trace of volume/mute signal handlers.
3104         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h:
3105         Various forward type declarations to avoid un-necessary header includes.
3106         (MediaPlayerPrivateGStreamerBase):
3107         * platform/graphics/gtk/FullscreenVideoControllerGtk.cpp:
3108         (WebCore::FullscreenVideoControllerGtk::FullscreenVideoControllerGtk):
3109         (WebCore::FullscreenVideoControllerGtk::volumeChanged): Bail out
3110         if volume button hasn't been created yet.
3111         (WebCore::FullscreenVideoControllerGtk::muteChanged): Ditto.
3112
3113 2013-02-10  Andreas Kling  <akling@apple.com>
3114
3115         RenderStyle should use copy-on-write inheritance for NinePieceImage.
3116         <http://webkit.org/b/109366>
3117
3118         Reviewed by Antti Koivisto.
3119
3120         Refactor NinePieceImage to hold a copy-on-write DataRef like other RenderStyle substructures.
3121         This allows us to avoids copying the NinePieceImageData when one RenderStyle inherits from another
3122         but modifies something in the substructure holding the NinePieceImage (typically StyleSurroundData.)
3123
3124         Also made RenderStyle not copy-on-write its StyleSurroundData prematurely when doing a no-op write
3125         to a border-image related value.
3126
3127         1.23 MB progression on Membuster3.
3128
3129         * rendering/style/NinePieceImage.cpp:
3130         (WebCore::defaultData):
3131         (WebCore::NinePieceImage::NinePieceImage):
3132         (WebCore::NinePieceImageData::NinePieceImageData):
3133         (WebCore::NinePieceImageData::operator==):
3134         * rendering/style/NinePieceImage.h:
3135         (WebCore::NinePieceImageData::create):
3136         (WebCore::NinePieceImageData::copy):
3137         (NinePieceImageData):
3138         (NinePieceImage):
3139         (WebCore::NinePieceImage::operator==):
3140         (WebCore::NinePieceImage::operator!=):
3141         (WebCore::NinePieceImage::hasImage):
3142         (WebCore::NinePieceImage::image):
3143         (WebCore::NinePieceImage::setImage):
3144         (WebCore::NinePieceImage::imageSlices):
3145         (WebCore::NinePieceImage::setImageSlices):
3146         (WebCore::NinePieceImage::fill):
3147         (WebCore::NinePieceImage::setFill):
3148         (WebCore::NinePieceImage::borderSlices):
3149         (WebCore::NinePieceImage::setBorderSlices):
3150         (WebCore::NinePieceImage::outset):
3151         (WebCore::NinePieceImage::setOutset):
3152         (WebCore::NinePieceImage::horizontalRule):
3153         (WebCore::NinePieceImage::setHorizontalRule):
3154         (WebCore::NinePieceImage::verticalRule):
3155         (WebCore::NinePieceImage::setVerticalRule):
3156         (WebCore::NinePieceImage::copyImageSlicesFrom):
3157         (WebCore::NinePieceImage::copyBorderSlicesFrom):
3158         (WebCore::NinePieceImage::copyOutsetFrom):
3159         (WebCore::NinePieceImage::copyRepeatFrom):
3160         (WebCore::NinePieceImage::setMaskDefaults):
3161         (WebCore::NinePieceImage::computeOutset):
3162         * rendering/style/RenderStyle.cpp:
3163         (WebCore::RenderStyle::setBorderImageSource):
3164         (WebCore::RenderStyle::setBorderImageSlices):
3165         (WebCore::RenderStyle::setBorderImageWidth):
3166         (WebCore::RenderStyle::setBorderImageOutset):
3167         * rendering/style/RenderStyle.h:
3168
3169 2013-02-10  Kent Tamura  <tkent@chromium.org>
3170
3171         Unreviewed, rolling out r142343.
3172         http://trac.webkit.org/changeset/142343
3173         https://bugs.webkit.org/show_bug.cgi?id=108284
3174
3175         It might make inspector/profiler/selector-profiler-url.html
3176         crashy.
3177
3178         * WebCore.exp.in:
3179         * css/plugIns.css:
3180         (p):
3181         * html/HTMLPlugInElement.cpp:
3182         (WebCore::HTMLPlugInElement::defaultEventHandler):
3183         * html/HTMLPlugInImageElement.cpp:
3184         (WebCore::HTMLPlugInImageElement::HTMLPlugInImageElement):
3185         (WebCore::HTMLPlugInImageElement::createRenderer):
3186         (WebCore::HTMLPlugInImageElement::willRecalcStyle):
3187         (WebCore::HTMLPlugInImageElement::updateSnapshot):
3188         (WebCore::HTMLPlugInImageElement::userDidClickSnapshot):
3189         (WebCore::HTMLPlugInImageElement::subframeLoaderWillCreatePlugIn):
3190         * html/HTMLPlugInImageElement.h:
3191         (WebCore):
3192         (HTMLPlugInImageElement):
3193         * page/ChromeClient.h:
3194         (WebCore::ChromeClient::plugInStartLabelImage):
3195         * platform/LocalizedStrings.cpp:
3196         * platform/LocalizedStrings.h:
3197         * platform/blackberry/LocalizedStringsBlackBerry.cpp:
3198         * platform/chromium/LocalizedStringsChromium.cpp:
3199         * platform/efl/LocalizedStringsEfl.cpp:
3200         (WebCore):
3201         * platform/gtk/LocalizedStringsGtk.cpp:
3202         (WebCore):
3203         * platform/qt/LocalizedStringsQt.cpp:
3204         * rendering/RenderSnapshottedPlugIn.cpp:
3205         (WebCore):
3206         (WebCore::RenderSnapshottedPlugIn::RenderSnapshottedPlugIn):
3207         (WebCore::RenderSnapshottedPlugIn::paint):
3208         (WebCore::RenderSnapshottedPlugIn::paintReplaced):
3209         (WebCore::RenderSnapshottedPlugIn::paintSnapshot):
3210         (WebCore::RenderSnapshottedPlugIn::paintReplacedSnapshot):
3211         (WebCore::RenderSnapshottedPlugIn::startLabelImage):
3212         (WebCore::RenderSnapshottedPlugIn::paintReplacedSnapshotWithLabel):
3213         (WebCore::RenderSnapshottedPlugIn::getCursor):
3214         (WebCore::RenderSnapshottedPlugIn::handleEvent):
3215         (WebCore::RenderSnapshottedPlugIn::tryToFitStartLabel):
3216         * rendering/RenderSnapshottedPlugIn.h:
3217
3218 2013-02-10  Andreas Kling  <akling@apple.com>
3219
3220         RenderText: Access characters through m_text instead of caching data pointers separately.
3221         <http://webkit.org/b/109357>
3222
3223         Reviewed by Antti Koivisto.
3224
3225         Go through RenderText::m_text.impl() instead of caching the character data pointer.
3226         RenderText should never have a null String in m_text so it's safe to access impl() directly.
3227         We have assertions for this since before.
3228
3229         Removing this pointer shrinks RenderText by 8 bytes, allowing it to fit into a snugger size class.
3230         749 KB progression on Membuster3.
3231
3232         * rendering/RenderText.cpp:
3233         (SameSizeAsRenderText):
3234         (WebCore::RenderText::RenderText):
3235         (WebCore::RenderText::setTextInternal):
3236         * rendering/RenderText.h:
3237         (WebCore::RenderText::is8Bit):
3238         (WebCore::RenderText::characters8):
3239         (WebCore::RenderText::characters16):
3240         (WebCore::RenderText::characterAt):
3241         (WebCore::RenderText::operator[]):
3242         (RenderText):
3243
3244 2013-02-10  Jae Hyun Park  <jae.park08@gmail.com>
3245
3246         Rename ENABLE(GLIB_SUPPORT) to USE(GLIB)
3247         https://bugs.webkit.org/show_bug.cgi?id=104266
3248
3249         Reviewed by Philippe Normand.
3250
3251         Using USE(GLIB) instead of ENABLE(GLIB_SUPPORT) is more consistent with
3252         the existing macro naming conventions.
3253
3254         From Platform.h
3255         USE() - use a particular third-party library or optional OS service
3256         ENABLE() - turn on a specific feature of WebKit
3257
3258         No new tests, no new functionality.
3259
3260         * WebCore.pri:
3261
3262 2013-02-10  Zan Dobersek  <zdobersek@igalia.com>
3263
3264         [GTK] Build errors in TextureMapperShaderProgram.cpp when compiling with Clang
3265         https://bugs.webkit.org/show_bug.cgi?id=109321
3266
3267         Reviewed by Noam Rosenthal.
3268
3269         Clang is reporting errors due to non-constant expressions that cannot be narrowed
3270         from double to float type in initializer list when constructing a matrix of GC3Dfloat
3271         numbers. To avoid this every parameter is passed through an explicit GC3Dfloat constructor.
3272
3273         No new tests - no new functionality.
3274
3275         * platform/graphics/texmap/TextureMapperShaderProgram.cpp:
3276         (WebCore::TextureMapperShaderProgram::setMatrix):
3277
3278 2013-02-10  Philippe Normand  <pnormand@igalia.com>
3279
3280         [GStreamer] audio is muted when playback rate is between 0.8 and 2.0
3281         https://bugs.webkit.org/show_bug.cgi?id=109362
3282
3283         Reviewed by Martin Robinson.
3284
3285         Don't mute sound if the audio pitch is preserved. If this is not
3286         the case mute it if it's too extreme, as the HTML5 spec recommends.
3287
3288         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
3289         (WebCore::MediaPlayerPrivateGStreamer::setRate):
3290
3291 2013-02-09  Dominic Mazzoni  <dmazzoni@google.com>
3292
3293         fast/encoding/parser-tests-*.html tests sometimes crash
3294         https://bugs.webkit.org/show_bug.cgi?id=108058
3295
3296         Reviewed by Chris Fleizach.
3297
3298         To avoid calling accessibilityIsIgnored while the render
3299         tree is unstable, call accessibilityIsIgnored in the
3300         notification timer handler, only for childrenChanged
3301         notifications.
3302
3303         This exposed a problem where notifications queued on
3304         objects can fire after the object has been deleted; fix that
3305         by checking the object's id, which is always set to 0 when
3306         removed from the tree.
3307
3308         Covered by existing tests.
3309
3310         * accessibility/AXObjectCache.cpp:
3311         (WebCore::AXObjectCache::childrenChanged):
3312         (WebCore::AXObjectCache::notificationPostTimerFired):
3313
3314 2013-02-09  Eric Carlson  <eric.carlson@apple.com>
3315
3316         [Mac] Do not assume MediaAccessibility framework is installed
3317         https://bugs.webkit.org/show_bug.cgi?id=109365
3318
3319         Reviewed by Sam Weinig.
3320
3321         * page/CaptionUserPreferencesMac.h:
3322         * page/CaptionUserPreferencesMac.mm:
3323         (WebCore::CaptionUserPreferencesMac::userPrefersCaptions): Call the base class if the framework
3324             is not available.
3325         (WebCore::CaptionUserPreferencesMac::setUserPrefersCaptions): Ditto.
3326         (WebCore::CaptionUserPreferencesMac::userHasCaptionPreferences): Ditto.
3327         (WebCore::CaptionUserPreferencesMac::registerForCaptionPreferencesChangedCallbacks): Ditto.
3328         (WebCore::CaptionUserPreferencesMac::unregisterForCaptionPreferencesChangedCallbacks): Ditto.
3329         (WebCore::CaptionUserPreferencesMac::captionsStyleSheetOverride): Ditto.
3330         (WebCore::CaptionUserPreferencesMac::captionFontSizeScale): Ditto.
3331         (WebCore::CaptionUserPreferencesMac::setPreferredLanguage): Ditto.
3332         (WebCore::CaptionUserPreferencesMac::preferredLanguages): Ditto.
3333
3334 2013-02-09  Dominic Mazzoni  <dmazzoni@google.com>
3335
3336         AX: move isIgnored caching to AXObject
3337         https://bugs.webkit.org/show_bug.cgi?id=109322
3338
3339         Reviewed by Chris Fleizach.
3340
3341         There's some benefit to caching accessibilityIsIgnored
3342         (using AXComputedObjectAttributeCache) for more than just
3343         AXRenderObject, so move the caching code to AXObject.
3344
3345         AXObject now has a protected virtual method
3346         computeAccessibilityIsIgnored, and all subclasses
3347         override that instead.
3348
3349         No new tests.
3350
3351         * accessibility/AccessibilityImageMapLink.h:
3352         (AccessibilityImageMapLink):
3353         (WebCore::AccessibilityImageMapLink::computeAccessibilityIsIgnored):
3354         * accessibility/AccessibilityList.cpp:
3355         (WebCore::AccessibilityList::computeAccessibilityIsIgnored):
3356         * accessibility/AccessibilityList.h:
3357         (AccessibilityList):
3358         * accessibility/AccessibilityListBox.cpp:
3359         (WebCore::AccessibilityListBox::computeAccessibilityIsIgnored):
3360         * accessibility/AccessibilityListBox.h:
3361         (AccessibilityListBox):
3362         * accessibility/AccessibilityListBoxOption.cpp:
3363         (WebCore::AccessibilityListBoxOption::computeAccessibilityIsIgnored):
3364         * accessibility/AccessibilityListBoxOption.h:
3365         (AccessibilityListBoxOption):
3366         * accessibility/AccessibilityMediaControls.cpp:
3367         (WebCore::AccessibilityMediaControl::computeAccessibilityIsIgnored):
3368         (WebCore::AccessibilityMediaTimeDisplay::computeAccessibilityIsIgnored):
3369         * accessibility/AccessibilityMediaControls.h:
3370         (AccessibilityMediaControl):
3371         (WebCore::AccessibilityMediaControlsContainer::computeAccessibilityIsIgnored):
3372         (AccessibilityMediaTimeDisplay):
3373         * accessibility/AccessibilityMenuList.h:
3374         (WebCore::AccessibilityMenuList::computeAccessibilityIsIgnored):
3375         * accessibility/AccessibilityMenuListOption.cpp:
3376         (WebCore::AccessibilityMenuListOption::computeAccessibilityIsIgnored):
3377         * accessibility/AccessibilityMenuListOption.h:
3378         (AccessibilityMenuListOption):
3379         * accessibility/AccessibilityMenuListPopup.cpp:
3380         (WebCore::AccessibilityMenuListPopup::computeAccessibilityIsIgnored):
3381         * accessibility/AccessibilityMenuListPopup.h:
3382         (AccessibilityMenuListPopup):
3383         * accessibility/AccessibilityNodeObject.cpp:
3384         (WebCore::AccessibilityNodeObject::computeAccessibilityIsIgnored):
3385         * accessibility/AccessibilityNodeObject.h:
3386         (AccessibilityNodeObject):
3387         * accessibility/AccessibilityObject.cpp:
3388         (WebCore::AccessibilityObject::accessibilityIsIgnored):
3389         (WebCore):
3390         * accessibility/AccessibilityObject.h:
3391         (AccessibilityObject):
3392         (WebCore::AccessibilityObject::computeAccessibilityIsIgnored):
3393         * accessibility/AccessibilityProgressIndicator.cpp:
3394         (WebCore::AccessibilityProgressIndicator::computeAccessibilityIsIgnored):
3395         * accessibility/AccessibilityProgressIndicator.h:
3396         (AccessibilityProgressIndicator):
3397         * accessibility/AccessibilityRenderObject.cpp:
3398         (WebCore::AccessibilityRenderObject::computeAccessibilityIsIgnored):
3399         * accessibility/AccessibilityRenderObject.h:
3400         (AccessibilityRenderObject):
3401         * accessibility/AccessibilityScrollView.cpp:
3402         (WebCore::AccessibilityScrollView::computeAccessibilityIsIgnored):
3403         * accessibility/AccessibilityScrollView.h:
3404         (AccessibilityScrollView):
3405         * accessibility/AccessibilityScrollbar.h:
3406         (WebCore::AccessibilityScrollbar::computeAccessibilityIsIgnored):
3407         * accessibility/AccessibilitySlider.cpp:
3408         (WebCore::AccessibilitySlider::computeAccessibilityIsIgnored):
3409         (WebCore::AccessibilitySliderThumb::computeAccessibilityIsIgnored):
3410         * accessibility/AccessibilitySlider.h:
3411         (AccessibilitySlider):
3412         (AccessibilitySliderThumb):
3413         * accessibility/AccessibilitySpinButton.h:
3414         (WebCore::AccessibilitySpinButton::computeAccessibilityIsIgnored):
3415         (WebCore::AccessibilitySpinButtonPart::computeAccessibilityIsIgnored):
3416         * accessibility/AccessibilityTable.cpp:
3417         (WebCore::AccessibilityTable::computeAccessibilityIsIgnored):
3418         * accessibility/AccessibilityTable.h:
3419         (AccessibilityTable):
3420         * accessibility/AccessibilityTableCell.cpp:
3421         (WebCore::AccessibilityTableCell::computeAccessibilityIsIgnored):
3422         * accessibility/AccessibilityTableCell.h:
3423         (AccessibilityTableCell):
3424         * accessibility/AccessibilityTableColumn.cpp:
3425         (WebCore::AccessibilityTableColumn::computeAccessibilityIsIgnored):
3426         * accessibility/AccessibilityTableColumn.h:
3427         (AccessibilityTableColumn):
3428         * accessibility/AccessibilityTableHeaderContainer.cpp:
3429         (WebCore::AccessibilityTableHeaderContainer::computeAccessibilityIsIgnored):
3430         * accessibility/AccessibilityTableHeaderContainer.h:
3431         (AccessibilityTableHeaderContainer):
3432         * accessibility/AccessibilityTableRow.cpp:
3433         (WebCore::AccessibilityTableRow::computeAccessibilityIsIgnored):
3434         * accessibility/AccessibilityTableRow.h:
3435         (AccessibilityTableRow):
3436
3437 2013-02-09  David Farler  <dfarler@apple.com>
3438
3439         Make TestWebKitAPI work for iOS
3440         https://bugs.webkit.org/show_bug.cgi?id=108978
3441
3442         Reviewed by David Kilzer.
3443
3444         Tests already exist - refactor only.
3445