Caret is drawn in the wrong place in multi-column blocks
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2011-10-21  Dan Bernstein  <mitz@apple.com>
2
3         Caret is drawn in the wrong place in multi-column blocks
4         https://bugs.webkit.org/show_bug.cgi?id=70662
5
6         Reviewed by Gavin Barraclough.
7
8         * manual-tests/caret-in-columns.html: Added.
9         * rendering/RenderBlock.cpp:
10         (WebCore::RenderBlock::paintCaret): Removed the call to offsetForContents(). That function takes
11         a point in local coordinates, whereas this function was applying it to a point in painting root
12         coordinates. The desired effect was only to undo the scroll adjustment done by the caller,
13         paintObject().
14         (WebCore::RenderBlock::paintObject): Pass the original, rather than scroll-adjusted, paint offset
15         to paintCaret().
16
17 2011-10-21  Nat Duca  <nduca@chromium.org>
18
19         [chromium] Make setVisibility extension- and thread-correct
20         https://bugs.webkit.org/show_bug.cgi?id=70635
21
22         Reviewed by Kenneth Russell.
23
24         * platform/graphics/chromium/Extensions3DChromium.h:
25         * platform/graphics/chromium/LayerRendererChromium.cpp:
26         (WebCore::LayerRendererChromium::initialize):
27         (WebCore::LayerRendererChromium::setVisible):
28         * platform/graphics/chromium/LayerRendererChromium.h:
29         * platform/graphics/chromium/cc/CCLayerTreeHost.h:
30         (WebCore::LayerRendererCapabilities::LayerRendererCapabilities):
31         * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
32         (WebCore::CCLayerTreeHostImpl::setVisible):
33
34 2011-10-21  Beth Dakin  <bdakin@apple.com>
35
36         https://bugs.webkit.org/show_bug.cgi?id=70647
37         Common but unreproducible crash under [ScrollbarPartAnimation setCurrentProgress:]
38         -and corresponding-
39         <rdar://problem/9542018>
40
41         Reviewed by Sam Weinig.
42
43         This patch implements two speculative fixes for this crash.
44
45         First, block exceptions around all of the code responsible for calling 
46         stopAnimation. If that code throws any exceptions, we want to make sure the other 
47         animations are still stopped.
48         * platform/mac/ScrollAnimatorMac.mm:
49         (-[WebScrollbarPartAnimation scrollAnimatorDestroyed]):
50         (-[WebScrollbarPainterDelegate scrollAnimatorDestroyed]):
51         (WebCore::ScrollAnimatorMac::~ScrollAnimatorMac):
52
53         Only send AppKit these notifications for active pages. I originally made these 
54         assertions, and I found that they were hit a surprising number of times. If we 
55         only send notifications for active pages, then we should greatly reduce and 
56         possibly eliminate our chances of hitting this crash.
57         (WebCore::ScrollAnimatorMac::notifyPositionChanged):
58         (WebCore::ScrollAnimatorMac::contentAreaWillPaint):
59         (WebCore::ScrollAnimatorMac::mouseEnteredContentArea):
60         (WebCore::ScrollAnimatorMac::mouseExitedContentArea):
61         (WebCore::ScrollAnimatorMac::mouseMovedInContentArea):
62         (WebCore::ScrollAnimatorMac::willStartLiveResize):
63         (WebCore::ScrollAnimatorMac::contentsResized):
64         (WebCore::ScrollAnimatorMac::willEndLiveResize):
65         (WebCore::ScrollAnimatorMac::contentAreaDidShow):
66         (WebCore::ScrollAnimatorMac::contentAreaDidHide):
67         (WebCore::ScrollAnimatorMac::didBeginScrollGesture):
68         (WebCore::ScrollAnimatorMac::didEndScrollGesture):
69
70 2011-10-21  Mark Hahnenberg  <mhahnenberg@apple.com>
71
72         Add put to the MethodTable
73         https://bugs.webkit.org/show_bug.cgi?id=70439
74
75         Reviewed by Oliver Hunt.
76
77         No new tests.
78
79         * WebCore.exp.in:
80         * bindings/js/JSDOMWindowCustom.cpp: Added static put since it was overlooked in 
81         previous patches.
82         (WebCore::JSDOMWindow::putVirtual):
83         (WebCore::JSDOMWindow::put):
84         * bindings/js/JSDOMWindowShell.cpp: Ditto.
85         (WebCore::JSDOMWindowShell::putVirtual):
86         (WebCore::JSDOMWindowShell::put):
87         * bindings/js/JSDOMWindowShell.h:
88
89 2011-10-21  Dmitry Lomov  <dslomov@google.com>
90
91         https://bugs.webkit.org/show_bug.cgi?id=70580
92         [Chromium] Implement MessagePort transfer in chromium port of webkit.
93
94         Reviewed by David Levin.
95
96         * bindings/v8/SerializedScriptValue.cpp:
97         (WebCore::V8ObjectMap::Writer::writeTransferredMessagePort):
98         (WebCore::V8ObjectMap::Serializer::Serializer):
99         (WebCore::V8ObjectMap::Serializer::doSerialize):
100         (WebCore::V8ObjectMap::Reader::read):
101         (WebCore::V8ObjectMap::Deserializer::Deserializer):
102         (WebCore::V8ObjectMap::Deserializer::tryGetTransferredMessagePort):
103         (WebCore::SerializedScriptValue::SerializedScriptValue):
104         (WebCore::SerializedScriptValue::deserialize):
105
106 2011-10-21  Ojan Vafai  <ojan@chromium.org>
107
108         r97693 caused 42 failures on the chromium mac bots
109         https://bugs.webkit.org/show_bug.cgi?id=70300
110
111         Can't test this until https://bugs.webkit.org/show_bug.cgi?id=70660
112         is fixed. The fix for that bug will test this codepath as well though.
113
114         * rendering/RenderBlock.cpp:
115         (WebCore::RenderBlock::computeBlockPreferredLogicalWidths):
116
117 2011-10-21  Vineet Chaudhary  <vineet.chaudhary@motorola.com>
118
119         Setting form.enctype reflected attribute behaves strangely.
120         https://bugs.webkit.org/show_bug.cgi?id=44879
121
122         Reviewed by Darin Adler.
123
124         The spec says form.enctype should be application/x-www-form-urlencoded,
125         So as "text", "plain", "multipart" or "form-data" these are not a valid value so must be ignored.
126
127         * loader/FormSubmission.cpp:
128         (WebCore::FormSubmission::Attributes::parseEncodingType):
129
130 2011-10-21  Matthew Delaney  <mdelaney@apple.com>
131
132         Ensure periodic flushing of canvas drawing context
133         https://bugs.webkit.org/show_bug.cgi?id=70646
134
135         Reviewed by Simon Fraser.
136
137         No new tests. No current way to track tests that cause hangs or
138         non-deterministic drops in performance.
139
140         * platform/graphics/cg/ImageBufferDataCG.h: Adds a timestamp of last tracked flush.
141         * platform/graphics/cg/ImageBufferCG.cpp: Ensures periodic flushes on the drawing context.
142         (WebCore::ImageBuffer::ImageBuffer):
143         (WebCore::ImageBuffer::context): Flushes context if we're beyond flush interval.
144         (WebCore::ImageBuffer::copyNativeImage): Updates last flush timestamp.
145         (WebCore::ImageBuffer::getUnmultipliedImageData): Updates last flush timestamp.
146         (WebCore::ImageBuffer::getPremultipliedImageData): Updates last flush timestamp.
147         (WebCore::ImageBuffer::putUnmultipliedImageData): Updates last flush timestamp.
148         (WebCore::ImageBuffer::putPremultipliedImageData): Updates last flush timestamp.
149
150 2011-10-21  Adam Barth  <abarth@webkit.org>
151
152         Introduce Event::hasInterface to make uses of interfaceName more readable
153         https://bugs.webkit.org/show_bug.cgi?id=70652
154
155         Reviewed by Eric Seidel.
156
157         Eric felt that this approach would be more readable because it requires
158         less syntax at each callsite.
159
160         * bindings/js/JSErrorHandler.cpp:
161         (WebCore::JSErrorHandler::handleEvent):
162         * bindings/objc/DOMEvents.mm:
163         (kitClass):
164         * bindings/v8/V8WindowErrorHandler.cpp:
165         (WebCore::V8WindowErrorHandler::callListenerFunction):
166         * bindings/v8/V8WorkerContextErrorHandler.cpp:
167         (WebCore::V8WorkerContextErrorHandler::callListenerFunction):
168         * dom/Event.cpp:
169         (WebCore::Event::hasInterface):
170         * dom/Event.h:
171         * dom/EventDispatcher.cpp:
172         (WebCore::EventDispatcher::determineDispatchBehavior):
173         * dom/Node.cpp:
174         (WebCore::Node::defaultEventHandler):
175         * html/HTMLInputElement.cpp:
176         (WebCore::HTMLInputElement::defaultEventHandler):
177         * html/HTMLTextAreaElement.cpp:
178         (WebCore::HTMLTextAreaElement::defaultEventHandler):
179         * html/TextFieldInputType.cpp:
180         (WebCore::TextFieldInputType::forwardEvent):
181         (WebCore::TextFieldInputType::shouldSubmitImplicitly):
182         * inspector/InspectorDOMStorageResource.cpp:
183         (WebCore::InspectorDOMStorageResource::handleEvent):
184
185 2011-10-21  Adam Klein  <adamk@chromium.org>
186
187         [MutationObservers] Implement basic subtree observation
188         https://bugs.webkit.org/show_bug.cgi?id=70436
189
190         Reviewed by Ryosuke Niwa.
191
192         Note that this patch only implements "basic" subtree semantics,
193         not the fully robust semantics described in
194         http://lists.w3.org/Archives/Public/public-webapps/2011JulSep/1622.html.
195         Most importantly, this change does not handle the case where mutations
196         occur in a temporarily detached subtree.
197
198         The plan is to implement those semantics in a followup to avoid
199         blocking other parts of the MutationObserver spec that rely on
200         the existence of subtree observation but not its specific
201         implementation.
202
203         Test: fast/mutation/observe-subtree.html
204
205         * dom/Node.cpp:
206         (WebCore::addMatchingObservers): Static helper method for registeredMutationObserversOfType().
207         (WebCore::Node::registeredMutationObserversOfType): Walk up the tree looking for observers.
208         * dom/NodeRareData.h:
209         (WebCore::MutationObserverEntry::hasAllOptions): A stricter, renamed from matches().
210
211 2011-10-21  Joshua Bell  <jsbell@chromium.org>
212
213         IndexedDB: objectStore.transaction property should be readonly
214         https://bugs.webkit.org/show_bug.cgi?id=62395
215
216         Reviewed by Tony Chang.
217
218         Implement the IDBObjectStore.transaction property defined by the spec.
219
220         Test: storage/indexeddb/readonly-properties.html
221
222         * storage/IDBObjectStore.cpp:
223         (WebCore::IDBObjectStore::transaction):
224         * storage/IDBObjectStore.h:
225         * storage/IDBObjectStore.idl:
226
227 2011-10-21  Adam Barth  <abarth@webkit.org>
228
229         Event.h has too many virtual isMumbleEvent() functions
230         https://bugs.webkit.org/show_bug.cgi?id=70636
231
232         Reviewed by Dimitri Glazkov.
233
234         We should use the new interfaceName() way of doing run-time type inference.
235
236         * bindings/js/JSErrorHandler.cpp:
237         (WebCore::JSErrorHandler::handleEvent):
238         * bindings/js/JSEventCustom.cpp:
239         (WebCore::JSEvent::clipboardData):
240         * bindings/objc/DOMEvents.mm:
241         (kitClass):
242         * bindings/v8/V8WindowErrorHandler.cpp:
243         (WebCore::V8WindowErrorHandler::callListenerFunction):
244         * bindings/v8/V8WorkerContextErrorHandler.cpp:
245         (WebCore::V8WorkerContextErrorHandler::callListenerFunction):
246         * bindings/v8/custom/V8EventCustom.cpp:
247         (WebCore::V8Event::clipboardDataAccessorGetter):
248         * dom/BeforeLoadEvent.h:
249         (WebCore::BeforeLoadEvent::interfaceName):
250         * dom/BeforeTextInsertedEvent.h:
251         * dom/ClipboardEvent.cpp:
252         * dom/ClipboardEvent.h:
253         * dom/CompositionEvent.cpp:
254         * dom/CompositionEvent.h:
255         * dom/ErrorEvent.cpp:
256         * dom/ErrorEvent.h:
257         * dom/Event.cpp:
258         (WebCore::Event::storesResultAsString):
259         (WebCore::Event::storeResult):
260         (WebCore::Event::clipboardData):
261         * dom/Event.h:
262         * dom/Event.idl:
263             - Remove this interface from the CPP bindings because this function
264               no longer exists.  It's unclear to me how strong our API
265               commitments are in the CPP bindings.
266         * dom/EventDispatcher.cpp:
267         (WebCore::EventDispatcher::determineDispatchBehavior):
268         * dom/MessageEvent.cpp:
269         * dom/MessageEvent.h:
270         * dom/MutationEvent.cpp:
271         * dom/MutationEvent.h:
272         * dom/Node.cpp:
273         (WebCore::Node::defaultEventHandler):
274         * dom/OverflowEvent.cpp:
275         * dom/OverflowEvent.h:
276         * dom/PageTransitionEvent.h:
277         * dom/ProgressEvent.h:
278         * dom/TextEvent.cpp:
279         * dom/TextEvent.h:
280         * dom/WheelEvent.cpp:
281         * dom/WheelEvent.h:
282         * html/HTMLInputElement.cpp:
283         (WebCore::HTMLInputElement::defaultEventHandler):
284         * html/HTMLTextAreaElement.cpp:
285         (WebCore::HTMLTextAreaElement::defaultEventHandler):
286         * html/TextFieldInputType.cpp:
287         (WebCore::TextFieldInputType::forwardEvent):
288         (WebCore::TextFieldInputType::shouldSubmitImplicitly):
289         * html/shadow/TextControlInnerElements.cpp:
290         (WebCore::TextControlInnerTextElement::defaultEventHandler):
291         * svg/SVGZoomEvent.cpp:
292         * svg/SVGZoomEvent.h:
293
294 2011-10-21  Raymond Toy  <rtoy@google.com>
295
296         Flush denormals in Biquad, ZeroPole, and DynamicsCompressor.
297
298         We only flush when saving the state variables instead of in the
299         loops so that we don't impact performance too much when there are
300         no denormals.  This will at least not propagate the denormals any
301         further within the class.
302         
303         https://bugs.webkit.org/show_bug.cgi?id=70626
304
305         Reviewed by Kenneth Russell.
306
307         * platform/audio/Biquad.cpp:
308         (WebCore::Biquad::process):
309         Flush denormals when storing the filter state back in to class
310         filter state.  
311         * platform/audio/DynamicsCompressorKernel.cpp:
312         (WebCore::DynamicsCompressorKernel::process):
313         Ditto.
314         * platform/audio/ZeroPole.cpp:
315         (WebCore::ZeroPole::process):
316         Ditto.
317
318 2011-10-21  Vsevolod Vlasov  <vsevik@chromium.org>
319
320         Web Inspector: Advanced search results should be cleared on navigation.
321         https://bugs.webkit.org/show_bug.cgi?id=70627
322
323         Reviewed by Pavel Feldman.
324
325         * inspector/front-end/AdvancedSearchController.js:
326         (WebInspector.AdvancedSearchController):
327         (WebInspector.AdvancedSearchController.prototype._frameNavigated):
328
329 2011-10-21  Rafael Weinstein  <rafaelw@chromium.org>
330
331         [MutationObservers] Implement WebKitMutationObserver.observe for childList changes
332         https://bugs.webkit.org/show_bug.cgi?id=68955
333
334         Reviewed by Ryosuke Niwa.
335
336         This patch adds a ChildListMutationScope object which manages the coalescing of
337         multiple child removals and additions within DOM operations into single childList
338         mutation records.
339
340         Note that this patch doesn't cover all the cases which can be coalesced (it only
341         covers ContainerNode.*, and Node.innerHTML/innerText). A separate bug,
342         https://bugs.webkit.org/show_bug.cgi?id=70385, has been opened to track the
343         remaining cases.
344
345         Test: fast/mutation/observe-childList.html
346
347         * CMakeLists.txt:
348         * GNUmakefile.list.am:
349         * WebCore.gypi:
350         * WebCore.pro:
351         * WebCore.vcproj/WebCore.vcproj:
352         * WebCore.xcodeproj/project.pbxproj:
353         * dom/ChildListMutationScope.cpp: Added.
354         (WebCore::ChildListAccumulation::ChildListAccumulation::ChildListAccumulation):
355         (WebCore::ChildListAccumulation::ChildListAccumulation::~ChildListAccumulation):
356         (WebCore::ChildListAccumulation::ChildListAccumulation::childAdded):
357         (WebCore::ChildListAccumulation::ChildListAccumulation::willRemoveChild):
358         (WebCore::ChildListAccumulation::ChildListAccumulation::dispatch):
359         (WebCore::ChildListAccumulation::ChildListAccumulation::clear):
360         (WebCore::ChildListAccumulation::ChildListAccumulation::isEmpty):
361         (WebCore::ChildListAccumulation::ChildListAccumulator::ChildListAccumulator):
362         (WebCore::ChildListAccumulation::ChildListAccumulator::~ChildListAccumulator):
363         (WebCore::ChildListAccumulation::ChildListAccumulator::initialize):
364         (WebCore::ChildListAccumulation::ChildListAccumulator::instance):
365         (WebCore::ChildListAccumulation::ChildListAccumulator::childAdded):
366         (WebCore::ChildListAccumulation::ChildListAccumulator::willRemoveChild):
367         (WebCore::ChildListAccumulation::ChildListAccumulator::incrementScopingLevel):
368         (WebCore::ChildListAccumulation::ChildListAccumulator::decrementScopingLevel):
369         (WebCore::ChildListMutationScope::ChildListMutationScope):
370         (WebCore::ChildListMutationScope::~ChildListMutationScope):
371         (WebCore::ChildListMutationScope::childAdded):
372         (WebCore::ChildListMutationScope::willRemoveChild):
373         * dom/ChildListMutationScope.h: Added.
374         * dom/ContainerNode.cpp:
375         (WebCore::ContainerNode::insertBefore):
376         (WebCore::ContainerNode::replaceChild):
377         (WebCore::willRemoveChildren):
378         (WebCore::dispatchChildInsertionEvents):
379         (WebCore::dispatchChildRemovalEvents):
380         * dom/Element.cpp:
381         (WebCore::enqueueAttributesMutationRecord):
382         * dom/Node.cpp:
383         (WebCore::Node::setTextContent):
384         (WebCore::Node::registeredMutationObserversOfType):
385         * dom/WebKitMutationObserver.cpp:
386         (WebCore::WebKitMutationObserver::disconnect):
387         * html/HTMLElement.cpp:
388         (WebCore::replaceChildrenWithFragment):
389         (WebCore::replaceChildrenWithText):
390
391 2011-10-21  Sheriff Bot  <webkit.review.bot@gmail.com>
392
393         Unreviewed, rolling out r98079.
394         http://trac.webkit.org/changeset/98079
395         https://bugs.webkit.org/show_bug.cgi?id=70624
396
397         The extensions tests enabled are failing on the Chromium Win
398         Dbg bot (Requested by jchaffraix on #webkit).
399
400         * inspector/front-end/ExtensionAPI.js:
401         (buildExtensionAPIInjectedScript):
402
403 2011-10-21  Dan Bernstein  <mitz@apple.com>
404
405         Column rules positioned incorrectly in vertical-rl block with horizontal border or padding
406         https://bugs.webkit.org/show_bug.cgi?id=70622
407
408         Reviewed by Beth Dakin.
409
410         Tests: fast/multicol/vertical-lr/rules-with-border-before.html
411                fast/multicol/vertical-rl/rules-with-border-before.html
412
413         * rendering/RenderBlock.cpp:
414         (WebCore::RenderBlock::paintColumnRules): Changed to use the physical left border and padding for the
415         left edge of the horizontal column rule.
416
417 2011-10-21  Simon Fraser  <simon.fraser@apple.com>
418
419         Fix Windows build.
420
421         * rendering/RenderLayerCompositor.cpp:
422         (WebCore::RenderLayerCompositor::hasAnyAdditionalCompositedLayers):
423
424 2011-10-21  Devdatta Deshpande  <pwjd73@motorola.com>
425
426         [Gtk] mousemove event always has metaKey == true
427         https://bugs.webkit.org/show_bug.cgi?id=35299
428
429         Reviewed by Martin Robinson.
430
431         GDK_MOD2_MASK doesn't always mean meta so we can't use it to identify
432         the meta key state. Use GDK_META_MASK instead.
433
434         Test: platform/gtk/fast/events/event-sender-metakey.html
435
436         * platform/gtk/PlatformMouseEventGtk.cpp:
437         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
438
439 2011-10-21  Andreas Kling  <kling@webkit.org>
440
441         Style and Link elements' sheet() should return CSSStyleSheet.
442         https://bugs.webkit.org/show_bug.cgi?id=70608
443
444         Reviewed by Antti Koivisto.
445
446         Return a CSSStyleSheet* instead of a StyleSheet* in these functions
447         since we know they are always CSSStyleSheets.
448         Also remove some now-unnecessary isCSSStyleSheet() checks.
449
450         * dom/StyleElement.h:
451         (WebCore::StyleElement::sheet):
452         * html/HTMLLinkElement.cpp:
453         * html/HTMLLinkElement.h:
454         (WebCore::HTMLLinkElement::sheet):
455         * page/PageSerializer.cpp:
456         (WebCore::PageSerializer::serializeFrame):
457
458 2011-10-21  Vsevolod Vlasov  <vsevik@chromium.org>
459
460         Web Inspector: Advanced search is working very slowly and does not show searching progress.
461         https://bugs.webkit.org/show_bug.cgi?id=70611
462
463         Search implementation changed so that we do not start searching in the next file unless
464         the previous one was already searched. This allows to interrupt search.
465         Not all search matches are added on UI by default now, only first 20 for each file.
466         Search progress information and search stop button were added to drawer status bar.
467
468         Reviewed by Pavel Feldman.
469
470         * English.lproj/localizedStrings.js:
471         * inspector/ContentSearchUtils.cpp:
472         (WebCore::ContentSearchUtils::getRegularExpressionMatchesByLines):
473         (WebCore::ContentSearchUtils::countRegularExpressionMatches):
474         * inspector/front-end/AdvancedSearchController.js:
475         (WebInspector.AdvancedSearchController.prototype._onSearchResult):
476         (WebInspector.AdvancedSearchController.prototype._onSearchFinished):
477         (WebInspector.AdvancedSearchController.prototype.startSearch):
478         (WebInspector.AdvancedSearchController.prototype.resetSearch):
479         (WebInspector.AdvancedSearchController.prototype.stopSearch):
480         (WebInspector.SearchView):
481         (WebInspector.SearchView.prototype.get statusBarItems):
482         (WebInspector.SearchView.prototype.get counterElement):
483         (WebInspector.SearchView.prototype.set resultsPane):
484         (WebInspector.SearchView.prototype.searchStarted):
485         (WebInspector.SearchView.prototype._updateSearchResultsMessage):
486         (WebInspector.SearchView.prototype._updateSearchProgress):
487         (WebInspector.SearchView.prototype.resetResults):
488         (WebInspector.SearchView.prototype._resetCounters):
489         (WebInspector.SearchView.prototype.nothingFound):
490         (WebInspector.SearchView.prototype.addSearchResult):
491         (WebInspector.SearchView.prototype.searchFinished):
492         (WebInspector.SearchView.prototype._searchStopButtonPressed):
493         (WebInspector.SearchResultsPane):
494         (WebInspector.FileBasedSearchResultsPane):
495         (WebInspector.FileBasedSearchResultsPane.prototype.addSearchResult):
496         (WebInspector.FileBasedSearchResultsPane.prototype._fileTreeElementExpanded):
497         (WebInspector.FileBasedSearchResultsPane.prototype._appendSearchMatches):
498         (WebInspector.FileBasedSearchResultsPane.prototype._appendShowMoreMatchesElement):
499         (WebInspector.FileBasedSearchResultsPane.prototype._showMoreMatchesElementSelected):
500         (WebInspector.FileBasedSearchResultsPane.prototype._addFileTreeElement):
501         (WebInspector.FileBasedSearchResultsPane.prototype._regexMatchRanges):
502         * inspector/front-end/Drawer.js:
503         (WebInspector.Drawer.prototype.hide):
504         * inspector/front-end/Images/statusbarButtonGlyphs.png:
505         * inspector/front-end/ScriptsSearchScope.js:
506         (WebInspector.ScriptsSearchScope):
507         (WebInspector.ScriptsSearchScope.prototype.performSearch.filterOutContentScripts):
508         (WebInspector.ScriptsSearchScope.prototype.performSearch.continueSearch):
509         (WebInspector.ScriptsSearchScope.prototype.performSearch.searchCallbackWrapper):
510         (WebInspector.ScriptsSearchScope.prototype.performSearch):
511         (WebInspector.ScriptsSearchScope.prototype.stopSearch):
512         * inspector/front-end/TimelinePanel.js:
513         (WebInspector.TimelinePanel.prototype._registerShortcuts):
514         * inspector/front-end/inspector.css:
515         (#drawer-status-bar .search-status-bar-item):
516         (#drawer-status-bar .search-status-bar-message):
517         (#drawer-status-bar .search-status-bar-progress):
518         (#drawer-status-bar .search-status-bar-stop-button-item):
519         (#drawer-status-bar .search-status-bar-stop-button .glyph):
520         (#drawer-status-bar .search-results-status-bar-message):
521         (.search-view .search-results):
522         (#search-results-pane-file-based .search-results-outline-disclosure):
523         (#search-results-pane-file-based .search-result):
524         (#search-results-pane-file-based .search-result:hover):
525         (#search-results-pane-file-based .show-more-matches):
526         (#search-results-pane-file-based .show-more-matches:hover):
527         (#search-results-pane-file-based .search-match:hover):
528         * inspector/front-end/utilities.js:
529         ():
530
531 2011-10-20  Zhenyao Mo  <zmo@google.com>
532
533         Implement mechanism to enable privileged webgl extensions
534         https://bugs.webkit.org/show_bug.cgi?id=70538
535
536         Reviewed by Darin Fisher.
537
538         * html/canvas/WebGLRenderingContext.cpp:
539         (WebCore::WebGLRenderingContext::allowPrivilegedExtensions): check page/Settings flag.
540         * page/Settings.cpp: Add the flag.
541         (WebCore::Settings::Settings):
542         (WebCore::Settings::setPrivilegedWebGLExtensionsEnabled):
543         * page/Settings.h: Ditto.
544         (WebCore::Settings::privilegedWebGLExtensionsEnabled):
545
546 2011-10-20  Pavel Podivilov  <podivilov@chromium.org>
547
548         Web Inspector: first line in file is not highlighted.
549         https://bugs.webkit.org/show_bug.cgi?id=70504
550
551         Reviewed by Pavel Feldman.
552
553         * inspector/front-end/SourceFrame.js:
554         (WebInspector.SourceFrame.prototype._initializeTextViewer):
555
556 2011-10-21  Andreas Kling  <kling@webkit.org>
557
558         Simplify CSSStyleRule::setSelectorText().
559         https://bugs.webkit.org/show_bug.cgi?id=70607
560
561         Reviewed by Antti Koivisto.
562
563         Remove unnecessary isCSSStyleSheet() check and redundant Document finding
564         logic (CSSStyleSheet::document() will return the owner node's Document just
565         like this code would.)
566
567         * css/CSSStyleRule.cpp:
568         (WebCore::CSSStyleRule::setSelectorText):
569
570 2011-10-21  Alejandro G. Castro  <alex@igalia.com>
571
572         [cairo] Forward declaration of GraphicsContextState uses class instead of struct
573         https://bugs.webkit.org/show_bug.cgi?id=70522
574
575         The type is a struct not a class, replace the definition in the
576         forward declaration.
577
578         Reviewed by Martin Robinson.
579
580         * platform/graphics/cairo/PlatformContextCairo.h:
581
582 2011-10-20  Andrey Kosyakov  <caseq@chromium.org>
583
584         Web Inspector: make extension tests pass on chromium
585         https://bugs.webkit.org/show_bug.cgi?id=70334
586
587         Reviewed by Pavel Feldman.
588
589         * inspector/front-end/ExtensionAPI.js:
590         (buildExtensionAPIInjectedScript):
591
592 2011-10-20  Peter Rybin  <peter.rybin@gmail.com>
593
594         Web Inspector: reimplement protocol backend/frontend source generator
595         https://bugs.webkit.org/show_bug.cgi?id=69295
596
597         Reviewed by Pavel Feldman.
598
599         Old 2-stage python+perf generator that uses intermediate IDL output is
600         being replaced with a solid python script. This is for simplicity and
601         as a base for the future JSON validator.
602
603         * CMakeLists.txt:
604         * CodeGenerators.pri:
605         * DerivedSources.make:
606         * GNUmakefile.am:
607         * WebCore.gyp/WebCore.gyp:
608         * inspector/CodeGeneratorInspector.pm: Removed.
609         * inspector/CodeGeneratorInspector.py: Added.
610         * inspector/Inspector.json:
611         * inspector/generate-inspector-idl: Removed.
612
613 2011-10-20  Adam Barth  <abarth@webkit.org>
614
615         Attemp to fix a bunch of tests PLATFORM(MAC).  We can't use a static
616         map because that's shared between threads (and events exist in worker
617         threads).  It migh be better to add a thread-specific map, but we can
618         do that in another patch.
619
620         * bindings/js/JSEventCustom.cpp:
621         (WebCore::toJS):
622         * bindings/v8/custom/V8EventCustom.cpp:
623         (WebCore::toV8):
624
625 2011-10-20  Simon Fraser  <simon.fraser@apple.com>
626
627         Hidden composited iframes cause infinite loop
628         https://bugs.webkit.org/show_bug.cgi?id=52655
629
630         Reviewed by Darin Adler.
631         
632         visibility:hidden is problematic for compositing, because it causes
633         RenderLayers to be removed from the z-order layer tree. This confuses
634         RenderLayerCompositor in several ways; it never sees these layers
635         when traversing the tree as it computes compositing requirements, or
636         rebuilds the layer tree.
637         
638         This is a particular problem with composited iframes. When an iframe
639         becomes composited, scheduleSetNeedsStyleRecalc() is called on that
640         iframe's ownerElement in the parent document. If this happens inside
641         Document::updateStyleForAllDocuments(), we get into an infinite loop
642         because notifyIFramesOfCompositingChange() queues up style update as we
643         bounce in and out of compositing mode, so documentsThatNeedStyleRecalc
644         never empties out.
645         
646         This is an initial, conservative fix that doesn't attempt to fix all
647         the issues with visibility. It changes RenderLayerCompositor to count
648         the number of compositing RenderLayers, and to not leave compositing
649         mode if there are any (even if they are hidden, so not hit while
650         traversing the z-order tree). This avoids the infinite loop.
651
652         Test: compositing/visibility/hidden-iframe.html
653
654         * rendering/RenderLayer.cpp:
655         (WebCore::RenderLayer::ensureBacking):
656         (WebCore::RenderLayer::clearBacking):
657         * rendering/RenderLayerCompositor.cpp:
658         (WebCore::RenderLayerCompositor::RenderLayerCompositor):
659         (WebCore::RenderLayerCompositor::hasAnyAdditionalCompositedLayers):
660         (WebCore::RenderLayerCompositor::updateCompositingLayers):
661         (WebCore::RenderLayerCompositor::computeCompositingRequirements):
662         * rendering/RenderLayerCompositor.h:
663         (WebCore::RenderLayerCompositor::layerBecameComposited):
664         (WebCore::RenderLayerCompositor::layerBecameNonComposited):
665
666 2011-10-20  Antoine Labour  <piman@chromium.org>
667
668         Make WebCore depend on translator_glsl instead of translator_common
669         https://bugs.webkit.org/show_bug.cgi?id=70548
670
671         Reviewed by Kenneth Russell.
672
673         This is a build-only fix. Tested by checking WebKit still compiles and
674         link.
675
676         * WebCore.gyp/WebCore.gyp:
677
678 2011-10-20  Dana Jansens  <danakj@chromium.org>
679
680         [Chromium] Fix opaque flag default and for ImageLayerChromium
681         https://bugs.webkit.org/show_bug.cgi?id=70554
682
683         Reviewed by James Robinson.
684
685         Covered by layout tests.
686
687         * platform/graphics/chromium/ImageLayerChromium.cpp:
688         (WebCore::ImageLayerChromium::setContents): Set opaque flag based on if the image claims to have alpha.
689         * platform/graphics/chromium/LayerChromium.cpp:
690         (WebCore::LayerChromium::LayerChromium): Match the default opaque value in GraphicsLayerChromium.
691
692 2011-10-20  Yosifumi Inoue  <yosin@chromium.org>
693
694         [Forms][File] Add tooltip to "No file selected" text
695         https://bugs.webkit.org/show_bug.cgi?id=70474
696
697         Reviewed by Kent Tamura.
698
699         No new tests. Existing tests cover all changes.
700
701         This patch provides tooltip for text portion of upload file control
702         tell users to know actual text of truncated text of file name and
703         "No file selected" text. Tooltip is always displayed even if user
704         select only one file for truncated displayed file name.
705
706         * html/FileInputType.cpp:
707         (WebCore::FileInputType::defaultToolTip): Implement default tooltip logic.
708         * html/FileInputType.h: declaration of new method defaultToolTip.
709         * html/HTMLInputElement.cpp:
710         (WebCore::HTMLInputElement::defaultToolTip): Impelement new method defaultToolTip.
711         * html/HTMLInputElement.h: declaration of new method defaultToolTip.
712         * html/InputType.cpp:
713         (WebCore::InputType::defaultToolTip): Implement default method of defaultToolTip method.
714         * html/InputType.h: declaration of new method defaultToolTip.
715         * page/Chrome.cpp:
716         (WebCore::Chrome::setToolTip): Use new method HTMLInputElement::defaultToolTip and move default tooltip logic to FileInputType::defaultToolTip method.
717
718 2011-10-20  Darin Adler  <darin@apple.com>
719
720         Remove OptionElement (first half)
721         https://bugs.webkit.org/show_bug.cgi?id=70276
722
723         Reviewed by Kent Tamura.
724
725         Refactoring that does not require new tests.
726
727         * css/SelectorChecker.cpp:
728         (WebCore::SelectorChecker::checkOneSelector): Use hasTagName
729         and toHTMLOptionElement instead of toOptionElement.
730
731         * dom/OptionElement.cpp: Deleted contents. Remove file later.
732         * dom/OptionElement.h: Ditto.
733
734         * html/HTMLOptionElement.cpp:
735         (WebCore::HTMLOptionElement::HTMLOptionElement): Initialize m_isSelected.
736         (WebCore::HTMLOptionElement::createForJSConstructor): Initialize the
737         selected attribute rather than calling setDefaultSelected.
738         (WebCore::HTMLOptionElement::text): Moved the code here from
739         OptionElement::collectOptionLabelOrText.
740         (WebCore::HTMLOptionElement::index): Moved the code here from
741         OptionElement::optionIndex.
742         (WebCore::HTMLOptionElement::parseMappedAttribute): Removed unneeded
743         code to call setValue and setLabel. Changed the code that called
744         setSelected to instead set m_isSelected and added a FIXME about why
745         that's probably wrong, but same behavior as before.
746         (WebCore::HTMLOptionElement::value): Moved the code here from
747         OptionElement::collectOptionValue. Added a FIXME about incorrect
748         whitespace stripping.
749         (WebCore::HTMLOptionElement::selected): Use m_isSelected.
750         (WebCore::HTMLOptionElement::setSelected): Use m_isSelected and
751         call setSelectedState instead of OptionElement::setSelectedState.
752         (WebCore::HTMLOptionElement::setSelectedState): Moved the code
753         here from OptionElement::setSelectedState.
754         (WebCore::HTMLOptionElement::label): Streamlined the code.
755         (WebCore::HTMLOptionElement::textIndentedToRespectGroupLabel):
756         Moved the code here from OptionElement::collectOptionTextRespectingGroupLabel.
757         (WebCore::HTMLOptionElement::insertedIntoTree): Use m_isSelected
758         and rewrote comment for clarity.
759         (WebCore::HTMLOptionElement::collectOptionInnerText): Moved this
760         here from OptionElement, and changed to use StringBuilder.
761         (WebCore::toHTMLOptionElement): Added.
762
763         * html/HTMLOptionElement.h: Removed OptionElement.h include.
764         Removed OptionElement base class. Removed unneeded friend declarations.
765         Made value and selected functions non-virtual. Removed unneeded
766         defaultSelected and setDefaultSelected functions. Made the
767         textIndentedToRespectGroupLabel and setSelectedState functions
768         be non-virtual and public. Added a collectOptionInnerText function.
769         Replaced m_data with m_value, m_label, and m_selected.
770
771         * html/HTMLSelectElement.cpp:
772         (WebCore::toOptionElement): Added. Helper to keep existing code
773         close to the same.
774         (WebCore::HTMLSelectElement::nextValidIndex): Use hasTagName
775         instead of isOptionElement.
776         (WebCore::HTMLSelectElement::saveLastSelection): Use HTMLOptionElement
777         type instead of OptionElement.
778         (WebCore::HTMLSelectElement::setActiveSelectionAnchorIndex): Ditto.
779         (WebCore::HTMLSelectElement::updateListBoxSelection): Ditto.
780         (WebCore::HTMLSelectElement::listBoxOnChange): Ditto.
781         (WebCore::HTMLSelectElement::recalcListItems): Ditto.
782         (WebCore::HTMLSelectElement::selectedIndex): Ditto.
783         (WebCore::HTMLSelectElement::setSelectedIndex): Ditto.
784         (WebCore::HTMLSelectElement::optionToListIndex): Ditto.
785         (WebCore::HTMLSelectElement::listToOptionIndex): Ditto.
786         (WebCore::HTMLSelectElement::deselectItemsWithoutValidation): Ditto.
787         (WebCore::HTMLSelectElement::saveFormControlState): Ditto.
788         (WebCore::HTMLSelectElement::restoreFormControlState): Ditto.
789         (WebCore::HTMLSelectElement::appendFormData): Ditto.
790         (WebCore::HTMLSelectElement::reset): Ditto.
791         (WebCore::HTMLSelectElement::updateSelectedState): Ditto.
792         (WebCore::HTMLSelectElement::lastSelectedListIndex): Ditto.
793         (WebCore::HTMLSelectElement::typeAheadFind): Ditto.
794         (WebCore::HTMLSelectElement::accessKeySetSelectedIndex): Ditto.
795         (WebCore::HTMLSelectElement::length): Ditto.
796
797         * rendering/RenderListBox.cpp:
798         (WebCore::RenderListBox::updateFromElement): Use HTMLOptionElement,
799         hasTagName, and toHTMLOptionElement.
800         (WebCore::RenderListBox::addFocusRingRects): Ditto.
801         (WebCore::RenderListBox::paintItemForeground): Ditto.
802         (WebCore::RenderListBox::paintItemBackground): Ditto.
803         * rendering/RenderMenuList.cpp:
804         (WebCore::RenderMenuList::updateOptionsWidth): Ditto.
805         (WebCore::RenderMenuList::setTextFromOption): Ditto.
806         (WebCore::RenderMenuList::itemText): Ditto.
807         (WebCore::RenderMenuList::itemIsSelected): Ditto.
808
809 2011-10-20  Adam Barth  <abarth@webkit.org>
810
811         Attempt to fix crash for infinite recursion.
812
813         * bindings/v8/custom/V8EventCustom.cpp:
814         (WebCore::toV8):
815
816 2011-10-20  Dirk Pranke  <dpranke@chromium.org>
817
818         Still lots of crashes in the chromium debug bots.
819
820         Unreviewed, rolling out r97982.
821         http://trac.webkit.org/changeset/97982
822         https://bugs.webkit.org/show_bug.cgi?id=70328
823
824         crashing in asserts in chromium debug builds
825
826         * dom/DeviceMotionController.cpp:
827         (WebCore::DeviceMotionController::timerFired):
828         (WebCore::DeviceMotionController::addListener):
829         (WebCore::DeviceMotionController::removeListener):
830         (WebCore::DeviceMotionController::removeAllListeners):
831         * dom/DeviceMotionController.h:
832         * dom/DeviceOrientationController.cpp:
833         * dom/DeviceOrientationController.h:
834         * dom/Document.cpp:
835         * dom/Document.h:
836         * dom/ScriptExecutionContext.h:
837         * page/GeolocationController.cpp:
838         * page/GeolocationController.h:
839
840 2011-10-20  Adam Barth  <abarth@webkit.org>
841
842         Attempt to fix the GTK build.
843
844         * GNUmakefile.am:
845
846 2011-10-20  Adam Barth  <abarth@webkit.org>
847
848         CloseEvent.idl isn't conditional on WebSockets.
849
850         * dom/EventFactory.in:
851
852 2011-10-20  Adam Barth  <abarth@webkit.org>
853
854         Event.h shouldn't need to know about every ifdef and feature that uses events
855         https://bugs.webkit.org/show_bug.cgi?id=70483
856
857         Reviewed by Eric Seidel.
858
859         This patch expands make_event_factory.pl to create a
860         DOM_EVENT_INTERFACES_FOR_EACH macro that we can use to generate code
861         for each Event interface.  We then apply that macro to removing a large
862         number of virtual functions on Event.  Instead of having a Boolean
863         virtual function for each subclass of Event, we have a single virtual
864         interfaceName function, which returns an AtomicString.  We then use the
865         AtomicString to jump through a HashMap to find the appropriate
866         JavaScript wrapper type.
867
868         This patch does not remove all of the Boolean virtual functions because
869         I got exhausted making all of these edits, but I did remove all the
870         ones that involve ifdefs.  A future patch will remove more.
871
872         * WebCore.xcodeproj/project.pbxproj:
873         * bindings/js/JSEventCustom.cpp:
874         (WebCore::toJS):
875         * bindings/v8/custom/V8EventCustom.cpp:
876         (WebCore::toV8):
877         * dom/BeforeLoadEvent.h:
878         (WebCore::BeforeLoadEvent::interfaceName):
879         (WebCore::BeforeLoadEvent::isBeforeLoadEvent):
880         * dom/BeforeTextInsertedEvent.cpp:
881         (WebCore::BeforeTextInsertedEvent::interfaceName):
882         * dom/BeforeTextInsertedEvent.h:
883         * dom/ClipboardEvent.cpp:
884         (WebCore::ClipboardEvent::interfaceName):
885         * dom/ClipboardEvent.h:
886         * dom/CompositionEvent.cpp:
887         (WebCore::CompositionEvent::interfaceName):
888         * dom/CompositionEvent.h:
889         * dom/CustomEvent.cpp:
890         (WebCore::CustomEvent::interfaceName):
891         * dom/CustomEvent.h:
892         * dom/DeviceMotionEvent.cpp:
893         (WebCore::DeviceMotionEvent::interfaceName):
894         * dom/DeviceMotionEvent.h:
895         * dom/DeviceOrientationEvent.cpp:
896         (WebCore::DeviceOrientationEvent::interfaceName):
897         * dom/DeviceOrientationEvent.h:
898         * dom/ErrorEvent.cpp:
899         (WebCore::ErrorEvent::interfaceName):
900         * dom/ErrorEvent.h:
901         * dom/Event.cpp:
902         (WebCore::Event::interfaceName):
903         * dom/Event.h:
904         * dom/EventNames.cpp:
905         (WebCore::EventNames::EventNames):
906         * dom/EventNames.h:
907         * dom/HashChangeEvent.h:
908         (WebCore::HashChangeEvent::interfaceName):
909         * dom/KeyboardEvent.cpp:
910         (WebCore::KeyboardEvent::interfaceName):
911         * dom/KeyboardEvent.h:
912         * dom/MessageEvent.cpp:
913         (WebCore::MessageEvent::interfaceName):
914         * dom/MessageEvent.h:
915         * dom/MouseEvent.cpp:
916         (WebCore::MouseEvent::interfaceName):
917         * dom/MouseEvent.h:
918         * dom/MutationEvent.cpp:
919         (WebCore::MutationEvent::interfaceName):
920         * dom/MutationEvent.h:
921         * dom/OverflowEvent.cpp:
922         (WebCore::OverflowEvent::interfaceName):
923         * dom/OverflowEvent.h:
924         * dom/PageTransitionEvent.cpp:
925         (WebCore::PageTransitionEvent::interfaceName):
926         * dom/PageTransitionEvent.h:
927         * dom/PopStateEvent.cpp:
928         (WebCore::PopStateEvent::interfaceName):
929         * dom/PopStateEvent.h:
930         * dom/ProgressEvent.cpp:
931         (WebCore::ProgressEvent::interfaceName):
932         * dom/ProgressEvent.h:
933         * dom/TextEvent.cpp:
934         (WebCore::TextEvent::interfaceName):
935         * dom/TextEvent.h:
936         * dom/TouchEvent.cpp:
937         (WebCore::TouchEvent::interfaceName):
938         * dom/TouchEvent.h:
939         * dom/UIEvent.h:
940         * dom/WebKitAnimationEvent.cpp:
941         (WebCore::WebKitAnimationEvent::interfaceName):
942         * dom/WebKitAnimationEvent.h:
943         * dom/WebKitTransitionEvent.cpp:
944         (WebCore::WebKitTransitionEvent::interfaceName):
945         * dom/WebKitTransitionEvent.h:
946         * dom/WheelEvent.cpp:
947         (WebCore::WheelEvent::interfaceName):
948         * dom/WheelEvent.h:
949         * dom/make_event_factory.pl:
950         (printFactoryFile):
951         (printMacroFile):
952         (printHeadersFile):
953         * html/canvas/WebGLContextEvent.cpp:
954         (WebCore::WebGLContextEvent::interfaceName):
955         * html/canvas/WebGLContextEvent.h:
956         * inspector/InspectorDOMStorageResource.cpp:
957         (WebCore::InspectorDOMStorageResource::handleEvent):
958         * p2p/MediaStreamEvent.cpp:
959         (WebCore::MediaStreamEvent::interfaceName):
960         * p2p/MediaStreamEvent.h:
961         * page/SpeechInputEvent.cpp:
962         (WebCore::SpeechInputEvent::interfaceName):
963         * page/SpeechInputEvent.h:
964         * storage/IDBVersionChangeEvent.cpp:
965         (WebCore::IDBVersionChangeEvent::interfaceName):
966         * storage/IDBVersionChangeEvent.h:
967         * storage/StorageEvent.cpp:
968         (WebCore::StorageEvent::interfaceName):
969         * storage/StorageEvent.h:
970         * svg/SVGZoomEvent.cpp:
971         (WebCore::SVGZoomEvent::interfaceName):
972         * svg/SVGZoomEvent.h:
973         * webaudio/AudioProcessingEvent.cpp:
974         (WebCore::AudioProcessingEvent::interfaceName):
975         * webaudio/AudioProcessingEvent.h:
976         * webaudio/OfflineAudioCompletionEvent.cpp:
977         (WebCore::OfflineAudioCompletionEvent::interfaceName):
978         * webaudio/OfflineAudioCompletionEvent.h:
979         * websockets/CloseEvent.h:
980         (WebCore::CloseEvent::interfaceName):
981         * xml/XMLHttpRequestProgressEvent.h:
982         (WebCore::XMLHttpRequestProgressEvent::interfaceName):
983
984 2011-10-20  Nat Duca  <nduca@chromium.org>
985
986         [chromium] Route onSwapBuffersComplete from LayerRenderer to CCScheduler.
987
988         Reviewed by James Robinson.
989
990         * platform/graphics/chromium/LayerRendererChromium.cpp:
991         (WebCore::LayerRendererSwapBuffersCompleteCallbackAdapter::create):
992         (WebCore::LayerRendererSwapBuffersCompleteCallbackAdapter::~LayerRendererSwapBuffersCompleteCallbackAdapter):
993         (WebCore::LayerRendererSwapBuffersCompleteCallbackAdapter::onSwapBuffersComplete):
994         (WebCore::LayerRendererSwapBuffersCompleteCallbackAdapter::LayerRendererSwapBuffersCompleteCallbackAdapter):
995         (WebCore::LayerRendererChromium::initialize):
996         (WebCore::LayerRendererChromium::~LayerRendererChromium):
997         (WebCore::LayerRendererChromium::swapBuffers):
998         (WebCore::LayerRendererChromium::onSwapBuffersComplete):
999         * platform/graphics/chromium/LayerRendererChromium.h:
1000         * platform/graphics/chromium/cc/CCHeadsUpDisplay.cpp:
1001         (WebCore::CCHeadsUpDisplay::onSwapBuffers):
1002         * platform/graphics/chromium/cc/CCHeadsUpDisplay.h:
1003         * platform/graphics/chromium/cc/CCLayerTreeHost.h:
1004         (WebCore::LayerRendererCapabilities::LayerRendererCapabilities):
1005         * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
1006         (WebCore::CCLayerTreeHostImpl::swapBuffers):
1007         (WebCore::CCLayerTreeHostImpl::onSwapBuffersComplete):
1008         * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
1009         * platform/graphics/chromium/cc/CCScheduler.cpp:
1010         (WebCore::CCScheduler::requestRedraw):
1011         (WebCore::CCScheduler::didDrawAndSwap):
1012         (WebCore::CCScheduler::didSwapBuffersComplete):
1013         (WebCore::CCScheduler::didSwapBuffersAbort):
1014         * platform/graphics/chromium/cc/CCScheduler.h:
1015         * platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
1016         (WebCore::CCSingleThreadProxy::compositeImmediately):
1017         * platform/graphics/chromium/cc/CCSingleThreadProxy.h:
1018         (WebCore::CCSingleThreadProxy::onSwapBuffersCompleteOnImplThread):
1019         * platform/graphics/chromium/cc/CCThreadProxy.cpp:
1020         (WebCore::CCThreadProxySchedulerClient::scheduleDrawAndSwap):
1021         (WebCore::CCThreadProxy::drawLayersAndReadbackOnImplThread):
1022         (WebCore::CCThreadProxy::onSwapBuffersCompleteOnImplThread):
1023         (WebCore::CCThreadProxy::finishAllRenderingOnImplThread):
1024         (WebCore::CCThreadProxy::drawLayersAndSwapOnImplThread):
1025         (WebCore::CCThreadProxy::drawLayersOnImplThread):
1026         * platform/graphics/chromium/cc/CCThreadProxy.h:
1027
1028 2011-10-20  Julien Chaffraix  <jchaffraix@webkit.org>
1029
1030         RenderDeprecatedFlexibleBox does not call its children's layout method
1031         https://bugs.webkit.org/show_bug.cgi?id=64842
1032
1033         Reviewed by David Hyatt.
1034
1035         Tests: fast/flexbox/021-vertical.html
1036                fast/flexbox/crash-flexbox-no-layout-child.html
1037
1038         The FlexBoxIterator would skip any child with visibility: collapsed. However those child
1039         would need layout but their layout() function would never be called.
1040
1041         This change refactors the way flexible box handles visibility: collapsed child and mark sure
1042         their layout() function is called but makes sure that they don't participate in the flex box
1043         dimensions.
1044
1045         * rendering/RenderDeprecatedFlexibleBox.cpp:
1046         (WebCore::FlexBoxIterator::next): Do not skip visibility: collapsed child.
1047         (WebCore::childDoesNotAffectWidthOrFlexing): Helper function.
1048
1049         (WebCore::RenderDeprecatedFlexibleBox::calcHorizontalPrefWidths):
1050         (WebCore::RenderDeprecatedFlexibleBox::calcVerticalPrefWidths):
1051         (WebCore::gatherFlexChildrenInfo):
1052         (WebCore::RenderDeprecatedFlexibleBox::layoutHorizontalBox):
1053         (WebCore::RenderDeprecatedFlexibleBox::layoutVerticalBox):
1054         (WebCore::RenderDeprecatedFlexibleBox::applyLineClamp):
1055         (WebCore::RenderDeprecatedFlexibleBox::allowedChildFlex):
1056         Updated to skip the now seen visibility: collapsed child during the
1057         iteration.
1058
1059 2011-10-20  Raymond Toy  <rtoy@google.com>
1060
1061         Implement SSE denormal disabler for windows.
1062
1063         https://bugs.webkit.org/show_bug.cgi?id=70517
1064
1065         Reviewed by Kenneth Russell.
1066
1067         * platform/audio/DenormalDisabler.h:
1068         (WebCore::DenormalDisabler::DenormalDisabler):
1069         Add implementation for Windows.
1070         (WebCore::DenormalDisabler::~DenormalDisabler):
1071         Ditto.
1072         (WebCore::DenormalDisabler::flushDenormalFloatToZero):
1073         Unify Windows with mac/linux.
1074         (WebCore::DenormalDisabler::getCSR):
1075         Define only if we're not on Windows.
1076         (WebCore::DenormalDisabler::setCSR):
1077         Ditto.
1078
1079 2011-10-20  Alexey Proskuryakov  <ap@apple.com>
1080
1081         REGRESSION (r96823): Contextual menu closes immediately when control-clicking in Flash plug-in
1082         https://bugs.webkit.org/show_bug.cgi?id=70534
1083         <rdar://problem/10308827>
1084
1085         Reviewed by Darin Adler.
1086
1087         * plugins/PluginView.cpp: (WebCore::PluginView::handleEvent): Return true for contextmenu
1088         event, so that plug-ins won't get a default WebKit context menu. We can't know if the
1089         plug-in is handling mousedown (or even mouseup) by displaying a menu.
1090
1091 2011-10-17  Nat Duca  <nduca@chromium.org>
1092
1093         [chromium] Allow CCLayerTreeHostImpl to call back to proxy via CCLayerTreeHostImplClient
1094         https://bugs.webkit.org/show_bug.cgi?id=70291
1095
1096         Reviewed by James Robinson.
1097
1098         * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
1099         (WebCore::CCLayerTreeHost::createLayerTreeHostImpl):
1100         * platform/graphics/chromium/cc/CCLayerTreeHost.h:
1101         * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
1102         (WebCore::CCLayerTreeHostImpl::create):
1103         (WebCore::CCLayerTreeHostImpl::CCLayerTreeHostImpl):
1104         (WebCore::CCLayerTreeHostImpl::scrollRootLayer):
1105         * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
1106         * platform/graphics/chromium/cc/CCScrollController.h:
1107         * platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
1108         (WebCore::CCSingleThreadProxy::start):
1109         * platform/graphics/chromium/cc/CCSingleThreadProxy.h:
1110         (WebCore::CCSingleThreadProxy::setNeedsRedrawOnImplThread):
1111         (WebCore::CCSingleThreadProxy::setNeedsCommitOnImplThread):
1112         * platform/graphics/chromium/cc/CCThreadProxy.cpp:
1113         (WebCore::CCThreadProxy::scrollRootLayerOnImplThread):
1114         (WebCore::CCThreadProxy::initializeImplOnCCThread):
1115         (WebCore::CCThreadProxy::initializeLayerRendererOnCCThread):
1116         (WebCore::CCThreadProxy::layerTreeHostClosedOnCCThread):
1117         * platform/graphics/chromium/cc/CCThreadProxy.h:
1118         (WebCore::CCThreadProxy::setNeedsRedrawOnImplThread):
1119         (WebCore::CCThreadProxy::setNeedsCommitOnImplThread):
1120
1121 2011-10-20  Tony Chang  <tony@chromium.org>
1122
1123         fix repaint bugs in new flexbox
1124         https://bugs.webkit.org/show_bug.cgi?id=70450
1125
1126         Reviewed by David Hyatt.
1127
1128         Test: css3/flexbox/repaint.html
1129               css3/flexbox/repaint-rtl-column.html
1130
1131         * rendering/RenderFlexibleBox.cpp:
1132         (WebCore::RenderFlexibleBox::layoutBlock): Use LayoutRepainter and LayoutStateMaintainer
1133             to repaint the flexbox.
1134         (WebCore::RenderFlexibleBox::layoutAndPlaceChildrenInlineDirection):
1135         (WebCore::RenderFlexibleBox::adjustLocationLogicalTopForChild): Use repaintDuringLayoutIfMoved
1136             when changing the alignment of a child to handle the child moving.
1137
1138 2011-10-20  Dan Bernstein  <mitz@apple.com>
1139
1140         Flipped-blocks writing mode blocks do not hit test their overflow
1141         https://bugs.webkit.org/show_bug.cgi?id=70546
1142
1143         Reviewed by Sam Weinig.
1144
1145         Test: fast/writing-mode/flipped-blocks-hit-test-overflow.html
1146
1147         * rendering/RenderBlock.cpp:
1148         (WebCore::RenderBlock::nodeAtPoint): Flip the overflow rect if necessary.
1149
1150 2011-10-20  David Hyatt  <hyatt@apple.com>
1151
1152         https://bugs.webkit.org/show_bug.cgi?id=70539
1153         
1154         Make the 'clip' property work in variable width regions.
1155
1156         Reviewed by Dan Bernstein.
1157
1158         Added new test in fast/regions.
1159
1160         * rendering/RenderBox.cpp:
1161         (WebCore::RenderBox::clipRect):
1162         * rendering/RenderBox.h:
1163         * rendering/RenderLayer.cpp:
1164         (WebCore::RenderLayer::calculateClipRects):
1165         (WebCore::RenderLayer::calculateRects):
1166         (WebCore::RenderLayer::repaintBlockSelectionGaps):
1167         * rendering/RenderLayerBacking.cpp:
1168         (WebCore::clipBox):
1169
1170 2011-10-20  Simon Fraser  <simon.fraser@apple.com>
1171
1172         Fix build breakage on some platforms after r98008.
1173
1174         * page/FrameTree.cpp:
1175
1176 2011-10-20  Vincent Scheib  <scheib@chromium.org>
1177
1178         MouseLock compile and run time flags.
1179         https://bugs.webkit.org/show_bug.cgi?id=70530
1180
1181         Reviewed by Darin Fisher.
1182
1183         No new tests.
1184
1185         * bindings/generic/RuntimeEnabledFeatures.cpp:
1186         * bindings/generic/RuntimeEnabledFeatures.h:
1187         (WebCore::RuntimeEnabledFeatures::webkitMouseLockAPIEnabled):
1188         (WebCore::RuntimeEnabledFeatures::setWebkitMouseLockAPIEnabled):
1189         (WebCore::RuntimeEnabledFeatures::webkitLockMouseEnabled):
1190         (WebCore::RuntimeEnabledFeatures::webkitUnlockMouseEnabled):
1191         (WebCore::RuntimeEnabledFeatures::webkitMouseLockedEnabled):
1192         * page/Settings.cpp:
1193         (WebCore::Settings::Settings):
1194         * page/Settings.h:
1195         (WebCore::Settings::setMouseLockEnabled):
1196         (WebCore::Settings::mouseLockEnabled):
1197
1198 2011-10-20  Tony Chang  <tony@chromium.org>
1199
1200         Fix a compiler warning in MediaStreamTrack.cpp:
1201         ../../third_party/WebKit/Source/WebCore/dom/MediaStreamTrack.cpp: In member function 'WTF::String WebCore::MediaStreamTrack::kind() const':
1202         ../../third_party/WebKit/Source/WebCore/dom/MediaStreamTrack.cpp:61:1: error: control reaches end of non-void function [-Werror=return-type]
1203
1204         Unreviewed build fix.
1205
1206         * dom/MediaStreamTrack.cpp:
1207         (WebCore::MediaStreamTrack::kind):
1208
1209 2011-10-20  Gustavo Noronha Silva  <gns@gnome.org>
1210
1211         One more GTK+ build fix. Remove CueLoader files from the build.
1212
1213         * GNUmakefile.list.am:
1214
1215 2011-10-20  Ken Buchanan <kenrb@chromium.org>
1216
1217         Crash in updateFirstLetter on :after generated content
1218         https://bugs.webkit.org/show_bug.cgi?id=70031
1219
1220         Reviewed by David Hyatt.
1221
1222         Preventing findBeforeAfterParent() from returning a first-letter block and overwriting its style.
1223         Instead, it returns the block's parent.
1224
1225         * rendering/RenderBlock.cpp:
1226         (WebCore::RenderBlock::updateFirstLetter):
1227         * rendering/RenderObjectChildList.cpp:
1228         (WebCore::findBeforeAfterParent)
1229         (WebCore::RenderObjectChildList::updateBeforeAfterContent): First-letter siblings now already have style applied, so this clause is redundant
1230
1231 2011-10-20  Simon Fraser  <simon.fraser@apple.com>
1232
1233         Add a way to print the Frame tree from the debugger.
1234
1235         Reviewed by Sam Weinig.
1236         
1237         Add a showFrameTree(frame) method, callable from gdb,
1238         which dumps the Frame tree, including the frame's view,
1239         document, owner element and URI.
1240
1241         * page/FrameTree.cpp:
1242         (printIndent):
1243         (printFrames):
1244         (showFrameTree):
1245         * page/FrameTree.h:
1246         * rendering/RenderLayer.cpp:
1247         (WebCore::RenderLayer::updateClipRects):
1248         * rendering/RenderLayerCompositor.cpp:
1249         (WebCore::RenderLayerCompositor::requiresCompositingForFrame):
1250
1251 2011-10-20  Andreas Kling  <kling@webkit.org>
1252
1253         Remove StyleBase::cssText().
1254         https://bugs.webkit.org/show_bug.cgi?id=70521
1255
1256         Reviewed by Antti Koivisto.
1257
1258         * css/StyleBase.cpp:
1259         * css/StyleBase.h:
1260
1261 2011-10-20  Eugene Nalimov  <enal@chromium.org>
1262
1263         Playing HTMLAudioElement can be garbage collected
1264         https://bugs.webkit.org/show_bug.cgi?id=66878
1265
1266         Reviewed by Adam Barth.
1267
1268         Make HTMLAudioElement an 'active' one, meaning that it cannot be
1269         garbage collected if it has panding activity. Had to make
1270         HTMLMediaElement::hasPendingActivity() and
1271         HTMLAudioElement::hasPendingActivity() public, otherwise automatically
1272         generated code would not compile. 
1273
1274         Test: no test, as automatic test is blocked by
1275         https://bugs.webkit.org/show_bug.cgi?id=70421
1276         You don't want to sit down and listen if audio stream played completely,
1277         and cannot rely on 'ended' event because events are lost when events
1278         listener is collected. 
1279
1280         * html/HTMLAudioElement.idl:
1281         * html/HTMLAudioElement.h:
1282         (WebCore::HTMLAudioElement::hasPendingActivity):
1283         * html/HTMLMediaElement.h:
1284
1285 2011-10-20  Mark Hahnenberg  <mhahnenberg@apple.com>
1286
1287         Rename static deleteProperty to deletePropertyByIndex
1288         https://bugs.webkit.org/show_bug.cgi?id=70257
1289
1290         Reviewed by Geoffrey Garen.
1291
1292         No new tests.
1293
1294         Renaming versions of deleteProperty that use an unsigned as the property
1295         name to "deletePropertyByIndex" in preparation for adding them to the 
1296         MethodTable, which requires unique names for each method.
1297
1298         * bridge/runtime_array.cpp:
1299         (JSC::RuntimeArray::deletePropertyVirtual):
1300         (JSC::RuntimeArray::deletePropertyByIndex):
1301         * bridge/runtime_array.h:
1302
1303 2011-10-20  Eric Carlson  <eric.carlson@apple.com>
1304
1305         Rename some Cue classes to TextTrack
1306         https://bugs.webkit.org/show_bug.cgi?id=70346
1307
1308         Rename CueLoader -> TextTrackLoader, CachedCues -> CachedTextTrack, and CueIndex -> TextTrackIndex.
1309
1310         Reviewed by Darin Adler.
1311
1312         No new tests, renames only.
1313
1314         * CMakeLists.txt:
1315         * GNUmakefile.list.am:
1316         * WebCore.gypi:
1317         * WebCore.pro:
1318         * WebCore.xcodeproj/project.pbxproj:
1319         * html/CueIndex.cpp: Removed.
1320         * html/CueIndex.h: Removed.
1321         * html/LoadableTextTrack.cpp:
1322         (WebCore::LoadableTextTrack::load):
1323         (WebCore::LoadableTextTrack::newCuesAvailable):
1324         (WebCore::LoadableTextTrack::cueLoadingStarted):
1325         (WebCore::LoadableTextTrack::cueLoadingCompleted):
1326         * html/LoadableTextTrack.h:
1327         (WebCore::LoadableTextTrack::shouldLoadCues):
1328         * html/MutableTextTrack.h:
1329         * html/TextTrackIndex.cpp: Copied from Source/WebCore/html/CueIndex.cpp.
1330         (WebCore::TextTrackCueSet::difference):
1331         (WebCore::TextTrackCueSet::unionSet):
1332         (WebCore::TextTrackCueSet::add):
1333         (WebCore::TextTrackCueSet::contains):
1334         (WebCore::TextTrackCueSet::remove):
1335         (WebCore::TextTrackCueSet::isEmpty):
1336         (WebCore::TextTrackCueSet::size):
1337         (WebCore::TextTrackIndex::fetchNewCuesFromLoader):
1338         (WebCore::TextTrackIndex::removeCuesFromIndex):
1339         (WebCore::TextTrackIndex::visibleCuesAtTime):
1340         (WebCore::TextTrackIndex::add):
1341         (WebCore::TextTrackIndex::remove):
1342         * html/TextTrackIndex.h: Copied from Source/WebCore/html/CueIndex.h.
1343         (WebCore::TextTrackCueSet::TextTrackCueSet):
1344         (WebCore::TextTrackCueSet::~TextTrackCueSet):
1345         * loader/CueLoader.cpp: Removed.
1346         * loader/CueLoader.h: Removed.
1347         * loader/TextTrackLoader.cpp: Copied from Source/WebCore/loader/CueLoader.cpp.
1348         (WebCore::TextTrackLoader::TextTrackLoader):
1349         (WebCore::TextTrackLoader::~TextTrackLoader):
1350         (WebCore::TextTrackLoader::cueLoadTimerFired):
1351         (WebCore::TextTrackLoader::processNewCueData):
1352         (WebCore::TextTrackLoader::didReceiveData):
1353         (WebCore::TextTrackLoader::notifyFinished):
1354         (WebCore::TextTrackLoader::load):
1355         (WebCore::TextTrackLoader::newCuesParsed):
1356         (WebCore::TextTrackLoader::getNewCues):
1357         * loader/TextTrackLoader.h: Copied from Source/WebCore/loader/CueLoader.h.
1358         (WebCore::TextTrackLoaderClient::~TextTrackLoaderClient):
1359         (WebCore::TextTrackLoader::create):
1360         * loader/cache/CachedCues.cpp: Removed.
1361         * loader/cache/CachedCues.h: Removed.
1362         * loader/cache/CachedResourceLoader.cpp:
1363         (WebCore::createResource):
1364         (WebCore::CachedResourceLoader::requestCues):
1365         * loader/cache/CachedResourceLoader.h:
1366         * loader/cache/CachedTextTrack.cpp: Copied from Source/WebCore/loader/cache/CachedCues.cpp.
1367         (WebCore::CachedTextTrack::CachedTextTrack):
1368         (WebCore::CachedTextTrack::~CachedTextTrack):
1369         (WebCore::CachedTextTrack::data):
1370         * loader/cache/CachedTextTrack.h: Copied from Source/WebCore/loader/cache/CachedCues.h.
1371
1372 2011-10-20  Joseph Pecoraro  <joepeck@webkit.org>
1373
1374         Remove Now Unused FileChooserSettings.deprecatedAcceptTypes
1375         https://bugs.webkit.org/show_bug.cgi?id=70473
1376
1377         Reviewed by Dan Bernstein.
1378
1379         * html/FileInputType.cpp:
1380         (WebCore::FileInputType::handleDOMActivateEvent):
1381         (WebCore::FileInputType::receiveDropForDirectoryUpload):
1382         * platform/FileChooser.h:
1383
1384 2011-10-20  Andreas Kling  <kling@webkit.org>
1385
1386         Simplify CSSParser::document().
1387         https://bugs.webkit.org/show_bug.cgi?id=70518
1388
1389         Reviewed by Antti Koivisto.
1390
1391         We don't need to climb up the entire parent chain here to find the
1392         Document, just grab it from m_styleSheet (which will do the climbing
1393         for us if necessary.)
1394
1395         * css/CSSParser.cpp:
1396         (WebCore::CSSParser::document):
1397
1398 2011-10-20  Pierre Rossi  <pierre.rossi@gmail.com>
1399
1400         [Qt] FontCache::createFontPlatformData() is broken, a default font is returned
1401         even if the family does not match.
1402         https://bugs.webkit.org/show_bug.cgi?id=55036
1403
1404         The problem here was that a FontPlatformData
1405         object is always created, regardless of whether
1406         the request for a given font family can be
1407         satisfied or not.
1408
1409         Reviewed by Andreas Kling.
1410
1411         Covered by existing tests.
1412
1413         * platform/graphics/qt/FontCacheQt.cpp:
1414         (WebCore::FontCache::createFontPlatformData):
1415
1416 2011-10-20  Kenneth Rohde Christiansen  <kenneth@webkit.org>
1417
1418         When user is panning with the tiled backing store, the page
1419         isn't notified about the scroll position change
1420         https://bugs.webkit.org/show_bug.cgi?id=70495
1421
1422         Reviewed by Simon Hausmann.
1423
1424         When using the tiled backing store the UI handles scrolling,
1425         and sends setFixedVisibleContentRect after panning/scale ends.
1426
1427         If we actually changed position we need to send the scroll DOM event.
1428
1429         Covered by existing tests, though we are not testing the tiled backing store yet.
1430
1431         * page/FrameView.cpp:
1432         (WebCore::FrameView::setFixedVisibleContentRect):
1433         * page/FrameView.h:
1434         * platform/ScrollView.h:
1435         (WebCore::ScrollView::setFixedVisibleContentRect):
1436
1437 2011-10-20  John Knottenbelt  <jknotten@chromium.org>
1438
1439         Touch events should take page scale into account
1440         https://bugs.webkit.org/show_bug.cgi?id=69798
1441
1442         Reviewed by Adam Barth.
1443
1444         Test: fast/events/touch/page-scaled-touch-gesture-click.html
1445
1446         * page/EventHandler.cpp:
1447         (WebCore::EventHandler::handleTouchEvent):
1448
1449 2011-10-20  Andreas Kling  <kling@webkit.org>
1450
1451         CSSMutableStyleDeclaration: Simplify setNeedsStyleRecalc().
1452         https://bugs.webkit.org/show_bug.cgi?id=70509
1453
1454         Reviewed by Antti Koivisto.
1455
1456         We don't need to climb up the entire parent chain here to find the
1457         Document, just grab it from the parentStyleSheet() (which will do
1458         the climbing for us if necessary.)
1459
1460         * css/CSSMutableStyleDeclaration.cpp:
1461         (WebCore::CSSMutableStyleDeclaration::setNeedsStyleRecalc):
1462
1463 2011-10-20  Andreas Kling  <kling@webkit.org>
1464
1465         CSSStyleDeclaration: Remove inheritance from StyleBase.
1466         https://bugs.webkit.org/show_bug.cgi?id=70411
1467
1468         Reviewed by Antti Koivisto.
1469
1470         * bindings/js/JSDOMBinding.h:
1471         (WebCore::root):
1472
1473             Specialized root() for CSSStyleDeclaration and CSSMutableStyleDeclaration.
1474
1475         * css/CSSMutableStyleDeclaration.cpp:
1476         (WebCore::CSSMutableStyleDeclaration::setNeedsStyleRecalc):
1477
1478             Start the parent chain traversal from the parentStyleSheet().
1479
1480         (WebCore::CSSMutableStyleDeclaration::addSubresourceStyleURLs):
1481         * css/CSSParser.cpp:
1482         (WebCore::parseColorValue):
1483         (WebCore::parseSimpleLengthValue):
1484         (WebCore::CSSParser::parseValue):
1485         (WebCore::CSSParser::parseColor):
1486         (WebCore::CSSParser::parseDeclaration):
1487
1488             Remove now-unnecessary assertions and casts.
1489
1490         * css/CSSStyleDeclaration.cpp:
1491         (WebCore::CSSStyleDeclaration::CSSStyleDeclaration):
1492         * css/CSSStyleDeclaration.h:
1493         (WebCore::CSSStyleDeclaration::~CSSStyleDeclaration):
1494         (WebCore::CSSStyleDeclaration::parentRule):
1495         (WebCore::CSSStyleDeclaration::setParentRule):
1496         (WebCore::CSSStyleDeclaration::setParentStyleSheet):
1497         (WebCore::CSSStyleDeclaration::parentStyleSheet):
1498
1499             Make CSSStyleDeclaration inherit directly from RefCounted, and have either
1500             a CSSRule or CSSStyleSheet parent. Eventually it should only need to have
1501             rules as parents, but CSSParser depends on having style sheet parents for
1502             URL completion and primitive value cache.
1503
1504         * css/StyleBase.h:
1505         * css/CSSStyleDeclaration.h:
1506         (WebCore::CSSStyleDeclaration::isMutableStyleDeclaration):
1507
1508             Moved from StyleBase down to CSSStyleDeclaration.
1509
1510         * css/CSSStyleRule.cpp:
1511         (WebCore::CSSStyleRule::~CSSStyleRule):
1512         (WebCore::CSSStyleRule::setSelectorText):
1513         * css/WebKitCSSKeyframeRule.cpp:
1514         (WebCore::WebKitCSSKeyframeRule::~WebKitCSSKeyframeRule):
1515         (WebCore::WebKitCSSKeyframeRule::setDeclaration):
1516         * css/WebKitCSSKeyframesRule.cpp:
1517         (WebCore::WebKitCSSKeyframesRule::~WebKitCSSKeyframesRule):
1518         (WebCore::WebKitCSSKeyframesRule::append):
1519         (WebCore::WebKitCSSKeyframesRule::deleteRule):
1520         * dom/StyledElement.cpp:
1521         (WebCore::StyledElement::createInlineStyleDecl):
1522         (WebCore::StyledElement::destroyInlineStyleDecl):
1523         (WebCore::StyledElement::attributeChanged):
1524         (WebCore::StyledElement::createMappedDecl):
1525         (WebCore::StyledElement::didMoveToNewOwnerDocument):
1526         * html/HTMLTableElement.cpp:
1527         (WebCore::HTMLTableElement::additionalAttributeStyleDecls):
1528         (WebCore::HTMLTableElement::addSharedCellBordersDecl):
1529         (WebCore::HTMLTableElement::addSharedCellPaddingDecl):
1530         (WebCore::HTMLTableElement::addSharedGroupDecls):
1531         * page/PageSerializer.cpp:
1532         (WebCore::PageSerializer::retrieveResourcesForCSSDeclaration):
1533         * svg/SVGFontFaceElement.cpp:
1534         (WebCore::SVGFontFaceElement::SVGFontFaceElement):
1535
1536             Use the new parenting methods of CSSStyleDeclaration.
1537
1538         * css/StyleBase.cpp:
1539         (WebCore::StyleBase::node):
1540
1541             Remove the isMutableStyleDeclaration() code path.
1542
1543 2011-10-20  Pavel Feldman  <pfeldman@google.com>
1544
1545         Web Inspector: detach should call hide so that overrides are processed.
1546         https://bugs.webkit.org/show_bug.cgi?id=70503
1547
1548         Reviewed by Yury Semikhatsky.
1549
1550         * inspector/front-end/ConsolePanel.js:
1551         (WebInspector.ConsolePanel.prototype.hide):
1552         * inspector/front-end/View.js:
1553         (WebInspector.View):
1554         (WebInspector.View.prototype.hide):
1555         (WebInspector.View.prototype.detach):
1556
1557 2011-10-20  Csaba Osztrogon√°c  <ossy@webkit.org>
1558
1559         [Qt] Roll-back r97964, r97972 and fix in https://bugs.webkit.org/show_bug.cgi?id=70328.
1560
1561         * dom/DeviceMotionController.cpp:
1562         (WebCore::DeviceMotionController::timerFired):
1563         (WebCore::DeviceMotionController::addListener):
1564         (WebCore::DeviceMotionController::removeListener):
1565         (WebCore::DeviceMotionController::removeAllListeners):
1566         (WebCore::DeviceMotionController::suspend):
1567         (WebCore::DeviceMotionController::resume):
1568         * dom/DeviceMotionController.h:
1569         * dom/DeviceOrientationController.cpp:
1570         (WebCore::DeviceOrientationController::suspend):
1571         (WebCore::DeviceOrientationController::resume):
1572         * dom/DeviceOrientationController.h:
1573         * dom/Document.cpp:
1574         (WebCore::Document::suspendActiveDOMObjects):
1575         (WebCore::Document::resumeActiveDOMObjects):
1576         (WebCore::Document::stopActiveDOMObjects):
1577         * dom/Document.h:
1578         * dom/ScriptExecutionContext.h:
1579         * page/GeolocationController.cpp:
1580         (WebCore::GeolocationController::suspend):
1581         (WebCore::GeolocationController::resume):
1582         * page/GeolocationController.h:
1583
1584 2011-10-20  Sheriff Bot  <webkit.review.bot@gmail.com>
1585
1586         Unreviewed, rolling out r97964 and r97972.
1587         http://trac.webkit.org/changeset/97964
1588         http://trac.webkit.org/changeset/97972
1589         https://bugs.webkit.org/show_bug.cgi?id=70502
1590
1591         They broke all geolocation tests in debug mode (Requested by
1592         Ossy on #webkit).
1593
1594         * dom/DeviceMotionController.cpp:
1595         (WebCore::DeviceMotionController::timerFired):
1596         (WebCore::DeviceMotionController::addListener):
1597         (WebCore::DeviceMotionController::removeListener):
1598         (WebCore::DeviceMotionController::removeAllListeners):
1599         * dom/DeviceMotionController.h:
1600         * dom/DeviceOrientationController.cpp:
1601         * dom/DeviceOrientationController.h:
1602         * dom/Document.cpp:
1603         * dom/Document.h:
1604         * dom/ScriptExecutionContext.h:
1605         * page/GeolocationController.cpp:
1606         * page/GeolocationController.h:
1607
1608 2011-10-20  Ilya Tikhonovsky  <loislo@chromium.org>
1609
1610         Unreviewed fix for Date.prototype.toISO8601Compact.
1611         It was generated wrong string for the dates with no leading zeros like 2011.11.11.
1612
1613         * inspector/front-end/utilities.js:
1614
1615 2011-10-20  Pavel Feldman  <pfeldman@google.com>
1616
1617         Web Inspector: minor CPU profiling UX improvements
1618         https://bugs.webkit.org/show_bug.cgi?id=70499
1619
1620         Store profile type. Store time percentage toggle state.
1621
1622         Reviewed by Yury Semikhatsky.
1623
1624         * inspector/front-end/ProfileDataGridTree.js:
1625         * inspector/front-end/ProfileView.js:
1626         (WebInspector.CPUProfileView.profileCallback):
1627         (WebInspector.CPUProfileView.prototype._changeView.set else):
1628
1629 2011-10-20  Vsevolod Vlasov  <vsevik@chromium.org>
1630
1631         Web Inspector: Advanced search results should keep working after pretty print toggled.
1632         https://bugs.webkit.org/show_bug.cgi?id=70347
1633
1634         Reviewed by Pavel Feldman.
1635
1636         * inspector/front-end/AdvancedSearchController.js:
1637         (WebInspector.SearchScope.prototype.createSearchResultsPane):
1638         (WebInspector.FileBasedSearchResultsPane.prototype.createAnchor):
1639         (WebInspector.FileBasedSearchResultsPane.prototype.addSearchResult):
1640         (WebInspector.FileBasedSearchResultsPane.prototype._regexMatchRanges):
1641         (WebInspector.FileBasedSearchResultsPane.prototype._createContentSpan):
1642         * inspector/front-end/BreakpointManager.js:
1643         (WebInspector.BreakpointManager.prototype._materializeBreakpoint):
1644         * inspector/front-end/CompilerSourceMapping.js:
1645         (WebInspector.CompilerSourceMapping.prototype.sourceLocationToCompiledLocation):
1646         * inspector/front-end/DebuggerPresentationModel.js:
1647         (WebInspector.DebuggerPresentationModel.prototype.createLinkifier):
1648         (WebInspector.DebuggerPresentationModel.prototype.continueToLine):
1649         (WebInspector.DebuggerPresentationModel.LinkifierFormatter):
1650         (WebInspector.DebuggerPresentationModel.LinkifierFormatter.prototype.formatRawSourceCodeAnchor):
1651         (WebInspector.DebuggerPresentationModel.DefaultLinkifierFormatter):
1652         (WebInspector.DebuggerPresentationModel.DefaultLinkifierFormatter.prototype.formatRawSourceCodeAnchor):
1653         (WebInspector.DebuggerPresentationModel.Linkifier):
1654         (WebInspector.DebuggerPresentationModel.Linkifier.prototype.linkifyLocation):
1655         (WebInspector.DebuggerPresentationModel.Linkifier.prototype.linkifyResource):
1656         (WebInspector.DebuggerPresentationModel.Linkifier.prototype.linkifyRawSourceCode):
1657         (WebInspector.DebuggerPresentationModel.Linkifier.prototype._updateAnchor):
1658         * inspector/front-end/RawSourceCode.js:
1659         (WebInspector.RawSourceCode.SourceMapping.prototype.uiLocationToRawLocation):
1660         (WebInspector.RawSourceCode.PlainSourceMapping.prototype.uiLocationToRawLocation):
1661         (WebInspector.RawSourceCode.FormattedSourceMapping.prototype.uiLocationToRawLocation):
1662         (WebInspector.RawSourceCode.CompilerSourceMapping.prototype.uiLocationToRawLocation):
1663         * inspector/front-end/ScriptsSearchScope.js:
1664         (WebInspector.ScriptsSearchResultsPane):
1665         (WebInspector.ScriptsSearchResultsPane.prototype.createAnchor):
1666         (WebInspector.ScriptsSearchResultsPane.LinkifierFormatter):
1667         (WebInspector.ScriptsSearchResultsPane.LinkifierFormatter.prototype.formatRawSourceCodeAnchor):
1668         * inspector/front-end/inspector.html:
1669
1670 2011-10-20  Kenneth Rohde Christiansen  <kenneth@webkit.org>
1671
1672         m_client in DeviceMotionController can never be 0, so no need to check for it
1673         https://bugs.webkit.org/show_bug.cgi?id=70490
1674
1675         Reviewed by Simon Hausmann.
1676
1677         No behavior change, thus no new tests.
1678
1679         * dom/DeviceMotionController.cpp:
1680         (WebCore::DeviceMotionController::timerFired):
1681         (WebCore::DeviceMotionController::addListener):
1682         (WebCore::DeviceMotionController::removeListener):
1683         (WebCore::DeviceMotionController::removeAllListeners):
1684         (WebCore::DeviceMotionController::suspend):
1685         (WebCore::DeviceMotionController::resume):
1686
1687 2011-10-20  Cary Clark  <caryclark@google.com>
1688
1689         [Chromium Skia on Mac] Improve focus ring
1690         https://bugs.webkit.org/show_bug.cgi?id=70124
1691
1692         Reviewed by Adam Barth.
1693         
1694         The focus ring code formerly outset the bounds of
1695         the component rectangles by fractional amounts. Because
1696         the rectangles are SkIRect (integer based), the fractional
1697         outset had no effect.
1698
1699         The equivalent code in GraphicsContextMac.mm computes
1700         the curve radius and rectangle outset with integers, so
1701         the use of floats in Skia's case, besides not working,
1702         is unnecessary.
1703
1704         The Skia code also failed to take the offset into account.
1705         In LayoutTests, the focus rings either have an offset of
1706         0 or 2. The CoreGraphics code increases the ring's rectangles
1707         by the offset, then passes the result to wkDrawFocusRing.
1708
1709         I did not find any documentation about how wkDrawFocusRing
1710         further inflates the focus ring, but empirically I determined
1711         that adding 2 to the offset generated rings with identical
1712         outer diameters.
1713  
1714         With these adjustments, the layout tests generate focus rings
1715         in the Skia on Mac case that match the coverage of the
1716         Chromium CG-based platform, in particular, matching:
1717         
1718         editing/inserting/editable-inline-element.html
1719         editing/selection/3690703-2.html
1720
1721         * platform/graphics/skia/GraphicsContextSkia.cpp:
1722         (WebCore::getFocusRingOutset):
1723         (WebCore::GraphicsContext::drawFocusRing):
1724
1725 2011-10-20  Zoltan Herczeg  <zherczeg@webkit.org>
1726
1727         Improve NEON based GaussianBlur
1728         https://bugs.webkit.org/show_bug.cgi?id=70493
1729
1730         Reviewed by Csaba Osztrogon√°c.
1731
1732         vmov instruction is less complex than vtbl.
1733
1734         * platform/graphics/filters/arm/FEGaussianBlurNEON.cpp:
1735
1736 2011-10-20  Pavel Feldman  <pfeldman@google.com>
1737
1738         Not reviewed: follow up to 97961 - dispatching of hide on detach was missing.
1739
1740         * inspector/front-end/AuditsPanel.js:
1741         (WebInspector.AuditsPanel.prototype.show):
1742         * inspector/front-end/View.js:
1743         (WebInspector.View.prototype.detach):
1744         * inspector/front-end/utilities.js:
1745
1746 2011-10-20  Kenneth Rohde Christiansen  <kenneth@webkit.org>
1747
1748         Properly suspend/resume Geolocation/DeviceMotion/DeviceOrientation objects
1749         https://bugs.webkit.org/show_bug.cgi?id=70328
1750
1751         Reviewed by Simon Hausmann.
1752
1753         Based on code from iOS and the N9.
1754
1755         No new tests, as the suspend/resume functionality is not fully working yet.
1756
1757         * dom/DeviceMotionController.cpp:
1758         (WebCore::DeviceMotionController::suspend):
1759         (WebCore::DeviceMotionController::resume):
1760         * dom/DeviceMotionController.h:
1761         * dom/DeviceOrientationController.cpp:
1762         (WebCore::DeviceOrientationController::addListener):
1763         (WebCore::DeviceOrientationController::removeListener):
1764         (WebCore::DeviceOrientationController::removeAllListeners):
1765         (WebCore::DeviceOrientationController::suspend):
1766         (WebCore::DeviceOrientationController::resume):
1767         * dom/DeviceOrientationController.h:
1768         * dom/Document.cpp:
1769         (WebCore::Document::suspendActiveDOMObjects):
1770         (WebCore::Document::resumeActiveDOMObjects):
1771         (WebCore::Document::stopActiveDOMObjects):
1772         * dom/Document.h:
1773         * dom/ScriptExecutionContext.h:
1774         * page/GeolocationController.cpp:
1775         (WebCore::GeolocationController::suspend):
1776         (WebCore::GeolocationController::resume):
1777         * page/GeolocationController.h:
1778
1779 2011-10-20  Antti Koivisto  <antti@apple.com>
1780
1781         Move rule matching and applying to separate functions from CSSStyleSelector::styleForElement
1782         https://bugs.webkit.org/show_bug.cgi?id=70408
1783
1784         Reviewed by Andreas Kling.
1785
1786         - Move matching code to matchAllRules and applying to applyMatchedDeclarations.
1787         - Encapsulate the matching results into a struct, use everywhere.
1788         - Move first-line style adjustment to adjustRenderStyle().
1789         - Remove unnecessary tests for resolveForRootDefault when applying the style
1790         - Use applyMatchedDeclarations also from pseudoStyleForElement
1791
1792         * css/CSSStyleSelector.cpp:
1793         (WebCore::CSSStyleSelector::matchAllRules):
1794         (WebCore::CSSStyleSelector::matchUARules):
1795         (WebCore::CSSStyleSelector::styleForElement):
1796         (WebCore::CSSStyleSelector::pseudoStyleForElement):
1797         (WebCore::CSSStyleSelector::styleForPage):
1798         (WebCore::CSSStyleSelector::adjustRenderStyle):
1799         (WebCore::CSSStyleSelector::pseudoStyleRulesForElement):
1800         (WebCore::CSSStyleSelector::applyMatchedDeclarations):
1801         * css/CSSStyleSelector.h:
1802         (WebCore::CSSStyleSelector::MatchResult::MatchResult):
1803
1804 2011-10-19  Pavel Feldman  <pfeldman@google.com>
1805
1806         Web Inspector: get rid of manual view hierarchy management.
1807         https://bugs.webkit.org/show_bug.cgi?id=70417
1808
1809         Reviewed by Yury Semikhatsky.
1810
1811         * inspector/front-end/AuditsPanel.js:
1812         (WebInspector.AuditsPanel.prototype.show):
1813         (WebInspector.AuditsPanel.prototype._clearButtonClicked):
1814         * inspector/front-end/ConsolePanel.js:
1815         (WebInspector.ConsolePanel.prototype.show):
1816         (WebInspector.ConsolePanel.prototype.hide):
1817         * inspector/front-end/DetailedHeapshotGridNodes.js:
1818         (WebInspector.HeapSnapshotGenericObjectNode.prototype.queryObjectContent.else.formatResult):
1819         (WebInspector.HeapSnapshotGenericObjectNode.prototype.queryObjectContent):
1820         * inspector/front-end/DetailedHeapshotView.js:
1821         (WebInspector.DetailedHeapshotView.prototype.show.profileCallback2):
1822         (WebInspector.DetailedHeapshotView.prototype.show):
1823         (WebInspector.DetailedHeapshotView.prototype._changeView):
1824         * inspector/front-end/IFrameView.js:
1825         * inspector/front-end/NetworkPanel.js:
1826         (WebInspector.NetworkLogView):
1827         (WebInspector.NetworkLogView.prototype._initializeView):
1828         (WebInspector.NetworkPanel.prototype.show):
1829         (WebInspector.NetworkPanel.prototype._showResource):
1830         (WebInspector.NetworkPanel.prototype._closeVisibleResource):
1831         * inspector/front-end/Panel.js:
1832         (WebInspector.Panel.prototype.show):
1833         (WebInspector.Panel.prototype.detach):
1834         * inspector/front-end/ProfilesPanel.js:
1835         (WebInspector.ProfilesPanel.prototype._reset):
1836         (WebInspector.ProfilesPanel.prototype.closeVisibleView):
1837         * inspector/front-end/RemoteObject.js:
1838         * inspector/front-end/ResourcePreviewView.js:
1839         (WebInspector.ResourcePreviewView.prototype.contentLoaded):
1840         * inspector/front-end/ResourceResponseView.js:
1841         (WebInspector.ResourceResponseView.prototype.contentLoaded):
1842         * inspector/front-end/ResourceTimingView.js:
1843         (WebInspector.ResourceTimingView.prototype.show):
1844         * inspector/front-end/ResourcesPanel.js:
1845         (WebInspector.ResourcesPanel.prototype.reset):
1846         (WebInspector.ResourcesPanel.prototype._innerShowView):
1847         (WebInspector.FrameResourceTreeElement.prototype._recreateSourceView):
1848         * inspector/front-end/ScriptsPanel.js:
1849         (WebInspector.ScriptsPanel.prototype._uiSourceCodeRemoved):
1850         (WebInspector.ScriptsPanel.prototype._createSourceFrame):
1851         (WebInspector.ScriptsPanel.prototype._removeSourceFrame):
1852         * inspector/front-end/SourceFrame.js:
1853         (WebInspector.SourceFrame):
1854         (WebInspector.SourceFrame.prototype.show):
1855         * inspector/front-end/TabbedPane.js:
1856         (WebInspector.TabbedPane):
1857         (WebInspector.TabbedPane.prototype.appendTab):
1858         (WebInspector.TabbedPane.prototype._hideTab):
1859         * inspector/front-end/View.js:
1860         (WebInspector.View):
1861         (WebInspector.View.prototype.show):
1862         (WebInspector.View.prototype.hide):
1863         (WebInspector.View.prototype.attach):
1864         (WebInspector.View.prototype.detach):
1865         (WebInspector.View.prototype._addChildView):
1866         (WebInspector.View.prototype._removeChildView):
1867         (WebInspector.View.prototype.dispatchToVisibleChildren):
1868         (WebInspector.View.prototype._handleInsertedIntoDocument):
1869         (WebInspector.View.prototype._handleRemovedFromDocument):
1870         (WebInspector.View.prototype.printViewHierarchy):
1871         (WebInspector.View.prototype._collectViewHierarchy):
1872         * inspector/front-end/inspector.html:
1873         * inspector/front-end/inspector.js:
1874
1875 2011-10-20  Vsevolod Vlasov  <vsevik@chromium.org>
1876
1877         Web Inspector: Enable support for advanced search in script's static content provider.
1878         https://bugs.webkit.org/show_bug.cgi?id=70354
1879
1880         Reviewed by Pavel Feldman.
1881
1882         Test: http/tests/inspector/search/search-in-static.html
1883
1884         * inspector/front-end/AdvancedSearchController.js:
1885         (WebInspector.FileBasedSearchResultsPane.prototype.addSearchResult):
1886         * inspector/front-end/ConsolePanel.js:
1887         (WebInspector.ConsolePanel.prototype.performSearch):
1888         * inspector/front-end/ContentProviders.js:
1889         (WebInspector.StaticContentProvider.prototype.searchInContent):
1890         * inspector/front-end/ElementsTreeOutline.js:
1891         ():
1892         * inspector/front-end/NetworkPanel.js:
1893         (WebInspector.NetworkLogView.prototype.performSearch):
1894         * inspector/front-end/ScriptsPanel.js:
1895         (WebInspector.ScriptsPanel.prototype._showSourceLine):
1896         * inspector/front-end/SourceFrame.js:
1897         (WebInspector.SourceFrame.createSearchRegex):
1898         * inspector/front-end/utilities.js:
1899         ():
1900
1901 2011-10-20  Raphael Kubo da Costa  <kubo@profusion.mobi>
1902
1903         [EFL] Do not manually set the frameRect in different places in ScrollbarEfl.
1904         https://bugs.webkit.org/show_bug.cgi?id=70427
1905
1906         Reviewed by Kenneth Rohde Christiansen.
1907
1908         This commit is related to the effort towards having a different
1909         scrollbar (with a size > 0) for DumpRenderTree.
1910
1911         Scrollbar::Scrollbar() already calls setFrameRect() with the size
1912         obtained from ScrollbarTheme::scrollbarThickness(), which is currently
1913         always 0 for us, so the call to setFrameRect() in ScrollbarEfl's
1914         constructor is not needed and would break things if scrollbarThickness
1915         is changed to return another value.
1916
1917         The frameRect is also not changed in ScrollbarEfl::setParent() anymore,
1918         as it also does not take scrollbarThickness() into account and thus
1919         breaks using other themes such as ScrollbarThemeMock in DumpRenderTree.
1920         Right now, it is always going to be 0 anyway.
1921
1922         It is still work in progress, though -- it'd be good to somehow move the
1923         theming code to ScrollbarThemeEfl, as right now scrollbar EDCs with a
1924         non-zero min size will not cause the scrollbars to have non-zero size.
1925
1926         No new tests, this is machinery needed to run the current tests.
1927
1928         * platform/efl/ScrollbarEfl.cpp:
1929         (ScrollbarEfl::ScrollbarEfl):
1930         (ScrollbarEfl::setParent):
1931
1932 2011-10-20  Sheriff Bot  <webkit.review.bot@gmail.com>
1933
1934         Unreviewed, rolling out r97954.
1935         http://trac.webkit.org/changeset/97954
1936         https://bugs.webkit.org/show_bug.cgi?id=70486
1937
1938         clean build failed on chromium.mac: File
1939         "../inspector/CodeGeneratorInspector.py", line 34, in <module>
1940         import json (Requested by loislo on #webkit).
1941
1942         * CMakeLists.txt:
1943         * CodeGenerators.pri:
1944         * DerivedSources.make:
1945         * GNUmakefile.am:
1946         * WebCore.gyp/WebCore.gyp:
1947         * inspector/CodeGeneratorInspector.pm: Added.
1948         (new):
1949         (GenerateModule):
1950         (GenerateInterface):
1951         (generateAgentDeclaration):
1952         (generateFrontendConstructorImpl):
1953         (generateFunctions):
1954         (generateFrontendFunction):
1955         (camelCase):
1956         (generateBackendFunction):
1957         (generateBackendSendResponse):
1958         (generateBackendReportProtocolError):
1959         (generateArgumentGetters):
1960         (generateBackendDispatcher):
1961         (generateBackendMessageParser):
1962         (collectBackendJSStubFunctions):
1963         (collectBackendJSStubEvents):
1964         (generateBackendStubJS):
1965         (generateHeader):
1966         (generateSource):
1967         (typeTraits):
1968         (paramTypeTraits):
1969         (generateBackendAgentFieldsAndConstructor):
1970         (finish):
1971         * inspector/CodeGeneratorInspector.py: Removed.
1972         * inspector/Inspector.json:
1973         * inspector/generate-inspector-idl: Added.
1974
1975 2011-10-20  Adenilson Cavalcanti  <adenilson.silva@openbossa.org>
1976
1977         Enable geolocation client based flag for Qt5
1978         https://bugs.webkit.org/show_bug.cgi?id=70330
1979
1980         Reviewed by Kenneth Rohde Christiansen.
1981
1982         This will enable client based geolocation for Qt5.
1983
1984         No new tests, this enables flags for Qt5.
1985
1986         * features.pri:
1987
1988 2011-10-20  Kentaro Hara  <haraken@chromium.org>
1989
1990         Implement a MessageEvent constructor for V8
1991         https://bugs.webkit.org/show_bug.cgi?id=70296
1992
1993         Reviewed by Adam Barth.
1994
1995         Test: fast/events/constructors/message-event-constructor.html
1996
1997         * bindings/v8/OptionsObject.cpp:
1998         (WebCore::OptionsObject::getKeyValue): Returns RefPtr<DOMWindow> corresponding to a given key.
1999         (WebCore::OptionsObject::getKeyValue): Returns MessagePortArray corresponding to a given key.
2000         * bindings/v8/OptionsObject.h:
2001         * bindings/v8/custom/V8EventConstructors.cpp: Added a MessageEvent constructor.
2002         * dom/MessageEvent.idl: Makes MessageEvent constructible for V8.
2003
2004 2011-10-20  Peter Rybin  <peter.rybin@gmail.com>
2005
2006         Web Inspector: reimplement protocol backend/frontend source generator
2007         https://bugs.webkit.org/show_bug.cgi?id=69295
2008
2009         Reviewed by Pavel Feldman.
2010
2011         Old 2-stage python+perf generator that uses intermediate IDL output is
2012         being replaced with a solid python script. This is for simplicity and
2013         as a base for the future JSON validator.
2014
2015         * CMakeLists.txt:
2016         * CodeGenerators.pri:
2017         * DerivedSources.make:
2018         * GNUmakefile.am:
2019         * WebCore.gyp/WebCore.gyp:
2020         * inspector/CodeGeneratorInspector.pm: Removed.
2021         * inspector/CodeGeneratorInspector.py: Added.
2022         * inspector/Inspector.json:
2023         * inspector/generate-inspector-idl: Removed.
2024
2025 2011-10-18  Pavel Podivilov  <podivilov@chromium.org>
2026
2027         Web Inspector: encode source map url as source map page url query parameter.
2028         https://bugs.webkit.org/show_bug.cgi?id=70327
2029
2030         Reviewed by Pavel Feldman.
2031
2032         * inspector/front-end/CompilerSourceMappingProvider.js:
2033         (WebInspector.CompilerSourceMappingProvider):
2034         (WebInspector.CompilerSourceMappingProvider.prototype.loadSourceMapping.frameLoaded):
2035         (WebInspector.CompilerSourceMappingProvider.prototype.loadSourceMapping):
2036         (WebInspector.CompilerSourceMappingProvider.prototype.loadSourceCode):
2037         (WebInspector.CompilerSourceMappingProvider.prototype._sendRequest):
2038         * inspector/front-end/RawSourceCode.js:
2039         (WebInspector.RawSourceCode.CompilerSourceMapping.prototype.uiSourceCodeList):
2040
2041 2011-10-19  Alexander Pavlov  <apavlov@chromium.org>
2042
2043         Web Inspector: The "x" in "980px x 36px" looks weird in the inspector node callout
2044         https://bugs.webkit.org/show_bug.cgi?id=69857
2045
2046         Reviewed by Pavel Feldman.
2047
2048         * inspector/DOMNodeHighlighter.cpp:
2049
2050 2011-10-20  Sheriff Bot  <webkit.review.bot@gmail.com>
2051
2052         Unreviewed, rolling out r97917.
2053         http://trac.webkit.org/changeset/97917
2054         https://bugs.webkit.org/show_bug.cgi?id=70475
2055
2056         number of crashes on Snow Leopard/Lion tests bots
2057         http://build.webkit.org/results/Lion%20Intel%20Release%20(Tests)/r97917%20(2020)/http/tests/inspector
2058         /extensions-network-redirect-crash-log.txt (Requested by
2059         loislo on #webkit).
2060
2061         * css/SelectorChecker.cpp:
2062         (WebCore::SelectorChecker::checkOneSelector):
2063         * dom/OptionElement.cpp:
2064         (WebCore::OptionElement::setSelectedState):
2065         (WebCore::OptionElement::optionIndex):
2066         (WebCore::OptionElement::collectOptionLabelOrText):
2067         (WebCore::OptionElement::collectOptionInnerText):
2068         (WebCore::OptionElement::normalizeText):
2069         (WebCore::OptionElement::collectOptionTextRespectingGroupLabel):
2070         (WebCore::OptionElementData::OptionElementData):
2071         (WebCore::OptionElementData::~OptionElementData):
2072         (WebCore::toOptionElement):
2073         (WebCore::isOptionElement):
2074         * dom/OptionElement.h:
2075         (WebCore::OptionElement::~OptionElement):
2076         (WebCore::OptionElementData::value):
2077         (WebCore::OptionElementData::setValue):
2078         (WebCore::OptionElementData::label):
2079         (WebCore::OptionElementData::setLabel):
2080         (WebCore::OptionElementData::selected):
2081         (WebCore::OptionElementData::setSelected):
2082         * html/HTMLOptionElement.cpp:
2083         (WebCore::HTMLOptionElement::HTMLOptionElement):
2084         (WebCore::HTMLOptionElement::createForJSConstructor):
2085         (WebCore::HTMLOptionElement::text):
2086         (WebCore::HTMLOptionElement::index):
2087         (WebCore::HTMLOptionElement::parseMappedAttribute):
2088         (WebCore::HTMLOptionElement::value):
2089         (WebCore::HTMLOptionElement::selected):
2090         (WebCore::HTMLOptionElement::setSelected):
2091         (WebCore::HTMLOptionElement::setSelectedState):
2092         (WebCore::HTMLOptionElement::defaultSelected):
2093         (WebCore::HTMLOptionElement::setDefaultSelected):
2094         (WebCore::HTMLOptionElement::label):
2095         (WebCore::HTMLOptionElement::textIndentedToRespectGroupLabel):
2096         (WebCore::HTMLOptionElement::insertedIntoTree):
2097         * html/HTMLOptionElement.h:
2098         * html/HTMLSelectElement.cpp:
2099         (WebCore::HTMLSelectElement::nextValidIndex):
2100         (WebCore::HTMLSelectElement::saveLastSelection):
2101         (WebCore::HTMLSelectElement::setActiveSelectionAnchorIndex):
2102         (WebCore::HTMLSelectElement::updateListBoxSelection):
2103         (WebCore::HTMLSelectElement::listBoxOnChange):
2104         (WebCore::HTMLSelectElement::recalcListItems):
2105         (WebCore::HTMLSelectElement::selectedIndex):
2106         (WebCore::HTMLSelectElement::setSelectedIndex):
2107         (WebCore::HTMLSelectElement::optionToListIndex):
2108         (WebCore::HTMLSelectElement::listToOptionIndex):
2109         (WebCore::HTMLSelectElement::deselectItemsWithoutValidation):
2110         (WebCore::HTMLSelectElement::saveFormControlState):
2111         (WebCore::HTMLSelectElement::restoreFormControlState):
2112         (WebCore::HTMLSelectElement::appendFormData):
2113         (WebCore::HTMLSelectElement::reset):
2114         (WebCore::HTMLSelectElement::updateSelectedState):
2115         (WebCore::HTMLSelectElement::lastSelectedListIndex):
2116         (WebCore::HTMLSelectElement::typeAheadFind):
2117         (WebCore::HTMLSelectElement::accessKeySetSelectedIndex):
2118         (WebCore::HTMLSelectElement::length):
2119         * platform/graphics/cg/ImageBufferCG.cpp:
2120         (WebCore::ImageBuffer::copyImage):
2121         * rendering/RenderListBox.cpp:
2122         (WebCore::RenderListBox::updateFromElement):
2123         (WebCore::RenderListBox::addFocusRingRects):
2124         (WebCore::RenderListBox::paintItemForeground):
2125         (WebCore::RenderListBox::paintItemBackground):
2126         * rendering/RenderMenuList.cpp:
2127         (WebCore::RenderMenuList::updateOptionsWidth):
2128         (WebCore::RenderMenuList::setTextFromOption):
2129         (WebCore::RenderMenuList::itemText):
2130         (WebCore::RenderMenuList::itemIsSelected):
2131
2132 2011-10-20  Carol Szabo  <carol@webkit.org>
2133
2134         Tiled Backing Store does not regenerate tiles when it should
2135         https://bugs.webkit.org/show_bug.cgi?id=57798
2136
2137         Reviewed by Darin Adler.
2138
2139         Changed TiledBackingStore::adjustVisibleRect to take into account
2140         contentsSize, the same way as it is done when tiles are generated.
2141
2142         This is an issue that requires a certain sequence of API calls which
2143         may not be easily simulated from DumpRenderTree, but which is 
2144         easily reproduced with QtTest. This is why I have provided only
2145         a Qt specific test despite this being a generic problem.
2146
2147         * platform/graphics/TiledBackingStore.cpp:
2148         (WebCore::TiledBackingStore::adjustVisibleRect):
2149         Changed to take into account ContentsSize.
2150         (WebCore::TiledBackingStore::visibleContentsRect):
2151         Added to return the intersection of the viewport's visible rect with
2152         the ContentsRect.
2153         (WebCore::TiledBackingStore::createTiles):
2154         Changed to take into account the ContentsSize when calculating the
2155         previously visible rect.
2156         * platform/graphics/TiledBackingStore.h:
2157
2158 2011-10-19  Jer Noble  <jer.noble@apple.com>
2159
2160         compositing/video tests time out on Lion
2161         https://bugs.webkit.org/show_bug.cgi?id=70448
2162
2163         Reviewed by Eric Carlson.
2164
2165         Covered by existing tests.
2166
2167         AVFoundation will occasionally fill it's playback buffers before collecting enough
2168         statistical information to answer YES to isLikelyToKeepUp.  In this situation, set the
2169         ready state to HAVE_ENOUGH_DATA, on the presumption that if the playback buffers are
2170         full, playback will probably not stall.
2171
2172         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
2173         (WebCore::MediaPlayerPrivateAVFoundation::updateStates):
2174
2175 2011-10-19  Kentaro Hara  <haraken@chromium.org>
2176
2177         MessageEvent.data can be stored as ScriptValue.
2178         https://bugs.webkit.org/show_bug.cgi?id=68978
2179
2180         Reviewed by Hajime Morita.
2181
2182         Currently, the following test cases fail or crash:
2183
2184         - shouldBe("new MessageEvent('eventType', { data: test_object }).data", "test_object") -> FAIL
2185         - new MessageEvent('eventType', { data: document }).data -> CRASH
2186
2187         This is because MessageEvent.data is implemented just as SerializedScriptValue
2188         and it cannot keep ScriptValue passed by JavaScript. This patch makes the following changes:
2189
2190         - If MessageEvent is constructed with ScriptValue, it is stored as ScriptValue internally.
2191         When MessageEvent.data is called, the ScriptValue is returned.
2192         - If MessageEvent is constructed with SerializedScriptValue, it is stored as
2193         SerializedScriptValue internally (since we cannot deserialize it into ScriptValue
2194         at this point because of lack of ExecState). When MessageEvent.data is called,
2195         the SerializedScriptValue is deserialized into the corresponding ScriptValue,
2196         and the ScriptValue is returned.
2197
2198         This patch does not make a fix for ObjC bindings code, since we need to first fix
2199         the bug 28774, as commented in dom/MessageEvent.h and dom/MessageEvent.cpp.
2200
2201         Test: fast/events/constructors/message-event-constructor.html
2202               fast/dom/message-port-deleted-by-accessor.html
2203               fast/events/init-events.html
2204               fast/eventsource/eventsource-attribute-listeners.html
2205
2206         * bindings/js/JSMessageEventCustom.cpp:
2207         (WebCore::JSMessageEvent::data): Custom getter for MessageEvent.data. Supported ScriptValue.
2208         (WebCore::JSMessageEvent::handleInitMessageEvent): Changed SerializedScriptValue to ScriptValue. Removed a 'doTransfer' parameter.
2209         (WebCore::JSMessageEvent::initMessageEvent): Removed a 'doTransfer' parameter.
2210         (WebCore::JSMessageEvent::webkitInitMessageEvent): Ditto.
2211         * bindings/v8/custom/V8MessageEventCustom.cpp:
2212         (WebCore::V8MessageEvent::dataAccessorGetter): Custom getter for MessageEvent.data. Supported ScriptValue.
2213         (WebCore::V8MessageEvent::portsAccessorGetter): Removed extra spaces.
2214         (WebCore::V8MessageEvent::initMessageEventCallback): Changed SerializedScriptValue to ScriptValue.
2215         * dom/MessageEvent.cpp:
2216         (WebCore::MessageEvent::MessageEvent): Supported ScriptValue.
2217         (WebCore::MessageEvent::initMessageEvent): Supported ScriptValue.
2218         (WebCore::MessageEvent::isMessageEvent): Removed extra spaces.
2219         * dom/MessageEvent.h: Added DataType::DataTypeScriptValue.
2220         (WebCore::MessageEvent::create): Supported ScriptValue.
2221         (WebCore::MessageEvent::dataAsScriptValue): Getter for data. Insert ASSERT() to guarantee that this accessor is not called for unintended type of data.
2222         (WebCore::MessageEvent::dataAsSerializedScriptValue): Ditto.
2223         (WebCore::MessageEvent::dataAsString): Ditto.
2224         (WebCore::MessageEvent::dataAsBlob): Ditto.
2225         (WebCore::MessageEvent::dataAsArrayBuffer): Ditto.
2226         * dom/MessageEvent.idl: Changed SerializedScriptValue to DOMObject (i.e. ScriptValue). This patch does not touch an ObjC part. Removed [CachedAttribute] from MessageEvent.data, since it is now a DOMObject and needs not to be cached.
2227
2228 2011-10-19  Adam Barth  <abarth@webkit.org>
2229
2230         Attempt to fix GTK build.
2231
2232         * GNUmakefile.am:
2233
2234 == Rolled over to ChangeLog-2011-10-19 ==