790cbfd12752c1cf6e1dbca6a7288bafae915314
[WebKit-https.git] / WebCore / ChangeLog
1 2009-08-12  Peter Kasting  <pkasting@google.com>
2
3         Reviewed by Adam Treat.
4
5         https://bugs.webkit.org/show_bug.cgi?id=27965
6         Merge wx/ImageSourceWx.cpp into ImageSource.cpp.  No changes to
7         ImageSource.cpp were needed, so this just deletes ImageSourceWx.cpp.
8
9         * WebCore.gypi:
10         * WebCoreSources.bkl:
11         * platform/graphics/wx/ImageSourceWx.cpp: Removed.
12         * webcore-wx.bkl:
13
14 2009-08-12  Peter Kasting  <pkasting@google.com>
15
16         Reviewed by Dave Levin.
17
18         https://bugs.webkit.org/show_bug.cgi?id=27933
19         Build fix after r47099.
20
21         * platform/graphics/skia/ImageBufferSkia.cpp:
22         (WebCore::getImageData):
23         (WebCore::putImageData):
24
25 2009-08-08  Yong Li  <yong.li@torchmobile.com>
26
27         Reviewed by Adam Treat.
28
29         WINCE PORT: Implement Path for WINCE. Most code can be
30         reused for other ports that don't have native path support
31         https://bugs.webkit.org/show_bug.cgi?id=28188
32
33         Written also by George Staikos (including quadCurve() and bezier())
34
35         * platform/graphics/wince/PathWince.cpp: Added.
36         * platform/graphics/wince/PlatformPathWince.cpp: Added.
37         * platform/graphics/wince/PlatformPathWince.h: Added.
38         * platform/graphics/wince/WinceGraphicsExtras.h: Added.
39
40 2009-08-12  Joseph Pecoraro  <joepeck02@gmail.com>
41
42         "Double-click to add" new style button does not always show up [quick fix]
43         https://bugs.webkit.org/show_bug.cgi?id=28187
44
45         * inspector/front-end/StylesSidebarPane.js:
46         (WebInspector.StylePropertyTreeElement.prototype.updateTitle):
47
48 2009-08-12  Crystal Zhang <crystal.zhang@torchmobile.com>
49
50         Reviewed by George Staikos.
51
52         WINCE PORT: MediaPlayerProxy and MediaPlayerPrivate
53         https://bugs.webkit.org/show_bug.cgi?id=28178
54
55         * platform/graphics/wince/MediaPlayerPrivateWince.h: Added.
56         * platform/graphics/wince/MediaPlayerProxy.cpp: Added.
57         * platform/graphics/wince/MediaPlayerProxy.h: Added.
58
59 2009-08-12  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
60
61         Reviewed by Eric Seidel.
62
63         HTML 5 database and LocalStorage is not persistent on the Symbian port of QtWebKit
64         https://bugs.webkit.org/show_bug.cgi?id=28175
65
66         Call QDir::toNativeSeparators() before the path is passed to the OS.
67
68         Based on work by David Leong.
69         
70         * platform/qt/FileSystemQt.cpp:
71         (WebCore::pathByAppendingComponent):
72
73 2009-08-12  Eric Carlson  <eric.carlson@apple.com>
74
75         Tiger build fix.
76
77         * accessibility/mac/AccessibilityObjectWrapper.mm: 
78             Define NSAccessibilityTimelineSubrole for Tiger.
79
80 2009-08-12  Dirk Schulze  <krit@webkit.org>
81
82         Reviewed by Ariya Hidayat.
83
84         Minor build-fix for SVG Filter. Use getUnmultipliedImageData instead
85         of getImageData. This changed since r47099.
86
87         * platform/graphics/filters/FEColorMatrix.cpp:
88         (WebCore::FEColorMatrix::apply):
89
90 2009-08-12  Eric Carlson  <eric.carlson@apple.com>
91
92         Reviewed by Oliver Hunt.
93
94         <video> and <audio> controller should be accessible
95         https://bugs.webkit.org/show_bug.cgi?id=28081
96
97         Test: accessibility/media-element.html
98
99         * GNUmakefile.am:
100         * WebCore.gypi:
101         * WebCore.pro:
102         * WebCore.vcproj/WebCore.vcproj:
103         * WebCore.xcodeproj/project.pbxproj:
104         * WebCoreSources.bkl:
105             Add AccessibilityMediaControls.cpp/.h
106
107         * accessibility/AXObjectCache.cpp:
108         * accessibility/AXObjectCache.h:
109         (WebCore::AXObjectCache::getOrCreate):
110             Create AccessibilityMediaControl. Update Copyright
111
112         * accessibility/AccessibilityMediaControls.cpp:
113         * accessibility/AccessibilityMediaControls.h:
114             Added.
115
116         * accessibility/AccessibilityObject.cpp:
117         * accessibility/AccessibilityObject.h:
118             Add isMediaTimeline. Update Copyright.
119
120         * accessibility/AccessibilitySlider.h:
121             Make constructor protected instead of private so AccessibilityMediaTimeline can
122             call it.
123
124         * accessibility/mac/AccessibilityObjectWrapper.mm:
125         (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
126             Add NSAccessibilityValueDescriptionAttribute to range attributes. 
127         (-[AccessibilityObjectWrapper subrole]):
128             Return NSAccessibilityTimelineSubrole for AccessibilityMediaTimeline.
129
130         * dom/Node.h:
131             add isMediaControlElement.
132
133         * page/mac/WebCoreViewFactory.h:
134         * platform/LocalizedStrings.h:
135         * platform/mac/LocalizedStringsMac.mm:
136         (WebCore::localizedMediaControlElementString): 
137         (WebCore::localizedMediaControlElementHelpText):
138         (WebCore::localizedMediaTimeDescription): 
139             New, return localized media controller strings.
140
141         * rendering/MediaControlElements.cpp:
142         (WebCore::MediaControlElement::MediaControlElement):
143             Initialize m_displayType.
144         (WebCore::MediaControlElement::MediaControlElement):
145         (WebCore::MediaControlStatusDisplayElement::MediaControlStatusDisplayElement):
146             Fix style.
147         (WebCore::MediaControlInputElement::MediaControlInputElement):
148             Set m_displayType based on pseudo style ID.
149         (WebCore::MediaControlInputElement::MediaControlInputElement):
150             rename local "o" to "object".
151         (WebCore::MediaControlMuteButtonElement::MediaControlMuteButtonElement):
152         (WebCore::MediaControlPlayButtonElement::MediaControlPlayButtonElement):
153         (WebCore::MediaControlSeekButtonElement::MediaControlSeekButtonElement):
154         (WebCore::MediaControlRewindButtonElement::MediaControlRewindButtonElement):
155         (WebCore::MediaControlReturnToRealtimeButtonElement::MediaControlReturnToRealtimeButtonElement):
156         (WebCore::MediaControlTimelineElement::MediaControlTimelineElement):
157         (WebCore::MediaControlFullscreenButtonElement::MediaControlFullscreenButtonElement):
158         (WebCore::MediaControlTimelineElement::MediaControlTimelineElement):
159         (WebCore::MediaControlTimelineElement::MediaControlTimelineElement):
160         (WebCore::MediaControlTimelineElement::MediaControlTimelineElement):
161             Update for MediaControlInputElement constructor change.
162         (WebCore::MediaControlTimeDisplayElement::formatTime):
163             New, moved here from RenderMedia so AccessibilityMediaTimeDisplay can use it.
164         (WebCore::MediaControlTimeDisplayElement::setCurrentValue):
165             New, set text to current time.
166         * rendering/MediaControlElements.h:
167
168         * rendering/RenderMedia.cpp:
169         (WebCore::RenderMedia::updateControls):
170             Create controls in tab order.
171         (WebCore::RenderMedia::formatTime):
172             Moved to MediaControlTimeDisplayElement::formatTime.
173         (WebCore::RenderMedia::updateTimeDisplay):
174             Call MediaControlTimeDisplayElement::setCurrentValue.
175         * rendering/RenderMedia.h:
176
177 2009-08-12  Viet-Trung Luu  <viettrungluu@gmail.com>
178
179         Reviewed by Dimitri Glazkov.
180
181         Explicitly set control tints for Chromium/Mac, since the controls'
182         NSCell(s) lack an NSView and hence their tint isn't updated
183         automatically when the application is activated/deactivated.
184         https://bugs.webkit.org/show_bug.cgi?id=28108
185         http://crbug.com/18199
186
187         * rendering/RenderThemeChromiumMac.mm:
188         (WebCore::updateNSCellControlTint):
189         (WebCore::RenderThemeChromiumMac::paintCheckbox):
190         (WebCore::RenderThemeChromiumMac::paintRadio):
191         (WebCore::RenderThemeChromiumMac::paintButton):
192         (WebCore::RenderThemeChromiumMac::paintMenuList):
193         (WebCore::RenderThemeChromiumMac::paintSliderThumb):
194         (WebCore::RenderThemeChromiumMac::paintSearchField):
195         (WebCore::RenderThemeChromiumMac::paintSearchFieldCancelButton):
196         (WebCore::RenderThemeChromiumMac::paintSearchFieldResultsDecoration):
197         (WebCore::RenderThemeChromiumMac::paintSearchFieldResultsButton):
198
199 2009-08-12  Christian Plesner Hansen  <christian.plesner.hansen@gmail.com>
200
201         Reviewed by Dimitri Glazkov.
202
203         [V8] Fix atomic string externalization crash.
204         Atomic string externalization assumes that all non-empty strings
205         can be externalized which is untrue on 64-bit.  This change fixed
206         that.
207
208         https://bugs.webkit.org/show_bug.cgi?id=28215
209
210         This bug causes loads of test crashes, no need to add new tests
211         specifically for this.
212
213         * bindings/v8/V8Binding.cpp:
214         (WebCore::v8StringToAtomicWebCoreString):
215
216 2009-08-12  Ariya Hidayat  <ariya.hidayat@nokia.com>
217
218         Reviewed by Holger Freyther.
219
220         [Qt] Fix box-shadow painting in r47103. The edge should not be blurry.
221         Also optimize by not having to save and restore painter state.
222
223         * platform/graphics/qt/GraphicsContextQt.cpp:
224         (WebCore::GraphicsContext::drawRect):
225         (WebCore::GraphicsContext::fillRect):
226
227 2009-08-12  Ariya Hidayat  <ariya.hidayat@nokia.com>
228
229         Reviewed by Adam Treat.
230
231         [Qt] Fix coding style in GraphicsContextQt.cpp
232
233         * platform/graphics/qt/GraphicsContextQt.cpp:
234         (WebCore::toQtCompositionMode):
235         (WebCore::toQtLineCap):
236         (WebCore::toQtLineJoin):
237         (WebCore::GraphicsContextPlatformPrivate::p):
238         (WebCore::GraphicsContext::drawLine):
239         (WebCore::GraphicsContext::strokeArc):
240         (WebCore::GraphicsContext::drawConvexPolygon):
241         (WebCore::GraphicsContext::pen):
242         (WebCore::GraphicsContext::fillPath):
243         (WebCore::GraphicsContext::strokePath):
244         (WebCore::GraphicsContext::fillRect):
245         (WebCore::GraphicsContext::clipPath):
246         (WebCore::GraphicsContext::drawFocusRing):
247         (WebCore::GraphicsContext::beginTransparencyLayer):
248         (WebCore::GraphicsContext::endTransparencyLayer):
249         (WebCore::GraphicsContext::clearRect):
250         (WebCore::GraphicsContext::setLineCap):
251         (WebCore::GraphicsContext::setLineJoin):
252         (WebCore::GraphicsContext::setMiterLimit):
253         (WebCore::GraphicsContext::setAlpha):
254         (WebCore::GraphicsContext::clipOut):
255         (WebCore::GraphicsContext::clipOutEllipseInRect):
256         (WebCore::GraphicsContext::addInnerRoundedRectClip):
257         (WebCore::GraphicsContext::setPlatformStrokeColor):
258         (WebCore::GraphicsContext::setPlatformStrokeStyle):
259         (WebCore::GraphicsContext::setPlatformStrokeThickness):
260
261 2009-08-12  Szabo Carol  <carol.szabo@nokia.com>
262
263         Reviewed by Simon Hausmann and Ariya Hidayat.
264
265         https://bugs.webkit.org/show_bug.cgi?id=23291
266
267         [Qt] Partial support for -webkit-box-shadow. Blur is not support and
268         the shadow still does not go well with border radius.
269
270         * platform/graphics/qt/GraphicsContextQt.cpp:
271         (WebCore::GraphicsContext::drawRect):
272         (WebCore::GraphicsContext::fillRect):
273
274 2009-08-12  Xan Lopez  <xlopez@igalia.com>
275
276         Reviewed by Jan Alonzo.
277
278         Use AM_V_GEN in a few more places, for less noisy builds.
279
280         * GNUmakefile.am:
281
282 2009-08-12  Dirk Schulze  <krit@webkit.org>
283
284         Reviewed by Oliver Hunt.
285
286         SVG Filter premultiplied color support for getImageDate/putImageData
287         [https://bugs.webkit.org/show_bug.cgi?id=27933]
288
289         Some SVG Filters need premultiplied ImageData for the calculation. Therefore getImageData
290         and putImageData of ImageBuffer need support for premultiplied colors.
291
292         * html/CanvasRenderingContext2D.cpp:
293         (WebCore::CanvasRenderingContext2D::getImageData):
294         (WebCore::CanvasRenderingContext2D::putImageData):
295         * platform/graphics/ImageBuffer.h:
296         (WebCore::):
297         * platform/graphics/cairo/ImageBufferCairo.cpp:
298         (WebCore::getImageData):
299         (WebCore::ImageBuffer::getUnmultipliedImageData):
300         (WebCore::ImageBuffer::getPremultipliedImageData):
301         (WebCore::putImageData):
302         (WebCore::ImageBuffer::putUnmultipliedImageData):
303         (WebCore::ImageBuffer::putPremultipliedImageData):
304         * platform/graphics/cg/ImageBufferCG.cpp:
305         (WebCore::getImageData):
306         (WebCore::ImageBuffer::getUnmultipliedImageData):
307         (WebCore::ImageBuffer::getPremultipliedImageData):
308         (WebCore::putImageData):
309         (WebCore::ImageBuffer::putUnmultipliedImageData):
310         (WebCore::ImageBuffer::putPremultipliedImageData):
311         * platform/graphics/qt/ImageBufferQt.cpp:
312         (WebCore::getImageData):
313         (WebCore::ImageBuffer::getUnmultipliedImageData):
314         (WebCore::ImageBuffer::getPremultipliedImageData):
315         (WebCore::putImageData):
316         (WebCore::ImageBuffer::putUnmultipliedImageData):
317         (WebCore::ImageBuffer::putPremultipliedImageData):
318         * platform/graphics/skia/ImageBufferSkia.cpp:
319         (WebCore::getImageData):
320         (WebCore::ImageBuffer::getUnmultipliedImageData):
321         (WebCore::ImageBuffer::getPremultipliedImageData):
322         (WebCore::putImageData):
323         (WebCore::ImageBuffer::putUnmultipliedImageData):
324         (WebCore::ImageBuffer::putPremultipliedImageData):
325         * platform/graphics/wx/ImageBufferWx.cpp:
326         (WebCore::ImageBuffer::getUnmultipliedImageData):
327         (WebCore::ImageBuffer::getPremultipliedImageData):
328         (WebCore::ImageBuffer::putUnmultipliedImageData):
329         (WebCore::ImageBuffer::putPremultipliedImageData):
330         * svg/graphics/SVGResourceMasker.cpp:
331         (WebCore::SVGResourceMasker::applyMask):
332
333 2009-08-12  Mikhail Naganov  <mnaganov@chromium.org>
334
335         Reviewed by Timothy Hatcher.
336
337         Changed Number.bytesToString to support low-resolution output.
338
339         https://bugs.webkit.org/show_bug.cgi?id=28146
340
341         * inspector/front-end/utilities.js:
342         (Number.bytesToString):
343
344 2009-08-12  Prasanth Ullattil  <prasanth.ullattil@nokia.com>
345
346         Reviewed by Simon Hausmann.
347
348         Add support for hooking BeginPaint/EndPaint on 64Bit Windows
349
350         Webkit uses the runtime patching trick explained by "Feng Yuan" for
351         hooking these paint functions. It currently supports only 32bit assembly
352         code. This patch adds support for 64Bit version. Since inline-assemblies
353         are not supported for 64Bit, we have use a seperate .asm file.
354
355         * WebCore.pro:
356         * plugins/win/PaintHooks.asm: Added.
357         * plugins/win/PluginViewWin.cpp:
358         (WebCore::PluginView::hookedBeginPaint):
359         (WebCore::PluginView::hookedEndPaint):
360         (WebCore::hook):
361
362 2009-08-11  Oliver Hunt  <oliver@apple.com>
363
364         Reviewed by Gavin Barraclough.
365
366         Make it harder to misuse try* allocation routines
367         https://bugs.webkit.org/show_bug.cgi?id=27469
368
369         Add forwarding header for PossiblyNull type, and add missing null check
370         to ImageBuffer creation.
371
372         * ForwardingHeaders/wtf/PossiblyNull.h: Added.
373         * platform/graphics/cg/ImageBufferCG.cpp:
374         (WebCore::ImageBuffer::ImageBuffer):
375
376 2009-08-11  Gavin Barraclough  <barraclough@apple.com>
377
378         Reviewed by Oliver Hunt.
379
380         Restrict use of FuncDeclNode & FuncExprNode to the parser.
381         https://bugs.webkit.org/show_bug.cgi?id=28209
382
383         * inspector/JavaScriptDebugServer.cpp:
384         (WebCore::JavaScriptDebugServer::recompileAllJSFunctions):
385             Function signature change.
386
387 2009-08-11  Peter Kasting  <pkasting@google.com>
388
389         Reviewed by Adam Treat.
390
391         https://bugs.webkit.org/show_bug.cgi?id=27965
392         Merge skia/ImageSourceSkia.cpp into ImageSource.cpp.
393
394         * WebCore.gypi: Remove deleted file, plus a file that was deleted a while back.
395         * platform/graphics/ImageSource.cpp:
396         (WebCore::ImageSource::setData): Use slightly shorter syntax.
397         (WebCore::ImageSource::filenameExtension): Use shorter syntax.
398         (WebCore::ImageSource::createFrameAtIndex): Remove redundant call, clarify comments, reject all empty images.
399         (WebCore::ImageSource::frameHasAlphaAtIndex): Clarify comments, use shorter syntax.
400         * platform/graphics/skia/ImageSourceSkia.cpp: Removed.
401
402 2009-08-11  Drew Wilson  <atwilson@google.com>
403
404         Reviewed by David Levin.
405
406         SharedWorkers do not exit when the last parent document exits
407         https://bugs.webkit.org/show_bug.cgi?id=28170
408
409         Prevents Documents from being suspended/placed in the page cache if they are associated with shared workers.
410
411         Added vector cache instead of nested hash tables for SharedWorker repository.
412
413         Added SharedWorkerRepository::documentDetached API.
414
415         * dom/Document.cpp:
416         (WebCore::Document::detach):
417         Notifies SharedWorkerRepository when the document is closing.
418         * loader/FrameLoader.cpp:
419         Updated FrameLoader to not cache the Document if it is associated with a SharedWorker (since we can't suspend workers yet, we need to shut them down).
420         (WebCore::FrameLoader::canCachePageContainingThisFrame):
421         (WebCore::FrameLoader::logCanCacheFrameDecision):
422         * workers/DefaultSharedWorkerRepository.cpp:
423         (WebCore::SharedWorkerProxy::create):
424         (WebCore::SharedWorkerProxy::isClosing):
425         Renamed from closing().
426         (WebCore::SharedWorkerProxy::matches):
427         Added manual equality function to replace old hash lookup.
428         (WebCore::SharedWorkerProxy::isDocumentInWorkerDocuments):
429         Checks to see if a document is in the worker's list of documents. Used to determine if page is suspendable.
430         (WebCore::SharedWorkerProxy::SharedWorkerProxy):
431         (WebCore::SharedWorkerProxy::addToWorkerDocuments):
432         Added tracking of the worker's list of documents for lifecycle purposes.
433         (WebCore::SharedWorkerProxy::documentDetached):
434         Shuts down the proxy when the last associated document is detached.
435         (WebCore::SharedWorkerProxy::close):
436         Marks the proxy as closed so it is no longer shared with new instances.
437         (WebCore::SharedWorkerProxy::workerContextDestroyed):
438         Removes the proxy from the repository/frees the proxy when the associated SharedWorkerContext is destroyed.
439         (WebCore::DefaultSharedWorkerRepository::workerScriptLoaded):
440         closing()->isClosing()
441         (WebCore::SharedWorkerRepository::documentDetached):
442         (WebCore::SharedWorkerRepository::hasSharedWorkers):
443         Used by FrameLoader to determine if a page has shared workers and so cannot be suspended/cached.
444         (WebCore::DefaultSharedWorkerRepository::hasSharedWorkers):
445         (WebCore::DefaultSharedWorkerRepository::removeProxy):
446         Invoked by workerContextDestroyed() to remove a SharedWorkerProxy from the repository.
447         (WebCore::DefaultSharedWorkerRepository::documentDetached):
448         (WebCore::DefaultSharedWorkerRepository::connectToWorker):
449         (WebCore::DefaultSharedWorkerRepository::getProxy):
450         * workers/DefaultSharedWorkerRepository.h:
451         * workers/SharedWorkerRepository.h:
452
453 2009-08-11  Chris Fleizach  <cfleizach@apple.com>
454
455         Reviewed by Darin Adler.
456
457         Bug 28200 - ListMarker should be included as part of the text value to parse
458         https://bugs.webkit.org/show_bug.cgi?id=28200
459
460         When returning text through the marker range attributes, the list marker text should
461         also be included. It isn't included by default because a TextIterator is used which
462         only looks at Nodes for text. A list marker does not have a corresponding node,
463         so its text is not returned through accessibility. That is, until now.
464
465         Test: platform/mac/accessibility/string-range-contains-listmarker.html
466
467         * accessibility/AccessibilityObject.cpp:
468         (WebCore::AccessibilityObject::listMarkerTextForRange):
469         (WebCore::AccessibilityObject::stringForVisiblePositionRange):
470         * accessibility/AccessibilityObject.h:
471         * accessibility/mac/AccessibilityObjectWrapper.mm:
472         (-[AccessibilityObjectWrapper doAXAttributedStringForTextMarkerRange:]):
473         (-[AccessibilityObjectWrapper accessibilityParameterizedAttributeNames]):
474         (-[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
475         * rendering/RenderListItem.h:
476
477         Make markerText() public so that accessibility code can access it.
478
479 2009-08-11  Peter Kasting  <pkasting@google.com>
480
481         Reviewed by Adam Treat.
482
483         https://bugs.webkit.org/show_bug.cgi?id=27965
484         Move cairo/ImageSourceCairo.cpp to ImageSource.cpp in preparation for
485         merging most of the other ImageSource*.cpp files with it.
486
487         * GNUmakefile.am:
488         * WebCore.gypi:
489         * WebCore.vcproj/WebCore.vcproj:
490         * platform/graphics/ImageSource.cpp: Copied from WebCore/platform/graphics/cairo/ImageSourceCairo.cpp.
491         * platform/graphics/cairo/ImageSourceCairo.cpp: Removed.
492
493 2009-08-10  Brent Fulgham  <bfulgham@webkit.org>
494
495         Reviewed by Adam Roben.
496
497         Cairo-based Windows port does not handle the https protocol.
498         https://bugs.webkit.org/show_bug.cgi?id=28171.
499
500         No new tests needed.  Existing https tests show this failure
501         for WinCairo builds.
502
503         * WebCore.vcproj/WebCoreCURL.vsprops: Add a few preprocessor
504           definitions for SSL support in cURL.
505         * platform/network/curl/ResourceHandleManager.h: Add new
506           certificate path member variable.
507         * platform/network/curl/ResourceHandleManager.cpp:
508         (WebCore::certificateBundlePath): New method to retrieve the
509           proper certificate resource bundle path.
510         (WebCore::ResourceHandleManager::initializeHandle): Check for
511           the resource bundle and use if available to activate SSL
512           support.
513
514 2009-08-11  Maxime Simon  <simon.maxime@gmail.com>
515
516         Reviewed by Eric Seidel.
517
518         [Haiku] Use Clipboard::create() instead of the constructor of Clipboard.
519         https://bugs.webkit.org/show_bug.cgi?id=28127
520
521         * editing/haiku/EditorHaiku.cpp:
522         (WebCore::Editor::newGeneralClipboard):
523         * page/haiku/EventHandlerHaiku.cpp:
524         (WebCore::EventHandler::passWheelEventToWidget):
525         (WebCore::EventHandler::createDraggingClipboard):
526         * platform/haiku/ClipboardHaiku.cpp: Style cleanup. There were many whitespace end of lines.
527         (WebCore::ClipboardHaiku::ClipboardHaiku):
528         (WebCore::ClipboardHaiku::clearAllData):
529         (WebCore::ClipboardHaiku::getData):
530         (WebCore::ClipboardHaiku::setData):
531         (WebCore::ClipboardHaiku::types):
532         (WebCore::ClipboardHaiku::dragLocation):
533         (WebCore::ClipboardHaiku::dragImage):
534         (WebCore::ClipboardHaiku::setDragImage):
535         (WebCore::ClipboardHaiku::dragImageElement):
536         (WebCore::ClipboardHaiku::createDragImage):
537         (WebCore::ClipboardHaiku::declareAndWriteDragImage):
538         (WebCore::ClipboardHaiku::writeURL):
539         (WebCore::ClipboardHaiku::writeRange):
540         (WebCore::ClipboardHaiku::hasData):
541         * platform/haiku/DragDataHaiku.cpp:
542         (WebCore::DragData::createClipboard):
543
544 2009-08-11  Drew Wilson  <atwilson@google.com>
545
546         Reviewed by NOBODY (build break).
547
548         Speculative GTK build fix
549
550         * GNUmakefile.am:
551         Added missing .idl file, and added notifications directory to IDL_PATH.
552
553 2009-08-11  Drew Wilson  <atwilson@google.com>
554
555         Reviewed by NOBODY (build break).
556
557         Speculative Windows build fix
558
559         * WebCore.vcproj/WebCore.vcproj:
560         Added missing build steps for non-debug targets.
561
562 2009-08-11  Drew Wilson <atwilson@google.com>
563
564         Reviewed by NOBODY (build break)
565
566         Speculative build fix for Qt build.
567
568         * WebCore.pro: Added /notifications to include path
569
570 2009-08-11  John Gregg  <johnnyg@google.com>
571
572         Reviewed by Maciej Stachowiak.
573
574         Desktop Notifications API
575         https://bugs.webkit.org/show_bug.cgi?id=25463
576
577         Adds an implementation of desktop notifications, behind the compile-time
578         flag ENABLE(NOTIFICATIONS).  This code simply relays calls on the JavaScript
579         API through a NotificationProvider interface, which must provide the services
580         to actually notify the user and manage the desktop.  This provider is injected
581         into WebKit through the ChromeClient for normal page contexts and through the
582         WorkerThread for worker contexts.
583
584         A permissions API is defined on a per-origin basis, which allows a web page
585         to check if its origin is allowed to show desktop notifications, and to request
586         permission for its origin.
587
588         * Configurations/FeatureDefines.xcconfig:
589         * DerivedSources.cpp:
590         * DerivedSources.make:
591         * GNUmakefile.am:
592         * WebCore.vcproj/WebCore.vcproj:
593         * WebCore.vcproj/WebCoreCommon.vsprops:
594         * WebCore.xcodeproj/project.pbxproj:
595         * bindings/js/JSDOMWindowCustom.cpp:
596         * bindings/js/JSDesktopNotificationsCustom.cpp: Added.
597         (WebCore::JSNotificationCenter::requestPermission):
598         (WebCore::JSNotification::addEventListener):
599         (WebCore::JSNotification::removeEventListener):
600         * bindings/js/JSEventTarget.cpp:
601         (WebCore::toJS):
602         (WebCore::toEventTarget):
603         * dom/EventTarget.cpp:
604         (WebCore::EventTarget::toNotification):
605         * dom/EventTarget.h:
606         * loader/EmptyClients.h:
607         (WebCore::EmptyChromeClient::notificationPresenter):
608         * notifications: Added.
609         * notifications/Notification.cpp: Added.
610         (WebCore::Notification::Notification):
611         (WebCore::Notification::~Notification):
612         (WebCore::Notification::show):
613         (WebCore::Notification::cancel):
614         (WebCore::Notification::ondisplay):
615         (WebCore::Notification::setOndisplay):
616         (WebCore::Notification::onerror):
617         (WebCore::Notification::setOnerror):
618         (WebCore::Notification::onclose):
619         (WebCore::Notification::setOnclose):
620         (WebCore::Notification::getAttributeEventListener):
621         (WebCore::Notification::setAttributeEventListener):
622         (WebCore::Notification::clearAttributeEventListener):
623         (WebCore::Notification::dispatchDisplayEvent):
624         (WebCore::Notification::dispatchErrorEvent):
625         (WebCore::Notification::dispatchCloseEvent):
626         (WebCore::Notification::addEventListener):
627         (WebCore::Notification::removeEventListener):
628         (WebCore::Notification::handleEvent):
629         (WebCore::Notification::dispatchEvent):
630         * notifications/Notification.h: Added.
631         (WebCore::Notification::create):
632         (WebCore::Notification::isHTML):
633         (WebCore::Notification::url):
634         (WebCore::Notification::contents):
635         (WebCore::Notification::scriptExecutionContext):
636         (WebCore::Notification::toNotification):
637         (WebCore::Notification::refEventTarget):
638         (WebCore::Notification::derefEventTarget):
639         * notifications/Notification.idl: Added.
640         * notifications/NotificationCenter.cpp: Added.
641         (WebCore::NotificationCenter::NotificationCenter):
642         (WebCore::NotificationCenter::checkPermission):
643         (WebCore::NotificationCenter::requestPermission):
644         * notifications/NotificationCenter.h: Added.
645         (WebCore::NotificationCenter::create):
646         (WebCore::NotificationCenter::createHTMLNotification):
647         (WebCore::NotificationCenter::createNotification):
648         (WebCore::NotificationCenter::context):
649         (WebCore::NotificationCenter::presenter):
650         * notifications/NotificationCenter.idl: Added.
651         * notifications/NotificationContents.h: Added.
652         (WebCore::NotificationContents::NotificationContents):
653         (WebCore::NotificationContents::icon):
654         (WebCore::NotificationContents::title):
655         (WebCore::NotificationContents::body):
656         * notifications/NotificationPresenter.h: Added.
657         (WebCore::NotificationPresenter::):
658         (WebCore::NotificationPresenter::~NotificationPresenter):
659         * page/Chrome.cpp:
660         (WebCore::Chrome::notificationPresenter):
661         * page/Chrome.h:
662         * page/ChromeClient.h:
663         * page/DOMWindow.cpp:
664         (WebCore::DOMWindow::clear):
665         (WebCore::DOMWindow::webkitNotifications):
666         * page/DOMWindow.h:
667         * page/DOMWindow.idl:
668         * page/Page.h:
669         * workers/WorkerContext.cpp:
670         (WebCore::WorkerContext::~WorkerContext):
671         (WebCore::WorkerContext::webkitNotifications):
672         * workers/WorkerContext.h:
673         * workers/WorkerContext.idl:
674         * workers/WorkerThread.h:
675         (WebCore::WorkerThread::getNotificationPresenter):
676         (WebCore::WorkerThread::setNotificationPresenter):
677
678 2009-08-11  Joseph Pecoraro  <joepeck02@gmail.com>
679
680         Reviewed by Timothy Hatcher.
681
682         Inspector: Console Drawer is Toggling instead of Staying Open
683         https://bugs.webkit.org/show_bug.cgi?id=28115
684
685         * inspector/front-end/Drawer.js:
686         (WebInspector.Drawer.prototype.showView): ensures the drawer will be open and showing the provided view
687         * inspector/front-end/inspector.js:
688         (WebInspector.showConsole): usees the new showView to guarantee the Drawer will be open
689         (WebInspector.showChanges): uses the new showView guarantee the Drawer will be open
690
691 2009-08-11  Nikolas Zimmermann  <nikolas.zimmermann@torchmobile.com>
692
693         Reviewed by George Staikos.
694
695         [WML] WMLPageState is not allowed to store the active card, it needs to be done per document
696         https://bugs.webkit.org/show_bug.cgi?id=28180
697
698         Don't store the active WMLCardElement in WMLPageState, but in WMLDocument.
699         Otherwhise this may lead to crashes related to intrinsic event exeuction.
700
701         Unfortunately select elements aren't testable by the layout tests, so adding
702         a new manual test reproducing the crash.
703
704         * manual-tests/wml/select-onpick-event-crash.wml: Added.
705         * wml/WMLCardElement.cpp:
706         (WebCore::WMLCardElement::determineActiveCard):
707         * wml/WMLDoElement.cpp:
708         (WebCore::WMLDoElement::defaultEventHandler):
709         * wml/WMLDocument.cpp:
710         (WebCore::WMLDocument::finishedParsing):
711         * wml/WMLDocument.h:
712         (WebCore::WMLDocument::activeCard):
713         * wml/WMLGoElement.cpp:
714         (WebCore::WMLGoElement::executeTask):
715         * wml/WMLPageState.cpp:
716         (WebCore::WMLPageState::WMLPageState):
717         * wml/WMLPageState.h:
718         * wml/WMLPrevElement.cpp:
719         (WebCore::WMLPrevElement::executeTask):
720         * wml/WMLRefreshElement.cpp:
721         (WebCore::WMLRefreshElement::executeTask):
722
723 2009-08-07  Peter Kasting  <pkasting@google.com>
724
725         Reviewed by Eric Seidel.
726
727         https://bugs.webkit.org/show_bug.cgi?id=28073
728         Treat icons with no bit count and no color count as 256-color for
729         purposes of quality ranking.  Also fix a couple cases of a style
730         violation.
731
732         Test: fast/images/icon-0colors.html
733
734         * platform/image-decoders/ico/ICOImageDecoder.cpp:
735         (WebCore::ICOImageDecoder::processDirectory):
736         (WebCore::ICOImageDecoder::readDirectoryEntry):
737
738 2009-08-11  Drew Wilson  <atwilson@google.com>
739
740         Reviewed by David Levin.
741
742         Need to refactor WorkerObjectProxy.
743         https://bugs.webkit.org/show_bug.cgi?id=28136
744
745         Added WorkerReportingProxy for reporting worker state (exceptions, console messages, thread exited) to the parent.
746
747         Existing tests are sufficient, as this is only a refactoring.
748
749         * GNUmakefile.am:
750         Added WorkerReportingProxy.h to build.
751         * WebCore.gypi:
752         Added WorkerReportingProxy.h to build.
753         * WebCore.vcproj/WebCore.vcproj:
754         Added WorkerReportingProxy.h to build.
755         * WebCore.xcodeproj/project.pbxproj:
756         Added WorkerReportingProxy.h to build.
757         * workers/DedicatedWorkerContext.cpp:
758         * workers/DedicatedWorkerContext.h:
759         Removed addMessage/forwardException() APIs - now handled by WorkerReportingProxy.
760         * workers/DedicatedWorkerThread.cpp:
761         (WebCore::DedicatedWorkerThread::DedicatedWorkerThread):
762         Changed constructor to pass WorkerReportingProxy to base class.
763         * workers/DefaultSharedWorkerRepository.cpp:
764         Updated SharedWorkerProxy to implement WorkerReportingProxy interface.
765         (WebCore::SharedWorkerProxy::postExceptionToWorkerObject):
766         (WebCore::SharedWorkerProxy::postConsoleMessageToWorkerObject):
767         (WebCore::SharedWorkerProxy::workerContextClosed):
768         (WebCore::SharedWorkerProxy::workerContextDestroyed):
769         (WebCore::DefaultSharedWorkerRepository::workerScriptLoaded):
770         Now passes in WorkerReportingProxy when creating SharedWorkerThread.
771         * workers/SharedWorkerContext.cpp:
772         * workers/SharedWorkerContext.h:
773         Removed addMessage/forwardException() APIs - now handled by WorkerReportingProxy.
774         * workers/SharedWorkerThread.cpp:
775         (WebCore::SharedWorkerThread::create):
776         (WebCore::SharedWorkerThread::SharedWorkerThread):
777         Passes WorkerReportingProxy to base class constructor.
778         * workers/SharedWorkerThread.h:
779         Constructor now takes a WorkerReportingProxy.
780         * workers/WorkerContext.cpp:
781         (WebCore::WorkerContext::~WorkerContext):
782         Moved code that calls workerContextDestroyed() into base class so shared workers share this functionality.
783         (WebCore::WorkerContext::close):
784         Now notifies WorkerReportingProxy when the thread is closing.
785         (WebCore::WorkerContext::reportException):
786         Reports exceptions via WorkerReportingProxy.
787         (WebCore::WorkerContext::addMessage):
788         Reports console messages via WorkerReportingProxy.
789         * workers/WorkerContext.h:
790         * workers/WorkerObjectProxy.h:
791         (WebCore::WorkerObjectProxy::workerContextClosed):
792         Default empty implementation for dedicated workers.
793         * workers/WorkerReportingProxy.h: Added.
794         Base interface that contains APIs moved from WorkerObjectProxy.
795         (WebCore::WorkerReportingProxy::~WorkerReportingProxy):
796         * workers/WorkerThread.cpp:
797         (WebCore::WorkerThread::WorkerThread):
798         Updated constructor to accept a WorkerReportingProxy.
799         * workers/WorkerThread.h:
800         (WebCore::WorkerThread::workerReportingProxy):
801
802 2009-08-11  Simon Hausmann  <simon.hausmann@nokia.com>
803
804         Reviewed by NOBODY (build fix).
805
806         Fix the Qt build after r47022.
807
808         Use the new markChildren() pattern for marking aggregate/child objects.
809
810         * bridge/qt/qt_instance.cpp:
811         (JSC::Bindings::QtRuntimeObjectImp::markChildren):
812         (JSC::Bindings::QtInstance::markAggregate):
813         * bridge/qt/qt_instance.h:
814         * bridge/qt/qt_runtime.cpp:
815         (JSC::Bindings::QtRuntimeMetaMethod::markChildren):
816         * bridge/qt/qt_runtime.h:
817
818 2009-08-11  Simon Hausmann  <simon.hausmann@nokia.com>
819
820         Reviewed by Holger Freyther.
821
822         Fix the build on the Qt build bot by making the generated JS bindings
823         files depend on the code generator itself.
824
825         * WebCore.pro:
826
827 2009-08-07  Oliver Hunt  <oliver@apple.com>
828
829         Reviewed by Sam Weinig
830
831         Stack overflow crash in JavaScript garbage collector mark pass
832         https://bugs.webkit.org/show_bug.cgi?id=12216
833
834         Make WebCore use the new iterative marking logic.
835
836         Tests: fast/js/nested-object-gc.html
837
838         * bindings/js/JSAbstractWorkerCustom.cpp:
839         (WebCore::JSAbstractWorker::markChildren):
840         * bindings/js/JSDOMApplicationCacheCustom.cpp:
841         (WebCore::JSDOMApplicationCache::markChildren):
842         * bindings/js/JSDOMBinding.cpp:
843         (WebCore::markDOMNodesForDocument):
844         (WebCore::markActiveObjectsForContext):
845         (WebCore::markDOMObjectWrapper):
846         * bindings/js/JSDOMBinding.h:
847         (WebCore::DOMObjectWithGlobalPointer::markChildren):
848         * bindings/js/JSDOMGlobalObject.cpp:
849         (WebCore::JSDOMGlobalObject::markChildren):
850         * bindings/js/JSDOMGlobalObject.h:
851         * bindings/js/JSDOMWindowCustom.cpp:
852         (WebCore::JSDOMWindow::markChildren):
853         * bindings/js/JSDOMWindowShell.cpp:
854         (WebCore::JSDOMWindowShell::markChildren):
855         * bindings/js/JSDOMWindowShell.h:
856         * bindings/js/JSDedicatedWorkerContextCustom.cpp:
857         (WebCore::JSDedicatedWorkerContext::markChildren):
858         * bindings/js/JSDocumentCustom.cpp:
859         (WebCore::JSDocument::markChildren):
860         * bindings/js/JSEventListener.cpp:
861         (WebCore::JSEventListener::markJSFunction):
862         * bindings/js/JSEventListener.h:
863         * bindings/js/JSMessageChannelCustom.cpp:
864         (WebCore::JSMessageChannel::markChildren):
865         * bindings/js/JSMessagePortCustom.cpp:
866         (WebCore::JSMessagePort::markChildren):
867         * bindings/js/JSNavigatorCustom.cpp:
868         (WebCore::JSNavigator::markChildren):
869         * bindings/js/JSNodeCustom.cpp:
870         (WebCore::JSNode::markChildren):
871         * bindings/js/JSNodeFilterCondition.cpp:
872         (WebCore::JSNodeFilterCondition::markAggregate):
873         * bindings/js/JSNodeFilterCondition.h:
874         * bindings/js/JSNodeFilterCustom.cpp:
875         (WebCore::JSNodeFilter::markChildren):
876         * bindings/js/JSNodeIteratorCustom.cpp:
877         (WebCore::JSNodeIterator::markChildren):
878         * bindings/js/JSQuarantinedObjectWrapper.cpp:
879         (WebCore::JSQuarantinedObjectWrapper::markChildren):
880         * bindings/js/JSQuarantinedObjectWrapper.h:
881         * bindings/js/JSSVGElementInstanceCustom.cpp:
882         (WebCore::JSSVGElementInstance::markChildren):
883         * bindings/js/JSSharedWorkerCustom.cpp:
884         (WebCore::JSSharedWorker::markChildren):
885         * bindings/js/JSStyleSheetCustom.cpp:
886         (WebCore::JSStyleSheet::markChildren):
887         * bindings/js/JSTreeWalkerCustom.cpp:
888         (WebCore::JSTreeWalker::markChildren):
889         * bindings/js/JSWebSocketCustom.cpp:
890         (WebCore::JSWebSocket::markChildren):
891         * bindings/js/JSWorkerContextCustom.cpp:
892         (WebCore::JSWorkerContext::markChildren):
893         * bindings/js/JSWorkerCustom.cpp:
894         (WebCore::JSWorker::markChildren):
895         * bindings/js/JSXMLHttpRequestCustom.cpp:
896         (WebCore::JSXMLHttpRequest::markChildren):
897         * bindings/js/JSXMLHttpRequestUploadCustom.cpp:
898         (WebCore::JSXMLHttpRequestUpload::markChildren):
899         * bindings/scripts/CodeGeneratorJS.pm:
900         * dom/EventListener.h:
901         (WebCore::EventListener::markJSFunction):
902         (WebCore::markIfNotNull):
903         * dom/NodeFilter.h:
904         (WebCore::NodeFilter::markAggregate):
905         * dom/NodeFilterCondition.h:
906         (WebCore::NodeFilterCondition::markAggregate):
907         * dom/RegisteredEventListener.h:
908         (WebCore::markEventListeners):
909         * page/DOMWindow.h:
910         * workers/WorkerContext.h:
911
912 2009-08-10  Jeremy Orlow  <jorlow@chromium.org>
913
914         Reviewed by Eric Seidel.
915
916         Renamed all V8 NPN_ functions to _NPN_ to match JSC and make them "private".
917         https://bugs.webkit.org/show_bug.cgi?id=28089
918
919         Rename all the NPN_foo functions to _NPN_foo so that they can't directly be
920         called by mistake.  This roughly matches the way JSC does it, which is an
921         additional advantage.
922
923         * bindings/v8/NPV8Object.cpp:
924         (npCreateV8ScriptObject):
925         (_NPN_Invoke):
926         (_NPN_InvokeDefault):
927         (_NPN_Evaluate):
928         (_NPN_EvaluateHelper):
929         (_NPN_GetProperty):
930         (_NPN_SetProperty):
931         (_NPN_RemoveProperty):
932         (_NPN_HasProperty):
933         (_NPN_HasMethod):
934         (_NPN_SetException):
935         (_NPN_Enumerate):
936         (_NPN_Construct):
937         * bindings/v8/ScriptController.cpp:
938         (WebCore::ScriptController::clearScriptObjects):
939         (WebCore::ScriptController::createScriptInstanceForWidget):
940         (WebCore::ScriptController::cleanupScriptObjectsForPlugin):
941         * bindings/v8/V8NPObject.cpp:
942         (npObjectInvokeImpl):
943         (npObjectGetProperty):
944         (npObjectIndexedPropertyGetter):
945         (npObjectGetIndexedProperty):
946         (npObjectSetProperty):
947         (npObjectIndexedPropertySetter):
948         (npObjectSetIndexedProperty):
949         (weakNPObjectCallback):
950         (createV8ObjectForNPObject):
951         (forgetV8ObjectForNPObject):
952         * bindings/v8/V8NPUtils.cpp:
953         (getStringIdentifier):
954         * bindings/v8/npruntime.cpp:
955         * bindings/v8/npruntime_impl.h:
956
957 2009-08-10  Jeremy Orlow  <jorlow@chromium.org>
958
959         Reviewed by Brady Eidson.
960
961         Change ___Storage.key() to match current spec behavior.
962         https://bugs.webkit.org/show_bug.cgi?id=28112
963
964         The current WebStorage spec says that ___Storage.key() should return null when
965         the index is out of bounds, rather than an exception.  A bunch of logic can be
966         simplified after this change.
967
968         * bindings/js/JSStorageCustom.cpp:
969         (WebCore::JSStorage::getPropertyNames):
970         * bindings/v8/custom/V8StorageCustom.cpp:
971         (WebCore::V8Custom::v8StorageNamedPropertyEnumerator):
972         * storage/Storage.cpp:
973         (WebCore::Storage::key):
974         * storage/Storage.h:
975         * storage/Storage.idl:
976         * storage/StorageArea.h:
977         * storage/StorageAreaImpl.cpp:
978         (WebCore::StorageAreaImpl::key):
979         * storage/StorageAreaImpl.h:
980         * storage/StorageMap.cpp:
981         (WebCore::StorageMap::key):
982         * storage/StorageMap.h:
983
984 2009-08-07  Michael Nordman  <michaeln@google.com>
985
986         Reviewed by Darin Fisher.
987
988         https://bugs.webkit.org/show_bug.cgi?id=28087
989
990         Mods for a chrome specific impl of ApplicationCacheHost.
991
992         * The public section of the interface is the same, but we use
993         PLATFORM(CHROMIUM) to identify which parts of the private
994         section are shared. The chrome specific internals are encapsulated
995         in a seperate ApplicationCacheHostInternal class. WebCore common
996         code only contains a forward reference to this class.
997
998         * Cleanup a couple of stale comments.
999
1000         * Have window.applicationCache return null to script when the
1001         feature is disabled in the preferences.
1002         
1003         No new tests.
1004
1005         * loader/appcache/ApplicationCacheHost.cpp:
1006         * loader/appcache/ApplicationCacheHost.h:
1007         (WebCore::ApplicationCacheHost::documentLoader):
1008         * page/DOMWindow.cpp:
1009         (WebCore::DOMWindow::applicationCache):
1010
1011 2009-08-10  Crystal Zhang  <crystal.zhang@torchmobile.com>
1012
1013         Reviewed by George Staikos.
1014
1015         Implement GraphicsContext::fillRoundRect() for WINCE port
1016         https://bugs.webkit.org/show_bug.cgi?id=27842
1017
1018         * platform/graphics/GraphicsContext.h:
1019         * platform/graphics/wince/GraphicsContextWince.cpp:
1020         (WebCore::rectCenterPoint):
1021         (WebCore::GraphicsContext::fillRoundedRect):
1022         (WebCore::GraphicsContext::drawRoundCorner):
1023
1024 2009-08-10  Anthony Ricaud  <rik@webkit.org>
1025
1026         Reviewed by Timothy Hatcher.
1027
1028         Inspector Resources / Graphs should support filtering
1029         https://bugs.webkit.org/show_bug.cgi?id=20629
1030
1031         Introduces a filter bar for resources.
1032
1033         Thanks to Matt Lilek for the CSS scope bar.
1034
1035         * English.lproj/localizedStrings.js:
1036         * inspector/front-end/ResourcesPanel.js:
1037         (WebInspector.ResourcesPanel.createFilterElement):
1038         (WebInspector.ResourcesPanel):
1039         (WebInspector.ResourcesPanel.prototype.toolbarItemClass.categoryOrder.filter):
1040         (WebInspector.ResourcesPanel.prototype._updateFilter):
1041         (WebInspector.ResourcesPanel.prototype._updateSummaryGraph):
1042         * inspector/front-end/inspector.css:
1043         * inspector/front-end/inspector.js:
1044         (WebInspector.loaded):
1045
1046 2009-08-10  Brent Fulgham  <bfulgham@webkit.org>
1047
1048         Unreviewed build correction after http://trac.webkit.org/changeset/46978
1049
1050         * platform/network/curl/ResourceHandleManager.cpp:
1051         (WebCore::ResourceHandleManager::initializeHandle):  Correct
1052          deprecated removeRef to new removeFragmentIdentifier.
1053
1054 2009-08-07  Ryosuke Niwa  <rniwa@webkit.org>
1055
1056         Reviewed by Justin Garcia.
1057
1058         Background color formatting lost on enter
1059         https://bugs.webkit.org/show_bug.cgi?id=20348
1060
1061         This patch makes background color be preserved during editing.
1062         In particular, editingStyleAtPosition would include the background color when obtaining styles.
1063
1064         * editing/ApplyStyleCommand.cpp:
1065         (WebCore::): Added CSSPropertyBackgroundColor to editingStyleProperties
1066
1067 2009-08-10  Kenneth Rohde Christiansen  <kenneth@webkit.org>
1068
1069         Reviewed by Simon Hausmann.
1070
1071         Stop sending QEvent::CursorChange to Qt for mouse move.
1072
1073         Verify if the cursor didn't change in WidgetQt::setCursor,
1074         just like the mac port does.
1075
1076         Thanks to Adriano Rezendo for spotting and debugging the
1077         issue.
1078
1079         * platform/qt/WidgetQt.cpp:
1080         (WebCore::Widget::setCursor):
1081
1082 2009-08-10  Alexey Proskuryakov  <ap@apple.com>
1083
1084         Reviewed by Brady Eidson.
1085
1086         https://bugs.webkit.org/show_bug.cgi?id=28165
1087         Application cache maximum size cannot be set before the database is opened
1088
1089         * loader/appcache/ApplicationCacheStorage.cpp:
1090         (WebCore::ApplicationCacheStorage::vacuumDatabaseFile): Open appcache database if it isn't
1091         open yet.
1092
1093 2009-08-10  Vitaly Repeshko  <vitalyr@quad.spb.corp.google.com>
1094
1095         Reviewed by Dimitri Glazkov.
1096
1097         [V8] Fix memory leak in node event listeners. See http://crbug.com/17400.
1098         https://bugs.webkit.org/show_bug.cgi?id=28156
1099
1100         * bindings/scripts/CodeGeneratorV8.pm: Custom event handler accessors now apply to all Node descendants.
1101         * bindings/v8/V8AbstractEventListener.h:
1102         (WebCore::V8AbstractEventListener::isObjectListener): Added virtual method to detect listeners that have weak references to JS objects.
1103         * bindings/v8/V8DOMWrapper.cpp:
1104         (WebCore::V8DOMWrapper::getTemplate):
1105         * bindings/v8/V8ObjectEventListener.cpp:
1106         * bindings/v8/V8ObjectEventListener.h:
1107         (WebCore::V8ObjectEventListener::isObjectListener):
1108         * bindings/v8/V8Utilities.cpp:
1109         (WebCore::removeHiddenDependency):
1110         * bindings/v8/custom/V8CustomBinding.h:
1111         * bindings/v8/custom/V8ElementCustom.cpp:
1112         * bindings/v8/custom/V8NodeCustom.cpp: Moved custom accessors from V8ElementCustom.cpp.
1113         (WebCore::toEventType):
1114         (WebCore::getEventListener):
1115         (WebCore::ACCESSOR_SETTER):
1116         (WebCore::ACCESSOR_GETTER):
1117         (WebCore::CALLBACK_FUNC_DECL):
1118         * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
1119         (WebCore::getEventListener): Made static.
1120
1121 2009-08-10  Jeremy Orlow  <jorlow@chromium.org>
1122
1123         Reviewed by Darin Fisher.
1124
1125         Cleanup DOM Storage namespace shutdown code + usage of security origin.
1126         https://bugs.webkit.org/show_bug.cgi?id=28094
1127
1128         If a storage namespace is not explicitly closed, be sure to do so on
1129         destruction of the object.  In addition, the close call should wait
1130         on the background thread finishing its syncing.  (Not doing so is actually
1131         a regression from the original LocalStorage code.)
1132
1133         There's no point to passing in the SecurityOrigin when copying a storage
1134         area since what was passed in is exactly what is stored within each
1135         storage area.  In addition, the non-copy constructor should take in a
1136         PassRefPtr rather than a pointer since that pointer was only passed into
1137         the constuctor for RefPtr's anyway.
1138
1139         * storage/StorageAreaImpl.cpp:
1140         (WebCore::StorageAreaImpl::StorageAreaImpl):
1141         (WebCore::StorageAreaImpl::copy):
1142         * storage/StorageAreaImpl.h:
1143         * storage/StorageNamespaceImpl.cpp:
1144         (WebCore::StorageNamespaceImpl::StorageNamespaceImpl):
1145         (WebCore::StorageNamespaceImpl::~StorageNamespaceImpl):
1146         (WebCore::StorageNamespaceImpl::copy):
1147         (WebCore::StorageNamespaceImpl::close):
1148         * storage/StorageNamespaceImpl.h:
1149
1150 2009-08-10  Nikolas Zimmermann  <nikolas.zimmermann@torchmobile.com>
1151
1152         Not reviewed, build fix.
1153
1154         Rename ref() to fragmentIdentifier() in the wml/ subdirectory.
1155
1156         * wml/WMLCardElement.cpp:
1157         (WebCore::WMLCardElement::determineActiveCard):
1158         * wml/WMLGoElement.cpp:
1159         (WebCore::WMLGoElement::executeTask):
1160         * wml/WMLPageState.cpp:
1161         (WebCore::WMLPageState::canAccessDeck):
1162
1163 2009-08-10  Steve Falkenburg  <sfalken@apple.com>
1164
1165         Windows build fix.
1166
1167         Exclude JSMedia.cpp from build since it is included in DerivedSources.cpp.
1168         Fixes linker warnings.        
1169         
1170         Corrected spelling of JSInspectorBackend.cpp.
1171         
1172         Other changes related to actually using a Visual Studio to open/save the vcproj file.
1173
1174         * WebCore.vcproj/WebCore.vcproj:
1175
1176 2009-08-10  Sam Weinig  <sam@webkit.org>
1177
1178         Reviewed by Anders Carlsson.
1179
1180         Remove a dead #define.
1181
1182         * bindings/js/JSDOMBinding.cpp:
1183
1184 2009-08-10  Dimitri Glazkov  <dglazkov@chromium.org>
1185
1186         Unreviewed, build fix.
1187
1188         [Chromium] Update KURLGoogle for ref* method renames in
1189         http://trac.webkit.org/changeset/46978.
1190         https://bugs.webkit.org/show_bug.cgi?id=28084
1191
1192         * bindings/v8/custom/V8LocationCustom.cpp:
1193         (WebCore::ACCESSOR_SETTER): Renamed ref and setRef to fragmentIdentifier and
1194             setFragmentIdentifier, respectively.
1195         * platform/KURLGoogle.cpp: Ditto, plus all other ref* method names.
1196
1197 2009-08-10  Jan Michael Alonzo  <jmalonzo@webkit.org>
1198
1199         [Gtk] Unreviewed. Fix the nit as suggested by Darin in bug #28144
1200         for r46989.
1201
1202         * platform/network/soup/ResourceHandleSoup.cpp:
1203         (WebCore::finishedCallback):
1204
1205 2009-08-10  John Kjellberg  <john.kjellberg@power.alstom.com>
1206
1207         Reviewed by Darin Adler.
1208
1209         Memory leak in error handling code for SOUP interface
1210         https://bugs.webkit.org/show_bug.cgi?id=28144
1211
1212         Freed memory leaked in error handling code for soup requests.
1213
1214         * platform/network/soup/ResourceHandleSoup.cpp:
1215         (WebCore::finishedCallback):
1216         (WebCore::):
1217
1218 2009-08-10  Dimitri Glazkov  <dglazkov@chromium.org>
1219
1220         Reviewed by Darin Adler.
1221
1222         Provide graceful handling of the situation when an embedder invokes
1223         visited link update methods before a Page constructor has been called.
1224         https://bugs.webkit.org/show_bug.cgi?id=28149
1225
1226         * page/Page.cpp:
1227         (WebCore::Page::allVisitedStateChanged): Added a null-check for allPages.
1228         (WebCore::Page::visitedStateChanged): Ditto.
1229
1230 2009-08-10  Xan Lopez  <xlopez@igalia.com>
1231
1232         Fix GTK+ build.
1233
1234         * platform/network/soup/ResourceHandleSoup.cpp:
1235         (WebCore::):
1236
1237 2009-08-10  Dan Bernstein  <mitz@apple.com>
1238
1239         Reviewed by Anders Carlsson.
1240
1241         Remove the redundant, Windows CE-only GlyphBuffer::advnaceData()
1242
1243         * platform/graphics/GlyphBuffer.h: Removed advanceData().
1244         * platform/graphics/wince/GraphicsContextWince.cpp:
1245         (WebCore::GraphicsContext::drawText): Changed to use advances(from)
1246             instead of advanceData() + from.
1247
1248 2009-08-10  Xan Lopez  <xlopez@igalia.com>
1249
1250         Reviewed by Gustavo Noronha.
1251
1252         Remove workaround for older libsoup versions.
1253
1254         * platform/network/soup/ResourceHandleSoup.cpp:
1255         (WebCore::fillResponseFromMessage):
1256
1257 2009-08-10  Xan Lopez  <xlopez@igalia.com>
1258
1259         Reviewed by Gustavo Noronha.
1260
1261         Let startHttp validate the URI instead of doing it, with potential
1262         crashes, in ::start.
1263
1264         * platform/network/soup/ResourceHandleSoup.cpp:
1265         (WebCore::startHttp):
1266
1267 2009-08-10  Darin Adler  <darin@apple.com>
1268
1269         Reviewed by Dan Bernstein.
1270
1271         When empty <input> is focused, getSelection() exposes shadow tree nodes
1272         https://bugs.webkit.org/show_bug.cgi?id=15903
1273
1274         Test: fast/forms/shadow-tree-exposure.html
1275
1276         * page/DOMSelection.cpp:
1277         (WebCore::selectionShadowAncestor): Added.
1278         (WebCore::DOMSelection::anchorNode): Return the parent of the shadow
1279         ancestor if the selection is in a shadow tree. Matches Firefox.
1280         (WebCore::DOMSelection::anchorOffset): Return the index of the shadow
1281         ancestor if the selection is in a shadow tree. Matches Firefox.
1282         (WebCore::DOMSelection::focusNode): Ditto.
1283         (WebCore::DOMSelection::focusOffset): Ditto.
1284         (WebCore::DOMSelection::baseNode): More of the same, but since this
1285         is a WebKit-invented property, it does not match Firefox.
1286         (WebCore::DOMSelection::baseOffset): Ditto.
1287         (WebCore::DOMSelection::extentNode): Ditto.
1288         (WebCore::DOMSelection::extentOffset): Ditto.
1289         (WebCore::DOMSelection::isCollapsed): Return true even when the
1290         selection is a range, if the selection is in the shadow tree.
1291         Matches Firefox. Also changed behavior when called and the frame
1292         is gone to return true instead of false which makes more sense.
1293         (WebCore::DOMSelection::empty): Use clear() just like the other
1294         selection-clearing function in this file does.
1295         (WebCore::DOMSelection::getRangeAt): Return a range that starts
1296         and ends before the shadow ancestor. Matches Firefox.
1297
1298 2009-08-10  Pavel Feldman  <pfeldman@chromium.org>
1299
1300         Reviewed by Timothy Hatcher.
1301
1302         Web Inspector: Make all status bar button images glyph-based.
1303
1304         https://bugs.webkit.org/show_bug.cgi?id=28124
1305
1306         * inspector/front-end/ElementsPanel.js:
1307         (WebInspector.ElementsPanel):
1308         * inspector/front-end/Images/clearConsoleButtonGlyph.png: Added.
1309         * inspector/front-end/Images/clearConsoleButtons.png: Removed.
1310         * inspector/front-end/Images/consoleButtonGlyph.png: Added.
1311         * inspector/front-end/Images/consoleButtons.png: Removed.
1312         * inspector/front-end/Images/dockButtonGlyph.png: Added.
1313         * inspector/front-end/Images/dockButtons.png: Removed.
1314         * inspector/front-end/Images/enableButtons.png: Removed.
1315         * inspector/front-end/Images/enableOutlineButtonGlyph.png: Added.
1316         * inspector/front-end/Images/enableSolidButtonGlyph.png: Added.
1317         * inspector/front-end/Images/excludeButtonGlyph.png: Added.
1318         * inspector/front-end/Images/excludeButtons.png: Removed.
1319         * inspector/front-end/Images/focusButtonGlyph.png: Added.
1320         * inspector/front-end/Images/focusButtons.png: Removed.
1321         * inspector/front-end/Images/largerResourcesButtonGlyph.png: Added.
1322         * inspector/front-end/Images/largerResourcesButtons.png: Removed.
1323         * inspector/front-end/Images/nodeSearchButtonGlyph.png: Added.
1324         * inspector/front-end/Images/nodeSearchButtons.png: Removed.
1325         * inspector/front-end/Images/pauseOnExceptionButtonGlyph.png: Added.
1326         * inspector/front-end/Images/pauseOnExceptionButtons.png: Removed.
1327         * inspector/front-end/Images/percentButtonGlyph.png: Added.
1328         * inspector/front-end/Images/percentButtons.png: Removed.
1329         * inspector/front-end/Images/recordButtonGlyph.png: Added.
1330         * inspector/front-end/Images/recordButtons.png: Removed.
1331         * inspector/front-end/Images/recordToggledButtonGlyph.png: Added.
1332         * inspector/front-end/Images/reloadButtonGlyph.png: Added.
1333         * inspector/front-end/Images/reloadButtons.png: Removed.
1334         * inspector/front-end/Images/undockButtonGlyph.png: Added.
1335         * inspector/front-end/Panel.js:
1336         (WebInspector.Panel.prototype.createStatusBarButton):
1337         * inspector/front-end/ProfilesPanel.js:
1338         (WebInspector.ProfilesPanel):
1339         * inspector/front-end/ResourcesPanel.js:
1340         (WebInspector.ResourcesPanel):
1341         * inspector/front-end/ScriptsPanel.js:
1342         (WebInspector.ScriptsPanel):
1343         * inspector/front-end/WebKit.qrc:
1344         * inspector/front-end/inspector.css:
1345         * inspector/front-end/inspector.html:
1346
1347 2009-08-07  Brady Eidson  <beidson@apple.com>
1348
1349         Reviewed by Darin Adler.
1350
1351         KURL ref() methods should be fragmentIdentifier() methods 
1352         https://bugs.webkit.org/show_bug.cgi?id=28084
1353
1354         In addition to the renames, also took the chance to replace all use of:
1355         setRef(String());
1356         with:
1357         removeFragmentIdentifier();
1358
1359         * platform/KURL.cpp:
1360         (WebCore::KURL::fragmentIdentifier):
1361         (WebCore::KURL::hasFragmentIdentifier):
1362         (WebCore::KURL::setFragmentIdentifier):
1363         (WebCore::KURL::removeFragmentIdentifier):
1364         (WebCore::KURL::prettyURL):
1365         (WebCore::equalIgnoringFragmentIdentifier):
1366         * platform/KURL.h:
1367
1368         * bindings/js/JSLocationCustom.cpp:
1369         (WebCore::JSLocation::setHash): Rework with new names, and to use the new equalIgnoringNullity() method.
1370
1371         * accessibility/AccessibilityRenderObject.cpp:
1372         (WebCore::AccessibilityRenderObject::internalLinkElement):
1373         * css/CSSCursorImageValue.cpp:
1374         (WebCore::isSVGCursorIdentifier):
1375         * history/HistoryItem.cpp:
1376         (WebCore::HistoryItem::isCurrentDocument):
1377         * html/HTMLAnchorElement.cpp:
1378         (WebCore::HTMLAnchorElement::hash):
1379         * html/HTMLFrameElementBase.cpp:
1380         (WebCore::HTMLFrameElementBase::isURLAllowed):
1381         * loader/FrameLoader.cpp:
1382         (WebCore::FrameLoader::begin):
1383         (WebCore::FrameLoader::gotoAnchor):
1384         (WebCore::FrameLoader::scheduleLocationChange):
1385         (WebCore::FrameLoader::scrollToAnchor):
1386         (WebCore::FrameLoader::shouldReload):
1387         (WebCore::FrameLoader::urlsMatchItem):
1388         * loader/appcache/ApplicationCache.cpp:
1389         (WebCore::ApplicationCache::resourceForURL):
1390         (WebCore::ApplicationCache::resourceForRequest):
1391         * loader/appcache/ApplicationCacheGroup.cpp:
1392         (WebCore::ApplicationCacheGroup::cacheForMainRequest):
1393         (WebCore::ApplicationCacheGroup::fallbackCacheForMainRequest):
1394         (WebCore::ApplicationCacheGroup::selectCache):
1395         (WebCore::ApplicationCacheGroup::finishedLoadingMainResource):
1396         (WebCore::ApplicationCacheGroup::didReceiveResponse):
1397         (WebCore::ApplicationCacheGroup::didFail):
1398         (WebCore::ApplicationCacheGroup::addEntry):
1399         * loader/appcache/ApplicationCacheResource.h:
1400         (WebCore::ApplicationCacheResource::create):
1401         * loader/appcache/ApplicationCacheStorage.cpp:
1402         (WebCore::ApplicationCacheStorage::findOrCreateCacheGroup):
1403         (WebCore::ApplicationCacheStorage::cacheGroupForURL):
1404         (WebCore::ApplicationCacheStorage::fallbackCacheGroupForURL):
1405         * loader/appcache/ManifestParser.cpp:
1406         (WebCore::parseManifest):
1407         * page/Location.cpp:
1408         (WebCore::Location::hash):
1409         * page/Page.cpp:
1410         (WebCore::Page::goToItem):
1411         * rendering/RenderPartObject.cpp:
1412         (WebCore::isURLAllowed):
1413         * workers/WorkerLocation.cpp:
1414         (WebCore::WorkerLocation::hash):
1415
1416 2009-08-10  Andy Shaw <andy.shaw@nokia.com>
1417
1418         Reviewed by Simon Hausmann.
1419
1420         Fix endless loop when the application is quit by a secondary thread during a sync xml http request.
1421
1422         Replace the m_finished state variable and the call to QCoreApplication::processEvents() with
1423         a dedicated QEventLoop, that can be terminated from within WebCoreSynchronousLoader as well
1424         as from Qt through its knowledge of globally registered eventloops.
1425
1426         There is no unit test for this bug as it would require exporting additional symbols and
1427         introduce the synchronous loader as global variable just for the test.
1428
1429         * platform/network/qt/ResourceHandleQt.cpp:
1430         (WebCore::WebCoreSynchronousLoader::didFinishLoading):
1431         (WebCore::WebCoreSynchronousLoader::didFail):
1432         (WebCore::WebCoreSynchronousLoader::waitForCompletion):
1433
1434 2009-08-10  Pavel Feldman  <pfeldman@chromium.org>
1435
1436         Reviewed by Timothy Hatcher.
1437
1438         WebInspector: Make properties inspection serialized.
1439
1440         https://bugs.webkit.org/show_bug.cgi?id=28078
1441
1442         * inspector/front-end/DOMAgent.js:
1443         (InspectorController.getPrototypes):
1444         (InspectorController.getProperties):
1445         * inspector/front-end/InjectedScript.js:
1446         (InjectedScript.getPrototypes):
1447         (InjectedScript.getProperties):
1448         (InjectedScript.setPropertyValue):
1449         * inspector/front-end/ObjectPropertiesSection.js:
1450         (WebInspector.ObjectRef):
1451         (WebInspector.ObjectPropertyRef):
1452         (WebInspector.ObjectPropertiesSection.prototype.onpopulate):
1453         (WebInspector.ObjectPropertiesSection.prototype.update.callback):
1454         (WebInspector.ObjectPropertiesSection.prototype.update):
1455         (WebInspector.ObjectPropertiesSection.prototype._update):
1456         (WebInspector.ObjectPropertyTreeElement.prototype.onpopulate.callback):
1457         (WebInspector.ObjectPropertyTreeElement.prototype.onpopulate):
1458         (WebInspector.ObjectPropertyTreeElement.prototype.onattach):
1459         (WebInspector.ObjectPropertyTreeElement.prototype.update):
1460         * inspector/front-end/PropertiesSidebarPane.js:
1461         (WebInspector.PropertiesSidebarPane.prototype.update.callback):
1462         (WebInspector.PropertiesSidebarPane.prototype.update):
1463
1464 2009-08-09  Nikolas Zimmermann  <nikolas.zimmermann@torchmobile.com>
1465
1466         Reviewed by George Staikos.
1467
1468         [WML] wml.css lacks <pre> support
1469         https://bugs.webkit.org/show_bug.cgi?id=28135
1470
1471         Add <pre> support for WML.
1472         Extended fast/wml/text-emphasis.wml to cover <pre> support.
1473
1474         * css/wml.css: <pre> section copied from html.css
1475
1476 2009-08-09  Nikolas Zimmermann  <nikolas.zimmermann@torchmobile.com>
1477
1478         Reviewed by Oliver Hunt.
1479
1480         Fix non-WML enabled builds. Remove ENABLE(WML) guards around the switch cases 'FrameLoadTypeBackWMLDeckNotAccessible'.
1481
1482         * loader/FrameLoader.cpp:
1483         (WebCore::isBackForwardLoadType):
1484         (WebCore::FrameLoader::restoreDocumentState):
1485         (WebCore::FrameLoader::transitionToCommitted):
1486         (WebCore::FrameLoader::loadItem):
1487
1488 2009-08-09  Nikolas Zimmermann  <nikolas.zimmermann@torchmobile.com>
1489
1490         Reviewed by George Staikos.
1491
1492         [WML] Deck access control is completly broken
1493         https://bugs.webkit.org/show_bug.cgi?id=27721
1494
1495         Rewrite WML deck access control, actually works now standalone and within LayoutTests.
1496         Added several new layout tests covering local & remote access support.
1497
1498         In order to detect WML task execution failures from within the WML layout tests a new
1499         method Console::lastWMLErrorMessage() has been added, returning the last recorded WML
1500         error message. Change WML log messages to dump to InspectorClient, just like it's done
1501         for HTML - we used to behave like JSMessageSource, which is wrong.
1502
1503         Tests: http/tests/wml/access-target-domain-deny.html
1504                http/tests/wml/access-target-path-deny.html
1505                http/tests/wml/access-target.html
1506                wml/access-target-deny.html
1507                wml/access-target.html
1508
1509         * inspector/ConsoleMessage.h:
1510         (WebCore::ConsoleMessage::source): Added public method to fetch the message source type.
1511         (WebCore::ConsoleMessage::message): Added public method to access the error message.
1512         * inspector/InspectorController.h:
1513         (WebCore::InspectorController::consoleMessages): Added for Console::lastWMLErrorMessage(), to be able to crawl through the list of dumped messages.
1514         * loader/FrameLoader.cpp: Recognize 'FrameLoadTypeBackWMLDeckNotAccessible', all guarded by ENABLE(WML).
1515         (WebCore::isBackForwardLoadType):
1516         (WebCore::FrameLoader::restoreDocumentState):
1517         (WebCore::FrameLoader::transitionToCommitted):
1518         (WebCore::FrameLoader::loadItem):
1519         * loader/FrameLoaderTypes.h:
1520         (WebCore::): Add new load type 'FrameLoadTypeBackWMLDeckNotAccessible', behaving like FrameLoadTypeBack plus WML specific information.
1521         * page/Console.cpp:
1522         (WebCore::Console::addMessage): Don't dump WML messages using ChromeClient (as it's done for JSMessageSource), but go through InspectorController.
1523         (WebCore::Console::lastWMLErrorMessage): Crawl InspectorController::consoleMssages() to look up the last WML error message, if present.
1524         * page/Console.h:
1525         * page/Console.idl: Add "[DontEnum] DOMString lastWMLErrorMessage()".
1526         * wml/WMLAccessElement.cpp: Store path/domain as member variables and pass them to WMLPageState once in insertedIntoDocument().
1527         (WebCore::WMLAccessElement::parseMappedAttribute):
1528         (WebCore::WMLAccessElement::insertedIntoDocument):
1529         * wml/WMLAccessElement.h:
1530         * wml/WMLCardElement.cpp: Handle 'FrameLoadTypeBackWMLDeckNotAccessible' as deck-entry method. Report WML error in current deck.
1531         (WebCore::WMLCardElement::handleIntrinsicEventIfNeeded):
1532         * wml/WMLDocument.cpp: Enable deck-access control in finishedParsing. Take care of method name changes in WMLPageState.
1533         (WebCore::WMLDocument::finishedParsing):
1534         (WebCore::WMLDocument::initialize):
1535         * wml/WMLErrorHandling.cpp: Never report 'WMLErrorDeckNotAccessible' messages through the tokenizer, that would alter the page into error state.
1536         (WebCore::reportWMLError):
1537         * wml/WMLPageState.cpp: Completly rewrote access path/domain parsing & deck-access control, strictly following the WML spec. All covered by tests.
1538         (WebCore::WMLPageState::WMLPageState):
1539         (WebCore::normalizedHostName):
1540         (WebCore::hostFromURL):
1541         (WebCore::urlForHistoryItem):
1542         (WebCore::tryAccessHistoryURLs):
1543         (WebCore::WMLPageState::processAccessControlData):
1544         (WebCore::WMLPageState::resetAccessControlData):
1545         (WebCore::WMLPageState::canAccessDeck):
1546         (WebCore::WMLPageState::hostIsAllowedToAccess):
1547         (WebCore::WMLPageState::pathIsAllowedToAccess):
1548         * wml/WMLPageState.h:
1549
1550 2009-08-09  Nikolas Zimmermann  <nikolas.zimmermann@torchmobile.com>
1551
1552         Reviewed by Maciej Stachowiak.
1553
1554         FrameLoadType / WebFrameLoadType enums are out of sync
1555         https://bugs.webkit.org/show_bug.cgi?id=28132
1556
1557         Modify FrameLoadType enum to match the order of WebFrameLoadType in WebFramePrivate.h / IWebFramePrivate.idl.
1558         The mac/win public API exposes the old 'FrameLoadTypeReloadAllowingStaleData' value, which resides between
1559         'FrameLoadTypeReload' and 'FrameLoadTypeSame'. Work around this problem, by assigning 'FrameLoadTypeSame = FrameLoadTypeReload + 2'.
1560
1561         Add a note to the FrameLoadType enum to keep it in sync with WebFramePrivate.h & IWebFramePrivate.idl.
1562
1563         * loader/FrameLoaderTypes.h:
1564         (WebCore::):
1565
1566 2009-08-09  Nikolas Zimmermann  <nikolas.zimmermann@torchmobile.com>
1567
1568         Reviewed by George Staikos.
1569
1570         [WML] manual-tests/wml/onevent-prev.wml crashes
1571         https://bugs.webkit.org/show_bug.cgi?id=27722
1572
1573         Fix intrinsic event execution, leading to crashes.
1574         First finish parsing the document, then execute the events. Not the other way round.
1575         -> exposes bugs all over the WML layout tests, which relied on that quirk.
1576
1577         Fixes manual-tests/wml/onevent-prev.wml.
1578
1579         * wml/WMLDocument.cpp:
1580         (WebCore::WMLDocument::WMLDocument):
1581         (WebCore::WMLDocument::finishedParsing):
1582         (WebCore::WMLDocument::initialize):
1583         * wml/WMLDocument.h:
1584
1585 2009-08-08  Dimitri Glazkov  <dglazkov@chromium.org>
1586
1587         Unreviewed, build fix.
1588
1589         [Chromium] Update WebCore.gyp to add ImageBuffer.cpp,
1590         introduced by http://trac.webkit.org/changeset/46956.
1591         https://bugs.webkit.org/show_bug.cgi?id=27844
1592
1593         * WebCore.gypi: Added ImageBuffer.cpp.
1594
1595 2009-08-08  Nikolas Zimmermann  <nikolas.zimmermann@torchmobile.com>
1596
1597         Rubber-stamped by Jan Michael Alonzo.
1598
1599         Add [DontEnum] to WML specific initializeWMLPageState/resetWMLPageState methods, to assure
1600         fast/dom/Window/window-properties.html doesn't show any differences when WML is enabled.
1601
1602         * dom/Document.idl:
1603
1604 2009-08-08  Dirk Schulze  <krit@webkit.org>
1605
1606         Reviewed by Eric Seidel.
1607
1608         SVG Filter need feColorMatrix implementation
1609         [https://bugs.webkit.org/show_bug.cgi?id=27711]
1610
1611         Adds the filter effect feColorMatrix to SVG filters. 
1612
1613         There is already a test in the w3c directory.
1614         Test: svg/W3C-SVG-1.1/filters-color-01-b.svg
1615
1616         * platform/graphics/filters/FEColorMatrix.cpp:
1617         (WebCore::matrix):
1618         (WebCore::saturate):
1619         (WebCore::huerotate):
1620         (WebCore::luminance):
1621         (WebCore::FEColorMatrix::apply):
1622
1623 2009-08-08  Dirk Schulze  <krit@webkit.org>
1624
1625         Reviewed by Oliver Hunt.
1626
1627         Build fix for Tiger.
1628         https://bugs.webkit.org/show_bug.cgi?id=27844
1629
1630         * platform/graphics/cg/ImageBufferCG.cpp:
1631         (WebCore::ImageBuffer::ImageBuffer):
1632
1633 2009-08-08  Dirk Schulze  <krit@webkit.org>
1634
1635         Reviewed by Oliver Hunt.
1636
1637         This is an initial implementation for linearRGB and sRGB support for all
1638         platforms. Some platforms like Cg support different color spaces
1639         natively, others like Qt, Cairo and Skia do not. This patch uses the
1640         native implementation of platforms if possible and offers a common version
1641         if not.
1642
1643         Different color spaces are used in SVG Filters. Nearly every Filter test 
1644         case is a test for this patch and will be enabled, once Filters are enabled.
1645         https://bugs.webkit.org/show_bug.cgi?id=27844
1646
1647         * GNUmakefile.am:
1648         * WebCore.pro:
1649         * html/canvas/CanvasRenderingContext2D.cpp:
1650         (WebCore::CanvasRenderingContext2D::drawTextInternal):
1651         * html/HTMLCanvasElement.cpp:
1652         (WebCore::HTMLCanvasElement::createImageBuffer):
1653         * platform/graphics/GeneratedImage.cpp:
1654         (WebCore::GeneratedImage::drawPattern):
1655         * platform/graphics/ImageBuffer.cpp: Added.
1656         (WebCore::ImageBuffer::transformColorSpace):
1657         * platform/graphics/ImageBuffer.h:
1658         (WebCore::):
1659         (WebCore::ImageBuffer::create):
1660         * platform/graphics/cairo/ImageBufferCairo.cpp:
1661         (WebCore::ImageBuffer::ImageBuffer):
1662         (WebCore::ImageBuffer::platformTransformColorSpace):
1663         * platform/graphics/cairo/ImageCairo.cpp:
1664         (WebCore::Image::drawPattern):
1665         * platform/graphics/cg/ImageBufferCG.cpp:
1666         (WebCore::ImageBuffer::ImageBuffer):
1667         * platform/graphics/chromium/TransparencyWin.cpp:
1668         (WebCore::TransparencyWin::OwnedBuffers::OwnedBuffers):
1669         * platform/graphics/filters/FilterEffect.cpp:
1670         (WebCore::FilterEffect::getEffectContext):
1671         * platform/graphics/qt/ImageBufferQt.cpp:
1672         (WebCore::ImageBuffer::ImageBuffer):
1673         (WebCore::ImageBuffer::platformTransformColorSpace):
1674         * platform/graphics/qt/PathQt.cpp:
1675         (WebCore::Path::strokeContains):
1676         (WebCore::Path::strokeBoundingRect):
1677         * platform/graphics/skia/ImageBufferSkia.cpp:
1678         (WebCore::ImageBuffer::ImageBuffer):
1679         (WebCore::ImageBuffer::platformTransformColorSpace):
1680         * platform/graphics/skia/SkiaUtils.cpp:
1681         (WebCore::scratchContext):
1682         * platform/graphics/wx/ImageBufferWx.cpp:
1683         (WebCore::ImageBuffer::ImageBuffer):
1684         * platform/mac/ScrollbarThemeMac.mm:
1685         (WebCore::ScrollbarThemeMac::paint):
1686         * rendering/RenderBoxModelObject.cpp:
1687         (WebCore::RenderBoxModelObject::paintFillLayerExtended):
1688         * svg/SVGMaskElement.cpp:
1689         (WebCore::SVGMaskElement::drawMaskerContent):
1690         * svg/SVGPatternElement.cpp:
1691         (WebCore::SVGPatternElement::buildPattern):
1692         * svg/graphics/SVGImage.cpp:
1693         (WebCore::SVGImage::nativeImageForCurrentFrame):
1694         * svg/graphics/SVGPaintServerGradient.cpp:
1695         (WebCore::createMaskAndSwapContextForTextGradient):
1696         * svg/graphics/SVGPaintServerPattern.cpp:
1697         (WebCore::SVGPaintServerPattern::setup):
1698         * svg/graphics/SVGResourceFilter.cpp:
1699         (WebCore::SVGResourceFilter::prepareFilter):
1700         (WebCore::SVGResourceFilter::applyFilter):
1701         * svg/graphics/SVGResourceMasker.cpp:
1702         (WebCore::SVGResourceMasker::applyMask):
1703         * svg/graphics/filters/SVGFETile.cpp:
1704         (WebCore::FETile::apply):
1705
1706 2009-08-08  Xan Lopez  <xlopez@igalia.com>
1707
1708         Roll out r46928, since it wasn't done in accordance with the
1709         agreed naming.
1710
1711         * bindings/gdom/GdomDOMObject.cpp: Removed.
1712
1713 2009-08-08  Jan Michael Alonzo  <jmalonzo@webkit.org>
1714
1715         Reviewed by Xan Lopez.
1716
1717         [Gtk] Enable accessibility in Gtk DRT
1718         https://bugs.webkit.org/show_bug.cgi?id=25989
1719
1720         Add SPI to get the focused accessible element to be used by DRT.
1721
1722         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
1723         (webkit_accessible_get_focused_element):
1724         * accessibility/gtk/AccessibilityObjectWrapperAtk.h:
1725
1726 2009-08-07  Jan Michael Alonzo  <jmalonzo@webkit.org>
1727
1728         Gtk build fix - add html/canvas to the binding generator's include path
1729
1730         * GNUmakefile.am:
1731
1732 2009-08-07  Oliver Hunt  <oliver@apple.com>
1733
1734         Another attempt to fix windows.
1735
1736         * WebCore.vcproj/WebCore.vcproj:
1737         * WebCore.vcproj/WebCoreCommon.vsprops:
1738
1739 2009-08-07  Oliver Hunt  <oliver@apple.com>
1740
1741         Windows build fix
1742
1743         * WebCore.vcproj/WebCore.vcproj:
1744
1745 2009-08-07  Jan Michael Alonzo  <jmalonzo@webkit.org>
1746
1747         Gtk build fix - add html/canvas to the include path.
1748
1749         * GNUmakefile.am:
1750
1751 2009-08-07  Adam Treat  <adam.treat@torchmobile.com>
1752
1753         Prospective build fix for Qt following r46937.
1754
1755         * WebCore.pro:
1756
1757 2009-08-07  Yong Li  <yong.li@torchmobile.com>
1758
1759         WINCE PORT: store only width for GlyphBufferAdvance, to save space on low-memory devices
1760         https://bugs.webkit.org/show_bug.cgi?id=27734
1761
1762         * platform/graphics/GlyphBuffer.h:
1763         (WebCore::GlyphBuffer::advanceAt):
1764         (WebCore::GlyphBuffer::advanceData):
1765         (WebCore::GlyphBuffer::add):
1766
1767 2009-08-07  Yong Li  <yong.li@torchmobile.com>
1768
1769         Reviewed by Eric Seidel.
1770
1771         WINCE PORT: pass unrecognized glyphs to GDI to handle
1772         https://bugs.webkit.org/show_bug.cgi?id=27734
1773
1774         * platform/graphics/FontFastPath.cpp:
1775         (WebCore::Font::glyphDataForCharacter):
1776
1777 2009-08-07  Chris Marrin  <cmarrin@apple.com>
1778
1779         Reviewed by Oliver Hunt.
1780
1781         Move Canvas related file to a subdirectories
1782         https://bugs.webkit.org/show_bug.cgi?id=28026
1783
1784         * DerivedSources.make:
1785         * GNUmakefile.am:
1786         * WebCore.gypi:
1787         * WebCore.pro:
1788         * WebCore.vcproj/WebCore.vcproj:
1789         * WebCore.xcodeproj/project.pbxproj:
1790         * WebCoreSources.bkl:
1791         * html/CanvasGradient.cpp: Removed.
1792         * html/CanvasGradient.h: Removed.
1793         * html/CanvasGradient.idl: Removed.
1794         * html/CanvasPattern.cpp: Removed.
1795         * html/CanvasPattern.h: Removed.
1796         * html/CanvasPattern.idl: Removed.
1797         * html/CanvasPixelArray.cpp: Removed.
1798         * html/CanvasPixelArray.h: Removed.
1799         * html/CanvasPixelArray.idl: Removed.
1800         * html/CanvasRenderingContext2D.cpp: Removed.
1801         * html/CanvasRenderingContext2D.h: Removed.
1802         * html/CanvasRenderingContext2D.idl: Removed.
1803         * html/CanvasStyle.cpp: Removed.
1804         * html/CanvasStyle.h: Removed.
1805         * html/canvas: Added.
1806         * html/canvas/CanvasGradient.cpp: Copied from WebCore/html/CanvasGradient.cpp.
1807         * html/canvas/CanvasGradient.h: Copied from WebCore/html/CanvasGradient.h.
1808         * html/canvas/CanvasGradient.idl: Copied from WebCore/html/CanvasGradient.idl.
1809         * html/canvas/CanvasPattern.cpp: Copied from WebCore/html/CanvasPattern.cpp.
1810         * html/canvas/CanvasPattern.h: Copied from WebCore/html/CanvasPattern.h.
1811         * html/canvas/CanvasPattern.idl: Copied from WebCore/html/CanvasPattern.idl.
1812         * html/canvas/CanvasPixelArray.cpp: Copied from WebCore/html/CanvasPixelArray.cpp.
1813         * html/canvas/CanvasPixelArray.h: Copied from WebCore/html/CanvasPixelArray.h.
1814         * html/canvas/CanvasPixelArray.idl: Copied from WebCore/html/CanvasPixelArray.idl.
1815         * html/canvas/CanvasRenderingContext2D.cpp: Copied from WebCore/html/CanvasRenderingContext2D.cpp.
1816         * html/canvas/CanvasRenderingContext2D.h: Copied from WebCore/html/CanvasRenderingContext2D.h.
1817         * html/canvas/CanvasRenderingContext2D.idl: Copied from WebCore/html/CanvasRenderingContext2D.idl.
1818         * html/canvas/CanvasStyle.cpp: Copied from WebCore/html/CanvasStyle.cpp.
1819         * html/canvas/CanvasStyle.h: Copied from WebCore/html/CanvasStyle.h.
1820
1821 2009-08-07  Szabo Carol  <carol.szabo@nokia.com>
1822
1823         Reviewed by David Hyatt.
1824
1825         QtWebkit ignores letter-spacing and word-spacing styles.
1826         QtWebkit handles custom letter-spacing and word-spacing in the native QFont
1827         class, but the values for these options are not not passed on from
1828         the platform independent part of the Font class.
1829         Fixed QtWebkit behavior by applying the options to QFont when it is
1830         returned via Font::font()
1831
1832         http://bugs.webkit.org/show_bug.cgi?id=27988
1833
1834         LayoutTests:
1835         fast/css/word-space-extra.html
1836         css2.1/t1604-c542-letter-sp-00-b-a.html
1837         css2.1/t1604-c541-word-sp-01-b-a.html
1838         css1/text_properties/word_spacing.html
1839         
1840         * platform/graphics/qt/FontQt.cpp:
1841         (WebCore::Font::font):
1842
1843 2009-08-07  Nicolas Weber  <thakis@chromium.org>
1844
1845         Reviewed by Darin Adler.
1846
1847         Use correct highlight color for listboxes and completion popups.
1848
1849         https://bugs.webkit.org/show_bug.cgi?id=28090
1850
1851         * rendering/RenderThemeChromiumMac.h:
1852         * rendering/RenderThemeChromiumMac.mm:
1853         Rename activeListBoxSelectionBackgroundColor to
1854         platformActiveListBoxSelectionBackgroundColor, so that it actually
1855         overrides a virtual method.
1856
1857 2009-08-07  Maxime Simon  <simon.maxime@gmail.com>
1858
1859         Reviewed by Eric Seidel.
1860
1861         Added a fourth bunch of Haiku-specific files for WebCore.
1862         https://bugs.webkit.org/show_bug.cgi?id=26988
1863
1864         * platform/haiku/PasteboardHaiku.cpp: Added.
1865         (WebCore::Pasteboard::Pasteboard):
1866         (WebCore::Pasteboard::generalPasteboard):
1867         (WebCore::Pasteboard::writeSelection):
1868         (WebCore::Pasteboard::canSmartReplace):
1869         (WebCore::Pasteboard::plainText):
1870         (WebCore::Pasteboard::documentFragment):
1871         (WebCore::Pasteboard::writeURL):
1872         (WebCore::Pasteboard::writeImage):
1873         (WebCore::Pasteboard::clear):
1874         * platform/haiku/PlatformKeyboardEventHaiku.cpp: Added.
1875         (WebCore::keyIdentifierForHaikuKeyCode):
1876         (WebCore::windowsKeyCodeForKeyEvent):
1877         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
1878         (WebCore::PlatformKeyboardEvent::disambiguateKeyDownEvent):
1879         (WebCore::PlatformKeyboardEvent::currentCapsLockState):
1880         * platform/haiku/PlatformMouseEventHaiku.cpp: Added.
1881         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
1882         * platform/haiku/PlatformWheelEventHaiku.cpp: Added.
1883         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
1884
1885 2009-08-07  Nicolas Weber  <thakis@chromium.org>
1886
1887         Teach WebKit how to decode jpegs in cmyk and ycck color spaces.
1888         Heavily inspired by Firefox's take on this issue.
1889
1890         https://bugs.webkit.org/show_bug.cgi?id=27909
1891
1892         Reviewed by Eric Seidel.
1893
1894         * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
1895         (WebCore::JPEGImageReader::decode):
1896         Tell jpeglib to convert ycck to cmyk and keep cmyk.
1897         (WebCore::convertCMYKToRGBA):
1898         Added function to convert cmyk to rgb.
1899         (WebCore::convertRGBToRGBA):
1900         Extracted existing conversion logic into its own function.
1901         (WebCore::JPEGImageDecoder::outputScanlines):
1902         Call convertCMYKToRGBA for cmyk images, convertRGBToRGBA for rgb
1903         images.
1904
1905 2009-08-07  Drew Wilson  <atwilson@google.com>
1906
1907         Reviewed by David Levin.
1908
1909         SharedWorkers should be shared
1910         https://bugs.webkit.org/show_bug.cgi?id=28058
1911
1912         Added tracking of shared workers to the SharedWorkerRepository.
1913
1914         * workers/DefaultSharedWorkerRepository.cpp:
1915         (WebCore::SharedWorkerProxy::create):
1916         Changed SharedWorkerProxy to derive from ThreadSafeShared, as it needs to outlive the repository (if closed while some documents are still loading).
1917         (WebCore::SharedWorkerProxy::thread):
1918         (WebCore::SharedWorkerProxy::closing):
1919         Added flag used to determine whether the worker has closed itself while loading.
1920         (WebCore::SharedWorkerProxy::url):
1921         (WebCore::SharedWorkerProxy::name):
1922         Proxy now tracks worker URL and name to allow validity checks per section 4.8.3 of the WebWorkers spec.
1923         (WebCore::SharedWorkerProxy::SharedWorkerProxy):
1924         (WebCore::SharedWorkerProxy::addToDocumentSet):
1925         Added API to track the document set for a worker to allow worker shutdown. Currently does nothing.
1926         (WebCore::SharedWorkerScriptLoader::SharedWorkerScriptLoader):
1927         Renamed SharedWorkerLoader to be SharedWorkerScriptLoader for clarity.
1928         (WebCore::SharedWorkerScriptLoader::load):
1929         (WebCore::SharedWorkerScriptLoader::notifyFinished):
1930         (WebCore::DefaultSharedWorkerRepository::instance):
1931         (WebCore::DefaultSharedWorkerRepository::workerScriptLoaded):
1932         Now handles "worker already loaded" case.
1933         (WebCore::SharedWorkerRepository::connect):
1934         Delegates to DefaultSharedWorkerRepository::connectToWorker
1935         (WebCore::DefaultSharedWorkerRepository::connectToWorker):
1936         Added code to track the SharedWorkerProxy in a map, and to handle the "worker already loaded" case.
1937         (WebCore::DefaultSharedWorkerRepository::getProxy):
1938         Atomic get-or-create operation on the internal tracking HashMap.
1939         * workers/DefaultSharedWorkerRepository.h:
1940         * workers/SharedWorker.cpp:
1941         (WebCore::SharedWorker::SharedWorker):
1942         * workers/SharedWorkerRepository.h:
1943         Removed instance() API and made constructor private to prevent instantiation.
1944         (WebCore::SharedWorkerRepository::SharedWorkerRepository):
1945
1946 2009-08-07  Maxime Simon  <simon.maxime@gmail.com>
1947
1948         Reviewed by Eric Seidel.
1949
1950         Added four Haiku-specific files for WebCore:
1951         PopupMenuHaiku.cpp, ScreenHaiku.cpp,
1952         SearchPopupMenuHaiku.cpp and SoundHaiku.cpp
1953         https://bugs.webkit.org/show_bug.cgi?id=28080
1954
1955         * platform/haiku/PopupMenuHaiku.cpp: Added.
1956         (WebCore::PopupMenu::PopupMenu):
1957         (WebCore::PopupMenu::~PopupMenu):
1958         (WebCore::PopupMenu::show):
1959         (WebCore::PopupMenu::hide):
1960         (WebCore::PopupMenu::updateFromElement):
1961         (WebCore::PopupMenu::itemWritingDirectionIsNatural):
1962         * platform/haiku/ScreenHaiku.cpp: Added.
1963         (WebCore::screenRect):
1964         (WebCore::screenAvailableRect):
1965         (WebCore::screenDepth):
1966         (WebCore::screenDepthPerComponent):
1967         (WebCore::screenIsMonochrome):
1968         * platform/haiku/SearchPopupMenuHaiku.cpp: Added.
1969         (WebCore::SearchPopupMenu::SearchPopupMenu):
1970         (WebCore::SearchPopupMenu::saveRecentSearches):
1971         (WebCore::SearchPopupMenu::loadRecentSearches):
1972         (WebCore::SearchPopupMenu::enabled):
1973         * platform/haiku/SoundHaiku.cpp: Added.
1974         (WebCore::systemBeep):
1975
1976 2009-08-07  Maxime Simon  <simon.maxime@gmail.com>
1977
1978         Reviewed by Eric Seidel.
1979
1980         Added two Haiku-specific files to WebCore:
1981         TemporaryLinkStubs.cpp and WidgetHaiku.cpp
1982         https://bugs.webkit.org/show_bug.cgi?id=28080
1983
1984         * platform/haiku/TemporaryLinkStubs.cpp: Added.
1985         (loadResourceIntoArray):
1986         (WebCore::historyContains):
1987         (WebCore::supportedKeySizes):
1988         (WebCore::signedPublicKeyAndChallengeString):
1989         (WebCore::userIdleTime):
1990         (WebCore::callOnMainThread):
1991         (WebCore::SharedBuffer::createWithContentsOfFile):
1992         (WebCore::KURL::fileSystemPath):
1993         (WebCore::getSupportedKeySizes):
1994         * platform/haiku/WidgetHaiku.cpp: Added.
1995         (WebCore::Widget::Widget):
1996         (WebCore::Widget::~Widget):
1997         (WebCore::Widget::frameRect):
1998         (WebCore::Widget::setFrameRect):
1999         (WebCore::Widget::setFocus):
2000         (WebCore::Widget::setCursor):
2001         (WebCore::Widget::show):
2002         (WebCore::Widget::hide):
2003         (WebCore::Widget::paint):
2004         (WebCore::Widget::setIsSelected):
2005
2006 2009-08-07  Jian Li  <jianli@chromium.org>
2007
2008         Reviewed by Dimitri Glazkov.
2009
2010         [V8] Fix the problem that isAttribute is set to false for onerror and
2011         onmessage in worker custom code.
2012         https://bugs.webkit.org/show_bug.cgi?id=28083
2013
2014         * bindings/v8/custom/V8AbstractWorkerCustom.cpp:
2015         (WebCore::getEventListener):
2016         (WebCore::ACCESSOR_SETTER):
2017         (WebCore::CALLBACK_FUNC_DECL):
2018         * bindings/v8/custom/V8WorkerContextCustom.cpp:
2019         (WebCore::ACCESSOR_SETTER):
2020         * bindings/v8/custom/V8WorkerCustom.cpp:
2021         (WebCore::getEventListener):
2022         (WebCore::ACCESSOR_SETTER):
2023
2024 2009-08-07  Vitaly Repeshko  <vitalyr@quad.spb.corp.google.com>
2025
2026         Reviewed by Dimitri Glazkov.
2027
2028         V8 bindings: speed up lookupDOMWrapper by using new V8 API function.
2029
2030         https://bugs.webkit.org/show_bug.cgi?id=28071
2031
2032         * bindings/v8/V8DOMWrapper.cpp:
2033         * bindings/v8/V8DOMWrapper.h:
2034         (WebCore::V8DOMWrapper::lookupDOMWrapper):
2035
2036 2009-08-07  Ryosuke Niwa  <rniwa@webkit.org>
2037
2038         Reviewed by Justin Garcia.
2039
2040         selectionHasStyle doesn't handle text-specific properties properly
2041         https://bugs.webkit.org/show_bug.cgi?id=27858
2042
2043         This patch modifies selectionHasStyle so that it returns TrueTriState when text styles
2044         (text-decoration, font-style, font-weight, & color) are present in all text nodes,
2045         regardless of whether the style is also present in their ancestor nodes or not.
2046         e.g. New behavior concludes that <b><i>hello</i><i>world</i></b> has italic style.
2047
2048         WebKit now applies the text styles (bold, italic, etc) if the specified style was not present on
2049         at least one text node, rather than at the beginning of selection except on Mac.
2050         On Mac, WebKit applies the text style if the style was not present at the beginning of style.
2051
2052         Test: editing/execCommand/toggle-compound-styles.html
2053
2054         * editing/ApplyStyleCommand.cpp:
2055         (WebCore::getPropertiesNotInComputedStyle): bug fix, must use copy instead of makeMutable for a mutable style.
2056         * editing/Editor.cpp:
2057         (WebCore::):
2058         (WebCore::triStateOfStyleInComputedStyle): Added a boolean type to ignore text-specific styles
2059         (WebCore::Editor::selectionHasStyle): Ignores text-specific styles for all but text nodes
2060         * editing/EditorCommand.cpp:
2061         (WebCore::executeToggleStyle): Uses selectionHasStyle instead of selectionStartHasStyle
2062
2063 2009-08-07  Jian Li  <jianli@chromium.org>
2064
2065         Reviewed by Dimitri Glazkov.
2066
2067         [V8] Do not register V8 error message listener in WorkerContextExecutionProxy.
2068         https://bugs.webkit.org/show_bug.cgi?id=28082
2069
2070         * bindings/v8/WorkerContextExecutionProxy.cpp:
2071         (WebCore::WorkerContextExecutionProxy::initV8IfNeeded):
2072
2073 2009-08-07  Kwang Yul Seo  <skyul@company100.net>
2074
2075         Reviewed by Eric Seidel.
2076
2077         Cairo-based Windows port does not handle cookies properly
2078         https://bugs.webkit.org/show_bug.cgi?id=27414
2079
2080         curl handles cookies by itself, so using WinINet functions
2081         to get and set cookies is wrong.
2082
2083         Replace CookieJarWin.cpp with CookieJarCurl.cpp so that
2084         cookies can be implemented later once curl provides an API to
2085         get and set cookies.
2086
2087         * WebCore.vcproj/WebCore.vcproj:
2088
2089 2009-08-07  Michael Nordman  <michaeln@google.com>
2090
2091         Reviewed by Dimitri Glazkov.
2092
2093         https://bugs.webkit.org/show_bug.cgi?id=28074
2094
2095         V8 bindings for the window.applicationCache attribute.
2096
2097         * WebCore.gypi:
2098         * bindings/scripts/CodeGeneratorV8.pm:
2099         * bindings/v8/DOMObjectsInclude.h:
2100         * bindings/v8/DerivedSourcesAllInOne.cpp:
2101         * bindings/v8/V8DOMWrapper.cpp:
2102         (WebCore::V8DOMWrapper::getTemplate):
2103         (WebCore::V8DOMWrapper::convertEventTargetToV8Object):
2104         * bindings/v8/V8Index.cpp:
2105         * bindings/v8/V8Index.h:
2106         * bindings/v8/custom/V8CustomBinding.h:
2107         * bindings/v8/custom/V8DOMApplicationCacheCustom.cpp: Added.
2108
2109 2009-08-07  Alpha Lam  <hclam@chromium.org>
2110
2111         Reviewed by Eric Seidel.
2112
2113         Right click on timeline of media controls panel cause seek
2114         https://bugs.webkit.org/show_bug.cgi?id=27920
2115
2116         Add a test simulate the behavior of seeking by right clicking
2117         on the time bar of media controls while playing.
2118
2119         * media/controls-right-click-on-timebar-expected.txt: Added.
2120         * media/controls-right-click-on-timebar.html: Added.
2121
2122 2009-08-07  Ryosuke Niwa  <rniwa@webkit.org>
2123
2124         Reviewed by Justin Garcia.
2125
2126         deprecatedCopyInheritableProperties must be replaced by two different functions
2127         https://bugs.webkit.org/show_bug.cgi?id=28057
2128
2129         This patch deletes deprecatedInheritableProperties and modifies call callees to call either editingStyleAtPosition
2130         or prepareEditingStyleToApplyAt. The concept of editing style is introduced in this patch,
2131         which consists of all CSS properties need to be preserved under editing operations.
2132
2133         No test is added since this patch does not change any behavior.
2134
2135         * css/CSSComputedStyleDeclaration.cpp: Removed deprecatedCopyInheritableProperties
2136         * css/CSSComputedStyleDeclaration.h: Removed deprecatedCopyInheritableProperties
2137         * editing/ApplyStyleCommand.cpp:
2138         (WebCore::):
2139         (WebCore::editingStyleAtPosition): Obtains the editing-specific computed style at the position
2140         (WebCore::prepareEditingStyleToApplyAt): Removes redundant editing styles at the specified position
2141         (WebCore::removeStylesAddedByNode): Removes the style derived from the specified node
2142         * editing/ApplyStyleCommand.h:
2143         (WebCore::):
2144         * editing/CompositeEditCommand.cpp:
2145         (WebCore::CompositeEditCommand::moveParagraphs): Uses editingStyleAtPosition
2146         (WebCore::CompositeEditCommand::breakOutOfEmptyListItem): Uses editingStyleAtPosition
2147         * editing/DeleteSelectionCommand.cpp:
2148         (WebCore::removeEnclosingAnchorStyle): Uses removeStyleOfNode
2149         (WebCore::DeleteSelectionCommand::saveTypingStyleState): Uses editingStyleAtPosition
2150         (WebCore::DeleteSelectionCommand::calculateTypingStyleAfterDelete): Uses prepareEditingStyleToApplyAt
2151         * editing/EditCommand.cpp:
2152         * editing/EditCommand.h:
2153         * editing/InsertParagraphSeparatorCommand.cpp:
2154         (WebCore::InsertParagraphSeparatorCommand::calculateStyleBeforeInsertion): Uses editingStyleAtPosition
2155         (WebCore::InsertParagraphSeparatorCommand::applyStyleAfterInsertion): Uses prepareEditingStyleToApplyAt
2156         * editing/RemoveFormatCommand.cpp:
2157         (WebCore::RemoveFormatCommand::doApply): Uses editingStyleAtPosition
2158         * editing/ReplaceSelectionCommand.cpp:
2159         (WebCore::handleStyleSpansBeforeInsertion): Uses editingStyleAtPosition
2160         (WebCore::ReplaceSelectionCommand::handleStyleSpans): Uses editingStyleAtPosition and prepareEditingStyleToApplyAt
2161         (WebCore::ReplaceSelectionCommand::doApply): Uses prepareEditingStyleToApplyAt
2162         * editing/markup.cpp:
2163         (WebCore::removeEnclosingMailBlockquoteStyle): Uses removeStyleOfNode
2164         (WebCore::removeDefaultStyles): Uses prepareEditingStyleToApplyAt
2165         (WebCore::createMarkup): Uses editingStyleAtPosition
2166
2167 2009-08-07  Steve Block  <steveblock@google.com>
2168
2169         Reviewed by Darin Adler.
2170
2171         Bug 27250: Geolocation callback function IDL files are superfluous
2172         https://bugs.webkit.org/show_bug.cgi?id=27250
2173
2174         The objects for the Geolocation success and error callbacks are created 'manually' in
2175         WebCore/bindings/js/JSGeolocationCustom.cpp. Furthermore, the callback interfaces are 
2176         marked 'NoInterfaceObject' in the W3C spec, so the prototype should not
2177         appear on the window object. Hence IDL files for these callbacks are not required.
2178
2179         See http://www.w3.org/TR/geolocation-API/#geolocation_interface and
2180         http://www.w3.org/TR/WebIDL/#NoInterfaceObject.
2181
2182         No new tests required.
2183
2184         * DerivedSources.make: Modified. Removed reference to IDL files.
2185         * WebCore.gypi: Modified. Removed reference to IDL files.
2186         * WebCore.xcodeproj/project.pbxproj: Modified. Removed reference to IDL files.
2187         * page/PositionCallback.idl: Removed.
2188         * page/PositionErrorCallback.idl: Removed.
2189
2190 2009-08-07  Adam Treat  <adam.treat@torchmobile.com>
2191
2192         Reviewed by David Levin.
2193
2194         Build fix for Qt when ENABLE_VIDEO = 0.  This was necessitated by r46890 which
2195         put the idl files back into play regardless of compile time defines.
2196
2197         * html/TimeRanges.idl:
2198
2199 2009-08-07  Mike Fenton  <mike.fenton@torchmobile.com>
2200
2201         Reviewed by George Staikos.
2202
2203         Coding style patches for RenderThemeQt.cpp based on results from cpp_style.py.
2204
2205         https://bugs.webkit.org/show_bug.cgi?id=28050
2206
2207         * platform/qt/RenderThemeQt.cpp:
2208         (WebCore::RenderThemeQt::baselinePosition):
2209         (WebCore::inflateButtonRect):
2210         (WebCore::RenderThemeQt::supportsFocus):
2211         (WebCore::RenderThemeQt::applyTheme):
2212
2213 2009-08-07  Mike Fenton  <mike.fenton@torchmobile.com>
2214
2215         Reviewed by Eric Seidel.
2216
2217         Prevent RenderThemeQt AdjustStyle based calls for TextField, MenuList and MenuListButton
2218         from discarding style colour.
2219
2220         Add tests and remove tests from platform/qt/Skipped that now pass.
2221
2222         https://bugs.webkit.org/show_bug.cgi?id=28050
2223
2224         Tests: fast/forms/menulist-style-color.html
2225                fast/forms/text-style-color.html
2226
2227         * platform/qt/RenderThemeQt.cpp:
2228         (WebCore::RenderThemeQt::adjustTextFieldStyle):
2229         (WebCore::RenderThemeQt::adjustMenuListStyle):
2230         (WebCore::RenderThemeQt::adjustMenuListButtonStyle):
2231
2232 2009-08-07  Dimitri Glazkov  <dglazkov@chromium.org>
2233
2234         Unreviewed, build fix.
2235
2236         https://bugs.webkit.org/show_bug.cgi?id=22495
2237         [V8] Re-land http://trac.webkit.org/changeset/46821, now that
2238         http://trac.webkit.org/changeset/46874 re-landed
2239
2240         * bindings/v8/DOMObjectsInclude.h:
2241         * bindings/v8/DerivedSourcesAllInOne.cpp:
2242         * bindings/v8/V8Index.cpp:
2243         * bindings/v8/V8Index.h:
2244
2245 2009-08-07  Adam Treat  <adam.treat@torchmobile.com>
2246
2247         Reviewed by Darin Adler and George Staikos.
2248
2249         Add rectToRect convenience function which returns the TransformationMatrix
2250         which maps the 'from' rectangle to the 'to' rectangle.
2251
2252         https://bugs.webkit.org/show_bug.cgi?id=28067
2253
2254         No tests as this would require binding the method to js and since it is static
2255         that doesn't seem possible.  Please check the math.
2256
2257         * platform/graphics/transforms/TransformationMatrix.cpp:
2258         (WebCore::TransformationMatrix::rectToRect):
2259         * platform/graphics/transforms/TransformationMatrix.h:
2260
2261 2009-08-07  Brady Eidson  <beidson@apple.com>
2262
2263         Reviewed by Darin Adler.
2264
2265         Implement the HTML5 hashchange event.
2266         https://bugs.webkit.org/show_bug.cgi?id=21605
2267
2268         Test: fast/loader/hashchange-event.html
2269
2270         * dom/EventNames.h: Add "hashchange"
2271         * html/HTMLAttributeNames.in: Add "onhashchange"
2272
2273         * loader/FrameLoader.cpp:
2274         (WebCore::HashChangeEventTask::create):
2275         (WebCore::HashChangeEventTask::performTask):
2276         (WebCore::HashChangeEventTask::HashChangeEventTask):
2277         (WebCore::FrameLoader::scrollToAnchor): When an anchor navigation is completed and the
2278           new fragment identifier is different from the old one, queue a hash change event
2279           on the Document.
2280
2281         Add a window event listener for the hashchange event if onhashchange is encountered:
2282         * html/HTMLBodyElement.cpp:
2283         (WebCore::HTMLBodyElement::parseMappedAttribute): 
2284         * html/HTMLFrameSetElement.cpp:
2285         (WebCore::HTMLFrameSetElement::parseMappedAttribute):
2286
2287         Add a new string utility method that gives "null and empty are equivalent" behavior:
2288         * platform/text/PlatformString.h:
2289         (WebCore::equalIgnoringNullity):
2290         * platform/text/StringImpl.cpp:
2291         (WebCore::equalIgnoringNullity):
2292         * platform/text/StringImpl.h:
2293
2294 2009-08-07  Jessie Berlin  <jberlin@apple.com>
2295
2296         Reviewed by Timothy Hatcher.
2297
2298         Add the initial implementation of the ability to resize the columns in
2299         a DataGrid in the Web Inspector. Enables that functionality in both the
2300         Profile View and in the Local Storage View.
2301         
2302         https://bugs.webkit.org/show_bug.cgi?id=26182
2303         
2304         In this version, resizing a column can change the width of at most two
2305         columns (the columns to the left and right of the resizer being dragged).
2306         
2307         Possible changes in future patches:
2308         
2309         1) Be able to specify the minimum size of a column and the maximum size
2310            of a column. If the minimum size is equal to the maximum size, the
2311            column can't be resized.
2312         2) Make the behavior more in line with the following description:
2313         
2314         Everything before the column that is resized stays fixed size. The
2315         resized column changes sizes. The other columns except the last stay
2316         the same size. And the last column adjusts to fit with a minimum size.
2317         If the last column is already the minimum, the next to last column
2318         shrinks, etc.
2319         
2320         3) Make it possible to scale the column sizes appropriately when the
2321            Web Inspector window gets resized.
2322         
2323         * inspector/front-end/DOMStorageItemsView.js:
2324         (WebInspector.DOMStorageItemsView.prototype.update):
2325         Once the DataGrid is added to the DOM, update the widths of the
2326         DataGrid in order to put the resizers in place.
2327         (WebInspector.DOMStorageItemsView.prototype.resize):
2328         Update the widths of the DataGrid in order to correctly adjust the
2329         positions of the resizers.
2330         
2331         * inspector/front-end/DataGrid.js:
2332         (WebInspector.DataGrid):
2333         Store column groups whose widths can later be changed when the columns
2334         are resized by the user.
2335         Also, keep track of whether the widths of the columns have been
2336         initialized.
2337         (WebInspector.DataGrid.prototype.updateWidths):
2338         Create the resizers for the columns.
2339         (WebInspector.DataGrid.prototype._clickInDataTable):
2340         Didn't actually change anything in this method, just added a comma to
2341         the end of the function.
2342         (WebInspector.DataGrid.prototype._startResizerDragging):
2343         Store the resizer that is currently dragging.
2344         (WebInspector.DataGrid.prototype._resizerDragging):
2345         Constrain the area that the resizer can be dragged to the column to
2346         it's left and right, with some padding added to make sure that the
2347         neighboring columns don't disappear.
2348         (WebInspector.DataGrid.prototype._endResizerDragging):
2349         
2350         * inspector/front-end/DatabasesPanel.js:
2351         (WebInspector.DatabasesPanel.prototype.resize):
2352         Resize the view.
2353         (WebInspector.DatabasesPanel.prototype._updateSidebarWidth):
2354         ditto.
2355         
2356         * inspector/front-end/ProfileView.js:
2357         (WebInspector.ProfileView.prototype.show):
2358         Now that the DataGrid is actually attached to the DOM, update the
2359         widths of the DataGrid in order to put the resizers in place.
2360         (WebInspector.ProfileView.prototype.resize):
2361         Update the widths of the DataGrid in order to correctly adjust the
2362         positions of the resizers.
2363         
2364         * inspector/front-end/ProfilesPanel.js:
2365         (WebInspector.ProfilesPanel.prototype.resize):
2366         Resize the view.
2367         (WebInspector.ProfilesPanel.prototype._updateSidebarWidth):
2368         ditto.
2369         
2370         * inspector/front-end/inspector.css:
2371         Add in a style rule for a resizer in the Data Grid.
2372
2373 2009-08-07  Simon Hausmann  <simon.hausmann@nokia.com>
2374
2375         Reviewed by Tor Arne Vestbø.
2376
2377         Back out r46847 and fix the Qt build system to always generate
2378         all the JS binding files from IDL files. The generated files
2379         have #if feature guards, so the #ifs are not needed in the
2380         files using them.
2381
2382         * WebCore.pro:
2383         * bindings/js/JSEventTarget.cpp:
2384         * bindings/js/JSWorkerContextBase.cpp:
2385         * bindings/js/WorkerScriptController.cpp:
2386
2387 2009-08-07  Shinichiro Hamaji  <hamaji@chromium.org>
2388
2389         Reviewed by Adele Peterson.
2390
2391         Cannot scroll for box-reflect:right
2392         https://bugs.webkit.org/show_bug.cgi?id=27979
2393
2394         Update m_overflowLeft an m_overflowWidth for reflection just like
2395         m_overflowTop and m_overflowHeight.
2396
2397         Test: fast/reflections/reflection-overflow-scroll.html
2398
2399         * rendering/RenderBlock.cpp:
2400         (WebCore::RenderBlock::layoutBlock):
2401
2402 2009-08-06  Shinichiro Hamaji  <hamaji@chromium.org>
2403
2404         Reviewed by Adam Barth.
2405
2406         box-shadow's spread is ignored with <table>
2407         https://bugs.webkit.org/show_bug.cgi?id=28017
2408
2409         Use RenderStyle::getBoxShadowExtent just like RenderBlock.
2410
2411         Test: fast/box-shadow/box-shadow-overflow-scroll.html
2412
2413         * rendering/RenderTable.cpp:
2414         (WebCore::RenderTable::layout):
2415
2416 2009-08-06  Joseph Pecoraro  <joepeck02@gmail.com>
2417
2418         Reviewed by Timothy Hatcher.
2419
2420         Inspector: NodeLists Don't Display Well in the Console
2421         https://bugs.webkit.org/show_bug.cgi?id=28061
2422
2423         * inspector/front-end/ConsoleView.js:
2424         (WebInspector.ConsoleView.prototype._format): Specific check if the object is a NodeList, display as an "array"
2425
2426 2009-08-06  Yusuke Sato  <yusukes@chromium.org>
2427
2428         Reviewed by David Levin.
2429
2430         Chromium Linux: add support for @font-face
2431         https://bugs.webkit.org/show_bug.cgi?id=28015
2432         
2433         * loader/CachedFont.cpp:
2434         (WebCore::CachedFont::~CachedFont):
2435         (WebCore::CachedFont::ensureCustomFontData):
2436         (WebCore::CachedFont::platformDataFromCustomData):
2437         (WebCore::CachedFont::allClientsRemoved):
2438
2439         Modified #ifdefs so that chromium linux can load remote fonts.
2440         
2441         * platform/graphics/chromium/FontCustomPlatformData.cpp:
2442         (WebCore::FontCustomPlatformData::~FontCustomPlatformData):
2443         (WebCore::FontCustomPlatformData::fontPlatformData):
2444         (WebCore::createFontCustomPlatformData):
2445
2446         Create SkTypeface for a web font by calling SkTypeface::CreateFromStream function.
2447         
2448         (WebCore::RemoteFontStream::RemoteFontStream):
2449         (WebCore::RemoteFontStream::~RemoteFontStream):
2450         (WebCore::RemoteFontStream::rewind):
2451         (WebCore::RemoteFontStream::read):
2452
2453         New class that implements SkStream interface and wraps wtf's SharedBuffer.
2454         
2455         * platform/graphics/chromium/FontCustomPlatformData.h:
2456         (WebCore::FontCustomPlatformData::FontCustomPlatformData):
2457
2458         Added member variables for Linux.
2459         
2460 2009-08-06  Yong Li  <yong.li@torchmobile.com>
2461
2462         Reviewed by Eric Seidel.
2463
2464         Fix JPEGImageDecoder.cpp compile error on WinCE
2465         https://bugs.webkit.org/show_bug.cgi?id=28051
2466
2467         * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
2468
2469 2009-08-06  Kevin Ollivier  <kevino@theolliviers.com>
2470
2471         Reviewed by Eric Seidel.
2472
2473         Adding WebCore support for the waf build system for wx.
2474         
2475         https://bugs.webkit.org/show_bug.cgi?id=27619
2476
2477         * wscript: Added.
2478
2479 2009-08-06  Adam Barth  <abarth@webkit.org>
2480
2481         Unreviewed revert.
2482
2483         http://bugs.webkit.org/show_bug.cgi?id=27879
2484
2485         Revert 46877 because it broke GTK.
2486
2487         * platform/graphics/wince/GraphicsContextWince.cpp:
2488
2489 2009-08-06  Chris Fleizach  <cfleizach@apple.com>
2490
2491         Reviewed by Eric Seidel.
2492
2493         Bug 27956 - AX: roleValue should be cached for performance
2494         https://bugs.webkit.org/show_bug.cgi?id=27956
2495
2496         Caches the role value of an accessibility object instead of calculating it everytime.
2497         The changes gained a 5% speedup using VoiceOver to navigate a webpage.
2498
2499         * accessibility/AXObjectCache.cpp:
2500         (WebCore::AXObjectCache::handleAriaRoleChanged):
2501
2502         Use generic role setter instead of specific ARIA role setter.
2503
2504         * accessibility/AccessibilityObject.cpp:
2505         (WebCore::AccessibilityObject::AccessibilityObject):
2506         * accessibility/AccessibilityObject.h:
2507         (WebCore::AccessibilityObject::headingLevel):
2508
2509         Make headingLevel into instance method so that it can *safely* be called in the constructor.
2510
2511         (WebCore::AccessibilityObject::setRoleValue):
2512         (WebCore::AccessibilityObject::roleValue):
2513         * accessibility/AccessibilityRenderObject.cpp:
2514         (WebCore::AccessibilityRenderObject::AccessibilityRenderObject):
2515         (WebCore::AccessibilityRenderObject::headingLevel):
2516         (WebCore::AccessibilityRenderObject::intValue):
2517         (WebCore::AccessibilityRenderObject::updateAccessibilityRole):
2518         (WebCore::AccessibilityRenderObject::determineAccessibilityRole):
2519         * accessibility/AccessibilityRenderObject.h:
2520         * accessibility/mac/AccessibilityObjectWrapper.mm:
2521         (AXAttributeStringSetHeadingLevel):
2522
2523 2009-08-06  Zoltan Horvath  <hzoltan@inf.u-szeged.hu>
2524
2525         Reviewed by Adam Barth.
2526
2527         Change Noncopyable inheriting to public
2528         http://bugs.webkit.org/show_bug.cgi?id=27879
2529
2530         Since Noncopyable is inherited from FastAllocBase, Noncopyable's
2531         inheriting has been changed to public.
2532
2533         * platform/graphics/wince/GraphicsContextWince.cpp:
2534
2535 2009-08-06  Mark Rowe  <mrowe@apple.com>
2536
2537         Rubber-stamped by Sam Weinig.
2538
2539         Add explicit dependencies for our build verification scripts to ensure that they always run after linking has completed.
2540
2541         * WebCore.xcodeproj/project.pbxproj:
2542
2543 2009-08-05  Simon Fraser  <simon.fraser@apple.com>
2544
2545         Reviewed by Darin Adler.
2546
2547         Implement the matchMedium method on the Media interface described in the CSSOM View Module.
2548         https://bugs.webkit.org/show_bug.cgi?id=22495
2549         
2550         Add a new Media interface, obtainable via the AbstractView, that can
2551         evaluate queries via its matchesMedium() method.
2552
2553         Test: fast/media/matchmedium-query-api.html
2554
2555         * DerivedSources.cpp:
2556         * DerivedSources.make:
2557         * GNUmakefile.am:
2558         * WebCore.gypi:
2559         * WebCore.pro:
2560         * WebCore.vcproj/WebCore.vcproj:
2561         * WebCore.xcodeproj/project.pbxproj:
2562         * WebCoreSources.bkl:
2563         Add Media.* files to the build.
2564
2565         * css/Media.cpp: Added.
2566         (WebCore::Media::Media):
2567         (WebCore::Media::type):
2568         (WebCore::Media::matchMedium):
2569         * css/Media.h: Added.
2570         (WebCore::Media::create):
2571         (WebCore::Media::document):
2572         * css/Media.idl: Added.
2573         Media::matchMedium() uses a MediaQueryEvaluator() to test the query.
2574
2575         * page/AbstractView.idl:
2576         * page/DOMWindow.cpp:
2577         (WebCore::DOMWindow::media):
2578         * page/DOMWindow.h:
2579         * page/DOMWindow.idl:
2580         Add a readonly attribute for Media.
2581
2582 2009-08-06  Michelangelo De Simone  <micdesim@gmail.com>
2583
2584         Reviewed by Darin Adler.
2585
2586         https://bugs.webkit.org/show_bug.cgi?id=27455
2587         Support for a custom validation message in ValidityState and related
2588         form controls.
2589         http://www.whatwg.org/specs/web-apps/current-work/multipage/forms.html#dom-cva-setcustomvalidity
2590
2591         Tests: fast/forms/ValidityState-customError-001.html
2592                fast/forms/ValidityState-customError-002.html
2593                fast/forms/ValidityState-customError-003.html
2594                fast/forms/ValidityState-customError-004.html
2595
2596         * html/HTMLButtonElement.idl: setCustomValidity DOM method
2597         * html/HTMLFieldSetElement.idl: ditto
2598         * html/HTMLFormControlElement.cpp:
2599         (WebCore::HTMLFormControlElement::setCustomValidity): ditto
2600         * html/HTMLFormControlElement.h:
2601         (WebCore::HTMLFormControlElement::valueMissing): moved down
2602         * html/HTMLInputElement.idl: ditto
2603         * html/HTMLSelectElement.idl: ditto
2604         * html/HTMLTextAreaElement.idl:
2605         * html/ValidityState.h:
2606         (WebCore::ValidityState::setCustomErrorMessage): method to set custom
2607         validation message
2608         (WebCore::ValidityState::customError): validation flag
2609
2610 2009-08-06  Mark Rowe  <mrowe@apple.com>
2611
2612         Bring a little order to our otherwise out of control lives.
2613
2614         * WebCore.xcodeproj/project.pbxproj:
2615
2616 2009-08-06  Mark Rowe  <mrowe@apple.com>
2617
2618         Stop copying .idl files in to the framework resources directory.
2619
2620         * WebCore.xcodeproj/project.pbxproj:
2621
2622 2009-08-06  Mark Rowe  <mrowe@apple.com>
2623
2624         Fix the build some more.
2625
2626         Add JSWebSocket.cpp and JSWebSocket.h to the Xcode project, and move the WebSocket-related
2627         files and groups in to the appropriate locations.
2628
2629         * WebCore.xcodeproj/project.pbxproj:
2630
2631 2009-08-06  Fumitoshi Ukai  <ukai@chromium.org>
2632
2633         Reviewed by Alexey Proskuryakov.
2634
2635         Add WebSocket.idl
2636         https://bugs.webkit.org/show_bug.cgi?id=27209
2637
2638         Add WebSocket.idl in WebCore/websockets/.
2639         Add build systems only for GNUmakefile.am and WebCore.xcodeproj now.
2640         Other build systems will be updated once the code is functional.
2641
2642         * DerivedSources.make:
2643         * GNUmakefile.am:
2644         * WebCore.xcodeproj/project.pbxproj:
2645         * bindings/js/JSWebSocketConstructor.cpp: Added.
2646         * bindings/js/JSWebSocketConstructor.h: Added.
2647         * bindings/js/JSWebSocketCustom.cpp: Added.
2648         * websockets/WebSocket.cpp: Added.
2649         * websockets/WebSocket.h: Added.
2650         * websockets/WebSocket.idl: Added.
2651
2652 2009-08-06  Jian Li  <jianli@chromium.org>
2653
2654         Reviewed by Dimitri Glazkov.
2655
2656         [V8] Style cleaning for WorkerContextExecutionProxy.
2657         https://bugs.webkit.org/show_bug.cgi?id=27997
2658
2659         Cleanup WorkerContextExecutioonProxy related files to follow
2660         WebKit coding styles after all V8 binding codes are upstreamed.
2661         1) Lower-case the first letter of remaining functins in class
2662            WorkerContextExecutionProxy. Update the V8 code generator
2663            and all other references accordingly.
2664         2) Integrate getConstructor from WorkerContextExecutionProxy
2665            to V8DOMWrapper.
2666         3) Other misc changes, like removing trailing whitespaces and
2667            sorting the include files.
2668
2669         * bindings/scripts/CodeGeneratorV8.pm:
2670         * bindings/v8/ScheduledAction.cpp:
2671         (WebCore::ScheduledAction::execute):
2672         * bindings/v8/V8DOMWrapper.cpp:
2673         (WebCore::V8DOMWrapper::getConstructorForContext):
2674         (WebCore::V8DOMWrapper::convertToV8Object):
2675         * bindings/v8/V8DOMWrapper.h:
2676         * bindings/v8/V8WorkerContextEventListener.cpp:
2677         (WebCore::V8WorkerContextEventListener::~V8WorkerContextEventListener):
2678         (WebCore::V8WorkerContextEventListener::handleEvent):
2679         (WebCore::V8WorkerContextEventListener::reportError):
2680         (WebCore::V8WorkerContextEventListener::getReceiverObject):
2681         * bindings/v8/V8WorkerContextObjectEventListener.cpp:
2682         (WebCore::weakObjectEventListenerCallback):
2683         * bindings/v8/WorkerContextExecutionProxy.cpp:
2684         (WebCore::handleConsoleMessage):
2685         (WebCore::WorkerContextExecutionProxy::dispose):
2686         (WebCore::WorkerContextExecutionProxy::initContextIfNeeded):
2687         (WebCore::WorkerContextExecutionProxy::convertToV8Object):
2688         (WebCore::WorkerContextExecutionProxy::convertEventToV8Object):
2689         (WebCore::WorkerContextExecutionProxy::convertEventTargetToV8Object):
2690         (WebCore::WorkerContextExecutionProxy::convertWorkerContextToV8Object):
2691         (WebCore::WorkerContextExecutionProxy::toV8):
2692         (WebCore::WorkerContextExecutionProxy::forgetV8EventObject):
2693         (WebCore::WorkerContextExecutionProxy::removeEventListener):
2694         * bindings/v8/WorkerContextExecutionProxy.h:
2695         (WebCore::WorkerContextExecutionProxy::context):
2696         (WebCore::WorkerContextExecutionProxy::convertToV8Object):
2697         * bindings/v8/custom/V8WorkerContextCustom.cpp:
2698         (WebCore::ACCESSOR_GETTER):
2699         (WebCore::CALLBACK_FUNC_DECL):
2700
2701 2009-08-06  Darin Adler  <darin@apple.com>
2702
2703         Fix Mac Leopard debug build.
2704
2705         * platform/text/StringImpl.cpp:
2706         (WebCore::equalIgnoringCase): Removed meaningless assertion; an unsigned
2707         is always >= 0 and checking causes a warning in the newer versions of gcc.
2708
2709 2009-08-06  Adam Barth  <abarth@webkit.org>
2710
2711         Unreview rollout.
2712
2713         Revert 46840 because it broke the reliability tests.
2714
2715         * bindings/v8/ScheduledAction.cpp:
2716         (WebCore::ScheduledAction::ScheduledAction):
2717         (WebCore::ScheduledAction::execute):
2718         * bindings/v8/ScheduledAction.h:
2719         (WebCore::ScheduledAction::ScheduledAction):
2720         * bindings/v8/custom/V8DOMWindowCustom.cpp:
2721         (WebCore::V8Custom::WindowSetTimeoutImpl):
2722         * bindings/v8/custom/V8WorkerContextCustom.cpp:
2723         (WebCore::SetTimeoutOrInterval):
2724
2725 2009-08-06  Adam Barth  <abarth@webkit.org>
2726
2727         Unreviewed rollout.
2728
2729         Revert 46840 in preparation to revert 46838, which broke the reliability tests.
2730
2731         * bindings/v8/V8Proxy.cpp:
2732         (WebCore::V8Proxy::updateDocumentWrapperCache):
2733         (WebCore::V8Proxy::initContextIfNeeded):
2734         (WebCore::V8Proxy::mainWorldContext):
2735         * bindings/v8/V8Proxy.h:
2736         (WebCore::V8Proxy::context):
2737
2738 2009-08-06  Pavel Feldman  <pfeldman@chromium.org>
2739
2740         Reviewed by Timothy Hatcher.
2741
2742         WebInspector: move style-related utilities into InjectedScript.
2743
2744         http://bugs.webkit.org/show_bug.cgi?id=27939
2745
2746         * inspector/front-end/DOMAgent.js:
2747         (WebInspector.CSSStyleDeclaration):
2748         (WebInspector.CSSStyleDeclaration.prototype.isPropertyImplicit):
2749         (WebInspector.CSSStyleDeclaration.prototype.styleTextWithShorthands):
2750         (WebInspector.CSSStyleDeclaration.prototype.getLonghandProperties):
2751         (WebInspector.CSSStyleDeclaration.prototype.getShorthandPriority):
2752         * inspector/front-end/InjectedScript.js:
2753         (InjectedScript.applyStyleText):
2754         (InjectedScript.toggleStyleEnabled):
2755         (InjectedScript._serializeStyle):
2756         (InjectedScript._getUniqueStyleProperties):
2757         (InjectedScript._getLonghandProperties):
2758         (InjectedScript._getShorthandPriority):
2759         * inspector/front-end/StylesSidebarPane.js:
2760         (WebInspector.StylesSidebarPane.prototype._update):
2761         (WebInspector.StylePropertiesSection.prototype.isPropertyOverloaded):
2762         (WebInspector.StylePropertiesSection.prototype.onpopulate):
2763         (WebInspector.StylePropertyTreeElement.prototype.get priority):
2764         (WebInspector.StylePropertyTreeElement.prototype.get value):
2765         (WebInspector.StylePropertyTreeElement.prototype):
2766         * inspector/front-end/utilities.js:
2767
2768 2009-08-06  Simon Hausmann  <simon.hausmann@nokia.com>
2769
2770         Unreviewed build fix, add #ifdef guards around
2771         inclusions of shared worker specific files.
2772
2773         * bindings/js/JSEventTarget.cpp:
2774         * bindings/js/JSWorkerContextBase.cpp:
2775         * bindings/js/WorkerScriptController.cpp:
2776
2777 2009-08-06  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
2778
2779         Reviewed by Darin Adler.
2780
2781         cssgrammar.cpp fails to compile with RVCT compiler
2782         https://bugs.webkit.org/show_bug.cgi?id=27952
2783
2784         * css/CSSGrammar.y: Do not convert to String to get rid of the stray
2785         memory allocation 
2786
2787         * platform/text/StringImpl.cpp:
2788         (WebCore::equalIgnoringCase):
2789         * platform/text/StringImpl.h: 
2790         (WebCore::equalIgnoringCase): Add charactersEqualIgnoringCase
2791           function that works with a character pointer and length
2792
2793 2009-08-06  Drew Wilson  <atwilson@google.com>
2794
2795         Reviewed by David Levin.
2796
2797         Created first working implementation of SharedWorkers (execution only, no sharing).
2798         https://bugs.webkit.org/show_bug.cgi?id=27927
2799
2800         Added initial implementations of SharedWorkerThread and SharedWorkerContext.
2801         No v8 bindings yet.
2802
2803         * DerivedSources.cpp:
2804         Added shared worker files.
2805         * DerivedSources.make:
2806         Added shared worker files.
2807         * GNUmakefile.am:
2808         Added shared worker files.
2809         * WebCore.gypi:
2810         Added shared worker files.
2811         * WebCore.pro:
2812         Added shared worker files.
2813         * WebCore.vcproj/WebCore.vcproj:
2814         Added shared worker files.
2815         * WebCore.xcodeproj/project.pbxproj:
2816         Added shared worker files.
2817         * bindings/js/JSEventTarget.cpp:
2818         (WebCore::toJS):
2819         Added code to convert from EventTarget to correct JS class.
2820         (WebCore::toEventTarget):
2821         Added code to cast from JS object to appropriate EventTarget impl class.
2822         * bindings/js/JSSharedWorkerConstructor.cpp:
2823         (WebCore::JSSharedWorkerConstructor::JSSharedWorkerConstructor):
2824         (WebCore::constructSharedWorker):
2825         Tweaked the constructor code to pass in the lexical global object like normal workers.
2826         * bindings/js/JSSharedWorkerContextCustom.cpp: Added.
2827         (WebCore::JSSharedWorkerContext::mark):
2828         Custom marking of the onconnect handler.
2829         * bindings/js/JSWorkerContextBase.cpp:
2830         (WebCore::toJSSharedWorkerContext):
2831         (WebCore::toJSWorkerContext):
2832         Added proper conversion to the correct WorkerContext derived class.
2833         * bindings/js/JSWorkerContextBase.h:
2834         * bindings/js/WorkerScriptController.cpp:
2835         (WebCore::WorkerScriptController::initScript):
2836         Updated WorkerScriptController to create the correct type of binding object (JSSharedWorkerContext vs JSDedicatedWorkerContext)
2837         * bindings/scripts/CodeGeneratorV8.pm:
2838         Added support for SharedWorkerContext.
2839         * bindings/v8/DOMObjectsInclude.h:
2840         Added shared worker bindings files.
2841         * dom/EventNames.h:
2842         Added connect event.
2843         * dom/EventTarget.cpp:
2844         (WebCore::EventTarget::toSharedWorkerContext):
2845         Added API for casting to new derived class (SharedWorkerContext).
2846         * dom/EventTarget.h:
2847         * workers/AbstractWorker.cpp:
2848         (WebCore::AbstractWorker::resolveURL):
2849         Moved code that resolves/validates URLs to base class so it can be shared between dedicated/shared workers.
2850         * workers/AbstractWorker.h:
2851         * workers/DedicatedWorkerContext.cpp:
2852         (WebCore::DedicatedWorkerContext::logException):
2853         Refactored exception handling code - moved onerror handling to base class.
2854         * workers/DedicatedWorkerContext.h:
2855         (WebCore::DedicatedWorkerContext::isDedicatedWorkerContext):
2856         * workers/SharedWorker.cpp:
2857         (WebCore::SharedWorker::SharedWorker):
2858         Changed constructor to fire up worker thread.
2859         * workers/SharedWorker.h:
2860         * workers/SharedWorkerContext.cpp: Added.
2861         (WebCore::SharedWorkerContext::SharedWorkerContext):
2862         (WebCore::SharedWorkerContext::~SharedWorkerContext):
2863         (WebCore::SharedWorkerContext::logException):
2864         (WebCore::SharedWorkerContext::addMessage):
2865         Placeholder methods until we add support for sending exceptions/messages to console.
2866         (WebCore::SharedWorkerContext::dispatchConnect):
2867         (WebCore::SharedWorkerContext::thread):
2868         * workers/SharedWorkerContext.h: Added.
2869         (WebCore::SharedWorkerContext::create):
2870         (WebCore::SharedWorkerContext::isSharedWorkerContext):
2871         (WebCore::SharedWorkerContext::toSharedWorkerContext):
2872         (WebCore::SharedWorkerContext::setOnconnect):
2873         (WebCore::SharedWorkerContext::onconnect):
2874         (WebCore::SharedWorkerContext::name):
2875         * workers/SharedWorkerContext.idl: Added.
2876         * workers/SharedWorkerRepository.h: Added.
2877         (WebCore::SharedWorkerRepository::~SharedWorkerRepository):
2878         * workers/DefaultSharedWorkerRepository.cpp: Added.
2879         Implementation of core singleton class that will be used to implement sharing.
2880         (WebCore::SharedWorkerProxy::setThread):
2881         Proxy object used to handle resource loading for a given shared worker.
2882         (WebCore::SharedWorkerProxy::postTaskToLoader):
2883         (WebCore::SharedWorkerProxy::postTaskForModeToWorkerContext):
2884         Placeholder routines until we implement loading.
2885         (WebCore::SharedWorkerConnectTask::create):
2886         Creates a task to fire off a connect event on the worker thread.
2887         (WebCore::SharedWorkerConnectTask::SharedWorkerConnectTask):
2888         (WebCore::SharedWorkerConnectTask::performTask):
2889         (WebCore::SharedWorkerLoader::SharedWorkerLoader):
2890         Added helper object to load the initial script for the worker.
2891         (WebCore::SharedWorkerLoader::load):
2892         (WebCore::SharedWorkerLoader::notifyFinished):
2893         (WebCore::SharedWorkerRepository::instance):
2894         (WebCore::DefaultSharedWorkerRepository::instance):
2895         (WebCore::DefaultSharedWorkerRepository::workerScriptLoaded):
2896         Fires off the worker thread once the script is loaded.
2897         (WebCore::SharedWorkerRepository::connect):
2898         (WebCore::DefaultSharedWorkerRepository::DefaultSharedWorkerRepository):
2899         (WebCore::DefaultSharedWorkerRepository::~DefaultSharedWorkerRepository):
2900         * workers/DefaultSharedWorkerRepository.h: Added.
2901         * workers/SharedWorkerThread.cpp: Added.
2902         (WebCore::SharedWorkerThread::create):
2903         (WebCore::SharedWorkerThread::SharedWorkerThread):
2904         (WebCore::SharedWorkerThread::~SharedWorkerThread):
2905         (WebCore::SharedWorkerThread::createWorkerContext):
2906         * workers/SharedWorkerThread.h: Added.
2907         * workers/Worker.cpp:
2908         (WebCore::Worker::Worker):
2909         * workers/WorkerContext.cpp:
2910         (WebCore::WorkerContext::reportException):
2911         * workers/WorkerContext.h:
2912         (WebCore::WorkerContext::isSharedWorkerContext):
2913         (WebCore::WorkerContext::isDedicatedWorkerContext):
2914         Added APIs to determine the type of a given context.
2915
2916 2009-08-06  Chris Marrin  <cmarrin@apple.com>
2917
2918         Reviewed by David Hyatt.
2919
2920         Added ENABLE_3D_CANVAS flag to build, default to off
2921
2922         * Configurations/FeatureDefines.xcconfig:
2923
2924 2009-08-06  Andras Becsi  <becsi.andras@stud.u-szeged.hu>
2925
2926         Reviewed by Simon Hausmann.
2927
2928         [Qt] windowsKeyCodeForKeyEvent fix
2929
2930         Fix windowsKeyCodeForKeyEvent to determine wheter the event comes from the keypad.
2931
2932         * platform/qt/PlatformKeyboardEventQt.cpp:
2933         (WebCore::windowsKeyCodeForKeyEvent):
2934         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
2935
2936 2009-08-06  George Staikos  <george.staikos@torchmobile.com>
2937
2938         Rubber-stamped by Ariya Hidayat.
2939
2940         Remove the dead wince/ directory that should never have gone in.
2941
2942         * svg/graphics/wince: Removed.
2943         * svg/graphics/wince/SVGResourceFilterWince.cpp: Removed.
2944
2945 2009-08-06  Pavel Feldman  <pfeldman@chromium.org>
2946
2947         Reviewed by Timothy Hatcher.
2948
2949         WebInspector: Extract style editing into a separate file that is
2950         going to be loaded in page context.
2951
2952         https://bugs.webkit.org/show_bug.cgi?id=27939
2953
2954         * inspector/front-end/InjectedScript.js: Added.
2955         (InjectedScript.applyStyleText):
2956         (InjectedScript.setStyleText):
2957         (InjectedScript.toggleStyleEnabled):
2958         (InjectedScript.setStyleRule):
2959         * inspector/front-end/StylesSidebarPane.js:
2960         (WebInspector.StylePropertiesSection.prototype.editingSelectorCommitted.callback):
2961         (WebInspector.StylePropertiesSection.prototype.editingSelectorCommitted):
2962         (WebInspector.StylePropertyTreeElement.prototype.):
2963         (WebInspector.StylePropertyTreeElement.prototype):
2964         * inspector/front-end/WebKit.qrc:
2965         * inspector/front-end/inspector.html:
2966
2967 2009-08-06  Adam Barth  <abarth@webkit.org>
2968
2969         Reviewed by David Levin.
2970
2971         [V8] Remove bug-bait V8Proxy::context()
2972         https://bugs.webkit.org/show_bug.cgi?id=27826
2973
2974         * bindings/v8/V8Proxy.cpp:
2975         (WebCore::V8Proxy::updateDocumentWrapperCache):
2976         (WebCore::V8Proxy::initContextIfNeeded):
2977         (WebCore::V8Proxy::mainWorldContext):
2978         * bindings/v8/V8Proxy.h:
2979
2980 2009-08-06  Adam Barth  <abarth@webkit.org>
2981
2982         Unreviewed attempt to fix the Chromium Linux build.  This function is
2983         not used.
2984
2985         * bindings/v8/OwnHandle.h:
2986
2987 2009-08-06  Adam Barth  <abarth@webkit.org>
2988
2989         Reviewed by Eric Seidel.
2990
2991         [V8] Teach ScheduledAction::execute about isolated worlds
2992         https://bugs.webkit.org/show_bug.cgi?id=27703
2993
2994         We now save a weak handle to the original context.  We use that handle
2995         to call the timeout in the right context / world.
2996
2997         Tests: http/tests/security/isolatedWorld/window-setTimeout-function.html
2998                http/tests/security/isolatedWorld/window-setTimeout-string.html
2999
3000         * bindings/v8/ScheduledAction.cpp:
3001         (WebCore::ScheduledAction::ScheduledAction):
3002         (WebCore::ScheduledAction::execute):
3003         * bindings/v8/ScheduledAction.h:
3004         (WebCore::ScheduledAction::ScheduledAction):
3005         * bindings/v8/custom/V8DOMWindowCustom.cpp:
3006         (WebCore::V8Custom::WindowSetTimeoutImpl):
3007         * bindings/v8/custom/V8WorkerContextCustom.cpp:
3008         (WebCore::SetTimeoutOrInterval):
3009
3010 2009-08-05  Dimitri Glazkov  <dglazkov@chromium.org>
3011
3012         Unreviewed, build fix.
3013
3014         [V8] Revert http://trac.webkit.org/changeset/46821, which was
3015         landed to supplement http://trac.webkit.org/changeset/46816, but
3016         now that the latter is reverted, the former needs the same.
3017
3018         * bindings/v8/DOMObjectsInclude.h:
3019         * bindings/v8/DerivedSourcesAllInOne.cpp:
3020         * bindings/v8/V8Index.cpp:
3021         * bindings/v8/V8Index.h:
3022
3023 2009-08-05  Joseph Pecoraro  <joepeck02@gmail.com>
3024
3025         Reviewed by Timothy Hatcher.
3026
3027         Color is only reported in rgb() format; should toggle between rgb() and hex
3028         https://bugs.webkit.org/show_bug.cgi?id=13516
3029
3030           New Class to Parse and Change Between Color Representations:
3031
3032         * inspector/front-end/Color.js: Added.
3033         (WebInspector.Color):
3034
3035           Representations of Colors in Raw Form. (May be Lazy Loaded):
3036
3037         (WebInspector.Color.prototype.get shorthex):
3038         (WebInspector.Color.prototype.get hex):
3039         (WebInspector.Color.prototype.set hex):
3040         (WebInspector.Color.prototype.get rgb):
3041         (WebInspector.Color.prototype.set rgb):
3042         (WebInspector.Color.prototype.get hsl):
3043         (WebInspector.Color.prototype.set hsl):
3044         (WebInspector.Color.prototype.get nickname):
3045         (WebInspector.Color.prototype.set nickname):
3046         (WebInspector.Color.prototype.get rgba):
3047         (WebInspector.Color.prototype.set rgba):
3048         (WebInspector.Color.prototype.get hsla):
3049         (WebInspector.Color.prototype.set hsla):
3050
3051           Helpers and Standard String Representations:
3052
3053         (WebInspector.Color.prototype.hasShortHex):
3054         (WebInspector.Color.prototype.toRgb):
3055         (WebInspector.Color.prototype.toHsl):
3056         (WebInspector.Color.prototype.toShortHex):
3057         (WebInspector.Color.prototype.toHex):
3058         (WebInspector.Color.prototype.toRgba):
3059         (WebInspector.Color.prototype.toHsla):
3060         (WebInspector.Color.prototype.toNickname):
3061
3062           Conversion Functions to Determine Other Representations:
3063           My Sources for all algorithms and sample data:
3064           Wikipedia: http://en.wikipedia.org/wiki/HSV_color_space
3065           CSS Specification: http://www.w3.org/TR/css3-color/#hsla-color
3066
3067         (WebInspector.Color.prototype.rgbToHex):
3068         (WebInspector.Color.prototype.hexToRgb):
3069         (WebInspector.Color.prototype.rgbToHsl):
3070         (WebInspector.Color.prototype.hslToRgb.hueToRgb):
3071         (WebInspector.Color.prototype.hslToRgb):
3072         (WebInspector.Color.prototype.rgbaToHsla):
3073         (WebInspector.Color.prototype.hslaToRgba):
3074
3075           Called from the constructor, attempts to parse and will throw an error
3076           if it cannot parse.  If simple then the "hex" value is guarenteed.
3077           If advanced then both the "rgba" and "hsla" are guarenteed.  If it is
3078           a nickname in any way (e.g. "transparent", "black") then this is
3079           guarenteed to be set as well.
3080
3081         (WebInspector.Color.prototype.parse):
3082
3083           Clicking on the swatch will rotate through Color Representations.
3084             Simple:   rgb -> hsl -> nickname? -> shorthex? -> hex -> (loop around)
3085             Advanced: rgba -> hsla -> nickname? -> (loop around)
3086
3087         * inspector/front-end/StylesSidebarPane.js:
3088         (WebInspector.StylePropertyTreeElement.prototype.updateTitle.value.):
3089         (WebInspector.StylePropertyTreeElement.prototype.updateTitle):
3090
3091           Load Color.js:
3092
3093         * inspector/front-end/inspector.html:
3094
3095 2009-08-05  John Abd-El-Malek  <jam@chromium.org>
3096
3097         Reviewed by Dimitri Glazkov.
3098
3099         Support setting event listeners for message ports in the worker process.
3100
3101         https://bugs.webkit.org/show_bug.cgi?id=28004
3102
3103         * bindings/v8/WorkerContextExecutionProxy.cpp:
3104         (WebCore::WorkerContextExecutionProxy::retrieve):
3105         (WebCore::WorkerContextExecutionProxy::EventTargetToV8Object):
3106         * bindings/v8/WorkerContextExecutionProxy.h:
3107         * bindings/v8/custom/V8MessagePortCustom.cpp:
3108         (WebCore::getEventListener):
3109         (WebCore::ACCESSOR_SETTER):
3110         (WebCore::CALLBACK_FUNC_DECL):
3111
3112 2009-08-05  Stephen White  <senorblanco@chromium.org>
3113
3114         Reviewed by Dimitri Glazkov.
3115
3116         http://bugs.webkit.org/show_bug.cgi?id=28022
3117
3118         Minor fix for media code on chromium/skia.
3119
3120         * rendering/RenderThemeChromiumSkia.cpp:
3121         (WebCore::RenderThemeChromiumSkia::paintMediaSliderTrack):
3122
3123 2009-08-05  Darin Adler  <darin@apple.com>
3124
3125         Reviewed by Dan Bernstein.
3126
3127         Client side image maps did not handle zoom correctly.
3128         Client side image maps did not handle border and padding correctly.
3129
3130         Test: fast/images/image-map-zoom.html
3131
3132         * rendering/RenderImage.cpp:
3133         (WebCore::RenderImage::nodeAtPoint): Compute the values to pass in to the map
3134         element using the content box and the effective zoom.
3135
3136 2009-08-05  Alexey Proskuryakov  <ap@apple.com>
3137
3138         Reviewed by Oliver Hunt.
3139
3140         https://bugs.webkit.org/show_bug.cgi?id=28027
3141         <rdar://7064428> Files with accents in names are submitted incorrectly due to use of
3142         precomposed Unicode
3143
3144         * platform/network/mac/FormDataStreamMac.mm: (WebCore::setHTTPBody): Use getFileSize() from
3145         FileSystem.h instead of custom code for getting file size. This adds path normalization
3146         necessary with some file systems on Mac. This also loses a S_IFMT check, which didn't seem
3147         important anyway.
3148
3149 2009-08-05  Dimitri Glazkov  <dglazkov@chromium.org>
3150
3151         Unreviewed, build fix.
3152
3153         [V8] Include Media into V8 bindings.
3154
3155         * bindings/v8/DOMObjectsInclude.h: Added Media include.
3156         * bindings/v8/DerivedSourcesAllInOne.cpp: Added V8Media include.
3157         * bindings/v8/V8Index.cpp: Added decl for V8Media.
3158         * bindings/v8/V8Index.h: Added V8Media include.
3159
3160 2009-08-04  Jon Honeycutt  <jhoneycutt@apple.com>
3161
3162         Fix Windows layout test crashes.
3163
3164         PluginView::removeFromUnstartedListIfNecessary() would try to remove
3165         any unstarted PluginView from the Page's set of unstarted plug-ins,
3166         regardless of why the PluginView wasn't started. If we tried to start a
3167         plug-in, but it failed to start, we would hit an assertion in
3168         Page::removeUnstartedPlugin() that asserts that we would only modify the
3169         unstarted plug-ins set if we were not currently starting plug-ins.
3170
3171         Fix this by having PluginView track whether it's waiting to be started,
3172         and to check this before trying to remove itself from the Page's
3173         unstarted plug-ins set.
3174
3175         Reviewed by Darin Adler.
3176
3177         * page/Page.cpp:
3178         (WebCore::Page::removeUnstartedPlugin):
3179         Assert that the passed PluginView is in the unstarted set.
3180
3181         * plugins/PluginView.cpp:
3182         (WebCore::PluginView::start):
3183         Set that we are not waiting to be started.
3184         (WebCore::PluginView::startOrAddtoUnstartedList):
3185         Set that we are waiting to be started.
3186         (WebCore::PluginView::removeFromUnstartedListIfNecessary):
3187         Check not whether we are started, but whether we are waiting to be
3188         started.
3189         (WebCore::PluginView::PluginView):
3190
3191         * plugins/PluginView.h:
3192
3193 2009-08-05  Jeremy Orlow  <jorlow@chromium.org>
3194
3195        Fix DOM Storage memory leak
3196        https://bugs.webkit.org/show_bug.cgi?id=28029
3197
3198        Forgot to use adoptRef in one place.  This caused the = operator to
3199        increment the ref count when it shouldn't have, so StorageAreaImpl's were
3200        never freed.
3201
3202         * storage/StorageNamespaceImpl.cpp:
3203         (WebCore::StorageNamespaceImpl::storageArea):
3204
3205 2009-08-05  Dimitri Glazkov  <dglazkov@chromium.org>
3206
3207         Unreviewed, build fix.
3208
3209         [Chromium] Let CodeGeneratorV8.pm know that Media is ref-counted.
3210
3211         * bindings/scripts/CodeGeneratorV8.pm: Added Media check to IsRefPtrType.
3212
3213 2009-08-05  Darin Adler  <darin@apple.com>
3214
3215         Reviewed by David Levin.
3216
3217         Use checked casts for render tree
3218         https://bugs.webkit.org/show_bug.cgi?id=23522
3219
3220         Last patch. Makes all the casts of RenderObject use checked
3221         casts instead of using static_cast directly.
3222
3223         * accessibility/AccessibilityListBox.cpp:
3224         (WebCore::AccessibilityListBox::visibleChildren):
3225         (WebCore::AccessibilityListBox::doAccessibilityHitTest):
3226         * accessibility/AccessibilityListBoxOption.cpp:
3227         (WebCore::AccessibilityListBoxOption::elementRect):
3228         * accessibility/AccessibilityRenderObject.cpp:
3229         (WebCore::AccessibilityRenderObject::textUnderElement):
3230         (WebCore::AccessibilityRenderObject::stringValue):
3231         (WebCore::AccessibilityRenderObject::titleUIElement):
3232         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
3233         * accessibility/AccessibilitySlider.cpp:
3234         (WebCore::AccessibilitySliderThumb::elementRect):
3235         * dom/InputElement.cpp:
3236         (WebCore::InputElement::updatePlaceholderVisibility):
3237         * dom/SelectElement.cpp:
3238         (WebCore::SelectElement::scrollToSelection):
3239         (WebCore::SelectElement::recalcStyle):
3240         (WebCore::SelectElement::setRecalcListItems):
3241         (WebCore::SelectElement::menuListDefaultEventHandler):
3242         (WebCore::SelectElement::listBoxDefaultEventHandler):
3243         * editing/BreakBlockquoteCommand.cpp:
3244         (WebCore::BreakBlockquoteCommand::doApply):
3245         * html/HTMLAppletElement.cpp:
3246         (WebCore::HTMLAppletElement::renderWidgetForJSBindings):
3247         * html/HTMLCanvasElement.cpp:
3248         (WebCore::HTMLCanvasElement::reset):
3249         * html/HTMLEmbedElement.cpp:
3250         (WebCore::HTMLEmbedElement::updateWidget):
3251         * html/HTMLFrameElementBase.cpp:
3252         (WebCore::HTMLFrameElementBase::attach):
3253         * html/HTMLFrameSetElement.cpp:
3254         (WebCore::HTMLFrameSetElement::defaultEventHandler):
3255         * html/HTMLIFrameElement.cpp:
3256         (WebCore::HTMLIFrameElement::attach):
3257         * html/HTMLInputElement.cpp:
3258         (WebCore::HTMLInputElement::defaultEventHandler):
3259         (WebCore::HTMLInputElement::addSearchResult):
3260         (WebCore::HTMLInputElement::onSearch):
3261         * html/HTMLLIElement.cpp:
3262         (WebCore::HTMLLIElement::parseMappedAttribute):
3263         (WebCore::HTMLLIElement::attach):
3264         * html/HTMLMediaElement.cpp:
3265         (WebCore::HTMLMediaElement::setReadyState):
3266         (WebCore::HTMLMediaElement::mediaPlayerDurationChanged):
3267         (WebCore::HTMLMediaElement::mediaPlayerSizeChanged):
3268         (WebCore::HTMLMediaElement::mediaPlayerRenderingCanBeAccelerated):
3269         (WebCore::HTMLMediaElement::mediaPlayerGraphicsLayer):
3270         (WebCore::HTMLMediaElement::defaultEventHandler):
3271         (WebCore::HTMLMediaElement::finishParsingChildren):
3272         * html/HTMLOListElement.cpp:
3273         (WebCore::HTMLOListElement::parseMappedAttribute):
3274         * html/HTMLObjectElement.cpp:
3275         (WebCore::HTMLObjectElement::updateWidget):
3276         * html/HTMLTextAreaElement.cpp:
3277         (WebCore::HTMLTextAreaElement::defaultEventHandler):
3278         * page/DragController.cpp:
3279         (WebCore::DragController::concludeEditDrag):
3280         * page/EventHandler.cpp:
3281         (WebCore::EventHandler::selectCursor):
3282         (WebCore::EventHandler::capsLockStateMayHaveChanged):
3283         * page/Frame.cpp:
3284         (WebCore::Frame::ownerRenderer):
3285         * page/FrameView.cpp:
3286         (WebCore::FrameView::detachCustomScrollbars):
3287         * page/wince/FrameWince.cpp:
3288         (WebCore::computePageRectsForFrame):
3289         * rendering/InlineFlowBox.cpp:
3290         (WebCore::InlineFlowBox::placeBoxesHorizontally):
3291         * rendering/MediaControlElements.cpp:
3292         (WebCore::MediaControlTimelineElement::defaultEventHandler):
3293         * rendering/RenderBlockLineLayout.cpp:
3294         (WebCore::RenderBlock::findNextLineBreak):
3295         * rendering/RenderCounter.cpp:
3296         (WebCore::planCounter):
3297         * rendering/RenderFrameSet.cpp:
3298         (WebCore::RenderFrameSet::computeEdgeInfo):
3299         (WebCore::RenderFrameSet::setIsResizing):
3300         * rendering/RenderLayerBacking.cpp:
3301         (WebCore::RenderLayerBacking::contentsBox):
3302         * rendering/RenderLayerCompositor.cpp:
3303         (WebCore::RenderLayerCompositor::updateBacking):
3304         (WebCore::RenderLayerCompositor::requiresCompositingForVideo):
3305         * rendering/RenderListItem.cpp:
3306         (WebCore::previousListItem):
3307         (WebCore::RenderListItem::explicitValueChanged):
3308         * rendering/RenderObject.cpp:
3309         (WebCore::updateListMarkerNumbers):
3310         * rendering/RenderObjectChildList.cpp:
3311         (WebCore::updateListMarkerNumbers):
3312         (WebCore::invalidateCountersInContainer):
3313         * rendering/RenderScrollbarTheme.cpp:
3314         (WebCore::RenderScrollbarTheme::minimumThumbLength):
3315         (WebCore::RenderScrollbarTheme::backButtonRect):
3316         (WebCore::RenderScrollbarTheme::forwardButtonRect):
3317         (WebCore::RenderScrollbarTheme::trackRect):
3318         (WebCore::RenderScrollbarTheme::constrainTrackRectToTrackPieces):
3319         (WebCore::RenderScrollbarTheme::paintScrollbarBackground):
3320         (WebCore::RenderScrollbarTheme::paintTrackBackground):
3321         (WebCore::RenderScrollbarTheme::paintTrackPiece):
3322         (WebCore::RenderScrollbarTheme::paintButton):
3323         (WebCore::RenderScrollbarTheme::paintThumb):
3324         * rendering/RenderSlider.cpp:
3325         (WebCore::SliderThumbElement::defaultEventHandler):
3326         * rendering/RenderThemeChromiumMac.mm:
3327         (WebCore::RenderThemeChromiumMac::paintSliderThumb):
3328         (WebCore::RenderThemeChromiumMac::paintMediaSliderTrack):
3329         * rendering/RenderThemeChromiumWin.cpp:
3330         (WebCore::RenderThemeChromiumWin::determineSliderThumbState):
3331         * rendering/RenderThemeMac.mm:
3332         (WebCore::RenderThemeMac::paintSliderThumb):
3333         * rendering/RenderThemeSafari.cpp:
3334         (WebCore::RenderThemeSafari::paintSliderThumb):
3335         * rendering/RenderThemeWin.cpp:
3336         (WebCore::RenderThemeWin::determineSliderThumbState):
3337         * rendering/SVGCharacterLayoutInfo.cpp:
3338         (WebCore::SVGCharacterLayoutInfo::addLayoutInformation):
3339         * rendering/SVGRootInlineBox.cpp:
3340         (WebCore::findSVGRootObject):
3341         * rendering/TextControlInnerElements.cpp:
3342         (WebCore::RenderTextControlInnerBlock::nodeAtPoint):
3343         (WebCore::SearchFieldResultsButtonElement::defaultEventHandler):
3344         * svg/SVGImageElement.cpp:
3345         (WebCore::SVGImageElement::attach):
3346         * svg/SVGMarkerElement.cpp:
3347         (WebCore::SVGMarkerElement::canvasResource):
3348         * svg/SVGTextContentElement.cpp:
3349         (WebCore::rootInlineBoxForTextContentElement):
3350         * wml/WMLInputElement.cpp:
3351         (WebCore::WMLInputElement::defaultEventHandler):
3352         Use checked casts.
3353
3354         * rendering/RenderApplet.h:
3355         * rendering/RenderCounter.h:
3356         * rendering/RenderFieldset.h:
3357         * rendering/RenderFileUploadControl.h:
3358         * rendering/RenderFrame.h:
3359         * rendering/RenderFrameSet.h:
3360         * rendering/RenderHTMLCanvas.h:
3361         * rendering/RenderListBox.h:
3362         * rendering/RenderListItem.h:
3363         * rendering/RenderListMarker.h:
3364         * rendering/RenderMedia.h:
3365         * rendering/RenderMenuList.h:
3366         * rendering/RenderPart.h:
3367         * rendering/RenderPartObject.h:
3368         * rendering/RenderPath.h:
3369         * rendering/RenderSVGContainer.h:
3370         * rendering/RenderSVGRoot.h:
3371         * rendering/RenderSVGTextPath.h:
3372         * rendering/RenderSVGViewportContainer.h:
3373         * rendering/RenderScrollbar.h:
3374         * rendering/RenderSlider.h:
3375         * rendering/RenderTextControlMultiLine.h:
3376         * rendering/RenderTextControlSingleLine.h:
3377         * rendering/RenderVideo.h:
3378         Added a checked cast. Also made most members protected or private.
3379
3380         * rendering/RenderBlock.h:
3381         * rendering/RenderInline.h:
3382         * rendering/RenderReplaced.h:
3383         * rendering/RenderSVGBlock.h:
3384         * rendering/RenderSVGImage.h:
3385         * rendering/RenderSVGInlineText.h:
3386         * rendering/RenderSVGText.h:
3387         * rendering/RenderTextControl.h:
3388         Made most members protected or private.
3389
3390         * rendering/RenderInline.cpp:
3391         * rendering/RenderSVGContainer.cpp:
3392         * rendering/RenderSVGHiddenContainer.cpp:
3393         * rendering/RenderSVGImage.cpp:
3394         * rendering/RenderSVGRoot.cpp:
3395         Removed unneeded destructor.
3396
3397         * rendering/RenderSVGHiddenContainer.h:
3398         Removed unneeded virtual function overrides that did the same as
3399         the default and base class.
3400
3401         * rendering/RenderSVGViewportContainer.cpp:
3402         (WebCore::RenderSVGViewportContainer::paint): Updated to use m_viewport
3403         directly instead of using a function call.
3404         (WebCore::RenderSVGViewportContainer::applyViewportClip): Ditto.
3405         (WebCore::RenderSVGViewportContainer::viewportTransform): Ditto.
3406         (WebCore::RenderSVGViewportContainer::localToParentTransform): Ditto.
3407         (WebCore::RenderSVGViewportContainer::pointIsInsideViewportClip): Ditto.
3408
3409         * rendering/RenderScrollbar.cpp:
3410         (WebCore::pseudoForScrollbarPart): Changed switch statement to use cases for
3411         all values instead of using a default case.
3412
3413         * rendering/RenderTreeAsText.cpp:
3414         (WebCore::operator<<): Removed dependency on casting to types that don't
3415         have any public members we need to get at. Instead, use function names to
3416         identify the type rather than doing so much overloading. Changed to use
3417         checked casts.
3418         (WebCore::write): Ditto.
3419
3420         * rendering/SVGRenderSupport.cpp:
3421         (WebCore::renderSubtreeToImage): Changed to use a checked cast and also
3422         added a comment about the fact that the code does not do sufficient type
3423         checking before doing the cast.
3424
3425         * rendering/SVGRenderTreeAsText.cpp:
3426         (WebCore::writeRenderSVGTextBox): Renamed this from operator<<.
3427         (WebCore::writeSVGInlineTextBoxes): Renamed this from writeSVGInlineText.
3428         (WebCore::writeSVGText): Renamed this from write.
3429         (WebCore::writeSVGInlineText): Ditto.
3430         (WebCore::writeSVGImage): Ditto.
3431         * rendering/SVGRenderTreeAsText.h: Updated for name changes. Removed
3432         unneeded default arguments.
3433
3434 2009-08-05  Peter Kasting  <pkasting@google.com>
3435
3436         Reviewed by Sam Weinig.
3437
3438         https://bugs.webkit.org/show_bug.cgi?id=27851
3439         Fix a pair of compiler warnings on the GTK Linux buildbot.
3440
3441         * platform/image-decoders/bmp/BMPImageDecoder.cpp:
3442         (WebCore::BMPImageDecoder::processFileHeader): Don't use multi-character constants, they're not portable.
3443         * platform/image-decoders/ico/ICOImageDecoder.cpp:
3444         (WebCore::ICOImageDecoder::setSize): Simpler code that also doesn't compare signed with unsigned.
3445
3446 2009-08-05  Peter Kasting  <pkasting@google.com>
3447
3448         Reviewed by Eric Seidel.
3449
3450         https://bugs.webkit.org/show_bug.cgi?id=26460
3451         Return multiple icon entries from the ICO decoder as separate frames,
3452         sorted by decreasing quality (much like the CG ICO decoder does).
3453
3454         As a result of this change, we can eliminate the Skia-specific setData()
3455         hack that the Chromium port used to select the desired icon size -- now
3456         callers can just enumerate the frames and ask for the data from the one
3457         they like.
3458         
3459         Under the hood, the ICO decoder now keeps vectors for a number of things
3460         (including directory entries and image decoders) where it used to have
3461         single members.  However, callers (that I have seen) will only request
3462         one frame from the icon, so practically there aren't going to be lots of
3463         instantiated image decoders.
3464
3465         * platform/graphics/ImageSource.h: Move |m_decoder| back to private now that Skia no longer needs to access it.
3466         * platform/graphics/cairo/ImageSourceCairo.cpp:
3467         (WebCore::createDecoder): Remove size argument from ICO decoder instantiation.
3468         * platform/graphics/skia/ImageSourceSkia.cpp:
3469         (WebCore::createDecoder): Remove size argument from ICO decoder instantiation.
3470         (WebCore::ImageSource::setData): Remove function to ask for a particular icon size.
3471         * platform/graphics/skia/ImageSourceSkia.h: Removed.
3472         * platform/graphics/wx/ImageSourceWx.cpp:
3473         (WebCore::createDecoder): Remove size argument from ICO decoder instantiation.
3474         * platform/image-decoders/ico/ICOImageDecoder.cpp:
3475         (WebCore::ICOImageDecoder::ICOImageDecoder):
3476         (WebCore::ICOImageDecoder::~ICOImageDecoder): Delete all instantiated per-frame decoders.
3477         (WebCore::ICOImageDecoder::setData): Send data to all instantiated per-frame decoders.
3478         (WebCore::ICOImageDecoder::isSizeAvailable): Use size from icon directory instead of PNG decoder (if applicable) so we can report it without decoding the PNG frames.
3479         (WebCore::ICOImageDecoder::size): Report frame-specific size if BMP decoder is calling.  Otherwise, use size from icon directory instead of PNG decoder (if applicable).
3480         (WebCore::ICOImageDecoder::frameSizeAtIndex): Implement.
3481         (WebCore::ICOImageDecoder::setSize): Sanity check value if BMP decoder is calling.
3482         (WebCore::ICOImageDecoder::frameCount): Implement.
3483         (WebCore::ICOImageDecoder::frameBufferAtIndex): Sanity check size for PNG frames.
3484         (WebCore::ICOImageDecoder::compareEntries): Add utility function for sorting entries.
3485         (WebCore::ICOImageDecoder::setDataForPNGDecoderAtIndex): Factor out utility function for passing correct data blob to a PNG decoder.
3486         (WebCore::ICOImageDecoder::decodeWithCheckForDataEnded): Split decode() into two pieces.
3487         (WebCore::ICOImageDecoder::decodeDirectory): The first part of the old decode().
3488         (WebCore::ICOImageDecoder::decodeAtIndex): The second part of the old decode(), split off so we avoid decoding an entry until it's requested.
3489         (WebCore::ICOImageDecoder::processDirectory): Add resizing of internal data structures based on directory contents.
3490         (WebCore::ICOImageDecoder::processDirectoryEntries): Sort entries by quality.
3491         (WebCore::ICOImageDecoder::imageTypeAtIndex): Return type to caller instead of setting a member.
3492         * platform/image-decoders/ico/ICOImageDecoder.h:
3493
3494 2009-08-05  Szabo Carol  <carol.szabo@nokia.com>
3495
3496         Reviewed by Darin Adler.
3497
3498         https://bugs.webkit.org/show_bug.cgi?id=27942
3499
3500         Test: fast/forms/select-reset-multiple-selections-4-single-selection.html
3501
3502         * dom/SelectElement.cpp:
3503         (WebCore::SelectElement::reset):
3504            Added HTML 4.01 compliant handling of broken webpages that
3505            specify more than one selected option for single selection SELECT
3506            element, in a manner that emulates Firefox and is similar to IE 7
3507
3508
3509 2009-08-05  Andras Becsi  <becsi.andras@stud.u-szeged.hu>
3510
3511         Reviewed by Simon Hausmann.
3512
3513         WebCore.pro bugfix
3514
3515         Fix the gperf lines to properly include the string.h header at compilation with gperf version 3.0.3 and newer.
3516
3517         * WebCore.pro:
3518
3519 2009-08-05  Chris Fleizach  <cfleizach@apple.com>
3520
3521         Fix Tiger build breakage.
3522
3523         * accessibility/mac/AccessibilityObjectWrapper.mm:
3524
3525 2009-08-04  Simon Hausmann  <hausmann@webkit.org>
3526
3527         Prospective build fix for Qt build bot: Fix dependency of HTMLNames.cpp
3528         to both source files, HTMLTagNames.in and HTMLAttributeNames.in
3529
3530         * WebCore.pro:
3531
3532 2009-08-04  Brian Weinstein  <bweinstein@apple.com>
3533
3534         Reviewed by Adele Peterson.
3535
3536         Keypress should exit from pan scrolling mode.
3537         https://bugs.webkit.org/show_bug.cgi?id=28005
3538
3539         Change the logic from only exiting pan scrolling on escape to exiting on any key press,
3540         making it easier for users to back out of an accidental pan scroll.
3541
3542         * page/EventHandler.cpp:
3543         (WebCore::EventHandler::keyEvent):
3544         
3545 2009-08-04  Eric Seidel  <eric@webkit.org>
3546
3547         Reviewed by Simon Fraser.
3548
3549         REGRESSION (r45064): Drop caret remains in text control after the mouse exits
3550         https://bugs.webkit.org/show_bug.cgi?id=26787
3551
3552         Add back missing dragController()->clear() call.
3553
3554         * manual-tests/drag-caret.html: Added.
3555         * page/DragController.cpp:
3556         (WebCore::DragController::tryDocumentDrag):
3557
3558 2009-08-04  Chris Fleizach  <cfleizach@apple.com>
3559
3560         Bug 27994 - WAI-ARIA: aria-valuetext needs to be implemented
3561         https://bugs.webkit.org/show_bug.cgi?id=27994
3562
3563         Forgot to commit attribute names.
3564
3565         * html/HTMLAttributeNames.in:
3566
3567 2009-08-04  Chris Fleizach  <cfleizach@apple.com>
3568
3569         Reviewed by Darin Adler.
3570
3571         Bug 27994 - WAI-ARIA: aria-valuetext needs to be implemented
3572         https://bugs.webkit.org/show_bug.cgi?id=27994
3573
3574         Test: platform/mac/accessibility/aria-valuetext.html
3575
3576         * accessibility/AccessibilityObject.h:
3577         (WebCore::AccessibilityObject::valueDescription):
3578         * accessibility/AccessibilityRenderObject.cpp:
3579         (WebCore::AccessibilityRenderObject::valueDescription):
3580         * accessibility/AccessibilityRenderObject.h:
3581         * accessibility/mac/AccessibilityObjectWrapper.mm:
3582         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
3583         * html/HTMLAttributeNames.in:
3584
3585 2009-08-04  Michael Nordman  <michaeln@google.com>
3586
3587         Reviewed by Alexey Proskuryakov.