1 2011-09-21 ChangSeok Oh <shivamidow@gmail.com>
3 [GTK] Fix build break when enabling webgl on r95593
4 https://bugs.webkit.org/show_bug.cgi?id=68502
6 Reviewed by Martin Robinson.
8 Add PassOwnPtr.h to GC3DPrivate.h and remove useless one from GC3DGtk.cpp & GC3DPrivate.cpp
12 * platform/graphics/gtk/GraphicsContext3DGtk.cpp:
13 * platform/graphics/gtk/GraphicsContext3DPrivate.cpp:
14 * platform/graphics/gtk/GraphicsContext3DPrivate.h:
16 2011-09-21 Vsevolod Vlasov <vsevik@chromium.org>
18 Web Inspector: clear resource agent resource cache upon resource agent's disable.
19 https://bugs.webkit.org/show_bug.cgi?id=67995
21 Reviewed by Pavel Feldman.
23 Test: http/tests/inspector/network/network-disabling-check-no-memory-leak.html
25 * inspector/InspectorResourceAgent.cpp:
26 (WebCore::InspectorResourceAgent::disable):
28 2011-09-21 David Hyatt <hyatt@apple.com>
30 https://bugs.webkit.org/show_bug.cgi?id=68543
32 Make sure that when regions change dimensions we recompute pagination slices.
34 Reviewed by Simon Fraser.
36 Added new tests in fast/regions.
38 * rendering/LayoutState.cpp:
39 (WebCore::LayoutState::LayoutState):
40 * rendering/LayoutState.h:
41 * rendering/RenderFlowThread.cpp:
42 (WebCore::RenderFlowThread::layout):
43 (WebCore::RenderFlowThread::renderRegionForLine):
44 (WebCore::RenderFlowThread::regionLogicalWidthForLine):
45 * rendering/RenderRegion.cpp:
46 (WebCore::RenderRegion::layout):
47 * rendering/RenderView.cpp:
48 (WebCore::RenderView::pushLayoutState):
49 * rendering/RenderView.h:
50 (WebCore::LayoutStateMaintainer::LayoutStateMaintainer):
51 (WebCore::LayoutStateMaintainer::push):
53 2011-09-21 Xianzhu Wang <wangxianzhu@chromium.org>
55 Ensure TestWebKitAPI works on mac, win, chromium-mac and chromium-linux
56 https://bugs.webkit.org/show_bug.cgi?id=68206
58 Reviewed by Tony Chang.
60 Added two new wtf headers into ForwardingHeaders/wtf to make
61 #include <wtf/...h> cross-platform.
64 * ForwardingHeaders/wtf/MetaAllocator.h: Added.
65 * ForwardingHeaders/wtf/RedBlackTree.h: Added.
67 2011-09-21 David Delaune <david.delaune@googlemail.com>
69 [WinCairo] IconDatabase::defaultIcon always fails for non-CAN_THEME_URL_ICON builds.
70 https://bugs.webkit.org/show_bug.cgi?id=67469
72 Reviewed by Brent Fulgham.
74 No new functionality added in this change.
76 * loader/icon/IconDatabase.cpp: defining CAN_THEME_URL_ICON for the WIN_CAIRO
78 2011-09-20 Ryosuke Niwa <rniwa@webkit.org>
80 Span element gets produced using backspace/delete to merge header with paragraph
81 https://bugs.webkit.org/show_bug.cgi?id=68413
83 Reviewed by Darin Adler.
85 Add p element to the list of elements to retain appearance. Also modified removeStyleFromNode
86 (and renamed to removeStyleFromRules) not to remove inline style declarations because
87 inline styles need to stay on copy.
89 Test: editing/deleting/merge-paragraph-from-p-with-style.html
91 * editing/DeleteSelectionCommand.cpp:
92 (WebCore::DeleteSelectionCommand::saveTypingStyleState):
93 * editing/EditingStyle.cpp:
94 (WebCore::EditingStyle::removeStyleFromRules): Renamed from removeStyleFromNode.
95 * editing/EditingStyle.h:
97 (WebCore::isBlockNodeToRetainAppearance):
98 (WebCore::StyledMarkupAccumulator::serializeNodes):
100 2011-09-21 Alice Boxhall <aboxhall@chromium.org>
102 Report AXValueChanged when value changes in element with role=textbox.
103 https://bugs.webkit.org/show_bug.cgi?id=68201
105 Reviewed by Chris Fleizach.
107 Test: platform/mac/accessibility/textbox-role-reports-notifications.html
109 * accessibility/AccessibilityObject.cpp:
110 (WebCore::AccessibilityObject::isARIATextControl):
111 * accessibility/AccessibilityObject.h:
112 * accessibility/AccessibilityRenderObject.cpp:
113 (WebCore::AccessibilityRenderObject::contentChanged):
114 (WebCore::AccessibilityRenderObject::childrenChanged):
116 2011-09-21 Pavel Feldman <pfeldman@google.com>
118 Web Inspector: introduce Page.enable and Page.disable
119 https://bugs.webkit.org/show_bug.cgi?id=68530
121 Otherwise protocol is violating the contract of not sending
122 notifications by default.
124 Reviewed by Yury Semikhatsky.
126 * inspector/Inspector.json:
128 2011-09-21 Pavel Feldman <pfeldman@google.com>
130 Web Inspector: add minimal error handling to the DOM breakpoints.
131 https://bugs.webkit.org/show_bug.cgi?id=68537
133 Reviewed by Yury Semikhatsky.
135 * inspector/InspectorDOMAgent.h:
136 * inspector/InspectorDOMDebuggerAgent.cpp:
137 (WebCore::domTypeForName):
138 (WebCore::InspectorDOMDebuggerAgent::setDOMBreakpoint):
139 (WebCore::InspectorDOMDebuggerAgent::removeDOMBreakpoint):
141 2011-09-21 Ilya Tikhonovsky <loislo@chromium.org>
143 Web Inspector: make WebInspector a bit more timeline friendly.
144 https://bugs.webkit.org/show_bug.cgi?id=68534
146 I found that the maximum captured stack frame depth tracked by timeline is not
147 very convenient because the average depth of call stack considerably more than five.
148 Another useful trick is console.timeStamp for all backend calls.
150 Reviewed by Yury Semikhatsky.
152 * inspector/CodeGeneratorInspector.pm:
153 * inspector/front-end/TimelinePanel.js:
154 (WebInspector.TimelinePanel.prototype._toggleTimelineButtonClicked):
156 2011-09-21 Jesus Sanchez-Palencia <jesus.palencia@openbossa.org>
158 [Qt][WK2] Implement Download support in WebProcess
159 https://bugs.webkit.org/show_bug.cgi?id=68153
161 Reviewed by Andreas Kling.
163 Refactored QNetworkReplyHandler::finish() in order to add
164 and use the static function QNetworkReplyHandler::errorForReply().
165 This will be used by our Download implementation in WebKit2 (WebProcess)
166 when handling ResourceError.
168 * platform/network/qt/QNetworkReplyHandler.cpp:
169 (WebCore::QNetworkReplyHandler::finish):
170 (WebCore::QNetworkReplyHandler::errorForReply):
171 * platform/network/qt/QNetworkReplyHandler.h:
172 * platform/network/qt/ResourceRequest.h:
174 2011-09-21 Pavel Feldman <pfeldman@google.com>
176 Web Inspector: paint box model colors in Metrics sidebar at all times, do not draw box outlines.
177 https://bugs.webkit.org/show_bug.cgi?id=68240
179 Today we paint backgrounds in Metrics box model on hover only - should be painted at all
180 times for the reference. Outlining boxes is highlight is wrong since outlines are outside
181 the corresponding box regions. We've seen few reports on that + Firebug does not do borders
184 Reviewed by Yury Semikhatsky.
186 * inspector/DOMNodeHighlighter.cpp:
187 * inspector/DOMNodeHighlighter.h:
188 * inspector/Inspector.json:
189 * inspector/InspectorDOMAgent.cpp:
190 (WebCore::InspectorDOMAgent::setHighlightDataFromConfig):
191 * inspector/front-end/Color.js:
192 * inspector/front-end/MetricsSidebarPane.js:
193 (WebInspector.MetricsSidebarPane.prototype._highlightDOMNode):
194 (WebInspector.MetricsSidebarPane.prototype._updateMetrics):
195 * inspector/front-end/inspector.css:
197 * inspector/front-end/inspector.js:
198 (WebInspector.buildHighlightConfig):
200 2011-09-21 Andreas Kling <kling@webkit.org>
202 Protect against misuse of EventListenerIterator.
203 https://bugs.webkit.org/show_bug.cgi?id=68364
205 Reviewed by Darin Adler.
207 In debug mode, keep track of the number of active EventListenerIterators
208 on an EventListenerMap, and assert that there are no iterators when the
209 map is being modified.
211 * dom/EventListenerMap.cpp:
212 (WebCore::EventListenerMap::EventListenerMap):
213 (WebCore::EventListenerMap::clear):
214 (WebCore::EventListenerMap::add):
215 (WebCore::EventListenerMap::remove):
216 (WebCore::EventListenerMap::find):
217 (WebCore::EventListenerMap::removeFirstEventListenerCreatedFromMarkup):
218 (WebCore::EventListenerMap::copyEventListenersNotCreatedFromMarkupToTarget):
219 (WebCore::EventListenerIterator::EventListenerIterator):
220 (WebCore::EventListenerIterator::~EventListenerIterator):
221 * dom/EventListenerMap.h:
223 2011-09-21 Pavel Feldman <pfeldman@google.com>
225 Web Inspector: minor fixes in the DOM domain of the protocol.
226 https://bugs.webkit.org/show_bug.cgi?id=68517
228 Reviewed by Yury Semikhatsky.
230 * inspector/Inspector.json:
231 * inspector/InspectorDOMAgent.cpp:
232 (WebCore::InspectorDOMAgent::setAttributesAsText):
233 * inspector/InspectorDOMAgent.h:
234 * inspector/front-end/DOMAgent.js:
235 (WebInspector.DOMNode.prototype.setAttribute):
237 2011-09-16 Pavel Feldman <pfeldman@google.com>
239 Web Inspector: limit the use of "Resource" term in the protocol.
240 https://bugs.webkit.org/show_bug.cgi?id=68250
242 Reviewed by Yury Semikhatsky.
244 * inspector/Inspector.json:
245 * inspector/InspectorResourceAgent.cpp:
246 (WebCore::InspectorResourceAgent::markResourceAsCached):
247 (WebCore::InspectorResourceAgent::didLoadResourceFromMemoryCache):
248 (WebCore::InspectorResourceAgent::setExtraHTTPHeaders):
249 (WebCore::InspectorResourceAgent::getResponseBody):
250 * inspector/InspectorResourceAgent.h:
251 * inspector/front-end/ExtensionServer.js:
252 (WebInspector.ExtensionServer.prototype._onAddRequestHeaders):
253 * inspector/front-end/NetworkManager.js:
254 (WebInspector.NetworkManager.prototype.requestContent):
255 (WebInspector.NetworkDispatcher.prototype.requestServedFromCache):
256 (WebInspector.NetworkDispatcher.prototype.requestServedFromMemoryCache):
258 2011-09-21 Sheriff Bot <webkit.review.bot@gmail.com>
260 Unreviewed, rolling out r95608.
261 http://trac.webkit.org/changeset/95608
262 https://bugs.webkit.org/show_bug.cgi?id=68521
264 breaks GTK and Windows builds. Please check EWS next time.
265 (Requested by philn-tp on #webkit).
267 * html/HTMLBodyElement.cpp:
268 (WebCore::adjustForZoom):
269 (WebCore::HTMLBodyElement::setScrollLeft):
270 (WebCore::HTMLBodyElement::setScrollTop):
271 * loader/HistoryController.cpp:
272 (WebCore::HistoryController::saveScrollPositionAndViewStateToItem):
273 * page/DOMWindow.cpp:
274 (WebCore::DOMWindow::scrollX):
275 (WebCore::DOMWindow::scrollY):
276 (WebCore::DOMWindow::scrollTo):
278 (WebCore::Frame::pageScaleFactor):
280 * page/FrameView.cpp:
281 (WebCore::FrameView::applyOverflowToViewport):
282 (WebCore::FrameView::scrollXForFixedPosition):
283 (WebCore::FrameView::scrollYForFixedPosition):
285 2011-09-21 Pavel Feldman <pfeldman@google.com>
287 Web Inspector: console panel's scroller is not properly aligned.
288 https://bugs.webkit.org/show_bug.cgi?id=68448
290 Reviewed by Yury Semikhatsky.
292 * inspector/front-end/inspector.css:
295 (#drawer #console-messages):
297 2011-09-20 Alpha Lam <hclam@chromium.org>
299 https://bugs.webkit.org/show_bug.cgi?id=68081
300 Fix scroll in page scaling mode.
302 Reviewed by Simon Fraser.
304 The following things are done in this patch:
305 1. Rename Frame::pageScaleFactor() to Frame::frameScaleFactor() to better
307 2. Frame::frameScaleFactor() returns the scale factor of this frame with
308 respect to the container. So for the main frame it'll return the scale
309 factor of the page, inner frames will return 1.0
310 3. scrollBy(), scrollX() and scrollY() to take into account of the frame
311 scale factor, causing incorrect coordinates reported to Javascript.
313 Tests: fast/events/scale-and-scroll-body.html
314 fast/events/scale-and-scroll-iframe-body.html
315 fast/events/scale-and-scroll-iframe-window.html
316 fast/events/scale-and-scroll-window.html
318 * html/HTMLBodyElement.cpp:
319 (WebCore::adjustForZoom):
320 (WebCore::HTMLBodyElement::setScrollLeft):
321 (WebCore::HTMLBodyElement::setScrollTop):
322 * loader/HistoryController.cpp:
323 (WebCore::HistoryController::saveScrollPositionAndViewStateToItem):
324 * page/DOMWindow.cpp:
325 (WebCore::DOMWindow::scrollX):
326 (WebCore::DOMWindow::scrollY):
327 (WebCore::DOMWindow::scrollTo):
329 (WebCore::Frame::frameScaleFactor): Return page's scale factor if this is
330 main frame, otherwise 1.0
332 * page/FrameView.cpp:
333 (WebCore::FrameView::applyOverflowToViewport):
334 (WebCore::FrameView::scrollXForFixedPosition):
335 (WebCore::FrameView::scrollYForFixedPosition):
337 2011-09-21 Andras Becsi <andras.becsi@nokia.com>
339 [Qt] Remove Qt specific code from css/SelectorChecker.cpp
340 https://bugs.webkit.org/show_bug.cgi?id=67702
342 Reviewed by Csaba Osztrogonác.
346 * css/SelectorChecker.cpp: Move Qt-specific code to the Qt-specific WebPlatformStrategies.
347 (WebCore::SelectorChecker::determineLinkStateSlowCase):
348 * platform/VisitedLinkStrategy.h:
350 2011-09-16 MORITA Hajime <morrita@google.com>
352 Style changes on forwarded shadow children should trigger shadow renderer reconstruction.
353 https://bugs.webkit.org/show_bug.cgi?id=68228
355 Reviewed by Dimitri Glazkov.
357 Currently style changes on forwarded shadow child triggers
358 Node::reattach() only for the forwarded node. But it should
359 invalidate whole renderers on the shadow tree because
360 ShadowContentElement expects its inclusions to be attached and to
361 create renderers in the inclusion order. But single node
362 reattach() violates the expectation and possibly creates
363 inconsistent render tree.
365 This change makes NodeRenderingContext to go
366 AttachContentForwarded, where the ShadowContentElement::attach()
367 happens, only during ShadowRoot::attach(), not for style-change
368 triggered Node::attach() on the forwarded nodes.
370 Note that the altering phase AttachContentLight doesn't create
371 renderers for the forwarded nodes. Instead of that, it possibly
372 triggers shadow subtree reconstruction on
373 NodeRenderingContext::hostChildrenChanged().
375 No new tests. This is a defensive change. There is no visible
376 difference at this time.
378 * dom/NodeRenderingContext.cpp:
379 (WebCore::NodeRenderingContext::NodeRenderingContext):
380 * dom/ShadowRoot.cpp:
381 (WebCore::ShadowRoot::isInclusionSelectorActive):
384 2011-09-20 MORITA Hajime <morrita@google.com>
386 <meter> doesn't update rendering when its value is changed.
387 https://bugs.webkit.org/show_bug.cgi?id=67614
389 Reviewed by Dimitri Glazkov.
391 It lacks repaint() when the value is changed.
393 For non-native appearance it works because the indicator is
394 implemented in shadow DOM, for native appearance, repainting should be
397 Test: fast/dom/HTMLMeterElement/meter-element-repaint-on-update-value.html
399 * html/HTMLMeterElement.cpp:
400 (WebCore::HTMLMeterElement::didElementStateChange):
401 * rendering/RenderMeter.cpp:
402 (WebCore::RenderMeter::updateFromElement):
403 * rendering/RenderMeter.h:
404 * rendering/RenderProgress.cpp:
405 (WebCore::RenderProgress::updateAnimationState):
407 2011-09-20 Kent Tamura <tkent@chromium.org>
409 Move RenderObject::markContainingBlocksForLayout() to RenderObject.cpp.
410 https://bugs.webkit.org/show_bug.cgi?id=67989
412 Reviewed by Ryosuke Niwa.
414 No new tests because of no behavior change.
416 * rendering/RenderObject.cpp:
417 (WebCore::objectIsRelayoutBoundary): Moved from RenderObject.h.
418 (WebCore::RenderObject::markContainingBlocksForLayout): Moved from RenderObject.h
419 * rendering/RenderObject.h:
421 2011-09-20 Rachel Blum <groby@chromium.org>
423 Support for multiple <link rel="icon"> favicon elements.
424 https://bugs.webkit.org/show_bug.cgi?id=65564
426 Reviewed by Darin Fisher.
428 No tests - purely an API change. (And API is not exposed to LayoutTests)
431 (WebCore::Document::iconURLs):
432 (WebCore::Document::addIconURL):
435 (WebCore::toIconIndex):
437 (WebCore::IconURL::IconURL):
438 * html/HTMLLinkElement.cpp:
439 (WebCore::HTMLLinkElement::process):
440 * loader/LinkLoader.cpp:
441 (WebCore::LinkLoader::loadLink):
442 * loader/LinkLoader.h:
443 * loader/icon/IconController.cpp:
444 (WebCore::IconController::urlsForTypes):
445 (WebCore::IconController::appendToIconURLs):
446 (WebCore::IconController::defaultURL):
448 2011-09-20 Ojan Vafai <ojan@chromium.org>
450 [css3-flexbox] cleanup padding width calculations
451 https://bugs.webkit.org/show_bug.cgi?id=68490
453 Reviewed by Tony Chang.
455 No new tests. Existing tests cover the refactor.
457 * rendering/RenderFlexibleBox.cpp:
458 (WebCore::RenderFlexibleBox::logicalBorderAndPaddingWidthForChild):
459 (WebCore::RenderFlexibleBox::logicalScrollbarHeightForChild):
460 (WebCore::RenderFlexibleBox::preferredLogicalContentWidthForFlexItem):
461 (WebCore::RenderFlexibleBox::computePreferredLogicalWidth):
462 (WebCore::RenderFlexibleBox::layoutAndPlaceChildrenInlineDirection):
463 * rendering/RenderFlexibleBox.h:
465 2011-09-19 Jer Noble <jer.noble@apple.com>
467 Fix clang compile errors in Web Audio
468 https://bugs.webkit.org/show_bug.cgi?id=68384
470 Reviewed by David Levin.
472 No new tests; no net change in functionality.
474 * platform/graphics/MediaPlayer.h: Forward declare (instead of including directly)
476 * webaudio/AudioChannelMerger.cpp:
477 (WebCore::AudioChannelMerger::checkNumberOfChannelsForInput): Remove unused parameter name.
479 2011-09-20 John Gregg <johnnyg@google.com>
481 Directory Upload: parent path can truncate first char of the correct path
482 https://bugs.webkit.org/show_bug.cgi?id=66695
484 In some cases, if the parent path we compute ends with a separator
485 character like '/' or 'C:\', by adding one in an attempt to grab the
486 subsequent separator we actually grab a character of the real path,
489 Reviewed by Darin Fisher.
491 * html/FileInputType.cpp:
492 (WebCore::FileInputType::setFileList):
494 2011-09-20 Jochen Eisinger <jochen@chromium.org>
496 Invoke CachedResourceLoader::canRequest for all URLs in a redirect chain
497 https://bugs.webkit.org/show_bug.cgi?id=68279
499 Reviewed by Adam Barth.
501 * loader/cache/CachedResourceLoader.h:
502 * loader/cache/CachedResourceRequest.cpp:
503 (WebCore::CachedResourceRequest::willSendRequest):
505 2011-09-18 Ojan Vafai <ojan@chromium.org>
507 change RenderFlexibleBox to act on logical coordinates
508 https://bugs.webkit.org/show_bug.cgi?id=68129
510 Reviewed by David Hyatt.
512 This makes RenderFlexibleBox respect direction and writing-mode.
513 We now properly support the default flex-flow value of "row".
515 Test: css3/flexbox/writing-modes.html
517 * rendering/RenderBlock.cpp:
518 (WebCore::RenderBlock::setLogicalLocationForChild):
519 * rendering/RenderBlock.h:
520 * rendering/RenderFlexibleBox.cpp:
521 (WebCore::RenderFlexibleBox::layoutBlock):
522 (WebCore::RenderFlexibleBox::logicalBorderWidthForChild):
523 (WebCore::RenderFlexibleBox::logicalPaddingWidthForChild):
524 (WebCore::RenderFlexibleBox::logicalScrollbarHeightForChild):
525 (WebCore::RenderFlexibleBox::marginStartStyleForChild):
526 (WebCore::RenderFlexibleBox::marginEndStyleForChild):
527 (WebCore::RenderFlexibleBox::preferredLogicalContentWidthForFlexItem):
528 (WebCore::RenderFlexibleBox::layoutInlineDirection):
529 (WebCore::RenderFlexibleBox::logicalPositiveFlexForChild):
530 (WebCore::RenderFlexibleBox::logicalNegativeFlexForChild):
531 (WebCore::RenderFlexibleBox::computePreferredLogicalWidth):
532 (WebCore::RenderFlexibleBox::runFreeSpaceAllocationAlgorithmInlineDirection):
533 (WebCore::RenderFlexibleBox::setLogicalOverrideSize):
534 (WebCore::RenderFlexibleBox::layoutAndPlaceChildrenInlineDirection):
535 * rendering/RenderFlexibleBox.h:
537 2011-09-20 Marshall Greenblatt <marshall@chromium.org>
539 Use DEFINE_STATIC_LOCAL to intentionally leak the static RefCountedHFONT object returned from
540 FontPlatformData::hashTableDeletedFontValue() to avoid global destructor ordering problems.
541 https://bugs.webkit.org/show_bug.cgi?id=67906
543 Reviewed by Adam Barth.
545 * platform/graphics/chromium/FontPlatformDataChromiumWin.cpp:
547 2011-09-20 Ryosuke Niwa <rniwa@webkit.org>
549 Hit testing on margins of body and head elements doesn't recur
550 https://bugs.webkit.org/show_bug.cgi?id=40753
552 Reviewed by Darin Adler.
554 The bug was caused by positionForPointRespectingEditingBoundaries's comparing the editability
555 of head/body and html elements when hit testing was done inside margins of head and body elements.
557 Fixed the bug by special-casing html element since margins of head and body elements are special.
559 Tests: editing/selection/click-on-body-margin.html
560 editing/selection/click-on-head-margin.html
562 * rendering/RenderBlock.cpp:
563 (WebCore::positionForPointRespectingEditingBoundaries):
565 2011-09-20 David Hyatt <hyatt@apple.com>
567 https://bugs.webkit.org/show_bug.cgi?id=68480
569 De-virtualize containingBlock() and make RenderView return 0 instead
570 of itself to make the construction of normal loops that terminate via
571 a null-check possible.
573 Fix the only two places in the tree that needed null checks.
575 Eliminating RenderTableCell::containingBlock() is fine since the base class
576 does the same thing anyway.
578 Reviewed by Simon Fraser.
580 * editing/VisiblePosition.cpp:
581 (WebCore::VisiblePosition::lineDirectionPointForBlockDirectionNavigation):
582 * rendering/RenderObject.cpp:
583 (WebCore::RenderObject::containingBlock):
584 * rendering/RenderObject.h:
585 * rendering/RenderTableCell.cpp:
586 * rendering/RenderTableCell.h:
587 * rendering/RenderTreeAsText.cpp:
588 (WebCore::RenderTreeAsText::writeRenderObject):
589 * rendering/RenderView.cpp:
590 * rendering/RenderView.h:
592 2011-09-20 Anders Carlsson <andersca@apple.com>
594 Remove ScrollView::platformContentsSize
595 https://bugs.webkit.org/show_bug.cgi?id=68188
597 Reviewed by Darin Adler.
599 Since ScrollView keeps track of the contents size in ScrollView::m_contentsSize, we never
600 have to ask the underlying platform scroll view for contents size since it should always just
601 be equal to m_contentsSize.
603 * platform/ScrollView.cpp:
604 (WebCore::ScrollView::contentsSize):
605 (WebCore::ScrollView::wheelEvent):
606 * platform/ScrollView.h:
607 * platform/mac/ScrollViewMac.mm:
608 * platform/wx/ScrollViewWx.cpp:
610 2011-09-20 Alexis Menard <alexis.menard@openbossa.org>
612 [Qt] [WK2] Implement a persistent cookie storage.
613 https://bugs.webkit.org/show_bug.cgi?id=65309
615 Reviewed by Chang Shu.
617 Implement a cookie storage for the Qt port on WebKit2.
618 The implementation is using a SQLite database to store the cookies
619 and restore them. It uses a static object as CookieJar is not an
620 object but a set of global functions. The actual saving/restoring is on
621 the WebProcess side where our network stack lives.
623 Existing tests cover the new implementation. Unfortunately there is one
624 case that we can't easily simulate : login in a website, make sure that the webprocess
625 is not running and then going back to this website and see that we are logged.
629 * platform/qt/CookieJarQt.cpp:
630 (WebCore::getHostnamesWithCookies):
631 (WebCore::deleteCookiesForHostname):
632 (WebCore::deleteAllCookies):
633 (WebCore::SharedCookieJarQt::shared):
634 (WebCore::SharedCookieJarQt::create):
635 (WebCore::SharedCookieJarQt::destroy):
636 (WebCore::SharedCookieJarQt::getHostnamesWithCookies):
637 (WebCore::SharedCookieJarQt::deleteCookiesForHostname):
638 (WebCore::SharedCookieJarQt::deleteAllCookies):
639 (WebCore::SharedCookieJarQt::SharedCookieJarQt):
640 (WebCore::SharedCookieJarQt::~SharedCookieJarQt):
641 (WebCore::SharedCookieJarQt::setCookiesFromUrl):
642 (WebCore::SharedCookieJarQt::ensureDatabaseTable):
643 (WebCore::SharedCookieJarQt::loadCookies):
644 * platform/qt/CookieJarQt.h: Added.
646 2011-09-20 David Hyatt <hyatt@apple.com>
648 https://bugs.webkit.org/show_bug.cgi?id=68314
650 Make sure that the containing block loop when clipping to border-radius
651 terminates by checking if you hit the RenderView. Null checking isn't sufficient
652 for stupid historical reasons that should be fixed (i.e., the RenderView returns itself
653 as its own containing block, even though this should just be changed).
655 Reviewed by Simon Fraser and Darin Adler.
657 Added new test in fast/clip.
659 * rendering/RenderLayer.cpp:
660 (WebCore::inContainingBlockChain):
662 2011-09-20 Dan Bernstein <mitz@apple.com>
664 MathML renderers do not override RenderObject::renderName()
665 https://bugs.webkit.org/show_bug.cgi?id=68461
667 Reviewed by Darin Adler.
669 Added implementations of renderName() in MathML RenderObject subclasses.
671 * rendering/mathml/RenderMathMLBlock.h:
672 (WebCore::RenderMathMLBlock::renderName):
673 * rendering/mathml/RenderMathMLFenced.h:
674 (WebCore::RenderMathMLFenced::renderName):
675 * rendering/mathml/RenderMathMLFraction.h:
676 (WebCore::RenderMathMLFraction::renderName):
677 * rendering/mathml/RenderMathMLMath.h:
678 (WebCore::RenderMathMLMath::renderName):
679 * rendering/mathml/RenderMathMLOperator.h:
680 (WebCore::RenderMathMLOperator::renderName):
681 * rendering/mathml/RenderMathMLRoot.h:
682 (WebCore::RenderMathMLRoot::renderName):
683 * rendering/mathml/RenderMathMLRow.h:
684 (WebCore::RenderMathMLRow::renderName):
685 * rendering/mathml/RenderMathMLSquareRoot.h:
686 (WebCore::RenderMathMLSquareRoot::renderName):
687 * rendering/mathml/RenderMathMLSubSup.h:
688 (WebCore::RenderMathMLSubSup::renderName):
689 * rendering/mathml/RenderMathMLUnderOver.h:
690 (WebCore::RenderMathMLUnderOver::renderName):
692 2011-09-20 ChangSeok Oh <shivamidow@gmail.com>
694 [GTK] requestAnimationFrame support for gtk port
695 https://bugs.webkit.org/show_bug.cgi?id=66280
697 Reviewed by Martin Robinson.
699 Add some files to build-target & activate ENABLE_REQUEST_ANIMATION_FRAME flag
700 when enabling requestAnimationFrame option.
702 fast/animation/request-animation-frame-cancel.html
703 fast/animation/request-animation-frame-cancel2.html
704 fast/animation/request-animation-frame-display.html
705 fast/animation/request-animation-frame-during-modal.html
706 fast/animation/request-animation-frame-timestamps.html
707 fast/animation/request-animation-frame-within-callback.html
708 fast/animation/request-animation-frame.html
711 * GNUmakefile.list.am:
713 2011-09-20 Aaron Boodman <aa@chromium.org>
715 Rework script context creation/release notifications
716 https://bugs.webkit.org/show_bug.cgi?id=67828
718 Reviewed by Adam Barth.
720 * bindings/v8/V8DOMWindowShell.cpp:
721 (WebCore::V8DOMWindowShell::disposeContextHandles):
722 (WebCore::V8DOMWindowShell::initContextIfNeeded):
723 * bindings/v8/V8IsolatedContext.cpp:
724 (WebCore::V8IsolatedContext::V8IsolatedContext):
725 (WebCore::V8IsolatedContext::destroy):
726 * bindings/v8/V8IsolatedContext.h:
727 * loader/EmptyClients.h:
728 (WebCore::EmptyFrameLoaderClient::didCreateScriptContext):
729 (WebCore::EmptyFrameLoaderClient::willReleaseScriptContext):
730 * loader/FrameLoaderClient.h:
732 2011-09-19 Oliver Hunt <oliver@apple.com>
734 Refactor Heap allocation logic into separate AllocationSpace class
735 https://bugs.webkit.org/show_bug.cgi?id=68409
737 Reviewed by Gavin Barraclough.
739 Adding a forwarding header.
741 * ForwardingHeaders/heap/AllocationSpace.h: Added.
743 2011-09-20 Geoffrey Garen <ggaren@apple.com>
747 * WebCorePrefix.h: Removed stray text from accidental paste.
749 2011-09-19 Geoffrey Garen <ggaren@apple.com>
751 Removed BREWMP* platform #ifdefs
752 https://bugs.webkit.org/show_bug.cgi?id=68425
754 BREWMP* has no maintainer, and this is dead code.
756 Reviewed by Darin Adler.
759 * loader/cache/CachedFont.cpp:
760 * platform/DragData.h:
761 * platform/DragImage.h:
762 * platform/FileSystem.h:
763 * platform/PlatformKeyboardEvent.h:
764 * platform/PlatformMouseEvent.h:
765 * platform/PlatformTouchEvent.h:
766 * platform/PlatformTouchPoint.h:
767 (WebCore::PlatformTouchPoint::PlatformTouchPoint):
769 * platform/graphics/IntPoint.h:
770 * platform/graphics/IntSize.h:
771 * platform/graphics/WOFFFileFormat.cpp:
772 * platform/graphics/skia/FontCustomPlatformData.cpp:
773 (WebCore::FontCustomPlatformData::~FontCustomPlatformData):
774 (WebCore::FontCustomPlatformData::fontPlatformData):
775 (WebCore::createFontCustomPlatformData):
776 * platform/graphics/skia/FontCustomPlatformData.h:
777 * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
778 * platform/text/TextBoundaries.cpp:
779 * platform/text/TextEncoding.cpp:
780 (WebCore::TextEncoding::encode):
781 * platform/text/TextEncodingRegistry.cpp:
782 * plugins/PluginViewNone.cpp:
784 2011-09-20 Pavel Feldman <pfeldman@google.com>
786 Web Inspector: Copy Stack Trace lacks newlines on Windows
787 https://bugs.webkit.org/show_bug.cgi?id=68447
789 Reviewed by Joseph Pecoraro.
791 * inspector/front-end/CallStackSidebarPane.js:
792 (WebInspector.CallStackSidebarPane.prototype._copyStackTrace):
794 2011-09-20 Pavel Feldman <pfeldman@google.com>
796 Not reviewed: inspector sanity test fix.
798 * inspector/front-end/inspector.js:
799 (WebInspector.showConsole):
801 2011-09-20 Alexis Menard <alexis.menard@openbossa.org>
803 [Qt][WK2] Add stubs for FULLSCREEN_API on Qt.
804 https://bugs.webkit.org/show_bug.cgi?id=68444
806 Reviewed by Andreas Kling.
808 Create all the stubs necessary for enabling FULLSCREEN_API on the Qt port.
810 No new tests : just stubs.
812 * CodeGenerators.pri:
816 2011-09-20 Sheriff Bot <webkit.review.bot@gmail.com>
818 Unreviewed, rolling out r95509.
819 http://trac.webkit.org/changeset/95509
820 https://bugs.webkit.org/show_bug.cgi?id=68446
822 crashes chromium fast/repaint/japanese-rl-selection-repaint-
823 in-regions.html on Win and Linux (Requested by dslomov on
826 * rendering/RenderBlock.cpp:
827 (WebCore::positionForPointRespectingEditingBoundaries):
829 2011-09-20 Jarred Nicholls <jarred@sencha.com>
831 [Qt] Permit qrc resources to load in QWebSettings::setUserStyleSheetUrl()
832 https://bugs.webkit.org/show_bug.cgi?id=51159
834 Permit any URL with a local scheme to set a user style sheet. Allow qrc
835 resource URLs as arguments to QWebSettings::setUserStyleSheetUrl().
837 Reviewed by Kenneth Rohde Christiansen.
840 (WebCore::Page::userStyleSheetLocationChanged):
841 * platform/qt/KURLQt.cpp:
842 (WebCore::KURL::fileSystemPath):
844 2011-09-20 Csaba Osztrogonác <ossy@webkit.org>
846 [Qt][Mac] Buildfix after r95513.
847 Forwarding headers for WebCore should be generated based on WebCore sources instead of WebKit2.
849 Rubber-stamped by Andras Becsi.
851 * DerivedSources.pro:
852 * WebCore.pro: Add platform/mac/DisplaySleepDisabler.cpp to SOURCES.
854 2011-09-19 Pavel Feldman <pfeldman@google.com>
856 Web Inspector: document Debugger.paused, introduce types for ids in Debugger domain.
857 https://bugs.webkit.org/show_bug.cgi?id=68363
859 Migrates from poorly documented "details" object to explicit parameters
860 containing break type and data.
862 Reviewed by Tony Gentilcore.
864 * inspector/InjectedScriptSource.js:
866 * inspector/Inspector.json:
867 * inspector/InspectorDOMDebuggerAgent.cpp:
868 (WebCore::InspectorDOMDebuggerAgent::didInvalidateStyleAttr):
869 (WebCore::InspectorDOMDebuggerAgent::willInsertDOMNode):
870 (WebCore::InspectorDOMDebuggerAgent::willRemoveDOMNode):
871 (WebCore::InspectorDOMDebuggerAgent::willModifyDOMAttr):
872 (WebCore::InspectorDOMDebuggerAgent::pauseOnNativeEventIfNeeded):
873 (WebCore::InspectorDOMDebuggerAgent::willSendXMLHttpRequest):
874 * inspector/InspectorDebuggerAgent.cpp:
875 (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
876 (WebCore::InspectorDebuggerAgent::schedulePauseOnNextStatement):
877 (WebCore::InspectorDebuggerAgent::cancelPauseOnNextStatement):
878 (WebCore::InspectorDebuggerAgent::pause):
879 (WebCore::InspectorDebuggerAgent::didPause):
880 (WebCore::InspectorDebuggerAgent::didContinue):
881 (WebCore::InspectorDebuggerAgent::breakProgram):
882 (WebCore::InspectorDebuggerAgent::clear):
883 (WebCore::InspectorDebuggerAgent::clearBreakDetails):
884 * inspector/InspectorDebuggerAgent.h:
885 * inspector/front-end/DOMBreakpointsSidebarPane.js:
886 (WebInspector.DOMBreakpointsSidebarPane.prototype.createBreakpointHitStatusMessage.didPushNodeToFrontend):
887 (WebInspector.DOMBreakpointsSidebarPane.prototype.createBreakpointHitStatusMessage):
888 (WebInspector.DOMBreakpointsSidebarPane.prototype.highlightBreakpoint):
889 * inspector/front-end/DebuggerModel.js:
890 (WebInspector.DebuggerModel.prototype._pausedScript):
891 (WebInspector.DebuggerDispatcher.prototype.paused):
892 * inspector/front-end/DebuggerPresentationModel.js:
893 (WebInspector.PresentationCallFrame.prototype.evaluate):
894 * inspector/front-end/ScopeChainSidebarPane.js:
895 (WebInspector.ScopeChainSidebarPane.prototype.update):
896 * inspector/front-end/ScriptsPanel.js:
897 (WebInspector.ScriptsPanel.prototype._debuggerPaused.didCreateBreakpointHitStatusMessage):
898 (WebInspector.ScriptsPanel.prototype._debuggerPaused.else.didGetSourceLocation):
899 (WebInspector.ScriptsPanel.prototype._debuggerPaused):
901 2011-09-19 Pavel Feldman <pfeldman@google.com>
903 Web Inspector: use strict types for Breakpoint and CallFrame ids in the protocol definition.
904 https://bugs.webkit.org/show_bug.cgi?id=68172
906 Reviewed by Tony Gentilcore.
908 * inspector/Inspector.json:
910 2011-09-15 Pavel Feldman <pfeldman@google.com>
912 Web Inspector: refactor ConsoleView, Drawer, ConsolePanel trio. Remove animation
913 from drawer -> panel transition.
914 https://bugs.webkit.org/show_bug.cgi?id=68155
916 ConsoleView, ConsolePanel and Drawer are all Views with custom show/hide implementations
917 and weird DOM element containment. As a result, we have a number of cases when switching
918 console from full panel to drawer mode and back result in UI glitches.
919 For the sake of code clarity and no glitches, I'd like to sacrifice the "grow into full
920 screen" console animation.
922 Reviewed by Tony Gentilcore.
924 * inspector/front-end/ConsoleModel.js:
925 (WebInspector.ConsoleModel):
926 * inspector/front-end/ConsolePanel.js:
927 (WebInspector.ConsolePanel):
928 (WebInspector.ConsolePanel.prototype.get statusBarItems):
929 (WebInspector.ConsolePanel.prototype.show):
930 (WebInspector.ConsolePanel.prototype.hide):
931 * inspector/front-end/ConsoleView.js:
932 (WebInspector.ConsoleView):
933 (WebInspector.ConsoleView.createFilterElement):
934 (WebInspector.ConsoleView.get this):
935 (WebInspector.ConsoleView.prototype.get statusBarItems):
936 (WebInspector.ConsoleView.prototype.wasShown):
937 * inspector/front-end/Drawer.js:
938 (WebInspector.Drawer):
939 (WebInspector.Drawer.prototype.get visible):
940 (WebInspector.Drawer.prototype._constrainHeight):
941 (WebInspector.Drawer.prototype.show.animationFinished):
942 (WebInspector.Drawer.prototype.show):
943 (WebInspector.Drawer.prototype.hide):
944 (WebInspector.Drawer.prototype.resize):
945 (WebInspector.Drawer.prototype._animationDuration):
946 * inspector/front-end/inspector.html:
947 * inspector/front-end/inspector.js:
948 (WebInspector._createGlobalStatusBarItems):
949 (WebInspector._toggleConsoleButtonClicked):
950 (WebInspector.set attached):
951 (WebInspector.windowResize):
952 (WebInspector.documentKeyDown):
954 2011-09-19 Pavel Feldman <pfeldman@google.com>
956 Web Inspector: streamline Console's MessageType and MessageSource semantics.
957 https://bugs.webkit.org/show_bug.cgi?id=68342
959 This change fixes semantics of the MessageSource and MessageType:
960 MessageSource is now the source of the message (be it Network, HTML
961 parser or Console API). MessageType is only defined for the Console API
962 messages and contains the name of the API call (log, dir, dirxml, etc.).
963 Subsequent https://bugs.webkit.org/show_bug.cgi?id=66371 will make MessageType
964 private to the inspector.
966 Reviewed by Tony Gentilcore.
969 (WebCore::Document::logExceptionToConsole):
970 * inspector/ConsoleMessage.cpp:
971 (WebCore::messageSourceValue):
972 (WebCore::messageTypeValue):
973 (WebCore::ConsoleMessage::addToFrontend):
974 * inspector/Inspector.json:
975 * inspector/InspectorConsoleAgent.cpp:
976 (WebCore::InspectorConsoleAgent::didReceiveResponse):
977 (WebCore::InspectorConsoleAgent::didFailLoading):
978 * inspector/front-end/ConsoleMessage.js:
979 (WebInspector.ConsoleMessage.createTextMessage):
980 (WebInspector.ConsoleMessage.prototype._formatMessage):
981 (WebInspector.ConsoleMessage.prototype.toString):
983 (WebCore::printMessageSourceAndLevelPrefix):
984 (WebCore::Console::addMessage):
985 (WebCore::Console::dir):
986 (WebCore::Console::dirxml):
987 (WebCore::Console::group):
988 (WebCore::Console::groupCollapsed):
989 (WebCore::Console::groupEnd):
990 * page/ConsoleTypes.h:
991 * websockets/WebSocketChannel.cpp:
992 (WebCore::WebSocketChannel::didFailSocketStream):
994 2011-09-20 Adenilson Cavalcanti <adenilson.silva@openbossa.org>
996 [Qt] resizeToContent seems to trigger infinite resize on some pages
997 https://bugs.webkit.org/show_bug.cgi?id=43852
999 Reviewed by Kenneth Rohde Christiansen.
1001 InnerHeight and InnerWidth are now calculated using ScrollView::visibleContentRect
1002 including the scrollbars (if any) instead of using ScrollView::frameRect as before.
1004 This makes no behavior change while not using the tiled backing
1005 store and is compliant with the W3C definition stated in the CSSOM
1008 Plus it will return the correct values for tiled backing store,
1009 thus fixing the original bug report by avoiding infinite resize
1010 events caused by wrong innerHeight and innerWidth values.
1012 Test: innerWidth/Height are covered by existing tests. The
1013 non-infinite resizing is covered by a new Qt autotest at
1014 test_qgraphicswebview::windowResizeEvent()
1016 * page/DOMWindow.cpp:
1017 (WebCore::DOMWindow::innerHeight): using ScrollView::visibleContentRect.
1018 (WebCore::DOMWindow::innerWidth): using ScrollView::visibleContentRect.
1020 2011-09-09 Pavel Podivilov <podivilov@chromium.org>
1022 Web Inspector: implement reverse mapping for compiler source maps.
1023 https://bugs.webkit.org/show_bug.cgi?id=67850
1025 Implement the mapping from source code to compiled code. It will be used for
1026 setting breakpoints on source code.
1028 Reviewed by Pavel Feldman.
1030 * inspector/front-end/CompilerSourceMapping.js:
1031 (WebInspector.ClosureCompilerSourceMapping):
1032 (WebInspector.ClosureCompilerSourceMapping.prototype.compiledLocationToSourceLocation):
1033 (WebInspector.ClosureCompilerSourceMapping.prototype.sourceLocationToCompiledLocation):
1034 (WebInspector.ClosureCompilerSourceMapping.prototype._parseMappings):
1036 2011-09-08 Pavel Podivilov <podivilov@chromium.org>
1038 Web Inspector: extract RawSourceCode source mapping logic to helper classes.
1039 https://bugs.webkit.org/show_bug.cgi?id=67789
1041 Reviewed by Pavel Feldman.
1043 * inspector/front-end/SourceFile.js:
1044 (WebInspector.RawSourceCode.prototype.get uiSourceCode):
1045 (WebInspector.RawSourceCode.prototype.rawLocationToUILocation):
1046 (WebInspector.RawSourceCode.prototype.uiLocationToRawLocation):
1047 (WebInspector.RawSourceCode.prototype._createSourceMapping.didRequestContent.didFormatContent):
1048 (WebInspector.RawSourceCode.prototype._createSourceMapping.didRequestContent):
1049 (WebInspector.RawSourceCode.prototype._createSourceMapping):
1050 (WebInspector.RawSourceCode.prototype._saveSourceMapping):
1051 (WebInspector.RawSourceCode.PlainSourceMapping):
1052 (WebInspector.RawSourceCode.PlainSourceMapping.prototype.rawLocationToUILocation):
1053 (WebInspector.RawSourceCode.PlainSourceMapping.prototype.uiLocationToRawLocation):
1054 (WebInspector.RawSourceCode.PlainSourceMapping.prototype.get uiSourceCode):
1055 (WebInspector.RawSourceCode.FormattedSourceMapping):
1056 (WebInspector.RawSourceCode.FormattedSourceMapping.prototype.rawLocationToUILocation):
1057 (WebInspector.RawSourceCode.FormattedSourceMapping.prototype.uiLocationToRawLocation):
1058 (WebInspector.RawSourceCode.FormattedSourceMapping.prototype.get uiSourceCode):
1060 2011-09-20 Carlos Garcia Campos <cgarcia@igalia.com>
1062 [GTK] WebProcess shouldn't use the GTK+ API
1063 https://bugs.webkit.org/show_bug.cgi?id=68062
1065 Reviewed by Martin Robinson.
1067 Move errors code that is common between webki1 and webkit2 to
1068 WebCore so that it can be shared.
1070 * GNUmakefile.list.am: Add new files to compilation.
1071 * platform/gtk/ErrorsGtk.cpp: Added.
1072 (WebCore::cancelledError):
1073 (WebCore::blockedError):
1074 (WebCore::cannotShowURLError):
1075 (WebCore::interruptedForPolicyChangeError):
1076 (WebCore::cannotShowMIMETypeError):
1077 (WebCore::fileDoesNotExistError):
1078 (WebCore::pluginWillHandleLoadError):
1079 * platform/gtk/ErrorsGtk.h: Added.
1081 2011-09-19 Mark Rowe <mrowe@apple.com>
1083 Attempt to fix the Leopard build.
1085 * platform/mac/DisplaySleepDisabler.cpp:
1086 (WebCore::DisplaySleepDisabler::DisplaySleepDisabler):
1087 * platform/mac/DisplaySleepDisabler.h:
1089 2011-09-19 Mark Rowe <mrowe@apple.com>
1091 <http://webkit.org/b/68421> Stop calling UpdateSystemActivity in places where we hold power assertions that achieve the same effect
1093 On SnowLeopard and newer it's not necessary to call UpdateSystemActivity to prevent the screensaver from kicking
1094 in as the NoDisplaySleep assertion now has that effect. It's also not necessary to hold both a NoDisplaySleep and
1095 a NoIdleSleep assertion as the latter is implied by the former.
1097 Since there were multiple copies of the same code to disable display sleep spread across WebCore, WebKit and WebKit2
1098 this patch takes the approach of moving this functionality to a new DisplaySleepDisabler class that lives in WebCore.
1099 A class is used as it makes it easier to reason about the lifetime of the assertions and to ensure that the assertions will
1100 always be released when their owning objects go away.
1102 Reviewed by Dan Bernstein.
1105 * WebCore.xcodeproj/project.pbxproj:
1106 * platform/mac/DisplaySleepDisabler.cpp:
1107 (WebCore::DisplaySleepDisabler::DisplaySleepDisabler): Register for the NoDisplaySleep assertion, and start our
1108 system activity timer when on Leopard.
1109 (WebCore::DisplaySleepDisabler::~DisplaySleepDisabler): Unregister for the assertion.
1110 (WebCore::DisplaySleepDisabler::systemActivityTimerFired): Call UpdateSystemActivity to prevent the screensaver from
1111 triggering on Leopard.
1112 * platform/mac/DisplaySleepDisabler.h:
1113 (WebCore::DisplaySleepDisabler::create):
1114 * platform/mac/WebVideoFullscreenController.h:
1115 * platform/mac/WebVideoFullscreenController.mm:
1116 (-[WebVideoFullscreenController dealloc]):
1117 (-[WebVideoFullscreenController setupVideoOverlay:]): Remove the now-unnecessary explicit use of the WebCore namespace.
1118 (-[WebVideoFullscreenController mediaElement]): Ditto.
1119 (-[WebVideoFullscreenController setMediaElement:]): Ditto.
1120 (-[WebVideoFullscreenController windowDidExitFullscreen]): Ditto.
1121 (-[WebVideoFullscreenController updatePowerAssertions]): Create a DisplaySleepDisabler instance when transitioning from permitting
1122 display sleep to disabling display sleep. Clear out our reference when sleep should be permitted, destroying any
1123 disabler that we own.
1125 2011-09-19 Ryosuke Niwa <rniwa@webkit.org>
1127 Hit testing on margins of body and head elements doesn't recur
1128 https://bugs.webkit.org/show_bug.cgi?id=40753
1130 Reviewed by Darin Adler.
1132 The bug was caused by positionForPointRespectingEditingBoundaries's comparing the editability
1133 of head/body and html elements when hit testing was done inside margins of head and body elements.
1135 Fixed the bug by special-casing html element (any immediate child of render view with a render layer)
1136 since margins of head and body elements are special.
1138 Tests: editing/selection/click-on-body-margin.html
1139 editing/selection/click-on-head-margin.html
1141 * rendering/RenderBlock.cpp:
1142 (WebCore::positionForPointRespectingEditingBoundaries):
1144 2011-09-19 Sheriff Bot <webkit.review.bot@gmail.com>
1146 Unreviewed, rolling out r95493 and r95496.
1147 http://trac.webkit.org/changeset/95493
1148 http://trac.webkit.org/changeset/95496
1149 https://bugs.webkit.org/show_bug.cgi?id=68418
1151 Broke Windows build (Requested by rniwa on #webkit).
1153 * ForwardingHeaders/heap/AllocationSpace.h: Removed.
1155 2011-09-19 James Robinson <jamesr@chromium.org>
1157 [chromium] ContentLayer's texture updater deleted during paint when compositing turns off in the middle of paint
1158 https://bugs.webkit.org/show_bug.cgi?id=68405
1160 Reviewed by Kenneth Russell.
1162 Make TiledLayerChromium's textureUpdater refcounted and hold an explicit reference during paint in case
1163 compositing is turned off halfway through a paint.
1165 * platform/graphics/chromium/ContentLayerChromium.h:
1166 * platform/graphics/chromium/ImageLayerChromium.cpp:
1167 (WebCore::ImageLayerTextureUpdater::create):
1168 * platform/graphics/chromium/ImageLayerChromium.h:
1169 * platform/graphics/chromium/LayerTextureUpdater.h:
1170 * platform/graphics/chromium/LayerTextureUpdaterCanvas.cpp:
1171 (WebCore::LayerTextureUpdaterBitmap::create):
1172 (WebCore::LayerTextureUpdaterSkPicture::create):
1173 * platform/graphics/chromium/LayerTextureUpdaterCanvas.h:
1174 * platform/graphics/chromium/TiledLayerChromium.cpp:
1175 (WebCore::TiledLayerChromium::prepareToUpdate):
1177 2011-09-19 Luke Macpherson <macpherson@chromium.org>
1179 Eliminate Length::undefinedLength = -1 and replace with Undefined LengthType.
1180 https://bugs.webkit.org/show_bug.cgi?id=68057
1182 Reviewed by Darin Adler.
1184 There appear to be many cases where -1 is actually a valid Length.
1185 Encoding the validity of Length separately to the value is a natural solution.
1187 No new tests / no behavioral changes.
1189 * css/CSSComputedStyleDeclaration.cpp:
1190 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1191 * css/CSSPrimitiveValue.cpp:
1192 (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
1193 * css/CSSStyleApplyProperty.cpp:
1194 (WebCore::ApplyPropertyLength::applyValue):
1195 * platform/Length.h:
1196 (WebCore::Length::Length):
1197 (WebCore::Length::value):
1198 (WebCore::Length::calcValue):
1199 (WebCore::Length::calcMinValue):
1200 (WebCore::Length::calcFloatValue):
1201 (WebCore::Length::isUndefined):
1202 * rendering/RenderBlock.cpp:
1203 (WebCore::RenderBlock::computePreferredLogicalWidths):
1204 * rendering/RenderDeprecatedFlexibleBox.cpp:
1205 (WebCore::RenderDeprecatedFlexibleBox::computePreferredLogicalWidths):
1206 * rendering/RenderFileUploadControl.cpp:
1207 (WebCore::RenderFileUploadControl::computePreferredLogicalWidths):
1208 * rendering/RenderImage.cpp:
1209 (WebCore::RenderImage::isLogicalWidthSpecified):
1210 (WebCore::RenderImage::isLogicalHeightSpecified):
1211 * rendering/RenderListBox.cpp:
1212 (WebCore::RenderListBox::computePreferredLogicalWidths):
1213 * rendering/RenderMenuList.cpp:
1214 (WebCore::RenderMenuList::computePreferredLogicalWidths):
1215 * rendering/RenderReplaced.cpp:
1216 (WebCore::RenderReplaced::computePreferredLogicalWidths):
1217 * rendering/RenderSlider.cpp:
1218 (WebCore::RenderSlider::computePreferredLogicalWidths):
1219 * rendering/RenderTextControl.cpp:
1220 (WebCore::RenderTextControl::computePreferredLogicalWidths):
1221 * rendering/style/RenderStyle.h:
1222 (WebCore::InheritedFlags::initialMaxSize):
1223 * rendering/svg/RenderSVGRoot.cpp:
1224 (WebCore::RenderSVGRoot::computePreferredLogicalWidths):
1226 2011-09-19 Adam Barth <abarth@webkit.org>
1228 Always enable ENABLE(EVENTSOURCE)
1229 https://bugs.webkit.org/show_bug.cgi?id=68414
1231 Reviewed by Eric Seidel.
1233 EventSource seems to be here to stay. This patch makes WebKit more
1234 hackable by removing this ENABLE macro, as discussed on webkit-dev.
1236 * Configurations/FeatureDefines.xcconfig:
1238 * bindings/cpp/WebDOMEventTarget.cpp:
1240 * bindings/js/JSDOMWindowCustom.cpp:
1241 (WebCore::JSDOMWindow::eventSource):
1242 * bindings/js/JSEventSourceCustom.cpp:
1243 * bindings/js/JSEventTarget.cpp:
1245 (WebCore::toEventTarget):
1246 * bindings/js/JSWorkerContextCustom.cpp:
1247 (WebCore::JSWorkerContext::eventSource):
1248 * bindings/v8/V8DOMWrapper.cpp:
1249 (WebCore::V8DOMWrapper::convertEventTargetToV8Object):
1251 * page/DOMWindow.idl:
1252 * page/EventSource.cpp:
1253 * page/EventSource.h:
1254 * page/EventSource.idl:
1255 * workers/WorkerContext.idl:
1257 2011-09-19 Jeremy Apthorp <jeremya@chromium.org>
1259 Fix a use-after-free: clear the fullscreen change event target queue at
1260 detach time, rather than at destruction time. If this isn't done, it's
1261 possible for the event target queue to be the only thing that
1262 references the document. Then when the document is popped off the queue
1263 and dereferenced in Document::fullScreenChangeDelayTimerFired, the
1264 document is destroyed and the subsequent access to
1265 m_fullScreenChangeEventTargetQueue.isEmpty() accesses free'd memory.
1266 https://bugs.webkit.org/show_bug.cgi?id=67960
1268 Reviewed by Adam Barth.
1271 (WebCore::Document::~Document):
1272 (WebCore::Document::detach):
1274 2011-09-19 Sheriff Bot <webkit.review.bot@gmail.com>
1276 Unreviewed, rolling out r95482.
1277 http://trac.webkit.org/changeset/95482
1278 https://bugs.webkit.org/show_bug.cgi?id=68410
1280 Broke chromium webkit-tests (Requested by dslomov on #webkit).
1282 * platform/image-encoders/skia/JPEGImageEncoder.cpp:
1283 (WebCore::RGBAtoRGB):
1285 2011-09-19 Oliver Hunt <oliver@apple.com>
1287 Refactor Heap allocation logic into separate AllocationSpace class
1288 https://bugs.webkit.org/show_bug.cgi?id=68409
1290 Reviewed by Gavin Barraclough.
1292 Adding a forwarding header.
1294 * ForwardingHeaders/heap/AllocationSpace.h: Added.
1296 2011-09-19 Adam Barth <abarth@webkit.org>
1298 [V8] document.all gets confused about its prototype chain
1299 https://bugs.webkit.org/show_bug.cgi?id=68393
1301 Reviewed by Eric Seidel.
1303 GetRealNamedPropertyInPrototypeChain doesn't call interceptors, so it's
1304 not a good idea to use its return value. It turns out that all the
1305 callers of the API only cared about whether it returns a null handle.
1307 Test: http/tests/security/document-all.html
1309 * bindings/v8/V8Collection.h:
1310 (WebCore::collectionNamedPropertyGetter):
1311 * bindings/v8/custom/V8DOMStringMapCustom.cpp:
1312 (WebCore::V8DOMStringMap::namedPropertyDeleter):
1313 (WebCore::V8DOMStringMap::namedPropertySetter):
1314 * bindings/v8/custom/V8HTMLAllCollectionCustom.cpp:
1315 (WebCore::V8HTMLAllCollection::namedPropertyGetter):
1316 * bindings/v8/custom/V8HTMLCollectionCustom.cpp:
1317 (WebCore::V8HTMLCollection::namedPropertyGetter):
1318 * bindings/v8/custom/V8NamedNodeMapCustom.cpp:
1319 (WebCore::V8NamedNodeMap::namedPropertyGetter):
1320 * bindings/v8/custom/V8StorageCustom.cpp:
1321 (WebCore::storageSetter):
1323 2011-09-19 Adam Barth <abarth@webkit.org>
1325 Named property confusion with __proto__
1326 https://bugs.webkit.org/show_bug.cgi?id=68221
1328 Reviewed by Eric Seidel.
1330 The __proto__ property is super magical because it's not a real named
1331 property and it has higher precedence than even interceptors. This
1332 confuses this check, which is meant to detech which names will get
1333 handled by our interceptor.
1335 Test: http/tests/security/window-named-proto.html
1337 * bindings/v8/custom/V8DOMWindowCustom.cpp:
1338 (WebCore::V8DOMWindow::namedSecurityCheck):
1340 2011-09-19 Adam Barth <abarth@webkit.org>
1342 Rename ENABLE(OPENTYPE_SANITIZER) to USE(OPENTYPE_SANITIZER)
1343 https://bugs.webkit.org/show_bug.cgi?id=68292
1345 Reviewed by Eric Seidel.
1347 OpenType Sanitizer is a library for sanitizing type and not a feature.
1348 Therefore this macro should say that we USE the library.
1350 * platform/graphics/WOFFFileFormat.cpp:
1351 * platform/graphics/WOFFFileFormat.h:
1352 * platform/graphics/mac/FontCustomPlatformData.cpp:
1353 (WebCore::createFontCustomPlatformData):
1354 * platform/graphics/opentype/OpenTypeSanitizer.cpp:
1355 * platform/graphics/opentype/OpenTypeSanitizer.h:
1356 * platform/graphics/skia/FontCustomPlatformData.cpp:
1357 (WebCore::createFontCustomPlatformData):
1358 (WebCore::FontCustomPlatformData::supportsFormat):
1360 2011-09-19 Adam Barth <abarth@webkit.org>
1362 Remove APPLICATION_CACHE_DYNAMIC_ENTRIES and associated code
1363 https://bugs.webkit.org/show_bug.cgi?id=68407
1365 Reviewed by Eric Seidel.
1367 As discussed on webkit-dev, no one appears to be using this code.
1369 * GNUmakefile.list.am:
1373 * WebCore.vcproj/WebCore.vcproj:
1374 * WebCore.xcodeproj/project.pbxproj:
1375 * bindings/js/JSBindingsAllInOne.cpp:
1376 * bindings/js/JSDOMApplicationCacheCustom.cpp: Removed.
1378 2011-09-19 Sheriff Bot <webkit.review.bot@gmail.com>
1380 Unreviewed, rolling out r95385 and r95457.
1381 http://trac.webkit.org/changeset/95385
1382 http://trac.webkit.org/changeset/95457
1383 https://bugs.webkit.org/show_bug.cgi?id=68395
1385 Broke chromium browser_tests (Requested by dslomov on
1388 * bindings/v8/V8DOMWindowShell.cpp:
1389 (WebCore::V8DOMWindowShell::disposeContextHandles):
1390 (WebCore::V8DOMWindowShell::initContextIfNeeded):
1391 * bindings/v8/V8IsolatedContext.cpp:
1392 (WebCore::V8IsolatedContext::V8IsolatedContext):
1393 (WebCore::V8IsolatedContext::destroy):
1394 * bindings/v8/V8IsolatedContext.h:
1395 * loader/EmptyClients.h:
1396 (WebCore::EmptyFrameLoaderClient::didCreateScriptContextForFrame):
1397 (WebCore::EmptyFrameLoaderClient::didDestroyScriptContextForFrame):
1398 (WebCore::EmptyFrameLoaderClient::didCreateIsolatedScriptContext):
1399 * loader/FrameLoaderClient.h:
1401 2011-09-19 John Bauman <jbauman@chromium.org>
1403 Fix nonpremultiplied webgl toDataURL to jpeg
1404 https://bugs.webkit.org/show_bug.cgi?id=68366
1406 The canvas spec says that toDataURL to formats without an alpha must
1407 be "composited onto a solid black background using the source-over
1410 Reviewed by Kenneth Russell.
1412 * platform/image-encoders/skia/JPEGImageEncoder.cpp:
1413 (WebCore::RGBAtoRGB):
1415 2011-09-19 Chris Marrin <cmarrin@apple.com>
1417 Crash can occur when doing a PlatformCAAnimation::copy() with no valueFunction
1418 https://bugs.webkit.org/show_bug.cgi?id=67510
1420 Reviewed by Adam Roben.
1422 Another fix to take care of one last crash when running pause-crash.html.
1423 CACF can't deal with null valueFunctions, so avoid setting it when it doesn't
1426 This also adds logic to the Windows Hook in LayerChangesFlusher to prevent it
1427 from catching the null pointer exception generated by the pause-crash.html test
1428 before this bug was fixed. Windows was ignoring the exception, so the testcase
1429 would appear to succeed, even though it should have crashed.
1431 This is a resubmission of http://trac.webkit.org/changeset/95243 with a build fix.
1433 * WebCore.vcproj/WebCore.vcproj:
1434 * platform/graphics/ca/win/LayerChangesFlusher.cpp:
1435 (WebCore::LayerChangesFlusher::hookCallback):
1436 * platform/graphics/ca/win/PlatformCAAnimationWin.cpp:
1437 (PlatformCAAnimation::copy):
1438 * platform/win/StructuredExceptionHandlerSupressor.h: Added.
1439 (WebCore::StructuredExceptionHandlerSupressor::StructuredExceptionHandlerSupressor):
1440 (WebCore::StructuredExceptionHandlerSupressor::~StructuredExceptionHandlerSupressor):
1442 2011-09-19 Ryosuke Niwa <rniwa@webkit.org>
1444 Incorrect selection with absolutely positioned div
1445 https://bugs.webkit.org/show_bug.cgi?id=39503
1447 Reviewed by Kenneth Rohde Christiansen.
1449 The bug was caused by a false assumption in RenderBlock::positionForPoint. Because the last child box
1450 can be positioned, floated, invisible, etc..., we can't always trust last child's logicalTop to tell us
1451 whether a given point is inside or below the last child box.
1453 Fixed the bug by using the last hit-test candidate instead.
1455 Test: editing/selection/block-with-positioned-lastchild.html
1457 * rendering/RenderBlock.cpp:
1458 (WebCore::RenderBlock::positionForPoint):
1460 2011-09-19 Dmitry Titov <dimich@chromium.org>
1462 [Chromium] Crash after magic iframe transfer for Pepper/NaCl plugins.
1463 https://bugs.webkit.org/show_bug.cgi?id=68267
1464 Make adoptNode() to not enable live iframe transfer when the iframe's subtree contains plugins.
1466 Reviewed by Adam Barth.
1468 Test: fast/frames/iframe-reparenting-embed-elements.html
1471 (WebCore::Document::adoptNode):
1472 * html/HTMLFrameElementBase.cpp:
1473 (WebCore::hasPluginElements):
1474 (WebCore::HTMLFrameElementBase::canRemainAliveOnRemovalFromTree):
1475 * html/HTMLFrameElementBase.h:
1477 2011-09-19 Abhishek Arya <inferno@chromium.org>
1479 Issues with merging ruby bases.
1480 https://bugs.webkit.org/show_bug.cgi?id=67240
1482 Reviewed by James Robinson.
1484 1) Change fromBeforeChild to beforeChild to match
1485 webkit rendering naming conventions.
1486 2) Add assert to verify ruby base is indeed emptied
1487 after collecting all children in a single base.
1488 3) Fix condition in mergeBlockChildren to bail out only
1489 when we have no children and there is no work to merge
1492 Test: fast/ruby/ruby-overhang-crash.html
1494 * rendering/RenderRubyBase.cpp:
1495 (WebCore::RenderRubyBase::moveChildren):
1496 (WebCore::RenderRubyBase::moveInlineChildren):
1497 (WebCore::RenderRubyBase::moveBlockChildren):
1498 (WebCore::RenderRubyBase::mergeBlockChildren):
1499 * rendering/RenderRubyBase.h:
1500 * rendering/RenderRubyRun.cpp:
1501 (WebCore::RenderRubyRun::removeChild):
1503 2011-09-16 Abhishek Arya <inferno@chromium.org>
1505 Child not placed correctly when beforeChild (table part)
1506 has both :before, :after content.
1507 https://bugs.webkit.org/show_bug.cgi?id=67656
1509 Reviewed by James Robinson.
1511 Tests: fast/table/table-cell-before-after-content-around-table-block.html
1512 fast/table/table-cell-before-after-content-around-table-row.html
1513 fast/table/table-cell-before-after-content-around-table.html
1514 fast/table/table-row-before-after-content-around-block.html
1515 fast/table/table-row-before-after-content-around-table.html
1517 * rendering/RenderBlock.cpp:
1518 (WebCore::RenderBlock::addChildIgnoringAnonymousColumnBlocks):
1519 1. Use the new helper functions findAfterContentRenderer,
1521 2. Rename anonymousChild to better name - beforeChildAnonymousContainer.
1522 * rendering/RenderObject.cpp:
1523 (WebCore::RenderObject::addChild):
1524 When adding a new child, if beforeChild is a table part(
1525 Table/TableSection/TableRow), we need to check if both
1526 :before, :after content are shoved in one of the anonymous child.
1527 If yes, we need to split the :before, :after content before adding
1528 newChild. Easiest approach is to destroy the :before content, then add
1529 the newChild and then call updateBeforeAfterContent to recreate the
1531 * rendering/RenderObject.h:
1532 (WebCore::RenderObject::findBeforeContentRenderer): same as
1533 beforePseudoElementRenderer, but ignores text childs since they are
1535 (WebCore::RenderObject::findAfterContentRenderer): same.
1536 (WebCore::RenderObject::anonymousContainer):
1537 (WebCore::objectIsRelayoutBoundary):
1538 * rendering/RenderTable.cpp:
1539 (WebCore::RenderTable::addChild): use the new helpers and functionally
1540 correct functions - findAfterContentRenderer, anonymousContainer. previous
1541 implementation was wrong since it would not go inside, if :after content
1542 is embedded deeper than one level.
1543 * rendering/RenderTableRow.cpp:
1544 (WebCore::RenderTableRow::addChild): same.
1545 * rendering/RenderTableSection.cpp:
1546 (WebCore::RenderTableSection::addChild): same.
1548 2011-09-19 Robert Kroeger <rjkroege@chromium.org>
1550 [chromium] Gesture recognizer fires taptype only every other touch
1551 down/up sequence https://bugs.webkit.org/show_bug.cgi?id=68368
1553 Reviewed by Adam Barth.
1555 The addition of doubletap detection to the gesture recognizer missed some of the
1556 outgoing edges in the recognizer state machine. This change simplifies the logic
1557 and handles all outgoing edges.
1559 * platform/chromium/GestureRecognizerChromium.cpp:
1560 (WebCore::GestureRecognizerChromium::GestureRecognizerChromium):
1561 (WebCore::GestureRecognizerChromium::isInSecondClickTimeWindow):
1562 (WebCore::GestureRecognizerChromium::updateValues):
1563 (WebCore::GestureRecognizerChromium::touchDown):
1564 (WebCore::GestureRecognizerChromium::click):
1565 * platform/chromium/GestureRecognizerChromium.h:
1567 2011-09-19 Tom Sepez <tsepez@chromium.org>
1569 Fix xssauditor bypass with unterminated closing tag by making the HTMLSourceTracker
1570 and the HTMLParser interact more closely with each other. HTMLParser should be
1571 setting the end range for the token itself to account for buffering that the
1572 HTMLSourceTracker can't know about, but there are a lot of paths that would need
1573 updating. First step is to cover this one path.
1574 https://bugs.webkit.org/show_bug.cgi?id=68281
1576 Reviewed by Adam Barth.
1578 Test: http/tests/security/xssAuditor/script-tag-with-invalid-closing-tag.html
1580 * html/parser/HTMLSourceTracker.cpp:
1581 (WebCore::HTMLSourceTracker::end):
1582 * html/parser/HTMLTokenizer.cpp:
1583 (WebCore::HTMLTokenizer::nextToken):
1585 2011-09-19 Peter Rybin <peter.rybin@gmail.com>
1587 TextPosition refactoring: Merge ZeroBasedNumber and OneBasedNumber classes
1588 https://bugs.webkit.org/show_bug.cgi?id=63541
1590 Reviewed by Adam Barth.
1592 No new tests because this patch is not changing behavior.
1594 * bindings/js/JavaScriptCallFrame.cpp:
1595 (WebCore::JavaScriptCallFrame::JavaScriptCallFrame):
1596 * bindings/js/JavaScriptCallFrame.h:
1597 (WebCore::JavaScriptCallFrame::create):
1598 (WebCore::JavaScriptCallFrame::position):
1599 (WebCore::JavaScriptCallFrame::update):
1600 * bindings/js/ScriptController.cpp:
1601 (WebCore::ScriptController::eventHandlerLineNumber):
1602 * bindings/js/ScriptDebugServer.cpp:
1603 (WebCore::ScriptDebugServer::hasBreakpoint):
1604 (WebCore::ScriptDebugServer::dispatchDidParseSource):
1605 (WebCore::ScriptDebugServer::createCallFrameAndPauseIfNeeded):
1606 (WebCore::ScriptDebugServer::updateCallFrameAndPauseIfNeeded):
1607 * bindings/js/ScriptDebugServer.h:
1608 * bindings/js/ScriptSourceCode.h:
1609 (WebCore::ScriptSourceCode::ScriptSourceCode):
1610 * bindings/js/StringSourceProvider.h:
1611 (WebCore::StringSourceProvider::create):
1612 (WebCore::StringSourceProvider::startPosition):
1613 (WebCore::StringSourceProvider::StringSourceProvider):
1614 * bindings/v8/ScheduledAction.cpp:
1615 (WebCore::ScheduledAction::ScheduledAction):
1616 * bindings/v8/ScriptController.cpp:
1617 (WebCore::ScriptController::eventHandlerPosition):
1618 * bindings/v8/ScriptController.h:
1619 * bindings/v8/ScriptEventListener.cpp:
1620 (WebCore::createAttributeEventListener):
1621 * bindings/v8/ScriptSourceCode.h:
1622 (WebCore::ScriptSourceCode::ScriptSourceCode):
1623 (WebCore::ScriptSourceCode::startPosition):
1624 * bindings/v8/V8LazyEventListener.cpp:
1625 (WebCore::V8LazyEventListener::V8LazyEventListener):
1626 * bindings/v8/V8LazyEventListener.h:
1627 (WebCore::V8LazyEventListener::create):
1628 * bindings/v8/V8Proxy.cpp:
1629 (WebCore::V8Proxy::compileScript):
1630 (WebCore::V8Proxy::evaluate):
1631 (WebCore::V8Proxy::runScript):
1632 * bindings/v8/V8Proxy.h:
1633 * bindings/v8/WorkerContextExecutionProxy.cpp:
1634 (WebCore::WorkerContextExecutionProxy::evaluate):
1635 (WebCore::WorkerContextExecutionProxy::runScript):
1636 * bindings/v8/WorkerContextExecutionProxy.h:
1637 * bindings/v8/WorkerScriptController.cpp:
1638 (WebCore::WorkerScriptController::evaluate):
1639 * dom/PendingScript.cpp:
1640 (WebCore::PendingScript::releaseElementAndClear):
1641 * dom/PendingScript.h:
1642 (WebCore::PendingScript::PendingScript):
1643 (WebCore::PendingScript::startingPosition):
1644 (WebCore::PendingScript::setStartingPosition):
1645 * dom/ScriptElement.cpp:
1646 (WebCore::ScriptElement::prepareScript):
1647 * dom/ScriptElement.h:
1648 * dom/ScriptableDocumentParser.h:
1649 * dom/ViewportArguments.cpp:
1650 (WebCore::parserLineNumber):
1651 * html/parser/HTMLDocumentParser.cpp:
1652 (WebCore::HTMLDocumentParser::runScriptsForPausedTreeBuilder):
1653 (WebCore::HTMLDocumentParser::pumpTokenizer):
1654 (WebCore::HTMLDocumentParser::lineNumber):
1655 (WebCore::HTMLDocumentParser::textPosition):
1656 * html/parser/HTMLDocumentParser.h:
1657 * html/parser/HTMLInputStream.h:
1658 * html/parser/HTMLScriptRunner.cpp:
1659 (WebCore::HTMLScriptRunner::execute):
1660 (WebCore::HTMLScriptRunner::runScript):
1661 * html/parser/HTMLScriptRunner.h:
1662 * html/parser/HTMLTreeBuilder.cpp:
1663 (WebCore::uninitializedPositionValue1):
1664 (WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
1665 (WebCore::HTMLTreeBuilder::takeScriptToProcess):
1666 (WebCore::HTMLTreeBuilder::processEndTag):
1667 (WebCore::HTMLTreeBuilder::processScriptStartTag):
1668 * html/parser/HTMLTreeBuilder.h:
1669 * inspector/InspectorResourceAgent.cpp:
1670 (WebCore::InspectorResourceAgent::buildInitiatorObject):
1671 * platform/text/SegmentedString.cpp:
1672 (WebCore::SegmentedString::currentLine):
1673 (WebCore::SegmentedString::currentColumn):
1674 (WebCore::SegmentedString::setCurrentPosition):
1675 * platform/text/SegmentedString.h:
1676 * svg/SVGDocumentExtensions.cpp:
1677 (WebCore::parserLineNumber):
1678 * xml/XMLErrors.cpp:
1679 (WebCore::XMLErrors::XMLErrors):
1680 (WebCore::XMLErrors::handleError):
1681 (WebCore::XMLErrors::appendErrorMessage):
1683 * xml/parser/MarkupTokenizerBase.h:
1684 (WebCore::MarkupTokenizerBase::lineNumber):
1685 * xml/parser/NewXMLDocumentParser.cpp:
1686 (WebCore::NewXMLDocumentParser::processScript):
1687 (WebCore::NewXMLDocumentParser::textPosition):
1688 (WebCore::NewXMLDocumentParser::lineNumber):
1689 * xml/parser/NewXMLDocumentParser.h:
1690 * xml/parser/XMLDocumentParser.cpp:
1691 (WebCore::XMLDocumentParser::pushCurrentNode):
1692 (WebCore::XMLDocumentParser::handleError):
1693 * xml/parser/XMLDocumentParser.h:
1694 * xml/parser/XMLDocumentParserLibxml2.cpp:
1695 (WebCore::PendingCallbacks::appendErrorCallback):
1696 (WebCore::XMLDocumentParser::XMLDocumentParser):
1697 (WebCore::XMLDocumentParser::doWrite):
1698 (WebCore::XMLDocumentParser::startElementNs):
1699 (WebCore::XMLDocumentParser::error):
1700 (WebCore::XMLDocumentParser::lineNumber):
1701 (WebCore::XMLDocumentParser::columnNumber):
1702 (WebCore::XMLDocumentParser::textPosition):
1703 * xml/parser/XMLDocumentParserQt.cpp:
1704 (WebCore::XMLDocumentParser::XMLDocumentParser):
1705 (WebCore::XMLDocumentParser::doWrite):
1706 (WebCore::XMLDocumentParser::doEnd):
1707 (WebCore::XMLDocumentParser::lineNumber):
1708 (WebCore::XMLDocumentParser::columnNumber):
1709 (WebCore::XMLDocumentParser::textPosition):
1710 (WebCore::XMLDocumentParser::parse):
1711 (WebCore::XMLDocumentParser::parseStartElement):
1713 2011-09-19 Dan Bernstein <mitz@apple.com>
1715 WebCore part of [mac] WebKit contains Objective-C classes that are not prefixed with its standard prefixes
1716 https://bugs.webkit.org/show_bug.cgi?id=68323
1718 Reviewed by Sam Weinig.
1720 Renamed AccessibilityObjectWrapper to WebAccessibilityObjectWrapper.
1721 Renamed CascadeList to WebCascadeList.
1722 Renamed CookieStorageObjCAdapter to WebCookieStorageObjCAdapter.
1723 Renamed LanguageChangeObserver to WebLanguageChangeObserver.
1724 Renamed ScrollAnimationHelperDelegate to WebScrollAnimationHelperDelegate.
1725 Renamed ScrollbarPainterControllerDelegate to WebScrollbarPainterControllerDelegate.
1726 Renamed ScrollbarPainterDelegate to WebScrollbarPainterDelegate.
1727 Renamed ScrollbarPartAnimation to WebScrollbarPartAnimation.
1728 Renamed ScrollbarPrefsObserver to WebScrollbarPrefsObserver.
1730 * WebCore.gyp/WebCore.gyp: Updated for the renaming of CascadeList to WebCascadeList.
1731 * WebCore.xcodeproj/project.pbxproj:
1732 * accessibility/AccessibilityObject.h:
1733 * accessibility/mac/AXObjectCacheMac.mm:
1734 (WebCore::AXObjectCache::attachWrapper):
1735 * accessibility/mac/AccessibilityObjectMac.mm:
1736 * accessibility/mac/AccessibilityObjectWrapper.h: Removed.
1737 * accessibility/mac/AccessibilityObjectWrapper.mm: Removed.
1738 * accessibility/mac/WebAccessibilityObjectWrapper.h: Copied from Source/WebCore/accessibility/mac/AccessibilityObjectWrapper.h.
1739 * accessibility/mac/WebAccessibilityObjectWrapper.mm: Copied from Source/WebCore/accessibility/mac/AccessibilityObjectWrapper.mm.
1741 (-[WebAccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
1742 (-[WebAccessibilityObjectWrapper accessibilityIndexOfChild:]):
1743 (-[WebAccessibilityObjectWrapper accessibilityArrayAttributeValues:index:maxCount:]):
1744 * platform/graphics/mac/ComplexTextControllerCoreText.mm:
1745 (WebCore::ComplexTextController::collectComplexTextRunsForCharactersCoreText):
1746 * platform/mac/Language.mm:
1747 (WebCore::platformDefaultLanguage):
1748 * platform/mac/ScrollAnimatorMac.h:
1749 * platform/mac/ScrollAnimatorMac.mm:
1750 (-[WebScrollbarPainterDelegate setUpAnimation:scrollerPainter:part:WebCore::animateAlphaTo:duration:]):
1751 (WebCore::ScrollAnimatorMac::ScrollAnimatorMac):
1752 * platform/mac/ScrollbarThemeMac.mm:
1753 (WebCore::ScrollbarThemeMac::ScrollbarThemeMac):
1754 * platform/network/mac/CookieStorageMac.mm:
1755 (WebCore::startObservingCookieChanges):
1757 2011-09-19 Cary Clark <caryclark@google.com>
1759 Move fontDataForCombiningCharacterSequence to fix Skia on Mac build
1760 https://bugs.webkit.org/show_bug.cgi?id=68358
1762 Reviewed by Dan Bernstein.
1766 * platform/graphics/mac/FontMac.mm:
1767 * platform/graphics/mac/FontComplexTextMac.cpp:
1768 (WebCore::Font::fontDataForCombiningCharacterSequence):
1769 This moves the implementation from FontMac.mm to
1770 FontComplexTextMac.cpp, so it is visible to the Skia on Mac
1773 2011-09-19 Jessie Berlin <jberlin@apple.com>
1775 Sites that use history pushState or replaceState are recorded in history in Private Browsing
1777 https://bugs.webkit.org/show_bug.cgi?id=68208
1779 Reviewed by Brady Eidson.
1781 Test: TestWebKitAPI/Tests/WebKit2/PrivateBrowsingPushStateNoHistoryCallback.
1783 Add the privateBrowsingEnabled check that is used in other places in HistoryController
1784 before calling addVisitedLink and FrameLoaderClient::updateGlobalHistory.
1786 * loader/HistoryController.cpp:
1787 (WebCore::HistoryController::pushState):
1788 (WebCore::HistoryController::replaceState):
1790 2011-09-19 Leandro Pereira <leandro@profusion.mobi>
1792 Unreviewed: ScrollbarThemeMock.cpp is already referenced in the
1793 global CMakeLists.txt.
1795 * CMakeListsEfl.txt: Remove reference to platform/mock/ScrollbarThemeMock.cpp.
1796 * CMakeListsWinCE.txt: Ditto.
1798 2011-09-19 Ademar de Souza Reis Jr. <ademar.reis@openbossa.org>
1800 Unreviewed: dos2unix on bindings/js/JSExceptionBase.h
1802 Visual Studio is choking on this file when generating packages for
1806 Source\WebCore\Bindings\js\JSExceptionBase.h:
1807 error C4335: Mac file format detected: please convert the source file
1808 to either DOS or UNIX format
1811 Since from all .cpp or .h files shared by all ports this is the only
1812 one with CRLF line terminations, I'm assuming this was a mistake.
1814 * bindings/js/JSExceptionBase.h:
1816 2011-09-19 Ilya Tikhonovsky <loislo@chromium.org>
1818 Web Inspector: didMarkDOMContentEvent() should send event of MarkDOMContent type.
1819 https://bugs.webkit.org/show_bug.cgi?id=67528
1821 Reviewed by Pavel Feldman.
1823 Tests: inspector/timeline/timeline-dom-content-loaded-event.html
1824 inspector/timeline/timeline-load-event.html
1826 * inspector/InspectorTimelineAgent.cpp:
1827 (WebCore::InspectorTimelineAgent::didMarkDOMContentEvent):
1829 2011-09-19 Shawn Singh <shawnsingh@chromium.org>
1831 Re-name LayerChromium border functions to reflect that
1832 they are only for debug use.
1833 https://bugs.webkit.org/show_bug.cgi?id=68212
1835 Reviewed by James Robinson.
1837 Code cleanup towards unit testing.
1839 * platform/graphics/chromium/GraphicsLayerChromium.cpp:
1840 (WebCore::GraphicsLayerChromium::clearBackgroundColor):
1841 (WebCore::GraphicsLayerChromium::setDebugBackgroundColor):
1842 (WebCore::GraphicsLayerChromium::setDebugBorder):
1843 (WebCore::GraphicsLayerChromium::updateLayerBackgroundColor):
1844 (WebCore::GraphicsLayerChromium::setupContentsLayer):
1845 * platform/graphics/chromium/LayerChromium.cpp:
1846 (WebCore::LayerChromium::setDebugBorderColor):
1847 (WebCore::LayerChromium::setDebugBorderWidth):
1848 * platform/graphics/chromium/LayerChromium.h:
1850 2011-09-18 Ilya Tikhonovsky <loislo@chromium.org>
1852 Web Inspector: requestAnimationFrame callbacks don't show up in the timeline panel.
1853 https://bugs.webkit.org/show_bug.cgi?id=67986
1855 Reviewed by Pavel Feldman.
1857 Test: inspector/timeline/timeline-animation-frame.html
1859 * English.lproj/localizedStrings.js:
1860 * bindings/v8/V8Proxy.cpp:
1861 (WebCore::V8Proxy::callFunction):
1862 (WebCore::V8Proxy::callFunctionWithoutFrame):
1863 (WebCore::V8Proxy::instrumentedCallFunction):
1864 * bindings/v8/V8Proxy.h:
1865 * bindings/v8/custom/V8CustomVoidCallback.cpp:
1866 (WebCore::invokeCallback):
1867 * dom/ScriptedAnimationController.cpp:
1868 (WebCore::ScriptedAnimationController::registerCallback):
1869 (WebCore::ScriptedAnimationController::cancelCallback):
1870 (WebCore::ScriptedAnimationController::serviceScriptedAnimations):
1871 * inspector/InspectorInstrumentation.cpp:
1872 (WebCore::InspectorInstrumentation::didRegisterAnimationFrameCallbackImpl):
1873 (WebCore::InspectorInstrumentation::didCancelAnimationFrameCallbackImpl):
1874 (WebCore::InspectorInstrumentation::willFireAnimationFrameEventImpl):
1875 (WebCore::InspectorInstrumentation::didFireAnimationFrameEventImpl):
1876 * inspector/InspectorInstrumentation.h:
1877 (WebCore::InspectorInstrumentation::willCallFunction):
1878 (WebCore::InspectorInstrumentation::didRegisterAnimationFrameCallback):
1879 (WebCore::InspectorInstrumentation::didCancelAnimationFrameCallback):
1880 (WebCore::InspectorInstrumentation::willFireAnimationFrameEvent):
1881 (WebCore::InspectorInstrumentation::didFireAnimationFrameEvent):
1882 * inspector/InspectorTimelineAgent.cpp:
1883 (WebCore::InspectorTimelineAgent::didRegisterAnimationFrameCallback):
1884 (WebCore::InspectorTimelineAgent::didCancelAnimationFrameCallback):
1885 (WebCore::InspectorTimelineAgent::willFireAnimationFrameEvent):
1886 (WebCore::InspectorTimelineAgent::didFireAnimationFrameEvent):
1887 * inspector/InspectorTimelineAgent.h:
1888 * inspector/TimelineRecordFactory.cpp:
1889 (WebCore::TimelineRecordFactory::createAnimationFrameCallbackData):
1890 * inspector/TimelineRecordFactory.h:
1891 * inspector/front-end/TimelineAgent.js:
1892 * inspector/front-end/TimelinePanel.js:
1893 (WebInspector.TimelinePanel):
1894 (WebInspector.TimelinePanel.prototype.get _recordStyles):
1895 (WebInspector.TimelinePanel.prototype._innerAddRecordToTimeline):
1896 (WebInspector.TimelinePanel.prototype._clearPanel):
1897 (WebInspector.TimelinePanel.FormattedRecord):
1898 (WebInspector.TimelinePanel.FormattedRecord.prototype._generatePopupContent):
1899 (WebInspector.TimelinePanel.FormattedRecord.prototype._getRecordDetails):
1901 2011-09-19 Carlos Garcia Campos <cgarcia@igalia.com>
1903 [GTK] Fix distcheck build
1904 https://bugs.webkit.org/show_bug.cgi?id=68241
1906 Reviewed by Martin Robinson.
1908 * GNUmakefile.list.am:
1910 2011-09-18 Ilya Tikhonovsky <loislo@chromium.org>
1912 Web Inspector: chromium-win: "Save timeline data" does nothing.
1913 https://bugs.webkit.org/show_bug.cgi?id=68313
1915 windows shell API function GetSaveFileName doesn't accept file names with ':' symbol.
1917 Reviewed by Pavel Feldman.
1919 * inspector/front-end/TimelinePanel.js:
1920 (WebInspector.TimelineModel.prototype._saveToFile):
1922 2011-09-18 Dan Bernstein <mitz@apple.com>
1924 Try to fix the Chromium Mac build after r95391.
1926 * WebCore.gyp/WebCore.gyp:
1928 2011-09-18 Dan Bernstein <mitz@apple.com>
1930 Try to fix the Chromium Mac build after r95391.
1932 * WebCore.gyp/WebCore.gyp:
1934 2011-09-18 Dan Bernstein <mitz@apple.com>
1936 Try to fix the Chromium Mac build after r95391.
1938 * WebCore.gypi: Updated for the renaming of ComplexTextController.cpp.
1939 * WebCore.xcodeproj/project.pbxproj: Ditto.
1940 * platform/graphics/Font.h: Changed #if directives to include the Chromium Mac port.
1941 * platform/graphics/SimpleFontData.h: Ditto.
1942 * platform/graphics/mac/ComplexTextControllerCoreText.cpp: Changed the filename extension of this
1943 Objective-C++ file to .mm.
1944 * platform/graphics/mac/ComplexTextControllerCoreText.mm: Copied from Source/WebCore/platform/graphics/mac/ComplexTextControllerCoreText.cpp.
1946 2011-09-18 Dan Bernstein <mitz@apple.com>
1948 Snow Leopard build fix after r95391.
1950 * platform/graphics/mac/ComplexTextControllerCoreText.cpp:
1951 (WebCore::ComplexTextController::collectComplexTextRunsForCharactersCoreText):
1953 2011-09-18 Dan Bernstein <mitz@apple.com>
1955 Leopard build fix after r95391.
1957 * platform/graphics/mac/ComplexTextControllerATSUI.cpp:
1958 (WebCore::ComplexTextController::collectComplexTextRunsForCharactersATSUI):
1960 2011-09-18 Dan Bernstein <mitz@apple.com>
1962 Allow Core Text to choose the fallback font for rendering a combining character sequence
1964 Fixes <rdar://problem/7860281> Decomposed text is displayed incorrectly when Verdana is specified
1965 https://bugs.webkit.org/show_bug.cgi?id=68287
1967 Reviewed by Dave Hyatt.
1969 Test: platform/mac/fast/text/combining-character-sequence-fallback.html
1971 * WebCore.xcodeproj/project.pbxproj: Compile ComplexTextControllerCoreText.cpp as Objective-C++.
1972 I am going to rename this file in a followup patch.
1974 * platform/graphics/Font.h: Declared fontDataForCombiningCharacterSequence().
1976 * platform/graphics/SimpleFontData.h: Declared canRenderCombiningCharacterSequence() and added
1977 a member variable to cache the results of calling this function.
1979 * platform/graphics/mac/ComplexTextController.cpp:
1980 (WebCore::ComplexTextController::offsetForPosition): Fixed a typo in a comment.
1981 (WebCore::advanceByCombiningCharacterSequence): Added this helper function, which iterates over
1982 characters until the end of a sequence of combining characters, zero-width joiners and zero-width
1983 non-joiners. A single base characater followed by such a (possibly-empty) sequence is known as
1984 a combining character sequence. This stretches the definition a little because the base character
1985 may be a combining character as well. Returns false if an invalid UTF-16 sequence is encountered,
1987 (WebCore::ComplexTextController::collectComplexTextRuns): - Replaced the glyphData and nextGlyphData
1988 variables each with a pair of variables, a SimpleFontData* and a boolean indicating whether a
1989 character mapped to the missing glyph. This clarifies that this function does not use glyph IDs.
1990 - Renamed the local variable newC to uppercaseCharacter.
1991 - Changed to use advanceByCombiningCharacterSequence().
1992 - Changed to use Font::fontDataForCombiningCharacterSequence() instead of Font::glyphDataForCharacter().
1993 If there are combining marks and none of the fonts in the fallback list can render the sequence alone,
1994 use the systemFallbackFontData() constant to indicate to collectComplexTextRunsForCharactersCoreText()
1995 to allow Core Text to perform its own fallback.
1996 - Stopped checking isSmallCaps against nextIsSmallCaps. It was redundant, since the small caps FontData
1997 differs from the normal variant.
1998 (WebCore::ComplexTextController::collectComplexTextRunsForCharacters): Moved the common logic to
1999 handle the 0 fontData case from the ATSUI and Core Text continuations of this function into this function.
2001 * platform/graphics/mac/ComplexTextController.h:
2002 (WebCore::ComplexTextController::systemFallbackFontData): Added. This constant is used to indicate to
2003 collectComplexTextRunsForCharactersCoreText() that it should allow Core Text to perform its own font
2006 * platform/graphics/mac/ComplexTextControllerATSUI.cpp:
2007 (WebCore::ComplexTextController::collectComplexTextRunsForCharactersATSUI): Handle systemFallbackFontData()
2008 by using the primary font data.
2010 * platform/graphics/mac/ComplexTextControllerCoreText.cpp:
2011 (-[CascadeList initWithFont:WebCore::character:]): Added.
2012 (-[CascadeList count]): Added.
2013 (-[CascadeList objectAtIndex:]): Added. Returns an entry from a cascade list of CTFontDescriptorRef
2014 objects based on the font’s fallback list for the character. The list is initialized lazily.
2015 (WebCore::ComplexTextController::collectComplexTextRunsForCharactersCoreText): Handle systemFallbackFontData()
2016 by allowing Core Text to perform font fallback, starting with a cascade list based on the font’s fallback
2017 list and possibly continuing with system fallback.
2019 * platform/graphics/mac/FontMac.mm:
2020 (WebCore::Font::fontDataForCombiningCharacterSequence): Added. If the sequence is only a base character,
2021 calls through to glyphDataForCharacter(). Otherwise, iterates over the font’s fallback list for the
2022 base character (and the system fallback font for that character), returning the first font that can
2023 render the sequence, or 0 if there is none.
2025 * platform/graphics/mac/SimpleFontDataMac.mm:
2026 (WebCore::provideStringAndAttributes): Added this Core Text callback.
2027 (WebCore::SimpleFontData::canRenderCombiningCharacterSequence): Added. Checks if Core Text can render
2028 the sequence using only this font. Caches the result.
2030 2011-09-17 Mihai Parparita <mihaip@chromium.org>
2032 FrameLoaderClient BackForwardList-related methods are unsued
2033 https://bugs.webkit.org/show_bug.cgi?id=68293
2035 Reviewed by Darin Adler.
2037 Remove FrameLoaderClient methods that were added by r51629, since only
2038 the old (since-deleted) Android port needed them.
2040 * history/BackForwardListImpl.cpp:
2041 (WebCore::BackForwardListImpl::addItem):
2042 (WebCore::BackForwardListImpl::goBack):
2043 (WebCore::BackForwardListImpl::goForward):
2044 (WebCore::BackForwardListImpl::goToItem):
2045 (WebCore::BackForwardListImpl::setCapacity):
2046 * loader/EmptyClients.h:
2047 * loader/FrameLoaderClient.h:
2049 2011-09-17 David Hyatt <hyatt@apple.com>
2051 https://bugs.webkit.org/show_bug.cgi?id=68307
2053 Crash in border image cssText. Make sure to null check all the components, since they're all
2056 Reviewed by Sam Weinig.
2058 Added fast/borders/border-image-slice-omission.html
2060 * css/CSSBorderImageValue.cpp:
2061 (WebCore::CSSBorderImageValue::cssText):
2063 2011-09-17 Aaron Boodman <aa@chromium.org>
2065 Rework script context creation/release notifications
2066 https://bugs.webkit.org/show_bug.cgi?id=67828
2068 Reviewed by Adam Barth.
2070 * bindings/v8/V8DOMWindowShell.cpp:
2071 (WebCore::V8DOMWindowShell::disposeContextHandles):
2072 (WebCore::V8DOMWindowShell::initContextIfNeeded):
2073 * bindings/v8/V8IsolatedContext.cpp:
2074 (WebCore::V8IsolatedContext::V8IsolatedContext):
2075 (WebCore::V8IsolatedContext::destroy):
2076 * bindings/v8/V8IsolatedContext.h:
2077 * loader/EmptyClients.h:
2078 (WebCore::EmptyFrameLoaderClient::didCreateScriptContext):
2079 (WebCore::EmptyFrameLoaderClient::willReleaseScriptContext):
2080 * loader/FrameLoaderClient.h:
2082 2011-09-17 Ilya Tikhonovsky <loislo@chromium.org>
2084 Web Inspector: file open dialog appears when user clicks on the timeline bar in timeline panel.
2085 https://bugs.webkit.org/show_bug.cgi?id=68312
2087 Reviewed by Pavel Feldman.
2089 * inspector/front-end/TimelinePanel.js:
2090 (WebInspector.TimelinePanel.prototype._createFileSelector):
2092 2011-09-17 Jeff Miller <jeffm@apple.com>
2094 Build fix after r95372.
2096 * dom/DOMAllInOne.cpp: #include "EventListenerMap.cpp"
2098 2011-09-17 Deepak Sherveghar <bpwv64@motorola.com>
2100 Override supportsFocus() for HTMLMediaElement.
2101 https://bugs.webkit.org/show_bug.cgi?id=67190
2103 Reviewed by Antonio Gomes.
2105 Tests: fast/events/media-element-focus-tab.html
2106 fast/spatial-navigation/snav-media-elements.html
2108 Return true from supportsFocus() if control's attribute is present or a tabindex is specified.
2110 * html/HTMLMediaElement.cpp:
2111 (WebCore::HTMLMediaElement::supportsFocus):
2112 * html/HTMLMediaElement.h:
2114 2011-09-16 Adam Barth <abarth@webkit.org>
2116 Rename ENABLE(LEVELDB) to USE(LEVELDB)
2117 https://bugs.webkit.org/show_bug.cgi?id=68290
2119 Reviewed by Darin Adler.
2121 LEVELDB is a library that can be used to implemented INDEXED_DATABASE,
2122 which means it should be a USE not an ENABLE.
2125 * WebCore.gyp/WebCore.gyp:
2126 * platform/leveldb/LevelDBComparator.h:
2127 * platform/leveldb/LevelDBDatabase.cpp:
2128 * platform/leveldb/LevelDBDatabase.h:
2129 * platform/leveldb/LevelDBIterator.h:
2130 * platform/leveldb/LevelDBSlice.h:
2131 * platform/leveldb/LevelDBTransaction.cpp:
2132 * platform/leveldb/LevelDBTransaction.h:
2133 * platform/leveldb/LevelDBWriteBatch.cpp:
2134 * platform/leveldb/LevelDBWriteBatch.h:
2135 * storage/IDBFactoryBackendImpl.cpp:
2136 (WebCore::IDBFactoryBackendImpl::open):
2137 (WebCore::IDBFactoryBackendImpl::migrateFromSQLiteToLevelDB):
2138 * storage/IDBLevelDBBackingStore.cpp:
2139 * storage/IDBLevelDBBackingStore.h:
2140 * storage/IDBLevelDBCoding.cpp:
2141 * storage/IDBLevelDBCoding.h:
2143 2011-09-16 Andreas Kling <kling@webkit.org>
2145 Reduce EventTarget memory usage by deferring hash map allocation
2146 until there are listeners for more than 1 event type.
2148 http://webkit.org/b/68105
2150 Reviewed by Darin Adler.
2152 Introduce an EventListenerMap class which manages a map of event types that have
2153 one or more listeners connected.
2155 When there is only one event type, it's stored directly on the EventListenerMap
2156 internally, and when more are added it moves to a hash map. It only goes back
2157 from the hash map if all the listeners are removed at once (i.e clear() is called.)
2160 * GNUmakefile.list.am:
2163 * WebCore.vcproj/WebCore.vcproj:
2164 * WebCore.xcodeproj/project.pbxproj:
2170 Export EventListenerMap::contains() for WebKit/mac.
2172 * dom/EventListenerMap.cpp: Added.
2173 (WebCore::EventListenerMap::EventListenerMap):
2174 (WebCore::EventListenerMap::~EventListenerMap):
2175 (WebCore::EventListenerMap::isEmpty):
2176 (WebCore::EventListenerMap::contains):
2177 (WebCore::EventListenerMap::clear):
2178 (WebCore::EventListenerMap::eventTypes):
2179 (WebCore::addListenerToVector):
2180 (WebCore::EventListenerMap::add):
2181 (WebCore::removeListenerFromVector):
2182 (WebCore::EventListenerMap::remove):
2183 (WebCore::EventListenerMap::find):
2184 (WebCore::removeFirstListenerCreatedFromMarkup):
2185 (WebCore::EventListenerMap::removeFirstEventListenerCreatedFromMarkup):
2186 (WebCore::copyListenersNotCreatedFromMarkupToTarget):
2187 (WebCore::EventListenerMap::copyEventListenersNotCreatedFromMarkupToTarget):
2188 (WebCore::EventListenerIterator::EventListenerIterator):
2189 (WebCore::EventListenerIterator::nextListener):
2190 * dom/EventListenerMap.h: Added.
2192 * dom/EventTarget.cpp:
2193 (WebCore::EventTargetData::~EventTargetData):
2194 (WebCore::EventTarget::addEventListener):
2195 (WebCore::EventTarget::removeEventListener):
2196 (WebCore::EventTarget::fireEventListeners):
2197 (WebCore::EventTarget::getEventListeners):
2198 (WebCore::EventTarget::removeAllEventListeners):
2200 * dom/EventTarget.h:
2201 (WebCore::EventTarget::visitJSEventListeners):
2203 Use EventListenerIterator to visit listeners. (JSC specific.)
2205 * inspector/InspectorDOMAgent.cpp:
2206 (WebCore::InspectorDOMAgent::getEventListenersForNode):
2208 Call EventListenerMap::eventTypes() go get the list of event types
2209 currently listened for.
2212 (WebCore::Node::removeEventListener):
2213 * svg/SVGUseElement.cpp:
2214 (WebCore::SVGUseElement::transferEventListenersToShadowTree):
2216 Move implementations of SVG-specific hacks into EventListenerMap and
2217 call them from here.
2219 2011-09-16 Jeremy Apthorp <jeremya@chromium.org> and James Kozianski <koz@chromium.org>
2221 Don't detach elements from the render tree when entering fullscreen mode
2222 https://bugs.webkit.org/show_bug.cgi?id=66531
2224 This prevents plugin instances from being destroyed and reinstantiated
2225 when entering fullscreen mode.
2227 Reviewed by James Robinson.
2229 Test: plugins/fullscreen-plugins-dont-reload.html
2232 (WebCore::Document::webkitWillEnterFullScreenForElement):
2233 (WebCore::Document::webkitDidExitFullScreenForElement):
2234 * dom/NodeRenderingContext.cpp:
2235 (WebCore::NodeRendererFactory::createRendererIfNeeded):
2236 * rendering/RenderFullScreen.cpp:
2237 (createFullScreenStyle):
2238 (RenderFullScreen::wrapRenderer):
2239 (RenderFullScreen::unwrapRenderer):
2240 * rendering/RenderFullScreen.h:
2242 2011-09-16 Jochen Eisinger <jochen@chromium.org>
2244 Rename FrameLoaderClient::allowImages to FrameLoaderClient::allowImage and include the image URL as parameter
2245 https://bugs.webkit.org/show_bug.cgi?id=68071
2247 This will allow embedders to block images based on where the image is loaded from, instead of just blocking all images in a given frame.
2249 Reviewed by Adam Barth.
2251 * html/ImageDocument.cpp:
2252 (WebCore::ImageDocumentParser::appendBytes):
2253 * loader/FrameLoaderClient.h:
2254 (WebCore::FrameLoaderClient::allowImage):
2255 * loader/cache/CachedResourceLoader.cpp:
2256 (WebCore::CachedResourceLoader::requestImage):
2258 2011-09-16 Tom Sepez <tsepez@chromium.org>
2260 Make XSSAuditor truncate inline snippets at a reasonable length before comparison
2261 respecting boundaries of multiply urlencoded sequences.
2262 https://bugs.webkit.org/show_bug.cgi?id=68092
2264 Reviewed by Adam Barth.
2266 Test: http/tests/security/xssAuditor/property-escape-long.html
2268 * html/parser/XSSAuditor.cpp:
2269 (WebCore::XSSAuditor::filterTokenAfterScriptStartTag):
2270 (WebCore::XSSAuditor::eraseDangerousAttributesIfInjected):
2271 (WebCore::XSSAuditor::eraseAttributeIfInjected):
2272 (WebCore::XSSAuditor::decodedSnippetForAttribute):
2273 (WebCore::XSSAuditor::isContainedInRequest):
2274 * html/parser/XSSAuditor.h:
2276 2011-09-16 Shawn Singh <shawnsingh@chromium.org>
2278 Remove m_contentsDirty from LayerChromium because it
2279 is redundant with m_dirtyRect.
2280 https://bugs.webkit.org/show_bug.cgi?id=68213
2282 Reviewed by James Robinson.
2284 Code cleanup towards unit testing.
2286 * platform/graphics/chromium/Canvas2DLayerChromium.cpp:
2287 (WebCore::Canvas2DLayerChromium::updateCompositorResources):
2288 * platform/graphics/chromium/ContentLayerChromium.cpp:
2289 (WebCore::ContentLayerChromium::paintContentsIfDirty):
2290 * platform/graphics/chromium/ImageLayerChromium.cpp:
2291 (WebCore::ImageLayerChromium::paintContentsIfDirty):
2292 * platform/graphics/chromium/LayerChromium.cpp:
2293 (WebCore::LayerChromium::LayerChromium):
2294 (WebCore::LayerChromium::setNeedsDisplay):
2295 (WebCore::LayerChromium::resetNeedsDisplay):
2296 * platform/graphics/chromium/LayerChromium.h:
2297 * platform/graphics/chromium/VideoLayerChromium.cpp:
2298 (WebCore::VideoLayerChromium::updateCompositorResources):
2299 * platform/graphics/chromium/WebGLLayerChromium.cpp:
2300 (WebCore::WebGLLayerChromium::updateCompositorResources):
2302 2011-09-16 Dmitry Lomov <dslomov@google.com>
2304 https://bugs.webkit.org/show_bug.cgi?id=66714
2305 Add webkitPostMessage to allow for adding transferable support.
2306 This adds webkitPostMessage, currently identical to postMessage, which
2307 would later be a vehicle for adding transferable support for messaging.
2309 Based on patch by Luke Zarko.
2311 Reviewed by David Levin.
2313 * bindings/js/JSDOMWindowCustom.cpp:
2314 (WebCore::JSDOMWindow::webkitPostMessage):
2315 * bindings/js/JSDedicatedWorkerContextCustom.cpp:
2316 (WebCore::JSDedicatedWorkerContext::webkitPostMessage):
2317 * bindings/js/JSMessageEventCustom.cpp:
2318 (WebCore::JSMessageEvent::webkitInitMessageEvent):
2319 * bindings/js/JSMessagePortCustom.cpp:
2320 (WebCore::JSMessagePort::webkitPostMessage):
2321 * bindings/js/JSWorkerCustom.cpp:
2322 (WebCore::JSWorker::postMessage):
2323 (WebCore::JSWorker::webkitPostMessage):
2324 * bindings/v8/custom/V8DOMWindowCustom.cpp:
2325 (WebCore::handlePostMessageCallback):
2326 (WebCore::V8DOMWindow::postMessageCallback):
2327 (WebCore::V8DOMWindow::webkitPostMessageCallback):
2328 * bindings/v8/custom/V8DedicatedWorkerContextCustom.cpp:
2329 (WebCore::handlePostMessageCallback):
2330 (WebCore::V8DedicatedWorkerContext::postMessageCallback):
2331 (WebCore::V8DedicatedWorkerContext::webkitPostMessageCallback):
2332 * bindings/v8/custom/V8MessageEventCustom.cpp:
2333 (WebCore::V8MessageEvent::initMessageEventCallback):
2334 (WebCore::V8MessageEvent::webkitInitMessageEventCallback):
2335 * bindings/v8/custom/V8MessagePortCustom.cpp:
2336 (WebCore::handlePostMessageCallback):
2337 (WebCore::V8MessagePort::postMessageCallback):
2338 (WebCore::V8MessagePort::webkitPostMessageCallback):
2339 * bindings/v8/custom/V8WorkerCustom.cpp:
2340 (WebCore::handlePostMessageCallback):
2341 (WebCore::V8Worker::postMessageCallback):
2342 (WebCore::V8Worker::webkitPostMessageCallback):
2343 * dom/MessageEvent.idl:
2344 * dom/MessagePort.idl:
2345 * page/DOMWindow.idl:
2346 * workers/DedicatedWorkerContext.idl:
2347 * workers/Worker.idl:
2349 2011-09-16 Alexei Svitkine <asvitkine@chromium.org>
2351 Chromium: Fix repaint of rubber-band overhang area under composited path
2352 https://bugs.webkit.org/show_bug.cgi?id=68246
2354 I accidently removed these two lines from the last patch on: https://bugs.webkit.org/show_bug.cgi?id=66969
2356 Reviewed by James Robinson.
2358 Test: platform/chromium-gpu/compositing/rubberbanding/transform-overhang-size-change.html
2360 * platform/ScrollView.cpp:
2361 (WebCore::ScrollView::scrollContents):
2363 2011-09-16 Peter Beverloo <peter@chromium.org>
2365 Depend on harfbuzz for OS=Android as well
2366 https://bugs.webkit.org/show_bug.cgi?id=68239
2368 Like GTK, Android depends on harfbuzz as well, so reflect that in
2369 the project file. Furthermore, fix a compile error in PopupListBox.cpp
2370 by explicitly including ctype.h, as isspace otherwise won't be declared.
2372 Reviewed by Steve Block.
2374 * WebCore.gyp/WebCore.gyp:
2375 * platform/chromium/PopupListBox.cpp:
2377 2011-09-16 Tony Chang <tony@chromium.org>
2379 Rename flex-align values to match the spec
2380 https://bugs.webkit.org/show_bug.cgi?id=67741
2382 Reviewed by Ojan Vafai.
2384 * css/CSSParser.cpp:
2385 (WebCore::CSSParser::parseValue):
2386 * css/CSSPrimitiveValueMappings.h:
2387 (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
2388 (WebCore::CSSPrimitiveValue::operator EFlexAlign):
2389 * css/CSSValueKeywords.in:
2390 * rendering/style/RenderStyleConstants.h:
2392 2011-09-16 Kentaro Hara <haraken@chromium.org>
2394 Implement an ErrorEvent constructor for JSC
2395 https://bugs.webkit.org/show_bug.cgi?id=68148
2397 Reviewed by Sam Weinig.
2399 The spec for the ErrorEvent constructor is here:
2400 http://dev.w3.org/html5/workers/#errorevent
2402 Test: fast/events/constructors/error-event-constructor.html
2404 * bindings/generic/EventConstructors.h: Added a definition for the ErrorEvent constructor.
2405 * bindings/js/JSEventConstructors.cpp: Added #includes for ErrorEvent.
2406 * dom/ErrorEvent.cpp:
2407 (WebCore::ErrorEventInit::ErrorEventInit):
2408 (WebCore::ErrorEvent::ErrorEvent):
2409 (WebCore::ErrorEvent::initErrorEvent):
2410 (WebCore::ErrorEvent::isErrorEvent):
2411 * dom/ErrorEvent.h: Added a definition for ErrorEventInit.
2412 (WebCore::ErrorEvent::create):
2413 (WebCore::ErrorEvent::message):
2414 (WebCore::ErrorEvent::filename):
2415 (WebCore::ErrorEvent::lineno):
2416 * dom/ErrorEvent.idl: Makes ErrorEvent constructible.
2418 2011-09-16 Kentaro Hara <haraken@google.com>
2420 Overhangs a ruby by no more than half the width of the neighboring text.
2421 https://bugs.webkit.org/show_bug.cgi?id=62684
2423 Reviewed by Dan Bernstein.
2425 Assume two rubies between which a narrow text exists, like
2426 "<ruby>x<rt>xxxxxx</rt></ruby>l<ruby>y<rt>yyyyyy</rt></ruby>".
2427 In order to avoid the two rubies overlapping with each other,
2428 this patch overhangs the ruby by no more than half the ruby font
2429 size and no more than half the width of the neighboring text.
2431 Tests: fast/ruby/overhang-horizontal-no-overlap1.html
2432 fast/ruby/overhang-horizontal-no-overlap2.html
2433 fast/ruby/overhang-vertical-no-overlap1.html
2434 fast/ruby/overhang-vertical-no-overlap2.html
2436 * rendering/RenderRubyRun.cpp:
2437 (WebCore::RenderRubyRun::getOverhang): Calculates the width of ruby overhanging.
2439 2011-09-16 Sheriff Bot <webkit.review.bot@gmail.com>
2441 Unreviewed, rolling out r95304.
2442 http://trac.webkit.org/changeset/95304
2443 https://bugs.webkit.org/show_bug.cgi?id=68299
2445 Broke GTK+ builds. It pulls derived headers into main.c
2446 (Requested by rniwa on #webkit).
2448 * bindings/scripts/CodeGeneratorGObject.pm:
2450 * bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp:
2451 * bindings/scripts/test/GObject/WebKitDOMTestCallback.h:
2452 * bindings/scripts/test/GObject/WebKitDOMTestCallbackPrivate.h:
2453 * bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp:
2454 * bindings/scripts/test/GObject/WebKitDOMTestInterface.h:
2455 * bindings/scripts/test/GObject/WebKitDOMTestInterfacePrivate.h:
2456 * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.cpp:
2457 * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.h:
2458 * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListenerPrivate.h:
2459 * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
2460 (webkit_dom_test_obj_conditional_method1):
2461 (webkit_dom_test_obj_conditional_method2):
2462 (webkit_dom_test_obj_conditional_method3):
2463 (webkit_dom_test_obj_get_conditional_attr1):
2464 (webkit_dom_test_obj_set_conditional_attr1):
2465 (webkit_dom_test_obj_get_conditional_attr2):
2466 (webkit_dom_test_obj_set_conditional_attr2):
2467 (webkit_dom_test_obj_get_conditional_attr3):
2468 (webkit_dom_test_obj_set_conditional_attr3):
2469 (webkit_dom_test_obj_set_property):
2470 (webkit_dom_test_obj_get_property):
2471 (webkit_dom_test_obj_class_init):
2472 * bindings/scripts/test/GObject/WebKitDOMTestObj.h:
2473 * bindings/scripts/test/GObject/WebKitDOMTestObjPrivate.h:
2474 * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.cpp:
2475 * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.h:
2476 * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterfacePrivate.h:
2478 2011-09-16 Shawn Singh <shawnsingh@chromium.org>
2480 Re-named isRootLayer to isNonCompositedContent because
2481 that is what the flag actually means.
2482 https://bugs.webkit.org/show_bug.cgi?id=68214
2484 Reviewed by James Robinson.
2486 Code cleanup towards unit testing.
2488 * platform/graphics/chromium/LayerChromium.cpp:
2489 (WebCore::LayerChromium::LayerChromium):
2490 (WebCore::LayerChromium::pushPropertiesTo):
2491 * platform/graphics/chromium/LayerChromium.h:
2492 (WebCore::LayerChromium::setIsNonCompositedContent):
2493 (WebCore::LayerChromium::isNonCompositedContent):
2494 * platform/graphics/chromium/NonCompositedContentHost.cpp:
2495 (WebCore::NonCompositedContentHost::NonCompositedContentHost):
2496 * platform/graphics/chromium/TiledLayerChromium.cpp:
2497 (WebCore::TiledLayerChromium::setLayerTreeHost):
2498 * platform/graphics/chromium/cc/CCLayerImpl.cpp:
2499 (WebCore::CCLayerImpl::CCLayerImpl):
2500 * platform/graphics/chromium/cc/CCLayerImpl.h:
2501 (WebCore::CCLayerImpl::setIsNonCompositedContent):
2502 (WebCore::CCLayerImpl::isNonCompositedContent):
2503 * platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:
2504 (WebCore::CCTiledLayerImpl::draw):
2506 2011-09-16 Simon Fraser <simon.fraser@apple.com>
2508 Make custom scrollbar theme for use in DRT, to reduce pixel diffs between platforms
2509 https://bugs.webkit.org/show_bug.cgi?id=68134
2511 Reviewed by Sam Weinig.
2513 Add a new setting to control whether the mock scrollbar theme is used.
2514 This is a global setting, so that it can be set without having to
2515 access a specific Settings object.
2518 (WebCore::Settings::setMockScrollbarsEnabled):
2519 (WebCore::Settings::mockScrollbarsEnabled):
2521 2011-09-16 Ben Wells <benwells@chromium.org>
2523 Large canvas fills should not crash or create unnecessarily large image buffers
2524 https://bugs.webkit.org/show_bug.cgi?id=67988
2526 When using source-in, destination-in, source-out, or destination-atop a temporary
2527 buffer is created. This buffer only needs to be big enough to cover the intersection
2528 of the path and the canvas. If the area of intersection between the fill and the
2529 canvas is empty the canvas is completely cleared and a temporary buffer is not used.
2531 This change also adds some null checks for failures to create contexts or buffers.
2533 Reviewed by Darin Adler.
2535 Test: fast/canvas/canvas-large-fills.html
2537 * html/canvas/CanvasRenderingContext2D.cpp:
2538 (WebCore::CanvasRenderingContext2D::clearCanvas):
2539 (WebCore::CanvasRenderingContext2D::fillAndDisplayTransparencyElsewhere):
2541 2011-09-16 Shawn Singh <shawnsingh@chromium.org>
2543 Remove default NULL argument in LayerChromium::create().
2544 https://bugs.webkit.org/show_bug.cgi?id=68211
2546 Reviewed by James Robinson.
2548 Code cleanup related to creating unit testing.
2550 * platform/graphics/chromium/LayerChromium.h:
2552 2011-09-16 Adrienne Walker <enne@google.com>
2554 [chromium] Move quad drawing code from LayerChromium to LayerRendererChromium
2555 https://bugs.webkit.org/show_bug.cgi?id=68272
2557 Reviewed by James Robinson.
2559 All the OpenGL code is in LayerRendererChromium and the CCLayerImpl
2560 tree, so move the static drawTexturedQuad/toGLMatrix functions to
2561 LayerRendererChromium, where they really belong.
2563 Just moving code around. Tested by existing compositor tests.
2565 * platform/graphics/chromium/LayerChromium.cpp:
2566 * platform/graphics/chromium/LayerChromium.h:
2567 * platform/graphics/chromium/LayerRendererChromium.cpp:
2568 (WebCore::LayerRendererChromium::toGLMatrix):
2569 (WebCore::LayerRendererChromium::drawTexturedQuad):
2570 * platform/graphics/chromium/LayerRendererChromium.h:
2571 * platform/graphics/chromium/cc/CCCanvasLayerImpl.cpp:
2572 (WebCore::CCCanvasLayerImpl::draw):
2573 * platform/graphics/chromium/cc/CCHeadsUpDisplay.cpp:
2574 (WebCore::CCHeadsUpDisplay::draw):
2575 * platform/graphics/chromium/cc/CCLayerImpl.cpp:
2576 (WebCore::CCLayerImpl::drawDebugBorder):
2577 * platform/graphics/chromium/cc/CCPluginLayerImpl.cpp:
2578 (WebCore::CCPluginLayerImpl::draw):
2579 * platform/graphics/chromium/cc/CCRenderSurface.cpp:
2580 (WebCore::CCRenderSurface::drawSurface):
2581 * platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:
2582 (WebCore::CCTiledLayerImpl::drawTiles):
2583 * platform/graphics/chromium/cc/CCVideoLayerImpl.cpp:
2584 (WebCore::CCVideoLayerImpl::drawYUV):
2585 (WebCore::CCVideoLayerImpl::drawRGBA):
2587 2011-09-16 Shawn Singh <shawnsingh@chromium.org>
2589 Fixed const correctness on accessors in LayerChromium
2590 https://bugs.webkit.org/show_bug.cgi?id=68210
2592 Reviewed by James Robinson.
2594 Code cleanup related to creating unit testing.
2596 * platform/graphics/chromium/LayerChromium.h:
2597 (WebCore::LayerChromium::preserves3D):
2598 (WebCore::LayerChromium::replicaLayer):
2600 2011-09-14 Ryosuke Niwa <rniwa@webkit.org>
2602 Deleting line break before h1 converts h1 to span
2603 https://bugs.webkit.org/show_bug.cgi?id=45784
2605 Reviewed by Kenneth Rohde Christiansen.
2607 Fixed the bug by treating h1 and other elements that retain structure like Mail blockquote.
2609 We already had a logic to overriding styles of merged paragraphs by Mail blockquote so
2610 just extend this logic for h1-h6, pre, etc...
2612 Tests: editing/deleting/merge-paragraph-from-address.html
2613 editing/deleting/merge-paragraph-from-h6-with-style.html
2614 editing/deleting/merge-paragraph-from-h6.html
2615 editing/deleting/merge-paragraph-from-listing.html
2616 editing/deleting/merge-paragraph-into-h1-with-style.html
2617 editing/deleting/merge-paragraph-into-h1.html
2618 editing/deleting/merge-paragraph-into-pre.html
2620 * editing/ReplaceSelectionCommand.cpp:
2621 (WebCore::ReplaceSelectionCommand::removeRedundantStylesAndKeepStyleSpanInline):
2622 * editing/markup.cpp:
2623 (WebCore::isBlockNodeToRetainAppearance): Extracted from ancestorToRetainStructureAndAppearance.
2624 (WebCore::StyledMarkupAccumulator::serializeNodes):
2625 (WebCore::ancestorToRetainStructureAndAppearance):
2628 2011-09-16 Max Perepelitsyn <pph34r@gmail.com>
2630 Set but not used variables cleanup (gcc 4.6)
2631 https://bugs.webkit.org/show_bug.cgi?id=68157
2633 Reviewed by Darin Adler.
2635 * platform/audio/ReverbConvolverStage.cpp:
2636 (WebCore::ReverbConvolverStage::process):
2637 * rendering/RenderMediaControlsChromium.cpp:
2638 (WebCore::paintMediaButton):
2640 2011-09-16 Geoffrey Garen <ggaren@apple.com>
2642 Removed undetectable style.filter.
2644 Reviewed by Sam Weinig.
2646 This feature was added in http://trac.webkit.org/changeset/15557 to
2647 support housingmaps.com. But housingmaps.com no longer needs this hack,
2648 we don't know of other websites that need it, and we don't know of
2649 any other browsers that have implemented this feature.
2651 * ForwardingHeaders/runtime/StringObjectThatMasqueradesAsUndefined.h: Removed.
2653 * bindings/js/JSCSSStyleDeclarationCustom.cpp:
2654 (WebCore::JSCSSStyleDeclaration::nameGetter):
2656 2011-09-16 Adam Barth <abarth@webkit.org>
2658 Update JSC results to account for intrinsics change.
2660 * bindings/scripts/test/JS/JSTestInterface.cpp:
2661 * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
2662 * bindings/scripts/test/JS/JSTestObj.cpp:
2663 * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
2665 2011-09-16 Sheriff Bot <webkit.review.bot@gmail.com>
2667 Unreviewed, rolling out r95312.
2668 http://trac.webkit.org/changeset/95312
2669 https://bugs.webkit.org/show_bug.cgi?id=68277
2671 It's innocent, innocent I tell you! (Requested by jamesr_ on
2674 * platform/graphics/chromium/ContentLayerChromium.cpp:
2675 (WebCore::ContentLayerChromium::createTextureUpdater):
2676 * platform/graphics/chromium/LayerRendererChromium.cpp:
2677 (WebCore::LayerRendererChromium::LayerRendererChromium):
2678 * platform/graphics/chromium/cc/CCLayerTreeHost.h:
2679 * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
2680 * platform/graphics/chromium/cc/CCThreadProxy.cpp:
2681 (WebCore::CCThreadProxy::context):
2682 (WebCore::CCThreadProxy::beginFrameAndCommitOnCCThread):
2683 (WebCore::CCThreadProxy::setNeedsCommitAndRedrawOnCCThread):
2684 (WebCore::CCThreadProxy::setNeedsRedrawOnCCThread):
2686 2011-09-16 Sheriff Bot <webkit.review.bot@gmail.com>
2688 Unreviewed, rolling out r95309.
2689 http://trac.webkit.org/changeset/95309
2690 https://bugs.webkit.org/show_bug.cgi?id=68271
2692 Broke many chromium gpu tests. (Requested by dave_levin on
2695 * platform/graphics/chromium/ContentLayerChromium.cpp:
2696 (WebCore::ContentLayerChromium::createTextureUpdater):
2697 * platform/graphics/chromium/LayerRendererChromium.cpp:
2698 (WebCore::LayerRendererChromium::LayerRendererChromium):
2699 * platform/graphics/chromium/cc/CCLayerTreeHost.h:
2700 * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
2701 * platform/graphics/chromium/cc/CCThreadProxy.cpp:
2702 (WebCore::CCThreadProxy::context):
2703 (WebCore::CCThreadProxy::beginFrameAndCommitOnCCThread):
2704 (WebCore::CCThreadProxy::setNeedsCommitAndRedrawOnCCThread):
2705 (WebCore::CCThreadProxy::setNeedsRedrawOnCCThread):
2707 2011-09-16 Filip Pizlo <fpizlo@apple.com>
2709 DFG JIT should inline Math.abs
2710 https://bugs.webkit.org/show_bug.cgi?id=68227
2712 Reviewed by Oliver Hunt.
2714 Added JavaScriptCore/dfg to include path path. Changed the bindings
2715 scripts to handle the presence of intrinsics.
2718 * bindings/scripts/CodeGeneratorJS.pm:
2719 (GenerateHashTable):
2721 2011-09-16 Iain Merrick <husky@google.com>
2723 [chromium] Fix CCLayerTreeHostTest
2724 https://bugs.webkit.org/show_bug.cgi?id=67418
2726 This is a minimal set of changes to get CCLayerTreeHostTest
2727 compiling, running and passing with USE_THREADED_COMPOSITING
2730 Reviewed by James Robinson.
2732 * platform/graphics/chromium/ContentLayerChromium.cpp:
2733 (WebCore::ContentLayerChromium::createTextureUpdater):
2734 * platform/graphics/chromium/LayerRendererChromium.cpp:
2735 (WebCore::LayerRendererChromium::LayerRendererChromium):
2736 * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
2737 (WebCore::CCLayerTreeHost::createLayerTreeHostImpl):
2738 * platform/graphics/chromium/cc/CCLayerTreeHost.h:
2739 * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
2740 * platform/graphics/chromium/cc/CCThreadProxy.cpp:
2741 (WebCore::CCThreadProxy::context):
2742 (WebCore::CCThreadProxy::beginFrameAndCommitOnCCThread):
2743 (WebCore::CCThreadProxy::setNeedsCommitAndRedrawOnCCThread):
2744 (WebCore::CCThreadProxy::setNeedsRedrawOnCCThread):
2746 2011-09-16 Sheriff Bot <webkit.review.bot@gmail.com>
2748 Unreviewed, rolling out r95227.
2749 http://trac.webkit.org/changeset/95227
2750 https://bugs.webkit.org/show_bug.cgi?id=68262
2752 Broke a bunch of SVG tests (Requested by andersca on #webkit).
2754 * platform/ScrollView.cpp:
2755 (WebCore::ScrollView::contentsSize):
2756 (WebCore::ScrollView::wheelEvent):
2757 * platform/ScrollView.h:
2758 * platform/mac/ScrollViewMac.mm:
2759 (WebCore::ScrollView::platformContentsSize):
2760 * platform/wx/ScrollViewWx.cpp:
2761 (WebCore::ScrollView::platformContentsSize):
2763 2011-09-16 James Simonsen <simonjam@chromium.org>
2765 Fix HTML5 parser's adoption agency algorithm to reparent correctly
2766 https://bugs.webkit.org/show_bug.cgi?id=68147
2768 Reviewed by Eric Seidel.
2770 * html/parser/HTMLTreeBuilder.cpp:
2771 (WebCore::HTMLTreeBuilder::callTheAdoptionAgency):
2773 2011-09-16 Adam Barth <abarth@webkit.org>
2775 CodeGeneratorGObject should use C++ style comments for ENABLE guards
2776 https://bugs.webkit.org/show_bug.cgi?id=68256
2778 Reviewed by Darin Adler.
2780 This patch should have not behavioral effect. It just cleans up the
2781 GObject code generator to use C++-style comments for ENABLE guards and
2782 to use the usual comment style for license blocks.
2784 * bindings/scripts/CodeGeneratorGObject.pm:
2785 * bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp:
2786 * bindings/scripts/test/GObject/WebKitDOMTestCallback.h:
2787 * bindings/scripts/test/GObject/WebKitDOMTestCallbackPrivate.h:
2788 * bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp:
2789 * bindings/scripts/test/GObject/WebKitDOMTestInterface.h:
2790 * bindings/scripts/test/GObject/WebKitDOMTestInterfacePrivate.h:
2791 * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.cpp:
2792 * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.h:
2793 * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListenerPrivate.h:
2794 * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
2795 (webkit_dom_test_obj_conditional_method1):
2796 (webkit_dom_test_obj_conditional_method2):
2797 (webkit_dom_test_obj_conditional_method3):
2798 (webkit_dom_test_obj_get_conditional_attr1):
2799 (webkit_dom_test_obj_set_conditional_attr1):
2800 (webkit_dom_test_obj_get_conditional_attr2):
2801 (webkit_dom_test_obj_set_conditional_attr2):
2802 (webkit_dom_test_obj_get_conditional_attr3):
2803 (webkit_dom_test_obj_set_conditional_attr3):
2804 (webkit_dom_test_obj_set_property):
2805 (webkit_dom_test_obj_get_property):
2806 (webkit_dom_test_obj_class_init):
2807 * bindings/scripts/test/GObject/WebKitDOMTestObj.h:
2808 * bindings/scripts/test/GObject/WebKitDOMTestObjPrivate.h:
2809 * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.cpp:
2810 * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.h:
2811 * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterfacePrivate.h:
2813 2011-09-16 Csaba Osztrogonác <ossy@webkit.org>
2815 [Qt] REGRESSION(r95091) It made many tests flakey
2816 https://bugs.webkit.org/show_bug.cgi?id=68232
2818 Unreviewed rolling out r95091 and followup patches.
2820 * English.lproj/localizedStrings.js:
2821 * bindings/v8/V8Proxy.cpp:
2822 (WebCore::V8Proxy::callFunction):
2823 * bindings/v8/V8Proxy.h:
2824 * bindings/v8/custom/V8CustomVoidCallback.cpp:
2825 (WebCore::invokeCallback):
2826 * dom/ScriptedAnimationController.cpp:
2827 (WebCore::ScriptedAnimationController::registerCallback):
2828 (WebCore::ScriptedAnimationController::cancelCallback):
2829 (WebCore::ScriptedAnimationController::serviceScriptedAnimations):
2830 * inspector/InspectorInstrumentation.cpp:
2831 * inspector/InspectorInstrumentation.h:
2832 (WebCore::InspectorInstrumentation::willCallFunction):
2833 * inspector/InspectorTimelineAgent.cpp:
2834 * inspector/InspectorTimelineAgent.h:
2835 * inspector/TimelineRecordFactory.cpp:
2836 * inspector/TimelineRecordFactory.h:
2837 * inspector/front-end/TimelineAgent.js:
2838 * inspector/front-end/TimelinePanel.js:
2839 (WebInspector.TimelinePanel):
2840 (WebInspector.TimelinePanel.prototype.get _recordStyles):
2841 (WebInspector.TimelinePanel.prototype._innerAddRecordToTimeline):
2842 (WebInspector.TimelinePanel.prototype._clearPanel):
2843 (WebInspector.TimelinePanel.FormattedRecord):
2844 (WebInspector.TimelinePanel.FormattedRecord.prototype._generatePopupContent):
2845 (WebInspector.TimelinePanel.FormattedRecord.prototype._getRecordDetails):
2847 2011-09-16 Abhishek Arya <inferno@chromium.org>
2849 cachedFont not getting updated for inline SVG text.
2850 https://bugs.webkit.org/show_bug.cgi?id=68060
2852 Reviewed by Nikolas Zimmermann.
2854 The cached scaledFont needs to be updated on every style set call. It
2855 is not similar to m_style which can get derived from parent's style and
2856 hence will get automatically updated on ancestor's style change. This is
2857 required, otherwise we will maintain stale font list in cached scaledFont
2858 when custom fonts are retired on Document::recalcStyle.
2860 Test: svg/text/text-style-recalc-crash.html
2862 * rendering/svg/RenderSVGInlineText.cpp:
2863 (WebCore::RenderSVGInlineText::styleDidChange):
2864 (WebCore::RenderSVGInlineText::setStyle):
2865 * rendering/svg/RenderSVGInlineText.h:
2867 2011-09-16 Antti Koivisto <antti@apple.com>
2869 REGRESSION (r95052): SelectorChecker identifier filter not working
2870 https://bugs.webkit.org/show_bug.cgi?id=68244
2872 Reviewed by Dan Bernstein.
2876 * css/SelectorChecker.cpp:
2877 (WebCore::collectDescendantSelectorIdentifierHashes):
2879 2011-09-16 Csaba Osztrogonác <ossy@webkit.org>
2881 Unreviewed typo fix after r95271.
2883 * bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp:
2885 2011-09-16 Andrey Kosyakov <caseq@chromium.org>
2887 Web Inspector: [Extensions API] support extensions for remote inspector front-end
2888 https://bugs.webkit.org/show_bug.cgi?id=67840
2890 Reviewed by Pavel Feldman.
2892 - Merge ExtensionCommon.js into ExtensionAPI.js
2893 - refactor building of extension API for better reuse
2894 - expose interface for extension registration
2897 * WebCore.vcproj/WebCore.vcproj:
2898 * inspector/front-end/ExtensionAPI.js:
2899 (defineCommonExtensionSymbols):
2900 (buildExtensionAPIInjectedScript):
2901 * inspector/front-end/ExtensionCommon.js:
2902 * inspector/front-end/ExtensionServer.js:
2903 (WebInspector.ExtensionServer.prototype._addExtensions):
2904 (WebInspector.ExtensionServer.prototype._addExtension):
2905 (WebInspector.ExtensionServer.prototype._buildExtensionAPIScript):
2906 (WebInspector.ExtensionServer.prototype._onWindowMessage):
2907 (WebInspector.ExtensionServer.prototype._registerExtension):
2908 (WebInspector.ExtensionServer.prototype._expandResourcePath):
2909 * inspector/front-end/WebKit.qrc:
2910 * inspector/front-end/inspector.html:
2912 2011-09-16 Ilya Tikhonovsky <loislo@chromium.org>
2914 Web Inspector: change WebInspector.currentPanel getter/setter to functions.
2915 https://bugs.webkit.org/show_bug.cgi?id=68242
2917 This is necessary for the panel switching performance tests.
2919 Reviewed by Pavel Feldman.
2921 * inspector/front-end/Drawer.js:
2922 (WebInspector.Drawer.prototype.show.animationFinished):
2923 (WebInspector.Drawer.prototype.show):
2924 (WebInspector.Drawer.prototype.hide):
2925 (WebInspector.Drawer.prototype._animateDrawerHeight.animationFinished):
2926 (WebInspector.Drawer.prototype._animateDrawerHeight):
2927 (WebInspector.Drawer.prototype._statusBarDragging):
2928 * inspector/front-end/ElementsPanel.js:
2929 (WebInspector.ElementsPanel.prototype.switchToAndFocus):
2930 * inspector/front-end/ResourcesPanel.js:
2931 (WebInspector.ResourcesPanel.prototype.showAnchorLocation):
2932 * inspector/front-end/ScriptsPanel.js:
2933 * inspector/front-end/SearchController.js:
2934 (WebInspector.SearchController.prototype.updateSearchMatchesCount):
2935 (WebInspector.SearchController.prototype.updateCurrentMatchIndex):
2936 (WebInspector.SearchController.prototype.updateSearchLabel):
2937 (WebInspector.SearchController.prototype.handleShortcut):
2938 (WebInspector.SearchController.prototype._performSearch):
2939 * inspector/front-end/Toolbar.js:
2940 (WebInspector.Toolbar.createPanelToolbarItem.onToolbarItemClicked):
2941 (WebInspector.Toolbar.createPanelToolbarItem):
2942 * inspector/front-end/inspector.js:
2943 (WebInspector.currentPanel):
2944 (WebInspector._updateFocusedNode):
2945 (WebInspector.windowResize):
2946 (WebInspector.documentKeyDown):
2947 (WebInspector.documentCanCopy):
2948 (WebInspector.documentCopy):
2949 (WebInspector.showPanel):
2950 (WebInspector.startUserInitiatedDebugging):
2951 (WebInspector.inspect):
2952 (WebInspector._showAnchorLocationInPanel):
2953 (WebInspector._toolbarItemClicked):
2954 (WebInspector.PanelHistory.prototype.goBack):
2955 (WebInspector.PanelHistory.prototype.goForward):
2957 2011-09-15 Pavel Feldman <pfeldman@google.com>
2959 Web Inspector: rename Console.clearConsoleMessages to Console.clearMessages, brush up console domain doc.
2960 https://bugs.webkit.org/show_bug.cgi?id=68165
2962 Reviewed by Yury Semikhatsky.
2964 * inspector/InjectedScriptHost.cpp:
2965 (WebCore::InjectedScriptHost::clearConsoleMessages):
2966 * inspector/Inspector.json:
2967 * inspector/InspectorConsoleAgent.cpp:
2968 (WebCore::InspectorConsoleAgent::clearMessages):
2969 * inspector/InspectorConsoleAgent.h:
2970 * inspector/front-end/ConsoleModel.js:
2971 (WebInspector.ConsoleModel.prototype.requestClearMessages):
2973 2011-09-16 Alejandro G. Castro <alex@igalia.com>
2975 Fix GTK build after r95245.
2977 * GNUmakefile.list.am:
2979 2011-09-16 Leo Yang <leo.yang@torchmobile.com.cn>
2981 [Qt] Crash when dragging google maps.
2982 https://bugs.webkit.org/show_bug.cgi?id=68223
2984 The custom image for a cursor might not be ready when WebKit trying
2985 to use it to construct the cursor in Qt porting. This patch is using
2986 arrow image to substitute the unready custom image.
2988 Reviewed by Adam Barth.
2990 Test: fast/css/crash-on-custom-cursor-when-loading.html
2992 * platform/qt/CursorQt.cpp:
2993 (WebCore::createCustomCursor):
2994 (WebCore::Cursor::ensurePlatformCursor):
2996 2011-09-15 Adam Barth <abarth@webkit.org>
2998 Rename ENABLE(DATABASE) to ENABLE(SQL_DATABASE)
2999 https://bugs.webkit.org/show_bug.cgi?id=68205
3001 Reviewed by Eric Seidel.
3003 As discussed on webkit-dev.
3006 * Configurations/FeatureDefines.xcconfig:
3008 * GNUmakefile.list.am:
3010 * bindings/generic/RuntimeEnabledFeatures.cpp:
3011 * bindings/generic/RuntimeEnabledFeatures.h:
3012 * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
3013 * bindings/js/JSDOMBinding.cpp:
3014 (WebCore::setDOMException):
3015 * bindings/js/JSExceptionBase.cpp:
3016 (WebCore::toExceptionBase):
3017 * bindings/js/JSInjectedScriptHostCustom.cpp:
3018 (WebCore::JSInjectedScriptHost::databaseId):
3019 * bindings/js/JSSQLResultSetRowListCustom.cpp:
3020 * bindings/js/JSSQLTransactionCustom.cpp:
3021 * bindings/js/JSSQLTransactionSyncCustom.cpp:
3022 * bindings/scripts/test/CPP/WebDOMTestCallback.cpp:
3023 * bindings/scripts/test/CPP/WebDOMTestCallback.h:
3024 * bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp:
3025 * bindings/scripts/test/JS/JSTestCallback.cpp:
3026 * bindings/scripts/test/JS/JSTestCallback.h:
3027 * bindings/scripts/test/ObjC/DOMTestCallback.mm:
3028 * bindings/scripts/test/TestCallback.idl:
3029 * bindings/scripts/test/V8/V8TestCallback.cpp:
3030 * bindings/scripts/test/V8/V8TestCallback.h:
3031 * bindings/v8/V8Proxy.cpp:
3032 (WebCore::V8Proxy::setDOMException):
3033 * bindings/v8/V8Proxy.h:
3034 * bindings/v8/custom/V8CustomSQLStatementErrorCallback.cpp:
3035 * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
3036 (WebCore::V8InjectedScriptHost::databaseIdCallback):
3037 * bindings/v8/custom/V8SQLResultSetRowListCustom.cpp:
3038 * bindings/v8/custom/V8SQLTransactionCustom.cpp:
3039 * bindings/v8/custom/V8SQLTransactionSyncCustom.cpp:
3042 * dom/ExceptionCode.cpp:
3043 (WebCore::getExceptionCodeDescription):
3044 * dom/ExceptionCode.h:
3045 * dom/ScriptExecutionContext.cpp:
3046 (WebCore::ScriptExecutionContext::ScriptExecutionContext):
3047 (WebCore::ScriptExecutionContext::~ScriptExecutionContext):
3048 * dom/ScriptExecutionContext.h:
3050 * history/PageCache.cpp:
3051 (WebCore::logCanCacheFrameDecision):
3052 (WebCore::PageCache::canCachePageContainingThisFrame):
3053 * inspector/InjectedScriptHost.cpp:
3054 (WebCore::InjectedScriptHost::InjectedScriptHost):
3055 (WebCore::InjectedScriptHost::disconnect):
3056 * inspector/InjectedScriptHost.h:
3057 (WebCore::InjectedScriptHost::init):
3058 * inspector/InspectorController.cpp:
3059 (WebCore::InspectorController::InspectorController):
3060 (WebCore::InspectorController::connectFrontend):
3061 (WebCore::InspectorController::disconnectFrontend):
3062 (WebCore::InspectorController::restoreInspectorStateFromCookie):
3063 * inspector/InspectorController.h:
3064 * inspector/InspectorDatabaseAgent.cpp:
3065 * inspector/InspectorDatabaseInstrumentation.h:
3066 * inspector/InspectorDatabaseResource.cpp:
3067 * inspector/InspectorDatabaseResource.h:
3068 * inspector/InspectorInstrumentation.cpp:
3069 (WebCore::InspectorInstrumentation::didCommitLoadImpl):
3070 * inspector/InspectorInstrumentation.h:
3071 * inspector/InstrumentingAgents.h:
3072 (WebCore::InstrumentingAgents::InstrumentingAgents):
3073 * inspector/WorkerInspectorController.cpp:
3074 (WebCore::WorkerInspectorController::WorkerInspectorController):
3075 (WebCore::WorkerInspectorController::connectFrontend):
3076 * loader/EmptyClients.h:
3077 * loader/FrameLoader.cpp:
3078 (WebCore::FrameLoader::stopLoading):
3079 * page/ChromeClient.h:
3080 * page/DOMWindow.cpp:
3082 * page/DOMWindow.idl:
3083 * platform/sql/SQLiteAuthorizer.cpp:
3084 * platform/sql/SQLiteDatabase.cpp:
3085 * platform/sql/SQLiteFileSystem.cpp:
3086 * platform/sql/SQLiteStatement.cpp:
3087 * platform/sql/SQLiteTransaction.cpp:
3088 * storage/AbstractDatabase.cpp:
3089 * storage/AbstractDatabase.h:
3090 * storage/ChangeVersionWrapper.cpp:
3091 * storage/ChangeVersionWrapper.h:
3092 * storage/Database.cpp:
3093 * storage/Database.h:
3094 * storage/Database.idl:
3095 * storage/DatabaseAuthorizer.cpp:
3096 * storage/DatabaseCallback.h:
3097 * storage/DatabaseCallback.idl:
3098 * storage/DatabaseDetails.h:
3099 * storage/DatabaseSync.cpp:
3100 * storage/DatabaseSync.h:
3101 * storage/DatabaseSync.idl:
3102 * storage/DatabaseTask.cpp:
3103 * storage/DatabaseTask.h:
3104 * storage/DatabaseThread.cpp:
3105 * storage/DatabaseThread.h:
3106 * storage/DatabaseTracker.cpp:
3107 * storage/DatabaseTracker.h:
3108 * storage/DatabaseTrackerClient.h:
3109 * storage/OriginQuotaManager.cpp:
3110 * storage/OriginQuotaManager.h:
3111 * storage/OriginUsageRecord.cpp:
3112 * storage/OriginUsageRecord.h:
3113 * storage/SQLCallbackWrapper.h:
3114 * storage/SQLError.h:
3115 * storage/SQLError.idl:
3116 * storage/SQLException.h:
3117 * storage/SQLException.idl:
3118 * storage/SQLResultSet.cpp:
3119 * storage/SQLResultSet.h:
3120 * storage/SQLResultSet.idl:
3121 * storage/SQLResultSetRowList.cpp:
3122 * storage/SQLResultSetRowList.h:
3123 * storage/SQLResultSetRowList.idl:
3124 * storage/SQLStatement.cpp:
3125 * storage/SQLStatement.h:
3126 * storage/SQLStatementCallback.h:
3127 * storage/SQLStatementCallback.idl:
3128 * storage/SQLStatementErrorCallback.h:
3129 * storage/SQLStatementErrorCallback.idl:
3130 * storage/SQLStatementSync.cpp:
3131 * storage/SQLStatementSync.h:
3132 * storage/SQLTransaction.cpp:
3133 * storage/SQLTransaction.h:
3134 * storage/SQLTransaction.idl:
3135 * storage/SQLTransactionCallback.h:
3136 * storage/SQLTransactionCallback.idl:
3137 * storage/SQLTransactionClient.cpp:
3138 * storage/SQLTransactionClient.h:
3139 * storage/SQLTransactionCoordinator.cpp:
3140 * storage/SQLTransactionCoordinator.h:
3141 * storage/SQLTransactionErrorCallback.h:
3142 * storage/SQLTransactionErrorCallback.idl:
3143 * storage/SQLTransactionSync.cpp:
3144 * storage/SQLTransactionSync.h:
3145 * storage/SQLTransactionSync.idl:
3146 * storage/SQLTransactionSyncCallback.h:
3147 * storage/SQLTransactionSyncCallback.idl:
3148 * storage/chromium/DatabaseObserver.h:
3149 * storage/chromium/DatabaseTrackerChromium.cpp:
3150 * storage/chromium/QuotaTracker.cpp:
3151 * storage/chromium/QuotaTracker.h:
3152 * storage/chromium/SQLTransactionClientChromium.cpp:
3153 * workers/WorkerContext.cpp:
3154 * workers/WorkerContext.h:
3155 * workers/WorkerContext.idl:
3156 * workers/WorkerThread.cpp:
3157 (WebCore::WorkerThreadShutdownStartTask::performTask):
3158 (WebCore::WorkerThread::stop):
3160 2011-09-15 Alexandru Chiculita <achicu@adobe.com>
3162 [CSSRegions] Regions should not slice line box rendering
3163 https://bugs.webkit.org/show_bug.cgi?id=66198
3165 Created a new LayoutState constructor for the RenderFlowThread. It will
3166 set m_isPaginated to true and force a pageHeight if 1. The actual pageHeight is
3167 not used, because pageLogicalHeightForOffset will actually redirect the call
3168 to RenderFlowThread.
3170 Removed some of the duplicate code that calculated the page logical offset.
3171 Added new methods like logicalPageOffset, pageLogicalHeightForOffset,
3172 pageRemainingLogicalHeightForOffset.
3174 There are still some issues related to incremental layout and different region widths.
3175 Those issues will be addressed in different patches.
3177 Reviewed by David Hyatt.
3179 Tests: fast/regions/text-region-breaks.html
3180 fast/regions/text-region-split-horizontal-bt.html
3181 fast/regions/text-region-split-vertical-rl.html
3182 fast/regions/text-region-split-vertical.html
3183 fast/regions/text-region-split.html
3185 * rendering/LayoutState.cpp:
3186 (WebCore::LayoutState::LayoutState):
3187 * rendering/LayoutState.h:
3188 (WebCore::LayoutState::LayoutState):
3189 (WebCore::LayoutState::isPaginated):
3190 * rendering/RenderBlock.cpp:
3191 (WebCore::RenderBlock::positionNewFloats):
3192 (WebCore::RenderBlock::adjustForRegionFittingIfNeeded):
3193 (WebCore::RenderBlock::nextPageLogicalTopExcludingBoundaryPoint):
3194 (WebCore::RenderBlock::nextPageLogicalTopIncludingBoundaryPoint):
3195 (WebCore::inNormalFlow):
3196 (WebCore::RenderBlock::applyBeforeBreak):
3197 (WebCore::RenderBlock::applyAfterBreak):
3198 (WebCore::RenderBlock::logicalPageOffset):
3199 (WebCore::RenderBlock::pageLogicalHeightForOffset):
3200 (WebCore::RenderBlock::pageRemainingLogicalHeightForOffset):
3201 (WebCore::RenderBlock::adjustForUnsplittableChild):
3202 (WebCore::RenderBlock::adjustLinePositionForPagination):
3203 * rendering/RenderBlock.h:
3204 * rendering/RenderFlowThread.cpp:
3205 (WebCore::RenderFlowThread::layout):
3206 (WebCore::RenderFlowThread::regionLogicalHeightForLine):
3207 (WebCore::RenderFlowThread::regionRemainingLogicalHeightForLine):
3208 * rendering/RenderFlowThread.h:
3209 * rendering/RenderView.cpp:
3210 (WebCore::RenderView::pushLayoutState):
3211 * rendering/RenderView.h:
3212 (WebCore::LayoutStateMaintainer::LayoutStateMaintainer):
3213 (WebCore::LayoutStateMaintainer::push):
3215 2011-09-15 Kentaro Hara <haraken@google.com>
3217 Implement a PopStateEvent constructor for JSC
3218 https://bugs.webkit.org/show_bug.cgi?id=67977
3220 Reviewed by Sam Weinig.
3222 Test: fast/events/constructors/pop-state-event-constructor.html
3224 * bindings/generic/EventConstructors.h: Added a definition for the PopStateEvent constructor.
3225 * bindings/js/JSEventConstructors.cpp: Added #includes for PopStateEvent.
3226 * dom/PopStateEvent.cpp:
3227 (WebCore::PopStateEventInit::PopStateEventInit):
3228 (WebCore::PopStateEvent::PopStateEvent):
3229 (WebCore::PopStateEvent::create):
3230 * dom/PopStateEvent.h: Added a definition for PopStateEventInit.
3231 * dom/PopStateEvent.idl: Makes PopStateEvent constructible.
3233 2011-09-15 Mihai Parparita <mihaip@chromium.org>
3235 Fragment navigations should interrupt a provisional load of a different document
3236 https://bugs.webkit.org/show_bug.cgi?id=64556
3238 Reviewed by Adam Barth.
3240 Tests: http/tests/history/back-with-fragment-change.php
3241 http/tests/navigation/navigation-interrupted-by-fragment.html
3243 * loader/FrameLoader.cpp: Stop provisional load if a fragment commits.
3244 * loader/HistoryController.cpp: Don't commit the wrong provisional item.
3246 2011-09-15 Adrienne Walker <enne@google.com>
3248 [chromium] Add temporary diagnostics for LayerTreeHost::commitTo crash
3249 https://bugs.webkit.org/show_bug.cgi?id=68204
3251 Reviewed by James Robinson.
3253 Add CRASH calls to determine which assumptions are being violated.
3255 * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
3256 (WebCore::CCLayerTreeHost::commitTo):
3258 2011-09-15 Mark Hahnenberg <mhahnenberg@apple.com>
3260 Unzip initialization lists and constructors in JSCell hierarchy (7/7)
3261 https://bugs.webkit.org/show_bug.cgi?id=68122
3263 Reviewed by Geoffrey Garen.
3267 Completed the seventh and final level of the refactoring to add finishCreation()
3268 methods to all classes within the JSCell hierarchy with non-trivial
3271 This consists of moving the finishCreation() method call into the create methods
3272 of the sixth level of the hierarchy as was done in previous patches.
3274 The special cases for JSAudioConstructor, JSOptionConstructor, and JSImageConstructor
3275 were also lumped in and given finishCreation() methods that are called in their
3276 create methods because we are at the end and want to avoid a trivial patch just
3277 for moving their finishCreation() methods from their constructor to their create method.
3279 * bindings/js/JSAudioConstructor.cpp:
3280 (WebCore::JSAudioConstructor::JSAudioConstructor):
3281 (WebCore::JSAudioConstructor::finishCreation):
3282 * bindings/js/JSAudioConstructor.h:
3283 (WebCore::JSAudioConstructor::create):
3284 * bindings/js/JSDOMBinding.h:
3285 (WebCore::DOMConstructorWithDocument::DOMConstructorWithDocument):
3286 * bindings/js/JSDOMWindowBase.cpp:
3287 (WebCore::JSDOMWindowBase::JSDOMWindowBase):
3288 * bindings/js/JSImageConstructor.cpp:
3289 (WebCore::JSImageConstructor::JSImageConstructor):
3290 (WebCore::JSImageConstructor::finishCreation):
3291 * bindings/js/JSImageConstructor.h:
3292 (WebCore::JSImageConstructor::create):
3293 * bindings/js/JSOptionConstructor.cpp:
3294 (WebCore::JSOptionConstructor::JSOptionConstructor):
3295 (WebCore::JSOptionConstructor::finishCreation):
3296 * bindings/js/JSOptionConstructor.h:
3297 (WebCore::JSOptionConstructor::create):
3298 * bindings/js/JSWorkerContextBase.cpp:
3299 (WebCore::JSWorkerContextBase::JSWorkerContextBase):
3301 The bindings generation script was also changed to move the finishCreation() call into the
3302 create methods for descendants of JSWorkerContextBase and JSDOMWindowBase because those base
3303 classes had it removed from their constructors.
3305 * bindings/scripts/CodeGeneratorJS.pm:
3307 * bridge/c/c_instance.cpp:
3308 (JSC::Bindings::CRuntimeMethod::create):
3309 (JSC::Bindings::CRuntimeMethod::CRuntimeMethod):
3310 * bridge/jni/jsc/JavaInstanceJSC.cpp:
3311 (JavaRuntimeMethod::create):
3312 (JavaRuntimeMethod::JavaRuntimeMethod):
3313 * bridge/objc/objc_instance.mm:
3314 (ObjCRuntimeMethod::create):
3315 (ObjCRuntimeMethod::ObjCRuntimeMethod):
3316 * bridge/qt/qt_runtime.cpp:
3317 (JSC::Bindings::QtRuntimeMetaMethod::QtRuntimeMetaMethod):
3318 (JSC::Bindings::QtRuntimeConnectionMethod::QtRuntimeConnectionMethod):
3319 * bridge/qt/qt_runtime.h:
3320 (JSC::Bindings::QtRuntimeMetaMethod::create):
3321 (JSC::Bindings::QtRuntimeConnectionMethod::create):
3323 2011-09-15 Kentaro Hara <haraken@google.com>
3325 A single line must not be split into two pages.
3326 https://bugs.webkit.org/show_bug.cgi?id=65005
3328 Reviewed by David Hyatt.
3330 When the document width of a page is overflowed, the last line of the page can be
3331 split into the next page. This is the regression caused by r88737. r88737 tried to
3332 fix rounding errors in rendering calculations by expanding and shrinking a page
3333 using one common method, resizePageRectsKeepingRatio(), but overlooked the case where
3334 a document width gets overflowed.
3336 This patch fixes the problem by also using resizePageRectsKeepingRatio() for the case
3337 where the document width gets overflowed.
3339 Test: printing/single-line-must-not-be-split-into-two-pages.html
3341 * WebCore.exp.in: Updated the signature of forceLayoutForPagination().
3343 (WebCore::Frame::setPrinting): Added a new argument |originalPageSize|, which is an original page size before being expanded or shrunk.
3345 * page/FrameView.cpp:
3346 (WebCore::FrameView::forceLayoutForPagination): Uses resizePageRectsKeepingRatio() in the case where the document width gets overflowed.
3348 * page/PrintContext.cpp:
3349 (WebCore::PrintContext::begin): Passes an original page size to setPrinting().
3350 (WebCore::PrintContext::end): Ditto.
3352 2011-09-15 Sheriff Bot <webkit.review.bot@gmail.com>
3354 Unreviewed, rolling out r95243 and r95246.
3355 http://trac.webkit.org/changeset/95243
3356 http://trac.webkit.org/changeset/95246
3357 https://bugs.webkit.org/show_bug.cgi?id=68202
3359 Broke the Windows build (Requested by smfr on #webkit).
3361 * WebCore.vcproj/WebCore.vcproj:
3362 * platform/graphics/ca/win/LayerChangesFlusher.cpp:
3363 (WebCore::LayerChangesFlusher::hookCallback):
3364 * platform/graphics/ca/win/PlatformCAAnimationWin.cpp:
3365 (PlatformCAAnimation::copy):
3366 * platform/win/StructuredExceptionHandlerSupressor.h: Removed.
3368 2011-09-15 Simon Fraser <simon.fraser@apple.com>
3370 Attempt to fix Windows build after r95243.
3372 * WebCore.vcproj/WebCore.vcproj:
3374 2011-09-15 Simon Fraser <simon.fraser@apple.com>
3376 Make custom scrollbar theme for use in DRT, to reduce pixel differences between platforms
3377 https://bugs.webkit.org/show_bug.cgi?id=68134
3379 Reviewed by James Robinson.
3381 Add new scrollbar theme, called ScrollbarThemeMock, for use in layout
3382 tests. The mock scrollbar simply draws a light gray box in the track,
3383 with a dark gray box for the thumb.
3385 Add ScrollbarThemeMock files to the build on all platforms. It isn't hooked up yet.
3388 * CMakeListsEfl.txt:
3389 * CMakeListsWinCE.txt:
3390 * GNUmakefile.list.am:
3393 * WebCore.vcproj/WebCore.vcproj:
3394 * WebCore.xcodeproj/project.pbxproj:
3395 * platform/mac/ScrollbarThemeMac.mm:
3396 (WebCore::ScrollbarTheme::nativeTheme):
3397 * platform/mock/ScrollbarThemeMock.cpp: Added.
3398 (WebCore::ScrollbarThemeMock::trackRect):
3399 (WebCore::ScrollbarThemeMock::scrollbarThickness):
3400 (WebCore::ScrollbarThemeMock::paintTrackBackground):
3401 (WebCore::ScrollbarThemeMock::paintThumb):
3402 * platform/mock/ScrollbarThemeMock.h: Added.
3403 (WebCore::ScrollbarThemeMock::hasButtons):
3404 (WebCore::ScrollbarThemeMock::hasThumb):
3405 (WebCore::ScrollbarThemeMock::backButtonRect):
3406 (WebCore::ScrollbarThemeMock::forwardButtonRect):
3408 2011-09-15 Beth Dakin <bdakin@apple.com>
3410 https://bugs.webkit.org/show_bug.cgi?id=67884
3411 Delete button icon does not properly update when the device resolution changes
3414 <rdar://problem/10104632>
3416 Reviewed by Darin Adler.
3418 In DeleteButtonController::deviceScaleFactorChanged(), if the delete button is
3419 currently showing, hide it and re-show it, forcing it to re-create the deletion
3421 * editing/DeleteButtonController.cpp:
3422 (WebCore::DeleteButtonController::deviceScaleFactorChanged):
3423 * editing/DeleteButtonController.h:
3424 * editing/Editor.cpp:
3425 (WebCore::Editor::deviceScaleFactorChanged):
3428 Iterate through all of the frames and propagate the deviceScaleFactorChange()
3431 (WebCore::Page::setDeviceScaleFactor):
3433 2011-09-15 Chris Marrin <cmarrin@apple.com>
3435 Crash can occur when doing a PlatformCAAnimation::copy() with no valueFunction
3436 https://bugs.webkit.org/show_bug.cgi?id=67510
3438 Reviewed by Adam Roben.
3440 Another fix to take care of one last crash when running pause-crash.html.
3441 CACF can't deal with null valueFunctions, so avoid setting it when it doesn't
3444 This also adds logic to the Windows Hook in LayerChangesFlusher to prevent it
3445 from catching the null pointer exception generated by the pause-crash.html test
3446 before this bug was fixed. Windows was ignoring the exception, so the testcase
3447 would appear to succeed, even though it should have crashed.
3449 * WebCore.vcproj/WebCore.vcproj:
3450 * platform/graphics/ca/win/LayerChangesFlusher.cpp:
3451 (WebCore::LayerChangesFlusher::hookCallback):
3452 * platform/graphics/ca/win/PlatformCAAnimationWin.cpp:
3453 (PlatformCAAnimation::copy):
3454 * platform\win\StructuredExceptionHandlerSupressor.h: New file to encapsulate the exception handling supression.
3456 2011-09-15 David Hyatt <hyatt@apple.com>
3458 https://bugs.webkit.org/show_bug.cgi?id=27579
3460 Make sure that the border shorthand also resets border-image.
3462 Reviewed by Beth Dakin.
3464 Added fast/borders/border-image-reset-by-border-shorthand.html.
3466 * css/CSSParser.cpp:
3467 (WebCore::CSSParser::parseValue):
3469 2011-09-15 David Hyatt <hyatt@apple.com>
3471 https://bugs.webkit.org/show_bug.cgi?id=50072
3473 Make overflow clipping to border-radius work across layers. This patch makes painting
3474 work but does not attempt to fix hit testing. It also doesn't work when a composited
3475 layer is clipped by a non-composited ancestor.
3477 Add a new ClipRect class (used by ClipRects and RenderLayer) that is basically just tracking
3478 a rect and a border radius taint. At the time we set a clip, if the rectangle is listed
3479 as also being clipped by a radius, then we walk up the layer tree and push those inner border
3480 rounded rect clips for any overflow areas in the containing block chain.
3482 Reviewed by Beth Dakin.
3484 Added new tests in fast/clip.
3486 * rendering/RenderBox.cpp:
3487 (WebCore::RenderBox::pushContentsClip):
3488 * rendering/RenderLayer.cpp:
3489 (WebCore::inContainingBlockChain):
3490 (WebCore::RenderLayer::clipToRect):
3491 (WebCore::RenderLayer::restoreClip):
3492 (WebCore::RenderLayer::paintLayer):
3493 (WebCore::RenderLayer::hitTestLayer):
3494 (WebCore::RenderLayer::calculateClipRects):
3495 (WebCore::RenderLayer::backgroundClipRect):
3496 (WebCore::RenderLayer::calculateRects):
3497 (WebCore::RenderLayer::childrenClipRect):
3498 (WebCore::RenderLayer::selfClipRect):
3499 * rendering/RenderLayer.h:
3500 (WebCore::ClipRect::ClipRect):