Second unreviewed build fix for r95941
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2011-09-26  Ilya Tikhonovsky  <loislo@chromium.org>
2
3         Second unreviewed build fix for r95941
4
5         * inspector/InspectorInstrumentation.cpp:
6         (WebCore::InspectorInstrumentation::willCallFunctionImpl):
7
8 2011-09-26  Ilya Tikhonovsky  <loislo@chromium.org>
9
10         Unreviewed build fix for webkit builds after r95941.
11
12         * inspector/InspectorInstrumentation.cpp:
13         (WebCore::InspectorInstrumentation::willCallFunctionImpl):
14
15 2011-09-26  Andrey Kosyakov  <caseq@chromium.org>
16
17         Web Inspector: [Extensions API] allow resources to hook on click on resource links
18         https://bugs.webkit.org/show_bug.cgi?id=68528
19
20         Reviewed by Yury Semikhatsky.
21
22         * WebCore.gypi:
23         * WebCore.vcproj/WebCore.vcproj:
24         * inspector/front-end/ExtensionAPI.js:
25         (injectedExtensionAPI.Console.prototype.get Severity):
26         (injectedExtensionAPI.Panels.prototype.create):
27         (injectedExtensionAPI.Panels.prototype.setOpenResourceHandler.else.callbackWrapper):
28         (injectedExtensionAPI.Panels.prototype.setOpenResourceHandler):
29         (injectedExtensionAPI.ExtensionServerClient.prototype.hasHandler):
30         (injectedExtensionAPI.ExtensionServerClient.prototype.deregisterHandler):
31         * inspector/front-end/ExtensionServer.js:
32         (WebInspector.ExtensionServer):
33         (WebInspector.ExtensionServer.prototype._onSetOpenResourceHandler):
34         (WebInspector.ExtensionServer.prototype._handleAnchorClicked):
35         (WebInspector.ExtensionServer.prototype._addExtensions):
36         (WebInspector.ExtensionServer.prototype._addExtension):
37         (WebInspector.ExtensionServer.prototype._registerExtension):
38         * inspector/front-end/SettingsScreen.js:
39         (WebInspector.SettingsScreen):
40         (WebInspector.SettingsScreen.prototype._createCustomSetting):
41         * inspector/front-end/WebKit.qrc:
42         * inspector/front-end/helpScreen.css:
43         (.help-content select):
44         (.help-content select:disabled):
45         (.help-content option):
46         * inspector/front-end/inspector.html:
47         * inspector/front-end/inspector.js:
48         (WebInspector.set attached):
49         (WebInspector._showAnchorLocation):
50
51 2011-09-23  Ilya Tikhonovsky  <loislo@chromium.org>
52
53         Web Inspector: Timeline: record root event for the function calls enforced by console eval.
54         https://bugs.webkit.org/show_bug.cgi?id=68695
55
56         In a complex web application developer might want to timeline a specific piece of code.
57
58         In this case he can do the next steps:
59         1) start timeline;
60         2) eval a command in console;
61         3) stop timeline.
62
63         I think it'd be nice to have a root event for the all the events that happened as the result of such eval.
64
65         Reviewed by Yury Semikhatsky.
66
67         Test: inspector/timeline/timeline-injected-script-eval.html
68
69         * bindings/v8/ScriptFunctionCall.cpp:
70         * inspector/InjectedScript.cpp:
71         (WebCore::InjectedScript::makeCall):
72         * inspector/InspectorInstrumentation.cpp:
73         (WebCore::InspectorInstrumentation::willCallFunctionImpl):
74
75 2011-09-26  No'am Rosenthal  <noam.rosenthal@nokia.com>
76
77         [Texmap][Qt] Enable TextureMapperGL in platforms where BGRA is not present
78         https://bugs.webkit.org/show_bug.cgi?id=65473
79
80         Reviewed by Andreas Kling.
81
82         For now, swap RGBA->BGRA in software if we're in OpenGL ES 2.
83         We do that by iterating on the pixels and manually swapping each pixel's red and blue
84         values. This can be done faster with shaders, but for now this is a working solution
85         for platforms without BGRA support.
86
87         No new tests. Existing layout tests cover this.
88
89         * platform/graphics/opengl/TextureMapperGL.cpp:
90         (WebCore::BitmapTextureGL::endPaint):
91         * platform/graphics/opengl/TextureMapperGL.h:
92         * platform/graphics/qt/TextureMapperQt.cpp:
93         (WebCore::RGBA32PremultimpliedBufferQt::swapRGB):
94
95 2011-09-26  Sergio Villar Senin  <svillar@igalia.com>
96
97         [GTK] Fix coding style bits in ResourceHandleSoup.cpp
98         https://bugs.webkit.org/show_bug.cgi?id=68634
99
100         Reviewed by Martin Robinson.
101
102         No new tests needed.
103
104         * platform/network/soup/ResourceHandleSoup.cpp:
105         (WebCore::ResourceHandle::defaultSession):
106
107 2011-09-26  James Robinson  <jamesr@chromium.org>
108
109         [mac] Timestamp parameter to requestAnimationFrame is busted in USE(REQUEST_ANIMATION_FRAME_TIMER) path
110         https://bugs.webkit.org/show_bug.cgi?id=68769
111
112         Reviewed by Simon Fraser.
113
114         Convert the time parameter from double to DOMTimeStamp using convertSecondsToDOMTimeStamp rather than relying on
115         implicit double->long conversion, which ignores the units of the value.
116
117         Test: fast/animation/request-animation-frame-timestamps-advance.html
118
119         * dom/ScriptedAnimationController.cpp:
120         (WebCore::ScriptedAnimationController::animationTimerFired):
121
122 2011-09-25  Mark Hahnenberg  <mhahnenberg@apple.com>
123
124         Add custom vtable struct to ClassInfo struct
125         https://bugs.webkit.org/show_bug.cgi?id=68567
126
127         Reviewed by Oliver Hunt.
128
129         No new tests.
130
131         Added CREATE_METHOD_TABLE macro to generate the custom vtable for the 
132         specified class in its ClassInfo.  Also added to it the first function to use 
133         this macro, visitChildren.  This is part of the process of getting rid of all 
134         C++ virtual methods in JSCell.  Eventually all virtual functions in JSCell 
135         that can't easily be converted to non-virtual functions will be put into 
136         this custom vtable structure.
137
138         * bindings/js/JSAudioConstructor.cpp:
139         * bindings/js/JSDOMGlobalObject.cpp:
140         * bindings/js/JSDOMWindowBase.cpp:
141         * bindings/js/JSDOMWindowShell.cpp:
142         * bindings/js/JSImageConstructor.cpp:
143         * bindings/js/JSImageDataCustom.cpp:
144         (WebCore::toJS):
145         * bindings/js/JSOptionConstructor.cpp:
146         * bindings/js/JSWorkerContextBase.cpp:
147
148         Changed the bindings generator to add the call to the CREATE_METHOD_TABLE macro where
149         necessary.
150         * bindings/scripts/CodeGeneratorJS.pm:
151         (GenerateImplementation):
152         (GenerateConstructorDefinition):
153         * bindings/scripts/test/JS/JSTestInterface.cpp:
154         * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
155         * bindings/scripts/test/JS/JSTestObj.cpp:
156         * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
157         * bridge/c/CRuntimeObject.cpp:
158         * bridge/c/c_instance.cpp:
159         * bridge/jni/jsc/JavaInstanceJSC.cpp:
160         * bridge/jni/jsc/JavaRuntimeObject.cpp:
161         * bridge/objc/ObjCRuntimeObject.mm:
162         * bridge/objc/objc_instance.mm:
163         * bridge/objc/objc_runtime.mm:
164         * bridge/qt/qt_instance.cpp:
165         * bridge/qt/qt_pixmapruntime.cpp:
166         * bridge/qt/qt_runtime.cpp:
167         * bridge/runtime_array.cpp:
168         * bridge/runtime_method.cpp:
169         * bridge/runtime_object.cpp:
170
171 2011-09-25  Eunmi Lee  <eunmi15.lee@samsung.com>
172
173         [EFL] Move GtkWidgetBackingStoreCairo to the cairo directory and modify to use in the EFL.
174         https://bugs.webkit.org/show_bug.cgi?id=63502
175
176         Reviewed by Martin Robinson.
177
178         The gtk/GtkWidgetBackingStoreCairo.cpp is moved to the cairo/WidgetBackingStoreCairo.cpp and
179         some codes for EFL are added.
180         WidgetBackingStoreCairo creates cairo_image_surface and has a role to copy reusable area
181         when scrolling. So, it will be used in the WebKit2 EFL port's BackingStore.
182
183         * CMakeListsEfl.txt:
184         * GNUmakefile.list.am:
185         * platform/cairo/WidgetBackingStore.h:
186         * platform/cairo/WidgetBackingStoreCairo.cpp: Renamed from Source/WebCore/platform/gtk/GtkWidgetBackingStoreCairo.cpp.
187         (WebCore::createSurfaceForBackingStore):
188         (WebCore::WidgetBackingStorePrivate::create):
189         (WebCore::WidgetBackingStorePrivate::WidgetBackingStorePrivate):
190         (WebCore::WidgetBackingStore::create):
191         (WebCore::WidgetBackingStore::WidgetBackingStore):
192         (WebCore::WidgetBackingStore::~WidgetBackingStore):
193         (WebCore::WidgetBackingStore::cairoSurface):
194         (WebCore::WidgetBackingStore::scroll):
195         * platform/gtk/GtkWidgetBackingStoreX11.cpp:
196
197 2011-09-25  Adam Barth  <abarth@webkit.org>
198
199         Finish removing PLATFORM(BREWMP) by removing associated code
200         https://bugs.webkit.org/show_bug.cgi?id=68779
201
202         Reviewed by Sam Weinig.
203
204         When Geoffrey Garen removed PLATFORM(BREWMP) in
205         http://trac.webkit.org/changeset/95555, he did not remove all the
206         associated code.  This completes the work started in r95555 by removing
207         all the code assoicated with PLATFORM(BREWMP).
208
209         * WebCore.gyp/WebCore.gyp:
210         * WebCore.gypi:
211         * bindings/js/ScriptControllerBrew.cpp: Removed.
212         * editing/brew: Removed.
213         * editing/brew/EditorBrew.cpp: Removed.
214         * gyp/WebCore.gyp:
215         * page/brew: Removed.
216         * page/brew/ChromeClientBrew.h: Removed.
217         * page/brew/DragControllerBrew.cpp: Removed.
218         * page/brew/EventHandlerBrew.cpp: Removed.
219         * page/brew/FrameBrew.cpp: Removed.
220         * platform/brew: Removed.
221         * platform/brew/ClipboardBrew.cpp: Removed.
222         * platform/brew/ClipboardBrew.h: Removed.
223         * platform/brew/ContextMenuBrew.cpp: Removed.
224         * platform/brew/ContextMenuItemBrew.cpp: Removed.
225         * platform/brew/CursorBrew.cpp: Removed.
226         * platform/brew/DragDataBrew.cpp: Removed.
227         * platform/brew/EventLoopBrew.cpp: Removed.
228         * platform/brew/FileSystemBrew.cpp: Removed.
229         * platform/brew/KURLBrew.cpp: Removed.
230         * platform/brew/LanguageBrew.cpp: Removed.
231         * platform/brew/LocalizedStringsBrew.cpp: Removed.
232         * platform/brew/LoggingBrew.cpp: Removed.
233         * platform/brew/MIMETypeRegistryBrew.cpp: Removed.
234         * platform/brew/PasteboardBrew.cpp: Removed.
235         * platform/brew/PlatformKeyboardEventBrew.cpp: Removed.
236         * platform/brew/PlatformMouseEventBrew.cpp: Removed.
237         * platform/brew/PlatformTouchEventBrew.cpp: Removed.
238         * platform/brew/PlatformTouchPointBrew.cpp: Removed.
239         * platform/brew/PopupMenuBrew.cpp: Removed.
240         * platform/brew/PopupMenuBrew.h: Removed.
241         * platform/brew/SSLKeyGeneratorBrew.cpp: Removed.
242         * platform/brew/ScreenBrew.cpp: Removed.
243         * platform/brew/ScrollbarThemeBrew.cpp: Removed.
244         * platform/brew/ScrollbarThemeBrew.h: Removed.
245         * platform/brew/SearchPopupMenuBrew.cpp: Removed.
246         * platform/brew/SearchPopupMenuBrew.h: Removed.
247         * platform/brew/SharedBufferBrew.cpp: Removed.
248         * platform/brew/SharedTimerBrew.cpp: Removed.
249         * platform/brew/SoundBrew.cpp: Removed.
250         * platform/brew/SystemTimeBrew.cpp: Removed.
251         * platform/brew/TemporaryLinkStubs.cpp: Removed.
252         * platform/brew/WidgetBrew.cpp: Removed.
253         * platform/graphics/brew: Removed.
254         * platform/graphics/brew/IconBrew.cpp: Removed.
255         * platform/graphics/brew/ImageBrew.cpp: Removed.
256         * platform/graphics/brew/IntPointBrew.cpp: Removed.
257         * platform/graphics/brew/IntSizeBrew.cpp: Removed.
258         * platform/network/brew: Removed.
259         * platform/network/brew/DNSBrew.cpp: Removed.
260         * platform/network/brew/SocketStreamError.h: Removed.
261         * platform/network/brew/SocketStreamHandle.h: Removed.
262         * platform/network/brew/SocketStreamHandleBrew.cpp: Removed.
263         * platform/network/brew/SocketStreamHandlePrivate.h: Removed.
264         * platform/text/brew: Removed.
265         * platform/text/brew/TextBoundariesBrew.cpp: Removed.
266         * platform/text/brew/TextBreakIteratorBrew.cpp: Removed.
267         * platform/text/brew/TextCodecBrew.cpp: Removed.
268         * platform/text/brew/TextCodecBrew.h: Removed.
269
270 2011-09-25  Kentaro Hara  <haraken@chromium.org>
271
272         Implement a CloseEvent constructor for JSC
273         https://bugs.webkit.org/show_bug.cgi?id=68340
274
275         Reviewed by Oliver Hunt.
276
277         The spec of the CloseEvent constructor is here:
278         http://dev.w3.org/html5/websockets/#closeevent
279
280         Test: fast/events/constructors/close-event-constructor.html
281
282         * bindings/generic/EventConstructors.h: Added a definition for the CloseEvent constructor.
283         * bindings/js/JSEventConstructors.cpp: Added #includes for CloseEvent.
284         * websockets/CloseEvent.h: Added a definition for CloseEventInit.
285         (WebCore::CloseEventInit::CloseEventInit):
286         (WebCore::CloseEvent::create):
287         (WebCore::CloseEvent::CloseEvent):
288         * websockets/CloseEvent.idl: Makes CloseEvent constructible.
289
290 2011-09-25  Mark Rowe  <mrowe@apple.com>
291
292         <rdar://problem/10177824> IconDatabase’s use of ThreadCondition leads to assertion failures in the face of spurious wakeups
293
294         It's possible for ThreadCondition::wait to return spuriously without the condition having been signaled.
295         When that happens we should immediately return to waiting rather than doing our normal work, as some of that
296         work relies on wakeSyncThread having been called to signal the condition.
297
298         Reviewed by Sam Weinig.
299
300         * loader/icon/IconDatabase.cpp:
301         (WebCore::IconDatabase::IconDatabase):
302         (WebCore::IconDatabase::wakeSyncThread): Note that we have work for the sync thread to do.
303         (WebCore::IconDatabase::syncThreadMainLoop): If we were woken with no work to do, immediately
304         go back to waiting on the condition variable. Otherwise, reset m_syncThreadHasWorkToDo and then
305         do that work. We also switch to moving m_disabledSuddenTerminationForSyncThread immediately in to
306         our local shouldReenableSuddenTermination variable since it can be updated by other threads while
307         we don't hold the lock. This makes it inappropriate to make assumptions about its value after dropping
308         and reacquiring the lock.
309         * loader/icon/IconDatabase.h:
310
311 2011-09-25  Dan Bernstein  <mitz@apple.com>
312
313         <rdar://problem/10156263> ASSERT in WebCore::FrameView::scheduleRelayoutOfSubtree
314
315         Reviewed by Sam Weinig.
316
317         Test: fast/dynamic/subtree-unrooted.html
318
319         * rendering/RenderObject.cpp:
320         (WebCore::RenderObject::scheduleRelayout): Replaced the check that the renderer is parented,
321         which was added in r21162, with a check that it is “rooted”.
322
323 2011-09-24  Abhishek Arya  <inferno@chromium.org>
324
325         Issues with merging block children of a ruby
326         base with another ruby base having inline children. 
327         https://bugs.webkit.org/show_bug.cgi?id=66124
328
329         Reviewed by Dan Bernstein.
330
331         Test: fast/ruby/ruby-base-merge-block-children-crash.html
332
333         * rendering/RenderRubyBase.cpp:
334         (WebCore::RenderRubyBase::moveInlineChildren): add a firstChild()
335         check to prevent empty anonymous block addition, just like
336         moveBlockChildren method.
337         * rendering/RenderRubyBase.cpp:
338         (WebCore::RenderRubyBase::moveBlockChildren): This was incorrectly
339         doing optimizations to see if current ruby base has only inline
340         children before beforeChild and then trying to take out them from 
341         their parent anonymous blocks. The problem is those inlines could
342         be split and have continuations because of encountering a block
343         inside inline flow. In those cases, we cannot take the inline out.
344         So, we should just make children non-inline in the destination
345         block and transfer the children as it-is.
346         * rendering/RenderRubyBase.h: remove unncessary functions.
347
348 2011-09-25  Adam Barth  <abarth@webkit.org>
349
350         Remove PLATFORM(HAIKU) and associated code
351         https://bugs.webkit.org/show_bug.cgi?id=68774
352
353         Reviewed by Sam Weinig.
354
355         As discussed on webkit-dev, the Haiku port has been inactive for over a
356         year.  A year and a half ago, we discussed removing the port, but folks
357         said they planned to work on it more.  That work does not appear to
358         have happened in the intervening time.
359
360         * WebCore.gyp/WebCore.gyp:
361         * WebCore.gypi:
362         * bindings/js/ScriptControllerHaiku.cpp: Removed.
363         * editing/haiku: Removed.
364         * editing/haiku/EditorHaiku.cpp: Removed.
365         * gyp/WebCore.gyp:
366         * loader/cache/CachedFont.cpp:
367         * page/EventHandler.cpp:
368         (WebCore::EventHandler::eventInvertsTabsToLinksClientCallResult):
369         * page/haiku: Removed.
370         * page/haiku/DragControllerHaiku.cpp: Removed.
371         * page/haiku/EventHandlerHaiku.cpp: Removed.
372         * page/haiku/FrameHaiku.cpp: Removed.
373         * platform/ContextMenuItem.h:
374         * platform/Cursor.h:
375         * platform/DragData.h:
376         * platform/DragImage.h:
377         * platform/PlatformKeyboardEvent.h:
378         * platform/PlatformMenuDescription.h:
379         * platform/PlatformMouseEvent.h:
380         * platform/Widget.h:
381         * platform/graphics/BitmapImage.h:
382         * platform/graphics/Color.h:
383         * platform/graphics/FloatPoint.h:
384         * platform/graphics/FloatRect.h:
385         * platform/graphics/Gradient.h:
386         * platform/graphics/GraphicsContext.cpp:
387         * platform/graphics/GraphicsContext.h:
388         * platform/graphics/ImageBufferData.h:
389         * platform/graphics/ImageSource.h:
390         * platform/graphics/IntPoint.h:
391         * platform/graphics/IntRect.h:
392         * platform/graphics/IntSize.h:
393         * platform/graphics/Path.h:
394         * platform/graphics/Pattern.h:
395         * platform/graphics/SimpleFontData.h:
396         * platform/graphics/haiku: Removed.
397         * platform/graphics/haiku/ColorHaiku.cpp: Removed.
398         * platform/graphics/haiku/FloatPointHaiku.cpp: Removed.
399         * platform/graphics/haiku/FloatRectHaiku.cpp: Removed.
400         * platform/graphics/haiku/FontCacheHaiku.cpp: Removed.
401         * platform/graphics/haiku/FontCustomPlatformData.cpp: Removed.
402         * platform/graphics/haiku/FontCustomPlatformData.h: Removed.
403         * platform/graphics/haiku/FontHaiku.cpp: Removed.
404         * platform/graphics/haiku/FontPlatformData.h: Removed.
405         * platform/graphics/haiku/GlyphPageTreeNodeHaiku.cpp: Removed.
406         * platform/graphics/haiku/GradientHaiku.cpp: Removed.
407         * platform/graphics/haiku/GraphicsContextHaiku.cpp: Removed.
408         * platform/graphics/haiku/IconHaiku.cpp: Removed.
409         * platform/graphics/haiku/ImageBufferDataHaiku.h: Removed.
410         * platform/graphics/haiku/ImageBufferHaiku.cpp: Removed.
411         * platform/graphics/haiku/ImageHaiku.cpp: Removed.
412         * platform/graphics/haiku/IntPointHaiku.cpp: Removed.
413         * platform/graphics/haiku/IntRectHaiku.cpp: Removed.
414         * platform/graphics/haiku/IntSizeHaiku.cpp: Removed.
415         * platform/graphics/haiku/PathHaiku.cpp: Removed.
416         * platform/graphics/haiku/SimpleFontDataHaiku.cpp: Removed.
417         * platform/graphics/haiku/StillImageHaiku.cpp: Removed.
418         * platform/graphics/haiku/StillImageHaiku.h: Removed.
419         * platform/haiku: Removed.
420         * platform/haiku/ClipboardHaiku.cpp: Removed.
421         * platform/haiku/ClipboardHaiku.h: Removed.
422         * platform/haiku/ContextMenuHaiku.cpp: Removed.
423         * platform/haiku/ContextMenuItemHaiku.cpp: Removed.
424         * platform/haiku/CookieJarHaiku.cpp: Removed.
425         * platform/haiku/CursorHaiku.cpp: Removed.
426         * platform/haiku/DragDataHaiku.cpp: Removed.
427         * platform/haiku/DragImageHaiku.cpp: Removed.
428         * platform/haiku/EventLoopHaiku.cpp: Removed.
429         * platform/haiku/FileSystemHaiku.cpp: Removed.
430         * platform/haiku/LocalizedStringsHaiku.cpp: Removed.
431         * platform/haiku/LoggingHaiku.cpp: Removed.
432         * platform/haiku/MIMETypeRegistryHaiku.cpp: Removed.
433         * platform/haiku/PasteboardHaiku.cpp: Removed.
434         * platform/haiku/PlatformKeyboardEventHaiku.cpp: Removed.
435         * platform/haiku/PlatformMouseEventHaiku.cpp: Removed.
436         * platform/haiku/PlatformWheelEventHaiku.cpp: Removed.
437         * platform/haiku/PopupMenuHaiku.cpp: Removed.
438         * platform/haiku/PopupMenuHaiku.h: Removed.
439         * platform/haiku/RenderThemeHaiku.cpp: Removed.
440         * platform/haiku/RenderThemeHaiku.h: Removed.
441         * platform/haiku/ScreenHaiku.cpp: Removed.
442         * platform/haiku/ScrollbarThemeHaiku.cpp: Removed.
443         * platform/haiku/ScrollbarThemeHaiku.h: Removed.
444         * platform/haiku/SearchPopupMenuHaiku.cpp: Removed.
445         * platform/haiku/SearchPopupMenuHaiku.h: Removed.
446         * platform/haiku/SharedBufferHaiku.cpp: Removed.
447         * platform/haiku/SharedTimerHaiku.cpp: Removed.
448         * platform/haiku/SoundHaiku.cpp: Removed.
449         * platform/haiku/TemporaryLinkStubs.cpp: Removed.
450         * platform/haiku/WidgetHaiku.cpp: Removed.
451         * platform/image-decoders/haiku: Removed.
452         * platform/image-decoders/haiku/ImageDecoderHaiku.cpp: Removed.
453         * platform/text/UnicodeRange.h:
454         * platform/text/haiku: Removed.
455         * platform/text/haiku/TextBreakIteratorInternalICUHaiku.cpp: Removed.
456
457 2011-09-25  Adam Barth  <abarth@webkit.org>
458
459         Attempted build fixes for GTK and Qt.
460
461         * GNUmakefile.list.am:
462         * WebCore.pro:
463
464 2011-09-24  Adam Barth  <abarth@webkit.org>
465
466         Always enable ENABLE(OFFLINE_WEB_APPLICATIONS)
467         https://bugs.webkit.org/show_bug.cgi?id=68767
468
469         Reviewed by Eric Seidel.
470
471         As discussed on webkit-dev, almost everyone has this enable turned on
472         and this feature is unlikely to be removed from the web platform given
473         its popularity.
474
475         * CMakeLists.txt:
476         * Configurations/FeatureDefines.xcconfig:
477         * GNUmakefile.am:
478         * GNUmakefile.list.am:
479         * WebCore.exp.in:
480         * WebCore.pro:
481         * bindings/cpp/WebDOMEventTarget.cpp:
482         (toWebKit):
483         * bindings/js/JSEventTarget.cpp:
484         (WebCore::toJS):
485         (WebCore::toEventTarget):
486         * bindings/v8/V8DOMWrapper.cpp:
487         (WebCore::V8DOMWrapper::convertEventTargetToV8Object):
488         * dom/EventTarget.cpp:
489         (WebCore::EventTarget::toDOMApplicationCache):
490         * dom/EventTarget.h:
491         * features.pri:
492         * history/PageCache.cpp:
493         (WebCore::logCanCacheFrameDecision):
494         (WebCore::PageCache::canCachePageContainingThisFrame):
495         * html/HTMLHtmlElement.cpp:
496         (WebCore::HTMLHtmlElement::insertedByParser):
497         * html/HTMLHtmlElement.h:
498         * html/HTMLMediaElement.cpp:
499         (WebCore::createFileURLForApplicationCacheResource):
500         (WebCore::HTMLMediaElement::loadResource):
501         * html/ImageDocument.cpp:
502         (WebCore::ImageDocument::createDocumentStructure):
503         * html/MediaDocument.cpp:
504         (WebCore::MediaDocumentParser::createDocumentStructure):
505         * html/PluginDocument.cpp:
506         (WebCore::PluginDocumentParser::createDocumentStructure):
507         * html/parser/HTMLConstructionSite.cpp:
508         (WebCore::HTMLConstructionSite::insertHTMLHtmlStartTagBeforeHTML):
509         * inspector/InspectorApplicationCacheAgent.cpp:
510         * inspector/InspectorApplicationCacheAgent.h:
511         * inspector/InspectorController.cpp:
512         (WebCore::InspectorController::InspectorController):
513         (WebCore::InspectorController::connectFrontend):
514         (WebCore::InspectorController::disconnectFrontend):
515         * inspector/InspectorController.h:
516         * inspector/InspectorInstrumentation.cpp:
517         (WebCore::InspectorInstrumentation::updateApplicationCacheStatusImpl):
518         * inspector/InspectorInstrumentation.h:
519         (WebCore::InspectorInstrumentation::networkStateChanged):
520         (WebCore::InspectorInstrumentation::updateApplicationCacheStatus):
521         * inspector/InstrumentingAgents.h:
522         (WebCore::InstrumentingAgents::InstrumentingAgents):
523         (WebCore::InstrumentingAgents::setInspectorApplicationCacheAgent):
524         * inspector/WorkerInspectorController.cpp:
525         (WebCore::WorkerInspectorController::connectFrontend):
526         * inspector/generate-inspector-idl:
527         * loader/DocumentLoader.cpp:
528         (WebCore::DocumentLoader::DocumentLoader):
529         (WebCore::DocumentLoader::mainReceivedError):
530         (WebCore::DocumentLoader::stopLoading):
531         (WebCore::DocumentLoader::detachFromFrame):
532         (WebCore::DocumentLoader::handledOnloadEvents):
533         * loader/DocumentLoader.h:
534         (WebCore::DocumentLoader::applicationCacheHost):
535         * loader/EmptyClients.h:
536         (WebCore::EmptyChromeClient::reachedApplicationCacheOriginQuota):
537         * loader/FrameLoader.cpp:
538         (WebCore::FrameLoader::loadResourceSynchronously):
539         * loader/MainResourceLoader.cpp:
540         (WebCore::MainResourceLoader::willSendRequest):
541         (WebCore::MainResourceLoader::didReceiveResponse):
542         (WebCore::MainResourceLoader::didReceiveData):
543         (WebCore::MainResourceLoader::didFinishLoading):
544         (WebCore::MainResourceLoader::didFail):
545         (WebCore::MainResourceLoader::load):
546         * loader/ResourceLoader.cpp:
547         (WebCore::ResourceLoader::start):
548         (WebCore::ResourceLoader::willSendRequest):
549         (WebCore::ResourceLoader::didSendData):
550         (WebCore::ResourceLoader::didReceiveResponse):
551         (WebCore::ResourceLoader::didReceiveData):
552         (WebCore::ResourceLoader::didFinishLoading):
553         (WebCore::ResourceLoader::didFail):
554         (WebCore::ResourceLoader::wasBlocked):
555         (WebCore::ResourceLoader::cannotShowURL):
556         (WebCore::ResourceLoader::shouldUseCredentialStorage):
557         (WebCore::ResourceLoader::willCacheResponse):
558         * loader/ResourceLoader.h:
559         * loader/appcache/ApplicationCache.cpp:
560         * loader/appcache/ApplicationCache.h:
561         * loader/appcache/ApplicationCacheGroup.cpp:
562         * loader/appcache/ApplicationCacheGroup.h:
563         * loader/appcache/ApplicationCacheHost.cpp:
564         * loader/appcache/ApplicationCacheHost.h:
565         * loader/appcache/ApplicationCacheResource.cpp:
566         * loader/appcache/ApplicationCacheResource.h:
567         * loader/appcache/ApplicationCacheStorage.cpp:
568         * loader/appcache/ApplicationCacheStorage.h:
569         * loader/appcache/DOMApplicationCache.cpp:
570         * loader/appcache/DOMApplicationCache.h:
571         * loader/appcache/DOMApplicationCache.idl:
572         * loader/appcache/ManifestParser.cpp:
573         (WebCore::parseManifest):
574         * loader/appcache/ManifestParser.h:
575         * loader/chromium/ResourceLoaderChromium.cpp:
576         (WebCore::ResourceLoader::didDownloadData):
577         * page/ChromeClient.h:
578         * page/DOMWindow.cpp:
579         (WebCore::DOMWindow::clear):
580         (WebCore::DOMWindow::applicationCache):
581         * page/DOMWindow.h:
582         (WebCore::DOMWindow::optionalApplicationCache):
583         * page/DOMWindow.idl:
584         * xml/parser/XMLDocumentParserLibxml2.cpp:
585         (WebCore::XMLDocumentParser::startElementNs):
586         * xml/parser/XMLDocumentParserQt.cpp:
587         (WebCore::XMLDocumentParser::parseStartElement):
588
589 2011-09-24  Adam Barth  <abarth@webkit.org>
590
591         Remove ENABLE(WCSS) and associated code
592         https://bugs.webkit.org/show_bug.cgi?id=68759
593
594         Reviewed by Darin Adler.
595
596         As discussed on webkit-dev, we are removing this feature from trunk to
597         reduce the number of different configurations.
598
599         * CodeGenerators.pri:
600         * GNUmakefile.am:
601         * WebCore.pro:
602         * css/CSSParser.cpp:
603         (WebCore::CSSParser::parseValue):
604         * css/CSSParser.h:
605         * css/CSSPrimitiveValueMappings.h:
606         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
607         * css/CSSStyleSelector.cpp:
608         (WebCore::CSSStyleSelector::applyProperty):
609         * css/WCSSPropertyNames.in: Removed.
610         * css/WCSSValueKeywords.in: Removed.
611         * features.pri:
612         * html/HTMLInputElement.cpp:
613         (WebCore::HTMLInputElement::HTMLInputElement):
614         * html/HTMLInputElement.h:
615         * html/TextFieldInputType.cpp:
616         (WebCore::TextFieldInputType::sanitizeValue):
617         (WebCore::TextFieldInputType::handleBeforeTextInsertedEvent):
618         * rendering/RenderMarquee.cpp:
619         (WebCore::RenderMarquee::start):
620         * rendering/RenderObject.cpp:
621         (WebCore::RenderObject::createObject):
622         * rendering/style/RenderStyleConstants.h:
623
624 2011-09-24  Young Han Lee  <joybro@company100.net>
625
626         SVGAnimation does not support 'values' for from-to animations
627         https://bugs.webkit.org/show_bug.cgi?id=64859
628
629         Reviewed by Dirk Schulze.
630
631         If from-to animation have discrete calc-mode and have a 'keyTimes' list, values of
632         the keyTimes indicate the begin and the end of the animation respectively.[1][2]
633
634         When keyTimes is given, calculate the progress percentage of the animation with it
635         even for from-to animation.
636
637         [1] http://www.w3.org/TR/SVG/animate.html#ValueAttributes
638         [2] http://www.w3.org/TR/2001/REC-smil-animation-20010904/#AnimFuncValues
639
640         Test: svg/animations/animate-from-to-keyTimes.html
641
642         * svg/SVGAnimationElement.cpp:
643         (WebCore::SVGAnimationElement::calculatePercentForFromTo):
644         (WebCore::SVGAnimationElement::updateAnimation):
645         * svg/SVGAnimationElement.h:
646
647 2011-09-23  Chris Fleizach  <cfleizach@apple.com>
648
649         WebKit does not expose AXPlaceholder value on password fields
650         https://bugs.webkit.org/show_bug.cgi?id=68745
651
652         Reviewed by Oliver Hunt.
653
654         * accessibility/mac/WebAccessibilityObjectWrapper.mm:
655         (-[WebAccessibilityObjectWrapper accessibilityAttributeNames]):
656
657 2011-09-23  Mark Rowe  <mrowe@apple.com>
658
659         Fix the build.
660
661         * loader/CrossOriginAccessControl.cpp:
662         (WebCore::passesAccessControlCheck): Get rid of the exit-time destructor.
663
664 2011-09-23  Adam Barth  <abarth@webkit.org>
665
666         Canvas security checks show up on HTML5GamingTest benchmark
667         https://bugs.webkit.org/show_bug.cgi?id=68743
668
669         Reviewed by Oliver Hunt.
670
671         Prior to this patch, the canvas security checks took as much as 4% of
672         the time on the HTML5GamingTest benchmark:
673
674         http://craftymind.com/factory/guimark2/HTML5GamingTest.html
675
676         This patch uses a couple of AtomicStrings and shuffles around the order
677         of the security check to take this down to around 0.1% (which is near
678         the noise floor of what I can measure with my profiler).
679
680         * html/canvas/CanvasRenderingContext.cpp:
681         (WebCore::CanvasRenderingContext::wouldTaintOrigin):
682         * loader/CrossOriginAccessControl.cpp:
683         (WebCore::passesAccessControlCheck):
684
685 2011-09-23  Justin Novosad  <junov@chromium.org>
686
687         Unwarranted DOM Exception when canvas2D drawImage is called with src
688         rect out of bounds
689         https://bugs.webkit.org/show_bug.cgi?id=65709
690
691         Reviewed by Oliver Hunt.
692
693         * html/canvas/CanvasRenderingContext2D.cpp:
694         (WebCore::CanvasRenderingContext2D::drawImage):
695         Return early without throwing an exception if source rectangle is out of 
696         bounds to match the spec.
697
698 2011-09-23  Lukasz Slachciak  <l.slachciak@samsung.com>
699
700         Printing of notImplemented() when logging enabled.
701         https://bugs.webkit.org/show_bug.cgi?id=64590
702
703         Printing of notImplemented() method was enabled on Debug builds only.
704         Now it is enabled when logging is enabled.
705
706         Reviewed by Oliver Hunt.
707
708         No new tests because there is no new functionality.
709
710         * platform/NotImplemented.h: Non-debug mode replaced with non-logging mode.
711
712 2011-09-23  Mihai Parparita  <mihaip@chromium.org>
713
714         [Chromium] REGRESSION (r95725): Resizing a window doesn't resize the contents
715         https://bugs.webkit.org/show_bug.cgi?id=68730
716
717         Reviewed by James Robinson.
718
719         Adds a missing contentsResized() call in ScrollView::setFrameRect.
720
721         Test: fast/dom/Window/window-resize-contents.html
722
723         * platform/ScrollView.cpp:
724         (WebCore::ScrollView::setFrameRect):
725
726 2011-09-23  Adam Klein  <adamk@chromium.org>
727
728         Add ENABLE_MUTATION_OBSERVERS feature flag
729         https://bugs.webkit.org/show_bug.cgi?id=68732
730
731         Reviewed by Ojan Vafai.
732
733         This flag will guard an implementation of the "Mutation Observers" proposed in
734         http://lists.w3.org/Archives/Public/public-webapps/2011JulSep/1622.html
735
736         * Configurations/FeatureDefines.xcconfig:
737         * GNUmakefile.am:
738
739 2011-09-23  Varun Jain  <varunjain@google.com>
740
741         Refactor WebViewImpl::scrollFocusedNodeIntoRect to a better place and add tests 
742         https://bugs.webkit.org/show_bug.cgi?id=68198
743
744         Reviewed by Dimitri Glazkov.
745
746         Tests: fast/dom/scroll-element-to-rect-centered.html
747                fast/dom/scroll-element-to-rect.html
748
749         * WebCore.exp.in:
750         * page/FrameView.cpp:
751         (WebCore::FrameView::scrollElementToRect):
752         * page/FrameView.h:
753         * testing/Internals.cpp:
754         (WebCore::Internals::scrollElementToRect):
755         * testing/Internals.h:
756         * testing/Internals.idl:
757
758 2011-09-23  Mihai Parparita  <mihaip@chromium.org>
759
760         Unreviewed, rolling out r95860.
761         http://trac.webkit.org/changeset/95860
762         https://bugs.webkit.org/show_bug.cgi?id=68648
763
764         Breaks overhang rendering on Chromium Mac
765
766         * platform/chromium/ScrollbarThemeChromium.cpp:
767         * platform/chromium/ScrollbarThemeChromium.h:
768         * platform/chromium/ScrollbarThemeChromiumMac.h:
769         * platform/chromium/ScrollbarThemeChromiumMac.mm:
770         (WebCore::ScrollbarThemeChromiumMac::ScrollbarThemeChromiumMac):
771         (WebCore::ScrollbarThemeChromiumMac::paintOverhangAreas):
772
773 2011-09-23  Dean Jackson  <dino@apple.com>
774
775         Add -webkit-filter to CSSPropertyNames
776         https://bugs.webkit.org/show_bug.cgi?id=68675
777
778         Reviewed by Simon Fraser.
779
780         Add property and rudimentary parsing for -webkit-filter. The
781         property value isn't preserved anywhere yet. Add
782         stub definition for computed style.
783
784         Test: css3/filters/filter-property.html
785
786         * css/CSSComputedStyleDeclaration.cpp:
787         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
788         * css/CSSParser.cpp:
789         (WebCore::CSSParser::parseValue):
790         (WebCore::CSSParser::parseFilter):
791         * css/CSSParser.h:
792         * css/CSSPropertyNames.in:
793         * css/CSSStyleSelector.cpp:
794         (WebCore::CSSStyleSelector::applyProperty):
795
796 2011-09-23  Antoine Labour  <piman@chromium.org>
797
798         Remove preserves3D() from CCLayerDelegate, replacing it by setting the
799         value explicitly after creating a layer, or setting its delegate.
800         https://bugs.webkit.org/show_bug.cgi?id=68295
801
802         Reviewed by James Robinson.
803
804         Covered by compositing/ layeout tests.
805
806         * platform/graphics/chromium/GraphicsLayerChromium.cpp:
807         (WebCore::GraphicsLayerChromium::setContentsToCanvas):
808         (WebCore::GraphicsLayerChromium::setContentsToMedia):
809         (WebCore::GraphicsLayerChromium::updateLayerPreserves3D):
810         (WebCore::GraphicsLayerChromium::setupContentsLayer):
811         * platform/graphics/chromium/GraphicsLayerChromium.h:
812         * platform/graphics/chromium/LayerChromium.cpp:
813         (WebCore::LayerChromium::LayerChromium):
814         * platform/graphics/chromium/LayerChromium.h:
815         (WebCore::LayerChromium::setPreserves3D):
816         (WebCore::LayerChromium::preserves3D):
817
818 2011-09-23  Julien Chaffraix  <jchaffraix@webkit.org>
819
820         Implicit conversion double to float in ShadowBlur::adjustBlurRadius
821         https://bugs.webkit.org/show_bug.cgi?id=68722
822
823         Reviewed by Simon Fraser.
824
825         * platform/graphics/ShadowBlur.cpp:
826         (WebCore::ShadowBlur::adjustBlurRadius): Added 2 explicit
827         conversions.
828
829 2011-09-23  Dan Bernstein  <mitz@apple.com>
830
831         <rdar://problem/10178576> REGRESSION (r95391): Crash in -[WebCascadeList objectAtIndex:] when a font-family list contains missing fonts
832         https://bugs.webkit.org/show_bug.cgi?id=68737
833
834         Reviewed by Darin Adler.
835
836         Test: fast/text/combining-character-sequence-fallback-crash.html
837
838         * platform/graphics/mac/ComplexTextControllerCoreText.mm:
839         (-[WebCascadeList initWithFont:WebCore::character:]): Changed to intialize _count to the exact
840         number of FontData instances in the fallback list rather than the number of font families in the
841         font description.
842
843 2011-09-23  David Reveman  <reveman@chromium.org>
844
845         [Chromium] Fix CSS 3D corner anti-aliasing.
846         https://bugs.webkit.org/show_bug.cgi?id=68087
847
848         Reviewed by James Robinson.
849
850         Render sharp corners more correctly by adding bounding box
851         edges to anti-aliasing shaders.
852
853         Test: platform/chromium/compositing/3d-corners.html
854
855         * platform/graphics/chromium/ShaderChromium.cpp:
856         (WebCore::FragmentShaderRGBATexAlphaAA::getShaderString):
857         (WebCore::FragmentShaderRGBATexClampAlphaAA::getShaderString):
858         (WebCore::FragmentShaderRGBATexClampSwizzleAlphaAA::getShaderString):
859         (WebCore::FragmentShaderRGBATexAlphaMaskAA::getShaderString):
860         * platform/graphics/chromium/cc/CCRenderSurface.cpp:
861         (WebCore::CCRenderSurface::drawLayer):
862         (WebCore::CCRenderSurface::drawSurface):
863         * platform/graphics/chromium/cc/CCRenderSurface.h:
864         * platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:
865         (WebCore::CCTiledLayerImpl::draw):
866         (WebCore::CCTiledLayerImpl::drawTiles):
867         * platform/graphics/chromium/cc/CCTiledLayerImpl.h:
868
869 2011-09-23  Oliver Hunt  <oliver@apple.com>
870
871         Make write barriers actually do something when enabled
872         https://bugs.webkit.org/show_bug.cgi?id=68717
873
874         Reviewed by Geoffrey Garen.
875
876         Add a forwarding header, and fix an evaluation ordering
877         issue that shows up if you try to use write barriers.
878
879         * ForwardingHeaders/heap/CardSet.h: Added.
880         * bindings/js/JSEventListener.h:
881         (WebCore::JSEventListener::jsFunction):
882
883 2011-09-23  James Robinson  <jamesr@chromium.org>
884
885         Avoid updating compositing state during paint
886         https://bugs.webkit.org/show_bug.cgi?id=68727
887
888         Reviewed by Simon Fraser.
889
890         We shouldn't update our compositing state in the middle of a paint. The call to
891         updateCompositingAndLayerListsIfNeeded() was added to RenderLayer::paintLayer in r45715, which was intended to
892         fix this exact issue. Based off the ChangeLog entries, I think that this was just a typo.
893
894         * rendering/RenderLayer.cpp:
895         (WebCore::RenderLayer::paintLayer):
896         (WebCore::RenderLayer::updateCompositingAndLayerListsIfNeeded):
897         * rendering/RenderLayerCompositor.cpp:
898         (WebCore::RenderLayerCompositor::updateCompositingLayers):
899         * rendering/RenderLayerCompositor.h:
900
901 2011-09-23  Fady Samuel  <fsamuel@chromium.org>
902
903         Refactor paintOverhangAreas to allow non-Mac Chromium platforms to reuse code
904         https://bugs.webkit.org/show_bug.cgi?id=68648
905
906         Reviewed by Dimitri Glazkov.
907
908         No new tests because there's no change in functionality (yet).
909
910         * platform/chromium/ScrollbarThemeChromium.cpp:
911         (WebCore::ScrollbarThemeChromium::ScrollbarThemeChromium):
912         (WebCore::ScrollbarThemeChromium::~ScrollbarThemeChromium):
913         (WebCore::ScrollbarThemeChromium::paintOverhangAreas):
914         * platform/chromium/ScrollbarThemeChromium.h:
915         * platform/chromium/ScrollbarThemeChromiumMac.h:
916         * platform/chromium/ScrollbarThemeChromiumMac.mm:
917         (WebCore::ScrollbarThemeChromiumMac::ScrollbarThemeChromiumMac):
918
919 2011-09-23  Ojan Vafai  <ojan@chromium.org>
920
921         remove physical flex-flow values to match the updated spec
922         https://bugs.webkit.org/show_bug.cgi?id=68728
923
924         Reviewed by Tony Chang.
925
926         * css/CSSParser.cpp:
927         (WebCore::CSSParser::parseValue):
928         * css/CSSPrimitiveValueMappings.h:
929         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
930         (WebCore::CSSPrimitiveValue::operator EFlexFlow):
931         * css/CSSValueKeywords.in:
932         * rendering/style/RenderStyleConstants.h:
933
934 2011-09-23  Abhishek Arya  <inferno@chromium.org>
935
936         Style not updated for :before, :after content
937         in ruby text.
938         https://bugs.webkit.org/show_bug.cgi?id=68625
939
940         Reviewed by Dave Hyatt.
941
942         Test: fast/ruby/ruby-text-before-after-content.html
943
944         * rendering/RenderRubyText.cpp:
945         (WebCore::RenderRubyText::updateBeforeAfterContent):
946         * rendering/RenderRubyText.h:
947
948 2011-09-22  Ojan Vafai  <ojan@chromium.org>
949
950         refactor RenderFlexibleBox to use flex-flow aware methods
951         https://bugs.webkit.org/show_bug.cgi?id=68665
952
953         Reviewed by Tony Chang.
954
955         This is just a refactor. Just move the all the code that needs to
956         be flow aware into helper functions. Actually making them flow-aware
957         can be done in a followup patch.
958
959         * rendering/RenderBlock.cpp:
960         * rendering/RenderBlock.h:
961         Moved setLogicalLocationForChild into RenderFlexibleBox since that was the only caller.
962         * rendering/RenderFlexibleBox.cpp:
963         (WebCore::RenderFlexibleBox::hasOrthogonalFlow):
964         (WebCore::RenderFlexibleBox::isHorizontalFlow):
965         (WebCore::RenderFlexibleBox::isLeftToRightFlow):
966         (WebCore::RenderFlexibleBox::setFlowAwareLogicalHeight):
967         (WebCore::RenderFlexibleBox::flowAwareLogicalHeightForChild):
968         (WebCore::RenderFlexibleBox::flowAwareLogicalWidthForChild):
969         (WebCore::RenderFlexibleBox::flowAwareLogicalHeight):
970         (WebCore::RenderFlexibleBox::flowAwareContentLogicalWidth):
971         (WebCore::RenderFlexibleBox::flowAwareAvailableLogicalWidth):
972         (WebCore::RenderFlexibleBox::flowAwareBorderStart):
973         (WebCore::RenderFlexibleBox::flowAwareBorderBefore):
974         (WebCore::RenderFlexibleBox::flowAwareBorderAfter):
975         (WebCore::RenderFlexibleBox::flowAwarePaddingStart):
976         (WebCore::RenderFlexibleBox::flowAwarePaddingBefore):
977         (WebCore::RenderFlexibleBox::flowAwarePaddingAfter):
978         (WebCore::RenderFlexibleBox::flowAwareMarginStartForChild):
979         (WebCore::RenderFlexibleBox::flowAwareMarginBeforeForChild):
980         (WebCore::RenderFlexibleBox::flowAwareMarginAfterForChild):
981         (WebCore::RenderFlexibleBox::setFlowAwareMarginStartForChild):
982         (WebCore::RenderFlexibleBox::setFlowAwareMarginEndForChild):
983         (WebCore::RenderFlexibleBox::setFlowAwareLogicalLocationForChild):
984         (WebCore::RenderFlexibleBox::logicalBorderAndPaddingWidthForChild):
985         (WebCore::RenderFlexibleBox::logicalScrollbarHeightForChild):
986         (WebCore::RenderFlexibleBox::marginStartStyleForChild):
987         (WebCore::RenderFlexibleBox::marginEndStyleForChild):
988         (WebCore::RenderFlexibleBox::preferredLogicalContentWidthForFlexItem):
989         (WebCore::RenderFlexibleBox::layoutInlineDirection):
990         (WebCore::RenderFlexibleBox::logicalPositiveFlexForChild):
991         (WebCore::RenderFlexibleBox::logicalNegativeFlexForChild):
992         (WebCore::RenderFlexibleBox::computePreferredLogicalWidth):
993         (WebCore::RenderFlexibleBox::runFreeSpaceAllocationAlgorithmInlineDirection):
994         (WebCore::RenderFlexibleBox::setLogicalOverrideSize):
995         (WebCore::RenderFlexibleBox::layoutAndPlaceChildrenInlineDirection):
996         * rendering/RenderFlexibleBox.h:
997
998 2011-09-23  David Hyatt  <hyatt@apple.com>
999
1000         https://bugs.webkit.org/show_bug.cgi?id=68719
1001         
1002         Push through multiple regions when an object doesn't fit in any of them. Unlike with pages and
1003         columns, when regions have a non-uniform height, we may need to push through multiple regions
1004         in order to find one that fits.
1005         
1006         Added an optimization for quickly noticing if regions do have a uniform height so that we can
1007         treat them like columns and pages if so.
1008
1009         Also fixed the end line matchup to properly null out endLine when no next line box exists. The new
1010         layout tests I wrote to cover this feature exposed this crasher, so fixing it in order to land
1011         the new tests.
1012
1013         Reviewed by Anders Carlsson.
1014
1015         Added new tests in fast/regions.
1016
1017         * rendering/RenderBlock.cpp:
1018         (WebCore::RenderBlock::adjustForUnsplittableChild):
1019         (WebCore::RenderBlock::pushToNextPageWithMinimumLogicalHeight):
1020         (WebCore::RenderBlock::adjustLinePositionForPagination):
1021         * rendering/RenderBlock.h:
1022         * rendering/RenderBlockLineLayout.cpp:
1023         (WebCore::RenderBlock::matchedEndLine):
1024         * rendering/RenderFlowThread.cpp:
1025         (WebCore::RenderFlowThread::RenderFlowThread):
1026         (WebCore::RenderFlowThread::layout):
1027         * rendering/RenderFlowThread.h:
1028
1029 2011-09-23  Konstantin Scheglov  <scheglov@google.com>
1030
1031         Redrawing dirty parts of a large table is very slow
1032         https://bugs.webkit.org/show_bug.cgi?id=64546
1033
1034         Reviewed by David Hyatt.
1035
1036         Move CollapsedBorderValues into RenderTable.h.
1037         Calculate collapsed borders only once and re-use during paintObject().
1038         Invalidate cache when cell, row, row group, col, col group or table border is changed.
1039
1040         Tests: fast/table/border-collapsing/cached-cell-append.html
1041                fast/table/border-collapsing/cached-cell-remove.html
1042                fast/table/border-collapsing/cached-change-cell-border-color.html
1043                fast/table/border-collapsing/cached-change-cell-border-width.html
1044                fast/table/border-collapsing/cached-change-col-border-color.html
1045                fast/table/border-collapsing/cached-change-col-border-width.html
1046                fast/table/border-collapsing/cached-change-colgroup-border-color.html
1047                fast/table/border-collapsing/cached-change-colgroup-border-width.html
1048                fast/table/border-collapsing/cached-change-row-border-color.html
1049                fast/table/border-collapsing/cached-change-row-border-width.html
1050                fast/table/border-collapsing/cached-change-table-border-color.html
1051                fast/table/border-collapsing/cached-change-table-border-width.html
1052                fast/table/border-collapsing/cached-change-tbody-border-color.html
1053                fast/table/border-collapsing/cached-change-tbody-border-width.html
1054
1055         * rendering/RenderTable.cpp:
1056         (WebCore::RenderTable::RenderTable):
1057         (WebCore::RenderTable::styleDidChange): Invalidate cache on border change.
1058         (WebCore::RenderTable::layout): Invalidate cache if layout changed.
1059         (WebCore::RenderTable::recalcCollapsedBorders): Ensures that cache is valid.
1060         (WebCore::RenderTable::paintObject): Use cached collapsed borders.
1061         * rendering/RenderTable.h:
1062         (WebCore::RenderTable::invalidateCollapsedBorders): Accessor to mark cache invalid.
1063         (WebCore::RenderTable::currentBorderValue): Rename to use word "value".
1064         * rendering/RenderTableCell.cpp:
1065         (WebCore::RenderTableCell::styleDidChange): If border changed, invalidate cache.
1066
1067         Rename to use word "value".
1068         (WebCore::addBorderStyle):
1069         (WebCore::RenderTableCell::collectBorderValues):
1070         (WebCore::compareBorderValuesForQSort):
1071         (WebCore::RenderTableCell::sortBorderValues):
1072         (WebCore::RenderTableCell::paintCollapsedBorder):
1073         * rendering/RenderTableCell.h:
1074         
1075         If border changed, invalidate cache.
1076         * rendering/RenderTableCol.cpp:
1077         (WebCore::RenderTableCol::styleDidChange):
1078         * rendering/RenderTableCol.h:
1079         * rendering/RenderTableRow.cpp:
1080         (WebCore::RenderTableRow::styleDidChange):
1081         * rendering/RenderTableSection.cpp:
1082         (WebCore::RenderTableSection::styleDidChange):
1083
1084 2011-09-23  Mark Hahnenberg  <mhahnenberg@apple.com>
1085
1086         Add static version of JSCell::visitChildren
1087         https://bugs.webkit.org/show_bug.cgi?id=68404
1088
1089         Reviewed by Darin Adler.
1090
1091         No new tests.
1092
1093         In this patch we just extract the bodies of the virtual visitChildren methods
1094         throughout the JSCell inheritance hierarchy out into static methods, which are 
1095         now called from the virtual methods.  This is an intermediate step in trying to 
1096         move the virtual-ness of visitChildren into our own custom vtable stored in 
1097         ClassInfo.  We need to convert the methods to static methods in order to be 
1098         able to more easily store and refer to them in our custom vtable since normal 
1099         member methods store some implicit information in their types, making it 
1100         impossible to store them generically in ClassInfo.
1101
1102         * WebCore.exp.in:
1103         * bindings/js/JSAttrCustom.cpp:
1104         (WebCore::JSAttr::visitChildrenVirtual):
1105         (WebCore::JSAttr::visitChildren):
1106         * bindings/js/JSAudioContextCustom.cpp:
1107         (WebCore::JSAudioContext::visitChildrenVirtual):
1108         (WebCore::JSAudioContext::visitChildren):
1109         * bindings/js/JSCSSRuleCustom.cpp:
1110         (WebCore::JSCSSRule::visitChildrenVirtual):
1111         (WebCore::JSCSSRule::visitChildren):
1112         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
1113         (WebCore::JSCSSStyleDeclaration::visitChildrenVirtual):
1114         (WebCore::JSCSSStyleDeclaration::visitChildren):
1115         * bindings/js/JSCanvasRenderingContextCustom.cpp:
1116         (WebCore::JSCanvasRenderingContext::visitChildrenVirtual):
1117         (WebCore::JSCanvasRenderingContext::visitChildren):
1118         * bindings/js/JSDOMGlobalObject.cpp:
1119         (WebCore::JSDOMGlobalObject::visitChildrenVirtual):
1120         (WebCore::JSDOMGlobalObject::visitChildren):
1121         * bindings/js/JSDOMGlobalObject.h:
1122         * bindings/js/JSDOMWindowCustom.cpp:
1123         (WebCore::JSDOMWindow::visitChildrenVirtual):
1124         (WebCore::JSDOMWindow::visitChildren):
1125         * bindings/js/JSDOMWindowShell.cpp:
1126         (WebCore::JSDOMWindowShell::visitChildrenVirtual):
1127         (WebCore::JSDOMWindowShell::visitChildren):
1128         * bindings/js/JSDOMWindowShell.h:
1129         * bindings/js/JSJavaScriptAudioNodeCustom.cpp:
1130         (WebCore::JSJavaScriptAudioNode::visitChildrenVirtual):
1131         (WebCore::JSJavaScriptAudioNode::visitChildren):
1132         * bindings/js/JSMessageChannelCustom.cpp:
1133         (WebCore::JSMessageChannel::visitChildrenVirtual):
1134         (WebCore::JSMessageChannel::visitChildren):
1135         * bindings/js/JSMessagePortCustom.cpp:
1136         (WebCore::JSMessagePort::visitChildrenVirtual):
1137         (WebCore::JSMessagePort::visitChildren):
1138         * bindings/js/JSNamedNodeMapCustom.cpp:
1139         (WebCore::JSNamedNodeMap::visitChildrenVirtual):
1140         (WebCore::JSNamedNodeMap::visitChildren):
1141         * bindings/js/JSNodeCustom.cpp:
1142         (WebCore::JSNode::visitChildrenVirtual):
1143         (WebCore::JSNode::visitChildren):
1144         * bindings/js/JSNodeFilterCustom.cpp:
1145         (WebCore::JSNodeFilter::visitChildrenVirtual):
1146         (WebCore::JSNodeFilter::visitChildren):
1147         * bindings/js/JSNodeIteratorCustom.cpp:
1148         (WebCore::JSNodeIterator::visitChildrenVirtual):
1149         (WebCore::JSNodeIterator::visitChildren):
1150         * bindings/js/JSSVGElementInstanceCustom.cpp:
1151         (WebCore::JSSVGElementInstance::visitChildrenVirtual):
1152         (WebCore::JSSVGElementInstance::visitChildren):
1153         * bindings/js/JSSharedWorkerCustom.cpp:
1154         (WebCore::JSSharedWorker::visitChildrenVirtual):
1155         (WebCore::JSSharedWorker::visitChildren):
1156         * bindings/js/JSStyleSheetCustom.cpp:
1157         (WebCore::JSStyleSheet::visitChildrenVirtual):
1158         (WebCore::JSStyleSheet::visitChildren):
1159         * bindings/js/JSTreeWalkerCustom.cpp:
1160         (WebCore::JSTreeWalker::visitChildrenVirtual):
1161         (WebCore::JSTreeWalker::visitChildren):
1162         * bindings/js/JSWebGLRenderingContextCustom.cpp:
1163         (WebCore::JSWebGLRenderingContext::visitChildrenVirtual):
1164         (WebCore::JSWebGLRenderingContext::visitChildren):
1165         * bindings/js/JSWorkerContextCustom.cpp:
1166         (WebCore::JSWorkerContext::visitChildrenVirtual):
1167         (WebCore::JSWorkerContext::visitChildren):
1168         * bindings/js/JSXMLHttpRequestCustom.cpp:
1169         (WebCore::JSXMLHttpRequest::visitChildrenVirtual):
1170         (WebCore::JSXMLHttpRequest::visitChildren):
1171         * bindings/js/JSXPathResultCustom.cpp:
1172         (WebCore::JSXPathResult::visitChildrenVirtual):
1173         (WebCore::JSXPathResult::visitChildren):
1174         * bindings/scripts/CodeGeneratorJS.pm:
1175         (GenerateHeader):
1176         (GenerateImplementation):
1177         * bindings/scripts/test/JS/JSTestObj.cpp:
1178         (WebCore::JSTestObj::visitChildrenVirtual):
1179         (WebCore::JSTestObj::visitChildren):
1180         * bindings/scripts/test/JS/JSTestObj.h:
1181         * bridge/qt/qt_instance.cpp:
1182         (JSC::Bindings::QtRuntimeObject::visitChildrenVirtual):
1183         (JSC::Bindings::QtRuntimeObject::visitChildren):
1184         * bridge/qt/qt_runtime.cpp:
1185         (JSC::Bindings::QtRuntimeMetaMethod::visitChildrenVirtual):
1186         (JSC::Bindings::QtRuntimeMetaMethod::visitChildren):
1187         * bridge/qt/qt_runtime.h:
1188         * workers/WorkerContext.h:
1189
1190 2011-09-23  Mario Sanchez Prada  <msanchez@igalia.com>
1191
1192         [GTK] Remove extra space at the beginning of the last line.
1193         https://bugs.webkit.org/show_bug.cgi?id=68710
1194
1195         Reviewed by Gustavo Noronha Silva.
1196
1197         * platform/network/soup/SocketStreamHandleSoup.cpp:
1198
1199 2011-09-23  Mario Sanchez Prada  <msanchez@igalia.com>
1200
1201         [GTK] Fix coding style issues in ResourceRequestSoup.cpp
1202         https://bugs.webkit.org/show_bug.cgi?id=68707
1203
1204         Reviewed by Xan Lopez.
1205
1206         This patch fixes some issues as reported by check-webkit-style.
1207
1208         * platform/network/soup/ResourceRequestSoup.cpp:
1209         (WebCore::ResourceRequest::updateFromSoupMessage):
1210
1211 2011-09-22  Ademar de Souza Reis Jr.  <ademar.reis@openbossa.org>
1212
1213         Unreviewed: [Qt] Workaround MSVC2010 problems when linking QtWebKit
1214
1215         Include MSVC2010 in the list of compilers where incremental
1216         build is disabled (INCREMENTAL:NO).
1217
1218         Change suggested by Simo Falt <simo.falt@nokia.com>, already present
1219         in the Qt-4.8 repository where the problem was identified.
1220
1221         * WebCore.pri:
1222
1223 2011-09-23  Darin Adler  <darin@apple.com>
1224
1225         Try to fix warning seen in some 32-bit builds.
1226
1227         * rendering/RenderBoxModelObject.cpp:
1228         (WebCore::backgroundRectAdjustedForBleedAvoidance):
1229         Use an explicit cast for the conversion from a double to a LayoutUnit.
1230
1231 2011-09-23  Vsevolod Vlasov  <vsevik@chromium.org>
1232
1233         Web Inspector: Clicking on error doesn't point on the correct line if user searched something
1234         https://bugs.webkit.org/show_bug.cgi?id=68627
1235
1236         Reviewed by Yury Semikhatsky.
1237
1238         * inspector/front-end/SearchController.js:
1239         (WebInspector.SearchController.prototype.disableSearchUntilExplicitAction):
1240         * inspector/front-end/inspector.js:
1241         (WebInspector._showAnchorLocationInPanel):
1242
1243 2011-09-23  Vsevolod Vlasov  <vsevik@chromium.org>
1244
1245         Web Inspector: InspectorStyleSheet should use stylesheet's original url, not final one.
1246         https://bugs.webkit.org/show_bug.cgi?id=68631
1247
1248         Reviewed by Yury Semikhatsky.
1249
1250         Test: http/tests/inspector/styles/styles-redirected-css.html
1251
1252         * inspector/InspectorStyleSheet.cpp:
1253         (WebCore::InspectorStyleSheet::resourceStyleSheetText):
1254
1255 2011-09-23  Vsevolod Vlasov  <vsevik@chromium.org>
1256
1257         Web Inspector: XHRs requests with the same url as main resource should have correct category.
1258         https://bugs.webkit.org/show_bug.cgi?id=68646
1259
1260         Reviewed by Yury Semikhatsky.
1261
1262         Test: http/tests/inspector/network/network-xhr-same-url-as-main-resource.html
1263
1264         * inspector/InspectorResourceAgent.cpp:
1265         (WebCore::InspectorResourceAgent::didReceiveResponse):
1266
1267 2011-09-23  Vsevolod Vlasov  <vsevik@chromium.org>
1268
1269         Web Inspector: Add context menu action to navigate from resources panel resource to network panel.
1270         https://bugs.webkit.org/show_bug.cgi?id=68657
1271
1272         Reviewed by Yury Semikhatsky.
1273
1274         * English.lproj/localizedStrings.js:
1275         * inspector/front-end/NetworkPanel.js:
1276         (WebInspector.NetworkPanel.prototype.showAnchorLocation):
1277         (WebInspector.NetworkPanel.prototype.revealAndHighlightResource):
1278         * inspector/front-end/ResourcesPanel.js:
1279         (WebInspector.FrameResourceTreeElement.prototype._handleContextMenuEvent):
1280         (WebInspector.FrameResourceTreeElement.prototype._appendOpenInNetworkPanelAction):
1281         * inspector/front-end/inspector.js:
1282         (WebInspector.openInNetworkPanelLabel):
1283         (WebInspector.openRequestInNetworkPanel):
1284
1285 2011-09-23  Deepak Sherveghar  <bpwv64@motorola.com>
1286
1287         [Gtk] Title attribute is not respected on option elements.
1288         https://bugs.webkit.org/show_bug.cgi?id=68615
1289
1290         Reviewed by Martin Robinson.
1291
1292         Set tooltip on PopupMenuGtk items created from GtkActions.
1293
1294         * platform/gtk/GtkPopupMenu.cpp:
1295         (WebCore::GtkPopupMenu::appendItem): Added a call to gtk_widget_set_tooltip_text()
1296             to set the tooltip on menuitem. Tooltip text is retrieved from GtkAction.
1297         * platform/gtk/PopupMenuGtk.cpp:
1298         (WebCore::PopupMenuGtk::createGtkActionForMenuItem): Pass the tooltip text
1299             from client when creating a GtkAction.
1300
1301 2011-09-23  Yael Aharon  <yael.aharon@nokia.com>
1302
1303         [Qt][Gtk] Wrong state when pausing a video in the "playing" event handler
1304         https://bugs.webkit.org/show_bug.cgi?id=68589
1305
1306         Reviewed by Philippe Normand.
1307
1308         Test: media/video-playing-and-pause.html
1309
1310         As suggested by Alexis Menard on IRC, query gstreamer's state instead of using a cached value
1311         in MediaPlayerGstreamerPrivate::paused(). 
1312
1313         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
1314         (WebCore::MediaPlayerPrivateGStreamer::paused):
1315
1316 2011-09-15  Pavel Podivilov  <podivilov@chromium.org>
1317
1318         Web Inspector: skip overlapping scripts when displaying concatenated content.
1319         https://bugs.webkit.org/show_bug.cgi?id=68144
1320
1321         Dynamically appended script tags have wrong offsets and cause troubles building concatenated content.
1322
1323         Reviewed by Pavel Feldman.
1324
1325         * inspector/front-end/SourceFile.js:
1326         (WebInspector.ConcatenatedScriptsContentProvider.prototype._concatenateScriptsContent.appendChunk):
1327         (WebInspector.ConcatenatedScriptsContentProvider.prototype._concatenateScriptsContent):
1328
1329 2011-09-23  Ilya Tikhonovsky  <loislo@chromium.org>
1330
1331         Web Inspector: file open dialog appears when user clicks on the timeline bar in timeline panel.
1332         https://bugs.webkit.org/show_bug.cgi?id=68312
1333
1334         Reviewed by Yury Semikhatsky.
1335
1336         * inspector/front-end/TimelinePanel.js:
1337         (WebInspector.TimelinePanel.prototype._createFileSelector):
1338
1339 2011-09-23  Sheriff Bot  <webkit.review.bot@gmail.com>
1340
1341         Unreviewed, rolling out r95383.
1342         http://trac.webkit.org/changeset/95383
1343         https://bugs.webkit.org/show_bug.cgi?id=68690
1344
1345         It broke WebInspector.Timeline.LoadFromFile feature.
1346         (Requested by loislo on #webkit).
1347
1348         * inspector/front-end/TimelinePanel.js:
1349         (WebInspector.TimelinePanel.prototype._createFileSelector):
1350
1351 2011-09-23  Rob Buis  <rbuis@rim.com>
1352
1353         use after free in WebCore::SVGTRefElement::updateReferencedText
1354         https://bugs.webkit.org/show_bug.cgi?id=67555
1355
1356         Reviewed by Nikolas Zimmermann.
1357
1358         Event listeners can outlive the tref element that created them when
1359         the tref is cloned and then garbage collected, causing a dangling pointer to the
1360         tref. To fix this do not install event listener until the tref is inserted into the document.
1361
1362         Test: svg/custom/tref-clone-crash.html
1363
1364         * svg/SVGTRefElement.cpp:
1365         (WebCore::SVGTRefElement::svgAttributeChanged):
1366         (WebCore::SVGTRefElement::insertedIntoDocument):
1367         * svg/SVGTRefElement.h:
1368
1369 2011-09-23  Vsevolod Vlasov  <vsevik@chromium.org>
1370
1371         ASSERTION FAILED: documentLoader in WebKit/Source/WebCore/inspector/InspectorInstrumentation.cpp(597)
1372         https://bugs.webkit.org/show_bug.cgi?id=68291
1373
1374         Reviewed by Tony Chang.
1375
1376         * dom/Document.cpp:
1377         (WebCore::Document::finishedParsing):
1378         * inspector/InspectorInstrumentation.cpp:
1379         (WebCore::InspectorInstrumentation::domContentLoadedEventFiredImpl):
1380         (WebCore::InspectorInstrumentation::loadEventFiredImpl):
1381         * inspector/InspectorInstrumentation.h:
1382         (WebCore::InspectorInstrumentation::domContentLoadedEventFired):
1383         (WebCore::InspectorInstrumentation::loadEventFired):
1384         * page/DOMWindow.cpp:
1385         (WebCore::DOMWindow::dispatchLoadEvent):
1386
1387 2011-09-22  Tony Chang  <tony@chromium.org>
1388
1389         implement -webkit-flex-order
1390         https://bugs.webkit.org/show_bug.cgi?id=67432
1391
1392         Reviewed by Ojan Vafai.
1393
1394         flex-order can be an int (including negative), but we disallow the two
1395         smallest values so we can put the numbers into a hash set.
1396
1397         Also, create two iterators: one that goes in render tree order (we use
1398         this for the first pass and to collect the possible flex order values)
1399         and one that goes in flex order.
1400
1401         Test: css3/flexbox/flex-order.html
1402
1403         * css/CSSParser.cpp:
1404         (WebCore::CSSParser::parseValue):
1405         * rendering/RenderFlexibleBox.cpp:
1406         (WebCore::FlexOrderHashTraits::emptyValue):
1407         (WebCore::FlexOrderHashTraits::constructDeletedValue):
1408         (WebCore::FlexOrderHashTraits::isDeletedValue):
1409         (WebCore::RenderFlexibleBox::TreeOrderIterator::TreeOrderIterator): A simple iterator
1410             that goes in render tree order.
1411         (WebCore::RenderFlexibleBox::TreeOrderIterator::next):
1412         (WebCore::RenderFlexibleBox::TreeOrderIterator::reset):
1413         (WebCore::RenderFlexibleBox::TreeOrderIterator::flexOrderValues):
1414         (WebCore::RenderFlexibleBox::FlexOrderIterator::FlexOrderIterator): An iterator that
1415             goes in flex-order order.  Creating this involves sorting, so only create it once
1416             and pass it around.
1417         (WebCore::RenderFlexibleBox::FlexOrderIterator::first):
1418         (WebCore::RenderFlexibleBox::FlexOrderIterator::next):
1419         (WebCore::RenderFlexibleBox::FlexOrderIterator::reset):
1420         (WebCore::RenderFlexibleBox::layoutHorizontalBlock):
1421         (WebCore::RenderFlexibleBox::computePreferredLogicalWidth):
1422         (WebCore::RenderFlexibleBox::runFreeSpaceAllocationAlgorithmInlineDirection):
1423         (WebCore::RenderFlexibleBox::layoutAndPlaceChildrenInlineDirection):
1424         * rendering/RenderFlexibleBox.h:
1425
1426 2011-09-22  Darin Adler  <darin@apple.com>
1427
1428         Use AffineTransform scale functions in ShadowBlur::adjustBlurRadius
1429         https://bugs.webkit.org/show_bug.cgi?id=68667
1430
1431         Reviewed by Simon Fraser.
1432
1433         * platform/graphics/ShadowBlur.cpp:
1434         (WebCore::ShadowBlur::adjustBlurRadius): Use AffineTransform::xScale and
1435         AffineTransform::yScale instead of the custom code here that seems to do
1436         the same thing.
1437
1438 2011-09-22  Darin Adler  <darin@apple.com>
1439
1440         Remove unneeded type conversion from background bleed code
1441         https://bugs.webkit.org/show_bug.cgi?id=68669
1442
1443         Reviewed by Geoffrey Garen.
1444
1445         * rendering/RenderBoxModelObject.cpp:
1446         (WebCore::backgroundRectAdjustedForBleedAvoidance): Use ceil instead of ceilf
1447         and eliminate superflous conversion to float and use of FloatSize. Also added
1448         a "why" comment.
1449
1450 2011-09-22  Darin Adler  <darin@apple.com>
1451
1452         Refactor checks for antialiasing lines to share a single function
1453         https://bugs.webkit.org/show_bug.cgi?id=68666
1454
1455         Reviewed by Dan Bernstein.
1456
1457         * rendering/RenderBlock.cpp:
1458         (WebCore::RenderBlock::paintColumnRules): Call shouldAntialiasLines.
1459         * rendering/RenderBoxModelObject.cpp:
1460         (WebCore::RenderBoxModelObject::paintBorder): Ditto.
1461         (WebCore::RenderBoxModelObject::shouldAntialiasLines): Added.
1462         * rendering/RenderBoxModelObject.h: Added shouldAntialiasLines function.
1463         * rendering/RenderInline.cpp:
1464         (WebCore::RenderInline::paintOutlineForLine): Call shouldAntialiasLines.
1465         * rendering/RenderTableCell.cpp:
1466         (WebCore::RenderTableCell::paintCollapsedBorder): Ditto.
1467
1468 2011-09-22  Antoine Labour  <piman@chromium.org>
1469
1470         Remove unused members from LayerChromium.
1471         These members are never set, and never used.
1472         Other members that are set but not used have been left (we may use them
1473         later, e.g. m_opaque).
1474         https://bugs.webkit.org/show_bug.cgi?id=68297
1475
1476         Reviewed by James Robinson.
1477
1478         No functional change, no new test needed.
1479
1480         * platform/graphics/chromium/LayerChromium.cpp:
1481         (WebCore::LayerChromium::LayerChromium):
1482         * platform/graphics/chromium/LayerChromium.h:
1483
1484 2011-09-22  Tom Sepez  <tsepez@chromium.org>
1485
1486         Make XSSAuditor extract meaningful snippet from script blocks for comparison
1487         against the URL when checking for reflection.  Avoids getting caugh up in
1488         trailing comments.
1489         https://bugs.webkit.org/show_bug.cgi?id=68094
1490
1491         Reviewed by Adam Barth.
1492
1493         Tests: http/tests/security/xssAuditor/script-tag-with-trailing-comment.html
1494                http/tests/security/xssAuditor/script-tag-with-trailing-comment2.html
1495                http/tests/security/xssAuditor/script-tag-with-trailing-comment3.html
1496
1497         * html/parser/XSSAuditor.cpp:
1498         (WebCore::XSSAuditor::filterTokenAfterScriptStartTag):
1499         (WebCore::XSSAuditor::extractCodeFragment):
1500         * html/parser/XSSAuditor.h:
1501
1502 2011-09-22  Nate Chapin  <japhet@chromium.org>
1503
1504         Remove didReceiveAuthenticationChallenge() from SubresourceLoaderClient.
1505         Instead, add a load-specific policy for showing the user authentication
1506         challenge down to ResourceLoaderOptions and enforce it in ResourceLoader.
1507         https://bugs.webkit.org/show_bug.cgi?id=65330
1508
1509         Reviewed by Alexey Proskuryakov.
1510
1511         No new tests, refactor only.
1512
1513         * loader/DocumentThreadableLoader.cpp:
1514         * loader/DocumentThreadableLoader.h:
1515         * loader/MainResourceLoader.cpp:
1516         * loader/NetscapePlugInStreamLoader.cpp:
1517         * loader/ResourceLoadScheduler.h:
1518         * loader/ResourceLoader.cpp:
1519         (WebCore::ResourceLoader::didReceiveAuthenticationChallenge):
1520            For resource types that always send a challenge to the embedder,
1521            this patch doesn't change anything. For those that don't, we will
1522            always try to continue without credentials when they are forbidden
1523            and the platform supports it.
1524            When continuing without credentials was initially implemented in
1525            DocumentThreadableLoader, we sent the ThreadableLoaderClient a didFail(),
1526            then canceled the SubresourceLoader. This was necessary because of the
1527            quirks of ThreadableLoader cancellation (we sever the client/loader connections
1528            before the load actually cancels), but a simple didFail() should suffice at
1529            the ResourceLoader layer.
1530         * loader/ResourceLoaderOptions.h:
1531         * loader/SubresourceLoader.cpp:
1532         * loader/SubresourceLoader.h:
1533         * loader/SubresourceLoaderClient.h:
1534         * loader/cache/CachedResource.cpp:
1535         * loader/cache/CachedResourceLoader.cpp:
1536         * loader/cache/CachedResourceLoader.h:
1537         * loader/icon/IconLoader.cpp: The ResourceLoader implementation of
1538             didReceiveAuthenticationChallege means that IconLoader will now
1539             try to continue with credentials on platforms that support it,
1540             rather than just canceling outright. We still will never prompt
1541             for authentication for icons.
1542         * loader/icon/IconLoader.h:
1543
1544 2011-09-22  Dean Jackson  <dino@apple.com>
1545
1546         Add ENABLE_CSS_FILTERS
1547         https://bugs.webkit.org/show_bug.cgi?id=68652
1548
1549         Reviewed by Simon Fraser.
1550
1551         * Configurations/FeatureDefines.xcconfig:
1552
1553 2011-09-22  Anders Carlsson  <andersca@apple.com>
1554
1555         Make sure to update scrollbars in ScrollView::setFrameRect
1556         https://bugs.webkit.org/show_bug.cgi?id=68663
1557
1558         Reviewed by Sam Weinig.
1559
1560         Call updateScrollbars after setting the frame rect. This was previously done by the
1561         call to setBoundsSize from RenderWidget::setWidgetGeometry but setBoundsSize was removed
1562         completely in http://trac.webkit.org/changeset/95725.
1563
1564         * platform/ScrollView.cpp:
1565         (WebCore::ScrollView::setFrameRect):
1566
1567 2011-09-22  Jon Lee  <jonlee@apple.com>
1568
1569         Progress control gets cropped on the bottom
1570         https://bugs.webkit.org/show_bug.cgi?id=68302
1571         <rdar://problem/10069915>
1572
1573         Reviewed by Kent Tamura.
1574
1575         As it turns out the smaller control type does not get rendered either, so this patch
1576         fixes both.
1577
1578         * manual-tests/dom/progressbar.html: Altered to show both sizes of controls
1579         * rendering/RenderThemeMac.h:
1580         * rendering/RenderThemeMac.mm: Added methods to inflate the drawing rect
1581         (WebCore::RenderThemeMac::progressBarSizes):
1582         (WebCore::RenderThemeMac::progressBarMargins):
1583         (WebCore::RenderThemeMac::minimumProgressBarHeight):
1584         (WebCore::RenderThemeMac::paintProgressBar): Inflate the rect based on minimum desired
1585         control height and glow margin.
1586
1587 2011-09-22  David Hyatt  <hyatt@apple.com>
1588
1589         https://bugs.webkit.org/show_bug.cgi?id=68658
1590
1591         Make matchedEndLine smart enough to not match lines that have moved to new
1592         regions with different available content logical widths. When this happens, we go ahead and treat
1593         the line as failing to match.
1594
1595         Reviewed by Anders Carlsson.
1596
1597         Added new tests in fast/regions.
1598
1599         * rendering/RenderBlock.cpp:
1600         (WebCore::RenderBlock::lineWidthForPaginatedLineChanged):
1601         * rendering/RenderBlock.h:
1602         Enhanced to take an optional delta, so that you can check a new position without having to move
1603         the line box.
1604
1605         * rendering/RenderBlockLineLayout.cpp:
1606         (WebCore::RenderBlock::checkPaginationAndFloatsAtEndLine):
1607         New function that refactors checking for line width changes from region movement as well as the
1608         float checks. Since the float checks were duplicated twice, this is a nice refactoring.
1609
1610         (WebCore::RenderBlock::matchedEndLine):
1611         Changed to call the new helper function that will check both floats and pagination.
1612
1613 2011-09-22  Gavin Barraclough  <barraclough@apple.com>
1614
1615         Implement Function.prototype.bind
1616         https://bugs.webkit.org/show_bug.cgi?id=26382
1617
1618         Reviewed by Sam Weinig.
1619
1620         Test: fast/js/function-bind.html
1621
1622         * bindings/js/JSDOMBinding.cpp:
1623         (WebCore::objectToStringFunctionGetter):
1624         * bindings/js/JSDOMWindowCustom.cpp:
1625         (WebCore::nonCachingStaticFunctionGetter):
1626         * bindings/js/JSHistoryCustom.cpp:
1627         (WebCore::nonCachingStaticBackFunctionGetter):
1628         (WebCore::nonCachingStaticForwardFunctionGetter):
1629         (WebCore::nonCachingStaticGoFunctionGetter):
1630         * bindings/js/JSLocationCustom.cpp:
1631         (WebCore::nonCachingStaticReplaceFunctionGetter):
1632         (WebCore::nonCachingStaticReloadFunctionGetter):
1633         (WebCore::nonCachingStaticAssignFunctionGetter):
1634             - Function::create no longer requires functionStructure() to be passed.
1635 2011-09-22  David Hyatt  <hyatt@apple.com>
1636
1637         https://bugs.webkit.org/show_bug.cgi?id=68650
1638         
1639         Make determineStartPosition smart enough to not skip over clean lines that have moved to a new
1640         region with a different available content logical width. When this happens, we go ahead and treat
1641         the line as dirty.
1642
1643         Reviewed by Sam Weinig.
1644
1645         Covered by existing fast/regions tests.
1646
1647         * rendering/RenderBlock.cpp:
1648         (WebCore::RenderBlock::layoutBlock):
1649         Disable region fitting if we detect that the regions all have uniform widths. In this case we know
1650         the content width can't vary, so there's no reason to waste time worrying about it.
1651
1652         (WebCore::RenderBlock::computeLogicalLocationForFloat):
1653         Pull the content width checking code into computeLogicalLocationForFloat, since we've incorporated
1654         region fitting into the fixed offsets now rather than the line functions.
1655
1656         (WebCore::RenderBlock::positionNewFloats):
1657         Changed because more code moved from here into computeLogicalLocationForFloat.
1658         
1659         (WebCore::RenderBlock::adjustForRegionFittingIfNeeded):
1660         No changes. Just moved the function above the left offset function.
1661
1662         (WebCore::RenderBlock::logicalLeftOffsetForContent):
1663         (WebCore::RenderBlock::logicalRightOffsetForContent):
1664         Added. These new functions give the fixed left and right offsets for lines in a particular region.
1665         When no regions are present or when all the regions have a uniform width, they are identical
1666         to the versions of the functions that take no arguments.
1667
1668         (WebCore::RenderBlock::logicalRightOffsetForLine):
1669         Changed to no longer do region fitting, since that's built into logicalRightOffsetForContent now.
1670
1671         (WebCore::RenderBlock::lineWidthForPaginatedLineChanged):
1672         New function that takes a root line box and compares its cached old content width with the width
1673         available at the line's new location.
1674     
1675         * rendering/RenderBlock.h:
1676         (WebCore::RenderBlock::logicalRightOffsetForLine):
1677         (WebCore::RenderBlock::logicalLeftOffsetForLine):
1678         Modified to call the logicalXXXOffsetForContent functions that take a block direction position.
1679
1680         (WebCore::RenderBlock::logicalRightOffsetForContent):
1681         (WebCore::RenderBlock::logicalLeftOffsetForContent):
1682         Added the new functions that take a position so that they can fit to the correct region.
1683
1684         (WebCore::RenderBlock::availableLogicalWidthForContent):
1685         New helper function that calls right - left (similar to the corresponding line function that includes
1686         floats).
1687
1688         * rendering/RenderBlockLineLayout.cpp:
1689         (WebCore::RenderBlock::determineStartPosition):
1690         Patched to check if a line has moved to a place with a different available content width. If so, the line
1691         is dirtied so that line layout can re-run.
1692
1693         * rendering/RootInlineBox.cpp:
1694         (WebCore::RootInlineBox::RootInlineBox):
1695         (WebCore::RootInlineBox::alignBoxesInBlockDirection):
1696         Sets the paginated line width from the current block logical height.
1697
1698         * rendering/RootInlineBox.h:
1699         (WebCore::RootInlineBox::paginationStrut):
1700         (WebCore::RootInlineBox::setPaginationStrut):
1701         Fixed paginationStrut to be LayoutUnit instead of int.
1702
1703         (WebCore::RootInlineBox::paginatedLineWidth):
1704         (WebCore::RootInlineBox::setPaginatedLineWidth):
1705         Added paginatedLineWidth getter/setter for caching the content width for a given root line.
1706
1707 2011-09-21  Anders Carlsson  <andersca@apple.com>
1708
1709         Remove Widget::beforeMouseDown and Widget::afterMouseDown
1710         https://bugs.webkit.org/show_bug.cgi?id=68570
1711
1712         Reviewed by Darin Adler.
1713
1714         These two member functions were originally added to avoid crashes due to removing NSViews while they were
1715         being tracked by AppKit. Since they were added, we've moved away from NSViews for form controls, and the bugs in
1716         AppKit that lead to crashes have been fixed.
1717
1718         This patch was rolled out in r95743 because it broke a bunch of tests. The patch accidentally removed setting back
1719         m_sendingEventToSubview to false.
1720
1721         * page/mac/EventHandlerMac.mm:
1722         (WebCore::EventHandler::passMouseDownEventToWidget):
1723         * platform/Widget.h:
1724         * platform/mac/WidgetMac.mm:
1725         (WebCore::Widget::Widget):
1726         (WebCore::Widget::removeFromSuperview):
1727
1728         * rendering/RenderWidget.cpp:
1729         Change widgetHierarchyUpdateSuspendCount to be an unsigned integer instead of a size_t.
1730
1731 2011-09-22  Sheriff Bot  <webkit.review.bot@gmail.com>
1732
1733         Unreviewed, rolling out r95335 and r95645.
1734         http://trac.webkit.org/changeset/95335
1735         http://trac.webkit.org/changeset/95645
1736         https://bugs.webkit.org/show_bug.cgi?id=68649
1737
1738         Wrong fix (Requested by rniwa on #webkit).
1739
1740         * editing/DeleteSelectionCommand.cpp:
1741         (WebCore::DeleteSelectionCommand::saveTypingStyleState):
1742         * editing/EditingStyle.cpp:
1743         (WebCore::EditingStyle::removeStyleAddedByNode):
1744         * editing/EditingStyle.h:
1745         * editing/ReplaceSelectionCommand.cpp:
1746         (WebCore::ReplaceSelectionCommand::removeRedundantStylesAndKeepStyleSpanInline):
1747         * editing/markup.cpp:
1748         (WebCore::StyledMarkupAccumulator::serializeNodes):
1749         (WebCore::ancestorToRetainStructureAndAppearance):
1750         * editing/markup.h:
1751
1752 2011-09-22  Ryosuke Niwa  <rniwa@webkit.org>
1753
1754         Revert r95673 since it caused hundreds of tests to fail on Leopard / Snow Leopard.
1755
1756         * page/mac/EventHandlerMac.mm:
1757         (WebCore::EventHandler::passMouseDownEventToWidget):
1758         * platform/Widget.h:
1759         * platform/mac/WidgetMac.mm:
1760         (WebCore::Widget::Widget):
1761         (WebCore::Widget::removeFromSuperview):
1762         (WebCore::Widget::beforeMouseDown):
1763         (WebCore::Widget::afterMouseDown):
1764         * rendering/RenderWidget.cpp:
1765
1766 2011-09-22  David Hyatt  <hyatt@apple.com>
1767
1768         https://bugs.webkit.org/show_bug.cgi?id=68638
1769         
1770         Make RenderFlowThread cache whether or not it has regions of varying widths. This will
1771         be relevant for performance as we begin adding code to do custom block painting and
1772         layout based off regions not having the same width.
1773
1774         Reviewed by Dan Bernstein and Adam Roben.
1775
1776         * rendering/RenderFlowThread.cpp:
1777         (WebCore::RenderFlowThread::RenderFlowThread):
1778         (WebCore::RenderFlowThread::layout):
1779         * rendering/RenderFlowThread.h:
1780
1781 2011-09-22  Anders Carlsson  <andersca@apple.com>
1782
1783         FrameView::invalidateRect and FrameView::setFrameRect shouldn't take LayoutRects
1784         https://bugs.webkit.org/show_bug.cgi?id=68639
1785
1786         Reviewed by David Hyatt.
1787
1788         FrameView::invalidateRect and FrameView::setFrameRect override Widget and ScrollView
1789         member functions that take IntRects, and Widget coordinates are currently defined in terms of
1790         IntRects (and probably always should since we want them to be pixel-aligned).
1791
1792         * page/FrameView.cpp:
1793         (WebCore::FrameView::invalidateRect):
1794         (WebCore::FrameView::setFrameRect):
1795         * page/FrameView.h:
1796
1797 2011-09-22  Tim Horton  <timothy_horton@apple.com>
1798
1799         Unreviewed build fix (fixes warning about too many parens).
1800
1801         * rendering/RenderBox.cpp:
1802         (WebCore::RenderBox::computePositionedLogicalWidthReplaced):
1803
1804 2011-09-22  Anders Carlsson  <andersca@apple.com>
1805
1806         Widget::frameRect shouldn't be virtual
1807         https://bugs.webkit.org/show_bug.cgi?id=68637
1808
1809         Reviewed by Sam Weinig.
1810
1811         Nobody overrides Widget::frameRect and nobody should.
1812
1813         * platform/Widget.h:
1814
1815 2011-09-22  Sergey Glazunov  <serg.glazunov@gmail.com>
1816
1817         Ref protect shaders in V8WebGLRenderingContext::getAttachedShadersCallback
1818         https://bugs.webkit.org/show_bug.cgi?id=68630
1819
1820         Reviewed by Adam Barth.
1821
1822         Test: fast/canvas/webgl/shader-deleted-by-accessor.html
1823
1824         * bindings/js/JSWebGLRenderingContextCustom.cpp:
1825         (WebCore::JSWebGLRenderingContext::getAttachedShaders):
1826         * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
1827         (WebCore::V8WebGLRenderingContext::getAttachedShadersCallback):
1828         * html/canvas/WebGLRenderingContext.cpp:
1829         (WebCore::WebGLRenderingContext::getAttachedShaders):
1830         * html/canvas/WebGLRenderingContext.h:
1831
1832 2011-09-05  Robert Hogan  <robert@webkit.org>
1833
1834         CSS 2.1 failure: abspos-non-replaced-width-margin-000, abspos-replaced-width-margin-000
1835         https://bugs.webkit.org/show_bug.cgi?id=47148
1836
1837         Reviewed by David Hyatt.
1838
1839         * rendering/RenderBlock.h:
1840         * rendering/RenderBlockLineLayout.cpp:
1841         (WebCore::RenderBlock::startOffsetForLine): Return offset from right, rather than offset from left + logicalwidth
1842         * rendering/RenderBlockLineLayout.cpp:
1843         (WebCore::RenderBlock::startAlignedOffsetForLine): 
1844               Return the correct alignment for RTL blocks too. Looks like neither FF or Opera do this correctly.
1845               Covered by new test left-right-center-inline-alignment-in-ltr-and-rtl-blocks.html
1846         * rendering/RenderBox.cpp:
1847         (WebCore::computeInlineStaticDistance):
1848             - The CSS 2.1 tests now require UAs to use the parent block's direction (rather than the
1849               containing block's direction) when computing static distance. The container block's direction
1850               is still used in the other width and offset related calculations.
1851             - In the context of this function, the logicalRight value is just an element that will be used later to calculate 
1852               the correct logicalLeft position for the RTL block. So whereas an LTR block can substract containerBlock->borderLogicalLeft() 
1853               in this function directly, an RTL block has to add it here so that will be later subtracted from availableSpace to get 
1854               logicalLeft in computePositionedLogicalWidthUsing().
1855
1856         (WebCore::RenderBox::computePositionedLogicalWidth):
1857            - Update comments and use the container block's direction except when calculating the static distance.
1858            - Remove the notion of a quirks mode in this function and for calculating the position of replaced and non-replaced
1859              blocks generally. This is in line with both FF4 and Opera - neither of which have a quirks mode for them.
1860         (WebCore::RenderBox::computePositionedLogicalWidthUsing):
1861            - Update comments and use the container block's direction except when calculating the static distance.
1862         (WebCore::RenderBox::computePositionedLogicalHeight):
1863            - Update comments.
1864         (WebCore::RenderBox::computePositionedLogicalWidthReplaced):
1865            - Update comments and use the container block's direction except when calculating the static distance.
1866            - If the containing block is RTL, always assume that values are over-constrained.
1867         (WebCore::RenderBox::computePositionedLogicalHeightReplaced):
1868            - Update comments.
1869
1870 2011-09-22  Anders Carlsson  <andersca@apple.com>
1871
1872         Get rid of Widget::setBoundsSize
1873         https://bugs.webkit.org/show_bug.cgi?id=68491
1874
1875         Reviewed by Sam Weinig.
1876
1877         This basically reverts http://trac.webkit.org/changeset/79167 and http://trac.webkit.org/changeset/75897
1878         which were added to make zoom gestures work with WebKit1, but since we don't support zoom gestures in WebKit1
1879         anymore, it's better for code cleanliness to get rid of Widget::setBoundsSize and the associated code. While this
1880         will unfortunately break transformed iframes in WebKit1, but Simon says that it's an acceptable tradeoff.
1881
1882         * WebCore.exp.in:
1883         * loader/FrameLoader.cpp:
1884         (WebCore::FrameLoader::open):
1885         * page/FrameView.cpp:
1886         (WebCore::FrameView::create):
1887         * platform/ScrollView.cpp:
1888         (WebCore::ScrollView::visibleContentRect):
1889         (WebCore::ScrollView::updateScrollbars):
1890         (WebCore::ScrollView::wheelEvent):
1891         * platform/ScrollView.h:
1892         * platform/Widget.cpp:
1893         * platform/Widget.h:
1894         (WebCore::Widget::resize):
1895         * platform/chromium/PopupContainer.cpp:
1896         (WebCore::PopupContainer::refresh):
1897         * platform/gtk/ScrollViewGtk.cpp:
1898         (WebCore::ScrollView::visibleContentRect):
1899         * platform/mac/WidgetMac.mm:
1900         (WebCore::Widget::paint):
1901         * rendering/RenderWidget.cpp:
1902         (WebCore::RenderWidget::setWidgetGeometry):
1903         (WebCore::RenderWidget::setWidget):
1904         (WebCore::RenderWidget::updateWidgetPosition):
1905         * rendering/RenderWidget.h:
1906
1907 2011-09-21  David Hyatt  <hyatt@apple.com>
1908
1909         https://bugs.webkit.org/show_bug.cgi?id=68590
1910         
1911         Floats pushed to next page, column or region don't reposition properly if the amount of
1912         available logical width at the new position changes. Refactor the code so that we can
1913         run the float placement algorithm again when this happens.
1914
1915         Covered by an existing regions test that exposes the issue.
1916
1917         Reviewed by Adam Roben.
1918
1919         * rendering/RenderBlock.cpp:
1920         (WebCore::RenderBlock::computeLogicalLocationForFloat):
1921         (WebCore::RenderBlock::positionNewFloats):
1922         * rendering/RenderBlock.h:
1923
1924 2011-09-22  Leandro Gracia Gil  <leandrogracia@chromium.org>
1925
1926         Fire TextInput events on speech input, but not set/add any inputMethod attribute.
1927         https://bugs.webkit.org/show_bug.cgi?id=60451
1928
1929         Reviewed by Ryosuke Niwa.
1930
1931         Introduce code to dispatch TextInput events when text is introduced via
1932         the speech input feature. Handle also the cases where speech input is
1933         started programmatically from the LayoutTestController.
1934
1935         Test: fast/speech/input-ontextinput-event.html
1936
1937         * dom/TextEventInputType.h:
1938         * html/shadow/TextControlInnerElements.cpp:
1939         (WebCore::InputFieldSpeechButtonElement::setRecognitionResult):
1940
1941 2011-09-20  Jason Liu  <jason.liu@torchmobile.com.cn>
1942
1943         Reviewed by Simon Fraser.
1944
1945         CSS outline property on a narrow element has rabbit ear artifacts
1946         https://bugs.webkit.org/show_bug.cgi?id=36793
1947
1948         Patch by Jason Liu  <jason.liu@torchmobile.com.cn>
1949         Patch updated by Robert Hogan <robert@webkit.org>
1950
1951         Test: fast/css/outline-narrowLine.html
1952
1953         * rendering/RenderInline.cpp:
1954         (WebCore::RenderInline::paintOutlineForLine):
1955
1956 2011-09-22  Wajahat Siddiqui  <mdwajahatali.siddiqui@motorola.com>
1957
1958         [GTK]Popup drop-down menu contains extra empty spaces at beginning and 
1959         occupies whole screen when items in popup reaches the height of display device.
1960         https://bugs.webkit.org/show_bug.cgi?id=68533
1961
1962         When implementing the GTK+ menu position function, set pushIn to false, which tell
1963         GTK+ not create a menu that is as big as the entire screen.
1964
1965         Reviewed by Martin Robinson.
1966
1967         * platform/gtk/GtkPopupMenu.cpp:
1968         (WebCore::GtkPopupMenu::menuPositionFunction): Set pushIn to false in the menu position function.
1969
1970 2011-09-22  Alpha Lam  <hclam@chromium.org>
1971
1972         Define export symbol correctly due to rename of pageScaleFactor to
1973         frameScaleFactor.
1974
1975         Not reviewed. Build fix.
1976
1977         * WebCore.exp.in:
1978
1979 2011-09-22  Vsevolod Vlasov  <vsevik@chromium.org>
1980
1981         Web Inspector: Console is always scrolled to the top
1982         https://bugs.webkit.org/show_bug.cgi?id=67483
1983
1984         Reviewed by Pavel Feldman.
1985
1986         * inspector/front-end/ConsoleView.js:
1987         (WebInspector.ConsoleView.prototype.wasShown):
1988         (WebInspector.ConsoleView.prototype.storeScrollPositions):
1989         (WebInspector.ConsoleView.prototype.restoreScrollPositions):
1990         (WebInspector.ConsoleView.prototype.onResize):
1991         (WebInspector.ConsoleView.prototype._immediatelyScrollIntoView):
1992         (WebInspector.ConsoleView.prototype._cancelScheduledScrollIntoView):
1993         (WebInspector.ConsoleView.prototype._consoleCleared):
1994         * inspector/front-end/Drawer.js:
1995         (WebInspector.Drawer.prototype.hide):
1996         (WebInspector.Drawer.prototype.resize):
1997         (WebInspector.Drawer.prototype._startStatusBarDragging):
1998         (WebInspector.Drawer.prototype._statusBarDragging):
1999         * inspector/front-end/inspector.js:
2000         (WebInspector.animateStyle):
2001         (WebInspector.animateStyle.forceComplete):
2002
2003 2011-09-22  Alpha Lam  <hclam@chromium.org>
2004
2005         https://bugs.webkit.org/show_bug.cgi?id=68081
2006         Fix scroll in page scaling mode.
2007
2008         Reviewed by Simon Fraser.
2009
2010         The following things are done in this patch:
2011         1. Rename Frame::pageScaleFactor() to Frame::frameScaleFactor() to better
2012            reflect its purpose.
2013         2. Frame::frameScaleFactor() returns the scale factor of this frame with
2014            respect to the container. So for the main frame it'll return the scale
2015            factor of the page, inner frames will return 1.0
2016         3. scrollBy(), scrollX() and scrollY() to take into account of the frame
2017            scale factor, causing incorrect coordinates reported to Javascript.
2018
2019         Tests: fast/events/scale-and-scroll-body.html
2020                fast/events/scale-and-scroll-iframe-body.html
2021                fast/events/scale-and-scroll-iframe-window.html
2022                fast/events/scale-and-scroll-window.html
2023
2024         * html/HTMLBodyElement.cpp:
2025         (WebCore::adjustForZoom):
2026         (WebCore::HTMLBodyElement::setScrollLeft):
2027         (WebCore::HTMLBodyElement::setScrollTop):
2028         * loader/HistoryController.cpp:
2029         (WebCore::HistoryController::saveScrollPositionAndViewStateToItem):
2030         * page/DOMWindow.cpp:
2031         (WebCore::DOMWindow::scrollX):
2032         (WebCore::DOMWindow::scrollY):
2033         (WebCore::DOMWindow::scrollTo):
2034         * page/Frame.cpp:
2035         (WebCore::Frame::frameScaleFactor): Return page's scale factor if this is
2036                                             main frame, otherwise 1.0
2037         * page/Frame.h:
2038         * page/FrameView.cpp:
2039         (WebCore::FrameView::applyOverflowToViewport):
2040         (WebCore::FrameView::scrollXForFixedPosition):
2041         (WebCore::FrameView::scrollYForFixedPosition):
2042
2043 2011-09-22  Andreas Kling  <kling@webkit.org>
2044
2045         CSS: Implement 'font' property in CSSComputedStyle.
2046         https://bugs.webkit.org/show_bug.cgi?id=66666
2047
2048         Reviewed by Antti Koivisto.
2049
2050         Test: fast/css/getComputedStyle/computed-style-font.html
2051
2052         * css/CSSComputedStyleDeclaration.cpp:
2053         (WebCore::fontFamilyFromStyle): Factored out of getPropertyCSSValue().
2054         This function will always return a CSSValueList, as opposed to the previous
2055         implementation which would return a CSSPrimitiveValue if there was only one family.
2056         getCSSPropertyValue() will return the first element of the list for 1-element lists
2057         to preserve the current behavior of getPropertyCSSValue('font-family').
2058
2059         (WebCore::lineHeightFromStyle): Factored out of getPropertyCSSValue().
2060         (WebCore::fontSizeFromStyle): Ditto.
2061         (WebCore::fontStyleFromStyle): Ditto.
2062         (WebCore::fontVariantFromStyle): Ditto.
2063         (WebCore::fontWeightFromStyle): Ditto.
2064
2065         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Added
2066         implementation of the computed 'font' property (CSSPropertyFont.)
2067
2068 2011-09-22  Jesus Sanchez-Palencia  <jesus.palencia@openbossa.org>
2069
2070         [Qt] Redirection overflow errors have wrong error domain
2071         https://bugs.webkit.org/show_bug.cgi?id=68612
2072
2073         Reviewed by Andreas Kling.
2074
2075         Redirection overflow currently puts the URL hostname in the errorDomain field.
2076         Now redirection overflow errors will be classified as "HTTP" errors.
2077
2078         * platform/network/qt/QNetworkReplyHandler.cpp:
2079         (WebCore::QNetworkReplyHandler::redirect):
2080
2081 2011-09-22  James Robinson  <jamesr@chromium.org>
2082
2083         Unreviewed, rolling out r95699.
2084         http://trac.webkit.org/changeset/95699
2085         https://bugs.webkit.org/show_bug.cgi?id=67417
2086
2087         Makes many chromium compositor tests crash
2088
2089         * platform/CrossThreadCopier.h:
2090         * platform/graphics/chromium/LayerRendererChromium.cpp:
2091         (WebCore::LayerRendererChromium::~LayerRendererChromium):
2092         * platform/graphics/chromium/cc/CCHeadsUpDisplay.cpp:
2093         (WebCore::CCHeadsUpDisplay::enabled):
2094         * platform/graphics/chromium/cc/CCLayerImpl.cpp:
2095         (WebCore::CCLayerImpl::CCLayerImpl):
2096         (WebCore::CCLayerImpl::~CCLayerImpl):
2097         * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
2098         (WebCore::CCLayerTreeHost::CCLayerTreeHost):
2099         (WebCore::CCLayerTreeHost::commitTo):
2100         (WebCore::CCLayerTreeHost::setNeedsRedraw):
2101         * platform/graphics/chromium/cc/CCLayerTreeHost.h:
2102         (WebCore::CCSettings::CCSettings):
2103         * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
2104         (WebCore::CCLayerTreeHostImpl::CCLayerTreeHostImpl):
2105         (WebCore::CCLayerTreeHostImpl::~CCLayerTreeHostImpl):
2106         * platform/graphics/chromium/cc/CCProxy.h:
2107         * platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
2108         (WebCore::CCSingleThreadProxy::finishAllRendering):
2109         (WebCore::CCSingleThreadProxy::setNeedsCommit):
2110         (WebCore::CCSingleThreadProxy::commitIfNeeded):
2111         * platform/graphics/chromium/cc/CCThreadProxy.cpp:
2112         (WebCore::CCThreadProxy::CCThreadProxy):
2113         (WebCore::CCThreadProxy::~CCThreadProxy):
2114         (WebCore::CCThreadProxy::compositeAndReadback):
2115         (WebCore::CCThreadProxy::finishAllRendering):
2116         (WebCore::CCThreadProxy::isStarted):
2117         (WebCore::CCThreadProxy::initializeLayerRenderer):
2118         (WebCore::CCThreadProxy::setNeedsCommit):
2119         (WebCore::CCThreadProxy::setNeedsCommitAndRedraw):
2120         (WebCore::CCThreadProxy::setNeedsRedraw):
2121         (WebCore::CCThreadProxy::start):
2122         (WebCore::CCThreadProxy::stop):
2123         (WebCore::CCThreadProxy::beginFrameAndCommitOnCCThread):
2124         (WebCore::CCThreadProxy::beginFrameAndCommit):
2125         (WebCore::CCThreadProxy::commitOnCCThread):
2126         (WebCore::CCThreadProxy::drawLayersOnCCThread):
2127         (WebCore::CCThreadProxy::setNeedsCommitOnCCThread):
2128         (WebCore::CCThreadProxy::setNeedsCommitAndRedrawOnCCThread):
2129         (WebCore::CCThreadProxy::setNeedsRedrawOnCCThread):
2130         * platform/graphics/chromium/cc/CCThreadProxy.h:
2131
2132 2011-09-22  Nat Duca  <nduca@chromium.org>
2133
2134         [chromium] Make CCThreadProxy draw
2135         https://bugs.webkit.org/show_bug.cgi?id=67417
2136
2137         Update the CCThreadProxy to correctly implement the CCProxy
2138         interface, do all the right committing and updating steps, and
2139         draw a picture on the screen.
2140
2141         Reviewed by James Robinson.
2142
2143         * platform/graphics/IntRect.h:
2144         * platform/graphics/chromium/LayerRendererChromium.cpp:
2145         (WebCore::LayerRendererChromium::~LayerRendererChromium):
2146         * platform/graphics/chromium/cc/CCHeadsUpDisplay.cpp:
2147         (WebCore::CCHeadsUpDisplay::enabled):
2148         * platform/graphics/chromium/cc/CCLayerImpl.cpp:
2149         (WebCore::CCLayerImpl::CCLayerImpl):
2150         (WebCore::CCLayerImpl::~CCLayerImpl):
2151         * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
2152         (WebCore::CCLayerTreeHost::CCLayerTreeHost):
2153         (WebCore::CCLayerTreeHost::commitTo):
2154         (WebCore::CCLayerTreeHost::commitComplete):
2155         (WebCore::CCLayerTreeHost::setNeedsRedraw):
2156         * platform/graphics/chromium/cc/CCLayerTreeHost.h:
2157         * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
2158         (WebCore::CCLayerTreeHostImpl::CCLayerTreeHostImpl):
2159         (WebCore::CCLayerTreeHostImpl::~CCLayerTreeHostImpl):
2160         * platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
2161         (WebCore::CCSingleThreadProxy::finishAllRendering):
2162         (WebCore::CCSingleThreadProxy::setNeedsCommit):
2163         (WebCore::CCSingleThreadProxy::commitIfNeeded):
2164         * platform/graphics/chromium/cc/CCThreadProxy.cpp:
2165         (WebCore::CCThreadProxy::CCThreadProxy):
2166         (WebCore::CCThreadProxy::~CCThreadProxy):
2167         (WebCore::CCThreadProxy::compositeAndReadback):
2168         (WebCore::CCThreadProxy::drawLayersAndReadbackOnCCThread):
2169         (WebCore::CCThreadProxy::finishAllRendering):
2170         (WebCore::CCThreadProxy::isStarted):
2171         (WebCore::CCThreadProxy::setNeedsCommit):
2172         (WebCore::CCThreadProxy::setNeedsCommitAndRedraw):
2173         (WebCore::CCThreadProxy::setNeedsRedraw):
2174         (WebCore::CCThreadProxy::start):
2175         (WebCore::CCThreadProxy::stop):
2176         (WebCore::CCThreadProxy::finishAllRenderingOnCCThread):
2177         (WebCore::CCThreadProxy::createBeginFrameAndCommitTaskOnCCThread):
2178         (WebCore::CCThreadProxy::beginFrameAndCommit):
2179         (WebCore::CCThreadProxy::commitOnCCThread):
2180         (WebCore::CCThreadProxy::scheduleDrawTaskOnCCThread):
2181         (WebCore::CCThreadProxy::drawLayersAndPresentOnCCThread):
2182         (WebCore::CCThreadProxy::drawLayersOnCCThread):
2183         (WebCore::CCThreadProxy::updateSchedulerStateOnCCThread):
2184         * platform/graphics/chromium/cc/CCThreadProxy.h:
2185
2186 2011-09-21  Beth Dakin  <bdakin@apple.com>
2187
2188         https://bugs.webkit.org/show_bug.cgi?id=67415
2189         Text drawn via -webkit-background-clip:text is blurry at device scale factors >1.0
2190         -and corresponding-
2191         <rdar://problem/10060379>
2192
2193         Reviewed by Darin Adler.
2194
2195         New helper function RenderBoxModelObject scales the mask image by the 
2196         deviceScaleFactor to get an image of the appropriate resolution. It also scales 
2197         the image's GraphicsContext so that the clip is set up on the same scale. Back in 
2198         paintFillLayerExtended() we still clip the image to the original maskRect to get 
2199         everything scaled back to the appropriate size.
2200         * rendering/RenderBoxModelObject.cpp:
2201         (WebCore::createDeviceScaledImageBuffer):
2202         (WebCore::RenderBoxModelObject::paintFillLayerExtended):
2203
2204         Make the deviceScaleFactor convenience function just a namespace-level function in 
2205         Page rather than a static member or Page.
2206         * page/Page.cpp:
2207         (WebCore::deviceScaleFactor):
2208         * page/Page.h:
2209         
2210         Pre-existing callers of Page::deviceScaleFactor(Frame*) must now use 
2211         WebCore::deviceScaleFactor(Frame*)
2212         * editing/DeleteButtonController.cpp:
2213         (WebCore::DeleteButtonController::createDeletionUI):
2214         * rendering/RenderImage.cpp:
2215         (WebCore::RenderImage::imageSizeForError):
2216         (WebCore::RenderImage::paintReplaced):
2217         * rendering/RenderLayer.cpp:
2218         (WebCore::RenderLayer::drawPlatformResizerImage):
2219
2220 2011-09-21  Tim Horton  <timothy_horton@apple.com>
2221
2222         [CG] ImageBufferData::getData has an invariant comparison in the inner part of a loop which doesn't get optimized out
2223         https://bugs.webkit.org/show_bug.cgi?id=68588
2224         <rdar://problem/10164955>
2225
2226         Reviewed by Simon Fraser.
2227
2228         Factor the unmultiplied check out of the inner loop, resulting in a
2229         speed bump in ImageBufferData::getData.
2230
2231         No new tests, performance improvement.
2232
2233         * platform/graphics/cg/ImageBufferDataCG.cpp:
2234         (WebCore::ImageBufferData::getData):
2235
2236 2011-09-21  Sameer Patil  <mkrp87@motorola.com>
2237
2238         :hover selector fails when hovering over a child select element with size attribute
2239         https://bugs.webkit.org/show_bug.cgi?id=67594
2240
2241         Reviewed by Darin Adler.
2242
2243         Test: fast/css/hover-affects-ancestor.html
2244
2245         This patch addresses the problem of deactivation of the ancestor element :hover rules
2246         when hovered its contained elements.
2247
2248         * rendering/RenderLayer.cpp:
2249         (WebCore::RenderLayer::updateHoverActiveState):
2250
2251 2011-09-21  Sergey Glazunov  <serg.glazunov@gmail.com>
2252
2253         [Chromium] Protect message ports from being deleted in V8MessageEvent::portsAccessorGetter
2254         https://bugs.webkit.org/show_bug.cgi?id=68584
2255
2256         Reviewed by Adam Barth.
2257
2258         Test: fast/dom/message-port-deleted-by-accessor.html
2259
2260         * bindings/v8/custom/V8MessageEventCustom.cpp:
2261         (WebCore::V8MessageEvent::portsAccessorGetter):
2262
2263 2011-09-21  Anders Carlsson  <andersca@apple.com>
2264
2265         Add back protection against the NSView going away while handling mouseDown
2266         https://bugs.webkit.org/show_bug.cgi?id=68585
2267
2268         Reviewed by Darin Adler.
2269
2270         Add calls to RenderWidget::suspendWidgetHierarchyUpdates() and RenderWidget::resumeWidgetHierarchyUpdates(),
2271         as a followup fix to https://bugs.webkit.org/show_bug.cgi?id=68570.
2272
2273         * page/mac/EventHandlerMac.mm:
2274         (WebCore::EventHandler::passMouseDownEventToWidget):
2275
2276 2011-09-21  Julien Chaffraix  <jchaffraix@webkit.org>
2277
2278         Crash in RenderBox::paintMaskImages when GraphicsContext's painting is disabled
2279         https://bugs.webkit.org/show_bug.cgi?id=68133
2280
2281         Reviewed by Darin Adler.
2282
2283         Tests: fast/css/webkit-mask-crash-fieldset-legend.html
2284                fast/css/webkit-mask-crash-figure.html
2285                fast/css/webkit-mask-crash-table.html
2286                fast/css/webkit-mask-crash-td-2.html
2287                fast/css/webkit-mask-crash-td.html
2288
2289         GraphicsContext::getCTM crashes if called with a GraphicsContext that has painting
2290         disabled. RenderBox::paintMaskImages would thus crash if called in this condition.
2291
2292         This change just modifies the different GraphicsContext::getCTM method to bail early
2293         if painting is disabled on the GraphicsContext. The rest of the change is exposing
2294         paintControlTints that exposes this.
2295
2296         * WebCore.exp.in: Added symbols of the newly export window.internals function.
2297
2298         * page/FrameView.cpp:
2299         (WebCore::FrameView::updateControlTints): Split this function in 2 so that
2300         I can expose the internal paintControlTints.
2301
2302         (WebCore::FrameView::paintControlTints):
2303         This is the one exposed to Internals as we want to be testable regardless of
2304         whether the platform supports control tints.
2305
2306         * page/FrameView.h: Added paintControlTints.
2307
2308         * testing/Internals.cpp:
2309         (WebCore::Internals::paintControlTints):
2310         * testing/Internals.h:
2311         * testing/Internals.idl:
2312         Added a way to force a fake painting so that we can easily reproduce the bugs.
2313
2314         * platform/graphics/cairo/GraphicsContextCairo.cpp:
2315         (WebCore::GraphicsContext::getCTM):
2316         * platform/graphics/cg/GraphicsContextCG.cpp:
2317         (WebCore::GraphicsContext::getCTM):
2318         * platform/graphics/qt/GraphicsContextQt.cpp:
2319         (WebCore::GraphicsContext::getCTM):
2320         * platform/graphics/skia/GraphicsContextSkia.cpp:
2321         (WebCore::GraphicsContext::getCTM):
2322         * platform/graphics/wince/GraphicsContextWinCE.cpp:
2323         (WebCore::GraphicsContext::getCTM):
2324         * platform/graphics/wx/GraphicsContextWx.cpp:
2325         (WebCore::GraphicsContext::getCTM):
2326         Fixed all our back-end to exit early if painting is disabled.
2327
2328 2011-09-19  Jer Noble  <jer.noble@apple.com>
2329
2330         Add settings to control the availability of the Web Audio API to WebKit and WebKit2.
2331         https://bugs.webkit.org/show_bug.cgi?id=68382
2332
2333         Reviewed by Darin Adler.
2334
2335         Only create a AudioContext object if the Web Audio feature is runtime-enabled in Settings.
2336
2337         No new tests, as this feature is not yet enabled by default.
2338
2339         * bindings/js/JSDOMWindowCustom.cpp:
2340         (WebCore::JSDOMWindow::webkitAudioContext):
2341
2342 2011-09-21  Anders Carlsson  <andersca@apple.com>
2343
2344         Remove checks for Leopard-only Objective-C APIs
2345         https://bugs.webkit.org/show_bug.cgi?id=68579
2346
2347         Reviewed by Sam Weinig.
2348
2349         We can always assume that OBJC_API_VERSION is at least 2, it's been 2 since Leopard.
2350
2351         * bridge/objc/objc_class.mm:
2352         (JSC::Bindings::ObjcClass::methodsNamed):
2353         (JSC::Bindings::ObjcClass::fieldNamed):
2354         * bridge/objc/objc_instance.mm:
2355         (allocateAutoReleasePool):
2356         * bridge/objc/objc_runtime.mm:
2357         (JSC::Bindings::ObjcField::ObjcField):
2358         * page/mac/EventHandlerMac.mm:
2359
2360 2011-09-21  Anders Carlsson  <andersca@apple.com>
2361
2362         Remove Widget::beforeMouseDown and Widget::afterMouseDown
2363         https://bugs.webkit.org/show_bug.cgi?id=68570
2364
2365         Reviewed by Sam Weinig.
2366
2367         These two member functions were originally added to avoid crashes due to removing NSViews while they were
2368         being tracked by AppKit. Since they were added, we've moved away from NSViews for form controls, and the bugs in
2369         AppKit that lead to crashes have been fixed.
2370
2371         * page/mac/EventHandlerMac.mm:
2372         (WebCore::EventHandler::passMouseDownEventToWidget):
2373         * platform/Widget.h:
2374         * platform/mac/WidgetMac.mm:
2375         (WebCore::Widget::Widget):
2376         (WebCore::Widget::removeFromSuperview):
2377
2378         * rendering/RenderWidget.cpp:
2379         Change widgetHierarchyUpdateSuspendCount to be an unsigned integer instead of a size_t.
2380
2381 2011-09-21  Abhishek Arya  <inferno@chromium.org>
2382
2383         Not use anonymousContainer on beforeChild calculation
2384         and let later code handle it. Fix style update on block-level
2385         anonymous objects.
2386         https://bugs.webkit.org/show_bug.cgi?id=67656
2387
2388         Reviewed by David Hyatt.
2389
2390         Test: fast/table/quote-text-around-iframe.html
2391
2392         * rendering/RenderTable.cpp:
2393         (WebCore::RenderTable::addChild):
2394         * rendering/RenderTableCell.cpp:
2395         (WebCore::RenderTableCell::styleDidChange):
2396         * rendering/RenderTableRow.cpp:
2397         (WebCore::RenderTableRow::addChild):
2398         * rendering/RenderObject.cpp:
2399         (WebCore::RenderObject::propagateStyleToAnonymousChildren):
2400
2401 2011-09-21  David Hyatt  <hyatt@apple.com>
2402
2403         https://bugs.webkit.org/show_bug.cgi?id=68562
2404         
2405         Pagination struts don't update properly when collapsing margin estimates are wrong.
2406         
2407         Refactor the pagination adjustments that happen during block layout to allow for
2408         a 3-pass layout system instead of just a 2-pass layout system. The basic idea is
2409         to come up with an estimate that includes collapsing, clearance and pagination.
2410         
2411         If the estimate only with collapsing and clearance was wrong, then we lay out again
2412         using the correct collapsing margin values and clearance before applying pagination breaks.
2413         
2414         After this second layout, the normal code that runs when unpaginated compares estimates
2415         and lays out a third time to account for adjustments as a result of pagination movement.
2416
2417         Reviewed by Sam Weinig.
2418
2419         Added fast/regions/text-regions-split-small-pagination.html
2420
2421         * rendering/RenderBlock.cpp:
2422         (WebCore::RenderBlock::estimateLogicalTopPosition):
2423         (WebCore::RenderBlock::layoutBlockChild):
2424         (WebCore::RenderBlock::adjustBlockChildForPagination):
2425         * rendering/RenderBlock.h:
2426
2427 2011-09-21  James Robinson  <jamesr@chromium.org>
2428
2429         [chromium] SharedGraphicsContext3D's context should not be destroyed during atexit
2430         https://bugs.webkit.org/show_bug.cgi?id=68558
2431
2432         Reviewed by Stephen White.
2433
2434         The SharedGraphicsContext3D's internal context is lazily created and then leaked intentionally, but since the
2435         last ref is in a function-static RefPtr<> it ends up being destroyed at process exit time.  This is bad, since
2436         by the time we get this far in process shutdown we can't actually cleanly run the destruction logic and we
2437         crash.  Since we are explicitly leaking this for the lifetime of the process there's no point in keeping it in a
2438         RefPtr<>
2439
2440         * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
2441         (WebCore::SharedGraphicsContext3D::get):
2442
2443 2011-09-21  Sergey Glazunov  <serg.glazunov@gmail.com>
2444
2445         [Chromium] Protect the Frame in V8HTMLDocument::openCallback
2446         https://bugs.webkit.org/show_bug.cgi?id=68555
2447
2448         Reviewed by Nate Chapin.
2449
2450         Test: fast/dom/frame-deleted-in-document-open.html
2451
2452         * bindings/v8/custom/V8HTMLDocumentCustom.cpp:
2453         (WebCore::V8HTMLDocument::openCallback):
2454
2455 2011-09-21  Adam Klein  <adamk@chromium.org>
2456
2457         Clean up CSS Counter code
2458         https://bugs.webkit.org/show_bug.cgi?id=68492
2459
2460         Reviewed by Tony Chang.
2461
2462         Several cleanups/fixes:
2463         - Make Counter::listStyle() return the actual list style string,
2464           rather than empty string.
2465         - Handle a specified list style of "none" correctly when generating
2466           cssText and in Counter::listStyle().
2467         - Use StringBuilder when generating cssText.
2468
2469         Test: fast/css/counters/getCounterValue.html
2470
2471         * css/CSSParser.cpp:
2472         (WebCore::CSSParser::parseCounterContent):
2473         Simplify processing (moving conversion to CSSStyleSelector),
2474         pass a CSS_IDENT as the listStyle to Counter::create.
2475         * css/CSSPrimitiveValue.cpp:
2476         (WebCore::CSSPrimitiveValue::cssText):
2477         Use StringBuilder.
2478         * css/CSSStyleSelector.cpp:
2479         (WebCore::CSSStyleSelector::applyProperty):
2480         Convert from a CSS_IDENT to an EListStyleType.
2481         * css/Counter.h:
2482         (WebCore::Counter::listStyleIdent):
2483         Renamed from listStyleNumber to match its new functionality.
2484
2485 2011-09-21  Chris Marrin  <cmarrin@apple.com>
2486
2487         Check in WebCore.vcproj file unchanged but written like MSDev likes it
2488
2489         Unreviewed.
2490
2491         * WebCode.vcproj/WebCore.vcproj:
2492
2493 2011-09-21  Stephen White  <senorblanco@chromium.org>
2494
2495         [chromium] Optimize ImageBuffer constructor when accelerated
2496         https://bugs.webkit.org/show_bug.cgi?id=68501
2497
2498         If the accelerated rendering mode is passed in to ImageBuffer, instead
2499         of creating a bitmap PlatformCanvas and subsequently replacing its
2500         device with an SkGpuDevice, create an SkCanvas and SkGpuDevice first,
2501         and fall back to raster creation only failure.  This saves on system
2502         RAM for the backing store (and possibly GDI resources).
2503
2504         Reviewed by James Robinson.
2505
2506         Covered by existing tests.
2507
2508         * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
2509         (WebCore::SharedGraphicsContext3D::get):
2510         * platform/graphics/gpu/SharedGraphicsContext3D.h:
2511         Rename "SharedGraphicsContext3D::create()" to "get()" to more
2512         accurately reflect its function.
2513         * platform/graphics/skia/ImageBufferSkia.cpp:
2514         (WebCore::createAcceleratedCanvas):
2515         Refactor creation of accelerated ImageBuffer.
2516         (WebCore::ImageBuffer::ImageBuffer):
2517         Attempt creation of accelerated ImageBuffer first, and only fall back
2518         to bitmap-backed canvas creation if it fails.
2519
2520 2011-09-21  Dan Bernstein  <mitz@apple.com>
2521
2522         WebCore part of: Prevent the WebKit frameworks from defining inappropriately-named Objective-C classes
2523         https://bugs.webkit.org/show_bug.cgi?id=68451
2524
2525         Reviewed by Darin Adler.
2526
2527         * WebCore.xcodeproj/project.pbxproj: Added a script build phase that invokes
2528         check-for-inappropriate-objc-class-names, allowing only class names prefixed with "DOM" or "Web".
2529
2530 2011-09-21  Dan Bernstein  <mitz@apple.com>
2531
2532         <rdar://problem/9768483> REGRESSION: Crash in RenderBlock::removeFloatingObjectsBelow()
2533         https://bugs.webkit.org/show_bug.cgi?id=68550
2534
2535         Reviewed by Darin Adler.
2536
2537         Test: fast/multicol/null-lastFloat-in-removeFloatingObjectsBelow.html
2538
2539         * rendering/RenderBlock.cpp:
2540         (WebCore::RenderBlock::removeFloatingObjectsBelow): Break out of the while() loop when the
2541         floating object set is empty, which can happen if there were no floats on previous lines
2542         (in which case, lastFloat is 0).
2543
2544 2011-09-21  ChangSeok Oh  <shivamidow@gmail.com>
2545
2546         [GTK] Fix build break when enabling webgl on r95593
2547         https://bugs.webkit.org/show_bug.cgi?id=68502
2548
2549         Reviewed by Martin Robinson.
2550
2551         Add PassOwnPtr.h to GC3DPrivate.h and remove useless one from GC3DGtk.cpp & GC3DPrivate.cpp
2552
2553         No tests required.
2554
2555         * platform/graphics/gtk/GraphicsContext3DGtk.cpp:
2556         * platform/graphics/gtk/GraphicsContext3DPrivate.cpp:
2557         * platform/graphics/gtk/GraphicsContext3DPrivate.h:
2558
2559 2011-09-21  Vsevolod Vlasov  <vsevik@chromium.org>
2560
2561         Web Inspector: clear resource agent resource cache upon resource agent's disable.
2562         https://bugs.webkit.org/show_bug.cgi?id=67995
2563
2564         Reviewed by Pavel Feldman.
2565
2566         Test: http/tests/inspector/network/network-disabling-check-no-memory-leak.html
2567
2568         * inspector/InspectorResourceAgent.cpp:
2569         (WebCore::InspectorResourceAgent::disable):
2570
2571 2011-09-21  David Hyatt  <hyatt@apple.com>
2572
2573         https://bugs.webkit.org/show_bug.cgi?id=68543
2574         
2575         Make sure that when regions change dimensions we recompute pagination slices.
2576
2577         Reviewed by Simon Fraser.
2578
2579         Added new tests in fast/regions.
2580
2581         * rendering/LayoutState.cpp:
2582         (WebCore::LayoutState::LayoutState):
2583         * rendering/LayoutState.h:
2584         * rendering/RenderFlowThread.cpp:
2585         (WebCore::RenderFlowThread::layout):
2586         (WebCore::RenderFlowThread::renderRegionForLine):
2587         (WebCore::RenderFlowThread::regionLogicalWidthForLine):
2588         * rendering/RenderRegion.cpp:
2589         (WebCore::RenderRegion::layout):
2590         * rendering/RenderView.cpp:
2591         (WebCore::RenderView::pushLayoutState):
2592         * rendering/RenderView.h:
2593         (WebCore::LayoutStateMaintainer::LayoutStateMaintainer):
2594         (WebCore::LayoutStateMaintainer::push):
2595
2596 2011-09-21  Xianzhu Wang  <wangxianzhu@chromium.org>
2597
2598         Ensure TestWebKitAPI works on mac, win, chromium-mac and chromium-linux
2599         https://bugs.webkit.org/show_bug.cgi?id=68206
2600
2601         Reviewed by Tony Chang.
2602
2603         Added two new wtf headers into ForwardingHeaders/wtf to make
2604         #include <wtf/...h> cross-platform.
2605         No new tests needed.
2606
2607         * ForwardingHeaders/wtf/MetaAllocator.h: Added.
2608         * ForwardingHeaders/wtf/RedBlackTree.h: Added.
2609
2610 2011-09-21  David Delaune  <david.delaune@googlemail.com>
2611
2612         [WinCairo] IconDatabase::defaultIcon always fails for non-CAN_THEME_URL_ICON builds.
2613         https://bugs.webkit.org/show_bug.cgi?id=67469
2614
2615         Reviewed by Brent Fulgham.
2616
2617         No new functionality added in this change.
2618
2619         * loader/icon/IconDatabase.cpp: defining CAN_THEME_URL_ICON for the WIN_CAIRO
2620
2621 2011-09-20  Ryosuke Niwa  <rniwa@webkit.org>
2622
2623         Span element gets produced using backspace/delete to merge header with paragraph
2624         https://bugs.webkit.org/show_bug.cgi?id=68413
2625
2626         Reviewed by Darin Adler.
2627
2628         Add p element to the list of elements to retain appearance. Also modified removeStyleFromNode
2629         (and renamed to removeStyleFromRules) not to remove inline style declarations because
2630         inline styles need to stay on copy.
2631
2632         Test: editing/deleting/merge-paragraph-from-p-with-style.html
2633
2634         * editing/DeleteSelectionCommand.cpp:
2635         (WebCore::DeleteSelectionCommand::saveTypingStyleState):
2636         * editing/EditingStyle.cpp:
2637         (WebCore::EditingStyle::removeStyleFromRules): Renamed from removeStyleFromNode.
2638         * editing/EditingStyle.h:
2639         * editing/markup.cpp:
2640         (WebCore::isBlockNodeToRetainAppearance):
2641         (WebCore::StyledMarkupAccumulator::serializeNodes):
2642
2643 2011-09-21  Alice Boxhall  <aboxhall@chromium.org>
2644
2645         Report AXValueChanged when value changes in element with role=textbox.
2646         https://bugs.webkit.org/show_bug.cgi?id=68201
2647
2648         Reviewed by Chris Fleizach.
2649
2650         Test: platform/mac/accessibility/textbox-role-reports-notifications.html
2651
2652         * accessibility/AccessibilityObject.cpp:
2653         (WebCore::AccessibilityObject::isARIATextControl):
2654         * accessibility/AccessibilityObject.h:
2655         * accessibility/AccessibilityRenderObject.cpp:
2656         (WebCore::AccessibilityRenderObject::contentChanged):
2657         (WebCore::AccessibilityRenderObject::childrenChanged):
2658
2659 2011-09-21  Pavel Feldman  <pfeldman@google.com>
2660
2661         Web Inspector: introduce Page.enable and Page.disable
2662         https://bugs.webkit.org/show_bug.cgi?id=68530
2663
2664         Otherwise protocol is violating the contract of not sending
2665         notifications by default.
2666
2667         Reviewed by Yury Semikhatsky.
2668
2669         * inspector/Inspector.json:
2670
2671 2011-09-21  Pavel Feldman  <pfeldman@google.com>
2672
2673         Web Inspector: add minimal error handling to the DOM breakpoints.
2674         https://bugs.webkit.org/show_bug.cgi?id=68537
2675
2676         Reviewed by Yury Semikhatsky.
2677
2678         * inspector/InspectorDOMAgent.h:
2679         * inspector/InspectorDOMDebuggerAgent.cpp:
2680         (WebCore::domTypeForName):
2681         (WebCore::InspectorDOMDebuggerAgent::setDOMBreakpoint):
2682         (WebCore::InspectorDOMDebuggerAgent::removeDOMBreakpoint):
2683
2684 2011-09-21  Ilya Tikhonovsky  <loislo@chromium.org>
2685
2686         Web Inspector: make WebInspector a bit more timeline friendly.
2687         https://bugs.webkit.org/show_bug.cgi?id=68534
2688
2689         I found that the maximum captured stack frame depth tracked by timeline is not
2690         very convenient because the average depth of call stack considerably more than five.
2691         Another useful trick is console.timeStamp for all backend calls.
2692
2693         Reviewed by Yury Semikhatsky.
2694
2695         * inspector/CodeGeneratorInspector.pm:
2696         * inspector/front-end/TimelinePanel.js:
2697         (WebInspector.TimelinePanel.prototype._toggleTimelineButtonClicked):
2698
2699 2011-09-21  Jesus Sanchez-Palencia  <jesus.palencia@openbossa.org>
2700
2701         [Qt][WK2] Implement Download support in WebProcess
2702         https://bugs.webkit.org/show_bug.cgi?id=68153
2703
2704         Reviewed by Andreas Kling.
2705
2706         Refactored QNetworkReplyHandler::finish() in order to add
2707         and use the static function QNetworkReplyHandler::errorForReply().
2708         This will be used by our Download implementation in WebKit2 (WebProcess)
2709         when handling ResourceError.
2710
2711         * platform/network/qt/QNetworkReplyHandler.cpp:
2712         (WebCore::QNetworkReplyHandler::finish):
2713         (WebCore::QNetworkReplyHandler::errorForReply):
2714         * platform/network/qt/QNetworkReplyHandler.h:
2715         * platform/network/qt/ResourceRequest.h:
2716
2717 2011-09-21  Pavel Feldman  <pfeldman@google.com>
2718
2719         Web Inspector: paint box model colors in Metrics sidebar at all times, do not draw box outlines.
2720         https://bugs.webkit.org/show_bug.cgi?id=68240
2721
2722         Today we paint backgrounds in Metrics box model on hover only - should be painted at all
2723         times for the reference. Outlining boxes is highlight is wrong since outlines are outside
2724         the corresponding box regions. We've seen few reports on that + Firebug does not do borders
2725         for that reason.
2726
2727         Reviewed by Yury Semikhatsky.
2728
2729         * inspector/DOMNodeHighlighter.cpp:
2730         * inspector/DOMNodeHighlighter.h:
2731         * inspector/Inspector.json:
2732         * inspector/InspectorDOMAgent.cpp:
2733         (WebCore::InspectorDOMAgent::setHighlightDataFromConfig):
2734         * inspector/front-end/Color.js:
2735         * inspector/front-end/MetricsSidebarPane.js:
2736         (WebInspector.MetricsSidebarPane.prototype._highlightDOMNode):
2737         (WebInspector.MetricsSidebarPane.prototype._updateMetrics):
2738         * inspector/front-end/inspector.css:
2739         (.metrics .label):
2740         * inspector/front-end/inspector.js:
2741         (WebInspector.buildHighlightConfig):
2742
2743 2011-09-21  Andreas Kling  <kling@webkit.org>
2744
2745         Protect against misuse of EventListenerIterator.
2746         https://bugs.webkit.org/show_bug.cgi?id=68364
2747
2748         Reviewed by Darin Adler.
2749
2750         In debug mode, keep track of the number of active EventListenerIterators
2751         on an EventListenerMap, and assert that there are no iterators when the
2752         map is being modified.
2753
2754         * dom/EventListenerMap.cpp:
2755         (WebCore::EventListenerMap::EventListenerMap):
2756         (WebCore::EventListenerMap::clear):
2757         (WebCore::EventListenerMap::add):
2758         (WebCore::EventListenerMap::remove):
2759         (WebCore::EventListenerMap::find):
2760         (WebCore::EventListenerMap::removeFirstEventListenerCreatedFromMarkup):
2761         (WebCore::EventListenerMap::copyEventListenersNotCreatedFromMarkupToTarget):
2762         (WebCore::EventListenerIterator::EventListenerIterator):
2763         (WebCore::EventListenerIterator::~EventListenerIterator):
2764         * dom/EventListenerMap.h:
2765
2766 2011-09-21  Pavel Feldman  <pfeldman@google.com>
2767
2768         Web Inspector: minor fixes in the DOM domain of the protocol.
2769         https://bugs.webkit.org/show_bug.cgi?id=68517
2770
2771         Reviewed by Yury Semikhatsky.
2772
2773         * inspector/Inspector.json:
2774         * inspector/InspectorDOMAgent.cpp:
2775         (WebCore::InspectorDOMAgent::setAttributesAsText):
2776         * inspector/InspectorDOMAgent.h:
2777         * inspector/front-end/DOMAgent.js:
2778         (WebInspector.DOMNode.prototype.setAttribute):
2779
2780 2011-09-16  Pavel Feldman  <pfeldman@google.com>
2781
2782         Web Inspector: limit the use of "Resource" term in the protocol.
2783         https://bugs.webkit.org/show_bug.cgi?id=68250
2784
2785         Reviewed by Yury Semikhatsky.
2786
2787         * inspector/Inspector.json:
2788         * inspector/InspectorResourceAgent.cpp:
2789         (WebCore::InspectorResourceAgent::markResourceAsCached):
2790         (WebCore::InspectorResourceAgent::didLoadResourceFromMemoryCache):
2791         (WebCore::InspectorResourceAgent::setExtraHTTPHeaders):
2792         (WebCore::InspectorResourceAgent::getResponseBody):
2793         * inspector/InspectorResourceAgent.h:
2794         * inspector/front-end/ExtensionServer.js:
2795         (WebInspector.ExtensionServer.prototype._onAddRequestHeaders):
2796         * inspector/front-end/NetworkManager.js:
2797         (WebInspector.NetworkManager.prototype.requestContent):
2798         (WebInspector.NetworkDispatcher.prototype.requestServedFromCache):
2799         (WebInspector.NetworkDispatcher.prototype.requestServedFromMemoryCache):
2800
2801 2011-09-21  Sheriff Bot  <webkit.review.bot@gmail.com>
2802
2803         Unreviewed, rolling out r95608.
2804         http://trac.webkit.org/changeset/95608
2805         https://bugs.webkit.org/show_bug.cgi?id=68521
2806
2807         breaks GTK and Windows builds. Please check EWS next time.
2808         (Requested by philn-tp on #webkit).
2809
2810         * html/HTMLBodyElement.cpp:
2811         (WebCore::adjustForZoom):
2812         (WebCore::HTMLBodyElement::setScrollLeft):
2813         (WebCore::HTMLBodyElement::setScrollTop):
2814         * loader/HistoryController.cpp:
2815         (WebCore::HistoryController::saveScrollPositionAndViewStateToItem):
2816         * page/DOMWindow.cpp:
2817         (WebCore::DOMWindow::scrollX):
2818         (WebCore::DOMWindow::scrollY):
2819         (WebCore::DOMWindow::scrollTo):
2820         * page/Frame.cpp:
2821         (WebCore::Frame::pageScaleFactor):
2822         * page/Frame.h:
2823         * page/FrameView.cpp:
2824         (WebCore::FrameView::applyOverflowToViewport):
2825         (WebCore::FrameView::scrollXForFixedPosition):
2826         (WebCore::FrameView::scrollYForFixedPosition):
2827
2828 2011-09-21  Pavel Feldman  <pfeldman@google.com>
2829
2830         Web Inspector: console panel's scroller is not properly aligned.
2831         https://bugs.webkit.org/show_bug.cgi?id=68448
2832
2833         Reviewed by Yury Semikhatsky.
2834
2835         * inspector/front-end/inspector.css:
2836         (#console-view):
2837         (#console-messages):
2838         (#drawer #console-messages):
2839
2840 2011-09-20  Alpha Lam  <hclam@chromium.org>
2841
2842         https://bugs.webkit.org/show_bug.cgi?id=68081
2843         Fix scroll in page scaling mode.
2844
2845         Reviewed by Simon Fraser.
2846
2847         The following things are done in this patch:
2848         1. Rename Frame::pageScaleFactor() to Frame::frameScaleFactor() to better
2849            reflect its purpose.
2850         2. Frame::frameScaleFactor() returns the scale factor of this frame with
2851            respect to the container. So for the main frame it'll return the scale
2852            factor of the page, inner frames will return 1.0
2853         3. scrollBy(), scrollX() and scrollY() to take into account of the frame
2854            scale factor, causing incorrect coordinates reported to Javascript.
2855
2856         Tests: fast/events/scale-and-scroll-body.html
2857                fast/events/scale-and-scroll-iframe-body.html
2858                fast/events/scale-and-scroll-iframe-window.html
2859                fast/events/scale-and-scroll-window.html
2860
2861         * html/HTMLBodyElement.cpp:
2862         (WebCore::adjustForZoom):
2863         (WebCore::HTMLBodyElement::setScrollLeft):
2864         (WebCore::HTMLBodyElement::setScrollTop):
2865         * loader/HistoryController.cpp:
2866         (WebCore::HistoryController::saveScrollPositionAndViewStateToItem):
2867         * page/DOMWindow.cpp:
2868         (WebCore::DOMWindow::scrollX):
2869         (WebCore::DOMWindow::scrollY):
2870         (WebCore::DOMWindow::scrollTo):
2871         * page/Frame.cpp:
2872         (WebCore::Frame::frameScaleFactor): Return page's scale factor if this is
2873                                             main frame, otherwise 1.0
2874         * page/Frame.h:
2875         * page/FrameView.cpp:
2876         (WebCore::FrameView::applyOverflowToViewport):
2877         (WebCore::FrameView::scrollXForFixedPosition):
2878         (WebCore::FrameView::scrollYForFixedPosition):
2879
2880 2011-09-21  Andras Becsi  <andras.becsi@nokia.com>
2881
2882         [Qt] Remove Qt specific code from css/SelectorChecker.cpp
2883         https://bugs.webkit.org/show_bug.cgi?id=67702
2884
2885         Reviewed by Csaba Osztrogonác.
2886
2887         No new tests needed.
2888
2889         * css/SelectorChecker.cpp: Move Qt-specific code to the Qt-specific WebPlatformStrategies.
2890         (WebCore::SelectorChecker::determineLinkStateSlowCase):
2891         * platform/VisitedLinkStrategy.h:
2892
2893 2011-09-16  MORITA Hajime  <morrita@google.com>
2894
2895         Style changes on forwarded shadow children should trigger shadow renderer reconstruction.
2896         https://bugs.webkit.org/show_bug.cgi?id=68228
2897
2898         Reviewed by Dimitri Glazkov.
2899
2900         Currently style changes on forwarded shadow child triggers
2901         Node::reattach() only for the forwarded node. But it should
2902         invalidate whole renderers on the shadow tree because
2903         ShadowContentElement expects its inclusions to be attached and to
2904         create renderers in the inclusion order. But single node
2905         reattach() violates the expectation and possibly creates
2906         inconsistent render tree.
2907
2908         This change makes NodeRenderingContext to go
2909         AttachContentForwarded, where the ShadowContentElement::attach()
2910         happens, only during ShadowRoot::attach(), not for style-change
2911         triggered Node::attach() on the forwarded nodes.
2912
2913         Note that the altering phase AttachContentLight doesn't create
2914         renderers for the forwarded nodes. Instead of that, it possibly
2915         triggers shadow subtree reconstruction on
2916         NodeRenderingContext::hostChildrenChanged().
2917
2918         No new tests. This is a defensive change. There is no visible
2919         difference at this time.
2920
2921         * dom/NodeRenderingContext.cpp:
2922         (WebCore::NodeRenderingContext::NodeRenderingContext):
2923         * dom/ShadowRoot.cpp:
2924         (WebCore::ShadowRoot::isInclusionSelectorActive):
2925         * dom/ShadowRoot.h:
2926
2927 2011-09-20  MORITA Hajime  <morrita@google.com>
2928
2929         <meter> doesn't update rendering when its value is changed.
2930         https://bugs.webkit.org/show_bug.cgi?id=67614
2931
2932         Reviewed by Dimitri Glazkov.
2933
2934         It lacks repaint() when the value is changed. 
2935         
2936         For non-native appearance it works because the indicator is
2937         implemented in shadow DOM, for native appearance, repainting should be
2938         handled explicitly.
2939         
2940         Test: fast/dom/HTMLMeterElement/meter-element-repaint-on-update-value.html
2941
2942         * html/HTMLMeterElement.cpp:
2943         (WebCore::HTMLMeterElement::didElementStateChange):
2944         * rendering/RenderMeter.cpp:
2945         (WebCore::RenderMeter::updateFromElement):
2946         * rendering/RenderMeter.h:
2947         * rendering/RenderProgress.cpp:
2948         (WebCore::RenderProgress::updateAnimationState):
2949
2950 2011-09-20  Kent Tamura  <tkent@chromium.org>
2951
2952         Move RenderObject::markContainingBlocksForLayout() to RenderObject.cpp.
2953         https://bugs.webkit.org/show_bug.cgi?id=67989
2954
2955         Reviewed by Ryosuke Niwa.
2956
2957         No new tests because of no behavior change.
2958
2959         * rendering/RenderObject.cpp:
2960         (WebCore::objectIsRelayoutBoundary): Moved from RenderObject.h.
2961         (WebCore::RenderObject::markContainingBlocksForLayout): Moved from RenderObject.h
2962         * rendering/RenderObject.h:
2963
2964 2011-09-20  Rachel Blum  <groby@chromium.org>
2965
2966         Support for multiple <link rel="icon"> favicon elements.
2967         https://bugs.webkit.org/show_bug.cgi?id=65564
2968
2969         Reviewed by Darin Fisher.
2970
2971         No tests - purely an API change. (And API is not exposed to LayoutTests)
2972
2973         * dom/Document.cpp:
2974         (WebCore::Document::iconURLs):
2975         (WebCore::Document::addIconURL):
2976         * dom/Document.h:
2977         * dom/IconURL.cpp:
2978         (WebCore::toIconIndex):
2979         * dom/IconURL.h:
2980         (WebCore::IconURL::IconURL):
2981         * html/HTMLLinkElement.cpp:
2982         (WebCore::HTMLLinkElement::process):
2983         * loader/LinkLoader.cpp:
2984         (WebCore::LinkLoader::loadLink):
2985         * loader/LinkLoader.h:
2986         * loader/icon/IconController.cpp:
2987         (WebCore::IconController::urlsForTypes):
2988         (WebCore::IconController::appendToIconURLs):
2989         (WebCore::IconController::defaultURL):
2990
2991 2011-09-20  Ojan Vafai  <ojan@chromium.org>
2992
2993         [css3-flexbox] cleanup padding width calculations
2994         https://bugs.webkit.org/show_bug.cgi?id=68490
2995
2996         Reviewed by Tony Chang.
2997
2998         No new tests. Existing tests cover the refactor.
2999
3000         * rendering/RenderFlexibleBox.cpp:
3001         (WebCore::RenderFlexibleBox::logicalBorderAndPaddingWidthForChild):
3002         (WebCore::RenderFlexibleBox::logicalScrollbarHeightForChild):
3003         (WebCore::RenderFlexibleBox::preferredLogicalContentWidthForFlexItem):
3004         (WebCore::RenderFlexibleBox::computePreferredLogicalWidth):
3005         (WebCore::RenderFlexibleBox::layoutAndPlaceChildrenInlineDirection):
3006         * rendering/RenderFlexibleBox.h:
3007
3008 2011-09-19  Jer Noble  <jer.noble@apple.com>
3009
3010         Fix clang compile errors in Web Audio
3011         https://bugs.webkit.org/show_bug.cgi?id=68384
3012
3013         Reviewed by David Levin.
3014
3015         No new tests; no net change in functionality.
3016
3017         * platform/graphics/MediaPlayer.h: Forward declare (instead of including directly)
3018             AudioSourceProvider.
3019         * webaudio/AudioChannelMerger.cpp:
3020         (WebCore::AudioChannelMerger::checkNumberOfChannelsForInput): Remove unused parameter name.
3021
3022 2011-09-20  John Gregg  <johnnyg@google.com>
3023
3024         Directory Upload: parent path can truncate first char of the correct path
3025         https://bugs.webkit.org/show_bug.cgi?id=66695
3026
3027         In some cases, if the parent path we compute ends with a separator
3028         character like '/' or 'C:\', by adding one in an attempt to grab the
3029         subsequent separator we actually grab a character of the real path,
3030         which is incorrect.
3031
3032         Reviewed by Darin Fisher.
3033
3034         * html/FileInputType.cpp:
3035         (WebCore::FileInputType::setFileList):
3036
3037 2011-09-20  Jochen Eisinger  <jochen@chromium.org>
3038
3039         Invoke CachedResourceLoader::canRequest for all URLs in a redirect chain
3040         https://bugs.webkit.org/show_bug.cgi?id=68279
3041
3042         Reviewed by Adam Barth.
3043
3044         * loader/cache/CachedResourceLoader.h:
3045         * loader/cache/CachedResourceRequest.cpp:
3046         (WebCore::CachedResourceRequest::willSendRequest):
3047
3048 2011-09-18  Ojan Vafai  <ojan@chromium.org>
3049
3050         change RenderFlexibleBox to act on logical coordinates
3051         https://bugs.webkit.org/show_bug.cgi?id=68129
3052
3053         Reviewed by David Hyatt.
3054
3055         This makes RenderFlexibleBox respect direction and writing-mode.
3056         We now properly support the default flex-flow value of "row".
3057
3058         Test: css3/flexbox/writing-modes.html
3059
3060         * rendering/RenderBlock.cpp:
3061         (WebCore::RenderBlock::setLogicalLocationForChild):
3062         * rendering/RenderBlock.h:
3063         * rendering/RenderFlexibleBox.cpp:
3064         (WebCore::RenderFlexibleBox::layoutBlock):
3065         (WebCore::RenderFlexibleBox::logicalBorderWidthForChild):
3066         (WebCore::RenderFlexibleBox::logicalPaddingWidthForChild):
3067         (WebCore::RenderFlexibleBox::logicalScrollbarHeightForChild):
3068         (WebCore::RenderFlexibleBox::marginStartStyleForChild):
3069         (WebCore::RenderFlexibleBox::marginEndStyleForChild):
3070         (WebCore::RenderFlexibleBox::preferredLogicalContentWidthForFlexItem):
3071         (WebCore::RenderFlexibleBox::layoutInlineDirection):
3072         (WebCore::RenderFlexibleBox::logicalPositiveFlexForChild):
3073         (WebCore::RenderFlexibleBox::logicalNegativeFlexForChild):
3074         (WebCore::RenderFlexibleBox::computePreferredLogicalWidth):
3075         (WebCore::RenderFlexibleBox::runFreeSpaceAllocationAlgorithmInlineDirection):
3076         (WebCore::RenderFlexibleBox::setLogicalOverrideSize):
3077         (WebCore::RenderFlexibleBox::layoutAndPlaceChildrenInlineDirection):
3078         * rendering/RenderFlexibleBox.h:
3079
3080 2011-09-20  Marshall Greenblatt  <marshall@chromium.org>
3081
3082         Use DEFINE_STATIC_LOCAL to intentionally leak the static RefCountedHFONT object returned from
3083         FontPlatformData::hashTableDeletedFontValue() to avoid global destructor ordering problems.
3084         https://bugs.webkit.org/show_bug.cgi?id=67906
3085
3086         Reviewed by Adam Barth.
3087
3088         * platform/graphics/chromium/FontPlatformDataChromiumWin.cpp:
3089
3090 2011-09-20  Ryosuke Niwa  <rniwa@webkit.org>
3091
3092         Hit testing on margins of body and head elements doesn't recur
3093         https://bugs.webkit.org/show_bug.cgi?id=40753
3094
3095         Reviewed by Darin Adler.
3096
3097         The bug was caused by positionForPointRespectingEditingBoundaries's comparing the editability
3098         of head/body and html elements when hit testing was done inside margins of head and body elements.
3099
3100         Fixed the bug by special-casing html element since margins of head and body elements are special.
3101
3102         Tests: editing/selection/click-on-body-margin.html
3103                editing/selection/click-on-head-margin.html
3104
3105         * rendering/RenderBlock.cpp:
3106         (WebCore::positionForPointRespectingEditingBoundaries):
3107
3108 2011-09-20  David Hyatt  <hyatt@apple.com>
3109
3110         https://bugs.webkit.org/show_bug.cgi?id=68480
3111         
3112         De-virtualize containingBlock() and make RenderView return 0 instead
3113         of itself to make the construction of normal loops that terminate via
3114         a null-check possible.
3115
3116         Fix the only two places in the tree that needed null checks.
3117
3118         Eliminating RenderTableCell::containingBlock() is fine since the base class
3119         does the same thing anyway.
3120
3121         Reviewed by Simon Fraser.
3122
3123         * editing/VisiblePosition.cpp:
3124         (WebCore::VisiblePosition::lineDirectionPointForBlockDirectionNavigation):
3125         * rendering/RenderObject.cpp:
3126         (WebCore::RenderObject::containingBlock):
3127         * rendering/RenderObject.h:
3128         * rendering/RenderTableCell.cpp:
3129         * rendering/RenderTableCell.h:
3130         * rendering/RenderTreeAsText.cpp:
3131         (WebCore::RenderTreeAsText::writeRenderObject):
3132         * rendering/RenderView.cpp:
3133         * rendering/RenderView.h:
3134
3135 2011-09-20  Anders Carlsson  <andersca@apple.com>
3136
3137         Remove ScrollView::platformContentsSize
3138         https://bugs.webkit.org/show_bug.cgi?id=68188
3139
3140         Reviewed by Darin Adler.
3141
3142         Since ScrollView keeps track of the contents size in ScrollView::m_contentsSize, we never
3143         have to ask the underlying platform scroll view for contents size since it should always just
3144         be equal to m_contentsSize.
3145
3146         * platform/ScrollView.cpp:
3147         (WebCore::ScrollView::contentsSize):
3148         (WebCore::ScrollView::wheelEvent):
3149         * platform/ScrollView.h:
3150         * platform/mac/ScrollViewMac.mm:
3151         * platform/wx/ScrollViewWx.cpp:
3152
3153 2011-09-20  Alexis Menard  <alexis.menard@openbossa.org>
3154
3155         [Qt] [WK2] Implement a persistent cookie storage.
3156         https://bugs.webkit.org/show_bug.cgi?id=65309
3157
3158         Reviewed by Chang Shu.
3159
3160         Implement a cookie storage for the Qt port on WebKit2.
3161         The implementation is using a SQLite database to store the cookies
3162         and restore them. It uses a static object as CookieJar is not an
3163         object but a set of global functions. The actual saving/restoring is on
3164         the WebProcess side where our network stack lives.
3165
3166         Existing tests cover the new implementation. Unfortunately there is one
3167         case that we can't easily simulate : login in a website, make sure that the webprocess
3168         is not running and then going back to this website and see that we are logged.
3169
3170         * WebCore.pri:
3171         * WebCore.pro:
3172         * platform/qt/CookieJarQt.cpp:
3173         (WebCore::getHostnamesWithCookies):
3174         (WebCore::deleteCookiesForHostname):
3175         (WebCore::deleteAllCookies):
3176         (WebCore::SharedCookieJarQt::shared):
3177         (WebCore::SharedCookieJarQt::create):
3178         (WebCore::SharedCookieJarQt::destroy):
3179         (WebCore::SharedCookieJarQt::getHostnamesWithCookies):
3180         (WebCore::SharedCookieJarQt::deleteCookiesForHostname):
3181         (WebCore::SharedCookieJarQt::deleteAllCookies):
3182         (WebCore::SharedCookieJarQt::SharedCookieJarQt):
3183         (WebCore::SharedCookieJarQt::~SharedCookieJarQt):
3184         (WebCore::SharedCookieJarQt::setCookiesFromUrl):
3185         (WebCore::SharedCookieJarQt::ensureDatabaseTable):
3186         (WebCore::SharedCookieJarQt::loadCookies):
3187         * platform/qt/CookieJarQt.h: Added.
3188
3189 2011-09-20  David Hyatt  <hyatt@apple.com>
3190
3191         https://bugs.webkit.org/show_bug.cgi?id=68314
3192
3193         Make sure that the containing block loop when clipping to border-radius
3194         terminates by checking if you hit the RenderView. Null checking isn't sufficient
3195         for stupid historical reasons that should be fixed (i.e., the RenderView returns itself
3196         as its own containing block, even though this should just be changed).
3197
3198         Reviewed by Simon Fraser and Darin Adler.
3199
3200         Added new test in fast/clip.
3201
3202         * rendering/RenderLayer.cpp:
3203         (WebCore::inContainingBlockChain):
3204
3205 2011-09-20  Dan Bernstein  <mitz@apple.com>
3206
3207         MathML renderers do not override RenderObject::renderName()
3208         https://bugs.webkit.org/show_bug.cgi?id=68461
3209
3210         Reviewed by Darin Adler.
3211
3212         Added implementations of renderName() in MathML RenderObject subclasses.
3213
3214         * rendering/mathml/RenderMathMLBlock.h:
3215         (WebCore::RenderMathMLBlock::renderName):
3216         * rendering/mathml/RenderMathMLFenced.h:
3217         (WebCore::RenderMathMLFenced::renderName):
3218         * rendering/mathml/RenderMathMLFraction.h:
3219         (WebCore::RenderMathMLFraction::renderName):
3220         * rendering/mathml/RenderMathMLMath.h:
3221         (WebCore::RenderMathMLMath::renderName):
3222         * rendering/mathml/RenderMathMLOperator.h:
3223         (WebCore::RenderMathMLOperator::renderName):
3224         * rendering/mathml/RenderMathMLRoot.h:
3225         (WebCore::RenderMathMLRoot::renderName):
3226         * rendering/mathml/RenderMathMLRow.h:
3227         (WebCore::RenderMathMLRow::renderName):
3228         * rendering/mathml/RenderMathMLSquareRoot.h:
3229         (WebCore::RenderMathMLSquareRoot::renderName):
3230         * rendering/mathml/RenderMathMLSubSup.h:
3231         (WebCore::RenderMathMLSubSup::renderName):
3232         * rendering/mathml/RenderMathMLUnderOver.h:
3233         (WebCore::RenderMathMLUnderOver::renderName):
3234
3235 2011-09-20  ChangSeok Oh  <shivamidow@gmail.com>
3236
3237         [GTK] requestAnimationFrame support for gtk port
3238         https://bugs.webkit.org/show_bug.cgi?id=66280
3239
3240         Reviewed by Martin Robinson.
3241
3242         Add some files to build-target & activate ENABLE_REQUEST_ANIMATION_FRAME flag
3243         when enabling requestAnimationFrame option.
3244
3245         fast/animation/request-animation-frame-cancel.html
3246         fast/animation/request-animation-frame-cancel2.html
3247         fast/animation/request-animation-frame-display.html
3248         fast/animation/request-animation-frame-during-modal.html
3249         fast/animation/request-animation-frame-timestamps.html
3250         fast/animation/request-animation-frame-within-callback.html
3251         fast/animation/request-animation-frame.html
3252
3253         * GNUmakefile.am:
3254         * GNUmakefile.list.am:
3255
3256 2011-09-20  Aaron Boodman  <aa@chromium.org>
3257
3258         Rework script context creation/release notifications
3259         https://bugs.webkit.org/show_bug.cgi?id=67828
3260
3261         Reviewed by Adam Barth.
3262
3263         * bindings/v8/V8DOMWindowShell.cpp:
3264         (WebCore::V8DOMWindowShell::disposeContextHandles):
3265         (WebCore::V8DOMWindowShell::initContextIfNeeded):
3266         * bindings/v8/V8IsolatedContext.cpp:
3267         (WebCore::V8IsolatedContext::V8IsolatedContext):
3268         (WebCore::V8IsolatedContext::destroy):
3269         * bindings/v8/V8IsolatedContext.h:
3270         * loader/EmptyClients.h:
3271         (WebCore::EmptyFrameLoaderClient::didCreateScriptContext):
3272         (WebCore::EmptyFrameLoaderClient::willReleaseScriptContext):
3273         * loader/FrameLoaderClient.h:
3274
3275 2011-09-19  Oliver Hunt  <oliver@apple.com>
3276
3277         Refactor Heap allocation logic into separate AllocationSpace class
3278         https://bugs.webkit.org/show_bug.cgi?id=68409
3279
3280         Reviewed by Gavin Barraclough.
3281
3282         Adding a forwarding header.
3283
3284         * ForwardingHeaders/heap/AllocationSpace.h: Added.
3285
3286 2011-09-20  Geoffrey Garen  <ggaren@apple.com>
3287
3288         Build fix.
3289
3290         * WebCorePrefix.h: Removed stray text from accidental paste.
3291
3292 2011-09-19  Geoffrey Garen  <ggaren@apple.com>
3293
3294         Removed BREWMP* platform #ifdefs
3295         https://bugs.webkit.org/show_bug.cgi?id=68425
3296         
3297         BREWMP* has no maintainer, and this is dead code.
3298
3299         Reviewed by Darin Adler.
3300
3301         * WebCorePrefix.h:
3302         * loader/cache/CachedFont.cpp:
3303         * platform/DragData.h:
3304         * platform/DragImage.h:
3305         * platform/FileSystem.h:
3306         * platform/PlatformKeyboardEvent.h:
3307         * platform/PlatformMouseEvent.h:
3308         * platform/PlatformTouchEvent.h:
3309         * platform/PlatformTouchPoint.h:
3310         (WebCore::PlatformTouchPoint::PlatformTouchPoint):
3311         * platform/Widget.h:
3312         * platform/graphics/IntPoint.h:
3313         * platform/graphics/IntSize.h:
3314         * platform/graphics/WOFFFileFormat.cpp:
3315         * platform/graphics/skia/FontCustomPlatformData.cpp:
3316         (WebCore::FontCustomPlatformData::~FontCustomPlatformData):
3317         (WebCore::FontCustomPlatformData::fontPlatformData):
3318         (WebCore::createFontCustomPlatformData):
3319         * platform/graphics/skia/FontCustomPlatformData.h:
3320         * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
3321         * platform/text/TextBoundaries.cpp:
3322         * platform/text/TextEncoding.cpp:
3323         (WebCore::TextEncoding::encode):
3324         * platform/text/TextEncodingRegistry.cpp:
3325         * plugins/PluginViewNone.cpp:
3326
3327 2011-09-20  Pavel Feldman  <pfeldman@google.com>
3328
3329         Web Inspector: Copy Stack Trace lacks newlines on Windows
3330         https://bugs.webkit.org/show_bug.cgi?id=68447
3331
3332         Reviewed by Joseph Pecoraro.
3333
3334         * inspector/front-end/CallStackSidebarPane.js:
3335         (WebInspector.CallStackSidebarPane.prototype._copyStackTrace):
3336
3337 2011-09-20  Pavel Feldman  <pfeldman@google.com>
3338
3339         Not reviewed: inspector sanity test fix.
3340
3341         * inspector/front-end/inspector.js:
3342         (WebInspector.showConsole):
3343
3344 2011-09-20  Alexis Menard  <alexis.menard@openbossa.org>
3345
3346         [Qt][WK2] Add stubs for FULLSCREEN_API on Qt.
3347         https://bugs.webkit.org/show_bug.cgi?id=68444
3348
3349         Reviewed by Andreas Kling.
3350
3351         Create all the stubs necessary for enabling FULLSCREEN_API on the Qt port.
3352
3353         No new tests : just stubs.
3354
3355         * CodeGenerators.pri:
3356         * WebCore.pro:
3357         * features.pri:
3358
3359 2011-09-20  Sheriff Bot  <webkit.review.bot@gmail.com>
3360
3361         Unreviewed, rolling out r95509.
3362         http://trac.webkit.org/changeset/95509
3363         https://bugs.webkit.org/show_bug.cgi?id=68446
3364
3365         crashes chromium fast/repaint/japanese-rl-selection-repaint-
3366         in-regions.html on Win and Linux (Requested by dslomov on
3367         #webkit).
3368
3369         * rendering/RenderBlock.cpp:
3370         (WebCore::positionForPointRespectingEditingBoundaries):
3371
3372 2011-09-20  Jarred Nicholls  <jarred@sencha.com>
3373
3374         [Qt] Permit qrc resources to load in QWebSettings::setUserStyleSheetUrl()
3375         https://bugs.webkit.org/show_bug.cgi?id=51159
3376         
3377         Permit any URL with a local scheme to set a user style sheet. Allow qrc
3378         resource URLs as arguments to QWebSettings::setUserStyleSheetUrl().
3379
3380         Reviewed by Kenneth Rohde Christiansen.
3381
3382         * page/Page.cpp:
3383         (WebCore::Page::userStyleSheetLocationChanged):
3384         * platform/qt/KURLQt.cpp:
3385         (WebCore::KURL::fileSystemPath):
3386
3387 2011-09-20  Csaba Osztrogonác  <ossy@webkit.org>
3388
3389         [Qt][Mac] Buildfix after r95513.
3390         Forwarding headers for WebCore should be generated based on WebCore sources instead of WebKit2.
3391
3392         Rubber-stamped by Andras Becsi.
3393
3394         * DerivedSources.pro:
3395         * WebCore.pro: Add platform/mac/DisplaySleepDisabler.cpp to SOURCES.
3396
3397 2011-09-19  Pavel Feldman  <pfeldman@google.com>
3398
3399         Web Inspector: document Debugger.paused, introduce types for ids in Debugger domain.
3400         https://bugs.webkit.org/show_bug.cgi?id=68363
3401
3402         Migrates from poorly documented "details" object to explicit parameters
3403         containing break type and data.
3404
3405         Reviewed by Tony Gentilcore.
3406
3407         * inspector/InjectedScriptSource.js:
3408         ():
3409         * inspector/Inspector.json:
3410         * inspector/InspectorDOMDebuggerAgent.cpp:
3411         (WebCore::InspectorDOMDebuggerAgent::didInvalidateStyleAttr):
3412         (WebCore::InspectorDOMDebuggerAgent::willInsertDOMNode):
3413         (WebCore::InspectorDOMDebuggerAgent::willRemoveDOMNode):
3414         (WebCore::InspectorDOMDebuggerAgent::willModifyDOMAttr):
3415         (WebCore::InspectorDOMDebuggerAgent::pauseOnNativeEventIfNeeded):
3416         (WebCore::InspectorDOMDebuggerAgent::willSendXMLHttpRequest):
3417         * inspector/InspectorDebuggerAgent.cpp:
3418         (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
3419         (WebCore::InspectorDebuggerAgent::schedulePauseOnNextStatement):
3420         (WebCore::InspectorDebuggerAgent::cancelPauseOnNextStatement):
3421         (WebCore::InspectorDebuggerAgent::pause):
3422         (WebCore::InspectorDebuggerAgent::didPause):
3423         (WebCore::InspectorDebuggerAgent::didContinue):
3424         (WebCore::InspectorDebuggerAgent::breakProgram):
3425         (WebCore::InspectorDebuggerAgent::clear):
3426         (WebCore::InspectorDebuggerAgent::clearBreakDetails):
3427         * inspector/InspectorDebuggerAgent.h:
3428         * inspector/front-end/DOMBreakpointsSidebarPane.js:
3429         (WebInspector.DOMBreakpointsSidebarPane.prototype.createBreakpointHitStatusMessage.didPushNodeToFrontend):
3430         (WebInspector.DOMBreakpointsSidebarPane.prototype.createBreakpointHitStatusMessage):
3431         (WebInspector.DOMBreakpointsSidebarPane.prototype.highlightBreakpoint):
3432         * inspector/front-end/DebuggerModel.js:
3433         (WebInspector.DebuggerModel.prototype._pausedScript):
3434         (WebInspector.DebuggerDispatcher.prototype.paused):
3435         * inspector/front-end/DebuggerPresentationModel.js:
3436         (WebInspector.PresentationCallFrame.prototype.evaluate):
3437         * inspector/front-end/ScopeChainSidebarPane.js:
3438         (WebInspector.ScopeChainSidebarPane.prototype.update):
3439         * inspector/front-end/ScriptsPanel.js:
3440         (WebInspector.ScriptsPanel.prototype._debuggerPaused.didCreateBreakpointHitStatusMessage):
3441         (WebInspector.ScriptsPanel.prototype._debuggerPaused.else.didGetSourceLocation):
3442         (WebInspector.ScriptsPanel.prototype._debuggerPaused):
3443
3444 2011-09-19  Pavel Feldman  <pfeldman@google.com>
3445
3446         Web Inspector: use strict types for Breakpoint and CallFrame ids in the protocol definition.
3447         https://bugs.webkit.org/show_bug.cgi?id=68172
3448
3449         Reviewed by Tony Gentilcore.
3450
3451         * inspector/Inspector.json:
3452
3453 2011-09-15  Pavel Feldman  <pfeldman@google.com>
3454
3455         Web Inspector: refactor ConsoleView, Drawer, ConsolePanel trio. Remove animation
3456         from drawer -> panel transition.
3457         https://bugs.webkit.org/show_bug.cgi?id=68155
3458
3459         ConsoleView, ConsolePanel and Drawer are all Views with custom show/hide implementations
3460         and weird DOM element containment. As a result, we have a number of cases when switching
3461         console from full panel to drawer mode and back result in UI glitches.
3462         For the sake of code clarity and no glitches, I'd like to sacrifice the "grow into full
3463         screen" console animation.
3464
3465         Reviewed by Tony Gentilcore.
3466
3467         * inspector/front-end/ConsoleModel.js:
3468         (WebInspector.ConsoleModel):
3469         * inspector/front-end/ConsolePanel.js:
3470         (WebInspector.ConsolePanel):
3471         (WebInspector.ConsolePanel.prototype.get statusBarItems):
3472         (WebInspector.ConsolePanel.prototype.show):
3473         (WebInspector.ConsolePanel.prototype.hide):
3474         * inspector/front-end/ConsoleView.js:
3475         (WebInspector.ConsoleView):
3476         (WebInspector.ConsoleView.createFilterElement):
3477         (WebInspector.ConsoleView.get this):
3478         (WebInspector.ConsoleView.prototype.get statusBarItems):
3479         (WebInspector.ConsoleView.prototype.wasShown):
3480         * inspector/front-end/Drawer.js:
3481         (WebInspector.Drawer):
3482         (WebInspector.Drawer.prototype.get visible):
3483         (WebInspector.Drawer.prototype._constrainHeight):
3484         (WebInspector.Drawer.prototype.show.animationFinished):
3485         (WebInspector.Drawer.prototype.show):
3486         (WebInspector.Drawer.prototype.hide):
3487         (WebInspector.Drawer.prototype.resize):
3488         (WebInspector.Drawer.prototype._animationDuration):
3489         * inspector/front-end/inspector.html:
3490         * inspector/front-end/inspector.js: