96e55a614e4d1978974863b13ad7fc977329e791
[WebKit.git] / WebCore / ChangeLog
1 2009-09-15  Kent Tamura  <tkent@chromium.org>
2
3         Reviewed by Eric Seidel.
4
5         <input maxlength=> should restrict only values specified by users.
6         https://bugs.webkit.org/show_bug.cgi?id=21271
7
8         * dom/InputElement.cpp:
9         (WebCore::InputElement::setValueFromRenderer):
10         (WebCore::InputElement::sanitizeValue):
11         (WebCore::InputElement::sanitizeUserInputValue): Rename from constrainValue().
12         (WebCore::InputElement::handleBeforeTextInsertedEvent):
13         (WebCore::InputElement::updateValueIfNeeded):
14         * dom/InputElement.h:
15         * html/HTMLInputElement.cpp:
16         (WebCore::HTMLInputElement::setInputType):
17         (WebCore::HTMLInputElement::value):
18         (WebCore::HTMLInputElement::setValue):
19         (WebCore::HTMLInputElement::sanitizeValue):
20         * html/HTMLInputElement.h:
21         * rendering/RenderTextControlSingleLine.cpp:
22         (WebCore::RenderTextControlSingleLine::subtreeHasChanged):
23         * wml/WMLInputElement.cpp:
24         (WebCore::WMLInputElement::constrainValue):
25         * wml/WMLInputElement.h:
26         (WebCore::WMLInputElement::sanitizeValue):
27
28 2009-09-16  Enrica Casucci  <enrica@apple.com>
29
30         Reviewed by Eric Seidel.
31
32         Reorganizing helper functions in htmlediting.h to group them by type of object they return/operate upon.
33         https://bugs.webkit.org/show_bug.cgi?id=29319
34
35         * editing/IndentOutdentCommand.cpp:
36         Removed implementation of isAtUnsplittableElement.
37
38         * editing/IndentOutdentCommand.h:
39         Removed member function isAtUnsplittableElement, because it was not class specific and belonged logically among the helper functions.
40
41         * editing/htmlediting.cpp:
42         (WebCore::isAtUnsplittableElement): added. The code was taken from IndentOutdentCommand.
43
44         * editing/htmlediting.h:
45         Reordered functions to group them by type of object returned or operate upon.
46         Added comments.
47         Added isAtUnsplittableElement declaration.
48
49 2009-09-16  Geoffrey Garen  <ggaren@apple.com>
50
51         Reviewed by Sam Weinig and Anders Carlsson.
52
53         Removed some vestigial and potentially crashy code that makes consolidating
54         event listeners hard.
55
56         * dom/Node.cpp:
57         (WebCore::Node::addEventListener): No need to limit when event listeners
58         can be added. Other EventTargets don't do this.
59         
60         Also, check for null when accessing document(). Technically, the JS bindings
61         do this check for us, but let's not rely on that.
62
63 2009-09-16  Anders Carlsson  <andersca@apple.com>
64
65         Reviewed by Adam Roben.
66
67         <rdar://problem/7155710>
68         HTML selects on windows cause containing window to become inactive when opened
69         
70         Redo the way we handle events when a popup menu is shown, based on
71         http://blogs.msdn.com/oldnewthing/archive/2004/08/20/217684.aspx
72         
73         Since a non-active window can't capture the mouse, we use the owning window 
74         (the WebView) as the capture window. We then run a recursive message pump that 
75         forwards all mouse and keyboard events to the popup menu.
76         
77         * platform/PopupMenu.h:
78         * platform/win/PopupMenuWin.cpp:
79         (WebCore::PopupMenu::PopupMenu):
80         (WebCore::PopupMenu::show):
81         (WebCore::PopupMenu::hide):
82         (WebCore::PopupMenu::wndProc):
83
84 2009-09-16  Dan Bernstein  <mitz@apple.com>
85
86         Reviewed by Ada Chan.
87
88         Speculative fix for
89         <rdar://problem/6937089> Crashes at RenderWidget::destroy()
90
91         * rendering/RenderWidget.cpp:
92         (WebCore::RenderWidget::destroy): Avoid calling renderArena() if node()
93         is null. Add two assertions that can help determine how this crash
94         happens (in particular, whether node() becomes null during destroy() or
95         it is null before destroy() is called).
96
97 2009-09-16  Beth Dakin  <bdakin@apple.com>
98
99         Speculative build fix.
100
101         * css/CSSStyleSelector.cpp:
102         (WebCore::CSSStyleSelector::applyProperty):
103
104 2009-09-16  Beth Dakin  <bdakin@apple.com>
105
106         Reviewed by Darin Adler.
107
108         Fix for <rdar://problem/7083741> Implement a CSS extension to 
109         adjust sub-pixel anti-aliasing for text
110         -and corresponding-
111         https://bugs.webkit.org/show_bug.cgi?id=29291
112
113         Added tests:
114         * fast/css/font-smoothing.html: Added.
115         * fast/css/parsing-webkit-font-smoothing.html: Added.
116
117         This patch adds a new CSS property called -webkit-font-smoothing 
118         that accepts the following as valid input: auto | none | 
119         antialiased | subpixel-antialiased
120
121         Return appropriate computed style for -webkit-font-smoothing
122         * css/CSSComputedStyleDeclaration.cpp:
123         (WebCore::):
124         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
125
126         Add a case for CSSPropertyWebkitFontSmoothing, and accept valid 
127         input.
128         * css/CSSParser.cpp:
129         (WebCore::CSSParser::parseValue):
130
131         Add mappings for FontSmoothing to the right CSS values.
132         * css/CSSPrimitiveValueMappings.h:
133         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
134         (WebCore::CSSPrimitiveValue::operator FontSmoothing):
135
136         Add -webkit-font-smoothing
137         * css/CSSPropertyNames.in:
138
139         Set fontSmoothing on the FontDescription.
140         * css/CSSStyleSelector.cpp:
141         (WebCore::CSSStyleSelector::applyProperty):
142
143         Add antialiased and subpixel-antialiased as possible new CSS 
144         values.
145         * css/CSSValueKeywords.in:
146         Store the font smoothing CSS value in the FontDescription.
147         * platform/graphics/FontDescription.h:
148         (WebCore::FontDescription::FontDescription):
149         (WebCore::FontDescription::fontSmoothing):
150         (WebCore::FontDescription::setFontSmoothing):
151         (WebCore::FontDescription::operator==):
152
153         Call setShouldAntialias() and setShouldUseSmoothing() appropriately 
154         based on the CSS fontSmoothing() value.
155         * platform/graphics/mac/FontMac.mm:
156         (WebCore::Font::drawGlyphs):
157         * platform/graphics/win/FontCGWin.cpp:
158         (WebCore::Font::drawGlyphs):
159
160         New function fontSmoothing()
161         * rendering/style/RenderStyle.h:
162         (WebCore::InheritedFlags::fontSmoothing):
163
164         New enum FontSmoothing.
165         * rendering/style/RenderStyleConstants.h:
166         (WebCore::):
167
168 2009-09-16  Albert J. Wong  <ajwong@chromium.org>
169
170         Reviewed by David Levin.
171
172         Reimplement default media UI for Mac Chromium to match the style
173         of the Windows and Linux versions.  Also breaks the dependency
174         on the internal wk* functions that were previously used to
175         render the media controller widgets.
176         https://bugs.webkit.org/show_bug.cgi?id=29161
177
178         No media layout tests are currently enabled in Mac Chromium, so
179         nothing needs rebaselineing, etc.
180
181         * css/mediaControlsChromium.css:
182         * rendering/RenderThemeChromiumMac.h:
183         * rendering/RenderThemeChromiumMac.mm:
184         (WebCore::mediaElementParent):
185         (WebCore::RenderThemeChromiumMac::extraMediaControlsStyleSheet):
186         (WebCore::mediaSliderThumbImage):
187         (WebCore::mediaVolumeSliderThumbImage):
188         (WebCore::RenderThemeChromiumMac::paintSliderTrack):
189         (WebCore::RenderThemeChromiumMac::adjustSliderThumbSize):
190         (WebCore::RenderThemeChromiumMac::paintMediaButtonInternal):
191         (WebCore::RenderThemeChromiumMac::paintMediaPlayButton):
192         (WebCore::RenderThemeChromiumMac::paintMediaMuteButton):
193         (WebCore::RenderThemeChromiumMac::paintMediaSliderTrack):
194         (WebCore::RenderThemeChromiumMac::paintMediaVolumeSliderTrack):
195         (WebCore::RenderThemeChromiumMac::paintMediaSliderThumb):
196         (WebCore::RenderThemeChromiumMac::paintMediaVolumeSliderThumb):
197         (WebCore::RenderThemeChromiumMac::paintMediaControlsBackground):
198         * rendering/RenderThemeChromiumSkia.cpp:
199         (WebCore::RenderThemeChromiumSkia::adjustSliderThumbSize):
200
201 2009-09-16  Yury Semikhatsky  <yurys@chromium.org>
202
203         Reviewed by Timothy Hatcher.
204
205         Remove style property if empty string is entered.
206
207         https://bugs.webkit.org/show_bug.cgi?id=29163
208
209         * inspector/front-end/ElementsTreeOutline.js:
210         (WebInspector.ElementsTreeOutline.prototype._onmouseout): fixed null pointer exception
211         * inspector/front-end/InjectedScript.js:
212         (InjectedScript.applyStyleText): if styletext to apply is empty it will return an array to confirm the property removal
213         * inspector/front-end/StylesSidebarPane.js:
214         (WebInspector.StylePropertyTreeElement.prototype.):
215         (WebInspector.StylePropertyTreeElement.prototype):
216
217 2009-09-16  Yury Semikhatsky  <yurys@chromium.org>
218
219         Reviewed by Timothy Hatcher.
220
221         Always reset m_implicitShorthand to false after parsing
222         background-repeat style property otherwise properties
223         following after it may be erroneously marked as implicit.
224
225         https://bugs.webkit.org/show_bug.cgi?id=28972
226         https://bugs.webkit.org/show_bug.cgi?id=28973
227
228         Test: fast/backgrounds/repeat/margin-shorthand.html
229
230         * css/CSSParser.cpp:
231         (WebCore::CSSParser::parseValue):
232
233 2009-09-16  Carol Szabo  <carol.szabo@nokia.com>
234
235         Reviewed by Alexey Proskuryakov.
236
237         Incorrect behavior of XMLHttpRequest::getAllResponseHeaders and
238         XMLHttpRequest::getResponseHeader in the
239         HEADERS_RECEIVED readyState.
240         https://bugs.webkit.org/show_bug.cgi?id=29121
241
242         Tests: http/tests/xmlhttprequest/getAllResponseHeaders.html
243                http/tests/xmlhttprequest/getResponseHeader.html
244
245         * xml/XMLHttpRequest.cpp:
246         (WebCore::XMLHttpRequest::getAllResponseHeaders):
247         (WebCore::XMLHttpRequest::getResponseHeader):
248         Changed the minimum valid state from LOADING to HEADERS_RECEIVED.
249
250 2009-09-16  Vitaly Repeshko  <vitalyr@chromium.org>
251
252         Reviewed by Dimitri Glazkov.
253
254         [V8] Fix style violation in V8AbstractEventListener.
255         https://bugs.webkit.org/show_bug.cgi?id=29303
256
257         * bindings/v8/V8AbstractEventListener.h:
258         (WebCore::V8AbstractEventListener::operator==):
259
260 2009-09-16  Patrick Mueller  <Patrick_Mueller@us.ibm.com>
261
262         Reviewed by Timothy Hatcher.
263
264         Add Watch Expression support to inspector
265         https://bugs.webkit.org/show_bug.cgi?id=27514
266
267         Manual test added.
268
269         * English.lproj/localizedStrings.js:
270         * WebCore.gypi:
271         * WebCore.vcproj/WebCore.vcproj:
272         * inspector/front-end/ConsoleView.js:
273         (WebInspector.ConsoleView.prototype.completions):
274         (WebInspector.ConsoleView.prototype.evalInInspectedWindow):
275         (WebInspector.ConsoleView.prototype._enterKeyPressed):
276         * inspector/front-end/ObjectPropertiesSection.js:
277         (WebInspector.ObjectPropertiesSection.prototype.update.callback):
278         (WebInspector.ObjectPropertiesSection.prototype.update):
279         (WebInspector.ObjectPropertiesSection.prototype.updateProperties):
280         (WebInspector.ObjectPropertiesSection.CompareProperties):
281         (WebInspector.ObjectPropertyTreeElement.prototype.onpopulate.callback):
282         (WebInspector.ObjectPropertyTreeElement.prototype.onpopulate):
283         (WebInspector.ObjectPropertyTreeElement.prototype.update):
284         * inspector/front-end/ScriptsPanel.js:
285         (WebInspector.ScriptsPanel):
286         (WebInspector.ScriptsPanel.prototype.reset):
287         (WebInspector.ScriptsPanel.prototype._callFrameSelected):
288         * inspector/front-end/WatchExpressionsSidebarPane.js: Added.
289         (WebInspector.WatchExpressionsSidebarPane):
290         (WebInspector.WatchExpressionsSidebarPane.prototype.refreshExpressions):
291         (WebInspector.WatchExpressionsSection):
292         (WebInspector.WatchExpressionsSection.prototype.update):
293         (WebInspector.WatchExpressionsSection.prototype.addExpression):
294         (WebInspector.WatchExpressionsSection.prototype.updateExpression):
295         (WebInspector.WatchExpressionsSection.prototype.findAddedTreeElement):
296         (WebInspector.WatchExpressionsSection.prototype.loadSavedExpressions):
297         (WebInspector.WatchExpressionsSection.prototype.saveExpressions):
298         (WebInspector.WatchExpressionsSection.CompareProperties):
299         (WebInspector.WatchExpressionTreeElement):
300         (WebInspector.WatchExpressionTreeElement.prototype.update):
301         (WebInspector.WatchExpressionTreeElement.prototype._deleteButtonClicked):
302         (WebInspector.WatchExpressionTreeElement.prototype.startEditing):
303         (WebInspector.WatchExpressionTreeElement.prototype.editingCancelled):
304         (WebInspector.WatchExpressionTreeElement.prototype.applyExpression):
305         * inspector/front-end/WebKit.qrc:
306         * inspector/front-end/inspector.css:
307         * inspector/front-end/inspector.html:
308         * manual-tests/inspector/debugger-watch-expressions.html: Added.
309
310 2009-09-16  Greg Bolsinga  <bolsinga@apple.com>
311
312         Add ENABLE(INSPECTOR)
313         https://bugs.webkit.org/show_bug.cgi?id=29260
314
315         Reviewed by David Kilzer.
316
317         No new tests. (No change in default behavior.)
318
319         * DerivedSources.make: Use new WebCore.Inspector.exp file if ENABLE_DRAG_SUPPORT.
320         * WebCore.base.exp: Move Inspector only exports to WebCore.Inspector.exp.
321         * WebCore.xcodeproj/project.pbxproj: Add WebCore.Inspector.exp.
322         * bindings/js/JSDOMWindowBase.cpp: Use ENABLE(INSPECTOR) where applicable.
323         (WebCore::JSDOMWindowBase::supportsProfiling):
324         * bindings/js/JSInspectedObjectWrapper.cpp: Wrap entire file in ENABLE(INSPECTOR).
325         * bindings/js/JSInspectorBackendCustom.cpp: Ditto.
326         * bindings/js/JSInspectorCallbackWrapper.cpp: Ditto.
327         * bindings/js/ScriptObject.cpp: Use ENABLE(INSPECTOR) where applicable.
328         * bindings/js/ScriptObject.h: Ditto.
329         * bindings/js/ScriptObjectQuarantine.cpp: Wrap entire file in ENABLE(INSPECTOR).
330         * dom/Document.cpp: Use ENABLE(INSPECTOR) where applicable.
331         (WebCore::Document::recalcStyle):
332         (WebCore::Document::addMessage):
333         (WebCore::Document::resourceRetrievedByXMLHttpRequest):
334         (WebCore::Document::scriptImported):
335         * dom/Document.h: Ditto.
336         * dom/Node.cpp: Ditto.
337         (WebCore::Node::dispatchGenericEvent):
338         * dom/ScriptExecutionContext.h: Ditto.
339         (WebCore::):
340         * html/HTMLDocument.cpp: Ditto.
341         (WebCore::HTMLDocument::createTokenizer):
342         * html/HTMLTokenizer.cpp: Ditto.
343         (WebCore::HTMLTokenizer::write):
344         * inspector/ConsoleMessage.cpp: Ditto.
345         (WebCore::ConsoleMessage::ConsoleMessage):
346         (WebCore::ConsoleMessage::isEqual):
347         * inspector/ConsoleMessage.h: Ditto.
348         * inspector/DOMDispatchTimelineItem.cpp: Wrap entire file in ENABLE(INSPECTOR).
349         * inspector/InspectorBackend.cpp: Ditto.
350         * inspector/InspectorController.cpp: Ditto.
351         * inspector/InspectorDOMAgent.cpp: Ditto.
352         * inspector/InspectorDOMStorageResource.cpp: Ditto.
353         * inspector/InspectorDatabaseResource.cpp: Ditto.
354         * inspector/InspectorFrontend.cpp: Ditto.
355         * inspector/InspectorResource.cpp: Ditto.
356         * inspector/InspectorTimelineAgent.cpp: Ditto.
357         * inspector/TimelineItem.cpp: Ditto.
358         * loader/FrameLoader.cpp: Use ENABLE(INSPECTOR) where applicable.
359         (WebCore::FrameLoader::detachFromParent):
360         (WebCore::FrameLoader::continueLoadAfterNavigationPolicy):
361         (WebCore::FrameLoader::loadedResourceFromMemoryCache):
362         (WebCore::FrameLoader::dispatchWindowObjectAvailable):
363         (WebCore::FrameLoader::dispatchDidCommitLoad):
364         (WebCore::FrameLoader::dispatchAssignIdentifierToInitialRequest):
365         (WebCore::FrameLoader::dispatchWillSendRequest):
366         (WebCore::FrameLoader::dispatchDidReceiveResponse):
367         (WebCore::FrameLoader::dispatchDidReceiveContentLength):
368         (WebCore::FrameLoader::dispatchDidFinishLoading):
369         * page/Chrome.cpp: Ditto.
370         (WebCore::Chrome::mouseDidMoveOverElement):
371         * page/Console.cpp: Ditto.
372         (WebCore::Console::addMessage):
373         (WebCore::Console::count):
374         (WebCore::Console::profile):
375         (WebCore::Console::profileEnd):
376         (WebCore::Console::time):
377         (WebCore::Console::timeEnd):
378         (WebCore::Console::group):
379         (WebCore::Console::groupEnd):
380         * page/ContextMenuController.cpp: Ditto.
381         (WebCore::ContextMenuController::handleContextMenuEvent):
382         (WebCore::ContextMenuController::contextMenuItemSelected):
383         * page/DOMWindow.cpp: Ditto.
384         (WebCore::DOMWindow::sessionStorage):
385         (WebCore::DOMWindow::localStorage):
386         * page/EventHandler.cpp: Ditto.
387         (WebCore::EventHandler::handleMousePressEvent):
388         * page/FrameView.cpp: Ditto.
389         (WebCore::FrameView::layout):
390         (WebCore::FrameView::paintContents):
391         * page/FrameView.h: Ditto.
392         * page/Page.cpp: Ditto.
393         (WebCore::Page::Page):
394         (WebCore::Page::~Page):
395         * page/Page.h: Ditto.
396         * platform/ContextMenu.cpp: Ditto.
397         (WebCore::ContextMenu::checkOrEnableIfNeeded):
398         * platform/ContextMenuItem.h: Ditto.
399         (WebCore::):
400         * storage/Database.cpp: Ditto.
401         (WebCore::Database::openDatabase):
402         * workers/WorkerContext.cpp: Ditto.
403         (WebCore::WorkerContext::importScripts):
404         * xml/XMLHttpRequest.cpp: Ditto.
405         (WebCore::XMLHttpRequest::didFinishLoading):
406
407 2009-09-16  Greg Bolsinga  <bolsinga@apple.com>
408
409         Add ENABLE(CONTEXT_MENUS)
410         https://bugs.webkit.org/show_bug.cgi?id=29225
411
412         Reviewed by David Kilzer.
413
414         No new tests. (No change in default behavior.)
415
416         * DerivedSources.make: Use new WebCore.ContextMenus.exp file if ENABLE_CONTEXT_MENUS.
417         * WebCore.base.exp: Move ContextMenu only exports to WebCore.ContextMenus.exp.
418         * WebCore.xcodeproj/project.pbxproj: Add WebCore.ContextMenus.exp.
419         * dom/Node.cpp: Use ENABLE(CONTEXT_MENUS) where applicable.
420         (WebCore::Node::defaultEventHandler):
421         * loader/EmptyClients.h: Ditto.
422         * page/ContextMenuController.cpp: Wrap entire file in ENABLE(CONTEXT_MENUS).
423         * page/EventHandler.cpp: Use ENABLE(CONTEXT_MENUS) where applicable.
424         * page/EventHandler.h: Ditto.
425         * page/Page.cpp: Ditto.
426         (WebCore::Page::Page):
427         * page/Page.h: Ditto.
428         * page/mac/EventHandlerMac.mm: Ditto.
429         * page/mac/WebCoreViewFactory.h: Ditto.
430         * platform/ContextMenu.cpp: Wrap entire file in ENABLE(CONTEXT_MENUS).
431         * platform/LocalizedStrings.h: Use ENABLE(CONTEXT_MENUS) where applicable.
432         * platform/mac/ContextMenuItemMac.mm: Wrap entire file in ENABLE(CONTEXT_MENUS).
433         * platform/mac/ContextMenuMac.mm: Ditto.
434         * platform/mac/LocalizedStringsMac.mm: Use ENABLE(CONTEXT_MENUS) where applicable.
435         * svg/graphics/SVGImage.cpp: Ditto.
436         (WebCore::SVGImage::dataChanged):
437
438 2009-09-16  Dave Hyatt  <hyatt@apple.com>
439
440         Reviewed by Adam Roben.
441
442         Clean up invalidation for repainting.  Hoist the dirty rect intersection test in ScrollViewMac up
443         into ScrollView so that all platforms do it.
444         
445         Patch deferred repaints in FrameView::repaintContentRectangle to only add the visible portion of
446         the rectangle for repainting.
447
448         * page/FrameView.cpp:
449         (WebCore::FrameView::repaintContentRectangle):
450         * platform/ScrollView.cpp:
451         (WebCore::ScrollView::repaintContentRectangle):
452         * platform/mac/ScrollViewMac.mm:
453         (WebCore::ScrollView::platformRepaintContentRectangle):
454
455 2009-09-16  Greg Bolsinga  <bolsinga@apple.com>
456
457         Add ENABLE(DRAG_SUPPORT)
458         https://bugs.webkit.org/show_bug.cgi?id=29233
459
460         Reviewed by David Kilzer.
461
462         No new tests. (No change in default behavior.)
463
464         * DerivedSources.make: Use new WebCore.DragSupport.exp file if ENABLE_DRAG_SUPPORT.
465         * WebCore.base.exp: Move Drag Support only exports to WebCore.DragSupport.exp.
466         * WebCore.xcodeproj/project.pbxproj: Add WebCore.DragSupport.exp.
467         * dom/Clipboard.h: Use ENABLE(DRAG_SUPPORT) where applicable.
468         * loader/EmptyClients.h: Ditto.
469         * page/DragController.cpp: Wrap entire file in ENABLE(DRAG_SUPPORT).
470         * page/EventHandler.cpp: Use ENABLE(DRAG_SUPPORT) where applicable.
471         (WebCore::EventHandler::EventHandler):
472         (WebCore::EventHandler::clear):
473         (WebCore::EventHandler::handleMousePressEvent):
474         (WebCore::EventHandler::handleMouseReleaseEvent):
475         (WebCore::EventHandler::handleMouseMoveEvent):
476         * page/EventHandler.h: Ditto.
477         * page/Page.cpp: Ditto.
478         (WebCore::Page::Page):
479         * page/Page.h: Ditto.
480         * page/mac/DragControllerMac.mm: Wrap entire file in ENABLE(DRAG_SUPPORT).
481         * page/mac/EventHandlerMac.mm: Use ENABLE(DRAG_SUPPORT) where applicable.
482         (WebCore::EventHandler::passSubframeEventToSubframe):
483         * platform/DragData.cpp: Wrap entire file in ENABLE(DRAG_SUPPORT).
484         * platform/DragImage.cpp: Wrap entire file in ENABLE(DRAG_SUPPORT).
485         * platform/mac/ClipboardMac.h: Use ENABLE(DRAG_SUPPORT) where applicable.
486         * platform/mac/ClipboardMac.mm: Ditto.
487         * platform/mac/DragDataMac.mm: Wrap entire file in ENABLE(DRAG_SUPPORT).
488         * platform/mac/DragImageMac.mm: Wrap entire file in ENABLE(DRAG_SUPPORT).
489         * rendering/RenderLayer.cpp: Use ENABLE(DRAG_SUPPORT) where applicable.
490         (WebCore::RenderLayer::autoscroll):
491         * rendering/RenderObject.cpp: Ditto.
492         * rendering/RenderObject.h: Ditto.
493         * svg/graphics/SVGImage.cpp: Ditto.
494         (WebCore::SVGImage::dataChanged):
495
496 2009-09-16  Kevin Ollivier  <kevino@theolliviers.com>
497
498         wxMSW build fix after adding support for high resolution times in Win.
499
500         * page/Settings.cpp:
501         * page/Settings.h:
502
503 2009-09-16  Vitaly Repeshko  <vitalyr@chromium.org>
504
505         Reviewed by Dimitri Glazkov.
506
507         [V8] Added operator==() to event listeners. This fixes V8 bindings
508         build broken in http://trac.webkit.org/changeset/48402.
509         https://bugs.webkit.org/show_bug.cgi?id=29298
510
511         * bindings/v8/V8AbstractEventListener.cpp:
512         (WebCore::V8AbstractEventListener::V8AbstractEventListener): Now
513         uses JSEventListenerType.
514         * bindings/v8/V8AbstractEventListener.h:
515         (WebCore::V8AbstractEventListener::operator==): Only compares
516         pointers since we create at most one wrapper for a JS object.
517
518 2009-09-16  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
519
520         Reviewed by Xan Lopez.
521
522         [GTK] Crash when visiting http://flipper.googlelabs.com/
523         https://bugs.webkit.org/show_bug.cgi?id=29293
524
525         Check type for being null or empty before looking it up in the
526         hash of supported types.
527
528         Tested by http/tests/loading/redirect-with-no-location-crash.html
529
530         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
531         (WebCore::MediaPlayerPrivate::supportsType):
532
533 2009-09-15  Geoffrey Garen  <ggaren@apple.com>
534
535         Reviewed by Sam Weinig.
536         
537         Removed the notion of "disconnected nodes with event listeners" because
538         it was vestigial. The reference cycle it tried to solve was solved another
539         way in https://bugs.webkit.org/show_bug.cgi?id=21260.
540
541         * dom/Document.cpp:
542         (WebCore::Document::removeAllEventListeners):
543         * dom/Document.h:
544         * dom/Node.cpp:
545         (WebCore::Node::~Node):
546         (WebCore::Node::insertedIntoDocument):
547         (WebCore::Node::removedFromDocument):
548         (WebCore::Node::willMoveToNewOwnerDocument):
549         (WebCore::Node::didMoveToNewOwnerDocument):
550         (WebCore::Node::addEventListener):
551         (WebCore::Node::removeEventListener):
552         (WebCore::Node::clearAttributeEventListener):
553
554 2009-09-15  Chris Fleizach  <cfleizach@apple.com>
555
556         Reviewed by Beth Dakin.
557
558         WAI-ARIA: add support for ranges, including the progressbar, slider, and spinbutton roles
559         https://bugs.webkit.org/show_bug.cgi?id=28841
560
561         Allow certain ARIA roles to change value with AXIncrement and AXDecrement. 
562         Consolidate increment/decrement/changeValue methods. 
563
564         Test: accessibility/aria-slider-value-change.html
565
566         * accessibility/AccessibilityObject.cpp:
567         * accessibility/AccessibilityRenderObject.cpp:
568         (WebCore::AccessibilityRenderObject::increment):
569         (WebCore::AccessibilityRenderObject::decrement):
570         (WebCore::AccessibilityRenderObject::changeValueByPercent):
571         (WebCore::AccessibilityRenderObject::setValue):
572         (WebCore::AccessibilityRenderObject::canSetFocusAttribute):
573         * accessibility/AccessibilityRenderObject.h:
574         * accessibility/AccessibilitySlider.cpp:
575         * accessibility/AccessibilitySlider.h:
576         * dom/Element.cpp:
577         (WebCore::Element::updateAfterAttributeChanged):
578
579 2009-09-15  Geoffrey Garen  <ggaren@apple.com>
580
581         Reviewed by Sam Weinig.
582
583         Removed the jsEventListeners set from JSDOMGlobalObject, to simplify
584         creation and destruction of JSDOMGlobalObject and event listeners.
585         
586         Added an abstract operator==() to EventListener, to replace the
587         jsEventListeners set's role in determining if two event listeners are
588         equal from the DOM's perspective.
589         
590         Added a type field to EventListener, and casting operations, to support
591         operator==() and other abstract operations.
592
593         * WebCore.xcodeproj/project.pbxproj:
594         * bindings/js/JSAbstractWorkerCustom.cpp:
595         (WebCore::JSAbstractWorker::addEventListener):
596         (WebCore::JSAbstractWorker::removeEventListener):
597         * bindings/js/JSDOMApplicationCacheCustom.cpp:
598         (WebCore::JSDOMApplicationCache::addEventListener):
599         (WebCore::JSDOMApplicationCache::removeEventListener):
600         * bindings/js/JSDOMGlobalObject.cpp:
601         * bindings/js/JSDOMGlobalObject.h:
602         * bindings/js/JSDOMWindowCustom.cpp:
603         (WebCore::JSDOMWindow::addEventListener):
604         (WebCore::JSDOMWindow::removeEventListener):
605         * bindings/js/JSDesktopNotificationsCustom.cpp:
606         (WebCore::JSNotification::addEventListener):
607         (WebCore::):
608         * bindings/js/JSEventListener.cpp:
609         (WebCore::JSEventListener::JSEventListener):
610         (WebCore::JSEventListener::~JSEventListener):
611         (WebCore::JSEventListener::markJSFunction):
612         (WebCore::JSEventListener::handleEvent):
613         (WebCore::JSEventListener::reportError):
614         (WebCore::JSEventListener::operator==):
615         * bindings/js/JSEventListener.h:
616         (WebCore::JSEventListener::cast):
617         * bindings/js/JSEventSourceCustom.cpp:
618         (WebCore::JSEventSource::addEventListener):
619         (WebCore::JSEventSource::removeEventListener):
620         * bindings/js/JSMessagePortCustom.cpp:
621         (WebCore::JSMessagePort::addEventListener):
622         (WebCore::JSMessagePort::removeEventListener):
623         * bindings/js/JSNodeCustom.cpp:
624         (WebCore::JSNode::addEventListener):
625         (WebCore::JSNode::removeEventListener):
626         * bindings/js/JSSVGElementInstanceCustom.cpp:
627         (WebCore::JSSVGElementInstance::addEventListener):
628         (WebCore::JSSVGElementInstance::removeEventListener):
629         * bindings/js/JSWorkerContextCustom.cpp:
630         (WebCore::JSWorkerContext::addEventListener):
631         (WebCore::JSWorkerContext::removeEventListener):
632         * bindings/js/JSXMLHttpRequestCustom.cpp:
633         (WebCore::JSXMLHttpRequest::addEventListener):
634         (WebCore::JSXMLHttpRequest::removeEventListener):
635         * bindings/js/JSXMLHttpRequestUploadCustom.cpp:
636         (WebCore::JSXMLHttpRequestUpload::addEventListener):
637         (WebCore::JSXMLHttpRequestUpload::removeEventListener):
638         * bindings/objc/ObjCEventListener.h:
639         (WebCore::ObjCEventListener::cast):
640         * bindings/objc/ObjCEventListener.mm:
641         (WebCore::ObjCEventListener::ObjCEventListener):
642         (WebCore::ObjCEventListener::operator==):
643         * dom/EventListener.h:
644         (WebCore::EventListener::):
645         (WebCore::EventListener::type):
646         (WebCore::EventListener::EventListener):
647         * dom/MessagePort.cpp:
648         (WebCore::MessagePort::addEventListener):
649         (WebCore::MessagePort::removeEventListener):
650         * dom/Node.cpp:
651         (WebCore::Node::removeEventListener):
652         * inspector/InspectorDOMAgent.cpp:
653         (WebCore::InspectorDOMAgent::InspectorDOMAgent):
654         (WebCore::InspectorDOMAgent::mainFrameDocument):
655         (WebCore::InspectorDOMAgent::operator==):
656         * inspector/InspectorDOMAgent.h:
657         (WebCore::InspectorDOMAgent::cast):
658         * loader/ImageDocument.cpp:
659         (WebCore::ImageEventListener::cast):
660         (WebCore::ImageEventListener::ImageEventListener):
661         (WebCore::ImageEventListener::operator==):
662         * loader/appcache/DOMApplicationCache.cpp:
663         (WebCore::DOMApplicationCache::addEventListener):
664         (WebCore::DOMApplicationCache::removeEventListener):
665         * notifications/Notification.cpp:
666         (WebCore::Notification::removeEventListener):
667         * page/DOMWindow.cpp:
668         (WebCore::DOMWindow::removeEventListener):
669         * page/EventSource.cpp:
670         (WebCore::EventSource::addEventListener):
671         (WebCore::EventSource::removeEventListener):
672         * svg/animation/SVGSMILElement.cpp:
673         (WebCore::ConditionEventListener::cast):
674         (WebCore::ConditionEventListener::ConditionEventListener):
675         (WebCore::ConditionEventListener::operator==):
676         (WebCore::ConditionEventListener::handleEvent):
677         * workers/AbstractWorker.cpp:
678         (WebCore::AbstractWorker::addEventListener):
679         (WebCore::AbstractWorker::removeEventListener):
680         * workers/WorkerContext.cpp:
681         (WebCore::WorkerContext::addEventListener):
682         (WebCore::WorkerContext::removeEventListener):
683         * xml/XMLHttpRequest.cpp:
684         (WebCore::XMLHttpRequest::addEventListener):
685         (WebCore::XMLHttpRequest::removeEventListener):
686         * xml/XMLHttpRequestUpload.cpp:
687         (WebCore::XMLHttpRequestUpload::addEventListener):
688         (WebCore::XMLHttpRequestUpload::removeEventListener):
689
690 2009-09-15  Alex Milowski  <alex@milowski.com>
691
692         Reviewed by Tor Arne Vestbø.
693
694         Added ENABLE_MATHML to feature defines
695
696         * Configurations/FeatureDefines.xcconfig:
697
698 2009-09-14  Andrew Richards  <randrew@gmail.com>
699
700         Reviewed by Sam Weinig.
701
702         Document.elementFromPoint() and Document.caretRangeFromPoint() erroneously returning null at points visible only after scrolling.
703         https://bugs.webkit.org/show_bug.cgi?id=29245
704
705         Use visibleContentRect() instead of boundsRect() when checking hit point bounds on viewport.
706
707         * dom/Document.cpp:
708         (WebCore::Document::elementFromPoint):
709         (WebCore::Document::caretRangeFromPoint):
710
711 2009-09-15  Jungshik Shin  <jshin@chromium.org>
712
713         Reviewed by Eric Seidel
714
715         http://bugs.webkit.org/show_bug.cgi?id=26660
716
717         Chromium Windows: When rotated, the baseline for a span of complex
718         script is completely misaligned with that of the adjacent 
719         simple script text. It's fixed by not applying the baseline offset for
720         the Skia code path.
721
722         Test: transforms/2d/hindi-rotated.html
723
724         * platform/graphics/chromium/UniscribeHelper.cpp:
725         (WebCore::UniscribeHelper::draw):
726
727 2009-09-15  Anders Carlsson  <andersca@apple.com>
728
729         Reviewed by Adam Roben.
730
731         Pass the PopupMenu pointer to CreateWindowEx and then get it from the LPCREATESTRUCT in
732         the WM_CREATE handler. This way we don't have to first create an zero size window and then size it.
733         
734         * platform/win/PopupMenuWin.cpp:
735         (WebCore::PopupMenu::show):
736         (WebCore::PopupMenu::PopupMenuWndProc):
737
738 2009-09-15  Drew Wilson  <atwilson@google.com>
739
740         Reviewed by Darin Adler.
741
742         MessageEvent should not be cancelable by default
743         https://bugs.webkit.org/show_bug.cgi?id=27846
744
745         * dom/MessageEvent.cpp:
746         (WebCore::MessageEvent::MessageEvent):
747         Changed constructor to set cancelable=false by default, per the HTML5 spec.
748
749 2009-09-15  Charles Wei  <charles.wei@torchmobile.com.cn>
750
751         Reviewed by George Staikos.
752
753         Fix SVG path parsing error if a command starts with dot '.'
754         https://bugs.webkit.org/show_bug.cgi?id=29123
755
756         * svg/SVGParserUtilities.cpp:
757         (WebCore::SVGPathParser::parseSVG):
758
759 2009-09-15  Alexander Pavlov  <apavlov@chromium.org>
760
761         Reviewed by Timothy Hatcher.
762
763         Implement conditional breakpoints in the Web Inspector frontend.
764         https://bugs.webkit.org/show_bug.cgi?id=28908
765
766         * English.lproj/localizedStrings.js:
767         * WebCore.gypi:
768         * WebCore.vcproj/WebCore.vcproj:
769         * inspector/front-end/Breakpoint.js:
770         (WebInspector.Breakpoint.prototype.set condition):
771         * inspector/front-end/Popup.js: Added.
772         (WebInspector.Popup):
773         (WebInspector.Popup.prototype.show):
774         (WebInspector.Popup.prototype.hide):
775         (WebInspector.Popup.prototype.get visible):
776         (WebInspector.Popup.prototype.set element):
777         (WebInspector.Popup.prototype.get element):
778         (WebInspector.Popup.prototype.positionElement):
779         (WebInspector.Popup.prototype.set anchor):
780         (WebInspector.Popup.prototype.get anchor):
781         (WebInspector.Popup.prototype.set autoHide):
782         (WebInspector.Popup.prototype._checkNotVisible):
783         (WebInspector.Popup.prototype._keyEventHandler):
784         (WebInspector.Popup.prototype._mouseDownEventHandler):
785         * inspector/front-end/SourceFrame.js:
786         (WebInspector.SourceFrame.prototype.revealLine):
787         (WebInspector.SourceFrame.prototype._loaded):
788         (WebInspector.SourceFrame.prototype._documentContextMenu):
789         (WebInspector.SourceFrame.prototype._documentMouseDown):
790         (WebInspector.SourceFrame.prototype._editBreakpointCondition.committed):
791         (WebInspector.SourceFrame.prototype._editBreakpointCondition.dismissed):
792         (WebInspector.SourceFrame.prototype._editBreakpointCondition):
793         (WebInspector.SourceFrame.prototype._showBreakpointConditionPopup):
794         (WebInspector.SourceFrame.prototype._createPopupElement):
795         (WebInspector.SourceFrame.prototype._addBreakpointToSource):
796         (WebInspector.SourceFrame.prototype._removeBreakpointFromSource):
797         (WebInspector.SourceFrame.prototype._drawBreakpointImagesIfNeeded.drawBreakpoint):
798         (WebInspector.SourceFrame.prototype._drawBreakpointImagesIfNeeded):
799         * inspector/front-end/WebKit.qrc:
800         * inspector/front-end/inspector.html:
801         * inspector/front-end/inspector.js:
802         (WebInspector.set currentFocusElement):
803         (WebInspector.set currentPanel):
804         (WebInspector.loaded):
805         (WebInspector.contextMenu):
806         (WebInspector.elementDragStart):
807         (WebInspector.updateResource):
808         (WebInspector.drawLoadingPieChart):
809         (WebInspector.linkifyURLAsNode):
810         (WebInspector.startEditing.getContent):
811         (WebInspector.startEditing.editingCancelled):
812         (WebInspector.startEditing.editingCommitted):
813         * inspector/front-end/utilities.js:
814         (Element.prototype.positionAt):
815         (Element.prototype.offsetRelativeToWindow):
816
817 2009-09-14  Brady Eidson  <beidson@apple.com>
818
819         Reviewed by Darin Adler.
820
821         Page cache should support pages with unload handlers as an experiment.
822         <rdar://problem/7196485> and https://bugs.webkit.org/show_bug.cgi?id=29021
823
824         For the experiment, only allow pages with unload handlers into the Page Cache on
825         Mac and Windows.
826
827         * loader/FrameLoader.cpp:
828         (WebCore::FrameLoader::canCachePageContainingThisFrame):
829         (WebCore::FrameLoader::logCanCacheFrameDecision):
830
831 2009-09-14  Simon Fraser  <simon.fraser@apple.com>
832
833         Fix the change in r48376 to do a null-check to fix a crashing test.
834
835         * dom/SelectElement.cpp:
836         (WebCore::SelectElement::menuListDefaultEventHandler):
837
838 2009-09-14  Simon Fraser  <simon.fraser@apple.com>
839
840         Reviewed by Dan Bernstein.
841
842         <rdar://problem/7047282> Safari crashes at WebCore::RenderMenuList::adjustInnerStyle() + 436
843         
844         Avoid a crash when a mouse event handler on a <select> changes the select from a popup
845         to a list (by setting the 'size' property) inside the event handler.
846
847         Test: fast/forms/select-change-popup-to-listbox-in-event-handler.html
848
849         * dom/SelectElement.cpp:
850         (WebCore::SelectElement::menuListDefaultEventHandler):
851
852 2009-09-14  Anders Carlsson  <andersca@apple.com>
853
854         Reviewed by Jon Honeycutt.
855
856         More PopupMenu cleanup.
857         
858         * platform/PopupMenu.h:
859         * platform/win/PopupMenuWin.cpp:
860         (WebCore::PopupMenu::show):
861         Call registerClass.
862         
863         (WebCore::PopupMenu::registerClass):
864         Make this a private static member function so it can refer to PopupMenuWndProc.
865         
866         (WebCore::PopupMenu::PopupMenuWndProc):
867         Try to get the PopupMenu and call its wndProc member function.
868         
869         (WebCore::PopupMenu::wndProc):
870         Make this a member function.
871
872 2009-09-14  Brady Eidson  <beidson@apple.com>
873
874         Not reviewed, maybe should've been:
875
876         Cleaning up more Windows-specific fallout from the fix for:
877         <rdar://problem/7174050> and https://bugs.webkit.org/show_bug.cgi?id=29160
878
879         * platform/network/cf/ResourceHandleCFNet.cpp:
880         (WebCore::WebCoreSynchronousLoader::load): Don't allow empty CFStrings as the stored credentials,
881           as related checks all look at nullity when they really mean to be looking for emptiness. 
882
883 2009-09-14  Anders Carlsson  <andersca@apple.com>
884
885         Speculative Qt build fix.
886         
887         * platform/qt/QWebPopup.cpp:
888         (WebCore::QWebPopup::hidePopup):
889
890 2009-09-14  Dirk Pranke  <dpranke@chromium.org>
891
892         Reviewed by Darin Fisher.
893
894         Fix RenderThemeChromiumWin::determineClassicState so that classic_state
895         matches the state values (and you get a single classic_state value
896         for a given {part,state} value. This change will be tested by a 
897         chromium patch that will land after this.
898
899         This will be tested by code landing downstream on Chromium.org; the
900         code does not execute on webkit.org.
901
902         * rendering/RenderThemeChromiumWin.cpp:
903         (WebCore::RenderThemeChromiumWin::determineClassicState):
904         (WebCore::RenderThemeChromiumWin::getThemeData):
905
906 2009-09-14  Anders Carlsson  <andersca@apple.com>
907
908         Reviewed by Adam Roben.
909
910         https://bugs.webkit.org/show_bug.cgi?id=29138
911         Simplify popup menu handling.
912
913         * platform/PopupMenuClient.h:
914         Rename hidePopup to popupDidHide.
915         
916         * platform/chromium/PopupMenuChromium.cpp:
917         (WebCore::PopupListBox::handleKeyEvent):        
918         (WebCore::PopupListBox::abandon):
919         (WebCore::PopupListBox::acceptIndex):
920         Call popupDidHide instead of hidePopup.
921         
922         * platform/gtk/PopupMenuGtk.cpp:
923         (WebCore::PopupMenu::menuUnmapped):
924         Ditto.
925         
926         * platform/mac/PopupMenuMac.mm:
927         (WebCore::PopupMenu::show):
928         Ditto.
929         
930         * platform/win/PopupMenuWin.cpp:
931         (WebCore::PopupMenu::hide):
932         Call popupDidHide.
933         
934         (WebCore::PopupWndProc):
935         Call PopupMenu::hide.
936         
937         * platform/wx/PopupMenuWx.cpp:
938         (WebCore::PopupMenu::OnMenuItemSelected):
939         Call popupDidHide.
940         
941         * rendering/RenderMenuList.cpp:
942         (WebCore::RenderMenuList::hidePopup):
943         (WebCore::RenderMenuList::popupDidHide):
944         * rendering/RenderMenuList.h:
945         Set the "popup is visible" flag in popupDidHide.
946         
947         * rendering/RenderTextControlSingleLine.cpp:
948         (WebCore::RenderTextControlSingleLine::hidePopup):
949         (WebCore::RenderTextControlSingleLine::popupDidHide):
950         * rendering/RenderTextControlSingleLine.h:
951         Ditto.
952
953 2009-09-14  Anders Carlsson  <andersca@apple.com>
954
955         Reviewed by David Hyatt.
956
957         - Fix <rdar://problem/7182275>.
958
959         Make sure that the newly created scrollbar's style is up to date.
960         
961         * platform/win/PopupMenuWin.cpp:
962         (WebCore::PopupMenu::~PopupMenu):
963         Call setParent so that the scrollbar's parts are torn down correctly.
964         
965         (WebCore::PopupMenu::show):
966         Call styleChanged.
967
968 2009-09-11  Jon Honeycutt  <jhoneycutt@apple.com>
969
970         <rdar://problem/7197644> WebKit should broadcast an MSAA event when
971         jumping to a named anchor
972
973         https://bugs.webkit.org/show_bug.cgi?id=28899
974
975         Reviewed by Adam Roben.
976
977         * accessibility/AXObjectCache.h:
978         (WebCore::AXObjectCache::):
979         Added declaration for handleScrolledToAnchor(). Added a new entry to
980         the enum of accessibility notifications.
981
982         * accessibility/AccessibilityObject.cpp:
983         (WebCore::AccessibilityObject::firstAccessibleObjectFromNode):
984         Code moved from AccessibilityRenderObject::internalLinkElement() and
985         refactored slightly; walks the tree until it finds a Node (with a
986         renderer) whose accessibility is not ignored.
987
988         * accessibility/AccessibilityObject.h:
989         Added a declaration for firstAccessibleObjectFromNode().
990
991         * accessibility/AccessibilityRenderObject.cpp:
992         (WebCore::AccessibilityRenderObject::internalLinkElement):
993         Code moved to AccessibilityObject::firstAccessibleObjectFromNode().
994
995         * accessibility/chromium/AXObjectCacheChromium.cpp:
996         (WebCore::AXObjectCache::handleScrolledToAnchor):
997         Stubbed.
998
999         * accessibility/gtk/AXObjectCacheAtk.cpp:
1000         (WebCore::AXObjectCache::handleScrolledToAnchor):
1001         Stubbed.
1002
1003         * accessibility/mac/AXObjectCacheMac.mm:
1004         (WebCore::AXObjectCache::postPlatformNotification):
1005         Add a default case that returns early for notifications that Mac
1006         doesn't handle.
1007         (WebCore::AXObjectCache::handleScrolledToAnchor):
1008         Stubbed.
1009
1010         * accessibility/win/AXObjectCacheWin.cpp:
1011         (WebCore::AXObjectCache::handleScrolledToAnchor):
1012         Post an AXScrolledToAnchor notification for the first accessible from
1013         the anchor Node.
1014         (WebCore::AXObjectCache::postPlatformNotification):
1015         If the notification is AXFocusedUIElementChanged, fire an
1016         EVENT_OBJECT_FOCUS. If the notification is AXScrolledToAnchor, fire
1017         EVENT_SYSTEM_SCROLLINGSTART, matching Firefox.
1018         (WebCore::AXObjectCache::handleFocusedUIElementChanged):
1019         Code moved to postPlatformNotification().
1020
1021         * page/FrameView.cpp:
1022         (WebCore::FrameView::scrollToAnchor):
1023         Call AXObjectCache::handleScrolledToAnchor().
1024
1025 2009-09-14  Anthony Ricaud  <rik@webkit.org>
1026
1027         Reviewed by Timothy Hatcher.
1028
1029         Cookies are not inspectable after reloading a page
1030         https://bugs.webkit.org/show_bug.cgi?id=29222
1031
1032         Create the cookieTreeElement on initialization instead of when the view is shown.
1033         Reset the selected element of the sidebar on reset.
1034
1035         * inspector/front-end/StoragePanel.js:
1036         (WebInspector.StoragePanel):
1037         (WebInspector.StoragePanel.prototype.show):
1038         (WebInspector.StoragePanel.prototype.reset):
1039
1040
1041 2009-09-14  Brady Eidson  <beidson@apple.com>
1042
1043         Windows build fix.
1044
1045         * platform/network/cf/ResourceHandleCFNet.cpp:
1046         (WebCore::ResourceHandle::didReceiveAuthenticationChallenge):
1047         (WebCore::ResourceHandle::receivedCredential):
1048         (WebCore::WebCoreSynchronousLoader::didReceiveChallenge):
1049         (WebCore::WebCoreSynchronousLoader::load):
1050
1051 2009-09-14  Brady Eidson  <beidson@apple.com>
1052
1053         Reviewed by Alexey Proskuryakov.
1054
1055         Safari 4 cannot be used to update firmware on Linksys routers.
1056         <rdar://problem/7174050> and https://bugs.webkit.org/show_bug.cgi?id=29160
1057
1058         In http://trac.webkit.org/changeset/42483, we disabled CFNetwork's session credential storage and 
1059         implemented our own in WebCore.
1060
1061         One feature we lost is that CFNetwork would automatically send previously authenticated credentials
1062         with new connections when the paths match, as allowed by RFC 2617 for HTTP Basic and Digest Authentication.  
1063
1064         Even though it's optional for User Agents to do this, (some?) Linksys routers rely on this behavior for
1065         HTTP Basic Authentication.  So now WebCore's CredentialStorage will track URL paths for Basic credentials.
1066
1067         We're not making this enhancement for Digest at this time, since we don't know of anything that broke
1068         due to the change in Digest behavior.
1069
1070         Test: http/tests/loading/basic-credentials-sent-automatically.html
1071               http/tests/loading/basic-auth-resend-wrong-credentials.html
1072
1073         * WebCore.base.exp:
1074         * WebCore.vcproj/WebCore.vcproj:
1075         * WebCore.xcodeproj/project.pbxproj:
1076
1077         * platform/network/Credential.cpp:
1078         (WebCore::Credential::isEmpty):
1079         * platform/network/Credential.h:
1080
1081         Add a slightly more full featured CredentialStore that will track URL paths a credential belongs to:
1082         * platform/network/CredentialStorage.cpp: Added.
1083         (WebCore::protectionSpaceToCredentialMap):
1084         (WebCore::originToDefaultCredentialMap):
1085         (WebCore::originStringFromURL):
1086         (WebCore::CredentialStorage::set):
1087         (WebCore::CredentialStorage::get):
1088         (WebCore::CredentialStorage::getDefaultAuthenticationCredential):
1089         * platform/network/CredentialStorage.h: Added.
1090
1091         Allow ProtectionSpace to be a hash key:
1092         * platform/network/ProtectionSpace.cpp:
1093         (WebCore::ProtectionSpace::ProtectionSpace):
1094         * platform/network/ProtectionSpace.h:
1095         (WebCore::ProtectionSpace::ProtectionSpace):
1096         (WebCore::ProtectionSpace::isHashTableDeletedValue):
1097         * platform/network/ProtectionSpaceHash.h: Added.
1098         (WebCore::ProtectionSpaceHash::hash):
1099         (WebCore::ProtectionSpaceHash::equal):
1100
1101         Allow ResourceHandles to remember the initial credential they used:
1102         * platform/network/ResourceHandleInternal.h:
1103
1104         Allow mutable ResourceRequests to update their platform object if HTTP header fields change:
1105         * platform/network/ResourceRequestBase.cpp:
1106         (WebCore::ResourceRequestBase::addHTTPHeaderField):
1107
1108         Remove WebCoreCredentialStorage:
1109         * platform/network/cf/AuthenticationCF.cpp:
1110         * platform/network/cf/AuthenticationCF.h:
1111         * platform/network/mac/AuthenticationMac.h:
1112         * platform/network/mac/AuthenticationMac.mm:
1113
1114         Change ResourceHandleCFNet to try to use stored credentials on new connections, if appropriate:
1115         * platform/network/cf/ResourceHandleCFNet.cpp:
1116         (WebCore::ResourceHandle::start):
1117         (WebCore::ResourceHandle::didReceiveAuthenticationChallenge): Only try the ProtectionSpace key'ed
1118           Credential if it does not match the initially used Credential.
1119         (WebCore::ResourceHandle::receivedCredential):
1120         (WebCore::WebCoreSynchronousLoader::didReceiveChallenge): Only try the ProtectionSpace key'ed
1121           Credential if it does not match the initially used Credential.
1122         (WebCore::WebCoreSynchronousLoader::load):
1123
1124         Change ResourceHandleMac to try to use stored credentials on new connections, if appropriate:
1125         * platform/network/mac/ResourceHandleMac.mm:
1126         (WebCore::ResourceHandle::start):
1127         (WebCore::ResourceHandle::didReceiveAuthenticationChallenge): Only try the ProtectionSpace key'ed
1128           Credential if it does not match the initially used Credential.
1129         (WebCore::ResourceHandle::receivedCredential):
1130         (-[WebCoreSynchronousLoader connection:didReceiveAuthenticationChallenge:]): Only try the 
1131           ProtectionSpace key'ed Credential if it does not match the initially used Credential.
1132         (+[WebCoreSynchronousLoader loadRequest:allowStoredCredentials:returningResponse:error:]):
1133
1134         Add base64-ability to CString:
1135         * platform/text/CString.cpp:
1136         (WebCore::CStringBuffer::base64Encode):
1137         (WebCore::CString::base64Encode):
1138         * platform/text/CString.h:
1139         (WebCore::CStringBuffer::create):
1140         (WebCore::CStringBuffer::CStringBuffer):
1141
1142 2009-09-12  Mark Rowe  <mrowe@apple.com>
1143
1144         Reviewed by Dan Bernstein.
1145
1146         Fix <rdar://problem/6954546> Crashes in WebCore::RenderPart::setWidget below FrameLoader::loadPlugin.
1147
1148         The calls to FrameLoader::requestObject within RenderPartObject::updateWidget can result in a plug-in
1149         being initialized.  This can run cause arbitrary JavaScript to run and may result in the RenderPartObject
1150         being detached from the render tree and destroyed, causing a crash like <rdar://problem/6954546>.
1151
1152         No test is possible until <rdar://problem/7090444> is fixed.
1153
1154         * rendering/RenderPartObject.cpp:
1155         (WebCore::RenderPartObject::updateWidget): Ensure that we stay alive for the duration of plug-in initialization.
1156
1157 2009-09-12  Mark Rowe  <mrowe@apple.com>
1158
1159         Reviewed by Dan Bernstein.
1160
1161         Add RenderWidgetProtector to simplify protecting a RenderWidget from destruction for the
1162         duration of a function.  Deploy it within RenderWidget.
1163
1164         * rendering/RenderWidget.cpp:
1165         (WebCore::RenderWidget::setWidgetGeometry):
1166         (WebCore::RenderWidget::updateWidgetPosition): Use a RefPtr rather than explicitly
1167         ref'ing and deref'ing the node.
1168         * rendering/RenderWidget.h:
1169         * rendering/RenderWidgetProtector.h:
1170         (WebCore::RenderWidgetProtector::RenderWidgetProtector):
1171         (WebCore::RenderWidgetProtector::~RenderWidgetProtector):
1172
1173 2009-09-14  Cameron McCormack  <cam@mcc.id.au>
1174
1175         Reviewed by Eric Seidel.
1176
1177         CodeGenerator.pm needs some cleaning up
1178         https://bugs.webkit.org/show_bug.cgi?id=29238
1179
1180         * bindings/scripts/CodeGenerator.pm:
1181         (FindParentsRecursively): Removed; its functionality is now handled in
1182         AddMethodsConstantsAndAttributesFromParentClasses.
1183         (ForAllParents): New function that visits an interface's ancestors and
1184         invokes a callback for each one.
1185         (AddMethodsConstantsAndAttributesFromParentClasses): Simplified by using
1186         ForAllParents.
1187         (GetMethodsAndAttributesFromParentClasses): Ditto.
1188         (IDLFileForInterface): Factored out previous calls to ScanDirectory into
1189         this new function, which returns the filename containing a given IDL
1190         interface definition.
1191         (ParseInterface): Simplified by using IDLFileForInterface.
1192         (ScanDirectory): Removed in lieu of IDLFileForInterface.
1193         * bindings/scripts/CodeGeneratorV8.pm: Drop call to
1194         FindParentsRecursively and get the list of parents from the
1195         AddMethodsConstantsAndAttributesFromParentClasses call instead.
1196
1197 2009-09-14  Yael Aharon  <yael.aharon@nokia.com>
1198
1199         Reviewed by Tor Arne Vestbø.
1200
1201         [Qt] Assert hit when dropping a file in QtLauncher
1202         https://bugs.webkit.org/show_bug.cgi?id=29242
1203
1204         Qt's implementation of DropData::asURL does not return a URL encoded string
1205         as expected.
1206
1207         * platform/qt/DragDataQt.cpp:
1208         (WebCore::DragData::asURL):
1209
1210 2009-09-13  Kevin Ollivier  <kevino@theolliviers.com>
1211
1212         wx build fix, file was missed during TLS.cpp removal.
1213
1214         * page/wx/FrameWx.cpp: Added.
1215         (WebCore::Frame::dragImageForSelection):
1216
1217 2009-09-13  Anthony Ricaud  <rik@webkit.org>
1218
1219         Reviewed by Oliver Hunt.
1220
1221         Web Inspector: Add "New Style Rule" to the localizedStrings
1222         https://bugs.webkit.org/show_bug.cgi?id=29237
1223
1224         * English.lproj/localizedStrings.js:
1225
1226 2009-09-13  Kevin Watters  <kevinwatters@gmail.com>
1227
1228         Reviewed by Kevin Ollivier.
1229
1230         [wx] Implement filesystem functions.
1231
1232         https://bugs.webkit.org/show_bug.cgi?id=29196
1233
1234         * platform/wx/FileSystemWx.cpp:
1235         (WebCore::fileExists):
1236         (WebCore::deleteFile):
1237         (WebCore::deleteEmptyDirectory):
1238         (WebCore::getFileSize):
1239         (WebCore::getFileModificationTime):
1240         (WebCore::makeAllDirectories):
1241         (WebCore::pathByAppendingComponent):
1242         (WebCore::homeDirectoryPath):
1243         (WebCore::directoryName):
1244
1245 2009-09-12  Kevin Ollivier  <kevino@theolliviers.com>
1246
1247         wx build fixes for wx 2.9.
1248
1249         * platform/wx/ScrollbarThemeWx.cpp:
1250         * platform/wx/wxcode/gtk/scrollbar_render.cpp:
1251         (wxGetGdkWindowForDC):
1252
1253 2009-09-12  Oliver Hunt  <oliver@apple.com>
1254
1255         Reviewed by Maciej Stachowiak.
1256
1257         [ES5] Implement Object.keys
1258         https://bugs.webkit.org/show_bug.cgi?id=29170
1259
1260         Switch from getPropertyNames to getOwnPropertyNames, and provide custom
1261         getPropertyNames to DOMWindow, DOMWindowShell and QuarantinedObjectWrapper
1262         in order to ensure correct semantics are maintained.
1263
1264         Test: fast/js/Object-keys.html
1265
1266         * bindings/js/JSDOMWindowCustom.cpp:
1267         (WebCore::JSDOMWindow::getOwnPropertyNames):
1268         * bindings/js/JSDOMWindowShell.cpp:
1269         (WebCore::JSDOMWindowShell::getOwnPropertyNames):
1270         * bindings/js/JSDOMWindowShell.h:
1271         * bindings/js/JSHistoryCustom.cpp:
1272         (WebCore::JSHistory::getOwnPropertyNames):
1273         * bindings/js/JSLocationCustom.cpp:
1274         (WebCore::JSLocation::getOwnPropertyNames):
1275         * bindings/js/JSQuarantinedObjectWrapper.cpp:
1276         (WebCore::JSQuarantinedObjectWrapper::getPropertyNames):
1277         (WebCore::JSQuarantinedObjectWrapper::getOwnPropertyNames):
1278         * bindings/js/JSQuarantinedObjectWrapper.h:
1279         * bindings/js/JSStorageCustom.cpp:
1280         (WebCore::JSStorage::getOwnPropertyNames):
1281         * bindings/scripts/CodeGeneratorJS.pm:
1282         * bridge/runtime_object.cpp:
1283         (JSC::RuntimeObjectImp::getPropertyNames):
1284         (JSC::RuntimeObjectImp::getOwnPropertyNames):
1285         * bridge/runtime_object.h:
1286
1287 2009-09-12  Sam Weinig  <sam@webkit.org>
1288
1289         Reviewed by Anders Carlsson.
1290
1291         Fix for https://bugs.webkit.org/show_bug.cgi?id=29219
1292         Document.elementFromPoint() should take page scroll into consideration
1293
1294         Test: fast/dom/elementFromPoint-relative-to-viewport.html
1295
1296         * dom/Document.cpp:
1297         (WebCore::Document::elementFromPoint):
1298         (WebCore::Document::caretRangeFromPoint):
1299
1300 2009-09-12  Sam Weinig  <sam@webkit.org>
1301
1302         Reviewed by Maciej Stachowiak.
1303
1304         Fix for https://bugs.webkit.org/show_bug.cgi?id=29217
1305         Document.caretRangeFromPoint should take the scroll offset into account before hit testing
1306
1307         In accordance with the CSSOM View Module spec, Document.caretRangeFromPoint should interpret
1308         the point passed to it as relative to the viewport, not the document.
1309
1310         Test: fast/dom/Document/CaretRangeFromPoint/hittest-relative-to-viewport.html
1311
1312         * dom/Document.cpp:
1313         (WebCore::Document::caretRangeFromPoint):
1314
1315 2009-09-11  Chris Marrin  <cmarrin@apple.com>
1316
1317         Reviewed by Oliver Hunt.
1318
1319         Added some manual tests to show WebGL in action
1320         https://bugs.webkit.org/show_bug.cgi?id=29215
1321
1322         * manual-tests/webgl: Added.
1323         * manual-tests/webgl/Earth.html: Added.
1324         * manual-tests/webgl/ManyPlanetsDeep.html: Added.
1325         * manual-tests/webgl/SpinningBox.html: Added.
1326         * manual-tests/webgl/TeapotPerPixel.html: Added.
1327         * manual-tests/webgl/TeapotPerVertex.html: Added.
1328         * manual-tests/webgl/resources: Added.
1329         * manual-tests/webgl/resources/CanvasMatrix.js: Added.
1330         * manual-tests/webgl/resources/earthmap1k.jpg: Added.
1331         * manual-tests/webgl/resources/mars500x250.png: Added.
1332         * manual-tests/webgl/resources/teapot.obj: Added.
1333         * manual-tests/webgl/resources/utils3d.js: Added.
1334  
1335 2009-09-10  Chris Fleizach  <cfleizach@apple.com>
1336
1337         Reviewed by Darin Adler.
1338
1339         aria definition role spelled wrong "defintion"
1340         https://bugs.webkit.org/show_bug.cgi?id=28840
1341
1342         Test: accessibility/aria-slider-value-change.html
1343
1344         * accessibility/AccessibilityRenderObject.cpp:
1345         (WebCore::RoleEntry::):
1346
1347 2009-09-11  Erik Arvidsson  <arv@chromium.org>
1348
1349         Reviewed by Eric Seidel.
1350
1351         Fixes an assert in Node::isFocusable which was causing crashes in certain cases.
1352         https://bugs.webkit.org/show_bug.cgi?id=29210
1353
1354         * dom/Node.cpp:
1355         (WebCore::Node::isFocusable):
1356
1357 2009-09-11  Chris Marrin  <cmarrin@apple.com>
1358
1359         Reviewed by Oliver Hunt.
1360
1361         Added variants to uniform* and vertexAttrib* calls which take sequence<> in place of CanvasArray
1362         https://bugs.webkit.org/show_bug.cgi?id=29139
1363         
1364         I also added a data() call to each of the CanvasArray subclasses to give back a types pointer
1365         to the baseAddress().
1366
1367         * Configurations/FeatureDefines.xcconfig:
1368         * bindings/js/JSCanvasRenderingContext3DCustom.cpp:
1369         (WebCore::toArray):
1370         (WebCore::):
1371         (WebCore::dataFunctionf):
1372         (WebCore::dataFunctioni):
1373         (WebCore::dataFunctionMatrix):
1374         (WebCore::JSCanvasRenderingContext3D::uniform1fv):
1375         (WebCore::JSCanvasRenderingContext3D::uniform1iv):
1376         (WebCore::JSCanvasRenderingContext3D::uniform2fv):
1377         (WebCore::JSCanvasRenderingContext3D::uniform2iv):
1378         (WebCore::JSCanvasRenderingContext3D::uniform3fv):
1379         (WebCore::JSCanvasRenderingContext3D::uniform3iv):
1380         (WebCore::JSCanvasRenderingContext3D::uniform4fv):
1381         (WebCore::JSCanvasRenderingContext3D::uniform4iv):
1382         (WebCore::JSCanvasRenderingContext3D::uniformMatrix2fv):
1383         (WebCore::JSCanvasRenderingContext3D::uniformMatrix3fv):
1384         (WebCore::JSCanvasRenderingContext3D::uniformMatrix4fv):
1385         (WebCore::JSCanvasRenderingContext3D::vertexAttrib1fv):
1386         (WebCore::JSCanvasRenderingContext3D::vertexAttrib2fv):
1387         (WebCore::JSCanvasRenderingContext3D::vertexAttrib3fv):
1388         (WebCore::JSCanvasRenderingContext3D::vertexAttrib4fv):
1389         * html/canvas/CanvasByteArray.h:
1390         (WebCore::CanvasByteArray::data):
1391         * html/canvas/CanvasFloatArray.h:
1392         (WebCore::CanvasFloatArray::data):
1393         * html/canvas/CanvasIntArray.h:
1394         (WebCore::CanvasIntArray::data):
1395         * html/canvas/CanvasRenderingContext3D.cpp:
1396         (WebCore::CanvasRenderingContext3D::uniform1fv):
1397         (WebCore::CanvasRenderingContext3D::uniform1iv):
1398         (WebCore::CanvasRenderingContext3D::uniform2fv):
1399         (WebCore::CanvasRenderingContext3D::uniform2iv):
1400         (WebCore::CanvasRenderingContext3D::uniform3fv):
1401         (WebCore::CanvasRenderingContext3D::uniform3iv):
1402         (WebCore::CanvasRenderingContext3D::uniform4fv):
1403         (WebCore::CanvasRenderingContext3D::uniform4iv):
1404         (WebCore::CanvasRenderingContext3D::uniformMatrix2fv):
1405         (WebCore::CanvasRenderingContext3D::uniformMatrix3fv):
1406         (WebCore::CanvasRenderingContext3D::uniformMatrix4fv):
1407         (WebCore::CanvasRenderingContext3D::vertexAttrib1fv):
1408         (WebCore::CanvasRenderingContext3D::vertexAttrib2fv):
1409         (WebCore::CanvasRenderingContext3D::vertexAttrib3fv):
1410         (WebCore::CanvasRenderingContext3D::vertexAttrib4fv):
1411         * html/canvas/CanvasRenderingContext3D.h:
1412         * html/canvas/CanvasRenderingContext3D.idl:
1413         * html/canvas/CanvasShortArray.h:
1414         (WebCore::CanvasShortArray::data):
1415         * html/canvas/CanvasUnsignedByteArray.h:
1416         (WebCore::CanvasUnsignedByteArray::data):
1417         * html/canvas/CanvasUnsignedIntArray.h:
1418         (WebCore::CanvasUnsignedIntArray::data):
1419         * html/canvas/CanvasUnsignedShortArray.h:
1420         (WebCore::CanvasUnsignedShortArray::data):
1421         * platform/graphics/GraphicsContext3D.h:
1422         * platform/graphics/mac/GraphicsContext3DMac.cpp:
1423         (WebCore::GraphicsContext3D::uniform1fv):
1424         (WebCore::GraphicsContext3D::uniform2fv):
1425         (WebCore::GraphicsContext3D::uniform3fv):
1426         (WebCore::GraphicsContext3D::uniform4fv):
1427         (WebCore::GraphicsContext3D::uniform1iv):
1428         (WebCore::GraphicsContext3D::uniform2iv):
1429         (WebCore::GraphicsContext3D::uniform3iv):
1430         (WebCore::GraphicsContext3D::uniform4iv):
1431         (WebCore::GraphicsContext3D::uniformMatrix2fv):
1432         (WebCore::GraphicsContext3D::uniformMatrix3fv):
1433         (WebCore::GraphicsContext3D::uniformMatrix4fv):
1434         (WebCore::GraphicsContext3D::vertexAttrib1fv):
1435         (WebCore::GraphicsContext3D::vertexAttrib2fv):
1436         (WebCore::GraphicsContext3D::vertexAttrib3fv):
1437         (WebCore::GraphicsContext3D::vertexAttrib4fv):
1438
1439 2009-09-11  Fumitoshi Ukai  <ukai@chromium.org>
1440
1441         Reviewed by Eric Seidel.
1442
1443         Add ENABLE(WEB_SOCKETS) guards.
1444         https://bugs.webkit.org/show_bug.cgi?id=29174
1445
1446         * bindings/v8/custom/V8WebSocketCustom.cpp:
1447
1448 2009-09-11  Eric Seidel  <eric@webkit.org>
1449
1450         No review, rolling out r48229.
1451         http://trac.webkit.org/changeset/48229
1452
1453         * WebCore.base.exp:
1454         * dom/Clipboard.cpp:
1455         (WebCore::Clipboard::Clipboard):
1456         (WebCore::Clipboard::sourceOperation):
1457         * page/DragController.cpp:
1458         (WebCore::DragController::DragController):
1459         (WebCore::DragController::dragExited):
1460         (WebCore::DragController::performDrag):
1461         (WebCore::DragController::dragEnteredOrUpdated):
1462         (WebCore::DragController::tryDHTMLDrag):
1463         (WebCore::DragController::startDrag):
1464         * page/DragController.h:
1465         * page/EventHandler.cpp:
1466         (WebCore::EventHandler::updateDragAndDrop):
1467         (WebCore::EventHandler::dragSourceMovedTo):
1468         (WebCore::EventHandler::handleDrag):
1469         * page/EventHandler.h:
1470
1471 2009-09-11  Michelangelo De Simone  <micdesim@gmail.com>
1472
1473         Fix the build.
1474
1475         * html/ValidityState.cpp:
1476         (WebCore::ValidityState::typeMismatch):
1477
1478 2009-09-11  Michelangelo De Simone  <micdesim@gmail.com>
1479
1480         Reviewed by Antti Koivisto.
1481
1482         https://bugs.webkit.org/show_bug.cgi?id=27456
1483         Added support for static validation of url in
1484         ValidityState, for url state inputs.
1485         From HTML5 specs:
1486         http://www.whatwg.org/specs/web-apps/current-work/#url-state
1487
1488         Test: fast/forms/ValidityState-typeMismatch-url.html
1489
1490         * html/ValidityState.cpp:
1491         (WebCore::ValidityState::typeMismatch):
1492
1493 2009-09-11  Evan Stade  <estade@chromium.org>
1494
1495         Reviewed by Darin Adler.
1496
1497         Revert r47992: Expose functions to change the focus ring color for
1498         Linux Chromium.
1499
1500         As Darin Fisher has pointed out, there is a better way to do this.
1501
1502         * rendering/RenderThemeChromiumLinux.cpp:
1503         (WebCore::RenderThemeChromiumLinux::RenderThemeChromiumLinux):
1504         * rendering/RenderThemeChromiumLinux.h:
1505
1506 2009-09-11  Alexey Proskuryakov  <ap@webkit.org>
1507
1508         Reviewed by Geoff Garen.
1509
1510         https://bugs.webkit.org/show_bug.cgi?id=29207
1511         Add checks for using WebCore JS context on secondary threads
1512
1513         * bindings/js/JSDOMWindowBase.cpp: (WebCore::JSDOMWindowBase::commonJSGlobalData):
1514         Set the new debug-only mainThreadOnly flag.
1515
1516 2009-09-11  Brian Weinstein  <bweinstein@apple.com>
1517
1518         Reviewed by Timothy Hatcher.
1519
1520         The inspector should have scope bars.
1521         https://bugs.webkit.org/show_bug.cgi?id=14353
1522         
1523         Add scope bars to the console, so the user can choose which category
1524         of messages they want to see (All, Errors, Warnings, Logs), and they
1525         can choose from one or more of {Errors, Warnings, Logs}.
1526
1527         * inspector/front-end/ConsoleView.js:
1528         (WebInspector.ConsoleView.createFilterElement):
1529         (WebInspector.ConsoleView):
1530         (WebInspector.ConsoleView.prototype._updateFilter):
1531         (WebInspector.ConsoleView.prototype.filter):
1532         (WebInspector.ConsoleView.prototype.attach):
1533         * inspector/front-end/inspector.css:
1534         * inspector/front-end/inspector.html:
1535
1536 2009-09-11  Yusuke Sato  <yusukes@chromium.org>
1537
1538         Reviewed by Darin Fisher.
1539
1540         [Chromium] Complex text doesn't show up with text stroking
1541         https://bugs.webkit.org/show_bug.cgi?id=28707
1542
1543         Added extra NULL checks for HDC. This is the second fix for issue 28707,
1544         and the fix is similar to http://trac.webkit.org/changeset/45482.
1545
1546         * platform/graphics/chromium/FontChromiumWin.cpp:
1547         (WebCore::Font::drawComplexText):
1548         * platform/graphics/chromium/UniscribeHelper.cpp:
1549         (WebCore::UniscribeHelper::draw):
1550
1551 2009-09-11  Cameron McCormack  <cam@mcc.id.au>
1552
1553         Reviewed by Eric Seidel.
1554
1555         Make ElementTimeControl methods return void and not throw.
1556         https://bugs.webkit.org/show_bug.cgi?id=28831
1557
1558         SVG 1.1 erratum:
1559         http://www.w3.org/2003/01/REC-SVG11-20030114-errata#elementtimecontrol-interface
1560
1561         Test: svg/dom/smil-methods.svg
1562
1563         * svg/ElementTimeControl.h: Change return type from bool to void and remove exception argument.
1564         * svg/ElementTimeControl.idl: Change return type from bool to void and remove raises claus.
1565         * svg/SVGAnimationElement.cpp:
1566         (WebCore::SVGAnimationElement::beginElement): Change return type from bool to void and remove exception argument.
1567         (WebCore::SVGAnimationElement::beginElementAt): Ditto.
1568         (WebCore::SVGAnimationElement::endElement): Ditto.
1569         (WebCore::SVGAnimationElement::endElementAt): Ditto.
1570         * svg/SVGAnimationElement.h: Ditto.
1571
1572 2009-09-11  Chris Marrin  <cmarrin@apple.com>
1573
1574         Reviewed by Oliver Hunt.
1575
1576         Added support for texImage2D which takes CanvasArray
1577         https://bugs.webkit.org/show_bug.cgi?id=29191
1578
1579         * bindings/js/JSCanvasRenderingContext3DCustom.cpp:
1580         (WebCore::JSCanvasRenderingContext3D::texImage2D):
1581         * platform/graphics/mac/GraphicsContext3DMac.cpp:
1582         (WebCore::GraphicsContext3D::texImage2D):
1583
1584 2009-09-11  Steve Falkenburg  <sfalken@apple.com>
1585
1586         Reviewed by Darin Adler.
1587
1588         Allow WebKit clients to opt out of high resolution timers on Windows.
1589         https://bugs.webkit.org/show_bug.cgi?id=29192
1590
1591         * page/Settings.cpp:
1592         (WebCore::Settings::setShouldUseHighResolutionTimers): Added.
1593         * page/Settings.h: Added getter/setter for shouldUseHighResolutionTimers.
1594         (WebCore::Settings::shouldUseHighResolutionTimers): Added.
1595         * platform/win/SharedTimerWin.cpp:
1596         (WebCore::setSharedTimerFireTime): Don't run high resolution timer code if it is disabled.
1597
1598 2009-09-11  Christian Plesner Hansen  <christian.plesner.hansen@gmail.com>
1599
1600         Reviewed by Adam Barth.
1601
1602         [v8] Share persistent context handles between events        
1603         Change events to use a single ref-counted shared persistent handle
1604         to the context in which to run, rather than create a new
1605         persistent handle for each new event which puts pressure on the
1606         gc.
1607         
1608         https://bugs.webkit.org/show_bug.cgi?id=29077
1609
1610         * bindings/v8/ScheduledAction.cpp:
1611         (WebCore::ScheduledAction::execute):
1612         * bindings/v8/SharedPersistent.h: Added.
1613         (WebCore::SharedPersistent::set):
1614         (WebCore::SharedPersistent::get):
1615         (WebCore::SharedPersistent::disposeHandle):
1616         (WebCore::SharedPersistent::create):
1617         (WebCore::SharedPersistent::SharedPersistent):
1618         * bindings/v8/V8AbstractEventListener.cpp:
1619         (WebCore::V8AbstractEventListener::V8AbstractEventListener):
1620         (WebCore::V8AbstractEventListener::handleEvent):
1621         * bindings/v8/V8AbstractEventListener.h:
1622         * bindings/v8/V8IsolatedWorld.cpp:
1623         (WebCore::V8IsolatedWorld::V8IsolatedWorld):
1624         (WebCore::V8IsolatedWorld::~V8IsolatedWorld):
1625         * bindings/v8/V8IsolatedWorld.h:
1626         (WebCore::V8IsolatedWorld::context):
1627         (WebCore::V8IsolatedWorld::shared_context):
1628         * bindings/v8/V8Proxy.cpp:
1629         (WebCore::V8Proxy::evaluateInNewContext):
1630         (WebCore::V8Proxy::createWrapperFromCacheSlowCase):
1631         (WebCore::V8Proxy::isContextInitialized):
1632         (WebCore::V8Proxy::updateDocumentWrapperCache):
1633         (WebCore::V8Proxy::clearDocumentWrapperCache):
1634         (WebCore::V8Proxy::disposeContextHandles):
1635         (WebCore::V8Proxy::clearForClose):
1636         (WebCore::V8Proxy::clearForNavigation):
1637         (WebCore::V8Proxy::setSecurityToken):
1638         (WebCore::V8Proxy::updateDocument):
1639         (WebCore::V8Proxy::initContextIfNeeded):
1640         (WebCore::V8Proxy::shared_context):
1641         (WebCore::V8Proxy::mainWorldContext):
1642         (WebCore::V8Proxy::setContextDebugId):
1643         * bindings/v8/V8Proxy.h:
1644         (WebCore::V8Proxy::V8Proxy):
1645         (WebCore::V8Proxy::context):
1646         (WebCore::V8Proxy::shared_context):
1647
1648 2009-09-11  Anton Muhin  <antonm@chromium.org>
1649
1650         Reviewed by David Levin.
1651
1652         Create a real handle (one which would save an object from GC).
1653         https://bugs.webkit.org/show_bug.cgi?id=29150
1654
1655         * bindings/v8/V8Binding.cpp:
1656         (WebCore::v8ExternalString):
1657
1658 2009-09-11  Anton Muhin  <antonm@chromium.org>
1659
1660         Reviewed by David Levin.
1661
1662         Inline WebCore::v8String as it only invokes WebCore::v8ExternalString.
1663         https://bugs.webkit.org/show_bug.cgi?id=29152
1664
1665         * bindings/v8/V8Binding.cpp:
1666         * bindings/v8/V8Binding.h:
1667         (WebCore::v8String):
1668
1669 2009-09-11  Ariya Hidayat  <ariya.hidayat@nokia.com>
1670
1671         Reviewed by Simon Hausmann.
1672
1673         Changed URLs from qtsoftware.com to qt.nokia.com, as part of a general
1674         renaming.
1675
1676         * ChangeLog-2009-06-16:
1677
1678 2009-09-11  Thiago Macieira  <thiago.macieira@nokia.com>
1679
1680         Reviewed by Simon Hausmann.
1681
1682         Use LIBS_PRIVATE on Qt/Mac.
1683
1684         On the Mac, it means "-framework ApplicationServices -framework Carbon
1685         -framework AppKit" are no longer part of the default LIBS in Qt
1686         applications. This required a lot of fixes where we used Mac-specific
1687         code in Qt.
1688
1689         * WebCore.pro:
1690
1691 2009-09-11  Cameron McCormack  <cam@mcc.id.au>
1692
1693         Reviewed by Eric Seidel.
1694
1695         Remove duplicated WK_{u,l}cfirst subs from CodeGeneratorV8.pm
1696         https://bugs.webkit.org/show_bug.cgi?id=29165
1697
1698         * bindings/scripts/CodeGeneratorV8.pm: Remove WK_ucfirst and
1699         WK_lcfirst, and call the ones in CodeGenerator.pm instead.
1700
1701 2009-09-11  Yongjun Zhang  <yongjun.zhang@nokia.com>
1702
1703         Reviewed by Darin Adler.
1704
1705         https://bugs.webkit.org/show_bug.cgi?id=29132
1706         Symbian winscw compiler fails compiling WebCore/text/RegularExpression.cpp.
1707
1708         Add RegularExpression class qualifier before Private.
1709
1710         * platform/text/RegularExpression.cpp:
1711
1712 2009-09-11  Yongjun Zhang  <yongjun.zhang@nokia.com>
1713
1714         Reviewed by Darin Adler.
1715
1716         https://bugs.webkit.org/show_bug.cgi?id=29131
1717         Use a different variadic macro format for Symbian compiler.
1718         
1719         Use arg... instead of ellipsis in variadic macro.        
1720
1721         * platform/StaticConstructors.h:
1722
1723 2009-09-11  Jocelyn Turcotte  <jocelyn.turcotte@nokia.com>
1724
1725         Reviewed by Simon Hausmann.
1726
1727         https://bugs.webkit.org/show_bug.cgi?id=28806
1728
1729         [Qt] Make the WebInspector available as a QWidget.
1730
1731         * WebCore.pro:
1732
1733 2009-09-11  Simon Hausmann  <simon.hausmann@nokia.com>
1734
1735         Unreviewed fix for the Web Inspector with the Qt build.
1736
1737         Re-generate the Qt resource file by running
1738         WebKitTools/Scripts/generate-qt-inspector-resource
1739
1740         * inspector/front-end/WebKit.qrc:
1741
1742 2009-09-11  Simon Hausmann  <simon.hausmann@nokia.com>
1743
1744         Fix the Qt build, remove stray semicolon from function definition.
1745
1746         * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
1747         (WebCore::MediaPlayerPrivate::buffered):
1748
1749 2009-09-10  Adam Barth  <abarth@webkit.org>
1750
1751         Reviewed by Sam Weinig.
1752
1753         Detect mixed content
1754         https://bugs.webkit.org/show_bug.cgi?id=29003
1755
1756         Detect some basic kinds of mixed content (HTTP content loaded into an
1757         HTTPS context).  This new detection logic isn't perfect, but it's a
1758         place to start.
1759
1760         Tests: http/tests/security/mixedContent/about-blank-iframe-in-main-frame.html
1761                http/tests/security/mixedContent/data-url-iframe-in-main-frame.html
1762                http/tests/security/mixedContent/data-url-script-in-iframe.html
1763                http/tests/security/mixedContent/insecure-css-in-iframe.html
1764                http/tests/security/mixedContent/insecure-css-in-main-frame.html
1765                http/tests/security/mixedContent/insecure-iframe-in-iframe.html
1766                http/tests/security/mixedContent/insecure-iframe-in-main-frame.html
1767                http/tests/security/mixedContent/insecure-image-in-iframe.html
1768                http/tests/security/mixedContent/insecure-image-in-main-frame.html
1769                http/tests/security/mixedContent/insecure-script-in-iframe.html
1770                http/tests/security/mixedContent/redirect-http-to-https-iframe-in-main-frame.html
1771                http/tests/security/mixedContent/redirect-http-to-https-script-in-iframe.html
1772                http/tests/security/mixedContent/redirect-https-to-http-iframe-in-main-frame.html
1773                http/tests/security/mixedContent/redirect-https-to-http-script-in-iframe.html
1774
1775         * loader/DocLoader.cpp:
1776         (WebCore::DocLoader::canRequest):
1777         (WebCore::DocLoader::requestResource):
1778         (WebCore::DocLoader::checkCacheObjectStatus):
1779         * loader/FrameLoader.cpp:
1780         (WebCore::FrameLoader::isMixedContent):
1781         (WebCore::FrameLoader::checkIfDisplayInsecureContent):
1782         (WebCore::FrameLoader::checkIfRunInsecureContent):
1783         * loader/FrameLoader.h:
1784         * loader/MainResourceLoader.cpp:
1785         (WebCore::MainResourceLoader::willSendRequest):
1786
1787 2009-09-10  Mark Rowe  <mrowe@apple.com>
1788
1789         Fix the Windows build.
1790
1791         Restore platform/mock to the header search path after it was removed in r48270.
1792
1793         * WebCore.vcproj/WebCoreCommon.vsprops:
1794
1795 2009-09-08  Timothy Hatcher  <timothy@apple.com>
1796
1797         Web Inspector: Move the option to create a new style rule under the Styles' gear menu.
1798
1799         https://bugs.webkit.org/show_bug.cgi?id=29039
1800
1801         Reviewed by Sam Weinig.
1802
1803         * inspector/front-end/StylesSidebarPane.js:
1804         (WebInspector.StylesSidebarPane): Add "New Style Rule" option to the gear menu.
1805         (WebInspector.StylesSidebarPane.prototype._update): Check instanceof BlankStylePropertiesSection instead.
1806         (WebInspector.StylesSidebarPane.prototype._changeSetting): Added. Keeps the color format setting selected
1807         while calling the correct action.
1808         (WebInspector.StylesSidebarPane.prototype._createNewRule): Creates a new section and edits the selector.
1809         (WebInspector.StylesSidebarPane.prototype.addBlankSection): Insert the section in a cleaner way.
1810         (WebInspector.StylesSidebarPane.prototype.removeSection): Added. Removes the passed in section.
1811         (WebInspector.StylesSidebarPane.prototype.appropriateSelectorForNode): Return an empty string if there is no node.
1812         (WebInspector.StylePropertiesSection.prototype.expand): Removed the check for _blank.
1813         (WebInspector.StylePropertiesSection.prototype.startEditingSelector): No need for the context, the original selector
1814         is remembered by the editing code.
1815         (WebInspector.StylePropertiesSection.prototype.editingSelectorCancelled): Do nothing. The original text is already
1816         restored by the editing code.
1817         (WebInspector.BlankStylePropertiesSection): Call the StylePropertiesSection constructor with appropriate data.
1818         Remove event listener code.
1819         (WebInspector.BlankStylePropertiesSection.prototype.expand): Added. Does nothing to prevent expanding.
1820         (WebInspector.BlankStylePropertiesSection.prototype.editingSelectorCommitted.callback): Correctly construct the
1821         WebInspector.CSSStyleDeclaration. Call editingSelectorCancelled instead of editingCancelled.
1822         (WebInspector.BlankStylePropertiesSection.prototype.editingSelectorCommitted): Renamed from editingCommitted to
1823         override the base class.
1824         (WebInspector.BlankStylePropertiesSection.prototype.editingSelectorCancelled): Remove the section.
1825         (WebInspector.BlankStylePropertiesSection.prototype.makeNormal): Removed event listener code. Removed the delete lines
1826         since they were doing nothing (deleting nonexistent properties that exist only on the prototype.) Change prototypes at
1827         the end to correctly swtich to a real StylePropertiesSection.
1828         * inspector/front-end/inspector.js:
1829         (WebInspector.startEditing.editingCancelled): Ceck for null/undefined callbacks.
1830         (WebInspector.startEditing.editingCommitted): Ditto.
1831
1832 2009-09-10  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
1833
1834         Reviewed by Eric Seidel.
1835
1836         [Qt] Fix comparison between signed and unsigned integer warnings
1837         https://bugs.webkit.org/show_bug.cgi?id=29162
1838
1839         No functional change.
1840
1841         * bridge/qt/qt_runtime.cpp:
1842         (JSC::Bindings::findMethodIndex):
1843         * platform/MIMETypeRegistry.cpp:
1844         (WebCore::initializeSupportedImageMIMETypes):
1845         (WebCore::initializeSupportedImageMIMETypesForEncoding):
1846         * platform/graphics/qt/GraphicsContextQt.cpp:
1847         (WebCore::GraphicsContext::drawFocusRing):
1848         * platform/graphics/qt/ImageDecoderQt.cpp:
1849         (WebCore::ImageDecoderQt::duration):
1850         (WebCore::ImageDecoderQt::imageAtIndex):
1851         * plugins/qt/PluginPackageQt.cpp:
1852         (WebCore::PluginPackage::fetchInfo):
1853
1854 2009-09-10  Martin Robinson  <martin.james.robinson@gmail.com>
1855
1856         Reviewed by Gustavo Noronha.
1857
1858         Build fix for GTK+ after r48267.
1859
1860         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
1861         (WebCore::MediaPlayerPrivate::buffered):
1862
1863 2009-09-08  John Abd-El-Malek  <jam@chromium.org>
1864
1865         Reviewed by Dimitri Glazkov.
1866
1867         Remove unneeded define for ActiveX.
1868         https://bugs.webkit.org/show_bug.cgi?id=29054
1869
1870         * rendering/RenderPartObject.cpp:
1871         (WebCore::createClassIdToTypeMap):
1872         (WebCore::serviceTypeForClassId):
1873         (WebCore::RenderPartObject::updateWidget):
1874
1875 2009-09-10  Mark Rowe  <mrowe@apple.com>
1876
1877         Rubber-stamped by Sam Weinig.
1878
1879         Don't copy IDL files in to the built framework.
1880
1881         * WebCore.xcodeproj/project.pbxproj:
1882
1883 2009-09-10  Xiaomei Ji  <xji@chromium.org>
1884
1885         Reviewed by Eric Seidel.
1886
1887         Implment Range.expand().
1888         https://bugs.webkit.org/show_bug.cgi?id=27632
1889
1890         Test: fast/dom/Range/range-expand.html
1891
1892         * dom/Range.cpp:
1893         (WebCore::Range::expand):
1894         * dom/Range.h:
1895         * dom/Range.idl:
1896
1897 2009-09-10  Fumitoshi Ukai  <ukai@chromium.org>
1898
1899         Reviewed by Alexey Proskuryakov.
1900
1901         WebSocket API implementation.
1902         https://bugs.webkit.org/show_bug.cgi?id=28038
1903         
1904         Add build systems for GNUmakefile.am, WebCore.xcodeproj and
1905         WebCore.vcproj.
1906         Add websockets directory and WebSocket.idl in qt build system.
1907         Tests will be landed once the code is completed and functional.
1908
1909         * DerivedSources.cpp:
1910         * GNUmakefile.am:
1911         * WebCore.pro:
1912         * WebCore.vcproj/WebCore.vcproj:
1913         * WebCore.vcproj/WebCoreCommon.vsprops:
1914         * WebCore.xcodeproj/project.pbxproj:
1915         * bindings/js/JSDOMWindowCustom.cpp:
1916         (WebCore::JSDOMWindow::webSocket):
1917         * bindings/js/JSEventTarget.cpp:
1918         (WebCore::toJS):
1919         (WebCore::toEventTarget):
1920         * dom/EventTarget.cpp:
1921         (WebCore::EventTarget::toWebSocket):
1922         * dom/EventTarget.h:
1923         * page/DOMWindow.idl:
1924         * websockets/WebSocket.cpp:
1925         (WebCore::ProcessWebSocketEventTask::create):
1926         (WebCore::ProcessWebSocketEventTask::performTask):
1927         (WebCore::ProcessWebSocketEventTask::ProcessWebSocketEventTask):
1928         (WebCore::isValidProtocolString):
1929         (WebCore::WebSocket::connect):
1930         (WebCore::WebSocket::send):
1931         (WebCore::WebSocket::close):
1932         (WebCore::WebSocket::bufferedAmount):
1933         (WebCore::WebSocket::addEventListener):
1934         (WebCore::WebSocket::removeEventListener):
1935         (WebCore::WebSocket::dispatchEvent):
1936         (WebCore::WebSocket::didConnect):
1937         (WebCore::WebSocket::didReceiveMessage):
1938         (WebCore::WebSocket::didClose):
1939         (WebCore::WebSocket::dispatchOpenEvent):
1940         (WebCore::WebSocket::dispatchMessageEvent):
1941         (WebCore::WebSocket::dispatchCloseEvent):
1942         * websockets/WebSocket.h:
1943         (WebCore::WebSocket::create):
1944         (WebCore::WebSocket::):
1945         (WebCore::WebSocket::setOnopen):
1946         (WebCore::WebSocket::onopen):
1947         (WebCore::WebSocket::setOnmessage):
1948         (WebCore::WebSocket::onmessage):
1949         (WebCore::WebSocket::setOnclose):
1950         (WebCore::WebSocket::onclose):
1951         (WebCore::WebSocket::toWebSocket):
1952         (WebCore::WebSocket::eventListeners):
1953         (WebCore::WebSocket::refEventTarget):
1954         (WebCore::WebSocket::derefEventTarget):
1955         * websockets/WebSocketChannel.cpp: Added.
1956         * websockets/WebSocketChannel.h: Added.
1957         * websockets/WebSocketChannelClient.h: Added.
1958         * websockets/WebSocketHandshake.cpp: Added.
1959         * websockets/WebSocketHandshake.h: Added.
1960
1961 2009-09-10  Albert J. Wong  <ajwong@chromium.org>
1962
1963         No review, windows build fix only.
1964         
1965         Spurious semicolon causing parse error in chromium build on windows.
1966
1967         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
1968         (WebCore::MediaPlayerPrivate::buffered):
1969
1970 2009-09-10  Albert J. Wong  <ajwong@chromium.org>
1971
1972         No review, build fix only.
1973
1974         Adding in a missed include from the last patch that is breaking the
1975         chromium build.
1976
1977         * rendering/RenderThemeChromiumMac.mm: include TimeRanges.h
1978
1979 2009-09-10  Alpha Lam  <hclam@chromium.org>
1980
1981         Reviewed by Eric Carlson.
1982
1983         HTMLMediaElement buffered attribute should report a list of time ranges
1984         https://bugs.webkit.org/show_bug.cgi?id=29041
1985
1986         Changed MediaPlayerPrivateInterface and MediaPlayer's definition to
1987         report a list of buffered time ranges as WebCore::TimeRanges. This
1988         change also got rid of the maxTimeBuffered() method.
1989
1990         No new tests since this is a API change.
1991
1992         * html/HTMLMediaElement.cpp:
1993         (WebCore::HTMLMediaElement::percentLoaded):
1994         Use MediaPlaier::buffered() instead of maxTimeBuffered().
1995         (WebCore::HTMLMediaElement::buffered):
1996         ditto.
1997         * platform/graphics/MediaPlayer.cpp:
1998         (WebCore::NullMediaPlayerPrivate::buffered):
1999         Use MediaPlayerPrivateInterface::buffered() instead of maxTimeBuffered().
2000         (WebCore::MediaPlayer::buffered):
2001         ditto.
2002         * platform/graphics/MediaPlayer.h:
2003         Removed maxTimeBuffered() and defines PassRefPtr<TimeRanges> buffered().
2004         * platform/graphics/MediaPlayerPrivate.h:
2005         ditto.
2006         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
2007         Implements PassRefPtr<TimeRanges> buffered();
2008         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.h:
2009         Removed maxTimeBuffered() and defines PassRefPtr<TimeRanges> buffered().
2010         * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
2011         Removed maxTimeBuffered() and defines PassRefPtr<TimeRanges> buffered().
2012         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
2013         (WebCore::MediaPlayerPrivate::buffered):
2014         Implementation of buffered().
2015         * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
2016         Implements PassRefPtr<TimeRanegs> buffered().
2017         * platform/graphics/qt/MediaPlayerPrivatePhonon.h:
2018         Removed maxTimeBuffered() and defines PassRefPtr<TimeRanges> buffered().
2019         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
2020         Implements PassRefPtr<TimeRanges> buffered().
2021         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.h:
2022         Removed maxTimeBuffered() and defines PassRefPtr<TimeRanges> buffered().
2023         * platform/graphics/wince/MediaPlayerPrivateWince.h:
2024         ditto.
2025         * rendering/RenderThemeChromiumMac.mm:
2026         (WebCore::RenderThemeChromiumMac::paintMediaSliderTrack):
2027         Use buffered() instead of maxTimeBuffered().
2028         * rendering/RenderThemeChromiumSkia.cpp:
2029         ditto.
2030         * rendering/RenderThemeMac.mm:
2031         (WebCore::RenderThemeMac::paintMediaSliderTrack):
2032         ditto.
2033
2034 2009-09-10  Cameron McCormack  <cam@mcc.id.au>
2035
2036         Reviewed by Eric Seidel.
2037
2038         Make bindings generators more aware of IDL dependencies
2039         https://bugs.webkit.org/show_bug.cgi?id=29114
2040
2041         Make the JS and ObjC bindings generators able to output dependency
2042         rules for DerivedSources.make to consume.  These rules make a given
2043         generated binding class file header, JSWhatever.h, depend on Whatever's
2044         ancestor interfaces.
2045
2046         * DerivedSources.make: Pass --write-dependencies to generate-bindings.pl
2047         when generating JS and ObjC bindings.  Include dependency fies that are
2048         generated due to that.
2049         * bindings/scripts/CodeGenerator.pm: Make
2050         AddMethodsConstantsAndAttributesFromParentClasses accumulate a list of
2051         the ancestor interfaces that were visited.
2052         * bindings/scripts/CodeGeneratorJS.pm: Optionally write out a dependency
2053         file.
2054         * bindings/scripts/CodeGeneratorObjC.pm: Ditto.
2055         * bindings/scripts/generate-bindings.pl: Add a --write-dependencies
2056         option.
2057
2058 2009-09-10  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
2059
2060         Reviewed by Xan Lopez and Dan Winship.
2061
2062         Give all requests to libsoup, to let it queue, and schedule them
2063         itself, instead of throttling the number of requests in WebCore.
2064
2065         * platform/network/ResourceRequestBase.cpp:
2066         * platform/network/soup/ResourceRequestSoup.cpp:
2067         (WebCore::initializeMaximumHTTPConnectionCountPerHost):
2068
2069 2009-09-10  Jian Li  <jianli@chromium.org>
2070
2071         Reviewed by Eric Seidel.
2072
2073         [V8] Make XMLHttpRequest.send handle File object.
2074         https://bugs.webkit.org/show_bug.cgi?id=28924
2075
2076         Test: http/tests/local/send-dragged-file.html
2077
2078         * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
2079         (WebCore::CALLBACK_FUNC_DECL):
2080
2081 2009-09-10  Zoltan Horvath  <zoltan@webkit.org>
2082
2083         Reviewed by Darin Adler.
2084
2085         Use fastNew and fastDelete instead of operator new and delete for CSSSelector class. 
2086         https://bugs.webkit.org/show_bug.cgi?id=25930
2087
2088         Change using of operator new to fastNew and operator delete to
2089         fastDeleteSkippingDestructor for CSSSelector class to avoid mismatched function call.
2090
2091         This change fixes valgrind's 'mismatched free' notification.
2092
2093         * css/CSSParser.cpp:
2094         (WebCore::CSSParser::~CSSParser):
2095         (WebCore::CSSParser::createFloatingSelector):
2096         * css/CSSSelectorList.cpp:
2097         (WebCore::CSSSelectorList::adoptSelectorVector):
2098
2099 2009-09-10  Steve Block  <steveblock@google.com>
2100
2101         Reviewed by Darin Adler.
2102
2103         Geolocation does not correctly handle reentrant calls from callbacks.
2104         https://bugs.webkit.org/show_bug.cgi?id=29040
2105
2106         Tests: fast/dom/Geolocation/reentrant-error.html
2107                fast/dom/Geolocation/reentrant-success.html
2108
2109         * page/Geolocation.cpp: Modified.
2110         (WebCore::Geolocation::handleError): Modified. Call sendError directly, clearing notifier lists before making callback.
2111         (WebCore::Geolocation::makeSuccessCallbacks): Modified. Call sendPosition directly, clearing notifier lists before making callback.
2112         * page/Geolocation.h: Modified. Deleted sendErrorToXX and sendPositionToXXX methods.
2113
2114 2009-09-10  Erik Arvidsson  <arv@chromium.org>
2115
2116         Reviewed by Eric Seidel.
2117
2118         Fixes issue where focused elements did not get blur and focus events when the window was blurred and focused.
2119         https://bugs.webkit.org/show_bug.cgi?id=27105
2120
2121         Test: fast/events/blur-focus-window-should-blur-focus-element.html
2122
2123         * page/FocusController.cpp:
2124         (WebCore::dispatchEventsOnWindowAndFocusedNode):
2125         (WebCore::FocusController::setFocused):
2126         (WebCore::FocusController::setActive):
2127
2128 2009-09-10  Adam Roben  <aroben@apple.com>
2129
2130         Make the play/pause button in <video> controls indicate the button's
2131         action, not the movie state
2132
2133         This matches the Mac behavior, iTunes, and many other media players.
2134
2135         No test possible.
2136
2137         Fixes <http://webkit.org/b/29126> Play/pause button in <video>
2138         controls shows the wrong image
2139
2140         Reviewed by Eric Carlson.
2141
2142         * rendering/RenderMediaControls.cpp:
2143         (WebCore::RenderMediaControls::paintMediaControlsPart): Reversed when
2144         we show the play vs. pause artwork, so that the button reflects what
2145         will happen when you click it, rather than the current state of the
2146         movie.
2147
2148 2009-09-09  Steve Block  <steveblock@google.com>
2149
2150         Reviewed by Maciej Stachowiak.
2151
2152         Geolocation Coordinates::toString() prints bogus values for unspecified properties.
2153         https://bugs.webkit.org/show_bug.cgi?id=29080
2154
2155         Test: fast/dom/Geolocation/position-string.html
2156
2157         * GNUmakefile.am: Modified. Removes Geoposition.cpp and Coordinates.cpp.
2158         * WebCore.gypi: Modified. Removes Geoposition.cpp and Coordinates.cpp.
2159         * WebCore.pro: Modified. Removes Geoposition.cpp and Coordinates.cpp.
2160         * WebCore.vcproj/WebCore.vcproj: Modified. Removes Geoposition.cpp and Coordinates.cpp.
2161         * WebCore.xcodeproj/project.pbxproj: Modified. Removes Geoposition.cpp and Coordinates.cpp.
2162         * WebCoreSources.bkl: Modified. Removes Geoposition.cpp and Coordinates.cpp.
2163         * page/Coordinates.cpp: Removed.
2164         * page/Coordinates.h: Modified. Removes toString method.
2165         * page/Coordinates.idl: Modified. Removes toString method.
2166         * page/Geoposition.cpp: Removed.
2167         * page/Geoposition.h: Modified. Removes toString method.
2168         * page/Geoposition.idl: Modified. Removes toString method.
2169
2170 2009-09-09  Steve Block  <steveblock@google.com>
2171
2172         Reviewed by Adam Barth.
2173
2174         Correctly applies the Geolocation timeout property.
2175         https://bugs.webkit.org/show_bug.cgi?id=27256
2176
2177         If a timeout is specified, the timer is started as soon as the location acquistion process starts.
2178         If a position fix is not obtained within the timeout interval, the position request is cancelled
2179         and the error callback (if specified) is invoked. If a position fix is obtained within the timeout
2180         interval, the timer is stopped. Permissions are then requested from the user if required. See
2181         http://www.w3.org/TR/geolocation-API/#position-options.
2182
2183         Note that this logic means that the time required to obtain permissions from the user is not
2184         included in the timeout interval.
2185
2186         Tests: fast/dom/Geolocation/timeout.html
2187                fast/dom/Geolocation/timeout-zero.html
2188
2189         * page/Geolocation.cpp: Modified.
2190         (WebCore::Geolocation::GeoNotifier::GeoNotifier): Modified. Takes Geolocation object as parameter.
2191         (WebCore::Geolocation::GeoNotifier::hasZeroTimeout): Added. Determines whether this request has a zero timeout.
2192         (WebCore::Geolocation::GeoNotifier::startTimerIfNeeded): Renamed from startTimer. Starts the timer if a timeout was specified.
2193         (WebCore::Geolocation::GeoNotifier::timerFired): Modified. Calls the error callback if specified, and reports the timeout to the Geolocation object.
2194         (WebCore::Geolocation::getCurrentPosition): Modified. Calls maybeStartTimer when starting the location acquisition process.
2195         (WebCore::Geolocation::watchPosition): Modified. Calls maybeStartTimer when starting the location acquisition process.
2196         (WebCore::Geolocation::requestTimedOut): Added. Cancels a request when it times out.
2197         (WebCore::Geolocation::setIsAllowed): Modified. No longer starts timers.
2198         (WebCore::Geolocation::sendPosition): Modified. No longer stops timers.
2199         (WebCore::Geolocation::stopTimer): Added. Stops the timers for a vector of notifiers.
2200         (WebCore::Geolocation::stopTimersForOneShots): Added. Stops the timers for all one-shots.
2201         (WebCore::Geolocation::stopTimersForWatchers): Added. Stops the timers for all watchers.
2202         (WebCore::Geolocation::stopTimers): Added. Stops the timers for all requests.
2203         (WebCore::Geolocation::geolocationServicePositionChanged): Modfified. Stops the timers for all requests.
2204         * page/Geolocation.h: Modified.
2205         (WebCore::Geolocation::GeoNotifier::create): Modified. Takes Geolocation object as parameter.
2206
2207 2009-09-09  Chris Fleizach  <cfleizach@apple.com>
2208
2209         AX notifications should be an ENUM type instead of strings
2210         https://bugs.webkit.org/show_bug.cgi?id=28963
2211
2212         Build fix for Qt.
2213
2214         * accessibility/AXObjectCache.h:
2215         (WebCore::AXObjectCache::postNotification):
2216         (WebCore::AXObjectCache::postPlatformNotification):
2217
2218 2009-09-08  Chris Fleizach  <cfleizach@apple.com>
2219
2220         Reviewed by Darin Adler.
2221
2222         AX notifications should be an ENUM type instead of strings
2223         https://bugs.webkit.org/show_bug.cgi?id=28963
2224
2225         Moves AX notifications over to an ENUM type instead of
2226         using the actual string values that are used on OS X.
2227
2228         * accessibility/AXObjectCache.cpp:
2229         (WebCore::AXObjectCache::postNotification):
2230         (WebCore::AXObjectCache::selectedChildrenChanged):
2231         * accessibility/AXObjectCache.h:
2232         (WebCore::AXObjectCache::):
2233         * accessibility/AccessibilityRenderObject.cpp:
2234         (WebCore::AccessibilityRenderObject::handleActiveDescendantChanged):
2235         * accessibility/chromium/AXObjectCacheChromium.cpp:
2236         (WebCore::AXObjectCache::postPlatformNotification):
2237         * accessibility/gtk/AXObjectCacheAtk.cpp:
2238         (WebCore::AXObjectCache::postPlatformNotification):
2239         * accessibility/mac/AXObjectCacheMac.mm:
2240         (WebCore::AXObjectCache::postPlatformNotification):
2241         * accessibility/win/AXObjectCacheWin.cpp:
2242         (WebCore::AXObjectCache::postPlatformNotification):
2243         * dom/Document.cpp:
2244         (WebCore::Document::implicitClose):
2245         * dom/Element.cpp:
2246         (WebCore::Element::updateAfterAttributeChanged):
2247         * editing/Editor.cpp:
2248         (WebCore::Editor::respondToChangedContents):
2249         * editing/mac/SelectionControllerMac.mm:
2250         (WebCore::SelectionController::notifyAccessibilityForSelectionChange):
2251         * html/HTMLInputElement.cpp:
2252         (WebCore::HTMLInputElement::setChecked):
2253         * page/FrameView.cpp:
2254         (WebCore::FrameView::layout):
2255         * rendering/RenderTextControl.cpp:
2256         (WebCore::RenderTextControl::setInnerTextValue):
2257
2258 2009-09-08  Adam Barth  <abarth@webkit.org>
2259
2260         Reviewed by Eric Seidel.
2261
2262         Missing checkout for getSVGDocument()
2263         https://bugs.webkit.org/show_bug.cgi?id=29064
2264
2265         The V8 code generator didn't understand SVGCheckSecurityDocument.
2266
2267         Tests: http/tests/security/xss-DENIED-getSVGDocument-iframe.html
2268                http/tests/security/xss-DENIED-getSVGDocument-object.html
2269
2270         * bindings/scripts/CodeGeneratorV8.pm:
2271
2272 2009-09-09  Cameron McCormack  <cam@mcc.id.au>
2273
2274         Reviewed by Eric Seidel.
2275
2276         Make SVGStyleElement inherit from SVGLangSpace
2277         https://bugs.webkit.org/show_bug.cgi?id=29058
2278
2279         Required by SVG 1.1 Second Edition:
2280         http://dev.w3.org/SVG/profiles/1.1F2/publish/styling.html#InterfaceSVGStyleElement
2281
2282         Test: svg/dom/SVGStyleElement/style-langspace.html
2283
2284         * svg/SVGStyleElement.cpp: Drop methods xmlspace and setXmlspace.
2285         (WebCore::SVGStyleElement::SVGStyleElement): Add SVGLangSpace()
2286         initializer.
2287         (WebCore::SVGStyleElement::parseMappedAttribute): Call
2288         parseMappedAttribute on SVGLangSpace.
2289         * svg/SVGStyleElement.h: Drop xmlspace and setXmlspace declarations.
2290         * svg/SVGStyleElement.idl: Drop xmlspace attribute and add SVGLangSpace
2291         as a superinterface.
2292
2293 2009-09-09  Nate Chapin  <japhet@chromium.org>
2294
2295         Reviewed by David Levin.
2296
2297         Remove unnecessary includes and forward declarations in V8Proxy.h
2298
2299         https://bugs.webkit.org/show_bug.cgi?id=29111
2300
2301         * bindings/v8/V8Proxy.h:
2302
2303 2009-07-30  Eric Seidel  <eric@webkit.org>
2304
2305         Reviewed by Adam Barth.
2306
2307         Add more position constructors
2308         positionBeforeNode, positionAfterNode
2309         firstPositionInNode, lastPositionInNode
2310         https://bugs.webkit.org/show_bug.cgi?id=25494
2311
2312         I also added a lastOffsetInNode and deployed it to a couple places.
2313
2314         There are no callers to these new constructors yet, but those
2315         will be coming in future patches.
2316
2317         * dom/Position.cpp:
2318         (WebCore::Position::computeOffsetInContainerNode):
2319         * dom/Position.h:
2320         (WebCore::positionBeforeNode):
2321         (WebCore::positionAfterNode):
2322         (WebCore::lastOffsetInNode):
2323         (WebCore::firstPositionInNode):
2324         (WebCore::lastPositionInNode):
2325         * editing/ApplyStyleCommand.cpp:
2326         * editing/TextIterator.cpp:
2327         (WebCore::SimplifiedBackwardsTextIterator::SimplifiedBackwardsTextIterator):
2328         * editing/htmlediting.cpp:
2329         (WebCore::lastOffsetForEditing):
2330
2331 2009-04-30  Eric Seidel  <eric@webkit.org>
2332
2333         Reviewed by Adam Barth.
2334
2335         Rename positionBeforeNode to positionInParentBeforeNode
2336         and positionAfterNode to positionInParentAfterNode
2337         in preparation for adding a positionBeforeNode
2338         which returns a neighbor-anchored position.
2339         https://bugs.webkit.org/show_bug.cgi?id=25494
2340
2341         No functional changes, thus no tests.
2342
2343         * dom/PositionConstructors.h:
2344         (WebCore::positionInParentBeforeNode):
2345         (WebCore::positionInParentAfterNode):
2346         * dom/PositionIterator.cpp:
2347         (WebCore::PositionIterator::operator Position):
2348         * editing/ApplyStyleCommand.cpp:
2349         (WebCore::ApplyStyleCommand::applyInlineStyle):
2350         * editing/CompositeEditCommand.cpp:
2351         (WebCore::CompositeEditCommand::positionOutsideTabSpan):
2352         (WebCore::CompositeEditCommand::breakOutOfEmptyMailBlockquotedParagraph):
2353         (WebCore::CompositeEditCommand::positionAvoidingSpecialElementBoundary):
2354         * editing/CreateLinkCommand.cpp:
2355         (WebCore::CreateLinkCommand::doApply):
2356         * editing/DeleteButtonController.cpp:
2357         (WebCore::DeleteButtonController::deleteTarget):
2358         * editing/DeleteSelectionCommand.cpp:
2359         (WebCore::DeleteSelectionCommand::initializeStartEnd):
2360         (WebCore::updatePositionForNodeRemoval):
2361         * editing/InsertLineBreakCommand.cpp:
2362         (WebCore::InsertLineBreakCommand::doApply):
2363         * editing/InsertListCommand.cpp:
2364         (WebCore::InsertListCommand::doApply):
2365         * editing/InsertParagraphSeparatorCommand.cpp:
2366         (WebCore::InsertParagraphSeparatorCommand::doApply):
2367         * editing/InsertTextCommand.cpp:
2368         (WebCore::InsertTextCommand::input):
2369         * editing/ReplaceSelectionCommand.cpp:
2370         (WebCore::ReplaceSelectionCommand::positionAtStartOfInsertedContent):
2371         (WebCore::ReplaceSelectionCommand::doApply):
2372         * editing/VisibleSelection.cpp:
2373         (WebCore::VisibleSelection::adjustSelectionToAvoidCrossingEditingBoundaries):
2374         * editing/htmlediting.cpp:
2375         (WebCore::firstEditablePositionAfterPositionInRoot):
2376         (WebCore::lastEditablePositionBeforePositionInRoot):
2377         (WebCore::rangeCompliantEquivalent):
2378         (WebCore::positionBeforeContainingSpecialElement):
2379         (WebCore::positionAfterContainingSpecialElement):
2380         (WebCore::positionBeforeTabSpan):
2381
2382 2009-04-30  Eric Seidel  <eric@webkit.org>
2383
2384         Reviewed by Adam Barth.
2385
2386         Re-organize position creation functions in preparation for adding more
2387         https://bugs.webkit.org/show_bug.cgi?id=25494
2388
2389         Make position functions inline to avoid ref-churn.
2390         Remove startPosition/endPosition as they were only used in one place.
2391
2392         No functional changes, thus no tests.
2393
2394         * dom/Position.cpp:
2395         * dom/Position.h:
2396         (WebCore::positionBeforeNode):
2397         (WebCore::positionAfterNode):
2398         * editing/SelectionController.cpp:
2399         (WebCore::SelectionController::moveTo):
2400         * editing/TypingCommand.cpp:
2401         * editing/htmlediting.cpp:
2402         * editing/htmlediting.h:
2403         (WebCore::firstDeepEditingPositionForNode):
2404         (WebCore::lastDeepEditingPositionForNode):
2405         * rendering/RenderObject.cpp:
2406
2407 2009-09-09  Kevin Watters  <kevinwatters@gmail.com>
2408
2409         Reviewed by Kevin Ollivier.
2410         
2411         [wx] Add wxSize conversions for IntSize.
2412         https://bugs.webkit.org/show_bug.cgi?id=29104
2413
2414         * platform/graphics/IntSize.h:
2415         * platform/graphics/wx/IntSizeWx.cpp: Added.
2416         (WebCore::IntSize::IntSize):
2417         (WebCore::IntSize::operator wxSize):
2418
2419 2009-09-09  Yaar Schnitman  <yaar@chromium.org>
2420
2421         Reviewed by David Levin.
2422         
2423         Chromium uses its own config.h file that was forked from webkit's config.h.
2424         By merging in Chromium's defines, Chromium would again be able to use webkit's
2425         config.h.
2426
2427         https://bugs.webkit.org/show_bug.cgi?id=28882 
2428
2429         * config.h: Added chromium-specific defines. 
2430
2431 2009-09-09  Jens Alfke  <snej@chromium.org>
2432
2433         Reviewed by Eric Seidel.
2434
2435         Initialize DataTransfer's effectAllowed and dropEffect properties correctly
2436         according to HTML5 spec (sec. 7.9.2-7.9.3).
2437         https://bugs.webkit.org/show_bug.cgi?id=26700
2438         - At the start of a drag operation, the value of effectAllowed should be
2439           the string "uninitialized".
2440         - At end of dragstart handler, if effectAllowed hasn't been set yet, it
2441           should be set to "copy".
2442         - on dragenter and dragover event, dropEffect should be initialized to a
2443           default value based on the value of effectAllowed.
2444         - at end of dragenter and dragover the dropEffect should be set to "none"
2445           if the value set by the handler doesn't match the effectAllowed.
2446         - on dragleave event, dropEffect should be "none".
2447         - on drop event, dropEffect should be the previously negotiated value.
2448
2449         Test: fast/events/drag-dropeffect.html
2450
2451         * WebCore.base.exp:
2452             Added a parameter to EventHandler::dragSourceMovedTo.
2453         * dom/Clipboard.cpp:
2454         (WebCore::Clipboard::Clipboard):
2455             Initialize m_effectAllowed to "uninitialized".
2456         (WebCore::Clipboard::sourceOperation):
2457             Treat "uninitialized" as meaning no value has been set.
2458         * page/DragController.cpp:
2459         (WebCore::DragController::DragController):
2460             Initialize new member m_destinationDragOperation.
2461         (WebCore::DragController::dragExited):
2462             Set m_destinationDragOperation to none on dragExit.
2463         (WebCore::DragController::performDrag):
2464             Set m_destinationDragOperation to current dropEffect.
2465         (WebCore::DragController::dragEnteredOrUpdated):
2466             Make sure to clear the operation if drag source doesn't allow it.
2467         (WebCore::DragController::tryDHTMLDrag):
2468             Set a default value for the dst drag op before sending dragEnter/Over.
2469         (WebCore::DragController::startDrag):
2470             Clear m_destinationDragOperation at start of drag.
2471         * page/DragController.h:
2472         (WebCore::DragController::destinationDragOperation):
2473             Added new member m_destinationDragOperation, and its public getter.
2474         * page/EventHandler.cpp:
2475         (WebCore::EventHandler::updateDragAndDrop):
2476             dropEffect should be 'none' during dropleave handler, per spec.
2477         (WebCore::EventHandler::dragSourceMovedTo):
2478             Added DragOperation parameter, so the handler sees the current dropEffect.
2479         (WebCore::EventHandler::handleDrag):
2480             Assume DragOperationEvery for non-DHTML drags.
2481         * page/EventHandler.h:
2482             Added DragOperation parameter to dragSourceMovedTo().
2483
2484 2009-09-09  Dumitru Daniliuc  <dumi@chromium.org>
2485
2486         Reviewed by Dimitri Glazkov.
2487
2488         1. Adding support/bindings for read-only transactions.
2489         2. Disallowing the SQLITE_*_VIEW and REINDEX operations in the
2490         private browsing mode.
2491         3. Adding an authorizer test.
2492
2493         https://bugs.webkit.org/show_bug.cgi?id=28918
2494
2495         Test: storage/test-authorizer.html
2496
2497         * bindings/js/JSDatabaseCustom.cpp:
2498         (WebCore::createTransaction): Parses all arguments and executes a
2499         transaction.
2500         (WebCore::JSDatabase::transaction): Refactored to use
2501         createTransaction().
2502         (WebCore::JSDatabase::readTransaction): Added to execute read-only
2503         transactions using createTransaction().
2504         * bindings/v8/custom/V8CustomBinding.h: Added the binding for
2505         Database::readTransaction().
2506         * bindings/v8/custom/V8DatabaseCustom.cpp:
2507         (WebCore::createTransaction): Parses all arguments and executes a
2508         transaction.
2509         (WebCore::transaction): Refactored to use createTransaction().
2510         (WebCore::readTransaction): Added to execute read-only
2511         transactions using createTransaction().
2512         * storage/Database.cpp:
2513         (WebCore::Database::transaction): Added support for read-only
2514         transactions.
2515         * storage/Database.h: Added support for read-only transactions.
2516         * storage/Database.idl: Added support for read-only transactions.
2517         * storage/DatabaseAuthorizer.cpp:
2518         (WebCore::DatabaseAuthorizer::createTempTable): Make it obvious
2519         that the statement will be denied in private browsing mode and
2520         read-only transactions.
2521         (WebCore::DatabaseAuthorizer::dropTempTable): Same.
2522         (WebCore::DatabaseAuthorizer::createTempIndex): Same.
2523         (WebCore::DatabaseAuthorizer::dropTempIndex): Same.
2524         (WebCore::DatabaseAuthorizer::createTempTrigger): Same.
2525         (WebCore::DatabaseAuthorizer::dropTempTrigger): Same.
2526         (WebCore::DatabaseAuthorizer::createView): Deny in private
2527         browsing mode and read-only transactions.
2528         (WebCore::DatabaseAuthorizer::createTempView): Same.
2529         (WebCore::DatabaseAuthorizer::dropView): Same.
2530         (WebCore::DatabaseAuthorizer::dropTempView): Same.
2531         (WebCore::DatabaseAuthorizer::allowReindex): Same.
2532         * storage/DatabaseAuthorizer.h:
2533         * storage/SQLTransaction.cpp: Added support for read-only
2534         transactions.
2535         (WebCore::SQLTransaction::create):
2536         (WebCore::SQLTransaction::SQLTransaction):
2537         (WebCore::SQLTransaction::executeSQL):
2538         (WebCore::SQLTransaction::acquireLock):
2539         * storage/SQLTransaction.h:
2540         * storage/SQLTransactionCoordinator.cpp:
2541         (WebCore::SQLTransactionCoordinator::acquireLock): Added a new
2542         parameter in preparation for a change that will allow multiple
2543         read-only transactions on the same DB to run concurrently.
2544         * storage/SQLTransactionCoordinator.h:
2545
2546 2009-09-09  Dave Hyatt  <hyatt@apple.com>
2547
2548         Reviewed by Adam Roben.
2549
2550         https://bugs.webkit.org/show_bug.cgi?id=29102, add support for user stylesheet injection.  This is similar
2551         to user script injection but allows for user stylesheets to be added.  The stylesheets are applied immediately
2552         to all Frames in the PageGroup.
2553
2554         Added userscripts/simple-stylesheet.html test case.
2555
2556         * WebCore.base.exp:
2557         * WebCore.gypi:
2558         * WebCore.vcproj/WebCore.vcproj:
2559         * WebCore.xcodeproj/project.pbxproj:
2560         * css/CSSStyleSelector.cpp:
2561         (WebCore::CSSStyleSelector::CSSStyleSelector):
2562         * css/CSSStyleSelector.h:
2563         * dom/Document.cpp:
2564         (WebCore::Document::Document):
2565         (WebCore::Document::attach):
2566         (WebCore::Document::pageGroupUserSheets):
2567         (WebCore::Document::clearPageGroupUserSheets):
2568         (WebCore::Document::recalcStyleSelector):
2569         * dom/Document.h:
2570         * loader/PlaceholderDocument.cpp:
2571         (WebCore::PlaceholderDocument::attach):
2572         * page/PageGroup.cpp:
2573         (WebCore::PageGroup::addUserStyleSheet):
2574         (WebCore::PageGroup::removeUserContentForWorld):
2575         (WebCore::PageGroup::removeAllUserContent):
2576         * page/PageGroup.h:
2577         (WebCore::PageGroup::userStyleSheets):
2578         * page/UserStyleSheet.h: Added.
2579         (WebCore::UserStyleSheet::UserStyleSheet):
2580         (WebCore::UserStyleSheet::source):
2581         (WebCore::UserStyleSheet::url):
2582         (WebCore::UserStyleSheet::patterns):
2583         (WebCore::UserStyleSheet::worldID):
2584         * page/UserStyleSheetTypes.h: Added.
2585
2586 2009-09-09  Carol Szabo  <carol.szabo@nokia.com>
2587
2588         Reviewed by Ariya Hidayat.
2589
2590         [Qt] CSS Style -webkit-box-shadow is not rendered correctly on
2591         Qt platform
2592         https://bugs.webkit.org/show_bug.cgi?id=23291
2593
2594         * platform/graphics/qt/GraphicsContextQt.cpp:
2595         (WebCore::GraphicsContext::drawRect):
2596         (WebCore::GraphicsContext::strokeArc):
2597         (WebCore::GraphicsContext::drawConvexPolygon):
2598         (WebCore::GraphicsContext::fillPath):
2599         (WebCore::GraphicsContext::strokePath):
2600         (WebCore::GraphicsContext::fillRect):
2601         (WebCore::GraphicsContext::fillRoundedRect):
2602          Added the ability to draw shadows for all these curves.
2603
2604 2009-09-09  Kenneth Rohde Christiansen  <kenneth@webkit.org>
2605
2606         Reviewed by Simon Hausmann.
2607
2608         Add the qwebgraphicsitem.cpp to the build system.
2609
2610         https://bugs.webkit.org/show_bug.cgi?id=28862
2611
2612         * WebCore.pro:
2613
2614 2009-09-09  Kevin Watters  <kevinwatters@gmail.com>
2615
2616         Reviewed by Kevin Ollivier.
2617
2618         [wx port] Move functions in TemporaryLinkStubs.cpp out to files where
2619         they belong.
2620
2621         https://bugs.webkit.org/show_bug.cgi?id=29088
2622
2623         * editing/wx/EditorWx.cpp:
2624         (WebCore::Editor::showColorPanel):
2625         (WebCore::Editor::showFontPanel):
2626         (WebCore::Editor::showStylesPanel):
2627         * platform/graphics/wx/GraphicsContextWx.cpp:
2628         (WebCore::GraphicsContext::setPlatformShadow):
2629         (WebCore::GraphicsContext::clearPlatformShadow):
2630         (WebCore::GraphicsContext::beginTransparencyLayer):
2631         (WebCore::GraphicsContext::endTransparencyLayer):
2632         (WebCore::GraphicsContext::clearRect):
2633         (WebCore::GraphicsContext::strokeRect):
2634         (WebCore::GraphicsContext::setLineCap):
2635         (WebCore::GraphicsContext::setLineJoin):
2636         (WebCore::GraphicsContext::setMiterLimit):
2637         (WebCore::GraphicsContext::setAlpha):
2638         (WebCore::GraphicsContext::addInnerRoundedRectClip):
2639         * platform/graphics/wx/IconWx.cpp: Added.
2640         (WebCore::Icon::~Icon):
2641         (WebCore::Icon::createIconForFile):
2642         (WebCore::Icon::createIconForFiles):
2643         (WebCore::Icon::paint):
2644         * platform/graphics/wx/ImageWx.cpp:
2645         (WebCore::Image::loadPlatformResource):
2646         (WebCore::Image::drawPattern):
2647         * platform/wx/CursorWx.cpp:
2648         (WebCore::moveCursor):
2649         * platform/wx/FileChooserWx.cpp: Added.
2650         (WebCore::FileChooser::basenameForWidth):
2651         * platform/wx/KURLWx.cpp: Added.
2652         (WebCore::KURL::fileSystemPath):
2653         * platform/wx/SSLKeyGeneratorWx.cpp: Added.
2654         (WebCore::getSupportedKeySizes):
2655         (WebCore::signedPublicKeyAndChallengeString):
2656         * platform/wx/SearchPopupMenuWx.cpp: Added.
2657         (WebCore::SearchPopupMenu::SearchPopupMenu):
2658         (WebCore::SearchPopupMenu::saveRecentSearches):
2659         (WebCore::SearchPopupMenu::loadRecentSearches):
2660         (WebCore::SearchPopupMenu::enabled):
2661         * platform/wx/SharedBufferWx.cpp: Added.
2662         (WebCore::SharedBuffer::createWithContentsOfFile):
2663         * platform/wx/SystemTimeWx.cpp: Added.
2664         (WebCore::userIdleTime):
2665         * platform/wx/TemporaryLinkStubs.cpp: Removed.
2666         * platform/wx/TextBreakIteratorInternalICUWx.cpp: Added.
2667         (WebCore::currentSearchLocaleID):
2668         (WebCore::currentTextBreakLocaleID):
2669         * platform/wx/WidgetWx.cpp:
2670         (WebCore::Widget::setIsSelected):
2671
2672 2009-09-09  Steve Block  <steveblock@google.com>
2673
2674         Reviewed by Adam Barth.
2675
2676         Geolocation incorrectly calls error callback in case of exception in success callback.
2677         https://bugs.webkit.org/show_bug.cgi?id=27255
2678
2679         Test: fast/dom/Geolocation/callback-exception.html
2680
2681         * bindings/js/JSCustomPositionCallback.cpp: Modified.
2682         (WebCore::JSCustomPositionCallback::handleEvent): Modified. Removed raisedException out param.
2683         * bindings/js/JSCustomPositionCallback.h: Modified. Removed raisedException out param from handleEvent method and made handleEvent private.
2684         * bindings/js/JSCustomPositionErrorCallback.h: Modified. Made handleEvent private.
2685         * page/Geolocation.cpp: Modified.
2686         (WebCore::Geolocation::sendPosition): Modified. No longer call error callback in case of exception in success callback.
2687         * page/PositionCallback.h: Modified. Removed raisedException out param from handleEvent method.
2688
2689 2009-09-09  Steve Block  <steveblock@google.com>
2690
2691         Reviewed by Darin Adler.
2692
2693         When Geolocation permission is denied, stops watches as well as one-shots.
2694         https://bugs.webkit.org/show_bug.cgi?id=28305.
2695
2696         Tests: fast/dom/Geolocation/watch.html
2697                fast/dom/Geolocation/permission-denied-stops-watches.html
2698
2699         * page/Geolocation.cpp: Modified.
2700         (WebCore::Geolocation::setIsAllowed): Modified. Marks the permission error as fatal.
2701         (WebCore::Geolocation::handleError): Modified. If the error is fatal, stops watchers as well as one-shots.
2702         * page/PositionError.h: Modified.
2703         (WebCore::PositionError::setIsFatal): Added. Marks an error as fatal.
2704         (WebCore::PositionError::isFatal): Added. Determines whether an error is fatal.
2705
2706 2009-09-09  Roland Steiner  <rolandsteiner@google.com>
2707
2708         Reviewed by Eric Seidel.
2709
2710         Bug 28964 -  [Chromium] ChromiumDataObject should have getter/setter interface
2711
2712         Added getter/setter methods and trivial inline implementations for each.
2713         (Note that they are not yet actually used.)
2714         Once the Chromium code is changed to use them instead of directly accessing the
2715         member variables, the member variables should be made private and cleaned up.
2716
2717         No new tests (no functional behavior changed).
2718
2719         * platform/chromium/ChromiumDataObject.h:
2720         (WebCore::ChromiumDataObject::mainURL):
2721         (WebCore::ChromiumDataObject::setMainURL):
2722         (WebCore::ChromiumDataObject::mainURLTitle):
2723         (WebCore::ChromiumDataObject::setMainURLTitle):
2724         (WebCore::ChromiumDataObject::textPlain):
2725         (WebCore::ChromiumDataObject::setTextPlain):
2726         (WebCore::ChromiumDataObject::textHTML):
2727         (WebCore::ChromiumDataObject::setTextHTML):
2728         (WebCore::ChromiumDataObject::htmlBaseURL):
2729         (WebCore::ChromiumDataObject::setHTMLBaseURL):
2730         (WebCore::ChromiumDataObject::content):
2731         (WebCore::ChromiumDataObject::releaseContent):
2732         (WebCore::ChromiumDataObject::setContent):
2733         (WebCore::ChromiumDataObject::contentFileExtension):
2734         (WebCore::ChromiumDataObject::setContentFileExtension):
2735         (WebCore::ChromiumDataObject::contentFileName):
2736         (WebCore::ChromiumDataObject::setContentFileName):
2737         (WebCore::ChromiumDataObject::fileNames):
2738         (WebCore::ChromiumDataObject::setFileNames):
2739         (WebCore::ChromiumDataObject::takeFileNames):
2740
2741 2009-09-08  Pat Bradley  <vincent.bradley@nokia.com>
2742
2743         Reviewed by Ariya Hidayat.
2744
2745         [Qt] locale date displays incorrect date format in symbian.
2746         https://bugs.webkit.org/show_bug.cgi?id=29032
2747
2748         strftime() in Symbian does not support #
2749         Layout tests cannot be run on Symbian yet, so they are not updated.
2750
2751         * runtime/DatePrototype.cpp:
2752         (JSC::formatLocaleDate):
2753
2754 2009-09-09  Rohini Ananth <rohini.ananth@nokia.com>
2755
2756         Reviewed by Simon Hausmann.
2757
2758         NPAPI Plugin NPP_AsFile not working on Qt Webkit
2759         https://bugs.webkit.org/show_bug.cgi?id=29068
2760
2761         * platform/qt/FileSystemQt.cpp:
2762         (WebCore::openTemporaryFile)
2763         Autoremove property of QTemporaryFile has been set to false. Hence closeFile() just closes and does not delete the file.
2764         This solves the deletion of created temp file in PluginStream::destroyStream() before passing to plugin in NPP_AsFile.
2765
2766 2009-09-08  Oliver Hunt  <oliver@apple.com>
2767
2768         Reviewed by NOBODY (Build fix).
2769
2770         Remove a few incorrect changes I left in.
2771
2772         * bindings/scripts/CodeGeneratorJS.pm:
2773
2774 2009-09-08  Oliver Hunt  <oliver@apple.com>
2775
2776         Reviewed by Sam Weinig.
2777
2778         Support numeric index getters in bindings
2779         https://bugs.webkit.org/show_bug.cgi?id=29067
2780
2781         Add HasNumericIndexGetter to indicate a non-custom getter that
2782         returns a number.  The numeric index getter also uses PropertySlot's
2783         setValue rather than setCustomIndex to avoid an additional indirect
2784         call.
2785
2786         * bindings/js/JSCanvasByteArrayCustom.cpp:
2787         * bindings/js/JSCanvasFloatArrayCustom.cpp:
2788         * bindings/js/JSCanvasIntArrayCustom.cpp:
2789         * bindings/js/JSCanvasShortArrayCustom.cpp:
2790         * bindings/js/JSCanvasUnsignedByteArrayCustom.cpp:
2791         * bindings/js/JSCanvasUnsignedIntArrayCustom.cpp:
2792         * bindings/js/JSCanvasUnsignedShortArrayCustom.cpp:
2793         * bindings/scripts/CodeGeneratorJS.pm:
2794         * html/canvas/CanvasByteArray.h:
2795         (WebCore::CanvasByteArray::item):
2796         * html/canvas/CanvasByteArray.idl:
2797         * html/canvas/CanvasFloatArray.h:
2798         (WebCore::CanvasFloatArray::get):
2799         (WebCore::CanvasFloatArray::item):
2800         * html/canvas/CanvasFloatArray.idl:
2801         * html/canvas/CanvasIntArray.h:
2802         (WebCore::CanvasIntArray::get):
2803         (WebCore::CanvasIntArray::item):
2804         * html/canvas/CanvasIntArray.idl:
2805         * html/canvas/CanvasPixelArray.idl:
2806         * html/canvas/CanvasShortArray.h:
2807         (WebCore::CanvasShortArray::get):
2808         (WebCore::CanvasShortArray::item):
2809         * html/canvas/CanvasShortArray.idl:
2810         * html/canvas/CanvasUnsignedByteArray.h:
2811         (WebCore::CanvasUnsignedByteArray::get):
2812         (WebCore::CanvasUnsignedByteArray::item):
2813         * html/canvas/CanvasUnsignedByteArray.idl:
2814         * html/canvas/CanvasUnsignedIntArray.h:
2815         (WebCore::CanvasUnsignedIntArray::get):
2816         (WebCore::CanvasUnsignedIntArray::item):
2817         * html/canvas/CanvasUnsignedIntArray.idl:
2818         * html/canvas/CanvasUnsignedShortArray.h:
2819         (WebCore::CanvasUnsignedShortArray::item):
2820         * html/canvas/CanvasUnsignedShortArray.idl:
2821
2822 2009-09-08  Kevin Ollivier  <kevino@theolliviers.com>
2823
2824         wx build fix for 2.8.
2825
2826         * platform/wx/wxcode/mac/carbon/scrollbar_render.cpp:
2827         (wxRenderer_DrawScrollbar):
2828
2829 2009-09-08  Jens Alfke  <snej@chromium.org>
2830
2831         Reviewed by Eric Seidel.
2832
2833         In Mac Chromium, clicking below the last line of an editable area (textarea or
2834         contenteditable) should put the caret at the end of the last line, as in Mac Safari.
2835
2836         Tests: LayoutTests/editing/selection/click-in-margins-inside-editable-div.html
2837                LayoutTests/editing/selection/click-in-padding-with-multiple-line-boxes.html
2838
2839         * page/Settings.cpp:
2840         (WebCore::Settings::Settings): Change #if PLATFORM_MAC to be Mac-Chrome-inclusive.
2841
2842 2009-09-08  Dave Hyatt  <hyatt@apple.com>
2843
2844         Reviewed by Mark Rowe.
2845
2846         Make sure not to do an early return when a data URL stylesheet successfully loads.  We need to still
2847         clear the old cached sheet out of all existing Frames.  Fixes the data URL stylesheet layout test failure.
2848
2849         * page/Page.cpp:
2850         (WebCore::Page::userStyleSheetLocationChanged):
2851
2852 2009-09-08  Sam Weinig  <sam@webkit.org>
2853
2854         Fix windows build.
2855
2856         * dom/Document.idl:
2857
2858 2009-09-08  Kevin Ollivier  <kevino@theolliviers.com>
2859
2860         More robust wx build fix for 2.9.
2861
2862         * platform/wx/wxcode/mac/carbon/scrollbar_render.cpp:
2863         (wxRenderer_DrawScrollbar):
2864
2865 2009-09-08  Sam Weinig  <sam@webkit.org>
2866
2867         Reviewed by Timothy Hatcher.
2868
2869         Fix for https://bugs.webkit.org/show_bug.cgi?id=27046
2870         Implement CSSOM DocumentView.caretRangeFromPoint
2871
2872         Tests: fast/dom/Document/CaretRangeFromPoint/basic.html
2873                fast/dom/Document/CaretRangeFromPoint/replace-element.html
2874
2875         * dom/Document.cpp:
2876         (WebCore::Document::caretRangeFromPoint):
2877         * dom/Document.h:
2878         * dom/Document.idl:
2879
2880 2009-09-08  Kevin Ollivier  <kevino@theolliviers.com>
2881
2882         wx build fix, generate derived sources earlier in order to make sure
2883         they're found by the build system when generating the list of sources to build.
2884
2885         * wscript:
2886
2887 2009-09-08  Nate Chapin  <japhet@chromium.org>
2888
2889         Reviewed by Dimitri Glazkov.
2890
2891         <iterator> include in V8Proxy.h is spurious and causing ObjC compile issues for Chromium.
2892
2893         Test: Chromium mac canary build is fixed.
2894
2895         * bindings/v8/V8Proxy.h: Remove <iterator> include.
2896
2897 2009-09-08  Xan Lopez  <xlopez@igalia.com>
2898
2899         Unreviewed attempt to fix the GTK+ build.
2900
2901         * GNUmakefile.am:
2902
2903 2009-09-04  Dave Hyatt  <hyatt@apple.com>
2904
2905         Reviewed by Eric Seidel.
2906
2907         https://bugs.webkit.org/show_bug.cgi?id=28987, make the Document cache the page's user stylesheet in
2908         parsed form.  Allows the sheet to survive across destruction/re-creation of the CSSStyleSelector.
2909
2910         * css/CSSStyleSelector.cpp:
2911         (WebCore::CSSStyleSelector::CSSStyleSelector):
2912         * css/CSSStyleSelector.h:
2913         * dom/Document.cpp:
2914         (WebCore::Document::attach):
2915         (WebCore::Document::pageUserSheet):
2916         (WebCore::Document::clearPageUserSheet):
2917         (WebCore::Document::recalcStyleSelector):
2918         * dom/Document.h:
2919         * loader/PlaceholderDocument.cpp:
2920         (WebCore::PlaceholderDocument::attach):
2921         * page/Page.cpp:
2922         (WebCore::Page::userStyleSheetLocationChanged):
2923         * page/Settings.cpp:
2924         (WebCore::Settings::setUserStyleSheetLocation):
2925
2926 2009-09-08  Kenneth Rohde Christiansen  <kenneth@webkit.org>
2927
2928         Unreviewed buildfix.
2929
2930         Fix Qt build after 48167, by adding the new cpp/h files
2931         added to WebCore.gypi to WebCore.pro as well.
2932
2933         * WebCore.pro:
2934
2935 2009-09-08  Xan Lopez  <xlopez@igalia.com>
2936
2937         Reviewed by Gustavo Noronha.
2938
2939         should not pass URI fragments to libsoup
2940         https://bugs.webkit.org/show_bug.cgi?id=28687
2941
2942         Strip the fragment from the URI before passing it to soup, since
2943         it forwards it to servers in some cases (like when using a proxy)
2944         which confuses them and makes them return 403/404.
2945
2946         * platform/network/soup/ResourceHandleSoup.cpp:
2947         (WebCore::startHttp):
2948         (WebCore::):
2949
2950 2009-09-08  Kenneth Rohde Christiansen  <kenneth@webkit.org>
2951
2952         Reviewed by Simon Hausmann.
2953
2954         Add QGraphicsScene events support to the Qt platform events.
2955
2956         * platform/PlatformMouseEvent.h:
2957         * platform/PlatformWheelEvent.h:
2958         * platform/qt/PlatformMouseEventQt.cpp:
2959         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
2960         * platform/qt/WheelEventQt.cpp:
2961         (WebCore::PlatformWheelEvent::applyDelta):
2962         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
2963
2964 2009-09-08  Michael Nordman  <michaeln@google.com>
2965
2966         Reviewed by Eric Seidel.
2967
2968         [Chromium] Cleanup: remove a few deprecated methods.
2969         https://bugs.webkit.org/show_bug.cgi?id=28960
2970
2971         No new tests, just syntactic sugar.
2972
2973         * platform/network/chromium/ResourceRequest.h:
2974         * platform/network/chromium/ResourceResponse.h:
2975
2976 2009-09-08  Yongjun Zhang  <yongjun.zhang@nokia.com>
2977
2978         Reviewed by Ariya Hidayat.
2979
2980         https://bugs.webkit.org/show_bug.cgi?id=28981
2981
2982         [Qt] make npapi.h compile in winscw compiler.
2983
2984         Add XP_SYMBIAN macro to identify Symbian OS; this macro should be used for Symbian
2985         specific changes in npapi.h.
2986         Undefine XP_WIN when building for Symbian to avoid including Windows specific code.
2987
2988         * bridge/npapi.h:
2989
2990 2009-09-08  Oliver Hunt  <oliver@apple.com>
2991
2992         Reviewed by Geoff Garen.
2993
2994         Web Inspector assertion failure related to marking
2995         https://bugs.webkit.org/show_bug.cgi?id=28997
2996
2997         When wrapping the callback the JSInspectorCallbackWrapper creator was using
2998         inheritorID for the prototype structure which is unsafe for anything other
2999         than a pure JS object.  Instead we now create a new structure, which while
3000         inefficient is not problematic as this code is not hit frequently.
3001
3002         * bindings/js/JSInspectorCallbackWrapper.cpp:
3003         (WebCore::JSInspectorCallbackWrapper::wrap):
3004
3005 2009-09-08  Kelly Norton  <knorton@google.com>
3006
3007         Reviewed by Dimitri Glazkov.
3008
3009         Add missing extension to the file entry in WebCore.vcproj.
3010
3011         * WebCore.vcproj/WebCore.vcproj: Added "cpp".
3012
3013 2009-09-08  Jian Li  <jianli@chromium.org>
3014
3015         Reviewed by David Levin.
3016
3017         dataTransfer.types() should not return Files if file list is empty in the clipboard.
3018         https://bugs.webkit.org/show_bug.cgi?id=28891
3019
3020         We change the behavior to handle the empty file list in order to match the spec.
3021
3022         Tested by clipboard-file-access.html.
3023
3024         * platform/mac/ClipboardMac.mm:
3025         (WebCore::addHTMLClipboardTypesForCocoaType):
3026         (WebCore::ClipboardMac::types):
3027
3028 2009-09-08  Steve VanDeBogart  <vandebo@chromium.org>
3029
3030         Reviewed by Eric Seidel.
3031
3032         Handle middle click in Chromium like QT
3033         https://bugs.webkit.org/show_bug.cgi?id=28696
3034
3035         Tested by middle-click-onpaste.html.
3036
3037         * platform/Pasteboard.h:
3038         * platform/chromium/ChromiumBridge.h:
3039         * platform/chromium/ClipboardChromium.cpp:
3040         (WebCore::ClipboardChromium::getData):
3041         * platform/chromium/PasteboardChromium.cpp:
3042         (WebCore::Pasteboard::Pasteboard):
3043         (WebCore::Pasteboard::isSelectionMode):
3044         (WebCore::Pasteboard::setSelectionMode):
3045         (WebCore::Pasteboard::canSmartReplace):
3046         (WebCore::Pasteboard::plainText):
3047         (WebCore::Pasteboard::documentFragment):
3048         * platform/chromium/PasteboardPrivate.h:
3049         (WebCore::PasteboardPrivate::):
3050
3051 2009-09-08  Kelly Norton  <knorton@google.com>
3052
3053         Reviewed by Eric Seidel.
3054
3055         WebInspector: Adds a timeline agent to InspectorController that collects
3056         high-level timing data about event dispatch, layout, painting and HTML
3057         parsing and makes it available to Inspector.
3058         https://bugs.webkit.org/show_bug.cgi?id=25503
3059
3060         * WebCore.gypi:
3061         * WebCore.xcodeproj/project.pbxproj:
3062         * dom/Document.cpp:
3063         (WebCore::Document::recalcStyle):
3064         * dom/Document.h:
3065         (WebCore::Document::inspectorTimelineAgent):
3066         * dom/Node.cpp:
3067         (WebCore::Node::dispatchGenericEvent):
3068         * html/HTMLTokenizer.cpp:
3069         (WebCore::HTMLTokenizer::write):
3070         * inspector/DOMDispatchTimelineItem.cpp: Added.
3071         (WebCore::DOMDispatchTimelineItem::DOMDispatchTimelineItem):
3072         (WebCore::DOMDispatchTimelineItem::convertToScriptObject):
3073         * inspector/DOMDispatchTimelineItem.h: Added.
3074         (WebCore::DOMDispatchTimelineItem::~DOMDispatchTimelineItem):
3075         * inspector/InspectorBackend.cpp:
3076         (WebCore::InspectorBackend::enableTimeline):
3077         (WebCore::InspectorBackend::disableTimeline):
3078         (WebCore::InspectorBackend::timelineEnabled):
3079         * inspector/InspectorBackend.h:
3080         * inspector/InspectorBackend.idl:
3081         * inspector/InspectorController.cpp:
3082         (WebCore::InspectorController::setFrontendProxyObject):
3083         (WebCore::InspectorController::close):
3084         (WebCore::InspectorController::resetScriptObjects):
3085         (WebCore::InspectorController::enableTimeline):
3086         (WebCore::InspectorController::disableTimeline):
3087         (WebCore::InspectorController::timelineEnabled):
3088         * inspector/InspectorController.h:
3089         (WebCore::InspectorController::timelineAgent):
3090         * inspector/InspectorFrontend.cpp:
3091         (WebCore::InspectorFrontend::timelineWasEnabled):
3092         (WebCore::InspectorFrontend::timelineWasDisabled):
3093         (WebCore::InspectorFrontend::addItemToTimeline):
3094         * inspector/InspectorFrontend.h:
3095         * inspector/InspectorTimelineAgent.cpp: Added.
3096         (WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
3097         (WebCore::InspectorTimelineAgent::~InspectorTimelineAgent):
3098         (WebCore::InspectorTimelineAgent::willDispatchDOMEvent):
3099         (WebCore::InspectorTimelineAgent::didDispatchDOMEvent):
3100         (WebCore::InspectorTimelineAgent::willLayout):
3101         (WebCore::InspectorTimelineAgent::didLayout):
3102         (WebCore::InspectorTimelineAgent::willRecalculateStyle):
3103         (WebCore::InspectorTimelineAgent::didRecalculateStyle):
3104         (WebCore::InspectorTimelineAgent::willPaint):
3105         (WebCore::InspectorTimelineAgent::didPaint):
3106         (WebCore::InspectorTimelineAgent::willWriteHTML):
3107         (WebCore::InspectorTimelineAgent::didWriteHTML):
3108         (WebCore::InspectorTimelineAgent::reset):
3109         (WebCore::InspectorTimelineAgent::didCompleteCurrentRecord):
3110         (WebCore::InspectorTimelineAgent::currentTimeInMilliseconds):
3111         (WebCore::InspectorTimelineAgent::sessionTimeInMilliseconds):
3112         * inspector/InspectorTimelineAgent.h: Added.
3113         * inspector/TimelineItem.cpp: Added.
3114         (WebCore::TimelineItem::TimelineItem):
3115         (WebCore::TimelineItem::addToTimeline):
3116         (WebCore::TimelineItem::convertToScriptObject):
3117         (WebCore::TimelineItem::convertChildrenToScriptArray):
3118         (WebCore::TimelineItem::addChildItem):
3119         * inspector/TimelineItem.h: Added.
3120         (WebCore::):
3121         (WebCore::TimelineItem::~TimelineItem):
3122         (WebCore::TimelineItem::previous):
3123         (WebCore::TimelineItem::releasePrevious):
3124         (WebCore::TimelineItem::setEndTime):
3125         (WebCore::TimelineItem::type):
3126         * inspector/front-end/TimelineAgent.js: Added.
3127         (WebInspector.TimelineAgent):
3128         (WebInspector.addItemToTimeline):
3129         (WebInspector.timelineWasEnabled):
3130         (WebInspector.timelineWasDisabled):
3131         * inspector/front-end/inspector.html:
3132         * page/FrameView.cpp:
3133         (WebCore::FrameView::layout):
3134         (WebCore::FrameView::paintContents):
3135         * page/FrameView.h:
3136         (WebCore::FrameView::inspectorTimelineAgent):
3137         * page/Page.cpp:
3138         (WebCore::Page::inspectorTimelineAgent):
3139         * page/Page.h:
3140
3141 2009-09-08  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
3142
3143         Reviewed by Simon Hausmann.
3144
3145         [Qt] Fix unused variable warnings
3146         https://bugs.webkit.org/show_bug.cgi?id=29018
3147
3148         No functional change, no tests.
3149
3150         * history/qt/HistoryItemQt.cpp:
3151         (WebCore::HistoryItem::restoreState):
3152         * platform/graphics/qt/ImageBufferQt.cpp:
3153         (WebCore::putImageData):
3154         * platform/qt/RenderThemeQt.cpp:
3155         (WebCore::RenderThemeQt::paintMenuList):
3156
3157 2009-09-08  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
3158
3159         Reviewed by Ariya Hidayat.
3160
3161         [Qt] Use the declaration order in initializer lists
3162         https://bugs.webkit.org/show_bug.cgi?id=29017
3163
3164         No functional change, no new tests.
3165
3166         * platform/graphics/qt/FontCacheQt.cpp:
3167         (WebCore::FontPlatformDataCacheKey::FontPlatformDataCacheKey):
3168         * platform/network/qt/QNetworkReplyHandler.cpp:
3169         (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
3170
3171 2009-09-08  Kent Tamura  <tkent@chromium.org>
3172
3173         Reviewed by Eric Seidel.
3174
3175         Implement ValidityState::typeMismatch() for <input type=number>.
3176         https://bugs.webkit.org/show_bug.cgi?id=28934
3177
3178         Test: fast/forms/ValidityState-typeMismatch-number.html
3179
3180         * html/HTMLInputElement.cpp:
3181         (WebCore::HTMLInputElement::formStringToDouble):
3182         * html/HTMLInputElement.h:
3183         * html/ValidityState.cpp:
3184         (WebCore::ValidityState::typeMismatch):
3185         * html/ValidityState.h:
3186
3187 2009-09-08  Andras Becsi  <becsi.andras@stud.u-szeged.hu>
3188
3189         Reviewed by Gustavo Noronha.
3190
3191         [Gtk] Another attempt of a buildfix.
3192
3193         * GNUmakefile.am: Modified. Remove some extra IDL files added in r48153.
3194
3195 2009-09-08  Kenneth Rohde Christiansen  <kenneth@webkit.org>
3196
3197         Reviewed by Simon Hausmann.
3198
3199         [Qt] Make cursor set cleaner in QtWebKit Api: eliminate SetCursorEvent hack.
3200         https://bugs.webkit.org/show_bug.cgi?id=28865
3201
3202         Save the QCursor as a property in WidgetQt::setCursor
3203         and actually change the cursor in QWebView::event() by making use
3204         of the QEvent::DynamicPropertyChange event type.
3205         When unsetCursor() is called on the QWidget we can fallback to
3206         the cursor set by WebCore.
3207
3208         Patch by Kenneth Rohde Christiansen <kenneth@webkit.org> and
3209                  Antonio Gomes <antonio.gomes@openbossa.org> on 2009-09-07
3210
3211         * platform/qt/WidgetQt.cpp:
3212         (WebCore::Widget::setCursor):
3213
3214 2009-09-08  Andras Becsi  <becsi.andras@stud.u-szeged.hu>
3215
3216         Reviewed by Gustavo Noronha.
3217
3218         [Gtk] Buildfix for build error introduced in r48150.
3219
3220         * GNUmakefile.am: Modified. Added missing IDL files.
3221
3222 2009-09-08  Csaba Osztrogonac  <oszi@inf.u-szeged.hu>
3223
3224         Reviewed by Tor Arne Vestbø.
3225
3226         [Qt] Buildfix. Build error caused by r48150.
3227
3228         * WebCore.pro: missing IDL files added
3229
3230 2009-09-07  Chris Marrin  <cmarrin@apple.com>
3231
3232         Reviewed by Oliver Hunt.
3233
3234         Update Canvas 3D implementation to match spec
3235         https://bugs.webkit.org/show_bug.cgi?id=29010
3236
3237         This adds several new CanvasXXXArray classes each of which has a custom constructor
3238         and custom getters and setters. Also changed CanvasRenderingContext3D and GraphicsContext3D
3239         to match the new and changed API.
3240
3241         * DerivedSources.make:
3242         * WebCore.xcodeproj/project.pbxproj:
3243         * bindings/js/JSCanvasArrayBufferConstructor.cpp: Added with properties svn:eol-style and svn:mime-type.
3244         * bindings/js/JSCanvasArrayBufferConstructor.h: Added with properties svn:eol-style and svn:mime-type.
3245         * bindings/js/JSCanvasArrayCustom.cpp: Added with properties svn:eol-style and svn:mime-type.
3246         * bindings/js/JSCanvasByteArrayConstructor.cpp: Added with properties svn:eol-style and svn:mime-type.
3247         * bindings/js/JSCanvasByteArrayConstructor.h: Added with properties svn:eol-style and svn:mime-type.
3248         * bindings/js/JSCanvasByteArrayCustom.cpp: Added with properties svn:eol-style and svn:mime-type.
3249         * bindings/js/JSCanvasFloatArrayConstructor.cpp: Added with properties svn:eol-style and svn:mime-type.
3250         * bindings/js/JSCanvasFloatArrayConstructor.h: Added with properties svn:eol-style and svn:mime-type.
3251         * bindings/js/JSCanvasFloatArrayCustom.cpp: Added with properties svn:eol-style and svn:mime-type.
3252         * bindings/js/JSCanvasIntArrayConstructor.cpp: Added with properties svn:eol-style and svn:mime-type.
3253         * bindings/js/JSCanvasIntArrayConstructor.h: Added with properties svn:eol-style and svn:mime-type.
3254         * bindings/js/JSCanvasIntArrayCustom.cpp: Added with properties svn:eol-style and svn:mime-type.
3255         * bindings/js/JSCanvasRenderingContext3DCustom.cpp:
3256         (WebCore::JSCanvasRenderingContext3D::bufferData):
3257         (WebCore::JSCanvasRenderingContext3D::bufferSubData):
3258         (WebCore::JSCanvasRenderingContext3D::texImage2D):
3259         (WebCore::JSCanvasRenderingContext3D::texSubImage2D):
3260         * bindings/js/JSCanvasShortArrayConstructor.cpp: Added with properties svn:eol-style and svn:mime-type.
3261         * bindings/js/JSCanvasShortArrayConstructor.h: Added with properties svn:eol-style and svn:mime-type.
3262         * bindings/js/JSCanvasShortArrayCustom.cpp: Added with properties svn:eol-style and svn:mime-type.
3263         * bindings/js/JSCanvasUnsignedByteArrayConstructor.cpp: Added with properties svn:eol-style and svn:mime-type.
3264         * bindings/js/JSCanvasUnsignedByteArrayConstructor.h: Added with properties svn:eol-style and svn:mime-type.
3265         * bindings/js/JSCanvasUnsignedByteArrayCustom.cpp: Added with properties svn:eol-style and svn:mime-type.
3266         * bindings/js/JSCanvasUnsignedIntArrayConstructor.cpp: Added with properties svn:eol-style and svn:mime-type.
3267         * bindings/js/JSCanvasUnsignedIntArrayConstructor.h: Added with properties svn:eol-style and svn:mime-type.
3268         * bindings/js/JSCanvasUnsignedIntArrayCustom.cpp: Added with properties svn:eol-style and svn:mime-type.
3269         * bindings/js/JSCanvasUnsignedShortArrayConstructor.cpp: Added with properties svn:eol-style and svn:mime-type.
3270         * bindings/js/JSCanvasUnsignedShortArrayConstructor.h: Added with properties svn:eol-style and svn:mime-type.
3271         * bindings/js/JSCanvasUnsignedShortArrayCustom.cpp: Added with properties svn:eol-style and svn:mime-type.
3272         * bindings/js/JSDOMWindowCustom.cpp:
3273         (WebCore::JSDOMWindow::canvasArrayBuffer):
3274         (WebCore::JSDOMWindow::canvasByteArray):
3275         (WebCore::JSDOMWindow::canvasUnsignedByteArray):
3276         (WebCore::JSDOMWindow::canvasIntArray):
3277         (WebCore::JSDOMWindow::canvasUnsignedIntArray):
3278         (WebCore::JSDOMWindow::canvasShortArray):
3279         (WebCore::JSDOMWindow::canvasUnsignedShortArray):
3280         (WebCore::JSDOMWindow::canvasFloatArray):
3281         * html/HTMLCanvasElement.cpp:
3282         (WebCore::HTMLCanvasElement::getContext):
3283         (WebCore::HTMLCanvasElement::paint):
3284         * html/canvas/CanvasArray.cpp: Added with properties svn:eol-style and svn:mime-type.
3285         * html/canvas/CanvasArray.h: Added with properties svn:eol-style and svn:mime-type.
3286         * html/canvas/CanvasArray.idl: Added.
3287         * html/canvas/CanvasArrayBuffer.cpp: Added with properties svn:eol-style and svn:mime-type.
3288         * html/canvas/CanvasArrayBuffer.h: Added with properties svn:eol-style and svn:mime-type.
3289         * html/canvas/CanvasArrayBuffer.idl: Added.
3290         * html/canvas/CanvasByteArray.cpp:
3291         * html/canvas/CanvasByteArray.h:
3292         * html/canvas/CanvasByteArray.idl:
3293         * html/canvas/CanvasFloatArray.cpp: Added with properties svn:eol-style and svn:mime-type.
3294         * html/canvas/CanvasFloatArray.h: Added with properties svn:eol-style and svn:mime-type.
3295         * html/canvas/CanvasFloatArray.idl: Added.
3296         * html/canvas/CanvasIntArray.cpp: Added with properties svn:eol-style and svn:mime-type.
3297         * html/canvas/CanvasIntArray.h: Added with properties svn:eol-style and svn:mime-type.
3298         * html/canvas/CanvasIntArray.idl: Added.
3299         * html/canvas/CanvasRenderingContext3D.cpp:
3300         (WebCore::CanvasRenderingContext3D::CanvasRenderingContext3D):
3301         (WebCore::CanvasRenderingContext3D::markContextChanged):
3302         (WebCore::CanvasRenderingContext3D::beginPaint):
3303         (WebCore::CanvasRenderingContext3D::endPaint):
3304         (WebCore::CanvasRenderingContext3D::reshape):
3305         (WebCore::CanvasRenderingContext3D::sizeInBytes):
3306         (WebCore::CanvasRenderingContext3D::bindTexture):
3307         (WebCore::CanvasRenderingContext3D::bufferData):
3308         (WebCore::CanvasRenderingContext3D::bufferSubData):
3309         (WebCore::CanvasRenderingContext3D::checkFramebufferStatus):
3310         (WebCore::CanvasRenderingContext3D::clear):
3311         (WebCore::CanvasRenderingContext3D::createBuffer):
3312         (WebCore::CanvasRenderingContext3D::createFramebuffer):
3313         (WebCore::CanvasRenderingContext3D::createTexture):
3314         (WebCore::CanvasRenderingContext3D::createProgram):
3315         (WebCore::CanvasRenderingContext3D::createRenderbuffer):
3316         (WebCore::CanvasRenderingContext3D::createShader):
3317         (WebCore::CanvasRenderingContext3D::deleteBuffer):
3318         (WebCore::CanvasRenderingContext3D::deleteFramebuffer):
3319         (WebCore::CanvasRenderingContext3D::deleteProgram):
3320         (WebCore::CanvasRenderingContext3D::deleteRenderbuffer):
3321         (WebCore::CanvasRenderingContext3D::deleteShader):
3322         (WebCore::CanvasRenderingContext3D::deleteTexture):
3323         (WebCore::CanvasRenderingContext3D::drawArrays):
3324         (WebCore::CanvasRenderingContext3D::drawElements):
3325         (WebCore::CanvasRenderingContext3D::getBoolean):
3326         (WebCore::CanvasRenderingContext3D::getBooleanv):
3327         (WebCore::CanvasRenderingContext3D::getBufferParameteri):
3328         (WebCore::CanvasRenderingContext3D::getBufferParameteriv):
3329         (WebCore::CanvasRenderingContext3D::getFloat):
3330         (WebCore::CanvasRenderingContext3D::getFloatv):
3331         (WebCore::CanvasRenderingContext3D::getFramebufferAttachmentParameteri):
3332         (WebCore::CanvasRenderingContext3D::getFramebufferAttachmentParameteriv):
3333         (WebCore::CanvasRenderingContext3D::getInteger):
3334         (WebCore::CanvasRenderingContext3D::getIntegerv):
3335         (WebCore::CanvasRenderingContext3D::getProgrami):
3336         (WebCore::CanvasRenderingContext3D::getProgramiv):
3337         (WebCore::CanvasRenderingContext3D::getProgramInfoLog):
3338         (WebCore::CanvasRenderingContext3D::getRenderbufferParameteri):
3339         (WebCore::CanvasRenderingContext3D::getRenderbufferParameteriv):
3340         (WebCore::CanvasRenderingContext3D::getShaderi):
3341         (WebCore::CanvasRenderingContext3D::getShaderiv):
3342         (WebCore::CanvasRenderingContext3D::getShaderInfoLog):
3343         (WebCore::CanvasRenderingContext3D::getShaderSource):
3344         (WebCore::CanvasRenderingContext3D::getTexParameterf):
3345         (WebCore::CanvasRenderingContext3D::getTexParameterfv):
3346         (WebCore::CanvasRenderingContext3D::getTexParameteri):
3347         (WebCore::CanvasRenderingContext3D::getTexParameteriv):
3348         (WebCore::CanvasRenderingContext3D::getUniformf):
3349         (WebCore::CanvasRenderingContext3D::getUniformfv):
3350         (WebCore::CanvasRenderingContext3D::getUniformi):
3351         (WebCore::CanvasRenderingContext3D::getUniformiv):
3352         (WebCore::CanvasRenderingContext3D::getUniformLocation):
3353         (WebCore::CanvasRenderingContext3D::getVertexAttribf):
3354         (WebCore::CanvasRenderingContext3D::getVertexAttribfv):
3355         (WebCore::CanvasRenderingContext3D::getVertexAttribi):
3356         (WebCore::CanvasRenderingContext3D::getVertexAttribiv):
3357         (WebCore::CanvasRenderingContext3D::getVertexAttribOffset):
3358         (WebCore::CanvasRenderingContext3D::texImage2D):
3359         (WebCore::CanvasRenderingContext3D::texParameterf):
3360         (WebCore::CanvasRenderingContext3D::texParameteri):
3361         (WebCore::CanvasRenderingContext3D::texSubImage2D):
3362         (WebCore::CanvasRenderingContext3D::uniform1f):
3363         (WebCore::CanvasRenderingContext3D::uniform1fv):
3364         (WebCore::CanvasRenderingContext3D::uniform1i):
3365         (WebCore::CanvasRenderingContext3D::uniform1iv):
3366         (WebCore::CanvasRenderingContext3D::uniform2f):
3367         (WebCore::CanvasRenderingContext3D::uniform2fv):
3368         (WebCore::CanvasRenderingContext3D::uniform2i):
3369         (WebCore::CanvasRenderingContext3D::uniform2iv):
3370         (WebCore::CanvasRenderingContext3D::uniform3f):
3371         (WebCore::CanvasRenderingContext3D::uniform3fv):
3372         (WebCore::CanvasRenderingContext3D::uniform3i):
3373         (WebCore::CanvasRenderingContext3D::uniform3iv):
3374         (WebCore::CanvasRenderingContext3D::uniform4f):
3375         (WebCore::CanvasRenderingContext3D::uniform4fv):
3376         (WebCore::CanvasRenderingContext3D::uniform4i):
3377         (WebCore::CanvasRenderingContext3D::uniform4iv):
3378         (WebCore::CanvasRenderingContext3D::uniformMatrix2fv):
3379         (WebCore::CanvasRenderingContext3D::uniformMatrix3fv):
3380         (WebCore::CanvasRenderingContext3D::uniformMatrix4fv):
3381         (WebCore::CanvasRenderingContext3D::useProgram):
3382         (WebCore::CanvasRenderingContext3D::validateProgram):
3383         (WebCore::CanvasRenderingContext3D::vertexAttrib1f):
3384         (WebCore::CanvasRenderingContext3D::vertexAttrib1fv):
3385         (WebCore::CanvasRenderingContext3D::vertexAttrib2f):
3386         (WebCore::CanvasRenderingContext3D::vertexAttrib2fv):
3387         (WebCore::CanvasRenderingContext3D::vertexAttrib3f):
3388         (WebCore::CanvasRenderingContext3D::vertexAttrib3fv):
3389         (WebCore::CanvasRenderingContext3D::vertexAttrib4f):
3390         (WebCore::CanvasRenderingContext3D::vertexAttrib4fv):
3391         (WebCore::CanvasRenderingContext3D::vertexAttribPointer):
3392         (WebCore::CanvasRenderingContext3D::viewport):
3393         * html/canvas/CanvasRenderingContext3D.h:
3394         * html/canvas/CanvasRenderingContext3D.idl:
3395         * html/canvas/CanvasShortArray.cpp: Added with properties svn:eol-style and svn:mime-type.
3396         * html/canvas/CanvasShortArray.h: Added with properties svn:eol-style and svn:mime-type.
3397         * html/canvas/CanvasShortArray.idl: Added.
3398         * html/canvas/CanvasTexture.cpp:
3399         (WebCore::CanvasTexture::CanvasTexture):
3400         * html/canvas/CanvasTexture.h:
3401         (WebCore::CanvasTexture::isCubeMapRWrapModeInitialized):
3402         (WebCore::CanvasTexture::setCubeMapRWrapModeInitialized):
3403         * html/canvas/CanvasUnsignedByteArray.cpp: Added with properties svn:eol-style and svn:mime-type.
3404         * html/canvas/CanvasUnsignedByteArray.h: Added with properties svn:eol-style and svn:mime-type.
3405          * html/canvas/CanvasUnsignedByteArray.idl: Added.
3406         * html/canvas/CanvasUnsignedIntArray.cpp: Added with properties svn:eol-style and svn:mime-type.
3407         * html/canvas/CanvasUnsignedIntArray.h: Added with properties svn:eol-style and svn:mime-type.
3408         * html/canvas/CanvasUnsignedIntArray.idl: Added.
3409         * html/canvas/CanvasUnsignedShortArray.cpp: Added with properties svn:eol-style and svn:mime-type.
3410         * html/canvas/CanvasUnsignedShortArray.h: Added with properties svn:eol-style and svn:mime-type.
3411         * html/canvas/CanvasUnsignedShortArray.idl: Added.
3412         * page/DOMWindow.idl:
3413         * platform/graphics/GraphicsContext3D.h:
3414         * platform/graphics/mac/GraphicsContext3DMac.cpp:
3415         (WebCore::GraphicsContext3D::beginPaint):
3416         (WebCore::GraphicsContext3D::endPaint):
3417         (WebCore::GraphicsContext3D::bindTexture):
3418         (WebCore::GraphicsContext3D::bufferData):
3419         (WebCore::GraphicsContext3D::bufferSubData):
3420         (WebCore::GraphicsContext3D::checkFramebufferStatus):
3421         (WebCore::GraphicsContext3D::drawArrays):
3422         (WebCore::GraphicsContext3D::drawElements):
3423         (WebCore::GraphicsContext3D::texParameterf):
3424         (WebCore::GraphicsContext3D::texParameteri):
3425         (WebCore::GraphicsContext3D::uniform1f):
3426         (WebCore::GraphicsContext3D::uniform1fv):
3427         (WebCore::GraphicsContext3D::uniform2f):
3428         (WebCore::GraphicsContext3D::uniform2fv):
3429         (WebCore::GraphicsContext3D::uniform3f):
3430         (WebCore::GraphicsContext3D::uniform3fv):
3431         (WebCore::GraphicsContext3D::uniform4f):
3432         (WebCore::GraphicsContext3D::uniform4fv):
3433         (WebCore::GraphicsContext3D::uniform1i):
3434         (WebCore::GraphicsContext3D::uniform1iv):
3435         (WebCore::GraphicsContext3D::uniform2i):
3436         (WebCore::GraphicsContext3D::uniform2iv):
3437         (WebCore::GraphicsContext3D::uniform3i):
3438         (WebCore::GraphicsContext3D::uniform3iv):
3439         (WebCore::GraphicsContext3D::uniform4i):
3440         (WebCore::GraphicsContext3D::uniform4iv):
3441         (WebCore::GraphicsContext3D::uniformMatrix2fv):
3442         (WebCore::GraphicsContext3D::uniformMatrix3fv):
3443         (WebCore::GraphicsContext3D::uniformMatrix4fv):
3444         (WebCore::GraphicsContext3D::vertexAttrib1f):
3445         (WebCore::GraphicsContext3D::vertexAttrib1fv):
3446         (WebCore::GraphicsContext3D::vertexAttrib2f):
3447         (WebCore::GraphicsContext3D::vertexAttrib2fv):
3448         (WebCore::GraphicsContext3D::vertexAttrib3f):
3449         (WebCore::GraphicsContext3D::vertexAttrib3fv):
3450         (WebCore::GraphicsContext3D::vertexAttrib4f):
3451         (WebCore::GraphicsContext3D::vertexAttrib4fv):
3452         (WebCore::GraphicsContext3D::vertexAttribPointer):
3453         (WebCore::GraphicsContext3D::getBoolean):
3454         (WebCore::GraphicsContext3D::getBooleanv):
3455         (WebCore::GraphicsContext3D::getFloat):
3456         (WebCore::GraphicsContext3D::getFloatv):
3457         (WebCore::GraphicsContext3D::getInteger):
3458         (WebCore::GraphicsContext3D::getIntegerv):
3459         (WebCore::GraphicsContext3D::getBufferParameteri):
3460         (WebCore::GraphicsContext3D::getBufferParameteriv):
3461         (WebCore::GraphicsContext3D::getFramebufferAttachmentParameteri):
3462         (WebCore::GraphicsContext3D::getFramebufferAttachmentParameteriv):
3463         (WebCore::GraphicsContext3D::getProgrami):
3464         (WebCore::GraphicsContext3D::getProgramiv):
3465         (WebCore::GraphicsContext3D::getRenderbufferParameteri):
3466         (WebCore::GraphicsContext3D::getRenderbufferParameteriv):
3467         (WebCore::GraphicsContext3D::getShaderi):
3468         (WebCore::GraphicsContext3D::getShaderiv):
3469         (WebCore::GraphicsContext3D::getTexParameterf):
3470         (WebCore::GraphicsContext3D::getTexParameterfv):
3471         (WebCore::GraphicsContext3D::getTexParameteri):
3472         (WebCore::GraphicsContext3D::getTexParameteriv):
3473         (WebCore::GraphicsContext3D::getUniformf):
3474         (WebCore::GraphicsContext3D::getUniformfv):
3475         (WebCore::GraphicsContext3D::getUniformi):
3476         (WebCore::GraphicsContext3D::getUniformiv):
3477         (WebCore::GraphicsContext3D::getVertexAttribf):
3478         (WebCore::GraphicsContext3D::getVertexAttribfv):
3479         (WebCore::GraphicsContext3D::getVertexAttribi):
3480         (WebCore::GraphicsContext3D::getVertexAttribiv):
3481         (WebCore::GraphicsContext3D::getVertexAttribOffset):
3482         (WebCore::GraphicsContext3D::texImage2D):
3483         (WebCore::GraphicsContext3D::texSubImage2D):
3484         (WebCore::GraphicsContext3D::sizeInBytes):
3485
3486 2009-09-08  Jocelyn Turcotte  <jocelyn.turcotte@nokia.com>
3487
3488         Reviewed by Timothy Hatcher.
3489
3490         Make m_windowVisible more consistent with the actual visibility of the inspector.
3491
3492         * inspector/InspectorController.cpp:
3493         (WebCore::InspectorController::setWindowVisible):
3494
3495 2009-09-07  Adam Barth  <abarth@webkit.org>
3496
3497         Unreviewed speculative build fix for Snow Leopard.
3498
3499         * platform/GeolocationService.cpp:
3500         (WebCore::createGeolocationServiceNull):
3501
3502 2009-09-07  Steve Block  <steveblock@google.com>
3503
3504         Reviewed by Adam Barth.
3505
3506         Adds a mock Geolocation service. This will be used to provide predictable behavior of the
3507         Geolocation API for use in LayoutTests. Later changes will integrate the the mock
3508         Geolocation service with DumpRenderTree.
3509         https://bugs.webkit.org/show_bug.cgi?id=28264
3510
3511         The mock Geolocation service returns a fixed position or error. This position or error can be
3512         set through static methods on the GeolocationService class. The position or error is shared
3513         between all instances of the mock Geolocation service.
3514
3515         Implementation details.
3516         The GeolocationService object maintains a pointer to a factory function which it uses to create
3517         Geolocation service instances. Each platform implementing Geolocation sets this pointer
3518         to the factory function for their platform's implementation. When the mock Geolocation service
3519         is activated, the factory function pointer is reset to the factory function for the mock service.
3520
3521         Test: fast/dom/Geolocation/error.html
3522
3523         * WebCore.base.exp: Modified. Exports GeolocationServiceMock methods.
3524         * GNUMakefile.am: Modified. Added GeolocationServiceMock files.
3525         * WebCore.gypi: Modified. Added GeolocationServiceMock files.
3526         * WebCore.pro: Modified. Added GeolocationServiceMock files.
3527         * WebCore.vcproj/WebCore.vcproj: Modified. Added GeolocationServiceMock files.
3528         * WebCore.vcproj/WebCoreCommon.vsprops: Modified. Added mock directory to includes.
3529         * WebCore.xcodeproj/project.pbxproj: Modified. Added GeolocationServiceMock files and exports some headers.
3530         * WebCoreSources.bkl: Modified. Added GeolocationServiceMock files.
3531         * page/ChromeClient.h: Modified. Fixed comment.
3532         * page/Geolocation.cpp: Modified.
3533         (WebCore::Geolocation::setIsAllowed): Modified. Fixed error string.
3534         * platform/GeolocationService.cpp: Modified.
3535         (WebCore::createGeolocationServiceNull): Added. Returns null in place of a Geolocation service. Used to avoid link errors on platforms where Geolocation is not implemented.
3536         (WebCore::GeolocationService::create): Added. Uses the factory function pointer to create a Geolocation service implementation.
3537         (WebCore::GeolocationService::useMock): Added. Configures the GeolocationServie to use the mock implementation.
3538         * platform/GeolocationService.h: Modified.
3539         * platform/mock: Added.
3540         * platform/mock/GeolocationServiceMock.cpp: Added.
3541         (WebCore::GeolocationServiceMock::create): Added. Creates a GeolocationServiceMock object.
3542         (WebCore::GeolocationServiceMock::GeolocationServiceMock): Added. Constructor.
3543         (WebCore::GeolocationServiceMock::~GeolocationServiceMock): Added. Destructor.
3544         (WebCore::GeolocationServiceMock::setPosition): Added. Sets the position that will be returned by the object.
3545         (WebCore::GeolocationServiceMock::setError): Added. Sets the error that will be returned by the object.
3546         (WebCore::GeolocationServiceMock::startUpdating): Added. GeolocationService implementation. Starts the service.
3547         (WebCore::GeolocationServiceMock::stopUpdating): Added. GeolocationService implementation. Stops the service.
3548         (WebCore::GeolocationServiceMock::timerFired): Added. Used to provide an asynchronous callback when the service is started.
3549         (WebCore::GeolocationServiceMock::makeGeolocationCallbackFromAllInstances): Added. Used to call back when the position or error is updated.
3550         (WebCore::GeolocationServiceMock::makeGeolocationCallback): Added. Used to call back when the service starts.
3551         (WebCore::GeolocationServiceMock::initStatics): Added. Initializes statics members with constructors.
3552         (WebCore::GeolocationServiceMock::cleanUpStatics): Added. Cleans up static members with constructors.
3553         * platform/mock/GeolocationServiceMock.h: Added.
3554         (WebCore::GeolocationServiceMock::lastPosition): Added. Returns the fixed position.
3555         (WebCore::GeolocationServiceMock::lastError): Added. Returns the fixed error.
3556         * platform/gtk/GeolocationServiceGtk.cpp: Modified.
3557         (WebCore::GeolocationServiceGtk::create): Added. Creates an instance of GeolocationServiceGtk.
3558         * platform/gtk/GeolocationServiceGtk.h: Modified.
3559         * platform/mac/GeolocationServiceMac.h: Modified.
3560         * platform/mac/GeolocationServiceMac.mm: Modified.
3561         (WebCore::GeolocationServiceMac::create): Added. Creates an instance of GeolocationServiceMac.
3562
3563 2009-09-07  Adam Barth  <abarth@webkit.org>
3564
3565         Reviewed by Dimitri Glazkov.
3566
3567         https://bugs.webkit.org/show_bug.cgi?id=28985
3568
3569         We need to be slightly more careful about how we pick up a script
3570         execution context.  In particular, we were getting the wrong document
3571         for frames that had been navigated somewhere else.
3572
3573         In the long term, we should think about a better algorithm for
3574         computing the script context.
3575
3576         Fixes LayoutTests/http/tests/xmlhttprequest/detaching-frame-2.html
3577
3578         * bindings/v8/V8Proxy.cpp:
3579         (WebCore::V8Proxy::retrieveFrame):
3580
3581 2009-09-07  Kevin Ollivier  <kevino@theolliviers.com>
3582
3583         wx build fix for 2.8 compilation.
3584
3585         * platform/wx/wxcode/mac/carbon/scrollbar_render.cpp:
3586         (wxRenderer_DrawScrollbar):
3587
3588 2009-09-07  Drew Wilson  <atwilson@google.com>
3589
3590         Unreviewed build fix.
3591
3592         Reverting r48121 to fix Windows build errors.
3593
3594         * DerivedSources.cpp:
3595         * GNUmakefile.am:
3596         * WebCore.xcodeproj/project.pbxproj:
3597         * bindings/js/JSDOMWindowCustom.cpp:
3598         * bindings/js/JSEventTarget.cpp:
3599         (WebCore::toJS):
3600         (WebCore::toEventTarget):
3601         * dom/EventTarget.cpp:
3602         * dom/EventTarget.h:
3603         * page/DOMWindow.idl:
3604         * websockets/WebSocket.cpp:
3605         (WebCore::WebSocket::connect):
3606         (WebCore::WebSocket::send):
3607         (WebCore::WebSocket::close):
3608         (WebCore::WebSocket::bufferedAmount):
3609         (WebCore::WebSocket::addEventListener):
3610         (WebCore::WebSocket::removeEventListener):
3611         (WebCore::WebSocket::dispatchEvent):
3612         (WebCore::WebSocket::didConnect):
3613         (WebCore::WebSocket::didReceiveMessage):
3614         (WebCore::WebSocket::didClose):
3615         (WebCore::WebSocket::dispatchOpenEvent):
3616         (WebCore::WebSocket::dispatchMessageEvent):
3617         (WebCore::WebSocket::dispatchCloseEvent):
3618         * websockets/WebSocket.h:
3619         (WebCore::WebSocket::create):
3620         (WebCore::WebSocket::):
3621         (WebCore::WebSocket::setOnopen):
3622         (WebCore::WebSocket::onopen):
3623         (WebCore::WebSocket::setOnmessage):
3624         (WebCore::WebSocket::onmessage):
3625         (WebCore::WebSocket::setOnclose):
3626         (WebCore::WebSocket::onclose):
3627         (WebCore::WebSocket::toWebSocket):
3628         (WebCore::WebSocket::refEventTarget):
3629         (WebCore::WebSocket::derefEventTarget):
3630         * websockets/WebSocketChannel.cpp: Removed.
3631         * websockets/WebSocketChannel.h: Removed.
3632         * websockets/WebSocketChannelClient.h: Removed.
3633         * websockets/WebSocketHandshake.cpp: Removed.
3634         * websockets/WebSocketHandshake.h: Removed.
3635
3636 2009-09-07  Drew Wilson  <atwilson@google.com>
3637
3638         Unreviewed speculative build fix.
3639
3640         Reverted previous build fix as it didn't fix the problem.
3641
3642         * bindings/js/JSEventTarget.cpp:
3643         (WebCore::toEventTarget):
3644
3645 2009-09-07  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
3646
3647         Unreviewed, build fix.
3648
3649         [Qt] Fix build after SHARED_WORKERS are enabled by default (r48131)
3650
3651         * WebCore.pro:
3652
3653 2009-09-07  Drew Wilson  <atwilson@google.com>
3654
3655         Unreviewed build fix.
3656
3657         Temporarily removed depenency between JSEventTarget.cpp and WebSocket.h in an attempt to fix a windows build break.
3658
3659         * bindings/js/JSEventTarget.cpp:
3660         (WebCore::toEventTarget):
3661
3662 2009-09-07  Drew Wilson  <atwilson@google.com>
3663
3664         Reviewed by David Levin.
3665
3666         Enable SHARED_WORKERS by default.
3667         https://bugs.webkit.org/show_bug.cgi?id=28959
3668
3669         Tests (enabled in a separate patch):
3670                fast/workers/shared-worker-constructor.html
3671                fast/workers/shared-worker-context-gc.html
3672                fast/workers/shared-worker-event-listener.html
3673                fast/workers/shared-worker-exception.html
3674                fast/workers/shared-worker-frame-lifecycle.html
3675                fast/workers/shared-worker-gc.html
3676                fast/workers/shared-worker-lifecycle.html
3677                fast/workers/shared-worker-load-error.html
3678                fast/workers/shared-worker-location.html
3679                fast/workers/shared-worker-navigator.html
3680                fast/workers/shared-worker-replace-global-constructor.html
3681                fast/workers/shared-worker-replace-self.html
3682                fast/workers/shared-worker-shared.html
3683                fast/workers/shared-worker-simple.html
3684                http/tests/workers/shared-worker-importScripts.html
3685                http/tests/workers/shared-worker-redirect.html
3686                http/tests/xmlhttprequest/workers/shared-worker-close.html
3687                http/tests/xmlhttprequest/workers/shared-worker-methods-async.html
3688                http/tests/xmlhttprequest/workers/shared-worker-methods.html
3689                http/tests/xmlhttprequest/workers/shared-worker-xhr-file-not-found.html
3690
3691         * config.h: Removed some whitespace/touched the file to force a full rebuild on the build-bots.
3692         * Configurations/FeatureDefines.xcconfig:
3693         * WebCore.pro:
3694         * WebCore.vcproj/WebCoreCommon.vsprops:
3695         * WebCore.vcproj/build-generated-files.sh:
3696         * dom/DOMWindow.idl: Removed unnecessary whitespace to force a rebuild on the build-bots to pickup the flag change.
3697         * workers/DefaultSharedWorkerRepository.cpp:
3698         (WebCore::SharedWorkerScriptLoader::load):
3699         Clean up bitrot in SharedWorker code - DenyCrossOriginRedirect is now DenyCrossOriginRequests.
3700         * workers/SharedWorkerContext.cpp:
3701         (WebCore::SharedWorkerContext::dispatchConnect):
3702         Clean up bitrot - updated SharedWorker code to reflect new MessageEvent API.
3703
3704 2009-09-07  Xan Lopez  <xlopez@igalia.com>
3705
3706         Unreviewed build fix.
3707
3708         Add new file to sources list.
3709
3710         * GNUmakefile.am:
3711
3712 2009-09-07  Kevin Ollivier  <kevino@theolliviers.com>
3713
3714         wx build fixes for wx SVN trunk. 
3715
3716         * config.h:
3717         * platform/wx/RenderThemeWx.cpp:
3718         (WebCore::RenderThemeWx::paintButton):
3719         * platform/wx/wxcode/mac/carbon/non-kerned-drawing.cpp:
3720         (WebCore::drawTextWithSpacing):
3721         * platform/wx/wxcode/mac/carbon/scrollbar_render.cpp:
3722         (wxRenderer_DrawScrollbar):
3723
3724 2009-09-07  Chris Hills <chaz@chaz6.com>
3725
3726         Reviewed by Tor Arne Vestbø.
3727
3728         [Qt] Use direct includes for Phonon, not the pretty ones
3729
3730         * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
3731
3732 2009-09-07  Fumitoshi Ukai  <ukai@chromium.org>
3733
3734         Reviewed by Alexey Proskuryakov.
3735
3736         WebSocket API implementation.
3737         https://bugs.webkit.org/show_bug.cgi?id=28038
3738         
3739         Add build systems only for GNUmakefile.am and WebCore.xcodeproj now.
3740         Other build systems will be updated once the code is functional.
3741         Tests will be landed once the code is completed and functional.
3742
3743         * DerivedSources.cpp:
3744         * GNUmakefile.am:
3745         * WebCore.xcodeproj/project.pbxproj:
3746         * bindings/js/JSDOMWindowCustom.cpp:
3747         (WebCore::JSDOMWindow::webSocket):
3748         * bindings/js/JSEventTarget.cpp:
3749         (WebCore::toJS):
3750         (WebCore::toEventTarget):
3751         * dom/EventTarget.cpp:
3752         (WebCore::EventTarget::toWebSocket):
3753         * dom/EventTarget.h:
3754         * page/DOMWindow.idl:
3755         * websockets/WebSocket.cpp:
3756         (WebCore::ProcessWebSocketEventTask::create):
3757         (WebCore::ProcessWebSocketEventTask::performTask):
3758         (WebCore::ProcessWebSocketEventTask::ProcessWebSocketEventTask):
3759         (WebCore::isValidProtocolString):
3760         (WebCore::WebSocket::connect):
3761         (WebCore::WebSocket::send):
3762         (WebCore::WebSocket::close):
3763         (WebCore::WebSocket::bufferedAmount):
3764         (WebCore::WebSocket::addEventListener):
3765         (WebCore::WebSocket::removeEventListener):
3766         (WebCore::WebSocket::dispatchEvent):
3767         (WebCore::WebSocket::didConnect):
3768         (WebCore::WebSocket::didReceiveMessage):
3769         (WebCore::WebSocket::didClose):
3770         (WebCore::WebSocket::dispatchOpenEvent):
3771         (WebCore::WebSocket::dispatchMessageEvent):
3772         (WebCore::WebSocket::dispatchCloseEvent):
3773         * websockets/WebSocket.h:
3774         (WebCore::WebSocket::create):
3775         (WebCore::WebSocket::):
3776         (WebCore::WebSocket::setOnopen):
3777         (WebCore::WebSocket::onopen):
3778         (WebCore::WebSocket::setOnmessage):
3779         (WebCore::WebSocket::onmessage):
3780         (WebCore::WebSocket::setOnclose):
3781         (WebCore::WebSocket::onclose):
3782         (WebCore::WebSocket::toWebSocket):
3783         (WebCore::WebSocket::eventListeners):
3784         (WebCore::WebSocket::refEventTarget):
3785         (WebCore::WebSocket::derefEventTarget):
3786         * websockets/WebSocketChannel.cpp: Added.
3787         * websockets/WebSocketChannel.h: Added.
3788         * websockets/WebSocketChannelClient.h: Added.
3789         * websockets/WebSocketHandshake.cpp: Added.
3790         * websockets/WebSocketHandshake.h: Added.
3791
3792 2009-09-07  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
3793
3794         Reviewed by Xan Lopez.
3795
3796         https://bugs.webkit.org/show_bug.cgi?id=26854
3797         [GTK] Needs API to allow more control over outgoing requests
3798
3799         Add infrastructure required to provide the new
3800         WebKitNetworkResponse object in our API.
3801
3802         * GNUmakefile.am: Add new files to the build.
3803         * platform/network/soup/ResourceRequestSoup.cpp:
3804         (WebCore::ResourceRequest::updateFromSoupMessage):
3805         * platform/network/soup/ResourceResponse.h:
3806         * platform/network/soup/ResourceResponseSoup.cpp: Added.
3807         (WebCore::ResourceResponse::toSoupMessage):
3808
3809 2009-09-07  Mads Ager  <ager@chromium.org>
3810
3811         Reviewed by Adam Barth.
3812
3813         [V8] Cleanup document/frame null-checking in V8DOMWindowCustom.cpp
3814         https://bugs.webkit.org/show_bug.cgi?id=29009
3815
3816         Be consistent in document and frame null checks.
3817
3818         * bindings/v8/custom/V8DOMWindowCustom.cpp:
3819         (WebCore::V8Custom::WindowSetTimeoutImpl):
3820         (WebCore::ACCESSOR_GETTER):
3821         (WebCore::ACCESSOR_SETTER):
3822         (WebCore::CALLBACK_FUNC_DECL):
3823         (WebCore::NAMED_PROPERTY_GETTER):
3824         (WebCore::V8Custom::ClearTimeoutImpl):
3825
3826 2009-09-07  Xan Lopez  <xlopez@igalia.com>
3827
3828         Reviewed by Gustavo Noronha.
3829
3830         [Soup] Limit the number of connections
3831         https://bugs.webkit.org/show_bug.cgi?id=18431
3832
3833         Increase the maximum number of per host and total connections to
3834         similar values than those used by the other modern browsers. Seems
3835         to significantly improve page loading time in many cases.
3836
3837         * platform/network/soup/ResourceHandleSoup.cpp:
3838         (WebCore::ensureSessionIsInitialized):
3839
3840 2009-09-07  Michael Nordman  <michaeln@google.com>
3841
3842         Reviewed by Darin Fisher.
3843
3844         Various minor chromium appcache modifications.
3845         https://bugs.webkit.org/show_bug.cgi?id=28960
3846
3847         No new tests.
3848
3849         * bindings/v8/custom/V8DOMApplicationCacheCustom.cpp:
3850           Fix a null pointer exception.
3851         (WebCore::ACCESSOR_GETTER):
3852         * platform/network/chromium/ResourceRequest.h:
3853           Switch from appCache 'context' to 'host' terminology.
3854           Note: leaving the old deprecated accessors in place until the matching
3855           change in chrome is landed to use the new accessors.
3856         (WebCore::ResourceRequest::ResourceRequest):
3857         (WebCore::ResourceRequest::appCacheHostID):
3858         (WebCore::ResourceRequest::setAppCacheHostID):
3859         (WebCore::ResourceRequest::appCacheContextID):
3860         (WebCore::ResourceRequest::setAppCacheContextID):
3861         * platform/network/chromium/ResourceResponse.h:
3862           Add an appCacheManifestURL getter/setter.
3863           Drop the 'get' prefix from the appCacheID getter.
3864           Note: leaving the old deprecated 'get' prefixed accessor in place until the matching
3865           change in chrome is landed to use the new accessor.
3866         (WebCore::ResourceResponse::appCacheID):
3867         (WebCore::ResourceResponse::appCacheManifestURL):
3868         (WebCore::ResourceResponse::setAppCacheManifestURL):
3869         (WebCore::ResourceResponse::getAppCacheID):
3870
3871 2009-09-07  Michael Nordman  <michaeln@google.com>
3872
3873         Reviewed by Alexey Proskuryakov.
3874
3875         https://bugs.webkit.org/show_bug.cgi?id=28359
3876         Cleanup: Undo some accidental changes around DOMApplicationCache.
3877         - Restore support for constructing a DOMApplicationCache object with a null frame ptr.
3878         - Return a non-null object for window.applicationCache when the feature is disabled.
3879         - Simplify the swapCache method.
3880
3881         Test: http/tests/appcache/disabled.html
3882
3883         * loader/appcache/DOMApplicationCache.cpp:
3884         (WebCore::DOMApplicationCache::DOMApplicationCache):
3885         (WebCore::DOMApplicationCache::swapCache):
3886         (WebCore::DOMApplicationCache::scriptExecutionContext):
3887         * loader/appcache/DOMApplicationCache.h:
3888         * page/DOMWindow.cpp:
3889         (WebCore::DOMWindow::applicationCache):
3890
3891 2009-09-06  Yael Aharon  <yael.aharon@nokia.com>
3892
3893         Reviewed by Darin Adler.
3894
3895         hostname and host are mixed up when manipulating anchor elements.
3896         https://bugs.webkit.org/show_bug.cgi?id=28954
3897
3898         handle the case of port 0.
3899
3900         * html/HTMLAnchorElement.cpp:
3901         (WebCore::HTMLAnchorElement::host):
3902
3903 2009-09-06  Erik Arvidsson  <arv@chromium.org>
3904
3905         Reviewed by Eric Seidel.
3906
3907         Make hidden elements not focusable.
3908
3909         Clean up supportsFocus and isFocusable.
3910         supportsFocus now strictly means that the node can be focused by default.
3911         This is true for links, form controls and content editable elements for example.
3912         isFocusable means that the user can actually focus it.
3913         All (2) calls to supportsFocus have been updated to take this into account.
3914         
3915         Make a elements without href work correctly as well.
3916
3917         https://bugs.webkit.org/show_bug.cgi?id=27099
3918
3919         Tests: fast/events/click-focus-anchor.html
3920                fast/events/tab-focus-anchor.html
3921                fast/events/tab-focus-hidden.html
3922
3923         * dom/Element.cpp:
3924         (WebCore::Element::focus):
3925         * dom/Node.cpp:
3926         (WebCore::Node::supportsFocus):
3927         (WebCore::Node::isFocusable):
3928         * dom/Node.h:
3929         * html/HTMLAnchorElement.cpp:
3930         (WebCore::HTMLAnchorElement::supportsFocus):
3931         (WebCore::HTMLAnchorElement::isMouseFocusable):
3932         (WebCore::HTMLAnchorElement::isKeyboardFocusable):
3933         * html/HTMLAnchorElement.h:
3934         * html/HTMLAreaElement.cpp:
3935         (WebCore::HTMLAreaElement::supportsFocus):
3936         * html/HTMLAreaElement.h:
3937         * html/HTMLElement.cpp:
3938         (WebCore::HTMLElement::supportsFocus):
3939         * html/HTMLElement.h:
3940         * html/HTMLFieldSetElement.cpp:
3941         (WebCore::HTMLFieldSetElement::supportsFocus):
3942         * html/HTMLFieldSetElement.h:
3943         * html/HTMLFormControlElement.cpp:
3944         (WebCore::HTMLFormControlElement::supportsFocus):
3945         (WebCore::HTMLFormControlElement::isFocusable):
3946         * html/HTMLFrameElementBase.cpp:
3947         (WebCore::HTMLFrameElementBase::supportsFocus):
3948         * html/HTMLFrameElementBase.h:
3949         * html/HTMLLegendElement.cpp:
3950         (WebCore::HTMLLegendElement::supportsFocus):
3951         * html/HTMLLegendElement.h:
3952         * html/HTMLOptGroupElement.cpp:
3953         (WebCore::HTMLOptGroupElement::supportsFocus):
3954         (WebCore::HTMLOptGroupElement::isFocusable):
3955         * html/HTMLOptGroupElement.h:
3956         * html/HTMLOptionElement.cpp:
3957         (WebCore::HTMLOptionElement::supportsFocus):
3958         (WebCore::HTMLOptionElement::isFocusable):
3959         * html/HTMLOptionElement.h:
3960         * page/EventHandler.cpp:
3961         (WebCore::EventHandler::dispatchMouseEvent):
3962         * page/FocusController.cpp:
3963         (WebCore::FocusController::advanceFocus):
3964         * svg/SVGAElement.cpp:
3965         (WebCore::SVGAElement::supportsFocus):
3966         (WebCore::SVGAElement::isFocusable):
3967         * wml/WMLAElement.cpp:
3968         (WebCore::WMLAElement::supportsFocus):
3969         * wml/WMLAElement.h:
3970         * wml/WMLFormControlElement.cpp:
3971         (WebCore::WMLFormControlElement::supportsFocus):
3972         (WebCore::WMLFormControlElement::isFocusable):
3973         * wml/WMLFormControlElement.h:
3974
3975 2009-09-06  Joel Stanley  <joel@jms.id.au>
3976
3977         Reviewed by Dimitri Glazkov.
3978
3979         Expose functions to set the caret blink interval for Linux Chromium.
3980         Default value is set to that of RenderTheme::caretBlankInterval().
3981         Uses caretBlinkIntervalInternal to avoid overriding
3982         RenderThemeChromiumSkia::caretBlankInterval to preserve the disabling
3983         of blinking caret required for layout tests.
3984         https://bugs.webkit.org/show_bug.cgi?id=28931
3985
3986         * rendering/RenderThemeChromiumLinux.cpp:
3987         (WebCore::RenderThemeChromiumLinux::RenderThemeChromiumLinux):
3988         (WebCore::RenderThemeChromiumLinux::setCaretBlinkInterval):
3989         (WebCore::RenderThemeChromiumLinux::caretBlinkIntervalInternal):
3990         * rendering/RenderThemeChromiumLinux.h:
3991
3992 2009-09-06  Ada Chan  <adachan@apple.com>
3993
3994         Remove an extra </File> in WebCore.vcproj.
3995
3996         * WebCore.vcproj/WebCore.vcproj:
3997
3998 2009-09-06  Timothy Hatcher  <timothy@apple.com>
3999
4000         Adds a persistent setting for color format in the Web Inspector.
4001
4002         https://bugs.webkit.org/show_bug.cgi?id=28889
4003
4004         Reviewed by Dan Bernstein.
4005
4006         * English.lproj/localizedStrings.js: New strings.
4007         * inspector/front-end/Color.js: Minor style fixes.
4008         (WebInspector.Color.prototype.toString): Added. Replaces the individual
4009         "toFoo" functions. Takes a optional arguments for the color format to return.
4010         * inspector/front-end/Images/paneSettingsButtons.png: Added.
4011         * inspector/front-end/StylesSidebarPane.js:
4012         (WebInspector.StylesSidebarPane.prototype._changeColorFormat): Update the sections to show
4013         the new color format.
4014         (WebInspector.StylePropertyTreeElement.prototype.updateTitle.processColor.changeColorDisplay):
4015         Use the new toString function on Color.
4016         (WebInspector.StylePropertyTreeElement.prototype.updateTitle.processColor): Use the persistent setting
4017         to format colors by default. Add a tooltip for the color swatch.
4018         * inspector/front-end/inspector.css: New styles for the settings menu.
4019         * inspector/front-end/inspector.js:
4020         (WebInspector.loaded): Initilize the colorFormat preference.
4021
4022 2009-09-06  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
4023
4024         Reviewed by Eric Seidel.
4025
4026         [Qt] Remove Qt v4.6 check from the prefetchDNS implementation
4027         https://bugs.webkit.org/show_bug.cgi?id=28993
4028
4029         * platform/network/qt/DnsPrefetchHelper.cpp:
4030         * platform/network/qt/DnsPrefetchHelper.h:
4031
4032 2009-09-06  Cameron McCormack  <cam@mcc.id.au>
4033
4034         Reviewed by Eric Seidel.
4035
4036         Drop <definition-src> support
4037         https://bugs.webkit.org/show_bug.cgi?id=28991
4038
4039         http://dev.w3.org/SVG/profiles/1.1F2/publish/changes.html#FontsChapter
4040
4041         * DerivedSources.cpp: Remove references to definition-src.
4042         * DerivedSources.make: Ditto.
4043         * GNUmakefile.am: Ditto.
4044         * WebCore.gypi: Ditto.
4045         * WebCore.pro: Ditto.
4046         * WebCore.vcproj/WebCore.vcproj: Ditto.
4047         * WebCore.xcodeproj/project.pbxproj: Ditto.
4048         * bindings/objc/DOM.mm:
4049         (WebCore::createElementClassMap): Ditto.
4050         * bindings/objc/DOMSVG.h: Ditto.
4051         * bindings/v8/DerivedSourcesAllInOne.cpp: Ditto.
4052         * bindings/v8/V8DOMWrapper.cpp: Ditto.
4053         * bindings/v8/V8Index.cpp: Ditto.
4054         * bindings/v8/V8Index.h: Ditto.
4055         * svg/SVGAllInOne.cpp: Ditto.
4056         * svg/SVGDefinitionSrcElement.cpp: Removed.
4057         * svg/SVGDefinitionSrcElement.h: Removed.
4058         * svg/SVGDefinitionSrcElement.idl: Removed.
4059         * svg/SVGFontFaceElement.cpp:
4060         (WebCore::SVGFontFaceElement::rebuildFontFace): Don't search for
4061         definition-src child.
4062         * svg/svgtags.in: Remove definition-src.
4063
4064 2009-09-05  Dimitri Glazkov  <dglazkov@chromium.org>
4065
4066         Unreviewed, build fix.
4067
4068         [Chromium] Roll out http://trac.webkit.org/changeset/48094, because the
4069         logic of retrieving default caret blink interval was incorrect (non-existent)
4070         and caused layout test flakiness.
4071
4072         * rendering/RenderThemeChromiumLinux.cpp:
4073         * rendering/RenderThemeChromiumLinux.h:
4074
4075 2009-09-05  Jian Li  <jianli@chromium.org>
4076
4077         Reviewed by NOBODY (Chromium reliability build break).
4078
4079         Back up partial change in r48072 in order to fix chromium reliability build break.
4080
4081         * bindings/v8/V8AbstractEventListener.cpp:
4082         (WebCore::V8AbstractEventListener::invokeEventHandler):
4083
4084 2009-09-05  Nicolas Weber  <thakis@chromium.org>
4085
4086         Reviewed by Darin Fisher.
4087
4088         https://bugs.webkit.org/show_bug.cgi?id=28975
4089         Fix file upload on chrome/mac. Images that have "Hide Extension" set,
4090         such as screenshots by default, can now be uploaded to sites such as
4091         imgur.com.
4092
4093         * platform/FileSystem.h:
4094         Add pathGetDisplayFileName().
4095         * platform/chromium/FileChooserChromium.cpp:
4096         (WebCore::FileChooser::basenameForWidth):
4097         Call pathGetDisplayFileName() instead of pathGetFileName().
4098         * platform/chromium/FileSystemChromiumLinux.cpp:
4099         (WebCore::pathGetDisplayFileName):
4100         Implement pathGetDisplayFileName() by delegating to pathGetFileName().
4101         * platform/chromium/FileSystemChromiumMac.mm:
4102         (WebCore::pathGetFileName):
4103         Now returns a real filename instead of a presentational one, which
4104         fixes the problem addressed by this change.
4105         (WebCore::pathGetDisplayFileName):
4106         New function that returns a presentational filename; does what
4107         pathGetDisplayFileName() did prior to this patch.
4108         * platform/chromium/FileSystemChromiumWin.cpp:
4109         (WebCore::pathGetDisplayFileName):
4110         Implement pathGetDisplayFileName() by delegating to pathGetFileName().
4111
4112 2009-09-05  Joel Stanley  <joel@jms.id.au>
4113
4114         Reviewed by David Levin.
4115
4116         Expose functions to set the caret blink interval for Linux Chromium.
4117         https://bugs.webkit.org/show_bug.cgi?id=28931
4118
4119         * rendering/RenderThemeChromiumLinux.cpp:
4120         (WebCore::RenderThemeChromiumLinux::setCaretBlinkInterval):
4121         (WebCore::RenderThemeChromiumLinux::caretBlinkInterval):
4122         * rendering/RenderThemeChromiumLinux.h:
4123
4124 2009-09-04  Dmitry Titov  <dimich@chromium.org>
4125
4126         Reviewed by David Levin.
4127
4128         Prevent UI freeze in case when too many timers are in the timer queue.
4129         https://bugs.webkit.org/show_bug.cgi?id=23865
4130
4131         The fix measures the elapsed time while executing timers. If we have too many
4132         timers and it takes significant time to fire, quit the loop and reschedule.
4133         This lets the run loop process user input (close the window for example).
4134
4135         * platform/ThreadTimers.h:
4136         * platform/ThreadTimers.cpp:
4137         (WebCore::ThreadTimers::sharedTimerFiredInternal):
4138         (WebCore::ThreadTimers::fireTimersInNestedEventLoop):
4139         Removed functions and members used before to grab a list of all expired timers.
4140         Now we fetch one by one, measuring time and quitting the loop if it takes too long.
4141         * platform/Timer.cpp:
4142         (WebCore::TimerBase::isActive):
4143         (WebCore::TimerBase::setNextFireTime):
4144         Since timers are now fired one by one, there is no need to keep track of updated timers.
4145         * manual-tests/input-starved-by-timers.html: Manual test that attempts to freeze browser by
4146         creating of enough timers. It then keeps UI frozen and after 10 seconds starts to drain the timers
4147         so the browser un-freezes. This is instead of a regular layout test because we don't have a way
4148         to inject an input events via regular run loop in DRT - instead they are directly dispatched by
4149         eventSender, which does not reproduce the UI freeze that happens with real input.
4150
4151 2009-09-04  Anders Carlsson  <andersca@apple.com>
4152
4153         Reviewed by Adele Peterson.
4154
4155         <rdar://problem/7201063>
4156         
4157         Detach any custom scrollbars before detaching the document.
4158         
4159         * page/Frame.cpp:
4160         (WebCore::Frame::setView):
4161
4162 2009-09-04  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
4163
4164                 Unreviewed, build fix.
4165
4166                 Remove remaining references to UserStyleSheetLoader after r48075.
4167
4168                 * WebCore.gypi:
4169                 * WebCore.xcodeproj/project.pbxproj:
4170                 * page/qt/FrameQt.cpp:
4171                 * page/wince/FrameWince.cpp:
4172
4173 2009-09-04  Michelangelo De Simone  <micdesim@gmail.com>
4174
4175                 Reviewed by David Levin.
4176
4177                 https://bugs.webkit.org/show_bug.cgi?id=28988
4178                 Minor fix: "novalidate" attribute renamed in "noValidate", according to
4179                 HTML5 specs:
4180                 http://www.whatwg.org/specs/web-apps/current-work/#dom-fs-novalidate
4181
4182                 * html/HTMLFormElement.cpp:
4183                 (WebCore::HTMLFormElement::noValidate):
4184                 (WebCore::HTMLFormElement::setNoValidate):
4185                 * html/HTMLFormElement.h:
4186                 * html/HTMLFormElement.idl:
4187
4188 2009-09-04  Dmitry Titov  <dimich@chromium.org>
4189
4190         Reviewed by David Levin.
4191
4192         Remove unused line of code from WorkerContext
4193         https://bugs.webkit.org/show_bug.cgi?id=28990
4194
4195         * workers/WorkerContext.cpp:
4196         (WebCore::WorkerContext::importScripts):
4197
4198 2009-09-04  Darin Adler  <darin@apple.com>
4199
4200         Reviewed by Oliver Hunt.
4201
4202         Fix assertion seen when running buildbot.
4203
4204         * bindings/js/JSDOMBinding.h:
4205         (WebCore::DOMObjectWithGlobalPointer::createStructure): Create the structure without
4206         the HasDefaultMark bit since this has a custom mark function.
4207
4208 2009-09-04  Dave Hyatt  <hyatt@apple.com>
4209
4210         Reviewed by Adam Roben.
4211
4212         https://bugs.webkit.org/show_bug.cgi?id=28984, remove the remote stylesheet loader on Mac/Qt.
4213         Make sure the other code path (now used by everybody) can handle data URLs.
4214
4215         As per the post on webkit-dev, the ability to work remotely isn't working properly anyway (it doesn't
4216         hold up the pending sheet count, so you'd just FOUC on every Web page), and it's extremely unlikely
4217         that anybody is relying on this support.
4218         
4219         Tor Arne agreed it was ok to disable (he enabled it on the Qt side), and only Mac/Qt were using this
4220         code.
4221
4222         * WebCore.pro:
4223         * WebCore.xcodeproj/project.pbxproj:
4224         * dom/Document.cpp:
4225         (WebCore::Document::userStyleSheet):
4226         * dom/Document.h:
4227         * loader/FrameLoader.cpp:
4228         (WebCore::FrameLoader::begin):
4229         * loader/UserStyleSheetLoader.cpp: Removed.
4230         * loader/UserStyleSheetLoader.h: Removed.
4231         * page/Frame.cpp:
4232         (WebCore::Frame::reapplyStyles):
4233         * page/Frame.h:
4234         * page/Page.cpp:
4235         (WebCore::Page::userStyleSheetLocationChanged):
4236         (WebCore::Page::userStyleSheet):
4237         * page/mac/FrameMac.mm:
4238         * page/qt/FrameQt.cpp:
4239
4240 2009-09-04  Mikhail Naganov  <mnaganov@chromium.org>
4241
4242         Reviewed by Timothy Hatcher.
4243
4244         Add "sampling profiler" preference, simplify data display when it's set.
4245
4246         https://bugs.webkit.org/show_bug.cgi?id=28969
4247
4248         * inspector/front-end/ProfileDataGridTree.js:
4249         (WebInspector.ProfileDataGridNode.prototype.get data.formatMilliseconds):
4250         (WebInspector.ProfileDataGridNode.prototype.get data):
4251         * inspector/front-end/ProfileView.js:
4252         (WebInspector.ProfileView):
4253         * inspector/front-end/inspector.js:
4254
4255 2009-09-04  Jian Li  <jianli@chromium.org>
4256
4257         Reviewed by Adam Barth.
4258
4259         [V8] Run-time exception in onmessage handler is not forwarded to the worker object.
4260         https://bugs.webkit.org/show_bug.cgi?id=28980
4261
4262         Tested by worker-close.html.
4263
4264         * bindings/v8/ScriptFunctionCall.cpp:
4265         * bindings/v8/V8AbstractEventListener.cpp:
4266         (WebCore::V8AbstractEventListener::invokeEventHandler):
4267         * bindings/v8/V8Utilities.cpp:
4268         (WebCore::getScriptExecutionContext):
4269         (WebCore::reportException):
4270         * bindings/v8/V8Utilities.h:
4271         (WebCore::getScriptExecutionContext):
4272         * bindings/v8/custom/V8MessageChannelConstructor.cpp:
4273         (WebCore::CALLBACK_FUNC_DECL):
4274         * bindings/v8/custom/V8SharedWorkerCustom.cpp:
4275         (WebCore::CALLBACK_FUNC_DECL):
4276         * bindings/v8/custom/V8WorkerCustom.cpp:
4277         (WebCore::CALLBACK_FUNC_DECL):
4278         * bindings/v8/custom/V8XMLHttpRequestConstructor.cpp:
4279         (WebCore::CALLBACK_FUNC_DECL):
4280         * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
4281         (WebCore::CALLBACK_FUNC_DECL):
4282
4283 2009-09-04  Dave Hyatt  <hyatt@apple.com>
4284
4285         Reviewed by Anders Carlsson.
4286
4287         Remove unused m_sheet variable and setCSSStyleSheet methods.
4288
4289         * dom/Document.cpp:
4290         * dom/Document.h:
4291
4292 2009-09-04  Anders Carlsson  <andersca@apple.com>
4293
4294         Reviewed by David Hyatt and Adele Peterson.
4295
4296         (Based on a patch from Adele).
4297         
4298         Fix <rdar://problem/7185875>.
4299         
4300         * page/Frame.cpp:
4301         (WebCore::Frame::setView):
4302         Detach any custom scroll bars from the old view.
4303         
4304         * page/FrameView.cpp:
4305         (WebCore::FrameView::detachCustomScrollbars):
4306         Simplify the check (and make it work when body is null) by just checking that the scroll bar owner is
4307         not a RenderPart object.
4308
4309         * rendering/RenderObject.cpp:
4310         (WebCore::RenderObject::destroy):
4311         ASSERT that frame() is not null here and also add a null check so that release builds won't crash.
4312
4313 2009-09-04  Dave Hyatt  <hyatt@apple.com>
4314
4315         Reviewed by Adam Roben.
4316
4317       &nbs