2011-06-16 Julien Chaffraix <jchaffraix@webkit.org>
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2011-06-16  Julien Chaffraix  <jchaffraix@webkit.org>
2
3         Reviewed by Darin Adler.
4
5         HTMLTable should cache its 'rows' collection results
6         https://bugs.webkit.org/show_bug.cgi?id=62800
7
8         Test: perf/table-rows-length-caching.html
9
10         Currently all our HTMLCollection's are recreated on call. This means that
11         we don't cache the information about the collection between calls to, for
12         example, table.rows.
13
14         This change adds a CollectionCache to HTMLTableElement. It is similar to what
15         is done for HTMLFormElement.
16
17         * html/HTMLTableElement.cpp:
18         (WebCore::HTMLTableElement::collectionCache): This method does
19         lazy initialization of the table's collectionCache.
20         * html/HTMLTableElement.h: Added a new member and the previous
21         method.
22
23         * html/HTMLTableRowsCollection.cpp:
24         (WebCore::HTMLTableRowsCollection::HTMLTableRowsCollection): Pass
25         the HTMLTableElement's CollectionCache so that we reuse the cached
26         results.
27
28 2011-06-16  Sheriff Bot  <webkit.review.bot@gmail.com>
29
30         Unreviewed, rolling out r89025.
31         http://trac.webkit.org/changeset/89025
32         https://bugs.webkit.org/show_bug.cgi?id=62799
33
34         "Some layout tests fail" (Requested by yurys on #webkit).
35
36         * CMakeLists.txt:
37         * GNUmakefile.list.am:
38         * WebCore.gypi:
39         * WebCore.pro:
40         * WebCore.vcproj/WebCore.vcproj:
41         * WebCore.xcodeproj/project.pbxproj:
42         * fileapi/FileReaderLoader.cpp:
43         (WebCore::FileReaderLoader::didReceiveResponse):
44         * fileapi/FileReaderLoader.h:
45         * inspector/Inspector.json:
46         * inspector/InspectorInstrumentation.cpp:
47         (WebCore::InspectorInstrumentation::didCommitLoadImpl):
48         * inspector/InspectorInstrumentation.h:
49         * inspector/InspectorResourceAgent.cpp:
50         (WebCore::InspectorResourceAgent::willSendRequest):
51         (WebCore::InspectorResourceAgent::didReceiveResponse):
52         (WebCore::InspectorResourceAgent::setInitialXHRContent):
53         (WebCore::InspectorResourceAgent::InspectorResourceAgent):
54         * inspector/InspectorResourceAgent.h:
55         * inspector/NetworkResourcesData.cpp: Removed.
56         * inspector/NetworkResourcesData.h: Removed.
57         * inspector/front-end/NetworkManager.js:
58         (WebInspector.NetworkManager.prototype.requestContent):
59         (WebInspector.NetworkDispatcher.prototype._appendRedirect):
60         * inspector/front-end/NetworkPanel.js:
61         (WebInspector.NetworkPanel.prototype._appendResource):
62         (WebInspector.NetworkPanel.prototype._frameNavigated):
63         * loader/DocumentThreadableLoader.cpp:
64         (WebCore::DocumentThreadableLoader::didReceiveResponse):
65         (WebCore::DocumentThreadableLoader::receivedCancellation):
66         (WebCore::DocumentThreadableLoader::loadRequest):
67         * loader/DocumentThreadableLoader.h:
68         * loader/ThreadableLoaderClient.h:
69         (WebCore::ThreadableLoaderClient::didReceiveResponse):
70         (WebCore::ThreadableLoaderClient::didReceiveAuthenticationCancellation):
71         * loader/ThreadableLoaderClientWrapper.h:
72         (WebCore::ThreadableLoaderClientWrapper::didReceiveResponse):
73         (WebCore::ThreadableLoaderClientWrapper::didReceiveAuthenticationCancellation):
74         * loader/WorkerThreadableLoader.cpp:
75         (WebCore::workerContextDidReceiveResponse):
76         (WebCore::WorkerThreadableLoader::MainThreadBridge::didReceiveResponse):
77         (WebCore::workerContextDidReceiveAuthenticationCancellation):
78         (WebCore::WorkerThreadableLoader::MainThreadBridge::didReceiveAuthenticationCancellation):
79         * loader/WorkerThreadableLoader.h:
80         * notifications/Notification.cpp:
81         (WebCore::Notification::didReceiveResponse):
82         (WebCore::Notification::didReceiveAuthenticationCancellation):
83         * notifications/Notification.h:
84         * page/EventSource.cpp:
85         (WebCore::EventSource::didReceiveResponse):
86         * page/EventSource.h:
87         * workers/WorkerScriptLoader.cpp:
88         (WebCore::WorkerScriptLoader::didReceiveResponse):
89         (WebCore::WorkerScriptLoader::didReceiveAuthenticationCancellation):
90         * workers/WorkerScriptLoader.h:
91         * xml/XMLHttpRequest.cpp:
92         (WebCore::XMLHttpRequest::createRequest):
93         (WebCore::XMLHttpRequest::didReceiveResponse):
94         (WebCore::XMLHttpRequest::didReceiveAuthenticationCancellation):
95         * xml/XMLHttpRequest.h:
96
97 2011-06-16  Vitaly Repeshko  <vitalyr@chromium.org>
98
99         Unreviewed.
100
101         Revert Adam's user gesture patch series r89002, r89005, r89007, r89018
102         https://bugs.webkit.org/show_bug.cgi?id=62796
103
104         The patches broke chromium browser tests.
105
106         * WebCore.exp.in:
107         * bindings/js/ScheduledAction.cpp:
108         (WebCore::ScheduledAction::execute):
109         * bindings/js/ScriptController.cpp:
110         (WebCore::ScriptController::ScriptController):
111         (WebCore::ScriptController::processingUserGesture):
112         (WebCore::ScriptController::isJavaScriptAnchorNavigation):
113         * bindings/js/ScriptController.h:
114         (WebCore::ScriptController::setProcessingTimerCallback):
115         * bindings/v8/ScriptController.cpp:
116         (WebCore::ScriptController::ScriptController):
117         (WebCore::ScriptController::processingUserGesture):
118         * bindings/v8/ScriptController.h:
119         (WebCore::ScriptController::setProcessingTimerCallback):
120         * dom/Event.cpp:
121         (WebCore::Event::fromUserGesture):
122         * dom/Event.h:
123         * dom/UserGestureIndicator.cpp:
124         (WebCore::UserGestureIndicator::UserGestureIndicator):
125         (WebCore::UserGestureIndicator::~UserGestureIndicator):
126         * dom/UserGestureIndicator.h:
127         (WebCore::UserGestureIndicator::processingUserGesture):
128         (WebCore::UserGestureIndicator::getUserGestureState):
129         * html/HTMLMediaElement.cpp:
130         (WebCore::HTMLMediaElement::removedFromDocument):
131         (WebCore::HTMLMediaElement::load):
132         (WebCore::HTMLMediaElement::play):
133         (WebCore::HTMLMediaElement::pause):
134         (WebCore::HTMLMediaElement::beginScrubbing):
135         (WebCore::HTMLMediaElement::resume):
136         (WebCore::HTMLMediaElement::processingUserGesture):
137         * html/HTMLMediaElement.h:
138         * html/HTMLMediaElement.idl:
139         * html/HTMLVideoElement.cpp:
140         (WebCore::HTMLVideoElement::webkitEnterFullscreen):
141         * html/HTMLVideoElement.h:
142         (WebCore::HTMLVideoElement::webkitEnterFullScreen):
143         * html/HTMLVideoElement.idl:
144         * html/MediaDocument.cpp:
145         (WebCore::MediaDocument::defaultEventHandler):
146         * html/shadow/MediaControlElements.cpp:
147         (WebCore::MediaControlSeekButtonElement::defaultEventHandler):
148         * html/shadow/TextControlInnerElements.cpp:
149         (WebCore::InputFieldSpeechButtonElement::defaultEventHandler):
150
151 2011-06-16  Vsevolod Vlasov  <vsevik@chromium.org>
152
153         Reviewed by Yury Semikhatsky.
154
155         Web Inspector: Cache XHR content in backend, do not use initialContentSet for XHRs.
156         https://bugs.webkit.org/show_bug.cgi?id=61205
157
158         Added inspector backend cache for XHR content.
159
160         Tests: http/tests/inspector/network/network-xhr-async.html
161                http/tests/inspector/network/network-xhr-sync.html
162
163         * CMakeLists.txt:
164         * GNUmakefile.list.am:
165         * WebCore.gypi:
166         * WebCore.pro:
167         * WebCore.vcproj/WebCore.vcproj:
168         * WebCore.xcodeproj/project.pbxproj:
169         * fileapi/FileReaderLoader.cpp:
170         (WebCore::FileReaderLoader::didReceiveResponse):
171         * fileapi/FileReaderLoader.h:
172         * inspector/Inspector.json:
173         * inspector/InspectorInstrumentation.cpp:
174         (WebCore::InspectorInstrumentation::didReceiveXHRResponseImpl):
175         (WebCore::InspectorInstrumentation::willLoadXHRSynchronouslyImpl):
176         (WebCore::InspectorInstrumentation::didLoadXHRSynchronouslyImpl):
177         (WebCore::InspectorInstrumentation::didCommitLoadImpl):
178         * inspector/InspectorInstrumentation.h:
179         (WebCore::InspectorInstrumentation::didReceiveXHRResponse):
180         (WebCore::InspectorInstrumentation::willLoadXHRSynchronously):
181         (WebCore::InspectorInstrumentation::didLoadXHRSynchronously):
182         * inspector/InspectorResourceAgent.cpp:
183         (WebCore::InspectorResourceAgent::willSendRequest):
184         (WebCore::InspectorResourceAgent::didReceiveResponse):
185         (WebCore::InspectorResourceAgent::setInitialXHRContent):
186         (WebCore::InspectorResourceAgent::didReceiveXHRResponse):
187         (WebCore::InspectorResourceAgent::willLoadXHRSynchronously):
188         (WebCore::InspectorResourceAgent::didLoadXHRSynchronously):
189         (WebCore::InspectorResourceAgent::getResourceContent):
190         (WebCore::InspectorResourceAgent::mainFrameNavigated):
191         (WebCore::InspectorResourceAgent::InspectorResourceAgent):
192         * inspector/InspectorResourceAgent.h:
193         * inspector/NetworkResourcesData.cpp: Added.
194         (WebCore::NetworkResourcesData::ResourceData::ResourceData):
195         (WebCore::NetworkResourcesData::ResourceData::content):
196         (WebCore::NetworkResourcesData::ResourceData::appendContent):
197         (WebCore::NetworkResourcesData::ResourceData::purgeContent):
198         (WebCore::NetworkResourcesData::NetworkResourcesData):
199         (WebCore::NetworkResourcesData::~NetworkResourcesData):
200         (WebCore::NetworkResourcesData::resourceCreated):
201         (WebCore::NetworkResourcesData::responseReceived):
202         (WebCore::NetworkResourcesData::didReceiveXHRResponse):
203         (WebCore::NetworkResourcesData::addResourceContent):
204         (WebCore::NetworkResourcesData::isXHR):
205         (WebCore::NetworkResourcesData::data):
206         (WebCore::NetworkResourcesData::clear):
207         (WebCore::NetworkResourcesData::ensureFreeSpace):
208         * inspector/NetworkResourcesData.h: Added.
209         (WebCore::NetworkResourcesData::ResourceData::identifier):
210         (WebCore::NetworkResourcesData::ResourceData::loaderId):
211         (WebCore::NetworkResourcesData::ResourceData::frameId):
212         (WebCore::NetworkResourcesData::ResourceData::setFrameId):
213         (WebCore::NetworkResourcesData::ResourceData::url):
214         (WebCore::NetworkResourcesData::ResourceData::setUrl):
215         (WebCore::NetworkResourcesData::ResourceData::isXHR):
216         (WebCore::NetworkResourcesData::ResourceData::setIsXHR):
217         (WebCore::NetworkResourcesData::ResourceData::hasContent):
218         (WebCore::NetworkResourcesData::ResourceData::isContentPurged):
219         (WebCore::NetworkResourcesData::ResourceData::setIsContentPurged):
220         * inspector/front-end/NetworkManager.js:
221         (WebInspector.NetworkManager.prototype.requestContent):
222         (WebInspector.NetworkDispatcher.prototype._appendRedirect):
223         * inspector/front-end/NetworkPanel.js:
224         (WebInspector.NetworkPanel.prototype._appendResource):
225         (WebInspector.NetworkPanel.prototype._frameNavigated):
226         * loader/DocumentThreadableLoader.cpp:
227         (WebCore::DocumentThreadableLoader::didReceiveResponse):
228         (WebCore::DocumentThreadableLoader::receivedCancellation):
229         (WebCore::DocumentThreadableLoader::loadRequest):
230         * loader/DocumentThreadableLoader.h:
231         * loader/ThreadableLoaderClient.h:
232         (WebCore::ThreadableLoaderClient::didReceiveResponse):
233         (WebCore::ThreadableLoaderClient::didReceiveAuthenticationCancellation):
234         * loader/ThreadableLoaderClientWrapper.h:
235         (WebCore::ThreadableLoaderClientWrapper::didReceiveResponse):
236         (WebCore::ThreadableLoaderClientWrapper::didReceiveAuthenticationCancellation):
237         * loader/WorkerThreadableLoader.cpp:
238         (WebCore::workerContextDidReceiveResponse):
239         (WebCore::WorkerThreadableLoader::MainThreadBridge::didReceiveResponse):
240         (WebCore::workerContextDidReceiveAuthenticationCancellation):
241         (WebCore::WorkerThreadableLoader::MainThreadBridge::didReceiveAuthenticationCancellation):
242         * loader/WorkerThreadableLoader.h:
243         * notifications/Notification.cpp:
244         (WebCore::Notification::didReceiveResponse):
245         (WebCore::Notification::didReceiveAuthenticationCancellation):
246         * notifications/Notification.h:
247         * page/EventSource.cpp:
248         (WebCore::EventSource::didReceiveResponse):
249         * page/EventSource.h:
250         * workers/WorkerScriptLoader.cpp:
251         (WebCore::WorkerScriptLoader::didReceiveResponse):
252         (WebCore::WorkerScriptLoader::didReceiveAuthenticationCancellation):
253         * workers/WorkerScriptLoader.h:
254         * xml/XMLHttpRequest.cpp:
255         (WebCore::XMLHttpRequest::createRequest):
256         (WebCore::XMLHttpRequest::didReceiveResponse):
257         (WebCore::XMLHttpRequest::didReceiveAuthenticationCancellation):
258         * xml/XMLHttpRequest.h:
259
260 2011-06-16  Hayato Ito  <hayato@chromium.org>
261
262         Reviewed by Hajime Morita.
263
264         Show child elements of a shadow host in Node::showTreeForThisAcrossFrame.
265         https://bugs.webkit.org/show_bug.cgi?id=62782
266
267         To make an implementation simple, get rid of traverseNextNodeAcrossFrame
268         and traverse each Node recursively.
269
270         No new tests since the function is only available in debug builds.
271
272         * dom/Node.cpp:
273         (WebCore::showSubTreeAcrossFrame):
274         (WebCore::Node::showTreeForThisAcrossFrame):
275
276 2011-06-16  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
277
278         Reviewed by Kent Tamura.
279
280         [EFL] Move Initialization of defaultFontSize to top of file.
281         https://bugs.webkit.org/show_bug.cgi?id=62787
282
283         * platform/efl/RenderThemeEfl.cpp: Move Initialize code of defaultFontSize to top.
284
285 2011-06-16  Sheriff Bot  <webkit.review.bot@gmail.com>
286
287         Unreviewed, rolling out r88796.
288         http://trac.webkit.org/changeset/88796
289         https://bugs.webkit.org/show_bug.cgi?id=62790
290
291         It made fast/dom/nodesFromRect-basic.html time out on Qt,
292         64-bit, debug mode (Requested by Ossy on #webkit).
293
294         * bridge/qt/qt_runtime.cpp:
295         (JSC::Bindings::convertValueToQVariant):
296
297 2011-06-16  Adam Barth  <abarth@webkit.org>
298
299         Reviewed by Eric Seidel.
300
301         Remove HTMLVideoElement::processingUserGesture
302         https://bugs.webkit.org/show_bug.cgi?id=62784
303
304         HTMLMediaElement shouldn't have its own notion of the user gesture
305         state.  It should just use the normal user gesture state.  Also,
306         there's no point in having the bindings send the user gesture state in
307         a boolean parameter.
308
309         * WebCore.exp.in:
310         * html/HTMLMediaElement.cpp:
311         (WebCore::HTMLMediaElement::removedFromDocument):
312         (WebCore::HTMLMediaElement::load):
313         (WebCore::HTMLMediaElement::play):
314         (WebCore::HTMLMediaElement::pause):
315         (WebCore::HTMLMediaElement::beginScrubbing):
316         (WebCore::HTMLMediaElement::resume):
317         * html/HTMLMediaElement.h:
318         * html/HTMLMediaElement.idl:
319         * html/HTMLVideoElement.cpp:
320         (WebCore::HTMLVideoElement::webkitEnterFullscreen):
321         * html/HTMLVideoElement.h:
322         (WebCore::HTMLVideoElement::webkitEnterFullScreen):
323         * html/HTMLVideoElement.idl:
324         * html/MediaDocument.cpp:
325         (WebCore::MediaDocument::defaultEventHandler):
326         * html/shadow/MediaControlElements.cpp:
327         (WebCore::MediaControlSeekButtonElement::defaultEventHandler):
328
329 2011-06-16  Sheriff Bot  <webkit.review.bot@gmail.com>
330
331         Unreviewed, rolling out r89011.
332         http://trac.webkit.org/changeset/89011
333         https://bugs.webkit.org/show_bug.cgi?id=62789
334
335         Broke mac build (Requested by vitalyr_ on #webkit).
336
337         * platform/chromium/ScrollAnimatorChromiumMac.h:
338         * platform/chromium/ScrollAnimatorChromiumMac.mm:
339         (-[ScrollAnimationHelperDelegate _immediateScrollToPoint:]):
340         (-[ScrollbarPainterControllerDelegate scrollerImpPair:updateScrollerStyleForNewRecommendedScrollerStyle:]):
341         (WebCore::ScrollAnimatorChromiumMac::ScrollAnimatorChromiumMac):
342         (WebCore::ScrollAnimatorChromiumMac::scroll):
343         (WebCore::ScrollAnimatorChromiumMac::handleWheelEvent):
344         (WebCore::ScrollAnimatorChromiumMac::smoothScrollWithEvent):
345         (WebCore::ScrollAnimatorChromiumMac::beginScrollGesture):
346         (WebCore::ScrollAnimatorChromiumMac::snapRubberBand):
347         (WebCore::ScrollAnimatorChromiumMac::snapRubberBandTimerFired):
348         * platform/chromium/ScrollbarOverlayUtilitiesChromiumMac.h:
349         * platform/chromium/ScrollbarOverlayUtilitiesChromiumMac.mm:
350
351 2011-06-16  Sailesh Agrawal  <sail@chromium.org>
352
353         Reviewed by James Robinson.
354
355         [Chromium] Update forked ScrollAnimatorChromiumMac.mm/h
356         https://bugs.webkit.org/show_bug.cgi?id=62779
357
358         Updated ScrollAnimatorChromiumMac.mm/h with the latest code in WebCore/platform/mac/ScrollAnimatorMac.mm/h
359
360         * platform/chromium/ScrollAnimatorChromiumMac.h:
361         (WebCore::ScrollAnimatorChromiumMac::setNeedsScrollerStyleUpdate):
362         (WebCore::ScrollAnimatorChromiumMac::needsScrollerStyleUpdate):
363         * platform/chromium/ScrollAnimatorChromiumMac.mm:
364         (-[ScrollAnimationHelperDelegate _immediateScrollToPoint:]):
365         (-[ScrollbarPainterControllerDelegate scrollerImpPair:updateScrollerStyleForNewRecommendedScrollerStyle:]):
366         (WebCore::ScrollAnimatorChromiumMac::ScrollAnimatorChromiumMac):
367         (WebCore::ScrollAnimatorChromiumMac::scroll):
368         (WebCore::ScrollAnimatorChromiumMac::immediateScrollToPointForScrollAnimation):
369         (WebCore::isScrollingLeftAndShouldNotRubberBand):
370         (WebCore::isScrollingRightAndShouldNotRubberBand):
371         (WebCore::ScrollAnimatorChromiumMac::handleWheelEvent):
372         (WebCore::ScrollAnimatorChromiumMac::smoothScrollWithEvent):
373         (WebCore::ScrollAnimatorChromiumMac::beginScrollGesture):
374         (WebCore::ScrollAnimatorChromiumMac::snapRubberBand):
375         (WebCore::ScrollAnimatorChromiumMac::snapRubberBandTimerFired):
376         (WebCore::ScrollAnimatorChromiumMac::setIsActive):
377         (WebCore::ScrollAnimatorChromiumMac::updateScrollerStyle):
378         * platform/chromium/ScrollbarOverlayUtilitiesChromiumMac.h:
379         * platform/chromium/ScrollbarOverlayUtilitiesChromiumMac.mm:
380         (wkScrollbarPainterControllerStyle):
381
382 2011-06-15  Mikhail Naganov  <mnaganov@chromium.org>
383
384         Reviewed by Pavel Feldman.
385
386         WebInspector [Chromium]: Make heap snapshots UI more responsive.
387         https://bugs.webkit.org/show_bug.cgi?id=62360
388
389         Two changes have been made:
390           - when we request elements, sort array only partially;
391           - when populating children, do it in batches;
392
393         * WebCore.gypi:
394         * WebCore.vcproj/WebCore.vcproj:
395         * inspector/front-end/DetailedHeapshotGridNodes.js:
396         (WebInspector.HeapSnapshotGridNode.prototype.populateChildren.callSerialize):
397         (WebInspector.HeapSnapshotGridNode.prototype.populateChildren.childrenRetrieved):
398         (WebInspector.HeapSnapshotGridNode.prototype.populateChildren):
399         * inspector/front-end/HeapSnapshot.js:
400         (WebInspector.HeapSnapshotFilteredOrderedIterator):
401         (WebInspector.HeapSnapshotFilteredOrderedIterator.prototype.serializeNextItems):
402         (WebInspector.HeapSnapshotFilteredOrderedIterator.prototype.sortAndRewind):
403         (WebInspector.HeapSnapshotEdgesProvider.prototype.sort):
404         (WebInspector.HeapSnapshotNodesProvider.prototype.sort):
405         * inspector/front-end/HeapSnapshotWorker.js:
406         * inspector/front-end/PartialQuickSort.js: Added.
407         * inspector/front-end/WebKit.qrc:
408         * inspector/front-end/inspector.html:
409
410 2011-06-15  Adam Barth  <abarth@webkit.org>
411
412         Reviewed by Eric Seidel.
413
414         Remove Event::fromUserGesture
415         https://bugs.webkit.org/show_bug.cgi?id=62778
416
417         This function is a remnant from the old user-gesture design.  The list
418         of events here is redundant with our selection of call sites for
419         setting the user gesture indicator.
420
421         As part of this patch, I've also cleaned up the implementation of
422         UserGestureIndicator itself to always be definite about whether we're
423         processing a user gesture.  We now start out in a definite state (no
424         user gesture) and inductively state in a definite state.
425
426         * WebCore.exp.in:
427         * bindings/js/ScriptController.cpp:
428         (WebCore::ScriptController::processingUserGesture):
429         * bindings/v8/ScriptController.cpp:
430         (WebCore::ScriptController::processingUserGesture):
431         * dom/Event.cpp:
432         * dom/Event.h:
433         * dom/UserGestureIndicator.cpp:
434         (WebCore::isDefinite):
435         (WebCore::UserGestureIndicator::UserGestureIndicator):
436         (WebCore::UserGestureIndicator::~UserGestureIndicator):
437         * dom/UserGestureIndicator.h:
438         (WebCore::UserGestureIndicator::processingUserGesture):
439         * html/MediaDocument.cpp:
440         (WebCore::MediaDocument::defaultEventHandler):
441         * html/shadow/MediaControlElements.cpp:
442         (WebCore::MediaControlSeekButtonElement::defaultEventHandler):
443         * html/shadow/TextControlInnerElements.cpp:
444         (WebCore::InputFieldSpeechButtonElement::defaultEventHandler):
445
446 2011-06-08  Keishi Hattori  <keishi@webkit.org>
447
448         Reviewed by Kent Tamura.
449
450         Fix range element not updating when value attribute is set with JS
451         https://bugs.webkit.org/show_bug.cgi?id=61857
452
453         Test: fast/forms/range-set-attribute.html
454
455         * html/RangeInputType.cpp:
456         (WebCore::RangeInputType::minOrMaxAttributeChanged): Changed to only sanitize the value when the dirty value flag is true.
457
458 2011-06-15  Adam Barth  <abarth@webkit.org>
459
460         Unreviewed.  (Technically I should get this reviewed, but I
461         accidentally committed part of this patch in my previous commit,
462         causing a build break.)
463
464         Remove ScriptController::m_processingTimerCallback
465         https://bugs.webkit.org/show_bug.cgi?id=62776
466
467         This variable is unused.  (It used to be used in a user gesture detection hack.)
468
469         * bindings/js/ScheduledAction.cpp:
470         (WebCore::ScheduledAction::execute):
471         * bindings/js/ScriptController.cpp:
472         (WebCore::ScriptController::ScriptController):
473         * bindings/js/ScriptController.h:
474         * bindings/v8/ScriptController.cpp:
475         (WebCore::ScriptController::ScriptController):
476         * bindings/v8/ScriptController.h:
477
478 2011-06-15  Kent Tamura  <tkent@chromium.org>
479
480         Reviewed by Dimitri Glazkov.
481
482         [Chromium][Qt] Some slider clicking tests fail.
483         https://bugs.webkit.org/show_bug.cgi?id=62683
484
485         When we pressed a mouse button on a slider thumb,
486         SliderThumbElement::startDragging() were called twice.
487          - From SliderThumbElement::defaultEventHandler(), and
488          - from RangeInputType::handleMouseDownEvent()
489         The latter is not needed. We should call setDefaultHandled() correctly.
490
491         * html/RangeInputType.cpp:
492         (WebCore::RangeInputType::handleMouseDownEvent): Calls setDefaultHandled()
493         * html/shadow/SliderThumbElement.cpp:
494         (WebCore::SliderThumbElement::setPositionFromPoint): Remove FIXME comments.
495         (WebCore::SliderThumbElement::defaultEventHandler): Calls setDefaultHandled()
496
497 2011-06-15  Adam Barth  <abarth@webkit.org>
498
499         Reviewed by Anders Carlsson.
500
501         Remove ScriptController::isJavaScriptAnchorNavigation
502         https://bugs.webkit.org/show_bug.cgi?id=62775
503
504         This function no longer plays a role in the user gesture code now that
505         we're not encoding the user gesture state into the ScriptSourceCode
506         URL.
507
508         * bindings/js/ScriptController.cpp:
509         (WebCore::ScriptController::processingUserGesture):
510         * bindings/js/ScriptController.h:
511         * bindings/v8/ScriptController.cpp:
512         (WebCore::ScriptController::processingUserGesture):
513
514 2011-06-15  Adam Barth  <abarth@webkit.org>
515
516         Reviewed by Eric Seidel.
517
518         Remove ScriptController::setAllowPopupsFromPlugin
519         https://bugs.webkit.org/show_bug.cgi?id=62706
520
521         This API is just a poor man's UserGestureIndicator.  We should use the
522         real deal.
523
524         * bindings/js/ScriptController.cpp:
525         (WebCore::ScriptController::ScriptController):
526         (WebCore::ScriptController::processingUserGesture):
527         * bindings/js/ScriptController.h:
528         * bindings/v8/NPV8Object.cpp:
529         (_NPN_EvaluateHelper):
530         * bindings/v8/ScriptController.cpp:
531         (WebCore::ScriptController::ScriptController):
532         (WebCore::ScriptController::processingUserGesture):
533         * bindings/v8/ScriptController.h:
534
535 2011-06-15  Adam Barth  <abarth@webkit.org>
536
537         Reviewed by Eric Seidel.
538
539         Remove forceUserGesture bool in favor of UserGestureIndicator
540         https://bugs.webkit.org/show_bug.cgi?id=62702
541
542         This patch is an intermediate step towards removing the
543         forceUserGesture bool.  In this patch, we use the user gesture
544         indicator to store the gesture state instead of encoding it in the URL
545         of the script source code.  In a future patch, we'll push the indicator
546         higher up the stack, closer to the reason for setting it.
547
548         * bindings/ScriptControllerBase.cpp:
549         (WebCore::ScriptController::executeScript):
550         (WebCore::ScriptController::executeIfJavaScriptURL):
551         * bindings/js/ScriptController.cpp:
552         (WebCore::ScriptController::executeScriptInWorld):
553
554 2011-06-15  Rob Buis  <rbuis@rim.com>
555
556         Reviewed by Darin Adler.
557
558         Try to use fastGetAttribute where possible
559         https://bugs.webkit.org/show_bug.cgi?id=62747
560
561         Use the fast versions of get/hasAttribute where we can.
562
563         No new tests since this is a simple cleanup.
564
565         * svg/SVGAElement.cpp:
566         (WebCore::SVGAElement::title):
567         (WebCore::SVGAElement::defaultEventHandler):
568         * svg/SVGAltGlyphElement.cpp:
569         (WebCore::SVGAltGlyphElement::glyphRef):
570         (WebCore::SVGAltGlyphElement::format):
571         (WebCore::SVGAltGlyphElement::glyphElement):
572         * svg/SVGAnimateMotionElement.cpp:
573         (WebCore::SVGAnimateMotionElement::rotateMode):
574         (WebCore::SVGAnimateMotionElement::animationPath):
575         * svg/SVGAnimationElement.cpp:
576         (WebCore::SVGAnimationElement::animationMode):
577         (WebCore::SVGAnimationElement::calcMode):
578         (WebCore::SVGAnimationElement::attributeType):
579         (WebCore::SVGAnimationElement::toValue):
580         (WebCore::SVGAnimationElement::byValue):
581         (WebCore::SVGAnimationElement::fromValue):
582         (WebCore::SVGAnimationElement::isAdditive):
583         (WebCore::SVGAnimationElement::isAccumulated):
584         (WebCore::SVGAnimationElement::startedActiveInterval):
585         * svg/SVGElement.cpp:
586         (WebCore::SVGElement::xmlbase):
587         * svg/SVGFontElement.cpp:
588         (WebCore::SVGFontElement::ensureGlyphCache):
589         * svg/SVGFontFaceElement.cpp:
590         (WebCore::SVGFontFaceElement::unitsPerEm):
591         (WebCore::SVGFontFaceElement::xHeight):
592         (WebCore::SVGFontFaceElement::horizontalOriginX):
593         (WebCore::SVGFontFaceElement::horizontalOriginY):
594         (WebCore::SVGFontFaceElement::horizontalAdvanceX):
595         (WebCore::SVGFontFaceElement::verticalOriginX):
596         (WebCore::SVGFontFaceElement::verticalOriginY):
597         (WebCore::SVGFontFaceElement::verticalAdvanceY):
598         (WebCore::SVGFontFaceElement::ascent):
599         (WebCore::SVGFontFaceElement::descent):
600         * svg/SVGFontFaceNameElement.cpp:
601         (WebCore::SVGFontFaceNameElement::srcValue):
602         * svg/SVGFontFaceUriElement.cpp:
603         (WebCore::SVGFontFaceUriElement::srcValue):
604         (WebCore::SVGFontFaceUriElement::loadFont):
605         * svg/SVGGlyphElement.cpp:
606         (WebCore::parseSVGGlyphAttribute):
607         (WebCore::SVGGlyphElement::buildGenericGlyphIdentifier):
608         (WebCore::SVGGlyphElement::buildGlyphIdentifier):
609         * svg/SVGHKernElement.cpp:
610         (WebCore::SVGHKernElement::buildHorizontalKerningPair):
611         * svg/SVGSVGElement.cpp:
612         (WebCore::SVGSVGElement::contentScriptType):
613         (WebCore::SVGSVGElement::contentStyleType):
614         * svg/SVGStyleElement.cpp:
615         (WebCore::SVGStyleElement::type):
616         (WebCore::SVGStyleElement::media):
617         (WebCore::SVGStyleElement::title):
618         * svg/SVGVKernElement.cpp:
619         (WebCore::SVGVKernElement::buildVerticalKerningPair):
620         * svg/animation/SVGSMILElement.cpp:
621         (WebCore::SVGSMILElement::insertedIntoDocument):
622         (WebCore::SVGSMILElement::parseMappedAttribute):
623         (WebCore::SVGSMILElement::restart):
624         (WebCore::SVGSMILElement::fill):
625         (WebCore::SVGSMILElement::xlinkHref):
626         (WebCore::SVGSMILElement::dur):
627         (WebCore::SVGSMILElement::repeatDur):
628         (WebCore::SVGSMILElement::repeatCount):
629         (WebCore::SVGSMILElement::maxValue):
630         (WebCore::SVGSMILElement::minValue):
631
632 2011-06-15  Abhishek Arya  <inferno@chromium.org>
633
634         Reviewed by Antti Koivisto.
635
636         Revert speculative fix in r84151. It caused some issues with
637         stylesheet lifetimes.
638         https://bugs.webkit.org/show_bug.cgi?id=62586
639
640         Tests: fast/dom/body-clone-link-decl-parent-crash.html
641                fast/dom/styled-clone-inline-style-decl-parent-crash.html
642                fast/dom/styled-not-in-document-clone-inline-style-decl-parent-crash.html
643
644         * dom/Document.cpp:
645         (WebCore::Document::removedLastRef):
646
647 2011-06-15  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
648
649         Reviewed by Kent Tamura.
650
651         [EFL] Implement animationXXX functions for Progress Tag
652         https://bugs.webkit.org/show_bug.cgi?id=62713
653
654         Progress tag need to implement acnimationXXX functions in order to show animation of 
655         progress tag. Because, RenderProgress decides to show update progress bar's animation
656         according to the functions.
657
658         * platform/efl/RenderThemeEfl.cpp:
659         (WebCore::RenderThemeEfl::animationRepeatIntervalForProgressBar):
660         (WebCore::RenderThemeEfl::animationDurationForProgressBar):
661         * platform/efl/RenderThemeEfl.h:
662
663 2011-06-15  Sam Weinig  <sam@webkit.org>
664
665         Reviewed by Alexey Proskuryakov.
666
667         Frequent crashes due to null frame below ApplicationCacheHost::scheduleLoadFallbackResourceFromApplicationCache
668         https://bugs.webkit.org/show_bug.cgi?id=62764
669
670         This is an non-reproducible high volume crash, so no test :(. 
671
672         * loader/DocumentLoader.cpp:
673         (WebCore::DocumentLoader::detachFromFrame):
674         Be conservative and stop loading when we detach a document loader from a frame.
675
676 2011-06-15  Beth Dakin  <bdakin@apple.com>
677
678         Reviewed by Simon Fraser.
679
680         https://bugs.webkit.org/show_bug.cgi?id=62746
681         Crash possible when switching scrollbar appearance preference on Mac
682         -and corresponding-
683         <rdar://problem/9323983>
684         
685         This crash happens because the current mechanism that is intended to flag 
686         ScrollAnimators as being in the page cache or not does not work correctly. 
687         Long-term the fix for this is to move the ScrollableArea HashSet to a more 
688         appropriate place. In the meantime, this patch addresses the crash by getting 
689         rid of the m_isActive bool on ScrollAnimator that was intended to represent 
690         whether or not the ScrollableArea is in the page cache. Instead, ScrollableArea 
691         implementations now have their own functions to compute whether they are in 
692         active pages. ScrollAnimator::setIsActive() needs to be kept around even though 
693         there is no bool to flip anymore because scrollbars may need to be properly 
694         updated if the appearance was switched while the document was in the page cache.
695
696         No longer call FrameView::setAnimatorsAreActive() from 
697         Document::setIsInPageCache(), instead call it in 
698         Document::documentDidBecomeActive()
699         * dom/Document.cpp:
700         (WebCore::Document::setInPageCache):
701         (WebCore::Document::documentDidBecomeActive):
702
703         ScrollableAreas can now assess whether or not they are on active pages (ie, not 
704         in the page cache).
705         * platform/ScrollableArea.h:
706         (WebCore::ScrollableArea::isOnActivePage):
707         * rendering/RenderLayer.cpp:
708         (WebCore::RenderLayer::isOnActivePage):
709         * rendering/RenderLayer.h:
710         * rendering/RenderListBox.cpp:
711         (WebCore::RenderListBox::isOnActivePage):
712         * rendering/RenderListBox.h:
713
714         A FrameView cannot access its Document when it's in the page cache, so it 
715         usually determines whether it's in the page cache by checking if its frame 
716         points to a FrameView other than itself.
717         * page/FrameView.cpp:
718         (WebCore::FrameView::isOnActivePage):
719         
720         Make sure ScrollableAreas are on active pages before setting them as 
721         active. This will not be necessary when the HashSet become a per-web page 
722         HashSet.
723         (WebCore::FrameView::setAnimatorsAreActive):
724         * page/FrameView.h:
725         
726         ScrollAnimator no longer tracks the m_isActive bool. 
727         * platform/ScrollAnimator.cpp:
728         (WebCore::ScrollAnimator::ScrollAnimator):
729         * platform/ScrollAnimator.h:
730         (WebCore::ScrollAnimator::setIsActive):
731         
732         setIsActive() now exclusively calls updateScrollStyle() if there is a pending 
733         need to do so.
734         * platform/mac/ScrollAnimatorMac.h:
735         * platform/mac/ScrollAnimatorMac.mm:
736         (WebCore::ScrollAnimatorMac::setIsActive):
737         
738         Return early if the ScrollableArea is in the page cache. 
739         (WebCore::ScrollAnimatorMac::updateScrollerStyle):
740
741 2011-06-15  Simon Fraser  <simon.fraser@apple.com>
742
743         Reviewed by Dan Bernstein.
744
745         Have Document keep track of whether scroll listeners are registered
746         https://bugs.webkit.org/show_bug.cgi?id=62757
747         
748         To avoid extra work dispatching scroll events when there are no listeners,
749         have Document keep track of whether any scroll listeners are registered,
750         just like it does for some other event types.
751
752         * dom/Document.cpp:
753         (WebCore::Document::addListenerTypeIfNeeded):
754         * dom/Document.h:
755         * dom/EventQueue.cpp:
756         (WebCore::EventQueue::enqueueOrDispatchScrollEvent):
757
758 2011-06-15  Dimitri Glazkov  <dglazkov@chromium.org>
759
760         Reviewed by Adam Barth.
761
762         Clarify FileChooser creation code.
763         https://bugs.webkit.org/show_bug.cgi?id=62756
764
765         initialize() method is only used once and that is not obvious, so just fold it into the create method.
766
767         Refactoring, no change in behavior.
768
769         * platform/FileChooser.cpp:
770         (WebCore::FileChooser::create): Folded initialize() code there.
771         * platform/FileChooser.h: Removed decl.
772
773 2011-06-15  Eric Carlson  <eric.carlson@apple.com>
774
775         Reviewed by Alexey Proskuryakov.
776
777         MediaPlayerPrivate should not know about application cache
778         https://bugs.webkit.org/show_bug.cgi?id=62648
779
780         Test: http/tests/appcache/video.html
781
782         * html/HTMLMediaElement.cpp:
783         (WebCore::createFileURLForApplicationCacheResource): Create a url for a file
784             in the application cache folder.
785         (WebCore::HTMLMediaElement::loadResource): Change url to point to file in the application
786             cache if necessary.
787         (WebCore::HTMLMediaElement::mediaLoadingFailed): Split failure logic out of setNetworkState
788             so it can be called when asked to load a file that is not in the application cache.
789         (WebCore::HTMLMediaElement::setNetworkState): Move failure logic out to mediaLoadingFailed.
790         * html/HTMLMediaElement.h:
791
792         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
793         (WebCore::MediaPlayerPrivateAVFoundation::setPreload): Remove app cache logic.
794         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:
795
796         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationObjC.h:
797         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationObjC.mm: Ditto.
798
799         * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
800         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
801         (WebCore::MediaPlayerPrivateQTKit::loadInternal): Ditto.
802
803         * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
804         (WebCore::MediaPlayerPrivateQuickTimeVisualContext::loadInternal): Ditto.
805
806 2011-06-15  Mark Pilgrim  <pilgrim@chromium.org>
807
808         Reviewed by Tony Chang.
809
810         IndexedDB: indexedDB.open() name argument is required
811         https://bugs.webkit.org/show_bug.cgi?id=62398
812
813         Test: storage/indexeddb/database-name-undefined.html
814
815         * storage/IDBFactory.idl: use appropriate IDL magic to force undefined values to null, so we handle missing arguments as well as null arguments
816
817 2011-06-15  Tony Chang  <tony@chromium.org>
818
819         Reviewed by Ojan Vafai.
820
821         Rename RenderFlexibleBox to RenderDeprecatedFlexibleBox
822         https://bugs.webkit.org/show_bug.cgi?id=62670
823
824         * CMakeLists.txt:
825         * GNUmakefile.list.am:
826         * WebCore.gypi:
827         * WebCore.order:
828         * WebCore.pro:
829         * WebCore.vcproj/WebCore.vcproj:
830         * WebCore.xcodeproj/project.pbxproj:
831         * html/shadow/MediaControlElements.cpp:
832         (WebCore::RenderMediaControlTimeDisplay::RenderMediaControlTimeDisplay):
833         (WebCore::RenderMediaControlTimeDisplay::layout):
834         * html/shadow/SliderThumbElement.cpp:
835         (WebCore::RenderSliderContainer::RenderSliderContainer):
836         (WebCore::RenderSliderContainer::layout):
837         * rendering/RenderBlock.cpp:
838         (WebCore::RenderBlock::createAnonymousBlock):
839         * rendering/RenderBox.cpp:
840         * rendering/RenderButton.cpp:
841         (WebCore::RenderButton::RenderButton):
842         (WebCore::RenderButton::addChild):
843         (WebCore::RenderButton::removeChild):
844         * rendering/RenderButton.h:
845         * rendering/RenderDeprecatedFlexibleBox.cpp:
846         (WebCore::FlexBoxIterator::FlexBoxIterator):
847         (WebCore::FlexBoxIterator::reset):
848         (WebCore::FlexBoxIterator::first):
849         (WebCore::FlexBoxIterator::next):
850         (WebCore::RenderDeprecatedFlexibleBox::RenderDeprecatedFlexibleBox):
851         (WebCore::RenderDeprecatedFlexibleBox::~RenderDeprecatedFlexibleBox):
852         (WebCore::marginWidthForChild):
853         (WebCore::RenderDeprecatedFlexibleBox::calcHorizontalPrefWidths):
854         (WebCore::RenderDeprecatedFlexibleBox::calcVerticalPrefWidths):
855         (WebCore::RenderDeprecatedFlexibleBox::computePreferredLogicalWidths):
856         (WebCore::RenderDeprecatedFlexibleBox::layoutBlock):
857         (WebCore::gatherFlexChildrenInfo):
858         (WebCore::RenderDeprecatedFlexibleBox::layoutHorizontalBox):
859         (WebCore::RenderDeprecatedFlexibleBox::layoutVerticalBox):
860         (WebCore::RenderDeprecatedFlexibleBox::applyLineClamp):
861         (WebCore::RenderDeprecatedFlexibleBox::placeChild):
862         (WebCore::RenderDeprecatedFlexibleBox::allowedChildFlex):
863         (WebCore::RenderDeprecatedFlexibleBox::renderName):
864         * rendering/RenderDeprecatedFlexibleBox.h:
865         (WebCore::RenderDeprecatedFlexibleBox::avoidsFloats):
866         (WebCore::RenderDeprecatedFlexibleBox::isFlexibleBox):
867         (WebCore::RenderDeprecatedFlexibleBox::isFlexingChildren):
868         (WebCore::RenderDeprecatedFlexibleBox::isStretchingChildren):
869         (WebCore::RenderDeprecatedFlexibleBox::hasMultipleLines):
870         (WebCore::RenderDeprecatedFlexibleBox::isVertical):
871         (WebCore::RenderDeprecatedFlexibleBox::isHorizontal):
872         * rendering/RenderDetails.h: Removed the header since it wasn't actually
873               needed.  Looks like a copy/paste error from RenderButton.h.
874         * rendering/RenderFullScreen.cpp:
875         (RenderFullScreen::RenderFullScreen):
876         (RenderFullScreen::destroy):
877         * rendering/RenderFullScreen.h:
878         * rendering/RenderMenuList.cpp:
879         (WebCore::RenderMenuList::RenderMenuList):
880         (WebCore::RenderMenuList::createInnerBlock):
881         (WebCore::RenderMenuList::removeChild):
882         * rendering/RenderMenuList.h:
883         * rendering/RenderObject.cpp:
884         (WebCore::RenderObject::createObject):
885         * rendering/RenderingAllInOne.cpp:
886
887 2011-06-15  Alexander Pavlov  <apavlov@chromium.org>
888
889         Reviewed by Pavel Feldman.
890
891         Web Inspector: Serious performance regression during continuous focused element style updates
892         https://bugs.webkit.org/show_bug.cgi?id=61038
893
894         Inline style invalidation events are coalesced in the backend and sent over the wire on timer.
895
896         * inspector/Inspector.json:
897         * inspector/InspectorDOMAgent.cpp:
898         (WebCore::RevalidateStyleAttributeTask::onTimer):
899         (WebCore::InspectorDOMAgent::getAttributes):
900         (WebCore::InspectorDOMAgent::didModifyDOMAttr):
901         (WebCore::InspectorDOMAgent::styleAttributeInvalidated):
902         * inspector/InspectorDOMAgent.h:
903         * inspector/InspectorStyleSheet.cpp:
904         (WebCore::InspectorStyleSheetForInlineStyle::didModifyElementAttribute):
905         (WebCore::InspectorStyleSheetForInlineStyle::text):
906         (WebCore::InspectorStyleSheetForInlineStyle::setStyleText):
907         (WebCore::InspectorStyleSheetForInlineStyle::ensureParsedDataReady):
908         (WebCore::InspectorStyleSheetForInlineStyle::getStyleAttributeRanges):
909         * inspector/InspectorStyleSheet.h:
910         * inspector/front-end/DOMAgent.js:
911         (WebInspector.DOMAgent):
912         (WebInspector.DOMAgent.prototype._attributesUpdated):
913         (WebInspector.DOMAgent.prototype._loadNodeAttributesSoon):
914         (WebInspector.DOMAgent.prototype._loadNodeAttributes):
915         (WebInspector.DOMDispatcher.prototype.attributesUpdated):
916         (WebInspector.DOMDispatcher.prototype.inlineStyleInvalidated):
917
918 2011-06-15  Jer Noble  <jer.noble@apple.com>
919
920         Reviewed by Timothy Hatcher.
921
922         Full-screen live streams have status text in wrong location
923         https://bugs.webkit.org/show_bug.cgi?id=62733
924
925         Fix a misspelling in the user-agent stylesheet for full-screen mode.
926
927         * css/fullscreenQuickTime.css:
928         (video:-webkit-full-screen::-webkit-media-controls-status-display):
929
930 2011-06-14  Jer Noble  <jer.noble@apple.com>
931
932         Reviewed by Eric Carlson.
933
934         (AVFoundation) Apple event video appears as live stream and is not seekable
935         https://bugs.webkit.org/show_bug.cgi?id=62694
936
937         No new tests; There are no media-player port specific tests yet.
938
939         Work around a bug in apple.com live stream javascript controller library.  When an AVAsset returns an indefinite time
940         for its duration, return 0 if the asset has no tracks, and infinity otherwise.  This keeps the apple.com controller 
941         from identifying the stored stream as a live stream.
942
943         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationObjC.mm:
944         (WebCore::MediaPlayerPrivateAVFoundationObjC::platformDuration):
945
946 2011-06-15  Andrey Kosyakov  <caseq@chromium.org>
947
948        Unreviewed, rolled out r88937 (broke build on mac)
949
950         * CMakeLists.txt:
951         * GNUmakefile.list.am:
952         * WebCore.gypi:
953         * WebCore.pro:
954         * WebCore.vcproj/WebCore.vcproj:
955         * WebCore.xcodeproj/project.pbxproj:
956         * fileapi/FileReaderLoader.cpp:
957         (WebCore::FileReaderLoader::didReceiveResponse):
958         * fileapi/FileReaderLoader.h:
959         * inspector/Inspector.json:
960         * inspector/InspectorInstrumentation.cpp:
961         (WebCore::InspectorInstrumentation::didCommitLoadImpl):
962         * inspector/InspectorInstrumentation.h:
963         * inspector/InspectorResourceAgent.cpp:
964         (WebCore::InspectorResourceAgent::willSendRequest):
965         (WebCore::InspectorResourceAgent::didReceiveResponse):
966         (WebCore::InspectorResourceAgent::setInitialXHRContent):
967         (WebCore::InspectorResourceAgent::InspectorResourceAgent):
968         * inspector/InspectorResourceAgent.h:
969         * inspector/NetworkResourcesData.cpp: Removed.
970         * inspector/NetworkResourcesData.h: Removed.
971         * inspector/front-end/NetworkManager.js:
972         (WebInspector.NetworkManager.prototype.requestContent):
973         (WebInspector.NetworkDispatcher.prototype._appendRedirect):
974         * inspector/front-end/NetworkPanel.js:
975         (WebInspector.NetworkPanel.prototype._appendResource):
976         (WebInspector.NetworkPanel.prototype._frameNavigated):
977         * loader/DocumentThreadableLoader.cpp:
978         (WebCore::DocumentThreadableLoader::didReceiveResponse):
979         (WebCore::DocumentThreadableLoader::receivedCancellation):
980         (WebCore::DocumentThreadableLoader::loadRequest):
981         * loader/DocumentThreadableLoader.h:
982         * loader/ThreadableLoaderClientWrapper.h:
983         (WebCore::ThreadableLoaderClientWrapper::didReceiveResponse):
984         (WebCore::ThreadableLoaderClientWrapper::didReceiveAuthenticationCancellation):
985         * loader/WorkerThreadableLoader.cpp:
986         (WebCore::workerContextDidReceiveResponse):
987         (WebCore::WorkerThreadableLoader::MainThreadBridge::didReceiveResponse):
988         (WebCore::workerContextDidReceiveAuthenticationCancellation):
989         (WebCore::WorkerThreadableLoader::MainThreadBridge::didReceiveAuthenticationCancellation):
990         * loader/WorkerThreadableLoader.h:
991         * notifications/Notification.cpp:
992         (WebCore::Notification::didReceiveResponse):
993         (WebCore::Notification::didReceiveAuthenticationCancellation):
994         * notifications/Notification.h:
995         * page/EventSource.cpp:
996         (WebCore::EventSource::didReceiveResponse):
997         * page/EventSource.h:
998         * xml/XMLHttpRequest.cpp:
999         (WebCore::XMLHttpRequest::createRequest):
1000         (WebCore::XMLHttpRequest::didReceiveResponse):
1001         (WebCore::XMLHttpRequest::didReceiveAuthenticationCancellation):
1002         * xml/XMLHttpRequest.h:
1003
1004 2011-06-15  Pavel Feldman  <pfeldman@google.com>
1005
1006         Reviewed by Yury Semikhatsky.
1007
1008         Web Inspector: introduce context menu on ImageView with Copy and Open in new tab actions.
1009         https://bugs.webkit.org/show_bug.cgi?id=62727
1010
1011         * English.lproj/localizedStrings.js:
1012         * inspector/front-end/ImageView.js:
1013         (WebInspector.ImageView.prototype._base64ToSize):
1014         (WebInspector.ImageView.prototype._contextMenu):
1015         (WebInspector.ImageView.prototype._copyImageURL):
1016         (WebInspector.ImageView.prototype._openInNewTab):
1017
1018 2011-06-15  Andrey Kosyakov  <caseq@chromium.org>
1019
1020         Reviewed by Pavel Feldman.
1021
1022         Web Inspector: provide unique identifiers for frames
1023         https://bugs.webkit.org/show_bug.cgi?id=62721
1024
1025         * inspector/InspectorInstrumentation.cpp:
1026         (WebCore::InspectorInstrumentation::frameDestroyedImpl):
1027         * inspector/InspectorInstrumentation.h:
1028         (WebCore::InspectorInstrumentation::frameDestroyed):
1029         * inspector/InspectorPageAgent.cpp:
1030         (WebCore::InspectorPageAgent::frameForId):
1031         (WebCore::InspectorPageAgent::frameId):
1032         (WebCore::InspectorPageAgent::frameDestroyed):
1033         * inspector/InspectorPageAgent.h:
1034         * page/Frame.cpp:
1035         (WebCore::Frame::~Frame):
1036
1037 2011-06-15  Andrey Kosyakov  <caseq@chromium.org>
1038
1039         Unreviewed build fix: comment unused parameter names.
1040
1041         * loader/ThreadableLoaderClient.h:
1042         (WebCore::ThreadableLoaderClient::didReceiveResponse):
1043         (WebCore::ThreadableLoaderClient::didReceiveAuthenticationCancellation):
1044
1045 2011-06-15  Pavel Podivilov  <podivilov@chromium.org>
1046
1047         Reviewed by Yury Semikhatsky.
1048
1049         Web Inspector: script select can be too wide.
1050         https://bugs.webkit.org/show_bug.cgi?id=62701
1051
1052         * inspector/front-end/ScriptsPanel.js:
1053         (WebInspector.ScriptsPanel.prototype._displayNameForScriptURL):
1054         (WebInspector.ScriptsPanel.prototype._createSourceFrame):
1055         (WebInspector.SourceFrameDelegateForScriptsPanel):
1056         (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.suggestedFileName):
1057         * inspector/front-end/SourceFile.js:
1058
1059 2011-06-15  Noel Gordon  <noel.gordon@gmail.com>
1060
1061         Reviewed by Eric Seidel.
1062
1063         Draw CSS outline style for render widgets: iframe, embed, object, applet.
1064         https://bugs.webkit.org/show_bug.cgi?id=57439
1065
1066         Draw CSS outlines for render widgets: iframe, embed, object, applet. These elements can
1067         be focused (via clicks or tabIndex) but should not have a visible focus ring by default.
1068
1069         Tests: fast/replaced/no-focus-ring-embed.html
1070                fast/replaced/no-focus-ring-iframe.html
1071                fast/replaced/no-focus-ring-object.html
1072                fast/replaced/outline-replaced-elements.html
1073
1074         * css/html.css:
1075         (applet:focus, embed:focus, iframe:focus, object:focus): Default to no focus ring.
1076         * rendering/RenderWidget.cpp:
1077         (WebCore::RenderWidget::paint): Paint the render widget CSS outline style.
1078
1079 2011-06-15  Steve Block  <steveblock@google.com>
1080
1081         Reviewed by Tony Gentilcore.
1082
1083         V8PerformanceCustom.cpp lacks WEB_TIMING guards
1084         https://bugs.webkit.org/show_bug.cgi?id=62689
1085
1086         No new tests, build fix only.
1087
1088         * bindings/v8/custom/V8PerformanceCustom.cpp:
1089
1090 2011-06-15  Sheriff Bot  <webkit.review.bot@gmail.com>
1091
1092         Unreviewed, rolling out r88916.
1093         http://trac.webkit.org/changeset/88916
1094         https://bugs.webkit.org/show_bug.cgi?id=62728
1095
1096         Broke a bunch of layout tests on chromium (Requested by
1097         podivilov on #webkit).
1098
1099         * inspector/front-end/ScriptsPanel.js:
1100         (WebInspector.ScriptsPanel.prototype._createSourceFrame):
1101         (WebInspector.SourceFrameDelegateForScriptsPanel):
1102         (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.suggestedFileName):
1103         * inspector/front-end/SourceFile.js:
1104         (WebInspector.SourceFile.prototype.get displayName):
1105
1106 2011-06-15  Pavel Podivilov  <podivilov@chromium.org>
1107
1108         Reviewed by Yury Semikhatsky.
1109
1110         Web Inspector: script links are displayed with original line number in pretty-print mode.
1111         https://bugs.webkit.org/show_bug.cgi?id=62282
1112
1113         * inspector/front-end/DebuggerPresentationModel.js:
1114         (WebInspector.DebuggerPresentationModel):
1115         (WebInspector.DebuggerPresentationModel.prototype.registerAnchor):
1116         (WebInspector.DebuggerPresentationModel.prototype._updateAnchor.didGetUILocation):
1117         (WebInspector.DebuggerPresentationModel.prototype._updateAnchor):
1118         (WebInspector.DebuggerPresentationModel.prototype.setFormatSourceFiles):
1119         (WebInspector.DebuggerPresentationModel.prototype._debuggerReset):
1120         * inspector/front-end/NetworkPanel.js:
1121         (WebInspector.NetworkPanel.prototype.showAnchorLocation):
1122         (WebInspector.NetworkPanel.prototype._showResource):
1123         * inspector/front-end/Panel.js:
1124         (WebInspector.Panel.prototype.createAnchor):
1125         (WebInspector.Panel.prototype.formatAnchorText):
1126         * inspector/front-end/ResourcesPanel.js:
1127         (WebInspector.ResourcesPanel.prototype.showAnchorLocation):
1128         * inspector/front-end/ScriptsPanel.js:
1129         (WebInspector.ScriptsPanel.prototype.createAnchor.):
1130         (WebInspector.ScriptsPanel.prototype.createAnchor):
1131         (WebInspector.ScriptsPanel.prototype.showAnchorLocation.didGetUILocation):
1132         (WebInspector.ScriptsPanel.prototype.showAnchorLocation):
1133         * inspector/front-end/inspector.js:
1134         (WebInspector._showAnchorLocation):
1135         (WebInspector.linkifyResourceAsNode):
1136
1137 2011-06-14  Hans Wennborg  <hans@chromium.org>
1138
1139         Reviewed by Tony Gentilcore.
1140
1141         IndexedDB: Use fileExists() first when checking if SQLite db exists
1142         https://bugs.webkit.org/show_bug.cgi?id=62638
1143
1144         In IDBSQLiteBackingStore::backingStoreExists(), which is used to check
1145         if a SQLite database exists and should be considered for migration,
1146         check if the file exists first.
1147
1148         Trying to open a SQLite database for a non-existing file prints a
1149         noisy error message in debug builds.
1150
1151         No new functionality, no new tests.
1152
1153         * storage/IDBSQLiteBackingStore.cpp:
1154         (WebCore::IDBSQLiteBackingStore::backingStoreExists):
1155
1156 2011-06-14  Alexander Pavlov  <apavlov@chromium.org>
1157
1158         Reviewed by Yury Semikhatsky.
1159
1160         Web Inspector: "data" URLs not detected in CSS url(...) values properly
1161         https://bugs.webkit.org/show_bug.cgi?id=62643
1162
1163         * inspector/front-end/inspector.js:
1164         (WebInspector.completeURL):
1165
1166 2011-06-15  Pavel Feldman  <pfeldman@google.com>
1167
1168         Reviewed by Yury Semikhatsky.
1169
1170         Web Inspector: [REGRESSION] errors in watches and in console are not rendered in red.
1171         https://bugs.webkit.org/show_bug.cgi?id=62708
1172
1173         Test: inspector/debugger/error-in-watch-expressions.html
1174
1175         * inspector/front-end/RemoteObject.js:
1176         * inspector/front-end/WatchExpressionsSidebarPane.js:
1177         (WebInspector.WatchExpressionsSection.prototype.update.appendResult):
1178         (WebInspector.WatchExpressionsSection.prototype.update):
1179         (WebInspector.WatchExpressionTreeElement.prototype.update):
1180         * inspector/front-end/inspector.css:
1181         (.console-error-level .console-message-text, .console-error-level .section .header .title):
1182         (.console-formatted-object, .console-formatted-node):
1183
1184 2011-06-15  Carlos Garcia Campos  <cgarcia@igalia.com>
1185
1186         Unreviewed. Remove unneeded constructor declaration added by mistake in r88800.
1187
1188         * platform/gtk/GtkAuthenticationDialog.h:
1189
1190 2011-06-15  Pavel Podivilov  <podivilov@chromium.org>
1191
1192         Reviewed by Yury Semikhatsky.
1193
1194         Web Inspector: script select can be too wide.
1195         https://bugs.webkit.org/show_bug.cgi?id=62701
1196
1197         * inspector/front-end/ScriptsPanel.js:
1198         (WebInspector.ScriptsPanel.prototype._displayNameForScriptURL):
1199         (WebInspector.ScriptsPanel.prototype._createSourceFrame):
1200         (WebInspector.SourceFrameDelegateForScriptsPanel):
1201         (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.suggestedFileName):
1202         * inspector/front-end/SourceFile.js:
1203
1204 2011-06-15  Nikolas Zimmermann  <nzimmermann@rim.com>
1205
1206         Reviewed by David Hyatt.
1207
1208         CSS 2.1: Support replaced elements with relative intrinsic sizes
1209         https://bugs.webkit.org/show_bug.cgi?id=15849
1210
1211         CSS 2.1 failure: html4/replaced-intrinsic-ratio-001
1212         https://bugs.webkit.org/show_bug.cgi?id=53099
1213
1214         Generalize the recently added SVG specific host <-> embedded document size-negotiation used
1215         to support embedding SVGs with intrinsic ratio/size via <iframe>/<object>/<embed> from 
1216         RenderPart right into RenderReplaced. It will be used to share the size-negotiation logic
1217         with RenderImage, which still has its own way to negotiate with the embedded SVG to figure
1218         out its size (and it's broken in several ways).
1219
1220         This fully implements intrinsic size/ratio support for replaced elements, as specified in:
1221         http://www.w3.org/TR/CSS21/visudet.html#inline-replaced-width
1222         http://www.w3.org/TR/CSS21/visudet.html#inline-replaced-height
1223
1224         RenderImage has not yet been converted to use the new size negotiation logic, this is just
1225         the ground work. As soon as this is done all ways of embedding SVG is unified in a single
1226         way: the same size negotiation logic used for object/embed/iframe/img for SVG documents.
1227
1228         To use it for non-SVG target documents, it's just a matter of implementing
1229         "RenderBox* embeddedContentBox()" which needs to return the root renderer of the embedded document.
1230         For SVG it's the embedded document RenderSVGRoot renderer, associated with the outermost <svg> element.
1231         It's easy to implement this for embedded MathML documents or PDF documents now, if needed.
1232
1233         Imported all CSS 2.1 tests named *replaced* and *intrinsic* tests, except the still failing background-intrinsic-*
1234         which embed SVGs through background-image or <img>, which still use the old size-negotiation logic.
1235
1236         Tests: css2.1/20110323/* (203 tests + support files)
1237                svg/zoom/page/zoom-replaced-intrinsic-ratio-001.htm (same as replaced-intrinsic-ratio-001.htm, but zooms in a few times, to see whether all boxes react properly)
1238                http/tests/misc/object-embedding-svg-delayed-size-negotiation-2.htm (same as replaced-intrinsic-ratio-001.htm, but with delayed loading of the SVG to test late-size-negotiation)
1239
1240         This fixes:
1241         css2.1/20110323/replaced-intrinsic-ratio-001.htm
1242         css2.1/20110323/replaced-intrinsic-003.htm
1243         css2.1/20110323/block-replaced-height-007.htm
1244         css2.1/20110323/float-replaced-height-007.htm
1245         css2.1/20110323/inline-block-replaced-height-007.htm
1246         css2.1/20110323/inline-replaced-height-007.htm
1247
1248         We're now the first to properly handle replaced-intrinsic-ratio-001.htm out of Opera/FF/IE9 :-)
1249         This is an important piece of embedding SVGs though, so glad that we finally have it.
1250
1251         * rendering/RenderBlock.cpp:
1252         (WebCore::RenderBlock::layoutBlockChildren): Use new helper needsPreferredWidthsRecalculation() to figure out whether pref widths need to be calculated.
1253         (WebCore::RenderBlock::layoutPositionedObjects): Ditto.
1254         * rendering/RenderBlockLineLayout.cpp:
1255         (WebCore::RenderBlock::layoutInlineChildren): Ditto.
1256         * rendering/RenderBox.cpp:
1257         (WebCore::RenderBox::needsPreferredWidthsRecalculation): Refactored and extended from RenderBlock*. We have to recalculate pref widths upon layout
1258                                                                  if we embed a document with an intrinsic ratio/size, extensively covered by
1259                                                                  svg/zoom/page/zoom-replaced-intrinsic-ratio-001.htm
1260         * rendering/RenderBox.h:
1261         (WebCore::RenderBox::computeIntrinsicRatioInformation): New virtual function, only implemented in RenderPart so far. This generalizes the existing method from RenderPart.
1262         * rendering/RenderPart.cpp:
1263         (WebCore::RenderPart::needsPreferredWidthsRecalculation): Always recompute pref widths of we have an embeddedContentBox() - it may depend on our size.
1264         (WebCore::RenderPart::embeddedContentBox): Return the RenderSVGRoot box of the embedded SVG document, if we're embedded through object/embed/iframe (soon img as well).
1265         * rendering/RenderPart.h:
1266         * rendering/RenderReplaced.cpp:
1267         (WebCore::RenderReplaced::computeIntrinsicLogicalWidth): New helper function, that either returns a fixed intrinsic size (set by a class inheriting from us) or the embedded target document size.
1268         (WebCore::RenderReplaced::computeIntrinsicLogicalHeight): Ditto.
1269         (WebCore::RenderReplaced::computeReplacedLogicalWidth): Full implementation of: 10.3.2 Inline, replaced elements: http://www.w3.org/TR/CSS21/visudet.html#inline-replaced-width.
1270         (WebCore::RenderReplaced::computeReplacedLogicalHeight): Full implementation of: 10.6.2 Inline, replaced elements: http://www.w3.org/TR/CSS21/visudet.html#inline-replaced-height
1271         * rendering/RenderReplaced.h:
1272         (WebCore::RenderReplaced::embeddedContentBox):
1273         * rendering/svg/RenderSVGRoot.cpp:
1274         (WebCore::RenderSVGRoot::computeReplacedLogicalWidth): Fix problem when zooming replaced-intrinsic-ratio-001.htm: if ownerWidth is auto, don't apply style()->effectiveZoom() twice.
1275         (WebCore::RenderSVGRoot::computeReplacedLogicalHeight): Ditto for ownerHeight auto.
1276         * rendering/svg/RenderSVGRoot.h: Mark 'computeIntrinsicRatioInformation' virtual.
1277         
1278 2011-06-09  MORITA Hajime  <morrita@google.com>
1279
1280         Reviewed by Dimitri Glazkov.
1281
1282         ShadowContentElement should detach its inclusions before attaching them.
1283         https://bugs.webkit.org/show_bug.cgi?id=62428
1284
1285         - On ShadowContentElement::attach(), changed inclusion attach scheme
1286           from per-node reattach() to detach()-all-and-attach()-them.  This
1287           eliminates attach() order problems which ShadowContentElement
1288           possibly has.
1289         - Changed ShadowContentElement to have m_inclusions as a member variable,
1290           which will be used by upcoming changes.
1291         - Moved attach() code from ShadowContentSelector to ShadowContentElement
1292           because the element now owns the inclusion list.
1293         
1294         No new tests. No visible behavioral change yet.
1295
1296         * dom/ShadowContentElement.cpp:
1297         (WebCore::ShadowContentElement::attach):
1298         (WebCore::ShadowContentElement::detach): Added.
1299         * dom/ShadowContentElement.h:
1300         (WebCore::ShadowContentElement::inclusionAt): Added.
1301         (WebCore::ShadowContentElement::inclusionCount): Added.
1302         (WebCore::toShadowContentElement):
1303         * dom/ShadowContentSelector.cpp: Removed attachChildrenFor()
1304         (WebCore::ShadowContentSelector::selectInclusion): Extracted from attachChildrenFor()
1305         (WebCore::ShadowContentSelector::willAttachContentFor): Extracted from attachChildrenFor()
1306         (WebCore::ShadowContentSelector::didAttachContent): Extracted from attachChildrenFor()
1307         (WebCore::ShadowContentSelector::activeElement):
1308         * dom/ShadowContentSelector.h:
1309
1310 2011-06-14  David Kilzer  <ddkilzer@apple.com>
1311
1312         <http://webkit.org/b/62677> Part 2/2: Remove duplicate header entries in WebCore project file
1313
1314         Reviewed by Darin Adler.
1315
1316         Most of the DOMSVG*.h headers were added in late 2006, and then
1317         duplicated by late 2007.  They've been in the tree a long time.
1318
1319         * WebCore.xcodeproj/project.pbxproj: Let Xcode 4 remove
1320         duplicate header entries.
1321
1322 2011-06-14  David Kilzer  <ddkilzer@apple.com>
1323
1324         <http://webkit.org/b/62677> Part 1/2: Remove duplicate header entries in WebCore project file
1325
1326         Reviewed by Darin Adler.
1327
1328         These headers were added as duplicates in r83256:
1329
1330             DefaultAudioDestinationNode.h
1331             JSOfflineAudioCompletionEvent.h
1332             OfflineAudioCompletionEvent.h
1333             OfflineAudioDestinationNode.h
1334
1335         The following duplicates were introduced in r84053 (after having
1336         been originally added in r83729):
1337
1338             StorageInfo.h
1339             StorageInfoErrorCallback.h
1340             StorageInfoQuotaCallback.h
1341             StorageInfoUsageCallback.h
1342
1343         * WebCore.xcodeproj/project.pbxproj: Remove duplicates using
1344         'uniq' since sort-Xcode-project-file did most of the work.
1345
1346 2011-06-14  Kent Tamura  <tkent@chromium.org>
1347
1348         Reviewed by Hajime Morita.
1349
1350         REGRESSION(r88757): [Chromium] Vertical position of media slider thumb is wrong.
1351         https://bugs.webkit.org/show_bug.cgi?id=62685
1352
1353         No new tests. Covered by existing tests.
1354
1355         * rendering/RenderSlider.cpp:
1356         (WebCore::RenderSlider::layout): Center the thumb position.
1357         * rendering/RenderSlider.h:
1358
1359 2011-06-14  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
1360
1361         Reviewed by Kent Tamura.
1362
1363         [EFL] Change color initialization with clear color constant
1364         https://bugs.webkit.org/show_bug.cgi?id=62691
1365
1366         Some color values are initialized by rbg value. Color constant value is more clear than
1367         rgb value.
1368
1369         * platform/efl/RenderThemeEfl.cpp:
1370         (WebCore::RenderThemeEfl::RenderThemeEfl):
1371
1372 2011-06-14  Julien Chaffraix  <jchaffraix@webkit.org>
1373
1374         Reviewed by James Robinson.
1375
1376         Fix LayoutTests/canvas/philip/tests/2d.composite.uncovered.fill.destination-in.html
1377         https://bugs.webkit.org/show_bug.cgi?id=48293
1378
1379         And
1380
1381         Fix LayoutTests/canvas/philip/tests/2d.composite.uncovered.pattern.destination-in.html
1382         https://bugs.webkit.org/show_bug.cgi?id=48303
1383
1384         * html/canvas/CanvasRenderingContext2D.cpp:
1385         (WebCore::CanvasRenderingContext2D::shouldDisplayTransparencyElsewhere): Added CompositeDestinationIn
1386         as this is the only one that needs a specific treatment.
1387
1388 2011-06-14  Naoki Takano  <takano.naoki@gmail.com>
1389
1390         Reviewed by Kent Tamura.
1391
1392         [Chromium] Forward modifiers + up/down key events to text field when autofill popup window is shown.
1393         https://bugs.webkit.org/show_bug.cgi?id=62350
1394         http://code.google.com/p/chromium/issues/detail?id=61349
1395
1396         Manual test: autofill-popup-shiftupdown.html
1397
1398         * manual-tests/chromium/autofill-popup-shiftupdown.hml: Added to check modifier + up/down key is working correctly for text area in autofill popup is shown.
1399         * platform/chromium/PopupMenuChromium.cpp:
1400         (WebCore::PopupListBox::handleKeyEvent): Check modifier key and menu style to decide if the event should be forwarded or not.
1401
1402 2011-06-14  Annie Sullivan  <sullivan@chromium.org>
1403         
1404         Reviewed by Ryosuke Niwa.
1405
1406         Span ID duplicated when pressing enter at beginning of span
1407         https://bugs.webkit.org/show_bug.cgi?id=62621
1408
1409         Strip id from cloned span, so that it is not duplicated.
1410         
1411         Test: editing/inserting/return-key-span-start.html
1412         
1413         * editing/InsertParagraphSeparatorCommand.cpp:
1414         (WebCore::InsertParagraphSeparatorCommand::cloneHierarchyUnderNewBlock):
1415
1416 2011-06-13  Ryosuke Niwa  <rniwa@webkit.org>
1417
1418         Reviewed by David Hyatt.
1419
1420         Trailing tabs in a textarea become unselectable under certain conditions
1421         https://bugs.webkit.org/show_bug.cgi?id=54598
1422
1423         The bug was caused by WebKit's erroneously collapsing leading whitespace when white-space is
1424         set to pre-wrap. Per CSS 2.1 spec section 16.1.1, leading whitespace should not be removed
1425         in this case.
1426
1427         See also: http://www.w3.org/TR/CSS2/text.html#white-space-model
1428
1429         Fixed the bug by adding an extra argument to shouldCollapseWhiteSpace, indicating whether
1430         whitespace is leading or trailing. It defaults to leading because 16.1.1 does not allow allow
1431         collapsing of whitespace anywhere but at the end of each line.
1432
1433         Test: fast/text/pre-wrap-trailing-tab.html
1434
1435         * rendering/RenderBlockLineLayout.cpp:
1436         (WebCore::shouldCollapseWhiteSpace): Added WhitespacePosition as an argument. Returns false
1437         when whitespacePosition is not TrailingWhitespace even if white-space is pre-wrap.
1438         (WebCore::requiresLineBox): Takes WhitespacePosition as an argument and passes it to
1439         shouldCollapseWhiteSpace.
1440         (WebCore::RenderBlock::generatesLineBoxesForInlineChild): Calls requiresLineBox.
1441         (WebCore::RenderBlock::LineBreaker::skipTrailingWhitespace): Ditto.
1442         (WebCore::RenderBlock::LineBreaker::skipLeadingWhitespace): Ditto.
1443
1444 2011-06-14  Beth Dakin  <bdakin@apple.com>
1445
1446         Reviewed by Dan Bernstein.
1447
1448         https://bugs.webkit.org/show_bug.cgi?id=62678
1449         When the window is small enough, the scrollbars are misplaced with painting 
1450         artifacts, after changing the scrollbar appearance
1451         -and corresponding-
1452         <rdar://problem/9414015>
1453
1454         Get rid of the FrameView implementation of scrollbarStyleChanged(). Its approach 
1455         is just not good.
1456         * page/FrameView.cpp:
1457         * page/FrameView.h:
1458
1459         Implement scrollbarStyleChanged() on ScrollView instead. And just call 
1460         updatedScrollbars().
1461         * platform/ScrollView.cpp:
1462         (WebCore::ScrollView::scrollbarStyleChanged):
1463         * platform/ScrollView.h:
1464
1465         Invalidate the old scrollbar before changing it to the new scrollbar. This way 
1466         when the scrollbar gets smaller, the older, larger pieces still repaint properly.
1467         * platform/mac/ScrollAnimatorMac.mm:
1468         (WebCore::ScrollAnimatorMac::updateScrollerStyle):
1469
1470 2011-06-14  Michael Saboff  <msaboff@apple.com>
1471
1472         Reviewed by Joseph Pecoraro.
1473
1474         Incorrect #if[n]def for building without DISPATCH_VM_PRESSURE
1475         https://bugs.webkit.org/show_bug.cgi?id=62649
1476
1477         Take 2.
1478         The #ifdef DISPATCH_VM_PRESSURE doesn't work.  Combined the code
1479         inside this #ifdef with the prior #ifndef DISPATCH_SOURCE_TYPE_VM.
1480
1481         No functional changes, fixing build issue therefore no tests.
1482
1483         * platform/mac/MemoryPressureHandlerMac.mm:
1484
1485 2011-06-14  Jeffrey Pfau  <jpfau@apple.com>
1486
1487         Reviewed by David Hyatt.
1488
1489         Null dereference in WebCore::RenderBlock::splitFlow regarding use of multicol, inline-block, and spanning elements
1490         https://bugs.webkit.org/show_bug.cgi?id=60028
1491
1492         Ensure that the parent block of a spanning element, if it is not itself
1493         a multicol element, is not inline.
1494
1495         Test: fast/multicol/span/span-as-nested-inline-block-child.html
1496
1497         * rendering/RenderBlock.cpp:
1498         (WebCore::RenderBlock::columnsBlockForSpanningElement):
1499
1500 2011-06-14  Jer Noble  <jer.noble@apple.com>
1501
1502         Reviewed by Eric Carlson.
1503
1504         REGRESSION: Drawing video into canvas gets about one frame every 5 seconds (AVFoundation)
1505         https://bugs.webkit.org/show_bug.cgi?id=62655
1506
1507         No new tests; we don't have any media-engine specific tests.
1508
1509         AVAssetImageGenerator will, by default, return the nearest keyframe.  To get the generator to return
1510         the image from the current time instead of the nearest keyframe, set the requested time tolerance to 
1511         zero (which defaults to infinity).
1512
1513         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationObjC.mm:
1514         (WebCore::MediaPlayerPrivateAVFoundationObjC::createContextVideoRenderer):
1515
1516 2011-06-14  Eric Uhrhane  <ericu@chromium.org>
1517
1518         Reviewed by Darin Fisher.
1519
1520         Clean up filesystem base path code.
1521         https://bugs.webkit.org/show_bug.cgi?id=60218
1522
1523         Change a bunch of url-held-in-a-string parameters into real KURLS and
1524         WebURLs.
1525
1526         No new tests--no change in functionality.
1527
1528         * fileapi/DOMFileSystem.cpp:
1529         (WebCore::DOMFileSystem::createWriter):
1530         (WebCore::DOMFileSystem::createFile):
1531         * fileapi/DOMFileSystemBase.cpp:
1532         (WebCore::DOMFileSystemBase::getMetadata):
1533         (WebCore::DOMFileSystemBase::move):
1534         (WebCore::DOMFileSystemBase::copy):
1535         (WebCore::DOMFileSystemBase::remove):
1536         (WebCore::DOMFileSystemBase::removeRecursively):
1537         (WebCore::DOMFileSystemBase::getParent):
1538         (WebCore::DOMFileSystemBase::getFile):
1539         (WebCore::DOMFileSystemBase::getDirectory):
1540         (WebCore::DOMFileSystemBase::readDirectory):
1541         * fileapi/DOMFileSystemSync.cpp:
1542         (WebCore::DOMFileSystemSync::createFile):
1543         (WebCore::DOMFileSystemSync::createWriter):
1544         * platform/AsyncFileSystem.cpp:
1545         (WebCore::AsyncFileSystem::openFileSystem):
1546         * platform/AsyncFileSystem.h:
1547         (WebCore::AsyncFileSystem::AsyncFileSystem):
1548
1549 2011-06-14  James Robinson  <jamesr@chromium.org>
1550
1551         Reviewed by Stephen White.
1552
1553         [chromium] Compositor shader initialization is inefficient
1554         https://bugs.webkit.org/show_bug.cgi?id=62618
1555
1556         This fixes several issues causing slowdowns in compositor shader initialization, mostly due to lack of
1557         parallelism:
1558
1559         - Avoid initializing all programs eagerly. We only use two programs on every page, the other programs depend on
1560         content and are constructed on demand.
1561
1562         - Defer querying uniform locations until draw time.  For the eagerly constructed programs (render surface +
1563         tiler) this means that the GPU process has a chance to compile the shader while the renderer is busy
1564         painting+uploading instead of blocking on shader compilation in order to get uniform locations.
1565
1566         - Calls to query COMPILE_STATUS/LINK_STATUS moved behind #ifndef NDEBUG guards since these should never fail in
1567         release builds and force synchronous compilation/linking.
1568
1569         This also adds a number of TRACE_EVENT()s to make analysing the performance of this bit of code easier.
1570
1571         * platform/graphics/chromium/LayerRendererChromium.cpp:
1572         (WebCore::LayerRendererChromium::updateLayers):
1573         (WebCore::LayerRendererChromium::initializeSharedObjects):
1574         (WebCore::LayerRendererChromium::borderProgram):
1575         (WebCore::LayerRendererChromium::headsUpDisplayProgram):
1576         (WebCore::LayerRendererChromium::renderSurfaceProgram):
1577         (WebCore::LayerRendererChromium::renderSurfaceMaskProgram):
1578         (WebCore::LayerRendererChromium::tilerProgram):
1579         (WebCore::LayerRendererChromium::canvasLayerProgram):
1580         (WebCore::LayerRendererChromium::pluginLayerProgram):
1581         (WebCore::LayerRendererChromium::videoLayerRGBAProgram):
1582         (WebCore::LayerRendererChromium::videoLayerYUVProgram):
1583         * platform/graphics/chromium/LayerRendererChromium.h:
1584         * platform/graphics/chromium/LayerTextureSubImage.cpp:
1585         (WebCore::LayerTextureSubImage::uploadWithTexSubImage):
1586         (WebCore::LayerTextureSubImage::uploadWithMapTexSubImage):
1587         * platform/graphics/chromium/ProgramBinding.cpp:
1588         (WebCore::ProgramBindingBase::init):
1589         (WebCore::ProgramBindingBase::loadShader):
1590         (WebCore::ProgramBindingBase::createShaderProgram):
1591         * platform/graphics/chromium/ProgramBinding.h:
1592         (WebCore::ProgramBinding::ProgramBinding):
1593         (WebCore::ProgramBinding::initialize):
1594         * platform/graphics/chromium/ShaderChromium.cpp:
1595         (WebCore::VertexShaderPosTex::init):
1596         (WebCore::VertexShaderPosTexYUVStretch::init):
1597         (WebCore::VertexShaderPos::init):
1598         (WebCore::VertexShaderPosTexTransform::init):
1599         (WebCore::FragmentTexAlphaBinding::init):
1600         (WebCore::FragmentShaderRGBATexAlphaMask::init):
1601         (WebCore::FragmentShaderYUVVideo::init):
1602         (WebCore::FragmentShaderColor::init):
1603         * platform/graphics/chromium/ShaderChromium.h:
1604
1605 2011-06-14  Stephanie Lewis  <slewis@apple.com>
1606
1607         Rubber stamped by Oliver Hunt.
1608
1609         <rdar://problem/9511169>
1610         Update order files.
1611
1612         Build system change, no change in functionality so no new tests.
1613
1614         * WebCore.order:
1615
1616 2011-06-14  Chris Fleizach  <cfleizach@apple.com>
1617
1618         Reviewed by David Kilzer.
1619
1620         VoiceOver cannot navigate the iTunes album view table
1621         https://bugs.webkit.org/show_bug.cgi?id=62335
1622
1623         This is a regression from https://bugs.webkit.org/show_bug.cgi?id=57463.
1624         Part of that patch made a change so that an ARIA table will only look at it's children and grandchildren
1625         for possible rows. That however, doesn't allow arbitrary hierarchies to work with ARIA, like in iTunes album view.
1626
1627         Test: platform/mac/accessibility/aria-grid-with-strange-hierarchy.html
1628
1629         * accessibility/AccessibilityARIAGrid.cpp:
1630         (WebCore::AccessibilityARIAGrid::addChild):
1631         (WebCore::AccessibilityARIAGrid::addChildren):
1632         * accessibility/AccessibilityARIAGrid.h:
1633
1634 2011-06-14  Sheriff Bot  <webkit.review.bot@gmail.com>
1635
1636         Unreviewed, rolling out r88823.
1637         http://trac.webkit.org/changeset/88823
1638         https://bugs.webkit.org/show_bug.cgi?id=62652
1639
1640         Broke the Lion build (Requested by estes on #webkit).
1641
1642         * platform/mac/MemoryPressureHandlerMac.mm:
1643
1644 2011-06-14  Michael Saboff  <msaboff@apple.com>
1645
1646         Reviewed by Joseph Pecoraro.
1647
1648         Incorrect #if[n]def for building without DISPATCH_VM_PRESSURE
1649         https://bugs.webkit.org/show_bug.cgi?id=62649
1650
1651         The #ifdef DISPATCH_VM_PRESSURE actually needs to be #ifndef
1652         to handle when DISPATCH_VM_PRESSURE is NOT defined in the
1653         system header files.
1654
1655         No functional changes, fixing build issue therefore no tests.
1656
1657         * platform/mac/MemoryPressureHandlerMac.mm:
1658
1659 2011-06-13  Adrienne Walker  <enne@google.com>
1660
1661         Reviewed by James Robinson.
1662
1663         [chromium] Disable drawing for huge mask layers
1664         https://bugs.webkit.org/show_bug.cgi?id=62607
1665
1666         Because masks have a different layer size than the layer they are
1667         masking, they are untiled.  If they are too large to be contained
1668         within a single texture, then they should just be disabled.
1669
1670         Test: platform/chromium/compositing/huge-mask-layer.html
1671
1672         * platform/graphics/chromium/ContentLayerChromium.cpp:
1673         (WebCore::ContentLayerChromium::drawsContent):
1674         (WebCore::ContentLayerChromium::paintContentsIfDirty):
1675         * platform/graphics/chromium/LayerTilerChromium.h:
1676         (WebCore::LayerTilerChromium::getSingleTexture):
1677         (WebCore::LayerTilerChromium::numTiles):
1678
1679 2011-06-14  Viatcheslav Ostapenko  <ostapenko.viatcheslav@nokia.com>
1680
1681         Reviewed by Laszlo Gombos.
1682
1683         [Qt] [Symbian] GraphicsLayer: support plugins on symbian
1684         https://bugs.webkit.org/show_bug.cgi?id=57418
1685
1686         Implement graphics layer for plugins on Symbian.
1687
1688         * plugins/PluginView.h:
1689         * plugins/qt/PluginViewQt.cpp:
1690         (WebCore::PluginView::shouldUseAcceleratedCompositing):
1691         (WebCore::PluginView::platformStart):
1692         * plugins/symbian/PluginViewSymbian.cpp:
1693         (WebCore::PluginGraphicsLayerQt::PluginGraphicsLayerQt):
1694         (WebCore::PluginGraphicsLayerQt::~PluginGraphicsLayerQt):
1695         (WebCore::PluginGraphicsLayerQt::paint):
1696         (WebCore::PluginView::shouldUseAcceleratedCompositing):
1697         (WebCore::PluginView::paint):
1698         (WebCore::PluginView::invalidateRect):
1699         (WebCore::PluginView::platformStart):
1700         (WebCore::PluginView::platformLayer):
1701
1702 2011-06-14  Sreeram Ramachandran  <sreeram@chromium.org>
1703
1704         Reviewed by Pavel Feldman.
1705
1706         Web Inspector: Allow the console to persist on page refresh or navigation
1707         https://bugs.webkit.org/show_bug.cgi?id=53359
1708
1709         Adds a context menu checkbox to preserve the console log across
1710         navigations. However, the underlying messages and objects are actually
1711         deleted from the backend, so they are not expandable; their continued
1712         display in the console frontend is merely cosmetic.
1713
1714         Test: inspector/console/console-preserve-log.html
1715
1716         * English.lproj/localizedStrings.js:
1717         * inspector/front-end/ConsoleView.js:
1718         (WebInspector.ConsoleView.prototype._registerConsoleDomainDispatcher.dispatcher.messagesCleared):
1719         (WebInspector.ConsoleView.prototype._registerConsoleDomainDispatcher):
1720         (WebInspector.ConsoleView.prototype.requestClearMessages):
1721         (WebInspector.ConsoleView.prototype._handleContextMenuEvent.monitoringXHRItemAction):
1722         (WebInspector.ConsoleView.prototype._handleContextMenuEvent.preserveLogItemAction):
1723         (WebInspector.ConsoleView.prototype._handleContextMenuEvent):
1724         * inspector/front-end/Settings.js:
1725         (WebInspector.Settings):
1726         * inspector/front-end/inspector.js:
1727         (WebInspector.reset):
1728
1729 2011-06-14  Pavel Podivilov  <podivilov@chromium.org>
1730
1731         Reviewed by Pavel Feldman.
1732
1733         Web Inspector: add tooltip to file select options in scripts panel.
1734         https://bugs.webkit.org/show_bug.cgi?id=62537
1735
1736         * inspector/front-end/ScriptsPanel.js:
1737         (WebInspector.ScriptsPanel):
1738         (WebInspector.ScriptsPanel.prototype._sourceFileAdded):
1739         (WebInspector.ScriptsPanel.prototype._addOptionToFilesSelect.compare):
1740         (WebInspector.ScriptsPanel.prototype._addOptionToFilesSelect):
1741         (WebInspector.ScriptsPanel.prototype._callFrameSelected.didGetSourceLocation):
1742         (WebInspector.ScriptsPanel.prototype._callFrameSelected):
1743
1744 2011-06-14  Luke Macpherson   <macpherson@chromium.org>
1745
1746         Reviewed by Eric Seidel.
1747
1748         Implement CSS border radius properies in CSSStyleApplyProperty
1749         https://bugs.webkit.org/show_bug.cgi?id=62265
1750
1751         No new tests / refactoring only.
1752
1753         * css/CSSStyleApplyProperty.cpp:
1754         Implement new class to culculate border radius, initialize for appropriate properties.
1755         (WebCore::ApplyPropertyBorderRadius::ApplyPropertyBorderRadius):
1756         (WebCore::ApplyPropertyBorderRadius::applyValue):
1757         (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
1758         * css/CSSStyleSelector.cpp:
1759         Remove old implementations.
1760         (WebCore::CSSStyleSelector::applyProperty):
1761         * page/animation/AnimationBase.cpp:
1762         Pass LengthSize by value.
1763         (WebCore::AnimationBase::ensurePropertyMap):
1764         * rendering/style/RenderStyle.h:
1765         Pass LengthSize by value consistently.
1766
1767 2011-06-14  Carlos Garcia Campos  <cgarcia@igalia.com>
1768
1769         Reviewed by Martin Robinson.
1770
1771         [GTK] Rename convertWidgetRectToScreenRect() to convertWidgetPointToScreenPoint()
1772         https://bugs.webkit.org/show_bug.cgi?id=62626
1773
1774         The method actually converts coordinates, the rectangle size is
1775         not affected, so it can be modified to return a point
1776         instead. Fix also a bug in the implementation, it was translating
1777         the coordinates twice returning the wrong position when the given
1778         rectangle was not at 0,0.
1779
1780         * platform/gtk/GtkUtilities.cpp:
1781         (WebCore::convertWidgetPointToScreenPoint):
1782         * platform/gtk/GtkUtilities.h:
1783         * platform/gtk/PopupMenuGtk.cpp:
1784         (WebCore::PopupMenuGtk::show): Use
1785         convertWidgetPointToScreenPoint().
1786
1787 2011-06-14  Carlos Garcia Campos  <cgarcia@igalia.com>
1788
1789         Reviewed by Martin Robinson.
1790
1791         [GTK] Support authentication dialogs in WebKit2
1792         https://bugs.webkit.org/show_bug.cgi?id=62366
1793
1794         Add a new class to show an authentication dialog that is used by
1795         both WebKit1 and WebKit2.
1796
1797         * GNUmakefile.list.am: Add new files to compilation.
1798         * platform/gtk/GtkAuthenticationDialog.cpp: Added.
1799         (WebCore::addEntryToTable):
1800         (WebCore::sessionCanSavePasswords):
1801         (WebCore::GtkAuthenticationDialog::~GtkAuthenticationDialog):
1802         (WebCore::GtkAuthenticationDialog::GtkAuthenticationDialog):
1803         (WebCore::getSavedLogin):
1804         (WebCore::GtkAuthenticationDialog::show):
1805         (WebCore::GtkAuthenticationDialog::destroy):
1806         (WebCore::GtkAuthenticationDialog::savePasswordCallback):
1807         (WebCore::GtkAuthenticationDialog::savePassword):
1808         (WebCore::GtkAuthenticationDialog::authenticate):
1809         (WebCore::GtkAuthenticationDialog::authenticationDialogResponseCallback):
1810         * platform/gtk/GtkAuthenticationDialog.h: Added.
1811
1812 2011-06-14  Tommy Widenflycht  <tommyw@google.com>
1813
1814         Reviewed by Tony Gentilcore.
1815
1816         Media Stream PeerConnection API: adding the StreamList and supporting classes.
1817         https://bugs.webkit.org/show_bug.cgi?id=61539
1818
1819         * dom/StreamContainer.h: Added.
1820         (WebCore::StreamContainer::create):
1821         (WebCore::StreamContainer::~StreamContainer):
1822         (WebCore::StreamContainer::length):
1823         (WebCore::StreamContainer::item):
1824         (WebCore::StreamContainer::add):
1825         (WebCore::StreamContainer::remove):
1826         (WebCore::StreamContainer::contains):
1827         (WebCore::StreamContainer::get):
1828         (WebCore::StreamContainer::StreamContainer):
1829         * dom/StreamList.cpp: Added.
1830         (WebCore::StreamList::create):
1831         (WebCore::StreamList::StreamList):
1832         (WebCore::StreamList::~StreamList):
1833         (WebCore::StreamList::length):
1834         (WebCore::StreamList::item):
1835         * dom/StreamList.h: Added.
1836         * dom/StreamList.idl: Added.
1837
1838 2011-06-14  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>
1839
1840         Reviewed by Andreas Kling.
1841
1842         [Qt] tst_QWebFrame::overloadedSlots() fails
1843         https://bugs.webkit.org/show_bug.cgi?id=37319
1844
1845         Increase the likeness that JSElements are converted to QWebElements. When hinted
1846         with QWebElement metatype, we qualify the conversion from JSElement as a "perfect
1847         match".
1848
1849         The test was failing because the wrong slot was called, since the QWebElement
1850         match was taken as equal to the others and not chosen when the metacall happened.
1851
1852         We also remove the implicit conversion between JSDocument (which is not an
1853         element) to QWebElement. The conversion only worked for calling slots, while
1854         without hint it returned a QVariantMap (as can be seen in domCycles test). It was
1855         added for supporting DRT, but since this change we can use it as QVariantMap and
1856         get the value for "documentElement".
1857
1858         This patch is based on Noam Rosenthal original patch in the same bug.
1859
1860         * bridge/qt/qt_runtime.cpp:
1861         (JSC::Bindings::hintForRealType):
1862         Extracted function to choose the metatype hint based on the JSValue type.  Add
1863         QWebElement metatype as a hint for JSElement objects, this way if no hint is
1864         provided, JSElement objects will always be converted to QWebElements.
1865
1866         (JSC::Bindings::convertValueToQVariant):
1867         Use previous function. Identify the conversion between JSElement to QWebElement
1868         as a "perfect match" (dist = 0). And remove the implicit conversion when the hint
1869         is QWebElement metatype and we have a JSDocument.  Changed from JSHTMLElement to
1870         JSElement to cover the 'documentElement'.
1871
1872 2011-06-14  Andreas Kling  <kling@webkit.org>
1873
1874         Reviewed by Benjamin Poulain.
1875
1876         Remove some unnecessary includes.
1877
1878         * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
1879
1880 2011-06-14  Yael Aharon  <yael.aharon@nokia.com>
1881
1882         Reviewed by Kent Tamura.
1883
1884         <progress> should support :indeterminate pseudo-class
1885         https://bugs.webkit.org/show_bug.cgi?id=62430
1886
1887         Add support for :indeterminate pseudo class for progress element.
1888
1889         Tests: fast/dom/HTMLProgressElement/indeterminate-progress-001.html
1890                fast/dom/HTMLProgressElement/indeterminate-progress-002.html
1891
1892         * css/CSSStyleSelector.cpp:
1893         (WebCore::CSSStyleSelector::canShareStyleWithControl):
1894         (WebCore::CSSStyleSelector::canShareStyleWithElement):
1895         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
1896         * html/HTMLProgressElement.cpp:
1897         (WebCore::HTMLProgressElement::isDeterminate):
1898         (WebCore::HTMLProgressElement::didElementStateChange):
1899         * html/HTMLProgressElement.h:
1900
1901 2011-06-14  Pavel Feldman  <pfeldman@google.com>
1902
1903         Reviewed by Yury Semikhatsky.
1904
1905         Web Inspector: use ew-resize instead of col-resize for non-columns.
1906         https://bugs.webkit.org/show_bug.cgi?id=62640
1907
1908         * inspector/front-end/ElementsPanel.js:
1909         (WebInspector.ElementsPanel.prototype.rightSidebarResizerDragStart):
1910         * inspector/front-end/Panel.js:
1911         (WebInspector.Panel.prototype._startSidebarDragging):
1912         * inspector/front-end/ScriptsPanel.js:
1913         (WebInspector.ScriptsPanel.prototype._startSidebarResizeDrag):
1914         * inspector/front-end/TimelineOverviewPane.js:
1915         (WebInspector.TimelineOverviewPane.prototype._resizeWindow):
1916         (WebInspector.TimelineOverviewPane.prototype._dragWindow):
1917         * inspector/front-end/inspector.css:
1918         (body.attached #toolbar):
1919         (body.drawer-visible #main-status-bar):
1920         (#scripts-sidebar-resizer-widget):
1921         (.sidebar-resizer-vertical):
1922         (.timeline-window-resizer):
1923
1924 2011-06-14  Pavel Feldman  <pfeldman@google.com>
1925
1926         Reviewed by Yury Semikhatsky.
1927
1928         Web Inspector: reload from within inspector window does not work while debugger is paused.
1929         https://bugs.webkit.org/show_bug.cgi?id=62631
1930
1931         Test: inspector/debugger/debugger-reload-on-pause.html
1932
1933         * loader/FrameLoader.cpp:
1934         (WebCore::FrameLoader::continueLoadAfterNavigationPolicy):
1935
1936 2011-06-14  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
1937
1938         Reviewed by Kent Tamura.
1939
1940         [EFL] Support for painting thumb of media slider
1941         https://bugs.webkit.org/show_bug.cgi?id=62174
1942
1943         Replace RenderObject parameter with RenderStyle's in adjustSliderThumbSize.
1944         Because, parameter of the function was changed. And, add constant variable to
1945         paintMediaSliderThumb().
1946
1947         * platform/efl/RenderThemeEfl.cpp:
1948         (WebCore::RenderThemeEfl::RenderThemeEfl):
1949         (WebCore::RenderThemeEfl::adjustSliderThumbSize):
1950         (WebCore::RenderThemeEfl::paintMediaSliderThumb):
1951         * platform/efl/RenderThemeEfl.h:
1952
1953 2011-06-14  Kent Tamura  <tkent@chromium.org>
1954
1955         [Qt] Attempt to fix a build break by r88757.
1956         https://bugs.webkit.org/show_bug.cgi?id=52920
1957
1958         * platform/qt/RenderThemeQt.cpp:
1959         (WebCore::RenderThemeQt::paintSliderTrack):
1960
1961 2011-06-13  Kent Tamura  <tkent@chromium.org>
1962
1963         [EFL] The second try to fix a build break.
1964
1965         * platform/efl/RenderThemeEfl.cpp:
1966         (WebCore::RenderThemeEfl::paintThemePart):
1967
1968 2011-06-13  Kent Tamura  <tkent@chromium.org>
1969
1970         [EFL] Fix a typo.
1971
1972         * platform/efl/RenderThemeEfl.cpp:
1973         (WebCore::RenderThemeEfl::paintThemePart):
1974
1975 2011-06-13  Kent Tamura  <tkent@chromium.org>
1976
1977         [EFL] Try to fix a build break by r88757.
1978
1979         * platform/efl/RenderThemeEfl.cpp:
1980         (WebCore::RenderThemeEfl::paintThemePart):
1981
1982 2011-06-10  Kent Tamura  <tkent@chromium.org>
1983
1984         Reviewed by Dimitri Glazkov.
1985
1986         Use CSS machinery to position slider thumb.
1987         https://bugs.webkit.org/show_bug.cgi?id=52920
1988
1989         Remove RenderSlider::layout().
1990         In order to remove it, we introduce new three shadow nodes:
1991          - A flex box container occupying the whole box
1992          - A flex box item representing a movable area of the thumb
1993          - A flex box item limiting the movable area of the thumb
1994         The thumb position is specified by percentage position in the second element.
1995
1996         This change also fixes Bug 60353.
1997
1998         Tests: fast/forms/input-appearance-range.html
1999                fast/forms/validation-message-on-range.html
2000
2001         * accessibility/AccessibilitySlider.cpp:
2002         (WebCore::AccessibilitySliderThumb::elementRect):
2003           Use Node::getRect() for the thumb element.
2004         * css/html.css: Add new style definitions for the new node layout.
2005         (input[type="range"]::-webkit-slider-container):
2006         (input[type="range"]::-webkit-slider-runnable-track):
2007         (input[type="range"]::-webkit-slider-thumb):
2008         * html/RangeInputType.cpp:
2009         (WebCore::RangeInputType::handleMouseDownEvent):
2010           Accepts events on shadow nodes, use sliderThumbElementOf().
2011         (WebCore::RangeInputType::createShadowSubtree):
2012           Creates new nodes layout.
2013         (WebCore::RangeInputType::valueChanged): Use sliderThumbElementOf().
2014         * html/RangeInputType.h: Remove shadowSliderThumb().
2015         * html/shadow/SliderThumbElement.cpp:
2016         (WebCore::sliderPosition): Moved from RenderSlider.cpp.
2017         (WebCore::hasVerticalAppearance): New utility function.
2018         (WebCore::sliderThumbElementOf): New utility function.
2019         (WebCore::RenderSliderThumb::layout):
2020           Sets CSS top/left values.
2021         (WebCore::RenderSliderContainer::RenderSliderContainer):
2022         (WebCore::RenderSliderContainer::layout):
2023           Add some adjustment code.
2024           - Setting box-orient
2025           - Adjust heights of some nodes. It is required to pass existing tests.
2026         (WebCore::SliderThumbElement::setPositionFromValue):
2027           Update comments.
2028         (WebCore::SliderThumbElement::setPositionFromPoint):
2029           Calculate the current position from absolute positions.
2030         (WebCore::SliderThumbElement::hostInput):
2031           Removed unnecessary variable.
2032         (WebCore::TrackLimiterElement::TrackLimiterElement):
2033         (WebCore::TrackLimiterElement::create): Adjust style.
2034         (WebCore::TrackLimiterElement::createRenderer):
2035           This node uses RenderSliderThumb.
2036         (WebCore::TrackLimiterElement::shadowPseudoId):
2037           This node also uses -webkit-slider-thumb.
2038         (WebCore::SliderContainerElement::SliderContainerElement):
2039         (WebCore::SliderContainerElement::create):
2040         (WebCore::SliderContainerElement::createRenderer):
2041           Uses RenderSliderContainer.
2042         (WebCore::SliderContainerElement::shadowPseudoId):
2043         * html/shadow/SliderThumbElement.h:
2044           Make hostInput() public, add declarations of TrackLimiterElement
2045           and SliderContainerElement.
2046         * rendering/RenderSlider.cpp:
2047         (WebCore::RenderSlider::RenderSlider): Added an assertion.
2048         (WebCore::RenderSlider::inDragMode): Uses sliderThumbElementOf().
2049         * rendering/RenderSlider.h: Remove declarations of removed functions.
2050         * rendering/RenderTheme.cpp:
2051         (WebCore::RenderTheme::adjustSliderThumbStyle):
2052           Calls adjustSliderThumbSize().
2053
2054 2011-06-13  Joone Hur  <joone.hur@collabora.co.uk>
2055
2056         Reviewed by Martin Robinson.
2057
2058         [GTK] Add configure option to enable/disable register protocol handler
2059         https://bugs.webkit.org/show_bug.cgi?id=62534
2060
2061         * GNUmakefile.am: Add ENABLE_REGISTER_PROTOCOL_HANDLER.
2062
2063 2011-06-13  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
2064
2065         Reviewed by Kent Tamura.
2066
2067         [EFL] Support for painting thumb of media slider
2068         https://bugs.webkit.org/show_bug.cgi?id=62174
2069
2070         Implement paintMediaSliderThumb() function to show thumb of media slider.
2071         adjustSliderThumbSize() should be implemented in order to call paintMediaSliderThumb().
2072
2073         * platform/efl/RenderThemeEfl.cpp:
2074         (WebCore::RenderThemeEfl::RenderThemeEfl):
2075         (WebCore::RenderThemeEfl::adjustSliderThumbSize):
2076         (WebCore::RenderThemeEfl::paintMediaSliderTrack):
2077         (WebCore::RenderThemeEfl::paintMediaSliderThumb):
2078         (WebCore::RenderThemeEfl::paintMediaCurrentTime):
2079         * platform/efl/RenderThemeEfl.h:
2080
2081 2011-06-13  Keishi Hattori  <keishi@webkit.org>
2082
2083         Sort WebCore.xcodeproj
2084         Accomplished using sort-Xcode-project-file.
2085
2086         * WebCore.xcodeproj/project.pbxproj:
2087
2088 2011-06-13  James Simonsen  <simonjam@chromium.org>
2089
2090         Reviewed by James Robinson.
2091
2092         [Chromium] Implement monotonicallyIncreasingClock()
2093         https://bugs.webkit.org/show_bug.cgi?id=62162
2094
2095         * platform/chromium/PlatformBridge.h:
2096         * platform/chromium/SystemTimeChromium.cpp:
2097         (WebCore::monotonicallyIncreasingTime): Use Chrome's implementation.
2098
2099 2011-06-13  Steve Block  <steveblock@google.com>
2100
2101         Reviewed by Darin Adler.
2102
2103         Remove Android defines from WebCore/config.h
2104         https://bugs.webkit.org/show_bug.cgi?id=62602
2105
2106         No new tests, build cleanup only.
2107
2108         * config.h:
2109
2110 2011-06-13  Adam Barth  <abarth@webkit.org>
2111
2112         Reviewed by David Levin.
2113
2114         Remove redundant "true" parameter to scheduleLocationChange
2115         https://bugs.webkit.org/show_bug.cgi?id=62612
2116
2117         This parameter defaults to true anyway.
2118
2119         * loader/appcache/ApplicationCacheGroup.cpp:
2120         (WebCore::ApplicationCacheGroup::selectCache):
2121
2122 2011-06-13  Kentaro Hara  <haraken@google.com>
2123
2124         Reviewed by Alexey Proskuryakov.
2125
2126         Add resizePageRectsKeepingRatio(), which expands/shrinks a page, keeping the ratio of the original page
2127         https://bugs.webkit.org/show_bug.cgi?id=61256
2128
2129         In order to prevent rounding error caused by expanding/shrinking a page
2130         using different calculation here and there, I added a common calculation
2131         method, resizePageRectsKeepingRatio(), which expands/shrinks a page,
2132         keeping the ratio of width and height of the original page.
2133         PrintContext::computePageRects() and PrintContext::begin()
2134         use resizePageRectsKeepingRatio() to expand/shrink a page.
2135
2136         Test: printing/page-count-with-one-word.html
2137
2138         * WebCore.exp.in:
2139         * page/Frame.cpp:
2140         (WebCore::Frame::resizePageRectsKeepingRatio):
2141         * page/Frame.h:
2142         * page/PrintContext.cpp:
2143         (WebCore::PrintContext::computePageRects):
2144         (WebCore::PrintContext::begin):
2145
2146 2011-06-13  Adam Barth  <abarth@webkit.org>
2147
2148         Reviewed by Darin Adler.
2149
2150         anyPageIsProcessingUserGesture is not longer needed because user gesture state is static
2151         https://bugs.webkit.org/show_bug.cgi?id=62601
2152
2153         Previously, our user-gesture state was per-frame.  Code needed to check
2154         the "global" user gesture state called anyPageIsProcessingUserGesture()
2155         to iterate through all the frames and look for one that was processing
2156         a user gesture.  Since we changed the user gesture state to be static,
2157         iterating over every frame in existence isn't needed.
2158
2159         This patch also cleans up a couple other user-gesture callsites I saw
2160         while I was in this code.  Code should just call
2161         ScriptController::processingUserGesture directly instead of
2162         trampolining through other functions.
2163
2164         * bindings/ScriptControllerBase.cpp:
2165         (WebCore::ScriptController::executeScript):
2166         * bindings/generic/BindingSecurity.h:
2167         (WebCore::::allowPopUp):
2168         * bindings/js/JSDOMBinding.cpp:
2169         * bindings/js/JSDOMBinding.h:
2170         * bindings/js/JSDocumentCustom.cpp:
2171         (WebCore::JSDocument::setLocation):
2172         * bindings/js/ScriptController.cpp:
2173         * bindings/js/ScriptController.h:
2174         * bindings/scripts/CodeGeneratorJS.pm:
2175         * bindings/scripts/CodeGeneratorV8.pm:
2176         * bindings/v8/ScriptController.cpp:
2177         * bindings/v8/ScriptController.h:
2178         (WebCore::ScriptController::setProcessingTimerCallback):
2179         * bindings/v8/V8Utilities.cpp:
2180         * bindings/v8/V8Utilities.h:
2181         * bindings/v8/specialization/V8BindingState.cpp:
2182         * bindings/v8/specialization/V8BindingState.h:
2183         * html/HTMLFormElement.cpp:
2184         (WebCore::HTMLFormElement::submitFromJavaScript):
2185         (WebCore::HTMLFormElement::submit):
2186         * page/DOMWindow.cpp:
2187         (WebCore::DOMWindow::setLocation):
2188         (WebCore::DOMWindow::createWindow):
2189         (WebCore::DOMWindow::open):
2190
2191 2011-06-13  Jeffrey Pfau  <jpfau@apple.com>
2192
2193         Reviewed by Darin Adler.
2194
2195         Crash in WebCore::RenderMathMLUnderOver::layout()
2196         https://bugs.webkit.org/show_bug.cgi?id=57900
2197
2198         Add more null checks so that removing children in MathML elements does not cause crashes.
2199         Note that this only half fixes the third repro in the Bugzilla bug, as another bug will
2200         still crash that repro.
2201
2202         Test: mathml/munderover-remove-children.html
2203
2204         * rendering/mathml/RenderMathMLSubSup.cpp:
2205         (WebCore::RenderMathMLSubSup::stretchToHeight):
2206         * rendering/mathml/RenderMathMLUnderOver.cpp:
2207         (WebCore::RenderMathMLUnderOver::layout):
2208         (WebCore::RenderMathMLUnderOver::nonOperatorHeight):
2209
2210 2011-06-13  Dmitry Lomov  <dslomov@google.com>
2211
2212         Reviewed by Adam Barth.
2213
2214         https://bugs.webkit.org/show_bug.cgi?id=62345
2215         Use per-isolate embedder data instead of statics for caches in bindings.
2216         This is a prerequisite for more than one v8 isolate per process.
2217
2218         * bindings/scripts/CodeGeneratorV8.pm:
2219         * bindings/v8/IDBBindingUtilities.cpp:
2220         (WebCore::createIDBKeyFromSerializedValueAndKeyPath):
2221         (WebCore::injectIDBKeyIntoSerializedValue):
2222         * bindings/v8/V8Binding.cpp:
2223         (WebCore::V8BindingPerIsolateData::V8BindingPerIsolateData):
2224         (WebCore::V8BindingPerIsolateData::~V8BindingPerIsolateData):
2225         (WebCore::V8BindingPerIsolateData::create):
2226         (WebCore::V8BindingPerIsolateData::ensureInitialized):
2227         (WebCore::V8BindingPerIsolateData::dispose):
2228         (WebCore::getToStringName):
2229         (WebCore::getToStringTemplate):
2230         * bindings/v8/V8Binding.h:
2231         (WebCore::V8BindingPerIsolateData::get):
2232         (WebCore::V8BindingPerIsolateData::current):
2233         (WebCore::V8BindingPerIsolateData::rawTemplateMap):
2234         (WebCore::V8BindingPerIsolateData::templateMap):
2235         (WebCore::V8BindingPerIsolateData::toStringName):
2236         (WebCore::V8BindingPerIsolateData::toStringTemplate):
2237         * bindings/v8/V8DOMWindowShell.cpp:
2238         (WebCore::V8DOMWindowShell::initContextIfNeeded):
2239         * bindings/v8/V8Utilities.cpp:
2240         (WebCore::V8LocalContext::V8LocalContext):
2241         (WebCore::V8LocalContext::~V8LocalContext):
2242         * bindings/v8/V8Utilities.h:
2243         * bindings/v8/WorkerContextExecutionProxy.cpp:
2244         (WebCore::WorkerContextExecutionProxy::initV8IfNeeded):
2245
2246 2011-06-13  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>
2247
2248         Reviewed by Adam Barth.
2249
2250         Simplify logic in ProgressTracker::progressCompleted()
2251         https://bugs.webkit.org/show_bug.cgi?id=62598
2252
2253         Testing for "m_numProgressTrackedFrames != 0" is unnecessary because it is
2254         always true, otherwise we would entered in the first part of the conditional.
2255
2256         * loader/ProgressTracker.cpp:
2257         (WebCore::ProgressTracker::progressCompleted):
2258
2259 2011-06-13  Dimitri Glazkov  <dglazkov@chromium.org>
2260
2261         Unreviewed, rolling out r88704.
2262         http://trac.webkit.org/changeset/88704
2263         https://bugs.webkit.org/show_bug.cgi?id=62466
2264
2265         Caused layout test failures on Chromium Mac.
2266
2267         * platform/chromium/ClipboardChromium.cpp:
2268         (WebCore::ClipboardChromium::declareAndWriteDragImage):
2269
2270 2011-06-13   Morgan Winer  <mwiner@apple.com>
2271
2272         Reviewed by Enrica Casucci.
2273
2274         Frame::visiblePositionForPoint returns null position if the point is over an imagemap.
2275         https://bugs.webkit.org/show_bug.cgi?id=62562
2276         <rdar://problem/9313885>
2277
2278         The innerNode() of an imageMap is an area, and doesn't have a renderer and
2279         therefore can't report a position.
2280         Every result's innerNonSharedNode() should be the same as the innerNode(),
2281         except for imageMaps, which will have the actual image as its innerNonSharedNode(),
2282         and will therefore have a renderer and can report a position.
2283
2284         There are no layout tests for this, since it can be tested only at API level.
2285
2286         * page/Frame.cpp:
2287         (WebCore::Frame::visiblePositionForPoint): Changing innerNode() to innerNonSharedNode().
2288
2289 2011-06-13  Lucas De Marchi  <lucas.demarchi@profusion.mobi>
2290
2291         Reviewed by Eric Seidel.
2292
2293         [CMAKE] Conditionally generate DerivedSources
2294         https://bugs.webkit.org/show_bug.cgi?id=62277
2295
2296         Speedup build by not generating DerivedSources of features that are
2297         disabled. This was already been done for some features like ENABLE_SVG
2298         and now it's extended the following features: ENABLE_DATABASE,
2299         ENABLE_INDEXED_DATABASE, ENABLE_DOM_STORAGE, ENABLE_XPATH,
2300         ENABLE_OFFLINE_WEB_APPLICATIONS, ENABLE_WEB_SOCKETS,
2301         ENABLE_DATA_TRANSFER_ITEMS.
2302
2303         No change in functionality so no new tests.
2304
2305         * CMakeLists.txt: move .idl files to be conditionally generated.
2306
2307 2011-06-13  Leandro Pereira  <leandro@profusion.mobi>
2308
2309         Reviewed by Eric Seidel.
2310
2311         [CMake] Allow building with ENABLE_NETSCAPE_PLUGIN_API on platforms
2312         without plugin support
2313         https://bugs.webkit.org/show_bug.cgi?id=62394
2314
2315         No behaviour changes, so no new tests.
2316
2317         * CMakeLists.txt: Remove references to Plugin{Package,View}.cpp and
2318         Plugin{Package,View}None.cpp and move them to CMakeListWinCE and
2319         CMakeListsEfl, respectively.
2320         * CMakeListsEfl.txt:
2321         * CMakeListsWinCE.txt:
2322
2323 2011-06-13  Andrey Kosyakov  <caseq@chromium.org>
2324
2325         Reviewed by Eric Seidel.
2326
2327         Web Inspector: [refactoring] remove dead code from NetworkPanel
2328         https://bugs.webkit.org/show_bug.cgi?id=62481
2329
2330         * inspector/front-end/NetworkPanel.js:
2331
2332 2011-06-13  Daniel Cheng  <dcheng@chromium.org>
2333
2334         Reviewed by Eric Seidel.
2335
2336         [chromium] Dragging images to Mail.app results in broken attachments
2337         https://bugs.webkit.org/show_bug.cgi?id=62466
2338
2339         No new tests.
2340
2341         * platform/chromium/ClipboardChromium.cpp:
2342         (WebCore::ClipboardChromium::declareAndWriteDragImage):
2343
2344 2011-06-13  Adrienne Walker  <enne@google.com>
2345
2346         Reviewed by Simon Fraser.
2347
2348         Overlap test needs to consider children of composited layers
2349         https://bugs.webkit.org/show_bug.cgi?id=62465
2350
2351         Any child layer with a compositing ancestor will be put into a
2352         composited layer even though they themselves don't need compositing.
2353         As layer bounds aren't hierarchical, these layer bounds themselves
2354         need to be put into the overlap map because the composited layer
2355         itself is not sufficient.
2356
2357         Test: compositing/layer-creation/overlap-animated-layer.html
2358
2359         * rendering/RenderLayerCompositor.cpp:
2360         (WebCore::RenderLayerCompositor::computeCompositingRequirements):
2361
2362 2011-06-13  Xan Lopez  <xlopez@igalia.com>
2363
2364         Unreviewed build fix.
2365
2366         Touch this to try to fix the build...
2367
2368         * platform/gtk/WidgetGtk.cpp:
2369         (WebCore::Widget::~Widget):
2370
2371 2011-06-13  Xan Lopez  <xlopez@igalia.com>
2372
2373         Try to fix GTK+ build.
2374
2375         * GNUmakefile.list.am: remove CredentialStorage.cpp
2376
2377 2011-06-13  Stephen White  <senorblanco@chromium.org>
2378
2379         Reviewed by James Robinson.
2380
2381         Improve GPU canvas startup time on the SkiaGPU path.
2382         https://bugs.webkit.org/show_bug.cgi?id=62594
2383         
2384         Fixed by skipping creation of shaders used only by the legacy path.
2385
2386         Covered by existing canvas tests.
2387
2388         * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
2389         (WebCore::SharedGraphicsContext3D::create):
2390
2391 2011-06-13  Michael Saboff  <msaboff@apple.com>
2392
2393         Reviewed by Oliver Hunt.
2394
2395         Additional FontCache::FontCachePurgePreventer instances needed
2396         https://bugs.webkit.org/show_bug.cgi?id=62498
2397
2398         Added some needed and speculative FontCachePurgePreventer objects.
2399         Built and ran Safari with debug version of webkit that purges all
2400         purgeable fonts in FontCache::purgeInactiveFontDataIfNeeded in order
2401         to find system fallback fonts access via code paths that aren't
2402         protected with FontCachePurgePreventer objects.  Also examined
2403         platform specific code that calls either Font::drawText() or
2404         Canvas::drawText().  For those methods that may be called from currently
2405         unprotected paths, added FontCachePurgePreventer objects.
2406
2407         No new functionality so no new tests.
2408
2409         * inspector/DOMNodeHighlighter.cpp:
2410         * platform/graphics/ca/win/PlatformCALayerWinInternal.cpp:
2411         (PlatformCALayerWinInternal::displayCallback):
2412         * platform/graphics/chromium/cc/CCHeadsUpDisplay.cpp:
2413         (WebCore::CCHeadsUpDisplay::drawHudContents):
2414         * platform/mac/DragImageMac.mm:
2415         (WebCore::widthWithFont):
2416         (WebCore::drawAtPoint):
2417         * rendering/RenderMenuList.cpp:
2418         (WebCore::RenderMenuList::updateOptionsWidth):
2419
2420 2011-06-13  Ryosuke Niwa  <rniwa@webkit.org>
2421
2422         Reviewed by Dan Bernstein.
2423
2424         REGRESSION (r81518): Crash in makeRange() when invoking the dictionary panel over a file input
2425         https://bugs.webkit.org/show_bug.cgi?id=62544
2426
2427         Fixed the crash by adding null pointer checks.
2428
2429         No new tests since there's no way to open dictionary panel.
2430
2431         * dom/Position.cpp:
2432         (WebCore::Position::parentAnchoredEquivalent):
2433         * editing/VisiblePosition.cpp:
2434         (WebCore::makeRange):
2435         * page/Frame.cpp:
2436         (WebCore::Frame::rangeForPoint):
2437
2438 2011-06-13  Adam Barth  <abarth@webkit.org>
2439
2440         Reviewed by Nate Chapin.
2441
2442         Factor IconController out of FrameLoader
2443         https://bugs.webkit.org/show_bug.cgi?id=62509
2444
2445         This new class contains all the icon-related logic from FrameLoader.
2446         The icon-related logic and state has almost zero interaction with the
2447         rest of FrameLoader and is better handled as a separate concern.
2448
2449         * CMakeLists.txt:
2450         * GNUmakefile.list.am:
2451         * WebCore.gypi:
2452         * WebCore.pro:
2453         * WebCore.vcproj/WebCore.vcproj:
2454         * WebCore.xcodeproj/project.pbxproj:
2455         * dom/Document.cpp:
2456         (WebCore::Document::implicitClose):
2457         (WebCore::Document::setIconURL):
2458         * inspector/InspectorResourceAgent.cpp:
2459         (WebCore::InspectorResourceAgent::didReceiveResponse):
2460         * loader/DocumentLoader.cpp:
2461         (WebCore::DocumentLoader::iconLoadDecisionAvailable):
2462         (WebCore::DocumentLoader::continueIconLoadWithDecision):
2463         * loader/FrameLoader.cpp:
2464         (WebCore::FrameLoader::FrameLoader):
2465         (WebCore::FrameLoader::stop):
2466         * loader/FrameLoader.h:
2467         (WebCore::FrameLoader::icon):
2468         * loader/icon/IconLoader.cpp:
2469         (WebCore::IconLoader::startLoading):
2470         (WebCore::IconLoader::finishLoading):
2471         * loader/icon/IconLoader.h:
2472
2473 2011-06-13  Nate Chapin  <japhet@chromium.org>
2474
2475         Reviewed by Darin Fisher.
2476
2477         [V8] Cache V8NPObjects so that we don't create multiple
2478         NPObjects for the same v8::Object.
2479         https://bugs.webkit.org/show_bug.cgi?id=61482
2480
2481         Test: plugins/npruntime/embed-property-equality.html
2482
2483         * bindings/v8/NPV8Object.cpp:
2484         (WebCore::freeV8NPObject):
2485         (WebCore::npCreateV8ScriptObject):
2486
2487 2011-06-13  Xan Lopez  <xlopez@igalia.com>
2488
2489         Reviewed by Martin Robinson.
2490
2491         Distcheck fixes.
2492
2493         * GNUmakefile.am:
2494         * GNUmakefile.list.am:
2495
2496 2011-06-13  Dirk Schulze  <krit@webkit.org>
2497
2498         Reviewed build fix of mac.
2499
2500         SVGAnimation should use direct unit animation for SVGLength
2501         https://bugs.webkit.org/show_bug.cgi?id=61368
2502
2503         Forgot to add SVGAnimatedLength.cpp. 
2504
2505         * WebCore.xcodeproj/project.pbxproj:
2506
2507 2011-06-13  Dirk Schulze  <krit@webkit.org>
2508
2509         Reviewed by Nikolas Zimmermann.
2510
2511         SVGAnimation should use direct unit animation for SVGLength
2512         https://bugs.webkit.org/show_bug.cgi?id=61368
2513
2514         When running SMIL animations  within SVG, we unnecessarily transform the underlying SVG primitive datatype to strings, number+units, and back. As first step the target element
2515         gets asked for its current value. This value gets transformed to a string. In SVGAnimateElement we try to parse this string again and
2516         split it into a number and its unit. In the further steps we just animate the number. This number gets transformed back to a string
2517         together with the parsed unit. The string gets passed back to the target element, which is responsible for parsing the passed string back
2518         to a value as a SVG primitive datatype (like SVGLength, SVGNumber, SVGAngle, SVGColor, ...), relayout and rerendering.
2519
2520         In short: SVG primitive datatype -> string -> number + unit animation -> string -> SVG primitive datatype.
2521
2522         This patch does not attempt to change the string transformations, but addresses the parsing of the string back to a number and unit in the
2523         SVG animation code. There's no need to write a new parser in SVGAnimateElement to parse SVG primitive datatypes, we can instead reuse the existing ones.
2524         Also the current parser of SVGAnimateElement does not handle most unit types, nor is it possible to animate lists like SVGLengthList with the
2525         parsed content. An animation of values with different unit types is not possible:
2526
2527         <rect width="20" height="20">
2528             <animate animateAttribute="width" from="20px" to="10%" dur="4s"/>
2529         </rect>
2530
2531         For the example above we would animate the rect width from 20px to 10px in 4 seconds and jump to the 10% of the viewport at the end of the
2532         animation.
2533         With using the parsers of SVG primitive datatypes we will also use the SVG primitive datatypes in the animation code itself. And that makes
2534         it possible to do such animations.
2535
2536         In short: SVG primitive datatype -> string -> SVG primitive datatype animation -> string -> SVG primitive datatype.
2537
2538         It will be easier to avoid the string transformation once all SVG primitive datatypes are supported.
2539
2540         To hide the complexity of the animation code, the actual calculations of SVG animation specific values was moved to the corresponding
2541         SVGAnimated* files (SVGAnimatedLength.cpp for SVGLength). SVGAnimateElement itself just works with the new added generic datatype SVGAnimationType.
2542         SVGAnimatorFactory creates the SVG primitive datatype specific animators. This makes the main animation code a lot more readable and 
2543         maintainable.
2544
2545         With this patch I add the SVGAnimatorFactory and convert SVGLength animation to the new concept.
2546
2547         Tests: svg/animations/svglength-animation-LengthModeHeight.html
2548                svg/animations/svglength-animation-LengthModeOther.html
2549                svg/animations/svglength-animation-LengthModeWidth.html
2550                svg/animations/svglength-animation-invalid-value-1.html
2551                svg/animations/svglength-animation-invalid-value-2.html
2552                svg/animations/svglength-animation-invalid-value-3.html
2553                svg/animations/svglength-animation-number-to-number.html
2554                svg/animations/svglength-animation-px-to-cm.html
2555                svg/animations/svglength-animation-px-to-ems.html
2556                svg/animations/svglength-animation-px-to-exs.html
2557                svg/animations/svglength-animation-px-to-in.html
2558                svg/animations/svglength-animation-px-to-number.html
2559                svg/animations/svglength-animation-px-to-pc.html
2560                svg/animations/svglength-animation-px-to-percentage.html
2561                svg/animations/svglength-animation-px-to-pt.html
2562                svg/animations/svglength-animation-px-to-px.html
2563                svg/animations/svglength-animation-values.html
2564
2565         * CMakeLists.txt: Added new files to build system.
2566         * GNUmakefile.list.am: Ditto.
2567         * WebCore.gypi: Ditto.
2568         * WebCore.pro: Ditto.
2569         * WebCore.vcproj/WebCore.vcproj: Ditto.
2570         * WebCore.xcodeproj/project.pbxproj: Ditto.
2571         * svg/SVGAllInOne.cpp: Added SVGAnimatedLength.cpp for Win and other build systems.
2572         * svg/SVGAnimateElement.cpp:
2573         (WebCore::parseNumberValueAndUnit): Remove parsing code for SVGLength. Use SVGLength parser directly.
2574         (WebCore::SVGAnimateElement::adjustForCurrentColor): Made adjustForCurrentColor public as preperation for SVGAnimatedColor.
2575         (WebCore::getPropertyValue): Inline function to get computedStyle of CSS property.
2576         (WebCore::SVGAnimateElement::adjustForInheritance): Made adjustForInheritance as preperation for SVGAnimated* files.
2577         (WebCore::SVGAnimateElement::determineAnimatedAttributeType): SVGLength need special handling via SVGAnimator now.
2578         (WebCore::SVGAnimateElement::calculateAnimatedValue): Cleanup. Make use of SVGAnimator for SVGLength.
2579         (WebCore::SVGAnimateElement::calculateFromAndToValues): Ditto.
2580         (WebCore::SVGAnimateElement::calculateFromAndByValues): Ditto.
2581         (WebCore::SVGAnimateElement::resetToBaseValue): Ditto.
2582         (WebCore::SVGAnimateElement::applyResultsToTarget): Ditto.
2583         (WebCore::SVGAnimateElement::calculateDistance): Ditto.
2584         * svg/SVGAnimateElement.h:
2585         * svg/SVGAnimatedLength.cpp: Added.
2586         (WebCore::SVGAnimatedLengthAnimator::SVGAnimatedLengthAnimator):
2587         (WebCore::sharedSVGLength):
2588         (WebCore::SVGAnimatedLengthAnimator::constructFromString):
2589         (WebCore::SVGAnimatedLengthAnimator::calculateFromAndToValues):
2590         (WebCore::SVGAnimatedLengthAnimator::calculateFromAndByValues):
2591         (WebCore::SVGAnimatedLengthAnimator::calculateAnimatedValue):
2592         (WebCore::SVGAnimatedLengthAnimator::calculateDistance):
2593         * svg/SVGAnimatedLength.h: Added new class SVGAnimatedLengthAnimator which is responsible for the actual animation.
2594         (WebCore::SVGAnimatedLengthAnimator::~SVGAnimatedLengthAnimator):
2595         * svg/SVGAnimatedType.h: Added. Generic SVG unit type for animations in SVGAnimateElement.
2596         (WebCore::SVGAnimatedType::createLength):
2597         (WebCore::SVGAnimatedType::~SVGAnimatedType):
2598         (WebCore::SVGAnimatedType::type):
2599         (WebCore::SVGAnimatedType::length):
2600         (WebCore::SVGAnimatedType::SVGAnimatedType):
2601         * svg/SVGAnimatedTypeAnimator.h: Added. Base class for SVGAnimatedLengthAnimator and future SVG unit animators.
2602         (WebCore::SVGAnimatedTypeAnimator::~SVGAnimatedTypeAnimator):
2603         (WebCore::SVGAnimatedTypeAnimator::setContextElement):
2604         (WebCore::SVGAnimatedTypeAnimator::SVGAnimatedTypeAnimator):
2605         * svg/SVGAnimationElement.cpp:
2606         (WebCore::SVGAnimationElement::parseMappedAttribute): We do not use parseNumberValueAndUnit for SVGLength now. Have to strip white spaces here. Whitespaces shouldn't
2607           be stripped on the following attributes: 'from', 'to' and 'by'. This is not the case for SVGLength anymore. Added new tests to check this behavior.
2608         (WebCore::SVGAnimationElement::animationMode): Enum is accessible in WebCore namespace now.
2609         (WebCore::SVGAnimationElement::calcMode): Ditto.
2610         * svg/SVGAnimationElement.h:
2611         * svg/SVGAnimatorFactory.h: Added.
2612         (WebCore::SVGAnimatorFactory::create):
2613         * svg/SVGLength.cpp:
2614         (WebCore::SVGLength::setValueAsString): New setter with string and SVGLengthMode.
2615         (WebCore::SVGLength::lengthModeForAnimatedLengthAttribute): Get LengthMode for SVGLength depending on the attribute name.
2616         * svg/SVGLength.h:
2617
2618 2011-06-13  Adam Barth  <abarth@webkit.org>
2619
2620         Reviewed by Darin Adler.
2621
2622         r87539 broke HTMLMediaElement url logging
2623         https://bugs.webkit.org/show_bug.cgi?id=62551
2624
2625         Returning pointers to temporaries is bad times!
2626
2627         * html/HTMLMediaElement.cpp:
2628         (WebCore::urlForLogging):
2629         (WebCore::HTMLMediaElement::loadResource):
2630         (WebCore::HTMLMediaElement::isSafeToLoadURL):
2631         (WebCore::HTMLMediaElement::selectNextSourceChild):
2632         (WebCore::HTMLMediaElement::sourceWasAdded):
2633         (WebCore::HTMLMediaElement::sourceWillBeRemoved):
2634
2635 2011-06-13  Tony Chang  <tony@chromium.org>
2636
2637         Reviewed by Dimitri Glazkov.
2638
2639         rename ENABLE_NEW_FLEXBOX to ENABLE_CSS3_FLEXBOX
2640         https://bugs.webkit.org/show_bug.cgi?id=62578
2641
2642         * Configurations/FeatureDefines.xcconfig:
2643
2644 2011-06-13  Mark Pilgrim  <pilgrim@chromium.org>
2645
2646         Reviewed by Tony Chang.
2647
2648         IndexedDB: setVersion() version argument is required
2649         https://bugs.webkit.org/show_bug.cgi?id=62401
2650
2651         Test: storage/indexeddb/setVersion-undefined.html
2652
2653         * storage/IDBDatabase.cpp:
2654         (WebCore::IDBDatabase::setVersion): check for null version
2655         * storage/IDBDatabase.idl: add IDL magic to force undefined to null so we can handle both missing and null arguments
2656
2657 2011-06-13  Simon Fraser  <simon.fraser@apple.com>
2658
2659         Reviewed by Adele Peterson.
2660
2661         Print out bounds origin in layer dump
2662         https://bugs.webkit.org/show_bug.cgi?id=62583
2663
2664         Include m_boundsOrigin in the layer dump, which is used by layerTreeAsText().
2665
2666         * platform/graphics/GraphicsLayer.cpp:
2667         (WebCore::GraphicsLayer::dumpProperties):
2668
2669 2011-06-13  Simon Fraser  <simon.fraser@apple.com>
2670
2671         Reviewed by Adele Peterson.
2672
2673         Add utility method to report whether a RenderLayer has any scrollbars
2674         https://bugs.webkit.org/show_bug.cgi?id=62579
2675         
2676         New method that returns true with either scrollbar is present.
2677
2678         * rendering/RenderLayer.h:
2679         (WebCore::RenderLayer::hasScrollbars):
2680
2681 2011-06-11  Jer Noble  <jer.noble@apple.com>
2682
2683         Reviewed by Anders Carlsson.
2684
2685         Avoid flashing when exiting full-screen mode.
2686         https://bugs.webkit.org/show_bug.cgi?id=62338
2687
2688         No new tests; covered by the existing full-screen tests.
2689
2690         Now that we are forcing a repaint inside of setRootFullScreenLayer() instead of during
2691         the next run loop, make sure that we have disabled animation before calling 
2692         setRootFullScreenLayer() so that the RenderFullScreen renderer and its contents are
2693         painted.
2694
2695         * dom/Document.cpp:
2696         (WebCore::Document::webkitDidEnterFullScreenForElement):
2697
2698 2011-06-10  Jer Noble  <jer.noble@apple.com>
2699
2700         Reviewed by Darin Adler.
2701
2702         Flash of white on left and right edges of screen when showing fullscreen controller when movie doesn't fill the entire screen
2703         https://bugs.webkit.org/show_bug.cgi?id=62491
2704         <rdar://problem/9584427>
2705
2706         No new tests; should be covered by existing fullscreen pixel tests.
2707
2708         On certain displays, when a RenderFullScreen renderer is created, it is large enough to trigger the 
2709         creation of a tiled CALayer (instead of a normal CALayer).  Painting in these layers necessarily
2710         happens asynchronously, so the flash is occurring because of the async painting of the RenderFullScreen
2711         renderer's background color.  Since we know the RenderFullScreen does not otherwise paint its contents,
2712         we can add a special case in the RenderLayerBacking to set the GraphicsLayer contents to be the
2713         renderer's background color.  Fill in support for creating a contentLayer to contain the background 
2714         color inside GraphicsLayerCA.
2715
2716         * platform/graphics/GraphicsLayer.h:
2717         (WebCore::GraphicsLayer::setContentsToBackgroundColor): Renamed from setContentsBackgroundColor to match
2718             the other setContentsTo... functions.
2719         * platform/graphics/ca/GraphicsLayerCA.cpp:
2720         (WebCore::GraphicsLayerCA::setContentsToBackgroundColor): Added. Creates a contentsLayer to host the 
2721             background color.
2722         (WebCore::GraphicsLayerCA::updateLayerBackgroundColor): Removed a comment only.
2723         * platform/graphics/ca/GraphicsLayerCA.h:
2724         * rendering/RenderLayerBacking.cpp:
2725         (WebCore::RenderLayerBacking::updateGraphicsLayerConfiguration): Special case the RenderFullScreen
2726             renderer to call updateBackgroundColor.
2727         (WebCore::RenderLayerBacking::updateBackgroundColor): Added.
2728         (WebCore::RenderLayerBacking::containsPaintedContent): Tell the backing that the RenderFullScreen
2729             renderer does not paint its contents.
2730         * rendering/RenderLayerBacking.h:
2731
2732 2011-06-13  Tim Horton  <timothy_horton@apple.com>
2733
2734         Reviewed by Simon Fraser.
2735
2736         REGRESSION(87152): Crash on page with svg fonts
2737         https://bugs.webkit.org/show_bug.cgi?id=61556
2738
2739         We can't assume that the parent of a SVG-font-styled
2740         text node won't be an anonymous block.
2741
2742         Test: svg/text/text-font-anonymous-parent.xhtml
2743
2744         * rendering/svg/SVGTextRunRenderingContext.cpp:
2745         (WebCore::firstParentRendererForNonTextNode):
2746         (WebCore::SVGTextRunWalker::walk):
2747         (WebCore::floatWidthOfSubStringUsingSVGFont):
2748         (WebCore::SVGTextRunRenderingContext::drawTextUsingSVGFont):
2749
2750 2011-06-13  Tony Chang  <tony@chromium.org>
2751
2752         Reviewed by Adam Barth.
2753
2754         rename ENABLE_FLEXBOX to ENABLE_NEW_FLEXBOX
2755         https://bugs.webkit.org/show_bug.cgi?id=62545
2756
2757         * Configurations/FeatureDefines.xcconfig:
2758
2759 2011-06-13  Xan Lopez  <xlopez@igalia.com>
2760
2761         Reviewed by Martin Robinson.
2762
2763         Some distcheck fixes. Still broken, but this is moves us closer to
2764         the target.
2765
2766         * GNUmakefile.am: fix vpath syntax and add missing files to
2767         EXTRA_DIST.
2768         * GNUmakefile.list.am: add missing files and remove dead files.
2769         * bindings/gobject/GNUmakefile.am: fix comment.
2770
2771 2011-06-13  Noam Rosenthal  <noam.rosenthal@nokia.com>
2772
2773         Reviewed by Kenneth Rohde Christiansen.
2774
2775         Add layer factory to GraphicsLayer for creating non-default layer type.
2776         https://bugs.webkit.org/show_bug.cgi?id=61925
2777
2778         Use the new factory function in TextureMapper.
2779
2780         No new functionality so no new tests.
2781
2782         * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
2783         (WebCore::GraphicsLayer::create):
2784
2785 2011-06-13  Young Han Lee  <joybro@company100.net>
2786
2787         Reviewed by Kenneth Rohde Christiansen.
2788
2789         [Texmap][Qt] Accelerated animation is repeating as if its direction property is always 'alternate'.
2790         https://bugs.webkit.org/show_bug.cgi?id=62281
2791
2792         syncAnimations() has miscalculated a normalized progress value as if the animation always has alternate direction property.
2793
2794         Test: animations/animation-direction-normal.html
2795
2796         * platform/graphics/texmap/TextureMapperNode.cpp:
2797         (WebCore::TextureMapperNode::syncAnimations):
2798
2799 2011-06-13  Dirk Schulze  <krit@webkit.org>
2800
2801         Reviewed by Rob Buis.
2802
2803         SVG patternTransform not animatable
2804         https://bugs.webkit.org/show_bug.cgi?id=62538
2805
2806         SVG animation did not take attribute 'patternTransform' into account. Added support for combination of
2807         SVGPatternElement and attribute 'patternTransform' to SVGAnimateTransformElement.
2808
2809         Tests: svg/animations/animateTransform-pattern-transform.html
2810                svg/animations/animateTransform-transformable-transform.html
2811
2812         * svg/SVGAnimateTransformElement.cpp:
2813         (WebCore::transformListFor):
2814         (WebCore::SVGAnimateTransformElement::resetToBaseValue):
2815         (WebCore::SVGAnimateTransformElement::applyResultsToTarget):
2816
2817 2011-06-13  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>
2818
2819         Reviewed by Andreas Kling.
2820
2821         [Qt] JSC Bridge: convert QtConnectionObject to use JSC API
2822         https://bugs.webkit.org/show_bug.cgi?id=62330
2823
2824         This patch is based on the draft patch by Noam Rosenthal in bug 60842.
2825         Qt API autotests cover the bridge behavior and pass after this patch.
2826
2827         * bridge/qt/qt_runtime.h: Change QtConnectionObject to use JSC API types. In
2828         particular, we got rid of Strong<JSObject> members. Renamed some members and
2829         arguments to follow existing naming in QObject::connect().
2830
2831         * bridge/qt/qt_runtime.cpp:
2832         (JSC::Bindings::QtRuntimeConnectionMethod::call): Use a new helper function
2833         to create a connection, passing the ExecState* that will be used when the
2834         connection is activated (signal emitted). Use JSC API types when looking up
2835         the matching signal to disconnect.
2836
2837         (JSC::Bindings::QtConnectionObject::QtConnectionObject): Use JSC API to
2838         protect the receiver and receiverFunction from being garbage
2839         collected. Removed the ASSERT() since we don't hold ProtectedPtrs (in current
2840         code were Strong<>) anymore.
2841
2842         (JSC::Bindings::QtConnectionObject::~QtConnectionObject): Explain why is safe
2843         to use m_originalSender here. Unprotect values that we protected in constructor.
2844
2845         (JSC::Bindings::isJavaScriptFunction): Helper function to identify whether a
2846         JSObjectRef is a JS function (in contrast to a native function exposed to JS).
2847
2848         (JSC::Bindings::QtConnectionObject::execute):
2849         (JSC::Bindings::QtConnectionObject::match):
2850         Both updated to use JSC API when appliable. Note that convertQVariantToValue
2851         still returns JSC internal types, will be handled in a different patch.
2852
2853         (JSC::Bindings::QtConnectionObject::createWithInternalJSC):
2854         Convenince for the existing caller until it is converted to JSC as well.
2855
2856 2011-06-13  Carlos Garcia Campos  <cgarcia@igalia.com>
2857
2858         Reviewed by Martin Robinson.
2859
2860         [GTK] Add context menu support for Webkit2
2861         https://bugs.webkit.org/show_bug.cgi?id=54827
2862
2863         * platform/ContextMenuItem.h: Add gtkAction().
2864         * platform/gtk/ContextMenuGtk.cpp:
2865         (WebCore::ContextMenu::ContextMenu): Implement constructor that
2866         receives a platform menu.
2867         (WebCore::ContextMenu::setPlatformDescription): Make sure we don't
2868         destroy the menu if the new context menu is the current one.
2869         (WebCore::contextMenuItemVector): Implement this method to return
2870         the list of menu items in the given context menu, required by WebKit2.
2871         (WebCore::platformMenuDescription): Implement this method to
2872         return a platform menu for the given menu items.
2873         * platform/gtk/ContextMenuItemGtk.cpp:
2874         (WebCore::createPlatformMenuItemDescription): Helper function to
2875         create a platform context menu item.
2876         (WebCore::ContextMenuItem::ContextMenuItem): Use
2877         createPlatformMenuItemDescription().
2878         (WebCore::ContextMenuItem::title): Convert the title from UTF-8.
2879         (WebCore::ContextMenuItem::setTitle): Use gtkAction().
2880         (WebCore::ContextMenuItem::setSubMenu): Implement setSubMenu()
2881         that receives a list of items.
2882         (WebCore::ContextMenuItem::setChecked): Use gtkAction().
2883         (WebCore::ContextMenuItem::checked): Implement this, required by WebKit2.
2884         (WebCore::ContextMenuItem::enabled): Ditto.
2885         (WebCore::ContextMenuItem::setEnabled): Use gtkAction().
2886         (WebCore::ContextMenuItem::gtkAction): Return the GtkAction
2887         associated to the context menu item.
2888
2889 2011-06-13  Keishi Hattori  <keishi@webkit.org>
2890
2891         Sort WebCore.xcodeproj
2892
2893         Accomplished using sort-Xcode-project-file.
2894
2895         * WebCore.xcodeproj/project.pbxproj:
2896
2897 2011-06-12  Jer Noble  <jer.noble@apple.com>
2898
2899         Reviewed by Darin Adler.
2900
2901         REGRESSION (full screen video): Watch Again button is obscured after full screen playback ends at Apple trailers page
2902         https://bugs.webkit.org/show_bug.cgi?id=62507
2903
2904         No new tests; DRT would have to be modified to delay between receiving exitFullScreenForElement() and calling 
2905         webkitWillExitFullScreenForElement() to be able to test this.
2906
2907         If the full-screen element is removed, and webkitWillExitFullScreenForElement() is not called before
2908         fullScreenElementRemoved() returns, then ancestors of the full-screen element will not have their
2909         containsFullScreenElement property removed.  To protect against this, reset the property by calling 
2910         setContainsFullScreenElementRecursively() from within fullScreenElementRemoved().
2911
2912         * dom/Document.cpp:
2913         (WebCore::Document::fullScreenElementRemoved): Added call to setContainsFullScreenElementRecursively.
2914
2915 2011-06-12  Adam Barth  <abarth@webkit.org>
2916
2917         Reviewed by Alexey Proskuryakov.
2918
2919         Rename FrameLoaderClient::interruptForPolicyChangeError to use the past tense
2920         https://bugs.webkit.org/show_bug.cgi?id=62516
2921
2922         As requested by Alexey in https://bugs.webkit.org/show_bug.cgi?id=62510.
2923
2924         * loader/EmptyClients.h:
2925         (WebCore::EmptyFrameLoaderClient::interruptedForPolicyChangeError):
2926         * loader/FrameLoaderClient.h:
2927         * loader/MainResourceLoader.cpp:
2928         (WebCore::MainResourceLoader::interruptedForPolicyChangeError):
2929         (WebCore::MainResourceLoader::stopLoadingForPolicyChange):
2930         (WebCore::MainResourceLoader::continueAfterContentPolicy):
2931         * loader/MainResourceLoader.h:
2932
2933 2011-06-12  Hironori Bono  <hbono@chromium.org>
2934
2935         Reviewed by Hajime Morita.
2936
2937         Add null checks to HTMLTextAreaElement::removeSpellcheckRange().
2938         https://bugs.webkit.org/show_bug.cgi?id=62526
2939
2940         This change adds null checks to the following function to prevent crashes
2941         when calling removeSpellcheckRange() with null:
2942         HTMLTextAreaElement::removeSpellcheckRange(),
2943         HTMLInputElement::removeSpellcheckRange(), and
2944         HTMLDivElement::removeSpellcheckRange().
2945
2946         Test: editing/spelling/spellcheck-api-crash.html
2947
2948         * html/HTMLDivElement.cpp:
2949         (WebCore::HTMLDivElement::removeSpellcheckRange):
2950         * html/HTMLInputElement.cpp:
2951         (WebCore::HTMLInputElement::removeSpellcheckRange):
2952         * html/HTMLTextAreaElement.cpp:
2953         (WebCore::HTMLTextAreaElement::removeSpellcheckRange):
2954
2955 2011-06-12  Adam Barth  <abarth@webkit.org>
2956
2957         Reviewed by Darin Adler.
2958
2959         DocumentParser::appendBytes should use size_t for length instead of int
2960         https://bugs.webkit.org/show_bug.cgi?id=62508
2961
2962         size_t is the proper type for distances in memory, especially on 64 bit
2963         machines.
2964
2965         * dom/DecodedDataDocumentParser.cpp:
2966         (WebCore::DecodedDataDocumentParser::appendBytes):
2967         * dom/DecodedDataDocumentParser.h:
2968         * dom/DocumentParser.h:
2969         * html/ImageDocument.cpp:
2970         (WebCore::ImageDocumentParser::appendBytes):
2971         * html/MediaDocument.cpp:
2972         (WebCore::MediaDocumentParser::appendBytes):
2973         * html/PluginDocument.cpp:
2974         (WebCore::PluginDocumentParser::appendBytes):
2975         * loader/SinkDocument.cpp:
2976         (WebCore::SinkDocumentParser::appendBytes):
2977
2978 2011-06-12  Adam Barth  <abarth@webkit.org>
2979
2980         Reviewed by Eric Seidel.
2981
2982         Remove FrameLoader::isProcessingUserGesture
2983         https://bugs.webkit.org/show_bug.cgi?id=62519
2984
2985         This function is a remnant of the old user gesture design, which
2986         involved per-frame state stored on FrameLoader.  Now that we're using
2987         static state, we don't need this function anymore.
2988
2989         This function used to check whether JavaScript was enabled for the
2990         top-level frame, but that check doesn't make any sense (like much of
2991         the old user gesture code).
2992
2993         * WebCore.exp.in:
2994         * html/HTMLMediaElement.cpp:
2995         (WebCore::HTMLMediaElement::processingUserGesture):
2996         * loader/FrameLoader.cpp:
2997         (WebCore::FrameLoader::submitForm):
2998         * loader/FrameLoader.h:
2999         * rendering/RenderFileUploadControl.cpp:
3000         (WebCore::RenderFileUploadControl::click):
3001
3002 2011-06-12  Adam Barth  <abarth@webkit.org>
3003
3004         Fix fullscreen/full-screen-iframe-legacy.html.
3005
3006         * html/HTMLVideoElement.idl:
3007
3008 2011-06-12  Adam Barth  <abarth@webkit.org>
3009
3010         Reviewed by Alexey Proskuryakov.
3011
3012         Remove trival "forward-to-client" member functions from FrameLoader
3013         https://bugs.webkit.org/show_bug.cgi?id=62510
3014
3015         Originally, FrameLoader was supposed to abstract FrameLoaderClient, but
3016         we lost that battle log ago.  Nowadays, it's easier if folks just call
3017         into FrameLoaderClient directly.  Many of these functions have direct
3018         callers already anyway.
3019
3020         * WebCore.exp.in:
3021         * html/HTMLMediaElement.cpp:
3022         (WebCore::HTMLMediaElement::createRenderer):
3023         (WebCore::HTMLMediaElement::attach):
3024         * loader/DocumentLoader.cpp:
3025         (WebCore::DocumentLoader::setRequest):
3026         (WebCore::DocumentLoader::setMainDocumentError):
3027         (WebCore::DocumentLoader::setupForReplaceByMIMEType):
3028         * loader/FrameLoader.cpp:
3029         (WebCore::FrameLoader::didFirstLayout):
3030         * loader/FrameLoader.h:
3031             - cancelledError is slightly more delicate, so I'm going to move it in
3032               a separate patch.
3033         * loader/MainResourceLoader.cpp:
3034         (WebCore::MainResourceLoader::interruptForPolicyChangeError):
3035         (WebCore::MainResourceLoader::stopLoadingForPolicyChange):
3036         (WebCore::MainResourceLoader::continueAfterContentPolicy):
3037         (WebCore::MainResourceLoader::handleEmptyLoad):
3038         (WebCore::MainResourceLoader::loadNow):
3039         * loader/MainResourceLoader.h:
3040         * loader/NetscapePlugInStreamLoader.cpp:
3041         (WebCore::NetscapePlugInStreamLoader::didReceiveResponse):
3042         * loader/PingLoader.cpp:
3043         (WebCore::PingLoader::PingLoader):
3044         * loader/PolicyChecker.cpp:
3045         (WebCore::PolicyChecker::continueAfterNavigationPolicy):
3046         * loader/ResourceLoader.cpp:
3047         (WebCore::ResourceLoader::blockedError):
3048         (WebCore::ResourceLoader::cannotShowURLError):
3049         (WebCore::ResourceLoader::shouldUseCredentialStorage):
3050         (WebCore::ResourceLoader::canAuthenticateAgainstProtectionSpace):
3051         * page/ContextMenuController.cpp:
3052         (WebCore::ContextMenuController::populate):
3053
3054 2011-06-12  Dan Bernstein  <mitz@apple.com>
3055
3056         Reviewed by Darin Adler.
3057
3058         <rdar://problem/9513180> REGRESSION (r84166): recalcStyle for display:inline to display:none transition has complexity N^2 where N is the number of child Text nodes
3059         https://bugs.webkit.org/show_bug.cgi?id=61557
3060
3061         Replaced the fix for bug 58500 with a refined version.
3062
3063         * rendering/RenderText.cpp:
3064         (WebCore::RenderText::clippedOverflowRectForRepaint): Use the containing block unless it is
3065         across a layer boundary.
3066
3067 2011-06-12  Adam Barth  <abarth@webkit.org>
3068
3069         Reviewed by Andreas Kling.
3070
3071         Minor user-gesture related cleanup
3072         https://bugs.webkit.org/show_bug.cgi?id=62511
3073
3074         In reading the user gesture code, I noticed that these lines of code
3075         should be deleted because they don't do anything.
3076
3077         * bindings/v8/NPV8Object.cpp:
3078         * html/HTMLAnchorElement.cpp:
3079         * html/HTMLVideoElement.idl:
3080
3081 2011-06-11  Nikolas Zimmermann  <nzimmermann@rim.com>
3082
3083         Reviewed by Dirk Schulze.
3084
3085         Add TextRun charactersLength member
3086         https://bugs.webkit.org/show_bug.cgi?id=62501
3087
3088         Preparation patch 2: Propagate the maximum length of the characters buffer the TextRun operates on, even when we're only measuring a substring.
3089         For example: In RenderText when we're measuring 'len' characters starting from "text()->characters() + start", there's a portion
3090         of "textLength() - start" characters that we're not processing. In order to support ligatures when integrating SVG Fonts
3091         within the GlyphPage concept, we need this extra information, to lookup ligatures even when single chars are measured.
3092         If a font defines an eg "ffl" ligature, and we're measuring the "f" of "ffl", it shall looukp the "ffl" glyph from the font,
3093         and skip the next two characters (this will be done in WidthIterator).
3094
3095         This doesn't yet affect any test, the new SVG Fonts code is not merged yet, this is the preparaion patch 2.
3096
3097         * platform/graphics/Font.h: Add yet-unused "const TextRun&" parameter to drawGlyphBuffer/drawEmphasisMarks.
3098         * platform/graphics/FontFastPath.cpp: Ditto. This parameter will be used to looukp the TextRunRenderingContext in a follow-up patch.
3099         (WebCore::Font::drawSimpleText):
3100         (WebCore::Font::drawEmphasisMarksForSimpleText):
3101         (WebCore::Font::drawGlyphBuffer):
3102         (WebCore::Font::drawEmphasisMarks):
3103         * platform/graphics/TextRun.h: Add "int m_charactersLength", similar to "int m_len". It denotes the maximum length of the characters buffer
3104                                        that we're holding. It defaults to the passed "len" value, but is overriden by explicit setCharactersLength calls.
3105         (WebCore::TextRun::TextRun):
3106         (WebCore::TextRun::charactersLength):
3107         (WebCore::TextRun::setCharactersLength):
3108         * platform/graphics/mac/FontComplexTextMac.cpp: Pass TextRun do drawGlyphBuffer/drawEmphasisMarks.
3109         (WebCore::Font::drawComplexText):
3110         (WebCore::Font::drawEmphasisMarksForComplexText):
3111         * platform/graphics/win/FontWin.cpp: Ditto.
3112         (WebCore::Font::drawComplexText):
3113         (WebCore::Font::drawEmphasisMarksForComplexText):
3114         * platform/graphics/wx/FontWx.cpp: Ditto.
3115         (WebCore::Font::drawComplexText):
3116         (WebCore::Font::drawEmphasisMarksForComplexText):
3117         * rendering/InlineTextBox.cpp: Call setCharactersLength on the processed TextRun.
3118         (WebCore::InlineTextBox::constructTextRun):
3119         * rendering/RenderBlockLineLayout.cpp: Ditto.
3120         (WebCore::textWidth):
3121         (WebCore::tryHyphenating):
3122         * rendering/RenderText.cpp: Ditto.
3123         (WebCore::RenderText::widthFromCache):
3124         (WebCore::RenderText::computePreferredLogicalWidths):
3125         (WebCore::RenderText::width):
3126         * rendering/svg/SVGInlineTextBox.cpp: Ditto.
3127         (WebCore::SVGInlineTextBox::constructTextRun):
3128
3129 2011-06-12  Robert Hogan  <robert@webkit.org>
3130
3131         Reviewed by Andreas Kling.
3132
3133         [Qt] Fix methods.html and methods-lower-case.html
3134         https://bugs.webkit.org/show_bug.cgi?id=62221
3135
3136         * platform/network/qt/QNetworkReplyHandler.cpp:
3137         (WebCore::QNetworkReplyHandler::clearContentsHeaders): Refactor code from sendNetworkRequest
3138         (WebCore::QNetworkReplyHandler::getIODevice): ditto
3139         (WebCore::QNetworkReplyHandler::sendNetworkRequest):
3140             - Remove ContentType and ContentLength headers from GET, DELETE and HEAD requests since
3141               we do not send data with any of these requests.
3142             - If a custom HTTP operation contains data, send it.
3143         * platform/network/qt/QNetworkReplyHandler.h:
3144
3145 2011-06-11  Michael Saboff  <msaboff@apple.com>
3146
3147         Reviewed by James Robinson.
3148
3149         REGRESSION(88260): 10-50% performance regression across many page cyclers
3150         https://bugs.webkit.org/show_bug.cgi?id=62349
3151
3152         Made CHROMIUM platform specific values for cMaxInactiveFontData and
3153         cTargetInactiveFontData to mitigate the current performance issue on Chromium
3154         page cycler tests.  Made the chromium value for cMaxInactiveFontData 250 based
3155         on recommendation from James Robinson.  Changed cTargetInactiveFontData to 200
3156         so that 50 inactive fonts will be cleaned up at a time.
3157
3158         Change made to address existing Chromium performance test regression.
3159
3160         * platform/graphics/FontCache.cpp:
3161
3162 2011-06-11  Adam Barth  <abarth@webkit.org>
3163
3164         Reviewed by Darin Adler.
3165
3166         Remove unnecessary strlen from DocumentWriter
3167         https://bugs.webkit.org/show_bug.cgi?id=62505
3168
3169         This ugly piece of code appears not to be needed.  Rejoice.
3170
3171         * WebCore.exp.in:
3172         * loader/DocumentLoader.cpp:
3173         (WebCore::DocumentLoader::commitData):
3174         * loader/DocumentLoader.h:
3175         * loader/DocumentWriter.cpp:
3176         (WebCore::DocumentWriter::addData):
3177         * loader/DocumentWriter.h:
3178
3179 2011-06-11  Adam Barth  <abarth@webkit.org>
3180
3181         Reviewed by Darin Adler.
3182
3183         DocumentParser::appendBytes shouldn't have a "flush" boolean parameter
3184         https://bugs.webkit.org/show_bug.cgi?id=62499
3185
3186         This patch removes the "flush" Boolean parameter from
3187         DocumentParser::appendBytes in favor of a new flush method.  This makes
3188         some code in DocumentWriter look less ridiculous.
3189
3190         There's still lots of on contorting to do here, but it's a start.
3191
3192         * dom/DecodedDataDocumentParser.cpp:
3193         (WebCore::DecodedDataDocumentParser::appendBytes):
3194         (WebCore::DecodedDataDocumentParser::flush):
3195         * dom/DecodedDataDocumentParser.h:
3196         * dom/DocumentParser.h:
3197         * dom/RawDataDocumentParser.h:
3198         (WebCore::RawDataDocumentParser::flush):
3199         * html/ImageDocument.cpp:
3200         (WebCore::ImageDocumentParser::appendBytes):
3201         * html/MediaDocument.cpp:
3202         (WebCore::MediaDocumentParser::appendBytes):
3203         * html/PluginDocument.cpp:
3204         (WebCore::PluginDocumentParser::appendBytes):
3205         * loader/DocumentWriter.cpp:
3206         (WebCore::DocumentWriter::reportDataReceived):
3207         (WebCore::DocumentWriter::addData):
3208         (WebCore::DocumentWriter::endIfNotLoadingMainResource):
3209         * loader/DocumentWriter.h:
3210         * loader/SinkDocument.cpp:
3211         (WebCore::SinkDocumentParser::appendBytes):
3212
3213 2011-06-11  Dimitri Glazkov  <dglazkov@chromium.org>
3214
3215         Unreviewed, rolling out r88569.
3216         http://trac.webkit.org/changeset/88569
3217         https://bugs.webkit.org/show_bug.cgi?id=62398
3218
3219         Broke Chromium browser test:
3220         IndexedDBBrowserTestWithGCExposed.DatabaseCallbacksTest
3221
3222         * storage/IDBFactory.idl:
3223
3224 2011-06-11  Dimitri Glazkov  <dglazkov@chromium.org>
3225
3226         Unreviewed, rolling out r88565.
3227         http://trac.webkit.org/changeset/88565
3228         https://bugs.webkit.org/show_bug.cgi?id=62401
3229
3230         Broke Chromium browser test:
3231         IndexedDBBrowserTestWithGCExposed.DatabaseCallbacksTest
3232
3233         * storage/IDBDatabase.cpp:
3234         (WebCore::IDBDatabase::setVersion):
3235         * storage/IDBDatabase.idl:
3236
3237 2011-06-10  Abhishek Arya  <inferno@chromium.org>
3238
3239         Reviewed by Simon Fraser.
3240
3241         Null parent element sheet pointers in CSSMutableStyleDeclaration consumers
3242         when removed from document, set them when reinserted into document.
3243         https://bugs.webkit.org/show_bug.cgi?id=62230
3244
3245         When a HTMLBodyElement, StyledElement are removed from document,
3246         we didn't clear out the parent pointers from their link, style declarations.
3247         These parent pointers pointed to the document's element sheet which will
3248         get removed when document is getting destroyed. It does make sense to
3249         clear out parent pointers when we are getting removed from document and
3250         readd them when we get inserted again.
3251
3252         Tests: fast/dom/body-link-decl-parent-crash.html
3253                fast/dom/styled-inline-style-decl-parent-crash.html
3254
3255         * dom/StyledElement.cpp:
3256         (WebCore::StyledElement::insertedIntoDocument):
3257         (WebCore::StyledElement::removedFromDocument):
3258         * dom/StyledElement.h:
3259         * html/HTMLBodyElement.cpp:
3260         (WebCore::HTMLBodyElement::parseMappedAttribute):
3261         (WebCore::HTMLBodyElement::insertedIntoDocument):
3262         (WebCore::HTMLBodyElement::removedFromDocument):
3263         (WebCore::HTMLBodyElement::didMoveToNewOwnerDocument):
3264         * html/HTMLBodyElement.h:
3265
3266 2011-06-10  Adam Barth  <abarth@webkit.org>
3267
3268         Remove bogus ASSERTs.  These ASSERTs used to be correct before I
3269         changed DocumentWriter to put the onus for ignoring empty writes onto
3270         the parser.
3271
3272         This patch should stop these test from triggering ASSERTs:
3273
3274         plugins/plugin-document-back-forward.html
3275         plugins/return-error-from-new-stream-callback-in-full-frame-plugin.html
3276         userscripts/user-script-plugin-document.html
3277
3278         * html/MediaDocument.cpp:
3279         (WebCore::MediaDocumentParser::appendBytes):
3280         * html/PluginDocument.cpp:
3281         (WebCore::PluginDocumentParser::appendBytes):
3282
3283 2011-06-09  Jer Noble  <jer.noble@apple.com>
3284
3285         Reviewed by Darin Adler.
3286
3287         REGRESSION: End of apple.com video in full-screen mode leads to unusable page.
3288         https://bugs.webkit.org/show_bug.cgi?id=62411
3289         
3290         Test: fullscreen/full-screen-remove-ancestor-after.html
3291
3292         The placeholder for RenderFullScreen was being created as a non-anonymous object, which led
3293         to the document's renderer being set to 0 when the placeholder was removed due to its parent
3294         being removed. Setting the placeholder to be anonymous, however, means that it will be
3295         coalesced with sibling anonymous blocks, so added the RenderFullScreenPlaceholder to the
3296         list of anonymous objects that are not considered anonymous blocks, to avoid the placeholder
3297         being so coalesced. To do so, made the placeholder object a true subclass, and add and
3298         override its destroy() function to notify the RenderFullScreen object that it has been
3299         destroyed.
3300
3301         * rendering/RenderFullScreen.cpp:
3302         (RenderFullScreenPlaceholder::RenderFullScreenPlaceholder): Added.
3303         (RenderFullScreenPlaceholder::~RenderFullScreenPlaceholder): Added.
3304         (RenderFullScreenPlaceholder::isRenderFullScreenPlaceholder): Added.
3305         (RenderFullScreenPlaceholder::destroy): Notify the owner renderer that its placeholder
3306             has been destroyed.
3307         (RenderFullScreen::destroy): Assert that the m_placeholder ivar is 0 after destroying it.
3308         (RenderFullScreen::setPlaceholder): Added.
3309         (RenderFullScreen::createPlaceholder): Do not make the placeholder anonymous.
3310         * rendering/RenderFullScreen.h:
3311         * rendering/RenderObject.h:
3312         (WebCore::RenderObject::isRenderFullScreenPlaceholder): Added.
3313         (WebCore::RenderObject::isAnonymousBlock): Added the placeholder class to the list of
3314             objects which are not anonymous blocks.
3315
3316 2011-06-10  Gavin Barraclough  <barraclough@apple.com>
3317
3318         Reviewed by Sam Weinig.
3319
3320         https://bugs.webkit.org/show_bug.cgi?id=16777
3321         Eliminate JSC::NaN and JSC::Inf
3322
3323         There's no good reason for -K-J-S- JSC to have its own NAN and infinity constants.
3324         The ones in std::numeric_limits are perfectly good.
3325         Remove JSC::Inf, JSC::NaN, switch some cases of (isnan || isinf) to !isfinite.
3326
3327         * bindings/js/JSDataViewCustom.cpp:
3328         (WebCore::getDataViewMember):
3329
3330 2011-06-10  James Simonsen  <simonjam@chromium.org>
3331
3332         Reviewed by Eric Seidel.
3333
3334         <script> inside <svg> should be executed
3335         https://bugs.webkit.org/show_bug.cgi?id=62412
3336
3337         Tests: svg/in-html/script-external.html
3338                svg/in-html/script-nested.html
3339                svg/in-html/script-write.html
3340                svg/in-html/script.html
3341
3342         * html/parser/HTMLTreeBuilder.cpp:
3343         (WebCore::HTMLTreeBuilder::processEndTag):
3344
3345 2011-06-10  Adam Barth  <abarth@webkit.org>
3346
3347         Reviewed by Darin Adler.
3348
3349         Script-created parsers should ignore data from the network
3350         https://bugs.webkit.org/show_bug.cgi?id=62336
3351
3352         If the network packet boundaries line up just right, we can end up
3353         feeding network data to a parser created by document.write (or
3354         document.open).  That's incorrect.
3355
3356         This patch causes DocumentWriter to grab hold of the original parser
3357         and direct all input to that parser.
3358
3359         Test: fast/parser/document-write-ignores-later-network-bytes.html
3360
3361         * dom/Document.cpp:
3362         (WebCore::Document::explicitClose):
3363         * loader/DocumentWriter.cpp:
3364         (WebCore::DocumentWriter::begin):
3365         (WebCore::DocumentWriter::addData):
3366         (WebCore::DocumentWriter::endIfNotLoadingMainResource):
3367         (WebCore::DocumentWriter::setDocumentWasLoadedAsPartOfNavigation):
3368         * loader/DocumentWriter.h:
3369
3370 2011-06-10  Simon Fraser  <simon.fraser@apple.com>
3371
3372         Reviewed by Dan Bernstein.
3373
3374         Keep overlap testing logic until real 3d transforms are being used
3375         https://bugs.webkit.org/show_bug.cgi?id=49857
3376         
3377         For pages that use the translateZ(0) hack to force compositing layers, it's
3378         advantageous to keep overlap testing, to avoid putting too many other
3379         elements into layers.
3380         
3381         Only turn off overlap testing if non-identity 3D transforms are used.
3382
3383         Tests: compositing/layer-creation/rotate3d-overlap.html
3384                compositing/layer-creation/translatez-overlap.html
3385
3386         * rendering/RenderLayerCompositor.cpp:
3387         (WebCore::RenderLayerCompositor::updateBacking):
3388         (WebCore::RenderLayerCompositor::hasNonIdentity3DTransform):
3389         * rendering/RenderLayerCompositor.h:
3390
3391 2011-06-10  David Levin  <levin@chromium.org>
3392
3393         Reviewed by Dmitry Titov.
3394
3395         Web Worker fails to fire error event when a resource fetch fails.
3396         https://bugs.webkit.org/show_bug.cgi?id=62475
3397
3398         Test: http/tests/workers/worker-workerScriptNotThere.html
3399
3400         * workers/WorkerScriptLoader.cpp:
3401         (WebCore::WorkerScriptLoader::didFinishLoading): Ensure that
3402         the client is notified of the error when it happens during loading.
3403
3404 2011-06-10  David Levin  <levin@chromium.org>
3405
3406         Reviewed by Dmitry Titov.
3407
3408         Fetching a Worker with url that isn't allowed from a file based test causes DRT to crash.
3409         https://bugs.webkit.org/show_bug.cgi?id=62469
3410
3411         Test: fast/workers/worker-crash-with-invalid-location.html
3412
3413         * workers/DefaultSharedWorkerRepository.cpp:
3414         (WebCore::SharedWorkerScriptLoader::load): Changed to using the RefCounted version of WorkerScriptLoader.
3415         * workers/Worker.cpp:
3416         (WebCore::Worker::create): Ditto.
3417         * workers/Worker.h: Ditto.
3418         * workers/WorkerContext.cpp:
3419         (WebCore::WorkerContext::importScripts):  Ditto.
3420         * workers/WorkerScriptLoader.cpp:
3421         (WebCore::WorkerScriptLoader::~WorkerScriptLoader): Created to
3422         allow removing some header includes in WorkerScriptLoader.h.
3423         (WebCore::WorkerScriptLoader::loadAsynchronously): Fix the ordering
3424         of setPendingActivity and keep WorkerScriptLoader alive during a
3425         potential callback.
3426         * workers/WorkerScriptLoader.h: Made this RefCounted to allow for
3427         keeping it alive during callbacks. Also, removed unnecessary header
3428         inclusions (and added a destructor to facilitate that).
3429         (WebCore::WorkerScriptLoader::create):
3430
3431 2011-06-10  Alok Priyadarshi  <alokp@chromium.org>
3432
3433         Reviewed by James Robinson.
3434
3435         [chromium] Top portion of page is rendered messed up with accelerated drawing
3436         https://bugs.webkit.org/show_bug.cgi?id=62484
3437
3438         Fixed the math in flipping the texture from bottom-up to top-down.
3439         Test: compositing/repaint/shrink-layer.html (existing)
3440
3441         * platform/graphics/chromium/LayerTilerChromium.cpp:
3442         (WebCore::LayerTilerChromium::draw):
3443
3444 2011-06-10  Tony Chang  <tony@chromium.org>
3445
3446         Reviewed by Ojan Vafai.
3447
3448         add a compile guard ENABLE(FLEXBOX)
3449         https://bugs.webkit.org/show_bug.cgi?id=62049
3450
3451         * Configurations/FeatureDefines.xcconfig:
3452
3453 2011-06-10  Sam Weinig  <sam@webkit.org>
3454
3455         Roll out r88568. It is not the right fix for the problem.
3456
3457         * loader/appcache/ApplicationCacheHost.cpp:
3458         (WebCore::ApplicationCacheHost::isApplicationCacheEnabled):
3459
3460 2011-06-10  Mark Rowe  <mrowe@apple.com>
3461
3462         Reviewed by Dimitri Glazkov.
3463
3464         <rdar://problem/9562114> Fix DumpRenderTree build for production&nbs