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