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