WebCore: [V8] Make XMLHttpRequest.send handle File object.
[WebKit-https.git] / WebCore / ChangeLog
1 2009-09-10  Jian Li  <jianli@chromium.org>
2
3         Reviewed by Eric Seidel.
4
5         [V8] Make XMLHttpRequest.send handle File object.
6         https://bugs.webkit.org/show_bug.cgi?id=28924
7
8         Test: http/tests/local/send-dragged-file.html
9
10         * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
11         (WebCore::CALLBACK_FUNC_DECL):
12
13 2009-09-10  Zoltan Horvath  <zoltan@webkit.org>
14
15         Reviewed by Darin Adler.
16
17         Use fastNew and fastDelete instead of operator new and delete for CSSSelector class. 
18         https://bugs.webkit.org/show_bug.cgi?id=25930
19
20         Change using of operator new to fastNew and operator delete to
21         fastDeleteSkippingDestructor for CSSSelector class to avoid mismatched function call.
22
23         This change fixes valgrind's 'mismatched free' notification.
24
25         * css/CSSParser.cpp:
26         (WebCore::CSSParser::~CSSParser):
27         (WebCore::CSSParser::createFloatingSelector):
28         * css/CSSSelectorList.cpp:
29         (WebCore::CSSSelectorList::adoptSelectorVector):
30
31 2009-09-10  Steve Block  <steveblock@google.com>
32
33         Reviewed by Darin Adler.
34
35         Geolocation does not correctly handle reentrant calls from callbacks.
36         https://bugs.webkit.org/show_bug.cgi?id=29040
37
38         Tests: fast/dom/Geolocation/reentrant-error.html
39                fast/dom/Geolocation/reentrant-success.html
40
41         * page/Geolocation.cpp: Modified.
42         (WebCore::Geolocation::handleError): Modified. Call sendError directly, clearing notifier lists before making callback.
43         (WebCore::Geolocation::makeSuccessCallbacks): Modified. Call sendPosition directly, clearing notifier lists before making callback.
44         * page/Geolocation.h: Modified. Deleted sendErrorToXX and sendPositionToXXX methods.
45
46 2009-09-10  Erik Arvidsson  <arv@chromium.org>
47
48         Reviewed by Eric Seidel.
49
50         Fixes issue where focused elements did not get blur and focus events when the window was blurred and focused.
51         https://bugs.webkit.org/show_bug.cgi?id=27105
52
53         Test: fast/events/blur-focus-window-should-blur-focus-element.html
54
55         * page/FocusController.cpp:
56         (WebCore::dispatchEventsOnWindowAndFocusedNode):
57         (WebCore::FocusController::setFocused):
58         (WebCore::FocusController::setActive):
59
60 2009-09-10  Adam Roben  <aroben@apple.com>
61
62         Make the play/pause button in <video> controls indicate the button's
63         action, not the movie state
64
65         This matches the Mac behavior, iTunes, and many other media players.
66
67         No test possible.
68
69         Fixes <http://webkit.org/b/29126> Play/pause button in <video>
70         controls shows the wrong image
71
72         Reviewed by Eric Carlson.
73
74         * rendering/RenderMediaControls.cpp:
75         (WebCore::RenderMediaControls::paintMediaControlsPart): Reversed when
76         we show the play vs. pause artwork, so that the button reflects what
77         will happen when you click it, rather than the current state of the
78         movie.
79
80 2009-09-09  Steve Block  <steveblock@google.com>
81
82         Reviewed by Maciej Stachowiak.
83
84         Geolocation Coordinates::toString() prints bogus values for unspecified properties.
85         https://bugs.webkit.org/show_bug.cgi?id=29080
86
87         Test: fast/dom/Geolocation/position-string.html
88
89         * GNUmakefile.am: Modified. Removes Geoposition.cpp and Coordinates.cpp.
90         * WebCore.gypi: Modified. Removes Geoposition.cpp and Coordinates.cpp.
91         * WebCore.pro: Modified. Removes Geoposition.cpp and Coordinates.cpp.
92         * WebCore.vcproj/WebCore.vcproj: Modified. Removes Geoposition.cpp and Coordinates.cpp.
93         * WebCore.xcodeproj/project.pbxproj: Modified. Removes Geoposition.cpp and Coordinates.cpp.
94         * WebCoreSources.bkl: Modified. Removes Geoposition.cpp and Coordinates.cpp.
95         * page/Coordinates.cpp: Removed.
96         * page/Coordinates.h: Modified. Removes toString method.
97         * page/Coordinates.idl: Modified. Removes toString method.
98         * page/Geoposition.cpp: Removed.
99         * page/Geoposition.h: Modified. Removes toString method.
100         * page/Geoposition.idl: Modified. Removes toString method.
101
102 2009-09-09  Steve Block  <steveblock@google.com>
103
104         Reviewed by Adam Barth.
105
106         Correctly applies the Geolocation timeout property.
107         https://bugs.webkit.org/show_bug.cgi?id=27256
108
109         If a timeout is specified, the timer is started as soon as the location acquistion process starts.
110         If a position fix is not obtained within the timeout interval, the position request is cancelled
111         and the error callback (if specified) is invoked. If a position fix is obtained within the timeout
112         interval, the timer is stopped. Permissions are then requested from the user if required. See
113         http://www.w3.org/TR/geolocation-API/#position-options.
114
115         Note that this logic means that the time required to obtain permissions from the user is not
116         included in the timeout interval.
117
118         Tests: fast/dom/Geolocation/timeout.html
119                fast/dom/Geolocation/timeout-zero.html
120
121         * page/Geolocation.cpp: Modified.
122         (WebCore::Geolocation::GeoNotifier::GeoNotifier): Modified. Takes Geolocation object as parameter.
123         (WebCore::Geolocation::GeoNotifier::hasZeroTimeout): Added. Determines whether this request has a zero timeout.
124         (WebCore::Geolocation::GeoNotifier::startTimerIfNeeded): Renamed from startTimer. Starts the timer if a timeout was specified.
125         (WebCore::Geolocation::GeoNotifier::timerFired): Modified. Calls the error callback if specified, and reports the timeout to the Geolocation object.
126         (WebCore::Geolocation::getCurrentPosition): Modified. Calls maybeStartTimer when starting the location acquisition process.
127         (WebCore::Geolocation::watchPosition): Modified. Calls maybeStartTimer when starting the location acquisition process.
128         (WebCore::Geolocation::requestTimedOut): Added. Cancels a request when it times out.
129         (WebCore::Geolocation::setIsAllowed): Modified. No longer starts timers.
130         (WebCore::Geolocation::sendPosition): Modified. No longer stops timers.
131         (WebCore::Geolocation::stopTimer): Added. Stops the timers for a vector of notifiers.
132         (WebCore::Geolocation::stopTimersForOneShots): Added. Stops the timers for all one-shots.
133         (WebCore::Geolocation::stopTimersForWatchers): Added. Stops the timers for all watchers.
134         (WebCore::Geolocation::stopTimers): Added. Stops the timers for all requests.
135         (WebCore::Geolocation::geolocationServicePositionChanged): Modfified. Stops the timers for all requests.
136         * page/Geolocation.h: Modified.
137         (WebCore::Geolocation::GeoNotifier::create): Modified. Takes Geolocation object as parameter.
138
139 2009-09-09  Chris Fleizach  <cfleizach@apple.com>
140
141         AX notifications should be an ENUM type instead of strings
142         https://bugs.webkit.org/show_bug.cgi?id=28963
143
144         Build fix for Qt.
145
146         * accessibility/AXObjectCache.h:
147         (WebCore::AXObjectCache::postNotification):
148         (WebCore::AXObjectCache::postPlatformNotification):
149
150 2009-09-08  Chris Fleizach  <cfleizach@apple.com>
151
152         Reviewed by Darin Adler.
153
154         AX notifications should be an ENUM type instead of strings
155         https://bugs.webkit.org/show_bug.cgi?id=28963
156
157         Moves AX notifications over to an ENUM type instead of
158         using the actual string values that are used on OS X.
159
160         * accessibility/AXObjectCache.cpp:
161         (WebCore::AXObjectCache::postNotification):
162         (WebCore::AXObjectCache::selectedChildrenChanged):
163         * accessibility/AXObjectCache.h:
164         (WebCore::AXObjectCache::):
165         * accessibility/AccessibilityRenderObject.cpp:
166         (WebCore::AccessibilityRenderObject::handleActiveDescendantChanged):
167         * accessibility/chromium/AXObjectCacheChromium.cpp:
168         (WebCore::AXObjectCache::postPlatformNotification):
169         * accessibility/gtk/AXObjectCacheAtk.cpp:
170         (WebCore::AXObjectCache::postPlatformNotification):
171         * accessibility/mac/AXObjectCacheMac.mm:
172         (WebCore::AXObjectCache::postPlatformNotification):
173         * accessibility/win/AXObjectCacheWin.cpp:
174         (WebCore::AXObjectCache::postPlatformNotification):
175         * dom/Document.cpp:
176         (WebCore::Document::implicitClose):
177         * dom/Element.cpp:
178         (WebCore::Element::updateAfterAttributeChanged):
179         * editing/Editor.cpp:
180         (WebCore::Editor::respondToChangedContents):
181         * editing/mac/SelectionControllerMac.mm:
182         (WebCore::SelectionController::notifyAccessibilityForSelectionChange):
183         * html/HTMLInputElement.cpp:
184         (WebCore::HTMLInputElement::setChecked):
185         * page/FrameView.cpp:
186         (WebCore::FrameView::layout):
187         * rendering/RenderTextControl.cpp:
188         (WebCore::RenderTextControl::setInnerTextValue):
189
190 2009-09-08  Adam Barth  <abarth@webkit.org>
191
192         Reviewed by Eric Seidel.
193
194         Missing checkout for getSVGDocument()
195         https://bugs.webkit.org/show_bug.cgi?id=29064
196
197         The V8 code generator didn't understand SVGCheckSecurityDocument.
198
199         Tests: http/tests/security/xss-DENIED-getSVGDocument-iframe.html
200                http/tests/security/xss-DENIED-getSVGDocument-object.html
201
202         * bindings/scripts/CodeGeneratorV8.pm:
203
204 2009-09-09  Cameron McCormack  <cam@mcc.id.au>
205
206         Reviewed by Eric Seidel.
207
208         Make SVGStyleElement inherit from SVGLangSpace
209         https://bugs.webkit.org/show_bug.cgi?id=29058
210
211         Required by SVG 1.1 Second Edition:
212         http://dev.w3.org/SVG/profiles/1.1F2/publish/styling.html#InterfaceSVGStyleElement
213
214         Test: svg/dom/SVGStyleElement/style-langspace.html
215
216         * svg/SVGStyleElement.cpp: Drop methods xmlspace and setXmlspace.
217         (WebCore::SVGStyleElement::SVGStyleElement): Add SVGLangSpace()
218         initializer.
219         (WebCore::SVGStyleElement::parseMappedAttribute): Call
220         parseMappedAttribute on SVGLangSpace.
221         * svg/SVGStyleElement.h: Drop xmlspace and setXmlspace declarations.
222         * svg/SVGStyleElement.idl: Drop xmlspace attribute and add SVGLangSpace
223         as a superinterface.
224
225 2009-09-09  Nate Chapin  <japhet@chromium.org>
226
227         Reviewed by David Levin.
228
229         Remove unnecessary includes and forward declarations in V8Proxy.h
230
231         https://bugs.webkit.org/show_bug.cgi?id=29111
232
233         * bindings/v8/V8Proxy.h:
234
235 2009-07-30  Eric Seidel  <eric@webkit.org>
236
237         Reviewed by Adam Barth.
238
239         Add more position constructors
240         positionBeforeNode, positionAfterNode
241         firstPositionInNode, lastPositionInNode
242         https://bugs.webkit.org/show_bug.cgi?id=25494
243
244         I also added a lastOffsetInNode and deployed it to a couple places.
245
246         There are no callers to these new constructors yet, but those
247         will be coming in future patches.
248
249         * dom/Position.cpp:
250         (WebCore::Position::computeOffsetInContainerNode):
251         * dom/Position.h:
252         (WebCore::positionBeforeNode):
253         (WebCore::positionAfterNode):
254         (WebCore::lastOffsetInNode):
255         (WebCore::firstPositionInNode):
256         (WebCore::lastPositionInNode):
257         * editing/ApplyStyleCommand.cpp:
258         * editing/TextIterator.cpp:
259         (WebCore::SimplifiedBackwardsTextIterator::SimplifiedBackwardsTextIterator):
260         * editing/htmlediting.cpp:
261         (WebCore::lastOffsetForEditing):
262
263 2009-04-30  Eric Seidel  <eric@webkit.org>
264
265         Reviewed by Adam Barth.
266
267         Rename positionBeforeNode to positionInParentBeforeNode
268         and positionAfterNode to positionInParentAfterNode
269         in preparation for adding a positionBeforeNode
270         which returns a neighbor-anchored position.
271         https://bugs.webkit.org/show_bug.cgi?id=25494
272
273         No functional changes, thus no tests.
274
275         * dom/PositionConstructors.h:
276         (WebCore::positionInParentBeforeNode):
277         (WebCore::positionInParentAfterNode):
278         * dom/PositionIterator.cpp:
279         (WebCore::PositionIterator::operator Position):
280         * editing/ApplyStyleCommand.cpp:
281         (WebCore::ApplyStyleCommand::applyInlineStyle):
282         * editing/CompositeEditCommand.cpp:
283         (WebCore::CompositeEditCommand::positionOutsideTabSpan):
284         (WebCore::CompositeEditCommand::breakOutOfEmptyMailBlockquotedParagraph):
285         (WebCore::CompositeEditCommand::positionAvoidingSpecialElementBoundary):
286         * editing/CreateLinkCommand.cpp:
287         (WebCore::CreateLinkCommand::doApply):
288         * editing/DeleteButtonController.cpp:
289         (WebCore::DeleteButtonController::deleteTarget):
290         * editing/DeleteSelectionCommand.cpp:
291         (WebCore::DeleteSelectionCommand::initializeStartEnd):
292         (WebCore::updatePositionForNodeRemoval):
293         * editing/InsertLineBreakCommand.cpp:
294         (WebCore::InsertLineBreakCommand::doApply):
295         * editing/InsertListCommand.cpp:
296         (WebCore::InsertListCommand::doApply):
297         * editing/InsertParagraphSeparatorCommand.cpp:
298         (WebCore::InsertParagraphSeparatorCommand::doApply):
299         * editing/InsertTextCommand.cpp:
300         (WebCore::InsertTextCommand::input):
301         * editing/ReplaceSelectionCommand.cpp:
302         (WebCore::ReplaceSelectionCommand::positionAtStartOfInsertedContent):
303         (WebCore::ReplaceSelectionCommand::doApply):
304         * editing/VisibleSelection.cpp:
305         (WebCore::VisibleSelection::adjustSelectionToAvoidCrossingEditingBoundaries):
306         * editing/htmlediting.cpp:
307         (WebCore::firstEditablePositionAfterPositionInRoot):
308         (WebCore::lastEditablePositionBeforePositionInRoot):
309         (WebCore::rangeCompliantEquivalent):
310         (WebCore::positionBeforeContainingSpecialElement):
311         (WebCore::positionAfterContainingSpecialElement):
312         (WebCore::positionBeforeTabSpan):
313
314 2009-04-30  Eric Seidel  <eric@webkit.org>
315
316         Reviewed by Adam Barth.
317
318         Re-organize position creation functions in preparation for adding more
319         https://bugs.webkit.org/show_bug.cgi?id=25494
320
321         Make position functions inline to avoid ref-churn.
322         Remove startPosition/endPosition as they were only used in one place.
323
324         No functional changes, thus no tests.
325
326         * dom/Position.cpp:
327         * dom/Position.h:
328         (WebCore::positionBeforeNode):
329         (WebCore::positionAfterNode):
330         * editing/SelectionController.cpp:
331         (WebCore::SelectionController::moveTo):
332         * editing/TypingCommand.cpp:
333         * editing/htmlediting.cpp:
334         * editing/htmlediting.h:
335         (WebCore::firstDeepEditingPositionForNode):
336         (WebCore::lastDeepEditingPositionForNode):
337         * rendering/RenderObject.cpp:
338
339 2009-09-09  Kevin Watters  <kevinwatters@gmail.com>
340
341         Reviewed by Kevin Ollivier.
342         
343         [wx] Add wxSize conversions for IntSize.
344         https://bugs.webkit.org/show_bug.cgi?id=29104
345
346         * platform/graphics/IntSize.h:
347         * platform/graphics/wx/IntSizeWx.cpp: Added.
348         (WebCore::IntSize::IntSize):
349         (WebCore::IntSize::operator wxSize):
350
351 2009-09-09  Yaar Schnitman  <yaar@chromium.org>
352
353         Reviewed by David Levin.
354         
355         Chromium uses its own config.h file that was forked from webkit's config.h.
356         By merging in Chromium's defines, Chromium would again be able to use webkit's
357         config.h.
358
359         https://bugs.webkit.org/show_bug.cgi?id=28882 
360
361         * config.h: Added chromium-specific defines. 
362
363 2009-09-09  Jens Alfke  <snej@chromium.org>
364
365         Reviewed by Eric Seidel.
366
367         Initialize DataTransfer's effectAllowed and dropEffect properties correctly
368         according to HTML5 spec (sec. 7.9.2-7.9.3).
369         https://bugs.webkit.org/show_bug.cgi?id=26700
370         - At the start of a drag operation, the value of effectAllowed should be
371           the string "uninitialized".
372         - At end of dragstart handler, if effectAllowed hasn't been set yet, it
373           should be set to "copy".
374         - on dragenter and dragover event, dropEffect should be initialized to a
375           default value based on the value of effectAllowed.
376         - at end of dragenter and dragover the dropEffect should be set to "none"
377           if the value set by the handler doesn't match the effectAllowed.
378         - on dragleave event, dropEffect should be "none".
379         - on drop event, dropEffect should be the previously negotiated value.
380
381         Test: fast/events/drag-dropeffect.html
382
383         * WebCore.base.exp:
384             Added a parameter to EventHandler::dragSourceMovedTo.
385         * dom/Clipboard.cpp:
386         (WebCore::Clipboard::Clipboard):
387             Initialize m_effectAllowed to "uninitialized".
388         (WebCore::Clipboard::sourceOperation):
389             Treat "uninitialized" as meaning no value has been set.
390         * page/DragController.cpp:
391         (WebCore::DragController::DragController):
392             Initialize new member m_destinationDragOperation.
393         (WebCore::DragController::dragExited):
394             Set m_destinationDragOperation to none on dragExit.
395         (WebCore::DragController::performDrag):
396             Set m_destinationDragOperation to current dropEffect.
397         (WebCore::DragController::dragEnteredOrUpdated):
398             Make sure to clear the operation if drag source doesn't allow it.
399         (WebCore::DragController::tryDHTMLDrag):
400             Set a default value for the dst drag op before sending dragEnter/Over.
401         (WebCore::DragController::startDrag):
402             Clear m_destinationDragOperation at start of drag.
403         * page/DragController.h:
404         (WebCore::DragController::destinationDragOperation):
405             Added new member m_destinationDragOperation, and its public getter.
406         * page/EventHandler.cpp:
407         (WebCore::EventHandler::updateDragAndDrop):
408             dropEffect should be 'none' during dropleave handler, per spec.
409         (WebCore::EventHandler::dragSourceMovedTo):
410             Added DragOperation parameter, so the handler sees the current dropEffect.
411         (WebCore::EventHandler::handleDrag):
412             Assume DragOperationEvery for non-DHTML drags.
413         * page/EventHandler.h:
414             Added DragOperation parameter to dragSourceMovedTo().
415
416 2009-09-09  Dumitru Daniliuc  <dumi@chromium.org>
417
418         Reviewed by Dimitri Glazkov.
419
420         1. Adding support/bindings for read-only transactions.
421         2. Disallowing the SQLITE_*_VIEW and REINDEX operations in the
422         private browsing mode.
423         3. Adding an authorizer test.
424
425         https://bugs.webkit.org/show_bug.cgi?id=28918
426
427         Test: storage/test-authorizer.html
428
429         * bindings/js/JSDatabaseCustom.cpp:
430         (WebCore::createTransaction): Parses all arguments and executes a
431         transaction.
432         (WebCore::JSDatabase::transaction): Refactored to use
433         createTransaction().
434         (WebCore::JSDatabase::readTransaction): Added to execute read-only
435         transactions using createTransaction().
436         * bindings/v8/custom/V8CustomBinding.h: Added the binding for
437         Database::readTransaction().
438         * bindings/v8/custom/V8DatabaseCustom.cpp:
439         (WebCore::createTransaction): Parses all arguments and executes a
440         transaction.
441         (WebCore::transaction): Refactored to use createTransaction().
442         (WebCore::readTransaction): Added to execute read-only
443         transactions using createTransaction().
444         * storage/Database.cpp:
445         (WebCore::Database::transaction): Added support for read-only
446         transactions.
447         * storage/Database.h: Added support for read-only transactions.
448         * storage/Database.idl: Added support for read-only transactions.
449         * storage/DatabaseAuthorizer.cpp:
450         (WebCore::DatabaseAuthorizer::createTempTable): Make it obvious
451         that the statement will be denied in private browsing mode and
452         read-only transactions.
453         (WebCore::DatabaseAuthorizer::dropTempTable): Same.
454         (WebCore::DatabaseAuthorizer::createTempIndex): Same.
455         (WebCore::DatabaseAuthorizer::dropTempIndex): Same.
456         (WebCore::DatabaseAuthorizer::createTempTrigger): Same.
457         (WebCore::DatabaseAuthorizer::dropTempTrigger): Same.
458         (WebCore::DatabaseAuthorizer::createView): Deny in private
459         browsing mode and read-only transactions.
460         (WebCore::DatabaseAuthorizer::createTempView): Same.
461         (WebCore::DatabaseAuthorizer::dropView): Same.
462         (WebCore::DatabaseAuthorizer::dropTempView): Same.
463         (WebCore::DatabaseAuthorizer::allowReindex): Same.
464         * storage/DatabaseAuthorizer.h:
465         * storage/SQLTransaction.cpp: Added support for read-only
466         transactions.
467         (WebCore::SQLTransaction::create):
468         (WebCore::SQLTransaction::SQLTransaction):
469         (WebCore::SQLTransaction::executeSQL):
470         (WebCore::SQLTransaction::acquireLock):
471         * storage/SQLTransaction.h:
472         * storage/SQLTransactionCoordinator.cpp:
473         (WebCore::SQLTransactionCoordinator::acquireLock): Added a new
474         parameter in preparation for a change that will allow multiple
475         read-only transactions on the same DB to run concurrently.
476         * storage/SQLTransactionCoordinator.h:
477
478 2009-09-09  Dave Hyatt  <hyatt@apple.com>
479
480         Reviewed by Adam Roben.
481
482         https://bugs.webkit.org/show_bug.cgi?id=29102, add support for user stylesheet injection.  This is similar
483         to user script injection but allows for user stylesheets to be added.  The stylesheets are applied immediately
484         to all Frames in the PageGroup.
485
486         Added userscripts/simple-stylesheet.html test case.
487
488         * WebCore.base.exp:
489         * WebCore.gypi:
490         * WebCore.vcproj/WebCore.vcproj:
491         * WebCore.xcodeproj/project.pbxproj:
492         * css/CSSStyleSelector.cpp:
493         (WebCore::CSSStyleSelector::CSSStyleSelector):
494         * css/CSSStyleSelector.h:
495         * dom/Document.cpp:
496         (WebCore::Document::Document):
497         (WebCore::Document::attach):
498         (WebCore::Document::pageGroupUserSheets):
499         (WebCore::Document::clearPageGroupUserSheets):
500         (WebCore::Document::recalcStyleSelector):
501         * dom/Document.h:
502         * loader/PlaceholderDocument.cpp:
503         (WebCore::PlaceholderDocument::attach):
504         * page/PageGroup.cpp:
505         (WebCore::PageGroup::addUserStyleSheet):
506         (WebCore::PageGroup::removeUserContentForWorld):
507         (WebCore::PageGroup::removeAllUserContent):
508         * page/PageGroup.h:
509         (WebCore::PageGroup::userStyleSheets):
510         * page/UserStyleSheet.h: Added.
511         (WebCore::UserStyleSheet::UserStyleSheet):
512         (WebCore::UserStyleSheet::source):
513         (WebCore::UserStyleSheet::url):
514         (WebCore::UserStyleSheet::patterns):
515         (WebCore::UserStyleSheet::worldID):
516         * page/UserStyleSheetTypes.h: Added.
517
518 2009-09-09  Carol Szabo  <carol.szabo@nokia.com>
519
520         Reviewed by Ariya Hidayat.
521
522         [Qt] CSS Style -webkit-box-shadow is not rendered correctly on
523         Qt platform
524         https://bugs.webkit.org/show_bug.cgi?id=23291
525
526         * platform/graphics/qt/GraphicsContextQt.cpp:
527         (WebCore::GraphicsContext::drawRect):
528         (WebCore::GraphicsContext::strokeArc):
529         (WebCore::GraphicsContext::drawConvexPolygon):
530         (WebCore::GraphicsContext::fillPath):
531         (WebCore::GraphicsContext::strokePath):
532         (WebCore::GraphicsContext::fillRect):
533         (WebCore::GraphicsContext::fillRoundedRect):
534          Added the ability to draw shadows for all these curves.
535
536 2009-09-09  Kenneth Rohde Christiansen  <kenneth@webkit.org>
537
538         Reviewed by Simon Hausmann.
539
540         Add the qwebgraphicsitem.cpp to the build system.
541
542         https://bugs.webkit.org/show_bug.cgi?id=28862
543
544         * WebCore.pro:
545
546 2009-09-09  Kevin Watters  <kevinwatters@gmail.com>
547
548         Reviewed by Kevin Ollivier.
549
550         [wx port] Move functions in TemporaryLinkStubs.cpp out to files where
551         they belong.
552
553         https://bugs.webkit.org/show_bug.cgi?id=29088
554
555         * editing/wx/EditorWx.cpp:
556         (WebCore::Editor::showColorPanel):
557         (WebCore::Editor::showFontPanel):
558         (WebCore::Editor::showStylesPanel):
559         * platform/graphics/wx/GraphicsContextWx.cpp:
560         (WebCore::GraphicsContext::setPlatformShadow):
561         (WebCore::GraphicsContext::clearPlatformShadow):
562         (WebCore::GraphicsContext::beginTransparencyLayer):
563         (WebCore::GraphicsContext::endTransparencyLayer):
564         (WebCore::GraphicsContext::clearRect):
565         (WebCore::GraphicsContext::strokeRect):
566         (WebCore::GraphicsContext::setLineCap):
567         (WebCore::GraphicsContext::setLineJoin):
568         (WebCore::GraphicsContext::setMiterLimit):
569         (WebCore::GraphicsContext::setAlpha):
570         (WebCore::GraphicsContext::addInnerRoundedRectClip):
571         * platform/graphics/wx/IconWx.cpp: Added.
572         (WebCore::Icon::~Icon):
573         (WebCore::Icon::createIconForFile):
574         (WebCore::Icon::createIconForFiles):
575         (WebCore::Icon::paint):
576         * platform/graphics/wx/ImageWx.cpp:
577         (WebCore::Image::loadPlatformResource):
578         (WebCore::Image::drawPattern):
579         * platform/wx/CursorWx.cpp:
580         (WebCore::moveCursor):
581         * platform/wx/FileChooserWx.cpp: Added.
582         (WebCore::FileChooser::basenameForWidth):
583         * platform/wx/KURLWx.cpp: Added.
584         (WebCore::KURL::fileSystemPath):
585         * platform/wx/SSLKeyGeneratorWx.cpp: Added.
586         (WebCore::getSupportedKeySizes):
587         (WebCore::signedPublicKeyAndChallengeString):
588         * platform/wx/SearchPopupMenuWx.cpp: Added.
589         (WebCore::SearchPopupMenu::SearchPopupMenu):
590         (WebCore::SearchPopupMenu::saveRecentSearches):
591         (WebCore::SearchPopupMenu::loadRecentSearches):
592         (WebCore::SearchPopupMenu::enabled):
593         * platform/wx/SharedBufferWx.cpp: Added.
594         (WebCore::SharedBuffer::createWithContentsOfFile):
595         * platform/wx/SystemTimeWx.cpp: Added.
596         (WebCore::userIdleTime):
597         * platform/wx/TemporaryLinkStubs.cpp: Removed.
598         * platform/wx/TextBreakIteratorInternalICUWx.cpp: Added.
599         (WebCore::currentSearchLocaleID):
600         (WebCore::currentTextBreakLocaleID):
601         * platform/wx/WidgetWx.cpp:
602         (WebCore::Widget::setIsSelected):
603
604 2009-09-09  Steve Block  <steveblock@google.com>
605
606         Reviewed by Adam Barth.
607
608         Geolocation incorrectly calls error callback in case of exception in success callback.
609         https://bugs.webkit.org/show_bug.cgi?id=27255
610
611         Test: fast/dom/Geolocation/callback-exception.html
612
613         * bindings/js/JSCustomPositionCallback.cpp: Modified.
614         (WebCore::JSCustomPositionCallback::handleEvent): Modified. Removed raisedException out param.
615         * bindings/js/JSCustomPositionCallback.h: Modified. Removed raisedException out param from handleEvent method and made handleEvent private.
616         * bindings/js/JSCustomPositionErrorCallback.h: Modified. Made handleEvent private.
617         * page/Geolocation.cpp: Modified.
618         (WebCore::Geolocation::sendPosition): Modified. No longer call error callback in case of exception in success callback.
619         * page/PositionCallback.h: Modified. Removed raisedException out param from handleEvent method.
620
621 2009-09-09  Steve Block  <steveblock@google.com>
622
623         Reviewed by Darin Adler.
624
625         When Geolocation permission is denied, stops watches as well as one-shots.
626         https://bugs.webkit.org/show_bug.cgi?id=28305.
627
628         Tests: fast/dom/Geolocation/watch.html
629                fast/dom/Geolocation/permission-denied-stops-watches.html
630
631         * page/Geolocation.cpp: Modified.
632         (WebCore::Geolocation::setIsAllowed): Modified. Marks the permission error as fatal.
633         (WebCore::Geolocation::handleError): Modified. If the error is fatal, stops watchers as well as one-shots.
634         * page/PositionError.h: Modified.
635         (WebCore::PositionError::setIsFatal): Added. Marks an error as fatal.
636         (WebCore::PositionError::isFatal): Added. Determines whether an error is fatal.
637
638 2009-09-09  Roland Steiner  <rolandsteiner@google.com>
639
640         Reviewed by Eric Seidel.
641
642         Bug 28964 -  [Chromium] ChromiumDataObject should have getter/setter interface
643
644         Added getter/setter methods and trivial inline implementations for each.
645         (Note that they are not yet actually used.)
646         Once the Chromium code is changed to use them instead of directly accessing the
647         member variables, the member variables should be made private and cleaned up.
648
649         No new tests (no functional behavior changed).
650
651         * platform/chromium/ChromiumDataObject.h:
652         (WebCore::ChromiumDataObject::mainURL):
653         (WebCore::ChromiumDataObject::setMainURL):
654         (WebCore::ChromiumDataObject::mainURLTitle):
655         (WebCore::ChromiumDataObject::setMainURLTitle):
656         (WebCore::ChromiumDataObject::textPlain):
657         (WebCore::ChromiumDataObject::setTextPlain):
658         (WebCore::ChromiumDataObject::textHTML):
659         (WebCore::ChromiumDataObject::setTextHTML):
660         (WebCore::ChromiumDataObject::htmlBaseURL):
661         (WebCore::ChromiumDataObject::setHTMLBaseURL):
662         (WebCore::ChromiumDataObject::content):
663         (WebCore::ChromiumDataObject::releaseContent):
664         (WebCore::ChromiumDataObject::setContent):
665         (WebCore::ChromiumDataObject::contentFileExtension):
666         (WebCore::ChromiumDataObject::setContentFileExtension):
667         (WebCore::ChromiumDataObject::contentFileName):
668         (WebCore::ChromiumDataObject::setContentFileName):
669         (WebCore::ChromiumDataObject::fileNames):
670         (WebCore::ChromiumDataObject::setFileNames):
671         (WebCore::ChromiumDataObject::takeFileNames):
672
673 2009-09-08  Pat Bradley  <vincent.bradley@nokia.com>
674
675         Reviewed by Ariya Hidayat.
676
677         [Qt] locale date displays incorrect date format in symbian.
678         https://bugs.webkit.org/show_bug.cgi?id=29032
679
680         strftime() in Symbian does not support #
681         Layout tests cannot be run on Symbian yet, so they are not updated.
682
683         * runtime/DatePrototype.cpp:
684         (JSC::formatLocaleDate):
685
686 2009-09-09  Rohini Ananth <rohini.ananth@nokia.com>
687
688         Reviewed by Simon Hausmann.
689
690         NPAPI Plugin NPP_AsFile not working on Qt Webkit
691         https://bugs.webkit.org/show_bug.cgi?id=29068
692
693         * platform/qt/FileSystemQt.cpp:
694         (WebCore::openTemporaryFile)
695         Autoremove property of QTemporaryFile has been set to false. Hence closeFile() just closes and does not delete the file.
696         This solves the deletion of created temp file in PluginStream::destroyStream() before passing to plugin in NPP_AsFile.
697
698 2009-09-08  Oliver Hunt  <oliver@apple.com>
699
700         Reviewed by NOBODY (Build fix).
701
702         Remove a few incorrect changes I left in.
703
704         * bindings/scripts/CodeGeneratorJS.pm:
705
706 2009-09-08  Oliver Hunt  <oliver@apple.com>
707
708         Reviewed by Sam Weinig.
709
710         Support numeric index getters in bindings
711         https://bugs.webkit.org/show_bug.cgi?id=29067
712
713         Add HasNumericIndexGetter to indicate a non-custom getter that
714         returns a number.  The numeric index getter also uses PropertySlot's
715         setValue rather than setCustomIndex to avoid an additional indirect
716         call.
717
718         * bindings/js/JSCanvasByteArrayCustom.cpp:
719         * bindings/js/JSCanvasFloatArrayCustom.cpp:
720         * bindings/js/JSCanvasIntArrayCustom.cpp:
721         * bindings/js/JSCanvasShortArrayCustom.cpp:
722         * bindings/js/JSCanvasUnsignedByteArrayCustom.cpp:
723         * bindings/js/JSCanvasUnsignedIntArrayCustom.cpp:
724         * bindings/js/JSCanvasUnsignedShortArrayCustom.cpp:
725         * bindings/scripts/CodeGeneratorJS.pm:
726         * html/canvas/CanvasByteArray.h:
727         (WebCore::CanvasByteArray::item):
728         * html/canvas/CanvasByteArray.idl:
729         * html/canvas/CanvasFloatArray.h:
730         (WebCore::CanvasFloatArray::get):
731         (WebCore::CanvasFloatArray::item):
732         * html/canvas/CanvasFloatArray.idl:
733         * html/canvas/CanvasIntArray.h:
734         (WebCore::CanvasIntArray::get):
735         (WebCore::CanvasIntArray::item):
736         * html/canvas/CanvasIntArray.idl:
737         * html/canvas/CanvasPixelArray.idl:
738         * html/canvas/CanvasShortArray.h:
739         (WebCore::CanvasShortArray::get):
740         (WebCore::CanvasShortArray::item):
741         * html/canvas/CanvasShortArray.idl:
742         * html/canvas/CanvasUnsignedByteArray.h:
743         (WebCore::CanvasUnsignedByteArray::get):
744         (WebCore::CanvasUnsignedByteArray::item):
745         * html/canvas/CanvasUnsignedByteArray.idl:
746         * html/canvas/CanvasUnsignedIntArray.h:
747         (WebCore::CanvasUnsignedIntArray::get):
748         (WebCore::CanvasUnsignedIntArray::item):
749         * html/canvas/CanvasUnsignedIntArray.idl:
750         * html/canvas/CanvasUnsignedShortArray.h:
751         (WebCore::CanvasUnsignedShortArray::item):
752         * html/canvas/CanvasUnsignedShortArray.idl:
753
754 2009-09-08  Kevin Ollivier  <kevino@theolliviers.com>
755
756         wx build fix for 2.8.
757
758         * platform/wx/wxcode/mac/carbon/scrollbar_render.cpp:
759         (wxRenderer_DrawScrollbar):
760
761 2009-09-08  Jens Alfke  <snej@chromium.org>
762
763         Reviewed by Eric Seidel.
764
765         In Mac Chromium, clicking below the last line of an editable area (textarea or
766         contenteditable) should put the caret at the end of the last line, as in Mac Safari.
767
768         Tests: LayoutTests/editing/selection/click-in-margins-inside-editable-div.html
769                LayoutTests/editing/selection/click-in-padding-with-multiple-line-boxes.html
770
771         * page/Settings.cpp:
772         (WebCore::Settings::Settings): Change #if PLATFORM_MAC to be Mac-Chrome-inclusive.
773
774 2009-09-08  Dave Hyatt  <hyatt@apple.com>
775
776         Reviewed by Mark Rowe.
777
778         Make sure not to do an early return when a data URL stylesheet successfully loads.  We need to still
779         clear the old cached sheet out of all existing Frames.  Fixes the data URL stylesheet layout test failure.
780
781         * page/Page.cpp:
782         (WebCore::Page::userStyleSheetLocationChanged):
783
784 2009-09-08  Sam Weinig  <sam@webkit.org>
785
786         Fix windows build.
787
788         * dom/Document.idl:
789
790 2009-09-08  Kevin Ollivier  <kevino@theolliviers.com>
791
792         More robust wx build fix for 2.9.
793
794         * platform/wx/wxcode/mac/carbon/scrollbar_render.cpp:
795         (wxRenderer_DrawScrollbar):
796
797 2009-09-08  Sam Weinig  <sam@webkit.org>
798
799         Reviewed by Timothy Hatcher.
800
801         Fix for https://bugs.webkit.org/show_bug.cgi?id=27046
802         Implement CSSOM DocumentView.caretRangeFromPoint
803
804         Tests: fast/dom/Document/CaretRangeFromPoint/basic.html
805                fast/dom/Document/CaretRangeFromPoint/replace-element.html
806
807         * dom/Document.cpp:
808         (WebCore::Document::caretRangeFromPoint):
809         * dom/Document.h:
810         * dom/Document.idl:
811
812 2009-09-08  Kevin Ollivier  <kevino@theolliviers.com>
813
814         wx build fix, generate derived sources earlier in order to make sure
815         they're found by the build system when generating the list of sources to build.
816
817         * wscript:
818
819 2009-09-08  Nate Chapin  <japhet@chromium.org>
820
821         Reviewed by Dimitri Glazkov.
822
823         <iterator> include in V8Proxy.h is spurious and causing ObjC compile issues for Chromium.
824
825         Test: Chromium mac canary build is fixed.
826
827         * bindings/v8/V8Proxy.h: Remove <iterator> include.
828
829 2009-09-08  Xan Lopez  <xlopez@igalia.com>
830
831         Unreviewed attempt to fix the GTK+ build.
832
833         * GNUmakefile.am:
834
835 2009-09-04  Dave Hyatt  <hyatt@apple.com>
836
837         Reviewed by Eric Seidel.
838
839         https://bugs.webkit.org/show_bug.cgi?id=28987, make the Document cache the page's user stylesheet in
840         parsed form.  Allows the sheet to survive across destruction/re-creation of the CSSStyleSelector.
841
842         * css/CSSStyleSelector.cpp:
843         (WebCore::CSSStyleSelector::CSSStyleSelector):
844         * css/CSSStyleSelector.h:
845         * dom/Document.cpp:
846         (WebCore::Document::attach):
847         (WebCore::Document::pageUserSheet):
848         (WebCore::Document::clearPageUserSheet):
849         (WebCore::Document::recalcStyleSelector):
850         * dom/Document.h:
851         * loader/PlaceholderDocument.cpp:
852         (WebCore::PlaceholderDocument::attach):
853         * page/Page.cpp:
854         (WebCore::Page::userStyleSheetLocationChanged):
855         * page/Settings.cpp:
856         (WebCore::Settings::setUserStyleSheetLocation):
857
858 2009-09-08  Kenneth Rohde Christiansen  <kenneth@webkit.org>
859
860         Unreviewed buildfix.
861
862         Fix Qt build after 48167, by adding the new cpp/h files
863         added to WebCore.gypi to WebCore.pro as well.
864
865         * WebCore.pro:
866
867 2009-09-08  Xan Lopez  <xlopez@igalia.com>
868
869         Reviewed by Gustavo Noronha.
870
871         should not pass URI fragments to libsoup
872         https://bugs.webkit.org/show_bug.cgi?id=28687
873
874         Strip the fragment from the URI before passing it to soup, since
875         it forwards it to servers in some cases (like when using a proxy)
876         which confuses them and makes them return 403/404.
877
878         * platform/network/soup/ResourceHandleSoup.cpp:
879         (WebCore::startHttp):
880         (WebCore::):
881
882 2009-09-08  Kenneth Rohde Christiansen  <kenneth@webkit.org>
883
884         Reviewed by Simon Hausmann.
885
886         Add QGraphicsScene events support to the Qt platform events.
887
888         * platform/PlatformMouseEvent.h:
889         * platform/PlatformWheelEvent.h:
890         * platform/qt/PlatformMouseEventQt.cpp:
891         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
892         * platform/qt/WheelEventQt.cpp:
893         (WebCore::PlatformWheelEvent::applyDelta):
894         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
895
896 2009-09-08  Michael Nordman  <michaeln@google.com>
897
898         Reviewed by Eric Seidel.
899
900         [Chromium] Cleanup: remove a few deprecated methods.
901         https://bugs.webkit.org/show_bug.cgi?id=28960
902
903         No new tests, just syntactic sugar.
904
905         * platform/network/chromium/ResourceRequest.h:
906         * platform/network/chromium/ResourceResponse.h:
907
908 2009-09-08  Yongjun Zhang  <yongjun.zhang@nokia.com>
909
910         Reviewed by Ariya Hidayat.
911
912         https://bugs.webkit.org/show_bug.cgi?id=28981
913
914         [Qt] make npapi.h compile in winscw compiler.
915
916         Add XP_SYMBIAN macro to identify Symbian OS; this macro should be used for Symbian
917         specific changes in npapi.h.
918         Undefine XP_WIN when building for Symbian to avoid including Windows specific code.
919
920         * bridge/npapi.h:
921
922 2009-09-08  Oliver Hunt  <oliver@apple.com>
923
924         Reviewed by Geoff Garen.
925
926         Web Inspector assertion failure related to marking
927         https://bugs.webkit.org/show_bug.cgi?id=28997
928
929         When wrapping the callback the JSInspectorCallbackWrapper creator was using
930         inheritorID for the prototype structure which is unsafe for anything other
931         than a pure JS object.  Instead we now create a new structure, which while
932         inefficient is not problematic as this code is not hit frequently.
933
934         * bindings/js/JSInspectorCallbackWrapper.cpp:
935         (WebCore::JSInspectorCallbackWrapper::wrap):
936
937 2009-09-08  Kelly Norton  <knorton@google.com>
938
939         Reviewed by Dimitri Glazkov.
940
941         Add missing extension to the file entry in WebCore.vcproj.
942
943         * WebCore.vcproj/WebCore.vcproj: Added "cpp".
944
945 2009-09-08  Jian Li  <jianli@chromium.org>
946
947         Reviewed by David Levin.
948
949         dataTransfer.types() should not return Files if file list is empty in the clipboard.
950         https://bugs.webkit.org/show_bug.cgi?id=28891
951
952         We change the behavior to handle the empty file list in order to match the spec.
953
954         Tested by clipboard-file-access.html.
955
956         * platform/mac/ClipboardMac.mm:
957         (WebCore::addHTMLClipboardTypesForCocoaType):
958         (WebCore::ClipboardMac::types):
959
960 2009-09-08  Steve VanDeBogart  <vandebo@chromium.org>
961
962         Reviewed by Eric Seidel.
963
964         Handle middle click in Chromium like QT
965         https://bugs.webkit.org/show_bug.cgi?id=28696
966
967         Tested by middle-click-onpaste.html.
968
969         * platform/Pasteboard.h:
970         * platform/chromium/ChromiumBridge.h:
971         * platform/chromium/ClipboardChromium.cpp:
972         (WebCore::ClipboardChromium::getData):
973         * platform/chromium/PasteboardChromium.cpp:
974         (WebCore::Pasteboard::Pasteboard):
975         (WebCore::Pasteboard::isSelectionMode):
976         (WebCore::Pasteboard::setSelectionMode):
977         (WebCore::Pasteboard::canSmartReplace):
978         (WebCore::Pasteboard::plainText):
979         (WebCore::Pasteboard::documentFragment):
980         * platform/chromium/PasteboardPrivate.h:
981         (WebCore::PasteboardPrivate::):
982
983 2009-09-08  Kelly Norton  <knorton@google.com>
984
985         Reviewed by Eric Seidel.
986
987         WebInspector: Adds a timeline agent to InspectorController that collects
988         high-level timing data about event dispatch, layout, painting and HTML
989         parsing and makes it available to Inspector.
990         https://bugs.webkit.org/show_bug.cgi?id=25503
991
992         * WebCore.gypi:
993         * WebCore.xcodeproj/project.pbxproj:
994         * dom/Document.cpp:
995         (WebCore::Document::recalcStyle):
996         * dom/Document.h:
997         (WebCore::Document::inspectorTimelineAgent):
998         * dom/Node.cpp:
999         (WebCore::Node::dispatchGenericEvent):
1000         * html/HTMLTokenizer.cpp:
1001         (WebCore::HTMLTokenizer::write):
1002         * inspector/DOMDispatchTimelineItem.cpp: Added.
1003         (WebCore::DOMDispatchTimelineItem::DOMDispatchTimelineItem):
1004         (WebCore::DOMDispatchTimelineItem::convertToScriptObject):
1005         * inspector/DOMDispatchTimelineItem.h: Added.
1006         (WebCore::DOMDispatchTimelineItem::~DOMDispatchTimelineItem):
1007         * inspector/InspectorBackend.cpp:
1008         (WebCore::InspectorBackend::enableTimeline):
1009         (WebCore::InspectorBackend::disableTimeline):
1010         (WebCore::InspectorBackend::timelineEnabled):
1011         * inspector/InspectorBackend.h:
1012         * inspector/InspectorBackend.idl:
1013         * inspector/InspectorController.cpp:
1014         (WebCore::InspectorController::setFrontendProxyObject):
1015         (WebCore::InspectorController::close):
1016         (WebCore::InspectorController::resetScriptObjects):
1017         (WebCore::InspectorController::enableTimeline):
1018         (WebCore::InspectorController::disableTimeline):
1019         (WebCore::InspectorController::timelineEnabled):
1020         * inspector/InspectorController.h:
1021         (WebCore::InspectorController::timelineAgent):
1022         * inspector/InspectorFrontend.cpp:
1023         (WebCore::InspectorFrontend::timelineWasEnabled):
1024         (WebCore::InspectorFrontend::timelineWasDisabled):
1025         (WebCore::InspectorFrontend::addItemToTimeline):
1026         * inspector/InspectorFrontend.h:
1027         * inspector/InspectorTimelineAgent.cpp: Added.
1028         (WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
1029         (WebCore::InspectorTimelineAgent::~InspectorTimelineAgent):
1030         (WebCore::InspectorTimelineAgent::willDispatchDOMEvent):
1031         (WebCore::InspectorTimelineAgent::didDispatchDOMEvent):
1032         (WebCore::InspectorTimelineAgent::willLayout):
1033         (WebCore::InspectorTimelineAgent::didLayout):
1034         (WebCore::InspectorTimelineAgent::willRecalculateStyle):
1035         (WebCore::InspectorTimelineAgent::didRecalculateStyle):
1036         (WebCore::InspectorTimelineAgent::willPaint):
1037         (WebCore::InspectorTimelineAgent::didPaint):
1038         (WebCore::InspectorTimelineAgent::willWriteHTML):
1039         (WebCore::InspectorTimelineAgent::didWriteHTML):
1040         (WebCore::InspectorTimelineAgent::reset):
1041         (WebCore::InspectorTimelineAgent::didCompleteCurrentRecord):
1042         (WebCore::InspectorTimelineAgent::currentTimeInMilliseconds):
1043         (WebCore::InspectorTimelineAgent::sessionTimeInMilliseconds):
1044         * inspector/InspectorTimelineAgent.h: Added.
1045         * inspector/TimelineItem.cpp: Added.
1046         (WebCore::TimelineItem::TimelineItem):
1047         (WebCore::TimelineItem::addToTimeline):
1048         (WebCore::TimelineItem::convertToScriptObject):
1049         (WebCore::TimelineItem::convertChildrenToScriptArray):
1050         (WebCore::TimelineItem::addChildItem):
1051         * inspector/TimelineItem.h: Added.
1052         (WebCore::):
1053         (WebCore::TimelineItem::~TimelineItem):
1054         (WebCore::TimelineItem::previous):
1055         (WebCore::TimelineItem::releasePrevious):
1056         (WebCore::TimelineItem::setEndTime):
1057         (WebCore::TimelineItem::type):
1058         * inspector/front-end/TimelineAgent.js: Added.
1059         (WebInspector.TimelineAgent):
1060         (WebInspector.addItemToTimeline):
1061         (WebInspector.timelineWasEnabled):
1062         (WebInspector.timelineWasDisabled):
1063         * inspector/front-end/inspector.html:
1064         * page/FrameView.cpp:
1065         (WebCore::FrameView::layout):
1066         (WebCore::FrameView::paintContents):
1067         * page/FrameView.h:
1068         (WebCore::FrameView::inspectorTimelineAgent):
1069         * page/Page.cpp:
1070         (WebCore::Page::inspectorTimelineAgent):
1071         * page/Page.h:
1072
1073 2009-09-08  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
1074
1075         Reviewed by Simon Hausmann.
1076
1077         [Qt] Fix unused variable warnings
1078         https://bugs.webkit.org/show_bug.cgi?id=29018
1079
1080         No functional change, no tests.
1081
1082         * history/qt/HistoryItemQt.cpp:
1083         (WebCore::HistoryItem::restoreState):
1084         * platform/graphics/qt/ImageBufferQt.cpp:
1085         (WebCore::putImageData):
1086         * platform/qt/RenderThemeQt.cpp:
1087         (WebCore::RenderThemeQt::paintMenuList):
1088
1089 2009-09-08  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
1090
1091         Reviewed by Ariya Hidayat.
1092
1093         [Qt] Use the declaration order in initializer lists
1094         https://bugs.webkit.org/show_bug.cgi?id=29017
1095
1096         No functional change, no new tests.
1097
1098         * platform/graphics/qt/FontCacheQt.cpp:
1099         (WebCore::FontPlatformDataCacheKey::FontPlatformDataCacheKey):
1100         * platform/network/qt/QNetworkReplyHandler.cpp:
1101         (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
1102
1103 2009-09-08  Kent Tamura  <tkent@chromium.org>
1104
1105         Reviewed by Eric Seidel.
1106
1107         Implement ValidityState::typeMismatch() for <input type=number>.
1108         https://bugs.webkit.org/show_bug.cgi?id=28934
1109
1110         Test: fast/forms/ValidityState-typeMismatch-number.html
1111
1112         * html/HTMLInputElement.cpp:
1113         (WebCore::HTMLInputElement::formStringToDouble):
1114         * html/HTMLInputElement.h:
1115         * html/ValidityState.cpp:
1116         (WebCore::ValidityState::typeMismatch):
1117         * html/ValidityState.h:
1118
1119 2009-09-08  Andras Becsi  <becsi.andras@stud.u-szeged.hu>
1120
1121         Reviewed by Gustavo Noronha.
1122
1123         [Gtk] Another attempt of a buildfix.
1124
1125         * GNUmakefile.am: Modified. Remove some extra IDL files added in r48153.
1126
1127 2009-09-08  Kenneth Rohde Christiansen  <kenneth@webkit.org>
1128
1129         Reviewed by Simon Hausmann.
1130
1131         [Qt] Make cursor set cleaner in QtWebKit Api: eliminate SetCursorEvent hack.
1132         https://bugs.webkit.org/show_bug.cgi?id=28865
1133
1134         Save the QCursor as a property in WidgetQt::setCursor
1135         and actually change the cursor in QWebView::event() by making use
1136         of the QEvent::DynamicPropertyChange event type.
1137         When unsetCursor() is called on the QWidget we can fallback to
1138         the cursor set by WebCore.
1139
1140         Patch by Kenneth Rohde Christiansen <kenneth@webkit.org> and
1141                  Antonio Gomes <antonio.gomes@openbossa.org> on 2009-09-07
1142
1143         * platform/qt/WidgetQt.cpp:
1144         (WebCore::Widget::setCursor):
1145
1146 2009-09-08  Andras Becsi  <becsi.andras@stud.u-szeged.hu>
1147
1148         Reviewed by Gustavo Noronha.
1149
1150         [Gtk] Buildfix for build error introduced in r48150.
1151
1152         * GNUmakefile.am: Modified. Added missing IDL files.
1153
1154 2009-09-08  Csaba Osztrogonac  <oszi@inf.u-szeged.hu>
1155
1156         Reviewed by Tor Arne Vestbø.
1157
1158         [Qt] Buildfix. Build error caused by r48150.
1159
1160         * WebCore.pro: missing IDL files added
1161
1162 2009-09-07  Chris Marrin  <cmarrin@apple.com>
1163
1164         Reviewed by Oliver Hunt.
1165
1166         Update Canvas 3D implementation to match spec
1167         https://bugs.webkit.org/show_bug.cgi?id=29010
1168
1169         This adds several new CanvasXXXArray classes each of which has a custom constructor
1170         and custom getters and setters. Also changed CanvasRenderingContext3D and GraphicsContext3D
1171         to match the new and changed API.
1172
1173         * DerivedSources.make:
1174         * WebCore.xcodeproj/project.pbxproj:
1175         * bindings/js/JSCanvasArrayBufferConstructor.cpp: Added with properties svn:eol-style and svn:mime-type.
1176         * bindings/js/JSCanvasArrayBufferConstructor.h: Added with properties svn:eol-style and svn:mime-type.
1177         * bindings/js/JSCanvasArrayCustom.cpp: Added with properties svn:eol-style and svn:mime-type.
1178         * bindings/js/JSCanvasByteArrayConstructor.cpp: Added with properties svn:eol-style and svn:mime-type.
1179         * bindings/js/JSCanvasByteArrayConstructor.h: Added with properties svn:eol-style and svn:mime-type.
1180         * bindings/js/JSCanvasByteArrayCustom.cpp: Added with properties svn:eol-style and svn:mime-type.
1181         * bindings/js/JSCanvasFloatArrayConstructor.cpp: Added with properties svn:eol-style and svn:mime-type.
1182         * bindings/js/JSCanvasFloatArrayConstructor.h: Added with properties svn:eol-style and svn:mime-type.
1183         * bindings/js/JSCanvasFloatArrayCustom.cpp: Added with properties svn:eol-style and svn:mime-type.
1184         * bindings/js/JSCanvasIntArrayConstructor.cpp: Added with properties svn:eol-style and svn:mime-type.
1185         * bindings/js/JSCanvasIntArrayConstructor.h: Added with properties svn:eol-style and svn:mime-type.
1186         * bindings/js/JSCanvasIntArrayCustom.cpp: Added with properties svn:eol-style and svn:mime-type.
1187         * bindings/js/JSCanvasRenderingContext3DCustom.cpp:
1188         (WebCore::JSCanvasRenderingContext3D::bufferData):
1189         (WebCore::JSCanvasRenderingContext3D::bufferSubData):
1190         (WebCore::JSCanvasRenderingContext3D::texImage2D):
1191         (WebCore::JSCanvasRenderingContext3D::texSubImage2D):
1192         * bindings/js/JSCanvasShortArrayConstructor.cpp: Added with properties svn:eol-style and svn:mime-type.
1193         * bindings/js/JSCanvasShortArrayConstructor.h: Added with properties svn:eol-style and svn:mime-type.
1194         * bindings/js/JSCanvasShortArrayCustom.cpp: Added with properties svn:eol-style and svn:mime-type.
1195         * bindings/js/JSCanvasUnsignedByteArrayConstructor.cpp: Added with properties svn:eol-style and svn:mime-type.
1196         * bindings/js/JSCanvasUnsignedByteArrayConstructor.h: Added with properties svn:eol-style and svn:mime-type.
1197         * bindings/js/JSCanvasUnsignedByteArrayCustom.cpp: Added with properties svn:eol-style and svn:mime-type.
1198         * bindings/js/JSCanvasUnsignedIntArrayConstructor.cpp: Added with properties svn:eol-style and svn:mime-type.
1199         * bindings/js/JSCanvasUnsignedIntArrayConstructor.h: Added with properties svn:eol-style and svn:mime-type.
1200         * bindings/js/JSCanvasUnsignedIntArrayCustom.cpp: Added with properties svn:eol-style and svn:mime-type.
1201         * bindings/js/JSCanvasUnsignedShortArrayConstructor.cpp: Added with properties svn:eol-style and svn:mime-type.
1202         * bindings/js/JSCanvasUnsignedShortArrayConstructor.h: Added with properties svn:eol-style and svn:mime-type.
1203         * bindings/js/JSCanvasUnsignedShortArrayCustom.cpp: Added with properties svn:eol-style and svn:mime-type.
1204         * bindings/js/JSDOMWindowCustom.cpp:
1205         (WebCore::JSDOMWindow::canvasArrayBuffer):
1206         (WebCore::JSDOMWindow::canvasByteArray):
1207         (WebCore::JSDOMWindow::canvasUnsignedByteArray):
1208         (WebCore::JSDOMWindow::canvasIntArray):
1209         (WebCore::JSDOMWindow::canvasUnsignedIntArray):
1210         (WebCore::JSDOMWindow::canvasShortArray):
1211         (WebCore::JSDOMWindow::canvasUnsignedShortArray):
1212         (WebCore::JSDOMWindow::canvasFloatArray):
1213         * html/HTMLCanvasElement.cpp:
1214         (WebCore::HTMLCanvasElement::getContext):
1215         (WebCore::HTMLCanvasElement::paint):
1216         * html/canvas/CanvasArray.cpp: Added with properties svn:eol-style and svn:mime-type.
1217         * html/canvas/CanvasArray.h: Added with properties svn:eol-style and svn:mime-type.
1218         * html/canvas/CanvasArray.idl: Added.
1219         * html/canvas/CanvasArrayBuffer.cpp: Added with properties svn:eol-style and svn:mime-type.
1220         * html/canvas/CanvasArrayBuffer.h: Added with properties svn:eol-style and svn:mime-type.
1221         * html/canvas/CanvasArrayBuffer.idl: Added.
1222         * html/canvas/CanvasByteArray.cpp:
1223         * html/canvas/CanvasByteArray.h:
1224         * html/canvas/CanvasByteArray.idl:
1225         * html/canvas/CanvasFloatArray.cpp: Added with properties svn:eol-style and svn:mime-type.
1226         * html/canvas/CanvasFloatArray.h: Added with properties svn:eol-style and svn:mime-type.
1227         * html/canvas/CanvasFloatArray.idl: Added.
1228         * html/canvas/CanvasIntArray.cpp: Added with properties svn:eol-style and svn:mime-type.
1229         * html/canvas/CanvasIntArray.h: Added with properties svn:eol-style and svn:mime-type.
1230         * html/canvas/CanvasIntArray.idl: Added.
1231         * html/canvas/CanvasRenderingContext3D.cpp:
1232         (WebCore::CanvasRenderingContext3D::CanvasRenderingContext3D):
1233         (WebCore::CanvasRenderingContext3D::markContextChanged):
1234         (WebCore::CanvasRenderingContext3D::beginPaint):
1235         (WebCore::CanvasRenderingContext3D::endPaint):
1236         (WebCore::CanvasRenderingContext3D::reshape):
1237         (WebCore::CanvasRenderingContext3D::sizeInBytes):
1238         (WebCore::CanvasRenderingContext3D::bindTexture):
1239         (WebCore::CanvasRenderingContext3D::bufferData):
1240         (WebCore::CanvasRenderingContext3D::bufferSubData):
1241         (WebCore::CanvasRenderingContext3D::checkFramebufferStatus):
1242         (WebCore::CanvasRenderingContext3D::clear):
1243         (WebCore::CanvasRenderingContext3D::createBuffer):
1244         (WebCore::CanvasRenderingContext3D::createFramebuffer):
1245         (WebCore::CanvasRenderingContext3D::createTexture):
1246         (WebCore::CanvasRenderingContext3D::createProgram):
1247         (WebCore::CanvasRenderingContext3D::createRenderbuffer):
1248         (WebCore::CanvasRenderingContext3D::createShader):
1249         (WebCore::CanvasRenderingContext3D::deleteBuffer):
1250         (WebCore::CanvasRenderingContext3D::deleteFramebuffer):
1251         (WebCore::CanvasRenderingContext3D::deleteProgram):
1252         (WebCore::CanvasRenderingContext3D::deleteRenderbuffer):
1253         (WebCore::CanvasRenderingContext3D::deleteShader):
1254         (WebCore::CanvasRenderingContext3D::deleteTexture):
1255         (WebCore::CanvasRenderingContext3D::drawArrays):
1256         (WebCore::CanvasRenderingContext3D::drawElements):
1257         (WebCore::CanvasRenderingContext3D::getBoolean):
1258         (WebCore::CanvasRenderingContext3D::getBooleanv):
1259         (WebCore::CanvasRenderingContext3D::getBufferParameteri):
1260         (WebCore::CanvasRenderingContext3D::getBufferParameteriv):
1261         (WebCore::CanvasRenderingContext3D::getFloat):
1262         (WebCore::CanvasRenderingContext3D::getFloatv):
1263         (WebCore::CanvasRenderingContext3D::getFramebufferAttachmentParameteri):
1264         (WebCore::CanvasRenderingContext3D::getFramebufferAttachmentParameteriv):
1265         (WebCore::CanvasRenderingContext3D::getInteger):
1266         (WebCore::CanvasRenderingContext3D::getIntegerv):
1267         (WebCore::CanvasRenderingContext3D::getProgrami):
1268         (WebCore::CanvasRenderingContext3D::getProgramiv):
1269         (WebCore::CanvasRenderingContext3D::getProgramInfoLog):
1270         (WebCore::CanvasRenderingContext3D::getRenderbufferParameteri):
1271         (WebCore::CanvasRenderingContext3D::getRenderbufferParameteriv):
1272         (WebCore::CanvasRenderingContext3D::getShaderi):
1273         (WebCore::CanvasRenderingContext3D::getShaderiv):
1274         (WebCore::CanvasRenderingContext3D::getShaderInfoLog):
1275         (WebCore::CanvasRenderingContext3D::getShaderSource):
1276         (WebCore::CanvasRenderingContext3D::getTexParameterf):
1277         (WebCore::CanvasRenderingContext3D::getTexParameterfv):
1278         (WebCore::CanvasRenderingContext3D::getTexParameteri):
1279         (WebCore::CanvasRenderingContext3D::getTexParameteriv):
1280         (WebCore::CanvasRenderingContext3D::getUniformf):
1281         (WebCore::CanvasRenderingContext3D::getUniformfv):
1282         (WebCore::CanvasRenderingContext3D::getUniformi):
1283         (WebCore::CanvasRenderingContext3D::getUniformiv):
1284         (WebCore::CanvasRenderingContext3D::getUniformLocation):
1285         (WebCore::CanvasRenderingContext3D::getVertexAttribf):
1286         (WebCore::CanvasRenderingContext3D::getVertexAttribfv):
1287         (WebCore::CanvasRenderingContext3D::getVertexAttribi):
1288         (WebCore::CanvasRenderingContext3D::getVertexAttribiv):
1289         (WebCore::CanvasRenderingContext3D::getVertexAttribOffset):
1290         (WebCore::CanvasRenderingContext3D::texImage2D):
1291         (WebCore::CanvasRenderingContext3D::texParameterf):
1292         (WebCore::CanvasRenderingContext3D::texParameteri):
1293         (WebCore::CanvasRenderingContext3D::texSubImage2D):
1294         (WebCore::CanvasRenderingContext3D::uniform1f):
1295         (WebCore::CanvasRenderingContext3D::uniform1fv):
1296         (WebCore::CanvasRenderingContext3D::uniform1i):
1297         (WebCore::CanvasRenderingContext3D::uniform1iv):
1298         (WebCore::CanvasRenderingContext3D::uniform2f):
1299         (WebCore::CanvasRenderingContext3D::uniform2fv):
1300         (WebCore::CanvasRenderingContext3D::uniform2i):
1301         (WebCore::CanvasRenderingContext3D::uniform2iv):
1302         (WebCore::CanvasRenderingContext3D::uniform3f):
1303         (WebCore::CanvasRenderingContext3D::uniform3fv):
1304         (WebCore::CanvasRenderingContext3D::uniform3i):
1305         (WebCore::CanvasRenderingContext3D::uniform3iv):
1306         (WebCore::CanvasRenderingContext3D::uniform4f):
1307         (WebCore::CanvasRenderingContext3D::uniform4fv):
1308         (WebCore::CanvasRenderingContext3D::uniform4i):
1309         (WebCore::CanvasRenderingContext3D::uniform4iv):
1310         (WebCore::CanvasRenderingContext3D::uniformMatrix2fv):
1311         (WebCore::CanvasRenderingContext3D::uniformMatrix3fv):
1312         (WebCore::CanvasRenderingContext3D::uniformMatrix4fv):
1313         (WebCore::CanvasRenderingContext3D::useProgram):
1314         (WebCore::CanvasRenderingContext3D::validateProgram):
1315         (WebCore::CanvasRenderingContext3D::vertexAttrib1f):
1316         (WebCore::CanvasRenderingContext3D::vertexAttrib1fv):
1317         (WebCore::CanvasRenderingContext3D::vertexAttrib2f):
1318         (WebCore::CanvasRenderingContext3D::vertexAttrib2fv):
1319         (WebCore::CanvasRenderingContext3D::vertexAttrib3f):
1320         (WebCore::CanvasRenderingContext3D::vertexAttrib3fv):
1321         (WebCore::CanvasRenderingContext3D::vertexAttrib4f):
1322         (WebCore::CanvasRenderingContext3D::vertexAttrib4fv):
1323         (WebCore::CanvasRenderingContext3D::vertexAttribPointer):
1324         (WebCore::CanvasRenderingContext3D::viewport):
1325         * html/canvas/CanvasRenderingContext3D.h:
1326         * html/canvas/CanvasRenderingContext3D.idl:
1327         * html/canvas/CanvasShortArray.cpp: Added with properties svn:eol-style and svn:mime-type.
1328         * html/canvas/CanvasShortArray.h: Added with properties svn:eol-style and svn:mime-type.
1329         * html/canvas/CanvasShortArray.idl: Added.
1330         * html/canvas/CanvasTexture.cpp:
1331         (WebCore::CanvasTexture::CanvasTexture):
1332         * html/canvas/CanvasTexture.h:
1333         (WebCore::CanvasTexture::isCubeMapRWrapModeInitialized):
1334         (WebCore::CanvasTexture::setCubeMapRWrapModeInitialized):
1335         * html/canvas/CanvasUnsignedByteArray.cpp: Added with properties svn:eol-style and svn:mime-type.
1336         * html/canvas/CanvasUnsignedByteArray.h: Added with properties svn:eol-style and svn:mime-type.
1337          * html/canvas/CanvasUnsignedByteArray.idl: Added.
1338         * html/canvas/CanvasUnsignedIntArray.cpp: Added with properties svn:eol-style and svn:mime-type.
1339         * html/canvas/CanvasUnsignedIntArray.h: Added with properties svn:eol-style and svn:mime-type.
1340         * html/canvas/CanvasUnsignedIntArray.idl: Added.
1341         * html/canvas/CanvasUnsignedShortArray.cpp: Added with properties svn:eol-style and svn:mime-type.
1342         * html/canvas/CanvasUnsignedShortArray.h: Added with properties svn:eol-style and svn:mime-type.
1343         * html/canvas/CanvasUnsignedShortArray.idl: Added.
1344         * page/DOMWindow.idl:
1345         * platform/graphics/GraphicsContext3D.h:
1346         * platform/graphics/mac/GraphicsContext3DMac.cpp:
1347         (WebCore::GraphicsContext3D::beginPaint):
1348         (WebCore::GraphicsContext3D::endPaint):
1349         (WebCore::GraphicsContext3D::bindTexture):
1350         (WebCore::GraphicsContext3D::bufferData):
1351         (WebCore::GraphicsContext3D::bufferSubData):
1352         (WebCore::GraphicsContext3D::checkFramebufferStatus):
1353         (WebCore::GraphicsContext3D::drawArrays):
1354         (WebCore::GraphicsContext3D::drawElements):
1355         (WebCore::GraphicsContext3D::texParameterf):
1356         (WebCore::GraphicsContext3D::texParameteri):
1357         (WebCore::GraphicsContext3D::uniform1f):
1358         (WebCore::GraphicsContext3D::uniform1fv):
1359         (WebCore::GraphicsContext3D::uniform2f):
1360         (WebCore::GraphicsContext3D::uniform2fv):
1361         (WebCore::GraphicsContext3D::uniform3f):
1362         (WebCore::GraphicsContext3D::uniform3fv):
1363         (WebCore::GraphicsContext3D::uniform4f):
1364         (WebCore::GraphicsContext3D::uniform4fv):
1365         (WebCore::GraphicsContext3D::uniform1i):
1366         (WebCore::GraphicsContext3D::uniform1iv):
1367         (WebCore::GraphicsContext3D::uniform2i):
1368         (WebCore::GraphicsContext3D::uniform2iv):
1369         (WebCore::GraphicsContext3D::uniform3i):
1370         (WebCore::GraphicsContext3D::uniform3iv):
1371         (WebCore::GraphicsContext3D::uniform4i):
1372         (WebCore::GraphicsContext3D::uniform4iv):
1373         (WebCore::GraphicsContext3D::uniformMatrix2fv):
1374         (WebCore::GraphicsContext3D::uniformMatrix3fv):
1375         (WebCore::GraphicsContext3D::uniformMatrix4fv):
1376         (WebCore::GraphicsContext3D::vertexAttrib1f):
1377         (WebCore::GraphicsContext3D::vertexAttrib1fv):
1378         (WebCore::GraphicsContext3D::vertexAttrib2f):
1379         (WebCore::GraphicsContext3D::vertexAttrib2fv):
1380         (WebCore::GraphicsContext3D::vertexAttrib3f):
1381         (WebCore::GraphicsContext3D::vertexAttrib3fv):
1382         (WebCore::GraphicsContext3D::vertexAttrib4f):
1383         (WebCore::GraphicsContext3D::vertexAttrib4fv):
1384         (WebCore::GraphicsContext3D::vertexAttribPointer):
1385         (WebCore::GraphicsContext3D::getBoolean):
1386         (WebCore::GraphicsContext3D::getBooleanv):
1387         (WebCore::GraphicsContext3D::getFloat):
1388         (WebCore::GraphicsContext3D::getFloatv):
1389         (WebCore::GraphicsContext3D::getInteger):
1390         (WebCore::GraphicsContext3D::getIntegerv):
1391         (WebCore::GraphicsContext3D::getBufferParameteri):
1392         (WebCore::GraphicsContext3D::getBufferParameteriv):
1393         (WebCore::GraphicsContext3D::getFramebufferAttachmentParameteri):
1394         (WebCore::GraphicsContext3D::getFramebufferAttachmentParameteriv):
1395         (WebCore::GraphicsContext3D::getProgrami):
1396         (WebCore::GraphicsContext3D::getProgramiv):
1397         (WebCore::GraphicsContext3D::getRenderbufferParameteri):
1398         (WebCore::GraphicsContext3D::getRenderbufferParameteriv):
1399         (WebCore::GraphicsContext3D::getShaderi):
1400         (WebCore::GraphicsContext3D::getShaderiv):
1401         (WebCore::GraphicsContext3D::getTexParameterf):
1402         (WebCore::GraphicsContext3D::getTexParameterfv):
1403         (WebCore::GraphicsContext3D::getTexParameteri):
1404         (WebCore::GraphicsContext3D::getTexParameteriv):
1405         (WebCore::GraphicsContext3D::getUniformf):
1406         (WebCore::GraphicsContext3D::getUniformfv):
1407         (WebCore::GraphicsContext3D::getUniformi):
1408         (WebCore::GraphicsContext3D::getUniformiv):
1409         (WebCore::GraphicsContext3D::getVertexAttribf):
1410         (WebCore::GraphicsContext3D::getVertexAttribfv):
1411         (WebCore::GraphicsContext3D::getVertexAttribi):
1412         (WebCore::GraphicsContext3D::getVertexAttribiv):
1413         (WebCore::GraphicsContext3D::getVertexAttribOffset):
1414         (WebCore::GraphicsContext3D::texImage2D):
1415         (WebCore::GraphicsContext3D::texSubImage2D):
1416         (WebCore::GraphicsContext3D::sizeInBytes):
1417
1418 2009-09-08  Jocelyn Turcotte  <jocelyn.turcotte@nokia.com>
1419
1420         Reviewed by Timothy Hatcher.
1421
1422         Make m_windowVisible more consistent with the actual visibility of the inspector.
1423
1424         * inspector/InspectorController.cpp:
1425         (WebCore::InspectorController::setWindowVisible):
1426
1427 2009-09-07  Adam Barth  <abarth@webkit.org>
1428
1429         Unreviewed speculative build fix for Snow Leopard.
1430
1431         * platform/GeolocationService.cpp:
1432         (WebCore::createGeolocationServiceNull):
1433
1434 2009-09-07  Steve Block  <steveblock@google.com>
1435
1436         Reviewed by Adam Barth.
1437
1438         Adds a mock Geolocation service. This will be used to provide predictable behavior of the
1439         Geolocation API for use in LayoutTests. Later changes will integrate the the mock
1440         Geolocation service with DumpRenderTree.
1441         https://bugs.webkit.org/show_bug.cgi?id=28264
1442
1443         The mock Geolocation service returns a fixed position or error. This position or error can be
1444         set through static methods on the GeolocationService class. The position or error is shared
1445         between all instances of the mock Geolocation service.
1446
1447         Implementation details.
1448         The GeolocationService object maintains a pointer to a factory function which it uses to create
1449         Geolocation service instances. Each platform implementing Geolocation sets this pointer
1450         to the factory function for their platform's implementation. When the mock Geolocation service
1451         is activated, the factory function pointer is reset to the factory function for the mock service.
1452
1453         Test: fast/dom/Geolocation/error.html
1454
1455         * WebCore.base.exp: Modified. Exports GeolocationServiceMock methods.
1456         * GNUMakefile.am: Modified. Added GeolocationServiceMock files.
1457         * WebCore.gypi: Modified. Added GeolocationServiceMock files.
1458         * WebCore.pro: Modified. Added GeolocationServiceMock files.
1459         * WebCore.vcproj/WebCore.vcproj: Modified. Added GeolocationServiceMock files.
1460         * WebCore.vcproj/WebCoreCommon.vsprops: Modified. Added mock directory to includes.
1461         * WebCore.xcodeproj/project.pbxproj: Modified. Added GeolocationServiceMock files and exports some headers.
1462         * WebCoreSources.bkl: Modified. Added GeolocationServiceMock files.
1463         * page/ChromeClient.h: Modified. Fixed comment.
1464         * page/Geolocation.cpp: Modified.
1465         (WebCore::Geolocation::setIsAllowed): Modified. Fixed error string.
1466         * platform/GeolocationService.cpp: Modified.
1467         (WebCore::createGeolocationServiceNull): Added. Returns null in place of a Geolocation service. Used to avoid link errors on platforms where Geolocation is not implemented.
1468         (WebCore::GeolocationService::create): Added. Uses the factory function pointer to create a Geolocation service implementation.
1469         (WebCore::GeolocationService::useMock): Added. Configures the GeolocationServie to use the mock implementation.
1470         * platform/GeolocationService.h: Modified.
1471         * platform/mock: Added.
1472         * platform/mock/GeolocationServiceMock.cpp: Added.
1473         (WebCore::GeolocationServiceMock::create): Added. Creates a GeolocationServiceMock object.
1474         (WebCore::GeolocationServiceMock::GeolocationServiceMock): Added. Constructor.
1475         (WebCore::GeolocationServiceMock::~GeolocationServiceMock): Added. Destructor.
1476         (WebCore::GeolocationServiceMock::setPosition): Added. Sets the position that will be returned by the object.
1477         (WebCore::GeolocationServiceMock::setError): Added. Sets the error that will be returned by the object.
1478         (WebCore::GeolocationServiceMock::startUpdating): Added. GeolocationService implementation. Starts the service.
1479         (WebCore::GeolocationServiceMock::stopUpdating): Added. GeolocationService implementation. Stops the service.
1480         (WebCore::GeolocationServiceMock::timerFired): Added. Used to provide an asynchronous callback when the service is started.
1481         (WebCore::GeolocationServiceMock::makeGeolocationCallbackFromAllInstances): Added. Used to call back when the position or error is updated.
1482         (WebCore::GeolocationServiceMock::makeGeolocationCallback): Added. Used to call back when the service starts.
1483         (WebCore::GeolocationServiceMock::initStatics): Added. Initializes statics members with constructors.
1484         (WebCore::GeolocationServiceMock::cleanUpStatics): Added. Cleans up static members with constructors.
1485         * platform/mock/GeolocationServiceMock.h: Added.
1486         (WebCore::GeolocationServiceMock::lastPosition): Added. Returns the fixed position.
1487         (WebCore::GeolocationServiceMock::lastError): Added. Returns the fixed error.
1488         * platform/gtk/GeolocationServiceGtk.cpp: Modified.
1489         (WebCore::GeolocationServiceGtk::create): Added. Creates an instance of GeolocationServiceGtk.
1490         * platform/gtk/GeolocationServiceGtk.h: Modified.
1491         * platform/mac/GeolocationServiceMac.h: Modified.
1492         * platform/mac/GeolocationServiceMac.mm: Modified.
1493         (WebCore::GeolocationServiceMac::create): Added. Creates an instance of GeolocationServiceMac.
1494
1495 2009-09-07  Adam Barth  <abarth@webkit.org>
1496
1497         Reviewed by Dimitri Glazkov.
1498
1499         https://bugs.webkit.org/show_bug.cgi?id=28985
1500
1501         We need to be slightly more careful about how we pick up a script
1502         execution context.  In particular, we were getting the wrong document
1503         for frames that had been navigated somewhere else.
1504
1505         In the long term, we should think about a better algorithm for
1506         computing the script context.
1507
1508         Fixes LayoutTests/http/tests/xmlhttprequest/detaching-frame-2.html
1509
1510         * bindings/v8/V8Proxy.cpp:
1511         (WebCore::V8Proxy::retrieveFrame):
1512
1513 2009-09-07  Kevin Ollivier  <kevino@theolliviers.com>
1514
1515         wx build fix for 2.8 compilation.
1516
1517         * platform/wx/wxcode/mac/carbon/scrollbar_render.cpp:
1518         (wxRenderer_DrawScrollbar):
1519
1520 2009-09-07  Drew Wilson  <atwilson@google.com>
1521
1522         Unreviewed build fix.
1523
1524         Reverting r48121 to fix Windows build errors.
1525
1526         * DerivedSources.cpp:
1527         * GNUmakefile.am:
1528         * WebCore.xcodeproj/project.pbxproj:
1529         * bindings/js/JSDOMWindowCustom.cpp:
1530         * bindings/js/JSEventTarget.cpp:
1531         (WebCore::toJS):
1532         (WebCore::toEventTarget):
1533         * dom/EventTarget.cpp:
1534         * dom/EventTarget.h:
1535         * page/DOMWindow.idl:
1536         * websockets/WebSocket.cpp:
1537         (WebCore::WebSocket::connect):
1538         (WebCore::WebSocket::send):
1539         (WebCore::WebSocket::close):
1540         (WebCore::WebSocket::bufferedAmount):
1541         (WebCore::WebSocket::addEventListener):
1542         (WebCore::WebSocket::removeEventListener):
1543         (WebCore::WebSocket::dispatchEvent):
1544         (WebCore::WebSocket::didConnect):
1545         (WebCore::WebSocket::didReceiveMessage):
1546         (WebCore::WebSocket::didClose):
1547         (WebCore::WebSocket::dispatchOpenEvent):
1548         (WebCore::WebSocket::dispatchMessageEvent):
1549         (WebCore::WebSocket::dispatchCloseEvent):
1550         * websockets/WebSocket.h:
1551         (WebCore::WebSocket::create):
1552         (WebCore::WebSocket::):
1553         (WebCore::WebSocket::setOnopen):
1554         (WebCore::WebSocket::onopen):
1555         (WebCore::WebSocket::setOnmessage):
1556         (WebCore::WebSocket::onmessage):
1557         (WebCore::WebSocket::setOnclose):
1558         (WebCore::WebSocket::onclose):
1559         (WebCore::WebSocket::toWebSocket):
1560         (WebCore::WebSocket::refEventTarget):
1561         (WebCore::WebSocket::derefEventTarget):
1562         * websockets/WebSocketChannel.cpp: Removed.
1563         * websockets/WebSocketChannel.h: Removed.
1564         * websockets/WebSocketChannelClient.h: Removed.
1565         * websockets/WebSocketHandshake.cpp: Removed.
1566         * websockets/WebSocketHandshake.h: Removed.
1567
1568 2009-09-07  Drew Wilson  <atwilson@google.com>
1569
1570         Unreviewed speculative build fix.
1571
1572         Reverted previous build fix as it didn't fix the problem.
1573
1574         * bindings/js/JSEventTarget.cpp:
1575         (WebCore::toEventTarget):
1576
1577 2009-09-07  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
1578
1579         Unreviewed, build fix.
1580
1581         [Qt] Fix build after SHARED_WORKERS are enabled by default (r48131)
1582
1583         * WebCore.pro:
1584
1585 2009-09-07  Drew Wilson  <atwilson@google.com>
1586
1587         Unreviewed build fix.
1588
1589         Temporarily removed depenency between JSEventTarget.cpp and WebSocket.h in an attempt to fix a windows build break.
1590
1591         * bindings/js/JSEventTarget.cpp:
1592         (WebCore::toEventTarget):
1593
1594 2009-09-07  Drew Wilson  <atwilson@google.com>
1595
1596         Reviewed by David Levin.
1597
1598         Enable SHARED_WORKERS by default.
1599         https://bugs.webkit.org/show_bug.cgi?id=28959
1600
1601         Tests (enabled in a separate patch):
1602                fast/workers/shared-worker-constructor.html
1603                fast/workers/shared-worker-context-gc.html
1604                fast/workers/shared-worker-event-listener.html
1605                fast/workers/shared-worker-exception.html
1606                fast/workers/shared-worker-frame-lifecycle.html
1607                fast/workers/shared-worker-gc.html
1608                fast/workers/shared-worker-lifecycle.html
1609                fast/workers/shared-worker-load-error.html
1610                fast/workers/shared-worker-location.html
1611                fast/workers/shared-worker-navigator.html
1612                fast/workers/shared-worker-replace-global-constructor.html
1613                fast/workers/shared-worker-replace-self.html
1614                fast/workers/shared-worker-shared.html
1615                fast/workers/shared-worker-simple.html
1616                http/tests/workers/shared-worker-importScripts.html
1617                http/tests/workers/shared-worker-redirect.html
1618                http/tests/xmlhttprequest/workers/shared-worker-close.html
1619                http/tests/xmlhttprequest/workers/shared-worker-methods-async.html
1620                http/tests/xmlhttprequest/workers/shared-worker-methods.html
1621                http/tests/xmlhttprequest/workers/shared-worker-xhr-file-not-found.html
1622
1623         * config.h: Removed some whitespace/touched the file to force a full rebuild on the build-bots.
1624         * Configurations/FeatureDefines.xcconfig:
1625         * WebCore.pro:
1626         * WebCore.vcproj/WebCoreCommon.vsprops:
1627         * WebCore.vcproj/build-generated-files.sh:
1628         * dom/DOMWindow.idl: Removed unnecessary whitespace to force a rebuild on the build-bots to pickup the flag change.
1629         * workers/DefaultSharedWorkerRepository.cpp:
1630         (WebCore::SharedWorkerScriptLoader::load):
1631         Clean up bitrot in SharedWorker code - DenyCrossOriginRedirect is now DenyCrossOriginRequests.
1632         * workers/SharedWorkerContext.cpp:
1633         (WebCore::SharedWorkerContext::dispatchConnect):
1634         Clean up bitrot - updated SharedWorker code to reflect new MessageEvent API.
1635
1636 2009-09-07  Xan Lopez  <xlopez@igalia.com>
1637
1638         Unreviewed build fix.
1639
1640         Add new file to sources list.
1641
1642         * GNUmakefile.am:
1643
1644 2009-09-07  Kevin Ollivier  <kevino@theolliviers.com>
1645
1646         wx build fixes for wx SVN trunk. 
1647
1648         * config.h:
1649         * platform/wx/RenderThemeWx.cpp:
1650         (WebCore::RenderThemeWx::paintButton):
1651         * platform/wx/wxcode/mac/carbon/non-kerned-drawing.cpp:
1652         (WebCore::drawTextWithSpacing):
1653         * platform/wx/wxcode/mac/carbon/scrollbar_render.cpp:
1654         (wxRenderer_DrawScrollbar):
1655
1656 2009-09-07  Chris Hills <chaz@chaz6.com>
1657
1658         Reviewed by Tor Arne Vestbø.
1659
1660         [Qt] Use direct includes for Phonon, not the pretty ones
1661
1662         * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
1663
1664 2009-09-07  Fumitoshi Ukai  <ukai@chromium.org>
1665
1666         Reviewed by Alexey Proskuryakov.
1667
1668         WebSocket API implementation.
1669         https://bugs.webkit.org/show_bug.cgi?id=28038
1670         
1671         Add build systems only for GNUmakefile.am and WebCore.xcodeproj now.
1672         Other build systems will be updated once the code is functional.
1673         Tests will be landed once the code is completed and functional.
1674
1675         * DerivedSources.cpp:
1676         * GNUmakefile.am:
1677         * WebCore.xcodeproj/project.pbxproj:
1678         * bindings/js/JSDOMWindowCustom.cpp:
1679         (WebCore::JSDOMWindow::webSocket):
1680         * bindings/js/JSEventTarget.cpp:
1681         (WebCore::toJS):
1682         (WebCore::toEventTarget):
1683         * dom/EventTarget.cpp:
1684         (WebCore::EventTarget::toWebSocket):
1685         * dom/EventTarget.h:
1686         * page/DOMWindow.idl:
1687         * websockets/WebSocket.cpp:
1688         (WebCore::ProcessWebSocketEventTask::create):
1689         (WebCore::ProcessWebSocketEventTask::performTask):
1690         (WebCore::ProcessWebSocketEventTask::ProcessWebSocketEventTask):
1691         (WebCore::isValidProtocolString):
1692         (WebCore::WebSocket::connect):
1693         (WebCore::WebSocket::send):
1694         (WebCore::WebSocket::close):
1695         (WebCore::WebSocket::bufferedAmount):
1696         (WebCore::WebSocket::addEventListener):
1697         (WebCore::WebSocket::removeEventListener):
1698         (WebCore::WebSocket::dispatchEvent):
1699         (WebCore::WebSocket::didConnect):
1700         (WebCore::WebSocket::didReceiveMessage):
1701         (WebCore::WebSocket::didClose):
1702         (WebCore::WebSocket::dispatchOpenEvent):
1703         (WebCore::WebSocket::dispatchMessageEvent):
1704         (WebCore::WebSocket::dispatchCloseEvent):
1705         * websockets/WebSocket.h:
1706         (WebCore::WebSocket::create):
1707         (WebCore::WebSocket::):
1708         (WebCore::WebSocket::setOnopen):
1709         (WebCore::WebSocket::onopen):
1710         (WebCore::WebSocket::setOnmessage):
1711         (WebCore::WebSocket::onmessage):
1712         (WebCore::WebSocket::setOnclose):
1713         (WebCore::WebSocket::onclose):
1714         (WebCore::WebSocket::toWebSocket):
1715         (WebCore::WebSocket::eventListeners):
1716         (WebCore::WebSocket::refEventTarget):
1717         (WebCore::WebSocket::derefEventTarget):
1718         * websockets/WebSocketChannel.cpp: Added.
1719         * websockets/WebSocketChannel.h: Added.
1720         * websockets/WebSocketChannelClient.h: Added.
1721         * websockets/WebSocketHandshake.cpp: Added.
1722         * websockets/WebSocketHandshake.h: Added.
1723
1724 2009-09-07  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
1725
1726         Reviewed by Xan Lopez.
1727
1728         https://bugs.webkit.org/show_bug.cgi?id=26854
1729         [GTK] Needs API to allow more control over outgoing requests
1730
1731         Add infrastructure required to provide the new
1732         WebKitNetworkResponse object in our API.
1733
1734         * GNUmakefile.am: Add new files to the build.
1735         * platform/network/soup/ResourceRequestSoup.cpp:
1736         (WebCore::ResourceRequest::updateFromSoupMessage):
1737         * platform/network/soup/ResourceResponse.h:
1738         * platform/network/soup/ResourceResponseSoup.cpp: Added.
1739         (WebCore::ResourceResponse::toSoupMessage):
1740
1741 2009-09-07  Mads Ager  <ager@chromium.org>
1742
1743         Reviewed by Adam Barth.
1744
1745         [V8] Cleanup document/frame null-checking in V8DOMWindowCustom.cpp
1746         https://bugs.webkit.org/show_bug.cgi?id=29009
1747
1748         Be consistent in document and frame null checks.
1749
1750         * bindings/v8/custom/V8DOMWindowCustom.cpp:
1751         (WebCore::V8Custom::WindowSetTimeoutImpl):
1752         (WebCore::ACCESSOR_GETTER):
1753         (WebCore::ACCESSOR_SETTER):
1754         (WebCore::CALLBACK_FUNC_DECL):
1755         (WebCore::NAMED_PROPERTY_GETTER):
1756         (WebCore::V8Custom::ClearTimeoutImpl):
1757
1758 2009-09-07  Xan Lopez  <xlopez@igalia.com>
1759
1760         Reviewed by Gustavo Noronha.
1761
1762         [Soup] Limit the number of connections
1763         https://bugs.webkit.org/show_bug.cgi?id=18431
1764
1765         Increase the maximum number of per host and total connections to
1766         similar values than those used by the other modern browsers. Seems
1767         to significantly improve page loading time in many cases.
1768
1769         * platform/network/soup/ResourceHandleSoup.cpp:
1770         (WebCore::ensureSessionIsInitialized):
1771
1772 2009-09-07  Michael Nordman  <michaeln@google.com>
1773
1774         Reviewed by Darin Fisher.
1775
1776         Various minor chromium appcache modifications.
1777         https://bugs.webkit.org/show_bug.cgi?id=28960
1778
1779         No new tests.
1780
1781         * bindings/v8/custom/V8DOMApplicationCacheCustom.cpp:
1782           Fix a null pointer exception.
1783         (WebCore::ACCESSOR_GETTER):
1784         * platform/network/chromium/ResourceRequest.h:
1785           Switch from appCache 'context' to 'host' terminology.
1786           Note: leaving the old deprecated accessors in place until the matching
1787           change in chrome is landed to use the new accessors.
1788         (WebCore::ResourceRequest::ResourceRequest):
1789         (WebCore::ResourceRequest::appCacheHostID):
1790         (WebCore::ResourceRequest::setAppCacheHostID):
1791         (WebCore::ResourceRequest::appCacheContextID):
1792         (WebCore::ResourceRequest::setAppCacheContextID):
1793         * platform/network/chromium/ResourceResponse.h:
1794           Add an appCacheManifestURL getter/setter.
1795           Drop the 'get' prefix from the appCacheID getter.
1796           Note: leaving the old deprecated 'get' prefixed accessor in place until the matching
1797           change in chrome is landed to use the new accessor.
1798         (WebCore::ResourceResponse::appCacheID):
1799         (WebCore::ResourceResponse::appCacheManifestURL):
1800         (WebCore::ResourceResponse::setAppCacheManifestURL):
1801         (WebCore::ResourceResponse::getAppCacheID):
1802
1803 2009-09-07  Michael Nordman  <michaeln@google.com>
1804
1805         Reviewed by Alexey Proskuryakov.
1806
1807         https://bugs.webkit.org/show_bug.cgi?id=28359
1808         Cleanup: Undo some accidental changes around DOMApplicationCache.
1809         - Restore support for constructing a DOMApplicationCache object with a null frame ptr.
1810         - Return a non-null object for window.applicationCache when the feature is disabled.
1811         - Simplify the swapCache method.
1812
1813         Test: http/tests/appcache/disabled.html
1814
1815         * loader/appcache/DOMApplicationCache.cpp:
1816         (WebCore::DOMApplicationCache::DOMApplicationCache):
1817         (WebCore::DOMApplicationCache::swapCache):
1818         (WebCore::DOMApplicationCache::scriptExecutionContext):
1819         * loader/appcache/DOMApplicationCache.h:
1820         * page/DOMWindow.cpp:
1821         (WebCore::DOMWindow::applicationCache):
1822
1823 2009-09-06  Yael Aharon  <yael.aharon@nokia.com>
1824
1825         Reviewed by Darin Adler.
1826
1827         hostname and host are mixed up when manipulating anchor elements.
1828         https://bugs.webkit.org/show_bug.cgi?id=28954
1829
1830         handle the case of port 0.
1831
1832         * html/HTMLAnchorElement.cpp:
1833         (WebCore::HTMLAnchorElement::host):
1834
1835 2009-09-06  Erik Arvidsson  <arv@chromium.org>
1836
1837         Reviewed by Eric Seidel.
1838
1839         Make hidden elements not focusable.
1840
1841         Clean up supportsFocus and isFocusable.
1842         supportsFocus now strictly means that the node can be focused by default.
1843         This is true for links, form controls and content editable elements for example.
1844         isFocusable means that the user can actually focus it.
1845         All (2) calls to supportsFocus have been updated to take this into account.
1846         
1847         Make a elements without href work correctly as well.
1848
1849         https://bugs.webkit.org/show_bug.cgi?id=27099
1850
1851         Tests: fast/events/click-focus-anchor.html
1852                fast/events/tab-focus-anchor.html
1853                fast/events/tab-focus-hidden.html
1854
1855         * dom/Element.cpp:
1856         (WebCore::Element::focus):
1857         * dom/Node.cpp:
1858         (WebCore::Node::supportsFocus):
1859         (WebCore::Node::isFocusable):
1860         * dom/Node.h:
1861         * html/HTMLAnchorElement.cpp:
1862         (WebCore::HTMLAnchorElement::supportsFocus):
1863         (WebCore::HTMLAnchorElement::isMouseFocusable):
1864         (WebCore::HTMLAnchorElement::isKeyboardFocusable):
1865         * html/HTMLAnchorElement.h:
1866         * html/HTMLAreaElement.cpp:
1867         (WebCore::HTMLAreaElement::supportsFocus):
1868         * html/HTMLAreaElement.h:
1869         * html/HTMLElement.cpp:
1870         (WebCore::HTMLElement::supportsFocus):
1871         * html/HTMLElement.h:
1872         * html/HTMLFieldSetElement.cpp:
1873         (WebCore::HTMLFieldSetElement::supportsFocus):
1874         * html/HTMLFieldSetElement.h:
1875         * html/HTMLFormControlElement.cpp:
1876         (WebCore::HTMLFormControlElement::supportsFocus):
1877         (WebCore::HTMLFormControlElement::isFocusable):
1878         * html/HTMLFrameElementBase.cpp:
1879         (WebCore::HTMLFrameElementBase::supportsFocus):
1880         * html/HTMLFrameElementBase.h:
1881         * html/HTMLLegendElement.cpp:
1882         (WebCore::HTMLLegendElement::supportsFocus):
1883         * html/HTMLLegendElement.h:
1884         * html/HTMLOptGroupElement.cpp:
1885         (WebCore::HTMLOptGroupElement::supportsFocus):
1886         (WebCore::HTMLOptGroupElement::isFocusable):
1887         * html/HTMLOptGroupElement.h:
1888         * html/HTMLOptionElement.cpp:
1889         (WebCore::HTMLOptionElement::supportsFocus):
1890         (WebCore::HTMLOptionElement::isFocusable):
1891         * html/HTMLOptionElement.h:
1892         * page/EventHandler.cpp:
1893         (WebCore::EventHandler::dispatchMouseEvent):
1894         * page/FocusController.cpp:
1895         (WebCore::FocusController::advanceFocus):
1896         * svg/SVGAElement.cpp:
1897         (WebCore::SVGAElement::supportsFocus):
1898         (WebCore::SVGAElement::isFocusable):
1899         * wml/WMLAElement.cpp:
1900         (WebCore::WMLAElement::supportsFocus):
1901         * wml/WMLAElement.h:
1902         * wml/WMLFormControlElement.cpp:
1903         (WebCore::WMLFormControlElement::supportsFocus):
1904         (WebCore::WMLFormControlElement::isFocusable):
1905         * wml/WMLFormControlElement.h:
1906
1907 2009-09-06  Joel Stanley  <joel@jms.id.au>
1908
1909         Reviewed by Dimitri Glazkov.
1910
1911         Expose functions to set the caret blink interval for Linux Chromium.
1912         Default value is set to that of RenderTheme::caretBlankInterval().
1913         Uses caretBlinkIntervalInternal to avoid overriding
1914         RenderThemeChromiumSkia::caretBlankInterval to preserve the disabling
1915         of blinking caret required for layout tests.
1916         https://bugs.webkit.org/show_bug.cgi?id=28931
1917
1918         * rendering/RenderThemeChromiumLinux.cpp:
1919         (WebCore::RenderThemeChromiumLinux::RenderThemeChromiumLinux):
1920         (WebCore::RenderThemeChromiumLinux::setCaretBlinkInterval):
1921         (WebCore::RenderThemeChromiumLinux::caretBlinkIntervalInternal):
1922         * rendering/RenderThemeChromiumLinux.h:
1923
1924 2009-09-06  Ada Chan  <adachan@apple.com>
1925
1926         Remove an extra </File> in WebCore.vcproj.
1927
1928         * WebCore.vcproj/WebCore.vcproj:
1929
1930 2009-09-06  Timothy Hatcher  <timothy@apple.com>
1931
1932         Adds a persistent setting for color format in the Web Inspector.
1933
1934         https://bugs.webkit.org/show_bug.cgi?id=28889
1935
1936         Reviewed by Dan Bernstein.
1937
1938         * English.lproj/localizedStrings.js: New strings.
1939         * inspector/front-end/Color.js: Minor style fixes.
1940         (WebInspector.Color.prototype.toString): Added. Replaces the individual
1941         "toFoo" functions. Takes a optional arguments for the color format to return.
1942         * inspector/front-end/Images/paneSettingsButtons.png: Added.
1943         * inspector/front-end/StylesSidebarPane.js:
1944         (WebInspector.StylesSidebarPane.prototype._changeColorFormat): Update the sections to show
1945         the new color format.
1946         (WebInspector.StylePropertyTreeElement.prototype.updateTitle.processColor.changeColorDisplay):
1947         Use the new toString function on Color.
1948         (WebInspector.StylePropertyTreeElement.prototype.updateTitle.processColor): Use the persistent setting
1949         to format colors by default. Add a tooltip for the color swatch.
1950         * inspector/front-end/inspector.css: New styles for the settings menu.
1951         * inspector/front-end/inspector.js:
1952         (WebInspector.loaded): Initilize the colorFormat preference.
1953
1954 2009-09-06  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
1955
1956         Reviewed by Eric Seidel.
1957
1958         [Qt] Remove Qt v4.6 check from the prefetchDNS implementation
1959         https://bugs.webkit.org/show_bug.cgi?id=28993
1960
1961         * platform/network/qt/DnsPrefetchHelper.cpp:
1962         * platform/network/qt/DnsPrefetchHelper.h:
1963
1964 2009-09-06  Cameron McCormack  <cam@mcc.id.au>
1965
1966         Reviewed by Eric Seidel.
1967
1968         Drop <definition-src> support
1969         https://bugs.webkit.org/show_bug.cgi?id=28991
1970
1971         http://dev.w3.org/SVG/profiles/1.1F2/publish/changes.html#FontsChapter
1972
1973         * DerivedSources.cpp: Remove references to definition-src.
1974         * DerivedSources.make: Ditto.
1975         * GNUmakefile.am: Ditto.
1976         * WebCore.gypi: Ditto.
1977         * WebCore.pro: Ditto.
1978         * WebCore.vcproj/WebCore.vcproj: Ditto.
1979         * WebCore.xcodeproj/project.pbxproj: Ditto.
1980         * bindings/objc/DOM.mm:
1981         (WebCore::createElementClassMap): Ditto.
1982         * bindings/objc/DOMSVG.h: Ditto.
1983         * bindings/v8/DerivedSourcesAllInOne.cpp: Ditto.
1984         * bindings/v8/V8DOMWrapper.cpp: Ditto.
1985         * bindings/v8/V8Index.cpp: Ditto.
1986         * bindings/v8/V8Index.h: Ditto.
1987         * svg/SVGAllInOne.cpp: Ditto.
1988         * svg/SVGDefinitionSrcElement.cpp: Removed.
1989         * svg/SVGDefinitionSrcElement.h: Removed.
1990         * svg/SVGDefinitionSrcElement.idl: Removed.
1991         * svg/SVGFontFaceElement.cpp:
1992         (WebCore::SVGFontFaceElement::rebuildFontFace): Don't search for
1993         definition-src child.
1994         * svg/svgtags.in: Remove definition-src.
1995
1996 2009-09-05  Dimitri Glazkov  <dglazkov@chromium.org>
1997
1998         Unreviewed, build fix.
1999
2000         [Chromium] Roll out http://trac.webkit.org/changeset/48094, because the
2001         logic of retrieving default caret blink interval was incorrect (non-existent)
2002         and caused layout test flakiness.
2003
2004         * rendering/RenderThemeChromiumLinux.cpp:
2005         * rendering/RenderThemeChromiumLinux.h:
2006
2007 2009-09-05  Jian Li  <jianli@chromium.org>
2008
2009         Reviewed by NOBODY (Chromium reliability build break).
2010
2011         Back up partial change in r48072 in order to fix chromium reliability build break.
2012
2013         * bindings/v8/V8AbstractEventListener.cpp:
2014         (WebCore::V8AbstractEventListener::invokeEventHandler):
2015
2016 2009-09-05  Nicolas Weber  <thakis@chromium.org>
2017
2018         Reviewed by Darin Fisher.
2019
2020         https://bugs.webkit.org/show_bug.cgi?id=28975
2021         Fix file upload on chrome/mac. Images that have "Hide Extension" set,
2022         such as screenshots by default, can now be uploaded to sites such as
2023         imgur.com.
2024
2025         * platform/FileSystem.h:
2026         Add pathGetDisplayFileName().
2027         * platform/chromium/FileChooserChromium.cpp:
2028         (WebCore::FileChooser::basenameForWidth):
2029         Call pathGetDisplayFileName() instead of pathGetFileName().
2030         * platform/chromium/FileSystemChromiumLinux.cpp:
2031         (WebCore::pathGetDisplayFileName):
2032         Implement pathGetDisplayFileName() by delegating to pathGetFileName().
2033         * platform/chromium/FileSystemChromiumMac.mm:
2034         (WebCore::pathGetFileName):
2035         Now returns a real filename instead of a presentational one, which
2036         fixes the problem addressed by this change.
2037         (WebCore::pathGetDisplayFileName):
2038         New function that returns a presentational filename; does what
2039         pathGetDisplayFileName() did prior to this patch.
2040         * platform/chromium/FileSystemChromiumWin.cpp:
2041         (WebCore::pathGetDisplayFileName):
2042         Implement pathGetDisplayFileName() by delegating to pathGetFileName().
2043
2044 2009-09-05  Joel Stanley  <joel@jms.id.au>
2045
2046         Reviewed by David Levin.
2047
2048         Expose functions to set the caret blink interval for Linux Chromium.
2049         https://bugs.webkit.org/show_bug.cgi?id=28931
2050
2051         * rendering/RenderThemeChromiumLinux.cpp:
2052         (WebCore::RenderThemeChromiumLinux::setCaretBlinkInterval):
2053         (WebCore::RenderThemeChromiumLinux::caretBlinkInterval):
2054         * rendering/RenderThemeChromiumLinux.h:
2055
2056 2009-09-04  Dmitry Titov  <dimich@chromium.org>
2057
2058         Reviewed by David Levin.
2059
2060         Prevent UI freeze in case when too many timers are in the timer queue.
2061         https://bugs.webkit.org/show_bug.cgi?id=23865
2062
2063         The fix measures the elapsed time while executing timers. If we have too many
2064         timers and it takes significant time to fire, quit the loop and reschedule.
2065         This lets the run loop process user input (close the window for example).
2066
2067         * platform/ThreadTimers.h:
2068         * platform/ThreadTimers.cpp:
2069         (WebCore::ThreadTimers::sharedTimerFiredInternal):
2070         (WebCore::ThreadTimers::fireTimersInNestedEventLoop):
2071         Removed functions and members used before to grab a list of all expired timers.
2072         Now we fetch one by one, measuring time and quitting the loop if it takes too long.
2073         * platform/Timer.cpp:
2074         (WebCore::TimerBase::isActive):
2075         (WebCore::TimerBase::setNextFireTime):
2076         Since timers are now fired one by one, there is no need to keep track of updated timers.
2077         * manual-tests/input-starved-by-timers.html: Manual test that attempts to freeze browser by
2078         creating of enough timers. It then keeps UI frozen and after 10 seconds starts to drain the timers
2079         so the browser un-freezes. This is instead of a regular layout test because we don't have a way
2080         to inject an input events via regular run loop in DRT - instead they are directly dispatched by
2081         eventSender, which does not reproduce the UI freeze that happens with real input.
2082
2083 2009-09-04  Anders Carlsson  <andersca@apple.com>
2084
2085         Reviewed by Adele Peterson.
2086
2087         <rdar://problem/7201063>
2088         
2089         Detach any custom scrollbars before detaching the document.
2090         
2091         * page/Frame.cpp:
2092         (WebCore::Frame::setView):
2093
2094 2009-09-04  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
2095
2096                 Unreviewed, build fix.
2097
2098                 Remove remaining references to UserStyleSheetLoader after r48075.
2099
2100                 * WebCore.gypi:
2101                 * WebCore.xcodeproj/project.pbxproj:
2102                 * page/qt/FrameQt.cpp:
2103                 * page/wince/FrameWince.cpp:
2104
2105 2009-09-04  Michelangelo De Simone  <micdesim@gmail.com>
2106
2107                 Reviewed by David Levin.
2108
2109                 https://bugs.webkit.org/show_bug.cgi?id=28988
2110                 Minor fix: "novalidate" attribute renamed in "noValidate", according to
2111                 HTML5 specs:
2112                 http://www.whatwg.org/specs/web-apps/current-work/#dom-fs-novalidate
2113
2114                 * html/HTMLFormElement.cpp:
2115                 (WebCore::HTMLFormElement::noValidate):
2116                 (WebCore::HTMLFormElement::setNoValidate):
2117                 * html/HTMLFormElement.h:
2118                 * html/HTMLFormElement.idl:
2119
2120 2009-09-04  Dmitry Titov  <dimich@chromium.org>
2121
2122         Reviewed by David Levin.
2123
2124         Remove unused line of code from WorkerContext
2125         https://bugs.webkit.org/show_bug.cgi?id=28990
2126
2127         * workers/WorkerContext.cpp:
2128         (WebCore::WorkerContext::importScripts):
2129
2130 2009-09-04  Darin Adler  <darin@apple.com>
2131
2132         Reviewed by Oliver Hunt.
2133
2134         Fix assertion seen when running buildbot.
2135
2136         * bindings/js/JSDOMBinding.h:
2137         (WebCore::DOMObjectWithGlobalPointer::createStructure): Create the structure without
2138         the HasDefaultMark bit since this has a custom mark function.
2139
2140 2009-09-04  Dave Hyatt  <hyatt@apple.com>
2141
2142         Reviewed by Adam Roben.
2143
2144         https://bugs.webkit.org/show_bug.cgi?id=28984, remove the remote stylesheet loader on Mac/Qt.
2145         Make sure the other code path (now used by everybody) can handle data URLs.
2146
2147         As per the post on webkit-dev, the ability to work remotely isn't working properly anyway (it doesn't
2148         hold up the pending sheet count, so you'd just FOUC on every Web page), and it's extremely unlikely
2149         that anybody is relying on this support.
2150         
2151         Tor Arne agreed it was ok to disable (he enabled it on the Qt side), and only Mac/Qt were using this
2152         code.
2153
2154         * WebCore.pro:
2155         * WebCore.xcodeproj/project.pbxproj:
2156         * dom/Document.cpp:
2157         (WebCore::Document::userStyleSheet):
2158         * dom/Document.h:
2159         * loader/FrameLoader.cpp:
2160         (WebCore::FrameLoader::begin):
2161         * loader/UserStyleSheetLoader.cpp: Removed.
2162         * loader/UserStyleSheetLoader.h: Removed.
2163         * page/Frame.cpp:
2164         (WebCore::Frame::reapplyStyles):
2165         * page/Frame.h:
2166         * page/Page.cpp:
2167         (WebCore::Page::userStyleSheetLocationChanged):
2168         (WebCore::Page::userStyleSheet):
2169         * page/mac/FrameMac.mm:
2170         * page/qt/FrameQt.cpp:
2171
2172 2009-09-04  Mikhail Naganov  <mnaganov@chromium.org>
2173
2174         Reviewed by Timothy Hatcher.
2175
2176         Add "sampling profiler" preference, simplify data display when it's set.
2177
2178         https://bugs.webkit.org/show_bug.cgi?id=28969
2179
2180         * inspector/front-end/ProfileDataGridTree.js:
2181         (WebInspector.ProfileDataGridNode.prototype.get data.formatMilliseconds):
2182         (WebInspector.ProfileDataGridNode.prototype.get data):
2183         * inspector/front-end/ProfileView.js:
2184         (WebInspector.ProfileView):
2185         * inspector/front-end/inspector.js:
2186
2187 2009-09-04  Jian Li  <jianli@chromium.org>
2188
2189         Reviewed by Adam Barth.
2190
2191         [V8] Run-time exception in onmessage handler is not forwarded to the worker object.
2192         https://bugs.webkit.org/show_bug.cgi?id=28980
2193
2194         Tested by worker-close.html.
2195
2196         * bindings/v8/ScriptFunctionCall.cpp:
2197         * bindings/v8/V8AbstractEventListener.cpp:
2198         (WebCore::V8AbstractEventListener::invokeEventHandler):
2199         * bindings/v8/V8Utilities.cpp:
2200         (WebCore::getScriptExecutionContext):
2201         (WebCore::reportException):
2202         * bindings/v8/V8Utilities.h:
2203         (WebCore::getScriptExecutionContext):
2204         * bindings/v8/custom/V8MessageChannelConstructor.cpp:
2205         (WebCore::CALLBACK_FUNC_DECL):
2206         * bindings/v8/custom/V8SharedWorkerCustom.cpp:
2207         (WebCore::CALLBACK_FUNC_DECL):
2208         * bindings/v8/custom/V8WorkerCustom.cpp:
2209         (WebCore::CALLBACK_FUNC_DECL):
2210         * bindings/v8/custom/V8XMLHttpRequestConstructor.cpp:
2211         (WebCore::CALLBACK_FUNC_DECL):
2212         * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
2213         (WebCore::CALLBACK_FUNC_DECL):
2214
2215 2009-09-04  Dave Hyatt  <hyatt@apple.com>
2216
2217         Reviewed by Anders Carlsson.
2218
2219         Remove unused m_sheet variable and setCSSStyleSheet methods.
2220
2221         * dom/Document.cpp:
2222         * dom/Document.h:
2223
2224 2009-09-04  Anders Carlsson  <andersca@apple.com>
2225
2226         Reviewed by David Hyatt and Adele Peterson.
2227
2228         (Based on a patch from Adele).
2229         
2230         Fix <rdar://problem/7185875>.
2231         
2232         * page/Frame.cpp:
2233         (WebCore::Frame::setView):
2234         Detach any custom scroll bars from the old view.
2235         
2236         * page/FrameView.cpp:
2237         (WebCore::FrameView::detachCustomScrollbars):
2238         Simplify the check (and make it work when body is null) by just checking that the scroll bar owner is
2239         not a RenderPart object.
2240
2241         * rendering/RenderObject.cpp:
2242         (WebCore::RenderObject::destroy):
2243         ASSERT that frame() is not null here and also add a null check so that release builds won't crash.
2244
2245 2009-09-04  Dave Hyatt  <hyatt@apple.com>
2246
2247         Reviewed by Adam Roben.
2248
2249         Make m_userStyleSheetLoader in Frame an OwnPtr.
2250
2251         * page/Frame.cpp:
2252         (WebCore::Frame::Frame):
2253         (WebCore::Frame::~Frame):
2254         * page/Frame.h:
2255         * page/mac/FrameMac.mm:
2256         (WebCore::Frame::setUserStyleSheetLocation):
2257         (WebCore::Frame::setUserStyleSheet):
2258
2259 2009-09-04  Timothy Hatcher  <timothy@apple.com>
2260
2261         Show color swatches in the Web Inspector before the color text so clicking them will not
2262         shift the swatch. Also makes multiple swatches in the single property toggle the color format.
2263
2264         https://bugs.webkit.org/show_bug.cgi?id=28978
2265
2266         Reviewed by Darin Adler.
2267
2268         * inspector/front-end/StylesSidebarPane.js:
2269         (WebInspector.StylePropertyTreeElement.prototype.updateTitle): Some refactoring to consolidate
2270         the processing we do on the property value. This eliminated the old nickname code, since the new
2271         WebInspector.Color class handles this. We could also simplify the color regex since more
2272         is handled by the Color class. Also no longer uses innerHTML for the linkify code.
2273         (WebInspector.StylePropertyTreeElement.prototype.updateTitle.processValue): Helper function to
2274         process a value given a regex and processor functions. 
2275         (WebInspector.StylePropertyTreeElement.prototype.updateTitle.linkifyURL): Make an anchor for the
2276         URL with "url()" syntax surrounding it.
2277         (WebInspector.StylePropertyTreeElement.prototype.updateTitle.processColor): Makes a color, if
2278         there was an exception just return a text node.
2279         (WebInspector.StylePropertyTreeElement.prototype.updateTitle.processColor.changeColorDisplay.changeTo):
2280         Moved from later in the file.
2281         (WebInspector.StylePropertyTreeElement.prototype.updateTitle.processColor.changeColorDisplay): Ditto.
2282         * inspector/front-end/inspector.css:
2283
2284 2009-09-04  Mark Mentovai  <mark@chromium.org>
2285
2286         Reviewed by Dave Hyatt.
2287
2288         https://bugs.webkit.org/show_bug.cgi?id=28614
2289
2290         Account for scrollbar state changes that occur during layout.
2291
2292         * platform/ScrollView.cpp:
2293         (WebCore::ScrollView::updateScrollbars):
2294
2295         Perform a layout prior to checking whether the scrollbar modes are
2296         off, on, or automatic.  The modes may change during layout.
2297
2298         * WebCore.base.exp:
2299         * WebCore.order:
2300         * page/Frame.cpp:
2301         (WebCore::Frame::createView):
2302         * page/FrameView.cpp:
2303         (WebCore::FrameView::FrameView):
2304         (WebCore::FrameView::resetScrollbars):
2305         (WebCore::FrameView::layout):
2306         * page/FrameView.h:
2307         * platform/ScrollView.h:
2308
2309         Eliminate duplicated (and incorrect) scrollbar mode tracking between
2310         FrameView and ScrollView.
2311
2312 2009-09-04  Yael Aharon  <yael.aharon@nokia.com>
2313
2314         Reviewed by Darin Adler.
2315
2316         hostname and host are mixed up when manipulating anchor elements.
2317         https://bugs.webkit.org/show_bug.cgi?id=28954
2318
2319         Swapped the implementation of host and hostname, and made sure not to return
2320         the port number if it is default for the given protocol. 
2321         FireFox also avoids returning the protocol number if it is default.
2322
2323         Test: fast/dom/Element/hostname-host.html
2324
2325         * html/HTMLAnchorElement.cpp:
2326         (WebCore::HTMLAnchorElement::host):
2327         (WebCore::HTMLAnchorElement::hostname):
2328         * page/SecurityOrigin.cpp:
2329         (WebCore::SecurityOrigin::isDefaultPortForProtocol):
2330         * page/SecurityOrigin.h:
2331
2332 2009-09-04  Anders Carlsson  <andersca@apple.com>
2333
2334         Reviewed by Darin Adler and Steve Falkenburg.
2335
2336         Fix <rdar://problem/7192902>.
2337
2338         Add the necessary plumbing for having QTMovieWin use WebCore timers.
2339         
2340         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
2341         (WebCore::TaskTimer::initialize):
2342         Create the timer and call QTMovieWin::setTaskTimerFuncs.
2343         
2344         (WebCore::TaskTimer::setTaskTimerDelay):
2345         Start the timer.
2346         
2347         (WebCore::TaskTimer::stopTaskTimer):
2348         Stop the timer.
2349         
2350         (WebCore::TaskTimer::fired):
2351         Call QTMovieWin::taskTimerFired().
2352         
2353         (WebCore::MediaPlayerPrivate::load):
2354         Initialize the Task timer.
2355         
2356         * platform/graphics/win/QTMovieWin.cpp:
2357         (updateTaskTimer):
2358         Call the global stopTaskTimer function and setTaskTimerDelay.
2359         
2360         (QTMovieWin::taskTimerFired):
2361         Make this a member function.
2362         
2363         (QTMovieWin::setTaskTimerFuncs):
2364         Set the global function pointers.
2365         
2366         (QTMovieWin::initializeQuickTime):
2367         (DllMain):
2368         No need to use the QT shared timer.
2369         * platform/graphics/win/QTMovieWin.h:
2370
2371 2009-09-04  Tony Chang  <tony@chromium.org>
2372
2373         Reviewed by David Levin.
2374
2375         Fix Chromium Win compile.  Missing return statement in
2376         WebCore::RenderThemeChromiumSkia::paintSliderThumb.
2377         https://bugs.webkit.org/show_bug.cgi?id=28974
2378
2379         No new tests, build fix.
2380
2381         * rendering/RenderThemeChromiumSkia.cpp:
2382         (WebCore::RenderThemeChromiumSkia::paintSliderThumb):
2383
2384 2009-09-04  Dimitri Glazkov  <dglazkov@chromium.org>
2385
2386         Unreviewed, build fix.
2387
2388         [Chromium] Rolling out http://trac.webkit.org/changeset/48035, because it broke
2389         the build.
2390         https://bugs.webkit.org/show_bug.cgi?id=28696
2391
2392 2009-09-04  Anders Carlsson  <andersca@apple.com>
2393
2394         Fix vcproj file.
2395
2396         * WebCore.vcproj/WebCore.vcproj:
2397
2398 2009-09-03  Dave Hyatt  <hyatt@apple.com>
2399
2400         Reviewed by Adam Roben.
2401
2402         https://bugs.webkit.org/show_bug.cgi?id=28890, make simple user script injection work.
2403         
2404         This patch adds new API for adding and removing user scripts from page groups.  User scripts
2405         are bundled together in isolated worlds (you can have multiple scripts together in the same
2406         world).
2407
2408         Added userscripts/ directory for holding new tests (along with a simple test of script injection).
2409
2410         * WebCore.base.exp:
2411         * WebCore.vcproj/WebCore.vcproj:
2412         * WebCore.xcodeproj/project.pbxproj:
2413         * bindings/js/ScriptController.cpp:
2414         (WebCore::ScriptController::evaluateInIsolatedWorld):
2415         * bindings/js/ScriptController.h:
2416         * bindings/v8/ScriptController.cpp:
2417         (WebCore::ScriptController::evaluateInIsolatedWorld):
2418         * bindings/v8/ScriptController.h:
2419         * loader/FrameLoader.cpp:
2420         (WebCore::FrameLoader::finishedParsing):
2421         (WebCore::FrameLoader::dispatchDocumentElementAvailable):
2422         * page/Frame.cpp:
2423         (WebCore::Frame::injectUserScripts):
2424         (WebCore::Frame::injectUserScriptsForWorld):
2425         * page/Frame.h:
2426         * page/PageGroup.cpp:
2427         (WebCore::PageGroup::~PageGroup):
2428         (WebCore::PageGroup::addUserScript):
2429         (WebCore::PageGroup::removeUserContentForWorld):
2430         (WebCore::PageGroup::removeAllUserContent):
2431         * page/PageGroup.h:
2432         (WebCore::PageGroup::userScripts):
2433         * page/UserScript.h: Added.
2434         (WebCore::UserScript::UserScript):
2435         (WebCore::UserScript::source):
2436         (WebCore::UserScript::url):
2437         (WebCore::UserScript::patterns):
2438         (WebCore::UserScript::worldID):
2439         (WebCore::UserScript::injectionTime):
2440         * page/UserScriptTypes.h: Added.
2441         (WebCore::):
2442
2443 2009-09-04  Alexey Proskuryakov  <ap@apple.com>
2444
2445         Reviewed by Eric Seidel.
2446
2447         https://bugs.webkit.org/show_bug.cgi?id=26402
2448         Crashes when using a detached DocumentType node
2449
2450         Test: fast/dom/DOMImplementation/detached-doctype.html
2451
2452         DocumentType nodes are the only one that can have null document(), and they can never have
2453         children, so they are a degenerate case for NodeLists.
2454
2455         * dom/Node.cpp:
2456         (WebCore::Node::childNodes): Don't try register node list with document if there's no
2457         document. Since there are no changes possible for a DocumentType's node list, this is not
2458         necessary.
2459         (WebCore::Node::registerDynamicNodeList): Ditto.
2460         (WebCore::Node::unregisterDynamicNodeList): Ditto. I couldn't find a scenario where this
2461         was invoked for a DocumentType node, but I also couldn't prove that it can't be (the
2462         de-registration code path that I saw taken was via Node destructor, and that already has
2463         a null check for document).
2464
2465         * bindings/js/JSNodeCustom.cpp:
2466         (WebCore::JSNode::addEventListener): Bail out if there is no document (just as we already do
2467         if there is no window).
2468         (WebCore::JSNode::removeEventListener): Ditto.
2469
2470 2009-09-04  Xan Lopez  <xlopez@igalia.com>
2471
2472         Reviewed by Gustavo Noronha.
2473
2474         [GTK] loadFinished never emitted
2475         https://bugs.webkit.org/show_bug.cgi?id=28935
2476
2477         Do not report errors right away from
2478         ResourceHandle::start. Instead return true and schedule an error
2479         to be reported in the handle later. Otherwise WebCore gets
2480         confused and thinks the resource never finished loading, making it
2481         not emit the finished status.
2482
2483         * platform/network/soup/ResourceHandleSoup.cpp:
2484         (WebCore::startHttp):
2485         (WebCore::):
2486
2487 2009-09-04  Ben Murdoch  <benm@google.com>
2488
2489         Reviewed by Eric Seidel.
2490
2491         [V8] DOM Storage bindings: Event Handler should create StorageEvents
2492         https://bugs.webkit.org/show_bug.cgi?id=28942
2493         
2494         Tests:
2495         Causes the following tests that were failing with V8 to pass:
2496         * storage/domstorage/localstorage/onstorage-attribute-setwindow.html
2497         * storage/domstorage/localstorage/complex-keys.html
2498         * storage/domstorage/localstorage/onstorage-attribute-markup.html
2499         * storage/domstorage/localstorage/simple-events.html
2500         * storage/domstorage/localstorage/onstorage-attribute-set-attribute.html
2501         * storage/domstorage/localstorage/index-get-and-set.html
2502         * storage/domstorage/sessionstorage/onstorage-attribute-setwindow.html
2503         * storage/domstorage/sessionstorage/onstorage-attribute-markup.html
2504         * storage/domstorage/sessionstorage/simple-events.html
2505         * storage/domstorage/sessionstorage/onstorage-attribute-set-attribute.html
2506         * storage/domstorage/sessionstorage/index-get-and-set.html
2507
2508         Code changes:
2509         * bindings/v8/V8DOMWrapper.cpp:
2510         (WebCore::V8DOMWrapper::convertEventToV8Object):  Create StorageEvents.
2511         * bindings/v8/custom/V8StorageCustom.cpp:
2512         (WebCore::storageGetter): Check if we are retrieving the length property and return the number of items in the object rather than a property named length when invoking the getItem() member of local/sessionStorage.
2513
2514 2009-09-03  Pavel Feldman  <pfeldman@chromium.org>
2515
2516         Reviewed by Timothy Hatcher.
2517
2518         https://bugs.webkit.org/show_bug.cgi?id=28911
2519
2520         * WebCore.gypi:
2521         * WebCore.vcproj/WebCore.vcproj:
2522         * inspector/InspectorBackend.cpp:
2523         (WebCore::InspectorBackend::dispatchOnInjectedScript):
2524         * inspector/InspectorBackend.h:
2525         * inspector/InspectorBackend.idl:
2526         * inspector/front-end/ConsoleView.js:
2527         (WebInspector.ConsoleView.prototype.doEvalInWindow):
2528         (WebInspector.ConsoleView.prototype._formatarray):
2529         (WebInspector.ConsoleView.prototype._formatnode):
2530         * inspector/front-end/DOMAgent.js:
2531         * inspector/front-end/ElementsPanel.js:
2532         (WebInspector.ElementsPanel.this.treeOutline.focusedNodeChanged):
2533         (WebInspector.ElementsPanel.prototype.searchCanceled):
2534         (WebInspector.ElementsPanel.prototype.performSearch):
2535         * inspector/front-end/InjectedScript.js:
2536         (InjectedScript.dispatch):
2537         * inspector/front-end/InjectedScriptAccess.js: Added.
2538         (InjectedScriptAccess._installHandler.InjectedScriptAccess.methodName):
2539         (InjectedScriptAccess._installHandler):
2540         * inspector/front-end/MetricsSidebarPane.js:
2541         (WebInspector.MetricsSidebarPane.prototype.update):
2542         (WebInspector.MetricsSidebarPane.prototype.editingCommitted):
2543         * inspector/front-end/ObjectPropertiesSection.js:
2544         (WebInspector.ObjectPropertiesSection.prototype.update):
2545         (WebInspector.ObjectPropertyTreeElement.prototype.onpopulate):
2546         (WebInspector.ObjectPropertyTreeElement.prototype.applyExpression):
2547         * inspector/front-end/PropertiesSidebarPane.js:
2548         (WebInspector.PropertiesSidebarPane.prototype.update):
2549         * inspector/front-end/ResourcesPanel.js:
2550         (WebInspector.ResourceSidebarTreeElement.prototype.ondblclick):
2551         * inspector/front-end/ScriptsPanel.js:
2552         (WebInspector.ScriptsPanel.prototype.doEvalInCallFrame):
2553         * inspector/front-end/StylesSidebarPane.js:
2554         (WebInspector.StylesSidebarPane.prototype.update):
2555         (WebInspector.StylePropertiesSection.prototype.editingSelectorCommitted):
2556         (WebInspector.BlankStylePropertiesSection.prototype.editingCommitted):
2557         (WebInspector.StylePropertyTreeElement.prototype):
2558         * inspector/front-end/inspector.html:
2559
2560 2009-09-04  Tony Chang  <tony@chromium.org>
2561
2562         Reviewed by Eric Seidel.
2563
2564         Implement <input type="range"> for Chromium Linux by painting
2565         the slider and the thumb using skia.
2566         https://bugs.webkit.org/show_bug.cgi?id=28928
2567
2568         Covered by existing tests (we're currently hitting an assert for them).
2569
2570         * rendering/RenderThemeChromiumLinux.cpp:
2571         (WebCore::RenderThemeChromiumLinux::adjustSliderThumbSize):
2572         * rendering/RenderThemeChromiumLinux.h:
2573         * rendering/RenderThemeChromiumSkia.cpp:
2574         (WebCore::drawVertLine):
2575         (WebCore::drawHorizLine):
2576         (WebCore::drawBox):
2577         (WebCore::RenderThemeChromiumSkia::paintSliderTrack):
2578         (WebCore::RenderThemeChromiumSkia::paintSliderThumb):
2579         * rendering/RenderThemeChromiumSkia.h:
2580
2581 2009-09-04  Kent Tamura  <tkent@chromium.org>
2582
2583         Reviewed by Eric Seidel.
2584
2585         - Implement <input type=color> as a text field.
2586         - ValidityState::typeMismatch supports for type=color.
2587         https://bugs.webkit.org/show_bug.cgi?id=28966
2588
2589         Tests: fast/forms/ValidityState-patternMismatch-unsupported.html
2590                fast/forms/ValidityState-typeMismatch-color.html
2591
2592         * html/HTMLInputElement.cpp:
2593         (WebCore::HTMLInputElement::valueMissing):
2594         (WebCore::HTMLInputElement::patternMismatch):
2595         (WebCore::HTMLInputElement::setInputType):
2596         (WebCore::HTMLInputElement::formControlType):
2597         (WebCore::HTMLInputElement::saveFormControlState):
2598         (WebCore::HTMLInputElement::restoreFormControlState):
2599         (WebCore::HTMLInputElement::accessKeyAction):
2600         (WebCore::HTMLInputElement::rendererIsNeeded):
2601         (WebCore::HTMLInputElement::createRenderer):
2602         (WebCore::HTMLInputElement::appendFormData):
2603         (WebCore::HTMLInputElement::valueWithDefault):
2604         (WebCore::HTMLInputElement::storesValueSeparateFromAttribute):
2605         (WebCore::HTMLInputElement::defaultEventHandler):
2606         (WebCore::HTMLInputElement::isRequiredFormControl):
2607         (WebCore::HTMLInputElement::dataList):
2608         * html/HTMLInputElement.h:
2609         (WebCore::HTMLInputElement::):
2610         (WebCore::HTMLInputElement::isTextField):
2611         * html/ValidityState.cpp:
2612         (WebCore::ValidityState::typeMismatch):
2613         (WebCore::ValidityState::isValidColorString):
2614         * html/ValidityState.h:
2615
2616 2009-09-04  Mads Ager  <ager@chromium.org>
2617
2618         Reviewed by David Levin.
2619
2620         [V8] Crash when updating document cache
2621         https://bugs.webkit.org/show_bug.cgi?id=28965
2622
2623         Initialization of a V8 JavaScript context can fail.  When that
2624         happens, do not attempt to update the document wrapper cache.
2625
2626         This code path is exercised by http/tests/security/javascriptURL/javascriptURL-in-new-iframe.html.
2627
2628         * bindings/v8/V8Proxy.cpp:
2629         (WebCore::V8Proxy::updateDocument):
2630
2631 2009-09-04  Yaar Schnitman  <yaar@chromium.org>
2632
2633         Reviewed by Eric Seidel.
2634
2635         Two bugs:
2636
2637         https://bugs.webkit.org/show_bug.cgi?id=25489
2638         CSS property background-position is now serialized in shorthand string as
2639         background-position-x background-position-y, as the specification requires
2640         (See http://www.w3.org/TR/2008/WD-css3-background-20080910/#the-background-position).
2641         
2642
2643         https://bugs.webkit.org/show_bug.cgi?id=26541
2644         CSS background-color is now be serialized before other background properties, 
2645         as CSS specification requires (See http://dev.w3.org/csswg/cssom/#css-value).  
2646
2647         An existing layout test that accepted wrong order and skipped position test 
2648         had to be modified.
2649
2650         * css/CSSMutableStyleDeclaration.cpp:
2651         (WebCore::CSSMutableStyleDeclaration::getPropertyValue):
2652
2653 2009-09-03  Kent Tamura  <tkent@chromium.org>
2654
2655         Reviewed by David Levin.
2656
2657         Add support for HTMLTextAreaElement.textLength
2658         https://bugs.webkit.org/show_bug.cgi?id=28929
2659
2660         Test: fast/forms/textarea-textlength.html
2661
2662         * html/HTMLTextAreaElement.h:
2663         (WebCore::HTMLTextAreaElement::textLength):
2664         * html/HTMLTextAreaElement.idl:
2665
2666 2009-09-03  Alexey Proskuryakov  <ap@apple.com>
2667
2668         Reviewed by Darin Adler.
2669
2670         <rdar://problem/7180197>, https://bugs.webkit.org/show_bug.cgi?id=28822
2671         REGRESSION(r31231): Creating document with current document's DOCTYPE causes crashes
2672
2673         Test: fast/dom/DOMImplementation/createDocument-with-used-doctype.html
2674
2675         * dom/DOMImplementation.cpp: (WebCore::DOMImplementation::createDocument): Even though we
2676         cannot raise an exception immediately out of fear of breaking Acid3, we shouldn't use a
2677         DocumentType node in two documents.
2678
2679 2009-09-03  Brady Eidson  <beidson@apple.com>
2680
2681         Reviewed by Sam Weinig.
2682
2683         Page Cache should support pages with Frames.
2684         https://bugs.webkit.org/show_bug.cgi?id=13631
2685
2686         Tests: fast/events/pageshow-pagehide-on-back-cached-with-frames.html
2687                fast/loader/frames-with-unload-handlers-in-page-cache.html
2688
2689         * loader/FrameLoader.cpp:
2690         (WebCore::FrameLoader::canCachePageContainingThisFrame):
2691         (WebCore::FrameLoader::logCanCacheFrameDecision):
2692
2693 2009-09-03  Steve VanDeBogart  <vandebo@chromium.org>
2694
2695         Reviewed by Eric Seidel.
2696
2697         Handle middle click in Chromium like QT
2698         https://bugs.webkit.org/show_bug.cgi?id=28696
2699
2700         Tested by middle-click-onpaste.html.
2701
2702         * platform/Pasteboard.h:
2703         * platform/chromium/ChromiumBridge.h:
2704         * platform/chromium/ClipboardChromium.cpp:
2705         (WebCore::ClipboardChromium::getData):
2706         * platform/chromium/PasteboardChromium.cpp:
2707         (WebCore::Pasteboard::Pasteboard):
2708         (WebCore::Pasteboard::isSelectionMode):
2709         (WebCore::Pasteboard::setSelectionMode):
2710         (WebCore::Pasteboard::canSmartReplace):
2711         (WebCore::Pasteboard::plainText):
2712         (WebCore::Pasteboard::documentFragment):
2713         * platform/chromium/PasteboardPrivate.h:
2714         (WebCore::PasteboardPrivate::):
2715
2716 2009-09-03  Brady Eidson  <beidson@apple.com>
2717
2718         Reviewed by Sam Weinig.
2719
2720         More partial work towards "Page Cache should support pages with Frames"
2721         https://bugs.webkit.org/show_bug.cgi?id=13631
2722
2723         Fix a bug where subframes weren't asked if they were cacheable.
2724
2725         No new tests, especially since page caching for frames isn't turned on yet.
2726         A layout test will come in my next patch, which enables frames in the page cache.
2727
2728         * loader/FrameLoader.cpp:
2729         (WebCore::FrameLoader::canCachePageContainingThisFrame):
2730
2731 2009-09-03  Adam Barth  <abarth@webkit.org>
2732
2733         Reviewed by eric@webkit.org.
2734
2735         https://bugs.webkit.org/show_bug.cgi?id=24696
2736
2737         Added mixed content methods to FrameLoaderClient.
2738
2739         * loader/EmptyClients.h:
2740         (WebCore::EmptyFrameLoaderClient::didDisplayInsecureContent):
2741         (WebCore::EmptyFrameLoaderClient::didRunInsecureContent):
2742         * loader/FrameLoaderClient.h:
2743
2744 2009-09-03  Kevin Watters  <kevinwatters@gmail.com>
2745
2746         Reviewed by Kevin Ollivier.
2747
2748         [wx] Frames support
2749         https://bugs.webkit.org/show_bug.cgi?id=19041
2750
2751         * page/wx/EventHandlerWx.cpp:
2752         (WebCore::EventHandler::passMousePressEventToSubframe):
2753         (WebCore::EventHandler::passMouseMoveEventToSubframe):
2754         (WebCore::EventHandler::passMouseReleaseEventToSubframe):
2755         (WebCore::EventHandler::passWheelEventToWidget):
2756         (WebCore::EventHandler::tabsToAllControls):
2757         (WebCore::EventHandler::passSubframeEventToSubframe):
2758         (WebCore::EventHandler::passMouseDownEventToWidget):
2759         * platform/wx/RenderThemeWx.cpp:
2760         (WebCore::nativeWindowForRenderObject):
2761         (WebCore::RenderThemeWx::paintButton):
2762         (WebCore::RenderThemeWx::paintTextField):
2763         (WebCore::RenderThemeWx::paintMenuList):
2764         (WebCore::RenderThemeWx::paintMenuListButton):
2765         * platform/wx/ScrollbarThemeWx.cpp: Added.
2766         (WebCore::ScrollbarTheme::nativeTheme):
2767         (WebCore::ScrollbarThemeWx::~ScrollbarThemeWx):
2768         (WebCore::ScrollbarThemeWx::scrollbarThickness):
2769         (WebCore::ScrollbarThemeWx::hasThumb):
2770         (WebCore::ScrollbarThemeWx::buttonSize):
2771         (WebCore::ScrollbarThemeWx::backButtonRect):
2772         (WebCore::ScrollbarThemeWx::forwardButtonRect):
2773         (WebCore::ScrollbarThemeWx::trackRect):
2774         (WebCore::ScrollbarThemeWx::paintScrollCorner):
2775         (WebCore::ScrollbarThemeWx::paint):
2776         * platform/wx/ScrollbarThemeWx.h: Added.
2777         (WebCore::ScrollbarThemeWx::hasButtons):
2778         * platform/wx/TemporaryLinkStubs.cpp:
2779         * platform/wx/wxcode/gtk/scrollbar_render.cpp: Added.
2780         (wxStyleForPart):
2781         (GetButtonWidget):
2782         (wxGetGdkWindowForDC):
2783         (wxRenderer_DrawScrollbar):
2784         * platform/wx/wxcode/mac/carbon/scrollbar_render.cpp: Added.
2785         (wxScrollbarPartToHIPressedState):
2786         (wxRenderer_DrawScrollbar):
2787         * platform/wx/wxcode/scrollbar_render.h: Added.
2788         (calcThumbStartAndLength):
2789         * platform/wx/wxcode/win/non-kerned-drawing.cpp:
2790         (WebCore::drawTextWithSpacing):
2791         * platform/wx/wxcode/win/scrollbar_render.cpp: Added.
2792         (GraphicsHDC::GraphicsHDC):
2793         (GraphicsHDC::~GraphicsHDC):
2794         (GraphicsHDC::operator HDC):
2795         (getTSStateForPart):
2796         (wxRenderer_DrawScrollbar):
2797         * webcore-wx.bkl:
2798
2799 2009-09-03  Yael Aharon  <yael.aharon@nokia.com>
2800
2801         Reviewed by Simon Hausmann.
2802
2803         [Qt] Page content is not displayed in case of HTTP status error
2804         https://bugs.webkit.org/show_bug.cgi?id=28949
2805
2806         If the server sent content, show it to the user instead of an error,
2807         even if the HTTP status code is not success.
2808
2809         * platform/network/qt/QNetworkReplyHandler.cpp:
2810         (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
2811         (WebCore::QNetworkReplyHandler::finish):
2812         (WebCore::QNetworkReplyHandler::forwardData):
2813         (WebCore::QNetworkReplyHandler::resetState):
2814         * platform/network/qt/QNetworkReplyHandler.h:
2815
2816 2009-09-03  Drew Wilson  <atwilson@google.com>
2817
2818         Reviewed by Dimitri Glazkov.
2819
2820         Need to update v8 bindings to support passing multiple ports to postMessage()
2821         https://bugs.webkit.org/show_bug.cgi?id=28839
2822
2823         Added support for passing MessagePortArray to v8 bindings.
2824
2825         New tests that now pass with V8:
2826                fast/events/message-port-multi.html
2827                fast/workers/worker-context-multi-port.html
2828                fast/workers/worker-multi-port.html
2829
2830         * WebCore.gypi:
2831         Added V8MessageEventCustom.cpp and V8MessagePortCustom.h
2832         * bindings/v8/custom/V8CustomBinding.h:
2833         Added custom postMessage() handlers for various classes.
2834         * bindings/v8/custom/V8DOMWindowCustom.cpp:
2835         (WebCore::DOMWindowPostMessage):
2836         Added custom handler that supports MessagePortArray.
2837         * bindings/v8/custom/V8DedicatedWorkerContextCustom.cpp:
2838         (WebCore::DedicatedWorkerContextPostMessage):
2839         Added custom handler that supports MessagePortArray.
2840         * bindings/v8/custom/V8MessageEventCustom.cpp: Added.
2841         (WebCore::MessageEventPorts):
2842         Added getter for ports attribute.
2843         (WebCore::MessageEventInitMessageEvent):
2844         Added custom handler that supports MessagePortArray.
2845         * bindings/v8/custom/V8MessagePortCustom.cpp:
2846         (WebCore::MessagePortPostMessage):
2847         Added custom handler that supports MessagePortArray.
2848         (WebCore::getMessagePortArray):
2849         Added helper function that supports converting from a sequence-like object to a MessagePortArray.
2850         * bindings/v8/custom/V8MessagePortCustom.h: Added.
2851         Added declaration for getMessagePortArray().
2852         * bindings/v8/custom/V8WorkerCustom.cpp:
2853         (WebCore::WorkerPostMessage):
2854         Added custom handler that supports MessagePortArray.
2855
2856 2009-09-03  Drew Wilson  <atwilson@google.com>
2857
2858         Reviewed by Sam Weinig.
2859
2860         Need to update JS bindings and IDL files to support multiple message ports in postMessage()
2861         https://bugs.webkit.org/show_bug.cgi?id=28460
2862
2863         Added new toJSSequence() API which validates that a JSValue meets the WebIDL criteria for a sequence.
2864
2865         Tests: fast/events/message-port-multi.html
2866                fast/workers/worker-context-multi-port.html
2867                fast/workers/worker-multi-port.html
2868
2869         * GNUmakefile.am:
2870         * WebCore.gypi:
2871         * WebCore.pro:
2872         * WebCore.vcproj/WebCore.vcproj:
2873         * WebCore.xcodeproj/project.pbxproj:
2874         * WebCoreSources.bkl:
2875         Added JSMessagePortCustom.h and JSMessageEventCustom.cpp.
2876         * bindings/js/JSDOMBinding.cpp:
2877         (WebCore::toJSSequence):
2878         Added toJSSequence() API to do validation on sequence-like objects per WebIDL.
2879         * bindings/js/JSDOMBinding.h:
2880         * bindings/js/JSDOMWindowCustom.cpp:
2881         (WebCore::JSDOMWindow::postMessage):
2882         Added custom handler for postMessage() that handles being passed MessagePortArrays.
2883         * bindings/js/JSDedicatedWorkerContextCustom.cpp:
2884         (WebCore::JSDedicatedWorkerContext::postMessage):
2885         Added custom handler for postMessage() that handles being passed MessagePortArrays.
2886         * bindings/js/JSMessageEventCustom.cpp: Added.
2887         (WebCore::JSMessageEvent::ports):
2888         Added custom ports() getter that converts from MessagePortArray to JSArray.
2889         (WebCore::JSMessageEvent::initMessageEvent):
2890         Added support for passing a MessagePortArray.
2891         * bindings/js/JSMessagePortCustom.cpp:
2892         (WebCore::JSMessagePort::postMessage):
2893         Added custom handler for postMessage() that handles being passed MessagePortArray.
2894         (WebCore::fillMessagePortArray):
2895         New helper routine that validates/converts from a JS sequence o a WebCore::MessagePortArray.
2896         * bindings/js/JSMessagePortCustom.h: Added.
2897         * bindings/js/JSWorkerCustom.cpp:
2898         (WebCore::JSWorker::postMessage):
2899         Added custom handler for postMessage() that handles being passed MessagePortArray.
2900         * dom/MessageEvent.cpp:
2901         * dom/MessageEvent.h:
2902         (WebCore::MessageEvent::ports):
2903         Changed ports() to return a MessagePortArray* since this value can be null.
2904         * dom/MessageEvent.idl:
2905         Updated IDL to match HTML5 spec (now accepts MessagePortArrays instead of a solitary MessagePort).
2906         * dom/MessagePort.cpp:
2907         * dom/MessagePort.h:
2908         * dom/MessagePort.idl:
2909         Updated IDL to match HTML5 spec (postMessage() now accepts MessagePortArrays instead of a solitary MessagePort).
2910         * page/DOMWindow.h:
2911         * page/DOMWindow.idl:
2912         Updated IDL to match HTML5 spec (postMessage() now accepts MessagePortArrays instead of a solitary MessagePort).
2913         * workers/DedicatedWorkerContext.cpp:
2914         * workers/DedicatedWorkerContext.h:
2915         * workers/DedicatedWorkerContext.idl:
2916         Updated IDL to match HTML5 spec (postMessage() now accepts MessagePortArrays instead of a solitary MessagePort).
2917         * workers/Worker.cpp:
2918         * workers/Worker.h:
2919         * workers/Worker.idl:
2920         Updated IDL to match HTML5 spec (postMessage() now accepts MessagePortArrays instead of a solitary MessagePort).
2921
2922 2009-09-03  Pavel Feldman  <pfeldman@chromium.org>
2923
2924         Reviewed by Timothy Hatcher.
2925
2926         WebInspector: Do not query non-function call frames for function name.
2927
2928         https://bugs.webkit.org/show_bug.cgi?id=28799
2929
2930         * inspector/front-end/InjectedScript.js:
2931         (InjectedScript.CallFrameProxy):
2932         (InjectedScript.CallFrameProxy.prototype._wrapScopeChain):
2933
2934 2009-09-03  Pavel Feldman  <pfeldman@chromium.org>
2935
2936         Reviewed by Timothy Hatcher.
2937
2938         Crash after typing "clear" and pressing return in inspector console.
2939
2940         https://bugs.webkit.org/show_bug.cgi?id=28684
2941
2942         * inspector/front-end/InjectedScript.js:
2943         (InjectedScript._clearConsoleMessages):
2944         (InjectedScript._inspectObject):
2945         (InjectedScript._ensureCommandLineAPIInstalled):
2946
2947 2009-09-03  Vitaly Repeshko  <vitalyr@chromium.org>
2948
2949         Reviewed by Adam Barth.
2950
2951         [V8] Squeezed out some performance from string conversion.
2952         https://bugs.webkit.org/show_bug.cgi?id=28945
2953
2954         * bindings/v8/V8Binding.cpp:
2955         (WebCore::WebCoreStringResource::WebCoreStringResource):
2956         (WebCore::WebCoreStringResource::~WebCoreStringResource):
2957         (WebCore::WebCoreStringResource::data):
2958         (WebCore::WebCoreStringResource::length):
2959         (WebCore::WebCoreStringResource::atomicString):
2960         (WebCore::WebCoreStringResource::string):
2961         Avoid calling virtual length method. Be more explicit with
2962         external memory computation. Avoid function calls in data and
2963         length.
2964         (WebCore::):
2965         (WebCore::v8StringToWebCoreString):
2966         (WebCore::v8StringToAtomicWebCoreString):
2967         (WebCore::v8NonStringValueToWebCoreString):
2968         (WebCore::v8NonStringValueToAtomicWebCoreString):
2969         Avoid extra calls of WebCoreStringResource::toString. When
2970         AtomicString is computed pass it immediately when constructing
2971         WebCoreStringResource. Use inline buffer for small strings.
2972         * bindings/v8/V8Binding.h:
2973         (WebCore::v8ValueToWebCoreString):
2974         (WebCore::v8ValueToAtomicWebCoreString):
2975         (WebCore::toString):
2976         Inline dispatch of string vs. non-string values.
2977
2978 2009-09-03  Vitaly Repeshko  <vitalyr@chromium.org>
2979
2980         Reviewed by Adam Barth.
2981
2982         [V8] Inlined common case of V8IsolatedWorld::getEntered to speed
2983         up V8Proxy lookup.
2984         https://bugs.webkit.org/show_bug.cgi?id=28946
2985
2986         * bindings/v8/V8IsolatedWorld.cpp:
2987         (WebCore::V8IsolatedWorld::getEnteredImpl):
2988         * bindings/v8/V8IsolatedWorld.h:
2989         (WebCore::V8IsolatedWorld::getEntered):
2990
2991 2009-09-03  Kent Tamura  <tkent@chromium.org>
2992
2993         Reviewed by Eric Seidel.
2994
2995         Fix a regression bug that maxLength doesn't work for IME input.
2996         https://bugs.webkit.org/show_bug.cgi?id=25253
2997
2998         Tests: fast/forms/input-maxlength-ime-completed.html
2999                fast/forms/input-maxlength-ime-preedit.html
3000
3001         * dom/InputElement.cpp:
3002         (WebCore::InputElement::handleBeforeTextInsertedEvent):
3003         * dom/InputElement.h:
3004         * html/HTMLInputElement.cpp:
3005         (WebCore::HTMLInputElement::defaultEventHandler):
3006         * wml/WMLInputElement.cpp:
3007         (WebCore::WMLInputElement::defaultEventHandler):
3008
3009 2009-09-03  Cameron McCormack  <cam@mcc.id.au>
3010
3011         Reviewed by Eric Seidel.
3012
3013         Make SVGStyleElement title/media/type setters do something
3014         https://bugs.webkit.org/show_bug.cgi?id=28828
3015
3016         Test: svg/dom/style-reflect.html
3017
3018         * svg/SVGStyleElement.cpp:
3019         (WebCore::SVGStyleElement::setXmlspace): Actually change the attribute.
3020         (WebCore::SVGStyleElement::setType): Ditto.
3021         (WebCore::SVGStyleElement::setMedia): Ditto.
3022         (WebCore::SVGStyleElement::setTitle): Ditto.
3023
3024 2009-09-03  Ben Murdoch  <benm@google.com>
3025
3026         https://bugs.webkit.org/show_bug.cgi?id=28872
3027         
3028         Fixes a bug where handleEvent() in the V8 Custom SQL Statement Error binding would not return the correct result to WebCore after invoking the callback.
3029
3030         Test: storage/statement-error-callback.html
3031
3032         * bindings/v8/custom/V8CustomSQLStatementErrorCallback.cpp:
3033         (WebCore::V8CustomSQLStatementErrorCallback::handleEvent): Return true from handleEvent() if the callback raised an exception or the callback itself returned true.
3034
3035 2009-09-03  Maxime Simon  <simon.maxime@gmail.com>
3036
3037         Reviewed by Eric Seidel.
3038
3039         [Haiku] Adding three font-specific files to WebCore:
3040         FontCustomPlatformData.cpp, FontCustomPlatformData.h,
3041         and FontPlatformData.h
3042         https://bugs.webkit.org/show_bug.cgi?id=28131
3043
3044         * platform/graphics/haiku/FontCustomPlatformData.cpp: Added.
3045         (WebCore::FontCustomPlatformData::~FontCustomPlatformData):
3046         (WebCore::FontCustomPlatformData::fontPlatformData):
3047         (WebCore::createFontCustomPlatformData):
3048         * platform/graphics/haiku/FontCustomPlatformData.h: Added.
3049         (WebCore::FontCustomPlatformData::FontCustomPlatformData):
3050         * platform/graphics/haiku/FontPlatformData.h: Added.
3051         (WebCore::FontPlatformData::FontPlatformData):
3052         (WebCore::FontPlatformData::font):
3053         (WebCore::FontPlatformData::size):
3054         (WebCore::FontPlatformData::bold):
3055         (WebCore::FontPlatformData::oblique):
3056         (WebCore::FontPlatformData::hashTableDeletedFontValue):
3057
3058 2009-09-02  Brady Eidson  <beidson@apple.com>
3059
3060         Reviewed by Darin Adler.
3061
3062         More partial work towards "Page Cache should support pages with Frames"
3063         https://bugs.webkit.org/show_bug.cgi?id=13631
3064
3065         No new tests. (No change in behavior, current tests pass).
3066
3067         * loader/DocumentLoader.cpp:
3068         (WebCore::DocumentLoader::stopLoading): Adopt the new enum form for FrameLoader::stopLoading().
3069
3070         * loader/FrameLoader.cpp:
3071         (WebCore::FrameLoader::stopLoading): Take an enum to decide whether to dispatch no unload events,
3072           only unload, or unload and pagehide.
3073         (WebCore::FrameLoader::closeURL):
3074         (WebCore::FrameLoader::scheduleRedirection):
3075         (WebCore::FrameLoader::cachePageForHistoryItem): Call pageHidden().
3076         (WebCore::FrameLoader::pageHidden): Add to dispatch the pagehide event to all frames in the case
3077           where a page is added to the PageCache.
3078         * loader/FrameLoader.h:
3079
3080         * loader/FrameLoaderTypes.h: Add an UnloadEventPolicy enum.
3081
3082 2009-09-02  Brady Eidson  <beidson@apple.com>
3083
3084         Reviewed by Darin Adler.
3085
3086         More partial work towards "Page Cache should support pages with Frames"
3087         https://bugs.webkit.org/show_bug.cgi?id=13631
3088
3089         - More CachedFrame destruction work.
3090         - Including related Frame and FrameLoader changes and cleanup.
3091
3092         No new tests. (No change in behavior, current tests pass).
3093
3094         * history/CachedFrame.cpp:
3095         (WebCore::CachedFrameBase::restore): Rebuild up the whole FrameTree when restoring.
3096         (WebCore::CachedFrame::CachedFrame): Tear down the entire FrameTree when caching.
3097         (WebCore::CachedFrame::destroy): For child frames that are being destroyed while in
3098           the PageCache, do lightweight cleanup to:
3099           A - Prevent referring to a stale Page object.
3100           B - Prevent World Leaks of WebKit objects.
3101
3102         * loader/FrameLoader.cpp:
3103         (WebCore::FrameLoader::stopAllLoaders): stopAllLoaders() should never be called on Frames that are
3104           in the PageCache. ASSERT that fact.
3105         (WebCore::FrameLoader::open): Remove a bogus release-build workaround, as the comment right above it
3106           explains it is not effective, and it'd be better to see the crash locally instead of downstream.
3107         (WebCore::FrameLoader::closeAndRemoveChild): Make sure the owner element has a page pointer before
3108           referencing it.
3109         (WebCore::FrameLoader::detachFromParent): Use the new detachViewsAndDocumentLoader() call
3110         (WebCore::FrameLoader::detachViewsAndDocumentLoader): Does lightweight cleanup of client (WebKit) objects.
3111         * loader/FrameLoader.h:
3112
3113         * page/Frame.cpp:
3114         (WebCore::Frame::detachFromPage): Simply clear the Page pointer without doing any other work.
3115         (WebCore::Frame::pageDestroyed): Use the new detachFromPage().
3116         * page/Frame.h:
3117
3118 2009-09-02  Jungshik Shin  <jshin@chromium.org>
3119
3120         Reviewed by Dimitri Glazkov
3121
3122         [Chromium] Add 'icu::' qualifier in preparation for ICU upgrade to 4.2
3123         in Chromium. This is to fix a new file added in r28742 since the
3124         last patch for this issue.
3125
3126         https://bugs.webkit.org/show_bug.cgi?id=28410
3127
3128         No change in the test result.
3129
3130         * platform/graphics/chromium/FontLinux.cpp:
3131         (WebCore::TextRunWalker::getNormalizedTextRun):
3132
3133 2009-09-02  Dimitri Glazkov  <dglazkov@chromium.org>
3134
3135         Unreviewed, build fix.
3136
3137         [Chromium] Correct a typo to fix bustage, caused by r47991.
3138         https://bugs.webkit.org/show_bug.cgi?id=27933
3139
3140         * platform/graphics/skia/ImageBufferSkia.cpp: Changed "Unpremultipled" to "Unmultiplied".
3141
3142 2009-09-02  Dimitri Glazkov  <dglazkov@chromium.org>
3143
3144         Unreviewed, build fix.
3145
3146         [Chromium] Add a missing include to fix bustage, caused by r47991.
3147         https://bugs.webkit.org/show_bug.cgi?id=27933
3148
3149         * platform/graphics/skia/ImageBufferSkia.cpp: Added SkColorPriv include.
3150
3151 2009-09-02  Jian Li  <jianli@chromium.org>
3152
3153         Reviewed by Dimitri Glazkov.
3154
3155         [Chromium] Implement file support for DragData.
3156         https://bugs.webkit.org/show_bug.cgi?id=28896
3157
3158         * platform/chromium/DragDataChromium.cpp:
3159         (WebCore::DragData::containsURL):
3160         (WebCore::DragData::asURL):
3161         (WebCore::DragData::containsCompatibleContent):
3162
3163 2009-09-02  Kevin Watters  <kevinwatters@gmail.com>
3164
3165         Reviewed by Kevin Ollivier.
3166
3167         Protect libcurl shared data with Mutex objects via curl_set_share_opt.
3168         https://bugs.webkit.org/show_bug.cgi?id=28920
3169
3170         * platform/network/curl/ResourceHandleManager.cpp:
3171         (WebCore::sharedResourceMutex):
3172         (WebCore::curl_lock_callback):
3173         (WebCore::curl_unlock_callback):
3174         (WebCore::ResourceHandleManager::ResourceHandleManager):
3175
3176 2009-09-02  Evan Stade  <estade@chromium.org>
3177
3178         Reviewed by Eric Seidel.
3179
3180         Expose functions to change the focus ring color for Linux Chromium
3181
3182         https://bugs.webkit.org/show_bug.cgi?id=28887
3183
3184         * rendering/RenderThemeChromiumLinux.cpp:
3185         (WebCore::RenderThemeChromiumLinux::RenderThemeChromiumLinux):
3186         (WebCore::RenderThemeChromiumLinux::setFocusRingColor):
3187         (WebCore::RenderThemeChromiumLinux::platformFocusRingColor):
3188         * rendering/RenderThemeChromiumLinux.h:
3189
3190 2009-09-02  Dirk Schulze  <krit@webkit.org>
3191
3192         Reviewed by Eric Seidel.
3193
3194         SVG Filter premultiplied color support for getImageDate/putImageData
3195         [https://bugs.webkit.org/show_bug.cgi?id=27933]
3196
3197         Patch to get premultiplied color support for Skia on getImageDate/putImageData.
3198
3199         * platform/graphics/skia/ImageBufferSkia.cpp:
3200         (WebCore::getImageData):
3201         (WebCore::putImageData):
3202
3203 2009-09-02  Brady Eidson  <beidson@apple.com>
3204
3205         Forget to rename openInFrameloader() to open(), which was requested in Darin's review of my last patch.
3206
3207         * history/CachedFrame.cpp:
3208         (WebCore::CachedFrameBase::restore):
3209         (WebCore::CachedFrame::open):
3210         * history/CachedFrame.h:
3211         * history/CachedPage.cpp:
3212         (WebCore::CachedPage::restore):
3213
3214 2009-09-02  Brady Eidson  <beidson@apple.com>
3215
3216         Reviewed by Darin Adler.
3217
3218         In http://trac.webkit.org/changeset/47943 I added new header dependencies to FrameLoader.h.
3219         Removing them is a little trouble, but worth it going forward.
3220         The pattern of creating a "CachedFrameBase" as the interface CachedFrame provides to FrameLoader
3221         was suggested by Darin Adler.
3222
3223         No new tests. (No change in behavior)
3224
3225         Make CachedFrame inherit privately from CachedFrameBase, which becomes the interface FrameLoader uses:
3226         * history/CachedFrame.cpp:
3227         (WebCore::CachedFrameBase::CachedFrameBase):
3228         (WebCore::CachedFrameBase::~CachedFrameBase):
3229         (WebCore::CachedFrameBase::restore):
3230         (WebCore::CachedFrame::CachedFrame):
3231         (WebCore::CachedFrame::openInFrameLoader):
3232         * history/CachedFrame.h:
3233         (WebCore::CachedFrameBase::document):
3234         (WebCore::CachedFrameBase::view):
3235         (WebCore::CachedFrameBase::domWindow):
3236         (WebCore::CachedFrame::create):
3237         (WebCore::CachedFrame::documentLoader):
3238         (WebCore::CachedFrame::mousePressNode):
3239
3240         Call the new ::openInFrameLoader() method on the CachedFrame, as CachedFrameBase is now the only
3241         thing capable of interacting with FrameLoader::open(CachedFrameBase):
3242         * history/CachedPage.cpp:
3243         (WebCore::CachedPage::restore):
3244         * history/CachedPage.h:
3245         (WebCore::CachedPage::documentLoader):
3246
3247         Make ::open(CachedFrame) public, and change it to ::open(CachedFrameBase):
3248         * loader/FrameLoader.cpp:
3249         (WebCore::FrameLoader::open):
3250         * loader/FrameLoader.h:
3251
3252 2009-09-02  Ryosuke Niwa  <rniwa@webkit.org>
3253
3254         Reviewed by Eric Seidel.
3255
3256         Cannot pres Enter to escape from bulleted list when <ul> is a child of <li>.
3257         https://bugs.webkit.org/show_bug.cgi?id=24866
3258
3259         This patch modifies breakOutOfEmptyListItem to break out of a properly nested list
3260         (a list to break out of is inside another list item).
3261
3262         When the empty list item appears at the end of another list item, WebKit breaks out of
3263         the outer list item, and adds new item below the outer list item.
3264         Otherwise, WebKit breaks out of the the inner list item and inserts new paragraph.
3265
3266         Test: editing/execCommand/break-out-of-empty-list-item.html
3267
3268         * editing/CompositeEditCommand.cpp:
3269         (WebCore::CompositeEditCommand::breakOutOfEmptyListItem):
3270
3271 2009-09-02  Brady Eidson  <beidson@apple.com>
3272
3273         Reviewed by Sam Weinig.
3274
3275         More partial work towards "Page Cache should support pages with Frames"
3276         https://bugs.webkit.org/show_bug.cgi?id=13631
3277
3278         This patch is primarily about the "CachedFrame tree" and making slightly different decisions
3279         based on whether a CachedFrame is the main frame or a subframe.
3280
3281         - Store whether a CachedFrame represents the main frame or a subframe.
3282         - "Chop off the frame tree" for the main frame when creating its CachedFrame, as main frames 
3283           are reused and need to start new page loads with an empty frame tree.
3284         - Reattach the frame tree to the main frame when restoring it.
3285         - open() the cached subframes in their respective loaders when restoring.
3286         - Properly clear() and destroy() cached subframes.
3287         - When committing to a new page load, and after caching the previous page, only clear the
3288           FrameView for the main frame.
3289
3290         Note that all of above will eventually be necessary as I continue to land this work in pieces,
3291         but doesn't actually change any behavior right now because we still refuse to even *try* to
3292         cache pages with frames.
3293
3294         No new tests. No change in behavior, and current tests continue to pass.
3295
3296         * history/CachedFrame.cpp:
3297         (WebCore::CachedFrame::CachedFrame):
3298         (WebCore::CachedFrame::restore):
3299         (WebCore::CachedFrame::clear):
3300         (WebCore::CachedFrame::destroy):
3301         * history/CachedFrame.h:
3302         (WebCore::CachedFrame::isMainFrame):
3303
3304         * loader/FrameLoader.cpp:
3305         (WebCore::FrameLoader::clear):
3306         (WebCore::FrameLoader::open):
3307         * loader/FrameLoader.h:
3308
3309 2009-09-02  Brady Eidson  <beidson@apple.com>
3310
3311         No review, build fix.
3312
3313         http://trac.webkit.org/changeset/47976 broke the build.  
3314         Let's try compiling before we land things, shall we?
3315
3316         * platform/graphics/SimpleFontData.cpp:
3317         (WebCore::SimpleFontData::SimpleFontData): Order the initialization list correctly.
3318
3319 2009-09-02  Kevin Ollivier  <kevino@theolliviers.com>
3320
3321         waf build fixes for Windows/MSVC.
3322
3323         * wscript:
3324
3325 2009-09-02  Ben Murdoch  <benm@google.com>
3326
3327         Unreviewed build fix for Chromium.
3328
3329         Missed #including V8Proxy.h in WebCore/bindings/v8/V8Binding.cpp.
3330
3331         * bindings/v8/V8Binding.cpp: add V8Proxy.h as an include
3332
3333 2009-09-02  Kevin Ollivier  <kevino@theolliviers.com>
3334
3335         waf build fix, don't define symbols we now grab from other sources.
3336
3337         * platform/wx/TemporaryLinkStubs.cpp:
3338
3339 2009-09-02  Kevin Ollivier  <kevino@theolliviers.com>
3340
3341         Build fixes for PluginViewNone.cpp and a wx build fix for PluginView.cpp.
3342
3343         * plugins/PluginView.cpp:
3344         (WebCore::PluginView::stop):
3345         * plugins/PluginViewNone.cpp:
3346         (WebCore::PluginView::platformDestroy):
3347
3348 2009-09-02  Charles Wei  <charles.wei@torchmobile.com.cn>
3349
3350         Reviewed by Eric Seidel.
3351
3352         Fix the build failure of WebKit for Linux/Qt when WML is enabled
3353
3354         No test cases needed since this just fixes the build problem.
3355
3356         * wml/WMLElement.cpp:
3357         (WebCore::WMLElement::create):
3358         * wml/WMLTableElement.cpp:
3359         (WebCore::WMLTableElement::joinSuperflousColumns):
3360         (WebCore::WMLTableElement::padWithEmptyColumns):
3361
3362 2009-09-02 Yong Li <yong.li@torchmobile.com>
3363
3364         Reviewed by Adam Barth.
3365
3366         WINCE PORT: use shared buffer for custom font data
3367         https://bugs.webkit.org/show_bug.cgi?id=27734
3368
3369         Refactored by Joe Mason <joe.mason@torchmobile.com>
3370
3371         * loader/CachedFont.cpp:
3372         add WINCE to platforms using cached custom data
3373         * platform/graphics/opentype/OpenTypeUtilities.cpp:
3374         (WebCore::renameFont): implement for WinCE
3375         * platform/graphics/opentype/OpenTypeUtilities.h:
3376         build fixes
3377         * platform/graphics/wince/FontCustomPlatformData.cpp:
3378         (WebCore::setCustomFontCache): add accessor
3379         (WebCore::createFontCustomPlatformData): change param to SharedBuffer
3380         * platform/graphics/wince/FontCustomPlatformData.h:
3381         update function signatures 
3382  
3383 2009-09-02 Yong Li <yong.li@torchmobile.com>
3384
3385         Reviewed by Adam Barth.
3386
3387         WINCE PORT: font-related build fixes and minor bugfixes
3388         https://bugs.webkit.org/show_bug.cgi?id=27734
3389
3390         * platform/graphics/FontCache.h: declare functions added in https://bugs.webkit.org/show_bug.cgi?id=27509
3391         * platform/graphics/GlyphPageTreeNode.cpp:
3392         (WebCore::GlyphPageTreeNode::initializePage): fix ambiguous overload error in min/max on Windows
3393         * platform/graphics/SimpleFontData.cpp:
3394         (WebCore::SimpleFontData::SimpleFontData): initialize member vars
3395         * platform/graphics/SimpleFontData.h: disable unused members on Wince to save space 
3396
3397 2009-09-02  Jeremy Orlow  <jorlow@chromium.org>
3398
3399         Reviewed by Adam Barth.
3400
3401         Another pass at releasing the storage mutex.
3402         https://bugs.webkit.org/show_bug.cgi?id=28904
3403
3404         Another pass at releasing the storage mutex (when applicable) when we finish
3405         executing JavaScript.  http://dev.w3.org/html5/spec/Overview.html#storage-mutex
3406         describes the required behavior.
3407
3408         As it turns out, https://bugs.webkit.org/show_bug.cgi?id=28789 didn't solve
3409         the problem correctly.  First of all, I missed that events and timeouts go
3410         through a different call path.  Second of all, I didn't consider recursion
3411         correctly.  Third of all, my check to see if LocalStorage is alive actually
3412         instantiates it if it isn't yet.  Fourth, I forgot DOM_STORAGE guards around
3413         it.  So I'm reverting that change completely and doing it more cleanly.
3414         Unfortunately, the solution isn't as portable (and thus I've left out the JSC
3415         implementation for now).
3416
3417         NOTE: This change now tracks recursion on function callbacks in V8.  I ran this
3418         by Mads Ager and Mike Belshe and they seemed to think adding the checks were
3419         fine.  Most callbacks are asynchronous and thus wouldn't be nested.  The few
3420         scenareos where you can have nested callbacks probably should have always been
3421         protected by a recursion guard.
3422
3423         Unfortunately, this can't be tested without a hook added to the layout test
3424         controllers since the lock is (by design) not supposed to be observable by
3425         JavaScript.  https://bugs.webkit.org/show_bug.cgi?id=28906
3426
3427         * bindings/js/ScriptController.cpp:
3428         (WebCore::ScriptController::evaluate): revert
3429         * bindings/v8/ScriptController.cpp:
3430         (WebCore::ScriptController::evaluate): revert
3431         * bindings/v8/V8Proxy.cpp:
3432         (WebCore::V8Proxy::runScript):
3433             Add releaseStorageMutex call.  A small amount of clean up.
3434         (WebCore::V8Proxy::callFunction):
3435             Add releaseStorageMutex call.  A small amount of clean up.
3436         (WebCore::V8Proxy::releaseStorageMutex):
3437             Check to see if localStorage has been instantiated.  If so, tell it to
3438             unlock all storage areas.
3439         * bindings/v8/V8Proxy.h:
3440         * page/PageGroup.h:
3441         (WebCore::PageGroup::hasLocalStorage):  Make hasLocalStorage public.
3442
3443 2009-09-02  Yong Li  <yong.li@torchmobile.com>
3444
3445         Reviewed by Adam Barth.
3446
3447         WINCE PORT: Implement ImageBuffer for WINCE
3448         Implement Image interface with a light class BufferedImage
3449         for rendering ImageBuffer
3450         https://bugs.webkit.org/show_bug.cgi?id=28167
3451
3452         * platform/graphics/wince/ImageBufferData.h: Added.
3453         * platform/graphics/wince/ImageBufferWince.cpp: Added.
3454
3455 2009-08-31  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
3456
3457         Reviewed by Eric Seidel.
3458
3459         Join the various PluginView destructors into one shared implementation
3460
3461         https://bugs.webkit.org/show_bug.cgi?id=27706
3462
3463         The Qt port used to delete the platform plugin widget as the last step.
3464         Now this is done before cleaning up the script objects and unloading the
3465         plugin package, similar to how the Win port does it.
3466
3467         * plugins/PluginView.cpp:
3468         * plugins/PluginViewNone.cpp:
3469         * plugins/gtk/PluginViewGtk.cpp:
3470         * plugins/mac/PluginViewMac.cpp:
3471         * plugins/qt/PluginViewQt.cpp:
3472         * plugins/win/PluginViewWin.cpp:
3473
3474 2009-08-31  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
3475
3476         Reviewed by Eric Seidel.
3477
3478         Share PluginView::init() between ports
3479
3480         https://bugs.webkit.org/show_bug.cgi?id=27706
3481
3482         The port-spesific bits are moved to platformStart(), which now returns
3483         a bool based on the success of the platformStart.
3484
3485         m_hasPendingGeometryChange is now initialized in the initializer list
3486         instead of in PluginViewQt's init()
3487
3488         PluginViewMac (currently used only by the Qt port) used to manually call
3489         stop() in the case where an unsupported drawing or event model was detected.
3490         This was wrong, as the m_status and m_isStarted fields should be used to
3491         guard against doing operations on a plugin in this intermediate state.
3492
3493         * plugins/PluginView.cpp:
3494         * plugins/PluginView.h:
3495         * plugins/PluginViewNone.cpp:
3496         * plugins/gtk/PluginViewGtk.cpp:
3497         * plugins/mac/PluginViewMac.cpp:
3498         * plugins/qt/PluginViewQt.cpp:
3499         * plugins/win/PluginViewWin.cpp:
3500
3501 2009-09-02  Ben Murdoch  <benm@google.com>
3502
3503         https://bugs.webkit.org/show_bug.cgi?id=28737
3504         
3505         Update JavaScript bindings in JSC and V8 for SQLTransaction to throw exceptions in the right places.
3506
3507         * bindings/js/JSSQLTransactionCustom.cpp:
3508         (WebCore::JSSQLTransaction::executeSql): Throw an exception if no parameters are passed to executeSql().
3509         * bindings/v8/V8Binding.cpp:
3510         (WebCore::v8ValueToWebCoreString): Catch an exception if thrown from toString().
3511         * bindings/v8/custom/V8SQLTransactionCustom.cpp:
3512         (WebCore::CALLBACK_FUNC_DECL): Allow "arrayish objects" to be passed to executeSql.
3513
3514 2009-09-01  Pavel Feldman  <pfeldman@chromium.org>
3515
3516         Reviewed by Timothy Hatcher.
3517
3518         WebInspector: Migrate Databases tab to InjectedScript /
3519         serialized interaction.
3520
3521         https://bugs.webkit.org/show_bug.cgi?id=28873
3522
3523         * inspector/InspectorDOMAgent.cpp:
3524         (WebCore::InspectorDOMAgent::handleEvent):
3525         * inspector/front-end/Database.js:
3526         (WebInspector.Database.prototype.isDB):
3527         (WebInspector.Database.prototype.runWithTableNames.sortingCallback):
3528         (WebInspector.Database.prototype.runWithTableNames):
3529         (WebInspector.Database.prototype.executeSql):
3530         (WebInspector.Database.prototype.executeSql.errorCallback):
3531         (WebInspector.Database.prototype.executeSql.queryTransaction):
3532         * inspector/front-end/DatabaseQueryView.js:
3533         (WebInspector.DatabaseQueryView.prototype._enterKeyPressed):
3534         (WebInspector.DatabaseQueryView.prototype._queryFinished):
3535         * inspector/front-end/DatabaseTableView.js:
3536         (WebInspector.DatabaseTableView):
3537         * inspector/front-end/StoragePanel.js:
3538         (WebInspector.StoragePanel.prototype.selectDatabase):
3539         (WebInspector.StoragePanel.prototype.updateDatabaseTables.withTableNames):
3540         (WebInspector.StoragePanel.prototype.updateDatabaseTables):
3541         (WebInspector.DatabaseSidebarTreeElement.prototype.onpopulate.withTableNames):
3542         (WebInspector.DatabaseSidebarTreeElement.prototype.onpopulate):
3543
3544 2009-09-02  Pavel Feldman  <pfeldman@chromium.org>
3545
3546         Not reviewed (trivial followup fix). 
3547         
3548         Web Inspector: Trivial follow up fix to r47944.
3549
3550         https://bugs.webkit.org/show_bug.cgi?id=28800
3551
3552         * inspector/InspectorBackend.cpp:
3553         (WebCore::InspectorBackend::nodeForId):
3554
3555 2009-09-01  Brian Weinstein  <bweinstein@apple.com>
3556
3557         Reviewed by John Sullivan.
3558
3559         Fixed a bug in handling of isReadOnly, where textareas were casted to HTMLInputElements.
3560
3561         * accessibility/AccessibilityRenderObject.cpp:
3562         (WebCore::AccessibilityRenderObject::isReadOnly):
3563
3564 2009-09-01  Patrick Mueller  <Patrick_Mueller@us.ibm.com>