2011-03-15 Andrey Kosyakov <caseq@chromium.org>
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2011-03-15  Andrey Kosyakov  <caseq@chromium.org>
2
3         Reviewed by Yury Semikhatsky.
4
5         Web Inspector: further extension API cleanup (removed inspectedPage, add experimental prefix)
6         https://bugs.webkit.org/show_bug.cgi?id=56327
7
8         * inspector/front-end/ExtensionAPI.js:
9         (WebInspector.injectedExtensionAPI):
10         * inspector/front-end/ExtensionAPISchema.json:
11
12 2011-03-15  Yury Semikhatsky  <yurys@chromium.org>
13
14         Reviewed by Pavel Feldman.
15
16         Web Inspector: when console.groupEnd calls twice
17         https://bugs.webkit.org/show_bug.cgi?id=56114
18
19         Test: inspector/console/console-nested-group.html
20
21         * inspector/ConsoleMessage.h:
22         (WebCore::ConsoleMessage::type):
23         * inspector/InspectorConsoleAgent.cpp:
24         (WebCore::InspectorConsoleAgent::addConsoleMessage): do not coalesce adjacent EndGroup messages.
25
26 2011-03-15  Chris Mumford  <chris.mumford@palm.com>
27
28         Reviewed by Adam Barth.
29
30         Initializing several member variables that were not initialized in
31         their constructors. These values were all read prior to initialization
32         as reported by Valgrind.
33
34         No new tests: No feature additions/removals.
35
36         * accessibility/AccessibilityImageMapLink.cpp:
37         (WebCore::AccessibilityImageMapLink::AccessibilityImageMapLink):
38         * editing/DeleteSelectionCommand.cpp:
39         (WebCore::DeleteSelectionCommand::DeleteSelectionCommand):
40         * html/HTMLCanvasElement.cpp:
41         (WebCore::HTMLCanvasElement::HTMLCanvasElement):
42         * xml/XPathResult.cpp:
43         (WebCore::XPathResult::XPathResult):
44
45 2011-03-15  Ben Taylor  <bentaylor.solx86@gmail.com>
46
47         Reviewed by Adam Barth.
48
49         https://bugs.webkit.org/show_bug.cgi?id=56255
50         Fix build on Solaris 10/Sun Studio 12 C++
51
52         No new tests. This is to fix compilation on Solaris 10 with Sun Studio 12 C++
53
54         * bridge/runtime_array.h:
55         (JSC::RuntimeArray::getConcreteArray):
56
57 2011-03-14  Sam Weinig  <sam@webkit.org>
58
59         Reviewed by Adam Roben
60
61         about:blank fake responses don't get serialized when sent the UIProcess
62         <rdar://problem/9108119>
63         https://bugs.webkit.org/show_bug.cgi?id=56357
64
65         Test: AboutBlankLoad
66
67         * platform/network/cf/ResourceResponse.h:
68         * platform/network/cf/ResourceResponseCFNet.cpp:
69         (WebCore::ResourceResponse::cfURLResponse):
70         Create a CFURLResponseRef if one does not exist yet as we do for
71         NSURLResponses on the mac.
72
73 2011-03-14  Alexis Menard  <alexis.menard@openbossa.org>
74
75         Reviewed by Kenneth Rohde Christiansen.
76
77         [Qt] Seeking videos using the timeline bar does not work properly and stop the video playback.
78         https://bugs.webkit.org/show_bug.cgi?id=56145
79
80         We do not need seekTimeout and queuedSeekTimeout anymore. setPosition on QMediaPlayer is good enough.
81         positionChanged() will be emitted when the data is buffered. On Linux the signal was not emitted because
82         of a bug in QtMultimedia.
83
84         * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
85         (WebCore::MediaPlayerPrivateQt::MediaPlayerPrivateQt):
86         (WebCore::MediaPlayerPrivateQt::seek):
87         (WebCore::MediaPlayerPrivateQt::stateChanged):
88         (WebCore::MediaPlayerPrivateQt::positionChanged):
89         * platform/graphics/qt/MediaPlayerPrivateQt.h:
90
91 2011-03-14  Alexey Proskuryakov  <ap@apple.com>
92
93         Reviewed by Adam Roben.
94
95         https://bugs.webkit.org/show_bug.cgi?id=44138
96         Crash beneath SocketStreamHandle::readStreamCallback when running websocket/tests/workers/worker-handshake-challenge-randomness.html
97
98         https://bugs.webkit.org/show_bug.cgi?id=55375
99         http/tests/websocket/tests/reload-crash.html sometimes crashes beneath SocketStreamHandle::readStreamCallback on Windows
100
101         https://bugs.webkit.org/show_bug.cgi?id=56185
102         http/tests/websocket/tests/url-with-credential.html sometimes crashes beneath SocketStreamHandle::readStreamCallback on Windows
103
104         * platform/network/cf/SocketStreamHandle.h: Made SocketStreamHandle ThreadSafeShared, so that
105         a pointer can be passed across threads when wrapped in a RefPtr.
106
107         * platform/network/cf/SocketStreamHandleCFNet.cpp: Make sure that an object still exists
108         when executing a method on main thread by using RefPtr.
109
110 2011-03-14  Sam Weinig  <sam@webkit.org>
111
112         Mac build fix. Part 1 of N.
113
114         * WebCore.exp.in:
115
116 2011-03-14  Joseph Pecoraro  <joepeck@webkit.org>
117
118         Reviewed by Eric Carlson.
119
120         Stalled media elements don't stop delaying the load event
121         https://bugs.webkit.org/show_bug.cgi?id=56316
122
123         We should stop delaying the load event when the load has
124         stalled naturally, or if we require a user gesture to
125         continue the load.
126
127         Test: http/tests/media/video-play-stall-before-meta-data.html
128
129         * html/HTMLMediaElement.cpp:
130         (WebCore::HTMLMediaElement::setNetworkState): when suspending, stop delaying.
131         (WebCore::HTMLMediaElement::progressEventTimerFired): when stalling, stop delaying.
132
133 2011-03-13  MORITA Hajime  <morrita@google.com>
134
135         Reviewed by Tony Chang.
136
137         Crash when dragging and dropping in a document with an invalid XHTML header
138         https://bugs.webkit.org/show_bug.cgi?id=48799
139
140         DragController tried to dispatch textInput event even when the
141         drag destination is not the editable area.
142         This change skips the event dispatching on that case.
143         
144         Test: editing/pasteboard/drop-file-svg.html
145
146         * page/DragController.cpp:
147         (WebCore::DragController::dispatchTextInputEventFor):
148         (WebCore::DragController::concludeEditDrag):
149
150 2011-03-14  Sheriff Bot  <webkit.review.bot@gmail.com>
151
152         Unreviewed, rolling out r81094.
153         http://trac.webkit.org/changeset/81094
154         https://bugs.webkit.org/show_bug.cgi?id=56355
155
156         Broke the chromium DRT related build. (Requested by dave_levin
157         on #webkit).
158
159         * WebCore.exp.in:
160         * WebCore.order:
161         * page/Frame.cpp:
162         (WebCore::Frame::layerTreeAsText):
163         * page/Frame.h:
164         * rendering/RenderLayerCompositor.cpp:
165         (WebCore::RenderLayerCompositor::layerTreeAsText):
166         * rendering/RenderLayerCompositor.h:
167
168 2011-03-14  Adam Barth  <abarth@webkit.org>
169
170         Apparently we need to exclude DefaultSharedWorkerRepository.cpp from
171         the Chromium build, otherwise the objects visible in the global scope
172         change.
173
174         * WebCore.gyp/WebCore.gyp:
175
176 2011-03-14  Adam Barth  <abarth@webkit.org>
177
178         Attempted Chromium build fix.  Exclude AllInOne harder.
179
180         * WebCore.gyp/WebCore.gyp:
181
182 2011-03-14  Ryosuke Niwa  <rniwa@webkit.org>
183
184         Reviewed by Darin Adler.
185
186         EventHandler calls shouldChangeSelection needlessly
187         https://bugs.webkit.org/show_bug.cgi?id=56324
188
189         Extracted setSelectionIfNeeded and setNonDirectionalSelectionIfNeeded and
190         avoided calling shouldChangeSelection and setSelection when the existing
191         selection is identical to that of new selection.
192
193         * page/EventHandler.cpp:
194         (WebCore::setSelectionIfNeeded): Extracted.
195         (WebCore::setNonDirectionalSelectionIfNeeded): Extracted.
196         (WebCore::EventHandler::selectClosestWordFromMouseEvent): Calls a helper function above.
197         (WebCore::EventHandler::selectClosestWordOrLinkFromMouseEvent): Ditto.
198         (WebCore::EventHandler::handleMousePressEventTripleClick): Ditto.
199         (WebCore::EventHandler::handleMousePressEventSingleClick): Ditto.
200         (WebCore::EventHandler::updateSelectionForMouseDrag): Ditto.
201         (WebCore::EventHandler::handleMouseReleaseEvent): Ditto.
202
203 2011-03-14  Daniel Sievers  <sievers@google.com>
204
205         Reviewed by Simon Fraser.
206
207         [Chromium] Make RenderAsTextBehavior and LayerTreeAsTextBehavior tweakable from the DumpRenderTree commandline
208         https://bugs.webkit.org/show_bug.cgi?id=56139
209
210         * WebCore.exp.in:
211         * WebCore.order:
212         * page/Frame.cpp:
213         (WebCore::Frame::layerTreeAsText):
214         * page/Frame.h:
215         * rendering/RenderLayerCompositor.cpp:
216         (WebCore::RenderLayerCompositor::layerTreeAsText):
217         * rendering/RenderLayerCompositor.h:
218
219 2011-03-14  Adam Barth  <abarth@webkit.org>
220
221         Reviewed by Dimitri Glazkov.
222
223         Add remaining files to WebCore.gypi
224         https://bugs.webkit.org/show_bug.cgi?id=56351
225
226         Adding the remaining files to WebCore.gypi required updating the
227         include/exclude lists in WebCore.gyp.  These lists aren't overly
228         elegant, but we can try to improve them in the future.
229
230         * WebCore.gyp/WebCore.gyp:
231         * WebCore.gypi:
232         * bindings/v8/ScriptCachedFrameData.cpp:
233             - Added ifdefs to this file to match the header.
234         * platform/graphics/WOFFFileFormat.cpp:
235             - Fixed build error when compiling without ENABLE(OPENTYPE_SANITIZER).
236
237 2011-03-14  Anton Muhin  <antonm@chromium.org>
238
239         Reviewed by Adam Barth.
240
241         [v8] Rework object group building.
242         https://bugs.webkit.org/show_bug.cgi?id=55399
243
244         Instead of going top-down (from owner to owned elements), go up---from objects
245         to their group ids.  That fits better to v8's object grouping model and guarantees
246         that each wrapper belongs to the single group.
247
248         Alas, this cannot be implemented for one kind of objects---CSSProperties.
249
250         Part of core GC algorithm and tested extensively by exisiting layout tests.
251
252         * bindings/scripts/CodeGeneratorV8.pm:
253         * bindings/scripts/test/V8/V8TestInterface.cpp:
254         * bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:
255         * bindings/scripts/test/V8/V8TestObj.cpp:
256         * bindings/v8/V8GCController.cpp:
257         (WebCore::calculateGroupId):
258         (WebCore::calculateRootStyleSheet):
259         (WebCore::GrouperVisitor::visitDOMWrapper):
260         (WebCore::GrouperVisitor::applyGrouping):
261         (WebCore::V8GCController::gcPrologue):
262         * bindings/v8/WrapperTypeInfo.h:
263         (WebCore::WrapperTypeInfo::isSubclass):
264         * css/CSSRuleList.h:
265         (WebCore::CSSRuleList::styleList):
266         * css/StyleSheetList.h:
267         (WebCore::StyleSheetList::document):
268
269 2011-03-14  Kent Tamura  <tkent@chromium.org>
270
271         Reviewed by James Robinson.
272
273         Assertion failure by form validation message for <select required> with float:left
274         https://bugs.webkit.org/show_bug.cgi?id=55995
275
276         Test: fast/forms/interactive-validation-select-crash.html
277
278         * rendering/RenderBlock.cpp:
279         (WebCore::canMergeContiguousAnonymousBlocks):
280           isAnonymousBlock() doesn't mean it is a RenderBlock. We need to check isRenderBlock().
281
282 2011-03-14  Balazs Kelemen  <kbalazs@webkit.org>
283
284         Reviewed by Adam Roben.
285
286         [Qt][WK2]Unbreak InjectedBundle on Qt
287         https://bugs.webkit.org/show_bug.cgi?id=54109
288
289         No code changes so no new tests.
290
291         Revert the changes that were needed to use KURL
292         in WebKitTestRunner.
293
294         * Configurations/WebCore.xcconfig:
295         * WebCore.exp.in:
296
297 2011-03-14  Jarkko Sakkinen  <jarkko.j.sakkinen@gmail.com>
298
299         Reviewed by Kenneth Rohde Christiansen.
300
301         [Qt] Compilation fails with --3d-canvas 
302         https://bugs.webkit.org/show_bug.cgi?id=55964
303
304         * WebCore.pro:
305         * platform/graphics/qt/Extensions3DQt.cpp:
306
307 2011-03-14  Brian Weinstein  <bweinstein@apple.com>
308
309         Reviewed by Adam Roben and Gavin Barraclough.
310
311         FileSystemWin.cpp needs listDirectory() implementation
312         https://bugs.webkit.org/show_bug.cgi?id=56331
313         <rdar://problem/9126635>
314         
315         Move PathWalker from an inline class in WebKit2 to its own class in WebCore,
316         so it can be used from both WebCore and WebKit2.
317         
318         Implement FileSystemWin::listDirectory using PathWalker to populate the Vector
319         of paths matching the passed in pattern.
320
321         * WebCore.vcproj/WebCore.vcproj:
322         * platform/win/FileSystemWin.cpp:
323         (WebCore::listDirectory): Call through to PathWalker.
324         * platform/win/PathWalker.cpp: Added.
325         (WebCore::PathWalker::PathWalker): Moved from WebKit2. Added a second argument
326             for the pattern to pass to the Windows File APIs.
327         (WebCore::PathWalker::~PathWalker): Moved from WebKit2.
328         (WebCore::PathWalker::isValid): Ditto.
329         (WebCore::PathWalker::data): Ditto.
330         (WebCore::PathWalker::step): Ditto.
331         * platform/win/PathWalker.h: Added.
332
333 2011-03-14  Brady Eidson  <beidson@apple.com>
334
335         Reviewed by Anders Carlsson.
336
337         https://bugs.webkit.org/show_bug.cgi?id=56320
338         Remove HistoryItem::icon() and the WebCore dependency on "IconDatabaseBase::defaultIcon()"
339
340         Remove HistoryItem::icon():
341         * history/HistoryItem.cpp:
342         * history/HistoryItem.h:
343         * WebCore.exp.in:
344
345         * loader/icon/IconDatabaseBase.h:
346         (WebCore::IconDatabaseBase::defaultIcon):
347
348 2011-03-14  Andy Estes  <aestes@apple.com>
349
350         Reviewed by Darin Adler.
351
352         Timer-based events should inherit the user gesture state of their
353         originating event in certain cases.
354         https://bugs.webkit.org/show_bug.cgi?id=55104
355
356         If a timer is installed by a gesture-originated event and will fire
357         within one second, the timer-initiated event should behave as if it
358         were also initiated by a user gesture. Multi-shot timers should only
359         get this behavior on their first execution. Nested timers should not
360         get this behavior. This makes us compatible with Gecko when handling
361         popups and file chooser dialogs created from timer events.
362
363         Test: fast/events/popup-blocking-timers.html
364
365         * page/DOMTimer.cpp:
366         (WebCore::timeoutId): Create a helper function so that m_timeoutId can
367         be initialized in the data member initialization list.
368         (WebCore::shouldForwardUserGesture): Ditto, but for
369         m_shouldForwardUserGesture.
370         (WebCore::DOMTimer::DOMTimer): Move initialization of data members from
371         the ctor body to the data member initialization list. Also rename the
372         argument 'timeout' to 'interval'.
373         (WebCore::DOMTimer::fired): Create a UserGestureIndicator and set its
374         state based on the value of m_shouldForwardUserGesture.
375         (WebCore::DOMTimer::adjustMinimumTimerInterval): m_originalTimeout was
376         renamed to m_originalInterval.
377         * page/DOMTimer.h: Add m_shouldForwardUserGesture and rename
378         m_originalTimeout to m_originalInterval.
379
380 2011-03-09  Levi Weintraub  <leviw@chromium.org>
381
382         Reviewed by Ryosuke Niwa.
383
384         Deleting content directly following a button inserts an unnecessary placeholder
385         https://bugs.webkit.org/show_bug.cgi?id=56053
386
387         Fixing a use of Node's enclosingBlockFlowElement with enclosingBlock htmlediting's
388         enclosingBlock, as enclosingBlockFlowElement would return inline-block elements despite
389         DeleteSelectionCommand treating them as blockflow.
390
391         Test: editing/deleting/delete-inserts-br-after-button.html
392
393         * editing/DeleteSelectionCommand.cpp:
394         (WebCore::DeleteSelectionCommand::mergeParagraphs):
395
396 2011-03-14  David Hyatt  <hyatt@apple.com>
397
398         Reviewed by Dan Bernstein.
399
400         https://bugs.webkit.org/show_bug.cgi?id=45164
401
402         REGRESSION: <a><img align=top></a> Clickable area too large
403         
404         Make sure to clamp hit testing of quirky inline flow boxes the same way we already clamped
405         painting.
406
407         * rendering/InlineFlowBox.cpp:
408         (WebCore::InlineFlowBox::nodeAtPoint):
409
410 2011-03-14  Chris Marrin  <cmarrin@apple.com>
411
412         Reviewed by Adam Roben.
413
414         REGRESSION (r75138-r75503): Animations on Apple HTML5 Gallery demo are wrong
415         https://bugs.webkit.org/show_bug.cgi?id=52845
416
417         The lastCommitTime() value in CACFLayerTreeHost was returning as the time
418         the render previous to this one happened. That often made it seem like
419         animations started more in the past than they did, breaking many animations.
420         The startAnimations() call actually fires from a CACF callback after all the
421         WebKit content has been rendered. So sending currentTime as the start time
422         to the animations is close enough for proper synchronization.
423
424         * platform/graphics/ca/win/CACFLayerTreeHost.cpp:
425         (WebCore::CACFLayerTreeHost::notifyAnimationsStarted):
426
427 2011-03-11  Ryosuke Niwa  <rniwa@webkit.org>
428
429         Reviewed by Tony Chang.
430
431         Selection uses first mousemove's localRect instead of that of mousedown
432         https://bugs.webkit.org/show_bug.cgi?id=56213
433
434         Fixed the bug by adding an extra call to updateSelectionForMouseDrag in handleMouseDraggedEvent
435         using the mouse coordinates of the mousedown event that started the drag.
436
437         Test: editing/selection/drag-select-rapidly.html
438
439         * page/EventHandler.cpp:
440         (WebCore::EventHandler::handleMouseDraggedEvent):
441
442 2011-03-14  Mark Rowe  <mrowe@apple.com>
443
444         Reviewed by Timothy Hatcher.
445
446         Apply a large, blunt object directly to the skull of the Leopard build.
447
448         * Configurations/Base.xcconfig: Disable the generation of debugging symbols when
449         building the Debug configuration on Leopard. This should cut the size of the object
450         files that the linker needs to process by over 85%. This will hopefully allow them
451         to fit in to the 32-bit address space of the Leopard linker.
452
453 2011-03-14  David Hyatt  <hyatt@apple.com>
454
455         Reviewed by Beth Dakin.
456
457         https://bugs.webkit.org/show_bug.cgi?id=56246
458         
459         Add support for relative positioning to table cells.   Back out the code that hacked around the lack of support
460         for offsetLeft, and add new tests to demonstrate that relative positioning works.
461
462         * css/CSSStyleSelector.cpp:
463         (WebCore::CSSStyleSelector::adjustRenderStyle):
464         * rendering/RenderObject.cpp:
465         (WebCore::RenderObject::offsetParent):
466         * rendering/RenderObject.h:
467         (WebCore::RenderObject::isRelPositioned):
468         * rendering/RenderTableCell.h:
469         * rendering/style/RenderStyle.h:
470         * rendering/style/StyleRareNonInheritedData.cpp:
471         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
472         (WebCore::StyleRareNonInheritedData::operator==):
473         * rendering/style/StyleRareNonInheritedData.h:
474
475 2011-03-14  David Hyatt  <hyatt@apple.com>
476
477         Reviewed by Beth Dakin.
478
479         Partial backout of https://bugs.webkit.org/show_bug.cgi?id=56230.  Go back to repainting the root
480         layer, since first layouts and printing mess up otherwise.
481
482         * page/FrameView.cpp:
483         (WebCore::FrameView::layout):
484
485 2011-03-11  David Hyatt  <hyatt@apple.com>
486
487         Reviewed by Simon Fraser.
488
489         Clean up full repainting of layers during layout and at other times.  Platforms that did not do an invalidation on
490         size changes were incorrectly relying on the DoFullRepaint case of RenderLayer::updateLayerPositions to invalidate
491         for them. However this code is now wrong, since it assumed that the outermost layer was a RenderView that encompassed
492         all of the child layers.  This is no longer the case since the overflow changes that tightened up visual overflow
493         and limited that overflow only to content that the layer painted.
494         
495         Eliminate the DoFullRepaint flag and actually make no repainting of any kind happen from the layer code if FrameView's
496         m_doFullRepaint boolean is set.  This will flush out any ports that aren't just invalidating the world on their
497         own in response to view resizes or fixed layout size changes and force them to fix things to be consistent with
498         the other ports.
499         
500         Make the two dynamic calls to updateLayerPositions still do a full repaint by setting the repaint flag on the layer.
501         I'm suspicious as to the correctness of the repainting in both of these cases (both before and after this patch),
502         but the behavior should be the same.
503         
504         No new tests, since this is untestable on ports that invalidate on a resize.
505
506         * page/FrameView.cpp:
507         (WebCore::FrameView::layout):
508         * rendering/RenderBoxModelObject.cpp:
509         (WebCore::RenderBoxModelObject::styleDidChange):
510         * rendering/RenderLayer.cpp:
511         (WebCore::RenderLayer::updateLayerPositions):
512         (WebCore::RenderLayer::removeOnlyThisLayer):
513         * rendering/RenderLayer.h:
514
515 2011-03-11  Oliver Hunt  <oliver@apple.com>
516
517         Reviewed by Gavin Barraclough.
518
519         Ensure all values are correctly tagged in the registerfile
520         https://bugs.webkit.org/show_bug.cgi?id=56214
521
522         Make sure everything builds still.
523
524         * bridge/c/c_class.cpp:
525         * bridge/c/c_runtime.cpp:
526         * bridge/jni/JavaMethod.cpp:
527         * plugins/PluginViewNone.cpp:
528
529 2011-03-14  Luiz Agostini  <luiz.agostini@openbossa.org>
530
531         Unreviewed build fix for r81035.
532
533         * html/HTMLDetailsElement.cpp:
534         (WebCore::HTMLDetailsElement::defaultEventHandler):
535         * rendering/RenderDetailsMarker.cpp:
536         (WebCore::createDownArrowPath):
537         (WebCore::createUpArrowPath):
538         (WebCore::createLeftArrowPath):
539         (WebCore::createRightArrowPath):
540
541 2011-03-13  Jer Noble  <jer.noble@apple.com>
542
543         FullScreen: Handle entering full screen security restrictions
544         https://bugs.webkit.org/show_bug.cgi?id=56264
545
546         Tests: fullscreen/full-screen-iframe-allowed.html
547                fullscreen/full-screen-iframe-not-allowed.html
548
549         Disable full screen documents in the following conditions:
550         1) requesting element is in an iframe which does not have a
551         webkitallowfullscreen attribute.
552         2) page is not processing a user gesture.
553
554         * dom/Document.cpp:
555         (WebCore::Document::fullScreenIsAllowedForElement): Added.  Checks
556             to see if elements contained in IFRAMES are allowed to
557             enter full screen.
558         (WebCore::Document::webkitRequestFullScreenForElement): Checks
559             if page is currently processing a user gesture.
560         * dom/Document.h:
561         * html/HTMLAttributeNames.in: Added webkitallowfullscreenAttr.
562         * html/HTMLFrameElementBase.cpp:
563         (WebCore::HTMLFrameElementBase::allowFullScreen): Added.
564         * html/HTMLFrameElementBase.h:
565
566 2011-03-14  Anton D'Auria  <adauria@apple.com>
567
568         Reviewed by David Levin.
569
570         REGRESSION(r80892): Use of uninitialized variable "m_syncCloseDatabase" in StorageAreaSync::sync
571         https://bugs.webkit.org/show_bug.cgi?id=56303
572
573         Initialized m_syncCloseDatabase to false in the StorageAreaSync constructor.
574
575         * storage/StorageAreaSync.cpp:
576         (WebCore::StorageAreaSync::StorageAreaSync):
577
578 2011-03-14  Steve Block  <steveblock@google.com>
579
580         Reviewed by Oliver Hunt.
581
582         JavaMethod.cpp does not compile with V8
583         https://bugs.webkit.org/show_bug.cgi?id=56306
584
585         Moved the ScopeChain.h include to JavaStringJSC.
586
587         No new tests, build fix only.
588
589         * bridge/jni/JavaMethod.cpp:
590         * bridge/jni/jsc/JavaStringJSC.h
591
592 2011-02-28  Luiz Agostini  <luiz.agostini@openbossa.org>
593
594         Reviewed by Dave Hyatt.
595
596         HTML5 <details> and <summary>: rendering
597         https://bugs.webkit.org/show_bug.cgi?id=51071
598
599         Tests: fast/html/details-add-summary-1-and-click.html
600                fast/html/details-add-summary-1.html
601                fast/html/details-add-summary-10-and-click.html
602                fast/html/details-add-summary-10.html
603                fast/html/details-add-summary-2-and-click.html
604                fast/html/details-add-summary-2.html
605                fast/html/details-add-summary-3-and-click.html
606                fast/html/details-add-summary-3.html
607                fast/html/details-add-summary-4-and-click.html
608                fast/html/details-add-summary-4.html
609                fast/html/details-add-summary-5-and-click.html
610                fast/html/details-add-summary-5.html
611                fast/html/details-add-summary-6-and-click.html
612                fast/html/details-add-summary-6.html
613                fast/html/details-add-summary-7-and-click.html
614                fast/html/details-add-summary-7.html
615                fast/html/details-add-summary-8-and-click.html
616                fast/html/details-add-summary-8.html
617                fast/html/details-add-summary-9-and-click.html
618                fast/html/details-add-summary-9.html
619                fast/html/details-mouse-click.html
620                fast/html/details-no-summary1.html
621                fast/html/details-no-summary2.html
622                fast/html/details-no-summary3.html
623                fast/html/details-no-summary4.html
624                fast/html/details-open-javascript.html
625                fast/html/details-open1.html
626                fast/html/details-open2.html
627                fast/html/details-open3.html
628                fast/html/details-open4.html
629                fast/html/details-open5.html
630                fast/html/details-open6.html
631                fast/html/details-position.html
632                fast/html/details-remove-summary-1-and-click.html
633                fast/html/details-remove-summary-1.html
634                fast/html/details-remove-summary-2-and-click.html
635                fast/html/details-remove-summary-2.html
636                fast/html/details-remove-summary-3-and-click.html
637                fast/html/details-remove-summary-3.html
638                fast/html/details-remove-summary-4-and-click.html
639                fast/html/details-remove-summary-4.html
640                fast/html/details-remove-summary-5-and-click.html
641                fast/html/details-remove-summary-5.html
642                fast/html/details-remove-summary-6-and-click.html
643                fast/html/details-remove-summary-6.html
644                fast/html/details-writing-mode.html
645
646         http://www.w3.org/TR/html5/interactive-elements.html#the-details-element
647
648         The main <summary> element is the first <summary> element of a <details> element.
649         All other childs of the <details> element are rendered only if the attribute 'open' is set.
650         Click event toggles the 'open' attribute.
651
652         * html/HTMLDetailsElement.cpp:
653         (WebCore::HTMLDetailsElement::HTMLDetailsElement):
654         (WebCore::HTMLDetailsElement::findMainSummary):
655         (WebCore::HTMLDetailsElement::childrenChanged):
656         (WebCore::HTMLDetailsElement::finishParsingChildren):
657         (WebCore::HTMLDetailsElement::parseMappedAttribute):
658         (WebCore::HTMLDetailsElement::childShouldCreateRenderer):
659         (WebCore::HTMLDetailsElement::defaultEventHandler):
660         * html/HTMLDetailsElement.h:
661         (WebCore::HTMLDetailsElement::mainSummary):
662
663         Method createRenderer added to class HTMLSummaryElement.
664
665         * html/HTMLSummaryElement.cpp:
666         (WebCore::HTMLSummaryElement::createRenderer):
667         * html/HTMLSummaryElement.h:
668
669         The first <summary> element is positioned at the top of its <details> parent.
670         The area occupied by this main <summary> element is the interactive area of the
671         <details> element. If the <details> tag has no <summary> child an OwnedSummaryRenderer
672         is created and added to the corresponding RenderDetails object.
673
674         * rendering/RenderDetails.cpp:
675         (WebCore::RenderDetails::RenderDetails):
676         (WebCore::RenderDetails::destroy):
677         (WebCore::RenderDetails::summaryBlock):
678         (WebCore::RenderDetails::contentBlock):
679         (WebCore::RenderDetails::addChild):
680         (WebCore::RenderDetails::removeChild):
681         (WebCore::RenderDetails::setMarkerStyle):
682         (WebCore::RenderDetails::styleDidChange):
683         (WebCore::RenderDetails::getRenderPosition):
684         (WebCore::RenderDetails::markerDestroyed):
685         (WebCore::RenderDetails::summaryDestroyed):
686         (WebCore::RenderDetails::moveSummaryToContents):
687         (WebCore::RenderDetails::createSummaryStyle):
688         (WebCore::RenderDetails::replaceMainSummary):
689         (WebCore::RenderDetails::createDefaultSummary):
690         (WebCore::RenderDetails::checkMainSummary):
691         (WebCore::RenderDetails::layout):
692         (WebCore::RenderDetails::isOpen):
693         (WebCore::RenderDetails::getParentOfFirstLineBox):
694         (WebCore::RenderDetails::firstNonMarkerChild):
695         (WebCore::RenderDetails::updateMarkerLocation):
696         * rendering/RenderDetails.h:
697         (WebCore::RenderDetails::interactiveArea):
698         (WebCore::RenderDetails::removeLeftoverAnonymousBlock):
699         (WebCore::RenderDetails::createsAnonymousWrapper):
700         (WebCore::RenderDetails::requiresForcedStyleRecalcPropagation):
701
702         A marker is added to the main <summary> element to indicate the current value of the 'open'
703         attribute of the <details> element.
704
705         * rendering/RenderDetailsMarker.cpp:
706         (WebCore::RenderDetailsMarker::RenderDetailsMarker):
707         (WebCore::RenderDetailsMarker::destroy):
708         (WebCore::RenderDetailsMarker::lineHeight):
709         (WebCore::RenderDetailsMarker::baselinePosition):
710         (WebCore::RenderDetailsMarker::computePreferredLogicalWidths):
711         (WebCore::RenderDetailsMarker::layout):
712         (WebCore::RenderDetailsMarker::getRelativeMarkerRect):
713         (WebCore::RenderDetailsMarker::isOpen):
714         (WebCore::createPath):
715         (WebCore::createDownArrowPath):
716         (WebCore::createUpArrowPath):
717         (WebCore::createLeftArrowPath):
718         (WebCore::createRightArrowPath):
719         (WebCore::RenderDetailsMarker::orientation):
720         (WebCore::RenderDetailsMarker::getCanonicalPath):
721         (WebCore::RenderDetailsMarker::getPath):
722         (WebCore::RenderDetailsMarker::paint):
723         * rendering/RenderDetailsMarker.h:
724         (WebCore::toRenderDetailsMarker):
725
726         * rendering/RenderSummary.cpp:
727         (WebCore::RenderSummary::RenderSummary):
728         (WebCore::RenderSummary::destroy):
729         (WebCore::RenderSummary::parentDetails):
730         (WebCore::RenderSummary::styleDidChange):
731         * rendering/RenderSummary.h:
732
733         * rendering/RenderTreeAsText.cpp:
734         (WebCore::RenderTreeAsText::writeRenderObject):
735
736 2011-03-14  Brady Eidson  <beidson@apple.com>
737
738         Reviewed by Sam Weinig.
739
740         https://bugs.webkit.org/show_bug.cgi?id=56296
741         Clean up IconDatabaseBase header.
742
743         -Get rid of the "PlatformString.h" include and replace it with a forward declaration.
744         -Group methods by which are used in WebCore directly and which are used in WebKit ports.
745
746         This'll make it easier to use in external frameworks (like WebKit2).
747
748         * loader/icon/IconDatabase.h:
749         * loader/icon/IconDatabaseBase.h:
750         (WebCore::IconDatabaseBase::retainIconForPageURL):
751         (WebCore::IconDatabaseBase::releaseIconForPageURL):
752         (WebCore::IconDatabaseBase::iconForPageURL):
753         (WebCore::IconDatabaseBase::setIconURLForPageURL):
754         (WebCore::IconDatabaseBase::setIconDataForIconURL):
755         (WebCore::IconDatabaseBase::iconDataKnownForIconURL):
756         (WebCore::IconDatabaseBase::loadDecisionForIconURL):
757         (WebCore::IconDatabaseBase::importIconURLForPageURL):
758         (WebCore::IconDatabaseBase::importIconDataForIconURL):
759         (WebCore::IconDatabaseBase::open):
760
761 2011-03-14  Sheriff Bot  <webkit.review.bot@gmail.com>
762
763         Unreviewed, rolling out r81026.
764         http://trac.webkit.org/changeset/81026
765         https://bugs.webkit.org/show_bug.cgi?id=56313
766
767         Breaks gtk 64-bit tests (Requested by podivilov on #webkit).
768
769         * inspector/InspectorBrowserDebuggerAgent.cpp:
770         (WebCore::InspectorBrowserDebuggerAgent::InspectorBrowserDebuggerAgent):
771         (WebCore::InspectorBrowserDebuggerAgent::inspectedURLChanged):
772         (WebCore::InspectorBrowserDebuggerAgent::restoreStickyBreakpoint):
773         (WebCore::InspectorBrowserDebuggerAgent::setXHRBreakpoint):
774         (WebCore::InspectorBrowserDebuggerAgent::removeXHRBreakpoint):
775         (WebCore::InspectorBrowserDebuggerAgent::willSendXMLHttpRequest):
776         (WebCore::InspectorBrowserDebuggerAgent::clear):
777         * inspector/InspectorBrowserDebuggerAgent.h:
778         * inspector/front-end/BreakpointManager.js:
779         (WebInspector.BreakpointManager.prototype.createXHRBreakpoint):
780         (WebInspector.BreakpointManager.prototype._createXHRBreakpoint):
781         (WebInspector.BreakpointManager.prototype.breakpointViewForEventData):
782         (WebInspector.BreakpointManager.prototype._projectChanged):
783         (WebInspector.BreakpointManager.prototype._validateBreakpoints):
784         (WebInspector.BreakpointManager.prototype._createEventListenerBreakpointId):
785         (WebInspector.BreakpointManager.prototype._createXHRBreakpointId):
786         (WebInspector.XHRBreakpoint):
787         (WebInspector.XHRBreakpoint.prototype._enable):
788         (WebInspector.XHRBreakpoint.prototype._disable):
789         (WebInspector.XHRBreakpoint.prototype._serializeToJSON):
790         (WebInspector.XHRBreakpointView):
791         (WebInspector.XHRBreakpointView.prototype.compareTo):
792         (WebInspector.XHRBreakpointView.prototype.populateEditElement):
793         (WebInspector.XHRBreakpointView.prototype.populateLabelElement):
794         (WebInspector.XHRBreakpointView.prototype.populateStatusMessageElement):
795         * inspector/front-end/BreakpointsSidebarPane.js:
796         (WebInspector.XHRBreakpointsSidebarPane.addButtonClicked):
797         (WebInspector.XHRBreakpointsSidebarPane):
798         (WebInspector.XHRBreakpointsSidebarPane.prototype.addBreakpointItem):
799         (WebInspector.XHRBreakpointsSidebarPane.prototype._startEditingBreakpoint):
800         (WebInspector.XHRBreakpointsSidebarPane.prototype._hideEditBreakpointDialog):
801         * inspector/front-end/CallStackSidebarPane.js:
802         (WebInspector.CallStackSidebarPane.prototype.update):
803         * inspector/front-end/ScriptsPanel.js:
804         (WebInspector.ScriptsPanel):
805         (WebInspector.ScriptsPanel.prototype._debuggerPaused):
806         (WebInspector.ScriptsPanel.prototype._clearInterface):
807         * inspector/front-end/Settings.js:
808         (WebInspector.Settings):
809         * inspector/front-end/inspector.js:
810         (WebInspector.resetFocusElement):
811         (WebInspector.createXHRBreakpointsSidebarPane.breakpointAdded):
812         (WebInspector.createXHRBreakpointsSidebarPane):
813         (WebInspector.set attached):
814
815 2011-03-14  Mikhail Naganov  <mnaganov@chromium.org>
816
817         Reviewed by Pavel Feldman.
818
819         Web Inspector: Factor out binary search algo from the insertionIndexForObjectInListSortedByFunction function.
820         https://bugs.webkit.org/show_bug.cgi?id=56312
821
822         Test: inspector/utilities.html
823
824         * inspector/front-end/utilities.js:
825
826 2011-03-12  Pavel Podivilov  <podivilov@chromium.org>
827
828         Reviewed by Yury Semikhatsky.
829
830         Web Inspector: re-implement xhr breakpoints.
831         https://bugs.webkit.org/show_bug.cgi?id=56252
832
833         - restore xhr breakpoints one by one instead of using setAllBrowserBreakpoints
834         - store xhr breakpoints in a separate setting
835         - move presentation-related code from BreakpointManager to XHRBreakpointsSidebarPane
836
837         Test: inspector/debugger/xhr-breakpoints.html
838
839         * inspector/InspectorBrowserDebuggerAgent.cpp:
840         (WebCore::InspectorBrowserDebuggerAgent::InspectorBrowserDebuggerAgent):
841         (WebCore::InspectorBrowserDebuggerAgent::inspectedURLChanged):
842         (WebCore::InspectorBrowserDebuggerAgent::restoreStickyBreakpoint):
843         (WebCore::InspectorBrowserDebuggerAgent::setXHRBreakpoint):
844         (WebCore::InspectorBrowserDebuggerAgent::removeXHRBreakpoint):
845         (WebCore::InspectorBrowserDebuggerAgent::willSendXMLHttpRequest):
846         (WebCore::InspectorBrowserDebuggerAgent::clear):
847         * inspector/InspectorBrowserDebuggerAgent.h:
848         * inspector/front-end/BreakpointManager.js:
849         (WebInspector.BreakpointManager.prototype.setXHRBreakpoint):
850         (WebInspector.BreakpointManager.prototype.removeXHRBreakpoint):
851         (WebInspector.BreakpointManager.prototype.breakpointViewForEventData):
852         (WebInspector.BreakpointManager.prototype._projectChanged):
853         (WebInspector.BreakpointManager.prototype._validateBreakpoints):
854         (WebInspector.BreakpointManager.prototype._createEventListenerBreakpointId):
855         * inspector/front-end/BreakpointsSidebarPane.js:
856         (WebInspector.XHRBreakpointsSidebarPane):
857         (WebInspector.XHRBreakpointsSidebarPane.prototype._addButtonClicked.finishEditing):
858         (WebInspector.XHRBreakpointsSidebarPane.prototype._addButtonClicked):
859         (WebInspector.XHRBreakpointsSidebarPane.prototype._setBreakpoint):
860         (WebInspector.XHRBreakpointsSidebarPane.prototype._removeBreakpoint):
861         (WebInspector.XHRBreakpointsSidebarPane.prototype._contextMenu.removeBreakpoint):
862         (WebInspector.XHRBreakpointsSidebarPane.prototype._contextMenu):
863         (WebInspector.XHRBreakpointsSidebarPane.prototype._checkboxClicked):
864         (WebInspector.XHRBreakpointsSidebarPane.prototype._labelClicked.finishEditing):
865         (WebInspector.XHRBreakpointsSidebarPane.prototype._labelClicked):
866         (WebInspector.XHRBreakpointsSidebarPane.prototype.highlightBreakpoint):
867         (WebInspector.XHRBreakpointsSidebarPane.prototype.clearBreakpointHighlight):
868         (WebInspector.XHRBreakpointsSidebarPane.prototype._saveBreakpoints):
869         (WebInspector.XHRBreakpointsSidebarPane.prototype._restoreBreakpoints):
870         (WebInspector.XHRBreakpointsSidebarPane.prototype._projectChanged):
871         * inspector/front-end/CallStackSidebarPane.js:
872         (WebInspector.CallStackSidebarPane.prototype.update):
873         (WebInspector.CallStackSidebarPane.prototype._xhrBreakpointHit):
874         * inspector/front-end/ScriptsPanel.js:
875         (WebInspector.ScriptsPanel):
876         (WebInspector.ScriptsPanel.prototype._debuggerPaused):
877         (WebInspector.ScriptsPanel.prototype._clearInterface):
878         * inspector/front-end/Settings.js:
879         (WebInspector.Settings):
880         * inspector/front-end/inspector.js:
881         (WebInspector.resetFocusElement):
882         (WebInspector.set attached):
883
884 2011-03-14  Pavel Podivilov  <podivilov@chromium.org>
885
886         Reviewed by Pavel Feldman.
887
888         Web Inspector: move breakpoints restoring to debugger presentation model.
889         https://bugs.webkit.org/show_bug.cgi?id=56123
890
891         DebuggerModel's "breakpoint-added" and "breakpoint-removed" events are gone since
892         setBreakpoint/removeBreakpoint are now called from DPM only.
893
894         * inspector/InspectorDebuggerAgent.cpp:
895         (WebCore::InspectorDebuggerAgent::disable):
896         (WebCore::InspectorDebuggerAgent::enableDebuggerAfterShown):
897         * inspector/front-end/DebuggerModel.js:
898         (WebInspector.DebuggerModel.prototype.enableDebugger):
899         (WebInspector.DebuggerModel.prototype._debuggerWasEnabled):
900         (WebInspector.DebuggerModel.prototype._debuggerWasDisabled):
901         (WebInspector.DebuggerModel.prototype.setBreakpoint.didSetBreakpoint):
902         (WebInspector.DebuggerModel.prototype.setBreakpoint):
903         (WebInspector.DebuggerModel.prototype.setBreakpointBySourceId):
904         (WebInspector.DebuggerModel.prototype.removeBreakpoint):
905         (WebInspector.DebuggerModel.prototype._breakpointResolved):
906         (WebInspector.DebuggerModel.prototype.reset):
907         (WebInspector.DebuggerDispatcher.prototype.debuggerWasEnabled):
908         (WebInspector.DebuggerDispatcher.prototype.debuggerWasDisabled):
909         * inspector/front-end/DebuggerPresentationModel.js:
910         (WebInspector.DebuggerPresentationModel):
911         (WebInspector.DebuggerPresentationModel.prototype._debuggerWasEnabled):
912         (WebInspector.DebuggerPresentationModel.prototype._parsedScriptSource):
913         (WebInspector.DebuggerPresentationModel.prototype._failedToParseScriptSource):
914         (WebInspector.DebuggerPresentationModel.prototype._scriptSourceChanged):
915         (WebInspector.DebuggerPresentationModel.prototype.breakpointsForSourceFileId):
916         (WebInspector.DebuggerPresentationModel.prototype.setBreakpoint):
917         (WebInspector.DebuggerPresentationModel.prototype.setBreakpointEnabled):
918         (WebInspector.DebuggerPresentationModel.prototype.updateBreakpoint):
919         (WebInspector.DebuggerPresentationModel.prototype.removeBreakpoint):
920         (WebInspector.DebuggerPresentationModel.prototype.findBreakpoint):
921         (WebInspector.DebuggerPresentationModel.prototype._breakpointAdded):
922         (WebInspector.DebuggerPresentationModel.prototype._breakpointRemoved):
923         (WebInspector.DebuggerPresentationModel.prototype._breakpointResolved):
924         (WebInspector.DebuggerPresentationModel.prototype._restoreBreakpoints):
925         (WebInspector.DebuggerPresentationModel.prototype._saveBreakpoints):
926         (WebInspector.DebuggerPresentationModel.prototype.reset):
927         * inspector/front-end/ScriptsPanel.js:
928         (WebInspector.ScriptsPanel):
929         (WebInspector.ScriptsPanel.prototype._debuggerWasEnabled):
930         (WebInspector.ScriptsPanel.prototype._debuggerWasDisabled):
931
932 2011-03-14  Sheriff Bot  <webkit.review.bot@gmail.com>
933
934         Unreviewed, rolling out r81015.
935         http://trac.webkit.org/changeset/81015
936         https://bugs.webkit.org/show_bug.cgi?id=56308
937
938         A Similar patch landed in r76960 (Requested by philn-tp on
939         #webkit).
940
941         * GNUmakefile.am:
942
943 2011-03-14  Pavel Feldman  <pfeldman@chromium.org>
944
945         Reviewed by Yury Semikhatsky.
946
947         Web Inspector: don't use innerText, use textContent instead.
948         https://bugs.webkit.org/show_bug.cgi?id=56307
949
950         * inspector/front-end/AuditFormatters.js:
951         (WebInspector.AuditFormatters.snippet):
952         * inspector/front-end/ElementsTreeOutline.js:
953         * inspector/front-end/GoToLineDialog.js:
954         * inspector/front-end/HelpScreen.js:
955         (WebInspector.HelpScreen):
956         * inspector/front-end/ShortcutsHelp.js:
957         (WebInspector.ShortcutsSection.prototype.renderSection):
958         (WebInspector.ShortcutsSection.prototype._renderHeader):
959
960 2011-03-14  Andrey Adaikin  <aandrey@google.com>
961
962         Reviewed by Pavel Feldman.
963
964         Web Inspector: [Text editor] Disable live-edit in favor of the text editor
965         https://bugs.webkit.org/show_bug.cgi?id=56176
966
967         * inspector/front-end/Settings.js:
968
969 2011-03-14  Andrey Adaikin  <aandrey@google.com>
970
971         Reviewed by Pavel Feldman.
972
973         Web Inspector: [REGRESSION] scroll does not work in source frame when mouse is inside the gutter
974         https://bugs.webkit.org/show_bug.cgi?id=56095
975
976         * inspector/front-end/TextViewer.js:
977         (WebInspector.TextViewer):
978
979 2011-03-11  Pavel Podivilov  <podivilov@chromium.org>
980
981         Reviewed by Pavel Feldman.
982
983         Web Inspector: move breakpoints restoring after live edit to debugger presentation model.
984         https://bugs.webkit.org/show_bug.cgi?id=56179
985
986         Presentation model should move breakpoints based on text diff as required by "revert to revision" action in resources panel.
987
988         * inspector/front-end/DebuggerModel.js:
989         (WebInspector.DebuggerModel):
990         (WebInspector.DebuggerModel.prototype.setBreakpoint.didSetBreakpoint):
991         (WebInspector.DebuggerModel.prototype.setBreakpoint):
992         (WebInspector.DebuggerModel.prototype.reset):
993         (WebInspector.DebuggerModel.prototype.editScriptSource.didEditScriptSource):
994         (WebInspector.DebuggerModel.prototype.editScriptSource):
995         (WebInspector.DebuggerModel.prototype.get callFrames):
996         (WebInspector.DebuggerModel.prototype._pausedScript):
997         (WebInspector.DebuggerModel.prototype._resumedScript):
998         * inspector/front-end/DebuggerPresentationModel.js:
999         (WebInspector.DebuggerPresentationModel):
1000         (WebInspector.DebuggerPresentationModel.prototype._scriptSourceChanged):
1001         * inspector/front-end/ScriptsPanel.js:
1002         (WebInspector.ScriptsPanel.prototype._scriptSourceChanged):
1003
1004 2011-03-10  Alexander Pavlov  <apavlov@chromium.org>
1005
1006         Reviewed by Pavel Feldman.
1007
1008         Web Inspector: Optimize backend-frontend data transfer volume for CSS styles
1009         https://bugs.webkit.org/show_bug.cgi?id=56111
1010
1011         This change reduces the getStylesForNode() payload more than twice for BODY elements.
1012
1013         * inspector/InspectorStyleSheet.cpp:
1014         (WebCore::InspectorStyle::populateObjectWithStyleProperties):
1015         * inspector/front-end/CSSStyleModel.js:
1016         (WebInspector.CSSProperty.parsePayload):
1017
1018 2011-03-14  John Knottenbelt  <jknotten@chromium.org>
1019
1020         Reviewed by Steve Block.
1021
1022         Detach Geolocation from Frame when Page destroyed.
1023         https://bugs.webkit.org/show_bug.cgi?id=52877
1024
1025         On Page destruction, any outstanding Geolocation permission
1026         requests should be cancelled, because the Geolocation can only
1027         access the client indirectly via m_frame->page().
1028
1029         Page destruction is signalled by a call to the
1030         Frame::pageDestroyed() method. This explictly calls
1031         DOMWindow::resetGeolocation which ultimately calls Geolocation::reset.
1032
1033         Geolocation::reset() detaches from the GeolocationController,
1034         cancels requests, watches and single shots, and sets the
1035         permission state back to Unknown.
1036
1037         Frame::pageDestroyed() is also called by FrameLoader even though
1038         the page is not destroyed. We should still cancel permission
1039         requests, because the GeolocationClient will become inaccessible
1040         to the Geolocation object after this call.
1041
1042         Frame::transferChildFrameToNewDocument also indirectly calls
1043         Geolocation::reset when the frame is reparented between
1044         pages. Ideally we would like the Geolocation's activities to
1045         continue after reparenting, see bug
1046         https://bugs.webkit.org/show_bug.cgi?id=55577
1047
1048         Since GeolocationController is owned by Page, and all Geolocation
1049         objects will now unsubscribe from the GeolocationController on
1050         pageDetached(), we no longer need to call stopUpdating() from the
1051         GeolocationController's destructor. Instead we can simply assert
1052         that there should be no no observers. See related bug
1053         https://bugs.webkit.org/show_bug.cgi?id=52216 .
1054
1055         Introduced new method 'numberOfPendingPermissionRequests' on
1056         GeolocationClientMock to count the number of outstanding pending
1057         permission requests. This provides a reusable implementation for
1058         client-based implementations of the LayoutTestController's
1059         numberOfPendingGeolocationPermissionRequests method.
1060
1061         Test: fast/dom/Geolocation/page-reload-cancel-permission-requests.html
1062
1063         * page/DOMWindow.cpp:
1064         (WebCore::DOMWindow::resetGeolocation):
1065         * page/DOMWindow.h:
1066         * page/Frame.cpp:
1067         (WebCore::Frame::pageDestroyed):
1068         (WebCore::Frame::transferChildFrameToNewDocument):
1069         * page/Geolocation.cpp:
1070         (WebCore::Geolocation::~Geolocation):
1071         (WebCore::Geolocation::page):
1072         (WebCore::Geolocation::reset):
1073         (WebCore::Geolocation::disconnectFrame):
1074         (WebCore::Geolocation::lastPosition):
1075         (WebCore::Geolocation::requestPermission):
1076         (WebCore::Geolocation::startUpdating):
1077         (WebCore::Geolocation::stopUpdating):
1078         * page/Geolocation.h:
1079         * page/GeolocationController.cpp:
1080         (WebCore::GeolocationController::~GeolocationController):
1081         * page/Navigator.cpp:
1082         (WebCore::Navigator::resetGeolocation):
1083         * page/Navigator.h:
1084         * platform/mock/GeolocationClientMock.cpp:
1085         (WebCore::GeolocationClientMock::numberOfPendingPermissionRequests):
1086         * platform/mock/GeolocationClientMock.h:
1087
1088 2011-03-14  Andrey Adaikin  <aandrey@google.com>
1089
1090         Reviewed by Pavel Feldman.
1091
1092         Web Inspector: REGRESSION: Messed up with the tabIndex for text editor
1093         https://bugs.webkit.org/show_bug.cgi?id=56183
1094
1095         * inspector/front-end/SourceFrame.js:
1096         (WebInspector.SourceFrame.prototype._handleKeyDown):
1097         (WebInspector.SourceFrame.prototype._handleSave):
1098         (WebInspector.SourceFrame.prototype._handleRevertEditing):
1099         * inspector/front-end/TextViewer.js:
1100         (WebInspector.TextEditorMainPanel):
1101         (WebInspector.TextEditorMainPanel.prototype.set readOnly):
1102
1103 2011-03-14  Chris Rogers  <crogers@google.com>
1104
1105         Reviewed by Xan Lopez.
1106
1107         Add all web audio auto-generated files to GTK make system
1108         https://bugs.webkit.org/show_bug.cgi?id=50497
1109
1110         No new tests since these are build-system tweaks.
1111
1112         * GNUmakefile.am:
1113
1114 2011-03-14  Pavel Feldman  <pfeldman@chromium.org>
1115
1116         Reviewed by Yury Semikhatsky.
1117
1118         Web Inspector: make DOMAgent event target, remove dependency from ElementsPanel.
1119         https://bugs.webkit.org/show_bug.cgi?id=56268
1120
1121         * inspector/Inspector.idl:
1122         * inspector/InspectorDOMAgent.cpp:
1123         (WebCore::InspectorDOMAgent::reset):
1124         (WebCore::InspectorDOMAgent::performSearch):
1125         (WebCore::InspectorDOMAgent::cancelSearch):
1126         (WebCore::InspectorDOMAgent::onMatchJobsTimer):
1127         (WebCore::InspectorDOMAgent::reportNodesAsSearchResults):
1128         * inspector/InspectorDOMAgent.h:
1129         * inspector/front-end/DOMAgent.js:
1130         (WebInspector.DOMAgent.prototype.requestDocument.mycallback):
1131         (WebInspector.DOMAgent.prototype.requestDocument):
1132         (WebInspector.DOMAgent.prototype._attributesUpdated):
1133         (WebInspector.DOMAgent.prototype._characterDataModified):
1134         (WebInspector.DOMAgent.prototype._documentUpdated):
1135         (WebInspector.DOMAgent.prototype._setDocument):
1136         (WebInspector.DOMAgent.prototype._childNodeCountUpdated):
1137         (WebInspector.DOMAgent.prototype._childNodeInserted):
1138         (WebInspector.DOMAgent.prototype._childNodeRemoved):
1139         (WebInspector.DOMAgent.prototype._removeBreakpoints):
1140         (WebInspector.DOMAgent.prototype.performSearch):
1141         (WebInspector.DOMAgent.prototype.cancelSearch):
1142         (WebInspector.DOMDispatcher.prototype.searchResults):
1143         * inspector/front-end/ElementsPanel.js:
1144         (WebInspector.ElementsPanel):
1145         (WebInspector.ElementsPanel.prototype._reset):
1146         (WebInspector.ElementsPanel.prototype._documentUpdated):
1147         (WebInspector.ElementsPanel.prototype.searchCanceled):
1148         (WebInspector.ElementsPanel.prototype.performSearch):
1149         (WebInspector.ElementsPanel.prototype._addNodesToSearchResult):
1150         (WebInspector.ElementsPanel.prototype._attributesUpdated):
1151         (WebInspector.ElementsPanel.prototype._characterDataModified):
1152         (WebInspector.ElementsPanel.prototype._nodeInserted):
1153         (WebInspector.ElementsPanel.prototype._nodeRemoved):
1154         (WebInspector.ElementsPanel.prototype._childNodeCountUpdated):
1155         (WebInspector.ElementsPanel.prototype.updateModifiedNodes):
1156
1157 2011-03-14  Pavel Feldman  <pfeldman@chromium.org>
1158
1159         Reviewed by Yury Semikhatsky.
1160
1161         Web Inspector: add tests for edit dom operations.
1162         https://bugs.webkit.org/show_bug.cgi?id=56248
1163
1164         Test: inspector/elements/edit-dom-actions.html
1165
1166         * inspector/Inspector.idl:
1167         * inspector/InspectorDOMAgent.cpp:
1168         (WebCore::InspectorDOMAgent::assertNode):
1169         (WebCore::InspectorDOMAgent::assertElement):
1170         (WebCore::InspectorDOMAgent::assertHTMLElement):
1171         (WebCore::InspectorDOMAgent::nodeToSelectOn):
1172         (WebCore::InspectorDOMAgent::querySelector):
1173         (WebCore::InspectorDOMAgent::querySelectorAll):
1174         (WebCore::InspectorDOMAgent::setAttribute):
1175         (WebCore::InspectorDOMAgent::removeAttribute):
1176         (WebCore::InspectorDOMAgent::getOuterHTML):
1177         (WebCore::InspectorDOMAgent::setOuterHTML):
1178         * inspector/InspectorDOMAgent.h:
1179         * inspector/front-end/DOMAgent.js:
1180         (WebInspector.DOMNode.prototype.setAttribute):
1181         (WebInspector.DOMNode.prototype.removeAttribute):
1182         * inspector/front-end/inspector.js:
1183         (WebInspector.startEditing.defaultFinishHandler):
1184
1185 2011-03-14  Brady Eidson  <beidson@apple.com>
1186
1187         Reviewed by Dan Bernstein.
1188
1189         <rdar://problem/8762095> and https://bugs.webkit.org/show_bug.cgi?id=55172
1190         Need WK2 API to view/manage origins with LocalStorage
1191
1192         * storage/StorageTracker.cpp:
1193         (WebCore::StorageTracker::initializeTracker): Make sure the TextEncoding map is initialized on the main thread
1194           before the StorageTracker thread can do it on the background thread.
1195
1196 2011-03-13  Anton D'Auria  <adauria@apple.com>
1197
1198         Reviewed by Brady Eidson and David Levin, landed by Brady Eidson.
1199
1200         Fixed lock-taking order to prevent deadlock, added lock for m_client,
1201         removed premature return in syncImportOriginIdentifiers when tracker
1202         db does not exist because that prevented syncFileSystemAndTrackerDatabase()
1203         from running until next LocalStorage db creation, cleaned up
1204         StorageTracker::scheduleTask() code for readability.
1205         
1206         https://bugs.webkit.org/show_bug.cgi?id=56285
1207         
1208         * storage/StorageTracker.cpp:
1209         (WebCore::StorageTracker::trackerDatabasePath):
1210         (WebCore::StorageTracker::syncImportOriginIdentifiers): If tracker db isn't
1211         optionally opened (as in the case when it doesn't exist on disk), don't
1212         exit early and call syncFileSystemAndTrackerDatabase(), which will create
1213         a tracker db if localstorage db files are found on disk by calling setOriginDetails.
1214         (WebCore::StorageTracker::syncFileSystemAndTrackerDatabase):
1215         (WebCore::StorageTracker::setOriginDetails):
1216         (WebCore::StorageTracker::scheduleTask): readability changes.
1217         (WebCore::StorageTracker::syncSetOriginDetails):
1218         (WebCore::StorageTracker::syncDeleteAllOrigins):
1219         (WebCore::StorageTracker::syncDeleteOrigin):
1220         (WebCore::StorageTracker::cancelDeletingOrigin): order lock-taking consistently to avoid deadlock.
1221         (WebCore::StorageTracker::setClient):
1222         * storage/StorageTracker.h:
1223
1224 2011-03-13  Anton D'Auria  <adauria@apple.com>
1225
1226         Reviewed and landed by Brady Eidson.
1227
1228         Invalid assertion in StorageTracker - PageGroup::numberOfPageGroups() == 1
1229         https://bugs.webkit.org/show_bug.cgi?id=56240
1230
1231         This assertion is invalid until LocalStorage is either global or is isolated by PageGroup.
1232
1233         * storage/StorageTracker.cpp:
1234         (WebCore::StorageTracker::origins):
1235         (WebCore::StorageTracker::deleteAllOrigins):
1236         (WebCore::StorageTracker::deleteOrigin):
1237
1238 2011-03-13  Pratik Solanki  <psolanki@apple.com>
1239
1240         Reviewed by Dan Bernstein.
1241
1242         Make adjustMIMETypeIfNecessary use CFNetwork directly
1243         https://bugs.webkit.org/show_bug.cgi?id=55912
1244
1245         Follow up fix for Layout Test failure. Fix typo - it should be text/plain, not test/plain.
1246
1247         * platform/network/mac/WebCoreURLResponse.mm:
1248         (WebCore::adjustMIMETypeIfNecessary):
1249
1250 2011-03-13  Dan Bernstein  <mitz@apple.com>
1251
1252         Reviewed by Sam Weinig.
1253
1254         Include hyphenation information in text representation of render tree
1255         https://bugs.webkit.org/show_bug.cgi?id=56287
1256
1257         (WebCore::writeTextRun): If the text box is hyphenated, output the hyphenation
1258         string.
1259
1260 2011-03-13  David Levin  <levin@chromium.org>
1261
1262         Improve my hasitly added build fix and added a bug https://bugs.webkit.org/show_bug.cgi?id=56288
1263         above addressing this FIXME.
1264
1265         * css/CSSStyleSelector.cpp:
1266         (WebCore::CSSStyleSelector::applyProperty):
1267
1268 2011-03-13  David Levin  <levin@chromium.org>
1269
1270         Build fix adding remaining enum values to switch statement.
1271
1272         * css/CSSStyleSelector.cpp:
1273         (WebCore::CSSStyleSelector::applyProperty):
1274
1275 2011-03-13  Sam Weinig  <sam@webkit.org>
1276
1277         Fix windows build.
1278
1279         * platform/network/cf/ResourceErrorCF.cpp:
1280         (WebCore::ResourceError::ResourceError):
1281         Add missing constructor.
1282
1283 2011-03-13  David Sosby  <dsosby@rim.com>
1284
1285         Reviewed by Dan Bernstein.
1286
1287         REGRESSION: Soft hyphen is not always rendered
1288         https://bugs.webkit.org/show_bug.cgi?id=56017
1289         
1290         The check to flag a text block as hyphenated was only
1291         occurring at break points in the line. If no break points
1292         were found after the soft hyphen then the line would not
1293         be flagged hyphenated. Adding a check for soft hyphen at
1294         the end of the text run resolves the issue.
1295
1296         Test: fast/text/soft-hyphen-4.html
1297
1298         * rendering/RenderBlockLineLayout.cpp:
1299         (WebCore::RenderBlock::findNextLineBreak):
1300
1301 2011-03-13  Dan Bernstein  <mitz@apple.com>
1302
1303         Reviewed by Mark Rowe.
1304
1305         REGRESSION (r80438): fast/text/hyphenate-character failing in pixel mode
1306         https://bugs.webkit.org/show_bug.cgi?id=56280
1307
1308         * rendering/RenderBlockLineLayout.cpp:
1309         (WebCore::tryHyphenating): Avoid subtracting 1 from an unsigned 0.
1310
1311 2011-03-13  Sam Weinig  <sam@webkit.org>
1312
1313         Reviewed by Anders Carlsson.
1314
1315         Add ability to create a WKErrorRef
1316         <rdar://problem/9115768>
1317         https://bugs.webkit.org/show_bug.cgi?id=56279
1318
1319         * WebCore.exp.in:
1320         Add new exports.
1321
1322         * platform/network/cf/ResourceError.h:
1323         * platform/network/cf/ResourceErrorCF.cpp:
1324         (WebCore::ResourceError::platformCompare):
1325         (WebCore::ResourceError::cfError):
1326         (WebCore::ResourceError::operator CFErrorRef):
1327         (WebCore::ResourceError::ResourceError):
1328         (WebCore::ResourceError::cfStreamError):
1329         (WebCore::ResourceError::operator CFStreamError):
1330         * platform/network/mac/ResourceErrorMac.mm:
1331         (WebCore::ResourceError::ResourceError):
1332         (WebCore::ResourceError::platformCompare):
1333         (WebCore::ResourceError::nsError):
1334         (WebCore::ResourceError::operator NSError *):
1335         (WebCore::ResourceError::cfError):
1336         (WebCore::ResourceError::operator CFErrorRef):
1337         Clean up ResourceError a bit and add ability to create a ResourceError from a CFErrorRef
1338         regardless of whether CFNetwork is being used.
1339
1340 2011-03-13  Pratik Solanki  <psolanki@apple.com>
1341
1342         Reviewed by Brady Eidson.
1343
1344         Make adjustMIMETypeIfNecessary use CFNetwork directly
1345         https://bugs.webkit.org/show_bug.cgi?id=55912
1346
1347         Convert category method [NSURLResponse adjustMIMETypeIfNecessary] to C function
1348         WebCore::adjustMIMETypeIfNecessary() that takes a CFURLResponseRef and is functionally
1349         identical.
1350
1351         Testing is covered by existing LayoutTests.
1352
1353         * WebCore.exp.in:
1354         * platform/mac/WebCoreSystemInterface.h:
1355         * platform/mac/WebCoreSystemInterface.mm:
1356         * platform/network/mac/ResourceHandleMac.mm:
1357         (-[WebCoreResourceHandleAsDelegate connection:didReceiveResponse:]):
1358         * platform/network/mac/WebCoreURLResponse.h:
1359         * platform/network/mac/WebCoreURLResponse.mm:
1360         (WebCore::createBinaryExtensionsSet):
1361         (WebCore::createExtensionToMIMETypeMap):
1362         (WebCore::mimeTypeFromUTITree):
1363         (WebCore::adjustMIMETypeIfNecessary):
1364
1365 2011-03-13  Jeremy Moskovich  <jeremy@chromium.org>
1366
1367         Reviewed by Dimitri Glazkov.
1368
1369         Update comment in CSSValueKeywords.in
1370         https://bugs.webkit.org/show_bug.cgi?id=56266
1371
1372         The enums the comment refers to were moved from RenderStyle.h to RenderStyleConstants.h
1373         in r36579 but it appears that the comment in CSSValueKeywords.in wasn't updated.
1374
1375         No tests - just updating a comment.
1376
1377         * css/CSSValueKeywords.in:
1378
1379 2011-03-13  Anton D'Auria  <adauria@apple.com>
1380
1381         Reviewed by Alice Liu.
1382
1383         StorageTracker constructor shouldn't have initialization code and isMainThread() assertion
1384         https://bugs.webkit.org/show_bug.cgi?id=56259
1385
1386         Move all StorageTracker initialization to
1387         StorageTracker::initializeTracker. This also removes the
1388         requirement that the StorageTracker constructor isn't run
1389         on the main thread.
1390
1391         * storage/StorageTracker.cpp:
1392         (WebCore::StorageTracker::initializeTracker):
1393         (WebCore::StorageTracker::tracker):
1394         (WebCore::StorageTracker::StorageTracker):
1395
1396 2011-03-13  Rob Buis  <rwlbuis@gmail.com>
1397
1398         Reviewed by Dave Hyatt.
1399
1400         REGRESSION (r61383): Navigation menu laid out incorrectly on aboardtheworld.com
1401         https://bugs.webkit.org/show_bug.cgi?id=53470
1402
1403         Prefer !important over normal properties when dealing with duplicate properties in style rules.
1404
1405         Test: fast/css/duplicate-property-in-rule-important.html
1406
1407         * css/CSSMutableStyleDeclaration.cpp:
1408         (WebCore::CSSMutableStyleDeclaration::CSSMutableStyleDeclaration):
1409
1410 2011-03-12  Sheriff Bot  <webkit.review.bot@gmail.com>
1411
1412         Unreviewed, rolling out r80895.
1413         http://trac.webkit.org/changeset/80895
1414         https://bugs.webkit.org/show_bug.cgi?id=56261
1415
1416         Causing crashes in several tests including
1417         t1202-counters-16-c.html (see
1418         http://build.webkit.org/results/SnowLeopard%20Intel%20Leaks/r80956%20(15528)/results.html)
1419         (Requested by dave_levin on #webkit).
1420
1421         * rendering/CounterNode.cpp:
1422         (WebCore::CounterNode::CounterNode):
1423         (WebCore::CounterNode::create):
1424         (WebCore::CounterNode::resetRenderer):
1425         (WebCore::CounterNode::resetRenderers):
1426         (WebCore::CounterNode::recount):
1427         (WebCore::CounterNode::insertAfter):
1428         (WebCore::CounterNode::removeChild):
1429         (WebCore::showTreeAndMark):
1430         * rendering/CounterNode.h:
1431         (WebCore::CounterNode::renderer):
1432         * rendering/RenderCounter.cpp:
1433         (WebCore::findPlaceForCounter):
1434         (WebCore::RenderCounter::~RenderCounter):
1435         (WebCore::RenderCounter::originalText):
1436         (WebCore::RenderCounter::invalidate):
1437         (WebCore::destroyCounterNodeWithoutMapRemoval):
1438         (WebCore::RenderCounter::destroyCounterNodes):
1439         (WebCore::RenderCounter::destroyCounterNode):
1440         (WebCore::updateCounters):
1441         (showCounterRendererTree):
1442         * rendering/RenderCounter.h:
1443         * rendering/RenderObjectChildList.cpp:
1444         (WebCore::invalidateCountersInContainer):
1445         (WebCore::RenderObjectChildList::invalidateCounters):
1446         * rendering/RenderObjectChildList.h:
1447
1448 2011-03-12  Darin Adler  <darin@apple.com>
1449
1450         Reviewed by Dan Bernstein.
1451
1452         REGRESSION (r76474): IntegerArray hash hashes only 1/4 of the array
1453         https://bugs.webkit.org/show_bug.cgi?id=56258
1454
1455         No tests because the wrong hashing is mostly harmless. The only symptom
1456         we have seen is an occasional assertion in debug builds about the size
1457         not being a multiple of two. But a worse hash is worse for performance too.
1458
1459         * platform/cf/BinaryPropertyList.cpp:
1460         (WebCore::IntegerArrayHash::hash): Pass in the size in bytes rather
1461         than the number of array entries.
1462
1463 2011-03-12  Cameron Zwarich  <zwarich@apple.com>
1464
1465         Not reviewed.
1466
1467         Fix the build with newer GCCs and remove some extra whitespae.
1468
1469         * bindings/js/SerializedScriptValue.cpp:
1470         (WebCore::uint8_t):
1471
1472 2011-03-12  Cameron Zwarich  <zwarich@apple.com>
1473
1474         Rubber-stamped by Oliver Hunt.
1475
1476         Removed unused ARMv5 code. The ARMv5 case now falls under the general
1477         unaligned accessed case.
1478
1479         * bindings/js/SerializedScriptValue.cpp:
1480         (WebCore::CloneDeserializer::readLittleEndian):
1481         (WebCore::CloneDeserializer::readString):
1482
1483 2011-03-12  Cameron Zwarich  <zwarich@apple.com>
1484
1485         Reviewed by Oliver Hunt.
1486
1487         WebCore fails to build with Clang on ARM
1488         https://bugs.webkit.org/show_bug.cgi?id=56257
1489
1490         Add an explicit instantiation of writeLittleEndian for uint8_t and move it to
1491         namespace scope, since explicit specializations are not allowed at class scope.
1492
1493         * bindings/js/SerializedScriptValue.cpp:
1494         (WebCore::writeLittleEndian):
1495
1496 2011-03-11  Darin Adler  <darin@apple.com>
1497
1498         Reviewed by Sam Weinig.
1499
1500         Dragging image to desktop gives webloc instead of image file in WebKit2
1501         https://bugs.webkit.org/show_bug.cgi?id=56193
1502
1503         * WebCore.exp.in: Added some additional exports. Re-sorted.
1504
1505 2011-03-12  Sheriff Bot  <webkit.review.bot@gmail.com>
1506
1507         Unreviewed, rolling out r80919.
1508         http://trac.webkit.org/changeset/80919
1509         https://bugs.webkit.org/show_bug.cgi?id=56251
1510
1511         all windows bots failed to compile this change (Requested by
1512         loislo on #webkit).
1513
1514         * bridge/c/c_class.cpp:
1515         * bridge/c/c_runtime.cpp:
1516         * bridge/jni/JavaMethod.cpp:
1517         * plugins/PluginViewNone.cpp:
1518
1519 2011-03-12  Patrick Gansterer  <paroga@webkit.org>
1520
1521         Unreviewed WinCE build fix for r80900.
1522
1523         * CMakeListsWinCE.txt: Removed IconDatabaseNone.cpp.
1524
1525 2011-03-12  Andras Becsi  <abecsi@webkit.org>
1526
1527         Unreviewed typo fix.
1528
1529         No new tests needed.
1530
1531         * WebCore.pro: Fix typo in header name.
1532
1533 2011-03-12  Pavel Feldman  <pfeldman@chromium.org>
1534
1535         Not reviewed: Inspect Element action regression fix.
1536
1537         * inspector/front-end/inspector.js:
1538         (WebInspector.inspect):
1539
1540 2011-03-12  Ilya Tikhonovsky  <loislo@chromium.org>
1541
1542         Unreviewed. One line fix for inspector/dom-breakpoints.html
1543
1544         * inspector/front-end/BreakpointManager.js:
1545         (WebInspector.DOMBreakpointView.prototype.populateStatusMessageElement.decorateNode):
1546
1547 2011-03-12  Ilya Tikhonovsky  <loislo@chromium.org>
1548
1549         Unreviewed build fix.
1550
1551         Almost all inspector tests are crashing after r80928.
1552
1553         * inspector/front-end/inspector.js:
1554
1555 2011-03-11  Pavel Feldman  <pfeldman@chromium.org>
1556
1557         Reviewed by Yury Semikhatsky.
1558
1559         Web Inspector: follow up to error reporting, fixing multiple regressions.
1560         https://bugs.webkit.org/show_bug.cgi?id=56243
1561
1562         * inspector/InjectedScript.cpp:
1563         (WebCore::InjectedScript::setPropertyValue):
1564         * inspector/InjectedScript.h:
1565         * inspector/Inspector.idl:
1566         * inspector/InspectorDOMAgent.cpp:
1567         (WebCore::InspectorDOMAgent::getChildNodes):
1568         (WebCore::InspectorDOMAgent::getOuterHTML):
1569         (WebCore::InspectorDOMAgent::getEventListenersForNode):
1570         * inspector/InspectorDOMAgent.h:
1571         * inspector/InspectorRuntimeAgent.cpp:
1572         (WebCore::InspectorRuntimeAgent::setPropertyValue):
1573         * inspector/InspectorRuntimeAgent.h:
1574         * inspector/front-end/DOMAgent.js:
1575         (WebInspector.DOMNode.prototype.setNodeName):
1576         (WebInspector.DOMNode.prototype.setNodeValue):
1577         (WebInspector.DOMNode.prototype.getChildNodes):
1578         (WebInspector.DOMNode.prototype.getOuterHTML):
1579         (WebInspector.DOMNode.prototype.setOuterHTML):
1580         (WebInspector.DOMNode.prototype.removeNode):
1581         (WebInspector.DOMNode.prototype.copyNode):
1582         (WebInspector.DOMAgent.prototype.pushNodeToFrontend):
1583         (WebInspector.DOMAgent.prototype.pushNodeByPathToFrontend):
1584         (WebInspector.EventListeners.getEventListenersForNode):
1585         * inspector/front-end/DOMStorage.js:
1586         (WebInspector.DOMStorage.prototype.getEntries):
1587         (WebInspector.DOMStorage.prototype.setItem):
1588         (WebInspector.DOMStorage.prototype.removeItem):
1589         * inspector/front-end/DOMStorageItemsView.js:
1590         (WebInspector.DOMStorageItemsView.prototype.update):
1591         (WebInspector.DOMStorageItemsView.prototype._showDOMStorageEntries):
1592         * inspector/front-end/ElementsTreeOutline.js:
1593         (WebInspector.ElementsTreeElement.prototype._createTooltipForNode.setTooltip):
1594         (WebInspector.ElementsTreeElement.prototype.updateChildren):
1595         ():
1596         * inspector/front-end/EventListenersSidebarPane.js:
1597         (WebInspector.EventListenersSidebarPane.prototype.update.callback):
1598         (WebInspector.EventListenersSidebarPane.prototype.update):
1599         * inspector/front-end/ObjectPropertiesSection.js:
1600         (WebInspector.ObjectPropertyTreeElement.prototype.applyExpression.callback):
1601         (WebInspector.ObjectPropertyTreeElement.prototype.applyExpression):
1602         * inspector/front-end/PropertiesSidebarPane.js:
1603         (WebInspector.PropertiesSidebarPane.prototype.update.nodeResolved):
1604         * inspector/front-end/RemoteObject.js:
1605         (WebInspector.RemoteObject.prototype.setPropertyValue):
1606         (WebInspector.RemoteObject.prototype.evaluate):
1607         * inspector/front-end/inspector.js:
1608
1609 2011-03-12  Jer Noble  <jer.noble@apple.com>
1610
1611         Unreviewed build fix.
1612
1613         Fix GTK+ builds by wrapping sections of full screen code in USE(ACCELERATED_COMPOSITING)
1614         checks.
1615
1616         * dom/Document.cpp:
1617         (WebCore::Document::webkitWillEnterFullScreenForElement):
1618         (WebCore::Document::webkitDidEnterFullScreenForElement):
1619         (WebCore::Document::webkitWillExitFullScreenForElement):
1620         (WebCore::Document::webkitDidExitFullScreenForElement):
1621
1622 2011-03-12  Ryuan Choi  <ryuan.choi@samsung.com>
1623
1624         Unreviewed build fix.
1625
1626         [EFL] Fix build break because of several reason.
1627         https://bugs.webkit.org/show_bug.cgi?id=56244
1628
1629         * CMakeLists.txt: Add missing files.
1630         * platform/posix/FileSystemPOSIX.cpp: Add PLATFORM(EFL).
1631
1632 2011-03-11  Yury Semikhatsky  <yurys@chromium.org>
1633
1634         Reviewed by Pavel Feldman.
1635
1636         Web Inspector: move profiler related methods from inspector agent to profiler agent
1637         https://bugs.webkit.org/show_bug.cgi?id=56204
1638
1639         * inspector/Inspector.idl:
1640         * inspector/InspectorAgent.cpp:
1641         (WebCore::InspectorAgent::InspectorAgent):
1642         (WebCore::InspectorAgent::restoreInspectorStateFromCookie):
1643         (WebCore::InspectorAgent::setFrontend):
1644         (WebCore::InspectorAgent::disconnectFrontend):
1645         (WebCore::InspectorAgent::populateScriptObjects):
1646         (WebCore::InspectorAgent::showProfilesPanel):
1647         * inspector/InspectorAgent.h:
1648         * inspector/InspectorController.cpp:
1649         (WebCore::InspectorController::enableProfiler):
1650         (WebCore::InspectorController::disableProfiler):
1651         (WebCore::InspectorController::profilerEnabled):
1652         (WebCore::InspectorController::startUserInitiatedProfiling):
1653         (WebCore::InspectorController::stopUserInitiatedProfiling):
1654         (WebCore::InspectorController::isRecordingUserInitiatedProfile):
1655         * inspector/InspectorInstrumentation.cpp:
1656         (WebCore::InspectorInstrumentation::profilerEnabledImpl):
1657         * inspector/InspectorProfilerAgent.cpp:
1658         (WebCore::InspectorProfilerAgent::create):
1659         (WebCore::InspectorProfilerAgent::InspectorProfilerAgent):
1660         (WebCore::InspectorProfilerAgent::enable):
1661         (WebCore::InspectorProfilerAgent::disable):
1662         (WebCore::InspectorProfilerAgent::setFrontend):
1663         (WebCore::InspectorProfilerAgent::clearFrontend):
1664         (WebCore::InspectorProfilerAgent::restore):
1665         (WebCore::InspectorProfilerAgent::restoreEnablement):
1666         (WebCore::InspectorProfilerAgent::startUserInitiatedProfiling):
1667         (WebCore::InspectorProfilerAgent::stopUserInitiatedProfiling):
1668         * inspector/InspectorProfilerAgent.h:
1669         (WebCore::InspectorProfilerAgent::start):
1670         (WebCore::InspectorProfilerAgent::stop):
1671         * inspector/front-end/ProfileView.js:
1672         (WebInspector.CPUProfileType.prototype.buttonClicked):
1673         * inspector/front-end/ProfilesPanel.js:
1674         (WebInspector.ProfilesPanel):
1675         (WebInspector.ProfilesPanel.prototype._registerProfileType):
1676         (WebInspector.ProfilesPanel.prototype._toggleProfiling):
1677         * inspector/front-end/inspector.js:
1678         (WebInspector._createPanels):
1679
1680 2011-03-11  Jer Noble  <jer.noble@apple.com>
1681
1682         Reviewed by Anders Carlsson.
1683
1684         WebCore::Document should notify ChromeClient when the full screen renderer's backing changes.
1685         https://bugs.webkit.org/show_bug.cgi?id=56226
1686
1687         * dom/Document.cpp:
1688         (WebCore::Document::webkitWillEnterFullScreenForElement): Call setRootFullScreenLayer().
1689         (WebCore::Document::webkitDidEnterFullScreenForElement): Ditto.
1690         (WebCore::Document::webkitWillExitFullScreenForElement): Ditto.
1691         (WebCore::Document::webkitDidExitFullScreenForElement): Ditto.
1692         (WebCore::Document::setFullScreenRendererSize): Layout after setting the renderer's size.
1693
1694 2011-03-11  Jer Noble  <jer.noble@apple.com>
1695
1696         Reviewed by Anders Carlsson.
1697
1698         Create new interface stubs to support full screen mode in WebKit2.
1699
1700         WebKit2: Plumb new full screen animation APIs through WebKit2.
1701         https://bugs.webkit.org/show_bug.cgi?id=55993
1702
1703         * page/ChromeClient.h:
1704         (WebCore::ChromeClient::setRootFullScreenLayer): Added.
1705
1706 2011-03-11  Oliver Hunt  <oliver@apple.com>
1707
1708         Reviewed by Gavin Barraclough.
1709
1710         Ensure all values are correctly tagged in the registerfile
1711         https://bugs.webkit.org/show_bug.cgi?id=56214
1712
1713         Make sure everything builds still.
1714
1715         * bridge/c/c_class.cpp:
1716         * bridge/c/c_runtime.cpp:
1717         * bridge/jni/JavaMethod.cpp:
1718         * plugins/PluginViewNone.cpp:
1719
1720 2011-03-11  Mark Rowe  <mrowe@apple.com>
1721
1722         Fix the 32-bit build.
1723
1724         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
1725         (WebCore::MediaPlayerPrivateAVFoundation::MediaPlayerPrivateAVFoundation):
1726
1727 2011-03-11  Mark Rowe  <mrowe@apple.com>
1728
1729         Rubber-stamped by Eric Carlsson.
1730
1731         <rdar://problem/9124537> Crashes during layout tests due to overrelease of AVFoundation objects.
1732
1733         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationObjC.mm:
1734         (WebCore::MediaPlayerPrivateAVFoundationObjC::createContextVideoRenderer):
1735         (WebCore::MediaPlayerPrivateAVFoundationObjC::setAsset):
1736
1737 2011-03-11  Chris Marrin  <cmarrin@apple.com>
1738
1739         Unreviewed.
1740
1741         Fixes an error with the checkin for https://bugs.webkit.org/show_bug.cgi?id=52468
1742
1743         * platform/graphics/ca/GraphicsLayerCA.cpp:
1744         (WebCore::GraphicsLayerCA::createTransformAnimationsFromKeyframes):
1745
1746 2011-03-11  Brady Eidson  <beidson@apple.com>
1747
1748         Attempted Qt build fix for https://bugs.webkit.org/show_bug.cgi?id=56216
1749
1750         * loader/icon/IconDatabase.h: Make this guy public.
1751
1752 2011-03-11  Brady Eidson  <beidson@apple.com>
1753
1754         Attempted Qt build fix for https://bugs.webkit.org/show_bug.cgi?id=56216
1755
1756         * loader/icon/IconDatabase.h:
1757         (WebCore::IconDatabase::delayDatabaseCleanup): Maybe Qt has Icon Database disabled, so we need to define this here?
1758
1759 2011-03-11  Brady Eidson  <beidson@apple.com>
1760
1761         https://bugs.webkit.org/show_bug.cgi?id=56216
1762         Fix the Qt build following the same pattern of the patch.
1763
1764         * loader/icon/IconDatabase.h:
1765         * loader/icon/IconDatabaseBase.cpp:
1766         (WebCore::IconDatabaseBase::databasePath): Added to the virtual base.
1767         * loader/icon/IconDatabaseBase.h:
1768         (WebCore::IconDatabaseBase::isOpen): Ditto.
1769
1770 2011-03-11  Ben Taylor  <bentaylor.solx86@gmail.com>
1771
1772         Reviewed by Alexey Proskuryakov.
1773
1774         https://bugs.webkit.org/show_bug.cgi?id=56198
1775         Fix conditional which had an int for one case and a pointer for another.
1776
1777         No new tests. Fix compilation on Solaris 10 with SunStudio 12 C++
1778
1779         * loader/appcache/ApplicationCacheGroup.cpp:
1780         (WebCore::ApplicationCacheGroup::checkIfLoadIsComplete):
1781
1782 2011-03-11  Brady Eidson  <beidson@apple.com>
1783
1784         Windows build fix.
1785
1786         * history/HistoryItem.cpp:
1787         * loader/icon/IconDatabaseBase.cpp:
1788
1789 2011-03-11  Brady Eidson  <beidson@apple.com>
1790
1791         Reviewed by Sam Weinig.
1792
1793         <rdar://problem/8648311> and https://bugs.webkit.org/show_bug.cgi?id=56216
1794         Rework disabled IconDatabase builds while allowing for a pluggable icon database implementation.
1795
1796         Project file stuff:
1797         * Android.mk:
1798         * CMakeLists.txt:
1799         * GNUmakefile.am:
1800         * WebCore.gyp/WebCore.gyp:
1801         * WebCore.gypi:
1802         * WebCore.pro:
1803         * WebCore.xcodeproj/project.pbxproj:
1804         * WebCore.vcproj/WebCore.vcproj:
1805
1806         * loader/icon/IconDatabase.cpp:
1807         * loader/icon/IconDatabase.h: Inherit from IconDatabaseBase.
1808
1809         * loader/icon/IconDatabaseBase.cpp: Added.
1810         (WebCore::IconDatabaseBase::iconURLForPageURL):
1811         (WebCore::iconDatabase):
1812         (WebCore::setGlobalIconDatabase):
1813         * loader/icon/IconDatabaseBase.h: Added.
1814         (WebCore::IconDatabaseBase::IconDatabaseBase):
1815         (WebCore::IconDatabaseBase::~IconDatabaseBase):
1816         (WebCore::IconDatabaseBase::setEnabled):
1817         (WebCore::IconDatabaseBase::isEnabled):
1818         (WebCore::IconDatabaseBase::defaultIcon):
1819         (WebCore::IconDatabaseBase::retainIconForPageURL):
1820         (WebCore::IconDatabaseBase::releaseIconForPageURL):
1821         (WebCore::IconDatabaseBase::iconForPageURL):
1822         (WebCore::IconDatabaseBase::setIconURLForPageURL):
1823         (WebCore::IconDatabaseBase::setIconDataForIconURL):
1824         (WebCore::IconDatabaseBase::iconDataKnownForIconURL):
1825         (WebCore::IconDatabaseBase::loadDecisionForIconURL):
1826         (WebCore::IconDatabaseBase::pageURLMappingCount):
1827         (WebCore::IconDatabaseBase::retainedPageURLCount):
1828         (WebCore::IconDatabaseBase::iconRecordCount):
1829         (WebCore::IconDatabaseBase::iconRecordCountWithData):
1830         (WebCore::IconDatabaseBase::importIconURLForPageURL):
1831         (WebCore::IconDatabaseBase::importIconDataForIconURL):
1832         (WebCore::IconDatabaseBase::shouldStopThreadActivity):
1833         (WebCore::IconDatabaseBase::open):
1834         (WebCore::IconDatabaseBase::close):
1835         (WebCore::IconDatabaseBase::removeAllIcons):
1836         (WebCore::IconDatabaseBase::setPrivateBrowsingEnabled):
1837         (WebCore::IconDatabaseBase::setClient):
1838
1839         * loader/icon/IconDatabaseNone.cpp: Removed.
1840
1841 2011-03-11  Brady Eidson  <beidson@apple.com>
1842
1843         Attempt at a build-fix for https://bugs.webkit.org/show_bug.cgi?id=51878
1844
1845         * page/PageGroup.h: Declare this method, even if the definition will end up being empty.
1846
1847 2011-03-11  Michael Nordman  <michaeln@google.com>
1848
1849         Reviewed by Dmitry Titov.
1850
1851         Adding the '~' to the dtor (duh).
1852
1853         No new tests.
1854
1855         * storage/SQLCallbackWrapper.h:
1856         (WebCore::SQLCallbackWrapper::~SQLCallbackWrapper):
1857
1858 2011-03-11  Carol Szabo  <carol.szabo@nokia.com>
1859
1860         Reviewed by David Hyatt.
1861
1862         Introduced double linkage between a CounterNode and its display renderer.
1863
1864         use of freed pointer in WebCore::RenderCounter::originalText()
1865         https://bugs.webkit.org/show_bug.cgi?id=56065
1866
1867         No new tests. This bug could only be reproduced manually by
1868         refreshing the page during load at a critical point.
1869         See bug attachment for testing.
1870
1871         * rendering/CounterNode.cpp:
1872         Introduced new member "m_owner" to store the renderer that has the
1873         style directives that produce the CounterNode.
1874         Repurposed m_renderer to reffer to the RenderCounter that shows the
1875         CounterNode.
1876         (WebCore::CounterNode::CounterNode):
1877         Updated member initialization.
1878         (WebCore::CounterNode::create):
1879         (WebCore::CounterNode::resetRenderer):
1880         (WebCore::CounterNode::resetRenderers):
1881         (WebCore::CounterNode::recount):
1882         (WebCore::CounterNode::removeChild):
1883         (WebCore::CounterNode::insertAfter):
1884         No functional changes.
1885         (WebCore::showTreeAndMark):
1886         Added flushing to ensure that the output is complete.
1887         * rendering/CounterNode.h:
1888         (WebCore::CounterNode::owner):
1889         Renamed from renderer()
1890         (WebCore::CounterNode::renderer):
1891         (WebCore::CounterNode::setRenderer):
1892         Added new accessors for the display renderer.
1893         * rendering/RenderCounter.cpp:
1894         (WebCore::findPlaceForCounter):
1895         Fixed comments. No functional changes.
1896         (WebCore::RenderCounter::~RenderCounter):
1897         Made sure that the CounterNode that this renderers displays is
1898         detached from this.
1899         (WebCore::RenderCounter::originalText):
1900         (WebCore::RenderCounter::invalidate):
1901         Added code to update m_renderer on the displayed CounterNode.
1902         (WebCore::destroyCounterNodeWithoutMapRemoval):
1903         (WebCore::RenderCounter::destroyCounterNodes):
1904         (WebCore::RenderCounter::destroyCounterNode):
1905         (WebCore::updateCounters):
1906         No change, just kept code in line with the changes above.
1907         (showCounterRendererTree):
1908         Added fflush to ensure complete display.
1909         * rendering/RenderCounter.h:
1910         * rendering/RenderObjectChildList.cpp:
1911         * rendering/RenderObjectChildList.h:
1912         Removed unneeded invalidateCounters related functions.
1913
1914 2011-03-11  Luke Macpherson   <macpherson@chromium.org>
1915
1916         Reviewed by Eric Seidel.
1917
1918         Introduce lookup-table based approach for applying CSS properties.
1919         The aim is to be a starting point for refactoring
1920         CSSStyleSelector::applyProperty() into more readable, maintainable code.
1921         https://bugs.webkit.org/show_bug.cgi?id=54707
1922
1923         No new behavior / covered by existing tests.
1924
1925         * css/CSSStyleApplyProperty.cpp: Added.
1926         (WebCore::ApplyPropertyNull):
1927         Class that provides empty implementations of inherit, initial, value.
1928         (WebCore::ApplyPropertyDefault::ApplyPropertyDefault):
1929         Class that calls the appropriate RenderStyle setters directly.
1930         (WebCore::ApplyPropertyColorBase::ApplyPropertyColorBase):
1931         Class for handling CSSProperty*Color.
1932         (WebCore::ApplyPropertyColor::ApplyPropertyColor):
1933         Class for handling CSSPropertyColor.
1934         (WebCore::CSSStyleApplyProperty::sharedCSSStyleApplyProperty):
1935         Singleton initializer.
1936         (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
1937         Constructor that bulds up the map from property id to apply-er objects.
1938         * css/CSSStyleApplyProperty.h: Added.
1939         (WebCore::CSSStyleApplyProperty::inherit):
1940         Handle the inherit case for a given property.
1941         (WebCore::CSSStyleApplyProperty::initial):
1942         Handle the initial case for a given property.
1943         (WebCore::CSSStyleApplyProperty::value):
1944         Apply a value to a given property.
1945         (WebCore::CSSStyleApplyProperty::implements):
1946         Returns true if the provided property id is implemented.
1947         (WebCore::CSSStyleApplyProperty::index):
1948         Private function to determine the index of a property the property map.
1949         (WebCore::CSSStyleApplyProperty::valid):
1950         Function to determine that a given property id is valid.
1951         (WebCore::CSSStyleApplyProperty::setPropertyValue):
1952         (WebCore::CSSStyleApplyProperty::propertyValue):
1953         * css/CSSStyleSelector.cpp:
1954         (WebCore::CSSStyleSelector::CSSStyleSelector):
1955         Get reference to the CSSStyleApplyProperty singleton.
1956         (WebCore::CSSStyleSelector::applyProperty):
1957         Now calls into CSSStyleApplyProperty for implemented property ids.
1958         Deleted color-related methods from the property id switch.
1959         * css/CSSStyleSelector.h:
1960         (WebCore::CSSStyleSelector::style):
1961         Made public to allow access from CSSStyleApplyProperty.
1962         (WebCore::CSSStyleSelector::parentStyle):
1963         Made public to allow access from CSSStyleApplyProperty.
1964         * rendering/style/RenderStyle.h:
1965         Made CSSStyleApplyProperty a friend class. Necessary because it needs
1966         to access the private getters and setters on this clsass.
1967
1968 2011-03-11  Anton D'Auria  <adauria@apple.com>
1969
1970         Reviewed and landed by Brady Eidson.
1971
1972         Add WebKit1 API to view and delete local storage
1973         https://bugs.webkit.org/show_bug.cgi?id=51878
1974
1975         Created StorageTracker as a central point for tracking and deleting LocalStorage per origin.
1976         StorageTracker maintains its own database of origin identifiers and backing db paths,
1977         and this allows it to contain more relational data in the future, like variable quotas per origin.
1978
1979         On initialization, StorageTracker syncs its database with LocalStorage files on disk. It adds
1980         an origin entry when StorageAreaSync performs a first sync for an origin.
1981
1982         All StorageTracker file operations are performed on one background thread with a task queue.
1983
1984         Tests: storage/domstorage/localstorage/storagetracker/storage-tracker-1-prepare.html
1985                storage/domstorage/localstorage/storagetracker/storage-tracker-2-create.html
1986                storage/domstorage/localstorage/storagetracker/storage-tracker-3-delete-all.html
1987                storage/domstorage/localstorage/storagetracker/storage-tracker-4-create.html
1988                storage/domstorage/localstorage/storagetracker/storage-tracker-5-delete-one.html
1989
1990         * GNUmakefile.am:
1991         * WebCore.exp.in:
1992         * WebCore.gypi:
1993         * WebCore.pro:
1994         * WebCore.vcproj/WebCore.vcproj:
1995         * WebCore.xcodeproj/project.pbxproj:
1996         * page/PageGroup.cpp:
1997         (WebCore::PageGroup::clearLocalStorageForAllOrigins):
1998         (WebCore::PageGroup::clearLocalStorageForOrigin):
1999         (WebCore::PageGroup::syncLocalStorage):
2000         (WebCore::PageGroup::numberOfPageGroups):
2001         * page/PageGroup.h:
2002         * platform/chromium/FileSystemChromium.cpp:
2003         (WebCore::listDirectory):
2004         * platform/posix/FileSystemPOSIX.cpp:
2005         (WebCore::listDirectory):
2006         * storage/LocalStorageTask.cpp:
2007         (WebCore::LocalStorageTask::LocalStorageTask):
2008         (WebCore::LocalStorageTask::performTask):
2009         * storage/LocalStorageTask.h:
2010         (WebCore::LocalStorageTask::createOriginIdentifiersImport):
2011         (WebCore::LocalStorageTask::createSetOriginDetails):
2012         (WebCore::LocalStorageTask::createDeleteOrigin):
2013         (WebCore::LocalStorageTask::createDeleteAllOrigins):
2014         * storage/StorageAreaImpl.cpp:
2015         (WebCore::StorageAreaImpl::clearForOriginDeletion):
2016         (WebCore::StorageAreaImpl::sync):
2017         * storage/StorageAreaImpl.h:
2018         * storage/StorageAreaSync.cpp:
2019         (WebCore::StorageAreaSync::scheduleCloseDatabase):
2020         (WebCore::StorageAreaSync::openDatabase):
2021         (WebCore::StorageAreaSync::sync):
2022         (WebCore::StorageAreaSync::deleteEmptyDatabase):
2023         (WebCore::StorageAreaSync::scheduleSync):
2024         * storage/StorageAreaSync.h:
2025         * storage/StorageNamespace.h:
2026         * storage/StorageNamespaceImpl.cpp:
2027         (WebCore::StorageNamespaceImpl::clearOriginForDeletion):
2028         (WebCore::StorageNamespaceImpl::clearAllOriginsForDeletion):
2029         (WebCore::StorageNamespaceImpl::sync):
2030         * storage/StorageNamespaceImpl.h:
2031         * storage/StorageTracker.cpp: Added.
2032         (WebCore::StorageTracker::initializeTracker):
2033         (WebCore::StorageTracker::tracker):
2034         (WebCore::StorageTracker::StorageTracker):
2035         (WebCore::StorageTracker::setStorageDirectoryPath):
2036         (WebCore::StorageTracker::trackerDatabasePath):
2037         (WebCore::StorageTracker::openTrackerDatabase):
2038         (WebCore::StorageTracker::importOriginIdentifiers):
2039         (WebCore::StorageTracker::syncImportOriginIdentifiers):
2040         (WebCore::StorageTracker::syncFileSystemAndTrackerDatabase):
2041         (WebCore::StorageTracker::setOriginDetails):
2042         (WebCore::StorageTracker::scheduleTask):
2043         (WebCore::StorageTracker::syncSetOriginDetails):
2044         (WebCore::StorageTracker::origins):
2045         (WebCore::StorageTracker::deleteAllOrigins):
2046         (WebCore::StorageTracker::syncDeleteAllOrigins):
2047         (WebCore::StorageTracker::deleteOrigin):
2048         (WebCore::StorageTracker::syncDeleteOrigin):
2049         (WebCore::StorageTracker::willDeleteAllOrigins):
2050         (WebCore::StorageTracker::willDeleteOrigin):
2051         (WebCore::StorageTracker::canDeleteOrigin):
2052         (WebCore::StorageTracker::cancelDeletingOrigin):
2053         (WebCore::StorageTracker::setClient):
2054         (WebCore::StorageTracker::syncLocalStorage):
2055         * storage/StorageTracker.h: Added.
2056         * storage/StorageTrackerClient.h: Added.
2057         (WebCore::StorageTrackerClient::~StorageTrackerClient):
2058
2059 2011-03-11  Steve Block  <steveblock@google.com>
2060
2061         Reviewed by Jeremy Orlow.
2062
2063         JavaMethod does not correctly check for a null jstring for the method name
2064         https://bugs.webkit.org/show_bug.cgi?id=56187
2065
2066         No new tests, simple typo fix.
2067
2068         * bridge/jni/JavaMethod.cpp:
2069         (JavaMethod::JavaMethod):
2070
2071 2011-03-11  Adrienne Walker  <enne@google.com>
2072
2073         Reviewed by James Robinson.
2074
2075         [chromium] Compositor uses too much texture memory for scrollbars
2076         https://bugs.webkit.org/show_bug.cgi?id=56212
2077
2078         Compositor invalidations can be off the page (and very large), but
2079         scrollbars only need to care about the invalidation that's visible.
2080         The large invalidation was causing the tiler layer size to grow
2081         needlessly larger than the scrollbar.
2082
2083         * platform/graphics/chromium/LayerRendererChromium.cpp:
2084         (WebCore::LayerRendererChromium::invalidateRootLayerRect):
2085
2086 2011-03-11  David Hyatt  <hyatt@apple.com>
2087
2088         Reviewed by Simon Fraser.
2089
2090         https://bugs.webkit.org/show_bug.cgi?id=52987
2091         
2092         REGRESSION: Overflowing columns not repainted correctly
2093         
2094         Make sure to add in column overflow as visual overflow as well.  It was only propagating layout overflow, which is obviously not
2095         sufficient, since blocks paint their own columns.
2096
2097         Added fast/multicol/scrolling-overflow.html
2098
2099         * rendering/RenderBlock.cpp:
2100         (WebCore::RenderBlock::addOverflowFromChildren):
2101
2102 2011-03-11  Matthew Delaney  <mdelaney@apple.com>
2103
2104         Reviewed by Simon Fraser.
2105
2106         Set canvasUsesAcceleratedDrawing setting to be off(false) by default
2107         https://bugs.webkit.org/show_bug.cgi?id=56215
2108
2109         No new tests. Does not affect behavior. Just keeping the setting off by default.
2110
2111         * page/Settings.cpp:
2112         (WebCore::Settings::Settings):
2113
2114 2011-03-11  Andy Estes  <aestes@apple.com>
2115
2116         Reviewed by David Hyatt.
2117
2118         Table cells with dynamically added percentage height descendants do not
2119         grow in size if the table has already been laid out.
2120         https://bugs.webkit.org/show_bug.cgi?id=56174
2121         
2122         Table cells ignore their specified size and collapse to fit their
2123         children. When a descendent with percentage height is present before
2124         the table is first laid out, the descendent is sized based on the
2125         specified size of the table cell. However, when the child isn't present
2126         when the table is first laid out, the table cell ignores its specified
2127         size and collapses down to 0. Then, when the child div is added in a
2128         separate run loop iteration, it is sized to be 100% of the collapsed
2129         cell height instead of 100% of the cell's specified height. We should
2130         not get different layouts depending on the timing of tree construction.
2131         
2132         Fix this by clearing intrinsic padding before calculating the table
2133         cell's override height when we detect a child that should flex the
2134         table cell.
2135
2136         Test: fast/table/dynamic-descendant-percentage-height.html
2137
2138         * rendering/RenderTableCell.cpp:
2139         (WebCore::RenderTableCell::setOverrideSizeFromRowHeight): clear
2140         intrinsic padding before setting the override size.
2141         * rendering/RenderTableCell.h:
2142         * rendering/RenderTableSection.cpp:
2143         (WebCore::RenderTableSection::layoutRows): Call
2144         setOverrideSizeFromRowHeight() instead of setOverrideSize().
2145
2146 2011-03-11  Michael Nordman  <michaeln@google.com>
2147
2148         Reviewed by David Levin.
2149
2150         Add SQLCallbackWrapper
2151         Instead of directly holding RefPtrs to the Callback objects in SQLStatement and SQLTransaction, hold a wrapper objects
2152         which holds those references whose dtors will schedule the release of those references on the ScriptExecution thread.
2153         https://bugs.webkit.org/show_bug.cgi?id=55919
2154
2155         No new tests, existing tests apply.
2156
2157         * GNUmakefile.am:
2158         * WebCore.gypi:
2159         * WebCore.pro:
2160         * WebCore.vcproj/WebCore.vcproj:
2161         * WebCore.xcodeproj/project.pbxproj:
2162         * storage/SQLCallbackWrapper.h: Added.
2163         (WebCore::SQLCallbackWrapper::SQLCallbackWrapper):
2164         (WebCore::SQLCallbackWrapper::clear):
2165         (WebCore::SQLCallbackWrapper::unwrap):
2166         (WebCore::SQLCallbackWrapper::hasCallback):
2167         (WebCore::SQLCallbackWrapper::safeRelease):
2168         * storage/SQLStatement.cpp:
2169         (WebCore::SQLStatement::create):
2170         (WebCore::SQLStatement::SQLStatement):
2171         (WebCore::SQLStatement::performCallback):
2172         * storage/SQLStatement.h:
2173         (WebCore::SQLStatement::hasStatementCallback):
2174         (WebCore::SQLStatement::hasStatementErrorCallback):
2175         * storage/SQLTransaction.cpp:
2176         (WebCore::SQLTransaction::SQLTransaction):
2177         (WebCore::SQLTransaction::executeSQL):
2178         (WebCore::SQLTransaction::checkAndHandleClosedOrInterruptedDatabase):
2179         (WebCore::SQLTransaction::deliverTransactionCallback):
2180         (WebCore::SQLTransaction::deliverStatementCallback):
2181         (WebCore::SQLTransaction::postflightAndCommit):
2182         (WebCore::SQLTransaction::deliverSuccessCallback):
2183         (WebCore::SQLTransaction::handleTransactionError):
2184         (WebCore::SQLTransaction::deliverTransactionErrorCallback):
2185         * storage/SQLTransaction.h:
2186
2187 2011-03-11  Eric Carlson  <eric.carlson@apple.com>
2188
2189         Reviewed by Sam Weinig.
2190
2191         <rdar://problem/8955589> Adopt AVFoundation media back end on Lion.
2192
2193         No new tests, existing media tests cover this.
2194
2195         * WebCore.xcodeproj/project.pbxproj:
2196         * platform/graphics/MediaPlayer.cpp:
2197         (WebCore::installedMediaEngines): Register MediaPlayerPrivateAVFoundationObjC.
2198         (WebCore::bestMediaEngineForTypeAndCodecs): Kill some whitespace.
2199         (WebCore::MediaPlayer::loadWithNextMediaEngine): Ditto.
2200         (WebCore::MediaPlayer::inMediaDocument): Ditto.
2201         * platform/graphics/MediaPlayer.h:
2202
2203         * platform/graphics/avfoundation: Added.
2204         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp: Added.
2205         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h: Added.
2206
2207         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationObjC.h: Added.
2208         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationObjC.mm: Added.
2209
2210 2011-03-11  Dean Jackson  <dino@apple.com>
2211
2212         Reviewed by Simon Fraser.
2213
2214         https://bugs.webkit.org/show_bug.cgi?id=56205
2215         m_restrictions needs to allow multiple values (a bitfield)
2216
2217         HTMLMediaElement::m_restrictions needs to hold multiple values, so
2218         change BehaviorRestrictions to an unsigned typedef and rename the
2219         existing enum BehaviorRestrictionFlags.
2220
2221         * html/HTMLMediaElement.h:
2222         (WebCore::HTMLMediaElement::setBehaviorRestrictions):
2223
2224 2011-03-11  David Hyatt  <hyatt@apple.com>
2225
2226         Reviewed by Dan Bernstein.
2227
2228         https://bugs.webkit.org/show_bug.cgi?id=47206
2229         
2230         Table rows don't support ::before/::after.  Add support to RenderTableRow::styleDidChange so that ::before/::after content gets
2231         properly constructed.
2232
2233         Added fast/css-generated-content/table-row-before-after.html
2234
2235         * rendering/RenderTableRow.cpp:
2236         (WebCore::RenderTableRow::styleDidChange):
2237         * rendering/RenderTableRow.h:
2238
2239 2011-03-11  James Robinson  <jamesr@chromium.org>
2240
2241         Reviewed by Kenneth Russell.
2242
2243         [chromium] Avoid updating a composited layer&apos;s contents if the layer has nonpositive dimensions
2244         https://bugs.webkit.org/show_bug.cgi?id=56209
2245
2246         This matches the behavior prior to r80482.  No test since the only changes in
2247         behavior are avoiding work on invisible layers, which is unobservable,
2248         and fixing a crash due to bug 56153.
2249
2250         * platform/graphics/chromium/LayerRendererChromium.cpp:
2251         (WebCore::LayerRendererChromium::updateContentsRecursive):
2252
2253 2011-03-11  David Hyatt  <hyatt@apple.com>
2254
2255         Reviewed by Simon Fraser.
2256
2257         https://bugs.webkit.org/show_bug.cgi?id=47159
2258         
2259         CSS2.1 failures in background position parsing.
2260         
2261         Rewrite background position component parsing to match the spec.  Our old parsing would allow "100% left" to be valid
2262         when it should not have.  Rename parseFillPositionXY to parseFillPositionComponent and pass in enough information for
2263         it to understand what the first component was.
2264         
2265         For individual property parsing using background-position-x/y, I added new functions that just handle that without
2266         worrying about the other component.
2267         
2268         In order to pass the CSS2.1 test, I also had to fix multiple background parsing.  The number of layers in multiple
2269         backgrounds is determined solely by the background-image property and not by any of the other properties.  cullEmptyLayers
2270         has been changed to always consider a layer empty if it has no image set, even if other properties are set.
2271         
2272         A number of layout tests had to be patched as they were invalid.  A couple of them relied on incorrect background-position
2273         parsing (e.g., "50 left") and another relied on incorrect multiple background parsing.  It's not clear if the computed style
2274         should actually include the additional values when no image is set though, so that should perhaps be the subject of a 
2275         follow-up bug.
2276
2277         Added fast/backgrounds/background-position-parsing.html
2278
2279         * css/CSSParser.cpp:
2280         (WebCore::CSSParser::parseFillPositionX):
2281         (WebCore::CSSParser::parseFillPositionY):
2282         (WebCore::CSSParser::parseFillPositionComponent):
2283         (WebCore::CSSParser::parseFillPosition):
2284         (WebCore::CSSParser::parseFillProperty):
2285         (WebCore::CSSParser::parseTransformOrigin):
2286         (WebCore::CSSParser::parsePerspectiveOrigin):
2287         * css/CSSParser.h:
2288         * rendering/style/FillLayer.cpp:
2289         (WebCore::FillLayer::fillUnsetProperties):
2290         (WebCore::FillLayer::cullEmptyLayers):
2291
2292 2011-03-11  Vangelis Kokkevis  <vangelis@chromium.org>
2293
2294         Reviewed by James Robinson.
2295
2296         [chromium] Allow large layers with non-identity transforms to be drawn
2297         as long as their visible portion is smaller than the largest supported
2298         texture size. This code will soon be replaced by tiled layers.
2299         https://bugs.webkit.org/show_bug.cgi?id=55984
2300
2301         Test: platform/chromium/compositing/huge-layer-rotated.html
2302
2303         * platform/graphics/chromium/ContentLayerChromium.cpp:
2304         (WebCore::ContentLayerChromium::updateContentsIfDirty):
2305         (WebCore::ContentLayerChromium::draw):
2306         * platform/graphics/chromium/ContentLayerChromium.h:
2307
2308 2011-03-09  Chris Marrin  <cmarrin@apple.com>
2309
2310         Reviewed by Adam Roben.
2311
2312         REGRESSION (5.0.3-ToT): Scrolling text doesn&apos;t scroll in Star Wars intro animation
2313         https://bugs.webkit.org/show_bug.cgi?id=52468
2314
2315         Added WIN32 to the ifdef controlling whether animations are applied in normal or
2316         reverse order. On Mac, animations used to be applied in reverse, but 
2317         <rdar://problem/7095638> fixed this in the release after Snow Leopard.
2318         But that patch has not be applied to the Safari Windows SDK yet. For now
2319         I've made Windows use the reverse order logig. <rdar://problem/9112233> is
2320         tracking the inclusion of the patch on Windows.
2321
2322         * platform/graphics/ca/GraphicsLayerCA.cpp:
2323         (WebCore::GraphicsLayerCA::createTransformAnimationsFromKeyframes):
2324
2325 2011-03-11  Tony Gentilcore  <tonyg@chromium.org>
2326
2327         Reviewed by Eric Seidel.
2328
2329         Let the parser yield for layout before running scripts
2330         https://bugs.webkit.org/show_bug.cgi?id=54355
2331
2332         Prior to this patch, the parser would yield to perform a layout/paint before running a
2333         script only if the script or a stylesheet blocking the script is not loaded yet. Since we
2334         don't preload scan into the body while parsing the head, typically we'll block on a script
2335         early in the body that causes us to yield to do the first paint within a reasonable time.
2336
2337         However, I'm planning to change the PreloadScanner to scan into the body from the head.
2338         That significantly improves overall load time, but would hurt first paint time because
2339         fewer scripts would be blocked during parsing and thus wouldn't yield.
2340
2341         This change causes us to yield before running scripts if we haven't painted yet (regardless
2342         of whether or not the script is loaded). In addition to allowing the above mentioned
2343         PreloadScanner change to be implemented without regressing first paint time, this also
2344         improves first paint time by itself.
2345
2346         I tested Alexa's top 45 websites using Web Page Replay to control the content and simulate
2347         bandwidth. This patch improved average first paint time by 1% over an unlimited connection,
2348         6% over a 1Mbps connection and 11% over a 5Mbps connection. There was no statistically
2349         signifcant change in page load time.
2350
2351         Within the pages tested, 33 had no statistically significant change in time to first paint,
2352         12 improved, and none regressed. Of the improved, some of the standouts from the 1Mbps set
2353         are: 20% on youtube, 37% on wiki, 27% on ebay, 13% on cnn, 16% on espn, 74% on sohu.
2354
2355         * html/parser/HTMLDocumentParser.cpp:
2356         (WebCore::HTMLDocumentParser::canTakeNextToken): This is the new yield point.
2357         (WebCore::HTMLDocumentParser::pumpTokenizer): Remove ASSERT that we are not paused. isPaused
2358         means that we are waiting for a script. Bug 54574 changed pumpTokenizer() so that it does
2359         the right thing whether we are just before a token or waiting for a script. Now that we may
2360         yield before a token or before a script, this may be called while paused.
2361         * html/parser/HTMLParserScheduler.cpp:
2362         (WebCore::HTMLParserScheduler::checkForYieldBeforeScript): Added.
2363         * page/FrameView.h:
2364         (WebCore::FrameView::hasEverPainted): Added.
2365
2366 2011-03-11  Dimitri Glazkov  <dglazkov@chromium.org>
2367
2368         Fix crashes in dom/html/level2/html/HTMLInputElement*.
2369
2370         * css/CSSStyleSelector.cpp:
2371         (WebCore::CSSStyleSelector::adjustRenderStyle): Added a null-check for e,
2372             because e can certainly be a null.
2373
2374 2011-03-09  Dimitri Glazkov  <dglazkov@chromium.org>
2375
2376         Reviewed by David Hyatt.
2377
2378         Choke text-decoration when entering shadow DOM subtree.
2379         https://bugs.webkit.org/show_bug.cgi?id=56044
2380
2381         No new tests, because the functionality can't be tested yet.
2382
2383         * css/CSSStyleSelector.cpp:
2384         (WebCore::CSSStyleSelector::adjustRenderStyle): Added a check for shadow DOM root.
2385
2386 2011-03-08  Dimitri Glazkov  <dglazkov@chromium.org>
2387
2388         Reviewed by Eric Carlson.
2389
2390         Convert MediaControlTimeDisplayElement to use standard layout with a custom renderer.
2391         https://bugs.webkit.org/show_bug.cgi?id=55972
2392
2393         Instead of poking at the time display elements all the way from RenderMedia,
2394         let the standard layout cycle take care of things. Move the logic of calculating
2395         when to collapse the time display elements into a custom renderer, since
2396         this is not something that can be accomplished with CSS.
2397
2398         Also, the logic of keeping the timeline slider at least 100px needed refreshing,
2399         since it didn't actually keep it at 100px.
2400
2401         * html/shadow/MediaControls.cpp: Moved the logic of determining visibility
2402             of time display elements to RenderMediaControlTimeDisplay, eliminating
2403             updateTimeDisplayVisibility method.
2404         * html/shadow/MediaControls.h: Removed decl.
2405         * rendering/MediaControlElements.cpp:
2406         (WebCore::RenderMediaControlTimeDisplay::RenderMediaControlTimeDisplay):
2407             Added new renderer class.
2408         (WebCore::RenderMediaControlTimeDisplay::layout): Simplified (and corrected)
2409             size-sensing logic, still using hard-coded values.
2410         (WebCore::MediaControlTimeDisplayElement::MediaControlTimeDisplayElement):
2411             Removed m_isVisible member, which is no longer necessary.
2412         (WebCore::MediaControlTimeDisplayElement::createRenderer): Added to
2413             return the new renderer.
2414         * rendering/MediaControlElements.h: Adjusted decls.
2415         * rendering/RenderMedia.cpp:
2416         (WebCore::RenderMedia::layout): Remove the now-unnecessary poking at
2417             media controls in layout.
2418
2419 2011-03-09  Dimitri Glazkov  <dglazkov@chromium.org>
2420
2421         Reviewed by Eric Carlson.
2422
2423         Start focusing updates to media controls, away from always updating everything.
2424         https://bugs.webkit.org/show_bug.cgi?id=56038
2425
2426         For now, the new methods just call generic MediaControls::update.
2427
2428         Covered by existing tests.
2429
2430         * html/HTMLMediaElement.cpp:
2431         (WebCore::HTMLMediaElement::attributeChanged): Changed to use MediaControls::reset.
2432         (WebCore::HTMLMediaElement::setMuted): Changed to use MediaControls::changedMute.
2433         (WebCore::HTMLMediaElement::updateVolume): Changed to use MediaControls::changedVolume.
2434         (WebCore::HTMLMediaElement::defaultEventHandler): Changed to use the new mediaControls
2435             accessor.
2436         (WebCore::HTMLMediaElement::setClosedCaptionsVisible): Changed to use
2437             MediaControls::changedClosedCaptionsVisibility.
2438         (WebCore::HTMLMediaElement::mediaControls): Added.
2439         (WebCore::HTMLMediaElement::hasMediaControls): Added.
2440         * html/HTMLMediaElement.h: Added decls.
2441         * html/shadow/MediaControls.cpp:
2442         (WebCore::MediaControls::reset): Added.
2443         (WebCore::MediaControls::changedMute): Added.
2444         (WebCore::MediaControls::changedVolume): Added.
2445         (WebCore::MediaControls::changedClosedCaptionsVisibility): Added.
2446         * html/shadow/MediaControls.h: Added decls.
2447
2448 2011-03-11  Alexis Menard  <alexis.menard@openbossa.org>
2449
2450         Reviewed by Martin Robinson.
2451
2452         [GStreamer] When seeking webKitWebSrcStop release the frame but should not.
2453         https://bugs.webkit.org/show_bug.cgi?id=55703
2454
2455         When calling webKitWebSrcStop in case of a seeking, the frame should not
2456         be reset (the source hasn't change). The frame may be used to get the network
2457         context. Some network stack (like Qt) are relaying on the network context
2458         to work.
2459
2460         * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
2461         (webKitWebSrcStop):
2462
2463 2011-03-11  Dean Jackson  <dino@apple.com>
2464
2465         Unreviewed.
2466
2467         Build fixes for GTK and Leopard.
2468
2469         * bindings/gobject/GNUmakefile.am:
2470         - add missing WebKitAnimation* generated bindings
2471         * page/WebKitAnimation.idl:
2472         - use double in place of float (the core values are double anyway)
2473
2474 2011-03-11  Dean Jackson  <dino@apple.com>
2475
2476         Unreviewed build fix for QT.
2477
2478         * WebCore.pro:
2479
2480 2011-03-11  Dean Jackson  <dino@apple.com>
2481
2482         Reviewed by Simon Fraser and Chris Marrin.
2483
2484         https://bugs.webkit.org/show_bug.cgi?id=54151
2485         Implement an API to play/pause/scrub animations
2486
2487         This is Part 1. Adds the new WebKitAnimation and WebKitAnimationList
2488         APIs, exposed via Element.getWebKitAnimations(). This first pass
2489         is a read-only API - a subsequent commit will add the ability
2490         to scrub animations.
2491
2492         Test: animations/animation-api-1.html
2493
2494         * Android.derived.jscbindings.mk:
2495         * Android.derived.v8bindings.mk:
2496         * Android.mk:
2497         * Android.v8bindings.mk:
2498         * CMakeLists.txt:
2499         * CodeGenerators.pri:
2500         * DerivedSources.cpp:
2501         * DerivedSources.make:
2502         * GNUmakefile.am:
2503         * WebCore.gypi:
2504         * WebCore.pro:
2505         * WebCore.vcproj/WebCore.vcproj:
2506         * WebCore.xcodeproj/project.pbxproj:
2507         - All build settings updated for new files
2508         * bindings/js/JSBindingsAllInOne.cpp:
2509         - Include new custom files
2510         * bindings/js/JSWebKitAnimationCustom.cpp: Added.
2511         (WebCore::JSWebKitAnimation::iterationCount):
2512         - Custom property getter so that we can return INFINITY
2513         * bindings/js/JSWebKitAnimationListCustom.cpp: Added.
2514         (WebCore::JSWebKitAnimationList::markChildren):
2515         - Make sure WebKitAnimations are marked
2516         * bindings/v8/custom/V8WebKitAnimationCustom.cpp: Added.
2517         (WebCore::V8WebkitAnimation::iterationCountAccessorGetter):
2518         - Custom property getter so that we can return INFINITY
2519         * dom/Element.cpp:
2520         (WebCore::Element::webkitGetAnimations):
2521         * dom/Element.h:
2522         * dom/Element.idl:
2523         - New API entry point
2524         * page/DOMWindow.idl:
2525         - Constructor definitions for WebKitAnimation and WebKitAnimationList
2526         * page/animation/AnimationBase.cpp:
2527         (WebCore::AnimationBase::~AnimationBase):
2528         - Since AnimationBase can now live longer (if a WebKitAnimation is
2529         held in Javascript) we need to guard for the renderer having disappeared.
2530         (WebCore::AnimationBase::setElapsedTime):
2531         (WebCore::AnimationBase::play):
2532         (WebCore::AnimationBase::pause):
2533         - Stub implementations at present
2534         * page/animation/AnimationBase.h:
2535         (WebCore::AnimationBase::animation):
2536         - Expose the Animation properties
2537         * page/animation/AnimationController.cpp:
2538         (WebCore::AnimationControllerPrivate::animationsForRenderer):
2539         (WebCore::AnimationController::animationsForRenderer):
2540         - Builds the list of WebKitAnimations
2541         * page/animation/AnimationController.h:
2542         * page/animation/AnimationControllerPrivate.h:
2543         * page/animation/CompositeAnimation.cpp:
2544         (WebCore::CompositeAnimation::updateKeyframeAnimations):
2545         - Make sure we clear the renderer if we are removing the animation
2546         (WebCore::CompositeAnimation::animations):
2547         * page/animation/CompositeAnimation.h:
2548         * page/WebKitAnimation.cpp: Added.
2549         (WebCore::WebKitAnimation::WebKitAnimation):
2550         (WebCore::WebKitAnimation::name):
2551         (WebCore::WebKitAnimation::duration):
2552         (WebCore::WebKitAnimation::elapsedTime):
2553         (WebCore::WebKitAnimation::setElapsedTime):
2554         (WebCore::WebKitAnimation::delay):
2555         (WebCore::WebKitAnimation::iterationCount):
2556         (WebCore::WebKitAnimation::paused):
2557         (WebCore::WebKitAnimation::ended):
2558         (WebCore::WebKitAnimation::direction):
2559         (WebCore::WebKitAnimation::fillMode):
2560         (WebCore::WebKitAnimation::pause):
2561         (WebCore::WebKitAnimation::play):
2562         - The implementation of the new API. All the read-only parts are
2563         done, but elapsedTime, play() and pause() are stubs.
2564         * page/WebKitAnimation.h: Added.
2565         (WebCore::WebKitAnimation::create):
2566         (WebCore::WebKitAnimation::~WebKitAnimation):
2567         * page/WebKitAnimation.idl: Added.
2568         * page/WebKitAnimationList.cpp: Added.
2569         * page/WebKitAnimationList.h: Added.
2570         * page/WebKitAnimationList.idl: Added.
2571         - Copies NodeList implementation
2572
2573 2011-03-11  Ilya Tikhonovsky  <loislo@chromium.org>
2574
2575         Reviewed by Yury Semikhatsky.
2576
2577         Web Inspector: introduce error argument for all the callbacks on frontend.
2578         https://bugs.webkit.org/show_bug.cgi?id=56100
2579
2580         * inspector/CodeGeneratorInspector.pm:
2581         * inspector/front-end/AuditRules.js:
2582         (WebInspector.AuditRules.evaluateInTargetWindow):
2583         (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.allStylesCallback):
2584         (WebInspector.AuditRules.UnusedCssRule.prototype.doRun):
2585         (WebInspector.AuditRules.ImageDimensionsRule.prototype.doRun.getStyles):
2586         (WebInspector.AuditRules.ImageDimensionsRule.prototype.doRun):
2587         * inspector/front-end/CSSStyleModel.js:
2588         (WebInspector.CSSStyleModel.prototype.getStylesAsync):
2589         (WebInspector.CSSStyleModel.prototype.getComputedStyleAsync):
2590         (WebInspector.CSSStyleModel.prototype.getInlineStyleAsync):
2591         (WebInspector.CSSStyleModel.prototype.setRuleSelector):
2592         (WebInspector.CSSStyleModel.prototype.setRuleSelector.callback):
2593         (WebInspector.CSSStyleModel.prototype.addRule):
2594         (WebInspector.CSSStyleModel.prototype.addRule.callback):
2595         (WebInspector.CSSStyleModel.prototype._styleSheetChanged.callback):
2596         (WebInspector.CSSStyleModel.prototype._styleSheetChanged):
2597         (WebInspector.CSSStyleModel.prototype._onRevert):
2598         (WebInspector.CSSStyleDeclaration.prototype.insertPropertyAt):
2599         (WebInspector.CSSProperty.prototype.setText.callback):
2600         (WebInspector.CSSProperty.prototype.setText):
2601         (WebInspector.CSSProperty.prototype.setDisabled.callback):
2602         (WebInspector.CSSProperty.prototype.setDisabled):
2603         (WebInspector.CSSStyleSheet.createForId):
2604         (WebInspector.CSSStyleSheet.prototype.setText):
2605         * inspector/front-end/ConsoleView.js:
2606         (WebInspector.ConsoleView.prototype.evalInInspectedWindow):
2607         * inspector/front-end/DOMAgent.js:
2608         (WebInspector.DOMNode.prototype.setNodeName):
2609         (WebInspector.DOMNode.prototype.setNodeValue):
2610         (WebInspector.DOMNode.prototype.setAttribute):
2611         (WebInspector.DOMNode.prototype.removeAttribute):
2612         (WebInspector.DOMNode.prototype.childNodes.mycallback):
2613         (WebInspector.DOMNode.prototype.childNodes):
2614         (WebInspector.DOMNode.prototype.outerHTML):
2615         (WebInspector.DOMNode.prototype.setOuterHTML):
2616         (WebInspector.DOMNode.prototype.removeNode):
2617         (WebInspector.DOMNode.prototype.copyNode):
2618         (WebInspector.DOMAgent.prototype.pushNodeToFrontend):
2619         (WebInspector.DOMAgent.prototype.pushNodeByPathToFrontend):
2620         (WebInspector.DOMAgent.prototype._documentUpdated):
2621         (WebInspector.ApplicationCacheDispatcher.getApplicationCachesAsync):
2622         (WebInspector.Cookies.getCookiesAsync):
2623         (WebInspector.EventListeners.getEventListenersForNodeAsync):
2624         * inspector/front-end/DOMStorage.js:
2625         (WebInspector.DOMStorage.prototype.getEntries):
2626         (WebInspector.DOMStorage.prototype.setItem):
2627         (WebInspector.DOMStorage.prototype.removeItem):
2628         * inspector/front-end/Database.js:
2629         (WebInspector.Database.prototype.getTableNames):
2630         (WebInspector.Database.prototype.executeSql):
2631         * inspector/front-end/DebuggerModel.js:
2632         (WebInspector.DebuggerModel.prototype.setBreakpoint.didSetBreakpoint):
2633         (WebInspector.DebuggerModel.prototype.setBreakpoint):
2634         (WebInspector.DebuggerModel.prototype.setBreakpointBySourceId):
2635         (WebInspector.DebuggerModel.prototype.editScriptSource):
2636         * inspector/front-end/ElementsPanel.js:
2637         (WebInspector.ElementsPanel.prototype._setSearchingForNode):
2638         * inspector/front-end/ElementsTreeOutline.js:
2639         (WebInspector.ElementsTreeElement.prototype._createTooltipForNode.resolvedNode):
2640         (WebInspector.ElementsTreeElement.prototype._createTooltipForNode):
2641         (WebInspector.ElementsTreeElement.prototype._tagNameEditingCommitted.changeTagNameCallback):
2642         (WebInspector.ElementsTreeElement.prototype._tagNameEditingCommitted):
2643         ():
2644         * inspector/front-end/ExtensionPanel.js:
2645         (WebInspector.ExtensionWatchSidebarPane.prototype._onEvaluate):
2646         * inspector/front-end/ExtensionServer.js:
2647         (WebInspector.ExtensionServer.prototype._onEvaluateOnInspectedPage):
2648         * inspector/front-end/NetworkManager.js:
2649         (WebInspector.NetworkManager.prototype.requestContent):
2650         (WebInspector.NetworkManager.prototype._processCachedResources):
2651         * inspector/front-end/ProfileView.js:
2652         (WebInspector.CPUProfileView.profileCallback):
2653         (WebInspector.CPUProfileView):
2654         * inspector/front-end/ProfilesPanel.js:
2655         * inspector/front-end/RemoteObject.js:
2656         (WebInspector.RemoteObject.resolveNode):
2657         (WebInspector.RemoteObject.prototype.getProperties.remoteObjectBinder):
2658         (WebInspector.RemoteObject.prototype.getProperties):
2659         (WebInspector.RemoteObject.prototype.setPropertyValue):
2660         (WebInspector.RemoteObject.prototype.evaluate):
2661         * inspector/front-end/Script.js:
2662         (WebInspector.Script.prototype.requestSource.didGetScriptSource):
2663         (WebInspector.Script.prototype.requestSource):
2664         * inspector/front-end/ScriptsPanel.js:
2665         (WebInspector.ScriptsPanel.prototype.evaluateInSelectedCallFrame.updatingCallbackWrapper):
2666         (WebInspector.ScriptsPanel.prototype.evaluateInSelectedCallFrame):
2667         (WebInspector.ScriptsPanel.prototype._setPauseOnExceptions):
2668         * inspector/front-end/inspector.js:
2669         ():
2670         (WebInspector.doLoadedDone.onPopulateScriptObjects):
2671         (WebInspector.doLoadedDone.propertyNamesCallback):
2672         (WebInspector.doLoadedDone):
2673
2674 2011-03-11  Yury Semikhatsky  <yurys@chromium.org>
2675
2676         Reviewed by Pavel Feldman.
2677
2678         Web Inspector: split InjectedScriptHost into InjectedScriptManager and InjectedScriptHost
2679         https://bugs.webkit.org/show_bug.cgi?id=56173
2680
2681         Moved all injected script managing logic into InjectedScriptManager which is owned by InspectorController.
2682
2683         * CMakeLists.txt:
2684         * GNUmakefile.am:
2685         * WebCore.gypi:
2686         * WebCore.pro:
2687         * WebCore.vcproj/WebCore.vcproj:
2688         * WebCore.xcodeproj/project.pbxproj:
2689         * bindings/js/JSInjectedScriptHostCustom.cpp:
2690         * bindings/js/JSInjectedScriptManager.cpp: Added.
2691         (WebCore::InjectedScriptManager::createInjectedScript):
2692         (WebCore::InjectedScriptManager::discardInjectedScript):
2693         (WebCore::InjectedScriptManager::injectedScriptFor):
2694         (WebCore::InjectedScriptManager::canAccessInspectedWindow):
2695         * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
2696         * bindings/v8/custom/V8InjectedScriptManager.cpp: Copied from Source/WebCore/bindings/v8/custom/V8InjectedScriptHostCustom.cpp.
2697         (WebCore::WeakReferenceCallback):
2698         (WebCore::createInjectedScriptHostV8Wrapper):
2699         (WebCore::InjectedScriptManager::createInjectedScript):
2700         (WebCore::InjectedScriptManager::discardInjectedScript):
2701         (WebCore::InjectedScriptManager::injectedScriptFor):
2702         (WebCore::InjectedScriptManager::canAccessInspectedWindow):
2703         * inspector/ConsoleMessage.cpp:
2704         (WebCore::ConsoleMessage::addToFrontend):
2705         * inspector/ConsoleMessage.h:
2706         * inspector/InjectedScript.cpp:
2707         (WebCore::InjectedScript::canAccessInspectedWindow):
2708         * inspector/InjectedScript.h:
2709         * inspector/InjectedScriptHost.cpp:
2710         (WebCore::InjectedScriptHost::create):
2711         (WebCore::InjectedScriptHost::InjectedScriptHost):
2712         (WebCore::InjectedScriptHost::~InjectedScriptHost):
2713         (WebCore::InjectedScriptHost::disconnect):
2714         (WebCore::InjectedScriptHost::inspectImpl):
2715         (WebCore::InjectedScriptHost::clearConsoleMessages):
2716         (WebCore::InjectedScriptHost::databaseIdImpl):
2717         (WebCore::InjectedScriptHost::storageIdImpl):
2718         * inspector/InjectedScriptHost.h:
2719         (WebCore::InjectedScriptHost::init):
2720         (WebCore::InjectedScriptHost::setFrontend):
2721         (WebCore::InjectedScriptHost::clearFrontend):
2722         * inspector/InjectedScriptManager.cpp: Added.
2723         (WebCore::InjectedScriptManager::create):
2724         (WebCore::InjectedScriptManager::InjectedScriptManager):
2725         (WebCore::InjectedScriptManager::~InjectedScriptManager):
2726         (WebCore::InjectedScriptManager::disconnect):
2727         (WebCore::InjectedScriptManager::injectedScriptHost):
2728         (WebCore::InjectedScriptManager::injectedScriptForId):
2729         (WebCore::InjectedScriptManager::injectedScriptForObjectId):
2730         (WebCore::InjectedScriptManager::discardInjectedScripts):
2731         (WebCore::InjectedScriptManager::releaseObjectGroup):
2732         (WebCore::InjectedScriptManager::injectedScriptSource):
2733         (WebCore::InjectedScriptManager::injectScript):
2734         * inspector/InjectedScriptManager.h: Copied from Source/WebCore/inspector/InjectedScriptHost.h.
2735         * inspector/Inspector.idl:
2736         * inspector/InspectorAgent.cpp:
2737         (WebCore::InspectorAgent::InspectorAgent):
2738         (WebCore::InspectorAgent::inspectedPageDestroyed):
2739         (WebCore::InspectorAgent::focusNode):
2740         (WebCore::InspectorAgent::didClearWindowObjectInWorld):
2741         (WebCore::InspectorAgent::createFrontendLifetimeAgents):
2742         (WebCore::InspectorAgent::didCommitLoad):
2743         (WebCore::InspectorAgent::domContentLoadedEventFired):
2744         * inspector/InspectorAgent.h:
2745         * inspector/InspectorBrowserDebuggerAgent.cpp:
2746         * inspector/InspectorConsoleAgent.cpp:
2747         (WebCore::InspectorConsoleAgent::InspectorConsoleAgent):
2748         (WebCore::InspectorConsoleAgent::~InspectorConsoleAgent):
2749         (WebCore::InspectorConsoleAgent::clearConsoleMessages):
2750         (WebCore::InspectorConsoleAgent::addInspectedNode):
2751         (WebCore::InspectorConsoleAgent::setConsoleMessagesEnabled):
2752         (WebCore::InspectorConsoleAgent::addConsoleMessage):
2753         * inspector/InspectorConsoleAgent.h:
2754         * inspector/InspectorController.cpp:
2755         (WebCore::InspectorController::InspectorController):
2756         (WebCore::InspectorController::connectFrontend):
2757         (WebCore::InspectorController::disconnectFrontend):
2758         * inspector/InspectorController.h:
2759         * inspector/InspectorDOMAgent.cpp:
2760         (WebCore::InspectorDOMAgent::InspectorDOMAgent):
2761         (WebCore::InspectorDOMAgent::discardBindings):
2762         (WebCore::InspectorDOMAgent::pushNodeToFrontend):
2763         (WebCore::InspectorDOMAgent::resolveNode):
2764         * inspector/InspectorDOMAgent.h:
2765         (WebCore::InspectorDOMAgent::create):
2766         * inspector/InspectorDebuggerAgent.cpp:
2767         (WebCore::InspectorDebuggerAgent::create):
2768         (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
2769         (WebCore::InspectorDebuggerAgent::evaluateOnCallFrame):
2770         (WebCore::InspectorDebuggerAgent::currentCallFrames):
2771         * inspector/InspectorDebuggerAgent.h:
2772         * inspector/InspectorRuntimeAgent.cpp:
2773         (WebCore::InspectorRuntimeAgent::create):
2774         (WebCore::InspectorRuntimeAgent::InspectorRuntimeAgent):
2775         (WebCore::InspectorRuntimeAgent::~InspectorRuntimeAgent):
2776         (WebCore::InspectorRuntimeAgent::evaluate):
2777         (WebCore::InspectorRuntimeAgent::evaluateOn):
2778         (WebCore::InspectorRuntimeAgent::getProperties):
2779         (WebCore::InspectorRuntimeAgent::setPropertyValue):
2780         (WebCore::InspectorRuntimeAgent::releaseObject):
2781         (WebCore::InspectorRuntimeAgent::releaseObjectGroup):
2782         * inspector/InspectorRuntimeAgent.h:
2783         * inspector/front-end/ElementsPanel.js:
2784         (WebInspector.ElementsPanel.this.treeOutline.focusedNodeChanged):
2785         (WebInspector.ElementsPanel):
2786
2787 2011-03-11  Anton Muhin  <antonm@chromium.org>
2788
2789         Reviewed by Adam Barth.
2790
2791         [v8] Change the way group id for CSS objects is calculated
2792         https://bugs.webkit.org/show_bug.cgi?id=56117
2793
2794         Do not treat CSSStyleDeclarations under not CSSRule as belonging to the same object group
2795         as they should not be reachable in JavaScript.
2796
2797         Covered by existing layout tests.  Fact of absence of retention is not trivial to prove.
2798
2799         * bindings/v8/V8GCController.cpp:
2800         (WebCore::calculateGroupId):
2801         (WebCore::DOMObjectGrouperVisitor::visitDOMWrapper):
2802
2803 2011-03-11  Alexander Pavlov  <apavlov@chromium.org>
2804
2805         Reviewed by Yury Semikhatsky.
2806
2807         Web Inspector: hover over elements in Elements panel does not highlight nodes
2808         https://bugs.webkit.org/show_bug.cgi?id=56121
2809
2810         In DOM trees with a comment and/or doctype preceding the HTML tag, the tree container right boundary
2811         is 16px apart from the OL right boundary, and we miss the relevant LI by 4px. The fix is to compensate
2812         for these 16px when computing the test point coordinates.
2813
2814         * inspector/front-end/ElementsTreeOutline.js:
2815         (WebInspector.ElementsTreeOutline.prototype._treeElementFromEvent):
2816
2817 2011-03-11  Yury Semikhatsky  <yurys@chromium.org>
2818
2819         Unreviewed. Roll out r80837.
2820
2821         * CMakeLists.txt:
2822         * GNUmakefile.am:
2823         * WebCore.gypi:
2824         * WebCore.pro:
2825         * WebCore.vcproj/WebCore.vcproj:
2826         * WebCore.xcodeproj/project.pbxproj:
2827         * bindings/js/JSInjectedScriptHostCustom.cpp:
2828         (WebCore::InjectedScriptHost::createInjectedScript):
2829         (WebCore::InjectedScriptHost::discardInjectedScript):
2830         (WebCore::InjectedScriptHost::injectedScriptFor):
2831         (WebCore::InjectedScriptHost::canAccessInspectedWindow):
2832         * bindings/js/JSInjectedScriptManager.cpp: Removed.
2833         * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
2834         (WebCore::WeakReferenceCallback):
2835         (WebCore::createInjectedScriptHostV8Wrapper):
2836         (WebCore::InjectedScriptHost::createInjectedScript):
2837         (WebCore::InjectedScriptHost::discardInjectedScript):
2838         (WebCore::InjectedScriptHost::injectedScriptFor):
2839         (WebCore::InjectedScriptHost::canAccessInspectedWindow):
2840         * bindings/v8/custom/V8InjectedScriptManager.cpp: Removed.
2841         * inspector/ConsoleMessage.cpp:
2842         (WebCore::ConsoleMessage::addToFrontend):
2843         * inspector/ConsoleMessage.h:
2844         * inspector/InjectedScript.cpp:
2845         (WebCore::InjectedScript::canAccessInspectedWindow):
2846         * inspector/InjectedScript.h:
2847         * inspector/InjectedScriptHost.cpp:
2848         (WebCore::InjectedScriptHost::InjectedScriptHost):
2849         (WebCore::InjectedScriptHost::~InjectedScriptHost):
2850         (WebCore::InjectedScriptHost::inspectImpl):
2851         (WebCore::InjectedScriptHost::clearConsoleMessages):
2852         (WebCore::InjectedScriptHost::databaseIdImpl):
2853         (WebCore::InjectedScriptHost::storageIdImpl):
2854         (WebCore::InjectedScriptHost::injectedScriptForId):
2855         (WebCore::InjectedScriptHost::injectedScriptForObjectId):
2856         (WebCore::InjectedScriptHost::injectedScriptForMainFrame):
2857         (WebCore::InjectedScriptHost::discardInjectedScripts):
2858         (WebCore::InjectedScriptHost::releaseObjectGroup):
2859         (WebCore::InjectedScriptHost::frontend):
2860         (WebCore::InjectedScriptHost::injectedScriptSource):
2861         (WebCore::InjectedScriptHost::injectScript):
2862         * inspector/InjectedScriptHost.h:
2863         (WebCore::InjectedScriptHost::create):
2864         (WebCore::InjectedScriptHost::inspectorAgent):
2865         (WebCore::InjectedScriptHost::disconnectController):
2866         * inspector/InjectedScriptManager.cpp: Removed.
2867         * inspector/InjectedScriptManager.h: Removed.
2868         * inspector/Inspector.idl:
2869         * inspector/InspectorAgent.cpp:
2870         (WebCore::InspectorAgent::InspectorAgent):
2871         (WebCore::InspectorAgent::inspectedPageDestroyed):
2872         (WebCore::InspectorAgent::focusNode):
2873         (WebCore::InspectorAgent::didClearWindowObjectInWorld):
2874         (WebCore::InspectorAgent::createFrontendLifetimeAgents):
2875         (WebCore::InspectorAgent::didCommitLoad):
2876         (WebCore::InspectorAgent::domContentLoadedEventFired):
2877         * inspector/InspectorAgent.h:
2878         (WebCore::InspectorAgent::injectedScriptHost):
2879         * inspector/InspectorBrowserDebuggerAgent.cpp:
2880         * inspector/InspectorConsoleAgent.cpp:
2881         (WebCore::InspectorConsoleAgent::InspectorConsoleAgent):
2882         (WebCore::InspectorConsoleAgent::~InspectorConsoleAgent):
2883         (WebCore::InspectorConsoleAgent::clearConsoleMessages):
2884         (WebCore::InspectorConsoleAgent::setConsoleMessagesEnabled):
2885         (WebCore::InspectorConsoleAgent::addConsoleMessage):
2886         * inspector/InspectorConsoleAgent.h:
2887         * inspector/InspectorController.cpp:
2888         (WebCore::InspectorController::InspectorController):
2889         (WebCore::InspectorController::connectFrontend):
2890         (WebCore::InspectorController::disconnectFrontend):
2891         * inspector/InspectorController.h:
2892         * inspector/InspectorDOMAgent.cpp:
2893         (WebCore::InspectorDOMAgent::InspectorDOMAgent):
2894         (WebCore::InspectorDOMAgent::discardBindings):
2895         (WebCore::InspectorDOMAgent::addInspectedNode):
2896         (WebCore::InspectorDOMAgent::pushNodeToFrontend):
2897         (WebCore::InspectorDOMAgent::resolveNode):
2898         * inspector/InspectorDOMAgent.h:
2899         (WebCore::InspectorDOMAgent::create):
2900         * inspector/InspectorDebuggerAgent.cpp:
2901         (WebCore::InspectorDebuggerAgent::create):
2902         (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
2903         (WebCore::InspectorDebuggerAgent::evaluateOnCallFrame):
2904         (WebCore::InspectorDebuggerAgent::currentCallFrames):
2905         * inspector/InspectorDebuggerAgent.h:
2906         * inspector/InspectorRuntimeAgent.cpp:
2907         (WebCore::InspectorRuntimeAgent::InspectorRuntimeAgent):
2908         (WebCore::InspectorRuntimeAgent::~InspectorRuntimeAgent):
2909         (WebCore::InspectorRuntimeAgent::evaluate):
2910         (WebCore::InspectorRuntimeAgent::evaluateOn):
2911         (WebCore::InspectorRuntimeAgent::getProperties):
2912         (WebCore::InspectorRuntimeAgent::setPropertyValue):
2913         (WebCore::InspectorRuntimeAgent::releaseObject):
2914         (WebCore::InspectorRuntimeAgent::releaseObjectGroup):
2915         * inspector/InspectorRuntimeAgent.h:
2916         (WebCore::InspectorRuntimeAgent::create):
2917         * inspector/front-end/ElementsPanel.js:
2918         (WebInspector.ElementsPanel.this.treeOutline.focusedNodeChanged):
2919         (WebInspector.ElementsPanel):
2920
2921 2011-03-11  Yury Semikhatsky  <yurys@chromium.org>
2922
2923         Reviewed by Pavel Feldman.
2924
2925         Web Inspector: split InjectedScriptHost into InjectedScriptManager and InjectedScriptHost
2926         https://bugs.webkit.org/show_bug.cgi?id=56173
2927
2928         Moved all injected script managing logic into InjectedScriptManager which is owned by InspectorController.
2929
2930         * CMakeLists.txt:
2931         * GNUmakefile.am:
2932         * WebCore.gypi:
2933         * WebCore.pro:
2934         * WebCore.vcproj/WebCore.vcproj:
2935         * WebCore.xcodeproj/project.pbxproj:
2936         * bindings/js/JSInjectedScriptHostCustom.cpp:
2937         * bindings/js/JSInjectedScriptManager.cpp: Added.
2938         (WebCore::InjectedScriptManager::createInjectedScript):
2939         (WebCore::InjectedScriptManager::discardInjectedScript):
2940         (WebCore::InjectedScriptManager::injectedScriptFor):
2941         (WebCore::InjectedScriptManager::canAccessInspectedWindow):
2942         * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
2943         * bindings/v8/custom/V8InjectedScriptManager.cpp: Copied from Source/WebCore/bindings/v8/custom/V8InjectedScriptHostCustom.cpp.
2944         (WebCore::WeakReferenceCallback):
2945         (WebCore::createInjectedScriptHostV8Wrapper):
2946         (WebCore::InjectedScriptManager::createInjectedScript):
2947         (WebCore::InjectedScriptManager::discardInjectedScript):
2948         (WebCore::InjectedScriptManager::injectedScriptFor):
2949         (WebCore::InjectedScriptManager::canAccessInspectedWindow):
2950         * inspector/ConsoleMessage.cpp:
2951         (WebCore::ConsoleMessage::addToFrontend):
2952         * inspector/ConsoleMessage.h:
2953         * inspector/InjectedScript.cpp:
2954         (WebCore::InjectedScript::canAccessInspectedWindow):
2955         * inspector/InjectedScript.h:
2956         * inspector/InjectedScriptHost.cpp:
2957         (WebCore::InjectedScriptHost::create):
2958         (WebCore::InjectedScriptHost::InjectedScriptHost):
2959         (WebCore::InjectedScriptHost::~InjectedScriptHost):
2960         (WebCore::InjectedScriptHost::disconnect):
2961         (WebCore::InjectedScriptHost::inspectImpl):
2962         (WebCore::InjectedScriptHost::clearConsoleMessages):
2963         (WebCore::InjectedScriptHost::databaseIdImpl):
2964         (WebCore::InjectedScriptHost::storageIdImpl):
2965         * inspector/InjectedScriptHost.h:
2966         (WebCore::InjectedScriptHost::init):
2967         (WebCore::InjectedScriptHost::setFrontend):
2968         (WebCore::InjectedScriptHost::clearFrontend):
2969         * inspector/InjectedScriptManager.cpp: Added.
2970         (WebCore::InjectedScriptManager::create):
2971         (WebCore::InjectedScriptManager::InjectedScriptManager):
2972         (WebCore::InjectedScriptManager::~InjectedScriptManager):
2973         (WebCore::InjectedScriptManager::disconnect):
2974         (WebCore::InjectedScriptManager::injectedScriptHost):
2975         (WebCore::InjectedScriptManager::injectedScriptForId):
2976         (WebCore::InjectedScriptManager::injectedScriptForObjectId):
2977         (WebCore::InjectedScriptManager::discardInjectedScripts):
2978         (WebCore::InjectedScriptManager::releaseObjectGroup):
2979         (WebCore::InjectedScriptManager::injectedScriptSource):
2980         (WebCore::InjectedScriptManager::injectScript):
2981         * inspector/InjectedScriptManager.h: Copied from Source/WebCore/inspector/InjectedScriptHost.h.
2982         * inspector/Inspector.idl:
2983         * inspector/InspectorAgent.cpp:
2984         (WebCore::InspectorAgent::InspectorAgent):
2985         (WebCore::InspectorAgent::inspectedPageDestroyed):
2986         (WebCore::InspectorAgent::focusNode):
2987         (WebCore::InspectorAgent::didClearWindowObjectInWorld):
2988         (WebCore::InspectorAgent::createFrontendLifetimeAgents):
2989         (WebCore::InspectorAgent::didCommitLoad):
2990         (WebCore::InspectorAgent::domContentLoadedEventFired):
2991         * inspector/InspectorAgent.h:
2992         * inspector/InspectorBrowserDebuggerAgent.cpp:
2993         * inspector/InspectorConsoleAgent.cpp:
2994         (WebCore::InspectorConsoleAgent::InspectorConsoleAgent):
2995         (WebCore::InspectorConsoleAgent::~InspectorConsoleAgent):
2996         (WebCore::InspectorConsoleAgent::clearConsoleMessages):
2997         (WebCore::InspectorConsoleAgent::addInspectedNode):
2998         (WebCore::InspectorConsoleAgent::setConsoleMessagesEnabled):
2999         (WebCore::InspectorConsoleAgent::addConsoleMessage):
3000         * inspector/InspectorConsoleAgent.h:
3001         * inspector/InspectorController.cpp:
3002         (WebCore::InspectorController::InspectorController):
3003         (WebCore::InspectorController::connectFrontend):
3004         (WebCore::InspectorController::disconnectFrontend):
3005         * inspector/InspectorController.h:
3006         * inspector/InspectorDOMAgent.cpp:
3007         (WebCore::InspectorDOMAgent::InspectorDOMAgent):
3008         (WebCore::InspectorDOMAgent::discardBindings):
3009         (WebCore::InspectorDOMAgent::pushNodeToFrontend):
3010         (WebCore::InspectorDOMAgent::resolveNode):
3011         * inspector/InspectorDOMAgent.h:
3012         (WebCore::InspectorDOMAgent::create):
3013         * inspector/InspectorDebuggerAgent.cpp:
3014         (WebCore::InspectorDebuggerAgent::create):
3015         (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
3016         (WebCore::InspectorDebuggerAgent::evaluateOnCallFrame):
3017         (WebCore::InspectorDebuggerAgent::currentCallFrames):
3018         * inspector/InspectorDebuggerAgent.h:
3019         * inspector/InspectorRuntimeAgent.cpp:
3020         (WebCore::InspectorRuntimeAgent::create):
3021         (WebCore::InspectorRuntimeAgent::InspectorRuntimeAgent):
3022         (WebCore::InspectorRuntimeAgent::~InspectorRuntimeAgent):
3023         (WebCore::InspectorRuntimeAgent::evaluate):
3024         (WebCore::InspectorRuntimeAgent::evaluateOn):
3025         (WebCore::InspectorRuntimeAgent::getProperties):
3026         (WebCore::InspectorRuntimeAgent::setPropertyValue):
3027         (WebCore::InspectorRuntimeAgent::releaseObject):
3028         (WebCore::InspectorRuntimeAgent::releaseObjectGroup):
3029         * inspector/InspectorRuntimeAgent.h:
3030         * inspector/front-end/ElementsPanel.js:
3031         (WebInspector.ElementsPanel.this.treeOutline.focusedNodeChanged):
3032         (WebInspector.ElementsPanel):
3033
3034 2011-03-09  Hans Wennborg  <hans@chromium.org>
3035
3036         Reviewed by Jeremy Orlow.
3037
3038         IndexedDB: Make IDBBackingStore abstract
3039         https://bugs.webkit.org/show_bug.cgi?id=56013
3040
3041         Make IDBBackingStore abstract to allow for multiple implementations.
3042         Move the SQLite implementation to IDBSQLiteBackingStore.
3043
3044         No new tests: refactoring only.
3045
3046         * WebCore.gypi:
3047         * storage/IDBBackingStore.h:
3048         (WebCore::IDBBackingStore::~IDBBackingStore):
3049         * storage/IDBFactoryBackendImpl.cpp:
3050         (WebCore::IDBFactoryBackendImpl::open):
3051         * storage/IDBSQLiteBackingStore.cpp:
3052         (WebCore::IDBSQLiteBackingStore::IDBSQLiteBackingStore):
3053         (WebCore::IDBSQLiteBackingStore::~IDBSQLiteBackingStore):
3054         (WebCore::runCommands):
3055         (WebCore::createTables):
3056         (WebCore::createMetaDataTable):
3057         (WebCore::getDatabaseSchemaVersion):
3058         (WebCore::migrateDatabase):
3059         (WebCore::IDBSQLiteBackingStore::open):
3060         (WebCore::IDBSQLiteBackingStore::extractIDBDatabaseMetaData):
3061         (WebCore::IDBSQLiteBackingStore::setIDBDatabaseMetaData):
3062         (WebCore::IDBSQLiteBackingStore::getObjectStores):
3063         (WebCore::IDBSQLiteBackingStore::createObjectStore):
3064         (WebCore::doDelete):
3065         (WebCore::IDBSQLiteBackingStore::deleteObjectStore):
3066         (WebCore::whereSyntaxForKey):
3067         (WebCore::bindKeyToQuery):
3068         (WebCore::lowerCursorWhereFragment):
3069         (WebCore::upperCursorWhereFragment):
3070         (WebCore::IDBSQLiteBackingStore::getObjectStoreRecord):
3071         (WebCore::bindKeyToQueryWithNulls):
3072         (WebCore::IDBSQLiteBackingStore::putObjectStoreRecord):
3073         (WebCore::IDBSQLiteBackingStore::clearObjectStore):
3074         (WebCore::IDBSQLiteBackingStore::deleteObjectStoreRecord):
3075         (WebCore::IDBSQLiteBackingStore::nextAutoIncrementNumber):
3076         (WebCore::IDBSQLiteBackingStore::keyExistsInObjectStore):
3077         (WebCore::IDBSQLiteBackingStore::forEachObjectStoreRecord):
3078         (WebCore::IDBSQLiteBackingStore::getIndexes):
3079         (WebCore::IDBSQLiteBackingStore::createIndex):
3080         (WebCore::IDBSQLiteBackingStore::deleteIndex):
3081         (WebCore::IDBSQLiteBackingStore::putIndexDataForRecord):
3082         (WebCore::IDBSQLiteBackingStore::deleteIndexDataForRecord):
3083         (WebCore::IDBSQLiteBackingStore::getObjectViaIndex):
3084         (WebCore::keyFromQuery):
3085         (WebCore::IDBSQLiteBackingStore::getPrimaryKeyViaIndex):
3086         (WebCore::IDBSQLiteBackingStore::keyExistsInIndex):
3087         (WebCore::IDBSQLiteBackingStore::openObjectStoreCursor):
3088         (WebCore::IDBSQLiteBackingStore::openIndexKeyCursor):
3089         (WebCore::IDBSQLiteBackingStore::openIndexCursor):
3090         (WebCore::IDBSQLiteBackingStore::createTransaction):
3091         * storage/IDBSQLiteBackingStore.h: Added.
3092
3093 2011-03-11  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
3094
3095         Unreviewed build error fix.
3096
3097         [EFL] Fix build break when SHARED_CORE is ON
3098         https://bugs.webkit.org/show_bug.cgi?id=56155
3099
3100         * platform/efl/ContextMenuEfl.cpp:
3101         (WebCore::ContextMenu::ContextMenu):
3102         * platform/efl/ContextMenuItemEfl.cpp:
3103         (WebCore::ContextMenuItem::nativeMenuItem):
3104         (WebCore::ContextMenuItem::ContextMenuItem):
3105         (WebCore::ContextMenuItem::~ContextMenuItem):
3106
3107 2011-03-11  Andrey Kosyakov  <caseq@chromium.org>
3108
3109         Reviewed by Pavel Feldman.
3110
3111         Web Inspector: resource load cancellation is reported to console as an error
3112         https://bugs.webkit.org/show_bug.cgi?id=55764
3113
3114         - mark interruptionForPolicyChangeError as cancellation
3115         - do not log resource cancelation as an error
3116         - always push resource to front-end before console message, so front-end can use resource info while formatting message.
3117
3118         * inspector/InspectorConsoleAgent.cpp:
3119         (WebCore::InspectorConsoleAgent::didFailLoading):
3120         * inspector/InspectorInstrumentation.cpp:
3121         (WebCore::InspectorInstrumentation::didReceiveResourceResponseImpl):
3122         (WebCore::InspectorInstrumentation::didFailLoadingImpl):
3123         * loader/MainResourceLoader.cpp:
3124         (WebCore::MainResourceLoader::stopLoadingForPolicyChange):
3125
3126 2011-03-10  Alexander Pavlov  <apavlov@chromium.org>
3127
3128         Reviewed by Yury Semikhatsky.
3129
3130         Web Inspector: Get rid of has/add/removeStyleClass() methods on Element.prototype - Step 1
3131         https://bugs.webkit.org/show_bug.cgi?id=56096
3132
3133         No new tests, as this is a refactoring.
3134
3135         * inspector/front-end/BreakpointsSidebarPane.js:
3136         (WebInspector.EventListenerBreakpointsSidebarPane):
3137         * inspector/front-end/DetailedHeapshotView.js:
3138         * inspector/front-end/ResourcesPanel.js:
3139         (WebInspector.ResourcesPanel):
3140         (WebInspector.BaseStorageTreeElement):
3141         (WebInspector.BaseStorageTreeElement.prototype.onattach):
3142         (WebInspector.StorageCategoryTreeElement):
3143         (WebInspector.FrameTreeElement):
3144         (WebInspector.FrameResourceTreeElement):
3145         (WebInspector.DatabaseTreeElement):
3146         (WebInspector.DatabaseTableTreeElement):
3147         (WebInspector.DOMStorageTreeElement):
3148         (WebInspector.CookieTreeElement):
3149         (WebInspector.ApplicationCacheTreeElement):
3150         (WebInspector.ResourceRevisionTreeElement):
3151         * inspector/front-end/utilities.js:
3152         (Element.prototype.removeStyleClass):
3153         (Element.prototype.addStyleClass):
3154         (Element.prototype.hasStyleClass):
3155
3156 2011-03-11  Brian Salomon  <bsalomon@google.com>
3157
3158         Reviewed by Kenneth Russell.
3159
3160         Adds GrContext flush call to PlatformContextSkia destructor. 
3161 Calls GrContext flush with int parameter instead of bool due to skia 
3162 revision.       
3163
3164         No new tests needed.
3165
3166         * platform/graphics/chromium/DrawingBufferChromium.cpp:
3167         (WebCore::DrawingBuffer::publishToPlatformLayer):
3168         * platform/graphics/skia/PlatformContextSkia.cpp:
3169         (WebCore::PlatformContextSkia::~PlatformContextSkia):
3170         (WebCore::PlatformContextSkia::setSharedGraphicsContext3D):
3171
3172 2011-03-10  Chris Guillory  <chris.guillory@google.com>
3173
3174         Reviewed by James Robinson.
3175
3176         Fix for Coverity discovered NO_EFFECT (self-assign) defect.
3177         https://bugs.webkit.org/show_bug.cgi?id=54143
3178
3179         * platform/graphics/gpu/TilingData.cpp:
3180         (WebCore::TilingData::setMaxTextureSize):
3181
3182 2011-03-10  Emil A Eklund  <eae@chromium.org>
3183
3184         Reviewed by Alexey Proskuryakov.
3185
3186         The web colours palevioletred and mediumpurple are incorrect
3187         https://bugs.webkit.org/show_bug.cgi?id=46658
3188
3189         Changed value for the palevioletred and mediumpurple colors to match
3190         the css3 specification.
3191
3192         Test: fast/css/named-colors.html
3193
3194         * inspector/front-end/Color.js:
3195         * platform/ColorData.gperf:
3196
3197 2011-03-10  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
3198
3199         Unreviewed build fix.
3200
3201         [WML] Fix build error
3202         https://bugs.webkit.org/show_bug.cgi?id=56078
3203
3204         * wml/WMLInputElement.cpp:
3205         (WebCore::WMLInputElement::defaultEventHandler):
3206
3207 2011-03-10  Jeremy Moskovich  <jeremy@chromium.org>
3208
3209         Reviewed by Darin Adler.
3210
3211         Fix navigation menus on a bunch of sites in WebKit.
3212         https://bugs.webkit.org/show_bug.cgi?id=52535
3213
3214         WebKit doesn't support position:relative for several table elements and
3215         overwrites the style internally when position:relative is encountered.
3216         Unfortunately position:relative affects the choice of nodes returned by
3217         offsetParent.
3218
3219         This CL adds a bit to RenderStyle to track whether position:relative was
3220         overwritten.  The value is then consulted in offsetParent which makes us
3221         match FF/IE.
3222
3223         Tests: fast/block/positioning/offsetLeft-relative-iframe.html
3224                fast/block/positioning/offsetLeft-relative-td.html
3225
3226         * css/CSSStyleSelector.cpp:
3227         (WebCore::CSSStyleSelector::adjustRenderStyle):
3228         * rendering/RenderObject.cpp:
3229         (WebCore::RenderObject::isOriginallyRelPositioned):
3230         (WebCore::RenderObject::offsetParent):
3231         * rendering/RenderObject.h:
3232         * rendering/style/RenderStyle.h: Add a bit to track the original value of position:relative.
3233         (WebCore::InheritedFlags::positionWasRelative):
3234         (WebCore::InheritedFlags::setPositionWasRelative):
3235         * rendering/style/StyleRareNonInheritedData.cpp:
3236         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
3237         (WebCore::StyleRareNonInheritedData::operator==):
3238         * rendering/style/StyleRareNonInheritedData.h:
3239
3240 2011-03-10  Adam Barth  <abarth@webkit.org>
3241
3242         Reviewed by Darin Adler.
3243
3244         REGRESSION (r66428/r71892): Crash after assertion failure (!m_reachedTerminalState) in ResourceLoader::didCancel()
3245         https://bugs.webkit.org/show_bug.cgi?id=51357
3246
3247         Previously, we would try to print from a callstack that didn't want a
3248         nested event loop, leading to re-entrancy problems.  In this patch, we
3249         complete the print call asynchronously, giving us a clean stack on
3250         which to run the nested event loop.
3251
3252         Test: printing/print-close-crash.html
3253
3254         * page/DOMWindow.cpp:
3255         (WebCore::DOMWindow::DOMWindow):
3256         (WebCore::DOMWindow::print):
3257         (WebCore::DOMWindow::printTimerFired):
3258         * page/DOMWindow.h:
3259
3260 2011-03-11  Roland Steiner  <rolandsteiner@chromium.org>
3261
3262         Reviewed by Ryosuke Niwa.
3263
3264         Bug 55570 - Remove dependency of dom/InputElement.cpp on html/ and wml/
3265         https://bugs.webkit.org/show_bug.cgi?id=55570
3266
3267         Add a virtual function toInputElement() to Node that has a default
3268         implementation of returning 0.
3269         For HTMLInputElement and WMLInputElement (which derive from InputElement)
3270         override this to return the object.
3271         Change all calling sites of the old toInputElement to use the new member
3272         function. This also allows us to save some casts.
3273
3274         No new tests. (refactoring)
3275
3276         * WebCore.exp.in:
3277         * accessibility/AXObjectCache.cpp:
3278         (WebCore::AXObjectCache::textMarkerDataForVisiblePosition):
3279         * accessibility/AccessibilityRenderObject.cpp:
3280         (WebCore::AccessibilityRenderObject::isPasswordField):
3281         (WebCore::AccessibilityRenderObject::isIndeterminate):
3282         (WebCore::AccessibilityRenderObject::isNativeCheckboxOrRadio):
3283         (WebCore::AccessibilityRenderObject::isChecked):
3284         * css/CSSStyleSelector.cpp:
3285         (WebCore::CSSStyleSelector::canShareStyleWithElement):
3286         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
3287         * dom/CheckedRadioButtons.cpp:
3288         (WebCore::CheckedRadioButtons::removeButton):
3289         * dom/InputElement.cpp:
3290         * dom/InputElement.h:
3291         * dom/Node.cpp:
3292         (WebCore::Node::toInputElement):
3293         * dom/Node.h:
3294         * html/HTMLInputElement.h:
3295         (WebCore::HTMLInputElement::toInputElement):
3296         * rendering/RenderTextControlSingleLine.cpp:
3297         (WebCore::RenderTextControlSingleLine::inputElement):
3298         * rendering/RenderTheme.cpp:
3299         (WebCore::RenderTheme::isChecked):
3300         (WebCore::RenderTheme::isIndeterminate):
3301         * wml/WMLInputElement.h:
3302         (WebCore::WMLInputElement::toInputElement):
3303
3304 2011-03-10  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
3305
3306         Reviewed by Kenneth Rohde Christiansen.
3307
3308         [EFL] New mediaControl css file for EFL
3309         https://bugs.webkit.org/show_bug.cgi?id=55460
3310
3311         Add new mediaControl css file for html5 video UI.
3312
3313         * CMakeLists.txt:
3314         * CMakeListsEfl.txt:
3315         * css/mediaControlsEfl.css: Added.
3316         (audio):
3317         (audio::-webkit-media-controls-panel, video::-webkit-media-controls-panel):
3318         (video:-webkit-full-page-media::-webkit-media-controls-panel):
3319         (audio::-webkit-media-controls-mute-button, video::-webkit-media-controls-mute-button):
3320         (audio::-webkit-media-controls-play-button, video::-webkit-media-controls-play-button):
3321         (audio::-webkit-media-controls-timeline-container, video::-webkit-media-controls-timeline-container):
3322         (audio::-webkit-media-controls-current-time-display, video::-webkit-media-controls-current-time-display):
3323         (audio::-webkit-media-controls-time-remaining-display, video::-webkit-media-controls-time-remaining-display):
3324         (audio::-webkit-media-controls-timeline, video::-webkit-media-controls-timeline):
3325         (audio::-webkit-media-controls-volume-slider-container, video::-webkit-media-controls-volume-slider-container):
3326         (audio::-webkit-media-controls-volume-slider, video::-webkit-media-controls-volume-slider):
3327         (audio::-webkit-media-controls-seek-back-button, video::-webkit-media-controls-seek-back-button):
3328         (audio::-webkit-media-controls-seek-forward-button, video::-webkit-media-controls-seek-forward-button):
3329         (audio::-webkit-media-controls-fullscreen-button, video::-webkit-media-controls-fullscreen-button):
3330         (audio::-webkit-media-controls-rewind-button, video::-webkit-media-controls-rewind-button):
3331         (audio::-webkit-media-controls-return-to-realtime-button, video::-webkit-media-controls-return-to-realtime-button):
3332         (audio::-webkit-media-controls-toggle-closed-captions-button, video::-webkit-media-controls-toggle-closed-captions-button):
3333         (audio::-webkit-media-controls-volume-slider-mute-button, video::-webkit-media-controls-volume-slider-mute-button):
3334         * platform/efl/RenderThemeEfl.cpp:
3335         (WebCore::RenderThemeEfl::extraMediaControlsStyleSheet):
3336
3337 2011-03-10  Emil A Eklund  <eae@chromium.org>
3338
3339         Reviewed by Dimitri Glazkov.
3340
3341         style.display affecting the initial selectedIndex value of a <select> when its multiple attribute is set programatically
3342         https://bugs.webkit.org/show_bug.cgi?id=53860
3343
3344         Preserve selection when changing between multi-select and single-select
3345         for <select> boxes even if it has not yet been rendered.
3346
3347         Test: fast/dom/HTMLSelectElement/change-multiple-preserve-selection.html
3348
3349         * html/HTMLSelectElement.cpp:
3350         (WebCore::HTMLSelectElement::setMultiple):
3351
3352 2011-03-10  Ojan Vafai  <ojan@chromium.org>
3353
3354         Reviewed by Tony Chang.
3355
3356         update comment to reference new DOM Core spec
3357         https://bugs.webkit.org/show_bug.cgi?id=56079
3358
3359         I'm excising all instances of WRONG_DOCUMENT_ERR from WebKit.
3360         This is the only one that's actually specified to fire
3361         in the latest DOM Core spec.
3362
3363         * dom/DOMImplementation.cpp:
3364         (WebCore::DOMImplementation::createDocument):
3365
3366 2011-03-10  Rik Cabanier  <cabanier@gmail.com>
3367
3368         Reviewed by Tony Gentilcore.
3369
3370         Fix that allows fixed length values to be floating point
3371         https://bugs.webkit.org/show_bug.cgi?id=52699
3372
3373         * WebCore.xcodeproj/project.pbxproj:
3374         * css/CSSStyleSelector.cpp:
3375         (WebCore::convertToLength):
3376         (WebCore::convertToIntLength):
3377         (WebCore::convertToFloatLength):
3378         (WebCore::CSSStyleSelector::applyProperty):
3379         (WebCore::CSSStyleSelector::createTransformOperations):
3380         * platform/Length.h:
3381         (WebCore::Length::Length):
3382         (WebCore::Length::operator==):
3383         (WebCore::Length::operator!=):
3384         (WebCore::Length::rawValue):
3385         (WebCore::Length::type):
3386         (WebCore::Length::quirk):
3387         (WebCore::Length::setValue):
3388         (WebCore::Length::calcFloatValue):
3389         (WebCore::Length::isZero):
3390         (WebCore::Length::blend):
3391         (WebCore::Length::getIntValue):
3392         (WebCore::Length::getFloatValue):
3393         * rendering/AutoTableLayout.cpp:
3394         (WebCore::AutoTableLayout::recalcColumn):
3395         (WebCore::AutoTableLayout::calcEffectiveLogicalWidth):
3396         * rendering/FixedTableLayout.cpp:
3397         (WebCore::FixedTableLayout::calcWidthArray):
3398
3399 2011-03-10  Sheriff Bot  <webkit.review.bot@gmail.com>
3400
3401         Unreviewed, rolling out r80800.
3402         http://trac.webkit.org/changeset/80800
3403         https://bugs.webkit.org/show_bug.cgi?id=56163
3404
3405         Caused hundreds of tests to crash on Windows 7 (Requested by
3406         rniwa on #webkit).
3407
3408         * page/EventHandler.cpp:
3409         (WebCore::EventHandler::mouseMoved):
3410         (WebCore::EventHandler::updateMouseEventTargetNode):
3411         * page/FocusController.cpp:
3412         (WebCore::FocusController::setActive):
3413         * page/FrameView.cpp:
3414         (WebCore::FrameView::FrameView):
3415         (WebCore::FrameView::~FrameView):
3416         * page/FrameView.h:
3417         * page/Page.cpp:
3418         * page/Page.h:
3419         * platform/ScrollView.cpp:
3420         (WebCore::ScrollView::wheelEvent):
3421         * platform/ScrollView.h:
3422         * rendering/RenderDataGrid.cpp:
3423         (WebCore::RenderDataGrid::RenderDataGrid):
3424         (WebCore::RenderDataGrid::~RenderDataGrid):
3425         * rendering/RenderLayer.cpp:
3426         (WebCore::RenderLayer::RenderLayer):
3427         (WebCore::RenderLayer::~RenderLayer):
3428         * rendering/RenderLayer.h:
3429         * rendering/RenderListBox.cpp:
3430         (WebCore::RenderListBox::RenderListBox):
3431         (WebCore::RenderListBox::~RenderListBox):
3432
3433 2011-03-10  Alice Boxhall  <aboxhall@chromium.org>
3434
3435         Reviewed by Dimitri Glazkov.
3436
3437         NULL pointer crash when using :empty and :first-line pseudoclass selectors together
3438         https://bugs.webkit.org/show_bug.cgi?id=53316
3439
3440         :empty is calculated for each element during parsing, but then not 
3441         recalculated after any child elements are attached. Force style 
3442         re-calculation on elements which have :empty in their style when
3443         their children are changed.
3444
3445         Test: fast/css/empty-first-line-crash.html
3446
3447         * dom/Element.cpp:
3448         (WebCore::checkForEmptyStyleChange): Pull out empty style checking
3449         logic from checkForSiblingStyleChanges().
3450         (WebCore::checkForSiblingStyleChanges): Use new checkForEmptyStyleChanges()
3451         method.
3452         (WebCore::Element::childrenChanged):  Call checkForEmptyStyleChanges() when
3453         called with changedByParser = true.
3454
3455 2011-03-10  Emil A Eklund  <eae@chromium.org>
3456
3457         Unreviewed build fix.
3458
3459         Fix Leopard Release build broken by r80797.
3460
3461         * html/CollectionCache.h:
3462
3463 2011-03-10  Beth Dakin  <bdakin@apple.com>
3464
3465         Reviewed by Darin Adler.
3466
3467         Fix for <rdar://problem/8944558> Overlay scrollers in overflow areas need to 
3468         send notifications appropriate times (showing up, resizing)
3469         -and corresponding-
3470         https://bugs.webkit.org/show_bug.cgi?id=56067
3471
3472         The general strategy here is to add a HashSet of ScrollableAreas to the page that 
3473