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