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