2011-02-07 Maciej Stachowiak <mjs@apple.com>
[WebKit.git] / Source / WebCore / ChangeLog
1 2011-02-07  Maciej Stachowiak  <mjs@apple.com>
2
3         Reviewed by Antti Koivisto.
4
5         WebKitTestRunner does not block remote resources or complain about them
6         https://bugs.webkit.org/show_bug.cgi?id=42139
7         <rdar://problem/8183942>
8
9         * Configurations/WebCore.xcconfig: Allow WebKitTestRunner to link
10         WebCore.
11         * WebCore.exp.in: Export a handful of KURL symbols.
12
13 2011-02-06  Ryosuke Niwa  <rniwa@webkit.org>
14
15         Reviewed by Darin Adler.
16
17         OwnArraryPtr.h uses deleteOwnedPtr but doesn’t include OwnPtrCommon.h
18         https://bugs.webkit.org/show_bug.cgi?id=52867
19
20         * ForwardingHeaders/wtf/OwnArrayPtrCommon.h: Removed.
21         * bindings/v8/NPV8Object.cpp:
22         (WebCore::createValueListFromVariantArgs): Returns PassOwnArrayPtr<v8::Handle<v8::Value>> instead of
23         v8::Handle<v8::Value>*.
24         (_NPN_Invoke): Calls createValueListFromVariantArgs.
25         (_NPN_InvokeDefault): createValueListFromVariantArgs.
26         (_NPN_Construct): createValueListFromVariantArgs.
27         * bindings/v8/ScriptFunctionCall.cpp:
28         (WebCore::ScriptFunctionCall::call): Calls adoptArrayPtr.
29         (WebCore::ScriptFunctionCall::construct): Ditto.
30         (WebCore::ScriptCallback::call):
31         * bindings/v8/V8DOMWindowShell.cpp:
32         (WebCore::V8DOMWindowShell::createNewContext): Ditto.
33         * bindings/v8/V8NPObject.cpp:
34         (WebCore::npObjectInvokeImpl): Ditto
35         * bindings/v8/V8NodeFilterCondition.cpp:
36         (WebCore::V8NodeFilterCondition::acceptNode): Ditto,
37         * html/HTMLAreaElement.cpp:
38         (WebCore::HTMLAreaElement::parseMappedAttribute): Calls newCoordsArray.
39         * html/HTMLFrameSetElement.cpp:
40         (WebCore::HTMLFrameSetElement::parseMappedAttribute): Calls newLengthArray.
41         * html/canvas/WebGLRenderingContext.cpp:
42         (WebCore::WebGLRenderingContext::getAttachedShaders): Calls adoptArraYptr.
43         (WebCore::WebGLRenderingContext::simulateVertexAttrib0): Ditto.
44         (WebCore::WebGLRenderingContext::LRUImageBufferCache::LRUImageBufferCache): Dito.
45         * platform/Length.cpp:
46         (WebCore::newCoordsArray): Returns PassOwnArrayPtr<Length> instead of Length*.
47         (WebCore::newLengthArray): Returns PassOwnArrayPtr<Length> instead of Length*.
48         * platform/Length.h: Prototype changes.
49         * platform/graphics/ANGLEWebKitBridge.cpp:
50         (WebCore::ANGLEWebKitBridge::validateShaderSource): Calls adoptArrayPtr.
51         * platform/graphics/ca/win/CACFLayerTreeHost.cpp:
52         (WebCore::getDirtyRects): Ditto.
53         * platform/graphics/chromium/ComplexTextControllerLinux.cpp:
54         (WebCore::ComplexTextController::getNormalizedTextRun): Ditto.
55         * platform/graphics/chromium/HarfbuzzSkia.cpp:
56         (WebCore::glyphsToAdvances): Ditto.
57         (WebCore::canRender): Ditto.
58         * platform/graphics/gpu/Texture.cpp:
59         (WebCore::Texture::updateSubRect): Ditto.
60         * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
61         (WebCore::GraphicsContext3D::paintRenderingResultsToCanvas): Ditto.
62         * platform/graphics/skia/PlatformContextSkia.cpp:
63         (WebCore::PlatformContextSkia::readbackHardwareToSoftware): Ditto.
64         * platform/graphics/wince/SharedBitmap.cpp:
65         (WebCore::SharedBitmap::to16bit): Ditto.
66         * platform/win/ContextMenuWin.cpp:
67         (WebCore::ContextMenu::getContextMenuItems): Ditto.
68         * platform/win/LoggingWin.cpp:
69         (WebCore::initializeWithUserDefault): Ditto.
70         * plugins/win/PluginPackageWin.cpp:
71         (WebCore::PluginPackage::fetchInfo): Ditto.
72
73 2011-02-06  Kent Tamura  <tkent@chromium.org>
74
75         Unreviewed.
76
77         * WebCore.xcodeproj/project.pbxproj: Run sort-xcode-project-file.
78
79 2011-02-03  Dominic Cooney  <dominicc@google.com>
80
81         Reviewed by Dimitri Glazkov.
82
83         Convert <keygen> option elements to a shadow DOM
84         https://bugs.webkit.org/show_bug.cgi?id=51379
85
86         Covered by existing tests e.g. fast/html/keygen.html,
87         html5lib/runner.html, etc.
88
89         * css/html.css:
90         (form): Cleanup.
91         (keygen, select): Border radii should match so focus ring looks good.
92         (keygen::-webkit-keygen-select): No margin on the shadow element.
93         (select): Hoisting border radius to keygen, select rule.
94         * dom/SelectElement.cpp:
95         (WebCore::toSelectElement): keygen is no longer a select element.
96         * html/HTMLKeygenElement.cpp: Implements keygen shadow.
97         (WebCore::KeygenSelectElement::create):
98         (WebCore::KeygenSelectElement::shadowPseudoId):
99         (WebCore::KeygenSelectElement::KeygenSelectElement):
100         (WebCore::HTMLKeygenElement::HTMLKeygenElement):
101         (WebCore::HTMLKeygenElement::parseMappedAttribute):
102         (WebCore::HTMLKeygenElement::appendFormData):
103         (WebCore::HTMLKeygenElement::formControlType):
104         (WebCore::HTMLKeygenElement::reset):
105         (WebCore::HTMLKeygenElement::selectShadow):
106         * html/HTMLKeygenElement.h: keygen is no longer a select on C++ side.
107         (WebCore::HTMLKeygenElement::canStartSelection):
108         (WebCore::HTMLKeygenElement::isEnumeratable):
109         (WebCore::HTMLKeygenElement::isResettable):
110         * html/HTMLOptionElement.cpp:
111         (WebCore::HTMLOptionElement::ownerSelectElement): Only owned by selects.
112         * html/HTMLSelectElement.cpp:
113         (WebCore::HTMLSelectElement::HTMLSelectElement): Only 'select' tag name.
114
115 2011-02-06  Benjamin Poulain  <ikipou@gmail.com>
116
117         Reviewed by Kenneth Rohde Christiansen.
118
119         [Qt] Fix coding style errors in ClipboardQt.h
120         https://bugs.webkit.org/show_bug.cgi?id=43520
121
122         Fix coding style: order of header and indentation.
123
124         * platform/qt/ClipboardQt.h:
125         (WebCore::ClipboardQt::create):
126         (WebCore::ClipboardQt::clipboardData):
127         (WebCore::ClipboardQt::invalidateWritableData):
128
129 2011-02-06  Antti Koivisto  <antti@apple.com>
130
131         Reviewed by Maciej Stachowiak.
132
133         Use bloom filter for descendant selector filtering
134         https://bugs.webkit.org/show_bug.cgi?id=53880
135         
136         Bloom filter is faster than a hash set in this kind of use.
137         
138         Shark thinks this speeds up style matching by ~30% on sites
139         with lots of descendant selectors.
140
141         * ForwardingHeaders/wtf/BloomFilter.h: Added.
142         * css/CSSStyleSelector.cpp:
143         (WebCore::collectElementIdentifierHashes):
144         (WebCore::CSSStyleSelector::pushParent):
145         (WebCore::CSSStyleSelector::popParent):
146         (WebCore::CSSStyleSelector::fastRejectSelector):
147         (WebCore::RuleData::collectDescendantSelectorIdentifierHashes):
148         * css/CSSStyleSelector.h:
149
150 2011-02-06  Maciej Stachowiak  <mjs@apple.com>
151
152         Reviewed by Antti Koivisto.
153
154         media/video-document-types.html sometimes crashes the WebProcess
155         https://bugs.webkit.org/show_bug.cgi?id=53884
156
157         No new tests. Already covered by media/video-document-types.html
158
159         * html/HTMLMediaElement.cpp:
160         (WebCore::HTMLMediaElement::userCancelledLoad): Stop the load timer
161         when cancelling the load.
162
163 2011-02-06  Patrick Gansterer  <paroga@webkit.org>
164
165         Reviewed by Adam Roben.
166
167         [WIN] Use WCHAR instead of TCHAR
168         https://bugs.webkit.org/show_bug.cgi?id=53863
169
170         We always use the UNICODE versions of windows functions, so
171         the usage of TCHAR makes no sense and mixing them is bad style.
172
173         * platform/graphics/win/IconWin.cpp:
174         (WebCore::Icon::createIconForFiles):
175         * platform/graphics/win/QTMovie.cpp:
176         * platform/graphics/win/QTMovieGWorld.cpp:
177         (QTMovieGWorld::fullscreenWndProc):
178         (QTMovieGWorld::enterFullscreen):
179         * platform/graphics/win/SimpleFontDataCGWin.cpp:
180         (WebCore::SimpleFontData::platformInit):
181         * platform/graphics/win/SimpleFontDataCairoWin.cpp:
182         * platform/graphics/win/SimpleFontDataWin.cpp:
183         * platform/graphics/wince/SimpleFontDataWinCE.cpp:
184         * platform/win/BString.cpp:
185         * platform/win/ClipboardWin.cpp:
186         (WebCore::filesystemPathFromUrlOrTitle):
187         (WebCore::createGlobalHDropContent):
188         (WebCore::createGlobalImageFileDescriptor):
189         * platform/win/ContextMenuWin.cpp:
190         * platform/win/CursorWin.cpp:
191         (WebCore::loadSharedCursor):
192         * platform/win/FileChooserWin.cpp:
193         (WebCore::FileChooser::basenameForWidth):
194         * platform/win/PopupMenuWin.cpp:
195         (WebCore::PopupMenuWin::popupClassName):
196         (WebCore::PopupMenuWin::show):
197         * platform/win/PopupMenuWin.h:
198
199 2011-02-06  Patrick Gansterer  <paroga@webkit.org>
200
201         Reviewed by Andreas Kling.
202
203         Replace FLT_MAX with std::numeric_limits
204         https://bugs.webkit.org/show_bug.cgi?id=53861
205
206         Also move EFL's userIdleTime from TemporaryLinkStubs into SystemTimeEfl.
207
208         * html/NumberInputType.cpp:
209         * html/parser/HTMLParserIdioms.cpp:
210         (WebCore::parseToDoubleForNumberType):
211         * platform/brew/SystemTimeBrew.cpp:
212         (WebCore::userIdleTime):
213         * platform/efl/SystemTimeEfl.cpp:
214         (WebCore::userIdleTime):
215         * platform/efl/TemporaryLinkStubs.cpp:
216         * platform/graphics/ca/GraphicsLayerCA.cpp:
217         (WebCore::GraphicsLayerCA::setupAnimation):
218         * platform/win/SystemTimeWin.cpp:
219         (WebCore::userIdleTime):
220         * platform/wx/SystemTimeWx.cpp:
221         (WebCore::userIdleTime):
222
223 2011-02-06  Patrick Gansterer  <paroga@webkit.org>
224
225         Reviewed by Andreas Kling.
226
227         [CMake] Add dependencies for Visual Studio projects
228         https://bugs.webkit.org/show_bug.cgi?id=53773
229
230         Add a JavaScriptCore dependecy to WebCore, so CMake can 
231         generate the correct build order for the solution.
232
233         * CMakeLists.txt:
234
235 2011-02-06  Patrick Gansterer  <paroga@webkit.org>
236
237         Reviewed by Andreas Kling.
238
239         [CMake] Unify ENABLE_SVG sections
240         https://bugs.webkit.org/show_bug.cgi?id=53778
241
242         * CMakeLists.txt:
243
244 2011-02-06  Andreas Kling  <kling@webkit.org>
245
246         Reviewed by Dirk Schulze.
247
248         Refactor Font::normalizeSpaces() to avoid an extra String copy.
249         https://bugs.webkit.org/show_bug.cgi?id=53871
250
251         Have normalizeSpaces() take UChar*,length arguments instead of a
252         String, since all call sites were creating temporaries from these
253         components anyway.
254
255         Font::normalizeSpaces() now always makes 1 String copy,
256         instead of 1 in the best case and 2 in the worst case.
257
258         * platform/graphics/Font.cpp:
259         (WebCore::Font::normalizeSpaces):
260         * platform/graphics/Font.h:
261         * platform/graphics/qt/FontQt.cpp:
262         (WebCore::drawTextCommon):
263         (WebCore::Font::floatWidthForSimpleText):
264         (WebCore::Font::floatWidthForComplexText):
265         (WebCore::Font::offsetForPositionForSimpleText):
266         (WebCore::Font::offsetForPositionForComplexText):
267         (WebCore::Font::selectionRectForSimpleText):
268         (WebCore::Font::selectionRectForComplexText):
269         * svg/SVGFont.cpp:
270         (WebCore::SVGTextRunWalker::walk):
271
272 2011-02-06  Andreas Kling  <kling@webkit.org>
273
274         Reviewed by Dirk Schulze.
275
276         Fix potential buffer overrun in SVGTextRunWalker::walk()
277         https://bugs.webkit.org/show_bug.cgi?id=53870
278
279         A new String was created from a UChar* with a 'length' argument
280         that could be greater than the number of UChars available.
281
282         * svg/SVGFont.cpp:
283         (WebCore::SVGTextRunWalker::walk):
284
285 2011-02-05  Adam Barth  <abarth@webkit.org>
286
287         Reviewed by Eric Seidel.
288
289         Remove unused parameter related to XSSAuditor
290         https://bugs.webkit.org/show_bug.cgi?id=53862
291
292         * WebCore.exp.in:
293         * bindings/ScriptControllerBase.cpp:
294         (WebCore::ScriptController::executeScript):
295         (WebCore::ScriptController::executeIfJavaScriptURL):
296         * bindings/ScriptControllerBase.h:
297         * bindings/js/ScriptController.cpp:
298         (WebCore::ScriptController::evaluateInWorld):
299         (WebCore::ScriptController::evaluate):
300         (WebCore::ScriptController::executeScriptInWorld):
301         * bindings/js/ScriptController.h:
302         * bindings/v8/ScriptController.cpp:
303         (WebCore::ScriptController::evaluate):
304         * bindings/v8/ScriptController.h:
305
306 2011-02-05  Adam Barth  <abarth@webkit.org>
307
308         Fix Qt build.
309
310         * WebCore.pro:
311
312 2011-02-05  Adam Barth  <abarth@webkit.org>
313
314         Reviewed by Eric Seidel.
315
316         Delete XSSAuditor
317         https://bugs.webkit.org/show_bug.cgi?id=53859
318
319         The job of the XSSAuditor is now done by the XSSFilter.  In the future,
320         we might rename XSSFilter to XSSAuditor.
321
322         * Android.mk:
323         * CMakeLists.txt:
324         * GNUmakefile.am:
325         * WebCore.gypi:
326         * WebCore.vcproj/WebCore.vcproj:
327         * WebCore.xcodeproj/project.pbxproj:
328         * bindings/ScriptControllerBase.cpp:
329         (WebCore::ScriptController::executeIfJavaScriptURL):
330         * bindings/ScriptControllerBase.h:
331         * bindings/js/ScriptController.cpp:
332         (WebCore::ScriptController::ScriptController):
333         (WebCore::ScriptController::evaluateInWorld):
334         * bindings/js/ScriptController.h:
335         * bindings/js/ScriptEventListener.cpp:
336         (WebCore::createAttributeEventListener):
337         * bindings/v8/ScriptController.cpp:
338         (WebCore::ScriptController::ScriptController):
339         (WebCore::ScriptController::evaluate):
340         * bindings/v8/ScriptController.h:
341         * bindings/v8/ScriptEventListener.cpp:
342         (WebCore::createAttributeEventListener):
343         * dom/Document.cpp:
344         (WebCore::Document::implicitOpen):
345         (WebCore::Document::processBaseElement):
346         * dom/ScriptableDocumentParser.cpp:
347         (WebCore::ScriptableDocumentParser::ScriptableDocumentParser):
348         * dom/ScriptableDocumentParser.h:
349         * html/parser/HTMLDocumentParser.cpp:
350         (WebCore::HTMLDocumentParser::shouldLoadExternalScriptFromSrc):
351         * loader/SubframeLoader.cpp:
352         (WebCore::SubframeLoader::requestObject):
353         (WebCore::SubframeLoader::loadMediaPlayerProxyPlugin):
354         * page/XSSAuditor.cpp: Removed.
355         * page/XSSAuditor.h: Removed.
356
357 2011-02-05  Anders Carlsson  <andersca@apple.com>
358
359         Reviewed by Darin Adler.
360
361         Need a way to resize and scroll the page at the same time
362         https://bugs.webkit.org/show_bug.cgi?id=53814
363         <rdar://problem/8498008>
364
365         Export a function needed by WebKit2.
366
367         * WebCore.exp.in:
368
369 2011-02-05  Patrick Gansterer  <paroga@webkit.org>
370
371         Reviewed by Alexey Proskuryakov.
372
373         Use Document::encoding() instead of DocumentWriter::encoding()
374         https://bugs.webkit.org/show_bug.cgi?id=53398
375
376         This change makes the code more readable, when a subresource
377         inherits the character encoding of the document.
378
379         * dom/ProcessingInstruction.cpp:
380         (WebCore::ProcessingInstruction::checkStyleSheet):
381         * dom/ScriptElement.cpp:
382         (WebCore::ScriptElement::scriptCharset):
383         * html/HTMLLinkElement.cpp:
384         (WebCore::HTMLLinkElement::process):
385         * loader/cache/CachedResourceLoader.cpp:
386         (WebCore::CachedResourceLoader::requestPreload):
387         * platform/network/FormDataBuilder.cpp:
388         (WebCore::FormDataBuilder::encodingFromAcceptCharset):
389
390 2011-02-05  Adam Barth  <abarth@webkit.org>
391
392         Reviewed by Eric Seidel.
393
394         Introduce URLString to represent a canonicalized URL represented by a string
395         https://bugs.webkit.org/show_bug.cgi?id=53847
396
397         Instead of using String all over the codebase to represent a URL,
398         instead we should have a type to represent a canonicalized URL in the
399         form of a string.  This patch introduces that type.
400
401         * GNUmakefile.am:
402         * WebCore.gypi:
403         * WebCore.xcodeproj/project.pbxproj:
404         * platform/KURL.cpp:
405         (WebCore::KURL::KURL):
406         * platform/KURL.h:
407         (WebCore::KURL::urlString):
408
409 2011-02-05  Robert Hogan  <robert@webkit.org>
410
411         Reviewed by Antonio Gomes.
412
413         [Qt] Style widgets not rendering
414         https://bugs.webkit.org/show_bug.cgi?id=53849
415
416         * html/HTMLObjectElement.cpp:
417         (WebCore::HTMLObjectElement::hasValidClassId): x-qt-styled-widget is a valid class id too
418
419 2011-02-05  Jochen Eisinger  <jochen@chromium.org>
420
421         Reviewed by Adam Barth.
422
423         Add ContentSecurityPolicy object to Document and pass the X-WebKit-CSP header from the MainResourceLoader.
424         https://bugs.webkit.org/show_bug.cgi?id=53685
425
426         * WebCore.xcodeproj/project.pbxproj:
427         * dom/Document.h:
428         (WebCore::Document::contentSecurityPolicy):
429         * loader/MainResourceLoader.cpp:
430         (WebCore::MainResourceLoader::didReceiveResponse):
431         * page/ContentSecurityPolicy.cpp:
432         (WebCore::ContentSecurityPolicy::didReceiveHeader):
433         * page/ContentSecurityPolicy.h:
434
435 2011-02-05  Eric Seidel  <eric@webkit.org>
436
437         Reviewed by Adam Barth.
438
439         Safari should lowercase schemes in cannonicalized urls to match every other browser
440         https://bugs.webkit.org/show_bug.cgi?id=53848
441
442         We're clearly the odd man out here.  See results from every browser at:
443         https://github.com/abarth/url-spec/blob/master/tests/gurl-results/by-browser.txt
444
445         * platform/KURL.cpp:
446         (WebCore::KURL::parse):
447          - Just lowercase the scheme when copying.
448
449 2011-02-05  Antti Koivisto  <antti@apple.com>
450
451         Reviewed by Dave Hyatt.
452
453         Optimize matching of descendant selectors
454         https://bugs.webkit.org/show_bug.cgi?id=49876
455         <rdar://problem/8772822>
456         
457         During style recalculation, maintain a filter of tags, ids and classes seen in ancestor elements.
458         Use the filter to quickly reject descendant and child selectors when doing style matching.
459
460         This speeds up style recalculations 3-6x on many major web sites.
461
462         * css/CSSStyleSelector.cpp:
463         (WebCore::RuleData::RuleData):
464         (WebCore::RuleData::descendantSelectorIdentifierHashes):
465         (WebCore::collectElementIdentifiers):
466         (WebCore::CSSStyleSelector::pushParent):
467         (WebCore::CSSStyleSelector::popParent):
468         (WebCore::CSSStyleSelector::fastRejectSelector):
469         (WebCore::CSSStyleSelector::matchRulesForList):
470         (WebCore::RuleData::collectDescendantSelectorIdentifierHashes):
471         * css/CSSStyleSelector.h:
472         (WebCore::CSSStyleSelector::ParentStackFrame::ParentStackFrame):
473         * dom/Element.cpp:
474         (WebCore::StyleSelectorParentPusher::StyleSelectorParentPusher):
475         (WebCore::StyleSelectorParentPusher::push):
476         (WebCore::StyleSelectorParentPusher::~StyleSelectorParentPusher):
477         (WebCore::Element::attach):
478         (WebCore::Element::recalcStyle):
479
480 2011-02-05  Nate Chapin  <japhet@chromium.org>
481
482         Reviewed by Adam Barth.
483
484         Refactor: NotificationCenter shouldn't hold its own copy of the ScriptExecutionContext*
485         when it inherits one from ActiveDOMObject.
486         https://bugs.webkit.org/show_bug.cgi?id=53815
487
488         * bindings/js/JSDesktopNotificationsCustom.cpp:
489         (WebCore::JSNotificationCenter::requestPermission):
490         * bindings/v8/custom/V8NotificationCenterCustom.cpp:
491         (WebCore::V8NotificationCenter::requestPermissionCallback):
492         * notifications/NotificationCenter.cpp:
493         (WebCore::NotificationCenter::NotificationCenter):
494         (WebCore::NotificationCenter::checkPermission):
495         (WebCore::NotificationCenter::requestPermission):
496         (WebCore::NotificationCenter::disconnectFrame):
497         * notifications/NotificationCenter.h:
498         (WebCore::NotificationCenter::createHTMLNotification):
499         (WebCore::NotificationCenter::createNotification):
500
501 2011-02-04  Adam Barth  <abarth@webkit.org>
502
503         Reviewed by Maciej Stachowiak.
504
505         Crash in WebCore::TextEncoding::decode below XSSFilter::init
506         https://bugs.webkit.org/show_bug.cgi?id=53837
507
508         Add missing null check.
509
510         Test: http/tests/security/xssAuditor/non-block-javascript-url-frame.html
511
512         * html/parser/XSSFilter.cpp:
513         (WebCore::XSSFilter::init):
514
515 2011-02-04  Simon Fraser  <simon.fraser@apple.com>
516
517         Reviewed by Dan Bernstein.
518
519         Crashes in ShadowBlur via WebKit2 FindController
520         https://bugs.webkit.org/show_bug.cgi?id=53830
521         
522         Fix a crash cause by re-entering ShadowBlur, and add assertions to
523         detect when it happens.
524         
525         The re-entrancy occurred when drawRectShadowWithTiling() filled
526         the interior of the shadow with fillRect() on the context
527         which still had the shadow state set. This would make another ShadowBlur
528         on the stack and call into the code again, potentially blowing away
529         the image buffer.
530         
531         Fix by turning off shadows in the destination context while we're
532         drawing the tiled shadow. The non-tiled code path already did this.
533
534         Not testable because CSS shadows clip out the inside of the rect
535         being shadowed, and SVG uses fillPath, even for rects.
536
537         * platform/graphics/ShadowBlur.cpp:
538         (WebCore::ScratchBuffer::ScratchBuffer):
539         (WebCore::ScratchBuffer::getScratchBuffer):
540         (WebCore::ScratchBuffer::scheduleScratchBufferPurge):
541         (WebCore::ShadowBlur::ShadowBlur):
542         (WebCore::ShadowBlur::drawRectShadowWithTiling):
543
544 2011-02-04  Carlos Garcia Campos  <cgarcia@igalia.com>
545
546         Reviewed by Martin Robinson.
547
548         [GTK] Don't use a fixed size for search field icons
549         https://bugs.webkit.org/show_bug.cgi?id=50624
550
551         Use the parent input content box to make sure the icon fits in the
552         search field, scaling it down when needed.
553
554         * platform/gtk/RenderThemeGtk.cpp:
555         (WebCore::paintGdkPixbuf):
556         (WebCore::getIconSizeForPixelSize):
557         (WebCore::adjustSearchFieldIconStyle):
558         (WebCore::RenderThemeGtk::adjustSearchFieldResultsDecorationStyle):
559         (WebCore::centerRectVerticallyInParentInputElement):
560         (WebCore::RenderThemeGtk::paintSearchFieldResultsDecoration):
561         (WebCore::RenderThemeGtk::adjustSearchFieldCancelButtonStyle):
562         (WebCore::RenderThemeGtk::paintSearchFieldCancelButton):
563         (WebCore::RenderThemeGtk::paintCapsLockIndicator):
564         (WebCore::RenderThemeGtk::paintMediaButton):
565
566 2011-02-04  Hironori Bono  <hbono@chromium.org>
567
568         Reviewed by Adam Barth.
569
570         [chromium] JPEG corruption
571         https://bugs.webkit.org/show_bug.cgi?id=53250
572
573         Same as gray-scale JPEGs, we convert the colors of CMYK JPEGs with color
574         profiles from CMYK to RGB twice and it causes color corruption. This
575         change suppresses the color profiles for CMYK JPEGs same as gray-scale
576         ones.
577
578         Test: fast/images/cmyk-jpeg-with-color-profile.html
579
580         * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
581         (WebCore::JPEGImageReader::decode):
582
583 2011-02-04  Xiyuan Xia  <xiyuan@chromium.org>
584
585         Reviewed by Tony Chang.
586
587         [Chromium] Option text in select popup does not align with menulist button text
588         https://bugs.webkit.org/show_bug.cgi?id=53632
589
590         This makes clientPaddingLeft and  clientPaddingRight return
591         the additional m_innerBlock's padding so that the popup item text
592         aligns with the menulist button text.
593
594         * rendering/RenderMenuList.cpp:
595         (WebCore::RenderMenuList::clientPaddingLeft):
596         (WebCore::RenderMenuList::clientPaddingRight):
597
598 2011-02-04  Anders Carlsson  <andersca@apple.com>
599
600         Reviewed by Sam Weinig and Beth Dakin.
601
602         REGRESSION: Horizontal scrollbar thumbs leave artifacts over page content when scrolling vertically
603         <rdar://problem/8962457>
604
605         * platform/ScrollView.cpp:
606         (WebCore::ScrollView::scrollContents):
607         Subtract scrollbars from the scroll view rect if overlay scrollers are enabled.
608         
609         * platform/ScrollableArea.cpp:
610         (WebCore::ScrollableArea::setScrollOffsetFromAnimation):
611         Make sure to invalidate both scrollbars if overlay scrollers are enabled.
612
613 2011-02-04  Adam Barth  <abarth@webkit.org>
614
615         Reviewed by Eric Seidel.
616
617         PluginDocuments don't create widgets for plugins on back/forward
618         https://bugs.webkit.org/show_bug.cgi?id=53474
619
620         Long ago, PluginDocument always caused the HTMLEmbedElement to create
621         its widget synchronously during a post-layout task.  Recently, however,
622         some changes to the HistroyController caused layout on back/forward to
623         become slightly more complicated (and added an extra level of recursion
624         to layout).  This extra level of recursion triggered the "I've recursed
625         too many times" condition in the post-layout task queue, causing the
626         FrameView to run the remainder of the tasks asynchronously.
627         Unfortunately, that broke PluginDocument because it needs its the
628         HTMLEmbedElement's updateWidget task to run synchronously.
629
630         This patch adds a mechanism for "kicking off" the pending post-layout
631         tasks synchronously (instead of waiting for the timer to fire).
632         PluginDocument then uses that facility to ensure that the
633         HTMLEmbedElement's updateWidget task happens.
634
635         Test: plugins/plugin-document-back-forward.html
636
637         * html/PluginDocument.cpp:
638         (WebCore::PluginDocumentParser::appendBytes):
639         * page/FrameView.cpp:
640         (WebCore::FrameView::flushAnyPendingPostLayoutTasks):
641         * page/FrameView.h:
642
643 2011-02-04  Charlie Reis  <creis@chromium.org>
644
645         Reviewed by Mihai Parparita.
646
647         Crash in WebCore::HistoryController::itemsAreClones
648         https://bugs.webkit.org/show_bug.cgi?id=52819
649
650         Avoids deleting the current HistoryItem while it is still in use.
651         Ensures that provisional items are committed for same document navigations.
652         Ensures that error pages are committed on back/forward navigations.
653         Also removes unneeded sanity checks used for diagnosing the problem.
654
655         * loader/HistoryController.cpp:
656         * loader/HistoryController.h:
657
658 2011-02-04  Carol Szabo  <carol.szabo@nokia.com>
659
660         Reviewed by David Hyatt.
661
662         Code Changes.
663
664         CSS 2.1 failure: content-*
665         https://bugs.webkit.org/show_bug.cgi?id=52126
666
667         Test: fast/css/counters/content-021.html
668
669         * rendering/CounterNode.cpp:
670         (showCounterTree):
671         Made parameter const because it is supposed to be so.
672         * rendering/RenderCounter.cpp:
673         (WebCore::previousInPreOrder):
674         (WebCore::previousSiblingOrParent):
675         (WebCore::parentElement):
676         (WebCore::areRenderersElementsSiblings):
677         (WebCore::nextInPreOrder):
678         Added these local helper functions to help navigate the DOM tree
679         enriched with :before and :after pseudo elements.
680         (WebCore::planCounter):
681         Fixed bug that would create a repeat counter for second and
682         subsequent renderers associated with the same DOM element.
683         (WebCore::findPlaceForCounter):
684         (WebCore::makeCounterNode):
685         Changed to use the new tree navigation functions described above
686         instead of the Renderer Tree navigation functions.
687         (WebCore::RenderCounter::rendererSubtreeAttached):
688         (WebCore::RenderCounter::rendererStyleChanged):
689         Optimized to not bother about counters until the renderers are
690         finally attached.
691         (showRendererTree):
692         (showNodeTree):
693         Debug helper functions used to debug Counter bugs.
694
695 2011-02-04  Dan Bernstein  <mitz@apple.com>
696
697         Typo fix.
698
699         * html/parser/XSSFilter.cpp:
700         (WebCore::HTMLNames::containsJavaScriptURL):
701
702 2011-02-04  Dan Bernstein  <mitz@apple.com>
703
704         Reviewed by Anders Carlsson.
705
706         Make an infinite loop introduced in r77454 finite.
707
708         * html/parser/XSSFilter.cpp:
709         (WebCore::HTMLNames::containsJavaScriptURL):
710
711 2011-02-04  Jer Noble  <jer.noble@apple.com>
712
713         Reviewed by Eric Carlson.
714
715         Frame accurate seeking isn't always accurate
716         https://bugs.webkit.org/show_bug.cgi?id=52697
717
718         Test: media/video-frame-accurate-seek.html
719
720         Make seeking slightly more accurate by rounding instead of truncating
721         when converting from seconds-in-float to time/timeScale.
722
723         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
724         (WebCore::MediaPlayerPrivateQTKit::createQTTime):
725         * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
726         (WebCore::MediaPlayerPrivateQuickTimeVisualContext::mediaTimeForTimeValue):
727         * platform/graphics/win/QTMovie.cpp:
728         (QTMovie::setCurrentTime):
729
730 2011-02-04  Jeremy Orlow  <jorlow@chromium.org>
731
732         Reviewed by Nate Chapin.
733
734         Second IndexedDB events overhaul patch
735         https://bugs.webkit.org/show_bug.cgi?id=53813
736
737         If an IDBRequest has a IDBTransaction, it should propogate
738         events through it. In order to do this, IDBRequest needs to
739         hold a transaction frontend object rather than a backend one.
740
741         Test: storage/indexeddb/request-event-propagation.html
742
743         * storage/IDBCursor.cpp:
744         (WebCore::IDBCursor::IDBCursor):
745         * storage/IDBCursor.h:
746         (WebCore::IDBCursor::create):
747         * storage/IDBDatabase.cpp:
748         (WebCore::IDBDatabase::setSetVersionTransaction):
749         (WebCore::IDBDatabase::createObjectStore):
750         (WebCore::IDBDatabase::deleteObjectStore):
751         * storage/IDBDatabase.h:
752         * storage/IDBIndex.cpp:
753         (WebCore::IDBIndex::IDBIndex):
754         (WebCore::IDBIndex::openCursor):
755         (WebCore::IDBIndex::openKeyCursor):
756         (WebCore::IDBIndex::get):
757         (WebCore::IDBIndex::getKey):
758         * storage/IDBIndex.h:
759         (WebCore::IDBIndex::create):
760         * storage/IDBObjectStore.cpp:
761         (WebCore::IDBObjectStore::IDBObjectStore):
762         (WebCore::IDBObjectStore::get):
763         (WebCore::IDBObjectStore::add):
764         (WebCore::IDBObjectStore::put):
765         (WebCore::IDBObjectStore::deleteFunction):
766         (WebCore::IDBObjectStore::createIndex):
767         (WebCore::IDBObjectStore::deleteIndex):
768         (WebCore::IDBObjectStore::openCursor):
769         * storage/IDBObjectStore.h:
770         (WebCore::IDBObjectStore::create):
771         * storage/IDBRequest.cpp:
772         (WebCore::IDBRequest::create):
773         (WebCore::IDBRequest::IDBRequest):
774         (WebCore::IDBRequest::resetReadyState):
775         (WebCore::IDBRequest::onSuccess):
776         (WebCore::IDBRequest::dispatchEvent):
777         * storage/IDBRequest.h:
778         * storage/IDBTransaction.cpp:
779         (WebCore::IDBTransaction::IDBTransaction):
780         (WebCore::IDBTransaction::objectStore):
781         (WebCore::IDBTransaction::contextDestroyed):
782         (WebCore::IDBTransaction::enqueueEvent):
783         * storage/IDBTransaction.h:
784         * storage/IDBTransaction.idl:
785
786 2011-02-04  Jeremy Orlow  <jorlow@chromium.org>
787
788         Reviewed by Nate Chapin.
789
790         First step towards event propogation within IndexedDB
791         https://bugs.webkit.org/show_bug.cgi?id=53795
792
793         This is the first step towards implementing
794         http://www.w3.org/Bugs/Public/show_bug.cgi?id=11348
795         within IndexedDB. I've created a method that knows how
796         to capture and bubble (based on Node's dispatchGenericEvent).
797         I've then changed IDBRequest to use it.
798
799         The only functional change is that preventDefault now must
800         be called in error events to prevent the transaction from
801         being aborted. The tests reflect this change and there's one
802         specific test to look at this behavior.
803
804         Test: storage/indexeddb/error-causes-abort-by-default.html
805
806         * storage/IDBAbortEvent.cpp:
807         (WebCore::IDBAbortEvent::create):
808         (WebCore::IDBAbortEvent::IDBAbortEvent):
809         * storage/IDBAbortEvent.h:
810         * storage/IDBCompleteEvent.cpp:
811         (WebCore::IDBCompleteEvent::create):
812         (WebCore::IDBCompleteEvent::IDBCompleteEvent):
813         * storage/IDBCompleteEvent.h:
814         * storage/IDBErrorEvent.cpp:
815         (WebCore::IDBErrorEvent::IDBErrorEvent):
816         * storage/IDBEvent.cpp:
817         (WebCore::IDBEvent::IDBEvent):
818         (WebCore::IDBEvent::dispatch):
819         * storage/IDBEvent.h:
820         * storage/IDBRequest.cpp:
821         (WebCore::IDBRequest::dispatchEvent):
822         * storage/IDBRequest.h:
823         * storage/IDBSuccessEvent.cpp:
824         (WebCore::IDBSuccessEvent::IDBSuccessEvent):
825         * storage/IDBTransaction.cpp:
826         (WebCore::IDBTransaction::onAbort):
827         (WebCore::IDBTransaction::onComplete):
828         * storage/IDBTransaction.h:
829         (WebCore::IDBTransaction::backend):
830         * storage/IDBTransactionBackendImpl.cpp:
831         (WebCore::IDBTransactionBackendImpl::taskTimerFired):
832
833 2011-02-04  Daniel Cheng  <dcheng@chromium.org>
834
835         Reviewed by Dmitry Titov.
836
837         Clone WebClipboard to be frame-specific.
838         https://bugs.webkit.org/show_bug.cgi?id=53727
839
840         For drop operations, Chrome currently snapshots the data and copies it
841         into the renderer process. As we add more supported drag data types, the
842         copy will become increasingly expensive. Instead, we'd like to snapshot
843         data in the browser to reduce the amount of data copied and to support
844         Blob in DataTransferItem. In order to allow this, we associated
845         WebClipboard with a frame so it can correctly route its IPCs to the
846         corresponding Chromium host.
847
848         No new tests because no new functionality.
849
850         * platform/chromium/ChromiumDataObject.cpp:
851         (WebCore::ChromiumDataObject::createReadable):
852         * platform/chromium/ChromiumDataObject.h:
853         * platform/chromium/ClipboardChromium.cpp:
854         (WebCore::ClipboardChromium::create):
855         * platform/chromium/PlatformBridge.h:
856         * platform/chromium/ReadableDataObject.cpp:
857         (WebCore::ReadableDataObject::create):
858         (WebCore::ReadableDataObject::ReadableDataObject):
859         (WebCore::ReadableDataObject::getData):
860         (WebCore::ReadableDataObject::urlTitle):
861         (WebCore::ReadableDataObject::htmlBaseUrl):
862         (WebCore::ReadableDataObject::filenames):
863         (WebCore::ReadableDataObject::ensureTypeCacheInitialized):
864         * platform/chromium/ReadableDataObject.h:
865
866 2011-02-04  Jeremy Orlow  <jorlow@chromium.org>
867
868         Revert https://bugs.webkit.org/show_bug.cgi?id=53795
869
870         * storage/IDBAbortEvent.cpp:
871         (WebCore::IDBAbortEvent::create):
872         (WebCore::IDBAbortEvent::IDBAbortEvent):
873         * storage/IDBAbortEvent.h:
874         * storage/IDBCompleteEvent.cpp:
875         (WebCore::IDBCompleteEvent::create):
876         (WebCore::IDBCompleteEvent::IDBCompleteEvent):
877         * storage/IDBCompleteEvent.h:
878         * storage/IDBErrorEvent.cpp:
879         (WebCore::IDBErrorEvent::IDBErrorEvent):
880         * storage/IDBEvent.cpp:
881         (WebCore::IDBEvent::IDBEvent):
882         * storage/IDBEvent.h:
883         * storage/IDBRequest.cpp:
884         (WebCore::IDBRequest::dispatchEvent):
885         * storage/IDBRequest.h:
886         * storage/IDBSuccessEvent.cpp:
887         (WebCore::IDBSuccessEvent::IDBSuccessEvent):
888         * storage/IDBTransaction.cpp:
889         (WebCore::IDBTransaction::onAbort):
890         (WebCore::IDBTransaction::onComplete):
891         * storage/IDBTransaction.h:
892         * storage/IDBTransactionBackendImpl.cpp:
893         (WebCore::IDBTransactionBackendImpl::taskTimerFired):
894
895 2011-02-04  Martin Galpin  <martin@66laps.com>
896
897         Reviewed by David Levin.
898
899         CORS origin header not set on GET when a preflight request is required.
900         https://bugs.webkit.org/show_bug.cgi?id=50773
901         
902         Test: http/tests/xmlhttprequest/cross-origin-preflight-get.html
903
904         * loader/DocumentThreadableLoader.cpp:
905         (WebCore::DocumentThreadableLoader::preflightSuccess): 
906         Explicitly set the request origin after a preflight request succeeds.
907
908 2011-02-04  Jeremy Orlow  <jorlow@chromium.org>
909
910         Reviewed by Nate Chapin.
911
912         First step towards event propogation within IndexedDB
913         https://bugs.webkit.org/show_bug.cgi?id=53795
914
915         This is the first step towards implementing
916         http://www.w3.org/Bugs/Public/show_bug.cgi?id=11348
917         within IndexedDB. I've created a method that knows how
918         to capture and bubble (based on Node's dispatchGenericEvent).
919         I've then changed IDBRequest to use it.
920
921         The only functional change is that preventDefault now must
922         be called in error events to prevent the transaction from
923         being aborted. The tests reflect this change and there's one
924         specific test to look at this behavior.
925
926         Test: storage/indexeddb/error-causes-abort-by-default.html
927
928         * storage/IDBAbortEvent.cpp:
929         (WebCore::IDBAbortEvent::create):
930         (WebCore::IDBAbortEvent::IDBAbortEvent):
931         * storage/IDBAbortEvent.h:
932         * storage/IDBCompleteEvent.cpp:
933         (WebCore::IDBCompleteEvent::create):
934         (WebCore::IDBCompleteEvent::IDBCompleteEvent):
935         * storage/IDBCompleteEvent.h:
936         * storage/IDBErrorEvent.cpp:
937         (WebCore::IDBErrorEvent::IDBErrorEvent):
938         * storage/IDBEvent.cpp:
939         (WebCore::IDBEvent::IDBEvent):
940         (WebCore::IDBEvent::dispatch):
941         * storage/IDBEvent.h:
942         * storage/IDBRequest.cpp:
943         (WebCore::IDBRequest::dispatchEvent):
944         * storage/IDBRequest.h:
945         * storage/IDBSuccessEvent.cpp:
946         (WebCore::IDBSuccessEvent::IDBSuccessEvent):
947         * storage/IDBTransaction.cpp:
948         (WebCore::IDBTransaction::onAbort):
949         (WebCore::IDBTransaction::onComplete):
950         * storage/IDBTransaction.h:
951         (WebCore::IDBTransaction::backend):
952         * storage/IDBTransactionBackendImpl.cpp:
953         (WebCore::IDBTransactionBackendImpl::taskTimerFired):
954
955 2011-02-04  Dimitri Glazkov  <dglazkov@chromium.org>
956
957         Reviewed by Csaba Osztrogonác.
958
959         [Qt]REGRESSION(r76951): media/controls-without-preload.html fails
960         https://bugs.webkit.org/show_bug.cgi?id=53674
961
962         * css/mediaControlsQt.css:
963
964 2011-02-04  Dan Bernstein  <mitz@apple.com>
965
966         Reviewed by Darin Adler and Dave Hyatt.
967
968         <rdar://problem/8902704> Make ruby text size 50% by default
969         https://bugs.webkit.org/show_bug.cgi?id=53723
970
971         * css/html.css:
972         (ruby > rt): Changed the font-size from 60% to 50%.
973
974 2011-02-04  Antti Koivisto  <antti@apple.com>
975
976         Reviewed by Dimitri Glazkov.
977
978         https://bugs.webkit.org/show_bug.cgi?id=53610
979         Regression: adjacent sibling selector not working as expected
980         <rdar://problem/8960033>
981         
982         https://bugs.webkit.org/show_bug.cgi?id=53574
983         REGRESSION (r76012): :last-child:after not working as expected
984         <rdar://problem/8948643>
985         
986         Test for additional conditions in parent style that prevent sharing.
987
988         Tests: fast/selectors/style-sharing-adjacent-selector.html
989                fast/selectors/style-sharing-last-child.html
990
991         * css/CSSStyleSelector.cpp:
992         (WebCore::parentStylePreventsSharing):
993         (WebCore::CSSStyleSelector::locateSharedStyle):
994
995 2011-02-04  Mark Mentovai  <mark@chromium.org>
996
997         Reviewed by Dimitri Glazkov.
998
999         Chromium GYP build fix.
1000
1001         When various settings were moved to webcore_prerequisites in r66364,
1002         things that should have been direct_dependent_settings were not marked
1003         as such. GYP 'defines', for example, make no sense on a 'none'-type
1004         target such as webcore_prerequisites. It appears that it was intended
1005         for these settings to be pushed to direct dependents, which would make
1006         direct_dependent_settings correct.
1007
1008         Losing the ChromiumWebCoreObjC defines on the Mac, for example, caused
1009         http://crbug.com/71537, which at best causes Mac console log spew, and
1010         at worst may result in Chromium's copy of WebCore using system
1011         definitions of certain Objective-C classes at runtime, or vice-versa.
1012
1013         The build now includes a postbuild step to prevent
1014         http://crbug.com/71537 from regressing again. The build will fail upon
1015         regression.
1016
1017         https://bugs.webkit.org/show_bug.cgi?id=53630
1018
1019         * WebCore.gyp/WebCore.gyp: Move things in webcore_prerequisites into
1020           direct_dependent_settings as needed, add the check_objc_rename
1021           postbuild step.
1022         * WebCore.gyp/mac/check_objc_rename.sh: Added.
1023
1024 2011-02-04  Robert Hogan  <robert@webkit.org>
1025
1026         Reviewed by Darin Fisher.
1027
1028         Move chromium iframe shim code to cross-platform file
1029         https://bugs.webkit.org/show_bug.cgi?id=52594
1030
1031         Move Chromium code for identifying and cutting out
1032         iframe shims from plugins to cross-platform utility file
1033         IFrameShimSupport.cpp.
1034         Amend PluginViewQt to use this code to handle shims correctly.
1035
1036         * WebCore.gypi: Add Chromium support for IFrameShimSupport.cpp
1037         * WebCore.pro: Add Qt support for IFrameShimSupport.cpp
1038         * plugins/IFrameShimSupport.cpp: Added.
1039         (WebCore::getObjectStack):
1040         (WebCore::iframeIsAbovePlugin):
1041         (WebCore::getPluginOcclusions):
1042         * plugins/IFframeShimSupport.h: Added.
1043         * plugins/qt/PluginViewQt.cpp:
1044         (WebCore::PluginView::setNPWindowIfNeeded):
1045
1046 2011-02-04  Xiaomei Ji  <xji@chromium.org>
1047
1048         Reviewed by David Levin.
1049
1050         Implement "<option> should implement the dir attribute" for chromium port after r76983.
1051         https://bugs.webkit.org/show_bug.cgi?id=50969
1052
1053         Use manual test Source/WebCore/manual-tests/pop-up-alignment-and-direction.html
1054         added in r76983.
1055
1056         * platform/chromium/PopupMenuChromium.cpp: Remove directionality hint from
1057         <select> drop-down setting.
1058         (WebCore::PopupListBox::paintRow): Use <option>'s directionality to paint
1059         items in drop-down and pass-in bidi override flag when creating text run.
1060         * platform/chromium/PopupMenuChromium.h: Remove directionalityHint from
1061         PopupContainerSettings.
1062
1063 2011-02-04  Jeremy Orlow  <jorlow@chromium.org>
1064
1065         Build fix from merge mistake.
1066
1067         * storage/IDBTransaction.cpp:
1068         (WebCore::IDBTransaction::ensureEventTargetData):
1069
1070 2011-02-04  Levi Weintraub  <leviw@chromium.org>
1071
1072         Reviewed by Darin Adler.
1073
1074         Remove unneeded function declarations in comments in EditorClient.h
1075         https://bugs.webkit.org/show_bug.cgi?id=53745
1076
1077         Removing unused commented out function declarations. No tests since this is just cleanup.
1078
1079         * page/EditorClient.h:
1080
1081 2011-02-03  Jeremy Orlow  <jorlow@chromium.org>
1082
1083         Reviewed by Nate Chapin.
1084
1085         Refactor IDBRequest and IDBTransaction a bit
1086         https://bugs.webkit.org/show_bug.cgi?id=53565
1087
1088         There were a lot of subtle issues with the way IDBTransaction
1089         and IDBRequest used to be written. This cleans a lot of them up
1090         and largely simplifies the logic. Using EventQueue rather than
1091         timers is one example of the simplification.
1092
1093         * bindings/scripts/CodeGeneratorV8.pm:
1094         * dom/EventQueue.cpp:
1095         (WebCore::EventQueue::enqueueEvent):
1096         (WebCore::EventQueue::dispatchEvent):
1097         * storage/IDBCursor.cpp:
1098         (WebCore::IDBCursor::continueFunction):
1099         * storage/IDBRequest.cpp:
1100         (WebCore::IDBRequest::create):
1101         (WebCore::IDBRequest::IDBRequest):
1102         (WebCore::IDBRequest::resetReadyState):
1103         (WebCore::IDBRequest::onError):
1104         (WebCore::IDBRequest::onSuccess):
1105         (WebCore::IDBRequest::dispatchEvent):
1106         (WebCore::IDBRequest::enqueueEvent):
1107         (WebCore::IDBRequest::eventTargetData):
1108         (WebCore::IDBRequest::ensureEventTargetData):
1109         * storage/IDBRequest.h:
1110         (WebCore::IDBRequest::dispatchEvent):
1111         * storage/IDBTransaction.cpp:
1112         (WebCore::IDBTransaction::create):
1113         (WebCore::IDBTransaction::IDBTransaction):
1114         (WebCore::IDBTransaction::objectStore):
1115         (WebCore::IDBTransaction::abort):
1116         (WebCore::IDBTransaction::onAbort):
1117         (WebCore::IDBTransaction::onComplete):
1118         (WebCore::IDBTransaction::onTimeout):
1119         (WebCore::IDBTransaction::canSuspend):
1120         (WebCore::IDBTransaction::stop):
1121         (WebCore::IDBTransaction::enqueueEvent):
1122         (WebCore::IDBTransaction::eventTargetData):
1123         (WebCore::IDBTransaction::ensureEventTargetData):
1124         * storage/IDBTransaction.h:
1125
1126 2011-02-01  Jeremy Orlow  <jorlow@chromium.org>
1127
1128         Reviewed by Nate Chapin.
1129
1130         Remove the timeout event from IndexedDB
1131         https://bugs.webkit.org/show_bug.cgi?id=53521
1132
1133         Remove timeout and ontimeout from IDBTransaction per the spec.
1134
1135         * WebCore.gypi:
1136         * storage/IDBDatabase.cpp:
1137         (WebCore::IDBDatabase::transaction):
1138         * storage/IDBDatabase.h:
1139         (WebCore::IDBDatabase::transaction):
1140         * storage/IDBDatabase.idl:
1141         * storage/IDBDatabaseBackendImpl.cpp:
1142         (WebCore::IDBDatabaseBackendImpl::setVersion):
1143         (WebCore::IDBDatabaseBackendImpl::transaction):
1144         * storage/IDBDatabaseBackendImpl.h:
1145         * storage/IDBDatabaseBackendInterface.h:
1146         * storage/IDBTimeoutEvent.cpp: Removed.
1147         * storage/IDBTimeoutEvent.h: Removed.
1148         * storage/IDBTransaction.cpp:
1149         (WebCore::IDBTransaction::IDBTransaction):
1150         (WebCore::IDBTransaction::onAbort):
1151         (WebCore::IDBTransaction::onComplete):
1152         * storage/IDBTransaction.h:
1153         * storage/IDBTransaction.idl:
1154         * storage/IDBTransactionBackendImpl.cpp:
1155         (WebCore::IDBTransactionBackendImpl::create):
1156         (WebCore::IDBTransactionBackendImpl::IDBTransactionBackendImpl):
1157         * storage/IDBTransactionBackendImpl.h:
1158         * storage/IDBTransactionCallbacks.h:
1159
1160 2011-02-04  Chris Fleizach  <cfleizach@apple.com>
1161
1162         Reviewed by Darin Adler.
1163
1164         AX: Can't set accessibility overridden attributes on web objects
1165         https://bugs.webkit.org/show_bug.cgi?id=53725
1166
1167         accessibilitySetOverriddenValue does not work on AX objects from WebCore because 
1168         the right method needed to be overridden (accessibilitySupportsOverriddenAttributes).
1169         Unfortunately, there's no way to test this from DRT, since AppKit returns the overridden
1170         attribute only when an AX client asks for it through the AX frameworks.
1171
1172         * accessibility/mac/AccessibilityObjectWrapper.mm:
1173         (-[AccessibilityObjectWrapper accessibilitySupportsOverriddenAttributes]):
1174
1175 2011-02-03  Dimitri Glazkov  <dglazkov@chromium.org>
1176
1177         Reviewed by Kent Tamura.
1178
1179         REGRESSION(r76147): Slider thumb is not repainted when let go outside of the slider track.
1180         https://bugs.webkit.org/show_bug.cgi?id=53691
1181
1182         Test: fast/repaint/slider-thumb-drag-release.html
1183
1184         * html/shadow/SliderThumbElement.cpp:
1185         (WebCore::SliderThumbElement::stopDragging): Added dirtying the layout bit to ensure
1186             that the thumb is repainted.
1187
1188 2011-02-04  Mikhail Naganov  <mnaganov@chromium.org>
1189
1190         Reviewed by Pavel Feldman.
1191
1192         Web Inspector: Add "show more" data grid node and waiting message UI components.
1193         https://bugs.webkit.org/show_bug.cgi?id=53763
1194
1195         - "show more" data grid node is used for on-demand population of
1196         data grid contents (similar to DOM tree capability for limiting
1197         displayed nodes count);
1198
1199         - waiting message is used for informing user about long lasting
1200         operations (with a possibility to cancel them).
1201
1202         * English.lproj/localizedStrings.js:
1203         * WebCore.gypi:
1204         * WebCore.vcproj/WebCore.vcproj:
1205         * inspector/front-end/PleaseWaitMessage.js: Added.
1206         (WebInspector.PleaseWaitMessage):
1207         * inspector/front-end/ShowMoreDataGridNode.js: Added.
1208         (WebInspector.ShowMoreDataGridNode):
1209         * inspector/front-end/WebKit.qrc:
1210         * inspector/front-end/inspector.css:
1211         (.data-grid button):
1212         (.please-wait-msg):
1213         * inspector/front-end/inspector.html:
1214
1215 2011-02-04  Adele Peterson  <adele@apple.com>
1216
1217         Reviewed by Dan Bernstein.
1218
1219         Fix for https://bugs.webkit.org/show_bug.cgi?id=53740
1220         <rdar://problem/8503629> Allow platforms to specify if the placeholder should be visible when text controls are focused
1221
1222         Tests:
1223         fast/forms/textarea-placeholder-visibility-1.html
1224         fast/forms/textarea-placeholder-visibility-2.html
1225         fast/forms/input-placeholder-visibility-1.html
1226         fast/forms/input-placeholder-visibility-2.html
1227         fast/forms/input-placeholder-visibility-3.html
1228
1229         * html/HTMLFormControlElement.cpp: (WebCore::HTMLTextFormControlElement::placeholderShouldBeVisible):
1230         Add a check for shouldShowPlaceholderWhenFocused.
1231         * html/HTMLTextAreaElement.cpp: (WebCore::HTMLTextAreaElement::updateValue):
1232         Whenever the value is updated, we should also update placeholder visibility.
1233         * rendering/RenderTheme.h: (WebCore::RenderTheme::shouldShowPlaceholderWhenFocused):
1234         Make the default the same as the existing behavior.
1235         * rendering/RenderThemeMac.h:
1236         * rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::shouldShowPlaceholderWhenFocused):
1237         Show placeholder when appropriate. 
1238
1239 2011-02-04  Pavel Podivilov  <podivilov@chromium.org>
1240
1241         Reviewed by Pavel Feldman.
1242
1243         Web Inspector: evaluate on hover does not work on a breakpoint.
1244         https://bugs.webkit.org/show_bug.cgi?id=53768
1245
1246         * inspector/front-end/SourceFrame.js:
1247         (WebInspector.SourceFrame.prototype._mouseHover):
1248
1249 2011-02-04  Sheriff Bot  <webkit.review.bot@gmail.com>
1250
1251         Unreviewed, rolling out r77625 and r77626.
1252         http://trac.webkit.org/changeset/77625
1253         http://trac.webkit.org/changeset/77626
1254         https://bugs.webkit.org/show_bug.cgi?id=53765
1255
1256         It broke Windows builds (Requested by Ossy_ on #webkit).
1257
1258         * Android.jscbindings.mk:
1259         * CMakeLists.txt:
1260         * ForwardingHeaders/pcre/pcre.h: Added.
1261         * ForwardingHeaders/yarr/Yarr.h: Removed.
1262         * ForwardingHeaders/yarr/YarrInterpreter.h: Removed.
1263         * ForwardingHeaders/yarr/YarrPattern.h: Removed.
1264         * WebCore.gyp/WebCore.gyp:
1265         * WebCore.pro:
1266         * WebCore.vcproj/WebCore.vcproj:
1267         * WebCore.vcproj/copyForwardingHeaders.cmd:
1268         * platform/text/RegularExpression.cpp:
1269         (WebCore::RegularExpression::Private::regexp):
1270         (WebCore::RegularExpression::Private::compile):
1271         (WebCore::RegularExpression::Private::Private):
1272         (WebCore::RegularExpression::Private::create):
1273         (WebCore::RegularExpression::Private::~Private):
1274         (WebCore::RegularExpression::match):
1275
1276 2011-02-04  Peter Varga  <pvarga@webkit.org>
1277
1278         Rubber-stamped by Csaba Osztrogonác.
1279
1280         Replace PCRE with Yarr in WebCore
1281         https://bugs.webkit.org/show_bug.cgi?id=53496
1282
1283         Speculative windows build fix.
1284
1285         No new tests needed.
1286
1287         * platform/text/RegularExpression.cpp:
1288
1289 2011-02-04  Peter Varga  <pvarga@webkit.org>
1290
1291
1292         Reviewed by Gavin Barraclough.
1293
1294         Replace PCRE with Yarr in WebCore
1295         https://bugs.webkit.org/show_bug.cgi?id=53496
1296
1297         No new tests needed.
1298
1299         * Android.jscbindings.mk:
1300         * CMakeLists.txt:
1301         * ForwardingHeaders/pcre/pcre.h: Removed.
1302         * ForwardingHeaders/yarr/Yarr.h: Added.
1303         * ForwardingHeaders/yarr/YarrInterpreter.h: Added.
1304         * ForwardingHeaders/yarr/YarrPattern.h: Added.
1305         * WebCore.gyp/WebCore.gyp:
1306         * WebCore.pro:
1307         * WebCore.vcproj/WebCore.vcproj:
1308         * WebCore.vcproj/copyForwardingHeaders.cmd:
1309         * platform/text/RegularExpression.cpp:
1310         (WebCore::RegularExpression::Private::create):
1311         (WebCore::RegularExpression::Private::Private):
1312         (WebCore::RegularExpression::Private::compile):
1313         (WebCore::RegularExpression::match):
1314
1315 2011-02-04  Pavel Feldman  <pfeldman@chromium.org>
1316
1317         Reviewed by Yury Semikhatsky.
1318
1319         Web Inspector: Network panel filtering is broken.
1320         https://bugs.webkit.org/show_bug.cgi?id=53764
1321
1322         * inspector/front-end/NetworkPanel.js:
1323         (WebInspector.NetworkPanel.prototype._sortItems):
1324         (WebInspector.NetworkPanel.prototype._sortByTimeline):
1325         (WebInspector.NetworkPanel.prototype._filter):
1326         (WebInspector.NetworkPanel.prototype._updateOffscreenRows):
1327         (WebInspector.NetworkDataGridNode.prototype.isFilteredOut):
1328         (WebInspector.NetworkDataGridNode.prototype.get selectable):
1329         (WebInspector.NetworkTotalGridNode.prototype.isFilteredOut):
1330         (WebInspector.NetworkTotalGridNode.prototype.get selectable):
1331
1332 2011-02-04  Andrey Kosyakov  <caseq@chromium.org>
1333
1334         Reviewed by Pavel Feldman.
1335
1336         Web Inspector: support overriding user agent strings
1337         https://bugs.webkit.org/show_bug.cgi?id=51485
1338
1339         Test: http/tests/inspector/extensions-useragent.html
1340
1341         * inspector/Inspector.idl:
1342         * inspector/InspectorController.cpp:
1343         (WebCore::InspectorController::disconnectFrontend):
1344         (WebCore::InspectorController::setUserAgentOverride):
1345         (WebCore::InspectorController::userAgentOverride):
1346         * inspector/InspectorController.h:
1347         * inspector/front-end/ExtensionAPI.js:
1348         (WebInspector.injectedExtensionAPI.InspectedWindow.prototype.reload):
1349         * inspector/front-end/ExtensionServer.js:
1350         (WebInspector.ExtensionServer.prototype._onReload):
1351         * loader/FrameLoader.cpp:
1352         (WebCore::FrameLoader::userAgent):
1353         (WebCore::FrameLoader::applyUserAgent):
1354
1355 2011-02-04  Pavel Podivilov  <podivilov@chromium.org>
1356
1357         Reviewed by Pavel Feldman.
1358
1359         Web Inspector: scripts panel displays wrong file name after reload.
1360         https://bugs.webkit.org/show_bug.cgi?id=53761
1361
1362         * inspector/front-end/ScriptsPanel.js:
1363         (WebInspector.ScriptsPanel.prototype._resourceLoadingFinished):
1364
1365 2011-02-03  Yury Semikhatsky  <yurys@chromium.org>
1366
1367         Reviewed by Pavel Feldman.
1368
1369         Web Inspector: remove settings related methods from InspectorClient
1370         https://bugs.webkit.org/show_bug.cgi?id=53686
1371
1372         * WebCore.exp.in:
1373         * inspector/CodeGeneratorInspector.pm:
1374         * inspector/InspectorClient.h:
1375         * inspector/InspectorFrontendClientLocal.cpp:
1376         (WebCore::InspectorFrontendClientLocal::InspectorFrontendClientLocal):
1377         (WebCore::InspectorFrontendClientLocal::changeAttachedWindowHeight):
1378         (WebCore::InspectorFrontendClientLocal::restoreAttachedWindowHeight):
1379         * inspector/InspectorFrontendClientLocal.h: ports that provide in-process implementation of the inspector front-end can
1380         provide platform-specific settings accessor.
1381         (WebCore::InspectorFrontendClientLocal::Settings::Settings):
1382         (WebCore::InspectorFrontendClientLocal::Settings::~Settings):
1383         (WebCore::InspectorFrontendClientLocal::Settings::inspectorAttachedHeight):
1384         (WebCore::InspectorFrontendClientLocal::Settings::storeInspectorAttachedHeight):
1385         * loader/EmptyClients.h:
1386
1387 2011-02-03  Anton Muhin  <antonm@chromium.org>
1388
1389         Reviewed by Adam Barth.
1390
1391         [v8] frame several more JS code invocations into v8::TryCatch
1392         https://bugs.webkit.org/show_bug.cgi?id=53594
1393
1394         This patch is preemptive and adjusts v8 bindings code to forthcoming small change
1395         in v8::ThrowException---currently sometimes exceptions thrown by this method
1396         do not reach surrounding v8::TryCatch handler (see
1397         http://code.google.com/p/v8/issues/detail?id=1072 and
1398         http://codereview.chromium.org/6397011/).  Therefore the goal of this patch
1399         is to make forthcoming v8 roll as smooth as possible (alas, we'll still need
1400         one rebaseline as of now.)
1401
1402         * bindings/v8/V8Proxy.cpp:
1403         (WebCore::V8Proxy::runScript): Do not rely on empty handle as a signal of exception, wrap into v8::TryCatch instead
1404         * bindings/v8/V8WindowErrorHandler.cpp:
1405         (WebCore::V8WindowErrorHandler::callListenerFunction): Ditto
1406
1407 2011-02-03  Maciej Stachowiak  <mjs@apple.com>
1408
1409         Reviewed by Dan Bernstein.
1410
1411         WebKit2: Need WebKit2 equivalent of WebResourceLoadDelegate::willSendRequest in the Bundle
1412         https://bugs.webkit.org/show_bug.cgi?id=52897
1413         <rdar://problem/8898294>
1414
1415         * WebCore.exp.in: Add export now needed by WebKit2
1416
1417 2011-02-03  Victoria Kirst  <vrk@google.com>
1418
1419         Reviewed by James Robinson.
1420
1421         Replaces float literals with uniform values in shader code
1422         so that buggy drivers unable to parse float values in different
1423         locales will not produce a pink video.
1424
1425         [chromium] Fix pink video bug with gpu-acceleration enabled
1426         https://bugs.webkit.org/show_bug.cgi?id=53568
1427
1428         * platform/graphics/chromium/VideoLayerChromium.cpp:
1429         (WebCore::VideoLayerChromium::SharedValues::SharedValues):
1430         (WebCore::VideoLayerChromium::drawYUV):
1431         * platform/graphics/chromium/VideoLayerChromium.h:
1432         (WebCore::VideoLayerChromium::SharedValues::signAdjLocation):
1433
1434 2011-02-03  James Kozianski  <koz@chromium.org>
1435
1436         Reviewed by Dimitri Glazkov.
1437
1438         Add navigator.registerProtocolHandler behind a flag.
1439         https://bugs.webkit.org/show_bug.cgi?id=52609
1440
1441         This method is described in the HTML5 specification here,
1442         http://dev.w3.org/html5/spec/Overview.html#dom-navigator-registerprotocolhandler
1443
1444         This change is largely cribbed from B. Green's 29651 patches. It is
1445         behind a flag so as not to break JS feature detection.
1446
1447         New layout test fast/dom/registerProtocolHandler.html.
1448
1449         * Configurations/FeatureDefines.xcconfig:
1450         * loader/EmptyClients.h:
1451         (WebCore::EmptyChromeClient::registerProtocolHandler):
1452         * page/Chrome.cpp:
1453         (WebCore::Chrome::registerProtocolHandler):
1454         * page/Chrome.h:
1455         * page/ChromeClient.h:
1456         * page/Navigator.cpp:
1457         (WebCore::verifyCustomHandlerURL):
1458         (WebCore::verifyProtocolHandlerScheme):
1459         (WebCore::Navigator::registerProtocolHandler):
1460         * page/Navigator.h:
1461         * page/Navigator.idl:
1462
1463 2011-02-03  Brian Ryner  <bryner@chromium.org>
1464
1465         Reviewed by Darin Fisher.
1466
1467         Add a field to the ResourceResponse for tracking the socket address
1468         of the host that the resource was fetched from.  Patch was originally
1469         by Paul Marks.
1470         https://bugs.webkit.org/show_bug.cgi?id=53699
1471
1472         * platform/network/chromium/ResourceResponse.cpp:
1473         (WebCore::ResourceResponse::doPlatformCopyData):
1474         (WebCore::ResourceResponse::doPlatformAdopt):
1475         * platform/network/chromium/ResourceResponse.h:
1476         (WebCore::ResourceResponse::socketAddress):
1477         (WebCore::ResourceResponse::setSocketAddress):
1478
1479 2011-02-03  Adam Langley  <agl@chromium.org>
1480
1481         Reviewed by Adam Barth.
1482
1483         Plumb mixed script URL to FrameLoaderClient
1484         https://bugs.webkit.org/show_bug.cgi?id=52384
1485
1486         Regressions covered by http/tests/security/mixedContent/*
1487
1488         * loader/EmptyClients.h:
1489         (WebCore::EmptyFrameLoaderClient::didRunInsecureContent):
1490         * loader/FrameLoader.cpp:
1491         (WebCore::FrameLoader::checkIfRunInsecureContent):
1492         * loader/FrameLoaderClient.h:
1493
1494 2011-02-03  Simon Fraser  <simon.fraser@apple.com>
1495
1496         Reviewed by Dan Bernstein.
1497
1498         REGRESSION: Artifacts on box-shadow corners in some cases
1499         https://bugs.webkit.org/show_bug.cgi?id=53731
1500
1501         Fix overdrawing artifacts in ShadowBlur's tiling code path,
1502         which show up in shadows using a color with alpha.
1503         
1504         Test: fast/box-shadow/shadow-tiling-artifact.html
1505
1506         * platform/graphics/ShadowBlur.cpp:
1507         (WebCore::ShadowBlur::drawRectShadowWithTiling): Ensure
1508         that the inner rect that gets filled does not overlap with any
1509         of the eight tiled areas by having the corner and side dimensions
1510         be the same for contiguous areas.
1511
1512 2011-02-03  Adam Barth  <abarth@webkit.org>
1513
1514         Reviewed by Alexey Proskuryakov.
1515
1516         XSS Auditor is spinning inside decodeURLEscapeSequences() if there are
1517         percent signs in large posted data
1518         https://bugs.webkit.org/show_bug.cgi?id=53405
1519
1520         If the input string contains many non-% characters followed by a %
1521         character that is not a valid URL escape sequence, then the old
1522         algorithm would only advance the initial search by one character
1523         (instead of jumping to just after the % character).  That would cause
1524         the algorithm to take N^2 time (in the number of characters before the
1525         first % character).  This patch just advances the search past the first
1526         % character so we can start looking for next % character sooner.
1527
1528         * platform/KURL.cpp:
1529         (WebCore::decodeURLEscapeSequences):
1530
1531 2011-02-03  Pavel Podivilov  <podivilov@chromium.org>
1532
1533         Reviewed by Pavel Feldman.
1534
1535         Web Inspector: click on a breakpoint highlights wrong line in source frame.
1536         https://bugs.webkit.org/show_bug.cgi?id=53692
1537
1538         * inspector/front-end/BreakpointsSidebarPane.js:
1539         (WebInspector.JavaScriptBreakpointsSidebarPane.prototype._setupBreakpointElement):
1540
1541 2011-02-03  Anton Muhin  <antonm@chromium.org>
1542
1543         Reviewed by Adam Barth.
1544
1545         [v8] Bail out if to string conversion returned empty handle
1546         https://bugs.webkit.org/show_bug.cgi?id=53687
1547
1548         This a temporary measure: actually one probably should never get empty handle
1549         if there was no exception.  The root cause is under investigation.
1550         The bailout though allows Chromium not to crash---attempt to convert an empty
1551         v8 hande into WebCore string crashes with invalid memory access.
1552
1553         See http://code.google.com/p/chromium/issues/detail?id=71544
1554
1555         There is no known reduction expressible as a layout test so far.  The crash found with automated testing tools.
1556
1557         * bindings/v8/V8Binding.cpp:
1558         (WebCore::v8NonStringValueToWebCoreString): Bail out on empty handle
1559         * bindings/v8/V8Binding.h:
1560         (WebCore::V8ParameterBase::prepareBase): Ditto
1561
1562 2011-02-03  Adam Barth  <abarth@webkit.org>
1563
1564         Attempt to fix Chromium build.
1565
1566         * html/parser/XSSFilter.cpp:
1567
1568 2011-02-03  Dirk Pranke  <dpranke@chromium.org>
1569
1570         Unreviewed, rolling out r77562.
1571         http://trac.webkit.org/changeset/77562
1572         https://bugs.webkit.org/show_bug.cgi?id=53630
1573
1574         broke chromium mac build
1575
1576         * WebCore.gyp/WebCore.gyp:
1577         * WebCore.gyp/mac/check_objc_rename.sh: Removed.
1578
1579 2011-02-03  Adam Barth  <abarth@webkit.org>
1580
1581         Reviewed by Daniel Bates.
1582
1583         XSS Auditor severely affects loading performance after submitting a large form
1584         https://bugs.webkit.org/show_bug.cgi?id=49845
1585
1586         Switch over from the XSSAuditor to the XSSFilter, improving performance
1587         on this example.
1588
1589         * html/parser/XSSFilter.cpp:
1590         (WebCore::XSSFilter::filterToken):
1591         * page/XSSAuditor.cpp:
1592         (WebCore::XSSAuditor::isEnabled):
1593
1594 2011-02-03  Dirk Pranke  <dpranke@chromium.org>
1595
1596         Unreviewed, rolling out r77567.
1597         http://trac.webkit.org/changeset/77567
1598         https://bugs.webkit.org/show_bug.cgi?id=53468
1599
1600         broke chromium linux svg, canvas tests, possibly win also?
1601
1602         * platform/graphics/skia/ImageBufferSkia.cpp:
1603         (WebCore::getImageData):
1604         (WebCore::ImageBuffer::getUnmultipliedImageData):
1605         (WebCore::ImageBuffer::getPremultipliedImageData):
1606         (WebCore::putImageData):
1607         (WebCore::ImageBuffer::putUnmultipliedImageData):
1608         (WebCore::ImageBuffer::putPremultipliedImageData):
1609
1610 2011-02-02  MORITA Hajime  <morrita@google.com>
1611
1612         Reviewed by Dimitri Glazkov.
1613
1614         Refactoring: <progress> should not use ShadowElement
1615         https://bugs.webkit.org/show_bug.cgi?id=53583
1616
1617         - Introduced RenderIndicatorPart and RenderProgressBarValuePart
1618           to be responsible for bar-part layout,
1619           which adopted layout logic from ShadowBlockElement.
1620         - ProgressBarValueElement is no longer a subclass of ShadowBlockElement.
1621         - Remove dependency from RenderProgress to HTMLProgressElement and
1622           ShadowBlockElement.
1623         - The shadow tree is no longer removed on detach(). It becomes persistent.
1624           This is now possible because the ShadowBlockElement dependency is gone.
1625         - ::-webkit-appearance for -webkit-progress-bar-value is no longer referred.
1626           That didn't make sense.
1627
1628         * html/HTMLProgressElement.cpp:
1629         (WebCore::HTMLProgressElement::createShadowSubtreeIfNeeded):
1630         * html/HTMLProgressElement.h:
1631         * html/shadow/ProgressBarValueElement.h: Added.
1632         (WebCore::ProgressBarValueElement::ProgressBarValueElement):
1633         (WebCore::ProgressBarValueElement::shadowPseudoId):
1634         (WebCore::ProgressBarValueElement::createRenderer):
1635         (WebCore::ProgressBarValueElement::create):
1636         * rendering/RenderIndicator.cpp:
1637         (WebCore::RenderIndicatorPart::RenderIndicatorPart):
1638         (WebCore::RenderIndicatorPart::~RenderIndicatorPart):
1639         (WebCore::RenderIndicatorPart::layout):
1640         (WebCore::RenderIndicatorPart::styleDidChange):
1641         * rendering/RenderIndicator.h: Added RenderIndicatorPart class
1642         (WebCore::RenderIndicatorPart::originalVisibility):
1643         (WebCore::RenderIndicatorPart::requiresForcedStyleRecalcPropagation):
1644         (WebCore::RenderIndicatorPart::canHaveChildren):
1645         * rendering/RenderProgress.cpp:
1646         (WebCore::RenderProgressBarValuePart::preferredFrameRect):
1647         (WebCore::RenderProgressBarValuePart::shouldBeHidden):
1648         (WebCore::RenderProgress::updateFromElement):
1649         (WebCore::RenderProgress::layoutParts):
1650         (WebCore::RenderProgress::shouldHaveParts):
1651         * rendering/RenderProgress.h:
1652         (WebCore::RenderProgressBarValuePart::RenderProgressBarValuePart):
1653
1654 2011-02-03  Jia Pu  <jpu@apple.com>
1655
1656         Reversion should not be marked as misspelled.
1657         https://bugs.webkit.org/show_bug.cgi?id=53255
1658
1659         This patch includes fix for reported bug, and also some housekeeping changes.
1660
1661         To implement desired behavior, we need:
1662         1. Add a new marker type, SpellCheckingExemption, since now we distingusish between text
1663            that shouldn't be spellchecked and text shouldn't be autocorrected.
1664         2. Make sure that there is no pending correction panel when we enter markAllMisspellingsAndBadGrammarInRanges().
1665            Otherwise the spell checking code in that function may interfere with autocorrection. This
1666            is achieved by explicitly applying pending correction when user types space, line break or
1667            paragraph break.
1668
1669         Housekeeping code changes include:
1670         1. Change manual-tests that were broken by relocated WebCore directory.
1671         2. Use TextIterator in various DocumentMarkerController functions instead of using
1672            Node::traverseNextNode() directly.
1673         3. Allow passing multiple marker types into DocumentMarkerController::removeMarkers() and
1674            DocumentMarkerController::hasMarkers() to improve clarity and efficiency.
1675         4. Fixes of minor bugs that were exposed previously.
1676
1677         * WebCore.exp.in: Change signature of DocumentMarkerController::removeMarkers().
1678
1679         * dom/DocumentMarker.h: Added new marker type SpellCheckingExemption.
1680
1681         * dom/DocumentMarkerController.cpp:
1682         (WebCore::DocumentMarkerController::removeMarkers): Use TextIterator to scan the range to be
1683            consistent with addMarker() function. Allow passing in multiple marker types in one call.
1684            Added a boolean argument to specify the behavior when removing markers that partially
1685            overlap the specified range.
1686         (WebCore::DocumentMarkerController::removeMarkersFromMarkerMapVectorPair): Allow passing in
1687            multiple marker types in one call.
1688         (WebCore::DocumentMarkerController::hasMarkers): Use TextIterator to scan the range to be
1689            consistent with addMarker() function. Allow passing in multiple marker types in one call.
1690
1691         * dom/DocumentMarkerController.h: Allow passing in multiple marker types to removeMarkers()
1692            and hasMarkers(). Added a boolean argument to removeMarkers() to specify the behavior when
1693            removing markers that partially overlap the specified range.
1694
1695         * editing/Editor.cpp:
1696         (WebCore::markerTypesForAutocorrection): Add SpellCheckingExemption marker when apply correction.
1697         (WebCore::markerTypesForReplacement): Ditto.
1698         (WebCore::Editor::respondToChangedSelection): Reordered call to dismissCorrectionPanel() and
1699            setSelection() to make sure there is no pending correction when entering
1700            markAllMisspellingsAndBadGrammarInRanges().
1701         (WebCore::Editor::appliedEditing): Only remove CorrectionIndicator markers when the command
1702            is a top level command to improve efficiency.
1703         (WebCore::Editor::insertTextWithoutSendingTextEvent): Added code to applying pending correction.
1704         (WebCore::Editor::insertLineBreak): Ditto.
1705         (WebCore::Editor::insertParagraphSeparator): Ditto.
1706         (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): Don't mark mispelling if the
1707            text carries SpellCheckingExemption marker.
1708         (WebCore::Editor::correctionPanelTimerFired): Reset correction panel if the returned suggestion
1709            from spellchecker is an empty string.
1710         (WebCore::Editor::removeSpellAndCorrectionMarkersFromWordsToBeEdited):
1711            Use new DocumentMarkerController::removeMarkers() to replace custom implemenation to improve
1712            efficiency and readability.
1713         (WebCore::Editor::applyCorrectionPanelInfo): Remove the code that set caret position after
1714            applying correction, since it's unnecessary. Also, store pre-correction string together with
1715            the marker for reversion panel to use.
1716         (WebCore::Editor::applyAutocorrectionBeforeTypingIfAppropriate): Apply pending correction.
1717         (WebCore::Editor::changeSelectionAfterCommand): Moved marker removal code to Editor::appliedEditing()
1718            where we have access to EditCommand object.
1719
1720         * editing/Editor.h: Added new function applyAutocorrectionAfterTypingIfAppropriate().
1721
1722         * manual-tests/autocorrection/autocorrection-cancelled-by-ESC.html: Change manual-tests that
1723            were broken by relocated WebCore directory.
1724
1725         * manual-tests/autocorrection/autocorrection-cancelled-by-typing-1.html: Ditto.
1726
1727         * manual-tests/autocorrection/autocorrection-contraction.html: Ditto.
1728
1729         * manual-tests/autocorrection/continue-typing-to-dismiss-reversion.html: Ditto.
1730
1731         * manual-tests/autocorrection/delete-to-dismiss-reversion.html: Ditto.
1732
1733         * manual-tests/autocorrection/delete-to-end-of-word-to-show-reversion.html: Ditto.
1734
1735         * manual-tests/autocorrection/dismiss-multiple-guesses.html: Ditto.
1736
1737         * manual-tests/autocorrection/move-to-end-of-word-to-show-reversion.html: Ditto.
1738
1739         * manual-tests/autocorrection/select-from-multiple-guesses.html: Ditto.
1740
1741         * manual-tests/autocorrection/spell-checking-after-reversion.html: Added.
1742
1743         * manual-tests/autocorrection/type-whitespace-to-dismiss-reversion.html: Change manual-tests that
1744            were broken by relocated WebCore directory.
1745
1746         * rendering/InlineTextBox.cpp:
1747         (WebCore::InlineTextBox::paintDocumentMarkers): Code clean-up to be more concise.
1748
1749 2011-02-03  Abhishek Arya  <inferno@chromium.org>
1750
1751         Unreviewed, qt build fix.
1752
1753         * rendering/RenderBlock.cpp:
1754         (WebCore::RenderBlock::removeFloatingObject):
1755
1756 2011-02-03  Brian Salomon  <bsalomon@google.com>
1757
1758         Reviewed by James Robinson.
1759
1760         Handle non-raster backed images in getUnmultipliedImageData()
1761         https://bugs.webkit.org/show_bug.cgi?id=53468
1762
1763         No new tests. Existing canvas tests sufficient
1764         LayoutTests/canvas/philip/...
1765
1766         * platform/graphics/skia/ImageBufferSkia.cpp:
1767         (WebCore::getImageData):
1768         (WebCore::ImageBuffer::getUnmultipliedImageData):
1769         (WebCore::ImageBuffer::getPremultipliedImageData):
1770         (WebCore::putImageData):
1771         (WebCore::ImageBuffer::putUnmultipliedImageData):
1772         (WebCore::ImageBuffer::putPremultipliedImageData):
1773
1774 2011-02-03  Abhishek Arya  <inferno@chromium.org>
1775
1776         Reviewed by James Robinson.
1777
1778         Enforce more limits on root inline boxes height calculations.
1779         https://bugs.webkit.org/show_bug.cgi?id=53729
1780
1781         Test: fast/overflow/overflow-height-float-not-removed-crash.html
1782
1783         * rendering/RenderBlock.cpp:
1784         (WebCore::RenderBlock::removeFloatingObject): prevent logicalBottom to
1785         become negative when logicalTop is INT_MAX.
1786         (WebCore::RenderBlock::markLinesDirtyInBlockRange): when logicalBottom
1787         is INT_MAX, we should dirty everything. So, we bail out to make
1788         afterLowest equal to the lastRootBox() or lowestDirstLine.
1789
1790 2011-02-03  David Levin  <levin@chromium.org>
1791
1792         Reviewed by Adam Barth and Oliver Hunt.
1793
1794         Worker.importScript() should clean errors for cross origin imports.
1795         https://bugs.webkit.org/show_bug.cgi?id=52871
1796
1797         Test: http/tests/workers/worker-importScriptsOnError.html
1798
1799         * bindings/js/WorkerScriptController.cpp:
1800         (WebCore::WorkerScriptController::evaluate): Use sanitizeScriptError
1801         to determine when to create a clean exception.
1802         * bindings/v8/WorkerContextExecutionProxy.cpp:
1803         (WebCore::WorkerContextExecutionProxy::evaluate): Ditto.
1804         * dom/ScriptExecutionContext.cpp:
1805         (WebCore::ScriptExecutionContext::sanitizeScriptError): Figure out
1806         if the error needs to be cleaned up.
1807         (WebCore::ScriptExecutionContext::dispatchErrorEvent): Extracted
1808         sanitizeScriptError for use by other places.
1809         * dom/ScriptExecutionContext.h:
1810         * workers/WorkerContext.cpp:
1811         (WebCore::WorkerContext::importScripts): Use the reponse url when
1812         telling the evaluate where the script came fro.
1813         * workers/WorkerScriptLoader.cpp:
1814         (WebCore::WorkerScriptLoader::responseURL): Expose the url that
1815         the script was loaded from (which may be different from url() due
1816         to redirects).
1817         (WebCore::WorkerScriptLoader::didReceiveResponse): Capture the reponse url.
1818         * workers/WorkerScriptLoader.h:
1819
1820 2011-02-03  Mark Mentovai  <mark@chromium.org>
1821
1822         Reviewed by Dimitri Glazkov.
1823
1824         Chromium GYP build fix.
1825
1826         When various settings were moved to webcore_prerequisites in r66364,
1827         things that should have been direct_dependent_settings were not marked
1828         as such. GYP 'defines', for example, make no sense on a 'none'-type
1829         target such as webcore_prerequisites. It appears that it was intended
1830         for these settings to be pushed to direct dependents, which would make
1831         direct_dependent_settings correct.
1832
1833         Losing the ChromiumWebCoreObjC defines on the Mac, for example, caused
1834         http://crbug.com/71537, which at best causes Mac console log spew, and
1835         at worst may result in Chromium's copy of WebCore using system
1836         definitions of certain Objective-C classes at runtime, or vice-versa.
1837
1838         The build now includes a postbuild step to prevent
1839         http://crbug.com/71537 from regressing again. The build will fail upon
1840         regression.
1841
1842         https://bugs.webkit.org/show_bug.cgi?id=53630
1843
1844         * WebCore.gyp/WebCore.gyp: Move things in webcore_prerequisites into
1845           direct_dependent_settings as needed, add the check_objc_rename
1846           postbuild step.
1847         * WebCore.gyp/mac/check_objc_rename.sh: Added.
1848
1849 2011-02-03  Adam Barth  <abarth@webkit.org>
1850
1851         Reviewed by Eric Seidel.
1852
1853         Make XSSFilter go fast by adding a SuffixTree
1854         https://bugs.webkit.org/show_bug.cgi?id=53665
1855
1856         The SuffixTree lets us quickly reject snippets if the POST data is
1857         large (because we can avoid a linear scan over the POST data).
1858
1859         * html/parser/XSSFilter.cpp:
1860         (WebCore::XSSFilter::init):
1861         (WebCore::XSSFilter::isContainedInRequest):
1862         * html/parser/XSSFilter.h:
1863
1864 2011-02-03  Mihai Parparita  <mihaip@chromium.org>
1865
1866         Reviewed by Alexey Proskuryakov.
1867
1868         REGRESSION (r77355): Page cache layout tests crash
1869         https://bugs.webkit.org/show_bug.cgi?id=53648
1870
1871         Test: fast/events/pagehide-timeout.html
1872         
1873         Suspend active DOM objects after all pagehide event handlers have run,
1874         otherwise it's possible for them to create more objects that weren't
1875         getting suspended.
1876
1877         * history/CachedFrame.cpp:
1878         (WebCore::CachedFrame::CachedFrame):
1879
1880 2011-02-03  Jeremy Orlow  <jorlow@chromium.org>
1881
1882         Reviewed by Nate Chapin.
1883
1884         SerializedScriptValue should not require v8 to create undefined and null values
1885         https://bugs.webkit.org/show_bug.cgi?id=53730
1886
1887         Instead of creating a v8 type and passing that into the constructor, just use
1888         the writer class directly. While I was at it, I cleaned up the code a bit too
1889         by getting rid of the WireData/StringValue enum as I found that personally
1890         confusing.
1891
1892         This is necessary because these methods are called by IndexedDB in the browser
1893         process where v8 is not spun up.
1894
1895         No functionality changed and not possible to test.
1896
1897         * bindings/v8/SerializedScriptValue.cpp:
1898         (WebCore::SerializedScriptValue::createFromWire):
1899         (WebCore::SerializedScriptValue::create):
1900         (WebCore::SerializedScriptValue::nullValue):
1901         (WebCore::SerializedScriptValue::undefinedValue):
1902         (WebCore::SerializedScriptValue::release):
1903         (WebCore::SerializedScriptValue::SerializedScriptValue):
1904         * bindings/v8/SerializedScriptValue.h:
1905
1906 2011-02-03  Beth Dakin  <bdakin@apple.com>
1907
1908         Reviewed by Sam Weinig.
1909
1910         Fix for <rdar://problem/8944544> Ability to animate track
1911         for WKPainter scrollers
1912
1913         Two new WebKitSystemInterface functions.
1914         * WebCore.exp.in:
1915         * platform/mac/WebCoreSystemInterface.h:
1916         * platform/mac/WebCoreSystemInterface.mm:
1917
1918         Use Scrollbar::convertFromContainingView() to return the right point.
1919         * platform/mac/ScrollAnimatorMac.mm:
1920         (-[ScrollbarPainterControllerDelegate scrollerImpPair:convertContentPoint:toScrollerImp:]):
1921         
1922         ScrollKnobAnimation is now ScrollbarPartAnimation. It can
1923         now be used to animate the knob or the track.
1924         (-[ScrollbarPartAnimation initWithScrollbarPainter:part:WebCore::scrollAnimator:WebCore::animateAlphaTo:duration:]):
1925         (-[ScrollbarPartAnimation setCurrentProgress:]):
1926         (-[ScrollbarPainterDelegate setUpAnimation:scrollerPainter:part:WebCore::animateAlphaTo:duration:]):
1927         (-[ScrollbarPainterDelegate scrollerImp:animateKnobAlphaTo:duration:]):
1928         (-[ScrollbarPainterDelegate scrollerImp:animateTrackAlphaTo:duration:]):
1929
1930         Scrollbars need invalodating after the overlay state changes. 
1931         (-[ScrollbarPainterDelegate scrollerImp:overlayScrollerStateChangedTo:]):
1932
1933 2011-02-03  Sam Weinig  <sam@webkit.org>
1934
1935         Reviewed by Beth Dakin.
1936
1937         Scroll thumb jumps to top when resizing horizontally.
1938
1939         * platform/ScrollView.cpp:
1940         (WebCore::ScrollView::updateScrollbars): Add call to update
1941         the scrollbar's offset in the case where we may have created
1942         a new scrollbar but have not changed the current position.
1943
1944 2011-02-03  Justin Schuh  <jschuh@chromium.org>
1945
1946         Reviewed by Dirk Schulze.
1947
1948         startAnimations should use a local, RefCounted Vector.
1949         https://bugs.webkit.org/show_bug.cgi?id=53458
1950
1951         Test: svg/custom/use-animation-in-fill.html
1952
1953         * svg/SVGDocumentExtensions.cpp:
1954         (WebCore::SVGDocumentExtensions::startAnimations):
1955
1956 2011-02-03  Adam Barth  <abarth@webkit.org>
1957
1958         Reviewed by Daniel Bates.
1959
1960         XSSFilter shouldn't bother to analyze pages without "injection"
1961         characters in the request
1962         https://bugs.webkit.org/show_bug.cgi?id=53664
1963
1964         If the request lacks these "injection" characters, then it's unlikely
1965         that there's a reflective XSS attack happening.  This hueristic lets us
1966         avoid analyzing the vast majority of responses for XSS.  Of course, the
1967         hueristic isn't perfect.  Because of this huerstic, we miss out on
1968         injections into unquoted attributes.  However, it's a trade-off that's
1969         worked well in the XSSAuditor.
1970
1971         * html/parser/XSSFilter.cpp:
1972         (WebCore::HTMLNames::isRequiredForInjection):
1973         (WebCore::XSSFilter::XSSFilter):
1974         (WebCore::XSSFilter::init):
1975         (WebCore::XSSFilter::filterToken):
1976         (WebCore::XSSFilter::isContainedInRequest):
1977         * html/parser/XSSFilter.h:
1978
1979 2011-02-03  Vangelis Kokkevis  <vangelis@chromium.org>
1980
1981         Reviewed by Kenneth Russell.
1982
1983         [chromium] Fixing a compositor crash occurring on layers
1984         without an associated RenderSurface.
1985         https://bugs.webkit.org/show_bug.cgi?id=53679
1986         Regression was introduced by in r77425 
1987
1988         Test: http://webkit.org/blog/386/3d-transforms/ doesn't crash
1989         anymore.
1990
1991         * platform/graphics/chromium/LayerRendererChromium.cpp:
1992         (WebCore::LayerRendererChromium::drawLayer):
1993
1994 2011-02-03  Dan Bernstein  <mitz@apple.com>
1995
1996         Reviewed by Anders Carlsson.
1997
1998         <rdar://problem/8948788> Text emphasis marks have wrong orientation for vertical text
1999         https://bugs.webkit.org/show_bug.cgi?id=53709
2000
2001         Covered by rendering of fast/text/emphasis-vertical.html
2002
2003         * platform/graphics/mac/SimpleFontDataMac.mm:
2004         (WebCore::SimpleFontData::scaledFontData): Give the scaled font the same orientation this font
2005         has.
2006
2007 2011-02-02  Levi Weintraub  <leviw@chromium.org>
2008
2009         Reviewed by Ryosuke Niwa.
2010
2011         Moving cursor down in table cycles at the end of a row
2012         https://bugs.webkit.org/show_bug.cgi?id=50012
2013
2014         Avoids a caret cycling issue with certain content (e.g. tables) found at the very
2015         end of a document due to a bug in nextLeafWithSameEditability.
2016
2017         Test: editing/selection/move-by-line-cycles-in-table.html
2018
2019         * editing/visible_units.cpp:
2020         (WebCore::nextLeafWithSameEditability): Properly avoid descending back into the
2021         original leaf node.
2022
2023 2011-02-03  Pavel Podivilov  <podivilov@chromium.org>
2024
2025         Reviewed by Pavel Feldman.
2026
2027         Web Inspector: remove dead code related to changes panel.
2028         https://bugs.webkit.org/show_bug.cgi?id=53688
2029
2030         * WebCore.gypi:
2031         * WebCore.vcproj/WebCore.vcproj:
2032         * inspector/front-end/ChangesView.js: Removed.
2033         * inspector/front-end/WebKit.qrc:
2034         * inspector/front-end/inspector.css:
2035         (#error-warning-count):
2036         (#error-warning-count:hover):
2037         (#error-count + #warning-count):
2038         * inspector/front-end/inspector.html:
2039         * inspector/front-end/inspector.js:
2040
2041 2011-02-02  Sam Weinig  <sam@webkit.org>
2042
2043         Reviewed by Anders Carlsson.
2044
2045         Add notification of the end of a rubber band.
2046         <rdar://problem/8940648>
2047
2048         * WebCore.exp.in:
2049         Add additional exprots.
2050
2051         * page/ChromeClient.h:
2052         (WebCore::ChromeClient::didCompleteRubberBandForMainFrame):
2053         * page/FrameView.cpp:
2054         (WebCore::FrameView::didCompleteRubberBand):
2055         * page/FrameView.h:
2056         * platform/ScrollView.cpp:
2057         (WebCore::ScrollView::didCompleteRubberBand):
2058         * platform/ScrollView.h:
2059         Add hook.
2060
2061         * platform/ScrollableArea.h:
2062         (WebCore::ScrollableArea::inLiveResize):
2063         (WebCore::ScrollableArea::maximumScrollPosition):
2064         (WebCore::ScrollableArea::visibleWidth):
2065         (WebCore::ScrollableArea::overhangAmount):
2066         (WebCore::ScrollableArea::didCompleteRubberBand):
2067         Reorganize and de-virtualize live resize notifications.
2068
2069         * platform/mac/ScrollAnimatorMac.mm:
2070         (WebCore::ScrollAnimatorMac::snapRubberBandTimerFired):
2071         Call the new hook when the rubberband ends.
2072
2073 2011-02-02  Evan Martin  <evan@chromium.org>
2074
2075         Reviewed by Tony Chang.
2076
2077         [chromium] complex joining characters positioned in wrong place
2078         https://bugs.webkit.org/show_bug.cgi?id=53637
2079
2080         Provide the correct font metrics to Harfbuzz related to the font design space.
2081         There are used in some fonts for GPOS positioning.
2082
2083         Test: platform/chromium-linux/fast/text/international/complex-joining-using-gpos.html
2084
2085         * platform/graphics/chromium/ComplexTextControllerLinux.cpp:
2086         (WebCore::ComplexTextController::setupFontForScriptRun):
2087         (WebCore::ComplexTextController::allocHarfbuzzFont):
2088         * platform/graphics/chromium/FontPlatformDataLinux.cpp:
2089         (WebCore::FontPlatformData::FontPlatformData):
2090         (WebCore::FontPlatformData::emSizeInFontUnits):
2091         (WebCore::FontPlatformData::operator=):
2092         * platform/graphics/chromium/FontPlatformDataLinux.h:
2093         (WebCore::FontPlatformData::FontPlatformData):
2094
2095 2011-02-02  Dimitri Glazkov  <dglazkov@chromium.org>
2096
2097         Reviewed by Kent Tamura.
2098
2099         REGRESSION(r76147): Slider thumb position is not updated when value attribute is changed.
2100         https://bugs.webkit.org/show_bug.cgi?id=53634
2101
2102         Test: fast/dom/HTMLInputElement/input-slider-update.html
2103
2104         * html/HTMLInputElement.cpp:
2105         (WebCore::HTMLInputElement::setValue): Added a call to InputType::valueChanged.
2106         * html/InputType.cpp:
2107         (WebCore::InputType::valueChanged): Added empty implementation.
2108         * html/InputType.h: Added def.
2109         * html/RangeInputType.cpp:
2110         (WebCore::RangeInputType::valueChanged): Added implementation that dirties layout
2111             bit on the thumb.
2112         * html/RangeInputType.h: Added def.
2113
2114 2011-02-02  Pavel Podivilov  <podivilov@chromium.org>
2115
2116         Reviewed by Pavel Feldman.
2117
2118         Web Inspector: do not share source frames between resources panel and scripts panel.
2119         https://bugs.webkit.org/show_bug.cgi?id=53584
2120
2121         Currently, we show error messages only for resources. This change will allow showing error
2122         messages in source frame even when resource is not available (eval scripts, inlined scripts).
2123
2124         * inspector/front-end/ConsoleView.js:
2125         (WebInspector.ConsoleView.prototype.addMessage):
2126         (WebInspector.ConsoleView.prototype.clearMessages):
2127         * inspector/front-end/ResourceView.js:
2128         (WebInspector.ResourceView.recreateResourceView):
2129         * inspector/front-end/ResourcesPanel.js:
2130         (WebInspector.FrameResourceTreeElement.prototype._setBubbleText):
2131         * inspector/front-end/ScriptsPanel.js:
2132         (WebInspector.ScriptsPanel.prototype._scriptSourceChanged):
2133         (WebInspector.ScriptsPanel.prototype.addConsoleMessage):
2134         (WebInspector.ScriptsPanel.prototype.clearConsoleMessages):
2135         (WebInspector.ScriptsPanel.prototype.reset):
2136         (WebInspector.ScriptsPanel.prototype._sourceFrameForScriptOrResource):
2137         (WebInspector.ScriptsPanel.prototype._sourceFrameForResource):
2138         (WebInspector.ScriptsPanel.prototype._sourceFrameForScript):
2139
2140 2011-02-03  Simon Fraser  <simon.fraser@apple.com>
2141
2142         Fix 32-bit builds.
2143
2144         * platform/graphics/ShadowBlur.cpp:
2145         (WebCore::ShadowBlur::blurLayerImage):
2146
2147 2011-02-03  Mikhail Naganov  <mnaganov@chromium.org>
2148
2149         Reviewed by Pavel Feldman.
2150
2151         Web Inspector: Add reporting of JS heap size limit to 'console.memory'.
2152         https://bugs.webkit.org/show_bug.cgi?id=53592
2153
2154         In JSC there is no limit, thus 'undefined' value is returned.
2155         For V8, the limit reported by the VM is returned.
2156
2157         * Android.jscbindings.mk:
2158         * CMakeLists.txt:
2159         * GNUmakefile.am:
2160         * WebCore.gypi:
2161         * WebCore.pro:
2162         * WebCore.vcproj/WebCore.vcproj:
2163         * WebCore.xcodeproj/project.pbxproj:
2164         * bindings/js/JSBindingsAllInOne.cpp:
2165         * bindings/js/JSMemoryInfoCustom.cpp: Added.
2166         * bindings/js/ScriptGCEvent.cpp:
2167         (WebCore::ScriptGCEvent::getHeapSize):
2168         * bindings/js/ScriptGCEvent.h:
2169         * bindings/v8/ScriptGCEvent.cpp:
2170         (WebCore::ScriptGCEvent::getHeapSize):
2171         * bindings/v8/ScriptGCEvent.h:
2172         * inspector/InspectorTimelineAgent.cpp:
2173         (WebCore::InspectorTimelineAgent::setHeapSizeStatistic):
2174         * page/MemoryInfo.cpp:
2175         (WebCore::MemoryInfo::MemoryInfo):
2176         * page/MemoryInfo.h:
2177         (WebCore::MemoryInfo::jsHeapSizeLimit):
2178         * page/MemoryInfo.idl:
2179
2180 2011-01-27  Philippe Normand  <pnormand@igalia.com>
2181
2182         Reviewed by Martin Robinson.
2183
2184         [GTK] LayoutTests/media/audio-mpeg4-supported.html fails
2185         https://bugs.webkit.org/show_bug.cgi?id=53125
2186
2187         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
2188         (WebCore::mimeTypeCache): Add audio/x-m4a mimetype in the cache.
2189
2190 2011-02-03  Simon Fraser  <simon.fraser@apple.com>
2191
2192         Reviewed by Sam Weinig.
2193
2194         ShadowBlur radius for CSS shadows is slightly too big
2195         https://bugs.webkit.org/show_bug.cgi?id=53660
2196         
2197         If we follow SVG gaussian blur for CSS shadows, we can end up rendering
2198         shadows that extend further than the CSS "blur radius", which results
2199         in the shadows being truncated.
2200         
2201         Fix with a small fudge factor to reduce the kernel diameter slightly
2202         for CSS shadows.
2203         
2204         Also more closely follow the algorithm described in the SVG spec
2205         for computing the kernel size for different diameters, and clean up
2206         some variable naming relating to the shadow bounds.
2207
2208         * platform/graphics/ShadowBlur.cpp:
2209         (WebCore::ShadowBlur::blurLayerImage):
2210         (WebCore::ShadowBlur::drawRectShadowWithTiling):
2211
2212 2011-02-01  Pavel Podivilov  <podivilov@chromium.org>
2213
2214         Reviewed by Pavel Feldman.
2215
2216         Web Inspector: introduce new api for managing JavaScript breakpoints.
2217         https://bugs.webkit.org/show_bug.cgi?id=53235
2218
2219         Single protocol breakpoint (e.g. set by url) is mapped on zero or more VM breakpoints (set by sourceID).
2220         removeJavaScriptBreakpoint(breakpointId) removes breakpoint and all linked VM breakpoints.
2221         Since UI uses VM breakpoint location rather then protocol breakpoint location, all resolved breakpoints locations are passed to frontend.
2222
2223         SourceFrame is now aware of whether breakpoint is resolved or not and may display it accordingly.
2224         JavaScriptBreakpointsSidebarPane filters out breakpoints set on nonexistent scripts to avoid UI cluttering.
2225
2226         * bindings/js/ScriptDebugServer.cpp:
2227         (WebCore::ScriptDebugServer::setBreakpoint):
2228         (WebCore::ScriptDebugServer::removeBreakpoint):
2229         * bindings/js/ScriptDebugServer.h:
2230         * bindings/v8/DebuggerScript.js:
2231         ():
2232         * bindings/v8/ScriptDebugServer.cpp:
2233         (WebCore::ScriptDebugServer::setBreakpoint):
2234         * bindings/v8/ScriptDebugServer.h:
2235         * inspector/Inspector.idl:
2236         * inspector/InspectorAgent.cpp: clear breakpoints from inspector state when new frontend is created
2237         (WebCore::InspectorAgent::restoreInspectorStateFromCookie):
2238         (WebCore::InspectorAgent::populateScriptObjects):
2239         (WebCore::InspectorAgent::restoreDebugger):
2240         (WebCore::InspectorAgent::showAndEnableDebugger):
2241         (WebCore::InspectorAgent::enableDebugger):
2242         * inspector/InspectorAgent.h:
2243         * inspector/InspectorDebuggerAgent.cpp: manage relations between protocol breakpoints and VM breakpoints
2244         (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
2245         (WebCore::InspectorDebuggerAgent::inspectedURLChanged):
2246         (WebCore::InspectorDebuggerAgent::setJavaScriptBreakpoint):
2247         (WebCore::InspectorDebuggerAgent::setJavaScriptBreakpointBySourceId):
2248         (WebCore::InspectorDebuggerAgent::removeJavaScriptBreakpoint):
2249         (WebCore::InspectorDebuggerAgent::continueToLocation):
2250         (WebCore::InspectorDebuggerAgent::resolveBreakpoint):
2251         (WebCore::InspectorDebuggerAgent::getScriptSource):
2252         (WebCore::InspectorDebuggerAgent::didParseSource):
2253         (WebCore::InspectorDebuggerAgent::didPause):
2254         * inspector/InspectorDebuggerAgent.h:
2255         (WebCore::InspectorDebuggerAgent::Script::Script):
2256         * inspector/InspectorValues.cpp:
2257         (WebCore::InspectorValue::asNumber):
2258         (WebCore::InspectorBasicValue::asNumber):
2259         (WebCore::InspectorObject::remove):
2260         * inspector/InspectorValues.h:
2261         (WebCore::InspectorObject::getNumber):
2262         (WebCore::InspectorObject::find):
2263         * inspector/ScriptBreakpoint.h:
2264         (WebCore::ScriptBreakpoint::ScriptBreakpoint):
2265         * inspector/front-end/Breakpoint.js:
2266         (WebInspector.Breakpoint):
2267         (WebInspector.Breakpoint.prototype.addLocation):
2268         * inspector/front-end/BreakpointManager.js: remove all stuff related to JavaScript breakpoints from here
2269         (WebInspector.BreakpointManager):
2270         (WebInspector.BreakpointManager.prototype._projectChanged):
2271         (WebInspector.BreakpointManager.prototype._saveBreakpoints):
2272         (WebInspector.BreakpointManager.prototype._validateBreakpoints):
2273         * inspector/front-end/BreakpointsSidebarPane.js:
2274         (WebInspector.JavaScriptBreakpointsSidebarPane): filter breakpoints set on nonexistent scripts to avoid ui cluttering
2275         * inspector/front-end/DebuggerModel.js:
2276         (WebInspector.DebuggerModel): pull all JavaScript from localStorage and push them to fronted when debugger is enabled, save resolved breakpoints data
2277         * inspector/front-end/Script.js:
2278         (WebInspector.Script.prototype.sourceLine):
2279         * inspector/front-end/ScriptsPanel.js:
2280         (WebInspector.ScriptsPanel.prototype._toggleDebugging):
2281         * inspector/front-end/Settings.js:
2282         (WebInspector.Settings):
2283         * inspector/front-end/SourceFrame.js: handle resolved and unresolved breakpoints differently
2284         * inspector/front-end/inspector.js:
2285
2286 2011-02-03  Nikolas Zimmermann  <nzimmermann@rim.com>
2287
2288         Reviewed by Dirk Schulze.
2289
2290         small text which is scaled to be large renders pixelated
2291         https://bugs.webkit.org/show_bug.cgi?id=12448
2292
2293         SVG <text> with font-size smaller or equal to 1 does not paint correctly
2294         https://bugs.webkit.org/show_bug.cgi?id=14242
2295
2296         misplaced text in SVG
2297         https://bugs.webkit.org/show_bug.cgi?id=17053
2298
2299         Don't render very small (but zoomed) text inside SVG
2300         https://bugs.webkit.org/show_bug.cgi?id=19393
2301
2302         Tiny fonts scaled up end up too large in Safari
2303         https://bugs.webkit.org/show_bug.cgi?id=20192
2304
2305         Stretched SVG Text has awful glyph spacing 
2306         https://bugs.webkit.org/show_bug.cgi?id=21774
2307
2308         REGRESSION (r72141?): svg/batik/text/smallFonts.svg failing on Leopard
2309         https://bugs.webkit.org/show_bug.cgi?id=49846
2310
2311         [Gtk] Text height in zoomed SVG is 1px too high
2312         https://bugs.webkit.org/show_bug.cgi?id=50313
2313
2314         SVG text smaller than 0.5px not displayed properly
2315         https://bugs.webkit.org/show_bug.cgi?id=50528
2316
2317         When rendering text, we're selecting a font with a size, as specified in the markup.
2318         This can lead to problems, if the context, where the text is rendered upon, is scaled. If a parent
2319         element of the <text> defines a transform=".." or the outermost <svg> containing a viewBox the
2320         problem becomes apparent.
2321
2322         Consider following two snippets, which should render exactly the same:
2323         <svg viewBox="0 0 100 100"><text x="25" y="50" font-size="25">test</text></svg>
2324         <svg viewBox="0 0 1 1"><text x="0.25" y="0.5" font-size="0.25">test</text></svg>
2325
2326         When selecting a font size below 0.5, FontCacheMac would request a font with size 0,
2327         which AppKit turns into 12. This lead to huge text rendering, instead of small text on Mac.
2328         Other platforms have different problems (Qt simply scales the font, leading to pixelation etc.)
2329
2330         To fix this in a cross-platform fashion, we now always compute the final font size on screen,
2331         remove any scaling from the context, draw the text using the scaled font size, then reapply
2332         the context scale. This makes the example snippets above render exactly the same and fixes
2333         numerous of bugs, present since years. As we're now heavily using floating-point font sizes
2334         internally, depending on the scale of the document, it's very important to use the new
2335         floating-point text metrics information (floatAscent/floatDescent/floatHeight) everywhere in SVG.
2336
2337         Fixes existing tests: css3/zoom-coords.xhtml (cross-platform inconsistencies should be gone, mac now reports floatHeight values for SVG text height)
2338                               svg/hixie/text/003.html (no more pixelation)
2339                               svg/batik/text/smallFonts.svg (small fonts aren't rendered huge anymore on mac)
2340                               svg/hixie/viewbox/preserveAspectRatio/001.xml (bug 21774, no more awful spacing)
2341                               svg/zoom/page/zoom-zoom-coords.xhtml (cross-platform inconsistencies should be gone, inspired by bug 50313)
2342
2343         Tests: svg/text/font-size-below-point-five-2.svg (reduction from bug 50528)
2344                svg/text/font-size-below-point-five.svg (reduction from bug 50528)
2345                svg/text/scaled-font.svg (reduction from bug 12448)
2346                svg/text/small-fonts-2.svg (reduction from bug 14242)
2347                svg/text/small-fonts-3.svg (reduction from bug 17053)
2348                svg/text/small-fonts-in-html5.html (reduction from bug 19393)
2349                svg/text/small-fonts.svg (reduction from bug 20192))
2350
2351         * rendering/svg/RenderSVGInlineText.cpp: Cache 'float scalingFactor' & 'Font scaledFont', whenever the on-screen representation changes.
2352         * rendering/svg/RenderSVGInlineText.h:
2353         * rendering/svg/RenderSVGText.cpp: Update scalingFactor/scaledFont, if necessary.
2354         * rendering/svg/SVGInlineTextBox.cpp: Switch to new font rendering strategy. Always use scaledFont, and remove any context scale before drawing.
2355         * rendering/svg/SVGInlineTextBox.h:
2356         * rendering/svg/SVGTextLayoutEngineBaseline.cpp: Use floating-point metrics everywhere.
2357         * rendering/svg/SVGTextMetrics.cpp: Ditto.
2358         * rendering/svg/SVGTextMetrics.h: Ditto.
2359         * rendering/svg/SVGTextQuery.cpp: Ditto.
2360         * svg/SVGFont.cpp: Adjust stroke thickness, when drawing SVGFonts into a normalized context (no more scale).
2361         * svg/SVGTextContentElement.cpp: Make <text> elements always dependant on window size changes in combination with viewBox set.
2362         * svg/SVGTextPositioningElement.cpp: Remove now unnecessary code to determine wheter relative lengths are used as text attributes.
2363         * svg/SVGTextPositioningElement.h: 
2364
2365 2011-02-03  Pavel Feldman  <pfeldman@chromium.org>
2366
2367         Reviewed by Yury Semikhatsky.
2368
2369         Web Inspector: resources panel doesn't show frames after reload.
2370         https://bugs.webkit.org/show_bug.cgi?id=53430
2371
2372         * inspector/front-end/ResourcesPanel.js:
2373         (WebInspector.ResourcesPanel.prototype.show):
2374         (WebInspector.ResourcesPanel.prototype.loadEventFired):
2375         (WebInspector.ResourcesPanel.prototype._initDefaultSelection):
2376         (WebInspector.ResourcesPanel.prototype.reset):
2377         (WebInspector.ResourcesPanel.prototype.clear):
2378         * inspector/front-end/inspector.js:
2379         (WebInspector.loadEventFired):
2380
2381 2011-02-01  Alexander Pavlov  <apavlov@chromium.org>
2382
2383         Reviewed by Pavel Feldman.
2384
2385         Web Inspector: Remove the *2 suffix from the CSS style-related protocol methods
2386         https://bugs.webkit.org/show_bug.cgi?id=53492
2387
2388         * inspector/Inspector.idl:
2389         * inspector/InspectorCSSAgent.cpp:
2390         (WebCore::InspectorCSSAgent::getStylesForNode):
2391         (WebCore::InspectorCSSAgent::getInlineStyleForNode):
2392         (WebCore::InspectorCSSAgent::getComputedStyleForNode):
2393         (WebCore::InspectorCSSAgent::getAllStyles):
2394         (WebCore::InspectorCSSAgent::getStyleSheet):
2395         (WebCore::InspectorCSSAgent::getStyleSheetText):
2396         (WebCore::InspectorCSSAgent::setStyleSheetText):
2397         (WebCore::InspectorCSSAgent::setPropertyText):
2398         (WebCore::InspectorCSSAgent::toggleProperty):
2399         (WebCore::InspectorCSSAgent::setRuleSelector):
2400         (WebCore::InspectorCSSAgent::addRule):
2401         * inspector/InspectorCSSAgent.h:
2402         * inspector/front-end/AuditRules.js:
2403         (WebInspector.AuditRules.UnusedCssRule.prototype.doRun):
2404         * inspector/front-end/CSSStyleModel.js:
2405         (WebInspector.CSSStyleModel.prototype.getStylesAsync):
2406         (WebInspector.CSSStyleModel.prototype.getComputedStyleAsync):
2407         (WebInspector.CSSStyleModel.prototype.getInlineStyleAsync):
2408         (WebInspector.CSSStyleModel.prototype.setRuleSelector):
2409         (WebInspector.CSSStyleModel.prototype.addRule):
2410         (WebInspector.CSSStyleModel.prototype._styleSheetChanged):
2411         (WebInspector.CSSStyleModel.prototype._onRevert):
2412         (WebInspector.CSSStyleDeclaration.prototype.insertPropertyAt):
2413         (WebInspector.CSSProperty.prototype.setText):
2414         (WebInspector.CSSProperty.prototype.setDisabled):
2415         (WebInspector.CSSStyleSheet.createForId):
2416         (WebInspector.CSSStyleSheet.prototype.setText):
2417
2418 2011-02-03  Adam Barth  <abarth@webkit.org>
2419
2420         Reviewed by Daniel Bates.
2421
2422         Teach XSSFilter about data URLs
2423         https://bugs.webkit.org/show_bug.cgi?id=53662
2424
2425         The XSS filter doesn't really make sense for data URLs because
2426         everything in a "response" from a data URL was part of the request.
2427
2428         Test: http/tests/security/xssAuditor/data-urls-work.html
2429
2430         * html/parser/XSSFilter.cpp:
2431         (WebCore::XSSFilter::init):
2432         (WebCore::XSSFilter::filterToken):
2433
2434 2011-02-02  Chris Evans  <cevans@chromium.org>
2435
2436         Reviewed by Darin Fisher.
2437
2438         window.find() can fail when switching case sensitivity
2439         https://bugs.webkit.org/show_bug.cgi?id=53654
2440
2441         Reset the pattern to a safe one when done, to avoid usearch_reset()
2442         indirectly touching the old, stale text pointer.
2443
2444         Test: fast/text/find-window.html
2445
2446         * editing/TextIterator.cpp:
2447         (WebCore::SearchBuffer::~SearchBuffer): leave a safe pattern buffer when done.
2448
2449 2011-02-02  Adam Barth  <abarth@webkit.org>
2450
2451         Reviewed by Daniel Bates.
2452
2453         Teach XSSFilter that <param> elements can contain URLs
2454         https://bugs.webkit.org/show_bug.cgi?id=53652
2455
2456         When loading plugins for the <object> tag, we're "smart" enough to
2457         reach into the <param> elements and pull out the URL in some cases.
2458         This patch teaches the XSSFilter how to block injections into those
2459         sorts of param elements.
2460
2461         Fixes:
2462             http/tests/security/xssAuditor/object-*
2463
2464         * html/HTMLParamElement.cpp:
2465         (WebCore::HTMLParamElement::isURLParameter):
2466         (WebCore::HTMLParamElement::isURLAttribute):
2467         (WebCore::HTMLParamElement::addSubresourceAttributeURLs):
2468         * html/HTMLParamElement.h:
2469             - Add a helper function so that HTMLParamElement can share the
2470               ground truth for these names with the XSSFilter.
2471         * html/parser/XSSFilter.cpp:
2472         (WebCore::XSSFilter::filterTokenInitial):
2473         (WebCore::XSSFilter::filterParamToken):
2474         * html/parser/XSSFilter.h:
2475
2476 2011-02-02  Dimitri Glazkov  <dglazkov@chromium.org>
2477
2478         Reviewed by David Levin.
2479
2480         GCC compiler on ARM issues bogus warnings and fails to compile.
2481         https://bugs.webkit.org/show_bug.cgi?id=53620
2482
2483         Despite warnings explicitly being disallowed (-Wno-uninitialized),
2484         gcc (Ubuntu 4.4.3-4ubuntu5) 4.4.3 throws up the warnings like:
2485
2486         "error: 'colorTransparent.unstatic.4909' may be used uninitialized in this function"
2487
2488         The fix is to add an extra condition, which somehow pacifies the compiler.
2489
2490         * css/CSSPrimitiveValue.cpp:
2491         (WebCore::CSSPrimitiveValue::createColor): Added workaround conditions.
2492
2493 2011-02-02  Adam Barth  <abarth@webkit.org>
2494
2495         Reviewed by Daniel Bates.
2496
2497         Teach XSSFilter about X-XSS-Protection
2498         https://bugs.webkit.org/show_bug.cgi?id=53640
2499
2500         This patch causes us to pass:
2501             http/tests/security/xssAuditor/full-block-*
2502             http/tests/security/xssAuditor/no-protection-script-tag.html
2503
2504         * html/parser/XSSFilter.cpp:
2505         (WebCore::XSSFilter::XSSFilter):
2506         (WebCore::XSSFilter::init):
2507         (WebCore::XSSFilter::filterToken):
2508         * html/parser/XSSFilter.h:
2509
2510 2011-02-02  Adam Barth  <abarth@webkit.org>
2511
2512         Reviewed by Daniel Bates.
2513
2514         When XSSFilter blocks JavaScript URLs, use a safe JavaScript URL
2515         instead of the empty string
2516         https://bugs.webkit.org/show_bug.cgi?id=53643
2517
2518         In a URL context, the empty string completes to the URL of the current
2519         page, which causes these tests to go into an infinite loop.  Instead,
2520         we should use a "safe" JavaScript URL that does nothing.
2521
2522         Fixes:
2523             http/tests/security/xssAuditor/javascript-link*
2524
2525         * html/parser/XSSFilter.cpp:
2526         (WebCore::XSSFilter::eraseDangerousAttributesIfInjected):
2527
2528 2011-02-02  Dan Bernstein  <mitz@apple.com>
2529
2530         Reviewed by Sam Weinig.
2531
2532         <rdar://problem/8380506> REGRESSION (r61921): RTL text in <b> tag doesn't display in WebKit under certain conditions
2533         https://bugs.webkit.org/show_bug.cgi?id=44942
2534
2535         Test: fast/text/bidi-embedding-pop-and-push-same-2.html
2536
2537         * platform/text/BidiResolver.h:
2538         (WebCore::::commitExplicitEmbedding): Changed to return a boolean indicating whether there was
2539         a change to embedding levels.
2540         (WebCore::::createBidiRunsForLine): If embedding levels did not change as a result of committing
2541         the explicit embedding sequence, then runs were not added, and we should continue normally.
2542
2543 2011-02-02  Sam Weinig  <sam@webkit.org>
2544
2545         Reviewed by Dan Bernstein.
2546
2547         Fix miscalculation of the overhang area used for painting. We were
2548         not correctly accounting for scrollbars resulting in an non-negative
2549         overhang even when we weren't over the edge.
2550
2551         * platform/ScrollView.cpp:
2552         (WebCore::ScrollView::calculateOverhangAreasForPainting):
2553
2554 2011-02-02  Jeremy Orlow  <jorlow@chromium.org>
2555
2556         Reviewed by Nate Chapin.
2557
2558         IDBTransaction and IDBRequest can be deleted while ScriptExecutionContext is iterating....which is bad
2559         https://bugs.webkit.org/show_bug.cgi?id=52722
2560
2561         The solution is to change ScriptExecutionContext's destructor to iterate over
2562         the list in a way that handles the mutations. This new method is destructive,
2563         but that's OK since the object is going away. I've also added a several asserts.
2564
2565         There should be no behavior change.
2566
2567         * dom/ScriptExecutionContext.cpp:
2568         (WebCore::ScriptExecutionContext::ScriptExecutionContext):
2569         (WebCore::ScriptExecutionContext::~ScriptExecutionContext):
2570         (WebCore::ScriptExecutionContext::canSuspendActiveDOMObjects):
2571         (WebCore::ScriptExecutionContext::suspendActiveDOMObjects):
2572         (WebCore::ScriptExecutionContext::resumeActiveDOMObjects):
2573         (WebCore::ScriptExecutionContext::stopActiveDOMObjects):
2574         (WebCore::ScriptExecutionContext::createdActiveDOMObject):
2575         (WebCore::ScriptExecutionContext::destroyedActiveDOMObject):
2576         * dom/ScriptExecutionContext.h:
2577         * storage/IDBTransaction.cpp:
2578         (WebCore::IDBTransaction::contextDestroyed):
2579         * storage/IDBTransaction.h:
2580
2581 2011-02-02  Mark Rowe  <mrowe@apple.com>
2582
2583         Build fix.
2584
2585         * WebCore.exp.in: Remove some bogus symbols from the .exp.in file.
2586         * platform/mac/ScrollbarThemeMac.mm:
2587         (WebCore::ScrollbarThemeMac::unregisterScrollbar): Look the object
2588         up in the HashMap rather than relying on a local variable that doesn't
2589         exist.
2590
2591 2011-02-02  Adam Barth  <abarth@webkit.org>
2592
2593         Reviewed by Daniel Bates.
2594
2595         Teach XSSFilter about JavaScript URLs
2596         https://bugs.webkit.org/show_bug.cgi?id=53635
2597
2598         This patch teaches the XSSFilter to check for JavaScript URLs in
2599         attribute values.  If this approach has too many false positives, we
2600         can restrict which attribute names we examine.
2601
2602         Fixes these tests:
2603             http/tests/security/xssAuditor/anchor-url-dom-write-location-javascript-URL.html
2604             http/tests/security/xssAuditor/dom-write-location-javascript-URL.html
2605             http/tests/security/xssAuditor/iframe-javascript-url*
2606
2607         * html/parser/XSSFilter.cpp:
2608         (WebCore::HTMLNames::containsJavaScriptURL):
2609         (WebCore::XSSFilter::filterTokenInitial):
2610         (WebCore::XSSFilter::eraseDangerousAttributesIfInjected):
2611         * html/parser/XSSFilter.h:
2612
2613 2011-02-02  Dan Bernstein  <mitz@apple.com>
2614
2615         Reviewed by Sam Weinig, even though this is just a...
2616
2617         ...build fix.
2618
2619         * platform/mac/ScrollAnimatorMac.mm:
2620         (WebCore::ScrollAnimatorMac::~ScrollAnimatorMac):
2621
2622 2011-02-02  Mark Rowe  <mrowe@apple.com>
2623
2624         Reviewed by Beth Dakin.
2625
2626         <rdar://problem/8952012> Crash on launch inside scrollbar code.
2627
2628         We need to ensure that we remove ourselves as the delegates of objects when we're going
2629         away as failing to do this can lead to crashes if the lifetime of the other objects
2630         is longer than ours.
2631
2632         * platform/mac/ScrollAnimatorMac.mm:
2633         (WebCore::ScrollAnimatorMac::~ScrollAnimatorMac):
2634         * platform/mac/ScrollbarThemeMac.mm:
2635         (WebCore::ScrollbarThemeMac::unregisterScrollbar):
2636
2637 2011-02-02  Beth Dakin  <bdakin@apple.com>
2638
2639         Build fix.
2640
2641         * WebCore.exp.in:
2642
2643 2011-02-02  Patrick Gansterer  <paroga@webkit.org>
2644
2645         Unreviewed WinCE build fix for r77397.
2646
2647         * page/wince/FrameWinCE.cpp:
2648         (WebCore::computePageRectsForFrame):
2649
2650 2011-02-02  Patrick Gansterer  <paroga@webkit.org>
2651
2652         Unreviewed WinCE build fix for r77398.
2653
2654         * platform/graphics/wince/PlatformPathWinCE.cpp:
2655         (WebCore::containsPoint):
2656         (WebCore::inflateRectToContainPoint):
2657         (WebCore::PlatformPath::addRect):
2658         * platform/graphics/wince/SharedBitmap.cpp:
2659         (WebCore::SharedBitmap::drawPattern):
2660         * rendering/RenderThemeWinCE.cpp:
2661         (WebCore::RenderThemeWinCE::paintMenuListButton):
2662         (WebCore::RenderThemeWinCE::paintSearchFieldCancelButton):
2663         (WebCore::RenderThemeWinCE::paintSliderTrack):
2664         (WebCore::RenderThemeWinCE::paintMediaMuteButton):
2665         (WebCore::RenderThemeWinCE::paintMediaPlayButton):
2666         (WebCore::RenderThemeWinCE::paintMediaSeekBackButton):
2667         (WebCore::RenderThemeWinCE::paintMediaSeekForwardButton):
2668
2669 2011-02-02  Jian Li  <jianli@chromium.org>
2670
2671         Reviewed by Kenneth Russell.
2672
2673         [V8] Accessing DataView with index of -1 returns 0, doesn't throw
2674         https://bugs.webkit.org/show_bug.cgi?id=53559
2675
2676         Added test cases to cover this in fast/canvas/webgl/data-view-test.html.
2677
2678         * html/canvas/DataView.h:
2679         (WebCore::DataView::beyondRange):
2680
2681 2011-02-02  Sam Weinig  <sam@webkit.org>
2682
2683         Reviewed by Beth Dakin.
2684
2685         Add ChromeClient function to paint custom overhang areas.
2686         https://bugs.webkit.org/show_bug.cgi?id=53639
2687
2688         * page/Chrome.cpp:
2689         (WebCore::ChromeClient::paintCustomOverhangArea):
2690         * page/ChromeClient.h:
2691         Add ChromeClient function.
2692
2693         * page/FrameView.cpp:
2694         (WebCore::FrameView::paintOverhangAreas):
2695         * page/FrameView.h:
2696         Call out the the ChromeClient, call ScrollView base implementation
2697         if the ChromeClient returns false.
2698
2699         * platform/ScrollView.cpp:
2700         (WebCore::ScrollView::paintOverhangAreas):
2701         * platform/ScrollView.h:
2702         Add dirty rect for use when painting overhang areas.
2703
2704 2011-02-02  Peter Kasting  <pkasting@google.com>
2705
2706         Not reviewed, build fix.
2707
2708         Fix compile after r77427.
2709         https://bugs.webkit.org/show_bug.cgi?id=53455
2710
2711         * platform/graphics/qt/ImageDecoderQt.cpp:
2712         (WebCore::ImageDecoderQt::internalHandleCurrentImage):
2713         * platform/image-decoders/ImageDecoder.cpp:
2714         (WebCore::ImageFrame::operator=):
2715         * platform/image-decoders/bmp/BMPImageReader.cpp:
2716         (WebCore::BMPImageReader::decodeBMP):
2717         * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
2718         (WebCore::JPEGImageDecoder::outputScanlines):
2719         * platform/image-decoders/png/PNGImageDecoder.cpp:
2720         (WebCore::PNGImageDecoder::rowAvailable):
2721         * platform/image-decoders/webp/WEBPImageDecoder.cpp:
2722         (WebCore::WEBPImageDecoder::decode):
2723
2724 2011-02-02  Peter Kasting  <pkasting@google.com>
2725
2726         Reviewed by David Levin.
2727
2728         Clean up ImageDecoder's comments (remove/trim/clarify).
2729         https://bugs.webkit.org/show_bug.cgi?id=53455
2730
2731         This also renames or eliminates a couple of functions for clarity, and
2732         switches a couple erroneous strncmp() calls to memcmp().
2733
2734         * platform/image-decoders/ImageDecoder.cpp:
2735         (WebCore::ImageDecoder::create):
2736         (WebCore::ImageFrame::clearPixelData):
2737         (WebCore::ImageFrame::zeroFillPixelData):
2738         (WebCore::ImageFrame::setSize):
2739         * platform/image-decoders/ImageDecoder.h:
2740         (WebCore::ImageFrame::originalFrameRect):
2741         (WebCore::ImageFrame::setOriginalFrameRect):
2742         (WebCore::ImageDecoder::ImageDecoder):
2743         (WebCore::ImageDecoder::~ImageDecoder):
2744         (WebCore::ImageDecoder::isSizeAvailable):
2745         (WebCore::ImageDecoder::size):
2746         (WebCore::ImageDecoder::setIgnoreGammaAndColorProfile):
2747         (WebCore::ImageDecoder::clearFrameBufferCache):
2748         (WebCore::ImageDecoder::isOverSize):
2749         * platform/image-decoders/bmp/BMPImageReader.cpp:
2750         (WebCore::BMPImageReader::processNonRLEData):
2751         * platform/image-decoders/cg/ImageDecoderCG.cpp:
2752         (WebCore::ImageFrame::setSize):
2753         * platform/image-decoders/gif/GIFImageDecoder.cpp:
2754         (WebCore::GIFImageDecoder::clearFrameBufferCache):
2755         (WebCore::GIFImageDecoder::frameComplete):
2756         (WebCore::GIFImageDecoder::initFrameBuffer):
2757         * platform/image-decoders/jpeg/JPEGImageDecoder.h:
2758         * platform/image-decoders/qt/ImageFrameQt.cpp:
2759         (WebCore::ImageFrame::operator=):
2760         (WebCore::ImageFrame::clearPixelData):
2761         (WebCore::ImageFrame::zeroFillPixelData):
2762         (WebCore::ImageFrame::setSize):
2763         * platform/image-decoders/skia/ImageDecoderSkia.cpp:
2764         (WebCore::ImageFrame::operator=):
2765         (WebCore::ImageFrame::clearPixelData):
2766         (WebCore::ImageFrame::zeroFillPixelData):
2767         (WebCore::ImageFrame::setSize):
2768         * platform/image-decoders/webp/WEBPImageDecoder.h:
2769
2770 2011-02-02  Vangelis Kokkevis  <vangelis@chromium.org>
2771
2772         [chromium] Adding support for reflections to the accelerated
2773         compositing path.
2774         https://bugs.webkit.org/show_bug.cgi?id=53179
2775
2776         All layout tests in compositing/reflections generate correct
2777         results with the exception of:
2778         1. nested-reflection-anchor-point.html : There appears to be
2779            some issue with the layer transform math that I haven't been
2780            able to track down yet.
2781         2. reflection-opacity.html : The current implementation applies
2782            opacity before doing the reflection which makes this test
2783            produce incorrect results.  This will affect reflected layers
2784            with opacity that overlap their original layer.  FIXME comment
2785            added in the code.
2786
2787         Tests: Covered by existing layout tests in compositing/reflections.
2788                Please see above for exceptions.
2789
2790         * platform/graphics/chromium/GraphicsLayerChromium.cpp:
2791         (WebCore::GraphicsLayerChromium::setReplicatedByLayer):
2792         (WebCore::GraphicsLayerChromium::updateAnchorPoint):
2793         * platform/graphics/chromium/GraphicsLayerChromium.h:
2794         * platform/graphics/chromium/LayerChromium.cpp:
2795         (WebCore::LayerChromium::LayerChromium):
2796         * platform/graphics/chromium/LayerChromium.h:
2797         (WebCore::LayerChromium::setReplicaLayer):
2798         (WebCore::LayerChromium::replicaLayer):
2799         * platform/graphics/chromium/LayerRendererChromium.cpp:
2800         (WebCore::LayerRendererChromium::updateLayersRecursive):
2801         (WebCore::LayerRendererChromium::drawLayer):
2802         * platform/graphics/chromium/RenderSurfaceChromium.cpp:
2803         (WebCore::RenderSurfaceChromium::drawableContentRect):
2804         (WebCore::RenderSurfaceChromium::drawSurface):
2805         (WebCore::RenderSurfaceChromium::draw):
2806         * platform/graphics/chromium/RenderSurfaceChromium.h:
2807         (WebCore::RenderSurfaceChromium::drawTransform):
2808
2809 2011-02-02  Xiyuan Xia  <xiyuan@chromium.org>
2810
2811         Reviewed by Tony Chang.
2812
2813         [Chromium] Select popup with padding has white strip on right
2814         https://bugs.webkit.org/show_bug.cgi?id=53602
2815
2816         No new tests as this change restores old behavior.
2817
2818         * platform/chromium/PopupMenuChromium.cpp:
2819         (WebCore::PopupListBox::layout):
2820
2821 2011-02-02  Beth Dakin  <bdakin@apple.com>
2822
2823         Reviewed by Mark Rowe.
2824
2825         Fix for <rdar://problem/8950343> CrashTracer: [USER]
2826         1 crash in WebProcess at com.apple.WebCore: 
2827         WebCore::ScrollbarThemeMac::unregisterScrollbar + 22
2828
2829         It is possible for a Scrollbar's ScrollableArea to be null,
2830         so we must null check.
2831         * platform/mac/ScrollbarThemeMac.mm:
2832         (WebCore::ScrollbarThemeMac::registerScrollbar):
2833         (WebCore::ScrollbarThemeMac::unregisterScrollbar):
2834
2835 2011-02-02  Zhenyao Mo  <zmo@google.com>
2836
2837         Reviewed by Kenneth Russell.
2838
2839         bufferData and bufferSubData should generate INVALID_VALUE with negative input
2840         https://bugs.webkit.org/show_bug.cgi?id=53626
2841
2842         * html/canvas/WebGLRenderingContext.cpp:
2843         (WebCore::WebGLRenderingContext::bufferData):
2844         (WebCore::WebGLRenderingContext::bufferSubData):
2845
2846 2011-02-02  Jeff Miller  <jeffm@apple.com>
2847
2848         Reviewed by Darin Adler and Steve Falkenburg.
2849
2850         Add DerivedSources.make to some Visual Studio projects
2851         https://bugs.webkit.org/show_bug.cgi?id=53607
2852
2853         * WebCore.vcproj/WebCoreGenerated.vcproj: Add DerivedSources.make.
2854
2855 2011-02-02  Cris Neckar  <cdn@chromium.org>
2856
2857         Reviewed by James Robinson.
2858
2859         Refcount domwindows when dispatching device orientation events.
2860         https://bugs.webkit.org/show_bug.cgi?id=53623
2861
2862         Test: fast/events/device-orientation-crash.html
2863
2864         * dom/DeviceMotionController.cpp:
2865         (WebCore::DeviceMotionController::timerFired):
2866         (WebCore::DeviceMotionController::didChangeDeviceMotion):
2867         * dom/DeviceMotionController.h:
2868         * dom/DeviceOrientationController.cpp:
2869         (WebCore::DeviceOrientationController::timerFired):
2870         (WebCore::DeviceOrientationController::didChangeDeviceOrientation):
2871         * dom/DeviceOrientationController.h:
2872
2873 2011-02-02  Zhenyao Mo  <zmo@google.com>
2874
2875         Reviewed by Kenneth Russell.
2876
2877         A deleted object should never been bound again
2878         https://bugs.webkit.org/show_bug.cgi?id=53604
2879
2880         * html/canvas/WebGLRenderingContext.cpp:
2881         (WebCore::WebGLRenderingContext::checkObjectToBeBound): Helper function to bind* and useProgram.
2882         (WebCore::WebGLRenderingContext::bindBuffer): Use checkObjectToBeBound.
2883         (WebCore::WebGLRenderingContext::bindFramebuffer): Ditto.
2884         (WebCore::WebGLRenderingContext::bindRenderbuffer): Ditto.
2885         (WebCore::WebGLRenderingContext::bindTexture): Ditto, also check the target matching.
2886         (WebCore::WebGLRenderingContext::deleteObject): Helper funtion to delete*.
2887         (WebCore::WebGLRenderingContext::deleteBuffer): Use deleteObject.
2888         (WebCore::WebGLRenderingContext::deleteFramebuffer): Ditto.
2889         (WebCore::WebGLRenderingContext::deleteProgram): Ditto.
2890         (WebCore::WebGLRenderingContext::deleteRenderbuffer): Ditto.
2891         (WebCore::WebGLRenderingContext::deleteShader): Ditto.
2892         (WebCore::WebGLRenderingContext::deleteTexture): Ditto.
2893         (WebCore::WebGLRenderingContext::useProgram): Use checkObjectToBeBound.
2894         * html/canvas/WebGLRenderingContext.h:
2895         * html/canvas/WebGLTexture.h:
2896         (WebCore::WebGLTexture::getTarget): Accessor to cached target.
2897
2898 2011-02-02  Alejandro G. Castro  <alex@igalia.com>
2899
2900         Unreviewed Efl buildfix after r77399.
2901
2902         * CMakeListsEfl.txt:
2903
2904 2011-02-02  Kenneth Russell  <kbr@google.com>
2905
2906         Reviewed by James Robinson.
2907
2908         Rename Typed Array subset to subarray
2909         https://bugs.webkit.org/show_bug.cgi?id=53618
2910
2911         * html/canvas/Float32Array.cpp:
2912         (WebCore::Float32Array::subarray):
2913         * html/canvas/Float32Array.h:
2914         * html/canvas/Float32Array.idl:
2915         * html/canvas/Int16Array.cpp:
2916         (WebCore::Int16Array::subarray):
2917         * html/canvas/Int16Array.h:
2918         * html/canvas/Int16Array.idl:
2919         * html/canvas/Int32Array.cpp:
2920         (WebCore::Int32Array::subarray):
2921         * html/canvas/Int32Array.h:
2922         * html/canvas/Int32Array.idl:
2923         * html/canvas/Int8Array.cpp:
2924         (WebCore::Int8Array::subarray):
2925         * html/canvas/Int8Array.h:
2926         * html/canvas/Int8Array.idl:
2927         * html/canvas/TypedArrayBase.h:
2928         (WebCore::TypedArrayBase::subarrayImpl):
2929         * html/canvas/Uint16Array.cpp:
2930         (WebCore::Uint16Array::subarray):
2931         * html/canvas/Uint16Array.h:
2932         * html/canvas/Uint16Array.idl:
2933         * html/canvas/Uint32Array.cpp:
2934         (WebCore::Uint32Array::subarray):
2935         * html/canvas/Uint32Array.h:
2936         * html/canvas/Uint32Array.idl:
2937         * html/canvas/Uint8Array.cpp:
2938         (WebCore::Uint8Array::subarray):
2939         * html/canvas/Uint8Array.h:
2940         * html/canvas/Uint8Array.idl:
2941
2942 2011-02-02  Adam Barth  <abarth@webkit.org>
2943
2944         Reviewed by Eric Seidel.
2945
2946         Add an empty file for Content Security Policy
2947         https://bugs.webkit.org/show_bug.cgi?id=53573
2948
2949         Posting this as a separate patch because editing the build files is so
2950         painful.
2951
2952         * Android.mk:
2953         * CMakeLists.txt:
2954         * GNUmakefile.am:
2955         * WebCore.gypi:
2956         * WebCore.pro:
2957         * WebCore.vcproj/WebCore.vcproj:
2958         * WebCore.xcodeproj/project.pbxproj:
2959
2960 2011-02-02  Dan Winship  <danw@gnome.org>
2961
2962         Reviewed by Martin Robinson.
2963
2964         [GTK] remove old data: URI handler, fix the SoupRequest-based one
2965         to pass tests
2966         https://bugs.webkit.org/show_bug.cgi?id=50885
2967
2968         * platform/network/soup/ResourceHandleSoup.cpp:
2969         (WebCore::sendRequestCallback): Do content-type sniffing here for
2970         non-HTTP requests.
2971         (WebCore::startHTTPRequest): Rename to match WebKit style.
2972         (WebCore::ResourceHandle::start): Pass everything except HTTP to
2973         startNonHTTPRequest, letting the SoupRequester decide whether it's
2974         supported or not.
2975         (WebCore::startNonHTTPRequest): Remove some old pre-SoupRequester
2976         code that was a no-op for file: URIs, but would break some data:
2977         URIs.
2978
2979 2011-02-02  Dimitri Glazkov  <dglazkov@chromium.org>
2980
2981         Update even more references to right() and bottom() in Chromium. Sheesh.
2982
2983         * platform/graphics/chromium/LayerRendererChromium.cpp:
2984         (WebCore::LayerRendererChromium::getFramebufferPixels): Replaced bottom/right with maxY/maxX.
2985
2986 2011-02-02  Alejandro G. Castro  <alex@igalia.com>
2987
2988         Unreviewed Gtk3 buildfix after r77286.
2989
2990         https://bugs.webkit.org/show_bug.cgi?id=53520
2991         Remove the physical terminology from IntRect and FloatRect.
2992
2993         * platform/gtk/RenderThemeGtk3.cpp:
2994         (WebCore::RenderThemeGtk::paintMenuList):
2995
2996 2011-02-02  Anders Carlsson  <andersca@apple.com>
2997
2998         Fix build.
2999
3000         * platform/mac/ScrollAnimatorMac.mm:
3001         (WebCore::ScrollAnimatorMac::pinnedInDirection):
3002
3003 2011-02-02  David Hyatt  <hyatt@apple.com>
3004
3005         Reviewed by Dan Bernstein.
3006
3007         https://bugs.webkit.org/show_bug.cgi?id=53619
3008
3009         Floats should not use physical terminology for their rects. Replace left/top with x/y and right/bottom
3010         with maxX/maxY.  This matches IntRect.
3011
3012         * rendering/RenderBlock.cpp:
3013         (WebCore::RenderBlock::addOverflowFromFloats):
3014         (WebCore::RenderBlock::flipFloatForWritingMode):
3015         (WebCore::RenderBlock::paintFloats):
3016         (WebCore::RenderBlock::selectionGaps):
3017         (WebCore::RenderBlock::addOverhangingFloats):
3018         (WebCore::RenderBlock::addIntrudingFloats):
3019         (WebCore::RenderBlock::hitTestFloats):
3020         (WebCore::RenderBlock::adjustForBorderFit):
3021         * rendering/RenderBlock.h:
3022         (WebCore::RenderBlock::FloatingObject::x):
3023         (WebCore::RenderBlock::FloatingObject::maxX):
3024         (WebCore::RenderBlock::FloatingObject::y):
3025         (WebCore::RenderBlock::FloatingObject::maxY):
3026         (WebCore::RenderBlock::FloatingObject::setX):
3027         (WebCore::RenderBlock::FloatingObject::setY):
3028         (WebCore::RenderBlock::logicalTopForFloat):
3029         (WebCore::RenderBlock::logicalBottomForFloat):
3030         (WebCore::RenderBlock::logicalLeftForFloat):
3031         (WebCore::RenderBlock::logicalRightForFloat):
3032         (WebCore::RenderBlock::setLogicalTopForFloat):
3033         (WebCore::RenderBlock::setLogicalLeftForFloat):
3034         (WebCore::RenderBlock::xPositionForFloatIncludingMargin):
3035         (WebCore::RenderBlock::yPositionForFloatIncludingMargin):
3036
3037 2011-02-02  Dimitri Glazkov  <dglazkov@chromium.org>
3038
3039         Update more references to right() and bottom() in Chromium Win.
3040
3041         * platform/graphics/chromium/TransparencyWin.cpp:
3042         (WebCore::TransparencyWin::compositeOpaqueComposite): Replaced bottom/right with maxY/maxX.
3043         (WebCore::TransparencyWin::compositeTextComposite): Ditto.
3044         * rendering/RenderThemeChromiumWin.cpp:
3045         (WebCore::RenderThemeChromiumWin::paintMenuList): Ditto.
3046
3047 2011-02-02  Adam Roben  <aroben@apple.com>
3048
3049         Encode/decode FormData and FormDataElement objects consistently
3050
3051         Fixes <http://webkit.org/b/53615> <rdar://problem/8943346> WebKit2: Restoring session state
3052         that contains form data fails (asserts in Debug build)
3053
3054         To prevent this from interfering with WebKit2 testing, it's useful to get this into a build
3055         now, even though we don't have an automated test for it yet. Writing a test is covered by
3056         <http://webkit.org/b/53616>.
3057
3058         Reviewed by Darin Adler.
3059
3060         * history/HistoryItem.cpp: Bump the encoding version, since this patch changes how we encode
3061         FormData objects.
3062
3063         * platform/network/FormData.cpp:
3064         (WebCore::decode): Decode the type from the Decoder, rather than getting it from the
3065         default-constructed FormDataElement. Failing to do this meant that all future uses of the
3066         Decoder would be reading from an unexpected part of the buffer (i.e., the next decode would
3067         start by reading the uint32_t that we forgot to decode here, and so on). We already had code
3068         to correctly set the FormDataElement's type based on this decoded type later in the
3069         function.
3070         (WebCore::FormData::encodeForBackForward): Encode m_identifier as an int64_t, since that
3071         matches its type and how we decode it.
3072
3073 2011-02-02  Dan Winship  <danw@gnome.org>
3074
3075         Reviewed by Martin Robinson.
3076
3077         [GTK] drop soup cache stuff, which has been moved to libsoup
3078         https://bugs.webkit.org/show_bug.cgi?id=50747
3079
3080         Use libsoup-based cache/requester API and remove the WebCore version
3081         of this functionality. This has been pushed upstream fully.
3082
3083         No new tests because this should not change functionality.
3084
3085         * GNUmakefile.am: Update for removed files.
3086         * platform/network/ResourceHandleInternal.h:
3087         (WebCore::ResourceHandleInternal::ResourceHandleInternal): Update
3088         type names, drop m_requester.
3089         * platform/network/soup/ResourceHandleSoup.cpp:
3090         (WebCore::ensureSessionIsInitialized): Add a SoupRequester to the
3091         session.
3092         (WebCore::parseDataUrl):
3093         (WebCore::startHttp): Get the requester from the session rather
3094         than using m_requester.
3095         (WebCore::sendRequestCallback):
3096         (WebCore::ResourceHandle::platformSetDefersLoading):
3097         (WebCore::readCallback):
3098         (WebCore::startGio): Update type names.
3099         * platform/network/soup/cache/soup-directory-input-stream.c: Removed.
3100         * platform/network/soup/cache/soup-directory-input-stream.h: Removed.
3101         * platform/network/soup/cache/soup-http-input-stream.c: Removed.
3102         * platform/network/soup/cache/soup-http-input-stream.h: Removed.
3103         * platform/network/soup/cache/soup-request-data.c: Removed.
3104         * platform/network/soup/cache/soup-request-data.h: Removed.
3105         * platform/network/soup/cache/soup-request-file.c: Removed.
3106         * platform/network/soup/cache/soup-request-file.h: Removed.
3107         * platform/network/soup/cache/soup-request-http.c: Removed.
3108         * platform/network/soup/cache/soup-request-http.h: Removed.
3109         * platform/network/soup/cache/soup-request.c: Removed.
3110         * platform/network/soup/cache/soup-request.h: Removed.
3111         * platform/network/soup/cache/soup-requester.c: Removed.
3112         * platform/network/soup/cache/soup-requester.h: Removed.
3113         * platform/network/soup/cache/webkit/soup-cache-private.h: Removed.
3114         * platform/network/soup/cache/webkit/soup-cache.c: Removed.
3115         * platform/network/soup/cache/webkit/soup-cache.h: Removed.
3116
3117 2011-02-02  David Hyatt  <hyatt@apple.com>
3118
3119         Reviewed by Darin Adler.
3120
3121         https://bugs.webkit.org/show_bug.cgi?id=53520
3122
3123         Remove physical accessors from IntRect and FloatRect.
3124
3125         * page/FrameView.cpp:
3126         (WebCore::FrameView::adjustPageHeightDeprecated):
3127         * platform/graphics/FloatRect.h:
3128         * platform/graphics/IntRect.h:
3129
3130 2011-02-02  David Hyatt  <hyatt@apple.com>
3131
3132         Reviewed by Dan Bernstein.
3133
3134         https://bugs.webkit.org/show_bug.cgi?id=53614
3135
3136         Remove physical terminology from overflow.  Replace with minX/maxX/minY/maxY.
3137
3138         * rendering/InlineFlowBox.cpp:
3139         (WebCore::InlineFlowBox::addBoxShadowVisualOverflow):
3140         (WebCore::InlineFlowBox::addTextBoxVisualOverflow):
3141         * rendering/InlineFlowBox.h:
3142         (WebCore::InlineFlowBox::minYLayoutOverflow):
3143         (WebCore::InlineFlowBox::maxYLayoutOverflow):
3144         (WebCore::InlineFlowBox::minXLayoutOverflow):
3145         (WebCore::InlineFlowBox::maxXLayoutOverflow):
3146         (WebCore::InlineFlowBox::logicalLeftLayoutOverflow):
3147         (WebCore::InlineFlowBox::logicalRightLayoutOverflow):
3148         (WebCore::InlineFlowBox::logicalTopLayoutOverflow):
3149         (WebCore::InlineFlowBox::logicalBottomLayoutOverflow):
3150         (WebCore::InlineFlowBox::minYVisualOverflow):
3151         (WebCore::InlineFlowBox::maxYVisualOverflow):
3152         (WebCore::InlineFlowBox::minXVisualOverflow):
3153         (WebCore::InlineFlowBox::maxXVisualOverflow):
3154         (WebCore::InlineFlowBox::logicalLeftVisualOverflow):
3155         (WebCore::InlineFlowBox::logicalRightVisualOverflow):
3156         (WebCore::InlineFlowBox::logicalminYVisualOverflow):
3157         (WebCore::InlineFlowBox::logicalmaxYVisualOverflow):
3158         * rendering/RenderBlock.cpp:
3159         (WebCore::RenderBlock::adjustLinePositionForPagination):
3160         * rendering/RenderBlockLineLayout.cpp:
3161         (WebCore::RenderBlock::beforeSideVisualOverflowForLine):
3162         (WebCore::RenderBlock::afterSideVisualOverflowForLine):
3163         (WebCore::RenderBlock::beforeSideLayoutOverflowForLine):
3164         (WebCore::RenderBlock::afterSideLayoutOverflowForLine):
3165         * rendering/RenderBox.cpp:
3166         (WebCore::RenderBox::scrollWidth):
3167         (WebCore::RenderBox::scrollHeight):
3168         * rendering/RenderBox.h:
3169         (WebCore::RenderBox::minYLayoutOverflow):
3170         (WebCore::RenderBox::maxYLayoutOverflow):
3171         (WebCore::RenderBox::minXLayoutOverflow):
3172         (WebCore::RenderBox::maxXLayoutOverflow):
3173         (WebCore::RenderBox::logicalLeftLayoutOverflow):
3174         (WebCore::RenderBox::logicalRightLayoutOverflow):
3175         (WebCore::RenderBox::minYVisualOverflow):
3176         (WebCore::RenderBox::maxYVisualOverflow):
3177         (WebCore::RenderBox::minXVisualOverflow):
3178         (WebCore::RenderBox::maxXVisualOverflow):
3179         (WebCore::RenderBox::logicalLeftVisualOverflow):
3180         (WebCore::RenderBox::logicalRightVisualOverflow):
3181         * rendering/RenderInline.cpp:
3182         (WebCore::RenderInline::linesVisualOverflowBoundingBox):
3183         * rendering/RenderLayerCompositor.cpp:
3184         (WebCore::RenderLayerCompositor::ensureRootPlatformLayer):
3185         * rendering/RenderLineBoxList.cpp:
3186         (WebCore::RenderLineBoxList::anyLineIntersectsRect):
3187         (WebCore::RenderLineBoxList::lineIntersectsDirtyRect):
3188         (WebCore::RenderLineBoxList::paint):
3189         (WebCore::RenderLineBoxList::hitTest):
3190         * rendering/RenderMarquee.cpp:
3191         (WebCore::RenderMarquee::computePosition):
3192         * rendering/RenderOverflow.h:
3193         (WebCore::RenderOverflow::RenderOverflow):
3194         (WebCore::RenderOverflow::minYLayoutOverflow):
3195         (WebCore::RenderOverflow::maxYLayoutOverflow):
3196         (WebCore::RenderOverflow::minXLayoutOverflow):
3197         (WebCore::RenderOverflow::maxXLayoutOverflow):
3198         (WebCore::RenderOverflow::minYVisualOverflow):
3199         (WebCore::RenderOverflow::maxYVisualOverflow):
3200         (WebCore::RenderOverflow::minXVisualOverflow):
3201         (WebCore::RenderOverflow::maxXVisualOverflow):
3202         (WebCore::RenderOverflow::setminYVisualOverflow):
3203         (WebCore::RenderOverflow::visualOverflowRect):
3204         (WebCore::RenderOverflow::move):
3205         (WebCore::RenderOverflow::addVisualOverflow):
3206         (WebCore::RenderOverflow::setVisualOverflow):
3207         * rendering/RenderReplaced.cpp:
3208         (WebCore::RenderReplaced::shouldPaint):
3209         * rendering/RenderTable.cpp:
3210         (WebCore::RenderTable::layout):
3211         (WebCore::RenderTable::paint):
3212         * rendering/RenderTableCell.cpp:
3213         (WebCore::RenderTableCell::clippedOverflowRectForRepaint):
3214         * rendering/RenderTreeAsText.cpp:
3215         (WebCore::writeLayers):
3216         * rendering/RenderView.cpp:
3217         (WebCore::RenderView::docTop):
3218
3219 2011-02-02  Steve Lacey  <sjl@chromium.org>
3220
3221         Reviewed by Eric Carlson.
3222
3223         Implement basic media statistics on media elements.
3224         https://bugs.webkit.org/show_bug.cgi?id=53322
3225
3226         * Configurations/FeatureDefines.xcconfig:
3227         * GNUmakefile.am:
3228         * features.pri:
3229         * html/HTMLMediaElement.cpp:
3230         (WebCore::HTMLMediaElement::webkitAudioBytesDecoded):
3231         (WebCore::HTMLMediaElement::webkitVideoBytesDecoded):
3232         * html/HTMLMediaElement.h:
3233         * html/HTMLMediaElement.idl:
3234         * html/HTMLVideoElement.cpp:
3235         (WebCore::HTMLVideoElement::webkitDecodedFrames):
3236         (WebCore::HTMLVideoElement::webkitDroppedFrames):
3237         * html/HTMLVideoElement.h:
3238         * html/HTMLVideoElement.idl:
3239         * platform/graphics/MediaPlayer.cpp:
3240         (WebCore::MediaPlayer::decodedFrames):
3241         (WebCore::MediaPlayer::droppedFrames):
3242         (WebCore::MediaPlayer::audioBytesDecoded):
3243         (WebCore::MediaPlayer::videoBytesDecoded):
3244         * platform/graphics/MediaPlayer.h:
3245         * platform/graphics/MediaPlayerPrivate.h:
3246         (WebCore::MediaPlayerPrivateInterface::decodedFrames):
3247         (WebCore::MediaPlayerPrivateInterface::droppedFrames):
3248         (WebCore::MediaPlayerPrivateInterface::audioBytesDecoded):
3249         (WebCore::MediaPlayerPrivateInterface::videoBytesDecoded):
3250
3251 2011-02-02  Luiz Agostini  <luiz.agostini@openbossa.org>
3252
3253         Reviewed by David Hyatt.
3254
3255         More conversion from right()/bottom() to maxX()/maxY().
3256
3257         * page/qt/FrameQt.cpp:
3258         (WebCore::Frame::dragImageForSelection):
3259         * platform/graphics/qt/GraphicsContextQt.cpp:
3260         (WebCore::GraphicsContext::roundToDevicePixels):
3261
3262 2011-02-02  Kevin Ollivier  <kevino@theolliviers.com>
3263
3264         [wx] Build fixes for wxWebKit.
3265
3266         * bindings/cpp/WebDOMHTMLDocumentCustom.cpp:
3267         (documentWrite):
3268         * bindings/scripts/CodeGeneratorCPP.pm:
3269         * page/wx/DragControllerWx.cpp:
3270         (WebCore::DragController::dragOperation):
3271         * platform/graphics/wx/FontCustomPlatformData.h:
3272         * platform/graphics/wx/FontPlatformData.h:
3273         (WebCore::FontPlatformData::widthVariant):
3274         * platform/graphics/wx/FontPlatformDataWx.cpp:
3275         (WebCore::FontPlatformData::computeHash):
3276         * platform/graphics/wx/FontWx.cpp:
3277         * platform/graphics/wx/GraphicsContextWx.cpp:
3278         (WebCore::GraphicsContext::fillPath):
3279         (WebCore::GraphicsContext::strokePath):
3280         * platform/wx/RenderThemeWx.cpp:
3281
3282 2011-02-02  David Hyatt  <hyatt@apple.com>
3283
3284         Reviewed by Darin Adler.
3285
3286         More right()/bottom() to maxX()/maxY() conversion.
3287
3288         * page/chromium/FrameChromium.cpp:
3289         (WebCore::Frame::nodeImage):
3290         (WebCore::Frame::dragImageForSelection):
3291
3292 2011-02-02  Sam Weinig  <sam@webkit.org>
3293
3294         Fix windows clean build.
3295
3296         * DerivedSources.make:
3297
3298 2011-02-02  Mikhail Naganov  <mnaganov@chromium.org>
3299
3300         Reviewed by Pavel Feldman.
3301
3302         Web Inspector: [Chromium] Landing detailed heap snapshots, part 2.
3303
3304         https://bugs.webkit.org/show_bug.cgi?id=53606
3305
3306         Display progress while taking a snapshot, and hints while loading
3307         and parsing. This is needed because taking detailed heap snapshots
3308         takes time.
3309
3310         * English.lproj/localizedStrings.js:
3311         * inspector/front-end/DetailedHeapshotView.js:
3312         (WebInspector.DetailedHeapshotProfileType.prototype.buttonClicked):
3313         * inspector/front-end/ProfilesPanel.js:
3314         (WebInspector.ProfilesPanel.prototype._reset):
3315         (WebInspector.ProfilesPanel.prototype._addProfileHeader):
3316         (WebInspector.ProfilesPanel.prototype.getProfiles):
3317         (WebInspector.ProfilesPanel.prototype.loadHeapSnapshot):
3318         (WebInspector.ProfilesPanel.prototype._finishHeapSnapshot.doParse):
3319         (WebInspector.ProfilesPanel.prototype._finishHeapSnapshot):
3320         (WebInspector.ProfilesPanel.prototype.takeHeapSnapshot):
3321         (WebInspector.ProfilesPanel.prototype._reportHeapSnapshotProgress):
3322         * inspector/front-end/SidebarTreeElement.js:
3323         (WebInspector.SidebarTreeElement.prototype.refreshTitles):
3324
3325 2011-02-02  David Hyatt  <hyatt@apple.com>
3326
3327         Reviewed by Darin Adler.
3328
3329         More conversion from right()/bottom() to maxX()/maxY().
3330
3331         * platform/win/PopupMenuWin.cpp:
3332         (WebCore::PopupMenuWin::calculatePositionAndSize):
3333         (WebCore::PopupMenuWin::paint):
3334
3335 2011-02-02  David Hyatt  <hyatt@apple.com>
3336
3337         Reviewed by Darin Adler.
3338
3339         Removal of right()/bottom().  Replace with maxX() and maxY().  Still converting.  Haven't removed yet.
3340
3341         * platform/chromium/PopupMenuChromium.cpp:
3342         (WebCore::PopupContainer::layoutAndCalculateWidgetRect):
3343         (WebCore::PopupListBox::scrollToRevealRow):
3344         (WebCore::PopupListBox::layout):
3345         * platform/graphics/FloatRect.h:
3346         * platform/graphics/IntRect.h:
3347         * platform/graphics/cairo/ImageBufferCairo.cpp:
3348         (WebCore::getImageData):
3349         (WebCore::putImageData):
3350         * platform/graphics/chromium/GLES2Canvas.cpp:
3351         (WebCore::GLES2Canvas::drawTexturedRect):
3352         * platform/graphics/chromium/LayerRendererChromium.cpp:
3353         (WebCore::LayerRendererChromium::verticalScrollbarRect):
3354         (WebCore::LayerRendererChromium::horizontalScrollbarRect):
3355         (WebCore::LayerRendererChromium::setScissorToRect):
3356         (WebCore::LayerRendererChromium::setDrawViewportRect):
3357         * platform/graphics/chromium/LayerTilerChromium.cpp:
3358         (WebCore::LayerTilerChromium::contentRectToTileIndices):
3359         (WebCore::LayerTilerChromium::growLayerToContain):
3360         * platform/graphics/gpu/TilingData.cpp:
3361         (WebCore::TilingData::tileBoundsWithBorder):
3362         (WebCore::TilingData::overlappedTileIndices):
3363         * platform/graphics/qt/ImageBufferQt.cpp:
3364         (WebCore::getImageData):
3365         (WebCore::putImageData):
3366         * platform/graphics/skia/FloatRectSkia.cpp:
3367         (WebCore::FloatRect::operator SkRect):
3368         * platform/graphics/skia/ImageBufferSkia.cpp:
3369         (WebCore::getImageData):
3370         (WebCore::putImageData):
3371         * platform/graphics/skia/IntRectSkia.cpp:
3372         (WebCore::IntRect::operator SkIRect):
3373         (WebCore::IntRect::operator SkRect):
3374         * platform/graphics/skia/PlatformContextSkia.cpp:
3375         (WebCore::PlatformContextSkia::beginLayerClippedToImage):
3376         * platform/graphics/win/GraphicsContextWin.cpp:
3377         (WebCore::GraphicsContextPlatformPrivate::clip):
3378         * platform/graphics/win/IntRectWin.cpp:
3379         (WebCore::IntRect::operator RECT):
3380         * platform/graphics/win/UniscribeController.cpp:
3381         (WebCore::UniscribeController::shapeAndPlaceItem):
3382         * platform/graphics/wince/GraphicsContextWinCE.cpp:
3383         (WebCore::roundRect):
3384         (WebCore::mapRect):
3385         (WebCore::TransparentLayerDC::TransparentLayerDC):
3386         (WebCore::GraphicsContext::drawRect):
3387         (WebCore::GraphicsContext::drawEllipse):
3388         (WebCore::GraphicsContext::strokeArc):
3389         (WebCore::GraphicsContext::clip):
3390         (WebCore::GraphicsContext::clipOut):
3391         (WebCore::GraphicsContext::strokeRect):
3392         * platform/image-decoders/gif/GIFImageDecoder.cpp:
3393         (WebCore::GIFImageDecoder::initFrameBuffer):
3394         * platform/win/PopupMenuWin.cpp:
3395         (WebCore::PopupMenuWin::calculatePositionAndSize):
3396         (WebCore::PopupMenuWin::paint):
3397         * plugins/win/PluginViewWin.cpp:
3398         (WebCore::PluginView::updatePluginWidget):
3399         (WebCore::PluginView::invalidateRect):
3400         * rendering/RenderThemeSafari.cpp:
3401         (WebCore::RenderThemeSafari::paintMenuListButtonGradients):
3402         (WebCore::RenderThemeSafari::paintMenuListButton):
3403         (WebCore::RenderThemeSafari::paintSliderTrack):
3404         * rendering/RenderThemeWin.cpp:
3405         (WebCore::RenderThemeWin::paintInnerSpinButton):
3406         (WebCore::RenderThemeWin::paintMenuListButton):
3407
3408 2011-02-02  Antti Koivisto  <antti@apple.com>
3409
3410         Reviewed by Maciej Stachowiak.
3411
3412         Use Vector instead of a linked list for rules in CSSStyleSelector
3413         https://bugs.webkit.org/show_bug.cgi?id=53581
3414         
3415         - eliminate CSSRuleDataList, replace with Vector<RuleData>
3416         - rename CSSRuleData -> RuleData and CSSRuleSet -> RuleSet 
3417           (these are selector internal classes, CSS prefix is better reserved for public ones).
3418         - constify a bit
3419         - shrink the vectors to fit after collecting the rules
3420
3421         * css/CSSStyleSelector.cpp:
3422         (WebCore::RuleData::RuleData):
3423         (WebCore::RuleData::position):
3424         (WebCore::RuleData::rule):
3425         (WebCore::RuleData::selector):
3426         (WebCore::RuleSet::disableAutoShrinkToFit):
3427         (WebCore::RuleSet::getIDRules):
3428         (WebCore::RuleSet::getClassRules):
3429         (WebCore::RuleSet::getTagRules):
3430         (WebCore::RuleSet::getPseudoRules):
3431         (WebCore::RuleSet::getUniversalRules):
3432         (WebCore::RuleSet::getPageRules):
3433         (WebCore::collectSiblingRulesInDefaultStyle):
3434         (WebCore::CSSStyleSelector::CSSStyleSelector):
3435         (WebCore::loadFullDefaultStyle):
3436         (WebCore::loadSimpleDefaultStyle):
3437         (WebCore::loadViewSourceStyle):
3438         (WebCore::CSSStyleSelector::matchRules):
3439         (WebCore::CSSStyleSelector::matchRulesForList):
3440         (WebCore::operator >):
3441         (WebCore::operator <=):
3442         (WebCore::CSSStyleSelector::sortMatchedRules):
3443         (WebCore::CSSStyleSelector::matchUARules):
3444         (WebCore::RuleSet::RuleSet):
3445         (WebCore::RuleSet::~RuleSet):
3446         (WebCore::RuleSet::addToRuleSet):
3447         (WebCore::RuleSet::addRule):
3448         (WebCore::RuleSet::addPageRule):
3449         (WebCore::RuleSet::addRulesFromSheet):
3450         (WebCore::RuleSet::addStyleRule):
3451         (WebCore::collectIdsAndSiblingRulesFromList):
3452         (WebCore::RuleSet::collectIdsAndSiblingRules):
3453         (WebCore::shrinkMapVectorsToFit):
3454         (WebCore::RuleSet::shrinkToFit):
3455         (WebCore::CSSStyleSelector::matchPageRules):
3456         (WebCore::CSSStyleSelector::matchPageRulesForList):
3457         * css/CSSStyleSelector.h:
3458         (WebCore::CSSStyleSelector::addMatchedRule):
3459
3460 2011-02-02  Andrey Adaikin  <aandrey@google.com>
3461
3462         Reviewed by Pavel Feldman.
3463
3464         Web Inspector: Use DIVs instead of TABLE in TextViewer
3465         https://bugs.webkit.org/show_bug.cgi?id=53299
3466
3467         * inspector/front-end/SourceFrame.js:
3468         (WebInspector.SourceFrame.prototype._createTextViewer):
3469         (WebInspector.SourceFrame.prototype._mouseDown):
3470         * inspector/front-end/TextViewer.js:
3471         (WebInspector.TextViewer):
3472         (WebInspector.TextViewer.prototype.set mimeType):
3473         (WebInspector.TextViewer.prototype.revealLine):
3474         (WebInspector.TextViewer.prototype.addDecoration):
3475         (WebInspector.TextViewer.prototype.removeDecoration):
3476         (WebInspector.TextViewer.prototype.markAndRevealRange):
3477         (WebInspector.TextViewer.prototype.highlightLine):
3478         (WebInspector.TextViewer.prototype.clearLineHighlight):
3479         (WebInspector.TextViewer.prototype.freeCachedElements):
3480         (WebInspector.TextViewer.prototype._handleKeyDown):
3481         (WebInspector.TextViewer.prototype.editLine.finishEditing):
3482         (WebInspector.TextViewer.prototype.editLine):
3483         (WebInspector.TextViewer.prototype.beginUpdates):
3484         (WebInspector.TextViewer.prototype.endUpdates):
3485         (WebInspector.TextViewer.prototype.resize):
3486         (WebInspector.TextViewer.prototype._textChanged):
3487         (WebInspector.TextViewer.prototype._updatePanelOffsets):
3488         (WebInspector.TextViewer.prototype._syncScroll):
3489         (WebInspector.TextViewer.prototype._syncDecorationsForLine):
3490         (WebInspector.TextEditorChunkedPanel):
3491         (WebInspector.TextEditorChunkedPanel.prototype.set syncScrollListener):
3492         (WebInspector.TextEditorChunkedPanel.prototype.get textModel):
3493         (WebInspector.TextEditorChunkedPanel.prototype.addDecoration):
3494         (WebInspector.TextEditorChunkedPanel.prototype.removeDecoration):
3495         (WebInspector.TextEditorChunkedPanel.prototype.revealLine):
3496         (WebInspector.TextEditorChunkedPanel.prototype.makeLineAChunk):
3497         (WebInspector.TextEditorChunkedPanel.prototype.textChanged):
3498         (WebInspector.TextEditorChunkedPanel.prototype.beginUpdates):
3499         (WebInspector.TextEditorChunkedPanel.prototype.endUpdates):
3500         (WebInspector.TextEditorChunkedPanel.prototype.resize):
3501         (WebInspector.TextEditorChunkedPanel.prototype._scroll):
3502         (WebInspector.TextEditorChunkedPanel.prototype._scheduleRepaintAll):
3503         (WebInspector.TextEditorChunkedPanel.prototype._buildChunks):
3504         (WebInspector.TextEditorChunkedPanel.prototype._repaintAll):
3505         (WebInspector.TextEditorChunkedPanel.prototype._chunkNumberForLine):
3506         (WebInspector.TextEditorChunkedPanel.prototype._chunkForLine):
3507         (WebInspector.TextEditorGutterPanel):
3508         (WebInspector.TextEditorGutterPanel.prototype.freeCachedElements):
3509         (WebInspector.TextEditorGutterPanel.prototype._createNewChunk):
3510         (WebInspector.TextEditorGutterPanel.prototype._expandChunks):
3511         (WebInspector.TextEditorGutterChunk):
3512         (WebInspector.TextEditorGutterChunk.prototype.get expanded):
3513         (WebInspector.TextEditorGutterChunk.prototype.set expanded):
3514         (WebInspector.TextEditorGutterChunk.prototype.get height):
3515         (WebInspector.TextEditorGutterChunk.prototype._createRow):
3516         (WebInspector.TextEditorMainPanel):
3517         (WebInspector.TextEditorMainPanel.prototype.set syncDecorationsForLine):
3518         (WebInspector.TextEditorMainPanel.prototype.set mimeType):
3519         (WebInspector.TextEditorMainPanel.prototype.markAndRevealRange):
3520         (WebInspector.TextEditorMainPanel.prototype.highlightLine):
3521         (WebInspector.TextEditorMainPanel.prototype.clearLineHighlight):
3522         (WebInspector.TextEditorMainPanel.prototype.freeCachedElements):
3523         (WebInspector.TextEditorMainPanel.prototype._buildChunks):
3524         (WebInspector.TextEditorMainPanel.prototype._createNewChunk):
3525         (WebInspector.TextEditorMainPanel.prototype._expandChunks):
3526         (WebInspector.TextEditorMainPanel.prototype._highlightDataReady):
3527         (WebInspector.TextEditorMainPanel.prototype._paintLines):
3528         (WebInspector.TextEditorMainPanel.prototype._paintLine):
3529         (WebInspector.TextEditorMainPanel.prototype._releaseLinesHighlight):
3530         (WebInspector.TextEditorMainPanel.prototype._getSelection):
3531         (WebInspector.TextEditorMainPanel.prototype._restoreSelection):
3532         (WebInspector.TextEditorMainPanel.prototype._selectionToPosition):
3533         (WebInspector.TextEditorMainPanel.prototype._positionToSelection):
3534         (WebInspector.TextEditorMainPanel.prototype._appendTextNode):
3535         (WebInspector.TextEditorMainPanel.prototype._handleDomUpdates):
3536         (WebInspector.TextEditorMainChunk):
3537         (WebInspector.TextEditorMainChunk.prototype.addDecoration):
3538         (WebInspector.TextEditorMainChunk.prototype.set expanded):
3539         (WebInspector.TextEditorMainChunk.prototype.get height):
3540         (WebInspector.TextEditorMainChunk.prototype.getExpandedLineRow):
3541         (WebInspector.TextEditorMainChunk.prototype._createRow):
3542         (WebInspector):
3543         * inspector/front-end/textViewer.css:
3544         (.text-editor-lines):
3545         (.text-editor-contents):
3546         (.text-editor-editable):
3547         (.webkit-line-decorations):
3548         (.webkit-line-number):
3549         (.webkit-execution-line.webkit-line-content):
3550         (.diff-container .webkit-added-line.webkit-line-content):
3551         (.diff-container .webkit-removed-line.webkit-line-content):
3552         (.diff-container .webkit-changed-line.webkit-line-content):
3553         (.webkit-highlighted-line.webkit-line-content):
3554
3555 2011-02-02  Hans Wennborg  <hans@chromium.org>
3556
3557         Reviewed by Jeremy Orlow.
3558
3559         IndexedDB: Implement support for cursor updates
3560         https://bugs.webkit.org/show_bug.cgi?id=53421
3561
3562         Implement support for cursor updates using the same pattern as cursor
3563         deletes: forward the calls to the IDBObjectStoreBackend::put().
3564         The put() function's signature needs to be changed to allow for a
3565         "cursor update mode". This makes the signature more clear anyway,
3566         since it replaces the boolean parameter.
3567
3568         Test: storage/indexeddb/cursor-update.html
3569
3570         * storage/IDBCursor.idl:
3571         * storage/IDBCursorBackendImpl.cpp:
3572         (WebCore::IDBCursorBackendImpl::key):
3573