2010-12-27 Amruth Raj <amruthraj@motorola.com> and Ravi Kasibhatla <ravi.kasibhatl...
[WebKit-https.git] / WebCore / ChangeLog
1 2010-12-27  Amruth Raj  <amruthraj@motorola.com> and Ravi Kasibhatla  <ravi.kasibhatla@motorola.com>
2
3         Reviewed by Martin Robinson.
4
5         [GTK] Enable building whatever already exists of WebKit2
6         https://bugs.webkit.org/show_bug.cgi?id=37369
7
8         No new functionality added or deleted. Only makefile change. Hence, no tests added.
9
10         * GNUmakefile.am: Removed bindings/gobject from webcore_sources & webcore_cppflags and
11         added them to WebKit/gtk/GNUmakefile.am
12         * platform/network/soup/cache/webkit/soup-cache.h: Remove include <webkit/webkitdefines.h>
13         and declare WEBKIT_API directly
14
15 2010-12-29  Eric Seidel  <eric@webkit.org>
16
17         Unreviewed.
18
19         Simplify make-hash-tools.pl
20         https://bugs.webkit.org/show_bug.cgi?id=49922
21
22         Added HashTools.h to the project file now that its not autogenerated.
23         I also sorted the project file using sort-xcode-project-file
24
25         * WebCore.xcodeproj/project.pbxproj:
26
27 2010-12-29  Pavel Feldman  <pfeldman@chromium.org>
28
29         Not reviewed: revert r74755 and 74757.
30
31 2010-12-29  Martin Robinson  <mrobinson@igalia.com>
32
33         Reviewed by Sam Weinig.
34
35         JSDataViewCustom.cpp gives the fastcall calling convention to functions called via C++
36         https://bugs.webkit.org/show_bug.cgi?id=51722
37
38         Remove the JSC_HOST_CALL from methods that are called from C++. JSC_HOST_CALL gives
39         methods the fastcall calling convention, which leads to runtime errors when they are
40         called from C++. Also remove a bit of unnecessary code duplication.
41
42         No new tests. This is covered by fast/canvas/webgl/data-view-test.html.
43
44         * bindings/js/JSDataViewCustom.cpp:
45         (WebCore::getDataViewMember): Remove duplicated code.
46         (WebCore::JSDataView::getInt8): Remove JSC_HOST_CALL.
47         (WebCore::JSDataView::getUint8): Ditto.
48         (WebCore::JSDataView::getFloat32): Ditto.
49         (WebCore::JSDataView::getFloat64): Ditto.
50         (WebCore::setDataViewMember): Remove duplicated code.
51         (WebCore::JSDataView::setInt8): Remove JSC_HOST_CALL.
52         (WebCore::JSDataView::setUint8): Ditto.
53
54 2010-12-29  Dan Bernstein  <mitz@apple.com>
55
56         Reviewed by Kenneth Russel.
57
58         A more robust fix for https://bugs.webkit.org/show_bug.cgi?id=51681
59
60         * html/HTMLCanvasElement.cpp:
61         (WebCore::HTMLCanvasElement::attach): Added. Like recalcStyle(), calls
62         CanvasRenderingContext2D::updateFont() if necessary. This covers the case of a detach/
63         attach-type style recalc.
64         * html/HTMLCanvasElement.h:
65         * html/canvas/CanvasRenderingContext2D.cpp:
66         (WebCore::CanvasRenderingContext2D::drawTextInternal): Removed the early return added in
67         r74716. A font that is loading custom fonts is okay to use, as long as it is valid.
68         (WebCore::CanvasRenderingContext2D::accessFont): Added a call to
69         Document::updateStyleIfNeeded(). This ensures that any pending style recalc will take place
70         and update the font if it is invalid.
71         * platform/graphics/Font.h:
72         (WebCore::Font::loadingCustomFonts): Made this private.
73
74 2010-12-29  Pavel Feldman  <pfeldman@chromium.org>
75
76         Not reviewed: Qt build fix.
77
78         * inspector/InspectorController.cpp:
79
80 2010-12-29  Pavel Feldman  <pfeldman@chromium.org>
81
82         Reviewed by Yury Semikhatsky.
83
84         Web Inspector: extract Database & DOM Storage
85         agents; remove InspectorBackend.
86         https://bugs.webkit.org/show_bug.cgi?id=51707
87
88         This change brushes up storage agents + removes redundant
89         InspectorBackend class.
90
91         * CMakeLists.txt:
92         * GNUmakefile.am:
93         * WebCore.gypi:
94         * WebCore.pro:
95         * WebCore.vcproj/WebCore.vcproj:
96         * WebCore.xcodeproj/project.pbxproj:
97         * inspector/CodeGeneratorInspector.pm:
98         * inspector/InjectedScriptHost.cpp:
99         (WebCore::InjectedScriptHost::databaseForId):
100         (WebCore::InjectedScriptHost::selectDatabase):
101         (WebCore::InjectedScriptHost::selectDOMStorage):
102         (WebCore::InjectedScriptHost::inspectorDOMAgent):
103         * inspector/Inspector.idl:
104         * inspector/InspectorBackend.cpp: Removed.
105         * inspector/InspectorBackend.h: Removed.
106         * inspector/InspectorController.cpp:
107         (WebCore::InspectorController::InspectorController):
108         (WebCore::InspectorController::~InspectorController):
109         (WebCore::InspectorController::connectFrontend):
110         (WebCore::InspectorController::releaseFrontendLifetimeAgents):
111         (WebCore::InspectorController::didUseDOMStorage):
112         (WebCore::InspectorController::setInjectedScriptSource):
113         (WebCore::InspectorController::dispatchOnInjectedScript):
114         (WebCore::InspectorController::releaseWrapperObjectGroup):
115         * inspector/InspectorController.h:
116         * inspector/InspectorDOMStorageAgent.cpp: Added.
117         (WebCore::InspectorDOMStorageAgent::~InspectorDOMStorageAgent):
118         (WebCore::InspectorDOMStorageAgent::getDOMStorageEntries):
119         (WebCore::InspectorDOMStorageAgent::setDOMStorageItem):
120         (WebCore::InspectorDOMStorageAgent::removeDOMStorageItem):
121         (WebCore::InspectorDOMStorageAgent::selectDOMStorage):
122         (WebCore::InspectorDOMStorageAgent::InspectorDOMStorageAgent):
123         (WebCore::InspectorDOMStorageAgent::getDOMStorageResourceForId):
124         * inspector/InspectorDOMStorageAgent.h: Copied from WebCore/inspector/InspectorStorageAgent.h.
125         (WebCore::InspectorDOMStorageAgent::create):
126         (WebCore::InspectorDOMStorageAgent::frontend):
127         * inspector/InspectorDatabaseAgent.cpp: Renamed from WebCore/inspector/InspectorStorageAgent.cpp.
128         (WebCore::InspectorDatabaseAgent::~InspectorDatabaseAgent):
129         (WebCore::InspectorDatabaseAgent::getDatabaseTableNames):
130         (WebCore::InspectorDatabaseAgent::executeSQL):
131         (WebCore::InspectorDatabaseAgent::databaseForId):
132         (WebCore::InspectorDatabaseAgent::selectDatabase):
133         (WebCore::InspectorDatabaseAgent::clearFrontend):
134         (WebCore::InspectorDatabaseAgent::InspectorDatabaseAgent):
135         * inspector/InspectorDatabaseAgent.h: Renamed from WebCore/inspector/InspectorStorageAgent.h.
136         (WebCore::InspectorDatabaseAgent::create):
137         (WebCore::InspectorDatabaseAgent::frontend):
138         * inspector/InspectorFrontendClientLocal.cpp:
139         * inspector/InspectorFrontendClientLocal.h:
140         * inspector/front-end/ScriptsPanel.js:
141         (WebInspector.ScriptsPanel.prototype.show):
142
143 2010-12-29  Tony Gentilcore  <tonyg@chromium.org>
144
145         Reviewed by Eric Seidel.
146
147         Assertion failure: element->inDocument() in AsyncScriptRunner::executeScriptSoon()
148         https://bugs.webkit.org/show_bug.cgi?id=51067
149
150         Typically when a script element is removed from the document, the cached script
151         client is removed. However, during the before load event, the cached script client
152         hasn't been created yet so it can't be removed.
153
154         This patch handles that case by explicitly checking if the script element was
155         removed during the beforeload event. Also, it avoids caching the Document references
156         over the arbitrary script execution in the before load event.
157
158         Test: fast/dom/HTMLScriptElement/move-in-beforeload.html
159               fast/dom/HTMLScriptElement/remove-in-beforeload.html
160
161         * dom/ScriptElement.cpp:
162         (WebCore::ScriptElement::requestScript):
163
164 2010-12-29  Alexander Pavlov  <apavlov@chromium.org>
165
166         Reviewed by Yury Semikhatsky.
167
168         Web Inspector: Element highlight tooltip displays wrong element size when zoomed in
169         https://bugs.webkit.org/show_bug.cgi?id=51703
170
171         * inspector/InspectorController.cpp:
172         (WebCore::InspectorController::drawElementTitle):
173
174 2010-12-29  Yael Aharon  <yael.aharon@nokia.com>
175
176         Reviewed by Kent Tamura.
177
178         [HTML5][Forms] Support for :in-range and :out-of-range CSS selectors
179         https://bugs.webkit.org/show_bug.cgi?id=29071
180
181         Use InputType::rangeUnderflow() and InputType::rangeOverflow()
182         to determine if a control is in-range or out-of-range.
183
184         Tests: fast/css/pseudo-in-range-invalid-value.html
185                fast/css/pseudo-in-range.html
186                fast/css/pseudo-out-of-range.html
187
188         * css/CSSSelector.cpp:
189         (WebCore::CSSSelector::pseudoId):
190         (WebCore::nameToPseudoTypeMap):
191         (WebCore::CSSSelector::extractPseudoType):
192         * css/CSSSelector.h:
193         * css/CSSStyleSelector.cpp:
194         (WebCore::CSSStyleSelector::canShareStyleWithElement):
195         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
196         * dom/Element.h:
197         (WebCore::Element::isInRange):
198         (WebCore::Element::isOutOfRange):
199         * html/BaseDateAndTimeInputType.cpp:
200         (WebCore::BaseDateAndTimeInputType::supportsRangeLimitation):
201         * html/BaseDateAndTimeInputType.h:
202         * html/HTMLInputElement.cpp:
203         (WebCore::HTMLInputElement::isInRange):
204         (WebCore::HTMLInputElement::isOutOfRange):
205         * html/HTMLInputElement.h:
206         * html/InputType.cpp:
207         (WebCore::InputType::supportsRangeLimitation):
208         * html/InputType.h:
209         * html/NumberInputType.cpp:
210         (WebCore::NumberInputType::supportsRangeLimitation):
211         * html/NumberInputType.h:
212         * html/RangeInputType.cpp:
213         (WebCore::RangeInputType::supportsRangeLimitation):
214         * html/RangeInputType.h:
215
216 2010-12-29  Abhishek Arya  <inferno@chromium.org>
217
218         Reviewed by Eric Seidel.
219
220         When cloning an anonymous block, make sure to set the childrenInline flag based
221         on the state of the block to be cloned.
222         https://bugs.webkit.org/show_bug.cgi?id=51489
223
224         Test: fast/multicol/span/clone-anonymous-block-non-inline-child-crash.html
225
226         * rendering/RenderBlock.cpp:
227         (WebCore::RenderBlock::clone): add code to handle cloning of anonymous blocks.
228         (WebCore::RenderBlock::splitBlocks): remove anonymous block creation calls since it is now handled by clone().
229
230 2010-12-29  Patrick Gansterer  <paroga@webkit.org>
231
232         Unreviewed build fix for WinCE after r73802.
233
234         Reapply parts from r72585:
235         Port ContextMenuWin.cpp to WinCE
236         https://bugs.webkit.org/show_bug.cgi?id=48408
237
238         * CMakeLists.txt:
239         * platform/ContextMenu.h:
240         * platform/win/ContextMenuWin.cpp:
241         (WebCore::ContextMenu::getContextMenuItems):
242         (WebCore::ContextMenu::createNativeMenuFromItems):
243
244 2010-12-29  Kent Hansen  <kent.hansen@nokia.com>
245
246         Reviewed by Simon Hausmann.
247
248         [Qt] Fix compilation with Qt in namespace
249         https://bugs.webkit.org/show_bug.cgi?id=51701
250
251         * platform/graphics/ContextShadow.h:
252         * platform/graphics/GraphicsContext3D.h:
253         * platform/network/NetworkingContext.h:
254         * platform/network/qt/QtNAMThreadSafeProxy.h:
255         * plugins/PluginView.h:
256
257 2010-12-28  Alexander Pavlov  <apavlov@chromium.org>
258
259         Reviewed by Pavel Feldman.
260
261         Web Inspector: A disabled style property should get enabled when edited
262         https://bugs.webkit.org/show_bug.cgi?id=51679
263
264         Test: inspector/styles-disable-then-change.html
265
266         * inspector/front-end/CSSStyleModel.js:
267         (WebInspector.CSSProperty.prototype.setText):
268         (WebInspector.CSSProperty.prototype.setText.callback):
269
270 2010-12-29  Patrick Gansterer  <paroga@webkit.org>
271
272         Reviewed by Andreas Kling.
273
274         [CMake] Remove WebKitGenerators
275         https://bugs.webkit.org/show_bug.cgi?id=50445
276
277         * CMakeLists.txt: Pass preprocessor to generate-bindings.pl.
278
279 2010-12-28  Pratik Solanki  <psolanki@apple.com>
280
281         Reviewed by Eric Seidel.
282
283         https://bugs.webkit.org/show_bug.cgi?id=51522
284         Use deviceRGBColorSpaceRef() instead of calling CGColorSpaceCreateDeviceRGB()
285
286         * page/win/FrameCGWin.cpp:
287         (WebCore::imageFromRect):
288         * platform/graphics/cg/GradientCG.cpp:
289         (WebCore::Gradient::platformGradient):
290         * platform/graphics/cg/GraphicsContext3DCG.cpp:
291         (WebCore::GraphicsContext3D::paintToCanvas):
292         * platform/graphics/cg/ImageCG.cpp:
293         (WebCore::BitmapImage::checkForSolidColor):
294         * platform/graphics/gstreamer/ImageGStreamerCG.mm:
295         (ImageGStreamer::ImageGStreamer):
296         * platform/graphics/win/GraphicsContextCGWin.cpp:
297         (WebCore::CGContextWithHDC):
298         (WebCore::GraphicsContext::releaseWindowsContext):
299         (WebCore::GraphicsContext::drawWindowsBitmap):
300         * platform/graphics/win/ImageCGWin.cpp:
301         (WebCore::BitmapImage::create):
302         (WebCore::BitmapImage::getHBITMAPOfSize):
303         * platform/image-decoders/cg/ImageDecoderCG.cpp:
304         (WebCore::createColorSpace):
305         * platform/win/DragImageCGWin.cpp:
306         (WebCore::allocImage):
307         (WebCore::createCgContextFromBitmap):
308         * rendering/RenderThemeMac.mm:
309         (WebCore::RenderThemeMac::paintMenuListButtonGradients):
310         (WebCore::RenderThemeMac::paintSliderTrack):
311         * rendering/RenderThemeSafari.cpp:
312         (WebCore::RenderThemeSafari::paintMenuListButtonGradients):
313         (WebCore::RenderThemeSafari::paintSliderTrack):
314
315 2010-12-28  Daniel Bates  <dbates@rim.com>
316
317         Reviewed by Sam Weinig.
318
319         Substitute // MARK: for compiler-specific #pragma mark
320         https://bugs.webkit.org/show_bug.cgi?id=51657
321
322         Fix compilation warnings about "#pragma mark" on GTK+ bots by
323         substituting  "// MARK:" for "#pragma mark", which provides
324         analogous code-bookmarking functionality under Xcode.
325
326         * platform/graphics/cg/PathCG.cpp:
327         * platform/graphics/mac/WebLayer.mm:
328
329 2010-12-28  Jan Erik Hanssen  <jhanssen@sencha.com>
330
331         Reviewed by Eric Seidel.
332
333         [Qt] GraphicsContext::getCTM() does not need to make a copy of QPainter::combinedTransform()
334         https://bugs.webkit.org/show_bug.cgi?id=51687
335
336         Use a const reference instead of a copy of QPainter::combinedTransform() 
337         in GraphicsContext::getCTM()
338
339         * platform/graphics/qt/GraphicsContextQt.cpp:
340         (WebCore::GraphicsContext::getCTM):
341
342 2010-12-28  Takashi Toyoshima  <toyoshim@google.com>
343
344         Reviewed by Eric Seidel.
345
346         gcc detected 'control reaches end of non-void function' with
347         -finstrument-functions option.
348         https://bugs.webkit.org/show_bug.cgi?id=51669
349
350         No new tests. These fixes are trivial.
351
352         * dom/Element.cpp:
353         (WebCore::Element::childTypeAllowed):
354         * inspector/InspectorResourceAgent.cpp:
355         (WebCore::cachedResourceTypeString):
356
357 2010-12-28  Tony Gentilcore  <tonyg@chromium.org>
358
359         Reviewed by Eric Seidel.
360
361         Remove unused member of PendingScript
362         https://bugs.webkit.org/show_bug.cgi?id=51684
363
364         This was used when HTMLScriptRunner::runScript created a PendingScript
365         for inline scripts. But now it just calls executeScript() directly.
366         External scripts always have the minimum starting line number.
367
368         No new tests because no changed functionality.
369
370         * dom/PendingScript.cpp:
371         (WebCore::PendingScript::releaseElementAndClear):
372         * dom/PendingScript.h:
373         (WebCore::PendingScript::PendingScript):
374         (WebCore::PendingScript::operator=):
375         * html/parser/HTMLScriptRunner.cpp:
376         (WebCore::HTMLScriptRunner::sourceFromPendingScript):
377
378 2010-12-20  Antonio Gomes  <agomes@rim.com>
379
380         Reviewed by Daniel Bates.
381
382         Spatial Navigation: code clean up (Part VI)
383         https://bugs.webkit.org/show_bug.cgi?id=50666
384
385         No new tests needed.
386
387         * page/FocusController.cpp:
388         (WebCore::updatFocusCandidateIfNeeded): Assert renderer() and
389         isElementNode() now that we are bailing out earlier in both the
390         FocusCandidate constructor and FocusController::findFocusCandidateInContainer().
391         * page/SpatialNavigation.h: Swapped the parameters order in canScrollInDirection
392         and virtualRectForAreaElementAndDirection functions.
393         (WebCore::FocusController::findFocusCandidateInContainer):
394         (WebCore::FocusController::advanceFocusDirectionallyInContainer): Adjusted callsites
395         of canScrollInDirection(), and added an early return if !isElementNode().
396         (WebCore::FocusController::advanceFocusDirectionally): Adjusted callsite of
397         virtualRectForAreaElementAndDirection();
398         * page/SpatialNavigation.cpp:
399         (WebCore::FocusCandidate::FocusCandidate): Assert if node is not a element node;
400         (WebCore::isScrollableNode): Renamed from isScrollableContainerNode;
401         (WebCore::scrollInDirection): Adjusted callsite after function name change;
402         (WebCore::scrollableEnclosingBoxOrParentFrameForNodeInDi:rection): Assert if node is
403         a documentNode.
404         (WebCore::canScrollInDirection): Signature changed.
405         (WebCore::canBeScrolledIntoView): Ditto.
406         (WebCore::virtualRectForAreaElementAndDirection): Ditto.
407
408 2010-12-28  Adrienne Walker  <enne@google.com>
409
410         Reviewed by Kenneth Russell.
411
412         [chromium] Fix tiled compositor assertion after GPU process recovery.
413         https://bugs.webkit.org/show_bug.cgi?id=51682
414
415         After the GPU process recovers, the layer size is set to IntSize(),
416         but IntRect::unite() has a special case for empty rects.  This
417         behavior was causing the layer size to be too small, causing an
418         out-of-bounds array access elsewhere.
419
420         No new tests.
421
422         * platform/graphics/chromium/LayerTilerChromium.cpp:
423         (WebCore::LayerTilerChromium::growLayerToContain):
424
425 2010-12-23  Zhenyao Mo  <zmo@google.com>
426
427         Reviewed by Kenneth Russell.
428
429         Initialize to 0 for undefined values in CopyTexImage2D
430         https://bugs.webkit.org/show_bug.cgi?id=51421
431
432         * html/canvas/WebGLFramebuffer.cpp: Track width/height/internalFormat of color buffer.
433         (WebCore::WebGLFramebuffer::WebGLFramebuffer):
434         (WebCore::WebGLFramebuffer::setAttachment):
435         (WebCore::WebGLFramebuffer::getWidth):
436         (WebCore::WebGLFramebuffer::getHeight):
437         (WebCore::WebGLFramebuffer::getColorBufferFormat):
438         * html/canvas/WebGLFramebuffer.h:
439         * html/canvas/WebGLRenderingContext.cpp:
440         (WebCore::WebGLRenderingContext::copyTexImage2D): Initialize undefined pixels to 0.
441         (WebCore::WebGLRenderingContext::copyTexSubImage2D):
442         (WebCore::WebGLRenderingContext::framebufferTexture2D):
443         (WebCore::WebGLRenderingContext::renderbufferStorage):
444         (WebCore::WebGLRenderingContext::getBoundFramebufferWidth):
445         (WebCore::WebGLRenderingContext::getBoundFramebufferHeight):
446         * html/canvas/WebGLRenderingContext.h:
447         * html/canvas/WebGLTexture.cpp: Track width/height/internalFormat of a texture by target/level.
448         (WebCore::WebGLTexture::getInternalFormat):
449         (WebCore::WebGLTexture::getWidth):
450         (WebCore::WebGLTexture::getHeight):
451         (WebCore::WebGLTexture::mapTargetToIndex):
452         (WebCore::WebGLTexture::getLevelInfo):
453         * html/canvas/WebGLTexture.h:
454         (WebCore::WebGLTexture::isTexture):
455         * platform/graphics/GraphicsContext3D.h: Add getInternalFramebufferSize() function.
456         * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
457         (WebCore::GraphicsContext3D::getInternalFramebufferSize):
458         * platform/graphics/qt/GraphicsContext3DQt.cpp:
459         (WebCore::GraphicsContext3D::getInternalFramebufferSize):
460
461 2010-12-23  Zhenyao Mo  <zmo@google.com>
462
463         Reviewed by Kenneth Russell.
464
465         Map GLsizei to long instead of unsigned long in WebGLRenderingContext and GraphicsContext3D
466         https://bugs.webkit.org/show_bug.cgi?id=39855
467
468         * html/canvas/WebGLRenderingContext.cpp:
469         (WebCore::WebGLRenderingContext::copyTexImage2D): Map GLsizei to long.
470         (WebCore::WebGLRenderingContext::copyTexSubImage2D): Ditto.
471         (WebCore::WebGLRenderingContext::renderbufferStorage): Ditto.
472         (WebCore::WebGLRenderingContext::scissor): Ditto.
473         (WebCore::WebGLRenderingContext::texImage2DBase): Ditto.
474         (WebCore::WebGLRenderingContext::texImage2D): Ditto.
475         (WebCore::WebGLRenderingContext::texSubImage2DBase): Ditto.
476         (WebCore::WebGLRenderingContext::texSubImage2DImpl): Ditto.
477         (WebCore::WebGLRenderingContext::texSubImage2D): Ditto.
478         (WebCore::WebGLRenderingContext::viewport): Ditto.
479         (WebCore::WebGLRenderingContext::validateSize): Check the sizes are non-negative.
480         * html/canvas/WebGLRenderingContext.h:
481         * html/canvas/WebGLRenderingContext.idl:
482
483 2010-12-28  Abhishek Arya  <inferno@chromium.org>
484
485         Reviewed by Kenneth Russell.
486
487         Fix crash with invalid font in m_fontList by not drawing text when a custom font is in the
488         process of loading.
489         https://bugs.webkit.org/show_bug.cgi?id=51681
490
491         Test: canvas/philip/tests/2d.text-custom-font-load-crash.html
492
493         * html/canvas/CanvasRenderingContext2D.cpp:
494         (WebCore::CanvasRenderingContext2D::drawTextInternal): bail out if a custom font is loading.
495         * platform/graphics/Font.cpp:
496         (WebCore::Font::operator==): Replace condition with new function loadingCustomFonts()
497         (WebCore::Font::drawText): Replace condition with new function loadingCustomFonts()
498         (WebCore::Font::drawEmphasisMarks): Replace condition with new function loadingCustomFonts()
499         * platform/graphics/Font.h:
500         (WebCore::Font::loadingCustomFonts): new function that returns if a custom font is loading.
501
502 2010-12-28  Dimitri Glazkov  <dglazkov@chromium.org>
503
504         Reviewed by Eric Seidel.
505
506         Combine setShadowRoot and clearShadowRoot into a simpler API
507         https://bugs.webkit.org/show_bug.cgi?id=50971
508
509         No change in behavior, and API is not used yet.
510
511         * dom/Element.cpp:
512         (WebCore::Element::setShadowRoot): Combined clearing and setting of
513             the shadowRoot, also hooked up with setting and clearing of the
514             corresponding shadowHost values.
515         * dom/Element.h: renamed clearShadowRoot to removeShadowRoot and made it
516             private.
517         * dom/Node.h: Made shadow host-related functions public so that
518             Element::setShadowRoot can access setShadowHost. It seems logical
519             to make shadowHost public as well to keep the defs together.
520
521 2010-12-28  Andrey Kosyakov  <caseq@chromium.org>
522
523         Reviewed by Pavel Feldman.
524
525         Web Inspector: [Chromium] Expose extension API to select a node in WebInspector
526         Do not request content for resources with non-numeric identifiers.
527         https://bugs.webkit.org/show_bug.cgi?id=49727
528
529         Test: http/tests/inspector/extensions-resources-redirect.html
530
531         * inspector/front-end/NetworkManager.js:
532         (WebInspector.NetworkManager.prototype._appendRedirect):
533
534 2010-12-28  Ilya Tikhonovsky  <loislo@chromium.org>
535
536         Unreviewed build fix for Qt.
537
538         ResourceTreeModel.js was added.
539
540         * inspector/front-end/WebKit.qrc:
541
542 2010-12-28  Mikhail Naganov  <mnaganov@chromium.org>
543
544         Reviewed by Pavel Feldman.
545
546         [Chromium] Fix memory leak in Profiles tab concerned with heap profiles views.
547
548         https://bugs.webkit.org/show_bug.cgi?id=51680
549
550         * inspector/front-end/ProfilesPanel.js:
551         (WebInspector.ProfilesPanel.prototype._reset):
552
553 2010-12-28  Alexander Pavlov  <apavlov@chromium.org>
554
555         Reviewed by Pavel Feldman.
556
557         Web Inspector: REGRESSION: Clicking image resource in style sidebar doesn't actually go to resource anymore
558         https://bugs.webkit.org/show_bug.cgi?id=51663
559
560         The base URI is now computed correctly for links from CSS property uri(...) values. Additionally,
561         optional quotes/apostrophes and spaces are now allowed inside uri(...).
562
563         Test: inspector/styles-url-linkify.html
564
565         * inspector/front-end/StylesSidebarPane.js:
566         (WebInspector.StylePropertyTreeElement.prototype.updateTitle.linkifyURL):
567         (WebInspector.StylePropertyTreeElement.prototype.updateTitle):
568
569 2010-12-21  Ilya Tikhonovsky  <loislo@chromium.org>
570
571         Reviewed by Pavel Feldman.
572
573         Web Inspector: Protocol cleanup task. Introduce Network, DOMStorage and Database domains.
574
575         Domain was changed for Resources, FileSystem etc. related methods.
576         ResourcesManager was renamed to NetworkManager.
577         ResourceTreeModel was extracted as separate file.
578         FileSystem, Database, DOMStorage and ApplicationCache methods were
579         removed from NetworkManager and added to corresponding classes.
580
581         https://bugs.webkit.org/show_bug.cgi?id=51334
582
583         * WebCore.gypi:
584         * WebCore.vcproj/WebCore.vcproj:
585         * inspector/CodeGeneratorInspector.pm:
586         * inspector/Inspector.idl:
587         * inspector/front-end/AuditRules.js:
588         (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.evalCallback.selectorsCallback):
589         * inspector/front-end/CSSStyleModel.js:
590         (WebInspector.CSSStyleModel.prototype._styleSheetChanged.callback):
591         (WebInspector.CSSStyleModel.prototype._styleSheetChanged):
592         * inspector/front-end/ConsoleView.js:
593         (WebInspector.ConsoleView.prototype.addMessage):
594         (WebInspector.ConsoleView.prototype.clearMessages):
595         * inspector/front-end/DOMAgent.js:
596         (WebInspector.ApplicationCache.updateApplicationCacheStatus):
597         (WebInspector.ApplicationCache.updateNetworkState):
598         * inspector/front-end/DOMStorage.js:
599         (WebInspector.DOMStorage.addDOMStorage):
600         (WebInspector.DOMStorage.selectDOMStorage):
601         (WebInspector.DOMStorage.updateDOMStorage):
602         * inspector/front-end/Database.js:
603         (WebInspector.Database.prototype.executeSql):
604         (WebInspector.Database.addDatabase):
605         (WebInspector.Database.selectDatabase):
606         (WebInspector.Database.sqlTransactionSucceeded):
607         (WebInspector.Database.sqlTransactionFailed):
608         * inspector/front-end/FileSystemView.js:
609         (WebInspector.FileSystem.didGetFileSystemPath):
610         (WebInspector.FileSystem.didGetFileSystemError):
611         (WebInspector.FileSystem.didGetFileSystemDisabled):
612         * inspector/front-end/NetworkItemView.js:
613         (WebInspector.NetworkItemView):
614         * inspector/front-end/NetworkManager.js: Added.
615         (WebInspector.NetworkManager):
616         (WebInspector.NetworkManager.prototype._createResource):
617         (WebInspector.NetworkManager.prototype.identifierForInitialRequest):
618         (WebInspector.NetworkManager.prototype.willSendRequest):
619         (WebInspector.NetworkManager.prototype._updateResourceWithRequest):
620         (WebInspector.NetworkManager.prototype._appendRedirect):
621         (WebInspector.NetworkManager.prototype.markResourceAsCached):
622         (WebInspector.NetworkManager.prototype.didReceiveResponse):
623         (WebInspector.NetworkManager.prototype._updateResourceWithResponse):
624         (WebInspector.NetworkManager.prototype.didReceiveContentLength):
625         (WebInspector.NetworkManager.prototype.didFinishLoading):
626         (WebInspector.NetworkManager.prototype.didFailLoading):
627         (WebInspector.NetworkManager.prototype.didLoadResourceFromMemoryCache):
628         (WebInspector.NetworkManager.prototype._updateResourceWithCachedResource):
629         (WebInspector.NetworkManager.prototype.setInitialContent):
630         (WebInspector.NetworkManager.prototype.didCommitLoadForFrame):
631         (WebInspector.NetworkManager.prototype.frameDetachedFromParent):
632         (WebInspector.NetworkManager.prototype.didCreateWebSocket):
633         (WebInspector.NetworkManager.prototype.willSendWebSocketHandshakeRequest):
634         (WebInspector.NetworkManager.prototype.didReceiveWebSocketHandshakeResponse):
635         (WebInspector.NetworkManager.prototype.didCloseWebSocket):
636         (WebInspector.NetworkManager.prototype._processCachedResources):
637         (WebInspector.NetworkManager.prototype._addFramesRecursively):
638         (WebInspector.NetworkManager.requestContent):
639         * inspector/front-end/NetworkPanel.js:
640         (WebInspector.NetworkPanel.prototype.refreshResource):
641         * inspector/front-end/Resource.js:
642         (WebInspector.Resource.prototype._innerRequestContent):
643         * inspector/front-end/ResourceManager.js: Removed.
644         * inspector/front-end/ResourceTreeModel.js: Added.
645         (WebInspector.ResourceTreeModel):
646         (WebInspector.ResourceTreeModel.prototype.addOrUpdateFrame):
647         (WebInspector.ResourceTreeModel.prototype.didCommitLoadForFrame):
648         (WebInspector.ResourceTreeModel.prototype.frameDetachedFromParent):
649         (WebInspector.ResourceTreeModel.prototype._clearChildFramesAndResources):
650         (WebInspector.ResourceTreeModel.prototype.addResourceToFrame):
651         (WebInspector.ResourceTreeModel.prototype._clearResources):
652         (WebInspector.ResourceTreeModel.prototype.forAllResources):
653         (WebInspector.ResourceTreeModel.prototype.addConsoleMessage):
654         (WebInspector.ResourceTreeModel.prototype.clearConsoleMessages):
655         (WebInspector.ResourceTreeModel.prototype._callForFrameResources):
656         (WebInspector.ResourceTreeModel.prototype.resourceForURL):
657         (WebInspector.ResourceTreeModel.prototype.bindResourceURL):
658         (WebInspector.ResourceTreeModel.prototype._unbindResourceURL):
659         (WebInspector.ResourceTreeModel.createResource):
660         * inspector/front-end/ResourceView.js:
661         (WebInspector.ResourceView.createResourceView):
662         (WebInspector.ResourceView.resourceViewTypeMatchesResource):
663         (WebInspector.ResourceView.resourceViewForResource):
664         (WebInspector.ResourceView.recreateResourceView):
665         (WebInspector.ResourceView.existingResourceViewForResource):
666         * inspector/front-end/ResourcesPanel.js:
667         (WebInspector.ResourcesPanel.prototype.canShowSourceLine):
668         (WebInspector.ResourcesPanel.prototype.showSourceLine):
669         (WebInspector.ResourcesPanel.prototype.showResource):
670         (WebInspector.ResourcesPanel.prototype.get searchableViews.callback):
671         (WebInspector.ResourcesPanel.prototype.get searchableViews):
672         (WebInspector.FrameResourceTreeElement.prototype._errorsWarningsUpdated):
673         (WebInspector.FrameResourceTreeElement.prototype._contentChanged):
674         * inspector/front-end/ScriptsPanel.js:
675         (WebInspector.ScriptsPanel.prototype._addScript):
676         (WebInspector.ScriptsPanel.prototype.reset):
677         (WebInspector.ScriptsPanel.prototype._sourceFrameForResource):
678         (WebInspector.ScriptsPanel.prototype._showScriptOrResource):
679         * inspector/front-end/WebKit.qrc:
680         * inspector/front-end/inspector.html:
681         * inspector/front-end/inspector.js:
682         (WebInspector.forAllResources):
683         (WebInspector.resourceForURL):
684
685 2010-12-27  Helder Correia  <helder@sencha.com>
686
687         Reviewed by Ariya Hidayat.
688
689         ContextShadow should use AffineTransform instead of TransformationMatrix
690         https://bugs.webkit.org/show_bug.cgi?id=51661
691
692         ContextShadow needs the CTM to make sure shadows are not affected by
693         transformations when drawing on a canvas. AffineTransform is sufficient
694         in this case.
695
696         Existing tests: fast/canvas/canvas*shadow*html
697
698         * platform/graphics/ContextShadow.cpp:
699         (WebCore::ContextShadow::mustUseContextShadow):
700         (WebCore::ContextShadow::adjustBlurDistance):
701         (WebCore::ContextShadow::calculateLayerBoundingRect):
702         * platform/graphics/ContextShadow.h:
703         * platform/graphics/cairo/ContextShadowCairo.cpp:
704         (WebCore::ContextShadow::getTransformationMatrixFromContext):
705         * platform/graphics/qt/ContextShadowQt.cpp:
706         (WebCore::ContextShadow::getTransformationMatrixFromContext):
707
708 2010-12-27  Daniel Bates  <dbates@rim.com>
709
710         Reviewed by Antonio Gomes.
711
712         Clean up: Rename HTMLFrameElementBase::getMarginWidth() and HTMLFrameElementBase::getMarginHeight()
713         https://bugs.webkit.org/show_bug.cgi?id=51634
714
715         Rename HTMLFrameElementBase::getMarginWidth() and HTMLFrameElementBase::getMarginHeight()
716         to HTMLFrameElementBase::marginWidth() and HTMLFrameElementBase::marginHeight(), respectively.
717         This will make the names of these getters consistent with the naming convention we use for
718         getters.
719
720         * html/HTMLBodyElement.cpp:
721         (WebCore::HTMLBodyElement::insertedIntoDocument):
722         * html/HTMLFrameElementBase.h:
723         (WebCore::HTMLFrameElementBase::marginWidth): Renamed; Formerly getMarginWidth().
724         (WebCore::HTMLFrameElementBase::marginHeight): Renamed; Formerly getMarginHeight().
725         * loader/SubframeLoader.cpp:
726         (WebCore::SubframeLoader::loadSubframe):
727         * page/FrameView.cpp:
728         (WebCore::FrameView::init):
729         * rendering/RenderEmbeddedObject.cpp:
730         (WebCore::RenderEmbeddedObject::viewCleared): Also renamed variables marginw and marginh
731         to marginWidth and marginHeight, respectively. This makes the names of these variables
732         consistent with the names of similar variables in SubframeLoader::loadSubframe() and FrameView::init().
733         * rendering/RenderFrame.cpp:
734         (WebCore::RenderFrame::viewCleared): Ditto.
735
736 2010-12-27  Martin Robinson  <mrobinson@igalia.com>
737
738         Reviewed by Daniel Bates.
739
740         [GTK] RenderThemeGtk::m_HScale and RenderThemeGtk::m_VScale are not initialized
741         https://bugs.webkit.org/show_bug.cgi?id=51654
742
743         Properly initialize slider members of RenderThemeGtk. This can lead to test crashes
744         on some debug configurations.
745
746         No new tests. This is already covered by current slider tests. It isn't crashing on
747         the bots, but it does crash locally.
748
749         * platform/gtk/RenderThemeGtk.cpp:
750         (WebCore::RenderThemeGtk::RenderThemeGtk): Properly initialize members.
751
752 2010-12-27  Anton Muhin  <antonm@chromium.org>
753
754         Reviewed by David Levin.
755
756         [v8] Remove unused methods to protect/unprotect wrappers during garbage collection
757         https://bugs.webkit.org/show_bug.cgi?id=51648
758
759         * bindings/v8/ScriptController.cpp:
760         * bindings/v8/ScriptController.h:
761         * bindings/v8/V8GCController.cpp:
762         (WebCore::V8GCController::gcEpilogue):
763         * bindings/v8/V8GCController.h:
764
765 2010-12-27  Yury Semikhatsky  <yurys@chromium.org>
766
767         Unreviewed. Removed trailing spaces from a localized
768         string to make it the same as the one used in the code.
769
770         * English.lproj/localizedStrings.js:
771
772 2010-12-27  Yael Aharon  <yael.aharon@nokia.com>
773
774         Reviewed by Eric Seidel.
775
776         Browser is failing 16 baseline test from Selector API Test Suite
777         https://bugs.webkit.org/show_bug.cgi?id=42968
778
779         Throw an exception if there is no argument to querySelector or 
780         querySelectorAll. This replaces the current behavior of passing the string
781         "undefined" as the argument.
782
783         No new tests, just updating the existing results for 
784         fast/dom/SelectorAPI/resig-SelectorAPI-test.xhtml.
785
786         * dom/Document.idl:
787         * dom/DocumentFragment.idl:
788         * dom/Element.idl:
789
790 2010-12-26  MORITA Hajime  <morrita@google.com>
791
792         Reviewed by Dan Bernstein.
793
794         For box-shadow, non-primary shadows should have specified radii.
795         https://bugs.webkit.org/show_bug.cgi?id=51386
796
797         On paintBoxShadow(), the spread value accidentally accumulated accidentally
798         during the loop, which should be applied individually for radius of each shadow. 
799         This change makes the radii for rects computed for each shadow.
800         
801         Test: fast/box-shadow/spread-multiple-normal.html
802
803         * rendering/RenderBoxModelObject.cpp:
804         (WebCore::RenderBoxModelObject::paintBoxShadow):
805
806 2010-12-26  Patrick Gansterer  <paroga@webkit.org>
807
808         Reviewed by Eric Seidel.
809
810         Improve output of HTML parser benchmark
811         https://bugs.webkit.org/show_bug.cgi?id=51611
812
813         Calculate and show median, min and max values.
814
815         * benchmarks/parser/html-parser.html:
816
817 2010-12-26  Abhishek Arya  <inferno@chromium.org>
818
819         Reviewed by Simon Fraser.
820
821         Remove the bad assert in paintPaginatedChildLayer, hitTestPaginatedChildLayer. 
822         https://bugs.webkit.org/show_bug.cgi?id=48772
823
824         Test: fast/multicol/renderer-positioned-assert-crash.html
825
826         * rendering/RenderLayer.cpp:
827         (WebCore::RenderLayer::paintPaginatedChildLayer):
828         (WebCore::RenderLayer::hitTestPaginatedChildLayer):
829
830 2010-12-25  Peter Rybin  <peter.rybin@gmail.com>
831
832         Reviewed by Adam Barth.
833
834         Adds currentColumn (and currentLine) to SegmentedString. Switches
835         HTMLTreeBuilder to HTMLDocumentParser::textPosition when it
836         needs position for a <script> tag.
837
838         SegmentedString should provide column position
839         https://bugs.webkit.org/show_bug.cgi?id=51311
840
841         * html/parser/HTMLDocumentParser.cpp:
842         (WebCore::HTMLDocumentParser::HTMLDocumentParser):
843         (WebCore::HTMLDocumentParser::textPosition):
844         * html/parser/HTMLInputStream.h:
845         (WebCore::HTMLInputStream::current):
846         (WebCore::InsertionPointRecord::InsertionPointRecord):
847         (WebCore::InsertionPointRecord::~InsertionPointRecord):
848         * html/parser/HTMLTreeBuilder.cpp:
849         (WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
850         (WebCore::HTMLTreeBuilder::processScriptStartTag):
851         * html/parser/HTMLTreeBuilder.h:
852         (WebCore::HTMLTreeBuilder::create):
853         * platform/text/SegmentedString.cpp:
854         (WebCore::SegmentedString::operator=):
855         (WebCore::SegmentedString::numberOfCharactersConsumedSlow):
856         (WebCore::SegmentedString::advanceSlowCase):
857         (WebCore::SegmentedString::currentLine):
858         (WebCore::SegmentedString::currentColumn):
859         (WebCore::SegmentedString::setCurrentPosition):
860         * platform/text/SegmentedString.h:
861         (WebCore::SegmentedString::SegmentedString):
862         (WebCore::SegmentedString::advancePastNewline):
863         (WebCore::SegmentedString::advance):
864         (WebCore::SegmentedString::numberOfCharactersConsumed):
865
866 2010-12-25  Andreas Kling  <kling@webkit.org>
867
868         Reviewed by Kenneth Rohde Christiansen.
869
870         GraphicsContext: Don't pass StrokeStyle (enum) as const reference
871         https://bugs.webkit.org/show_bug.cgi?id=51608
872
873         * platform/graphics/GraphicsContext.cpp:
874         (WebCore::GraphicsContext::setStrokeStyle):
875         (WebCore::GraphicsContext::setPlatformStrokeStyle):
876         (WebCore::GraphicsContext::adjustLineToPixelBoundaries):
877         * platform/graphics/GraphicsContext.h:
878         * platform/graphics/cairo/GraphicsContextCairo.cpp:
879         (WebCore::GraphicsContext::setPlatformStrokeStyle):
880         * platform/graphics/haiku/GraphicsContextHaiku.cpp:
881         (WebCore::GraphicsContext::setPlatformStrokeStyle):
882         * platform/graphics/openvg/GraphicsContextOpenVG.cpp:
883         (WebCore::GraphicsContext::setPlatformStrokeStyle):
884         * platform/graphics/openvg/PainterOpenVG.cpp:
885         (WebCore::PainterOpenVG::setStrokeStyle):
886         * platform/graphics/openvg/PainterOpenVG.h:
887         * platform/graphics/qt/GraphicsContextQt.cpp:
888         (WebCore::GraphicsContext::setPlatformStrokeStyle):
889         * platform/graphics/skia/GraphicsContextSkia.cpp:
890         (WebCore::GraphicsContext::setPlatformStrokeStyle):
891
892 2010-12-24  Dan Bernstein  <mitz@apple.com>
893
894         Reviewed by Alexey Proskuryakov.
895
896         REGRESSION (r74648): XHR layout test failures
897         https://bugs.webkit.org/show_bug.cgi?id=51603
898
899         Reverted r74648.
900
901         * WebCore.exp.in:
902
903 2010-12-24  Dan Bernstein  <mitz@apple.com>
904
905         Try to fix the Qt build after r74648.
906
907         * WebCore.gypi:
908         * WebCore.pro:
909         * platform/network/qt/CredentialStorageQt.cpp: Added.
910         (WebCore::CredentialStorage::getFromPersistentStorage):
911
912 2010-12-24  Simon Fraser  <simon.fraser@apple.com>
913
914         Reviewed by Dan Bernstein.
915
916         CSSStyleSelector cleanup
917         https://bugs.webkit.org/show_bug.cgi?id=51597
918
919         Make some methods const. Add assertion to checkOneSelector, with the
920         intention of later removing the if (!e) check (this is hot code).
921
922         * css/CSSStyleSelector.cpp:
923         (WebCore::CSSStyleSelector::locateCousinList):
924         (WebCore::CSSStyleSelector::canShareStyleWithElement):
925         (WebCore::CSSStyleSelector::locateSharedStyle):
926         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
927         (WebCore::CSSStyleSelector::mmLength):
928         (WebCore::CSSStyleSelector::inchLength):
929         (WebCore::CSSStyleSelector::getColorFromPrimitiveValue):
930         (WebCore::CSSStyleSelector::hasSelectorForAttribute):
931         * css/CSSStyleSelector.h:
932         (WebCore::CSSStyleSelector::fontSelector):
933
934 2010-12-24  Dan Bernstein  <mitz@apple.com>
935
936         Reviewed by Anders Carlsson.
937
938         <rdar://problem/8758386> The web process uses its own credential storage
939         https://bugs.webkit.org/show_bug.cgi?id=51599
940
941         * WebCore.exp.in: Export CredentialStorage::getFromPersistentStorage(), Credential::hasPassword(),
942         and Credential::isEmpty().
943
944 2010-12-24  Yury Semikhatsky  <yurys@chromium.org>
945
946         Reviewed by Darin Adler.
947
948         [V8] Rename V8CustomEventListener.{h,cpp} to V8EventListener.{h,cpp}
949         https://bugs.webkit.org/show_bug.cgi?id=51595
950
951         * WebCore.gypi:
952         * bindings/v8/V8DOMWrapper.cpp:
953         * bindings/v8/V8EventListener.cpp: Renamed from WebCore/bindings/v8/custom/V8CustomEventListener.cpp.
954         (WebCore::V8EventListener::V8EventListener):
955         (WebCore::V8EventListener::getListenerFunction):
956         (WebCore::V8EventListener::callListenerFunction):
957         * bindings/v8/V8EventListener.h: Renamed from WebCore/bindings/v8/custom/V8CustomEventListener.h.
958         (WebCore::V8EventListener::create):
959         * bindings/v8/V8EventListenerList.h:
960         * bindings/v8/V8WorkerContextEventListener.h:
961         * bindings/v8/custom/V8DOMWindowCustom.cpp:
962         * bindings/v8/custom/V8LocationCustom.cpp:
963         * bindings/v8/custom/V8NodeCustom.cpp:
964         * bindings/v8/custom/V8NotificationCenterCustom.cpp:
965
966 2010-12-24  Carlos Garcia Campos  <cgarcia@igalia.com>
967
968         Reviewed by Xan Lopez.
969
970         [GTK] Show current time / total in media player
971         https://bugs.webkit.org/show_bug.cgi?id=51535
972
973         * css/mediaControlsGtk.css:
974         (audio::-webkit-media-controls-current-time-display, video::-webkit-media-controls-current-time-display):
975         * platform/gtk/RenderThemeGtk.cpp:
976         (WebCore::RenderThemeGtk::formatMediaControlsCurrentTime):
977         (WebCore::RenderThemeGtk::paintMediaCurrentTime):
978         * platform/gtk/RenderThemeGtk.h:
979
980 2010-12-24  Jan Erik Hanssen  <jhanssen@sencha.com>
981
982         Reviewed by Eric Seidel.
983
984         Clean up CSSRuleData in CSSStyleSelector.h
985         https://bugs.webkit.org/show_bug.cgi?id=27753
986
987         Move CSSRuleData and CSSRuleDataList from CSSStyleSelector.h to the .cpp file.
988
989         * css/CSSStyleSelector.cpp:
990         (WebCore::CSSRuleData::CSSRuleData):
991         (WebCore::CSSRuleData::~CSSRuleData):
992         (WebCore::CSSRuleData::position):
993         (WebCore::CSSRuleData::rule):
994         (WebCore::CSSRuleData::selector):
995         (WebCore::CSSRuleData::next):
996         (WebCore::CSSRuleDataList::CSSRuleDataList):
997         (WebCore::CSSRuleDataList::~CSSRuleDataList):
998         (WebCore::CSSRuleDataList::first):
999         (WebCore::CSSRuleDataList::last):
1000         (WebCore::CSSRuleDataList::append):
1001         * css/CSSStyleSelector.h:
1002
1003 2010-12-24  Yury Semikhatsky  <yurys@chromium.org>
1004
1005         Unreviewed. Fix compilation on Windows.
1006
1007         * inspector/InspectorStyleSheet.cpp:
1008         (WebCore::InspectorStyle::~InspectorStyle): added explicit empty destructor
1009         * inspector/InspectorStyleSheet.h:
1010
1011 2010-12-24  Yury Semikhatsky  <yurys@chromium.org>
1012
1013         Reviewed by Darin Adler.
1014
1015         inspector/debugger-step-out.html crashing intermittently in the bots
1016         https://bugs.webkit.org/show_bug.cgi?id=50868
1017
1018         Use RefPtr rather instead of raw pointers when keeping references
1019         to refcounted objects.
1020
1021         * inspector/InspectorCSSAgent.cpp:
1022         (WebCore::InspectorCSSAgent::getStylesForNode2):
1023         (WebCore::InspectorCSSAgent::getComputedStyleForNode2):
1024         * inspector/InspectorStyleSheet.cpp:
1025         (WebCore::InspectorStyle::create):
1026         (WebCore::InspectorStyle::InspectorStyle):
1027         (WebCore::InspectorStyle::buildObjectForStyle):
1028         (WebCore::InspectorStyle::setPropertyText):
1029         (WebCore::InspectorStyle::toggleProperty):
1030         (WebCore::InspectorStyle::styleText):
1031         (WebCore::InspectorStyle::populateAllProperties):
1032         (WebCore::InspectorStyle::replacePropertyInStyleText):
1033         (WebCore::InspectorStyleSheet::create):
1034         (WebCore::InspectorStyleSheet::InspectorStyleSheet):
1035         (WebCore::InspectorStyleSheetForInlineStyle::create):
1036         (WebCore::InspectorStyleSheetForInlineStyle::InspectorStyleSheetForInlineStyle):
1037         (WebCore::InspectorStyleSheetForInlineStyle::getStyleAttributeRanges):
1038         * inspector/InspectorStyleSheet.h:
1039         (WebCore::InspectorStyle::cssStyle):
1040         (WebCore::InspectorStyleSheet::pageStyleSheet):
1041
1042 2010-12-24  Justin Schuh  <jschuh@chromium.org>
1043
1044         Reviewed by Nikolas Zimmermann.
1045
1046         SVGElementInstance::m_useElement should be cleared when use element is removed from document
1047         https://bugs.webkit.org/show_bug.cgi?id=51486
1048
1049         Test: svg/custom/use-instanceRoot-with-use-removed.svg
1050
1051         * svg/SVGElementInstance.cpp:
1052         (WebCore::SVGElementInstance::invalidateAllInstancesOfElement):
1053         * svg/SVGElementInstance.h:
1054         (WebCore::SVGElementInstance::clearUseElement):
1055         * svg/SVGUseElement.cpp:
1056         (WebCore::SVGUseElement::removedFromDocument):
1057         (WebCore::ShadowTreeUpdateBlocker::if):
1058         (WebCore::SVGUseElement::detachInstance):
1059         (WebCore::SVGUseElement::detach):
1060         * svg/SVGUseElement.h:
1061
1062 2010-12-23  Joseph Pecoraro  <joepeck@webkit.org>
1063
1064         Reviewed by Yury Semikhatsky.
1065
1066         Web Inspector: Missing Localized Strings
1067         https://bugs.webkit.org/show_bug.cgi?id=51542
1068
1069         Added missing strings: "WebSocket",  "Frames", "Text", "Transfer",
1070         "Preserve Log upon Navigation", and "Go to Line".
1071
1072         * English.lproj/localizedStrings.js:
1073
1074 2010-12-24  Alexander Pavlov  <apavlov@chromium.org>
1075
1076         Reviewed by Yury Semikhatsky.
1077
1078         Web Inspector: Inline HTML style property out of sync with element.style in Sidebar
1079         https://bugs.webkit.org/show_bug.cgi?id=51478
1080
1081         Now the element attribute modifications (including "style") are tracked, which results in the
1082         source offsets update (in the backend) and Styles/Metrics pane updates (in the frontend)
1083         on the "style" attribute modification through the Elements tree. Also, it appears that
1084         a complete "style" attribute removal destroys the inline style declaration
1085         (StyledElement::m_inlineStyleDecl), while the code used to rely on it being immutable (hence a crash).
1086
1087         Test: inspector/elements-delete-inline-style.html
1088
1089         * inspector/InspectorCSSAgent.cpp:
1090         (WebCore::InspectorCSSAgent::didModifyDOMAttr):
1091         * inspector/InspectorCSSAgent.h:
1092         * inspector/InspectorDOMAgent.cpp:
1093         (WebCore::InspectorDOMAgent::didModifyDOMAttr):
1094         * inspector/InspectorDOMAgent.h:
1095         * inspector/InspectorStyleSheet.cpp:
1096         (WebCore::InspectorStyleSheetForInlineStyle::InspectorStyleSheetForInlineStyle):
1097         (WebCore::InspectorStyleSheetForInlineStyle::didModifyElementAttribute):
1098         (WebCore::InspectorStyleSheetForInlineStyle::text):
1099         (WebCore::InspectorStyleSheetForInlineStyle::setStyleText):
1100         (WebCore::InspectorStyleSheetForInlineStyle::getStyleAttributeRanges):
1101         * inspector/InspectorStyleSheet.h:
1102         * inspector/front-end/ElementsTreeOutline.js:
1103         (WebInspector.ElementsTreeElement.prototype._attributeEditingCommitted):
1104
1105 2010-12-24  Noel Gordon  <noel.gordon@gmail.com>
1106
1107         Reviewed by Andreas Kling.
1108
1109         [chromium] Fix a style nit in the JPEG encoder
1110         https://bugs.webkit.org/show_bug.cgi?id=51574
1111
1112         * platform/image-encoders/skia/JPEGImageEncoder.cpp: nit begone.
1113
1114 2010-12-23  Alexander Pavlov  <apavlov@chromium.org>
1115
1116         Reviewed by Maciej Stachowiak.
1117
1118         Web Inspector: CSS shorthand properties expand unnecessarily
1119         https://bugs.webkit.org/show_bug.cgi?id=36304
1120
1121         "border-radius" is a shorthand property that has a "non-standard" format and longhands, see
1122         http://www.w3.org/TR/css3-background/#border-radius for reference. CSSParser does not use the
1123         standard parseShorthand() or parse4Values() methods but instead a custom parseBorderRadius() method.
1124         This method didn't use to create a ShorthandScope instance and set the m_implicitShorthand value
1125         appropriately when adding implicit longhands, thus they were added as normal properties
1126         found in the CSS (neither implicit, nor longhands). This is now fixed.
1127
1128         * css/CSSParser.cpp:
1129         (WebCore::CSSParser::parseBorderRadius):
1130
1131 2010-12-24  Justin Schuh  <jschuh@chromium.org>
1132
1133         Reviewed by Darin Adler.
1134
1135         setTargetAttributeAnimatedValue should check for a null shadowTreeElement.
1136         https://bugs.webkit.org/show_bug.cgi?id=51576
1137
1138         Disallowed elements may be pruned from the shadow tree, leaving a null
1139         shadowTreeElement. We should check for that before setting attributes.
1140
1141         Test: svg/custom/animate-disallowed-use-element.svg
1142
1143         * svg/SVGAnimationElement.cpp:
1144         (WebCore::SVGAnimationElement::setTargetAttributeAnimatedValue):
1145
1146 2010-12-24  Evan Martin  <evan@chromium.org>
1147
1148         Reviewed by Darin Adler.
1149
1150         TextMetrics::width is an integer, but the member is a float
1151         https://bugs.webkit.org/show_bug.cgi?id=51566
1152
1153         Change the return type to a float.
1154
1155         No tests, fixing a compiler warning.
1156         (I was unable to produce a difference in the values exposed to pages
1157         with a float versus the previous conversion to an integer.)
1158
1159         * html/TextMetrics.h:
1160         (WebCore::TextMetrics::width):
1161
1162 2010-12-24  Ryuan Choi  <ryuan.choi@samsung.com>
1163
1164         Reviewed by Kenneth Rohde Christiansen.
1165
1166         [EFL] Add option to enable Touch Events.
1167         https://bugs.webkit.org/show_bug.cgi?id=49125
1168
1169         Add files for EFL to support TOUCH_EVENTS.
1170
1171         * CMakeLists.txt:
1172         * CMakeListsEfl.txt:
1173         * platform/PlatformTouchEvent.h: Add EFL related constructor.
1174         * platform/PlatformTouchPoint.h: ditto.
1175         * platform/efl/PlatformTouchEventEfl.cpp: Added.
1176         (WebCore::PlatformTouchEvent::PlatformTouchEvent):
1177         * platform/efl/PlatformTouchPointEfl.cpp: Added.
1178         (WebCore::PlatformTouchPoint::PlatformTouchPoint):
1179
1180 2010-12-24  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
1181
1182         Reviewed by Kenneth Rohde Christiansen.
1183
1184         [EFL] Return an empty string instead of 'application/octet-stream' in getMIMETypeForExtension()
1185         https://bugs.webkit.org/show_bug.cgi?id=51457
1186
1187         WebKit EFL can't play html5 audio because of wrong mime type checking.
1188         So, 'application/octet-stream' is changed with an empty string.
1189
1190         * platform/efl/MIMETypeRegistryEfl.cpp:
1191         (WebCore::MIMETypeRegistry::getMIMETypeForExtension):
1192         Returns an empty string instead of application/octet-stream when it can't find proper mime type.
1193
1194 2010-12-24  Justin Schuh  <jschuh@chromium.org>
1195
1196         Reviewed by Darin Adler.
1197
1198         SVGFontFaceElement::rebuildFontFace() should exit when not in document
1199         https://bugs.webkit.org/show_bug.cgi?id=51571
1200
1201         We were hitting a NULL deref crash. Since most of the callers checked
1202         inDocument() anyway, I moved it into the start of rebuildFontFace.
1203
1204         Test: svg/custom/use-invalid-font-face.svg
1205
1206         * svg/SVGFontFaceElement.cpp:
1207         (WebCore::SVGFontFaceElement::parseMappedAttribute):
1208         (WebCore::SVGFontFaceElement::rebuildFontFace):
1209         (WebCore::SVGFontFaceElement::childrenChanged):
1210
1211 2010-12-24  Justin Schuh  <jschuh@chromium.org>
1212
1213         Reviewed by Darin Adler.
1214
1215         Remove unnecessary check in CSSCanvasValue::canvasDestroyed().
1216         https://bugs.webkit.org/show_bug.cgi?id=51564
1217
1218         This check was duplicating an ASSERT for a case fixed in r73927.
1219         Now that the bug is fixed the check is no longer necessary.
1220
1221         Removing dead code, so no new tests needed.
1222
1223         * css/CSSCanvasValue.cpp:
1224         (WebCore::CSSCanvasValue::canvasDestroyed):
1225
1226 2010-12-23  Evan Martin  <evan@chromium.org>
1227
1228         Reviewed by Darin Adler.
1229
1230         ViewportArguments.h uses an enum to intialize a bool
1231         https://bugs.webkit.org/show_bug.cgi?id=50982
1232
1233         Initialize userScalable to true, rather than -1.
1234         No tests; fixes a compiler warning.
1235
1236         * dom/ViewportArguments.h:
1237         (WebCore::ViewportArguments::ViewportArguments):
1238
1239 2010-12-23  Jan Erik Hanssen  <jhanssen@sencha.com>
1240
1241         Reviewed by Adam Barth.
1242
1243         [Qt] User name/password stripped from URLs
1244         https://bugs.webkit.org/show_bug.cgi?id=36232
1245
1246         If a username but no password or no username but a password is present
1247         in a URL, QtWebKit won't send any authentication information down to Qt
1248         as it should.
1249
1250         Tests: http/tests/xmlhttprequest/basic-auth-nopassword.html
1251                http/tests/xmlhttprequest/basic-auth-nouser.html
1252
1253         * platform/network/qt/ResourceHandleQt.cpp:
1254         (WebCore::ResourceHandle::start):
1255         (WebCore::ResourceHandle::loadResourceSynchronously):
1256
1257 2010-12-23  Ryosuke Niwa  <rniwa@webkit.org>
1258
1259         Reviewed by Darin Adler.
1260
1261         queryCommandValue("FormatBlock") does not respect editing boundaries
1262         https://bugs.webkit.org/show_bug.cgi?id=51219
1263
1264         Fixed the bug by checking the element we found in elementForFormatBlockCommand
1265         does not contain the editable root.
1266
1267         * editing/FormatBlockCommand.cpp:
1268         (WebCore::FormatBlockCommand::elementForFormatBlockCommand):
1269
1270 2010-12-23  Ryosuke Niwa  <rniwa@webkit.org>
1271
1272         Reviewed by Darin Adler.
1273
1274         FormatBlock doesn't preserve typing style but it should
1275         https://bugs.webkit.org/show_bug.cgi?id=51140
1276
1277         Fixed the bug by making preserveTypingStyle return true.
1278
1279         Test: editing/execCommand/format-block-typing-style.html
1280
1281         * editing/FormatBlockCommand.h:
1282         (WebCore::FormatBlockCommand::preservesTypingStyle):
1283
1284 2010-12-23  Jessie Berlin  <jberlin@apple.com>
1285
1286         Reviewed by Sam Weinig.
1287
1288         Need WebKit2 API to create a SecurityOrigin from protocol, host, and port
1289         https://bugs.webkit.org/show_bug.cgi?id=51563
1290
1291         Add SecurityOrigin::create(const String& protocol, const String& host, int port).
1292
1293         * WebCore.exp.in:
1294         Export the symbols for WebCore::SecurityOrigin::create(String, String, int).
1295
1296         * page/SecurityOrigin.cpp:
1297         (WebCore::SecurityOrigin::createFromDatabaseIdentifier):
1298         Use the constant MaxAllowedPort.
1299         (WebCore::SecurityOrigin::create):
1300         Sanitizing based off of that done in createFromDatabaseIdentifier.
1301         * page/SecurityOrigin.h:
1302
1303 2010-12-23  Patrick Gansterer  <paroga@webkit.org>
1304
1305         Unreviewed build fix for WinCE after r73802.
1306
1307         Reapply r70812:
1308         Port ContextMenuItemWin.cpp to WinCE
1309         https://bugs.webkit.org/show_bug.cgi?id=48407
1310
1311         * platform/win/ContextMenuItemWin.cpp:
1312
1313 2010-12-23  Adam Barth  <abarth@webkit.org>
1314
1315         Remove include of non-existant file.
1316
1317         * bindings/v8/custom/V8DOMWindowCustom.cpp:
1318
1319 2010-12-23  Ryosuke Niwa  <rniwa@webkit.org>
1320
1321         Reviewed by Darin Adler.
1322
1323         Selection becomes stale when CharacterData is manipulated directly
1324         https://bugs.webkit.org/show_bug.cgi?id=51389
1325
1326         The bug was caused by SelectionController's not adjusting selection when CharacterData's
1327         m_data is modified by its API.
1328
1329         Fixed the bug by adding textWillBeReplaced to SelectionController and calling it in
1330         CharacterData::textWillBeReplaced. Added newLength to setDataAndUpdate, which is passed to
1331         textWillBeReplaced because inserting, replacing, or removing data may require moving
1332         the offset of the selection end points (done by shouldRemovePositionAfterAdoptingTextReplacement).
1333
1334         Also fixed the condition for determining whether or not a node intersects the selection
1335         in respondToNodeModification, which is extracted from nodeWillBeRemoved. The old condition
1336         failed to recognize certain cases when selection started and ended with non-zero offsets.
1337
1338         Tests: editing/selection/character-data-mutation-crash.html
1339                editing/selection/character-data-mutation.html
1340
1341         * dom/CharacterData.cpp:
1342         (WebCore::CharacterData::setData): Passes newLegnth to setDataAndUpdate.
1343         (WebCore::CharacterData::appendData): Ditto.
1344         (WebCore::CharacterData::insertData): Ditto.
1345         (WebCore::CharacterData::deleteData): Ditto.
1346         (WebCore::CharacterData::replaceData): Ditto.
1347         (WebCore::CharacterData::setDataAndUpdate): Added newLegnth to the argument list,
1348         and renamed lengthOfReplacedData to oldLength; calls textWillBeReplaced.
1349         * dom/CharacterData.h:
1350         * editing/SelectionController.cpp:
1351         (WebCore::removingNodeRemovesPosition): Removed indentations from blank lines.
1352         (WebCore::SelectionController::nodeWillBeRemoved): Calls nodeWillBeRemoved.
1353         (WebCore::SelectionController::respondToNodeModification): Extracted from nodeWillBeRemoved;
1354         fixed the logic to figure out whether a node is inside the range or not.
1355         (WebCore::shouldRemovePositionAfterAdoptingTextReplacement): Added.
1356         (WebCore::SelectionController::textWillBeReplaced): Added.
1357         * editing/SelectionController.h:
1358
1359 2010-12-23  Adam Barth  <abarth@webkit.org>
1360
1361         Reviewed by Darin Adler.
1362
1363         Remove unneeded V8 bindings files
1364         https://bugs.webkit.org/show_bug.cgi?id=51570
1365
1366         * WebCore.gypi:
1367         * bindings/generic/BindingDOMWindow.h: Removed.
1368         * bindings/v8/specialization/V8BindingDOMWindow.h: Removed.
1369
1370 2010-12-23  Dan Bernstein  <mitz@apple.com>
1371
1372         Build fix.
1373
1374         * editing/EditorCommand.cpp:
1375         (WebCore::enabledDismissCorrectionPanel):
1376
1377 2010-12-23  Darin Adler  <darin@apple.com>
1378
1379         Try to fix crash seen on GTK bot.
1380
1381         * editing/EditorCommand.cpp:
1382         (WebCore::internalCommand): Add back empty string check I accidentally deleted in r74580.
1383
1384         * WebCore.xcodeproj/project.pbxproj: Let Xcode edit the file.
1385
1386 2010-12-23  Sheriff Bot  <webkit.review.bot@gmail.com>
1387
1388         Unreviewed, rolling out r74561.
1389         http://trac.webkit.org/changeset/74561
1390         https://bugs.webkit.org/show_bug.cgi?id=51565
1391
1392         "Broke Chromium UI tests on Vista" (Requested by kbr_google on
1393         #webkit).
1394
1395         * platform/graphics/chromium/ImageLayerChromium.cpp:
1396         (WebCore::ImageLayerChromium::updateContentsIfDirty):
1397         * platform/graphics/skia/GraphicsContext3DSkia.cpp:
1398         (WebCore::GraphicsContext3D::getImageData):
1399
1400 2010-12-23  Mihai Parparita  <mihaip@chromium.org>
1401
1402         Reviewed by Kent Tamura.
1403
1404         [Chromium] Add WebThemeEngine for Mac to allow scrollbar rendering to be overridden for the DRT
1405         https://bugs.webkit.org/show_bug.cgi?id=51507
1406         
1407         Adds WebThemeEngine for the Mac (it already has parallel definitions for
1408         Windows and Linux) so that scrollbar thumb rendering can be overridden
1409         for the DRT (to be consistent with the NSScroller-based rendering
1410         used by the Mac port).
1411
1412         No new tests since the functionality is not exposed yet. Eventually will
1413         result in the Chromium/Mac port being able to use the same pixel
1414         baselines for layout tests as the Mac port.
1415
1416         * platform/chromium/ChromiumBridge.h:
1417         * platform/chromium/ScrollbarThemeChromiumMac.mm:
1418         (WebCore::scrollbarStateToThemeState):
1419         (WebCore::ScrollbarThemeChromiumMac::paint):
1420
1421 2010-12-23  Darin Adler  <darin@apple.com>
1422
1423         Reviewed by Sam Weinig.
1424
1425         WKView should not try to do asynchronous validation for selectors that are not editor commands
1426         https://bugs.webkit.org/show_bug.cgi?id=51555
1427
1428         * WebCore.exp.in: Added commandIsSupportedFromMenuOrKeyBinding.
1429         * editing/Editor.h: Reordered arguments in the Editor::Command constructor
1430         and the data members too so the frame is last. Added
1431         commandIsSupportedFromMenuOrKeyBinding.
1432
1433         * editing/EditorCommand.cpp:
1434         (WebCore::supported): Removed the EditorCommandSource argument. These
1435         functions are now only used when called from DOM.
1436         (WebCore::supportedFromMenuOrKeyBinding): Ditto.
1437         (WebCore::supportedCopyCut): Ditto.
1438         (WebCore::supportedPaste): Ditto.
1439         (WebCore::enabledDismissCorrectionPanel): Changed the supported function to
1440         an enabled function. It was incorrect to say that this is "supported" only
1441         when the correction panel is up. Correct to say that it is "enabled" only
1442         then. And also probably OK to enable it even when the selection is not in
1443         editable text, as long as the panel is up.
1444         (WebCore::createCommandMap): Moved conditional commands out of the main
1445         array into a separate section at the end.
1446         (WebCore::internalCommand): Added.
1447         (WebCore::Editor::command): Changed to use the new internalCommand function
1448         and simplified by relying on the null check in the Command constructor.
1449         (WebCore::Editor::commandIsSupportedFromMenuOrKeyBinding): Added.
1450         (WebCore::Editor::Command::Command): Removed unneeded initialization of
1451         m_source, which is never looked at if m_command is 0. Added feature of
1452         passing a null command pointer to the non-default constructor.
1453         (WebCore::Editor::Command::isSupported): Changed to only call the
1454         per-command isSupported function when the command source is DOM.
1455         Accordingly that function is now called isSupportedFromDOM.
1456
1457 2010-12-23  Matthew Delaney  <mdelaney@apple.com>
1458
1459         Reviewed by Simon Fraser.
1460
1461         Incorrect layer property used noted as changed in GraphicsLayerCA::setAcceleratesDrawing
1462         https://bugs.webkit.org/show_bug.cgi?id=51560
1463
1464         No new tests.
1465
1466         * platform/graphics/ca/GraphicsLayerCA.cpp:
1467         (WebCore::GraphicsLayerCA::setAcceleratesDrawing):
1468
1469 2010-12-23  Jan Erik Hanssen  <jhanssen@sencha.com>
1470
1471         Reviewed by Andreas Kling.
1472
1473         [Qt] copy and paste greek symbols to Word, TextEdit results in ?'s being shown
1474         https://bugs.webkit.org/show_bug.cgi?id=35635
1475
1476         Explicitly set text/html data on QClipboard as UTF-8 and also include a <meta>
1477         tag informing the OS that the data is in UTF-8 format.
1478
1479         * platform/qt/PasteboardQt.cpp:
1480         (WebCore::Pasteboard::writeSelection):
1481
1482 2010-12-23  Justin Schuh  <jschuh@chromium.org>
1483
1484         Reviewed by Eric Seidel.
1485
1486         CSSCursorImageValue destructor should clear referenced element.
1487         https://bugs.webkit.org/show_bug.cgi?id=51417
1488
1489         Calls correct method to clear image and renames method to avoid future confusion.
1490
1491         Test: svg/css/cursor-image-replace.svg
1492
1493         * css/CSSCursorImageValue.cpp:
1494         (WebCore::CSSCursorImageValue::~CSSCursorImageValue):
1495         * svg/SVGElement.cpp:
1496         (WebCore::SVGElement::cursorImageValueRemoved):
1497         * svg/SVGElement.h:
1498
1499 2010-12-22  Sam Weinig  <sam@webkit.org>
1500
1501         Reviewed by Darin Adler.
1502
1503         WebKit2 needs to mirror the frame tree in the UIProcess
1504         https://bugs.webkit.org/show_bug.cgi?id=51546
1505
1506         - Add client functions to notify that a frame has been added or
1507           removed from the page cache.
1508
1509         * history/CachedFrame.cpp:
1510         (WebCore::CachedFrameBase::restore):
1511         (WebCore::CachedFrame::CachedFrame):
1512         * history/CachedFrame.h:
1513         * loader/EmptyClients.h:
1514         (WebCore::EmptyFrameLoaderClient::didSaveToPageCache):
1515         (WebCore::EmptyFrameLoaderClient::didRestoreFromPageCache):
1516         * loader/FrameLoaderClient.h:
1517
1518 2010-12-22  Matthew Delaney  <mdelaney@apple.com>
1519
1520         Reviewed by Simon Fraser.
1521
1522         Add setNeedsStyleRecalc for getting canvas contexts that use IOSurfaces
1523         This patch also changes USE_IOSURFACE to instead follow USE(IOSURFACE)
1524         https://bugs.webkit.org/show_bug.cgi?id=51279
1525
1526         * html/HTMLCanvasElement.cpp: For IOSurface, use setNeedsStyleRecalc
1527         * html/canvas/CanvasRenderingContext2D.cpp: Use new flag
1528         * platform/graphics/ImageBuffer.h: Use new flag
1529         * platform/graphics/cg/ImageBufferCG.cpp: Use new flag
1530
1531 2010-12-20  Adrienne Walker  <enne@google.com>
1532
1533         Reviewed by Kenneth Russell.
1534
1535         [chromium] Tile root layer of the compositor.
1536         https://bugs.webkit.org/show_bug.cgi?id=49947
1537
1538         Refactor root layer update and drawing from LayerRendererChromium into
1539         LayerTilerChromium.  The root layer is now drawn as multiple tiles
1540         rather than as one single large texture.  Scrollbars are now drawn
1541         separately rather than as part of the root layer.
1542
1543         Test: LayoutTests/compositing/
1544
1545         * WebCore.gypi:
1546         * page/FrameView.cpp:
1547         (WebCore::FrameView::repaintContentRectangle):
1548         * platform/ScrollView.cpp:
1549         (WebCore::ScrollView::ScrollView):
1550         (WebCore::ScrollView::setClipsRepaints):
1551         * platform/ScrollView.h:
1552         (WebCore::ScrollView::clipsRepaints):
1553         * platform/graphics/chromium/LayerChromium.h:
1554         * platform/graphics/chromium/LayerRendererChromium.cpp:
1555         (WebCore::LayerRendererChromium::LayerRendererChromium):
1556         (WebCore::LayerRendererChromium::~LayerRendererChromium):
1557         (WebCore::LayerRendererChromium::useShader):
1558         (WebCore::LayerRendererChromium::verticalScrollbarRect):
1559         (WebCore::LayerRendererChromium::horizontalScrollbarRect):
1560         (WebCore::LayerRendererChromium::invalidateRootLayerRect):
1561         (WebCore::LayerRendererChromium::updateAndDrawRootLayer):
1562         (WebCore::LayerRendererChromium::drawLayers):
1563         (WebCore::LayerRendererChromium::setRootLayer):
1564         (WebCore::LayerRendererChromium::initializeSharedObjects):
1565         (WebCore::LayerRendererChromium::cleanupSharedObjects):
1566         * platform/graphics/chromium/LayerRendererChromium.h:
1567         * platform/graphics/chromium/LayerTilerChromium.cpp: Added.
1568         (WebCore::LayerTilerChromium::create):
1569         (WebCore::LayerTilerChromium::LayerTilerChromium):
1570         (WebCore::LayerTilerChromium::~LayerTilerChromium):
1571         (WebCore::LayerTilerChromium::layerRendererContext):
1572         (WebCore::LayerTilerChromium::setTileSize):
1573         (WebCore::LayerTilerChromium::reset):
1574         (WebCore::LayerTilerChromium::createTile):
1575         (WebCore::LayerTilerChromium::invalidateTiles):
1576         (WebCore::LayerTilerChromium::contentRectToTileIndices):
1577         (WebCore::LayerTilerChromium::contentRectToLayerRect):
1578         (WebCore::LayerTilerChromium::layerRectToContentRect):
1579         (WebCore::LayerTilerChromium::tileIndex):
1580         (WebCore::LayerTilerChromium::tileContentRect):
1581         (WebCore::LayerTilerChromium::tileLayerRect):
1582         (WebCore::LayerTilerChromium::invalidateRect):
1583         (WebCore::LayerTilerChromium::invalidateEntireLayer):
1584         (WebCore::LayerTilerChromium::update):
1585         (WebCore::LayerTilerChromium::setLayerPosition):
1586         (WebCore::LayerTilerChromium::draw):
1587         (WebCore::LayerTilerChromium::resizeLayer):
1588         (WebCore::LayerTilerChromium::growLayerToContain):
1589         (WebCore::LayerTilerChromium::Tile::~Tile):
1590         (WebCore::LayerTilerChromium::Tile::releaseTextureId):
1591         * platform/graphics/chromium/LayerTilerChromium.h: Added.
1592         (WebCore::LayerTilerChromium::Tile::Tile):
1593         (WebCore::LayerTilerChromium::Tile::textureId):
1594         (WebCore::LayerTilerChromium::Tile::dirty):
1595         (WebCore::LayerTilerChromium::Tile::clearDirty):
1596         (WebCore::LayerTilerChromium::layerRenderer):
1597
1598 2010-12-22  Ryosuke Niwa  <rniwa@webkit.org>
1599
1600         Reviewed by Eric Seidel.
1601
1602         Editor.h doesn't need to include SelectionController.h
1603         https://bugs.webkit.org/show_bug.cgi?id=51441
1604
1605         Removed #include <Selection.h> from Editor.h.
1606         Also extracted WritingDirection.h from EditingStyle.h and renamed SelectionController::EDirection
1607         to SelectionDirection and moved its declaration from SelectionController.h to VisibleSelection.h
1608
1609         * WebCore.exp.in: Signature changes.
1610         * WebCore.xcodeproj/project.pbxproj: Added WritingDirection.h
1611         * accessibility/AccessibilityRenderObject.cpp:
1612         (WebCore::AccessibilityRenderObject::visiblePositionRangeForLine): Change due to SelectionDirection.
1613         * editing/EditingStyle.h: Removed WritingDirection and included WritingDirection.h
1614         * editing/Editor.cpp:
1615         (WebCore::Editor::deleteWithDirection): Change due to SelectionDirection.
1616         (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): Ditto.
1617         (WebCore::Editor::markMisspellingsAfterTypingToWord): Ditto.
1618         * editing/Editor.h: Removed SelectionController.h; added DocumentMarker.h, Timer.h, VisibleSelection.h
1619         and WritingDirection.h; forward declared CSSMutableStyleDeclaration.
1620         * editing/EditorCommand.cpp:
1621         (WebCore::executeDeleteBackward): Change due to SelectionDirection.
1622         (WebCore::executeDeleteBackwardByDecomposingPreviousCharacter): Ditto.
1623         (WebCore::executeDeleteForward): Ditto.
1624         (WebCore::executeDeleteToBeginningOfLine): Ditto.
1625         (WebCore::executeDeleteToBeginningOfParagraph): Ditto.
1626         (WebCore::executeDeleteToEndOfLine): Ditto.
1627         (WebCore::executeDeleteToEndOfParagraph): Ditto.
1628         (WebCore::executeDeleteWordBackward): Ditto.
1629         (WebCore::executeDeleteWordForward): Ditto.
1630         (WebCore::executeForwardDelete): Ditto.
1631         (WebCore::executeMoveBackward): Ditto.
1632         (WebCore::executeMoveBackwardAndModifySelection): Ditto.
1633         (WebCore::executeMoveDown): Ditto.
1634         (WebCore::executeMoveDownAndModifySelection): Ditto.
1635         (WebCore::executeMoveForward): Ditto.
1636         (WebCore::executeMoveForwardAndModifySelection): Ditto.
1637         (WebCore::executeMoveLeft): Ditto.
1638         (WebCore::executeMoveLeftAndModifySelection): Ditto.
1639         (WebCore::executeMoveRight): Ditto.
1640         (WebCore::executeMoveRightAndModifySelection): Ditto.
1641         (WebCore::executeMoveToBeginningOfDocument): Ditto.
1642         (WebCore::executeMoveToBeginningOfDocumentAndModifySelection): Ditto.
1643         (WebCore::executeMoveToBeginningOfLine): Ditto.
1644         (WebCore::executeMoveToBeginningOfLineAndModifySelection): Ditto.
1645         (WebCore::executeMoveToBeginningOfParagraph): Ditto.
1646         (WebCore::executeMoveToBeginningOfParagraphAndModifySelection): Ditto.
1647         (WebCore::executeMoveToBeginningOfSentence): Ditto.
1648         (WebCore::executeMoveToBeginningOfSentenceAndModifySelection): Ditto.
1649         (WebCore::executeMoveToEndOfDocument): Ditto.
1650         (WebCore::executeMoveToEndOfDocumentAndModifySelection): Ditto.
1651         (WebCore::executeMoveToEndOfSentence): Ditto.
1652         (WebCore::executeMoveToEndOfSentenceAndModifySelection): Ditto.
1653         (WebCore::executeMoveToEndOfLine): Ditto.
1654         (WebCore::executeMoveToEndOfLineAndModifySelection): Ditto.
1655         (WebCore::executeMoveToEndOfParagraph): Ditto.
1656         (WebCore::executeMoveToEndOfParagraphAndModifySelection): Ditto.
1657         (WebCore::executeMoveParagraphBackwardAndModifySelection): Ditto.
1658         (WebCore::executeMoveParagraphForwardAndModifySelection): Ditto.
1659         (WebCore::executeMoveUp): Ditto.
1660         (WebCore::executeMoveUpAndModifySelection): Ditto.
1661         (WebCore::executeMoveWordBackward): Ditto.
1662         (WebCore::executeMoveWordBackwardAndModifySelection): Ditto.
1663         (WebCore::executeMoveWordForward): Ditto.
1664         (WebCore::executeMoveWordForwardAndModifySelection): Ditto.
1665         (WebCore::executeMoveWordLeft): Ditto.
1666         (WebCore::executeMoveWordLeftAndModifySelection): Ditto.
1667         (WebCore::executeMoveWordRight): Ditto.
1668         (WebCore::executeMoveWordRightAndModifySelection): Ditto.
1669         (WebCore::executeMoveToLeftEndOfLine): Ditto.
1670         (WebCore::executeMoveToLeftEndOfLineAndModifySelection): Ditto.
1671         (WebCore::executeMoveToRightEndOfLine): Ditto.
1672         (WebCore::executeMoveToRightEndOfLineAndModifySelection): Ditto.
1673         * editing/SelectionController.cpp:
1674         (WebCore::SelectionController::willBeModified): Takes SelectionDirection instead of EDirection.
1675         (WebCore::SelectionController::modify): Ditto.
1676         * editing/SelectionController.h: Change due to SelectionDirection.
1677         * editing/TypingCommand.cpp:
1678         (WebCore::TypingCommand::deleteKeyPressed): Ditto.
1679         (WebCore::TypingCommand::forwardDeleteKeyPressed): Ditto.
1680         * editing/VisibleSelection.h: Added SelectionDirection, renamed and moved from EDirection
1681         in SelectionController.h
1682         * editing/WritingDirection.h: Added.
1683         * page/DOMSelection.cpp:
1684         (WebCore::DOMSelection::modify): Change due to SelectionDirection.
1685         (WebCore::DOMSelection::deleteFromDocument): Ditto.
1686         * page/EventHandler.cpp:
1687         (WebCore::EventHandler::handleKeyboardSelectionMovement): Ditto.
1688         * page/Frame.h: Includes SelectionController.h.
1689
1690 2010-12-23  Adam Barth  <abarth@webkit.org>
1691
1692         Reviewed by Darin Adler.
1693
1694         Move V8 to WebCore's implementation of showModalDialog
1695         https://bugs.webkit.org/show_bug.cgi?id=51527
1696
1697         This code is basically verbatim translation from the JavaScriptCore
1698         bindings.  The only intentional difference is in the world selection
1699         for the dialog's frame.  I suspect JavaScriptCore's bindings have a
1700         subtle bug there.
1701
1702         In this patch, I also remove a bunch of now-unneeded code in the
1703         generic bindings.
1704
1705         * bindings/generic/BindingDOMWindow.h:
1706         * bindings/js/JSDOMWindowCustom.cpp:
1707         (WebCore::DialogHandler::dialogCreated):
1708         (WebCore::setUpDialog):
1709         * bindings/v8/custom/V8DOMWindowCustom.cpp:
1710         (WebCore::DialogHandler::DialogHandler):
1711         (WebCore::DialogHandler::dialogCreated):
1712         (WebCore::DialogHandler::returnValue):
1713         (WebCore::setUpDialog):
1714         (WebCore::V8DOMWindow::showModalDialogCallback):
1715         (WebCore::V8DOMWindow::openCallback):
1716         * bindings/v8/specialization/V8BindingDOMWindow.h:
1717
1718 2010-12-23  Alexander Pavlov  <apavlov@chromium.org>
1719
1720         Reviewed by Joseph Pecoraro.
1721
1722         Web Inspector: Can't backspace from CSS value to CSS key field
1723         https://bugs.webkit.org/show_bug.cgi?id=51476
1724
1725         * inspector/front-end/StylesSidebarPane.js:
1726         (WebInspector.StylePropertyTreeElement.prototype.):
1727         (WebInspector.StylePropertyTreeElement.prototype):
1728
1729 2010-12-23  W. James MacLean  <wjmaclean@chromium.org>
1730
1731         Reviewed by Kenneth Russell.
1732
1733         [chromium] Add asserts to test for contiguous-pixel Skia bitmaps.
1734         https://bugs.webkit.org/show_bug.cgi?id=51186
1735
1736         No new tests. Behaviour not changed, but need the asserts to detect when assumptions violated.
1737
1738         * platform/graphics/chromium/ImageLayerChromium.cpp:
1739         (WebCore::ImageLayerChromium::updateContentsIfDirty):
1740         * platform/graphics/skia/GraphicsContext3DSkia.cpp:
1741         (WebCore::GraphicsContext3D::getImageData):
1742
1743 2010-12-23  Lucas De Marchi  <lucas.demarchi@profusion.mobi>
1744
1745         Reviewed by Kenneth Rohde Christiansen.
1746
1747         Fix check by undefined macro
1748         https://bugs.webkit.org/show_bug.cgi?id=51531
1749
1750         Fix check by undefined macro
1751
1752         When building EFL port with libsoup, BUILDING_GTK__ is not defined,
1753         leading to warnings during compile. We actually have to use an #ifdef
1754         instead of an #if.
1755
1756         No change in functionality so no new tests.
1757
1758         * platform/network/soup/cache/webkit/soup-cache.h:
1759
1760 2010-12-23  Jonathan Dixon  <joth@chromium.org>
1761
1762         Reviewed by Steve Block.
1763
1764         TouchEvents does not support multi-touch on a page with multiple touch targets
1765         https://bugs.webkit.org/show_bug.cgi?id=51258
1766
1767         Test: fast/events/touch/multi-touch-grouped-targets.html
1768
1769         * page/EventHandler.cpp:
1770         (WebCore::eventNameForTouchPointState):
1771         (WebCore::EventHandler::handleTouchEvent):
1772         Redesigned event handler to ensure all event targets involved in a given
1773         multitouch event get the appropriate event(s) fired.
1774
1775         * platform/PlatformTouchPoint.h: Added end-stop marker for State enum.
1776
1777 2010-12-23  Philippe Normand  <pnormand@igalia.com>
1778
1779         Reviewed by Xan Lopez.
1780
1781         [GTK] media/audio-data-url.html fails since r75504
1782         https://bugs.webkit.org/show_bug.cgi?id=51525
1783
1784         Make the GStreamer media-player advertize 3gpp mime-types as
1785         supported if the 3gp caps are in the typefind factories.
1786
1787         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
1788         (WebCore::mimeTypeCache):
1789
1790 2010-12-23  Kent Tamura  <tkent@chromium.org>
1791
1792         Reviewed by Dimitri Glazkov.
1793
1794         Refactor HTMLInputElement: Move a part of HTMLInputElement::defaultEventHandler()
1795         to InputTypes.
1796         https://bugs.webkit.org/show_bug.cgi?id=51093
1797
1798         Move BeforeTextInserted and Wheel event handling, event forwarding to
1799         renderers, and the isindex form submission quirk code to InputTypes.
1800         Also, change the return types of InputType event handlers from 'bool'
1801         to 'void'. We use Event::defaultHandled() to decide whether event
1802         handling should be stopped.
1803
1804         No new tests because this is just a refactoring.
1805
1806         * html/BaseButtonInputType.cpp: bool->void changes
1807         (WebCore::BaseButtonInputType::handleKeydownEvent):
1808         (WebCore::BaseButtonInputType::handleKeypressEvent):
1809         (WebCore::BaseButtonInputType::handleKeyupEvent):
1810         * html/BaseButtonInputType.h: ditto.
1811         * html/BaseCheckableInputType.cpp: ditto.
1812         (WebCore::BaseCheckableInputType::handleKeydownEvent):
1813         (WebCore::BaseCheckableInputType::handleKeypressEvent):
1814         * html/BaseCheckableInputType.h: ditto.
1815         * html/BaseDateAndTimeInputType.cpp:
1816         (WebCore::BaseDateAndTimeInputType::handleKeydownEvent): ditto.
1817         (WebCore::BaseDateAndTimeInputType::handleWheelEvent): Just calls handleWheelEventForSpinButton().
1818         * html/BaseDateAndTimeInputType.h: bool->void change and handleWhellEvent() addition.
1819         * html/CheckboxInputType.cpp: bool->void change
1820         (WebCore::CheckboxInputType::handleKeyupEvent):
1821         * html/CheckboxInputType.h: ditto.
1822         * html/FileInputType.cpp: ditto.
1823         (WebCore::FileInputType::handleDOMActivateEvent):
1824         * html/FileInputType.h: ditto.
1825         * html/HTMLInputElement.cpp:
1826         (WebCore::HTMLInputElement::defaultEventHandler):
1827          - Change return-value handling of InputType event handlers
1828          - Move out beforeTextInserted/wheel event handling and isindex form quirk.
1829         * html/HTMLInputElement.h:
1830         (WebCore::HTMLInputElement::handleBeforeTextInsertedEvent):
1831          Added so that InputType can call InputElement::handleBeforeTextInsertedEvent().
1832         * html/ImageInputType.cpp: bool->void change
1833         (WebCore::ImageInputType::handleDOMActivateEvent):
1834         * html/ImageInputType.h: ditto.
1835         * html/InputType.cpp: ditto.
1836         (WebCore::InputType::handleClickEvent):
1837         (WebCore::InputType::handleDOMActivateEvent):
1838         (WebCore::InputType::handleKeydownEvent):
1839         (WebCore::InputType::handleKeypressEvent):
1840         (WebCore::InputType::handleKeyupEvent):
1841         (WebCore::InputType::handleBeforeTextInsertedEvent):
1842         (WebCore::InputType::handleWheelEvent): Added default implementation.
1843         (WebCore::InputType::forwardEvent): ditto.
1844         (WebCore::InputType::formForSubmission): ditto.
1845         * html/InputType.h:
1846         * html/IsIndexInputType.cpp:
1847         (WebCore::IsIndexInputType::formForSubmission): Moved from HTMLInputElement.cpp.
1848         * html/IsIndexInputType.h:
1849         * html/NumberInputType.cpp:
1850         (WebCore::isNumberCharacter): Moved from HTMLInputElement.cpp.
1851         (WebCore::NumberInputType::handleKeydownEvent): bool->void change.
1852         (WebCore::NumberInputType::handleBeforeTextInsertedEvent): Moved from HTMInputElement.cpp.
1853         (WebCore::NumberInputType::handleWheelEvent): Added. Just calls handleWheelEventForSpinButton().
1854         * html/NumberInputType.h:
1855         * html/RadioInputType.cpp: bool->void changes.
1856         (WebCore::RadioInputType::handleClickEvent):
1857         (WebCore::RadioInputType::handleKeydownEvent):
1858         (WebCore::RadioInputType::handleKeyupEvent):
1859         * html/RadioInputType.h:
1860         * html/RangeInputType.cpp:
1861         (WebCore::RangeInputType::handleKeydownEvent): ditto.
1862         (WebCore::RangeInputType::forwardEvent): Moved from HTMLInputElement.cpp.
1863         * html/RangeInputType.h:
1864         * html/ResetInputType.cpp: bool->void change.
1865         (WebCore::ResetInputType::handleDOMActivateEvent):
1866         * html/ResetInputType.h: ditto.
1867         * html/SubmitInputType.cpp: ditto.
1868         (WebCore::SubmitInputType::handleDOMActivateEvent):
1869         * html/SubmitInputType.h: ditto.
1870         * html/TextFieldInputType.cpp:
1871         (WebCore::TextFieldInputType::handleKeydownEvent): bool->void change.
1872         (WebCore::TextFieldInputType::handleKeydownEventForSpinButton): ditto.
1873         (WebCore::TextFieldInputType::handleWheelEventForSpinButton): Moved from HTMLInputElement.cpp.
1874         (WebCore::TextFieldInputType::forwardEvent): ditto.
1875         * html/TextFieldInputType.h:
1876
1877 2010-12-23  Alexander Pavlov  <apavlov@chromium.org>
1878
1879         Reviewed by Joseph Pecoraro.
1880
1881         Web Inspector: After scrolling new property value and cancelling, removed property remains active in page style
1882         https://bugs.webkit.org/show_bug.cgi?id=51390
1883
1884         * inspector/front-end/StylesSidebarPane.js:
1885         (WebInspector.StylePropertyTreeElement.prototype):
1886
1887 2010-12-23  Noel Gordon  <noel.gordon@gmail.com>
1888
1889         Reviewed by Adam Barth.
1890
1891         [chromium] Reduce canvas.toDataURL("image/png") run-time costs 300%
1892         https://bugs.webkit.org/show_bug.cgi?id=51455
1893
1894         Chromium uses the libpng compression defaults.  Good compression results,
1895         but at much larger run-time cost compared to other browsers.  Chrome is 2
1896         times slower than Mozilla 3.6.12 and 3-4 times slower than Safari 5.0.3.
1897
1898         libpng has supported alternative compression methods for some time, they
1899         better meet the dual goals of good compression and run-time cost for the
1900         on-line case, and are well-documented.  Here use Huffman encoding.  It's
1901         2-20% faster than other encodings (Z_RLE, Z_FILTERED) and the compressed
1902         size is within 1% of the Safari 5.0.3 result independent of image size.
1903
1904         No change in behaviour, so no new tests.
1905
1906         * platform/image-encoders/skia/PNGImageEncoder.cpp:
1907         (WebCore::PNGImageEncoder::encode): Apply Huffman image encoding.
1908
1909 2010-12-22  Noel Gordon  <noel.gordon@gmail.com>
1910
1911         Reviewed by Darin Fisher.
1912
1913         [chromium] Optimize canvas.toDataURL("image/png") unpremultiplication loop
1914         https://bugs.webkit.org/show_bug.cgi?id=51321
1915
1916         Follow on from r73890, unroll the SkUnPreMultiply::PMColorToColor() call for
1917         the "image/png" encoder case viz., compute the unpremultiplication in-place.
1918         See https://bugs.webkit.org/show_bug.cgi?id=50804 for reference.
1919
1920         No new tests: canvas.toDataURL() is covered by existing tests.
1921
1922         * platform/image-encoders/skia/PNGImageEncoder.cpp:
1923         (WebCore::preMultipliedBGRAtoRGBA):
1924
1925 2010-12-22  Ariya Hidayat  <ariya@sencha.com>
1926
1927         Reviewed by Simon Fraser.
1928
1929         Implement skewX() and skewY() for CSSMatrix.
1930         https://bugs.webkit.org/show_bug.cgi?id=38335
1931
1932         * css/WebKitCSSMatrix.cpp:
1933         (WebCore::WebKitCSSMatrix::skew): Implemented skewX() and skewY().
1934         * css/WebKitCSSMatrix.h: Added skewX() and skewY().
1935         * css/WebKitCSSMatrix.idl: Added skewX() and skewY().
1936
1937 2010-12-22  Simon Fraser  <simon.fraser@apple.com>
1938
1939         Reviewed by Dan Bernstein.
1940
1941         Support unprefixed box-shadow property
1942         https://bugs.webkit.org/show_bug.cgi?id=51448
1943         
1944         Add support for the box-shadow CSS property. We'll currently render this
1945         similarly to -webkit-box-shadow, but a later fix will adjust the blur radius
1946         handling to match the spec.
1947
1948         Test: fast/css/box-shadow.html
1949
1950         * css/CSSComputedStyleDeclaration.cpp:
1951         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Implement getComputedStyle
1952         for box-shadow
1953         
1954         * css/CSSParser.cpp:
1955         (WebCore::CSSParser::parseValue):
1956         (WebCore::ShadowParseContext::ShadowParseContext):
1957         (WebCore::ShadowParseContext::commitValue):
1958         (WebCore::ShadowParseContext::commitLength):
1959         (WebCore::ShadowParseContext::commitColor): Support CSSPropertyBoxShadow
1960
1961         * css/CSSPropertyNames.in: add box-shadow
1962
1963         * css/CSSStyleSelector.cpp:
1964         (WebCore::CSSStyleSelector::applyProperty): Add CSSPropertyBoxShadow, and
1965         store in the ShadowData if this is -webkit-box-shadow or not. We'll use this
1966         to adjust radii later.
1967
1968         * css/SVGCSSStyleSelector.cpp:
1969         (WebCore::CSSStyleSelector::applySVGProperty): Add CSSPropertyBoxShadow.
1970         
1971         * page/animation/AnimationBase.cpp:
1972         (WebCore::blendFunc):
1973         (WebCore::PropertyWrapperShadow::blend):
1974         (WebCore::AnimationBase::ensurePropertyMap): Support animations of box-shadow.
1975         
1976         * rendering/style/ShadowData.cpp: Store a flag to say if this is a -webkit-box-shadow.
1977         (WebCore::ShadowData::ShadowData):
1978         (WebCore::ShadowData::operator==):
1979         * rendering/style/ShadowData.h:
1980         (WebCore::ShadowData::ShadowData):
1981         (WebCore::ShadowData::isWebkitBoxShadow):
1982
1983 2010-12-22  Michael Saboff  <msaboff@apple.com>
1984
1985         Reviewed by Sam Weinig.
1986
1987         REGRESSION: Can't shadow/overwrite window.constructor 
1988         (causes TypeError exception)
1989         https://bugs.webkit.org/show_bug.cgi?id=48953
1990
1991         Added code in the javascript code generator to create a setter for
1992         a constructor if the new extended attribute ReplaceableConstructor
1993         is present for the interface.
1994
1995         * bindings/scripts/CodeGeneratorJS.pm:
1996         * page/DOMWindow.idl:
1997
1998 2010-12-22  Steve Lacey  <sjl@chromium.org>
1999
2000         Reviewed by David Levin.
2001
2002         Change css for chromium media controls to deal with the timeline
2003         not expanding when the current time disappears. This happens when
2004         the width of the control drops below 240px.
2005
2006         This change results in a minor pixel difference - the timebar now
2007         aligns better with the time and when the time is not displayed is
2008         now perfectly centered. Disabling the affected tests for now
2009         and will rebaseline.
2010
2011         https://bugs.webkit.org/show_bug.cgi?id=51500
2012
2013         * css/mediaControlsChromium.css:
2014         (audio::-webkit-media-controls-timeline-container, video::-webkit-media-controls-timeline-container):
2015         (audio::-webkit-media-controls-current-time-display, video::-webkit-media-controls-current-time-display):
2016         (audio::-webkit-media-controls-time-remaining-display, video::-webkit-media-controls-time-remaining-display):
2017         (audio::-webkit-media-controls-timeline, video::-webkit-media-controls-timeline):
2018
2019 2010-12-22  Mihai Parparita  <mihaip@chromium.org>
2020
2021         Reviewed by Simon Fraser.
2022
2023         the shadow direction is negated in canvas context shadowOffsetY.
2024         https://bugs.webkit.org/show_bug.cgi?id=25619
2025         
2026         Invert shadow offset Y direction in 0-blur path in FontMac::drawGlyps
2027         if we're not transforming shadows (i.e. are rendering in a canvas). Also
2028         use CG shadows if there's a non-translate/flip transform applied
2029         (shadow offsets are supposed to ignore transforms, but the naive/simple
2030         implementation was taking them into account).
2031         
2032         Also does the equivalent changes to FontCGWin.
2033
2034         Test: fast/canvas/fillText-shadow.html
2035
2036         * platform/graphics/GraphicsContext.cpp:
2037         (WebCore::GraphicsContext::shadowsIgnoreTransforms):
2038         * platform/graphics/GraphicsContext.h:
2039         * platform/graphics/mac/FontMac.mm:
2040         (WebCore::Font::drawGlyphs):
2041         * platform/graphics/win/FontCGWin.cpp:
2042         (WebCore::Font::drawGlyphs):
2043
2044 2010-12-22  Sheriff Bot  <webkit.review.bot@gmail.com>
2045
2046         Unreviewed, rolling out r74503.
2047         http://trac.webkit.org/changeset/74503
2048         https://bugs.webkit.org/show_bug.cgi?id=51513
2049
2050         breaks chromium mac debug compile (Requested by tonyg-cr on
2051         #webkit).
2052
2053         * platform/graphics/chromium/ImageLayerChromium.cpp:
2054         (WebCore::ImageLayerChromium::updateContentsIfDirty):
2055         * platform/graphics/skia/GraphicsContext3DSkia.cpp:
2056         (WebCore::GraphicsContext3D::getImageData):
2057
2058 2010-12-22  Dan Bernstein  <mitz@apple.com>
2059
2060         Reviewed by Darin Adler.
2061
2062         Replace runtime checks for hyphenation API availability with compile-time checks.
2063
2064         * platform/text/cf/HyphenationCF.cpp:
2065         (WebCore::::createValueForNullKey): Changed to use CFLocaleCopyCurrent() instead of using the
2066         search locale, which is empty on Windows. On Mac, this is equivalent to using the search locale.
2067         (WebCore::canHyphenate): Added this implementation for when the hyphenation API is not available.
2068         It is identical to the implementation in Hyphenation.cpp.
2069         (WebCore::lastHyphenLocation): Ditto.
2070
2071 2010-12-22  Simon Fraser  <simon.fraser@apple.com>
2072
2073         Reviewed by Darin Adler.
2074
2075         Cache snapshots of plug-ins before painting, to avoid script running during painting
2076         https://bugs.webkit.org/show_bug.cgi?id=51493
2077         
2078         When FrameView is asked to do a flattening paint (e.g. when Safari snapshots,
2079         or when printing), plug-ins which otherwise use the CA rendering model
2080         are sent a paint event. Some plug-ins may run script while handling this event,
2081         or out of process plug-ins may process queued requests at this time. Running
2082         script while inside layout or painting can have bad consequences, because it
2083         can result in arbitrary changes to the render tree.
2084         
2085         This patch avoids sending plug-ins paint events inside of painting. Instead,
2086         we ask the plug-ins to cache a snapshot before we paint, and then the software
2087         paint simply draws that snapshot.
2088         
2089         Requires manual test, because the bug happens when Safari does
2090         a page snapshot. It's not possible to tell the Test Netscape Plug-in
2091         to paint without laying out, making an automated test impossible.
2092
2093         * manual-tests/plugins/plugin-paint-causes-layout.html: Added.
2094
2095         * page/FrameView.h:
2096         * page/FrameView.cpp:
2097         (WebCore::FrameView::paintContents): Notify all enclosed widgets
2098         that a flattening paint is going to happen.
2099         (WebCore::FrameView::notifyWidgetsInAllFrames): Utility method 
2100         that tells the RenderView in all subframes to notify their widgets.
2101
2102         * platform/Widget.h:
2103         (WebCore::Widget::notifyWidget): Generic method that can be used
2104         to send messages to widgets. Current messages are just 'before flattening paint'
2105         and 'after flattening paint'. Message has no payload.
2106
2107         * rendering/RenderView.h:
2108         * rendering/RenderView.cpp:
2109         (WebCore::RenderView::getRetainedWidgets):
2110         (WebCore::RenderView::releaseWidgets): Factor code out of updateWidgetPositions(),
2111         since we use it in two places now.
2112         
2113         (WebCore::RenderView::updateWidgetPositions): Use getRetainedWidgets() etc.
2114         (WebCore::RenderView::notifyWidgets): Retain all the widgets, then send
2115         them all the message.
2116
2117         * rendering/RenderWidget.h:
2118         * rendering/RenderWidget.cpp:
2119         (WebCore::RenderWidget::notifyWidget): Pass the message to the widget.
2120
2121 2010-12-22  Adrienne Walker  <enne@google.com>
2122
2123         Reviewed by Kenneth Russell.
2124
2125         Fix null pointer deref when restoring a lost WebGL context.
2126         https://bugs.webkit.org/show_bug.cgi?id=51494
2127
2128         No new tests, as context restored events are not currently testable.
2129
2130         * html/canvas/WebGLRenderingContext.cpp:
2131         (WebCore::WebGLRenderingContext::initializeNewContext):
2132         (WebCore::WebGLRenderingContext::restoreContext):
2133
2134 2010-12-22  Adam Bergkvist  <adam.bergkvist@ericsson.com>
2135
2136         Reviewed by Martin Robinson.
2137
2138         [GTK] Building with Blob support fails again
2139         https://bugs.webkit.org/show_bug.cgi?id=51392
2140
2141         Build fix.
2142
2143         * GNUmakefile.am:
2144
2145 2010-12-22  Dan Bernstein  <mitz@apple.com>
2146
2147         Reviewed by Anders Carlsson.
2148
2149         canHyphenate() always returns true for the default locale
2150         https://bugs.webkit.org/show_bug.cgi?id=51506
2151
2152         No test, since this change only affects performance.
2153
2154         * platform/text/cf/HyphenationCF.cpp:
2155         (WebCore::::createValueForNullKey): Return 0 if hyphenation is not supported for the default locale.
2156         (WebCore::::createValueForKey): Removed whitespace.
2157
2158 2010-12-22  Yury Semikhatsky  <yurys@chromium.org>
2159
2160         Reviewed by Joseph Pecoraro.
2161
2162         Web Inspector: script name gets parsed as HTML in Call stack panel
2163         https://bugs.webkit.org/show_bug.cgi?id=51468
2164
2165         * inspector/front-end/Placard.js:
2166         (WebInspector.Placard.prototype.set subtitle):
2167
2168 2010-12-22  Eric Carlson  <eric.carlson@apple.com>
2169
2170         Reviewed by Darin Adler.
2171
2172         MediaPlayer should look for MIME type in data: URL
2173         https://bugs.webkit.org/show_bug.cgi?id=51195
2174
2175         If no MIME type is passed from the media element for a data: URL, try to get it from
2176         the URL itself.
2177
2178         No new tests are possible because the MIME type is just passed to the media engine.
2179
2180         * platform/graphics/MediaPlayer.cpp:
2181         (WebCore::MediaPlayer::load):
2182
2183 2010-12-22  W. James MacLean  <wjmaclean@chromium.org>
2184
2185         Reviewed by Kenneth Russell.
2186
2187         [chromium] Add asserts to test for contiguous-pixel Skia bitmaps.
2188         https://bugs.webkit.org/show_bug.cgi?id=51186
2189
2190         No new tests. Behaviour not changed, but need the asserts to detect when assumptions violated.
2191
2192         * platform/graphics/chromium/ImageLayerChromium.cpp:
2193         (WebCore::ImageLayerChromium::updateContentsIfDirty):
2194         * platform/graphics/skia/GraphicsContext3DSkia.cpp:
2195         (WebCore::GraphicsContext3D::getImageData):
2196
2197 2010-12-22  Chris Fleizach  <cfleizach@apple.com>
2198
2199         Reviewed by Darin Adler.
2200
2201         WAI-ARIA menubar role mapped to AXGroup, should be AXMenuBar
2202         https://bugs.webkit.org/show_bug.cgi?id=51488
2203
2204         Test: platform/mac/accessibility/aria-menubar.html
2205
2206         * accessibility/AccessibilityObject.cpp:
2207         (WebCore::createARIARoleMap):
2208
2209 2010-12-22  Zhenyao Mo  <zmo@google.com>
2210
2211         Reviewed by Kenneth Russell.
2212
2213         CopyTex{Sub}Image2D check always if the bound fbo's internal color format is compatible
2214         https://bugs.webkit.org/show_bug.cgi?id=51423
2215
2216         * html/canvas/WebGLRenderingContext.cpp:
2217         (WebCore::WebGLRenderingContext::copyTexImage2D): Remove the isGLES2Compliant flag around format compatibility checking.
2218         (WebCore::WebGLRenderingContext::copyTexSubImage2D): Ditto.
2219         (WebCore::WebGLRenderingContext::getBoundFramebufferColorFormat): Helper function to get bound framebuffer's color format; deal with the case of webgl's internal fbo.
2220         * html/canvas/WebGLRenderingContext.h:
2221
2222 2010-12-22  Xan Lopez  <xlopez@igalia.com>
2223
2224         Reviewed by Gustavo Noronha.
2225
2226         [GTK] Compilation fixes with GTK+ 2.91.7
2227         https://bugs.webkit.org/show_bug.cgi?id=51487
2228
2229         * platform/gtk/GtkVersioning.h: do not define GDK_DISPLAY for
2230         backwards compatibility, it's now defined again in GTK+ 3.x.
2231         * platform/gtk/PasteboardHelper.cpp: do not call GDK functions to
2232         initialize global static variables (!). These are called when the
2233         .so is loaded, and they now require GType to be initialized and
2234         will crash. Initialize them once from the ctor, which is a more
2235         common pattern anyway.
2236         (WebCore::initGdkAtoms): new method to initialize static variables.
2237         (WebCore::PasteboardHelper::PasteboardHelper): call it.
2238         * plugins/gtk/PluginViewGtk.cpp: do not include gdkconfig.h when
2239         using GTK+ 3.x, since it's no longer installed.
2240
2241 2010-12-22  Dirk Schulze  <krit@wbekit.org>
2242
2243         Reviewed by Nikolas Zimmermann.
2244
2245         Cleanup SVG code according to the webkit style rules 2
2246         https://bugs.webkit.org/show_bug.cgi?id=51461
2247
2248         Second patch to fix indention and other style issues according to the WebKit style rules in the SVG code.
2249
2250         No changes of functionality, so no new tests. 
2251
2252         * svg/SVGFEDisplacementMapElement.cpp:
2253         (WebCore::SVGFEDisplacementMapElement::stringToChannel):
2254         * svg/SVGFEDistantLightElement.h:
2255         * svg/SVGFEFuncAElement.h:
2256         * svg/SVGFEFuncBElement.h:
2257         * svg/SVGFEFuncGElement.h:
2258         * svg/SVGFEFuncRElement.h:
2259         * svg/SVGFEMergeElement.cpp:
2260         (WebCore::SVGFEMergeElement::build):
2261         * svg/SVGFEMorphologyElement.cpp:
2262         * svg/SVGFEPointLightElement.h:
2263         * svg/SVGFESpecularLightingElement.cpp:
2264         (WebCore::SVGFESpecularLightingElement::findLights):
2265         * svg/SVGFESpotLightElement.h:
2266         * svg/SVGFitToViewBox.cpp:
2267         (WebCore::SVGFitToViewBox::parseViewBox):
2268         (WebCore::SVGFitToViewBox::isKnownAttribute):
2269         * svg/SVGFontFaceElement.cpp:
2270         (WebCore::cssPropertyIdForSVGAttributeName):
2271         * svg/SVGFontFaceElement.h:
2272         (WebCore::SVGFontFaceElement::associatedFontElement):
2273         * svg/SVGFontFaceNameElement.h:
2274         * svg/SVGFontFaceSrcElement.cpp:
2275         * svg/SVGFontFaceSrcElement.h:
2276         * svg/SVGFontFaceUriElement.h:
2277         * svg/SVGForeignObjectElement.h:
2278         * svg/SVGGlyphElement.cpp:
2279         (WebCore::parseArabicForm):
2280         (WebCore::parseOrientation):
2281         * svg/SVGGlyphElement.h:
2282         (WebCore::SVGGlyphIdentifier::SVGGlyphIdentifier):
2283         (WebCore::SVGGlyphIdentifier::inheritedValue):
2284         (WebCore::SVGGlyphIdentifier::operator==):
2285         (WebCore::SVGGlyphElement::rendererIsNeeded):
2286         * svg/SVGGlyphMap.h:
2287         (WebCore::GlyphMapNode::GlyphMapNode):
2288         (WebCore::GlyphMapNode::create):
2289         (WebCore::SVGGlyphMap::SVGGlyphMap):
2290         (WebCore::SVGGlyphMap::add):
2291         (WebCore::SVGGlyphMap::compareGlyphPriority):
2292         (WebCore::SVGGlyphMap::get):
2293         (WebCore::SVGGlyphMap::clear):
2294         * svg/SVGGradientElement.cpp:
2295         * svg/SVGHKernElement.cpp:
2296         * svg/SVGHKernElement.h:
2297         (WebCore::SVGHKernElement::rendererIsNeeded):
2298         * svg/SVGImageElement.h:
2299         * svg/SVGImageLoader.cpp:
2300         * svg/SVGImageLoader.h:
2301         * svg/SVGLangSpace.cpp:
2302         (WebCore::SVGLangSpace::parseMappedAttribute):
2303         (WebCore::SVGLangSpace::isKnownAttribute):
2304         * svg/SVGLangSpace.h:
2305         (WebCore::SVGLangSpace::xmllang):
2306         * svg/SVGMetadataElement.h:
2307         * svg/SVGMissingGlyphElement.h:
2308         (WebCore::SVGMissingGlyphElement::rendererIsNeeded):
2309         * svg/SVGPaint.cpp:
2310         (WebCore::SVGPaint::cssText):
2311         * svg/SVGPaint.h:
2312         (WebCore::SVGPaint::create):
2313         (WebCore::SVGPaint::paintType):
2314         (WebCore::SVGPaint::isSVGPaint):
2315         * svg/SVGParserUtilities.cpp:
2316         * svg/SVGParserUtilities.h:
2317         (WebCore::isWhitespace):
2318         (WebCore::skipOptionalSpaces):
2319         (WebCore::skipOptionalSpacesOrDelimiter):
2320         * svg/SVGPathElement.cpp:
2321         * svg/SVGPathParserFactory.h:
2322         * svg/SVGPathSegList.h:
2323
2324 2010-12-22  Chris Fleizach  <cfleizach@apple.com>
2325
2326         Reviewed by Sam Weinig.
2327
2328         AX: WAI-ARIA textbox role needs different AXRole, depending on value of aria-multiline property
2329         https://bugs.webkit.org/show_bug.cgi?id=51481
2330
2331         Support aria-multiline and use it to change the role of an ARIA "textbox" 
2332         from AXTextArea to AXTextField.
2333
2334         Test: platform/mac/accessibility/aria-multiline.html
2335
2336         * accessibility/AccessibilityObject.cpp:
2337         (WebCore::AccessibilityObject::ariaIsMultiline):
2338         * accessibility/AccessibilityObject.h:
2339         (WebCore::AccessibilityObject::isPasswordField):
2340         (WebCore::AccessibilityObject::isTextControl):
2341         * accessibility/AccessibilityRenderObject.cpp:
2342         (WebCore::AccessibilityRenderObject::determineAriaRoleAttribute):
2343         * accessibility/AccessibilityRenderObject.h:
2344         * html/HTMLAttributeNames.in:
2345
2346 2010-12-22  Simon Fraser  <simon.fraser@apple.com>
2347
2348         Reviewed by Dan Bernstein.
2349
2350         CSS 2.1 failure: counter-increment-013 fails
2351         https://bugs.webkit.org/show_bug.cgi?id=51483
2352         
2353         Clamp the counter-increment property to the valid range of signed
2354         integers.
2355
2356         Test: fast/css/counters/counter-increment-overflow.html
2357
2358         * css/CSSParser.cpp:
2359         (WebCore::clampToSignedInteger):
2360         (WebCore::CSSParser::parseCounter):
2361
2362 2010-12-22  Dan Bernstein  <mitz@apple.com>
2363
2364         Rubber-stamped by Mark Rowe.
2365
2366         Changed WebKitTools to Tools in script build phases.
2367
2368         * WebCore.xcodeproj/project.pbxproj:
2369
2370 2010-12-21  Vangelis Kokkevis  <vangelis@chromium.org>
2371
2372         Reviewed by Kenneth Russell.
2373
2374         [chromium] Fixing crash with empty render surfaces.
2375         https://bugs.webkit.org/show_bug.cgi?id=51432
2376
2377         Test: platform/chromium/compositing/empty-render-surface-crasher.html
2378
2379         * platform/graphics/chromium/RenderSurfaceChromium.cpp:
2380         (WebCore::RenderSurfaceChromium::draw):
2381
2382 2010-12-21  Pavel Podivilov  <podivilov@chromium.org>
2383
2384         Reviewed by Yury Semikhatsky.
2385
2386         Web Inspector: persist JavaScript breakpoints in frontend settings.
2387         https://bugs.webkit.org/show_bug.cgi?id=48434
2388
2389         * bindings/js/ScriptDebugServer.cpp:
2390         (WebCore::ScriptDebugServer::setBreakpoint):
2391         (WebCore::ScriptDebugServer::removeBreakpoint):
2392         * bindings/js/ScriptDebugServer.h:
2393         * bindings/v8/DebuggerScript.js:
2394         ():
2395         * bindings/v8/ScriptDebugServer.cpp:
2396         (WebCore::ScriptDebugServer::setBreakpoint):
2397         (WebCore::ScriptDebugServer::removeBreakpoint):
2398         * bindings/v8/ScriptDebugServer.h:
2399         * inspector/Inspector.idl:
2400         * inspector/InspectorBackend.cpp:
2401         * inspector/InspectorController.cpp:
2402         (WebCore::InspectorController::InspectorController):
2403         (WebCore::InspectorController::enableDebuggerFromFrontend):
2404         (WebCore::InspectorController::setStickyBreakpoints):
2405         (WebCore::InspectorController::restoreStickyBreakpoint):
2406         * inspector/InspectorController.h:
2407         * inspector/InspectorDebuggerAgent.cpp:
2408         (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
2409         (WebCore::InspectorDebuggerAgent::setStickyBreakpoint):
2410         (WebCore::InspectorDebuggerAgent::setBreakpoint):
2411         (WebCore::InspectorDebuggerAgent::removeBreakpoint):
2412         (WebCore::InspectorDebuggerAgent::restoreBreakpoint):
2413         (WebCore::InspectorDebuggerAgent::clearForPageNavigation):
2414         (WebCore::InspectorDebuggerAgent::didParseSource):
2415         * inspector/InspectorDebuggerAgent.h:
2416         * inspector/front-end/Breakpoint.js:
2417         (WebInspector.Breakpoint):
2418         (WebInspector.Breakpoint.prototype.remove):
2419         * inspector/front-end/BreakpointManager.js:
2420         (WebInspector.BreakpointManager):
2421         (WebInspector.DOMBreakpoint.prototype._serializeToJSON):
2422         (WebInspector.JavaScriptBreakpoint):
2423         (WebInspector.XHRBreakpoint.prototype._serializeToJSON):
2424         * inspector/front-end/DebuggerModel.js:
2425         (WebInspector.DebuggerModel):
2426         * inspector/front-end/ScriptsPanel.js:
2427         (WebInspector.ScriptsPanel.prototype._debuggerPaused):
2428         * inspector/front-end/SourceFrame.js:
2429
2430 2010-12-20  Antti Koivisto  <antti@apple.com>
2431
2432         Reviewed by Alexey Proskuryakov.
2433
2434         https://bugs.webkit.org/show_bug.cgi?id=51354
2435         Don't block rendering and script execution on deferred stylesheets
2436         
2437         - Don't add low priority stylesheets to the document pending sheet count.
2438         - Resolve media attribute fully for the link element stylesheet load.
2439
2440         Test: http/tests/local/stylesheet-and-script-load-order-media-print.html
2441
2442         * html/HTMLLinkElement.cpp:
2443         (WebCore::HTMLLinkElement::HTMLLinkElement):
2444         (WebCore::HTMLLinkElement::~HTMLLinkElement):
2445         (WebCore::HTMLLinkElement::setDisabledState):
2446         (WebCore::HTMLLinkElement::process):
2447         (WebCore::HTMLLinkElement::sheetLoaded):
2448         (WebCore::HTMLLinkElement::addPendingSheet):
2449         (WebCore::HTMLLinkElement::removePendingSheet):
2450         * html/HTMLLinkElement.h:
2451
2452 2010-12-22  Sheriff Bot  <webkit.review.bot@gmail.com>
2453
2454         Unreviewed, rolling out r74473.
2455         http://trac.webkit.org/changeset/74473
2456         https://bugs.webkit.org/show_bug.cgi?id=51463
2457
2458         broke compilation on leopard intel release (Requested by
2459         podivilov on #webkit).
2460
2461         * bindings/js/ScriptDebugServer.cpp:
2462         (WebCore::ScriptDebugServer::setBreakpoint):
2463         (WebCore::ScriptDebugServer::removeBreakpoint):
2464         * bindings/js/ScriptDebugServer.h:
2465         * bindings/v8/DebuggerScript.js:
2466         ():
2467         * bindings/v8/ScriptDebugServer.cpp:
2468         (WebCore::ScriptDebugServer::setBreakpoint):
2469         (WebCore::ScriptDebugServer::removeBreakpoint):
2470         * bindings/v8/ScriptDebugServer.h:
2471         * inspector/Inspector.idl:
2472         * inspector/InspectorBackend.cpp:
2473         * inspector/InspectorController.cpp:
2474         (WebCore::InspectorController::InspectorController):
2475         (WebCore::InspectorController::enableDebuggerFromFrontend):
2476         (WebCore::InspectorController::setStickyBreakpoints):
2477         (WebCore::InspectorController::restoreStickyBreakpoint):
2478         (WebCore::InspectorController::breakpointsSettingKey):
2479         (WebCore::InspectorController::loadBreakpoints):
2480         (WebCore::InspectorController::saveBreakpoints):
2481         * inspector/InspectorController.h:
2482         * inspector/InspectorDebuggerAgent.cpp:
2483         (WebCore::formatBreakpointId):
2484         (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
2485         (WebCore::InspectorDebuggerAgent::setBreakpoint):
2486         (WebCore::InspectorDebuggerAgent::removeBreakpoint):
2487         (WebCore::InspectorDebuggerAgent::clearForPageNavigation):
2488         (WebCore::InspectorDebuggerAgent::md5Base16):
2489         (WebCore::InspectorDebuggerAgent::loadBreakpoints):
2490         (WebCore::InspectorDebuggerAgent::saveBreakpoints):
2491         (WebCore::InspectorDebuggerAgent::didParseSource):
2492         * inspector/InspectorDebuggerAgent.h:
2493         * inspector/front-end/Breakpoint.js:
2494         (WebInspector.Breakpoint):
2495         (WebInspector.Breakpoint.jsBreakpointId):
2496         (WebInspector.Breakpoint.prototype.set enabled):
2497         (WebInspector.Breakpoint.prototype.get id):
2498         (WebInspector.Breakpoint.prototype.set condition):
2499         (WebInspector.Breakpoint.prototype.remove):
2500         * inspector/front-end/BreakpointManager.js:
2501         (WebInspector.BreakpointManager):
2502         (WebInspector.BreakpointManager.prototype._createDOMBreakpoint):
2503         (WebInspector.BreakpointManager.prototype._createEventListenerBreakpoint):
2504         (WebInspector.BreakpointManager.prototype._createXHRBreakpoint):
2505         (WebInspector.BreakpointManager.prototype._setNativeBreakpoint):
2506         (WebInspector.BreakpointManager.prototype._setNativeBreakpointEnabled):
2507         (WebInspector.BreakpointManager.prototype._removeNativeBreakpoint):
2508         (WebInspector.BreakpointManager.prototype.breakpointViewForEventData):
2509         (WebInspector.BreakpointManager.prototype._projectChanged):
2510         (WebInspector.BreakpointManager.prototype.restoreDOMBreakpoints):
2511         (WebInspector.BreakpointManager.prototype._saveBreakpoints):
2512         (WebInspector.BreakpointManager.prototype._validateBreakpoints):
2513         (WebInspector.DOMBreakpoint.prototype._serializeToJSON):
2514         (WebInspector.EventListenerBreakpoint.prototype._serializeToJSON):
2515         (WebInspector.XHRBreakpoint.prototype._serializeToJSON):
2516         (WebInspector.NativeBreakpointView.prototype.set enabled):
2517         (WebInspector.NativeBreakpointView.prototype.remove):
2518         * inspector/front-end/DebuggerModel.js:
2519         (WebInspector.DebuggerModel):
2520         (WebInspector.DebuggerModel.prototype.setOneTimeBreakpoint):
2521         (WebInspector.DebuggerModel.prototype.removeOneTimeBreakpoint):
2522         (WebInspector.DebuggerModel.prototype.setBreakpoint):
2523         (WebInspector.DebuggerModel.prototype.findBreakpoint):
2524         (WebInspector.DebuggerModel.prototype.reset):
2525         (WebInspector.DebuggerModel.prototype._setBreakpoint):
2526         (WebInspector.DebuggerModel.prototype._breakpointRemoved):
2527         (WebInspector.DebuggerModel.prototype._setBreakpointOnBackend):
2528         (WebInspector.DebuggerModel.prototype.breakpointRestored):
2529         (WebInspector.DebuggerModel.prototype.pausedScript):
2530         (WebInspector.DebuggerModel.prototype.resumedScript):
2531         * inspector/front-end/ScriptsPanel.js:
2532         (WebInspector.ScriptsPanel.prototype.continueToLine):
2533         (WebInspector.ScriptsPanel.prototype._debuggerPaused):
2534         * inspector/front-end/SourceFrame.js:
2535         (WebInspector.SourceFrame.prototype._contextMenu.addConditionalBreakpoint.didEditBreakpointCondition):
2536         (WebInspector.SourceFrame.prototype._contextMenu.addConditionalBreakpoint):
2537         (WebInspector.SourceFrame.prototype._contextMenu.else.editBreakpointCondition.didEditBreakpointCondition):
2538         (WebInspector.SourceFrame.prototype._contextMenu.else.editBreakpointCondition):
2539         (WebInspector.SourceFrame.prototype._contextMenu):
2540         (WebInspector.SourceFrame.prototype._mouseDown):
2541         (WebInspector.SourceFrame.prototype._continueToLine):
2542         (WebInspector.SourceFrame.prototype._setBreakpoint):
2543
2544 2010-12-21  Pavel Podivilov  <podivilov@chromium.org>
2545
2546         Reviewed by Yury Semikhatsky.
2547
2548         Web Inspector: persist JavaScript breakpoints in frontend settings.
2549         https://bugs.webkit.org/show_bug.cgi?id=48434
2550
2551         * bindings/js/ScriptDebugServer.cpp:
2552         (WebCore::ScriptDebugServer::setBreakpoint):
2553         (WebCore::ScriptDebugServer::removeBreakpoint):
2554         * bindings/js/ScriptDebugServer.h:
2555         * bindings/v8/DebuggerScript.js:
2556         ():
2557         * bindings/v8/ScriptDebugServer.cpp:
2558         (WebCore::ScriptDebugServer::setBreakpoint):
2559         (WebCore::ScriptDebugServer::removeBreakpoint):
2560         * bindings/v8/ScriptDebugServer.h:
2561         * inspector/Inspector.idl:
2562         * inspector/InspectorBackend.cpp:
2563         * inspector/InspectorController.cpp:
2564         (WebCore::InspectorController::InspectorController):
2565         (WebCore::InspectorController::enableDebuggerFromFrontend):
2566         (WebCore::InspectorController::setStickyBreakpoints):
2567         (WebCore::InspectorController::restoreStickyBreakpoint):
2568         * inspector/InspectorController.h:
2569         * inspector/InspectorDebuggerAgent.cpp:
2570         (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
2571         (WebCore::InspectorDebuggerAgent::setStickyBreakpoint):
2572         (WebCore::InspectorDebuggerAgent::setBreakpoint):
2573         (WebCore::InspectorDebuggerAgent::removeBreakpoint):
2574         (WebCore::InspectorDebuggerAgent::restoreBreakpoint):
2575         (WebCore::InspectorDebuggerAgent::clearForPageNavigation):
2576         (WebCore::InspectorDebuggerAgent::didParseSource):
2577         * inspector/InspectorDebuggerAgent.h:
2578         * inspector/front-end/Breakpoint.js:
2579         (WebInspector.Breakpoint):
2580         (WebInspector.Breakpoint.prototype.remove):
2581         * inspector/front-end/BreakpointManager.js:
2582         (WebInspector.BreakpointManager):
2583         (WebInspector.DOMBreakpoint.prototype._serializeToJSON):
2584         (WebInspector.JavaScriptBreakpoint):
2585         (WebInspector.XHRBreakpoint.prototype._serializeToJSON):
2586         * inspector/front-end/DebuggerModel.js:
2587         (WebInspector.DebuggerModel):
2588         * inspector/front-end/ScriptsPanel.js:
2589         (WebInspector.ScriptsPanel.prototype._debuggerPaused):
2590         * inspector/front-end/SourceFrame.js:
2591
2592 2010-12-22  Dirk Schulze  <krit@wbekit.org>
2593
2594         Reviewed by Nikolas Zimmermann.
2595
2596         Cleanup SVG code according to the webkit style rules 1
2597         https://bugs.webkit.org/show_bug.cgi?id=51411
2598
2599         First patch to fix indention and other style issues according to the WebKit style rules in the SVG code.
2600
2601         No change of functionality. 
2602
2603         * svg/ColorDistance.cpp:
2604         (WebCore::ColorDistance::isZero):
2605         * svg/ColorDistance.h:
2606         * svg/ElementTimeControl.h:
2607         (WebCore::ElementTimeControl::~ElementTimeControl):
2608         * svg/LinearGradientAttributes.h:
2609         (WebCore::LinearGradientAttributes::LinearGradientAttributes):
2610         (WebCore::LinearGradientAttributes::x1):
2611         (WebCore::LinearGradientAttributes::y1):
2612         (WebCore::LinearGradientAttributes::x2):
2613         (WebCore::LinearGradientAttributes::y2):
2614         (WebCore::LinearGradientAttributes::setX1):
2615         (WebCore::LinearGradientAttributes::setY1):
2616         (WebCore::LinearGradientAttributes::setX2):
2617         (WebCore::LinearGradientAttributes::setY2):
2618         (WebCore::LinearGradientAttributes::hasX1):
2619         (WebCore::LinearGradientAttributes::hasY1):
2620         (WebCore::LinearGradientAttributes::hasX2):
2621         (WebCore::LinearGradientAttributes::hasY2):
2622         * svg/RadialGradientAttributes.h:
2623         (WebCore::RadialGradientAttributes::RadialGradientAttributes):
2624         (WebCore::RadialGradientAttributes::cx):
2625         (WebCore::RadialGradientAttributes::cy):
2626         (WebCore::RadialGradientAttributes::r):
2627         (WebCore::RadialGradientAttributes::fx):
2628         (WebCore::RadialGradientAttributes::fy):
2629         (WebCore::RadialGradientAttributes::setCx):
2630         (WebCore::RadialGradientAttributes::setCy):
2631         (WebCore::RadialGradientAttributes::setR):
2632         (WebCore::RadialGradientAttributes::setFx):
2633         (WebCore::RadialGradientAttributes::setFy):
2634         (WebCore::RadialGradientAttributes::hasCx):
2635         (WebCore::RadialGradientAttributes::hasCy):
2636         (WebCore::RadialGradientAttributes::hasR):
2637         (WebCore::RadialGradientAttributes::hasFx):
2638         (WebCore::RadialGradientAttributes::hasFy):
2639         * svg/SVGAngle.cpp:
2640         * svg/SVGAnimateColorElement.h:
2641         * svg/SVGAnimateElement.cpp:
2642         (WebCore::SVGAnimateElement::calculateAnimatedValue):
2643         (WebCore::SVGAnimateElement::calculateDistance):
2644         * svg/SVGAnimateElement.h:
2645         * svg/SVGAnimateMotionElement.cpp:
2646         * svg/SVGAnimateMotionElement.h:
2647         * svg/SVGAnimatedNumber.h:
2648         * svg/SVGAnimationElement.cpp:
2649         (WebCore::parseKeyTimes):
2650         (WebCore::SVGAnimationElement::currentValuesForValuesAnimation):
2651         (WebCore::SVGAnimationElement::updateAnimation):
2652         * svg/SVGClipPathElement.cpp:
2653         (WebCore::SVGClipPathElement::svgAttributeChanged):
2654         * svg/SVGColor.h:
2655         (WebCore::SVGColor::create):
2656         (WebCore::SVGColor::createCurrentColor):
2657         (WebCore::SVGColor::colorType):
2658         (WebCore::SVGColor::setRGBColor):
2659         (WebCore::SVGColor::color):
2660         (WebCore::SVGColor::isSVGColor):
2661         * svg/SVGCursorElement.cpp:
2662         (WebCore::SVGCursorElement::svgAttributeChanged):
2663         * svg/SVGCursorElement.h:
2664         * svg/SVGDescElement.h:
2665         (WebCore::SVGDescElement::rendererIsNeeded):
2666         * svg/SVGDocument.cpp:
2667         * svg/SVGDocument.h:
2668         (WebCore::SVGDocument::create):
2669         (WebCore::SVGDocument::isSVGDocument):
2670         * svg/SVGElement.h:
2671         (WebCore::SVGElement::isStyled):
2672         (WebCore::SVGElement::isStyledTransformable):
2673         (WebCore::SVGElement::isStyledLocatable):
2674         (WebCore::SVGElement::isSVG):
2675         (WebCore::SVGElement::isFilterEffect):
2676         (WebCore::SVGElement::isGradientStop):
2677         (WebCore::SVGElement::isTextContent):
2678         (WebCore::SVGElement::isValid):
2679         (WebCore::SVGElement::svgAttributeChanged):
2680         (WebCore::SVGElement::synchronizeProperty):
2681         (WebCore::SVGElement::supplementalTransform):
2682         (WebCore::SVGElement::invalidateSVGAttributes):
2683         (WebCore::SVGElement::rendererIsNeeded):
2684         (WebCore::SVGElement::needsPendingResourceHandling):
2685         (WebCore::SVGElement::buildPendingResource):
2686         * svg/SVGElementInstance.h:
2687         (WebCore::SVGElementInstance::create):
2688         (WebCore::SVGElementInstance::correspondingElement):
2689         (WebCore::SVGElementInstance::correspondingUseElement):
2690         (WebCore::SVGElementInstance::shadowTreeElement):
2691         (WebCore::SVGElementInstance::parentNode):
2692         (WebCore::SVGElementInstance::previousSibling):
2693         (WebCore::SVGElementInstance::nextSibling):
2694         (WebCore::SVGElementInstance::firstChild):
2695         (WebCore::SVGElementInstance::lastChild):
2696         (WebCore::SVGElementInstance::ownerDocument):
2697         (WebCore::SVGElementInstance::toNode):
2698         (WebCore::SVGElementInstance::toSVGElementInstance):
2699         (WebCore::SVGElementInstance::hasChildNodes):
2700         (WebCore::SVGElementInstance::setFirstChild):
2701         (WebCore::SVGElementInstance::setLastChild):
2702         (WebCore::SVGElementInstance::setNextSibling):
2703         (WebCore::SVGElementInstance::setPreviousSibling):
2704         (WebCore::SVGElementInstance::refEventTarget):
2705         (WebCore::SVGElementInstance::derefEventTarget):
2706         * svg/SVGElementInstanceList.h:
2707         (WebCore::SVGElementInstanceList::create):
2708         * svg/SVGException.h:
2709         (WebCore::SVGException::create):
2710         (WebCore::SVGException::SVGException):
2711         * svg/SVGFEColorMatrixElement.cpp:
2712         (WebCore::SVGFEColorMatrixElement::parseMappedAttribute):
2713         * svg/SVGFEComponentTransferElement.cpp:
2714         (WebCore::SVGFEComponentTransferElement::build):
2715         * svg/SVGFEDiffuseLightingElement.cpp:
2716         (WebCore::SVGFEDiffuseLightingElement::findLights):
2717         * svg/SVGFont.cpp:
2718         (WebCore::convertEmUnitToPixel):
2719         * svg/SVGUseElement.cpp:
2720         (WebCore::isDirectReference):
2721
2722 2010-12-22  Dai Mikurube  <dmikurube@google.com>
2723
2724         Reviewed by Kent Tamura.
2725
2726         https://bugs.webkit.org/show_bug.cgi?id=51289
2727         Initial state of checkValidity() and :invalid are incorrect with <select required>
2728
2729         * html/HTMLSelectElement.cpp:
2730         (WebCore::HTMLSelectElement::childrenChanged): setNeedsValidityCheck() after <select>'s children change.
2731
2732 2010-12-22  Alexander Pavlov  <apavlov@chromium.org>
2733
2734         Reviewed by Joseph Pecoraro.
2735
2736         Web Inspector: Styles pane fails to display properties from a broken CSS rule correctly
2737         https://bugs.webkit.org/show_bug.cgi?id=51405
2738
2739         Invoke markPropertyStart() after the parser has restored after an error.
2740
2741         * css/CSSGrammar.y:
2742
2743 2010-12-22  Dai Mikurube  <dmikurube@google.com>
2744
2745         Reviewed by Kent Tamura.
2746
2747         Assertion failure with <select multiple required>
2748         https://bugs.webkit.org/show_bug.cgi?id=51260
2749
2750         Test: fast/css/pseudo-valid-select-click.html
2751
2752         * dom/SelectElement.cpp: updateValidity() after selecting some options of ListBox-typed <select> elements to update valid() cache.
2753         (WebCore::SelectElement::updateListBoxSelection):
2754
2755 2010-12-21  Darin Adler  <darin@apple.com>
2756
2757         Unreviewed correction to unreviewed build fix for r74447.
2758
2759         Inappropriate code was left behind in sourceURI function for non-Dashboard platforms.
2760
2761         * html/HTMLImageLoader.cpp:
2762         (WebCore::HTMLImageLoader::sourceURI): Change the logic so all the bug-workaround
2763         logic is inside the #ifdef.
2764
2765 2010-12-21  Simon Fraser  <simon.fraser@apple.com>
2766
2767         Reviewed by Darin Adler.
2768
2769         Include the shadow color space as part of the GraphicsContext state
2770         https://bugs.webkit.org/show_bug.cgi?id=51420
2771         
2772         Include the ColorSpace for the shadow color as part of the graphics
2773         state. This will be used later for a shadow implementation that
2774         does not rely on platform shadow code.
2775
2776         * platform/graphics/GraphicsContext.cpp:
2777         (WebCore::GraphicsContext::setShadow):
2778         (WebCore::GraphicsContext::clearShadow):
2779         (WebCore::GraphicsContext::getShadow):
2780         * platform/graphics/GraphicsContext.h:
2781         (WebCore::GraphicsContextState::GraphicsContextState):
2782         * platform/graphics/chromium/FontChromiumWin.cpp:
2783         (WebCore::TransparencyAwareFontPainter::TransparencyAwareGlyphPainter::drawGlyphs):
2784         (WebCore::Font::drawComplexText):
2785         * platform/graphics/mac/FontMac.mm:
2786         (WebCore::Font::drawGlyphs):
2787         * platform/graphics/skia/SkiaFontWin.cpp:
2788         (WebCore::windowsCanHandleDrawTextShadow):
2789         * platform/graphics/win/FontCGWin.cpp:
2790         (WebCore::drawGDIGlyphs):
2791         (WebCore::Font::drawGlyphs):
2792         * platform/graphics/wince/GraphicsContextWinCE.cpp:
2793         (WebCore::GraphicsContext::fillRoundedRect):
2794         (WebCore::GraphicsContext::drawText):
2795
2796 2010-12-21  Dan Bernstein  <mitz@apple.com>
2797
2798         Reviewed by Sam Weinig.
2799
2800         <rdar://problem/8668230> REGRESSION (r71884): Returning alternate requests from willSendRequest can prevent other requests from ever being sent
2801         https://bugs.webkit.org/show_bug.cgi?id=51413
2802
2803         71884 was wrong in moving willSendRequest to ResourceLoader::start(). It’s wrong to do all the
2804         scheduling, which is host-dependent, before calling willSendRequest, because the latter can
2805         change the host.
2806
2807         * loader/NetscapePlugInStreamLoader.cpp:
2808         (WebCore::NetscapePlugInStreamLoader::create): Check the return value from ResourceLoader::init()
2809         and return 0 if it is false.
2810         * loader/ResourceLoader.cpp:
2811         (WebCore::ResourceLoader::init): Made this function return a boolean. Moved the call to willSendRequest()
2812         from start() into here. Return false if willSendRequest() canceled the request.
2813         (WebCore::ResourceLoader::start): Moved the call to willSendRequest() from here to init().
2814         * loader/ResourceLoader.h:
2815         * loader/SubresourceLoader.cpp:
2816         (WebCore::SubresourceLoader::create): Check the return value from ResourceLoader::init()
2817         and return 0 if it is false.
2818
2819 2010-12-21  Benjamin Kalman  <kalman@chromium.org>
2820
2821         Reviewed by Darin Adler.
2822
2823         Shift-End does not select to the end of the line
2824         https://bugs.webkit.org/show_bug.cgi?id=50610
2825
2826         Let the VisiblePosition affinity for end of line selection to be set by
2827         visibleEnd/visibleStart rather than using end/start and always using UPSTREAM.
2828
2829         Test: editing/selection/extend-to-line-boundary.html
2830
2831         * editing/SelectionController.cpp:
2832         (WebCore::SelectionController::positionForPlatform): Use visibleStart/visibleEnd rather than
2833         start/end.
2834         (WebCore::SelectionController::modifyExtendingForward): Don't explicitly use UPSTREAM affinity.
2835
2836 2010-12-21  Jan Erik Hanssen  <jhanssen@sencha.com>
2837
2838         Reviewed by Simon Fraser.
2839
2840         matrix3d() must take the zoom factor into account
2841         https://bugs.webkit.org/show_bug.cgi?id=51408
2842
2843         Test: transforms/3d/general/matrix-with-zoom-3d.html
2844
2845         * css/CSSStyleSelector.cpp:
2846         (WebCore::CSSStyleSelector::createTransformOperations):
2847
2848 2010-12-21  Adam Barth  <abarth@webkit.org>
2849
2850         Reviewed by Darin Adler.
2851
2852         Move V8 to common implementation of window.open
2853         https://bugs.webkit.org/show_bug.cgi?id=51385
2854
2855         I also changed some function names to match WebKit style.  There's a
2856         bunch of code we can remove in the generic bindings now.  I'll do that
2857         in the next patch.
2858
2859         * bindings/generic/BindingDOMWindow.h:
2860         (WebCore::::open):
2861         * bindings/generic/BindingFrame.h:
2862         (WebCore::::navigateIfAllowed):
2863         * bindings/generic/BindingSecurity.h:
2864         (WebCore::::canAccessWindow):
2865         (WebCore::::allowPopUp):
2866         (WebCore::::shouldAllowNavigation):
2867         * bindings/generic/GenericBinding.h:
2868         (WebCore::completeURL):
2869         * bindings/js/JSDOMBinding.cpp:
2870         (WebCore::toLexicalFrame):
2871         (WebCore::toDynamicFrame):
2872         * bindings/js/specialization/JSBindingState.cpp:
2873         (WebCore::::activeFrame):
2874         (WebCore::::firstFrame):
2875         * bindings/js/specialization/JSBindingState.h:
2876         * bindings/v8/V8Utilities.cpp:
2877         (WebCore::callingOrEnteredFrame):
2878         * bindings/v8/custom/V8DOMWindowCustom.cpp:
2879         (WebCore::V8DOMWindow::locationAccessorSetter):
2880         (WebCore::V8DOMWindow::openCallback):
2881         * bindings/v8/specialization/V8BindingState.cpp:
2882         (WebCore::::activeWindow):
2883         (WebCore::::firstWindow):
2884         (WebCore::::activeFrame):
2885         (WebCore::::firstFrame):
2886         * bindings/v8/specialization/V8BindingState.h:
2887
2888 2010-12-21  Ryosuke Niwa  <rniwa@webkit.org>
2889
2890         Unreviewed build fix for r74447.
2891
2892         Call usesDashboardBackwardCompatibilityMode() only if DASHBOARD_SUPPORT is enabled.
2893
2894         * html/HTMLImageLoader.cpp:
2895         (WebCore::HTMLImageLoader::sourceURI):
2896
2897 2010-12-21  Dan Bernstein  <mitz@apple.com>
2898
2899         Reviewed by John Sullivan.
2900
2901         <rdar://problem/8725702> REGRESSION (r68854): Broken image icon seen in the Address Book Dashboard widget
2902
2903         Test: platform/mac/fast/dom/HTMLImageElement/dashboard-src-quirk.html
2904
2905         The Address Book widget sets the src attribute of an img element to a string that looks like a CSS
2906         URL value. This used to work prior to r68854, because some DOM attribute parsing functions were using
2907         the wrong function to parse URL attributes (last named deprecatedParseURL).
2908
2909         * html/HTMLImageLoader.cpp:
2910         (WebCore::HTMLImageLoader::sourceURI): In Dashboard, check if the src attribute begins with 'url("'
2911         and ends with '")', and if so, strip those away.
2912
2913 2010-12-21  Ryosuke Niwa  <rniwa@webkit.org>
2914
2915         Reviewed by Darin Adler.
2916
2917         CharacterData needs cleanup
2918         https://bugs.webkit.org/show_bug.cgi?id=51426
2919
2920         Extracted CharacterData::setDataAndNotify and CharacterData::updateRenderer.
2921
2922         * dom/CharacterData.cpp:
2923         (WebCore::CharacterData::setData): Calls setDataAndUpdate.
2924         (WebCore::CharacterData::parserAppendData): Ditto.
2925         (WebCore::CharacterData::appendData): Ditto.
2926         (WebCore::CharacterData::insertData): Ditto.
2927         (WebCore::CharacterData::deleteData): Ditto.
2928         (WebCore::CharacterData::replaceData): Ditto.
2929         (WebCore::CharacterData::setDataAndUpdate): Added.
2930         (WebCore::CharacterData::updateRenderer): Added.
2931         (WebCore::CharacterData::dispatchModifiedEvent): Renamed prevValue to oldData.
2932         * dom/CharacterData.h:
2933
2934 2010-12-21  Sheriff Bot  <webkit.review.bot@gmail.com>
2935
2936         Unreviewed, rolling out r74420.
2937         http://trac.webkit.org/changeset/74420
2938         https://bugs.webkit.org/show_bug.cgi?id=51436
2939
2940         causes editing/pasteboard/paste-noscript-xhtml.xhtml to crash
2941         (Requested by tonyg-cr on #webkit).
2942
2943         * dom/DocumentParser.cpp:
2944         * dom/DocumentParser.h:
2945         * html/parser/HTMLDocumentParser.cpp:
2946         * html/parser/HTMLDocumentParser.h:
2947         * html/parser/HTMLParserScheduler.cpp:
2948         (WebCore::HTMLParserScheduler::HTMLParserScheduler):
2949         * html/parser/HTMLParserScheduler.h:
2950         (WebCore::HTMLParserScheduler::isScheduledForResume):
2951         * page/PageGroupLoadDeferrer.cpp:
2952         (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
2953         (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer):
2954
2955 2010-12-21  Kenneth Russell  <kbr@google.com>
2956
2957         Reviewed by Darin Fisher.
2958
2959         Enable extensions used in accelerated 2D canvas implementation
2960         https://bugs.webkit.org/show_bug.cgi?id=51433
2961
2962         Call Extensions3D::ensureEnabled() for all supported extensions
2963         the accelerated 2D Canvas implementation uses. Tested with a few
2964         layout tests previously failing when run in Chromium due to OpenGL
2965         INVALID_ENUM and other errors.
2966
2967         * platform/graphics/gpu/DrawingBuffer.cpp:
2968         (WebCore::DrawingBuffer::create):
2969         * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
2970         (WebCore::SharedGraphicsContext3D::SharedGraphicsContext3D):
2971         (WebCore::SharedGraphicsContext3D::supportsBGRA):
2972         * platform/graphics/gpu/SharedGraphicsContext3D.h:
2973
2974 2010-12-21  Zhenyao Mo  <zmo@google.com>
2975
2976         Reviewed by Kenneth Russell.
2977
2978         WebGLRenderingContext needs to zero textures and renderbuffers
2979         https://bugs.webkit.org/show_bug.cgi?id=49355
2980
2981         Test: fast/canvas/webgl/uninitialized-test.html
2982
2983         * html/canvas/WebGLFramebuffer.cpp:
2984         (WebCore::WebGLFramebuffer::onAccess): Use a parameter to decide if renderbuffer initialization is needed.
2985         (WebCore::WebGLFramebuffer::initializeRenderbuffers): Don't return false if color buffer doesn't exist.
2986         * html/canvas/WebGLFramebuffer.h: Modify onAccess with an added parameter.
2987         * html/canvas/WebGLRenderingContext.cpp:
2988         (WebCore::WebGLRenderingContext::clear): Call onAccess with an added parameter.
2989         (WebCore::WebGLRenderingContext::copyTexImage2D): Ditto.
2990         (WebCore::WebGLRenderingContext::copyTexSubImage2D): Ditto.
2991         (WebCore::WebGLRenderingContext::drawArrays): Ditto.
2992         (WebCore::WebGLRenderingContext::drawElements): Ditto.
2993         (WebCore::WebGLRenderingContext::readPixels): Ditto.
2994         (WebCore::WebGLRenderingContext::texImage2DBase): Create buffer data of 0s if input is null to initialize textures.
2995         * platform/graphics/GraphicsContext3D.cpp:
2996         (WebCore::GraphicsContext3D::texImage2DResourceSafe): Helper function that initialize all pixels to 0.
2997         * platform/graphics/GraphicsContext3D.h:
2998         * platform/graphics/chromium/Canvas2DLayerChromium.cpp:
2999         (WebCore::Canvas2DLayerChromium::updateContentsIfDirty): Use texImage2DResourceSafe.
3000         * platform/graphics/chromium/DrawingBufferChromium.cpp:
3001         (WebCore::generateColorTexture): Ditto.
3002         * platform/graphics/chromium/LayerRendererChromium.cpp:
3003         (WebCore::LayerRendererChromium::prepareToDrawLayers): Ditto.
3004         * platform/graphics/chromium/TextureManager.cpp:
3005         (WebCore::TextureManager::requestTexture): Ditto.
3006         * platform/graphics/chromium/VideoLayerChromium.cpp:
3007         (WebCore::VideoLayerChromium::allocateTexture): Ditto.
3008         * platform/graphics/gpu/DrawingBuffer.cpp:
3009         (WebCore::DrawingBuffer::reset): Use texImage2DResourceSafe; also, only initialize depth/stencil buffer.
3010         * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
3011         (WebCore::SharedGraphicsContext3D::texImage2D): Use texImage2DResourceSafe.
3012         * platform/graphics/gpu/Texture.cpp:
3013         (WebCore::Texture::create): Ditto.
3014         * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
3015         (WebCore::GraphicsContext3D::texImage2D): Generate an INVALID_VALUE if pixels==null is passed in.
3016
3017 2010-12-21  Chris Rogers  <crogers@google.com>
3018
3019         Reviewed by Kenneth Russell.
3020
3021         Add AudioBusChromium for decoding audio file data
3022         https://bugs.webkit.org/show_bug.cgi?id=51430
3023
3024         No new tests since audio API is not yet implemented.
3025
3026         * platform/audio/chromium: Added.
3027         * platform/audio/chromium/AudioBusChromium.cpp: Added.
3028         (WebCore::createBusFromInMemoryAudioFile):
3029
3030 2010-12-21  Chris Rogers  <crogers@google.com>
3031
3032         Reviewed by Kenneth Russell.
3033
3034         Add web audio spatialization resource files
3035         https://bugs.webkit.org/show_bug.cgi?id=50998
3036
3037         No new tests since audio API is not yet implemented.
3038
3039         * platform/audio/HRTFElevation.cpp:
3040         (WebCore::HRTFElevation::calculateKernelsForAzimuthElevation):
3041         * platform/audio/mac/AudioBusMac.mm:
3042         (WebCore::AudioBus::loadPlatformResource):
3043         * platform/audio/resources: Added.
3044         * platform/audio/resources/IRC_Composite_C_R0195_T000_P000.wav: Added.
3045         * platform/audio/resources/IRC_Composite_C_R0195_T000_P015.wav: Added.
3046         * platform/audio/resources/IRC_Composite_C_R0195_T000_P030.wav: Added.
3047         * platform/audio/resources/IRC_Composite_C_R0195_T000_P045.wav: Added.
3048         * platform/audio/resources/IRC_Composite_C_R0195_T000_P060.wav: Added.
3049         * platform/audio/resources/IRC_Composite_C_R0195_T000_P075.wav: Added.
3050         * platform/audio/resources/IRC_Composite_C_R0195_T000_P090.wav: Added.
3051         * platform/audio/resources/IRC_Composite_C_R0195_T000_P315.wav: Added.
3052         * platform/audio/resources/IRC_Composite_C_R0195_T000_P330.wav: Added.
3053         * platform/audio/resources/IRC_Composite_C_R0195_T000_P345.wav: Added.
3054         * platform/audio/resources/IRC_Composite_C_R0195_T015_P000.wav: Added.
3055         * platform/audio/resources/IRC_Composite_C_R0195_T015_P015.wav: Added.
3056         * platform/audio/resources/IRC_Composite_C_R0195_T015_P030.wav: Added.
3057         * platform/audio/resources/IRC_Composite_C_R0195_T015_P045.wav: Added.
3058         * platform/audio/resources/IRC_Composite_C_R0195_T015_P060.wav: Added.
3059         * platform/audio/resources/IRC_Composite_C_R0195_T015_P075.wav: Added.
3060         * platform/audio/resources/IRC_Composite_C_R0195_T015_P090.wav: Added.
3061         * platform/audio/resources/IRC_Composite_C_R0195_T015_P315.wav: Added.
3062         * platform/audio/resources/IRC_Composite_C_R0195_T015_P330.wav: Added.
3063         * platform/audio/resources/IRC_Composite_C_R0195_T015_P345.wav: Added.
3064         * platform/audio/resources/IRC_Composite_C_R0195_T030_P000.wav: Added.
3065         * platform/audio/resources/IRC_Composite_C_R0195_T030_P015.wav: Added.
3066         * platform/audio/resources/IRC_Composite_C_R0195_T030_P030.wav: Added.
3067         * platform/audio/resources/IRC_Composite_C_R0195_T030_P045.wav: Added.
3068         * platform/audio/resources/IRC_Composite_C_R0195_T030_P060.wav: Added.
3069         * platform/audio/resources/IRC_Composite_C_R0195_T030_P075.wav: Added.
3070         * platform/audio/resources/IRC_Composite_C_R0195_T030_P090.wav: Added.
3071         * platform/audio/resources/IRC_Composite_C_R0195_T030_P315.wav: Added.
3072         * platform/audio/resources/IRC_Composite_C_R0195_T030_P330.wav: Added.
3073         * platform/audio/resources/IRC_Composite_C_R0195_T030_P345.wav: Added.
3074         * platform/audio/resources/IRC_Composite_C_R0195_T045_P000.wav: Added.
3075         * platform/audio/resources/IRC_Composite_C_R0195_T045_P015.wav: Added.
3076         * platform/audio/resources/IRC_Composite_C_R0195_T045_P030.wav: Added.
3077         * platform/audio/resources/IRC_Composite_C_R0195_T045_P045.wav: Added.
3078         * platform/audio/resources/IRC_Composite_C_R0195_T045_P060.wav: Added.
3079         * platform/audio/resources/IRC_Composite_C_R0195_T045_P075.wav: Added.
3080         * platform/audio/resources/IRC_Composite_C_R0195_T045_P090.wav: Added.
3081         * platform/audio/resources/IRC_Composite_C_R0195_T045_P315.wav: Added.
3082         * platform/audio/resources/IRC_Composite_C_R0195_T045_P330.wav: Added.
3083         * platform/audio/resources/IRC_Composite_C_R0195_T045_P345.wav: Added.
3084         * platform/audio/resources/IRC_Composite_C_R0195_T060_P000.wav: Added.
3085         * platform/audio/resources/IRC_Composite_C_R0195_T060_P015.wav: Added.
3086         * platform/audio/resources/IRC_Composite_C_R0195_T060_P030.wav: Added.
3087         * platform/audio/resources/IRC_Composite_C_R0195_T060_P045.wav: Added.
3088         * platform/audio/resources/IRC_Composite_C_R0195_T060_P060.wav: Added.
3089         * platform/audio/resources/IRC_Composite_C_R0195_T060_P075.wav: Added.
3090         * platform/audio/resources/IRC_Composite_C_R0195_T060_P090.wav: Added.
3091         * platform/audio/resources/IRC_Composite_C_R0195_T060_P315.wav: Added.
3092         * platform/audio/resources/IRC_Composite_C_R0195_T060_P330.wav: Added.
3093         * platform/audio/resources/IRC_Composite_C_R0195_T060_P345.wav: Added.
3094         * platform/audio/resources/IRC_Composite_C_R0195_T075_P000.wav: Added.
3095         * platform/audio/resources/IRC_Composite_C_R0195_T075_P015.wav: Added.
3096         * platform/audio/resources/IRC_Composite_C_R0195_T075_P030.wav: Added.
3097         * platform/audio/resources/IRC_Composite_C_R0195_T075_P045.wav: Added.
3098         * platform/audio/resources/IRC_Composite_C_R0195_T075_P060.wav: Added.
3099         * platform/audio/resources/IRC_Composite_C_R0195_T075_P075.wav: Added.
3100         * platform/audio/resources/IRC_Composite_C_R0195_T075_P090.wav: Added.
3101         * platform/audio/resources/IRC_Composite_C_R0195_T075_P315.wav: Added.
3102         * platform/audio/resources/IRC_Composite_C_R0195_T075_P330.wav: Added.
3103         * platform/audio/resources/IRC_Composite_C_R0195_T075_P345.wav: Added.
3104         * platform/audio/resources/IRC_Composite_C_R0195_T090_P000.wav: Added.
3105         * platform/audio/resources/IRC_Composite_C_R0195_T090_P015.wav: Added.
3106         * platform/audio/resources/IRC_Composite_C_R0195_T090_P030.wav: Added.
3107         * platform/audio/resources/IRC_Composite_C_R0195_T090_P045.wav: Added.
3108         * platform/audio/resources/IRC_Composite_C_R0195_T090_P060.wav: Added.
3109         * platform/audio/resources/IRC_Composite_C_R0195_T090_P075.wav: Added.
3110         * platform/audio/resources/IRC_Composite_C_R0195_T090_P090.wav: Added.
3111         * platform/audio/resources/IRC_Composite_C_R0195_T090_P315.wav: Added.
3112         * platform/audio/resources/IRC_Composite_C_R0195_T090_P330.wav: Added.
3113         * platform/audio/resources/IRC_Composite_C_R0195_T090_P345.wav: Added.
3114         * platform/audio/resources/IRC_Composite_C_R0195_T105_P000.wav: Added.
3115         * platform/audio/resources/IRC_Composite_C_R0195_T105_P015.wav: Added.
3116         * platform/audio/resources/IRC_Composite_C_R0195_T105_P030.wav: Added.
3117         * platform/audio/resources/IRC_Composite_C_R0195_T105_P045.wav: Added.
3118         * platform/audio/resources/IRC_Composite_C_R0195_T105_P060.wav: Added.
3119         * platform/audio/resources/IRC_Composite_C_R0195_T105_P075.wav: Added.
3120         * platform/audio/resources/IRC_Composite_C_R0195_T105_P090.wav: Added.
3121         * platform/audio/resources/IRC_Composite_C_R0195_T105_P315.wav: Added.
3122         * platform/audio/resources/IRC_Composite_C_R0195_T105_P330.wav: Added.
3123         * platform/audio/resources/IRC_Composite_C_R0195_T105_P345.wav: Added.
3124         * platform/audio/resources/IRC_Composite_C_R0195_T120_P000.wav: Added.
3125         * platform/audio/resources/IRC_Composite_C_R0195_T120_P015.wav: Added.
3126         * platform/audio/resources/IRC_Composite_C_R0195_T120_P030.wav: Added.
3127         * platform/audio/resources/IRC_Composite_C_R0195_T120_P045.wav: Added.
3128         * platform/audio/resources/IRC_Composite_C_R0195_T120_P060.wav: Added.
3129         * platform/audio/resources/IRC_Composite_C_R0195_T120_P075.wav: Added.
3130         * platform/audio/resources/IRC_Composite_C_R0195_T120_P090.wav: Added.
3131         * platform/audio/resources/IRC_Composite_C_R0195_T120_P315.wav: Added.
3132         * platform/audio/resources/IRC_Composite_C_R0195_T120_P330.wav: Added.
3133         * platform/audio/resources/IRC_Composite_C_R0195_T120_P345.wav: Added.
3134         * platform/audio/resources/IRC_Composite_C_R0195_T135_P000.wav: Added.
3135         * platform/audio/resources/IRC_Composite_C_R0195_T135_P015.wav: Added.
3136         * platform/audio/resources/IRC_Composite_C_R0195_T135_P030.wav: Added.
3137         * platform/audio/resources/IRC_Composite_C_R0195_T135_P045.wav: Added.
3138         * platform/audio/resources/IRC_Composite_C_R0195_T135_P060.wav: Added.
3139         * platform/audio/resources/IRC_Composite_C_R0195_T135_P075.wav: Added.
3140         * platform/audio/resources/IRC_Composite_C_R0195_T135_P090.wav: Added.
3141         * platform/audio/resources/IRC_Composite_C_R0195_T135_P315.wav: Added.
3142         * platform/audio/resources/IRC_Composite_C_R0195_T135_P330.wav: Added.
3143         * platform/audio/resources/IRC_Composite_C_R0195_T135_P345.wav: Added.
3144         * platform/audio/resources/IRC_Composite_C_R0195_T150_P000.wav: Added.
3145         * platform/audio/resources/IRC_Composite_C_R0195_T150_P015.wav: Added.
3146         * platform/audio/resources/IRC_Composite_C_R0195_T150_P030.wav: Added.
3147         * platform/audio/resources/IRC_Composite_C_R0195_T150_P045.wav: Added.
3148         * platform/audio/resources/IRC_Composite_C_R0195_T150_P060.wav: Added.
3149         * platform/audio/resources/IRC_Composite_C_R0195_T150_P075.wav: Added.
3150         * platform/audio/resources/IRC_Composite_C_R0195_T150_P090.wav: Added.
3151         * platform/audio/resources/IRC_Composite_C_R0195_T150_P315.wav: Added.
3152         * platform/audio/resources/IRC_Composite_C_R0195_T150_P330.wav: Added.
3153         * platform/audio/resources/IRC_Composite_C_R0195_T150_P345.wav: Added.
3154         * platform/audio/resources/IRC_Composite_C_R0195_T165_P000.wav: Added.
3155         * platform/audio/resources/IRC_Composite_C_R0195_T165_P015.wav: Added.
3156         * platform/audio/resources/IRC_Composite_C_R0195_T165_P030.wav: Added.
3157         * platform/audio/resources/IRC_Composite_C_R0195_T165_P045.wav: Added.
3158         * platform/audio/resources/IRC_Composite_C_R0195_T165_P060.wav: Added.
3159         * platform/audio/resources/IRC_Composite_C_R0195_T165_P075.wav: Added.
3160         * platform/audio/resources/IRC_Composite_C_R0195_T165_P090.wav: Added.
3161         * platform/audio/resources/IRC_Composite_C_R0195_T165_P315.wav: Added.
3162         * platform/audio/resources/IRC_Composite_C_R0195_T165_P330.wav: Added.
3163         * platform/audio/resources/IRC_Composite_C_R0195_T165_P345.wav: Added.
3164         * platform/audio/resources/IRC_Composite_C_R0195_T180_P000.wav: Added.
3165         * platform/audio/resources/IRC_Composite_C_R0195_T180_P015.wav: Added.
3166         * platform/audio/resources/IRC_Composite_C_R0195_T180_P030.wav: Added.
3167         * platform/audio/resources/IRC_Composite_C_R0195_T180_P045.wav: Added.
3168         * platform/audio/resources/IRC_Composite_C_R0195_T180_P060.wav: Added.
3169         * platform/audio/resources/IRC_Composite_C_R0195_T180_P075.wav: Added.
3170         * platform/audio/resources/IRC_Composite_C_R0195_T180_P090.wav: Added.
3171         * platform/audio/resources/IRC_Composite_C_R0195_T180_P315.wav: Added.
3172         * platform/audio/resources/IRC_Composite_C_R0195_T180_P330.wav: Added.
3173         * platform/audio/resources/IRC_Composite_C_R0195_T180_P345.wav: Added.
3174         * platform/audio/resources/IRC_Composite_C_R0195_T195_P000.wav: Added.
3175         * platform/audio/resources/IRC_Composite_C_R0195_T195_P015.wav: Added.
3176         * platform/audio/resources/IRC_Composite_C_R0195_T195_P030.wav: Added.
3177         * platform/audio/resources/IRC_Composite_C_R0195_T195_P045.wav: Added.
3178         * platform/audio/resources/IRC_Composite_C_R0195_T195_P060.wav: Added.
3179         * platform/audio/resources/IRC_Composite_C_R0195_T195_P075.wav: Added.
3180         * platform/audio/resources/IRC_Composite_C_R0195_T195_P090.wav: Added.
3181         * platform/audio/resources/IRC_Composite_C_R0195_T195_P315.wav: Added.
3182         * platform/audio/resources/IRC_Composite_C_R0195_T195_P330.wav: Added.
3183         * platform/audio/resources/IRC_Composite_C_R0195_T195_P345.wav: Added.
3184         * platform/audio/resources/IRC_Composite_C_R0195_T210_P000.wav: Added.
3185         * platform/audio/resources/IRC_Composite_C_R0195_T210_P015.wav: Added.
3186         * platform/audio/resources/IRC_Composite_C_R0195_T210_P030.wav: Added.
3187         * platform/audio/resources/IRC_Composite_C_R0195_T210_P045.wav: Added.
3188         * platform/audio/resources/IRC_Composite_C_R0195_T210_P060.wav: Added.
3189         * platform/audio/resources/IRC_Composite_C_R0195_T210_P075.wav: Added.
3190         * platform/audio/resources/IRC_Composite_C_R0195_T210_P090.wav: Added.
3191         * platform/audio/resources/IRC_Composite_C_R0195_T210_P315.wav: Added.
3192         * platform/audio/resources/IRC_Composite_C_R0195_T210_P330.wav: Added.
3193         * platform/audio/resources/IRC_Composite_C_R0195_T210_P345.wav: Added.
3194         * platform/audio/resources/IRC_Composite_C_R0195_T225_P000.wav: Added.
3195         * platform/audio/resources/IRC_Composite_C_R0195_T225_P015.wav: Added.
3196         * platform/audio/resources/IRC_Composite_C_R0195_T225_P030.wav: Added.
3197         * platform/audio/resources/IRC_Composite_C_R0195_T225_P045.wav: Added.
3198         * platform/audio/resources/IRC_Composite_C_R0195_T225_P060.wav: Added.
3199         * platform/audio/resources/IRC_Composite_C_R0195_T225_P075.wav: Added.
3200         * platform/audio/resources/IRC_Composite_C_R0195_T225_P090.wav: Added.
3201         * platform/audio/resources/IRC_Composite_C_R0195_T225_P315.wav: Added.
3202         * platform/audio/resources/IRC_Composite_C_R0195_T225_P330.wav: Added.
3203         * platform/audio/resources/IRC_Composite_C_R0195_T225_P345.wav: Added.
3204         * platform/audio/resources/IRC_Composite_C_R0195_T240_P000.wav: Added.
3205         * platform/audio/resources/IRC_Composite_C_R0195_T240_P015.wav: Added.
3206         * platform/audio/resources/IRC_Composite_C_R0195_T240_P030.wav: Added.
3207         * platform/audio/resources/IRC_Composite_C_R0195_T240_P045.wav: Added.
3208         * platform/audio/resources/IRC_Composite_C_R0195_T240_P060.wav: Added.
3209         * platform/audio/resources/IRC_Composite_C_R0195_T240_P075.wav: Added.
3210         * platform/audio/resources/IRC_Composite_C_R0195_T240_P090.wav: Added.
3211         * platform/audio/resources/IRC_Composite_C_R0195_T240_P315.wav: Added.
3212         * platform/audio/resources/IRC_Composite_C_R0195_T240_P330.wav: Added.
3213         * platform/audio/resources/IRC_Composite_C_R0195_T240_P345.wav: Added.
3214         * platform/audio/resources/IRC_Composite_C_R0195_T255_P000.wav: Added.
3215         * platform/audio/resources/IRC_Composite_C_R0195_T255_P015.wav: Added.
3216         * platform/audio/resources/IRC_Composite_C_R0195_T255_P030.wav: Added.
3217         * platform/audio/resources/IRC_Composite_C_R0195_T255_P045.wav: Added.
3218         * platform/audio/resources/IRC_Composite_C_R0195_T255_P060.wav: Added.
3219         * platform/audio/resources/IRC_Composite_C_R0195_T255_P075.wav: Added.
3220         * platform/audio/resources/IRC_Composite_C_R0195_T255_P090.wav: Added.
3221         * platform/audio/resources/IRC_Composite_C_R0195_T255_P315.wav: Added.
3222         * platform/audio/resources/IRC_Composite_C_R0195_T255_P330.wav: Added.
3223         * platform/audio/resources/IRC_Composite_C_R0195_T255_P345.wav: Added.
3224         * platform/audio/resources/IRC_Composite_C_R0195_T270_P000.wav: Added.
3225         * platform/audio/resources/IRC_Composite_C_R0195_T270_P015.wav: Added.
3226         * platform/audio/resources/IRC_Composite_C_R0195_T270_P030.wav: Added.
3227         * platform/audio/resources/IRC_Composite_C_R0195_T270_P045.wav: Added.
3228         * platform/audio/resources/IRC_Composite_C_R0195_T270_P060.wav: Added.
3229         * platform/audio/resources/IRC_Composite_C_R0195_T270_P075.wav: Added.
3230         * platform/audio/resources/IRC_Composite_C_R0195_T270_P090.wav: Added.
3231         * platform/audio/resources/IRC_Composite_C_R0195_T270_P315.wav: Added.
3232         * platform/audio/resources/IRC_Composite_C_R0195_T270_P330.wav: Added.
3233         * platform/audio/resources/IRC_Composite_C_R0195_T270_P345.wav: Added.
3234         * platform/audio/resources/IRC_Composite_C_R0195_T285_P000.wav: Added.
3235         * platform/audio/resources/IRC_Composite_C_R0195_T285_P015.wav: Added.
3236         * platform/audio/resources/IRC_Composite_C_R0195_T285_P030.wav: Added.
3237         * platform/audio/resources/IRC_Composite_C_R0195_T285_P045.wav: Added.
3238         * platform/audio/resources/IRC_Composite_C_R0195_T285_P060.wav: Added.
3239         * platform/audio/resources/IRC_Composite_C_R0195_T285_P075.wav: Added.
3240         * platform/audio/resources/IRC_Composite_C_R0195_T285_P090.wav: Added.
3241         * platform/audio/resources/IRC_Composite_C_R0195_T285_P315.wav: Added.
3242         * platform/audio/resources/IRC_Composite_C_R0195_T285_P330.wav: Added.
3243         * platform/audio/resources/IRC_Composite_C_R0195_T285_P345.wav: Added.
3244         * platform/audio/resources/IRC_Composite_C_R0195_T300_P000.wav: Added.
3245         * platform/audio/resources/IRC_Composite_C_R0195_T300_P015.wav: Added.
3246         * platform/audio/resources/IRC_Composite_C_R0195_T300_P030.wav: Added.
3247         * platform/audio/resources/IRC_Composite_C_R0195_T300_P045.wav: Added.
3248         * platform/audio/resources/IRC_Composite_C_R0195_T300_P060.wav: Added.
3249         * platform/audio/resources/IRC_Composite_C_R0195_T300_P075.wav: Added.
3250         * platform/audio/resources/IRC_Composite_C_R0195_T300_P090.wav: Added.
3251         * platform/audio/resources/IRC_Composite_C_R0195_T300_P315.wav: Added.
3252         * platform/audio/resources/IRC_Composite_C_R0195_T300_P330.wav: Added.
3253         * platform/audio/resources/IRC_Composite_C_R0195_T300_P345.wav: Added.
3254         * platform/audio/resources/IRC_Composite_C_R0195_T315_P000.wav: Added.
3255         * platform/audio/resources/IRC_Composite_C_R0195_T315_P015.wav: Added.
3256         * platform/audio/resources/IRC_Composite_C_R0195_T315_P030.wav: Added.
3257         * platform/audio/resources/IRC_Composite_C_R0195_T315_P045.wav: Added.
3258         * platform/audio/resources/IRC_Composite_C_R0195_T315_P060.wav: Added.
3259         * platform/audio/resources/IRC_Composite_C_R0195_T315_P075.wav: Added.
3260         * platform/audio/resources/IRC_Composite_C_R0195_T315_P090.wav: Added.
3261         * platform/audio/resources/IRC_Composite_C_R0195_T315_P315.wav: Added.
3262         * platform/audio/resources/IRC_Composite_C_R0195_T315_P330.wav: Added.
3263         * platform/audio/resources/IRC_Composite_C_R0195_T315_P345.wav: Added.
3264         * platform/audio/resources/IRC_Composite_C_R0195_T330_P000.wav: Added.
3265         * platform/audio/resources/IRC_Composite_C_R0195_T330_P015.wav: Added.
3266         * platform/audio/resources/IRC_Composite_C_R0195_T330_P030.wav: Added.
3267         * platform/audio/resources/IRC_Composite_C_R0195_T330_P045.wav: Added.
3268         * platform/audio/resources/IRC_Composite_C_R0195_T330_P060.wav: Added.
3269         * platform/audio/resources/IRC_Composite_C_R0195_T330_P075.wav: Added.
3270         * platform/audio/resources/IRC_Composite_C_R0195_T330_P090.wav: Added.
3271         * platform/audio/resources/IRC_Composite_C_R0195_T330_P315.wav: Added.
3272         * platform/audio/resources/IRC_Composite_C_R0195_T330_P330.wav: Added.
3273         * platform/audio/resources/IRC_Composite_C_R0195_T330_P345.wav: Added.
3274         * platform/audio/resources/IRC_Composite_C_R0195_T345_P000.wav: Added.
3275         * platform/audio/resources/IRC_Composite_C_R0195_T345_P015.wav: Added.
3276         * platform/audio/resources/IRC_Composite_C_R0195_T345_P030.wav: Added.
3277         * platform/audio/resources/IRC_Composite_C_R0195_T345_P045.wav: Added.
3278         * platform/audio/resources/IRC_Composite_C_R0195_T345_P060.wav: Added.
3279         * platform/audio/resources/IRC_Composite_C_R0195_T345_P075.wav: Added.
3280         * platform/audio/resources/IRC_Composite_C_R0195_T345_P090.wav: Added.
3281         * platform/audio/resources/IRC_Composite_C_R0195_T345_P315.wav: Added.
3282         * platform/audio/resources/IRC_Composite_C_R0195_T345_P330.wav: Added.
3283         * platform/audio/resources/IRC_Composite_C_R0195_T345_P345.wav: Added.
3284
3285 2010-12-21  Geoffrey Garen  <ggaren@apple.com>
3286
3287         Reviewed by Gavin Barraclough & Oliver Hunt.
3288
3289         Added PageAllocationAligned, a cross-platform abstraction for memory allocations with arbitrary alignment requirements
3290         https://bugs.webkit.org/show_bug.cgi?id=51359
3291
3292         * ForwardingHeaders/wtf/PageAllocationAligned.h: Added.
3293
3294 2010-12-21  Ariya Hidayat  <ariya@sencha.com>
3295
3296         Reviewed by Simon Fraser.
3297
3298         https://bugs.webkit.org/show_bug.cgi?id=49774
3299         Need to scale translation values in matrix() by the zoom factor.
3300
3301         Test: fast/transforms/matrix-with-zoom.html
3302
3303         * css/CSSStyleSelector.cpp:
3304         (WebCore::CSSStyleSelector::createTransformOperations):
3305
3306 2010-12-21  Jian Li  <jianli@chromium.org>
3307
3308         Reviewed by Darin Adler.
3309
3310         Fix bug 51366: REGRESSION (r66452): Form data no longer contains
3311         'Content-Type' header for files with unrecognized extensions
3312         https://bugs.webkit.org/show_bug.cgi?id=51366
3313
3314         Test: http/tests/local/formdata/form-data-with-unknown-file-extension.html
3315
3316         * platform/network/FormData.cpp:
3317         (WebCore::FormData::appendKeyValuePairItems):
3318
3319 2010-12-21  Darin Adler  <darin@apple.com>
3320
3321         Reviewed by Sam Weinig.
3322
3323         Mac WebKit delivers an extra didCommit when loading web archives
3324         https://bugs.webkit.org/show_bug.cgi?id=51419
3325
3326         Could not find a simple way to test this in WebKit1, but in WebKit2
3327         it leads to an immediate failure when loading a web archive. Tested
3328         that making the Mac share the same code path with other platforms
3329         works fine in WebKit1.
3330
3331         * loader/FrameLoader.cpp:
3332         (WebCore::FrameLoader::finishedLoadingDocument): Removed special case for
3333         the Mac platform. Also removed the call to isArchiveMimeType since we
3334         get a 0 from ArchiveFactory::create in that case.
3335
3336         * loader/archive/ArchiveFactory.cpp:
3337         (WebCore::ArchiveFactory::isArchiveMimeType): Hardened slightly by
3338         adding a special case for null and empty strings, since hash tables can't
3339         handle null strings.
3340         (WebCore::ArchiveFactory::create): Ditto.
3341
3342 2010-12-21  Yong Li  <yoli@rim.com>
3343
3344         Reviewed by Adam Barth.
3345
3346         Suspend HTMLParserScheduler when page load is deferred to
3347         avoid potential JS re-entrancy. Otherwise, when JS execution is triggered
3348         from an external script or by events, and is blocked by a modal dialog,
3349         WebKit can parse more HTML source and also start another JS execution.
3350         
3351         https://bugs.webkit.org/show_bug.cgi?id=48077
3352
3353         Test case: WebCore/manual-tests/bugzilla-48077.html.
3354
3355         * dom/DocumentParser.cpp:
3356         (WebCore::DocumentParser::suspendParsing):
3357         (WebCore::DocumentParser::resumeParsing):
3358         * dom/DocumentParser.h:
3359         * html/parser/HTMLDocumentParser.cpp:
3360         (WebCore::HTMLDocumentParser::suspendParsing):
3361         (WebCore::HTMLDocumentParser::resumeParsing):
3362         * html/parser/HTMLParserScheduler.cpp:
3363         (WebCore::HTMLParserScheduler::HTMLParserScheduler):
3364         (WebCore::HTMLParserScheduler::suspend):
3365         (WebCore::HTMLParserScheduler::resume):
3366         * html/parser/HTMLParserScheduler.h:
3367         (WebCore::HTMLParserScheduler::isScheduledForResume):
3368         * page/PageGroupLoadDeferrer.cpp:
3369         (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
3370         (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer):
3371
3372 2010-12-21  Anders Carlsson  <andersca@apple.com>
3373
3374         Reviewed by John Sullivan.
3375
3376         Clicking missing plug-in text does not show a sheet
3377         https://bugs.webkit.org/show_bug.cgi?id=51403
3378
3379         * WebCore.exp.in:
3380         Export symbols needed by WebKit2.
3381
3382         * WebCore.xcodeproj/project.pbxproj:
3383         Make HTMLPlugInImageElement.h a private header.
3384
3385         * html/HTMLPlugInImageElement.h:
3386         (WebCore::HTMLPlugInImageElement::serviceType):
3387         (WebCore::HTMLPlugInImageElement::url):
3388         Make these member functions public.
3389
3390 2010-12-21  Andras Becsi  <abecsi@webkit.org>
3391
3392         Unreviewed build fix.
3393
3394         [Qt] Fix the build with USE_GSTREAMER=1
3395
3396         No new tests needed.
3397
3398         * WebCore.pro: remove nonexisting DataSourceGStreamer sources.
3399
3400 2010-12-21  Mahesh Kulkarni  <mahesh.kulkarni@nokia.com>
3401
3402         Reviewed by Andreas Kling.
3403
3404         [Qt] QtWebKit doesn't build in debug on Windows
3405         https://bugs.webkit.org/show_bug.cgi?id=41930
3406
3407         Disable incremental linking in windows 32bit debug version as webkit is so 
3408         big it fails to link incremental. 
3409
3410         Build fix. No new test cases added. 
3411
3412         * WebCore.pro:
3413
3414 2010-12-21  Dominic Cooney  <dominicc@google.com>
3415
3416         Reviewed by Adam Barth.
3417
3418         Rename Node::isShadowNode to isShadowRoot
3419         https://bugs.webkit.org/show_bug.cgi?id=51060
3420
3421         The method gets whether the node is the root of a shadow tree;
3422         renamed to reflect intent.
3423
3424         A simple rename--no new tests needed.
3425
3426         * css/CSSStyleSelector.cpp:
3427         (WebCore::CSSStyleSelector::initForStyleResolve):
3428         (WebCore::CSSStyleSelector::SelectorChecker::checkSelector):
3429         * dom/Node.cpp:
3430         (WebCore::Node::shadowTreeRootNode):
3431         (WebCore::Node::isInShadowTree):
3432         (WebCore::eventTargetRespectingSVGTargetRules):
3433         (WebCore::Node::getEventAncestors):
3434         * dom/Node.h:
3435         (WebCore::Node::isShadowRoot):
3436         * dom/Range.cpp:
3437         (WebCore::Range::checkNodeBA):
3438         * page/DragController.cpp:
3439         (WebCore::asFileInput):
3440         * page/EventHandler.cpp:
3441         (WebCore::EventHandler::handleMousePressEvent):
3442         (WebCore::EventHandler::dispatchMouseEvent):
3443         * rendering/RenderBlock.cpp:
3444         (WebCore::RenderBlock::hasLineIfEmpty):
3445         * rendering/TextControlInnerElements.cpp:
3446         (WebCore::TextControlInnerElement::attachInnerElement):
3447         * svg/SVGStyledElement.cpp:
3448         (WebCore::SVGStyledElement::title):
3449         * svg/SVGUseElement.cpp:
3450         (WebCore::ShadowTreeUpdateBlocker::while):
3451         * svg/animation/SVGSMILElement.cpp:
3452         (WebCore::SVGSMILElement::insertedIntoDocument):
3453
3454 2010-12-20  Mahesh Kulkarni  <mahesh.kulkarni@nokia.com>
3455
3456         Reviewed by Andreas Kling.
3457
3458         Qt port of geolocation, geoposition objects timestamp was in seconds
3459         instead of miliseconds as per HTML5 Geolocation standards.
3460         Ref: http://dev.w3.org/geo/api/spec-source.html#position_interface 
3461         http://www.w3.org/TR/DOM-Level-3-Core/core.html#Core-DOMTimeStamp 
3462
3463         Implemented by Asheesh Srivastava.
3464
3465         [QT] QtWebkit geolocation's position.timestamp is not in miliseconds
3466         https://bugs.webkit.org/show_bug.cgi?id=51100
3467
3468         Porting code not covered in layout testing. No new tests added.
3469
3470         * platform/qt/GeolocationServiceQt.cpp:
3471         (WebCore::GeolocationServiceQt::positionUpdated):
3472
3473 2010-12-20  Yuzo Fujishima  <yuzo@google.com>
3474
3475         Reviewed by Eric Seidel.
3476
3477         Fix for Bug 26183 - [@font-face] font-family descriptor with multiple names should be discarded
3478         https://bugs.webkit.org/show_bug.cgi?id=26183
3479
3480         Test: fast/css/font-face-font-family-descriptor.html
3481
3482         * css/CSSParser.cpp:
3483         (WebCore::CSSParser::createFontFaceRule): Consider @font-face rule
3484         invalid if its font-family descriptor has multiple (or zero) families.
3485
3486 2010-12-20  Pavel Feldman  <pfeldman@chromium.org>
3487
3488         Reviewed by Yury Semikhatsky.
3489
3490         Web Inspector: fall back to object formatting in case dom is not yet loaded.
3491         https://bugs.webkit.org/show_bug.cgi?id=44273
3492
3493         Sometimes DOM is loaded after the inline message is being formatted, so we get
3494         no nodeId for it. Let us fall back to object formatting in such cases.
3495
3496         * inspector/front-end/ConsoleView.js:
3497         (WebInspector.ConsoleView.prototype._formatnode):
3498         (WebInspector.ConsoleMessage):
3499
3500 2010-12-20  Pavel Feldman  <pfeldman@chromium.org>
3501
3502         Reviewed by Joseph Pecoraro.
3503
3504         Web Inspector: cycle through tag name / attributes / new attribute on Tab.
3505
3506         https://bugs.webkit.org/show_bug.cgi?id=38429
3507
3508         * inspector/front-end/ElementsTreeOutline.js:
3509         (WebInspector.ElementsTreeElement.prototype._tagNameEditingCommitted.moveToNextAttributeIfNeeded):
3510
3511 2010-12-20  Yuta Kitamura  <yutak@chromium.org>
3512
3513         Reviewed by Alexey Proskuryakov.
3514
3515         WebSocket errors should be logged to console
3516         https://bugs.webkit.org/show_bug.cgi?id=40945
3517
3518         Test: http/tests/inspector/console-websocket-error.html
3519
3520         * platform/network/SocketStreamErrorBase.cpp:
3521         (WebCore::SocketStreamErrorBase::compare):
3522         * platform/network/SocketStreamErrorBase.h:
3523         (WebCore::SocketStreamErrorBase::failingURL):
3524         (WebCore::SocketStreamErrorBase::localizedDescription):
3525         (WebCore::SocketStreamErrorBase::SocketStreamErrorBase):
3526         * platform/network/cf/SocketStreamError.h:
3527         (WebCore::SocketStreamError::SocketStreamError):
3528         * platform/network/cf/SocketStreamHandle.h:
3529         * platform/network/cf/SocketStreamHandleCFNet.cpp:
3530         (WebCore::SocketStreamHandle::readStreamCallback):
3531         (WebCore::SocketStreamHandle::writeStreamCallback):
3532         (WebCore::SocketStreamHandle::reportErrorToClient):
3533         * websockets/WebSocketChannel.cpp:
3534         (WebCore::WebSocketChannel::didFail):
3535
3536 2010-12-17  MORITA Hajime  <morrita@google.com>
3537
3538         Reviewed by James Robinson.
3539
3540         https://bugs.webkit.org/show_bug.cgi?id=51240
3541         [Chromium][Skia] Border with a color with alpha != 1 breaks webkit gradient on skia.
3542
3543         Even after a shader was set, old color value had been remaining and passed to Skia.
3544         Then Skia refered an alpha component of that color to make pixels transparent.
3545         This change invalidates existing color value when a shader is given, 
3546         which means the renderer will paint shapes with gradients or patterns.
3547