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