0d6c3813c2935417c055ecdfa7e358d4d27abea8
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2011-04-06  Levi Weintraub  <leviw@chromium.org>
2
3         Reviewed by Ryosuke Niwa.
4
5         Add member functions for determining line/paragraph separation to InlineIterator
6         https://bugs.webkit.org/show_bug.cgi?id=57938
7
8         Adding atTextParagraphSeparator and atParagraphSeparator inline convenience functions to
9         InlineIterator, where it makes far more sense for them to be. Also moving
10         shouldPreserveNewline to RenderObject and renaming it preservesNewline.
11
12         No new tests as this provides no new functionality.
13
14         * rendering/InlineIterator.h:
15         (WebCore::InlineIterator::atTextParagraphSeparator):
16         (WebCore::InlineIterator::atParagraphSeparator):
17         * rendering/RenderBlockLineLayout.cpp:
18         (WebCore::RenderBlock::requiresLineBox):
19         (WebCore::RenderBlock::findNextLineBreak):
20         * rendering/RenderObject.h:
21         (WebCore::RenderObject::preservesNewline):
22
23 2011-04-05  Alexander Pavlov  <apavlov@chromium.org>
24
25         Reviewed by Pavel Feldman.
26
27         Web Inspector: Range insertNode function does not update content in the inspector
28         https://bugs.webkit.org/show_bug.cgi?id=57829
29
30         * inspector/InspectorDOMAgent.cpp:
31         (WebCore::InspectorDOMAgent::pushChildNodesToFrontend):
32         (WebCore::InspectorDOMAgent::buildArrayForContainerChildren):
33
34 2011-04-06  Alejandro G. Castro  <alex@igalia.com>
35
36         Fix GTK3 compilation after r82962.
37
38         * platform/gtk/RenderThemeGtk3.cpp:
39         (WebCore::paintToggle):
40         (WebCore::renderButton):
41         (WebCore::RenderThemeGtk::paintMenuList):
42         (WebCore::RenderThemeGtk::paintTextField):
43         (WebCore::RenderThemeGtk::paintSliderTrack):
44         (WebCore::RenderThemeGtk::paintSliderThumb):
45         (WebCore::RenderThemeGtk::paintProgressBar):
46         (WebCore::paintSpinArrowButton):
47         * platform/gtk/ScrollbarThemeGtk3.cpp:
48         (WebCore::ScrollbarThemeGtk::paintTrackBackground):
49         (WebCore::ScrollbarThemeGtk::paintScrollbarBackground):
50         (WebCore::ScrollbarThemeGtk::paintThumb):
51         (WebCore::ScrollbarThemeGtk::paintButton):
52
53 2011-04-06  Andrey Kosyakov  <caseq@chromium.org>
54
55         Reviewed by Yury Semikhatsky.
56
57         Web Inspector: [Extensions API] remove inspectedPage.* events
58         https://bugs.webkit.org/show_bug.cgi?id=57763
59
60         - Removed webInspector.inspectedPage.* events
61         - moved onNavigated to webInspector.resources
62
63         * inspector/front-end/ExtensionAPI.js:
64         (WebInspector.injectedExtensionAPI):
65         (WebInspector.injectedExtensionAPI.InspectedWindow):
66         * inspector/front-end/ExtensionAPISchema.json:
67         * inspector/front-end/ExtensionServer.js:
68         (WebInspector.ExtensionServer.prototype.notifyInspectedURLChanged):
69         * inspector/front-end/inspector.js:
70         (WebInspector.domContentEventFired):
71         (WebInspector.loadEventFired):
72         (WebInspector.inspectedURLChanged):
73
74 2011-04-06  Joseph Pecoraro  <joepeck@webkit.org>
75
76         Reviewed by Antti Koivisto.
77
78         Add <head> to the simpleUserAgentStyleSheet
79         https://bugs.webkit.org/show_bug.cgi?id=57915
80
81         * css/CSSStyleSelector.cpp:
82         (WebCore::elementCanUseSimpleDefaultStyle): add head to the
83         simple stylesheet, display:none.
84
85 2011-04-05  Mikhail Naganov  <mnaganov@chromium.org>
86
87         Reviewed by Pavel Feldman.
88
89         Web Inspector: [Chromium] Add layout test for Summary view of detailed heap snapshots.
90         https://bugs.webkit.org/show_bug.cgi?id=57856
91
92         Test: inspector/profiler/detailed-heapshots-summary.html
93
94         * inspector/front-end/DataGrid.js:
95         (WebInspector.DataGrid):
96         * inspector/front-end/DetailedHeapshotGridNodes.js:
97         (WebInspector.HeapSnapshotGridNode.prototype._populate.doPopulate):
98         (WebInspector.HeapSnapshotGridNode.prototype._populate):
99         (WebInspector.HeapSnapshotGridNode.prototype.populateChildren):
100         (WebInspector.HeapSnapshotGridNode.prototype.sort.doSort):
101         (WebInspector.HeapSnapshotGridNode.prototype.sort):
102         (WebInspector.HeapSnapshotDiffNode.prototype.populateChildren):
103         * inspector/front-end/DetailedHeapshotView.js:
104         (WebInspector.HeapSnapshotSortableDataGrid.prototype.sortingChanged):
105         * inspector/front-end/ProfilesPanel.js:
106         (WebInspector.ProfilesPanel.prototype._finishHeapSnapshot.doParse):
107         (WebInspector.ProfilesPanel.prototype._finishHeapSnapshot):
108
109 2011-04-06  Anders Bakken  <agbakken@gmail.com>
110
111         Reviewed by David Levin.
112
113         [Qt] SmartReplaceQt.cpp has coding-style errors
114         https://bugs.webkit.org/show_bug.cgi?id=40261
115
116         This patch does not require new test cases.
117
118         * editing/qt/SmartReplaceQt.cpp:
119         (WebCore::isCharacterSmartReplaceExempt):
120
121 2011-04-06  Naoki Takano  <takano.naoki@gmail.com>
122
123         Reviewed by Ryosuke Niwa.
124
125         REGRESSION(r81328): Null pointer crash in canAppendNewLineFeed when selection isn't inside an editable element
126         https://bugs.webkit.org/show_bug.cgi?id=57755
127
128         Test: editing/execCommand/insert-line-break-onload.html
129
130         * editing/TypingCommand.cpp:
131         (WebCore::canAppendNewLineFeed): Added null pointer check for rootEditableElement().
132
133 2011-04-05  Antti Koivisto  <antti@apple.com>
134
135         Reviewed by Cameron Zwarich.
136
137         Avoid calling currentTime() from FrameView::adjustedDeferredRepaintDelay() when repaints are deferred
138         https://bugs.webkit.org/show_bug.cgi?id=57914
139
140         Don't call adjustedDeferredRepaintDelay unnecessarily.
141
142         * page/FrameView.cpp:
143         (WebCore::FrameView::repaintContentRectangle):
144         (WebCore::FrameView::adjustedDeferredRepaintDelay):
145
146 2011-04-05  Steve VanDeBogart  <vandebo@chromium.org>
147
148         Reviewed by David Levin.
149
150         Update call to SkAdvancedTypefaceMetrics to new API.
151         https://bugs.webkit.org/show_bug.cgi?id=57887
152
153         * platform/graphics/chromium/FontPlatformDataLinux.cpp:
154         (WebCore::FontPlatformData::emSizeInFontUnits):
155
156 2011-04-05  Alexey Proskuryakov  <ap@apple.com>
157
158         Reviewed by Darin Adler.
159
160         Rename event dispatching functions after form event removal
161         https://bugs.webkit.org/show_bug.cgi?id=57908
162
163         * dom/InputElement.cpp:
164         (WebCore::InputElement::setValueFromRenderer):
165         * dom/Node.cpp:
166         (WebCore::Node::dispatchChangeEvent):
167         (WebCore::Node::dispatchInputEvent):
168         (WebCore::Node::defaultEventHandler):
169         * dom/Node.h:
170         * html/HTMLFormControlElement.cpp:
171         (WebCore::HTMLFormControlElement::dispatchFormControlChangeEvent):
172         (WebCore::HTMLFormControlElement::dispatchFormControlInputEvent):
173         (WebCore::HTMLTextFormControlElement::dispatchFormControlChangeEvent):
174         Renamed "events" to "event", since there is only one event to dispatch now.
175
176 2011-04-05  Anders Bakken  <agbakken@gmail.com>
177
178         Reviewed by David Levin.
179
180         [Qt] DragControllerQt.cpp has coding-style errors
181         https://bugs.webkit.org/show_bug.cgi?id=40258
182
183         This patch does not require new test cases.
184
185         * page/qt/DragControllerQt.cpp:
186         (WebCore::DragController::dragOperation):
187
188 2011-04-05  Steve VanDeBogart  <vandebo@chromium.org>
189
190         Reviewed by David Levin.
191
192         Update deprecated include: platform_canvas_win.h to platform_canvas.h.
193         https://bugs.webkit.org/show_bug.cgi?id=57896
194
195         * platform/graphics/chromium/FontChromiumWin.cpp:
196
197 2011-04-05  Darin Adler  <darin@apple.com>
198
199         Try to fix Leopard bots.
200
201         * platform/mac/HTMLConverter.mm: Fix #if back the way Alexey seems
202         to have intended it.
203
204 2011-04-05  Darin Adler  <darin@apple.com>
205
206         Try to fix Leopard bots.
207
208         * platform/mac/HTMLConverter.mm: Move declarations of new functions
209         inside the appropriate #if.
210
211 2011-04-05  Adrienne Walker  <enne@google.com>
212
213         Reviewed by Tony Chang.
214
215         Correctly set color when using skia's fillRoundedRect.
216         https://bugs.webkit.org/show_bug.cgi?id=57907
217
218         * platform/graphics/skia/GraphicsContextSkia.cpp:
219         (WebCore::GraphicsContext::fillRoundedRect):
220
221 2011-04-05  Alexey Proskuryakov  <ap@apple.com>
222
223         Reviewed by Darin Adler.
224
225         Move attributedStringFromRange down to WebCore
226         https://bugs.webkit.org/show_bug.cgi?id=57905
227
228         No change in behavior, so no new tests.
229
230         Also tweaked HTMLConverter to not use methods defined in WebKit.
231
232         * WebCore.exp.in:
233         * WebCore.xcodeproj/project.pbxproj:
234         * platform/mac/HTMLConverter.h:
235         * platform/mac/HTMLConverter.mm:
236         (-[WebHTMLConverter _newTabForElement:]):
237         (-[WebHTMLConverter _addAttachmentForElement:URL:needsParagraph:usePlaceholder:]):
238         (+[WebHTMLConverter editingAttributedStringFromRange:]):
239         (fileWrapperForURL):
240         (fileWrapperForElement):
241         * platform/mac/PasteboardMac.mm:
242         (WebCore::Pasteboard::writeSelection):
243         * platform/mac/WebNSAttributedStringExtras.h: Copied from Source/WebKit/mac/Misc/WebNSAttributedStringExtras.h.
244         * platform/mac/WebNSAttributedStringExtras.mm: Copied from Source/WebKit/mac/Misc/WebNSAttributedStringExtras.mm.
245         (WebCore::attributedStringByStrippingAttachmentCharacters):
246
247 2011-04-05  Simon Fraser  <simon.fraser@apple.com>
248
249         Reviewed by Darin Adler.
250
251         Rename variables in border drawing code for readability
252         https://bugs.webkit.org/show_bug.cgi?id=57894
253
254         * rendering/RenderObject.cpp:
255         (WebCore::RenderObject::drawLineForBoxSide):
256         (WebCore::RenderObject::drawBoxSideFromPath):
257         (WebCore::RenderObject::drawArcForBoxSide):
258
259 2011-04-05  Antti Koivisto  <antti@apple.com>
260
261         Reviewed by Darin Adler.
262
263         Defer repaints during style recalc
264         https://bugs.webkit.org/show_bug.cgi?id=57886
265
266         This reduces the need to do (often expensive) platform surface invalidation.
267         We already do this during layout but style recalculation may trigger
268         invalidation as well.
269     
270         * dom/Document.cpp:
271         (WebCore::Document::recalcStyle):
272
273 2011-04-05  Jer Noble  <jer.noble@apple.com>
274
275         Reviewed by Darin Adler.
276
277         HTML5 Player Has no Fullscreen Mode
278         https://bugs.webkit.org/show_bug.cgi?id=57795
279
280         * html/HTMLVideoElement.cpp:
281         (WebCore::HTMLVideoElement::supportsFullscreen): Call the new ChromeClient API
282             supportsFullScreenForElement() before the old supportsFullScreenForNode() API.
283
284 2011-04-05  Vsevolod Vlasov  <vsevik@chromium.org>
285
286         Reviewed by Pavel Feldman.
287
288         Web Inspector: fix data url's status and timing the network panel.
289         https://bugs.webkit.org/show_bug.cgi?id=53066
290
291         Added data url support for status of network resources.
292
293         * English.lproj/localizedStrings.js:
294         * inspector/front-end/NetworkPanel.js:
295         (WebInspector.NetworkDataGridNode.prototype._refreshStatusCell):
296         * inspector/front-end/Resource.js:
297         (WebInspector.Resource.prototype.isDataURL):
298
299 2011-04-04  Vitaly Repeshko  <vitalyr@chromium.org>
300
301         Reviewed by Adam Barth.
302
303         [V8] Keep dirty primitive CSS values alive.
304         https://bugs.webkit.org/show_bug.cgi?id=57810
305
306         * bindings/v8/V8GCController.cpp:
307         (WebCore::GrouperVisitor::visitDOMWrapper):
308
309 2011-04-05  Simon Fraser  <simon.fraser@apple.com>
310
311         Reviewed by Adele Peterson.
312
313         Add a fast path for simple color backgrounds
314         https://bugs.webkit.org/show_bug.cgi?id=57773
315
316         Add a fast path for drawing simple color backgrounds. It's
317         faster to fill a path or rect than it is to set up a clip,
318         and then paint the rect.
319         
320         No visible behavior change so no new tests.
321
322         * rendering/RenderBoxModelObject.cpp:
323         (WebCore::RenderBoxModelObject::paintFillLayerExtended):
324
325 2011-04-05  Patrick Gansterer  <paroga@webkit.org>
326
327         Unreviewed EFL build fix for r82962.
328
329         * CMakeListsEfl.txt:
330
331 2011-04-05  Chris Rogers  <crogers@google.com>
332
333         Reviewed by Kenneth Russell.
334
335         Add support for offline audio rendering to AudioContext API
336         https://bugs.webkit.org/show_bug.cgi?id=57676
337
338         No new tests since audio API is not yet implemented.
339
340         * DerivedSources.make:
341         * WebCore.gypi:
342         * WebCore.xcodeproj/project.pbxproj:
343         * bindings/js/JSAudioContextCustom.cpp:
344         (WebCore::JSAudioContextConstructor::constructJSAudioContext):
345         * bindings/js/JSEventCustom.cpp:
346         (WebCore::toJS):
347         * bindings/js/JSEventTarget.cpp:
348         (WebCore::toJS):
349         * bindings/v8/V8DOMWrapper.cpp:
350         (WebCore::V8DOMWrapper::convertEventTargetToV8Object):
351         * bindings/v8/custom/V8AudioContextCustom.cpp:
352         (WebCore::V8AudioContext::constructorCallback):
353         * bindings/v8/custom/V8EventCustom.cpp:
354         (WebCore::toV8):
355         * dom/Event.cpp:
356         (WebCore::Event::isOfflineAudioCompletionEvent):
357         * dom/Event.h:
358         * dom/EventTarget.cpp:
359         (WebCore::EventTarget::toAudioContext):
360         * dom/EventTarget.h:
361         * platform/audio/HRTFDatabaseLoader.cpp:
362         (WebCore::HRTFDatabaseLoader::waitForLoaderThreadCompletion):
363         * platform/audio/HRTFDatabaseLoader.h:
364         (WebCore::HRTFDatabaseLoader::loader):
365         * webaudio/AudioContext.cpp:
366         (WebCore::AudioContext::createOfflineContext):
367         (WebCore::AudioContext::AudioContext):
368         (WebCore::AudioContext::constructCommon):
369         (WebCore::AudioContext::document):
370         (WebCore::AudioContext::scriptExecutionContext):
371         (WebCore::AudioContext::toAudioContext):
372         (WebCore::AudioContext::startRendering):
373         (WebCore::AudioContext::fireCompletionEvent):
374         * webaudio/AudioContext.h:
375         (WebCore::AudioContext::isOfflineContext):
376         (WebCore::AudioContext::eventTargetData):
377         (WebCore::AudioContext::ensureEventTargetData):
378         (WebCore::AudioContext::refEventTarget):
379         (WebCore::AudioContext::derefEventTarget):
380         * webaudio/AudioContext.idl:
381         * webaudio/AudioDestinationNode.cpp:
382         (WebCore::AudioDestinationNode::AudioDestinationNode):
383         * webaudio/AudioDestinationNode.h:
384         (WebCore::AudioDestinationNode::reset):
385         (WebCore::AudioDestinationNode::numberOfChannels):
386         * webaudio/ConvolverNode.cpp:
387         (WebCore::ConvolverNode::setBuffer):
388         * webaudio/DefaultAudioDestinationNode.cpp: Added.
389         (WebCore::DefaultAudioDestinationNode::DefaultAudioDestinationNode):
390         (WebCore::DefaultAudioDestinationNode::~DefaultAudioDestinationNode):
391         (WebCore::DefaultAudioDestinationNode::initialize):
392         (WebCore::DefaultAudioDestinationNode::uninitialize):
393         (WebCore::DefaultAudioDestinationNode::startRendering):
394         * webaudio/DefaultAudioDestinationNode.h: Added.
395         (WebCore::DefaultAudioDestinationNode::create):
396         (WebCore::DefaultAudioDestinationNode::sampleRate):
397         * webaudio/OfflineAudioCompletionEvent.cpp: Added.
398         (WebCore::OfflineAudioCompletionEvent::create):
399         (WebCore::OfflineAudioCompletionEvent::OfflineAudioCompletionEvent):
400         (WebCore::OfflineAudioCompletionEvent::~OfflineAudioCompletionEvent):
401         (WebCore::OfflineAudioCompletionEvent::isOfflineAudioCompletionEvent):
402         * webaudio/OfflineAudioCompletionEvent.h: Added.
403         (WebCore::OfflineAudioCompletionEvent::renderedBuffer):
404         * webaudio/OfflineAudioCompletionEvent.idl: Added.
405         * webaudio/OfflineAudioDestinationNode.cpp: Added.
406         (WebCore::OfflineAudioDestinationNode::OfflineAudioDestinationNode):
407         (WebCore::OfflineAudioDestinationNode::~OfflineAudioDestinationNode):
408         (WebCore::OfflineAudioDestinationNode::initialize):
409         (WebCore::OfflineAudioDestinationNode::uninitialize):
410         (WebCore::OfflineAudioDestinationNode::startRendering):
411         (WebCore::OfflineAudioDestinationNode::renderEntry):
412         (WebCore::OfflineAudioDestinationNode::render):
413         (WebCore::OfflineAudioDestinationNode::notifyCompleteDispatch):
414         (WebCore::OfflineAudioDestinationNode::notifyComplete):
415         * webaudio/OfflineAudioDestinationNode.h: Added.
416         (WebCore::OfflineAudioDestinationNode::create):
417         (WebCore::OfflineAudioDestinationNode::sampleRate):
418
419 2011-04-05  Martin Robinson  <mrobinson@igalia.com>
420
421         Reviewed by Eric Seidel.
422
423         [Cairo] Better separate the concerns of GraphicsContextCairo
424         https://bugs.webkit.org/show_bug.cgi?id=55150
425
426         Add a PlatformContextCairo which right now stores the cairo_t* for a
427         GraphicsContextCairo. Later patches will move logic for tracking ContextShadow
428         and image masking layers into this PlatformContextCairo class.
429
430         No new tests. This patch is only a code cleanup.
431
432         * GNUmakefile.am:
433         * platform/graphics/GraphicsContext.h: The platform context is no longer a
434         cairo_t, but our new class the PlatformContextCairo.
435         * platform/graphics/cairo/ContextShadowCairo.cpp: Updated to reflect new class.j
436         * platform/graphics/cairo/FontCairo.cpp: Ditto.
437         * platform/graphics/cairo/GradientCairo.cpp: Ditto.
438         * platform/graphics/cairo/GraphicsContextCairo.cpp: Mostly mechanical
439         changes which now reference platformContext()->cr() to get the cairo_t.
440         * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h: Now hold the
441         PlatformContextCairo instead of the cairo_t.
442         * platform/graphics/cairo/ImageBufferCairo.cpp: Update to reflect new class.
443         * platform/graphics/cairo/ImageCairo.cpp: Ditto.
444         * platform/graphics/cairo/PathCairo.cpp: Ditto.
445         * platform/graphics/cairo/PlatformContextCairo.cpp: Added.
446         * platform/graphics/cairo/PlatformContextCairo.h: Added.
447         * platform/graphics/gtk/FontGtk.cpp: Update to reflect new class.
448         * platform/graphics/gtk/IconGtk.cpp: Ditto.
449         * platform/graphics/win/GraphicsContextCairoWin.cpp: Now fill out
450         m_data with a private section containing the platform context instead of
451         just a cairo_t.
452         * platform/gtk/RenderThemeGtk.cpp: Update to reflect new class.
453         * platform/gtk/WidgetRenderingContext.cpp: Ditto.
454         (WebCore::WidgetRenderingContext::~WidgetRenderingContext): Ditto.
455         * plugins/gtk/PluginViewGtk.cpp: Ditto.
456
457 2011-04-05  David Dorwin  <ddorwin@chromium.org>
458
459         Reviewed by David Levin.
460
461         Fullscreen code assumes all layers use GPU compositing when USE(ACCELERATED_COMPOSITING)
462         https://bugs.webkit.org/show_bug.cgi?id=57400
463
464         Check whether the full screen renderer layer is being composited by the GPU before assuming that the backing is valid. 
465         Accelerated compositing may be compiled in but disabled at runtime or for some elements.
466
467         Tests: Fullscreen layout tests on Chromium.
468
469         * dom/Document.cpp:
470         (WebCore::Document::webkitWillEnterFullScreenForElement):
471         (WebCore::Document::webkitDidEnterFullScreenForElement):
472         (WebCore::Document::webkitWillExitFullScreenForElement):
473
474 2011-04-05  Nikolas Zimmermann  <nzimmermann@rim.com>
475
476         Reviewed by Dirk Schulze.
477
478         Regression: Invalid write in SVGTextLayoutEngine
479         https://bugs.webkit.org/show_bug.cgi?id=57721
480
481         Properly stop layout if all metrics object refer to zero-width/height characters,
482         which can happen for instance when using <text font-size="0">.
483
484         Test: svg/text/font-size-null-assertion.svg
485
486         * rendering/svg/SVGTextLayoutEngine.cpp:
487         (WebCore::SVGTextLayoutEngine::currentLogicalCharacterAttributes):
488         (WebCore::SVGTextLayoutEngine::currentLogicalCharacterMetrics):
489
490 2011-04-04 MORITA Hajime  <morrita@google.com>
491
492         Reviewed by Ryosuke Niwa.
493
494         [Refactoring] SpellCheckingResult should be replaced with TextCheckingResult
495         https://bugs.webkit.org/show_bug.cgi?id=56085
496         
497         Removed WebCore::SpellCheckingResult and replaced it with TextCheckingResult.
498         This change also added TextCheckerClient::requestCheckingOfString() should have
499         TextCheckingTypeMask as a parameter to control text checking type.
500
501         * WebCore.exp.in:
502         * editing/Editor.cpp:
503         (WebCore::Editor::replaceSelectionWithFragment):
504         (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges):
505         (WebCore::Editor::textCheckingTypeMaskFor): Extracted from markAllMisspellingsAndBadGrammarInRanges()
506         * editing/SpellChecker.cpp:
507         (WebCore::SpellChecker::requestCheckingFor): Added a parameter.
508         (WebCore::SpellChecker::markAt): Extracted from didCheck(), Added a check for the GrammarDetail object.
509         (WebCore::SpellChecker::didCheck):
510         * editing/SpellChecker.h:
511         * loader/EmptyClients.h:
512         (WebCore::EmptyTextCheckerClient::checkTextOfParagraph):
513         (WebCore::EmptyTextCheckerClient::requestCheckingOfString):
514         * platform/text/TextCheckerClient.h:
515
516 2011-04-04  Antti Koivisto  <antti@apple.com>
517
518         Reviewed by Sam Weinig.
519
520         Print stylesheet on nytimes.com loads too early
521         https://bugs.webkit.org/show_bug.cgi?id=57814
522
523         Don't load resources with Very Low priority until there are no other resources to 
524         load for the host (or until document is complete enough that we stop limiting requests).
525
526         No tests, this is  difficult to observe reliably with our current testing infrastructure.
527         Verified working with Wireshark.
528
529         * loader/ResourceLoadScheduler.cpp:
530         (WebCore::ResourceLoadScheduler::servePendingRequests):
531         (WebCore::ResourceLoadScheduler::HostInformation::limitRequests):
532         * loader/ResourceLoadScheduler.h:
533
534 2011-04-04  Steve Block  <steveblock@google.com>
535
536         Reviewed by Dimitri Glazkov.
537
538         JavaInstance should be a pure interface
539         https://bugs.webkit.org/show_bug.cgi?id=55383
540
541         This patch fixes JavaInstance for V8 only.
542
543         It factors out a JavaInstance interface which does not use JNI
544         types. This will allow the Java bridge to be used with objects
545         that don't use JNI directly. The existing jobject-backed
546         implementation is moved to a new JavaInstanceJobject class which
547         implements the interface.
548
549         No new tests, refactoring only.
550
551         * Android.v8bindings.mk:
552         * WebCore.gypi:
553         * bridge/jni/JobjectWrapper.h:
554         * bridge/jni/v8/JNIUtilityPrivate.cpp:
555         (JSC::Bindings::jvalueToJavaValue):
556         (JSC::Bindings::javaValueToJvalue):
557         * bridge/jni/v8/JavaInstanceJobjectV8.cpp:
558         (JavaInstanceJobject::JavaInstanceJobject):
559         (JavaInstanceJobject::~JavaInstanceJobject):
560         (JavaInstanceJobject::begin):
561         (JavaInstanceJobject::end):
562         (JavaInstanceJobject::getClass):
563         (JavaInstanceJobject::invokeMethod):
564         (JavaInstanceJobject::getField):
565         * bridge/jni/v8/JavaInstanceJobjectV8.h: Copied from Source/WebCore/bridge/jni/v8/JavaInstanceV8.h.
566         (JSC::Bindings::JavaInstanceJobject::javaInstance):
567         * bridge/jni/v8/JavaInstanceV8.h:
568         (JSC::Bindings::JavaInstance::~JavaInstance):
569
570 2011-04-05  Dimitri Glazkov  <dglazkov@chromium.org>
571
572        Reviewed by Darin Adler.
573
574         Move MouseEvent-dispatching logic into MouseEventDispatchMediator.
575         https://bugs.webkit.org/show_bug.cgi?id=57639
576
577         Refactoring, covered by existing tests.
578
579         * dom/EventDispatcher.cpp:
580         (WebCore::EventDispatcher::dispatchEvent): Moved useful assertion here
581             from dispatchMouseEvent.
582         (WebCore::EventDispatcher::adjustRelatedTarget): Converted into a method.
583         * dom/EventDispatcher.h: Adjusted decls.
584         (WebCore::EventDispatcher::node): Added.
585         * dom/MouseEvent.cpp:
586         (WebCore::MouseEvent::create): Moved useful assertion here from
587             dispatchMouseEvent.
588         (WebCore::MouseEventDispatchMediator::MouseEventDispatchMediator): Added.
589         (WebCore::MouseEventDispatchMediator::event): Added.
590         (WebCore::MouseEventDispatchMediator::dispatchEvent): Added.
591         * dom/MouseEvent.h:
592         (WebCore::MouseEvent::setRelatedTarget): Added.
593         * dom/Node.cpp:
594         (WebCore::Node::dispatchMouseEvent): Changed to use MouseEventDispatchMediator.
595
596 2011-04-05  Nikolas Zimmermann  <nzimmermann@rim.com>
597
598         Reviewed by Adam Roben & Dirk Schulze.
599
600         text-tspan-02-b.svg from SVG 1.1 2nd edition fails
601         https://bugs.webkit.org/show_bug.cgi?id=57831
602
603         We were not spanning rotation values correcty accross text children, which resulted in text-span-02-b.svg misrendering.
604         While rewriting the rotation specific code, it came apparent that the LayoutScope concept is flawed in general and
605         should be replaced by a global list of x/y/dx/dy/rotate values for the whole text subtree. This makes it much simpler
606         to implement the demand that the last rotation value spans the whole scope. A follow-up patch will optimize the
607         required memory.
608
609         Example:
610         <text rotate="10,20,999,50">AB<tspan rotate="30">CDE</>FGH</text>
611     
612         text:   A  B  C  D  E  F  G  H
613         rotate="10 20 30 30 30 50 50 50"
614
615         Tests: svg/W3C-SVG-1.1-SE/text-tspan-02-b.svg
616                svg/text/text-midpoint-split-bug.svg
617
618         * rendering/RenderBlockLineLayout.cpp:     Move SVG specific midpoint creation after the non-SVG specific code that may mutate the midpoints. otherwhise we end up in an
619         (WebCore::RenderBlock::findNextLineBreak): inconsistent state. We were intereferring with the ignoreSpaces code resulting in wrong truncations - covered by new testcase.
620         * rendering/svg/SVGTextLayoutAttributes.cpp:
621         (WebCore::SVGTextLayoutAttributes::reserveCapacity): Also reserveCapacity for the text metrics list (minor optimization).
622         (WebCore::SVGTextLayoutAttributes::fillWithEmptyValue): Added helper function for use from SVGTextLayoutAttributesBuilder.
623         (WebCore::SVGTextLayoutAttributes::appendEmptyValue): Ditto.
624         (WebCore::safeValueAtPosition): Ditto. (Inline helper)
625         (WebCore::SVGTextLayoutAttributes::appendSingleValueFromAttribute): Ditto.
626         * rendering/svg/SVGTextLayoutAttributes.h: Ditto.
627         * rendering/svg/SVGTextLayoutAttributesBuilder.cpp: Rewrite code, see explaination above.
628         (WebCore::SVGTextLayoutAttributesBuilder::buildLayoutAttributesForTextSubtree):
629         (WebCore::processRenderSVGInlineText):
630         (WebCore::SVGTextLayoutAttributesBuilder::collectTextPositioningElements):
631         (WebCore::SVGTextLayoutAttributesBuilder::buildLayoutAttributesForAllCharacters):
632         (WebCore::SVGTextLayoutAttributesBuilder::propagateLayoutAttributes):
633         (WebCore::fillListAtPosition):
634         (WebCore::SVGTextLayoutAttributesBuilder::fillAttributesAtPosition):
635         * rendering/svg/SVGTextLayoutAttributesBuilder.h:
636         (WebCore::SVGTextLayoutAttributesBuilder::TextPosition::TextPosition):
637
638 2011-04-05  Levi Weintraub  <leviw@chromium.org>
639
640         Reviewed by Ryosuke Niwa.
641
642         DeleteButtonController is given invalid style
643         https://bugs.webkit.org/show_bug.cgi?id=57853
644
645         DeleteButtonController was assigned an invalid style that can lead to assertions
646         in debug builds. This matches up the code with its intent.
647
648         No new tests as this changes nothing on release builds.
649
650         * editing/DeleteButtonController.cpp:
651         (WebCore::DeleteButtonController::createDeletionUI):
652
653 2011-04-05  Anders Bakken  <agbakken@gmail.com>
654
655         Reviewed by Laszlo Gombos.
656
657         [Qt] EditorQt.cpp has coding-style errors
658         https://bugs.webkit.org/show_bug.cgi?id=40260
659         
660         This patch does not require new test cases.
661
662         * editing/qt/EditorQt.cpp:
663
664 2011-04-05  Pavel Podivilov  <podivilov@chromium.org>
665
666         Reviewed by Pavel Feldman.
667
668         Web Inspector: go to line dialog highlights wrong line.
669         https://bugs.webkit.org/show_bug.cgi?id=57845
670
671         * inspector/front-end/GoToLineDialog.js:
672         (WebInspector.GoToLineDialog.prototype._highlightSelectedLine):
673
674 2011-04-05  Luke Macpherson   <macpherson@chromium.org>
675
676         Reviewed by Dimitri Glazkov.
677
678         Implement CSSPropertyDirection in CSSStyleApplyProperty
679         https://bugs.webkit.org/show_bug.cgi?id=57608
680
681         No new tests required as no new functionality introduced.
682
683         * css/CSSStyleApplyProperty.cpp:
684         Add implementation class for CSSPropertyDirection
685         * css/CSSStyleSelector.cpp:
686         Remove existing implementation for CSSPropertyDirection
687         * css/CSSStyleSelector.h:
688         Add getter for element
689
690 2011-04-05  Leandro Gracia Gil  <leandrogracia@chromium.org>
691
692         Reviewed by Steve Block.
693
694         Factoring the creation of 'FunctionOnly' callbacks in V8.
695         https://bugs.webkit.org/show_bug.cgi?id=57760
696
697         This method creates a template from an existing functionality in V8GeolocationCustom.cpp
698         to V8Utilities to be used by the custom bindings of both Geolocation and the Media Stream API.
699
700         No new tests. LayoutTests/fast/dom/Geolocation/argument-types.html
701
702         * bindings/v8/V8Utilities.cpp:
703         (WebCore::throwTypeMismatchException):
704         * bindings/v8/V8Utilities.h:
705         (WebCore::createFunctionOnlyCallback):
706         * bindings/v8/custom/V8GeolocationCustom.cpp:
707         (WebCore::V8Geolocation::getCurrentPositionCallback):
708         (WebCore::V8Geolocation::watchPositionCallback):
709
710 2011-04-05  Nikolas Zimmermann  <nzimmermann@rim.com>
711
712         Reviewed by Andreas Kling.
713
714         Switch from Vector<UChar> to StringBuilder in bindings/
715         https://bugs.webkit.org/show_bug.cgi?id=57838
716
717         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
718         (WebCore::cssPropertyName):
719         * bindings/v8/custom/V8CSSStyleDeclarationCustom.cpp:
720         (WebCore::cssPropertyInfo):
721
722 2011-04-05  Nikolas Zimmermann  <nzimmermann@rim.com>
723
724         Reviewed by Andreas Kling.
725
726         Switch from Vector<UChar> to StringBuilder in accessibility/
727         https://bugs.webkit.org/show_bug.cgi?id=57837
728
729         * accessibility/AccessibilityObject.cpp:
730         (WebCore::AccessibilityObject::listMarkerTextForNodeAndPosition):
731         (WebCore::AccessibilityObject::stringForVisiblePositionRange):
732         * accessibility/AccessibilityRenderObject.cpp:
733         (WebCore::AccessibilityRenderObject::accessibilityDescriptionForElements):
734
735 2011-04-05  Andrey Adaikin  <aandrey@google.com>
736
737         Reviewed by Pavel Feldman.
738
739         Web Inspector: Scripts with syntax errors are cropped in the UI
740         https://bugs.webkit.org/show_bug.cgi?id=57828
741
742         * inspector/front-end/SourceFrame.js:
743         (WebInspector.SourceFrame.prototype.addMessageToSource):
744
745 2011-04-05  Alexey Proskuryakov  <ap@apple.com>
746
747         Reviewed by Darin Adler.
748
749         Remove onformchange and onforminput events/event handlers
750         https://bugs.webkit.org/show_bug.cgi?id=55755
751         <rdar://problem/9087969>
752
753         Covered by existing tests.
754
755         * dom/Document.h:
756         * dom/Document.idl:
757         * dom/Element.h:
758         * dom/Element.idl:
759         * dom/Event.cpp:
760         (WebCore::Event::fromUserGesture):
761         * dom/EventNames.h:
762         * html/FormAssociatedElement.h:
763         * html/HTMLAttributeNames.in:
764         * html/HTMLElement.cpp:
765         (WebCore::HTMLElement::parseMappedAttribute):
766         * html/HTMLElement.h:
767         * html/HTMLFormControlElement.h:
768         (WebCore::HTMLFormControlElement::isEnumeratable):
769         * html/HTMLFormElement.cpp:
770         * html/HTMLFormElement.h:
771         * html/HTMLFormElement.idl:
772         * html/HTMLInputElement.h:
773         * html/HTMLKeygenElement.h:
774         * html/HTMLObjectElement.h:
775         (WebCore::HTMLObjectElement::isEnumeratable):
776         * html/HTMLOutputElement.h:
777         (WebCore::HTMLOutputElement::isEnumeratable):
778         * html/HTMLSelectElement.h:
779         (WebCore::HTMLSelectElement::isEnumeratable):
780         * html/HTMLTextAreaElement.h:
781         (WebCore::HTMLTextAreaElement::isEnumeratable):
782         * page/DOMWindow.h:
783         * page/DOMWindow.idl:
784
785 2011-04-05  Sheriff Bot  <webkit.review.bot@gmail.com>
786
787         Unreviewed, rolling out r82915.
788         http://trac.webkit.org/changeset/82915
789         https://bugs.webkit.org/show_bug.cgi?id=57825
790
791         Broke 270 chromium tests on win and linux (Requested by
792         podivilov on #webkit).
793
794         * rendering/RenderThemeChromiumSkia.cpp:
795         (WebCore::RenderThemeChromiumSkia::defaultGUIFont):
796
797 2011-04-05  James Simonsen  <simonjam@chromium.org>
798
799         Reviewed by Adam Barth.
800
801         Stop preload scanning CSS when it&apos;s impossible to have another @import.
802         https://bugs.webkit.org/show_bug.cgi?id=57664
803
804         @import statements are only allowed at the beginning of a CSS file.
805         Only comments or @charset can precede them. After seeing anything else,
806         abort early so that we:
807         - don't have to parse the rest of the CSS.
808         - don't preload something that the regular parser won't load.
809
810         * html/parser/CSSPreloadScanner.cpp:
811         (WebCore::CSSPreloadScanner::scan): Terminate early if we're done with @imports.
812         (WebCore::CSSPreloadScanner::tokenize): Terminate early if we see a {} or any style rule.
813         (WebCore::CSSPreloadScanner::emitRule): Only @charset or @import are allowed to precede @import.
814         * html/parser/CSSPreloadScanner.h: Add DoneParsingImportRules state.
815
816 2011-04-05  Takayoshi Kochi <kochi@chromium.org>
817
818         Reviewed by Tony Chang.
819
820         [chromium] Specify 'sans-serif' as a fallback to the default UI font
821         'Arial' for non-latin UI scripts (e.g. CJK).
822         https://bugs.webkit.org/show_bug.cgi?id=55035
823
824         No new tests, because it may still fail if the system is not configured
825         properly to resolve 'sans-serif' to existing real font file, thus even
826         manual test is hard to systematically tell it is working properly.
827
828         * rendering/RenderThemeChromiumSkia.cpp
829
830 2011-04-05  Kent Tamura  <tkent@chromium.org>
831
832         Reviewed by Dimitri Glazkov.
833
834         Setting defaultValue on a textarea with a modified value still clobbers the value
835         https://bugs.webkit.org/show_bug.cgi?id=57636
836
837         If the dirty flag is true, we shouldn't update the value when the
838         defaultValue is updated
839
840         Test: fast/forms/textarea-set-defaultvalue-after-value.html
841
842         * html/HTMLTextAreaElement.cpp:
843         (WebCore::HTMLTextAreaElement::childrenChanged):
844         (WebCore::HTMLTextAreaElement::setDefaultValue):
845
846 2011-04-04  Kent Tamura  <tkent@chromium.org>
847
848         Add a case label which was unexpectedly removed in r82899.
849         https://bugs.webkit.org/show_bug.cgi?id=50661
850
851         * css/CSSSelector.cpp:
852         (WebCore::CSSSelector::extractPseudoType):
853
854 2011-04-04  Dan Bernstein  <mitz@apple.com>
855
856         Reviewed by Simon Fraser.
857
858         <rdar://problem/7709452> Implement Default Ruby Overhang Behavior
859         https://bugs.webkit.org/show_bug.cgi?id=49334
860
861         Tests: fast/ruby/overhang-horizontal.html
862                fast/ruby/overhang-vertical.html
863
864         This is a first cut at ruby overhang. It allows ruby text to hang over other
865         text of equal or smaller size. Two notable omissions are that max preferred
866         width computation was not patched, so it will overshoot, and that overhang
867         ignores the width of the adjoining text runs.
868
869         * rendering/RenderBlock.h:
870         * rendering/RenderBlockLineLayout.cpp:
871         (WebCore::RenderBlock::computeInlineDirectionPositionsForLine): Adjust margins
872         of ruby runs for overhang.
873         (WebCore::RenderBlock::fitBelowFloats): Maintain the increase in line width to
874         compensate for overhang.
875         (WebCore::RenderBlock::findNextLineBreak): When encountering
876         a ruby run, increase the line width to account for the fact that overhang will be
877         collapsed.
878         * rendering/RenderRubyRun.cpp:
879         (WebCore::RenderRubyRun::getOverhang): Added. Allows ruby to overhang if
880         the adjoining renderer is text with equal or smaller font size.
881         * rendering/RenderRubyRun.h:
882         (WebCore::toRenderRubyRun):
883
884 2011-04-04  David Kilzer  <ddkilzer@apple.com>
885
886         <http://webkit.org/b/57384> CFNetwork and WebCore load priorities should match
887
888         Reviewed by Alexey Proskuryakov.
889
890         * WebCore.exp.in: Export wkSetHTTPPipeliningMaximumPriority().
891         * platform/mac/WebCoreSystemInterface.h:
892         (wkSetHTTPPipeliningMaximumPriority): Added function pointer
893         declaration.
894         * platform/mac/WebCoreSystemInterface.mm:
895         (wkSetHTTPPipeliningMaximumPriority): Added function pointer.
896         * platform/network/cf/ResourceRequestCFNet.cpp:
897         (WebCore::initializeMaximumHTTPConnectionCountPerHost): Call
898         wkSetHTTPPipeliningMaximumPriority() to set the maximum HTTP
899         pipelining priority.
900         * platform/network/cf/ResourceRequestCFNet.h:
901         (WebCore::toResourceLoadPriority): Renamed from
902         mapHTTPPipeliningPriorityToResourceLoadPriority().  Updated to
903         to handle Unresolved case.
904         (WebCore::toHTTPPipeliningPriority): Renamed from
905         mapResourceLoadPriorityToHTTPPipeliningPriority().  Updated to
906         handle Unresolved case.
907         * platform/network/mac/ResourceRequestMac.mm:
908         (WebCore::ResourceRequest::doUpdateResourceRequest): Switched to
909         use toResourceLoadPriority().
910         (WebCore::ResourceRequest::doUpdatePlatformRequest): Switched to
911         use toHTTPPipeliningPriority().  Moved
912         shouldForceHTTPPipeliningPriorityHigh() check into the argument
913         of toHTTPPipeliningPriority() instead of hard-coding a
914         now-incorrect value.
915
916 2011-04-04  MORITA Hajime  <morrita@google.com>
917
918         Reviewed by Kent Tamura.
919
920         Convert <meter> shadow DOM to a DOM-based shadow.
921         https://bugs.webkit.org/show_bug.cgi?id=50661
922         
923         Eliminated a large part of <meter> custom layout code,
924         which is replaced by a shadow tree.
925         Note that the shadow tree is created on construction time and
926         will remain during the host HTMLMeterElement lifecycle.
927         
928         * Android.mk:
929         * CMakeLists.txt:
930         * GNUmakefile.am:
931         * WebCore.gypi:
932         * WebCore.pro:
933         * WebCore.vcproj/WebCore.vcproj:
934         * WebCore.xcodeproj/project.pbxproj:
935         * css/CSSMutableStyleDeclaration.cpp:
936         (WebCore::CSSMutableStyleDeclaration::setProperty):
937         * css/CSSMutableStyleDeclaration.h:
938         * css/CSSSelector.cpp:
939         (WebCore::CSSSelector::pseudoId):
940         (WebCore::nameToPseudoTypeMap):
941         (WebCore::CSSSelector::extractPseudoType):
942         * css/CSSSelector.h:
943         * css/html.css:
944         (meter):
945         (meter::-webkit-meter-bar):
946         (meter::-webkit-meter-optimum-value):
947         (meter::-webkit-meter-suboptimum-value):
948         (meter::-webkit-meter-even-less-good-value):
949         * html/HTMLMeterElement.cpp:
950         (WebCore::HTMLMeterElement::~HTMLMeterElement):
951         (WebCore::HTMLMeterElement::parseMappedAttribute):
952         (WebCore::HTMLMeterElement::attach):
953         (WebCore::HTMLMeterElement::valueRatio):
954         (WebCore::HTMLMeterElement::didElementStateChange):
955         (WebCore::HTMLMeterElement::createShadowSubtree):
956         * html/HTMLMeterElement.h:
957         * html/shadow/MeterShadowElement.cpp: Added.
958         (WebCore::MeterShadowElement::MeterShadowElement):        
959         (WebCore::MeterShadowElement::meterElement):
960         (WebCore::MeterShadowElement::rendererIsNeeded):
961         (WebCore::MeterBarElement::shadowPseudoId):
962         (WebCore::MeterValueElement::shadowPseudoId):
963         (WebCore::MeterValueElement::setWidthPercentage):
964         * html/shadow/MeterShadowElement.h: Added.
965         (WebCore::MeterBarElement::MeterBarElement):
966         (WebCore::MeterBarElement::create):
967         (WebCore::MeterValueElement::MeterValueElement):
968         (WebCore::MeterValueElement::create):
969         * rendering/RenderMeter.cpp:
970         (WebCore::RenderMeter::RenderMeter):
971         (WebCore::RenderMeter::~RenderMeter):
972         (WebCore::RenderMeter::valueRatio):
973         * rendering/RenderMeter.h:
974         (WebCore::RenderMeter::renderName):
975         (WebCore::RenderMeter::isMeter):
976         (WebCore::RenderMeter::requiresForcedStyleRecalcPropagation):
977         (WebCore::RenderMeter::canHaveChildren):
978
979 2011-04-04  Dimitri Glazkov  <dglazkov@chromium.org>
980
981         Reviewed by Adam Barth.
982
983         Introduce EventDispatchMediator abstraction, which encapsulate all
984         non-trivial logic around firing a specific type of an event.
985         https://bugs.webkit.org/show_bug.cgi?id=57562
986
987         Refactoring, covered by existing tests.
988
989         * dom/Event.cpp:
990         (WebCore::EventDispatchMediator::EventDispatchMediator): Added.
991         (WebCore::EventDispatchMediator::~EventDispatchMediator): Added.
992         (WebCore::EventDispatchMediator::dispatchEvent): Added.
993         (WebCore::EventDispatchMediator::event): Added.
994         * dom/Event.h: Added decl.
995         * dom/EventDispatcher.cpp:
996         (WebCore::EventDispatcher::dispatchEvent): Changed to use EventDispatchMediator.
997         * dom/EventDispatcher.h: Updated decls.
998         * dom/KeyboardEvent.cpp:
999         (WebCore::KeyboardEventDispatchMediator::KeyboardEventDispatchMediator): Added.
1000         (WebCore::KeyboardEventDispatchMediator::dispatchEvent): Added.
1001         * dom/KeyboardEvent.h: Updated decls
1002         * dom/Node.cpp:
1003         (WebCore::Node::dispatchEvent): Changed to use EventDispatchMediator.
1004         (WebCore::Node::dispatchKeyEvent): Changed to use KeyboardEventDispatchMediator.
1005
1006 2011-04-04  Martin Robinson  <mrobinson@igalia.com>
1007
1008         Reviewed by Xan Lopez.
1009
1010         [Cairo] Memory leak in RefPtrCairo
1011         https://bugs.webkit.org/show_bug.cgi?id=57758
1012
1013         No new tests. This just fixes a memory leak.
1014
1015         * platform/graphics/cairo/RefPtrCairo.cpp:
1016         (WTF::derefIfNotNull): Deref should unref the cairo_font_fact_t, not reference it.
1017
1018 2011-04-04  Adrienne Walker  <enne@google.com>
1019
1020         Unreviewed, rolling out r82880.
1021         http://trac.webkit.org/changeset/82880
1022         https://bugs.webkit.org/show_bug.cgi?id=50661
1023
1024         Meter elements not rendered in Chromium Linux layout tests
1025
1026         * Android.mk:
1027         * CMakeLists.txt:
1028         * GNUmakefile.am:
1029         * WebCore.gypi:
1030         * WebCore.pro:
1031         * WebCore.vcproj/WebCore.vcproj:
1032         * WebCore.xcodeproj/project.pbxproj:
1033         * css/CSSMutableStyleDeclaration.cpp:
1034         * css/CSSMutableStyleDeclaration.h:
1035         * css/CSSSelector.cpp:
1036         (WebCore::CSSSelector::pseudoId):
1037         (WebCore::nameToPseudoTypeMap):
1038         (WebCore::CSSSelector::extractPseudoType):
1039         * css/CSSSelector.h:
1040         * css/html.css:
1041         (meter):
1042         (meter::-webkit-meter):
1043         (meter::-webkit-meter-bar):
1044         (meter::-webkit-meter-optimum-value):
1045         (meter::-webkit-meter-suboptimal-value):
1046         (meter::-webkit-meter-even-less-good-value):
1047         * html/HTMLMeterElement.cpp:
1048         (WebCore::HTMLMeterElement::create):
1049         (WebCore::HTMLMeterElement::parseMappedAttribute):
1050         (WebCore::HTMLMeterElement::attach):
1051         * html/HTMLMeterElement.h:
1052         * html/shadow/MeterShadowElement.cpp: Removed.
1053         * html/shadow/MeterShadowElement.h: Removed.
1054         * rendering/RenderMeter.cpp:
1055         (WebCore::RenderMeter::RenderMeter):
1056         (WebCore::RenderMeter::~RenderMeter):
1057         (WebCore::RenderMeter::createPart):
1058         (WebCore::RenderMeter::updateFromElement):
1059         (WebCore::RenderMeter::layoutParts):
1060         (WebCore::RenderMeter::styleDidChange):
1061         (WebCore::RenderMeter::shouldHaveParts):
1062         (WebCore::RenderMeter::valueRatio):
1063         (WebCore::RenderMeter::barPartRect):
1064         (WebCore::RenderMeter::valuePartRect):
1065         (WebCore::RenderMeter::valuePseudoId):
1066         (WebCore::RenderMeter::barPseudoId):
1067         (WebCore::RenderMeter::detachShadows):
1068         (WebCore::RenderMeter::updateShadows):
1069         * rendering/RenderMeter.h:
1070         (WebCore::RenderMeter::renderName):
1071         (WebCore::RenderMeter::isMeter):
1072         (WebCore::RenderMeter::shadowAttached):
1073
1074 2011-04-04  Chang Shu  <cshu@webkit.org>
1075
1076         Reviewed by Ryosuke Niwa.
1077
1078         setContentEditable with true/false/inherit string is not working properly
1079         https://bugs.webkit.org/show_bug.cgi?id=52058
1080
1081         Move isContentEditable from HTMLElement to Node. Thus, Node provides two functions for
1082         checking editability: rendererIsEditable and isContentEdiable. The former is a fast path,
1083         which does NOT trigger layout and only checks the render style of usermodify. The latter
1084         updates the layout first to make sure the render style syncs with DOM contenteditable 
1085         attribute. Certain call sites that need to call isContentEditable rather than rendererIsEditable
1086         are also updated in the patch. But a complete fix will follow up in bug 57244.
1087
1088         This patch fixes all the failed layout tests related to set contenteditable.
1089
1090         * accessibility/AccessibilityRenderObject.cpp:
1091         (WebCore::AccessibilityRenderObject::isReadOnly):
1092         * dom/Node.cpp:
1093         (WebCore::Node::isContentEditable):
1094         (WebCore::Node::shouldUseInputMethod):
1095         * dom/Node.h:
1096         * html/HTMLElement.cpp:
1097         * html/HTMLElement.h:
1098
1099 2011-04-04  Roland Steiner  <rolandsteiner@chromium.org>
1100
1101         Reviewed by Dimitri Glazkov.
1102
1103         Bug 57689 - Extract scoping functionality from Document
1104         https://bugs.webkit.org/show_bug.cgi?id=57689
1105
1106         Moved selfOnlyRef (renamed to guardRef), element ID, image map
1107         and accesss key functionalities from Document to a new base
1108         class TreeScope.
1109
1110         TreeShared: made removedLastRef protected
1111
1112         No new tests. (refactoring)
1113
1114         * Android.mk:
1115         * CMakeLists.txt:
1116         * GNUmakefile.am:
1117         * WebCore.gypi:
1118         * WebCore.pro:
1119         * WebCore.vcproj/WebCore.vcproj:
1120         * WebCore.xcodeproj/project.pbxproj:
1121         * dom/Document.cpp:
1122         (WebCore::Document::Document):
1123         (WebCore::Document::destroyScope):
1124         (WebCore::Document::getElementById):
1125         (WebCore::Document::childrenChanged):
1126         (WebCore::Document::scheduleStyleRecalc):
1127         (WebCore::Document::attach):
1128         (WebCore::Document::detach):
1129         * dom/Document.h:
1130         (WebCore::Node::Node):
1131         * dom/DocumentOrderedMap.cpp:
1132         (WebCore::DocumentOrderedMap::get):
1133         (WebCore::DocumentOrderedMap::getElementById):
1134         (WebCore::DocumentOrderedMap::getElementByMapName):
1135         (WebCore::DocumentOrderedMap::getElementByLowercasedMapName):
1136         * dom/DocumentOrderedMap.h:
1137         * dom/DOMAllInOne.cpp:
1138         * dom/Node.cpp:
1139         (WebCore::Node::~Node):
1140         (WebCore::Node::setDocument):
1141         * dom/Node.h:
1142         * dom/TreeScope.cpp: Added.
1143         * dom/TreeScope.h: Added.
1144         * platform/TreeShared.h:
1145         (WebCore::TreeShared::removedLastRef): made protected
1146
1147 2011-04-04  MORITA Hajime  <morrita@google.com>
1148
1149         Reviewed by Dimitri Glazkov.
1150
1151         Convert <meter> shadow DOM to a DOM-based shadow.
1152         https://bugs.webkit.org/show_bug.cgi?id=50661
1153         
1154         Eliminated a large part of <meter> custom layout code,
1155         which is replaced by a shadow tree.
1156         Note that the shadow tree is created on construction time and
1157         will remain during the host HTMLMeterElement lifecycle.
1158         
1159         * Android.mk:
1160         * CMakeLists.txt:
1161         * GNUmakefile.am:
1162         * WebCore.gypi:
1163         * WebCore.pro:
1164         * WebCore.vcproj/WebCore.vcproj:
1165         * WebCore.xcodeproj/project.pbxproj:
1166         * css/CSSMutableStyleDeclaration.cpp:
1167         (WebCore::CSSMutableStyleDeclaration::setProperty):
1168         * css/CSSMutableStyleDeclaration.h:
1169         * css/CSSSelector.cpp:
1170         (WebCore::CSSSelector::pseudoId):
1171         (WebCore::nameToPseudoTypeMap):
1172         (WebCore::CSSSelector::extractPseudoType):
1173         * css/CSSSelector.h:
1174         * css/html.css:
1175         (meter):
1176         (meter::-webkit-meter-bar):
1177         (meter::-webkit-meter-optimum-value):
1178         (meter::-webkit-meter-suboptimum-value):
1179         (meter::-webkit-meter-even-less-good-value):
1180         * html/HTMLMeterElement.cpp:
1181         (WebCore::HTMLMeterElement::~HTMLMeterElement):
1182         (WebCore::HTMLMeterElement::parseMappedAttribute):
1183         (WebCore::HTMLMeterElement::attach):
1184         (WebCore::HTMLMeterElement::valueRatio):
1185         (WebCore::HTMLMeterElement::didElementStateChange):
1186         (WebCore::HTMLMeterElement::createShadowSubtree):
1187         * html/HTMLMeterElement.h:
1188         * html/shadow/MeterShadowElement.cpp: Added.
1189         (WebCore::MeterShadowElement::MeterShadowElement):        
1190         (WebCore::MeterShadowElement::meterElement):
1191         (WebCore::MeterShadowElement::rendererIsNeeded):
1192         (WebCore::MeterBarElement::shadowPseudoId):
1193         (WebCore::MeterValueElement::shadowPseudoId):
1194         (WebCore::MeterValueElement::setWidthPercentage):
1195         * html/shadow/MeterShadowElement.h: Added.
1196         (WebCore::MeterBarElement::MeterBarElement):
1197         (WebCore::MeterBarElement::create):
1198         (WebCore::MeterValueElement::MeterValueElement):
1199         (WebCore::MeterValueElement::create):
1200         * rendering/RenderMeter.cpp:
1201         (WebCore::RenderMeter::RenderMeter):
1202         (WebCore::RenderMeter::~RenderMeter):
1203         (WebCore::RenderMeter::valueRatio):
1204         * rendering/RenderMeter.h:
1205         (WebCore::RenderMeter::renderName):
1206         (WebCore::RenderMeter::isMeter):
1207         (WebCore::RenderMeter::requiresForcedStyleRecalcPropagation):
1208         (WebCore::RenderMeter::canHaveChildren):
1209
1210 2011-04-04  Martin Robinson  <mrobinson@igalia.com>
1211
1212         Reviewed by Gustavo Noronha Silva.
1213
1214         [GTK] WebGL support
1215         https://bugs.webkit.org/show_bug.cgi?id=31517
1216
1217         Add WebGL support for the GTK+ bits of WebCore.
1218
1219         No new tests. This will be covered by the existing WebGL tests once
1220         the bots are capable of running WebGL tests.
1221
1222         * GNUmakefile.am: Added new files required for WebGL support.
1223         * html/HTMLCanvasElement.cpp:
1224         (WebCore::HTMLCanvasElement::getContext): Extend #ifdef to cover GTK+ as well, which does not
1225         yet support accelerated compositing.
1226         * platform/graphics/ANGLEWebKitBridge.h: Update to reflect the fact that ANGLE isn't compiled as
1227         a framework for GTK+.
1228         * platform/graphics/GraphicsContext3D.h:
1229         (WebCore::GraphicsContext3D::platformTexture): Added a declaration of this method for Cairo.
1230         (WebCore::GraphicsContext3D::paintsIntoCanvasBuffer): Ditto.
1231         * platform/graphics/cairo/GraphicsContext3DCairo.cpp: Added.
1232         (WebCore::GraphicsContext3D::getImageData): Added.
1233         (WebCore::GraphicsContext3D::paintToCanvas): Added.
1234         * platform/graphics/cairo/OpenGLShims.cpp: Added. This file controls loading of GL extension
1235         functions dynamically. They have different names across the different vendors' GL implementations.
1236         (WebCore::lookupOpenGLFunctionAddress): Added
1237         (WebCore::openGLFunctionTable): Added
1238         (WebCore::initializeOpenGLShims): Added
1239         * platform/graphics/cairo/OpenGLShims.h: Added.
1240         * platform/graphics/gtk/DrawingBufferGtk.cpp: Added.
1241         (WebCore::DrawingBuffer::DrawingBuffer): Very generic implementation for Cairo.
1242         (WebCore::DrawingBuffer::~DrawingBuffer): Ditto.
1243         (WebCore::DrawingBuffer::didReset): Ditto.
1244         (WebCore::DrawingBuffer::platformColorBuffer): Ditto.
1245         * platform/graphics/gtk/GraphicsContext3DGtk.cpp: Added.
1246         (WebCore::GraphicsContext3D::create): Initial implementation.
1247         (WebCore::GraphicsContext3D::GraphicsContext3D): Ditto.
1248         (WebCore::GraphicsContext3D::~GraphicsContext3D): Ditto.
1249         (WebCore::GraphicsContext3D::makeContextCurrent): Ditto.
1250         (WebCore::GraphicsContext3D::platformGraphicsContext3D): Ditto.
1251         (WebCore::GraphicsContext3D::isGLES2Compliant): Ditto.
1252         * platform/graphics/gtk/GraphicsContext3DInternal.cpp: Added.
1253         (sharedDisplay): Added this shared display which is required by some
1254         display drivers.
1255         (WebCore::activeGraphicsContexts): This method keeps track of all active GraphicsContext3D
1256         contexts, in order to clean them up at exit. This prevents crashes on certain OpenGL drivers.
1257         (WebCore::GraphicsContext3DInternal::addActiveGraphicsContext): Ditto.
1258         (WebCore::GraphicsContext3DInternal::removeActiveGraphicsContext): Ditto.
1259         (WebCore::GraphicsContext3DInternal::cleanupActiveContextsAtExit): Ditto.
1260         (WebCore::GraphicsContext3DInternal::create): Figure out the best way to create an OpenGL
1261         context given the current environment.
1262         (WebCore::GraphicsContext3DInternal::createPbufferContext): Pbuffer context initializer.
1263         (WebCore::GraphicsContext3DInternal::createPixmapContext): Pixmap context initializer.
1264         (WebCore::GraphicsContext3DInternal::GraphicsContext3DInternal): Initial implementation.
1265         (WebCore::GraphicsContext3DInternal::~GraphicsContext3DInternal): Ditto.
1266         (WebCore::GraphicsContext3DInternal::makeContextCurrent): Ditto.
1267         * platform/graphics/gtk/GraphicsContext3DInternal.h: Added.
1268         * platform/graphics/opengl/Extensions3DOpenGL.cpp: Added generic implementation.
1269         (WebCore::Extensions3DOpenGL::ensureEnabled): Ditto.
1270         * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
1271         (WebCore::GraphicsContext3D::reshape): Test for the context using the public API rather than
1272         the private bits that are specific to the Apple port.
1273
1274 2011-04-04  Alexey Proskuryakov  <ap@apple.com>
1275
1276         Reviewed by Dan Bernstein.
1277
1278         REGRESSION (WebKit2): Caps-Lock indicator sometimes doesn't appear in WebKit2
1279         https://bugs.webkit.org/show_bug.cgi?id=51230
1280         <rdar://problem/8780989>
1281
1282         <rdar://problem/9015250> REGRESSION (WebKit2): Key events not fired for modifier keys
1283
1284         * page/EventHandler.cpp: (WebCore::EventHandler::keyEvent): Moved Caps Lock handling from
1285         WebKits to WebCore, because WebKit shouldn't be smart.
1286
1287 2011-04-04  Steve Falkenburg  <sfalken@apple.com>
1288
1289         Fix Windows build warning.
1290
1291         * WebCore.vcproj/WebCore.vcproj: Exclude EventQueue.cpp in Debug_All build.
1292
1293 2011-04-04  Adam Roben  <aroben@apple.com>
1294
1295         Attempted Mac build fix, part III
1296
1297         * WebCore.exp.in: Export PlatformCALayer::setGeometryFlipped. Also resorted some symbols.
1298
1299 2011-04-04  Andy Estes  <aestes@apple.com>
1300
1301         Fix the Mac build.
1302
1303         * WebCore.exp.in:
1304
1305 2011-04-04  David Dorwin  <ddorwin@chromium.org>
1306
1307         Reviewed by David Levin.
1308
1309         Chromium Mac crashes when entering fullscreen
1310         https://bugs.webkit.org/show_bug.cgi?id=57483
1311
1312         Override extraFullScreenStyleSheet in RenderThemeChromiumMac to avoid hitting the ASSERT_NOT_REACHED in RenderThemeMac.
1313
1314         * WebCore.gyp/WebCore.gyp:
1315         * rendering/RenderThemeChromiumMac.h:
1316         * rendering/RenderThemeChromiumMac.mm:
1317         (WebCore::RenderThemeChromiumMac::extraFullScreenStyleSheet):
1318
1319 2011-04-04  Adam Roben  <aroben@apple.com>
1320
1321         Attempted Mac build fix, part II
1322
1323         * WebCore.xcodeproj/project.pbxproj: Marked PlatformCALayerClient.h and
1324         PlatformCAAnimation.h as private so that WebKit2 can #include them (transitively).
1325
1326 2011-04-04  Steve Falkenburg  <sfalken@apple.com>
1327
1328         Reviewed by Adam Roben.
1329
1330         Remove unused AnalyzeWithLargeStack code from Windows build files
1331         https://bugs.webkit.org/show_bug.cgi?id=57771
1332         
1333         This was used for us to build with prefast automatically,
1334         but it is out-of-date and hasn't been used for some time.
1335         Removing completely for now.
1336
1337         * WebCore.vcproj/WebCore.vcproj:
1338         * WebCore.vcproj/WebCorePreBuild.cmd:
1339
1340 2011-04-01  Matthew Delaney  <mdelaney@apple.com>
1341
1342         Reviewed by Simon Fraser.
1343
1344         [CG] Do not accelerate small canvases
1345         https://bugs.webkit.org/show_bug.cgi?id=57596
1346
1347         No new tests. No outward behavior changes.
1348
1349         * platform/graphics/cg/ImageBufferCG.cpp:
1350
1351 2011-04-04  Adam Roben  <aroben@apple.com>
1352
1353         Attempted Mac build fix
1354
1355         * WebCore.xcodeproj/project.pbxproj: Marked PlatformCALayer.h and GraphicsLayerCA.h private
1356         so that WebKit can #include them.
1357
1358 2011-04-04  Malcolm MacLeod  <mmacleod@webmail.co.za>
1359
1360         Reviewed by Kevin Ollivier.
1361
1362         [wx] Implement support for temporary files.
1363         
1364         https://bugs.webkit.org/show_bug.cgi?id=57772
1365
1366         * platform/FileSystem.h:
1367         * platform/wx/FileSystemWx.cpp:
1368         (WebCore::getFileModificationTime):
1369         (WebCore::openTemporaryFile):
1370         (WebCore::closeFile):
1371         (WebCore::writeToFile):
1372
1373 2011-04-01  Oliver Hunt  <oliver@apple.com>
1374
1375         Reviewed by Geoffrey Garen.
1376
1377         Make StructureChain GC allocated
1378         https://bugs.webkit.org/show_bug.cgi?id=56695
1379
1380         Update for new Structure marking function
1381
1382         * bindings/js/JSDOMGlobalObject.cpp:
1383         (WebCore::JSDOMGlobalObject::markChildren):
1384
1385 2011-04-04  Pavel Feldman  <pfeldman@google.com>
1386
1387         Reviewed by Yury Semikhatsky.
1388
1389         Web Inspector: add support for the enumerated types in the protocol.
1390         https://bugs.webkit.org/show_bug.cgi?id=57761
1391
1392         * inspector/Inspector.json:
1393         * inspector/InspectorDebuggerAgent.cpp:
1394         (WebCore::InspectorDebuggerAgent::setPauseOnExceptions):
1395         * inspector/InspectorDebuggerAgent.h:
1396         * inspector/InspectorInstrumentation.cpp:
1397         (WebCore::InspectorInstrumentation::resourceRetrievedByXMLHttpRequestImpl):
1398         (WebCore::InspectorInstrumentation::scriptImportedImpl):
1399         * inspector/InspectorResourceAgent.cpp:
1400         (WebCore::cachedResourceTypeString):
1401         (WebCore::InspectorResourceAgent::didReceiveResponse):
1402         (WebCore::InspectorResourceAgent::setInitialScriptContent):
1403         (WebCore::InspectorResourceAgent::setInitialXHRContent):
1404         * inspector/InspectorResourceAgent.h:
1405         * inspector/front-end/ScriptsPanel.js:
1406         * inspector/generate-inspector-idl:
1407
1408 2011-04-04  Yury Semikhatsky  <yurys@chromium.org>
1409
1410         Reviewed by Pavel Feldman.
1411
1412         Web Inspector: InspectorRuntimeAgent should not depend on Page
1413         https://bugs.webkit.org/show_bug.cgi?id=57759
1414
1415         Descendants of InspectorRuntimeAgent should implement a method providing access to the default
1416         inspected state used for console evaluations.
1417
1418         * inspector/InspectorAgent.cpp:
1419         (WebCore::InspectorAgent::InspectorAgent): runtime agent is created and deleted along with other agents.
1420         (WebCore::InspectorAgent::setFrontend):
1421         * inspector/InspectorAgent.h:
1422         * inspector/InspectorRuntimeAgent.cpp:
1423         (WebCore::InspectorRuntimeAgent::create):
1424         (WebCore::InspectorRuntimeAgent::InspectorRuntimeAgent):
1425         (WebCore::InspectorRuntimeAgent::evaluate):
1426         * inspector/InspectorRuntimeAgent.h:
1427         (WebCore::InspectorRuntimeAgent::InspectedStateProvider::~InspectedStateProvider):
1428
1429 2011-04-04  Yong Li  <yoli@rim.com>
1430
1431         Reviewed by Antonio Gomes.
1432
1433         https://bugs.webkit.org/show_bug.cgi?id=55969
1434         Fix the issue that document state is not saved when
1435         going backward and ending up with error page.
1436
1437         Test: platform/qt/fast/history/back-to-unreachable-url-then-forward.html
1438
1439         (For manual test, load a non-existent html first, then load
1440         fast/history/resources/check-scroll-position.html, then go
1441         back and go forward. If it doesn't show "SUCCESS" at the bottom
1442         of the page, your browser has failed the test)
1443
1444         * loader/FrameLoader.cpp:
1445         (WebCore::FrameLoader::load):
1446
1447 2011-04-04  Sergio Villar Senin  <svillar@igalia.com>
1448
1449         Reviewed by Martin Robinson.
1450
1451         [GTK] Fix make distcheck for 1.4.0
1452         https://bugs.webkit.org/show_bug.cgi?id=57750
1453
1454         Added a missing header file to the Makefile
1455
1456         * GNUmakefile.am:
1457
1458 2011-04-04  Martin Robinson  <mrobinson@igalia.com>
1459
1460         Reviewed by Xan Lopez.
1461
1462         [GTK] http/tests/plugins/post-url-file.html fails on GTK+
1463         https://bugs.webkit.org/show_bug.cgi?id=55826
1464
1465         Correct the implementation of handlePostReadFile which uses GIO APIs and
1466         actually resizes the buffer to fit the entire size of the file data. This
1467         was likely leading to memory corruption until now.
1468
1469         * plugins/gtk/PluginViewGtk.cpp:
1470         (WebCore::PluginView::handlePostReadFile): Fix this method.
1471
1472 2011-04-04  Andrey Kosyakov  <caseq@chromium.org>
1473
1474         Reviewed by Yury Semikhatsky.
1475
1476         Web Inspector: [Extensions API] add notifications on panels shown/hidden
1477         https://bugs.webkit.org/show_bug.cgi?id=57752
1478
1479         * inspector/front-end/ExtensionAPI.js:
1480         (WebInspector.injectedExtensionAPI.PanelImpl):
1481         * inspector/front-end/ExtensionServer.js:
1482         (WebInspector.ExtensionServer.prototype.notifyPanelShown):
1483         (WebInspector.ExtensionServer.prototype.notifyPanelHidden):
1484         * inspector/front-end/Panel.js:
1485         (WebInspector.Panel.prototype.show):
1486         (WebInspector.Panel.prototype.hide):
1487
1488 2011-04-04  Pavel Podivilov  <podivilov@chromium.org>
1489
1490         Reviewed by Yury Semikhatsky.
1491
1492         Web Inspector: search in resources panel is broken.
1493         https://bugs.webkit.org/show_bug.cgi?id=57631
1494
1495         Search in resources panel should trigger source frame content load.
1496
1497         * inspector/front-end/Panel.js:
1498         (WebInspector.Panel.prototype.jumpToNextSearchResult):
1499         (WebInspector.Panel.prototype.jumpToPreviousSearchResult):
1500         * inspector/front-end/ResourcesPanel.js:
1501         * inspector/front-end/SearchController.js:
1502         (WebInspector.SearchController.prototype.handleShortcut):
1503         (WebInspector.SearchController.prototype.focusSearchField):
1504         * inspector/front-end/SourceFrame.js:
1505         (WebInspector.SourceFrame.prototype.show):
1506         (WebInspector.SourceFrame.prototype._ensureContentLoaded):
1507         (WebInspector.SourceFrame.prototype.performSearch):
1508
1509 2011-04-03  Eric Seidel  <eric@webkit.org>
1510
1511         Reviewed by Ryosuke Niwa.
1512
1513         Split out UnicodeBidi enum into its own header (to allow use in platform)
1514         https://bugs.webkit.org/show_bug.cgi?id=57722
1515
1516         unicode-bidi is a CSS concept.  However the same concept is really needed throughout
1517         the bidi code in platform as well.  So I'm moving the enum to platform.
1518         The only part of the enum which doesn't make much sense to platform/ is "normal".
1519
1520         * WebCore.xcodeproj/project.pbxproj:
1521         * css/CSSPrimitiveValueMappings.h:
1522         * platform/text/UnicodeBidi.h: Added.
1523         * rendering/style/RenderStyle.h:
1524         * rendering/style/RenderStyleConstants.h:
1525
1526 2011-04-04  Andrey Adaikin  <aandrey@google.com>
1527
1528         Reviewed by Yury Semikhatsky.
1529
1530         Web Inspector: Highlighted search tokens would not be shown on long lines in the text viewer
1531         https://bugs.webkit.org/show_bug.cgi?id=57749
1532
1533         * inspector/front-end/TextViewer.js:
1534         (WebInspector.TextEditorMainPanel.prototype.markAndRevealRange):
1535         (WebInspector.TextEditorMainPanel.prototype._paintLine):
1536
1537 2011-04-04  Alexander Pavlov  <apavlov@chromium.org>
1538
1539         Reviewed by Yury Semikhatsky.
1540
1541         Web Inspector: Incorrectly reports warning on missing/incorrect content-type for 304s
1542         https://bugs.webkit.org/show_bug.cgi?id=48525
1543
1544         * inspector/front-end/Resource.js:
1545         (WebInspector.Resource.prototype._mimeTypeIsConsistentWithType):
1546
1547 2011-04-01  Alexander Pavlov  <apavlov@chromium.org>
1548
1549         Reviewed by Yury Semikhatsky.
1550
1551         Web Inspector: appropriateSelectorForNode() invokes the "localName" getter on DOMNode rather than function
1552         https://bugs.webkit.org/show_bug.cgi?id=57632
1553
1554         Moved the affected method onto the DOMNode.prototype as "appropriateSelectorFor".
1555
1556         * inspector/front-end/DOMAgent.js:
1557         (WebInspector.DOMNode.prototype.appropriateSelectorFor):
1558         * inspector/front-end/EventListenersSidebarPane.js:
1559         ():
1560         * inspector/front-end/StylesSidebarPane.js:
1561         (WebInspector.StylesSidebarPane.prototype.addBlankSection):
1562         * inspector/front-end/utilities.js:
1563
1564 2011-04-04  Andrey Kosyakov  <caseq@chromium.org>
1565
1566         Unreviewed. Followup to an incomplete commit in r82806.
1567
1568         * inspector/front-end/ExtensionAPI.js:
1569         (WebInspector.injectedExtensionAPI.PanelWithSidebarImpl.prototype.createSidebarPane):
1570         (WebInspector.injectedExtensionAPI.ExtensionSidebarPaneImpl):
1571         (WebInspector.injectedExtensionAPI.ExtensionSidebarPaneImpl.prototype.setHeight):
1572         (WebInspector.injectedExtensionAPI.ExtensionSidebarPaneImpl.prototype.setExpression):
1573         (WebInspector.injectedExtensionAPI):
1574         * inspector/front-end/ExtensionPanel.js:
1575         (WebInspector.ExtensionSidebarPane):
1576         (WebInspector.ExtensionSidebarPane.prototype.setPage):
1577         (WebInspector.ExtensionSidebarPane.prototype._setObject):
1578         * inspector/front-end/ExtensionServer.js:
1579         (WebInspector.ExtensionServer):
1580         (WebInspector.ExtensionServer.prototype.notifyExtensionSidebarUpdated):
1581         (WebInspector.ExtensionServer.prototype._onCreatePanel):
1582         (WebInspector.ExtensionServer.prototype._onCreateSidebarPane):
1583         (WebInspector.ExtensionServer.prototype.createClientIframe):
1584         (WebInspector.ExtensionServer.prototype._onSetSidebarContent):
1585
1586 2011-04-04  Yury Semikhatsky  <yurys@chromium.org>
1587
1588         Unreviewed. Fix Qt minimal build.
1589
1590         * inspector/InspectorFrontendChannel.h:
1591
1592 2011-04-01  Sergey Vorobyev  <sergeyvorobyev@google.com>
1593
1594         Reviewed by Yury Semikhatsky.
1595
1596         Web Inspector: Separate sendMessageToFrontend function
1597         from InspectorClient to individual interface.
1598         https://bugs.webkit.org/show_bug.cgi?id=57548
1599
1600         Refactoring - covered with existing inspector tests.
1601
1602         * GNUmakefile.am:
1603         * WebCore.gypi:
1604         * WebCore.vcproj/WebCore.vcproj:
1605         * WebCore.xcodeproj/project.pbxproj:
1606         * inspector/CodeGeneratorInspector.pm:
1607         * inspector/InspectorClient.h:
1608         * inspector/InspectorFrontendChannel.h: Added.
1609         (WebCore::InspectorFrontendChannel::~InspectorFrontendChannel):
1610
1611 2011-04-04  Nico Weber  <thakis@chromium.org>
1612
1613         Reviewed by Eric Seidel.
1614
1615         Prefer a using directive over qualified names in LocalizedNumberICU.cpp
1616         https://bugs.webkit.org/show_bug.cgi?id=57742
1617
1618         Requested by ap in https://bugs.webkit.org/show_bug.cgi?id=57715
1619
1620         * platform/text/LocalizedNumberICU.cpp:
1621         (WebCore::createFormatterForCurrentLocale):
1622         (WebCore::numberFormatter):
1623         (WebCore::parseLocalizedNumber):
1624         (WebCore::formatLocalizedNumber):
1625
1626 2011-04-04  Andrey Adaikin  <aandrey@google.com>
1627
1628         Reviewed by Yury Semikhatsky.
1629
1630         Web Inspector: Breakpoints in the gutter stay static while editing the text
1631         https://bugs.webkit.org/show_bug.cgi?id=57616
1632
1633         * inspector/front-end/SourceFrame.js:
1634         (WebInspector.SourceFrame):
1635         (WebInspector.SourceFrame.prototype._saveViewerState):
1636         (WebInspector.SourceFrame.prototype._restoreViewerState):
1637         (WebInspector.SourceFrame.prototype._endEditing):
1638         (WebInspector.SourceFrame.prototype._lineNumberAfterEditing):
1639         (WebInspector.SourceFrame.prototype.addBreakpoint):
1640         (WebInspector.SourceFrame.prototype.removeBreakpoint):
1641         * inspector/front-end/TextViewer.js:
1642         (WebInspector.TextViewer.prototype._syncDecorationsForLine):
1643         (WebInspector):
1644         (WebInspector.TextEditorChunkedPanel.prototype.removeDecoration):
1645         (WebInspector.TextEditorChunkedPanel.prototype.makeLineAChunk):
1646         (WebInspector.TextEditorChunkedPanel.prototype._splitChunkOnALine):
1647         (WebInspector.TextEditorMainPanel.prototype._splitChunkOnALine):
1648
1649 2011-04-04  Ilya Tikhonovsky  <loislo@chromium.org>
1650
1651         Reviewed by Yury Semikhatsky.
1652
1653         Web Inspector: remove obsolete doc generating code from CodeGenerator.
1654         https://bugs.webkit.org/show_bug.cgi?id=57748
1655
1656         * inspector/CodeGeneratorInspector.pm:
1657
1658 2011-04-04  Andrey Kosyakov  <caseq@chromium.org>
1659
1660         Reviewed by Yury Semikhatsky.
1661
1662         Web Inspector: [Extensions API] Merge WatchExpressionSidebarPane into ExtensionSidebarPane
1663         https://bugs.webkit.org/show_bug.cgi?id=57622
1664
1665         Merged WatchExpressionSidebarPane into ExtensionSidebarPane, added setPage(url).
1666         Fixed wrong getter in schema (scripts -> elements)
1667
1668         * inspector/front-end/ExtensionAPI.js:
1669         (WebInspector.injectedExtensionAPI.WatchExpressionSidebarPaneImpl.prototype.setObject):
1670         (WebInspector.injectedExtensionAPI.WatchExpressionSidebarPaneImpl.prototype.setPage):
1671         * inspector/front-end/ExtensionAPISchema.json:
1672         * inspector/front-end/ExtensionServer.js:
1673         (WebInspector.ExtensionServer.prototype._onSetSidebarPage):
1674
1675 2011-04-04  Ilya Tikhonovsky  <loislo@chromium.org>
1676
1677         Reviewed by Pavel Feldman.
1678
1679         Web Inspector: introduce support of 'optional' flag for command arguments.
1680         https://bugs.webkit.org/show_bug.cgi?id=57698
1681
1682         * inspector/CodeGeneratorInspector.pm:
1683         * inspector/Inspector.json:
1684         * inspector/InspectorDebuggerAgent.cpp:
1685         (WebCore::InspectorDebuggerAgent::setBreakpointByUrl):
1686         (WebCore::InspectorDebuggerAgent::setBreakpoint):
1687         (WebCore::InspectorDebuggerAgent::evaluateOnCallFrame):
1688         * inspector/InspectorDebuggerAgent.h:
1689         * inspector/InspectorPageAgent.cpp:
1690         (WebCore::InspectorPageAgent::reloadPage):
1691         * inspector/InspectorPageAgent.h:
1692         * inspector/InspectorResourceAgent.cpp:
1693         (WebCore::InspectorResourceAgent::getResourceContent):
1694         * inspector/InspectorResourceAgent.h:
1695         * inspector/InspectorRuntimeAgent.cpp:
1696         (WebCore::InspectorRuntimeAgent::evaluate):
1697         * inspector/InspectorRuntimeAgent.h:
1698         * inspector/generate-inspector-idl:
1699
1700 2011-04-04  Yury Semikhatsky  <yurys@chromium.org>
1701
1702         Reviewed by Pavel Feldman.
1703
1704         Web Inspector: InjectedScriptManager should not try to access inspected window in case of workers
1705         https://bugs.webkit.org/show_bug.cgi?id=57637
1706
1707         * bindings/js/JSInjectedScriptManager.cpp:
1708         (WebCore::InjectedScriptManager::injectedScriptFor):
1709         * bindings/v8/custom/V8InjectedScriptManager.cpp:
1710         (WebCore::InjectedScriptManager::injectedScriptFor):
1711         * inspector/InjectedScript.cpp:
1712         (WebCore::InjectedScript::InjectedScript):
1713         (WebCore::InjectedScript::canAccessInspectedWindow):
1714         * inspector/InjectedScript.h:
1715         * inspector/InjectedScriptManager.cpp:
1716         (WebCore::InjectedScriptManager::createForPage):
1717         (WebCore::InjectedScriptManager::createForWorker):
1718         (WebCore::InjectedScriptManager::InjectedScriptManager): access check function is passed as a parameter to the constructor
1719         and it depends on which type of context we're inspecting(worker or page).
1720         (WebCore::InjectedScriptManager::canAccessInspectedWorkerContext):
1721         * inspector/InjectedScriptManager.h:
1722         * inspector/InspectorController.cpp:
1723         (WebCore::InspectorController::InspectorController):
1724
1725 2011-04-04  Ryuan Choi  <ryuan.choi@samsung.com>
1726
1727         Reviewed by Eric Seidel.
1728
1729         V8StringCallback.cpp requires V8Binding.h
1730         https://bugs.webkit.org/show_bug.cgi?id=57699
1731
1732         No new tests required because of just adding header file.
1733
1734         * bindings/scripts/CodeGeneratorV8.pm:
1735
1736 2011-04-03  Ryuan Choi  <ryuan.choi@samsung.com>
1737
1738         Reviewed by Eric Seidel.
1739
1740         [CMAKE] Clean duplicated files in WebCore_Sources
1741         https://bugs.webkit.org/show_bug.cgi?id=57741
1742
1743         No new tests, Only duplicated files were removed.
1744
1745         * CMakeLists.txt:
1746
1747 2011-04-03  Luke Macpherson   <macpherson@chromium.org>
1748
1749         Reviewed by Darin Adler.
1750
1751         Fix 2-space indentation introduced in bug 54706.
1752         https://bugs.webkit.org/show_bug.cgi?id=57740
1753
1754         No new tests - whitespace changes only.
1755
1756         * css/CSSStyleSelector.cpp:
1757         (WebCore::CSSStyleSelector::applyProperty):
1758         Convert 2-space indentation to 4-space indentation.
1759
1760 2011-04-03  Luke Macpherson   <macpherson@chromium.org>
1761
1762         Reviewed by Dimitri Glazkov.
1763
1764         Make CSSStyleApplyProperty non-copyable
1765         https://bugs.webkit.org/show_bug.cgi?id=57738
1766
1767         No new functionality added so no new tests required.
1768
1769         * css/CSSStyleApplyProperty.h:
1770         Added WTF_MAKE_NONCOPYABLE(CSSStyleApplyProperty) to ensure singleton stays single.
1771
1772 2011-04-03  Dan Bernstein  <mitz@apple.com>
1773
1774         Reviewed by Maciej Stachowiak.
1775
1776         fast/images/extra-image-in-image-document.html crashes when run after embed-image.html
1777         https://bugs.webkit.org/show_bug.cgi?id=57733
1778
1779         The crash happens because resetting the page scale as part of preparing the WebView for the
1780         next test triggered layout, which in turn caused a plug-in to make a resource request, and
1781         DumpRenderTree's delegate to be dispatched. The delegate doesn’t expect to be called between
1782         tests, and it references the layout test controller, which is null.
1783
1784         * page/Frame.cpp:
1785         (WebCore::Frame::scalePage): Avoid an unnecessary layout if the page scale isn’t changing. This
1786         is more efficient, and has the side effect of avoiding the crash in DumpRenderTree, although
1787         DumpRenderTree could still crash when after a test with disabled plug-ins and a non-1 page scale.
1788         I think there are currently no such tests, so I am not fixing DumpRenderTree.
1789
1790 2011-04-03  Eric Seidel  <eric@webkit.org>
1791
1792         Reviewed by Ryosuke Niwa.
1793
1794         Teach InlineIterator how to work from any root, not just a RenderBlock
1795         https://bugs.webkit.org/show_bug.cgi?id=57726
1796
1797         For implementing bidi-unicode: isolate, we need to be able to run the
1798         bidi algorithm over a subtree of inlines, not just from a block root.
1799         This is the first step in making this possible.
1800
1801         * rendering/InlineIterator.h:
1802         (WebCore::InlineIterator::InlineIterator):
1803         (WebCore::InlineIterator::root):
1804         (WebCore::bidiNext):
1805         (WebCore::bidiFirst):
1806         (WebCore::InlineIterator::increment):
1807         (WebCore::InlineBidiResolver::appendRun):
1808         * rendering/RenderBlockLineLayout.cpp:
1809         (WebCore::RenderBlock::findNextLineBreak):
1810
1811 2011-04-03  Eric Seidel  <eric@webkit.org>
1812
1813         Reviewed by Dan Bernstein.
1814
1815         Split out handling of trailing spaces from layoutInlineChildren
1816         https://bugs.webkit.org/show_bug.cgi?id=57432
1817
1818         There is much more we could split out from this function, but this is a start.
1819
1820         I suspect this is very hot code.  Hopefully the compiler will do the right thing.
1821         If it doesn't the Chromium PLT bots will tell us.
1822
1823         * rendering/RenderBlock.h:
1824         * rendering/RenderBlockLineLayout.cpp:
1825         (WebCore::RenderBlock::handleTrailingSpaces):
1826         (WebCore::RenderBlock::layoutInlineChildren):
1827
1828 2011-03-21  Ryosuke Niwa  <rniwa@webkit.org>
1829
1830         Reviewed by Eric Seidel.
1831
1832         editing commands shouldn't run when there's no body
1833         https://bugs.webkit.org/show_bug.cgi?id=56771
1834
1835         The bug was caused by WebKit's not checking the existence of root editable element
1836         in enabled* functions. Although isContentEditable returns true whenever we're in design mode,
1837         we should not run editing commands in a document without a body element editable because
1838         doing so results in appending a non-body element to the document node.
1839
1840         Fixed the bug by modifying various enabled* functions to ensure we have a root editable element.
1841         New behavior tries to match that of Firefox except StyleWithCSS, which Firefox seems to ignore
1842         when there are no body element. Since StyleWithCSS is a document's state or property, we allow
1843         execCommand('StyleWithCSS') even in a document without a body element.
1844
1845         WebKit's and Firefox's behaviors also deviate in insert-image-with-selecting-document.html.
1846         Whereas WebKit respects selection set by script and ignores execCommand, Firefox modifies
1847         the selection when document.write("x") is ran and successfully inserts image.
1848
1849         Thus, empty-document-delete.html and empty-document-justify-right.html both pass on Firefox
1850         while empty-document-stylewithcss.html and insert-image-with-selecting-document.html both fail.
1851
1852         Since Internet Explorer does not allow execCommand to run under design mode properly, we could
1853         not test its behavior.
1854
1855         Tests: editing/editability/empty-document-delete.html
1856                editing/editability/empty-document-justify-right.html
1857                editing/editability/empty-document-stylewithcss.html
1858                editing/execCommand/insert-image-with-selecting-document.html
1859
1860         * editing/Editor.cpp:
1861         (WebCore::Editor::canEdit): Verify that the root editable element exists
1862         instead of just checking that selection endpoints are editable because
1863         selection endpoints could be document node without a body element in design mode
1864         and we don't want to consider such a document editable.
1865         (WebCore::Editor::canDelete): Ditto.
1866         * editing/EditorCommand.cpp:
1867         (WebCore::enabledInEditableText): Ditto.
1868         (WebCore::enabledInRichlyEditableText): Ditto.
1869         (WebCore::enabledDelete): Call enabledCut and enabledInEditableText instead
1870         of duplicating the code in order to fix the same bug.
1871
1872 2011-04-02  Dan Bernstein  <mitz@apple.com>
1873
1874         Reviewed by Maciej Stachowiak.
1875
1876         REGRESSION (r82786): Media controls render incorrectly on GTK and Qt
1877         https://bugs.webkit.org/show_bug.cgi?id=57719
1878
1879         r82786 exposed an incorrect assumption inRenderMediaControlTimeDisplay::layout()
1880         that the timeline container is the parent of the time display. This is not true
1881         with the GTK media style, where the current time display is an inline box, and
1882         thus wrapped in an anonymous flexible box. The code was incorrectly considering
1883         the width of the anonymous box and deciding to hide the time display. Prior to
1884         r82786, this mistake was corrected by the call to computeLogicalWidth() in line layout.
1885
1886         * rendering/MediaControlElements.cpp:
1887         (WebCore::RenderMediaControlTimeDisplay::layout): Changed to skip past anonymous ancestors.
1888
1889 2011-04-02  Nico Weber  <thakis@chromium.org>
1890
1891         Reviewed by Adam Barth.
1892
1893         Explicitly use icu namespace for ports building with U_USING_ICU_NAMESPACE=0
1894
1895         By default, ICU includes |using namespace icu;| in its header files
1896         for backwards compatibility. Clients can define
1897         U_USING_ICU_NAMESPACE=0 to tell ICU to not do this. Prefixing all ICU
1898         classes with |icu::| makes this file compile no matter what
1899         U_USING_ICU_NAMESPACE is set to.
1900
1901         https://bugs.webkit.org/show_bug.cgi?id=57715
1902
1903         * platform/text/LocalizedNumberICU.cpp:
1904         (WebCore::createFormatterForCurrentLocale):
1905         (WebCore::numberFormatter):
1906         (WebCore::parseLocalizedNumber):
1907         (WebCore::formatLocalizedNumber):
1908
1909 2011-04-02  Dan Bernstein  <mitz@apple.com>
1910
1911         Reviewed by Dave Hyatt.
1912
1913         Remove an unnecessary extra computeLogicalWidth() from line layout
1914         https://bugs.webkit.org/show_bug.cgi?id=57711
1915
1916         Changes in behavior (MathML progression) covered by existing layout tests.
1917
1918         * rendering/RenderBlockLineLayout.cpp:
1919         (WebCore::RenderBlock::computeInlineDirectionPositionsForLine): Removed a
1920         call to computeLogicalWidth(). Because of <http://webkit.org/b/57700>, this
1921         actually prevents MathML rows from reverting to an incorrect width.
1922
1923 2011-04-02  Dan Bernstein  <mitz@apple.com>
1924
1925         Reviewed by Beth Dakin.
1926
1927         <details> marker loses its margin
1928         https://bugs.webkit.org/show_bug.cgi?id=57713
1929
1930         * rendering/RenderDetails.cpp:
1931         (WebCore::RenderDetails::computePreferredLogicalWidths): Override to update
1932         the marker location.
1933         * rendering/RenderDetails.h:
1934         (WebCore::RenderDetails::renderName): Made private.
1935         (WebCore::RenderDetails::isDetails): Ditto.
1936         * rendering/RenderDetailsMarker.cpp:
1937         (WebCore::RenderDetailsMarker::computePreferredLogicalWidths): Set the margins
1938         in the style, like RenderListMarker does.
1939         (WebCore::RenderDetailsMarker::layout): Set the margins from the style.
1940
1941 2011-04-02  Andy Estes  <aestes@apple.com>
1942
1943         Reviewed by Oliver Hunt.
1944
1945         REGRESSION (r69237): Black border around map elements while using an image map on Mac platform
1946         https://bugs.webkit.org/show_bug.cgi?id=52518
1947
1948         Test: fast/images/imagemap-focus-ring-zero-outline-width.html
1949
1950         * rendering/RenderImage.cpp:
1951         (WebCore::RenderImage::paintAreaElementFocusRing): Return early if outlineWidth is 0.
1952
1953 2011-04-02  Beth Dakin  <bdakin@apple.com>
1954
1955         Reviewed by Sam Weinig.
1956
1957         https://bugs.webkit.org/show_bug.cgi?id=57605
1958         Frame::pageScaleFactor() should not affect getBoundingClientRect() or 
1959         getClientRects()
1960         -and corresponding-
1961         <rdar://problem/9194541>
1962
1963         New functions adjust*ForPageScale() are analogous to adjust*ForAbsoluteZoom().
1964         * dom/Element.cpp:
1965         (WebCore::Element::getClientRects):
1966         (WebCore::Element::getBoundingClientRect):
1967         * dom/Range.cpp:
1968         (WebCore::adjustFloatQuadsForScrollAndAbsoluteZoomAndPageScale):
1969         (WebCore::Range::getBorderAndTextQuads):
1970         * rendering/RenderObject.h:
1971         (WebCore::adjustFloatPointForPageScale):
1972         (WebCore::adjustFloatQuadForPageScale):
1973         (WebCore::adjustFloatRectForPageScale):
1974
1975 2011-04-02  Dan Bernstein  <mitz@apple.com>
1976
1977         Reverted r82775 due to changes in <details> test results, which are
1978         likely progressions.
1979
1980         * rendering/RenderBlockLineLayout.cpp:
1981         (WebCore::RenderBlock::computeInlineDirectionPositionsForLine): Removed a
1982
1983 2011-04-02  Dan Bernstein  <mitz@apple.com>
1984
1985         Reviewed by Dave Hyatt.
1986
1987         Remove an unnecessary extra computeLogicalWidth() from line layout
1988         https://bugs.webkit.org/show_bug.cgi?id=57711
1989
1990         Changes in behavior (MathML progression) covered by existing layout tests.
1991
1992         * rendering/RenderBlockLineLayout.cpp:
1993         (WebCore::RenderBlock::computeInlineDirectionPositionsForLine): Removed a
1994         call to computeLogicalWidth(). Because of <http://webkit.org/b/57700>, this
1995         actually prevents MathML rows from reverting to an incorrect width.
1996
1997 2011-04-02  Ryuan Choi  <ryuan.choi@samsung.com>
1998
1999         Reviewed by Martin Robinson.
2000
2001         [GTK] Fix leaked pointer in FontGtk.cpp
2002         https://bugs.webkit.org/show_bug.cgi?id=57307
2003
2004         Fix a memory leak.
2005
2006         No new functionality, so no new tests.
2007
2008         * platform/graphics/gtk/FontGtk.cpp:
2009         (WebCore::utf16ToUtf8): Rename utf16_to_utf8 and fix indentation.
2010         (WebCore::convertUniCharToUTF8):
2011
2012 2011-04-02  Ilya Tikhonovsky  <loislo@chromium.org>
2013
2014         Reviewed by Pavel Feldman.
2015
2016         Web Inspector: we should be able to have in and out arguments of a command with same name.
2017         https://bugs.webkit.org/show_bug.cgi?id=57701
2018
2019         * inspector/CodeGeneratorInspector.pm:
2020         * inspector/Inspector.json:
2021
2022 2011-04-01  Ilya Tikhonovsky  <loislo@chromium.org>
2023
2024         Not reviewed trivial change.
2025
2026         Web Inspector: The page agent should be enabled even if JAVASCRIPT_DEBUGGER is off.
2027         Followup change for r82281.
2028         https://bugs.webkit.org/show_bug.cgi?id=57327
2029
2030         * inspector/InspectorPageAgent.cpp:
2031         * inspector/InspectorPageAgent.h:
2032
2033 2011-04-01  Michael Saboff  <msaboff@apple.com>
2034
2035         Reviewed by Darin Adler.
2036
2037         Cached Resource Overhead Space Usage and Accounting Inaccurate
2038         https://bugs.webkit.org/show_bug.cgi?id=57488
2039
2040         Fixed windows test failures.
2041         Changed the fixed overhead value for ResourceResponse to 3800 bytes.
2042         Modified ResourceResponse::platformLazyInit() to handle "base" level
2043         attributes or all attributes.  The base attributes, like URL, status
2044         code, mime type and a few header fields (mostly cache related) are
2045         suitable for most resources.  This reduces the per resource memory
2046         needs by over 1K bytes per resource thus saving memory in the cache.
2047         Collectively, these two changes bring the overhead memory calculation
2048         in line with reality.
2049
2050         No new tests added due to existing tests cover areas of change and
2051         there is no functional change.  The change is limited to reducing 
2052         memory usage along existing paths.
2053
2054         * loader/cache/CachedResource.cpp:
2055         (WebCore::CachedResource::canUseCacheValidator):
2056         * platform/network/ResourceResponseBase.cpp:
2057         (WebCore::ResourceResponseBase::adopt):
2058         (WebCore::ResourceResponseBase::isHTTP):
2059         (WebCore::ResourceResponseBase::url):
2060         (WebCore::ResourceResponseBase::setURL):
2061         (WebCore::ResourceResponseBase::mimeType):
2062         (WebCore::ResourceResponseBase::setMimeType):
2063         (WebCore::ResourceResponseBase::expectedContentLength):
2064         (WebCore::ResourceResponseBase::setExpectedContentLength):
2065         (WebCore::ResourceResponseBase::textEncodingName):
2066         (WebCore::ResourceResponseBase::setTextEncodingName):
2067         (WebCore::ResourceResponseBase::suggestedFilename):
2068         (WebCore::ResourceResponseBase::setSuggestedFilename):
2069         (WebCore::ResourceResponseBase::httpStatusCode):
2070         (WebCore::ResourceResponseBase::setHTTPStatusCode):
2071         (WebCore::ResourceResponseBase::httpStatusText):
2072         (WebCore::ResourceResponseBase::setHTTPStatusText):
2073         (WebCore::ResourceResponseBase::httpHeaderField):
2074         (WebCore::ResourceResponseBase::setHTTPHeaderField):
2075         (WebCore::ResourceResponseBase::httpHeaderFields):
2076         (WebCore::ResourceResponseBase::parseCacheControlDirectives):
2077         (WebCore::ResourceResponseBase::hasCacheValidatorFields):
2078         (WebCore::ResourceResponseBase::date):
2079         (WebCore::ResourceResponseBase::age):
2080         (WebCore::ResourceResponseBase::expires):
2081         (WebCore::ResourceResponseBase::lastModified):
2082         (WebCore::ResourceResponseBase::isAttachment):
2083         (WebCore::ResourceResponseBase::setLastModifiedDate):
2084         (WebCore::ResourceResponseBase::lastModifiedDate):
2085         (WebCore::ResourceResponseBase::wasCached):
2086         (WebCore::ResourceResponseBase::connectionReused):
2087         (WebCore::ResourceResponseBase::setConnectionReused):
2088         (WebCore::ResourceResponseBase::connectionID):
2089         (WebCore::ResourceResponseBase::setConnectionID):
2090         (WebCore::ResourceResponseBase::resourceLoadTiming):
2091         (WebCore::ResourceResponseBase::setResourceLoadTiming):
2092         (WebCore::ResourceResponseBase::resourceLoadInfo):
2093         (WebCore::ResourceResponseBase::setResourceLoadInfo):
2094         (WebCore::ResourceResponseBase::lazyInit):
2095         * platform/network/ResourceResponseBase.h:
2096         (WebCore::ResourceResponseBase::platformLazyInit):
2097         * platform/network/cf/ResourceResponse.h:
2098         (WebCore::ResourceResponse::ResourceResponse):
2099         (WebCore::ResourceResponse::memoryUsage):
2100         * platform/network/cf/ResourceResponseCFNet.cpp:
2101         (WebCore::ResourceResponse::platformLazyInit):
2102         * platform/network/mac/ResourceResponseMac.mm:
2103         (WebCore::ResourceResponse::platformLazyInit):
2104
2105 2011-04-01  Anantanarayanan G Iyengar  <ananta@chromium.org>
2106
2107         Reviewed by Adam Barth.
2108
2109         https://bugs.webkit.org/show_bug.cgi?id=45855
2110         Windowless plugins added dynamically to the DOM should receive paint events.
2111         This is done by ensuring that the plugin widget is marked for painting when
2112         it is added.
2113
2114         Test: plugins/windowless_plugin_paint_test.html
2115
2116         * rendering/RenderWidget.cpp:
2117         (WebCore::RenderWidget::setWidget):
2118
2119 2011-04-01  Mike Reed  <reed@google.com>
2120
2121         Reviewed by James Robinson.
2122
2123         always use native font rendering on skia_gpu
2124         fixes a crash when SKIA_GPU is enabled, as we can't call getTopPlatformDevice()
2125         https://bugs.webkit.org/show_bug.cgi?id=57663
2126
2127         No new tests. existing rendering tests will exercise this
2128
2129         * platform/graphics/skia/PlatformContextSkia.cpp:
2130         (WebCore::PlatformContextSkia::isNativeFontRenderingAllowed):
2131
2132 2011-04-01  Sheriff Bot  <webkit.review.bot@gmail.com>
2133
2134         Unreviewed, rolling out r82712, r82729, and r82746.
2135         http://trac.webkit.org/changeset/82712
2136         http://trac.webkit.org/changeset/82729
2137         http://trac.webkit.org/changeset/82746
2138         https://bugs.webkit.org/show_bug.cgi?id=57682
2139
2140         fast/frames/frame-programmatic-noresize.html is failing on
2141         Windows bots. Will look into this offline. (Requested by dydx
2142         on #webkit).
2143
2144         * html/HTMLFrameElement.cpp:
2145         (WebCore::HTMLFrameElement::HTMLFrameElement):
2146         (WebCore::HTMLFrameElement::attach):
2147         (WebCore::HTMLFrameElement::parseMappedAttribute):
2148         * html/HTMLFrameElement.h:
2149         (WebCore::HTMLFrameElement::noResize):
2150         * rendering/RenderFrame.cpp:
2151         * rendering/RenderFrame.h:
2152         * rendering/RenderFrameSet.cpp:
2153         * rendering/RenderFrameSet.h:
2154
2155 2011-04-01  Adam Barth  <abarth@webkit.org>
2156
2157         Reviewed by Tony Chang.
2158
2159         Valgrind error in _ZN7WebCore8Document11updateTitleERKNS_19StringWithDirectionE
2160         https://bugs.webkit.org/show_bug.cgi?id=57656
2161
2162         We should initialize memory when constructing objects.
2163
2164         * platform/text/StringWithDirection.h:
2165         (WebCore::StringWithDirection::StringWithDirection):
2166
2167 2011-04-01  Jer Noble  <jer.noble@apple.com>
2168
2169         Reviewed by Darin Adler.
2170
2171         WebKit2: Link from PDF opens in a new tab instead of in the same tab
2172         https://bugs.webkit.org/show_bug.cgi?id=57528
2173
2174         * WebCore.exp.in: Export MouseEvent::create().
2175
2176 2011-04-01  John Bauman  <jbauman@chromium.org>
2177
2178         Reviewed by Kenneth Russell.
2179
2180         Avoid decoding images twice in texImage2D
2181         https://bugs.webkit.org/show_bug.cgi?id=51498
2182
2183         Make sure to redecode the image only if it's not opaque and texImage2D
2184         wouldn't premultiply it anyway.
2185
2186         * platform/graphics/BitmapImage.h:
2187         * platform/graphics/cg/GraphicsContext3DCG.cpp:
2188         (WebCore::GraphicsContext3D::getImageData):
2189         * platform/graphics/skia/GraphicsContext3DSkia.cpp:
2190         (WebCore::GraphicsContext3D::getImageData):
2191
2192 2011-04-01  Alexey Proskuryakov  <ap@apple.com>
2193
2194         32-bit Mac build fix.
2195
2196         * dom/KeyboardEvent.h: (WebCore::KeypressCommand::KeypressCommand): Use 0U to index a String
2197         to avoid ambiguity.
2198
2199 2011-04-01  Alexey Proskuryakov  <ap@apple.com>
2200
2201         Reviewed by Darin Adler.
2202
2203         Make WebKit2 text input handling more like WebKit1
2204         https://bugs.webkit.org/show_bug.cgi?id=57649
2205
2206         * dom/KeyboardEvent.h: (WebCore::KeypressCommand::KeypressCommand): Put back the assertions
2207         we used to have. It is dangerous to confuse editor commands and selector names - besides the
2208         presence of a semicolon, they sometimes have different names, and WebKit2 failed to map those.
2209
2210 2011-04-01  Sheriff Bot  <webkit.review.bot@gmail.com>
2211
2212         Unreviewed, rolling out r82711.
2213         http://trac.webkit.org/changeset/82711
2214         https://bugs.webkit.org/show_bug.cgi?id=57657
2215
2216         Made every test crash on XP and Win7 (Requested by
2217         abarth|gardening on #webkit).
2218
2219         * loader/cache/CachedResource.cpp:
2220         (WebCore::CachedResource::canUseCacheValidator):
2221         * platform/network/ResourceResponseBase.cpp:
2222         (WebCore::ResourceResponseBase::adopt):
2223         (WebCore::ResourceResponseBase::isHTTP):
2224         (WebCore::ResourceResponseBase::url):
2225         (WebCore::ResourceResponseBase::setURL):
2226         (WebCore::ResourceResponseBase::mimeType):
2227         (WebCore::ResourceResponseBase::setMimeType):
2228         (WebCore::ResourceResponseBase::expectedContentLength):
2229         (WebCore::ResourceResponseBase::setExpectedContentLength):
2230         (WebCore::ResourceResponseBase::textEncodingName):
2231         (WebCore::ResourceResponseBase::setTextEncodingName):
2232         (WebCore::ResourceResponseBase::suggestedFilename):
2233         (WebCore::ResourceResponseBase::setSuggestedFilename):
2234         (WebCore::ResourceResponseBase::httpStatusCode):
2235         (WebCore::ResourceResponseBase::setHTTPStatusCode):
2236         (WebCore::ResourceResponseBase::httpStatusText):
2237         (WebCore::ResourceResponseBase::setHTTPStatusText):
2238         (WebCore::ResourceResponseBase::httpHeaderField):
2239         (WebCore::ResourceResponseBase::setHTTPHeaderField):
2240         (WebCore::ResourceResponseBase::httpHeaderFields):
2241         (WebCore::ResourceResponseBase::parseCacheControlDirectives):
2242         (WebCore::ResourceResponseBase::date):
2243         (WebCore::ResourceResponseBase::age):
2244         (WebCore::ResourceResponseBase::expires):
2245         (WebCore::ResourceResponseBase::lastModified):
2246         (WebCore::ResourceResponseBase::isAttachment):
2247         (WebCore::ResourceResponseBase::setLastModifiedDate):
2248         (WebCore::ResourceResponseBase::lastModifiedDate):
2249         (WebCore::ResourceResponseBase::wasCached):
2250         (WebCore::ResourceResponseBase::connectionReused):
2251         (WebCore::ResourceResponseBase::setConnectionReused):
2252         (WebCore::ResourceResponseBase::connectionID):
2253         (WebCore::ResourceResponseBase::setConnectionID):
2254         (WebCore::ResourceResponseBase::resourceLoadTiming):
2255         (WebCore::ResourceResponseBase::setResourceLoadTiming):
2256         (WebCore::ResourceResponseBase::resourceLoadInfo):
2257         (WebCore::ResourceResponseBase::setResourceLoadInfo):
2258         (WebCore::ResourceResponseBase::lazyInit):
2259         * platform/network/ResourceResponseBase.h:
2260         (WebCore::ResourceResponseBase::platformLazyInit):
2261         * platform/network/cf/ResourceResponse.h:
2262         (WebCore::ResourceResponse::ResourceResponse):
2263         (WebCore::ResourceResponse::memoryUsage):
2264         * platform/network/cf/ResourceResponseCFNet.cpp:
2265         (WebCore::ResourceResponse::platformLazyInit):
2266         * platform/network/mac/ResourceResponseMac.mm:
2267         (WebCore::ResourceResponse::platformLazyInit):
2268
2269 2011-04-01  Matthew Delaney  <mdelaney@apple.com>
2270
2271         Reviewed by Simon Fraser.
2272
2273         Behavior of isAccelerated() for a IOSurface-backed canvas should be consistent with accelerated status of its ImageBuffer
2274         https://bugs.webkit.org/show_bug.cgi?id=57651
2275
2276         No new tests. This patch does not affect outward behavior.
2277
2278         * html/canvas/CanvasRenderingContext2D.cpp:
2279         (WebCore::CanvasRenderingContext2D::isAccelerated):
2280         * platform/graphics/ImageBuffer.h:
2281         (WebCore::ImageBuffer::isAccelerated):
2282
2283 2011-04-01  Daniel Bates  <dbates@rim.com>
2284
2285         Reviewed by Darin Adler.
2286
2287         Frame's noResize attribute can not be set by JavaScript
2288         https://bugs.webkit.org/show_bug.cgi?id=14845
2289
2290         Tests: fast/frames/frame-inherit-noresize-from-frameset.html
2291                fast/frames/frame-programmatic-noresize.html
2292                fast/frames/frame-with-noresize-can-be-resized-after-removal-of-noresize.html
2293                fast/frames/frame-with-noresize-can-be-resized-after-setting-noResize-to-false.html
2294
2295         Implements support to programmatically allow and disallow frame resizing.
2296
2297         Currently, HTMLFrameElement::parseMappedAttribute() is hardcoded to disallow frame resize (i.e.
2298         m_noResize = true) when either the noresize DOM attribute is specified (or existed at some
2299         point in time) or the value of the noResize attribute is modified. Instead we should allow/disallow
2300         frame resize depending on the presence of the noresize DOM attribute/the value of the noResize
2301         attribute.
2302
2303         * html/HTMLFrameElement.cpp:
2304         (WebCore::HTMLFrameElement::HTMLFrameElement):
2305         (WebCore::HTMLFrameElement::noResize): Made this a non-inline function since this
2306         code path isn't performance critical.
2307         (WebCore::HTMLFrameElement::attach): Removed code to inherit noresize attribute from
2308         parent <frameset> since this functionality is part of RenderFrameSet::computeEdgeInfo().
2309         (WebCore::HTMLFrameElement::parseMappedAttribute):
2310         * html/HTMLFrameElement.h:
2311         * rendering/RenderFrame.cpp:
2312         (WebCore::RenderFrame::updateFromElement): Added.
2313         * rendering/RenderFrame.h:
2314         * rendering/RenderFrameSet.cpp:
2315         (WebCore::RenderFrameSet::notifyFrameEdgeInfoChanged): Added.
2316         * rendering/RenderFrameSet.h:
2317
2318 2011-04-01  Michael Saboff  <msaboff@apple.com>
2319
2320         Reviewed by Darin Adler.
2321
2322         Cached Resource Overhead Space Usage and Accounting Inaccurate
2323         https://bugs.webkit.org/show_bug.cgi?id=57488
2324
2325         Changed the fixed overhead value for ResourceResponse to 3800 bytes.
2326         Modified ResourceResponse::platformLazyInit() to handle "base" level
2327         attributes or all attributes.  The base attributes, like URL, status
2328         code, mime type and a few header fields (mostly cache related) are
2329         suitable for most resources.  This reduces the per resource memory
2330         needs by over 1K bytes per resource thus saving memory in the cache.
2331         Collectively, these two changes bring the overhead memory calculation
2332         in line with reality.
2333
2334         No new tests added due to existing tests cover areas of change and
2335         there is no functional change.  The change is limited to reducing 
2336         memory usage along existing paths.
2337
2338         * loader/cache/CachedResource.cpp:
2339         (WebCore::CachedResource::canUseCacheValidator):
2340         * platform/network/ResourceResponseBase.cpp:
2341         (WebCore::ResourceResponseBase::isHTTP):
2342         (WebCore::ResourceResponseBase::url):
2343         (WebCore::ResourceResponseBase::setURL):
2344         (WebCore::ResourceResponseBase::mimeType):
2345         (WebCore::ResourceResponseBase::setMimeType):
2346         (WebCore::ResourceResponseBase::expectedContentLength):
2347         (WebCore::ResourceResponseBase::setExpectedContentLength):
2348         (WebCore::ResourceResponseBase::textEncodingName):
2349         (WebCore::ResourceResponseBase::setTextEncodingName):
2350         (WebCore::ResourceResponseBase::suggestedFilename):
2351         (WebCore::ResourceResponseBase::setSuggestedFilename):
2352         (WebCore::ResourceResponseBase::httpStatusCode):
2353         (WebCore::ResourceResponseBase::setHTTPStatusCode):
2354         (WebCore::ResourceResponseBase::httpHeaderField):
2355         (WebCore::ResourceResponseBase::setHTTPHeaderField):
2356         (WebCore::ResourceResponseBase::parseCacheControlDirectives):
2357         (WebCore::ResourceResponseBase::hasCacheValidatorFields):
2358         (WebCore::ResourceResponseBase::date):
2359         (WebCore::ResourceResponseBase::age):
2360         (WebCore::ResourceResponseBase::expires):
2361         (WebCore::ResourceResponseBase::lastModified):
2362         (WebCore::ResourceResponseBase::lazyInit):
2363         * platform/network/ResourceResponseBase.h:
2364         (WebCore::ResourceResponseBase::platformLazyInit):
2365         * platform/network/cf/ResourceResponse.h:
2366         (WebCore::ResourceResponse::ResourceResponse):
2367         (WebCore::ResourceResponse::memoryUsage):
2368         * platform/network/cf/ResourceResponseCFNet.cpp:
2369         * platform/network/mac/ResourceResponseMac.mm:
2370         (WebCore::ResourceResponse::platformLazyInit):
2371
2372 2011-04-01  Timothy Hatcher  <timothy@apple.com>
2373
2374         Make momentum scroll event latching work in WebKit2 on Mac.
2375
2376         <rdar://problem/8751861>
2377
2378         Reviewed by Darin Adler.
2379
2380         * WebCore.exp.in: Remove _wkIsLatchingWheelEvent, add _wkGetNSEventMomentumPhase.
2381         * page/EventHandler.cpp:
2382         (WebCore::EventHandler::handleWheelEvent): Set m_useLatchedWheelEventNode based on the
2383         event's momentumPhase.
2384         * page/mac/EventHandlerMac.mm:
2385         (WebCore::EventHandler::wheelEvent): Remove the setting of m_useLatchedWheelEventNode.
2386         It is now done in EventHandler::handleWheelEvent.
2387         * platform/mac/WebCoreSystemInterface.h: Remove wkIsLatchingWheelEvent, add wkGetNSEventMomentumPhase.
2388         * platform/mac/WebCoreSystemInterface.mm: Ditto.
2389         * platform/mac/WheelEventMac.mm:
2390         (WebCore::momentumPhaseForEvent): Return a phase on older Mac system by using wkGetNSEventMomentumPhase.
2391
2392 2011-04-01  Steve Block  <steveblock@google.com>
2393
2394         Reviewed by Jeremy Orlow.
2395
2396         JavaClass should be an interface and free of JNI types
2397         https://bugs.webkit.org/show_bug.cgi?id=57533
2398
2399         This patch fixes JavaClass for V8 only.
2400
2401         It factors out a JavaClass interface which does not use JNI types.
2402         This will allow the Java bridge to be used with objects that
2403         don't use JNI directly. The existing jobject-backed
2404         implementation is moved to a new JavaClassJobject class which
2405         implements the interface.
2406
2407         No new tests, refactoring only.
2408
2409         * Android.v8bindings.mk:
2410         * WebCore.gypi:
2411         * bridge/jni/v8/JavaClassJobjectV8.cpp:
2412         (JavaClassJobject::JavaClassJobject):
2413         (JavaClassJobject::~JavaClassJobject):
2414         (JavaClassJobject::methodsNamed):
2415         (JavaClassJobject::fieldNamed):
2416         * bridge/jni/v8/JavaClassJobjectV8.h: Copied from Source/WebCore/bridge/jni/v8/JavaClassV8.h.
2417         * bridge/jni/v8/JavaClassV8.h:
2418         (JSC::Bindings::JavaClass::~JavaClass):
2419         * bridge/jni/v8/JavaInstanceV8.cpp:
2420         (JavaInstance::getClass):
2421
2422 2011-04-01  Jaehun Lim  <ljaehun.lim@samsung.com>
2423
2424         Unreviewed build fix.
2425
2426         Fix build break when font backend is Pango.
2427         Pango is missed in changeset 80589.
2428
2429         https://bugs.webkit.org/show_bug.cgi?id=57609
2430
2431         * platform/graphics/pango/FontPlatformData.h:
2432         (WebCore::FontPlatformData::setOrientation):
2433
2434 2011-04-01  Sheriff Bot  <webkit.review.bot@gmail.com>
2435
2436         Unreviewed, rolling out r82687.
2437         http://trac.webkit.org/changeset/82687
2438         https://bugs.webkit.org/show_bug.cgi?id=57643
2439
2440         This patch broke accessibility aria-treegrid test in Mac
2441         (Requested by msanchez on #webkit).
2442
2443         * accessibility/AccessibilityARIAGrid.cpp:
2444         * accessibility/AccessibilityARIAGrid.h:
2445         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
2446         (atkRole):
2447         * accessibility/mac/AccessibilityObjectWrapper.mm:
2448
2449 2011-03-31  Abhishek Arya  <inferno@chromium.org>
2450
2451         Reviewed by Andreas Kling.
2452
2453         Whenever a relayout is trigger for SVGPath, make sure
2454         to clear its previous marker layout info. This helps
2455         to prevent removed markers from being used.
2456         https://bugs.webkit.org/show_bug.cgi?id=57492
2457
2458         Test: svg/dom/path-marker-removed-crash.svg
2459
2460         * rendering/svg/RenderSVGPath.cpp:
2461         (WebCore::RenderSVGPath::layout):
2462         * rendering/svg/SVGMarkerLayoutInfo.cpp:
2463         (WebCore::SVGMarkerLayoutInfo::clear):
2464         * rendering/svg/SVGMarkerLayoutInfo.h:
2465
2466 2011-04-01  Rob Buis  <rwlbuis@gmail.com>
2467
2468         Reviewed by Nikolas Zimmermann.
2469
2470         https://bugs.webkit.org/show_bug.cgi?id=55750
2471         SVG <image> referenced by <use> is displayed incorrectly
2472
2473         Reintroduce old behaviour for valid base URI, for invalid
2474         keep using document base URI.
2475         Fixes regression of W3C-SVG-1.1/struct-image-07-t.svg.
2476
2477         Test: svg/custom/image-base-uri.svg
2478
2479         * svg/SVGImageLoader.cpp:
2480         (WebCore::SVGImageLoader::sourceURI):
2481
2482 2011-04-01  Mario Sanchez Prada  <msanchez@igalia.com>
2483
2484         Reviewed by Chris Fleizach.
2485
2486         ARIA Grid tables should return GridRole in roleValue() method
2487         https://bugs.webkit.org/show_bug.cgi?id=57614
2488
2489         This change does not need any test since it doesn't change anything
2490         from the point of view of the consumers (Assistive Technoglogies).
2491         It's just an internal change to simplify identifying HTML and ARIA
2492         tables by calling to the AccessibilityObject::roleValue method.
2493
2494         * accessibility/AccessibilityARIAGrid.h:
2495         * accessibility/AccessibilityARIAGrid.cpp:
2496         (WebCore::AccessibilityARIAGrid::roleValue): Return GridRole.
2497
2498         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
2499         (atkRole): Removed unneeded comment.
2500
2501         * accessibility/mac/AccessibilityObjectWrapper.mm: Map GridRole to
2502         NSAccessibilityTableRole, to keep the same behaviour.
2503
2504 2011-04-01  MORITA Hajime  <morrita@google.com>
2505
2506         Reviewed by Dimitri Glazkov.
2507
2508         <meter> can only support horizontal indicator
2509         https://bugs.webkit.org/show_bug.cgi?id=56001
2510
2511         - Removed code which deals with the direction and
2512           left the horizontal path.
2513         - Removed "horizontal" from related names which is now
2514           redundant.
2515         
2516         * css/CSSSelector.cpp:
2517         (WebCore::CSSSelector::pseudoId):
2518         (WebCore::nameToPseudoTypeMap):
2519         (WebCore::CSSSelector::extractPseudoType):
2520         * css/CSSSelector.h:
2521         * css/html.css:
2522         (meter::-webkit-meter-bar):
2523         (meter::-webkit-meter-optimum-value):
2524         (meter::-webkit-meter-suboptimal-value):
2525         (meter::-webkit-meter-even-less-good-value):
2526         * rendering/RenderMeter.cpp:
2527         (WebCore::RenderMeter::~RenderMeter):
2528         (WebCore::RenderMeter::createPart):
2529         (WebCore::RenderMeter::updateFromElement):
2530         (WebCore::RenderMeter::layoutParts):
2531         (WebCore::RenderMeter::styleDidChange):
2532         (WebCore::RenderMeter::shouldHaveParts):
2533         (WebCore::RenderMeter::valuePartRect):
2534         (WebCore::RenderMeter::valuePseudoId):
2535         (WebCore::RenderMeter::barPseudoId):
2536         (WebCore::RenderMeter::detachShadows):
2537         (WebCore::RenderMeter::updateShadows):
2538         * rendering/RenderMeter.h:
2539         (WebCore::RenderMeter::shadowAttached):
2540         * rendering/RenderTheme.cpp:
2541         (WebCore::RenderTheme::supportsMeter):
2542         * rendering/RenderTheme.h:
2543         * rendering/RenderThemeMac.h:
2544         * rendering/RenderThemeMac.mm:
2545         (WebCore::RenderThemeMac::paintMeter):
2546         (WebCore::RenderThemeMac::supportsMeter):
2547         * rendering/style/RenderStyleConstants.h:
2548
2549 2011-03-23  Pavel Podivilov  <podivilov@chromium.org>
2550
2551         Reviewed by Pavel Feldman.
2552
2553         Web Inspector: fix reveal line in formatted script.
2554         https://bugs.webkit.org/show_bug.cgi?id=56941
2555
2556         * inspector/front-end/BreakpointsSidebarPane.js:
2557         (WebInspector.JavaScriptBreakpointsSidebarPane):
2558         (WebInspector.JavaScriptBreakpointsSidebarPane.prototype._breakpointClicked):
2559         * inspector/front-end/DebuggerPresentationModel.js:
2560         (WebInspector.DebuggerPresentationModel.prototype.sourceFileForScriptURL):
2561         * inspector/front-end/NetworkPanel.js:
2562         (WebInspector.NetworkPanel.prototype.canShowAnchorLocation):
2563         (WebInspector.NetworkPanel.prototype.showAnchorLocation):
2564         * inspector/front-end/Panel.js:
2565         (WebInspector.Panel.prototype.canShowAnchorLocation):
2566         (WebInspector.Panel.prototype.showAnchorLocation):
2567         * inspector/front-end/ResourcesPanel.js:
2568         (WebInspector.ResourcesPanel.prototype.canShowAnchorLocation):
2569         (WebInspector.ResourcesPanel.prototype.showAnchorLocation):
2570         (WebInspector.ResourcesPanel.prototype.showResource):
2571         * inspector/front-end/ScriptsPanel.js:
2572         (WebInspector.ScriptsPanel):
2573         (WebInspector.ScriptsPanel.prototype.canShowAnchorLocation):
2574         (WebInspector.ScriptsPanel.prototype.showAnchorLocation):
2575         (WebInspector.ScriptsPanel.prototype._showSourceLine):
2576         * inspector/front-end/SourceFrame.js:
2577         (WebInspector.SourceFrame.prototype.highlightLine):
2578         (WebInspector.SourceFrame.prototype._createTextViewer):
2579         * inspector/front-end/inspector.js:
2580         (WebInspector.documentClick.followLink):
2581         (WebInspector.documentClick):
2582         (WebInspector._showAnchorLocation):
2583
2584 2011-04-01  Pavel Podivilov  <podivilov@chromium.org>
2585
2586         Reviewed by Yury Semikhatsky.
2587
2588         Web Inspector: make editScriptSource a Script's method.
2589         https://bugs.webkit.org/show_bug.cgi?id=57615
2590
2591         * inspector/front-end/DebuggerModel.js:
2592         (WebInspector.DebuggerModel.prototype.editScriptSource):
2593         (WebInspector.DebuggerModel.prototype._didEditScriptSource):
2594         * inspector/front-end/Script.js:
2595         (WebInspector.Script.prototype.requestSource):
2596         (WebInspector.Script.prototype.editSource):
2597
2598 2011-04-01  Pavel Feldman  <pfeldman@google.com>
2599
2600         Reviewed by Yury Semikhatsky.
2601
2602         Web Inspector: event should have "data" attribute, not "body"
2603         https://bugs.webkit.org/show_bug.cgi?id=57628
2604
2605         * inspector/CodeGeneratorInspector.pm:
2606
2607 2011-04-01  Pavel Podivilov  <podivilov@chromium.org>
2608
2609         Reviewed by Yury Semikhatsky.
2610
2611         Web Inspector: checkboxes are broken in xhr breakpoints sidebar pane.
2612         https://bugs.webkit.org/show_bug.cgi?id=57610
2613
2614         * inspector/front-end/BreakpointsSidebarPane.js:
2615         (WebInspector.XHRBreakpointsSidebarPane.prototype._checkboxClicked):
2616
2617 2011-04-01  Alexander Pavlov  <apavlov@chromium.org>
2618
2619         Reviewed by Yury Semikhatsky.
2620
2621         Web Inspector: up/down keys are not treating hex numbers properly while editing styles.
2622         https://bugs.webkit.org/show_bug.cgi?id=40522
2623
2624         Drive-by: fix inc/dec for numbers like ".5"
2625
2626         Test: inspector/styles/up-down-numerics-and-colors.html
2627
2628         * inspector/front-end/StylesSidebarPane.js:
2629         (WebInspector.StylePropertyTreeElement.prototype):
2630
2631 2011-03-30  Pavel Podivilov  <podivilov@chromium.org>
2632
2633         Reviewed by Pavel Feldman.
2634
2635         Web Inspector: remove dead code from Script.js.
2636         https://bugs.webkit.org/show_bug.cgi?id=57454
2637
2638         * inspector/front-end/DebuggerModel.js:
2639         (WebInspector.DebuggerModel.prototype._parsedScriptSource):
2640         (WebInspector.DebuggerModel.prototype._failedToParseScriptSource):
2641         * inspector/front-end/Script.js:
2642         (WebInspector.Script):
2643         (WebInspector.Script.prototype.requestSource.didGetScriptSource):
2644         (WebInspector.Script.prototype.requestSource):
2645
2646 2011-04-01  Sheriff Bot  <webkit.review.bot@gmail.com>
2647
2648         Unreviewed, rolling out r82667.
2649         http://trac.webkit.org/changeset/82667
2650         https://bugs.webkit.org/show_bug.cgi?id=57612
2651
2652         Breaks Leopard layout tests (Requested by podivilov on
2653         #webkit).
2654
2655         * GNUmakefile.am:
2656         * inspector/front-end/DebuggerPresentationModel.js:
2657         (WebInspector.DebuggerPresentationModel):
2658         (WebInspector.DebuggerPresentationModel.prototype.toggleFormatSourceFiles):
2659
2660 2011-03-30  Pavel Podivilov  <podivilov@chromium.org>
2661
2662         Reviewed by Pavel Feldman.
2663
2664         Web Inspector: remove unused SourceFrameContent class.
2665         https://bugs.webkit.org/show_bug.cgi?id=57453
2666
2667         * WebCore.gypi:
2668         * WebCore.vcproj/WebCore.vcproj:
2669         * inspector/front-end/ResourceView.js:
2670         (WebInspector.SourceFrameDelegateForResourcesPanel.prototype.requestContent):
2671         * inspector/front-end/ScriptsPanel.js:
2672         (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.requestContent):
2673         * inspector/front-end/SourceFrame.js:
2674         (WebInspector.SourceFrame.prototype._createTextViewer):
2675         * inspector/front-end/SourceFrameContent.js: Removed.
2676         * inspector/front-end/WebKit.qrc:
2677         * inspector/front-end/inspector.html:
2678
2679 2011-03-30  Pavel Podivilov  <podivilov@chromium.org>
2680
2681         Reviewed by Pavel Feldman.
2682
2683         Web Inspector: add test for script formatter worker.
2684         https://bugs.webkit.org/show_bug.cgi?id=57447
2685
2686         Test: inspector/debugger/script-formatter.html
2687
2688         * GNUmakefile.am:
2689         * inspector/front-end/DebuggerPresentationModel.js:
2690         (WebInspector.DebuggerPresentationModel):
2691         (WebInspector.DebuggerPresentationModel.prototype.toggleFormatSourceFiles):
2692
2693 2011-03-30  Pavel Podivilov  <podivilov@chromium.org>
2694
2695         Reviewed by Pavel Feldman.
2696
2697         Web Inspector: [chromium] script formatting doesn't work when all scripts are concatenated.
2698         https://bugs.webkit.org/show_bug.cgi?id=57446
2699
2700         * inspector/front-end/ScriptFormatterWorker.js:
2701
2702 2011-04-01  Pavel Podivilov  <podivilov@chromium.org>
2703
2704         Reviewed by Pavel Feldman.
2705
2706         Web Inspector: allow file access from inspector page so inspector can use workers.
2707         https://bugs.webkit.org/show_bug.cgi?id=57339
2708
2709         * inspector/InspectorFrontendClientLocal.cpp:
2710         (WebCore::InspectorFrontendClientLocal::InspectorFrontendClientLocal):
2711
2712 2011-03-31  Yury Semikhatsky  <yurys@chromium.org>
2713
2714         Reviewed by Pavel Feldman.
2715
2716         Web Inspector: inspected page crashes on attempt to log object with broken .toString
2717         https://bugs.webkit.org/show_bug.cgi?id=57557
2718
2719         If ScriptValue.toString causes a JavaScript exception, the exception is cleared
2720         before returning from the toString method.
2721
2722         Test: inspector/console/console-log-toString-object.html
2723
2724         * bindings/js/ScriptValue.cpp:
2725         (WebCore::ScriptValue::toString):
2726         * bindings/js/ScriptValue.h:
2727         * bindings/v8/ScriptValue.cpp:
2728         (WebCore::ScriptValue::toString):
2729
2730 2011-03-31  Andrey Kosyakov  <caseq@chromium.org>
2731
2732         Reviewed by Pavel Feldman.
2733
2734         - removed documentWide parameter to querySelector[All]() (user document node id instead)
2735         - factor out document request logic within DOMAgent into separate method
2736         - add querySelector() and querySelectorAll() to DOMAgent.js, assure we have document before calling back-end
2737         - use the above wrappers for querySelector() and querySelectorAll(), do not call backend directly
2738         - minor style fixes in Inspector.json
2739         - more error logging
2740
2741         Web Inspector: provide front-end wrappers for DOMAgent.querySelector[All]() that take care of fetching the document
2742         https://bugs.webkit.org/show_bug.cgi?id=57466
2743
2744         * inspector/Inspector.json:
2745         * inspector/InspectorDOMAgent.cpp:
2746         (WebCore::InspectorDOMAgent::querySelector):
2747         (WebCore::InspectorDOMAgent::querySelectorAll):
2748         * inspector/InspectorDOMAgent.h:
2749         * inspector/front-end/AuditRules.js:
2750         (WebInspector.AuditRules.ImageDimensionsRule.prototype.doRun):
2751         (WebInspector.AuditRules.ImageDimensionsRule.prototype.doRun.getStyles):
2752         * inspector/front-end/CSSStyleModel.js:
2753         (WebInspector.CSSStyleModel.prototype.setRuleSelector.callback):
2754         (WebInspector.CSSStyleModel.prototype.setRuleSelector):
2755         (WebInspector.CSSStyleModel.prototype.addRule.callback):
2756         (WebInspector.CSSStyleModel.prototype.addRule):
2757         * inspector/front-end/DOMAgent.js:
2758         (WebInspector.DOMAgent.prototype.requestDocument.onDocumentAvailable):
2759         (WebInspector.DOMAgent.prototype.requestDocument):
2760         (WebInspector.DOMAgent.prototype.pushNodeToFrontend):
2761         (WebInspector.DOMAgent.prototype.pushNodeByPathToFrontend):
2762         (WebInspector.DOMAgent.prototype._dispatchWhenDocumentAvailable.onDocumentAvailable):
2763         (WebInspector.DOMAgent.prototype._dispatchWhenDocumentAvailable):
2764         (WebInspector.DOMAgent.prototype.cancelSearch):
2765         (WebInspector.DOMAgent.prototype.querySelector):
2766         (WebInspector.DOMAgent.prototype.querySelectorAll):
2767
2768 2011-04-01  Kent Tamura  <tkent@chromium.org>
2769
2770         Apply sort-Xcode-project-file.
2771
2772         * WebCore.xcodeproj/project.pbxproj:
2773
2774 2011-03-31  Sheriff Bot  <webkit.review.bot@gmail.com>
2775
2776         Unreviewed, rolling out r82652.
2777         http://trac.webkit.org/changeset/82652
2778         https://bugs.webkit.org/show_bug.cgi?id=57603
2779
2780         Test still fails (Requested by abarth|gardener on #webkit).
2781
2782         * rendering/RenderWidget.cpp:
2783         (WebCore::RenderWidget::setWidget):
2784
2785 2011-03-31  Naoki Takano  <takano.naoki@gmail.com>
2786
2787         Reviewed by Kent Tamura.
2788
2789         REGRESSION (r64712): Safari removes the first blank line in a textarea
2790         https://bugs.webkit.org/show_bug.cgi?id=56434
2791
2792         Test: fast/forms/textarea-newline.html
2793
2794         A linefeed removal after a textarea tag is originally processed in WebCore::HTMLTextAreaElement::defaultValue().
2795         But HTML5 tree builder now removes the linefeed. It means linefeed removal happens twice.
2796         And devalutValue() removal is not needed anymore.
2797
2798         * html/HTMLTextAreaElement.cpp:
2799         (WebCore::HTMLTextAreaElement::setDefaultValue): Remove an extra linefeed insertion at the beginning.
2800         (WebCore::HTMLTextAreaElement::defaultValue): Remove linefeed removal check in default value creation function.
2801
2802 2011-03-31  Luke Macpherson   <macpherson@chromium.org>
2803
2804         Reviewed by Dimitri Glazkov.
2805
2806         Remove refcounting of CSSStyleApplyProperty singleton
2807         https://bugs.webkit.org/show_bug.cgi?id=57592
2808
2809         No new tests required as no functionality changes.
2810
2811         * css/CSSStyleApplyProperty.h:
2812
2813 2011-03-31  Anantanarayanan G Iyengar  <ananta@chromium.org>
2814
2815         Reviewed by Adam Barth.
2816
2817         https://bugs.webkit.org/show_bug.cgi?id=45855
2818         Windowless plugins added dynamically to the DOM should receive paint events.
2819         This is done by ensuring that the plugin widget is marked for painting when
2820         it is added.
2821
2822         Test: plugins/windowless_plugin_paint_test.html
2823
2824         * rendering/RenderWidget.cpp:
2825         (WebCore::RenderWidget::setWidget):
2826
2827 2011-03-31  Adam Roben  <aroben@apple.com>
2828
2829         Add a new AbstractCACFLayerTreeHost base class
2830
2831         This class exposes the interface that LayerChangesFlusher and PlatformCALayer rely on.
2832         CACFLayerTreeHost now derives from AbstractCACFLayerTreeHost. In the future, WebKit2's
2833         LayerTreeHostCA will also derive from it (on Windows).
2834
2835         This should cause no change in behavior.
2836
2837         Fixes <http://webkit.org/b/57598> Coupling between CACFLayerTreeHost and other CACF-related
2838         code is too high
2839
2840         Reviewed by Anders Carlsson.
2841
2842         * WebCore.vcproj/WebCore.vcproj: Added AbstractCACFLayerTreeHost, and let VS reorder files.
2843
2844         * platform/graphics/ca/win/AbstractCACFLayerTreeHost.h: Added.
2845
2846         * platform/graphics/ca/win/CACFLayerTreeHost.h: Changed to derive from
2847         AbstractCACFLayerTreeHost, and annotated the overrides of its functions.
2848         AbstractCACFLayerTreeHost also allows us to get rid of the friend relationship with
2849         PlatformCALayer.
2850
2851         * platform/graphics/ca/win/LayerChangesFlusher.cpp:
2852         (WebCore::LayerChangesFlusher::flushPendingLayerChangesSoon):
2853         (WebCore::LayerChangesFlusher::cancelPendingFlush):
2854         (WebCore::LayerChangesFlusher::hookFired):
2855         * platform/graphics/ca/win/LayerChangesFlusher.h:
2856         * platform/graphics/ca/win/PlatformCALayerWin.cpp:
2857         (layerTreeHostForLayer):
2858         (PlatformCALayer::rootLayer):
2859         (PlatformCALayer::setNeedsCommit):
2860         (PlatformCALayer::addAnimationForKey):
2861         (PlatformCALayer::removeAnimationForKey):
2862         Changed to use AbstractCACFLayerTreeHost instead of using CACFLayerTreeHost directly.
2863
2864 2011-03-31  Andy Estes  <aestes@apple.com>
2865
2866         Reviewed by Alexey Proskuryakov.
2867
2868         REGRESSION: Java applet fails to load when <object> has a classid attribute.
2869         https://bugs.webkit.org/show_bug.cgi?id=52703
2870         
2871         Java applets embedded with the object element sometimes use classid to
2872         specify their main resource. When this is done, the classid is prefixed
2873         with "java:". Treat these as supported classids in WebKit.
2874
2875         Test: java/embedding-java-with-object.html
2876
2877         * html/HTMLObjectElement.cpp:
2878         (WebCore::HTMLObjectElement::hasValidClassId): If the MIME type is a
2879         Java Applet type and the classid starts with "java:", the classid
2880         should be considered valid.
2881
2882 2011-03-31  Brent Fulgham  <bfulgham@webkit.org>
2883
2884         Reviewed Adam Roben.
2885
2886         [WinCairo] Implement Missing drawWindowsBitmap method.
2887         https://bugs.webkit.org/show_bug.cgi?id=57409
2888
2889         * WebCore.vcproj/WebCore.vcproj: Add new DIBPixelData files.
2890         * platform/graphics/GraphicsContext.h:
2891         (WebCore::GraphicsContext::WindowsBitmap::buffer):
2892         (WebCore::GraphicsContext::WindowsBitmap::bufferLength):
2893         (WebCore::GraphicsContext::WindowsBitmap::size):
2894         (WebCore::GraphicsContext::WindowsBitmap::bytesPerRow):
2895         (WebCore::GraphicsContext::WindowsBitmap::bitsPerPixel):
2896         (WebCore::GraphicsContext::WindowsBitmap::windowsDIB):
2897         * platform/graphics/win/GraphicsContextCGWin.cpp:
2898         (WebCore::CGContextWithHDC):
2899         (WebCore::GraphicsContext::releaseWindowsContext): Modified to use
2900         new common routines.
2901         * platform/graphics/win/GraphicsContextCairoWin.cpp:
2902         (WebCore::drawBitmapToContext): New common drawing implementation.
2903         (WebCore::GraphicsContext::releaseWindowsContext): Modified to use
2904         new common routines.
2905         (WebCore::GraphicsContext::drawWindowsBitmap):
2906         * platform/graphics/win/GraphicsContextWin.cpp:
2907         (WebCore::GraphicsContext::WindowsBitmap::WindowsBitmap): Modified
2908         to use new DIBPixelData data type.
2909         * platform/graphics/win/DIBPixelData.cpp: Added.
2910         (WebCore::DIBPixelData::DIBPixelData):
2911         (WebCore::DIBPixelData::initialize):
2912         * platform/graphics/win/DIBPixelData.h: Added.
2913         (WebCore::DIBPixelData::DIBPixelData):
2914         (WebCore::DIBPixelData::buffer):
2915         (WebCore::DIBPixelData::bufferLength):
2916         (WebCore::DIBPixelData::size):
2917         (WebCore::DIBPixelData::bytesPerRow):
2918         (WebCore::DIBPixelData::bitsPerPixel):
2919
2920 2011-03-31  Sheriff Bot  <webkit.review.bot@gmail.com>
2921
2922         Unreviewed, rolling out r81849.
2923         http://trac.webkit.org/changeset/81849
2924         https://bugs.webkit.org/show_bug.cgi?id=57588
2925
2926         CSS Parsing broke with -webkit-calc and introduced crashes
2927         (Requested by inferno-sec on #webkit).
2928
2929         * css/CSSGrammar.y:
2930         * css/CSSParserValues.cpp:
2931         * css/CSSParserValues.h:
2932         * css/tokenizer.flex:
2933
2934 2011-03-31  Adam Roben  <aroben@apple.com>
2935
2936         Don't ref CACFLayerTreeHosts when telling them to flush layer changes
2937
2938         LayerChangesFlusher was reffing CACFLayerTreeHosts before calling out to them. This would
2939         have protected us if calling out to one CACFLayerTreeHost could cause a different
2940         CACFLayerTreeHost to be destroyed. But that isn't possible; each CACFLayerTreeHost is
2941         associated with its own page, and flushing layer changes doesn't touch any other page. So it
2942         isn't possible for a CACFLayerTreeHost to be deleted while another one is flushing layer
2943         changes.
2944
2945         One benefit of this change is that it will make it easier to make LayerChangesFlusher
2946         interact with a forthcoming abstract base class, rather than with CACFLayerTreeHost itself.
2947
2948         This should cause no change in behavior.
2949
2950         Fixes <http://webkit.org/b/57590> LayerChangesFlusher unnecessarily refs CACFLayerTreeHost
2951         before calling out to it
2952
2953         Reviewed by Darin Adler.
2954
2955         * platform/graphics/ca/win/LayerChangesFlusher.cpp:
2956         (WebCore::LayerChangesFlusher::hookFired): Just store bare pointers to the
2957         CACFLayerTreeHosts.
2958
2959 2011-03-31  Antti Koivisto  <antti@apple.com>
2960
2961         Reviewed by Oliver Hunt.
2962
2963         https://bugs.webkit.org/show_bug.cgi?id=57574
2964         Preload scanner fails to pick up resources from document.write() output
2965
2966         - Scan script inserted source using a separate preload scanner.
2967         - Make the main preload scanner correctly process the remaining source if script execution blocked the parser.
2968
2969         Tests: fast/preloader/document-write-2.html
2970                fast/preloader/document-write.html
2971
2972         * html/parser/HTMLDocumentParser.cpp:
2973         (WebCore::HTMLDocumentParser::insert):
2974         (WebCore::HTMLDocumentParser::appendCurrentInputStreamToPreloadScannerAndScan):
2975         * html/parser/HTMLDocumentParser.h:
2976         (WebCore::HTMLDocumentParser::hasPreloadScanner):
2977         * html/parser/HTMLScriptRunner.cpp:
2978         (WebCore::HTMLScriptRunner::execute):
2979         * html/parser/HTMLScriptRunnerHost.h:
2980
2981 2011-03-31  Tony Gentilcore  <tonyg@chromium.org>
2982
2983         Build fix: Add missing include
2984         https://bugs.webkit.org/show_bug.cgi?id=57587
2985
2986         * loader/cache/CachedResourceLoader.cpp:
2987
2988 2011-03-31  Tony Gentilcore  <tonyg@chromium.org>
2989
2990         Reviewed by Antti Koivisto.
2991
2992         PreloadScanner doesn&apos;t find image while executing script in head
2993         https://bugs.webkit.org/show_bug.cgi?id=45072
2994
2995         Previously, while parsing the head, no resources in the body would be
2996         preloaded. After this patch, we will preload scripts and styles in the
2997         body, although we continue to hold off on all images until the page is 
2998         first rendered.
2999
3000         To evaluate this change, I've recorded a sampling of 45 of alexa's top
3001         sites and replayed them under simulated bandwidth conditions, loading
3002         each 5-15 times until stddev is small enough.
3003
3004         Time to the load event improved at the overall average by 3%.
3005         Most sites are unchanged, but sites with certain blocking patterns had
3006         big wins -- ebay 19% (331ms), microsoft 15% (226ms), conduit 15% (277ms)
3007         nytimes 7% (182ms).
3008
3009         Time to DOM content loaded event improved by 6% with some even bigger
3010         individual wins.
3011
3012         First paint time held steady.
3013
3014         Note that I originally wanted to allow preloading of images while in the
3015         head, but that regressed first paint time (even though it was better for
3016         overall load time).
3017
3018         Test: fast/preloader/scan-body-from-head.html
3019
3020         * loader/cache/CachedResourceLoader.cpp:
3021         (WebCore::CachedResourceLoader::preload):
3022
3023 2011-03-31  Sheriff Bot  <webkit.review.bot@gmail.com>
3024
3025         Unreviewed, rolling out r82616.
3026         http://trac.webkit.org/changeset/82616
3027         https://bugs.webkit.org/show_bug.cgi?id=57585
3028
3029         New test does not pass on Gtk, chromium-mac, chromium-linux
3030         and possibly elsewhere (Requested by abarth|gardener on
3031         #webkit).
3032
3033         * rendering/RenderWidget.cpp:
3034         (WebCore::RenderWidget::setWidget):
3035
3036 2011-03-31  Adrienne Walker  <enne@google.com>
3037
3038         Reviewed by James Robinson.
3039
3040         [chromium] Fix ownership semantics for LayerChromium/CCLayerImpl
3041         https://bugs.webkit.org/show_bug.cgi?id=57577
3042
3043         LayerRendererChromium now uses a RefPtr to preserve ownership of all
3044         of the CCLayerImpl layers that it is using during the update/draw
3045         pass.  Addtionally, when a LayerChromium is destroyed, the weak
3046         owner pointer from its CCLayerImpl is correctly unset.
3047
3048         * platform/graphics/chromium/LayerRendererChromium.cpp:
3049         (WebCore::LayerRendererChromium::compareLayerZ):
3050         (WebCore::LayerRendererChromium::updateAndDrawLayers):
3051         (WebCore::LayerRendererChromium::updateLayers):
3052         (WebCore::LayerRendererChromium::drawLayers):
3053         (WebCore::LayerRendererChromium::updatePropertiesAndRenderSurfaces):
3054         (WebCore::LayerRendererChromium::drawLayer):
3055         * platform/graphics/chromium/LayerRendererChromium.h:
3056         * platform/graphics/chromium/RenderSurfaceChromium.h:
3057         * platform/graphics/chromium/VideoLayerChromium.cpp:
3058         (WebCore::VideoLayerChromium::updateCompositorResources):
3059         * platform/graphics/chromium/cc/CCLayerImpl.cpp:
3060         (WebCore::CCLayerImpl::drawsContent):
3061         (WebCore::CCLayerImpl::cleanupResources):
3062
3063 2011-03-31  Sam Weinig  <sam@webkit.org>
3064
3065         Reviewed by Anders Carlsson.
3066
3067         Rename WebCore's UI_STRING to WEB_UI_STRING to not overlap with WebKit API
3068         https://bugs.webkit.org/show_bug.cgi?id=57582
3069
3070         * platform/DefaultLocalizationStrategy.cpp:
3071         * platform/LocalizedStrings.h:
3072
3073 2011-03-31  Eric Seidel  <eric@webkit.org>
3074
3075         Reviewed by Ryosuke Niwa.
3076
3077         Rename BidiResolver::lastBeforeET to m_lastBeforeET to match modern style
3078         https://bugs.webkit.org/show_bug.cgi?id=57550
3079
3080         * platform/text/BidiResolver.h:
3081         (WebCore::::createBidiRunsForLine):
3082
3083 2011-03-31  Anantanarayanan G Iyengar  <ananta@chromium.org>
3084
3085         Reviewed by James Robinson.
3086
3087         https://bugs.webkit.org/show_bug.cgi?id=45855
3088         Windowless plugins added dynamically to the DOM should receive paint events.
3089         This is done by ensuring that the plugin widget is marked for painting when
3090         it is added.
3091
3092         Test: plugins/windowless_plugin_paint_test.html
3093
3094         * rendering/RenderWidget.cpp:
3095         (WebCore::RenderWidget::setWidget):
3096
3097 2011-03-31  Stephen White  <senorblanco@chromium.org>
3098
3099         Reviewed by Kenneth Russell.
3100
3101         Speed up accelerated path drawing.
3102         https://bugs.webkit.org/show_bug.cgi?id=57371
3103         This CL does three things:  re-uses the same vertex and index buffer
3104         for all path draws, converts all vertex layouts from vec3 to vec2, and
3105         does a convexity check for polygons before passing them to the
3106         tesselator.
3107
3108         Covered by canvas/philip/tests/2d.path.bezierCurveTo.*, and others.
3109
3110         * platform/graphics/chromium/GLES2Canvas.cpp:
3111         Replace the Vector<double> for interpolated curves with a
3112         Vector<FloatPoint>.
3113         (WebCore::Cubic::evaluate):
3114         Inline the evaluation function (as Quadratic does).
3115         (WebCore::GLES2Canvas::GLES2Canvas):
3116         Initialize the m_pathIndexBuffer.
3117         (WebCore::GLES2Canvas::~GLES2Canvas):
3118         Delete the path vertex and index buffers on destruction.
3119         (WebCore::interpolateQuadratic):
3120         (WebCore::interpolateCubic):
3121         Interpolate directly to a Vector<FloatPoint>, rather than
3122         Vector<double>.
3123         (WebCore::PolygonData::PolygonData):
3124         (WebCore::combineData):
3125         Replace the DoubleVector with a FloatPointVector.
3126         (WebCore::GLES2Canvas::tesselateAndFillPath):
3127         Move curve drawing into this function, and rename it to reflect the
3128         new behaviour.  Re-use the common vertex and index buffers.  If the
3129         curve consists of a single convex polygon, draw the curve as a single
3130         triangle fan.  Otherwise, convert it to doubles and pass it to the
3131         tesselator.
3132         (WebCore::GLES2Canvas::fillPathInternal):
3133         * platform/graphics/chromium/GLES2Canvas.h:
3134         Rename createVertexBufferFromPath() -> tesselateAndFillPath().
3135         Add a persistent index buffer for all path draws.
3136         * platform/graphics/gpu/BicubicShader.cpp:
3137         (WebCore::BicubicShader::create):
3138         (WebCore::BicubicShader::use):
3139         * platform/graphics/gpu/ConvolutionShader.cpp:
3140         (WebCore::ConvolutionShader::create):
3141         (WebCore::ConvolutionShader::use):
3142         Use vec2s instead of vec3s for all vertex data.
3143         * platform/graphics/gpu/LoopBlinnMathUtils.cpp:
3144         (WebCore::LoopBlinnMathUtils::convexCompare):
3145         (WebCore::LoopBlinnMathUtils::convexCross):
3146         (WebCore::LoopBlinnMathUtils::convexCheckTriple):
3147         (WebCore::LoopBlinnMathUtils::isConvex):
3148         * platform/graphics/gpu/LoopBlinnMathUtils.h:
3149         Implement a convexity check, based on the code in Graphics Gems IV.
3150         * platform/graphics/gpu/Shader.cpp:
3151         (WebCore::Shader::generateVertex):
3152         * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
3153         (WebCore::SharedGraphicsContext3D::useQuadVertices):
3154         * platform/graphics/gpu/SolidFillShader.cpp:
3155         (WebCore::SolidFillShader::use):
3156         * platform/graphics/gpu/TexShader.cpp:
3157         (WebCore::TexShader::use):
3158         Use vec2s instead of vec3s for all vertex data.
3159
3160 2011-03-31  David Hyatt  <hyatt@apple.com>
3161
3162         Reviewed by Simon Fraser.
3163
3164         https://bugs.webkit.org/show_bug.cgi?id=57565
3165
3166         Optimize overflow computations on lines to avoid allocating RenderOverflows in nearly all cases and to avoid even having
3167         to check the line for overflow in the first place.
3168         
3169         For the purposes of overflow computation, an inline object's default containment box for overflow is now assumed to extend
3170         all the way from lineTop to lineBottom instead of snugly fitting the inline object's own block dimensions. This allows
3171         replaced objects to be inside spans without triggering overflow allocation.
3172         
3173         The overflow accessors on InlineFlowBox have been changed to require passing in the lineTop and lineBottom so that the block
3174         dimensions can be forced to those values. Because these values are checked during painting and hit testing of lines, the
3175         lineTop and lineBottom are now passed as arguments to the painting and hit testing functions to avoid repeatedly crawling
3176         back up to the root box to fetch them.
3177         
3178         Added a new boolean flag to all InlineBoxes, knownToHaveNoOverflow(), and optimized for common cases where no overflow can
3179         possibly be present.  When the bit is set, computeOverflow will just immediately return.
3180  
3181         This change speeds up line layout by ~10%.
3182
3183         * rendering/EllipsisBox.cpp:
3184         (WebCore::EllipsisBox::paint):
3185         (WebCore::EllipsisBox::nodeAtPoint):
3186         * rendering/EllipsisBox.h:
3187         * rendering/InlineBox.cpp:
3188         (WebCore::InlineBox::paint):
3189         (WebCore::InlineBox::nodeAtPoint):
3190         (WebCore::InlineBox::clearKnownToHaveNoOverflow):
3191         * rendering/InlineBox.h:
3192         (WebCore::InlineBox::InlineBox):
3193         (WebCore::InlineBox::logicalFrameRect):
3194         (WebCore::InlineBox::knownToHaveNoOverflow):
3195         * rendering/InlineFlowBox.cpp:
3196         (WebCore::InlineFlowBox::addToLine):
3197         (WebCore::InlineFlowBox::placeBoxesInInlineDirection):
3198         (WebCore::InlineFlowBox::placeBoxesInBlockDirection):
3199         (WebCore::InlineFlowBox::addBoxShadowVisualOverflow):
3200         (WebCore::InlineFlowBox::addTextBoxVisualOverflow):
3201         (WebCore::InlineFlowBox::addReplacedChildOverflow):
3202         (WebCore::InlineFlowBox::computeOverflow):
3203         (WebCore::InlineFlowBox::setLayoutOverflow):
3204         (WebCore::InlineFlowBox::setVisualOverflow):
3205         (WebCore::InlineFlowBox::setOverflowFromLogicalRects):
3206         (WebCore::InlineFlowBox::nodeAtPoint):
3207         (WebCore::InlineFlowBox::paint):
3208         * rendering/InlineFlowBox.h:
3209         (WebCore::InlineFlowBox::layoutOverflowRect):
3210         (WebCore::InlineFlowBox::logicalLeftLayoutOverflow):
3211         (WebCore::InlineFlowBox::logicalRightLayoutOverflow):
3212         (WebCore::InlineFlowBox::logicalTopLayoutOverflow):
3213         (WebCore::InlineFlowBox::logicalBottomLayoutOverflow):
3214         (WebCore::InlineFlowBox::logicalLayoutOverflowRect):
3215         (WebCore::InlineFlowBox::visualOverflowRect):
3216         (WebCore::InlineFlowBox::logicalLeftVisualOverflow):
3217         (WebCore::InlineFlowBox::logicalRightVisualOverflow):
3218         (WebCore::InlineFlowBox::logicalTopVisualOverflow):
3219         (WebCore::InlineFlowBox::logicalBottomVisualOverflow):
3220         (WebCore::InlineFlowBox::logicalVisualOverflowRect):
3221         (WebCore::InlineFlowBox::frameRectIncludingLineHeight):
3222         (WebCore::InlineFlowBox::logicalFrameRectIncludingLineHeight):
3223         * rendering/InlineTextBox.cpp:
3224         (WebCore::InlineTextBox::nodeAtPoint):
3225         (WebCore::InlineTextBox::paint):
3226         * rendering/InlineTextBox.h:
3227         * rendering/RenderBlock.cpp:
3228         (WebCore::RenderBlock::simplifiedNormalFlowLayout):
3229         (WebCore::RenderBlock::paintEllipsisBoxes):
3230         (WebCore::RenderBlock::adjustLinePositionForPagination):
3231         * rendering/RenderBlock.h:
3232         * rendering/RenderBlockLineLayout.cpp:
3233         (WebCore::RenderBlock::computeInlineDirectionPositionsForLine):
3234         (WebCore::RenderBlock::layoutInlineChildren):
3235         (WebCore::RenderBlock::determineStartPosition):
3236         (WebCore::RenderBlock::matchedEndLine):
3237         (WebCore::RenderBlock::addOverflowFromInlineChildren):
3238         * rendering/RenderBox.h:
3239         (WebCore::RenderBox::hasRenderOverflow):
3240         * rendering/RenderBoxModelObject.cpp:
3241         (WebCore::RenderBoxModelObject::paintFillLayerExtended):
3242         * rendering/RenderInline.cpp:
3243         (WebCore::RenderInline::linesVisualOverflowBoundingBox):
3244         * rendering/RenderLineBoxList.cpp:
3245         (WebCore::RenderLineBoxList::anyLineIntersectsRect):
3246         (WebCore::RenderLineBoxList::lineIntersectsDirtyRect):
3247         (WebCore::RenderLineBoxList::paint):
3248         (WebCore::RenderLineBoxList::hitTest):
3249         * rendering/RenderListItem.cpp:
3250         (WebCore::RenderListItem::positionListMarker):
3251         * rendering/RootInlineBox.cpp:
3252         (WebCore::RootInlineBox::paintEllipsisBox):
3253         (WebCore::RootInlineBox::addHighlightOverflow):
3254         (WebCore::RootInlineBox::paint):
3255         (WebCore::RootInlineBox::nodeAtPoint):
3256         (WebCore::RootInlineBox::paddedLayoutOverflowRect):
3257         * rendering/RootInlineBox.h:
3258         (WebCore::RootInlineBox::logicalTopVisualOverflow):
3259         (WebCore::RootInlineBox::logicalBottomVisualOverflow):
3260         (WebCore::RootInlineBox::logicalTopLayoutOverflow):
3261         (WebCore::RootInlineBox::logicalBottomLayoutOverflow):
3262         * rendering/svg/SVGInlineFlowBox.cpp:
3263         (WebCore::SVGInlineFlowBox::paint):
3264         * rendering/svg/SVGInlineFlowBox.h:
3265         * rendering/svg/SVGInlineTextBox.cpp:
3266         (WebCore::SVGInlineTextBox::paint):
3267         * rendering/svg/SVGInlineTextBox.h:
3268         * rendering/svg/SVGRootInlineBox.cpp:
3269         (WebCore::SVGRootInlineBox::paint):
3270         * rendering/svg/SVGRootInlineBox.h:
3271
3272 2011-03-31  Pavel Feldman  <pfeldman@chromium.org>
3273
3274         Reviewed by Yury Semikhatsky.
3275
3276         Web Inspector: disable properties abbreviation.
3277         https://bugs.webkit.org/show_bug.cgi?id=57525
3278
3279         * inspector/InjectedScript.cpp:
3280         (WebCore::InjectedScript::getProperties):
3281         * inspector/InjectedScript.h:
3282         * inspector/InjectedScriptSource.js:
3283         (.):
3284         ():
3285         * inspector/Inspector.json:
3286         * inspector/InspectorRuntimeAgent.cpp:
3287         (WebCore::InspectorRuntimeAgent::getProperties):
3288         * inspector/InspectorRuntimeAgent.h:
3289         * inspector/front-end/ConsoleView.js:
3290         (WebInspector.ConsoleView.prototype.completions.evaluated):
3291         (WebInspector.ConsoleView.prototype._formatarray):
3292         * inspector/front-end/ObjectPropertiesSection.js:
3293         (WebInspector.ObjectPropertiesSection.prototype.update.callback):
3294         (WebInspector.ObjectPropertiesSection.prototype.update):
3295         (WebInspector.ObjectPropertyTreeElement.prototype.onpopulate):
3296         (WebInspector.ObjectPropertyTreeElement.prototype.update):
3297         (WebInspector.ObjectPropertyTreeElement.prototype.startEditing):
3298         * inspector/front-end/PropertiesSidebarPane.js:
3299         (WebInspector.PropertiesSidebarPane.prototype.update.nodePrototypesReady):
3300         * inspector/front-end/RemoteObject.js:
3301         (WebInspector.RemoteObject.prototype.getOwnProperties):
3302         (WebInspector.RemoteObject.prototype.getAllProperties):
3303         (WebInspector.RemoteObject.prototype._getProperties):
3304         (WebInspector.LocalJSONObject.prototype.getOwnProperties):
3305         (WebInspector.LocalJSONObject.prototype.getAllProperties):
3306         * inspector/front-end/inspector.css:
3307         (.console-formatted-string, .console-formatted-regexp):
3308
3309 2011-03-31  Adam Roben  <aroben@apple.com>
3310
3311         Update WKCACFViewLayerTreeHost for changes to WKCACFView API
3312
3313         This should not result in any change in behavior.
3314
3315         Fixes <http://webkit.org/b/57560> WKCACFViewLayerTreeHost needs to tell WKCACFView where to
3316         render
3317
3318         Reviewed by Darin Adler.
3319
3320         * platform/graphics/ca/win/WKCACFViewLayerTreeHost.cpp: Updated API declarations.
3321         (WebCore::WKCACFViewLayerTreeHost::WKCACFViewLayerTreeHost): Tell WKCACFView it should
3322         render into the window we give it.
3323
3324 2011-03-31  Marius Storm-Olsen  <marius.storm-olsen@nokia.com>
3325
3326         Reviewed by Kenneth Rohde Christiansen.
3327
3328         [Qt] Properly detect phonon include, and avoid double qtLibraryTarget() call
3329         https://bugs.webkit.org/show_bug.cgi?id=57017
3330
3331         Build fix. No new tests.
3332
3333         * WebCore.pri:
3334
3335 2011-03-31  Vsevolod Vlasov  <vsevik@chromium.org>
3336
3337         Reviewed by Pavel Feldman.
3338
3339         XML viewer is not shown when frame has non-null opener
3340         https://bugs.webkit.org/show_bug.cgi?id=56384
3341
3342         Removed opener check in XML viewer
3343
3344         Test: http/tests/xmlviewer/extensions-api.html
3345
3346         * xml/XMLTreeViewer.cpp:
3347         (WebCore::XMLTreeViewer::hasNoStyleInformation):
3348         * xml/XMLViewer.js:
3349
3350 2011-03-31  Sheriff Bot  <webkit.review.bot@gmail.com>
3351
3352         Unreviewed, rolling out r82589.
3353         http://trac.webkit.org/changeset/82589
3354         https://bugs.webkit.org/show_bug.cgi?id=57564
3355
3356         This patch requires many more updated results than it contains
3357         (Requested by abarth|gardener on #webkit).
3358
3359         * css/CSSSelector.cpp:
3360         (WebCore::CSSSelector::pseudoId):
3361         (WebCore::nameToPseudoTypeMap):
3362         (WebCore::CSSSelector::extractPseudoType):
3363         * css/CSSSelector.h:
3364         * css/html.css:
3365         (meter::-webkit-meter-horizontal-bar):
3366         (meter::-webkit-meter-vertical-bar):
3367         (meter::-webkit-meter-horizontal-optimum-value):
3368         (meter::-webkit-meter-horizontal-suboptimal-value):
3369         (meter::-webkit-meter-horizontal-even-less-good-value):
3370         (meter::-webkit-meter-vertical-optimum-value):
3371         (meter::-webkit-meter-vertical-suboptimal-value):
3372         (meter::-webkit-meter-vertical-even-less-good-value):
3373         * rendering/RenderMeter.cpp:
3374         (WebCore::MeterPartElement::MeterPartElement):
3375         (WebCore::MeterPartElement::createForPart):
3376         (WebCore::MeterPartElement::hide):
3377         (WebCore::MeterPartElement::restoreVisibility):
3378         (WebCore::MeterPartElement::updateStyleForPart):
3379         (WebCore::MeterPartElement::saveVisibility):
3380         (WebCore::RenderMeter::~RenderMeter):
3381         (WebCore::RenderMeter::createPart):
3382         (WebCore::RenderMeter::updateFromElement):
3383         (WebCore::RenderMeter::layoutParts):
3384         (WebCore::RenderMeter::shouldHaveParts):
3385         (WebCore::RenderMeter::valuePartRect):
3386         (WebCore::RenderMeter::orientation):
3387         (WebCore::RenderMeter::valuePseudoId):
3388         (WebCore::RenderMeter::barPseudoId):
3389         * rendering/RenderMeter.h:
3390         (WebCore::RenderMeter::shadowAttached):
3391         * rendering/RenderTheme.cpp:
3392         (WebCore::RenderTheme::supportsMeter):
3393         * rendering/RenderTheme.h:
3394         * rendering/RenderThemeMac.h:
3395         * rendering/RenderThemeMac.mm:
3396         (WebCore::RenderThemeMac::paintMeter):
3397         (WebCore::RenderThemeMac::supportsMeter):
3398         * rendering/style/RenderStyleConstants.h:
3399
3400 2011-03-31  Xan Lopez  <xlopez@igalia.com>
3401
3402         Reviewed by Martin Robinson.
3403
3404         [GTK] Link explicitly with XRender on Linux/Unix
3405         https://bugs.webkit.org/show_bug.cgi?id=57558
3406
3407         * GNUmakefile.am: add XRender CFLAGS.
3408
3409 2011-03-31  Eric Seidel  <eric@webkit.org>
3410
3411         Reviewed by Ryosuke Niwa.
3412
3413         Rename BidiResolver::emptyRun to m_emtpyRun to match modern style
3414         https://bugs.webkit.org/show_bug.cgi?id=57549
3415
3416         * platform/text/BidiResolver.h:
3417         (WebCore::BidiResolver::BidiResolver):
3418         (WebCore::::appendRun):
3419         (WebCore::::lowerExplicitEmbeddingLevel):
3420         (WebCore::::raiseExplicitEmbeddingLevel):
3421         (WebCore::::deleteRuns):
3422         (WebCore::::createBidiRunsForLine):
3423         * rendering/InlineIterator.h:
3424         (WebCore::InlineBidiResolver::appendRun):
3425
3426 2011-03-31  Tom Sepez  <tsepez@chromium.org>
3427
3428         Reviewed by Eric Seidel.
3429
3430         Make ContainerNode::insertIntoDocument() collect all nodes before
3431         operating on any of them.  Add small helper function and use it
3432         througout the file where this action is already taking place.
3433         https://bugs.webkit.org/show_bug.cgi?id=57265
3434         
3435         Test: svg/dom/range-delete.html
3436
3437         * dom/ContainerNode.cpp:
3438         (WebCore::collectNodes):
3439         (WebCore::collectTargetNodes):
3440         (WebCore::ContainerNode::takeAllChildrenFrom):
3441         (WebCore::willRemoveChildren):
3442         (WebCore::ContainerNode::insertedIntoDocument):
3443
3444 2011-03-31  Satish Sampath  <satish@chromium.org>
3445
3446         Reviewed by Steve Block.
3447
3448         While drawing a speech input button, validate that the node is really a speech input button.
3449         https://bugs.webkit.org/show_bug.cgi?id=57469
3450
3451         Test: fast/speech/speech-style-on-non-speech-elements.html
3452
3453         * dom/Element.h:
3454         (WebCore::Element::isInputFieldSpeechButtonElement):
3455         * html/shadow/TextControlInnerElements.h:
3456         (WebCore::InputFieldSpeechButtonElement::isInputFieldSpeechButtonElement):
3457         (WebCore::toInputFieldSpeechButtonElement):
3458         * rendering/RenderInputSpeech.cpp:
3459         (WebCore::RenderInputSpeech::paintInputFieldSpeechButton):
3460
3461 2011-03-31  Ryosuke Niwa  <rniwa@webkit.org>
3462
3463         Build fix after r82588. Reverted unintentional change.
3464
3465         * editing/SelectionController.cpp:
3466         (WebCore::SelectionController::modifyMovingLeft):
3467
3468 2011-03-31  Mario Sanchez Prada  <msanchez@igalia.com>
3469
3470         Reviewed by Xan Lopez.
3471
3472         [GTK] Warnings happening because of unhandled switch cases in AccessibilityObjectWrapperAtk
3473         https://bugs.webkit.org/show_bug.cgi?id=57534
3474
3475         Fix compilation warnings.
3476
3477         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
3478         (getAttributeSetForAccessibilityObject): Add unhandled cases.
3479
3480 2011-03-30  Pavel Podivilov  <podivilov@chromium.org>
3481
3482         Reviewed by Pavel Feldman.
3483
3484         Web Inspector: remove unnecessary newBody output parameter from editScriptSource protocol method.
3485         https://bugs.webkit.org/show_bug.cgi?id=57444
3486
3487         * bindings/js/ScriptDebugServer.cpp:
3488         (WebCore::ScriptDebugServer::editScriptSource):
3489         * bindings/js/ScriptDebugServer.h:
3490         * bindings/v8/ScriptDebugServer.cpp:
3491         (WebCore::ScriptDebugServer::editScriptSource):
3492         * bindings/v8/ScriptDebugServer.h:
3493         * inspector/Inspector.json:
3494         * inspector/InspectorDebuggerAgent.cpp:
3495         (WebCore::InspectorDebuggerAgent::editScriptSource):
3496         * inspector/InspectorDebuggerAgent.h:
3497         * inspector/front-end/DebuggerModel.js:
3498         (WebInspector.DebuggerModel.prototype.editScriptSource):
3499         (WebInspector.DebuggerModel.prototype._didEditScriptSource):
3500         * inspector/front-end/DebuggerPresentationModel.js:
3501         (WebInspector.DebuggerPresentationModel.prototype.editScriptSource.didEditScriptSource):
3502         (WebInspector.DebuggerPresentationModel.prototype.editScriptSource):
3503         * inspector/front-end/SourceFrame.js:
3504         (WebInspector.SourceFrame.prototype._handleSave.didEditScriptSource):
3505         (WebInspector.SourceFrame.prototype._handleSave):
3506
3507 2011-03-30  MORITA Hajime <morrita@google.com>
3508
3509         Reviewed by Dimitri Glazkov.
3510
3511         <meter> can only support horizontal indicator
3512         https://bugs.webkit.org/show_bug.cgi?id=56001
3513
3514         - Removed code which deals with the direction and
3515           left the horizontal path.
3516         - Removed "horizontal" from related names which is now
3517           redundant.
3518         
3519         * css/CSSSelector.cpp:
3520         (WebCore::CSSSelector::pseudoId):
3521         (WebCore::nameToPseudoTypeMap):
3522         (WebCore::CSSSelector::extractPseudoType):
3523         * css/CSSSelector.h:
3524         * css/html.css:
3525         (meter::-webkit-meter-bar):
3526         (meter::-webkit-meter-optimum-value):
3527         (meter::-webkit-meter-suboptimal-value):
3528         (meter::-webkit-meter-even-less-good-value):
3529         * rendering/RenderMeter.cpp:
3530         (WebCore::RenderMeter::~RenderMeter):
3531         (WebCore::RenderMeter::createPart):
3532         (WebCore::RenderMeter::updateFromElement):
3533         (WebCore::RenderMeter::layoutParts):
3534         (WebCore::RenderMeter::styleDidChange):
3535         (WebCore::RenderMeter::shouldHaveParts):
3536         (WebCore::RenderMeter::valuePartRect):
3537         (WebCore::RenderMeter::valuePseudoId):
3538         (WebCore::RenderMeter::barPseudoId):
3539         (WebCore::RenderMeter::detachShadows):
3540         (WebCore::RenderMeter::updateShadows):
3541         * rendering/RenderMeter.h:
3542         (WebCore::RenderMeter::shadowAttached):
3543         * rendering/RenderTheme.cpp:
3544         (WebCore::RenderTheme::supportsMeter):
3545         * rendering/RenderTheme.h:
3546         * rendering/RenderThemeMac.h:
3547         * rendering/RenderThemeMac.mm:
3548         (WebCore::RenderThemeMac::paintMeter):
3549         (WebCore::RenderThemeMac::supportsMeter):
3550         * rendering/style/RenderStyleConstants.h:
3551
3552 2011-03-30  Xiaomei Ji  <xji@chromium.org>
3553
3554         Reviewed by Ryosuke Niwa.
3555
3556         Experiment with moving caret by word in visual order.
3557         https://bugs.webkit.org/show_bug.cgi?id=57336
3558
3559         Follow Firefox's convention in Windows, 
3560         In LTR block, word break visually moves cursor to the left boundary of words,
3561         In RTL block, word break visually moves cursor to the right boundary of words.
3562
3563         This is the 1st version of implementing "move caret by word in visual order".
3564         It only works in the following situation:
3565         1. For a LTR box in a LTR block or a RTL box in RTL block, 
3566         when caret is at the left boundary of the box and we are looking for 
3567         the word boundary in right.
3568         2. For a LTR or RTL box in a LTR block, when caret is at the left boundary
3569         of the box and we are looking for the word boundary in left and 
3570         previous box is a LTR box.
3571         3. For a LTR or RTL box in a RTL block, when the caret is at the right 
3572         boundary of the box and we are looking for the word boundary in right and next box is RTL box.
3573
3574         An experimental granularity is introduced, as a side effect, functions having switch statements
3575         to handle those granularities have to add more one case to handle this new granularity.
3576         The experimental granularity is exposed though JS by '-webkit-visual-word".
3577
3578         The overall algorithm is looping through inline boxes visually and looking
3579         for the visually nearest word break position. 
3580
3581         Test: editing/selection/move-by-word-visually.html
3582
3583         * editing/SelectionController.cpp:
3584         (WebCore::SelectionController::modifyExtendingRight):
3585         (WebCore::SelectionController::modifyExtendingForward):
3586         (WebCore::SelectionController::modifyMovingRight):
3587         (WebCore::SelectionController::modifyMovingForward):
3588         (WebCore::SelectionController::modifyExtendingLeft):
3589         (WebCore::SelectionController::modifyExtendingBackward):
3590         (WebCore::SelectionController::modifyMovingLeft):
3591         (WebCore::SelectionController::modifyMovingBackward):
3592         * editing/TextGranularity.h:
3593         * editing/VisibleSelection.cpp:
3594         (WebCore::VisibleSelection::setStartAndEndFromBaseAndExtentRespectingGranularity):
3595         * editing/visible_units.cpp:
3596         (WebCore::previousWordBreakInBoxInsideBlockWithSameDirectionality):
3597         (WebCore::wordBoundaryInBox):
3598         (WebCore::wordBoundaryInAdjacentBoxes):
3599         (WebCore::leftWordBoundary):
3600         (WebCore::rightWordBoundary):
3601         (WebCore::leftWordPosition):
3602         (WebCore::rightWordPosition):
3603         * editing/visible_units.h:
3604         * page/DOMSelection.cpp:
3605         (WebCore::DOMSelection::modify):
3606
3607 2011-03-31  Dimitri Glazkov  <dglazkov@chromium.org>
3608
3609         Reviewed by Darin Adler.
3610
3611         Move coordinate-computing logic into MouseRelatedEvent.
3612         https://bugs.webkit.org/show_bug.cgi?id=57521
3613
3614         Refactoring, covered by existing tests.
3615
3616         * dom/EventDispatcher.cpp:
3617         (WebCore::EventDispatcher::dispatchWheelEvent): Yank calculation of
3618             coordinates out.
3619         (WebCore::EventDispatcher::dispatchMouseEvent): Ditto.
3620         * dom/MouseEvent.cpp:
3621         (WebCore::MouseEvent::create): Add coordinate-computing logic.
3622         * dom/MouseEvent.h: Adjust decl to reflect new meaning of params.
3623         * dom/MouseRelatedEvent.cpp:
3624         (WebCore::MouseRelatedEvent::MouseRelatedEvent): Ditto.
3625         * page/EventHandler.cpp:
3626         (WebCore::EventHandler::dispatchDragEvent): Ditto.
3627
3628 2011-03-30  Alexander Pavlov  <apavlov@chromium.org>
3629
3630         Reviewed by Pavel Feldman.
3631
3632         Web Inspector: document CSS agent.
3633         https://bugs.webkit.org/show_bug.cgi?id=57435
3634
3635         * inspector/Inspector.json:
3636
3637 2011-03-31  Andrey Kosyakov  <caseq@chromium.org>
3638
3639         Reviewed by Yury Semikhatsky.
3640
3641         Web Inspector: remove periods at the end of error messages
3642         https://bugs.webkit.org/show_bug.cgi?id=57544
3643
3644         * inspector/InjectedScript.cpp:
3645         (WebCore::InjectedScript::getProperties):
3646         (WebCore::InjectedScript::makeObjectCall):
3647         * inspector/InspectorCSSAgent.cpp:
3648         (WebCore::InspectorCSSAgent::elementForId):
3649         (WebCore::InspectorCSSAgent::styleSheetForId):
3650         * inspector/InspectorDOMAgent.cpp:
3651         (WebCore::InspectorDOMAgent::assertNode):
3652         (WebCore::InspectorDOMAgent::assertElement):
3653         (WebCore::InspectorDOMAgent::assertHTMLElement):
3654         (WebCore::InspectorDOMAgent::querySelector):
3655         (WebCore::InspectorDOMAgent::querySelectorAll):
3656         (WebCore::InspectorDOMAgent::setAttribute):
3657         (WebCore::InspectorDOMAgent::removeAttribute):
3658         (WebCore::InspectorDOMAgent::removeNode):
3659         (WebCore::InspectorDOMAgent::setNodeValue):
3660         * inspector/InspectorDebuggerAgent.cpp:
3661         (WebCore::InspectorDebuggerAgent::setPauseOnExceptionsState):
3662         * inspector/InspectorResourceAgent.cpp:
3663         (WebCore::InspectorResourceAgent::resourceContent):
3664         (WebCore::InspectorResourceAgent::resourceContentBase64):
3665         (WebCore::InspectorResourceAgent::getResourceContent):
3666         * inspector/InspectorRuntimeAgent.cpp:
3667         (WebCore::InspectorRuntimeAgent::setPropertyValue):
3668
3669 2011-03-31  Evan Martin  <evan@chromium.org>
3670
3671         Reviewed by Eric Seidel.
3672
3673         <title> should support dir attribute
3674         https://bugs.webkit.org/show_bug.cgi?id=50961
3675
3676         Introduce a new StringWithDirection object that carries a String along
3677         with the TextDirection associated with the String.  Use this object for
3678         document titles used within WebCore, because in HTML the direction of
3679         a title can be set with the 'dir' attribute.
3680
3681         Put FIXMEs at the WebKit level to expose the new direction information
3682         to clients.
3683
3684         No behavioral change intended, so no new tests.  A follow-up will expose
3685         the title direction and hopefully can be accompanied by tests that
3686         verify it is correct.
3687
3688         * dom/Document.cpp:
3689         (WebCore::Document::Document):
3690         (WebCore::Document::updateTitle):
3691         (WebCore::Document::setTitle):
3692         (WebCore::Document::removeTitle):
3693         * dom/Document.h:
3694         (WebCore::Document::title):
3695         * html/HTMLTitleElement.cpp:
3696         (WebCore::HTMLTitleElement::HTMLTitleElement):
3697         (WebCore::HTMLTitleElement::childrenChanged):
3698         (WebCore::HTMLTitleElement::text):
3699         (WebCore::HTMLTitleElement::textWithDirection):
3700         * html/HTMLTitleElement.h:
3701         * loader/DocumentLoader.cpp:
3702         (WebCore::DocumentLoader::setTitle):
3703         * loader/DocumentLoader.h:
3704         (WebCore::DocumentLoader::title):
3705         * loader/EmptyClients.h:
3706         (WebCore::EmptyFrameLoaderClient::dispatchDidReceiveTitle):
3707         (WebCore::EmptyFrameLoaderClient::setTitle):
3708         * loader/FrameLoader.cpp:
3709         (WebCore::FrameLoader::receivedFirstData):
3710         (WebCore::FrameLoader::commitProvisionalLoad):
3711         (WebCore::FrameLoader::setTitle):
3712         * loader/FrameLoader.h:
3713         * loader/FrameLoaderClient.h:
3714         * loader/HistoryController.cpp:
3715         (WebCore::HistoryController::updateForBackForwardNavigation):
3716         (WebCore::HistoryController::updateForReload):
3717         (WebCore::HistoryController::updateForRedirectWithLockedBackForwardList):
3718         (WebCore::HistoryController::updateForClientRedirect):
3719         (WebCore::HistoryController::updateForCommit):
3720         (WebCore::HistoryController::setCurrentItemTitle):
3721         (WebCore::HistoryController::initializeItem):
3722         * loader/HistoryController.h:
3723         * platform/text/StringWithDirection.h: Added.
3724         (WebCore::StringWithDirection::StringWithDirection):
3725         (WebCore::StringWithDirection::operator==):
3726         (WebCore::StringWithDirection::operator!=):
3727         * svg/SVGTitleElement.cpp:
3728         (WebCore::SVGTitleElement::insertedIntoDocument):
3729         (WebCore::SVGTitleElement::childrenChanged):
3730
3731 2011-03-31  Alexander Pavlov  <apavlov@chromium.org>
3732
3733         Reviewed by Yury Semikhatsky.
3734
3735         Web Inspector: CSS domain - make a "range" object, get rid of "properties" object for Style objects
3736         https://bugs.webkit.org/show_bug.cgi?id=57538
3737
3738         * inspector/InspectorStyleSheet.cpp:
3739         (WebCore::buildSourceRangeObject):
3740         (WebCore::InspectorStyle::buildObjectForStyle):
3741         (WebCore::InspectorStyle::populateObjectWithStyleProperties):
3742         * inspector/front-end/AuditRules.js:
3743         (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.evalCallback.selectorsCallback):
3744         * inspector/front-end/CSSStyleModel.js:
3745         (WebInspector.CSSStyleDeclaration):
3746
3747 2011-03-31  Sheriff Bot  <webkit.review.bot@gmail.com>
3748
3749         Unreviewed, rolling out r82565.
3750         http://trac.webkit.org/changeset/82565
3751         https://bugs.webkit.org/show_bug.cgi?id=57541
3752
3753         Caused assertion failures. (Requested by bbandix on #webkit).
3754
3755         * platform/graphics/filters/FEFlood.cpp:
3756         (WebCore::FEFlood::setFloodColor):
3757         (WebCore::FEFlood::setFloodOpacity):
3758         * platform/graphics/filters/FEFlood.h:
3759         * platform/graphics/filters/FESpecularLighting.cpp:
3760         (WebCore::FESpecularLighting::setLightingColor):
3761         * platform/graphics/filters/FESpecularLighting.h:
3762         * rendering/svg/RenderSVGResourceFilterPrimitive.cpp:
3763         * rendering/svg/RenderSVGResourceFilterPrimitive.h:
3764         * rendering/svg/SVGResourcesCache.cpp:
3765         (WebCore::SVGResourcesCache::clientStyleChanged):
3766         * svg/SVGFEDiffuseLightingElement.cpp:
3767         (WebCore::SVGFEDiffuseLightingElement::setFilterEffectAttribute):
3768         * svg/SVGFEFloodElement.cpp:
3769         * svg/SVGFEFloodElement.h:
3770         * svg/SVGFESpecularLightingElement.cpp:
3771         (WebCore::SVGFESpecularLightingElement::setFilterEffectAttribute):
3772
3773 2011-03-31  Renata Hodovan  <reni@webkit.org>
3774
3775         Reviewed by Dirk Schulze.
3776
3777         CSS related SVG*Element changes doesn't require relayout
3778         https://bugs.webkit.org/show_bug.cgi?id=56906
3779
3780         The changes of some CSS related SVGFilter properties e.g. lighting-color, flood-color, flood-opacity
3781         need only repaint. To avoid the default invalidation of filters in SVGResourceCache::clientStyleChange()
3782         we need an early return. So RenderSVGResourceFilterPrimitive::styleDidChange() can handle these properties
3783         via RenderSVGResourceFilter::primitiveAttributeChanged() the same way like we do it for the other SVGAttributes.
3784
3785         Tests: svg/dynamic-updates/SVGFEDiffuseLightingElement-inherit-lighting-color-css-prop.html
3786                svg/dynamic-updates/SVGFEFloodElement-inherit-flood-color.html
3787                svg/dynamic-updates/SVGFESpecularLightingElement-inherit-lighting-color-css-prop.html
3788                svg/dynamic-updates/SVGFESpecularLightingElement-lighting-color-css-prop.html
3789
3790         * platform/graphics/filters/FEFlood.cpp:
3791         (WebCore::FEFlood::setFloodColor):
3792         (WebCore::FEFlood::setFloodOpacity):
3793         * platform/graphics/filters/FEFlood.h:
3794         * platform/graphics/filters/FESpecularLighting.cpp:
3795         (WebCore::FESpecularLighting::setLightingColor):
3796         * platform/graphics/filters/FESpecularLighting.h:
3797         * rendering/svg/RenderSVGResourceFilterPrimitive.cpp:
3798         (WebCore::RenderSVGResourceFilterPrimitive::styleDidChange):
3799         * rendering/svg/RenderSVGResourceFilterPrimitive.h:
3800         * rendering/svg/SVGResourcesCache.cpp:
3801         (WebCore::SVGResourcesCache::clientStyleChanged):
3802         * svg/SVGFEDiffuseLightingElement.cpp:
3803         (WebCore::SVGFEDiffuseLightingElement::setFilterEffectAttribute):
3804         * svg/SVGFEFloodElement.cpp:
3805         (WebCore::SVGFEFloodElement::setFilterEffectAttribute):
3806         * svg/SVGFEFloodElement.h:
3807         * svg/SVGFESpecularLightingElement.cpp:
3808         (WebCore::SVGFESpecularLightingElement::setFilterEffectAttribute):
3809
3810 2011-03-29  Vsevolod Vlasov  <vsevik@chromium.org>
3811
3812         Reviewed by Pavel Feldman.
3813
3814         XML Viewer: declared namespaces are not rendered.
3815         https://bugs.webkit.org/show_bug.cgi?id=56262
3816
3817         XML viewer rewritten on javascript.
3818
3819         * CMakeLists.txt:
3820         * DerivedSources.make:
3821         * GNUmakefile.am:
3822         * WebCore.gyp/WebCore.gyp:
3823         * WebCore.gypi:
3824         * WebCore.vcproj/WebCore.vcproj:
3825         * WebCore.xcodeproj/project.pbxproj:
3826         * dom/XMLDocumentParserLibxml2.cpp:
3827         (WebCore::XMLDocumentParser::doEnd):
3828         * xml/XMLTreeViewer.cpp:
3829         (WebCore::XMLTreeViewer::transformDocumentToTreeView):
3830         * xml/XMLViewer.css: Added.
3831         * xml/XMLViewer.js: Added.
3832         * xml/XMLViewer.xsl: Removed.
3833         * xml/XSLStyleSheet.h:
3834
3835 2011-03-31  Jaehun Lim  <ljaehun.lim@samsung.com>
3836
3837         Unreviewed build fix.
3838
3839         Fix build break after rolling out r82496
3840         https://bugs.webkit.org/show_bug.cgi?id=57536
3841
3842         * platform/efl/RenderThemeEfl.cpp:
3843
3844 2011-03-31  Andrey Adaikin  <aandrey@google.com>
3845
3846         Reviewed by Pavel Feldman.
3847
3848         Web Inspector: execution line is displayed incorrectly after source editing.
3849         https://bugs.webkit.org/show_bug.cgi?id=57229
3850
3851         * inspector/front-end/SourceFrame.js:
3852         (WebInspector.SourceFrame.prototype._saveViewerState):
3853         (WebInspector.SourceFrame.prototype._restoreViewerState):
3854         (WebInspector.SourceFrame.prototype._startEditing):
3855         (WebInspector.SourceFrame.prototype._endEditing):
3856         (WebInspector.SourceFrame.prototype._createTextViewer):
3857         (WebInspector.SourceFrame.prototype.setExecutionLine):
3858         (WebInspector.SourceFrame.prototype._handleSave.didEditScriptSource):
3859         (WebInspector.SourceFrame.prototype._handleSave):
3860         (WebInspector.SourceFrame.prototype._handleRevertEditing):
3861         * inspector/front-end/TextViewer.js:
3862         (WebInspector.TextEditorChunkedPanel.prototype.addDecoration):
3863         (WebInspector.TextEditorChunkedPanel.prototype.removeDecoration):
3864         (WebInspector.TextEditorMainPanel.prototype.makeLineAChunk):
3865         (WebInspector.TextEditorMainPanel.prototype._positionToSelection):
3866
3867 2011-03-30  Alexander Pavlov  <apavlov@chromium.org>
3868
3869         Reviewed by Pavel Feldman.
3870
3871         Web Inspector: Make the CSStyle "shorthandValues" name-value map an array
3872         https://bugs.webkit.org/show_bug.cgi?id=57452
3873
3874         No new tests, as this is a refactoring.
3875
3876         * inspector/InspectorCSSAgent.cpp:
3877         * inspector/InspectorStyleSheet.cpp:
3878         (WebCore::InspectorStyle::populateObjectWithStyleProperties):
3879         * inspector/front-end/CSSStyleModel.js:
3880         (WebInspector.CSSStyleDeclaration):
3881         (WebInspector.CSSStyleDeclaration.buildShorthandValueMap):
3882
3883 2011-03-30  Steve Block  <steveblock@google.com>
3884
3885         Reviewed by Jeremy Orlow.
3886
3887         JavaField should not expose JavaString in its API
3888         https://bugs.webkit.org/show_bug.cgi?id=55766
3889
3890         This patch fixes JavaField for V8 only.
3891         - Factors out a JavaField interface which does not use JNI types.
3892           This will allow the Java bridge to be used with objects that
3893           don't use JNI directly. The existing jobject-backed
3894           implementation is moved to a new JavaFieldJobject class which
3895           implements the interface.
3896         - Use WTF::String in place of JavaString in the API, as JavaString
3897           exposes JNI types in its interface.
3898
3899         No new tests, refactoring only.
3900
3901         * Android.v8bindings.mk:
3902         * WebCore.gypi:
3903         * bridge/jni/JavaMethod.h:
3904         (JSC::Bindings::JavaMethod::~JavaMethod):
3905         * bridge/jni/JobjectWrapper.h:
3906         * bridge/jni/v8/JavaClassV8.cpp:
3907         (JavaClass::JavaClass):
3908         * bridge/jni/v8/JavaFieldJobjectV8.cpp:
3909         (JavaFieldJobject::JavaFieldJobject):
3910         * bridge/jni/v8/JavaFieldJobjectV8.h:
3911         (JSC::Bindings::JavaFieldJobject::name):
3912         (JSC::Bindings::JavaFieldJobject::typeClassName):
3913         (JSC::Bindings::JavaFieldJobject::type):
3914         * bridge/jni/v8/JavaFieldV8.h:
3915         (JSC::Bindings::JavaField::~JavaField):
3916         * bridge/jni/v8/JavaInstanceV8.cpp:
3917         (JavaInstance::getField):
3918
3919 2011-03-31  Levi Weintraub  <leviw@chromium.org>
3920
3921         Reviewed by Ryosuke Niwa.
3922
3923         Clean up from r82447.
3924         https://bugs.webkit.org/attachment.cgi?bugid=57532
3925
3926         No new tests since this doesn't change behavior.
3927
3928         * rendering/RenderBlock.cpp: Removing unnecessary visible_units.h include.
3929         * rendering/RootInlineBox.cpp:
3930         (WebCore::RootInlineBox::getLogicalStartBoxWithNode): Making const.
3931         (WebCore::RootInlineBox::getLogicalEndBoxWithNode): Ditto.
3932         * rendering/RootInlineBox.h:
3933
3934 2011-03-31  Benjamin Kalman  <kalman@chromium.org>
3935
3936         Reviewed by Ojan Vafai.
3937
3938         DeleteSelectionCommand::removeNode tries to insert block placeholder in non-editable table cell positions
3939         https://bugs.webkit.org/show_bug.cgi?id=57079
3940
3941         Test: editing/execCommand/delete-table-with-empty-contents.html
3942
3943         This bug results in an ASSERT fail in CompositeEditCommand::insertNodeAt, so is only observable in debug builds
3944         of WebKit.
3945
3946         * editing/DeleteSelectionCommand.cpp:
3947         (WebCore::firstEditablePositionInNode):
3948         (WebCore::DeleteSelectionCommand::removeNode): Use firstEditablePositionInNode rather than firstPositionInNode
3949         to find anchor node for the placeholder's position, if any.
3950
3951 2011-03-30  Ojan Vafai  <ojan@chromium.org>
3952
3953         Reviewed by Adam Roben.
3954
3955         REGRESSION (r82400): Leaks seen beneath CSSParser::createFloatingVectorSelector when parsing UA stylesheet
3956         https://bugs.webkit.org/show_bug.cgi?id=57478
3957
3958         * css/CSSGrammar.y:
3959         * css/CSSParser.cpp:
3960         (WebCore::CSSParser::sinkFloatingSelectorVector):
3961         * css/CSSParser.h:
3962
3963 2011-03-30  Dominic Cooney  <dominicc@google.com>
3964
3965         Reviewed by Dimitri Glazkov.
3966
3967         Adds layoutTestController.shadowRoot accessor to Mac DRT.
3968         https://bugs.webkit.org/show_bug.cgi?id=57415
3969
3970         * WebCore.exp.in: DRT needs to link WebCore::Element::shadowRoot
3971
3972 2011-03-30  Kent Tamura  <tkent@chromium.org>
3973
3974         Reviewed by Dimitri Glazkov.
3975
3976         Simplify HTMLFormElement::validateInteractively() for asynchronous scroll event
3977         https://bugs.webkit.org/show_bug.cgi?id=57424
3978
3979         r75555 made 'scroll' event asynchronous. So we don't need to worry about
3980         deleting or moving a target node in scrollIntoViewIfNeeded().
3981
3982         * html/HTMLFormElement.cpp:
3983         (WebCore::HTMLFormElement::validateInteractively): Remove unnecessary code.
3984
3985 2011-03-30  Kent Tamura  <tkent@chromium.org>
3986
3987         Reviewed by Darin Adler.
3988
3989         REGRESSION (r74895): Crash if input.type = 'file' twice
3990         https://bugs.webkit.org/show_bug.cgi?id=57343
3991
3992         * html/HTMLInputElement.cpp:
3993         (WebCore::HTMLInputElement::updateType):
3994           Don't call setAttribute() if the type is not changed.
3995
3996 2011-03-30  Jia Pu  <jpu@apple.com>
3997
3998         Reviewed by Darin Adler.
3999
4000         Autocorrection panel isn't positioned correctly in Safari (mac) when the zooming is not 1x.
4001         https://bugs.webkit.org/show_bug.cgi?id=57353
4002         <rdar://problem/9163983>
4003
4004         We use Range::textQuads() instead of Range::boundingRect() to compute the position of correction
4005         panel. The latter function compensates for zooming, which we don't need in this case. We also
4006         dismiss correction panel when zooming factor is changed. This is done in Frame::setPageAndTextZoomFactors().
4007
4008         * WebCore.exp.in:
4009         * dom/Range.cpp:
4010         (WebCore::Range::textQuads):
4011         * dom/Range.h:
4012         * editing/Editor.cpp:
4013         (WebCore::Editor::windowRectForRange):
4014         * editing/Editor.h:
4015         * page/Frame.cpp:
4016         (WebCore::Frame::setPageAndTextZoomFactors):
4017
4018 2011-03-30  Chris Guillory  <chris.guillory@google.com>
4019
4020         Reviewed by Dimitri Glazkov.
4021
4022         Render fonts using skia when requested by platform context.
4023         https://bugs.webkit.org/show_bug.cgi?id=56441
4024
4025         * platform/graphics/skia/PlatformContextSkia.cpp:
4026         (WebCore::PlatformContextSkia::isNativeFontRenderingAllowed):
4027         * platform/graphics/skia/PlatformContextSkia.h:
4028         * platform/graphics/skia/SkiaFontWin.cpp:
4029         (WebCore::windowsCanHandleTextDrawing):
4030         (WebCore::skiaDrawText):
4031         (WebCore::setupPaintForFont):
4032         (WebCore::paintSkiaText):
4033
4034 2011-03-30  Dan Bernstein  <mitz@apple.com>
4035
4036         Reviewed by Darin Adler.
4037
4038         <rdar://problem/9199518> Crash when focusing a styled editable element
4039
4040         Test: editing/deleting/delete-button-background-image-none.html
4041
4042         * editing/DeleteButtonController.cpp:
4043         (WebCore::isDeletableElement): Check all background layers for background images.
4044         * rendering/style/RenderStyle.h: Removed backgroundImage() as it was only used, incorrectly,
4045         in the above function.
4046
4047 2011-03-30  Martin Robinson  <mrobinson@igalia.com>
4048
4049         Try once more to fix the EFL build.
4050
4051         * platform/efl/RenderThemeEfl.cpp:
4052
4053 2011-03-30  Chris Fleizach  <cfleizach@apple.com>
4054
4055         Reviewed by Darin Adler.
4056
4057         Regression: VO cursor doesn't follow KB focus back into HTML view
4058         https://bugs.webkit.org/show_bug.cgi?id=57509
4059
4060         In WK2, because the web area never believes focus leave the area, sending the initial
4061         focus change when moving back into the web area, does not trigger a notification.
4062
4063         That behavior needs to be overridden by explicitly posting a focused UI element change
4064         at the appropriate time. This is only used in WK2, hence the absence of a layout test for now.
4065
4066         * page/FocusController.cpp:
4067         (WebCore::FocusController::setInitialFocus):
4068
4069 2011-03-30  MORITA Hajime  <morrita@google.com>
4070
4071         Reviewed by Simon Fraser.
4072
4073         box-shadow radii stays the same regardless of any spread set
4074         https://bugs.webkit.org/show_bug.cgi?id=49726
4075
4076         - Removed special shadowSpread handling path
4077         - Fixed broken multple inset shadow border computation.
4078
4079         Test: fast/box-shadow/spread-multiple-inset.html
4080
4081         * rendering/RenderBoxModelObject.cpp:
4082         (WebCore::RenderBoxModelObject::paintBoxShadow):
4083
4084 2011-03-29  Matthew Delaney  <mdelaney@apple.com>
4085
4086         Reviewed by Simon Fraser.
4087
4088         Use the Accelerate vImage vectorized (un)premultiplyImageData functions for ImageBufferCG
4089
4090         https://bugs.webkit.org/show_bug.cgi?id=53134
4091
4092         Test: fast/canvas/getPutImageDataPairTest.html
4093
4094         * platform/graphics/cg/ImageBufferCG.cpp:
4095
4096 2011-03-30  Steve Falkenburg  <sfalken@apple.com>
4097
4098         Reviewed by Adam Roben.
4099
4100         Share most vsprops between Release and Production builds in releaseproduction.vsprops
4101         https://bugs.webkit.org/show_bug.cgi?id=57508
4102
4103         * WebCore.vcproj/QTMovieWinProduction.vsprops:
4104         * WebCore.vcproj/QTMovieWinRelease.vsprops:
4105         * WebCore.vcproj/QTMovieWinReleaseCairoCFLite.vsprops:
4106         * WebCore.vcproj/WebCoreProduction.vsprops:
4107         * WebCore.vcproj/WebCoreRelease.vsprops:
4108         * WebCore.vcproj/WebCoreReleaseCairoCFLite.vsprops:
4109
4110 2011-03-30  Timur Iskhodzhanov  <timurrrr@google.com>
4111
4112         Reviewed by Alexey Proskuryakov.
4113
4114         Add some dynamic annotations to JavaScriptCore/wtf
4115         https://bugs.webkit.org/show_bug.cgi?id=53747
4116
4117         By using these annotations we can improve the precision of finding
4118         WebKit errors using dynamic analysis tools like ThreadSanitizer and Valgrind.
4119         These annotations don't affect the compiled binaries unless USE(DYNAMIC_ANNOTATIONS) is "1".
4120
4121         These files don't add new functionality, so don't need extra tests.
4122
4123         * ForwardingHeaders/wtf/DynamicAnnotations.h: Added.
4124
4125 2011-03-30  Abhishek Arya  <inferno@chromium.org>
4126
4127         Reviewed by Simon Fraser.
4128
4129         Fix wrong type assumptions in editing code. Mo