80cf559b72c60bea55033338d78089f36789705e
[WebKit-https.git] / WebCore / ChangeLog
1 2010-07-14  Eric Carlson  <eric.carlson@apple.com>
2
3         One more unreviewed build fix for r63319.
4
5         * html/TimeRanges.cpp:
6         (TimeRanges::nearest):
7
8 2010-07-14  Alexander Pavlov  <apavlov@chromium.org>
9
10         Reviewed by Pavel Feldman.
11
12         Web Inspector: Enable toggling of the "Inspect Element" mode from the browser
13         https://bugs.webkit.org/show_bug.cgi?id=42169
14
15         * inspector/front-end/ElementsPanel.js:
16         (WebInspector.ElementsPanel):
17         (WebInspector.ElementsPanel.prototype.handleShortcut):
18         (WebInspector.ElementsPanel.prototype.toggleSearchingForNode):
19         * inspector/front-end/inspector.js:
20         (WebInspector.toggleSearchingForNode):
21
22 2010-07-14  Eric Carlson  <eric.carlson@apple.com>
23
24         Unreviewed, build fix for r63319.
25
26         * html/TimeRanges.cpp:
27         (TimeRanges::nearest): Include math.h and use narrowPrecisionToFloat.
28
29 2010-07-14  Eric Carlson  <eric.carlson@apple.com>
30
31         Reviewed by Darin Adler.
32
33         Update media element's seeking logic
34         https://bugs.webkit.org/show_bug.cgi?id=42178
35         <rdar://problem/8185817>
36
37         * html/HTMLMediaElement.cpp:
38         (WebCore::HTMLMediaElement::seek): When asked to seek to an unbuffered time, seek to the 
39         nearest time instead of generating an exception. Re-order the logic to match spec text.
40
41         * html/TimeRanges.cpp:
42         (TimeRanges::nearest): New, return the value closest to the specified time.
43         * html/TimeRanges.h:
44
45 2010-07-14  Hans Wennborg  <hans@chromium.org>
46
47         Reviewed by Steve Block.
48
49         Rename DeviceOrientationController::onOrientationChange to didChangeDeviceOrientation
50         https://bugs.webkit.org/show_bug.cgi?id=42257
51
52         According to convention, we should avoid "on" in favor of "did" in function names.
53
54         * dom/DeviceOrientationController.cpp:
55         (WebCore::DeviceOrientationController::didChangeDeviceOrientation):
56         * dom/DeviceOrientationController.h:
57
58 2010-07-14  Lucas De Marchi  <lucas.demarchi@profusion.mobi>
59
60         Reviewed by Kent Tamura.
61
62         Notify browser about popup being deleted. In EFL and BREW ports, the
63         WebCore::Popup object was being deleted leaving the popup in browser
64         alive. Popups can be deleted in two ways: either from browser to webcore or
65         from webcore to browser. The first path was ok. The problem was when the
66         user changed the page with a popup still opened. This would trigger the
67         second path and would cause WebCore::Popup to be deleted without
68         notifying browser.
69         https://bugs.webkit.org/show_bug.cgi?id=41877
70
71         No new functionality so no new tests.
72
73         * platform/brew/PopupMenuBrew.cpp:
74         (WebCore::PopupMenu::~PopupMenu): call hide() when object is
75         destroyed.
76         * platform/efl/PopupMenuEfl.cpp:
77         (WebCore::PopupMenu::~PopupMenu): ditto.
78
79 2010-07-14  Satish Sampath  <satish@chromium.org>
80
81         Reviewed by Kent Tamura.
82
83         Invoke speech recognition when user clicks on the speech button of input elements.
84         http://bugs.webkit.org/show_bug.cgi?id=42047
85
86         No new tests, the relevant LayoutTestController bindings will be added in a subsequent patch.
87
88         * rendering/TextControlInnerElements.cpp:
89         (WebCore::InputFieldSpeechButtonElement::InputFieldSpeechButtonElement):
90         (WebCore::InputFieldSpeechButtonElement::defaultEventHandler): Added click handling.
91         (WebCore::InputFieldSpeechButtonElement::speechInput):
92         (WebCore::InputFieldSpeechButtonElement::recordingComplete): Callback to indicate recording progress.
93         (WebCore::InputFieldSpeechButtonElement::setRecognitionResult): Callback to receive recognized text.
94         (WebCore::InputFieldSpeechButtonElement::detach):
95         * rendering/TextControlInnerElements.h:
96
97 2010-07-14  Sheriff Bot  <webkit.review.bot@gmail.com>
98
99         Unreviewed, rolling out r63305.
100         http://trac.webkit.org/changeset/63305
101         https://bugs.webkit.org/show_bug.cgi?id=42256
102
103         "debugger-breakpoints-not-activated-on-reload.html fails on
104         GTK" (Requested by yurys on #webkit).
105
106         * inspector/front-end/ScriptView.js:
107         (WebInspector.ScriptView.prototype._addBreakpoint):
108         * inspector/front-end/ScriptsPanel.js:
109         (WebInspector.ScriptsPanel):
110         (WebInspector.ScriptsPanel.prototype._resourceLoadingFinished):
111         (WebInspector.ScriptsPanel.prototype._breakpointAdded):
112         (WebInspector.ScriptsPanel.prototype._scriptOrResourceForURLAndLine):
113         (WebInspector.ScriptsPanel.prototype._showScriptOrResource):
114         (WebInspector.ScriptsPanel.prototype._toggleBreakpointsClicked):
115         * inspector/front-end/SourceView.js:
116         (WebInspector.SourceView.prototype._addBreakpoint):
117
118 2010-07-14  Steve Block  <steveblock@google.com>
119
120         Reviewed by Jeremy Orlow.
121
122         Provide implementation of DeviceOrientationController and hook into DOMWindow
123         https://bugs.webkit.org/show_bug.cgi?id=39588
124
125         Added DeviceOrientationController::addListener() and removeListener()
126         to start and stop the client and added calls from DomWindow. Implemented
127         DeviceOrientationController::onDeviceOrientationChange() to fire a
128         DeviceOrientationEvent on the window object.
129
130         No new tests yet, pending LayoutTestController methods for mock DeviceOrientation.
131
132         * dom/DeviceOrientationClient.h:
133         * dom/DeviceOrientationController.cpp:
134         (WebCore::DeviceOrientation::addListener):
135         (WebCore::DeviceOrientation::removeListener):
136         (WebCore::DeviceOrientation::removeAllListeners):
137         (WebCore::DeviceOrientationController::onDeviceOrientationChange):
138         * dom/DeviceOrientationController.h:
139         * page/DOMWindow.cpp:
140         (WebCore::DOMWindow::addEventListener):
141         (WebCore::DOMWindow::removeEventListener):
142         (WebCore::DOMWindow::removeAllEventListeners):
143
144 2010-07-14  Yury Semikhatsky  <yurys@chromium.org>
145
146         Reviewed by Pavel Feldman.
147
148         Web Inspector: remove v8 debugger code that doesn't use ScriptDebugServer
149         https://bugs.webkit.org/show_bug.cgi?id=42164
150
151         * bindings/v8/ScriptDebugServer.cpp:
152         (WebCore::retrieveFrame):
153         (WebCore::ScriptDebugServer::addListener):
154         (WebCore::ScriptDebugServer::setBreakpoint):
155         (WebCore::ScriptDebugServer::removeBreakpoint):
156         (WebCore::ScriptDebugServer::clearBreakpoints):
157         (WebCore::ScriptDebugServer::setBreakpointsActivated):
158         (WebCore::ScriptDebugServer::pauseOnExceptionsState):
159         (WebCore::ScriptDebugServer::setPauseOnExceptionsState):
160         (WebCore::ScriptDebugServer::continueProgram):
161         (WebCore::ScriptDebugServer::stepIntoStatement):
162         (WebCore::ScriptDebugServer::stepOverStatement):
163         (WebCore::ScriptDebugServer::stepOutOfFunction):
164         (WebCore::ScriptDebugServer::editScriptSource):
165         (WebCore::ScriptDebugServer::handleV8DebugEvent):
166         * bindings/v8/ScriptDebugServer.h:
167
168 2010-07-14  Ilya Tikhonovsky  <loislo@chromium.org>
169
170         Reviewed by Yury Semikhatsky.
171
172         WebInspector: Clean-up InspectorBackend code. In the next changes
173         InspectorBackend content will be generated by scripts. As far as
174         generator is very simple thing all nontrivial function should be
175         moved to InspectorController and DOMAgent.
176         https://bugs.webkit.org/show_bug.cgi?id=42171
177
178         * bindings/js/ScriptDebugServer.cpp:
179         (WebCore::ScriptDebugServer::pause):
180         * bindings/js/ScriptDebugServer.h:
181         (WebCore::ScriptDebugServer::activateBreakpoints):
182         (WebCore::ScriptDebugServer::deactivateBreakpoints):
183         * bindings/v8/ScriptDebugServer.h:
184         (WebCore::ScriptDebugServer::activateBreakpoints):
185         (WebCore::ScriptDebugServer::deactivateBreakpoints):
186         (WebCore::ScriptDebugServer::pause):
187         * inspector/Inspector.idl:
188         * inspector/InspectorBackend.cpp:
189         (WebCore::InspectorBackend::saveApplicationSettings):
190         (WebCore::InspectorBackend::saveSessionSettings):
191         (WebCore::InspectorBackend::enableSearchingForNode):
192         (WebCore::InspectorBackend::disableSearchingForNode):
193         (WebCore::InspectorBackend::enableMonitoringXHR):
194         (WebCore::InspectorBackend::disableMonitoringXHR):
195         (WebCore::InspectorBackend::getResourceContent):
196         (WebCore::InspectorBackend::reloadPage):
197         (WebCore::InspectorBackend::activateBreakpoints):
198         (WebCore::InspectorBackend::deactivateBreakpoints):
199         (WebCore::InspectorBackend::pause):
200         (WebCore::InspectorBackend::resume):
201         (WebCore::InspectorBackend::stepOverStatement):
202         (WebCore::InspectorBackend::stepIntoStatement):
203         (WebCore::InspectorBackend::stepOutOfFunction):
204         (WebCore::InspectorBackend::setPauseOnExceptionsState):
205         (WebCore::InspectorBackend::copyNode):
206         (WebCore::InspectorBackend::pushNodeByPathToFrontend):
207         (WebCore::InspectorBackend::highlightDOMNode):
208         (WebCore::InspectorBackend::hideDOMNodeHighlight):
209         * inspector/InspectorBackend.h:
210         * inspector/InspectorBackend.idl:
211         * inspector/InspectorController.cpp:
212         (WebCore::InspectorController::saveApplicationSettings):
213         (WebCore::InspectorController::saveSessionSettings):
214         (WebCore::InspectorController::highlightDOMNode):
215         (WebCore::InspectorController::resume):
216         (WebCore::InspectorController::setPauseOnExceptionsState):
217         (WebCore::InspectorController::getResourceContent):
218         (WebCore::InspectorController::reloadPage):
219         * inspector/InspectorController.h:
220         (WebCore::InspectorController::hideDOMNodeHighlight):
221         (WebCore::InspectorController::startProfiling):
222         (WebCore::InspectorController::stopProfiling):
223         (WebCore::InspectorController::enableSearchingForNode):
224         (WebCore::InspectorController::disableSearchingForNode):
225         (WebCore::InspectorController::enableMonitoringXHR):
226         (WebCore::InspectorController::disableMonitoringXHR):
227         * inspector/InspectorDOMAgent.cpp:
228         (WebCore::InspectorDOMAgent::copyNode):
229         (WebCore::InspectorDOMAgent::pushNodeByPathToFrontend):
230         * inspector/InspectorDOMAgent.h:
231         * inspector/front-end/InspectorBackendStub.js:
232         (.WebInspector.InspectorBackendStub.prototype.pause):
233         (.WebInspector.InspectorBackendStub.prototype.resume):
234         (.WebInspector.InspectorBackendStub.prototype.stepIntoStatement):
235         (.WebInspector.InspectorBackendStub.prototype.stepOutOfFunction):
236         (.WebInspector.InspectorBackendStub.prototype.stepOverStatement):
237         * inspector/front-end/ScriptsPanel.js:
238         (WebInspector.ScriptsPanel.prototype._togglePause):
239         (WebInspector.ScriptsPanel.prototype._stepOverClicked):
240         (WebInspector.ScriptsPanel.prototype._stepIntoClicked):
241         (WebInspector.ScriptsPanel.prototype._stepOutClicked):
242         * loader/FrameLoader.cpp:
243         (WebCore::FrameLoader::continueLoadAfterNavigationPolicy):
244
245 2010-07-14  Joone Hur  <joone@kldp.org>
246
247         Reviewed by Jian Li.
248
249         [GTK] Enabling File Reader/Writer APIs
250         https://bugs.webkit.org/show_bug.cgi?id=40209
251
252         The layout test fast/files will be enabled after eventSender.beginDragWithFiles is implemented for GTK.
253
254         * platform/gtk/FileSystemGtk.cpp:
255         (WebCore::openFile): Added.
256         (WebCore::readFromFile): Added.
257
258 2010-07-14  Nikolas Zimmermann  <nzimmermann@rim.com>
259
260         Reviewed by Dirk Schulze.
261
262         Inconsistent LayoutRepainter usage in the SVG renderers
263         https://bugs.webkit.org/show_bug.cgi?id=42245
264
265         Unify LayoutRepainter usage in the SVG renders, as RenderBlock does it, always use:
266         LayoutRepainter repainter(*this, m_everHadLayout && checkForRepaintDuringLayout());
267         instead of including selfWillPaint / selfNeedsLayout checks. This improves layout test
268         performance by 8s on my machine with a debug build (from 76.72s -> 68.59s, averaged over 5 runs)
269
270         * rendering/RenderForeignObject.cpp:
271         (WebCore::RenderForeignObject::layout):
272         * rendering/RenderPath.cpp:
273         (WebCore::RenderPath::layout):
274         * rendering/RenderSVGContainer.cpp:
275         (WebCore::RenderSVGContainer::layout):
276         * rendering/RenderSVGImage.cpp:
277         (WebCore::RenderSVGImage::layout):
278         * rendering/RenderSVGRoot.cpp:
279         (WebCore::RenderSVGRoot::layout):
280         * rendering/RenderSVGText.cpp:
281         (WebCore::RenderSVGText::layout):
282
283 2010-07-14  Kent Tamura  <tkent@chromium.org>
284
285         Unreviewed, build fix for r63300.
286
287         * rendering/RenderSVGResourceContainer.h:
288         (WebCore::RenderSVGResourceContainer::containsCyclicReference):
289
290 2010-07-14  Pavel Podivilov  <podivilov@chromium.org>
291
292         Reviewed by Yury Semikhatsky.
293
294         Web Inspector: do not activate all breakpoints on page reload
295         https://bugs.webkit.org/show_bug.cgi?id=41461
296
297         Test: inspector/debugger-breakpoints-not-activated-on-reload.html
298
299         * inspector/front-end/ScriptView.js:
300         (WebInspector.ScriptView.prototype._addBreakpoint):
301         * inspector/front-end/ScriptsPanel.js:
302         (WebInspector.ScriptsPanel):
303         (WebInspector.ScriptsPanel.prototype._breakpointAdded):
304         (WebInspector.ScriptsPanel.prototype.toggleBreakpointsClicked):
305         * inspector/front-end/SourceView.js:
306         (WebInspector.SourceView.prototype._addBreakpoint):
307
308 2010-07-14  Yury Semikhatsky  <yurys@chromium.org>
309
310         Reviewed by Pavel Feldman.
311
312         Web Inspector: use OwnPtr to manage ConsoleMessages in InspectorController
313         https://bugs.webkit.org/show_bug.cgi?id=42243
314
315         * inspector/InspectorController.cpp:
316         (WebCore::InspectorController::~InspectorController):
317         (WebCore::InspectorController::addConsoleMessage):
318         (WebCore::InspectorController::clearConsoleMessages):
319         * inspector/InspectorController.h:
320         (WebCore::InspectorController::consoleMessages):
321
322 2010-07-14  Nikolas Zimmermann  <nzimmermann@rim.com>
323
324         Reviewed by Eric Seidel.
325
326         SVG patterns and masks should not be able to reference themselves
327         https://bugs.webkit.org/show_bug.cgi?id=32171
328
329         Don't apply pattern/mask resources, if they contain cyclic references. Gradients/Filters are not affected.
330         Clippers are already correcly handling this on their own, as well as markers (all which require subtle quirks, covered by existing tests).
331
332         Tests: svg/custom/recursive-filter.svg
333                svg/custom/recursive-gradient.svg
334                svg/custom/recursive-mask.svg
335                svg/custom/recursive-pattern.svg
336
337         * rendering/RenderSVGResourceContainer.h:
338         (WebCore::RenderSVGResourceContainer::RenderSVGResourceContainer): Stop using idForStyleResolution(), but use getIdAttribute(), no functional change though.
339         (WebCore::RenderSVGResourceContainer::idChanged): Ditto.
340         (WebCore::RenderSVGResourceContainer::childElementReferencesResource): To be implemented by classes inheriting from us. Defaults to false.
341         (WebCore::RenderSVGResourceContainer::containsCyclicReference): Check whether this resource contains contains a child which references ourselves.
342         * rendering/RenderSVGResourceMasker.cpp:
343         (WebCore::RenderSVGResourceMasker::childElementReferencesResource): Check whether the masker child specifies mask=".." with the same URI than ourselves.
344         (WebCore::RenderSVGResourceMasker::applyResource): Early exit if we contain a cylic reference.
345         * rendering/RenderSVGResourceMasker.h:
346         * rendering/RenderSVGResourcePattern.cpp:
347         (WebCore::RenderSVGResourcePattern::childElementReferencesResource): Check whether the masker child specifies fill=".." with the same URI than ourselves.
348         (WebCore::RenderSVGResourcePattern::applyResource): Early exit if we contain a cylic reference.
349         * rendering/RenderSVGResourcePattern.h:
350         * svg/SVGPaint.cpp:
351         (WebCore::SVGPaint::matchesTargetURI): Add new helper function comparing a SVGPaint URI with a given reference id.
352         * svg/SVGPaint.h:
353
354 2010-07-14  Eric Seidel  <eric@webkit.org>
355
356         Reviewed by Nikolas Zimmermann.
357
358         Selection dumping code should not dump body's offset in the document
359         https://bugs.webkit.org/show_bug.cgi?id=42238
360
361         This requires updating the results of many layout tests,
362         but has no functional change.
363
364         * rendering/RenderTreeAsText.cpp:
365         (WebCore::nodePosition):
366
367 2010-07-14  Kent Tamura  <tkent@chromium.org>
368
369         Reviewed by Darin Fisher.
370
371         <input type=number> UI: inner spin button layout
372         https://bugs.webkit.org/show_bug.cgi?id=41924
373
374         Add layout/event/style code for the inner spin button, which is
375         going to be used for Windows implementation.
376         No new tests because no ports implement the inner spin button yet.
377
378         * rendering/RenderTextControlSingleLine.cpp:
379           Introduce m_innerSpinButton.
380         (WebCore::RenderTextControlSingleLine::~RenderTextControlSingleLine):
381           Detach m_innerSpinButton.
382         (WebCore::RenderTextControlSingleLine::layout):
383           Set position and size of m_innerSpinButton.
384         (WebCore::RenderTextControlSingleLine::nodeAtPoint):
385           Handle m_innerSpinButton.
386         (WebCore::RenderTextControlSingleLine::forwardEvent):
387           Handle m_innerSpinButton.
388         (WebCore::RenderTextControlSingleLine::textBlockWidth):
389           Shorten the text block width by m_innerSpinButton width.
390         (WebCore::RenderTextControlSingleLine::preferredContentWidth):
391           Add m_innerSpinButton width.
392         (WebCore::RenderTextControlSingleLine::createSubtreeIfNeeded):
393           Handle m_innerSpinButton.
394         (WebCore::RenderTextControlSingleLine::createInnerSpinButtonStyle):
395           Make style for m_innerSpinButton with INNER_SPIN_BUTTON pseudo class.
396         * rendering/RenderTextControlSingleLine.h:
397
398 2010-07-14  Kent Tamura  <tkent@chromium.org>
399
400         Reviewed by Darin Fisher.
401
402         <input type=number> UI: Support disabled/readonly states
403         https://bugs.webkit.org/show_bug.cgi?id=38568
404
405         Implement isEnabledFormControl() and isReadOnlyFormControl() of
406         SpinButtonElement. They returns the states of the parent <input> element.
407         The existing isEnabledFormControl() had a bug. It didn't have 'const'
408         modifier.
409
410         Test: fast/forms/input-appearance-spinbutton-disabled-readonly.html
411
412         * rendering/TextControlInnerElements.cpp:
413         (WebCore::SpinButtonElement::defaultEventHandler):
414          - If the input element is disabled or read-only, don't process events.
415          - Protect 'input' object from destruction during focus().
416          - Fix a hit-test issue. We don't need to add renderBox()->y() because
417            'local' is relative to the RenderBox.
418          - Some code cleanup
419         * rendering/TextControlInnerElements.h:
420         (WebCore::SpinButtonElement::isEnabledFormControl):
421         (WebCore::SpinButtonElement::isReadOnlyFormControl):
422
423 2010-07-13  Simon Fraser  <simon.fraser@apple.com>
424
425         Reviewed by Dan Bernstein.
426
427         Page flashes to mostly white towards the end of loading
428         https://bugs.webkit.org/show_bug.cgi?id=42230
429         
430         We constrain the size of huge composited layers. When doing so, we
431         need to use the constained size to set the position as well
432         as the dimensions, to ensure the layer appears in the correct place.
433
434         Test: compositing/tiling/constrained-layer-size.html
435
436         * platform/graphics/mac/GraphicsLayerCA.mm:
437         (WebCore::GraphicsLayerCA::updateLayerPosition):
438
439 2010-07-13  Kent Tamura  <tkent@chromium.org>
440
441         Reviewed by Darin Fisher.
442
443         [Chromium] Linux implementation of <input type=number> UI
444         https://bugs.webkit.org/show_bug.cgi?id=41925
445
446         - Move the code for scrollbar steppers from ScrollbarThemeChromiumLinux
447           to PlatformThemeChromiumGtk.
448         - Move the code for scrollbar colors from RenderThemeChromiumLinux
449           to PlatformThemeChromiumGtk.
450
451         * WebCore.gypi:
452         * platform/chromium/PlatformThemeChromiumGtk.cpp: Added.
453         (WebCore::PlatformThemeChromiumGtk::setScrollbarColors): Moved from RenderThemeChromiumLinux.
454         (WebCore::clamp): Moved from ScrollbarThemeChromiumLinux.
455         (WebCore::PlatformThemeChromiumGtk::saturateAndBrighten): ditto.
456         (WebCore::PlatformThemeChromiumGtk::outlineColor): ditto.
457         (WebCore::PlatformThemeChromiumGtk::paintArrowButton): ditto.
458         * platform/chromium/PlatformThemeChromiumGtk.h: Added.
459         * platform/chromium/ScrollbarThemeChromiumLinux.cpp:
460         (WebCore::ScrollbarThemeChromiumLinux::paintTrackPiece):
461         (WebCore::ScrollbarThemeChromiumLinux::paintButton):
462          Move the main part of the code to PlatformThemeChromiumGtk.
463         (WebCore::ScrollbarThemeChromiumLinux::paintThumb):
464         * rendering/RenderThemeChromiumLinux.cpp:
465         (WebCore::RenderThemeChromiumLinux::adjustInnerSpinButtonStyle): Added.
466         (WebCore::RenderThemeChromiumLinux::paintInnerSpinButton): Added.
467         * rendering/RenderThemeChromiumLinux.h:
468
469 2010-07-13  Dumitru Daniliuc  <dumi@chromium.org>
470
471         Reviewed by Darin Fisher
472
473         Implementing DatabaseSync::transaction() and DatabaseSync::changeVersion().
474         https://bugs.webkit.org/show_bug.cgi?id=40607
475
476         Tests: fast/workers/storage/change-version-handle-reuse-sync.html
477                fast/workers/storage/change-version-sync.html
478                fast/workers/storage/empty-statement-sync.html
479                fast/workers/storage/execute-sql-args-sync.html
480                fast/workers/storage/executesql-accepts-only-one-statement-sync.html
481                fast/workers/storage/multiple-transactions-on-different-handles-sync.html
482                fast/workers/storage/open-database-creation-callback-sync.html
483                fast/workers/storage/open-database-empty-version-sync.html
484                fast/workers/storage/open-database-inputs-sync.html
485                fast/workers/storage/open-database-set-empty-version-sync.html
486                fast/workers/storage/open-database-while-transaction-in-progress-sync.html
487                fast/workers/storage/sql-data-types-sync.html
488                fast/workers/storage/sql-exception-codes-sync.html
489                fast/workers/storage/test-authorizer-sync.html
490                fast/workers/storage/transaction-in-transaction-sync.html
491
492         * CMakeLists.txt:
493         * GNUmakefile.am:
494         * WebCore.gypi:
495         * WebCore.pro:
496         * WebCore.vcproj/WebCore.vcproj:
497         * WebCore.xcodeproj/project.pbxproj:
498         * storage/AbstractDatabase.cpp:
499         (WebCore::AbstractDatabase::maximumSize):
500         (WebCore::AbstractDatabase::incrementalVacuumIfNeeded):
501         * storage/AbstractDatabase.h:
502         (WebCore::AbstractDatabase::sqliteDatabase):
503         * storage/ChangeVersionWrapper.cpp:
504         (WebCore::ChangeVersionWrapper::performPreflight):
505         (WebCore::ChangeVersionWrapper::performPostflight):
506         * storage/Database.cpp:
507         (WebCore::Database::performGetTableNames):
508         * storage/Database.h:
509         * storage/DatabaseAuthorizer.cpp:
510         (WebCore::DatabaseAuthorizer::createVTable):
511         (WebCore::DatabaseAuthorizer::dropVTable):
512         * storage/DatabaseCallback.h:
513         * storage/DatabaseSync.cpp:
514         (WebCore::ChangeVersionPreflightStep::create):
515         (WebCore::ChangeVersionPreflightStep::performStep):
516         (WebCore::ChangeVersionPreflightStep::ChangeVersionPreflightStep):
517         (WebCore::ChangeVersionPostflightStep::create):
518         (WebCore::ChangeVersionPostflightStep::performStep):
519         (WebCore::ChangeVersionPostflightStep::ChangeVersionPostflightStep):
520         (WebCore::DatabaseSync::changeVersion):
521         (WebCore::DatabaseSync::transaction):
522         (WebCore::DatabaseSync::runTransaction):
523         * storage/DatabaseSync.h:
524         * storage/DatabaseTracker.cpp:
525         (WebCore::DatabaseTracker::getMaxSizeForDatabase):
526         * storage/SQLError.h:
527         * storage/SQLResultSet.cpp:
528         * storage/SQLResultSet.h:
529         * storage/SQLStatementCallback.h:
530         * storage/SQLStatementErrorCallback.h:
531         * storage/SQLStatementSync.cpp: Copied from WebCore/storage/SQLStatement.cpp.
532         (WebCore::SQLStatementSync::SQLStatementSync):
533         (WebCore::SQLStatementSync::execute):
534         * storage/SQLStatementSync.h: Added.
535         * storage/SQLTransaction.cpp:
536         (WebCore::SQLTransaction::runCurrentStatement):
537         (WebCore::SQLTransaction::deliverQuotaIncreaseCallback):
538         (WebCore::SQLTransaction::postflightAndCommit):
539         * storage/SQLTransaction.h:
540         * storage/SQLTransactionCallback.h:
541         * storage/SQLTransactionClient.cpp:
542         (WebCore::SQLTransactionClient::didCommitWriteTransaction):
543         (WebCore::SQLTransactionClient::didExecuteStatement):
544         (WebCore::SQLTransactionClient::didExceedQuota):
545         * storage/SQLTransactionClient.h:
546         * storage/SQLTransactionErrorCallback.h:
547         * storage/SQLTransactionSync.cpp:
548         (WebCore::transactionClient):
549         (WebCore::SQLTransactionSync::create):
550         (WebCore::SQLTransactionSync::SQLTransactionSync):
551         (WebCore::SQLTransactionSync::~SQLTransactionSync):
552         (WebCore::SQLTransactionSync::executeSQL):
553         (WebCore::SQLTransactionSync::begin):
554         (WebCore::SQLTransactionSync::execute):
555         (WebCore::SQLTransactionSync::commit):
556         (WebCore::SQLTransactionSync::rollback):
557         * storage/SQLTransactionSync.h:
558         (WebCore::SQLTransactionSync::SQLTransactionSyncOptionalStep::~SQLTransactionSyncOptionalStep):
559         * storage/SQLTransactionSyncCallback.h:
560         * storage/chromium/SQLTransactionClientChromium.cpp:
561         (WebCore::SQLTransactionClient::didCommitWriteTransaction):
562         (WebCore::SQLTransactionClient::didExecuteStatement):
563         (WebCore::SQLTransactionClient::didExceedQuota):
564
565 2010-07-13  Sheriff Bot  <webkit.review.bot@gmail.com>
566
567         Unreviewed, rolling out r63162.
568         http://trac.webkit.org/changeset/63162
569         https://bugs.webkit.org/show_bug.cgi?id=42224
570
571         This is no longer needed (Requested by olliej_ on #webkit).
572
573         * bindings/v8/ScriptSourceCode.h:
574         (WebCore::ScriptSourceCode::ScriptSourceCode):
575
576 2010-07-13  Eric Seidel  <eric@webkit.org>
577
578         Reviewed by Adam Barth.
579
580         Fix my misreading of "clear to the last marker" in the HTML5 spec
581         https://bugs.webkit.org/show_bug.cgi?id=42199
582
583         * html/HTMLFormattingElementList.cpp:
584         (WebCore::HTMLFormattingElementList::clearToLastMarker):
585         * html/HTMLFormattingElementList.h:
586         * html/HTMLTreeBuilder.cpp:
587         (WebCore::HTMLTreeBuilder::processBodyEndTagForInBody):
588         (WebCore::HTMLTreeBuilder::processEndOfFile):
589
590 2010-07-13  Oliver Hunt  <oliver@apple.com>
591
592         Reviewed by Gavin Barraclough.
593
594         ES5 requires BOMs to be treated as whitespace
595         https://bugs.webkit.org/show_bug.cgi?id=42218
596
597         Remove BOM handling logic from WebCore Script objects.
598
599         * bindings/js/StringSourceProvider.h:
600         (WebCore::StringSourceProvider::StringSourceProvider):
601         * loader/CachedScript.cpp:
602         (WebCore::CachedScript::CachedScript):
603         (WebCore::CachedScript::script):
604         * loader/CachedScript.h:
605
606 2010-07-13  Andreas Kling  <andreas.kling@nokia.com>
607
608         Reviewed by Darin Adler.
609
610         Canvas: rect(x,y,w,h) should move to (x,y) even if w=0 and h=0
611         https://bugs.webkit.org/show_bug.cgi?id=42211
612
613         * html/canvas/CanvasRenderingContext2D.cpp:
614         (WebCore::CanvasRenderingContext2D::rect):
615
616 2010-07-13  Simon Fraser  <simon.fraser@apple.com>
617
618         Reviewed by Dan Bernstein.
619
620         Show IDs and classnames in layer tree dumps
621         https://bugs.webkit.org/show_bug.cgi?id=42213
622
623         When dumping the layer tree via showLayerTree(), include id and class attributes for
624         ease of debugging.
625         
626         No tests, since this is debug-only code.
627
628         * rendering/RenderLayer.cpp:
629         (showLayerTree):
630         * rendering/RenderTreeAsText.cpp:
631         (WebCore::RenderTreeAsText::writeRenderObject):
632         * rendering/RenderTreeAsText.h:
633         (WebCore::):
634
635 2010-07-13  Simon Fraser  <simon.fraser@apple.com>
636
637         Build fix: fix WebCore exports by editing the .in file, rather than the generated file.
638
639         * WebCore.exp.in:
640
641 2010-07-13  Alexey Proskuryakov  <ap@apple.com>
642
643         Reviewed by Darin Adler.
644
645         https://bugs.webkit.org/show_bug.cgi?id=42216
646         ResourceRequest::doUpdateResourceRequest() crashes if client denied request
647
648         This is covered by many regression tests with patch for bug 42201 applied (because it makes
649         us also use this code path for sync requests, and those currently have more strict limitations).
650
651         * platform/network/cf/ResourceRequestCFNet.cpp:
652         (WebCore::ResourceRequest::doUpdateResourceRequest): Added a null check.
653
654 2010-07-13  Eric Seidel  <eric@webkit.org>
655
656         Reviewed by Adam Barth.
657
658         Make our end tag in-foreign-content mode spec bug workarounds more closely match minefield
659         https://bugs.webkit.org/show_bug.cgi?id=42187
660
661         I do not expect these work-arounds to be permanent.  Hixie has promised to
662         addresses the feedback to the parser sections of HTML5 soon.
663         I added these hacks to make our hacks more-closely match Minefield's hacks
664         and thus have us "pass" a few more html5lib runner tests.
665
666         We now pass all of the html5lib foreign content tests
667         (thus we'll likely need to write more).
668
669         Tested by html5lib/runner.html
670
671         * html/HTMLElementStack.cpp:
672         (WebCore::HTMLElementStack::contains):
673         * html/HTMLElementStack.h:
674         * html/HTMLTreeBuilder.cpp:
675         (WebCore::HTMLTreeBuilder::processEndTag):
676
677 2010-07-12  Tony Gentilcore  <tonyg@chromium.org>
678
679         Reviewed by Darin Fisher.
680
681         Wire network times from ResourceLoadTiming to performance.timing
682         https://bugs.webkit.org/show_bug.cgi?id=41824
683
684         * page/Timing.cpp:
685         (WebCore::Timing::domainLookupStart): http://dev.w3.org/2006/webapi/WebTiming/#nt-domain-lookupstart
686         (WebCore::Timing::domainLookupEnd): http://dev.w3.org/2006/webapi/WebTiming/#nt-domain-lookupend
687         (WebCore::Timing::connectStart): http://dev.w3.org/2006/webapi/WebTiming/#nt-connect-start
688         (WebCore::Timing::connectEnd): http://dev.w3.org/2006/webapi/WebTiming/#nt-connect-end
689         (WebCore::Timing::requestStart): http://dev.w3.org/2006/webapi/WebTiming/#nt-request-start
690         (WebCore::Timing::requestEnd): http://dev.w3.org/2006/webapi/WebTiming/#nt-request-end
691         (WebCore::Timing::responseStart): http://dev.w3.org/2006/webapi/WebTiming/#nt-response-start
692         (WebCore::Timing::resourceLoadTiming):
693         * page/Timing.h:
694         * page/Timing.idl:
695
696 2010-07-13  Anders Carlsson  <andersca@apple.com>
697
698         Reviewed by Sam Weinig.
699
700         Add support for URL frame loading using NPN_GetURLNotify
701         https://bugs.webkit.org/show_bug.cgi?id=42192
702
703         * WebCore.exp.in:
704         Export ResourceRequestBase::setHTTPMethod and ResourceRequestBase::setURL.
705
706 2010-07-04  Zhenyao Mo  <zmo@google.com>
707
708         Reviewed by Darin Fisher.
709
710         Need to track texture completeness
711         https://bugs.webkit.org/show_bug.cgi?id=41381
712
713         Test: fast/canvas/webgl/texture-complete.html
714
715         * html/canvas/WebGLRenderingContext.cpp:
716         (WebCore::WebGLRenderingContext::WebGLRenderingContext): Init max texture level.
717         (WebCore::WebGLRenderingContext::bindTexture): Pass max texture level to setTarget().
718         (WebCore::WebGLRenderingContext::copyTexImage2D): Cache full texture info rather than partial.
719         (WebCore::WebGLRenderingContext::generateMipmap): Ditto.
720         (WebCore::WebGLRenderingContext::texImage2DBase): Ditto.
721         (WebCore::WebGLRenderingContext::validateTexFuncParameters): Also validate level.
722         * html/canvas/WebGLRenderingContext.h: Add max texture level.
723         * html/canvas/WebGLTexture.cpp: Update the class to fully cache texture information and track NPOT and COMPLETE states.
724         (WebCore::WebGLTexture::WebGLTexture):
725         (WebCore::WebGLTexture::setTarget): Check whether the texture is initialized or has been deleted.
726         (WebCore::WebGLTexture::setParameteri): Ditto.
727         (WebCore::WebGLTexture::setParameterf): Ditto.
728         (WebCore::WebGLTexture::setLevelInfo): Set texture info.
729         (WebCore::WebGLTexture::generateMipmapLevelInfo): Generate texture info for all levels after generateMipmaps() is called.
730         (WebCore::WebGLTexture::getInternalFormat): Return internal format on texture face 0 level 0.
731         (WebCore::WebGLTexture::isNPOT): Check whether the texture is initialized or has been deleted.
732         (WebCore::WebGLTexture::needToUseBlackTexture): Ditto.
733         (WebCore::WebGLTexture::_deleteObject):
734         (WebCore::WebGLTexture::mapTargetToIndex): Map target to index.
735         (WebCore::WebGLTexture::canGenerateMipmaps): Check whether Mipmaps can be generated.
736         (WebCore::WebGLTexture::computeLevelCount): Compute texture level count from width/height.
737         (WebCore::WebGLTexture::update): Update NPOT/COMPLETE states.
738         * html/canvas/WebGLTexture.h: Ditto.
739         (WebCore::WebGLTexture::LevelInfo::LevelInfo): Add data structure to fully cache texture info.
740         (WebCore::WebGLTexture::LevelInfo::setInfo): Set information.
741
742 2010-07-13  Andreas Kling  <andreas.kling@nokia.com>
743
744         Reviewed by Darin Adler.
745
746         Canvas: drawImage() with wrong 'image' argument type should always throw TypeError
747         https://bugs.webkit.org/show_bug.cgi?id=42160
748
749         Test: canvas/philip/tests/2d.drawImage.wrongtype.html
750
751         * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
752         (WebCore::JSCanvasRenderingContext2D::drawImage): Throw TypeError instead of
753         TYPE_MISMATCH_ERR if 'image' argument is not an image, canvas or video element.
754
755 2010-07-13  Aaron Boodman  <aa@chromium.org>
756
757         Reviewed by Timothy Hatcher.
758
759         Don't reset per-document user style caches when user styles are updated in
760         Chromium.
761
762         https://bugs.webkit.org/show_bug.cgi?id=42003
763
764         * page/PageGroup.cpp:
765         (WebCore::PageGroup::addUserStyleSheetToWorld):
766         (WebCore::PageGroup::removeUserStyleSheetFromWorld):
767         (WebCore::PageGroup::removeUserStyleSheetsFromWorld):
768         (WebCore::PageGroup::removeAllUserContent):
769         (WebCore::PageGroup::resetUserStyleCacheInAllFrames):
770         * page/PageGroup.h:
771
772 2010-07-13  Eric Carlson  <eric.carlson@apple.com>
773
774         Reviewed by Dan Bernstein.
775
776         On Leopard, media element can't handle audio/mp4 MIME type in source tag
777         https://bugs.webkit.org/show_bug.cgi?id=29326
778
779         Test: media/media-can-play-mpeg-audio.html
780
781         * platform/MIMETypeRegistry.cpp:
782         (WebCore::TypeExtensionPair::): Add "audio/mp4", "m4a" to mappings table.
783
784 2010-07-13  Tony Gentilcore  <tonyg@chromium.org>
785
786         Reviewed by Darin Fisher.
787
788         Implement performance.timing.fetchStart
789         https://bugs.webkit.org/show_bug.cgi?id=41816
790
791         See: http://dev.w3.org/2006/webapi/WebTiming/#nt-fetch-start
792
793         * loader/MainResourceLoader.cpp:
794         (WebCore::MainResourceLoader::willSendRequest): Record the fetchStart time for each request for the main resource. This means it is called for each server redirect, overwritting the previous value. In https://bugs.webkit.org/show_bug.cgi?id=42018, this will be modified such that if a previous value exists, it is stored as the redirect time.
795         * loader/FrameLoaderTypes.h:
796         (WebCore::FrameLoadTimeline::FrameLoadTimeline):
797         * page/Timing.cpp:
798         (WebCore::Timing::fetchStart):
799         * page/Timing.h:
800         * page/Timing.idl:
801
802 2010-07-13  Satish Sampath  <satish@chromium.org>
803
804         Reviewed by Steve Block.
805
806         Speech input plumbing in webcore
807         https://bugs.webkit.org/show_bug.cgi?id=41518
808
809         Adds the following:
810         - a SpeechInput class to be used by the speech enabled HTML elements
811         - a SpeechInputListener interface to be implemented by the speech enabled HTML elements
812         - a SpeechInputClient interface (defined in WebCore, implemented by WebKit) for WebCore to call into WebKit.
813           This is available as a member of WebCore::Page, set by the platforms which support speech input.
814         - a SpeechInputClientListener interface for WebCore to receive events from WebKit
815
816         No new tests, the relevant LayoutTestController bindings will be added in a subsequent patch.
817
818         * Android.mk:
819         * GNUmakefile.am:
820         * WebCore.gypi:
821         * WebCore.pro:
822         * WebCore.vcproj/WebCore.vcproj:
823         * WebCore.xcodeproj/project.pbxproj:
824         * page/Page.cpp:
825         (WebCore::Page::Page):
826         * page/Page.h: Added SpeechInputClient member variable and associated methods.
827         (WebCore::Page::setSpeechInputClient):
828         (WebCore::Page::speechInputClient):
829         * page/SpeechInput.cpp: Added new class to provide speech API services to HTML elements.
830         (WebCore::SpeechInput::SpeechInput):
831         (WebCore::SpeechInput::recordingComplete):
832         (WebCore::SpeechInput::setRecognitionResult):
833         (WebCore::SpeechInput::startRecognition):
834         * page/SpeechInput.h: Added.
835         (WebCore::SpeechInput::~SpeechInput):
836         (WebCore::SpeechInput::client):
837         * page/SpeechInputListener.h: Added.
838         (WebCore::SpeechInputListener::~SpeechInputListener):
839         * page/SpeechInputClient.h: Added new interface implemented by WebKit to bubble up speech API requests to the embedder.
840         (WebCore::SpeechInputClient::~SpeechInputClient):
841         * page/SpeechInputClientListener.h: Added.
842         (WebCore::SpeechInputClientListener::~SpeechInputClientListener):
843
844 2010-07-13  Richard Moore <rich@kde.org>, Robert Hogan  <robert@webkit.org>
845
846         Reviewed by Simon Hausmann.
847
848         [Qt] MIME handling in qtwebkit network layer case-sensitivity
849
850         https://bugs.webkit.org/show_bug.cgi?id=28654
851
852         Like other platforms, Qt needs to convert MIME types to lower case
853         so they will be handled by WebCore.
854
855         * platform/network/qt/QNetworkReplyHandler.cpp:
856         (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
857
858 2010-07-13  James Robinson  <jamesr@chromium.org>
859
860         Reviewed by Simon Fraser.
861
862         REGRESSION(55056) debug builds ASSERT falsely on pages with animations
863         https://bugs.webkit.org/show_bug.cgi?id=42175
864
865         Revision 55065 added some repaint box precomputation and some debug ASSERT()ions
866         to ensure the precomputed values were valid.  However, if animations are enabled and
867         not hardware accelerated, the repaint box dimensions become time-dependent and the
868         ASSERT()s can trigger.  This can make it impossible to interactively debug pages
869         like google maps.
870
871         https://bugs.webkit.org/show_bug.cgi?id=37048 is another example of an assertion
872         failing due to time dependent animation values.
873
874         * rendering/RenderObject.cpp:
875         (WebCore::RenderObject::repaintAfterLayoutIfNeeded):
876
877 2010-07-13  Zhenyao Mo  <zmo@google.com>
878
879         Reviewed by Darin Fisher.
880
881         Implement bufferData and bufferSubData with ArrayBuffer as input
882         https://bugs.webkit.org/show_bug.cgi?id=41884
883
884         Test: fast/canvas/webgl/buffer-data-array-buffer.html
885
886         * html/canvas/WebGLBuffer.cpp: Implement associateBufferData & associateBufferSubData with ArrayBuffer as input.
887         (WebCore::WebGLBuffer::associateBufferData):
888         (WebCore::WebGLBuffer::associateBufferSubData):
889         * html/canvas/WebGLBuffer.h: Ditto.
890         * html/canvas/WebGLRenderingContext.cpp: Implement bufferData and bufferSubData with ArrayBuffer as input.
891         (WebCore::WebGLRenderingContext::bufferData):
892         (WebCore::WebGLRenderingContext::bufferSubData):
893         * html/canvas/WebGLRenderingContext.h: Ditto.
894         * html/canvas/WebGLRenderingContext.idl: Ditto.
895         * platform/graphics/GraphicsContext3D.h: Ditto.
896         * platform/graphics/mac/GraphicsContext3DMac.mm: Ditto.
897         (WebCore::GraphicsContext3D::bufferData):
898         (WebCore::GraphicsContext3D::bufferSubData):
899
900 2010-07-13  Tony Gentilcore  <tonyg@chromium.org>
901
902         Reviewed by Darin Fisher.
903
904         Implement performance.timing.responseEnd
905         https://bugs.webkit.org/show_bug.cgi?id=42006
906
907         See: http://dev.w3.org/2006/webapi/WebTiming/#nt-response-end
908
909         * loader/FrameLoader.cpp:
910         (WebCore::FrameLoader::finishedLoading):
911         * loader/FrameLoaderTypes.h:
912         (WebCore::FrameLoadTimeline::FrameLoadTimeline):
913         * page/Timing.cpp:
914         (WebCore::Timing::responseEnd):
915         * page/Timing.h:
916         * page/Timing.idl:
917
918 2010-07-13  W. James MacLean <wjmaclean@chromium.org>
919
920         Reviewed by Darin Fisher
921
922         Bug 41962 Limit html canvas element dimensions to 32767 for Skia platform
923         https://bugs.webkit.org/show_bug.cgi?id=41962
924
925         Test: fast/canvas/canvas-skia-excessive-size.html
926
927         * WebCore/html/HTMLCanvasElement.cpp
928         (WebCore::HTMLCanvasElement::convertLogicalToDevice):
929
930 2010-07-10  Zhenyao Mo  <zmo@google.com>
931
932         Reviewed by Darin Fisher.
933
934         Need to emulate MAX_VARYING_VECTORS/MAX_FRAGMENT_UNIFORM_VECTORs/MAX_VERTEX_UNIFORM_VECTORS for glGet
935         https://bugs.webkit.org/show_bug.cgi?id=42032
936
937         * platform/graphics/mac/GraphicsContext3DMac.mm:
938         (WebCore::GraphicsContext3D::getIntegerv): Emulate the enums.
939
940 2010-07-13  Philippe Normand  <pnormand@igalia.com>
941
942         Reviewed by Eric Carlson.
943
944         [GTK] video playback position query flood when mouse over the video element
945         https://bugs.webkit.org/show_bug.cgi?id=35333
946
947         Don't trigger a position query only to know which play/pause
948         button to display. Instead use the media-control button display
949         type to select the image to paint.
950
951         * platform/gtk/RenderThemeGtk.cpp:
952         (WebCore::RenderThemeGtk::paintMediaPlayButton):
953
954 2010-07-13  Sheriff Bot  <webkit.review.bot@gmail.com>
955
956         Unreviewed, rolling out r63192.
957         http://trac.webkit.org/changeset/63192
958         https://bugs.webkit.org/show_bug.cgi?id=42173
959
960         Broke fast/backgrounds/size/contain-and-cover.html (Requested
961         by kling on #webkit).
962
963         * manual-tests/css3-background-layer-count.html: Removed.
964         * rendering/style/FillLayer.cpp:
965         (WebCore::FillLayer::cullEmptyLayers):
966
967 2010-07-13  Marcus Bulach  <bulach@chromium.org>
968
969         Reviewed by Jeremy Orlow.
970
971         Removes cycles caused by "m_this" members in a few IndexedDB classes.
972         https://bugs.webkit.org/show_bug.cgi?id=42161
973
974         Adds IDBAny::create for the various types.
975         No functionality change, just cleaning up.
976
977         * storage/IDBAny.cpp:
978         (WebCore::createIDBAny):
979         (WebCore::IDBAny::create):
980         * storage/IDBAny.h:
981         * storage/IDBDatabaseRequest.cpp:
982         (WebCore::IDBDatabaseRequest::IDBDatabaseRequest):
983         (WebCore::IDBDatabaseRequest::createObjectStore):
984         (WebCore::IDBDatabaseRequest::removeObjectStore):
985         * storage/IDBDatabaseRequest.h:
986         * storage/IDBKeyRange.cpp:
987         (WebCore::IDBKeyRange::IDBKeyRange):
988         * storage/IDBKeyRange.h:
989         (WebCore::IDBKeyRange::left):
990         (WebCore::IDBKeyRange::right):
991         * storage/IDBObjectStoreRequest.cpp:
992         (WebCore::IDBObjectStoreRequest::IDBObjectStoreRequest):
993         (WebCore::IDBObjectStoreRequest::get):
994         (WebCore::IDBObjectStoreRequest::add):
995         (WebCore::IDBObjectStoreRequest::put):
996         (WebCore::IDBObjectStoreRequest::remove):
997         (WebCore::IDBObjectStoreRequest::createIndex):
998         (WebCore::IDBObjectStoreRequest::removeIndex):
999         * storage/IDBObjectStoreRequest.h:
1000         * storage/IndexedDatabaseRequest.cpp:
1001         (WebCore::IndexedDatabaseRequest::IndexedDatabaseRequest):
1002         (WebCore::IndexedDatabaseRequest::open):
1003         * storage/IndexedDatabaseRequest.h:
1004
1005 2010-07-13  Antti Koivisto  <koivisto@iki.fi>
1006
1007         Reviewed by Kenneth Rohde Christiansen.
1008
1009         [Qt] Land the initial build system for WebKit2
1010         https://bugs.webkit.org/show_bug.cgi?id=41604
1011
1012         The build is enabled by passing --qmakearg="CONFIG+=webkit2" to build-webkit
1013
1014         * WebCore.pri:
1015         * WebCore.pro:
1016
1017 2010-07-13  Leon Clarke  <leonclarke@google.com>
1018
1019         Reviewed by Pavel Feldman.
1020
1021         Don't access objects after deleting them, following
1022         the addition of link prefetching. Also remove a forward declaration
1023         of the now-nonexistent CachedLinkPrefetch class.
1024         https://bugs.webkit.org/show_bug.cgi?id=3652
1025
1026         No new tests. Correcting aspects of the prefetch change that shouldn't
1027         have affected functionality.
1028
1029         * html/HTMLLinkElement.h:
1030         * loader/loader.cpp:
1031         (WebCore::Loader::Host::cancelPendingRequests):
1032
1033 2010-07-13  Andras Becsi  <abecsi@webkit.org>
1034
1035         Reviewed by Simon Hausmann.
1036
1037         [Qt] Fix the case of a linker option to lowercase to be able to
1038         cross compile QtWebKit for Windows on Linux.
1039
1040         No new tests needed.
1041
1042         * WebCore.pro:
1043
1044 2010-07-12  Ilya Tikhonovsky  <loislo@chromium.org>
1045
1046         Reviewed by Yury Semikhatsky.
1047
1048         WebInspector: Next iteration of Inspector code generator.
1049         The InspectorFrontend2 was replaced by slightly modified version of
1050         InspectorBackend file (Inspector.idl). At the end all the interface
1051         between WebInspector and inspected page will be specified by this file
1052         and generated by CodeGeneratorInspector (InspectorFrontend.cpp,
1053         InspectorBackend.cpp and InspectorBackend.js).
1054         https://bugs.webkit.org/show_bug.cgi?id=42104
1055
1056         * DerivedSources.make:
1057         * GNUmakefile.am:
1058         * WebCore.gyp/WebCore.gyp:
1059         * WebCore.gyp/scripts/rule_binding.py:
1060         * WebCore.gypi:
1061         * WebCore.pri:
1062         * WebCore.xcodeproj/project.pbxproj:
1063         * bindings/scripts/IDLParser.pm:
1064         * bindings/scripts/IDLStructure.pm:
1065         * bindings/scripts/generate-bindings.pl:
1066         * inspector/CodeGeneratorInspector.pm:
1067         * inspector/Inspector.idl: Added.
1068         * inspector/InspectorCSSStore.cpp:
1069         (WebCore::InspectorCSSStore::inspectorStyleSheet):
1070         * inspector/InspectorController.cpp:
1071         (WebCore::InspectorController::connectFrontend):
1072         (WebCore::InspectorController::startTimelineProfiler):
1073         * inspector/InspectorController.h:
1074         (WebCore::InspectorController::remoteInspectorFrontend):
1075         * inspector/InspectorDOMAgent.cpp:
1076         (WebCore::InspectorDOMAgent::InspectorDOMAgent):
1077         * inspector/InspectorDOMAgent.h:
1078         (WebCore::InspectorDOMAgent::create):
1079         * inspector/InspectorFrontend2.idl: Removed.
1080         * inspector/InspectorTimelineAgent.cpp:
1081         (WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
1082         (WebCore::InspectorTimelineAgent::resetFrontendProxyObject):
1083         * inspector/InspectorTimelineAgent.h:
1084
1085 2010-07-12  Steve Block  <steveblock@google.com>
1086
1087         Reviewed by Jeremy Orlow.
1088
1089         DeviceOrientationEvent should use optional properties
1090         https://bugs.webkit.org/show_bug.cgi?id=41607
1091
1092         This change adds a new DeviceOrientation class which takes care of which of the
1093         optional properties are present. DeviceOrientationEvent owns an instance of
1094         DeviceOrientation, rather than owning the properties directly.
1095         DeviceOrientationEvent now requires custom bindings.
1096
1097         Test: fast/dom/DeviceOrientation/optional-event-properties.html
1098
1099         * Android.mk:
1100         * Android.jscbindings.mk:
1101         * Android.v8bindings.mk:
1102         * CMakeLists.txt:
1103         * GNUmakefile.am:
1104         * WebCore.gypi:
1105         * WebCore.pro:
1106         * WebCore.vcproj/WebCore.vcproj:
1107         * WebCore.xcodeproj/project.pbxproj:
1108         * bindings/js/JSBindingsAllInOne.cpp:
1109         * bindings/js/JSDeviceOrientationEventCustom.cpp: Added.
1110         (WebCore::JSDeviceOrientationEvent::alpha):
1111         (WebCore::JSDeviceOrientationEvent::beta):
1112         (WebCore::JSDeviceOrientationEvent::gamma):
1113         (WebCore::JSDeviceOrientationEvent::initDeviceOrientationEvent):
1114         * bindings/v8/custom/V8DeviceOrientationEventCustom.cpp: Added.
1115         (WebCore::V8DeviceOrientationEvent::alphaAccessorGetter):
1116         (WebCore::V8DeviceOrientationEvent::betaAccessorGetter):
1117         (WebCore::V8DeviceOrientationEvent::gammaAccessorGetter):
1118         (WebCore::V8DeviceOrientationEvent::initDeviceOrientationEventCallback):
1119         * dom/DeviceOrientation.cpp: Added.
1120         * dom/DeviceOrientation.h: Added.
1121         (WebCore::DeviceOrientation::create):
1122         (WebCore::DeviceOrientation::canProvideAlpha):
1123         (WebCore::DeviceOrientation::alpha):
1124         (WebCore::DeviceOrientation::canProvideBeta):
1125         (WebCore::DeviceOrientation::beta):
1126         (WebCore::DeviceOrientation::canProvideGamma):
1127         (WebCore::DeviceOrientation::gamma):
1128         (WebCore::DeviceOrientation::DeviceOrientation):
1129         * dom/DeviceOrientationEvent.cpp:
1130         (WebCore::DeviceOrientationEvent::DeviceOrientationEvent):
1131         (WebCore::DeviceOrientationEvent::initDeviceOrientationEvent):
1132         * dom/DeviceOrientationEvent.h:
1133         (WebCore::DeviceOrientationEvent::create):
1134         (WebCore::DeviceOrientationEvent::orientation):
1135         * dom/DeviceOrientationEvent.idl:
1136
1137 2010-07-13  Andreas Kling  <andreas.kling@nokia.com>
1138
1139         Reviewed by Antti Koivisto.
1140
1141         CSS3 background: Number of layers should be determined by background-image element count
1142         https://bugs.webkit.org/show_bug.cgi?id=41201
1143
1144         Change FillLayer culling logic to discard all layers
1145         after the first one without an image set.
1146
1147         Manual test: css3-background-layer-count.html
1148
1149         * manual-tests/css3-background-layer-count.html: Added.
1150         * rendering/style/FillLayer.cpp:
1151         (WebCore::FillLayer::cullEmptyLayers):
1152
1153 2010-07-07  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
1154
1155         Reviewed by Darin Adler.
1156
1157         Prevent assertion/duplicate loads for non-deferred subtitute-data loads
1158
1159         https://bugs.webkit.org/show_bug.cgi?id=30879
1160
1161         MainResourceLoader uses the member m_initialRequest to store requests for future
1162         deferred loads. When doing the actual load in handleDataLoadNow(), we therefore
1163         have to clear this request so that subsequent entries into the loader will not
1164         start yet another load.
1165
1166         This can happen as a result of a PageGroupLoadDeferrer going out of scope when
1167         returning from Chrome::runJavaScriptAlert(), which calls setDeferredLoading(false),
1168         but only in the case of using both substitute-data and non-deferred main resource
1169         load together. That's why two new DRT functions were added:
1170
1171          * queueLoadHTMLString()
1172          * setDeferMainResourceLoad()
1173
1174         The change adds DRT hooks for Mac, Win and Qt for these two functions. For Mac
1175         and Win the hook uses new SPI in WebDataSource. For Qt a new static member was
1176         added to the FrameLoaderClientQt and accessed though DumpRenderTreeSupportQt.
1177
1178         Test: fast/loader/non-deferred-substitute-load.html
1179
1180         * loader/MainResourceLoader.cpp:
1181         (WebCore::MainResourceLoader::handleDataLoadNow):
1182
1183 2010-07-13  Yoshiki Hayashi  <yhayashi@google.com>
1184
1185         Reviewed by Kent Tamura.
1186
1187         Make sure correct Nodes are passed to childrenChanged so that
1188         :last-child gets properly applied when fragment is inserted.
1189         https://bugs.webkit.org/show_bug.cgi?id=37944
1190
1191         Test: fast/css/last-child-innerhtml.html
1192
1193         * dom/ContainerNode.cpp:
1194         (WebCore::ContainerNode::replaceChild):
1195         (WebCore::ContainerNode::appendChild):
1196
1197 2010-07-13  Ryosuke Niwa  <rniwa@webkit.org>
1198
1199         Reviewed by Kent Tamura.
1200
1201         InsertListCommand's modifyRange and doApply should be merged
1202         https://bugs.webkit.org/show_bug.cgi?id=41403
1203
1204         Isolated the code in doApply to insert and remove lists for single paragraph into doApplyForSingleParagraph.
1205         Merged the code in modifyRange into doApply and cleaned up.
1206
1207         No test is added since this is a clean up.
1208
1209         * editing/InsertListCommand.cpp:
1210         (WebCore::InsertListCommand::InsertListCommand): m_forceCreateList is no longer initialized
1211         (WebCore::InsertListCommand::doApply): Isolated the code to insert/remove lists in doApplyForSingleParagraph
1212         (WebCore::InsertListCommand::doApplyForSingleParagraph): Insert/remove lists for single paragraph
1213         * editing/InsertListCommand.h: Added doApplyForSingleParagraph and removed m_forceCreateList
1214
1215 2010-07-12  Eric Seidel  <eric@webkit.org>
1216
1217         Reviewed by Adam Barth.
1218
1219         Fix typo in "close the cell" which caused assertion
1220         https://bugs.webkit.org/show_bug.cgi?id=42138
1221
1222         * html/HTMLTreeBuilder.cpp:
1223         (WebCore::HTMLTreeBuilder::closeTheCell):
1224
1225 2010-07-12  Eric Seidel  <eric@webkit.org>
1226
1227         Reviewed by Adam Barth.
1228
1229         Fix line number handling in HTMLTreeBuilder to fix a zillion layout tests
1230         https://bugs.webkit.org/show_bug.cgi?id=42143
1231
1232         Covered by a zillion layout tests.
1233
1234         * html/HTMLTreeBuilder.cpp:
1235         (WebCore::HTMLTreeBuilder::processEndTag):
1236         (WebCore::HTMLTreeBuilder::processScriptStartTag):
1237
1238 2010-07-12  Jay Civelli  <jcivelli@chromium.org>
1239
1240         Reviewed by Kent Tamura.
1241
1242         Adding right aligned text called labels to PopupMenus.
1243         https://bugs.webkit.org/show_bug.cgi?id=41964
1244
1245         * platform/PopupMenuClient.h:
1246         * platform/chromium/PopupMenuChromium.cpp:
1247         (WebCore::PopupListBox::paintRow):
1248         * rendering/RenderMenuList.cpp:
1249         (WebCore::RenderMenuList::itemLabel):
1250         * rendering/RenderMenuList.h:
1251         * rendering/RenderTextControlSingleLine.cpp:
1252         (WebCore::RenderTextControlSingleLine::itemLabel):
1253         * rendering/RenderTextControlSingleLine.h:
1254
1255 2010-07-12  Mihnea Ovidenea  <mihnea@adobe.com>
1256
1257         Reviewed by Dirk Schulze.
1258
1259         [Cairo] Incorrect Test for Text Fill
1260         https://bugs.webkit.org/show_bug.cgi?id=42123
1261
1262         Correct test used for text shadow.  It currently checks for
1263         equality with cTextFill.  However, this test fails if the
1264         text drawing mode is set to 'cTextFill | cTextStroke'.  Fix
1265         is to modify the test to be like other Cairo uses of the
1266         text drawing mode, and check for the cTextFill bit being
1267         set, not for equality with the bit.
1268
1269         * platform/graphics/cairo/FontCairo.cpp:
1270         (WebCore::Font::drawGlyphs):
1271
1272 2010-07-12  Eric Seidel  <eric@webkit.org>
1273
1274         Reviewed by Sam Weinig.
1275
1276         Fix a typo in the adoption agency causing test failures
1277         https://bugs.webkit.org/show_bug.cgi?id=42133
1278
1279         The new behavior actually differs from old webkit.
1280         <p><b><p>TEST
1281         was not bold in the old parser, but is bold now.
1282         This matches Minefield and the HTML5 spec.
1283
1284         Covered by two tests in html5lib/runner.html.
1285
1286         * html/HTMLTreeBuilder.cpp:
1287         (WebCore::HTMLTreeBuilder::callTheAdoptionAgency):
1288
1289 2010-07-12  Pavel Feldman  <pfeldman@chromium.org>
1290
1291         Reviewed by Joseph Pecoraro.
1292
1293         Web Inspector: provide starts and ends for network phases instead of duration.
1294
1295         https://bugs.webkit.org/show_bug.cgi?id=42091
1296
1297         * inspector/InspectorResource.cpp:
1298         (WebCore::InspectorResource::updateResponse):
1299         (WebCore::InspectorResource::updateScriptObject):
1300         (WebCore::InspectorResource::buildObjectForTiming):
1301         * platform/network/ResourceLoadTiming.h:
1302         (WebCore::ResourceLoadTiming::deepCopy):
1303         (WebCore::ResourceLoadTiming::operator==):
1304         (WebCore::ResourceLoadTiming::ResourceLoadTiming):
1305         * platform/network/ResourceResponseBase.cpp:
1306         (WebCore::ResourceResponseBase::ResourceResponseBase):
1307         (WebCore::ResourceResponseBase::wasCached):
1308         (WebCore::ResourceResponseBase::setWasCached):
1309         * platform/network/ResourceResponseBase.h:
1310
1311 2010-07-12  Adam Barth  <abarth@webkit.org>
1312
1313         Reviewed by Eric Seidel.
1314
1315         HTML5 Parser: document.write after onload blows away document
1316         https://bugs.webkit.org/show_bug.cgi?id=40745
1317
1318         Rather than blowing away the document when we get a document.write call
1319         after the document is closed, we new ignore the write.  This
1320         technically violates the spec (which requires us to blow away the
1321         document), but blowing away the document breaks too many web sites.
1322
1323         Rather than this patch, we could go back to our old behavior (which was
1324         to append the bytes just before EOF), but implementing this approach
1325         (suggested by Henri) will let us gather data about whether his approach
1326         is workable.
1327
1328         See also: http://www.w3.org/Bugs/Public/show_bug.cgi?id=9767
1329
1330         * dom/Document.cpp:
1331         (WebCore::Document::write):
1332         * html/HTMLDocumentParser.cpp:
1333         (WebCore::HTMLDocumentParser::insert):
1334
1335 2010-07-12  Tony Gentilcore  <tonyg@chromium.org>
1336
1337         Reviewed by Oliver Hunt.
1338
1339         Strip BOMs from source before passing to V8
1340         https://bugs.webkit.org/show_bug.cgi?id=42102
1341
1342         This extra copy may carry a performance penalty. We should investigate
1343         whether this allows any simplification in v8/scanner.cc:SkipJavaScriptWhiteSpace().
1344
1345         No new tests because no new functionality.
1346
1347         * bindings/v8/ScriptSourceCode.h:
1348         (WebCore::ScriptSourceCode::ScriptSourceCode):
1349
1350 2010-07-12  Gustavo Noronha Silva  <gns@gnome.org>
1351
1352         Unreviewed. make distcheck fix.
1353
1354         * GNUmakefile.am:
1355
1356 2010-07-12  Yuta Kitamura  <yutak@chromium.org>
1357
1358         Reviewed by Alexey Proskuryakov.
1359
1360         Fix crash caused by unintentional deletion of worker bridge and channel.
1361
1362         WebSocket: Crash caused by calling close() within onmessage handler
1363         https://bugs.webkit.org/show_bug.cgi?id=41507
1364
1365         Test: websocket/tests/workers/close-in-onmessage-crash.html
1366
1367         * websockets/WebSocket.cpp:
1368         (WebCore::WebSocket::close): bufferedAmount() may call WebSocket::didClose(),
1369         which causes m_channel to get freed.
1370         * websockets/WorkerThreadableWebSocketChannel.cpp:
1371         (WebCore::WorkerThreadableWebSocketChannel::Bridge::send): Add reference to
1372         the bridge because waitForMethodCompletion() may dereference the bridge.
1373         (WebCore::WorkerThreadableWebSocketChannel::Bridge::bufferedAmount): Ditto.
1374         (WebCore::WorkerThreadableWebSocketChannel::Bridge::waitForMethodCompletion):
1375         The root cause is a call to WorkerRunLoop::runInMode in this function.
1376         It may call WebSocket::didClose() even inside WebSocket::close(), which frees
1377         everything including the worker bridge and the channel.
1378
1379 2010-07-12  Adam Barth  <abarth@webkit.org>
1380
1381         Reviewed by Eric Seidel.
1382
1383         REGRESSION (HTML5 parser?): Impossible to get past the CAPTCHA on postcode.royalmail.com
1384         https://bugs.webkit.org/show_bug.cgi?id=41797
1385
1386         Once we resume parsing after script execution, we want to clear the
1387         preload scanner so we don't scan any bytes it might have accumulated.
1388
1389         Test: http/tests/loading/preload-slow-loading.php
1390
1391         * html/HTMLDocumentParser.cpp:
1392         (WebCore::HTMLDocumentParser::resumeParsingAfterScriptExecution):
1393
1394 2010-07-12  Albert J. Wong  <ajwong@chromium.org>
1395
1396         Reviewed by Jian Li.
1397
1398         Adding directional property enums back into
1399         CSSComputedStyleDeclaration::getPropertyCSSValue().
1400
1401         https://bugs.webkit.org/show_bug.cgi?id=42122
1402
1403         The four directional -webkit- properties --  CSSPropertyWebkitMarginEnd,
1404         CSSPropertyWebkitMarginStart, CSSPropertyWebkitPaddingEnd, and
1405         CSSPropertyWebkitPaddingStart -- are resolved into other css
1406         properties before the swtich statement via a call to
1407         CSSProperty::resolveDirectionAwareProperty().  Thus, they are never
1408         seen by the switch statement.  However, if you leave out a potential
1409         enum value from the switch, gcc will generate a warning if -Wall is
1410         specified.  This warning breaks the Chromium build.  To avoid this,
1411         we add in the enum values and ASSERT_NOT_REACHED() if they are hit.
1412
1413
1414         * css/CSSComputedStyleDeclaration.cpp:
1415         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1416
1417 2010-07-12  Chris Fleizach  <cfleizach@apple.com>
1418
1419         Reviewed by Darin Adler.
1420
1421         AX converts AtomicStrings to .string() more than needed
1422         https://bugs.webkit.org/show_bug.cgi?id=42056
1423
1424         No behavior change. No new tests.
1425
1426         * accessibility/AccessibilityRenderObject.cpp:
1427         (WebCore::AccessibilityRenderObject::isPressed):
1428         (WebCore::siblingWithAriaRole):
1429         (WebCore::AccessibilityRenderObject::intValue):
1430         (WebCore::AccessibilityRenderObject::accessibilityDescription):
1431         (WebCore::AccessibilityRenderObject::hasTextAlternative):
1432         (WebCore::AccessibilityRenderObject::supportsARIAFlowTo):
1433         (WebCore::AccessibilityRenderObject::supportsARIADropping):
1434         (WebCore::AccessibilityRenderObject::supportsARIADragging):
1435         (WebCore::AccessibilityRenderObject::determineARIADropEffects):
1436         (WebCore::AccessibilityRenderObject::isExpanded):
1437         (WebCore::AccessibilityRenderObject::isRequired):
1438         (WebCore::AccessibilityRenderObject::isSelected):
1439         (WebCore::AccessibilityRenderObject::supportsARIAOwns):
1440         (WebCore::AccessibilityRenderObject::isEnabled):
1441         (WebCore::AccessibilityRenderObject::activeDescendant):
1442         (WebCore::AccessibilityRenderObject::determineAriaRoleAttribute):
1443         (WebCore::AccessibilityRenderObject::orientation):
1444         (WebCore::AccessibilityRenderObject::canSetExpandedAttribute):
1445         (WebCore::AccessibilityRenderObject::canSetValueAttribute):
1446
1447 2010-07-12  Tony Chang  <tony@chromium.org>
1448
1449         Reviewed by David Hyatt.
1450
1451         crash in FrameView::detachCustomScrollbars
1452         https://bugs.webkit.org/show_bug.cgi?id=41196
1453
1454         Test: scrollbars/hidden-iframe-scrollbar-crash.html
1455
1456         * page/FrameView.cpp:
1457         (WebCore::FrameView::detachCustomScrollbars):
1458
1459 2010-07-12  Eric Seidel  <eric@webkit.org>
1460
1461         Reviewed by Adam Barth.
1462
1463         HTML tags should break out of foreign content
1464         https://bugs.webkit.org/show_bug.cgi?id=42106
1465
1466         Implement another paragraph of the spec to pass another
1467         bunch of foreign content tests.
1468
1469         This fixes a bunch of tests in html5lib/runner.html.
1470         After this change we only have 4 remaining foreign content failures.
1471
1472         * html/HTMLTreeBuilder.cpp:
1473         (WebCore::HTMLTreeBuilder::processStartTag):
1474
1475 2010-07-12  Zhenyao Mo  <zmo@google.com>
1476
1477         Reviewed by Darin Fisher.
1478
1479         Bring bufferData and clear to GLES2 compliant
1480         https://bugs.webkit.org/show_bug.cgi?id=41574
1481
1482         * html/canvas/WebGLRenderingContext.cpp:
1483         (WebCore::WebGLRenderingContext::bufferData): Call validateBufferDataUsage().
1484         (WebCore::WebGLRenderingContext::clear): Check mask.
1485         (WebCore::WebGLRenderingContext::validateBufferDataUsage): Check usage.
1486         * html/canvas/WebGLRenderingContext.h: Declare validateBufferDataUsage.
1487
1488 2010-07-12  Eric Seidel  <eric@webkit.org>
1489
1490         Unreviewed.  Attempt to fix Chromium Windows build.
1491
1492         Always generate SVGNames and MathMLNames for all ports (to support HTML5)
1493         https://bugs.webkit.org/show_bug.cgi?id=42050
1494
1495         Another way to fix this might be to mark all the .in files with
1496         svn:eol=native.  But fixing the perl to be more robust against
1497         stray whitespace seems to be a better long-term fix.
1498
1499         No functional change, thus no tests.
1500
1501         * bindings/scripts/InFilesParser.pm:
1502
1503 2010-07-12  Andreas Kling  <andreas.kling@nokia.com>
1504
1505         Reviewed by Kenneth Rohde Christiansen.
1506
1507         Remove dependency on PlatformString.h in Color.h
1508         https://bugs.webkit.org/show_bug.cgi?id=42109
1509
1510         * platform/graphics/Color.cpp:
1511         * platform/graphics/Color.h:
1512
1513 2010-07-12  Eric Seidel  <eric@webkit.org>
1514
1515         Unreviewed, build fix.
1516
1517         Update HTMLTreeBuilder now that MathMLNames is always generated
1518         https://bugs.webkit.org/show_bug.cgi?id=42059
1519
1520         Fix the Windows project file to build MathMLNames.*.
1521         Also added MathMLElementFactory.* which is a NOOP now, but will
1522         prevent folks from breaking the build when they turn MathML on.
1523
1524         * WebCore.vcproj/WebCore.vcproj:
1525
1526 2010-07-12  Eric Carlson  <eric.carlson@apple.com>
1527
1528         Reviewed by Darin Adler.
1529
1530         Update media element's handling of empty 'src' attribute
1531         https://bugs.webkit.org/show_bug.cgi?id=42001
1532
1533         * html/HTMLMediaElement.cpp:
1534         (WebCore::HTMLMediaElement::src): Return getNonEmptyURLAttribute().
1535         (WebCore::HTMLMediaElement::selectMediaResource): Call noneSupported() for empty 'src'.
1536         (WebCore::HTMLMediaElement::selectNextSourceChild): Use getNonEmptyURLAttribute() to convert 
1537         'src' to URL instead of document()->completeURL(). Don't consider a <source> with an empty 'src'. 
1538
1539         * html/HTMLMediaElement.idl: Add 'NonEmpty' option to 'src' attribute.
1540
1541         * html/HTMLSourceElement.cpp:
1542         (WebCore::HTMLSourceElement::src): Return getNonEmptyURLAttribute().
1543         (WebCore::HTMLSourceElement::isURLAttribute): New, 'src' is a URL attribute.
1544         * html/HTMLSourceElement.h:
1545
1546         * html/HTMLSourceElement.idl: Add 'NonEmpty' option to 'src' attribute.
1547
1548         * html/HTMLVideoElement.cpp:
1549         (WebCore::HTMLVideoElement::parseMappedAttribute): Use getNonEmptyURLAttribute() to convert 
1550         'poster' to URL instead of document()->completeURL().
1551
1552         * html/HTMLVideoElement.idl:  Add 'NonEmpty' option to 'poster' attribute.
1553
1554 2010-07-12  Martin Robinson  <mrobinson@igalia.com>
1555
1556         Reviewed by Xan Lopez.
1557
1558         [GTK] make dist is broken because of missing headers and other miscellaneous reasons
1559         https://bugs.webkit.org/show_bug.cgi?id=42107
1560
1561         * GNUmakefile.am: Remove InspectorFrontend2.idl from the list of IDL files, so
1562         that it is not built into libWebCoreJS. Add missing header to the source list.
1563         Make sure to distribute the new file: WebCore/inspector/CodeGeneratorInspector.pm.
1564
1565 2010-07-12  Eric Seidel  <eric@webkit.org>
1566
1567         Reviewed by Adam Barth.
1568
1569         HTMLTreeBuilder needs to support mixing SVG and MathML content
1570         https://bugs.webkit.org/show_bug.cgi?id=42096
1571
1572         This is just a direct transcription of another paragraph of the
1573         HTML5 spec.
1574
1575         This improved a couple results in html5lib/runner.html, but more
1576         work to do yet to pass all the foreign content tests.
1577
1578         * html/HTMLTreeBuilder.cpp:
1579         (WebCore::HTMLTreeBuilder::processStartTag):
1580         (WebCore::HTMLTreeBuilder::processEndTag):
1581         (WebCore::HTMLTreeBuilder::processUsingSecondaryInsertionModeAndAdjustInsertionMode):
1582         * html/HTMLTreeBuilder.h:
1583         * mathml/mathtags.in:
1584
1585 2010-07-12  Eric Seidel  <eric@webkit.org>
1586
1587         Reviewed by Adam Barth.
1588
1589         Update HTMLTreeBuilder now that MathMLNames is always generated
1590         https://bugs.webkit.org/show_bug.cgi?id=42059
1591
1592         Fix the HTMLTreeBuilder MathML code path to compile and remove
1593         the MathML and SVG guards now that SVGNames and MathMLNames are
1594         always compiled into ever port after:
1595         https://bugs.webkit.org/show_bug.cgi?id=42050
1596
1597         This fixed a whole bunch of libhtml5 tests now that we have the
1598         mathml code paths enabled.
1599
1600         * html/HTMLTreeBuilder.cpp:
1601         (WebCore::HTMLTreeBuilder::processStartTagForInBody):
1602         (WebCore::HTMLTreeBuilder::processStartTag):
1603         (WebCore::HTMLTreeBuilder::resetInsertionModeAppropriately):
1604         (WebCore::HTMLTreeBuilder::processEndTag):
1605         * page/Frame.cpp:
1606         (WebCore::Frame::Frame):
1607          - Always init SVGNames and MathML names.
1608
1609 2010-07-12  Simon Fraser  <simon.fraser@apple.com>
1610
1611         Reviewed by Dan Bernstein.
1612
1613         Don't go into compositing mode for 0x0 plugins
1614         https://bugs.webkit.org/show_bug.cgi?id=34009
1615         
1616         Don't use compositing for small (0-height or width, or 1x1) plugins, or iframes whose
1617         height or width is zero.
1618         
1619         Previously we made all compositing decisions inside styleChanged(). However,
1620         now that plugin and iframe compositing behavior depends on renderer size, we have
1621         to wait until layout before deciding whether to composite these. This behavior
1622         change is controlled by the m_compositingDependsOnGeometry flag. When set,
1623         updateCompositingLayers() always does a hierarchy update.
1624
1625         Tests: compositing/iframes/iframe-size-from-zero.html
1626                compositing/iframes/iframe-size-to-zero.html
1627                compositing/plugins/1x1-composited-plugin.html
1628                compositing/plugins/large-to-small-composited-plugin.html
1629                compositing/plugins/small-to-large-composited-plugin.html
1630
1631         * page/FrameView.cpp:
1632         (WebCore::FrameView::updateCompositingLayers): No longer bail if usesCompositing() is false; we
1633         have to always enter updateCompositingLayers().
1634         (WebCore::FrameView::repaintFixedElementsAfterScrolling): Ditto
1635         (WebCore::FrameView::enterCompositingMode): Remove bogus return of a void.
1636
1637         * rendering/RenderLayerCompositor.h: Add m_compositingDependsOnGeometry.
1638         * rendering/RenderLayerCompositor.cpp:
1639         (WebCore::RenderLayerCompositor::RenderLayerCompositor): Initialize m_compositingDependsOnGeometry to false.
1640         (WebCore::RenderLayerCompositor::updateCompositingLayers): If m_compositingDependsOnGeometry is true,
1641         we always need to run through the layer hierarchy looking for things which need to be composited, even if
1642         we're not (yet) in compositing mode.
1643         
1644         (WebCore::RenderLayerCompositor::computeCompositingRequirements): Because we can enter compositing mode
1645         on the fly inside updateCompositingLayers() now, the state of willBeComposited needs to be updated
1646         when processing the root layer, for the case where the compositing mode changes.
1647         
1648         (WebCore::RenderLayerCompositor::requiresCompositingForPlugin): Set the m_compositingDependsOnGeometry
1649         flag if we see a potentially-composited plugin. Once we have layout information, only composite the plugin
1650         if height * width > 1.
1651         
1652         (WebCore::RenderLayerCompositor::requiresCompositingForIFrame): Set the m_compositingDependsOnGeometry
1653         flag if we see a potentially-composited iframe. Once we have layout information, only composite the plugin
1654         if height or width is greater than zero.
1655
1656 2010-07-12  Simon Fraser  <simon.fraser@apple.com>
1657
1658         Reviewed by Dan Bernstein.
1659
1660         Need to do a layout when RenderLayers come and go because of compositing
1661         https://bugs.webkit.org/show_bug.cgi?id=42108
1662         
1663         If we create or destroy RenderLayers for reasons other than style changes
1664         (e.g. because of composited iframes or plugins), then we need to ensure
1665         that we do a layout.
1666
1667         Test: compositing/iframes/layout-on-compositing-change.html
1668
1669         * rendering/RenderObject.cpp:
1670         (WebCore::RenderObject::adjustStyleDifference):
1671
1672 2010-07-11  Eric Seidel  <eric@webkit.org>
1673
1674         Reviewed by Darin Adler.
1675
1676         Always generate SVGNames and MathMLNames for all ports (to support HTML5)
1677         https://bugs.webkit.org/show_bug.cgi?id=42050
1678
1679         Historically, FOONames has only been generate when ENABLE(FOO) is defined.
1680         However, for HTML5 parser support, we need to have access to the SVG
1681         and MathML tag names regardless of whether we the engine is configured
1682         to render SVG or MathML content.
1683
1684         This change enables generation of SVGNames and MathMLNames on all ports and
1685         makes it so that ports can include FOOElementFactory.* regardless of whether
1686         ENABLE(FOO) is defined (and have it do the right thing).
1687
1688         No functional change (yet) so no tests.
1689
1690         * DerivedSources.make:
1691         * GNUmakefile.am:
1692         * WebCore.gyp/WebCore.gyp:
1693         * WebCore.pri:
1694         * dom/make_names.pl:
1695
1696 2010-07-10  Eric Seidel  <eric@webkit.org>
1697
1698         Reviewed by Adam Barth.
1699
1700         make_names.pl should always generate all names in Names.* files
1701         https://bugs.webkit.org/show_bug.cgi?id=42023
1702
1703         Only the *ElementFactory files need to have conditional contents
1704         based on enabled features.  WebCore should always have all known
1705         names for SVG, MathML, XML, XLink, HTML, etc. generated in the
1706         various *Names files, even if features are disabled.
1707
1708         make_names.pl is kinda a big hack at this point.  I tried to clean
1709         up a little as I went.  The way I made *Names include all names was to
1710         read the .in files twice, once using the preprocessor and once without.
1711
1712         * dom/make_names.pl:
1713
1714 2010-07-12  Andreas Kling  <andreas.kling@nokia.com>
1715
1716         Reviewed by Oliver Hunt.
1717
1718         Canvas: Move fillRect() save/restore into GraphicsContext implementations
1719         https://bugs.webkit.org/show_bug.cgi?id=42088
1720
1721         Saving the platform painter state is an expensive operation,
1722         so don't do it in fillRect() for platforms that don't need it. (CG, Qt)
1723
1724         * html/canvas/CanvasRenderingContext2D.cpp:
1725         (WebCore::CanvasRenderingContext2D::fillRect):
1726         * platform/graphics/cairo/GraphicsContextCairo.cpp:
1727         (WebCore::GraphicsContext::fillRect):
1728         * platform/graphics/skia/GraphicsContextSkia.cpp:
1729         (WebCore::GraphicsContext::fillRect):
1730         * platform/graphics/wince/GraphicsContextWince.cpp:
1731         (WebCore::GraphicsContext::fillRect):
1732         * platform/graphics/wx/GraphicsContextWx.cpp:
1733         (WebCore::GraphicsContext::fillRect):
1734
1735 2010-07-12  Nate Chapin  <japhet@chromium.org>
1736
1737         Reviewed by Darin Fisher.
1738
1739         Ensure that a cache policy that forces validation is cleared once
1740         the load event is fired, rather than only doing so at the next
1741         navigation. This leads to a lot of unnecessary load on AJAX-y
1742         websites.
1743
1744         https://bugs.webkit.org/show_bug.cgi?id=41813
1745
1746         Test: http/tests/xmlhttprequest/cache-headers-after-reload.html
1747
1748         * loader/FrameLoader.cpp:
1749         (WebCore::FrameLoader::handledOnloadEvents): Reset m_loadType to FrameLoadTypeStandard.
1750         (WebCore::FrameLoader::addExtraFieldsToRequest): Only respect the original request's cache policy if the
1751             DocumentLoader is still loading, and handle the other cache policy settings that were scattered around the loader.
1752         (WebCore::FrameLoader::loadResourceSynchronously): Merge cachePolicy setting into FrameLoader::addExtraFieldsToRequest.
1753         * loader/SubresourceLoader.cpp:
1754         (WebCore::SubresourceLoader::create): Merge cachePolicy setting into FrameLoader::addExtraFieldsToRequest.
1755
1756 2010-07-12  Andreas Kling  <andreas.kling@nokia.com>
1757
1758         Reviewed by Oliver Hunt.
1759
1760         CSS color parsing optimizations
1761         https://bugs.webkit.org/show_bug.cgi?id=42073
1762
1763         - Avoid instantiating a CSSParser in parseColor() unless necessary.
1764         - Fixed hex color fast-path to support strings starting with '#'.
1765         - Avoid allocating a new string for the value part of a '#' color.
1766
1767         * css/CSSParser.cpp:
1768         (WebCore::CSSParser::parseColor):
1769         * platform/graphics/Color.cpp:
1770         (WebCore::Color::parseHexColor):
1771         (WebCore::Color::Color):
1772         * platform/graphics/Color.h:
1773
1774 2010-07-09  Alexey Proskuryakov  <ap@apple.com>
1775
1776         Reviewed by Darin Adler.
1777
1778         https://bugs.webkit.org/show_bug.cgi?id=13075
1779         XMLHttpRequest with failed authentication should set status to 401
1780
1781         https://bugs.webkit.org/show_bug.cgi?id=6871
1782         <rdar://problem/3363403> 401 error page is never shown
1783
1784         * platform/network/mac/ResourceHandleMac.mm: (WebCore::ResourceHandle::receivedCredential):
1785         Added a comment explaining why we handle empty credentials differently here.
1786
1787         * platform/network/cf/ResourceHandleCFNet.cpp: (WebCore::ResourceHandle::receivedCredential):
1788         Bring this code in sync with Mac.
1789
1790 2010-07-12  Anders Carlsson  <andersca@apple.com>
1791
1792         Reviewed by Adam Roben.
1793
1794         Add a PluginController class, use it for invalidation and getting the user agent
1795         https://bugs.webkit.org/show_bug.cgi?id=42084
1796
1797         * WebCore.exp.in:
1798         Export Widget::convertToContainingWindow.
1799
1800 2010-07-12  Andreas Kling  <andreas.kling@nokia.com>
1801
1802         Reviewed by Simon Hausmann.
1803
1804         [Qt] Dragging within webkit with a drag created via Javascript ends up misinterpreting the data
1805         https://bugs.webkit.org/show_bug.cgi?id=41457
1806
1807         Treat non-special-cased mime-types as Unicode strings in ClipboardQt's getData()
1808         Fixes corruption when retrieving data that was set with anything other than text/plain
1809
1810         Also use QMimeData::setHtml() when applicable to be consistent with PasteboardQt.
1811
1812         * platform/qt/ClipboardQt.cpp:
1813         (WebCore::isHtmlMimeType):
1814         (WebCore::ClipboardQt::getData):
1815         (WebCore::ClipboardQt::setData):
1816
1817 2010-07-12  Steve Block  <steveblock@google.com>
1818
1819         Reviewed by Jeremy Orlow.
1820
1821         add ANDROID to STORE_FONT_CUSTOM_PLATFORM_DATA
1822         https://bugs.webkit.org/show_bug.cgi?id=32273
1823
1824         Tested by existing tests, just adding ANDROID to the list of platforms that use this feature.
1825
1826         * loader/CachedFont.cpp:
1827
1828 2010-07-12  Lucas De Marchi  <lucas.demarchi@profusion.mobi>
1829
1830         Unreviewed.
1831
1832         [EFL] Move ScriptConcotrollerEfl.cpp from CMakeLists.txt to
1833         CMakeListsEfl.txt.
1834
1835         * CMakeLists.txt:
1836         * CMakeListsEfl.txt:
1837
1838 2010-07-12  Lucas De Marchi  <lucas.demarchi@profusion.mobi>
1839
1840         Unreviewed build fix after r60050.
1841
1842         * CMakeLists.txt: Add WebCore/bindings to the include path.
1843
1844 2010-07-09  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
1845
1846         Reviewed by Xan Lopez.
1847
1848         [GTK] Crashes when going back with page cache in unknown circunstances
1849         https://bugs.webkit.org/show_bug.cgi?id=41710
1850
1851         Could not yet find a way to reproduce this in a layout test. The
1852         issue is document being NULL, so this NULL-check should be enough
1853         to get rid of the crash. We are working on trying to find a better
1854         solution for these null cases, like attaching the document earlier
1855         when openning a cached page.
1856
1857         * page/EventHandler.cpp:
1858         (WebCore::EventHandler::sendScrollEvent):
1859
1860 2010-07-12  Alexander Pavlov  <apavlov@chromium.org>
1861
1862         Reviewed by Yury Semikhatsky.
1863
1864         [Chromium] Crash when stepping on a breakpoint while debugging Web Inspector
1865         https://bugs.webkit.org/show_bug.cgi?id=41958
1866
1867         * page/PageGroupLoadDeferrer.cpp:
1868         (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
1869         * page/PageGroupLoadDeferrer.h:
1870
1871 2010-07-12  François Sausset  <sausset@gmail.com>
1872
1873         Reviewed by Kenneth Rohde Christiansen.
1874
1875         Make the mathsize MathML attribute handle values in em, px, pt,...
1876         https://bugs.webkit.org/show_bug.cgi?id=42067
1877
1878         Test: mathml/presentation/attributes.xhtml
1879
1880         * css/mathml.css:
1881         (math[mathsize="small"], mstyle[mathsize="small"], mo[mathsize="small"], mn[mathsize="small"], mi[mathsize="small"], mtext[mathsize="small"], mspace[mathsize="small"], ms[mathsize="small"]):
1882         (math[mathsize="normal"], mstyle[mathsize="normal"], mo[mathsize="normal"], mn[mathsize="normal"], mi[mathsize="normal"], mtext[mathsize="normal"], mspace[mathsize="normal"], ms[mathsize="normal"]):
1883         (math[mathsize="big"], mstyle[mathsize="big"], mo[mathsize="big"], mn[mathsize="big"], mi[mathsize="big"], mtext[mathsize="big"], mspace[mathsize="big"], ms[mathsize="big"]):
1884         * mathml/MathMLElement.cpp:
1885         (WebCore::MathMLElement::parseMappedAttribute):
1886
1887 2010-07-12  Xan Lopez  <xlopez@igalia.com>
1888
1889         Reviewed by Gustavo Noronha.
1890
1891         Fix compilation with sealed GTK+.
1892
1893         * platform/gtk/GtkVersioning.h:
1894         * platform/gtk/PasteboardHelper.cpp:
1895         (WebCore::PasteboardHelper::fillDataObjectFromDropData):
1896
1897 2010-07-12  François Sausset  <sausset@gmail.com>
1898
1899         Reviewed by Kenneth Rohde Christiansen.
1900
1901         Fix a bug preventing msqrt and mfrac to use style color to draw themselves.
1902         In mfrac, the fraction bar is now using the color defined by the element style instead of black.
1903         In msqrt, the radical was always drawn in black due to a colorSpace problem.
1904         https://bugs.webkit.org/show_bug.cgi?id=41889
1905
1906         Test: mathml/presentation/roots.xhtml
1907         Test: mathml/presentation/fractions.xhtml
1908
1909         * mathml/RenderMathMLFraction.cpp:
1910         (WebCore::RenderMathMLFraction::paint):
1911         * mathml/RenderMathMLSquareRoot.cpp:
1912         (WebCore::RenderMathMLSquareRoot::paint):
1913
1914 2010-07-12  Andreas Kling  <andreas.kling@nokia.com>
1915
1916         Reviewed by Antti Koivisto.
1917
1918         Canvas: arc() with startAngle == endAngle shouldn't add to the path
1919         https://bugs.webkit.org/show_bug.cgi?id=41420
1920
1921         Spec link:
1922         http://www.whatwg.org/specs/web-apps/current-work/#dom-context-2d-stroke
1923
1924         * html/canvas/CanvasRenderingContext2D.cpp:
1925         (WebCore::CanvasRenderingContext2D::arc):
1926
1927 2010-07-12  Shinichiro Hamaji  <hamaji@chromium.org>
1928
1929         Reviewed by Ojan Vafai.
1930
1931         Update padding on Windows?
1932         https://bugs.webkit.org/show_bug.cgi?id=38016
1933
1934         Remove internal padding and add 1px vertical padding for Windows.
1935
1936         * css/themeWin.css:
1937         (input[type="button"], input[type="submit"], input[type="reset"], input[type="file"]::-webkit-file-upload-button, button):
1938         * rendering/RenderButton.cpp:
1939         (WebCore::RenderButton::setupInnerStyle):
1940         * rendering/RenderTheme.h:
1941         * rendering/RenderThemeWin.cpp:
1942         * rendering/RenderThemeWin.h:
1943         * rendering/RenderThemeWince.cpp:
1944         * rendering/RenderThemeWince.h:
1945
1946 2010-07-12  Pavel Feldman  <pfeldman@chromium.org>
1947
1948         Not reviewed. Chromium tests fix.
1949
1950         [Chromium, V8] r63057 regressed url tests.
1951
1952         https://bugs.webkit.org/show_bug.cgi?id=42063
1953
1954         * bindings/scripts/CodeGeneratorV8.pm:
1955
1956 2010-07-12  Steve Block  <steveblock@google.com>
1957
1958         Reviewed by Alexey Proskuryakov.
1959
1960         XPath substring function does not correctly handle non-positive values for the position argument
1961         https://bugs.webkit.org/show_bug.cgi?id=41913
1962
1963         This patch changes the behavior of the XPath evaluate function when a non-positive
1964         position argument is supplied and no length argument is supplied. In this case,
1965         we reset the position to 1. This follows the spec and matches the current behaviour
1966         when a length argument is supplied.
1967
1968         Test: fast/xpath/substring-non-positive-postion.html
1969
1970         * xml/XPathFunctions.cpp:
1971         (WebCore::XPath::FunSubstring::evaluate):
1972
1973 2010-06-27  Jeremy Orlow  <jorlow@chromium.org>
1974
1975         Reviewed by Dumitru Daniliuc.
1976
1977         Implement IDBObjectStore.get/set/remove
1978         https://bugs.webkit.org/show_bug.cgi?id=41250
1979
1980         Implement these functions in IDBObjectStore,
1981         add plumbing, teach IDBAny/Callbacks how to deal
1982         with IDBKey, and a few small bits of cleanup.
1983
1984         Test: Modified existing test to provide basic coverage.
1985               Will add much more extensive layout test coverage
1986               in future patches.
1987
1988         * Android.derived.jscbindings.mk:
1989         * Android.derived.v8bindings.mk:
1990         * Android.jscbindings.mk:
1991         * Android.mk:
1992         * Android.v8bindings.mk:
1993         * CMakeLists.txt:
1994         * WebCore.gypi:
1995         * WebCore.pri:
1996         * WebCore.pro:
1997         * WebCore.vcproj/WebCore.vcproj:
1998         * WebCore.xcodeproj/project.pbxproj:
1999         * bindings/js/JSIDBAnyCustom.cpp:
2000         (WebCore::toJS):
2001         * bindings/v8/custom/V8IDBAnyCustom.cpp:
2002         (WebCore::toV8):
2003         * storage/IDBAny.cpp:
2004         (WebCore::IDBAny::idbKey):
2005         (WebCore::IDBAny::set):
2006         * storage/IDBAny.h:
2007         (WebCore::IDBAny::):
2008         * storage/IDBAny.idl:
2009         * storage/IDBCallbacks.h:
2010         * storage/IDBDatabaseRequest.h:
2011         * storage/IDBDatabaseRequest.idl:
2012         * storage/IDBKeyRange.h:
2013         * storage/IDBObjectStore.h:
2014         (WebCore::IDBObjectStore::):
2015         * storage/IDBObjectStoreImpl.cpp:
2016         (WebCore::IDBObjectStoreImpl::IDBObjectStoreImpl):
2017         (WebCore::IDBObjectStoreImpl::get):
2018         (WebCore::IDBObjectStoreImpl::set):
2019         (WebCore::IDBObjectStoreImpl::remove):
2020         * storage/IDBObjectStoreImpl.h:
2021         * storage/IDBObjectStoreRequest.cpp:
2022         (WebCore::IDBObjectStoreRequest::get):
2023         (WebCore::IDBObjectStoreRequest::add):
2024         (WebCore::IDBObjectStoreRequest::modify):
2025         (WebCore::IDBObjectStoreRequest::addOrModify):
2026         (WebCore::IDBObjectStoreRequest::remove):
2027         * storage/IDBObjectStoreRequest.h:
2028         * storage/IDBObjectStoreRequest.idl:
2029         * storage/IDBRequest.cpp:
2030         (WebCore::IDBRequest::onSuccess):
2031         * storage/IDBRequest.h:
2032
2033 2010-07-11  Maciej Stachowiak  <mjs@apple.com>
2034
2035         Reviewed by Dan Bernstein.
2036
2037         Implement animation-related methods for WebKitTestRunner
2038         https://bugs.webkit.org/show_bug.cgi?id=42053
2039
2040         * WebCore.exp.in: Export Document::getElementById for WebKit2's benefit.
2041
2042 2010-07-11  Adam Barth  <abarth@webkit.org>
2043
2044         Rubber-stamped by Eric Seidel
2045
2046         Add a complete list of the HTML5 entities in JSON format.
2047
2048         * html/HTMLEntityNames.json: Added.
2049
2050 2010-07-11  Martin Robinson  <mrobinson@igalia.com>
2051
2052         Reviewed by Xan Lopez.
2053
2054         [GTK] WebKitWebView should support drops
2055         https://bugs.webkit.org/show_bug.cgi?id=39843
2056
2057         Add support for dropping content onto GTK+ WebViews.
2058
2059         No new tests, as the DRT does not support simulating drops yet.
2060
2061         * platform/gtk/ClipboardUtilitiesGtk.cpp:
2062         (WebCore::dragOperationToGdkDragAction): Added.
2063         (WebCore::gdkDragActionToDragOperation): Properly detect DragOperationEvery.
2064         * platform/gtk/ClipboardUtilitiesGtk.h: Add declaration for dragOperationToGdkDragAction.
2065         * platform/gtk/PasteboardHelper.cpp:
2066         Add new target atom and rename the markup target type to match the others.
2067         Add a method which fills a data object from drop data.
2068         (WebCore::PasteboardHelper::initializeTargetList): Add support for new atoms.
2069         (WebCore::selectionDataToUTF8String): Added this helper.
2070         (WebCore::PasteboardHelper::getClipboardContents): Use the selectionDataToUTF8String helper.
2071         (WebCore::PasteboardHelper::targetListForDataObject): Change to reflect markup atom rename.
2072         (WebCore::PasteboardHelper::fillDataObjectFromDropData): Added.
2073         (WebCore::PasteboardHelper::dropAtoms): Added.
2074         * platform/gtk/PasteboardHelper.h: Add declarations of new methods.
2075
2076 2010-07-10  Darin Adler  <darin@apple.com>
2077
2078         Reviewed by Anders Carlsson.
2079
2080         Enhance content attribute reflection for URL attributes, including adding a non-empty option
2081         https://bugs.webkit.org/show_bug.cgi?id=42040
2082
2083         Test: fast/dom/URL-attribute-reflection.html
2084
2085         Changed syntax from [ReflectURL] to [Reflect,URL] and also added support for
2086         a new option, NonEmpty, which implements the non-empty URL concept from the
2087         HTML5 specification.
2088
2089         * bindings/scripts/CodeGenerator.pm: Changed code to expect the Reflect and URL
2090         extended attributes to come in separately. The URL one simply means "the string
2091         of this attribute is a URL", since we don't have a distinct type for URL. Also
2092         added a new NonEmpty extended attribute.
2093
2094         * bindings/scripts/CodeGeneratorJS.pm: Removed now-unneeded code to handle ReflectURL.
2095         * bindings/scripts/CodeGeneratorV8.pm: Ditto.
2096
2097         * bindings/scripts/test/CPP/WebDOMTestObj.cpp: Updated for new added test cases
2098         and the fix I made to the reflectedCustomURLAttr test.
2099         * bindings/scripts/test/CPP/WebDOMTestObj.h: Ditto.
2100         * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp: Ditto.
2101         * bindings/scripts/test/GObject/WebKitDOMTestObj.h: Ditto.
2102         * bindings/scripts/test/JS/JSTestObj.cpp: Ditto.
2103         * bindings/scripts/test/JS/JSTestObj.h: Ditto.
2104         * bindings/scripts/test/ObjC/DOMTestObj.h: Ditto.
2105         * bindings/scripts/test/ObjC/DOMTestObj.mm: Ditto.
2106         * bindings/scripts/test/V8/V8TestObj.cpp: Ditto. Also, for some reason the V8
2107         bindig writes out the keywords into the generated file as comments, so the keyword
2108         change had a direct efffect on the output file.
2109
2110         * bindings/scripts/test/TestObj.idl: Changed the test cases for ReflectURL to use
2111         the new syntax. Added test cases for NonEmpty. Fixed the name of
2112         reflectedNonEmptyURLAttr, which accidentally was repeating reflectedURLAttr
2113         instead; never noticed because we never compile the test output.
2114
2115         * dom/Element.cpp:
2116         (WebCore::Element::getNonEmptyURLAttribute): Added. For use by NonEmpty and also
2117         by any code that wants to implement the non-empty URL content attribute semantic.
2118         * dom/Element.h: Ditto.
2119
2120         * html/HTMLAnchorElement.idl: Use Reflect,URL instead of ReflectURL.
2121         * html/HTMLAreaElement.idl: Ditto.
2122         * html/HTMLFrameElement.idl: Ditto.
2123         * html/HTMLImageElement.idl: Ditto.
2124         * html/HTMLInputElement.idl: Ditto.
2125         * html/HTMLLinkElement.idl: Ditto.
2126         * html/HTMLMediaElement.idl: Ditto.
2127         * html/HTMLObjectElement.idl: Ditto.
2128         * html/HTMLScriptElement.idl: Ditto.
2129         * html/HTMLVideoElement.idl: Ditto.
2130
2131 2010-07-10  Tony Gentilcore  <tonyg@chromium.org>
2132
2133         Reviewed by Darin Adler.
2134
2135         Add missing derrived sources to xcode project
2136         https://bugs.webkit.org/show_bug.cgi?id=42034
2137
2138         This allows --web-timing to work with build-webkit on OSX with JSC.
2139         This should have been done in bug 41442.
2140
2141         No new tests because no new functionality.
2142
2143         * WebCore.xcodeproj/project.pbxproj:
2144
2145 2010-07-10  Anders Carlsson  <andersca@apple.com>
2146
2147         Reviewed by Sam Weinig.
2148
2149         Don't initialize plug-ins until allowed by the page
2150         https://bugs.webkit.org/show_bug.cgi?id=42033
2151
2152         * WebCore.exp.in:
2153         Export Document::addMediaCanStartListener and Document::removeMediaCanStartListener.
2154
2155 2010-07-10  Sam Weinig  <sam@webkit.org>
2156
2157         Reviewed by Anders Carlsson.
2158
2159         Patch for https://bugs.webkit.org/show_bug.cgi?id=42021
2160         isEqualNode should work for DocumentType nodes
2161
2162         Test: fast/dom/Node/isEqualNode.html
2163
2164         * dom/Node.cpp:
2165         (WebCore::Node::isEqualNode): Add DocumentType logic from the DOM3 spec.
2166
2167 2010-07-10  Daniel Bates  <dbates@rim.com>
2168
2169         Reviewed by Adam Barth.
2170
2171         Move enum ReasonForCallingCanExecuteScripts to header ScriptControllerBase.h
2172         https://bugs.webkit.org/show_bug.cgi?id=39339
2173
2174         Moved the enum ReasonForCallingCanExecuteScripts, which was
2175         defined in both the JSC and V8 ScriptController.h file, into
2176         a shared file called ScriptControllerBase.h.
2177
2178         No functionality was changed, so no new tests.
2179
2180         * GNUmakefile.am: Added file bindings/ScriptControllerBase.h.
2181         * WebCore.gypi: Ditto.
2182         * WebCore.pro: Ditto.
2183         * WebCore.vcproj/WebCore.vcproj: Ditto.
2184         * WebCore.vcproj/WebCoreCommon.vsprops: Ditto.
2185         * WebCore.xcodeproj/project.pbxproj: Ditto.
2186         * bindings/ScriptControllerBase.h: Added.
2187         (WebCore::):
2188         * bindings/js/ScriptController.h: #include ScriptControllerBase.h
2189         * bindings/v8/ScriptController.h: Ditto.
2190
2191 2010-07-10  Dan Bernstein  <mitz@apple.com>
2192
2193         Reviewed by Anders Carlsson.
2194
2195         <rdar://problem/8153214> Continuation outlines in layers do not paint correctly
2196
2197         Test: fast/inline/continuation-outlines-with-layers-2.html
2198
2199         Continuation outlines are normally painted by the containing block. However, when the
2200         block and the inline are not enclosed by the same self-painting layer, the inline has to
2201         paint its own outlines. This was handled correctly only for the case where the inline had
2202         its own self-painting layer, but now when an ancestor inline had the self-painting layer.
2203
2204         * rendering/InlineFlowBox.cpp:
2205         (WebCore::InlineFlowBox::paint): Instead of testing for having a self-painting layer, test
2206         whether any intermediate box between the inline and the containing block has a self-painting
2207         layer.
2208         * rendering/RenderBlock.cpp:
2209         (WebCore::RenderBlock::paintObject): Ditto.
2210         * rendering/RenderObject.cpp:
2211         (WebCore::RenderObject::enclosingBoxModelObject): Added this utility method.
2212         * rendering/RenderObject.h:
2213
2214 2010-07-10  François Sausset  <sausset@gmail.com>
2215
2216         Reviewed by Kenneth Rohde Christiansen.
2217
2218         Build fix: syntax and typo issues
2219         https://bugs.webkit.org/show_bug.cgi?id=41859
2220
2221         * html/HTMLTreeBuilder.cpp:
2222         (WebCore::HTMLTreeBuilder::processStartTagForInBody):
2223         (WebCore::HTMLTreeBuilder::processStartTag):
2224
2225 2010-07-10  Eric Seidel  <eric@webkit.org>
2226
2227         Reviewed by Adam Barth.
2228
2229         HTMLTreeBuilder needs adjustForeignAttributes support
2230         https://bugs.webkit.org/show_bug.cgi?id=42022
2231
2232         To add adjust foreign attributes support I had to add an
2233         AtomicString (prefixed name) to QualifiedName hash.  Once I had
2234         done that, I decided it would be best for the other "adjust" functions
2235         to share the same hash logic, so I moved them to using the same
2236         AtomicString -> QualifiedName hash as well.
2237
2238         Tested by html5lib/runner.html
2239
2240         * dom/Attribute.h:
2241         (WebCore::Attribute::parserSetName):
2242         * html/HTMLTreeBuilder.cpp:
2243
2244 2010-07-10  Rob Buis  <rwlbuis@gmail.com>
2245
2246         Reviewed by Darin Adler.
2247
2248         https://bugs.webkit.org/show_bug.cgi?id=41978
2249         Remove namespace prefixes from idl files
2250
2251         No new tests, idl syntax fixes.
2252
2253         * css/CSSImportRule.idl:
2254         * css/CSSMediaRule.idl:
2255         * css/CSSStyleSheet.idl:
2256         * css/CSSVariablesRule.idl:
2257         * svg/SVGAnimatedString.idl:
2258         * svg/SVGColor.idl:
2259         * svg/SVGDocument.idl:
2260         * svg/SVGLangSpace.idl:
2261         * svg/SVGSVGElement.idl:
2262         * svg/SVGStringList.idl:
2263         * svg/SVGStylable.idl:
2264         * svg/SVGStyleElement.idl:
2265         * svg/SVGTests.idl:
2266         * svg/SVGZoomEvent.idl:
2267         * xml/XPathEvaluator.idl:
2268
2269 2010-07-10  Dumitru Daniliuc  <dumi@chromium.org>
2270
2271         Unreviewed, GTK build fix.
2272
2273         * bindings/gobject/GObjectEventListener.h:
2274
2275 2010-07-10  Dumitru Daniliuc  <dumi@chromium.org>
2276
2277         Reviewed by Darin Adler.
2278
2279         Remove unnecessary includes in header files in WebCore/dom.
2280         https://bugs.webkit.org/show_bug.cgi?id=41941
2281
2282         * css/StyleMedia.h:
2283         * dom/BeforeLoadEvent.h:
2284         * dom/CustomEvent.h:
2285         * dom/DOMStringMap.h:
2286         * dom/DeviceOrientationEvent.h:
2287         * dom/EventListener.h:
2288         * dom/MessagePort.h:
2289         * dom/Node.cpp:
2290         * dom/NodeFilter.h:
2291         * dom/NodeRareData.h:
2292         * dom/RegisteredEventListener.h:
2293         * dom/SelectorNodeList.cpp:
2294         * dom/SelectorNodeList.h:
2295         * dom/StyleElement.h:
2296         * dom/Traversal.h:
2297
2298 2010-07-09  Tony Chang  <tony@chromium.org>
2299
2300         Reviewed by Ojan Vafai.
2301
2302         crash in WebCore::CompositeEditCommand::splitTreeToNode when indenting pre
2303         https://bugs.webkit.org/show_bug.cgi?id=38231
2304
2305         Test: editing/execCommand/indent-pre.html
2306
2307         * editing/IndentOutdentCommand.cpp:
2308         (WebCore::countParagraphs):
2309         (WebCore::IndentOutdentCommand::indentRegion): Split text nodes into one node per paragraph
2310                                                        so moveParagraph doesn't get confused.
2311         (WebCore::IndentOutdentCommand::splitTextNodes):
2312         * editing/IndentOutdentCommand.h:
2313
2314 2010-07-09  Erik Arvidsson  <arv@chromium.org>
2315
2316         Reviewed by Darin Adler.
2317
2318         Computed style is not implemented for padding-start, padding-end, margin-start, margin-end
2319         https://bugs.webkit.org/show_bug.cgi?id=41496
2320
2321         * css/CSSComputedStyleDeclaration.cpp:
2322         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
2323         * css/CSSProperty.cpp:
2324         (WebCore::CSSProperty::resolveDirectionAwareProperty): This function resolves the property ID for a direction aware property.
2325         * css/CSSProperty.h:
2326         * css/CSSStyleSelector.cpp: Use helper function.
2327         (WebCore::CSSStyleSelector::applyProperty):
2328
2329 2010-07-09  Adam Barth  <abarth@webkit.org>
2330
2331         Reviewed by Eric Seidel.
2332
2333         HTML5 tree builder should pass some LayoutTests
2334         https://bugs.webkit.org/show_bug.cgi?id=41991
2335
2336         Before this patch, we weren't attaching text nodes to the render tree,
2337         which turns out to be important.  :)
2338
2339         This patch fixes more than 10,000 LayoutTests.
2340
2341         * html/HTMLConstructionSite.cpp:
2342         (WebCore::HTMLConstructionSite::attach):
2343         (WebCore::HTMLConstructionSite::attachAtSite):
2344
2345 2010-07-09  Patrick Gansterer  <paroga@paroga.com>
2346
2347         Reviewed by Darin Adler.
2348
2349         [WINCE] Buildfix for TextEncodingRegistry
2350         https://bugs.webkit.org/show_bug.cgi?id=41992
2351
2352         Renamed TextCodecWince to TextCodecWinCE.
2353
2354         * platform/text/TextEncodingRegistry.cpp:
2355         (WebCore::buildBaseTextCodecMaps):
2356         (WebCore::extendTextCodecMaps):
2357
2358 2010-07-09  Leon Clarke  <leonclarke@google.com>
2359
2360         Reviewed by Adam Barth.
2361
2362         add support for link prefetching
2363         https://bugs.webkit.org/show_bug.cgi?id=3652
2364
2365         Test: fast/dom/HTMLLinkElement/prefetch.html
2366
2367         * Configurations/FeatureDefines.xcconfig:
2368         * html/HTMLLinkElement.cpp:
2369         (WebCore::HTMLLinkElement::tokenizeRelAttribute):
2370         (WebCore::HTMLLinkElement::process):
2371         * html/HTMLLinkElement.h:
2372         (WebCore::HTMLLinkElement::RelAttribute::RelAttribute):
2373         * loader/Cache.cpp:
2374         (WebCore::createResource):
2375         * loader/CachedResource.cpp:
2376         (WebCore::CachedResource::data):
2377         (WebCore::CachedResource::didAddClient):
2378         * loader/CachedResource.h:
2379         (WebCore::CachedResource::):
2380         (WebCore::CachedResource::error):
2381         (WebCore::CachedResource::isPrefetch):
2382         (WebCore::CachedResource::schedule):
2383         * loader/CachedScript.cpp:
2384         * loader/CachedScript.h:
2385         * loader/DocLoader.cpp:
2386         (WebCore::DocLoader::requestLinkPrefetch):
2387         (WebCore::DocLoader::canRequest):
2388         (WebCore::DocLoader::incrementRequestCount):
2389         (WebCore::DocLoader::decrementRequestCount):
2390         * loader/DocLoader.h:
2391         * loader/loader.cpp:
2392         (WebCore::cachedResourceTypeToTargetType):
2393         (WebCore::Loader::determinePriority):
2394         (WebCore::Loader::load):
2395         (WebCore::Loader::Host::servePendingRequests):
2396         (WebCore::Loader::Host::didFinishLoading):
2397         (WebCore::Loader::Host::didFail):
2398         (WebCore::Loader::Host::didReceiveResponse):
2399         (WebCore::Loader::Host::cancelPendingRequests):
2400         * loader/loader.h:
2401         (WebCore::Loader::):
2402         * platform/network/ResourceRequestBase.h:
2403         (WebCore::ResourceRequestBase::):
2404
2405 2010-07-09  James Robinson  <jamesr@chromium.org>
2406
2407         Unreviewed build fix.  Add #include to pick up ExceptionCode values for config (like Qt) where it's not picked up indirectly.
2408
2409         * html/HTMLCanvasElement.cpp:
2410
2411 2010-07-09  James Robinson  <jamesr@chromium.org>
2412
2413         Reviewed by Darin Adler.
2414
2415         Removes CanvasSurface and moves all of its functionality to HTMLCanvasElement.
2416         https://bugs.webkit.org/show_bug.cgi?id=42005
2417
2418         http://trac.webkit.org/changeset/55201 introduced a new base class for HTMLCanvasElement called CanvasSurface.
2419         The intention was that this would allow for code sharing with the then-proposed OffscreenCanvas.  However,
2420         there is no OffscreenCanvas and there's unlikely to be one soon.  Additionally CanvasSurface breaks
2421         encapsulation pretty badly by doing "static_cast<HTMLCanvasElement* const>(this)".  Until an abstraction is
2422         really needed we should just use HTMLCanvasElement when we want to talk about a canvas.
2423
2424         This patch moves all of CanvasSurface's functionality back up to HTMLCanvasElement and reorders the header
2425         to be a bit more logical.
2426
2427         Refactor with no behavior change, thus no new tests.
2428
2429         * CMakeLists.txt:
2430         * GNUmakefile.am:
2431         * WebCore.gypi:
2432         * WebCore.pro:
2433         * WebCore.vcproj/WebCore.vcproj:
2434         * WebCore.xcodeproj/project.pbxproj:
2435         * dom/CanvasSurface.cpp: Removed.
2436         * dom/CanvasSurface.h: Removed.
2437         * html/HTMLCanvasElement.cpp:
2438         (WebCore::HTMLCanvasElement::HTMLCanvasElement):
2439         (WebCore::HTMLCanvasElement::willDraw):
2440         (WebCore::HTMLCanvasElement::setSurfaceSize):
2441         (WebCore::HTMLCanvasElement::toDataURL):
2442         (WebCore::HTMLCanvasElement::convertLogicalToDevice):
2443         (WebCore::HTMLCanvasElement::securityOrigin):
2444         (WebCore::HTMLCanvasElement::styleSelector):
2445         (WebCore::HTMLCanvasElement::createImageBuffer):
2446         (WebCore::HTMLCanvasElement::drawingContext):
2447         (WebCore::HTMLCanvasElement::buffer):
2448         (WebCore::HTMLCanvasElement::baseTransform):
2449         * html/HTMLCanvasElement.h:
2450         (WebCore::HTMLCanvasElement::setObserver):
2451         (WebCore::HTMLCanvasElement::width):
2452         (WebCore::HTMLCanvasElement::height):
2453         (WebCore::HTMLCanvasElement::size):
2454         (WebCore::HTMLCanvasElement::toDataURL):
2455         (WebCore::HTMLCanvasElement::setOriginTainted):
2456         (WebCore::HTMLCanvasElement::originClean):
2457         (WebCore::HTMLCanvasElement::hasCreatedImageBuffer):
2458
2459 2010-07-09  Simon Fraser  <simon.fraser@apple.com>
2460
2461         Reviewed by Darin Adler.
2462
2463         Calling layoutTestController.layerTreeAsText() should update layout
2464         https://bugs.webkit.org/show_bug.cgi?id=41818
2465         
2466         Need to call updateLayout() before we check for any layers, not after,
2467         since layout will update compositing, and may create layers.
2468
2469         * page/Frame.cpp:
2470         (WebCore::Frame::layerTreeAsText):
2471
2472 2010-07-09  Kenneth Russell  <kbr@google.com>
2473
2474         Reviewed by Nate Chapin.
2475
2476         bufferSubData causes crash in WebGLBuffer::associateBufferSubData
2477         https://bugs.webkit.org/show_bug.cgi?id=42004
2478
2479         Test: fast/canvas/webgl/index-validation-crash-with-buffer-sub-data.html
2480
2481         * html/canvas/WebGLBuffer.cpp:
2482         (WebCore::WebGLBuffer::associateBufferData):
2483          - Allocate m_elementArrayBuffer for entry point taking only size.
2484            Guard against allocation failures of m_elementArrayBuffer.
2485         (WebCore::WebGLBuffer::associateBufferSubData):
2486          - Guard against any possibility of crashes due to m_elementArrayBuffer being NULL.
2487
2488 2010-07-09  Dumitru Daniliuc  <dumi@chromium.org>
2489
2490         Unreviewed, but pre-approved by Eric Seidel.
2491
2492         Remove unnecessary includes in header files in WebCore/css.
2493         https://bugs.webkit.org/show_bug.cgi?id=41941
2494
2495         * css/CSSComputedStyleDeclaration.h:
2496         * css/CSSFontFaceSource.cpp:
2497         (WebCore::CSSFontFaceSource::getFontData):
2498         * css/CSSFontFaceSource.h:
2499         * css/CSSPrimitiveValueMappings.h:
2500         * css/StyleMedia.h:
2501
2502 2010-07-09  Eric Seidel  <eric@webkit.org>
2503
2504         Reviewed by Adam Barth.
2505
2506         Get rid of manual case maps in HTMLTreeBuilder
2507         https://bugs.webkit.org/show_bug.cgi?id=42000
2508
2509         No functional change, thus no tests.
2510
2511         * html/HTMLTreeBuilder.cpp:
2512
2513 2010-07-09  Tony Gentilcore  <tonyg@chromium.org>
2514
2515         Reviewed by Dimitri Glazkov.
2516
2517         Implement performance.timing.navigationStart
2518         https://bugs.webkit.org/show_bug.cgi?id=41815
2519
2520         See: http://dev.w3.org/2006/webapi/WebTiming/#nt-navigation-start
2521
2522         * loader/FrameLoader.cpp:
2523         (WebCore::FrameLoader::loadWithDocumentLoader):
2524         * loader/FrameLoaderTypes.h:
2525         (WebCore::FrameLoadTimeline::FrameLoadTimeline):
2526         * page/Timing.cpp:
2527         (WebCore::Timing::navigationStart):
2528
2529 2010-07-09  Jesus Sanchez-Palencia  <jesus.palencia@openbossa.org>
2530
2531         Reviewed by Kenneth Rohde Christiansen.
2532
2533         [Qt] GraphicsLayerQt must have syncCompositingStateForThisLayerOnly() implemented
2534         https://bugs.webkit.org/show_bug.cgi?id=41954
2535
2536         Add GraphicsLayerQt::syncCompositingStateForThisLayerOnly, a non-recursive
2537         implementation of GraphicsLayerQt::syncCompositingState and which targets
2538         the current layer only.
2539
2540         * platform/graphics/qt/GraphicsLayerQt.cpp:
2541         (WebCore::GraphicsLayerQt::syncCompositingStateForThisLayerOnly):
2542         * platform/graphics/qt/GraphicsLayerQt.h:
2543
2544 2010-07-09  David Kozub  <zub@linux.fjfi.cvut.cz>
2545
2546         Reviewed by Darin Adler.
2547
2548         Fix build by adding missing html/TimeRanges.idl to CMakeLists.txt.
2549
2550         https://bugs.webkit.org/show_bug.cgi?id=41945
2551
2552         No functional changes, thus no tests.
2553
2554         * CMakeLists.txt:
2555
2556 2010-07-09  Eric Seidel  <eric@webkit.org>
2557
2558         Reviewed by Adam Barth.
2559
2560         Fix SVG tag name casing for HTMLTreeBuilder
2561         https://bugs.webkit.org/show_bug.cgi?id=41998
2562
2563         Tested by html5lib/runner.html
2564
2565         * html/HTMLTreeBuilder.cpp:
2566         (WebCore::):
2567
2568 2010-07-09  Eric Seidel  <eric@webkit.org>
2569
2570         Reviewed by Adam Barth.
2571
2572         Implement SVG attribute case mapping for HTMLTreeBuilder
2573         https://bugs.webkit.org/show_bug.cgi?id=41949
2574
2575         Tested by html5lib/runner.html.
2576
2577         * html/HTMLTreeBuilder.cpp:
2578
2579 2010-07-09  Andy Estes  <aestes@apple.com>
2580
2581         Reviewed by Adele Peterson.
2582
2583         Remove the workaround for a Core Animation bug on platforms where the
2584         bug has been fixed.
2585         https://bugs.webkit.org/show_bug.cgi?id=41927
2586         <rdar://problem/7920153>
2587
2588         * platform/graphics/mac/GraphicsLayerCA.mm:
2589         (WebCore::GraphicsLayerCA::createTransformAnimationsFromKeyframes): Add
2590         a compile-time check for platforms that have a Core Animation bug that
2591         needs working around.
2592
2593 2010-07-08  Tony Gentilcore  <tonyg@chromium.org>
2594
2595         Reviewed by Nate Chapin.
2596
2597         Implement unloadEventEnd, loadEventStart, and loadEventEnd for Web Timing
2598         https://bugs.webkit.org/show_bug.cgi?id=41332
2599
2600         Test: fast/dom/webtiming.html
2601
2602         * loader/FrameLoader.cpp:
2603         (WebCore::FrameLoader::stopLoading):
2604         (WebCore::FrameLoader::loadWithDocumentLoader):
2605         * loader/FrameLoader.h:
2606         (WebCore::FrameLoader::frameLoadTimeline):
2607         * loader/FrameLoaderTypes.h:
2608         (WebCore::FrameLoadTimeline::FrameLoadTimeline):
2609         * page/DOMWindow.cpp:
2610         (WebCore::DOMWindow::dispatchLoadEvent):
2611         * page/Timing.cpp:
2612         (WebCore::Timing::navigationStart):
2613         (WebCore::Timing::unloadEventEnd):
2614         (WebCore::Timing::loadEventStart):
2615         (WebCore::Timing::loadEventEnd):
2616         * page/Timing.h:
2617         * page/Timing.idl:
2618
2619 2010-07-09  Dumitru Daniliuc  <dumi@chromium.org>
2620
2621         Unreviewed, but pre-approved by Eric Seidel.
2622
2623         Remove all unnecessary includes from the header files in WebCore/accessibility/.
2624         https://bugs.webkit.org/show_bug.cgi?id=41941
2625
2626         * accessibility/AXObjectCache.h:
2627         * accessibility/AccessibilityListBox.cpp:
2628         * accessibility/AccessibilityListBox.h:
2629         * accessibility/AccessibilityMenuList.h:
2630         * accessibility/mac/AccessibilityObjectWrapper.h:
2631
2632 2010-07-09  Patrick Gansterer  <paroga@paroga.com>
2633
2634         Reviewed by Kent Tamura.
2635
2636         [WINCE] Buildfix for EventHandlerWin
2637         https://bugs.webkit.org/show_bug.cgi?id=41909
2638
2639         Use Clipboard.h instead of ClipboardWin.h on WinCE.
2640
2641         * page/win/EventHandlerWin.cpp:
2642
2643 2010-07-09  Sheriff Bot  <webkit.review.bot@gmail.com>
2644
2645         Unreviewed, rolling out r62946.
2646         http://trac.webkit.org/changeset/62946
2647         https://bugs.webkit.org/show_bug.cgi?id=41965
2648
2649         AppCache inspector support should be enabled in WebKit ToT.
2650         (Requested by pfeldman_ on #webkit).
2651
2652         * inspector/front-end/StoragePanel.js:
2653         (WebInspector.StoragePanel):
2654         (WebInspector.StoragePanel.prototype.reset):
2655         (WebInspector.StoragePanel.prototype.addApplicationCache):
2656
2657 2010-07-09  François Sausset  <sausset@gmail.com>
2658
2659         Reviewed by Kenneth Rohde Christiansen.
2660
2661         Implement MathML mathcolor & mathbackground attributes
2662         https://bugs.webkit.org/show_bug.cgi?id=41895
2663
2664         Test: mathml/presentation/attributes.xhtml
2665
2666         * dom/MappedAttributeEntry.h:
2667         (WebCore::):
2668         * mathml/MathMLElement.cpp:
2669         (WebCore::MathMLElement::MathMLElement):
2670         (WebCore::MathMLElement::mapToEntry):
2671         (WebCore::MathMLElement::parseMappedAttribute):
2672         * mathml/MathMLElement.h:
2673         * mathml/mathattrs.in:
2674
2675 2010-07-09  Xiaomei Ji  <xji@chromium.org>
2676
2677         Reviewed by David Levin.
2678
2679         Fix characters with unicode-bidi-mirror property are not correctly
2680         mirrored in Linux.
2681         https://bugs.webkit.org/show_bug.cgi?id=41305
2682
2683         Since harfbuzz does not do mirroring, chromium should iterate each
2684         character in the string and mirror it if needed before passing the
2685         string to harfbuzz for shaping.
2686
2687         Test: fast/text/international/bidi-mirror-he-ar.html
2688
2689         * platform/graphics/chromium/FontLinux.cpp:
2690         (WebCore::TextRunWalker::TextRunWalker):
2691         (WebCore::TextRunWalker::~TextRunWalker):
2692         (WebCore::TextRunWalker::mirrorCharacters):
2693
2694
2695 2010-07-09  Anders Carlsson  <andersca@apple.com>
2696
2697         Reviewed by Simon Fraser.
2698
2699         Instantiate Netscape plug-ins, pass geometry information to Plugin
2700         https://bugs.webkit.org/show_bug.cgi?id=41960
2701
2702         * WebCore.exp.in:
2703         Export ScrollView::contentsToWindow.
2704
2705 2010-07-09  Patrick Gansterer  <paroga@paroga.com>
2706
2707         Reviewed by Kent Tamura.
2708
2709         [WINCE] Buildfix for FrameWince after r47440
2710         https://bugs.webkit.org/show_bug.cgi?id=41904
2711
2712         * page/wince/FrameWince.cpp: Added property svn:eol-style.
2713         (WebCore::computePageRectsForFrame):
2714         (WebCore::imageFromSelection):
2715
2716 2010-07-09  Vitaly Repeshko  <vitalyr@chromium.org>
2717
2718         Reviewed by Pavel Feldman.
2719
2720         [v8] Call JS gc in a fresh context to avoid retaining the current one.
2721         https://bugs.webkit.org/show_bug.cgi?id=41963
2722         http://crbug.com/46571
2723
2724         * bindings/v8/ScriptController.cpp:
2725         (WebCore::ScriptController::collectGarbage):
2726
2727 2010-07-09  Kenneth Russell  <kbr@google.com>
2728
2729         Reviewed by Dimitri Glazkov.
2730
2731         Crash with uniform array test
2732         https://bugs.webkit.org/show_bug.cgi?id=36028
2733
2734         * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
2735         (WebCore::vertexAttribAndUniformHelperf):
2736         (WebCore::uniformHelperi):
2737         (WebCore::uniformMatrixHelper):
2738          - Fixed type tests and casting of incoming arrays.
2739         * html/canvas/WebGLRenderingContext.cpp:
2740         (WebCore::WebGLRenderingContext::getUniform):
2741          - Fixed crash when null WebGLUniform is passed to getUniform.
2742
2743 2010-07-09  Chris Fleizach  <cfleizach@apple.com>
2744
2745         Reviewed by Darin Adler.
2746
2747         AX:  text editing not spoken by VO on web view contenteditable textbox
2748         https://bugs.webkit.org/show_bug.cgi?id=41912
2749
2750         Test: platform/mac/accessibility/selection-value-changes-for-aria-textbox.html
2751
2752         * accessibility/AccessibilityRenderObject.cpp:
2753         (WebCore::AccessibilityRenderObject::renderObjectIsObservable):
2754
2755 2010-07-09  Michael Nordman  <michaeln@google.com>
2756
2757         Reviewed by Dumitru Daniliuc.
2758
2759         Use class ProgressEvent when raising appcache related progress events and
2760         set the 'total', 'loaded', and 'lengthComputable' attributes.
2761         Also raise the final progress event with the 'total' and 'loaded' attribute
2762         values are equal to one another to keep pace with the spec for this feature.
2763         https://bugs.webkit.org/show_bug.cgi?id=37602
2764
2765         Test: http/tests/appcache/progress-counter.html
2766
2767         * loader/appcache/ApplicationCacheGroup.cpp:
2768         (WebCore::ApplicationCacheGroup::ApplicationCacheGroup):
2769         (WebCore::ApplicationCacheGroup::didFinishLoadingManifest):
2770         (WebCore::ApplicationCacheGroup::checkIfLoadIsComplete):
2771         (WebCore::ApplicationCacheGroup::startLoadingEntry):
2772         (WebCore::CallCacheListenerTask::create):
2773         (WebCore::CallCacheListenerTask::performTask):
2774         (WebCore::CallCacheListenerTask::CallCacheListenerTask):
2775         (WebCore::ApplicationCacheGroup::postListenerTask):
2776         * loader/appcache/ApplicationCacheGroup.h:
2777         (WebCore::ApplicationCacheGroup::postListenerTask):
2778         * loader/appcache/ApplicationCacheHost.cpp:
2779         (WebCore::ApplicationCacheHost::notifyDOMApplicationCache):
2780         (WebCore::ApplicationCacheHost::stopDeferringEvents):
2781         (WebCore::ApplicationCacheHost::dispatchDOMEvent):
2782         * loader/appcache/ApplicationCacheHost.h:
2783         (WebCore::ApplicationCacheHost::DeferredEvent::DeferredEvent):
2784
2785 2010-07-09  Sebastian Dröge  <sebastian.droege@collabora.co.uk>
2786
2787         Reviewed by Gustavo Noronha Silva.
2788
2789         Bug 41340 - [GStreamer] Subtle race condition during seeks
2790         https://bugs.webkit.org/show_bug.cgi?id=41340
2791
2792         * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
2793         (webKitWebSrcStop):
2794         (webKitWebSrcNeedDataMainCb):
2795         (webKitWebSrcNeedDataCb):
2796         (webKitWebSrcEnoughDataMainCb):
2797         (webKitWebSrcEnoughDataCb):
2798         (webKitWebSrcSeekDataCb):
2799         (StreamingClient::didFinishLoading):
2800         Fix two subtle race conditions that can happen during seeks:
2801         - The timeout callback could be called before the callback ID is
2802           assigned to the instance private data. This causes the ID to
2803           be set after the callback has finished and breaks all future
2804           processing.
2805         - The source must not go EOS while a seek is pending because
2806           this confuses appsrc due to the different threads involved here.
2807
2808 2010-07-09  Simon Hausmann  <simon.hausmann@nokia.com>
2809
2810         Reviewed by Tor Arne Vestbø.
2811
2812         [Qt] Removed hard-coded enabled default of video support
2813
2814         Properly detect video/audio instead of defaulting to true.Properly detect video/audio instead of defaulting to true.Properly detect video/audio instead of defaulting to true.Properly detect video/audio instead of defaulting to true.
2815
2816         * WebCore.pri:
2817
2818 2010-07-09  Ben Murdoch  <benm@google.com>
2819
2820         Reviewed by Steve Block.
2821
2822         [Arm] Missing NaN check in XPath substring function
2823         https://bugs.webkit.org/show_bug.cgi?id=41862
2824
2825         Test: fast/xpath/substring-nan-position.html
2826
2827         * xml/XPathFunctions.cpp:
2828         (WebCore::XPath::FunSubstring::evaluate): Add an isnan()
2829             to the value returned from evaluating the position
2830             argument and early out and return the empty string.
2831
2832 2010-07-09  Simon Hausmann  <simon.hausmann@nokia.com>
2833
2834         Reviewed by Tor Arne Vestbø.
2835
2836         [Qt] Prospective build fix.
2837
2838         Moved the media element detection from WebCore.pro into WebCore.pri, where
2839         all the features are detected. This is also used by build-webkit to determine
2840         the defaults, which may be the reason for the build breakage.
2841
2842         * WebCore.pri:
2843         * WebCore.pro:
2844
2845 2010-07-09  Simon Hausmann  <simon.hausmann@nokia.com>
2846
2847         Reviewed by Tor Arne Vestbø.
2848
2849         [Qt] Re-enable support for QtMultimediaKit as backend for the media elements
2850
2851         Experimental support is re-enabled if QtMobility is available and the Qt
2852         version is 4.7 or above.
2853
2854         * WebCore.pro:
2855         * platform/graphics/MediaPlayer.cpp:
2856         * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
2857         (WebCore::MediaPlayerPrivate::supportsType): Adapt to latest QtMultimediaKit API changes.
2858         (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
2859         (WebCore::MediaPlayerPrivate::totalBytes):
2860
2861 2010-07-09  Pavel Feldman  <pfeldman@chromium.org>
2862
2863         Reviewed by Yury Semikhatsky.
2864
2865         Web Inspector: do not show default tooltip when detailed network info is available.
2866
2867         https://bugs.webkit.org/show_bug.cgi?id=41957
2868
2869         * English.lproj/localizedStrings.js:
2870         * inspector/front-end/ResourcesPanel.js:
2871         (WebInspector.ResourcesPanel):
2872         (WebInspector.ResourcesPanel.prototype.reset):
2873         (WebInspector.ResourcesPanel.prototype.showResource):
2874         (WebInspector.ResourcesPanel.prototype._getPopoverAnchor):
2875         (WebInspector.ResourcesPanel.prototype._showPopover):
2876         (WebInspector.ResourceTimeCalculator.prototype.computeBarGraphLabels):
2877
2878 2010-07-09  François Sausset  <sausset@gmail.com>
2879
2880         Reviewed by Beth Dakin.
2881
2882         Correct the default font variant of mtext (regular instead of italic).
2883         https://bugs.webkit.org/show_bug.cgi?id=41626
2884
2885         Add test to be sure that only <mi> elements use italic fonts by default.
2886         Update test with fractions to take into account the correct behaviour of mtext (regular instead of italic).
2887
2888         * css/mathml.css:
2889         (mi):
2890
2891 2010-07-09  Tony Gentilcore  <tonyg@chromium.org>
2892
2893         Reviewed by Dimitri Glazkov.
2894
2895         Implement performance.navigation.type
2896         https://bugs.webkit.org/show_bug.cgi?id=41564
2897
2898         Tests: fast/dom/navigation-type-back-forward.html
2899                fast/dom/navigation-type-navigate.html
2900                fast/dom/navigation-type-reload.html
2901
2902         * page/Navigation.cpp:
2903         (WebCore::Navigation::type):
2904         * page/Navigation.h:
2905         (WebCore::Navigation::):
2906         * page/Navigation.idl:
2907
2908 2010-07-09  Pavel Feldman  <pfeldman@chromium.org>
2909
2910         Reviewed by Yury Semikhatsky.
2911
2912         Web Inspector: hide AppCache until implemented.
2913
2914         https://bugs.webkit.org/show_bug.cgi?id=41858
2915
2916         * inspector/front-end/StoragePanel.js:
2917         (WebInspector.StoragePanel):
2918         (WebInspector.StoragePanel.prototype.reset):
2919         (WebInspector.StoragePanel.prototype.addApplicationCache):
2920
2921 2010-07-09  François Sausset  <sausset@gmail.com>
2922
2923         Reviewed by Kenneth Rohde Christiansen.
2924
2925         Set the good default behaviour for the columalign attribute on MathML mtable element
2926         https://bugs.webkit.org/show_bug.cgi?id=41631
2927
2928         Test update: mathml/tables.xhtml
2929
2930         * css/mathml.css:
2931         (math):
2932
2933 2010-07-09  Sheriff Bot  <webkit.review.bot@gmail.com>
2934
2935         Unreviewed, rolling out r62937.
2936         http://trac.webkit.org/changeset/62937
2937         https://bugs.webkit.org/show_bug.cgi?id=41955
2938
2939         Crashes SnowLeopard leaks and Windows debug bot in fast/xsl
2940         /xslt-relative-path.xml, with assertion in
2941         XSLTProcessorLibxslt.cpp:264 (Requested by WildFox on
2942         #webkit).
2943
2944         * xml/XSLTProcessor.h:
2945         (WebCore::XSLTProcessor::XSLTProcessor):
2946         * xml/XSLTProcessorLibxslt.cpp:
2947         (WebCore::docLoaderFunc):
2948         (WebCore::setXSLTLoadCallBack):
2949         (WebCore::xsltStylesheetPointer):
2950         (WebCore::XSLTProcessor::transformToString):
2951
2952 2010-07-09  Yael Aharon  <yael.aharon@nokia.com>
2953
2954         Reviewed by Laszlo Gombos.
2955
2956         NotificationPresenter needs a cancelRequestPermission API
2957         https://bugs.webkit.org/show_bug.cgi?id=41783
2958
2959         Updated NotificationPresenter API, to use ScriptExecutionContext instead of origin.
2960         Added new API NotificationPresenter::cancelRequestsForPermision
2961         The new API will be implemented and a test will be added in a followup patch.
2962
2963         * notifications/Notification.cpp:
2964         (WebCore::Notification::Notification):
2965         * notifications/NotificationCenter.cpp:
2966         (WebCore::NotificationCenter::checkPermission):
2967         (WebCore::NotificationCenter::requestPermission):
2968         (WebCore::NotificationCenter::disconnectFrame):
2969         * notifications/NotificationCenter.h:
2970         * notifications/NotificationPresenter.h:
2971
2972 2010-07-09  Andreas Wictor  <andreas.wictor@xcerion.com>
2973
2974         Reviewed by Alexey Proskuryakov.
2975
2976         Remove global variables from XSLTProcessorLibxslt.cpp
2977         https://bugs.webkit.org/show_bug.cgi?id=41348
2978
2979         Remove the globalProcessor and globalDocLoader global variables
2980         by using the _private field that exists on most libxml structs.
2981
2982         No new tests, existing tests covers this.
2983
2984         * xml/XSLTProcessor.h:
2985         (WebCore::XSLTProcessor::sourceNode):
2986         (WebCore::XSLTProcessor::XSLTProcessor):
2987         * xml/XSLTProcessorLibxslt.cpp:
2988         (WebCore::registeredXSLTProcessors):
2989         (WebCore::registeredXSLStyleSheets):
2990         (WebCore::docLoaderFunc):
2991         (WebCore::clearSavedStyleSheetPointers):
2992         (WebCore::xsltStylesheetPointer):
2993         (WebCore::XSLTProcessor::transformToString):
2994
2995 2010-07-09  Adam Barth  <abarth@webkit.org>
2996
2997         Unreviewed build fix.
2998
2999         We recently taught the HTMLTokenizer to recognize self-closing tags,
3000         <http://trac.webkit.org/changeset/62926>, but that confused the
3001         LegacyHTMLTreeBuilder.  It turns out that it's much happier if we never
3002         say a tag is self-closing.
3003
3004         * html/HTMLTreeBuilder.cpp:
3005         (WebCore::convertToOldStyle):
3006
3007 2010-07-09  Nikolas Zimmermann  <nzimmermann@rim.com>
3008
3009         Reviewed by Rob Buis.
3010
3011         svg/custom/use-instanceRoot-event-bubbling.xhtml test crashes
3012         https://bugs.webkit.org/show_bug.cgi?id=41931
3013
3014         Be careful to not mutate (marking it for recreation) the shadow tree, while building it.
3015         The recent change that cloneNode() properly synchronizes the style/SVG attributes caused this problem.
3016
3017         Fixes crash seen on the buildbots in svg/custom/use-instanceRoot-event-bubbling.xhtml.
3018
3019         * svg/SVGUseElement.cpp:
3020         (WebCore::SVGUseElement::SVGUseElement):
3021         (WebCore::SVGUseElement::recalcStyle):
3022         (WebCore::SVGUseElement::buildShadowAndInstanceTree):
3023         (WebCore::SVGUseElement::invalidateShadowTree):
3024         * svg/SVGUseElement.h:
3025         (WebCore::SVGUseElement::setUpdatesBlocked):
3026
3027 2010-07-09  Adam Barth  <abarth@webkit.org>
3028
3029         Reviewed by Eric Seidel.
3030
3031         Skip leading newlines in <textarea>
3032         https://bugs.webkit.org/show_bug.cgi?id=41947
3033
3034         We would have caught this earlier with the ASSERT.
3035
3036         * html/HTMLTokenizer.cpp:
3037         (WebCore::HTMLTokenizer::nextToken):
3038
3039 2010-07-08  Pavel Feldman  <pfeldman@chromium.org>
3040
3041         Reviewed by Yury Semikhatsky.
3042
3043         Web Inspector: Provide detailed network info in the resources panel.
3044
3045         https://bugs.webkit.org/show_bug.cgi?id=40227
3046
3047         * English.lproj/localizedStrings.js:
3048         * inspector/InspectorController.cpp:
3049         (WebCore::InspectorController::willSendRequest):
3050         (WebCore::InspectorController::didReceiveResponse):
3051         * inspector/InspectorController.h:
3052         * inspector/InspectorResource.cpp:
3053         (WebCore::InspectorResource::InspectorResource):
3054         (WebCore::InspectorResource::updateResponse):
3055         (WebCore::InspectorResource::updateScriptObject):
3056         (WebCore::InspectorResource::buildObjectForTiming):
3057         * inspector/InspectorResource.h:
3058         * inspector/front-end/ResourcesPanel.js:
3059         (WebInspector.ResourcesPanel):
3060         (WebInspector.ResourcesPanel.prototype.elementsToRestoreScrollPositionsFor):
3061         (WebInspector.ResourcesPanel.prototype._getPopoverAnchor):
3062         (WebInspector.ResourcesPanel.prototype._showPopover):
3063         (WebInspector.ResourcesPanel.prototype.hide):
3064         (WebInspector.ResourceTimeCalculator.prototype.computeBarGraphLabels):
3065         (WebInspector.ResourceGraph):
3066         * inspector/front-end/inspector.js:
3067         (WebInspector.updateResource):
3068         * platform/network/ResourceLoadTiming.h:
3069         (WebCore::ResourceLoadTiming::create):
3070         (WebCore::ResourceLoadTiming::deepCopy):
3071         (WebCore::ResourceLoadTiming::operator==):
3072         (WebCore::ResourceLoadTiming::ResourceLoadTiming):
3073         * platform/network/ResourceRequestBase.h:
3074         (WebCore::ResourceRequestBase::reportLoadTiming):
3075         (WebCore::ResourceRequestBase::setReportLoadTiming):
3076         (WebCore::ResourceRequestBase::ResourceRequestBase):
3077         * platform/network/ResourceResponseBase.cpp:
3078         (WebCore::ResourceResponseBase::connectionID):
3079         (WebCore::ResourceResponseBase::setConnectionID):
3080         * platform/network/ResourceResponseBase.h:
3081
3082 2010-07-09  Eric Seidel  <eric@webkit.org>
3083
3084         Reviewed by Adam Barth.
3085
3086         Implement self closing start tag state in the tokenizer
3087         https://bugs.webkit.org/show_bug.cgi?id=41946
3088
3089         Amazingly we got this far w/o needing self closing.
3090         The LegacyHTMLTreeBuilder clearly uses the self-closing
3091         state, but the fact that we never exposed it seems to
3092         not have caused any test failures.  Sad.
3093
3094         The new HTMLTreeBuilder only needs the self closing state
3095         for foreign content mode (and a few parse error cases).
3096
3097         * html/HTMLToken.h:
3098         (WebCore::HTMLToken::setSelfClosing):
3099         * html/HTMLTokenizer.cpp:
3100         (WebCore::HTMLTokenizer::nextToken):
3101         * html/HTMLTreeBuilder.cpp:
3102         (WebCore::):
3103
3104 2010-07-09  Eric Seidel  <eric@webkit.org>
3105
3106         Reviewed by Adam Barth.
3107
3108         Add basic "in foreign content" support to the TreeBuilder
3109         https://bugs.webkit.org/show_bug.cgi?id=41943
3110
3111         This is covered by numerous tests in html5lib/runner.html.
3112
3113         "in foreign content" mode requires us to be able to process
3114         tokens using the "secondary insertion mode".  We have to set
3115         a fake insertion mode to do that, so much of this code is enabling
3116         setting of fake insertion modes, and then later restoration of the
3117         insertion mode after execution.
3118
3119         There is a lot more of foreign content mode to implement, but this is
3120         a good start resulting in huge test progressions.
3121
3122         * html/HTMLConstructionSite.cpp:
3123         (WebCore::HTMLConstructionSite::insertSelfClosingHTMLElement):
3124          - Use createHTMLElementAndAttachToCurrent instead of copy/paste code.
3125          - No need to include HTMLElementFactory in this file.
3126         * html/HTMLConstructionSite.h:
3127          - RedirectToFosterParentGuard does not need to be a friend class.
3128         * html/HTMLElementStack.cpp:
3129         (WebCore::HTMLElementStack::isOnlyHTMLElementsInScope):
3130         * html/HTMLElementStack.h:
3131         * html/HTMLTreeBuilder.cpp:
3132         (WebCore::HTMLTreeBuilder::processStartTagForInBody):
3133         (WebCore::):
3134         * html/HTMLTreeBuilder.h:
3135         (WebCore::HTMLTreeBuilder::setInsertionMode):
3136         (WebCore::HTMLTreeBuilder::isFakeInsertionMode):
3137         (WebCore::HTMLTreeBuilder::setFakeInsertionMode):
3138
3139 2010-07-09  Adam Barth  <abarth@webkit.org>
3140
3141         Reviewed by Eric Seidel.
3142
3143         Coalesce text nodes when foster parenting
3144         https://bugs.webkit.org/show_bug.cgi?id=41921
3145
3146         Introduces the notion of an AttachmentSite to the overall
3147         HTMLConstructionSite.  Maybe we should rename HTMLConstructionSite to
3148         HTMLConstructionArea since we construct things all over the tree?  :)
3149
3150         There's something wrong in the internal layering in this class, but I
3151         can't quite see what it is.  I added a FIXME for the some of the
3152         symptoms.
3153
3154         * html/HTMLConstructionSite.cpp:
3155         (WebCore::HTMLConstructionSite::attach):
3156         (WebCore::HTMLConstructionSite::attachAtSite):
3157         (WebCore::HTMLConstructionSite::insertTextNode):
3158         (WebCore::HTMLConstructionSite::findFosterSite):
3159         (WebCore::HTMLConstructionSite::fosterParent):
3160         * html/HTMLConstructionSite.h:
3161
3162 2010-07-08  Nikolas Zimmermann  <nzimmermann@rim.com>
3163
3164         Reviewed by Dirk Schulze.
3165
3166         RenderSVGRoot does not include border/padding while repainting
3167         https://bugs.webkit.org/show_bug.cgi?id=41854
3168
3169         RenderSVGRoot does not include border/padding in the repaint rect.
3170         clippedOverflowRectForRepaint() was missing. Affects all DRT results,
3171         as <svg> now gets properly sized.
3172
3173         Test: svg/custom/repaint-moving-svg-and-div.xhtml
3174
3175         * rendering/RenderSVGRoot.cpp:
3176         (WebCore::RenderSVGRoot::repaintRectInLocalCoordinates):
3177         (WebCore::RenderSVGRoot::clippedOverflowRectForRepaint):
3178         * rendering/RenderSVGRoot.h:
3179
3180 2010-07-09  Albert J. Wong  <ajwong@chromium.org>
3181
3182         Reviewed by Nikolas Zimmermann.
3183
3184         Add RuntimeEnabledFeatures::timeRangesEnabled() required by r62880
3185
3186         https://bugs.webkit.org/show_bug.cgi?id=41935
3187
3188         * bindings/generic/RuntimeEnabledFeatures.cpp:
3189         (WebCore::RuntimeEnabledFeatures::timeRangesEnabled):
3190                 Add in timeRangesEnabled() implementation.
3191         * bindings/generic/RuntimeEnabledFeatures.h:
3192                 Add in timeRangesEnabled() declaration.
3193
3194
3195 2010-07-09  Eric Seidel  <eric@webkit.org>
3196
3197         Reviewed by Adam Barth.
3198
3199         Add setInsertionMode setter in preparation for "in foreign content" mode
3200         https://bugs.webkit.org/show_bug.cgi?id=41942
3201
3202         "in foreign content" mode needs to be able to use a fake
3203         insertion mode for processing.  We need to be able to save the
3204         original insertion mode, set a fake one, and then restore the original
3205         if it wasn't changed.  To detect changes, we need all callsites to
3206         use a setInsertionMode accessor instead of m_insertionMode =
3207
3208         No functional changes, thus no tests.
3209
3210         * html/HTMLTreeBuilder.cpp:
3211         (WebCore::HTMLTreeBuilder::processStartTagForInBody):
3212         (WebCore::HTMLTreeBuilder::processColgroupEndTagForInColumnGroup):
3213         (WebCore::HTMLTreeBuilder::processStartTagForInTable):
3214         (WebCore::HTMLTreeBuilder::processStartTag):
3215         (WebCore::HTMLTreeBuilder::processBodyEndTagForInBody):
3216         (WebCore::HTMLTreeBuilder::setInsertionModeAndEnd):
3217         (WebCore::HTMLTreeBuilder::processEndTagForInTableBody):
3218         (WebCore::HTMLTreeBuilder::processEndTagForInCell):
3219         (WebCore::HTMLTreeBuilder::processCaptionEndTagForInCaption):
3220         (WebCore::HTMLTreeBuilder::processTrEndTagForInRow):
3221         (WebCore::HTMLTreeBuilder::processEndTag):
3222         (WebCore::HTMLTreeBuilder::processCharacter):
3223         (WebCore::HTMLTreeBuilder::processDefaultForInTableTextMode):
3224         (WebCore::HTMLTreeBuilder::processGenericRCDATAStartTag):
3225         (WebCore::HTMLTreeBuilder::processGenericRawTextStartTag):
3226         (WebCore::HTMLTreeBuilder::processScriptStartTag):
3227
3228 2010-07-09  Eric Seidel  <eric@webkit.org>
3229
3230         Reviewed by Adam Barth.
3231
3232         Add insertForeignElement in preparation for adding "in foreign content" support
3233         https://bugs.webkit.org/show_bug.cgi?id=41940
3234
3235         No functional changes, thus no tests.
3236
3237         * html/HTMLConstructionSite.cpp:
3238         (WebCore::HTMLConstructionSite::insertForeignElement):
3239         (WebCore::HTMLConstructionSite::createElement):
3240         (WebCore::HTMLConstructionSite::createHTMLElement):
3241         * html/HTMLConstructionSite.h:
3242
3243 2010-07-09  Adam Barth  <abarth@webkit.org>
3244
3245         Reviewed by Eric Seidel.
3246
3247         Implementing pending table characters
3248         https://bugs.webkit.org/show_bug.cgi?id=41916
3249
3250         This turned out to not be as scary as I thought it would be.
3251
3252         * html/HTMLTreeBuilder.cpp:
3253         (WebCore::HTMLTreeBuilder::processDoctypeToken):
3254         (WebCore::HTMLTreeBuilder::processStartTag):
3255         (WebCore::HTMLTreeBuilder::processEndTag):
3256         (WebCore::HTMLTreeBuilder::processComment):
3257         (WebCore::HTMLTreeBuilder::processCharacter):
3258         (WebCore::HTMLTreeBuilder::processEndOfFile):
3259         (WebCore::HTMLTreeBuilder::processDefaultForInTableTextMode):
3260         * html/HTMLTreeBuilder.h:
3261
3262 2010-07-08  Adam Barth  <abarth@webkit.org>
3263
3264         Reviewed by Eric Seidel.
3265
3266         Handle whitespace correctly
3267         https://bugs.webkit.org/show_bug.cgi?id=41907
3268
3269         This patch introduces an extra memcpy in the character token pipeline.
3270         I'll remove the memcpy in a future patch.
3271
3272         * html/HTMLConstructionSite.cpp:
3273         (WebCore::HTMLConstructionSite::insertTextNode):
3274         * html/HTMLConstructionSite.h:
3275         * html/HTMLTreeBuilder.cpp:
3276         (WebCore::HTMLTreeBuilder::processCharacter):
3277         * html/HTMLTreeBuilder.h:
3278
3279 2010-07-09  Eric Seidel  <eric@webkit.org>
3280
3281         Reviewed by Adam Barth.
3282
3283         Move more mode handling into functions for later re-use
3284         https://bugs.webkit.org/show_bug.cgi?id=41939
3285
3286         No functional changes, thus no tests.
3287
3288         * html/HTMLTreeBuilder.cpp:
3289         (WebCore::HTMLTreeBuilder::processEndTagForInTableBody):
3290         (WebCore::HTMLTreeBuilder::processEndTagForInRow):
3291         (WebCore::HTMLTreeBuilder::processEndTagForInCell):
3292         (WebCore::HTMLTreeBuilder::processEndTag):
3293         * html/HTMLTreeBuilder.h:
3294
3295 2010-07-09  Eric Seidel  <eric@webkit.org>
3296
3297         Reviewed by Adam Barth.
3298
3299         Add new popUntilPopped functions to clean up code
3300         https://bugs.webkit.org/show_bug.cgi?id=41936
3301
3302         Pretty self explanatory.  Much awesome code reduction.
3303
3304         No functional changes, thus no tests.
3305
3306         * html/HTMLElementStack.cpp:
3307         (WebCore::HTMLElementStack::popUntilPopped):
3308         * html/HTMLElementStack.h:
3309         * html/HTMLTreeBuilder.cpp:
3310         (WebCore::HTMLTreeBuilder::processAnyOtherEndTagForInBody):
3311         (WebCore::HTMLTreeBuilder::callTheAdoptionAgency):
3312         (WebCore::HTMLTreeBuilder::processEndTagForInBody):
3313         (WebCore::HTMLTreeBuilder::processCaptionEndTagForInCaption):
3314         (WebCore::HTMLTreeBuilder::processTableEndTagForInTable):
3315         (WebCore::HTMLTreeBuilder::processEndTag):
3316
3317 2010-07-09  Eric Seidel  <eric@webkit.org>
3318
3319         Unreviewed.  Just renaming (discussed with Adam Barth).
3320
3321         Rename createElement* to createHTMLElement* to better reflect
3322         behavior.  This is in preparation for adding foreign content support.
3323
3324         * html/HTMLConstructionSite.cpp:
3325         (WebCore::HTMLConstructionSite::createHTMLElementAndAttachToCurrent):
3326         (WebCore::HTMLConstructionSite::insertHTMLHtmlElement):
3327         (WebCore::HTMLConstructionSite::insertHTMLHeadElement):
3328         (WebCore::HTMLConstructionSite::insertHTMLBodyElement):
3329         (WebCore::HTMLConstructionSite::insertHTMLElement):
3330         (WebCore::HTMLConstructionSite::insertSelfClosingHTMLElement):
3331         (WebCore::HTMLConstructionSite::createHTMLElement):
3332         * html/HTMLConstructionSite.h:
3333         * html/HTMLTreeBuilder.cpp:
3334         (WebCore::HTMLTreeBuilder::callTheAdoptionAgency):
3335
3336 2010-07-09  Eric Seidel  <eric@webkit.org>
3337
3338         Unreviewed.  Just renaming (discussed with Adam Barth).
3339
3340         Rename insertElement to insertHTMLElement and
3341         insertSelfClosingElement to insertSelfClosingHTMLElement
3342         to better reflect what they actually do.  This is in preparation
3343         for adding foreign content support.
3344
3345         * html/HTMLConstructionSite.cpp:
3346         (WebCore::HTMLConstructionSite::insertHTMLElement):
3347         (WebCore::HTMLConstructionSite::insertSelfClosingHTMLElement):
3348         (WebCore::HTMLConstructionSite::insertFormattingElement):
3349         (WebCore::HTMLConstructionSite::reconstructTheActiveFormattingElements):
3350         (WebCore::HTMLConstructionSite::fosterParent):
3351         * html/HTMLConstructionSite.h:
3352         * html/HTMLTreeBuilder.cpp:
3353         (WebCore::HTMLTreeBuilder::processCloseWhenNestedTag):
3354         (WebCore::HTMLTreeBuilder::processStartTagForInBody):
3355         (WebCore::HTMLTreeBuilder::processStartTagForInTable):
3356         (WebCore::HTMLTreeBuilder::processStartTag):
3357         (WebCore::HTMLTreeBuilder::callTheAdoptionAgency):
3358         (WebCore::HTMLTreeBuilder::processStartTagForInHead):
3359         (WebCore::HTMLTreeBuilder::processGenericRCDATAStartTag):
3360         (WebCore::HTMLTreeBuilder::processGenericRawTextStartTag):
3361
3362 2010-07-08  Rob Buis  <rwlbuis@gmail.com>
3363
3364         Reviewed by Eric Seidel.
3365
3366         Implement SVGSVGElement.getElementById
3367         https://bugs.webkit.org/show_bug.cgi?id=41655
3368
3369         Implement getElementById for SVGSVGElement by trying to
3370         reuse Document.getElementById. If that fails to find an
3371         SVG element in the document fragent do a subtree search.
3372
3373         Test: svg/custom/svg-getelementid.xhtml
3374
3375         * svg/SVGSVGElement.cpp:
3376         (WebCore::SVGSVGElement::getElementById):
3377         * svg/SVGSVGElement.h:
3378         * svg/SVGSVGElement.idl:
3379
3380 2010-07-08  Eric Seidel  <eric@webkit.org>
3381
3382         Reviewed by Adam Barth.
3383
3384         Unwrap a few || blocks for easier readability
3385         https://bugs.webkit.org/show_bug.cgi?id=41838
3386
3387         No functional change, thus no tests.
3388
3389         * html/HTMLTreeBuilder.cpp:
3390         (WebCore::HTMLTreeBuilder::adjustedLexerState):
3391         (WebCore::HTMLTreeBuilder::processStartTagForInBody):
3392         (WebCore::HTMLTreeBuilder::processStartTagForInTable):
3393         (WebCore::HTMLTreeBuilder::processStartTag):
3394         (WebCore::HTMLTreeBuilder::processEndTagForInBody):
3395         (WebCore::HTMLTreeBuilder::processEndTag):
3396         (WebCore::HTMLTreeBuilder::processComment):
3397         (WebCore::HTMLTreeBuilder::processStartTagForInHead):
3398
3399 2010-07-08  Sam Magnuson  <smagnuson@netflix.com>
3400
3401         Reviewed by Simon Hausmann.
3402
3403         [Qt] for debugging purposes nice I'm contributing back my FPS
3404         counter in the AnimationQtBase
3405         https://bugs.webkit.org/show_bug.cgi?id=40381
3406
3407         Simply start a timer and count frames in the AnimationQtBase and
3408         spit out the FPS count at the end of a single animation.
3409
3410         No new tests: this is a simple debugging aid.
3411
3412         * platform/graphics/qt/GraphicsLayerQt.cpp:
3413         (WebCore::AnimationQt::updateState):
3414         (WebCore::AnimationQt::updateCurrentTime):
3415         (WebCore::TransformAnimationQt::updateState):
3416         (WebCore::OpacityAnimationQt::updateState):
3417
3418 2010-07-08  Sam Magnuson  <smagnuson@netflix.com>
3419
3420         Reviewed by Simon Hausmann.
3421
3422         [Qt] instance objects created for QObjects are somtimes GC'd
3423         https://bugs.webkit.org/show_bug.cgi?id=40352
3424
3425         In markAggregate loop over all the current fields and for any that
3426         still have a dynamic property or a child, mark them as
3427         well. Otherwise the proxy instance will go away and the JS that
3428         was bound to it will be lost.
3429
3430         * bridge/qt/qt_instance.cpp:
3431         (JSC::Bindings::QtInstance::getQtInstance):
3432         (JSC::Bindings::QtInstance::removeCachedMethod):
3433         (JSC::Bindings::QtInstance::markAggregate):
3434         (JSC::Bindings::QtInstance::getPropertyNames):
3435
3436 2010-07-08  Ilya Tikhonovsky  <loislo@chromium.org>
3437
3438         Reviewed by Pavel Feldman.
3439
3440         WebInspector: migrate InspectorDOMAgent to the generated version of
3441         InspectorFrontend interface. This is the next step on the way to
3442         Remote Debugging.
3443
3444         * bindings/js/ScriptEventListener.cpp:
3445         (WebCore::eventListenerHandlerBody):
3446         (WebCore::eventListenerHandlerLocation):
3447         * bindings/js/ScriptEventListener.h:
3448         * bindings/v8/ScriptEventListener.cpp:
3449         (WebCore::eventListenerHandlerBody):
3450         (WebCore::eventListenerHandlerLocation):
3451         * bindings/v8/ScriptEventListener.h:
3452         * inspector/CodeGeneratorInspector.pm:
3453         * inspector/InspectorCSSStore.cpp:
3454         (WebCore::InspectorCSSStore::inspectorStyleSheet):
3455         * inspector/InspectorController.cpp:
3456         (WebCore::InspectorController::connectFrontend):
3457         * inspector/InspectorController.h:
3458         (WebCore::InspectorController::inspectorFrontend2):
3459         * inspector/InspectorDOMAgent.cpp:
3460         (WebCore::InspectorDOMAgent::InspectorDOMAgent):
3461         (WebCore::InspectorDOMAgent::setDocument):
3462         (WebCore::InspectorDOMAgent::handleEvent):
3463         (WebCore::InspectorDOMAgent::pushChildNodesToFrontend):
3464         (WebCore::InspectorDOMAgent::getEventListenersForNode):
3465         (WebCore::InspectorDOMAgent::buildObjectForNode):
3466         (WebCore::InspectorDOMAgent::buildArrayForElementAttributes):
3467         (WebCore::InspectorDOMAgent::buildArrayForContainerChildren):
3468         (WebCore::InspectorDOMAgent::buildObjectForEventListener):
3469         (WebCore::InspectorDOMAgent::didInsertDOMNode):
3470         (WebCore::InspectorDOMAgent::getStyles):
3471         (WebCore::InspectorDOMAgent::getAllStyles):
3472         (WebCore::InspectorDOMAgent::getStyleSheet):
3473         (WebCore::InspectorDOMAgent::getRuleRangesForStyleSheetId):
3474         (WebCore::InspectorDOMAgent::getInlineStyle):
3475         (WebCore::InspectorDOMAgent::getComputedStyle):
3476         (WebCore::InspectorDOMAgent::buildObjectForAttributeStyles):
3477         (WebCore::InspectorDOMAgent::buildArrayForCSSRules):
3478         (WebCore::InspectorDOMAgent::buildArrayForPseudoElements):
3479         (WebCore::InspectorDOMAgent::applyStyleText):
3480         (WebCore::InspectorDOMAgent::toggleStyleEnabled):
3481         (WebCore::InspectorDOMAgent::setRuleSelector):
3482         (WebCore::InspectorDOMAgent::addRule):
3483         (WebCore::InspectorDOMAgent::buildObjectForStyle):
3484         (WebCore::InspectorDOMAgent::populateObjectWithStyleProperties):
3485         (WebCore::InspectorDOMAgent::buildArrayForDisabledStyleProperties):
3486         (WebCore::InspectorDOMAgent::buildObjectForStyleSheet):
3487         (WebCore::InspectorDOMAgent::buildObjectForRule):
3488         (WebCore::InspectorDOMAgent::toArray):
3489         (WebCore::InspectorDOMAgent::reportNodesAsSearchResults):
3490         * inspector/InspectorDOMAgent.h:
3491         (WebCore::InspectorDOMAgent::create):
3492         * inspector/InspectorFrontend.cpp:
3493         * inspector/InspectorFrontend.h:
3494         * inspector/InspectorFrontend2.idl:
3495         * inspector/front-end/inspector.js:
3496         (WebInspector.dispatchMessageFromBackend):
3497
3498 2010-07-08  Simon Fraser  <simon.fraser@apple.com>
3499
3500         Reviewed by Darin Adler.
3501
3502         compositing/iframes/iframe-resize.html displays incorrectly after the resize
3503         https://bugs.webkit.org/show_bug.cgi?id=41794
3504         
3505         The clip and scroll layers of a composited iframe's RenderLayerCompositor are updated from
3506         from updateGraphicsLayerGeometry(), but this is too early to get the correct layoutWidth and
3507         layoutHeight from the FrameView which happen later in layout. So when a widget size changes,
3508         call updateAfterWidgetResize() directly on the RenderLayerBacking (if any).
3509
3510         * rendering/RenderLayerBacking.cpp:
3511         (WebCore::RenderLayerBacking::updateAfterWidgetResize): New method that updates the clip
3512         and scroll layers of the iframe's content RenderLayerCompositor.
3513         (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry): Call updateAfterWidgetResize()
3514         * rendering/RenderLayerBacking.h: Add updateAfterWidgetResize().
3515         * rendering/RenderWidget.cpp:
3516         (WebCore::RenderWidget::setWidgetGeometry): Call updateAfterWidgetResize().
3517
3518 2010-07-08  Simon Fraser  <simon.fraser@apple.com>
3519
3520         Reviewed by Dan Bernstein.
3521
3522         Calling layoutTestController.layerTreeAsText() should update layout
3523         https://bugs.webkit.org/show_bug.cgi?id=41818
3524
3525         Call updateLayout() on the document before obtaining the layer tree.
3526         This will update compositing layers.
3527         
3528         * page/Frame.cpp:
3529         (WebCore::Frame::layerTreeAsText):
3530
3531 2010-07-08  Adam Barth  <abarth@webkit.org>
3532
3533         Reviewed by Eric Seidel.
3534
3535         Get my head wrapped around processCharacter
3536         https://bugs.webkit.org/show_bug.cgi?id=41812
3537
3538         The bulk of the patch is just stubbing out functions to document what
3539         the spec tells us to do.  I'll implement these functions in subsequent
3540         patches.
3541
3542         * html/HTMLConstructionSite.h:
3543         (WebCore::HTMLConstructionSite::insertLeadingWhitespace):
3544         (WebCore::HTMLConstructionSite::insertLeadingWhitespaceWithActiveFormattingElements):
3545         * html/HTMLTreeBuilder.cpp:
3546         (WebCore::HTMLTreeBuilder::processCharacter):
3547         * html/HTMLTreeBuilder.h:
3548         (WebCore::HTMLTreeBuilder::skipLeadingWhitespace):
3549
3550 2010-07-08  Tony Chang  <tony@chromium.org>
3551
3552         Reviewed by Ojan Vafai.
3553
3554         WebCore::InsertLineBreakCommand::shouldUseBreakElement ReadAV@NULL
3555         https://bugs.webkit.org/show_bug.cgi?id=30116
3556         Fixing the crash causes text insertions on hidden elements to get ignored
3557         (not a new bug).  This is https://bugs.webkit.org/show_bug.cgi?id=40342
3558
3559         Test: editing/inserting/return-key-in-hidden-textarea.html
3560
3561         * editing/InsertLineBreakCommand.cpp:
3562         (WebCore::InsertLineBreakCommand::doApply):
3563         * editing/InsertParagraphSeparatorCommand.cpp:
3564         (WebCore::InsertParagraphSeparatorCommand::doApply):
3565
3566 2010-07-08  Sam Weinig  <sam@webkit.org>
3567
3568         Reviewed by Oliver Hunt.
3569
3570         Fix for https://bugs.webkit.org/show_bug.cgi?id=41923
3571         TimeRanges should expose a JS constructor
3572
3573         * html/TimeRanges.idl: Remove [OmitConstructor].
3574         * page/DOMWindow.idl: Add constructor.
3575
3576 2010-07-08  Erik Arvidsson  <arv@chromium.org>
3577
3578         Reviewed by Ojan Vafai.
3579
3580         Add missing padding-end and margin-end CSS properties.
3581         https://bugs.webkit.org/show_bug.cgi?id=25761
3582
3583         Tests: fast/css/margin-start-end.html
3584                fast/css/padding-start-end.html
3585
3586         * css/CSSComputedStyleDeclaration.cpp:
3587         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
3588         * css/CSSParser.cpp:
3589         (WebCore::CSSParser::parseValue):
3590         * css/CSSPropertyNames.in:
3591         * css/CSSStyleSelector.cpp:
3592         (WebCore::CSSStyleSelector::applyProperty):
3593         * inspector/front-end/SourceCSSTokenizer.js:
3594         (WebInspector.SourceCSSTokenizer):
3595
3596 2010-07-08  Aaron Boodman  <aa@chromium.org>
3597
3598         Reviewed by Timothy Hatcher.
3599
3600         Add the ability for user scripts and user styles to affect just the top frame.
3601
3602         https://bugs.webkit.org/show_bug.cgi?id=41529
3603
3604         Tests: userscripts/user-script-all-frames.html
3605                userscripts/user-script-top-frame-only.html
3606                userscripts/user-style-all-frames.html
3607                userscripts/user-style-top-frame-only.html
3608
3609         * WebCore.base.exp: Update PageGroup method signatures.
3610         * dom/Document.cpp:
3611         (WebCore::Document::pageGroupUserSheets): Check allFrames before injecting.
3612         * page/Frame.cpp:
3613         (WebCore::Frame::injectUserScriptsForWorld): Ditto.
3614         * page/PageGroup.cpp:
3615         (WebCore::PageGroup::addUserScriptToWorld):
3616         (WebCore::PageGroup::addUserStyleSheetToWorld):
3617         * page/PageGroup.h:
3618         * page/UserScript.h:
3619         (WebCore::UserScript::UserScript):
3620         (WebCore::UserScript::injectedFrames):
3621         * page/UserScriptTypes.h:
3622         (WebCore::):
3623         * page/UserStyleSheet.h:
3624         (WebCore::UserStyleSheet::UserStyleSheet):
3625         (WebCore::UserStyleSheet::injectedFrames):
3626
3627 2010-07-08  Adele Peterson  <adele@apple.com>
3628
3629         Reviewed by Jon Honeycutt, Adam Roben, and Darin Adler.
3630
3631         Fix for https://bugs.webkit.org/show_bug.cgi?id=41721
3632         <rdar://problem/8158561> Missing plug-in indicator should have a pressed state
3633
3634         Test: plugins/clicking-missing-plugin-fires-delegate.html
3635
3636         * html/HTMLPlugInElement.cpp:
3637         (WebCore::HTMLPlugInElement::HTMLPlugInElement): Initialize m_isCapturingMouseEvents.
3638         (WebCore::HTMLPlugInElement::detach): If we're still capturing when getting detached, clear the capturing node on the EventHandler.
3639         (WebCore::HTMLPlugInElement::defaultEventHandler): Call handleMissingPluginIndicatorEvent when the missing plugin indicator is showing.
3640         * html/HTMLPlugInElement.h:
3641         (WebCore::HTMLPlugInElement::isCapturingMouseEvents):
3642         (WebCore::HTMLPlugInElement::setIsCapturingMouseEvents):
3643         * page/ChromeClient.h:
3644         (WebCore::ChromeClient::shouldMissingPluginMessageBeButton): Added default implementation.
3645         * rendering/RenderEmbeddedObject.cpp:
3646         (WebCore::replacementTextRoundedRectPressedColor):
3647         (WebCore::RenderEmbeddedObject::RenderEmbeddedObject):
3648         (WebCore::RenderEmbeddedObject::setMissingPluginIndicatorIsPressed): Added.  Causes a repaint when the state changes.
3649         (WebCore::RenderEmbeddedObject::paintReplaced): Call getReplacementTextGeometry.
3650         (WebCore::RenderEmbeddedObject::getReplacementTextGeometry): Factored this out so it can be used in paintReplaced and in isInMissingPluginIndicator.
3651         (WebCore::RenderEmbeddedObject::isInMissingPluginIndicator): Hit test to see if the mouse event is in the missing plugin indicator.
3652         (WebCore::RenderEmbeddedObject::handleMissingPluginIndicatorEvent): Capture mouse events as needed and track the pressed appearance.
3653         * rendering/RenderEmbeddedObject.h:
3654
3655 2010-07-08  James Robinson  <jamesr@google.com>
3656
3657         Reviewed by Darin Fisher.
3658
3659         Allow resizing and getting the texture id from an offscreen GLES2Context
3660         https://bugs.webkit.org/show_bug.cgi?id=41828
3661
3662         When using an offscreen GLES2Context the caller needs to be able to resize the backing store
3663         managed by the embedder and get access to a texture id to pass to the compositor.  WebGL
3664         does these actions in an indirect way, it will be refactored to use this path.
3665
3666         * platform/chromium/GLES2Context.h:
3667
3668 2010-07-02  Ojan Vafai  <ojan@chromium.org>
3669
3670         Reviewed by Adam Barth.
3671
3672         Crash in RenderObject::containingBlock when clearing selection in a display:none node.
3673         https://bugs.webkit.org/show_bug.cgi?id=41523
3674
3675         updateStyleIfNeeded before clearing the selection in the RenderView. Otherwise,
3676         m_selectionStart and m_selectionEnd in RenderView point to garbage object.
3677         This fixes the crash because updateStyleIfNeeded clears the selection before
3678         clobbering nodes that contain the selection.
3679
3680         Test: editing/selection/crash-on-clear-selection.html
3681
3682         * editing/SelectionController.cpp:
3683         (WebCore::SelectionController::updateAppearance):
3684
3685 2010-07-08  Brent Fulgham  <bfulgham@webkit.org>
3686
3687         Reviewed by Xan Lopez.
3688
3689         Correct a mistake in calculating squiggle extents.  The entire
3690         quantity was being divided by two, rather than just the unitWidth.
3691         This error caused the squiggle to be about half the expected length.
3692
3693         * platform/graphics/cairo/DrawErrorUnderline.h:
3694         (drawErrorUnderline):
3695
3696 2010-07-08  John Abd-El-Malek  <jam@chromium.org>
3697
3698         Reviewed by Darin Fisher.
3699
3700         [V8] Navigation policy doesn't play nicely with pepper plugins
3701         https://bugs.webkit.org/show_bug.cgi?id=41864
3702
3703         * bindings/v8/V8Utilities.cpp:
3704         (WebCore::callingOrEnteredFrame):
3705         (WebCore::shouldAllowNavigation):
3706         (WebCore::navigateIfAllowed):
3707
3708 2010-07-08  Jon Honeycutt  <jhoneycutt@apple.com>
3709
3710         Missing plug-ins may cause an assertion failure.
3711         https://bugs.webkit.org/show_bug.cgi?id=41900
3712
3713         Reviewed by Adele Peterson.
3714
3715         Test: plugins/missing-plugin.html
3716
3717         * plugins/PluginView.cpp:
3718         (WebCore::PluginView::~PluginView):
3719         Check whether m_instance is null before trying to remove it from the
3720         map. Trying to remove a null instance results in an assertion failure.
3721         (WebCore::PluginView::PluginView):
3722         Initialize m_instance to 0, because there is an early return that may
3723         skip its being assigned its proper value.
3724
3725 2010-07-08  Darin Adler  <darin@apple.com>
3726
3727         Reviewed by Oliver Hunt.
3728
3729         Fix a test failure seen only on the Leopard bot.
3730
3731         * bindings/js/JSSharedWorkerCustom.cpp:
3732         (WebCore::JSSharedWorkerConstructor::constructJSSharedWorker):
3733         If SharedWorker::create returns an exception, don't try to create a wrapper
3734         for its return value, which can be 0.
3735
3736 2010-07-08  Albert J. Wong  <ajwong@chromium.org>
3737
3738         Not reviewed, build break fix for chromium.
3739
3740         A new MediaControlElementType enum was added which caused a warning in
3741         the Chromium build.
3742
3743         * rendering/RenderMediaControlsChromium.cpp:
3744         (WebCore::RenderMediaControlsChromium::paintMediaControlsPart):
3745             Add MediaVolumeSliderMuteButton enumartion entry.
3746
3747 2010-07-08  Dmitry Titov  <dimich@chromium.org>
3748
3749         Reviewed by David Levin.
3750
3751         Remove IDL declarations and stubs for navigator.registerProtocolHandler and navigator.registerContentHandler.
3752         https://bugs.webkit.org/show_bug.cgi?id=41878
3753
3754         This is practically a rollback of http://trac.webkit.org/changeset/50477.
3755
3756         * page/Chrome.cpp:
3757         * page/Chrome.h:
3758         * page/ChromeClient.h:
3759         * page/Navigator.cpp:
3760         * page/Navigator.h:
3761         * page/Navigator.idl:
3762
3763 2010-07-08  Xan Lopez  <xlopez@igalia.com>
3764
3765         Reviewed by Darin Adler.
3766
3767         Fix adoptRef assertion failures caused by stack-allocated ResourceHandle objects
3768         https://bugs.webkit.org/show_bug.cgi?id=41823
3769
3770         Create the ResourceHandle manually for now instead of calling
3771         ::create, since that methods does a few extra checks that make us
3772         fail a couple of HTTP tests.
3773
3774         * platform/network/soup/ResourceHandleSoup.cpp:
3775         (WebCore::):
3776
3777 2010-07-08  Alexey Proskuryakov  <ap@apple.com>
3778
3779         Reviewed by David Levin.
3780
3781         https://bugs.webkit.org/show_bug.cgi?id=41886
3782         Shorten access control failure explanation messages
3783
3784         * loader/CrossOriginAccessControl.cpp:
3785         (WebCore::passesAccessControlCheck):
3786         * loader/CrossOriginPreflightResultCache.cpp:
3787         (WebCore::CrossOriginPreflightResultCacheItem::allowsCrossOriginMethod):
3788         (WebCore::CrossOriginPreflightResultCacheItem::allowsCrossOriginHeaders):
3789         Removed "response header field" parts from error text - it's long, but doesn't add much
3790         to header field name.
3791
3792         * platform/network/ResourceErrorBase.cpp:
3793         * platform/network/ResourceErrorBase.h:
3794         * xml/XMLHttpRequest.cpp:
3795         (WebCore::XMLHttpRequest::didFail):
3796         * loader/DocumentThreadableLoader.cpp:
3797         (WebCore::DocumentThreadableLoader::DocumentThreadableLoader):
3798         (WebCore::DocumentThreadableLoader::makeSimpleCrossOriginAccessRequest):
3799         (WebCore::DocumentThreadableLoader::didReceiveResponse):
3800         (WebCore::DocumentThreadableLoader::preflightFailure):
3801         Renamed the constant for domain. WebCore shouldn't be creating errors observable by WebKit
3802         clients, because it can't create a platform error, and cannot load a localized string.
3803         We don't treat cross origin access check failures as true loading failures, so we don't tell
3804         clients about these.
3805
3806 2010-07-08  Eric Carlson  <eric.carlson@apple.com>
3807
3808         Reviewed by Dan Bernstein.
3809
3810         Mac OS X media controls should have a way to adjust volume incrementally
3811         https://bugs.webkit.org/show_bug.cgi?id=41718
3812         <rdar://problem/5679472>
3813
3814         * css/CSSPrimitiveValueMappings.h:
3815         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): Handle MediaVolumeSliderMuteButtonPart.
3816
3817         * css/CSSSelector.cpp: 
3818         (WebCore::CSSSelector::pseudoId): Handle PseudoMediaControlsVolumeSliderMuteButton.
3819         (WebCore::nameToPseudoTypeMap): Define mediaControlsVolumeSliderMuteButton.
3820         (WebCore::CSSSelector::extractPseudoType): Handle PseudoMediaControlsVolumeSliderMuteButton.
3821
3822         * css/CSSSelector.h:
3823         (WebCore::CSSSelector::): Define PseudoMediaControlsVolumeSliderMuteButton.
3824
3825         * css/CSSValueKeywords.in: Define media-volume-slider-mute-button.
3826
3827         * css/mediaControls.css: 
3828         (audio::-webkit-media-controls-volume-slider-mute-button, video::-webkit-media-controls-volume-slider-mute-button): New.
3829
3830         * css/mediaControlsQuickTime.css:
3831         (audio::-webkit-media-controls-panel, video::-webkit-media-controls-panel): Add "overflow: visible" 
3832         so volume slider pop-up will be visible.
3833
3834         (audio::-webkit-media-controls-mute-button, video::-webkit-media-controls-mute-button): Make 
3835         mute button 14x12 instead of 15x14 so it matches the size in the volume slider.
3836
3837         (audio::-webkit-media-controls-volume-slider-container, video::-webkit-media-controls-volume-slider-container):
3838         (audio::-webkit-media-controls-volume-slider, video::-webkit-media-controls-volume-slider):
3839         (audio::-webkit-media-controls-volume-slider-mute-button, video::-webkit-media-controls-volume-slider-mute-button): 
3840         New.
3841
3842         * platform/ThemeTypes.h: Define MediaVolumeSliderMuteButtonPart.
3843
3844         * rendering/MediaControlElements.cpp:
3845         (WebCore::MediaControlInputElement::MediaControlInputElement): Handle MEDIA_CONTROLS_VOLUME_SLIDER_MUTE_BUTTON.
3846         (WebCore::MediaControlMuteButtonElement::MediaControlMuteButtonElement): Add ButtonLocation 
3847         parameter both mute buttons can be created.
3848         (WebCore::MediaControlMuteButtonElement::create): Ditto.
3849
3850         * rendering/MediaControlElements.h: Define MediaVolumeSliderMuteButton and ButtonLocation.
3851
3852         * rendering/RenderMedia.cpp: 
3853         (WebCore::RenderMedia::styleDidChange): Update volume slider mute button.
3854         (WebCore::RenderMedia::createMuteButton): Pass ButtonLocation parameter to MediaControlMuteButtonElement::create.
3855         (WebCore::RenderMedia::createVolumeSliderMuteButton): New.
3856         (WebCore::RenderMedia::updateControls): Deal with volume slider mute button.
3857         (WebCore::RenderMedia::updateVolumeSliderContainer): Don't assume all ports want to position
3858         the volume slider in the same place, call new volumeSliderOffsetFromMuteButton theme function.
3859         (WebCore::RenderMedia::forwardEvent): Handle volume slider mute button.
3860         * rendering/RenderMedia.h:
3861
3862         * rendering/RenderTheme.cpp: 
3863         (WebCore::RenderTheme::paint): Handle MediaVolumeSliderMuteButtonPart.
3864         (WebCore::RenderTheme::volumeSliderOffsetFromMuteButton): New, return location previously hard
3865         coded in RenderMedia::updateVolumeSliderContainer.
3866         * rendering/RenderTheme.h:
3867
3868         * rendering/RenderThemeMac.h:
3869         * rendering/RenderThemeMac.mm:
3870         (WebCore::RenderThemeMac::adjustMediaSliderThumbSize): Deal with the volume slider thumb.
3871         (WebCore::RenderThemeMac::paintMediaVolumeSliderContainer): New, call the WKSI paint function 
3872         for this button.
3873         (WebCore::RenderThemeMac::paintMediaVolumeSliderTrack): Ditto.
3874         (WebCore::RenderThemeMac::paintMediaVolumeSliderThumb): Ditto.
3875         (WebCore::RenderThemeMac::shouldRenderMediaControlPart): Draw the volume slider parts when
3876         using the new controller UI for a movie that has audio.
3877         (WebCore::RenderThemeMac::volumeSliderOffsetFromMuteButton): New, position the volume slider 
3878         directly above the mute button.
3879
3880         * rendering/style/RenderStyleConstants.h: Define MEDIA_CONTROLS_VOLUME_SLIDER_MUTE_BUTTON.
3881
3882 2010-07-08  Antonio Gomes  <tonikitoo@webkit.org>
3883
3884         Unreviewed complementary fix for r62815
3885
3886         One last time change made me blind to a "!" in a if statment.
3887
3888         * editing/EditorCommand.cpp:
3889         (WebCore::executeToggleStyle):
3890
3891 2010-07-07  Ojan Vafai  <ojan@chromium.org>
3892
3893         Reviewed by Darin Adler.
3894
3895         Regression: Selection anchor + focus swap when arrow keys after setBaseAndExtent
3896         https://bugs.webkit.org/show_bug.cgi?id=32605
3897
3898         Only have selections be non-directional when they are set via the mouse.
3899         Otherwise, all selections are directional.
3900
3901         Test: editing/selection/extend-forward-after-set-base-and-extent.html
3902
3903         * WebCore.base.exp:
3904         * editing/SelectionController.cpp:
3905         (WebCore::SelectionController::setSelection):
3906         * editing/SelectionController.h:
3907         (WebCore::SelectionController::setSelection):
3908         * page/EventHandler.cpp:
3909         (WebCore::EventHandler::selectClosestWordFromMouseEvent):
3910         (WebCore::EventHandler::selectClosestWordOrLinkFromMouseEvent):
3911         (WebCore::EventHandler::handleMousePressEventTripleClick):
3912         (WebCore::EventHandler::handleMousePressEventSingleClick):
3913         (WebCore::EventHandler::updateSelectionForMouseDrag):
3914
3915 2010-07-08  Antonio Gomes  <tonikitoo@webkit.org>
3916
3917         Reviewed by Ojan Vafai.
3918
3919         Refactor platform dependent editing behavior code out of Settings (part II)
3920         https://bugs.webkit.org/show_bug.cgi?id=39854
3921
3922         Mac port is currently the only port relying on a style to be present on the start
3923         of a selection to consider the style as applied or not. All other ports
3924         have to have the style present in all text node of the selection for such.
3925
3926         Patch makes situations that depend on this check like this to be controlled by
3927         the EditingBehavior class.
3928
3929         Refactoring, so no new tests needed.
3930
3931         * editing/EditingBehavior.h:
3932         (WebCore::EditingBehavior::shouldToggleStyleBasedOnStartOfSelection):
3933         * editing/EditorCommand.cpp:
3934         (WebCore::executeToggleStyle):
3935
3936 2010-07-08  Anders Carlsson  <andersca@apple.com>
3937
3938         Reviewed by Sam Weinig.
3939
3940         Add stubbed out PluginView class
3941         https://bugs.webkit.org/show_bug.cgi?id=41879
3942
3943         Export functions needed by WebKit2.
3944
3945         * WebCore.exp.in:
3946
3947 2010-07-08  Ben Murdoch  <benm@google.com>
3948
3949         Reviewed by Pavel Feldman.
3950
3951         Fix build break in V8ConsoleCustom.cpp
3952         https://bugs.webkit.org/show_bug.cgi?id=40825
3953
3954         No new tests as just fixing a build break.
3955
3956         * bindings/v8/custom/V8ConsoleCustom.cpp: Guard profilesAccessorGetter
3957             appropriately.
3958
3959 2010-07-08  Sam Weinig  <sam@webkit.org>
3960
3961         Reviewed by Anders Carlsson.
3962
3963         Pass Page to BackForwardControllerClient::createBackForwardList since it
3964         may be called before implementations of BackForwardControllerClient have
3965         access to a Page.
3966
3967         * history/BackForwardController.cpp:
3968         (WebCore::BackForwardController::BackForwardController):
3969         * history/BackForwardControllerClient.h:
3970
3971 2010-07-08  Sheriff Bot  <webkit.review.bot@gmail.com>
3972
3973         Unreviewed, rolling out r62778.
3974         http://trac.webkit.org/changeset/62778
3975         https://bugs.webkit.org/show_bug.cgi?id=41866
3976
3977         Broke svg/W3C-SVG-1.1/text-intro-05-t.svg in debug (Requested
3978         by pfeldman on #webkit).
3979
3980         * platform/graphics/chromium/FontLinux.cpp:
3981         (WebCore::TextRunWalker::TextRunWalker):
3982         (WebCore::TextRunWalker::~TextRunWalker):
3983
3984 2010-07-08  Vitaly Repeshko  <vitalyr@chromium.org>
3985
3986         Reviewed by Pavel Feldman.
3987
3988         Fix adoptRef usage violation in IDBObjectStoreRequest
3989         https://bugs.webkit.org/show_bug.cgi?id=41869
3990
3991         * storage/IDBObjectStoreRequest.cpp:
3992         (WebCore::IDBObjectStoreRequest::IDBObjectStoreRequest):
3993
3994 2010-07-08  Sam Weinig  <sam@webkit.org>
3995
3996         Another chromium build fix.
3997
3998         * history/BackForwardListChromium.cpp:
3999         (WebCore::BackForwardListImpl::goBack):
4000         (WebCore::BackForwardListImpl::goForward):
4001         (WebCore::BackForwardListImpl::backListWithLimit):
4002         (WebCore::BackForwardListImpl::forwardListWithLimit):
4003         (WebCore::BackForwardListImpl::containsItem):
4004         (WebCore::BackForwardListImpl::removeItem):
4005
4006 2010-07-08  Sam Weinig  <sam@webkit.org>
4007
4008         Fix Chromium build.
4009
4010         * WebCore.gyp/WebCore.gyp:
4011
4012 2010-07-08  Sam Weinig  <sam@webkit.org>
4013
4014         Reviewed by Anders Carlsson.
4015
4016         Patch for https://bugs.webkit.org/show_bug.cgi?id=41826
4017         Convert BackForwardList to an abstract base class and add BackForwardListImpl
4018         as the concrete implementation of it.
4019
4020         * CMakeLists.txt:
4021         * GNUmakefile.am:
4022         * WebCore.exp.in:
4023         * WebCore.gypi:
4024         * WebCore.pro:
4025         * WebCore.vcproj/WebCore.vcproj:
4026         * WebCore.xcodeproj/project.pbxproj:
4027         * history/BackForwardController.cpp:
4028         (WebCore::BackForwardController::BackForwardController):
4029         * history/BackForwardController.h:
4030         * history/BackForwardList.cpp: Removed.
4031         * history/BackForwardList.h:
4032         (WebCore::BackForwardList::~BackForwardList):
4033         (WebCore::BackForwardList::isBackForwardListImpl):
4034         (WebCore::BackForwardList::BackForwardList):
4035         * history/BackForwardListChromium.cpp:
4036         * history/BackForwardListImpl.cpp: Copied from WebCore/history/BackForwardList.cpp.
4037         * history/BackForwardListImpl.h: Copied from WebCore/history/BackForwardList.h.
4038         (WebCore::BackForwardListImpl::isBackForwardListImpl):
4039
4040 2010-07-08  Vitaly Repeshko  <vitalyr@chromium.org>
4041
4042         Reviewed by Pavel Feldman.
4043
4044         Fix adoptRef usage violations (mostly in chromium)
4045         https://bugs.webkit.org/show_bug.cgi?id=41863
4046
4047         * bindings/v8/V8DOMWrapper.cpp:
4048         (WebCore::V8DOMWrapper::wrapNativeNodeFilter):
4049         * bindings/v8/V8NodeFilterCondition.h:
4050         (WebCore::V8NodeFilterCondition::create):
4051         * bindings/v8/custom/V8HTMLAllCollectionCustom.cpp:
4052         (WebCore::getNamedItems):
4053         * bindings/v8/custom/V8HTMLCollectionCustom.cpp:
4054         (WebCore::getNamedItems):
4055         * bindings/v8/custom/V8HTMLFormElementCustom.cpp:
4056         (WebCore::V8HTMLFormElement::namedPropertyGetter):
4057         * bindings/v8/custom/V8HTMLSelectElementCustom.cpp:
4058         (WebCore::V8HTMLSelectElement::namedPropertyGetter):
4059         * bindings/v8/custom/V8NamedNodesCollection.h:
4060         (WebCore::V8NamedNodesCollection::create):
4061         (WebCore::V8NamedNodesCollection::V8NamedNodesCollection):
4062         * storage/IDBDatabaseRequest.cpp:
4063         (WebCore::IDBDatabaseRequest::IDBDatabaseRequest):
4064         * storage/IndexedDatabaseRequest.cpp:
4065         (WebCore::IndexedDatabaseRequest::IndexedDatabaseRequest):
4066
4067 2010-07-08  Xan Lopez  <xlopez@igalia.com>
4068
4069         Reviewed by Gustavo Noronha.
4070
4071         Silence a few noisy build rules.
4072
4073         * GNUmakefile.am:
4074
4075 2010-07-08  Andreas Kling  <andreas.kling@nokia.com>
4076
4077         Reviewed by Simon Hausmann.
4078
4079         [Qt] Canvas putImageData() resets painter state
4080         https://bugs.webkit.org/show_bug.cgi?id=41827
4081
4082         Use drawImage() to copy pixels in putImageData() instead of QPixmap::operator=
4083
4084         Test: fast/canvas/canvas-state-intact-after-putImageData.html
4085
4086         * platform/graphics/qt/ImageBufferQt.cpp:
4087         (WebCore::putImageData):
4088
4089 2010-07-08  Andrey Kosyakov  <caseq@chromium.org>
4090
4091         Reviewed by Pavel Feldman.
4092
4093         Web Inspector: Do not invoke shortcuts popup upon bare '?' if it's typed
4094         into an input field.
4095         https://bugs.webkit.org/show_bug.cgi?id=41760
4096
4097         * inspector/front-end/inspector.js:
4098         (WebInspector.documentKeyDown):
4099
4100 2010-07-08  Patrick Gansterer  <paroga@paroga.com>
4101
4102         Reviewed by Kent Tamura.
4103
4104         [WINCE] Buildfix for EventHandler
4105         https://bugs.webkit.org/show_bug.cgi?id=41829
4106
4107         SM_MENUDROPALIGNMENT isn't supported on WinCE.
4108
4109         * page/EventHandler.cpp:
4110         (WebCore::EventHandler::sendContextMenuEventForKey):
4111
4112 2010-07-08  Xiaomei Ji  <xji@chromium.org>
4113
4114         Reviewed by David Levin.
4115
4116         Fix characters with unicode-bidi-mirror property are not correctly
4117         mirrored in Linux.
4118         https://bugs.webkit.org/show_bug.cgi?id=41305
4119
4120         Since harfbuzz does not do mirroring, chromium should iterate each
4121         character in the string and mirror it if needed before passing the
4122         string to harfbuzz for shaping.
4123
4124         Test: fast/text/international/bidi-mirror-he-ar.html
4125
4126         * platform/graphics/chromium/FontLinux.cpp:
4127         (WebCore::TextRunWalker::TextRunWalker):
4128         (WebCore::TextRunWalker::~TextRunWalker):
4129
4130 2010-07-08  Nikolas Zimmermann  <nzimmermann@rim.com>
4131
4132         Reviewed by Rob Buis & Dirk Schulze.
4133
4134         SVG text transformed incorrectly when a transform and gradient applied
4135         https://bugs.webkit.org/show_bug.cgi?id=41563
4136
4137         When rendering filled/stroked text with a gradient, RenderSVGResourceGradient creates a mask image,
4138         renders the text into the image, and then clips the current context against that image buffer,
4139         and filling a rect afterwards. This happened in the wrong coordinate space so far. Don't actually
4140         try to compute the right transformation matrix (which failed), but extract it directly from the
4141         GraphicsContext and apply this transformation to the mask image context.
4142
4143         Fixes pixellation in svg/batik/text/textEffect3.svg and makes the new test svg/custom/text-rotated-gradient.svg pass.
4144         Only affects CoreGraphics platforms.
4145
4146         Test: svg/custom/text-rotated-gradient.svg
4147
4148         * rendering/RenderSVGResourceGradient.cpp:
4149         (WebCore::absoluteTransformFromContext):
4150         (WebCore::createMaskAndSwapContextForTextGradient):
4151         (WebCore::clipToTextMask):
4152
4153 2010-07-07  Alexander Pavlov  <apavlov@chromium.org>
4154
4155         Reviewed by Darin Fisher.
4156
4157         [Chromium] Crash when re-entering message loop
4158         https://bugs.webkit.org/show_bug.cgi?id=41697
4159
4160         A Chromium-specific test case will be submitted into Chromium shortly.
4161
4162         * page/PageGroupLoadDeferrer.cpp:
4163         (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
4164         * page/PageGroupLoadDeferrer.h:
4165         (WebCore::PageGroupLoadDeferrer::nextDeferrer):
4166
4167 2010-07-07  Yury Semikhatsky  <yurys@chromium.org>
4168
4169         Reviewed by Pavel Feldman.
4170
4171         Web Inspector: skip breakpoints when script is already paused
4172         https://bugs.webkit.org/show_bug.cgi?id=41768
4173
4174         Test: inspector/debugger-no-nested-pause.html
4175
4176         * bindings/v8/ScriptDebugServer.cpp:
4177         (WebCore::ScriptDebugServer::handleV8DebugEvent):
4178
4179 2010-07-08  Eric Seidel  <eric@webkit.org>
4180
4181         Reviewed by Adam Barth.
4182
4183         WebCore/benchmarks/parser/html-parser.html spends a lot of time in deprecatedParseURL
4184         https://bugs.webkit.org/show_bug.cgi?id=41807
4185
4186         Wow.  This was an awful bug.  We were always taking the slow case
4187         every time we parsed a URL.  This is about a 10% speedup on our
4188         parsing benchmark, and might cause as much as a 1% speedup for Apple's
4189         PLT (even though I can't run that).
4190
4191         We still spend a lot of time in deprecatedParseURL.  We might consider
4192         inlining it if its being kept around much longer.
4193
4194         No behavioral change, just fixing a broken optimization.
4195
4196         * css/CSSHelper.cpp:
4197         (WebCore::deprecatedParseURL):
4198          - We only need to strip characters <= '\r', not >.
4199
4200 2010-07-08  Yury Semikhatsky  <yurys@chromium.org>
4201
4202         Reviewed by Pavel Feldman.
4203
4204         Web Inspector: factor out common part of debugger tests
4205         https://bugs.webkit.org/show_bug.cgi?id=41836
4206
4207         * bindings/js/ScriptDebugServer.cpp:
4208         (WebCore::ScriptDebugServer::recompileAllJSFunctions): postpone script recompilation if JS stack is not empty.
4209
4210 2010-07-08  Patrick Gansterer  <paroga@paroga.com>
4211
4212         Reviewed by Kent Tamura.
4213
4214         Buildfix for !ENABLE(SVG_ANIMATION) after r51567.
4215         https://bugs.webkit.org/show_bug.cgi?id=41803
4216
4217         * svg/SVGDocumentExtensions.cpp:
4218         (WebCore::SVGDocumentExtensions::sampleAnimationAtTime):
4219
4220 2010-07-07  Pavel Podivilov  <podivilov@chromium.org>
4221
4222         Reviewed by Nate Chapin.
4223
4224         [V8] Fix document wrapper memory leak in bindings.
4225         https://bugs.webkit.org/show_bug.cgi?id=41771
4226
4227         * bindings/v8/custom/V8HTMLDocumentCustom.cpp:
4228         (WebCore::V8HTMLDocument::WrapInShadowObject): Do not create static persistent handle
4229         to shadowConstructor because it keeps the first context alive forever.
4230
4231 2010-07-07  Andreas Kling  <andreas.kling@nokia.com>
4232
4233         Reviewed by Tor Arne Vestbø.
4234
4235         [Qt] Enable smooth pixmap transforms by default
4236         https://bugs.webkit.org/show_bug.cgi?id=41774
4237
4238         * platform/graphics/qt/GraphicsContextQt.cpp:
4239         (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
4240         (WebCore::GraphicsContext::setImageInterpolationQuality):
4241
4242 2010-07-07  Jesus Sanchez-Palencia  <jesus@webkit.org>
4243
4244         Reviewed by Antti Koivisto.
4245
4246         [Qt] Missing include to build QtWebKit with WebKit2 in MediaPlayerPrivatePhonon.cpp
4247         https://bugs.webkit.org/show_bug.cgi?id=41767
4248
4249         * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp: Add Logging.h include
4250
4251 2010-07-07  Pavel Podivilov  <podivilov@chromium.org>
4252
4253         Reviewed by Yury Semikhatsky.
4254
4255         Web Inspector: Move v8-related script offset conversion to DebuggerScript.js
4256         https://bugs.webkit.org/show_bug.cgi?id=41755
4257
4258         * bindings/v8/ScriptDebugServer.cpp:
4259         (WebCore::ScriptDebugServer::dispatchDidParseSource):
4260
4261 2010-07-07  Nicolas Weber  <thakis@chromium.org>
4262
4263         Reviewed by Dimitri Glazkov.
4264         https://bugs.webkit.org/show_bug.cgi?id=41580
4265
4266         Fix rendering of radial gradients in skia if both points of the
4267         gradient are the same and r0 > 0.
4268
4269         Test: fast/gradients/radial-centered.html
4270
4271         * platform/graphics/skia/GradientSkia.cpp:
4272         (WebCore::Gradient::platformGradient):
4273
4274 2010-06-18  MORITA Hajime  <morrita@google.com>
4275
4276         Reviewed by Ojan Vafai.<