2011-07-04 Vsevolod Vlasov <vsevik@chromium.org>
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2011-07-04  Vsevolod Vlasov  <vsevik@chromium.org>
2
3         Web Inspector: Show content for plugin requests in network panel.
4         https://bugs.webkit.org/show_bug.cgi?id=30080
5
6         Reviewed by Pavel Feldman.
7
8         Tests: http/tests/inspector/network/network-content-replacement-embed.html
9                http/tests/inspector/network/network-content-replacement-xhr.html
10                http/tests/inspector/network/network-embed.html
11
12         * WebCore.exp.in:
13         * inspector/InspectorController.cpp:
14         (WebCore::InspectorController::setResourcesDataSizeLimitsFromInternals):
15         * inspector/InspectorController.h:
16         * inspector/InspectorInstrumentation.cpp:
17         (WebCore::InspectorInstrumentation::didReceiveDataImpl):
18         * inspector/InspectorInstrumentation.h:
19         (WebCore::InspectorInstrumentation::didReceiveData):
20         * inspector/InspectorResourceAgent.cpp:
21         (WebCore::InspectorResourceAgent::didReceiveResponse):
22         (WebCore::InspectorResourceAgent::didReceiveData):
23         (WebCore::InspectorResourceAgent::didFinishLoading):
24         (WebCore::InspectorResourceAgent::setInitialXHRContent):
25         (WebCore::InspectorResourceAgent::setResourcesDataSizeLimitsFromInternals):
26         (WebCore::InspectorResourceAgent::getResourceContent):
27         * inspector/InspectorResourceAgent.h:
28         * inspector/NetworkResourcesData.cpp:
29         (WebCore::NetworkResourcesData::ResourceData::ResourceData):
30         (WebCore::NetworkResourcesData::ResourceData::setContent):
31         (WebCore::NetworkResourcesData::ResourceData::purgeContent):
32         (WebCore::NetworkResourcesData::ResourceData::createDecoder):
33         (WebCore::NetworkResourcesData::ResourceData::dataLength):
34         (WebCore::NetworkResourcesData::ResourceData::appendData):
35         (WebCore::NetworkResourcesData::ResourceData::decodeDataToContent):
36         (WebCore::NetworkResourcesData::NetworkResourcesData):
37         (WebCore::NetworkResourcesData::responseReceived):
38         (WebCore::NetworkResourcesData::setResourceContent):
39         (WebCore::NetworkResourcesData::maybeAddResourceData):
40         (WebCore::NetworkResourcesData::maybeDecodeDataToContent):
41         (WebCore::NetworkResourcesData::data):
42         (WebCore::NetworkResourcesData::clear):
43         (WebCore::NetworkResourcesData::setResourcesDataSizeLimits):
44         (WebCore::NetworkResourcesData::ensureNoDataForIdentifier):
45         (WebCore::NetworkResourcesData::ensureFreeSpace):
46         * inspector/NetworkResourcesData.h:
47         (WebCore::NetworkResourcesData::ResourceData::hasContent):
48         (WebCore::NetworkResourcesData::ResourceData::content):
49         (WebCore::NetworkResourcesData::ResourceData::decoder):
50         (WebCore::NetworkResourcesData::ResourceData::buffer):
51         (WebCore::NetworkResourcesData::ResourceData::setBuffer):
52         (WebCore::NetworkResourcesData::ResourceData::hasData):
53         * inspector/front-end/Resource.js:
54         (WebInspector.Resource.prototype.get contentEncoded):
55         * inspector/front-end/ResourcePreviewView.js:
56         (WebInspector.ResourcePreviewView.prototype.contentLoaded):
57         (WebInspector.ResourcePreviewView.prototype._createEmptyView):
58         (WebInspector.ResourcePreviewView.prototype._createPreviewView):
59         * inspector/front-end/ResourceView.js:
60         (WebInspector.ResourceView.hasTextContent):
61         * loader/DocumentThreadableLoader.cpp:
62         (WebCore::DocumentThreadableLoader::didReceiveData):
63         * loader/FrameLoader.cpp:
64         (WebCore::FrameLoader::willLoadMediaElementURL):
65         (WebCore::FrameLoader::commitProvisionalLoad):
66         (WebCore::FrameLoader::loadResourceSynchronously):
67         (WebCore::FrameLoader::loadedResourceFromMemoryCache):
68         * loader/ResourceLoadNotifier.cpp:
69         (WebCore::ResourceLoadNotifier::didReceiveData):
70         (WebCore::ResourceLoadNotifier::dispatchDidReceiveData):
71         (WebCore::ResourceLoadNotifier::sendRemainingDelegateMessages):
72         * loader/ResourceLoadNotifier.h:
73         * loader/appcache/ApplicationCacheGroup.cpp:
74         (WebCore::ApplicationCacheGroup::didReceiveData):
75         * testing/Internals.cpp:
76         (WebCore::Internals::setInspectorResourcesDataSizeLimits):
77         * testing/Internals.h:
78         * testing/Internals.idl:
79
80 2011-07-04  Jeff Timanus  <twiz@chromium.org>
81
82         Reviewed by Stephen White.
83
84         Prevent calls to GrapicsContext3D::deleteTexture with id 0 in DrawingBuffer::clear().
85         https://bugs.webkit.org/show_bug.cgi?id=63756
86
87         * platform/graphics/gpu/DrawingBuffer.cpp:
88         (WebCore::DrawingBuffer::clear):
89
90 2011-07-04  Martin Robinson  <mrobinson@igalia.com>
91
92         Reviewed by Andreas Kling.
93
94         [GTK] r90148 did not apply to X11 platforms in WebKit1
95         https://bugs.webkit.org/show_bug.cgi?id=63862
96
97         Correct the guard for an X11 specific piece of code. TARGET(X11) not
98         defined for the GTK+ port.
99
100         No new tests. This is covered by an existing test.
101
102         * plugins/npapi.cpp: Correct the X11 guard.
103         (NPN_InvalidateRect):
104
105 2011-07-04  Pavel Feldman  <pfeldman@google.com>
106
107         Web Inspector: implement settings panel.
108         https://bugs.webkit.org/show_bug.cgi?id=63907
109
110         Reviewed by Yury Semikhatsky.
111
112         * English.lproj/localizedStrings.js:
113         * WebCore.gypi:
114         * WebCore.vcproj/WebCore.vcproj:
115         * inspector/front-end/BreakpointsSidebarPane.js:
116         (WebInspector.XHRBreakpointsSidebarPane.prototype._saveBreakpoints):
117         (WebInspector.EventListenerBreakpointsSidebarPane.prototype._saveBreakpoints):
118         * inspector/front-end/ConsoleView.js:
119         (WebInspector.ConsoleView):
120         (WebInspector.ConsoleView.prototype._handleContextMenuEvent.monitoringXHRItemAction):
121         (WebInspector.ConsoleView.prototype._handleContextMenuEvent.get preserveLogItemAction):
122         (WebInspector.ConsoleView.prototype._monitoringXHREnabledSettingChanged):
123         (WebInspector.ConsoleView.prototype._registerShortcuts):
124         * inspector/front-end/DOMBreakpointsSidebarPane.js:
125         (WebInspector.DOMBreakpointsSidebarPane.prototype._saveBreakpoints):
126         * inspector/front-end/DebuggerPresentationModel.js:
127         (WebInspector.DebuggerPresentationModel.prototype._saveBreakpoints):
128         * inspector/front-end/ElementsPanel.js:
129         (WebInspector.ElementsPanel.prototype._contextMenuEventFired):
130         (WebInspector.ElementsPanel.prototype._domWordWrapSettingChanged):
131         (WebInspector.ElementsPanel.prototype._registerShortcuts):
132         * inspector/front-end/EventListenersSidebarPane.js:
133         (WebInspector.EventListenersSidebarPane.prototype):
134         ():
135         * inspector/front-end/HelpScreen.js:
136         (WebInspector.HelpScreen):
137         (WebInspector.HelpScreen.prototype.show):
138         (WebInspector.HelpScreen.prototype.hide):
139         (WebInspector.HelpScreen.prototype._onKeyDown):
140         * inspector/front-end/NetworkItemView.js:
141         * inspector/front-end/NetworkPanel.js:
142         * inspector/front-end/Panel.js:
143         (WebInspector.Panel.prototype.saveSidebarWidth):
144         * inspector/front-end/ProfilesPanel.js:
145         * inspector/front-end/ResourcesPanel.js:
146         (WebInspector.BaseStorageTreeElement.prototype.onselect):
147         (WebInspector.StorageCategoryTreeElement.prototype.onexpand):
148         (WebInspector.StorageCategoryTreeElement.prototype.set oncollapse):
149         * inspector/front-end/ScriptsPanel.js:
150         (WebInspector.ScriptsPanel.prototype._sourceFileAdded.get if):
151         (WebInspector.ScriptsPanel.prototype._setPauseOnExceptions.callback):
152         (WebInspector.ScriptsPanel.prototype._createSidebarButtonAndRegisterShortcuts):
153         * inspector/front-end/Settings.js:
154         (WebInspector.Settings):
155         (WebInspector.Settings.prototype.installApplicationSetting):
156         (WebInspector.Setting):
157         (WebInspector.Setting.prototype.addChangeListener):
158         (WebInspector.Setting.prototype.removeChangeListener):
159         (WebInspector.Setting.prototype.get var):
160         (WebInspector.Setting.prototype):
161         (WebInspector.Setting.prototype.set if):
162         * inspector/front-end/SettingsScreen.js: Added.
163         (WebInspector.SettingsScreen):
164         (WebInspector.SettingsScreen.prototype._appendSection):
165         (WebInspector.SettingsScreen.prototype._columnElement):
166         (WebInspector.SettingsScreen.prototype._createCheckboxSetting.get listener):
167         (WebInspector.SettingsScreen.prototype._createRadioSetting):
168         * inspector/front-end/ShortcutsScreen.js: Renamed from Source/WebCore/inspector/front-end/ShortcutsHelp.js.
169         (WebInspector.ShortcutsScreen):
170         * inspector/front-end/StylesSidebarPane.js:
171         (WebInspector.StylesSidebarPane.prototype.registerShortcuts):
172         * inspector/front-end/WatchExpressionsSidebarPane.js:
173         * inspector/front-end/WebKit.qrc:
174         * inspector/front-end/helpScreen.css:
175         (.help-window-main):
176         (body.attached .help-window-main):
177         (.help-window-caption):
178         (body.attached .help-window-caption):
179         (.help-content):
180         (.help-close-button):
181         (body.attached .help-close-button):
182         (body.attached .help-content):
183         (.help-table):
184         (body.platform-mac .help-key):
185         (.help-combine-keys):
186         (.help-content p):
187         (.help-content fieldset):
188         (.help-content fieldset p):
189         (.help-content p.help-section):
190         (.help-section-title):
191         (.help-content input[type=checkbox]):
192         * inspector/front-end/inspector.css:
193         (button.settings-status-bar-item):
194         (.settings-status-bar-item .glyph):
195         * inspector/front-end/inspector.html:
196         * inspector/front-end/inspector.js:
197         (WebInspector._createGlobalStatusBarItems):
198         (WebInspector._toggleAttach):
199         (WebInspector._toggleSettings):
200         (WebInspector._registerShortcuts):
201         (WebInspector.documentKeyDown):
202
203 2011-07-04  Vsevolod Vlasov  <vsevik@chromium.org>
204
205         Web Inspector: Resources loaded to Resources Panel from InspectorPageAgent do not have mime type set.
206         https://bugs.webkit.org/show_bug.cgi?id=63701
207
208         Pass cachedResource/documentLoader mimeType from InspectorPageAgent to frontend.
209
210         Reviewed by Yury Semikhatsky.
211
212         Test: http/tests/inspector/resource-tree/resource-tree-mimetype.html
213
214         * inspector/Inspector.json:
215         * inspector/InspectorPageAgent.cpp:
216         (WebCore::InspectorPageAgent::buildObjectForFrame):
217         (WebCore::InspectorPageAgent::buildObjectForFrameTree):
218         * inspector/front-end/ResourceTreeModel.js:
219         (WebInspector.ResourceTreeModel.prototype._addFramesRecursively):
220         (WebInspector.ResourceTreeModel.prototype._createResource):
221
222 2011-07-04  Yury Semikhatsky  <yurys@chromium.org>
223
224         Web Inspector: repeated message counter should be aligned with other message icons
225         https://bugs.webkit.org/show_bug.cgi?id=63901
226
227         Reviewed by Pavel Feldman.
228
229         * inspector/front-end/inspector.css:
230         (.console-message .bubble):
231
232 2011-07-04  Alexander Pavlov  <apavlov@chromium.org>
233
234         Reviewed by Pavel Feldman.
235
236         Web Inspector: Adding new CSS rules should be more discoverable in the UI
237         https://bugs.webkit.org/show_bug.cgi?id=63803
238
239         * inspector/front-end/StylesSidebarPane.js:
240         (WebInspector.StylesSidebarPane.prototype._createNewRule):
241
242 2011-07-04  Danilo Cesar Lemes de Paula  <danilo.cesar@collabora.co.uk>
243
244         [Qt] Fixing build with --media-stream flag enabled
245         https://bugs.webkit.org/show_bug.cgi?id=63831
246
247         Reviewed by Benjamin Poulain.
248
249         * features.pri: Adding support to ENABLE_MEDIA_STREAM flag.
250
251 2011-07-04  Vsevolod Vlasov  <vsevik@chromium.org>
252
253         Reviewed by Yury Semikhatsky.
254
255         Web Inspector: Update network resource url from response data.
256         https://bugs.webkit.org/show_bug.cgi?id=63736
257
258         * inspector/Inspector.json:
259         * inspector/InspectorResourceAgent.cpp:
260         (WebCore::buildObjectForResourceResponse):
261         * inspector/front-end/NetworkManager.js:
262         (WebInspector.NetworkDispatcher.prototype._updateResourceWithResponse):
263
264 2011-07-04  Andrey Kosyakov  <caseq@chromium.org>
265
266         Reviewed by Yury Semikhatsky.
267
268         Web Inspector: [Extensions API] audit formatter names should begin with create
269         https://bugs.webkit.org/show_bug.cgi?id=63802
270
271         * inspector/front-end/ExtensionAPI.js:
272         (WebInspector.injectedExtensionAPI.AuditResultImpl):
273
274 2011-07-03  Dominic Cooney  <dominicc@chromium.org>
275
276         The value property of an indeterminate progress element should be zero
277         https://bugs.webkit.org/show_bug.cgi?id=63861
278
279         Reviewed by Kent Tamura.
280
281         Test: fast/dom/HTMLProgressElement/set-progress-properties.html
282
283         * html/HTMLProgressElement.cpp:
284         (WebCore::HTMLProgressElement::value):
285
286 2011-07-03  Robert Hogan  <robert@webkit.org>
287
288         Restore scroll position on page reloads scheduled by <meta http-equiv="refresh" content="XX"/>
289         https://bugs.webkit.org/show_bug.cgi?id=62482
290
291         If a <meta http-equiv="refresh"> directive schedules a page reload rather than
292         a redirect restore the scroll position after the reload. Do the same on location.reload().
293
294         Reviewed by Adam Barth.
295
296         Tests: http/tests/navigation/scrollstate-after-http-equiv-refresh-fragment-identifier-2.html
297                http/tests/navigation/scrollstate-after-http-equiv-refresh-fragment-identifier.html
298                http/tests/navigation/scrollstate-after-http-equiv-refresh.html
299                http/tests/navigation/scrollstate-after-location-reload.html
300
301         * loader/FrameLoader.cpp:
302         (WebCore::FrameLoader::loadURL):
303         Only make the load FrameLoadTypeSame if it has not already been set as FrameLoadTypeReload*.
304         FrameLoadTypeReload* loads are set through http-equiv refreshes, manual reloads, or location.reload()
305         and honour the user's scroll position in the frame. A FrameLoadTypeSame is for when the frame is loading
306         the same page again, e.g. by clicking a link.
307
308         * loader/NavigationScheduler.cpp:
309         (WebCore::ScheduledRedirect::fire): Tell FrameLoader::changeLocation() if this is a reload.
310
311 2011-07-03  Dirk Schulze  <krit@webkit.org>
312
313         SVGAnimateTransform accumulate=sum restarts on every repeat
314         https://bugs.webkit.org/show_bug.cgi?id=63876
315
316         Reviewed by Nikolas Zimmermann.
317         
318         We applied transforms from previous animation repeats to a transform list. The problem is, that we calculated the current
319         transform based on the percentage of the current repeat count. This causes an animation starting from scale level 0
320         on every repeat. Now I add the repeat count to the current percentage, so that the distance calculation starts from 100% on
321         the first repeat, from 200% on the second and so on.
322
323         Test: svg/animations/svgtransform-animation-1.html
324
325         * svg/SVGAnimateTransformElement.cpp:
326         (WebCore::SVGAnimateTransformElement::calculateAnimatedValue):
327
328 2011-07-03  Sheriff Bot  <webkit.review.bot@gmail.com>
329
330         Unreviewed, rolling out r90342.
331         http://trac.webkit.org/changeset/90342
332         https://bugs.webkit.org/show_bug.cgi?id=63875
333
334         Newly added tests fail on Mac, GTK, and Win7 (Requested by
335         abarth on #webkit).
336
337         * loader/FrameLoader.cpp:
338         (WebCore::FrameLoader::loadURL):
339         * loader/NavigationScheduler.cpp:
340
341 2011-07-03  Robert Hogan  <robert@webkit.org>
342
343         Restore scroll position on page reloads scheduled by <meta http-equiv="refresh" content="XX"/>
344         https://bugs.webkit.org/show_bug.cgi?id=62482
345
346         If a <meta http-equiv="refresh"> directive schedules a page reload rather than
347         a redirect restore the scroll position after the reload. Do the same on location.reload().
348
349         Reviewed by Adam Barth.
350
351         Tests: http/tests/navigation/scrollstate-after-http-equiv-refresh-fragment-identifier-2.html
352                http/tests/navigation/scrollstate-after-http-equiv-refresh-fragment-identifier.html
353                http/tests/navigation/scrollstate-after-http-equiv-refresh.html
354                http/tests/navigation/scrollstate-after-location-reload.html
355
356         * loader/FrameLoader.cpp:
357         (WebCore::FrameLoader::loadURL):
358         Only make the load FrameLoadTypeSame if it has not already been set as FrameLoadTypeReload*.
359         FrameLoadTypeReload* loads are set through http-equiv refreshes, manual reloads, or location.reload()
360         and honour the user's scroll position in the frame. A FrameLoadTypeSame is for when the frame is loading
361         the same page again, e.g. by clicking a link.
362
363         * loader/NavigationScheduler.cpp:
364         (WebCore::ScheduledRedirect::fire): Tell FrameLoader::changeLocation() if this is a reload.
365
366 2011-04-02  Robert Hogan  <robert@webkit.org>
367
368         Reviewed by Benjamin Poulain.
369
370         [Qt] Support third-party cookie policy for Qt clients
371         https://bugs.webkit.org/show_bug.cgi?id=45455
372
373         Identifying third-party cookies is facilitated by API new to QUrl from
374         Qt 4.8: QUrl::topLevelDomain(). This API uses the Mozilla public suffix
375         list to determine the top-level registry-controlled domain of the Url.
376
377         See also: http://gitorious.org/qt/qt/merge_requests/1205
378                    (commit 154402f56dcf8303a6ce601a52215226af8d31ba)
379                   http://bugreports.qt.nokia.com/browse/QTBUG-13601
380
381         Test: http/tests/cookies/strict-third-party-cookie-blocking.html
382
383         * WebCore.pro:
384         * platform/network/qt/ResourceRequestQt.cpp:
385         (WebCore::ResourceRequest::toNetworkRequest):
386         * platform/qt/CookieJarQt.cpp:
387         (WebCore::setCookies):
388         (WebCore::cookies):
389         * platform/qt/ThirdPartyCookiesQt.cpp: Added.
390         (WebCore::cookieJar):
391         (WebCore::isFirstPartyCookie):
392         (WebCore::cookieAllowed):
393         (WebCore::allowThirdPartyCookies):
394         * platform/qt/ThirdPartyCookiesQt.h: Added.
395
396 2011-07-03  Vsevolod Vlasov  <vsevik@chromium.org>
397
398         Reviewed by Alexey Proskuryakov.
399
400         Web Inspector: Preflight OPTIONS requests are not shown on network panel for asynchronous XHRs.
401         https://bugs.webkit.org/show_bug.cgi?id=63712
402
403         Added InspectorInstrumentation calls to preflight OPTIONS requests callbacks in DocumentThreadableLoader.
404
405         * loader/DocumentThreadableLoader.cpp:
406         (WebCore::DocumentThreadableLoader::DocumentThreadableLoader):
407         (WebCore::DocumentThreadableLoader::didReceiveResponse):
408         (WebCore::DocumentThreadableLoader::didReceiveData):
409         (WebCore::DocumentThreadableLoader::didFinishLoading):
410         (WebCore::DocumentThreadableLoader::didFail):
411         (WebCore::DocumentThreadableLoader::loadRequest):
412         * loader/DocumentThreadableLoader.h:
413
414 2011-06-23  Robert Hogan  <robert@webkit.org>
415
416         Reviewed by Simon Hausmann.
417
418         [Qt] Windowless Plugins : <input> cursor blinks even after transferring focus to plugin
419         https://bugs.webkit.org/show_bug.cgi?id=30355
420
421         Test: plugins/mouse-click-plugin-clears-selection.html
422
423         PluginView needs to use page->focusController()->setFocusedNode() when focusing a plugin
424         in order to clear the FrameSelection in the currently focused node. In its platform-specific
425         code Chromium already does this (WebPluginContainerImpl.cpp).
426
427         * WebCore.exp.in: Add symbol for FocusController::setFocusedNode
428         * plugins/PluginView.cpp:
429         (WebCore::PluginView::focusPluginElement): Using FocusController::setFocusedNode() makes
430                                                    the call to FocusController:setFocusedFrame() and Document::setFocusedNode()
431                                                    redundant, since it calls both.
432
433 2011-07-01  Michael Nordman  <michaeln@google.com>
434
435         Reviewed by Darin Fisher.
436
437         [Chromium] FileSystem API can be used to learn about installed software on the user's computer.
438         Added a new MIMETypeRegistry method to return a type based on a well known set of mappings
439         without consulting the OS/registry.
440         https://bugs.webkit.org/show_bug.cgi?id=63220
441
442         No new tests, existing layout tests that invoke file.type apply.
443
444         * fileapi/File.cpp: Refactored the factory methods.
445         (WebCore::createBlobDataForFileWithType):
446         (WebCore::createBlobDataForFile):
447         (WebCore::createBlobDataForFileSystemFile):
448         (WebCore::File::File):
449         * platform/MIMETypeRegistry.cpp: Added getWellKnownMIMETypeForExtension() method.
450         (WebCore::mediaMIMETypeMap):
451         (WebCore::findMimeType):
452         (WebCore::MIMETypeRegistry::getWellKnownMIMETypeForExtension):
453         * platform/MIMETypeRegistry.h:
454         * platform/chromium/MIMETypeRegistryChromium.cpp: Added getWellKnownMIMETypeForExtension() method.
455         (WebCore::MIMETypeRegistry::getMIMETypeForExtension):
456         (WebCore::MIMETypeRegistry::getWellKnownMIMETypeForExtension):
457         (WebCore::findMimeType):
458         * platform/chromium/PlatformBridge.h:
459
460 2011-07-01  Tim Horton  <timothy_horton@apple.com>
461
462         Reviewed by Darin Adler.
463
464         SVG data:image/svg+xml;base64 URLs inside CSS throw mime type warning
465         https://bugs.webkit.org/show_bug.cgi?id=54325
466         
467         Add image/svg+xml to the list of acceptable MIME types for the Image type.
468
469         * inspector/front-end/inspector.js:
470         (WebInspector):
471
472 2011-07-01  Tim Horton  <timothy_horton@apple.com>
473
474         Reviewed by Darin Adler.
475
476         Errors encountered within SVG documents should be reported to the console
477         https://bugs.webkit.org/show_bug.cgi?id=62599
478
479         Add SVGElement::reportAttributeParsingError, which will
480         write a Web Inspector console message if passed an SVGParsingError
481         and the attribute which was being applied, only in the case where
482         there is actually an error.
483
484         Include the SVG document's URI when writing to the Web Inspector
485         console, so that the UI displays both the filename and the line number.
486
487         * svg/SVGDocumentExtensions.cpp:
488         (WebCore::reportMessage):
489         * svg/SVGElement.cpp:
490         (WebCore::SVGElement::reportAttributeParsingError):
491         * svg/SVGElement.h:
492
493 2011-07-01  Scott Byer  <scottbyer@chromium.org>
494
495         Reviewed by Adam Barth.
496
497         Smooth scrolling fixes
498         https://bugs.webkit.org/show_bug.cgi?id=63770
499
500         Tests: Chromium webkit_unit_tests ScrollAnimatorNoneTest.ScrollWheelTrace and .LinuxTrackPadTrace
501
502         Fix issues found in manual testing; distill the traces into unit tests. Fix the issues the tests exposed in the
503         scroll animation code.
504
505         * platform/ScrollAnimatorNone.cpp:
506         (WebCore::ScrollAnimatorNone::PerAxisData::updateDataFromParameters):
507         (WebCore::ScrollAnimatorNone::scroll):
508
509 2011-07-01  Levi Weintraub  <leviw@chromium.org>
510
511         Switch primary virtual layout functions to new layout types
512         https://bugs.webkit.org/show_bug.cgi?id=63852
513
514         Reviewed by Eric Seidel.
515
516         Switching the primary overloaded layout functions over to the new layout unit abstraction.
517
518         No new tests, no functionality changes.
519
520         * html/shadow/MediaControlElements.cpp:
521         (WebCore::RenderMediaVolumeSliderContainer::layout):
522         * page/FrameView.cpp:
523         (WebCore::FrameView::layout):
524         * rendering/AutoTableLayout.cpp:
525         (WebCore::AutoTableLayout::layout):
526         * rendering/FixedTableLayout.cpp:
527         (WebCore::FixedTableLayout::layout):
528         * rendering/RenderBox.cpp:
529         (WebCore::RenderBox::layout):
530         * rendering/RenderFrameSet.cpp:
531         (WebCore::RenderFrameSet::layout):
532         * rendering/RenderMedia.cpp:
533         (WebCore::RenderMedia::layout):
534         * rendering/RenderRubyRun.cpp:
535         (WebCore::RenderRubyRun::layout):
536         * rendering/RenderScrollbarPart.cpp:
537         (WebCore::RenderScrollbarPart::layout):
538         * rendering/RenderSlider.cpp:
539         (WebCore::RenderSlider::layout):
540         * rendering/RenderTable.cpp:
541         (WebCore::RenderTable::layout):
542         * rendering/RenderTableRow.cpp:
543         (WebCore::RenderTableRow::layout):
544         * rendering/RenderTableSection.cpp:
545         (WebCore::RenderTableSection::layout):
546         * rendering/RenderTextControlSingleLine.cpp:
547         (WebCore::RenderTextControlSingleLine::layout):
548         * rendering/RenderView.cpp:
549         (WebCore::RenderView::layout):
550         * rendering/RenderView.h:
551         (WebCore::RenderView::layoutDelta):
552         (WebCore::RenderView::addLayoutDelta):
553         * rendering/mathml/RenderMathMLRoot.cpp:
554         (WebCore::RenderMathMLRoot::layout):
555         * rendering/mathml/RenderMathMLRow.cpp:
556         (WebCore::RenderMathMLRow::layout):
557         * rendering/mathml/RenderMathMLSquareRoot.cpp:
558         (WebCore::RenderMathMLSquareRoot::layout):
559         * rendering/mathml/RenderMathMLSubSup.cpp:
560         (WebCore::RenderMathMLSubSup::layout):
561         * rendering/mathml/RenderMathMLUnderOver.cpp:
562         (WebCore::RenderMathMLUnderOver::layout):
563
564 2011-07-01  Sam Weinig  <sam@webkit.org>
565
566         Reduce parser nesting cap to 512
567         https://bugs.webkit.org/show_bug.cgi?id=63856
568
569         Reviewed by Dan Bernstein.
570
571         Given Firefox's cap of 200, our cap of 2048 seemed a little excessive. Lower
572         the nesting cap to 512 to cover more cases where rending recursion was biting us.
573
574         * page/Settings.h:
575         Reduce the nesting cap to 512.
576
577 2011-07-01  Darin Adler  <darin@apple.com>
578
579         Add change accidentally left out of last commit.
580
581         * rendering/RenderLayerBacking.cpp:
582         (WebCore::RenderLayerBacking::updateContentsScale): Multiply in the
583         backing scale.
584
585 2011-07-01  Darin Adler  <darin@apple.com>
586
587         Consider backing scale when setting up graphics layers
588         https://bugs.webkit.org/show_bug.cgi?id=63848
589
590         Reviewed by Simon Fraser.
591
592         * platform/graphics/ca/GraphicsLayerCA.cpp:
593         (WebCore::GraphicsLayerCA::clampedContentsScaleForScale):
594         Increased the maximum scale since scale factor can now include
595         both page contents scale and backing scale.
596
597         * rendering/RenderLayerBacking.cpp:
598         (WebCore::RenderLayerBacking::createGraphicsLayer): Multiply in the
599         backing scale as well as the page contents scale.
600         (WebCore::RenderLayerBacking::updateForegroundLayer): Ditto.
601         (WebCore::RenderLayerBacking::updateMaskLayer): Ditto.
602         (WebCore::RenderLayerBacking::pageContentsScale): Added.
603         (WebCore::RenderLayerBacking::backingScale): Added.
604         * rendering/RenderLayerBacking.h: Added new private functions.
605
606 2011-07-01  Adele Peterson  <adele@apple.com>
607
608         Reviewed by Darin Adler.
609
610         WebCore part of fix for https://bugs.webkit.org/show_bug.cgi?id=63851
611         <rdar://problem/8981062> Crash when loading a document in an editable WebView that has a subframe with an unstyled body
612
613         No new tests.  I tried to make a test in DumpRenderTree with an editable WebView, 
614         but was unsuccessful in getting the crash to happen in that instance.
615
616         * editing/Editor.cpp: (WebCore::Editor::applyEditingStyleToElement): Add a nil check that exits early, in addition to the ASSERT.
617
618 2011-07-01  Levi Weintraub  <leviw@chromium.org>
619
620         Switch overflow and collapsedMargins to new layout types
621         https://bugs.webkit.org/show_bug.cgi?id=63840
622
623         Reviewed by Eric Seidel.
624
625         Switching overflow and collapsedMargins over to the new layout unit abstraction.
626
627         Also removing an unused function: blockDirectionOverflow
628
629         No new tests, no functionality changes.
630
631         * rendering/RenderBlock.cpp:
632         (WebCore::RenderBlock::collapsedMarginBeforeForChild):
633         (WebCore::RenderBlock::collapsedMarginAfterForChild):
634         * rendering/RenderBlock.h:
635         (WebCore::RenderBlock::collapsedMarginBefore):
636         (WebCore::RenderBlock::collapsedMarginAfter):
637         * rendering/RenderBox.cpp:
638         (WebCore::RenderBox::addOverflowFromChild):
639         (WebCore::RenderBox::addLayoutOverflow):
640         (WebCore::RenderBox::addVisualOverflow):
641         * rendering/RenderBox.h:
642         (WebCore::RenderBox::layoutOverflowRect):
643         (WebCore::RenderBox::minYLayoutOverflow):
644         (WebCore::RenderBox::maxYLayoutOverflow):
645         (WebCore::RenderBox::minXLayoutOverflow):
646         (WebCore::RenderBox::maxXLayoutOverflow):
647         (WebCore::RenderBox::maxLayoutOverflow):
648         (WebCore::RenderBox::logicalLeftLayoutOverflow):
649         (WebCore::RenderBox::logicalRightLayoutOverflow):
650         (WebCore::RenderBox::visualOverflowRect):
651         (WebCore::RenderBox::minYVisualOverflow):
652         (WebCore::RenderBox::maxYVisualOverflow):
653         (WebCore::RenderBox::minXVisualOverflow):
654         (WebCore::RenderBox::maxXVisualOverflow):
655         (WebCore::RenderBox::logicalLeftVisualOverflow):
656         (WebCore::RenderBox::logicalRightVisualOverflow):
657         (WebCore::RenderBox::addOverflowFromChild):
658         (WebCore::RenderBox::collapsedMarginBefore):
659         (WebCore::RenderBox::collapsedMarginAfter):
660         * rendering/RenderOverflow.h:
661         (WebCore::RenderOverflow::RenderOverflow):
662         (WebCore::RenderOverflow::minYLayoutOverflow):
663         (WebCore::RenderOverflow::maxYLayoutOverflow):
664         (WebCore::RenderOverflow::minXLayoutOverflow):
665         (WebCore::RenderOverflow::maxXLayoutOverflow):
666         (WebCore::RenderOverflow::minYVisualOverflow):
667         (WebCore::RenderOverflow::maxYVisualOverflow):
668         (WebCore::RenderOverflow::minXVisualOverflow):
669         (WebCore::RenderOverflow::maxXVisualOverflow):
670         (WebCore::RenderOverflow::setMinYLayoutOverflow):
671         (WebCore::RenderOverflow::setMaxYLayoutOverflow):
672         (WebCore::RenderOverflow::setMinXLayoutOverflow):
673         (WebCore::RenderOverflow::setMaxXLayoutOverflow):
674         (WebCore::RenderOverflow::setMinYVisualOverflow):
675         (WebCore::RenderOverflow::setMaxYVisualOverflow):
676         (WebCore::RenderOverflow::setMinXVisualOverflow):
677         (WebCore::RenderOverflow::setMaxXVisualOverflow):
678         (WebCore::RenderOverflow::layoutOverflowRect):
679         (WebCore::RenderOverflow::visualOverflowRect):
680         (WebCore::RenderOverflow::move):
681         (WebCore::RenderOverflow::addLayoutOverflow):
682         (WebCore::RenderOverflow::addVisualOverflow):
683         (WebCore::RenderOverflow::setLayoutOverflow):
684         (WebCore::RenderOverflow::setVisualOverflow):
685         (WebCore::RenderOverflow::resetLayoutOverflow):
686
687 2011-07-01  Nate Chapin  <japhet@chromium.org>
688
689         Ensure WorkerScriptLoader::notifyFinished() doesn't re-enter.
690         https://bugs.webkit.org/show_bug.cgi?id=63835
691
692         Reviewed by Dmitry Titov.
693
694         Test: fast/workers/worker-finish-crash.html
695
696         * workers/WorkerScriptLoader.cpp:
697         (WebCore::WorkerScriptLoader::WorkerScriptLoader):
698         (WebCore::WorkerScriptLoader::notifyFinished):
699         * workers/WorkerScriptLoader.h:
700
701 2011-07-01  Adrienne Walker  <enne@google.com>
702
703         [chromium] Upload root layer textures first so that it is less likely to be skipped
704         https://bugs.webkit.org/show_bug.cgi?id=63850
705
706         Reviewed by James Robinson.
707
708         This is a tiny follow-on patch to bug 63760.  If the root layer is not
709         uploaded first, then it may not have enough space to fit into texture
710         memory and might be skipped, leaving a blue background.
711
712         * platform/graphics/chromium/LayerRendererChromium.cpp:
713         (WebCore::LayerRendererChromium::updateLayers):
714
715 2011-07-01  Mihai Parparita  <mihaip@chromium.org>
716
717         Reviewed by Darin Fisher.
718
719         location.replace with a hash change does not update the history entry
720         https://bugs.webkit.org/show_bug.cgi?id=63777
721
722         location.replace('#foo') would not update the HistoryItem with the
723         new URL, thus navigating back to the page would use the previous
724         URL, even though it had been replaced. Make
725         HistoryController::updateForSameDocumentNavigation mirror 
726         HistoryController::replaceState.
727
728         Test: fast/history/location-replace-hash.html
729
730         * loader/HistoryController.cpp:
731         (WebCore::HistoryController::updateForSameDocumentNavigation):
732
733 2011-07-01  Ryosuke Niwa  <rniwa@webkit.org>
734
735         Reviewed by Ojan Vafai.
736
737         Move m_isDirectional from FrameSelection to VisibleSelection
738         https://bugs.webkit.org/show_bug.cgi?id=63473
739
740         Move m_isDirectional from FrameSelection to VisibleSelection.
741
742         Also fixed a bug that WebKit does not preserve non-directional selection after undo.
743
744         Test: editing/selection/directionality-after-undo-replace.html
745
746         * WebCore.exp.in: Updated the signature of setSelection.
747         * editing/FrameSelection.cpp:
748         (WebCore::FrameSelection::FrameSelection): Removed the call to setIsDirectional.
749         (WebCore::shouldAlwaysUseDirectionalSelection): Added.
750         (WebCore::FrameSelection::setSelection): No longer takes DirectionalityPolicy.
751         Calls setIsDirectional(true) when the platform doesn't support non-directional selection.
752         Passes align and granularity to setSelection of the base end point as expected.
753         No longer updates granularity when updating the selection of a different frame.
754         (WebCore::FrameSelection::willBeModified): Calls VisibleSelection::isDirectional().
755         (WebCore::FrameSelection::modify): No longer calls trialFrameSelection.setIsDirectional
756         because the directionality is passed from m_selection automatically.
757         Also calls shouldAlwaysUseDirectionalSelection.
758         * editing/FrameSelection.h: Remove m_isDirectional. Make all boolean bit fields.
759         (WebCore::FrameSelection::setSelection): No longer takes DirectionalityPolicy.
760         * editing/VisibleSelection.cpp:
761         (WebCore::VisibleSelection::VisibleSelection): Initializes m_isDirectional to true.
762         This should be changed to false to fix the bug 60529.
763         * editing/VisibleSelection.h:
764         (WebCore::VisibleSelection::isDirectional): Added.
765         (WebCore::VisibleSelection::setIsDirectional): Added.
766         * page/EventHandler.cpp:
767         (WebCore::setNonDirectionalSelectionIfNeeded): Creates a non-directional selection instead of
768         calling setSelection with MakeNonDirectionalSelection.
769         (WebCore::EventHandler::handleMousePressEventSingleClick): Remove the call to setIsDirectional
770         because it already calls setNonDirectionalSelectionIfNeeded.
771
772 2011-07-01  Tony Chang  <tony@chromium.org>
773
774         cleanup of flexbox and marquee data naming in StyleRareNonInheritedData
775         https://bugs.webkit.org/show_bug.cgi?id=63827
776
777         Reviewed by Ojan Vafai.
778
779         * rendering/style/RenderStyle.cpp:
780         (WebCore::RenderStyle::RenderStyle):
781         (WebCore::RenderStyle::diff):
782         * rendering/style/RenderStyle.h:
783         (WebCore::InheritedFlags::boxAlign):
784         (WebCore::InheritedFlags::boxFlex):
785         (WebCore::InheritedFlags::boxFlexGroup):
786         (WebCore::InheritedFlags::boxLines):
787         (WebCore::InheritedFlags::boxOrdinalGroup):
788         (WebCore::InheritedFlags::boxOrient):
789         (WebCore::InheritedFlags::boxPack):
790         (WebCore::InheritedFlags::marqueeIncrement):
791         (WebCore::InheritedFlags::marqueeSpeed):
792         (WebCore::InheritedFlags::marqueeLoopCount):
793         (WebCore::InheritedFlags::marqueeBehavior):
794         (WebCore::InheritedFlags::marqueeDirection):
795         (WebCore::InheritedFlags::setBoxAlign):
796         (WebCore::InheritedFlags::setBoxFlex):
797         (WebCore::InheritedFlags::setBoxFlexGroup):
798         (WebCore::InheritedFlags::setBoxLines):
799         (WebCore::InheritedFlags::setBoxOrdinalGroup):
800         (WebCore::InheritedFlags::setBoxOrient):
801         (WebCore::InheritedFlags::setBoxPack):
802         (WebCore::InheritedFlags::setMarqueeIncrement):
803         (WebCore::InheritedFlags::setMarqueeSpeed):
804         (WebCore::InheritedFlags::setMarqueeDirection):
805         (WebCore::InheritedFlags::setMarqueeBehavior):
806         (WebCore::InheritedFlags::setMarqueeLoopCount):
807         * rendering/style/StyleRareNonInheritedData.cpp:
808         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
809         (WebCore::StyleRareNonInheritedData::operator==):
810         * rendering/style/StyleRareNonInheritedData.h:
811             flexibleBox -> m_deprecatedFlexibleBox and marquee to m_marquee
812
813 2011-07-01  Mike Reed  <reed@google.com>
814
815         Stop using deprecated SkDeviceFactory API
816         https://bugs.webkit.org/show_bug.cgi?id=63488
817
818         Reviewed by James Robinson.
819
820         No new tests. Check-point for removing Factory API from Skia
821
822         * platform/graphics/chromium/LayerTextureUpdaterCanvas.cpp:
823         (WebCore::LayerTextureUpdaterSkPicture::createFrameBuffer):
824         * platform/graphics/skia/PlatformContextSkia.cpp:
825         (WebCore::PlatformContextSkia::setSharedGraphicsContext3D):
826
827 2011-07-01  Jeffrey Pfau  <jpfau@apple.com>
828
829         Reviewed by Adam Barth.
830
831         Move XMLDocumentParser to new folder xml/parser/
832         https://bugs.webkit.org/show_bug.cgi?id=63666
833
834         * CMakeLists.txt:
835         * GNUmakefile.am:
836         * GNUmakefile.list.am:
837         * WebCore.gyp/WebCore.gyp:
838         * WebCore.gypi:
839         * WebCore.pri:
840         * WebCore.pro:
841         * WebCore.vcproj/WebCore.vcproj:
842         * WebCore.vcproj/WebCoreCommon.vsprops:
843         * WebCore.vcproj/copyForwardingHeaders.cmd:
844         * WebCore.xcodeproj/project.pbxproj:
845         * xml/parser/XMLDocumentParser.cpp:
846         (WebCore::XMLDocumentParser::pushCurrentNode):
847         (WebCore::XMLDocumentParser::popCurrentNode):
848         (WebCore::XMLDocumentParser::clearCurrentNodeStack):
849         (WebCore::XMLDocumentParser::insert):
850         (WebCore::XMLDocumentParser::append):
851         (WebCore::XMLDocumentParser::handleError):
852         (WebCore::XMLDocumentParser::enterText):
853         (WebCore::toString):
854         (WebCore::XMLDocumentParser::exitText):
855         (WebCore::XMLDocumentParser::detach):
856         (WebCore::XMLDocumentParser::end):
857         (WebCore::XMLDocumentParser::finish):
858         (WebCore::XMLDocumentParser::finishWasCalled):
859         (WebCore::createXHTMLParserErrorHeader):
860         (WebCore::XMLDocumentParser::insertErrorMessageBlock):
861         (WebCore::XMLDocumentParser::notifyFinished):
862         (WebCore::XMLDocumentParser::isWaitingForScripts):
863         (WebCore::XMLDocumentParser::pauseParsing):
864         (WebCore::XMLDocumentParser::parseDocumentFragment):
865         * xml/parser/XMLDocumentParser.h:
866         (WebCore::XMLParserContext::context):
867         (WebCore::XMLParserContext::XMLParserContext):
868         (WebCore::XMLDocumentParser::create):
869         (WebCore::XMLDocumentParser::setIsXHTMLDocument):
870         (WebCore::XMLDocumentParser::isXHTMLDocument):
871         (WebCore::XMLDocumentParser::setIsXHTMLMPDocument):
872         (WebCore::XMLDocumentParser::isXHTMLMPDocument):
873         (WebCore::XMLDocumentParser::wellFormed):
874         (WebCore::XMLDocumentParser::context):
875         * xml/parser/XMLDocumentParserLibxml2.cpp:
876         (WebCore::PendingCallbacks::~PendingCallbacks):
877         (WebCore::PendingCallbacks::create):
878         (WebCore::PendingCallbacks::appendStartElementNSCallback):
879         (WebCore::PendingCallbacks::appendEndElementNSCallback):
880         (WebCore::PendingCallbacks::appendCharactersCallback):
881         (WebCore::PendingCallbacks::appendProcessingInstructionCallback):
882         (WebCore::PendingCallbacks::appendCDATABlockCallback):
883         (WebCore::PendingCallbacks::appendCommentCallback):
884         (WebCore::PendingCallbacks::appendInternalSubsetCallback):
885         (WebCore::PendingCallbacks::appendErrorCallback):
886         (WebCore::PendingCallbacks::callAndRemoveFirstCallback):
887         (WebCore::PendingCallbacks::isEmpty):
888         (WebCore::PendingCallbacks::PendingCallbacks):
889         (WebCore::PendingCallbacks::PendingCallback::~PendingCallback):
890         (WebCore::PendingCallbacks::PendingStartElementNSCallback::~PendingStartElementNSCallback):
891         (WebCore::PendingCallbacks::PendingStartElementNSCallback::call):
892         (WebCore::PendingCallbacks::PendingEndElementNSCallback::call):
893         (WebCore::PendingCallbacks::PendingCharactersCallback::~PendingCharactersCallback):
894         (WebCore::PendingCallbacks::PendingCharactersCallback::call):
895         (WebCore::PendingCallbacks::PendingProcessingInstructionCallback::~PendingProcessingInstructionCallback):
896         (WebCore::PendingCallbacks::PendingProcessingInstructionCallback::call):
897         (WebCore::PendingCallbacks::PendingCDATABlockCallback::~PendingCDATABlockCallback):
898         (WebCore::PendingCallbacks::PendingCDATABlockCallback::call):
899         (WebCore::PendingCallbacks::PendingCommentCallback::~PendingCommentCallback):
900         (WebCore::PendingCallbacks::PendingCommentCallback::call):
901         (WebCore::PendingCallbacks::PendingInternalSubsetCallback::~PendingInternalSubsetCallback):
902         (WebCore::PendingCallbacks::PendingInternalSubsetCallback::call):
903         (WebCore::matchFunc):
904         (WebCore::OffsetBuffer::OffsetBuffer):
905         (WebCore::OffsetBuffer::readOutBytes):
906         (WebCore::switchToUTF16):
907         (WebCore::shouldAllowExternalLoad):
908         (WebCore::openFunc):
909         (WebCore::readFunc):
910         (WebCore::writeFunc):
911         (WebCore::closeFunc):
912         (WebCore::errorFunc):
913         (WebCore::XMLParserContext::createStringParser):
914         (WebCore::XMLParserContext::createMemoryParser):
915         (WebCore::XMLDocumentParser::supportsXMLVersion):
916         (WebCore::XMLDocumentParser::XMLDocumentParser):
917         (WebCore::XMLParserContext::~XMLParserContext):
918         (WebCore::XMLDocumentParser::~XMLDocumentParser):
919         (WebCore::XMLDocumentParser::doWrite):
920         (WebCore::toString):
921         (WebCore::toAtomicString):
922         (WebCore::handleElementNamespaces):
923         (WebCore::handleElementAttributes):
924         (WebCore::XMLDocumentParser::startElementNs):
925         (WebCore::XMLDocumentParser::endElementNs):
926         (WebCore::XMLDocumentParser::characters):
927         (WebCore::XMLDocumentParser::error):
928         (WebCore::XMLDocumentParser::processingInstruction):
929         (WebCore::XMLDocumentParser::cdataBlock):
930         (WebCore::XMLDocumentParser::comment):
931         (WebCore::XMLDocumentParser::startDocument):
932         (WebCore::XMLDocumentParser::endDocument):
933         (WebCore::XMLDocumentParser::internalSubset):
934         (WebCore::getParser):
935         (WebCore::hackAroundLibXMLEntityBug):
936         (WebCore::startElementNsHandler):
937         (WebCore::endElementNsHandler):
938         (WebCore::charactersHandler):
939         (WebCore::processingInstructionHandler):
940         (WebCore::cdataBlockHandler):
941         (WebCore::commentHandler):
942         (WebCore::warningHandler):
943         (WebCore::fatalErrorHandler):
944         (WebCore::normalErrorHandler):
945         (WebCore::sharedXHTMLEntity):
946         (WebCore::getXHTMLEntity):
947         (WebCore::getEntityHandler):
948         (WebCore::startDocumentHandler):
949         (WebCore::endDocumentHandler):
950         (WebCore::internalSubsetHandler):
951         (WebCore::externalSubsetHandler):
952         (WebCore::ignorableWhitespaceHandler):
953         (WebCore::XMLDocumentParser::initializeParserContext):
954         (WebCore::XMLDocumentParser::doEnd):
955         (WebCore::xmlDocPtrForString):
956         (WebCore::XMLDocumentParser::lineNumber):
957         (WebCore::XMLDocumentParser::columnNumber):
958         (WebCore::XMLDocumentParser::textPosition):
959         (WebCore::XMLDocumentParser::textPositionOneBased):
960         (WebCore::XMLDocumentParser::stopParsing):
961         (WebCore::XMLDocumentParser::resumeParsing):
962         (WebCore::XMLDocumentParser::appendFragmentSource):
963         (WebCore::attributesStartElementNsHandler):
964         (WebCore::parseAttributes):
965         * xml/parser/XMLDocumentParserQt.cpp:
966         (WebCore::EntityResolver::resolveUndeclaredEntity):
967         (WebCore::XMLDocumentParser::supportsXMLVersion):
968         (WebCore::XMLDocumentParser::XMLDocumentParser):
969         (WebCore::XMLDocumentParser::~XMLDocumentParser):
970         (WebCore::XMLDocumentParser::doWrite):
971         (WebCore::XMLDocumentParser::initializeParserContext):
972         (WebCore::XMLDocumentParser::doEnd):
973         (WebCore::XMLDocumentParser::lineNumber):
974         (WebCore::XMLDocumentParser::columnNumber):
975         (WebCore::XMLDocumentParser::textPosition):
976         (WebCore::XMLDocumentParser::textPositionOneBased):
977         (WebCore::XMLDocumentParser::stopParsing):
978         (WebCore::XMLDocumentParser::resumeParsing):
979         (WebCore::XMLDocumentParser::appendFragmentSource):
980         (WebCore::attributesStartElementNsHandler):
981         (WebCore::parseAttributes):
982         (WebCore::prefixFromQName):
983         (WebCore::handleElementNamespaces):
984         (WebCore::handleElementAttributes):
985         (WebCore::XMLDocumentParser::parse):
986         (WebCore::XMLDocumentParser::startDocument):
987         (WebCore::XMLDocumentParser::parseStartElement):
988         (WebCore::XMLDocumentParser::parseEndElement):
989         (WebCore::XMLDocumentParser::parseCharacters):
990         (WebCore::XMLDocumentParser::parseProcessingInstruction):
991         (WebCore::XMLDocumentParser::parseCdata):
992         (WebCore::XMLDocumentParser::parseComment):
993         (WebCore::XMLDocumentParser::endDocument):
994         (WebCore::XMLDocumentParser::hasError):
995         (WebCore::XMLDocumentParser::parseDtd):
996         * xml/parser/XMLDocumentParserScope.cpp:
997         (WebCore::XMLDocumentParserScope::XMLDocumentParserScope):
998         (WebCore::XMLDocumentParserScope::~XMLDocumentParserScope):
999
1000 2011-07-01  Vangelis Kokkevis  <vangelis@chromium.org>
1001
1002         Reviewed by James Robinson.
1003
1004         [chromium] Reserve all tile textures at layer update time to guarantee
1005         that they will be available at draw time.
1006         https://bugs.webkit.org/show_bug.cgi?id=63760
1007
1008         In addition, this patch unreserves textures used by RenderSurface's
1009         right after the RenderSurface has been used to free up memory for
1010         subsequent RenderSurfaces.
1011         
1012         This patch also "fixes" the pages that display a blue background when
1013         running out of texture memory as the root layer tiles get reserved first
1014         and are guaranteed to get textures.
1015
1016         * platform/graphics/chromium/ContentLayerChromium.cpp:
1017         (WebCore::ContentLayerChromium::ContentLayerChromium):
1018         (WebCore::ContentLayerChromium::visibleLayerRect):
1019         (WebCore::ContentLayerChromium::setIsMask):
1020         * platform/graphics/chromium/ContentLayerChromium.h:
1021         * platform/graphics/chromium/ImageLayerChromium.cpp:
1022         (WebCore::ImageLayerChromium::paintContentsIfDirty):
1023         * platform/graphics/chromium/LayerRendererChromium.cpp:
1024         (WebCore::LayerRendererChromium::paintLayerContents):
1025         (WebCore::LayerRendererChromium::drawLayer):
1026         (WebCore::LayerRendererChromium::initializeSharedObjects):
1027         * platform/graphics/chromium/LayerTexture.cpp:
1028         (WebCore::LayerTexture::unreserve):
1029         * platform/graphics/chromium/LayerTexture.h:
1030         * platform/graphics/chromium/LayerTilerChromium.cpp:
1031         (WebCore::LayerTilerChromium::prepareToUpdate):
1032         (WebCore::LayerTilerChromium::updateRect):
1033         (WebCore::LayerTilerChromium::drawTiles):
1034         * platform/graphics/chromium/RenderSurfaceChromium.cpp:
1035         (WebCore::RenderSurfaceChromium::releaseContentsTexture):
1036         * platform/graphics/chromium/RenderSurfaceChromium.h:
1037         * platform/graphics/chromium/TextureManager.cpp:
1038         (WebCore::TextureManager::unprotectTexture):
1039         * platform/graphics/chromium/TextureManager.h:
1040
1041 2011-07-01  Jungshik Shin  <jshin@chromium.org>
1042
1043         Reviewed by Alexey Proskuryakov.
1044
1045         Allow generic font family settings per script code.
1046         https://bugs.webkit.org/show_bug.cgi?id=20797
1047
1048         Make generic font family getters/setters accept an additional
1049         argument (script code). It has a default value so that if an embedder
1050         does not have/want a per-script font family setting, call-sites
1051         don't have to be changed.
1052         This is to prepare for fixing bug 10874 (font selection is not
1053         language-dependent) and bug 18085.
1054
1055         uscript.h has been updated to that of ICU 3.6 (the version of ICU on
1056         Mac OS 10.5)
1057
1058         There should be no change in layout and no new layout test
1059         is added.
1060
1061         * WebCore.exp.in:
1062         * icu/unicode/uscript.h: updated to ICU 4.6
1063         * page/Settings.cpp:
1064         (WebCore::setGenericFontFamilyMap): helper to set generic family per script
1065         (WebCore::getGenericFontFamilyForScript): helper function used by getters for fooFontFamily.
1066         (WebCore::Settings::standardFontFamily):
1067         (WebCore::Settings::setStandardFontFamily):
1068         (WebCore::Settings::fixedFontFamily):
1069         (WebCore::Settings::setFixedFontFamily):
1070         (WebCore::Settings::serifFontFamily):
1071         (WebCore::Settings::setSerifFontFamily):
1072         (WebCore::Settings::sansSerifFontFamily):
1073         (WebCore::Settings::setSansSerifFontFamily):
1074         (WebCore::Settings::cursiveFontFamily):
1075         (WebCore::Settings::setCursiveFontFamily):
1076         (WebCore::Settings::fantasyFontFamily):
1077         (WebCore::Settings::setFantasyFontFamily):
1078         * page/Settings.h: setter and getter for FooFontFamily have a new optional argument, scriptCode.
1079
1080 2011-07-01  Tony Chang  <tony@chromium.org>
1081
1082         Reviewed by Ojan Vafai.
1083
1084         rename StyleFlexibleBoxData to StyleDeprecatedFlexibleBoxData
1085         https://bugs.webkit.org/show_bug.cgi?id=63773
1086
1087         We will have a similar struct to hold CSS3 flexible box data, so
1088         this makes way for the new class.
1089         I will rename the member variable in RenderStyle.h in a follow up
1090         change.
1091
1092         * CMakeLists.txt:
1093         * GNUmakefile.list.am:
1094         * WebCore.gypi:
1095         * WebCore.order:
1096         * WebCore.pro:
1097         * WebCore.vcproj/WebCore.vcproj:
1098         * WebCore.xcodeproj/project.pbxproj:
1099         * rendering/style/RenderStyle.h:
1100         * rendering/style/StyleAllInOne.cpp:
1101         * rendering/style/StyleDeprecatedFlexibleBoxData.cpp:
1102         (WebCore::StyleDeprecatedFlexibleBoxData::StyleDeprecatedFlexibleBoxData):
1103         (WebCore::StyleDeprecatedFlexibleBoxData::operator==):
1104         * rendering/style/StyleDeprecatedFlexibleBoxData.h:
1105         (WebCore::StyleDeprecatedFlexibleBoxData::create):
1106         (WebCore::StyleDeprecatedFlexibleBoxData::copy):
1107         (WebCore::StyleDeprecatedFlexibleBoxData::operator!=):
1108         * rendering/style/StyleRareNonInheritedData.h:
1109
1110 2011-07-01  Hans Wennborg  <hans@chromium.org>
1111
1112         Reviewed by Tony Chang.
1113
1114         IndexedDB: Fix constants for webkitIDBTransaction.READ_WRITE/READ_ONLY
1115         https://bugs.webkit.org/show_bug.cgi?id=63754
1116
1117         Fix values for the webkitIDBTransaction.READ_WRITE/READ_ONLY
1118         constants. Douglas Stockwell pointed out that these were reverse
1119         of what the spec says.
1120
1121         * storage/IDBTransaction.h:
1122         * storage/IDBTransaction.idl:
1123
1124 2011-07-01  Levi Weintraub  <leviw@chromium.org>
1125
1126         Reviewed by Eric Seidel.
1127
1128         Switch positionForPoint to new layout types
1129         https://bugs.webkit.org/show_bug.cgi?id=63774
1130
1131         Switching positionForPoint functions to new layout unit abstraction.
1132
1133         No new tests, no functionality changes.
1134
1135         * rendering/RenderBR.cpp:
1136         (WebCore::RenderBR::positionForPoint):
1137         * rendering/RenderBR.h:
1138         * rendering/RenderBlock.cpp:
1139         (WebCore::RenderBlock::positionForPoint):
1140         * rendering/RenderBlock.h:
1141         * rendering/RenderBox.cpp:
1142         (WebCore::RenderBox::positionForPoint):
1143         * rendering/RenderBox.h:
1144         * rendering/RenderFileUploadControl.cpp:
1145         (WebCore::RenderFileUploadControl::positionForPoint):
1146         * rendering/RenderFileUploadControl.h:
1147         * rendering/RenderInline.cpp:
1148         (WebCore::RenderInline::positionForPoint):
1149         * rendering/RenderInline.h:
1150         * rendering/RenderObject.cpp:
1151         (WebCore::RenderObject::positionForPoint):
1152         * rendering/RenderReplaced.cpp:
1153         (WebCore::RenderReplaced::positionForPoint):
1154         * rendering/RenderReplaced.h:
1155         * rendering/RenderText.cpp:
1156         (WebCore::RenderText::positionForPoint):
1157         * rendering/RenderText.h:
1158         * rendering/RenderTextControlSingleLine.cpp:
1159         (WebCore::RenderTextControlInnerBlock::positionForPoint):
1160         * rendering/RenderTextControlSingleLine.h:
1161         * rendering/svg/RenderSVGInlineText.cpp:
1162         (WebCore::RenderSVGInlineText::positionForPoint):
1163         * rendering/svg/RenderSVGInlineText.h:
1164         * rendering/svg/RenderSVGText.cpp:
1165         (WebCore::RenderSVGText::positionForPoint):
1166         * rendering/svg/RenderSVGText.h:
1167
1168 2011-07-01  Andrew Scherkus  <scherkus@chromium.org>
1169
1170         Reviewed by Darin Fisher.
1171
1172         Re-enable WTF_USE_WEBAUDIO_FFMPEG for Chromium
1173         https://bugs.webkit.org/show_bug.cgi?id=63783
1174
1175         * WebCore.gyp/WebCore.gyp:
1176
1177 2011-07-01  Patrick Gansterer  <paroga@webkit.org>
1178
1179         Reviewed by Daniel Bates.
1180
1181         [CMake] Don't compile unused bindings
1182         https://bugs.webkit.org/show_bug.cgi?id=63741
1183
1184         * UseJSC.cmake: Added IF (ENABLE_XXX) around files.
1185
1186 2011-07-01  Joone Hur  <joone.hur@collabora.co.uk>
1187
1188         Reviewed by Martin Robinson.
1189
1190         [GTK] Add DeviceOrientation feature
1191         https://bugs.webkit.org/show_bug.cgi?id=63720
1192
1193         Add DeviceMotionClientGtk.cpp and DeviceOrientationClientGtk.cpp to WebKitGtk+ build.
1194
1195         * GNUmakefile.am: Add DeviceMotionClientGtk.cpp, DeviceOrientationClientGtk.cpp.
1196
1197 2011-07-01  Kentaro Hara  <haraken@google.com>
1198
1199         Reviewed by Kent Tamura.
1200
1201         Disallow clicking an [X] button in 'search' input forms when 'disabled' attribute or 'readonly' attribute is set.
1202         https://bugs.webkit.org/show_bug.cgi?id=63709
1203
1204         Ignore a cancel button event on a 'search' input form if 'disabled' attribute or
1205         'readonly' attribute is set to the input form.
1206
1207         Test: fast/forms/search-disabled-readonly.html
1208
1209         * html/shadow/TextControlInnerElements.cpp:
1210         (WebCore::SearchFieldCancelButtonElement::defaultEventHandler):
1211
1212 2011-06-30  Mikhail Naganov  <mnaganov@chromium.org>
1213
1214         Reviewed by Yury Semikhatsky.
1215
1216         Web Inspector: [Chromium] Fix heap snapshots in a remote debugging session from Safari.
1217         https://bugs.webkit.org/show_bug.cgi?id=63703
1218
1219         * inspector/front-end/HeapSnapshotWorker.js:
1220         (.Function.prototype.bind.return.bound):
1221         (.Function.prototype.bind):
1222
1223 2011-07-01  Dirk Schulze  <krit@webkit.org>
1224
1225         Reviewed by Nikolas Zimmermann.
1226
1227         SVGAnimatedLengthListAnimator does not take additive="sum" into accout
1228         https://bugs.webkit.org/show_bug.cgi?id=63705
1229
1230         Added support for additive animations to SVGAnimatedLengthListAnimator. Don't clear the animatedList if not
1231         necessary.
1232
1233         SVGLength unit gets animated as well now. We used to take the unit of 'from' all the time.
1234
1235         Tests: svg/animations/svglength-animation-unitType.html
1236                svg/animations/svglengthlist-animation-5.html
1237
1238         * svg/SVGAnimatedLength.cpp:
1239         (WebCore::SVGAnimatedLengthAnimator::calculateAnimatedValue): Code clean-up and support for unit animation.
1240         * svg/SVGAnimatedLengthList.cpp: Add support for additive animations.
1241         (WebCore::SVGAnimatedLengthListAnimator::calculateAnimatedValue):
1242         * svg/SVGLength.cpp:
1243         (WebCore::SVGLength::SVGLength):
1244         (WebCore::SVGLength::setValue): New setValue that gets the LengthType and UnitType as argument for supporting animations of units as well.
1245         * svg/SVGLength.h:
1246
1247 2011-07-01  Dirk Schulze  <krit@webkit.org>
1248
1249         Reviewed by Nikolas Zimmermann.
1250
1251         SVGAnimatedType should support SVGAnimatedInteger animation
1252         https://bugs.webkit.org/show_bug.cgi?id=63789
1253         
1254         Follow up of "SVGAnimation should use direct unit animation for SVGLength": https://bugs.webkit.org/show_bug.cgi?id=61368
1255         This patch continues the conversion to the new concept of SVGAnimatorFactory with SVGAnimatedInteger.
1256         
1257         SVGAnimatedInteger is used for some attributes of SVG filter effects. The animation of those attributes work after this patch.
1258
1259         Test: svg/animations/svginteger-animation-1.html
1260
1261         * CMakeLists.txt: Added file to build system.
1262         * GNUmakefile.list.am: Ditto.
1263         * WebCore.gypi: Ditto.
1264         * WebCore.pro: Ditto.
1265         * WebCore.xcodeproj/project.pbxproj: Ditto.
1266         * svg/SVGAllInOne.cpp: Ditto.
1267         * svg/SVGAnimateElement.cpp: Make use of AnimatedInteger.
1268         (WebCore::SVGAnimateElement::determineAnimatedAttributeType):
1269         (WebCore::SVGAnimateElement::calculateAnimatedValue):
1270         (WebCore::SVGAnimateElement::calculateFromAndToValues):
1271         (WebCore::SVGAnimateElement::calculateFromAndByValues):
1272         (WebCore::SVGAnimateElement::resetToBaseValue):
1273         (WebCore::SVGAnimateElement::applyResultsToTarget):
1274         (WebCore::SVGAnimateElement::calculateDistance):
1275         * svg/SVGAnimatedInteger.cpp: Added. The new animator for SVGAnimatedInteger.
1276         (WebCore::SVGAnimatedIntegerAnimator::SVGAnimatedIntegerAnimator):
1277         (WebCore::SVGAnimatedIntegerAnimator::constructFromString):
1278         (WebCore::SVGAnimatedIntegerAnimator::calculateFromAndToValues):
1279         (WebCore::SVGAnimatedIntegerAnimator::calculateFromAndByValues):
1280         (WebCore::SVGAnimatedIntegerAnimator::calculateAnimatedValue):
1281         (WebCore::SVGAnimatedIntegerAnimator::calculateDistance):
1282         * svg/SVGAnimatedInteger.h:
1283         (WebCore::SVGAnimatedIntegerAnimator::~SVGAnimatedIntegerAnimator):
1284         * svg/SVGAnimatedType.cpp: Added handler for AnimatedInteger.
1285         (WebCore::SVGAnimatedType::~SVGAnimatedType):
1286         (WebCore::SVGAnimatedType::createInteger):
1287         (WebCore::SVGAnimatedType::integer):
1288         (WebCore::SVGAnimatedType::valueAsString):
1289         (WebCore::SVGAnimatedType::setValueAsString):
1290         * svg/SVGAnimatedType.h:
1291         * svg/SVGAnimatorFactory.h:
1292         (WebCore::SVGAnimatorFactory::create):
1293
1294 2011-06-30  Eugene Klyuchnikov  <eustas.bug@gmail.com>
1295
1296         Reviewed by Pavel Feldman.
1297
1298         WebInspector: Performance / memory allocation issue in WebInspector.TextEditorModel.prototype._replaceTabsIfNeeded
1299         https://bugs.webkit.org/show_bug.cgi?id=40447
1300
1301         Test: inspector/editor/text-editor-model-replace-tabs.html
1302
1303         * inspector/front-end/TextEditorModel.js:
1304         (WebInspector.TextEditorModel.prototype._replaceTabsIfNeeded): avoid looped production of tail substrings 
1305
1306 2011-06-30  Kent Tamura  <tkent@chromium.org>
1307
1308         Reviewed by Tony Chang.
1309
1310         [Chromium] Input type="range" slider thumb is rendered upside down on Mac OS X.
1311         https://bugs.webkit.org/show_bug.cgi?id=63697
1312
1313         http://trac.webkit.org/changeset/86261 added a thumb flipping code
1314         for Mac-WebKit2. Chromium also needs it.
1315
1316         * rendering/RenderThemeMac.mm:
1317         (WebCore::RenderThemeMac::paintSliderThumb): Always flip vertically on Chromium.
1318
1319 2011-06-30  Kenichi Ishibashi  <bashi@chromium.org>
1320
1321         Reviewed by Simon Fraser.
1322
1323         [Chromium] -webkit-text-stroke doesn't affect with non-zero width border property
1324         https://bugs.webkit.org/show_bug.cgi?id=63698
1325
1326         Restore the stroke style when it is modified in RenderObject::drawLineForBoxSide() to show text stroke correctly.
1327
1328         Test: platform/chromium/fast/text/text-stroke-with-border.html
1329
1330         * rendering/RenderObject.cpp:
1331         (WebCore::RenderObject::drawLineForBoxSide): Save/restore the stroke style.
1332
1333 2011-06-30  Gwang Yoon Hwang  <ryumiel@company100.net>
1334
1335         Reviewed by Nate Chapin.
1336
1337         [V8] Add ENABLE(INSPECTOR) guards around v8 custom bindings.
1338         https://bugs.webkit.org/show_bug.cgi?id=63442
1339
1340         No new tests needed.
1341
1342         * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
1343         * bindings/v8/custom/V8InspectorFrontendHostCustom.cpp:
1344
1345 2011-06-30  Levi Weintraub  <leviw@chromium.org>
1346
1347         Reviewed by Eric Seidel.
1348
1349         Remove positionForCoordinates
1350         https://bugs.webkit.org/show_bug.cgi?id=63765
1351
1352         Removing positionForCoordinate. We should always use positionForPoint. Also cleaning up
1353         RenderBox's implementation of positionForPoint.
1354
1355         No new tests, there should be no functionality changes.
1356
1357         * accessibility/AccessibilityRenderObject.cpp:
1358         (WebCore::AccessibilityRenderObject::stringValue): Removing dead, or at least untested, code and
1359         adding an ASSERT_NOT_REACHED.
1360         (WebCore::AccessibilityRenderObject::visiblePositionRangeForLine):
1361         * rendering/RenderBox.cpp:
1362         (WebCore::RenderBox::positionForPoint): cleaning up some ugly code.
1363         * rendering/RenderInline.cpp:
1364         (WebCore::RenderInline::positionForPoint):
1365         * rendering/RenderObject.cpp:
1366         * rendering/RenderObject.h:
1367
1368 2011-06-30  Zhenyao Mo  <zmo@google.com>
1369
1370         Reviewed by Kenneth Russell.
1371
1372         Improve WebGL object lifetime management in WebGLRenderingContext
1373         https://bugs.webkit.org/show_bug.cgi?id=63635
1374
1375         * html/canvas/WebGLRenderingContext.cpp:
1376         (WebCore::WebGLRenderingContext::getAttachedShaders): Use cached objects instead of querying the underlying GL.
1377         (WebCore::WebGLRenderingContext::getFramebufferAttachmentParameter): Ditto.
1378         (WebCore::WebGLRenderingContext::detachAndRemoveAllObjects): Multiple loop because objects might be removed from the table within an iteration.
1379         * html/canvas/WebGLRenderingContext.h:
1380
1381 2011-06-30  Rafael Brandao  <rafael.lobo@openbossa.org>
1382
1383         Reviewed by Andreas Kling.
1384
1385         [Qt] build-webkit warning: cannot find file ElementShadowPseudoId.h
1386         https://bugs.webkit.org/show_bug.cgi?id=63747
1387
1388         Removed reference to ElementShadowPseudoId.h that no longer exists.
1389
1390         * WebCore.pro:
1391
1392 2011-06-30  Anders Carlsson  <andersca@apple.com>
1393
1394         Fix clang build.
1395
1396         Remove the complete Widget constructor from the .exp.in file; since Widget is an abstract class,
1397         its complete constructor can never be called and clang has stopped emitting it altogether.
1398
1399         * WebCore.exp.in:
1400
1401 2011-06-30  Levi Weintraub  <leviw@chromium.org>
1402
1403         Reviewed by Eric Seidel.
1404
1405         Switch paintingRootRect and RenderObject repaint methods to new layout types
1406         https://bugs.webkit.org/show_bug.cgi?id=63746
1407
1408         Switching paintingRootRect and RenderObject repaint functions over to the
1409         new layout unit abstraction.
1410
1411         No new tests, no functionality changes.
1412
1413         * rendering/RenderBox.cpp:
1414         (WebCore::RenderBox::repaintDuringLayoutIfMoved):
1415         * rendering/RenderBox.h:
1416         * rendering/RenderObject.cpp:
1417         (WebCore::RenderObject::paintingRootRect):
1418         (WebCore::RenderObject::paint):
1419         (WebCore::RenderObject::repaintUsingContainer):
1420         (WebCore::RenderObject::repaintRectangle):
1421         (WebCore::RenderObject::repaintAfterLayoutIfNeeded):
1422         (WebCore::RenderObject::repaintDuringLayoutIfMoved):
1423         * rendering/RenderObject.h:
1424
1425 2011-06-30  Cary Clark  <caryclark@google.com>
1426
1427         Reviewed by James Robinson.
1428
1429         Use Skia if Skia on Mac Chrome is enabled
1430         https://bugs.webkit.org/show_bug.cgi?id=62999
1431
1432         No new tests. This does not affect existing
1433         functionality.
1434
1435         * WebCore.gyp/WebCore.gyp:
1436         Include Skia and related files and exclude CG
1437         and related files when building Chromium for Skia
1438         on the Mac.
1439
1440         * loader/cache/CachedFont.cpp:
1441         Rename CHROME to CHROMIUM.
1442
1443         * platform/chromium/DragImageRef.h:
1444         * platform/graphics/FloatPoint.h:
1445         * platform/graphics/FloatRect.h:
1446         * platform/graphics/FloatSize.h:
1447         * platform/graphics/FontPlatformData.h:
1448         (WebCore::FontPlatformData::hash):
1449         * platform/graphics/GlyphBuffer.h:
1450         (WebCore::GlyphBuffer::advanceAt):
1451         (WebCore::GlyphBuffer::add):
1452         (WebCore::GlyphBuffer::expandLastAdvance):
1453         * platform/graphics/IntPoint.h:
1454         * platform/graphics/IntRect.h:
1455         * platform/graphics/IntSize.h:
1456         * platform/graphics/SimpleFontData.h:
1457         * platform/graphics/cg/FloatPointCG.cpp:
1458         * platform/graphics/cg/FloatRectCG.cpp:
1459         * platform/graphics/cg/FloatSizeCG.cpp:
1460         * platform/graphics/cg/IntPointCG.cpp:
1461         * platform/graphics/cg/IntRectCG.cpp:
1462         * platform/graphics/cg/IntSizeCG.cpp:
1463         * platform/graphics/mac/FontCustomPlatformData.cpp:
1464         (WebCore::FontCustomPlatformData::~FontCustomPlatformData):
1465         (WebCore::createFontCustomPlatformData):
1466         * platform/graphics/mac/FontCustomPlatformData.h:
1467         (WebCore::FontCustomPlatformData::FontCustomPlatformData):
1468         Ditto.
1469
1470 2011-06-30  Julien Chaffraix  <jchaffraix@webkit.org>
1471
1472         Reviewed by Nikolas Zimmermann.
1473
1474         Update SVG position values on SVG DOM updates
1475         https://bugs.webkit.org/show_bug.cgi?id=62439
1476
1477         Test: svg/custom/crash-textPath-attributes.html
1478
1479         * rendering/svg/RenderSVGInline.cpp:
1480         (WebCore::RenderSVGInline::destroy): Notify our containing RenderSVGText that it needs
1481         to update its positioning information.
1482
1483         * rendering/svg/SVGInlineFlowBox.cpp:
1484         (WebCore::SVGInlineFlowBox::calculateBoundaries): Check the type of the InlineBox
1485         like the rest of the code (fixes an ASSERT_NOT_REACHED in InlineBox::calculateBoudaries).
1486
1487         * rendering/svg/SVGTextLayoutAttributesBuilder.cpp:
1488         (WebCore::SVGTextLayoutAttributesBuilder::buildLayoutAttributesForTextSubtree): Clear
1489         our cached layout attributes every time we invalidate them. This avoids keeping stale
1490         attribute that have a backpointer to a RenderObject.
1491
1492 2011-06-30  Sreeram Ramachandran  <sreeram@chromium.org>
1493
1494         Reviewed by Adam Barth.
1495
1496         Suppress modal JavaScript/HTML dialogs during unload events
1497         https://bugs.webkit.org/show_bug.cgi?id=56397
1498
1499         Allows clients to specify whether to show alerts during unload handlers.
1500         When checking for whether a page dismissal event is being dispatched,
1501         it's important to check all frames on the page (otherwise it becomes a
1502         loophole easily exploited).
1503
1504         Test: fast/loader/page-dismissal-modal-dialogs.html
1505
1506         * loader/FrameLoader.cpp:
1507         (WebCore::FrameLoader::FrameLoader):
1508         (WebCore::FrameLoader::stopLoading):
1509         (WebCore::FrameLoader::loadURL):
1510         (WebCore::FrameLoader::loadWithDocumentLoader):
1511         (WebCore::FrameLoader::stopAllLoaders):
1512         (WebCore::FrameLoader::fireBeforeUnloadEvent):
1513         * loader/FrameLoader.h:
1514         (WebCore::FrameLoader::pageDismissalEventBeingDispatched):
1515         * loader/cache/CachedResourceLoader.cpp:
1516         (WebCore::CachedResourceLoader::requestImage):
1517         * page/Chrome.cpp:
1518         (WebCore::canRunModalIfDuringPageDismissal):
1519         (WebCore::Chrome::canRunModalNow):
1520         (WebCore::Chrome::runJavaScriptAlert):
1521         (WebCore::Chrome::runJavaScriptConfirm):
1522         (WebCore::Chrome::runJavaScriptPrompt):
1523         * page/Chrome.h:
1524         * page/ChromeClient.h:
1525         (WebCore::ChromeClient::shouldRunModalDialogDuringPageDismissal):
1526         * page/DOMWindow.cpp:
1527         (WebCore::DOMWindow::showModalDialog):
1528
1529 2011-06-30  Julien Chaffraix  <jchaffraix@webkit.org>
1530
1531         Reviewed by Nikolas Zimmermann.
1532
1533         Assertion failure in RenderSVGInlineText::characterStartsNewTextChunk
1534         https://bugs.webkit.org/show_bug.cgi?id=63076
1535
1536         Tests: svg/custom/crash-text-in-textpath.svg
1537                svg/custom/text-node-in-text-invalidated.svg
1538
1539         The problem was that we did not call setNeedsPositionUpdate on RenderSVGText. When
1540         doing our layout, we would not update the attributes on our SVGRenderInlineText as
1541         we would not lay it out.
1542
1543         This was caused by childrenChanged being overridden on SVGTextPositioningElement but
1544         not on SVGTextPathElement.
1545
1546         As both classes shared the same mother class, it made sense to move the logic here.
1547         There should be no other side effects as SVGTextPathElement and SVGTextPositioningElement
1548         are the only classes deriving from SVGTextContentElement.
1549
1550         * svg/SVGTextContentElement.cpp:
1551         (WebCore::SVGTextContentElement::childrenChanged): Moved this method from SVGTextPositioningElement.
1552         * svg/SVGTextContentElement.h:
1553         * svg/SVGTextPositioningElement.cpp:
1554         (WebCore::SVGTextPositioningElement::svgAttributeChanged): Updated after updatePositioningValuesInRenderer
1555         removal, replaced by RenderSVGText::locateRenderSVGTextAncestor.
1556         * svg/SVGTextPositioningElement.h:
1557
1558 2011-06-30  Patrick Gansterer  <paroga@webkit.org>
1559
1560         Unreviewed build fix for !ENABLE(DATABASE) after r84789.
1561
1562         * bindings/js/JSDOMBinding.cpp:
1563
1564 2011-06-30  Anders Carlsson  <andersca@apple.com>
1565
1566         Reviewed by Dan Bernstein.
1567
1568         More ScrollableArea scaffolding
1569         https://bugs.webkit.org/show_bug.cgi?id=63678
1570
1571         Add a way to get the enclosing scrollable area for a given scrollable area.
1572         Also, add ScrollableArea::isPinnedInDirectionOfScrollDelta.
1573
1574         * page/FrameView.cpp:
1575         (WebCore::FrameView::enclosingScrollableArea):
1576         Return 0 for now.
1577
1578         * page/FrameView.h:
1579         Add FrameView::enclosingScrollableArea.
1580
1581         * platform/ScrollableArea.cpp:
1582         (WebCore::ScrollableArea::isPinnedInDirectionOfScrollDelta):
1583         Return whether the area is pinned in the direction of the scroll delta.
1584
1585         * platform/ScrollableArea.h:
1586         Add new member functions.
1587
1588         * platform/chromium/FramelessScrollView.cpp:
1589         (WebCore::FramelessScrollView::enclosingScrollableArea):
1590         * platform/chromium/FramelessScrollView.h:
1591         Add stub.
1592
1593         * platform/win/PopupMenuWin.h:
1594         (WebCore::PopupMenuWin::enclosingScrollableArea):
1595         Always return 0.
1596
1597         * rendering/RenderLayer.cpp:
1598         (WebCore::RenderLayer::enclosingScrollableLayer):
1599         Add helper function.
1600
1601         (WebCore::RenderLayer::scrollByRecursively):
1602         Use the new enclosingScrollableLayer helper function.
1603
1604         (WebCore::RenderLayer::enclosingScrollableArea):
1605         Return the enclosing scrollable area.
1606
1607         * rendering/RenderLayer.h:
1608         Add new member function.
1609
1610         * rendering/RenderListBox.cpp:
1611         (WebCore::RenderListBox::enclosingScrollableArea):
1612         Return 0 for now.
1613         
1614         * rendering/RenderListBox.h:
1615         Add new member function.
1616
1617 2011-06-30  Martin Robinson  <mrobinson@igalia.com>
1618
1619         Reviewed by Anders Carlsson.
1620
1621         [GTK] Crash observed with nspluginwrapper and flash
1622         https://bugs.webkit.org/show_bug.cgi?id=62249
1623
1624         Test: plugins/invalidate-rect-with-null-npp-argument.html
1625
1626         * plugins/npapi.cpp:
1627         (NPN_InvalidateRect): Guard against null instances here.
1628
1629 2011-06-30  Levi Weintraub  <leviw@chromium.org>
1630
1631         Reviewed by Eric Seidel.
1632
1633         Switch availableWidth/Height, logicalLeft/RightOffsetForLine to new layout types
1634         https://bugs.webkit.org/show_bug.cgi?id=63671
1635
1636         Switch availableWidth/Height, logicalLeft/RightOffsetForLine functions over to the
1637         new layout unit abstraction.
1638
1639         No new tests, no functionality changes.
1640
1641         * rendering/RenderBlock.cpp:
1642         (WebCore::RenderBlock::logicalLeftOffsetForLine):
1643         (WebCore::RenderBlock::logicalRightOffsetForLine):
1644         (WebCore::RenderBlock::availableLogicalWidthForLine):
1645         (WebCore::RenderBlock::availableLogicalWidth):
1646         * rendering/RenderBlock.h:
1647         (WebCore::RenderBlock::logicalRightOffsetForLine):
1648         (WebCore::RenderBlock::logicalLeftOffsetForLine):
1649         (WebCore::RenderBlock::startOffsetForLine):
1650         * rendering/RenderBox.cpp:
1651         (WebCore::RenderBox::availableLogicalHeight):
1652         (WebCore::RenderBox::availableLogicalHeightUsing):
1653         * rendering/RenderBox.h:
1654         (WebCore::RenderBox::availableLogicalWidth):
1655         (WebCore::RenderBox::availableWidth):
1656         (WebCore::RenderBox::availableHeight):
1657
1658 2011-06-30  Adam Barth  <abarth@webkit.org>
1659
1660         Remove useless ASSERT that breaks the build.
1661
1662         * dom/StyledElement.cpp:
1663         (WebCore::parseColorStringWithCrazyLegacyRules):
1664
1665 2011-06-30  Tab Atkins  <jackalmage@gmail.com>
1666
1667         Reviewed by Adam Barth.
1668
1669         Fix legacy color attribute parsing to match HTML spec
1670         https://bugs.webkit.org/show_bug.cgi?id=63029
1671
1672         Relevant spec link: http://www.whatwg.org/specs/web-apps/current-work/complete/common-microsyntaxes.html#rules-for-parsing-a-legacy-color-value
1673         Fix legacy color attribute parsing (<body bgcolor>, <font color>, etc.) to match the HTML spec and more closely match other browsers.
1674
1675         Test: fast/dom/attribute-legacy-colors.html
1676
1677         * dom/StyledElement.cpp:
1678         (WebCore::StyledElement::addCSSColor):
1679
1680 2011-06-28  Hans Wennborg  <hans@chromium.org>
1681
1682         Reviewed by Tony Chang.
1683
1684         IndexedDB: Prepare for running layout tests with LevelDB
1685         https://bugs.webkit.org/show_bug.cgi?id=63593
1686
1687         Migration of data from SQLite to LevelDB must be done before the
1688         m_backingStore map is checked for an open LevelDB, because if a
1689         previous layout test has used LevelDB, it will be in the
1690         m_backingStore map.
1691
1692         Covered by existing layout tests.
1693
1694         * storage/IDBFactoryBackendImpl.cpp:
1695         (WebCore::IDBFactoryBackendImpl::open):
1696
1697 2011-06-30  Pavel Feldman  <pfeldman@chromium.org>
1698
1699         Reviewed by Yury Semikhatsky.
1700
1701         Web Inspector: introduce "filter" icons for timeline panel and elements sidebar.
1702         https://bugs.webkit.org/show_bug.cgi?id=63731
1703
1704         * inspector/front-end/EventListenersSidebarPane.js:
1705         * inspector/front-end/Images/paneFilterButtons.png: Added.
1706         * inspector/front-end/Images/statusbarButtonGlyphs.png:
1707         * inspector/front-end/StylesSidebarPane.js:
1708         * inspector/front-end/inspector.css:
1709         (.pane > .title > select):
1710         (.pane > .title > select.select-settings):
1711         (.pane > .title > select.select-filter):
1712         (.timeline-filter-status-bar-item .glyph):
1713
1714 2011-06-28  Hans Wennborg  <hans@chromium.org>
1715
1716         Reviewed by Tony Chang.
1717
1718         IndexedDB: Support for deleteIndex with LevelDB backing store
1719         https://bugs.webkit.org/show_bug.cgi?id=63539
1720
1721         Covered by storage/indexeddb/mozilla/remove-index.html.
1722
1723         * storage/IDBLevelDBBackingStore.cpp:
1724         (WebCore::IDBLevelDBBackingStore::deleteIndex):
1725
1726 2011-06-30  Abhishek Arya  <inferno@chromium.org>
1727
1728         Reviewed by Ryosuke Niwa.
1729
1730         Crash when calling DOMSubtreeModified event when extracting range
1731         contents.
1732         https://bugs.webkit.org/show_bug.cgi?id=63650
1733
1734         Convert a few nodes to RefPtrs and add commonRoot verification checks
1735         for Range::processContents.
1736
1737         Tests: fast/dom/Range/range-extract-contents-event-fire-crash.html
1738                fast/dom/Range/range-extract-contents-event-fire-crash2.html
1739
1740         * dom/Range.cpp:
1741         (WebCore::childOfCommonRootBeforeOffset):
1742         (WebCore::Range::processContents):
1743         (WebCore::Range::processContentsBetweenOffsets):
1744         (WebCore::Range::processAncestorsAndTheirSiblings):
1745
1746 2011-06-30  Dan Bernstein  <mitz@apple.com>
1747
1748         Reviewed by Adele Peterson.
1749
1750         Add +[WebView _allowsRoundingHacks]
1751         https://bugs.webkit.org/show_bug.cgi?id=63734
1752
1753         * WebCore.exp.in: Export TextRun::allowsRoundingHacks().
1754         * platform/graphics/TextRun.cpp:
1755         (WebCore::TextRun::allowsRoundingHacks): Added this accessor.
1756         * platform/graphics/TextRun.h:
1757
1758 2011-06-30  Patrick Gansterer  <paroga@webkit.org>
1759
1760         Reviewed by Adam Roben.
1761
1762         [WIN] Don't redefine the keyboard codes
1763         https://bugs.webkit.org/show_bug.cgi?id=63726
1764
1765         Only define the codes when undefined.
1766         r64957 fixed this problem for COMPILER(MINGW) but not for OS(WINCE).
1767
1768         * platform/WindowsKeyboardCodes.h:
1769
1770 2011-06-30  Yury Semikhatsky  <yurys@chromium.org>
1771
1772         Reviewed by Pavel Feldman.
1773
1774         Web Inspector: hide "Enabled background events collection" option in context menu until the setting is persisted
1775         https://bugs.webkit.org/show_bug.cgi?id=63708
1776
1777         The option has no much sense if it is not preserved between browser restarts.
1778
1779         * inspector/front-end/NetworkPanel.js:
1780         (WebInspector.NetworkPanel.prototype._contextMenu):
1781
1782 2011-06-30  Patrick Gansterer  <paroga@webkit.org>
1783
1784         Reviewed by Darin Adler.
1785
1786         Remove dependnecy on IDL generation for disabled features in JSC bindings
1787         https://bugs.webkit.org/show_bug.cgi?id=63718
1788
1789         Move the #if ENABLE() line directly after #include "config.h".
1790         This enables us to compile all files even when we don't generate the IDL output.
1791
1792         * bindings/js/IDBBindingUtilities.cpp:
1793         * bindings/js/JSConsoleCustom.cpp:
1794         * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
1795         * bindings/js/JSCustomXPathNSResolver.cpp:
1796         * bindings/js/JSDOMApplicationCacheCustom.cpp:
1797         * bindings/js/JSDeviceMotionEventCustom.cpp:
1798         * bindings/js/JSDeviceOrientationEventCustom.cpp:
1799         * bindings/js/JSInjectedScriptHostCustom.cpp:
1800         * bindings/js/JSInjectedScriptManager.cpp:
1801         * bindings/js/JSInspectorFrontendHostCustom.cpp:
1802         * bindings/js/JSJavaScriptCallFrameCustom.cpp:
1803         * bindings/js/JSSQLResultSetRowListCustom.cpp:
1804         * bindings/js/JSSQLTransactionCustom.cpp:
1805         * bindings/js/JSSQLTransactionSyncCustom.cpp:
1806         * bindings/js/JSSVGElementInstanceCustom.cpp:
1807         * bindings/js/JSStorageCustom.cpp:
1808         * bindings/js/JSTouchCustom.cpp:
1809         * bindings/js/JSTouchListCustom.cpp:
1810         * bindings/js/JSXPathResultCustom.cpp:
1811         * bindings/js/JavaScriptCallFrame.cpp:
1812         * bindings/js/PageScriptDebugServer.cpp:
1813         * bindings/js/ScriptDebugServer.cpp:
1814         * bindings/js/ScriptGCEvent.cpp:
1815         * bindings/js/ScriptProfile.cpp:
1816         * bindings/js/WorkerScriptDebugServer.cpp:
1817
1818 2011-06-30  Alexander Pavlov  <apavlov@chromium.org>
1819
1820         Reviewed by Kent Tamura.
1821
1822         [Chromium] Autofill suggestions appear in upper left corner after input change
1823         https://bugs.webkit.org/show_bug.cgi?id=63702
1824
1825         This change fixes a few popup layout issues, some of which have existed for quite a while:
1826         - the absence of the ChromeClientImpl::screenToWindow() implementation (the method used to always return (0, 0));
1827         - the confusion of window and screen coordinates passed into the autofill popup client's setWindowRect() method;
1828         - the use of the current frameRect() width as the target element's width (which was wrong when refreshing
1829           a popup resized during the initial layout (e.g. made wider than the target element)).
1830
1831         No new tests, as this is a change to platform-specific widget code. The test case is provided in the bug description.
1832
1833         * platform/chromium/PopupMenuChromium.cpp:
1834         (WebCore::PopupContainer::layoutAndGetRTLOffset): Use original target element width, not frameRect().width(),
1835         since the latter gets updated if the popup is not the same width as the target element.
1836         (WebCore::PopupContainer::refresh): Restore only the popup bounds rather than its original rectangle,
1837         since it sometimes breaks the invalidation region and layout.
1838
1839 2011-06-30  Sheriff Bot  <webkit.review.bot@gmail.com>
1840
1841         Unreviewed, rolling out r90102.
1842         http://trac.webkit.org/changeset/90102
1843         https://bugs.webkit.org/show_bug.cgi?id=63714
1844
1845         Lots of tests asserting beneath
1846         SVGSMILElement::findInstanceTime (Requested by aroben on
1847         #webkit).
1848
1849         * svg/animation/SVGSMILElement.cpp:
1850         (WebCore::SVGSMILElement::findInstanceTime):
1851
1852 2011-06-30  Andrey Kosyakov  <caseq@chromium.org>
1853
1854         Reviewed by Yury Semikhatsky.
1855
1856         Web Inspector: remove ExtensionAPISchema.json
1857         https://bugs.webkit.org/show_bug.cgi?id=63687
1858
1859         * inspector/front-end/ExtensionAPISchema.json: Removed.
1860
1861 2011-06-30  Ilya Tikhonovsky  <loislo@chromium.org>
1862
1863         Unreviewed build fix for chromium.
1864
1865         * inspector/CodeGeneratorInspector.pm:
1866
1867 2011-06-30  Ilya Tikhonovsky  <loislo@chromium.org>
1868
1869         Unreviewed build fix for mac.
1870
1871         * inspector/CodeGeneratorInspector.pm:
1872
1873 2011-06-30  Ilya Tikhonovsky  <loislo@chromium.org>
1874
1875         Reviewed by Pavel Feldman.
1876
1877         Web Inspector: Protocol: error object needs some improvement.
1878         https://bugs.webkit.org/show_bug.cgi?id=63707
1879
1880         Current implementation is not useful in the code.
1881         We need to have toString implementation with nice formatting
1882         I'd like to use error.message property as the main place for the error's text.
1883
1884         * inspector/CodeGeneratorInspector.pm:
1885
1886 2011-06-30  Mikhail Naganov  <mnaganov@chromium.org>
1887
1888         Reviewed by Yury Semikhatsky.
1889
1890         Web Inspector: [Chromium] Support annotations for arrays in heap profiler.
1891         https://bugs.webkit.org/show_bug.cgi?id=63690
1892
1893         * inspector/front-end/DetailedHeapshotGridNodes.js:
1894         (WebInspector.HeapSnapshotGenericObjectNode.prototype.get data):
1895
1896
1897 2011-06-30  Patrick Gansterer  <paroga@webkit.org>
1898
1899         Unreviewed build fix for !ENABLE(SVG_ANIMATION) after r88663, r89187, r89220, r89431 and r89661.
1900
1901         * svg/SVGAnimatedAngle.h:
1902         * svg/SVGAnimatedLength.h:
1903         * svg/SVGAnimatedNumber.h:
1904         * svg/SVGAnimatedRect.h:
1905         * svg/SVGAnimatedString.h:
1906
1907 2011-06-30  Gabor Loki  <loki@webkit.org>
1908
1909         Reviewed by Csaba Osztrogonác.
1910
1911         Fixed several style and typo issues after r90091.
1912         https://bugs.webkit.org/show_bug.cgi?id=63692
1913
1914         Rename yStart to extremaStartY during computing extremas
1915
1916         * platform/graphics/filters/FEMorphology.cpp:
1917         (WebCore::FEMorphology::platformApplyGeneric):
1918         * platform/graphics/filters/FEMorphology.h:
1919
1920 2011-06-30  Oliver Varga  <Varga.Oliver@stud.u-szeged.hu>
1921
1922         Reviewed by Nikolas Zimmermann.
1923
1924         Speed up SVGSMILElement::findInstanceTime.
1925         https://bugs.webkit.org/show_bug.cgi?id=61025
1926
1927         Replace the linear search to binary search on ordered list because
1928         the previous searches from the beginning was not efficient.
1929
1930         No new tests this is only a performance tweak.
1931
1932         * svg/animation/SVGSMILElement.cpp:
1933         (WebCore::extractTimeFromVector):
1934         (WebCore::SVGSMILElement::findInstanceTime):
1935
1936 2011-06-30  Kentaro Hara  <haraken@google.com>
1937
1938         Reviewed by Kent Tamura.
1939
1940         Change the label of an HTML5 file chooser button to "Choose Files"
1941         https://bugs.webkit.org/show_bug.cgi?id=49245
1942
1943         We should notify capability of multiple files to users.
1944
1945         Test: fast/forms/input-file-label.html
1946
1947         * English.lproj/Localizable.strings:
1948         * html/FileInputType.cpp:
1949         (WebCore::UploadButtonElement::createForMultiple): Constructs a multiple file chooser button.
1950         (WebCore::FileInputType::createShadowSubtree): Constructs a single/multiple file chooser button depending on 'multiple' attribute.
1951         (WebCore::FileInputType::multipleAttributeChanged): Updates the label of the file chooser button.
1952         * html/FileInputType.h:
1953         * html/HTMLInputElement.cpp:
1954         (WebCore::HTMLInputElement::parseMappedAttribute): Updates the shadow tree of the file chooser button when 'multiple' attribute is set or unset.
1955         * html/InputType.cpp:
1956         (WebCore::InputType::multipleAttributeChanged): Virtual method to be overridden by FileInputType.
1957         * html/InputType.h:
1958         * platform/DefaultLocalizationStrategy.cpp:
1959         (WebCore::DefaultLocalizationStrategy::fileButtonChooseFileLabel): Updated the description for "Choose File".
1960         (WebCore::DefaultLocalizationStrategy::fileButtonChooseMultipleFilesLabel): Returns a string "Choose Files".
1961         * platform/DefaultLocalizationStrategy.h:
1962         * platform/LocalizationStrategy.h:
1963         * platform/LocalizedStrings.cpp:
1964         (WebCore::fileButtonChooseMultipleFilesLabel): Wrapper method for getting the "Choose Files" label.
1965         * platform/LocalizedStrings.h:
1966         * platform/brew/LocalizedStringsBrew.cpp:
1967         (WebCore::fileButtonChooseMultipleFilesLabel): Returns a "Choose Files" label.
1968         * platform/efl/LocalizedStringsEfl.cpp:
1969         (WebCore::fileButtonChooseMultipleFilesLabel): Returns a "Choose Files" label.
1970         * platform/gtk/LocalizedStringsGtk.cpp:
1971         (WebCore::fileButtonChooseMultipleFilesLabel): Returns a "Choose Files" label.
1972         * platform/haiku/LocalizedStringsHaiku.cpp:
1973         (WebCore::fileButtonChooseMultipleFilesLabel): Returns a "Choose Files" label.
1974         * platform/wx/LocalizedStringsWx.cpp:
1975         (WebCore::fileButtonChooseMultipleFilesLabel): Returns a "Choose Files" label.
1976
1977 2011-06-30  Ryosuke Niwa  <rniwa@webkit.org>
1978
1979         Reviewed by Kent Tamura.
1980
1981         Replace isNodeInTextFormControl(Node*) by enclosingTextFormControl(const Position&)
1982         https://bugs.webkit.org/show_bug.cgi?id=63672
1983
1984         Replaced isNodeInTextFormControl(Node*) by enclosingTextFormControl(const Position&).
1985         Also added a safe toTextFormControl to HTMLFormControlElement.h.
1986
1987         * editing/DeleteSelectionCommand.cpp:
1988         (WebCore::DeleteSelectionCommand::doApply): Calls enclosingTextFormControl instead of manually
1989         checking the tag name of shadowAncestorNode.
1990         * editing/Editor.cpp:
1991         (WebCore::Editor::selectionForCommand): Rewritten using enclosingTextFormControl and toTextFormControl.
1992         (WebCore::Editor::cut): Calls enclosingTextFormControl instead of isNodeInTextFormControl.
1993         (WebCore::Editor::copy): Ditto.
1994         (WebCore::Editor::setBaseWritingDirection): Calls toTextFormControl instead of manually checking tag name.
1995         * editing/FrameSelection.cpp:
1996         (WebCore::FrameSelection::isInPasswordField): Calls enclosingTextFormControl.
1997         * editing/ReplaceSelectionCommand.cpp:
1998         (WebCore::ReplaceSelectionCommand::doApply): Ditto.
1999         * editing/htmlediting.cpp:
2000         (WebCore::enclosingTextFormControl): Added.
2001         * editing/htmlediting.h:
2002         * html/HTMLFormControlElement.h:
2003         (WebCore::toTextFormControl): Added.
2004         * page/DragController.cpp:
2005         (WebCore::DragController::startDrag): Calls enclosingTextFormControl instead of isNodeInTextFormControl.
2006
2007 2011-06-27  Pavel Podivilov  <podivilov@chromium.org>
2008
2009         Reviewed by Pavel Feldman.
2010
2011         Web Inspector: source code is not highlighted after drawer height animations.
2012         https://bugs.webkit.org/show_bug.cgi?id=62860
2013
2014         * inspector/front-end/Drawer.js:
2015         (WebInspector.Drawer.prototype._animateDrawerHeight.animationFinished):
2016         (WebInspector.Drawer.prototype._animateDrawerHeight):
2017
2018 2011-06-30  MORITA Hajime  <morrita@google.com>
2019
2020         Reviewed by Dimitri Glazkov.
2021
2022         Crash if ShadowRoot has a text node.
2023         https://bugs.webkit.org/show_bug.cgi?id=63607
2024         
2025         Node::styleForRenderer() for Text node wasn't shadow-aware.
2026         This change allow styleForRenderer() to know its visual parent by
2027         passing NodeRenderingContext.
2028         
2029         Changes other than NodeRenderingContext and Element is just a
2030         follow up for change above.
2031
2032         * dom/Element.cpp: use NodeRenderingContext to resolve parent node.
2033         (WebCore::Element::recalcStyle):
2034         * dom/Node.cpp:
2035         (WebCore::Node::styleForRenderer): Added NodeRenderingContext as a parameter.
2036         * dom/Node.h:
2037         * dom/NodeRenderingContext.cpp:
2038         (WebCore::NodeRendererFactory::createRendererAndStyle):
2039         * html/HTMLOptGroupElement.cpp:
2040         (WebCore::HTMLOptGroupElement::attach):
2041         * html/HTMLOptionElement.cpp:
2042         (WebCore::HTMLOptionElement::attach):
2043         * html/HTMLTitleElement.cpp:
2044         (WebCore::HTMLTitleElement::textWithDirection):
2045         * html/shadow/TextControlInnerElements.cpp:
2046         (WebCore::TextControlInnerElement::styleForRenderer):
2047         (WebCore::TextControlInnerTextElement::styleForRenderer):
2048         * html/shadow/TextControlInnerElements.h:
2049
2050         Test: fast/dom/shadow/shadow-root-text-child.html
2051         
2052 2011-06-30  Piroska András  <Piroska.Andras@stud.u-szeged.hu>
2053
2054         Reviewed by Dirk Schulze.
2055
2056         Apply the ParallelJobs support to FEMorphology
2057         https://bugs.webkit.org/show_bug.cgi?id=63064
2058
2059         The FEMorphology filter of SVG can consume lots of resources if it is
2060         applied to a large area. The computation can be distributed to multiple
2061         cores if the architecture supports.
2062         The average performance progression is 20-25% on dual-core machines.
2063
2064         * platform/graphics/filters/FEMorphology.cpp:
2065         (WebCore::FEMorphology::platformApplyGeneric): Apply the filter between yStart and yEnd interval
2066         (WebCore::FEMorphology::platformApplyWorker): Call the generic apply from a parallel worker
2067         (WebCore::FEMorphology::platformApply):
2068         (WebCore::FEMorphology::apply): Move the functionality into platformApply
2069         (WebCore::FEMorphology::externalRepresentation): Remove whitespaces
2070         * platform/graphics/filters/FEMorphology.h:
2071
2072 2011-06-29  Kent Tamura  <tkent@chromium.org>
2073
2074         Reviewed by Dimitri Glazkov.
2075
2076         Avoid custom layout code of RenderTextControlSingleLine
2077         https://bugs.webkit.org/show_bug.cgi?id=61415
2078
2079         If a text field has a search results button, a search cancel
2080         button, a speech button, or a spin button, the editable inner text
2081         element and the buttons are wrapped by a flexible box container,
2082         and the editable inner text element has flexibility. As the result
2083         of applying the flexible box, we don't need any horizontal layout
2084         code in RenderTextControlSingleLine except the inner spin button.
2085
2086         Also, we remove custom hit-testing code in nodeAtPoint(). If a
2087         user clicks on a position left of the inner editable text but not
2088         on the search results button, the search results button doesn't
2089         work though it worked.
2090
2091         * css/html.css:
2092         (input::-webkit-textfield-decoration-container):
2093           New style definition for the "container" element.
2094         (input[type="search"]::-webkit-search-cancel-button):
2095           It should be a block element because it's a child of the flexible box.
2096           Also, this doesn't have flexibility.
2097         (input[type="search"]::-webkit-search-decoration): ditto.
2098         (input[type="search"]::-webkit-search-results-decoration): ditto.
2099         (input[type="search"]::-webkit-search-results-button): ditto.
2100         (input::-webkit-inner-spin-button): ditto.
2101         (input::-webkit-input-speech-button): ditto.
2102         * html/HTMLInputElement.cpp:
2103         (WebCore::HTMLInputElement::containerElement):
2104           Add an accessor of the flexible box container.
2105           It just calls InputType::containerElement().
2106         * html/HTMLInputElement.h: Declare it.
2107         * html/InputType.h:
2108         (WebCore::InputType::containerElement): New accessor for a shadow element.
2109         * html/SearchInputType.cpp:
2110         (WebCore::SearchInputType::SearchInputType):
2111           m_innerBlock is moved to TextFieldInputType.
2112         (WebCore::SearchInputType::needsContainer):
2113           A search field always needs the flexible box container because
2114           of the results button and the cancel button.
2115         (WebCore::SearchInputType::createShadowSubtree):
2116           Use TextFieldInputType::createShadowSubtree(), then modify the tree.
2117         (WebCore::SearchInputType::destroyShadowSubtree):
2118           m_innerBlock is moved to TextFieldInputType.
2119         * html/SearchInputType.h:
2120         * html/TextFieldInputType.cpp:
2121         (WebCore::TextFieldInputType::TextFieldInputType):
2122           Initialize the new members.
2123         (WebCore::TextFieldInputType::needsContainer):
2124           Returns true if x-webkit-speech. We check a spin button separately.
2125         (WebCore::TextFieldInputType::createShadowSubtree):
2126           Wrap everything with the flexible box container if needsContainer() or we need a spin button.
2127         (WebCore::TextFieldInputType::containerElement): Added an accessor.
2128         (WebCore::TextFieldInputType::innerBlockElement): ditto.
2129         (WebCore::TextFieldInputType::innerTextElement): ditto.
2130         (WebCore::TextFieldInputType::innerSpinButtonElement): ditto.
2131         (WebCore::TextFieldInputType::speechButtonElement): ditto.
2132         (WebCore::TextFieldInputType::destroyShadowSubtree):
2133           Clear references to new shadow nodes.
2134         * html/TextFieldInputType.h:
2135         * rendering/RenderTextControlSingleLine.cpp:
2136         (WebCore::RenderTextControlSingleLine::containerElement): Added an accessor.
2137         (WebCore::RenderTextControlSingleLine::innerTextElement):
2138         (WebCore::RenderTextControlSingleLine::layout):
2139          - Correct heights check
2140           Comparing with height(), not contentHeigth(), was incorrect.
2141          - Adjust the container height like the editable inner text.
2142          - Remove width adjustment
2143          - Remove the speech button layout code
2144           The flexible box layout is enough.
2145         (WebCore::RenderTextControlSingleLine::nodeAtPoint):
2146           Remove custom code for results/cancel/speech buttons, and
2147           Simplify comments.
2148         (WebCore::RenderTextControlSingleLine::forwardEvent):
2149           Remove custom forwarding code for results/cancel buttons.
2150         (WebCore::RenderTextControlSingleLine::styleDidChange):
2151           Clear the style of the container because we update it in layout().
2152         (WebCore::RenderTextControlSingleLine::hasControlClip):
2153           Decoration buttons should be clipped by the container.
2154         (WebCore::RenderTextControlSingleLine::controlClipRect): ditto.
2155         (WebCore::RenderTextControlSingleLine::createInnerTextStyle):
2156           We don't need to use display:inline-block any more.
2157         (WebCore::RenderTextControlSingleLine::createInnerBlockStyle):
2158           The text wrapper element should have flexibility.
2159         (WebCore::RenderTextControlSingleLine::textBlockInsetTop):
2160           Updated for the tree structure change.
2161         * rendering/RenderTextControlSingleLine.h:
2162
2163 2011-06-29  Kent Tamura  <tkent@chromium.org>
2164
2165         [Mac] Attempt to fix Leopard build.
2166
2167         * platform/mac/CursorMac.mm:
2168         (WebCore::Cursor::ensurePlatformCursor):
2169
2170 2011-06-29  Darin Adler  <darin@apple.com>
2171
2172         Reviewed by Dan Bernstein.
2173
2174         [Mac] Use system cursors instead of custom bitmaps where possible
2175         https://bugs.webkit.org/show_bug.cgi?id=63679
2176
2177         * Resources/crossHairCursor.png: Removed.
2178         * Resources/notAllowedCursor.png: Removed.
2179         * WebCore.exp.in: Added wkCursor.
2180         * WebCore/WebCore.gyp/WebCore.gyp: Removed the two now-unused PNG files.
2181         * WebCore.xcodeproj/project.pbxproj: Ditto.
2182
2183         * platform/mac/CursorMac.mm:
2184         (WebCore::Cursor::ensurePlatformCursor): Use NSCursor API for Cross, Hand,
2185         VerticalText, ContextMenu, Copy, and NotAllowed. Use wkCursor for Move,
2186         Alias, Progress, and the resize and panning cursors.
2187
2188         * platform/mac/WebCoreSystemInterface.h: Added wkCursor.
2189         * platform/mac/WebCoreSystemInterface.mm: Ditto.
2190
2191 2011-06-29  Keishi Hattori  <keishi@webkit.org>
2192
2193         Reviewed by Adam Barth.
2194
2195         Remove extra space at EOL in view source mode
2196         https://bugs.webkit.org/show_bug.cgi?id=63620
2197
2198         Test: fast/frames/viewsource-linebreak.html
2199
2200         * css/view-source.css:
2201         (tbody:last-child .webkit-line-content:empty:before): If we don't do this
2202         the last line will be empty and the height will be shorter than the rest.
2203         * html/HTMLViewSourceDocument.cpp:
2204         (WebCore::HTMLViewSourceDocument::addSource): If source file is empty, add an empty line.
2205         (WebCore::HTMLViewSourceDocument::finishLine): Call when you are done with the current line.
2206         Adds a BR element if the line is empty and sets current to tbody.
2207         (WebCore::HTMLViewSourceDocument::addText):
2208         * html/HTMLViewSourceDocument.h:
2209
2210 2011-06-29  Brent Fulgham  <bfulgham@webkit.org>
2211
2212         [WinCE] Correct logical state of WINCE test.
2213
2214         * platform/win/ScrollbarThemeWin.cpp: The #if OS(WINCE)
2215           should have been #if !OS(WINCE)
2216         (WebCore::ScrollbarThemeWin::paintTrackPiece):
2217         (WebCore::ScrollbarThemeWin::paintButton):
2218         (WebCore::ScrollbarThemeWin::paintThumb):
2219         * rendering/RenderThemeWin.cpp: ditto.
2220         (WebCore::drawControl):
2221
2222 2011-06-29  Justin Garcia  <justin.garcia@apple.com>
2223
2224         Reviewed by Enrica Casucci.
2225         
2226         I forgot to include these (reviewed) style fix-ups in my previous check-in.
2227
2228         * editing/htmlediting.cpp:
2229         (WebCore::indexForVisiblePosition):
2230         (WebCore::visiblePositionForIndex):
2231
2232 2011-06-29  Justin Garcia  <justin.garcia@apple.com>
2233
2234         Reviewed by Enrica Casucci.
2235
2236         https://bugs.webkit.org/show_bug.cgi?id=62922
2237         indexForVisiblePosition(const VisiblePosition& visiblePosition) does not consider shadow content
2238         
2239         VisiblePositions can be inside web form text regions, which use shadow trees. Made indexForVisiblePosition
2240         aware of this, and added a new parameter to obtain the scope for a VisiblePosition, in addition to its index.
2241         
2242         Added visiblePositionForIndex to go in the opposite direction, taking into account the scope
2243         used to compute the index.
2244         
2245         These two functions use TextIterators to convert between VisiblePositions and indices. But 
2246         TextIterator iteration using TextIteratorEmitsCharactersBetweenAllVisiblePositions does not 
2247         exactly match VisiblePosition iteration, so using them to preserve a selection during an 
2248         editing operation is unreliable. This can be seen in the expected results for:
2249         
2250         editing/execCommand/indent-pre-list.html
2251         editing/execCommand/crash-indenting-list-item.html
2252         
2253         TextIterator's TextIteratorEmitsCharactersBetweenAllVisiblePositions mode needs to be fixed, or 
2254         these functions need to be changed to iterate using actual VisiblePositions. See:
2255         
2256         https://bugs.webkit.org/show_bug.cgi?id=63590
2257         TextIterators in TextIteratorEmitsCharactersBetweenAllVisiblePositions do not exactly match VisiblePositions
2258         
2259         Also:
2260         
2261         https://bugs.webkit.org/show_bug.cgi?id=63592
2262         Use visiblePositionForIndex and indexForVisiblePosition everywhere that TextIterators are used to convert between VisiblePositions and indices
2263         
2264         No new tests added because indexForVisiblePosition is currently only used for editing operations
2265         that cannot be performed inside web form fields.
2266
2267         * editing/ApplyBlockElementCommand.cpp:
2268         (WebCore::ApplyBlockElementCommand::doApply):
2269         * editing/InsertListCommand.cpp:
2270         (WebCore::InsertListCommand::doApply):
2271         * editing/htmlediting.cpp:
2272         (WebCore::indexForVisiblePosition):
2273         (WebCore::visiblePositionForIndex):
2274         * editing/htmlediting.h:
2275
2276 2011-06-29  Dimitri Glazkov  <dglazkov@chromium.org>
2277
2278         Reviewed by Kent Tamura.
2279
2280         Remove ElementWithPseudoId, since now an Element can store it all by itself.
2281         https://bugs.webkit.org/show_bug.cgi?id=63657
2282
2283         Refactoring, covered by existing tests.
2284
2285         * CMakeLists.txt: Removed ElementWithPseudoId from build.
2286         * GNUmakefile.list.am: Ditto.
2287         * WebCore.gypi: Ditto.
2288         * WebCore.order: Ditto.
2289         * WebCore.pro: Ditto.
2290         * WebCore.vcproj/WebCore.vcproj: Ditto.
2291         * WebCore.xcodeproj/project.pbxproj: Ditto.
2292         * html/ColorInputType.cpp:
2293         (WebCore::ColorInputType::createShadowSubtree): Changed to use plain-old HTMLDivElement.
2294         * html/RangeInputType.cpp:
2295         (WebCore::RangeInputType::createShadowSubtree): Ditto.
2296         * html/ValidationMessage.cpp:
2297         (WebCore::ValidationMessage::buildBubbleTree): Ditto.
2298         * html/shadow/ElementWithPseudoId.cpp: Removed.
2299         * html/shadow/ElementWithPseudoId.h: Removed.
2300
2301 2011-06-29  Levi Weintraub  <leviw@chromium.org>
2302
2303         Reviewed by Eric Seidel.
2304
2305         Switch computeWidth and computeHeight functions to new layout types
2306         https://bugs.webkit.org/show_bug.cgi?id=63655
2307
2308         Switch computeWidth and computeHeight functions over to the new layout unit abstraction.
2309
2310         Making a point to mark rounding that should eventually be removed by linking to a new
2311         tracking bug: 63645.
2312
2313         No new tests, no functionality changes.
2314
2315         * rendering/AutoTableLayout.cpp:
2316         (WebCore::AutoTableLayout::computePreferredLogicalWidths):
2317         * rendering/AutoTableLayout.h:
2318         * rendering/FixedTableLayout.cpp:
2319         (WebCore::FixedTableLayout::computePreferredLogicalWidths):
2320         * rendering/FixedTableLayout.h:
2321         * rendering/LayoutTypes.h:
2322         * rendering/RenderBlock.cpp:
2323         (WebCore::RenderBlock::computePreferredLogicalWidths):
2324         (WebCore::RenderBlock::computeInlinePreferredLogicalWidths):
2325         (WebCore::RenderBlock::computeBlockPreferredLogicalWidths):
2326         * rendering/RenderBox.cpp:
2327         (WebCore::RenderBox::computeLogicalWidthUsing):
2328         (WebCore::RenderBox::computeLogicalHeight):
2329         (WebCore::RenderBox::computeLogicalHeightUsing):
2330         (WebCore::RenderBox::computePercentageLogicalHeight):
2331         (WebCore::RenderBox::computeReplacedLogicalWidth):
2332         (WebCore::RenderBox::computeReplacedLogicalWidthRespectingMinMaxWidth):
2333         (WebCore::RenderBox::computeReplacedLogicalWidthUsing):
2334         (WebCore::RenderBox::computeReplacedLogicalHeight):
2335         (WebCore::RenderBox::computeReplacedLogicalHeightRespectingMinMaxHeight):
2336         (WebCore::RenderBox::computeReplacedLogicalHeightUsing):
2337         * rendering/RenderBox.h:
2338         * rendering/RenderIFrame.cpp:
2339         (WebCore::RenderIFrame::computeLogicalWidth):
2340         * rendering/RenderImage.cpp:
2341         (WebCore::RenderImage::computeReplacedLogicalWidth):
2342         (WebCore::RenderImage::computeReplacedLogicalHeight):
2343         * rendering/RenderImage.h:
2344         * rendering/RenderListBox.cpp:
2345         (WebCore::RenderListBox::computePreferredLogicalWidths):
2346         * rendering/RenderListMarker.cpp:
2347         (WebCore::RenderListMarker::computePreferredLogicalWidths):
2348         * rendering/RenderMenuList.cpp:
2349         (WebCore::RenderMenuList::computePreferredLogicalWidths):
2350         * rendering/RenderReplaced.cpp:
2351         (WebCore::RenderReplaced::computeReplacedLogicalWidth):
2352         (WebCore::RenderReplaced::computeReplacedLogicalHeight):
2353         (WebCore::RenderReplaced::computePreferredLogicalWidths):
2354         * rendering/RenderReplaced.h:
2355         * rendering/RenderSlider.cpp:
2356         (WebCore::RenderSlider::computePreferredLogicalWidths):
2357         * rendering/RenderTable.cpp:
2358         (WebCore::RenderTable::computeLogicalWidth):
2359         * rendering/RenderTextControl.cpp:
2360         (WebCore::RenderTextControl::computePreferredLogicalWidths):
2361         * rendering/RenderVideo.cpp:
2362         (WebCore::RenderVideo::computeReplacedLogicalWidth):
2363         (WebCore::RenderVideo::computeReplacedLogicalHeight):
2364         * rendering/RenderVideo.h:
2365         * rendering/svg/RenderSVGForeignObject.cpp:
2366         (WebCore::RenderSVGForeignObject::computeLogicalWidth):
2367         (WebCore::RenderSVGForeignObject::computeLogicalHeight):
2368         * rendering/svg/RenderSVGRoot.cpp:
2369         (WebCore::RenderSVGRoot::computePreferredLogicalWidths):
2370         (WebCore::RenderSVGRoot::computeIntrinsicWidth):
2371         (WebCore::RenderSVGRoot::computeIntrinsicHeight):
2372         (WebCore::RenderSVGRoot::computeReplacedLogicalWidth):
2373         (WebCore::RenderSVGRoot::computeReplacedLogicalHeight):
2374         (WebCore::RenderSVGRoot::layout):
2375         * rendering/svg/RenderSVGRoot.h:
2376
2377 2011-06-23  Abhishek Arya  <inferno@chromium.org>
2378
2379         Reviewed by James Robinson.
2380
2381         In RenderBlock, RenderWidget and RenderReplaced destroy functions,
2382         call dirtyLinesFromChangedChild to tell our parent that we are going away.
2383         https://bugs.webkit.org/show_bug.cgi?id=60307
2384
2385         Test: fast/block/child-not-removed-from-parent-lineboxes-crash.html
2386               fast/block/block-not-removed-from-parent-lineboxes-crash.html
2387
2388         * rendering/RenderBlock.cpp:
2389         (WebCore::RenderBlock::destroy):
2390         * rendering/RenderReplaced.cpp:
2391         (WebCore::RenderReplaced::destroy):
2392         * rendering/RenderReplaced.h:
2393         * rendering/RenderWidget.cpp:
2394         (WebCore::RenderWidget::destroy):
2395
2396 2011-06-29  Brent Fulgham  <bfulgham@webkit.org>
2397
2398         Speculative WinCE build correction.
2399
2400         * rendering/RenderThemeWin.cpp:
2401         (WebCore::drawControl): Don't call setRGBABitmapAlpha
2402           for WinCE case.
2403
2404 2011-06-29  Ryosuke Niwa  <rniwa@webkit.org>
2405
2406         Reviewed by Darin Adler.
2407
2408         REGRESSION(r89952): r89952 added a wrong assertion in visible_units.cpp
2409         https://bugs.webkit.org/show_bug.cgi?id=63668
2410
2411         We need to assert the offset to be zero only when the position is NOT offset in node.
2412
2413         * editing/visible_units.cpp:
2414         (WebCore::startOfParagraph):
2415
2416 2011-06-29  Brent Fulgham  <bfulgham@webkit.org>
2417
2418         Speculative WinCE build correction after r90057.
2419
2420         * CMakeListsWinCE.txt: Roll back r90061, since GetWorldTransform
2421           is not available in WinCE.
2422         * platform/win/ScrollbarThemeWin.cpp: Conditionally exclude calls
2423           to DIBPixelData::setRGBABitmapAlpha for WinCE.
2424         (WebCore::ScrollbarThemeWin::paintTrackPiece):
2425         (WebCore::ScrollbarThemeWin::paintButton):
2426         (WebCore::ScrollbarThemeWin::paintThumb):
2427
2428 2011-06-29  Brent Fulgham  <bfulgham@webkit.org>
2429
2430         Speculative WinCE build correction after r90057.
2431
2432         * CMakeListsWinCE.txt: Add missing DIBPixelData.cpp to
2433         WinCE build to support setting bitmap image alpha value.
2434
2435 2011-06-29  Simon Fraser  <simon.fraser@apple.com>
2436
2437         Reviewed by Beth Dakin.
2438
2439         Lay some groundwork for rubber-banding in overflow:scroll divs
2440         https://bugs.webkit.org/show_bug.cgi?id=63654
2441
2442         Make it possible for scrollTop and scrollLeft on a RenderLayer to be
2443         set to negative values, which we will do during rubber-banding in
2444         future. Continue to clamp programmatic scrolls, and scroll positions
2445         set by layout between 0 and the max value.
2446
2447         Test: fast/layers/negative-scroll-positions.html
2448
2449         * rendering/RenderBox.cpp:
2450         (WebCore::RenderBox::setScrollLeft):
2451         (WebCore::RenderBox::setScrollTop):
2452         * rendering/RenderLayer.cpp:
2453         (WebCore::RenderLayer::scrollToOffset):
2454         (WebCore::RenderLayer::scrollTo):
2455         * rendering/RenderLayer.h:
2456         (WebCore::RenderLayer::scrollToXOffset):
2457         (WebCore::RenderLayer::scrollToYOffset):
2458         * rendering/RenderTextControlSingleLine.cpp:
2459         (WebCore::RenderTextControlSingleLine::forwardEvent):
2460
2461 2011-06-29  Anders Carlsson  <andersca@apple.com>
2462
2463         Reviewed by Simon Fraser.
2464
2465         RenderLayer::maximumScrollPosition() is wrong
2466         https://bugs.webkit.org/show_bug.cgi?id=62667
2467
2468         * platform/ScrollableArea.h:
2469         (WebCore::ScrollableArea::isVerticalScrollerPinnedToMinimumPosition):
2470         (WebCore::ScrollableArea::isVerticalScrollerPinnedToMaximumPosition):
2471         Add these for good measure; they will be needed in an upcoming patch.
2472
2473         * rendering/RenderLayer.cpp:
2474         (WebCore::RenderLayer::maximumScrollPosition):
2475         Subtract the visible content rect, including the scroll bars.
2476
2477 2011-06-29  Brent Fulgham  <bfulgham@webkit.org>
2478
2479         Speculative WinCE build correction after r90053.
2480
2481         * platform/graphics/GraphicsContext.h:
2482         (WebCore::GraphicsContext::inTransparencyLayer): Provide
2483         stub implementation for 'inTransparencyLayer'.
2484
2485 2011-06-29  Xu Fan  <qifuren1985@gmail.com>
2486
2487         Reviewed by Brent Fulgham.
2488
2489         Fix Scrollbars Transparent in Windows XP if WebKit is using Layered Window
2490         https://bugs.webkit.org/show_bug.cgi?id=61136
2491
2492         * platform/graphics/win/DIBPixelData.h: add a static method setRGBABitmapAlpha
2493         * platform/graphics/win/DIBPixelData.cpp: add implementation
2494         * platform/win/ScrollbarThemeWin.cpp: fix scroolbar transparent
2495         * rendering/RenderThemeWin.cpp: fix textbox and button transparent
2496
2497 2011-06-29  Emil A Eklund  <eae@chromium.org>
2498
2499         Reviewed by Eric Seidel.
2500
2501         Switch RenderBoxModelObject::margin* and setMargin* to to new layout types
2502         https://bugs.webkit.org/show_bug.cgi?id=63652
2503
2504         Switch margin methods for render tree over to the new layout unit abstraction.
2505
2506         No new tests, no functionality changes.
2507
2508         * rendering/InlineFlowBox.h:
2509         * rendering/RenderBlock.cpp:
2510         * rendering/RenderBlock.h:
2511         * rendering/RenderBox.cpp:
2512         * rendering/RenderBox.h:
2513         * rendering/RenderBoxModelObject.h:
2514         * rendering/RenderInline.cpp:
2515         * rendering/RenderInline.h:
2516         * rendering/RenderText.h:
2517
2518 2011-06-29  Levi Weintraub  <leviw@chromium.org>
2519
2520         Reviewed by Eric Seidel.
2521
2522         Switch paint to new layout types
2523         https://bugs.webkit.org/show_bug.cgi?id=63645
2524
2525         Switch vanilla paint function over to the new layout unit abstraction.
2526
2527         No new tests, no functionality changes.
2528
2529         * rendering/RenderBlock.cpp:
2530         (WebCore::RenderBlock::paint):
2531         * rendering/RenderBlock.h:
2532         * rendering/RenderBox.cpp:
2533         (WebCore::RenderBox::paint):
2534         * rendering/RenderBox.h:
2535         * rendering/RenderDetailsMarker.cpp:
2536         (WebCore::RenderDetailsMarker::paint):
2537         * rendering/RenderDetailsMarker.h:
2538         * rendering/RenderEmbeddedObject.cpp:
2539         (WebCore::RenderEmbeddedObject::paint):
2540         * rendering/RenderEmbeddedObject.h:
2541         * rendering/RenderFrameSet.cpp:
2542         (WebCore::RenderFrameSet::paint):
2543         * rendering/RenderFrameSet.h:
2544         * rendering/RenderImage.cpp:
2545         (WebCore::RenderImage::paint):
2546         * rendering/RenderImage.h:
2547         * rendering/RenderInline.cpp:
2548         (WebCore::RenderInline::paint):
2549         * rendering/RenderInline.h:
2550         * rendering/RenderLineBoxList.h:
2551         * rendering/RenderListItem.cpp:
2552         (WebCore::RenderListItem::paint):
2553         * rendering/RenderListItem.h:
2554         * rendering/RenderListMarker.cpp:
2555         (WebCore::RenderListMarker::paint):
2556         * rendering/RenderListMarker.h:
2557         * rendering/RenderObject.h:
2558         * rendering/RenderReplaced.cpp:
2559         (WebCore::RenderReplaced::paint):
2560         * rendering/RenderReplaced.h:
2561         * rendering/RenderReplica.cpp:
2562         (WebCore::RenderReplica::paint):
2563         * rendering/RenderReplica.h:
2564         * rendering/RenderTable.cpp:
2565         (WebCore::RenderTable::paint):
2566         * rendering/RenderTable.h:
2567         * rendering/RenderTableCell.cpp:
2568         (WebCore::RenderTableCell::paint):
2569         * rendering/RenderTableCell.h:
2570         * rendering/RenderTableRow.cpp:
2571         (WebCore::RenderTableRow::paint):
2572         * rendering/RenderTableRow.h:
2573         * rendering/RenderTableSection.cpp:
2574         (WebCore::RenderTableSection::paint):
2575         * rendering/RenderTableSection.h:
2576         * rendering/RenderTextControlSingleLine.cpp:
2577         (WebCore::RenderTextControlSingleLine::paint):
2578         * rendering/RenderTextControlSingleLine.h:
2579         * rendering/RenderTheme.h:
2580         * rendering/RenderView.cpp:
2581         (WebCore::RenderView::paint):
2582         * rendering/RenderView.h:
2583         * rendering/RenderWidget.cpp:
2584         (WebCore::RenderWidget::paint):
2585         * rendering/RenderWidget.h:
2586         * rendering/mathml/RenderMathMLBlock.h:
2587         * rendering/mathml/RenderMathMLFraction.h:
2588         * rendering/mathml/RenderMathMLRoot.h:
2589         * rendering/mathml/RenderMathMLSquareRoot.h:
2590         * rendering/svg/RenderSVGContainer.h:
2591         * rendering/svg/RenderSVGForeignObject.h:
2592         * rendering/svg/RenderSVGHiddenContainer.h:
2593         * rendering/svg/RenderSVGImage.h:
2594         * rendering/svg/RenderSVGPath.h:
2595         * rendering/svg/RenderSVGRoot.cpp:
2596         (WebCore::RenderSVGRoot::paint):
2597         * rendering/svg/RenderSVGRoot.h:
2598         * rendering/svg/RenderSVGText.h:
2599
2600 2011-06-29  Jian Li  <jianli@chromium.org>
2601
2602         Reviewed by Kenneth Russell.
2603
2604         WebGL test failing on SL bots: fast/canvas/webgl/data-view-test.html 
2605         https://bugs.webkit.org/show_bug.cgi?id=63151
2606
2607         The fix is to change to throw TypeError in custom JS/V8 bindings.
2608
2609         * bindings/js/JSDataViewCustom.cpp:
2610         (WebCore::getDataViewMember):
2611         (WebCore::setDataViewMember):
2612         * bindings/v8/custom/V8DataViewCustom.cpp:
2613         (WebCore::V8DataView::constructorCallback):
2614         (WebCore::V8DataView::getInt8Callback):
2615
2616 2011-06-29  Luke Macpherson   <macpherson@chromium.org>
2617
2618         Reviewed by Darin Adler.
2619
2620         Convert uses of computeLengthIntForLength() to computeLength<Length>()
2621         https://bugs.webkit.org/show_bug.cgi?id=63641
2622
2623         No new tests / refactoring only.
2624
2625         * css/CSSStyleSelector.cpp:
2626         (WebCore::convertToLength):
2627         (WebCore::CSSStyleSelector::applyProperty):
2628         (WebCore::CSSStyleSelector::applyPageSizeProperty):
2629         (WebCore::CSSStyleSelector::mmLength):
2630         (WebCore::CSSStyleSelector::inchLength):
2631         (WebCore::CSSStyleSelector::mapFillSize):
2632         (WebCore::CSSStyleSelector::mapFillXPosition):
2633         (WebCore::CSSStyleSelector::mapFillYPosition):
2634
2635 2011-06-29  Chris Rogers  <crogers@google.com>
2636
2637         Reviewed by Kenneth Russell.
2638
2639         Simplify AudioBufferSourceNode rendering
2640         https://bugs.webkit.org/show_bug.cgi?id=63586
2641
2642         No new tests since this doesn't change API.
2643
2644         * webaudio/AudioBufferSourceNode.cpp:
2645         (WebCore::AudioBufferSourceNode::AudioBufferSourceNode):
2646         (WebCore::AudioBufferSourceNode::process):
2647         (WebCore::AudioBufferSourceNode::renderFromBuffer):
2648         (WebCore::AudioBufferSourceNode::reset):
2649         (WebCore::AudioBufferSourceNode::setBuffer):
2650         (WebCore::AudioBufferSourceNode::noteOn):
2651         (WebCore::AudioBufferSourceNode::noteGrainOn):
2652         (WebCore::AudioBufferSourceNode::totalPitchRate):
2653         * webaudio/AudioBufferSourceNode.h:
2654
2655 2011-06-29  Martin Robinson  <mrobinson@igalia.com>
2656
2657         Reviewed by Xan Lopez.
2658
2659         [Freetype] Many tests report ERROR: Failed to get glyph page zero.
2660         https://bugs.webkit.org/show_bug.cgi?id=63498
2661
2662         Instead of conditionally instantiating the m_scaledFont member of FontPlatformData,
2663         always instantiate it. For times when the size is 0 and the instantiation would lead
2664         to a Cairo error, we use size 1 and just make operations which would fail conditional
2665         on the m_size > 0.
2666
2667         No new tests. This change is covered by existing tests. We should
2668         observe no errors on the bots after landing.
2669
2670         * platform/graphics/cairo/FontCairo.cpp:
2671         (WebCore::Font::drawGlyphs): Instead of looking at whether or not there is
2672         a scaled font to determine whether to draw, just look at the size.
2673         * platform/graphics/freetype/FontPlatformData.h: Remove the m_font member.
2674         * platform/graphics/freetype/FontPlatformDataFreeType.cpp: Always instantiate
2675         a scaled font member and remove references to m_font. If we are instantiating
2676         a scaled font for a 0 size font, instantiate a size 1 font, so that we can
2677         still use Cairo to query font properties.
2678         * platform/graphics/freetype/GlyphPageTreeNodeFreeType.cpp:
2679         (WebCore::GlyphPage::fill): We can assume there is always a scaled font now.
2680         * platform/graphics/freetype/SimpleFontDataFreeType.cpp:
2681         (WebCore::SimpleFontData::platformInit): Ditto.
2682         (WebCore::SimpleFontData::createScaledFontData): Ditto.
2683         (WebCore::SimpleFontData::containsCharacters): Ditto.
2684         (WebCore::SimpleFontData::platformWidthForGlyph): Ditto.
2685
2686 2011-06-29  Eric Carlson  <eric.carlson@apple.com>
2687
2688         Reviewed by Darin Adler.
2689
2690         Media element loads blocked by a resource load delegate do not generate an error event
2691         https://bugs.webkit.org/show_bug.cgi?id=63558
2692
2693         Tests: media/media-blocked-by-beforeload.html
2694                media/media-blocked-by-willsendrequest.html
2695
2696         * html/HTMLMediaElement.cpp:
2697         (WebCore::HTMLMediaElement::selectMediaResource): Call mediaLoadingFailed instead of noneSupported
2698             so all failures follow the same code path.
2699         (WebCore::HTMLMediaElement::loadResource): Call mediaLoadingFailed when there is no frame, when 
2700             the loader delegate rejects the url, or when MediaPlayer doesn't find a media engine that
2701             supports the type.
2702         (WebCore::HTMLMediaElement::selectNextSourceChild): Fix incorrect logging.
2703         (WebCore::HTMLMediaElement::mediaLoadingFailed): Change name of parameter from "state" to
2704             "error" to make its purpose obvious.
2705
2706         * platform/graphics/MediaPlayer.cpp:
2707         (WebCore::MediaPlayer::load): Return a bool indicating whether or not the url was given to
2708             a media engine.
2709         (WebCore::MediaPlayer::loadWithNextMediaEngine): Add some logging.
2710         * platform/graphics/MediaPlayer.h:
2711
2712 2011-06-29  Darin Adler  <darin@apple.com>
2713
2714         Reviewed by Anders Carlsson.
2715
2716         [WebKit2] Crash loading page that adds/removes frame in DOMContentLoaded/loaded
2717         https://bugs.webkit.org/show_bug.cgi?id=63483
2718
2719         Test: fast/loader/create-frame-in-DOMContentLoaded.html
2720
2721         * loader/FrameLoader.cpp:
2722         (WebCore::FrameLoader::init): Added an assertion.
2723         (WebCore::FrameLoader::finishedLoadingDocument): Removed a non-helpful #if
2724         statement. The rule that we do not call the client when creating the initial
2725         empty document was nominally specific to Windows and Chromium but is needed
2726         for all platforms.
2727
2728 2011-06-29  Emil A Eklund  <eae@chromium.org>
2729
2730         Reviewed by Darin Adler.
2731
2732         Switch hitTestColumns/Contents/Floats to to new layout types
2733         https://bugs.webkit.org/show_bug.cgi?id=63589
2734
2735         Switch location and size methods for RenderBox over to the new layout unit abstraction.
2736
2737         No new tests, no functionality changes.
2738
2739         * rendering/ColumnInfo.h:
2740         (WebCore::ColumnInfo::desiredColumnWidth):
2741         (WebCore::ColumnInfo::setDesiredColumnWidth):
2742         (WebCore::ColumnInfo::columnHeight):
2743         (WebCore::ColumnInfo::setColumnCountAndHeight):
2744         (WebCore::ColumnInfo::setColumnHeight):
2745         (WebCore::ColumnInfo::updateMinimumColumnHeight):
2746         (WebCore::ColumnInfo::minimumColumnHeight):
2747         * rendering/RenderBlock.cpp:
2748         (WebCore::RenderBlock::addOverflowFromChildren):
2749         (WebCore::RenderBlock::paintColumnRules):
2750         (WebCore::RenderBlock::paintColumnContents):
2751         (WebCore::RenderBlock::hitTestFloats):
2752         (WebCore::RenderBlock::hitTestColumns):
2753         (WebCore::RenderBlock::hitTestContents):
2754         (WebCore::RenderBlock::columnRectAt):
2755         * rendering/RenderBlock.h:
2756         (WebCore::RenderBlock::xPositionForFloatIncludingMargin):
2757         (WebCore::RenderBlock::yPositionForFloatIncludingMargin):
2758         * rendering/RenderLayer.cpp:
2759         (WebCore::RenderLayer::hitTestContents):
2760         * rendering/RenderLayer.h:
2761
2762 2011-06-29  Adrienne Walker  <enne@google.com>
2763
2764         Reviewed by James Robinson.
2765
2766         [chromium] Divide by zero in TilingData
2767         https://bugs.webkit.org/show_bug.cgi?id=63305
2768
2769         Add safety checks for empty layers.
2770
2771         * platform/graphics/chromium/LayerTilerChromium.cpp:
2772         (WebCore::LayerTilerChromium::prepareToUpdate):
2773         (WebCore::LayerTilerChromium::reset):
2774         (WebCore::LayerTilerChromium::updateRect):
2775
2776 2011-06-29  Dimitri Glazkov  <dglazkov@chromium.org>
2777
2778         Reviewed by Adam Barth.
2779
2780         Extract setShadowRoot function, harden it in preparation to be exposed to script.
2781         https://bugs.webkit.org/show_bug.cgi?id=63596
2782
2783         Refactoring, covered by existing tests.
2784
2785         * dom/Element.cpp:
2786         (WebCore::validateShadowRoot): Added.
2787         (WebCore::Element::setShadowRoot): Extracted from ensureShadowRoot.
2788         (WebCore::Element::ensureShadowRoot): Changed to use setShadowRoot.
2789         * dom/Element.h: Added decl.
2790
2791 2011-06-29  Vsevolod Vlasov  <vsevik@chromium.org>
2792
2793         Reviewed by Pavel Feldman.
2794
2795         Web Inspector: REGRESSION Resource revision fails to request content if it was not yet loaded for resource.
2796         https://bugs.webkit.org/show_bug.cgi?id=63631
2797
2798         Test: http/tests/inspector/network/network-request-revision-content.html
2799
2800         * inspector/front-end/Resource.js:
2801         (WebInspector.ResourceRevision.prototype.requestContent):
2802
2803 2011-06-29  Igor Oliveira  <igor.oliveira@openbossa.org>
2804
2805         Reviewed by Andreas Kling.
2806
2807         [Qt] GraphicsContext::clipToImageBuffer does not support scale transformation
2808         https://bugs.webkit.org/show_bug.cgi?id=63555
2809
2810         Scale alphaMask if GraphicsContext is scaled
2811
2812         * platform/graphics/qt/GraphicsContextQt.cpp:
2813         (WebCore::GraphicsContext::pushTransparencyLayerInternal):
2814         * platform/graphics/qt/ImageBufferQt.cpp:
2815         (WebCore::ImageBuffer::clip):
2816
2817 2011-06-29  Andrey Kosyakov  <caseq@chromium.org>
2818
2819         Reviewed by Pavel Feldman.
2820
2821         Web Inspector: backend needs to provide system-unique object ids, so these remain unique across navigation
2822         https://bugs.webkit.org/show_bug.cgi?id=62894
2823
2824         * inspector/InspectorController.cpp:
2825         (WebCore::InspectorController::setAgentProcessIdentifier):
2826         * inspector/InspectorController.h:
2827         * inspector/InspectorPageAgent.cpp:
2828         (WebCore::InspectorPageAgent::setAgentIdentifier):
2829         (WebCore::InspectorPageAgent::createIdentifier):
2830         (WebCore::InspectorPageAgent::frameForId):
2831         (WebCore::InspectorPageAgent::frameId):
2832         (WebCore::InspectorPageAgent::frameDestroyed):
2833         * inspector/InspectorPageAgent.h:
2834
2835 2011-06-29  Pavel Feldman  <pfeldman@google.com>
2836
2837         Reviewed by Yury Semikhatsky.
2838
2839         Web Inspector: create status bar buttons programmatically. Add "Inspect" button to all panels.
2840         https://bugs.webkit.org/show_bug.cgi?id=63450
2841
2842         Buttons should be created in code, not in HTML. Also making Inspect Element
2843         action available on all panels (as an experiment).
2844
2845         * inspector/front-end/ConsoleView.js:
2846         (WebInspector.ConsoleView.prototype.show):
2847         (WebInspector.ConsoleView.prototype.hide):
2848         * inspector/front-end/ElementsPanel.js:
2849         (WebInspector.ElementsPanel):
2850         (WebInspector.ElementsPanel.prototype.get statusBarItems):
2851         (WebInspector.ElementsPanel.prototype.updateFocusedNode):
2852         (WebInspector.ElementsPanel.prototype._setSearchingForNode):
2853         (WebInspector.ElementsPanel.prototype.toggleSearchingForNode):
2854         * inspector/front-end/inspector.css:
2855         (button.dock-status-bar-item.status-bar-item .glyph):
2856         (button.dock-status-bar-item.status-bar-item.toggled-on .glyph):
2857         (.console-status-bar-item .glyph):
2858         * inspector/front-end/inspector.html:
2859         * inspector/front-end/inspector.js:
2860         (WebInspector._createGlobalStatusBarItems):
2861         (WebInspector.set attached):
2862
2863 2011-06-29  Pavel Feldman  <pfeldman@google.com>
2864
2865         Reviewed by Yury Semikhatsky.
2866
2867         Web Inspector: tab crash after deleting trailing quote when editing attribute
2868         https://bugs.webkit.org/show_bug.cgi?id=63544
2869
2870         * inspector/InspectorDOMAgent.cpp:
2871         (WebCore::InspectorDOMAgent::setAttributesText):
2872         * inspector/front-end/ElementsTreeOutline.js:
2873         (WebInspector.ElementsTreeElement.prototype._attributeEditingCommitted.moveToNextAttributeIfNeeded):
2874         (WebInspector.ElementsTreeElement.prototype._attributeEditingCommitted):
2875
2876 2011-06-29  Vsevolod Vlasov  <vsevik@chromium.org>
2877
2878         Reviewed by Pavel Feldman.
2879
2880         Web Inspector: REGRESSION Inspector failing to load resource content after navigation. Safari.
2881         https://bugs.webkit.org/show_bug.cgi?id=63480
2882
2883         * inspector/front-end/NetworkManager.js:
2884         (WebInspector.NetworkDispatcher):
2885         (WebInspector.NetworkDispatcher.prototype.resourceLoadedFromMemoryCache):
2886
2887 2011-06-29  Mike West  <mkwst@chromium.org>
2888
2889         Reviewed by Pavel Feldman.
2890
2891         Web Inspector: Missing fields in HAR
2892         https://bugs.webkit.org/show_bug.cgi?id=58127
2893         
2894         Specifically, this patch adds:
2895         - entry.request.httpVersion
2896         - entry.request.headersSize
2897         - entry.request.bodySize
2898         - entry.response.httpVersion
2899         - entry.response.headersSize
2900         - entry.response.bodySize
2901         - entry.response.content.compression
2902         
2903         Tests: http/tests/inspector/resource-har-conversion.html
2904                http/tests/inspector/resource-har-headers.html
2905                http/tests/inspector/resource-parameters.html
2906                http/tests/inspector/network/network-size.html
2907
2908         * inspector/front-end/HAREntry.js:
2909         (WebInspector.HAREntry.prototype.build):
2910         (WebInspector.HAREntry.prototype._buildRequest):
2911         (WebInspector.HAREntry.prototype._buildResponse):
2912         (WebInspector.HAREntry.prototype._buildContent):
2913         (WebInspector.HAREntry.prototype._buildCookie):
2914         (WebInspector.HAREntry.prototype._interval):
2915         (WebInspector.HAREntry.prototype.get requestBodySize):
2916         (WebInspector.HAREntry.prototype.get responseBodySize):
2917         (WebInspector.HAREntry.prototype.get responseCompression):
2918         (WebInspector.HARLog.prototype.build):
2919         * inspector/front-end/Resource.js:
2920         (WebInspector.Resource.prototype.set requestHeaders):
2921         (WebInspector.Resource.prototype.get requestHeadersText):
2922         (WebInspector.Resource.prototype.set requestHeadersText):
2923         (WebInspector.Resource.prototype.get requestHeadersSize):
2924         (WebInspector.Resource.prototype.get requestHttpVersion):
2925         (WebInspector.Resource.prototype.set responseHeaders):
2926         (WebInspector.Resource.prototype.get responseHeadersText):
2927         (WebInspector.Resource.prototype.set responseHeadersText):
2928         (WebInspector.Resource.prototype.get responseHeadersSize):
2929         (WebInspector.Resource.prototype.get responseHttpVersion):
2930
2931 2011-06-29  Hayato Ito  <hayato@chromium.org>
2932
2933         Reviewed by Hajime Morita.
2934
2935         Make a shadow host transfer a focus to the first focusable element in the shadow root when its focus() is called.
2936         https://bugs.webkit.org/show_bug.cgi?id=62358.
2937
2938         This patch doesn't take an effect on the following elements to keep a compatibility.
2939         - <input>, <textarea>, <video> and <audio> elements
2940         We'll address these elements separately after re-targeting focus events
2941         (bug 61421) is implemented.
2942
2943         A shadow root's <content> is not considered in this patch.
2944         That should be addressed in another patch. See bug 63522.
2945
2946         Test: fast/dom/shadow/shadow-host-transfer-focus.html
2947
2948         * dom/Element.cpp:
2949         (WebCore::Element::focus):
2950         * page/FocusController.cpp:
2951         (WebCore::shadowRoot):
2952         (WebCore::isTreeScopeOwner):
2953         (WebCore::FocusController::transferFocusToElementInShadowRoot):
2954         (WebCore::hasCustomFocusLogic):
2955         (WebCore::FocusController::findFocusableNodeDecendingDownIntoFrameDocumentOrShadowRoot):
2956         (WebCore::FocusController::advanceFocusInDocumentOrder):
2957         (WebCore::ownerOfTreeScope):
2958         (WebCore::FocusController::findFocusableNodeAcrossTreeScope):
2959         * page/FocusController.h:
2960
2961 2011-06-29  Ryan Sleevi  <rsleevi@chromium.org>
2962
2963         Reviewed by Dirk Schulze.
2964
2965         SVGRadialGradientElement::selfHasRelativeLengths() doesn't consider if cx() is relative
2966         https://bugs.webkit.org/show_bug.cgi?id=61600
2967
2968         Correct the logic for checking for relative lengths in a SVGRadialGradientElement to consider cx() in addition to cy()
2969         
2970         No new tests, as there is no way to currently test this. With the bug present, a side-effect is causing the
2971         expected/correct image to be rendered. This is because the cached SVG resource is getting invalided through a
2972         different path, forcing a repaint. The repaint takes into consideration the proper dimensions, hiding the bug.
2973
2974         * svg/SVGRadialGradientElement.cpp:
2975         (WebCore::SVGRadialGradientElement::selfHasRelativeLengths):
2976
2977 2011-06-28  Dirk Schulze  <krit@webkit.org>
2978
2979         Reviewed by Nikolas Zimmermann.
2980
2981         SVGAnimatedType should support SVGBoolean animation
2982         https://bugs.webkit.org/show_bug.cgi?id=63529
2983
2984         Follow up of "SVGAnimation should use direct unit animation for SVGLength": https://bugs.webkit.org/show_bug.cgi?id=61368
2985         This patch continues the conversion to the new concept of SVGAnimatorFactory with SVGBoolean.
2986         
2987         The new animator does not affect any behavior, since it was animated with SVGAnimatedString before. The new animator is still needed
2988         to support animVal and baseVal later.
2989
2990         Test: svg/animations/svgboolean-animation-1.html
2991
2992         * CMakeLists.txt: Add new file to build system.
2993         * GNUmakefile.list.am: Ditto.
2994         * WebCore.gypi: Ditto.
2995         * WebCore.pro: Ditto.
2996         * WebCore.xcodeproj/project.pbxproj: Ditto.
2997         * svg/SVGAllInOne.cpp: Ditto.
2998         * svg/SVGAnimateElement.cpp: Make use of AnimatedBoolean.
2999         (WebCore::SVGAnimateElement::determineAnimatedAttributeType):
3000         (WebCore::SVGAnimateElement::calculateAnimatedValue):
3001         (WebCore::SVGAnimateElement::calculateFromAndToValues):
3002         (WebCore::SVGAnimateElement::calculateFromAndByValues):
3003         (WebCore::SVGAnimateElement::resetToBaseValue):
3004         (WebCore::SVGAnimateElement::applyResultsToTarget):
3005         (WebCore::SVGAnimateElement::calculateDistance):
3006         * svg/SVGAnimatedBoolean.cpp: Added. New animator for SVGBoolean.
3007         (WebCore::SVGAnimatedBooleanAnimator::SVGAnimatedBooleanAnimator):
3008         (WebCore::SVGAnimatedBooleanAnimator::constructFromString):
3009         (WebCore::SVGAnimatedBooleanAnimator::calculateFromAndToValues):
3010         (WebCore::SVGAnimatedBooleanAnimator::calculateFromAndByValues):
3011         (WebCore::SVGAnimatedBooleanAnimator::calculateAnimatedValue):
3012         (WebCore::SVGAnimatedBooleanAnimator::calculateDistance):
3013         * svg/SVGAnimatedBoolean.h:
3014         (WebCore::SVGAnimatedBooleanAnimator::~SVGAnimatedBooleanAnimator):
3015         * svg/SVGAnimatedType.cpp: Use bool for SVGBoolean.
3016         (WebCore::SVGAnimatedType::~SVGAnimatedType):
3017         (WebCore::SVGAnimatedType::createBoolean):
3018         (WebCore::SVGAnimatedType::boolean):
3019         (WebCore::SVGAnimatedType::valueAsString):
3020         (WebCore::SVGAnimatedType::setValueAsString):
3021         * svg/SVGAnimatedType.h:
3022         * svg/SVGAnimatorFactory.h: New crate function for SVGAnimatedSVGBooleanAnimator.
3023         (WebCore::SVGAnimatorFactory::create):
3024
3025 2011-06-28  Dimitri Glazkov  <dglazkov@chromium.org>
3026
3027         Reviewed by Adam Barth.
3028
3029         Make applyAuthorSheets settable on ShadowRoot.
3030         https://bugs.webkit.org/show_bug.cgi?id=63599
3031
3032         Refactoring and adding not-yet used function, tests to follow when API lands.
3033
3034         * dom/ShadowRoot.cpp:
3035         (WebCore::ShadowRoot::ShadowRoot): Added initializer.
3036         (WebCore::ShadowRoot::applyAuthorSheets): Made to use member variable.
3037         (WebCore::ShadowRoot::setApplyAuthorSheets): Added.
3038         * dom/ShadowRoot.h: Tweaked, added decls.
3039
3040 2011-06-28  Ilya Sherman  <isherman@chromium.org>
3041
3042         Reviewed by Adam Barth.
3043
3044         form.autocomplete="off" does not work
3045         Rename the autoComplete() method for HTMLFormElement, HTMLFormControlElementWithState, and HTMLInputElement to shouldAutocomplete()
3046         Add the autocomplete attribute to HTMLFormElement.idl and HTMLInputElement.idl
3047         https://bugs.webkit.org/show_bug.cgi?id=35823
3048
3049         Test: fast/forms/autocomplete.html
3050
3051         * html/HTMLFormControlElement.cpp:
3052         (WebCore::HTMLFormControlElementWithState::shouldAutocomplete): Renamed from ::autoComplete()
3053         (WebCore::HTMLFormControlElementWithState::shouldSaveAndRestoreFormControlState): Update callsite.
3054         * html/HTMLFormControlElement.h:
3055         * html/HTMLFormElement.cpp:
3056         (WebCore::HTMLFormElement::~HTMLFormElement): Update callsite.
3057         (WebCore::HTMLFormElement::parseMappedAttribute): Update callsite.
3058         (WebCore::HTMLFormElement::documentDidBecomeActive): Update callsite.
3059         (WebCore::HTMLFormElement::willMoveToNewOwnerDocument): Update callsite.
3060         (WebCore::HTMLFormElement::didMoveToNewOwnerDocument): Update callsite.
3061         (WebCore::HTMLFormElement::shouldAutocomplete): Renamed from ::autoComplete()
3062         * html/HTMLFormElement.h:
3063         * html/HTMLFormElement.idl: Bind the autocomplete attribute to a JavaScript property.
3064         * html/HTMLInputElement.cpp:
3065         (WebCore::HTMLInputElement::shouldAutocomplete): Renamed from ::autoComplete()
3066         * html/HTMLInputElement.h:
3067         * html/HTMLInputElement.idl: Bind the autocomplete attribute to a JavaScript property.
3068         * WebCore.exp.in: Updated autoComplete() -> shouldAutocomplete()
3069
3070 2011-06-28  Dimitri Glazkov  <dglazkov@chromium.org>
3071
3072         Reviewed by Kent Tamura.
3073
3074         Store shadowPseudoId in ElementRareData.
3075         https://bugs.webkit.org/show_bug.cgi?id=63604
3076
3077         No new tests, because the code isn't yet used.
3078
3079         * css/CSSSelector.cpp:
3080         (WebCore::CSSSelector::isUnknownPseudoType): Added convenience helper.
3081         * css/CSSSelector.h: Added decl.
3082         * dom/Element.cpp:
3083         (WebCore::Element::shadowPseudoId): Changed to use ElementRareData.
3084         (WebCore::Element::setShadowPseudoId): Ditto.
3085         * dom/Element.h: Added decls.
3086         * dom/ElementRareData.h: Added a member to keep shadowPseudoId.
3087
3088 2011-06-28  Kenichi Ishibashi  <bashi@chromium.org>
3089
3090         Reviewed by Tony Chang.
3091
3092         [Chromium] Remove dependencies on harfbuzz from FontPlatformDataLinux and FontLinux
3093         https://bugs.webkit.org/show_bug.cgi?id=62530
3094
3095         - Moved codes of FontLinux which depend on harfbuzz APIs to ComplexTextController.  Removed Some methods of ComplexTextController(advances() and logClusters()) since they are no longer needed.
3096         - Moved RefCountedHarfbuzzFace from FontPlatformDataLinux to HarfbuzzSkia and renamed it to HarfbuzzFace.
3097
3098         No new tests because there is no behavior change (The existing tests should cover the changes).
3099
3100         * platform/graphics/chromium/ComplexTextControllerLinux.cpp:
3101         (WebCore::ComplexTextController::ComplexTextController): Added arguments so eliminating setter invocations.
3102         (WebCore::ComplexTextController::setupForRTL): Added.
3103         (WebCore::ComplexTextController::setupFontForScriptRun): Adopt the change of HarfbuzzFace class.
3104         (WebCore::ComplexTextController::setGlyphPositions): Use m_item.log_clusters instead of removed method.
3105         (WebCore::ComplexTextController::glyphIndexForXPositionInScriptRun): Added.
3106         (WebCore::ComplexTextController::offsetForPosition): Ditto.
3107         (WebCore::ComplexTextController::selectionRect): Ditto.
3108         * platform/graphics/chromium/ComplexTextControllerLinux.h:
3109         (WebCore::ComplexTextController::width):
3110         * platform/graphics/chromium/FontLinux.cpp: Removed truncateFixedPointToInteger().
3111         (WebCore::Font::drawComplexText): Removed setter invocations of ComplexTextController.
3112         (WebCore::Font::floatWidthForComplexText): Ditto.
3113         (WebCore::Font::offsetForPositionForComplexText): Moved harfbuzz dependent code to ComplexTextController.
3114         (WebCore::Font::selectionRectForComplexText): Ditto.
3115         * platform/graphics/chromium/FontPlatformDataLinux.cpp:
3116         (WebCore::FontPlatformData::harfbuzzFace): Wrapped up HB_FaceRec in HarfbuzzFace class.
3117         * platform/graphics/chromium/FontPlatformDataLinux.h: Moved RefCountedHarfbuzzFace class and renamed to HarfbuzzFace.
3118         * platform/graphics/chromium/HarfbuzzSkia.cpp:
3119         (WebCore::allocHarfbuzzFont): Moved from ComplexTextControllerLinux.cpp.
3120         (WebCore::HarfbuzzFace::HarfbuzzFace): Added.
3121         (WebCore::HarfbuzzFace::~HarfbuzzFace): Added.
3122         * platform/graphics/chromium/HarfbuzzSkia.h:
3123         (WebCore::HarfbuzzFace::create): Added.
3124         (WebCore::HarfbuzzFace::face): Added.
3125         * platform/graphics/skia/GlyphPageTreeNodeSkia.cpp:
3126         (WebCore::substituteWithVerticalGlyphs): Adopt  the change of HarfbuzzFace class.
3127
3128 2011-06-28  Roland Steiner  <rolandsteiner@chromium.org>
3129
3130         Reviewed by Eric Seidel.
3131
3132         Bug 55930 - (CVE-2011-1440) Incorrect handling of 'display:' property within nested <ruby> tags
3133         https://bugs.webkit.org/show_bug.cgi?id=55930
3134
3135         Don't set style type BEFORE/AFTER on anonymous wrapper block.
3136         Rather, check style type on generated wrapped child.
3137
3138         Tests: fast/ruby/generated-after-counter-doesnt-crash.html
3139                fast/ruby/generated-before-and-after-counter-doesnt-crash.html
3140                fast/ruby/generated-before-counter-doesnt-crash.html
3141
3142         * rendering/RenderRuby.cpp:
3143         (WebCore::isAnonymousRubyInlineBlock):
3144         (WebCore::isRubyBeforeBlock):
3145         (WebCore::isRubyAfterBlock):
3146         (WebCore::rubyBeforeBlock):
3147         (WebCore::rubyAfterBlock):
3148         (WebCore::createAnonymousRubyInlineBlock):
3149         (WebCore::RenderRubyAsInline::addChild):
3150         (WebCore::RenderRubyAsBlock::addChild):
3151
3152 2011-06-28  Emil A Eklund  <eae@chromium.org>
3153
3154         Reviewed by Eric Seidel.
3155
3156         Switch RenderLayer position/size to to new layout types
3157         https://bugs.webkit.org/show_bug.cgi?id=63578
3158
3159         Switch location and size methods for RenderLayer over to the new layout unit abstraction.
3160         
3161         No new tests, no functionality changes.
3162
3163         * rendering/RenderLayer.cpp:
3164         (WebCore::RenderLayer::resize):
3165         (WebCore::RenderLayer::visibleHeight):
3166         (WebCore::RenderLayer::visibleWidth):
3167         (WebCore::RenderLayer::offsetFromResizeCorner):
3168         * rendering/RenderLayer.h:
3169         (WebCore::RenderLayer::location):
3170         (WebCore::RenderLayer::setLocation):
3171         (WebCore::RenderLayer::size):
3172         (WebCore::RenderLayer::setSize):
3173         (WebCore::RenderLayer::rect):
3174         (WebCore::RenderLayer::renderBoxLocation):
3175         (WebCore::RenderLayer::renderBoxX):
3176         (WebCore::RenderLayer::renderBoxY):
3177         * rendering/RenderListBox.cpp:
3178         (WebCore::RenderListBox::visibleHeight):
3179         (WebCore::RenderListBox::visibleWidth):
3180         * rendering/RenderListBox.h:
3181
3182 2011-06-28  Levi Weintraub  <leviw@chromium.org>
3183
3184         Reviewed by Eric Seidel.
3185
3186         Switch paintObject and paintReplaced to new layout types
3187         https://bugs.webkit.org/show_bug.cgi?id=63585
3188
3189         Switching paintObject and paintReplaced to layout type abstractions from more integral types.
3190
3191         No new tests as this is just moving to an abstraction.
3192
3193         * rendering/RenderBlock.cpp:
3194         (WebCore::RenderBlock::paintObject):
3195         * rendering/RenderBlock.h:
3196         * rendering/RenderBox.h:
3197         (WebCore::RenderBox::paintObject):
3198         * rendering/RenderEmbeddedObject.cpp:
3199         (WebCore::RenderEmbeddedObject::paintReplaced):
3200         * rendering/RenderEmbeddedObject.h:
3201         * rendering/RenderFileUploadControl.cpp:
3202         (WebCore::RenderFileUploadControl::paintObject):
3203         * rendering/RenderFileUploadControl.h:
3204         * rendering/RenderHTMLCanvas.cpp:
3205         (WebCore::RenderHTMLCanvas::paintReplaced):
3206         * rendering/RenderHTMLCanvas.h:
3207         * rendering/RenderImage.cpp:
3208         (WebCore::RenderImage::paintReplaced):
3209         * rendering/RenderImage.h:
3210         * rendering/RenderListBox.cpp:
3211         (WebCore::RenderListBox::paintObject):
3212         * rendering/RenderListBox.h:
3213         * rendering/RenderReplaced.h:
3214         (WebCore::RenderReplaced::paintReplaced):
3215         * rendering/RenderTable.cpp:
3216         (WebCore::RenderTable::paintObject):
3217         * rendering/RenderTable.h:
3218         * rendering/RenderTableSection.cpp:
3219         (WebCore::RenderTableSection::paintObject):
3220         * rendering/RenderTableSection.h:
3221         * rendering/RenderTextControl.cpp:
3222         (WebCore::RenderTextControl::paintObject):
3223         * rendering/RenderTextControl.h:
3224         * rendering/RenderVideo.cpp:
3225         (WebCore::RenderVideo::paintReplaced):
3226         * rendering/RenderVideo.h:
3227
3228 2011-06-28  Adam Langley  <agl@chromium.org>
3229
3230         Reviewed by Adam Barth.
3231
3232         Skip cache validation on back with HTTPS.
3233         https://bugs.webkit.org/show_bug.cgi?id=63537
3234
3235         For back navigations over HTTP, WebKit sets a flag to use cached data
3236         irrespective of whether it has expired. However, this isn't currently
3237         done for HTTPS.
3238
3239         The logic in question was added in
3240         https://bugs.webkit.org/show_bug.cgi?id=33993 and appears to have been
3241         precautionary. However, both Firefox and IE will use this back
3242         navigation trick for HTTPS as well and so we should probably behave
3243         likewise.
3244
3245         Test: http/tests/cache/history-only-cached-subresource-loads-max-age-https.html
3246
3247         * loader/FrameLoader.cpp:
3248         (WebCore::FrameLoader::addExtraFieldsToRequest):
3249
3250 2011-06-28  Dimitri Glazkov  <dglazkov@chromium.org>
3251
3252         Reviewed by Adam Barth.
3253
3254         Remove errant isShadowBoundary on ShadowRoot.
3255         https://bugs.webkit.org/show_bug.cgi?id=63588
3256
3257         Removing dead code, no tests for that.
3258
3259         * dom/ShadowRoot.h: Removed a function that's no longer used.
3260
3261 2011-06-28  Zeng Huiqing  <huiqing.zeng@intel.com>
3262
3263         Reviewed by Kenneth Russell.
3264
3265         [chromium]Optimize GraphicsLayerChromium::setChildren()
3266         https://bugs.webkit.org/show_bug.cgi?id=62837
3267
3268         No new tests. 
3269
3270         * platform/graphics/chromium/GraphicsLayerChromium.cpp:
3271         (WebCore::GraphicsLayerChromium::GraphicsLayerChromium):
3272         (WebCore::GraphicsLayerChromium::setChildren):
3273         (WebCore::GraphicsLayerChromium::addChild):
3274         * platform/graphics/chromium/GraphicsLayerChromium.h:
3275
3276 2011-06-28  Levi Weintraub  <leviw@chromium.org>
3277
3278         Reviewed by Eric Seidel.
3279
3280         Switch paintBoxShadow and paintBoxDecorations to new layout types
3281         https://bugs.webkit.org/show_bug.cgi?id=63577
3282
3283         Switching paintBoxShadow and paintBoxDecorations to layout type abstraction 
3284         from more integral types.
3285
3286         No new tests as this is just moving to an abstraction.
3287
3288         * rendering/InlineFlowBox.cpp:
3289         (WebCore::InlineFlowBox::paintBoxShadow):
3290         (WebCore::InlineFlowBox::paintBoxDecorations):
3291         * rendering/InlineFlowBox.h:
3292         * rendering/RenderBox.cpp:
3293         (WebCore::RenderBox::paintBoxDecorations):
3294         * rendering/RenderBox.h:
3295         * rendering/RenderBoxModelObject.cpp:
3296         (WebCore::RenderBoxModelObject::paintBoxShadow):
3297         * rendering/RenderBoxModelObject.h:
3298         * rendering/RenderFieldset.cpp:
3299         (WebCore::RenderFieldset::paintBoxDecorations):
3300         * rendering/RenderFieldset.h:
3301         * rendering/RenderTable.cpp:
3302         (WebCore::RenderTable::paintBoxDecorations):
3303         * rendering/RenderTable.h:
3304         * rendering/RenderTableCell.cpp:
3305         (WebCore::RenderTableCell::paintBoxDecorations):
3306         * rendering/RenderTableCell.h:
3307         * rendering/RenderView.cpp:
3308         (WebCore::RenderView::paintBoxDecorations):
3309         * rendering/RenderView.h:
3310
3311 2011-06-28  Emil A Eklund  <eae@chromium.org>
3312
3313         Reviewed by Eric Seidel.
3314
3315         Switch RenderBox position/size to to new layout types
3316         https://bugs.webkit.org/show_bug.cgi?id=63571
3317
3318         Switch location and size methods for RenderBox over to the new layout unit abstraction.
3319
3320         No new tests, no functionality changes.
3321
3322         * rendering/RenderBox.cpp:
3323         * rendering/RenderBox.h:
3324         * rendering/RenderBoxModelObject.cpp:
3325         * rendering/RenderBoxModelObject.h:
3326         * rendering/RenderInline.cpp:
3327         * rendering/RenderInline.h:
3328         * rendering/RenderVideo.cpp:
3329         * rendering/RenderVideo.h:
3330
3331 2011-06-28  Sheriff Bot  <webkit.review.bot@gmail.com>
3332
3333         Unreviewed, rolling out r89968.
3334         http://trac.webkit.org/changeset/89968
3335         https://bugs.webkit.org/show_bug.cgi?id=63581
3336
3337         Broke chromium windows compile (Requested by jamesr on
3338         #webkit).
3339
3340         * WebCore.gyp/WebCore.gyp:
3341         * loader/cache/CachedFont.cpp:
3342         * platform/chromium/DragImageRef.h:
3343         * platform/graphics/FloatPoint.h:
3344         * platform/graphics/FloatRect.h:
3345         * platform/graphics/FloatSize.h:
3346         * platform/graphics/FontPlatformData.h:
3347         (WebCore::FontPlatformData::hash):
3348         * platform/graphics/GlyphBuffer.h:
3349         (WebCore::GlyphBuffer::advanceAt):
3350         (WebCore::GlyphBuffer::add):
3351         (WebCore::GlyphBuffer::expandLastAdvance):
3352         * platform/graphics/IntPoint.h:
3353         * platform/graphics/IntRect.h:
3354         * platform/graphics/IntSize.h:
3355         * platform/graphics/SimpleFontData.h:
3356         * platform/graphics/cg/FloatPointCG.cpp:
3357         * platform/graphics/cg/FloatRectCG.cpp:
3358         * platform/graphics/cg/FloatSizeCG.cpp:
3359         * platform/graphics/cg/IntPointCG.cpp:
3360         * platform/graphics/cg/IntRectCG.cpp:
3361         * platform/graphics/cg/IntSizeCG.cpp:
3362         * platform/graphics/mac/FontCustomPlatformData.cpp:
3363         (WebCore::FontCustomPlatformData::~FontCustomPlatformData):
3364         (WebCore::createFontCustomPlatformData):
3365         * platform/graphics/mac/FontCustomPlatformData.h:
3366         (WebCore::FontCustomPlatformData::FontCustomPlatformData):
3367
3368 2011-06-28  Levi Weintraub  <leviw@chromium.org>
3369
3370         Reviewed by Eric Seidel.
3371
3372         Switch PaintMask* to new layout types
3373         https://bugs.webkit.org/show_bug.cgi?id=63576
3374
3375         Switching paintMask* to layout type abstraction from more integral types.
3376
3377         No new tests as this is just moving to an abstraction.
3378
3379         * rendering/InlineFlowBox.cpp:
3380         (WebCore::InlineFlowBox::paintMask):
3381         * rendering/InlineFlowBox.h:
3382         * rendering/RenderBox.cpp:
3383         (WebCore::RenderBox::paintMask):
3384         (WebCore::RenderBox::paintMaskImages):
3385         * rendering/RenderBox.h:
3386         * rendering/RenderFieldset.cpp:
3387         (WebCore::RenderFieldset::paintMask):
3388         * rendering/RenderFieldset.h:
3389         * rendering/RenderTable.cpp:
3390         (WebCore::RenderTable::paintMask):
3391         * rendering/RenderTable.h:
3392         * rendering/RenderTableCell.cpp:
3393         (WebCore::RenderTableCell::paintMask):
3394         * rendering/RenderTableCell.h:
3395
3396 2011-06-28  Levi Weintraub  <leviw@chromium.org>
3397
3398         Reviewed by Eric Seidel.
3399
3400         Switch paintFillLayer* to new layout types
3401         https://bugs.webkit.org/show_bug.cgi?id=63570
3402
3403         Switching painFillLayer* to layout type abstraction from more integral types.
3404
3405         No new tests as this is just moving to an abstraction.
3406
3407         * rendering/InlineFlowBox.cpp:
3408         (WebCore::InlineFlowBox::paintFillLayers):
3409         (WebCore::InlineFlowBox::paintFillLayer):
3410         * rendering/InlineFlowBox.h:
3411         * rendering/RenderBox.cpp:
3412         (WebCore::RenderBox::paintFillLayers):
3413         (WebCore::RenderBox::paintFillLayer):
3414         * rendering/RenderBox.h:
3415         * rendering/RenderBoxModelObject.cpp:
3416         (WebCore::RenderBoxModelObject::paintFillLayerExtended):
3417         * rendering/RenderBoxModelObject.h:
3418         * rendering/RenderObject.h:
3419
3420 2011-06-28  Luke Macpherson   <macpherson@chromium.org>
3421
3422         Reviewed by Eric Seidel.
3423
3424         Use appropriate macro for CSSPropertyWebkitAppearance in CSSStyleSelector::applyProperty()
3425         https://bugs.webkit.org/show_bug.cgi?id=63197
3426
3427         No new tests / no functionality changed.
3428
3429         * css/CSSStyleSelector.cpp:
3430         (WebCore::CSSStyleSelector::applyProperty):
3431         Use HANDLE_INHERIT_AND_INITIAL_AND_PRIMITIVE macro and delete duplicate code.
3432
3433 2011-06-28  Cary Clark  <caryclark@google.com>
3434
3435         Reviewed by James Robinson.
3436
3437         Use Skia if Skia on Mac Chrome is enabled
3438         https://bugs.webkit.org/show_bug.cgi?id=62999
3439
3440         No new tests. This does not affect existing
3441         functionality.
3442
3443         * WebCore.gyp/WebCore.gyp:
3444         Include Skia and related files and exclude CG
3445         and related files when building Chromium for Skia
3446         on the Mac.
3447
3448         * loader/cache/CachedFont.cpp:
3449         Rename CHROME to CHROMIUM.
3450
3451         * platform/chromium/DragImageRef.h:
3452         * platform/graphics/FloatPoint.h:
3453         * platform/graphics/FloatRect.h:
3454         * platform/graphics/FloatSize.h:
3455         * platform/graphics/FontPlatformData.h:
3456         (WebCore::FontPlatformData::hash):
3457         * platform/graphics/GlyphBuffer.h:
3458         (WebCore::GlyphBuffer::advanceAt):
3459         (WebCore::GlyphBuffer::add):
3460         (WebCore::GlyphBuffer::expandLastAdvance):
3461         * platform/graphics/IntPoint.h:
3462         * platform/graphics/IntRect.h:
3463         * platform/graphics/IntSize.h:
3464         * platform/graphics/SimpleFontData.h:
3465         * platform/graphics/cg/FloatPointCG.cpp:
3466         * platform/graphics/cg/FloatRectCG.cpp:
3467         * platform/graphics/cg/FloatSizeCG.cpp:
3468         * platform/graphics/cg/IntPointCG.cpp:
3469         * platform/graphics/cg/IntRectCG.cpp:
3470         * platform/graphics/cg/IntSizeCG.cpp:
3471         * platform/graphics/mac/FontCustomPlatformData.cpp:
3472         (WebCore::FontCustomPlatformData::~FontCustomPlatformData):
3473         (WebCore::createFontCustomPlatformData):
3474         * platform/graphics/mac/FontCustomPlatformData.h:
3475         (WebCore::FontCustomPlatformData::FontCustomPlatformData):
3476         Ditto.
3477
3478 2011-06-28  Ryosuke Niwa  <rniwa@webkit.org>
3479
3480         Reviewed by Darin Adler.
3481
3482         Stop instantiating Position with PositionIsOffsetInAnchor in various files
3483         https://bugs.webkit.org/show_bug.cgi?id=63384
3484
3485         Refactoring.
3486
3487         Removed many if conditions that compared the anchor type to Position::PositionIsOffsetInAnchor
3488         because there were also checking that containerNode is a text node.