bf348b1a9d1d68d572791fac17ee92637904c20c
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2011-05-05  Dan Bernstein  <mitz@apple.com>
2
3         Reviewed by Simon Fraser.
4
5         WebCore part of <rdar://problem/9155590> Broken animation in iAd producer
6
7         * WebCore.exp.in: Export wkExecutableWasLinkedOnOrBeforeSnowLeopard.
8         * platform/graphics/ca/GraphicsLayerCA.cpp:
9         (WebCore::GraphicsLayerCA::createTransformAnimationsFromKeyframes): Account for the binary-compatiblity
10         check in Core Animation.
11         * platform/mac/WebCoreSystemInterface.h: Added wkExecutableWasLinkedOnOrBeforeSnowLeopard.
12         * platform/mac/WebCoreSystemInterface.mm: Ditto.
13
14 2011-05-05  Sam Weinig  <sam@webkit.org>
15
16         Reviewed by Anders Carlsson.
17
18         WebKit2 (Mac): Background tabs/windows can force themselves to the front
19         <rdar://problem/9386346>
20         https://bugs.webkit.org/show_bug.cgi?id=60315
21
22         * platform/mac/WidgetMac.mm:
23         (WebCore::Widget::setFocus):
24         It is incorrect for us to call Chrome::focus() here, which could bring a window/tab
25         to the front. Calling focusNSView() was only necessary because in WebKit we must inform
26         the platform widget that the focus has changed. WebKit2 Mac now matches other ports.
27
28 2011-05-05  Justin Novosad  <junov@chromium.org>
29
30         Reviewed by Kenneth Russell.
31
32         [Chromium] Change the --accelerated-2d-canvas flag to mean Ganesh, and stop using --enable-accelerated-drawing for that purpose
33         https://bugs.webkit.org/show_bug.cgi?id=60173
34
35         * page/Page.cpp:
36         (WebCore::Page::sharedGraphicsContext3D):
37         Flipping the switch to make Skia the default for the accelerated 2d canvas
38
39 2011-05-05  Tony Gentilcore  <tonyg@chromium.org>
40
41         Reviewed by Adam Barth.
42
43         ASSERT(m_state == ParsingState) fires @ www.canalplus.fr
44         https://bugs.webkit.org/show_bug.cgi?id=60101
45
46         Test: fast/parser/close-while-stopping.html
47
48         * dom/Document.cpp:
49         (WebCore::Document::close): According to http://www.whatwg.org/specs/web-apps/current-work/#dom-document-close,
50         the close() steps should be aborted if there is no script-created parser
51         associated with the document. Our parser lives throughout
52         http://www.whatwg.org/specs/web-apps/current-work/#the-end, but it seems
53         the spec doesn't consider the parser active any more. So to properly
54         respect this, we need to check that the parser is still parsing.
55
56 2011-04-28  Evan Martin  <evan@chromium.org>
57
58         Reviewed by Ojan Vafai.
59
60         REGRESSION: backspace should not go back on Linux
61         https://bugs.webkit.org/show_bug.cgi?id=59731
62
63         Add a new EditingBehavior, shouldNavigateBackOnBackspace, which is false on
64         Linux, and test for it in the default backspace handler.
65
66         * editing/EditingBehavior.h:
67         (WebCore::EditingBehavior::shouldNavigateBackOnBackspace):
68         * page/EventHandler.cpp:
69         (WebCore::EventHandler::defaultBackspaceEventHandler):
70
71 2011-05-05  Igor Oliveira  <igor.oliveira@openbossa.org>
72
73         Reviewed by Kenneth Russell.
74
75         Framebuffer object is being created twice
76         https://bugs.webkit.org/show_bug.cgi?id=60207
77
78         Does not create more than one opengl framebuffer
79
80         * platform/graphics/gpu/mac/DrawingBufferMac.mm:
81         (WebCore::DrawingBuffer::DrawingBuffer):
82         * platform/graphics/gpu/qt/DrawingBufferQt.cpp:
83         (WebCore::DrawingBuffer::DrawingBuffer):
84         * platform/graphics/gtk/DrawingBufferGtk.cpp:
85         (WebCore::DrawingBuffer::DrawingBuffer):
86
87 2011-05-05  Simon Fraser  <simon.fraser@apple.com>
88
89         Reviewed by Beth Dakin.
90
91         Every RenderLayer registers itself as a ScrollableArea
92         https://bugs.webkit.org/show_bug.cgi?id=59650
93
94         Rather than registering every RenderLayer as a ScrollableArea
95         on layer creation, only register RenderLayers which are overflow-
96         scrollable. Use the m_scrollableAreaPage pointer to keep track
97         of whether we've registered to avoid excess work.
98
99         * rendering/RenderLayer.cpp:
100         (WebCore::RenderLayer::RenderLayer):
101         (WebCore::RenderLayer::scrollsOverflow):
102         (WebCore::RenderLayer::styleChanged):
103         * rendering/RenderLayer.h:
104
105 2011-05-05  Jer Noble  <jer.noble@apple.com>
106
107         Reviewed by Steve Falkenburg.
108
109         Workaround iTunes' incorrect registry entry for .m4a extensions.
110         https://bugs.webkit.org/show_bug.cgi?id=60229
111
112         No new tests, as a test already exits for .m4a support (LayoutTests/media/audio-mpeg4-supported.html).
113         The test failed to catch this regression because the build bots haven't installed iTunes.
114         
115         Add a hard-coded MIME type mapping for 'm4a' -> 'audio/x-m4a'.
116
117         * platform/win/MIMETypeRegistryWin.cpp:
118         (WebCore::MIMETypeRegistry::getMIMETypeForExtension):
119
120 2011-05-05  Abhishek Arya  <inferno@chromium.org>
121
122         Reviewed by Dave Hyatt.
123
124         When style changes for a RenderBlock and we lose our ability to intrude into
125         floats in the next siblings block (e.g a position change), make sure to mark
126         our childs with floats for layout and iterate through our next sibling block
127         chain to see which ones contain the float that also exists in our floating
128         objects list and clear those using markAllDescendantsWithFloatsForLayout.
129         https://bugs.webkit.org/show_bug.cgi?id=56299
130
131         Tests: fast/block/float/float-not-removed-from-next-sibling-crash.html
132                fast/block/float/float-not-removed-from-next-sibling.html
133                fast/block/float/float-not-removed-from-next-sibling2.html
134                fast/block/float/float-not-removed-from-next-sibling3.html
135                fast/block/float/float-not-removed-from-next-sibling4.html
136
137         * rendering/RenderBlock.cpp:
138         (WebCore::RenderBlock::styleWillChange):
139         (WebCore::RenderBlock::styleDidChange):
140         (WebCore::RenderBlock::markSiblingsWithFloatsForLayout):
141         * rendering/RenderBlock.h:
142
143 2011-05-05  Brian Weinstein  <bweinstein@apple.com>
144
145         Reviewed by Timothy Hatcher.
146
147         WebKit2: Docking Web Inspector doesn't respect maximum inspector size
148         https://bugs.webkit.org/show_bug.cgi?id=60294
149         <rdar://problem/9388518>
150
151         Make a needed function public and export it.
152
153         * WebCore.exp.in: Export constrainedAttaechedWindowHeight.
154         * inspector/InspectorFrontendClientLocal.h: Make constrainedAttaechedWindowHeight public.
155
156 2011-05-05  Tony Gentilcore  <tonyg@chromium.org>
157
158         Reviewed by Nate Chapin.
159
160         [Navigation Timing] navigationStart should always be available
161         https://bugs.webkit.org/show_bug.cgi?id=59448
162
163         * page/PerformanceTiming.cpp:
164         (WebCore::PerformanceTiming::navigationStart):
165
166 2011-05-05  Eric Carlson  <eric.carlson@apple.com>
167
168         Reviewed by Adam Roben.
169
170         Block callbacks delivered during destruction
171         https://bugs.webkit.org/show_bug.cgi?id=60291
172         <rdar://problem/9382942>
173
174         No new tests, tested by existing tests.
175
176         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
177         (WebCore::MediaPlayerPrivateAVFoundation::~MediaPlayerPrivateAVFoundation): Call 
178             setIgnoreLoadStateChanges(true) to cancel all callbacks.
179         (WebCore::MediaPlayerPrivateAVFoundation::updateStates): Return immediately if 
180             m_ignoreLoadStateChanges is true.
181         (WebCore::MediaPlayerPrivateAVFoundation::dispatchNotification): loadStateChanged -> updateStates.
182             Don't call updateStates after calling loadedTimeRangesChanged, it already does it.
183         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:
184
185 2011-05-05  David Hyatt  <hyatt@apple.com>
186
187         Reviewed by Darin Adler.
188
189         <rdar://problem/9354979> REGRESSION (r83070-r83126): Conversation takes 10 seconds to load and makes mail unresponsive
190
191         Culled inlines were triggering some pathological line box tree groveling that isn't even necessary.
192         Removed the ancient code (that used to be in RenderFlow), since it made no sense in the RenderBlock case
193         (it was running for inline blocks, which was definitely not even the intent) or in the RenderInline case
194         (the object being removed has no effect on any lines).
195         
196         Also tweaked culledInlineFirstLineBox and culledInlineLastLineBox to avoid bailing if the first replaced object that
197         is encountered has a null inlineBoxWrapper().  Just a slight speed optimization to avoid an extra null check.
198         
199         * rendering/RenderBlock.cpp:
200         (WebCore::RenderBlock::destroy):
201         * rendering/RenderInline.cpp:
202         (WebCore::RenderInline::destroy):
203         (WebCore::RenderInline::culledInlineFirstLineBox):
204         (WebCore::RenderInline::culledInlineLastLineBox):
205
206 2011-05-05  Bharathwaaj Srinivasan  <bharathwaaj.s@gmail.com>
207
208         Reviewed by Holger Freyther.
209
210         Fix build-webkit --minimal.
211         https://bugs.webkit.org/show_bug.cgi?id=60257
212
213         No new tests. This is just a build fix.
214
215         * bindings/js/JSDOMBinding.cpp:
216
217 2011-05-05  Eric Carlson  <eric.carlson@apple.com>
218
219         Reviewed by Adam Roben.
220
221         The preload attribute of the video tag is not completely implemented
222         https://bugs.webkit.org/show_bug.cgi?id=43673
223         <rdar://problem/9369746>
224
225         This change implements "preload=metadata" for the AVFoundation backend.
226         Tested manually with manual-tests/media-elements/video-preload.html.
227
228         * html/HTMLMediaElement.cpp:
229         (WebCore::HTMLMediaElement::HTMLMediaElement): Initialize m_havePreparedToPlay.
230         (WebCore::HTMLMediaElement::prepareForLoad): Ditto.
231         (WebCore::HTMLMediaElement::prepareToPlay): New, tell player to prepare to play.
232         (WebCore::HTMLMediaElement::seek): Call prepareToPlay when preload is less than 'auto'
233             because we need to have media data loaded to seek.
234         (WebCore::HTMLMediaElement::updatePlayState): Call prepareToPlay.
235         * html/HTMLMediaElement.h:
236
237         * manual-tests/media-elements/video-preload.html: Make changing urls work. 
238
239         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
240         (WebCore::MediaPlayerPrivateAVFoundation::MediaPlayerPrivateAVFoundation):  Remove 
241             m_videoFrameHasDrawn and m_delayingLoad as they are no longer used.
242         (WebCore::MediaPlayerPrivateAVFoundation::resumeLoad): Removed.
243         (WebCore::MediaPlayerPrivateAVFoundation::load): Don't initialize m_videoFrameHasDrawn. 
244             Move all preload logic to setPreload, call it from here.
245         (WebCore::MediaPlayerPrivateAVFoundation::prepareToPlay): Move all preload logic to 
246             setPreload, call it.
247         (WebCore::MediaPlayerPrivateAVFoundation::duration): Don't cache duration = 0, it is
248             unlikely to be correct and isn't worth caching. Use invalidTime() function.
249         (WebCore::MediaPlayerPrivateAVFoundation::seeking): Use invalidTime() function.
250         (WebCore::MediaPlayerPrivateAVFoundation::setNaturalSize): Add logging.
251         (WebCore::MediaPlayerPrivateAVFoundation::updateStates): Update for name change AVAssetStatus
252             to AssetStatus. Always create a AVPlayerItem for live streams because they can't be inspected
253             without one. Set networkState to 'idle' when the playback buffer is full because that is
254             a signal that AVFoundation won't do any more IO. Set readyState to 'HAVE_CURRENT_DATA' 
255             when the first frame is available.
256         (WebCore::MediaPlayerPrivateAVFoundation::metadataLoaded): Call tracksChanged so we cache
257             width, height, hasVideo, etc.
258         (WebCore::MediaPlayerPrivateAVFoundation::loadedTimeRangesChanged): Use invalidTime() function.
259         (WebCore::MediaPlayerPrivateAVFoundation::timeChanged): Ditto.
260         (WebCore::MediaPlayerPrivateAVFoundation::seekCompleted): Ditto.
261         (WebCore::MediaPlayerPrivateAVFoundation::repaint): Don't set m_videoFrameHasDrawn, it is done
262             in derived classes.
263         (WebCore::MediaPlayerPrivateAVFoundation::setPreload): Centralize all logic about when to create
264             AVAsset and AVPlayerItem here.
265         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:
266
267         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationObjC.h:
268         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationObjC.mm:
269         (WebCore::MediaPlayerPrivateAVFoundationObjC::MediaPlayerPrivateAVFoundationObjC): Initialize
270             m_videoFrameHasDrawn.
271         (WebCore::MediaPlayerPrivateAVFoundationObjC::hasAvailableVideoFrame): New, renamed from
272             videoLayerIsReadyToDisplay. Return true if we have a layer with frames available or
273             if we have painted a frame to the context.
274         (WebCore::MediaPlayerPrivateAVFoundationObjC::createAVAssetForURL): New, create the AVAsset
275             if necessary.
276         (WebCore::MediaPlayerPrivateAVFoundationObjC::createAVAssetForCacheResource): Ditto.
277         (WebCore::MediaPlayerPrivateAVFoundationObjC::createAVPlayer): Restructure logic.
278         (WebCore::MediaPlayerPrivateAVFoundationObjC::createAVPlayerItem): New, create AVPlayerItem.
279         (WebCore::MediaPlayerPrivateAVFoundationObjC::beginLoadingMetadata): Correct logging.
280         (WebCore::MediaPlayerPrivateAVFoundationObjC::playerItemStatus): Return "buffer full" when
281             the buffer is full.
282         (WebCore::MediaPlayerPrivateAVFoundationObjC::platformDuration): Get the duration from the
283             AVAsset when we haven't allocated the AVPlayerItem yet so that we can return duration
284             when we only have metadata.
285         (WebCore::MediaPlayerPrivateAVFoundationObjC::assetStatus): Update for name change.
286         (WebCore::MediaPlayerPrivateAVFoundationObjC::paint): Set m_videoFrameHasDrawn.
287         (WebCore::MediaPlayerPrivateAVFoundationObjC::tracksChanged): Get attributes from AVAsset
288             when when we haven't allocated the AVPlayerItem yet so that we can report attributes
289             when we only have metadata.
290         (WebCore::MediaPlayerPrivateAVFoundationObjC::sizeChanged): Guard against being called before
291             we have allocated the AVPlayerItem.
292
293 2011-05-05  Ryosuke Niwa  <rniwa@webkit.org>
294
295         Reviewed by Eric Seidel.
296
297         Rename SelectionController to FrameSelection
298         https://bugs.webkit.org/show_bug.cgi?id=60234
299
300         * CMakeLists.txt:
301         * GNUmakefile.list.am:
302         * WebCore.exp.in:
303         * WebCore.gypi:
304         * WebCore.pro:
305         * WebCore.vcproj/WebCore.vcproj:
306         * WebCore.xcodeproj/project.pbxproj:
307         * accessibility/AccessibilityObject.cpp:
308         * accessibility/AccessibilityRenderObject.cpp:
309         (WebCore::AccessibilityRenderObject::visiblePositionRangeForLine):
310         * accessibility/mac/AccessibilityObjectWrapper.mm:
311         * bindings/objc/ExceptionHandlers.h:
312         * css/CSSStyleSelector.cpp:
313         * dom/ContainerNode.cpp:
314         (WebCore::ContainerNode::cloneChildNodes):
315         * dom/Document.cpp:
316         * dom/InputElement.cpp:
317         * editing/DeleteButtonController.cpp:
318         * editing/EditCommand.cpp:
319         * editing/EditingAllInOne.cpp:
320         * editing/EditingStyle.cpp:
321         * editing/Editor.cpp:
322         (WebCore::Editor::canCopy):
323         (WebCore::Editor::canDelete):
324         (WebCore::Editor::markMisspellingsAfterTypingToWord):
325         (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges):
326         (WebCore::Editor::changeSelectionAfterCommand):
327         (WebCore::Editor::respondToChangedSelection):
328         * editing/Editor.h:
329         * editing/EditorCommand.cpp:
330         (WebCore::executeDeleteToMark):
331         (WebCore::executeMoveBackward):
332         (WebCore::executeMoveBackwardAndModifySelection):
333         (WebCore::executeMoveDown):
334         (WebCore::executeMoveDownAndModifySelection):
335         (WebCore::executeMoveForward):
336         (WebCore::executeMoveForwardAndModifySelection):
337         (WebCore::executeMoveLeft):
338         (WebCore::executeMoveLeftAndModifySelection):
339         (WebCore::executeMovePageDown):
340         (WebCore::executeMovePageDownAndModifySelection):
341         (WebCore::executeMovePageUp):
342         (WebCore::executeMovePageUpAndModifySelection):
343         (WebCore::executeMoveRight):
344         (WebCore::executeMoveRightAndModifySelection):
345         (WebCore::executeMoveToBeginningOfDocument):
346         (WebCore::executeMoveToBeginningOfDocumentAndModifySelection):
347         (WebCore::executeMoveToBeginningOfLine):
348         (WebCore::executeMoveToBeginningOfLineAndModifySelection):
349         (WebCore::executeMoveToBeginningOfParagraph):
350         (WebCore::executeMoveToBeginningOfParagraphAndModifySelection):
351         (WebCore::executeMoveToBeginningOfSentence):
352         (WebCore::executeMoveToBeginningOfSentenceAndModifySelection):
353         (WebCore::executeMoveToEndOfDocument):
354         (WebCore::executeMoveToEndOfDocumentAndModifySelection):
355         (WebCore::executeMoveToEndOfSentence):
356         (WebCore::executeMoveToEndOfSentenceAndModifySelection):
357         (WebCore::executeMoveToEndOfLine):
358         (WebCore::executeMoveToEndOfLineAndModifySelection):
359         (WebCore::executeMoveToEndOfParagraph):
360         (WebCore::executeMoveToEndOfParagraphAndModifySelection):
361         (WebCore::executeMoveParagraphBackwardAndModifySelection):
362         (WebCore::executeMoveParagraphForwardAndModifySelection):
363         (WebCore::executeMoveUp):
364         (WebCore::executeMoveUpAndModifySelection):
365         (WebCore::executeMoveWordBackward):
366         (WebCore::executeMoveWordBackwardAndModifySelection):
367         (WebCore::executeMoveWordForward):
368         (WebCore::executeMoveWordForwardAndModifySelection):
369         (WebCore::executeMoveWordLeft):
370         (WebCore::executeMoveWordLeftAndModifySelection):
371         (WebCore::executeMoveWordRight):
372         (WebCore::executeMoveWordRightAndModifySelection):
373         (WebCore::executeMoveToLeftEndOfLine):
374         (WebCore::executeMoveToLeftEndOfLineAndModifySelection):
375         (WebCore::executeMoveToRightEndOfLine):
376         (WebCore::executeMoveToRightEndOfLineAndModifySelection):
377         * editing/FrameSelection.cpp: Copied from Source/WebCore/editing/SelectionController.cpp.
378         (WebCore::FrameSelection::FrameSelection):
379         (WebCore::FrameSelection::moveTo):
380         (WebCore::FrameSelection::setSelection):
381         (WebCore::FrameSelection::nodeWillBeRemoved):
382         (WebCore::FrameSelection::respondToNodeModification):
383         (WebCore::FrameSelection::textWillBeReplaced):
384         (WebCore::FrameSelection::setIsDirectional):
385         (WebCore::FrameSelection::directionOfEnclosingBlock):
386         (WebCore::FrameSelection::willBeModified):
387         (WebCore::FrameSelection::positionForPlatform):
388         (WebCore::FrameSelection::startForPlatform):
389         (WebCore::FrameSelection::endForPlatform):
390         (WebCore::FrameSelection::modifyExtendingRight):
391         (WebCore::FrameSelection::modifyExtendingForward):
392         (WebCore::FrameSelection::modifyMovingRight):
393         (WebCore::FrameSelection::modifyMovingForward):
394         (WebCore::FrameSelection::modifyExtendingLeft):
395         (WebCore::FrameSelection::modifyExtendingBackward):
396         (WebCore::FrameSelection::modifyMovingLeft):
397         (WebCore::FrameSelection::modifyMovingBackward):
398         (WebCore::FrameSelection::modify):
399         (WebCore::FrameSelection::xPosForVerticalArrowNavigation):
400         (WebCore::FrameSelection::clear):
401         (WebCore::FrameSelection::setStart):
402         (WebCore::FrameSelection::setEnd):
403         (WebCore::FrameSelection::setBase):
404         (WebCore::FrameSelection::setExtent):
405         (WebCore::FrameSelection::setCaretRectNeedsUpdate):
406         (WebCore::FrameSelection::updateCaretRect):
407         (WebCore::FrameSelection::caretRenderer):
408         (WebCore::FrameSelection::localCaretRect):
409         (WebCore::FrameSelection::absoluteBoundsForLocalRect):
410         (WebCore::FrameSelection::absoluteCaretBounds):
411         (WebCore::FrameSelection::caretRepaintRect):
412         (WebCore::FrameSelection::recomputeCaretRect):
413         (WebCore::FrameSelection::shouldRepaintCaret):
414         (WebCore::FrameSelection::invalidateCaretRect):
415         (WebCore::FrameSelection::paintCaret):
416         (WebCore::FrameSelection::debugRenderer):
417         (WebCore::FrameSelection::contains):
418         (WebCore::FrameSelection::selectFrameElementInParentIfFullySelected):
419         (WebCore::FrameSelection::selectAll):
420         (WebCore::FrameSelection::setSelectedRange):
421         (WebCore::FrameSelection::isInPasswordField):
422         (WebCore::FrameSelection::caretRendersInsideNode):
423         (WebCore::FrameSelection::focusedOrActiveStateChanged):
424         (WebCore::FrameSelection::pageActivationChanged):
425         (WebCore::FrameSelection::updateSecureKeyboardEntryIfActive):
426         (WebCore::FrameSelection::setUseSecureKeyboardEntry):
427         (WebCore::FrameSelection::setFocused):
428         (WebCore::FrameSelection::isFocusedAndActive):
429         (WebCore::FrameSelection::updateAppearance):
430         (WebCore::FrameSelection::setCaretVisible):
431         (WebCore::FrameSelection::clearCaretRectIfNeeded):
432         (WebCore::FrameSelection::caretBlinkTimerFired):
433         (WebCore::FrameSelection::notifyRendererOfSelectionChange):
434         (WebCore::FrameSelection::setFocusedNodeIfNeeded):
435         (WebCore::FrameSelection::paintDragCaret):
436         (WebCore::FrameSelection::copyTypingStyle):
437         (WebCore::FrameSelection::shouldDeleteSelection):
438         (WebCore::FrameSelection::bounds):
439         (WebCore::FrameSelection::getClippedVisibleTextRectangles):
440         (WebCore::FrameSelection::currentForm):
441         (WebCore::FrameSelection::revealSelection):
442         (WebCore::FrameSelection::setSelectionFromNone):
443         (WebCore::FrameSelection::shouldChangeSelection):
444         (WebCore::FrameSelection::formatForDebugger):
445         (WebCore::FrameSelection::showTreeForThis):
446         (showTree):
447         * editing/FrameSelection.h: Copied from Source/WebCore/editing/SelectionController.h.
448         (WebCore::FrameSelection::typingStyle):
449         (WebCore::FrameSelection::clearTypingStyle):
450         (WebCore::FrameSelection::setTypingStyle):
451         (WebCore::FrameSelection::notifyAccessibilityForSelectionChange):
452         * editing/ModifySelectionListLevel.cpp:
453         * editing/RemoveFormatCommand.cpp:
454         * editing/ReplaceSelectionCommand.cpp:
455         * editing/SelectionController.cpp: Removed.
456         * editing/SelectionController.h: Removed.
457         * editing/SetSelectionCommand.cpp:
458         (WebCore::SetSelectionCommand::SetSelectionCommand):
459         (WebCore::SetSelectionCommand::doApply):
460         (WebCore::SetSelectionCommand::doUnapply):
461         * editing/SetSelectionCommand.h:
462         (WebCore::SetSelectionCommand::create):
463         * editing/SpellingCorrectionCommand.cpp:
464         (WebCore::SpellingCorrectionCommand::doApply):
465         * editing/SpellingCorrectionController.cpp:
466         (WebCore::SpellingCorrectionController::respondToUnappliedSpellCorrection):
467         * editing/TypingCommand.cpp:
468         (WebCore::TypingCommand::deleteKeyPressed):
469         (WebCore::TypingCommand::forwardDeleteKeyPressed):
470         * editing/chromium/FrameSelectionChromium.cpp: Copied from Source/WebCore/editing/chromium/SelectionControllerChromium.cpp.
471         (WebCore::FrameSelection::notifyAccessibilityForSelectionChange):
472         * editing/chromium/SelectionControllerChromium.cpp: Removed.
473         * editing/gtk/FrameSelectionGtk.cpp: Copied from Source/WebCore/editing/gtk/SelectionControllerGtk.cpp.
474         (WebCore::FrameSelection::notifyAccessibilityForSelectionChange):
475         * editing/gtk/SelectionControllerGtk.cpp: Removed.
476         * editing/mac/EditorMac.mm:
477         (WebCore::Editor::canCopyExcludingStandaloneImages):
478         * editing/mac/FrameSelectionMac.mm: Copied from Source/WebCore/editing/mac/SelectionControllerMac.mm.
479         (WebCore::FrameSelection::notifyAccessibilityForSelectionChange):
480         * editing/mac/SelectionControllerMac.mm: Removed.
481         * editing/qt/EditorQt.cpp:
482         * loader/archive/cf/LegacyWebArchive.cpp:
483         * page/ContextMenuController.cpp:
484         (WebCore::ContextMenuController::populate):
485         * page/DOMSelection.cpp:
486         (WebCore::DOMSelection::type):
487         (WebCore::DOMSelection::modify):
488         (WebCore::DOMSelection::addRange):
489         (WebCore::DOMSelection::deleteFromDocument):
490         (WebCore::DOMSelection::containsNode):
491         * page/DragController.cpp:
492         (WebCore::DragController::dragIsMove):
493         * page/DragController.h:
494         * page/EventHandler.cpp:
495         (WebCore::setSelectionIfNeeded):
496         (WebCore::setNonDirectionalSelectionIfNeeded):
497         (WebCore::EventHandler::sendContextMenuEventForKey):
498         (WebCore::EventHandler::handleKeyboardSelectionMovement):
499         * page/EventHandler.h:
500         * page/FocusController.cpp:
501         (WebCore::clearSelectionIfNeeded):
502         * page/Frame.cpp:
503         (WebCore::Frame::Frame):
504         * page/Frame.h:
505         (WebCore::Frame::selection):
506         * page/Page.cpp:
507         (WebCore::Page::Page):
508         * page/Page.h:
509         (WebCore::Page::dragCaretController):
510         * page/chromium/DragControllerChromium.cpp:
511         * page/chromium/EventHandlerChromium.cpp:
512         * page/win/DragControllerWin.cpp:
513         * page/win/EventHandlerWin.cpp:
514         * rendering/HitTestResult.cpp:
515         * rendering/RenderBlock.cpp:
516         (WebCore::RenderBlock::destroy):
517         (WebCore::RenderBlock::paintCaret):
518         * rendering/RenderImage.cpp:
519         * rendering/RenderInline.cpp:
520         (WebCore::RenderInline::destroy):
521         * rendering/RenderLayer.cpp:
522         * rendering/RenderListBox.cpp:
523         * rendering/RenderObjectChildList.cpp:
524         (WebCore::RenderObjectChildList::removeChildNode):
525         * rendering/RenderTextControl.cpp:
526         * rendering/RenderTextControlSingleLine.cpp:
527         * rendering/RenderTheme.cpp:
528         * rendering/RenderTreeAsText.cpp:
529         * svg/SVGSVGElement.cpp:
530         * svg/SVGTextContentElement.cpp:
531         (WebCore::SVGTextContentElement::selectSubString):
532
533 2011-05-05  Brent Fulgham  <bfulgham@webkit.org>
534
535         [WinCairo] unreviewed build correction.
536
537         * platform/network/curl/ResourceRequest.h:
538         Stub out the new pipelined http logic for cURL.
539
540 2011-05-05  Pavel Feldman  <pfeldman@chromium.org>
541
542         Reviewed by Yury Semikhatsky.
543
544         Web Inspector: searching for node does not result in bringToFront call.
545         https://bugs.webkit.org/show_bug.cgi?id=60222
546
547         * inspector/front-end/ElementsPanel.js:
548         (WebInspector.ElementsPanel.prototype.updateFocusedNode):
549
550 2011-05-05  Andreas Kling  <andreas.kling@nokia.com>
551
552         Reviewed by Simon Hausmann.
553
554         [Qt] Implement the fast font path for Qt.
555         https://bugs.webkit.org/show_bug.cgi?id=51106
556
557         Use the new QRawFont and QGlyphs APIs in Qt 4.8 to implement the fast paths for
558         rendering and measurement of simple text.
559
560         Since this is still unreleased API, it's guarded by HAVE(QRAWFONT) until the new
561         classes are fully integrated into the Qt 4.8 release branch.
562
563         * WebCore.pro: Add HAVE_QRAWFONT define (for Qt >= 4.8) and new files to build.
564
565         * platform/graphics/Font.cpp:
566         (WebCore::Font::drawText): Disable fast font path for stroked text, and when
567         painting text with a shadow. (Qt-only)
568         (WebCore::Font::codePath): Try to use fast font path in more cases.
569
570         * platform/graphics/qt/FontCacheQt.cpp:
571         (WebCore::rawFontForCharacters): Helper function, returns a suitable QRawFont
572         to use for rendering a given string. Goes through QTextLayout to find the best
573         font based on the original QFont query.
574         (WebCore::FontCache::getFontDataForCharacters): Implemented using helper above.
575
576         * platform/graphics/qt/FontPlatformData.h:
577         (WebCore::FontPlatformDataPrivate::FontPlatformDataPrivate):
578         (WebCore::FontPlatformData::FontPlatformData):
579         (WebCore::FontPlatformData::rawFont):
580         * platform/graphics/qt/FontPlatformDataQt.cpp:
581         (WebCore::FontPlatformData::FontPlatformData): Add a QRawFont member to FontPlatformData.
582
583         * platform/graphics/qt/FontQt.cpp:
584         (WebCore::fillPenForContext):
585         (WebCore::strokePenForContext):
586         (WebCore::drawTextCommon): Factored QPen creation out of drawTextCommon
587         to share code between complex and simple font rendering paths.
588         (WebCore::Font::drawGlyphs): Implemented using QPainter::drawGlyphs().
589
590         * platform/graphics/qt/GlyphPageTreeNodeQt.cpp:
591         (WebCore::GlyphPage::fill): Implemented using QRawFont::glyphIndexesForString().
592
593         * platform/graphics/qt/SimpleFontDataQt.cpp:
594         (WebCore::SimpleFontData::determinePitch): Return false when using QRawFont since we
595         have no way of knowing the pitch.
596         (WebCore::SimpleFontData::containsCharacters): Implemented using QRawFont::supportsCharacter().
597         (WebCore::SimpleFontData::platformWidthForGlyph): Implemented using QRawFont::advancesForGlyphIndexes().
598         (WebCore::SimpleFontData::scaledFontData): Added, based on other ports.
599         (WebCore::SimpleFontData::smallCapsFontData): Ditto.
600         (WebCore::SimpleFontData::emphasisMarkFontData): Ditto.
601         (WebCore::SimpleFontData::platformBoundsForGlyph): Stub.
602         (WebCore::SimpleFontData::platformInit): Use QRawFont APIs to retrieve font metrics.
603         (WebCore::SimpleFontData::platformCharWidthInit): Ditto.
604
605 2011-05-05  Alexis Menard  <alexis.menard@openbossa.org>
606
607         Reviewed by Andreas Kling.
608
609         [Qt] RenderThemeQt and DumpRenderTreeSupportQt should use nullptr rather than 0.
610         https://bugs.webkit.org/show_bug.cgi?id=60224
611
612         We should use nullptr rather than 0. nullptr will be added in the new C++ standard
613         but WebKit already has a nullptr class if there is no c++0x support.
614
615         * platform/qt/RenderThemeQt.cpp:
616         (WebCore::RenderThemeQt::adjustProgressBarStyle):
617         (WebCore::RenderThemeQt::adjustSliderTrackStyle):
618         (WebCore::RenderThemeQt::adjustSliderThumbStyle):
619
620 2011-05-05  Ilya Tikhonovsky  <loislo@chromium.org>
621
622         Reviewed by Yury Semikhatsky.
623
624         Web Inspector: rename BrowserDebugger to DOMDebugger.
625
626         https://bugs.webkit.org/show_bug.cgi?id=60256
627         InspectorBrowserDebuggerAgent => InspectorDOMDebuggerAgent
628         browserDebugger => domDebugger
629
630         * CMakeLists.txt:
631         * GNUmakefile.list.am:
632         * WebCore.gypi:
633         * WebCore.pro:
634         * WebCore.vcproj/WebCore.vcproj:
635         * WebCore.xcodeproj/project.pbxproj:
636         * inspector/CodeGeneratorInspector.pm:
637         * inspector/InspectorAgent.cpp:
638         (WebCore::InspectorAgent::InspectorAgent):
639         (WebCore::InspectorAgent::inspectedPageDestroyed):
640         (WebCore::InspectorAgent::disconnectFrontend):
641         * inspector/InspectorAgent.h:
642         (WebCore::InspectorAgent::DOMDebuggerAgent):
643         * inspector/InspectorController.cpp:
644         (WebCore::InspectorController::connectFrontend):
645         * inspector/InspectorDOMDebuggerAgent.cpp: Renamed from Source/WebCore/inspector/InspectorBrowserDebuggerAgent.cpp.
646         (WebCore::InspectorDOMDebuggerAgent::create):
647         (WebCore::InspectorDOMDebuggerAgent::InspectorDOMDebuggerAgent):
648         (WebCore::InspectorDOMDebuggerAgent::~InspectorDOMDebuggerAgent):
649         (WebCore::InspectorDOMDebuggerAgent::debuggerWasEnabled):
650         (WebCore::InspectorDOMDebuggerAgent::debuggerWasDisabled):
651         (WebCore::InspectorDOMDebuggerAgent::disable):
652         (WebCore::InspectorDOMDebuggerAgent::clearFrontend):
653         (WebCore::InspectorDOMDebuggerAgent::discardBindings):
654         (WebCore::InspectorDOMDebuggerAgent::setEventListenerBreakpoint):
655         (WebCore::InspectorDOMDebuggerAgent::removeEventListenerBreakpoint):
656         (WebCore::InspectorDOMDebuggerAgent::didInsertDOMNode):
657         (WebCore::InspectorDOMDebuggerAgent::didRemoveDOMNode):
658         (WebCore::InspectorDOMDebuggerAgent::setDOMBreakpoint):
659         (WebCore::InspectorDOMDebuggerAgent::removeDOMBreakpoint):
660         (WebCore::InspectorDOMDebuggerAgent::willInsertDOMNode):
661         (WebCore::InspectorDOMDebuggerAgent::willRemoveDOMNode):
662         (WebCore::InspectorDOMDebuggerAgent::willModifyDOMAttr):
663         (WebCore::InspectorDOMDebuggerAgent::descriptionForDOMEvent):
664         (WebCore::InspectorDOMDebuggerAgent::hasBreakpoint):
665         (WebCore::InspectorDOMDebuggerAgent::updateSubtreeBreakpoints):
666         (WebCore::InspectorDOMDebuggerAgent::pauseOnNativeEventIfNeeded):
667         (WebCore::InspectorDOMDebuggerAgent::setXHRBreakpoint):
668         (WebCore::InspectorDOMDebuggerAgent::removeXHRBreakpoint):
669         (WebCore::InspectorDOMDebuggerAgent::willSendXMLHttpRequest):
670         (WebCore::InspectorDOMDebuggerAgent::clear):
671         * inspector/InspectorDOMDebuggerAgent.h: Renamed from Source/WebCore/inspector/InspectorBrowserDebuggerAgent.h.
672         * inspector/InspectorInstrumentation.cpp:
673         (WebCore::InspectorInstrumentation::willInsertDOMNodeImpl):
674         (WebCore::InspectorInstrumentation::didInsertDOMNodeImpl):
675         (WebCore::InspectorInstrumentation::willRemoveDOMNodeImpl):
676         (WebCore::InspectorInstrumentation::didRemoveDOMNodeImpl):
677         (WebCore::InspectorInstrumentation::willModifyDOMAttrImpl):
678         (WebCore::InspectorInstrumentation::willSendXMLHttpRequestImpl):
679         (WebCore::InspectorInstrumentation::pauseOnNativeEventIfNeeded):
680         * inspector/InstrumentingAgents.h:
681         (WebCore::InstrumentingAgents::InstrumentingAgents):
682         (WebCore::InstrumentingAgents::inspectorDOMDebuggerAgent):
683         (WebCore::InstrumentingAgents::setInspectorDOMDebuggerAgent):
684         * inspector/WorkerInspectorController.cpp:
685         (WebCore::WorkerInspectorController::connectFrontend):
686
687 2011-05-04  Yury Semikhatsky  <yurys@chromium.org>
688
689         Reviewed by Pavel Feldman.
690
691         Web Inspector: show only Console and Scripts panels in worker inspector front-end
692         https://bugs.webkit.org/show_bug.cgi?id=60159
693
694         * inspector/front-end/WorkerManager.js:
695         (WebInspector.WorkerManager.isWorkerFrontend):
696         * inspector/front-end/inspector.js: show only Scripts and Console panels in the worker inspector front-end.
697
698 2011-05-03  Hans Wennborg  <hans@chromium.org>
699
700         Reviewed by Steve Block.
701
702         IndexedDB: Unit tests for LevelDB key coding functions
703         https://bugs.webkit.org/show_bug.cgi?id=59692
704
705         Fix some embarrassing bugs uncovered by unit tests.
706
707         No new functionality, but this is now covered by unit tests in the Chromium WebKit port.
708
709         * storage/IDBLevelDBCoding.cpp:
710         (WebCore::IDBLevelDBCoding::decodeInt):
711         (WebCore::IDBLevelDBCoding::decodeVarInt):
712
713 2011-05-05  Young Han Lee  <joybro@company100.net>
714
715         Reviewed by Csaba Osztrogonác.
716
717         [Texmap][Qt] Enable strict OwnPtr for Qt with texmap enabled.
718         https://bugs.webkit.org/show_bug.cgi?id=60251
719
720         No new tests. Build fix.
721
722         * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
723         (WebCore::GraphicsLayerTextureMapper::GraphicsLayerTextureMapper):
724
725 2011-05-04  Jay Civelli  <jcivelli@chromium.org>
726
727         Reviewed by Adam Barth.
728
729         Adding a utility class to read a SharedBuffer line by line.
730         https://bugs.webkit.org/show_bug.cgi?id=59946
731
732         * CMakeLists.txt:
733         * GNUmakefile.list.am:
734         * WebCore.gypi:
735         * WebCore.pro:
736         * WebCore.vcproj/WebCore.vcproj:
737         * WebCore.xcodeproj/project.pbxproj:
738         * platform/SharedBufferCRLFLineReader.cpp: Added.
739         * platform/SharedBufferCRLFLineReader.h: Added.
740
741 2011-05-04  Sheriff Bot  <webkit.review.bot@gmail.com>
742
743         Unreviewed, rolling out r85788.
744         http://trac.webkit.org/changeset/85788
745         https://bugs.webkit.org/show_bug.cgi?id=60250
746
747         svg/text/text-block-child-crash.xhtml asserts (Requested by
748         Ossy on #webkit).
749
750         * css/CSSStyleSelector.cpp:
751         (WebCore::CSSStyleSelector::applyProperty):
752
753 2011-05-04  Ryosuke Niwa  <rniwa@webkit.org>
754
755         Reviewed by Eric Seidel.
756
757         Make more member functions in EventHandler private
758         https://bugs.webkit.org/show_bug.cgi?id=60200
759
760         Reduced the number of public member functions in EventHandler.
761
762         * WebCore.exp.in:
763         * page/EventHandler.cpp:
764         (WebCore::EventHandler::handleAutoscroll):
765         (WebCore::EventHandler::autoscrollTimerFired):
766         (WebCore::EventHandler::stopAutoscrollTimer):
767         (WebCore::EventHandler::handleMousePressEvent):
768         (WebCore::EventHandler::handleMouseMoveEvent):
769         (WebCore::EventHandler::keyEvent):
770         (WebCore::EventHandler::eventInvertsTabsToLinksClientCallResult):
771         * page/EventHandler.h:
772         (WebCore::EventHandler::mouseDownMayStartSelect):
773
774 2011-05-04  James Robinson  <jamesr@chromium.org>
775
776         Reviewed by Kenneth Russell.
777
778         [chromium] REGRESSION(85136): Composited content vanishes when transform-style changes from preserve-3d to flat
779         https://bugs.webkit.org/show_bug.cgi?id=60202
780
781         In r85136 I accidentally transposed two lines in GraphicsLayerChromium when adding a null check.  This switches
782         the order back and adds a regression test.
783
784         Test: compositing/repaint/transform-style-change.html
785
786         * platform/graphics/chromium/GraphicsLayerChromium.cpp:
787         (WebCore::GraphicsLayerChromium::updateLayerPreserves3D):
788
789 2011-05-04  Cris Neckar  <cdn@chromium.org>
790
791         Reviewed by Adam Barth.
792
793         Expose WebView directly through ChromeClient.
794         https://bugs.webkit.org/show_bug.cgi?id=49902
795
796         Test: fast/media/media-svg-crash.html
797
798         * loader/EmptyClients.h:
799         (WebCore::EmptyChromeClient::webView):
800         * page/ChromeClient.h:
801         * page/brew/ChromeClientBrew.h:
802         (WebCore::ChromeClientBrew::webView):
803
804 2011-05-04  Joseph Pecoraro  <joepeck@webkit.org>
805
806         Reviewed by Darin Adler.
807
808         Unable to Paste After Deleting Text from Input due to -webkit-user-select
809         https://bugs.webkit.org/show_bug.cgi?id=60219
810
811         When deleting all the text inside the input a placeholder <br>
812         element was inserted for the selection point. However, when
813         pasting, the test run computes the -webkit-user-select for the
814         <br> element, instead of what would be the text inside the
815         <input> and incorrectly disallows selection and prevented
816         the paste.
817
818         Test: editing/pasteboard/paste-placeholder-input.html
819
820         * editing/ReplaceSelectionCommand.cpp:
821         (WebCore::ReplacementFragment::insertFragmentForTestRendering): skip
822         <br> elements above us as those are likely placeholder elements.
823
824 2011-05-04  Fridrich Strba  <fridrich.strba@bluewin.ch>
825
826         Reviewed by Martin Robinson.
827
828         Windows build of WebKit GTK needs to be able to find SystemInfo.h
829         https://bugs.webkit.org/show_bug.cgi?id=60221
830
831         * GNUmakefile.am: add Source/WebCore/platform/win to the paths searched
832         for headers, since Source/WebCore/platform/win/SystemInfo.h
833         header is needed by Source/WebKit/gtk/webkit/webkitwebsettings.cpp
834         on Windows.
835
836 2011-05-04  Vangelis Kokkevis  <vangelis@chromium.org>
837
838         Reviewed by Kenneth Russell.
839
840         [chromium] Improve sorting of layers in hierarchies that preserve-3d
841         by testing for overlapping regions between layer pairs and doing a
842         topological sort to determine the right order.
843         https://bugs.webkit.org/show_bug.cgi?id=59255
844
845         Test: platform/chromium/compositing/perpendicular-layer-sorting.html
846
847         * WebCore.gypi:
848         * platform/graphics/chromium/LayerRendererChromium.cpp:
849         (WebCore::LayerRendererChromium::updatePropertiesAndRenderSurfaces):
850         * platform/graphics/chromium/LayerRendererChromium.h:
851         * platform/graphics/chromium/cc/CCLayerImpl.h:
852         (WebCore::CCLayerImpl::clearRenderSurface):
853         * platform/graphics/chromium/cc/CCLayerSorter.cpp: Added.
854         (WebCore::perpProduct):
855         (WebCore::innerProduct):
856         (WebCore::pointInColinearEdge):
857         (WebCore::edgeEdgeTest):
858         (WebCore::CCLayerSorter::LayerIntersector::LayerIntersector):
859         (WebCore::CCLayerSorter::LayerIntersector::go):
860         (WebCore::CCLayerSorter::LayerIntersector::edgeTriangleTest):
861         (WebCore::CCLayerSorter::LayerIntersector::triangleTriangleTest):
862         (WebCore::CCLayerSorter::LayerIntersector::checkZDiff):
863         (WebCore::CCLayerSorter::LayerIntersector::layerZFromProjectedPoint):
864         (WebCore::CCLayerSorter::CCLayerSorter):
865         (WebCore::CCLayerSorter::checkOverlap):
866         (WebCore::CCLayerSorter::createGraphNodes):
867         (WebCore::CCLayerSorter::createGraphEdges):
868         (WebCore::CCLayerSorter::removeEdgeFromList):
869         (WebCore::CCLayerSorter::sort):
870         * platform/graphics/chromium/cc/CCLayerSorter.h: Added.
871         (WebCore::CCLayerSorter::GraphNode::GraphNode):
872         (WebCore::CCLayerSorter::GraphEdge::GraphEdge):
873
874 2011-05-03  Jer Noble  <jer.noble@apple.com>
875
876         Reviewed by Antti Koivisto.
877
878         Safari: Video at apple.com cannot play at full screen mode with layout distortion
879         https://bugs.webkit.org/show_bug.cgi?id=60140
880
881         Because a fullscreen element may be in a stacking context with a lower z-index than
882         a sibling stacking context, those higher contexts would sometimes "pop" through the 
883         full screen renderer. To facilitate eliminating all the stacking contexts aside from
884         the full screen renderer, added a new pseudo-class specific to video or audio full
885         screen elements. Then, added a new UA rule which resets the z-index and opacities of 
886         all elements under said pseudo-class to auto and 1 respectively. To facilitate quick
887         identity checking of HTMLMediaElements, added isMediaElement() virtual function to 
888         Element and HTMLMediaElement. 
889
890         Test: fullscreen/full-screen-stacking-context.html
891
892         * css/CSSSelector.cpp:
893         (WebCore::CSSSelector::pseudoId): Support PseudoFullScreenMediaDocument.
894         (WebCore::nameToPseudoTypeMap): Support fullScreenMediaDocument.
895         (WebCore::CSSSelector::extractPseudoType): Support PseudoFullScreenMediaDocument.
896         * css/CSSSelector.h: Add PseudoFullScreenMediaDocument.
897         * css/CSSStyleSelector.cpp:
898         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): Support PseudoFullScreenMediaDocument.
899         * css/fullscreen.css:
900         (:root:-webkit-full-screen-document:not(:-webkit-full-screen)): Corrected these names, 
901             which were missing the -webkit prefix.
902         (:root:-webkit-full-screen-media-document *:not(-webkit-full-screen)): Added.
903         * dom/Element.h:
904         (WebCore::Element::isMediaElement): Added, returns false.
905         * html/HTMLMediaElement.h:
906         (WebCore::HTMLMediaElement::isMediaElement): Added, returns true.
907         * rendering/style/RenderStyleConstants.h: Added FULL_SCREEN_MEDIA_DOCUMENT.
908
909 2011-05-04  Levi Weintraub  <leviw@chromium.org>
910
911         Reviewed by Eric Seidel.
912
913         Split findNextLineBreak into a LineBreaker class
914         https://bugs.webkit.org/show_bug.cgi?id=60209
915
916         Breaking findNextLineBreak into a new class inside RenderBlock. Currently it's tracking
917         nearly no state, but subsequent patches will move some of the local variables used throughout
918         the nextLineBreak function into member variables to simplify breaking off helper functions from
919         the bloated function.
920
921         No new tests since this is just moving code around.
922
923         * WebCore.xcodeproj/project.pbxproj:
924         * rendering/RenderBlock.h:
925         (WebCore::RenderBlock::LineBreaker::LineBreaker):
926         (WebCore::RenderBlock::LineBreaker::lineWasHyphenated): Accessor.
927         (WebCore::RenderBlock::LineBreaker::positionedObjects): Ditto.
928         (WebCore::RenderBlock::LineBreaker::clear): Ditto.
929         * rendering/RenderBlockLineLayout.cpp:
930         (WebCore::RenderBlock::layoutRunsAndFloats):
931         (WebCore::RenderBlock::LineBreaker::skipTrailingWhitespace):
932         (WebCore::RenderBlock::LineBreaker::skipLeadingWhitespace):
933         (WebCore::RenderBlock::LineBreaker::reset):
934         (WebCore::RenderBlock::LineBreaker::nextLineBreak):
935
936 2011-05-04  Fridrich Strba  <fridrich.strba@bluewin.ch>
937
938         Reviewed by Adam Barth.
939
940         Add COMPILER(MINGW) to the compilers using the Microsoft C Runtime's vsnprintf.
941         The vsnprintf is part of Microsoft C runtime used also by MinGW (GCC) toolchain.
942         https://bugs.webkit.org/show_bug.cgi?id=58579
943
944         * dom/XMLDocumentParserLibxml2.cpp:
945         (WebCore::XMLDocumentParser::error):
946
947 2011-05-04  Alexis Menard  <alexis.menard@openbossa.org>
948
949         Unreviewed warning fix.
950
951         The variable is just used in the ASSERT macro. Let's use ASSERT_UNUSED to avoid
952         a warning in Release build.
953
954         * dom/Node.cpp:
955         (WebCore::Node::removeEventListener):
956         * platform/DateComponents.cpp:
957         (WebCore::DateComponents::parseTime):
958         * rendering/RenderLayer.cpp:
959         (WebCore::RenderLayer::convertToLayerCoords):
960         * storage/StorageMap.cpp:
961         (WebCore::StorageMap::importItem):
962         * svg/SVGUseElement.cpp:
963         (WebCore::SVGUseElement::buildShadowTree):
964         (WebCore::SVGUseElement::expandUseElementsInShadowTree):
965
966 2011-05-04  Alexis Menard  <alexis.menard@openbossa.org>
967
968         Unreviewed warning fix.
969
970         The variable is just used in the ASSERT macro. Let's use ASSERT_UNUSED to avoid
971         a warning in Release build.
972
973         * accessibility/AccessibilityRenderObject.cpp:
974         (WebCore::lastChildConsideringContinuation):
975
976 2011-05-04  Dimitri Glazkov  <dglazkov@chromium.org>
977
978         Sort xcodeproj files.
979
980         The WebCore.xcodeproj got out of sorts again.
981
982         * WebCore.xcodeproj/project.pbxproj: Ran sort-XCode-project-file.
983
984 2011-05-04  Alexis Menard  <alexis.menard@openbossa.org>
985
986         Reviewed by Adam Barth.
987
988         Warning fix.
989
990         * bindings/js/DOMObjectHashTableMap.h:
991         (WebCore::DOMObjectHashTableMap::~DOMObjectHashTableMap):
992
993 2011-05-04  Rob Buis  <rbuis@rim.com>
994
995         Reviewed by Darin Adler.
996
997         NULL deref when SVG elements have table styles 
998         https://bugs.webkit.org/show_bug.cgi?id=45561
999
1000         Restrict computed CSS values for SVG display property to block, inline or none.
1001
1002         Tests: svg/custom/display-table-caption-foreignObject.svg
1003                svg/custom/display-table-caption-inherit-foreignObject.xhtml
1004                svg/custom/display-table-caption-inherit-text.xhtml
1005                svg/custom/display-table-caption-text.svg
1006
1007         * css/CSSStyleSelector.cpp:
1008         (WebCore::CSSStyleSelector::applyProperty):
1009
1010 2011-05-04  Tao Bai  <michaelbai@chromium.org>
1011
1012         Reviewed by David Kilzer.
1013
1014         Populate touch-icon url to FrameLoaderClient
1015         https://bugs.webkit.org/show_bug.cgi?id=59143
1016         
1017         Parsed and populated apple-touch-icon url to FrameLoaderClient.
1018         Changed favicon to be a type of icon.
1019
1020         * CMakeLists.txt:
1021         * Configurations/FeatureDefines.xcconfig:
1022         * GNUmakefile.am:
1023         * GNUmakefile.list.am:
1024         * WebCore.gypi:
1025         * WebCore.vcproj/WebCore.vcproj:
1026         * WebCore.xcodeproj/project.pbxproj:
1027         * dom/Document.cpp:
1028         (WebCore::Document::iconURL):
1029         (WebCore::Document::setIconURL):
1030         * dom/Document.h:
1031         * dom/IconURL.cpp: Added.
1032         (WebCore::toIconIndex):
1033         * dom/IconURL.h: Added.
1034         (WebCore::IconURL::IconURL):
1035         * features.pri:
1036         * html/HTMLLinkElement.cpp:
1037         (WebCore::HTMLLinkElement::tokenizeRelAttribute):
1038         (WebCore::HTMLLinkElement::process):
1039         (WebCore::HTMLLinkElement::addSubresourceAttributeURLs):
1040         * html/HTMLLinkElement.h:
1041         (WebCore::HTMLLinkElement::RelAttribute::RelAttribute):
1042         (WebCore::HTMLLinkElement::isEnabledViaScript):
1043         * html/parser/HTMLPreloadScanner.cpp:
1044         (WebCore::HTMLNames::PreloadTask::relAttributeIsStyleSheet):
1045         * loader/DocumentLoader.cpp:
1046         (WebCore::DocumentLoader::iconURL):
1047         (WebCore::DocumentLoader::setIconURL):
1048         * loader/DocumentLoader.h:
1049         * loader/EmptyClients.h:
1050         (WebCore::EmptyFrameLoaderClient::dispatchDidChangeIcons):
1051         * loader/FrameLoader.cpp:
1052         (WebCore::FrameLoader::iconURL):
1053         (WebCore::FrameLoader::iconURLs):
1054         (WebCore::FrameLoader::fillIconURL):
1055         (WebCore::FrameLoader::getDefaultIconURL):
1056         (WebCore::FrameLoader::setIconURL):
1057         (WebCore::FrameLoader::didChangeIcons):
1058         * loader/FrameLoader.h:
1059         * loader/FrameLoaderClient.h:
1060
1061 2011-05-04  Chris Marrin  <cmarrin@apple.com>
1062
1063         Reviewed by Simon Fraser.
1064
1065         Crash in PlatformCALayer ::replaceSublayer when layer has not superlayer
1066         https://bugs.webkit.org/show_bug.cgi?id=60191
1067
1068         Skip replaceSublayer when there is no superlayer rather than asserting.
1069         This is probably not a problem and happens when restructuring the layer
1070         tree. Avoiding this crash will allow us to get more testing.
1071
1072         * platform/graphics/ca/GraphicsLayerCA.cpp:
1073         (WebCore::GraphicsLayerCA::swapFromOrToTiledLayer):
1074
1075 2011-05-04  Martin Robinson  <mrobinson@igalia.com>
1076
1077         Reviewed by Gustavo Noronha Silva.
1078
1079         Fix the GTK+ 2.x build for Windows. Instead of making getStockIcon a RenderTheme
1080         method, just use extern declarations to avoid having to declare it in the header.
1081         This will prevent having to include glib.h in RenderThemeGtk.h, which is included
1082         in many C++ files.
1083
1084         No new tests. This is just a build fix.
1085
1086         * platform/gtk/RenderThemeGtk.cpp: Update getStockIcon calls to say getStockIconForWidgetType.
1087         (WebCore::RenderThemeGtk::paintSearchFieldResultsDecoration):
1088         (WebCore::RenderThemeGtk::paintSearchFieldCancelButton):
1089         (WebCore::RenderThemeGtk::paintCapsLockIndicator):
1090         (WebCore::RenderThemeGtk::paintMediaButton):
1091         * platform/gtk/RenderThemeGtk.h: Removed getStockIcon declaration. Make gtkContainer() and
1092         gtkEntry() public because they are now accessed externally from getStockIcon().
1093         * platform/gtk/RenderThemeGtk2.cpp: Update getStockIcon calls.
1094         (WebCore::getStockIconForWidgetType):
1095         * platform/gtk/RenderThemeGtk3.cpp: Ditto.
1096         (WebCore::getStockIconForWidgetType):
1097
1098 2011-05-04  Mark Pilgrim  <pilgrim@chromium.org>
1099
1100         Reviewed by Tony Chang.
1101
1102         IndexedDB open (database) should fail if name is null
1103         https://bugs.webkit.org/show_bug.cgi?id=60022
1104
1105         Test: storage/indexeddb/mozilla/open-database-null-name.html
1106
1107         Combination problem: Bug in IDL didn't pass null values to .cpp layer,
1108         then .cpp layer didn't check for null value anyway.
1109
1110         * storage/IDBFactory.cpp:
1111         (WebCore::IDBFactory::open): check for null name
1112         * storage/IDBFactory.idl: pass null name as null
1113
1114 2011-05-04  Jer Noble  <jer.noble@apple.com>
1115
1116         Reviewed by Darin Adler.
1117
1118         Entering full screen fails >= second time on Vimeo.com.
1119         https://bugs.webkit.org/show_bug.cgi?id=60143
1120
1121         Force the RenderFullScreen's layer backing to be recreated when setAnimating() is called.
1122         Previously, the RenderLayerCompositor would fail to reparent the RenderFullScreen's layer
1123         at the end of an animation, if it determined that the RenderFullScreen would still require
1124         a layer even when not animating.
1125
1126         * rendering/RenderFullScreen.cpp:
1127         (RenderFullScreen::setAnimating): Clear the renderer's layer.
1128
1129 2011-05-04  Simon Fraser  <simon.fraser@apple.com>
1130
1131         Reviewed by Darin Adler.
1132
1133         Avoid allocating a new image buffer in ~CanvasRenderingContext2D()
1134         https://bugs.webkit.org/show_bug.cgi?id=59849
1135
1136         When attempting to unwind the graphics state stack in the
1137         CanvasRenderingContext2D destructor, don't allow HTMLCanvasElement
1138         to create a new ImageBuffer.
1139
1140         * html/HTMLCanvasElement.cpp:
1141         (WebCore::HTMLCanvasElement::existingDrawingContext):
1142         * html/HTMLCanvasElement.h:
1143         * html/canvas/CanvasRenderingContext2D.cpp:
1144         (WebCore::CanvasRenderingContext2D::~CanvasRenderingContext2D):
1145
1146 2011-05-04  Andrey Kosyakov  <caseq@chromium.org>
1147
1148         Reviewed by Yury Semikhatsky.
1149
1150         Web Inspector: expose shadow DOM in the Elements panel
1151         https://bugs.webkit.org/show_bug.cgi?id=60160
1152
1153         Test: inspector/elements/shadow-dom.html
1154
1155         * dom/Element.cpp:
1156         (WebCore::Element::ensureShadowRoot):
1157         (WebCore::Element::removeShadowRoot):
1158         * inspector/Inspector.json:
1159         * inspector/InspectorDOMAgent.cpp:
1160         (WebCore::InspectorDOMAgent::pushChildNodesToFrontend):
1161         (WebCore::InspectorDOMAgent::buildObjectForNode):
1162         (WebCore::InspectorDOMAgent::didInsertDOMNode):
1163         (WebCore::InspectorDOMAgent::didRemoveDOMNode):
1164         (WebCore::InspectorDOMAgent::isContainerNode):
1165         * inspector/InspectorDOMAgent.h:
1166         * inspector/front-end/DOMAgent.js:
1167         (WebInspector.DOMNode):
1168         (WebInspector.DOMNode.prototype.inShadowTree):
1169         (WebInspector.DOMNode.prototype._setShadowRootPayload):
1170         (WebInspector.DOMNode.prototype._renumber):
1171         (WebInspector.DOMAgent.prototype._bindNodes):
1172         (WebInspector.DOMAgent.prototype.querySelectorAll):
1173         (WebInspector.DOMAgent.prototype._shadowRootUpdated):
1174         (WebInspector.DOMDispatcher.prototype.searchResults):
1175         (WebInspector.DOMDispatcher.prototype.shadowRootUpdated):
1176         * inspector/front-end/ElementsPanel.js:
1177         (WebInspector.ElementsPanel):
1178         (WebInspector.ElementsPanel.prototype._nodeUpdated):
1179         (WebInspector.ElementsPanel.prototype._attributesUpdated):
1180         (WebInspector.ElementsPanel.prototype._nodeRemoved):
1181         (WebInspector.ElementsPanel.prototype.updateModifiedNodes):
1182         (WebInspector.ElementsPanel.prototype.updateBreadcrumb):
1183         * inspector/front-end/ElementsTreeOutline.js:
1184         (WebInspector.ElementsTreeElement):
1185         (WebInspector.ElementsTreeElement.prototype._updateChildren.updateChildrenOfNode):
1186         (WebInspector.ElementsTreeElement.prototype._updateChildren):
1187         ():
1188         * inspector/front-end/inspector.css:
1189         (#elements-content .dom-shadow-root):
1190         (.outline-disclosure li .webkit-html-tag.shadow):
1191         * inspector/front-end/utilities.js:
1192
1193 2011-05-03  Adam Roben  <aroben@apple.com>
1194
1195         Remove an unnecessary OwnPtr equality check in XSLT code
1196
1197         Fixes <http://webkit.org/b/60053> Testing OwnPtrs for equality should cause a compiler error
1198
1199         Reviewed by Anders Carlsson and Antti Koivisto.
1200
1201         * dom/Document.cpp:
1202         (WebCore::Document::setTransformSource): No need to check for equality. If the pointers are
1203         equal, we're screwed anyway. (And the caller always passes in a newly-allocated object, so
1204         we're safe.)
1205
1206 2011-05-04  Leandro Gracia Gil  <leandrogracia@chromium.org>
1207
1208         Reviewed by Tony Gentilcore.
1209
1210         Media Stream API: add the skeleton of the frame and page controllers and the embedder client.
1211         https://bugs.webkit.org/show_bug.cgi?id=56922
1212
1213         Add the basic outlines of the page controller, the per-frame controller and the embedder
1214         client interface for the Media Stream API. Provide methods to handle the situations
1215         where a frame is detached from the page or transferred between pages.
1216
1217         Tests for the Media Stream API will be provided by the bug 56587.
1218
1219         * CMakeLists.txt:
1220         * GNUmakefile.list.am:
1221         * WebCore.gypi:
1222         * WebCore.pro:
1223         * WebCore.vcproj/WebCore.vcproj:
1224         * WebCore.xcodeproj/project.pbxproj:
1225         * page/Frame.cpp:
1226         (WebCore::Frame::Frame):
1227         (WebCore::Frame::~Frame):
1228         (WebCore::Frame::pageDestroyed):
1229         (WebCore::Frame::transferChildFrameToNewDocument):
1230         * page/Frame.h:
1231         (WebCore::Frame::mediaStreamFrameController):
1232         * page/MediaStreamClient.h: Added.
1233         (WebCore::MediaStreamClient::~MediaStreamClient):
1234         * page/MediaStreamController.cpp: Added.
1235         (WebCore::MediaStreamController::Request::Request):
1236         (WebCore::MediaStreamController::Request::localId):
1237         (WebCore::MediaStreamController::Request::frameController):
1238         (WebCore::MediaStreamController::MediaStreamController):
1239         (WebCore::MediaStreamController::~MediaStreamController):
1240         (WebCore::MediaStreamController::unregisterFrameController):
1241         (WebCore::MediaStreamController::registerRequest):
1242         * page/MediaStreamController.h: Added.
1243         * page/MediaStreamFrameController.cpp: Added.
1244         (WebCore::MediaStreamFrameController::Request::Request):
1245         (WebCore::MediaStreamFrameController::Request::~Request):
1246         (WebCore::MediaStreamFrameController::Request::scriptExecutionContext):
1247         (WebCore::MediaStreamFrameController::Request::isGenerateStreamRequest):
1248         (WebCore::MediaStreamFrameController::Request::isRecordedDataRequest):
1249         (WebCore::MediaStreamFrameController::RequestMap::abort):
1250         (WebCore::MediaStreamFrameController::RequestMap::abortAll):
1251         (WebCore::MediaStreamFrameController::MediaStreamFrameController):
1252         (WebCore::MediaStreamFrameController::~MediaStreamFrameController):
1253         (WebCore::MediaStreamFrameController::securityOrigin):
1254         (WebCore::MediaStreamFrameController::scriptExecutionContext):
1255         (WebCore::MediaStreamFrameController::pageController):
1256         (WebCore::MediaStreamFrameController::enterDetachedState):
1257         (WebCore::MediaStreamFrameController::disconnectPage):
1258         (WebCore::MediaStreamFrameController::disconnectFrame):
1259         (WebCore::MediaStreamFrameController::transferToNewPage):
1260         * page/MediaStreamFrameController.h: Added.
1261         * page/Page.cpp:
1262         (WebCore::Page::Page):
1263         (WebCore::Page::PageClients::PageClients):
1264         * page/Page.h:
1265         (WebCore::Page::mediaStreamController):
1266
1267 2011-05-04  Alexander Pavlov  <apavlov@chromium.org>
1268
1269         Reviewed by Yury Semikhatsky.
1270
1271         Web Inspector: Double-click in a read-only style rule results in a non-editable blank property
1272         https://bugs.webkit.org/show_bug.cgi?id=60150
1273
1274         * inspector/front-end/StylesSidebarPane.js:
1275         (WebInspector.StylePropertiesSection.prototype._handleEmptySpaceDoubleClick):
1276
1277 2011-05-04  Dominic Battre  <battre@chromium.org>
1278
1279         Reviewed by Tony Gentilcore.
1280
1281         Fix missing header in case SVG is disabled
1282         https://bugs.webkit.org/show_bug.cgi?id=60153
1283
1284         * dom/EventDispatcher.cpp:
1285
1286 2011-05-04  Luke Macpherson   <macpherson@chromium.org>
1287
1288         Reviewed by Eric Seidel.
1289
1290         Rename CSSStyleApplyProperty::propertyValue and setPropertyValue.
1291         https://bugs.webkit.org/show_bug.cgi?id=60006
1292
1293         No new tests as no functionality added. Simple rename only.
1294
1295         * css/CSSStyleApplyProperty.cpp:
1296         Rename propertyValue propertyHandler and setPropertyValue setPropertyHandler.
1297         * css/CSSStyleApplyProperty.h:
1298         Rename propertyValue propertyHandler and setPropertyValue setPropertyHandler.
1299
1300 2011-05-04  Ryosuke Niwa  <rniwa@webkit.org>
1301
1302         Reviewed by Eric Seidel.
1303
1304         Cleanup conditionals in findNextLineBreak
1305         https://bugs.webkit.org/show_bug.cgi?id=60117
1306
1307         Simplified conditional statements in findNextLineBreak.
1308
1309         * rendering/RenderBlockLineLayout.cpp:
1310         (WebCore::RenderBlock::findNextLineBreak):
1311
1312 2011-05-04  Luke Macpherson   <macpherson@chromium.org>
1313
1314         Reviewed by Eric Seidel.
1315
1316         Make CSSStyleSelector::applyProperty() CSSPropertyWebkitHyphens case use appropriate macro.
1317         https://bugs.webkit.org/show_bug.cgi?id=60114
1318
1319         No new tests as no functionality changes.
1320
1321         * css/CSSStyleSelector.cpp:
1322         (WebCore::CSSStyleSelector::applyProperty):
1323         Use HANDLE_INHERIT_AND_INITIAL_AND_PRIMITIVE macro to remove code duplication.
1324
1325 2011-05-04  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>
1326
1327         Reviewed by Andreas Kling.
1328
1329         [Qt] Fix QNetworkReplyWrapper to not depend on QNetworkReply::isFinished() method
1330         https://bugs.webkit.org/show_bug.cgi?id=59070
1331
1332         Applications using our API and our autotests subclass QNetworkReply as part of providing a
1333         custom QNetworkAccessManager. But there's an API limitation in Qt 4.7, that makes
1334         QNetworkReply::isFinished() always be false for these custom replies. This was fixed in Qt
1335         4.8, see http://bugreports.qt.nokia.com/browse/QTBUG-11737.
1336
1337         The consequence is that QtWebKit cannot rely on this function. So now QNetworkReplyWrapper
1338         watches for the finished() signal and set a dynamic property "_q_isFinished" on the reply
1339         indicating that it is finished. When there's no finished signal (synchronous) we set the
1340         dynamic property once we get the reply.
1341
1342         This fixes tst_QWebFrame::requestedUrl(), that was breaking because sniffer was not
1343         emitting its own finished() signal, causing QWebFrame::loadFinished() to not be emitted.
1344
1345         * platform/network/qt/QNetworkReplyHandler.cpp:
1346         (WebCore::QNetworkReplyWrapper::QNetworkReplyWrapper):
1347         Connect the finished signal to the new setFinished() slot.
1348
1349         (WebCore::QNetworkReplyWrapper::synchronousLoad):
1350         Since we don't get the finished signal for synchronous loads, set the dynamic property
1351         before processing it.
1352
1353         (WebCore::QNetworkReplyWrapper::resetConnections):
1354         Do not reset the connection to setFinished().
1355
1356         (WebCore::QNetworkReplyWrapper::setFinished):
1357         Set the dynamic property in the reply.
1358
1359         (WebCore::QNetworkReplyWrapper::emitMetaDataChanged):
1360         (WebCore::QNetworkReplyHandler::start):
1361         Change to use wrapper's isFinished() instead of asking the reply directly.
1362
1363         * platform/network/qt/QNetworkReplyHandler.h:
1364         (WebCore::QNetworkReplyWrapper::isFinished):
1365         Checks the dynamic property of the reply.
1366
1367         * platform/network/qt/QtMIMETypeSniffer.cpp:
1368         (QtMIMETypeSniffer::sniff):
1369         Use the dynamic property to check if the reply is finished.
1370
1371 2011-05-04  Eric Seidel  <eric@webkit.org>
1372
1373         Reviewed by Ryosuke Niwa.
1374
1375         Split createLineBoxesFromBidiRuns out from layoutRunsAndFloats
1376         https://bugs.webkit.org/show_bug.cgi?id=60080
1377
1378         No functional change, just moving code.
1379
1380         * rendering/RenderBlock.h:
1381         * rendering/RenderBlockLineLayout.cpp:
1382         (WebCore::RenderBlock::createLineBoxesFromBidiRuns):
1383         (WebCore::RenderBlock::layoutRunsAndFloats):
1384
1385 2011-05-04  Andreas Kling  <andreas.kling@nokia.com>
1386
1387         Reviewed by Kenneth Rohde Christiansen.
1388
1389         [Qt] Remove unused function FontPlatformData::pixelSize()
1390         https://bugs.webkit.org/show_bug.cgi?id=60156
1391
1392         * platform/graphics/qt/FontPlatformData.h:
1393         (WebCore::FontPlatformData::pixelSize): Removed.
1394
1395 2011-05-04  Luke Macpherson   <macpherson@chromium.org>
1396
1397         Reviewed by Darin Adler.
1398
1399         Remove redundant conversion from auto table layout to auto table layout in CSSStyleSelector::applyProperty()
1400         https://bugs.webkit.org/show_bug.cgi?id=60011
1401
1402         No new tests added as no functionality changed.
1403
1404         * css/CSSStyleSelector.cpp:
1405         (WebCore::CSSStyleSelector::applyProperty):
1406         Remove reundant check for auto table layout.
1407
1408 2011-05-04  Mihai Parparita  <mihaip@chromium.org>
1409
1410         Reviewed by Darin Adler.
1411
1412         Remove double-free checks for bug 56124
1413         https://bugs.webkit.org/show_bug.cgi?id=60037
1414
1415         Antti's speculative fix for bug 56124 (r84151) appears to have worked,
1416         these CRASH() calls are not triggering anymore.
1417
1418         * css/CSSSelector.h:
1419         (WebCore::CSSSelector::CSSSelector):
1420         (WebCore::CSSSelector::~CSSSelector):
1421         * css/CSSSelectorList.cpp:
1422         (WebCore::CSSSelectorList::deleteSelectors):
1423
1424 2011-05-04  Satish Sampath  <satish@chromium.org>
1425
1426         Reviewed by Tony Gentilcore.
1427
1428         Layout the speech input button to the left of outer spin button properly.
1429         https://bugs.webkit.org/show_bug.cgi?id=59742
1430
1431         * rendering/RenderTextControlSingleLine.cpp:
1432         (WebCore::RenderTextControlSingleLine::layout):
1433
1434 2011-05-04  Yury Semikhatsky  <yurys@chromium.org>
1435
1436         Unreviewed. Build fix.
1437
1438         * bindings/js/JSInjectedScriptHostCustom.cpp: fix includes declaration
1439
1440 2011-05-03  Yury Semikhatsky  <yurys@chromium.org>
1441
1442         Reviewed by Pavel Feldman.
1443
1444         Web Inspector: can't inspect element in an iframe when element originates from non-frame document
1445         https://bugs.webkit.org/show_bug.cgi?id=60031
1446         
1447         Inspected object type evaluation has moved into native bindings. This way it doesn't
1448         depend on the current JS context.
1449
1450         Test: inspector/elements/elements-inspect-iframe-from-different-domain.html
1451
1452         * bindings/js/JSInjectedScriptHostCustom.cpp:
1453         (WebCore::JSInjectedScriptHost::isHTMLAllCollection): this method helps distinguish
1454         real undefined values from HTMLAllCollection
1455         (WebCore::JSInjectedScriptHost::type): method that returns presice type of the passed
1456         value
1457         * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
1458         (WebCore::V8InjectedScriptHost::isHTMLAllCollectionCallback):
1459         (WebCore::V8InjectedScriptHost::typeCallback):
1460         * inspector/InjectedScriptHost.idl:
1461         * inspector/InjectedScriptSource.js:
1462         (.):
1463
1464 2011-05-03  Pratik Solanki  <psolanki@apple.com>
1465
1466         Reviewed by Antti Koivisto.
1467
1468         Part of WebCore should use CFNetwork-based loader on Mac
1469         https://bugs.webkit.org/show_bug.cgi?id=51836
1470
1471         Merge the conflicting definitions of WebCore::privateBrowsingCookieStorage() into one. Clean
1472         up some warnings and #if USE(CFNETWORK) around code.
1473
1474         * platform/mac/CookieJar.mm:
1475         * platform/network/CookieStorage.h:
1476         * platform/network/cf/CookieStorageCFNet.cpp:
1477         (WebCore::privateBrowsingCookieStorage):
1478         (WebCore::currentCookieStorage):
1479         (WebCore::setCurrentCookieStorage):
1480         (WebCore::setCookieStoragePrivateBrowsingEnabled):
1481         (WebCore::notifyCookiesChangedOnMainThread):
1482         (WebCore::notifyCookiesChanged):
1483         * platform/network/cf/CookieStorageCFNet.h:
1484         * platform/network/mac/CookieStorageMac.mm:
1485
1486 2011-05-03  Justin Novosad  <junov@chromium.org>
1487
1488         Reviewed by Kenneth Russell.
1489
1490         [Chromium] Make accelerated 2d canvas enabled by default with skia
1491         https://bugs.webkit.org/show_bug.cgi?id=59929
1492
1493         No new tests. Covered by existing layout tests
1494
1495         * html/canvas/CanvasRenderingContext2D.cpp:
1496         (WebCore::CanvasRenderingContext2D::CanvasRenderingContext2D):
1497         Initialized for accelerated canvas if either the accelerated2dCanvas
1498         or the legacyAccelerated2dCanvas flags are enabled
1499         * page/Page.cpp:
1500         (WebCore::Page::sharedGraphicsContext3D):
1501         This is where the code goes to implement the functionality for the
1502         legacy vs current acceleration paths for the 2D canvas. Currently,
1503         this is a no-op, and always select the legacy path.  This is temporary
1504         until we are ready to sort the GPU layout tests (rebasline vs. bug)
1505         * page/Settings.cpp:  Added new flage for legacyAccelerated2dCanvas
1506         (WebCore::Settings::Settings):
1507         (WebCore::Settings::setLegacyAccelerated2dCanvasEnabled):
1508         * page/Settings.h:
1509         (WebCore::Settings::legacyAccelerated2dCanvasEnabled):
1510
1511 2011-04-29  Jer Noble  <jer.noble@apple.com>
1512
1513         Reviewed by Eric Seidel.
1514
1515         Implement FULLSCREEN_API on Windows, Part 4: Enable it
1516         https://bugs.webkit.org/show_bug.cgi?id=59798
1517
1518         * WebCore.vcproj/WebCore.vcproj: Add missing full screen related
1519             files to the project.
1520
1521 2011-05-03  Alpha Lam  <hclam@chromium.org>
1522
1523         Not reviewed. Build fix.
1524
1525         More places from 0 to nullptr.
1526
1527         * bindings/v8/V8Proxy.cpp:
1528         (WebCore::V8Proxy::precompileScript):
1529         * platform/graphics/chromium/LayerTilerChromium.cpp:
1530         (WebCore::LayerTilerChromium::create):
1531         * platform/graphics/gpu/BicubicShader.cpp:
1532         (WebCore::BicubicShader::create):
1533         * platform/graphics/gpu/ConvolutionShader.cpp:
1534         (WebCore::ConvolutionShader::create):
1535         * platform/graphics/gpu/LoopBlinnSolidFillShader.cpp:
1536         (WebCore::LoopBlinnSolidFillShader::create):
1537         * platform/graphics/gpu/SolidFillShader.cpp:
1538         (WebCore::SolidFillShader::create):
1539         * platform/graphics/gpu/TexShader.cpp:
1540         (WebCore::TexShader::create):
1541         * platform/graphics/skia/PlatformContextSkia.cpp:
1542         (WebCore::PlatformContextSkia::~PlatformContextSkia):
1543         * platform/leveldb/LevelDBDatabase.cpp:
1544         (WebCore::LevelDBDatabase::createIterator):
1545         * platform/text/LocalizedNumberICU.cpp:
1546         (WebCore::createFormatterForCurrentLocale):
1547
1548 2011-05-03  Alpha Lam  <hclam@chromium.org>
1549
1550         Not reviewed. Build fix.
1551
1552         Using nullptr instead of 0. This makes visual studio happy.
1553
1554         * storage/IDBTransactionBackendInterface.h:
1555
1556 2011-05-03  Luke Macpherson   <macpherson@chromium.org>
1557
1558         Reviewed by Dimitri Glazkov.
1559
1560         Add template parameter to ApplyPropertyColor to improve clarity by removing constructor parameter side effects.
1561         https://bugs.webkit.org/show_bug.cgi?id=59774
1562
1563         No new tests required as on new functionality.
1564
1565         * css/CSSStyleApplyProperty.cpp:
1566         (WebCore::ApplyPropertyColor::applyValue):
1567         Added template parameter "inheritColorFromParent = false".
1568         (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
1569         Use template parameter where appropriate.
1570
1571 2011-05-03  Dan Bernstein  <mitz@apple.com>
1572
1573         Reviewed by Darin Adler.
1574
1575         <rdar://problem/9313186> Make the fix for <rdar://problem/9190108> more robust.
1576
1577         Added a pointer from FloatingObject to its originating line, if there is one, and made sure to
1578         dirty the line when the float is removed, instead of relying on the float always intersecting
1579         its originating line.
1580
1581         * rendering/RenderBlock.cpp:
1582         (WebCore::RenderBlock::removeFloatingObject):
1583         (WebCore::RenderBlock::removeFloatingObjectsBelow):
1584         (WebCore::RenderBlock::clearFloats):
1585         * rendering/RenderBlock.h:
1586         (WebCore::RenderBlock::FloatingObject::FloatingObject):
1587         * rendering/RenderBlockLineLayout.cpp:
1588         (WebCore::RenderBlock::appendFloatingObjectToLastLine):
1589         (WebCore::RenderBlock::layoutRunsAndFloats):
1590         (WebCore::RenderBlock::determineStartPosition):
1591
1592 2011-05-02  Jer Noble  <jer.noble@apple.com>
1593
1594         Reviewed by Adam Roben.
1595
1596         Implement FULLSCREEN_API on Windows, Part 3: WebKit2
1597         https://bugs.webkit.org/show_bug.cgi?id=59845
1598
1599         Move WebFullScreenController into WebCore to facilitate code sharing between WebKit
1600         and WebKit2.  WebFullScreenController now uses a Client class to request work on its
1601         behalf by WebKit and WebKit2.  MediaPlayerPrivateFullscreenWindow now only creates a 
1602         CALayerHost once a root layer is set, as the CALayerHost was causing child window drawing
1603         problems, and because a CALayerHost is overkill if the window is only drawing black to
1604         its client area.
1605
1606         * WebCore.vcproj/WebCore.vcproj:
1607         * platform/graphics/win/MediaPlayerPrivateFullscreenWindow.cpp:
1608         (WebCore::MediaPlayerPrivateFullscreenWindow::MediaPlayerPrivateFullscreenWindow): Do not create 
1609             m_layerHost in the constructor.
1610         (WebCore::MediaPlayerPrivateFullscreenWindow::createWindow): NULL check m_layerHost.
1611         (WebCore::MediaPlayerPrivateFullscreenWindow::setRootChildLayer): Lazily instantiate m_layerHost.
1612         (WebCore::MediaPlayerPrivateFullscreenWindow::wndProc): NULL check m_layerHost; if a root layer is
1613             not present, fill the window with black in WM_PAINT.
1614         * platform/graphics/win/MediaPlayerPrivateFullscreenWindow.h:
1615         * platform/graphics/win/FullScreenController.cpp: Renamed from Source/WebKit/win/WebFullScreenController.cpp.
1616         * platform/graphics/win/FullScreenController.h: Renamed from Source/WebKit/win/WebFullScreenController.h.
1617         * platform/graphics/win/FullScreenControllerClient.h: Split out from FullScreenController.h
1618         (WebCore::FullScreenControllerClient::~FullScreenControllerClient):
1619
1620 2011-05-03  Brady Eidson  <beidson@apple.com>
1621
1622         Reviewed by Sam Weinig.
1623
1624         https://bugs.webkit.org/show_bug.cgi?id=60087 and <rdar://problem/9373182>
1625         WK2 Icon Database should provide access to all image representations in the icon.
1626
1627         Add an accessor for CG platforms to get a CFArrayRef of all the CGImageRefs represented:
1628         * platform/graphics/BitmapImage.h:
1629         * platform/graphics/Image.h:
1630         (WebCore::Image::getCGImageArray):
1631         * platform/graphics/cg/ImageCG.cpp:
1632         (WebCore::BitmapImage::getCGImageArray):
1633
1634 2011-05-03  Ryosuke Niwa  <rniwa@webkit.org>
1635
1636         Reviewed by Eric Seidel.
1637
1638         findNextLineBreak splits InlineIterator into 3 pieces
1639         https://bugs.webkit.org/show_bug.cgi?id=60082
1640
1641         Avoid splitting InlineIterator into 3 variables with inter-dependencies.
1642
1643         * rendering/InlineIterator.h:
1644         (WebCore::InlineIterator::fastIncrementInTextNode): Added.
1645         (WebCore::InlineIterator::previousInSameNode): Added.
1646         * rendering/RenderBlockLineLayout.cpp:
1647         (WebCore::RenderBlock::findNextLineBreak):
1648
1649 2011-05-03  Dean Jackson  <dino@apple.com>
1650
1651         Reviewed by Simon Fraser.
1652
1653         Interrupted transitions are not correctly removed
1654         https://bugs.webkit.org/show_bug.cgi?id=60062
1655
1656         CompositeAnimation was replacing any existing
1657         transition as a new one was created. However, it wasn't
1658         clearing the lists in AnimationControllerPrivate that
1659         signal when a hardware animation starts. Rather than
1660         simple removing the existing transition, we now tell
1661         AnimationControllerPrivate that is has gone.
1662
1663         Test: transitions/3d/interrupted-transition.html
1664
1665         * page/animation/CompositeAnimation.cpp:
1666         (WebCore::CompositeAnimation::updateTransitions):
1667
1668 2011-05-03  Enrica Casucci  <enrica@apple.com>
1669
1670         Reviewed by Ryosuke Niwa.
1671
1672         Crash in SpellingCorrectionController::respondToChangedSelection.
1673         https://bugs.webkit.org/show_bug.cgi?id=60071
1674         <rdar://problem/9358190>
1675
1676         Creating a Visible position could trigger a layout and there is no
1677         guarantee that the selection is still valid after that.
1678
1679         Tests: editing/selection/undo-crash.html
1680
1681         * editing/SpellingCorrectionController.cpp:
1682         (WebCore::SpellingCorrectionController::respondToChangedSelection):
1683
1684 2011-05-03  Levi Weintraub  <leviw@chromium.org>
1685
1686         Reviewed by Eric Seidel.
1687
1688         Refactor computeInlineDirectionPositionsForLine into smaller functions
1689         https://bugs.webkit.org/show_bug.cgi?id=60072
1690
1691         Split three functions off from computeInlineDirectionPositionsForLine
1692         to improve its readability.
1693
1694         No new tests since this is just moving code around.
1695
1696         * rendering/RenderBlock.h:
1697         * rendering/RenderBlockLineLayout.cpp:
1698         (WebCore::RenderBlock::setMarginsForRubyRun):
1699         (WebCore::setLogicalWidthForTextRun):
1700         (WebCore::computeExpansionForJustifiedText):
1701         (WebCore::RenderBlock::computeInlineDirectionPositionsForLine):
1702
1703 2011-05-03  David Kilzer  <ddkilzer@apple.com>
1704
1705         <http://webkit.org/b/59838> Implement HTTP pipelining for CoreFoundation-based networking
1706
1707         Reviewed by Antti Koivisto.
1708
1709         * platform/network/cf/ResourceRequestCFNet.cpp:
1710         (WebCore::ResourceRequest::doUpdatePlatformRequest): Set the
1711         priority on the request if HTTP pipelining is enabled.
1712         (WebCore::ResourceRequest::doUpdateResourceRequest): Read the
1713         priority from the request if HTTP pipelining is enabled.
1714         (readBooleanPreference): Enable code when compiling with
1715         USE(CFNETWORK).
1716         (WebCore::initializeMaximumHTTPConnectionCountPerHost): Ditto.
1717         Comment out setting the minimum fast lane priority on Windows
1718         since it's not currently available.
1719
1720 2011-05-03  Simon Fraser  <simon.fraser@apple.com>
1721
1722         Reviewed by Dan Bernstein.
1723
1724         <rdar://problem/9278296> Flicker zooming on Google Maps satellite view with accelerated compositing turned on
1725
1726         Conditionalize compositing tiled layer size-constraining logic to older
1727         OSes.
1728
1729         * platform/graphics/ca/GraphicsLayerCA.cpp:
1730         (WebCore::GraphicsLayerCA::constrainedSize):
1731
1732 2011-05-03  Roland Steiner  <rolandsteiner@chromium.org>
1733
1734         Reviewed by Dimitri Glazkov.
1735
1736         Allow access keys to be used in shadow DOM
1737         https://bugs.webkit.org/show_bug.cgi?id=59979
1738
1739         Move access key methods and members back to Document from TreeScope.
1740         Also traverse into shadow trees when building the access key map.
1741
1742         No new tests. (refactoring)
1743
1744         * dom/Document.cpp:
1745         (WebCore::Document::Document):
1746         (WebCore::Document::getElementByAccessKey):
1747         (WebCore::Document::buildAccessKeyMap):
1748         (WebCore::Document::invalidateAccessKeyMap):
1749         * dom/Document.h:
1750         * dom/TreeScope.cpp:
1751         (WebCore::TreeScope::TreeScope):
1752         (WebCore::TreeScope::destroyTreeScopeData):
1753         * dom/TreeScope.h:
1754
1755 2011-05-03  Dan Bernstein  <mitz@apple.com>
1756
1757         Reviewed by Darin Adler.
1758
1759         <rdar://problem/8891395> -[DOMRange textRects] returns incorrect results for vertical or flipped text
1760         https://bugs.webkit.org/show_bug.cgi?id=60067
1761
1762         No test because this code path is only used by the Objective-C API, which is not testable from DumpRenderTree.
1763
1764         * rendering/RenderText.cpp:
1765         (WebCore::RenderText::absoluteRectsForRange): Use width/height instead of logicalWidth/logicalHeight here,
1766         and perform the local-to-absolute mapping on the rects rather than their origin, in order to get the right
1767         results for flipped writing modes.
1768
1769 2011-05-03  Anton Muhin  <antonm@chromium.org>
1770
1771         Reviewed by Yury Semikhatsky.
1772
1773         [v8] remove an ASSERT from grouping logic
1774         https://bugs.webkit.org/show_bug.cgi?id=60024
1775
1776         This ASSERT was exploratory.  Alas, right now I am aware of no easy way to
1777         repro it.  Removing for now for greener bots.
1778
1779         No new tests, only an ASSERT removal.
1780
1781         * bindings/v8/V8GCController.cpp:
1782         (WebCore::calculateGroupId):
1783
1784 2011-05-03  Ryosuke Niwa  <rniwa@webkit.org>
1785
1786         Reviewed by Darin Adler.
1787
1788         WebKit allows selection that crosses the shadow boundary of a readonly input element
1789         https://bugs.webkit.org/show_bug.cgi?id=60000
1790
1791         The bug was caused by VisibleSelection's not validating shadow DOM boundaries.
1792         Fixed the bug by adding an extra adjustment, adjustSelectionToAvoidCrossingShadowBoundaries,
1793         in its validation process.
1794
1795         Tests: editing/selection/select-across-readonly-input-1.html
1796                editing/selection/select-across-readonly-input-2.html
1797                editing/selection/select-across-readonly-input-3.html
1798                editing/selection/select-across-readonly-input-4.html
1799                editing/selection/select-across-readonly-input-5.html
1800
1801         * editing/VisibleSelection.cpp:
1802         (WebCore::VisibleSelection::validate): Calls adjustSelectionToAvoidCrossingShadowBoundaries.
1803         (WebCore::VisibleSelection::adjustSelectionToAvoidCrossingShadowBoundaries): Added.
1804         * editing/VisibleSelection.h:
1805
1806 2011-05-03  Eric Seidel  <eric@webkit.org>
1807
1808         Reviewed by Ryosuke Niwa.
1809
1810         Split out layoutRunsAndFloats from layoutInlineChildren
1811         https://bugs.webkit.org/show_bug.cgi?id=60052
1812
1813         No new tests, just moving code here.  There should be
1814         no change in behavior.
1815
1816         * rendering/RenderBlock.h:
1817         * rendering/RenderBlockLineLayout.cpp:
1818         (WebCore::RenderBlock::layoutRunsAndFloats):
1819         (WebCore::RenderBlock::layoutInlineChildren):
1820
1821 2011-05-03  James Robinson  <jamesr@chromium.org>
1822
1823         Reviewed by Kenneth Russell.
1824
1825         [chromium] Resizing a 2d canvas to huge dimensions after compositing crashes with accelerated 2d canvas option enabled
1826         https://bugs.webkit.org/show_bug.cgi?id=59965
1827
1828         Fixes a few bugs leading to a crash if a canvas already being composited was resized to huge dimensions.
1829
1830         Test: fast/canvas/canvas-resize-after-paint.html
1831
1832         * html/canvas/CanvasRenderingContext2D.cpp:
1833         (WebCore::CanvasRenderingContext2D::reset):
1834             Mark the canvas's layer as needing a synthetic style recalculation when creating or destroying the backing
1835             DrawingBuffer so that we exit compositing mode properly if we can't handle the canvas dimensions.
1836         * platform/graphics/chromium/Canvas2DLayerChromium.cpp:
1837         (WebCore::Canvas2DLayerChromium::setLayerRenderer):
1838             Add a null check for m_drawingBuffer
1839         * platform/graphics/gpu/DrawingBuffer.cpp:
1840         (WebCore::DrawingBuffer::clear):
1841             Avoid clearing the m_context pointer in reset() - we destroy the DrawingBuffer whenever reset() fails, so
1842             this is unnecessary.
1843
1844 2011-05-03  Adam Roben  <aroben@apple.com>
1845
1846         Fix most strict PassOwnPtr violations on Windows
1847
1848         Fixes <http://webkit.org/b/60025> Windows should (almost) build with strict PassOwnPtr
1849         enabled
1850
1851         Reviewed by Anders Carlsson.
1852
1853         * loader/EmptyClients.h:
1854         * platform/GeolocationService.cpp:
1855         * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
1856         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
1857         * platform/mock/GeolocationServiceMock.cpp:
1858         * rendering/RenderTheme.cpp:
1859         * rendering/RenderThemeSafari.cpp:
1860
1861 2011-05-03  Levi Weintraub  <leviw@chromium.org>
1862
1863         Reviewed by Eric Seidel.
1864
1865         Extract LineInfo class
1866         https://bugs.webkit.org/show_bug.cgi?id=60044
1867
1868         Created a LineInfo class in RenderBlockLineLayout.cpp that brings together the relevant
1869         layout information about a line. This simplifies function signatures and clears up initialization.
1870
1871         No new tests as this is refactoring.
1872
1873         * rendering/RenderBlock.h: Updated internal layout function signatures to use LineInfo.
1874         * rendering/RenderBlockLineLayout.cpp:
1875         (WebCore::LineInfo::LineInfo):
1876         (WebCore::LineInfo::isFirstLine):
1877         (WebCore::LineInfo::isLastLine):
1878         (WebCore::LineInfo::isEmpty):
1879         (WebCore::LineInfo::previousLineBrokeCleanly):
1880         (WebCore::LineInfo::setFirstLine):
1881         (WebCore::LineInfo::setLastLine):
1882         (WebCore::LineInfo::setEmpty):
1883         (WebCore::LineInfo::setPreviousLineBrokeCleanly):
1884         (WebCore::RenderBlock::createLineBoxes):
1885         (WebCore::RenderBlock::constructLine):
1886         (WebCore::RenderBlock::computeInlineDirectionPositionsForLine):
1887         (WebCore::RenderBlock::layoutInlineChildren):
1888         (WebCore::RenderBlock::determineStartPosition):
1889         (WebCore::skipNonBreakingSpace):
1890         (WebCore::shouldCollapseWhiteSpace):
1891         (WebCore::requiresLineBox): Moved from RenderBlock.h and made it locally scoped to RenderBlockLineLayout.cpp
1892         (WebCore::RenderBlock::generatesLineBoxesForInlineChild):
1893         (WebCore::RenderBlock::skipTrailingWhitespace):
1894         (WebCore::RenderBlock::skipLeadingWhitespace):
1895         (WebCore::RenderBlock::findNextLineBreak):
1896
1897 2011-05-03  Roland Steiner  <rolandsteiner@chromium.org>
1898
1899         Reviewed by Dimitri Glazkov.
1900
1901         Update node list cache count on the containing TreeScope rather than the Document
1902         https://bugs.webkit.org/show_bug.cgi?id=59983
1903
1904         Change code to call add/removeNodeListCache() and hasNodeListCaches() on the proper tree scope.
1905         Move updating of the node list cache count from setDocument() to setTreeScopeRecursively().
1906         Make setDocument() and setDocumentRecursively() private.
1907
1908         No new tests. (refactoring)
1909
1910         * dom/ContainerNode.cpp:
1911         (WebCore::ContainerNode::childrenChanged):
1912         * dom/Node.cpp:
1913         (WebCore::Node::~Node):
1914         (WebCore::Node::setDocument):
1915         (WebCore::Node::setTreeScopeRecursively):
1916         (WebCore::Node::childNodes):
1917         (WebCore::Node::registerDynamicNodeList):
1918         (WebCore::Node::unregisterDynamicNodeList):
1919         (WebCore::Node::notifyLocalNodeListsAttributeChanged):
1920         (WebCore::Node::notifyLocalNodeListsChildrenChanged):
1921         (WebCore::Node::getElementsByTagName):
1922         (WebCore::Node::getElementsByTagNameNS):
1923         (WebCore::Node::getElementsByName):
1924         (WebCore::Node::getElementsByClassName):
1925         * dom/Node.h:
1926         * html/HTMLFormControlElement.cpp:
1927         (WebCore::HTMLFormControlElement::labels):
1928
1929 2011-05-03  Ryosuke Niwa  <rniwa@webkit.org>
1930
1931         Reviewed by Eric Seidel.
1932
1933         Bundle trailingSpaceObject and trailingPositionedBoxes in findNextLineBreak as a class
1934         https://bugs.webkit.org/show_bug.cgi?id=60046
1935
1936         Extracted TrailingObjects that encapsulates trailingSpaceObject and trailingPositionedBoxes.
1937
1938         * rendering/RenderBlockLineLayout.cpp:
1939         (WebCore::TrailingObjects::TrailingObjects):
1940         (WebCore::TrailingObjects::setTrailingWhitespace):
1941         (WebCore::TrailingObjects::clear):
1942         (WebCore::TrailingObjects::appendBoxIfNeeded):
1943         (WebCore::TrailingObjects::addMidpoints):
1944         (WebCore::RenderBlock::findNextLineBreak):
1945
1946 2011-05-03  Igor Oliveira  <igor.oliveira@openbossa.org>
1947
1948         Reviewed by Eric Seidel.
1949
1950         [Qt] Implement initial support to DataTransferItems
1951         https://bugs.webkit.org/show_bug.cgi?id=58448
1952
1953         Implement initial support to DataTransferItems. DataTransferItems are used to 
1954         hold data for drag and drop operations. DataTransferItems hold a list of 
1955         DataTransferItem objects each of which holds an item being dragged.
1956
1957         * WebCore.pro:
1958         * dom/DataTransferItems.idl:
1959         * editing/qt/EditorQt.cpp:
1960         (WebCore::Editor::newGeneralClipboard):
1961         * page/qt/EventHandlerQt.cpp:
1962         (WebCore::EventHandler::createDraggingClipboard):
1963         * platform/chromium/DataTransferItemsChromium.h:
1964         * platform/qt/ClipboardQt.cpp:
1965         (WebCore::Clipboard::create):
1966         (WebCore::ClipboardQt::ClipboardQt):
1967         (WebCore::ClipboardQt::items):
1968         * platform/qt/ClipboardQt.h:
1969         (WebCore::ClipboardQt::create):
1970         * platform/qt/DataTransferItemQt.cpp: Added.
1971         (WebCore::DataTransferItem::create):
1972         (WebCore::DataTransferItemQt::createFromPasteboard):
1973         (WebCore::DataTransferItemQt::create):
1974         (WebCore::DataTransferItemQt::DataTransferItemQt):
1975         (WebCore::DataTransferItemQt::getAsString):
1976         (WebCore::DataTransferItemQt::getAsFile):
1977         * platform/qt/DataTransferItemQt.h: Added.
1978         * platform/qt/DataTransferItemsQt.cpp: Copied from Source/WebCore/editing/qt/EditorQt.cpp.
1979         (WebCore::DataTransferItemsQt::create):
1980         (WebCore::DataTransferItemsQt::DataTransferItemsQt):
1981         (WebCore::DataTransferItemsQt::addPasteboardItem):
1982         * platform/qt/DataTransferItemsQt.h: Copied from Source/WebCore/editing/qt/EditorQt.cpp.
1983
1984 2011-05-03  Julien Chaffraix  <jchaffraix@codeaurora.org>
1985
1986         Reviewed by Dimitri Glazkov.
1987
1988         Element:shadowRoot & Element::ensureShadowRoot should return ShadowRoot*
1989         https://bugs.webkit.org/show_bug.cgi?id=58703
1990
1991         No new tests, refactoring only.
1992
1993         * dom/Element.cpp:
1994         (WebCore::Element::copyNonAttributeProperties):
1995         (WebCore::Element::insertedIntoDocument):
1996         (WebCore::Element::removedFromDocument):
1997         (WebCore::Element::insertedIntoTree):
1998         (WebCore::Element::removedFromTree):
1999         (WebCore::Element::attach):
2000         (WebCore::Element::detach):
2001         (WebCore::Element::recalcStyle):
2002         (WebCore::Element::shadowRoot):
2003         (WebCore::Element::ensureShadowRoot):
2004         (WebCore::Element::childrenChanged):
2005         * dom/Node.cpp:
2006         (WebCore::Node::setTreeScopeRecursively):
2007         (WebCore::shadowRoot):
2008         (WebCore::Node::setDocumentRecursively):
2009         (WebCore::NodeRendererFactory::findVisualParent):
2010         Updated all the call sites for shadowRoot and ensureShadowRoot in the 2
2011         previous classes.
2012
2013         * dom/Element.h: Updated 2 methods' signature to return a ShadowRoot*.
2014
2015         * dom/ShadowRoot.h: Removed toShadowRoot as it is not used anymore.
2016
2017         * html/HTMLDetailsElement.cpp:
2018         * html/HTMLSummaryElement.cpp:
2019         Added #include for ShadowRoot.h.
2020
2021 2011-05-03  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
2022
2023         Reviewed by Kenneth Rohde Christiansen.
2024
2025         [EFL] Implement mediaSliderTrack
2026         https://bugs.webkit.org/show_bug.cgi?id=59998
2027
2028         Implement paintMediaSliderTrack.
2029
2030         * platform/efl/RenderThemeEfl.cpp:
2031         (WebCore::RenderThemeEfl::RenderThemeEfl):
2032         (WebCore::RenderThemeEfl::paintMediaSliderTrack):
2033         * platform/efl/RenderThemeEfl.h:
2034
2035 2011-05-03  Mikhail Naganov  <mnaganov@chromium.org>
2036
2037         Reviewed by Pavel Feldman.
2038
2039         WebInspector: [Chromium] Fix slowness of Summary view nodes expansion in detailed heap profiles.
2040         https://bugs.webkit.org/show_bug.cgi?id=60023
2041
2042         * inspector/front-end/DetailedHeapshotGridNodes.js:
2043         (WebInspector.HeapSnapshotConstructorNode):
2044         (WebInspector.HeapSnapshotConstructorNode.prototype._createNodesProvider):
2045         * inspector/front-end/HeapSnapshot.js:
2046         (WebInspector.HeapSnapshot.prototype.dispose):
2047         (WebInspector.HeapSnapshot.prototype.aggregates):
2048         (WebInspector.HeapSnapshot.prototype._buildAggregates):
2049         (WebInspector.HeapSnapshot.prototype._sortAggregateIndexes):
2050         (WebInspector.HeapSnapshot.prototype.createNodesProviderForClass):
2051         (WebInspector.HeapSnapshotFilteredOrderedIterator):
2052         (WebInspector.HeapSnapshotNodesProvider):
2053         * inspector/front-end/HeapSnapshotProxy.js:
2054         (WebInspector.HeapSnapshotProxy.prototype.aggregates):
2055         (WebInspector.HeapSnapshotProxy.prototype.createNodesProviderForClass):
2056
2057 2011-05-03  Mikhail Naganov  <mnaganov@chromium.org>
2058
2059         Reviewed by Pavel Feldman.
2060
2061         WebInspector: [Chromium] Hint user that to display retaining paths, an object entry must be clicked.
2062         https://bugs.webkit.org/show_bug.cgi?id=60029
2063
2064         * English.lproj/localizedStrings.js:
2065         * inspector/front-end/DetailedHeapshotView.js:
2066         (WebInspector.HeapSnapshotRetainingPathsList.prototype.reset):
2067         (WebInspector.DetailedHeapshotView.prototype._mouseClickInContainmentGrid):
2068
2069 2011-05-03  Beth Dakin  <bdakin@apple.com>
2070
2071         Reviewed by Dan Bernstein.
2072
2073         https://bugs.webkit.org/show_bug.cgi?id=60045
2074         Scrollbar thumb sometimes leaves artifacts in the track after scrolling
2075         -and corresponding-
2076         <rdar://problem/9015376>
2077
2078         When we're using WK_SCROLLBAR_PAINTER, the AppleScrollBarVariant default should 
2079         always be ignored.
2080         * platform/mac/ScrollbarThemeMac.mm:
2081         (WebCore::updateArrowPlacement):
2082
2083 2011-05-03  David Hyatt  <hyatt@apple.com>
2084
2085         Reviewed by Dan Bernstein.
2086
2087         https://bugs.webkit.org/show_bug.cgi?id=60040
2088         <rdar://problem/9261591>
2089
2090         Links broken at iplanwebsites.com. Make sure that culledInlineAbsoluteQuads still does
2091         a translation of a 0,0 point to absolute coordinates so that the top left position is
2092         accurate.
2093
2094         Added fast/inline/skipped-whitespace-client-rect.html
2095         
2096         * rendering/RenderInline.cpp:
2097         (WebCore::RenderInline::culledInlineAbsoluteQuads):
2098
2099 2011-05-03  Sam Weinig  <sam@webkit.org>
2100
2101         Fix chromium build.
2102
2103         * page/Settings.cpp:
2104
2105 2011-05-02  Roland Steiner  <rolandsteiner@chromium.org>
2106
2107         Reviewed by Dimitri Glazkov.
2108
2109         Bug 59974 - Update image map on the containing TreeScope rather than the Document
2110         https://bugs.webkit.org/show_bug.cgi?id=59974
2111
2112         No new tests. (reefactoring)
2113
2114         * html/HTMLMapElement.cpp:
2115         (WebCore::HTMLMapElement::parseMappedAttribute):
2116         (WebCore::HTMLMapElement::insertedIntoDocument):
2117         (WebCore::HTMLMapElement::removedFromDocument):
2118         * rendering/RenderImage.cpp:
2119         (WebCore::RenderImage::imageMap):
2120
2121 2011-05-03  Sam Weinig  <sam@webkit.org>
2122
2123         Fix chromium build.
2124
2125         * loader/HistoryController.cpp:
2126
2127 2011-05-02  Roland Steiner  <rolandsteiner@chromium.org>
2128
2129         Reviewed by Dimitri Glazkov.
2130
2131         Bug 59966 - Update ID hash on the containing TreeScope rather than the Document
2132         https://bugs.webkit.org/show_bug.cgi?id=59966
2133
2134         No new tests. (refactoring)
2135
2136         * accessibility/AccessibilityRenderObject.cpp:
2137         (WebCore::AccessibilityRenderObject::elementsFromAttribute):
2138         (WebCore::AccessibilityRenderObject::activeDescendant):
2139         * accessibility/AccessibilityRenderObject.h:
2140         (WebCore::AccessibilityRenderObject::isAccessibilityRenderObject):
2141         * css/CSSCursorImageValue.cpp:
2142         (WebCore::resourceReferencedByCursorElement):
2143         (WebCore::CSSCursorImageValue::~CSSCursorImageValue):
2144         (WebCore::CSSCursorImageValue::updateIfSVGCursorIsUsed):
2145         (WebCore::CSSCursorImageValue::cachedImage):
2146         * dom/DynamicNodeList.cpp:
2147         (WebCore::DynamicNodeList::itemWithName):
2148         * dom/Element.h:
2149         (WebCore::Element::updateId):
2150         * dom/Node.cpp:
2151         (WebCore::Node::querySelector):
2152         * html/FormAssociatedElement.cpp:
2153         (WebCore::FormAssociatedElement::insertedIntoTree):
2154         (WebCore::FormAssociatedElement::resetFormOwner):
2155         * html/HTMLInputElement.cpp:
2156         (WebCore::HTMLInputElement::dataList):
2157         * html/HTMLLabelElement.cpp:
2158         (WebCore::HTMLLabelElement::control):
2159         * rendering/svg/RenderSVGTextPath.cpp:
2160         (WebCore::RenderSVGTextPath::layoutPath):
2161         * svg/SVGAElement.cpp:
2162         (WebCore::SVGAElement::defaultEventHandler):
2163         * svg/SVGAltGlyphElement.cpp:
2164         (WebCore::SVGAltGlyphElement::glyphElement):
2165         * svg/SVGFEImageElement.cpp:
2166         (WebCore::SVGFEImageElement::requestImageResource):
2167         (WebCore::SVGFEImageElement::build):
2168         * svg/SVGLinearGradientElement.cpp:
2169         (WebCore::SVGLinearGradientElement::collectGradientAttributes):
2170         * svg/SVGMPathElement.cpp:
2171         (WebCore::SVGMPathElement::pathElement):
2172         * svg/SVGPatternElement.cpp:
2173         (WebCore::SVGPatternElement::collectPatternAttributes):
2174         * svg/SVGRadialGradientElement.cpp:
2175         (WebCore::SVGRadialGradientElement::collectGradientAttributes):
2176         * svg/SVGSVGElement.cpp:
2177         (WebCore::SVGSVGElement::getElementById):
2178         * svg/SVGTRefElement.cpp:
2179         (WebCore::SVGTRefElement::updateReferencedText):
2180         * svg/SVGTextPathElement.cpp:
2181         (WebCore::SVGTextPathElement::insertedIntoDocument):
2182         * svg/SVGUseElement.cpp:
2183         (WebCore::SVGUseElement::buildPendingResource):
2184         (WebCore::SVGUseElement::hasCycleUseReferencing):
2185         (WebCore::SVGUseElement::expandUseElementsInShadowTree):
2186         * svg/SVGViewSpec.cpp:
2187         (WebCore::SVGViewSpec::viewTarget):
2188         * svg/animation/SVGSMILElement.cpp:
2189         (WebCore::SVGSMILElement::eventBaseFor):
2190         (WebCore::SVGSMILElement::connectConditions):
2191         (WebCore::SVGSMILElement::targetElement):
2192         * xml/XPathFunctions.cpp:
2193         (WebCore::XPath::FunId::evaluate):
2194
2195 2011-05-03  Sam Weinig  <sam@webkit.org>
2196
2197         Fix chromium build.
2198
2199         * css/StyleMedia.cpp:
2200
2201 2011-05-03  Sam Weinig  <sam@webkit.org>
2202
2203         Reviewed by Anders Carlsson.
2204
2205         Prune #includes from FrameView.h (Part 1)
2206         https://bugs.webkit.org/show_bug.cgi?id=59957
2207
2208         * page/FrameView.h:
2209         Prune #includes.
2210
2211         * accessibility/chromium/AXObjectCacheChromium.cpp:
2212         * page/win/FrameCGWin.cpp:
2213         * platform/Scrollbar.cpp:
2214         Add not necessary #includes.
2215
2216         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationObjC.h:
2217         Add now necessary forward declaration.
2218
2219 2011-05-03  Andrey Kosyakov  <caseq@chromium.org>
2220
2221         Reviewed by Dimitri Glazkov.
2222
2223         [Chromium] toV8(Node*) will enter infinite recursion when called with a node of type SHADOW_ROOT_NODE
2224         https://bugs.webkit.org/show_bug.cgi?id=60026
2225
2226         Return a wrapper for Node in toV8(Node*) when called with a node of type
2227         SHADOW_ROOT_NODE instead of entering infinite recursion.
2228
2229         * bindings/v8/custom/V8NodeCustom.cpp:
2230         (WebCore::toV8Slow):
2231
2232 2011-05-02  Adam Roben  <aroben@apple.com>
2233
2234         Take advantage of implicit conversion from nullptr_t to PassOwnPtr
2235
2236         Fixes <http://webkit.org/b/59964> Implicit conversion from std::nullptr_t to PassOwnPtr
2237         doesn't work, but should
2238
2239         Reviewed by Adam Barth.
2240
2241         * bindings/js/ScheduledAction.cpp:
2242         * css/CSSStyleSelector.cpp:
2243         * css/MediaList.cpp:
2244         * css/MediaQueryMatcher.cpp:
2245         * css/SVGCSSStyleSelector.cpp:
2246         * dom/MessagePort.cpp:
2247         * html/InputType.cpp:
2248         * html/canvas/WebGLRenderingContext.cpp:
2249         * inspector/InspectorStyleSheet.cpp:
2250         * page/ContextMenuController.cpp:
2251         * page/Page.cpp:
2252         * platform/PlatformGestureRecognizer.cpp:
2253         * platform/PurgeableBuffer.h:
2254         * platform/graphics/ImageBuffer.h:
2255         * platform/leveldb/LevelDBDatabase.cpp:
2256         * platform/mac/PurgeableBufferMac.cpp:
2257         * platform/text/RegularExpression.cpp:
2258         * rendering/RenderTheme.cpp:
2259         * rendering/RenderThemeMac.mm:
2260         * rendering/style/RenderStyle.h:
2261         * rendering/style/SVGRenderStyleDefs.cpp:
2262         * rendering/style/ShadowData.cpp:
2263         * rendering/style/StyleRareInheritedData.cpp:
2264         * rendering/style/StyleRareNonInheritedData.cpp:
2265         * rendering/svg/RenderSVGResourcePattern.cpp:
2266
2267 2011-05-03  Pavel Feldman  <pfeldman@google.com>
2268
2269         Not reviewed: fix inspector status bar image glyph reference in network panel.
2270
2271         * inspector/front-end/networkPanel.css:
2272         (.network-larger-resources-status-bar-item .glyph):
2273
2274 2011-05-03  Pavel Feldman  <pfeldman@google.com>
2275
2276         Reviewed by Yury Semikhatsky.
2277
2278         Web Inspector: rename BrowserDebugger agent to DOMDebugger.
2279         https://bugs.webkit.org/show_bug.cgi?id=60019
2280
2281         * inspector/CodeGeneratorInspector.pm:
2282         * inspector/Inspector.json:
2283         * inspector/InspectorController.cpp:
2284         (WebCore::InspectorController::connectFrontend):
2285         * inspector/front-end/BreakpointsSidebarPane.js:
2286         (WebInspector.XHRBreakpointsSidebarPane.prototype._setBreakpoint):
2287         (WebInspector.XHRBreakpointsSidebarPane.prototype._removeBreakpoint):
2288         (WebInspector.XHRBreakpointsSidebarPane.prototype._checkboxClicked):
2289         (WebInspector.EventListenerBreakpointsSidebarPane.prototype._setBreakpoint):
2290         (WebInspector.EventListenerBreakpointsSidebarPane.prototype._removeBreakpoint):
2291         * inspector/generate-inspector-idl:
2292
2293 2011-05-03  Yury Semikhatsky  <yurys@chromium.org>
2294
2295         Reviewed by Pavel Feldman.
2296
2297         Web Inspector: remove special logic for type of document.__proto__
2298         https://bugs.webkit.org/show_bug.cgi?id=60014
2299
2300         Test: inspector/console/console-log-document-proto.html
2301
2302         * inspector/InjectedScriptSource.js: removed unnecessary check nodeType === undefined
2303
2304 2011-05-03  Pavel Feldman  <pfeldman@google.com>
2305
2306         Not reviewed: fixed typo in inspector style.
2307
2308         * inspector/front-end/inspector.css:
2309         (.status-bar-item > .glyph):
2310
2311 2011-05-03  Pavel Feldman  <pfeldman@chromium.org>
2312
2313         Reviewed by Yury Semikhatsky.
2314
2315         Web Inspector: revision history storage is too slow.
2316         https://bugs.webkit.org/show_bug.cgi?id=59939
2317
2318         It turns out that iterating localStorage keys is very
2319         expensive (results in slow inspector start), refactor revision
2320         history in order not to rely upon that operation.
2321
2322         * inspector/front-end/Resource.js:
2323         (WebInspector.Resource):
2324         (WebInspector.Resource._resourceRevisionRegistry):
2325         (WebInspector.Resource.restoreRevisions.persist):
2326         (WebInspector.Resource.restoreRevisions):
2327         (WebInspector.Resource.persistRevision):
2328         (WebInspector.Resource.prototype._persistRevision):
2329         * inspector/front-end/ResourceTreeModel.js:
2330         (WebInspector.ResourceTreeModel.prototype._processCachedResources):
2331         (WebInspector.ResourceTreeModel.prototype._frameNavigated):
2332
2333 2011-05-03  Pavel Feldman  <pfeldman@chromium.org>
2334
2335         Reviewed by Yury Semikhatsky.
2336
2337         Web Inspector: combine toolbar icon images.
2338         https://bugs.webkit.org/show_bug.cgi?id=59931
2339
2340         * WebCore.gypi:
2341         * inspector/front-end/Images/auditsIcon.png: Removed.
2342         * inspector/front-end/Images/consoleIcon.png: Removed.
2343         * inspector/front-end/Images/elementsIcon.png: Removed.
2344         * inspector/front-end/Images/networkIcon.png: Removed.
2345         * inspector/front-end/Images/profilesIcon.png: Removed.
2346         * inspector/front-end/Images/resourcesIcon.png: Removed.
2347         * inspector/front-end/Images/scriptsIcon.png: Removed.
2348         * inspector/front-end/Images/timelineIcon.png: Removed.
2349         * inspector/front-end/Images/toolbarIcons.png: Added.
2350         * inspector/front-end/Images/toolbarIconsSmall.png: Added.
2351         * inspector/front-end/WebKit.qrc:
2352         * inspector/front-end/inspector.css:
2353         (.toolbar-icon):
2354         (#toolbar-dropdown .toolbar-icon):
2355         (.toolbar-item:active .toolbar-icon):
2356         (#toolbar-dropdown .toolbar-item:active .toolbar-icon):
2357         (.toolbar-item.elements .toolbar-icon):
2358         (.toolbar-item.resources .toolbar-icon):
2359         (#toolbar-dropdown .toolbar-item.resources .toolbar-icon):
2360         (.toolbar-item.network .toolbar-icon):
2361         (#toolbar-dropdown .toolbar-item.network .toolbar-icon):
2362         (.toolbar-item.scripts .toolbar-icon):
2363         (#toolbar-dropdown .toolbar-item.scripts .toolbar-icon):
2364         (.toolbar-item.timeline .toolbar-icon):
2365         (#toolbar-dropdown .toolbar-item.timeline .toolbar-icon):
2366         (.toolbar-item.profiles .toolbar-icon):
2367         (#toolbar-dropdown .toolbar-item.profiles .toolbar-icon):
2368         (.toolbar-item.audits .toolbar-icon):
2369         (#toolbar-dropdown .toolbar-item.audits .toolbar-icon):
2370         (.toolbar-item.console .toolbar-icon):
2371         (#toolbar-dropdown .toolbar-item.console .toolbar-icon):
2372         (.status-bar-item > .glyph):
2373
2374 2011-05-03  Pavel Feldman  <pfeldman@chromium.org>
2375
2376         Reviewed by Yury Semikhatsky.
2377
2378         Web Inspector: combine status bar button glyphs.
2379         https://bugs.webkit.org/show_bug.cgi?id=59885
2380
2381         * WebCore.gypi:
2382         * inspector/front-end/Images/breakpointsActivateButtonGlyph.png: Removed.
2383         * inspector/front-end/Images/breakpointsDeactivateButtonGlyph.png: Removed.
2384         * inspector/front-end/Images/clearConsoleButtonGlyph.png: Removed.
2385         * inspector/front-end/Images/consoleButtonGlyph.png: Removed.
2386         * inspector/front-end/Images/dockButtonGlyph.png: Removed.
2387         * inspector/front-end/Images/enableOutlineButtonGlyph.png: Removed.
2388         * inspector/front-end/Images/enableSolidButtonGlyph.png: Removed.
2389         * inspector/front-end/Images/excludeButtonGlyph.png: Removed.
2390         * inspector/front-end/Images/focusButtonGlyph.png: Removed.
2391         * inspector/front-end/Images/garbageCollectButtonGlyph.png: Removed.
2392         * inspector/front-end/Images/gearButtonGlyph.png: Removed.
2393         * inspector/front-end/Images/helpButtonGlyph.png: Removed.
2394         * inspector/front-end/Images/largerResourcesButtonGlyph.png: Removed.
2395         * inspector/front-end/Images/nodeSearchButtonGlyph.png: Removed.
2396         * inspector/front-end/Images/pauseOnExceptionButtonGlyph.png: Removed.
2397         * inspector/front-end/Images/percentButtonGlyph.png: Removed.
2398         * inspector/front-end/Images/prettyPrintButtonGlyph.png: Removed.
2399         * inspector/front-end/Images/recordButtonGlyph.png: Removed.
2400         * inspector/front-end/Images/recordToggledButtonGlyph.png: Removed.
2401         * inspector/front-end/Images/reloadButtonGlyph.png: Removed.
2402         * inspector/front-end/Images/statusBarButtonGlyphs.png: Added.
2403         * inspector/front-end/Images/undockButtonGlyph.png: Removed.
2404         * inspector/front-end/WebKit.qrc:
2405         * inspector/front-end/inspector.css:
2406         (.status-bar-item > .glyph):
2407         (#dock-status-bar-item .glyph):
2408         (body.detached #dock-status-bar-item .glyph):
2409         (#console-status-bar-item .glyph):
2410         (.clear-status-bar-item .glyph):
2411         (button.enable-toggle-status-bar-item .glyph):
2412         (button.enable-toggle-status-bar-item.toggled-on .glyph):
2413         (.scripts-pause-on-exceptions-status-bar-item .glyph):
2414         (.scripts-toggle-pretty-print-status-bar-item .glyph):
2415         (.toggle-breakpoints .glyph):
2416         (.toggle-breakpoints.toggled-on .glyph):
2417         (.resources-larger-resources-status-bar-item .glyph):
2418         (.timeline-filter-status-bar-item .glyph):
2419         (.garbage-collect-status-bar-item .glyph):
2420         (.record-profile-status-bar-item .glyph):
2421         (.record-profile-status-bar-item.toggled-on .glyph):
2422         (.heap-snapshot-status-bar-item .glyph):
2423         (.node-search-status-bar-item .glyph):
2424         (.percent-time-status-bar-item .glyph):
2425         (.focus-profile-node-status-bar-item .glyph):
2426         (.exclude-profile-node-status-bar-item .glyph):
2427         (.reset-profile-status-bar-item .glyph):
2428         (.delete-storage-status-bar-item .glyph):
2429         (.refresh-storage-status-bar-item .glyph):
2430         * inspector/front-end/inspector.js:
2431
2432 2011-05-02  Simon Fraser  <simon.fraser@apple.com>
2433
2434         Reviewed by Dan Bernstein.
2435
2436         Possible crash when removing elements with reflections
2437         https://bugs.webkit.org/show_bug.cgi?id=60009
2438         
2439         RenderLayer's destructor deleted its z-order list Vector pointers
2440         before removing the reflection layer. However, the reflection cleanup
2441         code could call back into the RenderLayer to dirty z-order lists,
2442         so move reflection cleanup to before z-order vector deletion.
2443         
2444         The test crashes when run manually a few times with MallocScribble enabled,
2445         but I was not able to create a test that crashed reliably.
2446
2447         Test: fast/reflections/remove-reflection-crash.html
2448
2449         * rendering/RenderLayer.cpp:
2450         (WebCore::RenderLayer::~RenderLayer):
2451
2452 2011-05-02  Ian Henderson  <ianh@apple.com>
2453
2454         Reviewed by Dan Bernstein.
2455
2456         CSS !important not respected by JavaScript
2457         https://bugs.webkit.org/show_bug.cgi?id=60007
2458
2459         The addParsedProperty and addParsedProperties methods were subtly
2460         different.  The former did not check for !important before setting the
2461         given property.
2462
2463         Change addParsedProperties to call addParsedProperty and move the
2464         relevant code.  The one other caller of this method, in
2465         editing/markup.cpp, probably wanted this behavior anyway.
2466
2467         Test: fast/css/important-js-override.html
2468
2469         * css/CSSMutableStyleDeclaration.cpp:
2470         (WebCore::CSSMutableStyleDeclaration::addParsedProperties):
2471         (WebCore::CSSMutableStyleDeclaration::addParsedProperty):
2472
2473 2011-05-02  Ben Wells  <benwells@chromium.org>
2474
2475         Reviewed by Simon Fraser.
2476
2477         Cleanup variable usage in RenderObject.cpp paintOutline()
2478         https://bugs.webkit.org/show_bug.cgi?id=59911
2479
2480         No new tests for this, there should be no change in behaviour.
2481
2482         * rendering/RenderObject.cpp:
2483         (WebCore::RenderObject::paintOutline):
2484
2485 2011-05-02  Ryosuke Niwa  <rniwa@webkit.org>
2486
2487         Reviewed by James Robinson.
2488
2489         REGRESSION(r84672): showTree doesn't work for input/textarea elements
2490         https://bugs.webkit.org/show_bug.cgi?id=60001
2491
2492         When shadow is null, try retrieving the inner element of a render text control.
2493
2494         * dom/Node.cpp:
2495         (WebCore::traverseTreeAndMark):
2496
2497 2011-05-02  Joseph Pecoraro  <joepeck@webkit.org>
2498
2499         Reviewed by David Kilzer.
2500
2501         Respect fixed text-indent on ::-webkit-input-placeholder
2502         https://bugs.webkit.org/show_bug.cgi?id=59825
2503
2504         Test: fast/forms/input-placeholder-text-indent.html
2505
2506         * rendering/RenderTextControl.cpp:
2507         (WebCore::RenderTextControl::paintPlaceholder): indent by
2508         a fixed text-indent size specified on the placeholder style.
2509
2510 2011-05-02  Eric Uhrhane  <ericu@chromium.org>
2511
2512         Reviewed by Eric Seidel.
2513
2514         Some FileWriter progress events should be queued
2515         https://bugs.webkit.org/show_bug.cgi?id=50846
2516
2517         * fileapi/FileWriter.cpp:
2518         * fileapi/FileWriter.h:
2519         Create a new asynchronous Task [FileWriterCompletionEventTask] that will set readyState to DONE and fire off the right events.
2520
2521 2011-05-02  Jia Pu  <jpu@apple.com>
2522
2523         Reviewed by Alexey Proskuryakov.
2524
2525         [Mac] Need to truncate the string sent to "Look Up … " menu item, if it's too long.
2526         https://bugs.webkit.org/show_bug.cgi?id=59836
2527         <rdar://problem/9275983>
2528
2529         * platform/DefaultLocalizationStrategy.cpp:
2530         (WebCore::truncatedStringForLookupMenuItem):
2531         (WebCore::DefaultLocalizationStrategy::contextMenuItemTagLookUpInDictionary):
2532
2533 2011-05-02  Brady Eidson  <beidson@apple.com>
2534
2535         Reviewed by Anders Carlsson.
2536
2537         <rdar://problem/9340945> and https://bugs.webkit.org/show_bug.cgi?id=59973
2538         In Aperture, a WebView might be dealloc'ed before it finishes loading.
2539
2540         * WebCore.exp.in:
2541         * platform/RuntimeApplicationChecks.cpp:
2542         (WebCore::applicationIsAperture): Perform a com.apple.Aperture bundle check.
2543         * platform/RuntimeApplicationChecks.h:
2544
2545 2011-05-02  Simon Fraser  <simon.fraser@apple.com>
2546
2547         Reviewed by Dan Bernstein.
2548
2549         Avoid wasted cycles updating paths when popping the context stack
2550         https://bugs.webkit.org/show_bug.cgi?id=59967
2551
2552         CanvasRenderingContext2D has to map the current path through
2553         transforms whenever the context stack is popped, which creates
2554         a lot of platform path objects. Avoid extra work here when the
2555         path is empty, or when the transform is identity.
2556
2557         * platform/graphics/cg/PathCG.cpp:
2558         (WebCore::Path::transform):
2559
2560 2011-05-02  Enrica Casucci  <enrica@apple.com>
2561
2562         Reviewed by Dan Bernstein.
2563
2564         Text does not split on white space when typing to the edge of window.
2565         https://bugs.webkit.org/show_bug.cgi?id=59968
2566         <rdar://problem/9112683>
2567
2568         Test: editing/inserting/typing-at-end-of-line.html
2569
2570         This is a regression introduced when we converted the line box tree to
2571         floating point in r78846. In findNextLineBreak, there was still one place where
2572         the character width was treated as int and truncated and we were inconsistent
2573         in the way we treated a character that did not fit entirely in the line.
2574
2575         * rendering/RenderBlockLineLayout.cpp:
2576         (WebCore::RenderBlock::findNextLineBreak):
2577
2578 2011-04-19  Adrienne Walker  <enne@google.com>
2579
2580         Reviewed by James Robinson.
2581
2582         [chromium] Don't unnecessarily resize skia/cg canvases when painting in compositor
2583         https://bugs.webkit.org/show_bug.cgi?id=58907
2584
2585         Additionally, move the context save/restore logic to a place where it
2586         will reset the translation added in LayerTilerChromium.
2587
2588         Test: compositing/repaint/same-size-invalidation.html
2589
2590         * platform/graphics/chromium/ContentLayerChromium.cpp:
2591         (WebCore::ContentLayerPainter::paint):
2592         * platform/graphics/chromium/PlatformCanvas.cpp:
2593         (WebCore::PlatformCanvas::resize):
2594         (WebCore::PlatformCanvas::Painter::Painter):
2595         (WebCore::PlatformCanvas::Painter::~Painter):
2596         * platform/graphics/chromium/PlatformCanvas.h:
2597
2598 2011-05-02  Csaba Osztrogonác  <ossy@webkit.org>
2599
2600         Enable strict OwnPtr for Qt
2601         https://bugs.webkit.org/show_bug.cgi?id=59667
2602
2603         Unreviewed buildfix after r85343.
2604
2605         * platform/graphics/qt/GraphicsContext3DQt.cpp:
2606         (WebCore::GraphicsContext3D::GraphicsContext3D):
2607
2608 2011-05-02  Sheriff Bot  <webkit.review.bot@gmail.com>
2609
2610         Unreviewed, rolling out r85483.
2611         http://trac.webkit.org/changeset/85483
2612         https://bugs.webkit.org/show_bug.cgi?id=59958
2613
2614         Causes media test failures. (Requested by eric_carlson on
2615         #webkit).
2616
2617         * html/HTMLMediaElement.cpp:
2618         (WebCore::HTMLMediaElement::HTMLMediaElement):
2619         (WebCore::HTMLMediaElement::prepareForLoad):
2620         (WebCore::HTMLMediaElement::seek):
2621         (WebCore::HTMLMediaElement::updatePlayState):
2622         * html/HTMLMediaElement.h:
2623         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
2624         (WebCore::MediaPlayerPrivateAVFoundation::MediaPlayerPrivateAVFoundation):
2625         (WebCore::MediaPlayerPrivateAVFoundation::resumeLoad):
2626         (WebCore::MediaPlayerPrivateAVFoundation::load):
2627         (WebCore::MediaPlayerPrivateAVFoundation::prepareToPlay):
2628         (WebCore::MediaPlayerPrivateAVFoundation::paint):
2629         (WebCore::MediaPlayerPrivateAVFoundation::duration):
2630         (WebCore::MediaPlayerPrivateAVFoundation::seeking):
2631         (WebCore::MediaPlayerPrivateAVFoundation::updateStates):
2632         (WebCore::MediaPlayerPrivateAVFoundation::hasAvailableVideoFrame):
2633         (WebCore::MediaPlayerPrivateAVFoundation::metadataLoaded):
2634         (WebCore::MediaPlayerPrivateAVFoundation::loadedTimeRangesChanged):
2635         (WebCore::MediaPlayerPrivateAVFoundation::timeChanged):
2636         (WebCore::MediaPlayerPrivateAVFoundation::seekCompleted):
2637         (WebCore::MediaPlayerPrivateAVFoundation::repaint):
2638         (WebCore::MediaPlayerPrivateAVFoundation::setPreload):
2639         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:
2640         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationObjC.h:
2641         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationObjC.mm:
2642         (WebCore::MediaPlayerPrivateAVFoundationObjC::MediaPlayerPrivateAVFoundationObjC):
2643         (WebCore::MediaPlayerPrivateAVFoundationObjC::videoLayerIsReadyToDisplay):
2644         (WebCore::MediaPlayerPrivateAVFoundationObjC::createAVPlayerForURL):
2645         (WebCore::MediaPlayerPrivateAVFoundationObjC::createAVPlayerForCacheResource):
2646         (WebCore::MediaPlayerPrivateAVFoundationObjC::createAVPlayer):
2647         (WebCore::MediaPlayerPrivateAVFoundationObjC::beginLoadingMetadata):
2648         (WebCore::MediaPlayerPrivateAVFoundationObjC::playerItemStatus):
2649         (WebCore::MediaPlayerPrivateAVFoundationObjC::platformDuration):
2650         (WebCore::MediaPlayerPrivateAVFoundationObjC::assetStatus):
2651         (WebCore::MediaPlayerPrivateAVFoundationObjC::paint):
2652         (WebCore::MediaPlayerPrivateAVFoundationObjC::tracksChanged):
2653         (WebCore::MediaPlayerPrivateAVFoundationObjC::sizeChanged):
2654
2655 2011-05-02  Adam Barth  <abarth@webkit.org>
2656
2657         Reviewed by David Levin.
2658
2659         PLATFORM(MAC) should (almost!) build with strict PassOwnPtr
2660         https://bugs.webkit.org/show_bug.cgi?id=59924
2661
2662         * css/CSSGrammar.y:
2663         * platform/graphics/mac/SimpleFontDataMac.mm:
2664             - Memory management for the font cache is somewhat... complext.
2665               This will require some careful thought to sort out.
2666
2667 2011-05-02  Levi Weintraub  <leviw@chromium.org>
2668
2669         Reviewed by Eric Seidel.
2670
2671         showLineTree/showLineTreeForThis would make working with the line box tree easier
2672         https://bugs.webkit.org/show_bug.cgi?id=59662
2673
2674         Adding a showLineTree/showLineTreeForThis method to help visualize and debug
2675         the line tree. Also adding a missing showRenderTreeForThis method to RenderObject.
2676
2677         No new tests since this is a debugging feature only and not compiled in release.
2678
2679         * rendering/InlineBox.cpp:
2680         (WebCore::InlineBox::showLineTreeForThis):
2681         (WebCore::InlineBox::showLineTreeAndMark):
2682         (WebCore::InlineBox::showBox):
2683         (showLineTree):
2684         * rendering/InlineBox.h:
2685         * rendering/InlineFlowBox.cpp:
2686         (WebCore::InlineFlowBox::showLineTreeAndMark):
2687         * rendering/InlineFlowBox.h:
2688         * rendering/InlineTextBox.cpp:
2689         (WebCore::InlineTextBox::showBox):
2690         * rendering/InlineTextBox.h:
2691         * rendering/RenderBlock.cpp:
2692         (WebCore::RenderBlock::showLineTreeAndMark):
2693         * rendering/RenderBlock.h:
2694         * rendering/RenderObject.cpp:
2695         (WebCore::RenderObject::showRenderTreeForThis):
2696         (WebCore::RenderObject::showLineTreeForThis):
2697         (showTree):
2698         (showLineTree):
2699         * rendering/RenderObject.h:
2700
2701 2011-05-02  Dimitri Glazkov  <dglazkov@chromium.org>
2702
2703         Reviewed by Eric Carlson.
2704
2705         REGRESSIONS (r71934): In standalone media documents, (double-)clicking the media element doesn’t play/pause
2706         https://bugs.webkit.org/show_bug.cgi?id=59917
2707
2708         Since default event handlers are not retargeted, we should always attempt ancestor
2709         traversal to find out whether the event.
2710
2711         * html/MediaDocument.cpp:
2712         (WebCore::ancestorVideoElement): Added ancestor-traversing helper.
2713         (WebCore::MediaDocument::defaultEventHandler): Changed to use ancestorVideoElement.
2714
2715 2011-05-02  Sam Weinig  <sam@webkit.org>
2716
2717         Attempt to fix the Leopard build.
2718
2719         * platform/graphics/FontPlatformData.h:
2720         * platform/graphics/mac/ComplexTextController.h:
2721         * platform/graphics/mac/ComplexTextControllerATSUI.cpp:
2722         * platform/mac/WebCoreSystemInterface.h:
2723
2724 2011-05-02  Tony Chang  <tony@chromium.org>
2725
2726         Reviewed by Kent Tamura.
2727
2728         convert manual-tests/bugzilla-6821.html to a layout test
2729         https://bugs.webkit.org/show_bug.cgi?id=59404
2730
2731         Test: fast/css/hover-update.html
2732
2733         * manual-tests/bugzilla-6821.html: Removed.
2734
2735 2011-05-02  Sam Weinig  <sam@webkit.org>
2736
2737         Reviewed by Anders Carlsson.
2738
2739         Prune ApplicationServices.h out of the headers
2740         https://bugs.webkit.org/show_bug.cgi?id=59952
2741
2742         More forward declares are better.
2743
2744         * html/canvas/CanvasRenderingContext2D.cpp:
2745         * html/canvas/CanvasRenderingContext2D.h:
2746         * platform/graphics/GlyphBuffer.h:
2747         * platform/graphics/cg/ImageBufferCG.cpp:
2748         * platform/graphics/cg/PDFDocumentImage.cpp:
2749         * platform/graphics/cg/PDFDocumentImage.h:
2750         * platform/graphics/mac/ComplexTextController.h:
2751         * platform/graphics/mac/ComplexTextControllerCoreText.cpp:
2752         * platform/graphics/mac/GlyphPageTreeNodeMac.cpp:
2753         * platform/mac/ScrollAnimatorMac.h:
2754         * platform/mac/ScrollAnimatorMac.mm:
2755         * platform/mac/ScrollbarThemeMac.h:
2756         * platform/mac/ScrollbarThemeMac.mm:
2757         * platform/mac/WebCoreNSStringExtras.h:
2758         * platform/mac/WebCoreSystemInterface.h:
2759
2760 2011-05-02  Dan Bernstein  <mitz@apple.com>
2761
2762         Reviewed by Simon Fraser.
2763
2764         <rdar://problem/7972529> Images with percentage based height/max-height are missing when they are inside blocks inside tables
2765         https://bugs.webkit.org/show_bug.cgi?id=58006
2766
2767         * rendering/RenderBox.cpp:
2768         (WebCore::RenderBox::computeReplacedLogicalHeightUsing): Expanded the scope of the fix for
2769         <http://webkit.org/b/15359> from r29039 to cover not just the case of a auto-or-percent-height
2770         table cell as the immediate containing block, but any case where all containing block ancestors
2771         up to and including a table cell are auto-or-percent height.
2772
2773 2011-05-02  Daniel Bates  <dbates@webkit.org>
2774
2775         Reviewed by Sam Weinig.
2776
2777         Convert manual test onblur-remove.html to a DRT test; onblur-remove.html fails
2778         https://bugs.webkit.org/show_bug.cgi?id=59379
2779
2780         Move manual test onblur-remove.html to LayoutTests/fast/events.
2781
2782         Test: fast/events/onblur-remove.html
2783
2784         * manual-tests/onblur-remove.html: Removed.
2785
2786 2011-05-02  Sailesh Agrawal  <sail@chromium.org>
2787
2788         Reviewed by Dimitri Glazkov.
2789
2790         Chromium Mac: Add scrollbar overlay drawing functions
2791         https://bugs.webkit.org/show_bug.cgi?id=59741
2792
2793         These functions are simply copied from WebCoreSystemInterface. These will be used to implement overlay scrollbars for Chromium Mac.
2794
2795         No new tests, since this code is only enabled on future versions of Mac OS X.
2796
2797         * WebCore.gypi:
2798         * platform/chromium/ScrollbarOverlayUtilitiesMac.h: Added.
2799         * platform/chromium/ScrollbarOverlayUtilitiesMac.mm: Added.
2800         (LookUpNSScrollerImpClass):
2801         (LookUpNSScrollerImpPairClass):
2802         (ScrollbarControlSizeToNSControlSize):
2803         (wkScrollbarPainterUsesOverlayScrollers):
2804         (wkScrollbarPainterIsHorizontal):
2805         (wkScrollbarPainterKnobAlpha):
2806         (wkScrollbarPainterSetOverlayState):
2807         (wkScrollbarPainterPaint):
2808         (wkScrollbarMinimumThumbLength):
2809         (wkScrollbarPainterSetDelegate):
2810         (wkScrollbarPainterTrackAlpha):
2811         (wkMakeScrollbarPainter):
2812         (wkScrollbarThickness):
2813         (wkScrollbarMinimumTotalLengthNeededForThumb):
2814         (wkVerticalScrollbarPainterForController):
2815         (wkHorizontalScrollbarPainterForController):
2816         (wkMakeScrollbarReplacementPainter):
2817         (wkSetPainterForPainterController):
2818         (wkSetScrollbarPainterControllerStyle):
2819         (wkScrollbarPainterKnobRect):
2820         (wkSetScrollbarPainterKnobAlpha):
2821         (wkSetScrollbarPainterTrackAlpha):
2822         (wkSetScrollbarPainterKnobStyle):
2823         (wkMakeScrollbarPainterController):
2824         (wkContentAreaScrolled):
2825         (wkContentAreaWillPaint):
2826         (wkMouseEnteredContentArea):
2827         (wkMouseExitedContentArea):
2828         (wkMouseMovedInContentArea):
2829         (wkWillStartLiveResize):
2830         (wkContentAreaResized):
2831         (wkWillEndLiveResize):
2832         (wkContentAreaDidShow):
2833         (wkContentAreaDidHide):
2834         (wkDidBeginScrollGesture):
2835         (wkDidEndScrollGesture):
2836         (wkScrollbarPainterForceFlashScrollers):
2837         (IsScrollbarOverlayAPIAvailable):
2838
2839 2011-05-02  Luke Macpherson   <macpherson@chromium.org>
2840
2841         Reviewed by Dimitri Glazkov.
2842
2843         Implement Length based CSS properties in CSSStyleApplyProperty
2844         https://bugs.webkit.org/show_bug.cgi?id=59314
2845
2846         No new tests as no functionality changed.
2847
2848         * css/CSSStyleApplyProperty.cpp:
2849         (WebCore::ApplyPropertyLength::ApplyPropertyLength):
2850         Added this class to handle all length types.
2851         Property specific behavior is handled through set of boolean parameters.
2852         (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
2853         Added calls to set up entries for the newly added length properties.
2854         * css/CSSStyleSelector.cpp:
2855         (WebCore::CSSStyleSelector::applyProperty):
2856         Remove property implementations mow implemented in CSSStyleApplyProperty.
2857         * css/CSSStyleSelector.h:
2858         (WebCore::CSSStyleSelector::rootElementStyle):
2859         Expose m_rootElementStyle via getter.
2860
2861 2011-05-02  Eric Carlson  <eric.carlson@apple.com>
2862
2863         Reviewed by Eric Seidel.
2864
2865         HTMLMediaElement should not seek to time 0 when readyState reaches HAVE_METADATA
2866         https://bugs.webkit.org/show_bug.cgi?id=59828
2867
2868         No new tests required, no functional change because seeking to time zero before playback
2869         begins has no effect.
2870
2871         * html/HTMLMediaElement.cpp:
2872         (WebCore::HTMLMediaElement::setReadyState): Don't seek to time 0 when readyState reaches
2873             HAVE_METADATA.
2874
2875 2011-05-02  Sam Weinig  <sam@webkit.org>
2876
2877         Reviewed by Gavin Barraclough.
2878
2879         Fix extra whitespace in license in FocusDirection.h.
2880
2881         * page/FocusDirection.h:
2882
2883 2011-05-02  Sam Weinig  <sam@webkit.org>
2884
2885         Reviewed by Adam Barth.
2886
2887         Prune some #includes from DOMWindow.h
2888         https://bugs.webkit.org/show_bug.cgi?id=59907
2889
2890         * page/DOMWindow.cpp:
2891         (WebCore::DOMWindow::setSecurityOrigin):
2892         * page/DOMWindow.h:
2893         Remove #includes of SecurityOrigin and MessagePort by forward declaring
2894         and moving the SecurityOrigin setter to the .cpp file. Also adds EventTarget
2895         #include that was getting added by MessagePort.h.
2896
2897         * bindings/js/JSCustomVoidCallback.cpp:
2898         * bindings/js/JSCustomXPathNSResolver.cpp:
2899         * bindings/js/JSDOMWindowCustom.h:
2900         * bindings/js/JSHistoryCustom.cpp:
2901         * bindings/js/ScriptController.h:
2902         * html/HTMLAnchorElement.cpp:
2903         * html/HTMLMediaElement.cpp:
2904         * html/parser/XSSFilter.cpp:
2905         * inspector/InspectorDOMStorageResource.cpp:
2906         * loader/MainResourceLoader.cpp:
2907         * page/DragController.cpp:
2908         * page/EventSource.cpp:
2909         * page/Location.cpp:
2910         * websockets/WebSocket.cpp:
2911         * xml/XSLTProcessorLibxslt.cpp:
2912         Add now missing SecurityOrigin.h #includes.
2913
2914 2011-05-02  Eric Carlson  <eric.carlson@apple.com>
2915
2916         Reviewed by Brady Eidson.
2917
2918         The preload attribute of the video tag is not completely implemented
2919         https://bugs.webkit.org/show_bug.cgi?id=43673
2920         <rdar://problem/7508322>
2921
2922         Tested manually with manual-tests/media-elements/video-preload.html.
2923
2924         * html/HTMLMediaElement.cpp:
2925         (WebCore::HTMLMediaElement::HTMLMediaElement): Initialize m_havePreparedToPlay.
2926         (WebCore::HTMLMediaElement::prepareForLoad): Ditto.
2927         (WebCore::HTMLMediaElement::prepareToPlay): New, tell player to prepare to play.
2928         (WebCore::HTMLMediaElement::seek): Call prepareToPlay when preload is less than 'metadata'
2929             because we need to have media data loaded to seek.
2930         (WebCore::HTMLMediaElement::updatePlayState): Call prepareToPlay.
2931         * html/HTMLMediaElement.h:
2932
2933         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
2934         (WebCore::MediaPlayerPrivateAVFoundation::MediaPlayerPrivateAVFoundation):  Remove 
2935             m_videoFrameHasDrawn and m_delayingLoad as they are no longer used.
2936         (WebCore::MediaPlayerPrivateAVFoundation::resumeLoad): Removed.
2937         (WebCore::MediaPlayerPrivateAVFoundation::load): Don't initialize m_videoFrameHasDrawn. 
2938             Move all preload logic to setPreload, call it from here.
2939         (WebCore::MediaPlayerPrivateAVFoundation::prepareToPlay): Move all preload logic to 
2940             setPreload, call it.
2941         (WebCore::MediaPlayerPrivateAVFoundation::duration): Don't cache duration = 0, it is
2942             unlikely to be correct and isn't worth caching.
2943         (WebCore::MediaPlayerPrivateAVFoundation::updateStates): Update for name change AVAssetStatus
2944             to AssetStatus. Create the AVPlayer once we know an asset is playable but preload is
2945             'metadata'. Set networkState to 'idle' when the playback buffer is full because that is
2946             a signal that AVFoundation won't do any more IO. Set readyState to 'HAVE_CURRENT_DATA' 
2947             when the first frame is available.
2948         (WebCore::MediaPlayerPrivateAVFoundation::metadataLoaded): Call tracksChanged so we cache
2949             width, height, hasVideo, etc.
2950         (WebCore::MediaPlayerPrivateAVFoundation::repaint): Don't set m_videoFrameHasDrawn, it is done
2951             in derived classes.
2952         (WebCore::MediaPlayerPrivateAVFoundation::setPreload): Centralize all logic about when to create
2953             AVAsset and AVPlayerItem here.
2954         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:
2955
2956         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationObjC.h:
2957         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationObjC.mm:
2958         (WebCore::MediaPlayerPrivateAVFoundationObjC::MediaPlayerPrivateAVFoundationObjC): Initialize
2959             m_videoFrameHasDrawn.
2960         (WebCore::MediaPlayerPrivateAVFoundationObjC::hasAvailableVideoFrame): New, renamed from
2961             videoLayerIsReadyToDisplay. Return true if we have a layer with frames available or
2962             if we have painted a frame to the context.
2963         (WebCore::MediaPlayerPrivateAVFoundationObjC::createAVAssetForURL): New, create the AVAsset
2964             if necessary.
2965         (WebCore::MediaPlayerPrivateAVFoundationObjC::createAVAssetForCacheResource): Ditto.
2966         (WebCore::MediaPlayerPrivateAVFoundationObjC::createAVPlayer): Restructure logic.
2967         (WebCore::MediaPlayerPrivateAVFoundationObjC::createAVPlayerItem): New, create AVPlayerItem.
2968         (WebCore::MediaPlayerPrivateAVFoundationObjC::beginLoadingMetadata): Correct logging.
2969         (WebCore::MediaPlayerPrivateAVFoundationObjC::playerItemStatus): Return "buffer full" when
2970             the buffer is full.
2971         (WebCore::MediaPlayerPrivateAVFoundationObjC::platformDuration): Get the duration from the
2972             AVAsset when we haven't allocated the AVPlayerItem yet so that we can return duration
2973             when we only have metadata.
2974         (WebCore::MediaPlayerPrivateAVFoundationObjC::assetStatus): Update for name change.
2975         (WebCore::MediaPlayerPrivateAVFoundationObjC::paint): Set m_videoFrameHasDrawn.
2976         (WebCore::MediaPlayerPrivateAVFoundationObjC::tracksChanged): Get attributes from AVAsset
2977             when when we haven't allocated the AVPlayerItem yet so that we can report attributes
2978             when we only have metadata.
2979         (WebCore::MediaPlayerPrivateAVFoundationObjC::sizeChanged): Guard against being called before
2980             we have allocated the AVPlayerItem.
2981
2982 2011-05-02  Philippe Normand  <pnormand@igalia.com>
2983
2984         Reviewed by Martin Robinson.
2985
2986         [GTK] gdk_drawable_get_size() shouldn't be used with GTK+ >= 2.24
2987         https://bugs.webkit.org/show_bug.cgi?id=59932
2988
2989         Use gdk_window_get_width() and gdk_window_get_height() if
2990         available, instead of the deprecated gdk_drawable_get_size().
2991
2992         No new tests, build fix only.
2993
2994         * platform/gtk/WidgetRenderingContext.cpp:
2995         (WebCore::WidgetRenderingContext::WidgetRenderingContext):
2996
2997 2011-05-02  Eric Carlson  <eric.carlson@apple.com>
2998
2999         Reviewed by Brady Eidson.
3000
3001         The preload attribute of the video tag is not completely implemented
3002         https://bugs.webkit.org/show_bug.cgi?id=43673
3003         <rdar://problem/7508322>
3004
3005         Test manually with manual-tests/media-elements/video-preload.html.
3006
3007         * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
3008         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
3009         (WebCore::MediaPlayerPrivateQTKit::commonMovieAttributes): Add new "limit read-ahead"
3010             attribute when preload is not "auto".
3011         (WebCore::MediaPlayerPrivateQTKit::resumeLoad): Remove m_delayingLoad, we don't need it.
3012         (WebCore::MediaPlayerPrivateQTKit::load): Correct comment.
3013         (WebCore::MediaPlayerPrivateQTKit::prepareToPlay): Call setPreload('auto').
3014         (WebCore::MediaPlayerPrivateQTKit::setPreload): Set new attribue if we already have
3015             a QTMovie.
3016
3017 2011-05-02  Eric Carlson  <eric.carlson@apple.com>
3018
3019         Reviewed by Brady Eidson.
3020
3021         The preload attribute of the video tag is not completely implemented
3022         https://bugs.webkit.org/show_bug.cgi?id=43673
3023         <rdar://problem/7508322>
3024
3025         Manual test manual-tests/media-elements/video-preload.html added.
3026
3027         * manual-tests/media-elements/video-preload.html: Added. New manual test for media element 
3028             'preload' attribute because it is not possible to detect if a media engine supports 
3029             "preload=metadata" in a way that lets us have per-platform layout test results.
3030
3031 2011-05-01  Abhishek Arya  <inferno@chromium.org>
3032
3033         Reviewed by Eric Carlson.
3034
3035         Regression(r74787): Media document mouse click and double-click
3036         events should be checked on target node only and not its descendants.
3037         https://bugs.webkit.org/show_bug.cgi?id=59886
3038
3039         * html/MediaDocument.cpp:
3040         (WebCore::MediaDocument::defaultEventHandler):
3041
3042 2011-05-01  Adam Barth  <abarth@webkit.org>
3043
3044         Reviewed by Eric Seidel.
3045
3046         Polish CSP host and port matching
3047         https://bugs.webkit.org/show_bug.cgi?id=59899
3048
3049         Finish last two details of host and port matching.  I don't think the
3050         default port handling is testable with our current testing
3051         infrastructure.
3052
3053         Tests: http/tests/security/contentSecurityPolicy/image-full-host-wildcard-allowed.html
3054                http/tests/security/contentSecurityPolicy/image-host-wildcard-allowed.html
3055
3056         * page/ContentSecurityPolicy.cpp:
3057         (WebCore::CSPSource::hostMatches):
3058         (WebCore::CSPSource::portMatches):
3059
3060 2011-05-01  Adam Barth  <abarth@webkit.org>
3061
3062         Reviewed by Eric Seidel.
3063
3064         CSP default-src is missing
3065         https://bugs.webkit.org/show_bug.cgi?id=58641
3066
3067         Add support for default-src.  The default-src provides a default policy
3068         for every directive that sends in "-src".  If the more-specific
3069         directive is present, it takes precedence.  I also took this
3070         opportunity to refactor the internals of ContentSecurityPolicy a bit to
3071         reduce duplicate code.
3072
3073         Tests: http/tests/security/contentSecurityPolicy/default-src-inline-allowed.html
3074                http/tests/security/contentSecurityPolicy/default-src-inline-blocked.html
3075                http/tests/security/contentSecurityPolicy/script-src-overrides-default-src.html
3076
3077         * page/ContentSecurityPolicy.cpp:
3078         (WebCore::ContentSecurityPolicy::didReceiveHeader):
3079         (WebCore::ContentSecurityPolicy::checkEval):
3080         (WebCore::ContentSecurityPolicy::operativeDirective):
3081         (WebCore::ContentSecurityPolicy::checkInlineAndReportViolation):
3082         (WebCore::ContentSecurityPolicy::checkEvalAndReportViolation):
3083         (WebCore::ContentSecurityPolicy::checkSourceAndReportViolation):
3084         (WebCore::ContentSecurityPolicy::allowJavaScriptURLs):
3085         (WebCore::ContentSecurityPolicy::allowInlineEventHandlers):
3086         (WebCore::ContentSecurityPolicy::allowInlineScript):
3087         (WebCore::ContentSecurityPolicy::allowInlineStyle):
3088         (WebCore::ContentSecurityPolicy::allowEval):
3089         (WebCore::ContentSecurityPolicy::allowScriptFromSource):
3090         (WebCore::ContentSecurityPolicy::allowObjectFromSource):
3091         (WebCore::ContentSecurityPolicy::allowChildFrameFromSource):
3092         (WebCore::ContentSecurityPolicy::allowImageFromSource):
3093         (WebCore::ContentSecurityPolicy::allowStyleFromSource):
3094         (WebCore::ContentSecurityPolicy::allowFontFromSource):
3095         (WebCore::ContentSecurityPolicy::allowMediaFromSource):
3096         (WebCore::ContentSecurityPolicy::addDirective):
3097         * page/ContentSecurityPolicy.h:
3098
3099 2011-05-01  Sam Weinig  <sam@webkit.org>
3100
3101         Reviewed by Anders Carlsson.
3102
3103         Prune some unnecessary #includes
3104         https://bugs.webkit.org/show_bug.cgi?id=59895
3105
3106         Start getting rid of unnecessary #includes and forward declares.
3107
3108         * bindings/js/JSDOMBinding.h:
3109         * bindings/js/JSDOMWindowBase.h:
3110         * bindings/js/JSDOMWindowShell.h:
3111         * bindings/js/ScheduledAction.cpp:
3112         * bindings/js/ScriptController.cpp:
3113         * bindings/js/ScriptController.h:
3114         * bindings/js/ScriptDebugServer.cpp:
3115         * editing/Editor.h:
3116         * inspector/InspectorClient.cpp:
3117         * loader/FrameLoader.h:
3118         * loader/NavigationScheduler.h:
3119         * page/Console.cpp:
3120         * xml/XMLTreeViewer.cpp:
3121         * xml/XMLTreeViewer.h:
3122
3123 2011-05-01  Patrick Gansterer  <paroga@webkit.org>
3124
3125         [WIN] Unreviewed buildfix after r85434.
3126
3127         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
3128         (WebCore::MediaPlayerPrivate::createLayerForMovie):
3129
3130 2011-05-01  Patrick Gansterer  <paroga@webkit.org>
3131
3132         [WIN] Unreviewed buildfix after r85434.
3133
3134         * platform/graphics/win/QTMovieVisualContext.cpp:
3135         (QTMovieVisualContext::QTMovieVisualContext): Added missing header.
3136
3137 2011-05-01  Justin Schuh  <jschuh@chromium.org>
3138
3139         Reviewed by Adam Barth.
3140
3141         History::stateObjectAdded should check origin via SecurityOrigin::canRequest
3142         https://bugs.webkit.org/show_bug.cgi?id=59840
3143
3144         Tests: fast/loader/stateobjects/pushstate-in-data-url-denied.html
3145                http/tests/navigation/replacestate-base-illegal.html
3146                http/tests/navigation/replacestate-base-legal.html
3147
3148         * page/History.cpp:
3149         (WebCore::History::stateObjectAdded):
3150
3151 2011-05-01  Patrick Gansterer  <paroga@webkit.org>
3152
3153         [WIN] Unreviewed buildfix after r85434.
3154
3155         * platform/graphics/win/QTMovieVisualContext.cpp:
3156         (QTMovieVisualContext::QTMovieVisualContext):
3157
3158 2011-05-01  Patrick Gansterer  <paroga@webkit.org>
3159
3160         Reviewed by Adam Barth.
3161
3162         [WINCE] Fix OwnPtr strict issues
3163         https://bugs.webkit.org/show_bug.cgi?id=59898
3164
3165         * page/wince/FrameWinCE.cpp:
3166         (WebCore::imageFromSelection):
3167         * platform/graphics/wince/FontPlatformData.cpp:
3168         (WebCore::FixedSizeFontData::create):
3169         (WebCore::FontPlatformPrivateData::FontPlatformData::hfont):
3170         (WebCore::FontPlatformPrivateData::FontPlatformData::getScaledFontHandle):
3171         (WebCore::FontPlatformPrivateData::FontPlatformData::discardFontHandle):
3172         * platform/graphics/wince/GraphicsContextWinCE.cpp:
3173         (WebCore::GraphicsContext::strokeArc):
3174         (WebCore::GraphicsContext::fillRect):
3175         (WebCore::GraphicsContext::clip):
3176         (WebCore::GraphicsContext::fillRoundedRect):
3177         (WebCore::GraphicsContext::drawRoundCorner):
3178         (WebCore::GraphicsContext::drawText):
3179         * platform/graphics/wince/ImageBufferWinCE.cpp:
3180         (WebCore::ImageBuffer::ImageBuffer):
3181         * platform/graphics/wince/ImageWinCE.cpp:
3182         (WebCore::BitmapImage::getHBITMAPOfSize):
3183         * platform/graphics/wince/SharedBitmap.cpp:
3184         (WebCore::SharedBitmap::SharedBitmap):
3185
3186 2011-05-01  Ryosuke Niwa  <rniwa@webkit.org>
3187
3188         Reviewed by Eric Seidel.
3189
3190         Get rid of versions of sendContextMenuEvent and eventMayStartDrag that takes NSEvent
3191         https://bugs.webkit.org/show_bug.cgi?id=59837
3192
3193         Removed EventHandler::sendContextMenuEvent(NSEvent*) and EventHandler::eventMayStartDrag(NSEvent*)
3194
3195         * WebCore.exp.in:
3196         * page/EventHandler.h:
3197         * page/mac/EventHandlerMac.mm:
3198
3199 2011-05-01  Ryosuke Niwa  <rniwa@webkit.org>
3200
3201         Reviewed by Eric Seidel.
3202
3203         Move currentKeyboardEvent from EventHandlerMac.mm to WebHTMLView.mm
3204         https://bugs.webkit.org/show_bug.cgi?id=59835
3205
3206         Moved currentKeyboardEvent.
3207
3208         * WebCore.exp.in:
3209         * page/EventHandler.h:
3210         * page/mac/EventHandlerMac.mm:
3211
3212 2011-05-01  ojab  <ojab@ojab.ru>
3213
3214         Reviewed by Eric Seidel.
3215
3216         Fix build with --disable-video --enable-fullscreen-api
3217         https://bugs.webkit.org/show_bug.cgi?id=59698
3218
3219         * rendering/RenderTheme.h:
3220         (WebCore::RenderTheme::extraFullScreenStyleSheet):
3221
3222 2011-05-01  Jeff Timanus  <twiz@chromium.org>
3223
3224         Reviewed by Eric Seidel.
3225
3226         Add solid-color checking to BitmapImage::checkForSolidColour in the skia port.
3227         https://bugs.webkit.org/show_bug.cgi?id=59041
3228
3229         Test:css2.1/t140201-c533-bgimage-00-a.html
3230
3231         * platform/graphics/Image.cpp:
3232         (WebCore::Image::drawTiled): Removal of macro exclusion of assert for Skia path.
3233         * platform/graphics/skia/ImageSkia.cpp:
3234         (WebCore::BitmapImage::checkForSolidColor):
3235
3236 2011-05-01  Patrick Gansterer  <paroga@webkit.org>
3237
3238         Reviewed by Adam Barth.
3239
3240         Fix OwnPtr strict issues in windows build
3241         https://bugs.webkit.org/show_bug.cgi?id=59878
3242
3243         * platform/graphics/ca/win/CACFLayerTreeHost.cpp:
3244         (WebCore::getDirtyRects):
3245         * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
3246         (WebCore::MediaPlayerPrivateQuickTimeVisualContext::MediaPlayerPrivateQuickTimeVisualContext):
3247         * platform/graphics/win/WKCAImageQueue.cpp:
3248         (WebCore::WKCAImageQueue::WKCAImageQueue):
3249         * platform/win/CursorWin.cpp:
3250         (WebCore::createSharedCursor):
3251         * platform/win/PasteboardWin.cpp:
3252         (WebCore::Pasteboard::writeImage):
3253
3254 2011-05-01  Patrick Gansterer  <paroga@webkit.org>
3255
3256         Reviewed by Eric Seidel.
3257
3258         Use PassOwnPtr as return value of GraphicsContext::createWindowsBitmap
3259         https://bugs.webkit.org/show_bug.cgi?id=59876
3260
3261         Also pass the size "as reference" instead of "as value".
3262
3263         * platform/graphics/GraphicsContext.h:
3264         * platform/graphics/win/FontCGWin.cpp:
3265         (WebCore::drawGDIGlyphs):
3266         * platform/graphics/win/GraphicsContextWin.cpp:
3267         (WebCore::GraphicsContext::WindowsBitmap::WindowsBitmap):
3268         (WebCore::GraphicsContext::createWindowsBitmap):
3269         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
3270         (WebCore::MediaPlayerPrivate::paint):
3271
3272 2011-05-01  Emil A Eklund  <eae@chromium.org>
3273
3274         Reviewed by Eric Seidel.
3275
3276         getComputedStyle() returns unitless values for some properties that require units
3277         https://bugs.webkit.org/show_bug.cgi?id=55111
3278
3279         Change getComputedStyle to return value with unit for -webkit-column-width, -webkit-column-gap and -webkit-perspective
3280
3281         Test: fast/css/getComputedStyle/getComputedStyle-length-unit.html
3282
3283         * css/CSSComputedStyleDeclaration.cpp:
3284         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
3285
3286 2011-05-01  Young Han Lee  <joybro@company100.net>
3287
3288         Reviewed by Eric Seidel.
3289
3290         Change TEXMAP_OPENGL_ES2 to TEXMAP_OPENGL_ES_2
3291         https://bugs.webkit.org/show_bug.cgi?id=59608
3292
3293         TEXMAP_OPENGL_ES2 is a wrong name. TEXMAP_OPENGL_ES_2 is already defined in TextureMapper.h
3294
3295         No new functionality, no new tests.
3296
3297         * platform/graphics/opengl/TextureMapperGL.cpp:
3298         (WebCore::TextureMapperGL::TextureMapperGL):
3299
3300 2011-05-01  Yael Aharon  <yael.aharon@nokia.com>
3301
3302         Reviewed by Eric Seidel.
3303
3304         CSS3 nth-child(n) selector fails
3305         https://bugs.webkit.org/show_bug.cgi?id=56943
3306
3307         Regression from r75158.
3308         "n" is a valid parameter to nth() and should be allowed.
3309
3310         Test: fast/css/nth-child-n.html
3311
3312         * css/CSSParser.cpp:
3313         (WebCore::isValidNthToken):
3314
3315 2011-05-01  Pavel Feldman  <pfeldman@chromium.org>
3316
3317         Not reviewed: address stack frame scriptName -> url rename in timeline panel.
3318
3319         * inspector/front-end/TimelinePanel.js:
3320         (WebInspector.TimelinePanel.FormattedRecord.prototype._getRecordDetails):
3321         (WebInspector.TimelinePanel.PopupContentHelper.prototype._appendStackTrace):
3322
3323 2011-05-01  Chris Fleizach  <cfleizach@apple.com>
3324
3325         Reviewed by Maciej Stachowiak.
3326
3327         Crash in AccessibilityRenderObject while viewing PDFs in iframes
3328         https://bugs.webkit.org/show_bug.cgi?id=59629
3329
3330         Could not reproduce this crash, but it's quite clear how it could happen.
3331  
3332         * accessibility/AccessibilityRenderObject.cpp:
3333         (WebCore::AccessibilityRenderObject::accessibilityHitTest):
3334
3335 2011-05-01  Nikolas Zimmermann  <nzimmermann@rim.com>
3336
3337         Reviewed by Dirk Schulze.
3338
3339         LEAK: SVGElement leaks when detaching it in a pending resource state
3340         https://bugs.webkit.org/show_bug.cgi?id=59072
3341
3342         Make the pending resources set non-refcounted again. We made it refcounted a while ago
3343         to fix a security bug, as we had dangling pointers in the set in SVGDocumentExtensions.
3344         Fix the underlying problem, by removing all pending resources referencing to a particular
3345         SVGElement, upon its destruction or upon removing it from the document.
3346
3347         Example: <rect fill="url(#foo)" id="rect">
3348         When we try to render the rect, the foo paint server can't be found and thus "foo" will be
3349         added to the pending resource set, with "rect" as client. When "foo" appears, it would remove
3350         itself from the pending resource set, and a ref count to the "rect" would be released.
3351         If "foo" never appears, SVGDocumentExtensions still holds a ref to the <rect>, thus keeping
3352         it and the associated document alive.
3353
3354         Tests: svg/custom/pending-resource-leak-2.svg
3355                svg/custom/pending-resource-leak-3.svg
3356                svg/custom/pending-resource-leak.svg
3357
3358         These tests cover several scenarios where we used to leak. Should fix several SVG*Element leaks on the bots.
3359         I manually tested reloading above testcases dozens of times, before the leak count was incremented by 2 nodes on every reload, that's gone now.
3360
3361         * rendering/svg/RenderSVGResourceContainer.cpp:
3362         (WebCore::RenderSVGResourceContainer::registerResource):
3363         * rendering/svg/RenderSVGShadowTreeRootContainer.cpp:
3364         (WebCore::RenderSVGShadowTreeRootContainer::updateFromElement):
3365         * rendering/svg/SVGResources.cpp:
3366         (WebCore::registerPendingResource):
3367         * svg/SVGDocumentExtensions.cpp:
3368         (WebCore::SVGDocumentExtensions::addPendingResource):
3369         (WebCore::SVGDocumentExtensions::hasPendingResources):
3370         (WebCore::SVGDocumentExtensions::removeElementFromPendingResources):
3371         (WebCore::SVGDocumentExtensions::removePendingResource):
3372         * svg/SVGDocumentExtensions.h:
3373         * svg/SVGElement.cpp:
3374         * svg/SVGElement.h:
3375         * svg/SVGElementRareData.h:
3376         (WebCore::SVGElementRareData::SVGElementRareData):
3377         (WebCore::SVGElementRareData::hasPendingResources):
3378         (WebCore::SVGElementRareData::setHasPendingResources):
3379         * svg/SVGStyledElement.cpp:
3380         (WebCore::SVGStyledElement::~SVGStyledElement):
3381         (WebCore::SVGStyledElement::insertedIntoDocument):
3382         (WebCore::SVGStyledElement::removedFromDocument):
3383         (WebCore::SVGStyledElement::hasPendingResources):
3384         (WebCore::SVGStyledElement::setHasPendingResources):
3385         * svg/SVGStyledElement.h:
3386         (WebCore::SVGStyledElement::needsPendingResourceHandling):
3387         (WebCore::SVGStyledElement::buildPendingResource):
3388         * svg/SVGUseElement.cpp:
3389         (WebCore::SVGUseElement::SVGUseElement):
3390         (WebCore::SVGUseElement::insertedIntoDocument):
3391         (WebCore::SVGUseElement::svgAttributeChanged):
3392         (WebCore::SVGUseElement::buildPendingResource):
3393         * svg/SVGUseElement.h:
3394
3395 2011-05-01  Rafael Brandao  <rafael.lobo@openbossa.org>
3396
3397         Reviewed by Csaba Osztrogonác.
3398
3399         [Qt] build-webkit warning Inspector.idl is missing
3400         https://bugs.webkit.org/show_bug.cgi?id=59047
3401         
3402         Added variable_out to pipe output from one compiler to another,
3403         and then forced the output to be added to the sources.
3404
3405         * CodeGenerators.pri:
3406
3407 2011-05-01  Dan Bernstein  <mitz@apple.com>
3408
3409         Reviewed by Anders Carlsson.
3410
3411         <rdar://problem/9155067> REGRESSION (float-based line boxes): Gaps and overlaps in selection highlight
3412         https://bugs.webkit.org/show_bug.cgi?id=56658
3413
3414         Test: fast/text/selection-rect-rounding.html
3415
3416         * platform/graphics/FontFastPath.cpp:
3417         (WebCore::Font::selectionRectForSimpleText): Account for non-integral anchor point coordinates.
3418         * platform/graphics/mac/FontComplexTextMac.cpp:
3419         (WebCore::Font::selectionRectForComplexText): Ditto.
3420         * rendering/InlineTextBox.cpp:
3421         (WebCore::InlineTextBox::selectionRect): Floor the horizontal sides of the clip rect.
3422         (WebCore::InlineTextBox::paintSelection): Pass the logical left location to Font::selectionRectForText(),
3423         since it affects rounding.
3424
3425 2011-04-30  Justin Schuh  <jschuh@chromium.org>
3426
3427         Reviewed by Dirk Schulze.
3428
3429         Make RenderSVGResourceFilter take ownership of filter data when painting
3430         https://bugs.webkit.org/show_bug.cgi?id=51524
3431
3432         Test: svg/custom/filter-on-svgimage.svg
3433
3434         * rendering/svg/RenderSVGResourceFilter.cpp:
3435         (WebCore::RenderSVGResourceFilter::removeClientFromCache):
3436         (WebCore::RenderSVGResourceFilter::postApplyResource):
3437         * rendering/svg/RenderSVGResourceFilter.h:
3438         (WebCore::FilterData::FilterData):
3439
3440 2011-04-30  Martin Robinson  <mrobinson@igalia.com>
3441
3442         Reviewed by Adam Barth.
3443
3444         Enable strict mode for OwnPtr and PassOwnPtr
3445         https://bugs.webkit.org/show_bug.cgi?id=59428
3446
3447         Fix assignments and .set() calls with OwnPtr to use adoptPtr. Have GeolocationService
3448         factory methods return a PassOwnPtr.
3449
3450         No new tests. This should not change functionality.
3451
3452         * platform/GeolocationService.cpp:
3453         (WebCore::createGeolocationServiceNull):
3454         (WebCore::GeolocationService::create):
3455         * platform/GeolocationService.h:
3456         * platform/android/GeolocationServiceAndroid.cpp:
3457         (WebCore::GeolocationServiceAndroid::create):
3458         * platform/android/GeolocationServiceAndroid.h:
3459         * platform/efl/GeolocationServiceEfl.cpp:
3460         (WebCore::GeolocationServiceEfl::create):
3461         * platform/efl/GeolocationServiceEfl.h:
3462         * platform/graphics/cairo/CairoUtilities.cpp:
3463         (WebCore::appendPathToCairoContext):
3464         * platform/graphics/cairo/GraphicsContextCairo.cpp:
3465         (WebCore::drawPathShadow):
3466         (WebCore::GraphicsContext::clip):
3467         * platform/graphics/cairo/ImageBufferCairo.cpp:
3468         (WebCore::ImageBuffer::ImageBuffer):
3469         * platform/graphics/cairo/OwnPtrCairo.h:
3470         * platform/graphics/cairo/PathCairo.cpp:
3471         (WebCore::Path::Path):
3472         (WebCore::Path::operator=):
3473         (WebCore::Path::apply):
3474         * platform/gtk/GeolocationServiceGtk.cpp:
3475         (WebCore::GeolocationServiceGtk::create):
3476         * platform/gtk/GeolocationServiceGtk.h:
3477         * platform/mock/GeolocationServiceMock.cpp:
3478         (WebCore::GeolocationServiceMock::create):
3479         * platform/mock/GeolocationServiceMock.h:
3480
3481 2011-04-30  Pavel Feldman  <pfeldman@chromium.org>
3482
3483         Not reviewed: inspector toolbar titles were 2px off.
3484
3485         * inspector/front-end/inspector.css:
3486         (#toolbar-dropdown .toolbar-label):
3487
3488 2011-04-30  Mihai Parparita  <mihaip@chromium.org>
3489
3490         Reviewed by Eric Seidel.
3491
3492         V8Proxy.h shouldn't include SecurityOrigin.h
3493         https://bugs.webkit.org/show_bug.cgi?id=59859
3494
3495         Remove SecurityOrigin.h #include from V8Proxy.h. Touching
3496         SecurityOrigin.h now rebuilds 234 targets instead of 638 (when building
3497         chromium's DumpRenderTree).
3498
3499         * bindings/v8/NPV8Object.cpp:
3500         * bindings/v8/V8Proxy.cpp:
3501         * bindings/v8/V8Proxy.h:
3502         * css/CSSStyleSelector.cpp:
3503         * dom/XMLDocumentParserLibxml2.cpp:
3504         * html/HTMLLinkElement.cpp:
3505         * loader/SubframeLoader.cpp:
3506         * page/History.cpp:
3507         * storage/IDBFactory.cpp:
3508         * storage/StorageAreaImpl.cpp:
3509
3510 2011-04-29  Adam Barth  <abarth@webkit.org>
3511
3512         Reviewed by Eric Seidel.
3513
3514         CSP script-src should block eval
3515         https://bugs.webkit.org/show_bug.cgi?id=59850
3516
3517         Rather than have JavaScriptCore call back into WebCore to learn whether
3518         eval is enabled, we push that bit of the policy into JavaScriptCore.
3519
3520         Tests: http/tests/security/contentSecurityPolicy/eval-allowed.html
3521                http/tests/security/contentSecurityPolicy/eval-blocked.html
3522
3523         * bindings/js/ScriptController.cpp:
3524         (WebCore::ScriptController::disableEval):
3525         * bindings/js/ScriptController.h:
3526         * page/ContentSecurityPolicy.cpp:
3527         (WebCore::ContentSecurityPolicy::didReceiveHeader):
3528         (WebCore::ContentSecurityPolicy::internalAllowEval):
3529         (WebCore::ContentSecurityPolicy::allowEval):
3530         * page/ContentSecurityPolicy.h:
3531
3532 2011-04-29  Joseph Pecoraro  <joepeck@webkit.org>
3533
3534         GTK build fix. Missed moving DateComponents and
3535         adding LocalizedDate files for their build file.
3536
3537         * GNUmakefile.list.am:
3538
3539 2011-04-29  Adam Barth  <abarth@webkit.org>
3540
3541         Reviewed by Eric Seidel.
3542
3543         style-src should block @style
3544         https://bugs.webkit.org/show_bug.cgi?id=59293
3545
3546         This patch blocks @style when style-src doesn't have the
3547         'unsafe-inline' token.  This patch blocks the parsing of the attribute
3548         itself.  That feels vaguely like too low a level to interpose the
3549         policy, but there didn't seem to be anywhere else natural to enforce
3550         the policy.
3551
3552         Tests: http/tests/security/contentSecurityPolicy/inline-style-attribute-allowed.html
3553                http/tests/security/contentSecurityPolicy/inline-style-attribute-blocked.html
3554                http/tests/security/contentSecurityPolicy/inline-style-on-html.html
3555
3556         * dom/StyledElement.cpp:
3557         (WebCore::StyledElement::parseMappedAttribute):
3558
3559 2011-04-29  Joseph Pecoraro  <joepeck@webkit.org>
3560
3561         Reviewed by Kent Tamura.
3562
3563         Allow Localized Date Strings for Date Input Fields
3564         https://bugs.webkit.org/show_bug.cgi?id=59752
3565
3566         Test: fast/forms/date-input-visible-strings.html
3567
3568         * CMakeLists.txt:
3569         * WebCore.gypi:
3570         * WebCore.pro:
3571         * WebCore.vcproj/WebCore.vcproj:
3572         * WebCore.xcodeproj/project.pbxproj: update build files for
3573         moving DateComponents from WebCore/html to WebCore/platform
3574         and adding the LocalizedDate files.
3575
3576         * html/BaseDateAndTimeInputType.cpp:
3577         (WebCore::BaseDateAndTimeInputType::serialize):
3578         (WebCore::BaseDateAndTimeInputType::serializeWithComponents):
3579         (WebCore::BaseDateAndTimeInputType::serializeWithMilliseconds):
3580         InputType::serialize for a double value with date types is
3581         different for the month type because it assumes the incoming
3582         value is months instead of msecs (matching valueAsNumber in
3583         HTML5).  So provide a more general serialization function,
3584         serializeWithComponents, that will always serialize a string
3585         correctly for the current type but taking in a DateComponents
3586         object. The default serialize, and new serializeWithMilliseconds,
3587         can fall back to this and allows an override point for
3588         the month type.
3589
3590         * html/MonthInputType.cpp:
3591         (WebCore::MonthInputType::serializeWithMilliseconds): the month
3592         type is a case where the default serialize does not take msec,
3593         so provide an implementation for month which handles msec input.
3594
3595         * html/BaseDateAndTimeInputType.cpp:
3596         (WebCore::BaseDateAndTimeInputType::setValueAsDate): switch
3597         to serializeWithMilliseconds as the incoming date value is msec.
3598         * html/MonthInputType.cpp:
3599         (WebCore::MonthInputType::setValueAsDate): removed.
3600
3601         * html/BaseDateAndTimeInputType.cpp:
3602         (WebCore::BaseDateAndTimeInputType::visibleValue): allow
3603         localized formatting of a date value.
3604         (WebCore::BaseDateAndTimeInputType::convertFromVisibleValue):
3605         allow parsing for a formatted date value.
3606
3607         * html/BaseDateAndTimeInputType.h:
3608         * platform/DateComponents.cpp: Renamed from Source/WebCore/html/DateComponents.cpp.
3609         Expose the Type enum so it can be used outside of the DateComponents class.
3610         * platform/text/LocalizedDate.h: Added.
3611         * platform/text/LocalizedDateNone.cpp: Added.
3612         (WebCore::formatLocalizedDate): Default implementation falls back to
3613         existing HTML5 date input value formatting.
3614
3615         * html/BaseDateAndTimeInputType.h:
3616         * html/DateInputType.cpp:
3617         (WebCore::DateInputType::dateType):
3618         * html/DateInputType.h:
3619         * html/DateTimeInputType.cpp:
3620         (WebCore::DateTimeInputType::dateType):
3621         * html/DateTimeInputType.h:
3622         * html/DateTimeLocalInputType.cpp:
3623         (WebCore::DateTimeLocalInputType::dateType):
3624         * html/DateTimeLocalInputType.h:
3625         * html/MonthInputType.cpp:
3626         (WebCore::MonthInputType::dateType):
3627         * html/MonthInputType.h:
3628         * html/TimeInputType.cpp:
3629         (WebCore::TimeInputType::dateType):
3630         * html/TimeInputType.h:
3631         * html/WeekInputType.cpp:
3632         (WebCore::WeekInputType::dateType):
3633         * html/WeekInputType.h: Accessors for the desired date
3634         type of a date input type. This allows the base class
3635         to write a generic algorithm.
3636
3637 2011-04-29  Adam Barth  <abarth@webkit.org>
3638
3639         Reviewed by Eric Seidel.
3640
3641         style-src should block inline style from <style>
3642         https://bugs.webkit.org/show_bug.cgi?id=59292
3643
3644         The spec has been updated to allow blocking of inline styles with
3645         style-src.  This will help folks defend against tricky CSS3 injections.
3646
3647         This patch covers the <style> case.  The next patch will cover the
3648         @style case.
3649
3650         Tests: http/tests/security/contentSecurityPolicy/inline-style-allowed.html
3651                http/tests/security/contentSecurityPolicy/inline-style-blocked.html
3652
3653         * dom/StyleElement.cpp:
3654         (WebCore::StyleElement::createSheet):
3655         * page/ContentSecurityPolicy.cpp:
3656         (WebCore::ContentSecurityPolicy::allowInlineStyle):
3657         * page/ContentSecurityPolicy.h:
3658
3659 2011-04-29  Chris Evans  <cevans@chromium.org>
3660
3661         Reviewed by Adam Barth.
3662
3663         Add WebCore::Setting to block displaying and/or running insecure content on secure pages
3664         https://bugs.webkit.org/show_bug.cgi?id=58378
3665
3666         Test: To follow in subsequent patch, including the wiring to expose the new settings to LayoutTests.
3667
3668         * loader/FrameLoader.cpp:
3669         (WebCore::FrameLoader::checkIfDisplayInsecureContent): Return whether or not the load should be blocked, and tweak the message upon blocking.
3670         (WebCore::FrameLoader::checkIfRunInsecureContent): Return whether or not the load should be blocked, and tweak the message upon blocking.
3671         * loader/FrameLoader.h:
3672         * loader/MainResourceLoader.cpp:
3673         (WebCore::MainResourceLoader::willSendRequest): Check if the frame load is blocked due to mixed content and cancel it if so. The check was moved up so that it occurs before firing the load callbacks, to avoid any outgoing network hits or accounting. Redirects are handled because willSendRequest is called for each one in the chain.
3674         * loader/SubframeLoader.cpp:
3675         (WebCore::SubframeLoader::loadMediaPlayerProxyPlugin): Handle the blocking of mixed-content plug-in loads.
3676         (WebCore::SubframeLoader::loadPlugin): Handle the blocking of mixed-content plug-in loads.
3677         * loader/cache/CachedResourceLoader.cpp:
3678         (WebCore::CachedResourceLoader::canRequest): Handle the blocking of various loads due to mixed content conditions.
3679         * page/Settings.cpp:
3680         (WebCore::Settings::Settings): Permit mixed-content loads by default to avoid a change in behavior by default.
3681         * page/Settings.h: Add two new booleans to control blocking of mixed content (displaying and running thereof).
3682         (WebCore::Settings::setAllowDisplayOfInsecureContent):
3683         (WebCore::Settings::allowDisplayOfInsecureContent):
3684         (WebCore::Settings::setAllowRunningOfInsecureContent):
3685         (WebCore::Settings::allowRunningOfInsecureContent):
3686
3687 2011-04-29  Ryosuke Niwa  <rniwa@webkit.org>
3688
3689         Reviewed by Eric Seidel.
3690
3691         Extract a function to obtain VisiblePosition from RenderText::positionForPoint
3692         https://bugs.webkit.org/show_bug.cgi?id=59811
3693
3694         Extracted lineDirectionPointFitsInBox from positionForPoint.
3695
3696         * rendering/RenderText.cpp:
3697         (WebCore::lineDirectionPointFitsInBox):
3698         (WebCore::RenderText::positionForPoint):
3699
3700 2011-04-29  Geoffrey Garen  <ggaren@apple.com>
3701
3702         Reviewed by Alexey Proskuryakov.
3703
3704         REGRESSION: r83938 abandons GC memory
3705         https://bugs.webkit.org/show_bug.cgi?id=59604
3706
3707         This bug was caused by script and image elements waiting indefinitely
3708         for their loads to finish.
3709
3710         * bindings/js/JSNodeCustom.cpp:
3711         (WebCore::isReachableFromDOM): Don't test for the load event firing,
3712         since the load event doesn't fire in cases of canceled or errored loads.
3713         Instead, test hasPendingActivity().
3714         
3715         Don't do this test at all for script elements because script elements
3716         can't load while outside the document. (fast/dom/script-element-gc.html
3717         verifies that this is correct.)
3718
3719         * html/HTMLImageElement.cpp:
3720         (WebCore::HTMLImageElement::hasPendingActivity):
3721         * html/HTMLImageElement.h:
3722         * loader/ImageLoader.cpp:
3723         (WebCore::ImageEventSender::hasPendingEvents):
3724         (WebCore::ImageLoader::hasPendingLoadEvent):
3725         * loader/ImageLoader.h: Added API for finding out if an image element
3726         has pending activity.
3727
3728         * loader/cache/CachedResource.cpp:
3729         (WebCore::CachedResource::setRequest): All loads are supposed to end in
3730         data(allDataReceived = true) or error(), but in the edge case of a
3731         canceled load, all we get is a call to setRequest(0). Be sure to
3732         record that we're no longer loading in that case, otherwise our element
3733         will leak forever, waiting for its load to complete.
3734
3735 2011-04-29  Emil Eklund  <eae@chromium.org>
3736
3737         Reviewed by Tony Chang.
3738
3739         Setting outerHTML should merge text nodes
3740         https://bugs.webkit.org/show_bug.cgi?id=52686
3741
3742         When setting outerHTML adjacent text nodes should be merged. This matches
3743         the behavior of outerText and the IE implementation of outerHTML.       
3744
3745         Test: fast/dom/set-outer-html.html
3746
3747         * html/HTMLElement.cpp:
3748         (WebCore::mergeWithNextTextNode): Move function to before setOuterHTML.
3749         (WebCore::HTMLElement::setOuterHTML): Merge adjacent text nodes after replacing the element.
3750
3751 2011-04-29  Emil A Eklund  <eae@chromium.org>
3752
3753         Reviewed by Dimitri Glazkov.
3754
3755         Onchange on text fields has an incoherent behavior
3756         https://bugs.webkit.org/show_bug.cgi?id=57330
3757
3758         * html/HTMLFormControlElement.cpp:
3759         (WebCore::HTMLTextFormControlElement::insertedIntoDocument):
3760         Initialize m_textAsOfLastFormControlChangeEvent to empty string rather
3761         than null for empty fields.
3762
3763 2011-04-29  Csaba Osztrogonác  <ossy@webkit.org>
3764
3765         [Qt] Unreviewed buildfix after r85343.
3766
3767         Enable strict OwnPtr for Qt
3768         https://bugs.webkit.org/show_bug.cgi?id=59667
3769
3770         * plugins/mac/PluginViewMac.mm:
3771         (WebCore::PluginView::platformStart):
3772
3773 2011-04-29  Jon Lee  <jonlee@apple.com>
3774
3775         Reviewed by mitzpettel.
3776
3777         REGRESSION (WebKit2): (Mac) Selection is gone after switching tabs (59721)
3778         <rdar://problem/9327332>
3779         https://bugs.webkit.org/show_bug.cgi?id=59721
3780
3781         Removing shouldClearSelectionWhenLosingWebPageFocus().  Reverting changelist 83814.
3782
3783         * WebCore.exp.in:
3784         * editing/EditingBehavior.h:
3785
3786 2011-04-29  Abhishek Arya  <inferno@chromium.org>
3787
3788         Reviewed by Dave Hyatt.
3789
3790         Allow only first table caption and destroy the remaining ones.
3791         https://bugs.webkit.org/show_bug.cgi?id=58249
3792
3793         Previously, we were only laying out the first table caption.
3794         However Table::layout didn't mark the other ones as not needing
3795         layout. So after table layout completes, table is marked as not
3796         needing layout with its other table caption still needing layout.
3797         This causes incorrect layout root calculations and set it to a
3798         node which is already getting deleted.
3799
3800         Tests: fast/table/dynamic-caption-add-before-child.xhtml
3801                fast/table/dynamic-caption-add-remove-before-child.xhtml
3802                fast/table/multiple-captions-crash.xhtml
3803                fast/table/multiple-captions-crash2.xhtml
3804                fast/table/multiple-captions-display.xhtml
3805
3806         * rendering/RenderTable.cpp:
3807         (WebCore::RenderTable::addChild): when new caption or a before
3808         child caption is added, we need to explicitly trigger section
3809         recalc or otherwise layout won't catch it.
3810         (WebCore::RenderTable::removeChild): when child to be removed is
3811         m_caption, make sure to trigger style recalc on the table.
3812         (WebCore::RenderTable::recalcCaption): code to destroy captions
3813         other than the first one.
3814         (WebCore::RenderTable::recalcSections): call recalcCaption
3815         helper. Store the next sibling early since child can get destroyed
3816         in recalcCaption.
3817         * rendering/RenderTable.h:
3818
3819 2011-04-29  David Kilzer  <ddkilzer@apple.com>
3820
3821         Remove WML
3822         https://bugs.webkit.org/show_bug.cgi?id=59678
3823
3824         * DerivedSources.make: Removed $(WebCore)/wml path in VPATH.
3825
3826 2011-04-29  James Robinson  <jamesr@chromium.org>
3827
3828         Unreviewed, rolling out r85330.
3829         http://trac.webkit.org/changeset/85330
3830         https://bugs.webkit.org/show_bug.cgi?id=41311
3831
3832         Caused unexpected border rendering change on 500 tests on chromium linux.
3833
3834         * platform/graphics/skia/GraphicsContextSkia.cpp:
3835         (WebCore::GraphicsContext::drawConvexPolygon):
3836         (WebCore::GraphicsContext::clipConvexPolygon):
3837
3838 2011-04-29  Csaba Osztrogonác  <ossy@webkit.org>
3839
3840         [Qt] Unreviewed buildfix after r85343.
3841
3842         Enable strict OwnPtr for Qt
3843         https://bugs.webkit.org/show_bug.cgi?id=59667
3844
3845         * plugins/win/PluginViewWin.cpp:
3846         (WebCore::PluginView::wndProc):
3847         (WebCore::PluginView::snapshot):
3848
3849 2011-04-29  Csaba Osztrogonác  <ossy@webkit.org>
3850
3851         Reviewed by Adam Barth.
3852
3853         Enable strict OwnPtr for Qt
3854         https://bugs.webkit.org/show_bug.cgi?id=59667
3855
3856         * platform/graphics/qt/ImageBufferQt.cpp:
3857         (WebCore::ImageBufferData::ImageBufferData):
3858         (WebCore::ImageBuffer::ImageBuffer):
3859         * platform/graphics/qt/ImageDecoderQt.cpp:
3860         (WebCore::ImageDecoderQt::setData):
3861         * platform/graphics/qt/ImageDecoderQt.h:
3862         * platform/network/qt/QNetworkReplyHandler.cpp:
3863         (WebCore::QNetworkReplyWrapper::QNetworkReplyWrapper):
3864         (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
3865
3866 2011-04-29  Dean Jackson  <dino@apple.com>
3867
3868         Reviewed by Simon Fraser.
3869
3870         Add ENABLE macro for WebKitAnimation
3871         https://bugs.webkit.org/show_bug.cgi?id=59729
3872
3873         Add new feature to toggle WebKit Animation API.
3874
3875         * Configurations/FeatureDefines.xcconfig:
3876         * GNUmakefile.am:
3877         * dom/Element.idl:
3878         * features.pri:
3879         * page/DOMWindow.idl:
3880
3881 2011-04-29  Dean Jackson  <dino@apple.com>
3882
3883         Reviewed by Simon Fraser.
3884
3885         https://bugs.webkit.org/show_bug.cgi?id=59149
3886         (Regression) Existing animations are not replaced when filling.
3887
3888         Hardware animations that fill forwards were not being correctly
3889         replaced when the animation was removed. The actual animation
3890         logic was working correctly, but it wasn't deleting the
3891         CoreAnimation animation from the PlatformLayer. The fix was
3892         to explicitly call endAnimation when disconnecting the animation
3893         from its RenderObject.
3894
3895         Test: animations/3d/replace-filling-transform.html
3896
3897         * page/animation/AnimationBase.h:
3898         (WebCore::AnimationBase::clear): call endAnimation as the animation is cleared
3899
3900 2011-04-29  Abhishek Arya  <inferno@chromium.org>
3901
3902         Reviewed by Nikolas Zimmermann.
3903
3904         When svg inline text is getting destroyed, make sure to mark
3905         its svg text ancestor as needing a positioning values update.
3906         This helps to recalculate layout attributes and makes sure
3907         that svg inline text is not used again.
3908         https://bugs.webkit.org/show_bug.cgi?id=59161
3909
3910         Test: svg/text/inline-text-destroy-attributes-crash.xhtml
3911
3912         * rendering/svg/RenderSVGInlineText.cpp:
3913         (WebCore::RenderSVGInlineText::destroy):
3914         * rendering/svg/RenderSVGInlineText.h:
3915
3916 2011-04-29  Kevin Ollivier  <kevino@theolliviers.com>
3917
3918         [wx] Unreviewed build fix. Fix wxMSW trunk builds by adding include.
3919
3920         * platform/graphics/wx/GraphicsContextWx.cpp:
3921
3922 2011-04-29  Mike Reed  <reed@google.com>
3923
3924         Reviewed by Ojan Vafai.
3925
3926         Skia: Need to implement GraphicsContext::clipConvexPolygon()
3927         https://bugs.webkit.org/show_bug.cgi?id=41311
3928
3929         This does not (yet) enable HAVE_PATH_BASED_BORDER_RADIUS_DRAWING
3930         as that shows other issues/question unrelated to clipping.
3931         https://bugs.webkit.org/show_bug.cgi?id=41311
3932
3933         No new tests. covered by existing layout tests
3934
3935         * platform/graphics/skia/GraphicsContextSkia.cpp:
3936         (WebCore::setPathFromConvexPoints):
3937         (WebCore::GraphicsContext::drawConvexPolygon):
3938         (WebCore::GraphicsContext::clipConvexPolygon):
3939
3940 2011-04-29  Mike Lawther  <mikelawther@chromium.org>
3941
3942         Reviewed by Ojan Vafai.
3943
3944         Fix IR->SR typo in enum value (and resulting style fails)
3945         https://bugs.webkit.org/show_bug.cgi?id=59779
3946
3947         No functionality change, so no new tests
3948
3949         * css/CSSPrimitiveValueMappings.h:
3950         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
3951         (WebCore::CSSPrimitiveValue::operator EShapeRendering):
3952
3953 2011-04-29  Pavel Feldman  <pfeldman@google.com>
3954
3955         Reviewed by Yury Semikhatsky.
3956
3957         Web Inspector: CSS editing breaks when entering "color: rgb(1"
3958         https://bugs.webkit.org/show_bug.cgi?id=59789
3959
3960         Tests: inspector/styles/styles-add-invalid-property.html
3961                inspector/styles/styles-cancel-editing.html
3962                inspector/styles/styles-commit-editing.html
3963
3964         * inspector/front-end/CSSStyleModel.js:
3965         (WebInspector.CSSProperty.prototype.setText.callback):
3966         (WebInspector.CSSProperty.prototype.setText):
3967         * inspector/front-end/StylesSidebarPane.js:
3968         (WebInspector.StylePropertyTreeElement.prototype.selectElement):
3969         (WebInspector.StylePropertyTreeElement.prototype):
3970         (WebInspector.StylePropertyTreeElement.prototype.styleText.updateInterface.majorChange.isRevert.originalPropertyText):
3971         * inspector/front-end/inspector.js:
3972         (WebInspector.startEditing.defaultFinishHandler):
3973         (WebInspector.startEditing.keyDownEventListener):
3974         (WebInspector.startEditing):
3975
3976 2011-04-29  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
3977
3978         Reviewed by Simon Hausmann.
3979
3980         ENABLE(QT_BEARER) -> USE(QT_BEARER)
3981
3982         * WebCore.pri:
3983         * WebCore.pro:
3984         * features.pri:
3985         * platform/network/NetworkStateNotifier.h:
3986         * platform/network/qt/NetworkStateNotifierQt.cpp:
3987
3988 2011-04-29  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
3989
3990         Reviewed by Simon Hausmann.
3991
3992         ENABLE(QT_USERAGENT_DEVICEMODEL) -> USE(QT_MOBILITY_SYSTEMINFO)
3993
3994         * WebCore.pri:
3995         * features.pri:
3996
3997 2011-04-29  Pavel Podivilov  <podivilov@chromium.org>
3998
3999         Reviewed by Pavel Feldman.
4000
4001         Web Inspector: breakpoints set in original and formatted scripts are messed up after navigation.
4002         https://bugs.webkit.org/show_bug.cgi?id=59476
4003
4004         * inspector/front-end/DebuggerPresentationModel.js:
4005         (WebInspector.DebuggerPresentationModel.prototype.setFormatSourceFiles):
4006         (WebInspector.DebuggerPresentationModel.prototype._removeBreakpointFromDebugger):
4007         (WebInspector.PresentationBreakpoint.prototype.serialize):
4008         * inspector/front-end/ScriptsPanel.js:
4009         (WebInspector.ScriptsPanel.prototype._addOptionToFilesSelect.optionCompare):
4010         (WebInspector.ScriptsPanel.prototype._addOptionToFilesSelect):
4011         (WebInspector.ScriptsPanel.prototype.reset):
4012
4013 2011-04-28  Pavel Podivilov  <podivilov@chromium.org>
4014
4015         Reviewed by Yury Semikhatsky.
4016
4017         Web Inspector: include script end line:column in scriptParsed parameters.
4018         https://bugs.webkit.org/show_bug.cgi?id=59717
4019
4020         * bindings/js/ScriptDebugServer.cpp:
4021         (WebCore::ScriptDebugServer::dispatchDidParseSource):
4022         * bindings/v8/DebuggerScript.js:
4023         ():
4024         * bindings/v8/ScriptDebugServer.cpp:
4025         (WebCore::ScriptDebugServer::dispatchDidParseSource):
4026         * inspector/Inspector.json:
4027         * inspector/InspectorDebuggerAgent.cpp:
4028         (WebCore::InspectorDebuggerAgent::resolveBreakpoint):
4029         (WebCore::InspectorDebuggerAgent::didParseSource):
4030         * inspector/InspectorDebuggerAgent.h:
4031         (WebCore::InspectorDebuggerAgent::Script::Script):
4032         * inspector/ScriptDebugListener.h:
4033         * inspector/front-end/DebuggerModel.js:
4034         (WebInspector.DebuggerModel.prototype._parsedScriptSource):
4035         (WebInspector.DebuggerModel.prototype._failedToParseScriptSource):
4036         (WebInspector.DebuggerDispatcher.prototype.scriptParsed):
4037         * inspector/front-end/Script.js:
4038         (WebInspector.Script):
4039
4040 2011-04-28  Yury Semikhatsky  <yurys@chromium.org>
4041
4042         Reviewed by Pavel Feldman.
4043
4044         Web Inspector: [protocol] Evaluate should expose thrown exception value
4045         https://bugs.webkit.org/show_bug.cgi?id=59000
4046
4047         Each evaluation command may have either thrown or returned result. This is indicated
4048         by wasThrown property in the protocol.
4049
4050         * inspector/InjectedScript.cpp:
4051         (WebCore::InjectedScript::evaluate):
4052         (WebCore::InjectedScript::evaluateOn):
4053         (WebCore::InjectedScript::evaluateOnCallFrame):
4054         (WebCore::InjectedScript::getProperties):
4055         (WebCore::InjectedScript::makeEvalCall):
4056         * inspector/InjectedScript.h:
4057         * inspector/InjectedScriptSource.js:
4058         * inspector/Inspector.json: Removed "error" remote object type, added "wasThrown" property to
4059         the evaluation results.
4060         * inspector/InspectorDebuggerAgent.cpp:
4061         (WebCore::InspectorDebuggerAgent::evaluateOnCallFrame):
4062         * inspector/InspectorDebuggerAgent.h:
4063         * inspector/InspectorRuntimeAgent.cpp:
4064         (WebCore::InspectorRuntimeAgent::evaluate):
4065         (WebCore::InspectorRuntimeAgent::evaluateOn):
4066         (WebCore::InspectorRuntimeAgent::getProperties):
4067         * inspector/InspectorRuntimeAgent.h:
4068         * inspector/front-end/ConsoleView.js:
4069         (WebInspector.ConsoleView.prototype.completions.evaluated):
4070         (WebInspector.ConsoleView.prototype.evalInInspectedWindow):
4071         (WebInspector.ConsoleView.prototype._enterKeyPressed.printResult):
4072         (WebInspector.ConsoleView.prototype._enterKeyPressed):
4073         (WebInspector.ConsoleCommandResult):
4074         * inspector/front-end/DebuggerPresentationModel.js:
4075         (WebInspector.PresenationCallFrame.prototype.evaluate):
4076         * inspector/front-end/ElementsTreeOutline.js:
4077         (WebInspector.ElementsTreeElement.prototype._createTooltipForNode.setTooltip):
4078         * inspector/front-end/ExtensionPanel.js:
4079         (WebInspector.ExtensionSidebarPane.prototype._onEvaluate):
4080         * inspector/front-end/ExtensionServer.js:
4081         (WebInspector.ExtensionServer.prototype._onEvaluateOnInspectedPage):
4082         * inspector/front-end/ObjectPropertiesSection.js:
4083         (WebInspector.ObjectPropertyTreeElement.prototype.update):
4084         * inspector/front-end/PropertiesSidebarPane.js:
4085         (WebInspector.PropertiesSidebarPane.prototype.update.nodePrototypesReady):
4086         * inspector/front-end/SourceFrame.js:
4087         (WebInspector.SourceFrame.prototype._showPopup.showObjectPopup):
4088         (WebInspector.SourceFrame.prototype._showPopup):
4089
4090 2011-04-29  Sheriff Bot  <webkit.review.bot@gmail.com>
4091
4092         Unreviewed, rolling out r85315.
4093         http://trac.webkit.org/changeset/85315
4094         https://bugs.webkit.org/show_bug.cgi?id=59792
4095
4096         Broke script-formatter.html test (Requested by podivilov on
4097         #webkit).
4098
4099         * inspector/front-end/DebuggerPresentationModel.js:
4100         (WebInspector.DebuggerPresentationModel.prototype.setFormatSourceFiles):
4101         (WebInspector.DebuggerPresentationModel.prototype._removeBreakpointFromDebugger.didRemoveBreakpoint):
4102         (WebInspector.DebuggerPresentationModel.prototype._removeBreakpointFromDebugger):
4103         (WebInspector.PresentationBreakpoint.prototype.serialize):
4104         * inspector/front-end/ScriptsPanel.js: