066173a0a222187b310f68c49021a1bb644063d3
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2011-02-08  Pavel Podivilov  <podivilov@chromium.org>
2
3         Reviewed by Yury Semikhatsky.
4
5         Web Inspector: script formatter should not create a worker for each script.
6         https://bugs.webkit.org/show_bug.cgi?id=54010
7
8         * inspector/front-end/ScriptFormatter.js:
9         (WebInspector.ScriptFormatter):
10         (WebInspector.ScriptFormatter.prototype._formatScript):
11         (WebInspector.ScriptFormatter.prototype._handleMessage):
12         (WebInspector.ScriptFormatter.prototype._handleError):
13
14 2011-02-08  Pavel Podivilov  <podivilov@chromium.org>
15
16         Reviewed by Pavel Feldman.
17
18         Web Inspector: sync uglifyjs parser files.
19         https://bugs.webkit.org/show_bug.cgi?id=54003
20
21         * inspector/front-end/UglifyJS/parse-js.js:
22         * inspector/front-end/UglifyJS/process.js:
23
24 2011-02-08  Ryosuke Niwa  <rniwa@webkit.org>
25
26         Reviewed by Darin Adler.
27
28         REGRESSION(71556,68059): queryCommandValue screws up background color at collapsed cursor
29         https://bugs.webkit.org/show_bug.cgi?id=53196
30
31         The bug was caused by Editor::selectionComputedStyle's modifying typing style without making a copy,
32         and its removing non-inheritable properties from the typing style. Fixed the bug by making a copy
33         before making the modification and not removing non-inheritable properties.
34
35         Also fixed a bug in selectionStartCSSPropertyValue that it doesn't handle xx-small to -webkit-xxx-large
36         by extracting a function from StyleChange::extractTextStyles and calling it in both extractTextStyles
37         and selectionStartCSSPropertyValue.
38
39         Test: editing/style/query-typing-style.html
40
41         * editing/ApplyStyleCommand.cpp:
42         (WebCore::legacyFontSizeFromCSSValue): Extracted from StyleChange::extractTextStyles.
43         (WebCore::StyleChange::extractTextStyles): Calls legacyFontSizeFromCSSValue; this fixes the bug that
44         CSS values from xx-small through -webkit-xxx-large are not accounted.
45         * editing/ApplyStyleCommand.h:
46         * editing/Editor.cpp:
47         (WebCore::Editor::selectionStartCSSPropertyValue): Calls legacyFontSizeFromCSSValue.
48         (WebCore::Editor::selectionComputedStyle): Makes a copy before modifying typing style.
49         No longer calls removeNonEditingProperties on the copied typing style so that background-color property
50         is included when merged into the style.
51
52 2011-02-08  Sam Weinig  <sam@webkit.org>
53
54         Reviewed by Maciej Stachowiak.
55
56         REGRESSION (r76831): Subframes are printed blank
57         <rdar://problem/8945867>
58
59         * page/FrameView.cpp:
60         (WebCore::FrameView::paintOverhangAreas):
61         Don't paint overhangs when printing.
62
63 2011-02-07  Jeremy Orlow  <jorlow@chromium.org>
64
65         Reviewed by Nate Chapin.
66
67         Events should propagate through IDBDatabase (for IDBRequest and IDBTransaction)
68         https://bugs.webkit.org/show_bug.cgi?id=53975
69
70         The third change in the series of overhauling IndexedDB's event model to match
71         the spec (at least the version in our heads and bugs).
72
73         Test: storage/indexeddb/transaction-event-propagation.html
74
75         * bindings/v8/V8DOMWrapper.cpp:
76         (WebCore::V8DOMWrapper::convertEventTargetToV8Object):
77         * dom/Event.cpp:
78         (WebCore::Event::isIDBAbortEvent):
79         (WebCore::Event::isIDBCompleteEvent):
80         * dom/Event.h:
81         * dom/EventTarget.cpp:
82         (WebCore::EventTarget::toIDBDatabase):
83         * dom/EventTarget.h:
84         * storage/IDBDatabase.cpp:
85         (WebCore::IDBDatabase::create):
86         (WebCore::IDBDatabase::IDBDatabase):
87         (WebCore::IDBDatabase::scriptExecutionContext):
88         (WebCore::IDBDatabase::eventTargetData):
89         (WebCore::IDBDatabase::ensureEventTargetData):
90         * storage/IDBDatabase.h:
91         (WebCore::IDBDatabase::toIDBDatabase):
92         (WebCore::IDBDatabase::refEventTarget):
93         (WebCore::IDBDatabase::derefEventTarget):
94         * storage/IDBDatabase.idl:
95         * storage/IDBRequest.cpp:
96         (WebCore::IDBRequest::onSuccess):
97         (WebCore::IDBRequest::dispatchEvent):
98         * storage/IDBTransaction.cpp:
99         (WebCore::IDBTransaction::backend):
100         (WebCore::IDBTransaction::db):
101         (WebCore::IDBTransaction::objectStore):
102         (WebCore::IDBTransaction::scriptExecutionContext):
103         (WebCore::IDBTransaction::dispatchEvent):
104         (WebCore::IDBTransaction::enqueueEvent):
105         * storage/IDBTransaction.h:
106         (WebCore::IDBTransaction::dispatchEvent):
107
108 2011-02-08  Kenneth Russell  <kbr@google.com>
109
110         Reviewed by James Robinson.
111
112         Add cache for GPU-accelerated path processing results
113         https://bugs.webkit.org/show_bug.cgi?id=45519
114
115         Adding a cache which holds the results of processing a path into
116         interior and exterior triangle meshes, according to the path
117         rendering algorithm from GPU Gems 3. No tests yet; will be tested
118         in conjunction with later code.
119
120         * platform/graphics/gpu/LoopBlinnPathCache.cpp: Added.
121         (WebCore::LoopBlinnPathCache::LoopBlinnPathCache):
122         (WebCore::LoopBlinnPathCache::~LoopBlinnPathCache):
123         (WebCore::LoopBlinnPathCache::addVertex):
124         (WebCore::LoopBlinnPathCache::clear):
125         (WebCore::LoopBlinnPathCache::addInteriorVertex):
126         (WebCore::LoopBlinnPathCache::numberOfInteriorEdgeVertices):
127         (WebCore::LoopBlinnPathCache::interiorEdgeVertices):
128         (WebCore::LoopBlinnPathCache::addInteriorEdgeVertex):
129         * platform/graphics/gpu/LoopBlinnPathCache.h: Added.
130         (WebCore::LoopBlinnPathCache::numberOfVertices):
131         (WebCore::LoopBlinnPathCache::vertices):
132         (WebCore::LoopBlinnPathCache::texcoords):
133         (WebCore::LoopBlinnPathCache::numberOfInteriorVertices):
134         (WebCore::LoopBlinnPathCache::interiorVertices):
135
136 2011-02-08  Zhenyao Mo  <zmo@google.com>
137
138         Reviewed by Kenneth Russell.
139
140         Rename GraphicsContext3D::WebGLEnumType
141         https://bugs.webkit.org/show_bug.cgi?id=45708
142
143         * html/canvas/WebGLProgram.cpp:
144         (WebCore::WebGLProgram::getAttachedShader):
145         * html/canvas/WebGLProgram.h:
146         * platform/graphics/GraphicsContext3D.h:
147
148 2011-02-08  Sheriff Bot  <webkit.review.bot@gmail.com>
149
150         Unreviewed, rolling out r77980.
151         http://trac.webkit.org/changeset/77980
152         https://bugs.webkit.org/show_bug.cgi?id=54043
153
154         "Crashes on Windows and Linux..." (Requested by leviw on
155         #webkit).
156
157         * WebCore.exp.in:
158         * accessibility/AXObjectCache.cpp:
159         (WebCore::AXObjectCache::visiblePositionForTextMarkerData):
160         * accessibility/AccessibilityObject.cpp:
161         (WebCore::startOfStyleRange):
162         (WebCore::endOfStyleRange):
163         * accessibility/AccessibilityRenderObject.cpp:
164         (WebCore::AccessibilityRenderObject::visiblePositionForIndex):
165         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
166         (objectAndOffsetUnignored):
167         * dom/Position.cpp:
168         (WebCore::Position::upstream):
169         (WebCore::Position::downstream):
170         * dom/Range.cpp:
171         (WebCore::Range::editingStartPosition):
172         * editing/Editor.cpp:
173         (WebCore::Editor::canDeleteRange):
174         * editing/ReplaceSelectionCommand.cpp:
175         (WebCore::ReplaceSelectionCommand::doApply):
176         * editing/SelectionController.cpp:
177         (WebCore::SelectionController::selectFrameElementInParentIfFullySelected):
178         (WebCore::SelectionController::setSelectedRange):
179         * editing/TextIterator.cpp:
180         (WebCore::TextIterator::shouldRepresentNodeOffsetZero):
181         * editing/TypingCommand.cpp:
182         (WebCore::TypingCommand::deleteKeyPressed):
183         * editing/VisiblePosition.cpp:
184         (WebCore::VisiblePosition::VisiblePosition):
185         (WebCore::VisiblePosition::leftVisuallyDistinctCandidate):
186         (WebCore::VisiblePosition::rightVisuallyDistinctCandidate):
187         (WebCore::VisiblePosition::canonicalPosition):
188         (WebCore::VisiblePosition::characterAfter):
189         (WebCore::VisiblePosition::localCaretRect):
190         (WebCore::makeRange):
191         (WebCore::startVisiblePosition):
192         (WebCore::endVisiblePosition):
193         (WebCore::setStart):
194         (WebCore::setEnd):
195         (WebCore::isFirstVisiblePositionInNode):
196         (WebCore::isLastVisiblePositionInNode):
197         * editing/VisiblePosition.h:
198         * editing/htmlediting.cpp:
199         (WebCore::firstInSpecialElement):
200         (WebCore::lastInSpecialElement):
201         (WebCore::visiblePositionBeforeNode):
202         (WebCore::visiblePositionAfterNode):
203         * editing/visible_units.cpp:
204         (WebCore::startPositionForLine):
205         (WebCore::endPositionForLine):
206         (WebCore::previousLinePosition):
207         (WebCore::nextLinePosition):
208         (WebCore::startOfParagraph):
209         (WebCore::endOfParagraph):
210         (WebCore::endOfBlock):
211         (WebCore::startOfDocument):
212         (WebCore::endOfDocument):
213         (WebCore::logicalStartPositionForLine):
214         (WebCore::logicalEndPositionForLine):
215         * page/DOMSelection.cpp:
216         (WebCore::DOMSelection::collapse):
217         (WebCore::DOMSelection::setBaseAndExtent):
218         (WebCore::DOMSelection::setPosition):
219         (WebCore::DOMSelection::extend):
220         * page/EventHandler.cpp:
221         (WebCore::EventHandler::handleMousePressEventSingleClick):
222         * rendering/RenderObject.cpp:
223         (WebCore::RenderObject::createVisiblePosition):
224         * rendering/RenderTextControl.cpp:
225         (WebCore::RenderTextControl::visiblePositionForIndex):
226         * svg/SVGTextContentElement.cpp:
227         (WebCore::SVGTextContentElement::selectSubString):
228
229 2011-02-08  Jia Pu  <jpu@apple.com>
230
231         Reviewed by Darin Adler.
232
233         VisibleSelection::setWithoutValidation() should allow caret selection.
234         https://bugs.webkit.org/show_bug.cgi?id=53943
235
236         Test: editing/undo/undo-paste-when-caret-is-not-in-range.html
237
238         * editing/VisibleSelection.cpp:
239         (WebCore::VisibleSelection::setWithoutValidation):
240
241 2011-02-08  Martin Robinson  <mrobinson@igalia.com>
242
243         Reviewed by Xan Lopez.
244
245         [GTK] Remove the last remnants of the Mozilla theme drawing code
246         https://bugs.webkit.org/show_bug.cgi?id=54035
247
248         Remove all Mozilla theme drawing code.
249
250         No new tests. This change only removes dead code.
251
252         * GNUmakefile.am: Remove Mozilla files from the source list.
253         * platform/gtk/RenderThemeGtk.h: Remove Mozilla-theme-drawing-related methods
254         and add m_colormap to hold the current colormap of the widgets.
255         * platform/gtk/RenderThemeGtk2.cpp: Remove Mozilla code.
256         (WebCore::RenderThemeGtk::platformInit): Ditto.
257         (WebCore::RenderThemeGtk::~RenderThemeGtk): Ditto.
258         (WebCore::RenderThemeGtk::gtkContainer): Ditto.
259         * platform/gtk/ScrollbarThemeGtk2.cpp: Ditto.
260         * platform/gtk/WidgetRenderingContext.cpp: Ditto.
261         (WebCore::WidgetRenderingContext::WidgetRenderingContext): Ditto.
262         * platform/gtk/WidgetRenderingContext.h: Ditto.
263         * platform/gtk/gtk2drawing.c: Removed.
264         * platform/gtk/gtkdrawing.h: Removed.
265
266 2011-02-08  Yael Aharon  <yael.aharon@nokia.com>
267
268         Reviewed by Antti Koivisto.
269
270         Crash when logging into gmail.com with frame flattening turned on.
271         https://bugs.webkit.org/show_bug.cgi?id=52449
272
273         Frame flattening algorithm requires that layout always starts from the main frame, since layout of
274         subframes impacts the layout of their parents. 
275         There are places in the code that call view->layout() not on the main frame.
276         Instead of changing all the callsites, I changed FrameView::layout()
277         to force layout from the main frame if frame flattening is enabled.
278         In addition, postLayoutTasks can trigger relayout, so make it use the timer even more.
279         Move the call to SelectionController::updateAppearance() to performPostLayoutTasks(), 
280         because calling the from layout() leads to a crash in pages that have a selection in an iframe.
281
282         Tests: fast/frames/flattening/iframe-flattening-crash.html
283                fast/frames/flattening/iframe-flattening-selection-crash.html
284
285         * page/FrameView.cpp:
286         (WebCore::FrameView::layout):
287         (WebCore::FrameView::performPostLayoutTasks):
288
289 2011-02-08  Andy Estes  <aestes@apple.com>
290
291         Reviewed by Darin Adler.
292
293         <rdar://problem/8913952> REGRESSION (r76301): 'plaintext-only' must be
294         a supported contentEditable mode.
295         https://bugs.webkit.org/show_bug.cgi?id=54041
296
297         * html/HTMLElement.cpp:
298         (WebCore::HTMLElement::setContentEditable): Setting the contentEditable
299         attribute to 'plaintext-only' should not throw an exception.
300
301 2011-02-08  Dan Bernstein  <mitz@apple.com>
302
303         Reviewed by Simon Fraser.
304
305         RenderRubyRun::m_beingDestroyed is redundant
306         https://bugs.webkit.org/show_bug.cgi?id=54042
307
308         * rendering/RenderRubyRun.cpp:
309         (WebCore::RenderRubyRun::RenderRubyRun): Removed intialization of m_beingDestroyed.
310         (WebCore::RenderRubyRun::removeChild): Use the base class beingDestroyed(). 
311         * rendering/RenderRubyRun.h:
312
313 2011-02-08  Levi Weintraub  <leviw@chromium.org>
314
315         Reviewed by Ryosuke Niwa.
316
317         Stop instantiating legacy editing Positions in VisiblePosition
318         https://bugs.webkit.org/show_bug.cgi?id=52919
319
320         Changing VisiblePosition completely away from legacy positions.
321
322         No new tests since this is functionaly equivalent.
323
324         * WebCore.exp.in: Removing the legacy VisiblePosition constructor and
325         adding the PositionIsOffsetInAnchor symbol. If we must create VisiblePositions
326         outside of WebCore, they should be parent anchored.
327         * accessibility/AXObjectCache.cpp:
328         (WebCore::AXObjectCache::visiblePositionForTextMarkerData):
329         * accessibility/AccessibilityObject.cpp:
330         (WebCore::startOfStyleRange):
331         (WebCore::endOfStyleRange):
332         * accessibility/AccessibilityRenderObject.cpp:
333         (WebCore::AccessibilityRenderObject::visiblePositionForIndex):
334         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
335         (objectAndOffsetUnignored):
336         * dom/Position.cpp:
337         (WebCore::Position::upstream): Fixed to correctly respect PositionIsAfterAnchor
338         (WebCore::Position::downstream): ditto
339         * dom/Range.cpp:
340         (WebCore::Range::editingStartPosition):
341         * editing/Editor.cpp:
342         (WebCore::Editor::canDeleteRange):
343         * editing/ReplaceSelectionCommand.cpp:
344         (WebCore::ReplaceSelectionCommand::doApply):
345         * editing/SelectionController.cpp:
346         (WebCore::SelectionController::selectFrameElementInParentIfFullySelected):
347         (WebCore::SelectionController::setSelectedRange):
348         * editing/TextIterator.cpp:
349         (WebCore::TextIterator::shouldRepresentNodeOffsetZero):
350         * editing/TypingCommand.cpp:
351         (WebCore::TypingCommand::deleteKeyPressed):
352         * editing/VisiblePosition.cpp:
353         (WebCore::VisiblePosition::leftVisuallyDistinctCandidate):
354         (WebCore::VisiblePosition::rightVisuallyDistinctCandidate):
355         (WebCore::VisiblePosition::canonicalPosition):
356         (WebCore::VisiblePosition::characterAfter):
357         (WebCore::VisiblePosition::localCaretRect):
358         (WebCore::makeRange):
359         (WebCore::startVisiblePosition):
360         (WebCore::endVisiblePosition):
361         (WebCore::setStart):
362         (WebCore::setEnd):
363         (WebCore::isFirstVisiblePositionInNode):
364         (WebCore::isLastVisiblePositionInNode):
365         * editing/VisiblePosition.h:
366         (WebCore::VisiblePosition::VisiblePosition):
367         * editing/htmlediting.cpp:
368         (WebCore::firstInSpecialElement):
369         (WebCore::lastInSpecialElement):
370         (WebCore::visiblePositionBeforeNode):
371         (WebCore::visiblePositionAfterNode):
372         * editing/visible_units.cpp:
373         (WebCore::startPositionForLine):
374         (WebCore::endPositionForLine):
375         (WebCore::previousLinePosition):
376         (WebCore::nextLinePosition):
377         (WebCore::startOfParagraph):
378         (WebCore::endOfParagraph):
379         (WebCore::endOfBlock):
380         (WebCore::startOfDocument):
381         (WebCore::endOfDocument):
382         (WebCore::logicalStartPositionForLine):
383         (WebCore::logicalEndPositionForLine):
384         * page/DOMSelection.cpp:
385         (WebCore::DOMSelection::collapse):
386         (WebCore::DOMSelection::setBaseAndExtent):
387         (WebCore::DOMSelection::setPosition):
388         (WebCore::DOMSelection::extend):
389         * page/EventHandler.cpp:
390         (WebCore::EventHandler::handleMousePressEventSingleClick):
391         * rendering/RenderObject.cpp:
392         (WebCore::RenderObject::createVisiblePosition):
393         * rendering/RenderTextControl.cpp:
394         (WebCore::RenderTextControl::visiblePositionForIndex):
395         * svg/SVGTextContentElement.cpp:
396         (WebCore::SVGTextContentElement::selectSubString):
397
398 2011-02-08  Michael Saboff  <msaboff@apple.com>
399
400         JSC::Bindings m_rootObject->isValid() assert fails when running layout tests
401         https://bugs.webkit.org/show_bug.cgi?id=53716
402
403         Changed ASSERT to be an if for the case where the RuntimeObject was
404         GC'ed before RootObject::invalidate is called.  In that case there is 
405         no need to remove the RuntimeObject from the RootObject.  The isValid()
406         call will be false in this case, but the RuntimeObject has already
407         been removed from the RootObject.  Added similar defensive code
408         in RootObject::removeRuntimeObject().
409
410         * bridge/jsc/BridgeJSC.cpp:
411         (JSC::Bindings::Instance::willDestroyRuntimeObject):
412         * bridge/runtime_root.cpp:
413         (JSC::Bindings::RootObject::removeRuntimeObject):
414
415 2011-02-08  Beth Dakin  <bdakin@apple.com>
416
417         Reviewed by Darin Adler.
418
419         Fix for <rdar://problem/8953365> CrashTracer: 14 
420         crashes in WebProcess at com.apple.WebCore: 
421         -[ScrollKnobAnimation setCurrentProgress:] + 258
422
423         This crash seems to happen when the animation is running
424         and a window is closed. If the ScrollAnimator is destroyed,
425         delegate calls for the animation can still run, so we have 
426         to make sure we inform the delegates when the ScrollAnimator 
427         is gone, and then we have to null-check it before we do 
428         anything with it.
429
430         Remove scrollbarPainterDelegate() since it's not used anymore.
431         * platform/mac/ScrollAnimatorMac.h:
432         * platform/mac/ScrollAnimatorMac.mm:
433         
434         Add null-checks for _animator
435         (-[ScrollbarPartAnimation setCurrentProgress:]):
436         (-[ScrollbarPartAnimation scrollAnimatorDestroyed]):
437         (-[ScrollbarPainterDelegate scrollerImp:animateKnobAlphaTo:duration:]):
438         (-[ScrollbarPainterDelegate scrollerImp:animateTrackAlphaTo:duration:]):
439         (-[ScrollbarPainterDelegate scrollerImp:overlayScrollerStateChangedTo:]):
440         
441         New function to inform the delegates that the ScrollAnimator
442         is being destroyed.
443         (-[ScrollbarPainterDelegate scrollAnimatorDestroyed]):
444         (WebCore::ScrollAnimatorMac::~ScrollAnimatorMac):
445
446 2011-02-08  Adam Barth  <abarth@webkit.org>
447
448         Reviewed by Eric Seidel.
449
450         Remove orphan code from old parser
451         https://bugs.webkit.org/show_bug.cgi?id=53984
452
453         This code appears to be unused.
454
455         * html/HTMLParserErrorCodes.cpp:
456         * html/HTMLParserErrorCodes.h:
457         * html/HTMLParserQuirks.h:
458         * loader/EmptyClients.h:
459         * page/ChromeClient.h:
460
461 2011-02-08  Martin Robinson  <mrobinson@igalia.com>
462
463         Reviewed by Gustavo Noronha Silva.
464
465         [GTK] Move scrollbar rendering out of gtk2drawing.c
466         https://bugs.webkit.org/show_bug.cgi?id=52836
467
468         Replace gtk2drawing.c scrollbar rendering with our own version. This
469         is the last use of the Mozilla theme drawing code.
470
471         No new tests. This should not change the rendering of the default
472         theme.
473
474         * platform/gtk/GtkVersioning.h: Add some more backported allocation setters.
475         * platform/gtk/RenderThemeGtk.h: Add a getter for the scrollbar widgets.
476         * platform/gtk/RenderThemeGtk2.cpp:  Initialize and add getters for scrollbar widgets.
477         (WebCore::RenderThemeGtk::platformInit): Ditto.
478         (WebCore::RenderThemeGtk::gtkHScrollbar): Ditto.
479         (WebCore::RenderThemeGtk::gtkVScrollbar): Ditto.
480         * platform/gtk/ScrollbarThemeGtk.cpp: 
481         (WebCore::ScrollbarThemeGtk::paint): We only repaint the scrolled
482         window background if we are repainting a button or the thumb. In that
483         case also repaint the track rect.
484         * platform/gtk/ScrollbarThemeGtk2.cpp: Port to WidgetRenderingContext.
485         (WebCore::ScrollbarThemeGtk::ScrollbarThemeGtk): Ditto.
486         (WebCore::ScrollbarThemeGtk::updateThemeProperties): Ditto.
487         (WebCore::getWidgetForScrollbar): Ditto.
488         (WebCore::ScrollbarThemeGtk::paintTrackBackground): Ditto.
489         (WebCore::ScrollbarThemeGtk::paintScrollbarBackground): Ditto.
490         (WebCore::ScrollbarThemeGtk::paintThumb): Ditto.
491         (WebCore::ScrollbarThemeGtk::paintButton): Ditto.
492         * platform/gtk/WidgetRenderingContext.cpp: Ditto.
493         (WebCore::WidgetRenderingContext::gtkPaintBox): Added an option which
494         also adjusts a widget allocation according to the paint rect. This is
495         necessary to properly draw scrollbar buttons.
496         * platform/gtk/WidgetRenderingContext.h: Ditto.
497
498 2011-02-08  Simon Fraser  <simon.fraser@apple.com>
499
500         Reviewed by Dan Bernstein.
501
502         Inset shadow with large offset renders incorrectly
503         https://bugs.webkit.org/show_bug.cgi?id=53882
504         
505         Fix an issue with inset shadows, when the shadow offset
506         was larger than the box size. In this case we'd fail to
507         fill the box with the shadow color.
508
509         Test: fast/box-shadow/inset-shadow-large-offset.html
510
511         * rendering/RenderBoxModelObject.cpp:
512         (WebCore::areaCastingShadowInHole): Return a rect that covers the area
513         which contributes to the inset shadow.
514         
515         (WebCore::RenderBoxModelObject::paintBoxShadow): Use areaCastingShadowInHole()
516         to compute the outerRect.
517
518 2011-02-08  Zhenyao Mo  <zmo@google.com>
519
520         Reviewed by Kenneth Russell.
521
522         drawElements should check if a buffer is bound to ELEMENT_ARRAY_BUFFER
523         https://bugs.webkit.org/show_bug.cgi?id=54017
524
525         * html/canvas/WebGLRenderingContext.cpp:
526         (WebCore::WebGLRenderingContext::drawElements):
527
528 2011-01-28  Dimitri Glazkov  <dglazkov@chromium.org>
529
530         Reviewed by Darin Adler.
531
532         Change the rest of HTMLMediaElement shadow DOM parts to use shadowPseudoId.
533         https://bugs.webkit.org/show_bug.cgi?id=53190
534
535         This is the second part of refactoring the HTMLMediaElement to use new
536         shadow DOM. The changes are mainly mechanical, except for needing to
537         add a new method to RenderTheme, which indicates whether or not status
538         display is being used by it. Previously, we relied on existence of a cached
539         pseudo style.
540
541         Refactoring, covered by existing tests.
542
543         * css/CSSSelector.cpp:
544         (WebCore::CSSSelector::pseudoId): Removed now-unused enum values.
545         (WebCore::nameToPseudoTypeMap): Ditto.
546         (WebCore::CSSSelector::extractPseudoType): Ditto.
547         * css/CSSSelector.h: Ditto.
548         * html/shadow/MediaControls.cpp:
549         (WebCore::MediaControls::createPanel): Changed to use the newly-added MediaControlPanelElement.
550         (WebCore::MediaControls::createCurrentTimeDisplay): Changed to use the newly-added
551             MediaControlCurrentTimeDisplayElement.
552         (WebCore::MediaControls::createTimeRemainingDisplay): Changed to use the newly-added
553                 MediaControlTimeRemainingDisplayElement.
554         * rendering/MediaControlElements.cpp:
555         (WebCore::MediaControlShadowRootElement::updateStyle): Changed to use the
556             standard style resolution.
557         (WebCore::MediaControlShadowRootElement::shadowPseudoId): Added.
558         (WebCore::MediaControlElement::MediaControlElement): Removed the switch statement
559             that is no longer necessary.
560         (WebCore::MediaControlElement::styleForElement): Changed to use the standard
561             style resolution.
562         (WebCore::MediaControlPanelElement::MediaControlPanelElement): Added.
563         (WebCore::MediaControlPanelElement::create): Added.
564         (WebCore::MediaControlPanelElement::displayType): Added.
565         (WebCore::MediaControlPanelElement::shadowPseudoId): Added.
566         (WebCore::MediaControlTimelineContainerElement::MediaControlTimelineContainerElement):
567             Removed PseudoId constructor arg.
568         (WebCore::MediaControlTimelineContainerElement::rendererIsNeeded):
569             Changed to use the newly-plumbed usesMediaControlStatusDisplay helper.
570         (WebCore::MediaControlTimelineContainerElement::displayType): Added.
571         (WebCore::MediaControlTimelineContainerElement::shadowPseudoId): Added.
572         (WebCore::MediaControlVolumeSliderContainerElement::MediaControlVolumeSliderContainerElement):
573             Removed PseudoId constructor arg.
574         (WebCore::MediaControlVolumeSliderContainerElement::displayType): Added.
575         (WebCore::MediaControlVolumeSliderContainerElement::shadowPseudoId): Added.
576         (WebCore::MediaControlStatusDisplayElement::MediaControlStatusDisplayElement):
577             Removed PseudoId constructor arg.
578         (WebCore::MediaControlStatusDisplayElement::rendererIsNeeded): Changed to
579             use the newly-plumbed usesMediaControlStatusDisplay helper.
580         (WebCore::MediaControlStatusDisplayElement::displayType): Added.
581         (WebCore::MediaControlStatusDisplayElement::shadowPseudoId): Added.
582         (WebCore::MediaControlTimeDisplayElement::MediaControlTimeDisplayElement):
583             Removed PseudoId constructor arg.
584         (WebCore::MediaControlTimeRemainingDisplayElement::create): Added.
585         (WebCore::MediaControlTimeRemainingDisplayElement::MediaControlTimeRemainingDisplayElement): Added.
586         (WebCore::MediaControlTimeRemainingDisplayElement::displayType): Added.
587         (WebCore::MediaControlTimeRemainingDisplayElement::shadowPseudoId): Added.
588         (WebCore::MediaControlCurrentTimeDisplayElement::create): Added.
589         (WebCore::MediaControlCurrentTimeDisplayElement::MediaControlCurrentTimeDisplayElement): Added.
590         (WebCore::MediaControlCurrentTimeDisplayElement::displayType): Added.
591         (WebCore::MediaControlCurrentTimeDisplayElement::shadowPseudoId): Added.
592         * rendering/MediaControlElements.h: Added/changed defs accordingly.
593         * rendering/RenderTheme.h:
594         (WebCore::RenderTheme::usesMediaControlStatusDisplay): Added.
595         * rendering/RenderThemeMac.h: Added def.
596         * rendering/RenderThemeMac.mm:
597         (WebCore::RenderThemeMac::usesMediaControlStatusDisplay): Added.
598         * rendering/style/RenderStyleConstants.h: Removed now-unused enum values.
599
600 2011-02-08  Xiaomei Ji  <xji@chromium.org>
601
602         Reviewed by Dan Bernstein.
603
604         Fix pop-up button text not rendered correctly according to its direction
605         in <option>.
606         https://bugs.webkit.org/show_bug.cgi?id=53642
607  
608         In adjustInnerStyle(), if m_innerBlock's direction or unicode-bidi 
609         changes, set it needs layout.
610
611         Test: fast/text/international/pop-up-button-text-alignment-and-direction.html
612
613         * rendering/RenderMenuList.cpp:
614         (WebCore::RenderMenuList::adjustInnerStyle):
615
616 2011-02-08  Ilya Tikhonovsky  <loislo@chromium.org>
617
618         Unreviewed build fix for Qt-minimal.
619
620         * inspector/InspectorInstrumentation.h:
621         (WebCore::InspectorInstrumentation::hasFrontend):
622
623 2011-02-02  Ilya Tikhonovsky  <loislo@chromium.org>
624
625         Reviewed by Yury Semikhatsky.
626
627         Web Inspector: move InspectorController's methods from InspectorAgent to InspectorController.
628
629         https://bugs.webkit.org/show_bug.cgi?id=53169
630
631         All the Inspector API for WebCore has two parts.
632         The first one is InspectorInstrumentation for WebCore.
633         The second is InspectorController for WebKit.
634         InspectorAgent was produced by renaming original InspectorController.
635         This patch extracts WebKit related methods from InspectorAgent to InspectorController.
636
637         * WebCore.exp.in:
638         * bindings/v8/custom/V8InspectorFrontendHostCustom.cpp:
639         * html/HTMLDocument.cpp:
640         (WebCore::HTMLDocument::createParser):
641         * inspector/InspectorAgent.cpp:
642         (WebCore::InspectorAgent::InspectorAgent):
643         (WebCore::InspectorAgent::~InspectorAgent):
644         (WebCore::InspectorAgent::restoreInspectorStateFromCookie):
645         (WebCore::InspectorAgent::inspect):
646         (WebCore::InspectorAgent::handleMousePress):
647         (WebCore::InspectorAgent::didClearWindowObjectInWorld):
648         (WebCore::InspectorAgent::setFrontend):
649         (WebCore::InspectorAgent::disconnectFrontend):
650         (WebCore::InspectorAgent::resourceAgent):
651         (WebCore::InspectorAgent::createFrontendLifetimeAgents):
652         (WebCore::InspectorAgent::releaseFrontendLifetimeAgents):
653         (WebCore::InspectorAgent::populateScriptObjects):
654         (WebCore::InspectorAgent::pushDataCollectedOffline):
655         (WebCore::InspectorAgent::restoreProfiler):
656         (WebCore::InspectorAgent::startTimelineProfiler):
657         (WebCore::PostWorkerNotificationToFrontendTask::performTask):
658         (WebCore::InspectorAgent::didOpenDatabase):
659         (WebCore::InspectorAgent::didUseDOMStorage):
660         (WebCore::InspectorAgent::showAndEnableDebugger):
661         (WebCore::InspectorAgent::enableDebugger):
662         (WebCore::InspectorAgent::enabled):
663         * inspector/InspectorAgent.h:
664         (WebCore::InspectorAgent::frontend):
665         * inspector/InspectorController.cpp:
666         (WebCore::InspectorController::InspectorController):
667         (WebCore::InspectorController::~InspectorController):
668         (WebCore::InspectorController::setInspectorFrontendClient):
669         (WebCore::InspectorController::hasInspectorFrontendClient):
670         (WebCore::InspectorController::didClearWindowObjectInWorld):
671         (WebCore::InspectorController::startTimelineProfiler):
672         (WebCore::InspectorController::stopTimelineProfiler):
673         (WebCore::InspectorController::connectFrontend):
674         (WebCore::InspectorController::disconnectFrontend):
675         (WebCore::InspectorController::disconnectFrontendImpl):
676         (WebCore::InspectorController::show):
677         (WebCore::InspectorController::close):
678         (WebCore::InspectorController::restoreInspectorStateFromCookie):
679         (WebCore::InspectorController::evaluateForTestInFrontend):
680         (WebCore::InspectorController::drawNodeHighlight):
681         (WebCore::InspectorController::inspect):
682         (WebCore::InspectorController::enabled):
683         (WebCore::InspectorController::showPanel):
684         (WebCore::InspectorController::frontendLoaded):
685         (WebCore::InspectorController::timelineProfilerEnabled):
686         (WebCore::InspectorController::enableProfiler):
687         (WebCore::InspectorController::disableProfiler):
688         (WebCore::InspectorController::profilerEnabled):
689         (WebCore::InspectorController::debuggerEnabled):
690         (WebCore::InspectorController::showAndEnableDebugger):
691         (WebCore::InspectorController::disableDebugger):
692         (WebCore::InspectorController::startUserInitiatedProfiling):
693         (WebCore::InspectorController::stopUserInitiatedProfiling):
694         (WebCore::InspectorController::isRecordingUserInitiatedProfile):
695         (WebCore::InspectorController::setInspectorExtensionAPI):
696         (WebCore::InspectorController::resume):
697         (WebCore::InspectorController::hideHighlight):
698         (WebCore::InspectorController::dispatchMessageFromFrontend):
699         * inspector/InspectorController.h:
700         (WebCore::InspectorController::inspectorClient):
701         (WebCore::InspectorController::inspectedPage):
702         (WebCore::InspectorController::hasFrontend):
703         * inspector/InspectorFrontendClientLocal.cpp:
704         (WebCore::InspectorFrontendClientLocal::sendMessageToBackend):
705         * inspector/InspectorFrontendHost.cpp:
706         (WebCore::InspectorFrontendHost::setExtensionAPI):
707         * inspector/InspectorInstrumentation.cpp:
708         (WebCore::InspectorInstrumentation::didClearWindowObjectInWorldImpl):
709         (WebCore::InspectorInstrumentation::profilerEnabledImpl):
710         * inspector/InspectorInstrumentation.h:
711         (WebCore::InspectorInstrumentation::hasFrontend):
712         * loader/FrameLoader.cpp:
713         (WebCore::FrameLoader::continueLoadAfterNavigationPolicy):
714
715 2011-02-08  George Wright  <gwright@rim.com>
716
717         Reviewed by Adam Barth.
718
719         https://bugs.webkit.org/show_bug.cgi?id=53949
720
721         Ensure that we pack the colour byte order correctly for Skia using
722         Skia's SkPackARGB32 function.
723
724         * platform/image-decoders/ImageDecoder.h:
725         (WebCore::ImageFrame::setRGBA):
726
727 2011-02-08  George Wright  <gwright@rim.com>
728
729         Reviewed by Darin Adler.
730
731         https://bugs.webkit.org/show_bug.cgi?id=53951
732
733         Ensure we do not pass (-1, -1) sized rects to ImageBuffer but instead
734         pass the full image dimensions.
735
736         * platform/graphics/GraphicsContext.cpp:
737         (WebCore::GraphicsContext::drawImageBuffer):
738
739 2011-02-08  Patrick Gansterer  <paroga@webkit.org>
740
741         Reviewed by Adam Roben.
742
743         [WIN] Add missing includes and forward declarations for DownloadBundle
744         https://bugs.webkit.org/show_bug.cgi?id=53881
745
746         * platform/network/cf/DownloadBundle.h:
747         * platform/network/win/DownloadBundleWin.cpp:
748         (WebCore::DownloadBundle::appendResumeData):
749
750 2011-02-08  Patrick Gansterer  <paroga@webkit.org>
751
752         Reviewed by Adam Roben.
753
754         [WIN] Add missing include in WKCAImageQueue
755         https://bugs.webkit.org/show_bug.cgi?id=53890
756
757         * platform/graphics/win/WKCAImageQueue.cpp:
758
759 2011-02-08  Patrick Gansterer  <paroga@webkit.org>
760
761         Reviewed by Adam Roben.
762
763         [WIN] Add missing includes and forward declarations for CFNetwork
764         https://bugs.webkit.org/show_bug.cgi?id=53883
765
766         * platform/network/cf/DNSCFNet.cpp:
767         * platform/network/cf/LoaderRunLoopCF.cpp:
768         * platform/network/cf/LoaderRunLoopCF.h:
769         * platform/network/cf/ProxyServerCFNet.cpp:
770         * platform/network/cf/SocketStreamHandle.h:
771         * platform/network/cf/SocketStreamHandleCFNet.cpp:
772
773 2011-02-08  Patrick Gansterer  <paroga@webkit.org>
774
775         Unreviewed WinCE build fix for r77870.
776
777         * platform/DragImage.cpp: Enable createDragImageForLink for WinCE.
778
779 2011-02-08  Pavel Feldman  <pfeldman@chromium.org>
780
781         Reviewed by Yury Semikhatsky.
782
783         Web Inspector: open network resource url in new tab upon double click.
784         https://bugs.webkit.org/show_bug.cgi?id=53930
785
786         * inspector/front-end/NetworkPanel.js:
787         (WebInspector.NetworkDataGridNode.prototype.createCells):
788         (WebInspector.NetworkDataGridNode.prototype._openInNewTab):
789
790 2011-02-08  Yonathan Randolph  <yonathan@gmail.com>
791
792         Reviewed by Pavel Feldman.
793
794         Web Inspector: $x: any node should work in optional context parameter.
795         https://bugs.webkit.org/show_bug.cgi?id=50138
796
797         * inspector/InjectedScriptSource.js:
798
799 2011-02-08  Patrick Gansterer  <paroga@webkit.org>
800
801         Unreviewed WinCE build fix for r77870.
802
803         Remove the global namespace prefix from GlobalLock/GlobalUnlock.
804
805         * platform/win/ClipboardUtilitiesWin.cpp:
806
807 2011-02-08  Pavel Feldman  <pfeldman@chromium.org>
808
809         Not reviewed: re-apply r77924.
810
811         Test: inspector/console-api-on-call-frame.html
812
813         * inspector/InjectedScriptSource.js:
814         * inspector/front-end/ExtensionServer.js:
815         (WebInspector.ExtensionServer.prototype._onEvaluateOnInspectedPage):
816
817 2011-02-08  Andreas Kling  <kling@webkit.org>
818
819         Reviewed by Tor Arne Vestbø.
820
821         REGRESSION(r77312): Unbreak TiledBackingStore.
822
823         Due to an off-by-one error, we were no longer rendering the
824         rightmost column and bottom row of tiles.
825
826         Covered by tst_QGraphicsWebView::widgetsRenderingThroughCache().
827
828         * platform/graphics/TiledBackingStore.cpp:
829         (WebCore::TiledBackingStore::invalidate):
830         (WebCore::TiledBackingStore::updateTileBuffers):
831         (WebCore::TiledBackingStore::paint):
832         (WebCore::TiledBackingStore::createTiles):
833
834 2011-02-08  Sheriff Bot  <webkit.review.bot@gmail.com>
835
836         Unreviewed, rolling out r77924.
837         http://trac.webkit.org/changeset/77924
838         https://bugs.webkit.org/show_bug.cgi?id=53997
839
840         Breaks inspector tests. (Requested by pfeldman on #webkit).
841
842         * inspector/InjectedScriptSource.js:
843         (.):
844         ():
845
846 2011-02-08  Andrey Kosyakov  <caseq@chromium.org>
847
848         Reviewed by Pavel Feldman.
849
850         Web Inspector: [refacotring] merge InspectorAgent::willSendRequest() into InspectorResourceAgent
851         https://bugs.webkit.org/show_bug.cgi?id=53789
852          - perform UserAgent override via InspectorInstrumentation
853          - move adding extra request headers to InspectorResourceAgent
854          - simplified things in InspectorState
855
856         * inspector/Inspector.idl:
857         * inspector/InspectorAgent.cpp:
858         (WebCore::InspectorAgent::disconnectFrontend):
859         (WebCore::InspectorAgent::applyUserAgentOverride):
860         * inspector/InspectorAgent.h:
861         * inspector/InspectorInstrumentation.cpp:
862         (WebCore::InspectorInstrumentation::applyUserAgentOverrideImpl):
863         (WebCore::InspectorInstrumentation::willSendRequestImpl):
864         * inspector/InspectorInstrumentation.h:
865         (WebCore::InspectorInstrumentation::applyUserAgentOverride):
866         * inspector/InspectorResourceAgent.cpp:
867         (WebCore::InspectorResourceAgent::setExtraHeaders):
868         (WebCore::InspectorResourceAgent::willSendRequest):
869         * inspector/InspectorResourceAgent.h:
870         * inspector/InspectorState.cpp:
871         (WebCore::InspectorState::InspectorState):
872         (WebCore::InspectorState::restoreFromInspectorCookie):
873         (WebCore::InspectorState::updateCookie):
874         (WebCore::InspectorState::setValue):
875         (WebCore::InspectorState::getBoolean):
876         (WebCore::InspectorState::getString):
877         (WebCore::InspectorState::getLong):
878         (WebCore::InspectorState::getObject):
879         * inspector/InspectorState.h:
880         (WebCore::InspectorState::setObject):
881         * loader/FrameLoader.cpp:
882         (WebCore::FrameLoader::userAgent):
883
884 2011-02-08  Pavel Feldman  <pfeldman@chromium.org>
885
886         Reviewed by Yury Semikhatsky.
887
888         Web Inspector: do not hide scope variables with command line api.
889         https://bugs.webkit.org/show_bug.cgi?id=53497
890
891         Test: inspector/console-api-on-call-frame.html
892
893         * inspector/InjectedScriptSource.js:
894
895 2011-02-08  Pavel Feldman  <pfeldman@chromium.org>
896
897         Reviewed by Yury Semikhatsky.
898
899         Web Inspector: ignore cache upon reload via Ctrl(Cmd)+Shift+R.
900         https://bugs.webkit.org/show_bug.cgi?id=53914
901
902         * inspector/Inspector.idl:
903         * inspector/InspectorAgent.cpp:
904         (WebCore::InspectorAgent::reloadPage):
905         * inspector/InspectorAgent.h:
906         * inspector/front-end/AuditsPanel.js:
907         (WebInspector.AuditsPanel.prototype._reloadResources):
908         * inspector/front-end/ExtensionServer.js:
909         (WebInspector.ExtensionServer.prototype._onReload):
910         * inspector/front-end/inspector.js:
911         (WebInspector.documentKeyDown):
912
913 2011-02-08  Antti Koivisto  <antti@apple.com>
914
915         Reviewed by Cameron Zwarich.
916
917         Skip over sibling selectors when collecting descendant selector hashes 
918         https://bugs.webkit.org/show_bug.cgi?id=53987
919         
920         Skip instead of bailing out. This will allow optimizing some sibling selector cases.
921
922         * css/CSSStyleSelector.cpp:
923         (WebCore::RuleData::RuleData):
924         (WebCore::RuleData::collectIdentifierHashes):
925         (WebCore::RuleData::collectDescendantSelectorIdentifierHashes):
926         * css/CSSStyleSelector.h:
927
928 2011-02-07  Cris Neckar  <cdn@chromium.org>
929
930         Reviewed by Jian Li.
931
932         Fix null deref in DOMURL
933         https://bugs.webkit.org/show_bug.cgi?id=53811
934
935         Test: fast/files/domurl-script-execution-context-crash.html
936
937         * html/DOMURL.cpp:
938         (WebCore::DOMURL::DOMURL):
939
940 2011-02-07  Mark Rowe  <mrowe@apple.com>
941
942         Fix the 32-bit build.
943
944         * platform/mac/ScrollAnimatorMac.mm:
945         (WebCore::ScrollAnimatorMac::didAddVerticalScrollbar): Remove some extraneous characters.
946         (WebCore::ScrollAnimatorMac::didAddHorizontalScrollbar): Ditto.
947
948 2011-02-07  Xiyuan Xia  <xiyuan@chromium.org>
949
950         Reviewed by Tony Chang.
951
952         [Chromium] Select popup box does not align with select button when appearance is not "menulist".
953         https://bugs.webkit.org/show_bug.cgi?id=53942
954
955         Added manual test select_webkit_appearance_off_popup_alignment.html.
956
957         * manual-tests/select_webkit_appearance_off_popup_alignment.html: Added.
958         * platform/chromium/PopupMenuChromium.cpp:
959         (WebCore::PopupListBox::layout):
960
961 2011-02-07  Aparna Nandyal  <aparna.nand@wipro.com>
962
963         Reviewed by Andreas Kling.
964
965         [Qt] - Context menu needs "Copy" as well when the selected text is a link.
966         https://bugs.webkit.org/show_bug.cgi?id=40983
967
968         Added copy option for Qt platform if selection is a link. 
969         Added a test in tst_qwebpage.cpp. 
970
971         * page/ContextMenuController.cpp:
972         (WebCore::ContextMenuController::populate):
973
974 2011-02-07  Mike Reed  <reed@google.com>
975
976         Reviewed by Kenneth Russell.
977
978         Add compile-time flag ENABLE(SKIA_GPU) to use Skia's gpu backend
979         when drawing <canvas>. Disabled by default.
980
981         No new tests. existing canvas layouttests apply
982
983         * platform/graphics/chromium/DrawingBufferChromium.cpp:
984         (WebCore::DrawingBuffer::publishToPlatformLayer):
985         * platform/graphics/skia/PlatformContextSkia.cpp:
986         (WebCore::GetGlobalGrContext):
987         (WebCore::PlatformContextSkia::isPrinting):
988         (WebCore::PlatformContextSkia::setSharedGraphicsContext3D):
989         (WebCore::PlatformContextSkia::syncSoftwareCanvas):
990
991 2011-02-07  Jay Civelli  <jcivelli@chromium.org>
992
993         Reviewed by Darin Fisher.
994
995         Removing unused code from PopupMenuChromium.
996         https://bugs.webkit.org/show_bug.cgi?id=53866
997
998        * platform/chromium/PopupMenuChromium.cpp:
999         (WebCore::PopupListBox::layout):
1000         (WebCore::PopupMenuChromium::show):
1001         * platform/chromium/PopupMenuChromium.h:
1002
1003 2011-02-07  Kenichi Ishibashi  <bashi@chromium.org>
1004
1005         Reviewed by Andreas Kling.
1006
1007         HTMLOutputElement::childrenChanged() should call its base class childrenChanged()
1008         https://bugs.webkit.org/show_bug.cgi?id=53791
1009
1010         Calls HTMLFormControlElement::childrenChanged() in HTMLOutputElement::childrenChanged().
1011
1012         Test: fast/dom/HTMLOutputElement/htmloutputelement-children-removed.html
1013
1014         * html/HTMLOutputElement.cpp:
1015         (WebCore::HTMLOutputElement::childrenChanged): Calls super class's
1016         childrenChanged().
1017
1018 2011-02-07  Benjamin Poulain  <ikipou@gmail.com>
1019
1020         Reviewed by Kenneth Rohde Christiansen.
1021
1022         [Qt] cookiesEnabled could create the cookieJar on the wrong thread.
1023         https://bugs.webkit.org/show_bug.cgi?id=52289
1024
1025         Use the QtNAMThreadSafeProxy to make sure the cookie jar is created
1026         in the same thread as the QNetworkAccessManager.
1027
1028         * platform/network/qt/QtNAMThreadSafeProxy.cpp:
1029         (WebCore::QtNAMThreadSafeProxy::QtNAMThreadSafeProxy):
1030         (WebCore::QtNAMThreadSafeProxy::hasCookieJar):
1031         * platform/network/qt/QtNAMThreadSafeProxy.h:
1032         * platform/qt/CookieJarQt.cpp:
1033         (WebCore::cookiesEnabled):
1034
1035 2011-02-07  Alexey Marinichev  <amarinichev@chromium.org>
1036
1037         Reviewed by Kenneth Russell.
1038
1039         Hook up WebGraphicsContext3D::setContextLostCallback.
1040         https://bugs.webkit.org/show_bug.cgi?id=53722
1041
1042         Test: fast/canvas/webgl/context-lost.html, comment out the line with
1043         extension.loseContext() and kill the GPU process "Lose context"
1044         message shows up.
1045
1046         * html/canvas/WebGLRenderingContext.cpp:
1047         (WebCore::WebGLRenderingContextLostCallback::WebGLRenderingContextLostCallback):
1048         (WebCore::WebGLRenderingContextLostCallback::onContextLost):
1049         (WebCore::WebGLRenderingContextLostCallback::~WebGLRenderingContextLostCallback):
1050         (WebCore::WebGLRenderingContext::initializeNewContext):
1051         (WebCore::WebGLRenderingContext::~WebGLRenderingContext):
1052         * platform/graphics/GraphicsContext3D.h:
1053         (WebCore::GraphicsContext3D::ContextLostCallback::~ContextLostCallback):
1054         * platform/graphics/mac/GraphicsContext3DMac.mm:
1055         (WebCore::GraphicsContext3D::setContextLostCallback): stub
1056         * platform/graphics/qt/GraphicsContext3DQt.cpp:
1057         (WebCore::GraphicsContext3D::setContextLostCallback): stub
1058
1059 2011-02-07  Patrick Gansterer  <paroga@webkit.org>
1060
1061         Reviewed by Eric Seidel.
1062
1063         Add missing PaintInfo include in RenderThemeWin.cpp
1064         https://bugs.webkit.org/show_bug.cgi?id=53885
1065
1066         * rendering/RenderThemeWin.cpp:
1067
1068 2011-02-07  Qi Zhang  <qi.2.zhang@nokia.com>
1069
1070         Reviewed by Andreas Kling.
1071
1072         [Qt] enum QWebPage::WebAction doesn't have value QWebPage::CopyImageUrl
1073         https://bugs.webkit.org/show_bug.cgi?id=52974
1074
1075         Add ContextMenuItemTagCopyImageUrlToClipboard into standard action but Qt platform specific.
1076
1077         * page/ContextMenuController.cpp:
1078         (WebCore::ContextMenuController::contextMenuItemSelected):
1079         (WebCore::ContextMenuController::populate):
1080         (WebCore::ContextMenuController::checkOrEnableIfNeeded):
1081         * platform/ContextMenuItem.h:
1082         * platform/LocalizationStrategy.h:
1083         * platform/LocalizedStrings.cpp:
1084         (WebCore::contextMenuItemTagCopyImageUrlToClipboard):
1085         * platform/LocalizedStrings.h:
1086
1087 2011-02-07  Kenichi Ishibashi  <bashi@chromium.org>
1088
1089         Reviewed by Kent Tamura.
1090
1091         HTMLFormElement::formElementIndex() returns a bad index into a vector of form associated elements
1092         https://bugs.webkit.org/show_bug.cgi?id=53970
1093
1094         Adds HTMLObjectElement::virtualForm() to make HTMLObjectElement::form()
1095         return the right value.
1096
1097         Test: fast/dom/HTMLObjectElement/form/nested-form-element.html
1098
1099         * html/HTMLObjectElement.cpp:
1100         (WebCore::HTMLObjectElement::virtualForm): Added.
1101         * html/HTMLObjectElement.h: Added virtualForm().
1102
1103 2011-02-07  Ryosuke Niwa  <rniwa@webkit.org>
1104
1105         Unreviewed Leopard build fix.
1106
1107         * WebCore.xcodeproj/project.pbxproj: let XCode have developmentRegion.
1108         * platform/mac/DragImageMac.mm:
1109         (WebCore::webkit_CGCeiling): Cast the return value of ceil to CGFloat.
1110
1111 2011-02-07  Enrica Casucci  <enrica@apple.com>
1112
1113         Reviewed by Sam Weinig.
1114
1115         Fixing a build break on Mac caused by http://trac.webkit.org/changeset/77874
1116
1117         When moving code from WebKit to WebCore we needed to move some additional
1118         functions previously in NSStringExtras.
1119         
1120         * WebCore.xcodeproj/project.pbxproj:
1121         * platform/mac/DragImageMac.mm:
1122         (WebCore::fontFromNSFont):
1123         (WebCore::canUseFastRenderer):
1124         (WebCore::widthWithFont):
1125         (WebCore::webkit_CGCeiling):
1126         (WebCore::drawAtPoint):
1127         (WebCore::drawDoubledAtPoint):
1128         (WebCore::createDragImageForLink):
1129
1130 2011-02-07  Lucas Forschler  <lforschler@apple.com>
1131
1132         Reviewed by Geoff Garen.
1133
1134         Tr #2, Fix the Leopard 32bit debug build.
1135         
1136         No new tests required.
1137
1138         * WebCore.xcodeproj/project.pbxproj:
1139         * accessibility/AccessibilityAllInOne.cpp:
1140
1141 2011-02-07  Beth Dakin  <bdakin@apple.com>
1142
1143         Reviewed by Sam Weinig.
1144
1145         Fix for <rdar://problem/8946961> Fix repaint problems
1146         with WKScrollbarPainter scrollers while resizing the window
1147
1148         Remove setPainterForPainterController() and 
1149         removePainterFromPainterController() since they aren't
1150         used anymore.
1151         * platform/mac/ScrollAnimatorMac.h:
1152         
1153         Return early if they alpha hasn't changed.
1154         * platform/mac/ScrollAnimatorMac.mm:
1155         (-[ScrollbarPainterDelegate scrollerImp:animateKnobAlphaTo:duration:]):
1156         (-[ScrollbarPainterDelegate scrollerImp:animateTrackAlphaTo:duration:]):
1157         
1158         If we're in a live resize, restore alpha to 1.
1159         (WebCore::ScrollAnimatorMac::didAddVerticalScrollbar):
1160         (WebCore::ScrollAnimatorMac::didAddHorizontalScrollbar):
1161
1162 2011-02-07  Beth Dakin  <bdakin@apple.com>
1163
1164         Reviewed by Eric Seidel.
1165
1166         Fix for https://bugs.webkit.org/show_bug.cgi?id=53950
1167         USE_WK_SCROLLBAR_PAINTER in ScrollbarThemeMac should be in
1168         Platform.h instead
1169
1170         Use hot new USE(WK_SCROLLBAR_PAINTER) from Platform.h rather
1171         than the silly, old in-file #define.
1172
1173         * platform/mac/ScrollbarThemeMac.mm:
1174         (+[ScrollbarPrefsObserver appearancePrefsChanged:]):
1175         (WebCore::updateArrowPlacement):
1176         (WebCore::ScrollbarThemeMac::registerScrollbar):
1177         (WebCore::ScrollbarThemeMac::scrollbarThickness):
1178         (WebCore::ScrollbarThemeMac::usesOverlayScrollbars):
1179         (WebCore::ScrollbarThemeMac::hasThumb):
1180         (WebCore::ScrollbarThemeMac::minimumThumbLength):
1181         (WebCore::ScrollbarThemeMac::paint):
1182
1183 2011-02-07  Enrica Casucci  <enrica@apple.com>
1184
1185         Reviewed Adam Roben and Darin Adler.
1186
1187         WebKit2: drag and drop support on Windows.
1188         https://bugs.webkit.org/show_bug.cgi?id=52775
1189         <rdar://problem/8514409>
1190
1191         * loader/EmptyClients.h: Removed createDragImageFromLink.
1192         * page/DragClient.h: Ditto.
1193         * page/DragController.cpp:
1194         (WebCore::DragController::startDrag): changed call to createDragImageFromLink.
1195         * platform/DragImage.h:
1196         * platform/mac/DragImageMac.mm:
1197         (WebCore::createDragImageForLink): Moved from DragClient.
1198         * platform/win/ClipboardUtilitiesWin.cpp: Added a series of functions
1199         to de-serialize the drag data from the map into an IDataObject.
1200         (WebCore::getWebLocData):
1201         (WebCore::texthtmlFormat):
1202         (WebCore::createGlobalData):
1203         (WebCore::getFullCFHTML):
1204         (WebCore::urlWFormat):
1205         (WebCore::urlFormat):
1206         (WebCore::filenameWFormat):
1207         (WebCore::filenameFormat):
1208         (WebCore::htmlFormat):
1209         (WebCore::smartPasteFormat):
1210         (WebCore::getURL):
1211         (WebCore::getPlainText):
1212         (WebCore::getTextHTML):
1213         (WebCore::ClipboardDataItem::ClipboardDataItem):
1214         (WebCore::getStringData):
1215         (WebCore::getUtf8Data):
1216         (WebCore::getCFData):
1217         (WebCore::setUCharData):
1218         (WebCore::setCharData):
1219         (WebCore::setCFData):
1220         (WebCore::getClipboardMap):
1221         (WebCore::getClipboardData):
1222         (WebCore::setClipboardData):
1223         * platform/win/ClipboardUtilitiesWin.h:
1224         * platform/win/DragImageWin.cpp: Moved createDragImageForLink from DragClient
1225         to a platform specific file in WebCore. It makes a lot more sense here, since
1226         the drag image is always created in WebCore for all the other content types
1227         except for links.
1228         (WebCore::dragLabelFont):
1229         (WebCore::createDragImageForLink):
1230         * platform/win/WCDataObject.cpp: Added new way to
1231         construct a WCDataObject from a DragDataMap.
1232         (WebCore::WCDataObject::createInstance):
1233         (WebCore::WCDataObject::clearData):
1234         * platform/win/WCDataObject.h:
1235
1236 2011-02-07  Sheriff Bot  <webkit.review.bot@gmail.com>
1237
1238         Unreviewed, rolling out r77848.
1239         http://trac.webkit.org/changeset/77848
1240         https://bugs.webkit.org/show_bug.cgi?id=53963
1241
1242         caused 6 test failures (Requested by othermaciej on #webkit).
1243
1244         * rendering/RenderBlockLineLayout.cpp:
1245         (WebCore::RenderBlock::computeInlineDirectionPositionsForLine):
1246
1247 2011-02-04  Kenneth Russell  <kbr@google.com>
1248
1249         Reviewed by James Robinson.
1250
1251         Add shaders for GPU accelerated path rendering
1252         https://bugs.webkit.org/show_bug.cgi?id=45520
1253
1254         Refactored SolidFillShader and TexShader to call new
1255         generateVertex() and generateFragment() methods on base Shader
1256         class, and added support for the Loop/Blinn shaders. Refactored
1257         Loop/Blinn shader classes to derive from Shader.
1258
1259         Tested these changes with several of the IE9 Testdrive demos with
1260         accelerated 2D canvas enabled, as well as a full layout test run
1261         with --platform chromium-gpu.
1262
1263         * platform/graphics/gpu/LoopBlinnShader.cpp: Added.
1264         (WebCore::LoopBlinnShader::LoopBlinnShader):
1265         (WebCore::LoopBlinnShader::use):
1266         * platform/graphics/gpu/LoopBlinnShader.h: Added.
1267         * platform/graphics/gpu/LoopBlinnSolidFillShader.cpp: Added.
1268         (WebCore::LoopBlinnSolidFillShader::create):
1269         (WebCore::LoopBlinnSolidFillShader::LoopBlinnSolidFillShader):
1270         (WebCore::LoopBlinnSolidFillShader::use):
1271         * platform/graphics/gpu/LoopBlinnSolidFillShader.h: Added.
1272         * platform/graphics/gpu/Shader.cpp:
1273         (WebCore::Shader::affineTo4x4):
1274         (WebCore::Shader::loadShader):
1275         (WebCore::Shader::loadProgram):
1276         (WebCore::Shader::generateVertex):
1277         (WebCore::Shader::generateFragment):
1278         * platform/graphics/gpu/Shader.h:
1279         * platform/graphics/gpu/SolidFillShader.cpp:
1280         (WebCore::SolidFillShader::create):
1281         * platform/graphics/gpu/TexShader.cpp:
1282         (WebCore::TexShader::TexShader):
1283         (WebCore::TexShader::create):
1284
1285 2011-02-07  Dan Bernstein  <mitz@apple.com>
1286
1287         Reviewed by Oliver Hunt.
1288
1289         <rdar://problem/8946023> REGRESSION (r76674): SVG + BiDi text broken (text-intro-05-t.svg)
1290         https://bugs.webkit.org/show_bug.cgi?id=53480
1291
1292         * WebCore.xcodeproj/project.pbxproj:
1293         * platform/graphics/mac/ComplexTextController.cpp:
1294         (WebCore::ComplexTextController::ComplexTextRun::ComplexTextRun): m_indexEnd should be an
1295         offset into m_characters, not into the run’s characters.
1296         * platform/graphics/mac/ComplexTextControllerATSUI.cpp:
1297         (WebCore::ComplexTextController::ComplexTextRun::ComplexTextRun): Ditto.
1298
1299 2011-02-07  Sam Weinig  <sam@webkit.org>
1300
1301         Reviewed by Anders Carlsson.
1302
1303         Add bundle API to get the background color of a frame
1304         <rdar://problem/8962670>
1305         https://bugs.webkit.org/show_bug.cgi?id=53952
1306
1307         * WebCore.exp.in: Add export.
1308
1309 2011-02-07  Geoffrey Garen  <ggaren@apple.com>
1310
1311         Reviewed by Darin Adler.
1312
1313         Assertion failure in ~JSGlobalObject when loading apple.com HTML5
1314         transitions demo page
1315         https://bugs.webkit.org/show_bug.cgi?id=53853
1316
1317         This was a long-standing bookkeeping bug uncovered by some heap refactoring.
1318
1319         * html/HTMLCanvasElement.cpp:
1320         (WebCore::HTMLCanvasElement::createImageBuffer):
1321         * html/HTMLImageLoader.cpp:
1322         (WebCore::HTMLImageLoader::notifyFinished):
1323         * xml/XMLHttpRequest.cpp:
1324         (WebCore::XMLHttpRequest::dropProtection): Take the JSLock before
1325         reporting extra cost to the JavaScriptCore heap, since all use of
1326         JavaScriptCore is supposed to be guarded by JSLock.
1327
1328 2011-02-07  Jian Li  <jianli@chromium.org>
1329
1330         Reviewed by David Levin.
1331
1332         Intermittent crash in fast/files/read-blob-async.html on the GTK+ debug
1333         bots
1334         https://bugs.webkit.org/show_bug.cgi?id=53104
1335
1336         Covered by the existing tests.
1337
1338         * fileapi/FileStreamProxy.cpp:
1339         (WebCore::FileStreamProxy::startOnFileThread):
1340         * platform/network/BlobRegistryImpl.cpp:
1341         (WebCore::BlobRegistryImpl::createResourceHandle):
1342         * platform/network/BlobResourceHandle.cpp:
1343         (WebCore::BlobResourceHandle::BlobResourceHandle):
1344         (WebCore::BlobResourceHandle::cancel):
1345         (WebCore::delayedStartBlobResourceHandle):
1346         (WebCore::BlobResourceHandle::start): Keep BlobResourceHandle alive
1347         till the delay function is called.
1348         (WebCore::BlobResourceHandle::doStart):
1349         (WebCore::doNotifyFinish):
1350         (WebCore::BlobResourceHandle::notifyFinish): Notify the client via the
1351         standalone function to prevent the handle from being disposed immediately
1352         by the client which will make the calls in the stack that're still bound
1353         to the handle suffer.
1354         * platform/network/BlobResourceHandle.h:
1355         * platform/network/ResourceHandle.h: Change cancel() to virtual so that
1356         BlobResourceHandle::cancel will be called when we abort a FileReader.
1357
1358 2011-02-07  Sheriff Bot  <webkit.review.bot@gmail.com>
1359
1360         Unreviewed, rolling out r77845.
1361         http://trac.webkit.org/changeset/77845
1362         https://bugs.webkit.org/show_bug.cgi?id=53946
1363
1364         build failure (Requested by lforschler_ on #webkit).
1365
1366         * WebCore.xcodeproj/project.pbxproj:
1367         * accessibility/AccessibilityAllInOne.cpp:
1368
1369 2011-02-07  Darin Adler  <darin@apple.com>
1370
1371         https://bugs.webkit.org/show_bug.cgi?id=53939
1372         fast/css/text-overflow-ellipsis.html failure after r77818/77819
1373
1374         * platform/text/TextCodecICU.cpp:
1375         (WebCore::TextCodecICU::registerExtendedEncodingNames):
1376         Add back the "utf8" synonym for "UTF-8".
1377
1378 2011-02-07  David Hyatt  <hyatt@apple.com>
1379
1380         Reviewed by Dan Bernstein.
1381
1382         Remove an unnecessary extra computeLogicalWidth() from line layout.
1383
1384         * rendering/RenderBlockLineLayout.cpp:
1385         (WebCore::RenderBlock::computeInlineDirectionPositionsForLine):
1386
1387 2011-02-07  Lucas Forschler  <lforschler@apple.com>
1388
1389         Reviewed by Geoffrey Garen.
1390
1391         Fix Leopard Intel Debug Build.
1392         <rdar://problem/8953606> REGRESSION: Can't link WebCore on 32-bit Leopard (53681)
1393         This could potentially break windows, since I had to change #include <filename> to #include "filename"
1394         
1395         * WebCore.xcodeproj/project.pbxproj:
1396         * accessibility/AccessibilityAllInOne.cpp:
1397
1398 2011-02-07  Sam Weinig  <sam@webkit.org>
1399
1400         Fix build.
1401
1402         * platform/mac/ScrollAnimatorMac.mm:
1403         (WebCore::ScrollAnimatorMac::didAddVerticalScrollbar):
1404         (WebCore::ScrollAnimatorMac::willRemoveVerticalScrollbar):
1405         (WebCore::ScrollAnimatorMac::didAddHorizontalScrollbar):
1406         (WebCore::ScrollAnimatorMac::willRemoveHorizontalScrollbar):
1407
1408 2011-02-07  Sam Weinig  <sam@webkit.org>
1409
1410         Reviewed by Beth Dakin.
1411
1412         Add mechanism to inform the ScrollAnimator when Scrollbars are added 
1413         and removed.
1414
1415         * platform/ScrollAnimator.h:
1416         (WebCore::ScrollAnimator::didAddVerticalScrollbar):
1417         (WebCore::ScrollAnimator::willRemoveVerticalScrollbar):
1418         (WebCore::ScrollAnimator::didAddHorizontalScrollbar):
1419         (WebCore::ScrollAnimator::willRemoveHorizontalScrollbar):
1420         Make virtual to allow platform specific overrides.
1421
1422         * platform/ScrollView.cpp:
1423         (WebCore::ScrollView::setHasHorizontalScrollbar):
1424         (WebCore::ScrollView::setHasVerticalScrollbar):
1425         Call new ScrollableArea functions.
1426
1427         * platform/ScrollableArea.cpp:
1428         (WebCore::ScrollableArea::didAddVerticalScrollbar):
1429         (WebCore::ScrollableArea::willRemoveVerticalScrollbar):
1430         (WebCore::ScrollableArea::didAddHorizontalScrollbar):
1431         (WebCore::ScrollableArea::willRemoveHorizontalScrollbar):
1432         * platform/ScrollableArea.h:
1433         Pipe to ScrollAnimator.
1434
1435         * platform/mac/ScrollAnimatorMac.h:
1436         * platform/mac/ScrollAnimatorMac.mm:
1437         (WebCore::ScrollAnimatorMac::didAddVerticalScrollbar):
1438         (WebCore::ScrollAnimatorMac::willRemoveVerticalScrollbar):
1439         (WebCore::ScrollAnimatorMac::didAddHorizontalScrollbar):
1440         (WebCore::ScrollAnimatorMac::willRemoveHorizontalScrollbar):
1441         * platform/mac/ScrollbarThemeMac.h:
1442         * platform/mac/ScrollbarThemeMac.mm:
1443         (WebCore::ScrollbarThemeMac::registerScrollbar):
1444         (WebCore::ScrollbarThemeMac::unregisterScrollbar):
1445         (WebCore::ScrollbarThemeMac::painterForScrollbar):
1446         Move painter delegate registration to the new didAdd/willRemove functions.
1447
1448 2011-02-07  Anders Carlsson  <andersca@apple.com>
1449
1450         Reviewed by Dan Bernstein.
1451
1452         Missing text match markers with accelerated content
1453         https://bugs.webkit.org/show_bug.cgi?id=53934
1454
1455         When doing the fake paint that recomputes the text match rects, we need to
1456         flatten compositing layers, otherwise the rects won't be updated until the next paint call.
1457
1458         (This worked by accident in WebKit1 because Safari calls -[NSWindow displayIfNeeded] on the containing
1459         window before asking for the text match rects).
1460
1461         * editing/Editor.cpp:
1462         (WebCore::Editor::countMatchesForText):
1463
1464 2011-02-07  Antti Koivisto  <antti@apple.com>
1465
1466         Reviewed by Andreas Kling.
1467
1468         REGRESSION(r77740): CSSStyleSelector accessing deleted memory for svg/dom/use-transform.svg
1469         https://bugs.webkit.org/show_bug.cgi?id=53900
1470         
1471         Ignore link elements in shadow trees.
1472
1473         * dom/Element.cpp:
1474         (WebCore::StyleSelectorParentPusher::StyleSelectorParentPusher):
1475         (WebCore::StyleSelectorParentPusher::~StyleSelectorParentPusher):
1476                 
1477             Some asserts to catch cases like this.
1478
1479         (WebCore::Element::attach):
1480         (WebCore::Element::recalcStyle):
1481         * html/HTMLLinkElement.cpp:
1482         (WebCore::HTMLLinkElement::HTMLLinkElement):
1483         (WebCore::HTMLLinkElement::process):
1484         (WebCore::HTMLLinkElement::insertedIntoDocument):
1485         (WebCore::HTMLLinkElement::removedFromDocument):
1486         * html/HTMLLinkElement.h:
1487
1488 2011-02-07  Darin Adler  <darin@apple.com>
1489
1490         Turn UTF-8 decoder off for now so we can look into failing tests
1491         without leaving the tree red.
1492
1493         * platform/text/TextCodecICU.cpp:
1494         (WebCore::TextCodecICU::registerBaseEncodingNames): Reverting
1495         earlier change so this can handle UTF-8.
1496         (WebCore::TextCodecICU::registerBaseCodecs): Ditto.
1497         (WebCore::TextCodecICU::registerExtendedEncodingNames): Ditto.
1498         (WebCore::TextCodecICU::registerExtendedCodecs): Ditto.
1499         * platform/text/TextCodecICU.h: Ditto.
1500         * platform/text/TextEncodingRegistry.cpp:
1501         (WebCore::buildBaseTextCodecMaps): Ditto.
1502         (WebCore::extendTextCodecMaps): Ditto.
1503         * platform/text/brew/TextCodecBrew.cpp:
1504         (WebCore::TextCodecBrew::registerBaseEncodingNames): Ditto.
1505         (WebCore::TextCodecBrew::registerBaseCodecs): Ditto.
1506         (WebCore::TextCodecBrew::registerExtendedEncodingNames): Ditto.
1507         (WebCore::TextCodecBrew::registerExtendedCodecs): Ditto.
1508         * platform/text/brew/TextCodecBrew.h: Ditto.
1509         * platform/text/gtk/TextCodecGtk.cpp:
1510         (WebCore::TextCodecGtk::registerBaseEncodingNames): Ditto.
1511         (WebCore::TextCodecGtk::registerBaseCodecs): Ditto.
1512         * platform/text/wince/TextCodecWinCE.cpp:
1513         (WebCore::TextCodecWinCE::registerBaseEncodingNames): Ditto.
1514         (WebCore::TextCodecWinCE::registerBaseCodecs): Ditto.
1515         (WebCore::TextCodecWinCE::registerExtendedEncodingNames): Ditto.
1516         (WebCore::TextCodecWinCE::registerExtendedCodecs): Ditto.
1517         * platform/text/wince/TextCodecWinCE.h: Ditto.
1518
1519 2011-02-07  Anders Carlsson  <andersca@apple.com>
1520
1521         Reviewed by Maciej Stachowiak.
1522
1523         Don't exclude overlay scrollers from the page overlay bounds
1524         https://bugs.webkit.org/show_bug.cgi?id=53924
1525
1526         Export ScrollbarTheme::nativeTheme.
1527
1528         * WebCore.exp.in:
1529
1530 2011-02-07  Zhenyao Mo  <zmo@google.com>
1531
1532         Reviewed by Kenneth Russell.
1533
1534         Crash in glDrawArrays with NaCl crystal model
1535         https://bugs.webkit.org/show_bug.cgi?id=52831
1536
1537         * html/canvas/WebGLRenderingContext.cpp: Allocate large enough buffer for atttrib0 if it's enabled and not used.
1538         (WebCore::WebGLRenderingContext::initVertexAttrib0):
1539         (WebCore::WebGLRenderingContext::simulateVertexAttrib0):
1540         * html/canvas/WebGLRenderingContext.h:
1541
1542 2011-02-07  Chris Fleizach  <cfleizach@apple.com>
1543
1544         Reviewed by Darin Adler.
1545
1546         WAI-ARIA @aria-sort not exposed on rowheader and columnheader roles.
1547         https://bugs.webkit.org/show_bug.cgi?id=53842
1548
1549         Test: platform/mac/accessibility/aria-sort.html
1550
1551         * accessibility/AccessibilityObject.cpp:
1552         (WebCore::AccessibilityObject::sortDirection):
1553         * accessibility/AccessibilityObject.h:
1554         * accessibility/mac/AccessibilityObjectWrapper.mm:
1555         (-[AccessibilityObjectWrapper additionalAccessibilityAttributeNames]):
1556         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
1557         * html/HTMLAttributeNames.in:
1558
1559 2011-02-07  Darin Adler  <darin@apple.com>
1560
1561         Reviewed by Antti Koivisto.
1562
1563         Add built-in decoder for UTF-8 for improved performance
1564         https://bugs.webkit.org/show_bug.cgi?id=53898
1565
1566         Correct behavior is covered by existing tests.
1567
1568         * Android.mk: Added TextCodecUTF8.
1569         * CMakeLists.txt: Ditto.
1570         * GNUmakefile.am: Ditto.
1571         * WebCore.gypi: Ditto.
1572         * WebCore.pro: Ditto.
1573         * WebCore.vcproj/WebCore.vcproj: Ditto.
1574         * WebCore.xcodeproj/project.pbxproj: Ditto.
1575
1576         * platform/text/TextCodecICU.cpp: Removed registration of UTF-8
1577         since that's now handled by the built-in UTF-8 codec.
1578         (WebCore::TextCodecICU::registerEncodingNames): Renamed to remove
1579         the word "extended" since all codecs from ICU are now extended.
1580         (WebCore::TextCodecICU::registerCodecs): Ditto.
1581         * platform/text/TextCodecICU.h: Ditto.
1582
1583         * platform/text/TextCodecUTF16.cpp:
1584         (WebCore::TextCodecUTF16::decode): Added a FIXME about missing
1585         error handling.
1586
1587         * platform/text/TextCodecUTF8.cpp: Added.
1588         * platform/text/TextCodecUTF8.h: Added.
1589
1590         * platform/text/TextEncodingRegistry.cpp:
1591         (WebCore::buildBaseTextCodecMaps): Added TextCodecUTF8, and
1592         removed TextCodecICU, TextCodecBrew, and TextCodecWinCE.
1593         (WebCore::extendTextCodecMaps): Updated names for
1594         TextCodecICU and TextCodecWinCE.
1595
1596         * platform/text/brew/TextCodecBrew.cpp:
1597         (WebCore::TextCodecBrew::registerEncodingNames): Renamed to remove
1598         the word "extended" since all codecs from Brew are now extended.
1599         (WebCore::TextCodecBrew::registerCodecs): Ditto.
1600         * platform/text/brew/TextCodecBrew.h: Ditto.
1601
1602         * platform/text/gtk/TextCodecGtk.cpp:
1603         (WebCore::TextCodecGtk::registerBaseEncodingNames): Removed
1604         registration of UTF-8. It's questionable whether the other codecs
1605         here are really basic. If we think they qualify, then we should
1606         register them on other platforms, not just GTK.
1607         (WebCore::TextCodecGtk::registerBaseCodecs): Ditto.
1608
1609         * platform/text/wince/TextCodecWinCE.cpp:
1610         (WebCore::getCodePage): Removed special case for UTF-8 since we
1611         no longer use this codec for UTF-8.
1612         (WebCore::TextCodecWinCE::registerEncodingNames): Renamed to remove
1613         the word "extended" since all codecs from WinCE are now extended.
1614         (WebCore::TextCodecWinCE::registerCodecs): Ditto.
1615         * platform/text/wince/TextCodecWinCE.h: Ditto.
1616
1617 2011-02-07  Mario Sanchez Prada  <msanchez@igalia.com>
1618
1619         Reviewed by Xan Lopez.
1620
1621         [Gtk] atk_text_get_caret_offset fails for list items
1622         https://bugs.webkit.org/show_bug.cgi?id=53436
1623
1624         Consider list item markers when calculating the offset.
1625
1626         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
1627         (webkit_accessible_text_get_caret_offset): Adjust the offset
1628         with the item marker's length for list items.
1629         (webkit_accessible_text_set_caret_offset): Replace usage of
1630         g_utf8_strlen() by calling to markerText.length().
1631
1632 2011-02-07  Yi Shen  <yi.4.shen@nokia.com>
1633
1634         Reviewed by Tor Arne Vestbø.
1635
1636         [Qt] Fix LayoutTests/media/restore-from-page-cache.html
1637         https://bugs.webkit.org/show_bug.cgi?id=53621
1638
1639         Changed the networkState to MediaPlayer::Loaded when 
1640         MediaPlayerPrivateQt has enough data.
1641
1642         Test: media/restore-from-page-cache.html
1643
1644         * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
1645         (WebCore::MediaPlayerPrivateQt::updateStates):
1646
1647 2011-01-31  Pavel Podivilov  <podivilov@chromium.org>
1648
1649         Reviewed by Yury Semikhatsky.
1650
1651         Web Inspector: implement beautification of scripts inlined in html documents.
1652         https://bugs.webkit.org/show_bug.cgi?id=52706
1653
1654         To beautify scripts inlined in html, we need to cut individual scripts, beautify them using UglifyJS library, and
1655         finally paste them back to html.
1656
1657         * WebCore.gypi:
1658         * WebCore.vcproj/WebCore.vcproj:
1659         * inspector/front-end/ScriptFormatter.js:
1660         (WebInspector.ScriptFormatter): Implement formatting of scripts inlined in html.
1661         (WebInspector.ScriptFormatter.prototype.formatContent.didFormatChunks):
1662         (WebInspector.ScriptFormatter.prototype.formatContent):
1663         (WebInspector.ScriptFormatter.prototype._splitContentIntoChunks):
1664         (WebInspector.ScriptFormatter.prototype._formatChunks.didFormat):
1665         (WebInspector.ScriptFormatter.prototype._formatChunks):
1666         (WebInspector.ScriptFormatter.prototype._buildContentFromChunks):
1667         (WebInspector.ScriptFormatter.prototype._formatScript.messageHandler):
1668         (WebInspector.ScriptFormatter.prototype._formatScript):
1669         * inspector/front-end/ScriptFormatterWorker.js:
1670         (onmessage):
1671         (buildMapping):
1672         * inspector/front-end/SourceFrame.js:
1673         (WebInspector.SourceFrameContent): Use SourceFrameContent and FormattedSourceFrameContent to perform operations with line numbers.
1674         * inspector/front-end/SourceFrameContent.js: Added.
1675         (WebInspector.SourceFrameContent): Helper class, holds resource text and scripts layout
1676         (WebInspector.SourceFrameContent.prototype.get scriptRanges):
1677         (WebInspector.SourceFrameContent.prototype.locationToPosition):
1678         (WebInspector.SourceFrameContent.prototype.positionToLocation):
1679         (WebInspector.SourceFrameContent.prototype.scriptLocationForLineNumber):
1680         (WebInspector.SourceFrameContent.prototype.scriptLocationForRange):
1681         (WebInspector.SourceFrameContent.prototype.lineNumberToRange):
1682         (WebInspector.SourceFrameContent.prototype._intersectingScriptRange):
1683         (WebInspector):
1684         (WebInspector.FormattedSourceFrameContent): Helper class, holds original and formatted versions of resource and mapping between them.
1685         (WebInspector.FormattedSourceFrameContent.prototype.get text):
1686         (WebInspector.FormattedSourceFrameContent.prototype.originalLocationToFormattedLocation):
1687         (WebInspector.FormattedSourceFrameContent.prototype.scriptLocationForFormattedLineNumber):
1688         (WebInspector.FormattedSourceFrameContent.prototype._convertPosition):
1689         * inspector/front-end/WebKit.qrc:
1690         * inspector/front-end/inspector.html:
1691
1692 2011-02-07  Pavel Feldman  <pfeldman@chromium.org>
1693
1694         Reviewed by Yury Semikhatsky.
1695
1696         Web Inspector: "Reveal in elements panel" does not always work.
1697         https://bugs.webkit.org/show_bug.cgi?id=53775
1698
1699         * inspector/front-end/ConsoleView.js:
1700         (WebInspector.ConsoleView):
1701         * inspector/front-end/ContextMenu.js:
1702         (WebInspector.ContextMenu.prototype.show):
1703         * inspector/front-end/ElementsPanel.js:
1704         (WebInspector.ElementsPanel.prototype.switchToAndFocus):
1705         * inspector/front-end/ElementsTreeOutline.js:
1706         (WebInspector.ElementsTreeOutline.prototype._contextMenuEventFired.focusElement):
1707         (WebInspector.ElementsTreeOutline.prototype._contextMenuEventFired):
1708         * inspector/front-end/ObjectPropertiesSection.js:
1709         (WebInspector.ObjectPropertyTreeElement.prototype.update):
1710         (WebInspector.ObjectPropertyTreeElement.prototype._contextMenuEventFired):
1711         * inspector/front-end/inspector.js:
1712         (WebInspector.cancelSearch):
1713
1714 2011-02-07  Adam Barth  <abarth@webkit.org>
1715
1716         Reviewed by Eric Seidel.
1717
1718         Relative .. in URL paths shouldn't skip adjacent / characters
1719         https://bugs.webkit.org/show_bug.cgi?id=53907
1720
1721         Our new behavior matches Firefox, Chrome, and IE.
1722
1723         * platform/KURL.cpp:
1724         (WebCore::copyPathRemovingDots):
1725
1726 2011-02-07  Maciej Stachowiak  <mjs@apple.com>
1727
1728         Reviewed by Antti Koivisto.
1729
1730         WebKitTestRunner does not block remote resources or complain about them
1731         https://bugs.webkit.org/show_bug.cgi?id=42139
1732         <rdar://problem/8183942>
1733
1734         * Configurations/WebCore.xcconfig: Allow WebKitTestRunner to link
1735         WebCore.
1736         * WebCore.exp.in: Export a handful of KURL symbols.
1737
1738 2011-02-06  Ryosuke Niwa  <rniwa@webkit.org>
1739
1740         Reviewed by Darin Adler.
1741
1742         OwnArraryPtr.h uses deleteOwnedPtr but doesn’t include OwnPtrCommon.h
1743         https://bugs.webkit.org/show_bug.cgi?id=52867
1744
1745         * ForwardingHeaders/wtf/OwnArrayPtrCommon.h: Removed.
1746         * bindings/v8/NPV8Object.cpp:
1747         (WebCore::createValueListFromVariantArgs): Returns PassOwnArrayPtr<v8::Handle<v8::Value>> instead of
1748         v8::Handle<v8::Value>*.
1749         (_NPN_Invoke): Calls createValueListFromVariantArgs.
1750         (_NPN_InvokeDefault): createValueListFromVariantArgs.
1751         (_NPN_Construct): createValueListFromVariantArgs.
1752         * bindings/v8/ScriptFunctionCall.cpp:
1753         (WebCore::ScriptFunctionCall::call): Calls adoptArrayPtr.
1754         (WebCore::ScriptFunctionCall::construct): Ditto.
1755         (WebCore::ScriptCallback::call):
1756         * bindings/v8/V8DOMWindowShell.cpp:
1757         (WebCore::V8DOMWindowShell::createNewContext): Ditto.
1758         * bindings/v8/V8NPObject.cpp:
1759         (WebCore::npObjectInvokeImpl): Ditto
1760         * bindings/v8/V8NodeFilterCondition.cpp:
1761         (WebCore::V8NodeFilterCondition::acceptNode): Ditto,
1762         * html/HTMLAreaElement.cpp:
1763         (WebCore::HTMLAreaElement::parseMappedAttribute): Calls newCoordsArray.
1764         * html/HTMLFrameSetElement.cpp:
1765         (WebCore::HTMLFrameSetElement::parseMappedAttribute): Calls newLengthArray.
1766         * html/canvas/WebGLRenderingContext.cpp:
1767         (WebCore::WebGLRenderingContext::getAttachedShaders): Calls adoptArraYptr.
1768         (WebCore::WebGLRenderingContext::simulateVertexAttrib0): Ditto.
1769         (WebCore::WebGLRenderingContext::LRUImageBufferCache::LRUImageBufferCache): Dito.
1770         * platform/Length.cpp:
1771         (WebCore::newCoordsArray): Returns PassOwnArrayPtr<Length> instead of Length*.
1772         (WebCore::newLengthArray): Returns PassOwnArrayPtr<Length> instead of Length*.
1773         * platform/Length.h: Prototype changes.
1774         * platform/graphics/ANGLEWebKitBridge.cpp:
1775         (WebCore::ANGLEWebKitBridge::validateShaderSource): Calls adoptArrayPtr.
1776         * platform/graphics/ca/win/CACFLayerTreeHost.cpp:
1777         (WebCore::getDirtyRects): Ditto.
1778         * platform/graphics/chromium/ComplexTextControllerLinux.cpp:
1779         (WebCore::ComplexTextController::getNormalizedTextRun): Ditto.
1780         * platform/graphics/chromium/HarfbuzzSkia.cpp:
1781         (WebCore::glyphsToAdvances): Ditto.
1782         (WebCore::canRender): Ditto.
1783         * platform/graphics/gpu/Texture.cpp:
1784         (WebCore::Texture::updateSubRect): Ditto.
1785         * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
1786         (WebCore::GraphicsContext3D::paintRenderingResultsToCanvas): Ditto.
1787         * platform/graphics/skia/PlatformContextSkia.cpp:
1788         (WebCore::PlatformContextSkia::readbackHardwareToSoftware): Ditto.
1789         * platform/graphics/wince/SharedBitmap.cpp:
1790         (WebCore::SharedBitmap::to16bit): Ditto.
1791         * platform/win/ContextMenuWin.cpp:
1792         (WebCore::ContextMenu::getContextMenuItems): Ditto.
1793         * platform/win/LoggingWin.cpp:
1794         (WebCore::initializeWithUserDefault): Ditto.
1795         * plugins/win/PluginPackageWin.cpp:
1796         (WebCore::PluginPackage::fetchInfo): Ditto.
1797
1798 2011-02-06  Kent Tamura  <tkent@chromium.org>
1799
1800         Unreviewed.
1801
1802         * WebCore.xcodeproj/project.pbxproj: Run sort-xcode-project-file.
1803
1804 2011-02-03  Dominic Cooney  <dominicc@google.com>
1805
1806         Reviewed by Dimitri Glazkov.
1807
1808         Convert <keygen> option elements to a shadow DOM
1809         https://bugs.webkit.org/show_bug.cgi?id=51379
1810
1811         Covered by existing tests e.g. fast/html/keygen.html,
1812         html5lib/runner.html, etc.
1813
1814         * css/html.css:
1815         (form): Cleanup.
1816         (keygen, select): Border radii should match so focus ring looks good.
1817         (keygen::-webkit-keygen-select): No margin on the shadow element.
1818         (select): Hoisting border radius to keygen, select rule.
1819         * dom/SelectElement.cpp:
1820         (WebCore::toSelectElement): keygen is no longer a select element.
1821         * html/HTMLKeygenElement.cpp: Implements keygen shadow.
1822         (WebCore::KeygenSelectElement::create):
1823         (WebCore::KeygenSelectElement::shadowPseudoId):
1824         (WebCore::KeygenSelectElement::KeygenSelectElement):
1825         (WebCore::HTMLKeygenElement::HTMLKeygenElement):
1826         (WebCore::HTMLKeygenElement::parseMappedAttribute):
1827         (WebCore::HTMLKeygenElement::appendFormData):
1828         (WebCore::HTMLKeygenElement::formControlType):
1829         (WebCore::HTMLKeygenElement::reset):
1830         (WebCore::HTMLKeygenElement::selectShadow):
1831         * html/HTMLKeygenElement.h: keygen is no longer a select on C++ side.
1832         (WebCore::HTMLKeygenElement::canStartSelection):
1833         (WebCore::HTMLKeygenElement::isEnumeratable):
1834         (WebCore::HTMLKeygenElement::isResettable):
1835         * html/HTMLOptionElement.cpp:
1836         (WebCore::HTMLOptionElement::ownerSelectElement): Only owned by selects.
1837         * html/HTMLSelectElement.cpp:
1838         (WebCore::HTMLSelectElement::HTMLSelectElement): Only 'select' tag name.
1839
1840 2011-02-06  Benjamin Poulain  <ikipou@gmail.com>
1841
1842         Reviewed by Kenneth Rohde Christiansen.
1843
1844         [Qt] Fix coding style errors in ClipboardQt.h
1845         https://bugs.webkit.org/show_bug.cgi?id=43520
1846
1847         Fix coding style: order of header and indentation.
1848
1849         * platform/qt/ClipboardQt.h:
1850         (WebCore::ClipboardQt::create):
1851         (WebCore::ClipboardQt::clipboardData):
1852         (WebCore::ClipboardQt::invalidateWritableData):
1853
1854 2011-02-06  Antti Koivisto  <antti@apple.com>
1855
1856         Reviewed by Maciej Stachowiak.
1857
1858         Use bloom filter for descendant selector filtering
1859         https://bugs.webkit.org/show_bug.cgi?id=53880
1860         
1861         Bloom filter is faster than a hash set in this kind of use.
1862         
1863         Shark thinks this speeds up style matching by ~30% on sites
1864         with lots of descendant selectors.
1865
1866         * ForwardingHeaders/wtf/BloomFilter.h: Added.
1867         * css/CSSStyleSelector.cpp:
1868         (WebCore::collectElementIdentifierHashes):
1869         (WebCore::CSSStyleSelector::pushParent):
1870         (WebCore::CSSStyleSelector::popParent):
1871         (WebCore::CSSStyleSelector::fastRejectSelector):
1872         (WebCore::RuleData::collectDescendantSelectorIdentifierHashes):
1873         * css/CSSStyleSelector.h:
1874
1875 2011-02-06  Maciej Stachowiak  <mjs@apple.com>
1876
1877         Reviewed by Antti Koivisto.
1878
1879         media/video-document-types.html sometimes crashes the WebProcess
1880         https://bugs.webkit.org/show_bug.cgi?id=53884
1881
1882         No new tests. Already covered by media/video-document-types.html
1883
1884         * html/HTMLMediaElement.cpp:
1885         (WebCore::HTMLMediaElement::userCancelledLoad): Stop the load timer
1886         when cancelling the load.
1887
1888 2011-02-06  Patrick Gansterer  <paroga@webkit.org>
1889
1890         Reviewed by Adam Roben.
1891
1892         [WIN] Use WCHAR instead of TCHAR
1893         https://bugs.webkit.org/show_bug.cgi?id=53863
1894
1895         We always use the UNICODE versions of windows functions, so
1896         the usage of TCHAR makes no sense and mixing them is bad style.
1897
1898         * platform/graphics/win/IconWin.cpp:
1899         (WebCore::Icon::createIconForFiles):
1900         * platform/graphics/win/QTMovie.cpp:
1901         * platform/graphics/win/QTMovieGWorld.cpp:
1902         (QTMovieGWorld::fullscreenWndProc):
1903         (QTMovieGWorld::enterFullscreen):
1904         * platform/graphics/win/SimpleFontDataCGWin.cpp:
1905         (WebCore::SimpleFontData::platformInit):
1906         * platform/graphics/win/SimpleFontDataCairoWin.cpp:
1907         * platform/graphics/win/SimpleFontDataWin.cpp:
1908         * platform/graphics/wince/SimpleFontDataWinCE.cpp:
1909         * platform/win/BString.cpp:
1910         * platform/win/ClipboardWin.cpp:
1911         (WebCore::filesystemPathFromUrlOrTitle):
1912         (WebCore::createGlobalHDropContent):
1913         (WebCore::createGlobalImageFileDescriptor):
1914         * platform/win/ContextMenuWin.cpp:
1915         * platform/win/CursorWin.cpp:
1916         (WebCore::loadSharedCursor):
1917         * platform/win/FileChooserWin.cpp:
1918         (WebCore::FileChooser::basenameForWidth):
1919         * platform/win/PopupMenuWin.cpp:
1920         (WebCore::PopupMenuWin::popupClassName):
1921         (WebCore::PopupMenuWin::show):
1922         * platform/win/PopupMenuWin.h:
1923
1924 2011-02-06  Patrick Gansterer  <paroga@webkit.org>
1925
1926         Reviewed by Andreas Kling.
1927
1928         Replace FLT_MAX with std::numeric_limits
1929         https://bugs.webkit.org/show_bug.cgi?id=53861
1930
1931         Also move EFL's userIdleTime from TemporaryLinkStubs into SystemTimeEfl.
1932
1933         * html/NumberInputType.cpp:
1934         * html/parser/HTMLParserIdioms.cpp:
1935         (WebCore::parseToDoubleForNumberType):
1936         * platform/brew/SystemTimeBrew.cpp:
1937         (WebCore::userIdleTime):
1938         * platform/efl/SystemTimeEfl.cpp:
1939         (WebCore::userIdleTime):
1940         * platform/efl/TemporaryLinkStubs.cpp:
1941         * platform/graphics/ca/GraphicsLayerCA.cpp:
1942         (WebCore::GraphicsLayerCA::setupAnimation):
1943         * platform/win/SystemTimeWin.cpp:
1944         (WebCore::userIdleTime):
1945         * platform/wx/SystemTimeWx.cpp:
1946         (WebCore::userIdleTime):
1947
1948 2011-02-06  Patrick Gansterer  <paroga@webkit.org>
1949
1950         Reviewed by Andreas Kling.
1951
1952         [CMake] Add dependencies for Visual Studio projects
1953         https://bugs.webkit.org/show_bug.cgi?id=53773
1954
1955         Add a JavaScriptCore dependecy to WebCore, so CMake can 
1956         generate the correct build order for the solution.
1957
1958         * CMakeLists.txt:
1959
1960 2011-02-06  Patrick Gansterer  <paroga@webkit.org>
1961
1962         Reviewed by Andreas Kling.
1963
1964         [CMake] Unify ENABLE_SVG sections
1965         https://bugs.webkit.org/show_bug.cgi?id=53778
1966
1967         * CMakeLists.txt:
1968
1969 2011-02-06  Andreas Kling  <kling@webkit.org>
1970
1971         Reviewed by Dirk Schulze.
1972
1973         Refactor Font::normalizeSpaces() to avoid an extra String copy.
1974         https://bugs.webkit.org/show_bug.cgi?id=53871
1975
1976         Have normalizeSpaces() take UChar*,length arguments instead of a
1977         String, since all call sites were creating temporaries from these
1978         components anyway.
1979
1980         Font::normalizeSpaces() now always makes 1 String copy,
1981         instead of 1 in the best case and 2 in the worst case.
1982
1983         * platform/graphics/Font.cpp:
1984         (WebCore::Font::normalizeSpaces):
1985         * platform/graphics/Font.h:
1986         * platform/graphics/qt/FontQt.cpp:
1987         (WebCore::drawTextCommon):
1988         (WebCore::Font::floatWidthForSimpleText):
1989         (WebCore::Font::floatWidthForComplexText):
1990         (WebCore::Font::offsetForPositionForSimpleText):
1991         (WebCore::Font::offsetForPositionForComplexText):
1992         (WebCore::Font::selectionRectForSimpleText):
1993         (WebCore::Font::selectionRectForComplexText):
1994         * svg/SVGFont.cpp:
1995         (WebCore::SVGTextRunWalker::walk):
1996
1997 2011-02-06  Andreas Kling  <kling@webkit.org>
1998
1999         Reviewed by Dirk Schulze.
2000
2001         Fix potential buffer overrun in SVGTextRunWalker::walk()
2002         https://bugs.webkit.org/show_bug.cgi?id=53870
2003
2004         A new String was created from a UChar* with a 'length' argument
2005         that could be greater than the number of UChars available.
2006
2007         * svg/SVGFont.cpp:
2008         (WebCore::SVGTextRunWalker::walk):
2009
2010 2011-02-05  Adam Barth  <abarth@webkit.org>
2011
2012         Reviewed by Eric Seidel.
2013
2014         Remove unused parameter related to XSSAuditor
2015         https://bugs.webkit.org/show_bug.cgi?id=53862
2016
2017         * WebCore.exp.in:
2018         * bindings/ScriptControllerBase.cpp:
2019         (WebCore::ScriptController::executeScript):
2020         (WebCore::ScriptController::executeIfJavaScriptURL):
2021         * bindings/ScriptControllerBase.h:
2022         * bindings/js/ScriptController.cpp:
2023         (WebCore::ScriptController::evaluateInWorld):
2024         (WebCore::ScriptController::evaluate):
2025         (WebCore::ScriptController::executeScriptInWorld):
2026         * bindings/js/ScriptController.h:
2027         * bindings/v8/ScriptController.cpp:
2028         (WebCore::ScriptController::evaluate):
2029         * bindings/v8/ScriptController.h:
2030
2031 2011-02-05  Adam Barth  <abarth@webkit.org>
2032
2033         Fix Qt build.
2034
2035         * WebCore.pro:
2036
2037 2011-02-05  Adam Barth  <abarth@webkit.org>
2038
2039         Reviewed by Eric Seidel.
2040
2041         Delete XSSAuditor
2042         https://bugs.webkit.org/show_bug.cgi?id=53859
2043
2044         The job of the XSSAuditor is now done by the XSSFilter.  In the future,
2045         we might rename XSSFilter to XSSAuditor.
2046
2047         * Android.mk:
2048         * CMakeLists.txt:
2049         * GNUmakefile.am:
2050         * WebCore.gypi:
2051         * WebCore.vcproj/WebCore.vcproj:
2052         * WebCore.xcodeproj/project.pbxproj:
2053         * bindings/ScriptControllerBase.cpp:
2054         (WebCore::ScriptController::executeIfJavaScriptURL):
2055         * bindings/ScriptControllerBase.h:
2056         * bindings/js/ScriptController.cpp:
2057         (WebCore::ScriptController::ScriptController):
2058         (WebCore::ScriptController::evaluateInWorld):
2059         * bindings/js/ScriptController.h:
2060         * bindings/js/ScriptEventListener.cpp:
2061         (WebCore::createAttributeEventListener):
2062         * bindings/v8/ScriptController.cpp:
2063         (WebCore::ScriptController::ScriptController):
2064         (WebCore::ScriptController::evaluate):
2065         * bindings/v8/ScriptController.h:
2066         * bindings/v8/ScriptEventListener.cpp:
2067         (WebCore::createAttributeEventListener):
2068         * dom/Document.cpp:
2069         (WebCore::Document::implicitOpen):
2070         (WebCore::Document::processBaseElement):
2071         * dom/ScriptableDocumentParser.cpp:
2072         (WebCore::ScriptableDocumentParser::ScriptableDocumentParser):
2073         * dom/ScriptableDocumentParser.h:
2074         * html/parser/HTMLDocumentParser.cpp:
2075         (WebCore::HTMLDocumentParser::shouldLoadExternalScriptFromSrc):
2076         * loader/SubframeLoader.cpp:
2077         (WebCore::SubframeLoader::requestObject):
2078         (WebCore::SubframeLoader::loadMediaPlayerProxyPlugin):
2079         * page/XSSAuditor.cpp: Removed.
2080         * page/XSSAuditor.h: Removed.
2081
2082 2011-02-05  Anders Carlsson  <andersca@apple.com>
2083
2084         Reviewed by Darin Adler.
2085
2086         Need a way to resize and scroll the page at the same time
2087         https://bugs.webkit.org/show_bug.cgi?id=53814
2088         <rdar://problem/8498008>
2089
2090         Export a function needed by WebKit2.
2091
2092         * WebCore.exp.in:
2093
2094 2011-02-05  Patrick Gansterer  <paroga@webkit.org>
2095
2096         Reviewed by Alexey Proskuryakov.
2097
2098         Use Document::encoding() instead of DocumentWriter::encoding()
2099         https://bugs.webkit.org/show_bug.cgi?id=53398
2100
2101         This change makes the code more readable, when a subresource
2102         inherits the character encoding of the document.
2103
2104         * dom/ProcessingInstruction.cpp:
2105         (WebCore::ProcessingInstruction::checkStyleSheet):
2106         * dom/ScriptElement.cpp:
2107         (WebCore::ScriptElement::scriptCharset):
2108         * html/HTMLLinkElement.cpp:
2109         (WebCore::HTMLLinkElement::process):
2110         * loader/cache/CachedResourceLoader.cpp:
2111         (WebCore::CachedResourceLoader::requestPreload):
2112         * platform/network/FormDataBuilder.cpp:
2113         (WebCore::FormDataBuilder::encodingFromAcceptCharset):
2114
2115 2011-02-05  Adam Barth  <abarth@webkit.org>
2116
2117         Reviewed by Eric Seidel.
2118
2119         Introduce URLString to represent a canonicalized URL represented by a string
2120         https://bugs.webkit.org/show_bug.cgi?id=53847
2121
2122         Instead of using String all over the codebase to represent a URL,
2123         instead we should have a type to represent a canonicalized URL in the
2124         form of a string.  This patch introduces that type.
2125
2126         * GNUmakefile.am:
2127         * WebCore.gypi:
2128         * WebCore.xcodeproj/project.pbxproj:
2129         * platform/KURL.cpp:
2130         (WebCore::KURL::KURL):
2131         * platform/KURL.h:
2132         (WebCore::KURL::urlString):
2133
2134 2011-02-05  Robert Hogan  <robert@webkit.org>
2135
2136         Reviewed by Antonio Gomes.
2137
2138         [Qt] Style widgets not rendering
2139         https://bugs.webkit.org/show_bug.cgi?id=53849
2140
2141         * html/HTMLObjectElement.cpp:
2142         (WebCore::HTMLObjectElement::hasValidClassId): x-qt-styled-widget is a valid class id too
2143
2144 2011-02-05  Jochen Eisinger  <jochen@chromium.org>
2145
2146         Reviewed by Adam Barth.
2147
2148         Add ContentSecurityPolicy object to Document and pass the X-WebKit-CSP header from the MainResourceLoader.
2149         https://bugs.webkit.org/show_bug.cgi?id=53685
2150
2151         * WebCore.xcodeproj/project.pbxproj:
2152         * dom/Document.h:
2153         (WebCore::Document::contentSecurityPolicy):
2154         * loader/MainResourceLoader.cpp:
2155         (WebCore::MainResourceLoader::didReceiveResponse):
2156         * page/ContentSecurityPolicy.cpp:
2157         (WebCore::ContentSecurityPolicy::didReceiveHeader):
2158         * page/ContentSecurityPolicy.h:
2159
2160 2011-02-05  Eric Seidel  <eric@webkit.org>
2161
2162         Reviewed by Adam Barth.
2163
2164         Safari should lowercase schemes in cannonicalized urls to match every other browser
2165         https://bugs.webkit.org/show_bug.cgi?id=53848
2166
2167         We're clearly the odd man out here.  See results from every browser at:
2168         https://github.com/abarth/url-spec/blob/master/tests/gurl-results/by-browser.txt
2169
2170         * platform/KURL.cpp:
2171         (WebCore::KURL::parse):
2172          - Just lowercase the scheme when copying.
2173
2174 2011-02-05  Antti Koivisto  <antti@apple.com>
2175
2176         Reviewed by Dave Hyatt.
2177
2178         Optimize matching of descendant selectors
2179         https://bugs.webkit.org/show_bug.cgi?id=49876
2180         <rdar://problem/8772822>
2181         
2182         During style recalculation, maintain a filter of tags, ids and classes seen in ancestor elements.
2183         Use the filter to quickly reject descendant and child selectors when doing style matching.
2184
2185         This speeds up style recalculations 3-6x on many major web sites.
2186
2187         * css/CSSStyleSelector.cpp:
2188         (WebCore::RuleData::RuleData):
2189         (WebCore::RuleData::descendantSelectorIdentifierHashes):
2190         (WebCore::collectElementIdentifiers):
2191         (WebCore::CSSStyleSelector::pushParent):
2192         (WebCore::CSSStyleSelector::popParent):
2193         (WebCore::CSSStyleSelector::fastRejectSelector):
2194         (WebCore::CSSStyleSelector::matchRulesForList):
2195         (WebCore::RuleData::collectDescendantSelectorIdentifierHashes):
2196         * css/CSSStyleSelector.h:
2197         (WebCore::CSSStyleSelector::ParentStackFrame::ParentStackFrame):
2198         * dom/Element.cpp:
2199         (WebCore::StyleSelectorParentPusher::StyleSelectorParentPusher):
2200         (WebCore::StyleSelectorParentPusher::push):
2201         (WebCore::StyleSelectorParentPusher::~StyleSelectorParentPusher):
2202         (WebCore::Element::attach):
2203         (WebCore::Element::recalcStyle):
2204
2205 2011-02-05  Nate Chapin  <japhet@chromium.org>
2206
2207         Reviewed by Adam Barth.
2208
2209         Refactor: NotificationCenter shouldn't hold its own copy of the ScriptExecutionContext*
2210         when it inherits one from ActiveDOMObject.
2211         https://bugs.webkit.org/show_bug.cgi?id=53815
2212
2213         * bindings/js/JSDesktopNotificationsCustom.cpp:
2214         (WebCore::JSNotificationCenter::requestPermission):
2215         * bindings/v8/custom/V8NotificationCenterCustom.cpp:
2216         (WebCore::V8NotificationCenter::requestPermissionCallback):
2217         * notifications/NotificationCenter.cpp:
2218         (WebCore::NotificationCenter::NotificationCenter):
2219         (WebCore::NotificationCenter::checkPermission):
2220         (WebCore::NotificationCenter::requestPermission):
2221         (WebCore::NotificationCenter::disconnectFrame):
2222         * notifications/NotificationCenter.h:
2223         (WebCore::NotificationCenter::createHTMLNotification):
2224         (WebCore::NotificationCenter::createNotification):
2225
2226 2011-02-04  Adam Barth  <abarth@webkit.org>
2227
2228         Reviewed by Maciej Stachowiak.
2229
2230         Crash in WebCore::TextEncoding::decode below XSSFilter::init
2231         https://bugs.webkit.org/show_bug.cgi?id=53837
2232
2233         Add missing null check.
2234
2235         Test: http/tests/security/xssAuditor/non-block-javascript-url-frame.html
2236
2237         * html/parser/XSSFilter.cpp:
2238         (WebCore::XSSFilter::init):
2239
2240 2011-02-04  Simon Fraser  <simon.fraser@apple.com>
2241
2242         Reviewed by Dan Bernstein.
2243
2244         Crashes in ShadowBlur via WebKit2 FindController
2245         https://bugs.webkit.org/show_bug.cgi?id=53830
2246         
2247         Fix a crash cause by re-entering ShadowBlur, and add assertions to
2248         detect when it happens.
2249         
2250         The re-entrancy occurred when drawRectShadowWithTiling() filled
2251         the interior of the shadow with fillRect() on the context
2252         which still had the shadow state set. This would make another ShadowBlur
2253         on the stack and call into the code again, potentially blowing away
2254         the image buffer.
2255         
2256         Fix by turning off shadows in the destination context while we're
2257         drawing the tiled shadow. The non-tiled code path already did this.
2258
2259         Not testable because CSS shadows clip out the inside of the rect
2260         being shadowed, and SVG uses fillPath, even for rects.
2261
2262         * platform/graphics/ShadowBlur.cpp:
2263         (WebCore::ScratchBuffer::ScratchBuffer):
2264         (WebCore::ScratchBuffer::getScratchBuffer):
2265         (WebCore::ScratchBuffer::scheduleScratchBufferPurge):
2266         (WebCore::ShadowBlur::ShadowBlur):
2267         (WebCore::ShadowBlur::drawRectShadowWithTiling):
2268
2269 2011-02-04  Carlos Garcia Campos  <cgarcia@igalia.com>
2270
2271         Reviewed by Martin Robinson.
2272
2273         [GTK] Don't use a fixed size for search field icons
2274         https://bugs.webkit.org/show_bug.cgi?id=50624
2275
2276         Use the parent input content box to make sure the icon fits in the
2277         search field, scaling it down when needed.
2278
2279         * platform/gtk/RenderThemeGtk.cpp:
2280         (WebCore::paintGdkPixbuf):
2281         (WebCore::getIconSizeForPixelSize):
2282         (WebCore::adjustSearchFieldIconStyle):
2283         (WebCore::RenderThemeGtk::adjustSearchFieldResultsDecorationStyle):
2284         (WebCore::centerRectVerticallyInParentInputElement):
2285         (WebCore::RenderThemeGtk::paintSearchFieldResultsDecoration):
2286         (WebCore::RenderThemeGtk::adjustSearchFieldCancelButtonStyle):
2287         (WebCore::RenderThemeGtk::paintSearchFieldCancelButton):
2288         (WebCore::RenderThemeGtk::paintCapsLockIndicator):
2289         (WebCore::RenderThemeGtk::paintMediaButton):
2290
2291 2011-02-04  Hironori Bono  <hbono@chromium.org>
2292
2293         Reviewed by Adam Barth.
2294
2295         [chromium] JPEG corruption
2296         https://bugs.webkit.org/show_bug.cgi?id=53250
2297
2298         Same as gray-scale JPEGs, we convert the colors of CMYK JPEGs with color
2299         profiles from CMYK to RGB twice and it causes color corruption. This
2300         change suppresses the color profiles for CMYK JPEGs same as gray-scale
2301         ones.
2302
2303         Test: fast/images/cmyk-jpeg-with-color-profile.html
2304
2305         * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
2306         (WebCore::JPEGImageReader::decode):
2307
2308 2011-02-04  Xiyuan Xia  <xiyuan@chromium.org>
2309
2310         Reviewed by Tony Chang.
2311
2312         [Chromium] Option text in select popup does not align with menulist button text
2313         https://bugs.webkit.org/show_bug.cgi?id=53632
2314
2315         This makes clientPaddingLeft and  clientPaddingRight return
2316         the additional m_innerBlock's padding so that the popup item text
2317         aligns with the menulist button text.
2318
2319         * rendering/RenderMenuList.cpp:
2320         (WebCore::RenderMenuList::clientPaddingLeft):
2321         (WebCore::RenderMenuList::clientPaddingRight):
2322
2323 2011-02-04  Anders Carlsson  <andersca@apple.com>
2324
2325         Reviewed by Sam Weinig and Beth Dakin.
2326
2327         REGRESSION: Horizontal scrollbar thumbs leave artifacts over page content when scrolling vertically
2328         <rdar://problem/8962457>
2329
2330         * platform/ScrollView.cpp:
2331         (WebCore::ScrollView::scrollContents):
2332         Subtract scrollbars from the scroll view rect if overlay scrollers are enabled.
2333         
2334         * platform/ScrollableArea.cpp:
2335         (WebCore::ScrollableArea::setScrollOffsetFromAnimation):
2336         Make sure to invalidate both scrollbars if overlay scrollers are enabled.
2337
2338 2011-02-04  Adam Barth  <abarth@webkit.org>
2339
2340         Reviewed by Eric Seidel.
2341
2342         PluginDocuments don't create widgets for plugins on back/forward
2343         https://bugs.webkit.org/show_bug.cgi?id=53474
2344
2345         Long ago, PluginDocument always caused the HTMLEmbedElement to create
2346         its widget synchronously during a post-layout task.  Recently, however,
2347         some changes to the HistroyController caused layout on back/forward to
2348         become slightly more complicated (and added an extra level of recursion
2349         to layout).  This extra level of recursion triggered the "I've recursed
2350         too many times" condition in the post-layout task queue, causing the
2351         FrameView to run the remainder of the tasks asynchronously.
2352         Unfortunately, that broke PluginDocument because it needs its the
2353         HTMLEmbedElement's updateWidget task to run synchronously.
2354
2355         This patch adds a mechanism for "kicking off" the pending post-layout
2356         tasks synchronously (instead of waiting for the timer to fire).
2357         PluginDocument then uses that facility to ensure that the
2358         HTMLEmbedElement's updateWidget task happens.
2359
2360         Test: plugins/plugin-document-back-forward.html
2361
2362         * html/PluginDocument.cpp:
2363         (WebCore::PluginDocumentParser::appendBytes):
2364         * page/FrameView.cpp:
2365         (WebCore::FrameView::flushAnyPendingPostLayoutTasks):
2366         * page/FrameView.h:
2367
2368 2011-02-04  Charlie Reis  <creis@chromium.org>
2369
2370         Reviewed by Mihai Parparita.
2371
2372         Crash in WebCore::HistoryController::itemsAreClones
2373         https://bugs.webkit.org/show_bug.cgi?id=52819
2374
2375         Avoids deleting the current HistoryItem while it is still in use.
2376         Ensures that provisional items are committed for same document navigations.
2377         Ensures that error pages are committed on back/forward navigations.
2378         Also removes unneeded sanity checks used for diagnosing the problem.
2379
2380         * loader/HistoryController.cpp:
2381         * loader/HistoryController.h:
2382
2383 2011-02-04  Carol Szabo  <carol.szabo@nokia.com>
2384
2385         Reviewed by David Hyatt.
2386
2387         Code Changes.
2388
2389         CSS 2.1 failure: content-*
2390         https://bugs.webkit.org/show_bug.cgi?id=52126
2391
2392         Test: fast/css/counters/content-021.html
2393
2394         * rendering/CounterNode.cpp:
2395         (showCounterTree):
2396         Made parameter const because it is supposed to be so.
2397         * rendering/RenderCounter.cpp:
2398         (WebCore::previousInPreOrder):
2399         (WebCore::previousSiblingOrParent):
2400         (WebCore::parentElement):
2401         (WebCore::areRenderersElementsSiblings):
2402         (WebCore::nextInPreOrder):
2403         Added these local helper functions to help navigate the DOM tree
2404         enriched with :before and :after pseudo elements.
2405         (WebCore::planCounter):
2406         Fixed bug that would create a repeat counter for second and
2407         subsequent renderers associated with the same DOM element.
2408         (WebCore::findPlaceForCounter):
2409         (WebCore::makeCounterNode):
2410         Changed to use the new tree navigation functions described above
2411         instead of the Renderer Tree navigation functions.
2412         (WebCore::RenderCounter::rendererSubtreeAttached):
2413         (WebCore::RenderCounter::rendererStyleChanged):
2414         Optimized to not bother about counters until the renderers are
2415         finally attached.
2416         (showRendererTree):
2417         (showNodeTree):
2418         Debug helper functions used to debug Counter bugs.
2419
2420 2011-02-04  Dan Bernstein  <mitz@apple.com>
2421
2422         Typo fix.
2423
2424         * html/parser/XSSFilter.cpp:
2425         (WebCore::HTMLNames::containsJavaScriptURL):
2426
2427 2011-02-04  Dan Bernstein  <mitz@apple.com>
2428
2429         Reviewed by Anders Carlsson.
2430
2431         Make an infinite loop introduced in r77454 finite.
2432
2433         * html/parser/XSSFilter.cpp:
2434         (WebCore::HTMLNames::containsJavaScriptURL):
2435
2436 2011-02-04  Jer Noble  <jer.noble@apple.com>
2437
2438         Reviewed by Eric Carlson.
2439
2440         Frame accurate seeking isn't always accurate
2441         https://bugs.webkit.org/show_bug.cgi?id=52697
2442
2443         Test: media/video-frame-accurate-seek.html
2444
2445         Make seeking slightly more accurate by rounding instead of truncating
2446         when converting from seconds-in-float to time/timeScale.
2447
2448         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
2449         (WebCore::MediaPlayerPrivateQTKit::createQTTime):
2450         * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
2451         (WebCore::MediaPlayerPrivateQuickTimeVisualContext::mediaTimeForTimeValue):
2452         * platform/graphics/win/QTMovie.cpp:
2453         (QTMovie::setCurrentTime):
2454
2455 2011-02-04  Jeremy Orlow  <jorlow@chromium.org>
2456
2457         Reviewed by Nate Chapin.
2458
2459         Second IndexedDB events overhaul patch
2460         https://bugs.webkit.org/show_bug.cgi?id=53813
2461
2462         If an IDBRequest has a IDBTransaction, it should propogate
2463         events through it. In order to do this, IDBRequest needs to
2464         hold a transaction frontend object rather than a backend one.
2465
2466         Test: storage/indexeddb/request-event-propagation.html
2467
2468         * storage/IDBCursor.cpp:
2469         (WebCore::IDBCursor::IDBCursor):
2470         * storage/IDBCursor.h:
2471         (WebCore::IDBCursor::create):
2472         * storage/IDBDatabase.cpp:
2473         (WebCore::IDBDatabase::setSetVersionTransaction):
2474         (WebCore::IDBDatabase::createObjectStore):
2475         (WebCore::IDBDatabase::deleteObjectStore):
2476         * storage/IDBDatabase.h:
2477         * storage/IDBIndex.cpp:
2478         (WebCore::IDBIndex::IDBIndex):
2479         (WebCore::IDBIndex::openCursor):
2480         (WebCore::IDBIndex::openKeyCursor):
2481         (WebCore::IDBIndex::get):
2482         (WebCore::IDBIndex::getKey):
2483         * storage/IDBIndex.h:
2484         (WebCore::IDBIndex::create):
2485         * storage/IDBObjectStore.cpp:
2486         (WebCore::IDBObjectStore::IDBObjectStore):
2487         (WebCore::IDBObjectStore::get):
2488         (WebCore::IDBObjectStore::add):
2489         (WebCore::IDBObjectStore::put):
2490         (WebCore::IDBObjectStore::deleteFunction):
2491         (WebCore::IDBObjectStore::createIndex):
2492         (WebCore::IDBObjectStore::deleteIndex):
2493         (WebCore::IDBObjectStore::openCursor):
2494         * storage/IDBObjectStore.h:
2495         (WebCore::IDBObjectStore::create):
2496         * storage/IDBRequest.cpp:
2497         (WebCore::IDBRequest::create):
2498         (WebCore::IDBRequest::IDBRequest):
2499         (WebCore::IDBRequest::resetReadyState):
2500         (WebCore::IDBRequest::onSuccess):
2501         (WebCore::IDBRequest::dispatchEvent):
2502         * storage/IDBRequest.h:
2503         * storage/IDBTransaction.cpp:
2504         (WebCore::IDBTransaction::IDBTransaction):
2505         (WebCore::IDBTransaction::objectStore):
2506         (WebCore::IDBTransaction::contextDestroyed):
2507         (WebCore::IDBTransaction::enqueueEvent):
2508         * storage/IDBTransaction.h:
2509         * storage/IDBTransaction.idl:
2510
2511 2011-02-04  Jeremy Orlow  <jorlow@chromium.org>
2512
2513         Reviewed by Nate Chapin.
2514
2515         First step towards event propogation within IndexedDB
2516         https://bugs.webkit.org/show_bug.cgi?id=53795
2517
2518         This is the first step towards implementing
2519         http://www.w3.org/Bugs/Public/show_bug.cgi?id=11348
2520         within IndexedDB. I've created a method that knows how
2521         to capture and bubble (based on Node's dispatchGenericEvent).
2522         I've then changed IDBRequest to use it.
2523
2524         The only functional change is that preventDefault now must
2525         be called in error events to prevent the transaction from
2526         being aborted. The tests reflect this change and there's one
2527         specific test to look at this behavior.
2528
2529         Test: storage/indexeddb/error-causes-abort-by-default.html
2530
2531         * storage/IDBAbortEvent.cpp:
2532         (WebCore::IDBAbortEvent::create):
2533         (WebCore::IDBAbortEvent::IDBAbortEvent):
2534         * storage/IDBAbortEvent.h:
2535         * storage/IDBCompleteEvent.cpp:
2536         (WebCore::IDBCompleteEvent::create):
2537         (WebCore::IDBCompleteEvent::IDBCompleteEvent):
2538         * storage/IDBCompleteEvent.h:
2539         * storage/IDBErrorEvent.cpp:
2540         (WebCore::IDBErrorEvent::IDBErrorEvent):
2541         * storage/IDBEvent.cpp:
2542         (WebCore::IDBEvent::IDBEvent):
2543         (WebCore::IDBEvent::dispatch):
2544         * storage/IDBEvent.h:
2545         * storage/IDBRequest.cpp:
2546         (WebCore::IDBRequest::dispatchEvent):
2547         * storage/IDBRequest.h:
2548         * storage/IDBSuccessEvent.cpp:
2549         (WebCore::IDBSuccessEvent::IDBSuccessEvent):
2550         * storage/IDBTransaction.cpp:
2551         (WebCore::IDBTransaction::onAbort):
2552         (WebCore::IDBTransaction::onComplete):
2553         * storage/IDBTransaction.h:
2554         (WebCore::IDBTransaction::backend):
2555         * storage/IDBTransactionBackendImpl.cpp:
2556         (WebCore::IDBTransactionBackendImpl::taskTimerFired):
2557
2558 2011-02-04  Daniel Cheng  <dcheng@chromium.org>
2559
2560         Reviewed by Dmitry Titov.
2561
2562         Clone WebClipboard to be frame-specific.
2563         https://bugs.webkit.org/show_bug.cgi?id=53727
2564
2565         For drop operations, Chrome currently snapshots the data and copies it
2566         into the renderer process. As we add more supported drag data types, the
2567         copy will become increasingly expensive. Instead, we'd like to snapshot
2568         data in the browser to reduce the amount of data copied and to support
2569         Blob in DataTransferItem. In order to allow this, we associated
2570         WebClipboard with a frame so it can correctly route its IPCs to the
2571         corresponding Chromium host.
2572
2573         No new tests because no new functionality.
2574
2575         * platform/chromium/ChromiumDataObject.cpp:
2576         (WebCore::ChromiumDataObject::createReadable):
2577         * platform/chromium/ChromiumDataObject.h:
2578         * platform/chromium/ClipboardChromium.cpp:
2579         (WebCore::ClipboardChromium::create):
2580         * platform/chromium/PlatformBridge.h:
2581         * platform/chromium/ReadableDataObject.cpp:
2582         (WebCore::ReadableDataObject::create):
2583         (WebCore::ReadableDataObject::ReadableDataObject):
2584         (WebCore::ReadableDataObject::getData):
2585         (WebCore::ReadableDataObject::urlTitle):
2586         (WebCore::ReadableDataObject::htmlBaseUrl):
2587         (WebCore::ReadableDataObject::filenames):
2588         (WebCore::ReadableDataObject::ensureTypeCacheInitialized):
2589         * platform/chromium/ReadableDataObject.h:
2590
2591 2011-02-04  Jeremy Orlow  <jorlow@chromium.org>
2592
2593         Revert https://bugs.webkit.org/show_bug.cgi?id=53795
2594
2595         * storage/IDBAbortEvent.cpp:
2596         (WebCore::IDBAbortEvent::create):
2597         (WebCore::IDBAbortEvent::IDBAbortEvent):
2598         * storage/IDBAbortEvent.h:
2599         * storage/IDBCompleteEvent.cpp:
2600         (WebCore::IDBCompleteEvent::create):
2601         (WebCore::IDBCompleteEvent::IDBCompleteEvent):
2602         * storage/IDBCompleteEvent.h:
2603         * storage/IDBErrorEvent.cpp:
2604         (WebCore::IDBErrorEvent::IDBErrorEvent):
2605         * storage/IDBEvent.cpp:
2606         (WebCore::IDBEvent::IDBEvent):
2607         * storage/IDBEvent.h:
2608         * storage/IDBRequest.cpp:
2609         (WebCore::IDBRequest::dispatchEvent):
2610         * storage/IDBRequest.h:
2611         * storage/IDBSuccessEvent.cpp:
2612         (WebCore::IDBSuccessEvent::IDBSuccessEvent):
2613         * storage/IDBTransaction.cpp:
2614         (WebCore::IDBTransaction::onAbort):
2615         (WebCore::IDBTransaction::onComplete):
2616         * storage/IDBTransaction.h:
2617         * storage/IDBTransactionBackendImpl.cpp:
2618         (WebCore::IDBTransactionBackendImpl::taskTimerFired):
2619
2620 2011-02-04  Martin Galpin  <martin@66laps.com>
2621
2622         Reviewed by David Levin.
2623
2624         CORS origin header not set on GET when a preflight request is required.
2625         https://bugs.webkit.org/show_bug.cgi?id=50773
2626         
2627         Test: http/tests/xmlhttprequest/cross-origin-preflight-get.html
2628
2629         * loader/DocumentThreadableLoader.cpp:
2630         (WebCore::DocumentThreadableLoader::preflightSuccess): 
2631         Explicitly set the request origin after a preflight request succeeds.
2632
2633 2011-02-04  Jeremy Orlow  <jorlow@chromium.org>
2634
2635         Reviewed by Nate Chapin.
2636
2637         First step towards event propogation within IndexedDB
2638         https://bugs.webkit.org/show_bug.cgi?id=53795
2639
2640         This is the first step towards implementing
2641         http://www.w3.org/Bugs/Public/show_bug.cgi?id=11348
2642         within IndexedDB. I've created a method that knows how
2643         to capture and bubble (based on Node's dispatchGenericEvent).
2644         I've then changed IDBRequest to use it.
2645
2646         The only functional change is that preventDefault now must
2647         be called in error events to prevent the transaction from
2648         being aborted. The tests reflect this change and there's one
2649         specific test to look at this behavior.
2650
2651         Test: storage/indexeddb/error-causes-abort-by-default.html
2652
2653         * storage/IDBAbortEvent.cpp:
2654         (WebCore::IDBAbortEvent::create):
2655         (WebCore::IDBAbortEvent::IDBAbortEvent):
2656         * storage/IDBAbortEvent.h:
2657         * storage/IDBCompleteEvent.cpp:
2658         (WebCore::IDBCompleteEvent::create):
2659         (WebCore::IDBCompleteEvent::IDBCompleteEvent):
2660         * storage/IDBCompleteEvent.h:
2661         * storage/IDBErrorEvent.cpp:
2662         (WebCore::IDBErrorEvent::IDBErrorEvent):
2663         * storage/IDBEvent.cpp:
2664         (WebCore::IDBEvent::IDBEvent):
2665         (WebCore::IDBEvent::dispatch):
2666         * storage/IDBEvent.h:
2667         * storage/IDBRequest.cpp:
2668         (WebCore::IDBRequest::dispatchEvent):
2669         * storage/IDBRequest.h:
2670         * storage/IDBSuccessEvent.cpp:
2671         (WebCore::IDBSuccessEvent::IDBSuccessEvent):
2672         * storage/IDBTransaction.cpp:
2673         (WebCore::IDBTransaction::onAbort):
2674         (WebCore::IDBTransaction::onComplete):
2675         * storage/IDBTransaction.h:
2676         (WebCore::IDBTransaction::backend):
2677         * storage/IDBTransactionBackendImpl.cpp:
2678         (WebCore::IDBTransactionBackendImpl::taskTimerFired):
2679
2680 2011-02-04  Dimitri Glazkov  <dglazkov@chromium.org>
2681
2682         Reviewed by Csaba Osztrogonác.
2683
2684         [Qt]REGRESSION(r76951): media/controls-without-preload.html fails
2685         https://bugs.webkit.org/show_bug.cgi?id=53674
2686
2687         * css/mediaControlsQt.css:
2688
2689 2011-02-04  Dan Bernstein  <mitz@apple.com>
2690
2691         Reviewed by Darin Adler and Dave Hyatt.
2692
2693         <rdar://problem/8902704> Make ruby text size 50% by default
2694         https://bugs.webkit.org/show_bug.cgi?id=53723
2695
2696         * css/html.css:
2697         (ruby > rt): Changed the font-size from 60% to 50%.
2698
2699 2011-02-04  Antti Koivisto  <antti@apple.com>
2700
2701         Reviewed by Dimitri Glazkov.
2702
2703         https://bugs.webkit.org/show_bug.cgi?id=53610
2704         Regression: adjacent sibling selector not working as expected
2705         <rdar://problem/8960033>
2706         
2707         https://bugs.webkit.org/show_bug.cgi?id=53574
2708         REGRESSION (r76012): :last-child:after not working as expected
2709         <rdar://problem/8948643>
2710         
2711         Test for additional conditions in parent style that prevent sharing.
2712
2713         Tests: fast/selectors/style-sharing-adjacent-selector.html
2714                fast/selectors/style-sharing-last-child.html
2715
2716         * css/CSSStyleSelector.cpp:
2717         (WebCore::parentStylePreventsSharing):
2718         (WebCore::CSSStyleSelector::locateSharedStyle):
2719
2720 2011-02-04  Mark Mentovai  <mark@chromium.org>
2721
2722         Reviewed by Dimitri Glazkov.
2723
2724         Chromium GYP build fix.
2725
2726         When various settings were moved to webcore_prerequisites in r66364,
2727         things that should have been direct_dependent_settings were not marked
2728         as such. GYP 'defines', for example, make no sense on a 'none'-type
2729         target such as webcore_prerequisites. It appears that it was intended
2730         for these settings to be pushed to direct dependents, which would make
2731         direct_dependent_settings correct.
2732
2733         Losing the ChromiumWebCoreObjC defines on the Mac, for example, caused
2734         http://crbug.com/71537, which at best causes Mac console log spew, and
2735         at worst may result in Chromium's copy of WebCore using system
2736         definitions of certain Objective-C classes at runtime, or vice-versa.
2737
2738         The build now includes a postbuild step to prevent
2739         http://crbug.com/71537 from regressing again. The build will fail upon
2740         regression.
2741
2742         https://bugs.webkit.org/show_bug.cgi?id=53630
2743
2744         * WebCore.gyp/WebCore.gyp: Move things in webcore_prerequisites into
2745           direct_dependent_settings as needed, add the check_objc_rename
2746           postbuild step.
2747         * WebCore.gyp/mac/check_objc_rename.sh: Added.
2748
2749 2011-02-04  Robert Hogan  <robert@webkit.org>
2750
2751         Reviewed by Darin Fisher.
2752
2753         Move chromium iframe shim code to cross-platform file
2754         https://bugs.webkit.org/show_bug.cgi?id=52594
2755
2756         Move Chromium code for identifying and cutting out
2757         iframe shims from plugins to cross-platform utility file
2758         IFrameShimSupport.cpp.
2759         Amend PluginViewQt to use this code to handle shims correctly.
2760
2761         * WebCore.gypi: Add Chromium support for IFrameShimSupport.cpp
2762         * WebCore.pro: Add Qt support for IFrameShimSupport.cpp
2763         * plugins/IFrameShimSupport.cpp: Added.
2764         (WebCore::getObjectStack):
2765         (WebCore::iframeIsAbovePlugin):
2766         (WebCore::getPluginOcclusions):
2767         * plugins/IFframeShimSupport.h: Added.
2768         * plugins/qt/PluginViewQt.cpp:
2769         (WebCore::PluginView::setNPWindowIfNeeded):
2770
2771 2011-02-04  Xiaomei Ji  <xji@chromium.org>
2772
2773         Reviewed by David Levin.
2774
2775         Implement "<option> should implement the dir attribute" for chromium port after r76983.
2776         https://bugs.webkit.org/show_bug.cgi?id=50969
2777
2778         Use manual test Source/WebCore/manual-tests/pop-up-alignment-and-direction.html
2779         added in r76983.
2780
2781         * platform/chromium/PopupMenuChromium.cpp: Remove directionality hint from
2782         <select> drop-down setting.
2783         (WebCore::PopupListBox::paintRow): Use <option>'s directionality to paint
2784         items in drop-down and pass-in bidi override flag when creating text run.
2785         * platform/chromium/PopupMenuChromium.h: Remove directionalityHint from
2786         PopupContainerSettings.
2787
2788 2011-02-04  Jeremy Orlow  <jorlow@chromium.org>
2789
2790         Build fix from merge mistake.
2791
2792         * storage/IDBTransaction.cpp:
2793         (WebCore::IDBTransaction::ensureEventTargetData):
2794
2795 2011-02-04  Levi Weintraub  <leviw@chromium.org>
2796
2797         Reviewed by Darin Adler.
2798
2799         Remove unneeded function declarations in comments in EditorClient.h
2800         https://bugs.webkit.org/show_bug.cgi?id=53745
2801
2802         Removing unused commented out function declarations. No tests since this is just cleanup.
2803
2804         * page/EditorClient.h:
2805
2806 2011-02-03  Jeremy Orlow  <jorlow@chromium.org>
2807
2808         Reviewed by Nate Chapin.
2809
2810         Refactor IDBRequest and IDBTransaction a bit
2811         https://bugs.webkit.org/show_bug.cgi?id=53565
2812
2813         There were a lot of subtle issues with the way IDBTransaction
2814         and IDBRequest used to be written. This cleans a lot of them up
2815         and largely simplifies the logic. Using EventQueue rather than
2816         timers is one example of the simplification.
2817
2818         * bindings/scripts/CodeGeneratorV8.pm:
2819         * dom/EventQueue.cpp:
2820         (WebCore::EventQueue::enqueueEvent):
2821         (WebCore::EventQueue::dispatchEvent):
2822         * storage/IDBCursor.cpp:
2823         (WebCore::IDBCursor::continueFunction):
2824         * storage/IDBRequest.cpp:
2825         (WebCore::IDBRequest::create):
2826         (WebCore::IDBRequest::IDBRequest):
2827         (WebCore::IDBRequest::resetReadyState):
2828         (WebCore::IDBRequest::onError):
2829         (WebCore::IDBRequest::onSuccess):
2830         (WebCore::IDBRequest::dispatchEvent):
2831         (WebCore::IDBRequest::enqueueEvent):
2832         (WebCore::IDBRequest::eventTargetData):
2833         (WebCore::IDBRequest::ensureEventTargetData):
2834         * storage/IDBRequest.h:
2835         (WebCore::IDBRequest::dispatchEvent):
2836         * storage/IDBTransaction.cpp:
2837         (WebCore::IDBTransaction::create):
2838         (WebCore::IDBTransaction::IDBTransaction):
2839         (WebCore::IDBTransaction::objectStore):
2840         (WebCore::IDBTransaction::abort):
2841         (WebCore::IDBTransaction::onAbort):
2842         (WebCore::IDBTransaction::onComplete):
2843         (WebCore::IDBTransaction::onTimeout):
2844         (WebCore::IDBTransaction::canSuspend):
2845         (WebCore::IDBTransaction::stop):
2846         (WebCore::IDBTransaction::enqueueEvent):
2847         (WebCore::IDBTransaction::eventTargetData):
2848         (WebCore::IDBTransaction::ensureEventTargetData):
2849         * storage/IDBTransaction.h:
2850
2851 2011-02-01  Jeremy Orlow  <jorlow@chromium.org>
2852
2853         Reviewed by Nate Chapin.
2854
2855         Remove the timeout event from IndexedDB
2856         https://bugs.webkit.org/show_bug.cgi?id=53521
2857
2858         Remove timeout and ontimeout from IDBTransaction per the spec.
2859
2860         * WebCore.gypi:
2861         * storage/IDBDatabase.cpp:
2862         (WebCore::IDBDatabase::transaction):
2863         * storage/IDBDatabase.h:
2864         (WebCore::IDBDatabase::transaction):
2865         * storage/IDBDatabase.idl:
2866         * storage/IDBDatabaseBackendImpl.cpp:
2867         (WebCore::IDBDatabaseBackendImpl::setVersion):
2868         (WebCore::IDBDatabaseBackendImpl::transaction):
2869         * storage/IDBDatabaseBackendImpl.h:
2870         * storage/IDBDatabaseBackendInterface.h:
2871         * storage/IDBTimeoutEvent.cpp: Removed.
2872         * storage/IDBTimeoutEvent.h: Removed.
2873         * storage/IDBTransaction.cpp:
2874         (WebCore::IDBTransaction::IDBTransaction):
2875         (WebCore::IDBTransaction::onAbort):
2876         (WebCore::IDBTransaction::onComplete):
2877         * storage/IDBTransaction.h:
2878         * storage/IDBTransaction.idl:
2879         * storage/IDBTransactionBackendImpl.cpp:
2880         (WebCore::IDBTransactionBackendImpl::create):
2881         (WebCore::IDBTransactionBackendImpl::IDBTransactionBackendImpl):
2882         * storage/IDBTransactionBackendImpl.h:
2883         * storage/IDBTransactionCallbacks.h:
2884
2885 2011-02-04  Chris Fleizach  <cfleizach@apple.com>
2886
2887         Reviewed by Darin Adler.
2888
2889         AX: Can't set accessibility overridden attributes on web objects
2890         https://bugs.webkit.org/show_bug.cgi?id=53725
2891
2892         accessibilitySetOverriddenValue does not work on AX objects from WebCore because 
2893         the right method needed to be overridden (accessibilitySupportsOverriddenAttributes).
2894         Unfortunately, there's no way to test this from DRT, since AppKit returns the overridden
2895         attribute only when an AX client asks for it through the AX frameworks.
2896
2897         * accessibility/mac/AccessibilityObjectWrapper.mm:
2898         (-[AccessibilityObjectWrapper accessibilitySupportsOverriddenAttributes]):
2899
2900 2011-02-03  Dimitri Glazkov  <dglazkov@chromium.org>
2901
2902         Reviewed by Kent Tamura.
2903
2904         REGRESSION(r76147): Slider thumb is not repainted when let go outside of the slider track.
2905         https://bugs.webkit.org/show_bug.cgi?id=53691
2906
2907         Test: fast/repaint/slider-thumb-drag-release.html
2908
2909         * html/shadow/SliderThumbElement.cpp:
2910         (WebCore::SliderThumbElement::stopDragging): Added dirtying the layout bit to ensure
2911             that the thumb is repainted.
2912
2913 2011-02-04  Mikhail Naganov  <mnaganov@chromium.org>
2914
2915         Reviewed by Pavel Feldman.
2916
2917         Web Inspector: Add "show more" data grid node and waiting message UI components.
2918         https://bugs.webkit.org/show_bug.cgi?id=53763
2919
2920         - "show more" data grid node is used for on-demand population of
2921         data grid contents (similar to DOM tree capability for limiting
2922         displayed nodes count);
2923
2924         - waiting message is used for informing user about long lasting
2925         operations (with a possibility to cancel them).
2926
2927         * English.lproj/localizedStrings.js:
2928         * WebCore.gypi:
2929         * WebCore.vcproj/WebCore.vcproj:
2930         * inspector/front-end/PleaseWaitMessage.js: Added.
2931         (WebInspector.PleaseWaitMessage):
2932         * inspector/front-end/ShowMoreDataGridNode.js: Added.
2933         (WebInspector.ShowMoreDataGridNode):
2934         * inspector/front-end/WebKit.qrc:
2935         * inspector/front-end/inspector.css:
2936         (.data-grid button):
2937         (.please-wait-msg):
2938         * inspector/front-end/inspector.html:
2939
2940 2011-02-04  Adele Peterson  <adele@apple.com>
2941
2942         Reviewed by Dan Bernstein.
2943
2944         Fix for https://bugs.webkit.org/show_bug.cgi?id=53740
2945         <rdar://problem/8503629> Allow platforms to specify if the placeholder should be visible when text controls are focused
2946
2947         Tests:
2948         fast/forms/textarea-placeholder-visibility-1.html
2949         fast/forms/textarea-placeholder-visibility-2.html
2950         fast/forms/input-placeholder-visibility-1.html
2951         fast/forms/input-placeholder-visibility-2.html
2952         fast/forms/input-placeholder-visibility-3.html
2953
2954         * html/HTMLFormControlElement.cpp: (WebCore::HTMLTextFormControlElement::placeholderShouldBeVisible):
2955         Add a check for shouldShowPlaceholderWhenFocused.
2956         * html/HTMLTextAreaElement.cpp: (WebCore::HTMLTextAreaElement::updateValue):
2957         Whenever the value is updated, we should also update placeholder visibility.
2958         * rendering/RenderTheme.h: (WebCore::RenderTheme::shouldShowPlaceholderWhenFocused):
2959         Make the default the same as the existing behavior.
2960         * rendering/RenderThemeMac.h:
2961         * rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::shouldShowPlaceholderWhenFocused):
2962         Show placeholder when appropriate. 
2963
2964 2011-02-04  Pavel Podivilov  <podivilov@chromium.org>
2965
2966         Reviewed by Pavel Feldman.
2967
2968         Web Inspector: evaluate on hover does not work on a breakpoint.
2969         https://bugs.webkit.org/show_bug.cgi?id=53768
2970
2971         * inspector/front-end/SourceFrame.js:
2972         (WebInspector.SourceFrame.prototype._mouseHover):
2973
2974 2011-02-04  Sheriff Bot  <webkit.review.bot@gmail.com>
2975
2976         Unreviewed, rolling out r77625 and r77626.
2977         http://trac.webkit.org/changeset/77625
2978         http://trac.webkit.org/changeset/77626
2979         https://bugs.webkit.org/show_bug.cgi?id=53765
2980
2981         It broke Windows builds (Requested by Ossy_ on #webkit).
2982
2983         * Android.jscbindings.mk:
2984         * CMakeLists.txt:
2985         * ForwardingHeaders/pcre/pcre.h: Added.
2986         * ForwardingHeaders/yarr/Yarr.h: Removed.
2987         * ForwardingHeaders/yarr/YarrInterpreter.h: Removed.
2988         * ForwardingHeaders/yarr/YarrPattern.h: Removed.
2989         * WebCore.gyp/WebCore.gyp:
2990         * WebCore.pro:
2991         * WebCore.vcproj/WebCore.vcproj:
2992         * WebCore.vcproj/copyForwardingHeaders.cmd:
2993         * platform/text/RegularExpression.cpp:
2994         (WebCore::RegularExpression::Private::regexp):
2995         (WebCore::RegularExpression::Private::compile):
2996         (WebCore::RegularExpression::Private::Private):
2997         (WebCore::RegularExpression::Private::create):
2998         (WebCore::RegularExpression::Private::~Private):
2999         (WebCore::RegularExpression::match):
3000
3001 2011-02-04  Peter Varga  <pvarga@webkit.org>
3002
3003         Rubber-stamped by Csaba Osztrogonác.
3004
3005         Replace PCRE with Yarr in WebCore
3006         https://bugs.webkit.org/show_bug.cgi?id=53496
3007
3008         Speculative windows build fix.
3009
3010         No new tests needed.
3011
3012         * platform/text/RegularExpression.cpp:
3013
3014 2011-02-04  Peter Varga  <pvarga@webkit.org>
3015
3016
3017         Reviewed by Gavin Barraclough.
3018
3019         Replace PCRE with Yarr in WebCore
3020         https://bugs.webkit.org/show_bug.cgi?id=53496
3021
3022         No new tests needed.
3023
3024         * Android.jscbindings.mk:
3025         * CMakeLists.txt:
3026         * ForwardingHeaders/pcre/pcre.h: Removed.
3027         * ForwardingHeaders/yarr/Yarr.h: Added.
3028         * ForwardingHeaders/yarr/YarrInterpreter.h: Added.
3029         * ForwardingHeaders/yarr/YarrPattern.h: Added.
3030         * WebCore.gyp/WebCore.gyp:
3031         * WebCore.pro:
3032         * WebCore.vcproj/WebCore.vcproj:
3033         * WebCore.vcproj/copyForwardingHeaders.cmd:
3034         * platform/text/RegularExpression.cpp:
3035         (WebCore::RegularExpression::Private::create):
3036         (WebCore::RegularExpression::Private::Private):
3037         (WebCore::RegularExpression::Private::compile):
3038         (WebCore::RegularExpression::match):
3039
3040 2011-02-04  Pavel Feldman  <pfeldman@chromium.org>
3041
3042         Reviewed by Yury Semikhatsky.
3043
3044         Web Inspector: Network panel filtering is broken.
3045         https://bugs.webkit.org/show_bug.cgi?id=53764
3046
3047         * inspector/front-end/NetworkPanel.js:
3048         (WebInspector.NetworkPanel.prototype._sortItems):
3049         (WebInspector.NetworkPanel.prototype._sortByTimeline):
3050         (WebInspector.NetworkPanel.prototype._filter):
3051         (WebInspector.NetworkPanel.prototype._updateOffscreenRows):
3052         (WebInspector.NetworkDataGridNode.prototype.isFilteredOut):
3053         (WebInspector.NetworkDataGridNode.prototype.get selectable):
3054         (WebInspector.NetworkTotalGridNode.prototype.isFilteredOut):
3055         (WebInspector.NetworkTotalGridNode.prototype.get selectable):
3056
3057 2011-02-04  Andrey Kosyakov  <caseq@chromium.org>
3058
3059         Reviewed by Pavel Feldman.
3060
3061         Web Inspector: support overriding user agent strings
3062         https://bugs.webkit.org/show_bug.cgi?id=51485
3063
3064         Test: http/tests/inspector/extensions-useragent.html
3065
3066         * inspector/Inspector.idl:
3067         * inspector/InspectorController.cpp:
3068         (WebCore::InspectorController::disconnectFrontend):
3069         (WebCore::InspectorController::setUserAgentOverride):
3070         (WebCore::InspectorController::userAgentOverride):
3071         * inspector/InspectorController.h:
3072         * inspector/front-end/ExtensionAPI.js:
3073         (WebInspector.injectedExtensionAPI.InspectedWindow.prototype.reload):
3074         * inspector/front-end/ExtensionServer.js:
3075         (WebInspector.ExtensionServer.prototype._onReload):
3076         * loader/FrameLoader.cpp:
3077         (WebCore::FrameLoader::userAgent):
3078         (WebCore::FrameLoader::applyUserAgent):
3079
3080 2011-02-04  Pavel Podivilov  <podivilov@chromium.org>
3081
3082         Reviewed by Pavel Feldman.
3083
3084         Web Inspector: scripts panel displays wrong file name after reload.
3085         https://bugs.webkit.org/show_bug.cgi?id=53761
3086
3087         * inspector/front-end/ScriptsPanel.js:
3088         (WebInspector.ScriptsPanel.prototype._resourceLoadingFinished):
3089
3090 2011-02-03  Yury Semikhatsky  <yurys@chromium.org>
3091
3092         Reviewed by Pavel Feldman.
3093
3094         Web Inspector: remove settings related methods from InspectorClient
3095         https://bugs.webkit.org/show_bug.cgi?id=53686
3096
3097         * WebCore.exp.in:
3098         * inspector/CodeGeneratorInspector.pm:
3099         * inspector/InspectorClient.h:
3100         * inspector/InspectorFrontendClientLocal.cpp:
3101         (WebCore::InspectorFrontendClientLocal::InspectorFrontendClientLocal):
3102         (WebCore::InspectorFrontendClientLocal::changeAttachedWindowHeight):
3103         (WebCore::InspectorFrontendClientLocal::restoreAttachedWindowHeight):
3104         * inspector/InspectorFrontendClientLocal.h: ports that provide in-process implementation of the inspector front-end can
3105         provide platform-specific settings accessor.
3106         (WebCore::InspectorFrontendClientLocal::Settings::Settings):
3107         (WebCore::InspectorFrontendClientLocal::Settings::~Settings):
3108         (WebCore::InspectorFrontendClientLocal::Settings::inspectorAttachedHeight):
3109         (WebCore::InspectorFrontendClientLocal::Settings::storeInspectorAttachedHeight):
3110         * loader/EmptyClients.h:
3111
3112 2011-02-03  Anton Muhin  <antonm@chromium.org>
3113
3114         Reviewed by Adam Barth.
3115
3116         [v8] frame several more JS code invocations into v8::TryCatch
3117         https://bugs.webkit.org/show_bug.cgi?id=53594
3118
3119         This patch is preemptive and adjusts v8 bindings code to forthcoming small change
3120         in v8::ThrowException---currently sometimes exceptions thrown by this method
3121         do not reach surrounding v8::TryCatch handler (see
3122         http://code.google.com/p/v8/issues/detail?id=1072 and
3123         http://codereview.chromium.org/6397011/).  Therefore the goal of this patch
3124         is to make forthcoming v8 roll as smooth as possible (alas, we'll still need
3125         one rebaseline as of now.)
3126
3127         * bindings/v8/V8Proxy.cpp:
3128         (WebCore::V8Proxy::runScript): Do not rely on empty handle as a signal of exception, wrap into v8::TryCatch instead
3129         * bindings/v8/V8WindowErrorHandler.cpp:
3130         (WebCore::V8WindowErrorHandler::callListenerFunction): Ditto
3131
3132 2011-02-03  Maciej Stachowiak  <mjs@apple.com>
3133
3134         Reviewed by Dan Bernstein.
3135
3136         WebKit2: Need WebKit2 equivalent of WebResourceLoadDelegate::willSendRequest in the Bundle
3137         https://bugs.webkit.org/show_bug.cgi?id=52897
3138         <rdar://problem/8898294>
3139
3140         * WebCore.exp.in: Add export now needed by WebKit2
3141
3142 2011-02-03  Victoria Kirst  <vrk@google.com>
3143
3144         Reviewed by James Robinson.
3145
3146         Replaces float literals with uniform values in shader code
3147         so that buggy drivers unable to parse float values in different
3148         locales will not produce a pink video.
3149
3150         [chromium] Fix pink video bug with gpu-acceleration enabled
3151         https://bugs.webkit.org/show_bug.cgi?id=53568
3152
3153         * platform/graphics/chromium/VideoLayerChromium.cpp:
3154         (WebCore::VideoLayerChromium::SharedValues::SharedValues):
3155         (WebCore::VideoLayerChromium::drawYUV):
3156         * platform/graphics/chromium/VideoLayerChromium.h:
3157         (WebCore::VideoLayerChromium::SharedValues::signAdjLocation):
3158
3159 2011-02-03  James Kozianski  <koz@chromium.org>
3160
3161         Reviewed by Dimitri Glazkov.
3162
3163         Add navigator.registerProtocolHandler behind a flag.
3164         https://bugs.webkit.org/show_bug.cgi?id=52609
3165
3166         This method is described in the HTML5 specification here,
3167         http://dev.w3.org/html5/spec/Overview.html#dom-navigator-registerprotocolhandler
3168
3169         This change is largely cribbed from B. Green's 29651 patches. It is
3170         behind a flag so as not to break JS feature detection.
3171
3172         New layout test fast/dom/registerProtocolHandler.html.
3173
3174         * Configurations/FeatureDefines.xcconfig:
3175         * loader/EmptyClients.h:
3176         (WebCore::EmptyChromeClient::registerProtocolHandler):
3177         * page/Chrome.cpp:
3178         (WebCore::Chrome::registerProtocolHandler):
3179         * page/Chrome.h:
3180         * page/ChromeClient.h:
3181         * page/Navigator.cpp:
3182         (WebCore::verifyCustomHandlerURL):
3183         (WebCore::verifyProtocolHandlerScheme):
3184         (WebCore::Navigator::registerProtocolHandler):
3185         * page/Navigator.h:
3186         * page/Navigator.idl:
3187
3188 2011-02-03  Brian Ryner  <bryner@chromium.org>
3189
3190         Reviewed by Darin Fisher.
3191
3192         Add a field to the ResourceResponse for tracking the socket address
3193         of the host that the resource was fetched from.  Patch was originally
3194         by Paul Marks.
3195         https://bugs.webkit.org/show_bug.cgi?id=53699
3196
3197         * platform/network/chromium/ResourceResponse.cpp:
3198         (WebCore::ResourceResponse::doPlatformCopyData):
3199         (WebCore::ResourceResponse::doPlatformAdopt):
3200         * platform/network/chromium/ResourceResponse.h:
3201         (WebCore::ResourceResponse::socketAddress):
3202         (WebCore::ResourceResponse::setSocketAddress):
3203
3204 2011-02-03  Adam Langley  <agl@chromium.org>
3205
3206         Reviewed by Adam Barth.
3207
3208         Plumb mixed script URL to FrameLoaderClient
3209         https://bugs.webkit.org/show_bug.cgi?id=52384
3210
3211         Regressions covered by http/tests/security/mixedContent/*
3212
3213         * loader/EmptyClients.h:
3214         (WebCore::EmptyFrameLoaderClient::didRunInsecureContent):
3215         * loader/FrameLoader.cpp:
3216         (WebCore::FrameLoader::checkIfRunInsecureContent):
3217         * loader/FrameLoaderClient.h:
3218
3219 2011-02-03  Simon Fraser  <simon.fraser@apple.com>
3220
3221         Reviewed by Dan Bernstein.
3222
3223         REGRESSION: Artifacts on box-shadow corners in some cases
3224         https://bugs.webkit.org/show_bug.cgi?id=53731
3225
3226         Fix overdrawing artifacts in ShadowBlur's tiling code path,
3227         which show up in shadows using a color with alpha.
3228         
3229         Test: fast/box-shadow/shadow-tiling-artifact.html
3230
3231         * platform/graphics/ShadowBlur.cpp:
3232         (WebCore::ShadowBlur::drawRectShadowWithTiling): Ensure
3233         that the inner rect that gets filled does not overlap with any
3234         of the eight tiled areas by having the corner and side dimensions
3235         be the same for contiguous areas.
3236
3237 2011-02-03  Adam Barth  <abarth@webkit.org>
3238
3239         Reviewed by Alexey Proskuryakov.
3240
3241         XSS Auditor is spinning inside decodeURLEscapeSequences() if there are
3242         percent signs in large posted data
3243         https://bugs.webkit.org/show_bug.cgi?id=53405
3244
3245         If the input string contains many non-% characters followed by a %
3246         character that is not a valid URL escape sequence, then the old
3247         algorithm would only advance the initial search by one character
3248         (instead of jumping to just after the % character).  That would cause
3249         the algorithm to take N^2 time (in the number of characters before the
3250         first % character).  This patch just advances the search past the first
3251         % character so we can start looking for next % character sooner.
3252
3253         * platform/KURL.cpp:
3254         (WebCore::decodeURLEscapeSequences):
3255
3256 2011-02-03  Pavel Podivilov  <podivilov@chromium.org>
3257
3258         Reviewed by Pavel Feldman.
3259
3260         Web Inspector: click on a breakpoint highlights wrong line in source frame.
3261         https://bugs.webkit.org/show_bug.cgi?id=53692
3262
3263         * inspector/front-end/BreakpointsSidebarPane.js:
3264         (WebInspector.JavaScriptBreakpointsSidebarPane.prototype._setupBreakpointElement):
3265
3266 2011-02-03  Anton Muhin  <antonm@chromium.org>
3267
3268         Reviewed by Adam Barth.
3269
3270         [v8] Bail out if to string conversion returned empty handle
3271         https://bugs.webkit.org/show_bug.cgi?id=53687
3272
3273         This a temporary measure: actually one probably should never get empty handle
3274         if there was no exception.  The root cause is under investigation.
3275         The bailout though allows Chromium not to crash---attempt to convert an empty
3276         v8 hande into WebCore string crashes with invalid memory access.
3277
3278         See http://code.google.com/p/chromium/issues/detail?id=71544
3279
3280         There is no known reduction expressible as a layout test so far.  The crash found with automated testing tools.
3281
3282         * bindings/v8/V8Binding.cpp:
3283         (WebCore::v8NonStringValueToWebCoreString): Bail out on empty handle
3284         * bindings/v8/V8Binding.h:
3285         (WebCore::V8ParameterBase::prepareBase): Ditto
3286
3287 2011-02-03  Adam Barth  <abarth@webkit.org>
3288
3289         Attempt to fix Chromium build.
3290
3291         * html/parser/XSSFilter.cpp:
3292
3293 2011-02-03  Dirk Pranke  <dpranke@chromium.org>
3294
3295         Unreviewed, rolling out r77562.
3296         http://trac.webkit.org/changeset/77562
3297         https://bugs.webkit.org/show_bug.cgi?id=53630
3298
3299         broke chromium mac build
3300
3301         * WebCore.gyp/WebCore.gyp:
3302         * WebCore.gyp/mac/check_objc_rename.sh: Removed.
3303
3304 2011-02-03  Adam Barth  <abarth@webkit.org>
3305
3306         Reviewed by Daniel Bates.
3307
3308         XSS Auditor severely affects loading performance after submitting a large form
3309         https://bugs.webkit.org/show_bug.cgi?id=49845
3310
3311         Switch over from the XSSAuditor to the XSSFilter, improving performance
3312         on this example.
3313
3314         * html/parser/XSSFilter.cpp:
3315         (WebCore::XSSFilter::filterToken):
3316         * page/XSSAuditor.cpp:
3317         (WebCore::XSSAuditor::isEnabled):
3318
3319 2011-02-03  Dirk Pranke  <dpranke@chromium.org>
3320
3321         Unreviewed, rolling out r77567.
3322         http://trac.webkit.org/changeset/77567
3323         https://bugs.webkit.org/show_bug.cgi?id=53468
3324
3325         broke chromium linux svg, canvas tests, possibly win also?
3326
3327         * platform/graphics/skia/ImageBufferSkia.cpp:
3328         (WebCore::getImageData):
3329         (WebCore::ImageBuffer::getUnmultipliedImageData):
3330         (WebCore::ImageBuffer::getPremultipliedImageData):
3331         (WebCore::putImageData):
3332         (WebCore::ImageBuffer::putUnmultipliedImageData):
3333         (WebCore::ImageBuffer::putPremultipliedImageData):
3334
3335 2011-02-02  MORITA Hajime  <morrita@google.com>
3336
3337         Reviewed by Dimitri Glazkov.
3338
3339         Refactoring: <progress> should not use ShadowElement
3340         https://bugs.webkit.org/show_bug.cgi?id=53583
3341
3342         - Introduced RenderIndicatorPart and RenderProgressBarValuePart
3343           to be responsible for bar-part layout,
3344           which adopted layout logic from ShadowBlockElement.
3345         - ProgressBarValueElement is no longer a subclass of ShadowBlockElement.
3346         - Remove dependency from RenderProgress to HTMLProgressElement and
3347           ShadowBlockElement.
3348         - The shadow tree is no longer removed on detach(). It becomes persistent.
3349           This is now possible because the ShadowBlockElement dependency is gone.
3350         - ::-webkit-appearance for -webkit-progress-bar-value is no longer referred.
3351           That didn't make sense.
3352
3353         * html/HTMLProgressElement.cpp:
3354         (WebCore::HTMLProgressElement::createShadowSubtreeIfNeeded):
3355         * html/HTMLProgressElement.h:
3356         * html/shadow/ProgressBarValueElement.h: Added.
3357         (WebCore::ProgressBarValueElement::ProgressBarValueElement):
3358         (WebCore::ProgressBarValueElement::shadowPseudoId):
3359         (WebCore::ProgressBarValueElement::createRenderer):
3360         (WebCore::ProgressBarValueElement::create):
3361         * rendering/RenderIndicator.cpp:
3362         (WebCore::RenderIndicatorPart::RenderIndicatorPart):
3363         (WebCore::RenderIndicatorPart::~RenderIndicatorPart):
3364         (WebCore::RenderIndicatorPart::layout):
3365         (WebCore::RenderIndicatorPart::styleDidChange):
3366         * rendering/RenderIndicator.h: Added RenderIndicatorPart class
3367         (WebCore::RenderIndicatorPart::originalVisibility):
3368         (WebCore::RenderIndicatorPart::requiresForcedStyleRecalcPropagation):
3369         (WebCore::RenderIndicatorPart::canHaveChildren):
3370         * rendering/RenderProgress.cpp:
3371         (WebCore::RenderProgressBarValuePart::preferredFrameRect):
3372         (WebCore::RenderProgressBarValuePart::shouldBeHidden):
3373         (WebCore::RenderProgress::updateFromElement):
3374         (WebCore::RenderProgress::layoutParts):
3375         (WebCore::RenderProgress::shouldHaveParts):
3376         * rendering/RenderProgress.h:
3377         (WebCore::RenderProgressBarValuePart::RenderProgressBarValuePart):
3378
3379 2011-02-03  Jia Pu  <jpu@apple.com>
3380
3381         Reversion should not be marked as misspelled.
3382         https://bugs.webkit.org/show_bug.cgi?id=53255
3383
3384         This patch includes fix for reported bug, and also some housekeeping changes.
3385
3386         To implement desired behavior, we need:
3387         1. Add a new marker type, SpellCheckingExemption, since now we distingusish between text
3388            that shouldn't be spellchecked and text shouldn't be autocorrected.
3389         2. Make sure that there is no pending correction panel when we enter markAllMisspellingsAndBadGrammarInRanges().
3390            Otherwise the spell checking code in that function may interfere with autocorrection. This
3391            is achieved by explicitly applying pending correction when user types space, line break or
3392            paragraph break.
3393
3394         Housekeeping code changes include:
3395         1. Change manual-tests that were broken by relocated WebCore directory.
3396         2. Use TextIterator in various DocumentMarkerController functions instead of using
3397            Node::traverseNextNode() directly.
3398         3. Allow passing multiple marker types into DocumentMarkerController::removeMarkers() and
3399            DocumentMarkerController::hasMarkers() to improve clarity and efficiency.
3400         4. Fixes of minor bugs that were exposed previously.
3401
3402         * WebCore.exp.in: Change signature of DocumentMarkerController::removeMarkers().
3403
3404         * dom/DocumentMarker.h: Added new marker type SpellCheckingExemption.
3405
3406         * dom/DocumentMarkerController.cpp:
3407         (WebCore::DocumentMarkerController::removeMarkers): Use TextIterator to scan the range to be
3408            consistent with addMarker() function. Allow passing in multiple marker types in one call.
3409            Added a boolean argument to specify the behavior when removing markers that partially
3410            overlap the specified range.
3411         (WebCore::DocumentMarkerController::removeMarkersFromMarkerMapVectorPair): Allow passing in
3412            multiple marker types in one call.
3413         (WebCore::DocumentMarkerController::hasMarkers): Use TextIterator to scan the range to be
3414            consistent with addMarker() function. Allow passing in multiple marker types in one call.
3415
3416         * dom/DocumentMarkerController.h: Allow passing in multiple marker types to removeMarkers()
3417            and hasMarkers(). Added a boolean argument to removeMarkers() to specify the behavior when
3418            removing markers that partially overlap the specified range.
3419
3420         * editing/Editor.cpp:
3421         (WebCore::markerTypesForAutocorrection): Add SpellCheckingExemption marker when apply correction.
3422         (WebCore::markerTypesForReplacement): Ditto.
3423         (WebCore::Editor::respondToChangedSelection): Reordered call to dismissCorrectionPanel() and
3424            setSelection() to make sure there is no pending correction when entering
3425            markAllMisspellingsAndBadGrammarInRanges().
3426         (WebCore::Editor::appliedEditing): Only remove CorrectionIndicator markers when the command
3427            is a top level command to improve efficiency.
3428         (WebCore::Editor::insertTextWithoutSendingTextEvent): Added code to applying pending correction.
3429         (WebCore::Editor::insertLineBreak): Ditto.
3430         (WebCore::Editor::insertParagraphSeparator): Ditto.
3431         (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): Don't mark mispelling if the
3432            text carries SpellCheckingExemption marker.
3433         (WebCore::Editor::correctionPanelTimerFired): Reset correction panel if the returned suggestion
3434            from spellchecker is an empty string.
3435         (WebCore::Editor::removeSpellAndCorrectionMarkersFromWordsToBeEdited):
3436            Use new DocumentMarkerController::removeMarkers() to replace custom implemenation to improve
3437            efficiency and readability.
3438         (WebCore::Editor::applyCorrectionPanelInfo): Remove the code that set caret position after
3439            applying correction, since it's unnecessary. Also, store pre-correction string together with
3440            the marker for reversion panel to use.
3441         (WebCore::Editor::applyAutocorrectionBeforeTypingIfAppropriate): Apply pending correction.
3442         (WebCore::Editor::changeSelectionAfterCommand): Moved marker removal code to Editor::appliedEditing()
3443            where we have access to EditCommand object.
3444
3445         * editing/Editor.h: Added new function applyAutocorrectionAfterTypingIfAppropriate().
3446
3447         * manual-tests/autocorrection/autocorrection-cancelled-by-ESC.html: Change manual-tests that
3448            were broken by relocated WebCore directory.
3449
3450         * manual-tests/autocorrection/autocorrection-cancelled-by-typing-1.html: Ditto.
3451
3452         * manual-tests/autocorrection/autocorrection-contraction.html: Ditto.
3453
3454         * manual-tests/autocorrection/continue-typing-to-dismiss-reversion.html: Ditto.
3455
3456         * manual-tests/autocorrection/delete-to-dismiss-reversion.html: Ditto.
3457
3458         * manual-tests/autocorrection/delete-to-end-of-word-to-show-reversion.html: Ditto.
3459
3460         * manual-tests/autocorrection/dismiss-multiple-guesses.html: Ditto.
3461
3462         * manual-tests/autocorrection/move-to-end-of-word-to-show-reversion.html: Ditto.
3463
3464         * manual-tests/autocorrection/select-from-multiple-guesses.html: Ditto.
3465
3466         * manual-tests/autocorrection/spell-checking-after-reversion.html: Added.
3467
3468         * manual-tests/autocorrection/type-whitespace-to-dismiss-reversion.html: Change manual-tests that
3469            were broken by relocated WebCore directory.
3470
3471         * rendering/InlineTextBox.cpp:
3472         (WebCore::InlineTextBox::paintDocumentMarkers): Code clean-up to be more concise.
3473
3474 2011-02-03  Abhishek Arya  <inferno@chromium.org>
3475
3476         Unreviewed, qt build fix.
3477
3478         * rendering/RenderBlock.cpp:
3479         (WebCore::RenderBlock::removeFloatingObject):
3480
3481 2011-02-03  Brian Salomon  <bsalomon@google.com>
3482
3483         Reviewed by James Robinson.
3484
3485         Handle non-raster backed images in getUnmultipliedImageData()
3486         https://bugs.webkit.org/show_bug.cgi?id=53468
3487
3488         No new tests. Existing canvas tests sufficient
3489         LayoutTests/canvas/philip/...
3490
3491         * platform/graphics/skia/ImageBufferSkia.cpp:
3492         (WebCore::getImageData):
3493         (WebCore::ImageBuffer::getUnmultipliedImageData):
3494         (WebCore::ImageBuffer::getPremultipliedImageData):
3495         (WebCore::putImageData):
3496         (WebCore::ImageBuffer::putUnmultipliedImageData):
3497         (WebCore::ImageBuffer::putPremultipliedImageData):
3498
3499 2011-02-03  Abhishek Arya  <inferno@chromium.org>
3500
3501         Reviewed by James Robinson.
3502
3503         Enforce more limits on root inline boxes height calculations.
3504         https://bugs.webkit.org/show_bug.cgi?id=53729
3505
3506         Test: fast/overflow/overflow-height-float-not-removed-crash.html
3507
3508         * rendering/RenderBlock.cpp:
3509         (WebCore::RenderBlock::removeFloatingObject): prevent logicalBottom to
3510         become negative when logicalTop is INT_MAX.
3511         (WebCore::RenderBlock::markLinesDirtyInBlockRange): when logicalBottom
3512         is INT_MAX, we should dirty everything. So, we bail out to make
3513         afterLowest equal to the lastRootBox() or lowestDirstLine.
3514
3515 2011-02-03  David Levin  <levin@chromium.org>
3516
3517         Reviewed by Adam Barth and Oliver Hunt.
3518
3519         Worker.importScript() should clean errors for cross origin imports.
3520         https://bugs.webkit.org/show_bug.cgi?id=52871
3521
3522         Test: http/tests/workers/worker-importScriptsOnError.html
3523
3524         * bindings/js/WorkerScriptController.cpp:
3525         (WebCore::WorkerScriptController::evaluate): Use sanitizeScriptError
3526         to determine when to create a clean exception.
3527         * bindings/v8/WorkerContextExecutionProxy.cpp:
3528         (WebCore::WorkerContextExecutionProxy::evaluate): Ditto.
3529         * dom/ScriptExecutionContext.cpp:
3530         (WebCore::ScriptExecutionContext::sanitizeScriptError): Figure out
3531         if the error needs to be cleaned up.
3532         (WebCore::ScriptExecutionContext::dispatchErrorEvent): Extracted
3533         sanitizeScriptError for use by other places.
3534         * dom/ScriptExecutionContext.h:
3535         * workers/WorkerContext.cpp:
3536         (WebCore::WorkerContext::importScripts): Use the reponse url when
3537         telling the evaluate where the script came fro.
3538         * workers/WorkerScriptLoader.cpp:
3539         (WebCore::WorkerScriptLoader::responseURL): Expose the url that
3540         the script was loaded from (which may be different from url() due
3541         to redirects).
3542         (WebCore::WorkerScriptLoader::didReceiveResponse): Capture the reponse url.
3543         * workers/WorkerScriptLoader.h:
3544
3545 2011-02-03  Mark Mentovai  <mark@chromium.org>
3546
3547         Reviewed by Dimitri Glazkov.
3548
3549         Chromium GYP build fix.
3550
3551         When various settings were moved to webcore_prerequisites in r66364,
3552         things that should have been direct_dependent_settings were not marked
3553         as such. GYP 'defines', for example, make no sense on a 'none'-type
3554         target such as webcore_prerequisites. It appears that it was intended
3555         for these settings to be pushed to direct dependents, which would make
3556         direct_dependent_settings correct.
3557
3558         Losing the ChromiumWebCoreObjC defines on the Mac, for example, caused
3559         http://crbug.com/71537, which at best causes Mac console log spew, and
3560         at worst may result in Chromium's copy of WebCore using system
3561         definitions of certain Objective-C classes at runtime, or vice-versa.
3562
3563         The build now includes a postbuild step to prevent
3564         http://crbug.com/71537 from regressing again. The build will fail upon
3565         regression.
3566
3567         https://bugs.webkit.org/show_bug.cgi?id=53630
3568
3569         * WebCore.gyp/WebCore.gyp: Move things in webcore_prerequisites into
3570           direct_dependent_settings as needed, add the check_objc_rename
3571           postbuild step.
3572         * WebCore.gyp/mac/check_objc_rename.sh: Added.
3573
3574 2011-02-03  Adam Barth  <abarth@webkit.org>
3575
3576         Reviewed by Eric Seidel.
3577
3578         Make XSSFilter go fast by adding a SuffixTree
3579         https://bugs.webkit.org/show_bug.cgi?id=53665
3580
3581         The SuffixTree lets us quickly reject snippets if the POST data is
3582         large (because we can avoid a linear scan over the POST data).
3583
3584         * html/parser/XSSFilter.cpp:
3585         (WebCore::XSSFilter::init):
3586         (WebCore::XSSFilter::isContainedInRequest):
3587         * html/parser/XSSFilter.h:
3588
3589 2011-02-03  Mihai Parparita  <mihaip@chromium.org>
3590
3591         Reviewed by Alexey Proskuryakov.
3592
3593         REGRESSION (r77355): Page cache layout tests crash
3594         https://bugs.webkit.org/show_bug.cgi?id=53648
3595
3596         Test: fast/events/pagehide-timeout.html
3597         
3598         Suspend active DOM objects after all pagehide event handlers have run,
3599         otherwise it's possible for them to create more objects that weren't
3600         getting suspended.
3601
3602         * history/CachedFrame.cpp:
3603         (WebCore::CachedFrame::CachedFrame):
3604
3605 2011-02-03  Jeremy Orlow  <jorlow@chromium.org>
3606
3607         Reviewed by Nate Chapin.
3608
3609         SerializedScriptValue should not require v8 to create undefined and null values
3610         https://bugs.webkit.org/show_bug.cgi?id=53730
3611
3612         Instead of creating a v8 type and passing that into the constructor, just use
3613         the writer class directly. While I was at it, I cleaned up the code a bit too
3614         by getting rid of the WireData/StringValue enum as I found that personally
3615         confusing.
3616
3617         This is necessary because these methods are called by IndexedDB in the browser
3618         process where v8 is not spun up.
3619
3620         No functionality changed and not possible to test.
3621
3622         * bindings/v8/SerializedScriptValue.cpp:
3623         (WebCore::SerializedScriptValue::createFromWire):
3624         (WebCore::SerializedScriptValue::create):
3625         (WebCore::SerializedScriptValue::nullValue):
3626         (WebCore::SerializedScriptValue::undefinedValue):
3627         (WebCore::SerializedScriptValue::release):
3628         (WebCore::SerializedScriptValue::SerializedScriptValue):
3629         * bindings/v8/SerializedScriptValue.h:
3630
3631 2011-02-03  Beth Dakin  <bdakin@apple.com>
3632
3633         Reviewed by Sam Weinig.
3634
3635         Fix for <rdar://problem/8944544> Ability to animate track
3636         for WKPainter scrollers
3637
3638         Two new WebKitSystemInterface functions.
3639         * WebCore.exp.in:
3640         * platform/mac/WebCoreSystemInterface.h:
3641         * platform/mac/WebCoreSystemInterface.mm:
3642
3643         Use Scrollbar::convertFromContainingView() to return the right point.
3644         * platform/mac/ScrollAnimatorMac.mm:
3645         (-[ScrollbarPainterControllerDelegate scrollerImpPair:convertContentPoint:toScrollerImp:]):
3646         
3647         ScrollKnobAnimation is now ScrollbarPartAnimation. It can
3648         now be used to animate the knob or the track.
3649         (-[ScrollbarPartAnimation initWithScrollbarPainter:part:WebCore::scrollAnimator:WebCore::animateAlphaTo:duration:]):
3650         (-[ScrollbarPartAnimation setCurrentProgress:]):
3651         (-[ScrollbarPainterDelegate setUpAnimation:scrollerPainter:part:WebCore::animateAlphaTo:duration:]):
3652         (-[ScrollbarPainterDelegate scrollerImp:animateKnobAlphaTo:duration:]):
3653         (-[ScrollbarPainterDelegate scrollerImp:animateTrackAlphaTo:duration:]):
3654
3655         Scrollbars need invalodating after the overlay state changes. 
3656         (-[ScrollbarPainterDelegate scrollerImp:overlayScrollerStateChangedTo:]):
3657
3658 2011-02-03  Sam Weinig  <sam@webkit.org>
3659
3660         Reviewed by Beth Dakin.
3661
3662         Scroll thumb jumps to top when resizing horizontally.
3663
3664         * platform/ScrollView.cpp:
3665         (WebCore::ScrollView::updateScrollbars): Add call to update
3666         the scrollbar's offset in the case where we may have created
3667         a new scrollbar but have not changed the current position.
3668
3669 2011-02-03  Justin Schuh  <jschuh@chromium.org>
3670
3671         Reviewed by Dirk Schulze.
3672
3673         startAnimations should use a local, RefCounted Vector.
3674         https://bugs.webkit.org/show_bug.cgi?id=53458
3675
3676         Test: svg/custom/use-animation-in-fill.html
3677
3678         * svg/SVGDocumentExtensions.cpp:
3679         (WebCore::SVGDocumentExtensions::startAnimations):
3680
3681 2011-02-03  Adam Barth  <abarth@webkit.org>
3682
3683         Reviewed by Daniel Bates.
3684
3685         XSSFilter shouldn't bother to analyze pages without "injection"
3686         characters in the request
3687         https://bugs.webkit.org/show_bug.cgi?id=53664
3688
3689         If the request lacks these "injection" characters, then it's unlikely
3690         that there's a reflective XSS attack happening.  This hueristic lets us
3691         avoid analyzing the vast majority of responses for XSS.  Of course, the
3692         hueristic isn't perfect.  Because of this huerstic, we miss out on
3693         injections into unquoted attributes.  However, it's a trade-off that's
3694         worked well in the XSSAuditor.
3695
3696         * html/parser/XSSFilter.cpp:
3697         (WebCore::HTMLNames::isRequiredForInjection):
3698         (WebCore::XSSFilter::XSSFilter):
3699         (WebCore::XSSFilter::init):
3700         (WebCore::XSSFilter::filterToken):
3701         (WebCore::XSSFilter::isContainedInRequest):
3702         * html/parser/XSSFilter.h:
3703
3704 2011-02-03  Vangelis Kokkevis  <vangelis@chromium.org>
3705
3706         Reviewed by Kenneth Russell.
3707
3708         [chromium] Fixing a compositor crash occurring on layers
3709         without an associated RenderSurface.
3710         https://bugs.webkit.org/show_bug.cgi?id=53679
3711         Regression was introduced by in r77425 
3712
3713         Test: http://webkit.org/blog/386/3d-transforms/ doesn't crash
3714         anymore.
3715
3716         * platform/graphics/chromium/LayerRendererChromium.cpp:
3717         (WebCore::LayerRendererChromium::drawLayer):
3718
3719 2011-02-03  Dan Bernstein  <mitz@apple.com>
3720
3721         Reviewed by Anders Carlsson.
3722
3723         <rdar://problem/8948788> Text emphasis marks have wrong orientation for vertical text
3724         https://bugs.webkit.org/show_bug.cgi?id=53709
3725
3726         Covered by rendering of fast/text/emphasis-vertical.html
3727
3728         * platform/graphics/mac/SimpleFontDataMac.mm:
3729         (WebCore::SimpleFontData::scaledFontData): Give the scaled font the same orientation this font
3730         has.
3731
3732 2011-02-02  Levi Weintraub  <leviw@chromium.org>
3733
3734         Reviewed by Ryosuke Niwa.
3735
3736         Moving cursor down in table cycles at the end of a row
3737         https://bugs.webkit.org/show_bug.cgi?id=50012
3738
3739         Avoids a caret cycling issue with certain content (e.g. tables) found at the very
3740         end of a document due to a bug in nextLeafWithSameEditability.
3741
3742         Test: editing/selection/move-by-line-cycles-in-table.html
3743
3744         * editing/visible_units.cpp:
3745         (WebCore::nextLeafWithSameEditability): Properly avoid descending back into the
3746         original leaf node.
3747
3748 2011-02-03  Pavel Podivilov  <podivilov@chromium.org>
3749
3750         Reviewed by Pavel Feldman.
3751
3752         Web Inspector: remove dead code related to changes panel.
3753         https://bugs.webkit.org/show_bug.cgi?id=53688
3754
3755         * WebCore.gypi:
3756         * WebCore.vcproj/WebCore.vcproj:
3757         * inspector/front-end/ChangesView.js: Removed.
3758         * inspector/front-end/WebKit.qrc:
3759         * inspector/front-end/inspector.css:
3760         (#error-warning-count):
3761         (#error-warning-count:hover):
3762         (#error-count + #warning-count):
3763         * inspector/front-end/inspector.html:
3764         * inspector/front-end/inspector.js:
3765
3766 2011-02-02  Sam Weinig  <sam@webkit.org>
3767
3768         Reviewed by Anders Carlsson.
3769
3770         Add notification of the end of a rubber band.
3771         <rdar://problem/8940648>
3772
3773         * WebCore.exp.in:
3774         Add additional exprots.
3775
3776         * page/ChromeClient.h:
3777         (WebCore::ChromeClient::didCompleteRubberBandForMainFrame):
3778         * page/FrameView.cpp:
3779         (WebCore::FrameView::didCompleteRubberBand):
3780         * page/FrameView.h:
3781         * platform/ScrollView.cpp:
3782         (WebCore::ScrollView::didCompleteRubberBand):
3783         * platform/ScrollView.h:
3784         Add hook.
3785
3786         * platform/ScrollableArea.h:
3787         (WebCore::ScrollableArea::inLiveResize):
3788         (WebCore::ScrollableArea::maximumScrollPosition):
3789         (WebCore::ScrollableArea::visibleWidth):
3790         (WebCore::ScrollableArea::overhangAmount):
3791         (WebCore::ScrollableArea::didCompleteRubberBand):
3792         Reorganize and de-virtualize live resize notifications.
3793
3794         * platform/mac/ScrollAnimatorMac.mm:
3795         (WebCore::ScrollAnimatorMac::snapRubberBandTimerFired):
3796         Call the new hook when the rubberband ends.
3797
3798 2011-02-02  Evan Martin  <evan@chromium.org>
3799
3800         Reviewed by Tony Chang.
3801
3802         [chromium] complex joining characters positioned in wrong place
3803         https://bugs.webkit.org/show_bug.cgi?id=53637
3804
3805         Provide the correct font metrics to Harfbuzz related to the font design space.
3806         There are used in some fonts for GPOS positioning.
3807
3808         Test: platform/chromium-linux/fast/text/international/complex-joining-using-gpos.html
3809
3810         * platform/graphics/chromium/ComplexTextControllerLinux.cpp:
3811         (WebCore::ComplexTextController::setupFontForScriptRun):
3812         (WebCore::ComplexTextController::allocHarfbuzzFont):
3813         * platform/graphics/chromium/FontPlatformDataLinux.cpp:
3814         (WebCore::FontPlatformData::FontPlatformData):
3815         (WebCore::FontPlatformData::emSizeInFontUnits):
3816         (WebCore::FontPlatformData::operator=):
3817         * platform/graphics/chromium/FontPlatformDataLinux.h:
3818         (WebCore::FontPlatformData::FontPlatformData):
3819
3820 2011-02-02  Dimitri Glazkov  <dglazkov@chromium.org>
3821
3822         Reviewed by Kent Tamura.
3823
3824         REGRESSION(r76147): Slider thumb position is not updated when value attribute is changed.
3825         https://bugs.webkit.org/show_bug.cgi?id=53634
3826
3827         Test: fast/dom/HTMLInputElement/input-slider-update.html
3828
3829         * html/HTMLInputElement.cpp:
3830         (WebCore::HTMLInputElement::setValue): Added a call to InputType::valueChanged.
3831         * html/InputType.cpp:
3832         (WebCore::InputType::valueChanged): Added empty implementation.
3833         * html/InputType.h: Added def.
3834         * html/RangeInputType.cpp:
3835         (WebCore::RangeInputType::valueChanged): Added implementation that dirties layout
3836             bit on the thumb.
3837         * html/RangeInputType.h: Added def.
3838
3839 2011-02-02  Pavel Podivilov  <podivilov@chromium.org>
3840
3841         Reviewed by Pavel Feldman.
3842
3843         Web Inspector: do not share source frames between resources panel and scripts panel.
3844         https://bugs.webkit.org/show_bug.cgi?id=53584
3845
3846         Currently, we show error messages only for resources. This change will allow showing error
3847         messages in source frame even when resource is not available (eval scripts, inlined scripts).
3848
3849         * inspector/front-end/ConsoleView.js:
3850         (WebInspector.ConsoleView.prototype.addMessage):
3851         (WebInspector.ConsoleView.prototype.clearMessages):
3852         * inspector/front-end/ResourceView.js:
3853         (WebInspector.ResourceView.recreateResourceView):
3854         * inspector/front-end/ResourcesPanel.js:
3855         (WebInspector.FrameResourceTreeElement.prototype._setBubbleText):
3856         * inspector/front-end/ScriptsPanel.js:
3857         (WebInspector.ScriptsPanel.prototype._scriptSourceChanged):
3858         (WebInspector.ScriptsPanel.prototype.addConsoleMessage):
3859         (WebInspector.ScriptsPanel.prototype.clearConsoleMessages):
3860         (WebInspector.ScriptsPanel.prototype.reset):
3861         (WebInspector.ScriptsPanel.prototype._sourceFrameForScriptOrResource):
3862         (WebInspector.ScriptsPanel.prototype._sourceFrameForResource):
3863         (WebInspector.ScriptsPanel.prototype._sourceFrameForScript):
3864
3865 2011-02-03  Simon Fraser  <simon.fraser@apple.com>
3866
3867         Fix 32-bit builds.
3868
3869         * platform/graphics/ShadowBlur.cpp:
3870         (WebCore::ShadowBlur::blurLayerImage):
3871
3872 2011-02-03  Mikhail Naganov  <mnaganov@chromium.org>
3873
3874         Reviewed by Pavel Feldman.
3875
3876         Web Inspector: Add reporting of JS heap size limit to 'console.memory'.
3877         https://bugs.webkit.org/show_bug.cgi?id=53592
3878
3879         In JSC there is no limit, thus 'undefined' value is returned.
3880         For V8, the limit reported by the VM is returned.
3881
3882         * Android.jscbindings.mk:
3883         * CMakeLists.txt:
3884         * GNUmakefile.am:
3885         * WebCore.gypi:
3886         * WebCore.pro:
3887         * WebCore.vcproj/WebCore.vcproj:
3888         * WebCore.xcodeproj/project.pbxproj:
3889         * bindings/js/JSBindingsAllInOne.cpp:
3890         * bindings/js/JSMemoryInfoCustom.cpp: Added.
3891         * bindings/js/ScriptGCEvent.cpp:
3892         (WebCore::ScriptGCEvent::getHeapSize):
3893         * bindings/js/ScriptGCEvent.h:
3894         * bindings/v8/ScriptGCEvent.cpp:
3895         (WebCore::ScriptGCEvent::getHeapSize):
3896         * bindings/v8/ScriptGCEvent.h:
3897         * inspector/InspectorTimelineAgent.cpp:
3898         (WebCore::InspectorTimelineAgent::setHeapSizeStatistic):
3899         * page/MemoryInfo.cpp:
3900         (WebCore::MemoryInfo::MemoryInfo):
3901         * page/MemoryInfo.h:
3902         (WebCore::MemoryInfo::jsHeapSizeLimit):
3903         * page/MemoryInfo.idl:
3904
3905 2011-01-27  Philippe Normand  <pnormand@igalia.com>
3906
3907         Reviewed by Martin Robinson.
3908
3909         [GTK] LayoutTests/media/audio-mpeg4-supported.html fails
3910         https://bugs.webkit.org/show_bug.cgi?id=53125
3911
3912         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
3913         (WebCore::mimeTypeCache): Add audio/x-m4a mimetype in the cache.
3914
3915 2011-02-03  Simon Fraser  <simon.fraser@apple.com>
3916
3917         Reviewed by Sam Weinig.
3918
3919         ShadowBlur radius for CSS shadows is slightly too big
3920         https://bugs.webkit.org/show_bug.cgi?id=53660
3921         
3922         If we follow SVG gaussian blur for CSS shadows, we can end up rendering
3923         shadows that extend further than the CSS "blur radius", which results
3924         in the shadows being truncated.
3925         
3926         Fix with a small fudge factor to reduce the kernel diameter slightly
3927         for CSS shadows.
3928         
3929         Also more closely follow the algorithm described in the SVG spec
3930         for computing the kernel size for different diameters, and clean up
3931         some variable naming relating to the shadow bounds.
3932
3933         * platform/graphics/ShadowBlur.cpp:
3934         (WebCore::ShadowBlur::blurLayerImage):
3935         (WebCore::ShadowBlur::drawRectShadowWithTiling):
3936
3937 2011-02-01  Pavel Podivilov  <podivilov@chromium.org>
3938
3939         Reviewed by Pavel Feldman.
3940
3941         Web Inspector: introduce new api for managing JavaScript breakpoints.
3942         https://bugs.webkit.org/show_bug.cgi?id=53235
3943
3944         Single protocol breakpoint (e.g. set by url) is mapped on zero or more VM breakpoints (set by sourceID).
3945         removeJavaScriptBreakpoint(breakpointId) removes breakpoint and all linked VM breakpoints.
3946         Since UI uses VM breakpoint location rather then protocol breakpoint location, all resolved breakpoints locations are passed to frontend.
3947
3948         SourceFrame is now aware of whether breakpoint is resolved or not and may display it accordingly.
3949         JavaScriptBreakpointsSidebarPane filters out breakpoints set on nonexistent scripts to avoid UI cluttering.
3950
3951         * bindings/js/ScriptDebugServer.cpp:
3952         (WebCore::ScriptDebugServer::setBreakpoint):
3953         (WebCore::ScriptDebugServer::removeBreakpoint):
3954         * bindings/js/ScriptDebugServer.h:
3955         * bindings/v8/DebuggerScript.js:
3956         ():
3957         * bindings/v8/ScriptDebugServer.cpp:
3958         (WebCore::ScriptDebugServer::setBreakpoint):
3959         * bindings/v8/ScriptDebugServer.h:
3960         * inspector/Inspector.idl:
3961         * inspector/InspectorAgent.cpp: clear breakpoints from inspector state when new frontend is created
3962         (WebCore::InspectorAgent::restoreInspectorStateFromCookie):
3963         (WebCore::InspectorAgent::populateScriptObjects):
3964         (WebCore::InspectorAgent::restoreDebugger):
3965         (WebCore::InspectorAgent::showAndEnableDebugger):
3966         (WebCore::InspectorAgent::enableDebugger):
3967         * inspector/InspectorAgent.h:
3968         * inspector/InspectorDebuggerAgent.cpp: manage relations between protocol breakpoints and VM breakpoints
3969         (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
3970         (WebCore::InspectorDebuggerAgent::inspectedURLChanged):
3971         (WebCore::InspectorDebuggerAgent::setJavaScriptBreakpoint):
3972         (WebCore::InspectorDebuggerAgent::setJavaScriptBreakpointBySourceId):
3973         (WebCore::InspectorDebuggerAgent::removeJavaScriptBreakpoint):
3974         (WebCore::InspectorDebuggerAgent::continueToLocation):
3975         (WebCore::InspectorDebuggerAgent::resolveBreakpoint):
3976         (WebCore::InspectorDebuggerAgent::getScriptSource):
3977         (WebCore::InspectorDebuggerAgent::didParseSource):
3978         (WebCore::InspectorDebuggerAgent::didPause):
3979         * inspector/InspectorDebuggerAgent.h:
3980         (WebCore::InspectorDebuggerAgent::Script::Script):
3981         * inspector/InspectorValues.cpp:
3982         (WebCore::InspectorValue::asNumber):
3983         (WebCore::InspectorBasicValue::asNumber):
3984         (WebCore::InspectorObject::remove):
3985         * inspector/InspectorValues.h:
3986         (WebCore::InspectorObject::getNumber):
3987         (WebCore::InspectorObject::find):
3988         * inspector/ScriptBreakpoint.h:
3989         (WebCore::ScriptBreakpoint::ScriptBreakpoint):
3990         * inspector/front-end/Breakpoint.js:
3991         (WebInspector.Breakpoint):
3992         (WebInspector.Breakpoint.prototype.addLocation):
3993         * inspector/front-end/BreakpointManager.js: remove all stuff related to JavaScript breakpoints from here
3994         (WebInspector.BreakpointManager):
3995         (WebInspector.BreakpointManager.prototype._projectChanged):
3996         (WebInspector.BreakpointManager.prototype._saveBreakpoints):
3997         (WebInspector.BreakpointManager.prototype._validateBreakpoints):
3998         * inspector/front-end/BreakpointsSidebarPane.js:
3999         (WebInspector.JavaScriptBreakpointsSidebarPane): filter breakpoints set on nonexistent scripts to avoid ui cluttering
4000         * inspector/front-end/DebuggerModel.js:
4001         (WebInspector.DebuggerModel): pull all JavaScript from localStorage and push them to fronted when debugger is enabled, save resolved breakpoints data
4002         * inspector/front-end/Script.js:
4003         (WebInspector.Script.prototype.sourceLine):
4004         * inspector/front-end/ScriptsPanel.js:
4005         (WebInspector.ScriptsPanel.prototype._toggleDebugging):
4006         * inspector/front-end/Settings.js:
4007         (WebInspector.Settings):
4008         * inspector/front-end/SourceFrame.js: handle resolved and unresolved breakpoints differently
4009         * inspector/front-end/inspector.js:
4010
4011 2011-02-03  Nikolas Zimmermann  <nzimmermann@rim.com>
4012
4013         Reviewed by Dirk Schulze.
4014
4015         small text which is scaled to be large renders pixelated
4016         https://bugs.webkit.org/show_bug.cgi?id=12448
4017
4018         SVG <text> with font-size smaller or equal to 1 does not paint correctly
4019         https://bugs.webkit.org/show_bug.cgi?id=14242
4020
4021         misplaced text in SVG
4022         https://bugs.webkit.org/show_bug.cgi?id=17053
4023
4024         Don't render very small (but zoomed) text inside SVG
4025         https://bugs.webkit.org/show_bug.cgi?id=19393
4026
4027         Tiny fonts scaled up end up too large in Safari
4028         https://bugs.webkit.org/show_bug.cgi?id=20192
4029
4030         Stretched SVG Text has awful glyph spacing 
4031         https://bugs.webkit.org/show_bug.cgi?id=21774
4032
4033         REGRESSION (r72141?): svg/batik/text/smallFonts.svg failing on Leopard
4034         https://bugs.webkit.org/show_bug.cgi?id=49846
4035
4036         [Gtk] Text height in zoomed SVG is 1px too high
4037         https://bugs.webkit.org/show_bug.cgi?id=50313
4038
4039         SVG text smaller than 0.5px not displayed properly
4040         https://bugs.webkit.org/show_bug.cgi?id=50528
4041
4042         When rendering text, we're selecting a font with a size, as specified in the markup.
4043         This can lead to problems, if the context, where the text is rendered upon, is scaled. If a parent
4044         element of the <text> defines a transform=".." or the outermost <svg> containing a viewBox the
4045         problem becomes apparent.
4046
4047         Consider following two snippets, which should render exactly the same:
4048         <svg viewBox="0 0 100 100"><text x="25" y="50" font-size="25">test</text></svg>
4049         <svg viewBox="0 0 1 1"><text x="0.25" y="0.5" font-size="0.25">test</text></svg>
4050
4051         When selecting a font size below 0.5, FontCacheMac would request a font with size 0,
4052         which AppKit turns into 12. This lead to huge text rendering, instead of small text on Mac.
4053         Other platforms have different problems (Qt simply scales the font, leading to pixelation etc.)
4054
4055         To fix this in a cross-platform fashion, we now always compute the final font size on screen,
4056         remove any scaling from the context, draw the text using the scaled font size, then reapply
4057         the context scale. This makes the example snippets above render exactly the same and fixes
4058         numerous of bugs, present since years. As we're now heavily using floating-point font sizes
4059         internally, depending on the scale of the document, it's very important to use the new
4060         floating-point text metrics information (floatAscent/floatDescent/floatHeight) everywhere in SVG.
4061
4062         Fixes existing tests: css3/zoom-coords.xhtml (cross-platform inconsistencies should be gone, mac now reports floatHeight values for SVG text height)
4063                               svg/hixie/text/003.html (no more pixelation)
4064                               svg/batik/text/smallFonts.svg (small fonts aren't rendered huge anymore on mac)
4065                               svg/hixie/viewbox/preserveAspectRatio/001.xml (bug 21774, no more awful spacing)
4066                               svg/zoom/page/zoom-zoom-coords.xhtml (cross-platform inconsistencies should be gone, inspired by bug 50313)
4067
4068         Tests: svg/text/font-size-below-point-five-2.svg (reduction from bug 50528)
4069                svg/text/font-size-below-point-five.svg (reduction from bug 50528)
4070                svg/text/scaled-font.svg (reduction from bug 12448)
4071                svg/text/small-fonts-2.svg (reduction from bug 14242)
4072                svg/text/small-fonts-3.svg (reduction from bug 17053)
4073                svg/text/small-fonts-in-html5.html (reduction from bug 19393)
4074                svg/text/small-fonts.svg (reduction from bug 20192))
4075
4076         * rendering/svg/RenderSVGInlineText.cpp: Cache 'float scalingFactor' & 'Font scaledFont', whenever the on-screen representation changes.
4077         * rendering/svg/RenderSVGInlineText.h:
4078         * rendering/svg/RenderSVGText.cpp: Update scalingFactor/scaledFont, if necessary.
4079         * rendering/svg/SVGInlineTextBox.cpp: Switch to new font rendering strategy. Always use scaledFont, and remove any context scale before drawing.
4080         * rendering/svg/SVGInlineTextBox.h:
4081         * rendering/svg/SVGTextLayoutEngineBaseline.cpp: Use floating-point metrics everywhere.
4082         * rendering/svg/SVGTextMetrics.cpp: Ditto.
4083         * rendering/svg/SVGTextMetrics.h: Ditto.
4084         * rendering/svg/SVGTextQuery.cpp: Ditto.
4085         * svg/SVGFont.cpp: Adjust stroke thickness, when drawing SVGFonts into a normalized context (no more scale).
4086         * svg/SVGTextContentElement.cpp: Make <text> elements always dependant on window size changes in combination with viewBox set.
4087         * svg/SVGTextPositioningElement.cpp: Remove now unnecessary code to determine wheter relative lengths are used as text attributes.
4088         * svg/SVGTextPositioningElement.h: 
4089
4090 2011-02-03  Pavel Feldman  <pfeldman@chromium.org>
4091
4092         Reviewed by Yury Semikhatsky.
4093
4094         Web Inspector: resources panel doesn't show frames after reload.
4095         https://bugs.webkit.org/show_bug.cgi?id=53430
4096
4097         * inspector/front-end/ResourcesPanel.js:
4098         (WebInspector.ResourcesPanel.prototype.show):
4099         (WebInspector.ResourcesPanel.prototype.loadEventFired):
4100         (WebInspector.ResourcesPanel.prototype._initDefaultSelection):
4101         (WebInspector.ResourcesPanel.prototype.reset):
4102         (WebInspector.ResourcesPanel.prototype.clear):
4103         * inspector/front-end/inspector.js:
4104         (WebInspector.loadEventFired):
4105
4106 2011-02-01  Alexander Pavlov  <apavlov@chromium.org>
4107
4108         Reviewed by Pavel Feldman.
4109
4110         Web Inspector: Remove the *2 suffix from the CSS style-related protocol methods
4111         https://bugs.webkit.org/show_bug.cgi?id=53492
4112
4113         * inspector/Inspector.idl:
4114         * inspector/InspectorCSSAgent.cpp:
4115         (WebCore::InspectorCSSAgent::getStylesForNode):
4116         (WebCore::InspectorCSSAgent::getInlineStyleForNode):
4117         (WebCore::InspectorCSSAgent::getComputedStyleForNode):