2011-03-10 Qi Zhang <qi.2.zhang@nokia.com>
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2011-03-10  Qi Zhang  <qi.2.zhang@nokia.com>
2
3         Reviewed by Laszlo Gombos.
4
5         [Qt] Mobile Devices should include Model and Firmware Version in Webkit Generated User Agent String
6         https://bugs.webkit.org/show_bug.cgi?id=48636
7
8         Fix a typo in features.pri that turns on this feature on mobile
9         devices by default.
10
11         * features.pri:
12
13 2011-03-10  Alexander Pavlov  <apavlov@chromium.org>
14
15         Reviewed by Pavel Feldman.
16
17         Web Inspector: Invalid expected parameter list in CSSAgent.setSelectorText() callback (CSSStyleModel.js)
18         https://bugs.webkit.org/show_bug.cgi?id=56092
19
20         * inspector/front-end/CSSStyleModel.js:
21         (WebInspector.CSSStyleModel.prototype.setRuleSelector):
22
23 2011-03-10  Pavel Feldman  <pfeldman@chromium.org>
24
25         Not reviewed: rolling out r80478 and its follow ups for breaking
26         inspector and engadget.com.
27         https://bugs.webkit.org/show_bug.cgi?id=49401
28
29         * dom/Document.cpp:
30         (WebCore::Document::Document):
31         (WebCore::performTask):
32         (WebCore::Document::postTask):
33         * dom/Document.h:
34         * loader/FrameLoader.cpp:
35         (WebCore::FrameLoader::setDefersLoading):
36         * manual-tests/database-callback-deferred.html: Removed.
37         * page/PageGroupLoadDeferrer.cpp:
38         (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
39         (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer):
40
41 2011-03-10  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
42
43         Reviewed by Kenneth Rohde Christiansen.
44
45         Tiled backing store's delegated scroll request uses incorrect convention
46         https://bugs.webkit.org/show_bug.cgi?id=56011
47
48         Use a point instead of delta, when relaying the scroll request from
49         ScrollView::setScrollPosition.
50
51         * loader/EmptyClients.h:
52         (WebCore::EmptyChromeClient::delegatedScrollRequested):
53         * page/Chrome.cpp:
54         (WebCore::Chrome::delegatedScrollRequested):
55         * page/Chrome.h:
56         * page/ChromeClient.h:
57         * platform/HostWindow.h:
58         * platform/ScrollView.cpp:
59         (WebCore::ScrollView::setScrollPosition):
60
61 2011-03-10  Pavel Feldman  <pfeldman@chromium.org>
62
63         Reviewed by Yury Semikhatsky.
64
65         Web Inspector: brush up DOM agent API.
66         https://bugs.webkit.org/show_bug.cgi?id=56093
67
68         * inspector/Inspector.idl:
69         * inspector/InspectorDOMAgent.cpp:
70         (WebCore::InspectorDOMAgent::childNodes):
71         (WebCore::InspectorDOMAgent::setNodeName):
72         (WebCore::InspectorDOMAgent::outerHTML):
73         (WebCore::InspectorDOMAgent::setNodeValue):
74         * inspector/InspectorDOMAgent.h:
75         * inspector/front-end/DOMAgent.js:
76         (WebInspector.DOMNode):
77         (WebInspector.DOMNode.prototype.hasAttributes):
78         (WebInspector.DOMNode.prototype.nodeType):
79         (WebInspector.DOMNode.prototype.nodeName):
80         (WebInspector.DOMNode.prototype.setNodeName):
81         (WebInspector.DOMNode.prototype.localName):
82         (WebInspector.DOMNode.prototype.nodeValue):
83         (WebInspector.DOMNode.prototype.setNodeValue):
84         (WebInspector.DOMNode.prototype.setAttribute):
85         (WebInspector.DOMNode.prototype.attributes):
86         (WebInspector.DOMNode.prototype.removeAttribute):
87         (WebInspector.DOMNode.prototype.childNodes.mycallback):
88         (WebInspector.DOMNode.prototype.childNodes):
89         (WebInspector.DOMNode.prototype.outerHTML):
90         (WebInspector.DOMNode.prototype.setOuterHTML):
91         (WebInspector.DOMNode.prototype.removeNode):
92         (WebInspector.DOMNode.prototype.copyNode):
93         (WebInspector.DOMNode.prototype.path):
94         (WebInspector.DOMNode.prototype._setAttributesPayload):
95         (WebInspector.DOMNode.prototype._addAttribute):
96         (WebInspector.DOMAgent.prototype._characterDataModified):
97         * inspector/front-end/ElementsPanel.js:
98         (WebInspector.ElementsPanel.prototype.updateBreadcrumb):
99         (WebInspector.ElementsPanel.prototype.decorateNodeLabel):
100         (WebInspector.ElementsPanel.prototype.handleCopyEvent):
101         * inspector/front-end/ElementsTreeOutline.js:
102         (WebInspector.ElementsTreeOutline.prototype.findTreeElement):
103         (WebInspector.ElementsTreeElement):
104         (WebInspector.ElementsTreeElement.prototype.updateChildren):
105         (WebInspector.ElementsTreeElement.prototype._updateChildren):
106         (WebInspector.ElementsTreeElement.prototype._startEditingTarget):
107         (WebInspector.ElementsTreeElement.prototype._startEditing):
108         (WebInspector.ElementsTreeElement.prototype._attributeEditingCommitted):
109         (WebInspector.ElementsTreeElement.prototype._tagNameEditingCommitted.moveToNextAttributeIfNeeded):
110         (WebInspector.ElementsTreeElement.prototype._tagNameEditingCommitted):
111         (WebInspector.ElementsTreeElement.prototype._textNodeEditingCommitted):
112         (WebInspector.ElementsTreeElement.prototype._attributeHTML):
113         ():
114         * inspector/front-end/EventListenersSidebarPane.js:
115         ():
116         * inspector/front-end/MetricsSidebarPane.js:
117         * inspector/front-end/StylesSidebarPane.js:
118         * inspector/front-end/utilities.js:
119
120 2011-03-09  Alexander Pavlov  <apavlov@chromium.org>
121
122         Reviewed by Pavel Feldman.
123
124         Web Inspector: [STYLES] Editing a property value adds a word for any property value that uses a paren
125         https://bugs.webkit.org/show_bug.cgi?id=56002
126
127         * inspector/front-end/StylesSidebarPane.js: Introduce an additional check.
128
129 2011-03-09  Pavel Podivilov  <podivilov@chromium.org>
130
131         Reviewed by Pavel Feldman.
132
133         Web Inspector: use DebuggerPresentation instead of DebuggerModel in source frame delegate.
134         https://bugs.webkit.org/show_bug.cgi?id=56034
135
136         * inspector/front-end/DebuggerPresentationModel.js:
137         (WebInspector.DebuggerPresentationModel.prototype.continueToLine):
138         (WebInspector.DebuggerPresentationModel.prototype.setBreakpoint):
139         (WebInspector.DebuggerPresentationModel.prototype.updateBreakpoint):
140         (WebInspector.DebuggerPresentationModel.prototype.findBreakpoint):
141         (WebInspector.DebuggerPresentationModel.prototype._sourceLocationToActualLocation):
142         * inspector/front-end/ScriptsPanel.js:
143         (WebInspector.ScriptsPanel.prototype._createSourceFrame):
144         (WebInspector.SourceFrameDelegateForScriptsPanel):
145         (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.setBreakpoint):
146         (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.updateBreakpoint):
147         (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.removeBreakpoint):
148         (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.findBreakpoint):
149         (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.continueToLine):
150         * inspector/front-end/SourceFrame.js:
151         (WebInspector.SourceFrame.prototype._contextMenu.else.editBreakpointCondition.didEditBreakpointCondition):
152         (WebInspector.SourceFrame.prototype._contextMenu.else.editBreakpointCondition):
153         (WebInspector.SourceFrame.prototype._contextMenu.else.setBreakpointEnabled):
154         (WebInspector.SourceFrame.prototype._contextMenu):
155         (WebInspector.SourceFrame.prototype._mouseDown):
156         (WebInspector.SourceFrameDelegate.prototype.removeBreakpoint):
157         (WebInspector.SourceFrameDelegate.prototype.updateBreakpoint):
158
159 2011-03-09  Alexander Pavlov  <apavlov@chromium.org>
160
161         Reviewed by Pavel Feldman.
162
163         Web Inspector: elements dom tree - word wrap toggle
164         https://bugs.webkit.org/show_bug.cgi?id=44311
165
166         A "Word Wrap" option is now shown in a context menu for the entire DOM tree content area
167         and persisted into application settings.
168
169         * English.lproj/localizedStrings.js:
170         * inspector/front-end/ElementsPanel.js:
171         (WebInspector.ElementsPanel.prototype._contextMenuEventFired):
172         (WebInspector.ElementsPanel.prototype._contextMenuEventFired.toggleWordWrap):
173         * inspector/front-end/ElementsTreeOutline.js:
174         (WebInspector.ElementsTreeOutline):
175         (WebInspector.ElementsTreeOutline.prototype._treeElementFromEvent):
176         (WebInspector.ElementsTreeOutline.prototype.populateContextMenu):
177         (WebInspector.ElementsTreeElement.prototype.onreveal):
178         * inspector/front-end/Settings.js:
179         (WebInspector.Settings):
180         * inspector/front-end/inspector.css:
181         (#elements-content.nowrap):
182         (#elements-content > ol):
183
184 2011-03-09  Pavel Podivilov  <podivilov@chromium.org>
185
186         Reviewed by Pavel Feldman.
187
188         Web Inspector: re-implement breakpoints sidebar pane based on debugger presentation model.
189         https://bugs.webkit.org/show_bug.cgi?id=55823
190
191         * inspector/front-end/BreakpointsSidebarPane.js:
192         (WebInspector.JavaScriptBreakpointsSidebarPane):
193         (WebInspector.JavaScriptBreakpointsSidebarPane.prototype.addBreakpoint.didLoadSnippet):
194         (WebInspector.JavaScriptBreakpointsSidebarPane.prototype.addBreakpoint):
195         (WebInspector.JavaScriptBreakpointsSidebarPane.prototype.removeBreakpoint):
196         (WebInspector.JavaScriptBreakpointsSidebarPane.prototype.highlightBreakpoint):
197         (WebInspector.JavaScriptBreakpointsSidebarPane.prototype.clearBreakpointHighlight):
198         (WebInspector.JavaScriptBreakpointsSidebarPane.prototype._createBreakpointItemId):
199         (WebInspector.JavaScriptBreakpointsSidebarPane.prototype._breakpointClicked):
200         (WebInspector.JavaScriptBreakpointsSidebarPane.prototype._breakpointCheckboxClicked):
201         (WebInspector.JavaScriptBreakpointsSidebarPane.prototype._contextMenu):
202         (WebInspector.JavaScriptBreakpointsSidebarPane.prototype.reset):
203         * inspector/front-end/DebuggerPresentationModel.js:
204         (WebInspector.DebuggerPresentationModel):
205         (WebInspector.DebuggerPresentationModel.prototype._parsedScriptSource):
206         (WebInspector.DebuggerPresentationModel.prototype._failedToParseScriptSource):
207         (WebInspector.DebuggerPresentationModel.prototype._revealHiddenBreakpoints):
208         (WebInspector.DebuggerPresentationModel.prototype.breakpointsForSourceFileId):
209         (WebInspector.DebuggerPresentationModel.prototype.setBreakpointEnabled):
210         (WebInspector.DebuggerPresentationModel.prototype.removeBreakpoint):
211         (WebInspector.DebuggerPresentationModel.prototype._breakpointAdded):
212         (WebInspector.DebuggerPresentationModel.prototype.set selectedCallFrame):
213         (WebInspector.DebuggerPresentationModel.prototype._actualLocationToSourceLocation):
214         (WebInspector.DebuggerPresentationModel.prototype.reset):
215         * inspector/front-end/ScriptsPanel.js:
216         (WebInspector.ScriptsPanel):
217         (WebInspector.ScriptsPanel.prototype._breakpointAdded):
218         (WebInspector.ScriptsPanel.prototype._breakpointRemoved):
219         (WebInspector.ScriptsPanel.prototype._debuggerPaused):
220         (WebInspector.ScriptsPanel.prototype.reset):
221         (WebInspector.ScriptsPanel.prototype._clearInterface):
222
223 2011-03-10  Andrey Adaikin  <aandrey@google.com>
224
225         Reviewed by Pavel Feldman.
226
227         Web Inspector: Highlighter refactoring
228         https://bugs.webkit.org/show_bug.cgi?id=56015
229
230         * inspector/front-end/TextEditorHighlighter.js:
231         (WebInspector.TextEditorHighlighter):
232         (WebInspector.TextEditorHighlighter.prototype.set mimeType):
233         (WebInspector.TextEditorHighlighter.prototype.highlight):
234         (WebInspector.TextEditorHighlighter.prototype.updateHighlight):
235         (WebInspector.TextEditorHighlighter.prototype._highlightInChunks):
236         (WebInspector.TextEditorHighlighter.prototype._highlightLines):
237         (WebInspector.TextEditorHighlighter.prototype._selectHighlightState):
238         (WebInspector.TextEditorHighlighter.prototype._clearHighlightState):
239         * inspector/front-end/TextViewer.js:
240         (WebInspector.TextEditorMainPanel.prototype._buildChunks):
241         (WebInspector.TextEditorMainPanel.prototype._updateHighlightsForRange):
242
243 2011-03-05  Pavel Podivilov  <podivilov@chromium.org>
244
245         Reviewed by Pavel Feldman.
246
247         Web Inspector: move breakpoint column adjustment to debugger model.
248         https://bugs.webkit.org/show_bug.cgi?id=55821
249
250         Test: inspector/debugger/debug-inlined-scripts.html
251
252         * inspector/front-end/DebuggerModel.js:
253         (WebInspector.DebuggerModel.prototype.setBreakpoint.didSetBreakpoint):
254         (WebInspector.DebuggerModel.prototype.setBreakpoint):
255         * inspector/front-end/SourceFrameContent.js:
256         (WebInspector.SourceFrameContent.prototype.sourceFrameLineNumberToActualLocation):
257
258 2011-01-21  John Knottenbelt  <jknotten@chromium.org>
259
260         Reviewed by Dmitry Titov.
261
262         Detach Geolocation from Frame when Page destroyed.
263         https://bugs.webkit.org/show_bug.cgi?id=52877
264
265         On Page destruction, any outstanding Geolocation permission
266         requests should be cancelled, because the Geolocation can only
267         access the client indirectly via m_frame->page().
268
269         Page destruction is signalled by a call to the
270         Frame::pageDestroyed() method. This explictly calls
271         DOMWindow::resetGeolocation which ultimately calls Geolocation::reset.
272
273         Geolocation::reset() detaches from the GeolocationController,
274         cancels requests, watches and single shots, and sets the
275         permission state back to Unknown.
276
277         Frame::pageDestroyed() is also called by FrameLoader even though
278         the page is not destroyed. We should still cancel permission
279         requests, because the GeolocationClient will become inaccessible
280         to the Geolocation object after this call.
281
282         Frame::transferChildFrameToNewDocument also indirectly calls
283         Geolocation::reset when the frame is reparented between
284         pages. Ideally we would like the Geolocation's activities to
285         continue after reparenting, see bug
286         https://bugs.webkit.org/show_bug.cgi?id=55577
287
288         Since GeolocationController is owned by Page, and all Geolocation
289         objects will now unsubscribe from the GeolocationController on
290         pageDetached(), we no longer need to call stopUpdating() from the
291         GeolocationController's destructor. Instead we can simply assert
292         that there should be no no observers. See related bug
293         https://bugs.webkit.org/show_bug.cgi?id=52216 .
294
295         Introduced new method 'numberOfPendingPermissionRequests' on
296         GeolocationClientMock to count the number of outstanding pending
297         permission requests. This provides a reusable implementation for
298         client-based implementations of the LayoutTestController's
299         numberOfPendingGeolocationPermissionRequests method.
300
301         Test: fast/dom/Geolocation/page-reload-cancel-permission-requests.html
302
303         * page/DOMWindow.cpp:
304         (WebCore::DOMWindow::resetGeolocation):
305         * page/DOMWindow.h:
306         * page/Frame.cpp:
307         (WebCore::Frame::pageDestroyed):
308         (WebCore::Frame::transferChildFrameToNewDocument):
309         * page/Geolocation.cpp:
310         (WebCore::Geolocation::~Geolocation):
311         (WebCore::Geolocation::page):
312         (WebCore::Geolocation::reset):
313         (WebCore::Geolocation::disconnectFrame):
314         (WebCore::Geolocation::lastPosition):
315         (WebCore::Geolocation::requestPermission):
316         (WebCore::Geolocation::startUpdating):
317         (WebCore::Geolocation::stopUpdating):
318         * page/Geolocation.h:
319         * page/GeolocationController.cpp:
320         (WebCore::GeolocationController::~GeolocationController):
321         * page/Navigator.cpp:
322         (WebCore::Navigator::resetGeolocation):
323         * page/Navigator.h:
324         * platform/mock/GeolocationClientMock.cpp:
325         (WebCore::GeolocationClientMock::numberOfPendingPermissionRequests):
326         * platform/mock/GeolocationClientMock.h:
327
328 2011-03-10  Ojan Vafai  <ojan@chromium.org>
329
330         Reviewed by Darin Adler.
331
332         Able to move nodes across documents
333         https://bugs.webkit.org/show_bug.cgi?id=19524
334
335         Makes cross-document appendChild, insertBefore, Range.insertNode and Range.surroundContents work.
336         This matches Gecko and the new Dom Core spec. There are a number of Range methods where we don't 
337         match Gecko or the spec that will need to be updated in a following patch.
338
339         Test: fast/dom/move-nodes-across-documents.html
340
341         * dom/Element.cpp:
342         (WebCore::Element::removeAttributeNode):
343         * dom/NamedNodeMap.cpp:
344         (WebCore::NamedNodeMap::setNamedItem):
345         * dom/Node.cpp:
346         (WebCore::Node::setDocumentRecursively):
347         (WebCore::checkAcceptChild):
348         (WebCore::Node::checkReplaceChild):
349         * dom/Range.cpp:
350         (WebCore::Range::insertNode):
351         (WebCore::Range::surroundContents):
352
353 2011-03-09  Antti Koivisto  <antti@apple.com>
354
355         Not reviewed.
356
357         Reverting crash catching code, the bug being hunted was fixed by
358         http://trac.webkit.org/changeset/80686
359
360         * loader/cache/CachedResourceLoader.cpp:
361         (WebCore::CachedResourceLoader::CachedResourceLoader):
362         (WebCore::CachedResourceLoader::~CachedResourceLoader):
363         (WebCore::CachedResourceLoader::requestImage):
364         (WebCore::CachedResourceLoader::requestUserCSSStyleSheet):
365         (WebCore::CachedResourceLoader::requestResource):
366         (WebCore::CachedResourceLoader::setAutoLoadImages):
367         (WebCore::CachedResourceLoader::load):
368         (WebCore::CachedResourceLoader::loadDone):
369         (WebCore::CachedResourceLoader::preload):
370         (WebCore::CachedResourceLoader::requestPreload):
371         * loader/cache/CachedResourceLoader.h:
372
373 2011-03-09  Peter Kasting  <pkasting@google.com>
374
375         Unreviewed, build fix.
376
377         * StringsNotToBeLocalized.txt: Add function names I forgot.
378         * platform/win/SystemInfo.cpp: #if out some uncalled functions on WinCE,
379           since they don't compile anyway.  Use ZeroMemory() instead of "= {0}"
380           since Qt is stupid and (sometimes?!) warns about it.
381         (WebCore::windowsVersion):
382         (WebCore::processorArchitecture):
383
384 2011-03-09  Peter Kasting  <pkasting@google.com>
385
386         Reviewed by Ryosuke Niwa.
387
388         Add UA string tags for Windows 64.
389         https://bugs.webkit.org/show_bug.cgi?id=55226
390
391         * StringsNotToBeLocalized.txt:
392         * platform/win/SystemInfo.cpp:
393         (WebCore::osVersionForUAString):
394         (WebCore::isWOW64):
395         (WebCore::processorArchitecture):
396         (WebCore::architectureTokenForUAString):
397         (WebCore::windowsVersionForUAString):
398
399 2011-03-09  Peter Kasting  <pkasting@google.com>
400
401         Unreviewed, attempted build fix.
402
403         * WebCore.pri: Try to update include path for Qt Windows build.
404
405 2011-03-09  Peter Kasting  <pkasting@google.com>
406
407         Unreviewed, build fix.
408
409         * platform/win/SystemInfo.cpp:
410         (WebCore::windowsVersionForUAString): Fix const conversion warning on Qt.
411
412 2011-03-09  Peter Kasting  <pkasting@google.com>
413
414         Reviewed by Mihai Parparita.
415
416         Unify Windows version checks.
417         https://bugs.webkit.org/show_bug.cgi?id=55979
418
419         * GNUmakefile.am: Fix spaces -> tabs.
420         * StringsNotToBeLocalized.txt:
421         * WebCore.pro: Add SystemInfo.* to Qt build.
422         * platform/chromium/ScrollbarThemeChromiumWin.cpp:
423         (WebCore::ScrollbarThemeChromiumWin::invalidateOnMouseEnterExit):
424         (WebCore::ScrollbarThemeChromiumWin::getThemeState):
425         (WebCore::ScrollbarThemeChromiumWin::getThemeArrowState):
426         * platform/graphics/chromium/GlyphPageTreeNodeChromiumWin.cpp:
427         (WebCore::fillBMPGlyphs):
428         * platform/win/CursorWin.cpp:
429         (WebCore::createSharedCursor):
430         * platform/win/ScrollbarThemeWin.cpp:
431         (WebCore::ScrollbarThemeWin::ScrollbarThemeWin):
432         * platform/win/SystemInfo.cpp: Add full-fledged version check and UA string helper function.
433         (WebCore::windowsVersion):
434         (WebCore::windowsVersionForUAString):
435         * platform/win/SystemInfo.h: Add full-fledged version check and UA string helper function.
436         * rendering/RenderThemeChromiumWin.cpp:
437         (WebCore::getNonClientMetrics):
438         * rendering/RenderThemeWin.cpp:
439         (WebCore::RenderThemeWin::getThemeData):
440         (WebCore::RenderThemeWin::paintMenuList):
441         (WebCore::RenderThemeWin::paintMenuListButton):
442
443 2011-03-09  Mihai Parparita  <mihaip@chromium.org>
444
445         Reviewed by Tony Gentilcore.
446
447         REGRESSION (r74807): memory corruption after CachedResourceLoader refactoring
448         https://bugs.webkit.org/show_bug.cgi?id=53045
449         
450         Copy the URL out of the CachedResource that is being revalidated, so
451         that we can still use it (in m_validatedURLs) after removing the
452         resource from the memory cache, which may delete it.
453
454         No new tests, since I was not able to trigger this locally (in a layout
455         test or otherwise).
456
457         * loader/cache/CachedResourceLoader.cpp:
458         (WebCore::CachedResourceLoader::revalidateResource):
459
460 2011-03-09  Chris Fleizach  <cfleizach@apple.com>
461
462         Reviewed by Beth Dakin.
463
464         VO reporting incorrect list count for http://www.macworld.com/news.html
465         https://bugs.webkit.org/show_bug.cgi?id=56064
466
467         <li> tags should not be ignored, because they provide valuable information
468         to screen readers.
469
470         Test: platform/mac/accessibility/list-items-ignored.html
471
472         * accessibility/AccessibilityRenderObject.cpp:
473         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
474
475 2011-03-09  Dan Bernstein  <mitz@apple.com>
476
477         Reviewed by Dave Hyatt.
478
479         <rdar://problem/8733254> Float disappears after incremental layout
480         Fixed the original bug and a copule more issues noticed while doing so.
481
482         Tests: fast/dynamic/dirty-float-in-clean-line.html
483                fast/dynamic/float-at-line-break.html
484                fast/dynamic/float-from-empty-line.html
485
486         * rendering/RenderBlock.h:
487         * rendering/RenderBlockLineLayout.cpp:
488         (WebCore::RenderBlock::layoutInlineChildren): If findNextLineBreak() returned an empty line,
489         update the line break info of the last line with the new line break position. This is tested
490         by float-from-empty-line.html.
491         (WebCore::RenderBlock::checkFloatsInCleanLine): Factored out code from determineStartPosition()
492         into this new function.
493         (WebCore::RenderBlock::determineStartPosition): Call checkFloatsInCleanLine().
494         (WebCore::RenderBlock::determineEndPosition): When iterating over lines, check clean lines with
495         floats, as they may yet become dirty because of the floats. This is tested by
496         dirty-float-in-clean-line.html.
497         (WebCore::RenderBlock::findNextLineBreak): If a float fits on the line, and the current line
498         break is at the float, advance it to after the float. Otherwise, if the line gets dirty and the
499         next one does not, the float will not make it into any line. This is tested by
500         float-at-line-break.html.
501
502 2011-03-09  Ryosuke Niwa  <rniwa@webkit.org>
503
504         Reviewed by Kent Tamura.
505
506         selectionStart reports wrong caret position when the last characters are newlines
507         https://bugs.webkit.org/show_bug.cgi?id=56061
508
509         The bug was caused by SelectionController::setSelection's not calling
510         notifyRendererOfSelectionChange when old selection was equal to new selection.
511
512         Because InsertLineBreakCommand inserts a text node with a single LF before the caret,
513         this condition holds after the command is executed. However, the values of
514         selectionStart and selectionEnd still need to be updated in this case because
515         the offsets counted from the beginning of textarea have been increased by 1.
516
517         * editing/SelectionController.cpp:
518         (WebCore::SelectionController::setSelection): Call notifyRendererOfSelectionChange
519         when m_selection = s.
520         * manual-tests/selection-start-after-inserting-line-break-in-textarea.html: Added.
521
522 2011-03-09  Andy Estes  <aestes@apple.com>
523
524         Reviewed by Adam Barth.
525
526         Bad cast in HTMLTreeBuilder::processStartTag
527         https://bugs.webkit.org/show_bug.cgi?id=55955
528
529         Test: fast/parser/self-closing-foreign-content.html
530
531         When the parser encounters an svg or mathml root element, it places the
532         insertion mode into InForeignContentMode. However, if the root element
533         is self-closing (e.g. <svg />) then the element is never placed on the
534         open elements stack. This leaves the parser in an inconsistent state
535         where it is in InForeignContentMode but no foreign content is in the
536         open element stack.
537
538         * html/parser/HTMLTreeBuilder.cpp:
539         (WebCore::HTMLTreeBuilder::processStartTagForInBody): If a self-closing
540         foreign element is inserted into the tree, do not set the insertion
541         mode to InForeignContentMode.
542
543 2011-03-09  Gavin Barraclough  <barraclough@apple.com>
544
545         Qt build fix.
546
547         * bridge/qt/qt_runtime.cpp:
548         (JSC::Bindings::convertQVariantToValue):
549
550 2011-03-09  Andy Estes  <aestes@apple.com>
551
552         Reviewed by Adam Barth.
553
554         REGRESSION (r80320): Assertion failure when processing mis-nested foreign content.
555         https://bugs.webkit.org/show_bug.cgi?id=55982
556
557         Test: fast/parser/fragment-foreign-content-misnested.html
558         
559         It is a parse error to encounter certain start tags while the parser's
560         insertion mode is InForeignContentMode (e.g. <br>). In these cases, we
561         are to pop open elements off the HTMLElementStack until a foreign
562         content scope marker is encountered. Before the change in r80320 to not
563         insert a fake HTML element during fragment parsing, said fake HTML
564         element counted as a foreign content scope marker.
565         
566         With r80320, no fake HTML element is inserted and the stack is popped
567         until empty in cases where no other element claims to be a foreign
568         content scope marker. Fix this by treating the DocumentFragment as a
569         foreign content scope marker.
570
571         * html/parser/HTMLElementStack.cpp:
572         (WebCore::HTMLNames::isForeignContentScopeMarker): Take a
573         ContainerNode* instead of a Element*.
574         (WebCore::HTMLElementStack::popUntilForeignContentScopeMarker): Pass
575         topNode() to isForeignContentScopeMarker() instead of top().
576
577 2011-03-09  Gavin Barraclough  <barraclough@apple.com>
578
579         Reviewed by Darin Adler.
580
581         Bug 56041 - RexExp constructor should only accept flags "gim"
582         We also should be passing the flags around as a bitfield rather than a string,
583         and should not have redundant, incompatible code for converting the string to a bitfield!
584
585         * bindings/js/SerializedScriptValue.cpp:
586         (WebCore::CloneDeserializer::readTerminal):
587             - Need to parse flags string back to enum.
588
589 2011-03-09  James Robinson  <jamesr@chromium.org>
590
591         Reviewed by Kenneth Russell.
592
593         [chromium]: Regression - Explicitly copy compositing properties from LayerChromium to CCLayerImpl
594         https://bugs.webkit.org/show_bug.cgi?id=56021
595
596         Initializes the m_doubleSided flag of LayerChromiums to the default
597         value of true so the back sides of layers without
598         backface-visibility:hidden are rendered.
599
600         Test: compositing/backface-visibility.html
601
602         * platform/graphics/chromium/LayerChromium.cpp:
603         (WebCore::LayerChromium::LayerChromium):
604
605 2011-03-09  David Hyatt  <hyatt@apple.com>
606
607         Reviewed by Dan Bernstein.
608
609         <rdar://problem/9110316> REGRESSION: 'ex' unit broken for vertical text
610
611         Fall back to the verticalRightOrientation data when obtaining the x-height for vertically oriented
612         text. That way we use the same metrics as for horizontal.
613
614         This fixes regressions in fast/lists and fast/overflow vertical text tests.
615
616         * platform/graphics/mac/SimpleFontDataMac.mm:
617         (WebCore::SimpleFontData::platformInit):
618         (WebCore::SimpleFontData::platformBoundsForGlyph):
619
620 2011-03-09  Ryosuke Niwa  <rniwa@webkit.org>
621
622         Reviewed by Tony Chang.
623
624         REGRESSION: crash in nextLinePosition when extending selection forward by line in an empty document
625         https://bugs.webkit.org/show_bug.cgi?id=56004
626
627         The crash was caused by the false assumption that rootEditableElement() or documentElement()
628         always return non-null pointer. Fixed the bug by adding an early exit.
629
630         Test: editing/selection/extend-by-line-in-empty-document.html
631
632         * editing/visible_units.cpp:
633         (WebCore::previousLinePosition):
634         (WebCore::nextLinePosition):
635
636 2011-03-09  Pavel Podivilov  <podivilov@chromium.org>
637
638         Reviewed by Pavel Feldman.
639
640         Web Inspector: it should be possible to copy stack trace from call stack sidebar pane.
641         https://bugs.webkit.org/show_bug.cgi?id=56024
642
643         * English.lproj/localizedStrings.js:
644         * inspector/front-end/CallStackSidebarPane.js:
645         (WebInspector.CallStackSidebarPane):
646         (WebInspector.CallStackSidebarPane.prototype.update):
647         (WebInspector.CallStackSidebarPane.prototype._contextMenu):
648
649 2011-03-09  David Hyatt  <hyatt@apple.com>
650
651         Reviewed by Darin Adler.
652
653         Patch FontPlatformDataLinux to properly initialize and copy orientation/text-orientation in all
654         places.  Make sure text-orientation is specified in the lookups/creation in FontCustomPlatformData
655         and FontCache.
656
657         * platform/graphics/chromium/FontPlatformDataLinux.cpp:
658         (WebCore::FontPlatformData::FontPlatformData):
659         * platform/graphics/chromium/FontPlatformDataLinux.h:
660         (WebCore::FontPlatformData::FontPlatformData):
661
662 2011-03-09  Steve Block  <steveblock@google.com>
663
664         Reviewed by Jeremy Orlow.
665
666         JavaNPObject should not use JNI directly
667         https://bugs.webkit.org/show_bug.cgi?id=56009
668
669         We move the JNI code to access a Java object's fields into
670         a new JavaInstance::getField() method.
671
672         No new tests, refactoring only.
673
674         * bridge/jni/v8/JavaInstanceV8.cpp:
675         (JavaInstance::getField):
676         * bridge/jni/v8/JavaInstanceV8.h:
677         * bridge/jni/v8/JavaNPObjectV8.cpp:
678         (JSC::Bindings::JavaNPObjectGetProperty):
679
680 2011-03-09  Steve Block  <steveblock@google.com>
681
682         Reviewed by Jeremy Orlow.
683
684         NPAPI - jvalue conversion should not be in JavaInstance
685         https://bugs.webkit.org/show_bug.cgi?id=55967
686
687         No new tests, refactoring only.
688
689         * bridge/jni/v8/JavaInstanceV8.cpp:
690         (JavaInstance::invokeMethod):
691         * bridge/jni/v8/JavaInstanceV8.h:
692         * bridge/jni/v8/JavaNPObjectV8.cpp:
693         (JSC::Bindings::JavaNPObjectInvoke):
694
695 2011-03-09  Jessie Berlin  <jberlin@apple.com>
696
697         Reviewed by Adam Roben.
698
699         Use the Cookie Storage from the Private Browsing Storage Session directly
700         https://bugs.webkit.org/show_bug.cgi?id=55986
701
702         * WebCore.exp.in:
703         * platform/mac/WebCoreSystemInterface.h:
704         * platform/mac/WebCoreSystemInterface.mm:
705
706         * platform/network/mac/CookieStorageMac.mm:
707         (WebCore::setCookieStoragePrivateBrowsingEnabled):
708         Just copy the cookie storage from the private browsing storage session.
709         * platform/network/cf/CookieStorageCFNet.cpp:
710         (WebCore::setCookieStoragePrivateBrowsingEnabled):
711         Ditto.
712
713 2011-03-09  Andrey Kosyakov  <caseq@chromium.org>
714
715         Unreviewed. Fixed a crash in InspectorInstrumentation::didReceiveResponse() when loader is null (broken in r80639)
716
717         * inspector/InspectorInstrumentation.cpp:
718         (WebCore::InspectorInstrumentation::didReceiveResourceResponseImpl):
719
720 2011-03-09  Yury Semikhatsky  <yurys@chromium.org>
721
722         Reviewed by Pavel Feldman.
723
724         Web Inspector: pass explicit agent references to InspectorBackendDispatcher
725         https://bugs.webkit.org/show_bug.cgi?id=55820
726
727         * inspector/CodeGeneratorInspector.pm:
728         * inspector/InspectorController.cpp:
729         (WebCore::InspectorController::InspectorController):
730         (WebCore::InspectorController::connectFrontend):
731         (WebCore::InspectorController::disconnectFrontend):
732         (WebCore::InspectorController::dispatchMessageFromFrontend):
733
734 2011-03-09  Andrey Kosyakov  <caseq@chromium.org>
735
736         Reviewed by Pavel Feldman.
737
738         Web Inspector: resource errors are not reported before front-end is opened
739         https://bugs.webkit.org/show_bug.cgi?id=55939
740
741         * inspector/InspectorInstrumentation.cpp:
742         (WebCore::InspectorInstrumentation::didReceiveResourceResponseImpl):
743         * inspector/InspectorInstrumentation.h:
744         (WebCore::InspectorInstrumentation::didReceiveResourceResponse):
745         (WebCore::InspectorInstrumentation::didFailLoading):
746
747 2011-03-08  Hans Wennborg  <hans@chromium.org>
748
749         Reviewed by Jeremy Orlow.
750
751         IndexedDB: Add BackingStoreType parameter to IDBFactoryBackendInterface::open
752         https://bugs.webkit.org/show_bug.cgi?id=55948
753
754         Add a parameter that allows for selection of alternative backing store
755         implementations.
756
757         No new tests: no new functionality.
758
759         * storage/IDBFactory.cpp:
760         (WebCore::IDBFactory::open):
761         * storage/IDBFactoryBackendImpl.cpp:
762         (WebCore::IDBFactoryBackendImpl::open):
763         * storage/IDBFactoryBackendImpl.h:
764         * storage/IDBFactoryBackendInterface.h:
765
766 2011-03-08  Steve Block  <steveblock@google.com>
767
768         Reviewed by Jeremy Orlow.
769
770         Factor out JNI method call to be used by both JSC and V8
771         https://bugs.webkit.org/show_bug.cgi?id=55966
772
773         No new tests, refactoring only.
774
775         * bridge/jni/JNIUtility.cpp:
776         (JSC::Bindings::callJNIMethod):
777         * bridge/jni/JNIUtility.h:
778         * bridge/jni/jsc/JavaInstanceJSC.cpp:
779         (JavaInstance::invokeMethod):
780         * bridge/jni/v8/JavaInstanceV8.cpp:
781         (JavaInstance::invokeMethod):
782
783 2011-03-09  Andrey Adaikin  <aandrey@google.com>
784
785         Reviewed by Pavel Feldman.
786
787         Web Inspector: [Text editor] Regression in handling DOMNodeInserted/DOMNodeRemoved events
788         https://bugs.webkit.org/show_bug.cgi?id=55818
789
790         * inspector/front-end/TextViewer.js:
791         (WebInspector.TextEditorMainPanel.prototype._handleDOMUpdates):
792
793 2011-03-09  Ilya Tikhonovsky  <loislo@chromium.org>
794
795         Reviewed by Yury Semikhatsky.
796
797         Web Inspector: Web Inspector: we don't need to transfer objectId and hasChildren for primitive values.
798         https://bugs.webkit.org/show_bug.cgi?id=55998
799
800         * inspector/InjectedScriptSource.js:
801
802 2011-03-09  Pavel Feldman  <pfeldman@chromium.org>
803
804         Reviewed by Yury Semikhatsky.
805
806         Web Inspector: watch expressions should show string values in quotes.
807         https://bugs.webkit.org/show_bug.cgi?id=55846
808
809         * inspector/InjectedScriptSource.js:
810         * inspector/front-end/ObjectPropertiesSection.js:
811         (WebInspector.ObjectPropertyTreeElement.prototype.update):
812         * inspector/front-end/RemoteObject.js:
813         (WebInspector.LocalJSONObject.prototype.get description):
814         * inspector/front-end/WatchExpressionsSidebarPane.js:
815         (WebInspector.WatchExpressionsSection.prototype.update):
816         * inspector/front-end/inspector.css:
817         (.console-formatted-string, .console-formatted-regexp):
818
819 2011-03-09  Pavel Feldman  <pfeldman@chromium.org>
820
821         Reviewed by Yury Semikhatsky.
822
823         Web Inspector: "length" getter is invoked upon console object formatting.
824         https://bugs.webkit.org/show_bug.cgi?id=55220
825
826         * inspector/InjectedScriptSource.js:
827
828 2011-03-08  Ilya Tikhonovsky  <loislo@chromium.org>
829
830         Reviewed by Pavel Feldman.
831
832         Web Inspector: remove groupName from objectId.
833         https://bugs.webkit.org/show_bug.cgi?id=55825
834
835         * inspector/InjectedScriptSource.js:
836
837 2011-03-08  Xiaomei Ji  <xji@chromium.org>
838
839         Reviewed by David Hyatt.
840
841         Fix Regression: Content not drawn when scrolling horizontally in an RTL page.
842         https://bugs.webkit.org/show_bug.cgi?id=55077.
843
844         Inside ScrollView::calculateOverhangAreasForPainting(), when scroll position
845         is negative, should include the position value into overhang rectangle's 
846         starting position. 
847
848         Tests: fast/dom/scroll-reveal-left-overflow.html
849                fast/dom/scroll-reveal-top-overflow.html
850
851         * platform/ScrollView.cpp:
852         (WebCore::ScrollView::calculateOverhangAreasForPainting):
853
854 2011-03-08  Daniel Bates  <dbates@rim.com>
855
856         Reviewed by Darin Adler.
857
858         Add templatized CSSMutableStyleDeclaration::get{ShorthandValue, CommonValue, LayeredShorthandValue}()
859         https://bugs.webkit.org/show_bug.cgi?id=55351
860
861         By using some template magic CSSMutableStyleDeclaration::get{ShorthandValue, CommonValue, LayeredShorthandValue}()
862         can be called on an array A without the caller explicitly specifying the size of A.
863
864         No functionality was changed. So no new tests.
865
866         * css/CSSMutableStyleDeclaration.cpp:
867         (WebCore::CSSMutableStyleDeclaration::getPropertyValue): Modified to call templatized variants of
868         CSSMutableStyleDeclaration::get{ShorthandValue, CommonValue, LayeredShorthandValue}().
869         (WebCore::CSSMutableStyleDeclaration::getLayeredShorthandValue): Renamed second argument from "number" to "size"
870         to better reflect its purpose - to be the size of the passed array.
871         (WebCore::CSSMutableStyleDeclaration::getShorthandValue): Ditto.
872         (WebCore::CSSMutableStyleDeclaration::getCommonValue): Ditto.
873         (WebCore::CSSMutableStyleDeclaration::cssText): Modified to call templatized variant of CSSMutableStyleDeclaration::getShorthandValue().
874         * css/CSSMutableStyleDeclaration.h:
875         (WebCore::CSSMutableStyleDeclaration::getShorthandValue): Added templatized function that can determine
876         the size of a passed array. Changed type of second argument to size_t since it represents the size of
877         an array.
878         (WebCore::CSSMutableStyleDeclaration::getCommonValue): Ditto.
879         (WebCore::CSSMutableStyleDeclaration::getLayeredShorthandValue): Ditto.
880
881 2011-03-08  Enrica Casucci  <enrica@apple.com>
882
883         Reviewed by Darin Adler.
884         
885         REGRESSION: Copied content loses formatting on paste to external apps.
886         https://bugs.webkit.org/show_bug.cgi?id=47615
887         <rdar://problem/9001214>
888         
889         This is a resubmission of a patch that was landed a while ago then rolled
890         back because of a build failure on SnowLeopard and Leopard on the 32-bit builds.
891
892         This patch adds a way for WebKit2 to create NSAttributedStrings from
893         a DOM range without using the AppKit api initWithDOMRange that internally
894         needs to access the WebView. The NSAttributedString is needed to create
895         RTF formats in the pasteboard.
896         This is to be considered a first step, since in the future we want to have
897         an implementation based on the TextIterator.
898         * WebCore.xcodeproj/project.pbxproj:
899         * platform/mac/HTMLConverter.h: Added.
900         * platform/mac/HTMLConverter.mm: Added.
901         * platform/mac/PasteboardMac.mm:
902         (WebCore::Pasteboard::writeSelection):
903
904 2011-03-08  James Robinson  <jamesr@chromium.org>
905
906         Reviewed by Kenneth Russell.
907
908         [chromium] Explicitly copy compositing properties from LayerChromium to CCLayerImpl
909         https://bugs.webkit.org/show_bug.cgi?id=55900
910
911         This adds an explicit step to synchronize properties from
912         LayerChromiums to their corresponding CCLayerImpls.
913
914         * platform/graphics/chromium/LayerChromium.cpp:
915         (WebCore::LayerChromium::setBounds):
916         * platform/graphics/chromium/LayerChromium.h:
917         (WebCore::LayerChromium::bounds):
918         (WebCore::LayerChromium::doubleSided):
919         (WebCore::LayerChromium::setDoubleSided):
920         * platform/graphics/chromium/LayerRendererChromium.cpp:
921         (WebCore::LayerRendererChromium::updatePropertiesAndRenderSurfaces):
922         * platform/graphics/chromium/cc/CCLayerImpl.cpp:
923         (WebCore::CCLayerImpl::CCLayerImpl):
924         (WebCore::CCLayerImpl::updateFromLayer):
925         (WebCore::CCLayerImpl::descendantsDrawsContent):
926         * platform/graphics/chromium/cc/CCLayerImpl.h:
927         (WebCore::CCLayerImpl::anchorPoint):
928         (WebCore::CCLayerImpl::anchorPointZ):
929         (WebCore::CCLayerImpl::masksToBounds):
930         (WebCore::CCLayerImpl::opacity):
931         (WebCore::CCLayerImpl::position):
932         (WebCore::CCLayerImpl::preserves3D):
933         (WebCore::CCLayerImpl::sublayerTransform):
934         (WebCore::CCLayerImpl::transform):
935
936 2011-03-08  James Robinson  <jamesr@chromium.org>
937
938         Chromium compile fix.
939
940         * platform/graphics/chromium/SimpleFontDataLinux.cpp:
941         (WebCore::SimpleFontData::platformInit):
942
943 2011-03-08  Peter Kasting  <pkasting@google.com>
944
945         Reviewed by James Robinson.
946
947         Unify Windows version checks, part 1.
948         https://bugs.webkit.org/show_bug.cgi?id=55979
949
950         Make everyone (I hope) pull in SystemInfo.cpp.  Eliminate the
951         now-unnecessary WindowsVersion.cpp from Chromium.
952
953         * GNUmakefile.am:
954         * WebCore.gyp/WebCore.gyp:
955         * WebCore.gypi:
956         * platform/chromium/ScrollbarThemeChromiumWin.cpp:
957         (WebCore::ScrollbarThemeChromiumWin::invalidateOnMouseEnterExit):
958         (WebCore::ScrollbarThemeChromiumWin::getThemeState):
959         (WebCore::ScrollbarThemeChromiumWin::getThemeArrowState):
960         * platform/chromium/WindowsVersion.cpp: Removed.
961         * platform/chromium/WindowsVersion.h: Removed.
962         * platform/graphics/chromium/GlyphPageTreeNodeChromiumWin.cpp:
963         (WebCore::fillBMPGlyphs):
964         * rendering/RenderThemeChromiumWin.cpp:
965         (WebCore::getNonClientMetrics):
966
967 2011-03-08  Ryosuke Niwa  <rniwa@webkit.org>
968
969         Chromium Linux build fix attempt after r80582.
970
971         * platform/graphics/chromium/FontLinux.cpp:
972         (WebCore::Font::drawGlyphs):
973         * platform/graphics/chromium/SimpleFontDataLinux.cpp:
974         (WebCore::SimpleFontData::platformInit):
975         * platform/graphics/skia/GlyphPageTreeNodeSkia.cpp:
976         (WebCore::GlyphPage::fill):
977
978 2011-03-08  Ryosuke Niwa  <rniwa@webkit.org>
979
980         Mac build fix attempt for r80582.
981
982         * platform/graphics/mac/ComplexTextControllerATSUI.cpp:
983         (WebCore::disableLigatures):
984
985 2011-03-08  Ryosuke Niwa  <rniwa@webkit.org>
986
987         Reviewed by Kent Tamura.
988
989         Remove calls to deprecatedEditingOffset in SelectionController and VisibleSelection
990         https://bugs.webkit.org/show_bug.cgi?id=54937
991
992         * editing/SelectionController.cpp:
993         (WebCore::SelectionController::setSelection): Calls anchorNode() instead of deprecatedNode() to obtain
994         the document. Also restrained the lifetime of document variable.
995         (WebCore::removingNodeRemovesPosition): Compare the node with anchorNode() instead of deprecatedNode()
996         to determine whether or not position becomes null after removing a node.
997         (WebCore::SelectionController::directionOfEnclosingBlock): The enclosing block is always a container
998         so call containerNode() instead of deprecatedNode().
999         (WebCore::SelectionController::debugRenderer): Call containerNode() and computeOffsetInContainer()
1000         instead of deprecatedNode() and deprecatedEditingOffset() respectively.
1001         (WebCore::SelectionController::isInPasswordField): Look for the shadow root from containerNode()
1002         instead of deprecatedNode to determine whether or not selection inside a password field. Also assert
1003         that the specified position is not before or after the shadow root as it violates our assumption.
1004         * editing/VisibleSelection.cpp:
1005         (WebCore::makeSearchRange): Call containerNode() and offsetInContainerNode() instead of deprecatedNode()
1006         and deprecatedEditingOffset() respectively because start is always parent anchored and therefore
1007         guaranteed to be an offset inside an anchor node.
1008         (WebCore::VisibleSelection::adjustSelectionToAvoidCrossingEditingBoundaries): Call containerNode()
1009         instead of deprecatedNode() to look for the lowest editable ancestor because position before or after
1010         an editable element isn't editable.
1011         * page/DOMSelection.cpp: Call containerNode() and offsetInContainerNode() instead of deprecatedNode()
1012         and deprecatedEditingOffset() respectively in the following functions because they are exposed to
1013         DOM, which doesn't have before/after concept.
1014         (WebCore::DOMSelection::anchorNode):
1015         (WebCore::DOMSelection::anchorOffset):
1016         (WebCore::DOMSelection::focusNode):
1017         (WebCore::DOMSelection::focusOffset):
1018         (WebCore::DOMSelection::baseNode):
1019         (WebCore::DOMSelection::baseOffset):
1020         (WebCore::DOMSelection::extentNode):
1021         (WebCore::DOMSelection::extentOffset):
1022
1023 2011-03-08  Brent Fulgham  <bfulgham@webkit.org>
1024
1025         Reviewed by Adam Roben.
1026
1027         Correct uninitialized variable in PolicyCallback found while
1028         running WebKit in BoundsChecker.
1029         https://bugs.webkit.org/show_bug.cgi?id=45199.
1030
1031         * loader/PolicyCallback.cpp:
1032         (WebCore::PolicyCallback::PolicyCallback): Initialize
1033         m_argument.
1034
1035 2011-03-08  Brent Fulgham  <bfulgham@webkit.org>
1036
1037         More build bustage fix.
1038
1039         * platform/graphics/win/cairo/FontPlatformData.h:
1040         (WebCore::FontPlatformData::setOrientation): Duplicate accessor
1041         in WinCairo-local header.  This is such a mess!
1042
1043 2011-03-08  David Hyatt  <hyatt@apple.com>
1044
1045         Fix build bustage.  Hide orientation setting behind a setter and stub it out in all
1046         FontPlatformData classes.  (This class really needs to move to a common header with ifdefs.)
1047
1048         * platform/graphics/SimpleFontData.cpp:
1049         (WebCore::SimpleFontData::verticalRightOrientationFontData):
1050         * platform/graphics/cg/FontPlatformData.h:
1051         (WebCore::FontPlatformData::setOrientation):
1052         * platform/graphics/chromium/FontPlatformDataChromiumWin.h:
1053         (WebCore::FontPlatformData::setOrientation):
1054         * platform/graphics/chromium/FontPlatformDataLinux.h:
1055         (WebCore::FontPlatformData::setOrientation):
1056         * platform/graphics/cocoa/FontPlatformData.h:
1057         (WebCore::FontPlatformData::setOrientation):
1058         * platform/graphics/freetype/FontPlatformData.h:
1059         (WebCore::FontPlatformData::setOrientation):
1060         * platform/graphics/qt/FontPlatformData.h:
1061         (WebCore::FontPlatformData::setOrientation):
1062         * platform/graphics/wince/FontPlatformData.h:
1063         (WebCore::FontPlatformData::setOrientation):
1064         * platform/graphics/wx/FontPlatformData.h:
1065         (WebCore::FontPlatformData::setOrientation):
1066
1067 2011-03-08  Joe Wild  <joseph.wild@nokia.com>
1068
1069         Reviewed by Csaba Osztrogon√°c.
1070
1071         [Qt] Missing SVG variables
1072         https://bugs.webkit.org/show_bug.cgi?id=32941
1073
1074         Basically, this patch just modifies features.pri to the Qt build to
1075         pass on the ENABLE_SVG_* flags to the IDL binding generator.
1076
1077         Also I had remove global-construtors.html from the skip list and
1078         updated the associated expected results files.
1079
1080         * features.pri:
1081         * page/DOMWindow.idl:
1082
1083 2011-03-08  Alok priyadarshi  <alokp@chromium.org>
1084
1085         Reviewed by Dimitri Glazkov.
1086
1087         Plugins needs a way to trigger style recalc
1088         https://bugs.webkit.org/show_bug.cgi?id=55242
1089
1090         No test needed. A simple get function is added.
1091
1092         * platform/graphics/chromium/PluginLayerChromium.h:
1093         (WebCore::PluginLayerChromium::getTextureId):
1094
1095 2011-03-08  David Hyatt  <hyatt@apple.com>
1096
1097         Reviewed by Dan Bernstein.
1098
1099         https://bugs.webkit.org/show_bug.cgi?id=48540, support the text-orientation CSS property.
1100         
1101         This patch adds support for two values of the text-orientation property (the ones that actually matter): vertical-right and upright.
1102         The TextOrientation is part of the FontDescription and used to look up fonts (similar to FontOrientation).
1103         
1104         Orientation of non-CJK characters is done using fallback font data of the appropriate orientation type, e.g., verticalRightOrientation and
1105         uprightOrientation fallback font data.  Vertical right is just implemented as a normal horizontal font.  Upright is implemented as a
1106         vertically oriented font that rotates all glyphs.
1107         
1108         The main complication implementing text-orientation is that fonts have "baked-in" vertical glyphs for letters that are hardcoded to
1109         a vertical right facing.  This means that you can use those special vertical glyphs for vertical-right orientation without having to 
1110         fall back, but then for upright orientation you have to ignore them and still fall back.  As you can see from the test case, this doesn't
1111         work very well, but hopefully it won't be all that common.  Limitations of CoreText prevent this case from rendering properly in either the
1112         simple or complex code paths, although the simple code path at least gets close.
1113
1114         Added fast/blockflow/text-orientation-basic.html
1115
1116         * WebCore.exp.in:
1117         * WebCore.xcodeproj/project.pbxproj:
1118         * css/CSSComputedStyleDeclaration.cpp:
1119         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1120         * css/CSSFontFaceSource.cpp:
1121         (WebCore::CSSFontFaceSource::getFontData):
1122         * css/CSSParser.cpp:
1123         (WebCore::CSSParser::parseValue):
1124         * css/CSSPrimitiveValueMappings.h:
1125         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
1126         (WebCore::CSSPrimitiveValue::operator TextOrientation):
1127         * css/CSSPropertyNames.in:
1128         * css/CSSStyleSelector.cpp:
1129         (WebCore::CSSStyleSelector::applyDeclarations):
1130         (WebCore::CSSStyleSelector::applyProperty):
1131         * css/CSSValueKeywords.in:
1132         * loader/cache/CachedFont.cpp:
1133         (WebCore::CachedFont::platformDataFromCustomData):
1134         * loader/cache/CachedFont.h:
1135         * platform/graphics/FontCache.cpp:
1136         (WebCore::FontPlatformDataCacheKey::FontPlatformDataCacheKey):
1137         (WebCore::FontPlatformDataCacheKey::operator==):
1138         (WebCore::computeHash):
1139         (WebCore::FontCache::getCachedFontPlatformData):
1140         * platform/graphics/FontDescription.h:
1141         (WebCore::FontDescription::FontDescription):
1142         (WebCore::FontDescription::textOrientation):
1143         (WebCore::FontDescription::setTextOrientation):
1144         (WebCore::FontDescription::operator==):
1145         * platform/graphics/FontFastPath.cpp:
1146         (WebCore::Font::glyphDataForCharacter):
1147         (WebCore::offsetToMiddleOfGlyph):
1148         * platform/graphics/SimpleFontData.cpp:
1149         (WebCore::SimpleFontData::SimpleFontData):
1150         (WebCore::SimpleFontData::verticalRightOrientationFontData):
1151         (WebCore::SimpleFontData::uprightOrientationFontData):
1152         (WebCore::SimpleFontData::brokenIdeographFontData):
1153         (WebCore::SimpleFontData::DerivedFontData::~DerivedFontData):
1154         * platform/graphics/SimpleFontData.h:
1155         (WebCore::SimpleFontData::hasVerticalGlyphs):
1156         (WebCore::SimpleFontData::isTextOrientationFallback):
1157         * platform/graphics/cairo/FontCustomPlatformData.h:
1158         * platform/graphics/cocoa/FontPlatformData.h:
1159         (WebCore::FontPlatformData::FontPlatformData):
1160         (WebCore::FontPlatformData::textOrientation):
1161         (WebCore::FontPlatformData::hash):
1162         (WebCore::FontPlatformData::operator==):
1163         * platform/graphics/cocoa/FontPlatformDataCocoa.mm:
1164         (WebCore::FontPlatformData::FontPlatformData):
1165         (WebCore::FontPlatformData::operator=):
1166         * platform/graphics/freetype/FontCustomPlatformDataFreeType.cpp:
1167         (WebCore::FontCustomPlatformData::fontPlatformData):
1168         * platform/graphics/haiku/FontCustomPlatformData.cpp:
1169         (WebCore::FontCustomPlatformData::fontPlatformData):
1170         * platform/graphics/haiku/FontCustomPlatformData.h:
1171         * platform/graphics/mac/ComplexTextControllerCoreText.cpp:
1172         (WebCore::ComplexTextController::collectComplexTextRunsForCharactersCoreText):
1173         * platform/graphics/mac/FontCacheMac.mm:
1174         (WebCore::FontCache::createFontPlatformData):
1175         * platform/graphics/mac/FontCustomPlatformData.cpp:
1176         (WebCore::FontCustomPlatformData::fontPlatformData):
1177         * platform/graphics/mac/FontCustomPlatformData.h:
1178         * platform/graphics/mac/FontMac.mm:
1179         (WebCore::showGlyphsWithAdvances):
1180         (WebCore::Font::drawGlyphs):
1181         * platform/graphics/mac/GlyphPageTreeNodeMac.cpp:
1182         (WebCore::shouldUseCoreText):
1183         (WebCore::GlyphPage::fill):
1184         * platform/graphics/mac/SimpleFontDataCoreText.cpp:
1185         (WebCore::SimpleFontData::getCFStringAttributes):
1186         * platform/graphics/mac/SimpleFontDataMac.mm:
1187         (WebCore::SimpleFontData::platformInit):
1188         (WebCore::SimpleFontData::platformBoundsForGlyph):
1189         (WebCore::SimpleFontData::platformWidthForGlyph):
1190         * platform/graphics/pango/FontCustomPlatformDataPango.cpp:
1191         (WebCore::FontCustomPlatformData::fontPlatformData):
1192         * platform/graphics/qt/FontCustomPlatformData.h:
1193         * platform/graphics/qt/FontCustomPlatformDataQt.cpp:
1194         (WebCore::FontCustomPlatformData::fontPlatformData):
1195         * platform/graphics/skia/FontCustomPlatformData.cpp:
1196         (WebCore::FontCustomPlatformData::fontPlatformData):
1197         * platform/graphics/skia/FontCustomPlatformData.h:
1198         * platform/graphics/win/FontCustomPlatformData.cpp:
1199         (WebCore::FontCustomPlatformData::fontPlatformData):
1200         * platform/graphics/win/FontCustomPlatformData.h:
1201         * platform/graphics/win/FontCustomPlatformDataCairo.cpp:
1202         (WebCore::FontCustomPlatformData::fontPlatformData):
1203         * platform/graphics/win/FontCustomPlatformDataCairo.h:
1204         * platform/graphics/wince/FontCustomPlatformData.cpp:
1205         (WebCore::FontCustomPlatformData::fontPlatformData):
1206         * platform/graphics/wince/FontCustomPlatformData.h:
1207         * platform/text/TextOrientation.h: Added.
1208         * rendering/InlineFlowBox.cpp:
1209         (WebCore::InlineFlowBox::requiresIdeographicBaseline):
1210         * rendering/style/RenderStyle.h:
1211         (WebCore::InheritedFlags::initialTextOrientation):
1212
1213 2011-03-08  Ryosuke Niwa  <rniwa@webkit.org>
1214
1215         Reviewed by Darin Adler.
1216
1217         addInlineStyleIfNeeded should take EditingStyle
1218         https://bugs.webkit.org/show_bug.cgi?id=55950
1219
1220         Deployed EditingStyle in addInlineStyleIfNeeded, StyleChange::StyleChange, and StyleChange::init.
1221         Also extracted EditingStyle::styleIsPresentInComputedStyleOfNode from removeStyleFromRunBeforeApplyingStyle.
1222
1223         * editing/ApplyStyleCommand.cpp:
1224         (WebCore::StyleChange::StyleChange): Takes EditingStyle instead of CSSStyleDeclaration.
1225         (WebCore::StyleChange::init): Ditto.
1226         (WebCore::ApplyStyleCommand::applyBlockStyle): Instantiates StyleChange.
1227         (WebCore::ApplyStyleCommand::applyInlineStyleToNodeRange): Calls addInlineStyleIfNeeded.
1228         (WebCore::ApplyStyleCommand::removeStyleFromRunBeforeApplyingStyle): Calls styleIsPresentInComputedStyleOfNode.
1229         (WebCore::ApplyStyleCommand::removeInlineStyleFromElement): Calls EditingStyle::mergeInlineStyleOfElement
1230         instead of manually merging styles.
1231         (WebCore::ApplyStyleCommand::applyInlineStyleToPushDown): Calls addInlineStyleIfNeeded.
1232         (WebCore::ApplyStyleCommand::addInlineStyleIfNeeded): Takes EditingStyle instead of CSSMutableStyleDeclaration.
1233         * editing/ApplyStyleCommand.h:
1234         * editing/CompositeEditCommand.h:
1235         * editing/EditingStyle.cpp:
1236         (WebCore::EditingStyle::styleIsPresentInComputedStyleOfNode): Extracted from removeStyleFromRunBeforeApplyingStyle.
1237         * editing/EditingStyle.h:
1238
1239 2011-03-08  Nico Weber  <thakis@chromium.org>
1240
1241         Reviewed by James Robinson.
1242
1243         Crash on big blur radius with canvas
1244         https://bugs.webkit.org/show_bug.cgi?id=55951
1245
1246         Move the clamping code out of an if branch, so that it happens in the
1247         canvas case as well.
1248
1249         Test: fast/canvas/shadow-huge-blur.html
1250
1251         * platform/graphics/cg/GraphicsContextCG.cpp:
1252         (WebCore::GraphicsContext::setPlatformShadow):
1253
1254 2011-03-08  Chris Fleizach  <cfleizach@apple.com>
1255
1256         Reviewed by Sam Weinig.
1257
1258         WK2: Cannot set focus on an element when focus is outside of WKView
1259         https://bugs.webkit.org/show_bug.cgi?id=55281
1260     
1261         In WK2, focus cannot be set from the WebProcess side because there's no platformWidget().
1262         Instead, the focus/unfocus messages need to be sent to the UIProcess side.
1263
1264         * platform/mac/WidgetMac.mm:
1265         (WebCore::Widget::setFocus):
1266
1267 2011-03-08  Sam Weinig  <sam@webkit.org>
1268
1269         Reviewed by Anders Carlsson.
1270
1271         Overflow: scroll areas should not paint white in scroll corner if the 
1272         scrollbars are overlay.
1273         <rdar://problem/9082871>
1274
1275         * rendering/RenderLayer.cpp:
1276         (WebCore::RenderLayer::paintScrollCorner):
1277         Don't paint the scroll corner white if we have overlay scrollbars.
1278
1279 2011-03-08  Chris Marrin  <cmarrin@apple.com>
1280
1281         Reviewed by Darin Adler.
1282
1283         The first time animations are committed they have a bad start time
1284         https://bugs.webkit.org/show_bug.cgi?id=55947
1285
1286         Do a check for a returned lastCommitTime of <=0 and replace it
1287         with the mediaTime.
1288
1289
1290         * platform/graphics/ca/win/CACFLayerTreeHost.cpp:
1291         (WebCore::CACFLayerTreeHost::notifyAnimationsStarted):
1292
1293 2011-03-08  James Kozianski  <koz@chromium.org>
1294
1295         Reviewed by David Levin.
1296
1297         Expose isValidProtocol() in KURL.h.
1298         https://bugs.webkit.org/show_bug.cgi?id=54594
1299
1300         This is needed to validate protocols used in calls to
1301         navigator.registerProtocolHandler().
1302
1303         * platform/KURL.cpp:
1304         * platform/KURL.h:
1305         * platform/KURLGoogle.cpp:
1306         (WebCore::isValidProtocol):
1307
1308 2011-03-08  Adam Roben  <aroben@apple.com>
1309
1310         Set svn:mime-type to text/css for all Inspector CSS files
1311
1312         This will cause them to be served with the correct MIME type from svn.webkit.org's web
1313         interface.
1314
1315         Rubber-stamped by Tim Hatcher.
1316
1317         * inspector/front-end/audits.css: Added property svn:mime-type.
1318         * inspector/front-end/goToLineDialog.css: Added property svn:mime-type.
1319         * inspector/front-end/heapProfiler.css: Added property svn:mime-type.
1320         * inspector/front-end/helpScreen.css: Added property svn:mime-type.
1321         * inspector/front-end/inspector.css: Added property svn:mime-type.
1322         * inspector/front-end/inspectorSyntaxHighlight.css: Added property svn:mime-type.
1323         * inspector/front-end/networkPanel.css: Added property svn:mime-type.
1324         * inspector/front-end/popover.css: Added property svn:mime-type.
1325         * inspector/front-end/textViewer.css: Added property svn:mime-type.
1326
1327 2011-03-08  Andrei Popescu  <andreip@google.com>
1328
1329         Reviewed by Steve Block.
1330
1331         IDBCallbacks::onsuccess(IDBIndex*) is unused and should be removed.
1332         https://bugs.webkit.org/show_bug.cgi?id=55938
1333
1334         The IndexedDatabase specification changed and IDBIndex objects are no
1335         longer created asynchronously. We therefore no longer need this method.
1336
1337         No new tests, just cleanup.
1338
1339         * storage/IDBCallbacks.h:
1340         * storage/IDBRequest.cpp:
1341         * storage/IDBRequest.h:
1342
1343 2011-03-08  Sheriff Bot  <webkit.review.bot@gmail.com>
1344
1345         Unreviewed, rolling out r80551.
1346         http://trac.webkit.org/changeset/80551
1347         https://bugs.webkit.org/show_bug.cgi?id=55933
1348
1349         It broke 285 tests on Qt bot (Requested by Ossy on #webkit).
1350
1351         * WebCore.pro:
1352         * platform/SharedBuffer.cpp:
1353         * platform/SharedBuffer.h:
1354         * platform/network/qt/QNetworkReplyHandler.cpp:
1355         (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
1356         (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
1357         (WebCore::QNetworkReplyHandler::forwardData):
1358         (WebCore::QNetworkReplyHandler::start):
1359         * platform/network/qt/QNetworkReplyHandler.h:
1360         * platform/network/qt/ResourceHandleQt.cpp:
1361         (WebCore::ResourceHandle::supportsBufferedData):
1362         (WebCore::ResourceHandle::bufferedData):
1363         * platform/qt/QtByteBlock.cpp: Removed.
1364         * platform/qt/QtByteBlock.h: Removed.
1365         * platform/qt/SharedBufferQt.cpp:
1366
1367 2011-03-08  Andreas Kling  <kling@webkit.org>
1368
1369         Reviewed by Benjamin Poulain.
1370
1371         RenderObject: Pass complex type arguments as const-references.
1372
1373         * WebCore.exp.in:
1374         * rendering/RenderObject.h:
1375         * rendering/RenderObject.cpp:
1376         (WebCore::RenderObject::drawBoxSideFromPath):
1377         (WebCore::RenderObject::drawArcForBoxSide):
1378         (WebCore::RenderObject::localToAbsolute):
1379         (WebCore::RenderObject::absoluteToLocal):
1380
1381 2011-03-08  Andreas Kling  <kling@webkit.org>
1382
1383         Reviewed by Antonio Gomes.
1384
1385         Path: Make measurement functions const
1386         https://bugs.webkit.org/show_bug.cgi?id=55914
1387
1388         * platform/graphics/Path.cpp:
1389         (WebCore::Path::length):
1390         (WebCore::Path::pointAtLength):
1391         (WebCore::Path::normalAngleAtLength):
1392         * platform/graphics/Path.h:
1393         * platform/graphics/cairo/PathCairo.cpp:
1394         (WebCore::Path::strokeBoundingRect):
1395         * platform/graphics/cg/PathCG.cpp:
1396         (WebCore::Path::strokeBoundingRect):
1397         * platform/graphics/openvg/PathOpenVG.cpp:
1398         (WebCore::Path::strokeBoundingRect):
1399         (WebCore::Path::length):
1400         (WebCore::Path::pointAtLength):
1401         (WebCore::Path::normalAngleAtLength):
1402         * platform/graphics/qt/PathQt.cpp:
1403         (WebCore::Path::strokeBoundingRect):
1404         (WebCore::Path::length):
1405         (WebCore::Path::pointAtLength):
1406         (WebCore::Path::normalAngleAtLength):
1407         * platform/graphics/skia/PathSkia.cpp:
1408         (WebCore::Path::strokeBoundingRect):
1409         * platform/graphics/wince/PathWinCE.cpp:
1410         (WebCore::Path::strokeBoundingRect):
1411         * platform/graphics/wx/PathWx.cpp:
1412         (WebCore::Path::strokeBoundingRect):
1413
1414 2011-03-08  Carlos Garcia Campos  <cgarcia@igalia.com>
1415
1416         Reviewed by Martin Robinson.
1417
1418         [GTK] Do not set juntion sides on scrollbar stepper buttons
1419         https://bugs.webkit.org/show_bug.cgi?id=55868
1420
1421         Fixes rendering of steppers for themes using rounded stepper
1422         buttons on scrollbars like Adwaita.
1423
1424         * platform/gtk/ScrollbarThemeGtk3.cpp:
1425         (WebCore::ScrollbarThemeGtk::paintButton):
1426
1427 2011-03-08  Carlos Garcia Campos  <cgarcia@igalia.com>
1428
1429         Reviewed by Martin Robinson.
1430
1431         [GTK] Use doubles instead of integers for coordinates when rendering arrows
1432         https://bugs.webkit.org/show_bug.cgi?id=55866
1433
1434         To prevent off-by-one rounding errors.
1435
1436         * platform/gtk/RenderThemeGtk3.cpp:
1437         (WebCore::RenderThemeGtk::paintMenuList):
1438         * platform/gtk/ScrollbarThemeGtk3.cpp:
1439         (WebCore::ScrollbarThemeGtk::paintButton):
1440
1441 2011-03-08  Markus Goetz  <guruz@guruz.de>
1442
1443         Reviewed by Kenneth Rohde Christiansen.
1444
1445         [Qt] Use the QNetworkAccessManager zerocopy feature
1446         https://bugs.webkit.org/show_bug.cgi?id=50082
1447
1448         The feature will be introduced in Qt 4.8.
1449         This patch is backwards compatible with Qt 4.7.
1450
1451         * WebCore.pro:
1452         * platform/SharedBuffer.cpp:
1453         * platform/SharedBuffer.h:
1454         * platform/network/qt/QNetworkReplyHandler.cpp:
1455         (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
1456         (WebCore::QNetworkReplyHandler::bufferedData):
1457         (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
1458         (WebCore::QNetworkReplyHandler::downloadProgress):
1459         (WebCore::QNetworkReplyHandler::forwardData):
1460         (WebCore::QNetworkReplyHandler::start):
1461         * platform/network/qt/QNetworkReplyHandler.h:
1462         * platform/network/qt/ResourceHandleQt.cpp:
1463         (WebCore::ResourceHandle::supportsBufferedData):
1464         (WebCore::ResourceHandle::bufferedData):
1465         * platform/qt/SharedBufferQt.cpp:
1466         (WebCore::SharedBuffer::wrapQtByteBlock):
1467         (WebCore::SharedBuffer::hasPlatformData):
1468         (WebCore::SharedBuffer::platformData):
1469         (WebCore::SharedBuffer::platformDataSize):
1470         (WebCore::SharedBuffer::maybeTransferPlatformData):
1471         (WebCore::SharedBuffer::clearPlatformData):
1472
1473 2011-03-08  Alejandro G. Castro  <alex@igalia.com>
1474
1475         Reviewed by Martin Robinson.
1476
1477         [GTK] Fix compilation warnings after r80429
1478         https://bugs.webkit.org/show_bug.cgi?id=55864
1479
1480         * platform/gtk/WidgetGtk.cpp:
1481
1482 2011-03-08  Philippe Normand  <pnormand@igalia.com>
1483
1484         Unreviewed, GTK build fix after r80536
1485
1486         * GNUmakefile.am:
1487
1488 2011-03-08  Zan Dobersek  <zandobersek@gmail.com>
1489
1490         Reviewed by Martin Robinson.
1491
1492         [Gtk] toDataURL uses incorrect quality value when saving GdkPixbuf to buffer
1493         https://bugs.webkit.org/show_bug.cgi?id=55878
1494
1495         Multiply the quality parameter by 100 to put it in the range [0, 100] as needed
1496         when saving GdkPixbuf to a buffer.
1497
1498         * platform/graphics/gtk/ImageBufferGtk.cpp:
1499         (WebCore::ImageBuffer::toDataURL):
1500
1501 2011-03-07  Daniel Cheng  <dcheng@chromium.org>
1502
1503         Unreviewed.
1504
1505         Final build fix for r80536.
1506
1507         * DerivedSources.make:
1508
1509 2011-03-07  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
1510
1511         Reviewed by Kent Tamura.
1512
1513         [EFL] Adjust functions of WebCore's efl port to WebKit coding style
1514         https://bugs.webkit.org/show_bug.cgi?id=55924
1515
1516         Adjust webkit style to PlatformKeyboardEventEfl, PlatformMouseEventEfl and WidgetEfl files.
1517
1518         * platform/efl/PlatformKeyboardEventEfl.cpp:
1519         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
1520         * platform/efl/PlatformMouseEventEfl.cpp:
1521         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
1522         * platform/efl/WidgetEfl.cpp:
1523         (WebCore::Widget::frameRectsChanged):
1524         (WebCore::Widget::setEvasObject):
1525
1526 2011-03-07  Daniel Cheng  <dcheng@chromium.org>
1527
1528         Unreviewed.
1529
1530         More build fixes for r80536.
1531
1532         * CMakeLists.txt:
1533         * platform/chromium/ClipboardChromium.cpp:
1534         * platform/chromium/ClipboardChromium.h:
1535
1536 2011-03-07  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
1537
1538         Reviewed by Antonio Gomes.
1539
1540         [EFL] Adjust functions of ScrollbarEfl.cpp to WebKit coding style
1541         https://bugs.webkit.org/show_bug.cgi?id=55917
1542
1543         Adjust webkit style to ScrollbarEfl files.
1544
1545         * platform/efl/ScrollbarEfl.cpp:
1546         (scrollbarEflEdjeMessage):
1547         (ScrollbarEfl::setParent):
1548         (ScrollbarEfl::updateThumbPositionAndProportion):
1549         (ScrollbarEfl::frameRectsChanged):
1550         (ScrollbarEfl::paint):
1551         * platform/efl/ScrollbarEfl.h:
1552
1553 2011-03-07  Daniel Cheng  <dcheng@chromium.org>
1554
1555         Unreviewed.
1556
1557         Build fix for Chromium after r80536.
1558
1559         * platform/chromium/DataTransferItemChromium.cpp:
1560         * platform/chromium/DataTransferItemsChromium.cpp:
1561
1562 2011-03-07  Daniel Cheng  <dcheng@chromium.org>
1563
1564         Unreviewed.
1565
1566         More build fixes for r80536.
1567
1568         * CMakeLists.txt:
1569         * platform/chromium/ClipboardChromium.cpp:
1570         * platform/chromium/ClipboardChromium.h:
1571
1572 2011-03-07  Daniel Cheng  <dcheng@chromium.org>
1573
1574         Reviewed by David Levin.
1575
1576         Add support for DataTransferItems
1577         https://bugs.webkit.org/show_bug.cgi?id=55115
1578
1579         This patch adds stubs for DataTransferItems/DataTransferItem as well as implementing the
1580         basic functionality on the Chromium port. With the exception of DataTransferItem::getAsFile,
1581         all functionality on the DataTransferItems collection has been implemented.
1582         This change does not actually hook up DataTransferItems to reflect the actual contents of a
1583         drop/paste operation or to allow mutation of data in a copy/drag start yet. That will be
1584         enabled via several followup patches.
1585
1586         Test: editing/pasteboard/data-transfer-items.html
1587
1588         * Android.mk:
1589         * CMakeLists.txt:
1590         * CodeGenerators.pri:
1591         * DerivedSources.cpp:
1592         * DerivedSources.make:
1593         * GNUmakefile.am:
1594         * WebCore.gypi:
1595         * WebCore.pro:
1596         * WebCore.vcproj/WebCore.vcproj:
1597         * WebCore.xcodeproj/project.pbxproj:
1598         * bindings/generic/RuntimeEnabledFeatures.cpp:
1599         * bindings/generic/RuntimeEnabledFeatures.h:
1600         (WebCore::RuntimeEnabledFeatures::setDataTransferItemsEnabled):
1601         (WebCore::RuntimeEnabledFeatures::dataTransferItemsEnabled):
1602         * bindings/scripts/CodeGeneratorV8.pm: Do not emit an #include line for DOMString, since it's built-in.
1603         * dom/Clipboard.h:
1604         (WebCore::Clipboard::policy):
1605         * dom/Clipboard.idl:
1606         * dom/DataTransferItem.cpp: Added.
1607         * dom/DataTransferItem.h: Added.
1608         (WebCore::DataTransferItem::~DataTransferItem):
1609         * dom/DataTransferItem.idl: Added.
1610         * dom/DataTransferItems.h: Added.
1611         (WebCore::DataTransferItems::~DataTransferItems):
1612         * dom/DataTransferItems.idl: Added.
1613         * dom/StringCallback.cpp: Added.
1614         (WebCore::StringCallback::scheduleCallback):
1615         * dom/StringCallback.h: Added.
1616         (WebCore::StringCallback::~StringCallback):
1617         * dom/StringCallback.idl: Added.
1618         * platform/chromium/ClipboardChromium.cpp:
1619         (WebCore::ClipboardChromium::items):
1620         * platform/chromium/ClipboardChromium.h:
1621         * platform/chromium/DataTransferItemChromium.cpp: Added.
1622         (WebCore::DataTransferItemChromium::create):
1623         (WebCore::DataTransferItemChromium::DataTransferItemChromium):
1624         (WebCore::DataTransferItemChromium::kind):
1625         (WebCore::DataTransferItemChromium::type):
1626         (WebCore::DataTransferItemChromium::getAsString):
1627         * platform/chromium/DataTransferItemChromium.h: Added.
1628         * platform/chromium/DataTransferItemsChromium.cpp: Added.
1629         (WebCore::DataTransferItemsChromium::create):
1630         (WebCore::DataTransferItemsChromium::DataTransferItemsChromium):
1631         (WebCore::DataTransferItemsChromium::length):
1632         (WebCore::DataTransferItemsChromium::item):
1633         (WebCore::DataTransferItemsChromium::deleteItem):
1634         (WebCore::DataTransferItemsChromium::clear):
1635         (WebCore::DataTransferItemsChromium::add):
1636         * platform/chromium/DataTransferItemsChromium.h: Added.
1637
1638 2011-03-07  Ryosuke Niwa  <rniwa@webkit.org>
1639
1640         Reviewed by Darin Adler.
1641
1642         selectionHasStyle and selectionStartHasStyle should use EditingStyle
1643         https://bugs.webkit.org/show_bug.cgi?id=55902
1644
1645         Deployed EditingStyle in selectionHasStyle and selectionStartHasStyle.
1646         This allowed us to move triStateOfStyle from Editor.cpp to EditingStyle.cpp.
1647
1648         Also changed the argument lists of selectionHasStyle and selectionStartHasStyle
1649         to take a property id and a value instead of a CSSMutableStyleDeclaration to cleanup
1650         call sites of these two functions.
1651
1652         * WebCore.exp.in: Updated the signature of selectionHasStyle. No longer exports
1653         selectionStartHasStyle because it's not called anywhere outside of WebCore.
1654         * WebCore.order: Ditto.
1655         * editing/EditingStyle.cpp:
1656         (WebCore::EditingStyle::EditingStyle): Added a new constructor that takes a property id
1657         and a property value.
1658         (WebCore::EditingStyle::triStateOfStyle): Moved from Editor.cpp.
1659         * editing/EditingStyle.h:
1660         (WebCore::EditingStyle::create): Added.
1661         * editing/Editor.cpp:
1662         (WebCore::Editor::selectionStartHasStyle): Takes a property id and a value instead of
1663         a CSSStyleDeclaration.
1664         (WebCore::Editor::selectionHasStyle): Ditto.
1665         * editing/Editor.h: Updated the signatures of selectionStartHasStyle and selectionHasStyle.
1666         * editing/EditorCommand.cpp:
1667         (WebCore::executeToggleStyle): Calls selectionStartHasStyle and selectionHasStyle.
1668         (WebCore::stateStyle): Ditto.
1669         * page/ContextMenuController.cpp:
1670         (WebCore::ContextMenuController::checkOrEnableIfNeeded): Ditto.
1671
1672 2011-03-07  Alexey Proskuryakov  <ap@apple.com>
1673
1674         Reviewed by Darin Adler.
1675
1676         REGRESSION (HTML5 tree builder): Text selection in a large text document is extremely slow
1677         https://bugs.webkit.org/show_bug.cgi?id=55898
1678
1679         <rdar://problem/9095839> REGRESSION: Mail hangs with a certain large mail message when
1680         linkifying e-mail addresses in in -[DOMCharacterData setData:]
1681
1682         Changes render tree of fast/text/large-text-composed-char.html, but not image results.
1683
1684         * dom/CharacterData.cpp: (WebCore::CharacterData::parserAppendData):
1685         Changed parserAppendData() to accept a maximum length, and moved code from Text::createWithLengthLimit().
1686
1687         * dom/CharacterData.h: Moved a constant for maximum length from Text.h.
1688
1689         * dom/Text.cpp: (WebCore::Text::createWithLengthLimit):
1690         * dom/Text.h:
1691         This function was unused in ToT. Moved code around to share with CharacterData.
1692
1693         * html/parser/HTMLConstructionSite.cpp: (WebCore::HTMLConstructionSite::insertTextNode):
1694         Chnaged to split large text nodes while parsing again.
1695
1696 2011-03-07  Alice Boxhall  <aboxhall@chromium.org>
1697
1698         Reviewed by Adam Barth.
1699
1700         Fix platform/image-encoders/JPEGImageEncoder.cpp empty_output_buffer() behaviour
1701         https://bugs.webkit.org/show_bug.cgi?id=54522
1702
1703         Fix jpegEmptyOutputBuffer() by ignoring free_in_buffer value as required.
1704
1705         No new tests, as this code is not yet used in WebKit. Once this code is used to implement canvas.toDataUrl(), the canvas tests will exercise it.
1706
1707         * platform/image-encoders/JPEGImageEncoder.cpp:
1708         (WebCore::jpegEmptyOutputBuffer):
1709
1710 2011-03-07  Sergey Glazunov  <serg.glazunov@gmail.com>
1711
1712         Reviewed by Eric Seidel.
1713
1714         Add the missing insertedIntoDocument() call in SVGVKernElement and SVGHKernElement
1715         https://bugs.webkit.org/show_bug.cgi?id=55896
1716
1717         Test: svg/dom/vkern-element-crash.html
1718
1719         * svg/SVGHKernElement.cpp:
1720         (WebCore::SVGHKernElement::insertedIntoDocument):
1721         * svg/SVGVKernElement.cpp:
1722         (WebCore::SVGVKernElement::insertedIntoDocument):
1723
1724 2011-03-07  Sheriff Bot  <webkit.review.bot@gmail.com>
1725
1726         Unreviewed, rolling out r80514.
1727         http://trac.webkit.org/changeset/80514
1728         https://bugs.webkit.org/show_bug.cgi?id=55915
1729
1730         Caused assertion failures (Requested by ukai on #webkit).
1731
1732         * platform/graphics/skia/GraphicsContextSkia.cpp:
1733         (WebCore::GraphicsContext::setPlatformShadow):
1734         * platform/graphics/skia/ImageSkia.cpp:
1735         (WebCore::paintSkBitmap):
1736
1737 2011-03-07  Cosmin Truta  <ctruta@chromium.org>
1738
1739         Reviewed by Adam Barth.
1740
1741         SVG <image> referenced by <use> is displayed incorrectly
1742         https://bugs.webkit.org/show_bug.cgi?id=55750
1743
1744         The result of sourceURI must use the URL of the enclosing document as base.
1745         Otherwise, the base may sometimes be empty, and, as a consequence,
1746         the intermediate KURL object may be invalid.
1747
1748         Test: svg/custom/use-image-in-g.svg
1749
1750         * svg/SVGImageLoader.cpp:
1751         (WebCore::SVGImageLoader::sourceURI):
1752
1753 2011-03-07  Helder Correia  <helder@sencha.com>
1754
1755         Reviewed by Simon Fraser.
1756
1757         Shadow is not shown when using strokeRect with a gradient strokeStyle
1758         https://bugs.webkit.org/show_bug.cgi?id=52509
1759
1760         This happens in CG and is related to bug 51869, this time to be fixed
1761         in GraphicsContext::strokeRect(const FloatRect& r, float lineWidth).
1762         We need to draw the gradient clipped to the stroke on a CGLayer first,
1763         and then draw the layer on the GraphicsContext.
1764
1765         Tests: fast/canvas/canvas-strokeRect-gradient-shadow.html
1766                svg/css/rect-gradient-stroke-shadow.svg
1767
1768         * platform/graphics/cg/GraphicsContextCG.cpp:
1769         (WebCore::GraphicsContext::strokeRect):
1770
1771 2011-03-07  Justin Novosad  <junov@chromium.org>
1772
1773         Reviewed by Kenneth Russell.
1774
1775         Fix for blurs behind bitmap images in Chromium, and boosting
1776         shadow blur quality 
1777         Bug URLs:
1778                 https://bugs.webkit.org/show_bug.cgi?id=55410
1779                 https://bugs.webkit.org/show_bug.cgi?id=55506
1780
1781         No new tests. Covered by existing layout tests. 
1782
1783         * platform/graphics/skia/GraphicsContextSkia.cpp:
1784         (WebCore::GraphicsContext::setPlatformShadow): Turn on high quality shadows and fix shadow color
1785         * platform/graphics/skia/ImageSkia.cpp:
1786         (WebCore::paintSkBitmap): Propagate the draw looper from context to painter
1787
1788 2011-03-07  Andreas Kling  <kling@webkit.org>
1789
1790         Unreviewed Mac build fix after r80508.
1791
1792         * WebCore.exp.in:
1793
1794 2011-03-07  Enrica Casucci  <enrica@apple.com>
1795
1796         Unreviewed build fix.
1797
1798         Rolling back  http://trac.webkit.org/changeset/80497 due to the
1799         32-bit build failures.
1800
1801         * WebCore.xcodeproj/project.pbxproj:
1802         * platform/mac/HTMLConverter.h: Removed.
1803         * platform/mac/HTMLConverter.mm: Removed.
1804         * platform/mac/PasteboardMac.mm:
1805         (WebCore::Pasteboard::writeSelection):
1806
1807 2011-03-07  Andreas Kling  <kling@webkit.org>
1808
1809         Reviewed by Benjamin Poulain.
1810
1811         FrameView::setBaseBackgroundColor: Pass Color argument as const-reference.
1812
1813         * page/FrameView.cpp:
1814         (WebCore::FrameView::setBaseBackgroundColor):
1815         * page/FrameView.h:
1816
1817 2011-03-07  Adam Barth  <abarth@webkit.org>
1818
1819         Reviewed by Dimitri Glazkov.
1820
1821         REGRESSION(r78147): Crash on http://gnarf.net/jquery/test/
1822         https://bugs.webkit.org/show_bug.cgi?id=55894
1823
1824         The m_frame can disappear out from under us, and there's no point in
1825         checking whether the load is complete in a non-existant frame.
1826
1827         Test: fast/parser/document-write-into-initial-document.html
1828
1829         * dom/Document.cpp:
1830         (WebCore::Document::explicitClose):
1831
1832 2011-03-07  Sheriff Bot  <webkit.review.bot@gmail.com>
1833
1834         Unreviewed, rolling out r80500.
1835         http://trac.webkit.org/changeset/80500
1836         https://bugs.webkit.org/show_bug.cgi?id=55908
1837
1838         Caused mysterious GYP error (Requested by abarth on #webkit).
1839
1840         * WebCore.gyp/WebCore.gyp:
1841         * WebCore.gypi:
1842
1843 2011-03-07  Adam Barth  <abarth@webkit.org>
1844
1845         Fix Chromium Mac build.  This header should only be included when the
1846         feature is enabled.
1847
1848         * platform/cf/RunLoopTimerCF.cpp:
1849
1850 2011-03-07  Adam Barth  <abarth@webkit.org>
1851
1852         Reviewed by Dimitri Glazkov.
1853
1854         Add WML files to WebCore.gypi
1855         https://bugs.webkit.org/show_bug.cgi?id=55905
1856
1857         * WebCore.gyp/WebCore.gyp:
1858         * WebCore.gypi:
1859
1860 2011-03-07  Adrienne Walker  <enne@google.com>
1861
1862         Reviewed by James Robinson.
1863
1864         [chromium] Add missing include to #define Skia parameter
1865         https://bugs.webkit.org/show_bug.cgi?id=55885
1866
1867         * platform/graphics/chromium/ShaderChromium.h:
1868
1869 2011-03-07  Chris Fleizach  <cfleizach@apple.com>
1870
1871         Reviewed by Beth Dakin.
1872
1873         AX: WK1 needs to use ScrollView attachment for AXScrollArea, WK2 does not
1874         https://bugs.webkit.org/show_bug.cgi?id=55706
1875
1876         * WebCore.exp.in:
1877         * accessibility/AXObjectCache.cpp:
1878         (WebCore::AXObjectCache::rootObjectForFrame):
1879         * accessibility/AXObjectCache.h:
1880         * accessibility/AccessibilityScrollView.cpp:
1881         (WebCore::AccessibilityScrollView::isAttachment):
1882         (WebCore::AccessibilityScrollView::widgetForAttachmentView):
1883         * accessibility/AccessibilityScrollView.h:
1884         (WebCore::AccessibilityScrollView::firstChild):
1885         * accessibility/mac/AccessibilityObjectWrapper.mm:
1886         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
1887
1888 2011-03-07  Enrica Casucci  <enrica@apple.com>
1889
1890         Reviewed by Darin Adler.
1891         
1892         REGRESSION: Copied content loses formatting on paste to external apps.
1893         https://bugs.webkit.org/show_bug.cgi?id=47615
1894         <rdar://problem/9001214>
1895
1896         This is a resubmission of a patch that was landed a while ago then rolled
1897         back because of a build failure on SnowLeopard and Leopard.
1898         
1899         This patch adds a way for WebKit2 to create NSAttributedStrings from
1900         a DOM range without using the AppKit api initWithDOMRange that internally
1901         needs to access the WebView. The NSAttributedString is needed to create
1902         RTF formats in the pasteboard.
1903         This is to be considered a first step, since in the future we want to have
1904         an implementation based on the TextIterator.
1905
1906         * WebCore.xcodeproj/project.pbxproj: Added new file.
1907         * platform/mac/HTMLConverter.h: Added.
1908         * platform/mac/HTMLConverter.mm: Added.
1909         * platform/mac/PasteboardMac.mm:
1910         (WebCore::Pasteboard::writeSelection): We now use WebHTMLConverter
1911         class for WebKit2 to create the NSAttributedString from the DOM range.
1912
1913 2011-03-07  Adam Barth  <abarth@webkit.org>
1914
1915         Reviewed by Dimitri Glazkov.
1916
1917         Add some missing platform files to WebCore.gypi
1918         https://bugs.webkit.org/show_bug.cgi?id=55897
1919
1920         There are a bunch more, but this is a start.
1921
1922         * WebCore.gyp/WebCore.gyp:
1923         * WebCore.gypi:
1924
1925 2011-03-07  Steve Block  <steveblock@google.com>
1926
1927         Reviewed by Jeremy Orlow.
1928
1929         Rename JNIBridgeV8.cpp/h to JavaFieldV8.cpp/h
1930         https://bugs.webkit.org/show_bug.cgi?id=55879
1931
1932         No new tests, refactoring only.
1933
1934         * Android.v8bindings.mk:
1935         * WebCore.gypi:
1936         * bridge/jni/v8/JavaClassV8.cpp:
1937         * bridge/jni/v8/JavaClassV8.h:
1938         * bridge/jni/v8/JavaFieldV8.cpp: Renamed from Source/WebCore/bridge/jni/v8/JNIBridgeV8.cpp.
1939         (JavaField::JavaField):
1940         * bridge/jni/v8/JavaFieldV8.h: Renamed from Source/WebCore/bridge/jni/v8/JNIBridgeV8.h.
1941         (JSC::Bindings::JavaField::name):
1942         (JSC::Bindings::JavaField::type):
1943         (JSC::Bindings::JavaField::getJNIType):
1944         * bridge/jni/v8/JavaInstanceV8.cpp:
1945         * bridge/jni/v8/JavaNPObjectV8.cpp:
1946
1947 2011-03-07  Daniel Cheng  <dcheng@chromium.org>
1948
1949         Reviewed by Tony Chang.
1950
1951         Add plumbing for paste support to ChromiumDataObject::types()
1952         https://bugs.webkit.org/show_bug.cgi?id=55792
1953
1954         This is a preliminary patch to support event.dataTransfer.items. This
1955         adds plumbing to support retrieving the types in a paste event. It also
1956         moves the check for files in a drag/paste up to ClipboardChromium, since
1957         internal code needs to be able to differentiate between actual files in
1958         a drag and someone that simply decided to use "Files" as a custom type
1959         string.
1960
1961         Test: editing/pasteboard/onpaste-text-html-types.html
1962
1963         * platform/chromium/ChromiumDataObject.cpp:
1964         (WebCore::ChromiumDataObject::types):
1965         (WebCore::ChromiumDataObject::containsFilenames):
1966         * platform/chromium/ChromiumDataObject.h:
1967         * platform/chromium/ClipboardChromium.cpp:
1968         (WebCore::ClipboardChromium::types):
1969         * platform/chromium/ClipboardMimeTypes.cpp:
1970         * platform/chromium/ClipboardMimeTypes.h:
1971
1972 2011-03-07  Takayoshi Kochi  <kochi@chromium.org>
1973
1974         Reviewed by Tony Chang.
1975
1976         [chromium] Use preferred locale information when choosing fallback
1977         font using fontconfig on Linux platform.
1978         http://bugs.webkit.org/show_bug.cgi?id=55453
1979
1980         No new tests, as it depends on ICU and locale setting, so it will be
1981         covered by Chromium side.
1982
1983         * platform/chromium/PlatformBridge.h:
1984         * platform/graphics/chromium/FontCacheLinux.cpp:
1985
1986 2011-03-07  Adam Barth  <abarth@webkit.org>
1987
1988         Reviewed by Eric Seidel.
1989
1990         Add gobject, cpp, and objc bindings to WebCore.gypi
1991         https://bugs.webkit.org/show_bug.cgi?id=55892
1992
1993         These are also excluded from the Chromium build but needed for various
1994         other ports.
1995
1996         * WebCore.gyp/WebCore.gyp:
1997         * WebCore.gypi:
1998
1999 2011-03-07  Sergey Glazunov  <serg.glazunov@gmail.com>
2000
2001         Reviewed by Dimitri Glazkov.
2002
2003         Node::checkAddChild and Node::checkReplaceChild shouldn't change the owner document of a node
2004         https://bugs.webkit.org/show_bug.cgi?id=55803
2005
2006         Test: fast/dom/dom-method-document-change.html
2007
2008         * dom/ContainerNode.cpp:
2009         (WebCore::ContainerNode::insertBefore):
2010         (WebCore::ContainerNode::replaceChild):
2011         (WebCore::ContainerNode::appendChild):
2012         * dom/Node.cpp:
2013         (WebCore::Node::checkReplaceChild):
2014         (WebCore::Node::checkAddChild):
2015         * dom/Node.h:
2016
2017 2011-03-07  Sheriff Bot  <webkit.review.bot@gmail.com>
2018
2019         Unreviewed, rolling out r80484.
2020         http://trac.webkit.org/changeset/80484
2021         https://bugs.webkit.org/show_bug.cgi?id=55891
2022
2023         requires Chromium DEPS roll (Requested by dcheng on #webkit).
2024
2025         * platform/chromium/ChromiumDataObject.cpp:
2026         (WebCore::ChromiumDataObject::types):
2027         * platform/chromium/ChromiumDataObject.h:
2028         (WebCore::ChromiumDataObject::containsFilenames):
2029         * platform/chromium/ClipboardChromium.cpp:
2030         (WebCore::ClipboardChromium::types):
2031         * platform/chromium/ClipboardMimeTypes.cpp:
2032         * platform/chromium/ClipboardMimeTypes.h:
2033
2034 2011-03-07  Adam Barth  <abarth@webkit.org>
2035
2036         Reviewed by Dimitri Glazkov.
2037
2038         Add missing bindings/js files to WebCore.gypi
2039         https://bugs.webkit.org/show_bug.cgi?id=55888
2040
2041         These files are excluded from the Chromium build but needed for the Mac
2042         build.
2043
2044         * WebCore.gypi:
2045
2046 2011-03-07  Daniel Cheng  <dcheng@chromium.org>
2047
2048         Reviewed by Tony Chang.
2049
2050         Add plumbing for paste support to ChromiumDataObject::types()
2051         https://bugs.webkit.org/show_bug.cgi?id=55792
2052
2053         This is a preliminary patch to support event.dataTransfer.items. This
2054         adds plumbing to support retrieving the types in a paste event. It also
2055         moves the check for files in a drag/paste up to ClipboardChromium, since
2056         internal code needs to be able to differentiate between actual files in
2057         a drag and someone that simply decided to use "Files" as a custom type
2058         string.
2059
2060         Test: editing/pasteboard/onpaste-text-html-types.html
2061
2062         * platform/chromium/ChromiumDataObject.cpp:
2063         (WebCore::ChromiumDataObject::types):
2064         (WebCore::ChromiumDataObject::containsFilenames):
2065         * platform/chromium/ChromiumDataObject.h:
2066         * platform/chromium/ClipboardChromium.cpp:
2067         (WebCore::ClipboardChromium::types):
2068         * platform/chromium/ClipboardMimeTypes.cpp:
2069         * platform/chromium/ClipboardMimeTypes.h:
2070
2071 2011-03-07  Joseph Pecoraro  <joepeck@webkit.org>
2072
2073         Reviewed by Kenneth Rohde Christiansen.
2074
2075         Viewport Warning/Error Messages Are Now Inaccurate
2076         https://bugs.webkit.org/show_bug.cgi?id=53707
2077
2078         Correct and improve the error messages for viewport parsing.
2079
2080         Tests: fast/viewport/viewport-warnings-1.html
2081                fast/viewport/viewport-warnings-2.html
2082                fast/viewport/viewport-warnings-3.html
2083                fast/viewport/viewport-warnings-4.html
2084                fast/viewport/viewport-warnings-5.html
2085                fast/viewport/viewport-warnings-6.html
2086
2087         * dom/ViewportArguments.cpp:
2088         (WebCore::numericPrefix):
2089         (WebCore::findSizeValue): remove incorrect device-width / height tips.
2090         (WebCore::setViewportFeature): report a warning for an unrecognized key.
2091         (WebCore::viewportErrorMessageTemplate): added template for unrecognized key.
2092         (WebCore::viewportErrorMessageLevel): classify an unrecognized key is an error.
2093         * dom/ViewportArguments.h: removed no longer used warnings.
2094
2095 2011-03-07  James Robinson  <jamesr@chromium.org>
2096
2097         Reviewed by Kenneth Russell.
2098
2099         [chromium] Separate the update and draw portions of LayerRendererChromium's drawLayers function
2100         https://bugs.webkit.org/show_bug.cgi?id=54047
2101
2102         This splits up LayerRendererChromium::drawLayers() into two phases,
2103         one that updates layers and one that actually draws them.  Most of the
2104         patch is moving the bodies of drawLayers() and updateLayersRecursive()
2105         into smaller helper functions.
2106
2107         The main entry point is renamed updateAndDrawLayers(), but otherwise
2108         has the same signature as drawLayers() did.  Internally it does the
2109         following:
2110
2111         1.) Updates the root layer's contents
2112         2.) Updates the root layer's scrollbars
2113         3.) Updates the RenderSurface tree and the contents of all child
2114         layers
2115         4.) Draws the root layer and root layer scrollbars
2116         5.) Draws all child layers using the previously updated
2117         CCLayerImpl/RenderSurface data.
2118
2119         A few things still need to be done after this patch to complete the separation
2120         of the update and draw step, but they can happen in later patches:
2121         *) The root layer and root layer scrollbars contents should be
2122         uploaded to textures at draw time, not update time.
2123         *) The RenderSurface tree should be updated at draw time, not update
2124         time.
2125
2126         Covered by the compositing/ tests.
2127
2128         * platform/graphics/chromium/LayerRendererChromium.cpp:
2129         (WebCore::LayerRendererChromium::LayerRendererChromium):
2130         (WebCore::LayerRendererChromium::updateRootLayerContents):
2131         (WebCore::LayerRendererChromium::updateRootLayerScrollbars):
2132         (WebCore::LayerRendererChromium::drawRootLayer):
2133         (WebCore::LayerRendererChromium::updateAndDrawLayers):
2134         (WebCore::LayerRendererChromium::updateLayers):
2135         (WebCore::LayerRendererChromium::drawLayers):
2136         (WebCore::LayerRendererChromium::getFramebufferPixels):
2137         (WebCore::LayerRendererChromium::updatePropertiesAndRenderSurfaces):
2138         (WebCore::LayerRendererChromium::updateContentsRecursive):
2139         (WebCore::LayerRendererChromium::drawLayer):
2140         * platform/graphics/chromium/LayerRendererChromium.h:
2141         (WebCore::LayerRendererChromium::visibleRectSize):
2142         * platform/graphics/chromium/RenderSurfaceChromium.cpp:
2143         (WebCore::RenderSurfaceChromium::drawSurface):
2144         * platform/graphics/chromium/cc/CCLayerImpl.cpp:
2145         * platform/graphics/chromium/cc/CCLayerImpl.h:
2146
2147 2011-03-07  Adam Barth  <abarth@webkit.org>
2148
2149         Reviewed by Eric Seidel.
2150
2151         Sort WebCore.gypi
2152         https://bugs.webkit.org/show_bug.cgi?id=55887
2153
2154         These files should be in order.  This is preparation for adding in the
2155         missing files.
2156
2157         * WebCore.gypi:
2158
2159 2011-03-07  Csaba Osztrogon√°c  <ossy@webkit.org>
2160
2161         Unreviewed buildfix after r80478.
2162
2163         * dom/Document.cpp: Add suggested parentheses to make GCC happy.
2164         (WebCore::Document::didReceiveTask):
2165
2166 2011-03-07  Yong Li  <yoli@rim.com>
2167
2168         Reviewed by Darin Adler.
2169
2170         Defer ScriptExecutionContext::Task's in Document when page loading is deferred.
2171         Schedule them with timer when page loading is resumed. The tasks will be performed
2172         in the original order. This fixes the problem that database callbacks could be missed
2173         when page loading was deferred.
2174         https://bugs.webkit.org/show_bug.cgi?id=49401
2175
2176         Manual test added: manual-tests/database-callback-deferred.html.
2177
2178         * dom/Document.cpp:
2179         (WebCore::Document::Document):
2180         (WebCore::Document::~Document):
2181         (WebCore::Document::didReceiveTask):
2182         (WebCore::Document::postTask):
2183         (WebCore::Document::pendingTasksTimerFired):
2184         (WebCore::Document::willDeferLoading):
2185         (WebCore::Document::didResumeLoading):
2186         * dom/Document.h:
2187         * manual-tests/database-callback-deferred.html: Added.
2188         * page/PageGroupLoadDeferrer.cpp:
2189         (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
2190         (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer):
2191
2192 2011-03-07  Antti Koivisto  <antti@apple.com>
2193
2194         Reviewed by Sam Weinig.
2195
2196         Use HashMaps for caching primitive values
2197         https://bugs.webkit.org/show_bug.cgi?id=55873
2198         
2199         Most documents use only small subset of cacheable primitive values. By replacing
2200         fixed size cache arrays with HashMaps we can reduce the constant memory usage while also
2201         expanding the range of cacheable values.
2202
2203         * css/CSSPrimitiveValueCache.cpp:
2204         (WebCore::CSSPrimitiveValueCache::CSSPrimitiveValueCache):
2205         (WebCore::CSSPrimitiveValueCache::createIdentifierValue):
2206         (WebCore::CSSPrimitiveValueCache::createColorValue):
2207         (WebCore::CSSPrimitiveValueCache::createValue):
2208         * css/CSSPrimitiveValueCache.h:
2209
2210 2011-03-07  Steve Block  <steveblock@google.com>
2211
2212         Reviewed by Jeremy Orlow.
2213
2214         Split JNIBridgeJSC.cpp/h into JavaArrayJSC.cpp/h and JavaFieldJSC.cpp/h
2215         https://bugs.webkit.org/show_bug.cgi?id=55881
2216
2217         No new tests, refactoring only.
2218
2219         * Android.jscbindings.mk:
2220         * GNUmakefile.am:
2221         * WebCore.xcodeproj/project.pbxproj:
2222         * bridge/jni/jsc/JNIBridgeJSC.cpp: Removed.
2223         * bridge/jni/jsc/JNIBridgeJSC.h: Removed.
2224         * bridge/jni/jsc/JNIUtilityPrivate.cpp:
2225         * bridge/jni/jsc/JavaClassJSC.cpp:
2226         * bridge/jni/jsc/JavaClassJSC.h:
2227         * bridge/jni/jsc/JavaInstanceJSC.cpp:
2228
2229 2011-03-07  Sam Weinig  <sam@webkit.org>
2230
2231         Reviewed by Anders Carlsson.
2232
2233         Replace WebKit2's decidePolicyForMIMEType with decidePolicyForResponse
2234         https://bugs.webkit.org/show_bug.cgi?id=55827
2235
2236         * loader/EmptyClients.h:
2237         (WebCore::EmptyFrameLoaderClient::dispatchDecidePolicyForResponse):
2238         * loader/FrameLoaderClient.h:
2239         * loader/MainResourceLoader.cpp:
2240         (WebCore::MainResourceLoader::didReceiveResponse):
2241         * loader/PolicyChecker.cpp:
2242         (WebCore::PolicyChecker::checkContentPolicy):
2243         * loader/PolicyChecker.h:
2244         Rename FrameLoaderClient::dispatchDecidePolicyForMIMEType to dispatchDecidePolicyForResponse
2245         and pass the entire response, instead of just the MIMEType.
2246
2247 2011-03-07  Eric Carlson  <eric.carlson@apple.com>
2248
2249         Reviewed by Darin Adler.
2250
2251         Add API to enumerate/delete files downloaded for <audio> and <video>
2252         https://bugs.webkit.org/show_bug.cgi?id=55267
2253         <rdar://problem/9049280>
2254
2255         No new tests, this is just more plumbing.
2256
2257         * html/HTMLMediaElement.cpp:
2258         (WebCore::HTMLMediaElement::getSitesInMediaCache): Make static, call MediaPlayer static method.
2259         (WebCore::HTMLMediaElement::clearMediaCache): Ditto.
2260         (WebCore::HTMLMediaElement::clearMediaCacheForSite): Ditto.
2261         * html/HTMLMediaElement.h:
2262
2263         * platform/graphics/MediaPlayer.cpp:
2264         (WebCore::MediaPlayerFactory::MediaPlayerFactory): Add new media engine factory functions.
2265         (WebCore::addMediaEngine): Ditto.
2266         (WebCore::MediaPlayer::getSitesInMediaCache): Call static method on all installed media engines.
2267         (WebCore::MediaPlayer::clearMediaCache): Ditto.
2268         (WebCore::MediaPlayer::clearMediaCacheForSite): Ditto.
2269         * platform/graphics/MediaPlayer.h:
2270
2271         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
2272         (WebCore::MediaPlayerPrivateGStreamer::registerMediaEngine): Update for MediaEngineRegistrar change.
2273
2274         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
2275         (WebCore::MediaPlayerPrivateQTKit::registerMediaEngine): Ditto.
2276
2277         * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
2278         (WebCore::MediaPlayerPrivatePhonon::registerMediaEngine): Ditto.
2279
2280         * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
2281         (WebCore::MediaPlayerPrivateQt::registerMediaEngine): Ditto.
2282
2283         * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
2284         (WebCore::MediaPlayerPrivateQuickTimeVisualContext::registerMediaEngine): Ditto.
2285
2286         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
2287         (WebCore::MediaPlayerPrivate::registerMediaEngine): Ditto.
2288
2289 2011-03-07  Steve Block  <steveblock@google.com>
2290
2291         Reviewed by Jeremy Orlow.
2292
2293         Split JNIBridge.cpp/h into JavaString.h and JavaMethod.cpp/h
2294         https://bugs.webkit.org/show_bug.cgi?id=55774
2295
2296         No new tests, refactoring only.
2297
2298         * Android.jscbindings.mk:
2299         * Android.v8bindings.mk:
2300         * GNUmakefile.am:
2301         * WebCore.gypi:
2302         * WebCore.xcodeproj/project.pbxproj:
2303         * bridge/jni/JavaMethod.cpp:
2304         (JavaMethod::JavaMethod):
2305         (JavaMethod::~JavaMethod):
2306         (appendClassName):
2307         (JavaMethod::signature):
2308         (JavaMethod::JNIReturnType):
2309         (JavaMethod::methodID):
2310         * bridge/jni/JavaMethod.h:
2311         (JSC::Bindings::JavaMethod::name):
2312         (JSC::Bindings::JavaMethod::returnType):
2313         (JSC::Bindings::JavaMethod::parameterAt):
2314         (JSC::Bindings::JavaMethod::numParameters):
2315         (JSC::Bindings::JavaMethod::isStatic):
2316         * bridge/jni/JavaString.h:
2317         (JSC::Bindings::JavaString::JavaString):
2318         (JSC::Bindings::JavaString::utf8):
2319         (JSC::Bindings::JavaString::length):
2320         (JSC::Bindings::JavaString::impl):
2321         * bridge/jni/jni_jsobject.mm:
2322         * bridge/jni/jsc/JNIBridgeJSC.h:
2323         * bridge/jni/v8/JNIBridgeV8.h:
2324         * bridge/jni/v8/JavaClassV8.cpp:
2325         * bridge/jni/v8/JavaClassV8.h:
2326         * bridge/jni/v8/JavaInstanceV8.cpp:
2327
2328 2011-03-07  Jeremy Orlow  <jorlow@chromium.org>
2329
2330         Reviewed by Steve Block.
2331
2332         Add source to IDBCursor, objectStore to IDBIndex, and remove storeName
2333         https://bugs.webkit.org/show_bug.cgi?id=55812
2334
2335         This brings us in line with what's in the spec:
2336         http://dvcs.w3.org/hg/IndexedDB/raw-file/tip/Overview.html
2337
2338         * storage/IDBCursor.cpp:
2339         (WebCore::IDBCursor::create):
2340         (WebCore::IDBCursor::IDBCursor):
2341         (WebCore::IDBCursor::source):
2342         * storage/IDBCursor.h:
2343         * storage/IDBCursor.idl:
2344         * storage/IDBCursorWithValue.cpp:
2345         (WebCore::IDBCursorWithValue::create):
2346         (WebCore::IDBCursorWithValue::IDBCursorWithValue):
2347         * storage/IDBCursorWithValue.h:
2348         * storage/IDBIndex.cpp:
2349         (WebCore::IDBIndex::IDBIndex):
2350         * storage/IDBIndex.h:
2351         (WebCore::IDBIndex::create):
2352         (WebCore::IDBIndex::objectStore):
2353         * storage/IDBIndex.idl:
2354         * storage/IDBObjectStore.cpp:
2355         (WebCore::IDBObjectStore::createIndex):
2356         (WebCore::IDBObjectStore::index):
2357         * storage/IDBRequest.cpp:
2358         (WebCore::IDBRequest::onSuccess):
2359
2360 2011-03-07  Chris Fleizach  <cfleizach@apple.com>
2361
2362         Reviewed by Beth Dakin.
2363
2364         AX: kAXCellForColumnAndRowParameterizedAttribute doesn't work ARIA grids with colspans
2365         https://bugs.webkit.org/show_bug.cgi?id=55735
2366
2367         The ARIA grid implementation needed to verify the row/column range of a cell instead of 
2368         assuming a 1-1 mapping between children and row/column.
2369
2370         Test: platform/mac/accessibility/aria-table-with-colspan-cells.html
2371
2372         * accessibility/AccessibilityARIAGrid.cpp:
2373         (WebCore::AccessibilityARIAGrid::cellForColumnAndRow):
2374
2375 2011-03-07  Andrei Popescu  <andreip@google.com>
2376
2377         Reviewed by Steve Block.
2378
2379         IDBRequest::onSuccess(IDBObjectStore*) should be removed as it is unused.
2380         IDBObjectStore objects used to be created asynchronously, so we needed
2381         this method to be invoked, with the new object store as the parameter,
2382         whenever the creation succeeded. The spec has changed so that IDBObjectStore
2383         objects are created synchronously, so this method is no longer needed.
2384         https://bugs.webkit.org/show_bug.cgi?id=55777
2385
2386         No new tests, just refactoring.
2387
2388         * storage/IDBCallbacks.h:
2389         * storage/IDBRequest.cpp:
2390         * storage/IDBRequest.h:
2391
2392 2011-03-04  Steve Block  <steveblock@google.com>
2393
2394         Reviewed by Jeremy Orlow.
2395
2396         JavaParameter should be removed
2397         https://bugs.webkit.org/show_bug.cgi?id=55772
2398
2399         No new tests, refactoring only.
2400
2401         * bridge/jni/JNIBridge.cpp:
2402         (JavaMethod::JavaMethod):
2403         (JavaMethod::~JavaMethod):
2404         (JavaMethod::signature):
2405         * bridge/jni/JNIBridge.h:
2406         (JSC::Bindings::JavaMethod::parameterAt):
2407         (JSC::Bindings::JavaMethod::numParameters):
2408         * bridge/jni/JNIUtility.h:
2409         * bridge/jni/jsc/JavaInstanceJSC.cpp:
2410         (JavaInstance::invokeMethod):
2411         * bridge/jni/v8/JNIUtilityPrivate.cpp:
2412         (JSC::Bindings::convertNPVariantToJValue):
2413         * bridge/jni/v8/JNIUtilityPrivate.h:
2414         * bridge/jni/v8/JavaInstanceV8.cpp:
2415         (JavaInstance::invokeMethod):
2416
2417 2011-03-07  Antti Koivisto  <antti@apple.com>
2418
2419         Reviewed by Oliver Hunt.
2420
2421         REGRESSION (r79574): fast/dom/global-constructors.html failing on Windows 7 Release (Tests) bots 
2422         https://bugs.webkit.org/show_bug.cgi?id=55166
2423         <rdar://problem/9050430>
2424         
2425         Make CSS primitive value cache per-document.
2426         
2427         Test: http/tests/security/cross-origin-css-primitive.html
2428
2429         * Android.mk:
2430         * CMakeLists.txt:
2431         * GNUmakefile.am:
2432         * WebCore.gypi:
2433         * WebCore.pro:
2434         * WebCore.vcproj/WebCore.vcproj:
2435         * WebCore.xcodeproj/project.pbxproj:
2436         * css/CSSComputedStyleDeclaration.cpp:
2437         (WebCore::valueForNinePieceImage):
2438         (WebCore::zoomAdjustedPixelValue):
2439         (WebCore::zoomAdjustedNumberValue):
2440         (WebCore::zoomAdjustedPixelValueForLength):
2441         (WebCore::valueForReflection):
2442         (WebCore::getPositionOffsetValue):
2443         (WebCore::CSSComputedStyleDeclaration::currentColorOrValidColor):
2444         (WebCore::getBorderRadiusCornerValue):
2445         (WebCore::computedTransform):
2446         (WebCore::getDelayValue):
2447         (WebCore::getDurationValue):
2448         (WebCore::CSSComputedStyleDeclaration::getFontSizeCSSValuePreferringKeyword):
2449         (WebCore::CSSComputedStyleDeclaration::valueForShadow):
2450         (WebCore::valueForFamily):
2451         (WebCore::renderTextDecorationFlagsToCSSValue):
2452         (WebCore::fillRepeatToCSSValue):
2453         (WebCore::fillSizeToCSSValue):
2454         (WebCore::contentToCSSValue):
2455         (WebCore::counterToCSSValue):
2456         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
2457         * css/CSSParser.cpp:
2458         (WebCore::CSSParser::parseSheet):
2459         (WebCore::CSSParser::parseRule):
2460         (WebCore::CSSParser::parseKeyframeRule):
2461         (WebCore::CSSParser::parseValue):
2462         (WebCore::CSSParser::parseColor):
2463         (WebCore::CSSParser::parseSelector):
2464         (WebCore::CSSParser::parseDeclaration):
2465         (WebCore::CSSParser::setStyleSheet):
2466         (WebCore::CSSParser::parseWCSSInputProperty):
2467         (WebCore::parseBackgroundClip):
2468         (WebCore::CSSParser::parseFillShorthand):
2469         (WebCore::CSSParser::parsePage):
2470         (WebCore::CSSParser::parseSizeParameter):
2471         (WebCore::CSSParser::parseContent):
2472         (WebCore::CSSParser::parseAttr):
2473         (WebCore::CSSParser::parseBackgroundColor):
2474         (WebCore::CSSParser::parseFillPositionXY):
2475         (WebCore::CSSParser::parseFillPosition):
2476         (WebCore::CSSParser::parseFillRepeat):
2477         (WebCore::CSSParser::parseFillSize):
2478         (WebCore::CSSParser::parseFillProperty):
2479         (WebCore::CSSParser::parseAnimationDelay):
2480         (WebCore::CSSParser::parseAnimationDirection):
2481         (WebCore::CSSParser::parseAnimationDuration):
2482         (WebCore::CSSParser::parseAnimationFillMode):
2483         (WebCore::CSSParser::parseAnimationIterationCount):
2484         (WebCore::CSSParser::parseAnimationName):
2485         (WebCore::CSSParser::parseAnimationPlayState):
2486         (WebCore::CSSParser::parseAnimationProperty):
2487         (WebCore::CSSParser::parseTransformOriginShorthand):
2488         (WebCore::CSSParser::parseAnimationTimingFunction):
2489         (WebCore::CSSParser::parseDashboardRegions):
2490         (WebCore::CSSParser::parseCounterContent):
2491         (WebCore::CSSParser::parseShape):
2492         (WebCore::CSSParser::parseFont):
2493         (WebCore::CSSParser::parseFontFamily):
2494         (WebCore::CSSParser::parseFontStyle):
2495         (WebCore::CSSParser::parseFontVariant):
2496         (WebCore::CSSParser::parseFontWeight):
2497         (WebCore::ShadowParseContext::ShadowParseContext):
2498         (WebCore::ShadowParseContext::commitLength):
2499         (WebCore::ShadowParseContext::commitStyle):
2500         (WebCore::CSSParser::parseShadow):
2501         (WebCore::CSSParser::parseReflect):
2502         (WebCore::BorderImageParseContext::BorderImageParseContext):
2503         (WebCore::BorderImageParseContext::commitNumber):
2504         (WebCore::BorderImageParseContext::commitBorderImage):
2505         (WebCore::CSSParser::parseBorderImage):
2506         (WebCore::CSSParser::parseBorderRadius):
2507         (WebCore::CSSParser::parseCounter):
2508         (WebCore::parseDeprecatedGradientPoint):
2509         (WebCore::parseDeprecatedGradientColorStop):
2510         (WebCore::CSSParser::parseDeprecatedGradient):
2511         (WebCore::valueFromSideKeyword):
2512         (WebCore::parseGradientColorOrKeyword):
2513         (WebCore::CSSParser::parseLinearGradient):
2514         (WebCore::CSSParser::parseRadialGradient):
2515         (WebCore::CSSParser::parseGradientColorStops):
2516         (WebCore::CSSParser::parseTransform):
2517         (WebCore::CSSParser::parseTransformOrigin):
2518         (WebCore::CSSParser::parseTextEmphasisStyle):
2519         * css/CSSParser.h:
2520         (WebCore::CSSParser::primitiveValueCache):
2521         * css/CSSPrimitiveValue.cpp:
2522         * css/CSSPrimitiveValue.h:
2523         (WebCore::CSSPrimitiveValue::createIdentifier):
2524         (WebCore::CSSPrimitiveValue::createColor):
2525         (WebCore::CSSPrimitiveValue::create):
2526         * css/CSSPrimitiveValueCache.cpp: Added.
2527         (WebCore::CSSPrimitiveValueCache::CSSPrimitiveValueCache):
2528         (WebCore::CSSPrimitiveValueCache::~CSSPrimitiveValueCache):
2529         (WebCore::CSSPrimitiveValueCache::createIdentifierValue):
2530         (WebCore::CSSPrimitiveValueCache::createColorValue):
2531         (WebCore::CSSPrimitiveValueCache::createValue):
2532         * css/CSSPrimitiveValueCache.h: Added.
2533         (WebCore::CSSPrimitiveValueCache::create):
2534         (WebCore::CSSPrimitiveValueCache::createValue):
2535         * dom/Document.cpp:
2536         (WebCore::Document::cssPrimitiveValueCache):
2537         * dom/Document.h:
2538
2539 2011-03-06  Adam Barth  <abarth@webkit.org>
2540
2541         Reviewed by Eric Seidel.
2542
2543         Filter sources in WebCore GYP build for Mac
2544         https://bugs.webkit.org/show_bug.cgi?id=55857
2545
2546         This patch removes a large number of files that do not build as part of
2547         the Mac build.  I'm not fully sold on this method of
2548         including/excluding files, but it's the "gyp way" so we should probably
2549         try it first.
2550
2551         This patch also sets xcode_list_excluded_files to 0, which removes the
2552         excluded files from the Xcode project file, which is necessary in order
2553         to prevent the header map feature from including the wrong header file.
2554
2555         * gyp/WebCore.gyp:
2556
2557 2011-03-07  Ryuan Choi  <ryuan.choi@samsung.com>
2558
2559         Unreviewed EFL build fix.
2560
2561         [EFL] Build break on Debug build.
2562         https://bugs.webkit.org/show_bug.cgi?id=55858
2563
2564         * platform/efl/RenderThemeEfl.cpp:
2565         (WebCore::RenderThemeEfl::themePartCacheEntrySurfaceCreate):
2566
2567 2011-03-06  Adam Barth  <abarth@webkit.org>
2568
2569         Reviewed by Eric Seidel.
2570
2571         Add webcore_derived_source_files to WebCore.gypi
2572         https://bugs.webkit.org/show_bug.cgi?id=55856
2573
2574         This is the list of files generated by the Mac port.  It's possible
2575         other ports generate a different list of files.
2576
2577         * WebCore.gypi:
2578         * gyp/WebCore.gyp:
2579
2580 2011-03-06  Naoki Takano  <takano.naoki@gmail.com>
2581
2582         Reviewed by Kent Tamura.
2583
2584         Input type=number spin buttons remain invisible but functional after div changed from hidden to visible.
2585         https://bugs.webkit.org/show_bug.cgi?id=55839
2586         http://crbug.com/73866
2587         http://crbug.com/62527
2588
2589         We also need style change for m_innerSpinButton not only for m_outerSpinBuggon when styleDidChange() is called.
2590
2591         Test: fast/forms/input-appearance-spinbutton-visibility.html
2592
2593         * rendering/RenderTextControlSingleLine.cpp:
2594         (WebCore::RenderTextControlSingleLine::styleDidChange):
2595
2596 2011-03-06  Naoki Takano  <takano.naoki@gmail.com>
2597
2598         Reviewed by Kent Tamura.
2599
2600         [Chromium] Autocomplete suggestion extends out of window (and onto second monitor)
2601         https://bugs.webkit.org/show_bug.cgi?id=54795
2602
2603         Implement width clip logic according to browser screen width and popup window width. This fix is enough for Win and Mac, but there is a problem in Linux. Because WebScreenInfoFactory::screenInfo() can get only merged screen size, not the screen size where the browser exists.
2604
2605         Test: manual-tests/popup-width-restriction-within-screen.html
2606
2607         * manual-tests/popup-width-restriction-within-screen.html: Added.
2608         * platform/chromium/PopupMenuChromium.cpp:
2609         (WebCore::PopupContainer::layoutAndCalculateWidgetRect): Implement the width clip logic according to screen width.
2610
2611 2011-03-06  Yuta Kitamura  <yutak@chromium.org>
2612
2613         Reviewed by Kent Tamura.
2614
2615         Add SHA-1 for new WebSocket protocol
2616         https://bugs.webkit.org/show_bug.cgi?id=55039
2617
2618         * ForwardingHeaders/wtf/SHA1.h: Added.
2619
2620 2011-03-06  Eric Carlson  <eric.carlson@apple.com>
2621
2622         Reviewed by Antti Koivisto.
2623
2624         QuickTime based media engines should respect private browsing mode
2625         https://bugs.webkit.org/show_bug.cgi?id=55848
2626
2627         No new tests, it is only possible to test this by manually deleting and monitoring the
2628         the Quicktime caches.
2629
2630         * html/HTMLMediaElement.cpp:
2631         (WebCore::HTMLMediaElement::privateBrowsingStateDidChange): Add logging.
2632
2633         * platform/graphics/MediaPlayer.cpp:
2634         (WebCore::MediaPlayer::MediaPlayer): Initialize m_privateBrowsing.
2635         (WebCore::MediaPlayer::loadWithNextMediaEngine): Set privacy mode on new media engine.
2636         (WebCore::MediaPlayer::setPrivateBrowsingMode): Stash setting in m_privateBrowsing.
2637         * platform/graphics/MediaPlayer.h:
2638         * platform/graphics/MediaPlayerPrivate.h:
2639         (WebCore::MediaPlayerPrivateInterface::setPrivateBrowsingMode):
2640
2641         * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
2642         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
2643         (WebCore::MediaPlayerPrivateQTKit::MediaPlayerPrivateQTKit): Initialize m_privateBrowsing.
2644         (WebCore::MediaPlayerPrivateQTKit::createQTMovie): Pass private browsing attribute when
2645             creating new movie.
2646         (WebCore::MediaPlayerPrivateQTKit::setPrivateBrowsingMode): New, store privacy setting in
2647             m_privateBrowsing and set movie attribute.
2648
2649         * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
2650         (WebCore::MediaPlayerPrivateQuickTimeVisualContext::MediaPlayerPrivateQuickTimeVisualContext):
2651             Initialize m_privateBrowsing.
2652         (WebCore::MediaPlayerPrivateQuickTimeVisualContext::setPrivateBrowsingMode): New, store 
2653             privacy setting in m_privateBrowsing and call QTMovie.
2654         * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.h:
2655
2656         * platform/graphics/win/QTMovie.cpp:
2657         (QTMoviePrivate::QTMoviePrivate): Initialize m_privateBrowsing.
2658         (QTMovie::load):Pass private browsing property when creating new movie.
2659         (QTMovie::setPrivateBrowsingMode):  New, store privacy setting in m_privateBrowsing and 
2660             set movie property.
2661         * platform/graphics/win/QTMovie.h:
2662
2663 2011-03-06  Daniel Bates  <dbates@rim.com>
2664
2665         Reviewed by Darin Adler.
2666
2667         style.borderSpacing always returns empty string
2668         https://bugs.webkit.org/show_bug.cgi?id=54816
2669
2670         Teach CSSMutableStyleDeclaration::getPropertyValue() how to reconstitute
2671         the value for border-spacing from the value of the WebKit internal CSS
2672         property -webkit-border-horizontal-spacing and -webkit-border-vertical-spacing.
2673
2674         The CSS property border-spacing describes the horizontal and vertical border
2675         spacing for an HTML Table element. Notice, WebKit internally represents the value
2676         of this property as two properties: -webkit-border-horizontal-spacing and
2677         -webkit-border-vertical-spacing, for the horizontal and vertical border spacing,
2678         respectively. And WebKit doesn't know to reconstitute these internal properties.
2679         Therefore style.borderSpacing always returns the empty string.
2680
2681         Test: fast/css/table-border-spacing.html
2682
2683         * css/CSSMutableStyleDeclaration.cpp:
2684         (WebCore::CSSMutableStyleDeclaration::getPropertyValue):
2685         (WebCore::CSSMutableStyleDeclaration::borderSpacingValue): Added.
2686         * css/CSSMutableStyleDeclaration.h:
2687
2688 2011-03-06  Dan Bernstein  <mitz@apple.com>
2689
2690         Reviewed by Oliver Hunt.
2691
2692         <rdar://problem/9093327> Implement -hyphenate-limit-{before,after}
2693         https://bugs.webkit.org/show_bug.cgi?id=55850
2694
2695         Tests: fast/css/parsing-hyphenate-limit.html
2696                fast/text/hyphenate-limit-before-after.html
2697
2698         * css/CSSComputedStyleDeclaration.cpp:
2699         (WebCore::computedProperties) Updated this array with the new properties and some old properties
2700         that it was missing.
2701         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Added
2702         CSSPropertyWebkitHyphenateLimit{Before,After}.
2703
2704         * css/CSSParser.cpp:
2705         (WebCore::CSSParser::parseValue): Parse -webkit-hyphenate-limit-{before,after}, allowing
2706         'auto' and non-negative integers.
2707
2708         * css/CSSPropertyNames.in: Added -webkit-hyphenate-limit-{before,after}.
2709
2710         * css/CSSStyleSelector.cpp:
2711         (WebCore::CSSStyleSelector::applyProperty): Handle CSSPropertyWebkitHyphenateLimit{Before,After}.
2712
2713         * rendering/RenderBlockLineLayout.cpp:
2714         (WebCore::tryHyphenating): Added minimum prefix and suffix length parameters and checks to only
2715         allow hyphenation if the prefix and the suffix are sufficiently long.
2716         (WebCore::RenderBlock::findNextLineBreak): Pass the limits to tryHyphenating().
2717
2718         * rendering/style/RenderStyle.cpp:
2719         (WebCore::RenderStyle::diff): A difference in hyphenation limits is a layout difference.
2720
2721         * rendering/style/RenderStyle.h:
2722         (WebCore::InheritedFlags::hyphenationLimitBefore): Added.
2723         (WebCore::InheritedFlags::hyphenationLimitAfter): Added.
2724         (WebCore::InheritedFlags::setHyphenationLimitBefore): Added.
2725         (WebCore::InheritedFlags::setHyphenationLimitAfter): Added.
2726         (WebCore::InheritedFlags::initialHyphenationLimitBefore): Added. Returns -1, which is the
2727         representation of 'auto'.
2728         (WebCore::InheritedFlags::initialHyphenationLimitAfter): Ditto.
2729
2730         * rendering/style/StyleRareInheritedData.cpp:
2731         (WebCore::StyleRareInheritedData::StyleRareInheritedData): Initialize hyphenation limits.
2732         (WebCore::StyleRareInheritedData::operator==): Compare hyphenation limits.
2733         * rendering/style/StyleRareInheritedData.h:
2734
2735 2011-03-06  Jessie Berlin  <jberlin@apple.com>
2736
2737         Reviewed by Sam Weinig.
2738
2739         WebKit2: Use CFNetwork Sessions API.
2740         https://bugs.webkit.org/show_bug.cgi?id=55435.
2741
2742         When Private Browsing is enabled, use cookies from a in-memory cookie storage based on the
2743         Private Browsing Storage Session.
2744
2745         * WebCore.exp.in:
2746         Add the new WKSI functions.
2747         * platform/mac/WebCoreSystemInterface.h:
2748         Ditto.
2749         * platform/mac/WebCoreSystemInterface.mm:
2750         Ditto.
2751
2752         * platform/mac/CookieJar.mm:
2753         (WebCore::cookies):
2754         If USE(CFURLSTORAGESESSIONS) and there is a Private Browsing Cookie Storage, call into WKSI.
2755         Otherwise, behave the same as before.
2756         (WebCore::cookieRequestHeaderFieldValue):
2757         Ditto.
2758         (WebCore::setCookies):
2759         Ditto.
2760         (WebCore::cookiesEnabled):
2761         Ditto
2762         (WebCore::getRawCookies):
2763         Ditto.
2764         (WebCore::deleteCookie):
2765         Ditto.
2766
2767         * platform/network/CookieStorage.h:
2768         * platform/network/cf/CookieStorageCFNet.cpp:
2769         (WebCore::privateBrowsingCookieStorage):
2770         Keep track of the Private Browsing Cookie Storage in a locally defined static inside a
2771         function instead of at the global scope.
2772         (WebCore::currentCookieStorage):
2773         Use privateBrowsingCookieStorage.
2774         (WebCore::setCurrentCookieStorage):
2775         Ditto.
2776         (WebCore::setCookieStoragePrivateBrowsingEnabled):
2777         If USE(CFURLSTORAGESESSIONS), send the Private Browsing Storage Session to
2778         wkCreatePrivateInMemoryHTTPCookieStorage.
2779         * platform/network/mac/CookieStorageMac.mm:
2780         (WebCore::privateBrowsingCookieStorage):
2781         Keep track of the Private Browsing Cookie Storage.
2782         (WebCore::setCookieStoragePrivateBrowsingEnabled):
2783         If USE(CFURLSTORAGESESSIONS), then set or clear privateBrowsingCookieStorage().
2784         Added a FIXME to observe changes to the Private Browsing Cookie Storage when it is defined.
2785
2786         * platform/network/mac/ResourceHandleMac.mm:
2787         (WebCore::shouldRelaxThirdPartyCookiePolicy):
2788         Refactor the logic to determine whether or not to relax the third party cookie policy here.
2789         If USE(CFURLSTORAGESESSIONS), then get the information from the privateBrowsingCookieStorage.
2790         (WebCore::ResourceHandle::createNSURLConnection):
2791         Use shouldRelaxThirdPartyCookiePolicy.
2792         (WebCore::ResourceHandle::loadResourceSynchronously):
2793         Ditto.
2794
2795 2011-03-05  Sheriff Bot  <webkit.review.bot@gmail.com>
2796
2797         Unreviewed, rolling out r80428.
2798         http://trac.webkit.org/changeset/80428
2799         https://bugs.webkit.org/show_bug.cgi?id=55833
2800
2801         Broke SnowLeopard (Requested by xan_ on #webkit).
2802
2803         * plugins/gtk/PluginViewGtk.cpp:
2804         (WebCore::PluginView::handlePostReadFile):
2805
2806 2011-03-01  Martin Robinson  <mrobinson@igalia.com>
2807
2808         Reviewed by Xan Lopez.
2809
2810         [GTK] Windowless plugins override the view cursor
2811         https://bugs.webkit.org/show_bug.cgi?id=55531
2812
2813         manual test: manual-tests/plugins/windowless.html
2814
2815         * platform/gtk/WidgetGtk.cpp:
2816         (WebCore::Widget::setCursor): Call into the ChromeClient implementation now.
2817         * plugins/gtk/PluginViewGtk.cpp:
2818         (WebCore::PluginView::initXEvent): Instead of setting the window for windowless
2819         plugin events, set the window value to none. This method is also used to send
2820         focus in / focus out events to windowed plugins, but this is not one of the plugin
2821         types where the window parameter matters. This matches what Mozilla does. Also
2822         pass in the display of the widget itself, not the default display.
2823         (WebCore::PluginView::handleMouseEvent): When the cursor leaves the plugin area,
2824         reset the cursor.
2825         (WebCore::PluginView::platformGetValue): Clean up this section slightly. Give the
2826         widget the top-level window explicitly. This matches Mozilla.
2827
2828 2011-03-05  Martin Robinson  <mrobinson@igalia.com>
2829
2830         Reviewed by Xan Lopez.
2831
2832         [GTK] http/tests/plugins/post-url-file.html fails on GTK+
2833         https://bugs.webkit.org/show_bug.cgi?id=55826
2834
2835         Correct the implementation of handlePostReadFile which uses GIO APIs and
2836         actually resizes the buffer to fit the entire size of the file data. This
2837         was likely leading to memory corruption until now.
2838
2839         * plugins/gtk/PluginViewGtk.cpp:
2840         (WebCore::PluginView::handlePostReadFile): Fix this method.
2841
2842 2011-03-05  Mikhail Naganov  <mnaganov@chromium.org>
2843
2844         Reviewed by Pavel Feldman.
2845
2846         Web Inspector: [Chromium] Allow dynamic enabling of detailed heap profiles.
2847         https://bugs.webkit.org/show_bug.cgi?id=55824
2848
2849         Detailed heap profiles can be now enabled by typing "leakz" in Profiles tab.
2850
2851         * inspector/front-end/DetailedHeapshotView.js:
2852         (WebInspector.DetailedHeapshotView.prototype.isDetailedSnapshot):
2853         * inspector/front-end/ProfilesPanel.js:
2854         (WebInspector.ProfilesPanel.prototype._finishHeapSnapshot.doParse):
2855         (WebInspector.ProfilesPanel.prototype._finishHeapSnapshot):
2856         (WebInspector.ProfilesPanel.prototype._reportHeapSnapshotProgress):
2857         (WebInspector.ProfilesPanel.prototype.handleShortcut):
2858         (WebInspector.ProfilesPanel.prototype._displayDetailedHeapProfilesEnabledHint.hideHint):
2859         (WebInspector.ProfilesPanel.prototype._displayDetailedHeapProfilesEnabledHint):
2860         (WebInspector.ProfilesPanel.prototype._enableDetailedHeapProfiles):
2861         (WebInspector.ProfilesPanel.prototype._recognizeKeyboardCombo):
2862
2863 2011-03-05  Qi Zhang  <qi.2.zhang@nokia.com>
2864
2865         Reviewed by Laszlo Gombos.
2866
2867         [Qt] Mobile Devices should include Model and Firmware Version in Webkit Generated User Agent String
2868         https://bugs.webkit.org/show_bug.cgi?id=48636
2869
2870         Add model infomation into user agent string when qtmobility is available, but only for symbian, Maemo and MeeGo.
2871
2872         * WebCore.pri:
2873         * features.pri:
2874
2875 2011-03-05  Pavel Feldman  <pfeldman@chromium.org>
2876
2877         Not reviewed: adding null check to prevent inspector tests from failing.
2878
2879         * inspector/front-end/TextViewer.js:
2880         (WebInspector.TextEditorGutterChunk.prototype.get offsetTop):
2881         (WebInspector.TextEditorMainChunk.prototype.get offsetTop):
2882
2883 2011-03-05  Pavel Feldman  <pfeldman@chromium.org>
2884
2885         Not reviewed: chromium rebaseline, flaky test fix.
2886
2887         * inspector/front-end/BreakpointManager.js:
2888         (WebInspector.DOMBreakpointView.prototype.populateStatusMessageElement.decorateNode):
2889         (WebInspector.DOMBreakpointView.prototype.populateStatusMessageElement):
2890         (WebInspector.DOMBreakpointView.prototype._format.formatters.s):
2891         (WebInspector.DOMBreakpointView.prototype._format.append):
2892         (WebInspector.DOMBreakpointView.prototype._format):
2893
2894 2011-03-04  Pavel Podivilov  <podivilov@chromium.org>
2895
2896         Reviewed by Yury Semikhatsky.
2897
2898         Web Inspector: [chromium] pause when script is running is broken.
2899         https://bugs.webkit.org/show_bug.cgi?id=55762
2900
2901         * inspector/CodeGeneratorInspector.pm:
2902
2903 2011-03-05  Adam Barth  <abarth@webkit.org>
2904
2905         Reviewed by Dimitri Glazkov.
2906
2907         Add Derived Sources to WebCore GYP build
2908         https://bugs.webkit.org/show_bug.cgi?id=55813
2909
2910         Adding the derived source action to the GYP file required tweaking
2911         DerivedSources.make.  I'm not sure how DerivedSources.make worked
2912         before beause these paths were incorrectly based.
2913
2914         * DerivedSources.make:
2915         * gyp/generate-derived-sources.sh: Added.
2916         * gyp/WebCore.gyp:
2917
2918 2011-03-04  Pavel Feldman  <pfeldman@chromium.org>
2919
2920         Reviewed by Yury Semikhatsky.
2921
2922         Web Inspector: fix layout tests flakiness.
2923         https://bugs.webkit.org/show_bug.cgi?id=55816
2924
2925         - Order of issuing of evaluateForTestInFrontend was not guaranteed on the backend side (InspectorAgent side)
2926         - Order of dispatching using timeouts was guaranteed via queueing. Source of all kinds of pains on SnowLeopard Release (inspector.js)
2927
2928         * inspector/CodeGeneratorInspector.pm:
2929         * inspector/InspectorAgent.cpp:
2930         (WebCore::InspectorAgent::InspectorAgent):
2931         (WebCore::InspectorAgent::disconnectFrontend):
2932         (WebCore::InspectorAgent::populateScriptObjects):
2933         (WebCore::InspectorAgent::evaluateForTestInFrontend):
2934         (WebCore::InspectorAgent::issueEvaluateForTestCommands):
2935         * inspector/InspectorAgent.h:
2936         * inspector/front-end/TimelinePanel.js:
2937         (WebInspector.TimelinePanel.FormattedRecord):
2938         * inspector/front-end/inspector.js:
2939         (WebInspector.dispatch):
2940
2941 2011-03-05  Adam Barth  <abarth@webkit.org>
2942
2943         Reviewed by Dimitri Glazkov.
2944
2945         WebCore GYP build should generate fewer than 10,000 compile errors per file
2946         https://bugs.webkit.org/show_bug.cgi?id=55810
2947
2948         This patch adds some missing include paths.  We need to figure out how
2949         to handle separate include paths per port.  It's clear that
2950         ForwardingHeaders are only useful for Mac, but it's less clear how to
2951         handle the others.
2952
2953         * WebCore.gypi:
2954         * gyp/WebCore.gyp:
2955
2956 2011-03-05  Dan Bernstein  <mitz@apple.com>
2957
2958         Reviewed by Cameron Zwarich.
2959
2960         <rdar://problem/9082946> Make the Core Text code path in GlyphPage::fill() more robust
2961         https://bugs.webkit.org/show_bug.cgi?id=55817
2962
2963         * platform/graphics/mac/GlyphPageTreeNodeMac.cpp:
2964         (WebCore::GlyphPage::fill): When determining if a CTRun uses the primary font, compare against
2965         a CGFont obtained from Core Text for the primary font. This CGFont may be different from
2966         the CGFont stored in the FontPlatformData.
2967
2968 2011-03-05  Ilya Sherman  <isherman@chromium.org>
2969
2970         Reviewed by Darin Adler.
2971
2972         HTMLInputElement::setValue() should schedule change event when the element is focused.
2973         Refactored tracking of "changed since last change event" state from renderer to DOM.In service of https://code.google.com/p/chromium/issues
2974         In service of https://code.google.com/p/chromium/issues/detail?id=42716
2975         https://bugs.webkit.org/show_bug.cgi?id=53160
2976
2977         Test: fast/forms/onchange-change-type.html
2978         Test: fast/forms/onchange-setvalueforuser.html
2979
2980         * WebCore.exp.in:
2981         * dom/Document.cpp:
2982         (WebCore::Document::setFocusedNode):
2983         * dom/Element.h:
2984         (WebCore::Element::wasChangedSinceLastFormControlChangeEvent): Added.
2985         (WebCore::Element::setChangedSinceLastFormControlChangeEvent): Added.
2986         * html/HTMLFormControlElement.cpp:
2987         (WebCore::HTMLFormControlElement::HTMLFormControlElement):
2988         (WebCore::HTMLFormControlElement::wasChangedSinceLastFormControlChangeEvent): Added.
2989         (WebCore::HTMLFormControlElement::setChangedSinceLastFormControlChangeEvent): Added.
2990         (WebCore::HTMLFormControlElement::dispatchFormControlChangeEvent): Also clear the "changed since last change event" flag.
2991         (WebCore::HTMLFormControlElement::dispatchFormControlInputEvent): Also set the "changed since last change event" flag.
2992         * html/HTMLFormControlElement.h:
2993         * html/HTMLInputElement.cpp:
2994         (WebCore::HTMLInputElement::updateType): Also clear the "changed since last change event" flag.
2995         (WebCore::HTMLInputElement::setValue):
2996             For a focused text field, dispatch an input event, but delay the change event until the field loses focus.
2997         (WebCore::HTMLInputElement::defaultEventHandler):
2998         (WebCore::HTMLInputElement::stepUpFromRenderer):
2999         * html/shadow/TextControlInnerElements.cpp:
3000         (WebCore::SearchFieldCancelButtonElement::defaultEventHandler):
3001         * rendering/RenderTextControl.cpp:
3002         (WebCore::RenderTextControl::RenderTextControl):
3003         (WebCore::RenderTextControl::subtreeHasChanged):
3004         * rendering/RenderTextControl.h:
3005         * rendering/RenderTextControlMultiLine.cpp:
3006         (WebCore::RenderTextControlMultiLine::subtreeHasChanged):
3007         * rendering/RenderTextControlSingleLine.cpp:
3008         (WebCore::RenderTextControlSingleLine::subtreeHasChanged):
3009         * wml/WMLInputElement.cpp:
3010         (WebCore::WMLInputElement::WMLInputElement):
3011         (WebCore::WMLInputElement::defaultEventHandler):
3012         * wml/WMLInputElement.h:
3013         (WebCore::WMLInputElement::wasChangedSinceLastFormControlChangeEvent): Added.
3014         (WebCore::WMLInputElement::setChangedSinceLastFormControlChangeEvent): Added.
3015
3016 2011-03-04  Xianzhu Wang  <wangxianzhu@google.com>
3017
3018         Reviewed by Adam Barth.
3019
3020         Remove fake request loading of SVGImage to avoid MainResourceLoader
3021         leak. The frame->init() already ensures initialization of the
3022         document loader.
3023
3024         https://bugs.webkit.org/show_bug.cgi?id=55017
3025
3026         Test: fast/images/svg-image-leak-loader.html
3027
3028         * svg/graphics/SVGImage.cpp:
3029         (WebCore::SVGImage::dataChanged):
3030
3031 2011-03-04  Mike Reed  <reed@google.com>
3032
3033         Reviewed by Mihai Parparita.
3034
3035         [Chromium] fast/canvas/canvas-arc-360-winding.html fails on Linux and Windows
3036         https://bugs.webkit.org/show_bug.cgi?id=49477
3037
3038         * platform/graphics/skia/PathSkia.cpp:
3039         (WebCore::Path::addArc):
3040
3041 2011-03-04  Jia Pu  <jpu@apple.com>
3042
3043         Reviewed by Darin Adler.
3044
3045         On Mac, the bounding box sent to EditorClient::showCorrectionPanel() is incorrect when the correction occurs in an iframe.
3046         https://bugs.webkit.org/show_bug.cgi?id=55717
3047         <rdar://problem/9018127>
3048
3049         manual-test: manual-tests/platforms/mac/autocorrection/autocorrection-in-iframe.html
3050
3051         Previously, the bounding box passed into EditorClient::showCorrectionPanel() is in the frame's
3052         coordinate. This is incorrect when the correction occurs in an iframe. This patch added code
3053         to convert the bounding box to window coordinate using ScrollView::contentToWindow().
3054
3055         * dom/Range.cpp:
3056         (WebCore::Range::getBoundingClientRect):
3057         (WebCore::Range::boundingRect):
3058         * dom/Range.h:
3059         * editing/Editor.cpp:
3060         (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges):
3061         (WebCore::Editor::correctionPanelTimerFired):
3062         (WebCore::Editor::windowRectForRange):
3063         * editing/Editor.h:
3064         * manual-tests/autocorrection/autocorrection-in-iframe.html: Added.
3065         * manual-tests/autocorrection/document-for-iframe-test.html: Added.
3066
3067 2011-03-04  Jia Pu  <jpu@apple.com>
3068
3069         Reviewed by Darin Adler.
3070
3071         Those checking in Editor::removeSpellAndCorrectionMarkersFromWordsToBeEdited() should be done with VisiblePosition::isNull().
3072         https://bugs.webkit.org/show_bug.cgi?id=55731
3073
3074         No new tests. There's no behavioral change.
3075
3076         This patch improved clarity and readability of Editor::removeSpellAndCorrectionMarkersFromWordsToBeEdited().
3077
3078         * editing/Editor.cpp:
3079         (WebCore::Editor::removeSpellAndCorrectionMarkersFromWordsToBeEdited):
3080
3081 2011-03-04  John Bauman  <jbauman@chromium.org>
3082
3083         Reviewed by Kenneth Russell.
3084
3085         [chromium] premultipliedAlpha WebGL context attribute is ignored.
3086         https://bugs.webkit.org/show_bug.cgi?id=55411
3087
3088         Update compositor to set the blending of each layer correctly.
3089
3090         Test: compositing/webgl/webgl-nonpremultiplied-blend.html
3091
3092         * platform/graphics/chromium/CanvasLayerChromium.cpp:
3093         (WebCore::CanvasLayerChromium::CanvasLayerChromium):
3094         (WebCore::CanvasLayerChromium::draw):
3095         * platform/graphics/chromium/CanvasLayerChromium.h:
3096         * platform/graphics/chromium/ContentLayerChromium.cpp:
3097         (WebCore::ContentLayerChromium::draw):
3098         * platform/graphics/chromium/LayerRendererChromium.cpp:
3099         (WebCore::LayerRendererChromium::drawLayers):
3100         * platform/graphics/chromium/WebGLLayerChromium.cpp:
3101         (WebCore::WebGLLayerChromium::setContext):
3102
3103 2011-03-04  Adam Barth  <abarth@webkit.org>
3104
3105         Reviewed by Eric Seidel.
3106
3107         WebCore GYP build should link with the correct frameworks
3108         https://bugs.webkit.org/show_bug.cgi?id=55804
3109
3110         * gyp/WebCore.gyp:
3111
3112 2011-03-04  Adam Barth  <abarth@webkit.org>
3113
3114         Reviewed by Eric Seidel.
3115
3116         WebCore GYP build should Check For Inappropriate Files in Framework
3117         https://bugs.webkit.org/show_bug.cgi?id=55806
3118
3119         * gyp/WebCore.gyp:
3120
3121 2011-03-04  Dimitri Glazkov  <dglazkov@chromium.org>
3122
3123         Reviewed by Adam Barth.
3124
3125         Add skeletal WebCore.gyp
3126         https://bugs.webkit.org/show_bug.cgi?id=55802
3127
3128         This doesn't yet build, but the basic structure is there.
3129
3130         * WebCore.gypi: Added headers and include directories variables.
3131         * gyp/WebCore.gyp: Added.
3132
3133 2011-03-04  Adam Barth  <abarth@webkit.org>
3134
3135         Reviewed by Dimitri Glazkov.
3136
3137         Remove unneeded round-trips through ../Source in the Chromium GYP build
3138         https://bugs.webkit.org/show_bug.cgi?id=55795
3139
3140         This is just cleanup work, but it was bugging me.
3141
3142         * WebCore.gyp/WebCore.gyp:
3143
3144 2011-03-04  Mike Reed  <reed@google.com>
3145
3146         Reviewed by James Robinson.
3147
3148         Option to use skia's native text drawing APIs when drawing text
3149         on Windows, rather than from outlines using drawPath(). This will
3150         only have a significant effect when the skia-gpu backend is enabled.
3151         https://bugs.webkit.org/show_bug.cgi?id=55609
3152
3153         No new tests. This is disabled by default. When enabled, it will draw
3154         essentially the same, but with slightly different antialiased edges, due
3155         to differences between the current scanconverter and GDI's font scaler.
3156         When enabled, we will have to recalibrate layouttest image results. 
3157
3158         * platform/graphics/skia/SkiaFontWin.cpp:
3159         (WebCore::skiaDrawText):
3160         (WebCore::setupPaintForFont):
3161         (WebCore::paintSkiaText):
3162
3163 2011-03-04  Adrienne Walker  <enne@google.com>
3164
3165         Reviewed by James Robinson.
3166
3167         [chromium] Fix texture stride issues on large content and image layers.
3168         https://bugs.webkit.org/show_bug.cgi?id=55679
3169
3170         This was an error caused during the refactoring in r80081.
3171
3172         Tests: LayoutTests/compositing/tiling/huge-layer-img.html
3173
3174         * platform/graphics/chromium/ContentLayerChromium.cpp:
3175         (WebCore::ContentLayerChromium::updateTexture):
3176         * platform/graphics/chromium/ImageLayerChromium.cpp:
3177         (WebCore::ImageLayerChromium::updateTextureIfNeeded):
3178
3179 2011-03-04  Sheriff Bot  <webkit.review.bot@gmail.com>
3180
3181         Unreviewed, rolling out r80379.
3182         http://trac.webkit.org/changeset/80379
3183         https://bugs.webkit.org/show_bug.cgi?id=55799
3184
3185         "Breaks leopard compile (implicit conversion)" (Requested by
3186         tonyg-cr on #webkit).
3187
3188         * css/CSSStyleSelector.cpp:
3189         (WebCore::convertToLength):
3190         (WebCore::CSSStyleSelector::applyProperty):
3191         (WebCore::CSSStyleSelector::createTransformOperations):
3192         * platform/Length.h:
3193         (WebCore::Length::Length):
3194         (WebCore::Length::operator==):
3195         (WebCore::Length::operator!=):
3196         (WebCore::Length::rawValue):
3197         (WebCore::Length::type):
3198         (WebCore::Length::quirk):
3199         (WebCore::Length::setValue):
3200         (WebCore::Length::setRawValue):
3201         (WebCore::Length::calcFloatValue):
3202         (WebCore::Length::isZero):
3203         (WebCore::Length::blend):
3204         * rendering/AutoTableLayout.cpp:
3205         (WebCore::AutoTableLayout::recalcColumn):
3206         (WebCore::AutoTableLayout::calcEffectiveLogicalWidth):
3207         * rendering/FixedTableLayout.cpp:
3208         (WebCore::FixedTableLayout::calcWidthArray):
3209
3210 2011-03-04  Jessie Berlin  <jberlin@apple.com>
3211
3212         Reviewed by Darin Adler.
3213
3214         WebKit2: Use CFNetwork Sessions API.
3215         https://bugs.webkit.org/show_bug.cgi?id=55435.
3216
3217         Add in the CFURLSTORAGESESSIONS guards that I incorrectly left out because the code was
3218         contained within guards that made USE(CFURLSTORAGESESSIONS) always be true.
3219
3220         * platform/network/cf/ResourceHandleCFNet.cpp:
3221         (WebCore::makeFinalRequest):
3222         (WebCore::ResourceHandle::willSendRequest):
3223         * platform/network/cf/ResourceRequestCFNet.cpp:
3224         * platform/network/mac/ResourceHandleMac.mm:
3225         (WebCore::ResourceHandle::createNSURLConnection):
3226         (WebCore::ResourceHandle::willSendRequest):
3227         * platform/network/mac/ResourceRequestMac.mm:
3228
3229 2011-03-04  Yuqiang Xian  <yuqiang.xian@intel.com>
3230
3231         Reviewed by Darin Adler.
3232
3233         improve layout performance by reducing the traversal time of the floating objects
3234         https://bugs.webkit.org/show_bug.cgi?id=55440
3235
3236         We observered large overhead on traversing the floating objects list
3237         in logicalLeftOffsetForLine() and logicalRightOffsetForLine() especially
3238         when the list becomes enormous, for example in the default 30x30 maze test
3239         from http://ie.microsoft.com/testdrive/Performance/MazeSolver/Default.html
3240         there're >3700 floating objects. When placing a new floating object the
3241         entire list (from begin to end) is traversed for multiple times.
3242         There's a low hanging fruit to reduce the chances to do the traversal
3243         which is especially applicable in logicalLeftOffsetForLine and logicalRightOffsetForLine.
3244         As the two routines either cares about FloatLeft objects or FloatRight objects only,
3245         if we know there's no corresponding type floating objects in the list
3246         we can avoid the traversal actually. One thing we could do is to record
3247         the number of FloatLeft objects and the number of FloatRight objects and
3248         add a check before doing the traversal. This can reduce the time by 45%
3249         to resolve the 30x30 Maze measured on N470 Netbook MeeGo using latest
3250         Chromium browser 11 (from 503s to 269s).
3251
3252         No new tests, relying on existing layout tests.
3253
3254         * rendering/RenderBlock.cpp:
3255         (WebCore::RenderBlock::~RenderBlock):
3256         (WebCore::RenderBlock::addOverflowFromFloats):
3257         (WebCore::RenderBlock::repaintOverhangingFloats):
3258         (WebCore::RenderBlock::paintFloats):
3259         (WebCore::RenderBlock::selectionGaps):
3260         (WebCore::RenderBlock::insertFloatingObject):
3261         (WebCore::RenderBlock::removeFloatingObject):
3262         (WebCore::RenderBlock::removeFloatingObjectsBelow):
3263         (WebCore::RenderBlock::positionNewFloats):
3264         (WebCore::RenderBlock::positionNewFloatOnLine):
3265         (WebCore::RenderBlock::logicalLeftOffsetForLine):
3266         (WebCore::RenderBlock::logicalRightOffsetForLine):
3267         (WebCore::RenderBlock::nextFloatLogicalBottomBelow):
3268         (WebCore::RenderBlock::lowestFloatLogicalBottom):
3269         (WebCore::RenderBlock::clearFloats):
3270         (WebCore::RenderBlock::addOverhangingFloats):
3271         (WebCore::RenderBlock::addIntrudingFloats):
3272         (WebCore::RenderBlock::containsFloat):
3273         (WebCore::RenderBlock::hitTestFloats):
3274         (WebCore::RenderBlock::adjustForBorderFit):
3275         (WebCore::RenderBlock::FloatingObjects::clear):
3276         (WebCore::RenderBlock::FloatingObjects::increaseObjectsCount):
3277         (WebCore::RenderBlock::FloatingObjects::decreaseObjectsCount):
3278         * rendering/RenderBlock.h:
3279         (WebCore::RenderBlock::containsFloats):
3280         (WebCore::RenderBlock::FloatingObjects::FloatingObjects):
3281         (WebCore::RenderBlock::FloatingObjects::hasLeftObjects):
3282         (WebCore::RenderBlock::FloatingObjects::hasRightObjects):
3283         (WebCore::RenderBlock::FloatingObjects::set):
3284         * rendering/RenderBlockLineLayout.cpp:
3285         (WebCore::RenderBlock::layoutInlineChildren):
3286         (WebCore::RenderBlock::matchedEndLine):
3287
3288 2011-03-04  Rik Cabanier  <cabanier@gmail.com>
3289
3290         Reviewed by David Hyatt.
3291
3292         Fix that allows fixed length values to be floating point
3293         https://bugs.webkit.org/show_bug.cgi?id=52699
3294
3295         * WebCore.xcodeproj/project.pbxproj:
3296         * css/CSSStyleSelector.cpp:
3297         (WebCore::convertToLength):
3298         (WebCore::convertToIntLength):
3299         (WebCore::convertToFloatLength):
3300         (WebCore::CSSStyleSelector::applyProperty):
3301         (WebCore::CSSStyleSelector::createTransformOperations):
3302         * platform/Length.h:
3303         (WebCore::Length::Length):
3304         (WebCore::Length::operator==):
3305         (WebCore::Length::operator!=):
3306         (WebCore::Length::rawValue):
3307         (WebCore::Length::type):
3308         (WebCore::Length::quirk):
3309         (WebCore::Length::setValue):
3310         (WebCore::Length::calcFloatValue):
3311         (WebCore::Length::isZero):
3312         (WebCore::Length::blend):
3313         (WebCore::Length::getIntValue):
3314         (WebCore::Length::getFloatValue):
3315         * rendering/AutoTableLayout.cpp:
3316         (WebCore::AutoTableLayout::recalcColumn):
3317         (WebCore::AutoTableLayout::calcEffectiveLogicalWidth):
3318         * rendering/FixedTableLayout.cpp:
3319         (WebCore::FixedTableLayout::calcWidthArray):
3320
3321 2011-03-04  Steve Falkenburg  <sfalken@apple.com>
3322
3323         Reviewed by Jon Honeycutt.
3324
3325         Adopt VersionStamper tool for Windows WebKit DLLs
3326         https://bugs.webkit.org/show_bug.cgi?id=55784
3327         
3328         We now use a tool to stamp the version number onto the Apple WebKit DLLs
3329         during the post-build step.
3330
3331         * WebCore.vcproj/QTMovieWin.rc: Removed.
3332         * WebCore.vcproj/QTMovieWin.vcproj:
3333         * WebCore.vcproj/QTMovieWinPostBuild.cmd: Stamp version with VersionStamper.
3334         * WebCore.vcproj/QTMovieWinPreBuild.cmd: Don't run auto-version.sh. We don't use autoversion.h in this project.
3335         * WebCore.vcproj/WebCoreMediaQT.vsprops: Remove unnecessary include paths for resource files.
3336
3337 2011-03-04  Cosmin Truta  <ctruta@chromium.org>
3338
3339         Reviewed by Adam Barth.
3340
3341         Clarify comment about potential memory leak in SVGImage
3342         https://bugs.webkit.org/show_bug.cgi?id=55362
3343
3344         No functionality change. No new tests.
3345
3346         * svg/graphics/SVGImage.cpp:
3347         (WebCore::SVGImage::dataChanged):
3348
3349 2011-03-04  Jessie Berlin  <jberlin@apple.com>
3350
3351         Reviewed by Maciej Stachowiak.
3352
3353         WebKit2: Use CFNetwork Sessions API.
3354         https://bugs.webkit.org/show_bug.cgi?id=55435.
3355
3356         When Private Browsing is enabled, get the cached url response from the cache associated with
3357         the Private Browsing Storage Session.
3358
3359         * WebCore.exp.in:
3360         Export the symbol for ResourceHandle::privateBrowsingStorageSession.
3361
3362 2011-03-04  Steve Block  <steveblock@google.com>
3363
3364         Reviewed by Jeremy Orlow.
3365
3366         JSC and V8 versions of Java bridge should share JobjectWrapper
3367         https://bugs.webkit.org/show_bug.cgi?id=55763
3368
3369         No new tests, refactoring only.
3370
3371         * Android.jscbindings.mk:
3372         * Android.v8bindings.mk:
3373         * WebCore.gypi:
3374         * WebCore.order:
3375         * WebCore.xcodeproj/project.pbxproj:
3376         * bridge/jni/JobjectWrapper.cpp:
3377         (JobjectWrapper::JobjectWrapper):
3378         (JobjectWrapper::~JobjectWrapper):
3379         * bridge/jni/JobjectWrapper.h:
3380         (JSC::Bindings::JobjectWrapper::instance):
3381         (JSC::Bindings::JobjectWrapper::setInstance):
3382         (JSC::Bindings::JobjectWrapper::ref):
3383         (JSC::Bindings::JobjectWrapper::deref):
3384         * bridge/jni/jsc/JNIBridgeJSC.cpp:
3385         (JavaField::JavaField):
3386         (JavaArray::JavaArray):
3387         * bridge/jni/jsc/JNIBridgeJSC.h:
3388         * bridge/jni/jsc/JavaInstanceJSC.cpp:
3389         (JavaInstance::JavaInstance):
3390         * bridge/jni/jsc/JavaInstanceJSC.h:
3391
3392 2011-03-04  Patrick Gansterer  <paroga@webkit.org>
3393
3394         Reviewed by Nikolas Zimmermann.
3395
3396         Move shared code into SVGStyledTransformableElement::svgAttributeChanged
3397         https://bugs.webkit.org/show_bug.cgi?id=55771
3398
3399         All sub classes of SVGStyledTransformableElement request a relayout
3400         the same way. So move that code into the common base class.
3401
3402         * svg/SVGCircleElement.cpp:
3403         (WebCore::SVGCircleElement::svgAttributeChanged):
3404         * svg/SVGEllipseElement.cpp:
3405         (WebCore::SVGEllipseElement::svgAttributeChanged):
3406         * svg/SVGForeignObjectElement.cpp:
3407         (WebCore::SVGForeignObjectElement::svgAttributeChanged):
3408         * svg/SVGGElement.cpp:
3409         (WebCore::SVGGElement::svgAttributeChanged):
3410         * svg/SVGImageElement.cpp:
3411         (WebCore::SVGImageElement::svgAttributeChanged):
3412         * svg/SVGLineElement.cpp:
3413         (WebCore::SVGLineElement::svgAttributeChanged):
3414         * svg/SVGPathElement.cpp:
3415         (WebCore::SVGPathElement::svgAttributeChanged):
3416         * svg/SVGPolyElement.cpp:
3417         (WebCore::SVGPolyElement::svgAttributeChanged):
3418         * svg/SVGRectElement.cpp:
3419         (WebCore::SVGRectElement::svgAttributeChanged):
3420         * svg/SVGStyledTransformableElement.cpp:
3421         (WebCore::SVGStyledTransformableElement::svgAttributeChanged):
3422         * svg/SVGStyledTransformableElement.h:
3423         * svg/SVGUseElement.cpp:
3424         (WebCore::SVGUseElement::svgAttributeChanged):
3425
3426 2011-03-03  John Abd-El-Malek  <jam@chromium.org>
3427
3428         Reviewed by Dimitri Glazkov.
3429
3430         [chromium] Get rid of IsContentFiltered flags since they&apos;re not used anymore
3431         https://bugs.webkit.org/show_bug.cgi?id=55748
3432
3433         * platform/network/chromium/ResourceResponse.cpp:
3434         (WebCore::ResourceResponse::doPlatformCopyData):
3435         (WebCore::ResourceResponse::doPlatformAdopt):
3436         * platform/network/chromium/ResourceResponse.h:
3437         (WebCore::ResourceResponse::ResourceResponse):
3438
3439 2011-03-03  Timothy Hatcher  <timothy@apple.com>
3440
3441         Export SerializedScriptValue::create(JSC::ExecState* exec, JSC::JSValue value).
3442
3443         Reviewed by Darin Adler.
3444
3445         * WebCore.exp.in: Added __ZN7WebCore21SerializedScriptValue6createEPN3JSC9ExecStateENS1_7JSValueE.
3446
3447 2011-03-04  Pavel Podivilov  <podivilov@chromium.org>
3448
3449         Reviewed by Yury Semikhatsky.
3450
3451         Web Inspector: extract all code that depends on source mapping from SourceFrame.
3452         https://bugs.webkit.org/show_bug.cgi?id=55464
3453
3454         Extract all dependencies on DebuggerModel and ScriptsPanel to a delegate class
3455         to encapsulate source mapping aspects from SourceFrame.
3456
3457         * inspector/front-end/ResourceView.js:
3458         (WebInspector.ResourceView.createResourceView):
3459         (WebInspector.SourceFrameDelegateForResourcesPanel):
3460         (WebInspector.SourceFrameDelegateForResourcesPanel.prototype.requestContent):
3461         * inspector/front-end/ScriptsPanel.js:
3462         (WebInspector.ScriptsPanel.prototype._createSourceFrame):
3463         (WebInspector.SourceFrameDelegateForScriptsPanel):
3464         * inspector/front-end/SourceFrame.js:
3465         (WebInspector.SourceFrame):
3466         (WebInspector.SourceFrame.prototype.show):
3467         (WebInspector.SourceFrame.prototype._createTextViewer):
3468         (WebInspector.SourceFrame.prototype._contextMenu.addConditionalBreakpoint.didEditBreakpointCondition):
3469         (WebInspector.SourceFrame.prototype._contextMenu.addConditionalBreakpoint):
3470         (WebInspector.SourceFrame.prototype._contextMenu.else.editBreakpointCondition.didEditBreakpointCondition):
3471         (WebInspector.SourceFrame.prototype._contextMenu.else.editBreakpointCondition):
3472         (WebInspector.SourceFrame.prototype._contextMenu.else.setBreakpointEnabled):
3473         (WebInspector.SourceFrame.prototype._contextMenu):
3474         (WebInspector.SourceFrame.prototype._mouseDown):
3475         (WebInspector.SourceFrame.prototype._mouseMove):
3476         (WebInspector.SourceFrame.prototype._hidePopup):
3477         (WebInspector.SourceFrame.prototype._mouseHover):
3478         (WebInspector.SourceFrame.prototype._showPopup.showObjectPopup):
3479         (WebInspector.SourceFrame.prototype._showPopup):
3480         (WebInspector.SourceFrame.prototype._doubleClick):
3481         (WebInspector.SourceFrame.prototype._didEditLine):
3482         (WebInspector.SourceFrameDelegate):
3483         (WebInspector.SourceFrameDelegate.prototype.requestContent):
3484         (WebInspector.SourceFrameDelegate.prototype.debuggingSupported):
3485         (WebInspector.SourceFrameDelegate.prototype.setBreakpoint):
3486         (WebInspector.SourceFrameDelegate.prototype.removeBreakpoint):
3487         (WebInspector.SourceFrameDelegate.prototype.updateBreakpoint):
3488         (WebInspector.SourceFrameDelegate.prototype.findBreakpoint):
3489         (WebInspector.SourceFrameDelegate.prototype.continueToLine):
3490         (WebInspector.SourceFrameDelegate.prototype.canEditScriptSource):
3491         (WebInspector.SourceFrameDelegate.prototype.editScriptSource):
3492         (WebInspector.SourceFrameDelegate.prototype.debuggerPaused):
3493         (WebInspector.SourceFrameDelegate.prototype.evaluate):
3494         (WebInspector.SourceFrameDelegate.prototype.releaseEvaluationResult):
3495
3496 2011-03-04  Andrey Kosyakov  <caseq@chromium.org>
3497
3498         Reviewed by Pavel Feldman.
3499
3500         Web Inspector: [Extensions API] maintain own, unique & persistent identifiers for resources.
3501         https://bugs.webkit.org/show_bug.cgi?id=55686
3502
3503         - Use internal ids for resources in extension server.
3504         - Log errors in inspector tests.
3505
3506         * inspector/front-end/ExtensionServer.js:
3507         (WebInspector.ExtensionServer):
3508         (WebInspector.ExtensionServer.prototype.resetResources):
3509         (WebInspector.ExtensionServer.prototype._notifyResourceFinished):
3510         (WebInspector.ExtensionServer.prototype._onRevealAndSelectResource):
3511         (WebInspector.ExtensionServer.prototype._onGetHAR):
3512  &n