baadf0753931430589a9bb27024effc92e61ade4
[WebKit-https.git] / WebCore / ChangeLog
1 2009-03-12  David Levin  <levin@chromium.org>
2
3         Reviewed by  Darin Fisher.
4
5         Bug 24530: width100percent-searchfield.html should be fixed for chromium.
6         <https://bugs.webkit.org/show_bug.cgi?id=24530>
7
8         Compensate for r39924 in chromium, which broke LayoutTests/fast/replaced/width100percent-searchfield.html
9
10         * css/themeChromiumWin.css: Added.
11         Overrides the changes to start supporting input[type="search"] on Windows (since
12         Chromium doesn't do anything special for this).
13
14         * rendering/RenderThemeChromiumWin.cpp:
15         (WebCore::supportsFocus):
16         (WebCore::RenderThemeChromiumWin::extraDefaultStyleSheet):
17         (WebCore::RenderThemeChromiumWin::determineState):
18         (WebCore::RenderThemeChromiumWin::getThemeData):
19
20 2009-03-12  Greg Bolsinga  <bolsinga@apple.com>
21
22         Reviewed by Antti Koivisto.
23
24         https://bugs.webkit.org/show_bug.cgi?id=24506
25         Geolocation in Safari differs from the spec, no Coordinates attribute on Position
26         
27         Get up to date.
28
29         * DerivedSources.make:
30         * GNUmakefile.am:
31         * WebCore.pro:
32         * WebCore.scons:
33         * WebCore.vcproj/WebCore.vcproj:
34         * WebCore.xcodeproj/project.pbxproj:
35         * WebCoreSources.bkl:
36         * bindings/js/JSGeolocationCustom.cpp:
37         (WebCore::createPositionOptions):
38         * page/Coordinates.cpp: Added.
39         (WebCore::Coordinates::toString):
40         * page/Coordinates.h: Added.
41         (WebCore::Coordinates::create):
42         (WebCore::Coordinates::latitude):
43         (WebCore::Coordinates::longitude):
44         (WebCore::Coordinates::altitude):
45         (WebCore::Coordinates::accuracy):
46         (WebCore::Coordinates::altitudeAccuracy):
47         (WebCore::Coordinates::heading):
48         (WebCore::Coordinates::speed):
49         (WebCore::Coordinates::Coordinates):
50         * page/Coordinates.idl: Added.
51         * page/Geoposition.cpp:
52         (WebCore::Geoposition::toString):
53         * page/Geoposition.h:
54         (WebCore::Geoposition::create):
55         (WebCore::Geoposition::coords):
56         (WebCore::Geoposition::Geoposition):
57         * page/Geoposition.idl:
58         * page/PositionOptions.h:
59         (WebCore::PositionOptions::create):
60         (WebCore::PositionOptions::maximumAge):
61         (WebCore::PositionOptions::setMaximumAge):
62         (WebCore::PositionOptions::PositionOptions):
63         * platform/mac/GeolocationServiceMac.mm:
64         (-[WebCoreCoreLocationObserver locationManager:didUpdateToLocation:fromLocation:]):
65
66 2009-03-12  Dimitri Glazkov  <dglazkov@chromium.org>
67
68         Reviewed by Darin Fisher.
69
70         https://bugs.webkit.org/show_bug.cgi?id=24496
71         Fix console logging of non-string values by coercing the argument to
72         a string, for V8 bindings.
73
74         Test: fast/js/console-non-string-values.html
75
76         * bindings/v8/ScriptValue.cpp: Added toString method.
77         (WebCore::ScriptValue::toString):
78         * bindings/v8/ScriptValue.h: Added PlatformString, ScriptState includes
79             and toString declaration.
80
81 2009-03-12  Darin Fisher  <darin@chromium.org>
82
83         Reviewed by Dimitri Glazkov.
84
85         Eliminate ChromiumBridge::uiResourceProtocol
86         https://bugs.webkit.org/show_bug.cgi?id=24558
87
88         * platform/chromium/ChromiumBridge.h:
89
90 2009-03-12  Greg Bolsinga  <bolsinga@apple.com>
91
92         Reviewed by Simon Fraser.
93
94         Missing breaks in switch statement
95         https://bugs.webkit.org/show_bug.cgi?id=24556
96
97         * platform/mac/GeolocationServiceMac.mm:
98         (-[WebCoreCoreLocationObserver locationManager:didFailWithError:]):
99
100 2009-03-12  Darin Fisher  <darin@chromium.org>
101
102         Reviewed by Dimitri Glazkov.
103
104         https://bugs.webkit.org/show_bug.cgi?id=24554
105         Remove some unused functions from ChromiumBridge.
106
107         * platform/chromium/ChromiumBridge.h:
108
109 2009-03-02  Eric Seidel  <eric@webkit.org>
110
111         Reviewed by Darin Fisher and Justin Garcia.
112
113         Safari crashes during drag and drop in Google presentations
114         due to mutation event handlers removing DOM content during insertNode
115         https://bugs.webkit.org/show_bug.cgi?id=22634
116
117         Added a bunch of "null" checks to make sure nodes are still
118         in the document before we operate on them.  This is an
119         inelegant solution, but it's the best we have for now.
120         
121         Test: editing/selection/crash-on-drag-with-mutation-events.html
122
123         * editing/CompositeEditCommand.cpp:
124         (WebCore::CompositeEditCommand::insertNodeAt):
125         * editing/ReplaceSelectionCommand.cpp:
126         (WebCore::ReplaceSelectionCommand::doApply):
127
128 2009-03-12  Dimitri Glazkov  <dglazkov@chromium.org>
129
130         Reviewed by Adam Treat.
131
132         https://bugs.webkit.org/show_bug.cgi?id=24525
133         REGRESSION: Inspector window doesn't close when inspected page is
134         destroyed. This is a revert of r41158, which became unnecessary when
135         InspectorController became ref-counted in r41462.
136
137         * inspector/InspectorController.cpp:
138         (WebCore::InspectorController::inspectedPageDestroyed): Reset m_inspectedPage
139             after calling close().
140         (WebCore::InspectorController::stopUserInitiatedProfiling): Remove
141             m_inspectedPage check guard around profile logic.
142
143 2009-03-12  Peter Kasting  <pkasting@google.com>
144
145         Reviewed by Darin Fisher.
146
147         https://bugs.webkit.org/show_bug.cgi?id=24502
148         Make horizontal scrolling on Windows always go the correct direction.
149
150         * platform/PlatformWheelEvent.h:
151         * platform/win/WheelEventWin.cpp:
152         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
153
154 2009-03-12  Dimitri Glazkov  <dglazkov@chromium.org>
155
156         Reviewed by Simon Fraser.
157
158         https://bugs.webkit.org/show_bug.cgi?id=24496
159         Fix console logging of non-string values by coercing the argument to
160         a string.
161
162         Test: fast/js/console-non-string-values.html
163
164         * bindings/js/ScriptValue.cpp: Removed PlatformString include.
165         * bindings/js/ScriptValue.h: Added toString method.
166         (WebCore::ScriptValue::toString):
167         * page/Console.cpp:
168         (WebCore::getFirstArgumentAsString): Changed firstArgumentAsString method to use
169             ScriptValue::toString.
170         (WebCore::Console::addMessage): added extra ScriptState argument to callsite.
171         (WebCore::Console::count): Ditto.
172
173 2009-03-12  Simon Fraser  <simon.fraser@apple.com>
174
175         Reviewed by Adele Peterson.
176         
177         https://bugs.webkit.org/show_bug.cgi?id=24508
178         
179         Fix updating of text field with placeholder text when value is set
180         by ensuring that updatePlaceholderVisibility() is called after
181         the value has been updated, not before.
182
183         Test: fast/forms/placeholder-set-value.html
184
185         * html/HTMLInputElement.cpp:
186         (WebCore::HTMLInputElement::setValue):
187
188 2009-03-12  Simon Fraser  <simon.fraser@apple.com>
189
190         Reviewed by Dave Hyatt
191         
192         https://bugs.webkit.org/show_bug.cgi?id=24552
193         
194         Hit testing involving normal flow, self-painting layers (e.g. reflections)
195         was broken because it was not null-testing the result of hitTestLayer(),
196         so bailing early with a nil hit layer.
197
198         Test: fast/layers/normal-flow-hit-test.html
199
200         * rendering/RenderLayer.cpp:
201         (WebCore::RenderLayer::hitTestLayer):
202
203 2009-03-12  Dimitri Glazkov  <dglazkov@chromium.org>
204
205         Reviewed by Cameron Zwarich.
206
207         Removed zero-sized files, left over from improperly applied patch.
208
209         * platform/graphics/chromium/ThemeHelperChromiumWin.cpp: Removed.
210         * platform/graphics/chromium/ThemeHelperChromiumWin.h: Removed.
211
212 2009-03-12  Adam Treat  <adam.treat@torchmobile.com>
213
214         Reviewed by George Staikos.
215
216         Do not ignore alpha color in optimization.  Hard to believe, but there
217         are websites that fill the entire page with a tiled image consisting of
218         nothing but a 100% transparent 1x1 image. <cough>orbitz.com</cough>
219
220         * platform/graphics/qt/ImageQt.cpp:
221         (WebCore::BitmapImage::checkForSolidColor):
222
223 2009-03-12  Julien Chaffraix  <jchaffraix@webkit.org>
224
225         Reviewed by Darin Adler.
226
227         Bug 24110: cloneNode should call cloneElement and not the reverse
228
229         - Splitted the code from cloneNode into cloneElementWithChildren and cloneElementWithChildren.
230           Now cloneNode calls one of the 2 previous methods.
231
232         - Renamed cloneElement to cloneElementWithoutChildren as it was the previous behaviour.
233
234         - Moved cloneNode to the Element private section so that WebCore callers cannot use it.
235
236         - Removed Element::cloneNode usage through WebCore.
237
238         * dom/Element.cpp:
239         (WebCore::Element::cloneNode): Moved to Element's private section and it
240         now calls the two next methods.
241         (WebCore::Element::cloneElementWithChildren): Added.
242         (WebCore::Element::cloneElementWithoutChildren): Renamed from cloneElement
243         to avoid ambiguity.
244         * dom/Element.h:
245
246         * editing/ApplyStyleCommand.cpp:
247         (WebCore::ApplyStyleCommand::addInlineStyleIfNeeded): Changed call to cloneElement
248         to call to cloneElementWithoutChildren.
249         * editing/BreakBlockquoteCommand.cpp:
250         (WebCore::BreakBlockquoteCommand::doApply): Ditto.
251         * editing/IndentOutdentCommand.cpp:
252         (WebCore::IndentOutdentCommand::indentRegion): Ditto.
253         * editing/InsertParagraphSeparatorCommand.cpp:
254         (WebCore::InsertParagraphSeparatorCommand::doApply): Ditto.
255         * editing/ModifySelectionListLevel.cpp:
256         (WebCore::IncreaseSelectionListLevelCommand::doApply): Ditto.
257         * editing/SplitElementCommand.cpp:
258         (WebCore::SplitElementCommand::doApply): Ditto.
259         * editing/markup.cpp:
260         (WebCore::createFragmentFromText): Ditto.
261         * svg/SVGUseElement.cpp:
262         (WebCore::SVGUseElement::buildShadowTree): Ditto.
263         (WebCore::SVGUseElement::expandUseElementsInShadowTree): Ditto.
264
265 2009-03-12  Dirk Schulze  <krit@webkit.org>
266
267         Reviewed by Oliver Hunt.
268
269         Fixed a crash on the 1x1 pixel check for background image in gtk.
270         We need to load the image first and need to be sure that the image
271         is not null before checking the type. 
272
273         * platform/graphics/cairo/ImageCairo.cpp:
274         (WebCore::BitmapImage::checkForSolidColor):
275
276 2009-03-12  Xan Lopez  <xlopez@igalia.com>
277
278         Reviewed by Alexey Proskuryakov.
279
280         https://bugs.webkit.org/show_bug.cgi?id=24544
281         Rename setUrl to setURL
282
283         Use proper case for setUrl method, rename it to setURL.
284
285         * platform/network/ResourceResponseBase.cpp:
286         (WebCore::ResourceResponseBase::adopt):
287         * platform/network/ResourceResponseBase.h:
288         * platform/network/curl/ResourceHandleManager.cpp:
289         (WebCore::writeCallback):
290         (WebCore::headerCallback):
291         * platform/network/soup/ResourceHandleSoup.cpp:
292         (WebCore::fillResponseFromMessage):
293         (WebCore::queryInfoCallback):
294
295 2009-03-12  Xan Lopez  <xlopez@igalia.com>
296
297         Reviewed by Alexey Proskuryakov.
298
299         https://bugs.webkit.org/show_bug.cgi?id=24519
300         [GTK] Use two argument KURL ctor in ResourceHandleSoup
301
302         Use two argument KURL ctor, the single argument ctor expects its
303         input to be the output of a previous KURL::parse call, which is
304         not the case here.
305
306         * platform/network/soup/ResourceHandleSoup.cpp:
307         (WebCore::fillResponseFromMessage):
308         (WebCore::queryInfoCallback):
309
310 2009-03-11  Jon Honeycutt  <jhoneycutt@apple.com>
311
312         Fix for <rdar://6418681>
313         https://bugs.webkit.org/show_bug.cgi?id=22644
314
315         Reviewed by Steve Falkenburg.
316
317         * plugins/win/PluginPackageWin.cpp:
318         (WebCore::PluginPackage::isPluginBlacklisted): Add the Citrix ICA
319         Client plug-in to the blacklist; it requires a Mozilla-based browser.
320
321 2009-03-12  Oliver Hunt  <oliver@apple.com>
322
323         Reviewed by NOBODY (build fix).
324
325         build fix.
326
327         * html/CanvasRenderingContext2D.h:
328
329 2009-03-11  Oliver Hunt  <oliver@apple.com>
330
331         Reviewed by Adele Peterson.
332
333         <rdar://problem/6673852> Widget "Simple World Clock" does not display with Safari 4
334
335         A number of dashboard widgets rely on canvas failing silently when given invalid
336         colors for gradient stops, but both the spec and firefox throw exceptions here.
337         So we work around this by creating a dashboard quirk that will only suppress the
338         exception in dashboard compatibility mode.
339
340         Test: fast/canvas/canvas-gradient-addStop-error.html
341
342         * html/CanvasGradient.cpp:
343         (WebCore::CanvasGradient::CanvasGradient):
344         (WebCore::CanvasGradient::addColorStop):
345         * html/CanvasGradient.h:
346         (WebCore::CanvasGradient::setDashboardCompatibilityMode):
347         * html/CanvasRenderingContext2D.cpp:
348         (WebCore::CanvasRenderingContext2D::prepareGradientForDashboard):
349         (WebCore::CanvasRenderingContext2D::createLinearGradient):
350         (WebCore::CanvasRenderingContext2D::createRadialGradient):
351         * html/CanvasRenderingContext2D.h:
352
353 2009-03-11  David Kilzer  <ddkilzer@apple.com>
354
355         Clarify comments regarding order of FEATURE_DEFINES
356
357         Rubber-stamped by Mark Rowe.
358
359         * Configurations/WebCore.xcconfig: Added warning about the
360         consequences when FEATURE_DEFINES are not kept in sync.
361
362 2009-03-11  Gustavo Noronha Silva  <gns@gnome.org>
363
364         Reviewed by Holger Freyther.
365
366         https://bugs.webkit.org/show_bug.cgi?id=24515
367         [GTK] soup backend should use GMappedFile instead of mmap directly
368
369         Rewrite mmap code used to upload files to use GMappedFile, so that
370         it is platform-independent.
371
372         * platform/network/soup/ResourceHandleSoup.cpp:
373         (WebCore::ResourceHandle::startHttp):
374
375 2009-03-11  Dan Bernstein  <mitz@apple.com>
376
377         Reviewed by Darin Adler.
378
379         - WebCore part of fixing <rdar://problem/3919124> Thai text selection
380           in Safari is incorrect
381
382         Test: platform/mac/editing/selection/word-thai.html
383
384         Tested on Mac, but should work on all ICU platforms (or more precisely
385         on all platforms that implement
386         WTF::Unicode::hasLineBreakingPropertyComplexContext() correctly).
387
388         * editing/TextIterator.cpp:
389         (WebCore::BackwardsCharacterIterator::BackwardsCharacterIterator):
390         Added.
391         (WebCore::BackwardsCharacterIterator::range): Added.
392         (WebCore::BackwardsCharacterIterator::advance): Added.
393
394         * editing/TextIterator.h: Added BackwardsCharacterIterator with the
395         minimal functionality required for this patch.
396         (WebCore::BackwardsCharacterIterator::atEnd): Added.
397
398         * editing/visible_units.cpp:
399         (WebCore::firstNonComplexContextLineBreak): Added this helper function
400         that returns the index of the first character in the string whose
401         Unicode line breaking property value is not SA ("Complex Context"), or
402         the length of the string if there is no such character.
403         (WebCore::lastNonComplexContextLineBreak): Added this helper function
404         that returns the index of the last character in the string whose
405         Unicode line breaking property value is not SA ("Complex Context"), or
406         -1 if there is no such character.
407         (WebCore::previousBoundary): Changed the signature of the search
408         function to include an offset parameter. Renamed the 'exception' local
409         variable to 'ec' and changed its type to ExceptionCode. Extend the
410         string forwards until the first character with Unicode line breaking
411         property value other than SA. This gives the boundary search function
412         enough context in the forward direction. Changed to use a
413         BackwardsCharacterIterator for translating the backwards offset into
414         a position.
415         (WebCore::nextBoundary): Changed the signature of the search
416         function to include an offset parameter. Extend the string backwards
417         until the first character with Unicode line breaking property value
418         other than SA. This gives the boundary search function enough context in
419         the backwards direction. Restricted the workaround for <rdar://5192593>
420         only to the line break case, because it was causing an extra character
421         to be selected following a word that ended with a combining mark.
422         (WebCore::startWordBoundary): Added an offset parameter. Check that
423         going backwards from the given offset, there is a character with Unicode
424         line breaking property value other than SA, and otherwise return 0 to
425         request more context.
426         (WebCore::endWordBoundary): Similar, but in reverse.
427         (WebCore::previousWordPositionBoundary): Similar.
428         (WebCore::nextWordPositionBoundary): Similar.
429         (WebCore::startSentenceBoundary): Updated for the new search function
430         signature.
431         (WebCore::endSentenceBoundary): Ditto.
432         (WebCore::previousSentencePositionBoundary): Ditto.
433         (WebCore::nextSentencePositionBoundary): Ditto.
434
435 2009-03-11  Darin Adler  <darin@apple.com>
436
437         Reviewed by Mark Rowe.
438
439         Don't use "::" in thread names because it is ugly!
440
441         * loader/icon/IconDatabase.cpp:
442         (WebCore::IconDatabase::open): Use "WebCore: " instead of "WebCore::".
443         * platform/network/cf/ResourceHandleCFNet.cpp:
444         (WebCore::ResourceHandle::loaderRunLoop): Call this "WebCore: CFNetwork Loader" to make
445         it clear this is a WebCore-created thread.
446         * storage/DatabaseThread.cpp:
447         (WebCore::DatabaseThread::start): Use "WebCore: " instead of "WebCore::".
448         * storage/LocalStorageThread.cpp:
449         (WebCore::LocalStorageThread::start): Use "WebCore: " instead of "WebCore::".
450         * workers/WorkerThread.cpp:
451         (WebCore::WorkerThread::start): Use "WebCore: " instead of "WebCore::".
452
453 2009-03-11  Mark Rowe  <mrowe@apple.com>
454
455         Rubber-stamped by Darin Adler.
456
457         <rdar://problem/6653286> WebCore's implementation of screenIsMonochrome is needlessly complex
458
459         * platform/mac/PlatformScreenMac.mm:
460         (WebCore::screenIsMonochrome): Return false.
461
462 2009-03-11  Beth Dakin  <bdakin@apple.com>
463
464         Reviewed by Dan Bernstein.
465
466         Fix for https://bugs.webkit.org/show_bug.cgi?id=14749 percentage 
467         top value on position:relative child not calculated correctly if 
468         parent has percentage height
469         - and corresponding -
470         <rdar://problem/6172925>
471
472         * rendering/RenderBoxModelObject.cpp:
473         (WebCore::RenderBoxModelObject::relativePositionOffsetY):
474
475 2009-03-11  Jian Li  <jianli@chromium.org>
476
477         Reviewed by Dimitri Glazkov.
478
479         Implement ScriptValue::hasNoValue for V8.
480         https://bugs.webkit.org/show_bug.cgi?id=24507
481
482         * bindings/v8/ScriptValue.h:
483         (WebCore::ScriptValue::hasNoValue):
484
485 2009-03-11  David Levin  <levin@chromium.org>
486
487         Reviewed by Dimitri Glazkov.
488
489         Bug 24459: Add v8 bindings for event.
490         <https://bugs.webkit.org/show_bug.cgi?id=24459>
491
492         Adding custom event bindings.
493
494         * bindings/v8/custom/V8AbstractEventListener.cpp: Added.
495         * bindings/v8/custom/V8AbstractEventListener.h: Added.
496         * bindings/v8/custom/V8AttrCustom.cpp:
497         Fixed messed up copyright header.
498         * bindings/v8/custom/V8CustomEventListener.cpp: Added.
499         * bindings/v8/custom/V8CustomEventListener.h:
500         Replaced forwarding header with the real implementation.
501         * bindings/v8/custom/V8ElementCustom.cpp:
502         * bindings/v8/custom/V8LazyEventListener.cpp: Added.
503         * bindings/v8/custom/V8LazyEventListener.h: Added.
504         * bindings/v8/custom/V8ObjectEventListener.cpp: Added.
505         * bindings/v8/custom/V8ObjectEventListener.h: Added.
506         * bindings/v8/custom/V8WorkerContextEventListener.cpp: Added.
507         * bindings/v8/custom/V8WorkerContextEventListener.h: Added.
508
509 2009-03-11  Darin Fisher  <darin@chromium.org>
510
511         Reviewed by Dimitri Glazkov.
512
513         https://bugs.webkit.org/show_bug.cgi?id=24521
514         Add some missing includes for the non-JSC build.
515
516         * platform/text/PlatformString.h: added OwnPtr.h
517         * xml/XMLHttpRequest.cpp: added SecurityOrigin.h
518
519 2009-03-11  Simon Fraser  <simon.fraser@apple.com>
520
521         Reviewed by Darin Adler
522
523         https://bugs.webkit.org/show_bug.cgi?id=24531
524         
525         Make sure that AnimationControllerPrivate::getAnimatedStyleForRenderer() never
526         returns a null style if it has a valid renderer, which could happen if a
527         CompositeAnimation existed, but wasn't running any animations or transitions.
528
529         * page/animation/AnimationController.cpp:
530         (WebCore::AnimationControllerPrivate::getAnimatedStyleForRenderer):
531
532 2009-03-11  Simon Fraser  <simon.fraser@apple.com>
533
534         Fix Scons build. Patch from Alexander Guy.
535
536         * WebCore.scons:
537
538 2009-03-11  Simon Fraser  <simon.fraser@apple.com>
539
540         Reviewed by Dan Bernstein
541        
542         https://bugs.webkit.org/show_bug.cgi?id=23093
543         
544         When the cancel button in the search field is shown or hidden,
545         we need to explicitly setStyle() on the cancel button's renderer,
546         to ensure that repaint happens. Changing the style without telling
547         the renderer won't work.
548
549         Test: fast/repaint/search-field-cancel.html
550
551         * rendering/RenderTextControlSingleLine.cpp:
552         (WebCore::RenderTextControlSingleLine::subtreeHasChanged):
553         (WebCore::RenderTextControlSingleLine::updateFromElement):
554         (WebCore::RenderTextControlSingleLine::createCancelButtonStyle):
555         (WebCore::RenderTextControlSingleLine::updateCancelButtonVisibility):
556         (WebCore::RenderTextControlSingleLine::visibilityForCancelButton):
557         * rendering/RenderTextControlSingleLine.h:
558
559 2009-03-11  Hironori Bono  <hbono@chromium.org>
560
561         Reviewed by Alexey Proskuryakov.
562
563         https://bugs.webkit.org/show_bug.cgi?id=15790
564         Ligatures aren't accounted for when manipulating VisiblePositions
565
566         Changed cursorMovementIterator rules to prevent a cursor from moving in the middle of an
567         Indic ligature which uses a virama sign.
568         
569         Test: editing/deleting/skip-virama-001.html
570
571         * platform/text/TextBreakIteratorICU.cpp:
572         (WebCore::cursorMovementIterator):
573
574 2009-03-11  Alexey Proskuryakov  <ap@webkit.org>
575
576         Reviewed by George Staikos.
577
578         https://bugs.webkit.org/show_bug.cgi?id=24513
579         REGRESSION: Cursor movement doesn't work on Tiger (ICU 3.2)
580
581         Fixes existing tests on Tiger.
582
583         * platform/text/TextBreakIteratorICU.cpp: (WebCore::cursorMovementIterator):
584         Use characterBreakIterator on Tiger (like we used to do).
585
586 2009-03-11  Alexey Proskuryakov  <ap@webkit.org>
587
588         Reviewed by Oliver Hunt.
589
590         <rdar://problem/4072827> Downloaded non-ASCII file name becomes garbled
591
592         * platform/network/mac/ResourceRequestMac.mm:
593         (WebCore::ResourceRequest::doUpdatePlatformRequest): Correct selector name
594         in instancesRespondToSelector.
595
596 2009-03-11  Jan Michael Alonzo  <jmalonzo@webkit.org>
597
598         Reviewed by Holger Freyther.
599
600         [GTK]DumpRenderTree doesn't compile for non-X11 GTK ports anymore
601         https://bugs.webkit.org/show_bug.cgi?id=2260
602
603         Add missing stdio.h include to get the build going
604
605         * plugins/gtk/PluginPackageGtk.cpp:
606
607 2009-03-10  Justin Garcia  <justin.garcia@apple.com>
608
609         Reviewed by Ken Kocienda.
610
611         * dom/Range.cpp:
612         (WebCore::Range::addLineBoxRects): If the range ended at [div, 0], addLineBoxRects
613         would include rects for the divs contents.  Set the correct RenderObject to stop at.
614
615 2009-03-10  Alexey Proskuryakov  <ap@webkit.org>
616
617         Reviewed by Sam Weinig.
618
619         <rdar://problem/6123770> Restrict access to document.cookie when making a cross-site XHR
620
621         * xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::responseXML): Removed an incorrect
622         comment about cookie support. Firefox doesn't expose cookies on responseXML at all, and
623         there are security concerns with exposing them for cross-origin requests, so it's not clear
624         if we want to change anything here.
625
626 2009-03-10  Simon Fraser  <simon.fraser@apple.com>
627
628         Reviewed by Darin Adler
629
630         https://bugs.webkit.org/show_bug.cgi?id=24503
631         
632         Fix hit testing of absolutely positioned single line text controls by
633         ensuring that we set result.innerNode() correctly. If the hit node is
634         a descendant of the inner text element or if it is the <input> itself,
635         then we say we hit the innerTextElement.
636         
637         Rename hitInnerTextBlock() to hitInnerTextElement() to match the
638         'innerTextElement' terminology used elsewhere.
639         
640         Assert that if renderer()->hitTest() returns false, no-one set
641         result.innerNode().
642
643         Test: fast/forms/search-abs-pos-cancel-button.html
644
645         * rendering/RenderLayer.cpp:
646         (WebCore::RenderLayer::hitTestContents):
647         * rendering/RenderTextControl.cpp:
648         (WebCore::RenderTextControl::hitInnerTextElement):
649         * rendering/RenderTextControl.h:
650         * rendering/RenderTextControlMultiLine.cpp:
651         (WebCore::RenderTextControlMultiLine::nodeAtPoint):
652         * rendering/RenderTextControlSingleLine.cpp:
653         (WebCore::RenderTextControlSingleLine::nodeAtPoint):
654
655 2009-03-10  Antti Koivisto  <antti@apple.com>
656
657         Reviewed by Mark Rowe.
658
659         <rdar://problem/6668238> WebCore is registering text encodings needlessly from KURL constructor.
660         
661         Another case where we would trigger extended encoding loading needlessly.
662
663         * platform/text/TextEncoding.cpp:
664         (WebCore::TextEncoding::isNonByteBasedEncoding):
665
666 2009-03-10  Beth Dakin  <bdakin@apple.com>
667
668         Reviewed by Darin Adler.
669
670         Fix for <rdar://problem/6624769> REGRESSION (Safari 4 PB): No 
671         scroll bar appears for long line of text with NOWRAP set
672
673         This is a regression from http://trac.webkit.org/changeset/32226
674         I talked with Dan about the original change, and we decided that 
675         the best fix was to remove his small potential-optimization that 
676         only created a separate line box for whitespace under certain 
677         circumstances. This new code will always create a separate line 
678         box.
679
680         * rendering/bidi.cpp:
681         (WebCore::RenderBlock::layoutInlineChildren):
682
683 2009-03-10  Sam Weinig  <sam@webkit.org>
684
685         Reviewed by Geoffrey Garen.
686
687         Fix for <rdar://problem/6166844>
688         https://bugs.webkit.org/show_bug.cgi?id=24495
689
690         Use same rule for loading java applets as we do for images.
691
692         * html/HTMLAppletElement.cpp:
693         (WebCore::HTMLAppletElement::createRenderer):
694         * loader/FrameLoader.cpp:
695         (WebCore::FrameLoader::loadItem):
696
697 2009-03-10  Justin Garcia  <justin.garcia@apple.com>
698
699         Reviewed by David Kilzer.
700
701         Get rid of revealCaret and use revealSelection instead.
702
703         * WebCore.base.exp:
704         * editing/SelectionController.cpp:
705         (WebCore::SelectionController::setSelection):
706         * page/Frame.cpp:
707         (WebCore::Frame::revealSelection):
708         * page/Frame.h:
709
710 2009-03-10  Cameron Zwarich  <cwzwarich@uwaterloo.ca>
711
712         Reviewed by Geoff Garen.
713
714         Bug 23736: WebKit Crashes on http://g-conquest.fr/~server2
715         <https://bugs.webkit.org/show_bug.cgi?id=23736>
716         <rdar://problem/6560278>
717
718         Before replacing the document, FrameLoader::executeIfJavaScriptURL()
719         should call stopAllLoaders(), just like continueLoadAfterNavigationPolicy().
720
721         * loader/FrameLoader.cpp:
722         (WebCore::FrameLoader::executeIfJavaScriptURL):
723
724 2009-03-10  Darin Adler  <darin@apple.com>
725
726         Reviewed by Alexey Proskuryakov.
727
728         Bug 24494: crash when deleting at end of document and merging paragraphs
729         https://bugs.webkit.org/show_bug.cgi?id=24494
730         rdar://problem/6571537
731
732         Test: editing/deleting/merge-at-end-of-document.html
733
734         * dom/Range.cpp:
735         (WebCore::Range::compareBoundaryPoints): Split out assertion. It's better not to
736         use && in assertions since we'd like to know which condition is failing.
737
738         * editing/ApplyStyleCommand.cpp:
739         (WebCore::ApplyStyleCommand::applyInlineStyleToRange): Added a null check before
740         calling compareBoundaryPoints, since a 0 for the node is ambiguous and so the
741         function doesn't know which value to return.
742
743 2009-03-10  Dirk Schulze  <krit@webkit.org>
744
745         Reviewed by Eric Seidel. Math checked by Oliver Hunt.
746
747         Implement the Cairo version of the checkForSolidColor() method. This halfes the
748         time to draw on 1x1 px background images.
749         I added two new calls to Color for the pixel manipulation on cairo_surface's.
750         They are neede to premultiply/unpremultiply the colors of the surface.
751
752         [CAIRO] Introduce single-pixel image optimizations
753         https://bugs.webkit.org/show_bug.cgi?id=17284
754
755         * platform/graphics/Color.cpp:
756         (WebCore::colorFromPremultipliedARGB):
757         (WebCore::premultipliedARGBFromColor):
758         * platform/graphics/Color.h:
759         * platform/graphics/cairo/ImageBufferCairo.cpp:
760         (WebCore::ImageBuffer::getImageData):
761         (WebCore::ImageBuffer::putImageData):
762         * platform/graphics/cairo/ImageCairo.cpp:
763         (WebCore::BitmapImage::checkForSolidColor):
764
765 2009-03-06  Darin Fisher  <darin@chromium.org>
766
767         Reviewed by Sam Weinig.
768
769         https://bugs.webkit.org/show_bug.cgi?id=24437
770
771         Add support for registering noAccess URL schemes:
772         1-  Add FrameLoader::registerURLSchemeAsNoAccess, and have SecurityOrigin check
773         that list upon construction (similar to how isLocal is implemented).
774         2-  Make InspectorController call grantUniversalAccess on its Document's
775         SecurityOrigin at the time when windowScriptObjectAvailable is called.
776
777         This enables content such as the inspector to be loaded from a custom (non-file)
778         URL, which is how Chromium loads the inspector.  It also allows other URL schemes
779         to be treated like data: URLs, which Chromium utilizes for its various HTML-based
780         UI panels.
781
782         * inspector/InspectorController.cpp:
783         (WebCore::InspectorController::windowScriptObjectAvailable):
784         * loader/FrameLoader.cpp:
785         (WebCore::localSchemes):
786         (WebCore::noAccessSchemes):
787         (WebCore::FrameLoader::loadItem):
788         * loader/FrameLoader.h:
789         * page/SecurityOrigin.cpp:
790         (WebCore::SecurityOrigin::SecurityOrigin):
791         (WebCore::SecurityOrigin::isLocal):
792
793 2009-03-10  Xan Lopez  <xlopez@igalia.com>
794
795         Build fix, no review
796
797         * page/mac/AccessibilityObjectWrapper.mm:
798         (textMarkerForVisiblePosition):
799         (visiblePositionForTextMarker):
800
801 2009-03-10  Xan Lopez  <xlopez@igalia.com>
802
803         Reviewed by Darin Adler.
804
805         https://bugs.webkit.org/show_bug.cgi?id=24491
806         Rename posOffset to m_offset, get rid of accessor
807
808         As suggested in dom/Position.h, this patch gets rid of the
809         'offset()' accessor and renames posOffset to m_offset. I've used
810         m_offset instead of offset to follow the style guide lines, since
811         Position is still a class and not a structure. If the long term
812         plan is still to make it a structure it would be pretty easy to
813         just s/m_offset/offset/ globally when that is achieved.
814
815         * dom/Position.cpp:
816         (WebCore::Position::previous):
817         (WebCore::Position::next):
818         (WebCore::Position::atStart):
819         (WebCore::Position::atEnd):
820         (WebCore::Position::renderedOffset):
821         (WebCore::Position::isCandidate):
822         (WebCore::Position::inRenderedText):
823         (WebCore::Position::isRenderedCharacter):
824         (WebCore::Position::rendersInDifferentPosition):
825         (WebCore::Position::leadingWhitespacePosition):
826         (WebCore::Position::debugPosition):
827         (WebCore::Position::formatForDebugger):
828         * dom/Position.h:
829         (WebCore::Position::Position):
830         * dom/PositionIterator.h:
831         (WebCore::PositionIterator::PositionIterator):
832         * dom/Range.cpp:
833         * dom/RangeBoundaryPoint.h:
834         (WebCore::RangeBoundaryPoint::position):
835         (WebCore::RangeBoundaryPoint::set):
836         (WebCore::RangeBoundaryPoint::setOffset):
837         (WebCore::RangeBoundaryPoint::setToChild):
838         (WebCore::RangeBoundaryPoint::setToStart):
839         (WebCore::RangeBoundaryPoint::setToEnd):
840         (WebCore::RangeBoundaryPoint::childBeforeWillBeRemoved):
841         * editing/ApplyStyleCommand.cpp:
842         (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange):
843         (WebCore::ApplyStyleCommand::applyInlineStyleToRange):
844         (WebCore::ApplyStyleCommand::removeInlineStyle):
845         (WebCore::ApplyStyleCommand::nodeFullySelected):
846         (WebCore::ApplyStyleCommand::nodeFullyUnselected):
847         (WebCore::ApplyStyleCommand::splitTextAtStartIfNeeded):
848         (WebCore::ApplyStyleCommand::splitTextAtEndIfNeeded):
849         (WebCore::ApplyStyleCommand::splitTextElementAtStartIfNeeded):
850         (WebCore::ApplyStyleCommand::splitTextElementAtEndIfNeeded):
851         (WebCore::ApplyStyleCommand::mergeStartWithPreviousIfIdentical):
852         (WebCore::ApplyStyleCommand::mergeEndWithNextIfIdentical):
853         (WebCore::ApplyStyleCommand::joinChildTextNodes):
854         * editing/BreakBlockquoteCommand.cpp:
855         (WebCore::BreakBlockquoteCommand::doApply):
856         * editing/CompositeEditCommand.cpp:
857         (WebCore::CompositeEditCommand::insertNodeAt):
858         (WebCore::CompositeEditCommand::positionOutsideTabSpan):
859         (WebCore::CompositeEditCommand::rebalanceWhitespaceAt):
860         (WebCore::CompositeEditCommand::prepareWhitespaceAtPositionForSplit):
861         (WebCore::CompositeEditCommand::deleteInsignificantText):
862         (WebCore::CompositeEditCommand::removePlaceholderAt):
863         (WebCore::CompositeEditCommand::moveParagraphs):
864         (WebCore::CompositeEditCommand::breakOutOfEmptyMailBlockquotedParagraph):
865         * editing/DeleteSelectionCommand.cpp:
866         (WebCore::updatePositionForNodeRemoval):
867         (WebCore::updatePositionForTextRemoval):
868         (WebCore::DeleteSelectionCommand::handleGeneralDelete):
869         (WebCore::DeleteSelectionCommand::fixupWhitespace):
870         * editing/Editor.cpp:
871         (WebCore::Editor::setComposition):
872         (WebCore::Editor::advanceToNextMisspelling):
873         (WebCore::Editor::getCompositionSelection):
874         * editing/InsertLineBreakCommand.cpp:
875         (WebCore::InsertLineBreakCommand::doApply):
876         * editing/InsertParagraphSeparatorCommand.cpp:
877         (WebCore::InsertParagraphSeparatorCommand::doApply):
878         * editing/InsertTextCommand.cpp:
879         (WebCore::InsertTextCommand::performTrivialReplace):
880         (WebCore::InsertTextCommand::input):
881         (WebCore::InsertTextCommand::insertTab):
882         * editing/MoveSelectionCommand.cpp:
883         (WebCore::MoveSelectionCommand::doApply):
884         * editing/ReplaceSelectionCommand.cpp:
885         (WebCore::ReplaceSelectionCommand::doApply):
886         * editing/SelectionController.cpp:
887         (WebCore::SelectionController::debugRenderer):
888         * editing/TextIterator.cpp:
889         (WebCore::TextIterator::rangeFromLocationAndLength):
890         * editing/TypingCommand.cpp:
891         (WebCore::TypingCommand::deleteKeyPressed):
892         (WebCore::TypingCommand::forwardDeleteKeyPressed):
893         * editing/VisiblePosition.cpp:
894         (WebCore::VisiblePosition::characterAfter):
895         (WebCore::VisiblePosition::debugPosition):
896         (WebCore::makeRange):
897         (WebCore::setStart):
898         (WebCore::setEnd):
899         * editing/VisibleSelection.cpp:
900         (WebCore::VisibleSelection::toNormalizedRange):
901         (WebCore::makeSearchRange):
902         (WebCore::VisibleSelection::debugPosition):
903         (WebCore::VisibleSelection::showTreeForThis):
904         * editing/htmlediting.cpp:
905         (WebCore::comparePositions):
906         (WebCore::rangeCompliantEquivalent):
907         (WebCore::isFirstPositionAfterTable):
908         (WebCore::isLastPositionBeforeTable):
909         * editing/visible_units.cpp:
910         (WebCore::previousBoundary):
911         (WebCore::nextBoundary):
912         (WebCore::startPositionForLine):
913         (WebCore::startOfLine):
914         (WebCore::endPositionForLine):
915         (WebCore::nextLinePosition):
916         (WebCore::startOfParagraph):
917         (WebCore::endOfParagraph):
918         * page/AccessibilityObject.cpp:
919         (WebCore::updateAXLineStartForVisiblePosition):
920         * page/AccessibilityRenderObject.cpp:
921         (WebCore::AccessibilityRenderObject::indexForVisiblePosition):
922         * page/DOMSelection.cpp:
923         (WebCore::DOMSelection::anchorOffset):
924         (WebCore::DOMSelection::baseOffset):
925         (WebCore::DOMSelection::focusOffset):
926         (WebCore::DOMSelection::extentOffset):
927         * page/EventHandler.cpp:
928         (WebCore::EventHandler::handleMousePressEventSingleClick):
929         * page/Frame.cpp:
930         (WebCore::Frame::selectionLayoutChanged):
931         * rendering/RenderTextControl.cpp:
932         (WebCore::RenderTextControl::indexForVisiblePosition):
933         * rendering/RenderTreeAsText.cpp:
934         (WebCore::writeSelection):
935
936 2009-03-10  Darin Adler  <darin@apple.com>
937
938         Reviewed by Dan Bernstein.
939
940         Bug 23564: REGRESSION (r39230-39286): crash loading page that changes <input> display type and then calls innerHTML
941         https://bugs.webkit.org/show_bug.cgi?id=23564
942         rdar://problem/6537238
943
944         Test: fast/dom/HTMLElement/innerHTML-selection-crash.html
945
946         * editing/markup.cpp: (WebCore::createMarkup): Added updateLayoutIgnorePendingStylesheets
947         call to the one of the two overloads of this function that wasn't calling it. This fixes
948         this crash and other possible crashes inside innerHTML.
949
950 2009-03-10  Alexey Proskuryakov  <ap@webkit.org>
951
952         Reviewed by Darin Adler.
953
954         https://bugs.webkit.org/show_bug.cgi?id=24285
955         Text resource loading checks for BOM twice
956
957         This removes TextDecoder class, since its only purpose was to check for BOM, which is
958         already done in TextResourceDecoder. Callers that use TextEncoding::decode() won't get
959         BOM checked, but I didn't find any cases where it would significantly change behavior.
960
961         * GNUmakefile.am:
962         * WebCore.pro:
963         * WebCore.scons:
964         * WebCore.vcproj/WebCore.vcproj:
965         * WebCore.xcodeproj/project.pbxproj:
966         * WebCoreSources.bkl:
967         Remove TextDecoder.{h,cpp}.
968
969         * platform/text/TextDecoder.cpp: Removed.
970         * platform/text/TextDecoder.h: Removed.
971
972         * loader/TextResourceDecoder.h: Instead of a TextDecoder object, keep TextEncoding and
973         TextCodec separately.
974
975         * loader/TextResourceDecoder.cpp:
976         (WebCore::TextResourceDecoder::TextResourceDecoder): Updated for m_encoding being a member.
977         (WebCore::TextResourceDecoder::setEncoding): Ditto.
978         (WebCore::TextResourceDecoder::checkForBOM): Removed a FIXME saying that a BOM could override
979         even a user-chosen encoding - this is how it already worked due to TextDecoder checking for
980         BOM again. Made this function return the detected BOM length.
981         (WebCore::TextResourceDecoder::decode): Skip the BOM if it was found at the beginning of
982         a text resource.
983         (WebCore::TextResourceDecoder::flush): Reset m_checkedForBOM, so that re-decoding the same
984         resource again (as frequently done by CachedResource subclasses) will skip the BOM correctly.
985
986         * platform/text/TextEncoding.cpp: (WebCore::TextEncoding::decode):
987         Use TextCodec directly without a TextDecoder wrapper. This means that this method no longer
988         checks for BOM, which was a counter-intuitive feature.
989
990         * loader/CachedScript.cpp:
991         (WebCore::CachedScript::CachedScript):
992         (WebCore::CachedScript::setEncoding):
993         (WebCore::CachedScript::encoding):
994         (WebCore::CachedScript::script):
995         * loader/CachedScript.h:
996         * loader/appcache/ManifestParser.cpp:
997         (WebCore::parseManifest):
998         Use TextResourceDecoder, as TextEncoding::decode() no longer checks for BOM.
999         A side effect of this is that these resources will now be subject to encoding auto-detection.
1000
1001         * loader/CachedFont.cpp: (WebCore::CachedFont::ensureSVGFontData):
1002         * page/Page.cpp: (WebCore::Page::userStyleSheet):
1003         Be sure to flush TextResourceDecoder, pushing any remaining bytes out, and making the decoder
1004         re-usable (for repeated decoding of the same resource).
1005
1006         * platform/text/TextEncodingRegistry.h: Updated comments for newTextCodec().
1007
1008 2009-03-10  Alexey Proskuryakov  <ap@webkit.org>
1009
1010         Reviewed by Darin Adler.
1011
1012         https://bugs.webkit.org/show_bug.cgi?id=24488
1013         An assertion failure when updating an offline application cache after emptying caches
1014
1015         Emptying appcache cannot be performed automatically, so no test.
1016
1017         * loader/appcache/ApplicationCacheGroup.cpp:
1018         (WebCore::ApplicationCacheGroup::checkIfLoadIsComplete): Ensure that the cache is in disk
1019         storage, even if the application wasn't updated server side.
1020
1021 2009-03-10  Oliver Hunt  <oliver@apple.com>
1022
1023         Reviewed by Alexey Proskuryakov.
1024
1025         <rdar://problem/6425807> Implement WorkerUtils.importScripts()
1026         <https://bugs.webkit.org/show_bug.cgi?id=22721>
1027
1028         Implement importScripts, currently uses a series of synchronous loads
1029         to fetch the scripts, but this is simpler than a synchronous load of
1030         multiple loads in parallel.  In future we'll want to switch to parallel
1031         loading, but this will do for now.
1032         
1033         Test: http/tests/workers/worker-importScripts.html
1034
1035         * GNUmakefile.am:
1036         * WebCore.vcproj/WebCore.vcproj:
1037         * WebCore.xcodeproj/project.pbxproj:
1038         * bindings/js/JSWorkerContextCustom.cpp:
1039         (WebCore::JSWorkerContext::importScripts):
1040         * bindings/js/ScriptValue.h:
1041         (WebCore::ScriptValue::hasNoValue):
1042         * bindings/js/WorkerScriptController.cpp:
1043         (WebCore::WorkerScriptController::evaluate):
1044         (WebCore::WorkerScriptController::setException):
1045         * bindings/js/WorkerScriptController.h:
1046         * dom/Document.cpp:
1047         (WebCore::Document::scriptImported):
1048         * dom/Document.h:
1049         * dom/ScriptExecutionContext.h:
1050         * inspector/InspectorController.cpp:
1051         (WebCore::InspectorController::scriptImported):
1052         * inspector/InspectorController.h:
1053         * inspector/InspectorResource.cpp:
1054         (WebCore::InspectorResource::setScriptProperties):
1055         * inspector/InspectorResource.h:
1056         * workers/WorkerContext.cpp:
1057         (WebCore::WorkerContext::scriptImported):
1058         (WebCore::WorkerContext::importScripts):
1059         * workers/WorkerContext.h:
1060         * workers/WorkerContext.idl:
1061         * workers/WorkerImportScriptsClient.cpp: Added.
1062         (WebCore::WorkerImportScriptsClient::didReceiveResponse):
1063         (WebCore::WorkerImportScriptsClient::didReceiveData):
1064         (WebCore::WorkerImportScriptsClient::didFinishLoading):
1065         (WebCore::WorkerImportScriptsClient::didFail):
1066         (WebCore::WorkerImportScriptsClient::didFailRedirectCheck):
1067         (WebCore::WorkerImportScriptsClient::didReceiveAuthenticationCancellation):
1068         * workers/WorkerImportScriptsClient.h: Added.
1069         (WebCore::WorkerImportScriptsClient::WorkerImportScriptsClient):
1070         (WebCore::WorkerImportScriptsClient::script):
1071         (WebCore::WorkerImportScriptsClient::failed):
1072
1073 2009-03-10  Alexey Proskuryakov  <ap@webkit.org>
1074
1075         Reviewed by Darin Adler.
1076
1077         https://bugs.webkit.org/show_bug.cgi?id=24462
1078         Move cross-origin access control code out of XMLHttpRequest
1079
1080         Step 1: move preflight result cache and access control helper functions.
1081
1082         No change in behavior, so no test.
1083
1084         * GNUmakefile.am:
1085         * WebCore.pro:
1086         * WebCore.scons:
1087         * WebCore.vcproj/WebCore.vcproj:
1088         * WebCore.xcodeproj/project.pbxproj:
1089         * WebCoreSources.bkl:
1090         * loader/CrossOriginAccessControl.cpp: Added.
1091         (WebCore::isOnAccessControlSimpleRequestHeaderWhitelist):
1092         (WebCore::isSimpleCrossOriginAccessRequest):
1093         (WebCore::createAllowedCrossOriginResponseHeadersSet):
1094         (WebCore::isOnAccessControlResponseHeaderWhitelist):
1095         (WebCore::passesAccessControlCheck):
1096         * loader/CrossOriginAccessControl.h: Added.
1097         * loader/CrossOriginPreflightResultCache.cpp: Added.
1098         (WebCore::parseAccessControlMaxAge):
1099         (WebCore::addToAccessControlAllowList):
1100         (WebCore::parseAccessControlAllowList):
1101         (WebCore::CrossOriginPreflightResultCacheItem::parse):
1102         (WebCore::CrossOriginPreflightResultCacheItem::allowsCrossOriginMethod):
1103         (WebCore::CrossOriginPreflightResultCacheItem::allowsCrossOriginHeaders):
1104         (WebCore::CrossOriginPreflightResultCacheItem::allowsRequest):
1105         (WebCore::CrossOriginPreflightResultCache::shared):
1106         (WebCore::CrossOriginPreflightResultCache::appendEntry):
1107         (WebCore::CrossOriginPreflightResultCache::canSkipPreflight):
1108         * loader/CrossOriginPreflightResultCache.h: Added.
1109         (WebCore::CrossOriginPreflightResultCacheItem::CrossOriginPreflightResultCacheItem):
1110         (WebCore::CrossOriginPreflightResultCache::CrossOriginPreflightResultCache):
1111         * xml/XMLHttpRequest.cpp:
1112         (WebCore::XMLHttpRequestStaticData::XMLHttpRequestStaticData):
1113         (WebCore::XMLHttpRequest::createRequest):
1114         (WebCore::XMLHttpRequest::makeCrossOriginAccessRequest):
1115         (WebCore::XMLHttpRequest::makeSimpleCrossOriginAccessRequest):
1116         (WebCore::XMLHttpRequest::makeCrossOriginAccessRequestWithPreflight):
1117         (WebCore::XMLHttpRequest::didReceiveResponse):
1118         (WebCore::XMLHttpRequest::didReceiveResponsePreflight):
1119         * xml/XMLHttpRequest.h:
1120
1121 2009-03-10  Alexey Proskuryakov  <ap@webkit.org>
1122
1123         Reviewed by Darin Adler.
1124
1125         https://bugs.webkit.org/show_bug.cgi?id=19797
1126         Bring the list of forbidden headers in sync with XMLHttpRequest spec draft
1127
1128         Added new checks to http/tests/xmlhttprequest/set-dangerous-headers.html.
1129
1130         * xml/XMLHttpRequest.cpp:
1131         (WebCore::XMLHttpRequestStaticData::XMLHttpRequestStaticData): Added all headers from
1132         XMLHttpRequest 2 draft.
1133
1134 2009-03-10  Dan Bernstein  <mitz@apple.com>
1135
1136         Reviewed by Adele Peterson.
1137
1138         - fix https://bugs.webkit.org/show_bug.cgi?id=23975
1139           <rdar://problem/6593610> REGRESSION: Scrollbar arrow not repainted
1140
1141         * rendering/RenderLayer.cpp:
1142         (WebCore::RenderLayer::invalidateScrollbarRect): Corrected the vertical
1143         scrollbar rect calculation.
1144
1145 2009-03-09  Simon Fraser  <simon.fraser@apple.com>
1146
1147         Reviewed by Dan Bernstein, Oliver Hunt
1148
1149         https://bugs.webkit.org/show_bug.cgi?id=24475
1150         
1151         When repainting replaced elements, need to union the selection
1152         and overflow rects because either may extend outside the other.
1153         
1154         Test: fast/repaint/transform-replaced-shadows.html
1155
1156         * rendering/RenderReplaced.cpp:
1157         (WebCore::RenderReplaced::clippedOverflowRectForRepaint):
1158
1159 2009-03-09  Stephanie Lewis  <slewis@apple.com>
1160
1161         Fix build.
1162
1163         * editing/Editor.cpp:
1164         (WebCore::Editor::advanceToNextMisspelling):
1165         (WebCore::markAllMisspellingsAndBadGrammarInRanges):
1166
1167 2009-03-09  Kim Christensen  <kimworking@gmail.com>
1168
1169         Reviewed by Darin Fisher.
1170
1171         https://bugs.webkit.org/show_bug.cgi?id=24276
1172         Dropdown / select boxes do not consider the windows task bar in Chromium.
1173
1174         * platform/chromium/PopupMenuChromium.cpp:
1175         (WebCore::PopupContainer::showPopup):
1176
1177 2009-03-09  Dan Bernstein  <mitz@apple.com>
1178
1179         Reviewed by Adele Peterson and Dave Hyatt.
1180
1181         - fix <rdar://problem/6654344> REGRESSION (r41041): Zillow.com has
1182           misaligned edit fields
1183
1184         Test: fast/forms/legend-display-none.html
1185
1186         * css/CSSStyleSelector.cpp:
1187         (WebCore::CSSStyleSelector::adjustRenderStyle): Change the display
1188         property of legend elements to 'block' unless it is 'none'.
1189         * css/html4.css: Do not force the display property of legend elements to
1190         'block' using CSS, because that prevents style rules from setting it to
1191         'none'.
1192
1193 2009-03-09  Alpha Lam  <hclam@chromium.org>
1194
1195         Reviewed by Dave Hyatt.
1196
1197         https://bugs.webkit.org/show_bug.cgi?id=23024
1198
1199         Fix an incorrect criteria in the if statement that leaves references to
1200         deleted floating objects in RenderBlock.
1201
1202         Test: fast/block/float/crash-on-absolute-positioning.html
1203
1204         * rendering/RenderBlock.cpp:
1205         (WebCore::RenderBlock::markAllDescendantsWithFloatsForLayout):
1206
1207 2009-03-09  Mike Belshe  <mike@belshe.com>
1208
1209         Reviewed by Eric Seidel.
1210
1211         Unify JSC/V8 idl file.
1212         https://bugs.webkit.org/show_bug.cgi?id=24424
1213
1214         * page/Location.idl:
1215
1216 2009-03-09  Mike Belshe  <mike@belshe.com>
1217
1218         Reviewed by Eric Seidel.
1219
1220         Unify JSC/V8 for History.idl.
1221
1222         * page/History.idl:
1223
1224 2009-03-09  Mike Belshe  <mike@belshe.com>
1225
1226         Reviewed by Eric Seidel.
1227
1228         Unify JSC/V8 implementations of DOMWindow.idl.
1229
1230         * page/DOMWindow.idl:
1231
1232 2009-03-09  Simon Fraser  <simon.fraser@apple.com>
1233
1234         Reviewed by Dave Hyatt
1235
1236         https://bugs.webkit.org/show_bug.cgi?id=24163
1237         
1238         Implement mapping of FloatQuads through 3D transforms.
1239         
1240         Removed the redundant localToContainerQuad() methods, which can now 
1241         shared code with the old mapLocalToAbsolutePoint(), which was
1242         renamed to mapLocalToContainer(). This can now convert a point,
1243         and optionally a FloatQuad, which are carried along in the TransformState.
1244         
1245         Optimized TransformState to reduce to simple FloatPoint.move()
1246         if there are no transforms, and to heap-allocate a transform only if
1247         necessary to accumulate transforms (when using preserve-3d).
1248         
1249         Tested by 3d point mapping tests, and the inspector highlight (which now shows
1250         the correct quads for 3d-transformed elements).
1251
1252         * platform/graphics/transforms/TransformationMatrix.cpp:
1253         (WebCore::TransformationMatrix::projectQuad):
1254         (WebCore::TransformationMatrix::translateRight):
1255         (WebCore::TransformationMatrix::translateRight3d):
1256         * platform/graphics/transforms/TransformationMatrix.h:
1257         * rendering/RenderBox.cpp:
1258         (WebCore::RenderBox::mapLocalToContainer):
1259         (WebCore::RenderBox::mapAbsoluteToLocalPoint):
1260         * rendering/RenderBox.h:
1261         * rendering/RenderObject.cpp:
1262         (WebCore::RenderObject::localToAbsolute):
1263         (WebCore::RenderObject::absoluteToLocal):
1264         (WebCore::RenderObject::mapLocalToContainer):
1265         (WebCore::RenderObject::localToContainerQuad):
1266         * rendering/RenderObject.h:
1267         * rendering/RenderTableCell.cpp:
1268         (WebCore::RenderTableCell::mapLocalToContainer):
1269         * rendering/RenderTableCell.h:
1270         * rendering/RenderView.cpp:
1271         (WebCore::RenderView::mapLocalToContainer):
1272         * rendering/RenderView.h:
1273         * rendering/TransformState.cpp:
1274         (WebCore::TransformState::move):
1275         (WebCore::TransformState::applyTransform):
1276         (WebCore::TransformState::flatten):
1277         (WebCore::TransformState::mappedPoint):
1278         (WebCore::TransformState::mappedQuad):
1279         (WebCore::TransformState::flattenWithTransform):
1280         (WebCore::HitTestingTransformState::mappedQuad):
1281         * rendering/TransformState.h:
1282         (WebCore::TransformState::TransformState):
1283         (WebCore::TransformState::move):
1284         (WebCore::TransformState::lastPlanarPoint):
1285         (WebCore::TransformState::lastPlanarQuad):
1286         * rendering/style/RenderStyle.h:
1287         (WebCore::InheritedFlags::preserves3D):
1288
1289 2009-03-09  Simon Fraser  <simon.fraser@apple.com>
1290
1291         Reviewed by Dave Hyatt
1292
1293         https://bugs.webkit.org/show_bug.cgi?id=24433
1294         
1295         During hit testing with transforms, if a layer has backface-visibility: hidden,
1296         we need to check for it whether or not the layer has a transform, because it
1297         might be an ancestor that is transformed.
1298
1299         Test: transforms/3d/hit-testing/backface-no-transform-hit-test.html
1300
1301         * rendering/RenderLayer.cpp:
1302         (WebCore::RenderLayer::hitTestLayer):
1303
1304 2009-03-09  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
1305
1306         Reviewed by George Staikos.
1307
1308         https://bugs.webkit.org/show_bug.cgi?id=24353
1309         Allow to overrule default build options for Qt build.
1310
1311         * WebCore.pro: Allow to overrule ENABLE_VIDEO and ENABLE_NETSCAPE_PLUGIN_API
1312
1313 2009-03-09  Adam Treat  <adam.treat@torchmobile.com>
1314
1315         Reviewed by George Staikos.
1316
1317         https://bugs.webkit.org/show_bug.cgi?id=24463
1318         WebCore::qstring is detaching and copying twice for every single
1319         WebCore::TextRun that is processed and drawn.  This elevates this method
1320         to one of the top-ten most expensive methods in all of QtWebKit according
1321         to profiling.  This changes the method so that QString only detaches
1322         when absolutely necessary.
1323
1324         * platform/graphics/qt/FontQt.cpp:
1325         (WebCore::qstring):
1326         (WebCore::fixSpacing):
1327         (WebCore::Font::drawComplexText):
1328         (WebCore::Font::floatWidthForComplexText):
1329         (WebCore::Font::offsetForPositionForComplexText):
1330         (WebCore::Font::selectionRectForComplexText):
1331
1332 2009-03-08  Mark Rowe  <mrowe@apple.com>
1333
1334         Reviewed by Oliver Hunt.
1335
1336         Split ScrollAlignment and ScrollBehavior out of RenderLayer.h so that
1337         Frame.h no longer needs to include it.  This cuts the size of the symbols
1338         for a debug build by around 3%.
1339
1340         * dom/Element.cpp:
1341         (WebCore::Element::scrollIntoView):
1342         (WebCore::Element::scrollIntoViewIfNeeded):
1343         * editing/Editor.cpp:
1344         (WebCore::Editor::insertTextWithoutSendingTextEvent):
1345         (WebCore::Editor::revealSelectionAfterEditingOperation):
1346         * editing/SelectionController.cpp:
1347         (WebCore::SelectionController::setSelection):
1348         * loader/FrameLoader.cpp:
1349         (WebCore::FrameLoader::gotoAnchor):
1350         * page/ContextMenuController.cpp:
1351         (WebCore::ContextMenuController::contextMenuItemSelected):
1352         * page/Frame.cpp:
1353         (WebCore::Frame::revealSelection):
1354         (WebCore::Frame::revealCaret):
1355         * page/Frame.h:
1356         * rendering/RenderLayer.cpp:
1357         (WebCore::RenderLayer::getRectToExpose):
1358         (WebCore::RenderLayer::autoscroll):
1359         * rendering/RenderLayer.h:
1360         * rendering/ScrollBehavior.cpp: Added.
1361         (WebCore::):
1362         * rendering/ScrollBehavior.h: Added.
1363         (WebCore::):
1364         (WebCore::ScrollAlignment::getVisibleBehavior):
1365         (WebCore::ScrollAlignment::getPartialBehavior):
1366         (WebCore::ScrollAlignment::getHiddenBehavior):
1367
1368         Add the new files to the build systems:
1369         * GNUmakefile.am:
1370         * WebCore.base.exp:
1371         * WebCore.pro:
1372         * WebCore.scons:
1373         * WebCore.vcproj/WebCore.vcproj:
1374         * WebCore.xcodeproj/project.pbxproj:
1375         * WebCoreSources.bkl:
1376
1377         Add includes that were previously pulled in by way of RenderLayer.h from Frame.h:
1378         * dom/Clipboard.cpp:
1379         * editing/EditorCommand.cpp:
1380         * editing/InsertLineBreakCommand.cpp:
1381         * editing/TypingCommand.cpp:
1382         * html/HTMLFormControlElement.cpp:
1383         * loader/archive/cf/LegacyWebArchive.cpp:
1384         * loader/icon/IconLoader.cpp:
1385         * page/animation/AnimationController.cpp:
1386         * rendering/RenderSlider.cpp:
1387         * rendering/RenderTextControl.cpp:
1388
1389
1390 2009-03-08  Mark Rowe  <mrowe@apple.com>
1391
1392         Reviewed Dan Bernstein.
1393
1394         Push the include of Frame.h out of RenderView.h and down to those files
1395         that need it.  This cuts the size of symbols for RenderFoo object files
1396         by around 15% in a debug build.
1397
1398         * bindings/objc/DOM.mm:
1399         * rendering/RenderFileUploadControl.cpp:
1400         * rendering/RenderInline.cpp:
1401         * rendering/RenderObject.cpp:
1402         * rendering/RenderReplaced.cpp:
1403         * rendering/RenderText.cpp:
1404         * rendering/RenderView.cpp:
1405         (WebCore::RenderView::zoomFactor):
1406         * rendering/RenderView.h:
1407
1408 2009-03-08  Mark Rowe  <mrowe@apple.com>
1409
1410         Rubber-stamped by Dan Bernstein.
1411
1412         Remove some unnecessary or redundant includes from files related to the JS bindings.
1413         This cuts the size of the symbols for a debug build by around 3%.
1414
1415         * bindings/js/JSCustomPositionCallback.cpp:
1416         * bindings/js/JSCustomPositionErrorCallback.cpp:
1417         * bindings/js/JSCustomSQLStatementCallback.cpp:
1418         * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
1419         * bindings/js/JSCustomSQLTransactionCallback.cpp:
1420         * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
1421         * bindings/js/JSCustomVoidCallback.cpp:
1422         * bindings/js/JSCustomXPathNSResolver.cpp:
1423         * bindings/js/JSDocumentCustom.cpp:
1424         * bindings/js/JSPluginElementFunctions.cpp:
1425         * bindings/js/JSSVGPODTypeWrapper.h:
1426
1427 2009-03-08  Cameron Zwarich  <cwzwarich@uwaterloo.ca>
1428
1429         Reviewed by Oliver Hunt.
1430
1431         Remove the unused methods previousHistoryItem(), setPreviousHistoryItem()
1432         and provisionalHistoryItem() from FrameLoader.
1433
1434         * WebCore.base.exp:
1435         * WebCore.order:
1436         * loader/FrameLoader.cpp:
1437         (WebCore::FrameLoader::frameLoadCompleted):
1438         (WebCore::FrameLoader::loadItem):
1439         * loader/FrameLoader.h:
1440
1441 2009-03-08  Gustavo Noronha Silva  <gns@gnome.org>
1442
1443         Reviewed by Holger Freyther.
1444
1445         Implement proper logging for the GTK+ port, inspired by the one in
1446         Qt. We use the WEBKIT_DEBUG environment variable which was already
1447         being used to decide whether to setup a logger for soup or not.
1448
1449         * platform/gtk/LoggingGtk.cpp:
1450         (WebCore::getChannelFromName):
1451         (WebCore::InitializeLoggingChannelsIfNecessary):
1452         * platform/network/soup/ResourceHandleSoup.cpp:
1453         (WebCore::ensureSessionIsInitialized):
1454
1455 2009-03-07  Dan Bernstein  <mitz@apple.com>
1456
1457         Reviewed by Mark Rowe.
1458
1459         - WebCore part of removing build-time and run-time support for legacy
1460           versions of CFNetwork and Core Graphics
1461
1462         * platform/graphics/win/FontCGWin.cpp:
1463         (WebCore::Font::drawGlyphs):
1464         * platform/graphics/win/FontCustomPlatformData.cpp:
1465         (WebCore::FontCustomPlatformData::fontPlatformData):
1466         * platform/graphics/win/FontPlatformDataCGWin.cpp:
1467         (WebCore::FontPlatformData::platformDataInit):
1468         * platform/network/cf/FormDataStreamCFNet.cpp:
1469         (WebCore::setHTTPBody):
1470         (WebCore::httpBodyFromRequest):
1471         * platform/network/cf/ResourceHandleCFNet.cpp:
1472         (WebCore::didSendBodyData):
1473         (WebCore::shouldUseCredentialStorageCallback):
1474         (WebCore::ResourceHandle::start):
1475         * platform/network/win/CookieJarCFNetWin.cpp:
1476         (WebCore::filterCookies):
1477
1478 2009-03-07  Adele Peterson  <adele@apple.com>
1479
1480         Reviewed by Dan Bernstein.
1481
1482         Fix for https://bugs.webkit.org/show_bug.cgi?id=24444
1483         No multiple JS property for <input type="file" multiple />
1484
1485         * html/HTMLInputElement.cpp:
1486         (WebCore::HTMLInputElement::multiple):
1487         (WebCore::HTMLInputElement::setMultiple):
1488         * html/HTMLInputElement.h:
1489         * html/HTMLInputElement.idl:
1490
1491 2009-03-07  Xan Lopez  <xan@gnome.org>
1492
1493         Reviewed by Holger Freyther.
1494
1495         https://bugs.webkit.org/show_bug.cgi?id=24358
1496         [GTK] Scrollbars not clipped correctly
1497
1498         ScrollView scrollbars in subframes are *not* native, so take that
1499         into account again.
1500
1501         * platform/gtk/ScrollbarGtk.cpp:
1502         (ScrollbarGtk::getLocationInParentWindow):
1503         (ScrollbarGtk::frameRectsChanged):
1504         (ScrollbarGtk::paint):
1505         * platform/gtk/ScrollbarGtk.h:
1506
1507 2009-03-06  Peter Kasting  <pkasting@google.com>
1508
1509         Reviewed by Darin Fisher.
1510
1511         https://bugs.webkit.org/show_bug.cgi?id=24405
1512         Horizontal scrolling on Windows was reversed from Mac (and intuition).
1513
1514         * platform/gtk/WheelEventGtk.cpp:
1515         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
1516         * platform/win/WheelEventWin.cpp:
1517         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
1518
1519 2009-03-06  Peter Kasting  <pkasting@google.com>
1520
1521         Reviewed by Sam Weinig.
1522
1523         Convert some C-style casts to static_cast<>()s.
1524
1525         * platform/gtk/WheelEventGtk.cpp:
1526         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
1527         * platform/mac/WheelEventMac.mm:
1528         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
1529         * platform/win/WheelEventWin.cpp:
1530         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
1531         * platform/wx/MouseWheelEventWx.cpp:
1532         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
1533
1534 2009-03-06  Adele Peterson  <adele@apple.com>
1535
1536         Reviewed by Oliver Hunt.
1537
1538         Fix for <rdar://problem/6607524> REGRESSION (Safari 3-4): I can't tab back to the URL field in an empty window (key loop is broken)
1539
1540         I haven't been able to make a test for this since the problem is not reproducible within an empty iframe.
1541
1542         * page/EventHandler.cpp: (WebCore::eventTargetNodeForDocument): We used to ensure that every html document had a body element.
1543           That is no longer true, so we should return the document element for a truly empty document.
1544
1545 2009-03-06  Jay Campan  <jcampan@google.com>
1546
1547         Reviewed by Darin Fisher.
1548
1549         https://bugs.webkit.org/show_bug.cgi?id=24306
1550
1551         Adding a flag to ResourceRequestBase to indicate whether or not upload
1552         progress notifications are needed for a resource. This is useful to
1553         avoid sending these notifications when there are no consumers
1554         (especially in the Chromium case where IPC is involved). 
1555
1556         * platform/network/ResourceRequestBase.h:
1557         (WebCore::ResourceRequestBase::reportUploadProgress):
1558         (WebCore::ResourceRequestBase::setReportUploadProgress):
1559         (WebCore::ResourceRequestBase::ResourceRequestBase):
1560         * xml/XMLHttpRequest.cpp:
1561         (WebCore::XMLHttpRequest::loadRequestAsynchronously):
1562
1563 2009-03-06  Dmitry Titov  <dimich@chromium.org>
1564
1565         Reviewed by Alexey Proskuryakov.
1566
1567         https://bugs.webkit.org/show_bug.cgi?id=24150
1568         Add virtual ScriptExecutionContext::encoding()
1569
1570         Test: http/tests/workers/text-encoding.html
1571
1572         * dom/Document.cpp:
1573         (WebCore::Document::encoding):
1574         * dom/Document.h:
1575         (WebCore::Document::inputEncoding):
1576         (WebCore::Document::charset):
1577         (WebCore::Document::characterSet):
1578         Add new virtual method and route DOM synonym functions on Document through it.
1579
1580         * dom/ScriptExecutionContext.h:
1581         * workers/Worker.cpp:
1582         (WebCore::Worker::Worker):
1583         (WebCore::Worker::notifyFinished):
1584         * workers/WorkerContext.cpp:
1585         (WebCore::WorkerContext::WorkerContext):
1586         (WebCore::WorkerContext::encoding):
1587         (WebCore::WorkerContext::completeURL): Added comment on why this is different from Document::completeURL
1588         * workers/WorkerContext.h:
1589         (WebCore::WorkerContext::create):
1590         * workers/WorkerContextProxy.h:
1591         * workers/WorkerMessagingProxy.cpp:
1592         (WebCore::WorkerMessagingProxy::startWorkerContext):
1593         * workers/WorkerMessagingProxy.h:
1594         * workers/WorkerThread.cpp:
1595         (WebCore::WorkerThreadStartupData::create):
1596         (WebCore::WorkerThreadStartupData::WorkerThreadStartupData):
1597         (WebCore::WorkerThread::create):
1598         (WebCore::WorkerThread::WorkerThread):
1599         (WebCore::WorkerThread::workerThread):
1600         * workers/WorkerThread.h:
1601         All of the above route the 'encoding' parameter of parent context to the new
1602         instance of WorkerContext - from Worker::notifyFinished() via WorkerMessagingProxy
1603         through WorkerThread through WorkerThreadStartupData and into constructor of WorkerContext.
1604
1605 2009-03-06  Peter Kasting  <pkasting@google.com>
1606
1607         Build bustage fix.
1608
1609         * dom/Node.cpp:
1610         (WebCore::Node::dispatchWheelEvent):
1611
1612 2009-03-06  Eric Carlson  <eric.carlson@apple.com>
1613
1614         Reviewed by Antti Koivisto.
1615
1616         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
1617         (WebCore::MediaPlayerPrivate::createQTMovieView):  Delay callback while setting up movieview.
1618
1619 2009-03-06  Douglas R. Davidson  <ddavidso@apple.com>
1620
1621         Reviewed by Justin Garcia.
1622         
1623         https://bugs.webkit.org/show_bug.cgi?id=24108
1624
1625         Update spelling and grammar checking to use the new combined text 
1626         checking (with automatic language identification) on Snow Leopard. 
1627         Tested manually in Mail and Safari; automated tests to come later. 
1628         
1629         * editing/Editor.cpp:
1630         (WebCore::findFirstMisspellingOrBadGrammarInRange):
1631         (WebCore::Editor::advanceToNextMisspelling):
1632         (WebCore::guessesForMisspelledOrUngrammaticalRange):
1633         (WebCore::Editor::guessesForMisspelledOrUngrammaticalSelection):
1634         (WebCore::Editor::markMisspellingsAfterTypingToPosition):
1635         (WebCore::markAllMisspellingsAndBadGrammarInRanges):
1636         (WebCore::Editor::markMisspellingsAndBadGrammar):
1637         * editing/Editor.h:
1638         * loader/EmptyClients.h:
1639         (WebCore::EmptyEditorClient::checkSpellingAndGrammarOfParagraph):
1640         * page/EditorClient.h:
1641         * page/Frame.cpp:
1642         (WebCore::Frame::respondToChangedSelection):
1643         * platform/ContextMenu.cpp:
1644         (WebCore::ContextMenu::populate):
1645
1646 2009-03-06  Peter Kasting  <pkasting@google.com>
1647
1648         Reviewed by Darin Fisher.
1649
1650         https://bugs.webkit.org/show_bug.cgi?id=24407
1651         Windows scroll amount was too small, and wheel scroll distance
1652         conversion code was overly complex.
1653
1654         * page/EventHandler.cpp:
1655         (WebCore::scrollAndAcceptEvent):
1656         * platform/PlatformWheelEvent.h:
1657         (WebCore::):
1658         * platform/ScrollView.cpp:
1659         (WebCore::ScrollView::wheelEvent):
1660         * platform/Scrollbar.h:
1661         * platform/gtk/WheelEventGtk.cpp:
1662         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
1663         * platform/mac/WheelEventMac.mm:
1664         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
1665         * platform/qt/WheelEventQt.cpp:
1666         * platform/win/WheelEventWin.cpp:
1667         (WebCore::horizontalScrollChars):
1668         (WebCore::verticalScrollLines):
1669         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
1670         * platform/wx/MouseWheelEventWx.cpp:
1671         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
1672
1673 2009-03-06  Dimitri Glazkov  <dglazkov@chromium.org>
1674
1675         Reviewed by Adam Roben.
1676
1677         Generate valid bindings with HTML5 database support disabled. 
1678
1679         * inspector/InspectorController.idl: Added feature guard around 
1680         databaseTableNames definition.
1681
1682 2009-03-04  Xan Lopez  <xan@gnome.org>
1683
1684         Reviewed by Holger Freyther.
1685
1686         https://bugs.webkit.org/show_bug.cgi?id=24358
1687         [GTK] Scrollbars not clipped correctly
1688
1689         Do not take into account the case of being a ScrollView scrollbar,
1690         since those are native in our case.
1691
1692         * platform/gtk/ScrollbarGtk.cpp:
1693         (ScrollbarGtk::frameRectsChanged):
1694
1695 2009-03-04  Xan Lopez  <xan@gnome.org>
1696
1697         Reviewed by Holger Freyther.
1698
1699         https://bugs.webkit.org/show_bug.cgi?id=24358
1700         [GTK] Scrollbars not clipped correctly
1701
1702         Move Widget::paint to ScrollbarGtk::paint, since it's scrollbar
1703         specific and it's our only Widget anyway.
1704
1705         * platform/gtk/ScrollbarGtk.cpp:
1706         (ScrollbarGtk::paint):
1707         * platform/gtk/ScrollbarGtk.h:
1708         * platform/gtk/WidgetGtk.cpp:
1709
1710 2009-03-04  Xan Lopez  <xan@gnome.org>
1711
1712         Reviewed by Holger Freyther.
1713
1714         https://bugs.webkit.org/show_bug.cgi?id=24358
1715         [GTK] Scrollbars not clipped correctly
1716
1717         Use correct clip rectangle and apply coordinate translation needed
1718         for non-ScrollView scrollbars.
1719
1720         We were ignoring the clip rectangle passed as parameter, which is
1721         wrong in the case of non coalesced expose events. This, in turn,
1722         uncovers the fact that we were not applying coordinate translation
1723         to our position.
1724
1725         * platform/gtk/WidgetGtk.cpp:
1726         (WebCore::Widget::paint):
1727
1728 2009-03-06  Eric Carlson  <eric.carlson@apple.com>
1729
1730         Build fix, no review
1731
1732         * platform/graphics/chromium/MediaPlayerPrivateChromium.h: fix setSize declaration
1733
1734 2009-03-06  Eric Carlson  <eric.carlson@apple.com>
1735
1736         Reviewed by Simon Fraser.
1737
1738         https://bugs.webkit.org/show_bug.cgi?id=22790
1739         Bug 22790: [Transforms] MediaPlayer::setRect() makes no sense with transforms
1740         Replace media engine setRect with setSize since they don't use about the 
1741         position anyway.
1742
1743         * platform/graphics/MediaPlayer.cpp:
1744         (WebCore::NullMediaPlayerPrivate::setSize): Changed from setRect.
1745         (WebCore::MediaPlayer::setSize): Ditto.
1746         * platform/graphics/MediaPlayer.h:
1747         (WebCore::MediaPlayer::size): Changed from rect().
1748
1749         * platform/graphics/MediaPlayerPrivate.h: Changed setRect to setSize.
1750
1751         * platform/graphics/chromium/MediaPlayerPrivateChromium.h: Ditto.
1752
1753         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp: 
1754         (WebCore::MediaPlayerPrivate::MediaPlayerPrivate): Initialize m_size instead of m_rect
1755         (WebCore::MediaPlayerPrivate::setSize): Changed from setRect
1756         (WebCore::MediaPlayerPrivate::paint): update comment
1757         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.h: m_rect -> m_size.
1758
1759         * platform/graphics/mac/MediaPlayerPrivateQTKit.h:  m_rect
1760         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
1761         (WebCore::MediaPlayerPrivate::MediaPlayerPrivate): Initialize m_rect.
1762         (WebCore::MediaPlayerPrivate::createQTMovieView): setRect-> setSize.
1763         (WebCore::MediaPlayerPrivate::setSize): Changed from setRect
1764         (WebCore::MediaPlayerPrivate::paint): Call view:setFrame: when in a media document so 
1765         the movie is drawn in the correct location.
1766
1767         * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
1768         (WebCore::MediaPlayerPrivate::setSize):  Changed from setRect
1769         * platform/graphics/qt/MediaPlayerPrivatePhonon.h:
1770
1771         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
1772         (WebCore::MediaPlayerPrivate::setSize):  Changed from setRect
1773         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.h:
1774
1775         * rendering/RenderVideo.cpp:
1776         (WebCore::RenderVideo::updatePlayer): Call setSize instead of setRect.
1777
1778 2009-03-06  Darin Adler  <darin@apple.com>
1779
1780         Reviewed by Darin Fisher.
1781
1782         Bug 24422: REGRESSION: null-URL crash in FrameLoader setting location.hash on new window
1783         https://bugs.webkit.org/show_bug.cgi?id=24422
1784         rdar://problem/6402208
1785
1786         Test: fast/dom/location-new-window-no-crash.html
1787
1788         The issue here is empty (or null) URLs. I picked the "schedule navigation" bottleneck
1789         to add some checks for empty URLs. We could also put the empty URL checks at some
1790         other bottleneck level and add more assertions over time. I tried adding a few more
1791         assertions to functions like loadURL and hit them while running the regression tests,
1792         so it's probably going to be a bit tricky to clean this up throughout the loader.
1793
1794         * loader/FrameLoader.cpp:
1795         (WebCore::ScheduledRedirection::ScheduledRedirection): Explicitly marked this struct
1796         immutable by making all its members const. Added assertions about the arguments,
1797         including that the URL is not empty. Initialized one uninitialized member in one of
1798         the constructors.
1799         (WebCore::FrameLoader::scheduleHTTPRedirection): Added an early exit to make this
1800         a no-op if passed an empty URL.
1801         (WebCore::FrameLoader::scheduleLocationChange): Ditto.
1802         (WebCore::FrameLoader::scheduleRefresh): Ditto.
1803
1804 2009-03-06  Gustavo Noronha Silva  <gns@gnome.org>
1805
1806         Reviewed by Holger Freyther.
1807
1808         https://bugs.webkit.org/show_bug.cgi?id=24423
1809         Use new soup_message_body_set_accumulate API in soup backend
1810
1811         Disable accumulating chunks for request_body on file uploads,
1812         using the new soup API.
1813
1814         * platform/network/soup/ResourceHandleSoup.cpp:
1815         (WebCore::ResourceHandle::startHttp):
1816
1817 2009-03-06  Gustavo Noronha Silva  <gns@gnome.org>
1818
1819         Reviewed by Holger Freyther.
1820
1821         Replace use of deprecated SOUP_MESSAGE_OVERWRITE_CHUNKS flag with
1822         the new soup_message_body_set_accumulate API in soup.
1823
1824         * platform/network/soup/ResourceHandleSoup.cpp:
1825         (WebCore::gotHeadersCallback):
1826         (WebCore::ResourceHandle::startHttp):
1827
1828 2009-03-06  Gustavo Noronha Silva  <gns@gnome.org>
1829
1830         Reviewed by Holger Freyther.
1831
1832         https://bugs.webkit.org/show_bug.cgi?id=24051
1833         Soup backend needs content sniffing capabilities
1834
1835         Perform content sniffing when using soup, so that we have a chance
1836         of figuring out the Content-Type of the file if it's not sent by
1837         the server.
1838
1839         * platform/network/ResourceHandleInternal.h:
1840         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
1841         * platform/network/soup/ResourceHandleSoup.cpp:
1842         (WebCore::gotHeadersCallback):
1843         (WebCore::gotChunkCallback):
1844
1845 2009-03-06  Hironori Bono  <hbono@chromium.org>
1846
1847         Reviewed by Alexey Proskuryakov.
1848
1849         https://bugs.webkit.org/show_bug.cgi?id=24342
1850         Cannot insert a Thai character after a Thai prepend character when using ICU 4.0
1851
1852         This change creates a new break iterator "cursorMovementIterator" for
1853         moving cursors and use it when moving an input cursor.
1854         In "TextBreakIteratorICU.cpp", this break iterator uses custom ruleset
1855         based on the one of ICU 3.8.
1856         On the other hand, in "TextBreakIteratorQt.cpp", this break iterator
1857         just calls the characterBreakIterator() function.
1858
1859         Test: editing/inserting/insert-thai-characters-001.html
1860
1861         * platform/text/TextBreakIterator.h: Added a new function cursorMovementIterator().
1862         * platform/text/TextBreakIteratorICU.cpp: Implemented the cursorMovementIterator() function for ICU.
1863         (WebCore::setUpIteratorWithRules): Ditto.
1864         (WebCore::cursorMovementIterator): Ditto.
1865         * platform/text/qt/TextBreakIteratorQt.cpp: Implemented the cursorMovementIterator() function for Qt.
1866         (WebCore::cursorMovementIterator): Ditto.
1867         * rendering/RenderText.cpp: Call the cursorMovementIterator() function when moving an input cursor.
1868         (WebCore::RenderText::previousOffset): Ditto.
1869         (WebCore::RenderText::nextOffset): Ditto.
1870
1871 2009-03-05  Alexey Proskuryakov  <ap@webkit.org>
1872
1873         Reviewed by Oliver Hunt.
1874
1875         <rdar://problem/6621701> Safari 4 Beta Breaks XMLHttpRequest Response Text With Special
1876         Characters (a compatibility issue with widgets).
1877
1878         Test: http/tests/xmlhttprequest/broken-xml-encoding.html
1879
1880         Revert part of an Acid 3 fix - now we are no longer strict when decoding XMLHttpRequest XML
1881         responses.
1882
1883         * loader/TextResourceDecoder.cpp:
1884         (WebCore::TextResourceDecoder::TextResourceDecoder):
1885         (WebCore::TextResourceDecoder::decode):
1886         (WebCore::TextResourceDecoder::flush):
1887         * loader/TextResourceDecoder.h:
1888         (WebCore::TextResourceDecoder::useLenientXMLDecoding):
1889         Don't stop on XML decoding errors if useLenientXMLDecoding() was called.
1890
1891         * xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::didReceiveData): Don't stop on XML
1892         decoding errors. This behavior is now limited to other kinds of XML content.
1893
1894 2009-03-05  Simone Fiorentino  <simone.fiorentino@consulenti.fastweb.it>
1895
1896         Bug 24382: request to add SH4 platform
1897
1898         <https://bugs.webkit.org/show_bug.cgi?id=24382>
1899
1900         Reviewed by David Kilzer.
1901
1902         * platform/text/AtomicString.cpp:
1903         (WebCore::equal): Aligned memory access on SH4 platform.
1904
1905 2009-03-05  Jeremy Moskovich  <jeremy@chromium.org>
1906
1907         Reviewed by Simon Fraser.
1908
1909         Fix for https://bugs.webkit.org/show_bug.cgi?id=24215
1910
1911         Gears expects an object tag with display:none to instantiate the plugin,
1912         so we add a workaround to make this work and fix Gears on WebKit trunk.
1913
1914         * html/HTMLObjectElement.cpp:
1915         (WebCore::HTMLObjectElement::rendererIsNeeded):
1916
1917 2009-03-05  Avi Drissman  <avi@chromium.org>
1918
1919         Reviewed by Darin Fisher.
1920
1921         Need to have Chromium Mac match Safari Mac's accesskey handling
1922         https://bugs.webkit.org/show_bug.cgi?id=24404
1923
1924         * page/chromium/EventHandlerChromium.cpp:
1925         (WebCore::EventHandler::accessKeyModifiers): Share access key modifiers with Mac Safari when building for the Mac.
1926
1927 2009-03-05  Simon Fraser  <simon.fraser@apple.com>
1928
1929         Reviewed by Dave Hyatt
1930
1931         https://bugs.webkit.org/show_bug.cgi?id=24412
1932         
1933         Fix crash when hit-testing elements with -webkit-transform-style: preserve-3d
1934         but no transform. We need to make localTransformState if we see preserve-3d.
1935         Also need to call update3DTransformedDescendantStatus() before we test
1936         m_has3DTransformedDescendant.
1937
1938         Test: transforms/3d/hit-testing/hit-preserves-3d.html
1939
1940         * rendering/RenderLayer.cpp:
1941         (WebCore::RenderLayer::hitTestLayer):
1942
1943 2009-03-05  Eric Seidel  <eric@webkit.org>
1944
1945         Reviewed by David Hyatt.
1946
1947         Changes to RenderLayer destruction to hopefully help catch an elusive crasher
1948         https://bugs.webkit.org/show_bug.cgi?id=24409
1949         
1950         Added a new RenderBoxModelObject::destroyLayer() call which is
1951         now the only way which RenderLayers should ever be destroyed.
1952         This ensures that the pointer to the layer is cleared in the
1953         RenderObject after destruction, allowing us to ASSERT in the
1954         RenderBoxModelObject destructor.
1955
1956         * rendering/RenderBox.cpp:
1957         (WebCore::RenderBox::calcAbsoluteHorizontalReplaced):
1958         * rendering/RenderBoxModelObject.cpp:
1959         (WebCore::RenderBoxModelObject::~RenderBoxModelObject):
1960         (WebCore::RenderBoxModelObject::destroyLayer):
1961         (WebCore::RenderBoxModelObject::destroy):
1962         (WebCore::RenderBoxModelObject::styleDidChange):
1963         * rendering/RenderBoxModelObject.h:
1964         * rendering/RenderLayer.cpp:
1965         (WebCore::RenderLayer::stackingContext):
1966         (WebCore::RenderLayer::destroy):
1967         (WebCore::RenderLayer::removeOnlyThisLayer):
1968         * rendering/RenderLayer.h:
1969         * rendering/RenderObject.cpp:
1970         (WebCore::RenderObject::destroy):
1971         * rendering/RenderWidget.cpp:
1972         (WebCore::RenderWidget::destroy):
1973
1974 2009-03-05  Eric Seidel  <eric@webkit.org>
1975
1976         Reviewed by David Hyatt.
1977
1978         Remove old, unused IE 5.5 scrollbar-* CSS properties.
1979         Sort the unimplemented getComputedStyle properties so it's
1980         easier to see which ones actually need implementation.
1981
1982         * css/CSSComputedStyleDeclaration.cpp:
1983         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1984         * css/CSSParser.cpp:
1985         (WebCore::CSSParser::parseValue):
1986         * css/CSSPropertyNames.in:
1987         * css/CSSStyleSelector.cpp:
1988         (WebCore::CSSStyleSelector::applyProperty):
1989
1990 2009-03-05  Justin Garcia  <justin.garcia@apple.com>
1991
1992         Reviewed by Darin Adler.
1993         
1994         WebViewDidChangeSelectionNotifications weren't being sent for commands that change the selection's position
1995         within the document without changing its position in the DOM.  For example, pressing return in (caret marked by ^):
1996         <div contentEditable="true"><div>^Hello</div></div>
1997         Undo was being enabled, shouldDeleteDOMRange called, etc. when doing no-op deletes (a delete in an empty document 
1998         for example). 
1999
2000         Changes to layout tests demonstrate fix.
2001         
2002         * editing/EditCommand.cpp:
2003         (WebCore::EditCommand::apply): Don't call applyEditing for a TypingCommand.  The TypingCommand knows whether or
2004         not it did work that needs to be applied.
2005         * editing/Editor.cpp:
2006         (WebCore::Editor::appliedEditing): Moved code (but did not alter) to changeSelectionAfterCommand.
2007         (WebCore::Editor::unappliedEditing): Ditto.
2008         (WebCore::Editor::reappliedEditing): Ditto.
2009         (WebCore::Editor::changeSelectionAfterCommand): Moved code from *appliedEditing into here.  Also call out to
2010         EditorClient::respondToChangedSelection() for commands that changed the selection's position in the document
2011         even if they did not change it's position in the DOM.  Any TypingCommand that gets this far changed it's position
2012         in the document.
2013         * editing/Editor.h:
2014         * editing/TypingCommand.cpp:
2015         (WebCore::TypingCommand::TypingCommand): Removed unused m_appliedEditing.
2016         (WebCore::TypingCommand::typingAddedToOpenCommand): Always apply editing.  We won't get this far if we don't need to.
2017         (WebCore::TypingCommand::deleteKeyPressed): Don't do any of the things that only make sense for Range selections, like
2018         adding to the killring and responding to a change in selections if the delete was a no-op.
2019         (WebCore::TypingCommand::forwardDeleteKeyPressed): Ditto.
2020         * editing/TypingCommand.h:
2021
2022 2009-03-05  Dimitri Glazkov  <dglazkov@chromium.org>
2023
2024         Reviewed by Adam Roben.
2025
2026         Eliminate a ref-counting leak in InspectorController.
2027
2028         * inspector/InspectorController.h: Made constructor private, added static create method.
2029         * page/Page.cpp:
2030         (WebCore::Page::Page): Change initializer to use static create method.
2031
2032 2009-03-05  Dimitri Glazkov  <dglazkov@chromium.org>
2033
2034         Reviewed by Timothy Hatcher.
2035
2036         https://bugs.webkit.org/show_bug.cgi?id=24355
2037         Add InspectorController.idl and convert InspectorController.cpp to use
2038         JSC bindings.
2039
2040         * DerivedSources.make: Added InspectorController.idl
2041         * WebCore.xcodeproj/project.pbxproj: Added idl, bindings files.
2042         * bindings/js/JSInspectorControllerCustom.cpp: Added.
2043         * bindings/scripts/CodeGeneratorJS.pm: Added Array to no-header types.
2044         * inspector/InspectorController.cpp: Removed hand-rolled bindings.
2045         * inspector/InspectorController.h: Added platform and addSourceToFrame methods.
2046         * inspector/InspectorController.idl: Added.
2047         * page/Page.h: Changed member to RefPtr since InspectorController is now ref-counted.
2048
2049 2009-03-05  Eric Carlson  <eric.carlson@apple.com>
2050
2051         Reviewed by Simon Fraser.
2052
2053         https://bugs.webkit.org/show_bug.cgi?id=24400
2054         Bug 24400: Remove "start", "end", "loopStart", "loopEnd", "currentLoop", and "playCount" 
2055         media element attributes
2056
2057         Test: media/video-loop.html
2058
2059         * html/HTMLMediaElement.cpp:
2060         (WebCore::HTMLMediaElement::HTMLMediaElement):
2061         (WebCore::HTMLMediaElement::loadInternal):
2062         (WebCore::HTMLMediaElement::setNetworkState):
2063         (WebCore::HTMLMediaElement::seek):
2064         (WebCore::HTMLMediaElement::playInternal):
2065         (WebCore::HTMLMediaElement::loop):
2066         (WebCore::HTMLMediaElement::setLoop):
2067         (WebCore::HTMLMediaElement::mediaPlayerTimeChanged):
2068         (WebCore::HTMLMediaElement::endedPlayback):
2069         (WebCore::HTMLMediaElement::updatePlayState):
2070         * html/HTMLMediaElement.h:
2071         * html/HTMLMediaElement.idl:
2072
2073 2009-03-05  Steve Falkenburg  <sfalken@apple.com>
2074
2075         <rdar://problem/6651112> Safari asks about re-posting a form even when page is cached
2076         
2077         Reviewed by Ada Chan.
2078
2079         * platform/network/cf/ResourceHandleCFNet.cpp:
2080         (WebCore::ResourceHandle::willLoadFromCache): Ported from Mac version.
2081
2082 2009-03-05  David Hyatt  <hyatt@apple.com>
2083
2084         Reviewed by Eric Seidel
2085
2086         https://bugs.webkit.org/show_bug.cgi?id=24248
2087
2088         Make sure painting of overflow controls checks that visibility:visible is set on the block before
2089         painting.  Pixel tests caught this regression.
2090
2091         Make sure resizer painting pushes a clip of the corner rect.  It was relying on the clip layers happened
2092         to do to their bounds (which had nothing to do with overflow).
2093
2094         * rendering/RenderBlock.cpp:
2095         (WebCore::RenderBlock::paint):
2096         * rendering/RenderLayer.cpp:
2097         (WebCore::RenderLayer::paintResizer):
2098
2099 2009-03-05  Yong Li  <yong.li@torchmobile.com>
2100
2101         Reviewed by Simon Fraser.
2102
2103         https://bugs.webkit.org/show_bug.cgi?id=24386
2104         A faster implementation of extractMIMETypeFromMediaType.
2105
2106         * platform/network/HTTPParsers.cpp:
2107         (WebCore::extractMIMETypeFromMediaType):
2108
2109 2009-03-05  Yong Li  <yong.li@torchmobile.com>
2110
2111         Reviewed by Antti Koivisto.
2112
2113         https://bugs.webkit.org/show_bug.cgi?id=24392
2114         Do not get the current time for unless we're doing PRELOAD_DEBUG as this
2115         can be unnecessarily expensive.
2116
2117         * html/PreloadScanner.cpp:
2118         (WebCore::PreloadScanner::write):
2119
2120 2009-03-04  Simon Fraser  <simon.fraser@apple.com>
2121
2122         Reviewed by Dave Hyatt
2123
2124         https://bugs.webkit.org/show_bug.cgi?id=24327
2125         
2126         When mapping points and hit testing through transforms, work
2127         correctly when acclerated animations of transforms are running.
2128         
2129         Tested by LayoutTests/animations/animation-hit-test-transform.html,
2130         which only failed when ACCELERATED_COMPOSITING was turned on.
2131
2132         * rendering/RenderLayer.cpp:
2133         (WebCore::RenderLayer::currentTransform):
2134         * rendering/RenderLayer.h:
2135         * rendering/RenderObject.cpp:
2136         (WebCore::RenderObject::transformFromContainer):
2137
2138 2009-03-05  Mike Belshe  <mike@belshe.com>
2139
2140         Reviewed by Darin Fisher.
2141
2142         https://bugs.webkit.org/show_bug.cgi?id=24391
2143         Frame.cpp uses JSC specific includes
2144
2145         * page/Frame.cpp:
2146
2147 2009-03-05  Gustavo Noronha Silva  <gns@gnome.org>
2148
2149         Reviewed by Alexey Proskuryakov.
2150
2151         https://bugs.webkit.org/show_bug.cgi?id=24389
2152         WebKitGTK+ crashes when cancelling plugin loads
2153
2154         Remove bogus calls to the client's didFinishLoading method from
2155         our ResourceHandle::cancel implementation. Calling
2156         didFinishLoading here is mostly inoffensive for most loads, but
2157         causes crashes when plugin loads are cancelled.
2158
2159         * platform/network/soup/ResourceHandleSoup.cpp:
2160         (WebCore::ResourceHandle::cancel):
2161
2162 2009-03-05  Steve Falkenburg  <sfalken@apple.com>
2163
2164         Windows build fix.
2165         
2166         * WebCore.vcproj/QTMovieWin.vcproj:
2167
2168 2009-03-05  Adam Treat  <adam.treat@torchmobile.com>
2169
2170         Build fix for when ENABLE_NETSCAPE_PLUGIN_API = 0.  The method
2171         ScriptController::jsObjectForPluginElement(HTMLPlugInElement*); is not
2172         protected by an #if and uses HTMLPlugInElement so it must be included.
2173
2174         * bindings/js/ScriptController.cpp:
2175
2176 2009-03-05  Dimitri Glazkov  <dglazkov@chromium.org>
2177
2178         GTK Build fix.
2179
2180         * inspector/ConsoleMessage.h: Use proper header.
2181
2182 2009-03-05  Dimitri Glazkov  <dglazkov@chromium.org>
2183
2184         Reviewed by Timothy Hatcher.
2185
2186         https://bugs.webkit.org/show_bug.cgi?id=24376
2187         Split InspectorController.cpp file into separate classes.
2188
2189         * GNUmakefile.am: Modified to include new files.
2190         * WebCore.pro: Ditto.
2191         * WebCore.scons: Ditto.
2192         * WebCore.vcproj/WebCore.vcproj: Ditto.
2193         * WebCore.xcodeproj/project.pbxproj: Ditto.
2194         * WebCoreSources.bkl: Ditto.
2195         * inspector/ConsoleMessage.cpp: Added.
2196         * inspector/ConsoleMessage.h: Added.
2197         * inspector/InspectorController.cpp:
2198         * inspector/InspectorDOMStorageResource.cpp: Added.
2199         * inspector/InspectorDOMStorageResource.h: Added.
2200         * inspector/InspectorDatabaseResource.cpp: Added.
2201         * inspector/InspectorDatabaseResource.h: Added.
2202         * inspector/InspectorResource.cpp: Added.
2203         * inspector/InspectorResource.h: Added.
2204
2205 2009-03-05  Eric Carlson  <eric.carlson@apple.com>
2206
2207         Reviewed by Darin Adler
2208
2209         https://bugs.webkit.org/show_bug.cgi?id=24387
2210         Remove media element bufferingRate attribute. No test necessary as there
2211         were none for this attribute.
2212
2213         * html/HTMLMediaElement.cpp:
2214         (WebCore::HTMLMediaElement::HTMLMediaElement): Don't initialize m_bufferingRate.
2215         (WebCore::HTMLMediaElement::loadInternal): Ditto.
2216         (WebCore::HTMLMediaElement::setNetworkState): Ditto.
2217         (WebCore::HTMLMediaElement::progressEventTimerFired): Don't calculate m_bufferingRate.
2218         * html/HTMLMediaElement.h: Remove m_bufferingRate.
2219         * html/HTMLMediaElement.idl: Ditto.
2220
2221 2009-03-05  Xan Lopez  <xan@gnome.org>
2222
2223         Reviewed by Mark Rowe.
2224
2225         https://bugs.webkit.org/show_bug.cgi?id=24377
2226         [GTK] Comply better with coding style guidelines in ResourceHandleSoup
2227
2228         Use C++ booleans, 0 instead of NULL, prefix boolean variables with
2229         'is', do not use 'else if' if the previous if had a return, delete
2230         trailing whitespace, etc.
2231
2232         * platform/network/ResourceHandleInternal.h:
2233         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
2234         * platform/network/soup/ResourceHandleSoup.cpp:
2235         (WebCore::WebCoreSynchronousLoader::WebCoreSynchronousLoader):
2236         (WebCore::fillResponseFromMessage):
2237         (WebCore::restartedCallback):
2238         (WebCore::finishedCallback):
2239         (WebCore::parseDataUrl):
2240         (WebCore::ensureSessionIsInitialized):
2241         (WebCore::ResourceHandle::startHttp):
2242         (WebCore::reportUnknownProtocolError):
2243         (WebCore::ResourceHandle::start):
2244         (WebCore::cleanupGioOperation):
2245         (WebCore::closeCallback):
2246         (WebCore::readCallback):
2247         (WebCore::openCallback):
2248         (WebCore::queryInfoCallback):
2249         (WebCore::ResourceHandle::startGio):
2250
2251 2009-03-04  Simon Fraser  <simon.fraser@apple.com>
2252
2253         Reviewed by Eric Seidel
2254
2255         https://bugs.webkit.org/show_bug.cgi?id=24328
2256         
2257         If an element has backface-visibility: hidden, hit testing should not
2258         hit the back sides of elements. Test for that by inverting the accumulated
2259         transform and looking at the z vector.
2260
2261         Tested by transforms/3d/hit-testing/backface-hit-test.html
2262         
2263         * rendering/RenderLayer.cpp:
2264         (WebCore::RenderLayer::hitTestLayer):
2265
2266 2009-03-04  Adam Langley  <agl@google.com>
2267
2268         Reviewed by Darin Fisher.
2269
2270         r41362 mistakenly added functions "RenderThemeWin::" into
2271         RenderThemeChromiumGtk.cpp. When correcting this, I somehow changed
2272         them to void return types. This patch switches them back to ints.
2273
2274         https://bugs.webkit.org/show_bug.cgi?id=24360
2275
2276         * rendering/RenderThemeChromiumLinux.cpp:
2277         (WebCore::RenderThemeChromiumLinux::buttonInternalPaddingLeft):
2278         (WebCore::RenderThemeChromiumLinux::buttonInternalPaddingRight):
2279         (WebCore::RenderThemeChromiumLinux::buttonInternalPaddingTop):
2280         (WebCore::RenderThemeChromiumLinux::buttonInternalPaddingBottom):
2281
2282 2009-03-04  Adam Langley  <agl@google.com>
2283
2284         Reviewed by Darin Fisher.
2285
2286         Chromium Linux: change some metrics to better match Windows after
2287         r41416. Aesthetically this may be worse, but web-compat is king.
2288
2289         Also, the previous code had an off by one error when drawing
2290         scrollbars which caused the scrollbar to overflow it's bounds by 1px
2291         at the right and bottom edges.
2292
2293         https://bugs.webkit.org/show_bug.cgi?id=24369
2294
2295         * rendering/RenderThemeChromiumLinux.cpp:
2296         (WebCore::):
2297         (WebCore::RenderThemeChromiumLinux::systemFont):
2298         * platform/chromium/ScrollbarThemeChromiumLinux.cpp:
2299         (WebCore::ScrollbarThemeChromium::paintTrackPiece):
2300
2301 2009-03-04  Eric Seidel  <eric@webkit.org>
2302
2303         Reviewed by Adam Roben.
2304
2305         Add an ASSERT to better demonstrate the cause of the crash in
2306         https://bugs.webkit.org/show_bug.cgi?id=23736
2307
2308         * loader/DocLoader.cpp:
2309         (WebCore::DocLoader::~DocLoader):
2310
2311 2009-03-04  David Levin  <levin@chromium.org>
2312
2313         Reviewed by Alexey Proskuryakov.
2314
2315         Bug 24337: Assert when doing sync XHR in a worker for a cacheable response.
2316         <https://bugs.webkit.org/show_bug.cgi?id=24337>
2317
2318         Tests: http/tests/xmlhttprequest/access-control-basic-denied-preflight-cache.html
2319                http/tests/xmlhttprequest/workers/xmlhttprequest-file-not-found.html
2320
2321         * loader/mac/ResourceLoaderMac.mm:
2322         (WebCore::ResourceLoader::willCacheResponse):
2323         An identifier is only asssigned if resource load callbacks are done.  So don't send
2324         willCacheResponse which uses identifier if resource load callbacks aren't being sent.
2325
2326 2009-03-04  David Levin  <levin@chromium.org>
2327
2328         Reviewed by Alexey Proskuryakov.
2329
2330         Bug 24330: Sync xhr in workers should send an abort exception when the worker is terminated.
2331         <https://bugs.webkit.org/show_bug.cgi?id=24330>
2332
2333         Test: http/tests/xmlhttprequest/workers/abort-exception-assert.html
2334
2335         * dom/ExceptionCode.cpp:
2336         (WebCore::xmlHttpRequestExceptionNames):
2337         Added missing ABORT_ERR whose absence caused an assert.
2338
2339         * loader/WorkerThreadableLoader.cpp:
2340         (WebCore::WorkerThreadableLoader::loadResourceSynchronously):
2341         (WebCore::WorkerThreadableLoader::MainThreadBridge::cancel):
2342         Add more logic to handle the termination case for sync xhr.
2343
2344 2009-03-04  Eric Carlson  <eric.carlson@apple.com>
2345
2346         Reviewed by Antti Koivisto.
2347
2348         https://bugs.webkit.org/show_bug.cgi?id=24364
2349         Add support for HTMLMediaElement canPlayType method. Make
2350         MediaPlayer::supportsType take a ContentType instead of a
2351         separate mime type and codecs parameter.
2352
2353         Test: media/video-can-play-type.html
2354
2355         * dom/DOMImplementation.cpp:
2356         (WebCore::DOMImplementation::createDocument):
2357         * html/HTMLMediaElement.cpp:
2358         (WebCore::HTMLMediaElement::canPlayType): Add canPlayType method.
2359         (WebCore::HTMLMediaElement::loadInternal): selectMediaURL returns a ContentType.
2360         (WebCore::HTMLMediaElement::selectMediaURL): Return a ContentType instead of raw MIME type.
2361         (WebCore::HTMLMediaElement::initialURL): selectMediaURL returns a ContentType.
2362         * html/HTMLMediaElement.h: Add prototype.
2363         * html/HTMLMediaElement.idl: Ditto.
2364         * platform/graphics/MediaPlayer.cpp:
2365         (WebCore::MediaPlayer::load): Take a ContentType instead of raw MIME type.
2366         (WebCore::MediaPlayer::supportsType): Ditto.
2367         * platform/graphics/MediaPlayer.h:
2368
2369 2009-03-04  Antti Koivisto  <antti@apple.com>
2370
2371         Reviewed by Dave Hyatt.
2372
2373         https://bugs.webkit.org/show_bug.cgi?id=24359
2374         Repaint throttling mechanism
2375         
2376         Excessive repainting can slow down page loadind. This implements a timer
2377         based throttling mechanism. It is behind ENABLE(REPAINT_THROTTLING) and not 
2378         enabled by default.
2379
2380         * loader/FrameLoader.cpp:
2381         (WebCore::FrameLoader::checkCompleted):
2382         * page/EventHandler.cpp:
2383         (WebCore::EventHandler::dispatchDragEvent):
2384         (WebCore::EventHandler::dispatchMouseEvent):
2385         (WebCore::EventHandler::keyEvent):
2386         (WebCore::EventHandler::handleTextInputEvent):
2387         * page/FrameView.cpp:
2388         (WebCore::FrameView::FrameView):
2389         (WebCore::FrameView::reset):
2390         (WebCore::FrameView::repaintContentRectangle):
2391         (WebCore::FrameView::beginDeferredRepaints):
2392         (WebCore::FrameView::endDeferredRepaints):
2393         (WebCore::FrameView::checkStopDelayingDeferredRepaints):
2394         (WebCore::FrameView::doDeferredRepaints):
2395         (WebCore::FrameView::updateDeferredRepaintDelay):
2396         (WebCore::FrameView::resetDeferredRepaintDelay):
2397         (WebCore::FrameView::adjustedDeferredRepaintDelay):
2398         (WebCore::FrameView::deferredRepaintTimerFired):
2399         (WebCore::FrameView::paintContents):
2400         * page/FrameView.h:
2401
2402 2009-03-04  Sam Weinig  <sam@webkit.org>
2403
2404         Rubber-stamped by Antti Koivisto.
2405
2406         Remove LOW_BANDWIDTH_DISPLAY as it is not being used by any platforms.
2407
2408         * dom/Document.cpp:
2409         (WebCore::Document::Document):
2410         * dom/Document.h:
2411         (WebCore::Document::haveStylesheetsLoaded):
2412         * html/HTMLTokenizer.cpp:
2413         (WebCore::HTMLTokenizer::scriptHandler):
2414         * loader/Cache.cpp:
2415         (WebCore::Cache::requestResource):
2416         * loader/CachedCSSStyleSheet.cpp:
2417         (WebCore::CachedCSSStyleSheet::checkNotify):
2418         * loader/DocLoader.h:
2419         * loader/FrameLoader.cpp:
2420         (WebCore::FrameLoader::FrameLoader):
2421         (WebCore::FrameLoader::requestFrame):
2422         (WebCore::FrameLoader::stopLoading):
2423         (WebCore::FrameLoader::begin):
2424         (WebCore::FrameLoader::write):
2425         (WebCore::FrameLoader::endIfNotLoadingMainResource):
2426         (WebCore::FrameLoader::checkCompleted):
2427         (WebCore::FrameLoader::requestObject):
2428         (WebCore::FrameLoader::loadItem):
2429         * loader/FrameLoader.h:
2430
2431 2009-03-02  Xan Lopez  <xan@gnome.org>
2432
2433         Reviewed by Mark Rowe.
2434
2435         https://bugs.webkit.org/show_bug.cgi?id=24287
2436         [GTK] Move auth dialog feature to WebKit/
2437
2438         Remove WebKitSoupAuthDialog files from build and stop using it.
2439
2440         * GNUmakefile.am:
2441         * platform/network/soup/ResourceHandleSoup.cpp:
2442         (WebCore::ensureSessionIsInitialized):
2443         * platform/network/soup/webkit-soup-auth-dialog.c: Removed.
2444         * platform/network/soup/webkit-soup-auth-dialog.h: Removed.
2445
2446 2009-03-04  Simon Fraser  <simon.fraser@apple.com>
2447
2448         Reviewed by Dave Hyatt
2449         
2450         https://bugs.webkit.org/show_bug.cgi?id=24361
2451         
2452         Reinstate code that sets result.innerNode when hitTest() returns true,
2453         but never filled in the innerNode. Fixes hit testing of generated content.
2454
2455         Test: fast/css-generated-content/hit-test-generated-content.html
2456
2457         * rendering/RenderLayer.cpp:
2458         (WebCore::RenderLayer::hitTestContents):
2459
2460 2009-03-04  Adam Barth  <abath@webkit.org>
2461
2462         Reviewed by Alexey Proskuryakov.
2463
2464         https://bugs.webkit.org/show_bug.cgi?id=24356
2465
2466         Fix WebKit style for allowUniversalAccessFromFileURLs.
2467
2468         * WebCore.base.exp:
2469         * dom/Document.cpp:
2470         (WebCore::Document::initSecurityContext):
2471         * page/Settings.cpp:
2472         (WebCore::Settings::Settings):
2473         (WebCore::Settings::setAllowUniversalAccessFromFileURLs):
2474         * page/Settings.h:
2475         (WebCore::Settings::allowUniversalAccessFromFileURLs):
2476
2477 2009-03-04  Brady Eidson  <beidson@apple.com>
2478
2479         Reviewed by Darin Adler
2480
2481         <rdar://problem/6619630> Quick Look of vCards stuck on image of first card opened.
2482
2483         I narrowed this down to http://trac.webkit.org/changeset/39304 which, among other things,
2484         consolidated some of the various decision making pieces of the Cache into the new method
2485         FrameLoader::cachePolicy().
2486
2487         Before 39304, when deciding whether to use an existing CachedResource, we checked if the FrameLoader 
2488         is reloading.  If it is, we'd evict any existing resource then recreate it.  Quick looks uses the
2489         same URL for this image every time and expects it to be reloaded with each new card.
2490
2491         The FrameLoader::isReloading() check did one thing - Ask the DocumentLoader if it's cache policy
2492         is "ReloadIgnoringCacheData".  This check was lost in the consolidation to the new method.  
2493
2494         * loader/FrameLoader.cpp:
2495         (WebCore::FrameLoader::cachePolicy): Restore the DocumentLoader's cachePolicy check as a possible
2496           condition for returning CachePolicyReload.
2497
2498 2009-03-04  Timothy Hatcher  <timothy@apple.com>
2499
2500         * English.lproj/localizedStrings.js: Update strings to include "DATABASES",
2501         "LOCAL STORAGE" and "SESSION STORAGE".
2502
2503 2009-03-04  Timothy Hatcher  <timothy@apple.com>
2504
2505         Fix a regression where the Web Inspector console would not animate
2506         in or out correctly.
2507
2508         Reviewed by Anders Carlsson.
2509
2510         * inspector/front-end/inspector.css: Move a z-index to a child element
2511         to get the correct stacking order during the animation.
2512
2513 2009-03-03  David Hyatt  <hyatt@apple.com>
2514
2515         https://bugs.webkit.org/show_bug.cgi?id=24201, pathologically bad block layout.
2516
2517         Make sure to factor clear deltas into y position estimates.  Also avoid doing the comparison of
2518         the final position against the y position estimate until after the clear has happened.  This gets rid
2519         of some duplicated cut/pasted code and also ensures a layout delta only has to be put in once.
2520
2521         Reviewed by Dan Bernstein
2522
2523         Added fast/block/float/nested-clearance.html
2524
2525         * rendering/RenderBlock.cpp:
2526         (WebCore::RenderBlock::collapseMargins):
2527         (WebCore::RenderBlock::clearFloatsIfNeeded):
2528         (WebCore::RenderBlock::estimateVerticalPosition):
2529         (WebCore::RenderBlock::layoutBlockChildren):
2530         (WebCore::RenderBlock::getClearDelta):
2531         * rendering/RenderBlock.h:
2532
2533 2009-03-02  Kim Grönholm  <kim.gronholm@nomovok.com>
2534
2535         Reviewed by Simon Hausmann.
2536
2537         Improvement to 3d transformations rendering in QtWebKit. QTransform is used
2538         instead of QMatrix. This allows perspective transformations since QTransform is
2539         a true 3x3 matrix.
2540
2541         * platform/graphics/qt/GraphicsContextQt.cpp: Use QTransform instead of QMatrix everywhere.
2542         (WebCore::GraphicsContext::getCTM):
2543         (WebCore::GraphicsContext::restorePlatformState):
2544         (WebCore::GraphicsContext::fillPath):
2545         (WebCore::GraphicsContext::strokePath):
2546         (WebCore::GraphicsContext::fillRect):
2547         (WebCore::GraphicsContext::translate):
2548         (WebCore::GraphicsContext::rotate):
2549         (WebCore::GraphicsContext::scale):
2550         (WebCore::GraphicsContext::concatCTM):
2551         * platform/graphics/qt/ImageQt.cpp:
2552         (WebCore::Image::drawPattern):
2553         * platform/graphics/qt/PathQt.cpp:
2554         (WebCore::Path::translate):
2555         (WebCore::Path::transform):
2556         * platform/graphics/qt/PatternQt.cpp:
2557         (WebCore::Pattern::createPlatformPattern):
2558         * platform/graphics/qt/TransformationMatrixQt.cpp:
2559         (WebCore::TransformationMatrix::operator QTransform): Replace the conversion operator
2560         to QMatrix with one to QTransform.
2561         * platform/graphics/transforms/TransformationMatrix.h:
2562         * platform/graphics/qt/FontQt.cpp:
2563
2564 2009-02-24  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
2565
2566         Reviewed by Simon Hausmann.
2567
2568         https://bugs.webkit.org/show_bug.cgi?id=24151
2569         Fix Qt/S60 build break
2570
2571         * platform/FileSystem.h: Create a default case for non-win and non-mac Qt builds
2572         * platform/qt/FileSystemQt.cpp: Ditto
2573         (WebCore::unloadModule):
2574
2575 2009-03-03  Mike Belshe  <mike@belshe.com>
2576
2577         Reviewed by Alexey Proskuryakov.
2578
2579         https://bugs.webkit.org/show_bug.cgi?id=21939
2580         Uninitialized ExceptionCode in DOMWindow::postMessage
2581
2582         * dom/MessagePort.cpp:
2583         (WebCore::MessagePort::postMessage):
2584
2585 2009-03-03  David Kilzer  <ddkilzer@apple.com>
2586
2587         <rdar://problem/6581203> WebCore and WebKit should install the same set of headers during installhdrs phase as build phase
2588
2589         Reviewed by Mark Rowe.
2590
2591         The fix is to add INSTALLHDRS_COPY_PHASE = YES and
2592         INSTALLHDRS_SCRIPT_PHASE = YES to WebCore.xcconfig, then to make
2593         sure various build phase scripts work with the installhdrs build
2594         phase.
2595
2596         * Configurations/Base.xcconfig: Defined REAL_PLATFORM_NAME
2597         based on PLATFORM_NAME to work around the missing definition on
2598         Tiger.
2599         * Configurations/WebCore.xcconfig: Added
2600         JAVASCRIPTCORE_PRIVATE_HEADERS_DIR variable to simplify logic in
2601         the "Generate Derived Sources" script.  Added
2602         INSTALLHDRS_COPY_PHASE = YES and INSTALLHDRS_SCRIPT_PHASE = YES.
2603
2604         * WebCore.xcodeproj/project.pbxproj:
2605         - Added shell code to prevent running "Check For Global
2606           Initializers", "Check For Exit Time Destructors" and "Check
2607           For Weak VTables" scripts during the installhdrs build phase.
2608         - Made "Generate Derived Sources" work for the installhdrs build
2609           phase.  Also simplified setting of CREATE_HASH_TABLE by using
2610           JAVASCRIPTCORE_PRIVATE_HEADERS_DIR.
2611
2612 2009-03-02  Adam Langley  <agl@google.com>
2613
2614         Reviewed by Darin Fisher.
2615
2616         Chromium Linux: Switch to using Skia to render widgets.
2617
2618         In order to sandbox the Chromium renderer on Linux we need to remove
2619         the X connection. GTK cannot render without an X connection so, for
2620         now, we render widgets ourselves.
2621
2622         Previously didn't use anti-alias fonts in order to match Windows font
2623         rendering exactly. This was helpful when bootstrapping our layout
2624         tests. Now, however, we are ready to enable it.
2625
2626         https://bugs.webkit.org/show_bug.cgi?id=24244
2627
2628         * platform/chromium/ScrollbarThemeChromium.cpp:
2629         (WebCore::ScrollbarThemeChromium::buttonSize):
2630         * platform/chromium/ScrollbarThemeChromiumLinux.cpp:
2631         (WebCore::ScrollbarThemeChromium::scrollbarThickness):
2632         (WebCore::ScrollbarThemeChromium::paintTrackPiece):
2633         (WebCore::ScrollbarThemeChromium::paintButton):
2634         (WebCore::ScrollbarThemeChromium::paintThumb):
2635         * platform/graphics/chromium/FontPlatformDataLinux.cpp:
2636         (WebCore::FontPlatformData::setupPaint):
2637         * platform/graphics/skia/PlatformContextSkia.cpp:
2638         (PlatformContextSkia::PlatformContextSkia):
2639         (PlatformContextSkia::~PlatformContextSkia):
2640         * platform/graphics/skia/PlatformContextSkia.h:
2641         * rendering/RenderThemeChromiumGtk.cpp: Removed.
2642         * rendering/RenderThemeChromiumGtk.h: Removed.
2643         * rendering/RenderThemeChromiumLinux.cpp: Added.
2644         * rendering/RenderThemeChromiumLinux.h: Added.
2645
2646 2009-03-03  Dimitri Glazkov  <dglazkov@chromium.org>
2647
2648         Reviewed by Darin Fisher.
2649
2650         https://bugs.webkit.org/show_bug.cgi?id=24261
2651         Fix return types.
2652
2653         Test: LayoutTests/dom/svg/level3/xpath/XPathEvaluator_evaluate_TYPE_ERR.svg
2654
2655         * bindings/v8/V8Binding.h:
2656         (WebCore::toInt32): change return type to int
2657         (WebCore::toFloat): change return type to float.
2658
2659 2009-03-03  Anders Carlsson  <andersca@apple.com>
2660
2661         Reviewed by John Sullivan.
2662
2663         https://bugs.webkit.org/show_bug.cgi?id=22884
2664         <rdar://problem/6449783>
2665         modified layout test crashes Safari
2666
2667         Null check NPStream before dereferencing it.
2668         
2669         * plugins/PluginView.cpp:
2670         (WebCore::PluginView::destroyStream):
2671
2672 2009-03-03  Eric Carlson  <eric.carlson@apple.com>
2673
2674         Reviewed by Simon Fraser.
2675
2676         Fix for <rdar://problem/6641045>
2677         Don't call QTKit to get movie properties until movie metadata has been loaded.
2678
2679         * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
2680         (WebCore::MediaPlayerPrivate::metaDataAvailable): defined
2681         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
2682         (WebCore::MediaPlayerPrivate::createQTTime): return default if !metaDataAvailable.
2683         (WebCore::MediaPlayerPrivate::play): Ditto.
2684         (WebCore::MediaPlayerPrivate::pause): Ditto.
2685         (WebCore::MediaPlayerPrivate::duration): Ditto.
2686         (WebCore::MediaPlayerPrivate::currentTime): Ditto.
2687         (WebCore::MediaPlayerPrivate::seek): Ditto.
2688         (WebCore::MediaPlayerPrivate::seekTimerFired): Ditto.
2689         (WebCore::MediaPlayerPrivate::paused): Ditto.
2690         (WebCore::MediaPlayerPrivate::seeking): Ditto.
2691         (WebCore::MediaPlayerPrivate::naturalSize): Ditto.
2692         (WebCore::MediaPlayerPrivate::hasVideo): Ditto.
2693         (WebCore::MediaPlayerPrivate::setVolume): Ditto.
2694         (WebCore::MediaPlayerPrivate::setRate): Ditto.
2695         (WebCore::MediaPlayerPrivate::dataRate): Ditto.
2696         (WebCore::MediaPlayerPrivate::maxTimeLoaded): Ditto.
2697         (WebCore::MediaPlayerPrivate::totalBytes): Ditto.
2698
2699 2009-03-03  Kevin McCullough  <kmccullough@apple.com>
2700
2701         - Spelling fix.
2702
2703         * page/Console.cpp:
2704         (WebCore::Console::profile):
2705
2706 2009-03-03  Dimitri Glazkov  <dglazkov@chromium.org>
2707
2708         Reviewed by Darin Fisher.
2709
2710         https://bugs.webkit.org/show_bug.cgi?id=23657
2711         Remove Database API callback IDLs from the project. 
2712         They were removed in r40633.
2713
2714         * WebCore.xcodeproj/project.pbxproj: Removed IDL files from the project.
2715
2716 2009-03-03  Kevin McCullough  <kmccullough@apple.com>
2717
2718         Reviewed by Oliver Hunt.
2719
2720         <rdar://problem/6639110> console.profile() doesn't work without a title
2721
2722         * page/Console.cpp:
2723         (WebCore::Console::profile): If there is no title assume this is a user
2724         initiated profile and give it the next incremented title name.
2725
2726 2009-03-03  Timothy Hatcher  <timothy@apple.com>
2727
2728         Fix a regression that broke dirxml and caused an ASSERT in debug builds. Also simplified
2729         the console code and refactored things to have fewer code paths and duplication.
2730
2731         rdar://problem/6367127
2732         https://bugs.webkit.org/show_bug.cgi?id=24329
2733
2734         Reviewed by Kevin McCullough.
2735
2736         Test: manual-tests/inspector/console-dir.html
2737
2738         * bindings/js/JSInspectedObjectWrapper.cpp:
2739         (WebCore::JSInspectedObjectWrapper::wrap): Use the lexicalGlobalObject instead of dynamicGlobalObject
2740         to fix an ASSERT about using a wrapper from the wrong ExecState.
2741         * bindings/js/JSQuarantinedObjectWrapper.cpp:
2742         (WebCore::JSQuarantinedObjectWrapper::JSQuarantinedObjectWrapper): Ditto.
2743         (WebCore::JSQuarantinedObjectWrapper::allowsUnwrappedAccessFrom): Ditto.
2744         * inspector/front-end/Console.js:
2745         (WebInspector.Console.prototype._format): Remove the inline argument and add forceObjectFormat.
2746         When forceObjectFormat is true, the only formatter used is _formatobject.
2747         (WebInspector.Console.prototype._formatvalue): Remove the inline argument.
2748         (WebInspector.Console.prototype._formatstring): Ditto.
2749         (WebInspector.Console.prototype._formatregexp): Ditto.
2750         (WebInspector.Console.prototype._formatarray): Ditto.
2751         (WebInspector.Console.prototype._formatnode): Remove the inline argument and make a DOM tree instead of an anchor.
2752         (WebInspector.Console.prototype._formatobject): Remove the inline argument and always make a property graph.
2753         (WebInspector.Console.prototype._formaterror): Remove the inline argument.
2754         (WebInspector.ConsoleMessage): Remove the case for MessageLevel.Node and
2755         simplify the case for MessageLevel.Object to use the normal _format code path with the %O formatter.
2756         (WebInspector.ConsoleMessage.prototype._format.formatForConsole): Don't pass an additional true argument for inline.
2757         (WebInspector.ConsoleMessage.prototype._format.formatAsObjectForConsole): Added. Pass a true argument for forceObjectFormat.
2758         (WebInspector.ConsoleMessage.prototype._format): Added support for the %O formatter. Use formatForConsole for all arguments.
2759         (WebInspector.ConsoleMessage.prototype.toString): Add the other message levels.
2760         * inspector/front-end/inspector.css: Tweak styles to look and work correctly.
2761         * inspector/front-end/utilities.js:
2762         (Object.type): Return "node" for Node objects.
2763         (Object.describe): Handle the "node" type.
2764         * page/Console.cpp:
2765         (WebCore::printMessageSourceAndLevelPrefix): Fix an assert by adding the other message level types.
2766         (WebCore::Console::dirxml): Use the standard log fuction since it prints a DOM tree for nodes by default.
2767         * page/Console.h:
2768         (WebCore::enum MessageLevel): Removed NodeMessageLevel. Added a FIXME.
2769
2770 2009-03-03  Scott Violet  <sky@google.com>
2771
2772         Reviewed by Eric Seidel.
2773
2774         https://bugs.webkit.org/show_bug.cgi?id=24325
2775         Crash on replacing document contents during drop.
2776
2777         Makes sure a node is in the document during a move before using it.
2778
2779         Test: fast/events/crash-on-mutate-during-drop.html
2780
2781         * editing/MoveSelectionCommand.cpp:
2782         (WebCore::MoveSelectionCommand::doApply):
2783
2784 2009-03-03  Jungshik Shin <jshin@chromium.org>
2785
2786         Reviewed by Eric Seidel.
2787
2788         https://bugs.webkit.org/show_bug.cgi?id=23028
2789         Enable dynamic web font support to Chromium on Windows.
2790         Files that were omitted by mistake in the latest patch
2791         that was landed.
2792
2793         * loader/CachedFont.cpp:
2794         (WebCore::CachedFont::~CachedFont):
2795         (WebCore::CachedFont::ensureCustomFontData):
2796         (WebCore::CachedFont::platformDataFromCustomData):
2797         (WebCore::CachedFont::allClientsRemoved):
2798         * platform/graphics/chromium/FontCustomPlatformData.cpp:
2799         (WebCore::EOTStream::EOTStream):
2800         (WebCore::createFontCustomPlatformData):
2801         * platform/graphics/win/FontCustomPlatformData.cpp:
2802         (WebCore::EOTStream::EOTStream):
2803         (WebCore::createFontCustomPlatformData):
2804
2805 2009-03-03  Gustavo Noronha Silva  <gns@gnome.org>
2806
2807         Reviewed by Alexey Proskuryakov.
2808
2809         https://bugs.webkit.org/show_bug.cgi?id=16826
2810         [Gtk] Implement WebKitDownload
2811
2812         Make the Soup backend able to handle requests without a frame,
2813         since we may have such things now that we support downloads.
2814
2815         * platform/network/ResourceHandleInternal.h:
2816         * platform/network/soup/ResourceHandleSoup.cpp:
2817         (WebCore::ResourceHandle::start):
2818
2819 2009-03-03  Dimitri Glazkov  <dglazkov@chromium.org>
2820
2821         Reviewed by Eric Seidel.
2822
2823         https://bugs.webkit.org/show_bug.cgi?id=24331
2824         Add custom V8 bindings for Element, Attr, HTMLFrame, and HTMLIFrame.
2825
2826         * bindings/v8/custom/V8AttrCustom.cpp: Added.
2827         * bindings/v8/custom/V8CustomBinding.cpp: Added.
2828         * bindings/v8/custom/V8CustomBinding.h: Added attribute-checking helpers.
2829         * bindings/v8/custom/V8ElementCustom.cpp: Added.
2830         * bindings/v8/custom/V8HTMLFrameElementCustom.cpp: Added.
2831         * bindings/v8/custom/V8HTMLIFrameElementCustom.cpp: Added.
2832
2833 2009-03-03  Brady Eidson  <beidson@apple.com>
2834
2835         Reviewed by Darin Adler
2836
2837         <rdar://problem/6616664> - Quick looks of various file types is broken
2838
2839         In http://trac.webkit.org/changeset/40553 there was an attempt to prevent NSURLRequest churn
2840         for non-HTTP loads when the underlying ResourceRequest changed.  Unfortunately it was a little
2841         overzealous as the mainDocumentURL is relevant for all loads, not only HTTP/HTTPS loads.
2842
2843         Partially reverted behavior to always set the mainDocumentURL in situations when we would've
2844         before that patch.
2845
2846         * loader/FrameLoader.cpp:
2847         (WebCore::FrameLoader::addExtraFieldsToRequest):
2848
2849         * platform/network/ResourceRequestBase.cpp:
2850         (WebCore::ResourceRequestBase::setMainDocumentURL):
2851
2852 2009-03-03  Chris Marrin  <cmarrin@apple.com>
2853
2854         Reviewed by Simon Fraser.
2855
2856         https://bugs.webkit.org/show_bug.cgi?id=24256
2857
2858         Added a WebCoreForceSoftwareAnimation flag.
2859
2860         * platform/graphics/mac/GraphicsLayerCA.mm:
2861         (WebCore::forceSoftwareAnimation):
2862         (WebCore::GraphicsLayerCA::setOpacity):
2863         (WebCore::GraphicsLayerCA::animateTransform):
2864         (WebCore::GraphicsLayerCA::animateFloat):
2865
2866 2009-03-02  Chris Marrin  <cmarrin@apple.com>
2867
2868         Reviewed by Sam Weinig.
2869
2870         https://bugs.webkit.org/show_bug.cgi?id=24257
2871
2872         Added prototype properties for several classes with constructors that
2873         were missing them, including the one mentioned in the bug.
2874
2875         Test: fast/dom/Window/custom-constructors.html
2876
2877         * bindings/js/JSAudioConstructor.cpp:
2878         (WebCore::JSAudioConstructor::JSAudioConstructor):
2879         * bindings/js/JSDOMWindowBase.cpp:
2880         (jsDOMWindowBaseWebKitCSSMatrix):
2881         * bindings/js/JSImageConstructor.cpp:
2882         (WebCore::JSImageConstructor::JSImageConstructor):
2883         * bindings/js/JSOptionConstructor.cpp:
2884         (WebCore::JSOptionConstructor::JSOptionConstructor):
2885         * bindings/js/JSWebKitCSSMatrixConstructor.cpp:
2886         (WebCore::JSWebKitCSSMatrixConstructor::JSWebKitCSSMatrixConstructor):
2887         * bindings/js/JSWebKitCSSMatrixConstructor.h:
2888         * bindings/js/JSWebKitPointConstructor.cpp:
2889         (WebCore::JSWebKitPointConstructor::JSWebKitPointConstructor):
2890         * bindings/js/JSWorkerConstructor.cpp:
2891         (WebCore::JSWorkerConstructor::JSWorkerConstructor):
2892
2893 2009-03-03  Dimitri Glazkov  <dglazkov@chromium.org>
2894
2895         Reviewed by Darin Fisher.
2896
2897         https://bugs.webkit.org/show_bug.cgi?id=24321
2898         Add V8 bindings headers.
2899
2900         * bindings/v8/V8Binding.h: Added.
2901         * bindings/v8/V8Proxy.h: Added.
2902         * bindings/v8/custom/V8CustomBinding.h: Added.
2903         * bindings/v8/custom/V8CustomEventListener.h: Added.
2904
2905 2009-03-03  Jungshik Shin <jshin@chromium.org>
2906
2907         Reviewed by Eric Seidel.
2908
2909         https://bugs.webkit.org/show_bug.cgi?id=23803
2910         Fix an 'off-by-1' error in ChromiumWin's font fallback.
2911
2912         * platform/graphics/chromium/FontCacheChromiumWin.cpp:
2913         (WebCore::FontCache::getFontDataForCharacters):
2914
2915 2009-03-03  Jungshik Shin  <jshin@chromium.org>
2916
2917         Reviewed by Eric Seidel.
2918
2919         http://bugs.webkit.org/show_bug.cgi?id=23028
2920         Enable dynamic web font support to Chromium on Windows: Part 1
2921         - Move OpenTypeUtilities.{cpp,h} to platform/graphics/opentype
2922           from platform/graphics/win because both Windows port and Chromium Windows
2923           port will use them.
2924         - Adjust WebCore.vcproj accordingly.
2925
2926         * WebCore.vcproj/WebCore.vcproj:
2927         * platform/graphics/opentype: Added.
2928         * platform/graphics/opentype/OpenTypeUtilities.cpp: Copied from WebCore/platform/graphics/win/OpenTypeUtilities.cpp.
2929         * platform/graphics/opentype/OpenTypeUtilities.h: Copied from WebCore/platform/graphics/win/OpenTypeUtilities.h.
2930         * platform/graphics/win/OpenTypeUtilities.cpp: Removed.
2931         * platform/graphics/win/OpenTypeUtilities.h: Removed.
2932
2933 2009-03-03  Simon Fraser  <simon.fraser@apple.com>
2934
2935         Reviewed by Dave Hyatt
2936
2937         https://bugs.webkit.org/show_bug.cgi?id=24312
2938         
2939         Take 3D transforms into account when hit testing:
2940         
2941         1. Maintain a bit on each RenderLayer that is set when the layer
2942            has 3d descendants, so that we know when to fall into the slow
2943            hit testing path.
2944            
2945         2. Make a ref-counted HitTestingTransformState, which is used to store
2946            an accumulated transform, and the hit test point, and hitTestRect
2947            in the plane of the ancestor non-3d ('flattening') layer.
2948            
2949            It's ref-counted so we can heap allocate it (to avoid stack bloat),
2950            and avoid copying when hitTestLayer calls itself after applying the transform.
2951            
2952         3. Add logic to hitTestLayer to depth-test just direct descendants, if any have
2953            3D transforms, or to do deep depth-testing when traversing a preserves-3d
2954            hierarchy. When hit, layers compute a z-offset from the ancestor flattening
2955            layer, which allows for correct depth testing.
2956            
2957            The existing early-return codepath is unaffected when there are no 3d transforms
2958            and no preserve-3d.
2959
2960         * rendering/RenderLayer.cpp:
2961         (WebCore::RenderLayer::RenderLayer):
2962         (WebCore::RenderLayer::updateTransform):
2963         (WebCore::RenderLayer::dirty3DTransformedDescendantStatus):
2964         (WebCore::RenderLayer::update3DTransformedDescendantStatus):
2965         (WebCore::RenderLayer::hitTest):
2966         (WebCore::computeZOffset):
2967         (WebCore::RenderLayer::createLocalTransformState):
2968         (WebCore::RenderLayer::hitTestLayer):
2969         (WebCore::RenderLayer::hitTestContents):
2970         * rendering/RenderLayer.h:
2971         (WebCore::RenderLayer::preserves3D):
2972         (WebCore::RenderLayer::has3DTransform):
2973         (WebCore::RenderLayer::setHas3DTransformedDescendant):
2974         (WebCore::RenderLayer::has3DTransformedDescendant):
2975         * rendering/RenderLayerBacking.cpp:
2976         * rendering/TransformState.cpp:
2977         (WebCore::TransformState::flatten):
2978         (WebCore::TransformState::mappedPoint):
2979         (WebCore::HitTestingTransformState::move):
2980         (WebCore::HitTestingTransformState::applyTransform):
2981         (WebCore::HitTestingTransformState::flatten):
2982         (WebCore::HitTestingTransformState::mappedPoint):
2983         (WebCore::HitTestingTransformState::mappedQuad):
2984         * rendering/TransformState.h:
2985         (WebCore::TransformState::TransformState):
2986         (WebCore::HitTestingTransformState::create):
2987         (WebCore::HitTestingTransformState::move):
2988         (WebCore::HitTestingTransformState::HitTestingTransformState):
2989
2990 2009-03-03  Brett Wilson  <brettw@chromium.org>
2991
2992         Fix uninitialized memory reads in the Chromium Windows transparency
2993         code that were identified by Purify,
2994
2995         Reviewed by Darin Fisher.
2996
2997         * platform/graphics/chromium/TransparencyWin.cpp:
2998         (WebCore::TransparencyWin::OwnedBuffers::OwnedBuffers):
2999         (WebCore::TransparencyWin::initializeNewContext):
3000
3001 2009-03-03  Simon Fraser  <simon.fraser@apple.com>
3002
3003         Reviewed by Dave Hyatt
3004
3005         https://bugs.webkit.org/show_bug.cgi?id=24312
3006         
3007         Factor the code that compute a transform relative to the container
3008         into RenderObject::transformFromContainer().
3009         
3010         * rendering/RenderBox.cpp:
3011         (WebCore::RenderBox::mapLocalToAbsolutePoint):
3012         (WebCore::RenderBox::mapAbsoluteToLocalPoint):
3013         * rendering/RenderObject.cpp:
3014         (WebCore::RenderObject::transformFromContainer):
3015         * rendering/RenderObject.h:
3016
3017 2009-03-03  Simon Fraser  <simon.fraser@apple.com>
3018
3019         Reviewed by Dave Hyatt
3020
3021         https://bugs.webkit.org/show_bug.cgi?id=24317
3022         
3023         Always return |true| from RenderTextControlMultiLine::nodeAtPoint() if
3024         the superclass found a node, otherwise we set the innerNode of the
3025         HitTestResult, but don't actually report that we found a hit.
3026
3027         * rendering/RenderTextControlMultiLine.cpp:
3028         (WebCore::RenderTextControlMultiLine::nodeAtPoint):
3029
3030 2009-03-03  Onne Gorter  <onne.gorter@avinity.net>
3031
3032         Reviewed by Anders Carlsson.
3033
3034         https://bugs.webkit.org/show_bug.cgi?id=23707
3035         resizing plugins does not work, because the plugin never gets informed
3036
3037         Make gtk plugins resize correctly, by sending them the setwindow event
3038         correctly. Also ensure that all plugin eventing is done with correct
3039         locking/calling. Mostly copied from mac implementation.
3040
3041         manual test: manual-tests/gtk/plugin-resize-scroll.html
3042
3043         * plugins/PluginView.h:
3044         * plugins/gtk/PluginViewGtk.cpp:
3045         (WebCore::PluginView::dispatchNPEvent):
3046         ensure locking/calling for NPEvents
3047         (WebCore::PluginView::updatePluginWidget):
3048         if something changed, let setNPWindowIfNeeded handle it
3049         (WebCore::PluginView::paint):
3050         (WebCore::PluginView::handleKeyboardEvent):
3051         (WebCore::PluginView::handleMouseEvent):
3052         ensure calling conventions
3053         (WebCore::PluginView::setNPWindowRect):
3054         just pass control to setNPWindowIfNeeded
3055         (WebCore::PluginView::setNPWindowIfNeeded):
3056         event the plugin correctly of new window
3057         (WebCore::PluginView::init):
3058         init through the new setup
3059
3060 2009-03-03  Mike Belshe  <mike@belshe.com>
3061
3062         Reviewed by Darin Fisher.
3063
3064         https://bugs.webkit.org/show_bug.cgi?id=24311
3065         Make IDL returning DOMObject use [V8Custom]
3066
3067         * dom/Document.idl:
3068         * html/HTMLCanvasElement.idl:
3069
3070 2009-03-02  Simon Fraser  <simon.fraser@apple.com>
3071
3072         Reviewed by Adele Peterson
3073
3074         https://bugs.webkit.org/show_bug.cgi?id=24313
3075         
3076         If RenderTextControlSingleLine::nodeAtPoint() pokes a node into the
3077         HitTestResult, then it had better well return |true|. And m_innerBlock
3078         could never have been set as the hit node by the superclass, because
3079         the superclass knows nothing about m_innerBlock.
3080         
3081         Test: fast/forms/input-hit-test-border.html
3082
3083         * rendering/RenderTextControlSingleLine.cpp:
3084         (WebCore::RenderTextControlSingleLine::nodeAtPoint):
3085
3086 2009-03-02  Sam Weinig  <sam@webkit.org>
3087
3088         Reviewed by Mark Rowe.
3089
3090         Enable Geolocation (except on Tiger and Leopard).
3091
3092         * Configurations/WebCore.xcconfig:
3093
3094 2009-03-02  Ojan Vafai  <ojan@chromium.org>
3095
3096         Reviewed by Adele Peterson.
3097
3098         Fix https://bugs.webkit.org/show_bug.cgi?id=24307
3099         Null out m_highlightedNode on hideHighlight().
3100         Ran WebCore/manual-tests/inspector/highlight-nodes.html.
3101
3102         * inspector/InspectorController.cpp:
3103         (WebCore::InspectorController::hideHighlight):
3104
3105 2009-03-02  Sam Weinig  <sam@webkit.org>
3106
3107         Reviewed by Geoffrey Garen.
3108
3109         Fix for <rdar://problem/6507404> Add Geolocation support.
3110
3111         This is not yet turned on for any Mac platform.
3112
3113         * WebCore.xcodeproj/project.pbxproj:
3114         * page/Chrome.cpp:
3115         (WebCore::Chrome::shouldAllowGeolocationForFrame):
3116         * page/Chrome.h:
3117         * page/ChromeClient.h:
3118         (WebCore::ChromeClient::shouldAllowGeolocationForFrame):
3119         * page/Geolocation.cpp:
3120         (WebCore::Geolocation::Geolocation):
3121         (WebCore::Geolocation::disconnectFrame): Remove call to setUsingGeolocation as the document
3122         will not be alive at this point.
3123         (WebCore::Geolocation::getCurrentPosition): Check if the embedding app allows geolocation and
3124         return a PERMISSION_DENIED if not.
3125         (WebCore::Geolocation::watchPosition): Ditto.
3126         (WebCore::Geolocation::shouldAllowGeolocation): Perform request to embedding layer of whether
3127         to allow geolocation and cache the result. 
3128         * page/Geolocation.h:
3129         (WebCore::Geolocation::):
3130         * platform/GeolocationService.cpp:
3131         * platform/GeolocationService.h:
3132         (WebCore::GeolocationService::~GeolocationService):
3133         (WebCore::GeolocationService::stopUpdating):
3134         * platform/mac/GeolocationServiceMac.h: Added.
3135         (WebCore::GeolocationServiceMac::lastPosition):
3136         (WebCore::GeolocationServiceMac::lastError):
3137         * platform/mac/GeolocationServiceMac.mm: Added.
3138         (WebCore::GeolocationService::create):
3139         (WebCore::GeolocationServiceMac::GeolocationServiceMac):
3140         (WebCore::GeolocationServiceMac::~GeolocationServiceMac):
3141         (WebCore::GeolocationServiceMac::startUpdating):
3142         (WebCore::GeolocationServiceMac::stopUpdating):
3143         (WebCore::GeolocationServiceMac::suspend):
3144         (WebCore::GeolocationServiceMac::resume):
3145         (WebCore::GeolocationServiceMac::positionChanged):
3146         (WebCore::GeolocationServiceMac::errorOccurred):
3147         (-[WebCoreCoreLocationObserver initWithCallback:]):
3148         (-[WebCoreCoreLocationObserver locationManager:didUpdateToLocation:fromLocation:]):
3149         (-[WebCoreCoreLocationObserver locationManager:didFailWithError:]):
3150
3151 2009-03-02  Kevin Ollivier  <kevino@theolliviers.com>
3152
3153         Build fixes for wxWidgets Mac trunk build.
3154
3155         * platform/wx/wxcode/mac/carbon/fontprops.cpp:
3156         (wxFontProperties::wxFontProperties):
3157         (GetTextExtent):
3158         * webcore-wx.bkl:
3159
3160 2009-03-02  Kevin Ollivier  <kevino@theolliviers.com>
3161
3162         wxGTK missing header build fix.
3163
3164         * platform/wx/wxcode/gtk/fontprops.cpp:
3165
3166 2009-03-02  Dan Bernstein  <mitz@apple.com>
3167
3168         Reviewed by Adam Roben.
3169
3170         - fix https://bugs.webkit.org/show_bug.cgi?id=21811
3171           REGRESSION: Windows Build Not Selecting Proper Font
3172
3173         * platform/graphics/win/FontCacheWin.cpp:
3174         (WebCore::createGDIFont): Added back code to verify that the created
3175         HFONT has the requested face name.
3176
3177 2009-03-02  Timothy Hatcher  <timothy@apple.com>
3178
3179         Fixes a regression caused by splitting the input and output of console commands.
3180
3181         https://bugs.webkit.org/show_bug.cgi?id=24293
3182
3183         Reviewed by Kevin McCullough.
3184
3185         * inspector/front-end/Console.js:
3186         (WebInspector.Console.prototype.addMessage): Don't treat ConsoleCommandResult as a
3187         normal ConsoleMessage when appending. This prevents resetting repeatCounts incorrectly.
3188
3189 2009-03-02  Timothy Hatcher  <timothy@apple.com>
3190
3191         Make exception messages and logged Error objects display consistently.
3192
3193         https://bugs.webkit.org/show_bug.cgi?id=18983
3194
3195         Reviewed by Adam Roben.
3196
3197         * English.lproj/localizedStrings.js: Remove a string for line numbers.
3198         * inspector/front-end/Console.js:
3199         (WebInspector.Console.prototype._enterKeyPressed): Pass the exception
3200         boolean to the ConsoleCommandResult constructor and don't pass level.
3201         (WebInspector.Console.prototype._formatnode): Fix a className typo.
3202         (WebInspector.Console.prototype._formaterror): Add an error-message
3203         classed span around the message to show in red and remove the
3204         console-message-url class from the link so it doesn't float right.
3205         Instead enclose the link in parentheses and use displayNameForURL
3206         to shorten the URL in the link.
3207         (WebInspector.ConsoleMessage.prototype.toMessageElement): Simplify
3208         how line numbers are shown since link underlining a string with
3209         parentheses looks bad.
3210         (WebInspector.ConsoleCommandResult): Take an exception boolean flag
3211         instead of a level and get line and URL based on that flag.
3212         * inspector/front-end/inspector.css: Tweaks to the styles.
3213
3214 2009-03-02  Ojan Vafai  <ojan@chromium.org>
3215
3216         Reviewed by Adele Peterson.
3217
3218         Bug 24048: extra windows button padding doesn't apply when there's no appearance
3219         <https://bugs.webkit.org/show_bug.cgi?id=24048>
3220
3221         Replace adjustButtonInnerStyle with buttonInternalPaddingLeft/Right/Top/Bottom.
3222
3223         No tests added as existing tests already cover this behavior.
3224
3225         * rendering/RenderButton.cpp:
3226         (WebCore::RenderButton::setupInnerStyle):
3227         * rendering/RenderTheme.cpp:
3228         * rendering/RenderTheme.h:
3229         (WebCore::RenderTheme::buttonInternalPaddingLeft):
3230         (WebCore::RenderTheme::buttonInternalPaddingRight):
3231         (WebCore::RenderTheme::buttonInternalPaddingTop):
3232         * rendering/RenderThemeChromiumGtk.cpp:
3233         (WebCore::RenderThemeWin::buttonInternalPaddingLeft):
3234         (WebCore::RenderThemeWin::buttonInternalPaddingRight):
3235         (WebCore::RenderThemeWin::buttonInternalPaddingTop):
3236         (WebCore::RenderThemeWin::buttonInternalPaddingBottom):
3237         * rendering/RenderThemeChromiumGtk.h:
3238         * rendering/RenderThemeChromiumWin.cpp:
3239         (WebCore::RenderThemeChromiumWin::buttonInternalPaddingLeft):
3240         (WebCore::RenderThemeChromiumWin::buttonInternalPaddingRight):
3241         (WebCore::RenderThemeChromiumWin::buttonInternalPaddingTop):
3242         (WebCore::RenderThemeChromiumWin::buttonInternalPaddingBottom):
3243         * rendering/RenderThemeChromiumWin.h:
3244         * rendering/RenderThemeWin.cpp:
3245         (WebCore::RenderThemeWin::buttonInternalPaddingLeft):
3246         (WebCore::RenderThemeWin::buttonInternalPaddingRight):
3247         (WebCore::RenderThemeWin::buttonInternalPaddingTop):
3248         (WebCore::RenderThemeWin::buttonInternalPaddingBottom):
3249         * rendering/RenderThemeWin.h:
3250
3251 2009-03-02  Adam Treat  <adam.treat@torchmobile.com>
3252
3253         Build fix for Qt port.  Remove unnecessary assert.
3254
3255         * platform/graphics/qt/ImageBufferQt.cpp:
3256         (WebCore::ImageBuffer::putImageData):
3257
3258 2009-03-02  Adam Treat  <adam.treat@torchmobile.com>
3259
3260         Reviewed by Adam Roben and previously by Eric Seidel and Simon Fraser.
3261
3262         https://bugs.webkit.org/show_bug.cgi?id=24227
3263         Ensure that the checkForSolidColor() optimization is correctly triggered
3264         for all cases of drawPattern.  Currently, the optimization was not triggered
3265         when the check had not been previously performed via a request for the
3266         image's NativeImagePtr.
3267
3268         Implement the Qt version of the checkForSolidColor() method.  Combined with
3269         the bug fix this reduces the time it takes to draw a repeating background
3270         of a 1x1 image from ~50msecs to ~0msecs on my machine.
3271
3272         * platform/graphics/BitmapImage.cpp:
3273         (WebCore::BitmapImage::BitmapImage):
3274         * platform/graphics/BitmapImage.h:
3275         (WebCore::BitmapImage::mayFillWithSolidColor):
3276         * platform/graphics/Image.h:
3277         (WebCore::Image::mayFillWithSolidColor):
3278         * platform/graphics/cairo/ImageCairo.cpp:
3279         (WebCore::BitmapImage::BitmapImage):
3280         (WebCore::BitmapImage::checkForSolidColor):
3281         * platform/graphics/cg/ImageCG.cpp:
3282         (WebCore::BitmapImage::BitmapImage):
3283         (WebCore::BitmapImage::checkForSolidColor):
3284         * platform/graphics/qt/ImageQt.cpp:
3285         (WebCore::BitmapImage::checkForSolidColor):
3286         * platform/graphics/skia/ImageSkia.cpp:
3287         (WebCore::BitmapImage::checkForSolidColor):
3288         * platform/graphics/wx/ImageWx.cpp:
3289         (WebCore::BitmapImage::checkForSolidColor):
3290
3291 2009-03-02  Gustavo Noronha Silva  <gns@gnome.org>
3292
3293         Unreviewed build fix; adding missing files to EXTRA_DIST, so that
3294         they show up in the tarball.
3295
3296         * GNUmakefile.am:
3297
3298 2009-03-02  Dirk Schulze  <krit@webkit.org>
3299
3300         Reviewed by Holger Freyther.
3301
3302         Added putImageData to Qt. Discussed with Ariya Hidayat.
3303
3304         [Qt] lacks putImageData support in Canvas
3305         https://bugs.webkit.org/show_bug.cgi?id=22186
3306
3307         * platform/graphics/qt/ImageBufferQt.cpp:
3308         (WebCore::ImageBuffer::putImageData):
3309
3310 2009-03-02  Timothy Hatcher  <timothy@apple.com>
3311
3312         Show exception messages again when evaluating bad expressions in the
3313         Web Inspector's console.
3314
3315         https://bugs.webkit.org/show_bug.cgi?id=19890
3316
3317         Reviewed by Oliver Hunt.
3318
3319         * bindings/js/JSQuarantinedObjectWrapper.cpp:
3320         (WebCore::JSQuarantinedObjectWrapper::transferExceptionToExecState):
3321         Fix the order in which the exception is set and cleared now that the
3322         exception is stored in the shared GlobalData, not per ExecState.
3323
3324 2009-02-28  Timothy Hatcher  <timothy@apple.com>
3325
3326         Make input in the Web Inspector console print before any output
3327         that might be added by the called function.
3328
3329         https://bugs.webkit.org/show_bug.cgi?id=19931
3330
3331         Reviewed by Oliver Hunt.
3332
3333         * inspector/front-end/Console.js:
3334         (WebInspector.Console.prototype._enterKeyPressed): Add the command
3335         message before evaluating the result. Associate the originating
3336         command to the result, so if they are adjacent there is no divider.
3337         (WebInspector.ConsoleCommand): No longer take a result.
3338         (WebInspector.ConsoleCommand.prototype.toMessageElement): Result
3339         code removed since it isn't used now.
3340         (WebInspector.ConsoleCommandResult): Subclass ConsoleMessage.
3341         (WebInspector.ConsoleCommandResult.prototype.toMessageElement):
3342         Call the ConsoleMessage toMessageElement and add a style class.
3343         * inspector/front-end/inspector.css: Add a new style class for
3344         adjacent results to hide the divider. Also tweak the position of
3345         the disclosure triangle for objects to not use the left margin.
3346
3347 2009-03-01  Chris Fleizach  <cfleizach@apple.com>
3348
3349         Reviewed by Oliver Hunt.
3350
3351         Bug 24282: AX Palindrome error when asking for a specific index of the AXChildren array
3352         <https://bugs.webkit.org/show_bug.cgi?id=24282>
3353
3354         When fetching an array of elements with a range, attachment views need to be returned
3355         instead of the actual attachment.
3356
3357         * page/mac/AccessibilityObjectWrapper.mm:
3358         (-[AccessibilityObjectWrapper accessibilityIndexOfChild:]):
3359         (-[AccessibilityObjectWrapper accessibilityArrayAttributeValues:index:maxCount:]):
3360
3361 2009-03-01  Ojan Vafai  <ojan@chromium.org>
3362
3363         Reviewed by Eric Seidel.
3364
3365         Bug 24251: Cleanup: replace positionForCoordinates with positionForPoint
3366         <https://bugs.webkit.org/show_bug.cgi?id=24251>
3367         
3368         Make RenderObject::positionForCoordinate non-virtual and
3369         RenderObject::positionForPoint virtual in preparation for
3370         removing positionFor* from RenderObject/RenderText.
3371
3372         * page/Frame.cpp:
3373         (WebCore::Frame::visiblePositionForPoint):
3374         * rendering/RenderBR.cpp:
3375         (WebCore::RenderBR::positionForPoint):
3376         * rendering/RenderBR.h:
3377         * rendering/RenderBlock.cpp:
3378         (WebCore::RenderBlock::positionForPoint):
3379         * rendering/RenderBlock.h:
3380         * rendering/RenderBox.cpp:
3381         (WebCore::RenderBox::positionForPoint):
3382         * rendering/RenderBox.h:
3383         * rendering/RenderInline.cpp:
3384         (WebCore::RenderInline::positionForPoint):
3385         * rendering/RenderInline.h:
3386         * rendering/RenderObject.cpp:
3387         (WebCore::RenderObject::positionForCoordinates):
3388         (WebCore::RenderObject::positionForPoint):
3389         * rendering/RenderObject.h:
3390         * rendering/RenderReplaced.cpp:
3391         (WebCore::RenderReplaced::positionForPoint):
3392         * rendering/RenderReplaced.h:
3393         * rendering/RenderSVGInlineText.cpp:
3394         (WebCore::RenderSVGInlineText::positionForPoint):
3395         * rendering/RenderSVGInlineText.h:
3396         * rendering/RenderText.cpp:
3397         (WebCore::RenderText::positionForPoint):
3398         * rendering/RenderText.h:
3399
3400 2009-03-01  Larry Ewing  <lewing@novell.com>
3401
3402         Reviewed by Alexey Proskuryakov.
3403
3404         https://bugs.webkit.org/show_bug.cgi?id=24080
3405         NPN_GetValue casting to the wrong type and writing outside bounds
3406
3407         Make sure to cast the value to the correct type so that only
3408         memory owned by the value is written to.
3409
3410         * plugins/gtk/PluginViewGtk.cpp (PluginView::getValueStatic): 
3411         * plugins/qt/PluginViewQt.cpp (PluginView::getValueStatic):
3412         * plugins/mac/PluginViewMac.cpp (PluginView::getValueStatic): 
3413         (PluginView::getValue):
3414
3415 2009-03-01  Jeremy Moskovich  <jeremy@chromium.org>
3416
3417         Reviewed by Simon Fraser.
3418
3419         https://bugs.webkit.org/show_bug.cgi?id=24197 and
3420         https://bugs.webkit.org/show_bug.cgi?id=23512
3421
3422         The Windows version of cgColor() is conditionally compiled using
3423         !PLATFORM(MAC) change this to PLATFORM(WIN_OS) so that Chrome
3424         can use the OS X version instead of the Windows version.
3425
3426         Also rename cgColor() -> createCGColor()
3427
3428         No observable change in behavior, so no test.
3429
3430         * platform/graphics/Color.h:
3431         * platform/graphics/cg/ColorCG.cpp:
3432         (WebCore::createCGColor):
3433         * platform/graphics/cg/GraphicsContextCG.cpp:
3434         (WebCore::GraphicsContext::setPlatformShadow):
3435         * platform/graphics/mac/ColorMac.mm:
3436         (WebCore::createCGColor):
3437         * platform/graphics/mac/GraphicsContextMac.mm:
3438         (WebCore::GraphicsContext::drawFocusRing):
3439         * platform/graphics/mac/GraphicsLayerCA.mm:
3440         (WebCore::setLayerBorderColor):
3441         (WebCore::setLayerBackgroundColor):
3442         (WebCore::GraphicsLayerCA::setBackgroundColor):
3443         * platform/graphics/win/GraphicsContextCGWin.cpp:
3444         (WebCore::GraphicsContext::drawFocusRing):
3445         * svg/graphics/filters/cg/SVGFEHelpersCg.mm:
3446         (WebCore::ciColor):
3447
3448 2009-03-01  David Levin  <levin@chromium.org>
3449
3450         Reviewed by Alexey Proskuryakov.
3451
3452         Bug 24271: XMLHttpRequest needs js bindings for Workers.
3453         <https://bugs.webkit.org/show_bug.cgi?id=24271>
3454
3455         Tests: http/tests/xmlhttprequest/workers/methods-async.html
3456                http/tests/xmlhttprequest/workers/methods.html
3457
3458         * bindings/js/JSWorkerContextBase.cpp:
3459         (WebCore::JSWorkerContextBase::getOwnPropertySlot):
3460         (jsWorkerContextBaseXMLHttpRequest):
3461         (setJSWorkerContextBaseXMLHttpRequest):
3462         Expose XMLHttpRequest to Workers.
3463
3464         * bindings/js/JSWorkerContextBase.h:
3465
3466         * bindings/js/JSXMLHttpRequestConstructor.cpp:
3467         (WebCore::JSXMLHttpRequestConstructor::JSXMLHttpRequestConstructor):
3468         (WebCore::constructXMLHttpRequest):
3469         (WebCore::JSXMLHttpRequestConstructor::mark):
3470         Removed the dependencies on Document.
3471
3472         * bindings/js/JSXMLHttpRequestConstructor.h:
3473         (WebCore::JSXMLHttpRequestConstructor::scriptExecutionContext):
3474         * dom/EventException.idl:
3475         * dom/EventListener.idl:
3476         Change to have the NoStaticTables attribute since they are used from XHR.
3477
3478         * loader/WorkerThreadableLoader.cpp:
3479         (WebCore::workerContextDidFinishLoading):
3480         (WebCore::WorkerThreadableLoader::MainThreadBridge::didFinishLoading):
3481         Fixed identifier to be unsigned long.
3482
3483         * loader/WorkerThreadableLoader.h:
3484         * workers/WorkerThread.cpp:
3485         (WebCore::WorkerThread::workerThread):
3486         Stop active objects when the thread is getting shutdown so that xhr gets properly shutdown.
3487
3488         * xml/XMLHttpRequestUpload.cpp:
3489
3490         * xml/XMLHttpRequest.idl:
3491         * xml/XMLHttpRequestException.idl:
3492         * xml/XMLHttpRequestProgressEvent.idl:
3493         * xml/XMLHttpRequestUpload.idl:
3494         Change to have the NoStaticTables attribute since they are used from XHR.
3495
3496 2009-03-01  Horia Olaru  <olaru@adobe.com>
3497
3498         Adding manual debugger test cases for bug.
3499
3500         https://bugs.webkit.org/show_bug.cgi?id=21073
3501
3502         Reviewed by Kevin McCullough.
3503
3504         * manual-tests/inspector/debugger-step-on-do-while-statements.html: Added.
3505         * manual-tests/inspector/debugger-step-on-for-in-statements.html: Added.
3506         * manual-tests/inspector/debugger-step-on-for-statements.html: Added.
3507         * manual-tests/inspector/debugger-step-on-while-statements.html: Added.
3508         * manual-tests/inspector/resources/loop-statements.js: Added.
3509
3510 2009-03-01  Dan Bernstein  <mitz@apple.com>
3511
3512         Reviewed by Darin Adler.
3513
3514         - fix <rdar://problem/6634768> Reproducible crash in RenderLayer::updateScrollCornerStyle() using full-page zoom at MobileMe Contacts
3515
3516         Test: fast/events/scroll-during-zoom-change.html
3517
3518         * dom/Document.cpp:
3519         (WebCore::Document::recalcStyle): Pause scheduled events during style
3520         reclaculation. Changes to the zoom property result in scroll events
3521         being generated during style recalc, and those events need to be
3522         deferred until the render tree is consistent.
3523         * page/FrameView.cpp:
3524         (WebCore::FrameView::layout): Changed to account for a case in which the
3525         post-layout tasks trigger a nested layout, which reactivates the
3526         post-layout task timer.
3527
3528 2009-03-01  Ross Boucher  <rboucher@gmail.com>
3529
3530         Alphabetically sort scripts in the Script's panel file popup menu.
3531
3532         https://bugs.webkit.org/show_bug.cgi?id=23395
3533
3534         Reviewed by Timothy Hatcher.
3535
3536         * inspector/front-end/ScriptsPanel.js:
3537         (WebInspector.ScriptsPanel.prototype._addScriptToFilesMenu):
3538         * inspector/front-end/utilities.js:
3539         (insertionIndexForObjectInListSortedByFunction):
3540         (indexOfObjectInListSortedByFunction):
3541
3542 2009-03-01  Yael Aharon  <yael.aharon@nokia.com>
3543
3544         Pass securityOrigin->host() instead of securityOrigin->domain() to WebInspector
3545         when creating databases, localStorage or sessionStorage. Changing document.domain
3546         should have no affect on databases, localStorage and sessionStorage in Web Inspector.
3547
3548         https://bugs.webkit.org/show_bug.cgi?id=23844
3549
3550         Reviewed by Timothy Hatcher.
3551
3552         * inspector/InspectorController.cpp:
3553         (WebCore::InspectorController::addDOMStorageScriptResource):
3554         (WebCore::InspectorController::didUseDOMStorage):
3555         * storage/Database.cpp:
3556         (WebCore::Database::openDatabase):
3557
3558 2009-03-01  Gustavo Noronha Silva  <gns@gnome.org>
3559
3560         Reviewed by Holger Freyther.
3561
3562         Avoid leaking errors when reporting GIO errors.
3563
3564         * platform/network/soup/ResourceHandleSoup.cpp:
3565         (WebCore::readCallback):
3566         (WebCore::openCallback):
3567         (WebCore::queryInfoCallback):
3568
3569 2009-03-01  Gustavo Noronha Silva  <gns@gnome.org>
3570
3571         Reviewed by Holger Freyther.
3572
3573         Fixes crash when the GIO backend is given the URI for a directory.
3574
3575         * platform/network/soup/ResourceHandleSoup.cpp:
3576         (WebCore::networkErrorForFile):
3577
3578 2009-02-28  Dimitri Glazkov  <dglazkov@chromium.org>
3579
3580         Reviewed by Darin Fisher.
3581
3582         https://bugs.webkit.org/show_bug.cgi?id=24261
3583         Fix V8 custom binding scrubbing error.
3584
3585         Test: fast/dom/TreeWalker/TreeWalker-currentNode.html
3586         Test: traversal/exception-forwarding.html
3587         TesT: traversal/stay-within-root.html
3588
3589         * bindings/v8/custom/V8CSSStyleDeclarationCustom.cpp:
3590         * bindings/v8/custom/V8NodeIteratorCustom.cpp:
3591         (WebCore::toV8): Replace v8::Undefined() return value with v8::Null().
3592         * bindings/v8/custom/V8TreeWalkerCustom.cpp:
3593         (WebCore::toV8): Ditto.
3594
3595 2009-02-28  Dimitri Glazkov  <dglazkov@chromium.org>
3596
3597         Reviewed by Darin Fisher.
3598
3599         https://bugs.webkit.org/show_bug.cgi?id=24261
3600         Fix V8 custom binding scrubbing error.
3601
3602         Test: fast/dom/CSSStyleDeclaration/css-properties-case-sensitive.html
3603
3604         * WebCore.xcodeproj/project.pbxproj:
3605         * bindings/v8/custom/V8CSSStyleDeclarationCustom.cpp:
3606         (WebCore::cssPropertyName):  Remove dubious checks, left over from
3607             incomplete conversion of parameter from pointer to pass-by-ref.
3608         (WebCore::NAMED_PROPERTY_GETTER): Initialize parameter.
3609         (WebCore::NAMED_PROPERTY_SETTER): Ditto.
3610
3611 2009-02-28  Xan Lopez  <xan@gnome.org>
3612
3613         Reviewed by Holger Freyther.
3614
3615         https://bugs.webkit.org/show_bug.cgi?id=24263
3616         [GTK] ref ResourceHandle until we are finished with it
3617
3618         Add a ref to the ResourceHandle in startHttp so we can keep it
3619         alive untill all callbacks have been executed, and unref it when
3620         soup tells us it's done with the SoupMessage (in
3621         finishedCallback). Fixes a number of crashes when calling
3622         didReceiveData whould crash because of the handle dying.
3623
3624         * platform/network/soup/ResourceHandleSoup.cpp:
3625         (WebCore::finishedCallback):
3626         (WebCore::ResourceHandle::startHttp):
3627
3628 2009-02-28  Adam Bergkvist <adam.bergkvist@ericsson.com>
3629
3630         Reviewed by Alexey Proskuryakov.
3631
3632         https://bugs.webkit.org/show_bug.cgi?id=24226
3633         [SOUP] HTTP status text is never set
3634
3635         Set HTTP status text to SoupMessage reason_phrase.
3636
3637         * platform/network/soup/ResourceHandleSoup.cpp:
3638         (WebCore::fillResponseFromMessage):
3639
3640 2009-02-28  Dan Bernstein  <mitz@apple.com>
3641
3642         - fix malformed project file
3643
3644         * WebCore.xcodeproj/project.pbxproj:
3645
3646 2009-02-28  Dan Bernstein  <mitz@apple.com>
3647
3648         Reviewed by Oliver Hunt.
3649
3650         - fix https://bugs.webkit.org/show_bug.cgi?id=23848
3651           <rdar://problem/6573250> REGRESSION: Crash when mouse cursor moves over a link on www.opportuno.de
3652
3653         Test: fast/layers/inline-dirty-z-order-lists.html
3654
3655         * rendering/RenderBox.cpp:
3656         (WebCore::RenderBox::styleWillChange): Moved the code that dirties a
3657         layer's and its stacking context's z-order lists when the layer's
3658         z-index or visibility change from here...
3659         * rendering/RenderBoxModelObject.cpp:
3660         (WebCore::RenderBoxModelObject::styleWillChange): ...to here, so that
3661         it will apply to RenderInline too.
3662
3663 2009-02-27  Alexey Proskuryakov  <ap@webkit.org>
3664
3665         Reviewed by David Hyatt.
3666
3667         Don't include TextResourceDecoder.h in Document.h
3668
3669         This undoes inlining of Document::displayStringModifiedByEncoding() to avoid world rebuilds
3670         when TextResourceDecoder.h is modified. Performance impact is expected to be negligible.
3671
3672         * dom/Document.cpp:
3673         (WebCore::Document::displayStringModifiedByEncoding):
3674         (WebCore::Document::displayBufferModifiedByEncoding):
3675         * dom/Document.h:
3676         * WebCore.base.exp:
3677
3678 2009-02-27  Matt Pennig  <pennig@apple.com>
3679
3680         Reviewed by David Hyatt.
3681
3682         Resolves: https://bugs.webkit.org/show_bug.cgi?id=24107
3683         "Fixed elements have 0 as an offsetLeft property"
3684         
3685         Code also brings offsetLeft/Top in full conformance with the spec.
3686         Added two tests, one for fixed-position elements, and one for <html>.
3687         
3688         Tests: fast/dom/Element/fixed-position-offset-parent.html
3689                fast/dom/Element/offsetLeft-offsetTop-html.html
3690
3691         * rendering/RenderBoxModelObject.cpp:
3692         (WebCore::RenderBoxModelObject::offsetLeft):
3693         (WebCore::RenderBoxModelObject::offsetTop):
3694
3695 2009-02-27  Dean Jackson  <dino@apple.com>
3696
3697         Reviewed by Simon Fraser.
3698
3699         renderer()->hasTransform() returns true for elements
3700         with perspective, but no transform, so test for transform
3701         when hit testing. This fixes ASSERT from
3702         https://bugs.webkit.org/show_bug.cgi?id=24252
3703
3704         Test: transforms/no_transform_hit_testing.html
3705
3706         * rendering/RenderLayer.cpp:
3707         (WebCore::RenderLayer::hitTestLayer):
3708
3709 2009-02-27  Dimitri Glazkov  <dglazkov@chromium.org>
3710
3711         Reviewed by Darin Fisher.
3712
3713         Fix scrubbing error -- a reversed condition.
3714
3715         * bindings/v8/ScriptValue.h:
3716         (WebCore::ScriptValue::clear): Change early exit for empty value, not the opposite.
3717
3718 2009-02-27  Jian Li  <jianli@chromium.org>
3719
3720         Reviewed by Alexey Proskuryakov.
3721
3722         Add confirmMessageFromWorkerObject to WorkerObjectProxy.
3723         https://bugs.webkit.org/show_bug.cgi?id=24152
3724
3725         * workers/WorkerMessagingProxy.cpp:
3726         (WebCore::MessageWorkerContextTask::performTask):
3727         (WebCore::WorkerMessagingProxy::confirmMessageFromWorkerObject):
3728         * workers/WorkerMessagingProxy.h:
3729         * workers/WorkerObjectProxy.h:
3730
3731 2009-02-27  Anders Carlsson  <andersca@apple.com>
3732
3733         Reviewed by David Hyatt.
3734
3735         Revert r41295, the fix for https://bugs.webkit.org/show_bug.cgi?id=24227 
3736         because it leads to assertion failures in the Mac port.
3737         
3738         * platform/graphics/BitmapImage.cpp:
3739         (WebCore::BitmapImage::BitmapImage):
3740         * platform/graphics/BitmapImage.h:
3741         (WebCore::BitmapImage::mayFillWithSolidColor):
3742         * platform/graphics/Image.h:
3743         (WebCore::Image::mayFillWithSolidColor):
3744         * platform/graphics/cairo/ImageCairo.cpp:
3745         (WebCore::BitmapImage::BitmapImage):
3746         * platform/graphics/cg/ImageCG.cpp:
3747         (WebCore::BitmapImage::BitmapImage):
3748         (WebCore::BitmapImage::checkForSolidColor):
3749         * platform/graphics/qt/ImageQt.cpp:
3750         (WebCore::BitmapImage::checkForSolidColor):
3751         * platform/graphics/skia/ImageSkia.cpp:
3752         (WebCore::BitmapImage::checkForSolidColor):
3753         * platform/graphics/wx/ImageWx.cpp:
3754         (WebCore::BitmapImage::checkForSolidColor):
3755
3756 2009-02-27  Adam Barth  <abarth@webkit.org>
3757
3758         Reviewed by Eric Seidel.
3759
3760         https://bugs.webkit.org/show_bug.cgi?id=20249
3761
3762         Add a preference to allow universal access from local URLs to mitigate
3763         some attacks.  Some clients still want to allow this access, so we
3764         expose this as a preference.
3765
3766         * WebCore.base.exp:
3767         * dom/Document.cpp:
3768         (WebCore::Document::initSecurityContext):
3769         * page/SecurityOrigin.cpp:
3770         (WebCore::SecurityOrigin::SecurityOrigin):
3771         * page/Settings.cpp:
3772         (WebCore::Settings::Settings):
3773         (WebCore::Settings::setAllowUniversalAccessFromFileUrls):
3774         * page/Settings.h:
3775         (WebCore::Settings::allowUniversalAccessFromFileUrls):
3776
3777 2009-02-27  Adam Treat  <adam.treat@torchmobile.com>
3778
3779         Reviewed by Eric Seidel.
3780
3781         https://bugs.webkit.org/show_bug.cgi?id=24229
3782         If an image has no alpha channel there is no reason to use SourceOver.
3783
3784         * platform/graphics/qt/ImageQt.cpp:
3785         (WebCore::Image::drawPattern):
3786         (WebCore::BitmapImage::draw):
3787
3788 2009-02-27  Adam Treat  <adam.treat@torchmobile.com>
3789
3790         Reviewed by Eric Seidel and Simon Fraser.
3791
3792         https://bugs.webkit.org/show_bug.cgi?id=24227
3793         Ensure that the checkForSolidColor() optimization is correctly triggered
3794         for all cases of drawPattern.  Currently, the optimization was not triggered
3795         when the check had not been previously performed via a request for the
3796         image's NativeImagePtr.
3797
3798         Implement the Qt version of the checkForSolidColor() method.  Combined with
3799         the bug fix this reduces the time it takes to draw a repeating background
3800         of a 1x1 image from ~50msecs to ~0msecs on my machine.
3801
3802         * platform/graphics/BitmapImage.cpp:
3803         (WebCore::BitmapImage::BitmapImage):
3804         * platform/graphics/BitmapImage.h:
3805         (WebCore::BitmapImage::mayFillWithSolidColor):
3806         * platform/graphics/Image.h:
3807         (WebCore::Image::mayFillWithSolidColor):
3808         * platform/graphics/cairo/ImageCairo.cpp:
3809         (WebCore::BitmapImage::BitmapImage):
3810         * platform/graphics/cg/ImageCG.cpp:
3811         (WebCore::BitmapImage::BitmapImage):
3812         (WebCore::BitmapImage::checkForSolidColor):
3813         * platform/graphics/qt/ImageQt.cpp:
3814         (WebCore::BitmapImage::checkForSolidColor):
3815         * platform/graphics/skia/ImageSkia.cpp:
3816         (WebCore::BitmapImage::checkForSolidColor):
3817         * platform/graphics/wx/ImageWx.cpp:
3818         (WebCore::BitmapImage::checkForSolidColor):
3819
3820 2009-02-27  Dirk Schulze  <krit@webkit.org>
3821
3822         Reviewed by Zack Rusin.
3823
3824         Added support for gradients and pattern on Fonts for Qt.
3825
3826         [Qt] gradients and patterns for FontQt
3827         https://bugs.webkit.org/show_bug.cgi?id=24243
3828
3829         * platform/graphics/qt/FontQt.cpp:
3830         (WebCore::Font::drawComplexText):
3831
3832 2009-02-27  Jian Li  <jianli@chromium.org>
3833
3834         Reviewed by Alexey Proskuryakov.
3835
3836         WorkerContextProxy::create in WorkerMessagingProxy.cpp should only be provided for non-Chromium platform.
3837         https://bugs.webkit.org/show_bug.cgi?id=24113
3838
3839         * workers/WorkerMessagingProxy.cpp:
3840
3841 2009-02-27  Yael Aharon  <yael.aharon@nokia.com>
3842
3843         Added a refresh button to storage views.
3844
3845         https://bugs.webkit.org/show_bug.cgi?id=24040
3846
3847         Reviewed by Timothy Hatcher.
3848
3849         * inspector/front-end/DOMStorageItemsView.js:
3850         (WebInspector.DOMStorageItemsView):
3851         (WebInspector.DOMStorageItemsView.prototype.get statusBarItems):
3852         (WebInspector.DOMStorageItemsView.prototype.update):
3853         (WebInspector.DOMStorageItemsView.prototype._refreshButtonClicked):
3854         * inspector/front-end/DatabaseTableView.js:
3855         (WebInspector.DatabaseTableView):
3856         (WebInspector.DatabaseTableView.prototype.get statusBarItems):
3857         (WebInspector.DatabaseTableView.prototype._refreshButtonClicked):
3858         * inspector/front-end/DatabasesPanel.js:
3859         (WebInspector.DatabasesPanel):
3860         (WebInspector.DatabasesPanel.prototype.get statusBarItems):
3861         (WebInspector.DatabasesPanel.prototype.reset):
3862         (WebInspector.DatabasesPanel.prototype.showDatabase):
3863         (WebInspector.DatabasesPanel.prototype.showDOMStorage):
3864         (WebInspector.DatabasesPanel.prototype._updateSidebarWidth):
3865         * inspector/front-end/inspector.css:
3866
3867 2009-02-27  Yael Aharon  <yael.aharon@nokia.com>
3868
3869         Added support for editing/deleting localStorage and sessionStorage items
3870         directly from Web Inspector.
3871
3872         https://bugs.webkit.org/show_bug.cgi?id=23866.
3873
3874         Reviewed by Timothy Hatcher.
3875
3876         * WebCore.vcproj/WebCore.vcproj:
3877         * inspector/front-end/DOMStorageDataGrid.js: Added.
3878         (WebInspector.DOMStorageDataGrid):
3879         (WebInspector.DOMStorageDataGrid.prototype._ondblclick):
3880         (WebInspector.DOMStorageDataGrid.prototype._startEditing):
3881         (WebInspector.DOMStorageDataGrid.prototype._editingCommitted):
3882         (WebInspector.DOMStorageDataGrid.prototype._editingCancelled):
3883         (WebInspector.DOMStorageDataGrid.prototype.deleteSelectedRow):
3884         * inspector/front-end/DOMStorageItemsView.js:
3885         (WebInspector.DOMStorageItemsView):
3886         (WebInspector.DOMStorageItemsView.prototype.get statusBarItems):
3887         (WebInspector.DOMStorageItemsView.prototype.hide):
3888         (WebInspector.DOMStorageItemsView.prototype.update):
3889         (WebInspector.DOMStorageItemsView.prototype._deleteButtonClicked):
3890         * inspector/front-end/DatabasesPanel.js:
3891         (WebInspector.DatabasesPanel):
3892         (WebInspector.DatabasesPanel.prototype.get statusBarItems):
3893         (WebInspector.DatabasesPanel.prototype.reset):
3894         (WebInspector.DatabasesPanel.prototype.showDOMStorage):
3895         (WebInspector.DatabasesPanel.prototype.dataGridForDOMStorage):
3896         (WebInspector.DatabasesPanel.prototype._updateSidebarWidth):
3897         * inspector/front-end/WebKit.qrc:
3898         * inspector/front-end/inspector.css:
3899         * inspector/front-end/inspector.html:
3900
3901 2009-02-26  Brett Wilson  <brettw@chromium.org>
3902
3903         Fix Windows transparency for the Chromium port. Implement a helper
3904         class for handling transparency on Windows. It allows semitransparent
3905         ClearType and semitransparent form controls by making new layers in the
3906         background.
3907
3908         It also replaces the "ThemeHelper" which allows better
3909         scaling and transforms on Windows form controls. In addition to the
3910         functionality that the ThemeHelper did, but additionally handles the
3911         antialiasing properly so that the form controls aren't composited on a
3912         white square.
3913
3914         https://bugs.webkit.org/show_bug.cgi?id=24101
3915
3916         Reviewed by Eric Seidel.
3917
3918         * platform/graphics/chromium/FontChromiumWin.cpp:
3919         (WebCore::):
3920         (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::TransparencyAwareFontPainter):
3921         (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::initializeForGDI):
3922         (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::~TransparencyAwareFontPainter):
3923         (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::drawGlyphs):
3924         (WebCore::Font::drawGlyphs):
3925         * platform/graphics/chromium/ThemeHelperChromiumWin.cpp:
3926         * platform/graphics/chromium/ThemeHelperChromiumWin.h:
3927         * platform/graphics/chromium/TransparencyWin.cpp: Added.
3928         (WebCore::):
3929         (WebCore::TransparencyWin::OwnedBuffers::OwnedBuffers):
3930         (WebCore::TransparencyWin::OwnedBuffers::destBitmap):
3931         (WebCore::TransparencyWin::OwnedBuffers::referenceBitmap):
3932         (WebCore::TransparencyWin::OwnedBuffers::canHandleSize):
3933         (WebCore::TransparencyWin::TransparencyWin):
3934         (WebCore::TransparencyWin::~TransparencyWin):
3935         (WebCore::TransparencyWin::init):
3936         (WebCore::TransparencyWin::computeLayerSize):
3937         (WebCore::TransparencyWin::setupLayer):
3938         (WebCore::TransparencyWin::setupLayerForNoLayer):
3939         (WebCore::TransparencyWin::setupLayerForOpaqueCompositeLayer):
3940         (WebCore::TransparencyWin::setupLayerForTextComposite):
3941         (WebCore::TransparencyWin::setupLayerForWhiteLayer):
3942         (WebCore::TransparencyWin::setupTransform):
3943         (WebCore::TransparencyWin::setupTransformForKeepTransform):
3944         (WebCore::TransparencyWin::setupTransformForUntransform):
3945         (WebCore::TransparencyWin::setupTransformForScaleTransform):
3946         (WebCore::TransparencyWin::setTextCompositeColor):
3947         (WebCore::TransparencyWin::initializeNewContext):
3948         (WebCore::TransparencyWin::compositeOpaqueComposite):
3949         (WebCore::TransparencyWin::compositeTextComposite):
3950         (WebCore::TransparencyWin::makeLayerOpaque):
3951         * platform/graphics/chromium/TransparencyWin.h: Added.
3952         (WebCore::TransparencyWin::):
3953         (WebCore::TransparencyWin::context):
3954         (WebCore::TransparencyWin::platformContext):
3955         (WebCore::TransparencyWin::drawRect):
3956         * platform/graphics/skia/GraphicsContextSkia.cpp:
3957         (WebCore::GraphicsContext::endTransparencyLayer):
3958         * platform/graphics/skia/ImageSkia.cpp:
3959         (WebCore::paintSkBitmap):
3960         * rendering/RenderThemeChromiumWin.cpp:
3961         (WebCore::):
3962         (WebCore::RenderThemeChromiumWin::paintButton):
3963         (WebCore::RenderThemeChromiumWin::paintMenuList):
3964         (WebCore::RenderThemeChromiumWin::paintTextFieldInternal):
3965
3966 2009-02-27  Dimitri Glazkov  <dglazkov@chromium.org>
3967
3968         Reviewed by Eric Seidel.
3969
3970         https://bugs.webkit.org/show_bug.cgi?id=24211
3971         Add ScheduledAction for V8.
3972
3973         * bindings/v8/ScheduledAction.cpp: Added.
3974         (WebCore::ScheduledAction::ScheduledAction):
3975         (WebCore::ScheduledAction::~ScheduledAction):
3976         (WebCore::ScheduledAction::execute):
3977         * bindings/v8/ScheduledAction.h: Added.
3978         (WebCore::ScheduledAction::ScheduledAction):
3979
3980 2009-02-27  Zack Rusin  <zack@kde.org>
3981
3982         Reviewed by Nikolas Zimmermann.
3983
3984         Qt: be more reasonable about scrolled lines
3985
3986         cMouseWheelPixelsPerLineStep is currently a constant set to 13.3. it doesn't
3987         match our metrics meaning that Qt scrolls by ~2 lines by default which is quite
3988         irritating. so lets scroll vertically by the Qt set number of lines * Qt default
3989         single step scroll
3990
3991         * platform/qt/WheelEventQt.cpp:
3992
3993 2009-02-27  Xan Lopez  <xan@gnome.org>
3994
3995         Rubber-stamped by Alexey Proskuryakov.
3996
3997         https://bugs.webkit.org/show_bug.cgi?id=24222
3998         [GTK] Remove checks for old glib versions
3999
4000         libsoup, which is a hard dependency, needs at least glib 2.15.3,
4001         so remove all glib checks for versions older than that.
4002
4003         * platform/gtk/ContextMenuGtk.cpp:
4004         (WebCore::ContextMenu::ContextMenu):
4005         * platform/gtk/ContextMenuItemGtk.cpp:
4006         (WebCore::ContextMenuItem::setSubMenu):
4007         * platform/gtk/PopupMenuGtk.cpp:
4008         (WebCore::PopupMenu::show):
4009         * platform/gtk/WidgetGtk.cpp:
4010         (WebCore::Widget::retainPlatformWidget):
4011         * platform/network/soup/ResourceHandleSoup.cpp:
4012
4013 2009-02-26  Dirk Schulze  <krit@webkit.org>
4014
4015         Reviewed by Oliver Hunt.
4016
4017         Added support for Gradients and Patterns on filled or stroked Fonts
4018         in Cairo. I also added support for globalAlpha on FontCairo.
4019
4020         [CAIRO] SVG/Canvas fonts miss gradients/pattern support
4021         https://bugs.webkit.org/show_bug.cgi?id=18617
4022
4023         * html/CanvasRenderingContext2D.cpp:
4024         (WebCore::CanvasRenderingContext2D::drawTextInternal):
4025         * platform/graphics/cairo/FontCairo.cpp:
4026         (WebCore::Font::drawGlyphs):
4027
4028 2009-02-26  Stephen White  <senorblanco@chromium.org>
4029
4030         Reviewed by Eric Seidel.
4031
4032         https://bugs.webkit.org/show_bug.cgi?id=23957
4033
4034         Fix for SVG gradient and pattern text for Chromium/skia. 
4035         Added accessors for the fill and stroke gradients to
4036         GraphicsContext.  Changed the paintSkiaText function to take a
4037         GraphicsContext, so we can check for gradients/patterns. 
4038         Changed the skiaDrawText function to set the SkPaint shader
4039         correctly, and to scale up the gradient shader matrix to
4040         encompass the entire text string.  Also offset each glyph
4041         separately, rather than transforming the canvas, so that the
4042         gradient/pattern stays fixed relative to the text origin.
4043
4044         * platform/graphics/GraphicsContext.cpp:
4045         (WebCore::GraphicsContext::getFillGradient):
4046         (WebCore::GraphicsContext::getStrokeGradient):
4047         (WebCore::GraphicsContext::getFillPattern):
4048         (WebCore::GraphicsContext::getStrokePattern):
4049         * platform/graphics/GraphicsContext.h:
4050         * platform/graphics/chromium/FontChromiumWin.cpp:
4051         (WebCore::Font::drawGlyphs):
4052         * platform/graphics/chromium/UniscribeHelper.cpp:
4053         (WebCore::UniscribeHelper::draw):
4054         * platform/graphics/skia/SkiaFontWin.cpp:
4055         (WebCore::windowsCanHandleTextDrawing):
4056         (WebCore::skiaDrawText):
4057         (WebCore::paintSkiaText):
4058         * platform/graphics/skia/SkiaFontWin.h:
4059
4060 2009-02-26  Dimitri Glazkov  <dglazkov@chromium.org>
4061
4062         Reviewed by Eric Seidel.
4063
4064         https://bugs.webkit.org/show_bug.cgi?id=24208
4065         Add custom V8 bindings for Navigator, Clipboard, Document, and Node.
4066
4067         * bindings/v8/custom/V8ClipboardCustom.cpp: Added.
4068         (WebCore::ACCESSOR_GETTER):
4069         (WebCore::CALLBACK_FUNC_DECL):
4070         * bindings/v8/custom/V8DocumentCustom.cpp: Added.
4071         (WebCore::CALLBACK_FUNC_DECL):
4072         * bindings/v8/custom/V8NavigatorCustom.cpp: Added.
4073         (WebCore::ACCESSOR_GETTER):
4074         * bindings/v8/custom/V8NodeCustom.cpp: Added.
4075         (WebCore::CALLBACK_FUNC_DECL):
4076
4077 2009-02-26  Gustavo Noronha Silva  <gns@gnome.org>
4078
4079         Unreviewed build fix for building with GNOME Keyring enabled.
4080
4081         * platform/network/soup/webkit-soup-auth-dialog.c:
4082         (show_auth_dialog):
4083
4084 2009-02-26  Xan Lopez  <xan@gnome.org>
4085
4086         Reviewed by Holger Freyther.
4087
4088         https://bugs.webkit.org/show_bug.cgi?id=16947
4089         [GTK] Missing HTTP Auth challenge
4090
4091         Add HTTP authentication dialog with optional GNOME Keyring
4092         storage.
4093
4094         * GNUmakefile.am:
4095         * platform/network/ResourceHandleInternal.h:
4096         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
4097         * platform/network/soup/ResourceHandleSoup.cpp:
4098         (WebCore::currentToplevelCallback):
4099         (WebCore::ResourceHandle::startHttp):
4100         (WebCore::ResourceHandle::start):
4101         * platform/network/soup/webkit-soup-auth-dialog.c: Added.
4102         (webkit_soup_auth_dialog_class_init):
4103         (webkit_soup_auth_dialog_init):
4104         (webkit_soup_auth_dialog_session_feature_init):
4105         (free_authData):
4106         (set_password_callback):
4107         (response_callback):
4108         (show_auth_dialog):
4109         (find_password_callback):
4110         (session_authenticate):
4111         (attach):
4112         * platform/network/soup/webkit-soup-auth-dialog.h: Added.
4113
4114 2009-02-25  Ojan Vafai  <ojan@chromium.org> and Eric Seidel <eric@webkit.org>
4115
4116         Reviewed by Dave Hyatt.
4117
4118         After Ojan's positionForCoordinates fix http://trac.webkit.org/changeset/41191
4119         svg/custom/pointer-events-image.svg and svg/custom/pointer-events-text.svg
4120         started failing because Ojan's new code was now *correctly* calling through to
4121         SVG asking for the closest text offset in the last line box, instead of
4122         just returning the offset at the end of the last line box when clicking below a box.
4123
4124         But!  The SVG code was wrong, in that it returned the character offset of the last
4125         character when you asked for a character offset after the end of the box, instead
4126         it should return the offset *after* the last character.  This patch fixes
4127         that behavior by reordering the last two clauses in svgCharacterHitsPosition.
4128
4129         The SVG positionForCoordinates function is still wrong, and I've added some FIXMEs
4130         to document what's wrong.  I've also cleaned up the code a bit so it's clearer
4131         what it is doing (which also makes more obvious what's wrong with it).
4132
4133         * rendering/RenderSVGInlineText.cpp:
4134         (WebCore::RenderSVGInlineText::positionForCoordinates):
4135         * rendering/SVGInlineTextBox.cpp:
4136         (WebCore::SVGInlineTextBoxClosestCharacterToPositionWalker::SVGInlineTextBoxClosestCharacterToPositionWalker):
4137         (WebCore::SVGInlineTextBoxClosestCharacterToPositionWalker::chunkPortionCallback):
4138         (WebCore::SVGInlineTextBoxClosestCharacterToPositionWalker::offsetOfHitCharacter):
4139         (WebCore::SVGInlineTextBox::closestCharacterToPosition):
4140         (WebCore::SVGInlineTextBox::svgCharacterHitsPosition):
4141
4142 2009-02-26  Darin Fisher  <darin@chromium.org>
4143
4144         Reviewed by Eric Seidel.
4145
4146         Minor cleanup of ChromiumBridge:
4147         Removing unused matchesMIMEType method and s/Javascript/JavaScript/
4148
4149         * platform/chromium/ChromiumBridge.h:
4150         * platform/chromium/MimeTypeRegistryChromium.cpp:
4151         (WebCore::MIMETypeRegistry::isSupportedImageMIMEType):
4152         (WebCore::MIMETypeRegistry::isSupportedJavaScriptMIMEType):
4153         (WebCore::MIMETypeRegistry::isSupportedNonImageMIMEType):
4154
4155 2009-02-26  David Hyatt  <hyatt@apple.com>
4156
4157         Reviewed by Sam Weinig
4158
4159         Fix text-bottom vertical alignment.  It was incorrectly aligning the bottom of the descent instead of including
4160         the line-height below the descent.
4161
4162         Added fast/inline/vertical-align-text-bottom.html
4163
4164         * rendering/RenderBoxModelObject.cpp:
4165         (WebCore::RenderBoxModelObject::verticalPosition):
4166
4167 2009-02-26  Dirk Schulze  <krit@webkit.org>
4168
4169         Reviewed by Eric Seidel.
4170
4171         Make SVG Masking platform independet with the use of ImageBuffer::getImageData(),
4172         ImageBuffer::putImageData() and GraphicsContext::clipToImageBuffer(). Every platform has
4173         just to implement this three methods to support SVG Masking now.
4174  
4175         Make SVG Masking platform aware
4176         https://bugs.webkit.org/show_bug.cgi?id=19243
4177
4178         * GNUmakefile.am:
4179         * WebCore.pro:
4180         * WebCore.vcproj/WebCore.vcproj:
4181         * WebCore.xcodeproj/project.pbxproj:
4182         * svg/graphics/SVGResourceMasker.cpp:
4183         (WebCore::SVGResourceMasker::applyMask):
4184         * svg/graphics/cairo/SVGResourceMaskerCairo.cpp: Removed.
4185         * svg/graphics/cg/SVGResourceMaskerCg.cpp: Removed.
4186         * svg/graphics/cg/SVGResourceMaskerCg.mm: Removed.
4187         * svg/graphics/qt/SVGResourceMaskerQt.cpp: Removed.
4188         * svg/graphics/skia/SVGResourceMaskerSkia.cpp: Removed.
4189
4190 2009-02-26  Yong Li  <yong.li@torchmobile.com>
4191
4192         Reviewed by Darin Adler, Antti Koivisto and Alexey Proskuryakov.
4193
4194         Test: http/tests/misc/slow-preload-cancel.html
4195
4196         https://bugs.webkit.org/show_bug.cgi?id=24133
4197         Clear all pending preloads in the DocLoader object when we decide to
4198         cancel its all requests.
4199
4200         * loader/DocLoader.cpp:
4201         (WebCore::DocLoader::clearPendingPreloads):
4202         * loader/DocLoader.h:
4203         * loader/loader.cpp:
4204         (WebCore::Loader::cancelRequests):
4205
4206 2009-02-26  Dimitri Glazkov  <dglazkov@chromium.org>
4207
4208         Reviewed by Eric Seidel.
4209
4210         https://bugs.webkit.org/show_bug.cgi?id=24182
4211         Add NodeFilter, NodeIterator, and TreeWalker custom V8 bindings.
4212
4213         * bindings/v8/custom/V8NodeFilterCustom.cpp: Added.
4214         (WebCore::CALLBACK_FUNC_DECL):
4215         * bindings/v8/custom/V8NodeIteratorCustom.cpp: Added.
4216         (WebCore::toV8):
4217         (WebCore::CALLBACK_FUNC_DECL):
4218         * bindings/v8/custom/V8TreeWalkerCustom.cpp: Added.
4219         (WebCore::toV8):
4220         (WebCore::CALLBACK_FUNC_DECL):
4221
4222 2009-02-26  Alexey Proskuryakov  <ap@webkit.org>
4223
4224         Reviewed by Darin Adler.
4225
4226         https://bugs.webkit.org/show_bug.cgi?id=23500
4227         KURL::parse() incorrectly compares its result to original string
4228
4229         * platform/KURL.cpp: (WebCore::KURL::parse): Take string length into account.
4230
4231 2009-02-26  Ojan Vafai  <ojan@chromium.org>
4232
4233         Reviewed by Kevin McCullough.
4234
4235         Manual test for inspector node highlighting.
4236
4237         * manual-tests/inspector/highlight-nodes.html: Added.
4238
4239 2009-02-16  Anantanarayanan Iyengar  <ananta@chromium.org>
4240
4241         Reviewed by Darin Fisher.
4242
4243         https://bugs.webkit.org/show_bug.cgi?id=23973
4244         ScrollView::scrollContents can be invoked during view shutdown.  In
4245         this scenario the FrameView::hostWindow method can return NULL, which
4246         indicates that the frame/page is being destroyed. This causes a crash
4247         when we try to dereference a NULL hostWindow pointer.  Fix is to add a
4248         NULL check for this.  
4249
4250         * platform/ScrollView.cpp:
4251         (WebCore::ScrollView::scrollContents):
4252
4253 2009-02-26  Rahul Kuchhal  <kuchhal@chromium.org>
4254
4255         Reviewed by Dave Hyatt.
4256
4257         https://bugs.webkit.org/show_bug.cgi?id=24003
4258         Fix a crash caused by unsafe type conversion.
4259
4260         Test: fast/block/positioning/absolute-in-inline-rtl-4.html
4261
4262         * rendering/RenderBox.cpp:
4263         (WebCore::RenderBox::calcAbsoluteHorizontalValues):
4264
4265 2009-02-26  Ojan Vafai  <ojan@chromium.org>
4266
4267         Reviewed by Adam Roben.
4268
4269         https://bugs.webkit.org/show_bug.cgi?id=24202
4270         Have drawNodeHighlight clip instead of clearing. This makes it work for