The last of the V8 binding optimizations.
[WebKit-https.git] / WebCore / ChangeLog
1 2009-11-12  Jens Alfke  <snej@chromium.org>
2
3         Reviewed by Dimitri Glazkov.
4
5         The last of the V8 binding optimizations.
6         - Replace string-valued element accessors with a shared getter/setter function.
7         - Change error handling flow of control to avoid extra branches and function calls.
8         https://bugs.webkit.org/show_bug.cgi?id=31443
9         
10         * bindings/scripts/CodeGeneratorV8.pm:
11         * bindings/v8/V8Binding.cpp:
12         (WebCore::getElementStringAttr):  Body of string-valued Element getter function.
13         (WebCore::setElementStringAttr):  Body of string-valued Element setter function.
14         * bindings/v8/V8Binding.h:
15
16 2009-11-12  Sam Weinig  <sam@webkit.org>
17
18         Reviewed by Oliver Hunt.
19
20         Fix for <rdar://problem/7267951>
21         Canvas methods should reject uses of NaN and Infinity.
22
23         Test: fast/canvas/canvas-with-illegal-args.html
24
25         * html/canvas/CanvasRenderingContext2D.cpp:
26         (WebCore::CanvasRenderingContext2D::scale):
27         (WebCore::CanvasRenderingContext2D::rotate):
28         (WebCore::CanvasRenderingContext2D::translate):
29         (WebCore::CanvasRenderingContext2D::transform):
30         (WebCore::CanvasRenderingContext2D::setTransform):
31
32 2009-11-12  Pavel Feldman  <pfeldman@chromium.org>
33
34         Reviewed by Timothy Hatcher.
35
36         Web Inspector: profile timeline panel, fix obvious problems.
37
38         https://bugs.webkit.org/show_bug.cgi?id=31432
39
40         * inspector/front-end/AbstractTimelinePanel.js:
41         (WebInspector.AbstractTimelinePanel.prototype.updateGraphDividersIfNeeded):
42         * inspector/front-end/TimelinePanel.js:
43         (WebInspector.TimelinePanel.prototype._setWindowPosition):
44         (WebInspector.TimelineCalculator):
45         (WebInspector.TimelineCalculator.prototype.get minimumBoundary):
46         (WebInspector.TimelineCalculator.prototype.get maximumBoundary):
47         (WebInspector.TimelineCalculator.prototype.reset):
48         (WebInspector.TimelineCalculator.prototype.updateBoundaries):
49         (WebInspector.TimelineCalculator.prototype.formatValue):
50         (WebInspector.TimelineGraph):
51         (WebInspector.TimelineGraph.prototype.refresh):
52         * inspector/front-end/utilities.js:
53         (Element.prototype.hasStyleClass):
54
55 2009-11-12  Pavel Feldman  <pfeldman@chromium.org>
56
57         Reviewed by Timothy Hatcher.
58
59         Web Inspector: preload status bar button glyphs
60         in order to prevent them from flickering.
61
62         https://bugs.webkit.org/show_bug.cgi?id=31439
63
64         * inspector/front-end/inspector.js:
65         (preloadImages):
66
67 2009-11-12  Adam Roben  <aroben@apple.com>
68
69         Replace worldIDs with world objects
70
71         Part of <http://webkit.org/b/31414> Implement new SPI for dealing with
72         user scripts/stylesheets and isolated worlds
73
74         Reviewed by Sam Weinig.
75
76         Covered by existing tests.
77
78         * WebCore.base.exp: Update exported symbols to match what now exists
79         and is needed by WebKit.
80
81         * bindings/js/ScheduledAction.cpp:
82         (WebCore::ScheduledAction::execute): Updated for function rename.
83
84         * bindings/js/ScriptController.cpp: Removed code that dealt with
85         worldIDs.
86         (WebCore::ScriptController::createWorld): Added. Returns a new world
87         suitable for use on the main thread.
88         (WebCore::ScriptController::executeScriptInWorld): Renamed from
89         executeScriptInIsolatedWorld, since this works just fine with a
90         "normal" world.
91
92         * bindings/js/ScriptController.h: Added createWorld, removed functions
93         that took worldIDs, renamed executeScriptInIsolatedWorld to
94         executeScriptInWorld.
95
96         * page/Frame.cpp:
97         (WebCore::Frame::injectUserScripts):
98         (WebCore::Frame::injectUserScriptsForWorld):
99         Updated for changes to UserScriptMap and ScriptController.
100
101         * page/Frame.h: Changed injectUserScriptsForWorld to take a
102         DOMWrapperWorld* instead of a worldID.
103
104         * page/PageGroup.cpp:
105         (WebCore::PageGroup::addUserScriptToWorld):
106         (WebCore::PageGroup::addUserStyleSheetToWorld):
107         (WebCore::PageGroup::removeUserScriptFromWorld):
108         (WebCore::PageGroup::removeUserStyleSheetFromWorld):
109         (WebCore::PageGroup::removeUserScriptsFromWorld):
110         (WebCore::PageGroup::removeUserStyleSheetsFromWorld):
111         * page/PageGroup.h:
112         Changed these functions to take a DOMWrapperWorld* instead of a
113         worldID. Also updated for changes to UserScript and UserStyleSheet.
114
115         * page/UserScript.h:
116         * page/UserStyleSheet.h: Changed not to hold a worldID, since it was
117         never used.
118
119         * page/UserScriptTypes.h:
120         * page/UserStyleSheetTypes.h: Changed UserScriptMap and
121         UserStyleSheetMap to use a RefPtr<DOMWrapperWorld> instead of a
122         worldID as their key type.
123
124
125 2009-11-12  Brian Weinstein  <bweinstein@apple.com>
126
127         Reviewed by Tim Hatcher.
128
129         Fixes <http://webkit.org/b/31260>.
130         Web Inspector: Main Resources Other than HTML are mis-detected.
131         
132         Even if the resource is a main resource, look at its CachedResource type, 
133         because it might be an image, stylesheet, or JavaScript file, and we
134         want to show them all correctly.
135
136         * inspector/InspectorResource.cpp:
137         (WebCore::InspectorResource::cachedResourceType): Move this method out so it can be called in multiple places.
138         (WebCore::InspectorResource::type): 
139         * inspector/InspectorResource.h:
140
141 2009-11-12  Jens Alfke  <snej@chromium.org>
142
143         Reviewed by Dimitri Glazkov.
144
145         Table-driven setup for V8 binding template callback functions. 100k in code savings.
146         https://bugs.webkit.org/show_bug.cgi?id=31420
147
148         * bindings/scripts/CodeGeneratorV8.pm:  Change generated ConfigureXXXTemplate fn
149             to call configureTemplate().
150         * bindings/v8/V8Binding.cpp:
151         (WebCore::configureTemplate):  New function; does all the standard configuration work.
152         (WebCore::createCallback):  De-inlined wrapper for FunctionTemplate creation.
153         * bindings/v8/V8Binding.h:
154         * bindings/v8/V8Proxy.cpp:
155         (WebCore::batchConfigureAttributes):  Just wrapped the very long fn parameter list.
156         (WebCore::batchConfigureCallbacks):  New function, used by configureTemplate.
157         (WebCore::batchConfigureConstants):  Just wrapped the very long fn parameter list.
158         * bindings/v8/V8Proxy.h:
159
160 2009-11-12  Dumitru Daniliuc  <dumi@chromium.org>
161
162         Unreviewed, fix Chromium build after http://trac.webkit.org/changeset/50876.
163
164         * platform/sql/chromium/SQLiteFileSystemChromiumPosix.cpp:
165
166 2009-11-12  Eric Carlson  <eric.carlson@apple.com>
167
168         Reviewed by Dan Bernstein.
169
170         <rdar://problem/7388969> Add DOM API for fullscreen video
171         
172         DOM API for fullscreen <video>.
173
174         Tests: media/media-fullscreen-inline.html
175                media/media-fullscreen-not-in-document.html
176
177         * dom/EventNames.h:
178             Add webkitbeginfullscreen and webkitendfullscreen.
179
180         * html/HTMLAttributeNames.in:
181             Add onwebkitbeginfullscreen and onwebkitendfullscreen.
182
183         * html/HTMLMediaElement.cpp:
184         (WebCore::HTMLMediaElement::parseMappedAttribute):
185             Deal with onwebkitbeginfullscreen and onwebkitendfullscreen.
186         (WebCore::HTMLMediaElement::enterFullscreen):
187             Schedule webkitbeginfullscreenEvent event, don't set m_isFullscreen unless we
188             actually do enter fullscreen.
189         (WebCore::HTMLMediaElement::exitFullscreen):
190             Schedule webkitendfullscreenEvent event.
191         (WebCore::HTMLMediaElement::webkitEnterFullScreen):
192         (WebCore::HTMLMediaElement::webkitExitFullScreen):
193         (WebCore::HTMLMediaElement::webkitSupportsFullscreen):
194         (WebCore::HTMLMediaElement::webkitDisplayingFullscreen):
195             New, access to fullscreen properties and methods.
196
197         * html/HTMLMediaElement.h:
198         * html/HTMLMediaElement.idl:
199             Declare methods needed for fullscreen API.
200
201         * html/HTMLVideoElement.cpp:
202         (WebCore::HTMLVideoElement::supportsFullscreen):
203             Return false if a movie does not have video.
204
205         * page/DOMWindow.h:
206             Add webkitbeginfullscreen and webkitendfullscreen.
207
208 2009-11-12  Adam Barth  <abarth@webkit.org>
209
210         Reviewed by Dimitri Glazkov.
211
212         [Chromium] Sify compose button alerts error
213         https://bugs.webkit.org/show_bug.cgi?id=31394
214
215         Test: http/tests/security/calling-versus-current.html
216
217         We're supposed to use the calling context for security checks.  In JSC
218         land, this is the lexicalGlobalObject.
219
220         * bindings/v8/V8Proxy.cpp:
221         (WebCore::V8Proxy::canAccessPrivate):
222
223 2009-11-12  Daniel Bates  <dbates@webkit.org>
224
225         Reviewed by Darin Adler.
226
227         https://bugs.webkit.org/show_bug.cgi?id=30291
228
229         Fixes an issue where the returned drop effect is incorrect when
230         effectAllowed == "uninitialized".
231
232         According to section 7.9.2 of the HTML 5 spec.
233         <http://dev.w3.org/html5/spec/Overview.html#the-dragevent-and-datatransfer-interfaces>
234         when effectAllowed = "uninitialized" the resulting dropEffect should be the
235         user-specified dropEffect (i.e. "copy", "move", "link") and "none" for any
236         other case.
237         
238         No test cases are included because we have an existing test case from
239         bug #24731.
240
241         * dom/Clipboard.cpp:
242         (WebCore::dragOpFromIEOp): Added case for op == "uninitialized".
243
244 2009-11-12  Pavel Feldman  <pfeldman@chromium.org>
245
246         Reviewed by Timothy Hatcher.
247
248         Web Inspector: Do not highlight node on refresh.
249
250         https://bugs.webkit.org/show_bug.cgi?id=31419
251
252         * inspector/front-end/ElementsPanel.js:
253         (WebInspector.ElementsPanel.prototype.reset):
254
255 2009-11-12  Pavel Feldman  <pfeldman@chromium.org>
256
257         Reviewed by Timothy Hatcher.
258
259         Web Inspector: Minor timeline fixes.
260
261         https://bugs.webkit.org/show_bug.cgi?id=31417
262
263         * inspector/front-end/TimelinePanel.js:
264         (WebInspector.TimelinePanel.prototype._getRecordDetails):
265         (WebInspector.TimelineRecordTreeElement.prototype.onattach):
266         (WebInspector.TimelineRecordTreeElement.prototype._updateDetails):
267         (WebInspector.TimelineRecordTreeElement.prototype.refresh):
268
269 2009-11-12  Alexey Proskuryakov  <ap@apple.com>
270
271         SnowLeopard build fix.
272
273         Renamed initWithClient to initWithAuthenticationClient.
274
275         * platform/network/mac/AuthenticationMac.mm:
276         (-[WebCoreAuthenticationClientAsChallengeSender initWithAuthenticationClient:]):
277         (WebCore::AuthenticationChallenge::setAuthenticationClient):
278
279 2009-11-12  Chris Fleizach  <cfleizach@apple.com>
280
281         Reviewed by Darin Adler.
282
283         ARIA: add alert type roles
284         https://bugs.webkit.org/show_bug.cgi?id=31392
285
286         Test: platform/mac/accessibility/aria-alerts.html
287
288         * accessibility/AccessibilityObject.h:
289         * accessibility/AccessibilityRenderObject.cpp:
290         * accessibility/mac/AccessibilityObjectWrapper.mm:
291
292 2009-11-11  Alexey Proskuryakov  <ap@apple.com>
293
294         Reviewed by Darin Adler.
295
296         https://bugs.webkit.org/show_bug.cgi?id=31386
297         Make Mac AuthenticationChallenge usable from cross-platform code
298
299         No change in behavior, so no tests.
300
301         * platform/network/ResourceHandle.cpp:
302         (WebCore::ResourceHandle::clearAuthentication):
303         * platform/network/ResourceHandleInternal.h:
304         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
305         Don't store m_currentCFChallenge, which was only used for a single assertion. Unlike the
306         NSURLConnection case, CF challenge doesn't carry a sender with it, so the copy in web challenge
307         is identical.
308
309         * platform/network/cf/AuthenticationChallenge.h:
310         (WebCore::AuthenticationChallenge::setAuthenticationClient): Added a setter to match the new
311         Mac interface. Previously, one had to create a new AuthenticationChallenge to replace client.
312
313         * platform/network/cf/ResourceHandleCFNet.cpp:
314         (WebCore::ResourceHandle::didReceiveAuthenticationChallenge): Fixed assertions after removal
315         of m_currentCFChallenge. Also, there is no need to set client now, as it's guaranteed to
316         be already set.
317
318         * platform/network/mac/AuthenticationChallenge.h:
319         (WebCore::AuthenticationChallenge::m_sender): Explained the existence of this member to the
320         best of my understanding.
321         (WebCore::AuthenticationChallenge::m_nsChallenge): Renamed from m_macChallenge to prevent
322         confusion with "mac" and "web" challenges in ResourceHandleInternal.
323
324         * platform/network/mac/AuthenticationMac.mm:
325         (WebCoreAuthenticationClientAsChallengeSender): Added a Obj-C wrapper for AuthenticationClient,
326         making it possible to use the latter with NSURLAuthenticationChallenge.
327         (WebCore::AuthenticationChallenge::AuthenticationChallenge): Updated for m_macChallenge ->
328         m_nsChallenge renaming.
329         (WebCore::AuthenticationChallenge::setAuthenticationClient): Wrap the client in Obj-C and
330         set it as sender (or unset, if client is null).
331
332         * platform/network/mac/ResourceHandleMac.mm:
333         (WebCoreResourceHandleAsDelegate) WebCoreResourceHandleAsDelegate no longer doubles as
334         authentication challenge sender.
335         (WebCore::ResourceHandle::~ResourceHandle): A navigation can happen underneath an
336         authentication sheet.
337         (WebCore::ResourceHandle::didReceiveAuthenticationChallenge): Form m_currentWebChallenge
338         using the new setAuthenticationClient() method.
339         (WebCore::ResourceHandle::didCancelAuthenticationChallenge): Fixed an incorrect assertion.
340         Since didCancelAuthenticationChallenge is called by connection, the passed challenge is
341         the original Mac one, not the one we created for use with authentication sheet. I don't
342         know when a connection would cancel authentication in practice, so I haven't tested this.
343
344 2009-11-12  Patrick Mueller  <Patrick_Mueller@us.ibm.com>
345
346         Reviewed by Timothy Hatcher.
347
348         Web Inspector: breakpoint sidebar entries should allow click over entire list item
349         https://bugs.webkit.org/show_bug.cgi?id=31411
350
351         No new tests; no new functionality, small usability change. 
352
353         * inspector/front-end/BreakpointsSidebarPane.js:
354         (WebInspector.BreakpointsSidebarPane.prototype._appendBreakpointElement):
355         (WebInspector.BreakpointsSidebarPane.prototype._appendBreakpointElement.breakpointClicked):
356
357 2009-11-12  Patrick Mueller  <Patrick_Mueller@us.ibm.com>
358
359         Reviewed by Timothy Hatcher.
360
361         Web Inspector: breakpoints in named evals are not restored after a reload
362         https://bugs.webkit.org/show_bug.cgi?id=31375
363
364         Manual test added
365
366         * inspector/front-end/ScriptsPanel.js:
367         (WebInspector.ScriptsPanel.prototype.addScript):
368         * manual-tests/inspector/bp-in-named-eval-after-reload.html: Added.
369
370 2009-11-12  Benjamin Poulain  <benjamin.poulain@nokia.com>
371
372         Reviewed by Kenneth Rohde Christiansen.
373
374         Custom printing shrink factors
375         https://bugs.webkit.org/show_bug.cgi?id=29042
376
377         This reverts commit r49769. The public API for this needs to be reviewed
378         before its inclusion in Qt.
379
380         * page/PrintContext.cpp:
381         (WebCore::PrintContext::begin):
382         * page/Settings.cpp:
383         (WebCore::Settings::Settings):
384         * page/Settings.h:
385
386 2009-11-12  Alexander Pavlov  <apavlov@chromium.org>
387
388         Reviewed by Pavel Feldman.
389
390         Web Inspector: Resource errors/warnings not shown in the Resource tree.
391
392         Error/Warning bubbles are not displayed next to the resource in the 
393         Resources panel if those occur before the resource is attached to the tree.
394         https://bugs.webkit.org/show_bug.cgi?id=31404
395
396         Test: manual-tests/inspector/styled-error-bubbles-in-scripts.html
397
398         * inspector/front-end/AbstractTimelinePanel.js:
399         (WebInspector.AbstractTimelinePanel.prototype.removeItem):
400         * inspector/front-end/ResourcesPanel.js:
401         (WebInspector.ResourceSidebarTreeElement.prototype.onattach):
402
403 2009-11-12  Philippe Normand  <pnormand@igalia.com>
404
405         Reviewed by Jan Alonzo.
406
407         https://bugs.webkit.org/show_bug.cgi?id=31047
408         [GTK] Failing test media/video-played-ranges-1.html
409
410         Follow-up of r50726, don't block the UI thread when calling
411         gst_element_get_state(). Also fixed a compilation warning and some
412         static casts.
413
414         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
415         (WebCore::playbackPosition):
416         (WebCore::MediaPlayerPrivate::seek):
417         (WebCore::MediaPlayerPrivate::setRate):
418
419 2009-11-12  Philippe Normand  <pnormand@igalia.com>
420
421         Reviewed by Jan Alonzo.
422
423         https://bugs.webkit.org/show_bug.cgi?id=31047
424         [GTK] Failing test media/video-played-ranges-1.html
425
426         don't pause pipeline if already paused, same for play()
427
428         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
429         (WebCore::MediaPlayerPrivate::play):
430         (WebCore::MediaPlayerPrivate::pause):
431
432 2009-11-12  Kinuko Yasuda  <kinuko@google.com>
433
434         Reviewed by David Levin.
435
436         Support Gtk scrollwheel behavior for horizontal scrollbars on Linux
437         Chromium too.
438         https://bugs.webkit.org/show_bug.cgi?id=31292
439
440         No new tests. (Corresponding test for Gtk+ is
441         platform/gtk/scrollbars/overflow-scrollbar-horizontal-wheel-scroll.html)
442
443         * page/EventHandler.cpp:
444         * page/chromium/EventHandlerChromium.cpp:
445
446 2009-11-12  Yuta Kitamura  <yutak@chromium.org>
447
448         Reviewed by Eric Seidel.
449
450         Prevent text inside a multi-column block from being split into columns.
451         
452         If the tentative height of a multi-column block was too small, we need to
453         expand the block height and try to layout again, in order to prevent text
454         from being split into different columns.
455
456         CSS Multicolumn text is split awkwardly
457         https://bugs.webkit.org/show_bug.cgi?id=22249
458
459         Test: fast/multicol/single-line.html
460
461         * rendering/RenderBlock.cpp:
462         (WebCore::RenderBlock::layoutColumns):
463         * rendering/RenderBlock.h:
464         * rendering/RenderLineBoxList.cpp:
465         (WebCore::RenderLineBoxList::paint):
466         * rendering/RenderView.h:
467         (WebCore::RenderView::setTruncatedAt):
468         (WebCore::RenderView::setMinimumColumnHeight):
469         (WebCore::RenderView::minimumColumnHeight):
470
471 2009-11-11  Kent Tamura  <tkent@chromium.org>
472
473         Reviewed by Darin Adler.
474
475         Fix a bug that RenderFileUploadControl isn't initialized with multiple files.
476         https://bugs.webkit.org/show_bug.cgi?id=31195
477
478         Test: fast/forms/input-file-re-render.html
479
480         * rendering/RenderFileUploadControl.cpp:
481         (WebCore::RenderFileUploadControl::RenderFileUploadControl):
482
483 2009-11-09  Dumitru Daniliuc  <dumi@chromium.org>
484
485         Reviewed by Dimitri Glazkov.
486
487         Fixing Chromium's POSIX VFS implementation, by adding the required
488         "used file descriptors" logic.
489
490         https://bugs.webkit.org/show_bug.cgi?id=31275
491
492         * platform/sql/chromium/SQLiteFileSystemChromiumPosix.cpp:
493
494 2009-11-11  Chris Fleizach  <cfleizach@apple.com>
495
496         Reviewed by Oliver Hunt.
497
498         need to implement aria tree roles
499         https://bugs.webkit.org/show_bug.cgi?id=31284
500
501         Tests: platform/mac/accessibility/aria-multiselectable.html
502                platform/mac/accessibility/aria-tree.html
503
504         * accessibility/AccessibilityList.cpp:
505         (WebCore::AccessibilityList::accessibilityIsIgnored):
506         * accessibility/AccessibilityObject.cpp:
507         (WebCore::AccessibilityObject::ariaTreeRows):
508         (WebCore::AccessibilityObject::ariaTreeItemContent):
509         (WebCore::AccessibilityObject::ariaTreeItemDisclosedRows):
510         * accessibility/AccessibilityObject.h:
511         (WebCore::):
512         (WebCore::AccessibilityObject::isTree):
513         (WebCore::AccessibilityObject::isTreeItem):
514         (WebCore::AccessibilityObject::setIsExpanded):
515         (WebCore::AccessibilityObject::canSetExpandedAttribute):
516         (WebCore::AccessibilityObject::hierarchicalLevel):
517         (WebCore::AccessibilityObject::setSelectedRows):
518         (WebCore::AccessibilityObject::performDefaultAction):
519         * accessibility/AccessibilityRenderObject.cpp:
520         (WebCore::AccessibilityRenderObject::hierarchicalLevel):
521         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
522         (WebCore::AccessibilityRenderObject::isExpanded):
523         (WebCore::AccessibilityRenderObject::setElementAttributeValue):
524         (WebCore::AccessibilityRenderObject::elementAttributeValue):
525         (WebCore::AccessibilityRenderObject::setIsExpanded):
526         (WebCore::AccessibilityRenderObject::isSelected):
527         (WebCore::AccessibilityRenderObject::setSelected):
528         (WebCore::AccessibilityRenderObject::setSelectedRows):
529         (WebCore::createARIARoleMap):
530         (WebCore::AccessibilityRenderObject::canSetExpandedAttribute):
531         (WebCore::AccessibilityRenderObject::ariaTreeSelectedRows):
532         (WebCore::AccessibilityRenderObject::ariaListboxSelectedChildren):
533         (WebCore::AccessibilityRenderObject::selectedChildren):
534         * accessibility/AccessibilityRenderObject.h:
535         * accessibility/mac/AccessibilityObjectMac.mm:
536         (WebCore::AccessibilityObject::accessibilityPlatformIncludesObject):
537         * accessibility/mac/AccessibilityObjectWrapper.mm:
538         (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
539         (RoleEntry::):
540         (-[AccessibilityObjectWrapper subrole]):
541         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
542         (-[AccessibilityObjectWrapper accessibilityIsAttributeSettable:]):
543         (-[AccessibilityObjectWrapper accessibilityPerformShowMenuAction]):
544         (-[AccessibilityObjectWrapper accessibilitySetValue:forAttribute:]):
545         (-[AccessibilityObjectWrapper accessibilityArrayAttributeCount:]):
546         * html/HTMLAttributeNames.in:
547
548 2009-11-11  Brent Fulgham  <bfulgham@webkit.org>
549
550         Build fix after @r50760 with ENABLE_FILTERS.
551
552         * platform/graphics/filters/SourceAlpha.cpp:
553         (WebCore::SourceAlpha::apply): Supply ColorSpace to fillRect.
554         * svg/graphics/filters/SVGFEFlood.cpp: Supply ColorSpace argument
555           to fillRect.
556
557 2009-11-11  Fumitoshi Ukai  <ukai@chromium.org>
558
559         Reviewed by Alexey Proskuryakov.
560
561         Fix WebSocket frame parser of frame_type with high-order bit set.
562         https://bugs.webkit.org/show_bug.cgi?id=30668
563
564         If buffer is smaller than frame's length, it should break the loop
565         instead of reading next byte.
566
567         Tests: websocket/tests/frame-length-longer-than-buffer.html
568                websocket/tests/frame-length-skip.html
569
570         * websockets/WebSocketChannel.cpp:
571         (WebCore::WebSocketChannel::didReceiveData):
572
573 2009-11-11  Yusuke Sato  <yusukes@chromium.org>
574
575         Reviewed by Adam Barth.
576
577         [chromium] Remove t2embed.dll functions from FontCustomPlatformData.cpp for Chromium
578         https://bugs.webkit.org/show_bug.cgi?id=31345
579
580         Remove dependency on t2embed.dll so that Chromium for Windows can start even if t2embed.dll cannot be accessed.
581
582         * platform/graphics/chromium/FontCustomPlatformData.cpp:
583         (WebCore::FontCustomPlatformData::~FontCustomPlatformData): Remove TTDeleteEmbeddedFont() call. Always use RemoveFontMemResourceEx().
584         (WebCore::FontCustomPlatformData::fontPlatformData): Remove TTGetNewFontName() call.
585         (WebCore::createFontCustomPlatformData): Remove TTLoadEmbeddedFont() call. Always use AddFontMemResourceEx() via renameAndActivateFont() in opentype/OpenTypeUtility.h. Remove EOTStream class as well.
586
587 2009-11-11  Beth Dakin  <bdakin@apple.com>
588
589         Build fix. No review needed.
590
591         * platform/graphics/gtk/FontGtk.cpp:
592         (WebCore::Font::drawComplexText):
593
594 2009-11-11  Beth Dakin  <bdakin@apple.com>
595
596         Build fix. No review needed.
597
598         * platform/graphics/cairo/FontCairo.cpp:
599         (WebCore::Font::drawGlyphs):
600
601 2009-11-11  Beth Dakin  <bdakin@apple.com>
602
603         Windows build fix. No review needed. 
604
605         * platform/graphics/win/FontCGWin.cpp:
606         (WebCore::Font::drawGlyphs):
607
608 2009-11-11  Beth Dakin  <bdakin@apple.com>
609
610         Reviewed by Simon Fraser.
611
612         Fix for https://bugs.webkit.org/show_bug.cgi?id=31382
613         Make -webkit-color-correction work with shadows
614
615         From canvas, just send DeviceColorSpace to setShadow() for now. 
616         Will fix soon when I address https://bugs.webkit.org/show_bug.cgi?id=31319
617         * html/canvas/CanvasRenderingContext2D.cpp:
618         (WebCore::CanvasRenderingContext2D::setShadow):
619         (WebCore::CanvasRenderingContext2D::applyShadow):
620
621         setShadow() and setPlatformShadow() now take a ColorSpace.
622         * platform/graphics/GraphicsContext.cpp:
623         (WebCore::GraphicsContext::setShadow):
624         * platform/graphics/GraphicsContext.h:
625         * platform/graphics/cg/GraphicsContextCG.cpp:
626         (WebCore::createCGColorWithColorSpace): New helper to create a 
627         color in a ColorSpace.
628         (WebCore::setCGFillColor): Call new helper.
629         (WebCore::setCGStrokeColor): Call new helper.
630         (WebCore::GraphicsContext::setPlatformShadow): Call new helper.
631         * platform/graphics/haiku/GraphicsContextHaiku.cpp:
632         (WebCore::GraphicsContext::setPlatformShadow):
633
634         Send appropriate ColorSpace to setShadow().
635         * platform/graphics/mac/FontMac.mm:
636         (WebCore::Font::drawGlyphs):
637         * rendering/EllipsisBox.cpp:
638         (WebCore::EllipsisBox::paint):
639         * rendering/InlineFlowBox.cpp:
640         (WebCore::InlineFlowBox::paintTextDecorations):
641         * rendering/InlineTextBox.cpp:
642         (WebCore::paintTextWithShadows):
643         (WebCore::InlineTextBox::paintDecoration):
644         * rendering/RenderBoxModelObject.cpp:
645         (WebCore::RenderBoxModelObject::paintBoxShadow):
646         * rendering/SVGInlineTextBox.cpp:
647         (WebCore::SVGInlineTextBox::paintCharacters):
648         * rendering/SVGRenderSupport.cpp:
649         (WebCore::SVGRenderBase::prepareToRenderSVGContent):
650
651         Attempt to keep ports building.
652         * platform/graphics/cairo/GraphicsContextCairo.cpp:
653         (WebCore::GraphicsContext::setPlatformShadow):
654         * platform/graphics/qt/GraphicsContextQt.cpp:
655         (WebCore::GraphicsContext::setPlatformShadow):
656         * platform/graphics/skia/GraphicsContextSkia.cpp:
657         (WebCore::GraphicsContext::setPlatformShadow):
658         * platform/graphics/wince/GraphicsContextWince.cpp:
659         (WebCore::GraphicsContext::setPlatformShadow):
660         * platform/graphics/wx/GraphicsContextWx.cpp:
661         (WebCore::GraphicsContext::setPlatformShadow):
662
663 2009-11-11  Kent Tamura  <tkent@chromium.org>
664
665         Reviewed by Darin Adler.
666
667         Print the file text of a file upload control in DumpRenderTree for ease of tests.
668         https://bugs.webkit.org/show_bug.cgi?id=31195
669
670         * rendering/RenderFileUploadControl.cpp:
671         (WebCore::RenderFileUploadControl::paintObject):
672         (WebCore::RenderFileUploadControl::fileTextValue):
673         * rendering/RenderFileUploadControl.h:
674         (WebCore::RenderFileUploadControl::isFileUploadControl):
675         (WebCore::toRenderFileUploadControl):
676         * rendering/RenderObject.h:
677         (WebCore::RenderObject::isFileUploadControl):
678         * rendering/RenderTreeAsText.cpp:
679         (WebCore::operator<<):
680
681 2009-11-11  Gavin Barraclough  <barraclough@apple.com>
682
683         Reviewed by Sam Weinig.
684
685         DOM Wrappers for some nodes may not be marked.
686         https://bugs.webkit.org/show_bug.cgi?id=31380
687
688         Some markChildren methods are calling getCachedDOMNodeWrapper, which will find
689         the wrapper for the current world only.  This means that wrappers may be GC'ed
690         prematurely, and properties lost.
691
692         Move to a model more like markDOMObjectWrapper, mark wrappers for all worlds.
693
694         * bindings/js/JSAttrCustom.cpp:
695         (WebCore::JSAttr::markChildren):
696         * bindings/js/JSDOMBinding.cpp:
697         (WebCore::markDOMNodeWrapper):
698         * bindings/js/JSDOMBinding.h:
699         * bindings/js/JSNamedNodeMapCustom.cpp:
700         (WebCore::JSNamedNodeMap::markChildren):
701         * bindings/js/JSNodeCustom.cpp:
702         (WebCore::JSNode::markChildren):
703         * bindings/js/JSSVGElementInstanceCustom.cpp:
704         (WebCore::JSSVGElementInstance::markChildren):
705         * bindings/js/JSStyleSheetCustom.cpp:
706         (WebCore::JSStyleSheet::markChildren):
707
708 2009-11-11  Ben Murdoch  <benm@google.com>
709
710         Reviewed by Darin Adler.
711
712         bindings/js/ScriptObject.cpp is missing and ENABLE(INSPECTOR) guard.
713         https://bugs.webkit.org/show_bug.cgi?id=31384
714
715         No functionality change so no tests required.
716
717         * bindings/js/ScriptObject.cpp: Add ENABLE(INSPECTOR) guard around the JSInspectorBackend.h include.
718
719 2009-11-11  Jens Alfke  <snej@chromium.org>
720
721         Reviewed by Dimitri Glazkov.
722
723         The Big De-Inlining. 450k code size reduction (32-bit x86.)
724         - Various inline functions in V8Binding.h made non-inline.
725         - Some renaming for consistency.
726         - New function createRawTemplate().
727         https://bugs.webkit.org/show_bug.cgi?id=31383
728
729         * bindings/scripts/CodeGeneratorV8.pm:
730         * bindings/v8/V8Binding.cpp:
731         (WebCore::v8DOMWrapperToNative):
732         (WebCore::v8ValueToWebCoreString):
733         (WebCore::v8ValueToAtomicWebCoreString):
734         (WebCore::toInt32):
735         (WebCore::toWebCoreString):
736         (WebCore::toWebCoreStringWithNullCheck):
737         (WebCore::toAtomicWebCoreStringWithNullCheck):
738         (WebCore::toWebCoreStringWithNullOrUndefinedCheck):
739         (WebCore::isUndefinedOrNull):
740         (WebCore::v8Boolean):
741         (WebCore::v8UndetectableString):
742         (WebCore::v8StringOrNull):
743         (WebCore::v8StringOrUndefined):
744         (WebCore::v8StringOrFalse):
745         (WebCore::v8StringToWebCoreString):
746         (WebCore::v8ExternalString):
747         (WebCore::createRawTemplate):  New function.
748         * bindings/v8/V8Binding.h:
749         (WebCore::v8DOMWrapperTo):
750         (WebCore::v8DOMWrapperToNode):
751         (WebCore::v8StringToWebCoreString):
752         (WebCore::v8StringToAtomicWebCoreString):
753
754 2009-11-11  Jens Alfke  <snej@chromium.org>
755
756         Reviewed by Dimitri Glazkov.
757
758         More V8 de-inlining (outlining?) Abstracted a chunk of boilerplate code from every
759         event-listener setter into a new subroutine transferHiddenDependency().
760         https://bugs.webkit.org/show_bug.cgi?id=31377
761
762         * bindings/scripts/CodeGeneratorV8.pm:  Replace boilerplate with call to transferHiddenDependency().
763         * bindings/v8/V8Utilities.cpp:
764         (WebCore::transferHiddenDependency):  New.
765         * bindings/v8/V8Utilities.h:  Declaration of transferHiddenDependency.
766
767 2009-11-11  Brian Weinstein  <bweinstein@apple.com>
768
769         Reviewed by Beth Dakin.
770
771         If we are on Windows, don't try and get the kCGColorSpaceSRGB ColorSpace,
772         because there is a CG bug preventing this from working.
773
774         * platform/graphics/cg/GraphicsContextCG.cpp:
775         (WebCore::sRGBColorSpaceRef):
776
777 2009-11-11  Pavel Feldman  <pfeldman@chromium.org>
778
779         Reviewed by Timothy Hatcher.
780
781         Check that if Storage panel exists before calling its methods
782
783         https://bugs.webkit.org/show_bug.cgi?id=31343
784
785         * inspector/front-end/inspector.js:
786         (WebInspector.addDatabase):
787         (WebInspector.addCookieDomain):
788         (WebInspector.addDOMStorage):
789         (WebInspector.updateDOMStorage):
790
791 2009-11-11  Jens Alfke  <snej@chromium.org>
792
793         Reviewed by Dimitri Glazkov.
794
795         De-inline convertNodeToV8Object(), which expands to a lot of asm code and is inlined 136
796         times in the generated V8 bindings.
797         https://bugs.webkit.org/show_bug.cgi?id=31368
798
799         * bindings/v8/V8DOMWrapper.cpp:
800         (WebCore::V8DOMWrapper::convertNodeToV8Object):  Moved body here from .h file
801         * bindings/v8/V8DOMWrapper.h:  Removed inline method body.
802
803 2009-11-11  Jessie Berlin  <jberlin@webkit.org>
804
805         Reviewed by Timothy Hatcher.
806
807         Display the correct summary in the web inspector for the shorthands
808         border-color, border-width, border-style, margin, and padding.
809         https://bugs.webkit.org/show_bug.cgi?id=7987
810
811         Test: fast/css/shorthands-four-values.html
812
813         * css/CSSMutableStyleDeclaration.cpp:
814         (WebCore::CSSMutableStyleDeclaration::get4Values):
815         Display the summary information in the same way the shorthand would be
816         specified in a css rule.
817
818 2009-11-11  Jens Alfke  <snej@chromium.org>
819
820         Reviewed by Dimitri Glazkov.
821
822         Make V8 bindings return NULL handles instead of calling v8::Undefined(). This has equivalent
823         meaning to the caller, saves code, and appears to save a few cycles at runtime too.
824         https://bugs.webkit.org/show_bug.cgi?id=31367
825
826         * bindings/scripts/CodeGeneratorV8.pm: Change "v8::Undefined()" to "v8::Handle<v8::Value>()"
827
828 2009-11-11  Jens Alfke  <snej@chromium.org>
829
830         Reviewed by Dimitri Glazkov.
831
832         Optimize V8 getDOMNodeMap(), a hot function in Dromaeo DOM tests, by increasing inlining.
833
834         * bindings/v8/DOMData.cpp:
835         (WebCore::DOMData::getCurrent):  Moved getCurrentMainThread to MainThreadDOMData::getCurrent
836             so it can be inlined by its caller.
837         * bindings/v8/DOMData.h:
838         * bindings/v8/MainThreadDOMData.cpp:
839         (WebCore::MainThreadDOMData::getCurrent):  Moved here from DOMData.cpp.
840         (WebCore::MainThreadDOMData::getMainThreadStore):  Added UNLIKELY macro to improve codegen.
841         (WebCore::MainThreadDOMData::getCurrentMainThreadStore):  Combination of getCurrentMainThread
842             and getStore, which inline both calls together.
843         * bindings/v8/MainThreadDOMData.h:
844         (WebCore::MainThreadDOMData::getStore):  Broke out nonvirtual getMainThreadStore for inlineability.
845         * bindings/v8/V8DOMMap.cpp:
846         (WebCore::getDOMNodeMap):  Call new getCurrentMainThreadStore, which is faster.
847
848 2009-11-11  Nate Chapin  <japhet@chromium.org>
849
850         Reviewed by Dimitri Glazkov.
851
852         Add methods to KURLGoogle.cpp declared in http://trac.webkit.org/changeset/50784 but not defined when using KURLGoogle.
853
854         https://bugs.webkit.org/show_bug.cgi?id=31357
855
856         * platform/KURLGoogle.cpp:
857         (WebCore::isSchemeFirstChar):
858         (WebCore::isSchemeChar):
859         (WebCore::KURL::hasPort):
860         (WebCore::KURL::removePort):
861         (WebCore::protocolIsValid):
862
863 2009-11-11  Brent Fulgham  <bfulgham@webkit.org>
864
865         Build fix, no reviewed.
866
867         Correct setPlatformFillColor and setPlatformStrokeColor calls
868         to match new ColorSpace-supporting signatures.
869
870         * platform/graphics/win/GraphicsContextCairoWin.cpp:  Add the
871           color space to the set[...]Color calls.
872
873 2009-11-10  Alexey Proskuryakov  <ap@apple.com>
874
875         Reviewed by Sam Weinig.
876
877         https://bugs.webkit.org/show_bug.cgi?id=31327
878         Clean up SocketStreamHandleClient interface
879
880         No change in behavior.
881
882         * platform/network/SocketStreamHandleClient.h: Removed willOpenStream and willSendData.
883         (WebCore::SocketStreamHandleClient::willOpenStream): Removed. This is currently not used by
884         the only client (WebSocketChannel), and it's not clear what this callback's semantics
885         should be.
886         (WebCore::SocketStreamHandleClient::willSendData): Ditto.
887         (WebCore::SocketStreamHandleClient::receivedCancellation): Removed, because it was misplaced.
888         For ResourceHandle, this method is called when the user cancels authentication sheet,
889         not when something happens with the stream.
890
891         * websockets/WebSocketChannel.h: Some WebSocketChannel methods were virtual without any
892         reason. Also, added didReceiveAuthenticationChallenge/didCancelAuthenticationChallenge.
893
894         * websockets/WebSocketChannel.cpp: Adjusted for the above change. Authentication-related
895         callbacks have no real implementation yet.
896
897 2009-11-11  Zoltan Horvath  <zoltan@webkit.org>
898
899         Reviewed by Eric Seidel.
900
901         Allow custom memory allocation control for the part of page directory in WebCore
902         https://bugs.webkit.org/show_bug.cgi?id=31350
903
904         Inherits the following classes from Noncopyable because these are instantiated
905         by 'new' and these are no need to be copyable:
906
907         class DragController         - instantiated at: WebCore/page/Page.cpp:107
908         class FocusController        - instantiated at: WebCore/page/Page.cpp:109
909         class Settings               - instantiated at: WebCore/page/Page.cpp:116
910         class PluginHalter           - instantiated at: WebCore/page/Page.cpp:160
911         struct ScheduledEvent        - instantiated at: WebCore/page/FrameView.cpp:1275
912         class UserScript             - instantiated at: WebCore/page/PageGroup.cpp:208
913         struct EventHandlerDragState - instantiated at: WebCore/page/EventHandler.cpp:182
914         class XSSAuditor             - instantiated at: WebCore/bindings/js/ScriptController.cpp:70
915         class UserStyleSheet         - instantiated at: WebCore/page/PageGroup.cpp:222
916
917         Inherits PropertyWrapperBase class from Noncopyable because (its child class) 
918         PropertyWrapper is instantiated by 'new' in 
919         WebCore/page/animation/AnimationBase.cpp:564 it is no need to be copyable.
920
921         * page/DragController.h:
922         * page/EventHandler.h:
923         * page/FocusController.h:
924         * page/FrameView.cpp:
925         * page/PluginHalter.h:
926         * page/Settings.h:
927         * page/UserScript.h:
928         * page/UserStyleSheet.h:
929         * page/XSSAuditor.h:
930         * page/animation/AnimationBase.cpp:
931
932 2009-11-11  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
933
934         Reviewed by Kenneth Rohde Christiansen.
935
936         https://bugs.webkit.org/show_bug.cgi?id=31323
937         Fix a few compiler warnings
938
939         No new tests as there is no new functionality.
940
941         * editing/htmlediting.cpp:
942         (WebCore::isRenderedAsNonInlineTableImageOrHR): Use explicit
943         parentheses to silence gcc 4.4 -Wparentheses warnings
944
945 2009-11-11  Kenneth Rohde Christiansen  <kenneth@webkit.org>
946
947         Reviewed by Mark Rowe.
948
949         Set m_hasPendingGeometryChange to true by default, so that
950         at least one call to NPP_SetWindow is executed, which is
951         needed by the DRT plugin testing framework.
952
953         * plugins/PluginView.cpp:
954         (WebCore::PluginView::PluginView):
955
956 2009-11-11  Csaba Osztrogonác  <ossy@webkit.org>
957
958         Rubber-stamped by Kenneth Rohde Christiansen.
959
960         https://bugs.webkit.org/show_bug.cgi?id=31348
961         [Qt] Remove unnecessary LUT creator from WebCore.pro
962
963         * WebCore.pro:
964
965 2009-11-11  Simon Hausmann  <simon.hausmann@nokia.com>
966
967         Reviewed by Tor Arne Vestbø.
968
969         Introduce a function for querying the input method status
970         in QWebPageClient.
971
972         * platform/qt/QWebPageClient.h:
973
974 2009-11-11  Benjamin Otte  <otte@gnome.org>
975
976         Reviewed by Jan Alonzo.
977
978         [GTK] Black artifacts in youtube.com/html5
979
980         Paint the video to the given size. It's the job of the callers to keep
981         track of aspect ratio. RenderVideo.cpp does it for the <video>
982         element.
983         https://bugs.webkit.org/show_bug.cgi?id=30925
984
985         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
986         (WebCore::MediaPlayerPrivate::paint):
987
988 2009-11-11  Joanmarie Diggs  <joanmarie.diggs@gmail.com>
989
990         Reviewed by Reviewed by Jan Alonzo.
991
992         https://bugs.webkit.org/show_bug.cgi?id=30901
993         [Gtk] Need to de-lint the Atk a11y code
994
995         Cleaned up some missed capitalization style-guideline violations.
996
997         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
998
999 2009-11-11  Jocelyn Turcotte  <jocelyn.turcotte@nokia.com>
1000
1001         Reviewed by Eric Seidel.
1002
1003         [Qt] Make the default style background color valid.
1004         Currently the color is transparent but invalid, this causes
1005         list boxes in QtWebKit to be drawn with a black background
1006         since r49242.
1007         https://bugs.webkit.org/show_bug.cgi?id=31295
1008
1009         * rendering/style/RenderStyle.h:
1010         (WebCore::InheritedFlags::initialBackgroundColor):
1011         * rendering/style/StyleBackgroundData.cpp:
1012         (WebCore::StyleBackgroundData::StyleBackgroundData):
1013
1014 2009-11-10  Gavin Barraclough  <barraclough@apple.com>
1015
1016         Reviewed by Geoff Garen.
1017
1018         Simplify the ownership model for worlds - rather than having a pair of weak references
1019         between DOMWrapperWorld and ScriptController/ScriptCachedFrameData, give the latter an
1020         ref pointer to the former.  This reduces complexity & cost of the caching entries in the
1021         back forward cache.
1022
1023         * WebCore.base.exp:
1024         * bindings/js/JSDOMBinding.cpp:
1025         (WebCore::DOMWrapperWorld::~DOMWrapperWorld):
1026         * bindings/js/JSDOMBinding.h:
1027         (WebCore::DOMWrapperWorld::forgetDocument):
1028         * bindings/js/ScriptCachedFrameData.cpp:
1029         (WebCore::ScriptCachedFrameData::ScriptCachedFrameData):
1030         (WebCore::ScriptCachedFrameData::restore):
1031         (WebCore::ScriptCachedFrameData::clear):
1032         * bindings/js/ScriptCachedFrameData.h:
1033         * bindings/js/ScriptController.cpp:
1034         (WebCore::ScriptController::~ScriptController):
1035         (WebCore::ScriptController::clearWindowShell):
1036         (WebCore::ScriptController::initScript):
1037         (WebCore::ScriptController::updateDocument):
1038         * bindings/js/ScriptController.h:
1039
1040 2009-11-10  Shinichiro Hamaji  <hamaji@chromium.org>
1041
1042         Reviewed by Darin Adler.
1043
1044         rename counter to makeCounterNode in RenderCounter.cpp
1045         https://bugs.webkit.org/show_bug.cgi?id=31289
1046
1047         No new test because this is just a small refactoring.
1048
1049         * rendering/RenderCounter.cpp:
1050         (WebCore::findPlaceForCounter):
1051         (WebCore::makeCounterNode):
1052         (WebCore::RenderCounter::originalText):
1053
1054 2009-11-10  Daniel Bates  <dbates@webkit.org>
1055
1056         Reviewed by Oliver Hunt.
1057
1058         https://bugs.webkit.org/show_bug.cgi?id=30754
1059
1060         Patch 2 of 2.
1061
1062         Removed method EventHandler::dragSourceMovedTo, since it is no longer
1063         needed. This method fired a drag event whenever the mouse moved, but
1064         section 7.9.4 of the HTML 5 spec. defines the drag-and-drop processing
1065         model independent of when the mouse moves. See "Among other changes..."
1066         in the change log for patch 1 for more details.
1067
1068         * WebCore.DragSupport.exp:
1069         * page/EventHandler.cpp: Removed method EventHandler::dragSourceMovedTo.
1070         (WebCore::EventHandler::handleDrag): Updated comment about reentrancy issue.
1071         * page/EventHandler.h:
1072
1073 2009-11-10  Daniel Bates  <dbates@webkit.org>
1074
1075         Reviewed by Oliver Hunt.
1076
1077         https://bugs.webkit.org/show_bug.cgi?id=30754
1078
1079         Patch 1 of 2.
1080
1081         As per Section 7.9.4 of the HTML 5 spec. <http://dev.w3.org/html5/spec/Overview.html#drag-and-drop-processing-model>,
1082         the drag event should always fire before the dragover event.
1083
1084         In fixing this bug, this patch also makes our drag processing model
1085         conform to the HTML 5 spec.
1086
1087         Among the changes, this patch ensures that the drag event isn't fired outside
1088         of the drag-and-drop processing loop, WebCore::EventHandler::updateDragAndDrop.
1089         Currently, the drag event is fired whenever the mouse button is down and the OS
1090         detects the mouse moved. But, as per the spec, the drag event should
1091         fire approx. every 350ms so long as the mouse button is down.
1092
1093         Test: fast/events/drag-and-drop-fire-drag-dragover.html
1094
1095         * page/EventHandler.cpp:
1096         (WebCore::EventHandler::clear):
1097         (WebCore::EventHandler::canHandleDragAndDropForTarget): Formerly named handleDragAndDropForTarget.
1098         Modified to determine when we are in the correct instance of EventHandler to service the drag
1099         and drop operation.
1100         (WebCore::EventHandler::updateDragAndDrop): Moved code from WebCore::EventHandler::dragSourceMovedTo
1101         into this method.
1102         (WebCore::EventHandler::cancelDragAndDrop):
1103         (WebCore::EventHandler::performDragAndDrop):
1104         (WebCore::EventHandler::clearDragState):
1105         * page/EventHandler.h: Added field m_shouldOnlyFireDragOverEvent to determine whether
1106         we should fire both drag and dragover events or only the dragover event.
1107
1108 2009-11-10  Vitaly Repeshko  <vitalyr@chromium.org>
1109
1110         Reviewed by Dimitri Glazkov.
1111
1112         [V8] Fix crash in V8CustomXPathNSResolver (http://crbug.com/26726).
1113         https://bugs.webkit.org/show_bug.cgi?id=31301
1114
1115         Tested by new fast/xpath/xpath-detached-iframe-resolver-crash.html.
1116
1117         Allowed passing V8Proxy for the calling JS context:
1118         * bindings/v8/V8DOMWrapper.h:
1119         (WebCore::V8DOMWrapper::getXPathNSResolver):
1120         * bindings/v8/custom/V8CustomXPathNSResolver.cpp:
1121         (WebCore::V8CustomXPathNSResolver::create):
1122         (WebCore::V8CustomXPathNSResolver::V8CustomXPathNSResolver):
1123         (WebCore::V8CustomXPathNSResolver::lookupNamespaceURI):
1124         * bindings/v8/custom/V8CustomXPathNSResolver.h:
1125         * bindings/v8/custom/V8DocumentCustom.cpp:
1126         (WebCore::CALLBACK_FUNC_DECL):
1127
1128 2009-11-10  Yael Aharon  <yael.aharon@nokia.com>
1129
1130         Reviewed by Timothy Hatcher.
1131
1132         Implement URL decomposition IDL attributes for HTMLAnchorElement.
1133         https://bugs.webkit.org/show_bug.cgi?id=29972.
1134
1135         Add methods for setting different parts of the URL in href attribute.
1136
1137         Tests: fast/dom/HTMLAnchorElement/set-href-attribute-hash.html
1138                fast/dom/HTMLAnchorElement/set-href-attribute-host.html
1139                fast/dom/HTMLAnchorElement/set-href-attribute-hostname.html
1140                fast/dom/HTMLAnchorElement/set-href-attribute-pathname.html
1141                fast/dom/HTMLAnchorElement/set-href-attribute-port.html
1142                fast/dom/HTMLAnchorElement/set-href-attribute-protocol.html
1143                fast/dom/HTMLAnchorElement/set-href-attribute-search.html
1144
1145         * bindings/js/JSLocationCustom.cpp:
1146         (WebCore::JSLocation::setPort):
1147         * html/HTMLAnchorElement.cpp:
1148         (WebCore::parsePortFromStringPosition):
1149         (WebCore::HTMLAnchorElement::setHash):
1150         (WebCore::HTMLAnchorElement::setHost):
1151         (WebCore::HTMLAnchorElement::setHostname):
1152         (WebCore::HTMLAnchorElement::setPathname):
1153         (WebCore::HTMLAnchorElement::setPort):
1154         (WebCore::HTMLAnchorElement::setProtocol):
1155         (WebCore::HTMLAnchorElement::setSearch):
1156         * html/HTMLAnchorElement.h:
1157         * html/HTMLAnchorElement.idl:
1158         * loader/FrameLoader.cpp:
1159         (WebCore::FrameLoader::iconURL):
1160         * platform/KURL.cpp:
1161         (WebCore::KURL::removePort):
1162         (WebCore::KURL::setPort):
1163         (WebCore::KURL::prettyURL):
1164         (WebCore::protocolIsValid):
1165         * platform/KURL.h:
1166         (WebCore::KURL::canSetHostOrPort):
1167         (WebCore::KURL::canSetPathname):
1168         (WebCore::KURL::hasPort):
1169         * platform/network/soup/ResourceHandleSoup.cpp:
1170         (WebCore::):
1171
1172 2009-11-10  Nate Chapin  <japhet@chromium.org>
1173
1174         Unreviewed, fix Chromium build after http://trac.webkit.org/changeset/50760.
1175
1176         * platform/chromium/PopupMenuChromium.cpp:
1177         (WebCore::PopupContainer::paintBorder):
1178         (WebCore::PopupListBox::paint):
1179         (WebCore::PopupListBox::paintRow):
1180         * platform/graphics/chromium/TransparencyWin.cpp:
1181         (WebCore::TransparencyWin::setupLayerForWhiteLayer):
1182         * platform/graphics/skia/GraphicsContextSkia.cpp:
1183         (WebCore::GraphicsContext::fillRect):
1184         (WebCore::GraphicsContext::fillRoundedRect):
1185         (WebCore::GraphicsContext::setPlatformFillColor):
1186         (WebCore::GraphicsContext::setPlatformStrokeColor):
1187         * rendering/RenderMediaControlsChromium.cpp:
1188         (WebCore::paintMediaSlider):
1189         (WebCore::paintMediaVolumeSlider):
1190         (WebCore::paintMediaTimelineContainer):
1191         * rendering/RenderThemeChromiumMac.mm:
1192         (WebCore::RenderThemeChromiumMac::paintMenuListButton):
1193
1194 2009-11-10  Brady Eidson  <beidson@apple.com>
1195
1196         Reviewed by Sam Weinig.
1197
1198         Repro crash saving pcmag.com article as a webarchive.
1199         <rdar://problem/7381219> and https://webkit.org/b/31322
1200
1201         Test: http/tests/webarchive/cross-origin-stylesheet-crash.html
1202
1203         * css/CSSStyleSheet.cpp:
1204         (WebCore::CSSStyleSheet::addSubresourceStyleURLs): Walk the stylesheet itself instead
1205           of creating a CSSRuleList (and subjecting ourselves to the security origin check)
1206
1207 2009-11-10  Beth Dakin  <bdakin@apple.com>
1208
1209         Attempt 2 to fix Tiger build. No review needed.
1210
1211         * platform/graphics/cg/GraphicsContextCG.cpp:
1212         (WebCore::deviceRGBColorSpaceRef):
1213         (WebCore::sRGBColorSpaceRef):
1214
1215 2009-11-10  Kevin Ollivier  <kevino@theolliviers.com>
1216
1217         wx build fix. Changes needed after r50760.
1218
1219         * platform/graphics/wx/GraphicsContextWx.cpp:
1220         (WebCore::GraphicsContext::GraphicsContext):
1221         * platform/wx/wxcode/mac/carbon/non-kerned-drawing.cpp:
1222         (WebCore::drawTextWithSpacing):
1223
1224 2009-11-10  Alexey Proskuryakov  <ap@apple.com>
1225
1226         Qt build fix.
1227
1228         * platform/network/ResourceHandle.h: Only inherit from AuthenticationClient on platforms
1229         that use ResourceHandle as a delegate (Mac, CFNetwork, Curl).
1230
1231 2009-11-10  Beth Dakin  <bdakin@apple.com>
1232
1233         Tiger build fix. No review needed.
1234
1235         * platform/graphics/cg/GraphicsContextCG.cpp:
1236         (WebCore::sRGBColorSpaceRef):
1237
1238 2009-11-10  Alexey Proskuryakov  <ap@apple.com>
1239
1240         Reviewed by Dan Bernstein.
1241
1242         https://bugs.webkit.org/show_bug.cgi?id=31312
1243         Decouple authentication panel callbacks from ResourceHandle
1244
1245         No change in functionality.
1246
1247         SocketStreamHandle also needs to request credentials, so it's not appropriate to store
1248         ResourceHandle as delegate.
1249
1250         * WebCore.vcproj/WebCore.vcproj:
1251         * platform/network/AuthenticationClient.h: Added.
1252         Added a new interface for listening to authentication panel notifications.
1253
1254         * WebCore.xcodeproj/project.pbxproj: Added AuthenticationClient.h. Let Visual Studio do what
1255         it wants with the project file.
1256
1257         (WebCore::AuthenticationClient::ref): Using our usual method of exposing refcounting on an
1258         interface class.
1259         (WebCore::AuthenticationClient::deref): Ditto.
1260
1261         * platform/network/ResourceHandle.h:
1262         (WebCore::ResourceHandle::refAuthenticationClient): Ditto.
1263         (WebCore::ResourceHandle::derefAuthenticationClient): Ditto.
1264
1265         * platform/network/cf/AuthenticationCF.cpp:
1266         (WebCore::AuthenticationChallenge::AuthenticationChallenge):
1267         (WebCore::AuthenticationChallenge::platformCompare):
1268         * platform/network/cf/AuthenticationChallenge.h:
1269         (WebCore::AuthenticationChallenge::authenticationClient):
1270         * platform/network/chromium/AuthenticationChallenge.h:
1271         (WebCore::AuthenticationChallenge::authenticationClient):
1272         * platform/network/curl/AuthenticationChallenge.h:
1273         (WebCore::AuthenticationChallenge::authenticationClient):
1274         Keeping a reference to AuthenticationClient, not to ResourceHandle.
1275
1276 2009-11-10  Beth Dakin  <bdakin@apple.com>
1277
1278        Second attempted gtk build fix. No review needed.
1279
1280         * html/canvas/CanvasStyle.cpp:
1281         (WebCore::CanvasStyle::applyStrokeColor):
1282
1283
1284 2009-11-10  Gavin Barraclough  <barraclough@apple.com>
1285
1286         Reviewed by Geoff Garen.
1287
1288         Fix back/forwards cache with JSC isolated worlds.
1289         https://bugs.webkit.org/show_bug.cgi?id=31310
1290         <rdar://problem/7328111> Cached back navigation doesn't restore global object in extension isolated world
1291
1292         Store the global object for all worlds, not just the normal world.
1293         Also maintain bidirectional weak references between the ScriptCachedFrameData and the DOMWrapperWorld,
1294         so we can forget global objects if a world goes away.
1295
1296         * bindings/js/JSDOMBinding.cpp:
1297         (WebCore::DOMWrapperWorld::~DOMWrapperWorld):
1298         * bindings/js/JSDOMBinding.h:
1299         (WebCore::DOMWrapperWorld::rememberScriptCachedFrameData):
1300         (WebCore::DOMWrapperWorld::forgetScriptCachedFrameData):
1301         * bindings/js/ScriptCachedFrameData.cpp:
1302         (WebCore::ScriptCachedFrameData::ScriptCachedFrameData):
1303         (WebCore::ScriptCachedFrameData::forgetWorld):
1304         (WebCore::ScriptCachedFrameData::domWindow):
1305         (WebCore::ScriptCachedFrameData::restore):
1306         (WebCore::ScriptCachedFrameData::clear):
1307         * bindings/js/ScriptCachedFrameData.h:
1308         * bindings/js/ScriptController.h:
1309
1310 2009-11-10  Csaba Osztrogonác  <ossy@webkit.org>
1311
1312         [Qt] Unreviewed buildfix after r50760.
1313
1314         * platform/graphics/qt/GraphicsContextQt.cpp:
1315         (WebCore::GraphicsContext::GraphicsContext):
1316
1317 2009-11-10  Beth Dakin  <bdakin@apple.com>
1318
1319         Attempted build fix. (No review needed.)
1320
1321         * GNUmakefile.am: Adding ColorSpace.h
1322
1323 2009-11-10  Brian Weinstein  <bweinstein@apple.com>
1324
1325         Reviewed by NOBODY - Build Fix.
1326
1327         Updated function calls to take a ColorSpace argument, passing
1328         in DeviceColorSpace for now - this should be fixed. Also added
1329         ColorSpace.h to WebCore project.
1330
1331         * WebCore.vcproj/WebCore.vcproj:
1332         * platform/graphics/win/FontCGWin.cpp:
1333         (WebCore::Font::drawGlyphs):
1334         * platform/graphics/win/GraphicsContextCGWin.cpp:
1335         (WebCore::GraphicsContext::GraphicsContext):
1336         * platform/win/PopupMenuWin.cpp:
1337         (WebCore::PopupMenu::paint):
1338         * platform/win/WebCoreTextRenderer.cpp:
1339         (WebCore::doDrawTextAtPoint):
1340         * rendering/RenderThemeSafari.cpp:
1341         (WebCore::RenderThemeSafari::paintMenuListButton):
1342
1343 2009-11-10  Jens Alfke  <snej@chromium.org>
1344
1345         Reviewed by Darin Adler.
1346
1347         Optimizations to Element::getAttribute
1348         https://bugs.webkit.org/show_bug.cgi?id=30926
1349
1350         * dom/Element.cpp:
1351         (WebCore::Element::getAttribute):  User case-insensitive compare instead of lowercasing the name.
1352         * dom/NamedAttrMap.cpp:
1353         (WebCore::NamedNodeMap::getAttributeItem):  Avoid redundant compares, and do fast/likely compares first.
1354         * platform/text/PlatformString.h:
1355         (WebCore::equalPossiblyIgnoringCase):  New inline method, used by both of the above.
1356
1357 2009-11-10  Beth Dakin  <bdakin@apple.com>
1358
1359         Reviewed by Darin Adler.
1360
1361         Fix for <rdar://problem/7059710> 
1362         -and corresponding-
1363         https://bugs.webkit.org/show_bug.cgi?id=31196 Implement -webkit-
1364         color-correction for CSS colors
1365
1366         New exported symbol for GraphicsContext::fillColor() which now 
1367         accepts a ColorSpace as an optional parameter.
1368         * WebCore.base.exp:
1369
1370         Added a new file, ColorSpace.h, to define the ColorSpace enum.
1371         * WebCore.xcodeproj/project.pbxproj:
1372
1373         Computed Style for -webkit-color-correction
1374         * css/CSSComputedStyleDeclaration.cpp:
1375         (WebCore::):
1376         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1377
1378         Parse -webkit-color-correction
1379         * css/CSSParser.cpp:
1380         (WebCore::CSSParser::parseValue):
1381
1382        Map CSS identifiers to the appropriate values of the ColorSpace enum
1383         * css/CSSPrimitiveValueMappings.h:
1384         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
1385         (WebCore::CSSPrimitiveValue::operator ColorSpace):
1386
1387         New property -webkit-color-correction
1388         * css/CSSPropertyNames.in:
1389
1390         Map -webkit-color-correction into the RenderStyle.
1391         * css/CSSStyleSelector.cpp:
1392         (WebCore::CSSStyleSelector::applyProperty):
1393
1394         Add new value sRGB.
1395         * css/CSSValueKeywords.in:
1396
1397         Comment out the reference to sRGB since it will now be inherited as 
1398         a value from CSSValueKeywords.
1399         * css/SVGCSSValueKeywords.in:
1400
1401         Definition of the ColorSpace enum.
1402         * platform/graphics/ColorSpace.h: Added.
1403         (WebCore::):
1404
1405         These functions all now take a ColorSpace as a parameter.
1406         * platform/graphics/GraphicsContext.cpp:
1407         (WebCore::GraphicsContext::setStrokeColor):
1408         (WebCore::GraphicsContext::setFillColor):
1409         (WebCore::GraphicsContext::drawHighlightForText):
1410
1411         Return the appropriate ColorSpace.
1412         (WebCore::GraphicsContext::strokeColorSpace):
1413         (WebCore::GraphicsContext::fillColorSpace):
1414
1415         These functions all call other functions which require a ColorSpace 
1416         as a parameter.
1417         (WebCore::GraphicsContext::setStrokePattern):
1418         (WebCore::GraphicsContext::setFillPattern):
1419         (WebCore::GraphicsContext::setStrokeGradient):
1420         (WebCore::GraphicsContext::setFillGradient):
1421
1422         All of the GraphicsContext functions that take a Color should now 
1423         also take a ColorSpace.
1424         * platform/graphics/GraphicsContext.h:
1425
1426         Added new member variables stokeColorSpace and fillColorSpace.
1427         * platform/graphics/GraphicsContextPrivate.h:
1428         (WebCore::GraphicsContextState::GraphicsContextState):
1429
1430         Attempt to keep the Cairo port building with all of the massive 
1431         changes to GraphicsContext.        
1432         * platform/graphics/cairo/GraphicsContextCairo.cpp:
1433         (WebCore::GraphicsContext::fillRect):
1434         (WebCore::GraphicsContext::setPlatformFillColor):
1435         (WebCore::GraphicsContext::setPlatformStrokeColor):
1436         (WebCore::GraphicsContext::fillRoundedRect):
1437
1438         
1439         * platform/graphics/cg/GraphicsContextCG.cpp:
1440         (WebCore::sRGBColorSpaceRef): New static function that returns a 
1441         CGColorSpaceRef for the sRGB color space.
1442         (WebCore::deviceRGBColorSpaceRef): New static function that returns 
1443         a CGColorSpaceRef for the device RGB color space.
1444
1445         (WebCore::setCGFillColor): Now takes a ColorSpace parameter and 
1446         sets the fill color to the specified color in the given ColorSpace.
1447         (WebCore::setCGStrokeColor): Same, but for stroke.
1448
1449         (WebCore::setCGFillColorSpace): New static to set the 
1450         CGFillColorSpace to the given ColorSpace
1451         (WebCore::setCGStrokeColorSpace): Same, but for stroke.
1452
1453         Send ColorSpaces when appropriate, set ColorSpaces when 
1454         appropriate, and check ColorSpaces when appropriate.
1455         (WebCore::GraphicsContext::GraphicsContext):
1456         (WebCore::GraphicsContext::drawRect):
1457         (WebCore::GraphicsContext::drawLine):
1458         (WebCore::GraphicsContext::fillPath):
1459         (WebCore::GraphicsContext::strokePath):
1460         (WebCore::GraphicsContext::fillRect):
1461         (WebCore::GraphicsContext::fillRoundedRect):
1462         (WebCore::GraphicsContext::strokeRect):
1463         (WebCore::GraphicsContext::drawLineForText):
1464         (WebCore::GraphicsContext::setPlatformStrokeColor):
1465         (WebCore::GraphicsContext::setPlatformFillColor):
1466
1467         Attempt to keep Haiku building.
1468         * platform/graphics/haiku/GraphicsContextHaiku.cpp:
1469         (WebCore::GraphicsContext::fillRect):
1470         (WebCore::GraphicsContext::fillRoundedRect):
1471         (WebCore::GraphicsContext::setPlatformStrokeColor):
1472         (WebCore::GraphicsContext::setPlatformFillColor):
1473
1474         Attempt to keep QT building.
1475         * platform/graphics/qt/GraphicsContextQt.cpp:
1476         (WebCore::GraphicsContext::fillRect):
1477         (WebCore::GraphicsContext::fillRoundedRect):
1478         (WebCore::GraphicsContext::setPlatformStrokeColor):
1479         (WebCore::GraphicsContext::setPlatformFillColor):
1480
1481         Attempt to keep Wince building.
1482         * platform/graphics/wince/GraphicsContextWince.cpp:
1483         (WebCore::GraphicsContext::fillRect):
1484         (WebCore::GraphicsContext::setPlatformFillColor):
1485         (WebCore::GraphicsContext::setPlatformStrokeColor):
1486         (WebCore::GraphicsContext::clearRect):
1487         (WebCore::GraphicsContext::fillRoundedRect):
1488         (WebCore::GraphicsContext::setPlatformShadow):
1489
1490         Attempt to keep WX building.
1491         * platform/graphics/wx/GraphicsContextWx.cpp:
1492         (WebCore::GraphicsContext::fillRect):
1493         (WebCore::GraphicsContext::fillRoundedRect):
1494         (WebCore::GraphicsContext::setPlatformStrokeColor):
1495         (WebCore::GraphicsContext::setPlatformFillColor):
1496
1497         Added functions colorSpace() and setColorSpace()
1498         * rendering/style/RenderStyle.h:
1499         (WebCore::InheritedFlags::colorSpace):
1500         (WebCore::InheritedFlags::setColorSpace):
1501
1502         The ColorSpace is stored here.
1503         * rendering/style/StyleRareInheritedData.cpp:
1504         (WebCore::StyleRareInheritedData::StyleRareInheritedData):
1505         (WebCore::StyleRareInheritedData::operator==):
1506         * rendering/style/StyleRareInheritedData.h:
1507
1508         All of these call sites call GraphicsContext functions which now 
1509         require ColorSpaces.
1510         * editing/SelectionController.cpp:
1511         (WebCore::SelectionController::paintCaret):
1512         * html/canvas/CanvasRenderingContext2D.cpp:
1513         (WebCore::CanvasRenderingContext2D::drawTextInternal):
1514         * html/canvas/CanvasStyle.cpp:
1515         (WebCore::CanvasStyle::applyStrokeColor):
1516         (WebCore::CanvasStyle::applyFillColor):
1517         * inspector/InspectorController.cpp:
1518         (WebCore::drawOutlinedQuad):
1519         * page/FrameView.cpp:
1520         (WebCore::FrameView::paintContents):
1521         * platform/ScrollbarTheme.h:
1522         (WebCore::ScrollbarTheme::paintScrollCorner):
1523         * platform/ScrollbarThemeComposite.cpp:
1524         (WebCore::ScrollbarThemeComposite::paintScrollCorner):
1525         * platform/graphics/Image.cpp:
1526         (WebCore::Image::fillWithSolidColor):
1527         * platform/graphics/mac/FontMac.mm:
1528         (WebCore::Font::drawGlyphs):
1529         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
1530         (WebCore::MediaPlayerPrivate::paint):
1531         * rendering/EllipsisBox.cpp:
1532         (WebCore::EllipsisBox::paint):
1533         * rendering/InlineFlowBox.cpp:
1534         (WebCore::InlineFlowBox::paintTextDecorations):
1535         * rendering/InlineTextBox.cpp:
1536         (WebCore::updateGraphicsContext):
1537         (WebCore::paintTextWithShadows):
1538         (WebCore::InlineTextBox::paint):
1539         (WebCore::InlineTextBox::paintSelection):
1540         (WebCore::InlineTextBox::paintCompositionBackground):
1541         (WebCore::InlineTextBox::paintDecoration):
1542         (WebCore::InlineTextBox::paintTextMatchMarker):
1543         (WebCore::InlineTextBox::paintCompositionUnderline):
1544         * rendering/InlineTextBox.h:
1545         * rendering/RenderBlock.cpp:
1546         (WebCore::RenderBlock::fillHorizontalSelectionGap):
1547         (WebCore::RenderBlock::fillVerticalSelectionGap):
1548         (WebCore::RenderBlock::fillLeftSelectionGap):
1549         (WebCore::RenderBlock::fillRightSelectionGap):
1550         * rendering/RenderBoxModelObject.cpp:
1551         (WebCore::RenderBoxModelObject::paintFillLayerExtended):
1552         (WebCore::RenderBoxModelObject::paintBoxShadow):
1553         * rendering/RenderFileUploadControl.cpp:
1554         (WebCore::RenderFileUploadControl::paintObject):
1555         * rendering/RenderFrameSet.cpp:
1556         (WebCore::RenderFrameSet::paintColumnBorder):
1557         (WebCore::RenderFrameSet::paintRowBorder):
1558         * rendering/RenderImage.cpp:
1559         (WebCore::RenderImage::paintReplaced):
1560         * rendering/RenderLayer.cpp:
1561         (WebCore::RenderLayer::paintScrollCorner):
1562         (WebCore::RenderLayer::paintResizer):
1563         * rendering/RenderListBox.cpp:
1564         (WebCore::RenderListBox::paintItemForeground):
1565         (WebCore::RenderListBox::paintItemBackground):
1566         * rendering/RenderListMarker.cpp:
1567         (WebCore::RenderListMarker::paint):
1568         * rendering/RenderObject.cpp:
1569         (WebCore::RenderObject::drawLineForBoxSide):
1570         (WebCore::RenderObject::drawArcForBoxSide):
1571         * rendering/RenderReplaced.cpp:
1572         (WebCore::RenderReplaced::paint):
1573         * rendering/RenderScrollbarTheme.cpp:
1574         (WebCore::RenderScrollbarTheme::paintScrollCorner):
1575         * rendering/RenderThemeMac.mm:
1576         (WebCore::RenderThemeMac::paintMenuListButton):
1577         * rendering/RenderView.cpp:
1578         (WebCore::RenderView::paintBoxDecorations):
1579         * rendering/RenderWidget.cpp:
1580         (WebCore::RenderWidget::paint):
1581         * rendering/SVGInlineTextBox.cpp:
1582         (WebCore::SVGInlineTextBox::paintSelection):
1583         * svg/graphics/SVGPaintServerGradient.cpp:
1584         (WebCore::SVGPaintServerGradient::setup):
1585         * svg/graphics/SVGPaintServerSolid.cpp:
1586         (WebCore::SVGPaintServerSolid::setup):
1587
1588 2009-11-10  Keishi Hattori  <casey.hattori@gmail.com>
1589
1590         Reviewed by Timothy Hatcher.
1591
1592         Web Inspector: Speed up syntax highlighter
1593         https://bugs.webkit.org/show_bug.cgi?id=31291
1594
1595         * inspector/front-end/SourceFrame.js:
1596         (WebInspector.SourceFrame.prototype._loaded):
1597         (WebInspector.SourceSyntaxHighlighter.prototype.process.moveToNextLine): Replace the line content node.
1598         (WebInspector.SourceSyntaxHighlighter.prototype.process):
1599         (WebInspector.SourceSyntaxHighlighter.prototype.appendNonToken):
1600         (WebInspector.SourceSyntaxHighlighter.prototype.syntaxHighlightNode):
1601         (WebInspector.CSSSourceSyntaxHighlighter):
1602         (WebInspector.JavaScriptSourceSyntaxHighlighter):
1603
1604 2009-11-09  Jeremy Orlow  <jorlow@chromium.org>
1605
1606         Reviewed by Eric Seidel.
1607
1608         Remove session storage setting
1609         https://bugs.webkit.org/show_bug.cgi?id=31279
1610
1611         Remove session storage from Settings.  It was added temporarily so we could
1612         disable it by default at runtime in Chromium.  We now disable these things in a
1613         different way, so it's time to remove it.  Qt also depended on this setting for
1614         a short period of time, but after talking to them we agreed that it should be
1615         removed.
1616
1617         This bug is the second half of https://bugs.webkit.org/show_bug.cgi?id=30602
1618
1619         * page/DOMWindow.cpp:
1620         (WebCore::DOMWindow::sessionStorage):
1621         * page/Settings.cpp:
1622         (WebCore::Settings::Settings):
1623         * page/Settings.h:
1624
1625 2009-11-10  Dan Bernstein  <mitz@apple.com>
1626
1627         Reviewed by Eric Carlson and Darin Adler.
1628
1629         WebCore part of making full-screen video pause during scrubbing.
1630
1631         * WebCore.Video.exp: Sorted and added HTMLMediaElement::beginScrubbing()
1632         and HTMLMediaElement::endScrubbing().
1633
1634 2009-11-10  Anton Muhin  <antonm@chromium.org>
1635
1636         Reviewed by Adam Barth.
1637
1638         Reapply 50562 reverted by 50588 due to issues with sandboxing (should be fine now).
1639         https://bugs.webkit.org/show_bug.cgi?id=31051
1640
1641         * bindings/v8/V8GCController.cpp:
1642         (WebCore::V8GCController::gcEpilogue):
1643         (WebCore::V8GCController::checkMemoryUsage):
1644         * bindings/v8/V8GCController.h:
1645         * bindings/v8/V8Proxy.cpp:
1646         (WebCore::V8Proxy::evaluate):
1647         (WebCore::V8Proxy::runScript):
1648         (WebCore::V8Proxy::callFunction):
1649
1650 2009-11-10  Zoltan Horvath  <zoltan@webkit.org>
1651
1652         Reviewed by Darin Adler.
1653
1654         Allow custom memory allocation control for the part of loader directory in WebCore
1655         https://bugs.webkit.org/show_bug.cgi?id=31161
1656
1657         Inherits the following classes from Noncopyable because these are instantiated
1658         by 'new' and these are no need to be copyable:
1659
1660         class Request - WebCore/loader/loader.cpp:100
1661         struct ScheduledRedirection - WebCore/loader/RedirectScheduler.cpp:164
1662         class ApplicationCacheStorage - WebCore/loader/appcache/ApplicationCacheStorage.cpp:1121
1663         class ApplicationCacheHost -  WebCore/loader/DocumentLoader.cpp:151
1664         class ImageEventSender - WebCore/loader/ImageLoader.cpp:54
1665         struct ProgressItem - WebCore/loader/ProgressTracker.cpp:169
1666
1667         Inherits ThreadableLoaderClient class from Noncopyable because (its child class) 
1668         MainThreadBridge is instantiated by 'new' in 
1669         WebCore/loader/WorkerThreadableLoader.cpp:59 it is no need to be copyable.
1670
1671         ThreadableLoaderClient's inheriting has been changed to public.
1672
1673         * loader/ImageLoader.cpp:
1674         * loader/ProgressTracker.cpp:
1675         * loader/RedirectScheduler.cpp:
1676         * loader/Request.h:
1677         * loader/ThreadableLoaderClient.h:
1678         * loader/WorkerThreadableLoader.h:
1679         * loader/appcache/ApplicationCacheHost.h:
1680         * loader/appcache/ApplicationCacheStorage.h:
1681
1682 2009-11-10  Philippe Normand  <pnormand@igalia.com>
1683
1684         Reviewed by Eric Seidel.
1685
1686         https://bugs.webkit.org/show_bug.cgi?id=31047
1687         [GTK] Failing test media/video-played-ranges-1.html
1688
1689         WebKit coding style fixes.
1690
1691         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
1692         (WebCore::mediaPlayerPrivateMessageCallback):
1693         (WebCore::MediaPlayerPrivate::naturalSize):
1694         (WebCore::MediaPlayerPrivate::paint):
1695         (WebCore::mimeTypeCache):
1696
1697 2009-11-10  Oliver Hunt  <oliver@apple.com>
1698
1699         Remove build failure introduced by earlier build fix.
1700
1701         * bindings/v8/custom/V8WebGLIntArrayCustom.cpp:
1702
1703 2009-11-10  Oliver Hunt  <oliver@apple.com>
1704
1705         Is this the last build fix? grep tells me yes.
1706
1707         * bindings/v8/custom/V8DocumentCustom.cpp:
1708         (WebCore::CALLBACK_FUNC_DECL):
1709
1710 2009-11-10  Oliver Hunt  <oliver@apple.com>
1711
1712         Hopefully the last one.  Why aren't these autogenerated?
1713
1714         * bindings/v8/V8DOMWrapper.cpp:
1715         (WebCore::V8DOMWrapper::setIndexedPropertiesToExternalArray):
1716         (WebCore::V8DOMWrapper::getTemplate):
1717         (WebCore::V8DOMWrapper::convertToV8Object):
1718
1719 2009-11-10  Oliver Hunt  <oliver@apple.com>
1720
1721         Another chrome build fix.
1722
1723         * bindings/v8/custom/V8HTMLCanvasElementCustom.cpp:
1724         (WebCore::CALLBACK_FUNC_DECL):
1725
1726 2009-11-10  Oliver Hunt  <oliver@apple.com>
1727
1728         Yet another chrome buildfix
1729
1730         * bindings/v8/custom/V8WebGLArrayBufferCustom.cpp:
1731         (WebCore::CALLBACK_FUNC_DECL):
1732         * bindings/v8/custom/V8WebGLArrayCustom.h:
1733         (WebCore::constructCanvasArray):
1734         * bindings/v8/custom/V8WebGLByteArrayCustom.cpp:
1735         (WebCore::CALLBACK_FUNC_DECL):
1736         (WebCore::INDEXED_PROPERTY_GETTER):
1737         (WebCore::INDEXED_PROPERTY_SETTER):
1738         * bindings/v8/custom/V8WebGLFloatArrayCustom.cpp:
1739         (WebCore::CALLBACK_FUNC_DECL):
1740         (WebCore::INDEXED_PROPERTY_GETTER):
1741         (WebCore::INDEXED_PROPERTY_SETTER):
1742         * bindings/v8/custom/V8WebGLIntArrayCustom.cpp:
1743         (WebCore::CALLBACK_FUNC_DECL):
1744         (WebCore::INDEXED_PROPERTY_GETTER):
1745         (WebCore::INDEXED_PROPERTY_SETTER):
1746         * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
1747         (WebCore::CALLBACK_FUNC_DECL):
1748         (WebCore::vertexAttribAndUniformHelperf):
1749         (WebCore::uniformHelperi):
1750         (WebCore::uniformMatrixHelper):
1751         * bindings/v8/custom/V8WebGLShortArrayCustom.cpp:
1752         (WebCore::CALLBACK_FUNC_DECL):
1753         (WebCore::INDEXED_PROPERTY_GETTER):
1754         (WebCore::INDEXED_PROPERTY_SETTER):
1755         * bindings/v8/custom/V8WebGLUnsignedByteArrayCustom.cpp:
1756         (WebCore::CALLBACK_FUNC_DECL):
1757         (WebCore::INDEXED_PROPERTY_GETTER):
1758         (WebCore::INDEXED_PROPERTY_SETTER):
1759         * bindings/v8/custom/V8WebGLUnsignedIntArrayCustom.cpp:
1760         (WebCore::CALLBACK_FUNC_DECL):
1761         (WebCore::INDEXED_PROPERTY_GETTER):
1762         (WebCore::INDEXED_PROPERTY_SETTER):
1763         * bindings/v8/custom/V8WebGLUnsignedShortArrayCustom.cpp:
1764         (WebCore::CALLBACK_FUNC_DECL):
1765         (WebCore::INDEXED_PROPERTY_GETTER):
1766         (WebCore::INDEXED_PROPERTY_SETTER):
1767
1768 2009-11-10  Oliver Hunt  <oliver@apple.com>
1769
1770         Chrome build fix.
1771
1772         * bindings/v8/V8Index.h:
1773
1774 2009-11-10  Joanmarie Diggs  <joanmarie.diggs@gmail.com>
1775
1776         Reviewed by Reviewed by Jan Alonzo.
1777
1778         https://bugs.webkit.org/show_bug.cgi?id=30901
1779         [Gtk] Need to de-lint the Atk a11y code
1780
1781         Removal of various and sundry style-violating nits.
1782
1783         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
1784
1785 2009-11-10  Philippe Normand  <pnormand@igalia.com>
1786
1787         Reviewed by Jan Alonzo.
1788
1789         https://bugs.webkit.org/show_bug.cgi?id=31047
1790         [GTK] Failing test media/video-played-ranges-1.html
1791
1792         Fix playback rate setter by remembering the rate was changed. Also
1793         correctly handle reverse playback by doing a seek from end to
1794         beginning of the media.
1795
1796         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
1797         (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
1798         (WebCore::MediaPlayerPrivate::currentTime):
1799         (WebCore::MediaPlayerPrivate::seek):
1800         (WebCore::MediaPlayerPrivate::hasAudio):
1801         (WebCore::MediaPlayerPrivate::setVolume):
1802         (WebCore::MediaPlayerPrivate::setRate):
1803         (WebCore::MediaPlayerPrivate::updateStates):
1804         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.h:
1805
1806 2009-11-10  Oliver Hunt  <oliver@apple.com>
1807
1808         Reviewed by Maciej Stachowiak.
1809
1810         Rename 3D Canvas related classes to use WebGL prefix
1811         https://bugs.webkit.org/show_bug.cgi?id=29095
1812
1813         Automatic rename of all WebGL related types from Canvas* to
1814         WebGL* per more recent version of the WebGL spec.
1815
1816         Due to the automatic rename I've removed the 600+ line change list.
1817
1818 2009-11-09  Dirk Schulze  <krit@webkit.org>
1819
1820         Reviewed by Oliver Hunt.
1821
1822         SVG feDisplacementMap is not implemented
1823         [https://bugs.webkit.org/show_bug.cgi?id=31255]
1824
1825         This is the implementation of the SVG filter effect
1826         feDisplacementMap. 
1827
1828         Test: svg/filters/feDisplacementMap.svg
1829
1830         * svg/graphics/filters/SVGFEDisplacementMap.cpp:
1831         (WebCore::FEDisplacementMap::apply):
1832
1833 2009-11-09  Kent Tamura  <tkent@chromium.org>
1834
1835         Reviewed by Darin Adler.
1836
1837         Add a comment about null strings and hash functions.
1838         https://bugs.webkit.org/show_bug.cgi?id=29118
1839
1840         * platform/text/StringHash.h:
1841
1842 2009-11-09  Martin Robinson  <martin.james.robinson@gmail.com>
1843
1844         Reviewed by Darin Adler.
1845
1846         Compiler warnings in InspectorResource.h
1847         https://bugs.webkit.org/show_bug.cgi?id=29231
1848
1849         Fix compilation warnings by removing addition operation on an enum type.
1850
1851         * inspector/InspectorResource.h:
1852         (WebCore::InspectorResource::):
1853         (WebCore::InspectorResource::Changes::hasChange):
1854         (WebCore::InspectorResource::Changes::set):
1855         (WebCore::InspectorResource::Changes::setAll):
1856
1857 2009-11-09  Anders Carlsson  <andersca@apple.com>
1858
1859         Reviewed by Darin Adler and Dan Bernstein.
1860
1861         <rdar://problem/7328395>
1862         https://bugs.webkit.org/show_bug.cgi?id=31277
1863
1864         When an object tag's style changes (for example when child nodes are added/removed),
1865         reuse its Frame (if it has one) instead of creating multiple Frames.
1866
1867         Test: fast/dom/HTMLObjectElement/children-changed.html
1868
1869         * loader/FrameLoader.cpp:
1870         (WebCore::FrameLoader::requestObject):
1871
1872 2009-11-09  Norbert Leser  <norbert.leser@nokia.com>
1873
1874         Reviewed by Kenneth Rohde Christiansen.
1875
1876         Moved macro MMP_RULES (LINKEROPTION) into symbian instead of symbian-sbsv2,
1877         since adjustment of RW-section base address will be needed for all new symbian
1878         tool chains, specifically for arm and gcc compilation targets.
1879         Also, change target address to 0xE00000 to be sufficient for all targets.
1880
1881         * WebCore.pro:
1882
1883 2009-11-09  Pavel Feldman  <pfeldman@chromium.org>
1884
1885         Reviewed by Timothy Hatcher.
1886
1887         Web Inspector: Crash when inspecting
1888         WebCore\manual-tests\inspector\dom-mutation.html
1889
1890         https://bugs.webkit.org/show_bug.cgi?id=31259
1891
1892         * inspector/InspectorDOMAgent.cpp:
1893         (WebCore::InspectorDOMAgent::handleEvent):
1894
1895 2009-11-09  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
1896
1897         Reviewed by Kenneth Rohde Christiansen.
1898
1899         [Qt] Few classes have virtual functions but non-virtual destructor
1900         https://bugs.webkit.org/show_bug.cgi?id=31269
1901
1902         No new tests as there is no functional change.
1903
1904         * platform/qt/QWebPageClient.h:
1905         (QWebPageClient::~QWebPageClient): Add virtual destructor.
1906
1907 2009-11-09  Yael Aharon  <yael.aharon@nokia.com>
1908
1909         Reviewed by Kenneth Rohde Christiansen.
1910
1911         [Qt] Allow setting HTTP headers with empty value in XMLHTTPRequest
1912         https://bugs.webkit.org/show_bug.cgi?id=31140
1913
1914         QtNetwork interprets null string as request to remove the header, not add it.
1915         Replace null values with empty values before passing them to QtNetwork.
1916
1917         Test: http/tests/xmlhttprequest/xmlhttprequest-setrequestheader-no-value.html
1918
1919         * platform/network/qt/ResourceRequestQt.cpp:
1920         (WebCore::ResourceRequest::toNetworkRequest):
1921
1922 2009-11-09  Vadim Zeitlin  <vadim@wxwidgets.org>
1923
1924         Reviewed by Kevin Ollivier.
1925
1926         [wx] Fix handling of alpha channel when using wxWidgets 2.9: it was
1927         simply ignored before resulting in transparent areas being black in PNG
1928         images for example.
1929         
1930         https://bugs.webkit.org/show_bug.cgi?id=30823
1931
1932         * platform/image-decoders/wx/ImageDecoderWx.cpp:
1933         (WebCore::RGBA32Buffer::asNewNativeImage):
1934
1935 2009-11-09  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
1936
1937         Reviewed by Kenneth Rohde Christiansen.
1938
1939         Use explicit parentheses to silence gcc 4.4 -Wparentheses warnings
1940         https://bugs.webkit.org/show_bug.cgi?id=31040
1941
1942         No new tests as there is no functional change.
1943
1944         * dom/Document.cpp:
1945         (WebCore::Document::recalcStyleSelector):
1946         * editing/TextIterator.cpp:
1947         (WebCore::pushFullyClippedState):
1948         * editing/VisibleSelection.cpp:
1949         (WebCore::VisibleSelection::appendTrailingWhitespace):
1950         * html/HTMLLinkElement.cpp:
1951         (WebCore::HTMLLinkElement::process):
1952         * loader/RedirectScheduler.cpp:
1953         (WebCore::RedirectScheduler::mustLockBackForwardList):
1954         * loader/appcache/ApplicationCacheGroup.cpp:
1955         (WebCore::ApplicationCacheGroup::didFinishLoadingManifest):
1956         * platform/graphics/qt/FontCacheQt.cpp:
1957         (WebCore::FontPlatformDataCacheKey::computeHash):
1958         * rendering/RenderBlock.cpp:
1959         (WebCore::RenderBlock::handleRunInChild):
1960         * rendering/RenderBox.cpp:
1961         (WebCore::RenderBox::calcHeight):
1962         * rendering/RenderTextControlMultiLine.cpp:
1963         (WebCore::RenderTextControlMultiLine::nodeAtPoint):
1964         * rendering/style/RenderStyle.cpp:
1965         (WebCore::RenderStyle::diff):
1966         * svg/SVGAnimateElement.cpp:
1967         (WebCore::parseNumberValueAndUnit):
1968         * svg/SVGAnimationElement.cpp:
1969         (WebCore::SVGAnimationElement::startedActiveInterval):
1970         * svg/SVGPreserveAspectRatio.cpp:
1971         (WebCore::SVGPreserveAspectRatio::getCTM):
1972
1973 2009-11-09  Shinichiro Hamaji  <hamaji@chromium.org>
1974
1975         Reviewed by Dimitri Glazkov.
1976
1977         Win chromium is slow to draw transparent texts
1978         https://bugs.webkit.org/show_bug.cgi?id=31258
1979
1980         Clip graphics context to reduce calculation.
1981
1982         No new tests because this change only affects performance.
1983
1984         * platform/graphics/chromium/FontChromiumWin.cpp:
1985         (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::initializeForGDI):
1986         (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::~TransparencyAwareFontPainter):
1987
1988 2009-11-09  Carol Szabo  <carol.szabo@nokia.com>
1989
1990         Reviewed by Darin Adler.
1991
1992         showTree(CounterNode*) generates too little info and has too many spaces.
1993         https://bugs.webkit.org/show_bug.cgi?id=31212
1994
1995         No new tests as the change has no functional effect it is just for
1996         improved debugging.
1997
1998         * rendering/CounterNode.cpp:
1999         (WebCore::showTreeAndMark):
2000         Changed to also show addresses of parent, next and previous
2001         siblings.
2002
2003 2009-11-09  Stuart Morgan  <stuartmorgan@chromium.org>
2004
2005         Reviewed by Darin Adler.
2006
2007         Moves Mac implementation of setUseSecureKeyboardEntry to Frame.cpp and
2008         enables it PLATFORM(CHROMIUM) in addition to PLATFORM(MAC).
2009
2010         https://bugs.webkit.org/show_bug.cgi?id=31083
2011
2012         No new tests; implementation is unchanged.
2013
2014         * page/Frame.cpp:
2015         (WebCore::Frame::setUseSecureKeyboardEntry):
2016         * page/mac/FrameMac.mm:
2017
2018 2009-11-09  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
2019
2020         Reviewed by Jan Alonzo.
2021
2022         Make XP_UNIX tests consistent
2023         https://bugs.webkit.org/show_bug.cgi?id=31250
2024
2025         No new tests as there is no functional change.
2026
2027         * plugins/PluginView.cpp:
2028         (WebCore::PluginView::setFrameRect): Test if XP_UNIX is defined
2029         instead of the value of the macro
2030
2031         * plugins/gtk/PluginViewGtk.cpp:
2032         (WebCore::PluginView::setNPWindowIfNeeded): Test if the XP_UNIX is
2033         defined instead of using the PLATFORM macro to be consistent
2034         (WebCore::PluginView::getValue): Ditto.
2035
2036 2009-11-09  Kevin Watters  <kevinwatters@gmail.com>
2037
2038         Reviewed by Darin Adler.
2039
2040         Thunk to the main thread from ~Database to deref Database's m_document.
2041
2042         If the Database was the Document's last referrer, then ~Document occurs on the
2043         Database thread, and ASSERT(!m_styleRecalcTimer.isActive()) hits a main thread
2044         ASSERT in debug builds.
2045
2046         * storage/Database.cpp:
2047         (WebCore::derefDocument):
2048         (WebCore::Database::~Database):
2049
2050 2009-11-09  Mark Mentovai  <mark@chromium.org>
2051
2052         Reviewed by Dan Bernstein.
2053
2054         Track "can have scrollbar" state within FrameView independently of the
2055         individual scrollbar states in ScrollView.
2056
2057         rdar://problem/7215132, https://bugs.webkit.org/show_bug.cgi?id=29167
2058         REGRESSION (r48064): mint.com loses scrollbars after coming out of
2059         edit mode.
2060
2061         rdar://problem/7314421, https://bugs.webkit.org/show_bug.cgi?id=30517
2062         REGRESSION (r48064): Extra scroll bars in GarageBand Lesson Store.
2063
2064         Test: fast/overflow/scrollbar-restored.html
2065
2066         * WebCore.base.exp:
2067         * page/FrameView.cpp:
2068         (WebCore::FrameView::FrameView):
2069         (WebCore::FrameView::resetScrollbars):
2070         (WebCore::FrameView::setCanHaveScrollbars):
2071         (WebCore::FrameView::updateCanHaveScrollbars):
2072         (WebCore::FrameView::layout):
2073         * page/FrameView.h:
2074         * platform/ScrollView.h:
2075
2076 2009-11-09  Keishi Hattori  <casey.hattori@gmail.com>
2077
2078         Reviewed by Timothy Hatcher.
2079
2080         Web Inspector: CSS syntax highlighter doesn't recognize negative numbers
2081         https://bugs.webkit.org/show_bug.cgi?id=31257
2082
2083         * inspector/front-end/SourceFrame.js:
2084
2085 2009-11-09  Alexander Pavlov  <apavlov@chromium.org>
2086
2087         Reviewed by Timothy Hatcher.
2088
2089         Web Inspector: Debugger shortcuts (F8, F10, F11) have no effect if the Console view is open
2090         https://bugs.webkit.org/show_bug.cgi?id=31252
2091
2092         Route F1-F12 keypresses in the Console view to the current panel if there is one.
2093
2094         Test: manual-tests/inspector/debugger-shortcuts-with-console-opened.html
2095
2096         * inspector/front-end/ConsoleView.js:
2097         (WebInspector.ConsoleView.prototype._promptKeyDown):
2098         * inspector/front-end/utilities.js:
2099         ():
2100         * manual-tests/inspector/debugger-shortcuts-with-console-opened.html: Added.
2101
2102 2009-11-09  Yael Aharon  <yael.aharon@nokia.com>
2103
2104         Reviewed by Kenneth Rohde Christiansen.
2105
2106         [Qt] Pass credentials provided by XMLHTTPRequest to the network request.
2107         https://bugs.webkit.org/show_bug.cgi?id=31208
2108
2109         After r42483, the credentials are no longer passed to the network request
2110         in the URL of the request.
2111         Pass the credentials from XMLHTTPRequest to the network request, the same
2112         way that other ports do.
2113
2114         After this patch LayoutTests/http/xmlhttprequest/basic-auth.html passes.
2115
2116         * platform/network/qt/ResourceHandleQt.cpp:
2117         (WebCore::ResourceHandle::start):
2118         (WebCore::ResourceHandle::loadResourceSynchronously):
2119
2120 2009-11-09  Zoltan Horvath  <zoltan@webkit.org>
2121
2122         Unreviewed.
2123
2124         https://bugs.webkit.org/show_bug.cgi?id=31161
2125
2126         Roll back r50657 because it breaks the MAC builds.
2127
2128         * loader/ImageLoader.cpp:
2129         * loader/ProgressTracker.cpp:
2130         * loader/RedirectScheduler.cpp:
2131         * loader/Request.h:
2132         * loader/ThreadableLoaderClient.h:
2133         * loader/WorkerThreadableLoader.h:
2134         * loader/appcache/ApplicationCacheHost.h:
2135         * loader/appcache/ApplicationCacheStorage.h:
2136         * loader/icon/IconDatabaseClient.h:
2137
2138 2009-11-09  Zoltan Horvath  <zoltan@webkit.org>
2139
2140         Reviewed by Darin Adler.
2141
2142         Allow custom memory allocation control for the part of loader directory in WebCore
2143         https://bugs.webkit.org/show_bug.cgi?id=31161
2144
2145         Inherits the following classes from Noncopyable because these are instantiated
2146         by 'new' and these are no need to be copyable:
2147
2148         class Request - WebCore/loader/loader.cpp:100
2149         struct ScheduledRedirection - WebCore/loader/RedirectScheduler.cpp:164
2150         class IconDatabaseClient - WebCore/loader/icon/IconDatabase.cpp:89
2151         class ApplicationCacheStorage - WebCore/loader/appcache/ApplicationCacheStorage.cpp:1121
2152         class ApplicationCacheHost -  WebCore/loader/DocumentLoader.cpp:151
2153         class ImageEventSender - WebCore/loader/ImageLoader.cpp:54
2154         struct ProgressItem - WebCore/loader/ProgressTracker.cpp:169
2155
2156         Inherits ThreadableLoaderClient class from Noncopyable because (its child class) 
2157         MainThreadBridge is instantiated by 'new' in 
2158         WebCore/loader/WorkerThreadableLoader.cpp:59 it is no need to be copyable.
2159
2160         ThreadableLoaderClient's inheriting has been changed to public.
2161
2162         * loader/ImageLoader.cpp:
2163         * loader/ProgressTracker.cpp:
2164         * loader/RedirectScheduler.cpp:
2165         * loader/Request.h:
2166         * loader/ThreadableLoaderClient.h:
2167         * loader/WorkerThreadableLoader.h:
2168         * loader/appcache/ApplicationCacheHost.h:
2169         * loader/appcache/ApplicationCacheStorage.h:
2170         * loader/icon/IconDatabaseClient.h:
2171
2172 2009-11-09  Zoltan Horvath  <zoltan@webkit.org>
2173
2174         Reviewed by Darin Adler.
2175
2176         Allow custom memory allocation control for WebCore's DocLoader
2177         https://bugs.webkit.org/show_bug.cgi?id=31163
2178
2179         Inherits DocLoader class from Noncopyable because it is
2180         instantiated by 'new' in WebCore/dom/Document.cpp:370 and 
2181         it is no need to be copyable.
2182
2183         * loader/DocLoader.h:
2184
2185 2009-11-09  Zoltan Horvath  <zoltan@webkit.org>
2186
2187         Reviewed by Darin Adler.
2188
2189         Allow custom memory allocation control for WebCore's Tokenizer
2190         https://bugs.webkit.org/show_bug.cgi?id=31162
2191
2192         Inherits Tokenizer class from Noncopyable because (its child class)
2193         ImageTokenizer instantiated by 'new' in WebCore/loader/ImageDocument.cpp:178 
2194         and it is no need to be copyable.
2195
2196         * dom/Tokenizer.h:
2197
2198 2009-11-09  Zoltan Horvath  <zoltan@webkit.org>
2199
2200         Reviewed by Darin Adler.
2201
2202         Allow custom memory allocation control for WebCore's DeleteButtonController
2203         https://bugs.webkit.org/show_bug.cgi?id=31105
2204
2205         Inherits DeleteButtonController class from Noncopyable because it is 
2206         instantiated by 'new' in WebCore/editing/Editor.cpp:919 and
2207         it is no need to be copyable.  
2208
2209         * editing/DeleteButtonController.h:
2210
2211 2009-11-09  Martin Robinson  <martin.james.robinson@gmail.com>
2212
2213         Reviewed by Jan Alonzo.
2214
2215         [GTK] Expose Page::tabKeyCyclesThroughElements in the API
2216         https://bugs.webkit.org/show_bug.cgi?id=30482
2217
2218         Expose Page::tabKeyCyclesThroughElements as a property of
2219         WebKitWebView.
2220
2221         No new tests; fast/events/keypress-insert-tab.html is no longer skipped.
2222
2223         * platform/gtk/KeyEventGtk.cpp: Correct m_text for tab key presses.
2224         (WebCore::singleCharacterString):
2225
2226 2009-11-09  Joanmarie Diggs  <joanmarie.diggs@gmail.com>
2227
2228         Reviewed by Xan Lopez.
2229
2230         https://bugs.webkit.org/show_bug.cgi?id=25415
2231         [GTK][ATK] Please implement support for get_text_at_offset
2232
2233         Fix a crasher that occurred with text which included newline
2234         chars in the markup.
2235
2236         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
2237         (convertUniCharToUTF8):
2238
2239 2009-11-05  Jakub Wieczorek  <faw217@gmail.com>
2240
2241         Reviewed by Holger Freyther.
2242
2243         [Qt] The XML tokenizer reports a parse error twice if it occurs before the document element is found.
2244         https://bugs.webkit.org/show_bug.cgi?id=31144
2245
2246         XMLTokenizer::doEnd() uses an additional logic to report a parse failure in
2247         documents that end prematurely but are not considered invalid by QXmlStream.
2248         This is to stay compatible with the libxml2 implementation.
2249         However, that code path would be also hit in situations when it should not,
2250         i.e. the error would have already been caught and handled. As a result, the
2251         same error would be reported twice.
2252
2253         No new tests, because the problem is already covered by
2254         fast/parser/xml-declaration-missing-ending-mark.html.
2255
2256         * dom/XMLTokenizerQt.cpp:
2257         (WebCore::XMLTokenizer::doEnd):
2258
2259 2009-11-08  Keishi Hattori  <casey.hattori@gmail.com>
2260
2261         Reviewed by Pavel Feldman.
2262
2263         Web Inspector: Inspector should support copy() in the command line
2264         https://bugs.webkit.org/show_bug.cgi?id=31238
2265
2266         * inspector/InspectorBackend.cpp:
2267         (WebCore::InspectorBackend::copyText): Added.
2268         * inspector/InspectorBackend.h: Added copyText
2269         * inspector/InspectorBackend.idl: Added copyText
2270         * inspector/front-end/InjectedScript.js:
2271         (InjectedScript._copy): Added.
2272         (InjectedScript._ensureCommandLineAPIInstalled):
2273
2274 2009-11-08  Drew Wilson  <atwilson@chromium.org>
2275
2276         Reviewed by Dimitri Glazkov.
2277
2278         V8 WorkerContextExecutionProxy does not handle SharedWorkers
2279         https://bugs.webkit.org/show_bug.cgi?id=31226
2280
2281         Now checks to see what type of context is active and creates the
2282         appropriate wrapper (DEDICATEDWORKERCONTEXT vs SHAREDWORKERCONTEXT).
2283
2284         Added support for converting to SharedWorkers and SharedWorkerContexts.
2285
2286         Test: Existing layout tests cover this case (start passing in Chrome).
2287
2288         * bindings/v8/WorkerContextExecutionProxy.cpp:
2289         (WebCore::WorkerContextExecutionProxy::initContextIfNeeded):
2290         Now generates the right type of DOMWrapper for SharedWorkerContexts.
2291         (WebCore::WorkerContextExecutionProxy::convertToV8Object):
2292         Added support for SHAREDWORKERCONTEXT.
2293         (WebCore::WorkerContextExecutionProxy::convertEventTargetToV8Object):
2294         Added support for SharedWorker and SharedWorkerContext.
2295
2296 2009-11-08  Johnny Ding  <johnnyding.webkit@gmail.com>
2297
2298         Reviewed by Dimitri Glazkov.
2299
2300         https://bugs.webkit.org/show_bug.cgi?id=31224
2301         [V8] Return StyleSheet object instead of HTMLStyleElement w/document.styleSheets named property getter.
2302
2303         Test: fast/dom/StyleSheet/get-stylesheet-byname.html
2304
2305         * bindings/v8/custom/V8StyleSheetListCustom.cpp:
2306         (WebCore::NAMED_PROPERTY_GETTER):
2307
2308 2009-11-08  Pavel Feldman  <pfeldman@chromium.org>
2309
2310         Reviewed by Timothy Hatcher.
2311
2312         Web Inspector: "Search again" on scripts panel switches
2313         to the script this search started with.
2314
2315         https://bugs.webkit.org/show_bug.cgi?id=31243
2316
2317         * inspector/front-end/Panel.js:
2318         (WebInspector.Panel.prototype.jumpToNextSearchResult):
2319
2320 2009-11-08  Kent Tamura  <tkent@chromium.org>
2321
2322         Reviewed by Darin Adler.
2323
2324         Simplify Icon interface.
2325         https://bugs.webkit.org/show_bug.cgi?id=31154
2326
2327         - Remove Icon::createIconForFile().  createIconForFiles() covers
2328           createIconForFile()'s role.
2329         - Remove FileChooser::chooseIcon()
2330         - Change the parameter types of FileChooser constructor and the
2331           factory method, String -> const Vector<String>&, in order to
2332           support initialization with multiple files.
2333         - Remove the icon loading code in IconChromiumWin.cpp, which
2334           doesn't work because of the sandbox.
2335
2336         No tests because it's just a refactoring.
2337
2338         * platform/FileChooser.cpp:
2339         (WebCore::FileChooser::FileChooser):
2340         (WebCore::FileChooser::create):
2341         (WebCore::FileChooser::chooseFile):
2342         (WebCore::FileChooser::chooseFiles):
2343         * platform/FileChooser.h:
2344         * platform/graphics/Icon.h:
2345         * platform/graphics/chromium/IconChromiumLinux.cpp:
2346         * platform/graphics/chromium/IconChromiumMac.cpp:
2347         * platform/graphics/chromium/IconChromiumWin.cpp:
2348         (WebCore::Icon::createIconForFiles):
2349         * platform/graphics/gtk/IconGtk.cpp:
2350         (WebCore::Icon::createIconForFiles):
2351         * platform/graphics/haiku/IconHaiku.cpp:
2352         * platform/graphics/mac/IconMac.mm:
2353         (WebCore::Icon::createIconForFiles):
2354         * platform/graphics/qt/IconQt.cpp:
2355         (WebCore::Icon::createIconForFiles):
2356         * platform/graphics/win/IconWin.cpp:
2357         (WebCore::Icon::createIconForFiles):
2358         * platform/graphics/wx/IconWx.cpp:
2359         * rendering/RenderFileUploadControl.cpp:
2360         (WebCore::RenderFileUploadControl::RenderFileUploadControl):
2361
2362 2009-11-08  Daniel Bates  <dbates@webkit.org>
2363
2364         Reviewed by Adam Barth.
2365
2366         https://bugs.webkit.org/show_bug.cgi?id=31098
2367
2368         Allows same-origin plugin-based content to load.
2369
2370         Test: http/tests/security/xssAuditor/object-src-inject.html
2371
2372         * page/XSSAuditor.cpp:
2373         (WebCore::XSSAuditor::canLoadExternalScriptFromSrc): Modified to call XSSAuditor::isSameOriginResource.
2374         (WebCore::XSSAuditor::canLoadObject): Ditto.
2375         (WebCore::XSSAuditor::canSetBaseElementURL): Ditto. 
2376         (WebCore::XSSAuditor::isSameOriginResource): Added.
2377         * page/XSSAuditor.h:
2378
2379 2009-11-08  David Levin  <levin@chromium.org>
2380
2381         Reviewed by NOBODY (chromium build fix).
2382
2383         * platform/network/HTTPParsers.cpp:
2384         (WebCore::parseDate): Changed this to not
2385         use a date parser that needs ExecState passed.
2386         
2387 2009-11-08  David Levin  <levin@chromium.org>
2388
2389         Unreviewed build fix for chromium.
2390
2391         * platform/graphics/skia/GraphicsContextSkia.cpp:
2392         (WebCore::GraphicsContext::fillPath):
2393         (WebCore::GraphicsContext::fillRect):
2394         (WebCore::GraphicsContext::strokePath):
2395         (WebCore::GraphicsContext::strokeRect):
2396
2397 2009-11-08  David Levin  <levin@chromium.org>
2398
2399         Unreviewed build fix for chromium.
2400
2401         Build fix for https://bugs.webkit.org/show_bug.cgi?id=31219
2402         Clean up GraphicsContext's current concept of ColorSpace
2403
2404         * platform/graphics/skia/GraphicsContextSkia.cpp:
2405         (WebCore::GraphicsContext::fillPath):
2406         (WebCore::GraphicsContext::fillRect):
2407         (WebCore::GraphicsContext::strokePath):
2408         (WebCore::GraphicsContext::strokeRect):
2409
2410 2009-11-08  Pavel Feldman  <pfeldman@chromium.org>
2411
2412         Reviewed by Timothy Hatcher.
2413
2414         Web Inspector: [REGRESSION] committing style edit
2415         clears elements panel selection.
2416
2417         https://bugs.webkit.org/show_bug.cgi?id=31242
2418
2419         * inspector/front-end/ElementsTreeOutline.js:
2420         (WebInspector.ElementsTreeOutline.prototype.update):
2421         * inspector/front-end/StylesSidebarPane.js:
2422         (WebInspector.StylePropertyTreeElement.prototype.):
2423         (WebInspector.StylePropertyTreeElement.prototype):
2424
2425 2009-11-08  Janne Koskinen  <janne.p.koskinen@digia.com>
2426
2427         Reviewed by Holger Freyther.
2428
2429         ResourceRequest to be class instead of struct
2430         https://bugs.webkit.org/show_bug.cgi?id=30670
2431
2432         Started as a compilation fix for Symbian where the compiler makes a distinction between
2433         class and struct in function argument signatures.
2434         Changed all forward declarations of ResourceRequest to have class in the forward
2435         declaration instead of struct and changed the definition of ResourceRequest to be class
2436         and added access qualifiers where missing. Additionally two references of friend
2437         struct ResourceRequestBase changed to class instead.
2438
2439         * history/HistoryItem.h:
2440         * inspector/InspectorController.h:
2441         * inspector/InspectorResource.h:
2442         * loader/DocumentThreadableLoader.h:
2443         * loader/FrameLoaderClient.h:
2444         * loader/MainResourceLoader.h:
2445         * loader/ResourceLoadNotifier.h:
2446         * loader/SubresourceLoader.h:
2447         * loader/SubresourceLoaderClient.h:
2448         * loader/ThreadableLoader.h:
2449         * loader/WorkerThreadableLoader.h:
2450         * loader/appcache/ApplicationCache.h:
2451         * loader/appcache/ApplicationCacheHost.h:
2452         * platform/CrossThreadCopier.h:
2453         * platform/network/ResourceHandle.h:
2454         * platform/network/ResourceHandleClient.h:
2455         * platform/network/ResourceRequestBase.h:
2456         * platform/network/cf/ResourceRequest.h:
2457         * platform/network/cf/ResourceRequestCFNet.h:
2458         * platform/network/chromium/ResourceRequest.h:
2459         * platform/network/curl/ResourceRequest.h:
2460         * platform/network/qt/ResourceRequest.h:
2461         * platform/network/soup/ResourceRequest.h:
2462         * xml/XMLHttpRequest.h:
2463
2464 2009-11-08  Dan Bernstein  <mitz@apple.com>
2465
2466         Reviewed by Simon Fraser.
2467
2468         <rdar://problem/7363434> Crash inside RenderObject::localToAbsolute
2469         below FrameView::layout
2470         https://bugs.webkit.org/show_bug.cgi?id=31093
2471
2472         Test: fast/block/positioning/relative-positioned-inline-container.html
2473
2474         In <http://trac.webkit.org/changeset/19148>, setStaticY() was changed
2475         to mark the object for layout, doing so without marking its ancestors.
2476         However, RenderBlock::skipLeadingWhitespace and
2477         RenderBlock::skipTrailingWhitespace() call setStaticY() on a relative-
2478         positioned inline container, causing it to be marked for layout without
2479         ever going back to give it layout, and thus layout could end with a
2480         dirty object still in the tree, leading to all sorts of badness.
2481
2482         The fix is to revert setStaticY() to not marking the object dirty, and
2483         instead do it in the call sites that require it, which are in
2484         RenderBlock and RenderFlexibleBox.
2485
2486         * rendering/RenderBlock.cpp:
2487         (WebCore::RenderBlock::adjustPositionedBlock):
2488         * rendering/RenderFlexibleBox.cpp:
2489         (WebCore::RenderFlexibleBox::layoutHorizontalBox):
2490         (WebCore::RenderFlexibleBox::layoutVerticalBox):
2491         * rendering/RenderLayer.cpp:
2492         * rendering/RenderLayer.h:
2493         (WebCore::RenderLayer::setStaticY):
2494
2495 2009-11-07  Daniel Bates  <dbates@webkit.org>
2496
2497         Reviewed by Darin Adler.
2498
2499         https://bugs.webkit.org/show_bug.cgi?id=20780
2500         
2501         Fixes an issue where the onchange event handler is not fired when the 
2502         input field is autocompleted.
2503         
2504         We cannot test this using DRT since DRT cannot emulate autocompletion.
2505         So, a manual-test is included.
2506
2507         Tests: manual-tests/autocompletion-fire-onchange.html
2508
2509         * manual-tests/autocompletion-fire-onchange.html: Added.
2510         * rendering/RenderTextControl.cpp:
2511         (WebCore::RenderTextControl::setInnerTextValue):
2512
2513 2009-11-07  Benjamin Otte  <otte@gnome.org>
2514
2515         Reviewed by Holger Freyther.
2516
2517         Mark redrawn areas on image surfaces as dirty.
2518
2519         This is required to conform to the Cairo API, but is currently only
2520         used by debugging tools like cairo-trace.
2521
2522         * platform/graphics/cairo/ImageBufferCairo.cpp:
2523         (WebCore::ImageBuffer::platformTransformColorSpace):
2524         (WebCore::putImageData):
2525
2526 2009-11-07  Joanmarie Diggs  <joanmarie.diggs@gmail.com>
2527
2528         Reviewed by Xan Lopez.
2529
2530         https://bugs.webkit.org/show_bug.cgi?id=30878
2531         [Gtk] atk_text_get_text() fails in entries when the end_offset is -1
2532
2533         If the end_offset is -1, use the String length as the end_offset.
2534
2535         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
2536         (webkit_accessible_text_get_text):
2537
2538 2009-11-06  Beth Dakin  <bdakin@apple.com>
2539
2540         Reviewed by Adele Peterson.
2541
2542         Fix for https://bugs.webkit.org/show_bug.cgi?id=31219 Clean up 
2543         GraphicsContext's current concept of ColorSpace
2544
2545         ColorSpace is now called ColorType. The variables on the state we 
2546         appropriately re-named as well. I removed strokeColorSpace() and 
2547         fillColorSpace() from GraphicsContext since they were never called. 
2548
2549         * platform/graphics/GraphicsContext.cpp:
2550         (WebCore::GraphicsContext::setStrokeColor):
2551         (WebCore::GraphicsContext::setFillColor):
2552         (WebCore::GraphicsContext::setStrokePattern):
2553         (WebCore::GraphicsContext::setFillPattern):
2554         (WebCore::GraphicsContext::setStrokeGradient):
2555         (WebCore::GraphicsContext::setFillGradient):
2556         * platform/graphics/GraphicsContext.h:
2557         (WebCore::):
2558         * platform/graphics/GraphicsContextPrivate.h:
2559         (WebCore::GraphicsContextState::GraphicsContextState):
2560         * platform/graphics/cairo/GraphicsContextCairo.cpp:
2561         (WebCore::GraphicsContext::fillPath):
2562         (WebCore::GraphicsContext::strokePath):
2563         * platform/graphics/cg/GraphicsContextCG.cpp:
2564         (WebCore::calculateDrawingMode):
2565         (WebCore::GraphicsContext::drawPath):
2566         (WebCore::GraphicsContext::fillPath):
2567         (WebCore::GraphicsContext::strokePath):
2568         (WebCore::GraphicsContext::fillRect):
2569         (WebCore::GraphicsContext::strokeRect):
2570         * platform/graphics/qt/GraphicsContextQt.cpp:
2571         (WebCore::GraphicsContext::fillPath):
2572         (WebCore::GraphicsContext::strokePath):
2573         (WebCore::GraphicsContext::fillRect):
2574         * platform/graphics/wince/GraphicsContextWince.cpp:
2575         (WebCore::GraphicsContext::fillPath):
2576         (WebCore::GraphicsContext::fillRect):
2577
2578 2009-11-06  Brian Weinstein  <bweinstein@apple.com>
2579
2580         Reviewed by Tim Hatcher.
2581
2582         Fixes <http://webkit.org/b/31177>.
2583         Web Inspector: Bind backspace to delete cookies and DOM Storage.
2584         
2585         Refactor editing code from DOMStorageDataGrid to DataGrid, so other
2586         places in the inspector can use editing in DataGrid (added a FIXME for
2587         some stuff that needs to be generalized).
2588         
2589         Also added deleting functionality to DataGrid, and implemented it for
2590         Cookies and DOM Storage. The reason this patch is so big is because of
2591         the refactoring of editing code, which won't be used yet in a cross-datagrid
2592         way, but should be able to.
2593         
2594         Additionally, moved the callbacks members from DOMStorageDataGrid to
2595         DOMStorageItemsView, which allowed us to delete DOMStorageDataGrid, to 
2596         make the architecture of DOM Storage look a lot more like the Cookies view.
2597         
2598         Lastly, added a preventDefault call in ElementsTreeOutline to prevent the 
2599         inspector from beeping at you when you delete an element.
2600
2601         * WebCore.gypi: Removed DOMStorageDataGrid.
2602         * WebCore.vcproj/WebCore.vcproj: Removed DOMStorageDataGrid.
2603         * inspector/front-end/CookieItemsView.js:
2604         (WebInspector.CookieItemsView.prototype.dataGridForCookies):
2605         (WebInspector.CookieItemsView.prototype._deleteButtonClicked):
2606         (WebInspector.CookieItemsView.prototype._deleteCookieCallback):
2607         * inspector/front-end/DOMStorageDataGrid.js: Removed.
2608         * inspector/front-end/DOMStorageItemsView.js:
2609         (WebInspector.DOMStorageItemsView.prototype._dataGridForDOMStorageEntries):
2610         (WebInspector.DOMStorageItemsView.prototype._deleteButtonClicked):
2611         (WebInspector.DOMStorageItemsView.prototype._refreshButtonClicked):
2612         (WebInspector.DOMStorageItemsView.prototype._editingCallback):
2613         (WebInspector.DOMStorageItemsView.prototype.deleteSelectedRow):
2614         (WebInspector.DOMStorageItemsView.prototype._deleteCallback):
2615         * inspector/front-end/DataGrid.js:
2616         (WebInspector.DataGrid):
2617         (WebInspector.DataGrid.prototype._ondblclick): Moved from DOMStorageDataGrid to DataGrid + Refactoring.
2618         (WebInspector.DataGrid.prototype._startEditingColumnOfDataGridNode): Ditto.
2619         (WebInspector.DataGrid.prototype._startEditing): Ditto.
2620         (WebInspector.DataGrid.prototype._editingCommitted.moveToNextIfNeeded): Ditto.
2621         (WebInspector.DataGrid.prototype._editingCommitted): Ditto.
2622         (WebInspector.DataGrid.prototype._editingCancelled): Ditto.
2623         (WebInspector.DataGrid.prototype.handleKeyEvent): Added case for delete/backspace.
2624         * inspector/front-end/ElementsTreeOutline.js:
2625         (WebInspector.ElementsTreeOutline.prototype.handleKeyEvent): Added preventDefault call.
2626         * inspector/front-end/WebKit.qrc: Removed DOMStorageDataGrid.
2627         * inspector/front-end/inspector.html: Removed DOMStorageDataGrid.
2628
2629 2009-11-06  Geoffrey Garen  <ggaren@apple.com>
2630
2631         Qt build fix: added an ExecState parameter.
2632
2633         * bridge/qt/qt_runtime.cpp:
2634         (JSC::Bindings::convertValueToQVariant):
2635         (JSC::Bindings::convertQVariantToValue):
2636
2637 2009-11-06  Geoffrey Garen  <ggaren@apple.com>
2638
2639         https://bugs.webkit.org/show_bug.cgi?id=31197
2640         Implemented a timezone cache not based on Mac OS X's notify_check API.
2641
2642         Updated for JavaScriptCore internal API change.
2643
2644         * bridge/qt/qt_runtime.cpp:
2645         (JSC::Bindings::convertValueToQVariant):
2646         (JSC::Bindings::convertQVariantToValue): Updated for namespace change.
2647
2648         * platform/network/HTTPParsers.cpp:
2649         (WebCore::parseDate): Pass 0 for ExecState, since we don't have one.
2650         (This function probably shouldn't be using a JavaScript date parser
2651         to begin with, but oh well.)
2652
2653 2009-11-06  Anantanarayanan G Iyengar  <ananta@chromium.org>
2654
2655         Reviewed by Adam Barth.
2656
2657         The associated webkit bug is https://bugs.webkit.org/show_bug.cgi?id=31067,
2658         which affects Chromium only.
2659         
2660         Changes to V8HTMLDocumentCustom.cpp are as below:-
2661         1. The HTMLDocumentOpen function would cause a crash in Chromium if
2662            there was no calling javascript context. We now check for this case
2663            and pass in NULL to the HTMLDocument::open function which can handle
2664            a NULL document parameter.
2665         2. The other functions like HTMLDocumentWrite, HTMLDocumentWriteln, etc
2666            had ASSERTS for a NULL caller frame, which was bogus as it would crash
2667            anyway. We now check for this case and return a failure.
2668            
2669         Changes to V8DOMWindowCustom.cpp are as below:-
2670         1. Instead of failing the window.open call made by NPAPI for lack of a
2671            calling javascript context, we now use the entered context as the calling
2672            context.
2673
2674         Tests: plugins/document-open.html
2675                plugins/window-open.html
2676
2677         * bindings/v8/custom/V8DOMWindowCustom.cpp:
2678         (WebCore::CALLBACK_FUNC_DECL):
2679         * bindings/v8/custom/V8HTMLDocumentCustom.cpp:
2680         (WebCore::CALLBACK_FUNC_DECL):
2681
2682 2009-11-06  Steve Block  <steveblock@google.com>
2683
2684         Reviewed by Eric Seidel.
2685
2686         Geolocation error code UNKNOWN_ERROR is deprecated.
2687         https://bugs.webkit.org/show_bug.cgi?id=31184
2688
2689         Remove this error code from PositionError, both for use from C++ code and from the JS object.
2690
2691         Updated fast/dom/Geolocation/error.html to test this.
2692
2693         * page/PositionError.h: Modified.
2694         (WebCore::PositionError::): Remove ErrorCode::UNKNOWN_ERROR.
2695         * page/PositionError.idl: Modified. Remove UNKNOWN_ERROR constant.
2696         * page/Geolocation.cpp: Modified.
2697         (WebCore::Geolocation::startRequest): Replace UNKNOWN_ERROR with POSITION_UNAVAILABLE.
2698         * platform/gtk/GeolocationServiceGtk.cpp: Modified.
2699         (WebCore::GeolocationServiceGtk::startUpdating): Replace UNKNOWN_ERROR with POSITION_UNAVAILABLE.
2700
2701 2009-11-06  Dirk Schulze  <krit@webkit.org>
2702
2703         Reviewed by Nikolas Zimmermann.
2704
2705         feMorphology filter is not implemented
2706         [https://bugs.webkit.org/show_bug.cgi?id=5863]
2707
2708         The Implementation of feMorphology.
2709         
2710         Test: We have allready a test for feMorphology
2711               svg/W3C-SVG-1.1/filters-morph-01-f.svg
2712
2713         * svg/graphics/filters/SVGFEMorphology.cpp:
2714         (WebCore::FEMorphology::apply):
2715
2716 2009-11-06  Steve Block  <steveblock@google.com>
2717
2718         Reviewed by Eric Seidel.
2719
2720         V8DOMWindowCustom.cpp is missing WEB_SOCKETS guard on include.
2721         https://bugs.webkit.org/show_bug.cgi?id=31209
2722
2723         Build fix only. No new tests possible.
2724
2725         * bindings/v8/custom/V8DOMWindowCustom.cpp: Modified. Added WEB_SOCKETS guard on inclue of WebSockets.h.
2726
2727 2009-11-06  Drew Wilson  <atwilson@chromium.org>
2728
2729         Reviewed by David Levin.
2730
2731         V8 bindings do not support SharedWorkers as event targets
2732         https://bugs.webkit.org/show_bug.cgi?id=31199
2733
2734         No new tests because existing layout tests suffice (they currently
2735         crash on Chromium)
2736
2737         * bindings/v8/V8DOMWrapper.cpp:
2738         (WebCore::V8DOMWrapper::convertEventTargetToV8Object):
2739         Added clause to create a DOM wrapper for SharedWorkers.
2740
2741 2009-11-06  Anton Muhin  <antonm@chromium.org>
2742
2743         Reviewed by Adam Barth.
2744
2745         Do not unnecessarly synchronzie in weak reference callbacks.
2746         https://bugs.webkit.org/show_bug.cgi?id=31191
2747
2748         * bindings/v8/DOMData.h:
2749         (WebCore::DOMData::handleWeakObject):
2750
2751 2009-11-06  Alexander Pavlov  <apavlov@chromium.org>
2752
2753         Reviewed by Pavel Feldman.
2754
2755         Fix resource content search.
2756         https://bugs.webkit.org/show_bug.cgi?id=31202
2757
2758         * inspector/front-end/AbstractTimelinePanel.js:
2759         (WebInspector.AbstractTimelinePanel.prototype.refresh):
2760         (WebInspector.AbstractTimelinePanel.prototype.removeItem):
2761         * inspector/front-end/TimelinePanel.js:
2762         (WebInspector.TimelineGraph.prototype.refresh):
2763
2764 2009-11-05  Yuta Kitamura  <yutak@chromium.org>
2765
2766         Reviewed by Eric Seidel.
2767
2768         Fix ASSERT(currentStyle = renderStyle()).
2769         https://bugs.webkit.org/show_bug.cgi?id=31152
2770
2771         * dom/Element.cpp:
2772         (WebCore::Element::pseudoStyleCacheIsInvalid): We should have used "==" instead of "=".
2773
2774 2009-11-05  Alpha Lam  <hclam@chromium.org>
2775
2776         Revert 50562 because it broke Chromium. Not reviewed since this is a build fix and revert.
2777
2778         * bindings/v8/V8GCController.cpp:
2779         (WebCore::V8GCController::gcEpilogue):
2780         * bindings/v8/V8GCController.h:
2781         * bindings/v8/V8Proxy.cpp:
2782         (WebCore::V8Proxy::evaluate):
2783         (WebCore::V8Proxy::runScript):
2784         (WebCore::V8Proxy::callFunction):
2785
2786 2009-11-05  Adam Barth  <abarth@webkit.org>
2787
2788         Reviewed by Sam Weinig.
2789
2790         Cross-domain access to stylesheet text should not be allowed
2791         https://bugs.webkit.org/show_bug.cgi?id=20527
2792
2793         Check whether whether the current document can read the cssRules from
2794         the style sheet.  Firefox throws a security error here, but we return
2795         null instead because that's what we usually do in these cases.
2796
2797         Test: http/tests/security/cannot-read-cssrules-redirect.html
2798               http/tests/security/cannot-read-cssrules.html
2799
2800         * css/CSSStyleSheet.cpp:
2801         (WebCore::CSSStyleSheet::cssRules):
2802
2803 2009-11-05  Steve Block  <steveblock@google.com>
2804
2805         Reviewed by Eric Seidel.
2806
2807         If the Geolocation service fails to start, invoke the error callback asynchronously.
2808         https://bugs.webkit.org/show_bug.cgi?id=28276
2809
2810         All Geolocation callbacks must be invoked asynchronously.
2811         See http://www.w3.org/TR/geolocation-API/#geolocation_interface
2812
2813         No new tests possible with current LayoutTestController.
2814
2815         * page/Geolocation.cpp:
2816         (WebCore::Geolocation::getCurrentPosition): Modified. Asserts that startRequest returned a notifier.
2817         (WebCore::Geolocation::watchPosition): Modified. Asserts that startRequest returned a notifier.
2818         (WebCore::Geolocation::startRequest): Modified. If the Geolocation service fails to start, set a fatal error on the notifier.
2819
2820 2009-11-05  Chris Jerdonek  <chris.jerdonek@gmail.com>
2821
2822         Reviewed by Eric Seidel.
2823
2824         Removed the "this is part of the KDE project" comments from 
2825         all *.h, *.cpp, *.idl, and *.pm files.
2826         
2827         https://bugs.webkit.org/show_bug.cgi?id=31167
2828         
2829         The maintenance and architecture page in the project wiki lists
2830         this as a task.
2831         
2832         This change includes no changes or additions to test cases 
2833         since the change affects only comments.
2834
2835         * bindings/scripts/CodeGeneratorV8.pm:
2836         * bindings/scripts/IDLParser.pm:
2837         * bindings/scripts/IDLStructure.pm:
2838         * css/CSSInheritedValue.cpp:
2839         * css/CSSInitialValue.cpp:
2840         * css/CSSMediaRule.cpp:
2841         * css/CSSNamespace.h:
2842         * css/CSSProperty.cpp:
2843         * css/CSSProperty.h:
2844         * css/CSSRuleList.cpp:
2845         * css/CSSRuleList.h:
2846         * css/CSSSelector.h:
2847         * css/CSSValueList.cpp:
2848         * css/FontValue.cpp:
2849         * css/MediaFeatureNames.cpp:
2850         * css/MediaFeatureNames.h:
2851         * css/Pair.h:
2852         * css/SVGCSSStyleSelector.cpp:
2853         * css/ShadowValue.cpp:
2854         * css/StyleSheet.cpp:
2855         * css/StyleSheetList.cpp:
2856         * css/maketokenizer:
2857         * dom/BeforeUnloadEvent.cpp:
2858         * dom/BeforeUnloadEvent.h:
2859         * dom/CSSMappedAttributeDeclaration.cpp:
2860         * dom/EventNames.cpp:
2861         * dom/EventTarget.cpp:
2862         * dom/MappedAttributeEntry.h:
2863         * dom/MouseRelatedEvent.h:
2864         * dom/RangeException.h:
2865         * dom/StyleElement.h:
2866         * dom/Tokenizer.h:
2867         * html/HTMLHeadElement.h:
2868         * html/HTMLHeadingElement.cpp:
2869         * html/HTMLHeadingElement.h:
2870         * html/HTMLHtmlElement.h:
2871         * html/HTMLImageLoader.h:
2872         * html/HTMLMetaElement.h:
2873         * html/HTMLModElement.cpp:
2874         * html/HTMLModElement.h:
2875         * html/HTMLOptionsCollection.cpp:
2876         * html/HTMLPlugInElement.cpp:
2877         * html/HTMLPreElement.cpp:
2878         * html/HTMLPreElement.h:
2879         * html/HTMLTableCellElement.cpp:
2880         * html/HTMLTableCellElement.h:
2881         * html/HTMLTableColElement.cpp:
2882         * html/HTMLTableColElement.h:
2883         * html/HTMLTablePartElement.cpp:
2884         * html/HTMLTablePartElement.h:
2885         * html/HTMLTitleElement.h:
2886         * page/MouseEventWithHitTestResults.h:
2887         * platform/StaticConstructors.h:
2888         * platform/text/AtomicStringImpl.h:
2889         * platform/text/qt/TextBreakIteratorQt.cpp:
2890         * rendering/AutoTableLayout.h:
2891         * rendering/CounterNode.cpp:
2892         * rendering/EllipsisBox.cpp:
2893         * rendering/EllipsisBox.h:
2894         * rendering/FixedTableLayout.cpp:
2895         * rendering/FixedTableLayout.h:
2896         * rendering/HitTestRequest.h:
2897         * rendering/HitTestResult.h:
2898         * rendering/InlineRunBox.h:
2899         * rendering/PointerEventsHitRules.cpp:
2900         * rendering/PointerEventsHitRules.h:
2901         * rendering/RenderBR.cpp:
2902         * rendering/RenderBR.h:
2903         * rendering/RenderButton.cpp:
2904         * rendering/RenderButton.h:
2905         * rendering/RenderFieldset.cpp:
2906         * rendering/RenderFrameSet.cpp:
2907         * rendering/RenderListItem.cpp:
2908         * rendering/RenderTableRow.cpp:
2909         * rendering/RenderView.h:
2910         * rendering/RootInlineBox.h:
2911         * rendering/SVGInlineTextBox.cpp:
2912         * rendering/SVGInlineTextBox.h:
2913         * rendering/TableLayout.h:
2914         * rendering/break_lines.h:
2915         * rendering/style/SVGRenderStyle.cpp:
2916         * rendering/style/SVGRenderStyle.h:
2917         * rendering/style/SVGRenderStyleDefs.cpp:
2918         * rendering/style/SVGRenderStyleDefs.h:
2919         * svg/GradientAttributes.h:
2920         * svg/LinearGradientAttributes.h:
2921         * svg/PatternAttributes.h:
2922         * svg/RadialGradientAttributes.h:
2923         * svg/SVGAElement.cpp:
2924         * svg/SVGAngle.idl:
2925         * svg/SVGAnimateColorElement.cpp:
2926         * svg/SVGAnimateColorElement.h:
2927         * svg/SVGAnimateElement.cpp:
2928         * svg/SVGAnimateElement.h:
2929         * svg/SVGAnimateTransformElement.h:
2930         * svg/SVGAnimatedPathData.cpp:
2931         * svg/SVGAnimatedPathData.h:
2932         * svg/SVGAnimatedPoints.cpp:
2933         * svg/SVGAnimatedPoints.h:
2934         * svg/SVGAnimationElement.cpp:
2935         * svg/SVGCircleElement.cpp:
2936         * svg/SVGClipPathElement.cpp:
2937         * svg/SVGColor.cpp:
2938         * svg/SVGColor.idl:
2939         * svg/SVGComponentTransferFunctionElement.cpp:
2940         * svg/SVGComponentTransferFunctionElement.h:
2941         * svg/SVGCursorElement.cpp:
2942         * svg/SVGDefsElement.cpp:
2943         * svg/SVGDescElement.cpp:
2944         * svg/SVGDescElement.h:
2945         * svg/SVGDocument.idl:
2946         * svg/SVGElement.idl:
2947         * svg/SVGElementInstanceList.cpp:
2948         * svg/SVGElementInstanceList.h:
2949         * svg/SVGEllipseElement.cpp:
2950         * svg/SVGExternalResourcesRequired.cpp:
2951         * svg/SVGFEBlendElement.cpp:
2952         * svg/SVGFEBlendElement.h:
2953         * svg/SVGFEColorMatrixElement.cpp:
2954         * svg/SVGFEColorMatrixElement.h:
2955         * svg/SVGFEComponentTransferElement.cpp:
2956         * svg/SVGFEComponentTransferElement.h:
2957         * svg/SVGFECompositeElement.cpp:
2958         * svg/SVGFECompositeElement.h:
2959         * svg/SVGFEFloodElement.cpp:
2960         * svg/SVGFEFloodElement.h:
2961         * svg/SVGFEFuncAElement.cpp:
2962         * svg/SVGFEFuncAElement.h:
2963         * svg/SVGFEFuncBElement.cpp:
2964         * svg/SVGFEFuncBElement.h:
2965         * svg/SVGFEFuncGElement.cpp:
2966         * svg/SVGFEFuncGElement.h:
2967         * svg/SVGFEFuncRElement.cpp:
2968         * svg/SVGFEFuncRElement.h:
2969         * svg/SVGFEGaussianBlurElement.cpp:
2970         * svg/SVGFEGaussianBlurElement.h:
2971         * svg/SVGFEImageElement.cpp:
2972         * svg/SVGFEMergeElement.cpp:
2973         * svg/SVGFEMergeElement.h:
2974         * svg/SVGFEMergeNodeElement.cpp:
2975         * svg/SVGFEOffsetElement.cpp:
2976         * svg/SVGFEOffsetElement.h:
2977         * svg/SVGFETileElement.cpp:
2978         * svg/SVGFETileElement.h:
2979         * svg/SVGFETurbulenceElement.cpp:
2980         * svg/SVGFETurbulenceElement.h:
2981         * svg/SVGFilterElement.cpp:
2982         * svg/SVGGElement.cpp:
2983         * svg/SVGGradientElement.cpp:
2984         * svg/SVGHKernElement.idl:
2985         * svg/SVGLangSpace.cpp:
2986         * svg/SVGLangSpace.h:
2987         * svg/SVGLength.cpp:
2988         * svg/SVGLength.h:
2989         * svg/SVGLength.idl:
2990         * svg/SVGLengthList.cpp:
2991         * svg/SVGLengthList.h:
2992         * svg/SVGLineElement.cpp:
2993         * svg/SVGLinearGradientElement.h:
2994         * svg/SVGList.h:
2995         * svg/SVGListTraits.h:
2996         * svg/SVGLocatable.h:
2997         * svg/SVGMaskElement.cpp:
2998         * svg/SVGMatrix.idl:
2999         * svg/SVGMetadataElement.cpp:
3000         * svg/SVGMetadataElement.h:
3001         * svg/SVGMetadataElement.idl:
3002         * svg/SVGNumber.idl:
3003         * svg/SVGNumberList.cpp:
3004         * svg/SVGNumberList.h:
3005         * svg/SVGPaint.cpp:
3006         * svg/SVGPathElement.cpp:
3007         * svg/SVGPathSeg.h:
3008         * svg/SVGPathSegArc.cpp:
3009         * svg/SVGPathSegArc.h:
3010         * svg/SVGPathSegClosePath.cpp:
3011         * svg/SVGPathSegClosePath.h:
3012         * svg/SVGPathSegCurvetoCubic.cpp:
3013         * svg/SVGPathSegCurvetoCubic.h:
3014         * svg/SVGPathSegCurvetoCubicSmooth.cpp:
3015         * svg/SVGPathSegCurvetoCubicSmooth.h:
3016         * svg/SVGPathSegCurvetoQuadratic.cpp:
3017         * svg/SVGPathSegCurvetoQuadratic.h:
3018         * svg/SVGPathSegCurvetoQuadraticSmooth.cpp:
3019         * svg/SVGPathSegCurvetoQuadraticSmooth.h:
3020         * svg/SVGPathSegLineto.cpp:
3021         * svg/SVGPathSegLineto.h:
3022         * svg/SVGPathSegLinetoHorizontal.cpp:
3023         * svg/SVGPathSegLinetoHorizontal.h:
3024         * svg/SVGPathSegLinetoVertical.cpp:
3025         * svg/SVGPathSegLinetoVertical.h:
3026         * svg/SVGPathSegMoveto.cpp:
3027         * svg/SVGPathSegMoveto.h:
3028         * svg/SVGPatternElement.cpp:
3029         * svg/SVGPoint.idl:
3030         * svg/SVGPointList.cpp:
3031         * svg/SVGPointList.h:
3032         * svg/SVGPolyElement.cpp:
3033         * svg/SVGPolygonElement.cpp:
3034         * svg/SVGPolygonElement.h:
3035         * svg/SVGPolylineElement.cpp:
3036         * svg/SVGPolylineElement.h:
3037         * svg/SVGPreserveAspectRatio.cpp:
3038         * svg/SVGPreserveAspectRatio.h:
3039         * svg/SVGRadialGradientElement.h:
3040         * svg/SVGRect.idl:
3041         * svg/SVGRectElement.cpp:
3042         * svg/SVGRenderingIntent.h:
3043         * svg/SVGSVGElement.idl:
3044         * svg/SVGScriptElement.cpp:
3045         * svg/SVGSetElement.cpp:
3046         * svg/SVGSetElement.h:
3047         * svg/SVGStopElement.cpp:
3048         * svg/SVGStringList.cpp:
3049         * svg/SVGStringList.h:
3050         * svg/SVGStylable.cpp:
3051         * svg/SVGStylable.h:
3052         * svg/SVGStyleElement.cpp:
3053         * svg/SVGStyleElement.h:
3054         * svg/SVGStyledElement.h:
3055         * svg/SVGStyledLocatableElement.cpp:
3056         * svg/SVGStyledLocatableElement.h:
3057         * svg/SVGStyledTransformableElement.cpp:
3058         * svg/SVGStyledTransformableElement.h:
3059         * svg/SVGSwitchElement.cpp:
3060         * svg/SVGSymbolElement.cpp:
3061         * svg/SVGTRefElement.cpp:
3062         * svg/SVGTSpanElement.cpp:
3063         * svg/SVGTSpanElement.h:
3064         * svg/SVGTests.h:
3065         * svg/SVGTextElement.cpp:
3066         * svg/SVGTextElement.h:
3067         * svg/SVGTextPathElement.cpp:
3068         * svg/SVGTextPositioningElement.cpp:
3069         * svg/SVGTextPositioningElement.h:
3070         * svg/SVGTitleElement.cpp:
3071         * svg/SVGTitleElement.h:
3072         * svg/SVGTransform.cpp:
3073         * svg/SVGTransform.h:
3074         * svg/SVGTransform.idl:
3075         * svg/SVGTransformList.cpp:
3076         * svg/SVGTransformList.h:
3077         * svg/SVGTransformable.h:
3078         * svg/SVGURIReference.h:
3079         * svg/SVGUnitTypes.h:
3080         * svg/SVGUseElement.cpp:
3081         * svg/SVGViewElement.cpp:
3082         * svg/SVGZoomAndPan.cpp:
3083         * svg/SVGZoomAndPan.h:
3084         * svg/SVGZoomEvent.cpp:
3085
3086 2009-11-05  Jeremy Orlow  <jorlow@chromium.org>
3087
3088         Reviewed by Dimitri Glazkov.
3089
3090         REGRESSION Clean up security origin usage in DOM Storage.
3091         https://bugs.webkit.org/show_bug.cgi?id=31188
3092
3093         Clean up security origin usage in DOM Storage.  This fixes a bug in my
3094         refactoring here: https://bugs.webkit.org/show_bug.cgi?id=31149
3095
3096         Instead of having StorageAreaSync's constructor (which is called in the
3097         constructor for StorageAreaImpl) calling a method on StoargeAreaImpl to get the
3098         database identifier, simply have StorageAreaImpl pass the identifier into
3099         StorageAreaSync.
3100
3101         No test because there's no change in externally observable behavior.
3102
3103         * storage/StorageAreaImpl.cpp:
3104         (WebCore::StorageAreaImpl::StorageAreaImpl):
3105         * storage/StorageAreaImpl.h:
3106         * storage/StorageAreaSync.cpp:
3107         (WebCore::StorageAreaSync::create):
3108         (WebCore::StorageAreaSync::StorageAreaSync):
3109         * storage/StorageAreaSync.h:
3110
3111 2009-11-05  Scott Violet  <sky@google.com>
3112
3113         Reviewed by Dimitri Glazkov.
3114
3115         Need notification of scrolling frame
3116         https://bugs.webkit.org/show_bug.cgi?id=31145
3117
3118         Adds FrameLoaderClient::didChangeScrollOffset that is called when
3119         the frame scrolls. This will be used to know when history state
3120         needs to be updated.
3121
3122         * loader/FrameLoaderClient.h:
3123         (WebCore::FrameLoaderClient::didChangeScrollOffset):
3124         * page/FrameView.cpp:
3125         (WebCore::FrameView::valueChanged):
3126
3127 2009-11-05  Kenneth Russell  <kbr@google.com>
3128
3129         Reviewed by Dimitri Glazkov.
3130
3131         [V8] Update bindings to use new API for external arrays
3132         https://bugs.webkit.org/show_bug.cgi?id=31181
3133
3134         No new tests; covered by existing WebGL tests.
3135
3136         * bindings/v8/V8DOMWrapper.cpp:
3137         (WebCore::V8DOMWrapper::setIndexedPropertiesToExternalArray):
3138         (WebCore::V8DOMWrapper::getTemplate):
3139         (WebCore::V8DOMWrapper::convertToV8Object):
3140         * bindings/v8/V8DOMWrapper.h:
3141         * bindings/v8/custom/V8CanvasArrayCustom.h:
3142         (WebCore::constructCanvasArray):
3143
3144 2009-11-05  Alpha Lam  <hclam@chromium.org>
3145
3146         Not reviewed, Chromium build fix.
3147
3148         50561 introduces a custom method for SVGMatrix, we need to implement
3149         this in V8.
3150
3151         * bindings/v8/custom/V8CustomBinding.h:
3152         Adding definition for V8SVGMatrixMultiply.
3153         * bindings/v8/custom/V8SVGMatrixCustom.cpp:
3154         (WebCore::CALLBACK_FUNC_DECL):
3155         Implement V8SVGMatrixMultiply according to the same method in JSC.
3156
3157 2009-11-05  Jeremy Orlow  <jorlow@chromium.org>
3158
3159         Revert 50569 since it broke QT.  Build fix and just a revert, so no review.
3160
3161         * page/DOMWindow.cpp:
3162         (WebCore::DOMWindow::sessionStorage):
3163         * page/Settings.cpp:
3164         (WebCore::Settings::Settings):
3165         (WebCore::Settings::setSessionStorageEnabled):
3166         * page/Settings.h:
3167         (WebCore::Settings::sessionStorageEnabled):
3168
3169 2009-11-05  Pavel Feldman  <pfeldman@chromium.org>
3170
3171         Reviewed by Timothy Hatcher.
3172
3173         REGRESSION: Web Inspector doesn't show CSS rules properly for iframes
3174
3175         https://bugs.webkit.org/show_bug.cgi?id=30884
3176
3177         Test: inspector/styles-iframe.html
3178
3179         * inspector/front-end/DOMAgent.js:
3180         (WebInspector.DOMNode):
3181         * inspector/front-end/InjectedScript.js:
3182         (InjectedScript.getStyles):
3183         (InjectedScript.getComputedStyle):
3184         (InjectedScript.addStyleSelector):
3185         * inspector/front-end/TestController.js:
3186         (WebInspector.TestController.prototype.notifyDone):
3187         (WebInspector.TestController.prototype.runAfterPendingDispatches):
3188         (WebInspector.evaluateForTestInFrontend.invokeMethod):
3189         (WebInspector.evaluateForTestInFrontend):
3190
3191 2009-11-05  Vitaly Repeshko  <vitalyr@chromium.org>
3192
3193         Reviewed by Geoffrey Garen and Dimitri Glazkov.
3194
3195         Rehashing of EventListenerMap leads to loss of EvenListenerList.
3196         https://bugs.webkit.org/show_bug.cgi?id=31027
3197
3198         Tested by new fast/events/event-listener-map-rehash-crash.html.
3199
3200         EventListenerMap modified to store pointers to listener vectors:
3201         * dom/EventTarget.cpp:
3202         (WebCore::EventTargetData::~EventTargetData):
3203         (WebCore::EventTarget::addEventListener):
3204         (WebCore::EventTarget::removeEventListener):
3205         (WebCore::EventTarget::fireEventListeners):
3206         (WebCore::EventTarget::getEventListeners):
3207         (WebCore::EventTarget::removeAllEventListeners):
3208         * dom/EventTarget.h:
3209
3210         Usages updated after interface changes:
3211         * inspector/InspectorDOMAgent.cpp:
3212         (WebCore::InspectorDOMAgent::getEventListenersForNode):
3213         * svg/SVGUseElement.cpp:
3214         (WebCore::SVGUseElement::transferEventListenersToShadowTree):
3215
3216 2009-11-05  Dan Kegel  <dank@chromium.org>
3217
3218         Reviewed by Dmitri Titov.
3219
3220         Add missing initialization for m_createdByParser.
3221         https://bugs.webkit.org/show_bug.cgi?id=31089
3222
3223         Test: fast/dom/beforeload/pi-before-load.xhtml in Valgrind
3224
3225         * dom/ProcessingInstruction.cpp:
3226         (WebCore::ProcessingInstruction::ProcessingInstruction):
3227
3228 2009-11-04  Jeremy Orlow  <jorlow@chromium.org>
3229
3230         Reviewed by Adam Barth.
3231
3232         DOM Storage runtime flag changes
3233         https://bugs.webkit.org/show_bug.cgi?id=30602
3234
3235         Part 2/2.
3236
3237         Revert my changes to Settings and instead implement DOM Storage enabling via
3238         the methods agreed upon in https://bugs.webkit.org/show_bug.cgi?id=30240
3239
3240         This stuff was (intentionally) never exposed to web pages or DRT, so there's no
3241         LayoutTest visible changes and thus no tests.
3242
3243         * bindings/v8/custom/V8CustomBinding.h:
3244         * bindings/v8/custom/V8DOMWindowCustom.cpp:
3245         (WebCore::ACCESSOR_RUNTIME_ENABLER):
3246         * page/DOMWindow.cpp:
3247         (WebCore::DOMWindow::sessionStorage):
3248         * page/DOMWindow.idl:
3249         * page/Settings.cpp:
3250         (WebCore::Settings::Settings):
3251         * page/Settings.h:
3252         * storage/Storage.cpp:
3253         (WebCore::Storage::setLocalStorageAvailable):
3254         (WebCore::Storage::localStorageAvailable):
3255         (WebCore::Storage::setSessionStorageAvailable):
3256         (WebCore::Storage::sessionStorageAvailable):
3257         * storage/Storage.h:
3258
3259 2009-11-05  Jian Li  <jianli@chromium.org>
3260
3261         Reviewed by Pavel Feldman.
3262
3263         Bug 31108 - [V8] REGRESSION: Pause on exception is broken
3264         https://bugs.webkit.org/show_bug.cgi?id=31108
3265
3266         * bindings/v8/V8AbstractEventListener.cpp:
3267         (WebCore::V8AbstractEventListener::invokeEventHandler):
3268         * bindings/v8/V8Utilities.cpp:
3269         (WebCore::reportException):
3270
3271 2009-11-05  Jian Li  <jianli@chromium.org>
3272
3273         Reviewed by Dmitri Titov.
3274
3275         We should not bubble up events if we drag something to an iframe that
3276         has an invalid source.
3277         https://bugs.webkit.org/show_bug.cgi?id=30469
3278
3279         Test: http/tests/misc/bubble-drag-events.html
3280
3281         * page/EventHandler.cpp:
3282         (WebCore::EventHandler::handleDragAndDropForTarget):
3283         (WebCore::EventHandler::updateDragAndDrop):
3284         (WebCore::EventHandler::cancelDragAndDrop):
3285         (WebCore::EventHandler::performDragAndDrop):
3286         * page/EventHandler.h:
3287         (WebCore::EventHandler::):
3288
3289 2009-11-05  Pavel Feldman  <pfeldman@chromium.org>
3290
3291         Reviewed by Timothy Hatcher.
3292
3293         Web Inspector: speed up Timelines Clear by a factor of thousands.
3294
3295         https://bugs.webkit.org/show_bug.cgi?id=31160
3296
3297         * inspector/front-end/utilities.js:
3298         (Element.prototype.removeChildren):
3299
3300 2009-11-05  Anton Muhin  <antonm@chromium.org>
3301
3302         Reviewed by Adam Barth.
3303
3304         If high memory usage is detected, hint to V8 that it might be due
3305         to external objects retained by V8 objects.
3306         https://bugs.webkit.org/show_bug.cgi?id=31051
3307
3308         * bindings/v8/V8GCController.cpp:
3309         (WebCore::GetMemoryUsageInMB):
3310         (WebCore::V8GCController::gcEpilogue):
3311         (WebCore::V8GCController::checkMemoryUsage):
3312         * bindings/v8/V8GCController.h:
3313         * bindings/v8/V8Proxy.cpp:
3314         (WebCore::V8Proxy::evaluate):
3315         (WebCore::V8Proxy::runScript):
3316         (WebCore::V8Proxy::callFunction):
3317
3318 2009-11-05  Jeff Schiller  <codedread@gmail.com>
3319
3320         Reviewed by Simon Fraser.
3321
3322         Correct order of matrix multiplication for SVGMatrix.
3323         https://bugs.webkit.org/show_bug.cgi?id=16062
3324
3325         Test: svg/dom/SVGMatrix-interface.xhtml
3326
3327         * bindings/js/JSSVGMatrixCustom.cpp:
3328         (WebCore::JSSVGMatrix::multiply):
3329         * svg/SVGMatrix.idl:
3330
3331 2009-11-04  Pavel Feldman  <pfeldman@chromium.org>
3332
3333         Reviewed by Timothy Hatcher.
3334
3335         Web Inspector: Make resource-related records in timeline
3336         actually take some time.
3337
3338         https://bugs.webkit.org/show_bug.cgi?id=31139
3339
3340         * English.lproj/localizedStrings.js:
3341         * inspector/front-end/TimelinePanel.js:
3342         (WebInspector.TimelinePanel):
3343         (WebInspector.TimelinePanel.prototype._formatRecord):
3344         (WebInspector.TimelinePanel.prototype._getRecordDetails):
3345         (WebInspector.TimelinePanel.prototype.reset):
3346
3347 2009-11-04  Jeremy Orlow  <jorlow@chromium.org>
3348
3349         Reviewed by Darin Fisher.
3350
3351         Simplify LocalStorageThread
3352         https://bugs.webkit.org/show_bug.cgi?id=30935
3353
3354         This is a re-submit of 50519.  LocalStorageTask should have never been ref
3355         counted.  I've removed that and switched a PassRefPtr over to a PassOwnPtr.
3356
3357         On LocalStoragethread: Remove reference counting. Get rid of locking. Make some
3358         of the method names a bit more clear. Assert proper thread usage. Join rather
3359         than detaching the thread and doing an ad-hoc form of join. Avoid touching
3360         variables on the background thread when simple to do so.  Also create a generic
3361         scheduleTask function rather than one for each task.
3362
3363         No behavior should have changed.
3364
3365         * storage/LocalStorageTask.h:
3366         * storage/LocalStorageThread.cpp:
3367         (WebCore::LocalStorageThread::create):
3368         (WebCore::LocalStorageThread::LocalStorageThread):
3369         (WebCore::LocalStorageThread::~LocalStorageThread):
3370         (WebCore::LocalStorageThread::start):
3371         (WebCore::LocalStorageThread::threadEntryPointCallback):
3372         (WebCore::LocalStorageThread::threadEntryPoint):
3373         (WebCore::LocalStorageThread::scheduleTask):
3374         (WebCore::LocalStorageThread::terminate):
3375         (WebCore::LocalStorageThread::performTerminate):
3376         * storage/LocalStorageThread.h:
3377         * storage/StorageSyncManager.cpp:
3378         (WebCore::StorageSyncManager::StorageSyncManager):
3379         (WebCore::StorageSyncManager::~StorageSyncManager):
3380         (WebCore::StorageSyncManager::scheduleImport):
3381         (WebCore::StorageSyncManager::scheduleSync):
3382         * storage/StorageSyncManager.h:
3383
3384 2009-11-04  Jeremy Orlow  <jorlow@chromium.org>
3385
3386         Reviewed by Darin Fisher.
3387
3388         Calling databaseIdentifier on LocalStorage's background thread is not safe.
3389         https://bugs.webkit.org/show_bug.cgi?id=31149
3390
3391         Calling SecurityOrigin::databaseIdentifier on LocalStorage's background thread
3392         is not safe.  databaseIdentifier does a bunch of string concatenation which
3393         ref-counts StringImpls in some cases.  This was caught by valgrind thread
3394         sanitizer: http://code.google.com/p/chromium/issues/detail?id=25645
3395
3396         There's no way to test for such racyness, unfortunately.
3397
3398         * storage/StorageAreaSync.cpp:
3399         (WebCore::StorageAreaSync::StorageAreaSync):
3400         (WebCore::StorageAreaSync::performImport):
3401         * storage/StorageAreaSync.h:
3402         * storage/StorageSyncManager.cpp:
3403         (WebCore::StorageSyncManager::fullDatabaseFilename):
3404         * storage/StorageSyncManager.h:
3405
3406 2009-11-03  Jeremy Orlow  <jorlow@chromium.org>
3407
3408         Reviewed by Darin Fisher.
3409
3410         Clean up StorageAreaSync
3411         https://bugs.webkit.org/show_bug.cgi?id=31100
3412
3413         Major fixes: Break the ref count cycle for StorageArea on the main
3414         thread, not the background thread since the latter is not safe.
3415         Length() needs to block on the import completing.
3416
3417         Small fixes: setItem needs to handle the copy on write case even if it
3418         has an exception.  setItem and removeItem should just bail from the
3419         the function if the value hasn't changed rather than wrapping the end
3420         in an if block.  Clear should only send an event if it wasn't already
3421         cleared.  StorageAreaSync should assert that the final sync was
3422         scheduled.
3423
3424         * storage/StorageAreaImpl.cpp:
3425         (WebCore::StorageAreaImpl::length):
3426           Forgot to block on the import.
3427         (WebCore::StorageAreaImpl::key):
3428         (WebCore::StorageAreaImpl::setItem):
3429           Handle the copy on write case even when there's an exception.
3430         (WebCore::StorageAreaImpl::removeItem):
3431         (WebCore::StorageAreaImpl::clear):
3432         * storage/StorageAreaSync.cpp:
3433         (WebCore::StorageAreaSync::~StorageAreaSync):
3434         (WebCore::StorageAreaSync::scheduleFinalSync):
3435         (WebCore::StorageAreaSync::performImport):
3436         (WebCore::StorageAreaSync::markImported):
3437         (WebCore::StorageAreaSync::blockUntilImportComplete):
3438         * storage/StorageAreaSync.h:
3439
3440 2009-11-05  Zoltan Horvath  <zoltan@webkit.org>
3441
3442         Reviewed by Eric Seidel.
3443
3444         Allow custom memory allocation control for WebCore's CachedResource
3445         https://bugs.webkit.org/show_bug.cgi?id=31114
3446
3447         Inherits CachedResource class from Noncopyable because its (its child
3448         class) CachedCSSStyleSheet instantiated by 'new' in WebCore/loader/Cache.cpp:75 
3449         and it is no need to be copyable.
3450
3451         * loader/CachedResource.h:
3452
3453 2009-11-04  Mark Mentovai  <mark@chromium.org>
3454
3455         Reviewed by Mark Rowe.
3456
3457         Separate the difference between HAVE(CGINTERPOLATION_MEDIUM), which
3458         is true when building on 10.6 or later, and USE(CGINTERPOLATION_MEDIUM)
3459         which is true when targeting 10.6 or later.
3460
3461         HAVE(CGINTERPOLATION_MEDIUM) indicates that kCGInterpolationMedium
3462         is present in the CGInterpolationQuality enum, and must be handled
3463         by a switch that has cases for each enumerated value.
3464
3465         USE(CGINTERPOLATION_MEDIUM) indicates that the product will only run
3466         on 10.6 or later, and that CoreGraphics will understand when
3467         InterpolationMedium is mapped to kCGInterpolationMedium at runtime.
3468
3469         * platform/graphics/cg/GraphicsContextCG.cpp:
3470         (WebCore::GraphicsContext::setImageInterpolationQuality):
3471         (WebCore::GraphicsContext::imageInterpolationQuality):
3472
3473 2009-11-04  Dan Kegel  <dank@chromium.org>
3474
3475         Reviewed by Alexey Proskuryakov.
3476
3477         Fix buffer overrun in WebCore::Page::userStyleSheetLocationChanged()
3478         https://bugs.webkit.org/show_bug.cgi?id=31138
3479
3480         Test: LayoutTests/platform/mac/fast/loader/user-stylesheet-fast-path.html in Valgrind
3481
3482         * page/Page.cpp:
3483         (WebCore::Page::userStyleSheetLocationChanged):
3484
3485 2009-11-04  Timothy Hatcher  <timothy@apple.com>
3486
3487         Update the Web Inspector Timeline panel to better match the mock-up.
3488
3489         https://bugs.webkit.org/show_bug.cgi?id=31150
3490
3491         Reviewed by Pavel Feldman.
3492
3493         * inspector/front-end/TimelinePanel.js:
3494         (WebInspector.TimelinePanel.prototype._getRecordDetails):
3495         (WebInspector.TimelinePanel.prototype._dragWindow):
3496         (WebInspector.TimelinePanel.prototype._resizeWindowLeft):
3497         (WebInspector.TimelinePanel.prototype._resizeWindowRight):
3498         (WebInspector.TimelineCategoryTreeElement.prototype.onattach):
3499         (WebInspector.TimelineRecordTreeElement.prototype.onattach):
3500         (WebInspector.TimelineRecordTreeElement.prototype.refresh):
3501         (WebInspector.TimelineCategoryGraph):
3502         * inspector/front-end/inspector.css:
3503
3504 2009-11-05  Justin Garcia  <justin.garcia@apple.com>
3505
3506         Reviewed by Adele Peterson.
3507
3508         https://bugs.webkit.org/show_bug.cgi?id=25439
3509         Deleting when in front of a block image removes character from previous paragraph
3510
3511         Added editing/deleting/25439-{1,2,3}.html
3512
3513         * editing/DeleteSelectionCommand.cpp:
3514         (WebCore::DeleteSelectionCommand::mergeParagraphs): Block images, tables and HRs cannot 
3515         be made inline with other content.  Instead of merging, just move the caret to just before 
3516         the selection we deleted.
3517         * editing/htmlediting.cpp:
3518         (WebCore::firstInSpecialElement): Added a FIXME.  This function begins iterating up from pos.node(), which 
3519         doesn't necessarily contain pos (suppose pos was [img, 0]).
3520         (WebCore::lastInSpecialElement): Ditto.
3521         (WebCore::isRenderedAsNonInlineTableImageOrHR): Moved from visible_units.cpp.  Added a check for non-inline images.
3522         * editing/htmlediting.h:
3523         * editing/visible_units.cpp:
3524         (WebCore::startOfParagraph): Use moved/renamed function.  Removed FIXME.  The problem causing 
3525         5027702 is now squarely in first/lastInSpecialElement
3526         (WebCore::endOfParagraph): Ditto.
3527         
3528 2009-11-04  Enrica Casucci  <enrica@apple.com>
3529
3530         Reviewed by Adele Peterson.
3531
3532         Hang in Mail on attempting to change indent level.
3533         <rdar://problem/7131805>
3534         https://bugs.webkit.org/show_bug.cgi?id=31127
3535
3536         The hang was caused by an infinite loop inside outdentRegion.
3537         The code did not account for the fact that, when a list item
3538         contains multiple paragraphs, outdent moves all paragraphs at
3539         once, invalidating some of the positions we keep track of in the loop.
3540         Some code refactoring has also been done to minimize duplicated code.
3541         
3542         Test: editing/execCommand/outdent-multiparagraph-list.html
3543
3544         * editing/IndentOutdentCommand.cpp:
3545         (WebCore::IndentOutdentCommand::indentRegion): Moved code in common with
3546         outdentRegion to doApply.
3547         (WebCore::IndentOutdentCommand::outdentRegion): Fixed endless loop.
3548         (WebCore::IndentOutdentCommand::doApply): Some code refactoring.
3549         * editing/IndentOutdentCommand.h: Added VisiblePosition parameters to
3550         indentRegion and outdentRegion.
3551
3552 2009-11-04  Alpha Lam  <hclam@chromium.org>
3553
3554         Reviewed by Eric Carlson.
3555
3556         Volume slider doesn't have a thumb
3557         https://bugs.webkit.org/show_bug.cgi?id=31135
3558
3559         Fixed an incorrect if statement that prevents volume slider
3560         being updated.
3561
3562         The statement checks if the slider value equals to the current
3563         volume value of the media control to avoid updating the volume
3564         slider. Updating the volume slider control shouldn't be within
3565         this condition because we explicitly set them to be equals
3566         during creation of the controls and also when mouse events are
3567         received on the volume control.
3568
3569         No new tests because existing code breaks:
3570         LayoutTests/media/video-volume-slider.html
3571
3572         It should now start passing on Chromium.
3573
3574         * rendering/MediaControlElements.cpp:
3575         (WebCore::MediaControlVolumeSliderElement::update):
3576         Update the volume slider regardless of the current volume value
3577         of the media control.
3578
3579 2009-11-04  Jenn Braithwaite  <jennb@chromium.org>
3580
3581         Reviewed by David Levin.
3582
3583         Need to properly disable applicationCache at runtime
3584         https://bugs.webkit.org/show_bug.cgi?id=30417
3585
3586         Adding applicationCacheEnabled bit to V8 RuntimeEnabledFeatures.
3587
3588         No new exposed functionality, so no new tests.
3589
3590         * bindings/v8/RuntimeEnabledFeatures.cpp:
3591         * bindings/v8/RuntimeEnabledFeatures.h:
3592         (WebCore::RuntimeEnabledFeatures::setApplicationCacheEnabled):
3593         (WebCore::RuntimeEnabledFeatures::applicationCacheEnabled):
3594         * bindings/v8/custom/V8CustomBinding.h:
3595         * bindings/v8/custom/V8DOMWindowCustom.cpp:
3596         (WebCore::ACCESSOR_RUNTIME_ENABLER):
3597         * page/DOMWindow.idl:
3598
3599 2009-11-04  Alexey Proskuryakov  <ap@apple.com>
3600
3601         Reviewed by Dan Bernstein.
3602
3603         https://bugs.webkit.org/show_bug.cgi?id=31143
3604         Assertion failure in CredentialStorage::set() when proxy credentials are being set
3605
3606         No test, cannot test proxy behavior.
3607
3608         * platform/network/CredentialStorage.cpp: (WebCore::CredentialStorage::set): Account for the
3609         possibility of null url. Release mode changes are likely inconsequential - e.g. we used to
3610         add "://" to origin set, which is weird, but safe.
3611
3612 2009-11-04  Patrick Mueller  <Patrick_Mueller@us.ibm.com>
3613
3614         Reviewed by Timothy Hatcher.
3615
3616         Web Inspector: Leftover Breakpoints in the Sidebar Pane
3617         https://bugs.webkit.org/show_bug.cgi?id=30659
3618
3619         No new tests.
3620
3621         * inspector/front-end/ScriptsPanel.js:
3622         (WebInspector.ScriptsPanel.prototype.addScript):
3623
3624 2009-11-04  Jocelyn Turcotte  <jocelyn.turcotte@nokia.com>
3625
3626         Reviewed by Timothy Hatcher.
3627
3628         WebInspector: Use a different method to identify the webkit port in
3629         InspectorBackent::platform().
3630         This corrects the inspector expected behavior with Qt on Windows.
3631         https://bugs.webkit.org/show_bug.cgi?id=31116
3632
3633         * inspector/InspectorBackend.cpp:
3634         (WebCore::InspectorBackend::platform):
3635         (WebCore::InspectorBackend::port):
3636         * inspector/InspectorBackend.h:
3637     &nbs