2010-12-17 Ilya Tikhonovsky <loislo@chromium.org>
[WebKit-https.git] / WebCore / ChangeLog
1 2010-12-17  Ilya Tikhonovsky  <loislo@chromium.org>
2
3         Reviewed by Yury Semikhatsky.
4
5         Web Inspector: remove unnecessary dependencies from InspectorBackendStub.
6
7         InspectorBackendStub is a transport-only thing but it has dependencies with
8         Callback.js and WebInspector namespace. Callback can be integrated into
9         InspectorBackendStub because it is the only client.
10         Without these dependencies InspectorBackendStub can be used as an API
11         wrapper for Inspector Protocol.
12
13         https://bugs.webkit.org/show_bug.cgi?id=51184
14
15         * WebCore.gypi:
16         * inspector/CodeGeneratorInspector.pm:
17         * inspector/front-end/Callback.js: Removed.
18         * inspector/front-end/WebKit.qrc:
19         * inspector/front-end/inspector.html:
20
21 2010-12-15  Andrey Kosyakov  <caseq@chromium.org>
22
23         Reviewed by Pavel Feldman.
24
25         Web Inspector: [Extension API] add support for adding/overriding HTTP request headers
26         https://bugs.webkit.org/show_bug.cgi?id=50493
27
28         Test: http/tests/inspector/extensions-headers.html
29
30         * inspector/Inspector.idl:
31         * inspector/InspectorController.cpp:
32         (WebCore::InspectorController::willSendRequest): Apply extra headers.
33         (WebCore::InspectorController::setExtraHeaders):
34         * inspector/InspectorController.h:
35         * inspector/front-end/ExtensionAPI.js:
36         (WebInspector.injectedExtensionAPI.Resources.prototype.getHAR):
37         (WebInspector.injectedExtensionAPI.Resources.prototype.addRequestHeaders):
38         * inspector/front-end/ExtensionServer.js:
39         (WebInspector.ExtensionServer):
40         (WebInspector.ExtensionServer.prototype._onAddRequestHeaders):
41
42 2010-12-16  Koan-Sin Tan  <koansin.tan@gmail.com>
43
44         Reviewed by Kent Tamura.
45
46         Glyphs in vertical text tests are rotated 90 degrees clockwise on Chromium Linux
47         https://bugs.webkit.org/show_bug.cgi?id=50365
48
49         No new tests. But this makes Chromimium Linux show
50         fast/blockflow/japanese-*-text.html and other vertical
51         writing text correctly as on WebKit and Chromimum for Mac.
52
53         * platform/graphics/chromium/FontCacheLinux.cpp:
54         (WebCore::FontCache::createFontPlatformData):
55         * platform/graphics/chromium/FontLinux.cpp:
56         (WebCore::Font::drawGlyphs):
57         * platform/graphics/chromium/FontPlatformDataLinux.cpp:
58         (WebCore::FontPlatformData::FontPlatformData):
59         (WebCore::FontPlatformData::operator=):
60         (WebCore::FontPlatformData::operator==):
61         (WebCore::FontPlatformData::hash):
62         * platform/graphics/chromium/FontPlatformDataLinux.h:
63         (WebCore::FontPlatformData::FontPlatformData):
64         (WebCore::FontPlatformData::orientation):
65         * platform/graphics/chromium/SimpleFontDataLinux.cpp:
66         (WebCore::SimpleFontData::platformInit):
67         * platform/graphics/skia/FontCustomPlatformData.cpp:
68         (WebCore::FontCustomPlatformData::fontPlatformData):
69         * platform/graphics/skia/GlyphPageTreeNodeSkia.cpp:
70         (WebCore::substituteWithVerticalGlyphs):
71         (WebCore::GlyphPage::fill):
72
73 2010-12-16  Yi Shen  <yi.4.shen@nokia.com>, Tor Arne Vestbo <tor.arne.vestbo@nokia.com>
74
75         Reviewed by Eric Carlson.
76
77         Provide an interface to require using fullscreen mediaplayer
78         https://bugs.webkit.org/show_bug.cgi?id=51133
79
80         Add ChromeClient::requiresFullscreenForVideoPlayback to require webkit
81         to launch fullscreen video player for playing the html5 video. The 
82         idea is that a browser vendor can specify this behavior through the
83         platform plugin or something else by using this interface.
84
85         No new tests because no client implements requiresFullscreenForVideoPlayback yet.
86
87         * html/HTMLMediaElement.cpp:
88         (WebCore::HTMLMediaElement::updatePlayState):
89         (WebCore::HTMLMediaElement::exitFullscreen):
90         * page/Chrome.cpp:
91         (WebCore::Chrome::requiresFullscreenForVideoPlayback):
92         * page/Chrome.h:
93         * page/ChromeClient.h:
94         (WebCore::ChromeClient::requiresFullscreenForVideoPlayback):
95
96 2010-12-16  Steve Block  <steveblock@google.com>
97
98         Reviewed by Steve Block.
99
100         GeolocationPositionCache needs refactoring
101         https://bugs.webkit.org/show_bug.cgi?id=50826
102
103         No new tests, refactoring only.
104
105         * page/Geolocation.cpp:
106         (WebCore::Geolocation::Geolocation):
107         (WebCore::Geolocation::makeCachedPositionCallbacks):
108         (WebCore::Geolocation::haveSuitableCachedPosition):
109         (WebCore::Geolocation::positionChangedInternal):
110         * page/Geolocation.h:
111         * page/GeolocationPositionCache.cpp:
112         (WebCore::GeolocationPositionCache::instance):
113         (WebCore::GeolocationPositionCache::GeolocationPositionCache):
114         (WebCore::GeolocationPositionCache::addUser):
115         (WebCore::GeolocationPositionCache::removeUser):
116         (WebCore::GeolocationPositionCache::setDatabasePath):
117         (WebCore::GeolocationPositionCache::setCachedPosition):
118         (WebCore::GeolocationPositionCache::cachedPosition):
119         (WebCore::GeolocationPositionCache::readFromDatabase):
120         (WebCore::GeolocationPositionCache::writeToDatabase):
121         * page/GeolocationPositionCache.h:
122         (WebCore::GeolocationPositionCacheWrapper::GeolocationPositionCacheWrapper):
123         (WebCore::GeolocationPositionCacheWrapper::~GeolocationPositionCacheWrapper):
124         (WebCore::GeolocationPositionCacheWrapper::setCachedPosition):
125         (WebCore::GeolocationPositionCacheWrapper::cachedPosition):
126
127 2010-12-16  Ariya Hidayat  <ariya@sencha.com>
128
129         Reviewed by Andreas Kling.
130
131         [Qt] GraphicsContext should respect QWebView render hints
132         https://bugs.webkit.org/show_bug.cgi?id=51208
133
134         GraphicsContext does not override SmoothPixmapTransform (see also
135         r62762). To keep the same behavior, canvas default image interpolation
136         quality is set to medium and QWebView's render hints by default also
137         include SmoothPixmapTransform.
138
139         * html/HTMLCanvasElement.h:
140         * platform/graphics/qt/GraphicsContextQt.cpp:
141         (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
142
143 2010-12-16  Daniel Bates  <dbates@rim.com>
144
145         Formatting fix; un-indent one level all lines in [2793, 2808] (with respect to r74217)
146         so as to be consistent with the formatting of the rest of this file.
147
148         Also, add an empty line between the win32* and wince* conditional include blocks.
149
150         * WebCore.pro:
151
152 2010-12-16  Daniel Bates  <dbates@rim.com>
153
154         Reviewed by Antonio Gomes.
155
156         [Qt] Only include ScrollAnimatorWin.h and compile ScrollAnimatorWin.cpp
157         on Windows if ENABLE_SMOOTH_SCROLLING=1
158         https://bugs.webkit.org/show_bug.cgi?id=51215
159
160         Conditionally include the files ScrollAnimatorWin.h and ScrollAnimatorWin.cpp when building
161         the Qt Windows with smooth scrolling enabled.
162
163         No change in functionality since these files are guarded by ENABLE(SMOOTH_SCROLLING).
164
165         * WebCore.pro:
166
167 2010-12-16  Ryosuke Niwa  <rniwa@webkit.org>
168
169         Reviewed by Darin Adler.
170
171         execCommand('JustifyCenter') adds extra BR
172         https://bugs.webkit.org/show_bug.cgi?id=51082
173
174         The bug was caused by moveParagraphContentsToNewBlockIfNecessary's adding a placeholder br
175         to new block and not removing it later. Fixed the bug by removing it when the paragraph
176         moved into the block didn't have a br at the end.
177
178         Test: editing/execCommand/justify.html
179
180         * editing/CompositeEditCommand.cpp:
181         (WebCore::CompositeEditCommand::moveParagraphContentsToNewBlockIfNecessary):
182
183 2010-12-16  Jian Li  <jianli@chromium.org>
184
185         Unreviewed. Fixed chromium build break caused by r74207.
186
187         * platform/ContextMenuItem.h:
188
189 2010-12-16  Leandro Pereira  <leandro@profusion.mobi>
190
191         [EFL] Unreviewed build fix.
192
193         Disable ContextMenu support for now while support for
194         CROSS_PLATFORM_MENUS is written.
195
196         * CMakeListsEfl.txt:
197         * platform/ContextMenu.h:
198         * platform/ContextMenuItem.h:
199         * platform/efl/ContextMenuEfl.cpp:
200         (WebCore::ContextMenu::ContextMenu):
201         (WebCore::ContextMenu::getContextMenuItems):
202         (WebCore::ContextMenu::createNativeMenuFromItems):
203         (WebCore::ContextMenu::nativeMenu):
204         * platform/efl/ContextMenuItemEfl.cpp:
205         (WebCore::ContextMenuItem::ContextMenuItem):
206         (WebCore::ContextMenuItem::~ContextMenuItem):
207         (WebCore::ContextMenuItem::nativeMenuItem):
208         (WebCore::ContextMenuItem::type):
209         (WebCore::ContextMenuItem::setAction):
210         (WebCore::ContextMenuItem::action):
211         (WebCore::ContextMenuItem::setChecked):
212         (WebCore::ContextMenuItem::checked):
213         (WebCore::ContextMenuItem::setEnabled):
214         (WebCore::ContextMenuItem::enabled):
215         (WebCore::ContextMenuItem::setSubMenu):
216
217 2010-12-16  Ryosuke Niwa  <rniwa@webkit.org>
218
219         Reviewed by Darin Adler.
220
221         execCommand('styleWithCSS') is ignored when selection isn't inside a contenteditable area
222         https://bugs.webkit.org/show_bug.cgi?id=51164
223
224         Fixed the bug by always enabling the StyleWithCSS command.
225
226         Test: editing/style/stylewithcss-without-selection.html
227
228         * editing/EditorCommand.cpp:
229         (WebCore::createCommandMap): StyleWithCSS is enabled rather than enabledInRichlyEditableText.
230
231 2010-12-16  Anders Carlsson  <andersca@apple.com>
232
233         Reviewed by Darin Adler.
234
235         Save the manual plug-in stream data and redeliver it when the plug-in is initialized
236         https://bugs.webkit.org/show_bug.cgi?id=51201
237
238         Export SharedBuffer related symbols.
239
240         * WebCore.exp.in:
241
242 2010-12-16  Pavel Feldman  <pfeldman@chromium.org>
243
244         Reviewed by Yury Semikhatsky.
245
246         Web Inspector: timeline records should only operate WebCore time.
247         https://bugs.webkit.org/show_bug.cgi?id=51127
248
249         * inspector/InspectorTimelineAgent.cpp:
250         (WebCore::InspectorTimelineAgent::didFinishLoadingResource):
251         * inspector/TimelineRecordFactory.cpp:
252         (WebCore::TimelineRecordFactory::createResourceFinishData):
253         * inspector/TimelineRecordFactory.h:
254
255 2010-12-15  Alexey Proskuryakov  <ap@apple.com>
256
257         Reviewed by Darin Adler.
258
259         https://bugs.webkit.org/show_bug.cgi?id=50996
260         <rdar://problem/8098862> Consider disabling DNS prefetch when proxy is used
261
262         No new tests, cannot test DNS.
263
264         * platform/network/cf/DNSCFNet.cpp:
265         (WebCore::proxyIsEnabledInSystemPreferences): Check if accessing example.com is going to use
266         a proxy. This is only an estimate - even with a proxy is configured in system preferences, an
267         actual request can go directly to the host if a PAC script says so.
268         (WebCore::DNSResolveQueue::add): Check if proxy is enabled when sending immediate requests.
269         (WebCore::DNSResolveQueue::fired): Ditto when sending queued ones.
270
271 2010-12-16  Yury Semikhatsky  <yurys@chromium.org>
272
273         Reviewed by Pavel Feldman.
274
275         Web Inspector: Console always scroll to the bottom on new events
276         https://bugs.webkit.org/show_bug.cgi?id=51189
277
278         When new messages are added to the console it will auto scroll
279         only if it was already scrolled down to the last record.
280
281         * inspector/front-end/ConsoleView.js:
282         (WebInspector.ConsoleView.prototype._scheduleScrollIntoView.scrollIntoView):
283         (WebInspector.ConsoleView.prototype._scheduleScrollIntoView):
284         (WebInspector.ConsoleView.prototype._isScrolledToLastMessage):
285         (WebInspector.ConsoleView.prototype.addMessage):
286
287 2010-12-16  Pavel Podivilov  <podivilov@chromium.org>
288
289         Reviewed by Yury Semikhatsky.
290
291         Web Inspector: update CallStackSidebarPane placards and status message in the same event handler.
292         https://bugs.webkit.org/show_bug.cgi?id=51174
293
294         * inspector/front-end/BreakpointManager.js:
295         (WebInspector.BreakpointManager.prototype.breakpointViewForEventData):
296         (WebInspector.BreakpointManager.prototype._debuggerPaused):
297         (WebInspector.BreakpointManager.prototype._debuggerResumed):
298         * inspector/front-end/CallStackSidebarPane.js:
299         (WebInspector.CallStackSidebarPane):
300         (WebInspector.CallStackSidebarPane.prototype.update):
301         (WebInspector.CallStackSidebarPane.prototype.registerShortcuts):
302         * inspector/front-end/DebuggerModel.js:
303         (WebInspector.DebuggerModel.prototype.pausedScript):
304         * inspector/front-end/ScriptsPanel.js:
305         (WebInspector.ScriptsPanel.prototype._debuggerPaused):
306
307 2010-12-16  Hans Wennborg  <hans@chromium.org>
308
309         Reviewed by Jeremy Orlow.
310
311         IndexedDB: Fix IDBDatabaseError code offset bug
312         https://bugs.webkit.org/show_bug.cgi?id=51177
313
314         IDBDatabaseError::code() needs to return the error code without
315         offset. But when the IDBDatabaseError is created, the code comes with
316         an offset (it gets passed a IDBDatabaseException::IDBDatabaseExceptionCode).
317
318         However, in Chromium, IDBDatabaseErrors are sometimes also created via
319         WebIDBDatabaseError when they are sent across IPC, and then the error
320         code comes *without* offset. Provide a second create() function for
321         this case.
322
323         * storage/IDBDatabaseError.h:
324         (WebCore::IDBDatabaseError::create):
325         (WebCore::IDBDatabaseError::createWithoutOffset):
326         (WebCore::IDBDatabaseError::code):
327
328 2010-12-16  Sheriff Bot  <webkit.review.bot@gmail.com>
329
330         Unreviewed, rolling out r74162.
331         http://trac.webkit.org/changeset/74162
332         https://bugs.webkit.org/show_bug.cgi?id=51185
333
334         More breakage in GTK+ (Requested by xan_ on #webkit).
335
336         * platform/text/TextCodecUTF16.cpp:
337         (WebCore::TextCodecUTF16::registerEncodingNames):
338
339 2010-12-16  Alexander Pavlov  <apavlov@chromium.org>
340
341         Reviewed by Pavel Feldman.
342
343         Web Inspector: Up/Down/PageUp/PageDown on a CSS property numeric value commit the value editor
344         https://bugs.webkit.org/show_bug.cgi?id=51114
345
346         The r74038 regressed the behaviour. This patch additionally ensures that both Metrics and Styles panes
347         are updated once a stylesheet is reverted.
348
349         * inspector/front-end/ElementsPanel.js:
350         (WebInspector.ElementsPanel.prototype._stylesPaneEdited):
351         (WebInspector.ElementsPanel.prototype._metricsPaneEdited):
352         (WebInspector.ElementsPanel.prototype._styleSheetChanged):
353
354 2010-12-16  Yury Semikhatsky  <yurys@chromium.org>
355
356         Unreviewed. Fix Chromium Mac Debug Clang compilation.
357
358         * platform/graphics/FontFastPath.cpp:
359         (WebCore::Font::getGlyphsAndAdvancesForSimpleText):
360
361 2010-12-16  Alejandro G. Castro  <alex@igalia.com>
362
363         Unreviewed. Fix GTK3 compilation after 74129.
364
365         * platform/gtk/WidgetRenderingContextGtk3.cpp:
366
367 2010-12-16  Yury Semikhatsky  <yurys@chromium.org>
368
369         Unreviewed. Fix Chromium Debug compilation after r74177 
370
371         * platform/graphics/filters/FEComposite.cpp:
372         (WebCore::arithmetic):
373
374 2010-12-16  Kent Tamura  <tkent@chromium.org>
375
376         Unreviewed, build fix.
377
378         Fix a warning on 32-bit Mac.
379
380         * platform/graphics/mac/SimpleFontDataMac.mm:
381         (WebCore::SimpleFontData::emphasisMarkFontData): 0.5 -> 0.5f
382
383 2010-12-16  Zoltan Herczeg  <zherczeg@webkit.org>
384
385         Reviewed by Dirk Schulze.
386
387         Improve feArithmeticFilter
388         https://bugs.webkit.org/show_bug.cgi?id=51105
389
390         In case of the arithmetic operator on feComposite filter, we could use
391         different result passing modes depend on its type. Furthermore, the
392         number of executed multiplications is reduced if k1 or k4 argument is zero.
393
394         2% speedup on WebCore/manual-tests/svg-filter-animation.svg
395
396         * platform/graphics/filters/FEComposite.cpp:
397         (WebCore::computeArithmeticPixels):
398         (WebCore::arithmetic):
399         (WebCore::FEComposite::apply):
400
401 2010-12-15  Brian Weinstein  <bweinstein@apple.com>
402
403         Reviewed by Jon Honeycutt.
404
405         WebKit2 should exit auto scrolling mode when losing focus
406         https://bugs.webkit.org/show_bug.cgi?id=49209
407         
408         When a page loses focus, make sure that we stop the autoscroll timer, which exits pan scrolling mode. We
409         don't want to automatically scroll when a page doesn't have focus.
410
411         Updated manual-tests/autoscroll.html with instructions to test this bug.
412
413         * manual-tests/autoscroll.html:
414         * page/FocusController.cpp:
415         (WebCore::FocusController::setFocused):
416
417 2010-12-15  Dan Bernstein  <mitz@apple.com>
418
419         Reviewed by Darin Adler.
420
421         Font support for the text-emphasis CSS property
422         Part of <rdar://problem/7720300> Support the CSS3 text-emphasis property
423         https://bugs.webkit.org/show_bug.cgi?id=48539
424
425         * platform/graphics/Font.cpp:
426         (WebCore::Font::drawEmphasisMarks): Added. Calls through to drawEmphasisMarksFor{Simple,Complex}Text.
427         (WebCore::Font::canReceiveTextEmphasis): Added. For simple text, checks if the character should
428         have an emphasis mark.
429
430         * platform/graphics/Font.h:
431
432         * platform/graphics/FontFastPath.cpp:
433         (WebCore::Font::glyphDataForCharacter): Replaced the forceSmallCaps boolean with a FontDataVariant
434         parameter and made this function work with other variants.
435         (WebCore::Font::getEmphasisMarkGlyphData): Added. Returns glyph data for the first character of
436         the emphasis mark. This function may not work if the emphasis mark uses a complex script, but none
437         of the standard emphasis marks do so.
438         (WebCore::Font::emphasisMarkAscent): Added.
439         (WebCore::Font::emphasisMarkDescent): Added.
440         (WebCore::Font::emphasisMarkHeight): Added.
441         (WebCore::Font::getGlyphsAndAdvancesForSimpleText): Moved much of the logic from drawSimpleText()
442         into this new function, which also has a ForTextEmphasis parameter, which is passed along to the
443         WidthIterator.
444         (WebCore::Font::drawSimpleText): Left the drawing part here.
445         (WebCore::Font::drawEmphasisMarksForSimpleText): Added.
446         (WebCore::Font::drawGlyphBuffer): Removed the unused TextRun parameter.
447         (WebCore::offsetToMiddleOfGlyph): Added this helper.
448         (WebCore::offsetToMiddleOfGlyphAtIndex): Added this other helper.
449         (WebCore::Font::drawEmphasisMarks): Added. Draws emphasis marks for a given glyph buffer by placing
450         one mark centered above each glyph. Zero glyphs in the buffer indicate that no mark should be drawn.
451
452         * platform/graphics/GraphicsContext.cpp:
453         (WebCore::GraphicsContext::drawEmphasisMarks): Added. Calls through to Font::drawEmphasisMarks().
454
455         * platform/graphics/GraphicsContext.h:
456
457         * platform/graphics/SimpleFontData.cpp:
458         (WebCore::SimpleFontData::SimpleFontData): Removed initialization of deleted members.
459         (WebCore::SimpleFontData::~SimpleFontData): Removed derived font data cleanup, which now happens
460         in ~DerivedFontData.
461         (WebCore::SimpleFontData::brokenIdeographFontData): Changed to use m_derivedFontData.
462         (WebCore::SimpleFontData::DerivedFontData::DerivedFontData): Added. This lazily-allocated struct
463         contains the SimpleFontData for small caps, broken ideograph and emphasis mark.
464         (WebCore::SimpleFontData::DerivedFontData::~DerivedFontData): Added.
465
466         * platform/graphics/SimpleFontData.h:
467         (WebCore::SimpleFontData::variantFontData): Added. This is used by Font::glyphDataForCharacter().
468
469         * platform/graphics/WidthIterator.cpp:
470         (WebCore::WidthIterator::WidthIterator): Added forTextEmphasis parameter.
471         (WebCore::WidthIterator::advance): When used for text emphasis, replace glyphs with the zero glyph
472         if they should not receive an emphasis mark.
473
474         * platform/graphics/WidthIterator.h:
475
476         * platform/graphics/chromium/FontChromiumWin.cpp:
477         (WebCore::Font::drawEmphasisMarksForComplexText): Added stub.
478
479         * platform/graphics/chromium/FontLinux.cpp:
480         (WebCore::TextRunWalker::nextScriptRun): Updated for change to Font::glyphDataForCharacter().
481         (WebCore::TextRunWalker::setupFontForScriptRun): Ditto.
482         (WebCore::Font::drawEmphasisMarksForComplexText): Added stub.
483
484         * platform/graphics/chromium/SimpleFontDataChromiumWin.cpp:
485         (WebCore::SimpleFontData::scaledFontData): Moved code from smallCapsFontData() here and generalized.
486         (WebCore::SimpleFontData::smallCapsFontData): Adopted m_derivedFontData and scaledFontData().
487         (WebCore::SimpleFontData::emphasisMarkFontData): Added.
488
489         * platform/graphics/chromium/SimpleFontDataLinux.cpp:
490         (WebCore::SimpleFontData::scaledFontData): Moved code from smallCapsFontData() here and generalized.
491         (WebCore::SimpleFontData::smallCapsFontData): Adopted m_derivedFontData and scaledFontData().
492         (WebCore::SimpleFontData::emphasisMarkFontData): Added.
493
494         * platform/graphics/efl/FontEfl.cpp:
495         (WebCore::Font::drawEmphasisMarksForComplexText): Added stub.
496
497         * platform/graphics/freetype/SimpleFontDataFreeType.cpp:
498         (WebCore::SimpleFontData::scaledFontData): Moved code from smallCapsFontData() here and generalized.
499         (WebCore::SimpleFontData::smallCapsFontData): Adopted m_derivedFontData and scaledFontData().
500         (WebCore::SimpleFontData::emphasisMarkFontData): Added.
501
502         * platform/graphics/gtk/FontGtk.cpp:
503         (WebCore::Font::drawEmphasisMarksForComplexText): Added stub.
504
505         * platform/graphics/haiku/FontHaiku.cpp:
506         (WebCore::Font::drawEmphasisMarksForComplexText): Added stub.
507
508         * platform/graphics/haiku/SimpleFontDataHaiku.cpp:
509         (WebCore::SimpleFontData::scaledFontData): Moved code from smallCapsFontData() here and generalized.
510         (WebCore::SimpleFontData::smallCapsFontData): Adopted m_derivedFontData and scaledFontData().
511         (WebCore::SimpleFontData::emphasisMarkFontData): Added.
512
513         * platform/graphics/mac/ComplexTextController.cpp:
514         (WebCore::ComplexTextController::ComplexTextController): Added forTextEmphasis parameter.
515         (WebCore::ComplexTextController::collectComplexTextRuns): Updated for change to Font::glyphDataForCharacter().
516         (WebCore::ComplexTextController::adjustGlyphsAndAdvances): When used for text emphasis, replace glyphs with the zero glyph
517         if they should not receive an emphasis mark.
518
519         * platform/graphics/mac/ComplexTextController.h:
520
521         * platform/graphics/mac/FontComplexTextMac.cpp:
522         (WebCore::Font::getGlyphsAndAdvancesForComplexText): Moved much of the logic from drawComplexText()
523         into this new function, which also has a ForTextEmphasis parameter, which is passed along to the
524         ComplexTextController.
525         (WebCore::Font::drawComplexText): Left the drawing part here.
526         (WebCore::Font::drawEmphasisMarksForComplexText): Added.
527
528         * platform/graphics/mac/SimpleFontDataMac.mm:
529         (WebCore::SimpleFontData::platformDestroy): Adopted m_derivedFontData.
530         (WebCore::SimpleFontData::scaledFontData): Moved code from smallCapsFontData() here and generalized.
531         (WebCore::SimpleFontData::smallCapsFontData): Adopted m_derivedFontData and scaledFontData().
532         (WebCore::SimpleFontData::emphasisMarkFontData): Added.
533
534         * platform/graphics/pango/SimpleFontDataPango.cpp:
535         (WebCore::SimpleFontData::platformDestroy): Removed redundant clearing of derived font.
536         (WebCore::SimpleFontData::scaledFontData): Moved code from smallCapsFontData() here and generalized.
537         (WebCore::SimpleFontData::smallCapsFontData): Adopted m_derivedFontData and scaledFontData().
538         (WebCore::SimpleFontData::emphasisMarkFontData): Added.
539
540         * platform/graphics/qt/FontQt.cpp:
541         (WebCore::Font::emphasisMarkAscent): Added stub.
542         (WebCore::Font::emphasisMarkDescent): Ditto.
543         (WebCore::Font::emphasisMarkHeight): Ditto.
544         (WebCore::Font::drawEmphasisMarksForSimpleText): Ditto.
545         (WebCore::Font::drawEmphasisMarksForComplexText): Ditto.
546
547         * platform/graphics/win/FontWin.cpp:
548         (WebCore::Font::getGlyphsAndAdvancesForComplexText): Moved much of the logic from drawComplexText()
549         into this new function, which also has a ForTextEmphasis parameter. Currently returns an empty
550         glyph buffer for text emphasis.
551         (WebCore::Font::drawComplexText): Left the drawing part here.
552         (WebCore::Font::drawEmphasisMarksForComplexText): Added.
553
554         * platform/graphics/win/SimpleFontDataWin.cpp:
555         (WebCore::SimpleFontData::scaledFontData): Moved code from smallCapsFontData() here and generalized.
556         (WebCore::SimpleFontData::smallCapsFontData): Adopted m_derivedFontData and scaledFontData().
557         (WebCore::SimpleFontData::emphasisMarkFontData): Added.
558
559         * platform/graphics/win/UniscribeController.cpp:
560         (WebCore::UniscribeController::advance): Updated for change to Font::glyphDataForCharacter().
561
562         * platform/graphics/wince/FontWinCE.cpp:
563         (WebCore::Font::drawEmphasisMarksForComplexText): Added stub.
564
565         * platform/graphics/wince/SimpleFontDataWinCE.cpp:
566         (WebCore::SimpleFontData::platformDestroy): Removed redundant clearing of derived font.
567         (WebCore::SimpleFontData::scaledFontData): Moved code from smallCapsFontData() here and generalized.
568         (WebCore::SimpleFontData::smallCapsFontData): Adopted m_derivedFontData and scaledFontData().
569         (WebCore::SimpleFontData::emphasisMarkFontData): Added.
570
571         * platform/graphics/wx/FontWx.cpp:
572         (WebCore::Font::getGlyphsAndAdvancesForComplexText): Added stub.
573         (WebCore::Font::drawComplexText): Updated for removal of unused TextRun parameter to drawGlyphBuffer().
574         (WebCore::Font::drawEmphasisMarksForComplexText): Added.
575
576         * platform/graphics/wx/SimpleFontDataWx.cpp:
577         (WebCore::SimpleFontData::scaledFontData): Moved code from smallCapsFontData() here and generalized.
578         (WebCore::SimpleFontData::smallCapsFontData): Adopted m_derivedFontData and scaledFontData().
579         (WebCore::SimpleFontData::emphasisMarkFontData): Added.
580
581         * platform/text/CharacterNames.h: Added characters used in Font::canReceiveTextEmphasis().
582
583 2010-12-15  Beth Dakin  <bdakin@apple.com>
584
585         Reviewed by Darin Adler.
586
587         Fix for https://bugs.webkit.org/show_bug.cgi?id=51150 WebView's 
588         _scaleWebView SPI doesn't work on pages with compositing layers
589         -and corresponding-
590         <rdar://problem/8604713>
591
592         paintingGoesToWindow() should return false if the owning layer has 
593         a transform.
594         * rendering/RenderLayerBacking.cpp:
595         (WebCore::RenderLayerBacking::paintingGoesToWindow):
596
597         Use docWidth() and docHeight() instead of rightLayoutOverflow() and 
598         bottomLayoutOverflow() since docWidth/Height are now the preferred 
599         way to query physical dimensions of the document.
600         * rendering/RenderLayerCompositor.cpp:
601         (WebCore::RenderLayerCompositor::updateRootLayerPosition):
602
603 2010-12-15  Alex Bredariol Grilo  <abgrilo@profusion.mobi>
604
605         Reviewed by Eric Seidel.
606
607         [EFL] Fix timer calling time in SharedTimerEfl
608
609         No new features, so no tests added.
610
611         The usage of ecore_timer_loop_add instead of ecore_timer_add corrects
612         the problem that the timer is not called at the correct time. Since this
613         code runs in a single thread, all multiple thread operations were
614         removed.
615
616         * platform/efl/SharedTimerEfl.cpp:
617         (WebCore::stopSharedTimer):
618         (WebCore::addNewTimer):
619
620 2010-12-15  Andreas Kling  <andreas.kling@nokia.com>
621
622         Reviewed by Ariya Hidayat.
623
624         [Qt] StillImage::draw() shouldn't call setCompositionMode() unless the QPaintEngine has Porter-Duff composition
625         https://bugs.webkit.org/show_bug.cgi?id=49918
626
627         Go through GraphicsContext::setCompositeOperation() which does the check for us.
628
629         * platform/graphics/qt/StillImageQt.cpp:
630         (WebCore::StillImage::draw):
631
632 2010-12-15  Yong Li  <yoli@rim.com>
633
634         Reviewed by Darin Adler.
635
636         UTF-16 and its variants should be treated as Big Endian when BOM
637         is absent.
638         https://bugs.webkit.org/show_bug.cgi?id=51035
639
640         Test: fast/encoding/char-decoding.html (changed)
641
642         * platform/text/TextCodecUTF16.cpp:
643         (WebCore::TextCodecUTF16::registerEncodingNames):
644
645 2010-12-15  Simon Fraser  <simon.fraser@apple.com>
646
647         Reviewed by Chris Marrin.
648
649         Percentage Z values in 3d transform functions and transform-origin should cause the property to be invalid
650         https://bugs.webkit.org/show_bug.cgi?id=51070
651         
652         Treat as inavlid -webkit-transform values that include a percentage value in translateZ()
653         or in the third parameter to translate3d().
654
655         Test: transforms/3d/general/3dtransform-values.html
656
657         * css/CSSParser.cpp:
658         (WebCore::CSSParser::parseTransform):
659         (WebCore::CSSParser::parseTransformOrigin): Whitespace change.
660
661 2010-12-15  Simon Fraser  <simon.fraser@apple.com>
662
663         Reviewed by Chris Marrin.
664
665         Reflection does not render properly when -webkit-transform is toggled, untoggled, and retoggled
666         https://bugs.webkit.org/show_bug.cgi?id=50967
667         
668         If a reflection on a compositied, transformed element is toggled on, off and on,
669         then we pick up a cached layer clone that has the wrong transform set on it.
670         
671         The fix is to reset those properties on the layer clones that get changed
672         when the GraphicsLayer gains a structural layer (for reflection flattening).
673
674         Test: compositing/reflections/remove-add-reflection.html
675
676         * platform/graphics/ca/GraphicsLayerCA.cpp:
677         (WebCore::GraphicsLayerCA::ensureStructuralLayer):
678
679 2010-12-15  Timothy Hatcher  <timothy@apple.com>
680
681         Fix a regression where the Web Inspector console would be empty
682         if the Inspector is localized.
683
684         https://bugs.webkit.org/show_bug.cgi?id=51145
685
686         Reviewed by Joseph Pecoraro.
687
688         * inspector/front-end/ConsoleView.js:
689         (WebInspector.ConsoleView.createFilterElement): Add a label argument so the UI string
690         is separate from the classname. Code clean up.
691         (WebInspector.ConsoleView.prototype.filter): Remove toLowerCase and use string compare.
692         (WebInspector.ConsoleView): Pass separate classnames and labels to createFilterElement.
693
694 2010-12-15  Simon Fraser  <simon.fraser@apple.com>
695
696         Reviewed by Adele Peterson.
697
698         WebKit2 in compositing mode no longer has font smoothing
699         https://bugs.webkit.org/show_bug.cgi?id=50733
700
701         Only turn off font smoothing for layers whose contents are
702         not opaque. This allows the root GraphicsLayer in WebKit2 to
703         set the opaque flag, and get smoothed text.
704
705         * platform/graphics/mac/WebLayer.mm:
706         (drawLayerContents):
707
708 2010-12-15  Simon Fraser  <simon.fraser@apple.com>
709
710         Reviewed by Dan Bernstein.
711
712         Allow disabling of font smoothing in compositing layers to be overridden by style
713         https://bugs.webkit.org/show_bug.cgi?id=50732
714
715         Add methods to GraphicsContext to get and set font smoothing,
716         and have them be part of the graphics state.
717         
718         Fix Font::drawGlyphs() to allow the font's smoothing mode (from style)
719         to override the current smoothing mode of the context. The global
720         shouldUseSmoothing() still has final say.
721         
722         Turn off smoothing in compositing layers with this, rather than
723         the non-stateful 'allow' method.
724         
725         * manual-tests/compositing/font-smoothing.html: Added.
726         Manual test because DRT disables font smoothing.
727         
728         * platform/graphics/GraphicsContext.cpp:
729         (WebCore::GraphicsContext::setShouldSmoothFonts):
730         (WebCore::GraphicsContext::shouldSmoothFonts):
731         (WebCore::GraphicsContext::setPlatformShouldSmoothFonts):
732         * platform/graphics/GraphicsContext.h:
733         (WebCore::GraphicsContextState::GraphicsContextState):
734         * platform/graphics/cg/GraphicsContextCG.cpp:
735         (WebCore::GraphicsContext::setPlatformShouldSmoothFonts):
736         * platform/graphics/mac/FontMac.mm:
737         (WebCore::Font::drawGlyphs):
738         * platform/graphics/mac/WebLayer.mm:
739         (drawLayerContents):
740
741 2010-12-15  Matthew Delaney  <mdelaney@apple.com>
742
743         Reviewed by Simon Fraser.
744
745         IOSurface bounds checks on bytesPerRow and allocSize are incorrect
746         https://bugs.webkit.org/show_bug.cgi?id=51137
747
748         No new tests added. For those using this new functionality, many current canvas layout tests will now pass.
749
750         * platform/graphics/cg/ImageBufferCG.cpp:
751
752 2010-12-15  Kenneth Russell  <kbr@google.com>
753
754         Reviewed by James Robinson.
755
756         Web Audio API: port FFTFrame to MKL
757         https://bugs.webkit.org/show_bug.cgi?id=50986
758
759         Ported FFTFrame to Intel's MKL. This patch contains the port and
760         initial, though not complete, build system changes. Tested so far
761         with a unit test by Chris Rogers (which requires code changes to
762         AudioContext.cpp and is not being checked in). Further testing to
763         follow once layout tests are available for the Web Audio API.
764
765         * WebCore.gyp/WebCore.gyp:
766         * WebCore.gypi:
767         * platform/audio/FFTFrame.h:
768         * platform/audio/mkl: Added.
769         * platform/audio/mkl/FFTFrameMKL.cpp: Added.
770         (WebCore::FFTFrame::FFTFrame):
771         (WebCore::FFTFrame::~FFTFrame):
772         (WebCore::FFTFrame::multiply):
773         (WebCore::FFTFrame::doFFT):
774         (WebCore::FFTFrame::doInverseFFT):
775         (WebCore::FFTFrame::cleanup):
776         (WebCore::FFTFrame::realData):
777         (WebCore::FFTFrame::imagData):
778         (WebCore::FFTFrame::getUpToDateComplexData):
779         (WebCore::FFTFrame::descriptorHandleForSize):
780
781 2010-12-15  Yong Li  <yoli@rim.com>
782
783         Reviewed by Darin Adler.
784
785         Fix stack overflow when there are too many sibling inline boxes by using
786         a loop to traverse children instead of calling each sibling from the first child.
787         https://bugs.webkit.org/show_bug.cgi?id=48255
788
789         Test: fast/overflow/lots-of-sibling-inline-boxes.html
790
791         * rendering/InlineBox.h:
792         (WebCore::InlineBox::setConstructed):
793         (WebCore::InlineBox::next):
794         * rendering/InlineFlowBox.h:
795         (WebCore::InlineFlowBox::setConstructed):
796
797 2010-12-15  Sam Weinig  <sam@webkit.org>
798
799         Reviewed by Anders Carlsson.
800
801         WebKit2: Can't add files to an <input type=file>
802         https://bugs.webkit.org/show_bug.cgi?id=51087
803
804         Add exported function.
805
806         * WebCore.exp.in:
807
808 2010-12-15  Andreas Kling  <andreas.kling@nokia.com>
809
810         Reviewed by Antonio Gomes.
811
812         [Qt] screenIsMonochrome() is broken
813         https://bugs.webkit.org/show_bug.cgi?id=49957
814
815         * platform/qt/PlatformScreenQt.cpp:
816         (WebCore::screenIsMonochrome):
817
818 2010-12-15  Martin Robinson  <mrobinson@igalia.com>
819
820         Reviewed by Gustavo Noronha Silva.
821
822         [GTK] Move button rendering from gtk{2,3}drawing.cpp to RenderThemeGtk
823         https://bugs.webkit.org/show_bug.cgi?id=48486
824
825         Implement button rendering in RenderThemeGtk. The implementation
826         from gtk{2,3}drawing.cpp will be removed once menu list button rendering
827         is implemented in RenderThemeGtk as well.
828
829         No new tests, as this should not change functionality.
830
831         * platform/gtk/RenderThemeGtk.cpp:
832         (WebCore::RenderThemeGtk::paintButton): Add an implementation of button
833         rendering that uses WidgetRenderingContext.
834
835 2010-10-18  Martin Robinson  <mrobinson@igalia.com>
836
837         Reviewed by Gustavo Noronha Silva.
838
839         [GTK] Move input type=range rendering to RenderThemeGtk
840         https://bugs.webkit.org/show_bug.cgi?id=47836
841
842         Begin moving widget rendering out of the old Mozilla theme drawing code,
843         which should remove many lines of code when completed. WidgetRenderingContext
844         now hides the GTK+ 2 vs. 3 API differences, so that RenderThemeGtk can stay
845         version agnostic.
846
847         No new tests as this patch does not change functionality.
848
849         * platform/gtk/RenderThemeGtk.cpp:
850         (WebCore::RenderThemeGtk::RenderThemeGtk): gtkContainer() now returns a
851         GtkWidget, so update the cast here.
852         (WebCore::RenderThemeGtk::getGtkStateType): Added this helper which
853         converts a RenderObject state into a GtkStateType.
854         (WebCore::RenderThemeGtk::paintRenderObject): Removed work-arounds for
855         scale painting, as it's not handled by this method any longer.
856         (WebCore::RenderThemeGtk::paintSliderTrack): Updated to use
857         WidgetRenderingContext.
858         (WebCore::RenderThemeGtk::paintSliderThumb): Ditto.
859         (WebCore::RenderThemeGtk::adjustSliderThumbSize): Get the size
860         properties directly from the widget now instead of asking the Mozilla code.
861         (WebCore::RenderThemeGtk::setupWidgetAndAddToContainer): Added this
862         helper which reduces the amount of code quite a bit.
863         (WebCore::RenderThemeGtk::gtkContainer): Updated to use helper.
864         (WebCore::RenderThemeGtk::gtkButton): Ditto.
865         (WebCore::RenderThemeGtk::gtkEntry): Ditto.
866         (WebCore::RenderThemeGtk::gtkTreeView): Ditto.
867         (WebCore::RenderThemeGtk::gtkVScale): Added.
868         (WebCore::RenderThemeGtk::gtkHScale): Added.
869         (WebCore::RenderThemeGtk::platformColorsDidChange): Removed
870         GTK_CONTAINER cast.
871         * platform/gtk/RenderThemeGtk.h: Updated to add new GtkHScale and
872          GtkVScale members.
873         * platform/gtk/WidgetRenderingContext.h: Aded new methods to proxy
874         gtk_paint_box, gtk_paint_focus and gtk_paint_slider.
875         * platform/gtk/WidgetRenderingContextGtk2.cpp:
876         (WebCore::WidgetRenderingContext::gtkPaintBox): Added.
877         (WebCore::WidgetRenderingContext::gtkPaintFocus): Ditto.
878         (WebCore::WidgetRenderingContext::gtkPaintSlider): Ditto.
879         * platform/gtk/WidgetRenderingContextGtk3.cpp:
880         (WebCore::WidgetRenderingContext::gtkPaintBox): Ditto.
881         (WebCore::WidgetRenderingContext::gtkPaintFocus): Ditto.
882         (WebCore::WidgetRenderingContext::gtkPaintSlider): Ditto.
883         * platform/gtk/gtk2drawing.c: Removed defunct code!
884         (moz_gtk_get_widget_border):
885         (moz_gtk_widget_paint):
886         * platform/gtk/gtk3drawing.c: Ditto.
887         (moz_gtk_get_widget_border):
888         (moz_gtk_widget_paint):
889         * platform/gtk/gtkdrawing.h:
890
891 2010-12-15  Sheriff Bot  <webkit.review.bot@gmail.com>
892
893         Unreviewed, rolling out r74117.
894         http://trac.webkit.org/changeset/74117
895         https://bugs.webkit.org/show_bug.cgi?id=51113
896
897         This broke the GTK1 build. (Requested by mrobinson on
898         #webkit).
899
900         * GNUmakefile.am:
901         * platform/network/soup/cache/webkit/soup-cache.h:
902
903 2010-12-15  Jian Li  <jianli@chromium.org>
904
905         Unreviewed. Fixed a clang compiling error by making the forward
906         declaration of MediaPlayerFactory be consistent with the definition.
907
908         * platform/graphics/MediaPlayer.h:
909
910 2010-12-15  David Hyatt  <hyatt@apple.com>
911
912         Reviewed by Simon Fraser.
913
914         Rename pageY to pageLogicalOffset, since for vertical writing modes it is an x-position rather than a
915         y-position.
916
917         * rendering/LayoutState.cpp:
918         (WebCore::LayoutState::pageLogicalOffset):
919         (WebCore::LayoutState::addForcedColumnBreak):
920         * rendering/LayoutState.h:
921         * rendering/RenderBlock.cpp:
922         (WebCore::RenderBlock::layoutBlock):
923         (WebCore::RenderBlock::markForPaginationRelayoutIfNeeded):
924         (WebCore::RenderBlock::layoutColumns):
925         (WebCore::RenderBlock::setPageLogicalOffset):
926         * rendering/RenderBlock.h:
927         (WebCore::RenderBlock::pageLogicalOffset):
928         (WebCore::RenderBlock::RenderBlockRareData::RenderBlockRareData):
929         * rendering/RenderFlexibleBox.cpp:
930         (WebCore::RenderFlexibleBox::layoutBlock):
931         * rendering/RenderTable.cpp:
932         (WebCore::RenderTable::layout):
933         * rendering/RenderTableRow.cpp:
934         (WebCore::RenderTableRow::layout):
935         * rendering/RenderTableSection.cpp:
936         (WebCore::RenderTableSection::layoutRows):
937
938 2010-12-13  Pavel Podivilov  <podivilov@chromium.org>
939
940         Reviewed by Pavel Feldman.
941
942         Web Inspector: move scripts storage from ScriptsPanel to DebuggerModel.
943         https://bugs.webkit.org/show_bug.cgi?id=50908
944
945         * inspector/front-end/BreakpointManager.js:
946         (WebInspector.BreakpointManager):
947         (WebInspector.BreakpointManager.prototype._debuggerPaused):
948         * inspector/front-end/CallStackSidebarPane.js:
949         (WebInspector.CallStackSidebarPane):
950         (WebInspector.CallStackSidebarPane.prototype.update):
951         * inspector/front-end/DebuggerModel.js:
952         (WebInspector.DebuggerModel):
953         (WebInspector.DebuggerModel.prototype.setBreakpoint):
954         (WebInspector.DebuggerModel.prototype._setBreakpoint):
955         (WebInspector.DebuggerModel.prototype.scriptForSourceID):
956         (WebInspector.DebuggerModel.prototype.scriptsForURL):
957         (WebInspector.DebuggerModel.prototype.queryScripts):
958         (WebInspector.DebuggerModel.prototype.parsedScriptSource):
959         (WebInspector.DebuggerModel.prototype.failedToParseScriptSource):
960         (WebInspector.DebuggerModel.prototype.breakpointRestored):
961         (WebInspector.DebuggerModel.prototype.debuggerPaused):
962         (WebInspector.DebuggerModel.prototype.debuggerResumed):
963         * inspector/front-end/Resource.js:
964         * inspector/front-end/ScriptsPanel.js:
965         (WebInspector.ScriptsPanel): eliminate sourceIDMap
966         * inspector/front-end/SourceFrame.js:
967         (WebInspector.SourceFrame.prototype._createViewerIfNeeded):
968         (WebInspector.SourceFrame.prototype._setBreakpoint):
969         * inspector/front-end/SourceView.js:
970         (WebInspector.SourceView):
971         * inspector/front-end/inspector.js:
972         (WebInspector.createJSBreakpointsSidebarPane):
973         (WebInspector.parsedScriptSource):
974         (WebInspector.failedToParseScriptSource):
975
976 2010-12-15  Eric Carlson  <eric.carlson@apple.com>
977
978         Reviewed by Darin Adler.
979
980         MediaPlayer should try all installed media engines
981         https://bugs.webkit.org/show_bug.cgi?id=50209
982
983         * platform/graphics/MediaPlayer.cpp:
984         (WebCore::bestMediaEngineForTypeAndCodecs): Rename from chooseBestEngineForTypeAndCodecs. Take optional
985         parameter for current engine. 
986         (WebCore::nextMediaEngine): New, return the next media engine in the list.
987         (WebCore::MediaPlayer::MediaPlayer): Initialize reload timer.
988         (WebCore::MediaPlayer::load): Store url, mime type, and codecs parameter in member variables.
989         (WebCore::MediaPlayer::loadWithNextMediaEngine): New, initiate loading with the next media engine.
990         (WebCore::MediaPlayer::supportsType): Make contentType parameter const.
991         (WebCore::MediaPlayer::reloadTimerFired): New, call loadWithNextMediaEngine.
992         (WebCore::MediaPlayer::networkStateChanged): If network state signals a failure and the file's
993         metadata has not loaded, give the next installed engine a try.
994         * platform/graphics/MediaPlayer.h:
995
996 2010-12-15  Amruth Raj  <amruthraj@motorola.com> and Ravi Kasibhatla  <ravi.kasibhatla@motorola.com>
997
998         Reviewed by Martin Robinson.
999
1000         Changes to enable building WebKit2 for Gtk port
1001         (https://bugs.webkit.org/show_bug.cgi?id=37369)
1002
1003         No new functionality added or deleted. Only makefile change. Hence, no tests added.
1004
1005         * GNUmakefile.am: Removed bindings/gobject from webcore_sources & webcore_cppflags and added them to WebKit/gtk/GNUmakefile.am
1006         * platform/network/soup/cache/webkit/soup-cache.h: Remove include <webkit/webkitdefines.h> and declare WEBKIT_API directly
1007
1008 2010-12-15  Jarred Nicholls  <jarred@sencha.com>
1009
1010         Reviewed by Andreas Kling.
1011
1012         [Qt] Implement the File API spec
1013         https://bugs.webkit.org/show_bug.cgi?id=49839
1014
1015         No new tests. fast/files tests work when manually operated.
1016         They do not automatically work due to Qt's inability to handle multi-file
1017         inputs (https://bugs.webkit.org/show_bug.cgi?id=22048) as well as Qt's DRT
1018         is missing an eventSender.beginDragWithFiles implementation.
1019
1020         * WebCore.pri:
1021         * WebCore.pro:
1022         * features.pri:
1023         * platform/qt/FileSystemQt.cpp:
1024         (WebCore::directoryName):
1025         (WebCore::readFromFile):
1026         (WebCore::seekFile):
1027
1028 2010-12-14  Antti Koivisto  <antti@apple.com>
1029
1030         Reviewed by Alexey Proskuryakov.
1031
1032         https://bugs.webkit.org/show_bug.cgi?id=49548
1033         WebCore cache stores duplicate copies of subresources with URL fragments
1034         
1035         - Strip fragment identifiers from HTTP and file URLs for the memory cache.
1036         - Changed some CachedResourceLoader and MemoryCache interfaces to use KURLs
1037           instead of strings to reduce repeated URL parsing.
1038
1039         Test: http/tests/cache/subresource-fragment-identifier.html
1040
1041         * inspector/InspectorResourceAgent.cpp:
1042         (WebCore::InspectorResourceAgent::cachedResource):
1043         * loader/FrameLoader.cpp:
1044         (WebCore::FrameLoader::tellClientAboutPastMemoryCacheLoads):
1045         * loader/cache/CachedResource.cpp:
1046         (WebCore::CachedResource::~CachedResource):
1047         * loader/cache/CachedResourceLoader.cpp:
1048         (WebCore::CachedResourceLoader::cachedResource):
1049         (WebCore::CachedResourceLoader::checkForReload):
1050         (WebCore::CachedResourceLoader::requestUserCSSStyleSheet):
1051         (WebCore::CachedResourceLoader::requestResource):
1052         * loader/cache/CachedResourceLoader.h:
1053         * loader/cache/MemoryCache.cpp:
1054         (WebCore::MemoryCache::requestResource):
1055         (WebCore::MemoryCache::requestUserCSSStyleSheet):
1056         (WebCore::MemoryCache::removeFragmentIdentifierIfNeeded):
1057         (WebCore::MemoryCache::resourceForURL):
1058         * loader/cache/MemoryCache.h:
1059
1060 2010-12-15  Anton Muhin  <antonm@chromium.org>
1061
1062         Reviewed by David Levin.
1063
1064         [v8] Next round of CSS GC story: proper grouping of CSSStyleDeclarations
1065         https://bugs.webkit.org/show_bug.cgi?id=50965
1066
1067         * bindings/v8/V8GCController.cpp:
1068         (WebCore::DOMObjectGrouperVisitor::visitDOMWrapper):
1069         (WebCore::DOMObjectGrouperVisitor::addAllItems):
1070
1071 2010-12-13  Pavel Podivilov  <podivilov@chromium.org>
1072
1073         Reviewed by Yury Semikhatsky.
1074
1075         Web Inspector: push persistent breakpoints into backend state cookie so they hit on navigation.
1076         https://bugs.webkit.org/show_bug.cgi?id=48858
1077
1078         BreakpointManager pushes all persistent breakpoints to backend when loaded.
1079         InspectorController restores sticky breakpoints from cookie on navigation.
1080
1081         * inspector/Inspector.idl:
1082         * inspector/InspectorController.cpp:
1083         (WebCore::InspectorController::InspectorController):
1084         (WebCore::InspectorController::disconnectFrontend):
1085         (WebCore::InspectorController::didCommitLoad):
1086         (WebCore::InspectorController::setStickyBreakpoints):
1087         (WebCore::InspectorController::restoreStickyBreakpoints):
1088         (WebCore::InspectorController::restoreStickyBreakpoint):
1089         * inspector/InspectorController.h:
1090         * inspector/InspectorState.cpp:
1091         (WebCore::InspectorState::InspectorState):
1092         (WebCore::InspectorState::getObject):
1093         (WebCore::InspectorState::setObject):
1094         (WebCore::InspectorState::registerObject):
1095         * inspector/InspectorState.h:
1096         * inspector/front-end/BreakpointManager.js:
1097         (WebInspector.BreakpointManager):
1098         * inspector/front-end/BreakpointsSidebarPane.js:
1099         (WebInspector.BreakpointsSidebarPane):
1100         (WebInspector.BreakpointsSidebarPane.prototype._removeListElement):
1101         (WebInspector.BreakpointsSidebarPane.prototype._projectChanged):
1102         (WebInspector.EventListenerBreakpointsSidebarPane):
1103         (WebInspector.EventListenerBreakpointsSidebarPane.prototype._createCategory):
1104         (WebInspector.EventListenerBreakpointsSidebarPane.prototype._breakpointAdded):
1105         (WebInspector.EventListenerBreakpointsSidebarPane.prototype._projectChanged):
1106         * inspector/front-end/CallStackSidebarPane.js:
1107         (WebInspector.CallStackSidebarPane):
1108         * inspector/front-end/ElementsPanel.js:
1109         (WebInspector.ElementsPanel.prototype.reset):
1110         * inspector/front-end/ScriptsPanel.js:
1111         (WebInspector.ScriptsPanel.prototype.reset):
1112         * inspector/front-end/Settings.js:
1113         (WebInspector.Settings.prototype.inspectedURLChanged):
1114         (WebInspector.Settings.prototype.get projectId):
1115         (WebInspector.Settings.prototype.findSettingForAllProjects):
1116         (WebInspector.Settings.prototype._formatProjectKey):
1117         * inspector/front-end/inspector.js:
1118         (WebInspector.createDOMBreakpointsSidebarPane):
1119         (WebInspector.createXHRBreakpointsSidebarPane):
1120         (WebInspector.reset):
1121         (WebInspector.inspectedURLChanged):
1122
1123 2010-12-15  Mario Sanchez Prada  <msanchez@igalia.com>
1124
1125         Unreviewed, fix compilation warnings after r74066.
1126
1127         * rendering/RenderBox.cpp:
1128         (WebCore::layersUseImage): Place this static function between the
1129         same if-def region used in the only place where it's called from.
1130
1131 2010-12-15  Emil Eklund  <eae@chromium.org>
1132
1133         Reviewed by Adam Barth.
1134
1135         Change ContainerNode::willRemoveChildren to not fire mutation events for children
1136         added as a result of a mutation event, thereby avoiding an infinite loop.
1137         https://bugs.webkit.org/show_bug.cgi?id=51079
1138
1139         Test: fast/dom/containerNode.html
1140
1141         * dom/ContainerNode.cpp:
1142         (WebCore::willRemoveChildren): Don't fire mutation events for children added during a mutation event.
1143
1144 2010-12-14  Dan Bernstein  <mitz@apple.com>
1145
1146         Reviewed by Maciej Stachowiak.
1147
1148         <rdar://problem/8767193> REGRESSION (r60822): caps-lock-indicator is accepted as a -webkit-appearance value
1149         https://bugs.webkit.org/show_bug.cgi?id=51096
1150
1151         Test: fast/css/appearance-caps-lock-indicator.html
1152
1153         * css/CSSValueKeywords.in: Moved caps-lock-indicator outside the range of values that should be
1154         accepted by the parser, and added comments about maintaining the list of appearance values.
1155         * platform/ThemeTypes.h: Moved CapsLockIndicatorPart to the end of the ControlPart enum.
1156
1157 2010-12-14  takano takumi  <takano@apple.com>
1158
1159         Reviewed by Dan Bernstein.
1160
1161         text-combine value names have been changed in the css3 proposal.
1162         https://bugs.webkit.org/show_bug.cgi?id=51089
1163
1164         Changed text-combine's value names from "none|cluster|upright" to "none|horizontal".
1165
1166         * css/CSSParser.cpp: Changed value name.
1167         (WebCore::CSSParser::parseValue):
1168         * css/CSSPrimitiveValueMappings.h: Changed value name.
1169         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
1170         (WebCore::CSSPrimitiveValue::operator TextCombine):
1171         * css/CSSValueKeywords.in: No more text-combine specific values needed since
1172         "horizontal" is already there.
1173         * rendering/style/RenderStyleConstants.h: Changed value name.
1174         * rendering/style/StyleRareNonInheritedData.h: Changed textCombine field size.
1175
1176 2010-12-14  Koan-Sin Tan  <koansin.tan@gmail.com>
1177
1178         Reviewed by Alexey Proskuryakov.
1179
1180         Kana should be part of CJK Ideographs in WebCore/platform/graphics/Font.cpp
1181         https://bugs.webkit.org/show_bug.cgi?id=51012
1182
1183         Kana should be displayed correctly in vertical text with broken font.
1184
1185         Test: fast/blockflow/japanese-rl-text-with-broken-font.html
1186
1187         * platform/graphics/Font.cpp:
1188         (WebCore::Font::isCJKIdeographOrSymbol): add katakana, hiraganna, and Halfwidth and Fullwidth Forms
1189
1190 2010-12-14  Dan Bernstein  <mitz@apple.com>
1191
1192         Reviewed by Sam Weinig.
1193
1194         Additional RenderStyle support for the text-emphasis CSS property
1195         Part of <rdar://problem/7720300> Support the CSS3 text-emphasis property
1196         https://bugs.webkit.org/show_bug.cgi?id=48539
1197
1198         No test possible, since this is just adding a function to be used by upcoming patches.
1199
1200         * platform/text/CharacterNames.h: Added characters used as emphasis marks.
1201         * rendering/style/RenderStyle.cpp:
1202         (WebCore::RenderStyle::textEmphasisMarkString): Added. Returns a string containing the
1203         emphasis mark, or the null AtomicString if there is none.
1204         * rendering/style/RenderStyle.h:
1205
1206 2010-12-14  Anton D'Auria  <adauria@apple.com>
1207
1208         Reviewed by Darin Adler.
1209
1210         Do not allow access to existing HTML5 databases in private browsing
1211         mode https://bugs.webkit.org/show_bug.cgi?id=49332
1212
1213         Test: storage/private-browsing-noread-nowrite.html
1214
1215         Previously, read-only transactions and private browsing mode were
1216         represented by the same SQLStatement and DatabaseAuthorizer states.
1217         This patch removes the m_readOnly member variable from SQLStatement and
1218         DatabaseAuthorizer, and replaces it with m_permissions whose bit fields
1219         are initialized by a DatabaseAuthorizer enum Permissions (ReadWrite,
1220         ReadOnly, NoAccess). A read-only transaction sets permissions to
1221         ReadOnly, and if !m_database->scriptExecutionContext()->allowDatabaseAccess(),
1222         then permissions also set to NoAccess.
1223
1224         * dom/Document.cpp:
1225         (WebCore::Document::allowDatabaseAccess): this method was previously
1226         called isDatabaseReadOnly. It checks if private browsing preference is
1227         set. This method is renamed because it is used to check if private
1228         browsing restricts access to databases.
1229         * dom/Document.h:
1230         * dom/ScriptExecutionContext.h:
1231         * storage/AbstractDatabase.cpp:
1232         (WebCore::AbstractDatabase::setAuthorizerPermissions):
1233         * storage/AbstractDatabase.h:
1234         * storage/DatabaseAuthorizer.cpp:
1235         (WebCore::DatabaseAuthorizer::reset):
1236         (WebCore::DatabaseAuthorizer::createTable):
1237         (WebCore::DatabaseAuthorizer::createTempTable):
1238         (WebCore::DatabaseAuthorizer::dropTable):
1239         (WebCore::DatabaseAuthorizer::dropTempTable):
1240         (WebCore::DatabaseAuthorizer::allowAlterTable):
1241         (WebCore::DatabaseAuthorizer::createIndex):
1242         (WebCore::DatabaseAuthorizer::createTempIndex):
1243         (WebCore::DatabaseAuthorizer::dropIndex):
1244         (WebCore::DatabaseAuthorizer::dropTempIndex):
1245         (WebCore::DatabaseAuthorizer::createTrigger):
1246         (WebCore::DatabaseAuthorizer::createTempTrigger):
1247         (WebCore::DatabaseAuthorizer::dropTrigger):
1248         (WebCore::DatabaseAuthorizer::dropTempTrigger):
1249         (WebCore::DatabaseAuthorizer::createView):
1250         (WebCore::DatabaseAuthorizer::createTempView):
1251         (WebCore::DatabaseAuthorizer::dropView):
1252         (WebCore::DatabaseAuthorizer::dropTempView):
1253         (WebCore::DatabaseAuthorizer::createVTable):
1254         (WebCore::DatabaseAuthorizer::dropVTable):
1255         (WebCore::DatabaseAuthorizer::allowDelete):
1256         (WebCore::DatabaseAuthorizer::allowInsert):
1257         (WebCore::DatabaseAuthorizer::allowUpdate):
1258         (WebCore::DatabaseAuthorizer::allowRead):
1259         (WebCore::DatabaseAuthorizer::allowReindex):
1260         (WebCore::DatabaseAuthorizer::allowWrite): a new private method that
1261         checks if DatabaseAuthorizer is enabled and if it is in ReadOnly or
1262         NoAccess mode.
1263         (WebCore::DatabaseAuthorizer::setReadOnly):
1264         (WebCore::DatabaseAuthorizer::setPermissions):
1265         * storage/DatabaseAuthorizer.h:
1266         * storage/SQLStatement.cpp:
1267         (WebCore::SQLStatement::create):
1268         (WebCore::SQLStatement::SQLStatement):
1269         (WebCore::SQLStatement::execute):
1270         * storage/SQLStatement.h:
1271         * storage/SQLStatementSync.cpp:
1272         (WebCore::SQLStatementSync::SQLStatementSync):
1273         (WebCore::SQLStatementSync::execute):
1274         * storage/SQLStatementSync.h:
1275         * storage/SQLTransaction.cpp:
1276         (WebCore::SQLTransaction::executeSQL):
1277         * storage/SQLTransactionSync.cpp:
1278         (WebCore::SQLTransactionSync::executeSQL):
1279         * workers/WorkerContext.h:
1280         (WebCore::WorkerContext::allowDatabaseAccess):
1281
1282 2010-12-02  MORITA Hajime  <morrita@google.com>
1283
1284         Reviewed by Dimitri Glazkov.
1285
1286         [chromium] Fix drawing of inset box shadows
1287         https://bugs.webkit.org/show_bug.cgi?id=41576
1288
1289         When clearing outside clipped path, the context contains unexpected transform.
1290         Fixed to restore original state before the clear.
1291
1292         * platform/graphics/skia/PlatformContextSkia.cpp:
1293         (WebCore::PlatformContextSkia::clipPathAntiAliased):
1294         (WebCore::PlatformContextSkia::applyAntiAliasedClipPaths):
1295
1296 2010-12-14  Anders Carlsson  <andersca@apple.com>
1297
1298         Reviewed by Sam Weinig.
1299
1300         Mouse Events Not Received in Run Applet in their Own Process Mode
1301         https://bugs.webkit.org/show_bug.cgi?id=51078
1302         <rdar://problem/8333491>
1303
1304         Make sure that Widget::handleEvent is called for applets as well.
1305
1306         * html/HTMLAppletElement.cpp:
1307         (WebCore::HTMLAppletElement::defaultEventHandler):
1308         * html/HTMLAppletElement.h:
1309
1310 2010-12-14  Simon Fraser  <simon.fraser@apple.com>
1311
1312         Reviewed by Chris Marrin.
1313
1314         Parts of page disappear
1315         https://bugs.webkit.org/show_bug.cgi?id=41701
1316         
1317         The page has text-indent: -1000000px on an element that becomes
1318         compositing, causing a huge tiled layer to get created.
1319         
1320         r63452 aimed to fix this by clamping layer bounds to the viewport,
1321         but did not do so for pages running accelerated animations (since
1322         we don't want to clamp for transform animations). However, this
1323         page only has an opacity animation.
1324         
1325         So refine the logic added for r63452 to only call setCompositingConsultsOverlap(false)
1326         for transform animations.
1327
1328         Test: compositing/geometry/limit-layer-bounds-opacity-transition.html
1329
1330         * rendering/RenderLayerBacking.cpp:
1331         (WebCore::RenderLayerBacking::startAnimation): call didStartAcceleratedAnimation()
1332         with the appropriate properties, and clean up confusing logic that was used to
1333         compute the return value. We want to return true if either property is accelerated.
1334
1335         (WebCore::RenderLayerBacking::startTransition): Call didStartAcceleratedAnimation()
1336         with the appropriate property.
1337         
1338         * rendering/RenderLayerCompositor.h:
1339         * rendering/RenderLayerCompositor.cpp:
1340         (WebCore::RenderLayerCompositor::didStartAcceleratedAnimation): Pass the property in,
1341         and only turn off overlap testing if we see a transform animation.
1342
1343 2010-12-14  Brady Eidson  <beidson@apple.com>
1344
1345         Reviewed by Alexey Proskuryakov.
1346
1347         <rdar://problem/8225016> and https://bugs.webkit.org/show_bug.cgi?id=40138
1348         Authorization header is sent from an HTTP Auth protected site on redirect
1349         Test: http/tests/misc/authentication-sent-to-redirect.html
1350
1351         Add helper to clear the Auth headers from a resource request:
1352         * platform/network/ResourceRequestBase.cpp:
1353         (WebCore::ResourceRequestBase::clearHTTPAuthorization):
1354         * platform/network/ResourceRequestBase.h:
1355
1356         Only Mac and Windows CFNetwork ports seem to have this problem, so plug it for them:
1357         * platform/network/cf/ResourceHandleCFNet.cpp:
1358         (WebCore::ResourceHandle::willSendRequest):
1359         * platform/network/mac/ResourceHandleMac.mm:
1360         (WebCore::ResourceHandle::willSendRequest):
1361
1362 2010-12-14  Simon Fraser  <simon.fraser@apple.com>
1363
1364         Reviewed by Chris Marrin.
1365
1366         Crash in WebCore::GraphicsLayer::paintGraphicsLayerContents() loading this URL
1367         https://bugs.webkit.org/show_bug.cgi?id=51072
1368
1369         Fix a crash when painting a layer whose PlatformCALayer has been deleted,
1370         by clearing the PlatformCALayer value on the CALayer when the PlatformCALayer
1371         is destroyed.
1372         
1373         I was not able to reduce the page to a simple testcase.
1374
1375         * platform/graphics/ca/mac/PlatformCALayerMac.mm:
1376         (PlatformCALayer::~PlatformCALayer):
1377
1378 2010-12-14  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
1379
1380         Unreviewed, build fix.
1381
1382         [Qt] Fix the list of header files in WebCore.pro after r74049.
1383
1384         No new tests as there is no new functionality.
1385
1386         * WebCore.pro:
1387
1388 2010-12-14  Yael Aharon  <yael.aharon@nokia.com>
1389
1390         Reviewed by Andreas Kling.
1391
1392         [Qt] Focus rings are ugly, rects should be united instead of drawn individually
1393         https://bugs.webkit.org/show_bug.cgi?id=49953
1394
1395         Create a QPainterPath and add to it the focus rects, one at a time.
1396         Combine the 2 drawFocusRing functions into one function drawFocusRingForPath.
1397
1398         Tests: fast/css/focus-ring-detached.html
1399                fast/css/focus-ring-multiline.html
1400
1401         * platform/graphics/qt/GraphicsContextQt.cpp:
1402         (WebCore::drawFocusRingForPath):
1403         (WebCore::GraphicsContext::drawFocusRing):
1404
1405 2010-12-14  Mark Rowe  <mrowe@apple.com>
1406
1407         Fix the Qt build.
1408
1409         * xml/XSLTProcessorQt.cpp:
1410         (WebCore::XSLTProcessor::transformToString): Make the conversion to QString explicit
1411         since QVariant can be constructed from either a QString or a bool.
1412
1413 2010-12-14  Simon Fraser  <simon.fraser@apple.com>
1414
1415         Reviewed by Dan Bernstein.
1416
1417         compositing/masks/simple-composited-mask.html failure
1418         https://bugs.webkit.org/show_bug.cgi?id=49746
1419
1420         Geometry of composited layers with a mask depends on the loading
1421         of the mask image, since maskClipRect() is used for the layer bounds.
1422         
1423         So when RenderBox::imageChanged() is called for an image used by
1424         a mask on a layer with a composited mask, call the newly-renamed
1425         layer->contentsChanged() method. This percolates down into RenderLayerBacking,
1426         ending in a layer geometry update.
1427         
1428         Renamed RenderLayer::rendereContentsChanged() to contentsChanged() and added
1429         an enum to say what changed, for somewhat more efficient updating.
1430         
1431         Also, when the mask layer gets resized, make sure we mark it as needing
1432         display.
1433         
1434         Tested by pixel result of compositing/masks/simple-composited-mask.html
1435
1436         * html/canvas/CanvasRenderingContext2D.cpp:
1437         (WebCore::CanvasRenderingContext2D::didDraw):
1438         * html/canvas/WebGLRenderingContext.cpp:
1439         (WebCore::WebGLRenderingContext::markContextChanged):
1440         (WebCore::WebGLRenderingContext::reshape):
1441         * rendering/RenderBox.cpp:
1442         (WebCore::layersUseImage):
1443         (WebCore::RenderBox::imageChanged):
1444         * rendering/RenderImage.cpp:
1445         (WebCore::RenderImage::imageDimensionsChanged):
1446         (WebCore::RenderImage::notifyFinished):
1447         * rendering/RenderLayer.cpp:
1448         (WebCore::RenderLayer::contentChanged):
1449         * rendering/RenderLayer.h:
1450         * rendering/RenderLayerBacking.cpp:
1451         (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
1452         (WebCore::RenderLayerBacking::contentChanged):
1453         * rendering/RenderLayerBacking.h:
1454         * rendering/RenderVideo.cpp:
1455         (WebCore::RenderVideo::updatePlayer):
1456
1457 2010-12-14  Mark Rowe  <mrowe@apple.com>
1458
1459         Reviewed by Sam Weinig.
1460
1461         <http://webkit.org/b/51064> Reproducible crash inside WebCore::MediaPlayerPrivateQTKit::createQTMovie when loading <video>
1462
1463         We were crashing inside MediaPlayerPrivateQTKit::createQTMovie as we were passing a null URL in
1464         to CFNetworkCopyProxiesForURL. This happened because we were null-checking the URL incorrectly.
1465
1466         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
1467         (WebCore::MediaPlayerPrivateQTKit::resumeLoad): Explicitly test for a null string.
1468
1469 2010-12-14  David Hyatt  <hyatt@apple.com>
1470
1471         Reviewed by Dan Bernstein.
1472
1473         https://bugs.webkit.org/show_bug.cgi?id=50970
1474         
1475         It's arguably a bug, but we don't let inline flow layers paint floating
1476         descendants.  The containing block of the inline flow paints them instead.
1477         However our shouldPaint logic has always been flawed and has turned off propagation
1478         of painting when an inline flow layer is enclosing the float.
1479         
1480         Change enclosingSelfPaintingLayer to enclosingFloatPaintingLayer to be more precise
1481         and for now limit it to RenderBoxes. 
1482         
1483         Added fast/block/float/floatstack.html
1484
1485         * rendering/RenderBlock.cpp:
1486         (WebCore::RenderBlock::addOverhangingFloats):
1487         * rendering/RenderBox.cpp:
1488         (WebCore::RenderBox::enclosingFloatPaintingLayer):
1489         * rendering/RenderBox.h:
1490         * rendering/RenderObject.cpp:
1491         * rendering/RenderObject.h:
1492
1493 2010-12-14  Mihai Parparita  <mihaip@chromium.org>
1494
1495         Reviewed by Dimitri Glazkov.
1496
1497         Move asynchronous event dispatching out of Document
1498         https://bugs.webkit.org/show_bug.cgi?id=49785
1499         
1500         Move asynchonous event code out of Document and into a standalone
1501         EventQueue class (which supports async events for both regular nodes
1502         and the window object).
1503
1504         No new tests necessary, since no new functionality is exposed (existing
1505         layout tests pass).
1506
1507         * Android.mk:
1508         * CMakeLists.txt:
1509         * GNUmakefile.am:
1510         * WebCore.gypi:
1511         * WebCore.pro:
1512         * WebCore.vcproj/WebCore.vcproj:
1513         * WebCore.xcodeproj/project.pbxproj:
1514         * dom/Document.cpp:
1515         (WebCore::Document::Document):
1516         (WebCore::Document::enqueueWindowEvent):
1517         (WebCore::Document::enqueueHashchangeEvent):
1518         * dom/DOMAllInOne.cpp:
1519         (WebCore::Document::eventQueue):
1520         * dom/Document.h:
1521         * dom/EventQueue.cpp: Added.
1522         (WebCore::EventQueue::EventQueue):
1523         (WebCore::EventQueue::enqueueEvent):
1524         (WebCore::EventQueue::pendingEventTimerFired):
1525         (WebCore::EventQueue::dispatchEvent):
1526         * dom/EventQueue.h: Added.
1527         * storage/StorageEventDispatcher.cpp:
1528         (WebCore::StorageEventDispatcher::dispatch):
1529
1530 2010-12-14  Kyounga Ra  <kyounga.ra@gmail.com>
1531
1532         Reviewed by Adam Barth.
1533
1534         <noscript> is rendered with enabled XHTMLMP.
1535         https://bugs.webkit.org/show_bug.cgi?id=48493
1536
1537         * html/HTMLElement.cpp:
1538         (WebCore::HTMLElement::rendererIsNeeded):
1539
1540 2010-12-14  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
1541
1542         Reviewed by Eric Seidel.
1543
1544         [Qt] [Symbian] Do not use pkg-config on Symbian as it is not supported
1545         https://bugs.webkit.org/show_bug.cgi?id=50231
1546
1547         No new tests as there is no new functionality.
1548
1549         Guard CONFIG+=link_pkgconfig with !symbian.
1550
1551         * WebCore.pro:
1552
1553 2010-12-14  Sheriff Bot  <webkit.review.bot@gmail.com>
1554
1555         Unreviewed, rolling out r74040.
1556         http://trac.webkit.org/changeset/74040
1557         https://bugs.webkit.org/show_bug.cgi?id=51050
1558
1559         Breaks 2d.shadow.canvas.transparent.2 and
1560         2d.shadow.image.transparent.2 (Requested by helder on
1561         #webkit).
1562
1563         * platform/graphics/ContextShadow.cpp:
1564         (WebCore::ContextShadow::ContextShadow):
1565         (WebCore::ContextShadow::calculateLayerBoundingRect):
1566         * platform/graphics/ContextShadow.h:
1567         (WebCore::ContextShadow::offset):
1568         * platform/graphics/qt/ContextShadowQt.cpp:
1569         (WebCore::ContextShadow::beginShadowLayer):
1570         (WebCore::ContextShadow::endShadowLayer):
1571         * platform/graphics/qt/GraphicsContextQt.cpp:
1572         (WebCore::GraphicsContext::fillPath):
1573         (WebCore::GraphicsContext::strokePath):
1574         (WebCore::GraphicsContext::fillRect):
1575         (WebCore::GraphicsContext::fillRoundedRect):
1576         (WebCore::GraphicsContext::setPlatformShadow):
1577
1578 2010-12-14  Nate Chapin  <japhet@chromium.org>
1579
1580         Unreviewed, fixing qt (hopefully for real this time).
1581
1582         Remove a couple more references to loader.h.
1583
1584         * xml/XSLStyleSheetQt.cpp:
1585         * xml/XSLTProcessorQt.cpp:
1586
1587 2010-12-14  Nate Chapin  <japhet@chromium.org>
1588
1589         Unreviewed, fix mac and qt builds.
1590
1591         Missed a couple of references to loader.h and
1592         improperly added CachedResourceRequest.h to
1593         WebCore.xcodeproj.
1594
1595         * WebCore.xcodeproj/project.pbxproj:
1596         * platform/android/TemporaryLinkStubs.cpp:
1597         * platform/qt/TemporaryLinkStubsQt.cpp:
1598
1599 2010-12-14  Nate Chapin  <japhet@chromium.org>
1600
1601         Reviewed by Adam Barth.
1602
1603         Rename Loader to CachedResourceRequest.
1604         https://bugs.webkit.org/show_bug.cgi?id=50848
1605
1606         No new tests, rename only.
1607
1608         * Android.mk:
1609         * CMakeLists.txt:
1610         * GNUmakefile.am:
1611         * WebCore.gypi:
1612         * WebCore.pro:
1613         * WebCore.vcproj/WebCore.vcproj:
1614         * WebCore.xcodeproj/project.pbxproj:
1615         * css/CSSStyleSelector.cpp:
1616         * loader/cache/CachedCSSStyleSheet.cpp:
1617         * loader/cache/CachedFont.cpp:
1618         * loader/cache/CachedResource.cpp:
1619         (WebCore::CachedResource::setRequest):
1620         * loader/cache/CachedResource.h:
1621         * loader/cache/CachedResourceLoader.cpp:
1622         (WebCore::CachedResourceLoader::load):
1623         (WebCore::CachedResourceLoader::loadDone):
1624         (WebCore::CachedResourceLoader::cancelRequests):
1625         * loader/cache/CachedResourceLoader.h:
1626         * loader/cache/CachedResourceRequest.cpp: Copied from WebCore/loader/loader.cpp.
1627         * loader/cache/CachedResourceRequest.h: Copied from WebCore/loader/loader.h.
1628         * loader/loader.cpp: Removed.
1629         * loader/loader.h: Removed.
1630         * xml/XSLStyleSheetLibxslt.cpp:
1631         * xml/XSLTProcessor.cpp:
1632         * xml/XSLTProcessorLibxslt.cpp:
1633
1634 2010-12-14  David Hyatt  <hyatt@apple.com>
1635
1636         Reviewed by Tim Hatcher.
1637
1638         https://bugs.webkit.org/show_bug.cgi?id=46422
1639
1640         Rename pageHeight variables and members in WebCore to pageLogicalHeight in preparation for
1641         making printing and pagination work with vertical writing modes.
1642
1643         * page/FrameView.cpp:
1644         (WebCore::FrameView::forceLayoutForPagination):
1645         * rendering/LayoutState.cpp:
1646         (WebCore::LayoutState::LayoutState):
1647         (WebCore::LayoutState::clearPaginationInformation):
1648         * rendering/LayoutState.h:
1649         (WebCore::LayoutState::LayoutState):
1650         (WebCore::LayoutState::isPaginated):
1651         (WebCore::LayoutState::pageLogicalHeight):
1652         (WebCore::LayoutState::pageLogicalHeightChanged):
1653         * rendering/RenderBlock.cpp:
1654         (WebCore::RenderBlock::layoutBlock):
1655         (WebCore::RenderBlock::markForPaginationRelayoutIfNeeded):
1656         (WebCore::RenderBlock::insertFloatingObject):
1657         (WebCore::RenderBlock::layoutColumns):
1658         (WebCore::RenderBlock::nextPageTop):
1659         (WebCore::RenderBlock::applyBeforeBreak):
1660         (WebCore::RenderBlock::applyAfterBreak):
1661         (WebCore::RenderBlock::adjustForUnsplittableChild):
1662         (WebCore::RenderBlock::adjustLinePositionForPagination):
1663         * rendering/RenderBlock.h:
1664         * rendering/RenderBox.cpp:
1665         (WebCore::RenderBox::computeLogicalHeight):
1666         * rendering/RenderFlexibleBox.cpp:
1667         (WebCore::RenderFlexibleBox::layoutBlock):
1668         * rendering/RenderTable.cpp:
1669         (WebCore::RenderTable::layout):
1670         * rendering/RenderTableRow.cpp:
1671         (WebCore::RenderTableRow::layout):
1672         * rendering/RenderTableSection.cpp:
1673         (WebCore::RenderTableSection::layoutRows):
1674         * rendering/RenderView.cpp:
1675         (WebCore::RenderView::RenderView):
1676         (WebCore::RenderView::layout):
1677         * rendering/RenderView.h:
1678         (WebCore::RenderView::pageLogicalHeight):
1679         (WebCore::RenderView::setPageLogicalHeight):
1680
1681 2010-12-14  Dimitri Glazkov  <dglazkov@chromium.org>
1682
1683         Fix GTK build by adding source files that were accidentally skipped in
1684         r74044. Sorry!
1685
1686         * GNUmakefile.am: Added SliderThumbElement.
1687
1688 2010-12-14  Beth Dakin  <bdakin@apple.com>
1689
1690         Reviewed by Darin Adler.
1691
1692         Fix for https://bugs.webkit.org/show_bug.cgi?id=50974 
1693         getComputedStyle() returns wrong values for zoomed elements when 
1694         display is none
1695         -and corresponding-
1696         <rdar://problem/8522731>
1697
1698         If there is no renderer but the RenderStyle's value is a fixed 
1699         length, send it through zoomAdjustedPixelValue(). There's not much 
1700         we can do for other length types without a renderer.
1701         * css/CSSComputedStyleDeclaration.cpp:
1702         (WebCore::zoomAdjustedPixelValueForLength):
1703         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1704
1705 2010-12-13  Dimitri Glazkov  <dglazkov@chromium.org>
1706
1707         Reviewed by David Levin.
1708
1709         Move SliderThumbElement into its own file.
1710         https://bugs.webkit.org/show_bug.cgi?id=50973
1711
1712         No change in behavior, so no tests.
1713
1714         * Android.mk: Added SliderThumbElement.
1715         * CMakeLists.txt: Ditto.
1716         * WebCore.gyp/WebCore.gyp: Ditto.
1717         * WebCore.gypi: Ditto.
1718         * WebCore.pro: Ditto.
1719         * WebCore.vcproj/WebCore.vcproj: Ditto.
1720         * WebCore.xcodeproj/project.pbxproj: Ditto,
1721         * html/shadow/SliderThumbElement.cpp: Added.
1722         * html/shadow/SliderThumbElement.h: Added.
1723         * rendering/RenderSlider.cpp: Removed code that was moved into
1724             SliderThumbElement.
1725
1726 2010-12-13  Alexey Proskuryakov  <ap@apple.com>
1727
1728         Reviewed by Adam Barth.
1729
1730         https://bugs.webkit.org/show_bug.cgi?id=50953
1731         DNS Prefetch should be an opt-in feature
1732
1733         No new tests, can't test DNS.
1734
1735         * dom/Document.h: Made initDNSPrefetch public, since Page now calls it.
1736
1737         * page/Page.cpp: (WebCore::Page::dnsPrefetchingStateChanged):
1738         * page/Page.h:
1739         Documents cache the value of this setting, so they need to be notified of changes. In particular,
1740         the first document in a page is created before settings are applied.
1741
1742         * page/Settings.cpp:
1743         (WebCore::Settings::Settings): Changed default to false.
1744         (WebCore::Settings::setDNSPrefetchingEnabled): Notify the page about the change.
1745
1746 2010-12-14  Helder Correia  <helder@sencha.com>
1747
1748         Reviewed by Ariya Hidayat.
1749
1750         [Qt] Canvas shadow offset should not be affected by any transformation
1751         https://bugs.webkit.org/show_bug.cgi?id=50422
1752
1753         On a canvas context, shadows are currently affected by all
1754         transformations except scaling. According to the spec:
1755         http://www.whatwg.org/specs/web-apps/current-work/multipage/the-canvas-element.html#shadows
1756
1757         "The shadowOffsetX and shadowOffsetY attributes specify the distance
1758         that the shadow will be offset in the positive horizontal and positive
1759         vertical distance respectively. Their values are in coordinate space
1760         units. They are not affected by the current transformation matrix."
1761
1762         NOTE: this applies only to canvas, not to box shadows.
1763
1764         Test: fast/canvas/canvas-transforms-fillRect-shadow.html
1765
1766         * platform/graphics/ContextShadow.cpp:
1767         (WebCore::ContextShadow::ContextShadow):
1768         (WebCore::ContextShadow::calculateLayerBoundingRect):
1769         * platform/graphics/ContextShadow.h:
1770         (WebCore::ContextShadow::setShadowsIgnoreTransforms):
1771         (WebCore::ContextShadow::shadowsIgnoreTransforms):
1772         (WebCore::ContextShadow::offset):
1773         * platform/graphics/qt/ContextShadowQt.cpp:
1774         (WebCore::ContextShadow::beginShadowLayer):
1775         (WebCore::ContextShadow::endShadowLayer):
1776         * platform/graphics/qt/GraphicsContextQt.cpp:
1777         (WebCore::mustUseContextShadow):
1778         (WebCore::GraphicsContext::fillPath):
1779         (WebCore::GraphicsContext::strokePath):
1780         (WebCore::GraphicsContext::fillRect):
1781         (WebCore::GraphicsContext::fillRoundedRect):
1782         (WebCore::GraphicsContext::setPlatformShadow):
1783
1784 2010-12-14  Alexander Pavlov  <apavlov@chromium.org>
1785
1786         Reviewed by Yury Semikhatsky.
1787
1788         Web Inspector: Rule data not updated in Styles pane after stylesheet gets reverted
1789         https://bugs.webkit.org/show_bug.cgi?id=51034
1790
1791         * inspector/front-end/CSSStyleModel.js:
1792         (WebInspector.CSSStyleModel.prototype._onRevert):
1793         * inspector/front-end/ElementsPanel.js:
1794         (WebInspector.ElementsPanel):
1795         (WebInspector.ElementsPanel.prototype._metricsPaneEdited):
1796         (WebInspector.ElementsPanel.prototype._stylesPaneEdited):
1797         (WebInspector.ElementsPanel.prototype._styleSheetChanged):
1798
1799 2010-12-14  Andreas Kling  <andreas.kling@nokia.com>
1800
1801         Reviewed by Kenneth Rohde Christiansen.
1802
1803         [Qt] Avoid GraphicsContext save/restore in Image::drawPattern()
1804         https://bugs.webkit.org/show_bug.cgi?id=51037
1805
1806         It's enough to restore the CompositeOperator after drawing.
1807
1808         * platform/graphics/qt/ImageQt.cpp:
1809         (WebCore::Image::drawPattern):
1810
1811 2010-12-14  Eric Carlson  <eric.carlson@apple.com>
1812
1813         Reviewed by Dan Bernstein.
1814
1815         <rdar://problem/8763862>
1816         r72017 used incorrect compiler conditional.
1817
1818         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
1819         (WebCore::MediaPlayerPrivateQTKit::createQTMovie):
1820
1821 2010-12-14  Carlos Garcia Campos  <cgarcia@igalia.com>
1822
1823         Reviewed by Martin Robinson.
1824
1825         [GTK] Simplify context-menu handling code
1826         https://bugs.webkit.org/show_bug.cgi?id=49658
1827
1828         * platform/ContextMenuItem.h:
1829         * platform/gtk/ContextMenuGtk.cpp:
1830         (WebCore::ContextMenu::appendItem):
1831         * platform/gtk/ContextMenuItemGtk.cpp:
1832         (WebCore::ContextMenuItem::ContextMenuItem):
1833         (WebCore::ContextMenuItem::~ContextMenuItem):
1834         (WebCore::ContextMenuItem::releasePlatformDescription):
1835         (WebCore::ContextMenuItem::type):
1836         (WebCore::ContextMenuItem::setType):
1837         (WebCore::ContextMenuItem::action):
1838         (WebCore::ContextMenuItem::setAction):
1839         (WebCore::ContextMenuItem::title):
1840         (WebCore::ContextMenuItem::setTitle):
1841         (WebCore::ContextMenuItem::platformSubMenu):
1842         (WebCore::ContextMenuItem::setSubMenu):
1843         (WebCore::ContextMenuItem::setChecked):
1844         (WebCore::ContextMenuItem::setEnabled):
1845
1846 2010-12-14  Mario Sanchez Prada  <msanchez@igalia.com>
1847
1848         Reviewed by Xan Lopez.
1849
1850         [Gtk] Implement STATE_FOCUSED, STATE_FOCUSABLE, and corresponding events for text objects
1851         https://bugs.webkit.org/show_bug.cgi?id=27048
1852
1853         Handle focus change for text objects based in caret changes.
1854
1855         As text objects (such as paragraphs) seem not to accept focus in
1856         WebCore in the same way other objects (text controls) do, a
1857         Gtk-specific workaround is needed to expose this states and the
1858         related events to ATK-based assistive technologies.
1859
1860         Test: platform/gtk/accessibility/caret-browsing-text-focus.html
1861
1862         Ensure that text objects are exposed with the ATK_STATE_FOCUSABLE
1863         state, and that the ATK_STATE_FOCUSED state is added to those
1864         text objects containing the currently active caret selection.
1865
1866         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
1867         (selectionBelongsToObject): Moved upwards to use it from
1868         the new isTextWithCaret() function.
1869         (isTextWithCaret): New, checks whether an accessibility object
1870         represents a text object with the current caret selection on it.
1871         (setAtkStateSetFromCoreObject): Add the ATK_STATE_FOCUSED state
1872         when also when isTextWithCaret(coreObject) returns true.
1873         (webkit_accessible_ref_state_set): Add the ATK_STATE_FOCUSABLE
1874         state to text objects and those with the ATK_ROLE_PARAGRAPH role.
1875         (webkit_accessible_text_get_n_selections): Optimize return expression.
1876
1877         Make sure the proper events associated to a change of focus are
1878         emitted, based on caret changes across different accessibility
1879         objects. Also, refactored the code in more manageable and
1880         understandable helper functions.
1881
1882         * editing/gtk/SelectionControllerGtk.cpp:
1883         (WebCore::emitTextSelectionChange): New, includes the specific
1884         code formerly placed in notifyAccessibilityForSelectionChange() to
1885         emit the 'text-caret-moved' and 'text-selection-change' signals.
1886         (WebCore::maybeEmitTextFocusChange): New, takes care of emitting
1887         the 'focus-event' and 'state-changed::focused' signals when
1888         needed, that is, when a change in the selection happens across
1889         different accessible objects.
1890         (WebCore::SelectionController::notifyAccessibilityForSelectionChange):
1891         Refactored some code here, by using the new helper functions.
1892
1893 2010-12-14  Ilya Tikhonovsky  <loislo@chromium.org>
1894
1895         Reviewed by Pavel Feldman.
1896
1897         Web Inspector: regroup Inspector.idl entries.
1898         Just for better visibility.
1899
1900         https://bugs.webkit.org/show_bug.cgi?id=51025
1901
1902         * inspector/Inspector.idl:
1903
1904 2010-12-14  Alexander Pavlov  <apavlov@chromium.org>
1905
1906         Reviewed by Yury Semikhatsky.
1907
1908         Web Inspector: Reverted stylesheet breaks style data
1909         https://bugs.webkit.org/show_bug.cgi?id=51030
1910
1911         * inspector/InspectorStyleSheet.cpp:
1912         (WebCore::InspectorStyleSheet::reparseStyleSheet):
1913
1914 2010-12-14  Mads Ager  <ager@chromium.org>
1915
1916         Reviewed by Pavel Feldman.
1917
1918         [V8] Reflected unsigned attributes should be in the range [0, 2^31)
1919         https://bugs.webkit.org/show_bug.cgi?id=51023
1920
1921         Follow the changes made to CodeGeneratorJS.pm to return 0 for
1922         reflected unsigned attributes that are outside the allowed range.
1923         See https://bugs.webkit.org/show_bug.cgi?id=50472
1924
1925         * bindings/scripts/CodeGeneratorV8.pm:
1926
1927 2010-12-14  Charlie Reis  <creis@chromium.org>
1928
1929         Reviewed by Darin Adler.
1930
1931         Remove stale include of Document.h in V8DOMWrapper.h
1932         https://bugs.webkit.org/show_bug.cgi?id=50607
1933
1934         We no longer need to include Document.h or V8DOMMap.h in
1935         V8DOMWrapper.  Removing them to avoid dependencies.
1936
1937         * bindings/v8/V8DOMWrapper.h:
1938
1939 2010-12-14  Julien Chaffraix  <jchaffraix@codeaurora.org>
1940
1941         Reviewed by Darin Adler.
1942
1943         Test for: EventSource fails to connect if Content-Type header has a charset attribute
1944         https://bugs.webkit.org/show_bug.cgi?id=45372
1945
1946         Tests: http/tests/eventsource/eventsource-content-type-charset.html
1947                http/tests/eventsource/eventsource-content-type-text-event-stream-foobar.html
1948
1949         * page/EventSource.cpp:
1950         (WebCore::EventSource::didReceiveResponse): Use the mimeType instead of the Content-Type
1951         header directly. This makes the detection of the "text/stream" mimeType more accurate.
1952
1953 2010-12-14  Pieter Senster  <psenster@google.com>
1954
1955         Reviewed by Dirk Schulze.
1956
1957         Incorporate the channel offsets from the ColorMatrix filter in the filter calculation
1958         https://bugs.webkit.org/show_bug.cgi?id=50682
1959
1960         Test: svg/filters/feColorMatrix-offset.svg
1961
1962         * platform/graphics/filters/FEColorMatrix.cpp:
1963         (WebCore::matrix):
1964
1965 2010-12-14  Jarred Nicholls  <jarred@sencha.com>
1966
1967         Reviewed by Kenneth Rohde Christiansen.
1968
1969         Qt's Clipboard::files() implementation for HTML5 Drag/Drop (DataTransfer)
1970
1971         No new tests. Run tests manually until DRT is updated w/ beginDragWithFiles.
1972
1973         * platform/qt/ClipboardQt.cpp:
1974         (WebCore::ClipboardQt::files):
1975
1976 2010-12-13  Antonio Gomes  <agomes@rim.com>
1977
1978         Rubber stamped by Daniel Bates.
1979
1980         Spatial Navigation: code clean up (part V)
1981         https://bugs.webkit.org/show_bug.cgi?id=50666
1982
1983         No new tests needed.
1984
1985         * page/SpatialNavigation.cpp:
1986         (WebCore::distanceDataForNode): Made 'FocusCandidate current' const since it is not
1987         supposed to change within this function.
1988         * page/SpatialNavigation.h: Ditto.
1989
1990 2010-12-13  takano takumi  <takano@apple.com>
1991
1992         Reviewed by Dan Bernstein.
1993
1994         GlyphPage::fill() is slow on vertical writing (Mac)
1995         https://bugs.webkit.org/show_bug.cgi?id=50865
1996
1997         No test. Just a performance improvement.
1998
1999         * platform/graphics/Font.cpp:
2000         (WebCore::Font::isCJKIdeograph): Now this only checks pure ideographs (Hanji).
2001         (WebCore::Font::isCJKIdeographOrSymbol): Added this for Hanji and Hanji related symbols.
2002         * platform/graphics/Font.h:
2003         * platform/graphics/FontFastPath.cpp:
2004         (WebCore::Font::glyphDataForCharacter): Changed to call isCJKIdeographOrSymbol() instead of isCJKIdeograph().
2005         * platform/graphics/mac/GlyphPageTreeNodeMac.cpp:
2006         (WebCore::shouldUseCoreText): This tests if GlyphPage::fill() should use CoreText or not.
2007         For vertical writing, if the current page contains only ideographs, we go CG path.
2008         (WebCore::GlyphPage::fill): Made to call shouldUseCoreText() and switch code path.
2009
2010 2010-12-13  Antonio Gomes  <agomes@rim.com>
2011
2012         Reviewed by Daniel Bates.
2013
2014         Spatial Navigation: code clean up (part IV)
2015         https://bugs.webkit.org/show_bug.cgi?id=50666
2016
2017         Avoid calling canScrollInDirection more than necessary.
2018
2019         No new tests needed.
2020
2021         * page/FocusController.cpp:
2022         (WebCore::FocusController::advanceFocusDirectionallyInContainer): Moved the call to canScrollInDirection()
2023         to within the scrollInDirection().
2024         * page/SpatialNavigation.cpp: Removed the assertion to canScrollingDirection function.
2025         (WebCore::scrollInDirection):
2026
2027 2010-12-13  Antonio Gomes  <agomes@rim.com>
2028
2029         Reviewed by Daniel Bates.
2030
2031         Spatial Navigation: code clean up (part III)
2032         https://bugs.webkit.org/show_bug.cgi?id=50666
2033
2034         No new tests needed.
2035
2036         * page/SpatialNavigation.h: Added FocusCandidate::isFrameOwnerElement and
2037         WebCore::frameOwnerElement helper functions.
2038         (WebCore::FocusCandidate::isFrameOwnerElement): Returns true if the Node pointer
2039         wrapped by FocusCandidate is an instance of HTMLFrameOwnerElement. Returns false
2040         otherwise.
2041         * page/SpatialNavigation.cpp:
2042         (WebCore::frameOwnerElement): Returns the HTMLFrameOwnerElement associated with
2043         the FocusCandidate if appropriate.
2044         * page/FocusController.cpp:
2045         (WebCore::updateFocusCandidateIfNeeded): Make use of newly added frameOwnerElement() helper.
2046         (WebCore::FocusController::advanceFocusDirectionallyInContainer): Ditto.
2047
2048 2010-12-13  Mike Lawther  <mikelawther@chromium.org>
2049
2050         Reviewed by Daniel Bates.
2051
2052         [skia] ignore transform for canvas shadows
2053         https://bugs.webkit.org/show_bug.cgi?id=50437
2054
2055         * platform/graphics/skia/GraphicsContextSkia.cpp:
2056         (WebCore::GraphicsContext::setPlatformShadow):
2057
2058 2010-12-13  Dai Mikurube  <dmikurube@google.com>
2059
2060         Reviewed by Kent Tamura.
2061
2062         ValidityState's exposed functions should check if willValidate() is true before all
2063         https://bugs.webkit.org/show_bug.cgi?id=50617
2064
2065         Added checking willValidate() to exposed functions. And modified willValidate() behavior
2066         for <button type="submit"> and <input type="submit"> to return true if not disabled and
2067         not readonly.
2068
2069         * html/HTMLButtonElement.cpp:
2070         (WebCore::HTMLButtonElement::parseMappedAttribute): Added calling setNeedsWillValidateCheck() to refresh willValidate() after changing its type.
2071         (WebCore::HTMLButtonElement::recalcWillValidate): Added to return true if not disabled and not readonly when type="submit". It's to be compliant to the spec.
2072         * html/HTMLButtonElement.h:
2073         * html/SubmitInputType.cpp:
2074         (WebCore::SubmitInputType::supportsValidation): Removed it to enable willValidate() for <input> when type="submit". It's to be compliant to the spec.
2075         (WebCore::SubmitInputType::supportsRequired): Added it to reject required attributes though validation is available.
2076         * html/SubmitInputType.h:
2077         * html/ValidityState.cpp: Added checking willValidate().
2078         (WebCore::ValidityState::typeMismatch):
2079         (WebCore::ValidityState::patternMismatch):
2080         (WebCore::ValidityState::tooLong):
2081         (WebCore::ValidityState::rangeUnderflow):
2082         (WebCore::ValidityState::rangeOverflow):
2083         (WebCore::ValidityState::stepMismatch):
2084         (WebCore::ValidityState::customError):
2085         * html/ValidityState.h:
2086
2087 2010-12-13  Noel Gordon  <noel.gordon@gmail.com>
2088
2089         Reviewed by David Levin.
2090
2091         [chromium] Upstream skia/ImageBuffer.cpp routine mulDiv255Ceil()
2092         https://bugs.webkit.org/show_bug.cgi?id=50545
2093
2094         Skia has rolled, replace uses of mulDiv255Ceil with SkMulDiv255Ceiling.
2095
2096         No new tests, no change in behaviour.
2097
2098         * platform/graphics/skia/ImageBufferSkia.cpp:
2099         (WebCore::putImageData):
2100
2101 2010-12-13  Gavin Peters  <gavinp@chromium.org>
2102
2103         Reviewed by Adam Barth.
2104
2105         Re land Purpose after bad merge
2106         https://bugs.webkit.org/show_bug.cgi?id=51000
2107
2108         * loader/loader.cpp:
2109         (WebCore::Loader::load):
2110
2111 2010-12-13  Dan Bernstein  <mitz@apple.com>
2112
2113         Reviewed by Simon Fraser.
2114
2115         <rdar://problem/8763696> REGRESSION (r72173): Fallback fonts’ vertical metrics aren’t accounted for even when line-height is unspecified
2116         https://bugs.webkit.org/show_bug.cgi?id=50979
2117
2118         Many test results updated.
2119
2120         * rendering/InlineFlowBox.cpp: Reinstated the code that updates affectsAscent and
2121         affectsDescent in the used-fonts code path. Renamed variables for clarity. Added
2122         a check whether usedFonts is empty (which it might be if there is glyph overflow
2123         but no fallback) as an optimization.
2124
2125 2010-12-13  Mark Rowe  <mrowe@apple.com>
2126
2127         Rubber-stamped by Jon Honeycutt.
2128
2129         Remove unnecessary include of Switch module.
2130
2131         There are no switch statements in this file.
2132
2133         * dom/make_names.pl:
2134
2135 2010-12-13  Emil Eklund  <eae@chromium.org>
2136
2137         Reviewed by Dimitri Glazkov.
2138
2139         Change SelectionController::setFocusedNodeIfNeeded to traverse the DOM
2140         tree instead of the render tree.
2141         https://bugs.webkit.org/show_bug.cgi?id=50989
2142
2143         * editing/SelectionController.cpp:
2144         (WebCore::SelectionController::setFocusedNodeIfNeeded):
2145         Walk up DOM/hosted tree rather than render tree and remove FIXME comment
2146         that does't apply (SelectionController and EventHandler needs different
2147         checks).
2148
2149 2010-12-13  Chris Fleizach  <cfleizach@apple.com>
2150
2151         Reviewed by Beth Dakin.
2152
2153         AX: aria-invalid should be supported.
2154         https://bugs.webkit.org/show_bug.cgi?id=50573
2155
2156         Test: platform/mac/accessibility/aria-invalid.html
2157
2158         * accessibility/AXObjectCache.h:
2159         * accessibility/AccessibilityObject.cpp:
2160         (WebCore::AccessibilityObject::invalidStatus):
2161         * accessibility/AccessibilityObject.h:
2162         * accessibility/chromium/AXObjectCacheChromium.cpp
2163         (WebCore::AXObjectCache::postPlatformNotification):
2164         * accessibility/mac/AXObjectCacheMac.mm:
2165         (WebCore::AXObjectCache::postPlatformNotification):
2166         * accessibility/mac/AccessibilityObjectWrapper.mm:
2167         (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
2168         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
2169         * dom/Element.cpp:
2170         (WebCore::Element::updateAfterAttributeChanged):
2171         * html/HTMLAttributeNames.in:
2172
2173 2010-12-13  Joone Hur  <joone@kldp.org>
2174
2175         Reviewed by Eric Seidel.
2176
2177         WebKit fails to compile when building with WML support enabled
2178         https://bugs.webkit.org/show_bug.cgi?id=42943
2179
2180         Use TextPosition instead of lineNumber() and columNumber().
2181
2182         No new tests are added, because this is just a build fix.
2183
2184         * dom/XMLDocumentParser.h: Make lineNumber() private.
2185         * wml/WMLErrorHandling.cpp:
2186         (WebCore::reportWMLError): Use TextPosition instead of lineNumber() and columnNumber().
2187
2188 2010-12-13  Chris Fleizach  <cfleizach@apple.com>
2189
2190         Reviewed by Beth Dakin.
2191
2192         AX: lists and list boxes need different attributes
2193         https://bugs.webkit.org/show_bug.cgi?id=50978
2194
2195         Separate out the attributes being returned for lists (<ul>) and listboxes (<select multiple>).
2196
2197         * accessibility/mac/AccessibilityObjectWrapper.mm:
2198         (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
2199
2200 2010-12-13  David Hyatt  <hyatt@apple.com>
2201
2202         Reviewed by Sam Weinig.
2203
2204         https://bugs.webkit.org/show_bug.cgi?id=50963
2205
2206         REGRESSION: Scrolling nested iframes is messed up on platforms that use the cross-platform ScrollView.
2207        
2208         The selfClipRect and childrenClipRect methods of RenderLayer were incorrectly relying on the bounding box
2209         of the root layer.  This bounding box was only coincidentally incorporating overflow as part of the 
2210         RenderLayer's bounds.  Since I fixed the RenderLayer bounds to not include layout overflow any longer,
2211         this check is now exposed as incorrect.  Use the entire document size  when computing layer clip
2212         rects.
2213
2214         * rendering/RenderLayer.cpp:
2215         (WebCore::RenderLayer::childrenClipRect):
2216         (WebCore::RenderLayer::selfClipRect):
2217         * rendering/RenderView.h:
2218         (WebCore::RenderView::documentRect):
2219
2220 2010-12-13  Simon Fraser  <simon.fraser@apple.com>
2221
2222         GraphicsContextPrivate.h was removed. Nuke it from the project.
2223         
2224         * WebCore.xcodeproj/project.pbxproj:
2225
2226 2010-12-13  Eric Carlson  <eric.carlson@apple.com>
2227
2228         Reviewed by Antti Koivisto.
2229
2230         HTMLMediaElement::endedPlayback should not return true if duration is zero
2231         https://bugs.webkit.org/show_bug.cgi?id=50962
2232
2233         (WebCore::HTMLMediaElement::endedPlayback): Don't return true when duration is zero because a 
2234         media file can't play if it has no duration, therefore it can't have ended playback.
2235
2236 2010-12-13  Brent Fulgham  <bfulgham@webkit.org>
2237
2238         Unreviewed build fix after r73840.
2239
2240         * WebCore.vcproj/WebCoreGeneratedCairo.vsprops: Update property file
2241         to pass three arguments to build-generated-files.sh, just like
2242         the official Apple port.
2243
2244 2010-12-13  David Hyatt  <hyatt@apple.com>
2245
2246         Reviewed by Adam Roben.
2247
2248         Make sure the defaultSpaceEventHandler does logical scrolling.
2249
2250         * page/EventHandler.cpp:
2251         (WebCore::EventHandler::defaultSpaceEventHandler):
2252
2253 2010-12-13  Matthew Delaney  <mdelaney@apple.com>
2254
2255         Reviewed by Simon Fraser.
2256
2257         https://bugs.webkit.org/show_bug.cgi?id=50591 Adopt new CG API for canvas
2258
2259         No new tests necessary.
2260
2261         * Configurations/WebCore.xcconfig: Added IOSurface framework link.
2262         * html/canvas/CanvasRenderingContext2D.cpp: Used IOSurface def. instead.
2263         * platform/graphics/ImageBuffer.h: Pushed renderingMode down into ctor.
2264         * platform/graphics/cairo/ImageBufferCairo.cpp:
2265         * platform/graphics/cg/ImageBufferCG.cpp:
2266         * platform/graphics/haiku/ImageBufferHaiku.cpp:
2267         * platform/graphics/qt/ImageBufferQt.cpp:
2268         * platform/graphics/skia/ImageBufferSkia.cpp:
2269         * platform/graphics/wince/ImageBufferWinCE.cpp:
2270         * platform/graphics/wx/ImageBufferWx.cpp:
2271
2272 2010-12-13  Sheriff Bot  <webkit.review.bot@gmail.com>
2273
2274         Unreviewed, rolling out r73923.
2275         http://trac.webkit.org/changeset/73923
2276         https://bugs.webkit.org/show_bug.cgi?id=50944
2277
2278         Broke editing/selection/extend-selection-home-end.html on non-
2279         mac platforms. Looks like a real bug. (Requested by ojan on
2280         #webkit).
2281
2282         * editing/SelectionController.cpp:
2283         (WebCore::SelectionController::positionForPlatform):
2284         (WebCore::SelectionController::modifyExtendingForward):
2285
2286 2010-12-13  David Hyatt  <hyatt@apple.com>
2287
2288         Reviewed by Sam Weinig.
2289
2290         https://bugs.webkit.org/show_bug.cgi?id=48545, Home/End, PageUp/PageDwn should respect writing-mode. 
2291
2292         Add logical scrolling to WebCore.  It basically mirrors physical scrolling but works in abstract logical
2293         directions and only converts to physical when it's time to attempt the scroll.
2294         
2295         Also fixed bugs in scrollRecursively and logicalScrollRecursively where overflow sections in containing
2296         frames got skipped over.
2297         
2298         Made the resetting of the inline axis scroll position on Home/End Mac-specific for overflow sections.
2299         
2300         * WebCore.exp.in:
2301         * page/EventHandler.cpp:
2302         (WebCore::EventHandler::logicalScrollOverflow):
2303         (WebCore::EventHandler::scrollRecursively):
2304         (WebCore::EventHandler::logicalScrollRecursively):
2305         * page/EventHandler.h:
2306         * page/FrameView.cpp:
2307         (WebCore::FrameView::isVerticalDocument):
2308         (WebCore::FrameView::isFlippedDocument):
2309         * page/FrameView.h:
2310         * platform/ScrollTypes.h:
2311         (WebCore::logicalToPhysical):
2312         * platform/ScrollView.cpp:
2313         (WebCore::ScrollView::scroll):
2314         (WebCore::ScrollView::logicalScroll):
2315         * platform/ScrollView.h:
2316         (WebCore::ScrollView::isVerticalDocument):
2317         (WebCore::ScrollView::isFlippedDocument):
2318         * rendering/RenderBox.cpp:
2319         (WebCore::RenderBox::logicalScroll):
2320         * rendering/RenderBox.h:
2321         * rendering/RenderLayer.cpp:
2322         (WebCore::RenderLayer::scroll):
2323         * rendering/RenderListBox.cpp:
2324         (WebCore::RenderListBox::logicalScroll):
2325         * rendering/RenderListBox.h:
2326         * rendering/RenderTextControlSingleLine.cpp:
2327         (WebCore::RenderTextControlSingleLine::logicalScroll):
2328         * rendering/RenderTextControlSingleLine.h:
2329
2330 2010-12-13  Yury Semikhatsky  <yurys@chromium.org>
2331
2332         Unreviewed. Rollout 73914, 73915, 73917, 73920 and 73921.
2333
2334         REGRESSION(r73914): "Chromium page_cycler_morejs fails" (Requested by yurys on #webkit).
2335         https://bugs.webkit.org/show_bug.cgi?id=50950
2336
2337         * Android.jscbindings.mk:
2338         * CMakeLists.txt:
2339         * GNUmakefile.am:
2340         * WebCore.gypi:
2341         * WebCore.order:
2342         * WebCore.pro:
2343         * WebCore.vcproj/WebCore.vcproj:
2344         * WebCore.xcodeproj/project.pbxproj:
2345         * bindings/js/JSBindingsAllInOne.cpp:
2346         * bindings/js/JSDOMBinding.cpp:
2347         (WebCore::reportException):
2348         * bindings/js/JSWorkerContextErrorHandler.cpp: Renamed from WebCore/bindings/js/JSErrorHandler.cpp.
2349         (WebCore::JSWorkerContextErrorHandler::JSWorkerContextErrorHandler):
2350         (WebCore::JSWorkerContextErrorHandler::~JSWorkerContextErrorHandler):
2351         (WebCore::JSWorkerContextErrorHandler::handleEvent):
2352         * bindings/js/JSWorkerContextErrorHandler.h: Renamed from WebCore/bindings/js/JSErrorHandler.h.
2353         (WebCore::JSWorkerContextErrorHandler::create):
2354         (WebCore::createJSWorkerContextErrorHandler):
2355         * bindings/scripts/CodeGeneratorJS.pm:
2356         * bindings/scripts/CodeGeneratorV8.pm:
2357         * bindings/v8/V8ConsoleMessage.cpp:
2358         (WebCore::V8ConsoleMessage::dispatchNow):
2359         (WebCore::V8ConsoleMessage::handler):
2360         * bindings/v8/V8ConsoleMessage.h:
2361         * bindings/v8/V8WindowErrorHandler.cpp: Removed.
2362         * bindings/v8/V8WindowErrorHandler.h: Removed.
2363         * bindings/v8/WorkerContextExecutionProxy.cpp:
2364         (WebCore::v8MessageHandler):
2365         * bindings/v8/WorkerScriptController.cpp:
2366         (WebCore::WorkerScriptController::evaluate):
2367         * dom/Document.cpp:
2368         (WebCore::Document::reportException):
2369         (WebCore::Document::addMessage):
2370         * dom/Document.h:
2371         * dom/ErrorEvent.cpp:
2372         * dom/ErrorEvent.h:
2373         * dom/Event.cpp:
2374         * dom/Event.h:
2375         * dom/ScriptExecutionContext.cpp:
2376         (WebCore::ScriptExecutionContext::ScriptExecutionContext):
2377         * dom/ScriptExecutionContext.h:
2378         * websockets/WebSocket.cpp:
2379         (WebCore::WebSocket::connect):
2380         * websockets/WebSocketChannel.cpp:
2381         (WebCore::WebSocketChannel::didOpen):
2382         (WebCore::WebSocketChannel::appendToBuffer):
2383         * websockets/WebSocketHandshake.cpp:
2384         (WebCore::WebSocketHandshake::readServerHandshake):
2385         (WebCore::WebSocketHandshake::readStatusLine):
2386         (WebCore::WebSocketHandshake::readHTTPHeaders):
2387         (WebCore::WebSocketHandshake::checkResponseHeaders):
2388         * workers/DefaultSharedWorkerRepository.cpp:
2389         (WebCore::postExceptionTask):
2390         (WebCore::postConsoleMessageTask):
2391         * workers/WorkerContext.cpp:
2392         (WebCore::WorkerContext::WorkerContext):
2393         (WebCore::WorkerContext::reportException):
2394         (WebCore::WorkerContext::addMessage):
2395         * workers/WorkerContext.h:
2396         * workers/WorkerMessagingProxy.cpp:
2397         (WebCore::WorkerExceptionTask::performTask):
2398         (WebCore::postConsoleMessageTask):
2399         * xml/XMLHttpRequest.cpp:
2400         (WebCore::reportUnsafeUsage):
2401
2402 2010-12-13  Antti Koivisto  <antti@apple.com>
2403
2404         Reviewed by Alexey Proskuryakov.
2405
2406         https://bugs.webkit.org/show_bug.cgi?id=50758
2407         <rdar://problem/8722094> 
2408         Defer loading print stylesheets
2409         
2410         - Make preload scanner skip stylesheets with non-screen media types.
2411         - Make it possible to specify non-default load priority from the client.
2412         - Use this mechanism to load print stylesheets using very low priority so they get loaded after everything else.
2413         - Move default priority code from Loader to CachedResource.
2414         - Move ResourceLoadScheduler::Priority enum to a separate file (as ResourceLoadPriority).
2415         - Add a way to make ResourceLoadScheduler load resources one at the time so the above functionality can be tested reliably.
2416
2417         Tests: http/tests/local/link-stylesheet-load-order-preload.html
2418                http/tests/local/link-stylesheet-load-order.html
2419
2420         * WebCore.exp.in:
2421         * WebCore.gypi:
2422         * WebCore.pro:
2423         * WebCore.vcproj/WebCore.vcproj:
2424         * WebCore.xcodeproj/project.pbxproj:
2425         * css/CSSImageValue.cpp:
2426         (WebCore::CSSImageValue::cachedImage):
2427         * html/HTMLLinkElement.cpp:
2428         (WebCore::HTMLLinkElement::process):
2429         * html/parser/HTMLPreloadScanner.cpp:
2430         (WebCore::HTMLNames::PreloadTask::PreloadTask):
2431         (WebCore::HTMLNames::PreloadTask::processAttributes):
2432         (WebCore::HTMLNames::PreloadTask::relAttributeIsStyleSheet):
2433         (WebCore::HTMLNames::PreloadTask::linkMediaAttributeIsScreen):
2434         (WebCore::HTMLNames::PreloadTask::preload):
2435         * loader/DocumentThreadableLoader.cpp:
2436         (WebCore::DocumentThreadableLoader::loadRequest):
2437         * loader/ResourceLoadPriority.h: Added.
2438         * loader/ResourceLoadScheduler.cpp:
2439         (WebCore::ResourceLoadScheduler::ResourceLoadScheduler):
2440         (WebCore::ResourceLoadScheduler::scheduleSubresourceLoad):
2441         (WebCore::ResourceLoadScheduler::schedulePluginStreamLoad):
2442         (WebCore::ResourceLoadScheduler::scheduleLoad):
2443         (WebCore::ResourceLoadScheduler::servePendingRequests):
2444         (WebCore::ResourceLoadScheduler::HostInformation::~HostInformation):
2445         (WebCore::ResourceLoadScheduler::HostInformation::schedule):
2446         (WebCore::ResourceLoadScheduler::HostInformation::remove):
2447         (WebCore::ResourceLoadScheduler::HostInformation::hasRequests):
2448         (WebCore::ResourceLoadScheduler::HostInformation::limitRequests):
2449         * loader/ResourceLoadScheduler.h:
2450         (WebCore::ResourceLoadScheduler::isSerialLoadingEnabled):
2451         (WebCore::ResourceLoadScheduler::setSerialLoadingEnabled):
2452         (WebCore::ResourceLoadScheduler::HostInformation::requestsPending):
2453         * loader/cache/CachedResource.cpp:
2454         (WebCore::defaultPriorityForResourceType):
2455         (WebCore::CachedResource::CachedResource):
2456         * loader/cache/CachedResource.h:
2457         (WebCore::CachedResource::loadPriority):
2458         (WebCore::CachedResource::setLoadPriority):
2459         * loader/cache/CachedResourceLoader.cpp:
2460         (WebCore::CachedResourceLoader::requestCSSStyleSheet):
2461         (WebCore::CachedResourceLoader::requestResource):
2462         (WebCore::CachedResourceLoader::requestPreload):
2463         * loader/cache/CachedResourceLoader.h:
2464         * loader/cache/MemoryCache.cpp:
2465         (WebCore::MemoryCache::requestResource):
2466         * loader/cache/MemoryCache.h:
2467         * loader/loader.cpp:
2468         (WebCore::Loader::load):
2469
2470 2010-12-13  Justin Schuh  <jschuh@chromium.org>
2471
2472         Reviewed by Dimitri Glazkov.
2473
2474         Build fix for r73927
2475         https://bugs.webkit.org/show_bug.cgi?id=50946
2476
2477         Reverting CSSCanvasValue::canvasDestroyed to its code before r73927
2478         because it's breaking the build and I changed it only because it
2479         appeared redunudant after r73927.
2480
2481         No behavior changed so no new tests needed.
2482
2483         * css/CSSCanvasValue.cpp:
2484         (WebCore::CSSCanvasValue::canvasDestroyed):
2485
2486 2010-12-13  Matthew Delaney  <mdelaney@apple.com>
2487
2488         Reviewed by nobody, build fix.
2489
2490         Unlinking IOSurface framework from xcodeproj.
2491
2492         * WebCore.xcodeproj/project.pbxproj:
2493
2494 2010-12-13  Justin Schuh  <jschuh@chromium.org>
2495
2496         Reviewed by Dimitri Glazkov.
2497
2498         HTMLCanvasElement should handle multiple observers.
2499         https://bugs.webkit.org/show_bug.cgi?id=50899
2500
2501         Test: fast/canvas/canvas-bg-multiple-removal.html
2502
2503         * css/CSSCanvasValue.cpp:
2504         (WebCore::CSSCanvasValue::~CSSCanvasValue):
2505         (WebCore::CSSCanvasValue::canvasDestroyed):
2506         (WebCore::CSSCanvasValue::element):
2507         * html/HTMLCanvasElement.cpp:
2508         (WebCore::HTMLCanvasElement::HTMLCanvasElement):
2509         (WebCore::HTMLCanvasElement::~HTMLCanvasElement):
2510         (WebCore::HTMLCanvasElement::addObserver):
2511         (WebCore::HTMLCanvasElement::removeObserver):
2512         (WebCore::HTMLCanvasElement::didDraw):
2513         (WebCore::HTMLCanvasElement::reset):
2514         * html/HTMLCanvasElement.h:
2515
2516 2010-12-13  Mihai Parparita  <mihaip@chromium.org>
2517
2518         Reviewed by Adam Barth.
2519
2520         [Chromium] canvas/philip/tests/2d.missingargs.html hangs on Snow Leopard
2521         https://bugs.webkit.org/show_bug.cgi?id=50841
2522
2523         Test: fast/canvas/strokeText-missing-args.html
2524         
2525         We didn't have isfinite checks for the x and y coordinates that are
2526         passed to strokeText/drawTextInternal (unlike all the other methods,
2527         which got checks in r50910 and r59447).
2528
2529         * html/canvas/CanvasRenderingContext2D.cpp:
2530         (WebCore::CanvasRenderingContext2D::drawTextInternal):
2531
2532 2010-12-09  Matthew Delaney  <mdelaney@apple.com>
2533
2534         Reviewed by Simon Fraser.
2535
2536         Adopt new CG API for canvas
2537         https://bugs.webkit.org/show_bug.cgi?id=50591
2538
2539         No new tests. All current layout tests are sufficient.
2540
2541         * html/HTMLCanvasElement.cpp: Add in accelerateRendering flag for imagebuffer creation.
2542         * html/canvas/CanvasRenderingContext2D.cpp:
2543         (WebCore::CanvasRenderingContext2D::isAccelerated): Always return true if using CA on new platforms.
2544         (WebCore::CanvasRenderingContext2D::drawTextInternal): Use accelerateRendering for imagebuffer.
2545         * platform/graphics/ImageBuffer.h:
2546         (WebCore::ImageBuffer::create): Plumb through new flag.
2547         * platform/graphics/cairo/ImageBufferCairo.cpp: Update method sig.
2548         * platform/graphics/cg/ImageBufferCG.cpp: Switch off of accelerateRendering flag for new accelerated paths.
2549         * platform/graphics/cg/ImageBufferData.h: Add in surface ref
2550         * platform/graphics/haiku/ImageBufferHaiku.cpp: Update method sig.
2551         * platform/graphics/qt/ImageBufferQt.cpp: ^^
2552         * platform/graphics/skia/ImageBufferSkia.cpp: ^^
2553         * platform/graphics/wince/ImageBufferWinCE.cpp: ^^
2554         * platform/graphics/wx/ImageBufferWx.cpp: ^^
2555         * platform/mac/WebCoreSystemInterface.h: Add new method sigs
2556         * platform/mac/WebCoreSystemInterface.mm: ^^
2557         * rendering/RenderLayerBacking.cpp:
2558         * rendering/RenderLayerCompositor.cpp: Set acceleratesDrawing for canvas backings.
2559
2560 2010-12-13  Benjamin Kalman  <kalman@chromium.org>
2561
2562         Reviewed by Ojan Vafai.
2563
2564         Shift-End does not select to the end of the line
2565         https://bugs.webkit.org/show_bug.cgi?id=50610
2566
2567         Test: editing/selection/extend-to-line-boundary.html
2568
2569         * editing/SelectionController.cpp:
2570         (WebCore::SelectionController::positionForPlatform): Use visibleStart/visibleEnd rather than
2571         start/end.
2572         (WebCore::SelectionController::modifyExtendingForward):
2573
2574 2010-12-13  Adam Roben  <aroben@apple.com>
2575
2576         Windows build fix after r73914
2577
2578         * WebCore.vcproj/WebCore.vcproj: Fix malformed XML.
2579
2580 2010-12-13  Yury Semikhatsky  <yurys@chromium.org>
2581
2582         Unreviewed. Qt build fix.
2583
2584         * dom/ScriptExecutionContext.cpp:
2585         (WebCore::ScriptExecutionContext::ScriptExecutionContext):
2586         * dom/ScriptExecutionContext.h:
2587
2588 2010-12-13  Mario Sanchez Prada  <msanchez@igalia.com>
2589
2590         Reviewed by Xan Lopez.
2591
2592         [Gtk] Additional support is needed for caret browsing
2593         https://bugs.webkit.org/show_bug.cgi?id=25526
2594
2595         Enable "MoveTo{Beginninng|End}OfDocument" commands when caret
2596         browsing is enabled.
2597
2598         This change impacts the GTK-port only as caret browsing is a
2599         feature only used in that platform so far.
2600
2601         Test: platform/gtk/editing/selection/caret-mode-document-begin-end.html
2602
2603         * editing/EditorCommand.cpp:
2604         (WebCore::createCommandMap): Enable the commads when in caret browsing.
2605
2606 2010-12-13  Yury Semikhatsky  <yurys@chromium.org>
2607
2608         Unreviewed. Qt build fix.
2609
2610         * dom/Event.cpp:
2611         (WebCore::Event::isErrorEvent):
2612         * dom/Event.h: remove ENABLE(WORKERS) guard since ErrorEvent is now used not
2613         only in workers.
2614
2615 2010-12-13  Ilya Tikhonovsky  <loislo@chromium.org>
2616
2617         Reviewed by Yury Semikhatsky.
2618
2619         Web Inspector: Protocol cleanup task. Assign domain attribute to Resources and Debugger specific functions.
2620
2621         Debugger and Resources related notification functions of Inspector.idl were
2622         marked as such with help of "domain" attribute. The other changes in js files
2623         are reflecting this change. Some wrappers in WebInspector namespace were dropped,
2624         the others were moved to DebuggerModel class.
2625
2626         https://bugs.webkit.org/show_bug.cgi?id=50906
2627
2628         * inspector/Inspector.idl:
2629         * inspector/InspectorDebuggerAgent.cpp:
2630         (WebCore::InspectorDebuggerAgent::didParseSource):
2631         * inspector/InspectorProfilerAgent.cpp:
2632         (WebCore::InspectorProfilerAgent::resetState):
2633         * inspector/front-end/DOMAgent.js:
2634         (WebInspector.DOMAgent.prototype.didCommitLoad):
2635         * inspector/front-end/Database.js:
2636         * inspector/front-end/DebuggerModel.js:
2637         (WebInspector.DebuggerModel):
2638         (WebInspector.DebuggerModel.prototype.pausedScript):
2639         (WebInspector.DebuggerModel.prototype.resumedScript):
2640         (WebInspector.DebuggerModel.prototype.attachDebuggerWhenShown):
2641         (WebInspector.DebuggerModel.prototype.debuggerWasEnabled):
2642         (WebInspector.DebuggerModel.prototype.debuggerWasDisabled):
2643         (WebInspector.DebuggerModel.prototype.parsedScriptSource):
2644         (WebInspector.DebuggerModel.prototype.failedToParseScriptSource):
2645         (WebInspector.DebuggerModel.prototype.didCreateWorker):
2646         (WebInspector.DebuggerModel.prototype.didDestroyWorker):
2647         * inspector/front-end/ProfilesPanel.js:
2648         (WebInspector.ProfilesPanel):
2649         (WebInspector.ProfilesPanel.prototype.updateMainViewWidth):
2650         (WebInspector.ProfilesPanel.prototype.setRecordingProfile):
2651         * inspector/front-end/ResourceManager.js:
2652         (WebInspector.ResourceManager):
2653         (WebInspector.ResourceManager.prototype._unbindResourceURL):
2654         (WebInspector.ResourceManager.prototype.updateDOMStorage):
2655         (WebInspector.ResourceManager.prototype.updateApplicationCacheStatus):
2656         (WebInspector.ResourceManager.prototype.didGetFileSystemPath):
2657         (WebInspector.ResourceManager.prototype.didGetFileSystemError):
2658         (WebInspector.ResourceManager.prototype.didGetFileSystemDisabled):
2659         (WebInspector.ResourceManager.prototype.updateNetworkState):
2660         (WebInspector.ResourceManager.prototype.addDOMStorage):
2661         (WebInspector.ResourceManager.prototype.selectDOMStorage):
2662         (WebInspector.ResourceManager.prototype.addDatabase):
2663         (WebInspector.ResourceManager.prototype.selectDatabase):
2664         (WebInspector.ResourceManager.prototype.sqlTransactionSucceeded):
2665         (WebInspector.ResourceManager.prototype.sqlTransactionFailed):
2666         * inspector/front-end/WorkersSidebarPane.js:
2667         (WebInspector.Worker):
2668         * inspector/front-end/inspector.js:
2669
2670 2010-12-13  Yury Semikhatsky  <yurys@chromium.org>
2671
2672         Unreviewed. Qt build fix. 
2673
2674         * dom/ErrorEvent.cpp:
2675         * dom/ErrorEvent.h: remove ENABLE(WORKERS) guard since ErrorEvent is now used not
2676         only in workers.
2677
2678 2010-12-13  Yury Semikhatsky  <yurys@chromium.org>
2679
2680         Reviewed by Adam Barth.
2681
2682         WebCore doesn't fire window.onerror event when uncaught JavaScript exceptions are thrown
2683         https://bugs.webkit.org/show_bug.cgi?id=8519
2684
2685         Uncaught exceptions are propagated to window.onerror hander if one is present.
2686         The handler is expected to be a function accepting three arguments: error message,
2687         resource url and line number where the exception occured.
2688
2689         It was decided to dispatch ErrorEvent to all listeners/handlers no matter if they
2690         were created in the same isolated world where the exception occured or not.
2691
2692         Tests: fast/events/window-onerror1.html
2693                fast/events/window-onerror10.html
2694                fast/events/window-onerror11.html
2695                fast/events/window-onerror2.html
2696                fast/events/window-onerror3.html
2697                fast/events/window-onerror4.html
2698                fast/events/window-onerror5.html
2699                fast/events/window-onerror6.html
2700                fast/events/window-onerror7.html
2701                fast/events/window-onerror8.html
2702                fast/events/window-onerror9.html
2703                http/tests/security/window-onerror-exception-in-iframe.html
2704                userscripts/window-onerror-for-isolated-world-1.html
2705                userscripts/window-onerror-for-isolated-world-2.html
2706
2707         * Android.jscbindings.mk:
2708         * CMakeLists.txt:
2709         * GNUmakefile.am:
2710         * WebCore.gypi:
2711         * WebCore.order:
2712         * WebCore.pro:
2713         * WebCore.vcproj/WebCore.vcproj:
2714         * WebCore.xcodeproj/project.pbxproj:
2715         * bindings/js/JSBindingsAllInOne.cpp:
2716         * bindings/js/JSDOMBinding.cpp:
2717         (WebCore::reportException):
2718         * bindings/js/JSErrorHandler.cpp: Renamed from WebCore/bindings/js/JSWorkerContextErrorHandler.cpp.
2719         (WebCore::JSErrorHandler::JSErrorHandler):
2720         (WebCore::JSErrorHandler::~JSErrorHandler):
2721         (WebCore::JSErrorHandler::handleEvent):
2722         * bindings/js/JSErrorHandler.h: Copied from WebCore/bindings/js/JSWorkerContextErrorHandler.h.
2723         (WebCore::JSErrorHandler::create):
2724         (WebCore::createJSErrorHandler):
2725         * bindings/scripts/CodeGeneratorJS.pm:
2726         * bindings/scripts/CodeGeneratorV8.pm:
2727         * bindings/v8/V8ConsoleMessage.cpp:
2728         (WebCore::V8ConsoleMessage::dispatchNow):
2729         (WebCore::V8ConsoleMessage::handler): the method was changed to use generic WebCore exception
2730         reporting mechanism which is also used by JSC bindings.
2731         * bindings/v8/V8ConsoleMessage.h:
2732         * bindings/v8/V8WindowErrorHandler.cpp: Copied from WebCore/bindings/js/JSWorkerContextErrorHandler.h.
2733         (WebCore::V8WindowErrorHandler::V8WindowErrorHandler):
2734         (WebCore::V8WindowErrorHandler::callListenerFunction):
2735         * bindings/v8/V8WindowErrorHandler.h: Renamed from WebCore/bindings/js/JSWorkerContextErrorHandler.h.
2736         (WebCore::V8WindowErrorHandler::create):
2737         * bindings/v8/WorkerContextExecutionProxy.cpp:
2738         (WebCore::v8MessageHandler):
2739         * bindings/v8/WorkerScriptController.cpp:
2740         (WebCore::WorkerScriptController::evaluate):
2741         * dom/Document.cpp:
2742         (WebCore::Document::errorEventTarget):
2743         (WebCore::Document::logExceptionToConsole):
2744         * dom/Document.h:
2745         * dom/ScriptExecutionContext.cpp:
2746         (WebCore::ScriptExecutionContext::PendingException::PendingException):
2747         (WebCore::ScriptExecutionContext::ScriptExecutionContext):
2748         (WebCore::ScriptExecutionContext::reportException): this method is not virtual anymore to
2749         ensure that error event dispatching algorithm is the same in WorkerContext and in Document.
2750         (WebCore::ScriptExecutionContext::dispatchErrorEvent):
2751         * dom/ScriptExecutionContext.h:
2752         * workers/DefaultSharedWorkerRepository.cpp:
2753         (WebCore::postExceptionTask):
2754         * workers/WorkerContext.cpp:
2755         (WebCore::WorkerContext::WorkerContext):
2756         (WebCore::WorkerContext::errorEventTarget):
2757         (WebCore::WorkerContext::logExceptionToConsole):
2758         * workers/WorkerContext.h:
2759         * workers/WorkerMessagingProxy.cpp:
2760         (WebCore::WorkerExceptionTask::performTask):
2761
2762 2010-12-08  Alexander Pavlov  <apavlov@chromium.org>
2763
2764         Reviewed by Joseph Pecoraro.
2765
2766         Web Inspector: Enable CSS property editing name/value-wise (like Firebug does)
2767         https://bugs.webkit.org/show_bug.cgi?id=50565
2768
2769         For CSS property editing, the property name and value have become two fields separated
2770         by a colon (rather than one field containing the full property text.) A user can tab
2771         between the name and value fields forward and backward. A colon typed in the name field
2772         and a semicolon in the value field (unless found inside a string) act as a Tab and focus
2773         the next editable field (while applying the entire property value.)
2774
2775         Now a user can tab through all editable styles for an element, even across rule boundaries.
2776
2777         * inspector/front-end/BreakpointsSidebarPane.js:
2778         (WebInspector.XHRBreakpointsSidebarPane.prototype._startEditingBreakpoint):
2779         * inspector/front-end/DataGrid.js:
2780         (WebInspector.DataGrid.prototype._startEditingColumnOfDataGridNode):
2781         (WebInspector.DataGrid.prototype._startEditing):
2782         * inspector/front-end/ElementsTreeOutline.js:
2783         (WebInspector.ElementsTreeElement.prototype._startEditingAttribute):
2784         (WebInspector.ElementsTreeElement.prototype._startEditingTextNode):
2785         (WebInspector.ElementsTreeElement.prototype._startEditingTagName):
2786         (WebInspector.ElementsTreeElement.prototype._startEditingAsHTML):
2787         * inspector/front-end/MetricsSidebarPane.js:
2788         (WebInspector.MetricsSidebarPane.prototype.startEditing):
2789         * inspector/front-end/ObjectPropertiesSection.js:
2790         (WebInspector.ObjectPropertyTreeElement.prototype.startEditing):
2791         * inspector/front-end/Section.js:
2792         (WebInspector.Section):
2793         (WebInspector.Section.prototype.get subtitleAsTextForTest):
2794         (WebInspector.Section.prototype.get nextSibling):
2795         (WebInspector.Section.prototype.get previousSibling):
2796         * inspector/front-end/SourceFrame.js:
2797         (WebInspector.SourceFrame.prototype._editBreakpointCondition):
2798         * inspector/front-end/StylesSidebarPane.js:
2799         (WebInspector.StylePropertiesSection.prototype.nextEditableSibling):
2800         (WebInspector.StylePropertiesSection.prototype.previousEditableSibling):
2801         (WebInspector.StylePropertiesSection.prototype.addNewBlankProperty):
2802         (WebInspector.StylePropertiesSection.prototype.startEditingSelector):
2803         (WebInspector.StylePropertiesSection.prototype.editingSelectorCommitted):
2804         (WebInspector.StylePropertyTreeElement.prototype.):
2805         (WebInspector.StylePropertyTreeElement.prototype):
2806         * inspector/front-end/TextViewer.js:
2807         (WebInspector.TextViewer.prototype._handleDoubleClick):
2808         * inspector/front-end/WatchExpressionsSidebarPane.js:
2809         (WebInspector.WatchExpressionTreeElement.prototype.startEditing):
2810         * inspector/front-end/inspector.css:
2811         (.child-editing):
2812         * inspector/front-end/inspector.js:
2813         (WebInspector.startEditing.defaultFinishHandler):
2814         (WebInspector.startEditing):
2815         * inspector/front-end/treeoutline.js:
2816         (TreeElement.prototype.select):
2817
2818 2010-12-13  Yael Aharon  <yael.aharon@nokia.com>
2819
2820         Unreviewed.
2821
2822         Added svn propery eol-style. Patches to this file fail to apply on Windows EWS bot.
2823
2824         * accessibility/AccessibilityAllInOne.cpp: Added property svn:eol-style.
2825
2826 2010-12-13  Sheriff Bot  <webkit.review.bot@gmail.com>
2827
2828         Unreviewed, rolling out r73898.
2829         http://trac.webkit.org/changeset/73898
2830         https://bugs.webkit.org/show_bug.cgi?id=50919
2831
2832         FileSystem and Database API's were broken (Requested by loislo
2833         on #webkit).
2834
2835         * inspector/Inspector.idl:
2836         * inspector/InspectorDebuggerAgent.cpp:
2837         (WebCore::InspectorDebuggerAgent::didParseSource):
2838         * inspector/InspectorProfilerAgent.cpp:
2839         (WebCore::InspectorProfilerAgent::resetState):
2840         * inspector/front-end/DOMAgent.js:
2841         * inspector/front-end/DebuggerModel.js:
2842         (WebInspector.DebuggerModel):
2843         (WebInspector.DebuggerModel.prototype.debuggerPaused):
2844         (WebInspector.DebuggerModel.prototype.debuggerResumed):
2845         * inspector/front-end/ProfilesPanel.js:
2846         (WebInspector.ProfilesPanel):
2847         (WebInspector.ProfilesPanel.prototype.updateMainViewWidth):
2848         * inspector/front-end/ResourceManager.js:
2849         (WebInspector.ResourceManager):
2850         (WebInspector.ResourceManager.prototype._registerNotifyHandlers):
2851         (WebInspector.ResourceManager.prototype._unbindResourceURL):
2852         * inspector/front-end/inspector.js:
2853         (WebInspector.addDatabase):
2854         (WebInspector.addDOMStorage):
2855         (WebInspector.updateDOMStorage):
2856         (WebInspector.updateApplicationCacheStatus):
2857         (WebInspector.didGetFileSystemPath):
2858         (WebInspector.didGetFileSystemError):
2859         (WebInspector.didGetFileSystemDisabled):
2860         (WebInspector.updateNetworkState):
2861         (WebInspector.attachDebuggerWhenShown):
2862         (WebInspector.debuggerWasEnabled):
2863         (WebInspector.debuggerWasDisabled):
2864         (WebInspector.profilerWasEnabled):
2865         (WebInspector.profilerWasDisabled):
2866         (WebInspector.parsedScriptSource):
2867         (WebInspector.restoredBreakpoint):
2868         (WebInspector.failedToParseScriptSource):
2869         (WebInspector.pausedScript):
2870         (WebInspector.resumedScript):
2871         (WebInspector.resetProfilesPanel):
2872         (WebInspector.didCommitLoad):
2873         (WebInspector.addProfileHeader):
2874         (WebInspector.setRecordingProfile):
2875         (WebInspector.addHeapSnapshotChunk):
2876         (WebInspector.finishHeapSnapshot):
2877
2878 2010-12-13  Anton Muhin  <antonm@chromium.org>
2879
2880         Reviewed by Pavel Feldman.
2881
2882         [v8] More CSS wrappers GC work: keep document's style sheets, style sheet and css rule lists' items in proper object groups
2883         https://bugs.webkit.org/show_bug.cgi?id=50828
2884
2885         * bindings/v8/DOMData.h:
2886         (WebCore::DOMData::WrapperMapObjectRemover::visitDOMWrapper):
2887         (WebCore::DOMData::removeObjectsFromWrapperMap):
2888         * bindings/v8/DOMDataStore.h:
2889         (WebCore::ChunkedTable::visit):
2890         (WebCore::ChunkedTable::visitEntries):
2891         (WebCore::DOMDataStore::IntrusiveDOMWrapperMap::visit):
2892         (WebCore::DOMDataStore::IntrusiveDOMWrapperMap::ChunkedTableTraits::visit):
2893         * bindings/v8/V8DOMMap.cpp:
2894         (WebCore::removeAllDOMObjectsInCurrentThread):
2895         (WebCore::visitDOMNodesInCurrentThread):
2896         (WebCore::visitDOMObjectsInCurrentThread):
2897         (WebCore::visitActiveDOMObjectsInCurrentThread):
2898         (WebCore::visitDOMSVGElementInstancesInCurrentThread):
2899         * bindings/v8/V8DOMMap.h:
2900         (WebCore::WeakReferenceMap::visit):
2901         * bindings/v8/V8GCController.cpp:
2902         (WebCore::DOMObjectVisitor::visitDOMWrapper):
2903         (WebCore::EnsureWeakDOMNodeVisitor::visitDOMWrapper):
2904         (WebCore::GCPrologueVisitor::visitDOMWrapper):
2905         (WebCore::NodeGrouperVisitor::visitDOMWrapper):
2906         (WebCore::NodeGrouperVisitor::applyGrouping):
2907         (WebCore::DOMObjectGrouperVisitor::visitDOMWrapper):
2908         (WebCore::GCEpilogueVisitor::visitDOMWrapper):
2909
2910 2010-12-13  Zoltan Herczeg  <zherczeg@webkit.org>
2911
2912         Unreviewed build fix for r73894.
2913
2914         SVGFEImage should also check its hasResult() in its apply().
2915
2916         * svg/graphics/filters/SVGFEImage.cpp:
2917         (WebCore::FEImage::apply):
2918
2919 2010-12-13  Ilya Tikhonovsky  <loislo@chromium.org>
2920
2921         Reviewed by Yury Semikhatsky.
2922
2923         Web Inspector: Protocol cleanup task. Assign domain attribute to Resources and Debugger specific functions.
2924
2925         Debugger and Resources related notification functions of Inspector.idl were
2926         marked as such with help of "domain" attribute. The other changes in js files
2927         are reflecting this change. Some wrappers in WebInspector namespace were dropped,
2928         the others were moved to DebuggerModel class.
2929
2930         https://bugs.webkit.org/show_bug.cgi?id=50906
2931
2932         * inspector/Inspector.idl:
2933         * inspector/InspectorDebuggerAgent.cpp:
2934         (WebCore::InspectorDebuggerAgent::didParseSource):
2935         * inspector/InspectorProfilerAgent.cpp:
2936         (WebCore::InspectorProfilerAgent::resetState):
2937         * inspector/front-end/DOMAgent.js:
2938         (WebInspector.DOMAgent.prototype.didCommitLoad):
2939         * inspector/front-end/DebuggerModel.js:
2940         (WebInspector.DebuggerModel):
2941         (WebInspector.DebuggerModel.prototype.pausedScript):
2942         (WebInspector.DebuggerModel.prototype.resumedScript):
2943         (WebInspector.DebuggerModel.prototype.attachDebuggerWhenShown):
2944         (WebInspector.DebuggerModel.prototype.debuggerWasEnabled):
2945         (WebInspector.DebuggerModel.prototype.debuggerWasDisabled):
2946         (WebInspector.DebuggerModel.prototype.parsedScriptSource):
2947         (WebInspector.DebuggerModel.prototype.failedToParseScriptSource):
2948         * inspector/front-end/ProfilesPanel.js:
2949         (WebInspector.ProfilesPanel):
2950         (WebInspector.ProfilesPanel.prototype.addHeapSnapshots):
2951         (WebInspector.ProfilesPanel.prototype.updateMainViewWidth):
2952         (WebInspector.ProfilesPanel.prototype.setRecordingProfile):
2953         * inspector/front-end/ResourceManager.js:
2954         (WebInspector.ResourceManager):
2955         (WebInspector.ResourceManager.prototype._unbindResourceURL):
2956         (WebInspector.ResourceManager.prototype.updateDOMStorage):
2957         (WebInspector.ResourceManager.prototype.updateApplicationCacheStatus):
2958         (WebInspector.ResourceManager.prototype.didGetFileSystemPath):
2959         (WebInspector.ResourceManager.prototype.didGetFileSystemError):
2960         (WebInspector.ResourceManager.prototype.didGetFileSystemDisabled):
2961         (WebInspector.ResourceManager.prototype.updateNetworkState):
2962         (WebInspector.ResourceManager.prototype.addDatabase):
2963         (WebInspector.ResourceManager.prototype.addDOMStorage):
2964         * inspector/front-end/inspector.js:
2965
2966 2010-12-13  Zoltan Herczeg  <zherczeg@webkit.org>
2967
2968         Reviewed by Dirk Schulze.
2969
2970         Better result passing in filter primitives
2971         https://bugs.webkit.org/show_bug.cgi?id=49907
2972
2973         SVG filter primitives can use the output of other filters. The
2974         input and output format of a filter can be a premultiplied or
2975         unmultiplied RGBA array, or an image buffer. All filter
2976         primitive results were converted to image buffers before, which
2977         could be an unecessary (and really costly) operation, if
2978         a filter expects its input in the same format as the output
2979         of the input filter primitive. This overhead is removed by
2980         this patch. All apply() methods are updated according to this
2981         new filter primitive interface.
2982
2983         Filters do not generate their results twice (or more) anymore,
2984         when their apply() called multiple times.
2985
2986         The existing tests cover this feature.
2987
2988         * manual-tests/svg-filter-animation.svg: Added.
2989         * platform/graphics/filters/FEBlend.cpp:
2990         (WebCore::FEBlend::apply):
2991         * platform/graphics/filters/FEColorMatrix.cpp:
2992         (WebCore::FEColorMatrix::apply):
2993         * platform/graphics/filters/FEComponentTransfer.cpp:
2994         (WebCore::FEComponentTransfer::apply):
2995         * platform/graphics/filters/FEComposite.cpp:
2996         (WebCore::FEComposite::apply):
2997         * platform/graphics/filters/FEConvolveMatrix.cpp:
2998         (WebCore::FEConvolveMatrix::apply):
2999         * platform/graphics/filters/FEDisplacementMap.cpp:
3000         (WebCore::FEDisplacementMap::apply):
3001         * platform/graphics/filters/FEFlood.cpp:
3002         (WebCore::FEFlood::apply):
3003         * platform/graphics/filters/FEGaussianBlur.cpp:
3004         (WebCore::FEGaussianBlur::apply):
3005         * platform/graphics/filters/FELighting.cpp:
3006         (WebCore::FELighting::apply):
3007         * platform/graphics/filters/FEMerge.cpp:
3008         (WebCore::FEMerge::apply):
3009         * platform/graphics/filters/FEMerge.h:
3010         * platform/graphics/filters/FEMorphology.cpp:
3011         (WebCore::FEMorphology::apply):
3012         * platform/graphics/filters/FEOffset.cpp:
3013         (WebCore::FEOffset::apply):
3014         * platform/graphics/filters/FETile.cpp:
3015         (WebCore::FETile::apply):
3016         * platform/graphics/filters/FETurbulence.cpp:
3017         (WebCore::FETurbulence::apply):
3018         * platform/graphics/filters/FilterEffect.cpp:
3019         (WebCore::FilterEffect::requestedRegionOfInputImageData):
3020         (WebCore::FilterEffect::asImageBuffer):
3021         (WebCore::FilterEffect::asUnmultipliedImage):
3022         (WebCore::FilterEffect::asPremultipliedImage):
3023         (WebCore::FilterEffect::copyImageBytes):
3024         (WebCore::FilterEffect::copyUnmultipliedImage):
3025         (WebCore::FilterEffect::copyPremultipliedImage):
3026         (WebCore::FilterEffect::createImageBufferResult):
3027         (WebCore::FilterEffect::createUnmultipliedImageResult):
3028         (WebCore::FilterEffect::createPremultipliedImageResult):
3029         * platform/graphics/filters/FilterEffect.h:
3030         (WebCore::FilterEffect::hasResult):
3031         * platform/graphics/filters/SourceAlpha.cpp:
3032         (WebCore::SourceAlpha::apply):
3033         * platform/graphics/filters/SourceGraphic.cpp:
3034         (WebCore::SourceGraphic::apply):
3035         * platform/graphics/filters/SourceGraphic.h:
3036         * rendering/RenderSVGResourceFilter.cpp:
3037         (WebCore::RenderSVGResourceFilter::postApplyResource):
3038         * svg/graphics/filters/SVGFEImage.cpp:
3039         (WebCore::FEImage::apply):
3040
3041 2010-12-13  Csaba Osztrogonác  <ossy@webkit.org>
3042
3043         Unreviewed.
3044
3045         * WebCore.pro: Remove non-existant loader/Request.h from build system.
3046
3047 2010-12-13  Noel Gordon  <noel.gordon@gmail.com>
3048
3049         Reviewed by Eric Seidel.
3050
3051         [chromium] Reduce canvas.toDataURL("image/jpeg") run-time cost by 10%
3052         https://bugs.webkit.org/show_bug.cgi?id=50804
3053
3054         Follow on from r73173, unroll the SkUnPreMultiply::PMColorToColor() call
3055         viz., compute the unpremultiplatcion in-place. This reduces the run-time
3056         cost of jpeg encoding by 10-15% for my image test set.
3057
3058         No new tests: canvas.toDataURL() is covered by existing tests.
3059
3060         * platform/image-encoders/skia/JPEGImageEncoder.cpp:
3061         (WebCore::preMultipliedBGRAtoRGB):
3062
3063 2010-12-13  Helder Correia  <helder@sencha.com>
3064
3065         Reviewed by Eric Seidel.
3066
3067         [Qt] StillImage::draw() should use ContextShadow
3068         https://bugs.webkit.org/show_bug.cgi?id=50849
3069
3070         The branch that checks for a shadow requirement in StillImage::draw()
3071         is executed when drawing a canvas onto a canvas with
3072         ctx1.drawImage(canvas2, x, y). The current implementation supports
3073         solid shadows only. And if transformations are present, the offset gets
3074         transformed as well. Thus, ContextShadow must be used instead in order
3075         to support blur and correct offset transformations.
3076
3077         Test: fast/canvas/canvas-draw-canvas-on-canvas-shadow.html
3078
3079         * platform/graphics/qt/StillImageQt.cpp:
3080         (WebCore::StillImage::draw):
3081
3082 2010-12-12  Jon Honeycutt  <jhoneycutt@apple.com>
3083
3084         Unreviewed build fix.
3085
3086         * editing/EditingAllInOne.cpp:
3087         Add new file to the all-in-one.
3088
3089 2010-12-12  Jon Honeycutt  <jhoneycutt@apple.com>
3090
3091         Unreviewed build fix.
3092
3093         * WebCore.vcproj/WebCore.vcproj:
3094         Remove accidentally-committed conflict marker.
3095
3096 2010-10-28  MORITA Hajime  <morrita@google.com>
3097
3098         Reviewed by Ojan Vafai.
3099
3100         spellcheck does not check pasted text
3101         https://bugs.webkit.org/show_bug.cgi?id=40092
3102
3103         - Introduced SpellChecker class to encapsulate asynchronous spell
3104           checker state: sequence id, requesting text and target node.
3105           This is also the first step to decompose spell-check related
3106           code to a separate class.
3107         - Added EditorClient::isAsynchronousSpellCheckingEnabled() 
3108           to use async spellcheck API on the platform.
3109           These APIs are touched by SpellChecker.
3110         - Used SpellChecker to check a pasted test. Text to check is
3111           collected from the subtree under the editingRoot.
3112         - Added Setting::m_asynchronousSpellCheckingEnabled to control
3113           async spell checking.
3114
3115         Test: editing/spelling/spellcheck-paste.html
3116
3117         * CMakeLists.txt:
3118         * GNUmakefile.am:
3119         * WebCore.exp.in:
3120         * WebCore.gypi:
3121         * WebCore.pro:
3122         * WebCore.vcproj/WebCore.vcproj:
3123         * WebCore.xcodeproj/project.pbxproj:
3124         * dom/DocumentMarkerController.cpp:
3125         (WebCore::DocumentMarkerController::showMarkers):
3126         (showDocumentMarkers):
3127         * dom/DocumentMarkerController.h:
3128         * dom/PositionIterator.cpp:
3129         (WebCore::PositionIterator::setOffsetInLeafNode):
3130         * dom/PositionIterator.h:
3131         * editing/Editor.cpp:
3132         (WebCore::Editor::replaceSelectionWithFragment):
3133         (WebCore::Editor::Editor):
3134         (WebCore::findFirstMarkable):
3135         (WebCore::Editor::selectionStartHasSpellingMarkerFor):
3136         * editing/Editor.h:
3137         (WebCore::Editor::spellChecker):
3138         * editing/SpellChecker.cpp: Added.
3139         (WebCore::SpellChecker::SpellChecker):
3140         (WebCore::SpellChecker::~SpellChecker):
3141         (WebCore::SpellChecker::initRequest):
3142         (WebCore::SpellChecker::clearRequest):
3143         (WebCore::SpellChecker::isAsynchronousEnabled):
3144         (WebCore::SpellChecker::canCheckAsynchronously):
3145         (WebCore::SpellChecker::isBusy):
3146         (WebCore::SpellChecker::isValid):
3147         (WebCore::SpellChecker::isCheckable):
3148         (WebCore::SpellChecker::requestCheckingFor):
3149         (WebCore::forwardIterator):
3150         (WebCore::SpellChecker::didCheck):
3151         * editing/SpellChecker.h: Added.
3152         (WebCore::SpellCheckingResult::SpellCheckingResult):
3153         (WebCore::SpellCheckingResult::type):
3154         (WebCore::SpellCheckingResult::location):
3155         (WebCore::SpellCheckingResult::length):
3156         * loader/EmptyClients.h:
3157         (WebCore::EmptyEditorClient::requestCheckingOfString):
3158         * page/EditorClient.h:
3159         * page/Settings.cpp:
3160         (WebCore::Settings::Settings):
3161         * page/Settings.h:
3162         (WebCore::Settings::setAsynchronousSpellCheckingEnabled):
3163         (WebCore::Settings::asynchronousSpellCheckingEnabled):
3164
3165 2010-12-09  Antonio Gomes  <agomes@rim.com>
3166
3167         Reviewed by Daniel Bates.
3168
3169         Spatial Navigation: code clean up (part II)
3170         https://bugs.webkit.org/show_bug.cgi?id=50666
3171
3172         No new tests needed.
3173
3174         * page/FocusController.cpp: Removed static declaration of updateFocusCandidateIfNeeded() from
3175         the top of FocusController.cpp, and added the 'static' keyword where the function is implemented;
3176         * page/SpatialNavigation.cpp: In FocusCandidate constructor, renamed 'n' to 'node', and added an assert to it;
3177         (WebCore::FocusCandidate::FocusCandidate):
3178         (WebCore::virtualRectForAreaElementAndDirection): Added an assert to 'node';
3179         * page/SpatialNavigation.h:I reordered the declaration of some methods in order to group related ones;
3180         Removed isScrollableContainerNode() function declaration since it is not used outside SpatialNavigation.cpp;
3181         And removed the declaration of isNodeDeepDescendantOfDocument() since it does not exist anymore.
3182
3183 2010-12-12  Philippe Normand  <pnormand@igalia.com>
3184
3185         Reviewed by Xan Lopez.
3186
3187         build-webkit --gtk --minimal fails
3188         https://bugs.webkit.org/show_bug.cgi?id=46267
3189
3190         No new tests, build fix only.
3191
3192         * GNUmakefile.am: Include some JS bindings generated headers in
3193         the build even if their corresponding feature is disabled. They
3194         are needed to make the DOM bindings build.
3195
3196 2010-12-12  Sam Magnuson  <smagnuso@gmail.com>
3197
3198         Reviewed by Eric Seidel.
3199
3200         [Qt] Compile with QT_NO_QUUID_STRING.
3201         https://bugs.webkit.org/show_bug.cgi?id=49745
3202
3203         * platform/UUID.cpp:
3204         (WebCore::createCanonicalUUIDString):
3205
3206 2010-12-12  Ragner Magalhaes  <ragner.magalhaes@openbossa.org>
3207
3208         Reviewed by Eric Seidel.
3209
3210         [Qt] Missing style for date pickers on Qt Mobile theme
3211         https://bugs.webkit.org/show_bug.cgi?id=50628
3212
3213         * css/themeQtMobile.css:
3214
3215 2010-12-11  Alice Liu  <alice.liu@apple.com>
3216
3217         Mac build fix.
3218
3219         * platform/network/mac/ResourceResponseMac.mm:
3220         (WebCore::ResourceResponse::platformLazyInit):
3221         Resolve string[0] ambiguity by passing 0U.
3222
3223 2010-12-11  Adam Barth  <abarth@webkit.org>
3224
3225         Reviewed by Sam Weinig.
3226
3227         [V8] Move to DOMWindow::setLocation
3228         https://bugs.webkit.org/show_bug.cgi?id=50876
3229
3230         Recently, JavaScriptCore moved to implementing setLocation in WebCore.
3231         This patch change V8 to use that common code path.  I haven't removed
3232         the old code path because it's still used for other things (like
3233         assigning window.location.href), but I'll move the rest over in a
3234         future patch.
3235
3236         * bindings/v8/custom/V8DOMWindowCustom.cpp:
3237         (WebCore::V8DOMWindow::locationAccessorSetter):
3238         * bindings/v8/specialization/V8BindingState.cpp:
3239         (WebCore::::getFirstWindow):
3240         * bindings/v8/specialization/V8BindingState.h:
3241
3242 2010-10-11  Diego Gonzalez  <diegohcg@webkit.org>
3243
3244         Reviewed by Kenneth Rohde Christiansen.
3245
3246         [Qt] Mock DeviceOrientation client for DRT
3247         https://bugs.webkit.org/show_bug.cgi?id=47490
3248
3249         * WebCore.pro:
3250
3251 2010-12-11  Joone Hur  <joone@kldp.org>
3252
3253         Reviewed by Alexey Proskuryakov.
3254
3255         enumeration value ‘ResponseTypeArrayBuffer’ not handled in switch
3256         https://bugs.webkit.org/show_bug.cgi?id=50871
3257
3258         Fix the warning which occurs when enumeration value is not handled in switch.
3259
3260         No new tests, no change in behavior.
3261
3262         * bindings/js/JSXMLHttpRequestCustom.cpp:
3263         (WebCore::JSXMLHttpRequest::response):
3264
3265 2010-12-11  Patrick Gansterer  <paroga@webkit.org>
3266
3267         Reviewed by Darin Adler.
3268
3269         Add an overload to makeString for Vector<char>
3270         https://bugs.webkit.org/show_bug.cgi?id=50123
3271
3272         This also contains a segfault fix for ImageBuffer::toDataURL of the Haiku port.
3273
3274         * platform/graphics/cg/ImageBufferCG.cpp:
3275         (WebCore::ImageBuffer::toDataURL):
3276         * platform/graphics/gtk/ImageBufferGtk.cpp:
3277         (WebCore::ImageBuffer::toDataURL):
3278         * platform/graphics/haiku/ImageBufferHaiku.cpp:
3279         (WebCore::ImageBuffer::toDataURL):
3280         * platform/graphics/skia/ImageBufferSkia.cpp:
3281         (WebCore::ImageBuffer::toDataURL):
3282
3283 2010-12-10  Alexey Proskuryakov  <ap@apple.com>
3284
3285         Mac build fix.
3286
3287         * platform/network/cf/ResourceResponseCFNet.cpp: (WebCore::ResourceResponse::platformLazyInit):
3288         Resolve string[0] ambiguity by passing 0U.
3289
3290 2010-12-10  Steve Falkenburg  <sfalken@apple.com>
3291
3292         Windows production build fix.
3293         
3294         Only the vsprops are indirected through WebKitVSPropsRedirectionDir, not the scripts in WebKitLibraries/win/tools/scripts.
3295
3296         * WebCore.vcproj/WebCoreGeneratedCommon.vsprops:
3297         * WebCore.vcproj/build-generated-files.sh:
3298
3299 2010-12-10  John Knottenbelt  <jknotten@chromium.org>
3300
3301         Reviewed by Eric Seidel.
3302
3303         Remove WebCore/platform/mac/GeolocationService.{h,mm}
3304         https://bugs.webkit.org/show_bug.cgi?id=50074
3305
3306         Remove unused non-client-based geolocation code.
3307
3308         * platform/mac/GeolocationServiceMac.h: Removed.
3309         * platform/mac/GeolocationServiceMac.mm: Removed.
3310
3311 2010-12-10  Alexey Proskuryakov  <ap@apple.com>
3312
3313         Reviewed by Darin Adler.
3314
3315         https://bugs.webkit.org/show_bug.cgi?id=46573
3316         <rdar://problem/8479389> REGRESSION: charset="utf-8" (with quotes) doesn't work
3317
3318         Test: http/tests/mime/quoted-charset.php
3319
3320         * platform/network/cf/ResourceResponseCFNet.cpp: (WebCore::ResourceResponse::platformLazyInit):
3321         * platform/network/mac/ResourceResponseMac.mm: (WebCore::ResourceResponse::platformLazyInit):
3322         Work around a CFNetwork issue, strip quotes if they are present.
3323
3324 2010-12-10  Vincent Scheib  <scheib@chromium.org>
3325
3326         Reviewed by James Robinson.
3327
3328         Shader::loadShader() must initialize variable passed to getShaderiv
3329         https://bugs.webkit.org/show_bug.cgi?id=50842
3330
3331         Test: fast/canvas/canvas-largedraws.html
3332
3333         * platform/graphics/gpu/Shader.cpp:
3334         (WebCore::Shader::loadShader):
3335
3336 2010-12-10  Vincent Scheib  <scheib@chromium.org>
3337
3338         Reviewed by James Robinson.
3339
3340         Texture::updateSubRect should pass IntRect by reference
3341         https://bugs.webkit.org/show_bug.cgi?id=50845
3342
3343         No test, changing to pass by ref.
3344
3345         * platform/graphics/gpu/Texture.cpp:
3346         (WebCore::Texture::updateSubRect):
3347         * platform/graphics/gpu/Texture.h:
3348
3349 2010-12-10  Darin Adler  <darin@apple.com>
3350
3351         Reviewed by Sam Weinig.
3352
3353         Move open and showModalDialog implementations from bindings into DOM class DOMWindow
3354         https://bugs.webkit.org/show_bug.cgi?id=50836
3355
3356         * bindings/js/JSDOMWindowCustom.cpp:
3357         (WebCore::JSDOMWindow::open): Removed most of the code and changed to call
3358         DOMWindow::open.
3359         (WebCore::DialogHandler::DialogHandler): Added. Object is used to handle the
3360         arguments and return value in showModalDialog.
3361         (WebCore::DialogHandler::dialogCreated): Ditto.
3362         (WebCore::DialogHandler::returnValue): Ditto.
3363         (WebCore::setUpDialog): Added. Function passed to showModalDialog that just
3364         casts pointer to DialogHandler can calls dialogCreated.
3365         (WebCore::JSDOMWindow::showModalDialog): Removed most of the code and changed
3366         to call DOMWindow::showModalDialog.
3367         (WebCore::JSDOMWindow::postMessage): Made style match the rest of the file by
3368         renaming local variables and getting rid of a needless ones.
3369
3370         * page/DOMWindow.cpp:
3371         (WebCore::DOMWindow::parseModalDialogFeatures): Moved body of this function
3372         to the WindowFeatures class.
3373         (WebCore::DOMWindow::allowPopUp): Renamed argument from activeFrame to firstFrame,
3374         because that's the frame we pass in here. Also added an overload so this can be
3375         called on a window rather than a frame.
3376         (WebCore::DOMWindow::setLocation): Renamed a couple variables so the names are
3377         the same as in open and showModalDialog. Factored the JavaScript security check
3378         into a new function named isInsecureScriptAccess.
3379         (WebCore::DOMWindow::isInsecureScriptAccess): Here is the new function.
3380         (WebCore::DOMWindow::createWindow): Added. Contains logic shared by open and
3381         showModalDialog just as the function named createWindow in JSDOMWindowCustom.cpp
3382         used to.
3383         (WebCore::DOMWindow::open): Added. Code from JSDOMWindowCustom without the
3384         JavaScript language binding part, and with a bit of refactoring to share code
3385         with the rest of the DOMWindow class.
3386         (WebCore::DOMWindow::showModalDialog): Ditto.
3387
3388         * page/DOMWindow.h: Moved conditional parts of the file into separate paragraphs
3389         in alphabetical order so they are not scattered thorugh the file. Removed redundant
3390         includes. Added some blank lines for clarity. Added an open function and a
3391         showModalDialog function. Added private createWindow and isInsecureScriptAccess
3392         functions.
3393
3394         * page/WindowFeatures.cpp:
3395         (WebCore::isWindowFeaturesSeparator): Renamed from isSeparator for clarity.
3396         (WebCore::WindowFeatures::WindowFeatures): Updated for name change. Used isEmpty
3397         instead of checking length. Added a new constructor for use when making dialogs,
3398         with code from the showModalDialog function.
3399         (WebCore::WindowFeatures::boolFeature): Use DialogFeaturesMap typedef.
3400         (WebCore::WindowFeatures::floatFeature): Use DialogFeaturesMap typedef.
3401         Renamed a local variable and tweaked the comments a bit.
3402         (WebCore::WindowFeatures::parseDialogFeatures): Added. Code moved here from
3403         DOMWindow::parseDialogFeatures and refactored a bit.
3404
3405         * page/WindowFeatures.h: Added new constructor, new parseDialogFeatures
3406         function, DialogFeaturesMap typedef, and made setWindowFeature function private.
3407
3408 2010-12-10  Chris Fleizach  <cfleizach@apple.com>
3409
3410         Reviewed by Darin Adler.
3411
3412         AX: refactor AccessibilityRenderObject::doAccessibilityHitTest
3413         https://bugs.webkit.org/show_bug.cgi?id=50574
3414
3415         Refactors accessibility hit testing to allow for a more flexible model when handling elements
3416         with fake sub-elements (like sliders or list boxes).
3417
3418         Renamed doAccessibilityHitTest -> accessibilityHitTest, which is called on the root
3419         accessibility render object. Then subclassers are able to override 
3420         elementAccessibilityHitTest to return their own specific elements.
3421
3422         * accessibility/AccessibilityListBox.cpp:
3423         (WebCore::AccessibilityListBox::elementAccessibilityHitTest):
3424         * accessibility/AccessibilityListBox.h:
3425         * accessibility/AccessibilityObject.h:
3426         (WebCore::AccessibilityObject::accessibilityHitTest):
3427         (WebCore::AccessibilityObject::elementAccessibilityHitTest):
3428         * accessibility/AccessibilityRenderObject.cpp:
3429         (WebCore::AccessibilityRenderObject::accessibilityHitTest):
3430         * accessibility/AccessibilityRenderObject.h:
3431         * accessibility/AccessibilitySlider.cpp:
3432         (WebCore::AccessibilitySlider::elementAccessibilityHitTest):
3433         * accessibility/AccessibilitySlider.h:
3434         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
3435         (webkit_accessible_component_ref_accessible_at_point):
3436         * accessibility/mac/AccessibilityObjectWrapper.mm:
3437         (-[AccessibilityObjectWrapper accessibilityHitTest:]):
3438
3439 2010-12-10  Kenneth Russell  <kbr@google.com>
3440
3441         Reviewed by Darin Adler.
3442
3443         Clean up assertion in Extensions3DOpenGL.cpp
3444         https://bugs.webkit.org/show_bug.cgi?id=50852
3445
3446         Built Release mode to test. No functionality change.
3447
3448         * platform/graphics/opengl/Extensions3DOpenGL.cpp:
3449         (WebCore::Extensions3DOpenGL::ensureEnabled):
3450
3451 2010-12-10  Cosmin Truta  <ctruta@chromium.org>
3452
3453         Reviewed by Eric Seidel.
3454
3455         Crash while processing ill-formed <textPath> ouside of <text>
3456         https://bugs.webkit.org/show_bug.cgi?id=47759
3457
3458         Renderers within a <text> subtree are created only when their corresponding elements
3459         satisfy the content model.
3460
3461         Test: svg/custom/invalid-text-content.svg
3462
3463         * svg/SVGTRefElement.cpp:
3464         (WebCore::SVGTRefElement::childShouldCreateRenderer): Fixed to comply with the content model.
3465         (WebCore::SVGTRefElement::rendererIsNeeded): Added.
3466         * svg/SVGTRefElement.h:
3467         * svg/SVGTSpanElement.cpp:
3468         (WebCore::SVGTSpanElement::childShouldCreateRenderer): Fixed to comply with the content model.
3469         (WebCore::SVGTSpanElement::rendererIsNeeded): Added.
3470         * svg/SVGTSpanElement.h: Changed indentation.
3471         * svg/SVGTextElement.cpp:
3472         (WebCore::SVGTextElement::childShouldCreateRenderer): Reformatted.
3473         * svg/SVGTextPathElement.cpp:
3474         (WebCore::SVGTextPathElement::childShouldCreateRenderer): Fixed to comply with the content model.
3475         (WebCore::SVGTextPathElement::rendererIsNeeded): Added.
3476         * svg/SVGTextPathElement.h:
3477
3478 2010-12-10  Zhenyao Mo  <zmo@google.com>
3479
3480         Reviewed by Adam Barth.
3481
3482         Use enums instead of booleans in ImageSource/ImageDecoder constructors
3483         https://bugs.webkit.org/show_bug.cgi?id=50818
3484
3485         This patch basically defines two enum type in ImageSource: AlphaOption
3486         and GammaAndColorProfileOption and use them as ImageSource and ImageDecoder
3487         constructor parameters instead of boolean typs.
3488
3489         * platform/graphics/ImageSource.cpp:
3490         (WebCore::ImageSource::ImageSource):
3491         (WebCore::ImageSource::setData):
3492         * platform/graphics/ImageSource.h: Define the two enum types.
3493         * platform/graphics/cg/GraphicsContext3DCG.cpp:
3494         (WebCore::GraphicsContext3D::getImageData):
3495         * platform/graphics/cg/ImageSourceCG.cpp:
3496         (WebCore::ImageSource::ImageSource):
3497         * platform/graphics/qt/ImageDecoderQt.cpp:
3498         (WebCore::ImageDecoder::create):
3499         (WebCore::ImageDecoderQt::ImageDecoderQt):
3500         * platform/graphics/qt/ImageDecoderQt.h:
3501         * platform/graphics/skia/GraphicsContext3DSkia.cpp:
3502         (WebCore::GraphicsContext3D::getImageData):
3503         * platform/image-decoders/ImageDecoder.cpp:
3504         (WebCore::ImageDecoder::create):
3505         * platform/image-decoders/ImageDecoder.h:
3506         (WebCore::ImageDecoder::ImageDecoder):
3507         * platform/image-decoders/bmp/BMPImageDecoder.cpp:
3508         (WebCore::BMPImageDecoder::BMPImageDecoder):
3509         * platform/image-decoders/bmp/BMPImageDecoder.h:
3510         * platform/image-decoders/gif/GIFImageDecoder.cpp:
3511         (WebCore::GIFImageDecoder::GIFImageDecoder):
3512         * platform/image-decoders/gif/GIFImageDecoder.h:
3513         * platform/image-decoders/ico/ICOImageDecoder.cpp:
3514         (WebCore::ICOImageDecoder::ICOImageDecoder):
3515         (WebCore::ICOImageDecoder::decodeAtIndex):
3516         * platform/image-decoders/ico/ICOImageDecoder.h:
3517         * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
3518         (WebCore::JPEGImageDecoder::JPEGImageDecoder):
3519         * platform/image-decoders/jpeg/JPEGImageDecoder.h:
3520         * platform/image-decoders/png/PNGImageDecoder.cpp:
3521         (WebCore::PNGImageDecoder::PNGImageDecoder):
3522         * platform/image-decoders/png/PNGImageDecoder.h:
3523         * platform/image-decoders/webp/WEBPImageDecoder.cpp:
3524         (WebCore::WEBPImageDecoder::WEBPImageDecoder):
3525         * platform/image-decoders/webp/WEBPImageDecoder.h:
3526
3527 2010-12-10  Ryosuke Niwa  <rniwa@webkit.org>
3528
3529         Reviewed by Darin Adler.
3530
3531         REGRESSION(r73799): editing/execCommand/4920488.html fails
3532         https://bugs.webkit.org/show_bug.cgi?id=50854
3533
3534         The regression was caused by Range::processContents's not extracting
3535         m_end.container()->firstChild(). Fixed the bug by always adding the first child.
3536
3537         * dom/Range.cpp:
3538         (WebCore::Range::processContents):
3539
3540 2010-12-10  Adam Barth  <abarth@webkit.org>
3541
3542         Reviewed by Eric Seidel.
3543
3544         REGRESSION: Infinite redirect on developer.apple.com
3545         https://bugs.webkit.org/show_bug.cgi?id=45627
3546
3547         Tests: fast/loader/form-submit-aborts-parsing.html
3548                fast/loader/location-change-aborts-parsing.html
3549
3550         This patch is not pretty, but it fixes the bug.  I stole this approach
3551         from the old HTML parser (as suggested by Eric Seidel).  The other
3552         approaches that folks tried for this bug are better, but it's inclear
3553         how to get them to work correctly.  I've added a large FIXME comment.
3554
3555         * html/parser/HTMLDocumentParser.cpp:
3556         (WebCore::HTMLDocumentParser::pumpTokenizer):
3557         * html/parser/HTMLTreeBuilder.h:
3558         (WebCore::HTMLTreeBuilder::isParsingFragment):
3559
3560 2010-12-10  Brian Weinstein  <bweinstein@apple.com>
3561
3562         Reviewed by Ada Chan.
3563
3564         When we are creating a ContextMenuItem, only call setSubMenu if we have
3565         a subMenu to set.
3566
3567         * platform/ContextMenuItem.cpp:
3568         (WebCore::ContextMenuItem::ContextMenuItem):
3569
3570 2010-12-10  Kenneth Russell  <kbr@google.com>
3571
3572         Unreviewed, another build fix. #include <wtf/UnusedParam.h> needed
3573         for Release builds.
3574
3575         * platform/graphics/opengl/Extensions3DOpenGL.cpp:
3576
3577 2010-12-10  Kenneth Russell  <kbr@google.com>
3578
3579         Unreviewed, build fix. Change #ifndef NDEBUG to #ifdef NDEBUG.
3580
3581         * platform/gr