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