2011-01-10 Jer Noble <jer.noble@apple.com>
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2011-01-10  Jer Noble  <jer.noble@apple.com>
2
3         Reviewed by Simon Fraser.
4
5         https://bugs.webkit.org/show_bug.cgi?id=52095
6         REGRESSION (r75277): 2 test cases (<1%) had incorrect layout
7         
8         Fixes tests:
9             fullscreen/full-screen-remove-ancestor.html
10             fullscreen/full-screen-remove.html
11             
12         Previously, the above tests were failing because DRT dumped the contents of their
13         <script> tags, though all the explicit tests were passing.  This was caused by
14         the document's render tree being left in an inconsistent state when a full screen
15         element's ancestor was removed from the DOM.
16         
17         In nodeWillBeRemoved(), match the code in webkitDidExitFullScreen().
18         Don't detach the documentElement, but rather simply call recalcStyle(Force).
19
20         * dom/Document.cpp:
21         (WebCore::Document::nodeWillBeRemoved):
22         * rendering/RenderFullScreen.cpp:
23         (RenderFullScreen::setAnimating): #if ENABLED -> # if USE
24         * rendering/RenderFullScreen.h:
25         (WebCore::RenderFullScreen::RenderFullScreen): RenderFullScreen should be an anonymous renderer.
26
27 2011-01-10  Martin Robinson  <mrobinson@igalia.com>
28
29         Reviewed by Xan Lopez.
30
31         [GTK] Remove use of deprecated GTK+ methods before the 1.3.10 release
32         https://bugs.webkit.org/show_bug.cgi?id=52173
33
34         No new tests. This is only a build fix.
35
36         * platform/gtk/GRefPtrGtk.cpp: Guard the GdkCursor specialization against GTK+ 3.x.
37         In GTK+ 3.x, GdkCursor is just a GObject.
38         * platform/gtk/GRefPtrGtk.h: Ditto.
39
40 2011-01-10  Geoffrey Garen  <ggaren@apple.com>
41
42         Reviewed by Oliver Hunt.
43
44         Moved Collector.* => Heap.*, since the file contains a class named "Heap".
45
46         * ForwardingHeaders/runtime/Collector.h: Removed.
47         * ForwardingHeaders/runtime/Heap.h: Copied from WebCore/ForwardingHeaders/runtime/Collector.h.
48         * WebCore.vcproj/WebCore.vcproj:
49         * bindings/js/GCController.cpp:
50         * bindings/js/ScriptGCEvent.cpp:
51
52 2011-01-10  Leonid Ebril  <leonid.ebril@nokia.com>
53
54         Reviewed by Kenneth Rohde Christiansen.
55
56         https://bugs.webkit.org/show_bug.cgi?id=51879
57
58         Set the PluginQuirkDontSetNullWindowHandleOnDestroy for Adobe Lite  
59         plugin if Flash 10 or newer (for Symbian platform), setting a nulled 
60         window handler on destroy crashes WebKit.
61
62         * plugins/symbian/PluginPackageSymbian.cpp:
63         (WebCore::PluginPackage::fetchInfo):
64         (WebCore::PluginPackage::determineQuirks):
65
66 2011-01-10  Martin Robinson  <mrobinson@igalia.com>
67
68         Reviewed by Xan Lopez.
69
70         [GTK] Remove unecessary RenderThemeGtk and WidgetRenderingContext code
71         https://bugs.webkit.org/show_bug.cgi?id=52170
72
73         Remove unnecessary code from RenderThemeGtk3 and RenderThemeGtk now that the
74         GtkStyleContext port is complete. Also remove WidgetRenderingContextGtk3 and
75         move WidgetRenderingRenderingContextGtk2 to WidgetRenderingContext and make it
76         GTK+ 2.x only. Some methods have been moved to RenderThemeGtk2 since they are
77         GTK+ 2.x only now.
78
79         No new tests. This should not change functionality.
80
81         * GNUmakefile.am: Remove WidgetRenderingContextGtk3 and gtk3drawing.c
82         * platform/gtk/RenderThemeGtk.cpp:
83         (WebCore::RenderThemeGtk::RenderThemeGtk):
84         (WebCore::gtkIconState): Made this method static. It isn't used outside RenderThemeGtk.
85         (WebCore::RenderThemeGtk::paintSearchFieldResultsDecoration): Updated to refelct gtkIconState change.
86         (WebCore::RenderThemeGtk::paintSearchFieldCancelButton): Ditto.
87         (WebCore::RenderThemeGtk::paintMediaButton): Ditto
88         * platform/gtk/RenderThemeGtk.h: Move a few methods which are now GTK+ 2.x only.
89         * platform/gtk/RenderThemeGtk2.cpp:
90         (WebCore::RenderThemeGtk::platformInit): Added this platform initialization method
91         that is only used for GTK+ 2.x at the moment.
92         (WebCore::RenderThemeGtk::~RenderThemeGtk): Added.
93         (WebCore::getGtkStateType): Made this method static.
94         (WebCore::RenderThemeGtk::getIndicatorMetrics): Moved this here from RenderThemeGtk.
95         (WebCore::setToggleSize): Updated to reflect changes to getGtkStateType.
96         (WebCore::RenderThemeGtk::paintButton): Ditto.
97         (WebCore::RenderThemeGtk::paintSliderTrack): Ditto.
98         (WebCore::RenderThemeGtk::paintSliderThumb): Ditto.
99         * platform/gtk/RenderThemeGtk3.cpp:
100         (WebCore::RenderThemeGtk::gtkScrollbarStyle): Moved to the top of the file.
101         (WebCore::RenderThemeGtk::platformInit): Added.
102         (WebCore::RenderThemeGtk::~RenderThemeGtk): Added.
103         (WebCore::RenderThemeGtk::initMediaColors): Changed to use the GtkStyleContext API to
104         fetch these colors. This was the last dependency on the old API.
105         * platform/gtk/WidgetRenderingContext.cpp: Renamed from Source/WebCore/platform/gtk/WidgetRenderingContextGtk2.cpp.
106         * platform/gtk/WidgetRenderingContext.h: Made GTK+ 2.x only.
107         * platform/gtk/WidgetRenderingContextGtk3.cpp: Removed.
108         * platform/gtk/gtk3drawing.c: Removed.
109         * platform/gtk/gtkdrawing.h: Made GTK+ 2.x only.
110
111 2011-01-10  Benjamin Poulain  <benjamin.poulain@nokia.com>
112
113         Reviewed by Kenneth Rohde Christiansen.
114
115         [Qt] Navigator.cookiesEnabled return true for Qt even if there is no cookie jar
116         https://bugs.webkit.org/show_bug.cgi?id=52081
117
118         Test for the availability of cookie jar to return if cookies are enabled or not.
119
120         * platform/qt/CookieJarQt.cpp:
121         (WebCore::cookiesEnabled):
122
123 2011-01-10  W. James MacLean  <wjmaclean@chromium.org>
124
125         Reviewed by Kenneth Russell.
126
127         [chromium] Enable reuse of RenderSurface for drawing.
128         https://bugs.webkit.org/show_bug.cgi?id=51928
129
130         Modifies RenderSurfaceChromium::prepareContentsTexture to avoid trying to 'reserve' a texture
131         that is already reserved, should an attempt be made to re-select a previously drawn render surface
132         in order to continue drawing to it. This use case appears when compositing into an offscreen texture.
133
134         Covered by existing test (compositing/geometry/fixed-position.html) when offscreen compositing enabled.
135
136         * platform/graphics/chromium/LayerTexture.h:
137         (WebCore::LayerTexture::isReserved):
138         * platform/graphics/chromium/RenderSurfaceChromium.cpp:
139         (WebCore::RenderSurfaceChromium::prepareContentsTexture):
140         * platform/graphics/chromium/TextureManager.cpp:
141         (WebCore::TextureManager::isProtected):
142         * platform/graphics/chromium/TextureManager.h:
143
144 2011-01-10  Carlos Garcia Campos  <cgarcia@igalia.com>
145
146         Reviewed by Xan Lopez.
147
148         [GTK] Port combo box painting to GtkStyleContext
149         https://bugs.webkit.org/show_bug.cgi?id=51828
150
151         Use GtkStyleContext API to paint combo boxes when building with
152         GTK+ 3.x. Method paintButton() has been factored out and the new
153         static method renderButton() is used by both paintButton() and
154         paintMenuList().
155
156         No new tests. This should not change functionality.
157
158         * platform/gtk/RenderThemeGtk3.cpp:
159         (WebCore::RenderThemeGtk::adjustRepaintRect):
160         (WebCore::renderButton):
161         (WebCore::RenderThemeGtk::paintButton):
162         (WebCore::getComboBoxMetrics):
163         (WebCore::RenderThemeGtk::popupInternalPaddingLeft):
164         (WebCore::RenderThemeGtk::popupInternalPaddingRight):
165         (WebCore::RenderThemeGtk::popupInternalPaddingTop):
166         (WebCore::RenderThemeGtk::popupInternalPaddingBottom):
167         (WebCore::RenderThemeGtk::paintMenuList):
168
169 2011-01-10  Evan Martin  <evan@chromium.org>
170
171         Reviewed by Tony Chang.
172
173         [chromium] simplify complex glyph positioning code
174         https://bugs.webkit.org/show_bug.cgi?id=52159
175
176         Before, we had roughly same code duplicated for RTL and LTR.
177         Now, use the same code for both directions by being careful about
178         flipping signs where appropriate.
179
180         * platform/graphics/chromium/ComplexTextControllerLinux.cpp:
181         (WebCore::ComplexTextController::shapeGlyphs):
182         (WebCore::ComplexTextController::setGlyphXPositions):
183
184 2011-01-10  Alejandro G. Castro  <alex@igalia.com>
185
186         Reviewed by Xan Lopez.
187
188         [GTK] Fix gtk2 compilation for master
189         https://bugs.webkit.org/show_bug.cgi?id=51885
190
191         * platform/gtk/GtkVersioning.h: Replaced the 2.24.0 check with
192         2.23.0 to avoid using the old symbols in the 2.23 releases. Added
193         support for gdk_pixmap_get_size before the 2.23.4.
194         * platform/gtk/WidgetRenderingContextGtk2.cpp:
195         (WebCore::WidgetRenderingContext::WidgetRenderingContext):
196         Replaced the old gdk_drawable_get_size with gdk_pixmap_get_size.
197
198 2011-01-10  Ryosuke Niwa  <rniwa@webkit.org>
199
200         Unreviewed; build fix for r75385.
201
202         * rendering/mathml/RenderMathMLFraction.cpp:
203         (WebCore::RenderMathMLFraction::paint):
204
205 2011-01-10  Sheriff Bot  <webkit.review.bot@gmail.com>
206
207         Unreviewed, rolling out r75341.
208         http://trac.webkit.org/changeset/75341
209         https://bugs.webkit.org/show_bug.cgi?id=52157
210
211         Regressions on several pixel tests (Requested by jorlow on
212         #webkit).
213
214         * platform/graphics/cg/GraphicsContextCG.cpp:
215         (WebCore::GraphicsContext::fillPath):
216
217 2011-01-10  Carlos Garcia Campos  <cgarcia@igalia.com>
218
219         Reviewed by Martin Robinson.
220
221         [GTK] Port check and radio button painting to GtkStyleContext
222         https://bugs.webkit.org/show_bug.cgi?id=51815
223
224         Use GtkStyleContext API to paint check and radio buttons when
225         building with GTK+ 3.x.
226
227         No new tests. This should not change functionality.
228
229         * platform/gtk/RenderThemeGtk3.cpp:
230         (WebCore::RenderThemeGtk::adjustRepaintRect):
231         (WebCore::setToggleSize):
232         (WebCore::paintToggle):
233         (WebCore::RenderThemeGtk::setCheckboxSize):
234         (WebCore::RenderThemeGtk::paintCheckbox):
235         (WebCore::RenderThemeGtk::setRadioSize):
236         (WebCore::RenderThemeGtk::paintRadio):
237
238 2011-01-10  François Sausset  <sausset@gmail.com>
239
240         Reviewed by Kenneth Rohde Christiansen.
241
242         MathML: vertical alignment & bar thickness adjustments of fractions.
243         https://bugs.webkit.org/show_bug.cgi?id=50018
244
245         The fraction bar thickness default value should follow the w3c MathML 3 recommendation:
246         http://www.w3.org/TR/MathML3/chapter3.html#presm.mfrac
247         The vertical alignment of the fraction bar should be more accurate, specially with operators (+,=,...).
248
249         Test: mathml/presentation/fractions.xhtml
250
251         * rendering/mathml/RenderMathMLFraction.cpp:
252         (WebCore::RenderMathMLFraction::RenderMathMLFraction):
253         (WebCore::RenderMathMLFraction::updateFromElement):
254         (WebCore::RenderMathMLFraction::layout):
255         (WebCore::RenderMathMLFraction::paint):
256         (WebCore::RenderMathMLFraction::baselinePosition):
257         * rendering/mathml/RenderMathMLFraction.h:
258
259 2011-01-10  Antti Koivisto  <antti@apple.com>
260
261         Reviewed by Alexey Proskuryakov.
262
263         https://bugs.webkit.org/show_bug.cgi?id=52044
264         REGRESSION(r74807): No-store is ignored within a document
265         
266         Don't use cached resources with Cache-control: no-store (unless cache policy is CachePolicyHistoryBuffer).
267         This matches a behavior that got lost in r74807.
268
269         Test: http/tests/misc/script-no-store.html
270         (by Alexey Proskuryakov)
271
272         * loader/cache/CachedResourceLoader.cpp:
273         (WebCore::CachedResourceLoader::determineRevalidationPolicy):
274
275 2011-01-10  Patrick Gansterer  <paroga@webkit.org>
276
277         Reviewed by Laszlo Gombos.
278
279         [WIN] Add ProxyServerWin.cpp
280         https://bugs.webkit.org/show_bug.cgi?id=52031
281
282         Add stub implementation to fix ENABLE_NETSCAPE_PLUGIN_API on WinCE.
283
284         * CMakeLists.txt:
285         * CMakeListsWinCE.txt:
286         * platform/network/win/ProxyServerWin.cpp: Added.
287         (WebCore::proxyServersForURL):
288
289 2011-01-10  Alejandro G. Castro  <alex@igalia.com>
290
291         Reviewed by Martin Robinson.
292
293         [cairo] Rendering a lot of arcs on top of each other causes time
294         outs in some tests
295         https://bugs.webkit.org/show_bug.cgi?id=50869
296
297         We avoid the situation where we have to render the same arc
298         multiple times over itself. Now it renders just one oval and
299         moves to the end angle.
300
301         * platform/graphics/cairo/PathCairo.cpp:
302         (WebCore::Path::addArc):
303
304 2011-01-10  Carlos Garcia Campos  <cgarcia@igalia.com>
305
306         Reviewed by Martin Robinson.
307
308         [GTK] Port text input control painting to GtkStyleContext
309         https://bugs.webkit.org/show_bug.cgi?id=51870
310
311         Use GtkStyleContext API to paint text input controls when building
312         with GTK+ 3.x.
313
314         No new tests. This should not change functionality.
315
316         * platform/gtk/RenderThemeGtk3.cpp:
317         (WebCore::RenderThemeGtk::adjustRepaintRect):
318         (WebCore::RenderThemeGtk::paintTextField):
319
320 2011-01-09  Tony Gentilcore  <tonyg@chromium.org>
321
322         Reviewed by Alexey Proskuryakov.
323
324         Forward declare some headers where possible
325         https://bugs.webkit.org/show_bug.cgi?id=52133
326
327         No new tests because no new functionality.
328
329         * css/CSSValue.h:
330         * dom/BeforeLoadEvent.h:
331         * dom/Event.cpp:
332         * dom/Event.h:
333         * dom/StyledElement.cpp:
334         * dom/StyledElement.h:
335         * loader/DocumentLoader.h:
336         * loader/FrameLoader.h:
337         * page/Frame.h:
338         * platform/graphics/GraphicsContext.cpp:
339         * platform/graphics/GraphicsContext.h:
340         * platform/graphics/filters/FEBlend.cpp:
341         * platform/graphics/filters/FEColorMatrix.cpp:
342         * platform/graphics/filters/FEComponentTransfer.cpp:
343         * platform/graphics/filters/FEComposite.cpp:
344         * platform/graphics/filters/FEConvolveMatrix.cpp:
345         * platform/graphics/filters/FEDiffuseLighting.cpp:
346         * platform/graphics/filters/FEDisplacementMap.cpp:
347         * platform/graphics/filters/FEFlood.cpp:
348         * platform/graphics/filters/FEGaussianBlur.cpp:
349         * platform/graphics/filters/FEMerge.cpp:
350         * platform/graphics/filters/FEMorphology.cpp:
351         * platform/graphics/filters/FEOffset.cpp:
352         * platform/graphics/filters/FESpecularLighting.cpp:
353         * platform/graphics/filters/FETile.cpp:
354         * platform/graphics/filters/FETurbulence.cpp:
355         * platform/graphics/filters/FilterEffect.cpp:
356         * platform/graphics/filters/FilterEffect.h:
357         * platform/graphics/filters/SourceAlpha.cpp:
358         * platform/graphics/filters/SourceGraphic.cpp:
359         * svg/SVGElement.cpp:
360         * svg/SVGElement.h:
361         * svg/SVGFEBlendElement.cpp:
362         * svg/SVGFEColorMatrixElement.cpp:
363         * svg/SVGFEComponentTransferElement.cpp:
364         * svg/SVGFECompositeElement.cpp:
365         * svg/SVGFEConvolveMatrixElement.cpp:
366         * svg/SVGFEConvolveMatrixElement.h:
367         * svg/SVGFEDiffuseLightingElement.cpp:
368         * svg/SVGFEDisplacementMapElement.cpp:
369         * svg/SVGFEGaussianBlurElement.cpp:
370         * svg/SVGFEImageElement.h:
371         * svg/SVGFEMergeElement.cpp:
372         * svg/SVGFEMorphologyElement.cpp:
373         * svg/SVGFEOffsetElement.cpp:
374         * svg/SVGFESpecularLightingElement.cpp:
375         * svg/SVGFETileElement.cpp:
376         * svg/SVGFETurbulenceElement.h:
377         * svg/SVGFilterPrimitiveStandardAttributes.cpp:
378         * svg/SVGFilterPrimitiveStandardAttributes.h:
379         * svg/SVGTextContentElement.cpp:
380         * svg/graphics/filters/SVGFEImage.cpp:
381         * svg/graphics/filters/SVGFEImage.h:
382
383 2011-01-10  Adam Roben  <aroben@apple.com>
384
385         Windows build fix after r75313
386
387         * WebCore.vcproj/build-generated-files.sh: Updated for the change in
388         this script's path.
389
390 2011-01-10  Pavel Podivilov  <podivilov@chromium.org>
391
392         Reviewed by Pavel Feldman.
393
394         Web Inspector: make properties on Array's prototype non-enumerable.
395         https://bugs.webkit.org/show_bug.cgi?id=51776
396
397         * inspector/front-end/utilities.js:
398         ():
399
400 2011-01-10  Yael Aharon  <yael.aharon@nokia.com>
401
402         Reviewed by Simon Fraser.
403
404         Specificity of negated selectors apparently miscalculated
405         https://bugs.webkit.org/show_bug.cgi?id=41206
406
407         Give negated selectors the specificity of the selector they are negating.
408         This is the same as the behavior of other browsers.
409
410         Test: fast/css/pseudo-not.html
411
412         * css/CSSSelector.cpp:
413         (WebCore::CSSSelector::specificityForOneSelector):
414
415 2011-01-10  Adam Roben  <aroben@apple.com>
416
417         Windows build fix after r75353
418
419         * WebCore.vcproj/WebCoreCommon.vsprops: Added rendering/mathml to the
420         include path.
421
422 2011-01-10  John Knottenbelt  <jknotten@chromium.org>
423
424         Reviewed by Jeremy Orlow.
425
426         [Chromium] Remove non-client-based Geolocation code
427         https://bugs.webkit.org/show_bug.cgi?id=50921
428
429         Code clean up, covered by existing tests.
430
431         * WebCore.gyp/WebCore.gyp:
432         * WebCore.gypi:
433         * platform/chromium/ChromiumBridge.h:
434         * platform/chromium/GeolocationServiceChromium.cpp: Removed.
435         * platform/chromium/GeolocationServiceChromium.h: Removed.
436
437 2011-01-10  Ilya Tikhonovsky  <loislo@chromium.org>
438
439         Reviewed by Pavel Feldman.
440
441         Web Inspector: protocol related change. Rename stepIntoStatement, stepOutOfFunction, stepOverStatement.
442         stepIntoStatement => stepInto
443         stepOutOfFunction => stepOut
444         stepOverStatement => stepOver
445
446         https://bugs.webkit.org/show_bug.cgi?id=52142
447
448         * inspector/Inspector.idl:
449         * inspector/InspectorDebuggerAgent.cpp:
450         (WebCore::InspectorDebuggerAgent::stepOver):
451         (WebCore::InspectorDebuggerAgent::stepInto):
452         (WebCore::InspectorDebuggerAgent::stepOut):
453         * inspector/InspectorDebuggerAgent.h:
454         * inspector/front-end/ScriptsPanel.js:
455         (WebInspector.ScriptsPanel.prototype._stepOverClicked):
456         (WebInspector.ScriptsPanel.prototype._stepIntoClicked):
457         (WebInspector.ScriptsPanel.prototype._stepOutClicked):
458
459 2011-01-10  Carlos Garcia Campos  <cgarcia@igalia.com>
460
461         Reviewed by Martin Robinson.
462
463         [GTK] Port progressbar painting to GtkStyleContext
464         https://bugs.webkit.org/show_bug.cgi?id=52054
465
466         Use GtkStyleContext API to paint progressbars when building with
467         GTK+ 3.x. Also add support for indeterminate progressbars.
468
469         No new tests. This should not change functionality.
470
471         * platform/gtk/RenderThemeGtk.cpp:
472         * platform/gtk/RenderThemeGtk2.cpp:
473         (WebCore::RenderThemeGtk::animationRepeatIntervalForProgressBar):
474         (WebCore::RenderThemeGtk::animationDurationForProgressBar):
475         * platform/gtk/RenderThemeGtk3.cpp:
476         (WebCore::RenderThemeGtk::animationRepeatIntervalForProgressBar):
477         (WebCore::RenderThemeGtk::animationDurationForProgressBar):
478         (WebCore::RenderThemeGtk::paintProgressBar):
479
480 2011-01-10  Andreas Kling  <kling@webkit.org>
481
482         Reviewed by Darin Adler.
483
484         Remove unused class "Pen" in WebCore/platform/graphics
485         https://bugs.webkit.org/show_bug.cgi?id=49955
486
487         * Android.mk:
488         * CMakeLists.txt:
489         * GNUmakefile.am:
490         * WebCore.gypi:
491         * WebCore.pro:
492         * WebCore.vcproj/WebCore.vcproj:
493         * WebCore.xcodeproj/project.pbxproj:
494         * platform/graphics/Pen.cpp: Removed.
495         * platform/graphics/Pen.h: Removed.
496         * platform/graphics/haiku/GraphicsContextHaiku.cpp:
497         * platform/graphics/wx/GraphicsContextWx.cpp:
498         * platform/graphics/wx/PenWx.cpp: Removed.
499
500 2011-01-10  Xan Lopez  <xlopez@igalia.com>
501
502         Reviewed by Martin Robinson.
503
504         [GTK] Create intermediate libWebCore library
505         https://bugs.webkit.org/show_bug.cgi?id=52116
506
507         Create intermediate libWebCore.la to avoid overflowing the linker
508         in the final link stage.
509
510         * GNUmakefile.am: define the new library.
511
512 2011-01-09  Sheriff Bot  <webkit.review.bot@gmail.com>
513
514         Unreviewed, rolling out r75337.
515         http://trac.webkit.org/changeset/75337
516         https://bugs.webkit.org/show_bug.cgi?id=52137
517
518         It made fast/dom/navigator-detached-no-crash.html crash
519         (Requested by Ossy on #webkit).
520
521         * platform/qt/CookieJarQt.cpp:
522         (WebCore::cookiesEnabled):
523
524 2011-01-09  Mark Rowe  <mrowe@apple.com>
525
526         Fix the build.
527
528         * WebCore.xcodeproj/project.pbxproj: Copy SVGResourcesCache.h in to PrivateHeaders
529         once more.
530
531 2011-01-09  Dan Bernstein  <mitz@apple.com>
532
533         Reviewed by Sam Weinig.
534
535         <rdar://problem/8765555> WebKit2: Search field focus ring is missing
536
537         Provide a focus ring visible rect to AppKit.
538
539         * platform/mac/ThemeMac.mm:
540         (-[WebCoreFlippedView _focusRingVisibleRect]):
541         (-[WebCoreFlippedView _focusRingClipAncestor]):
542
543 2011-01-09  Dirk Schulze  <krit@webkit.org>
544
545         Reviewed by Rob Buis.
546
547         Move MathML renderer to rendering/mathml
548         https://bugs.webkit.org/show_bug.cgi?id=52131
549
550         Move all renderer of MathML to WebCore/rendering/mathml
551
552         No change of functionality, no new tests added.
553
554         * CMakeLists.txt:
555         * GNUmakefile.am:
556         * WebCore.gypi:
557         * WebCore.pro:
558         * WebCore.vcproj/WebCore.vcproj:
559         * WebCore.xcodeproj/project.pbxproj:
560         * mathml/RenderMathMLBlock.cpp: Removed.
561         * mathml/RenderMathMLBlock.h: Removed.
562         * mathml/RenderMathMLFenced.cpp: Removed.
563         * mathml/RenderMathMLFenced.h: Removed.
564         * mathml/RenderMathMLFraction.cpp: Removed.
565         * mathml/RenderMathMLFraction.h: Removed.
566         * mathml/RenderMathMLMath.cpp: Removed.
567         * mathml/RenderMathMLMath.h: Removed.
568         * mathml/RenderMathMLOperator.cpp: Removed.
569         * mathml/RenderMathMLOperator.h: Removed.
570         * mathml/RenderMathMLRoot.cpp: Removed.
571         * mathml/RenderMathMLRoot.h: Removed.
572         * mathml/RenderMathMLRow.cpp: Removed.
573         * mathml/RenderMathMLRow.h: Removed.
574         * mathml/RenderMathMLSquareRoot.cpp: Removed.
575         * mathml/RenderMathMLSquareRoot.h: Removed.
576         * mathml/RenderMathMLSubSup.cpp: Removed.
577         * mathml/RenderMathMLSubSup.h: Removed.
578         * mathml/RenderMathMLUnderOver.cpp: Removed.
579         * mathml/RenderMathMLUnderOver.h: Removed.
580         * rendering/mathml: Added.
581         * rendering/mathml/RenderMathMLBlock.cpp: Copied from Source/WebCore/mathml/RenderMathMLBlock.cpp.
582         * rendering/mathml/RenderMathMLBlock.h: Copied from Source/WebCore/mathml/RenderMathMLBlock.h.
583         * rendering/mathml/RenderMathMLFenced.cpp: Copied from Source/WebCore/mathml/RenderMathMLFenced.cpp.
584         * rendering/mathml/RenderMathMLFenced.h: Copied from Source/WebCore/mathml/RenderMathMLFenced.h.
585         * rendering/mathml/RenderMathMLFraction.cpp: Copied from Source/WebCore/mathml/RenderMathMLFraction.cpp.
586         * rendering/mathml/RenderMathMLFraction.h: Copied from Source/WebCore/mathml/RenderMathMLFraction.h.
587         * rendering/mathml/RenderMathMLMath.cpp: Copied from Source/WebCore/mathml/RenderMathMLMath.cpp.
588         * rendering/mathml/RenderMathMLMath.h: Copied from Source/WebCore/mathml/RenderMathMLMath.h.
589         * rendering/mathml/RenderMathMLOperator.cpp: Copied from Source/WebCore/mathml/RenderMathMLOperator.cpp.
590         * rendering/mathml/RenderMathMLOperator.h: Copied from Source/WebCore/mathml/RenderMathMLOperator.h.
591         * rendering/mathml/RenderMathMLRoot.cpp: Copied from Source/WebCore/mathml/RenderMathMLRoot.cpp.
592         * rendering/mathml/RenderMathMLRoot.h: Copied from Source/WebCore/mathml/RenderMathMLRoot.h.
593         * rendering/mathml/RenderMathMLRow.cpp: Copied from Source/WebCore/mathml/RenderMathMLRow.cpp.
594         * rendering/mathml/RenderMathMLRow.h: Copied from Source/WebCore/mathml/RenderMathMLRow.h.
595         * rendering/mathml/RenderMathMLSquareRoot.cpp: Copied from Source/WebCore/mathml/RenderMathMLSquareRoot.cpp.
596         * rendering/mathml/RenderMathMLSquareRoot.h: Copied from Source/WebCore/mathml/RenderMathMLSquareRoot.h.
597         * rendering/mathml/RenderMathMLSubSup.cpp: Copied from Source/WebCore/mathml/RenderMathMLSubSup.cpp.
598         * rendering/mathml/RenderMathMLSubSup.h: Copied from Source/WebCore/mathml/RenderMathMLSubSup.h.
599         * rendering/mathml/RenderMathMLUnderOver.cpp: Copied from Source/WebCore/mathml/RenderMathMLUnderOver.cpp.
600         * rendering/mathml/RenderMathMLUnderOver.h: Copied from Source/WebCore/mathml/RenderMathMLUnderOver.h.
601
602 2011-01-08  Simon Fraser  <simon.fraser@apple.com>
603
604         Reviewed by Alexey Proskuryakov.
605
606         HTMLStyleElement.disabled doesn't work (affects jQuery)
607         https://bugs.webkit.org/show_bug.cgi?id=25287
608         
609         Fix the disabled property of a HTMLStyleElement to reflect,
610         and set the disabled state of its style sheet, as required
611         by DOM1 etc.
612
613         Based on initial patch by Tarun Nainani.
614
615         Test: fast/html/disable-style-element.html
616
617         * dom/StyleElement.h:
618         (WebCore::StyleElement::sheet): Make const.
619         
620         * html/HTMLStyleElement.h:
621         * html/HTMLStyleElement.idl:
622         * html/HTMLStyleElement.cpp:
623         (WebCore::HTMLStyleElement::disabled): 
624         (WebCore::HTMLStyleElement::setDisabled): Getter and setter for disabled
625         call through to the sheet (if any).
626
627 2011-01-09  Dirk Schulze  <krit@webkit.org>
628
629         Reviewed by Nikolas Zimmermann.
630
631         Rename RenderForeignObject to RenderSVGForeignObject
632         https://bugs.webkit.org/show_bug.cgi?id=52129
633
634         Rename RenderForeignObject to RenderSVGForeignObject to match the naming schema in render/svg.
635
636         No change of functionality, no new tests.
637
638         * Android.mk:
639         * CMakeLists.txt:
640         * GNUmakefile.am:
641         * WebCore.gypi:
642         * WebCore.pro:
643         * WebCore.xcodeproj/project.pbxproj:
644         * rendering/RenderingAllInOne.cpp:
645         * rendering/svg/RenderForeignObject.cpp: Removed.
646         * rendering/svg/RenderForeignObject.h: Removed.
647         * rendering/svg/RenderSVGAllInOne.cpp:
648         * rendering/svg/RenderSVGBlock.cpp:
649         (WebCore::RenderSVGBlock::updateBoxModelInfoFromStyle):
650         * rendering/svg/RenderSVGForeignObject.cpp: Copied from Source/WebCore/rendering/svg/RenderForeignObject.cpp.
651         (WebCore::RenderSVGForeignObject::RenderSVGForeignObject):
652         (WebCore::RenderSVGForeignObject::~RenderSVGForeignObject):
653         (WebCore::RenderSVGForeignObject::paint):
654         (WebCore::RenderSVGForeignObject::clippedOverflowRectForRepaint):
655         (WebCore::RenderSVGForeignObject::computeRectForRepaint):
656         (WebCore::RenderSVGForeignObject::localToParentTransform):
657         (WebCore::RenderSVGForeignObject::computeLogicalWidth):
658         (WebCore::RenderSVGForeignObject::computeLogicalHeight):
659         (WebCore::RenderSVGForeignObject::layout):
660         (WebCore::RenderSVGForeignObject::nodeAtFloatPoint):
661         (WebCore::RenderSVGForeignObject::nodeAtPoint):
662         (WebCore::RenderSVGForeignObject::mapLocalToContainer):
663         * rendering/svg/RenderSVGForeignObject.h: Copied from Source/WebCore/rendering/svg/RenderForeignObject.h.
664         (WebCore::RenderSVGForeignObject::renderName):
665         * svg/SVGForeignObjectElement.cpp:
666         (WebCore::SVGForeignObjectElement::createRenderer):
667
668 2011-01-09  Dirk Schulze  <krit@webkit.org>
669
670         Reviewed by Nikolas Zimmermann.
671
672         Move all SVG renderer to WebCore/rendering/svg
673         https://bugs.webkit.org/show_bug.cgi?id=52087
674
675         No change of functionality. Just moved all SVG renderer to WebCore/rendering/svg.
676
677         * Android.mk:
678         * CMakeLists.txt:
679         * GNUmakefile.am:
680         * WebCore.gypi:
681         * WebCore.pro:
682         * WebCore.vjproj/project.vjproj:
683         * WebCore.xcodeproj/project.pbxproj:
684         * rendering/RenderForeignObject.cpp: Removed.
685         * rendering/RenderForeignObject.h: Removed.
686         * rendering/RenderSVGAllInOne.cpp: Removed.
687         * rendering/RenderSVGBlock.cpp: Removed.
688         * rendering/RenderSVGBlock.h: Removed.
689         * rendering/RenderSVGContainer.cpp: Removed.
690         * rendering/RenderSVGContainer.h: Removed.
691         * rendering/RenderSVGGradientStop.cpp: Removed.
692         * rendering/RenderSVGGradientStop.h: Removed.
693         * rendering/RenderSVGHiddenContainer.cpp: Removed.
694         * rendering/RenderSVGHiddenContainer.h: Removed.
695         * rendering/RenderSVGImage.cpp: Removed.
696         * rendering/RenderSVGImage.h: Removed.
697         * rendering/RenderSVGModelObject.cpp: Removed.
698         * rendering/RenderSVGModelObject.h: Removed.
699         * rendering/RenderSVGResource.cpp: Removed.
700         * rendering/RenderSVGResource.h: Removed.
701         * rendering/RenderSVGResourceClipper.cpp: Removed.
702         * rendering/RenderSVGResourceClipper.h: Removed.
703         * rendering/RenderSVGResourceContainer.cpp: Removed.
704         * rendering/RenderSVGResourceContainer.h: Removed.
705         * rendering/RenderSVGResourceFilter.cpp: Removed.
706         * rendering/RenderSVGResourceFilter.h: Removed.
707         * rendering/RenderSVGResourceFilterPrimitive.cpp: Removed.
708         * rendering/RenderSVGResourceFilterPrimitive.h: Removed.
709         * rendering/RenderSVGResourceGradient.cpp: Removed.
710         * rendering/RenderSVGResourceGradient.h: Removed.
711         * rendering/RenderSVGResourceLinearGradient.cpp: Removed.
712         * rendering/RenderSVGResourceLinearGradient.h: Removed.
713         * rendering/RenderSVGResourceMarker.cpp: Removed.
714         * rendering/RenderSVGResourceMarker.h: Removed.
715         * rendering/RenderSVGResourceMasker.cpp: Removed.
716         * rendering/RenderSVGResourceMasker.h: Removed.
717         * rendering/RenderSVGResourcePattern.cpp: Removed.
718         * rendering/RenderSVGResourcePattern.h: Removed.
719         * rendering/RenderSVGResourceRadialGradient.cpp: Removed.
720         * rendering/RenderSVGResourceRadialGradient.h: Removed.
721         * rendering/RenderSVGResourceSolidColor.cpp: Removed.
722         * rendering/RenderSVGResourceSolidColor.h: Removed.
723         * rendering/RenderSVGRoot.cpp: Removed.
724         * rendering/RenderSVGRoot.h: Removed.
725         * rendering/RenderSVGShadowTreeRootContainer.cpp: Removed.
726         * rendering/RenderSVGShadowTreeRootContainer.h: Removed.
727         * rendering/RenderSVGTransformableContainer.cpp: Removed.
728         * rendering/RenderSVGTransformableContainer.h: Removed.
729         * rendering/RenderSVGViewportContainer.cpp: Removed.
730         * rendering/RenderSVGViewportContainer.h: Removed.
731         * rendering/SVGImageBufferTools.cpp: Removed.
732         * rendering/SVGImageBufferTools.h: Removed.
733         * rendering/SVGMarkerData.h: Removed.
734         * rendering/SVGMarkerLayoutInfo.cpp: Removed.
735         * rendering/SVGMarkerLayoutInfo.h: Removed.
736         * rendering/SVGRenderSupport.cpp: Removed.
737         * rendering/SVGRenderSupport.h: Removed.
738         * rendering/SVGRenderTreeAsText.cpp: Removed.
739         * rendering/SVGRenderTreeAsText.h: Removed.
740         * rendering/SVGResources.cpp: Removed.
741         * rendering/SVGResources.h: Removed.
742         * rendering/SVGResourcesCache.cpp: Removed.
743         * rendering/SVGResourcesCache.h: Removed.
744         * rendering/SVGResourcesCycleSolver.cpp: Removed.
745         * rendering/SVGResourcesCycleSolver.h: Removed.
746         * rendering/SVGShadowTreeElements.cpp: Removed.
747         * rendering/SVGShadowTreeElements.h: Removed.
748         * rendering/svg/RenderForeignObject.cpp: Copied from Source/WebCore/rendering/RenderForeignObject.cpp.
749         * rendering/svg/RenderForeignObject.h: Copied from Source/WebCore/rendering/RenderForeignObject.h.
750         * rendering/svg/RenderSVGAllInOne.cpp: Copied from Source/WebCore/rendering/RenderSVGAllInOne.cpp.
751         * rendering/svg/RenderSVGBlock.cpp: Copied from Source/WebCore/rendering/RenderSVGBlock.cpp.
752         * rendering/svg/RenderSVGBlock.h: Copied from Source/WebCore/rendering/RenderSVGBlock.h.
753         * rendering/svg/RenderSVGContainer.cpp: Copied from Source/WebCore/rendering/RenderSVGContainer.cpp.
754         * rendering/svg/RenderSVGContainer.h: Copied from Source/WebCore/rendering/RenderSVGContainer.h.
755         * rendering/svg/RenderSVGGradientStop.cpp: Copied from Source/WebCore/rendering/RenderSVGGradientStop.cpp.
756         * rendering/svg/RenderSVGGradientStop.h: Copied from Source/WebCore/rendering/RenderSVGGradientStop.h.
757         * rendering/svg/RenderSVGHiddenContainer.cpp: Copied from Source/WebCore/rendering/RenderSVGHiddenContainer.cpp.
758         * rendering/svg/RenderSVGHiddenContainer.h: Copied from Source/WebCore/rendering/RenderSVGHiddenContainer.h.
759         * rendering/svg/RenderSVGImage.cpp: Copied from Source/WebCore/rendering/RenderSVGImage.cpp.
760         * rendering/svg/RenderSVGImage.h: Copied from Source/WebCore/rendering/RenderSVGImage.h.
761         * rendering/svg/RenderSVGModelObject.cpp: Copied from Source/WebCore/rendering/RenderSVGModelObject.cpp.
762         * rendering/svg/RenderSVGModelObject.h: Copied from Source/WebCore/rendering/RenderSVGModelObject.h.
763         * rendering/svg/RenderSVGResource.cpp: Copied from Source/WebCore/rendering/RenderSVGResource.cpp.
764         * rendering/svg/RenderSVGResource.h: Copied from Source/WebCore/rendering/RenderSVGResource.h.
765         * rendering/svg/RenderSVGResourceClipper.cpp: Copied from Source/WebCore/rendering/RenderSVGResourceClipper.cpp.
766         * rendering/svg/RenderSVGResourceClipper.h: Copied from Source/WebCore/rendering/RenderSVGResourceClipper.h.
767         * rendering/svg/RenderSVGResourceContainer.cpp: Copied from Source/WebCore/rendering/RenderSVGResourceContainer.cpp.
768         * rendering/svg/RenderSVGResourceContainer.h: Copied from Source/WebCore/rendering/RenderSVGResourceContainer.h.
769         * rendering/svg/RenderSVGResourceFilter.cpp: Copied from Source/WebCore/rendering/RenderSVGResourceFilter.cpp.
770         * rendering/svg/RenderSVGResourceFilter.h: Copied from Source/WebCore/rendering/RenderSVGResourceFilter.h.
771         * rendering/svg/RenderSVGResourceFilterPrimitive.cpp: Copied from Source/WebCore/rendering/RenderSVGResourceFilterPrimitive.cpp.
772         * rendering/svg/RenderSVGResourceFilterPrimitive.h: Copied from Source/WebCore/rendering/RenderSVGResourceFilterPrimitive.h.
773         * rendering/svg/RenderSVGResourceGradient.cpp: Copied from Source/WebCore/rendering/RenderSVGResourceGradient.cpp.
774         * rendering/svg/RenderSVGResourceGradient.h: Copied from Source/WebCore/rendering/RenderSVGResourceGradient.h.
775         * rendering/svg/RenderSVGResourceLinearGradient.cpp: Copied from Source/WebCore/rendering/RenderSVGResourceLinearGradient.cpp.
776         * rendering/svg/RenderSVGResourceLinearGradient.h: Copied from Source/WebCore/rendering/RenderSVGResourceLinearGradient.h.
777         * rendering/svg/RenderSVGResourceMarker.cpp: Copied from Source/WebCore/rendering/RenderSVGResourceMarker.cpp.
778         * rendering/svg/RenderSVGResourceMarker.h: Copied from Source/WebCore/rendering/RenderSVGResourceMarker.h.
779         * rendering/svg/RenderSVGResourceMasker.cpp: Copied from Source/WebCore/rendering/RenderSVGResourceMasker.cpp.
780         * rendering/svg/RenderSVGResourceMasker.h: Copied from Source/WebCore/rendering/RenderSVGResourceMasker.h.
781         * rendering/svg/RenderSVGResourcePattern.cpp: Copied from Source/WebCore/rendering/RenderSVGResourcePattern.cpp.
782         * rendering/svg/RenderSVGResourcePattern.h: Copied from Source/WebCore/rendering/RenderSVGResourcePattern.h.
783         * rendering/svg/RenderSVGResourceRadialGradient.cpp: Copied from Source/WebCore/rendering/RenderSVGResourceRadialGradient.cpp.
784         * rendering/svg/RenderSVGResourceRadialGradient.h: Copied from Source/WebCore/rendering/RenderSVGResourceRadialGradient.h.
785         * rendering/svg/RenderSVGResourceSolidColor.cpp: Copied from Source/WebCore/rendering/RenderSVGResourceSolidColor.cpp.
786         * rendering/svg/RenderSVGResourceSolidColor.h: Copied from Source/WebCore/rendering/RenderSVGResourceSolidColor.h.
787         * rendering/svg/RenderSVGRoot.cpp: Copied from Source/WebCore/rendering/RenderSVGRoot.cpp.
788         * rendering/svg/RenderSVGRoot.h: Copied from Source/WebCore/rendering/RenderSVGRoot.h.
789         * rendering/svg/RenderSVGShadowTreeRootContainer.cpp: Copied from Source/WebCore/rendering/RenderSVGShadowTreeRootContainer.cpp.
790         * rendering/svg/RenderSVGShadowTreeRootContainer.h: Copied from Source/WebCore/rendering/RenderSVGShadowTreeRootContainer.h.
791         * rendering/svg/RenderSVGTransformableContainer.cpp: Copied from Source/WebCore/rendering/RenderSVGTransformableContainer.cpp.
792         * rendering/svg/RenderSVGTransformableContainer.h: Copied from Source/WebCore/rendering/RenderSVGTransformableContainer.h.
793         * rendering/svg/RenderSVGViewportContainer.cpp: Copied from Source/WebCore/rendering/RenderSVGViewportContainer.cpp.
794         * rendering/svg/RenderSVGViewportContainer.h: Copied from Source/WebCore/rendering/RenderSVGViewportContainer.h.
795         * rendering/svg/SVGImageBufferTools.cpp: Copied from Source/WebCore/rendering/SVGImageBufferTools.cpp.
796         * rendering/svg/SVGImageBufferTools.h: Copied from Source/WebCore/rendering/SVGImageBufferTools.h.
797         * rendering/svg/SVGMarkerData.h: Copied from Source/WebCore/rendering/SVGMarkerData.h.
798         * rendering/svg/SVGMarkerLayoutInfo.cpp: Copied from Source/WebCore/rendering/SVGMarkerLayoutInfo.cpp.
799         * rendering/svg/SVGMarkerLayoutInfo.h: Copied from Source/WebCore/rendering/SVGMarkerLayoutInfo.h.
800         * rendering/svg/SVGRenderSupport.cpp: Copied from Source/WebCore/rendering/SVGRenderSupport.cpp.
801         * rendering/svg/SVGRenderSupport.h: Copied from Source/WebCore/rendering/SVGRenderSupport.h.
802         * rendering/svg/SVGRenderTreeAsText.cpp: Copied from Source/WebCore/rendering/SVGRenderTreeAsText.cpp.
803         * rendering/svg/SVGRenderTreeAsText.h: Copied from Source/WebCore/rendering/SVGRenderTreeAsText.h.
804         * rendering/svg/SVGResources.cpp: Copied from Source/WebCore/rendering/SVGResources.cpp.
805         * rendering/svg/SVGResources.h: Copied from Source/WebCore/rendering/SVGResources.h.
806         * rendering/svg/SVGResourcesCache.cpp: Copied from Source/WebCore/rendering/SVGResourcesCache.cpp.
807         * rendering/svg/SVGResourcesCache.h: Copied from Source/WebCore/rendering/SVGResourcesCache.h.
808         * rendering/svg/SVGResourcesCycleSolver.cpp: Copied from Source/WebCore/rendering/SVGResourcesCycleSolver.cpp.
809         * rendering/svg/SVGResourcesCycleSolver.h: Copied from Source/WebCore/rendering/SVGResourcesCycleSolver.h.
810         * rendering/svg/SVGShadowTreeElements.cpp: Copied from Source/WebCore/rendering/SVGShadowTreeElements.cpp.
811         * rendering/svg/SVGShadowTreeElements.h: Copied from Source/WebCore/rendering/SVGShadowTreeElements.h.
812
813 2011-01-09  Xianzhu Wang  <phnixwxz@gmail.com>
814
815         Reviewed by Darin Fisher.
816
817         https://bugs.webkit.org/show_bug.cgi?id=41441
818         createWindow method should only do window-creating without URL navigation.
819         Let client APIs know which URL a new window will start with
820
821         * loader/FrameLoader.cpp:
822         (WebCore::createWindow):
823         * page/ContextMenuController.cpp:
824         (WebCore::openNewWindow):
825         * page/DOMWindow.cpp:
826         (WebCore::DOMWindow::createWindow):
827
828 2011-01-09  Dirk Schulze  <krit@webkit.org>
829
830         Unreviewed sort of Xcode project file.
831
832         * WebCore.xcodeproj/project.pbxproj:
833
834 2011-01-09  Amruth Raj  <amruthraj@motorola.com> and Ravi Phaneendra Kasibhatla  <ravi.kasibhatla@motorola.com>
835
836         Reviewed by Martin Robinson.
837
838         Changes to add Process Launcher and Thread Launcher implementation to the WebKit2 GTK port.
839         https://bugs.webkit.org/show_bug.cgi?id=48511
840
841         * platform/FileSystem.h: 
842         * platform/gtk/FileSystemGtk.cpp: Implement function to get a binary's path
843         (WebCore::applicationDirectoryPath):
844
845 2011-01-08  Martin Robinson  <mrobinson@igalia.com>
846
847         GTK+ Build fix. Add missing headers to the source list, fixing make dist.
848
849         No new tests. This is only a build change.
850
851         * GNUmakefile.am: Add missing headers to the source list.
852
853 2011-01-08 Amruth Raj  <amruthraj@motorola.com> and Ravi Phaneendra Kasibhatla  <ravi.kasibhatla@motorola.com>
854
855         Reviewed by Martin Robinson.
856
857         [GTK] WebKit2 GNUmakefile is out of date from trunk
858         https://bugs.webkit.org/show_bug.cgi?id=51883
859
860         Added stubs for WebKit2 compilation.
861
862         * platform/gtk/ContextMenuGtk.cpp:
863         (WebCore::contextMenuItemVector):
864         * platform/gtk/ContextMenuItemGtk.cpp:
865         (WebCore::ContextMenuItem::ContextMenuItem):
866         (WebCore::ContextMenuItem::checked):
867         (WebCore::ContextMenuItem::enabled):
868         * platform/network/soup/AuthenticationChallenge.h:
869         (WebCore::AuthenticationChallenge::authenticationClient):
870
871 2011-01-08  Helder Correia  <helder@sencha.com>
872
873         Reviewed by Simon Fraser.
874
875         Shadow is not drawn when filling a path with a gradient
876         https://bugs.webkit.org/show_bug.cgi?id=51982
877
878         This happens in CG and is related to bug 51869, this time to be fixed
879         in GraphicsContext::fillPath(const Path& path). We need to draw the
880         gradient clipped to the path on a CGLayer first, and then draw the
881         layer on the GraphicsContext.
882
883         Test: fast/canvas/canvas-fillPath-gradient-shadow.html
884
885         * platform/graphics/cg/GraphicsContextCG.cpp:
886         (WebCore::GraphicsContext::fillPath):
887
888 2011-01-08  Benjamin Poulain  <benjamin.poulain@nokia.com>
889
890         Reviewed by Kenneth Rohde Christiansen.
891
892         [Qt] PasteboardQt.cpp has coding-style errors
893         https://bugs.webkit.org/show_bug.cgi?id=39771
894
895         Update the code to follow the coding style.
896
897         * platform/qt/PasteboardQt.cpp:
898         (WebCore::Pasteboard::writeSelection):
899         (WebCore::Pasteboard::plainText):
900         (WebCore::Pasteboard::writePlainText):
901         (WebCore::Pasteboard::writeURL):
902
903 2011-01-08  Tony Gentilcore  <tonyg@chromium.org>
904
905         Reviewed by Eric Seidel.
906
907         HTML5 Conformance Test failure: approved/xhtml5/html_style_in_comment.xhtml
908         https://bugs.webkit.org/show_bug.cgi?id=48593
909
910         XHTML <style> blocks, unlike HTML <style> blocks, should respect HTML
911         comments.
912
913         Test: fast/parser/xhtml-html-comment-in-style-block.xhtml
914
915         * dom/StyleElement.cpp:
916         (WebCore::isValidStyleChild): Remove the COMMENT_NODE check as the HTML parser doesn't add COMMENT_NODEs as children of style blocks.
917         (WebCore::StyleElement::process): Factored out a condition that must remain in sync.
918
919 2011-01-08  Benjamin Poulain  <benjamin.poulain@nokia.com>
920
921         Reviewed by Kenneth Rohde Christiansen.
922
923         [Qt] Navigator.cookiesEnabled return true for Qt even if there is no cookie jar
924         https://bugs.webkit.org/show_bug.cgi?id=52081
925
926         Test for the availability of cookie jar to return if cookies are enabled or not. The network access
927         manager always exist, not the cookie jar.
928
929         * platform/qt/CookieJarQt.cpp:
930         (WebCore::cookiesEnabled):
931
932 2011-01-08  Charlie Reis  <creis@chromium.org>
933
934         Reviewed by Mihai Parparita.
935
936         Canceled frame loads can corrupt back forward list
937         https://bugs.webkit.org/show_bug.cgi?id=50254
938
939         Avoids changing m_currentItem until the navigation commits.
940         Also resets top-level history items if a subframe navigation is canceled.
941
942         * WebCore/loader/FrameLoader.cpp:
943         (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
944         * WebCore/loader/HistoryController.cpp:
945         * WebCore/loader/HistoryController.h:
946
947 2011-01-08  Chang Shu  <chang.shu@nokia.com>
948
949         Reviewed by Kenneth Rohde Christiansen.
950
951         Support createTouchList with Touch list for test automation.
952         Implemented JS/V8 custom functions for createTouchList.
953         https://bugs.webkit.org/show_bug.cgi?id=51196
954
955         * bindings/js/JSDocumentCustom.cpp:
956         (WebCore::JSDocument::createTouchList):
957         * bindings/v8/custom/V8DocumentCustom.cpp:
958         (WebCore::V8Document::createTouchListCallback):
959         * dom/Document.idl:
960         * dom/TouchEvent.cpp:
961         (WebCore::TouchEvent::initTouchEvent):
962
963 2011-01-08  Benjamin Poulain  <benjamin.poulain@nokia.com>
964
965         Reviewed by Kenneth Rohde Christiansen.
966
967         [Qt] CookieJarQt.cpp has coding-style errors
968         https://bugs.webkit.org/show_bug.cgi?id=39778
969
970         Improve the coding style of CookieJarQt.cpp.
971
972         * platform/qt/CookieJarQt.cpp:
973         (WebCore::networkAccessManager):
974         (WebCore::cookiesEnabled):
975
976 2011-01-08  Jeff Miller  <jeffm@apple.com>
977
978         Rubber-stamped by Dan Bernstein.
979
980         Fix QTMovieWin.vcproj to account for moving WebCore to Source\WebCore
981         https://bugs.webkit.org/show_bug.cgi?id=52114
982
983         * WebCore.vcproj/QTMovieWin.vcproj:
984         Add an extra .. to some InheritedPropertySheets entries since WebCore is now one level deeper.
985
986 2011-01-08  Dirk Schulze  <krit@webkit.org>
987
988         Reviewed by Mihai Parparita.
989
990         SVG rendering clean up according to the webkit style rules 2
991         https://bugs.webkit.org/show_bug.cgi?id=52112
992
993         Modified the style of the license of all files in WebCore/rendering/svg to match the style
994         in WebCore/svg. Cleaned up the code according to the webkit style rules.
995
996         No change of functionality. No test added.
997
998         * rendering/svg/RenderSVGInline.cpp:
999         * rendering/svg/RenderSVGInline.h:
1000         * rendering/svg/RenderSVGInlineText.cpp:
1001         * rendering/svg/RenderSVGInlineText.h:
1002         * rendering/svg/RenderSVGPath.cpp:
1003         * rendering/svg/RenderSVGPath.h:
1004         * rendering/svg/RenderSVGTSpan.cpp:
1005         * rendering/svg/RenderSVGTSpan.h:
1006         * rendering/svg/RenderSVGText.cpp:
1007         * rendering/svg/RenderSVGText.h:
1008         * rendering/svg/RenderSVGTextPath.cpp:
1009         * rendering/svg/RenderSVGTextPath.h:
1010         * rendering/svg/SVGInlineFlowBox.cpp:
1011         * rendering/svg/SVGInlineFlowBox.h:
1012         * rendering/svg/SVGInlineTextBox.cpp:
1013         * rendering/svg/SVGInlineTextBox.h:
1014         * rendering/svg/SVGRootInlineBox.cpp:
1015         * rendering/svg/SVGRootInlineBox.h:
1016         * rendering/svg/SVGTextLayoutEngineBaseline.cpp: Brace was misplaced accoring to check-webkit-style.
1017         (WebCore::SVGTextLayoutEngineBaseline::calculateGlyphOrientationAngle):
1018         * rendering/svg/SVGTextQuery.cpp:
1019         * rendering/svg/SVGTextQuery.h:
1020
1021 2011-01-08  Dirk Schulze  <krit@webkit.org>
1022
1023         Reviewed by Mihai Parparita.
1024
1025         SVG rendering clean up according to the webkit style rules
1026         https://bugs.webkit.org/show_bug.cgi?id=52107
1027
1028         Cleanup of the SVG rendering code according to the webbkit style rules.
1029         Changed style of licensing texts to match the style in WebCore/svg, no change
1030         of the licensing text itself.
1031
1032         * rendering/RenderForeignObject.cpp:
1033         * rendering/RenderForeignObject.h:
1034         * rendering/RenderSVGBlock.cpp:
1035         * rendering/RenderSVGBlock.h:
1036         * rendering/RenderSVGContainer.cpp:
1037         * rendering/RenderSVGContainer.h:
1038         * rendering/RenderSVGGradientStop.cpp:
1039         * rendering/RenderSVGGradientStop.h:
1040         * rendering/RenderSVGHiddenContainer.cpp:
1041         * rendering/RenderSVGHiddenContainer.h:
1042         (WebCore::RenderSVGHiddenContainer::renderName):
1043         (WebCore::RenderSVGHiddenContainer::isSVGHiddenContainer):
1044         (WebCore::RenderSVGHiddenContainer::requiresLayer):
1045         (WebCore::RenderSVGHiddenContainer::clippedOverflowRectForRepaint):
1046         * rendering/RenderSVGImage.cpp:
1047         * rendering/RenderSVGImage.h:
1048         * rendering/RenderSVGModelObject.h:
1049         * rendering/RenderSVGResource.cpp:
1050         * rendering/RenderSVGResource.h:
1051         * rendering/RenderSVGResourceClipper.cpp:
1052         * rendering/RenderSVGResourceClipper.h:
1053         * rendering/RenderSVGResourceContainer.cpp:
1054         * rendering/RenderSVGResourceContainer.h:
1055         * rendering/RenderSVGResourceFilter.cpp:
1056         * rendering/RenderSVGResourceFilter.h:
1057         * rendering/RenderSVGResourceFilterPrimitive.cpp:
1058         * rendering/RenderSVGResourceFilterPrimitive.h:
1059         * rendering/RenderSVGResourceGradient.cpp:
1060         * rendering/RenderSVGResourceGradient.h:
1061         * rendering/RenderSVGResourceLinearGradient.cpp:
1062         * rendering/RenderSVGResourceLinearGradient.h:
1063         * rendering/RenderSVGResourceMarker.cpp:
1064         * rendering/RenderSVGResourceMarker.h:
1065         * rendering/RenderSVGResourceMasker.cpp:
1066         * rendering/RenderSVGResourceMasker.h:
1067         * rendering/RenderSVGResourcePattern.cpp:
1068         * rendering/RenderSVGResourcePattern.h:
1069         * rendering/RenderSVGResourceRadialGradient.cpp:
1070         * rendering/RenderSVGResourceRadialGradient.h:
1071         * rendering/RenderSVGResourceSolidColor.cpp:
1072         * rendering/RenderSVGResourceSolidColor.h:
1073         * rendering/RenderSVGRoot.cpp:
1074         (WebCore::RenderSVGRoot::nodeAtPoint):
1075         * rendering/RenderSVGRoot.h:
1076         * rendering/RenderSVGShadowTreeRootContainer.cpp:
1077         * rendering/RenderSVGShadowTreeRootContainer.h:
1078         * rendering/RenderSVGTransformableContainer.cpp:
1079         (WebCore::RenderSVGTransformableContainer::calculateLocalTransform):
1080         * rendering/RenderSVGTransformableContainer.h:
1081         (WebCore::RenderSVGTransformableContainer::localToParentTransform):
1082         (WebCore::RenderSVGTransformableContainer::setNeedsTransformUpdate):
1083         (WebCore::RenderSVGTransformableContainer::localTransform):
1084         * rendering/RenderSVGViewportContainer.cpp:
1085         * rendering/RenderSVGViewportContainer.h:
1086         * rendering/SVGImageBufferTools.cpp:
1087         * rendering/SVGImageBufferTools.h:
1088         * rendering/SVGMarkerData.h:
1089         * rendering/SVGMarkerLayoutInfo.cpp:
1090         * rendering/SVGMarkerLayoutInfo.h:
1091         * rendering/SVGRenderSupport.cpp:
1092         * rendering/SVGRenderSupport.h:
1093         * rendering/SVGRenderTreeAsText.cpp:
1094         (WebCore::operator<<):
1095         * rendering/SVGRenderTreeAsText.h:
1096         * rendering/SVGResources.cpp:
1097         * rendering/SVGResources.h:
1098         * rendering/SVGResourcesCache.cpp:
1099         * rendering/SVGResourcesCache.h:
1100         * rendering/SVGResourcesCycleSolver.cpp:
1101         * rendering/SVGResourcesCycleSolver.h:
1102         * rendering/SVGShadowTreeElements.cpp:
1103         * rendering/SVGShadowTreeElements.h:
1104
1105 2011-01-07  Adam Barth  <abarth@webkit.org>
1106
1107         Rubber-stamped by Eric Seidel.
1108
1109         Move WebCore to Source
1110         https://bugs.webkit.org/show_bug.cgi?id=52050
1111
1112         Update project files to understand WebCore's new location.  I suspect
1113         there will be some follow-up patches after we land this patch.
1114
1115         * Android.derived.jscbindings.mk:
1116         * Android.jscbindings.mk:
1117         * Android.v8bindings.mk:
1118         * GNUmakefile.am:
1119         * WebCore.gyp/WebCore.gyp:
1120         * WebCore.pri:
1121         * WebCore.pro:
1122         * WebCore.vcproj/WebCore.vcproj:
1123         * WebCore.vcproj/WebCoreGeneratedCairo.vsprops:
1124         * WebCore.vcproj/WebCoreGeneratedCommon.vsprops:
1125
1126 2011-01-07  Justin Garcia  <justin.garcia@apple.com>
1127
1128         Reviewed by Dan Bernstein.
1129
1130         https://bugs.webkit.org/show_bug.cgi?id=51851
1131         Implement RenderSVGInlineText::localCaretRect()
1132
1133         * rendering/svg/RenderSVGInlineText.cpp:
1134         (WebCore::RenderSVGInlineText::localCaretRect): Implemented.
1135
1136 2011-01-07  Ryosuke Niwa  <rniwa@webkit.org>
1137
1138         Unreviewed; Added the missing null pointer check for r75293.
1139
1140         * dom/Document.cpp:
1141         (WebCore::Document::adoptNode):
1142
1143 2011-01-07  Stephanie Lewis  <slewis@apple.com>
1144
1145         Reviewed by Geoff Garen.
1146
1147          <rdar://problem/8649617> Migrate memory tracking from Safari to WebKit
1148         https://bugs.webkit.org/show_bug.cgi?id=50799 Add Memory Sampler to WebKit
1149         
1150         Add a sampler for printing off process memory statistics.
1151         Export file mode.
1152
1153         * WebCore.exp.in:
1154
1155 2011-01-06  Ryosuke Niwa  <rniwa@webkit.org>
1156
1157         Reviewed by Adam Barth.
1158
1159         onbeforeunload is broken for framesets
1160         https://bugs.webkit.org/show_bug.cgi?id=19418
1161
1162         Added beforeunload event support for sub frames. WebKit's implementation tries to match
1163         that of Internet Explorer as much as possible. beforeunload event is fired for each and
1164         every descendent of a frame that is about to navigate.
1165
1166         When a value other than null is returned by a beforeunload handler, a confirmation dialog
1167         is shown for each handler (calls chrome's runBeforeUnloadConfirmPanel) just like it is done
1168         for main frames.
1169
1170         In addition, navigation is forbidden while beforeunload handlers are being called.
1171         Setting values to location.href, location.reload, and other means of navigations are thus
1172         ignored while beforeunload event handler is being ran, matching Internet Explorer's behavior.
1173
1174         Because navigation needs to prevented globally, NavigationDisablerForBeforeUnload is added to
1175         NavigationScheduler.h, which is instantiated as a RAII object in FrameLoader::shouldClose.
1176
1177         Tests: fast/events/before-unload-adopt-subframe-to-outside.html
1178                fast/events/before-unload-adopt-within-subframes.html
1179                fast/events/before-unload-forbidden-navigation.html
1180                fast/events/before-unload-in-multiple-subframes.html
1181                fast/events/before-unload-in-subframe.html
1182                fast/events/before-unload-javascript-navigation.html
1183                fast/events/before-unload-remove-and-add-subframe.html
1184                fact/events/before-unload-remove-itself.html
1185                fast/events/before-unload-with-subframes.html
1186
1187        * loader/FrameLoader.cpp:
1188        (WebCore::FrameLoader::shouldClose): Calls fireBeforeUnloadEvent on m_frame and m_frame's
1189        descendents. Returns true only if every call to fireBeforeUnloadEvent returned true.
1190        (WebCore::FrameLoader::fireBeforeUnloadEvent): Fires a beforeunload event and calls
1191        chrome's runBeforeUnloadConfirmPanel as needed.
1192        (WebCore::FrameLoader::continueLoadAfterNavigationPolicy): Calls shouldClose for all frames.
1193        * loader/FrameLoader.h:
1194        * loader/NavigationScheduler.cpp:
1195        (WebCore::NavigationScheduler::shouldScheduleNavigation): Checks the nullity of Page and calls
1196        NavigationDisablerForBeforeUnload::isNavigationAllowed when url is not javascript scheme.
1197        (WebCore::NavigationScheduler::scheduleRedirect): Calls shouldScheduleNavigation.
1198        (WebCore::NavigationScheduler::scheduleLocationChange): Ditto.
1199        (WebCore::NavigationScheduler::scheduleRefresh): Ditto.
1200        (WebCore::NavigationScheduler::scheduleHistoryNavigation): Ditto.
1201        * loader/NavigationScheduler.h:
1202        (WebCore::NavigationDisablerForBeforeUnload::NavigationDisablerForBeforeUnload): Disables navigation.
1203        (WebCore::NavigationDisablerForBeforeUnload::~NavigationDisablerForBeforeUnload): Enables navigation
1204        when called on the last instance of NavigationDisablerForBeforeUnload.
1205        (WebCore::NavigationDisablerForBeforeUnload::isNavigationAllowed): Returns true if there are no instance
1206        of NavigationDisablerForBeforeUnload left on the stack.
1207
1208 2011-01-07  Martin Robinson  <mrobinson@igalia.com>
1209
1210         Build fix for GTK+.
1211
1212         * GNUmakefile.am: Add RenderFullScreen.cpp to the sources list.
1213         * rendering/RenderFullScreen.cpp:
1214         (RenderFullScreen::setAnimating): Guard the call to contentChanged
1215         with ENABLED(ACCELERATED_COMPOSITING).
1216
1217 2011-01-07  Ryosuke Niwa  <rniwa@webkit.org>
1218
1219         Unreviewed; speculative fix for Windows debug build.
1220
1221         * bindings/js/JSBindingsAllInOne.cpp:
1222
1223 2011-01-07  Ryosuke Niwa  <rniwa@webkit.org>
1224
1225         Reviewed by Ojan Vafai.
1226
1227         Adopting an iframe to a child frame results in stack overflow
1228         https://bugs.webkit.org/show_bug.cgi?id=52018
1229
1230         Throws an exception when a document adopts an iframe that is an ancestor
1231         of the document in the frame hierarchy. New behavior matches that of Firefox.
1232
1233         Test: fast/html/adopt-parent-frame.html
1234
1235         * dom/Document.cpp:
1236         (WebCore::Document::adoptNode):
1237
1238 2011-01-07  Mihai Parparita  <mihaip@chromium.org>
1239
1240         Reviewed by Darin Fisher.
1241
1242         [Chromium] Scrollbar code cleanup
1243         https://bugs.webkit.org/show_bug.cgi?id=52073
1244
1245         Scrollbar code cleanup:
1246         - Remove ScrollbarThemeMac.{mm|h} from the mac sources list, we use
1247           ScrollbarThemeChromiumMac.{mm|h}
1248         - Remove USE_WEB_THEME_ENGINE_TO_PAINT_THUMB #define now that switch to
1249           WebThemeEngine is permanent
1250         - Fix typo in Linux scrollbar enum name
1251
1252         No new tests (compiles).
1253
1254         * WebCore.gypi:
1255         * platform/chromium/ChromiumBridge.h:
1256         * platform/chromium/ScrollbarThemeChromiumLinux.cpp:
1257         (WebCore::ScrollbarThemeChromiumLinux::paintTrackPiece):
1258         * platform/chromium/ScrollbarThemeChromiumMac.mm:
1259         (WebCore::scrollbarStateToThemeState):
1260         (WebCore::ScrollbarThemeChromiumMac::paint):
1261
1262 2011-01-07  Jer Noble  <jer.noble@apple.com>
1263
1264         GTK Linux build fix: isDocumentRunningFullScreenAnimation should
1265         be protected both by ENABLE(FULLSCREEN_API) && USE(ACCELERATED_COMPOSITING)
1266
1267         * page/FrameView.cpp:
1268
1269 2011-01-07  Rafael Weinstein  <rafaelw@chromium.org>
1270
1271         Reviewed by Eric Seidel.
1272
1273         Cleanup: Fold shadowParentNode into shadowHost
1274         https://bugs.webkit.org/show_bug.cgi?id=51059
1275
1276         Replaces all uses of shadowParentNode.
1277
1278         No new tests because no behavior has changed.
1279
1280         * css/CSSStyleSelector.cpp:
1281         (WebCore::CSSStyleSelector::initForStyleResolve):
1282         * dom/Node.cpp:
1283         (WebCore::Node::shadowHost):
1284         (WebCore::Node::shadowAncestorNode):
1285         (WebCore::eventTargetRespectingSVGTargetRules):
1286         (WebCore::Node::getEventAncestors):
1287         * dom/Node.h:
1288         * editing/Editor.cpp:
1289         (WebCore::Editor::findString):
1290         * page/DragController.cpp:
1291         (WebCore::asFileInput):
1292         * page/EventHandler.cpp:
1293         (WebCore::EventHandler::handleMousePressEvent):
1294         (WebCore::instanceAssociatedWithShadowTreeElement):
1295         (WebCore::EventHandler::dispatchMouseEvent):
1296         * rendering/RenderBlock.cpp:
1297         (WebCore::RenderBlock::hasLineIfEmpty):
1298         * rendering/RenderSVGShadowTreeRootContainer.cpp:
1299         (WebCore::RenderSVGShadowTreeRootContainer::updateFromElement):
1300         * svg/SVGStyledElement.cpp:
1301         (WebCore::SVGStyledElement::title):
1302
1303 2011-01-07  Chris Marrin  <cmarrin@apple.com>
1304
1305         Unreviewed.
1306
1307         I mistakenly included a Windows only file in a
1308         cross platform file. 
1309
1310         * platform/graphics/ca/GraphicsLayerCA.cpp:
1311
1312 2011-01-07  Chris Marrin  <cmarrin@apple.com>
1313
1314         Unreviewed.
1315
1316         Get rid of include of <QuartzCore/QuartzCore.h>
1317
1318         * platform/graphics/ca/GraphicsLayerCA.cpp:
1319
1320 2011-01-07  Jer Noble  <jer.noble@apple.com>
1321
1322         Further build fixes.  Add a ENABLE(FULLSCREEN_API) guard around
1323         the implementation of requiresCompositingfForFullScreen.
1324
1325         * rendering/RenderLayerCompositor.cpp:
1326         (WebCore::RenderLayerCompositor::requiresCompositingForFullScreen):
1327
1328 2011-01-07  Jer Noble  <jer.noble@apple.com>
1329
1330         No review, build fix only.  Removed parameter who was causing
1331         a warning in Release builds.
1332
1333         * dom/Document.cpp:
1334         (WebCore::Document::webkitDidExitFullScreenForElement):
1335
1336 2011-01-07  Chris Marrin  <cmarrin@apple.com>
1337
1338         Unreviewed.
1339
1340         Use new wkCACFLayerGetContextUserData function
1341
1342         * platform/graphics/ca/win/PlatformCALayerWin.cpp:
1343
1344 2011-01-07  James Robinson  <jamesr@chromium.org>
1345
1346         Fix compile bustage due to bad merge in 75276.
1347
1348         * page/animation/AnimationController.cpp:
1349         (WebCore::AnimationControllerPrivate::beginAnimationUpdateTime):
1350
1351 2010-12-17  Jer Noble  <jer@kokode.apple.com>
1352
1353         Reviewed by Simon Fraser.
1354
1355         Implement WebKit Full Screen support.
1356         https://bugs.webkit.org/show_bug.cgi?id=49481
1357         rdar://problem/8247444
1358
1359         Mark for export all those WebCore functions needed by WebFullscreenController.
1360
1361         * WebCore.exp.in:
1362
1363 2010-12-17  Jer Noble  <jer@kokode.apple.com>
1364
1365         Reviewed by Simon Fraser.
1366
1367         Implement WebKit Full Screen support.
1368         https://bugs.webkit.org/show_bug.cgi?id=49481
1369         rdar://problem/8247444
1370         
1371         screenRect is useful for more than just HTMLMediaElements.  Promote it into
1372         Element.
1373
1374         * dom/Element.cpp: Moved into Element from HTMLMediaElement.
1375         * dom/Element.h: Ditto.
1376         * dom/Node.cpp:
1377         * html/HTMLMediaElement.cpp: Moved screenRect into Element.
1378         * html/HTMLMediaElement.h: Ditto.
1379         * WebCore.exp.in: Modify the exports list to reflect the new symbol name.
1380
1381 2010-12-17  Jer Noble  <jer@kokode.apple.com>
1382
1383         Reviewed by Simon Fraser.
1384
1385         Implement WebKit Full Screen support.
1386         https://bugs.webkit.org/show_bug.cgi?id=49481
1387         rdar://problem/8247444
1388
1389         The RenderFullScreen is intended to be used by clients of that API to allow a DOM subtree to
1390         be rendered outside its original Frame. Because of this, there are a few areas of the
1391         rendering code which need to be special cased: RenderFullScreen layers should not be clipped
1392         to the viewport, as they will almost always be rendering outside the viewport area;
1393         RenderFullScreen graphics layers should not be reparented by the RenderLayerCompositor, as
1394         the client will likely want to reparent the platformLayer into their own fullscreen platform
1395         window; the FrameView must update the RenderFullScreen graphics layer tree separately from
1396         the root layer, as the two trees are disconnected.
1397
1398         * page/FrameView.cpp:
1399         (WebCore::FrameView::updateCompositingLayers):  Special treatment for fullscreen renderer.
1400         (WebCore::FrameView::syncCompositingStateRecursive): Ditto.
1401         (WebCore::FrameView::paintContents): Ditto.
1402         * rendering/RenderLayer.h: Add a new ContentChangeType enum entry for FullScreen.
1403         * rendering/RenderLayer.cpp: 
1404         (WebCore::RenderLayer::contentChanged): Add support for above.
1405         * rendering/RenderLayerBacking.cpp:
1406         (WebCore::layerOrAncestorIsFullScreen): New function.
1407         (WebCore::RenderLayerBacking::updateCompositedBounds): Do not clip if the layerOrAncestorIsFullScreen.
1408         * rendering/RenderLayerCompositor.cpp:
1409         (WebCore::RenderLayerCompositor::rebuildCompositingLayerTree): Special treatment for fullscreen renderer.
1410         (WebCore::RenderLayerCompositor::requiresCompositingLayer): Ditto.
1411         (WebCore::RenderLayerCompositor::requiresCompositingForFullScreen): Ditto.
1412         * rendering/RenderLayerCompositor.h:
1413
1414 2010-12-17  Jer Noble  <jer@kokode.apple.com>
1415
1416         Reviewed by Simon Fraser.
1417
1418         Implemented non-accelerated fullscreen support.  The Document will now vend a RenderFullScreen object for clients to
1419         use to relocate the fullscreen element subtree.
1420
1421         https://bugs.webkit.org/show_bug.cgi?id=49481
1422         rdar://problem/8247444
1423
1424         * css/CSSStyleSelector.cpp:
1425         (WebCore::loadFullScreenRulesIfNeeded): Change webkitFullScreen -> webkitIsFullScreen.
1426         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): Ditto.
1427         * dom/Document.cpp:
1428         (WebCore::Document::Document): Initialize m_fullScreenRenderer.
1429         (WebCore::Document::detach): Call setFullScreenRenderer(0).
1430         (WebCore::Document::nodeWillBeRemoved): Replicate the logic in webkitWillEnterFullScreenForElement.
1431         (WebCore::Document::webkitWillEnterFullScreenForElement):  Detach the fullscreen element to cause
1432             a new RenderFullScreen renderer to be created with the new fullscreen element.
1433         (WebCore::Document::webkitDidEnterFullScreenForElement):  Notify clients of a fullscreen change
1434             here, rather in "willEnter", to avoid reentrancy problems when clients remove nodes in response
1435             to webkitfullscreenchange events.
1436         (WebCore::Document::webkitWillExitFullScreenForElement): Recalculate the fullscreen element's style.
1437         (WebCore::Document::webkitDidExitFullScreenForElement): Ditto.
1438         (WebCore::Document::setFullScreenRenderer): Accessor for m_fullScreenRenderer.
1439         (WebCore::Document::setFullScreenRendererSize): Set the style on the m_fullScreenRenderer with a new
1440             size; this keeps clients from having to access the renderer's style directly.
1441         (WebCore::Document::setFullScreenRendererBackgroundColor): Ditto.
1442         * dom/Document.h:
1443         (WebCore::Document::webkitIsFullScreen): Change webkitFullScreen -> webkitIsFullScreen.
1444         (WebCore::Document::fullScreenRenderer): Accessor.
1445         * dom/Document.idl:
1446         * dom/Node.cpp:
1447         (WebCore::Node::createRendererIfNeeded): If the document is in fullscreen mode, create a RenderFullScreen
1448             object to insert between the fullscreen element and its parent.
1449         * page/ChromeClient.h:
1450         (WebCore::ChromeClient::fullScreenRendererChanged): Added.
1451         * rendering/MediaControlElements.cpp:
1452         (WebCore::MediaControlFullscreenButtonElement::defaultEventHandler): Change webkitFullScreen -> webkitIsFullScreen.
1453
1454 2010-12-17  Jer Noble  <jer@kokode.apple.com>
1455
1456         Reviewed by Simon Fraser.
1457
1458         Implement WebKit Full Screen support.
1459         https://bugs.webkit.org/show_bug.cgi?id=49481
1460         rdar://problem/8247444
1461         
1462         This patch introduces a new RenderObject type: RenderFullScreen.  The RenderFullScreen renderer 
1463         will be used to implement new FullScreen APIs.  Because the RenderFullScreen object will be the
1464         parent of the current fullscreen element, the style rules for fullscreen objects must change to
1465         match.
1466         
1467         * WebCore.xcodeproj/project.pbxproj:
1468         * rendering/RenderFullScreen.cpp: Added.
1469         (RenderFullScreen::setAnimating): Sets the m_isAnimating flag.
1470         (RenderFullScreen::createFullScreenStyle): Returns a new RenderStyle containing the default stye
1471             for RenderFullScreen objects.
1472         * rendering/RenderFullScreen.h: Added.
1473         (WebCore::RenderFullScreen::isRenderFullScreen): Added.  Overrides the RenderObject version.
1474         * rendering/RenderObject.h:
1475         (WebCore::RenderObject::isRenderFullScreen): Added.  Used for type-checking RenderFullScreen objects.
1476         * css/fullscreen.css:  Modified the contained fullscreen styles.
1477
1478
1479 2011-01-07  James Robinson  <jamesr@chromium.org>
1480
1481         Revert "Implement mozilla's animationTime property"
1482         https://bugs.webkit.org/show_bug.cgi?id=51952
1483
1484         This approach isn't quite right.
1485
1486         * Android.mk:
1487         * CMakeLists.txt:
1488         * GNUmakefile.am:
1489         * WebCore.exp.in:
1490         * WebCore.gypi:
1491         * WebCore.pro:
1492         * WebCore.vcproj/WebCore.vcproj:
1493         * WebCore.xcodeproj/project.pbxproj:
1494         * page/DOMWindow.cpp:
1495         * page/DOMWindow.h:
1496         * page/DOMWindow.idl:
1497         * page/Frame.cpp:
1498         * page/Frame.h:
1499         * page/Page.cpp:
1500         (WebCore::Page::Page):
1501         * page/Page.h:
1502         * page/animation/AnimationController.cpp:
1503         (WebCore::AnimationControllerPrivate::beginAnimationUpdateTime):
1504         * page/animation/AnimationTimeController.cpp: Removed.
1505         * page/animation/AnimationTimeController.h: Removed.
1506
1507 2011-01-07  Jan Erik Hanssen  <jhanssen@sencha.com>
1508
1509         Reviewed by Andreas Kling.
1510
1511         [Qt] Black text on black buttons using a dark theme
1512         https://bugs.webkit.org/show_bug.cgi?id=35024
1513
1514         Implement RenderThemeQt::systemColor to apply the correct colors from the current Qt style.
1515
1516         * platform/qt/RenderThemeQt.cpp:
1517         (WebCore::RenderThemeQt::systemColor):
1518         * platform/qt/RenderThemeQt.h:
1519
1520 2011-01-05  Adrienne Walker  <enne@google.com>
1521
1522         Reviewed by Kenneth Russell.
1523
1524         Add WEBKIT_lose_context WebGL extension.
1525         https://bugs.webkit.org/show_bug.cgi?id=51492
1526
1527         Tests: fast/canvas/webgl/context-lost-restored.html
1528                fast/canvas/webgl/context-lost.html
1529
1530         * CMakeLists.txt:
1531         * DerivedSources.make:
1532         * GNUmakefile.am:
1533         * WebCore.gypi:
1534         * WebCore.pri:
1535         * WebCore.pro:
1536         * WebCore.xcodeproj/project.pbxproj:
1537         * bindings/js/JSWebGLRenderingContextCustom.cpp:
1538         (WebCore::toJS):
1539         (WebCore::JSWebGLRenderingContext::getSupportedExtensions):
1540         * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
1541         (WebCore::toV8Object):
1542         (WebCore::V8WebGLRenderingContext::getSupportedExtensionsCallback):
1543         * html/canvas/WebGLExtension.h:
1544         * html/canvas/WebGLRenderingContext.cpp:
1545         (WebCore::WebGLRenderingContext::WebGLRenderingContextRestoreTimer::fired):
1546         (WebCore::WebGLRenderingContext::getExtension):
1547         (WebCore::WebGLRenderingContext::getSupportedExtensions):
1548         (WebCore::WebGLRenderingContext::forceLostContext):
1549         (WebCore::WebGLRenderingContext::onLostContext):
1550         (WebCore::WebGLRenderingContext::getNumberOfExtensions):
1551         (WebCore::WebGLRenderingContext::getExtensionNumber):
1552         * html/canvas/WebGLRenderingContext.h:
1553         * html/canvas/WebKitLoseContext.cpp: Copied from WebCore/html/canvas/WebGLExtension.h.
1554         (WebCore::WebKitLoseContext::WebKitLoseContext):
1555         (WebCore::WebKitLoseContext::~WebKitLoseContext):
1556         (WebCore::WebKitLoseContext::getName):
1557         (WebCore::WebKitLoseContext::create):
1558         (WebCore::WebKitLoseContext::loseContext):
1559         * html/canvas/WebKitLoseContext.h: Copied from WebCore/html/canvas/WebGLExtension.h.
1560         * html/canvas/WebKitLoseContext.idl: Copied from WebCore/html/canvas/WebGLExtension.h.
1561
1562 2011-01-07  Chris Marrin  <cmarrin@apple.com>
1563
1564         Unreviewed.
1565
1566         Build fix for Chromium. Missing include.
1567
1568         * page/animation/AnimationBase.cpp:
1569
1570 2011-01-07  Chris Marrin  <cmarrin@apple.com>
1571
1572         Unreviewed.
1573
1574         Build fix.
1575
1576         * platform/graphics/ca/win/PlatformCALayerWin.cpp:
1577
1578 2011-01-06  Gavin Barraclough  <barraclough@apple.com>
1579
1580         Reviewed by Geoff Garen.
1581
1582         Bug 52035 - Unregistering DOMWrapperWorlds is unsafe
1583
1584         The method DOMWrapperWorld::unregisterWorld() effectively calls the DOMWrapperWorld's
1585         destructor early, in order to release wrappers once we know we no longer intend to use them.
1586         Whilst it is okay to have a method to throw away wrappers (assuming we know we're willing to
1587         lose any state stored on them) it is not okay to deregister the world from the JSGlobalData.
1588         A sequence of events that triggers the bug would look like this:
1589
1590         (1) Create a DOMWrapperWorld.
1591         (2) Register a timer in the world.
1592         (3) Call unregisterWorld() on the world.
1593         (4) Timer goes off, code is executed in the world, creates a Node not attached to a Document.
1594         (5) We attempt to lookup a wrapper map for the world on the JSGlobalData, but because we've
1595             called forgetWorld() none exists.
1596         (6) Attempt to add a wrapper to a NULL map.
1597
1598         Fix the problem by not removing the JSGlobalData's wrapper map until the world really goes away.
1599
1600         * WebCore.exp.in:
1601         * bindings/js/DOMWrapperWorld.cpp:
1602         (WebCore::DOMWrapperWorld::DOMWrapperWorld):
1603         (WebCore::DOMWrapperWorld::~DOMWrapperWorld):
1604         (WebCore::DOMWrapperWorld::clearWrappers):
1605         * bindings/js/DOMWrapperWorld.h:
1606
1607 2011-01-07  Chris Marrin  <cmarrin@apple.com>
1608
1609         Rubber-stamped by Simon Fraser.
1610
1611         Share code between Mac (CA) and Windows (CACF) GraphicsLayer implementations
1612         https://bugs.webkit.org/show_bug.cgi?id=49388
1613
1614         Final step in unifying GraphicsLayer logic across Win and Mac. This 
1615         implements the Windows side classes for PlatformCALayer and supporting
1616         classes. Also changed MediaPlayer to use new PlatformCALayerClient
1617         so it can use PlatformCALayer directly rather than a dummy GraphicsLayer.
1618         WKCACFLayerRenderer now does the task of notifying animations of their
1619         start time. Also commented out an assert in AnimationBase because
1620         AnimationController's frame time is not in sync with the new 
1621         AnimationTimeController. I've opened a new bug for that issue:
1622
1623             https://bugs.webkit.org/show_bug.cgi?id=52037
1624             
1625         This also includes the Mac side changes backed out in 
1626         http://trac.webkit.org/changeset/75227.
1627
1628         * WebCore.vcproj/WebCore.vcproj:
1629         * WebCore.vcproj/WebCoreCommon.vsprops:
1630         * WebCore.vcproj/copyForwardingHeaders.cmd:
1631         * WebCore.xcodeproj/project.pbxproj:
1632         * config.h:
1633         * page/animation/AnimationBase.cpp:
1634         (WebCore::AnimationBase::freezeAtTime):
1635         (WebCore::AnimationBase::getElapsedTime):
1636         * page/animation/AnimationController.cpp:
1637         (WebCore::AnimationControllerPrivate::beginAnimationUpdateTime):
1638         * page/animation/KeyframeAnimation.cpp:
1639         (WebCore::KeyframeAnimation::fetchIntervalEndpointsForProperty):
1640         * platform/graphics/GraphicsLayer.h:
1641         (WebCore::GraphicsLayer::layerDidDisplay):
1642         (WebCore::GraphicsLayer::showDebugBorders):
1643         (WebCore::GraphicsLayer::showRepaintCounter):
1644         * platform/graphics/ca/GraphicsLayerCA.cpp:
1645         (WebCore::GraphicsLayerCA::platformCALayerAnimationStarted):
1646         (WebCore::GraphicsLayerCA::setContentsToImage):
1647         (WebCore::GraphicsLayerCA::setContentsToMedia):
1648         (WebCore::GraphicsLayerCA::layerDidDisplay):
1649         (WebCore::GraphicsLayerCA::updateSublayerList):
1650         * platform/graphics/ca/GraphicsLayerCA.h:
1651         (WebCore::GraphicsLayerCA::platformCALayer):
1652         (WebCore::GraphicsLayerCA::platformCALayerLayoutSublayersOfLayer):
1653         (WebCore::GraphicsLayerCA::platformCALayerRespondsToLayoutChanges):
1654         (WebCore::GraphicsLayerCA::platformCALayerContentsOrientation):
1655         (WebCore::GraphicsLayerCA::platformCALayerPaintContents):
1656         (WebCore::GraphicsLayerCA::platformCALayerShowDebugBorders):
1657         (WebCore::GraphicsLayerCA::platformCALayerShowRepaintCounter):
1658         (WebCore::GraphicsLayerCA::platformCALayerIncrementRepaintCount):
1659         (WebCore::GraphicsLayerCA::platformCALayerContentsOpaque):
1660         (WebCore::GraphicsLayerCA::platformCALayerDrawsContent):
1661         (WebCore::GraphicsLayerCA::platformCALayerLayerDidDisplay):
1662         * platform/graphics/ca/PlatformCAAnimation.h:
1663         * platform/graphics/ca/PlatformCALayer.h:
1664         (WebCore::PlatformCALayer::owner):
1665         (WebCore::PlatformCALayer::animationStarted):
1666         * platform/graphics/ca/PlatformCALayerClient.h: Copied from WebCore/platform/graphics/ca/PlatformCALayerClient.h.
1667         * platform/graphics/ca/mac/PlatformCALayerMac.mm:
1668         (PlatformCALayer::setOwner):
1669         (PlatformCALayer::create):
1670         (PlatformCALayer::PlatformCALayer):
1671         (PlatformCALayer::contents):
1672         (PlatformCALayer::setContents):
1673         * platform/graphics/ca/win: Added.
1674         * platform/graphics/ca/win/PlatformCAAnimationWin.cpp: Added.
1675         * platform/graphics/ca/win/PlatformCALayerWin.cpp: Added.
1676         * platform/graphics/ca/win/PlatformCALayerWinInternal.cpp: Added.
1677         * platform/graphics/ca/win/PlatformCALayerWinInternal.h: Added.
1678         (WebCore::PlatformCALayerWinInternal::owner):
1679         * platform/graphics/mac/WebGLLayer.mm:
1680         (-[WebGLLayer display]):
1681         * platform/graphics/mac/WebLayer.h:
1682         * platform/graphics/mac/WebLayer.mm:
1683         (drawLayerContents):
1684         (setLayerNeedsDisplayInRect):
1685         (-[WebLayer setNeedsDisplay]):
1686         (-[WebLayer display]):
1687         * platform/graphics/mac/WebTiledLayer.mm:
1688         (-[WebTiledLayer setNeedsDisplay]):
1689         (-[WebTiledLayer display]):
1690         * platform/graphics/win/GraphicsContextCGWin.cpp:
1691         (WebCore::CGContextWithHDC):
1692         * platform/graphics/win/MediaPlayerPrivateFullscreenWindow.cpp:
1693         (WebCore::MediaPlayerPrivateFullscreenWindow::setRootChildLayer):
1694         (WebCore::MediaPlayerPrivateFullscreenWindow::wndProc):
1695         * platform/graphics/win/MediaPlayerPrivateFullscreenWindow.h:
1696         (WebCore::MediaPlayerPrivateFullscreenWindow::rootChildLayer):
1697         * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
1698         (WebCore::MediaPlayerPrivateQuickTimeVisualContext::LayerClient::~LayerClient):
1699         (WebCore::MediaPlayerPrivateQuickTimeVisualContext::LayerClient::platformCALayerRespondsToLayoutChanges):
1700         (WebCore::MediaPlayerPrivateQuickTimeVisualContext::LayerClient::platformCALayerAnimationStarted):
1701         (WebCore::MediaPlayerPrivateQuickTimeVisualContext::LayerClient::platformCALayerContentsOrientation):
1702         (WebCore::MediaPlayerPrivateQuickTimeVisualContext::LayerClient::platformCALayerPaintContents):
1703         (WebCore::MediaPlayerPrivateQuickTimeVisualContext::LayerClient::platformCALayerShowDebugBorders):
1704         (WebCore::MediaPlayerPrivateQuickTimeVisualContext::LayerClient::platformCALayerShowRepaintCounter):
1705         (WebCore::MediaPlayerPrivateQuickTimeVisualContext::LayerClient::platformCALayerIncrementRepaintCount):
1706         (WebCore::MediaPlayerPrivateQuickTimeVisualContext::LayerClient::platformCALayerContentsOpaque):
1707         (WebCore::MediaPlayerPrivateQuickTimeVisualContext::LayerClient::platformCALayerDrawsContent):
1708         (WebCore::MediaPlayerPrivateQuickTimeVisualContext::LayerClient::platformCALayerLayerDidDisplay):
1709         (WebCore::MediaPlayerPrivateQuickTimeVisualContext::LayerClient::platformCALayerLayoutSublayersOfLayer):
1710         (WebCore::MediaPlayerPrivateQuickTimeVisualContext::MediaPlayerPrivateQuickTimeVisualContext):
1711         (WebCore::MediaPlayerPrivateQuickTimeVisualContext::platformMedia):
1712         (WebCore::MediaPlayerPrivateQuickTimeVisualContext::retrieveCurrentImage):
1713         (WebCore::MediaPlayerPrivateQuickTimeVisualContext::createLayerForMovie):
1714         * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.h:
1715         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
1716         (WebCore::MediaPlayerPrivate::movieNewImageAvailable):
1717         (WebCore::MediaPlayerPrivate::createLayerForMovie):
1718         * platform/graphics/win/WKCACFLayerRenderer.cpp:
1719         (WebCore::WKCACFLayerRenderer::WKCACFLayerRenderer):
1720         (WebCore::WKCACFLayerRenderer::rootLayer):
1721         (WebCore::WKCACFLayerRenderer::addPendingAnimatedLayer):
1722         (WebCore::WKCACFLayerRenderer::setRootChildLayer):
1723         (WebCore::WKCACFLayerRenderer::setNeedsDisplay):
1724         (WebCore::WKCACFLayerRenderer::destroyRenderer):
1725         (WebCore::WKCACFLayerRenderer::render):
1726         * platform/graphics/win/WKCACFLayerRenderer.h:
1727         (WebCore::WKCACFLayerRendererClient::animationsStarted):
1728         (WebCore::WKCACFLayerRendererClient::syncCompositingState):
1729         * rendering/RenderLayerBacking.cpp:
1730         (WebCore::RenderLayerBacking::showDebugBorders):
1731         (WebCore::RenderLayerBacking::showRepaintCounter):
1732         * rendering/RenderLayerCompositor.cpp:
1733         (WebCore::RenderLayerCompositor::ensureRootPlatformLayer):
1734         * rendering/RenderLayerCompositor.h:
1735         (WebCore::RenderLayerCompositor::compositorShowDebugBorders):
1736         (WebCore::RenderLayerCompositor::compositorShowRepaintCounter):
1737         (WebCore::RenderLayerCompositor::notifyAnimationStarted):
1738         (WebCore::RenderLayerCompositor::notifySyncRequired):
1739         (WebCore::RenderLayerCompositor::paintContents):
1740         (WebCore::RenderLayerCompositor::showDebugBorders):
1741         (WebCore::RenderLayerCompositor::showRepaintCounter):
1742
1743 2011-01-07  Nate Chapin  <japhet@chromium.org>
1744
1745         Reviewed by Darin Fisher.
1746
1747         Let PingLoader send cookies if FrameLoaderClient permits it.
1748         https://bugs.webkit.org/show_bug.cgi?id=51898
1749
1750         Test: http/tests/navigation/ping-cookie.html
1751
1752         * loader/PingLoader.cpp:
1753         (WebCore::PingLoader::PingLoader): Set m_shouldUseCredentialStorage
1754             at load start time, since we won't be able to call 
1755             FrameLoaderClient::shouldUseCredentialStorage() later.
1756         * loader/PingLoader.h:
1757         (WebCore::PingLoader::shouldUseCredentialStorage):
1758
1759 2011-01-07  Xan Lopez  <xlopez@igalia.com>
1760
1761         Unreviewed, rolling out r75256.
1762         http://trac.webkit.org/changeset/75256
1763         https://bugs.webkit.org/show_bug.cgi?id=50869
1764
1765         Broke GTK+ canvas tests
1766
1767         * platform/graphics/cairo/PathCairo.cpp:
1768         (WebCore::Path::addArc):
1769
1770 2011-01-07  Carlos Garcia Campos  <cgarcia@igalia.com>
1771
1772         Reviewed by Martin Robinson.
1773
1774         [GTK] Port scrollbar painting to GtkStyleContext
1775         https://bugs.webkit.org/show_bug.cgi?id=52051
1776
1777         Use GtkStyleContext API to paint scrollbars when building with
1778         GTK+ 3.x.
1779
1780         No new tests. This should not change functionality.
1781
1782         * platform/gtk/RenderThemeGtk.h:
1783         * platform/gtk/RenderThemeGtk3.cpp:
1784         (WebCore::RenderThemeGtk::gtkScrollbarStyle):
1785         * platform/gtk/ScrollbarThemeGtk.cpp:
1786         * platform/gtk/ScrollbarThemeGtk.h:
1787         * platform/gtk/ScrollbarThemeGtk2.cpp:
1788         (WebCore::gtkStyleSetCallback):
1789         (WebCore::ScrollbarThemeGtk::ScrollbarThemeGtk):
1790         * platform/gtk/ScrollbarThemeGtk3.cpp:
1791         (WebCore::gtkStyleChangedCallback):
1792         (WebCore::ScrollbarThemeGtk::ScrollbarThemeGtk):
1793         (WebCore::ScrollbarThemeGtk::updateThemeProperties):
1794         (WebCore::ScrollbarThemeGtk::paintTrackBackground):
1795         (WebCore::ScrollbarThemeGtk::paintScrollbarBackground):
1796         (WebCore::ScrollbarThemeGtk::paintThumb):
1797         (WebCore::ScrollbarThemeGtk::paintButton):
1798
1799 2011-01-07  Dan Bernstein  <mitz@apple.com>
1800
1801         Reviewed by Darin Adler.
1802
1803         <rdar://problem/8783318> Text emphasis marks should not appear over characters that have ruby annotations
1804         https://bugs.webkit.org/show_bug.cgi?id=51267
1805
1806         Test: fast/text/emphasis-avoid-ruby.html
1807
1808         * rendering/InlineFlowBox.cpp:
1809         (WebCore::InlineFlowBox::placeBoxesInBlockDirection): Use getEmphasisMarkPosition() to check if
1810         there are text emphasis marks.
1811         (WebCore::InlineFlowBox::addTextBoxVisualOverflow): Ditto.
1812         (WebCore::InlineFlowBox::computeOverAnnotationAdjustment): Ditto.
1813         * rendering/InlineTextBox.cpp:
1814         (WebCore::InlineTextBox::getEmphasisMarkPosition): Added. Returns true and sets the emphasis mark
1815         position if the text is style with emphasis marks and there isn’t a ruby annotation that should
1816         suppress them. Otherwise returns false.
1817         (WebCore::InlineTextBox::paint): Use getEmphasisMarkPosition() to check if emphasis marks should
1818         be painted.
1819         * rendering/InlineTextBox.h:
1820
1821 2011-01-07  Alejandro G. Castro  <alex@igalia.com>
1822
1823         Reviewed by Martin Robinson.
1824
1825         [cairo] Rendering a lot of arcs on top of each other causes time
1826         outs in some tests
1827         https://bugs.webkit.org/show_bug.cgi?id=50869
1828
1829         We avoid the situation where we have to render the same arc
1830         multiple times over itself. Now it renders just one oval and
1831         moves to the end angle.
1832
1833         * platform/graphics/cairo/PathCairo.cpp:
1834         (WebCore::Path::addArc):
1835
1836 2011-01-07  Carlos Garcia Campos  <cgarcia@igalia.com>
1837
1838         Reviewed by Martin Robinson.
1839
1840         [GTK] Port buttons painting to GtkStyleContext
1841         https://bugs.webkit.org/show_bug.cgi?id=51812
1842
1843         Use GtkStyleContext API to paint buttons when building with GTK+
1844         3.x.
1845
1846         No new tests. This should not change functionality.
1847
1848         * platform/gtk/RenderThemeGtk3.cpp:
1849         (WebCore::adjustRectForFocus):
1850         (WebCore::RenderThemeGtk::adjustRepaintRect):
1851         (WebCore::RenderThemeGtk::paintButton):
1852
1853 2011-01-07  Zhenyao Mo  <zmo@google.com>
1854
1855         Unreviewed, build fix.
1856
1857         * html/canvas/WebGLRenderingContext.cpp:
1858         (WebCore::WebGLRenderingContext::copyTexSubImage2D):
1859
1860 2011-01-06  Zhenyao Mo  <zmo@google.com>
1861
1862         Reviewed by Kenneth Russell.
1863
1864         copyTexSubImage2D shouldn't have undefined pixels
1865         https://bugs.webkit.org/show_bug.cgi?id=51559
1866
1867         * html/canvas/WebGLRenderingContext.cpp:
1868         (WebCore::WebGLRenderingContext::copyTexImage2D): Refactor to share some code with copyTexSubImage2D through helper function clip2D.
1869         (WebCore::WebGLRenderingContext::copyTexSubImage2D): Initialize undefined pixels to 0.
1870         (WebCore::WebGLRenderingContext::validateTexFuncLevel): Seperate the validation of level from validateTexFuncParameters.
1871         (WebCore::WebGLRenderingContext::validateTexFuncParameters): Ditto.
1872         * html/canvas/WebGLRenderingContext.h:
1873         * html/canvas/WebGLTexture.cpp:
1874         (WebCore::WebGLTexture::getType): Expose the type of a texture.
1875         * html/canvas/WebGLTexture.h:
1876
1877 2011-01-07  Takashi Toyoshima  <toyoshim@google.com>
1878
1879         Reviewed by Kenneth Russell.
1880
1881         cleanupAfterGraphicsCall() is never called in
1882         WebGLRenderingContext::checkFramebufferStatus()
1883         https://bugs.webkit.org/show_bug.cgi?id=51668
1884
1885         No new tests. This is a trivial bug.
1886
1887         * html/canvas/WebGLRenderingContext.cpp:
1888         (WebCore::WebGLRenderingContext::checkFramebufferStatus):
1889
1890 2011-01-07  Mario Sanchez Prada  <msanchez@igalia.com>
1891
1892         Reviewed by Chris Fleizach.
1893
1894         GTK: AX: atk tests need to be updated after recent changes
1895         https://bugs.webkit.org/show_bug.cgi?id=51932
1896
1897         Make sure we can always get the right accesssible parent for an
1898         AtkObject when traversing the hierarchy bottom up.
1899
1900         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
1901         (isRootObject): New function to check whether an
1902         AccessibilityObject is the root one or not, according to the
1903         latest changes in the hierarchy.
1904         (atkParentOfRootObject): Gets the appropriate AtkObject from GTK's
1905         GAIL as the parent of the root AtkObject from WebCore.
1906         (webkit_accessible_get_parent): Use atkParentOfRootObject.
1907         (webkit_accessible_get_index_in_parent): Ditto.
1908         (atkRole): Expose AccessibilityObjects with ScrollAreaRole as
1909         AtkObject's of role ATK_ROLE_SCROLLED_PANE.
1910
1911 2011-01-07  Zhenyao Mo  <zmo@google.com>
1912
1913         Unreviewed, Mac 32-bit build fix.
1914         Use float instead of double in GL function arguments to avoid implicit type down casting.
1915
1916         * html/canvas/WebGLRenderingContext.cpp:
1917         (WebCore::WebGLRenderingContext::blendColor):
1918         (WebCore::WebGLRenderingContext::clearColor):
1919         (WebCore::WebGLRenderingContext::clearDepth):
1920         (WebCore::WebGLRenderingContext::depthRange):
1921         (WebCore::WebGLRenderingContext::lineWidth):
1922         (WebCore::WebGLRenderingContext::polygonOffset):
1923         (WebCore::WebGLRenderingContext::sampleCoverage):
1924         * html/canvas/WebGLRenderingContext.h:
1925         * html/canvas/WebGLRenderingContext.idl:
1926
1927 2011-01-07  Carlos Garcia Campos  <cgarcia@igalia.com> and Martin Robinson  <mrobinson@igalia.com>
1928
1929         Reviewed by Xan Lopez.
1930
1931         [GTK] Port slider painting to GtkStyleContext
1932         https://bugs.webkit.org/show_bug.cgi?id=51874
1933
1934         Use GtkStyleContext API to paint sliders when building with GTK+
1935         3.x. Also move the code to adjust media slider to its own method
1936         in RenderThemeGtk.cpp since it's common to both gtk 2 and 3.
1937
1938         No new tests. This should not change functionality.
1939
1940         * platform/gtk/RenderThemeGtk.cpp:
1941         (WebCore::RenderThemeGtk::adjustMediaSliderThumbSize):
1942         * platform/gtk/RenderThemeGtk.h:
1943         * platform/gtk/RenderThemeGtk2.cpp:
1944         (WebCore::RenderThemeGtk::adjustSliderThumbSize):
1945         * platform/gtk/RenderThemeGtk3.cpp:
1946         (WebCore::RenderThemeGtk::paintSliderTrack):
1947         (WebCore::RenderThemeGtk::paintSliderThumb):
1948         (WebCore::RenderThemeGtk::adjustSliderThumbSize):
1949
1950 2011-01-07  Benjamin Poulain  <benjamin.poulain@nokia.com>
1951
1952         Reviewed by Andreas Kling.
1953
1954         [Qt] [WK2] QtWebKit does not build in debug, FileReader.cpp does not compile
1955         https://bugs.webkit.org/show_bug.cgi?id=51992
1956
1957         Add the missing header. CString is used in debug by the calls to LOG().
1958
1959         * fileapi/FileReader.cpp:
1960
1961 2011-01-07  Alejandro G. Castro  <alex@igalia.com>
1962
1963         Reviewed by Martin Robinson.
1964
1965         Cairo's ContextShadow may mis-render some box shadows
1966         https://bugs.webkit.org/show_bug.cgi?id=51374
1967
1968         The space required for the internal shadow of the corners was not
1969         correctly considered.
1970
1971         * platform/graphics/cairo/ContextShadowCairo.cpp:
1972         (WebCore::ContextShadow::drawRectShadow):
1973
1974 2011-01-06  Adam Barth  <abarth@webkit.org>
1975
1976         Reviewed by Darin Adler.
1977
1978         REGRESSION (r74663): ASSERTION FAILED: m_tokenizer->lineNumber() == line.zeroBasedInt()
1979         https://bugs.webkit.org/show_bug.cgi?id=52013
1980
1981         When excluding line numbers for composite strings, we forgot to exclude
1982         the line number for the current string!
1983
1984         Test: fast/parser/line-number-composite-segmented-string.html
1985
1986         * platform/text/SegmentedString.cpp:
1987         (WebCore::SegmentedString::setExcludeLineNumbers):
1988
1989 2011-01-06  Chris Marrin  <cmarrin@apple.com>
1990
1991         Unreviewed.
1992
1993         Back out changes in http://trac.webkit.org/changeset/75199
1994         This breaks the Windows build. Fixing it on that side. Until
1995         then I'll back this out.
1996
1997 2011-01-06  Jenn Braithwaite  <jennb@chromium.org>
1998
1999         Reviewed by Dmitry Titov.
2000
2001         When a live frame is moved between pages, some plug-in DOM methods cease to function
2002         https://bugs.webkit.org/show_bug.cgi?id=45770
2003
2004         Test: fast/frames/iframe-reparenting-plugins.html
2005
2006         * page/Frame.cpp:
2007         (WebCore::Frame::~Frame):
2008         (WebCore::Frame::addObserver):
2009         (WebCore::Frame::removeObserver):
2010         * page/Frame.h:
2011         (WebCore::FrameDestructionObserver::~FrameDestructionObserver):
2012         Added observer to be notified when frame is destroyed.
2013         * page/Page.cpp:
2014         (WebCore::Page::~Page):
2015         (WebCore::Page::refreshPlugins):
2016         PluginData no longer stores page pointer.
2017         * plugins/DOMMimeType.cpp:
2018         (WebCore::DOMMimeType::DOMMimeType):
2019         (WebCore::DOMMimeType::~DOMMimeType):
2020         (WebCore::DOMMimeType::enabledPlugin):
2021         * plugins/DOMMimeType.h:
2022         (WebCore::DOMMimeType::create):
2023         (WebCore::DOMMimeType::frameDestroyed):
2024         Store frame instead of page pointer in DOMMimeType.
2025         * plugins/DOMMimeTypeArray.cpp:
2026         (WebCore::DOMMimeTypeArray::item):
2027         (WebCore::DOMMimeTypeArray::namedItem):
2028         Provide frame to create DOMMimeType.
2029         * plugins/DOMPlugin.cpp:
2030         (WebCore::DOMPlugin::DOMPlugin):
2031         (WebCore::DOMPlugin::~DOMPlugin):
2032         (WebCore::DOMPlugin::item):
2033         (WebCore::DOMPlugin::namedItem):
2034         * plugins/DOMPlugin.h:
2035         (WebCore::DOMPlugin::create):
2036         (WebCore::DOMPlugin::frameDestroyed):
2037         Store frame instead of page pointer in DOMPlugin.
2038         * plugins/DOMPluginArray.cpp:
2039         (WebCore::DOMPluginArray::item):
2040         (WebCore::DOMPluginArray::namedItem):
2041         Provide frame to create DOMPlugin.
2042         * plugins/PluginData.cpp:
2043         (WebCore::PluginData::PluginData):
2044         (WebCore::PluginData::initPlugins):
2045         * plugins/PluginData.h:
2046         No longer stores a pointer to the page.
2047         Added page parameter to initPlugins.
2048         * plugins/PluginDataNone.cpp:
2049         (WebCore::PluginData::initPlugins):
2050         * plugins/chromium/PluginDataChromium.cpp:
2051         (WebCore::PluginData::initPlugins):
2052         * plugins/gtk/PluginDataGtk.cpp:
2053         (WebCore::PluginData::initPlugins):
2054         * plugins/wx/PluginDataWx.cpp:
2055         (WebCore::PluginData::initPlugins):
2056         Updated platforms to add (unused) page parameter to initPlugins.
2057
2058 2011-01-05  Zhenyao Mo  <zmo@google.com>
2059
2060         Reviewed by Kenneth Russell.
2061
2062         Define GC3D types to match GL types and use them in GraphicsContext3D
2063         https://bugs.webkit.org/show_bug.cgi?id=45557
2064
2065         * html/canvas/WebGLRenderingContext.cpp:
2066         (WebCore::WebGLRenderingContext::readPixels):
2067         (WebCore::WebGLRenderingContext::validateTexFuncData):
2068         * platform/graphics/GraphicsContext3D.cpp:
2069         (WebCore::GraphicsContext3D::texImage2DResourceSafe):
2070         (WebCore::GraphicsContext3D::computeFormatAndTypeParameters):
2071         (WebCore::GraphicsContext3D::extractImageData):
2072         (WebCore::GraphicsContext3D::extractTextureData):
2073         * platform/graphics/GraphicsContext3D.h:
2074         * platform/graphics/cg/GraphicsContext3DCG.cpp:
2075         (WebCore::GraphicsContext3D::getImageData):
2076         * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
2077         (WebCore::SharedGraphicsContext3D::enable):
2078         (WebCore::SharedGraphicsContext3D::disable):
2079         (WebCore::SharedGraphicsContext3D::clear):
2080         (WebCore::SharedGraphicsContext3D::drawArrays):
2081         (WebCore::SharedGraphicsContext3D::getError):
2082         (WebCore::SharedGraphicsContext3D::getIntegerv):
2083         (WebCore::SharedGraphicsContext3D::createFramebuffer):
2084         (WebCore::SharedGraphicsContext3D::createTexture):
2085         (WebCore::SharedGraphicsContext3D::deleteFramebuffer):
2086         (WebCore::SharedGraphicsContext3D::deleteTexture):
2087         (WebCore::SharedGraphicsContext3D::framebufferTexture2D):
2088         (WebCore::SharedGraphicsContext3D::texParameteri):
2089         (WebCore::SharedGraphicsContext3D::texImage2D):
2090         (WebCore::SharedGraphicsContext3D::texSubImage2D):
2091         (WebCore::SharedGraphicsContext3D::readPixels):
2092         (WebCore::SharedGraphicsContext3D::setActiveTexture):
2093         (WebCore::SharedGraphicsContext3D::bindTexture):
2094         (WebCore::SharedGraphicsContext3D::bindFramebuffer):
2095         * platform/graphics/gpu/SharedGraphicsContext3D.h:
2096         * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
2097         (WebCore::GraphicsContext3D::activeTexture):
2098         (WebCore::GraphicsContext3D::attachShader):
2099         (WebCore::GraphicsContext3D::bindAttribLocation):
2100         (WebCore::GraphicsContext3D::bindBuffer):
2101         (WebCore::GraphicsContext3D::bindFramebuffer):
2102         (WebCore::GraphicsContext3D::bindRenderbuffer):
2103         (WebCore::GraphicsContext3D::bindTexture):
2104         (WebCore::GraphicsContext3D::blendColor):
2105         (WebCore::GraphicsContext3D::blendEquation):
2106         (WebCore::GraphicsContext3D::blendEquationSeparate):
2107         (WebCore::GraphicsContext3D::blendFunc):
2108         (WebCore::GraphicsContext3D::blendFuncSeparate):
2109         (WebCore::GraphicsContext3D::bufferData):
2110         (WebCore::GraphicsContext3D::bufferSubData):
2111         (WebCore::GraphicsContext3D::checkFramebufferStatus):
2112         (WebCore::GraphicsContext3D::clearColor):
2113         (WebCore::GraphicsContext3D::clear):
2114         (WebCore::GraphicsContext3D::clearDepth):
2115         (WebCore::GraphicsContext3D::clearStencil):
2116         (WebCore::GraphicsContext3D::colorMask):
2117         (WebCore::GraphicsContext3D::compileShader):
2118         (WebCore::GraphicsContext3D::copyTexImage2D):
2119         (WebCore::GraphicsContext3D::copyTexSubImage2D):
2120         (WebCore::GraphicsContext3D::cullFace):
2121         (WebCore::GraphicsContext3D::depthFunc):
2122         (WebCore::GraphicsContext3D::depthMask):
2123         (WebCore::GraphicsContext3D::depthRange):
2124         (WebCore::GraphicsContext3D::detachShader):
2125         (WebCore::GraphicsContext3D::disable):
2126         (WebCore::GraphicsContext3D::disableVertexAttribArray):
2127         (WebCore::GraphicsContext3D::drawArrays):
2128         (WebCore::GraphicsContext3D::drawElements):
2129         (WebCore::GraphicsContext3D::enable):
2130         (WebCore::GraphicsContext3D::enableVertexAttribArray):
2131         (WebCore::GraphicsContext3D::framebufferRenderbuffer):
2132         (WebCore::GraphicsContext3D::framebufferTexture2D):
2133         (WebCore::GraphicsContext3D::frontFace):
2134         (WebCore::GraphicsContext3D::generateMipmap):
2135         (WebCore::GraphicsContext3D::getActiveAttrib):
2136         (WebCore::GraphicsContext3D::getActiveUniform):
2137         (WebCore::GraphicsContext3D::getAttachedShaders):
2138         (WebCore::GraphicsContext3D::getAttribLocation):
2139         (WebCore::GraphicsContext3D::getError):
2140         (WebCore::GraphicsContext3D::getString):
2141         (WebCore::GraphicsContext3D::hint):
2142         (WebCore::GraphicsContext3D::isBuffer):
2143         (WebCore::GraphicsContext3D::isEnabled):
2144         (WebCore::GraphicsContext3D::isFramebuffer):
2145         (WebCore::GraphicsContext3D::isProgram):
2146         (WebCore::GraphicsContext3D::isRenderbuffer):
2147         (WebCore::GraphicsContext3D::isShader):
2148         (WebCore::GraphicsContext3D::isTexture):
2149         (WebCore::GraphicsContext3D::lineWidth):
2150         (WebCore::GraphicsContext3D::linkProgram):
2151         (WebCore::GraphicsContext3D::pixelStorei):
2152         (WebCore::GraphicsContext3D::polygonOffset):
2153         (WebCore::GraphicsContext3D::readPixels):
2154         (WebCore::GraphicsContext3D::renderbufferStorage):
2155         (WebCore::GraphicsContext3D::sampleCoverage):
2156         (WebCore::GraphicsContext3D::scissor):
2157         (WebCore::GraphicsContext3D::stencilFunc):
2158         (WebCore::GraphicsContext3D::stencilFuncSeparate):
2159         (WebCore::GraphicsContext3D::stencilMask):
2160         (WebCore::GraphicsContext3D::stencilMaskSeparate):
2161         (WebCore::GraphicsContext3D::stencilOp):
2162         (WebCore::GraphicsContext3D::stencilOpSeparate):
2163         (WebCore::GraphicsContext3D::texParameterf):
2164         (WebCore::GraphicsContext3D::texParameteri):
2165         (WebCore::GraphicsContext3D::uniform1f):
2166         (WebCore::GraphicsContext3D::uniform1fv):
2167         (WebCore::GraphicsContext3D::uniform2f):
2168         (WebCore::GraphicsContext3D::uniform2fv):
2169         (WebCore::GraphicsContext3D::uniform3f):
2170         (WebCore::GraphicsContext3D::uniform3fv):
2171         (WebCore::GraphicsContext3D::uniform4f):
2172         (WebCore::GraphicsContext3D::uniform4fv):
2173         (WebCore::GraphicsContext3D::uniform1i):
2174         (WebCore::GraphicsContext3D::uniform1iv):
2175         (WebCore::GraphicsContext3D::uniform2i):
2176         (WebCore::GraphicsContext3D::uniform2iv):
2177         (WebCore::GraphicsContext3D::uniform3i):
2178         (WebCore::GraphicsContext3D::uniform3iv):
2179         (WebCore::GraphicsContext3D::uniform4i):
2180         (WebCore::GraphicsContext3D::uniform4iv):
2181         (WebCore::GraphicsContext3D::uniformMatrix2fv):
2182         (WebCore::GraphicsContext3D::uniformMatrix3fv):
2183         (WebCore::GraphicsContext3D::uniformMatrix4fv):
2184         (WebCore::GraphicsContext3D::useProgram):
2185         (WebCore::GraphicsContext3D::validateProgram):
2186         (WebCore::GraphicsContext3D::vertexAttrib1f):
2187         (WebCore::GraphicsContext3D::vertexAttrib1fv):
2188         (WebCore::GraphicsContext3D::vertexAttrib2f):
2189         (WebCore::GraphicsContext3D::vertexAttrib2fv):
2190         (WebCore::GraphicsContext3D::vertexAttrib3f):
2191         (WebCore::GraphicsContext3D::vertexAttrib3fv):
2192         (WebCore::GraphicsContext3D::vertexAttrib4f):
2193         (WebCore::GraphicsContext3D::vertexAttrib4fv):
2194         (WebCore::GraphicsContext3D::vertexAttribPointer):
2195         (WebCore::GraphicsContext3D::viewport):
2196         (WebCore::GraphicsContext3D::getBooleanv):
2197         (WebCore::GraphicsContext3D::getBufferParameteriv):
2198         (WebCore::GraphicsContext3D::getFloatv):
2199         (WebCore::GraphicsContext3D::getFramebufferAttachmentParameteriv):
2200         (WebCore::GraphicsContext3D::getIntegerv):
2201         (WebCore::GraphicsContext3D::getProgramiv):
2202         (WebCore::GraphicsContext3D::getProgramInfoLog):
2203         (WebCore::GraphicsContext3D::getRenderbufferParameteriv):
2204         (WebCore::GraphicsContext3D::getShaderiv):
2205         (WebCore::GraphicsContext3D::getShaderInfoLog):
2206         (WebCore::GraphicsContext3D::getTexParameterfv):
2207         (WebCore::GraphicsContext3D::getTexParameteriv):
2208         (WebCore::GraphicsContext3D::getUniformfv):
2209         (WebCore::GraphicsContext3D::getUniformiv):
2210         (WebCore::GraphicsContext3D::getUniformLocation):
2211         (WebCore::GraphicsContext3D::getVertexAttribfv):
2212         (WebCore::GraphicsContext3D::getVertexAttribiv):
2213         (WebCore::GraphicsContext3D::getVertexAttribOffset):
2214         (WebCore::GraphicsContext3D::texImage2D):
2215         (WebCore::GraphicsContext3D::texSubImage2D):
2216         (WebCore::GraphicsContext3D::createBuffer):
2217         (WebCore::GraphicsContext3D::createFramebuffer):
2218         (WebCore::GraphicsContext3D::createProgram):
2219         (WebCore::GraphicsContext3D::createRenderbuffer):
2220         (WebCore::GraphicsContext3D::createShader):
2221         (WebCore::GraphicsContext3D::createTexture):
2222         (WebCore::GraphicsContext3D::deleteBuffer):
2223         (WebCore::GraphicsContext3D::deleteFramebuffer):
2224         (WebCore::GraphicsContext3D::deleteProgram):
2225         (WebCore::GraphicsContext3D::deleteRenderbuffer):
2226         (WebCore::GraphicsContext3D::deleteShader):
2227         (WebCore::GraphicsContext3D::deleteTexture):
2228         (WebCore::GraphicsContext3D::sizeInBytes):
2229         (WebCore::GraphicsContext3D::synthesizeGLError):
2230         * platform/graphics/qt/GraphicsContext3DQt.cpp:
2231         (WebCore::GraphicsContext3D::activeTexture):
2232         (WebCore::GraphicsContext3D::attachShader):
2233         (WebCore::GraphicsContext3D::getAttachedShaders):
2234         (WebCore::GraphicsContext3D::bindAttribLocation):
2235         (WebCore::GraphicsContext3D::bindBuffer):
2236         (WebCore::GraphicsContext3D::bindFramebuffer):
2237         (WebCore::GraphicsContext3D::bindRenderbuffer):
2238         (WebCore::GraphicsContext3D::bindTexture):
2239         (WebCore::GraphicsContext3D::blendColor):
2240         (WebCore::GraphicsContext3D::blendEquation):
2241         (WebCore::GraphicsContext3D::blendEquationSeparate):
2242         (WebCore::GraphicsContext3D::blendFunc):
2243         (WebCore::GraphicsContext3D::blendFuncSeparate):
2244         (WebCore::GraphicsContext3D::bufferData):
2245         (WebCore::GraphicsContext3D::bufferSubData):
2246         (WebCore::GraphicsContext3D::checkFramebufferStatus):
2247         (WebCore::GraphicsContext3D::clearColor):
2248         (WebCore::GraphicsContext3D::clear):
2249         (WebCore::GraphicsContext3D::clearDepth):
2250         (WebCore::GraphicsContext3D::clearStencil):
2251         (WebCore::GraphicsContext3D::colorMask):
2252         (WebCore::GraphicsContext3D::compileShader):
2253         (WebCore::GraphicsContext3D::copyTexImage2D):
2254         (WebCore::GraphicsContext3D::copyTexSubImage2D):
2255         (WebCore::GraphicsContext3D::cullFace):
2256         (WebCore::GraphicsContext3D::depthFunc):
2257         (WebCore::GraphicsContext3D::depthMask):
2258         (WebCore::GraphicsContext3D::depthRange):
2259         (WebCore::GraphicsContext3D::detachShader):
2260         (WebCore::GraphicsContext3D::disable):
2261         (WebCore::GraphicsContext3D::disableVertexAttribArray):
2262         (WebCore::GraphicsContext3D::drawArrays):
2263         (WebCore::GraphicsContext3D::drawElements):
2264         (WebCore::GraphicsContext3D::enable):
2265         (WebCore::GraphicsContext3D::enableVertexAttribArray):
2266         (WebCore::GraphicsContext3D::framebufferRenderbuffer):
2267         (WebCore::GraphicsContext3D::framebufferTexture2D):
2268         (WebCore::GraphicsContext3D::frontFace):
2269         (WebCore::GraphicsContext3D::generateMipmap):
2270         (WebCore::GraphicsContext3D::getActiveAttrib):
2271         (WebCore::GraphicsContext3D::getActiveUniform):
2272         (WebCore::GraphicsContext3D::getAttribLocation):
2273         (WebCore::GraphicsContext3D::getError):
2274         (WebCore::GraphicsContext3D::getString):
2275         (WebCore::GraphicsContext3D::hint):
2276         (WebCore::GraphicsContext3D::isBuffer):
2277         (WebCore::GraphicsContext3D::isEnabled):
2278         (WebCore::GraphicsContext3D::isFramebuffer):
2279         (WebCore::GraphicsContext3D::isProgram):
2280         (WebCore::GraphicsContext3D::isRenderbuffer):
2281         (WebCore::GraphicsContext3D::isShader):
2282         (WebCore::GraphicsContext3D::isTexture):
2283         (WebCore::GraphicsContext3D::linkProgram):
2284         (WebCore::GraphicsContext3D::pixelStorei):
2285         (WebCore::GraphicsContext3D::polygonOffset):
2286         (WebCore::GraphicsContext3D::readPixels):
2287         (WebCore::GraphicsContext3D::renderbufferStorage):
2288         (WebCore::GraphicsContext3D::sampleCoverage):
2289         (WebCore::GraphicsContext3D::scissor):
2290         (WebCore::GraphicsContext3D::stencilFunc):
2291         (WebCore::GraphicsContext3D::stencilFuncSeparate):
2292         (WebCore::GraphicsContext3D::stencilMask):
2293         (WebCore::GraphicsContext3D::stencilMaskSeparate):
2294         (WebCore::GraphicsContext3D::stencilOp):
2295         (WebCore::GraphicsContext3D::stencilOpSeparate):
2296         (WebCore::GraphicsContext3D::texParameterf):
2297         (WebCore::GraphicsContext3D::texParameteri):
2298         (WebCore::GraphicsContext3D::uniform1f):
2299         (WebCore::GraphicsContext3D::uniform1fv):
2300         (WebCore::GraphicsContext3D::uniform2f):
2301         (WebCore::GraphicsContext3D::uniform2fv):
2302         (WebCore::GraphicsContext3D::uniform3f):
2303         (WebCore::GraphicsContext3D::uniform3fv):
2304         (WebCore::GraphicsContext3D::uniform4f):
2305         (WebCore::GraphicsContext3D::uniform4fv):
2306         (WebCore::GraphicsContext3D::uniform1i):
2307         (WebCore::GraphicsContext3D::uniform1iv):
2308         (WebCore::GraphicsContext3D::uniform2i):
2309         (WebCore::GraphicsContext3D::uniform2iv):
2310         (WebCore::GraphicsContext3D::uniform3i):
2311         (WebCore::GraphicsContext3D::uniform3iv):
2312         (WebCore::GraphicsContext3D::uniform4i):
2313         (WebCore::GraphicsContext3D::uniform4iv):
2314         (WebCore::GraphicsContext3D::uniformMatrix2fv):
2315         (WebCore::GraphicsContext3D::uniformMatrix3fv):
2316         (WebCore::GraphicsContext3D::uniformMatrix4fv):
2317         (WebCore::GraphicsContext3D::useProgram):
2318         (WebCore::GraphicsContext3D::validateProgram):
2319         (WebCore::GraphicsContext3D::vertexAttrib1f):
2320         (WebCore::GraphicsContext3D::vertexAttrib1fv):
2321         (WebCore::GraphicsContext3D::vertexAttrib2f):
2322         (WebCore::GraphicsContext3D::vertexAttrib2fv):
2323         (WebCore::GraphicsContext3D::vertexAttrib3f):
2324         (WebCore::GraphicsContext3D::vertexAttrib3fv):
2325         (WebCore::GraphicsContext3D::vertexAttrib4f):
2326         (WebCore::GraphicsContext3D::vertexAttrib4fv):
2327         (WebCore::GraphicsContext3D::vertexAttribPointer):
2328         (WebCore::GraphicsContext3D::viewport):
2329         (WebCore::GraphicsContext3D::getBooleanv):
2330         (WebCore::GraphicsContext3D::getBufferParameteriv):
2331         (WebCore::GraphicsContext3D::getFloatv):
2332         (WebCore::GraphicsContext3D::getFramebufferAttachmentParameteriv):
2333         (WebCore::GraphicsContext3D::getIntegerv):
2334         (WebCore::GraphicsContext3D::getProgramiv):
2335         (WebCore::GraphicsContext3D::getProgramInfoLog):
2336         (WebCore::GraphicsContext3D::getRenderbufferParameteriv):
2337         (WebCore::GraphicsContext3D::getShaderiv):
2338         (WebCore::GraphicsContext3D::getShaderInfoLog):
2339         (WebCore::GraphicsContext3D::getShaderSource):
2340         (WebCore::GraphicsContext3D::getTexParameterfv):
2341         (WebCore::GraphicsContext3D::getTexParameteriv):
2342         (WebCore::GraphicsContext3D::getUniformfv):
2343         (WebCore::GraphicsContext3D::getUniformiv):
2344         (WebCore::GraphicsContext3D::getUniformLocation):
2345         (WebCore::GraphicsContext3D::getVertexAttribfv):
2346         (WebCore::GraphicsContext3D::getVertexAttribiv):
2347         (WebCore::GraphicsContext3D::getVertexAttribOffset):
2348         (WebCore::GraphicsContext3D::texImage2D):
2349         (WebCore::GraphicsContext3D::texSubImage2D):
2350         (WebCore::GraphicsContext3D::createBuffer):
2351         (WebCore::GraphicsContext3D::createFramebuffer):
2352         (WebCore::GraphicsContext3D::createProgram):
2353         (WebCore::GraphicsContext3D::createRenderbuffer):
2354         (WebCore::GraphicsContext3D::createShader):
2355         (WebCore::GraphicsContext3D::createTexture):
2356         (WebCore::GraphicsContext3D::deleteBuffer):
2357         (WebCore::GraphicsContext3D::deleteFramebuffer):
2358         (WebCore::GraphicsContext3D::deleteProgram):
2359         (WebCore::GraphicsContext3D::deleteRenderbuffer):
2360         (WebCore::GraphicsContext3D::deleteShader):
2361         (WebCore::GraphicsContext3D::deleteTexture):
2362         (WebCore::GraphicsContext3D::sizeInBytes):
2363         (WebCore::GraphicsContext3D::synthesizeGLError):
2364         (WebCore::GraphicsContext3D::getImageData):
2365         * platform/graphics/skia/GraphicsContext3DSkia.cpp:
2366         (WebCore::GraphicsContext3D::getImageData):
2367
2368 2011-01-06  Martin Robinson  <mrobinson@igalia.com>
2369
2370         Reviewed by Eric Seidel.
2371
2372         [GTK] Initial build support for WebGL
2373         https://bugs.webkit.org/show_bug.cgi?id=51716
2374
2375         Add initial build support for WebGL and insert bits of implementation
2376         necessary for clean compilation into GraphicsContext3D.
2377
2378         No new tests. This is just a build change.
2379
2380         * GNUmakefile.am: Add missing files to the source lists.
2381         * platform/graphics/GraphicsContext3D.h: Include IntSize.h as it's used below.
2382         Include typedefs necessary for WebGL on GTK+ and consolidate typdefs which are the
2383         same across different platforms. X11 headers define the VERSION symbol, so it's
2384         necessary to undefine it, since it's used as an enum value.
2385
2386 2011-01-06  Helder Correia  <helder@sencha.com>
2387
2388         Reviewed by Kenneth Rohde Christiansen.
2389
2390         [Qt] GraphicsContext::drawConvexPolygon() has unnecessary code for shadow
2391         https://bugs.webkit.org/show_bug.cgi?id=52014
2392
2393         The function is only used by RenderObject to draw box sides.
2394         The shadow branch is never used and thus can be removed.
2395
2396         No new tests are necessary.
2397
2398         * platform/graphics/qt/GraphicsContextQt.cpp:
2399         (WebCore::GraphicsContext::drawConvexPolygon):
2400
2401 2011-01-06  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
2402
2403         Reviewed by Kenneth Rohde Christiansen.
2404
2405         [Qt] Make sure touch is disabled in the minimal configuration
2406         https://bugs.webkit.org/show_bug.cgi?id=51316
2407
2408         No new tests as there is no new functionality.
2409
2410         * features.pri:
2411
2412 2011-01-06  Martin Robinson  <mrobinson@igalia.com>
2413
2414         Reviewed by Eric Seidel.
2415
2416         [GTK] Freetype backend does not support WOFF
2417         https://bugs.webkit.org/show_bug.cgi?id=51904
2418
2419         * CMakeListsEfl.txt: Add WOFF support to the sources list.
2420         * GNUmakefile.am: Add WOFF support to the sources list.
2421         * platform/graphics/freetype/FontCustomPlatformDataFreeType.cpp:
2422         (WebCore::createFontCustomPlatformData): Call the WOFF decoder when appropriate.
2423         (WebCore::FontCustomPlatformData::supportsFormat): Advertise support for WOFF.
2424
2425 2011-01-06  James Simonsen  <simonjam@chromium.org>
2426
2427         Reviewed by Darin Fisher.
2428
2429         [Web Timing] Remove vendor prefix
2430         https://bugs.webkit.org/show_bug.cgi?id=48922
2431
2432         * page/DOMWindow.cpp:
2433         (WebCore::DOMWindow::performance): Rename to performance.
2434         * page/DOMWindow.h:
2435         * page/DOMWindow.idl: Rename to performance and make replaceable.
2436
2437 2011-01-06  Chris Marrin  <cmarrin@apple.com>
2438
2439         Reviewed by Simon Fraser.
2440
2441         Share code between Mac (CA) and Windows (CACF) GraphicsLayer implementations
2442         https://bugs.webkit.org/show_bug.cgi?id=49388
2443
2444         Changed PlatformCALayer API. Added PlatformCALayerClient abstract class which is
2445         used to communicate from PlatformCALayer to the owner. This replaces passing
2446         GraphicsLayerCA pointer when creating PlatformCALayer. It also includes the
2447         API that used to be in PlatformCALayerLayout. GraphicsLayerCA now implements
2448         the PlatformCALayerClient API.
2449
2450         This change has little impact on the Mac side but makes the Windows
2451         interface simpler, especially when handling video layers on Windows.
2452
2453         * WebCore.xcodeproj/project.pbxproj:
2454         * config.h:
2455         * platform/graphics/GraphicsLayer.h:
2456         (WebCore::GraphicsLayer::layerDidDisplay):
2457         (WebCore::GraphicsLayer::showDebugBorders):
2458         (WebCore::GraphicsLayer::showRepaintCounter):
2459         * platform/graphics/ca/GraphicsLayerCA.cpp:
2460         (WebCore::GraphicsLayerCA::platformCALayerAnimationStarted):
2461         (WebCore::GraphicsLayerCA::setContentsToImage):
2462         (WebCore::GraphicsLayerCA::setContentsToMedia):
2463         (WebCore::GraphicsLayerCA::layerDidDisplay):
2464         (WebCore::GraphicsLayerCA::updateSublayerList):
2465         * platform/graphics/ca/GraphicsLayerCA.h:
2466         (WebCore::GraphicsLayerCA::platformCALayerLayoutSublayersOfLayer):
2467         (WebCore::GraphicsLayerCA::platformCALayerRespondsToLayoutChanges):
2468         (WebCore::GraphicsLayerCA::platformCALayerContentsOrientation):
2469         (WebCore::GraphicsLayerCA::platformCALayerPaintContents):
2470         (WebCore::GraphicsLayerCA::platformCALayerShowDebugBorders):
2471         (WebCore::GraphicsLayerCA::platformCALayerShowRepaintCounter):
2472         (WebCore::GraphicsLayerCA::platformCALayerIncrementRepaintCount):
2473         (WebCore::GraphicsLayerCA::platformCALayerContentsOpaque):
2474         (WebCore::GraphicsLayerCA::platformCALayerDrawsContent):
2475         (WebCore::GraphicsLayerCA::platformCALayerLayerDidDisplay):
2476         (WebCore::GraphicsLayerCA::platformCALayer):
2477         * platform/graphics/ca/PlatformCALayer.h:
2478         (WebCore::PlatformCALayer::owner):
2479         (WebCore::PlatformCALayer::animationStarted):
2480         * platform/graphics/ca/PlatformCALayerClient.h: Added.
2481         (WebCore::PlatformCALayerClient::~PlatformCALayerClient):
2482         * platform/graphics/ca/mac/PlatformCALayerMac.mm:
2483         (PlatformCALayer::setOwner):
2484         (PlatformCALayer::create):
2485         (PlatformCALayer::PlatformCALayer):
2486         (PlatformCALayer::contents):
2487         (PlatformCALayer::setContents):
2488         * platform/graphics/mac/WebGLLayer.mm:
2489         (-[WebGLLayer display]):
2490         * platform/graphics/mac/WebLayer.h:
2491         * platform/graphics/mac/WebLayer.mm:
2492         (drawLayerContents):
2493         (setLayerNeedsDisplayInRect):
2494         (-[WebLayer setNeedsDisplay]):
2495         (-[WebLayer display]):
2496         * platform/graphics/mac/WebTiledLayer.mm:
2497         (-[WebTiledLayer setNeedsDisplay]):
2498         (-[WebTiledLayer display]):
2499         * rendering/RenderLayerBacking.cpp:
2500         (WebCore::RenderLayerBacking::showDebugBorders):
2501         (WebCore::RenderLayerBacking::showRepaintCounter):
2502         * rendering/RenderLayerCompositor.cpp:
2503         (WebCore::RenderLayerCompositor::ensureRootPlatformLayer):
2504         * rendering/RenderLayerCompositor.h:
2505         (WebCore::RenderLayerCompositor::compositorShowDebugBorders):
2506         (WebCore::RenderLayerCompositor::compositorShowRepaintCounter):
2507         (WebCore::RenderLayerCompositor::notifyAnimationStarted):
2508         (WebCore::RenderLayerCompositor::notifySyncRequired):
2509         (WebCore::RenderLayerCompositor::paintContents):
2510         (WebCore::RenderLayerCompositor::showDebugBorders):
2511         (WebCore::RenderLayerCompositor::showRepaintCounter):
2512
2513 2011-01-06  Tony Gentilcore  <tonyg@chromium.org>
2514
2515         Reviewed by Eric Seidel.
2516
2517         Allow framesets after hidden inputs
2518         https://bugs.webkit.org/show_bug.cgi?id=51998
2519
2520         This implements the HTML5 spec update in response to:
2521         http://www.w3.org/Bugs/Public/show_bug.cgi?id=11156
2522
2523         * html/parser/HTMLTreeBuilder.cpp:
2524         (WebCore::HTMLTreeBuilder::processStartTagForInBody):
2525
2526 2010-12-29  Zhenyao Mo  <zmo@google.com>
2527
2528         Reviewed by Kenneth Russell.
2529
2530         vertexAttribPointer should raise INVALID_OPERATION if stride/offset is not multiple of the type size
2531         https://bugs.webkit.org/show_bug.cgi?id=51725
2532
2533         * html/canvas/WebGLRenderingContext.cpp:
2534         (WebCore::WebGLRenderingContext::vertexAttribPointer):
2535
2536 2011-01-06  Patrick Gansterer  <paroga@webkit.org>
2537
2538         Reviewed by Eric Seidel.
2539
2540         [WINCE] Remove JSC::g_stackBase
2541         https://bugs.webkit.org/show_bug.cgi?id=51779
2542
2543         * platform/wince/SharedTimerWinCE.cpp:
2544         (WebCore::TimerWindowWndProc):
2545
2546 2011-01-06  Robert Hogan  <robert@webkit.org>
2547
2548         Reviewed by Antonio Gomes.
2549
2550         [Qt] Introduce QDRTNode for passing WebCore::Node across JS bridge
2551
2552         This allows LayoutTestController to pass WebCore::Node back to
2553         layout tests.
2554
2555         Also amend nodesFromRect-links-and-text.html and
2556         nodesFromRect-inner-documents.html so that they do not produce
2557         platform-specific results.
2558
2559         Unskip:
2560         fast/dom/nodesFromRect-links-and-text.html
2561         fast/dom/nodesFromRect-inner-documents.html
2562
2563         https://bugs.webkit.org/show_bug.cgi?id=48957
2564
2565         * bridge/qt/qt_runtime.cpp:
2566         (JSC::Bindings::QtDRTNodeRuntime::create):
2567         (JSC::Bindings::QtDRTNodeRuntime::get):
2568         (JSC::Bindings::convertValueToQVariant):
2569         (JSC::Bindings::convertQVariantToValue):
2570
2571 2011-01-06  Joone Hur  <joone.hur@collabora.co.uk>
2572
2573         Reviewed by Eric Seidel.
2574
2575         WML Parser should treat line/column number in a consistent way
2576         https://bugs.webkit.org/show_bug.cgi?id=51601
2577
2578         XML Parser treats line/column number as 1-based values, but WML ErrorHandler treat them as 0-based.
2579         Therefore, this patch allows WML ErrorHandler to use 1-based values.
2580
2581         * dom/XMLDocumentParser.cpp:
2582         (WebCore::XMLDocumentParser::handleError): Treat line/column number as 1 based values.
2583         * dom/XMLDocumentParser.h: Make textPositionOneBased public and Add TextPosition1(m_lastErrorPosition) to keep error line/column number.
2584         * dom/XMLDocumentParserLibxml2.cpp:
2585         (WebCore::XMLDocumentParser::XMLDocumentParser): Initialize m_lastErrorPosition. 
2586         * dom/XMLDocumentParserQt.cpp:
2587         (WebCore::XMLDocumentParser::XMLDocumentParser): Initialize m_lastErrorPosition. 
2588         * wml/WMLErrorHandling.cpp:
2589         (WebCore::reportWMLError): Use 1 based value instead of 0 based value to report error line/column number.
2590
2591 2011-01-05  Adam Roben  <aroben@apple.com>
2592
2593         Remove some dead code from WKCACFLayerRenderer
2594
2595         Fixes <http://webkit.org/b/51954> WKCACFLayerRenderer has dead and
2596         redundant code for reacting to changes to the layer tree
2597
2598         Reviewed by Sam Weinig.
2599
2600         * platform/graphics/win/WKCACFLayerRenderer.cpp:
2601         * platform/graphics/win/WKCACFLayerRenderer.h:
2602         Removed didFlushContext and the HashMap it depended on. We react to
2603         changes to the layer tree in layerTreeDidChange instead.
2604
2605 2011-01-06  Chris Fleizach  <cfleizach@apple.com>
2606
2607         Reviewed by Beth Dakin.
2608
2609         AX: "AXExpanded" not exposed on most ARIA roles that use aria-expanded
2610         https://bugs.webkit.org/show_bug.cgi?id=51995
2611
2612         Test: platform/mac/accessibility/aria-expanded-standard-items.html
2613
2614         * accessibility/AccessibilityObject.cpp:
2615         (WebCore::AccessibilityObject::supportsARIAExpanded):
2616         (WebCore::AccessibilityObject::isExpanded):
2617         * accessibility/AccessibilityObject.h:
2618         * accessibility/AccessibilityRenderObject.cpp:
2619         (WebCore::AccessibilityRenderObject::isVisited):
2620         * accessibility/AccessibilityRenderObject.h:
2621         * accessibility/mac/AccessibilityObjectWrapper.mm:
2622         (-[AccessibilityObjectWrapper additionalAccessibilityAttributeNames]):
2623
2624 2010-12-28  Zhenyao Mo  <zmo@google.com>
2625
2626         Reviewed by Kenneth Russell.
2627
2628         Must generate INVALID_VALUE errors for strings containing out-of-range characters
2629         https://bugs.webkit.org/show_bug.cgi?id=50929
2630
2631         * html/canvas/WebGLRenderingContext.cpp: Validate characters according to GLSL ES 1.0 spec section 3.1.
2632         (WebCore::WebGLRenderingContext::bindAttribLocation):
2633         (WebCore::WebGLRenderingContext::getAttribLocation):
2634         (WebCore::WebGLRenderingContext::getUniformLocation):
2635         (WebCore::WebGLRenderingContext::shaderSource):
2636         (WebCore::WebGLRenderingContext::validateString): Helper function to perform the character validation.
2637         * html/canvas/WebGLRenderingContext.h: Declare validateString().
2638
2639 2011-01-06  Yong Li  <yoli@rim.com>
2640
2641         Reviewed by Adam Barth.
2642         Add the test case that is missed in r75066.
2643         https://bugs.webkit.org/show_bug.cgi?id=48077
2644
2645         Test case: WebCore/manual-tests/bugzilla-48077.html.
2646
2647 2011-01-06  James Robinson  <jamesr@chromium.org>
2648
2649         Reviewed by Simon Fraser.
2650
2651         Implement mozilla's animationTime property
2652         https://bugs.webkit.org/show_bug.cgi?id=51952
2653
2654         Implements mozilla's animationTime property as described here:
2655         https://developer.mozilla.org/en/DOM/window.mozAnimationStartTime
2656         and http://hacks.mozilla.org/2010/08/more-efficient-javascript-animations-with-mozrequestanimationframe/
2657         The property is called webkitAnimationTime as calling it the 'Start' time is not very informative.
2658         This property exposes a notion of a 'current' time to use for declarative animations and allows
2659         scripts to synchronize imperative animations with declarative ones if they choose to.  Once queried
2660         this time is saved and used for all declarative animation updates until the embedder paints/composites
2661         the next frame and clears it, or 15ms elapse (in case the embedder isn't producing frames, for example
2662         if the page is in a background tab).
2663
2664         This patch also ensures that all declarative animations started in the same script execution block
2665         are synchronized even if some time elapses while script is running.
2666
2667         Test: fast/animation/animation-time.html
2668
2669         * WebCore.gypi:
2670         * page/DOMWindow.cpp:
2671         (WebCore::DOMWindow::webkitAnimationTime):
2672         * page/DOMWindow.h:
2673         * page/DOMWindow.idl:
2674         * page/Frame.cpp:
2675         (WebCore::Frame::currentAnimationTime):
2676         * page/Frame.h:
2677         * page/Page.cpp:
2678         (WebCore::Page::Page):
2679         * page/Page.h:
2680         (WebCore::Page::animationTime):
2681         * page/animation/AnimationController.cpp:
2682         (WebCore::AnimationControllerPrivate::beginAnimationUpdateTime):
2683         * page/animation/AnimationTimeController.cpp: Added.
2684         (WebCore::AnimationTimeController::AnimationTimeController):
2685         (WebCore::AnimationTimeController::~AnimationTimeController):
2686         (WebCore::AnimationTimeController::currentAnimationTime):
2687         (WebCore::AnimationTimeController::clearCurrentAnimationTime):
2688         (WebCore::AnimationTimeController::clearCurrentAnimationTimeTimerFired):
2689         * page/animation/AnimationTimeController.h: Added.
2690         (WebCore::AnimationTimeController::create):
2691
2692 2011-01-06  Abhishek Arya  <inferno@chromium.org>
2693
2694         Reviewed by Simon Fraser.
2695
2696         Null out the parent stylesheet pointer when a css rule is removed.
2697         https://bugs.webkit.org/show_bug.cgi?id=51993
2698
2699         Tests: fast/dom/StyleSheet/removed-media-rule-deleted-parent-crash.html
2700                fast/dom/StyleSheet/removed-stylesheet-rule-deleted-parent-crash.html
2701
2702         * css/CSSRuleList.cpp:
2703         (WebCore::CSSRuleList::deleteRule):
2704         * css/CSSStyleSheet.cpp:
2705         (WebCore::CSSStyleSheet::deleteRule):
2706
2707 2011-01-04  Adrienne Walker  <enne@google.com>
2708
2709         Reviewed by Kenneth Russell.
2710
2711         NaN in a TypedArray should be converted to zero only for Float32Array.
2712         https://bugs.webkit.org/show_bug.cgi?id=46990
2713
2714         Test: LayoutTests/fast/canvas/webgl/array-unit-tests.html
2715
2716         * bindings/js/JSArrayBufferViewHelper.h:
2717         (WebCore::convertArrayValue):
2718         (WebCore::constructArrayBufferView):
2719         * html/canvas/Float32Array.h:
2720         (WebCore::Float32Array::set):
2721         (WebCore::Float32Array::item):
2722
2723 2011-01-06  Patrick Gansterer  <paroga@webkit.org>
2724
2725         Unreviewed Windows build fix for r75161.
2726
2727         * platform/graphics/cg/GraphicsContextCG.cpp: Missing include added.
2728
2729 2011-01-06  Patrick Gansterer  <paroga@webkit.org>
2730
2731         Unreviewed WinCE build fix for r75139.
2732
2733         Try to remove include after adding forward-declaration in r75145.
2734
2735         * platform/graphics/Gradient.h:
2736
2737 2011-01-06  Renata Hodovan  <reni@webkit.org>
2738
2739         Reviewed by Andreas Kling.
2740
2741         https://bugs.webkit.org/show_bug.cgi?id=51811
2742         Merge m_height and m_width members of ImageData into the new m_size member.
2743
2744         Image (BitmapImage, ImageSource) types in WebKit use IntSize to store their
2745         width and height argument, except ImageData. This patch refactors ImageData
2746         to follow the style of other Image types in WebKit.
2747         Using of PassRefPtrs other than argument passing is not allowed in WebKit anymore.
2748         This patch also refactors the PassRefPtr usages of ImageData.
2749
2750         It's just a refactoring, so we don't need any new tests.
2751
2752         * bindings/js/SerializedScriptValue.cpp:
2753         (WebCore::CloneSerializer::write):
2754         (WebCore::CloneDeserializer::readTerminal):
2755         * bindings/v8/SerializedScriptValue.cpp:
2756         (WebCore::ZigZag::Reader::readImageData):
2757         * html/ImageData.cpp:
2758         (WebCore::ImageData::create):
2759         (WebCore::ImageData::ImageData):
2760         * html/ImageData.h:
2761         (WebCore::ImageData::size):
2762         (WebCore::ImageData::width):
2763         (WebCore::ImageData::height):
2764         * html/canvas/CanvasRenderingContext2D.cpp:
2765         (WebCore::createEmptyImageData):
2766         (WebCore::CanvasRenderingContext2D::createImageData):
2767         (WebCore::CanvasRenderingContext2D::getImageData):
2768         * html/canvas/CanvasRenderingContext2D.h:
2769         * platform/graphics/haiku/ImageBufferHaiku.cpp:
2770         (WebCore::getImageData):
2771
2772 2011-01-06  Yael Aharon  <yael.aharon@nokia.com>
2773
2774         Reviewed by Darin Adler.
2775
2776         document.querySelector(':nth-child(foo)') should throw a syntax error
2777         https://bugs.webkit.org/show_bug.cgi?id=51231
2778
2779         Also fixes 
2780         CSSNthSelector parsing code is illegible and buggy (allows "n3" as a valid selector)
2781         https://bugs.webkit.org/show_bug.cgi?id=21815
2782
2783         Add a check in the parser that other than an+b, only "odd" or "even" would be allowed
2784         as parameters to nth selector.
2785
2786         Tests: fast/css/css3-nth-tokens-script.html
2787                fast/css/css3-nth-tokens-style.html
2788
2789         * css/CSSGrammar.y:
2790         * css/CSSParser.cpp:
2791         (WebCore::isValidNthToken):
2792         * css/CSSParser.h:
2793
2794 2011-01-06  Jan Erik Hanssen  <jhanssen@sencha.com>
2795
2796         Reviewed by Andreas Kling.
2797
2798         [Qt] crash in QNetworkReplyHandler::sendResponseIfNeeded()
2799         https://bugs.webkit.org/show_bug.cgi?id=51453
2800
2801         Check if m_reply is NULL before accessing.
2802
2803         * manual-tests/load-deferrer-resume-crash.html: Added.
2804         * platform/network/qt/QNetworkReplyHandler.cpp:
2805         (WebCore::QNetworkReplyHandler::setLoadMode):
2806         (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
2807
2808 2011-01-06  Andras Becsi  <abecsi@webkit.org>
2809
2810         Reviewed by Csaba Osztrogonác.
2811
2812         [Qt][V8] Fix the build when DEVICE_ORIENTATION is enabled.
2813
2814         No new tests needed.
2815
2816         * WebCore.pro: remove duplications and globally add RuntimeEnabledFeatures.
2817
2818 2011-01-06  Helder Correia  <helder@sencha.com>
2819
2820         Reviewed by Kenneth Rohde Christiansen.
2821
2822         [Qt][GTK] Use GraphicsContext::hasShadow() in port-specific code
2823         https://bugs.webkit.org/show_bug.cgi?id=51985
2824
2825         r75139 introduced GraphicsContext::hasShadow(). This can now simplify
2826         and unify some code in the Qt and GTK ports.
2827
2828         No new tests necessary for this refactoring.
2829
2830         * platform/graphics/cairo/GraphicsContextCairo.cpp:
2831         (WebCore::GraphicsContext::fillRect):
2832         (WebCore::GraphicsContext::fillRoundedRect):
2833         * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h:
2834         * platform/graphics/qt/GraphicsContextQt.cpp:
2835         (WebCore::GraphicsContext::drawConvexPolygon):
2836         (WebCore::GraphicsContext::fillPath):
2837         (WebCore::GraphicsContext::strokePath):
2838         (WebCore::GraphicsContext::fillRect):
2839         (WebCore::GraphicsContext::fillRoundedRect):
2840
2841 2011-01-05  Darin Adler  <darin@apple.com>
2842
2843         Fix Chromium Mac build.
2844
2845         * platform/graphics/Gradient.h: Forward-declare CGContextRef.
2846         This might even make it possible to remove the include of
2847         <CoreGraphics/CoreGraphics.h> for PLATFORM(WIN), but I did not
2848         do that at this time because I don't want to break the Windows
2849         build when fixing the Chromium build.
2850
2851 2011-01-05  Xianzhu Wang  <wangxianzhu@google.com>
2852
2853         Reviewed by David Levin.
2854
2855         Implement RemoteFontStream's skip behavior (in FontCustomPlatformData.cpp)
2856         https://bugs.webkit.org/show_bug.cgi?id=51736
2857
2858         No new tests. This change has potential effect on @font-face CSS feature
2859         on ports using Skia. Tested on Chromium that this change won't break
2860         fast/css/font-face-remote.html. This change can make the test pass on
2861         other ports using Skia.
2862
2863         * platform/graphics/skia/FontCustomPlatformData.cpp:
2864         (WebCore::RemoteFontStream::read):
2865
2866 2011-01-05  Helder Correia  <helder@sencha.com>
2867
2868         Reviewed by Simon Fraser.
2869
2870         Shadows are not drawn when filling a rect with a gradient fillStyle on Mac and Chromium-Mac
2871         https://bugs.webkit.org/show_bug.cgi?id=51869
2872
2873         GraphicsContext::fillRect(const FloatRect&) is clipping to the rect.
2874         The shadow is being drawn, but getting clipped to the rect being filled.
2875         The solution is to draw the gradient into a CGLayer (when a shadow is
2876         required), then render the layer to the GraphicsContext.
2877
2878         This patch also fixes:
2879         canvas/philip/tests/2d.shadow.gradient.alpha.html
2880         canvas/philip/tests/2d.shadow.gradient.basic.html
2881         canvas/philip/tests/2d.shadow.gradient.transparent.2.html
2882
2883         Test: fast/canvas/canvas-fillRect-gradient-shadow.html
2884
2885         * platform/graphics/Gradient.h:
2886         * platform/graphics/cg/GradientCG.cpp:
2887         (WebCore::Gradient::paint):
2888         * platform/graphics/cg/GraphicsContextCG.cpp:
2889         (WebCore::GraphicsContext::fillRect):
2890
2891 2011-01-05  Steve Falkenburg  <sfalken@apple.com>
2892
2893         Reviewed by Darin Adler.
2894
2895         Debug and Release builds on Windows clobber each other
2896         https://bugs.webkit.org/show_bug.cgi?id=49185
2897
2898         Changes the structure of WebKitBuild build products directory so we
2899         completely separate each build configuration into independent directories.
2900         
2901         Although we previously had per-configuration directories for obj, this change adds
2902         per-configuration directories for bin, lib, obj, and include. Each configuration's
2903         build products are stored within a directory inside of WebKitBuild.
2904         
2905         Most use of $(WebKitOutputDir) in the build files has been replaced by $(ConfigurationBuildDir),
2906         defined in common.vsprops to be $(WebKitOutputDir)\$(ConfigurationName).
2907
2908         * WebCore.vcproj/QTMovieWinCommon.vsprops:
2909         * WebCore.vcproj/QTMovieWinPostBuild.cmd:
2910         * WebCore.vcproj/QTMovieWinPreBuild.cmd:
2911         * WebCore.vcproj/WebCore.make:
2912         * WebCore.vcproj/WebCore.vcproj:
2913         * WebCore.vcproj/WebCoreCommon.vsprops:
2914         * WebCore.vcproj/WebCoreGeneratedCairo.vsprops:
2915         * WebCore.vcproj/WebCoreGeneratedCommon.vsprops:
2916         * WebCore.vcproj/WebCoreMediaQT.vsprops:
2917         * WebCore.vcproj/WebCorePostBuild.cmd:
2918         * WebCore.vcproj/WebCorePreBuild.cmd:
2919         * WebCore.vcproj/copyForwardingHeaders.cmd:
2920         * WebCore.vcproj/copyInspectorFiles.cmd:
2921
2922 2011-01-05  Simon Fraser  <simon.fraser@apple.com>
2923
2924         Reviewed by Ariya Hidayat.
2925
2926         Directly composited SVG images fail to render
2927         https://bugs.webkit.org/show_bug.cgi?id=51975
2928         
2929         There was already code, added in r67900, to detect whether an image
2930         may be directly composited, by checking to see if it's a bitmap image.
2931         
2932         However, CachedImage::image() returns the nullImage() if m_image is null,
2933         which is a BitmapImage, confusing this test.
2934
2935         Test: compositing/images/direct-svg-image.html
2936
2937         * loader/cache/CachedImage.cpp: Remove nullImage(), since Image has
2938         exactly the same method.
2939         (WebCore::CachedImage::image): Use Image::nullImage().
2940         * loader/cache/CachedImage.h:
2941         (WebCore::CachedImage::hasImage): New method to ask whether the m_image is
2942         non-null.
2943         * rendering/RenderLayerBacking.cpp:
2944         (WebCore::RenderLayerBacking::isDirectlyCompositedImage): Use hasImage()
2945         so that we don't test the nullImage.
2946
2947 2011-01-05  Simon Fraser  <simon.fraser@apple.com>
2948
2949         Reviewed by Darin Adler.
2950
2951         Fix percentage values in radius of radial gradients
2952         https://bugs.webkit.org/show_bug.cgi?id=51979
2953         
2954         Handle percentage values for the ending size of radial gradients.
2955
2956         Test: fast/gradients/css3-radial-gradients3.html
2957
2958         * css/CSSGradientValue.cpp:
2959         (WebCore::CSSRadialGradientValue::resolveRadius): Add parameter for height or width, which is
2960         non-null if percentage values are allowed, and compute percentage values when we see them.
2961         (WebCore::CSSRadialGradientValue::createGradient): Pass height or width down to say that
2962         percentages are OK when resolving end radii.
2963         * css/CSSGradientValue.h: New parameter for resolveRadius.
2964
2965 2011-01-05  James Simonsen  <simonjam@chromium.org>
2966
2967         Reviewed by Adam Barth.
2968
2969         [Web Timing] Zero out some values on cross-origin redirects
2970         https://bugs.webkit.org/show_bug.cgi?id=49294
2971
2972         Tests: http/tests/misc/webtiming-cross-origin-redirect.php
2973                http/tests/misc/webtiming-origins.html
2974
2975         * loader/DocumentLoadTiming.h:
2976         (WebCore::DocumentLoadTiming::DocumentLoadTiming): Add flags for cross-origin redirects and same-origin navigation.
2977         * loader/FrameLoader.cpp:
2978         (WebCore::FrameLoader::~FrameLoader):
2979         (WebCore::FrameLoader::stopLoading): Don't overwrite previous unload times.
2980         (WebCore::FrameLoader::completed):
2981         (WebCore::FrameLoader::loadWithDocumentLoader): Remember previous URL to see if navigation is same-origin.
2982         (WebCore::FrameLoader::commitProvisionalLoad): Set flag if navigation is same-origin.
2983         * loader/FrameLoader.h:
2984         * loader/MainResourceLoader.cpp:
2985         (WebCore::MainResourceLoader::willSendRequest): Set flag on cross-origin redirects.
2986         * page/PerformanceNavigation.cpp:
2987         (WebCore::PerformanceNavigation::redirectCount): Clear if cross-origin redirect flag is set.
2988         * page/PerformanceTiming.cpp:
2989         (WebCore::PerformanceTiming::redirectStart): Ditto.
2990         (WebCore::PerformanceTiming::redirectEnd): Ditto.
2991         (WebCore::PerformanceTiming::unloadEventStart): Clear if cross-origin navigation is set.
2992         (WebCore::PerformanceTiming::unloadEventEnd): Ditto.
2993
2994 2011-01-05  Helder Correia  <helder@sencha.com>
2995
2996         Reviewed by Ariya Hidayat.
2997
2998         [Qt] Default focus ring is too wide
2999         https://bugs.webkit.org/show_bug.cgi?id=51854
3000
3001         This is an intermediate step to solve this bug. Use QPalette::Highlight
3002         instead of default half-transparent black as the focus ring color.
3003
3004         * platform/graphics/qt/GraphicsContextQt.cpp:
3005         (WebCore::drawFocusRingForPath):
3006         * platform/qt/RenderThemeQt.cpp:
3007         (WebCore::RenderThemeQt::platformFocusRingColor):
3008         * platform/qt/RenderThemeQt.h:
3009
3010 2011-01-05  James Simonsen  <simonjam@chromium.org>
3011
3012         Reviewed by Darin Fisher.
3013
3014         [Web Timing] requestStart and responseStart should be available even if the document is still loading
3015         https://bugs.webkit.org/show_bug.cgi?id=51368
3016
3017         Test: http/tests/misc/webtiming-slow-load.php
3018
3019         * page/PerformanceTiming.cpp:
3020         (WebCore::getPossiblySkewedTimeInKnownRange): Handle case where response is not yet complete.
3021         (WebCore::PerformanceTiming::resourceLoadTimeRelativeToAbsolute): Use full upper bound.
3022
3023 2011-01-05  Chris Rogers  <crogers@google.com>
3024
3025         Reviewed by Darin Fisher.
3026
3027         Add WebKitClient::createAudioDevice() for Chromium port of web audio API
3028         https://bugs.webkit.org/show_bug.cgi?id=51424
3029
3030         No new tests since audio API is not yet implemented.
3031
3032         * WebCore.gyp/WebCore.gyp:
3033         * WebCore.gypi:
3034
3035 2011-01-05  Anders Carlsson  <andersca@apple.com>
3036
3037         Try again.
3038
3039         * WebCore.exp.in:
3040
3041 2011-01-05  Anders Carlsson  <andersca@apple.com>
3042
3043         Attempt to fix Leopard build.
3044
3045         * WebCore.exp.in:
3046
3047 2011-01-05  Evan Martin  <evan@chromium.org>
3048
3049         Reviewed by Tony Chang.
3050
3051         [chromium] refactor complex text on Linux
3052         https://bugs.webkit.org/show_bug.cgi?id=51956
3053
3054         Pull out TextRunWalker from FontLinux.cpp.  Put it in its own file.
3055         Rename it to ComplexTextController, to match platform/graphics/mac
3056         more closely.
3057
3058         No tests because the change is just renaming a class.
3059
3060         * WebCore.gyp/WebCore.gyp:
3061         * platform/graphics/chromium/ComplexTextControllerLinux.cpp: Added.
3062         (WebCore::ComplexTextController::ComplexTextController):
3063         (WebCore::ComplexTextController::~ComplexTextController):
3064         (WebCore::ComplexTextController::isWordBreak):
3065         (WebCore::ComplexTextController::determineWordBreakSpacing):
3066         (WebCore::ComplexTextController::setPadding):
3067         (WebCore::ComplexTextController::reset):
3068         (WebCore::ComplexTextController::setBackwardsIteration):
3069         (WebCore::ComplexTextController::nextScriptRun):
3070         (WebCore::ComplexTextController::widthOfFullRun):
3071         (WebCore::ComplexTextController::setupFontForScriptRun):
3072         (WebCore::ComplexTextController::allocHarfbuzzFont):
3073         (WebCore::ComplexTextController::deleteGlyphArrays):
3074         (WebCore::ComplexTextController::createGlyphArrays):
3075         (WebCore::ComplexTextController::resetGlyphArrays):
3076         (WebCore::ComplexTextController::shapeGlyphs):
3077         (WebCore::ComplexTextController::setGlyphXPositions):
3078         (WebCore::ComplexTextController::normalizeSpacesAndMirrorChars):
3079         (WebCore::ComplexTextController::getNormalizedTextRun):
3080         * platform/graphics/chromium/ComplexTextControllerLinux.h: Added.
3081         (WebCore::ComplexTextController::setWordSpacingAdjustment):
3082         (WebCore::ComplexTextController::setLetterSpacingAdjustment):
3083         (WebCore::ComplexTextController::letterSpacing):
3084         (WebCore::ComplexTextController::setXOffsetToZero):
3085         (WebCore::ComplexTextController::rtl):
3086         (WebCore::ComplexTextController::glyphs):
3087         (WebCore::ComplexTextController::length):
3088         (WebCore::ComplexTextController::xPositions):
3089         (WebCore::ComplexTextController::advances):
3090         (WebCore::ComplexTextController::width):
3091         (WebCore::ComplexTextController::logClusters):
3092         (WebCore::ComplexTextController::numCodePoints):
3093         (WebCore::ComplexTextController::fontPlatformDataForScriptRun):
3094         (WebCore::ComplexTextController::isCodepointSpace):
3095         * platform/graphics/chromium/FontLinux.cpp:
3096         (WebCore::Font::drawComplexText):
3097         (WebCore::Font::floatWidthForComplexText):
3098         (WebCore::glyphIndexForXPositionInScriptRun):
3099         (WebCore::Font::offsetForPositionForComplexText):
3100         (WebCore::Font::selectionRectForComplexText):
3101
3102 2011-01-05  Pratik Solanki  <psolanki@apple.com>
3103
3104         Reviewed by Darin Adler.
3105
3106         Merge cf and mac header files with same name
3107         https://bugs.webkit.org/show_bug.cgi?id=51916
3108
3109         Since most of the code in the header files is identical, we can merge them and have #if
3110         USE(CFNETWORK) to separate out the network specific parts.
3111
3112         * WebCore.xcodeproj/project.pbxproj:
3113         * platform/network/cf/AuthenticationChallenge.h:
3114         (WebCore::AuthenticationChallenge::sender):
3115         (WebCore::AuthenticationChallenge::nsURLAuthenticationChallenge):
3116         * platform/network/cf/ResourceError.h:
3117         (WebCore::ResourceError::ResourceError):
3118         * platform/network/cf/ResourceRequest.h:
3119         (WebCore::ResourceRequest::ResourceRequest):
3120         * platform/network/cf/ResourceResponse.h:
3121         (WebCore::ResourceResponse::ResourceResponse):
3122         * platform/network/mac/AuthenticationChallenge.h: Removed.
3123         * platform/network/mac/ResourceError.h: Removed.
3124         * platform/network/mac/ResourceRequest.h: Removed.
3125         * platform/network/mac/ResourceResponse.h: Removed.
3126
3127 2011-01-05  Anders Carlsson  <andersca@apple.com>
3128
3129         Reviewed by Adele Peterson.
3130
3131         Implement word transformation
3132         https://bugs.webkit.org/show_bug.cgi?id=51943
3133
3134         Export Editor functions needed by WebKit2.
3135
3136         * WebCore.exp.in:
3137
3138 2011-01-05  Simon Fraser  <simon.fraser@apple.com>
3139
3140         Reviewed by Dave Hyatt.
3141
3142         Implement repeating CSS3 gradients
3143         https://bugs.webkit.org/show_bug.cgi?id=51843
3144         
3145         Add support for repeating gradients, via the new gradient functions
3146         -webkit-repeating-linear-gradient and -webkit-repeating-radial-gradient.
3147
3148         Tests: fast/gradients/css3-repeating-linear-gradients.html
3149                fast/gradients/css3-repeating-radial-gradients.html
3150
3151         * css/CSSGradientValue.h:
3152         (WebCore::CSSGradientValue::isRepeating): Accessor for whethe the gradient repeats.
3153         (WebCore::CSSGradientValue::CSSGradientValue): Pass CSSGradientRepeat in.
3154         (WebCore::CSSLinearGradientValue::create): Pass CSSGradientRepeat.
3155         (WebCore::CSSLinearGradientValue::CSSLinearGradientValue): Ditto
3156         (WebCore::CSSRadialGradientValue::create): Ditto.
3157         (WebCore::CSSRadialGradientValue::CSSRadialGradientValue): Ditto.
3158
3159         * css/CSSGradientValue.cpp:
3160         (WebCore::CSSGradientValue::addStops): Pass maxLengthForRepeat, which
3161         is used for repeating radial gradients. Add code to repeat the stops,
3162         adding stops before the start, and after the end until the 0-N range is
3163         covered, where N is large enough to ensure the box is covered. Fix an issue
3164         with repeating gradients where if both stops were < 0, it would fail to clamp
3165         them to 0.
3166         
3167         (WebCore::CSSLinearGradientValue::cssText): Output strings for repeating gradients.
3168         (WebCore::CSSLinearGradientValue::createGradient): maxExtent for linear gradients is 1,
3169         because they are guaranteed to fill the box already.
3170         (WebCore::CSSRadialGradientValue::cssText): Output strings for repeating gradients.
3171         (WebCore::CSSRadialGradientValue::createGradient): Compute the distance to the furthest
3172         corner in order to inform addStops() how much additional extent is required.
3173
3174         * css/CSSParser.cpp:
3175         (WebCore::CSSParser::parseDeprecatedGradient): Old gradients never repeat.
3176         (WebCore::CSSParser::parseLinearGradient): Pass down CSSGradientRepeat.
3177         (WebCore::CSSParser::parseRadialGradient): Ditto.
3178         (WebCore::CSSParser::isGeneratedImageValue): Add repeating gradient functions.
3179         (WebCore::CSSParser::parseGeneratedImage): Ditto.
3180         * css/CSSParser.h: Pass CSSGradientRepeat to gradient functions.
3181         * platform/graphics/cg/GradientCG.cpp: Remove unused #include.
3182
3183 2011-01-05  Martin Robinson  <mrobinson@igalia.com>
3184
3185         Reviewed by Ariya Hidayat.
3186
3187         ContextShadow::blurLayerImage() not endian-safe
3188         https://bugs.webkit.org/show_bug.cgi?id=51822
3189
3190         Correct the channel map in ContextShadow to reflect the different
3191         ordering of pixels on processors with different endianness.
3192
3193         No new tests. This is covered by the existing shadow tests. It was
3194         not discovered, because all of the bots using ContextShadow are
3195         little-endian.
3196
3197         * platform/graphics/ContextShadow.cpp:
3198         (WebCore::ContextShadow::blurLayerImage): Initialize the channel mapping
3199         based on machine endianness.
3200
3201 2011-01-05  Mihai Parparita  <mihaip@chromium.org>
3202
3203         Reviewed by Nate Chapin.
3204
3205         [Chromium] Crash when drawing PDF plug-in scrollbars
3206         https://bugs.webkit.org/show_bug.cgi?id=51942
3207
3208         Pepper plug-in scrollbars don't have a parent, guard against that before
3209         seeing if the parent is a FrameView.
3210
3211         Not testable via layout tests, verified fix by hand.
3212         
3213         * platform/chromium/ScrollbarThemeChromiumMac.mm:
3214         (WebCore::ScrollbarThemeChromiumMac::paint):
3215
3216 2011-01-05  Abhishek Arya  <inferno@chromium.org>
3217
3218         Unreviewed.
3219
3220         Update FIXME comment to sound better. Also initialize the block to fix compile.
3221
3222         * rendering/RenderBlock.cpp:
3223         (WebCore::RenderBlock::removeChild):
3224
3225 2011-01-05  Abhishek Arya  <inferno@chromium.org>
3226
3227         Reviewed by Dave Hyatt.
3228
3229         Do not merge anonymous blocks when one of them is the one getting removed.
3230         https://bugs.webkit.org/show_bug.cgi?id=51919
3231
3232         Test: fast/block/merge-anonymous-block-remove-child-crash.html
3233
3234         * rendering/RenderBlock.cpp:
3235         (WebCore::RenderBlock::removeChild):
3236
3237 2011-01-05  Ryosuke Niwa  <rniwa@webkit.org>
3238
3239         Reviewed by Eric Seidel.
3240
3241         ApplyStyleCommand::applyRelativeFontStyleChange should take EditingStyle*
3242         https://bugs.webkit.org/show_bug.cgi?id=50641
3243
3244         Modified applyRelativeFontStyleChange to take EditingStyle instead of CSSMutableStyleDeclaration.
3245         Also extracted the logic to obtain the font size delta from ApplyStyleCommand to EditingStyle.
3246         The font size delta is now stored as a member variable of EditingStyle as supposed to a property
3247         in CSSMutableStyleDeclration as soon as EditingStyle is instantiated.
3248
3249         No new tests are added since this is a refactoring.
3250
3251         * editing/ApplyStyleCommand.cpp:
3252         (WebCore::ApplyStyleCommand::doApply): Calls applyRelativeFontStyleChange.
3253         (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange): Takes EditingStyle.
3254         * editing/ApplyStyleCommand.h:
3255         * editing/EditingStyle.cpp:
3256         (WebCore::EditingStyle::EditingStyle): Initializes m_fontSizeDelta.
3257         (WebCore::EditingStyle::init): Ditto.
3258         (WebCore::EditingStyle::extractFontSizeDelta): Extracted from applyRelativeFontStyleChange.
3259         (WebCore::EditingStyle::isEmpty): Takes care of m_fontSizeDelta.
3260         (WebCore::EditingStyle::setStyle): Calls extractFontSizeDelta.
3261         (WebCore::EditingStyle::overrideWithStyle): Ditto.
3262         (WebCore::EditingStyle::clear): Initializes m_fontSizeDelta.
3263         (WebCore::EditingStyle::copy): Calls extractFontSizeDelta.
3264         * editing/EditingStyle.h:
3265         (WebCore::EditingStyle::fontSizeDelta): Added.
3266         (WebCore::EditingStyle::hasFontSizeDelta): Added.
3267         * editing/Editor.h:
3268
3269 2011-01-05  Dan Bernstein  <mitz@apple.com>
3270
3271         Reviewed by Darin Adler.
3272
3273         <rdar://problem/8799835> hyphenate-character: auto should fall back to hyphen-minus if the primary font lacks a hyphen glyph
3274         https://bugs.webkit.org/show_bug.cgi?id=51915
3275
3276         This changes the results of existing tests in fast/text.
3277
3278         * platform/graphics/Font.h:
3279         * platform/graphics/FontFastPath.cpp:
3280         (WebCore::Font::primaryFontHasGlyphForCharacter): Added.
3281         * rendering/style/RenderStyle.cpp:
3282         * platform/graphics/qt/FontQt.cpp:
3283         (WebCore::Font::primaryFontHasGlyphForCharacter): Added a stub.
3284         (WebCore::RenderStyle::hyphenString): For hyphenate-character: auto, return a
3285         hyphen only if the primary font has a hyphen glyph, and otherwise return a
3286         hyphen-minus.
3287
3288 2011-01-05  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
3289
3290         Reviewed by Ariya Hidayat.
3291
3292         [Qt] [Symbian] Make CONFIG-=def_files the default configuration for trunk builds
3293         https://bugs.webkit.org/show_bug.cgi?id=51888
3294
3295         Overrule Qt's default from qconfig.pri for non-production builds so
3296         that CONFIG(def_files) evaluates to false and QtWebKit trunk builds succeed.
3297
3298         No new tests as there is no new functionality.
3299
3300         * WebCore.pro:
3301
3302 2011-01-05  Sheriff Bot  <webkit.review.bot@gmail.com>
3303
3304         Unreviewed, rolling out r74778.
3305         http://trac.webkit.org/changeset/74778
3306         https://bugs.webkit.org/show_bug.cgi?id=51930
3307
3308         Android and QtWebKit-V8 uses V8DOMWindowShell::setContext.
3309         (Requested by bbandix on #webkit).
3310
3311         * bindings/v8/V8DOMWindowShell.cpp:
3312         (WebCore::V8DOMWindowShell::setContext):
3313         * bindings/v8/V8DOMWindowShell.h:
3314
3315 2011-01-05  Yi Shen  <yi.4.shen@nokia.com>
3316
3317         Reviewed by Andreas Kling.
3318
3319         [Qt] Animated GIF images does not animate 10x as expected by default.
3320         https://bugs.webkit.org/show_bug.cgi?id=36818
3321
3322         Add a test animated GIF which should be displayed 2 times and stop.
3323
3324         * manual-tests/animated-gif-looping.html:
3325         * manual-tests/resources/animated-2x.gif: Added.
3326
3327 2011-01-05  Carlos Garcia Campos  <cgarcia@igalia.com>
3328
3329         Reviewed by Martin Robinson.
3330
3331         [GTK] Fork code of ScrollbarThemeGtk that will differ for GTK+ 3
3332         https://bugs.webkit.org/show_bug.cgi?id=51923
3333
3334         Split out pieces of ScrollbarThemeGtk into ScrollbarThemeGtk2 and
3335         ScrollbarThemeGtk3 that will differ between GTK+ 2 and GTK+ 3.
3336
3337         No new tests. This should not change functionality.
3338
3339         * GNUmakefile.am: Add ScrollbarThemeGtk2.cpp and ScrollbarThemeGtk3.cpp
3340         * platform/gtk/ScrollbarThemeGtk.cpp:
3341         (WebCore::ScrollbarThemeGtk::updateScrollbarsFrameThickness):
3342         * platform/gtk/ScrollbarThemeGtk.h:
3343         * platform/gtk/ScrollbarThemeGtk2.cpp: Added.
3344         (WebCore::ScrollbarThemeGtk::updateThemeProperties):
3345         (WebCore::ScrollbarThemeGtk::paintTrackBackground):
3346         (WebCore::ScrollbarThemeGtk::paintScrollbarBackground):
3347         (WebCore::ScrollbarThemeGtk::paintThumb):
3348         (WebCore::ScrollbarThemeGtk::paintButton):
3349         * platform/gtk/ScrollbarThemeGtk3.cpp: Added.
3350         (WebCore::ScrollbarThemeGtk::updateThemeProperties):
3351         (WebCore::ScrollbarThemeGtk::paintTrackBackground):
3352         (WebCore::ScrollbarThemeGtk::paintScrollbarBackground):
3353         (WebCore::ScrollbarThemeGtk::paintThumb):
3354         (WebCore::ScrollbarThemeGtk::paintButton):
3355
3356 2011-01-05  Patrick Gansterer  <paroga@webkit.org>
3357
3358         Reviewed by Andreas Kling.
3359
3360         [CMake] Fix the usage of SOURCE_GROUP
3361         https://bugs.webkit.org/show_bug.cgi?id=51739
3362
3363         * CMakeLists.txt:
3364
3365 2011-01-05  Andras Becsi  <abecsi@webkit.org>
3366
3367         Reviewed by Csaba Osztrogonác.
3368
3369         [Qt][V8] Fix the build after recent changes.
3370
3371         No new tests needed.
3372
3373         * WebCore.pro: Add missing files, and remove obsolete ones.
3374
3375 2011-01-05  Yong Li  <yoli@rim.com>
3376
3377         Reviewed by Adam Barth.
3378
3379         Suspend HTMLParserScheduler when page load is deferred to
3380         avoid potential JS re-entrancy. Otherwise, when JS execution is triggered
3381         from an external script or by events, and is blocked by a modal dialog,
3382         WebKit can parse more HTML source and also start another JS execution.
3383         
3384         https://bugs.webkit.org/show_bug.cgi?id=48077
3385
3386         Test case: WebCore/manual-tests/bugzilla-48077.html.
3387
3388         * dom/DocumentParser.cpp:
3389         (WebCore::DocumentParser::suspendScheduledTasks):
3390         (WebCore::DocumentParser::resumeScheduledTasks):
3391         * dom/DocumentParser.h:
3392         * html/parser/HTMLDocumentParser.cpp:
3393         (WebCore::HTMLDocumentParser::suspendScheduledTasks):
3394         (WebCore::HTMLDocumentParser::resumeScheduledTasks):
3395         * html/parser/HTMLParserScheduler.cpp:
3396         (WebCore::HTMLParserScheduler::HTMLParserScheduler):
3397         (WebCore::HTMLParserScheduler::suspend):
3398         (WebCore::HTMLParserScheduler::resume):
3399         * html/parser/HTMLParserScheduler.h:
3400         (WebCore::HTMLParserScheduler::isScheduledForResume):
3401         * page/PageGroupLoadDeferrer.cpp:
3402         (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
3403         (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer):
3404
3405 2011-01-05  Simon Hausmann  <simon.hausmann@nokia.com>
3406
3407         Reviewed by Kenneth Rohde Christiansen, Gustavo Noronha Silva
3408
3409         [GStreamer] MediaPlayerPrivateGStreamer::totalBytes() does not work reliably
3410         https://bugs.webkit.org/show_bug.cgi?id=51926
3411
3412         Work around potential upstream bug: Querying a GstBin for the duration,
3413         will forward the query to all sink children. Our WebKitWebSrc however
3414         is a bin with only source children, therefore the query fails. Until
3415         this is changed upstream, this patch works around it as follows,
3416         based on suggestion by Philippe Normand and Sebastian Dröge:
3417
3418         When the initial query fails, attempt the same query on all source
3419         pads and take the maximum length reported.
3420
3421         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
3422         (WebCore::MediaPlayerPrivateGStreamer::totalBytes):
3423
3424 2011-01-05  Philippe Normand  <pnormand@igalia.com>
3425
3426         Rubber-stamped by Eric Seidel.
3427
3428         [GStreamer] build fails with gstreamer core 0.10.31 and -plugins-base 0.10.30
3429         https://bugs.webkit.org/show_bug.cgi?id=51810
3430
3431         Based on a patch by Mart Raudsepp.
3432
3433         No new tests, build fix only.
3434
3435         * platform/graphics/gstreamer/GStreamerGWorld.cpp:
3436         (WebCore::GStreamerGWorld::setWindowOverlay): Use the new xoverlay
3437         API if the GST_CHECK_PLUGINS_BASE_VERSION macro is defined. It was
3438         introduced in same version as the xoverlay API change.
3439
3440 2011-01-05  Leo Yang  <leo.yang@torchmobile.com.cn>
3441
3442         Reviewed by Dirk Schulze.
3443
3444         Malformed SVG causes crash in updateContainerOffset
3445         https://bugs.webkit.org/show_bug.cgi?id=44610
3446
3447         We should check recursive <use> at the begining of
3448         WebCore::SVGUseElement::buildInstanceTree instead
3449         of at the end of it because the target element's
3450         children may cause infinite recursive <use>.
3451
3452         Test: svg/custom/recursive-use.svg
3453
3454         * svg/SVGUseElement.cpp:
3455         (WebCore::SVGUseElement::buildInstanceTree):
3456         (WebCore::SVGUseElement::hasCycleUseReferencing):
3457         * svg/SVGUseElement.h:
3458
3459 2011-01-04  Antti Koivisto  <antti@apple.com>
3460
3461         Reviewed by Dan Bernstein.
3462
3463         https://bugs.webkit.org/show_bug.cgi?id=51907
3464         Style selector should only be recalculated when the pending sheet count goes to zero
3465         
3466         Shark says this is a significant performance improvement on some sites with lots of stylesheets.
3467
3468         * dom/Document.cpp:
3469         (WebCore::Document::removePendingSheet):
3470
3471 2011-01-05  Carlos Garcia Campos  <cgarcia@igalia.com>
3472
3473         Reviewed by Martin Robinson.