Web Inspector: do not send profile headers to the front-end until explicitly requested.
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2012-08-24  Pavel Feldman  <pfeldman@chromium.org>
2
3         Web Inspector: do not send profile headers to the front-end until explicitly requested.
4         https://bugs.webkit.org/show_bug.cgi?id=94928
5
6         Reviewed by Vsevolod Vlasov.
7
8         Simple flag is added.
9
10         * inspector/InspectorProfilerAgent.cpp:
11         (WebCore::InspectorProfilerAgent::InspectorProfilerAgent):
12         (WebCore::InspectorProfilerAgent::addProfile):
13         (WebCore::InspectorProfilerAgent::disable):
14         (WebCore::InspectorProfilerAgent::getProfileHeaders):
15         (WebCore):
16         (WebCore::InspectorProfilerAgent::resetFrontendProfiles):
17         * inspector/InspectorProfilerAgent.h:
18         (InspectorProfilerAgent):
19
20 2012-08-24  Pavel Feldman  <pfeldman@chromium.org>
21
22         Web Inspector: make ui component compile
23         https://bugs.webkit.org/show_bug.cgi?id=94827
24
25         Reviewed by Vsevolod Vlasov.
26
27         Moved buildImagePreviewContents into the sdk-aware code.
28         Drive-by more compilation fixes.
29
30         * inspector/compile-front-end.py:
31         * inspector/front-end/DOMPresentationUtils.js:
32         (WebInspector.DOMPresentationUtils.buildImagePreviewContents.errorCallback):
33         (WebInspector.DOMPresentationUtils.buildImagePreviewContents.buildContent):
34         (WebInspector.DOMPresentationUtils.buildImagePreviewContents):
35         * inspector/front-end/Database.js:
36         * inspector/front-end/DefaultTextEditor.js:
37         (WebInspector.TextEditorMainPanel):
38         (WebInspector.TextEditorMainPanel.prototype._createLink):
39         * inspector/front-end/ElementsPanel.js:
40         * inspector/front-end/NetworkPanel.js:
41         (WebInspector.NetworkDataGridNode.prototype._refreshNameCell):
42         * inspector/front-end/ParsedURL.js:
43         (WebInspector.ParsedURL.prototype.get displayName):
44         * inspector/front-end/ResourceUtils.js:
45         * inspector/front-end/SourceFrame.js:
46         (WebInspector.TextEditorDelegateForSourceFrame.prototype.populateTextAreaContextMenu):
47         (WebInspector.TextEditorDelegateForSourceFrame.prototype.createLink):
48         * inspector/front-end/TextEditor.js:
49         (WebInspector.TextEditorDelegate.prototype.populateTextAreaContextMenu):
50         (WebInspector.TextEditorDelegate.prototype.createLink):
51         * inspector/front-end/TimelinePresentationModel.js:
52         (WebInspector.TimelinePresentationModel.Record.prototype.generatePopupContent):
53         * inspector/front-end/UIUtils.js:
54
55 2012-08-24  'Pavel Feldman'  <pfeldman@chromium.org>
56
57         Not reviewed: fixing inspector/elements/iframe-load-event.html broken by r126572.
58
59         * inspector/front-end/DOMAgent.js:
60         (WebInspector.DOMNode.prototype.resolveURL):
61
62 2012-08-24  Andrey Adaikin  <aandrey@chromium.org>
63
64         Web Inspector: [WebGL] Implement custom wrap functions on GL context
65         https://bugs.webkit.org/show_bug.cgi?id=94799
66
67         Reviewed by Pavel Feldman.
68
69         Implement custom wrap functions on WebGL rendering context for WebGL instrumentation.
70
71         * inspector/InjectedScriptWebGLModuleSource.js:
72         (.):
73
74 2012-08-24  Pavel Feldman  <pfeldman@chromium.org>
75
76         Web Inspector: resolve URLs upon creation, get rid of populateHrefContextMenu
77         https://bugs.webkit.org/show_bug.cgi?id=94900
78
79         Reviewed by Vsevolod Vlasov.
80
81         - This change makes sure we resolve URLs upon adding the to the UI. Then we treat them as absolute links in context menu, etc.
82         - There is no need to override context menu for links anymore - system menu will do.
83
84         * inspector/front-end/AuditResultView.js:
85         (WebInspector.AuditResultView):
86         * inspector/front-end/ConsoleView.js:
87         * inspector/front-end/DOMAgent.js:
88         (WebInspector.DOMNode.prototype.descendantUserPropertyCount):
89         (WebInspector.DOMNode.prototype.resolveURL):
90         * inspector/front-end/ElementsPanel.js:
91         * inspector/front-end/ElementsTreeOutline.js:
92         (WebInspector.ElementsTreeOutline.prototype.populateContextMenu):
93         (WebInspector.ElementsTreeElement.prototype._buildAttributeDOM):
94         * inspector/front-end/HandlerRegistry.js:
95         (WebInspector.HandlerRegistry.prototype.appendApplicableItems):
96         (WebInspector.HandlerRegistry.prototype._appendContentProviderItems):
97         (WebInspector.HandlerRegistry.prototype._appendHrefItems):
98         * inspector/front-end/ParsedURL.js:
99         (WebInspector.ParsedURL.completeURL):
100         * inspector/front-end/ResourceUtils.js:
101         (WebInspector.linkifyRequestAsNode):
102         * inspector/front-end/StylesSidebarPane.js:
103         (WebInspector.StylesSidebarPane):
104         (WebInspector.StylePropertyTreeElement.prototype.updateTitle.linkifyURL):
105         * inspector/front-end/UIUtils.js:
106
107 2012-08-24  Xan Lopez  <xlopez@igalia.com>
108
109         [GTK] Use the new 'feature_defines' variable to generate DOM bindings
110         https://bugs.webkit.org/show_bug.cgi?id=94919
111
112         Reviewed by Carlos Garcia Campos.
113
114         Update to use the new 'feature_defines' variable, otherwise the
115         bindings will be broken.
116
117         * bindings/gobject/GNUmakefile.am: ditto.
118
119 2012-08-24  Kentaro Hara  <haraken@chromium.org>
120
121         Remove RefPtr from HTMLTextAreaElement::m_placeholder
122         https://bugs.webkit.org/show_bug.cgi?id=94338
123
124         Reviewed by Kent Tamura.
125
126         To avoid reference cycles of RefPtr<Node>s, we want to remove
127         unnecessary RefPtr<Node>s. The rationale is described in bug 94324.
128
129         HTMLTextAreaElement::m_placeholder does not need to be a RefPtr<Node>,
130         because it is guaranteed to point to a shadow DOM tree of the
131         HTMLTextAreaElement node, which is guaranteed to exist in the subtree
132         of the HTMLTextAreaElement node.
133
134         No tests. No change in behavior.
135
136         * html/HTMLTextAreaElement.cpp:
137         (WebCore::HTMLTextAreaElement::HTMLTextAreaElement):
138         (WebCore::HTMLTextAreaElement::placeholderElement):
139         (WebCore::HTMLTextAreaElement::attach):
140         (WebCore::HTMLTextAreaElement::updatePlaceholderText):
141         * html/HTMLTextAreaElement.h:
142         (HTMLTextAreaElement):
143
144 2012-08-24  Dan Carney  <dcarney@google.com>
145
146         [V8] Refactor away IsolatedWorld
147         https://bugs.webkit.org/show_bug.cgi?id=93971
148
149         Reviewed by Kentaro Hara.
150
151         Remove IsolatedWorld class as it was 1:1 with DOMWrapperWorld.
152         This paves the way towards a JSC-like use of DOMWrapperWorld.
153
154         No new tests. No change in functionality.
155
156         * UseV8.cmake:
157         * WebCore.gypi:
158         * bindings/v8/DOMWrapperWorld.cpp:
159         (WebCore):
160         (WebCore::DOMWrapperWorld::createUninitializedWorld):
161         (WebCore::DOMWrapperWorld::createMainWorld):
162         (WebCore::mainThreadNormalWorld):
163         (WebCore::isolatedWorldMap):
164         (WebCore::DOMWrapperWorld::deallocate):
165         (WebCore::DOMWrapperWorld::getOrCreateIsolatedWorld):
166         * bindings/v8/DOMWrapperWorld.h:
167         (DOMWrapperWorld):
168         (WebCore::DOMWrapperWorld::isolatedWorldsExist):
169         (WebCore::DOMWrapperWorld::isMainWorld):
170         (WebCore::DOMWrapperWorld::worldId):
171         (WebCore::DOMWrapperWorld::extensionGroup):
172         (WebCore::DOMWrapperWorld::domDataStore):
173         (WebCore::DOMWrapperWorld::deref):
174         (WebCore::DOMWrapperWorld::DOMWrapperWorld):
175         * bindings/v8/IsolatedWorld.cpp: Removed.
176         * bindings/v8/IsolatedWorld.h: Removed.
177         * bindings/v8/ScriptController.cpp:
178         (WebCore::ScriptController::evaluateInIsolatedWorld):
179         * bindings/v8/V8DOMMap.cpp:
180         (WebCore::DOMDataStoreHandle::DOMDataStoreHandle):
181         (WebCore::DOMDataStoreHandle::~DOMDataStoreHandle):
182         * bindings/v8/V8DOMMap.h:
183         (DOMDataStoreHandle):
184         * bindings/v8/V8DOMWrapper.h:
185         (WebCore::V8DOMWrapper::getCachedWrapper):
186         * bindings/v8/V8IsolatedContext.cpp:
187         (WebCore::V8IsolatedContext::V8IsolatedContext):
188         (WebCore::V8IsolatedContext::destroy):
189         * bindings/v8/V8IsolatedContext.h:
190         (V8IsolatedContext):
191         (WebCore::V8IsolatedContext::getEntered):
192         (WebCore::V8IsolatedContext::world):
193         * bindings/v8/V8PerIsolateData.h:
194         (WebCore::V8PerIsolateData::registerDOMDataStore):
195         (WebCore::V8PerIsolateData::unregisterDOMDataStore):
196
197 2012-08-24  Adam Barth  <abarth@webkit.org>
198
199         [V8] Improve the developer ergonomics of ScopedPersistent
200         https://bugs.webkit.org/show_bug.cgi?id=94901
201
202         Reviewed by Kentaro Hara.
203
204         As requested by haraken, this patch adds some helper functions to
205         ScopedPersistent so that we don't need to call get() all the time.
206
207         * bindings/v8/ScheduledAction.cpp:
208         (WebCore::ScheduledAction::execute):
209         * bindings/v8/ScopedPersistent.h:
210         (WebCore::ScopedPersistent::get):
211         (WebCore::ScopedPersistent::operator->):
212         (ScopedPersistent):
213         (WebCore::ScopedPersistent::isEmpty):
214         * bindings/v8/ScriptValue.cpp:
215         (WebCore::ScriptValue::getString):
216         (WebCore::ScriptValue::toString):
217         * bindings/v8/ScriptValue.h:
218         (WebCore::ScriptValue::isFunction):
219         (WebCore::ScriptValue::isNull):
220         (WebCore::ScriptValue::isUndefined):
221         (WebCore::ScriptValue::isObject):
222         (WebCore::ScriptValue::hasNoValue):
223         * bindings/v8/V8AbstractEventListener.cpp:
224         (WebCore::V8AbstractEventListener::~V8AbstractEventListener):
225         (WebCore::V8AbstractEventListener::getReceiverObject):
226         * bindings/v8/V8AbstractEventListener.h:
227         (WebCore::V8AbstractEventListener::hasExistingListenerObject):
228         * bindings/v8/V8DOMWindowShell.cpp:
229         (WebCore::V8DOMWindowShell::isContextInitialized):
230         (WebCore::V8DOMWindowShell::disposeContextHandles):
231         (WebCore::V8DOMWindowShell::clearForClose):
232         (WebCore::V8DOMWindowShell::clearForNavigation):
233         (WebCore::V8DOMWindowShell::initContextIfNeeded):
234         (WebCore::V8DOMWindowShell::updateDocumentWrapper):
235         (WebCore::V8DOMWindowShell::updateDocumentWrapperCache):
236         (WebCore::V8DOMWindowShell::clearDocumentWrapperCache):
237         (WebCore::V8DOMWindowShell::setSecurityToken):
238         (WebCore::V8DOMWindowShell::updateDocument):
239         (WebCore::V8DOMWindowShell::namedItemAdded):
240         (WebCore::V8DOMWindowShell::namedItemRemoved):
241         (WebCore::V8DOMWindowShell::updateSecurityOrigin):
242         * bindings/v8/V8PerContextData.cpp:
243         (WebCore::V8PerContextData::createWrapperFromCacheSlowCase):
244         (WebCore::V8PerContextData::constructorForTypeSlowCase):
245
246 2012-08-23  Pavel Feldman  <pfeldman@chromium.org>
247
248         Web Inspector: move ResourceViews to "components" module - it is used from the Resources as well.
249         https://bugs.webkit.org/show_bug.cgi?id=94904
250
251         Reviewed by Vsevolod Vlasov.
252
253         * WebCore.gypi:
254         * inspector/compile-front-end.py:
255         * inspector/front-end/NetworkPanel.js:
256         * inspector/front-end/inspector.html:
257
258 2012-08-24  Xiaobo Wang  <xbwang@torchmobile.com.cn>
259
260         Check argument count in the dispatch function for overloaded functions
261         https://bugs.webkit.org/show_bug.cgi?id=94790
262
263         Reviewed by Kentaro Hara.
264
265         Throw NotEnoughArguments exception for overloaded functions if actual argument
266         count is less than the least mandatory argument count among all overloaded.
267
268         Reset JS and V8 binding tests result for the change.
269
270         * bindings/scripts/CodeGeneratorJS.pm:
271         (GenerateFunctionParametersCheck):
272         (GenerateOverloadedFunction):
273         * bindings/scripts/CodeGeneratorV8.pm:
274         (GenerateFunctionParametersCheck):
275         (GenerateOverloadedFunctionCallback):
276         * bindings/scripts/test/JS/JSTestObj.cpp:
277         (WebCore::jsTestObjPrototypeFunctionOverloadedMethod):
278         (WebCore::jsTestObjConstructorFunctionOverloadedMethod1):
279         * bindings/scripts/test/V8/V8TestObj.cpp:
280         (WebCore::TestObjV8Internal::overloadedMethodCallback):
281         (WebCore::TestObjV8Internal::overloadedMethod1Callback):
282
283 2012-08-23  Frederik Gladhorn  <gladhorn@kde.org>
284
285         Make it possible to build WebKit with Python 3 (and 2)
286         https://bugs.webkit.org/show_bug.cgi?id=94814
287
288         Exceptions need a hack to work with both.
289         string.join was already deprecated in Python 2.
290         Relative imports are no longer supported, use package name instead.
291
292         Reviewed by Ryosuke Niwa.
293
294         * inspector/CodeGeneratorInspector.py:
295         (EnumConstants.get_enum_constant_code):
296         (TypeBindings.create_type_declaration_.EnumBinding.get_code_generator.CodeGenerator.generate_type_builder):
297         (Generator.go):
298         (Generator.process_event):
299         (Generator.process_command):
300
301 2012-08-24  Allan Sandfeld Jensen  <allan.jensen@nokia.com>
302
303         Get rid of m_useLatchedWheelEventNode
304         https://bugs.webkit.org/show_bug.cgi?id=94684
305
306         Reviewed by Ryosuke Niwa.
307
308         Moves the setting of m_useLatchedWheelEventNode into PlatformWheelEvent.
309
310         * page/EventHandler.cpp:
311         (WebCore::EventHandler::EventHandler):
312         (WebCore::EventHandler::handleWheelEvent):
313         (WebCore::EventHandler::defaultWheelEventHandler):
314         (WebCore::EventHandler::handleGestureScrollCore):
315         * page/EventHandler.h:
316         * platform/PlatformWheelEvent.h:
317         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
318         (WebCore::PlatformWheelEvent::setUseLatchedEventNode):
319         (PlatformWheelEvent):
320         (WebCore::PlatformWheelEvent::hasPreciseScrollingDeltas):
321         (WebCore::PlatformWheelEvent::useLatchedEventNode):
322
323 2012-08-24  Yoshifumi Inoue  <yosin@chromium.org>
324
325         [Forms] Multiple fields time input UI should handle Delete key as Backspace key
326         https://bugs.webkit.org/show_bug.cgi?id=94902
327
328         Reviewed by Kent Tamura.
329
330         This patch adds treating "Delete" key as same as "Backspace" key for
331         multiple fields time input UI. This patch affects ports which enable
332         both ENABLE_INPUT_TYPE_TIME and ENABLES_INPUT_TYPE_TIME_MULTIPLE_FIELDS.
333
334         No new tests. This patch adds a test case for "Delete" key to
335         fast/forms/time-multiple-fields/time-multiple-fields-keyboard-events.html
336
337         * html/shadow/DateTimeFieldElement.cpp:
338         (WebCore::DateTimeFieldElement::defaultKeyboardEventHandler): Changed
339         condition expression to check both Backspace(U+0008) key and
340         Delete(U+007F) key.
341
342 2012-08-24  Sheriff Bot  <webkit.review.bot@gmail.com>
343
344         Unreviewed, rolling out r126546.
345         http://trac.webkit.org/changeset/126546
346         https://bugs.webkit.org/show_bug.cgi?id=94911
347
348         Caused inspector tests to timeout (Requested by dominicc on
349         #webkit).
350
351         * WebCore.gypi:
352         * inspector/compile-front-end.py:
353         * inspector/front-end/NetworkPanel.js:
354         * inspector/front-end/inspector.html:
355
356 2012-08-24  Sergio Villar Senin  <svillar@igalia.com>
357
358         [GTK] Purge unused favicons from IconDatabase after 30 days
359         https://bugs.webkit.org/show_bug.cgi?id=82346
360
361         Reviewed by Gustavo Noronha Silva.
362
363         Favicons will be removed from the icon database after not being used
364         for more than 30 days. This will keep the database size under
365         control.
366
367         * loader/icon/IconDatabase.cpp:
368         (WebCore):
369         (WebCore::IconDatabase::performURLImport): filter icons older than
370         30 days.
371
372 2012-08-23  Sheriff Bot  <webkit.review.bot@gmail.com>
373
374         Unreviewed, rolling out r126542.
375         http://trac.webkit.org/changeset/126542
376         https://bugs.webkit.org/show_bug.cgi?id=94907
377
378         Broke WK2 build on OS X (Requested by tronical_ on #webkit).
379
380         * inspector/CodeGeneratorInspector.py:
381         (EnumConstants.get_enum_constant_code):
382         (TypeBindings.create_type_declaration_.EnumBinding.get_code_generator.CodeGenerator.generate_type_builder):
383         (Generator.go):
384         (Generator.process_event):
385         (Generator.process_command):
386
387 2012-08-23  Kentaro Hara  <haraken@chromium.org>
388
389         [V8] StringCache should not return already disposed strings
390         https://bugs.webkit.org/show_bug.cgi?id=94899
391
392         Reviewed by Adam Barth.
393
394         See this Chromium bug (http://code.google.com/p/chromium/issues/detail?id=143937)
395         for details.
396
397         I investigated the crash and found that v8ExternalString() can return
398         already disposed strings:
399
400           class StringCache {
401             v8::Local<v8::String> v8ExternalString(StringImpl* stringImpl, ...)
402             {
403                 if (m_lastStringImpl.get() == stringImpl) {
404                     ASSERT(!m_lastV8String.IsNearDeath());
405                     ASSERT(!m_lastV8String.IsEmpty());
406                     return v8::Local<v8::String>::New(m_lastV8String); // m_lastV8String might be already disposed.
407                 }
408                 return v8ExternalStringSlow(stringImpl, ...);
409             }
410           }
411
412         I couldn't find why m_lastV8String can be prematurely disposed, but the
413         following fix solves the crash:
414
415           class StringCache {
416             v8::Local<v8::String> v8ExternalString(StringImpl* stringImpl, ...)
417             {
418                 if (m_lastStringImpl.get() == stringImpl && m_lastV8String.IsWeak())
419                     return v8::Local<v8::String>::New(m_lastV8String);
420                 return v8ExternalStringSlow(stringImpl, ...);
421             }
422           }
423
424         Although the ideal fix might be to fix the root cause of the premature disposal,
425         I think that the proposed fix is reasonable for safety. In fact, we've so far
426         encountered crashes caused by premature disposals (e.g. r123500). The proposed fix
427         will prevent future crashes caused by premature disposals.
428
429         No tests. The crash depends on GC behavior and I couldn't write a test that
430         reproduces the crash. Open http://lore.com/testdrive/Navigating-the-Universe
431         and confirm that Chromium doesn't crash.
432
433         * bindings/v8/V8ValueCache.cpp:
434         (WebCore::StringCache::v8ExternalStringSlow):
435         * bindings/v8/V8ValueCache.h:
436         (WebCore::StringCache::v8ExternalString):
437
438 2012-08-23  Pavel Feldman  <pfeldman@chromium.org>
439
440         Web Inspector: move ResourceViews to "components" module - it is used from the Resources as well.
441         https://bugs.webkit.org/show_bug.cgi?id=94904
442
443         Reviewed by Vsevolod Vlasov.
444
445         * WebCore.gypi:
446         * inspector/compile-front-end.py:
447         * inspector/front-end/NetworkPanel.js:
448         * inspector/front-end/inspector.html:
449
450 2012-08-23  Adam Barth  <abarth@webkit.org>
451
452         [V8] V8DOMWindowShell should use ScopedPersistent
453         https://bugs.webkit.org/show_bug.cgi?id=94882
454
455         Reviewed by Kentaro Hara.
456
457         This patch updates V8DOMWindowShell to use ScopedPersistent rather than
458         manually managing v8::Persistent handles. I've also fixed some style
459         issues in code I needed to edit for this patch. This class could use
460         more touchup, but I'm going to hold off until the next patch.
461
462         * bindings/v8/ScopedPersistent.h:
463         (WebCore::ScopedPersistent::adopt):
464         (ScopedPersistent):
465         * bindings/v8/V8DOMWindowShell.cpp:
466         (WebCore::initializeV8IfNeeded):
467         (WebCore):
468         (WebCore::V8DOMWindowShell::isContextInitialized):
469         (WebCore::V8DOMWindowShell::disposeContextHandles):
470         (WebCore::V8DOMWindowShell::destroyGlobal):
471         (WebCore::V8DOMWindowShell::clearForClose):
472         (WebCore::V8DOMWindowShell::clearForNavigation):
473         (WebCore::V8DOMWindowShell::initContextIfNeeded):
474         (WebCore::V8DOMWindowShell::setContext):
475         (WebCore::V8DOMWindowShell::updateDocumentWrapper):
476         (WebCore::V8DOMWindowShell::clearDocumentWrapper):
477         (WebCore::V8DOMWindowShell::updateDocumentWrapperCache):
478         (WebCore::V8DOMWindowShell::clearDocumentWrapperCache):
479         (WebCore::V8DOMWindowShell::setSecurityToken):
480         (WebCore::V8DOMWindowShell::updateDocument):
481         (WebCore::getter):
482         (WebCore::V8DOMWindowShell::namedItemAdded):
483         (WebCore::V8DOMWindowShell::namedItemRemoved):
484         (WebCore::V8DOMWindowShell::updateSecurityOrigin):
485         * bindings/v8/V8DOMWindowShell.h:
486         (WebCore::V8DOMWindowShell::context):
487         (V8DOMWindowShell):
488
489 2012-08-23  Sheriff Bot  <webkit.review.bot@gmail.com>
490
491         Unreviewed, rolling out r126496.
492         http://trac.webkit.org/changeset/126496
493         https://bugs.webkit.org/show_bug.cgi?id=94895
494
495         Broke TestNotificationActiveDescendantChanged (Requested by
496         dominicc on #webkit).
497
498         * accessibility/AccessibilityNodeObject.cpp:
499         * accessibility/AccessibilityNodeObject.h:
500         (AccessibilityNodeObject):
501         * accessibility/AccessibilityObject.cpp:
502         * accessibility/AccessibilityObject.h:
503         (AccessibilityObject):
504         * accessibility/AccessibilityRenderObject.cpp:
505         (WebCore::AccessibilityRenderObject::title):
506         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
507         (WebCore::AccessibilityRenderObject::isDescendantOfElementType):
508         * accessibility/AccessibilityRenderObject.h:
509         (AccessibilityRenderObject):
510
511 2012-08-23  Frederik Gladhorn  <gladhorn@kde.org>
512
513         Make it possible to build WebKit with Python 3 (and 2)
514         https://bugs.webkit.org/show_bug.cgi?id=94814
515
516         Exceptions need a hack to work with both.
517         string.join was already deprecated in Python 2.
518         Relative imports are no longer supported, use package name instead.
519
520         Reviewed by Ryosuke Niwa.
521
522         * inspector/CodeGeneratorInspector.py:
523         (EnumConstants.get_enum_constant_code):
524         (TypeBindings.create_type_declaration_.EnumBinding.get_code_generator.CodeGenerator.generate_type_builder):
525         (Generator.go):
526         (Generator.process_event):
527         (Generator.process_command):
528
529 2012-08-23  Antoine Labour  <piman@chromium.org>
530
531         [chromium] Fix lost context when textures are evicted
532         https://bugs.webkit.org/show_bug.cgi?id=94892
533
534         Reviewed by James Robinson.
535
536         After eviction, the CCPrioritizedTextureManager is in a limbo state
537         where all its resources are invalid. If we try to release them we will
538         double-destroy them.
539
540         New test: CCLayerTreeHostTestLostContextAfterEvictTextures.
541
542         * platform/graphics/chromium/cc/CCThreadProxy.cpp:
543         (WebCore::CCThreadProxy::recreateContextOnImplThread):
544
545 2012-08-23  Keishi Hattori  <keishi@webkit.org>
546
547         REGRESSION(r126132): thumb doesn't match click position for rtl input type=range
548         https://bugs.webkit.org/show_bug.cgi?id=94890
549
550         Reviewed by Kent Tamura.
551
552         r126132 broke rtl input type=range so the thumb doesn't match click position.
553
554         Added new tests to range-hit-test-with-padding.html.
555
556         * html/shadow/SliderThumbElement.cpp:
557         (WebCore::SliderThumbElement::setPositionFromPoint):
558
559 2012-08-23  James Robinson  <jamesr@chromium.org>
560
561         Add OVERRIDE and deinline virtual getters on *PlatformGestureCurve
562         https://bugs.webkit.org/show_bug.cgi?id=94887
563
564         Reviewed by Dirk Pranke.
565
566         This makes clang happy. Clang makes me happy. By induction, this makes me happy.
567
568         * platform/TouchpadFlingPlatformGestureCurve.cpp:
569         (WebCore::TouchpadFlingPlatformGestureCurve::debugName):
570         (WebCore):
571         * platform/TouchpadFlingPlatformGestureCurve.h:
572         (TouchpadFlingPlatformGestureCurve):
573         * platform/WheelFlingPlatformGestureCurve.cpp:
574         (WebCore::WheelFlingPlatformGestureCurve::debugName):
575         (WebCore):
576         * platform/WheelFlingPlatformGestureCurve.h:
577         (WheelFlingPlatformGestureCurve):
578
579 2012-08-23  Yoshifumi Inoue  <yosin@chromium.org>
580
581         [Forms] Step mismatched value should be editable in multiple field time UI.
582         https://bugs.webkit.org/show_bug.cgi?id=94664
583
584         Reviewed by Kent Tamura.
585
586         This patch changes layout method of multiple field time input UI to
587         check value of the "input" element in addition to step and range to
588         allow users to change step mismatched value from UI.
589
590         Tests: fast/forms/time-multiple-fields/time-multiple-fields-change-layout-by-value.html: for changing layout by value change.
591         This patch also adds new test case into fast/forms/time-multiple-fields/time-multiple-fields-appearance-basic.html.
592
593         * html/TimeInputType.cpp:
594         (WebCore::TimeInputType::createShadowSubtree): Changed for DateTimeEditElement::create signature change.
595         (WebCore::TimeInputType::minOrMaxAttributeChanged): Changed to call updateInnerTextValue instead of removed updateEditElementLayout()
596         (WebCore::TimeInputType::stepAttributeChanged): ditto.
597         (WebCore::TimeInputType::updateInnerTextValue): Changed for DateTimeEditElement::setValueAsDate() and setEmptyValue() signature change.
598         * html/TimeInputType.h:
599         (TimeInputType): Removed updateEditElementLayout() declaration.
600         * html/shadow/DateTimeEditElement.cpp:
601         (DateTimeEditBuilder):
602         (WebCore::DateTimeEditBuilder::DateTimeEditBuilder): Added a new parameter date value to constructor to use it for layout decision.
603         (WebCore::DateTimeEditBuilder::needMillisecondField): Changed to check date value too.
604         (WebCore::DateTimeEditBuilder::needMinuteField): ditto
605         (WebCore::DateTimeEditBuilder::needSecondField): ditto
606         (WebCore::DateTimeEditBuilder::shouldMillisecondFieldReadOnly): ditto
607         (WebCore::DateTimeEditBuilder::shouldMinuteFieldReadOnly): ditto
608         (WebCore::DateTimeEditBuilder::shouldSecondFieldReadOnly): ditto
609         (WebCore::DateTimeEditElement::create): Changed for removing stepRange parameter.
610         (WebCore::DateTimeEditElement::layout): Changed to keep focus field for new layout.
611         (WebCore::DateTimeEditElement::setValueAsDate): Changed to call layout() with StepRange and date value.
612         (WebCore::DateTimeEditElement::setEmptyValue): ditto
613         * html/shadow/DateTimeEditElement.h:
614         (DateTimeEditElement):
615
616 2012-08-23  Andreas Kling  <kling@webkit.org>
617
618         Use immutable StylePropertySets for element inline style declarations.
619         <http://webkit.org/b/94714>
620
621         Reviewed by Antti Koivisto.
622
623         Construct the inline styles as immutable StylePropertySets initially (until they are
624         modified through CSSOM APIs), reducing their memory footprint and enabling us to do
625         sharing optimizations in the future.
626
627         * css/CSSParser.cpp:
628         (WebCore::CSSParser::parseInlineStyleDeclaration):
629         (WebCore::CSSParser::parseDeclaration):
630         * css/CSSParser.h:
631         * dom/ElementAttributeData.cpp:
632         (WebCore::ElementAttributeData::updateInlineStyleAvoidingMutation):
633
634 2012-08-23  Adam Barth  <abarth@webkit.org>
635
636         [V8] V8AbstractEventListener re-implements ScopedPersistent by hand
637         https://bugs.webkit.org/show_bug.cgi?id=94873
638
639         Reviewed by Eric Seidel.
640
641         Rather than calling New/Dispose manually, this patch changes
642         V8AbstractEventListener to use ScopedPersistent.
643
644         * bindings/v8/V8AbstractEventListener.cpp:
645         (WebCore::V8AbstractEventListener::weakEventListenerCallback):
646         (WebCore::V8AbstractEventListener::~V8AbstractEventListener):
647         (WebCore::V8AbstractEventListener::setListenerObject):
648         (WebCore::V8AbstractEventListener::getReceiverObject):
649         * bindings/v8/V8AbstractEventListener.h:
650         (WebCore::V8AbstractEventListener::getListenerObject):
651         (WebCore::V8AbstractEventListener::getExistingListenerObject):
652         (WebCore::V8AbstractEventListener::existingListenerObjectPersistentHandle):
653         (WebCore::V8AbstractEventListener::hasExistingListenerObject):
654         (V8AbstractEventListener):
655
656 2012-08-23  Simon Fraser  <simon.fraser@apple.com>
657
658         Prep work for: Implement sticky positioning
659         https://bugs.webkit.org/show_bug.cgi?id=90046
660
661         Reviewed by Dave Hyatt.
662         
663         Do some method renaming in preparation for adding a new kind
664         of in-flow positioning: sticky positioning.
665         
666         Rename RenderStyle::isOutOfFlowPositioned() to hasOutOfFlowPosition().
667         Add RenderStyle::hasInFlowPosition().
668         
669         Use RenderObject::isInFlowPositioned() in places where it will apply
670         for both relative and sticky positioning.
671         
672         Add RenderBoxModelObject::offsetForInFlowPosition(), which currently
673         applies just to relative positioning, but will also apply to sticky.
674
675         * css/CSSComputedStyleDeclaration.cpp:
676         (WebCore::getPositionOffsetValue):
677         * css/StyleResolver.cpp:
678         (WebCore::StyleResolver::collectMatchingRulesForList):
679         * editing/TextIterator.cpp:
680         (WebCore::ignoresContainerClip):
681         * rendering/LayoutState.cpp:
682         (WebCore::LayoutState::LayoutState):
683         * rendering/RenderBlock.cpp:
684         (WebCore::RenderBlock::styleWillChange):
685         (WebCore::RenderBlock::isSelectionRoot):
686         (WebCore::RenderBlock::blockSelectionGaps):
687         (WebCore::positionForPointRespectingEditingBoundaries):
688         * rendering/RenderBox.cpp:
689         (WebCore::RenderBox::styleWillChange):
690         (WebCore::RenderBox::updateBoxModelInfoFromStyle):
691         (WebCore::RenderBox::mapLocalToContainer):
692         (WebCore::RenderBox::offsetFromContainer):
693         (WebCore::RenderBox::computeRectForRepaint):
694         (WebCore::RenderBox::containingBlockLogicalWidthForPositioned):
695         (WebCore::RenderBox::containingBlockLogicalHeightForPositioned):
696         (WebCore::RenderBox::layoutOverflowRectForPropagation):
697         * rendering/RenderBox.h:
698         * rendering/RenderBoxModelObject.cpp:
699         (WebCore::accumulateInFlowPositionOffsets):
700         (WebCore::RenderBoxModelObject::relativePositionOffset):
701         (WebCore::RenderBoxModelObject::offsetForInFlowPosition):
702         (WebCore::RenderBoxModelObject::mapAbsoluteToLocalPoint):
703         * rendering/RenderBoxModelObject.h:
704         (RenderBoxModelObject):
705         (WebCore::RenderBoxModelObject::stickyPositionLogicalOffset):
706         (WebCore::RenderBoxModelObject::requiresLayer):
707         * rendering/RenderInline.cpp:
708         (WebCore::inFlowPositionedInlineAncestor): We need to actually return
709         the ancestor, since we will need to copy its position type once there
710         is more than one kind of in-flow position.
711         (WebCore::updateStyleOfAnonymousBlockContinuations):
712         (WebCore::RenderInline::styleDidChange):
713         (WebCore::RenderInline::addChildIgnoringContinuation):
714         (WebCore::RenderInline::clippedOverflowRectForRepaint):
715         (WebCore::RenderInline::computeRectForRepaint):
716         (WebCore::RenderInline::offsetFromContainer):
717         (WebCore::RenderInline::mapLocalToContainer):
718         (WebCore::RenderInline::offsetForInFlowPositionedInline):
719         * rendering/RenderInline.h:
720         (WebCore::RenderInline::requiresLayer):
721         * rendering/RenderLayer.cpp:
722         (WebCore::RenderLayer::updateLayerPosition):
723         (WebCore::isPositionedContainer):
724         (WebCore::RenderLayer::calculateClipRects):
725         (WebCore::RenderLayer::shouldBeNormalFlowOnly):
726         * rendering/RenderLayer.h:
727         (WebCore::RenderLayer::offsetForInFlowPosition):
728         * rendering/RenderObject.cpp:
729         (WebCore::RenderObject::markContainingBlocksForLayout):
730         (WebCore::RenderObject::setPreferredLogicalWidthsDirty):
731         (WebCore::RenderObject::invalidateContainerPreferredLogicalWidths):
732         (WebCore::RenderObject::containingBlock):
733         * rendering/RenderObject.h:
734         (WebCore::RenderObject::isRelPositioned):
735         * rendering/RenderObjectChildList.cpp:
736         (WebCore::RenderObjectChildList::updateBeforeAfterContent):
737         * rendering/style/RenderStyle.h:
738
739 2012-08-23  Ryosuke Niwa  <rniwa@webkit.org>
740
741         EFL build fix attempt after r126494. Try touching the IDL file.
742
743         * Modules/battery/BatteryManager.idl:
744
745 2012-08-23  Adam Barth  <abarth@webkit.org>
746
747         Unreviewed attempt to fix build failure in Debug.
748
749         * bindings/v8/ScriptValue.h:
750
751 2012-08-23  Joshua Bell  <jsbell@chromium.org>
752
753         IndexedDB: Expose mechanism for database to force a connection to close
754         https://bugs.webkit.org/show_bug.cgi?id=91010
755
756         Reviewed by Tony Chang.
757
758         In response to user action (e.g. "delete my browsing data") a connection may
759         need to be forcibly terminated. This allows an event to be sent to a connection
760         from the back end via IDBDatabaseCallbacks to initiate closing the connection.
761
762         Test: [chromium] webkit_unit_test --gtest_filter='IDBDatabaseBackendTest.ForcedClose'
763
764         * Modules/indexeddb/IDBDatabase.cpp:
765         (WebCore::IDBDatabase::forceClose): Abort all transactions and close.
766         (WebCore):
767         * Modules/indexeddb/IDBDatabase.h:
768         (IDBDatabase): Entry point.
769         * Modules/indexeddb/IDBDatabaseCallbacks.h:
770         (IDBDatabaseCallbacks): Event plumbing from back end.
771         * Modules/indexeddb/IDBDatabaseCallbacksImpl.cpp:
772         (WebCore::IDBDatabaseCallbacksImpl::onForcedClose): Ditto.
773         (WebCore):
774         * Modules/indexeddb/IDBDatabaseCallbacksImpl.h:
775         (IDBDatabaseCallbacksImpl): Ditto.
776         * inspector/InspectorIndexedDBAgent.cpp:
777         (WebCore): Method stub.
778
779 2012-08-23  James Robinson  <jamesr@chromium.org>
780
781         [chromium] Convert WebAnimationCurve subtypes into pure virtual
782         https://bugs.webkit.org/show_bug.cgi?id=94068
783
784         Reviewed by Adrienne Walker.
785
786         Updates users of the Web*AnimationCurve interface for its new pointery goodness.
787
788         * platform/graphics/chromium/AnimationTranslationUtil.cpp:
789         (WebCore::appendKeyframeWithStandardTimingFunction):
790         (WebCore::appendKeyframeWithCustomBezierTimingFunction):
791         (WebCore::WebTransformAnimationCurve):
792         (WebCore::createWebAnimation):
793
794 2012-08-23  Emil A Eklund  <eae@chromium.org>
795
796         Add saturation arithmetic support to FractionalLayoutUnit
797         https://bugs.webkit.org/show_bug.cgi?id=94364
798
799         Reviewed by Benjamin Poulain.
800
801         Add experimental saturation arithmetic support to FractionalLayoutUnit,
802         guarded by a flag.
803         The idea here is to saturate (or clamp) rather than overflow when
804         computing positions and sizes.
805
806         No new tests for WebCore, not enabled by default.
807
808         * platform/FractionalLayoutUnit.h:
809         (WebCore::FractionalLayoutUnit::intMinForLayoutUnit):
810         Use INT_MIN instead of -INT_MAX to compute minimum value as the two are
811         not the same.
812         
813         (WebCore::FractionalLayoutUnit::FractionalLayoutUnit):
814         (WebCore::FractionalLayoutUnit::fromFloatCeil):
815         (WebCore::FractionalLayoutUnit::fromFloatFloor):
816         (WebCore::FractionalLayoutUnit::fromFloatRound):
817         (WebCore::FractionalLayoutUnit::setValue):
818         Add range checks.
819
820         (WebCore::operator*):
821         (WebCore::operator+):
822         (WebCore::operator-):
823         (WebCore::operator+=):
824         (WebCore::operator-=):
825         Use the saturatedAddition and saturatedSubtraction functions, which have
826         been optimized to reduce branching, instead of range checks for the most
827         common operators.
828
829 2012-08-23  Kenneth Russell  <kbr@google.com>
830
831         Unreviewed, rolling out r126483.
832         http://trac.webkit.org/changeset/126483
833         https://bugs.webkit.org/show_bug.cgi?id=92272
834
835         Caused two Chromium browser_tests to time out 100% reliably.
836
837         * loader/FrameLoader.cpp:
838         (WebCore::FrameLoader::init):
839         (WebCore::FrameLoader::prepareForLoadStart):
840         (WebCore::FrameLoader::clearProvisionalLoad):
841         (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
842         (WebCore::FrameLoader::detachFromParent):
843         * loader/FrameLoader.h:
844         (FrameLoader):
845
846 2012-08-23  Kentaro Hara  <haraken@chromium.org>
847
848         Unreviewed. Just added comments I forgot to add in r126506.
849
850         * bindings/v8/ScriptController.h:
851         (WebCore):
852         (ScriptController):
853
854 2012-08-23  Kenneth Russell  <kbr@google.com>
855
856         Unreviewed, rolling out r126483.
857         http://trac.webkit.org/changeset/126483
858         https://bugs.webkit.org/show_bug.cgi?id=92272
859
860         Caused two Chromium browser_tests to time out 100% reliably.
861
862         * loader/FrameLoader.cpp:
863         (WebCore::FrameLoader::init):
864         (WebCore::FrameLoader::prepareForLoadStart):
865         (WebCore::FrameLoader::clearProvisionalLoad):
866         (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
867         (WebCore::FrameLoader::detachFromParent):
868         * loader/FrameLoader.h:
869         (FrameLoader):
870
871 2012-08-23  Kentaro Hara  <haraken@chromium.org>
872
873         [V8] Remove V8Proxy.{h,cpp}
874         https://bugs.webkit.org/show_bug.cgi?id=94794
875
876         Reviewed by Dimitri Glazkov.
877
878         Now V8Proxy is no longer used. We can completely remove V8Proxy from the codebase.
879
880         No tests. No change in behavior.
881
882         * UseV8.cmake:
883         * WebCore.gypi:
884         * bindings/scripts/CodeGeneratorV8.pm:
885         (GenerateImplementation):
886         (GenerateCallbackImplementation):
887         * bindings/scripts/test/V8/V8Float64Array.cpp:
888         * bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
889         * bindings/scripts/test/V8/V8TestCallback.cpp:
890         * bindings/scripts/test/V8/V8TestCustomNamedGetter.cpp:
891         * bindings/scripts/test/V8/V8TestEventConstructor.cpp:
892         * bindings/scripts/test/V8/V8TestEventTarget.cpp:
893         * bindings/scripts/test/V8/V8TestException.cpp:
894         * bindings/scripts/test/V8/V8TestInterface.cpp:
895         * bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:
896         * bindings/scripts/test/V8/V8TestNamedConstructor.cpp:
897         * bindings/scripts/test/V8/V8TestNode.cpp:
898         * bindings/scripts/test/V8/V8TestObj.cpp:
899         * bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
900         * bindings/v8/ScriptController.cpp:
901         (WebCore::ScriptController::ScriptController):
902         (WebCore::ScriptController::~ScriptController):
903         (WebCore::ScriptController::callFunction):
904         (WebCore::ScriptController::clearWindowShell):
905         * bindings/v8/ScriptController.h:
906         (WebCore):
907         (ScriptController):
908         * bindings/v8/V8AbstractEventListener.h:
909         (WebCore):
910         * bindings/v8/V8Binding.cpp:
911         * bindings/v8/V8DOMWindowShell.cpp:
912         (WebCore::reportFatalErrorInV8):
913         * bindings/v8/V8DOMWrapper.h:
914         (WebCore):
915         * bindings/v8/V8ObjectConstructor.cpp:
916         (WebCore::V8ObjectConstructor::newInstanceInDocument):
917         * bindings/v8/V8Proxy.cpp: Removed.
918         * bindings/v8/V8Proxy.h: Removed.
919         * bindings/v8/V8RecursionScope.h:
920         (WebCore):
921         * bindings/v8/V8Utilities.cpp:
922         * bindings/v8/custom/V8CustomXPathNSResolver.h:
923
924 2012-08-23  Otto Derek Cheung  <otcheung@rim.com>
925
926
927         [BlackBerry] Add a check to filter out cookies that tries to set the domain to a top level domain 
928         https://bugs.webkit.org/show_bug.cgi?id=94722
929
930         Reviewed by Rob Buis.
931
932         Changing the topleveldomain method name for better readability.
933
934         Also renaming the TopLevelDomain.h in platform to DomainTools
935         because there exists other tests that should belong in the same file.
936
937         Only changing method names and include file names.
938
939         * platform/blackberry/CookieParser.cpp:
940         (WebCore::CookieParser::parseOneCookie):
941
942 2012-08-23  Shezan Baig  <shezbaig.wk@gmail.com>
943
944         Fix cross-direction stretch for replaced elements in column flexbox
945         https://bugs.webkit.org/show_bug.cgi?id=94604
946
947         Reviewed by Ojan Vafai.
948
949         Moved the logic that constrains logical width by MinSize and MaxSize to
950         a new helper function called constrainLogicalWidthInRegionByMinMax.
951         This helper function is used from both computeLogicalWidthInRegion and
952         RenderFlexibleBox::applyStretchAlignmentToChild.
953
954         RenderFlexibleBox no longer checks for isMultiline when stretching
955         elements in a column flexbox. Instead, we now constrain the available
956         width by the child's min-width and max-width, and set the override
957         width only if that constrained width is different from the child's
958         current logicalWidth.
959
960         No new tests. The existing css3/flexbox/flexitem.html test was extended
961         to exercise the new code.
962
963         * rendering/RenderBox.cpp:
964         (WebCore::RenderBox::constrainLogicalWidthInRegionByMinMax): New helper
965         method to constrain logical width by min-width and max-width.
966         (WebCore):
967         (WebCore::RenderBox::computeLogicalWidthInRegion): Changed to use the
968         new constrainLogicalWidthInRegionByMinMax helper method.
969         * rendering/RenderBox.h:
970         (RenderBox):
971         * rendering/RenderFlexibleBox.cpp:
972         (WebCore::RenderFlexibleBox::applyStretchAlignmentToChild): Changed to
973         use constrainLogicalWidthInRegionByMinMax to determine the override
974         width for the child.
975
976 2012-08-23  Adam Barth  <abarth@webkit.org>
977
978         [V8] ScriptState is using stone knifes and bear skins
979         https://bugs.webkit.org/show_bug.cgi?id=94846
980
981         Reviewed by Eric Seidel.
982
983         This patch just modernizes ScriptState to use some of the newer tools
984         available in the V8 bindings. There shouldn't be any behavior changes.
985
986         * bindings/v8/ScriptState.cpp:
987         (WebCore::ScriptState::ScriptState):
988         (WebCore::ScriptState::~ScriptState):
989         (WebCore::ScriptState::domWindow):
990         (WebCore::ScriptState::scriptExecutionContext):
991         (WebCore::ScriptState::forContext):
992         (WebCore::ScriptState::current):
993         * bindings/v8/ScriptState.h:
994         (WebCore):
995         (WebCore::ScriptState::context):
996         (ScriptState):
997         (WebCore::ScriptStateProtectedPtr::ScriptStateProtectedPtr):
998         (ScriptStateProtectedPtr):
999         * bindings/v8/V8Binding.cpp:
1000         (WebCore::toScriptExecutionContext):
1001         (WebCore):
1002         * bindings/v8/V8Binding.h:
1003         (WebCore):
1004
1005 2012-08-23  Dana Jansens  <danakj@chromium.org>
1006
1007         [chromium] Don't require a RenderSurface* in order to create a RenderPass
1008         https://bugs.webkit.org/show_bug.cgi?id=94862
1009
1010         Reviewed by Adrienne Walker.
1011
1012         If a test wants to create a RenderPass, they are required to create a
1013         Layer, and a RenderSurface. This is not ideal, we should let tests
1014         create RenderPasses more simply by giving the information that it needs.
1015
1016         This also helps us recreate the RenderPasses after receiving a copy
1017         via IPC.
1018
1019         * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
1020         (WebCore::CCLayerTreeHostImpl::calculateRenderPasses):
1021         * platform/graphics/chromium/cc/CCRenderPass.cpp:
1022         (WebCore::CCRenderPass::create):
1023         (WebCore::CCRenderPass::CCRenderPass):
1024         * platform/graphics/chromium/cc/CCRenderPass.h:
1025         (CCRenderPass):
1026
1027 2012-08-23  Adam Barth  <abarth@webkit.org>
1028
1029         [V8] ScriptValue should use ScopedPresistent rather than calling New/Dispose directly
1030         https://bugs.webkit.org/show_bug.cgi?id=94864
1031
1032         Reviewed by Eric Seidel.
1033
1034         ScriptValue was created before ScopedPersistent existed and therefore
1035         calls New/Dispose manually. Instead, it should use the less error-prone
1036         approach of having ScopedPersistent balance those calls.
1037
1038         * bindings/v8/ScriptValue.cpp:
1039         (WebCore::ScriptValue::serialize):
1040         (WebCore::ScriptValue::getString):
1041         (WebCore::ScriptValue::toString):
1042         (WebCore::ScriptValue::toInspectorValue):
1043         * bindings/v8/ScriptValue.h:
1044         (WebCore::ScriptValue::ScriptValue):
1045         (WebCore::ScriptValue::operator=):
1046         (WebCore::ScriptValue::operator==):
1047         (WebCore::ScriptValue::isEqual):
1048         (WebCore::ScriptValue::isFunction):
1049         (WebCore::ScriptValue::isNull):
1050         (WebCore::ScriptValue::isUndefined):
1051         (WebCore::ScriptValue::isObject):
1052         (WebCore::ScriptValue::hasNoValue):
1053         (WebCore::ScriptValue::clear):
1054         (WebCore::ScriptValue::v8Value):
1055         (ScriptValue):
1056
1057 2012-08-22  James Robinson  <jamesr@chromium.org>
1058
1059         [chromium] Remove WebLayer::setChildren API
1060         https://bugs.webkit.org/show_bug.cgi?id=94749
1061
1062         Reviewed by Adrienne Walker.
1063
1064         Sets up the child list directly instead of building an intermediate buffer. Covered by compositing/*
1065
1066         * platform/graphics/chromium/GraphicsLayerChromium.cpp:
1067         (WebCore::GraphicsLayerChromium::updateChildList):
1068
1069 2012-08-23  Dominic Mazzoni  <dmazzoni@google.com>
1070
1071         AX: Focusable elements without a role should not be ignored
1072         https://bugs.webkit.org/show_bug.cgi?id=94302
1073
1074         Reviewed by Chris Fleizach.
1075
1076         Changes the accessibility logic so that a generic element that's focusable is
1077         not ignored for accessibility, and returns its inner text as its title. That way
1078         if you Tab to the element, a reasonable accessibility notification is generated.
1079
1080         One exception is the body element, because focusing the body is equivalent to
1081         blurring the current focused element and does not result in a "focus" accessibility
1082         notification.
1083
1084         Also fixes logic that determined if an element was contentEditable by making
1085         sure it catches the case with no attribute value (e.g. <div contentEditable>),
1086         which also implies contentEditable=true according to the spec.
1087
1088         Test: accessibility/focusable-div.html
1089
1090         * accessibility/AccessibilityRenderObject.cpp:
1091         (WebCore):
1092         (WebCore::nodeHasContentEditableAttributeSet):
1093         (WebCore::AccessibilityRenderObject::title):
1094         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
1095
1096 2012-08-23  Julien Chaffraix  <jchaffraix@webkit.org>
1097
1098         Remove RenderTable::removeChild
1099         https://bugs.webkit.org/show_bug.cgi?id=94842
1100
1101         Reviewed by Abhishek Arya.
1102
1103         This change removed removeChild, replaced by willBeRemovedFromTree calls. The upside is that
1104         the invalidations are now guaranteed to run if we split a table (which is not guaranteed when
1105         using removeChild). This change also shows that our code may be doing too much work in some
1106         of the child's removal, in which case the code was marked as needed.
1107
1108         Covered by existing tests.
1109
1110         * rendering/RenderTable.cpp:
1111         (WebCore::RenderTable::removeCaption):
1112         Helper function used to remove the caption from our Vector. The invalidation are very likely
1113         unneeded so added a comment about that.
1114
1115         * rendering/RenderTable.h:
1116         * rendering/RenderTableCaption.cpp:
1117         (WebCore::RenderTableCaption::willBeRemovedFromTree):
1118         (WebCore::RenderTableCaption::table):
1119         * rendering/RenderTableCaption.h:
1120         * rendering/RenderTableCol.cpp:
1121         (WebCore::RenderTableCol::willBeRemovedFromTree):
1122         * rendering/RenderTableCol.h:
1123         Added the following functions to do the invalidation.
1124
1125 2012-08-23  Mark Hahnenberg  <mhahnenberg@apple.com>
1126
1127         Change behavior of MasqueradesAsUndefined to better accommodate DFG changes
1128         https://bugs.webkit.org/show_bug.cgi?id=93884
1129
1130         Reviewed by Filip Pizlo.
1131
1132         With some upcoming changes to the DFG to remove uses of ClassInfo, we will be changing the behavior of  
1133         MasqueradesAsUndefined. In order to make this change consistent across all of our execution engines,  
1134         we will make this change to MasqueradesAsUndefined as a separate patch. After this patch, MasqueradesAsUndefined  
1135         objects will only masquerade as undefined in their original context (i.e. their original JSGlobalObject).  
1136         For example, if an object that masquerades as undefined in frame A is passed to frame B, it will not  
1137         masquerade as undefined within frame B, but it will continue to masquerade in frame A. 
1138
1139         Test: fast/js/document-all-between-frames.html
1140
1141         All of the changes in WebCore are simply passing the additional ExecState argument to JSValue::toBoolean. 
1142
1143         * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
1144         (WebCore::JSSQLStatementErrorCallback::handleEvent):
1145         * bindings/js/JSDOMWindowCustom.cpp:
1146         (WebCore::JSDOMWindow::addEventListener):
1147         (WebCore::JSDOMWindow::removeEventListener):
1148         * bindings/js/JSDataViewCustom.cpp:
1149         (WebCore::getDataViewMember):
1150         * bindings/js/JSDeviceMotionEventCustom.cpp:
1151         (WebCore::JSDeviceMotionEvent::initDeviceMotionEvent):
1152         * bindings/js/JSDeviceOrientationEventCustom.cpp:
1153         (WebCore::JSDeviceOrientationEvent::initDeviceOrientationEvent):
1154         * bindings/js/JSDictionary.cpp:
1155         (WebCore::JSDictionary::convertValue):
1156         * bindings/js/JSHTMLCanvasElementCustom.cpp:
1157         (WebCore::JSHTMLCanvasElement::getContext):
1158         * bindings/js/JSInspectorFrontendHostCustom.cpp:
1159         (WebCore::populateContextMenuItems):
1160         * bindings/js/JSMessageEventCustom.cpp:
1161         (WebCore::handleInitMessageEvent):
1162         * bindings/js/JSWebGLRenderingContextCustom.cpp:
1163         (WebCore::dataFunctionMatrix):
1164         * bindings/js/JSXMLHttpRequestCustom.cpp:
1165         (WebCore::JSXMLHttpRequest::open):
1166         * bindings/js/JavaScriptCallFrame.cpp:
1167         (WebCore::JavaScriptCallFrame::exec):
1168         (WebCore):
1169         * bindings/js/JavaScriptCallFrame.h:
1170         (JavaScriptCallFrame):
1171         * bindings/js/ScriptDebugServer.cpp:
1172         (WebCore::ScriptDebugServer::hasBreakpoint):
1173         * bindings/js/SerializedScriptValue.cpp:
1174         (WebCore::CloneSerializer::dumpIfTerminal):
1175         * bindings/scripts/CodeGeneratorJS.pm: Also add the custom create function for MasqueradesAsUndefined JS DOM wrappers. 
1176         (GenerateEventListenerCall):
1177         (GenerateHeader):
1178         (JSValueToNative):
1179         * bindings/scripts/test/JS/JSTestEventTarget.cpp:
1180         (WebCore::jsTestEventTargetPrototypeFunctionAddEventListener):
1181         (WebCore::jsTestEventTargetPrototypeFunctionRemoveEventListener):
1182         * bindings/scripts/test/JS/JSTestEventTarget.h:
1183         (WebCore::JSTestEventTarget::create):
1184         * bindings/scripts/test/JS/JSTestObj.cpp:
1185         (WebCore::setJSTestObjCreate):
1186         (WebCore::setJSTestObjReflectedBooleanAttr):
1187         (WebCore::setJSTestObjReflectedCustomBooleanAttr):
1188         (WebCore::jsTestObjPrototypeFunctionAddEventListener):
1189         (WebCore::jsTestObjPrototypeFunctionRemoveEventListener):
1190         * bridge/c/c_utility.cpp:
1191         (JSC::Bindings::convertValueToNPVariant):
1192         * bridge/jni/jni_jsobject.mm:
1193         (JavaJSObject::convertValueToJObject):
1194         * bridge/qt/qt_runtime.cpp:
1195         (JSC::Bindings::convertValueToQVariant):
1196
1197 2012-08-23  Adenilson Cavalcanti  <cavalcantii@gmail.com>
1198
1199         CSSParser: Move enumeration to a common place (StylePropertyShorthand)
1200         https://bugs.webkit.org/show_bug.cgi?id=93210
1201
1202         Reviewed by Dean Jackson.
1203
1204         CSSParser::parseAnimationShorthand() uses an enumeration with the same
1205         elements as another enumeration present in StylePropertyShorthand, but
1206         with different ordering of values. This patch puts both enums in the same place.
1207
1208         No new tests. No change in behavior.
1209
1210         * css/CSSParser.cpp:
1211         (WebCore::CSSParser::parseAnimationShorthand):
1212         * css/StylePropertyShorthand.cpp:
1213         (WebCore::webkitAnimationShorthandForParsing):
1214         (WebCore):
1215         * css/StylePropertyShorthand.h:
1216         (WebCore):
1217
1218 2012-08-23  Mike West  <mkwst@chromium.org>
1219
1220         Trailing spaces in CSP source lists should not generate console warnings.
1221         https://bugs.webkit.org/show_bug.cgi?id=94847
1222
1223         Reviewed by Adam Barth.
1224
1225         Trailing space after a valid source in a Content Security Policy source
1226         list was accidentally generating console warnings about an invalid
1227         (empty) source. This patch silently ignores trailing whitespace instead.
1228
1229         A test-case has been added to 'source-list-parsing-02.html' to cover
1230         this case.
1231
1232         * page/ContentSecurityPolicy.cpp:
1233         (WebCore::CSPSourceList::parse):
1234             Return early if we reach the end of the source list after skipping
1235             leading whitespace.
1236
1237 2012-08-23  Adam Barth  <abarth@webkit.org>
1238
1239         [V8] OwnHandle is a bit of a misnomer
1240         https://bugs.webkit.org/show_bug.cgi?id=94841
1241
1242         Reviewed by Eric Seidel.
1243
1244         You don't really own the handle in the same way that you own a pointer
1245         with OwnPtr. This class is more correctly called ScopedPersistent
1246         because it just forces you to balance New() and Dispose() calls.
1247
1248         * WebCore.gypi:
1249         * bindings/v8/JavaScriptCallFrame.h:
1250         (JavaScriptCallFrame):
1251         * bindings/v8/OwnHandle.h: Removed.
1252         * bindings/v8/ScheduledAction.h:
1253         (ScheduledAction):
1254         * bindings/v8/ScopedPersistent.h: Copied from Source/WebCore/bindings/v8/OwnHandle.h.
1255         (ScopedPersistent):
1256         (WebCore::ScopedPersistent::ScopedPersistent):
1257         (WebCore::ScopedPersistent::~ScopedPersistent):
1258         * bindings/v8/ScriptDebugServer.cpp:
1259         (WebCore::ScriptDebugServer::compileScript):
1260         (WebCore::ScriptDebugServer::runScript):
1261         * bindings/v8/ScriptDebugServer.h:
1262         (ScriptDebugServer):
1263         * bindings/v8/ScriptInstance.h:
1264         (V8ScriptInstance):
1265         * bindings/v8/V8PerContextData.h:
1266         (V8PerContextData):
1267
1268 2012-08-23  Nate Chapin  <japhet@chromium.org>
1269
1270         ProgressTracker never completes if iframe detached during parsing 
1271         https://bugs.webkit.org/show_bug.cgi?id=92272
1272
1273         Reviewed by Adam Barth.
1274
1275         Add a simple helper class to FrameLoader to ensure progressStarted/progressCompleted calls are matched,
1276         and balance the calls when the Frame is detached.
1277
1278         No new tests, as this behavior has only been producing reliably by setting a breakpoint in a specific place.
1279
1280         * loader/FrameLoader.cpp:
1281         (WebCore::FrameLoader::init):
1282         (WebCore::FrameLoader::FrameProgressTracker::progressStarted):
1283         (WebCore::FrameLoader::FrameProgressTracker::progressCompleted):
1284         (WebCore::FrameLoader::FrameProgressTracker::~FrameProgressTracker):
1285         (WebCore::FrameLoader::prepareForLoadStart):
1286         (WebCore::FrameLoader::clearProvisionalLoad):
1287         (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
1288         (WebCore::FrameLoader::detachFromParent):
1289         * loader/FrameLoader.h:
1290         (FrameProgressTracker):
1291         (WebCore::FrameLoader::FrameProgressTracker::create):
1292         (WebCore::FrameLoader::FrameProgressTracker::FrameProgressTracker):
1293
1294 2012-08-23  Dana Jansens  <danakj@chromium.org>
1295
1296         [chromium] Create sharedQuadState at same time as creating quads and give them to the quadSink
1297         https://bugs.webkit.org/show_bug.cgi?id=94752
1298
1299         Reviewed by Adrienne Walker.
1300
1301         Previously, CCRenderPass would create a sharedQuadState for a layer,
1302         and pass it in to the layer. Then the layer would point all its quads
1303         at the sharedQuadState.
1304
1305         After this change, the layer creates its own sharedQuadState, gives it
1306         to the RenderPass (via CCQuadSink), and points its quads at it.
1307
1308         This approach allows a layer to generate more than one sharedQuadState
1309         with different quads pointing to different shared states. Also, this
1310         will allow the layer representing a delegating renderer (via ubercomp)
1311         to copy sharedQuadStates from the delegating renderer in order to
1312         merge its quads into the RenderPass for the current renderer.
1313
1314         Covered by existing tests, no change in behaviour.
1315
1316         * platform/graphics/chromium/cc/CCHeadsUpDisplayLayerImpl.cpp:
1317         (WebCore::CCHeadsUpDisplayLayerImpl::appendQuads):
1318         * platform/graphics/chromium/cc/CCHeadsUpDisplayLayerImpl.h:
1319         (CCHeadsUpDisplayLayerImpl):
1320         * platform/graphics/chromium/cc/CCIOSurfaceLayerImpl.cpp:
1321         (WebCore::CCIOSurfaceLayerImpl::appendQuads):
1322         * platform/graphics/chromium/cc/CCIOSurfaceLayerImpl.h:
1323         (CCIOSurfaceLayerImpl):
1324         * platform/graphics/chromium/cc/CCLayerImpl.cpp:
1325         (WebCore::CCLayerImpl::createSharedQuadState):
1326         * platform/graphics/chromium/cc/CCLayerImpl.h:
1327         (CCLayerImpl):
1328         (WebCore::CCLayerImpl::appendQuads):
1329         * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
1330         (WebCore::CCLayerTreeHostImpl::calculateRenderPasses):
1331         * platform/graphics/chromium/cc/CCQuadCuller.cpp:
1332         (WebCore::CCQuadCuller::CCQuadCuller):
1333         (WebCore::CCQuadCuller::append):
1334         (WebCore::CCQuadCuller::useSharedQuadState):
1335         (WebCore):
1336         * platform/graphics/chromium/cc/CCQuadCuller.h:
1337         (WebCore):
1338         (CCQuadCuller):
1339         * platform/graphics/chromium/cc/CCQuadSink.h:
1340         (WebCore):
1341         (CCQuadSink):
1342         * platform/graphics/chromium/cc/CCRenderPass.cpp:
1343         (WebCore::CCRenderPass::appendQuadsForLayer):
1344         (WebCore::CCRenderPass::appendQuadsForRenderSurfaceLayer):
1345         (WebCore::CCRenderPass::appendQuadsToFillScreen):
1346         * platform/graphics/chromium/cc/CCRenderPass.h:
1347         (WebCore):
1348         (CCRenderPass):
1349         * platform/graphics/chromium/cc/CCRenderSurface.cpp:
1350         (WebCore::CCRenderSurface::appendQuads):
1351         * platform/graphics/chromium/cc/CCRenderSurface.h:
1352         (CCRenderSurface):
1353         * platform/graphics/chromium/cc/CCScrollbarLayerImpl.cpp:
1354         (WebCore::CCScrollbarLayerImpl::appendQuads):
1355         * platform/graphics/chromium/cc/CCScrollbarLayerImpl.h:
1356         (CCScrollbarLayerImpl):
1357         * platform/graphics/chromium/cc/CCSharedQuadState.cpp:
1358         (WebCore::CCSharedQuadState::create):
1359         (WebCore::CCSharedQuadState::CCSharedQuadState):
1360         * platform/graphics/chromium/cc/CCSharedQuadState.h:
1361         (CCSharedQuadState):
1362         * platform/graphics/chromium/cc/CCSolidColorLayerImpl.cpp:
1363         (WebCore::CCSolidColorLayerImpl::appendQuads):
1364         * platform/graphics/chromium/cc/CCSolidColorLayerImpl.h:
1365         (CCSolidColorLayerImpl):
1366         * platform/graphics/chromium/cc/CCTextureLayerImpl.cpp:
1367         (WebCore::CCTextureLayerImpl::appendQuads):
1368         * platform/graphics/chromium/cc/CCTextureLayerImpl.h:
1369         (CCTextureLayerImpl):
1370         * platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:
1371         (WebCore::CCTiledLayerImpl::appendQuads):
1372         * platform/graphics/chromium/cc/CCTiledLayerImpl.h:
1373         (CCTiledLayerImpl):
1374         * platform/graphics/chromium/cc/CCVideoLayerImpl.cpp:
1375         (WebCore::CCVideoLayerImpl::appendQuads):
1376         * platform/graphics/chromium/cc/CCVideoLayerImpl.h:
1377         (CCVideoLayerImpl):
1378
1379 2012-08-23  Mark Rowe  <mrowe@apple.com>
1380
1381         Remove some unneeded cruft from WebCore.xcodeproj.
1382
1383         * WebCore.xcodeproj/project.pbxproj:
1384
1385 2012-08-23  Mark Rowe  <mrowe@apple.com>
1386
1387         Make WebCore build with the latest version of clang.
1388
1389         Reviewed by Dan Bernstein.
1390
1391         * html/shadow/MediaControlRootElement.h: Remove m_textTrackDisplay as it is unused.
1392         * platform/audio/mac/AudioFileReaderMac.cpp:
1393         (WebCore::AudioFileReader::AudioFileReader): Remove m_filePath as it is unused.
1394         * platform/audio/mac/AudioFileReaderMac.h:
1395         (AudioFileReader): Ditto.
1396         * platform/graphics/ImageSource.h:
1397         (ImageSource): Guard m_alphaOption and m_gammaAndColorProfileOption with !USE(CG)
1398         as they're unused on platforms using CG.
1399         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
1400         (MediaPlayerPrivateAVFoundationObjC): Remove m_player as it is unused.
1401         * platform/graphics/cg/ImageSourceCG.cpp:
1402         (WebCore::ImageSource::ImageSource): Don't initialize the m_alphaOption and
1403         m_gammaAndColorProfileOption members since we never use them.
1404         * platform/graphics/mac/GraphicsContext3DMac.mm:
1405         (WebCore::GraphicsContext3DPrivate::GraphicsContext3DPrivate): Remove m_graphicsContext3D
1406         as it is unused.
1407
1408 2012-08-23  Alexandre Elias  <aelias@chromium.org>
1409
1410         [chromium] Rename LayerRendererChromium to GL-specific name
1411         https://bugs.webkit.org/show_bug.cgi?id=94835
1412
1413         Reviewed by James Robinson.
1414
1415         Over time, LayerRendererChromium has evolved to be a GL-specific
1416         subclass of CCRenderer that has no awareness of layers (as it operates
1417         only with drawQuads).
1418
1419         This patch renames LayerRendererChromium to CCRendererGL, replaces all
1420         instances of "layerRenderer" with just "renderer", and removes a
1421         few unnecessary includes of LayerRendererChromium.h.
1422
1423         No new tests (no-op refactoring).
1424
1425         * WebCore.gypi:
1426         * platform/graphics/chromium/Canvas2DLayerBridge.cpp:
1427         * platform/graphics/chromium/ContentLayerChromium.cpp:
1428         (WebCore::ContentLayerChromium::createTextureUpdaterIfNeeded):
1429         * platform/graphics/chromium/GeometryBinding.cpp:
1430         * platform/graphics/chromium/HeadsUpDisplayLayerChromium.cpp:
1431         (WebCore::HeadsUpDisplayLayerChromium::update):
1432         * platform/graphics/chromium/ImageLayerChromium.cpp:
1433         (WebCore::ImageLayerChromium::createTextureUpdaterIfNeeded):
1434         * platform/graphics/chromium/LayerTextureSubImage.cpp:
1435         * platform/graphics/chromium/ProgramBinding.cpp:
1436         * platform/graphics/chromium/RenderSurfaceChromium.h:
1437         (WebCore):
1438         * platform/graphics/chromium/ScrollbarLayerChromium.cpp:
1439         (WebCore::ScrollbarLayerChromium::createTextureUpdaterIfNeeded):
1440         * platform/graphics/chromium/TextureCopier.cpp:
1441         * platform/graphics/chromium/TiledLayerChromium.cpp:
1442         (WebCore::TiledLayerChromium::updateTileSizeAndTilingOption):
1443         * platform/graphics/chromium/cc/CCHeadsUpDisplayLayerImpl.cpp:
1444         * platform/graphics/chromium/cc/CCIOSurfaceLayerImpl.cpp:
1445         * platform/graphics/chromium/cc/CCLayerImpl.cpp:
1446         (WebCore::sortLayers):
1447         * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
1448         (WebCore::CCLayerTreeHost::CCLayerTreeHost):
1449         (WebCore::CCLayerTreeHost::initializeRenderer):
1450         (WebCore::CCLayerTreeHost::deleteContentsTexturesOnImplThread):
1451         (WebCore::CCLayerTreeHost::finishAllRendering):
1452         (WebCore::CCLayerTreeHost::rendererCapabilities):
1453         (WebCore::CCLayerTreeHost::initializeRendererIfNeeded):
1454         (WebCore::CCLayerTreeHost::updateLayers):
1455         * platform/graphics/chromium/cc/CCLayerTreeHost.h:
1456         (WebCore::RendererCapabilities::RendererCapabilities):
1457         (CCLayerTreeHost):
1458         * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
1459         (WebCore::CCLayerTreeHostImpl::canDraw):
1460         (WebCore::CCLayerTreeHostImpl::calculateRenderSurfaceLayerList):
1461         (WebCore::CCLayerTreeHostImpl::calculateRenderPasses):
1462         (WebCore::CCLayerTreeHostImpl::drawLayers):
1463         (WebCore::CCLayerTreeHostImpl::finishAllRendering):
1464         (WebCore::CCLayerTreeHostImpl::isContextLost):
1465         (WebCore::CCLayerTreeHostImpl::rendererCapabilities):
1466         (WebCore::CCLayerTreeHostImpl::swapBuffers):
1467         (WebCore::CCLayerTreeHostImpl::readback):
1468         (WebCore::CCLayerTreeHostImpl::setVisible):
1469         (WebCore::CCLayerTreeHostImpl::initializeRenderer):
1470         (WebCore::CCLayerTreeHostImpl::setViewportSize):
1471         (WebCore::CCLayerTreeHostImpl::ensureRenderSurfaceLayerList):
1472         * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
1473         (WebCore):
1474         (WebCore::CCLayerTreeHostImpl::renderer):
1475         (CCLayerTreeHostImpl):
1476         * platform/graphics/chromium/cc/CCPrioritizedTexture.cpp:
1477         * platform/graphics/chromium/cc/CCPrioritizedTextureManager.cpp:
1478         * platform/graphics/chromium/cc/CCPriorityCalculator.cpp:
1479         * platform/graphics/chromium/cc/CCProxy.h:
1480         (WebCore):
1481         (CCProxy):
1482         * platform/graphics/chromium/cc/CCRenderSurface.cpp:
1483         * platform/graphics/chromium/cc/CCRenderSurface.h:
1484         (WebCore):
1485         * platform/graphics/chromium/cc/CCRenderer.h:
1486         (CCRenderer):
1487         * platform/graphics/chromium/cc/CCRendererGL.cpp: Renamed from Source/WebCore/platform/graphics/chromium/LayerRendererChromium.cpp.
1488         (WebCore::CCRendererGL::create):
1489         (WebCore):
1490         (WebCore::CCRendererGL::CCRendererGL):
1491         (WebCore::CCRendererGL::initialize):
1492         (WebCore::CCRendererGL::~CCRendererGL):
1493         (WebCore::CCRendererGL::context):
1494         (WebCore::CCRendererGL::debugGLCall):
1495         (WebCore::CCRendererGL::setVisible):
1496         (WebCore::CCRendererGL::releaseRenderPassTextures):
1497         (WebCore::CCRendererGL::viewportChanged):
1498         (WebCore::CCRendererGL::clearFramebuffer):
1499         (WebCore::CCRendererGL::beginDrawingFrame):
1500         (WebCore::CCRendererGL::doNoOp):
1501         (WebCore::CCRendererGL::drawQuad):
1502         (WebCore::CCRendererGL::drawCheckerboardQuad):
1503         (WebCore::CCRendererGL::drawDebugBorderQuad):
1504         (WebCore::applyFilters):
1505         (WebCore::CCRendererGL::drawBackgroundFilters):
1506         (WebCore::CCRendererGL::drawRenderPassQuad):
1507         (WebCore::CCRendererGL::drawSolidColorQuad):
1508         (TileProgramUniforms):
1509         (WebCore::tileUniformLocation):
1510         (WebCore::CCRendererGL::drawTileQuad):
1511         (WebCore::CCRendererGL::drawYUVVideoQuad):
1512         (WebCore::CCRendererGL::drawStreamVideoQuad):
1513         (WebCore::TextureProgramBinding::set):
1514         (TextureProgramBinding):
1515         (WebCore::TexTransformTextureProgramBinding::set):
1516         (TexTransformTextureProgramBinding):
1517         (WebCore::CCRendererGL::drawTextureQuad):
1518         (WebCore::CCRendererGL::drawIOSurfaceQuad):
1519         (WebCore::CCRendererGL::finishDrawingFrame):
1520         (WebCore::CCRendererGL::toGLMatrix):
1521         (WebCore::CCRendererGL::setShaderFloatQuad):
1522         (WebCore::CCRendererGL::setShaderOpacity):
1523         (WebCore::CCRendererGL::drawQuadGeometry):
1524         (WebCore::CCRendererGL::copyTextureToFramebuffer):
1525         (WebCore::CCRendererGL::finish):
1526         (WebCore::CCRendererGL::swapBuffers):
1527         (WebCore::CCRendererGL::onSwapBuffersComplete):
1528         (WebCore::CCRendererGL::onMemoryAllocationChanged):
1529         (WebCore::CCRendererGL::onMemoryAllocationChangedOnImplThread):
1530         (WebCore::CCRendererGL::discardFramebuffer):
1531         (WebCore::CCRendererGL::ensureFramebuffer):
1532         (WebCore::CCRendererGL::onContextLost):
1533         (WebCore::CCRendererGL::getFramebufferPixels):
1534         (WebCore::CCRendererGL::getFramebufferTexture):
1535         (WebCore::CCRendererGL::useScopedTexture):
1536         (WebCore::CCRendererGL::bindFramebufferToOutputSurface):
1537         (WebCore::CCRendererGL::bindFramebufferToTexture):
1538         (WebCore::CCRendererGL::enableScissorTestRect):
1539         (WebCore::CCRendererGL::disableScissorTest):
1540         (WebCore::CCRendererGL::setDrawViewportSize):
1541         (WebCore::CCRendererGL::makeContextCurrent):
1542         (WebCore::CCRendererGL::initializeSharedObjects):
1543         (WebCore::CCRendererGL::tileCheckerboardProgram):
1544         (WebCore::CCRendererGL::solidColorProgram):
1545         (WebCore::CCRendererGL::renderPassProgram):
1546         (WebCore::CCRendererGL::renderPassProgramAA):
1547         (WebCore::CCRendererGL::renderPassMaskProgram):
1548         (WebCore::CCRendererGL::renderPassMaskProgramAA):
1549         (WebCore::CCRendererGL::tileProgram):
1550         (WebCore::CCRendererGL::tileProgramOpaque):
1551         (WebCore::CCRendererGL::tileProgramAA):
1552         (WebCore::CCRendererGL::tileProgramSwizzle):
1553         (WebCore::CCRendererGL::tileProgramSwizzleOpaque):
1554         (WebCore::CCRendererGL::tileProgramSwizzleAA):
1555         (WebCore::CCRendererGL::textureProgram):
1556         (WebCore::CCRendererGL::textureProgramFlip):
1557         (WebCore::CCRendererGL::textureIOSurfaceProgram):
1558         (WebCore::CCRendererGL::videoYUVProgram):
1559         (WebCore::CCRendererGL::videoStreamTextureProgram):
1560         (WebCore::CCRendererGL::cleanupSharedObjects):
1561         (WebCore::CCRendererGL::isContextLost):
1562         * platform/graphics/chromium/cc/CCRendererGL.h: Renamed from Source/WebCore/platform/graphics/chromium/LayerRendererChromium.h.
1563         (WebKit):
1564         (WebCore):
1565         (CCRendererGL):
1566         (WebCore::CCRendererGL::sharedGeometryQuad):
1567         (WebCore::CCRendererGL::sharedGeometry):
1568         (WebCore::CCRendererGL::isFramebufferDiscarded):
1569         * platform/graphics/chromium/cc/CCResourceProvider.cpp:
1570         * platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
1571         (WebCore::CCSingleThreadProxy::CCSingleThreadProxy):
1572         (WebCore::CCSingleThreadProxy::initializeRenderer):
1573         (WebCore::CCSingleThreadProxy::recreateContext):
1574         (WebCore::CCSingleThreadProxy::rendererCapabilities):
1575         (WebCore::CCSingleThreadProxy::doCommit):
1576         (WebCore::CCSingleThreadProxy::forceSerializeOnSwapBuffers):
1577         (WebCore::CCSingleThreadProxy::commitAndComposite):
1578         * platform/graphics/chromium/cc/CCSingleThreadProxy.h:
1579         (CCSingleThreadProxy):
1580         * platform/graphics/chromium/cc/CCSolidColorLayerImpl.h:
1581         * platform/graphics/chromium/cc/CCThreadProxy.cpp:
1582         (WebCore::CCThreadProxy::CCThreadProxy):
1583         (WebCore::CCThreadProxy::compositeAndReadback):
1584         (WebCore::CCThreadProxy::initializeRenderer):
1585         (WebCore::CCThreadProxy::recreateContext):
1586         (WebCore::CCThreadProxy::rendererCapabilities):
1587         (WebCore::CCThreadProxy::forceSerializeOnSwapBuffersOnImplThread):
1588         (WebCore::CCThreadProxy::beginFrame):
1589         (WebCore::CCThreadProxy::beginFrameCompleteOnImplThread):
1590         (WebCore::CCThreadProxy::scheduledActionDrawAndSwapInternal):
1591         (WebCore::CCThreadProxy::initializeRendererOnImplThread):
1592         (WebCore::CCThreadProxy::recreateContextOnImplThread):
1593         * platform/graphics/chromium/cc/CCThreadProxy.h:
1594         (CCThreadProxy):
1595
1596 2012-08-23  Shezan Baig  <shezbaig.wk@gmail.com>
1597
1598         Flexbox doesn't need to compute logical height for stretched items in row flow
1599         https://bugs.webkit.org/show_bug.cgi?id=94807
1600
1601         Reviewed by Tony Chang.
1602
1603         Change logicalHeightConstrainedByMinMax to
1604         constrainLogicalHeightByMinMax. The new method doesn't compute the
1605         MainOrPreferred logical height (that computation has been moved back to
1606         computeLogicalHeight). RenderFlexibleBox now just constrains the
1607         stretchedLogicalHeight by min/max.
1608
1609         No new tests. This is a cleanup of bug 94237.
1610
1611         * rendering/RenderBox.cpp:
1612         (WebCore::RenderBox::constrainLogicalHeightByMinMax): Instead of
1613         computing the MainOrPreferred logical height, just constrain the given
1614         logical height by MinSize and MaxSize.
1615         (WebCore::RenderBox::computeLogicalHeight): Compute the MainOrPreferred
1616         logical height before constraining by min/max.
1617         * rendering/RenderBox.h:
1618         (RenderBox):
1619         * rendering/RenderFlexibleBox.cpp:
1620         (WebCore::RenderFlexibleBox::applyStretchAlignmentToChild): Use
1621         constrainLogicalHeightByMinMax to constrain the stretchedLogicalHeight.
1622
1623 2012-08-23  Adam Barth  <abarth@webkit.org>
1624
1625         [V8] V8ScriptInstance is much more complicated than necessary
1626         https://bugs.webkit.org/show_bug.cgi?id=94785
1627
1628         Reviewed by Kentaro Hara.
1629
1630         V8ScriptInstance just needs to be a one-line wrapper around OwnHandle.
1631
1632         * bindings/v8/OwnHandle.h:
1633         (WebCore::OwnHandle::get):
1634         * bindings/v8/ScriptInstance.cpp:
1635         (WebCore::V8ScriptInstance::V8ScriptInstance):
1636         (WebCore::V8ScriptInstance::~V8ScriptInstance):
1637         (WebCore::V8ScriptInstance::instance):
1638         * bindings/v8/ScriptInstance.h:
1639         (WebCore::V8ScriptInstance::create):
1640         (V8ScriptInstance):
1641
1642 2012-08-23  Christophe Dumez  <christophe.dumez@intel.com>
1643
1644         Serialization of JavaScript values does not appear to respect new HTML5 Structured Clone semantics
1645         https://bugs.webkit.org/show_bug.cgi?id=65292
1646
1647         Reviewed by Oliver Hunt.
1648
1649         JSC now correctly serialize Boolean, Number and String objects as per
1650         the structured clone algorithm specification. This patch reduces the
1651         delta with the V8 implementation of SerializedScriptValue.
1652
1653         No new tests, already tested by fast/dom/Window/window-postmessage-clone.html
1654
1655         * bindings/js/SerializedScriptValue.cpp:
1656         (WebCore):
1657         (WebCore::CloneSerializer::dumpStringObject):
1658         (CloneSerializer):
1659         (WebCore::CloneSerializer::dumpIfTerminal):
1660         (WebCore::CloneDeserializer::readTerminal):
1661
1662 2012-08-23  Joshua Bell  <jsbell@chromium.org>
1663
1664         IndexedDB: Move onSuccess(IDBDatabaseBackendInterface) to IDBOpenDBRequest
1665         https://bugs.webkit.org/show_bug.cgi?id=94757
1666
1667         Reviewed by Tony Chang.
1668
1669         Move the implementation of IDBCallbacks::onSuccess(IDBDatabaseBackendInterface)
1670         from IDBRequest to the new IDBOpenDBRequest, which is the only request type that
1671         should be receiving that callback.
1672
1673         No new tests - no functional changes.
1674
1675         * Modules/indexeddb/IDBCallbacks.h:
1676         (IDBCallbacks):
1677         (WebCore::IDBCallbacks::onSuccess):
1678         * Modules/indexeddb/IDBOpenDBRequest.cpp:
1679         (WebCore::IDBOpenDBRequest::onUpgradeNeeded):
1680         (WebCore::IDBOpenDBRequest::onSuccess):
1681         (WebCore):
1682         * Modules/indexeddb/IDBOpenDBRequest.h:
1683         (IDBOpenDBRequest):
1684         * Modules/indexeddb/IDBRequest.cpp:
1685         * Modules/indexeddb/IDBRequest.h:
1686
1687 2012-08-23  Andrei Onea  <onea@adobe.com>
1688
1689         [CSSRegions]Crash when moving anonymous block children inside a named flow
1690         https://bugs.webkit.org/show_bug.cgi?id=90865
1691
1692         Reviewed by Abhishek Arya.
1693
1694         When an anonymous block's children are detached in RenderBlock::collapseAnonymousBoxChild, the reference
1695         to their enclosingRenderFlowThread is lost and causes a crash in RenderObject::willBeRemovedFromTree.
1696         Because of this, we now maintain the enclosingRenderFlowThread during the whole lifetime of the
1697         RenderBlock::collapseAnonymousBoxChild function, using a CurrentRenderFlowThreadMaintainer local.
1698         
1699
1700         Test: fast/regions/move-anonymous-block-inside-named-flow-crash.html
1701
1702         * rendering/RenderBlock.cpp:
1703         (WebCore::RenderBlock::collapseAnonymousBoxChild):
1704         * rendering/RenderFlowThread.cpp:
1705         (WebCore::CurrentRenderFlowThreadMaintainer::CurrentRenderFlowThreadMaintainer):
1706         (WebCore):
1707         (WebCore::CurrentRenderFlowThreadMaintainer::~CurrentRenderFlowThreadMaintainer):
1708         Moved CurrentRenderFlowThreadMaintaner declaration from .cpp to .h, so that we can access it from
1709         RenderBlock::collapseAnonymousBoxChild.
1710         * rendering/RenderFlowThread.h:
1711         (CurrentRenderFlowThreadMaintainer):
1712         (WebCore):
1713         * rendering/RenderObject.cpp:
1714         (WebCore::RenderObject::willBeRemovedFromTree):
1715
1716 2012-08-23  Kevin Ollivier  <kevino@theolliviers.com>
1717
1718         [wx] Unreviewed build fix. Add wx to the list of platforms that use CoreText
1719         APIs on Mac.
1720
1721         * platform/graphics/SimpleFontData.h:
1722         (SimpleFontData):
1723
1724 2012-08-23  Kevin Ollivier  <kevino@theolliviers.com>
1725
1726         [wx] Unreviewed build fix. Don't rely on implicit casts, explicitly use the
1727         Cursor constructor that takes a platform cursor for creating native cursors.
1728
1729         * platform/wx/CursorWx.cpp:
1730         (WebCore::pointerCursor):
1731         (WebCore::crossCursor):
1732         (WebCore::handCursor):
1733         (WebCore::iBeamCursor):
1734         (WebCore::waitCursor):
1735         (WebCore::helpCursor):
1736         (WebCore::eastResizeCursor):
1737         (WebCore::northResizeCursor):
1738         (WebCore::northEastResizeCursor):
1739         (WebCore::northWestResizeCursor):
1740         (WebCore::columnResizeCursor):
1741         (WebCore::rowResizeCursor):
1742         (WebCore::notAllowedCursor):
1743         (WebCore::zoomInCursor):
1744         (WebCore::moveCursor):
1745
1746 2012-08-23  Bruno de Oliveira Abinader  <bruno.abinader@basyskom.com>
1747
1748         Remove redundant check for negative values when using WebCore::Color::alpha()
1749         https://bugs.webkit.org/show_bug.cgi?id=94811
1750
1751         Reviewed by Eric Seidel.
1752
1753         Though alpha() returns a signed value (int), its value is stored on an unsigned
1754         typedef (RGBA32) and is safeguarded by alphaChannel() that its value never goes
1755         beyond 255, so no integer overflow, thus we can safely remove redundant check
1756         for negative values while using it.
1757
1758         This change does not affect behavior, so no new tests needed.
1759
1760         * platform/graphics/Image.cpp:
1761         (WebCore::Image::fillWithSolidColor):
1762         * rendering/RenderBoxModelObject.cpp:
1763         (WebCore::RenderBoxModelObject::paintFillLayerExtended):
1764         (WebCore::RenderBoxModelObject::boxShadowShouldBeAppliedToBackground): Using hasAlpha() for readibility.
1765         * rendering/RenderView.cpp:
1766         (WebCore::RenderView::paintBoxDecorations):
1767         * rendering/style/RenderStyle.h:
1768
1769 2012-08-23  Zan Dobersek  <zandobersek@gmail.com>
1770
1771         [Gtk] Move feature defines processing into a GNUmakefile that's simple to autogenerate
1772         https://bugs.webkit.org/show_bug.cgi?id=87127
1773
1774         Reviewed by Martin Robinson.
1775
1776         List all the feature defines with their default value in
1777         GNUmakefile.features.am and append them to the 'feature_defines_defaults'.
1778         variable.
1779
1780         In GNUmakefile.am, include the GNUmakefile.features.am. When checking the
1781         AM conditionals for feature-enabling, append the appropriate define to
1782         'feature_defines_overrides'.
1783
1784         After all such overrides are performed, append the proper define (of which
1785         value was possibly overridden) for each feature to the 'feature_defines'
1786         variable. Finally, append all these defines to webcore_cppflags in the form
1787         of macros for preprocessing.
1788
1789         No new tests - no new functionality.
1790
1791         * GNUmakefile.am:
1792         * GNUmakefile.features.am: Added.
1793
1794 2012-08-23  Adam Barth  <abarth@webkit.org>
1795
1796         [V8] ScheduledAction is ugly and needs a cleanup
1797         https://bugs.webkit.org/show_bug.cgi?id=94784
1798
1799         Reviewed by Eric Seidel.
1800
1801         This patch updates ScheduledAction to use modern WebKit machinery, like
1802         OwnHandle and Vector.
1803
1804         * bindings/v8/OwnHandle.h:
1805         (OwnHandle):
1806         * bindings/v8/ScheduledAction.cpp:
1807         (WebCore::ScheduledAction::ScheduledAction):
1808         (WebCore::ScheduledAction::~ScheduledAction):
1809         (WebCore::ScheduledAction::execute):
1810         * bindings/v8/ScheduledAction.h:
1811         (WebCore):
1812         (ScheduledAction):
1813         (WebCore::ScheduledAction::ScheduledAction):
1814
1815 2012-08-23  Andrey Kosyakov  <caseq@chromium.org>
1816
1817         Web Inspector: dblclick on Timeline overview no longer selects entire timeline range
1818         https://bugs.webkit.org/show_bug.cgi?id=94826
1819
1820         Reviewed by Vsevolod Vlasov.
1821
1822         Only install a glass pane for drag-n-drop upon first mouseout event -- otherwise, glass pane
1823         will interfere with double clicks.
1824
1825         * inspector/front-end/UIUtils.js:
1826         (WebInspector._elementDragStart.onMouseOut):
1827         (WebInspector._elementDragStart):
1828         (WebInspector._elementDragEnd):
1829
1830 2012-08-23  Adrienne Walker  <enne@google.com>
1831
1832         Convert ScrollableArea ASSERT_NOT_REACHED virtuals
1833         https://bugs.webkit.org/show_bug.cgi?id=93306
1834
1835         Reviewed by Darin Adler.
1836
1837         ASSERT_NOT_REACHED is a bad way to make sure that a virtual function
1838         gets an override, because it only fails at run-time in debug builds.
1839
1840         To fix this, convert the virtuals in ScrollableArea that have
1841         ASSERT_NOT_REACHED to be either pure virtual or implemented directly
1842         in ScrollableArea. Add implementations where necessary to make derived
1843         classes concrete.
1844
1845         Additionally, consistently add OVERRIDE for virtual functions in
1846         derived classes that override ScrollableArea methods.
1847
1848         * WebCore.exp.in:
1849         * page/FrameView.h:
1850         (FrameView):
1851         * platform/ScrollView.h:
1852         (ScrollView):
1853         * platform/ScrollableArea.cpp:
1854         (WebCore::ScrollableArea::scrollPosition):
1855         (WebCore):
1856         (WebCore::ScrollableArea::minimumScrollPosition):
1857         (WebCore::ScrollableArea::maximumScrollPosition):
1858         (WebCore::ScrollableArea::visibleContentRect):
1859         * platform/ScrollableArea.h:
1860         (ScrollableArea):
1861         (WebCore::ScrollableArea::overhangAmount):
1862         * platform/chromium/FramelessScrollView.cpp:
1863         (WebCore::FramelessScrollView::isOnActivePage):
1864         (WebCore):
1865         (WebCore::FramelessScrollView::scrollableAreaBoundingBox):
1866         * platform/chromium/FramelessScrollView.h:
1867         (FramelessScrollView):
1868         * platform/win/PopupMenuWin.cpp:
1869         (WebCore::PopupMenuWin::visibleHeight):
1870         (WebCore):
1871         (WebCore::PopupMenuWin::visibleWidth):
1872         (WebCore::PopupMenuWin::contentsSize):
1873         (WebCore::PopupMenuWin::isOnActivePage):
1874         (WebCore::PopupMenuWin::scrollableAreaBoundingBox):
1875         * platform/win/PopupMenuWin.h:
1876         (PopupMenuWin):
1877         * rendering/RenderListBox.cpp:
1878         * rendering/RenderListBox.h:
1879         (RenderListBox):
1880
1881 2012-08-23  Alexander Shalamov  <alexander.shalamov@intel.com>
1882
1883         getComputedStyle returns wrong value for CSS3 2D transformations
1884         https://bugs.webkit.org/show_bug.cgi?id=94211
1885
1886         Reviewed by Simon Fraser.
1887
1888         When computed style is calculated for CSS3 2D transformation, content
1889         box size is used. According to W3C specification, object's bounding
1890         box should be used. This patch fixes transformation matrix calculation.
1891
1892         Layout tests getComputedStyle-transform.html and computed-style-origin.html
1893         were modified to test changes.
1894
1895         * css/CSSComputedStyleDeclaration.cpp:
1896         (WebCore::computedTransform):
1897         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1898         (WebCore::pixelSnappedSizingBox): Removed unused method
1899
1900 2012-08-23  Takashi Sakamoto  <tasak@google.com>
1901
1902         Distributed nodes should not share styles.
1903         https://bugs.webkit.org/show_bug.cgi?id=90661
1904
1905         Reviewed by Hajime Morita.
1906
1907         styleForElement tries to use previous sibling's style for distributed
1908         nodes. However distributed nodes are children of a shadow host, but
1909         the nodes are not siblings as the result of distribution.
1910         The spec is:
1911         http://dvcs.w3.org/hg/webcomponents/raw-file/tip/spec/shadow/index.html#shadow-dom-subtrees
1912         So sharing previous sibling's style should be disabled for distrbuted
1913         nodes.
1914
1915         Test: fast/dom/shadow/style-of-distributed-node.html
1916
1917         * css/StyleResolver.cpp:
1918         (WebCore::StyleResolver::StyleResolver):
1919         Initialized m_distributedToInsertionPoint. Its initial value is false.
1920         (WebCore::StyleResolver::initForStyleResolve):
1921         After invoking NodeRenderingContext, if the context returns any
1922         insertion point, set m_distributedToInsertionPoint to be true.
1923         Otherwise, false. The value is used in styleForElement.
1924         (WebCore::StyleResolver::styleForElement):
1925         If m_distributedToInsertionPoint is true, disable local sibling style
1926         cache.
1927         * css/StyleResolver.h:
1928         (StyleResolver):
1929         Added a new member variable, m_distributedToInsertionPoint.
1930         The variable keeps whether the m_element is distributed to an
1931         insertion point.
1932
1933 2012-08-23  John Griggs  <jgriggs@rim.com>
1934
1935                 Replace access ot HTMLMediaElement from MediaPlayerPrivateBlackBerry with methods in MediaPlayerClient - updated with notes from initial reviews.  https://bugs.webkit.org/show_bug.cgi?id=84291
1936
1937                 Reviewed by Eric Carlson.
1938
1939                 Code standard compliance - no functional change, so no new tests required.
1940
1941                 * html/HTMLMediaElement.cpp:
1942                 (WebCore::HTMLMediaElement::mediaPlayerExitFullscreen):
1943                 (WebCore):
1944                 (WebCore::HTMLMediaElement::mediaPlayerIsVideo):
1945                 (WebCore::HTMLMediaElement::mediaPlayerContentBoxRect):
1946                 (WebCore::HTMLMediaElement::mediaPlayerSetSize):
1947                 (WebCore::HTMLMediaElement::mediaPlayerPause):
1948                 (WebCore::HTMLMediaElement::mediaPlayerPlay):
1949                 (WebCore::HTMLMediaElement::mediaPlayerIsPaused):
1950                 (WebCore::HTMLMediaElement::mediaPlayerHostWindow):
1951                 (WebCore::HTMLMediaElement::mediaPlayerWindowClipRect):
1952                 * html/HTMLMediaElement.h:
1953                 (HTMLMediaElement):
1954                 * platform/graphics/MediaPlayer.h:
1955                 (WebCore):
1956                 (WebCore::MediaPlayerClient::mediaPlayerExitFullscreen):
1957                 (WebCore::MediaPlayerClient::mediaPlayerIsVideo):
1958                 (WebCore::MediaPlayerClient::mediaPlayerContentBoxRect):
1959                 (WebCore::MediaPlayerClient::mediaPlayerSetSize):
1960                 (WebCore::MediaPlayerClient::mediaPlayerPause):
1961                 (WebCore::MediaPlayerClient::mediaPlayerPlay):
1962                 (WebCore::MediaPlayerClient::mediaPlayerIsPaused):
1963                 (WebCore::MediaPlayerClient::mediaPlayerHostWindow):
1964                 (WebCore::MediaPlayerClient::mediaPlayerWindowClipRect):
1965                 * platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.cpp:
1966                 (WebCore::MediaPlayerPrivate::~MediaPlayerPrivate):
1967                 (WebCore::MediaPlayerPrivate::load):
1968                 (WebCore::MediaPlayerPrivate::paint):
1969                 (WebCore::MediaPlayerPrivate::resizeSourceDimensions):
1970                 (WebCore::MediaPlayerPrivate::updateStates):
1971                 (WebCore::MediaPlayerPrivate::onPauseStateChanged):
1972                 (WebCore::MediaPlayerPrivate::onPlayNotified):
1973                 (WebCore::MediaPlayerPrivate::onPauseNotified):
1974                 (WebCore::MediaPlayerPrivate::onAuthenticationNeeded):
1975                 (WebCore::MediaPlayerPrivate::showErrorDialog):
1976                 (WebCore::MediaPlayerPrivate::platformWindow):
1977                 (WebCore::MediaPlayerPrivate::isElementPaused):
1978                 (WebCore::MediaPlayerPrivate::isTabVisible):
1979                 * platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.h:
1980                 (MediaPlayerPrivate):
1981
1982 2012-08-23  John Mellor  <johnme@chromium.org>
1983
1984         Text Autosizing: Multiply large fonts less, as they are already more legible.
1985         https://bugs.webkit.org/show_bug.cgi?id=94227
1986
1987         Reviewed by Kenneth Rohde Christiansen.
1988
1989         Rather than uniformly multiplying font sizes by the multiplier (derived
1990         from the width of the block), we should multiply fonts that are already
1991         large less, since they are already more legible hence there is less need
1992         for them to grow.
1993
1994         However it is still important to maintain differentiation between text
1995         that the author specified to be of different sizes.
1996
1997         This algorithm multiplies text by the multiplier up until a predefined
1998         "pleasant" font size; beyond that the computedSize goes up with
1999         specifiedSize but at a gradient of less than 1 in order to gradually
2000         fade out the size increase; finally for very large specifiedSizes the
2001         computedSize will be the same as the specifiedSize.
2002
2003         For further details, including a graph, please see the bug report.
2004
2005         Test: fast/text-autosizing/various-font-sizes.html
2006
2007         * rendering/TextAutosizer.cpp:
2008         (WebCore::TextAutosizer::computeAutosizedFontSize):
2009
2010             Implements the custom multiplication. See comment for details.
2011
2012         * rendering/style/RenderStyle.cpp:
2013         (WebCore::RenderStyle::lineHeight):
2014
2015             Use computeAutosizedFontSize instead of directly multiplying.
2016
2017         (WebCore::RenderStyle::setFontSize):
2018
2019             Use computeAutosizedFontSize instead of directly multiplying.
2020
2021 2012-08-23  Emil A Eklund  <eae@chromium.org>
2022
2023         Remove dependency on RenderStyle from FractionalLayoutBoxExtent and LayoutBox
2024         https://bugs.webkit.org/show_bug.cgi?id=94146
2025
2026         Reviewed by Eric Seidel.
2027
2028         FractionalLayoutBoxExtent and LayoutBox currently have a dependency on
2029         RenderStyle to resolve writing mode and text direction.
2030         This is undesirable and breaks encapsulation.
2031
2032         Change FractionalLayoutBoxExtent and LengthBox to take a writing mode
2033         parameter, and text direction as needed, instead of a pointer to a
2034         RenderStyle object.
2035
2036         No new tests, no change in functionality.
2037
2038         * WebCore.gypi:
2039         * WebCore.vcproj/WebCore.vcproj:
2040         * WebCore.xcodeproj/project.pbxproj:
2041         Add new WritingMode.h file.
2042         
2043         * css/CSSPrimitiveValueMappings.h:
2044         * css/CSSProperty.h:
2045         * css/CSSToStyleMap.h:
2046         Change includes as needed.
2047
2048         * platform/LengthBox.h:
2049         * platform/LengthBox.cpp:
2050         (WebCore::LengthBox::logicalLeft):
2051         (WebCore::LengthBox::logicalRight):
2052         (WebCore::LengthBox::before):
2053         (WebCore::LengthBox::after):
2054         Change methods to take a WirtingMode parameter instead of a RenderStyle pointer.
2055         
2056         (WebCore::LengthBox::start):
2057         (WebCore::LengthBox::end):
2058         Change methods to take WritingMode and TextDirection parameters instead of a RenderStyle pointer.
2059         
2060         * platform/graphics/FractionalLayoutBoxExtent.h:
2061         * platform/graphics/FractionalLayoutBoxExtent.cpp:
2062         (WebCore::FractionalLayoutBoxExtent::logicalTop):
2063         (WebCore::FractionalLayoutBoxExtent::logicalBottom):
2064         (WebCore::FractionalLayoutBoxExtent::logicalLeft):
2065         (WebCore::FractionalLayoutBoxExtent::logicalRight):
2066         (WebCore::FractionalLayoutBoxExtent::before):
2067         (WebCore::FractionalLayoutBoxExtent::after):
2068         (WebCore::FractionalLayoutBoxExtent::setBefore):
2069         (WebCore::FractionalLayoutBoxExtent::setAfter):
2070         (WebCore::FractionalLayoutBoxExtent::mutableLogicalLeft):
2071         (WebCore::FractionalLayoutBoxExtent::mutableLogicalRight):
2072         (WebCore::FractionalLayoutBoxExtent::mutableBefore):
2073         (WebCore::FractionalLayoutBoxExtent::mutableAfter):
2074         Change methods to take a WritingMode parameter instead of a RenderStyle pointer.
2075
2076         (WebCore::FractionalLayoutBoxExtent::start):
2077         (WebCore::FractionalLayoutBoxExtent::end):
2078         (WebCore::FractionalLayoutBoxExtent::setStart):
2079         (WebCore::FractionalLayoutBoxExtent::setEnd):
2080         Change methods to take WritingMode and TextDirection parameters instead of a RenderStyle pointer.
2081
2082         * platform/text/TextDirection.h:
2083         (WebCore::isLeftToRightDirection):
2084         Add convenience method.
2085         
2086         * platform/text/WritingMode.h: Added.
2087         Move WritingMode enum from RenderStyleConstants to new file.
2088         
2089         (WebCore::isHorizontalWritingMode):
2090         (WebCore::isFlippedLinesWritingMode):
2091         (WebCore::isFlippedBlocksWritingMode):
2092         Add convenience methods for working with writing modes.
2093         
2094         * rendering/InlineFlowBox.cpp:
2095         * rendering/RenderBox.cpp:
2096         * rendering/RenderBox.h:
2097         * rendering/style/RenderStyle.h:
2098         Update calls to FractionalLayoutBoxExtent/LengthBox to pass WritingMode/
2099         TextDirection as needed.
2100
2101         * rendering/style/RenderStyleConstants.h:
2102         Remove WritingMode enum as it is now in a dedicated file.
2103
2104 2012-08-23  Pavel Feldman  <pfeldman@chromium.org>
2105
2106         Web Inspector: introduce canFilter on panel (otherwise we check for function existence).
2107         https://bugs.webkit.org/show_bug.cgi?id=94820
2108
2109         Reviewed by Alexander Pavlov.
2110
2111         Drive-by: fix for network panel sorting null pointer access.
2112
2113         * inspector/front-end/NetworkPanel.js:
2114         (WebInspector.NetworkPanel.prototype.performSearch):
2115         (WebInspector.NetworkPanel.prototype.canFilter):
2116         * inspector/front-end/Panel.js:
2117         (WebInspector.Panel.prototype.replaceAllWith):
2118         (WebInspector.Panel.prototype.canFilter):
2119         (WebInspector.Panel.prototype.performFilter):
2120         * inspector/front-end/SearchController.js:
2121         (WebInspector.SearchController.prototype._updateFilterVisibility):
2122         (WebInspector.SearchController.prototype._performFilter):
2123
2124 2012-08-23  Pavel Feldman  <pfeldman@chromium.org>
2125
2126         Web Inspector: introduce TimelineGrid.Calculator interface.
2127         https://bugs.webkit.org/show_bug.cgi?id=94819
2128
2129         Reviewed by Alexander Pavlov.
2130
2131         This way we can compile TimelineGrid properly.
2132
2133         * inspector/front-end/MemoryStatistics.js:
2134         (WebInspector.MemoryStatistics.prototype._calculateVisibleIndexes):
2135         * inspector/front-end/TimelineGrid.js:
2136         (WebInspector.TimelineGrid.prototype.updateDividers):
2137         (WebInspector.TimelineGrid.Calculator):
2138         (WebInspector.TimelineGrid.Calculator.prototype.computePosition):
2139         (WebInspector.TimelineGrid.Calculator.prototype.formatTime):
2140         (WebInspector.TimelineGrid.Calculator.prototype.minimumBoundary):
2141         (WebInspector.TimelineGrid.Calculator.prototype.maximumBoundary):
2142         (WebInspector.TimelineGrid.Calculator.prototype.boundarySpan):
2143         * inspector/front-end/TimelineOverviewPane.js:
2144         (WebInspector.TimelineOverviewCalculator.prototype.computePosition):
2145         (WebInspector.TimelineOverviewCalculator.prototype.computeBarGraphPercentages):
2146         (WebInspector.TimelineOverviewCalculator.prototype.setWindow):
2147         (WebInspector.TimelineOverviewCalculator.prototype.formatTime):
2148         (WebInspector.TimelineOverviewCalculator.prototype.maximumBoundary):
2149         (WebInspector.TimelineOverviewCalculator.prototype.minimumBoundary):
2150         (WebInspector.TimelineOverviewCalculator.prototype.boundarySpan):
2151         * inspector/front-end/TimelinePanel.js:
2152         (WebInspector.TimelinePanel.prototype._shouldShowFrames):
2153         (WebInspector.TimelineCalculator.prototype.computePosition):
2154         (WebInspector.TimelineCalculator.prototype.computeBarGraphPercentages):
2155         (WebInspector.TimelineCalculator.prototype.setWindow):
2156         (WebInspector.TimelineCalculator.prototype.formatTime):
2157         (WebInspector.TimelineCalculator.prototype.maximumBoundary):
2158         (WebInspector.TimelineCalculator.prototype.minimumBoundary):
2159         (WebInspector.TimelineCalculator.prototype.boundarySpan):
2160
2161 2012-08-23  David Reveman  <reveman@chromium.org>
2162
2163         [Chromium] Unnecessary delay when starting to update resources with an inactive vsync timer.
2164         https://bugs.webkit.org/show_bug.cgi?id=94719
2165
2166         Reviewed by James Robinson.
2167
2168         Replace nextTickTime() with nextTickTimeIfActivated() and return
2169         appropriate value when timer is inactive.
2170
2171         No new tests.
2172
2173         * platform/graphics/chromium/cc/CCDelayBasedTimeSource.cpp:
2174         (WebCore::CCDelayBasedTimeSource::nextTickTimeIfActivated):
2175         (WebCore::CCDelayBasedTimeSource::nextTickTarget):
2176         (WebCore):
2177         (WebCore::CCDelayBasedTimeSource::postNextTickTask):
2178         * platform/graphics/chromium/cc/CCDelayBasedTimeSource.h:
2179         * platform/graphics/chromium/cc/CCFrameRateController.cpp:
2180         (WebCore::CCFrameRateController::nextTickTimeIfActivated):
2181         * platform/graphics/chromium/cc/CCFrameRateController.h:
2182         (CCFrameRateController):
2183         * platform/graphics/chromium/cc/CCScheduler.cpp:
2184         (WebCore::CCScheduler::processScheduledActions):
2185         * platform/graphics/chromium/cc/CCTimeSource.h:
2186         (CCTimeSource):
2187
2188 2012-08-23  Pavel Feldman  <pfeldman@chromium.org>
2189
2190         Web Inspector: make treeoutline.js compiler-friendly
2191         https://bugs.webkit.org/show_bug.cgi?id=94818
2192
2193         Reviewed by Alexander Pavlov.
2194
2195         This change declares base methods on TreeElement so that we did not need to check for their existence.
2196
2197         * inspector/front-end/AdvancedSearchController.js:
2198         (WebInspector.FileBasedSearchResultsPane.prototype._appendShowMoreMatchesElement):
2199         (WebInspector.FileBasedSearchResultsPane.prototype._addFileTreeElement):
2200         * inspector/front-end/ElementsTreeOutline.js:
2201         (WebInspector.ElementsTreeElement.prototype.onselect):
2202         * inspector/front-end/SidebarPane.js:
2203         (WebInspector.SidebarPane.prototype.expand):
2204         (WebInspector.SidebarPane.prototype.onexpand):
2205         (WebInspector.SidebarPane.prototype.collapse):
2206         * inspector/front-end/treeoutline.js:
2207         (TreeOutline.prototype._treeKeyDown):
2208         (TreeOutline.prototype._searchInputKeyDown):
2209         (TreeElement.prototype._fireDidChange):
2210         (TreeElement.prototype._attach):
2211         (TreeElement.treeElementDoubleClicked):
2212         (TreeElement.prototype.collapse):
2213         (TreeElement.prototype.expand):
2214         (TreeElement.prototype.reveal):
2215         (TreeElement.prototype.select):
2216         (TreeElement.prototype.deselect):
2217         (TreeElement.prototype.onpopulate):
2218         (TreeElement.prototype.onenter):
2219         (TreeElement.prototype.ondelete):
2220         (TreeElement.prototype.onspace):
2221         (TreeElement.prototype.onattach):
2222         (TreeElement.prototype.onexpand):
2223         (TreeElement.prototype.oncollapse):
2224         (TreeElement.prototype.ondblclick):
2225         (TreeElement.prototype.onreveal):
2226         (TreeElement.prototype.onselect):
2227
2228 2012-08-23  Yury Semikhatsky  <yurys@chromium.org>
2229
2230         Web Inspector: use temporary directory for modules generated by compile-front-end.py
2231         https://bugs.webkit.org/show_bug.cgi?id=94804
2232
2233         Reviewed by Pavel Feldman.
2234
2235         Create temporary directory for generated js modules and remove the directory
2236         after the compilation.
2237
2238         * inspector/compile-front-end.py:
2239
2240 2012-08-23  Simon Hausmann  <simon.hausmann@nokia.com>
2241
2242         [Qt] Fix make install on Windows
2243         https://bugs.webkit.org/show_bug.cgi?id=94816
2244
2245         Reviewed by Laszlo Gombos.
2246
2247         This old left-over rule for Windows to add dlltarget to INSTALLS caused
2248         various bugs: WebCore's Makefile had an actual install target that
2249         tried to install the WebCore static library and it also screwed up
2250         api.pri's install rule by overriding what is usually set up for qt
2251         modules, i.e. the install path was missing INSTALL_ROOT. We don't need
2252         these rules at all, the default qmake features take care of setting up
2253         target install rules accordingly.
2254
2255         * WebCore.pri:
2256
2257 2012-08-23  Pavel Feldman  <pfeldman@chromium.org>
2258
2259         Web Inspector: extract ParsedURL into a separate file.
2260         https://bugs.webkit.org/show_bug.cgi?id=94817
2261
2262         Reviewed by Alexander Pavlov.
2263
2264         * WebCore.gypi:
2265         * WebCore.vcproj/WebCore.vcproj:
2266         * inspector/compile-front-end.py:
2267         * inspector/front-end/AuditRules.js:
2268         (WebInspector.AuditRules.ImageDimensionsRule.prototype.doRun):
2269         (WebInspector.AuditRules.CssInHeadRule.prototype.doRun.externalStylesheetsReceived):
2270         (WebInspector.AuditRules.StylesScriptsOrderRule.prototype.doRun.cssBeforeInlineReceived):
2271         * inspector/front-end/DefaultTextEditor.js:
2272         (WebInspector.TextEditorMainPanel.prototype._rewriteHref):
2273         * inspector/front-end/ParsedURL.js: Added.
2274         (WebInspector.ParsedURL):
2275         (WebInspector.ParsedURL.completeURL):
2276         (WebInspector.ParsedURL.prototype.get displayName):
2277         (String.prototype.asParsedURL):
2278         * inspector/front-end/ResourceUtils.js:
2279         (WebInspector.resourceURLForRelatedNode):
2280         * inspector/front-end/StylesSidebarPane.js:
2281         (WebInspector.StylePropertyTreeElement.prototype.updateTitle.linkifyURL):
2282         * inspector/front-end/WebKit.qrc:
2283         * inspector/front-end/inspector.html:
2284
2285 2012-08-23  Pavel Feldman  <pfeldman@chromium.org>
2286
2287         Web Inspector: register context menu providers for lazily loaded panels.
2288         https://bugs.webkit.org/show_bug.cgi?id=94812
2289
2290         Reviewed by Alexander Pavlov.
2291
2292         - Panel descriptors now register providers that lazily load panels on demand.
2293         - Removed custom profiles context provider infrastructure in favor of generic one.
2294
2295         * WebCore.gypi:
2296         * WebCore.vcproj/WebCore.vcproj:
2297         * inspector/compile-front-end.py:
2298         * inspector/front-end/NetworkPanel.js:
2299         (WebInspector.NetworkPanel):
2300         * inspector/front-end/NetworkPanelDescriptor.js: Added.
2301         (WebInspector.NetworkPanelDescriptor):
2302         (WebInspector.NetworkPanelDescriptor.prototype.appendApplicableItems):
2303         * inspector/front-end/ObjectPropertiesSection.js:
2304         (WebInspector.ObjectPropertiesSection.prototype._contextMenuEventFired):
2305         * inspector/front-end/ProfilesPanel.js:
2306         (WebInspector.ProfilesPanel):
2307         (WebInspector.ProfilesPanel.prototype._reportHeapSnapshotProgress):
2308         (WebInspector.ProfilesPanel.prototype.appendApplicableItems.didReceiveHeapObjectId):
2309         (WebInspector.ProfilesPanel.prototype.appendApplicableItems):
2310         * inspector/front-end/ScriptsPanel.js:
2311         (WebInspector.ScriptsPanel):
2312         * inspector/front-end/ScriptsPanelDescriptor.js: Added.
2313         (WebInspector.ScriptsPanelDescriptor):
2314         (WebInspector.ScriptsPanelDescriptor.prototype.appendApplicableItems):
2315         * inspector/front-end/WebKit.qrc:
2316         * inspector/front-end/inspector.html:
2317         * inspector/front-end/inspector.js:
2318         (WebInspector._panelDescriptors):
2319
2320 2012-08-23  Carlos Garcia Campos  <cgarcia@igalia.com>
2321
2322         Unreviewed. Fix make distcheck.
2323
2324         * GNUmakefile.am: Add idl files in Modules/quota to EXTRA_DIST.
2325         * GNUmakefile.list.am: Add missing files to compilation.
2326
2327 2012-08-23  Carlos Garcia Campos  <cgarcia@igalia.com>
2328
2329         REGRESSION(r126306): it broke the plugin process
2330         https://bugs.webkit.org/show_bug.cgi?id=94797
2331
2332         Reviewed by Xan Lopez.
2333
2334         * GNUmakefile.am:
2335         * GNUmakefile.list.am:
2336
2337 2012-08-23  Simon Hausmann  <simon.hausmann@nokia.com>
2338
2339         Unreviewed trivial build fix for Qt/Mac on OS X 10.6: Avoid using an
2340         enum value that clashes with an existing class name that's used in the
2341         same file.
2342
2343         * bridge/qt/qt_runtime.cpp:
2344         (JSC::Bindings::valueRealType):
2345         (JSC::Bindings::convertValueToQVariant):
2346
2347 2012-08-22  Patrick Gansterer  <paroga@webkit.org>
2348
2349         Build fix for WinCE after r126359.
2350
2351         * rendering/RenderThemeWinCE.cpp:
2352
2353 2012-08-23  Dominic Cooney  <dominicc@chromium.org>
2354
2355         Unreviewed, rolling out r126391.
2356         http://trac.webkit.org/changeset/126391
2357         https://bugs.webkit.org/show_bug.cgi?id=94302
2358
2359         Breaks Chromium browser_tests AccessibilityFooter,
2360         AccessibilityListMarkers, AccessibilityUI
2361
2362         * accessibility/AccessibilityNodeObject.cpp:
2363         * accessibility/AccessibilityNodeObject.h:
2364         (AccessibilityNodeObject):
2365         * accessibility/AccessibilityObject.cpp:
2366         * accessibility/AccessibilityObject.h:
2367         (AccessibilityObject):
2368         * accessibility/AccessibilityRenderObject.cpp:
2369         (WebCore::AccessibilityRenderObject::title):
2370         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
2371         (WebCore::AccessibilityRenderObject::isDescendantOfElementType):
2372         * accessibility/AccessibilityRenderObject.h:
2373         (AccessibilityRenderObject):
2374
2375 2012-08-23  Andrey Adaikin  <aandrey@chromium.org>
2376
2377         Web Inspector: [WebGL] Allow collecting calls for Resource objects affecting their states
2378         https://bugs.webkit.org/show_bug.cgi?id=94686
2379
2380         Reviewed by Pavel Feldman.
2381
2382         Allow collecting calls for WebGL Resource objects affecting their states.
2383         Clone Call's mutable arguments before pushing it to the log.
2384
2385         * inspector/InjectedScriptWebGLModuleSource.js:
2386         (.):
2387
2388 2012-08-23  Robin Cao  <robin.cao@torchmobile.com.cn>
2389
2390         [BlackBerry] draw <video> on <canvas> does not work
2391         https://bugs.webkit.org/show_bug.cgi?id=94791
2392         PR #195866
2393
2394         Reviewed by George Staikos.
2395
2396         Re-implement MediaPlayerPrivate::paintCurrentFrameInContext() in the
2397         blackberry port. This method is mainly called from <canvas>, and it
2398         is supposed to paint video frames using software rendering path.
2399
2400         On the other hand, MediaPlayerPrivate::paint() will choose accelerated
2401         rendering if possible.
2402
2403         media/video-canvas-alpha.html covers this.
2404
2405         * platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.cpp:
2406         (WebCore::MediaPlayerPrivate::paint):
2407         (WebCore):
2408         (WebCore::MediaPlayerPrivate::paintCurrentFrameInContext):
2409         * platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.h:
2410         (MediaPlayerPrivate):
2411
2412 2012-08-23  Kentaro Hara  <haraken@chromium.org>
2413
2414         Unreviewed. Build fix for r126399.
2415
2416         * bindings/v8/ScriptInstance.cpp:
2417
2418 2012-08-23  Pavel Feldman  <pfeldman@chromium.org>
2419
2420         Web Inspector: treat 0 cookies as "no cookies" and render it accordingly in the UI
2421         https://bugs.webkit.org/show_bug.cgi?id=94732
2422
2423         Reviewed by Yury Semikhatsky.
2424
2425         * inspector/front-end/RequestCookiesView.js:
2426         (WebInspector.RequestCookiesView.prototype.get _gotCookies):
2427
2428 2012-08-23  KwangYong Choi  <ky0.choi@samsung.com>
2429
2430         [EFL] Use vertical slider theme when the slider is vertical
2431         https://bugs.webkit.org/show_bug.cgi?id=93838
2432
2433         Reviewed by Kenneth Rohde Christiansen.
2434
2435         Applied vertical slider theme to the vertical sliders. The height
2436         of the vertical slider is wrong when it's applied horizontal
2437         slider theme.
2438
2439         And do not resize slider when its size is not specified. It's natural
2440         to use the default value of renderer.
2441
2442         No new tests. It's covered by existing range and datalist tests.
2443
2444         * platform/efl/RenderThemeEfl.cpp:
2445         (WebCore::RenderThemeEfl::adjustSliderTrackStyle):
2446
2447 2012-08-23  Kentaro Hara  <haraken@chromium.org>
2448
2449         [V8] Remove almost all #include "V8Proxy.h"
2450         https://bugs.webkit.org/show_bug.cgi?id=94777
2451
2452         Reviewed by Adam Barth.
2453
2454         No tests. No change in behavior.
2455
2456         * bindings/v8/NPV8Object.cpp:
2457         * bindings/v8/PageScriptDebugServer.cpp:
2458         * bindings/v8/ScheduledAction.cpp:
2459         * bindings/v8/ScriptController.cpp:
2460         * bindings/v8/ScriptInstance.cpp:
2461         * bindings/v8/ScriptObject.cpp:
2462         * bindings/v8/ScriptRunner.cpp:
2463         * bindings/v8/SerializedScriptValue.cpp:
2464         * bindings/v8/V8AbstractEventListener.cpp:
2465         * bindings/v8/V8Binding.h:
2466         (WebCore):
2467         * bindings/v8/V8BindingMacros.h:
2468         (WebCore):
2469         * bindings/v8/V8Collection.h:
2470         * bindings/v8/V8DOMWindowShell.cpp:
2471         * bindings/v8/V8DOMWrapper.cpp:
2472         * bindings/v8/V8EventListener.cpp:
2473         * bindings/v8/V8GCController.cpp:
2474         * bindings/v8/V8LazyEventListener.cpp:
2475         * bindings/v8/V8NPObject.cpp:
2476         * bindings/v8/V8NPUtils.cpp:
2477         * bindings/v8/V8Proxy.h:
2478         (WebCore):
2479         * bindings/v8/V8Utilities.cpp:
2480         * bindings/v8/WorkerContextExecutionProxy.cpp:
2481         * bindings/v8/WorkerScriptController.cpp:
2482         * bindings/v8/custom/V8ArrayBufferCustom.cpp:
2483         * bindings/v8/custom/V8ArrayBufferViewCustom.h:
2484         * bindings/v8/custom/V8AudioBufferSourceNodeCustom.cpp:
2485         * bindings/v8/custom/V8AudioContextCustom.cpp:
2486         * bindings/v8/custom/V8BlobCustom.cpp:
2487         * bindings/v8/custom/V8CSSStyleDeclarationCustom.cpp:
2488         * bindings/v8/custom/V8CanvasRenderingContext2DCustom.cpp:
2489         * bindings/v8/custom/V8ClipboardCustom.cpp:
2490         * bindings/v8/custom/V8ConsoleCustom.cpp:
2491         * bindings/v8/custom/V8CoordinatesCustom.cpp:
2492         * bindings/v8/custom/V8CustomSQLStatementErrorCallback.cpp:
2493         * bindings/v8/custom/V8DOMFormDataCustom.cpp:
2494         * bindings/v8/custom/V8DataViewCustom.cpp:
2495         * bindings/v8/custom/V8DedicatedWorkerContextCustom.cpp:
2496         * bindings/v8/custom/V8DeviceMotionEventCustom.cpp:
2497         * bindings/v8/custom/V8DeviceOrientationEventCustom.cpp:
2498         * bindings/v8/custom/V8DocumentCustom.cpp:
2499         * bindings/v8/custom/V8DocumentLocationCustom.cpp:
2500         * bindings/v8/custom/V8EntryCustom.cpp:
2501         * bindings/v8/custom/V8EntrySyncCustom.cpp:
2502         * bindings/v8/custom/V8EventCustom.cpp:
2503         * bindings/v8/custom/V8HTMLAllCollectionCustom.cpp:
2504         * bindings/v8/custom/V8HTMLCanvasElementCustom.cpp:
2505         * bindings/v8/custom/V8HTMLCollectionCustom.cpp:
2506         * bindings/v8/custom/V8HTMLFormElementCustom.cpp:
2507         * bindings/v8/custom/V8HTMLFrameElementCustom.cpp:
2508         * bindings/v8/custom/V8HTMLFrameSetElementCustom.cpp:
2509         * bindings/v8/custom/V8HTMLImageElementConstructor.cpp:
2510         * bindings/v8/custom/V8HTMLInputElementCustom.cpp:
2511         * bindings/v8/custom/V8HTMLLinkElementCustom.cpp:
2512         * bindings/v8/custom/V8HTMLMediaElementCustom.cpp:
2513         * bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp:
2514         * bindings/v8/custom/V8HTMLOutputElementCustom.cpp:
2515         * bindings/v8/custom/V8HTMLPlugInElementCustom.cpp:
2516         * bindings/v8/custom/V8HTMLSelectElementCustom.cpp:
2517         * bindings/v8/custom/V8HistoryCustom.cpp:
2518         * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
2519         * bindings/v8/custom/V8InspectorFrontendHostCustom.cpp:
2520         * bindings/v8/custom/V8IntentConstructor.cpp:
2521         * bindings/v8/custom/V8JavaScriptCallFrameCustom.cpp:
2522         * bindings/v8/custom/V8LocationCustom.cpp:
2523         * bindings/v8/custom/V8MessageChannelConstructor.cpp:
2524         * bindings/v8/custom/V8MessageEventCustom.cpp:
2525         * bindings/v8/custom/V8MessagePortCustom.cpp:
2526         * bindings/v8/custom/V8MutationCallbackCustom.cpp:
2527         * bindings/v8/custom/V8MutationObserverCustom.cpp:
2528         * bindings/v8/custom/V8NamedNodeMapCustom.cpp:
2529         * bindings/v8/custom/V8NodeCustom.cpp:
2530         * bindings/v8/custom/V8NodeListCustom.cpp:
2531         * bindings/v8/custom/V8NotificationCenterCustom.cpp:
2532         * bindings/v8/custom/V8NotificationCustom.cpp:
2533         * bindings/v8/custom/V8PopStateEventCustom.cpp:
2534         * bindings/v8/custom/V8SQLResultSetRowListCustom.cpp:
2535         * bindings/v8/custom/V8SQLTransactionCustom.cpp:
2536         * bindings/v8/custom/V8SQLTransactionSyncCustom.cpp:
2537         * bindings/v8/custom/V8SVGDocumentCustom.cpp:
2538         * bindings/v8/custom/V8ScriptProfileCustom.cpp:
2539         * bindings/v8/custom/V8ScriptProfileNodeCustom.cpp:
2540         * bindings/v8/custom/V8StorageCustom.cpp:
2541         * bindings/v8/custom/V8StyleSheetListCustom.cpp:
2542         * bindings/v8/custom/V8TrackEventCustom.cpp:
2543         * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
2544         * bindings/v8/custom/V8WebKitAnimationCustom.cpp:
2545         * bindings/v8/custom/V8WebKitPointConstructor.cpp:
2546         * bindings/v8/custom/V8WebSocketCustom.cpp:
2547         * bindings/v8/custom/V8WorkerContextCustom.cpp:
2548         * bindings/v8/custom/V8WorkerCustom.cpp:
2549         * bindings/v8/custom/V8XMLHttpRequestConstructor.cpp:
2550         * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
2551         * bindings/v8/custom/V8XSLTProcessorCustom.cpp:
2552
2553 2012-08-22  Kentaro Hara  <haraken@chromium.org>
2554
2555         Unreviewed, rolling out r126348.
2556         http://trac.webkit.org/changeset/126348
2557         https://bugs.webkit.org/show_bug.cgi?id=94588
2558
2559         We should use v8::String::NewSymbol() for symbols. See
2560         https://bugs.webkit.org/show_bug.cgi?id=94574#c10 for more
2561         details
2562
2563         * bindings/scripts/CodeGeneratorV8.pm:
2564         (GenerateNormalAttrGetter):
2565         (GenerateNormalAttrSetter):
2566         (GenerateNamedConstructorCallback):
2567         (GenerateNonStandardFunction):
2568         (GenerateImplementation):
2569         * bindings/scripts/test/V8/V8Float64Array.cpp:
2570         (WebCore::ConfigureV8Float64ArrayTemplate):
2571         * bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
2572         (WebCore::ConfigureV8TestActiveDOMObjectTemplate):
2573         * bindings/scripts/test/V8/V8TestEventTarget.cpp:
2574         (WebCore::ConfigureV8TestEventTargetTemplate):
2575         * bindings/scripts/test/V8/V8TestInterface.cpp:
2576         (WebCore::ConfigureV8TestInterfaceTemplate):
2577         * bindings/scripts/test/V8/V8TestNamedConstructor.cpp:
2578         (WebCore::V8TestNamedConstructorConstructor::GetTemplate):
2579         * bindings/scripts/test/V8/V8TestObj.cpp:
2580         (WebCore::ConfigureV8TestObjTemplate):
2581         (WebCore::V8TestObj::installPerContextProperties):
2582         * bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
2583         (WebCore::TestSerializedScriptValueInterfaceV8Internal::cachedValueAttrGetter):
2584         (WebCore::TestSerializedScriptValueInterfaceV8Internal::cachedValueAttrSetter):
2585         (WebCore::TestSerializedScriptValueInterfaceV8Internal::cachedReadonlyValueAttrGetter):
2586         * bindings/v8/V8Binding.h:
2587         (WebCore):
2588
2589 2012-08-22  Kentaro Hara  <haraken@chromium.org>
2590
2591         [V8] Remove V8Proxy from CodeGeneratorV8.pm
2592         https://bugs.webkit.org/show_bug.cgi?id=94773
2593
2594         Reviewed by Adam Barth.
2595
2596         To kill V8Proxy, we can remove V8Proxy uses from CodeGeneratorV8.pm.
2597
2598         No tests. No change in behavior.
2599
2600         * bindings/scripts/CodeGeneratorV8.pm:
2601         (GenerateToV8Converters):
2602         * bindings/scripts/test/V8/V8Float64Array.cpp:
2603         (WebCore::V8Float64Array::wrapSlow):
2604         * bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
2605         (WebCore::V8TestActiveDOMObject::wrapSlow):
2606         * bindings/scripts/test/V8/V8TestCustomNamedGetter.cpp:
2607         (WebCore::V8TestCustomNamedGetter::wrapSlow):
2608         * bindings/scripts/test/V8/V8TestEventConstructor.cpp:
2609         (WebCore::V8TestEventConstructor::wrapSlow):
2610         * bindings/scripts/test/V8/V8TestEventTarget.cpp:
2611         (WebCore::V8TestEventTarget::wrapSlow):
2612         * bindings/scripts/test/V8/V8TestException.cpp:
2613         (WebCore::V8TestException::wrapSlow):
2614         * bindings/scripts/test/V8/V8TestInterface.cpp:
2615         (WebCore::V8TestInterface::wrapSlow):
2616         * bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:
2617         (WebCore::V8TestMediaQueryListListener::wrapSlow):
2618         * bindings/scripts/test/V8/V8TestNamedConstructor.cpp:
2619         (WebCore::V8TestNamedConstructor::wrapSlow):
2620         * bindings/scripts/test/V8/V8TestNode.cpp:
2621         (WebCore::V8TestNode::wrapSlow):
2622         * bindings/scripts/test/V8/V8TestObj.cpp:
2623         (WebCore::V8TestObj::wrapSlow):
2624         * bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
2625         (WebCore::V8TestSerializedScriptValueInterface::wrapSlow):
2626
2627 2012-08-22  Sukolsak Sakshuwong  <sukolsak@google.com>
2628
2629         Implement UndoManager's item() method
2630         https://bugs.webkit.org/show_bug.cgi?id=94671
2631
2632         Reviewed by Ryosuke Niwa.
2633
2634         This patch implements UndoManager's item() method and its V8 custom binding.
2635         We need to use custom binding here because we need to return user objects
2636         that are stored in a hidden property of DOMTransaction wrappers, not returning
2637         the wrappers themselves.
2638
2639         Test: editing/undomanager/undomanager-item.html
2640
2641         * bindings/js/JSUndoManagerCustom.cpp:
2642         (WebCore::JSUndoManager::item):
2643         (WebCore):
2644         * bindings/v8/DOMTransaction.cpp:
2645         (WebCore::DOMTransaction::data):
2646         (WebCore):
2647         (WebCore::DOMTransaction::setData):
2648         (WebCore::DOMTransaction::getFunction):
2649         * bindings/v8/DOMTransaction.h:
2650         * bindings/v8/custom/V8UndoManagerCustom.cpp:
2651         (WebCore::V8UndoManager::transactCallback):
2652         (WebCore::V8UndoManager::itemCallback):
2653         (WebCore):
2654         * editing/UndoManager.cpp:
2655         (WebCore::UndoManager::item):
2656         (WebCore):
2657         * editing/UndoManager.h:
2658         (UndoManager):
2659         * editing/UndoManager.idl:
2660
2661 2012-08-22  Dominic Mazzoni  <dmazzoni@google.com>
2662
2663         AX: Focusable elements without a role should not be ignored
2664         https://bugs.webkit.org/show_bug.cgi?id=94302
2665
2666         Reviewed by Chris Fleizach.
2667
2668         Changes the accessibility logic so that a generic element that's focusable is
2669         not ignored for accessibility, and returns its inner text as its title. That way
2670         if you Tab to the element, a reasonable accessibility notification is generated.
2671
2672         One exception is the body element, because focusing the body is equivalent to
2673         blurring the current focused element and does not result in a "focus" accessibility
2674         notification.
2675
2676         Also fixes logic that determined if an element was contentEditable by making
2677         sure it catches the case with no attribute value (e.g. <div contentEditable>),
2678         which also implies contentEditable=true according to the spec.
2679
2680         Test: accessibility/focusable-div.html
2681
2682         * accessibility/AccessibilityRenderObject.cpp:
2683         (WebCore):
2684         (WebCore::nodeHasContentEditableAttributeSet):
2685         (WebCore::AccessibilityRenderObject::title):
2686         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
2687
2688 2012-08-22  Kentaro Hara  <haraken@chromium.org>
2689
2690         Unreviewed, rolling out r126383.
2691         http://trac.webkit.org/changeset/126383
2692         https://bugs.webkit.org/show_bug.cgi?id=82888
2693
2694         Chromium win build crash
2695
2696         * bindings/js/JSClipboardCustom.cpp:
2697         (WebCore::JSClipboard::types):
2698         * bindings/v8/custom/V8ClipboardCustom.cpp:
2699         (WebCore::V8Clipboard::typesAccessorGetter):
2700         * dom/Clipboard.h:
2701         (Clipboard):
2702         * platform/blackberry/ClipboardBlackBerry.cpp:
2703         (WebCore::ClipboardBlackBerry::types):
2704         * platform/blackberry/ClipboardBlackBerry.h:
2705         (ClipboardBlackBerry):
2706         * platform/chromium/ChromiumDataObject.cpp:
2707         (WebCore::ChromiumDataObject::types):
2708         * platform/chromium/ChromiumDataObject.h:
2709         (ChromiumDataObject):
2710         * platform/chromium/ClipboardChromium.cpp:
2711         (WebCore::ClipboardChromium::types):
2712         * platform/chromium/ClipboardChromium.h:
2713         (ClipboardChromium):
2714         * platform/efl/ClipboardEfl.cpp:
2715         (WebCore::ClipboardEfl::types):
2716         * platform/efl/ClipboardEfl.h:
2717         (ClipboardEfl):
2718         * platform/gtk/ClipboardGtk.cpp:
2719         (WebCore::ClipboardGtk::types):
2720         * platform/gtk/ClipboardGtk.h:
2721         (ClipboardGtk):
2722         * platform/mac/ClipboardMac.h:
2723         (ClipboardMac):
2724         * platform/mac/ClipboardMac.mm:
2725         (WebCore::addHTMLClipboardTypesForCocoaType):
2726         (WebCore::ClipboardMac::types):
2727         * platform/qt/ClipboardQt.cpp:
2728         (WebCore::ClipboardQt::types):
2729         * platform/qt/ClipboardQt.h:
2730         (ClipboardQt):
2731         * platform/win/ClipboardWin.cpp:
2732         (WebCore::addMimeTypesForFormat):
2733         (WebCore::ClipboardWin::types):
2734         * platform/win/ClipboardWin.h:
2735         (ClipboardWin):
2736         * platform/wx/ClipboardWx.cpp:
2737         (WebCore::ClipboardWx::types):
2738         * platform/wx/ClipboardWx.h:
2739         (ClipboardWx):
2740
2741 2012-08-22  Kentaro Hara  <haraken@chromium.org>
2742
2743         [V8] Move m_isolatedWorlds and m_isolatedWorldSecurityOrigins from V8Proxy to ScriptController
2744         https://bugs.webkit.org/show_bug.cgi?id=94770
2745
2746         Reviewed by Adam Barth.
2747
2748         Now m_isolatedWorlds and m_isolatedWorldSecurityOrigins of V8Proxy
2749         are used by ScriptController only. We can move them to ScriptController.
2750
2751         No tests. No change in behavior.
2752
2753         * bindings/v8/ScriptController.cpp:
2754         (WebCore::ScriptController::resetIsolatedWorlds):
2755         (WebCore::ScriptController::evaluateInIsolatedWorld):
2756         (WebCore::ScriptController::setIsolatedWorldSecurityOrigin):
2757         (WebCore::ScriptController::collectIsolatedContexts):
2758         * bindings/v8/ScriptController.h:
2759         (ScriptController):
2760         * bindings/v8/V8Proxy.h:
2761         (V8Proxy):
2762
2763 2012-08-22  Kentaro Hara  <haraken@chromium.org>
2764
2765         [V8] Move evaluate() from V8Proxy to ScriptController
2766         https://bugs.webkit.org/show_bug.cgi?id=94768
2767
2768         Reviewed by Adam Barth.
2769
2770         To kill V8Proxy, we can move evaluate() from V8Proxy to ScriptController.
2771
2772         - Renamed evaluate() to compileAndRunScript() to avoid name conflict
2773         with existing ScriptController::evaluate().
2774
2775         - Removed toV8Proxy() from NPV8Object, as it is no longer used.
2776
2777         No tests. No change in behavior.
2778
2779         * bindings/v8/NPV8Object.cpp:
2780         (_NPN_EvaluateHelper):
2781         * bindings/v8/ScheduledAction.cpp:
2782         (WebCore::ScheduledAction::execute):
2783         * bindings/v8/ScriptController.cpp:
2784         (WebCore::ScriptController::compileAndRunScript):
2785         (WebCore):
2786         (WebCore::ScriptController::evaluate):
2787         (WebCore::ScriptController::evaluateInIsolatedWorld):
2788         * bindings/v8/ScriptController.h:
2789         (ScriptController):
2790         * bindings/v8/V8Proxy.cpp:
2791         * bindings/v8/V8Proxy.h:
2792
2793 2012-08-22  Vineet Chaudhary  <rgf748@motorola.com>
2794
2795         Consider replacing return type of Clipboard::types() from HashSet<String> to Vector<String>.
2796         https://bugs.webkit.org/show_bug.cgi?id=82888
2797
2798         Reviewed by Kentaro Hara.
2799
2800         As part of removing custom bindings of types Array Clipboard::types() needs to return
2801         Vector<String> than HashSet<String>
2802
2803         No new tests. Exixting test should pass with this change as no behavoural changes.
2804
2805         * bindings/js/JSClipboardCustom.cpp: Replace data type from HashSet<> to Vector<>.
2806         (WebCore::JSClipboard::types):
2807         * bindings/v8/custom/V8ClipboardCustom.cpp: Ditto.
2808         (WebCore::V8Clipboard::typesAccessorGetter):
2809         * dom/Clipboard.h: Ditto.
2810         (Clipboard):
2811         * platform/blackberry/ClipboardBlackBerry.cpp: Ditto.
2812         (WebCore::ClipboardBlackBerry::types):
2813         * platform/blackberry/ClipboardBlackBerry.h: Ditto.
2814         (ClipboardBlackBerry):
2815         * platform/chromium/ChromiumDataObject.cpp: Ditto.
2816         (WebCore::ChromiumDataObject::types):
2817         * platform/chromium/ChromiumDataObject.h: Ditto.
2818         (ChromiumDataObject):
2819         * platform/chromium/ClipboardChromium.cpp: Ditto.
2820         (WebCore::ClipboardChromium::types):
2821         * platform/chromium/ClipboardChromium.h: Ditto.
2822         (ClipboardChromium):
2823         * platform/efl/ClipboardEfl.cpp: Ditto.
2824         (WebCore::ClipboardEfl::types):
2825         * platform/efl/ClipboardEfl.h: Ditto.
2826         (ClipboardEfl):
2827         * platform/gtk/ClipboardGtk.cpp: Ditto.
2828         (WebCore::ClipboardGtk::types):
2829         * platform/gtk/ClipboardGtk.h: Ditto.
2830         (ClipboardGtk):
2831         * platform/mac/ClipboardMac.h: Ditto.
2832         (ClipboardMac):
2833         * platform/mac/ClipboardMac.mm: Ditto.
2834         (WebCore::addHTMLClipboardTypesForCocoaType):
2835         (WebCore::ClipboardMac::types):
2836         * platform/qt/ClipboardQt.cpp: Ditto.
2837         (WebCore::ClipboardQt::types):
2838         * platform/qt/ClipboardQt.h: Ditto.
2839         (ClipboardQt):
2840         * platform/win/ClipboardWin.cpp: Ditto.
2841         (WebCore::addMimeTypesForFormat):
2842         (WebCore::ClipboardWin::types):
2843         * platform/win/ClipboardWin.h: Ditto.
2844         (ClipboardWin):
2845         * platform/wx/ClipboardWx.cpp: Ditto.
2846         (WebCore::ClipboardWx::types):
2847         * platform/wx/ClipboardWx.h: Ditto.
2848         (ClipboardWx):
2849
2850 2012-08-22  James Robinson  <jamesr@chromium.org>
2851
2852         [chromium] Change WebLayer from a concrete type to a pure virtual interface
2853         https://bugs.webkit.org/show_bug.cgi?id=94174
2854
2855         Reviewed by Adrienne Walker.
2856
2857         This updates WebCore code for the WebLayer interface changes. Classes that have ownership of specific layer
2858         types (such as DrawingBufferChromium, Canvas2DLayerBridge and ScrollingCoordinatorChromium) hold ownership
2859         of a specific type and a pointer to the WebLayer to GraphicsLayerChromium to be included in the final layer
2860         tree. GraphicsLayerChromium holds a WebContentLayer and (optionally) a WebImageLayer and WebLayer (for
2861         m_transformLayer) and assembles the final layer tree.
2862
2863         * page/scrolling/chromium/ScrollingCoordinatorChromium.cpp:
2864         (WebCore::ScrollingCoordinatorPrivate::ScrollingCoordinatorPrivate):
2865         (ScrollingCoordinatorPrivate):
2866         (WebCore::ScrollingCoordinatorPrivate::setScrollLayer):
2867         (WebCore::ScrollingCoordinatorPrivate::setHorizontalScrollbarLayer):
2868         (WebCore::ScrollingCoordinatorPrivate::setVerticalScrollbarLayer):
2869         (WebCore::ScrollingCoordinatorPrivate::scrollLayer):
2870         (WebCore::scrollableLayerForGraphicsLayer):
2871         (WebCore):
2872         (WebCore::createScrollbarLayer):
2873         (WebCore::ScrollingCoordinator::frameViewHorizontalScrollbarLayerDidChange):
2874         (WebCore::ScrollingCoordinator::frameViewVerticalScrollbarLayerDidChange):
2875         (WebCore::ScrollingCoordinator::setScrollLayer):
2876         (WebCore::ScrollingCoordinator::setNonFastScrollableRegion):
2877         (WebCore::ScrollingCoordinator::setWheelEventHandlerCount):
2878         (WebCore::ScrollingCoordinator::setShouldUpdateScrollLayerPositionOnMainThread):
2879         (WebCore::ScrollingCoordinator::setLayerIsContainerForFixedPositionLayers):
2880         (WebCore::ScrollingCoordinator::setLayerIsFixedToContainerLayer):
2881         * platform/graphics/chromium/Canvas2DLayerBridge.cpp:
2882         (WebCore::Canvas2DLayerBridge::Canvas2DLayerBridge):
2883         (WebCore::Canvas2DLayerBridge::~Canvas2DLayerBridge):
2884         (WebCore::Canvas2DLayerBridge::prepareForDraw):
2885         (WebCore::Canvas2DLayerBridge::layer):
2886         (WebCore::Canvas2DLayerBridge::contextAcquired):
2887         * platform/graphics/chromium/Canvas2DLayerBridge.h:
2888         (Canvas2DLayerBridge):
2889         * platform/graphics/chromium/DrawingBufferChromium.cpp:
2890         (WebCore::DrawingBufferPrivate::DrawingBufferPrivate):
2891         (WebCore::DrawingBufferPrivate::~DrawingBufferPrivate):
2892         (WebCore::DrawingBufferPrivate::layer):
2893         (DrawingBufferPrivate):
2894         * platform/graphics/chromium/GraphicsLayerChromium.cpp:
2895         (WebCore::GraphicsLayerChromium::GraphicsLayerChromium):
2896         (WebCore::GraphicsLayerChromium::~GraphicsLayerChromium):
2897         (WebCore::GraphicsLayerChromium::willBeDestroyed):
2898         (WebCore::GraphicsLayerChromium::updateNames):
2899         (WebCore::GraphicsLayerChromium::removeFromParent):
2900         (WebCore::GraphicsLayerChromium::setSize):
2901         (WebCore::GraphicsLayerChromium::clearBackgroundColor):
2902         (WebCore::GraphicsLayerChromium::setContentsOpaque):
2903         (WebCore::GraphicsLayerChromium::setFilters):
2904         (WebCore::GraphicsLayerChromium::setBackgroundFilters):
2905         (WebCore::GraphicsLayerChromium::setMaskLayer):
2906         (WebCore::GraphicsLayerChromium::setBackfaceVisibility):
2907         (WebCore::GraphicsLayerChromium::setOpacity):
2908         (WebCore::GraphicsLayerChromium::setReplicatedByLayer):
2909         (WebCore::GraphicsLayerChromium::setContentsNeedsDisplay):
2910         (WebCore::GraphicsLayerChromium::setNeedsDisplay):
2911         (WebCore::GraphicsLayerChromium::setNeedsDisplayInRect):
2912         (WebCore::GraphicsLayerChromium::setContentsToImage):
2913         (WebCore::GraphicsLayerChromium::setContentsToCanvas):
2914         (WebCore):
2915         (WebCore::GraphicsLayerChromium::setContentsToMedia):
2916         (WebCore::GraphicsLayerChromium::setContentsTo):
2917         (WebCore::GraphicsLayerChromium::addAnimation):
2918         (WebCore::GraphicsLayerChromium::pauseAnimation):
2919         (WebCore::GraphicsLayerChromium::removeAnimation):
2920         (WebCore::GraphicsLayerChromium::suspendAnimations):
2921         (WebCore::GraphicsLayerChromium::resumeAnimations):
2922         (WebCore::GraphicsLayerChromium::platformLayer):
2923         (WebCore::GraphicsLayerChromium::setDebugBackgroundColor):
2924         (WebCore::GraphicsLayerChromium::setDebugBorder):
2925         (WebCore::GraphicsLayerChromium::updateChildList):
2926         (WebCore::GraphicsLayerChromium::updateLayerPosition):
2927         (WebCore::GraphicsLayerChromium::updateLayerSize):
2928         (WebCore::GraphicsLayerChromium::updateAnchorPoint):
2929         (WebCore::GraphicsLayerChromium::updateTransform):
2930         (WebCore::GraphicsLayerChromium::updateChildrenTransform):
2931         (WebCore::GraphicsLayerChromium::updateMasksToBounds):
2932         (WebCore::GraphicsLayerChromium::updateLayerPreserves3D):
2933         (WebCore::GraphicsLayerChromium::updateLayerIsDrawable):
2934         (WebCore::GraphicsLayerChromium::updateLayerBackgroundColor):
2935         (WebCore::GraphicsLayerChromium::updateContentsRect):
2936         (WebCore::GraphicsLayerChromium::updateContentsScale):
2937         (WebCore::GraphicsLayerChromium::setupContentsLayer):
2938         * platform/graphics/chromium/GraphicsLayerChromium.h:
2939         (GraphicsLayerChromium):
2940         (WebCore::GraphicsLayerChromium::hasContentsLayer):
2941         (WebCore::GraphicsLayerChromium::contentLayer):
2942         (WebCore::GraphicsLayerChromium::contentsLayer):
2943         * platform/graphics/chromium/LayerChromium.cpp:
2944         (WebCore::LayerChromium::rootLayer):
2945         * platform/graphics/chromium/LayerChromium.h:
2946
2947 2012-08-22  Kentaro Hara  <haraken@chromium.org>
2948
2949         [V8] Move runScript() from V8Proxy to ScriptRunner
2950         https://bugs.webkit.org/show_bug.cgi?id=94706
2951
2952         Reviewed by Adam Barth.
2953
2954         To kill V8Proxy, we can move runScript() from V8Proxy to ScriptRunner.
2955
2956         - ScriptRunner::runScript() should be a static method.
2957         It should receive ScriptExecutionContext on which the script is evaluated.
2958
2959         - After this patch is landed, I'll remove WorkerContextExecutionContext::runScript()
2960         and ScriptDebugServer::runScript().
2961
2962         No tests. No change in behavior.
2963
2964         * UseV8.cmake:
2965         * WebCore.gypi:
2966         * bindings/v8/ScriptController.cpp:
2967         * bindings/v8/ScriptRunner.cpp: Added.
2968         (WebCore):
2969         (WebCore::ScriptRunner::runScript):
2970         * bindings/v8/ScriptRunner.h: Added.
2971         (WebCore):
2972         (ScriptRunner):
2973         * bindings/v8/V8Binding.cpp:
2974         (WebCore::handleMaxRecursionDepthExceeded):
2975         (WebCore):
2976         * bindings/v8/V8Binding.h:
2977         (WebCore):
2978         * bindings/v8/V8Proxy.cpp:
2979         (WebCore::V8Proxy::evaluate):
2980         * bindings/v8/V8Proxy.h:
2981         (V8Proxy):
2982
2983 2012-08-22  Adam Barth  <abarth@webkit.org>
2984
2985         [V8] OwnHandle doesn't need to support weak handles
2986         https://bugs.webkit.org/show_bug.cgi?id=94760
2987
2988         Reviewed by Kentaro Hara.
2989
2990         No code uses makeWeak(). We can drop support for it and simplify this
2991         class.
2992
2993         * bindings/v8/OwnHandle.h:
2994         (WebCore):
2995         (OwnHandle):
2996         (WebCore::OwnHandle::OwnHandle):
2997         (WebCore::OwnHandle::~OwnHandle):
2998         (WebCore::OwnHandle::get):
2999         (WebCore::OwnHandle::set):
3000         (WebCore::OwnHandle::clear):
3001
3002 2012-08-22  Kentaro Hara  <haraken@chromium.org>
3003
3004         [V8] Remove V8Proxy from getXPathNSResolver()
3005         https://bugs.webkit.org/show_bug.cgi?id=94715
3006
3007         Reviewed by Adam Barth.
3008
3009         - The V8Proxy* argument of getXPathNSResolver(..., V8Proxy* = 0) is not used.
3010           We can remove it.
3011
3012         - We can rename getXPathNSResolver() to toXPathNSResolver().
3013
3014         - We can move toXPathNSResolver() from V8DOMWrapper to V8Binding,
3015           since other toXXX() methods are written in V8Binding.
3016
3017         - Change the return value of toXPathNSResolver() from RefPtr to PassRefPtr.
3018
3019         No tests. No change in behavior.
3020
3021         * bindings/scripts/CodeGeneratorV8.pm:
3022         (JSValueToNative):
3023         * bindings/v8/V8Binding.cpp:
3024         (WebCore::toXPathNSResolver):
3025         (WebCore):
3026         * bindings/v8/V8Binding.h:
3027         (WebCore):
3028         * bindings/v8/V8DOMWrapper.cpp:
3029         * bindings/v8/V8DOMWrapper.h:
3030         (V8DOMWrapper):
3031         * bindings/v8/custom/V8DocumentCustom.cpp:
3032         (WebCore::V8Document::evaluateCallback):
3033
3034 2012-08-22  Kenneth Russell  <kbr@google.com>
3035
3036         Unreviewed, rolling out r126325.
3037         http://trac.webkit.org/changeset/126325
3038         https://bugs.webkit.org/show_bug.cgi?id=94644
3039
3040         Caused subtle but reproducible failure to call onload handler
3041         properly in an SVG layout test in Chromium Mac Debug builds,
3042         indicating potentially larger problem
3043
3044         * css/CSSFontSelector.cpp:
3045         (WebCore::CSSFontSelector::beginLoadTimerFired):
3046         * loader/cache/CachedResourceLoader.cpp:
3047         (WebCore::CachedResourceLoader::decrementRequestCount):
3048
3049 2012-08-22  Victor Carbune  <victor@rosedu.org>
3050
3051         Display a TextTrackCue when snap-to-lines flag is set
3052         https://bugs.webkit.org/show_bug.cgi?id=79751
3053
3054         Reviewed by Tony Chang.
3055
3056         This patch implements rendering functionality for a given text track,
3057         following closer the exact WebVTT specification. There are two new classes
3058         which have been added in order to succesfully cover rendering when of a text
3059         track cue.
3060
3061         RenderTextTrackCue handles the specific rendering algorithm required,
3062         by checking for overlaps with other boxes that are in the same
3063         container (these can be any other boxes, not necessarily other cues,
3064         the video controls, for example).
3065
3066         TextTrackCueBox extends HTMLDivElement and is an intermediate layer
3067         between the renderer class and the actual cue object. Its purpose is
3068         to instantiate the particular renderer and cover all the default CSS
3069         styling that needs to be applied to the cue.
3070
3071         The layout is done in two steps:
3072           - Step 1: Layout the TextTrackCue with default CSS properties set (this is
3073         the TextTrackCueBox decorated with the respective CSS elements)
3074           - Step 2: RenderTextTrackCue adjusts the box position depending on the
3075         parameters of the TextTrackCue object and the overlaps that may occur with
3076         previously positioned cues.
3077
3078         Tests: media/track/track-cue-rendering-horizontal.html
3079                media/track/track-cue-rendering-vertical.html
3080
3081         * CMakeLists.txt: Updated to include RenderTextTrackCue.
3082         * GNUmakefile.list.am: Updated to include RenderTextTrackCue.
3083         * Target.pri: Updated to include RenderTextTrackCue.
3084         * WebCore.gypi: Updated to include RenderTextTrackCue.
3085         * WebCore.vcproj/WebCore.vcproj: Updated to include RenderTextTrackCue.
3086         * WebCore.xcodeproj/project.pbxproj: Updated to include RenderTextTrackCue.
3087         * css/mediaControls.css: Removed unreliable CSS.
3088         (video::-webkit-media-text-track-display): Removed properties.
3089         * html/shadow/MediaControlElements.cpp: Updated to not use the new class.
3090         (RenderTextTrackContainerElement):
3091         (WebCore::MediaControlTextTrackContainerElement::updateDisplay): Simplified
3092         the function by moving the check if track is rendered in TextTrack and used
3093         the TextTrackCueBox for cues.
3094         * html/track/TextTrack.cpp: Added a new method.
3095         (WebCore::TextTrack::isRendered): Method that returns whether the track should
3096         be rendered or not.
3097         (WebCore):
3098         * html/track/TextTrack.h: Added the isRendered method.
3099         (TextTrack):
3100         * html/track/TextTrackCue.cpp: Added several helper methods and
3101         the TextTrackCueBox.
3102         (WebCore):
3103         (WebCore::TextTrackCueBox::TextTrackCueBox): The TextTrackCueBox extends
3104         the HTMLDivElement and represents a bridge class between RenderTextTrackCue
3105         and TextTrackCue. This is required as the layout is done in two steps, as
3106         explained on top of the ChangeLog entry.
3107         (WebCore::TextTrackCueBox::getCue): Returns the associated TextTrackCue object.
3108         (WebCore::TextTrackCueBox::applyCSSProperties): Applies a part of the default CSS
3109         properties, as defined by section 3.5.1 of the WebVTT specification.
3110         (WebCore::TextTrackCueBox::shadowPseudoId): Moved the shadow pseudo id.
3111         (WebCore::TextTrackCueBox::createRenderer): Creates the particular renderer.
3112         (WebCore::TextTrackCue::TextTrackCue): Corrected the internal writing mode map.
3113         (WebCore::TextTrackCue::calculateComputedLinePosition): Updated the compute line
3114         position algorithm. This requires, however, a method to consider only rendered
3115         tracks (and therefore will be addressed completely in subsequent changeset).
3116         (WebCore::TextTrackCue::calculateDisplayParameters): Updated and corrected the
3117         computed display parameters to match the current specification.
3118         (WebCore::TextTrackCue::getDisplayTree): Update to use the TextTrackCueBox class
3119         and moved CSS application to the respective class.
3120         (WebCore::TextTrackCue::getPositionCoordinates): Added comment to specify in which
3121         situation this method is used and change visibility to private.
3122         (WebCore::TextTrackCue::getCSSWritingMode): Returns the CSS writing mode corresponding
3123         to the cue writing mode.
3124         (WebCore::TextTrackCue::getCSSSize): Returns the cue width / height (depending on the
3125         writing direction.
3126         (WebCore::TextTrackCue::getCSSPosition): Returns the default display position, that is
3127         used in the first layout step.
3128         * html/track/TextTrackCue.h:
3129         (WebCore):
3130         (TextTrackCueBox):
3131         (WebCore::TextTrackCueBox::create): Initialization method.
3132         (TextTrackCue):
3133         (WebCore::TextTrackCue::getWritingDirection): Helper method to return the internal
3134         values used to represent the writing direction.
3135         * rendering/RenderTextTrackCue.cpp: Added.
3136         (WebCore):
3137         (WebCore::RenderTextTrackCue::RenderTextTrackCue):
3138         (WebCore::RenderTextTrackCue::layout): The rendering steps, as mentioned in
3139         the WebVTT rendering rules. Currently, this treats only the snap-to-lines set
3140         case. It is implemented following closely the spec, and might be subject to
3141         change as discussions on various bugs evolve.
3142         (WebCore::RenderTextTrackCue::initializeLayoutParameters): Steps 1 - 7.
3143         (WebCore::RenderTextTrackCue::placeBoxInDefaultPosition): Steps 8 - 10.
3144         (WebCore::RenderTextTrackCue::isOutside): Inline method to check if the cue is outside.
3145         (WebCore::RenderTextTrackCue::isOverlapping): Inline method to check if the cue overlaps other boxes.
3146         (WebCore::RenderTextTrackCue::shouldSwitchDirection): Step 12.
3147         (WebCore::RenderTextTrackCue::moveBoxesByStep): Step 13.
3148         (WebCore::RenderTextTrackCue::switchDirection): Steps 15 - 18.
3149         (WebCore::RenderTextTrackCue::repositionCueSnapToLinesSet): Cue repositioning
3150         for text track cue when the snap to lines flag is set.
3151         (WebCore::RenderTextTrackCue::repositionCueSnapToLinesNotSet): Cue repositioning
3152         for text track cue when the snap to lines flag is not set. Not implemented yet.
3153         * rendering/RenderTextTrackCue.h: Added.
3154         (WebCore):
3155         (RenderTextTrackCue): Rendering class, handling the display of cues.
3156
3157 2012-08-21  Kentaro Hara  <haraken@chromium.org>
3158
3159         [V8] Move matchesCurrentContext() from V8Proxy to ScriptController
3160         https://bugs.webkit.org/show_bug.cgi?id=94596
3161
3162         Reviewed by Adam Barth.
3163
3164         To kill V8Proxy:
3165
3166         - We can move matchesCurrentContext() from V8Proxy to ScriptController.
3167         - We can remove V8Proxy::isolatedWorldContext() since it is not used by anybody.
3168         - We can remove V8Proxy::finishedWithEvent() since it is empty.
3169
3170         No tests. No change in behavior.
3171
3172         * bindings/scripts/CodeGeneratorV8.pm:
3173         (GenerateToV8Converters):
3174         * bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
3175         (WebCore::V8TestActiveDOMObject::wrapSlow):
3176         * bindings/scripts/test/V8/V8TestNode.cpp:
3177         (WebCore::V8TestNode::wrapSlow):
3178         * bindings/v8/ScriptController.cpp:
3179         (WebCore::ScriptController::finishedWithEvent):
3180         (WebCore::ScriptController::matchesCurrentContext):
3181         (WebCore):
3182         * bindings/v8/ScriptController.h:
3183         (ScriptController):
3184         * bindings/v8/V8Proxy.cpp:
3185         * bindings/v8/V8Proxy.h:
3186         (V8Proxy):
3187
3188 2012-08-22  Alejandro PiƱeiro  <apinheiro@igalia.com>
3189
3190         [Gtk] Dojo toggle buttons should expose ROLE_TOGGLE_BUTTON not ROLE_PUSH_BUTTON
3191         https://bugs.webkit.org/show_bug.cgi?id=73819
3192
3193         Reviewed by Chris Fleizach.
3194
3195         Added a new role, Toggle Button, based on whether aria-pressed is present.
3196         http://www.w3.org/TR/wai-aria/states_and_properties#aria-pressed
3197
3198         Test: platform/gtk/accessibility/aria-toggle-button-role.html
3199
3200         * accessibility/AccessibilityNodeObject.cpp:
3201         (WebCore::AccessibilityNodeObject::determineAccessibilityRole): using buttonRoleType
3202         to classify a button-related role.
3203         (WebCore::AccessibilityNodeObject::determineAriaRoleAttribute): using buttonRoleType
3204         to classify a button-related role.
3205         * accessibility/AccessibilityObject.cpp:
3206         (WebCore::AccessibilityObject::ariaPressedIsPresent): checks if aria-pressed
3207         attribute is present.
3208         (WebCore::AccessibilityObject::buttonRoleType): returns a specific button-related
3209         role if the object is a button-related role.
3210         * accessibility/AccessibilityObject.h:
3211         (AccessibilityObject): added new role ToggleButtonRole.
3212         * accessibility/AccessibilityRenderObject.cpp:
3213         (WebCore::AccessibilityRenderObject::determineAccessibilityRole): using buttonRoleType
3214         to classify a button-related role.
3215         * accessibility/gtk/WebKitAccessibleWrapperAtk.cpp:
3216         (atkRole): added a mapping between ToggleButtonRole and
3217         ATK_ROLE_TOGGLE_BUTTON.
3218         * accessibility/mac/WebAccessibilityObjectWrapper.mm:
3219         (createAccessibilityRoleMap): added a mapping between
3220         ToggleButtonRole and NSAccessibilityButtonRole
3221
3222 2012-08-22  David Grogan  <dgrogan@chromium.org>
3223
3224         IndexedDB: revert int version when version change transaction aborts
3225         https://bugs.webkit.org/show_bug.cgi?id=94662
3226
3227         Reviewed by Tony Chang.
3228
3229         Test: storage/indexeddb/intversion-revert-on-abort.html
3230
3231         * Modules/indexeddb/IDBDatabaseBackendImpl.cpp:
3232         (WebCore::IDBDatabaseBackendImpl::runIntVersionChangeTransaction):
3233         (WebCore::IDBDatabaseBackendImpl::resetIntVersion):
3234         One-liner modeled after resetVersion.
3235
3236         (WebCore):
3237         * Modules/indexeddb/IDBDatabaseBackendImpl.h:
3238         (IDBDatabaseBackendImpl):
3239
3240 2012-08-17  Jeffrey Pfau  <jpfau@apple.com>
3241
3242         Allow blocking of Web SQL databases in third-party web workers
3243         https://bugs.webkit.org/show_bug.cgi?id=94170
3244
3245         Reviewed by Adam Barth.
3246
3247         Web workers did not previously know anything about the document that
3248         spawned them. This is undefined for shared workers, but for dedicated
3249         workers, we now pipe the information through.
3250
3251         Tests: http/tests/security/cross-origin-worker-websql-allowed.html
3252                http/tests/security/cross-origin-worker-websql.html
3253
3254         * Modules/webdatabase/WorkerContextWebDatabase.cpp: Pass information about the top origin to canAccessDatabase
3255         (WebCore::WorkerContextWebDatabase::openDatabase):
3256         (WebCore::WorkerContextWebDatabase::openDatabaseSync):
3257         * WebCore.exp.in: Make SecurityOrigin::isolatedCopy const
3258         * page/SecurityOrigin.cpp:
3259         (WebCore::SecurityOrigin::isolatedCopy):
3260         (WebCore::SecurityOrigin::canAccessStorage):
3261         * page/SecurityOrigin.h:
3262         * workers/DedicatedWorkerContext.cpp: Pass topOrigin
3263         (WebCore::DedicatedWorkerContext::create):
3264         (WebCore::DedicatedWorkerContext::DedicatedWorkerContext):
3265         * workers/DedicatedWorkerContext.h:
3266         (DedicatedWorkerContext):
3267         * workers/DedicatedWorkerThread.cpp: Pass topOrigin
3268         (WebCore::DedicatedWorkerThread::create):
3269         (WebCore::DedicatedWorkerThread::DedicatedWorkerThread):
3270         (WebCore::DedicatedWorkerThread::createWorkerContext):
3271         * workers/DedicatedWorkerThread.h:
3272         (DedicatedWorkerThread):
3273         * workers/SharedWorkerContext.cpp: Pass topOrigin
3274         (WebCore::SharedWorkerContext::SharedWorkerContext):
3275         * workers/SharedWorkerThread.cpp:
3276         (WebCore::SharedWorkerThread::SharedWorkerThread):
3277         (WebCore::SharedWorkerThread::createWorkerContext):
3278         * workers/SharedWorkerThread.h:
3279         (SharedWorkerThread): Pass topOrigin
3280         * workers/WorkerContext.cpp:
3281         (WebCore::WorkerContext::WorkerContext):
3282         * workers/WorkerContext.h:
3283         (WebCore::WorkerContext::topOrigin):
3284         (WorkerContext):
3285         * workers/WorkerMessagingProxy.cpp: Pass topOrigin
3286         (WebCore::WorkerMessagingProxy::startWorkerContext):
3287         * workers/WorkerThread.cpp:
3288         (WebCore::WorkerThreadStartupData::create):
3289         (WorkerThreadStartupData):
3290         (WebCore::WorkerThreadStartupData::WorkerThreadStartupData):
3291         (WebCore::WorkerThread::WorkerThread):
3292         (WebCore::WorkerThread::workerThread):
3293         * workers/WorkerThread.h:
3294         (WorkerThread):
3295
3296 2012-08-22  Kentaro Hara  <haraken@chromium.org>
3297
3298         [V8] Move context() from V8Proxy to ScriptController
3299         https://bugs.webkit.org/show_bug.cgi?id=94593
3300
3301         Reviewed by Adam Barth.
3302
3303         - This patch removes V8Proxy::context(Frame*).
3304         - This patch moves V8Proxy::context() to ScriptController::context().
3305         - This patch renames ScriptController::context() to ScriptController::currentWorldContext(),
3306         for naming consistency with ScriptController::maintWorldContext().
3307
3308         No tests. No change in behavior.
3309
3310         * bindings/scripts/CodeGeneratorV8.pm:
3311         (GenerateToV8Converters):
3312         * bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
3313         (WebCore::V8TestActiveDOMObject::wrapSlow):
3314         * bindings/scripts/test/V8/V8TestNode.cpp:
3315         (WebCore::V8TestNode::wrapSlow):
3316         * bindings/v8/ScriptController.cpp:
3317         (WebCore::ScriptController::context):
3318         (WebCore):
3319         * bindings/v8/ScriptController.h:
3320         (ScriptController):
3321         * bindings/v8/V8DOMWrapper.cpp:
3322         (WebCore::V8DOMWrapper::setNamedHiddenWindowReference):
3323         * bindings/v8/V8Proxy.cpp:
3324         * bindings/v8/V8Proxy.h:
3325         (V8Proxy):
3326         * bindings/v8/custom/V8DOMWindowCustom.cpp:
3327         (WebCore::WindowSetTimeoutImpl):
3328         (WebCore::V8DOMWindow::eventAccessorGetter):
3329         (WebCore::V8DOMWindow::eventAccessorSetter):
3330         (WebCore::DialogHandler::dialogCreated):
3331         (WebCore::toV8):
3332         * bindings/v8/custom/V8HTMLDocumentCustom.cpp:
3333         (WebCore::V8HTMLDocument::openCallback):
3334
3335 2012-08-22  Kentaro Hara  <haraken@chromium.org>
3336
3337         [V8] Remove V8Proxy from V8DOMWrapper::instantiateV8Object()
3338         https://bugs.webkit.org/show_bug.cgi?id=94713
3339
3340         Reviewed by Adam Barth.
3341
3342         To kill V8Proxy, V8DOMWrapper::instantiateV8Object() should receive Frame*
3343         instead of V8Proxy*.
3344
3345         No tests. No change in behavior.
3346
3347         * bindings/scripts/CodeGeneratorV8.pm:
3348         (GenerateToV8Converters):
3349         * bindings/scripts/test/V8/V8Float64Array.cpp:
3350         (WebCore::V8Float64Array::wrapSlow):
3351         * bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
3352         (WebCore::V8TestActiveDOMObject::wrapSlow):
3353         * bindings/scripts/test/V8/V8TestCustomNamedGetter.cpp:
3354         (WebCore::V8TestCustomNamedGetter::wrapSlow):
3355         * bindings/scripts/test/V8/V8TestEventConstructor.cpp:
3356         (WebCore::V8TestEventConstructor::wrapSlow):
3357         * bindings/scripts/test/V8/V8TestEventTarget.cpp:
3358         (WebCore::V8TestEventTarget::wrapSlow):
3359         * bindings/scripts/test/V8/V8TestException.cpp:
3360         (WebCore::V8TestException::wrapSlow):
3361         * bindings/scripts/test/V8/V8TestInterface.cpp:
3362         (WebCore::V8TestInterface::wrapSlow):
3363         * bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:
3364         (WebCore::V8TestMediaQueryListListener::wrapSlow):
3365         * bindings/scripts/test/V8/V8TestNamedConstructor.cpp:
3366         (WebCore::V8TestNamedConstructor::wrapSlow):
3367         * bindings/scripts/test/V8/V8TestNode.cpp:
3368         (WebCore::V8TestNode::wrapSlow):
3369         * bindings/scripts/test/V8/V8TestObj.cpp:
3370         (WebCore::V8TestObj::wrapSlow):
3371         * bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
3372         (WebCore::V8TestSerializedScriptValueInterface::wrapSlow):
3373         * bindings/v8/V8DOMWrapper.cpp:
3374         (WebCore):
3375         (WebCore::V8DOMWrapper::instantiateV8Object):
3376         * bindings/v8/V8DOMWrapper.h:
3377         (V8DOMWrapper):
3378
3379 2012-08-22  Joshua Bell  <jsbell@chromium.org>
3380
3381         IndexedDB: IDBRequest can be destructed during abort
3382         https://bugs.webkit.org/show_bug.cgi?id=94618
3383
3384         Reviewed by Tony Chang.
3385
3386         If there are no script references, an IDBRequest could be kept alive
3387         only by enqueued events. On document destruction, the parent transaction
3388         is aborted, which aborts the request. During the abort, the enqueued events
3389         are deleted, releasing the last reference to the IDBRequest which then
3390         destructs in mid-method call and an "unfinished" state, hitting an assert.
3391
3392         This patch keeps the IDBRequest alive through the completion of the abort()
3393         method, which will enqueue another event. In the document destruction case,
3394         this will end up with the IDBRequest having stop() called on it which will
3395         send the IDBRequest into EarlyDeath state, satisfying the destructor assert.
3396
3397         Addresses existing layout tests that behave flakily in Chromium port.
3398
3399         * Modules/indexeddb/IDBRequest.cpp:
3400         (WebCore::IDBRequest::abort):
3401
3402 2012-08-22  Kentaro Hara  <haraken@chromium.org>
3403
3404         [V8] Move precompileScript() from V8Proxy to ScriptSourceCode
3405         https://bugs.webkit.org/show_bug.cgi?id=94701
3406
3407         Reviewed by Adam Barth.
3408
3409         To kill V8Proxy, we can move precompileScript() from V8Proxy
3410         to ScriptSourceCode.
3411
3412         No tests. No change in behavior.
3413
3414         * bindings/v8/ScriptSourceCode.cpp:
3415         (WebCore::ScriptSourceCode::precompileScript):
3416         (WebCore):
3417         * bindings/v8/ScriptSourceCode.h:
3418         (ScriptSourceCode):
3419         * bindings/v8/V8Proxy.cpp:
3420         (WebCore::V8Proxy::evaluate):
3421         * bindings/v8/V8Proxy.h:
3422         (V8Proxy):
3423
3424 2012-08-22  Nikhil Bhargava  <nbhargava@google.com>
3425
3426         Reduce Font.h includes across project -- improves RenderObject.h compile time
3427         https://bugs.webkit.org/show_bug.cgi?id=93629
3428
3429         Reviewed by Eric Seidel.
3430
3431         RenderStyle.h no longer depends on Font.h. The files that transitively
3432         need to be updated with proper includes are fixed.
3433
3434         No new tests. Functionality should remain the same.
3435
3436         * accessibility/gtk/WebKitAccessibleInterfaceText.cpp:
3437         * accessibility/mac/WebAccessibilityObjectWrapper.mm:
3438         * bindings/objc/DOM.mm:
3439         * css/CSSComputedStyleDeclaration.cpp:
3440         * css/CSSPrimitiveValue.cpp:
3441         * css/StyleResolver.h:
3442         * dom/CharacterData.cpp:
3443         * dom/ElementRareData.h:
3444         * dom/NodeRenderingContext.cpp:
3445         * dom/Text.cpp:
3446         * editing/TextIterator.cpp:
3447         * editing/mac/EditorMac.mm:
3448         * html/HTMLTitleElement.cpp:
3449         * html/shadow/TextControlInnerElements.cpp:
3450         * inspector/InspectorOverlay.cpp:
3451         * page/ContextMenuController.cpp:
3452         * page/PrintContext.cpp:
3453         * platform/efl/RenderThemeEfl.cpp:
3454         * platform/graphics/FontMetrics.h:
3455         * platform/gtk/RenderThemeGtk.cpp:
3456         * platform/gtk/RenderThemeGtk2.cpp:
3457         * platform/mac/HTMLConverter.mm:
3458         * rendering/EllipsisBox.cpp:
3459         * rendering/FlowThreadController.cpp:
3460         * rendering/InlineBox.cpp:
3461         * rendering/InlineFlowBox.cpp:
3462         * rendering/InlineFlowBox.h:
3463         (WebCore):
3464         * rendering/RenderButton.cpp: