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