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