1 2011-09-21 Dan Bernstein <mitz@apple.com>
3 WebCore part of: Prevent the WebKit frameworks from defining inappropriately-named Objective-C classes
4 https://bugs.webkit.org/show_bug.cgi?id=68451
6 Reviewed by Darin Adler.
8 * WebCore.xcodeproj/project.pbxproj: Added a script build phase that invokes
9 check-for-inappropriate-objc-class-names, allowing only class names prefixed with "DOM" or "Web".
11 2011-09-21 Dan Bernstein <mitz@apple.com>
13 <rdar://problem/9768483> REGRESSION: Crash in RenderBlock::removeFloatingObjectsBelow()
14 https://bugs.webkit.org/show_bug.cgi?id=68550
16 Reviewed by Darin Adler.
18 Test: fast/multicol/null-lastFloat-in-removeFloatingObjectsBelow.html
20 * rendering/RenderBlock.cpp:
21 (WebCore::RenderBlock::removeFloatingObjectsBelow): Break out of the while() loop when the
22 floating object set is empty, which can happen if there were no floats on previous lines
23 (in which case, lastFloat is 0).
25 2011-09-21 ChangSeok Oh <shivamidow@gmail.com>
27 [GTK] Fix build break when enabling webgl on r95593
28 https://bugs.webkit.org/show_bug.cgi?id=68502
30 Reviewed by Martin Robinson.
32 Add PassOwnPtr.h to GC3DPrivate.h and remove useless one from GC3DGtk.cpp & GC3DPrivate.cpp
36 * platform/graphics/gtk/GraphicsContext3DGtk.cpp:
37 * platform/graphics/gtk/GraphicsContext3DPrivate.cpp:
38 * platform/graphics/gtk/GraphicsContext3DPrivate.h:
40 2011-09-21 Vsevolod Vlasov <vsevik@chromium.org>
42 Web Inspector: clear resource agent resource cache upon resource agent's disable.
43 https://bugs.webkit.org/show_bug.cgi?id=67995
45 Reviewed by Pavel Feldman.
47 Test: http/tests/inspector/network/network-disabling-check-no-memory-leak.html
49 * inspector/InspectorResourceAgent.cpp:
50 (WebCore::InspectorResourceAgent::disable):
52 2011-09-21 David Hyatt <hyatt@apple.com>
54 https://bugs.webkit.org/show_bug.cgi?id=68543
56 Make sure that when regions change dimensions we recompute pagination slices.
58 Reviewed by Simon Fraser.
60 Added new tests in fast/regions.
62 * rendering/LayoutState.cpp:
63 (WebCore::LayoutState::LayoutState):
64 * rendering/LayoutState.h:
65 * rendering/RenderFlowThread.cpp:
66 (WebCore::RenderFlowThread::layout):
67 (WebCore::RenderFlowThread::renderRegionForLine):
68 (WebCore::RenderFlowThread::regionLogicalWidthForLine):
69 * rendering/RenderRegion.cpp:
70 (WebCore::RenderRegion::layout):
71 * rendering/RenderView.cpp:
72 (WebCore::RenderView::pushLayoutState):
73 * rendering/RenderView.h:
74 (WebCore::LayoutStateMaintainer::LayoutStateMaintainer):
75 (WebCore::LayoutStateMaintainer::push):
77 2011-09-21 Xianzhu Wang <wangxianzhu@chromium.org>
79 Ensure TestWebKitAPI works on mac, win, chromium-mac and chromium-linux
80 https://bugs.webkit.org/show_bug.cgi?id=68206
82 Reviewed by Tony Chang.
84 Added two new wtf headers into ForwardingHeaders/wtf to make
85 #include <wtf/...h> cross-platform.
88 * ForwardingHeaders/wtf/MetaAllocator.h: Added.
89 * ForwardingHeaders/wtf/RedBlackTree.h: Added.
91 2011-09-21 David Delaune <david.delaune@googlemail.com>
93 [WinCairo] IconDatabase::defaultIcon always fails for non-CAN_THEME_URL_ICON builds.
94 https://bugs.webkit.org/show_bug.cgi?id=67469
96 Reviewed by Brent Fulgham.
98 No new functionality added in this change.
100 * loader/icon/IconDatabase.cpp: defining CAN_THEME_URL_ICON for the WIN_CAIRO
102 2011-09-20 Ryosuke Niwa <rniwa@webkit.org>
104 Span element gets produced using backspace/delete to merge header with paragraph
105 https://bugs.webkit.org/show_bug.cgi?id=68413
107 Reviewed by Darin Adler.
109 Add p element to the list of elements to retain appearance. Also modified removeStyleFromNode
110 (and renamed to removeStyleFromRules) not to remove inline style declarations because
111 inline styles need to stay on copy.
113 Test: editing/deleting/merge-paragraph-from-p-with-style.html
115 * editing/DeleteSelectionCommand.cpp:
116 (WebCore::DeleteSelectionCommand::saveTypingStyleState):
117 * editing/EditingStyle.cpp:
118 (WebCore::EditingStyle::removeStyleFromRules): Renamed from removeStyleFromNode.
119 * editing/EditingStyle.h:
120 * editing/markup.cpp:
121 (WebCore::isBlockNodeToRetainAppearance):
122 (WebCore::StyledMarkupAccumulator::serializeNodes):
124 2011-09-21 Alice Boxhall <aboxhall@chromium.org>
126 Report AXValueChanged when value changes in element with role=textbox.
127 https://bugs.webkit.org/show_bug.cgi?id=68201
129 Reviewed by Chris Fleizach.
131 Test: platform/mac/accessibility/textbox-role-reports-notifications.html
133 * accessibility/AccessibilityObject.cpp:
134 (WebCore::AccessibilityObject::isARIATextControl):
135 * accessibility/AccessibilityObject.h:
136 * accessibility/AccessibilityRenderObject.cpp:
137 (WebCore::AccessibilityRenderObject::contentChanged):
138 (WebCore::AccessibilityRenderObject::childrenChanged):
140 2011-09-21 Pavel Feldman <pfeldman@google.com>
142 Web Inspector: introduce Page.enable and Page.disable
143 https://bugs.webkit.org/show_bug.cgi?id=68530
145 Otherwise protocol is violating the contract of not sending
146 notifications by default.
148 Reviewed by Yury Semikhatsky.
150 * inspector/Inspector.json:
152 2011-09-21 Pavel Feldman <pfeldman@google.com>
154 Web Inspector: add minimal error handling to the DOM breakpoints.
155 https://bugs.webkit.org/show_bug.cgi?id=68537
157 Reviewed by Yury Semikhatsky.
159 * inspector/InspectorDOMAgent.h:
160 * inspector/InspectorDOMDebuggerAgent.cpp:
161 (WebCore::domTypeForName):
162 (WebCore::InspectorDOMDebuggerAgent::setDOMBreakpoint):
163 (WebCore::InspectorDOMDebuggerAgent::removeDOMBreakpoint):
165 2011-09-21 Ilya Tikhonovsky <loislo@chromium.org>
167 Web Inspector: make WebInspector a bit more timeline friendly.
168 https://bugs.webkit.org/show_bug.cgi?id=68534
170 I found that the maximum captured stack frame depth tracked by timeline is not
171 very convenient because the average depth of call stack considerably more than five.
172 Another useful trick is console.timeStamp for all backend calls.
174 Reviewed by Yury Semikhatsky.
176 * inspector/CodeGeneratorInspector.pm:
177 * inspector/front-end/TimelinePanel.js:
178 (WebInspector.TimelinePanel.prototype._toggleTimelineButtonClicked):
180 2011-09-21 Jesus Sanchez-Palencia <jesus.palencia@openbossa.org>
182 [Qt][WK2] Implement Download support in WebProcess
183 https://bugs.webkit.org/show_bug.cgi?id=68153
185 Reviewed by Andreas Kling.
187 Refactored QNetworkReplyHandler::finish() in order to add
188 and use the static function QNetworkReplyHandler::errorForReply().
189 This will be used by our Download implementation in WebKit2 (WebProcess)
190 when handling ResourceError.
192 * platform/network/qt/QNetworkReplyHandler.cpp:
193 (WebCore::QNetworkReplyHandler::finish):
194 (WebCore::QNetworkReplyHandler::errorForReply):
195 * platform/network/qt/QNetworkReplyHandler.h:
196 * platform/network/qt/ResourceRequest.h:
198 2011-09-21 Pavel Feldman <pfeldman@google.com>
200 Web Inspector: paint box model colors in Metrics sidebar at all times, do not draw box outlines.
201 https://bugs.webkit.org/show_bug.cgi?id=68240
203 Today we paint backgrounds in Metrics box model on hover only - should be painted at all
204 times for the reference. Outlining boxes is highlight is wrong since outlines are outside
205 the corresponding box regions. We've seen few reports on that + Firebug does not do borders
208 Reviewed by Yury Semikhatsky.
210 * inspector/DOMNodeHighlighter.cpp:
211 * inspector/DOMNodeHighlighter.h:
212 * inspector/Inspector.json:
213 * inspector/InspectorDOMAgent.cpp:
214 (WebCore::InspectorDOMAgent::setHighlightDataFromConfig):
215 * inspector/front-end/Color.js:
216 * inspector/front-end/MetricsSidebarPane.js:
217 (WebInspector.MetricsSidebarPane.prototype._highlightDOMNode):
218 (WebInspector.MetricsSidebarPane.prototype._updateMetrics):
219 * inspector/front-end/inspector.css:
221 * inspector/front-end/inspector.js:
222 (WebInspector.buildHighlightConfig):
224 2011-09-21 Andreas Kling <kling@webkit.org>
226 Protect against misuse of EventListenerIterator.
227 https://bugs.webkit.org/show_bug.cgi?id=68364
229 Reviewed by Darin Adler.
231 In debug mode, keep track of the number of active EventListenerIterators
232 on an EventListenerMap, and assert that there are no iterators when the
233 map is being modified.
235 * dom/EventListenerMap.cpp:
236 (WebCore::EventListenerMap::EventListenerMap):
237 (WebCore::EventListenerMap::clear):
238 (WebCore::EventListenerMap::add):
239 (WebCore::EventListenerMap::remove):
240 (WebCore::EventListenerMap::find):
241 (WebCore::EventListenerMap::removeFirstEventListenerCreatedFromMarkup):
242 (WebCore::EventListenerMap::copyEventListenersNotCreatedFromMarkupToTarget):
243 (WebCore::EventListenerIterator::EventListenerIterator):
244 (WebCore::EventListenerIterator::~EventListenerIterator):
245 * dom/EventListenerMap.h:
247 2011-09-21 Pavel Feldman <pfeldman@google.com>
249 Web Inspector: minor fixes in the DOM domain of the protocol.
250 https://bugs.webkit.org/show_bug.cgi?id=68517
252 Reviewed by Yury Semikhatsky.
254 * inspector/Inspector.json:
255 * inspector/InspectorDOMAgent.cpp:
256 (WebCore::InspectorDOMAgent::setAttributesAsText):
257 * inspector/InspectorDOMAgent.h:
258 * inspector/front-end/DOMAgent.js:
259 (WebInspector.DOMNode.prototype.setAttribute):
261 2011-09-16 Pavel Feldman <pfeldman@google.com>
263 Web Inspector: limit the use of "Resource" term in the protocol.
264 https://bugs.webkit.org/show_bug.cgi?id=68250
266 Reviewed by Yury Semikhatsky.
268 * inspector/Inspector.json:
269 * inspector/InspectorResourceAgent.cpp:
270 (WebCore::InspectorResourceAgent::markResourceAsCached):
271 (WebCore::InspectorResourceAgent::didLoadResourceFromMemoryCache):
272 (WebCore::InspectorResourceAgent::setExtraHTTPHeaders):
273 (WebCore::InspectorResourceAgent::getResponseBody):
274 * inspector/InspectorResourceAgent.h:
275 * inspector/front-end/ExtensionServer.js:
276 (WebInspector.ExtensionServer.prototype._onAddRequestHeaders):
277 * inspector/front-end/NetworkManager.js:
278 (WebInspector.NetworkManager.prototype.requestContent):
279 (WebInspector.NetworkDispatcher.prototype.requestServedFromCache):
280 (WebInspector.NetworkDispatcher.prototype.requestServedFromMemoryCache):
282 2011-09-21 Sheriff Bot <webkit.review.bot@gmail.com>
284 Unreviewed, rolling out r95608.
285 http://trac.webkit.org/changeset/95608
286 https://bugs.webkit.org/show_bug.cgi?id=68521
288 breaks GTK and Windows builds. Please check EWS next time.
289 (Requested by philn-tp on #webkit).
291 * html/HTMLBodyElement.cpp:
292 (WebCore::adjustForZoom):
293 (WebCore::HTMLBodyElement::setScrollLeft):
294 (WebCore::HTMLBodyElement::setScrollTop):
295 * loader/HistoryController.cpp:
296 (WebCore::HistoryController::saveScrollPositionAndViewStateToItem):
297 * page/DOMWindow.cpp:
298 (WebCore::DOMWindow::scrollX):
299 (WebCore::DOMWindow::scrollY):
300 (WebCore::DOMWindow::scrollTo):
302 (WebCore::Frame::pageScaleFactor):
304 * page/FrameView.cpp:
305 (WebCore::FrameView::applyOverflowToViewport):
306 (WebCore::FrameView::scrollXForFixedPosition):
307 (WebCore::FrameView::scrollYForFixedPosition):
309 2011-09-21 Pavel Feldman <pfeldman@google.com>
311 Web Inspector: console panel's scroller is not properly aligned.
312 https://bugs.webkit.org/show_bug.cgi?id=68448
314 Reviewed by Yury Semikhatsky.
316 * inspector/front-end/inspector.css:
319 (#drawer #console-messages):
321 2011-09-20 Alpha Lam <hclam@chromium.org>
323 https://bugs.webkit.org/show_bug.cgi?id=68081
324 Fix scroll in page scaling mode.
326 Reviewed by Simon Fraser.
328 The following things are done in this patch:
329 1. Rename Frame::pageScaleFactor() to Frame::frameScaleFactor() to better
331 2. Frame::frameScaleFactor() returns the scale factor of this frame with
332 respect to the container. So for the main frame it'll return the scale
333 factor of the page, inner frames will return 1.0
334 3. scrollBy(), scrollX() and scrollY() to take into account of the frame
335 scale factor, causing incorrect coordinates reported to Javascript.
337 Tests: fast/events/scale-and-scroll-body.html
338 fast/events/scale-and-scroll-iframe-body.html
339 fast/events/scale-and-scroll-iframe-window.html
340 fast/events/scale-and-scroll-window.html
342 * html/HTMLBodyElement.cpp:
343 (WebCore::adjustForZoom):
344 (WebCore::HTMLBodyElement::setScrollLeft):
345 (WebCore::HTMLBodyElement::setScrollTop):
346 * loader/HistoryController.cpp:
347 (WebCore::HistoryController::saveScrollPositionAndViewStateToItem):
348 * page/DOMWindow.cpp:
349 (WebCore::DOMWindow::scrollX):
350 (WebCore::DOMWindow::scrollY):
351 (WebCore::DOMWindow::scrollTo):
353 (WebCore::Frame::frameScaleFactor): Return page's scale factor if this is
354 main frame, otherwise 1.0
356 * page/FrameView.cpp:
357 (WebCore::FrameView::applyOverflowToViewport):
358 (WebCore::FrameView::scrollXForFixedPosition):
359 (WebCore::FrameView::scrollYForFixedPosition):
361 2011-09-21 Andras Becsi <andras.becsi@nokia.com>
363 [Qt] Remove Qt specific code from css/SelectorChecker.cpp
364 https://bugs.webkit.org/show_bug.cgi?id=67702
366 Reviewed by Csaba Osztrogonác.
370 * css/SelectorChecker.cpp: Move Qt-specific code to the Qt-specific WebPlatformStrategies.
371 (WebCore::SelectorChecker::determineLinkStateSlowCase):
372 * platform/VisitedLinkStrategy.h:
374 2011-09-16 MORITA Hajime <morrita@google.com>
376 Style changes on forwarded shadow children should trigger shadow renderer reconstruction.
377 https://bugs.webkit.org/show_bug.cgi?id=68228
379 Reviewed by Dimitri Glazkov.
381 Currently style changes on forwarded shadow child triggers
382 Node::reattach() only for the forwarded node. But it should
383 invalidate whole renderers on the shadow tree because
384 ShadowContentElement expects its inclusions to be attached and to
385 create renderers in the inclusion order. But single node
386 reattach() violates the expectation and possibly creates
387 inconsistent render tree.
389 This change makes NodeRenderingContext to go
390 AttachContentForwarded, where the ShadowContentElement::attach()
391 happens, only during ShadowRoot::attach(), not for style-change
392 triggered Node::attach() on the forwarded nodes.
394 Note that the altering phase AttachContentLight doesn't create
395 renderers for the forwarded nodes. Instead of that, it possibly
396 triggers shadow subtree reconstruction on
397 NodeRenderingContext::hostChildrenChanged().
399 No new tests. This is a defensive change. There is no visible
400 difference at this time.
402 * dom/NodeRenderingContext.cpp:
403 (WebCore::NodeRenderingContext::NodeRenderingContext):
404 * dom/ShadowRoot.cpp:
405 (WebCore::ShadowRoot::isInclusionSelectorActive):
408 2011-09-20 MORITA Hajime <morrita@google.com>
410 <meter> doesn't update rendering when its value is changed.
411 https://bugs.webkit.org/show_bug.cgi?id=67614
413 Reviewed by Dimitri Glazkov.
415 It lacks repaint() when the value is changed.
417 For non-native appearance it works because the indicator is
418 implemented in shadow DOM, for native appearance, repainting should be
421 Test: fast/dom/HTMLMeterElement/meter-element-repaint-on-update-value.html
423 * html/HTMLMeterElement.cpp:
424 (WebCore::HTMLMeterElement::didElementStateChange):
425 * rendering/RenderMeter.cpp:
426 (WebCore::RenderMeter::updateFromElement):
427 * rendering/RenderMeter.h:
428 * rendering/RenderProgress.cpp:
429 (WebCore::RenderProgress::updateAnimationState):
431 2011-09-20 Kent Tamura <tkent@chromium.org>
433 Move RenderObject::markContainingBlocksForLayout() to RenderObject.cpp.
434 https://bugs.webkit.org/show_bug.cgi?id=67989
436 Reviewed by Ryosuke Niwa.
438 No new tests because of no behavior change.
440 * rendering/RenderObject.cpp:
441 (WebCore::objectIsRelayoutBoundary): Moved from RenderObject.h.
442 (WebCore::RenderObject::markContainingBlocksForLayout): Moved from RenderObject.h
443 * rendering/RenderObject.h:
445 2011-09-20 Rachel Blum <groby@chromium.org>
447 Support for multiple <link rel="icon"> favicon elements.
448 https://bugs.webkit.org/show_bug.cgi?id=65564
450 Reviewed by Darin Fisher.
452 No tests - purely an API change. (And API is not exposed to LayoutTests)
455 (WebCore::Document::iconURLs):
456 (WebCore::Document::addIconURL):
459 (WebCore::toIconIndex):
461 (WebCore::IconURL::IconURL):
462 * html/HTMLLinkElement.cpp:
463 (WebCore::HTMLLinkElement::process):
464 * loader/LinkLoader.cpp:
465 (WebCore::LinkLoader::loadLink):
466 * loader/LinkLoader.h:
467 * loader/icon/IconController.cpp:
468 (WebCore::IconController::urlsForTypes):
469 (WebCore::IconController::appendToIconURLs):
470 (WebCore::IconController::defaultURL):
472 2011-09-20 Ojan Vafai <ojan@chromium.org>
474 [css3-flexbox] cleanup padding width calculations
475 https://bugs.webkit.org/show_bug.cgi?id=68490
477 Reviewed by Tony Chang.
479 No new tests. Existing tests cover the refactor.
481 * rendering/RenderFlexibleBox.cpp:
482 (WebCore::RenderFlexibleBox::logicalBorderAndPaddingWidthForChild):
483 (WebCore::RenderFlexibleBox::logicalScrollbarHeightForChild):
484 (WebCore::RenderFlexibleBox::preferredLogicalContentWidthForFlexItem):
485 (WebCore::RenderFlexibleBox::computePreferredLogicalWidth):
486 (WebCore::RenderFlexibleBox::layoutAndPlaceChildrenInlineDirection):
487 * rendering/RenderFlexibleBox.h:
489 2011-09-19 Jer Noble <jer.noble@apple.com>
491 Fix clang compile errors in Web Audio
492 https://bugs.webkit.org/show_bug.cgi?id=68384
494 Reviewed by David Levin.
496 No new tests; no net change in functionality.
498 * platform/graphics/MediaPlayer.h: Forward declare (instead of including directly)
500 * webaudio/AudioChannelMerger.cpp:
501 (WebCore::AudioChannelMerger::checkNumberOfChannelsForInput): Remove unused parameter name.
503 2011-09-20 John Gregg <johnnyg@google.com>
505 Directory Upload: parent path can truncate first char of the correct path
506 https://bugs.webkit.org/show_bug.cgi?id=66695
508 In some cases, if the parent path we compute ends with a separator
509 character like '/' or 'C:\', by adding one in an attempt to grab the
510 subsequent separator we actually grab a character of the real path,
513 Reviewed by Darin Fisher.
515 * html/FileInputType.cpp:
516 (WebCore::FileInputType::setFileList):
518 2011-09-20 Jochen Eisinger <jochen@chromium.org>
520 Invoke CachedResourceLoader::canRequest for all URLs in a redirect chain
521 https://bugs.webkit.org/show_bug.cgi?id=68279
523 Reviewed by Adam Barth.
525 * loader/cache/CachedResourceLoader.h:
526 * loader/cache/CachedResourceRequest.cpp:
527 (WebCore::CachedResourceRequest::willSendRequest):
529 2011-09-18 Ojan Vafai <ojan@chromium.org>
531 change RenderFlexibleBox to act on logical coordinates
532 https://bugs.webkit.org/show_bug.cgi?id=68129
534 Reviewed by David Hyatt.
536 This makes RenderFlexibleBox respect direction and writing-mode.
537 We now properly support the default flex-flow value of "row".
539 Test: css3/flexbox/writing-modes.html
541 * rendering/RenderBlock.cpp:
542 (WebCore::RenderBlock::setLogicalLocationForChild):
543 * rendering/RenderBlock.h:
544 * rendering/RenderFlexibleBox.cpp:
545 (WebCore::RenderFlexibleBox::layoutBlock):
546 (WebCore::RenderFlexibleBox::logicalBorderWidthForChild):
547 (WebCore::RenderFlexibleBox::logicalPaddingWidthForChild):
548 (WebCore::RenderFlexibleBox::logicalScrollbarHeightForChild):
549 (WebCore::RenderFlexibleBox::marginStartStyleForChild):
550 (WebCore::RenderFlexibleBox::marginEndStyleForChild):
551 (WebCore::RenderFlexibleBox::preferredLogicalContentWidthForFlexItem):
552 (WebCore::RenderFlexibleBox::layoutInlineDirection):
553 (WebCore::RenderFlexibleBox::logicalPositiveFlexForChild):
554 (WebCore::RenderFlexibleBox::logicalNegativeFlexForChild):
555 (WebCore::RenderFlexibleBox::computePreferredLogicalWidth):
556 (WebCore::RenderFlexibleBox::runFreeSpaceAllocationAlgorithmInlineDirection):
557 (WebCore::RenderFlexibleBox::setLogicalOverrideSize):
558 (WebCore::RenderFlexibleBox::layoutAndPlaceChildrenInlineDirection):
559 * rendering/RenderFlexibleBox.h:
561 2011-09-20 Marshall Greenblatt <marshall@chromium.org>
563 Use DEFINE_STATIC_LOCAL to intentionally leak the static RefCountedHFONT object returned from
564 FontPlatformData::hashTableDeletedFontValue() to avoid global destructor ordering problems.
565 https://bugs.webkit.org/show_bug.cgi?id=67906
567 Reviewed by Adam Barth.
569 * platform/graphics/chromium/FontPlatformDataChromiumWin.cpp:
571 2011-09-20 Ryosuke Niwa <rniwa@webkit.org>
573 Hit testing on margins of body and head elements doesn't recur
574 https://bugs.webkit.org/show_bug.cgi?id=40753
576 Reviewed by Darin Adler.
578 The bug was caused by positionForPointRespectingEditingBoundaries's comparing the editability
579 of head/body and html elements when hit testing was done inside margins of head and body elements.
581 Fixed the bug by special-casing html element since margins of head and body elements are special.
583 Tests: editing/selection/click-on-body-margin.html
584 editing/selection/click-on-head-margin.html
586 * rendering/RenderBlock.cpp:
587 (WebCore::positionForPointRespectingEditingBoundaries):
589 2011-09-20 David Hyatt <hyatt@apple.com>
591 https://bugs.webkit.org/show_bug.cgi?id=68480
593 De-virtualize containingBlock() and make RenderView return 0 instead
594 of itself to make the construction of normal loops that terminate via
595 a null-check possible.
597 Fix the only two places in the tree that needed null checks.
599 Eliminating RenderTableCell::containingBlock() is fine since the base class
600 does the same thing anyway.
602 Reviewed by Simon Fraser.
604 * editing/VisiblePosition.cpp:
605 (WebCore::VisiblePosition::lineDirectionPointForBlockDirectionNavigation):
606 * rendering/RenderObject.cpp:
607 (WebCore::RenderObject::containingBlock):
608 * rendering/RenderObject.h:
609 * rendering/RenderTableCell.cpp:
610 * rendering/RenderTableCell.h:
611 * rendering/RenderTreeAsText.cpp:
612 (WebCore::RenderTreeAsText::writeRenderObject):
613 * rendering/RenderView.cpp:
614 * rendering/RenderView.h:
616 2011-09-20 Anders Carlsson <andersca@apple.com>
618 Remove ScrollView::platformContentsSize
619 https://bugs.webkit.org/show_bug.cgi?id=68188
621 Reviewed by Darin Adler.
623 Since ScrollView keeps track of the contents size in ScrollView::m_contentsSize, we never
624 have to ask the underlying platform scroll view for contents size since it should always just
625 be equal to m_contentsSize.
627 * platform/ScrollView.cpp:
628 (WebCore::ScrollView::contentsSize):
629 (WebCore::ScrollView::wheelEvent):
630 * platform/ScrollView.h:
631 * platform/mac/ScrollViewMac.mm:
632 * platform/wx/ScrollViewWx.cpp:
634 2011-09-20 Alexis Menard <alexis.menard@openbossa.org>
636 [Qt] [WK2] Implement a persistent cookie storage.
637 https://bugs.webkit.org/show_bug.cgi?id=65309
639 Reviewed by Chang Shu.
641 Implement a cookie storage for the Qt port on WebKit2.
642 The implementation is using a SQLite database to store the cookies
643 and restore them. It uses a static object as CookieJar is not an
644 object but a set of global functions. The actual saving/restoring is on
645 the WebProcess side where our network stack lives.
647 Existing tests cover the new implementation. Unfortunately there is one
648 case that we can't easily simulate : login in a website, make sure that the webprocess
649 is not running and then going back to this website and see that we are logged.
653 * platform/qt/CookieJarQt.cpp:
654 (WebCore::getHostnamesWithCookies):
655 (WebCore::deleteCookiesForHostname):
656 (WebCore::deleteAllCookies):
657 (WebCore::SharedCookieJarQt::shared):
658 (WebCore::SharedCookieJarQt::create):
659 (WebCore::SharedCookieJarQt::destroy):
660 (WebCore::SharedCookieJarQt::getHostnamesWithCookies):
661 (WebCore::SharedCookieJarQt::deleteCookiesForHostname):
662 (WebCore::SharedCookieJarQt::deleteAllCookies):
663 (WebCore::SharedCookieJarQt::SharedCookieJarQt):
664 (WebCore::SharedCookieJarQt::~SharedCookieJarQt):
665 (WebCore::SharedCookieJarQt::setCookiesFromUrl):
666 (WebCore::SharedCookieJarQt::ensureDatabaseTable):
667 (WebCore::SharedCookieJarQt::loadCookies):
668 * platform/qt/CookieJarQt.h: Added.
670 2011-09-20 David Hyatt <hyatt@apple.com>
672 https://bugs.webkit.org/show_bug.cgi?id=68314
674 Make sure that the containing block loop when clipping to border-radius
675 terminates by checking if you hit the RenderView. Null checking isn't sufficient
676 for stupid historical reasons that should be fixed (i.e., the RenderView returns itself
677 as its own containing block, even though this should just be changed).
679 Reviewed by Simon Fraser and Darin Adler.
681 Added new test in fast/clip.
683 * rendering/RenderLayer.cpp:
684 (WebCore::inContainingBlockChain):
686 2011-09-20 Dan Bernstein <mitz@apple.com>
688 MathML renderers do not override RenderObject::renderName()
689 https://bugs.webkit.org/show_bug.cgi?id=68461
691 Reviewed by Darin Adler.
693 Added implementations of renderName() in MathML RenderObject subclasses.
695 * rendering/mathml/RenderMathMLBlock.h:
696 (WebCore::RenderMathMLBlock::renderName):
697 * rendering/mathml/RenderMathMLFenced.h:
698 (WebCore::RenderMathMLFenced::renderName):
699 * rendering/mathml/RenderMathMLFraction.h:
700 (WebCore::RenderMathMLFraction::renderName):
701 * rendering/mathml/RenderMathMLMath.h:
702 (WebCore::RenderMathMLMath::renderName):
703 * rendering/mathml/RenderMathMLOperator.h:
704 (WebCore::RenderMathMLOperator::renderName):
705 * rendering/mathml/RenderMathMLRoot.h:
706 (WebCore::RenderMathMLRoot::renderName):
707 * rendering/mathml/RenderMathMLRow.h:
708 (WebCore::RenderMathMLRow::renderName):
709 * rendering/mathml/RenderMathMLSquareRoot.h:
710 (WebCore::RenderMathMLSquareRoot::renderName):
711 * rendering/mathml/RenderMathMLSubSup.h:
712 (WebCore::RenderMathMLSubSup::renderName):
713 * rendering/mathml/RenderMathMLUnderOver.h:
714 (WebCore::RenderMathMLUnderOver::renderName):
716 2011-09-20 ChangSeok Oh <shivamidow@gmail.com>
718 [GTK] requestAnimationFrame support for gtk port
719 https://bugs.webkit.org/show_bug.cgi?id=66280
721 Reviewed by Martin Robinson.
723 Add some files to build-target & activate ENABLE_REQUEST_ANIMATION_FRAME flag
724 when enabling requestAnimationFrame option.
726 fast/animation/request-animation-frame-cancel.html
727 fast/animation/request-animation-frame-cancel2.html
728 fast/animation/request-animation-frame-display.html
729 fast/animation/request-animation-frame-during-modal.html
730 fast/animation/request-animation-frame-timestamps.html
731 fast/animation/request-animation-frame-within-callback.html
732 fast/animation/request-animation-frame.html
735 * GNUmakefile.list.am:
737 2011-09-20 Aaron Boodman <aa@chromium.org>
739 Rework script context creation/release notifications
740 https://bugs.webkit.org/show_bug.cgi?id=67828
742 Reviewed by Adam Barth.
744 * bindings/v8/V8DOMWindowShell.cpp:
745 (WebCore::V8DOMWindowShell::disposeContextHandles):
746 (WebCore::V8DOMWindowShell::initContextIfNeeded):
747 * bindings/v8/V8IsolatedContext.cpp:
748 (WebCore::V8IsolatedContext::V8IsolatedContext):
749 (WebCore::V8IsolatedContext::destroy):
750 * bindings/v8/V8IsolatedContext.h:
751 * loader/EmptyClients.h:
752 (WebCore::EmptyFrameLoaderClient::didCreateScriptContext):
753 (WebCore::EmptyFrameLoaderClient::willReleaseScriptContext):
754 * loader/FrameLoaderClient.h:
756 2011-09-19 Oliver Hunt <oliver@apple.com>
758 Refactor Heap allocation logic into separate AllocationSpace class
759 https://bugs.webkit.org/show_bug.cgi?id=68409
761 Reviewed by Gavin Barraclough.
763 Adding a forwarding header.
765 * ForwardingHeaders/heap/AllocationSpace.h: Added.
767 2011-09-20 Geoffrey Garen <ggaren@apple.com>
771 * WebCorePrefix.h: Removed stray text from accidental paste.
773 2011-09-19 Geoffrey Garen <ggaren@apple.com>
775 Removed BREWMP* platform #ifdefs
776 https://bugs.webkit.org/show_bug.cgi?id=68425
778 BREWMP* has no maintainer, and this is dead code.
780 Reviewed by Darin Adler.
783 * loader/cache/CachedFont.cpp:
784 * platform/DragData.h:
785 * platform/DragImage.h:
786 * platform/FileSystem.h:
787 * platform/PlatformKeyboardEvent.h:
788 * platform/PlatformMouseEvent.h:
789 * platform/PlatformTouchEvent.h:
790 * platform/PlatformTouchPoint.h:
791 (WebCore::PlatformTouchPoint::PlatformTouchPoint):
793 * platform/graphics/IntPoint.h:
794 * platform/graphics/IntSize.h:
795 * platform/graphics/WOFFFileFormat.cpp:
796 * platform/graphics/skia/FontCustomPlatformData.cpp:
797 (WebCore::FontCustomPlatformData::~FontCustomPlatformData):
798 (WebCore::FontCustomPlatformData::fontPlatformData):
799 (WebCore::createFontCustomPlatformData):
800 * platform/graphics/skia/FontCustomPlatformData.h:
801 * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
802 * platform/text/TextBoundaries.cpp:
803 * platform/text/TextEncoding.cpp:
804 (WebCore::TextEncoding::encode):
805 * platform/text/TextEncodingRegistry.cpp:
806 * plugins/PluginViewNone.cpp:
808 2011-09-20 Pavel Feldman <pfeldman@google.com>
810 Web Inspector: Copy Stack Trace lacks newlines on Windows
811 https://bugs.webkit.org/show_bug.cgi?id=68447
813 Reviewed by Joseph Pecoraro.
815 * inspector/front-end/CallStackSidebarPane.js:
816 (WebInspector.CallStackSidebarPane.prototype._copyStackTrace):
818 2011-09-20 Pavel Feldman <pfeldman@google.com>
820 Not reviewed: inspector sanity test fix.
822 * inspector/front-end/inspector.js:
823 (WebInspector.showConsole):
825 2011-09-20 Alexis Menard <alexis.menard@openbossa.org>
827 [Qt][WK2] Add stubs for FULLSCREEN_API on Qt.
828 https://bugs.webkit.org/show_bug.cgi?id=68444
830 Reviewed by Andreas Kling.
832 Create all the stubs necessary for enabling FULLSCREEN_API on the Qt port.
834 No new tests : just stubs.
836 * CodeGenerators.pri:
840 2011-09-20 Sheriff Bot <webkit.review.bot@gmail.com>
842 Unreviewed, rolling out r95509.
843 http://trac.webkit.org/changeset/95509
844 https://bugs.webkit.org/show_bug.cgi?id=68446
846 crashes chromium fast/repaint/japanese-rl-selection-repaint-
847 in-regions.html on Win and Linux (Requested by dslomov on
850 * rendering/RenderBlock.cpp:
851 (WebCore::positionForPointRespectingEditingBoundaries):
853 2011-09-20 Jarred Nicholls <jarred@sencha.com>
855 [Qt] Permit qrc resources to load in QWebSettings::setUserStyleSheetUrl()
856 https://bugs.webkit.org/show_bug.cgi?id=51159
858 Permit any URL with a local scheme to set a user style sheet. Allow qrc
859 resource URLs as arguments to QWebSettings::setUserStyleSheetUrl().
861 Reviewed by Kenneth Rohde Christiansen.
864 (WebCore::Page::userStyleSheetLocationChanged):
865 * platform/qt/KURLQt.cpp:
866 (WebCore::KURL::fileSystemPath):
868 2011-09-20 Csaba Osztrogonác <ossy@webkit.org>
870 [Qt][Mac] Buildfix after r95513.
871 Forwarding headers for WebCore should be generated based on WebCore sources instead of WebKit2.
873 Rubber-stamped by Andras Becsi.
875 * DerivedSources.pro:
876 * WebCore.pro: Add platform/mac/DisplaySleepDisabler.cpp to SOURCES.
878 2011-09-19 Pavel Feldman <pfeldman@google.com>
880 Web Inspector: document Debugger.paused, introduce types for ids in Debugger domain.
881 https://bugs.webkit.org/show_bug.cgi?id=68363
883 Migrates from poorly documented "details" object to explicit parameters
884 containing break type and data.
886 Reviewed by Tony Gentilcore.
888 * inspector/InjectedScriptSource.js:
890 * inspector/Inspector.json:
891 * inspector/InspectorDOMDebuggerAgent.cpp:
892 (WebCore::InspectorDOMDebuggerAgent::didInvalidateStyleAttr):
893 (WebCore::InspectorDOMDebuggerAgent::willInsertDOMNode):
894 (WebCore::InspectorDOMDebuggerAgent::willRemoveDOMNode):
895 (WebCore::InspectorDOMDebuggerAgent::willModifyDOMAttr):
896 (WebCore::InspectorDOMDebuggerAgent::pauseOnNativeEventIfNeeded):
897 (WebCore::InspectorDOMDebuggerAgent::willSendXMLHttpRequest):
898 * inspector/InspectorDebuggerAgent.cpp:
899 (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
900 (WebCore::InspectorDebuggerAgent::schedulePauseOnNextStatement):
901 (WebCore::InspectorDebuggerAgent::cancelPauseOnNextStatement):
902 (WebCore::InspectorDebuggerAgent::pause):
903 (WebCore::InspectorDebuggerAgent::didPause):
904 (WebCore::InspectorDebuggerAgent::didContinue):
905 (WebCore::InspectorDebuggerAgent::breakProgram):
906 (WebCore::InspectorDebuggerAgent::clear):
907 (WebCore::InspectorDebuggerAgent::clearBreakDetails):
908 * inspector/InspectorDebuggerAgent.h:
909 * inspector/front-end/DOMBreakpointsSidebarPane.js:
910 (WebInspector.DOMBreakpointsSidebarPane.prototype.createBreakpointHitStatusMessage.didPushNodeToFrontend):
911 (WebInspector.DOMBreakpointsSidebarPane.prototype.createBreakpointHitStatusMessage):
912 (WebInspector.DOMBreakpointsSidebarPane.prototype.highlightBreakpoint):
913 * inspector/front-end/DebuggerModel.js:
914 (WebInspector.DebuggerModel.prototype._pausedScript):
915 (WebInspector.DebuggerDispatcher.prototype.paused):
916 * inspector/front-end/DebuggerPresentationModel.js:
917 (WebInspector.PresentationCallFrame.prototype.evaluate):
918 * inspector/front-end/ScopeChainSidebarPane.js:
919 (WebInspector.ScopeChainSidebarPane.prototype.update):
920 * inspector/front-end/ScriptsPanel.js:
921 (WebInspector.ScriptsPanel.prototype._debuggerPaused.didCreateBreakpointHitStatusMessage):
922 (WebInspector.ScriptsPanel.prototype._debuggerPaused.else.didGetSourceLocation):
923 (WebInspector.ScriptsPanel.prototype._debuggerPaused):
925 2011-09-19 Pavel Feldman <pfeldman@google.com>
927 Web Inspector: use strict types for Breakpoint and CallFrame ids in the protocol definition.
928 https://bugs.webkit.org/show_bug.cgi?id=68172
930 Reviewed by Tony Gentilcore.
932 * inspector/Inspector.json:
934 2011-09-15 Pavel Feldman <pfeldman@google.com>
936 Web Inspector: refactor ConsoleView, Drawer, ConsolePanel trio. Remove animation
937 from drawer -> panel transition.
938 https://bugs.webkit.org/show_bug.cgi?id=68155
940 ConsoleView, ConsolePanel and Drawer are all Views with custom show/hide implementations
941 and weird DOM element containment. As a result, we have a number of cases when switching
942 console from full panel to drawer mode and back result in UI glitches.
943 For the sake of code clarity and no glitches, I'd like to sacrifice the "grow into full
944 screen" console animation.
946 Reviewed by Tony Gentilcore.
948 * inspector/front-end/ConsoleModel.js:
949 (WebInspector.ConsoleModel):
950 * inspector/front-end/ConsolePanel.js:
951 (WebInspector.ConsolePanel):
952 (WebInspector.ConsolePanel.prototype.get statusBarItems):
953 (WebInspector.ConsolePanel.prototype.show):
954 (WebInspector.ConsolePanel.prototype.hide):
955 * inspector/front-end/ConsoleView.js:
956 (WebInspector.ConsoleView):
957 (WebInspector.ConsoleView.createFilterElement):
958 (WebInspector.ConsoleView.get this):
959 (WebInspector.ConsoleView.prototype.get statusBarItems):
960 (WebInspector.ConsoleView.prototype.wasShown):
961 * inspector/front-end/Drawer.js:
962 (WebInspector.Drawer):
963 (WebInspector.Drawer.prototype.get visible):
964 (WebInspector.Drawer.prototype._constrainHeight):
965 (WebInspector.Drawer.prototype.show.animationFinished):
966 (WebInspector.Drawer.prototype.show):
967 (WebInspector.Drawer.prototype.hide):
968 (WebInspector.Drawer.prototype.resize):
969 (WebInspector.Drawer.prototype._animationDuration):
970 * inspector/front-end/inspector.html:
971 * inspector/front-end/inspector.js:
972 (WebInspector._createGlobalStatusBarItems):
973 (WebInspector._toggleConsoleButtonClicked):
974 (WebInspector.set attached):
975 (WebInspector.windowResize):
976 (WebInspector.documentKeyDown):
978 2011-09-19 Pavel Feldman <pfeldman@google.com>
980 Web Inspector: streamline Console's MessageType and MessageSource semantics.
981 https://bugs.webkit.org/show_bug.cgi?id=68342
983 This change fixes semantics of the MessageSource and MessageType:
984 MessageSource is now the source of the message (be it Network, HTML
985 parser or Console API). MessageType is only defined for the Console API
986 messages and contains the name of the API call (log, dir, dirxml, etc.).
987 Subsequent https://bugs.webkit.org/show_bug.cgi?id=66371 will make MessageType
988 private to the inspector.
990 Reviewed by Tony Gentilcore.
993 (WebCore::Document::logExceptionToConsole):
994 * inspector/ConsoleMessage.cpp:
995 (WebCore::messageSourceValue):
996 (WebCore::messageTypeValue):
997 (WebCore::ConsoleMessage::addToFrontend):
998 * inspector/Inspector.json:
999 * inspector/InspectorConsoleAgent.cpp:
1000 (WebCore::InspectorConsoleAgent::didReceiveResponse):
1001 (WebCore::InspectorConsoleAgent::didFailLoading):
1002 * inspector/front-end/ConsoleMessage.js:
1003 (WebInspector.ConsoleMessage.createTextMessage):
1004 (WebInspector.ConsoleMessage.prototype._formatMessage):
1005 (WebInspector.ConsoleMessage.prototype.toString):
1007 (WebCore::printMessageSourceAndLevelPrefix):
1008 (WebCore::Console::addMessage):
1009 (WebCore::Console::dir):
1010 (WebCore::Console::dirxml):
1011 (WebCore::Console::group):
1012 (WebCore::Console::groupCollapsed):
1013 (WebCore::Console::groupEnd):
1014 * page/ConsoleTypes.h:
1015 * websockets/WebSocketChannel.cpp:
1016 (WebCore::WebSocketChannel::didFailSocketStream):
1018 2011-09-20 Adenilson Cavalcanti <adenilson.silva@openbossa.org>
1020 [Qt] resizeToContent seems to trigger infinite resize on some pages
1021 https://bugs.webkit.org/show_bug.cgi?id=43852
1023 Reviewed by Kenneth Rohde Christiansen.
1025 InnerHeight and InnerWidth are now calculated using ScrollView::visibleContentRect
1026 including the scrollbars (if any) instead of using ScrollView::frameRect as before.
1028 This makes no behavior change while not using the tiled backing
1029 store and is compliant with the W3C definition stated in the CSSOM
1032 Plus it will return the correct values for tiled backing store,
1033 thus fixing the original bug report by avoiding infinite resize
1034 events caused by wrong innerHeight and innerWidth values.
1036 Test: innerWidth/Height are covered by existing tests. The
1037 non-infinite resizing is covered by a new Qt autotest at
1038 test_qgraphicswebview::windowResizeEvent()
1040 * page/DOMWindow.cpp:
1041 (WebCore::DOMWindow::innerHeight): using ScrollView::visibleContentRect.
1042 (WebCore::DOMWindow::innerWidth): using ScrollView::visibleContentRect.
1044 2011-09-09 Pavel Podivilov <podivilov@chromium.org>
1046 Web Inspector: implement reverse mapping for compiler source maps.
1047 https://bugs.webkit.org/show_bug.cgi?id=67850
1049 Implement the mapping from source code to compiled code. It will be used for
1050 setting breakpoints on source code.
1052 Reviewed by Pavel Feldman.
1054 * inspector/front-end/CompilerSourceMapping.js:
1055 (WebInspector.ClosureCompilerSourceMapping):
1056 (WebInspector.ClosureCompilerSourceMapping.prototype.compiledLocationToSourceLocation):
1057 (WebInspector.ClosureCompilerSourceMapping.prototype.sourceLocationToCompiledLocation):
1058 (WebInspector.ClosureCompilerSourceMapping.prototype._parseMappings):
1060 2011-09-08 Pavel Podivilov <podivilov@chromium.org>
1062 Web Inspector: extract RawSourceCode source mapping logic to helper classes.
1063 https://bugs.webkit.org/show_bug.cgi?id=67789
1065 Reviewed by Pavel Feldman.
1067 * inspector/front-end/SourceFile.js:
1068 (WebInspector.RawSourceCode.prototype.get uiSourceCode):
1069 (WebInspector.RawSourceCode.prototype.rawLocationToUILocation):
1070 (WebInspector.RawSourceCode.prototype.uiLocationToRawLocation):
1071 (WebInspector.RawSourceCode.prototype._createSourceMapping.didRequestContent.didFormatContent):
1072 (WebInspector.RawSourceCode.prototype._createSourceMapping.didRequestContent):
1073 (WebInspector.RawSourceCode.prototype._createSourceMapping):
1074 (WebInspector.RawSourceCode.prototype._saveSourceMapping):
1075 (WebInspector.RawSourceCode.PlainSourceMapping):
1076 (WebInspector.RawSourceCode.PlainSourceMapping.prototype.rawLocationToUILocation):
1077 (WebInspector.RawSourceCode.PlainSourceMapping.prototype.uiLocationToRawLocation):
1078 (WebInspector.RawSourceCode.PlainSourceMapping.prototype.get uiSourceCode):
1079 (WebInspector.RawSourceCode.FormattedSourceMapping):
1080 (WebInspector.RawSourceCode.FormattedSourceMapping.prototype.rawLocationToUILocation):
1081 (WebInspector.RawSourceCode.FormattedSourceMapping.prototype.uiLocationToRawLocation):
1082 (WebInspector.RawSourceCode.FormattedSourceMapping.prototype.get uiSourceCode):
1084 2011-09-20 Carlos Garcia Campos <cgarcia@igalia.com>
1086 [GTK] WebProcess shouldn't use the GTK+ API
1087 https://bugs.webkit.org/show_bug.cgi?id=68062
1089 Reviewed by Martin Robinson.
1091 Move errors code that is common between webki1 and webkit2 to
1092 WebCore so that it can be shared.
1094 * GNUmakefile.list.am: Add new files to compilation.
1095 * platform/gtk/ErrorsGtk.cpp: Added.
1096 (WebCore::cancelledError):
1097 (WebCore::blockedError):
1098 (WebCore::cannotShowURLError):
1099 (WebCore::interruptedForPolicyChangeError):
1100 (WebCore::cannotShowMIMETypeError):
1101 (WebCore::fileDoesNotExistError):
1102 (WebCore::pluginWillHandleLoadError):
1103 * platform/gtk/ErrorsGtk.h: Added.
1105 2011-09-19 Mark Rowe <mrowe@apple.com>
1107 Attempt to fix the Leopard build.
1109 * platform/mac/DisplaySleepDisabler.cpp:
1110 (WebCore::DisplaySleepDisabler::DisplaySleepDisabler):
1111 * platform/mac/DisplaySleepDisabler.h:
1113 2011-09-19 Mark Rowe <mrowe@apple.com>
1115 <http://webkit.org/b/68421> Stop calling UpdateSystemActivity in places where we hold power assertions that achieve the same effect
1117 On SnowLeopard and newer it's not necessary to call UpdateSystemActivity to prevent the screensaver from kicking
1118 in as the NoDisplaySleep assertion now has that effect. It's also not necessary to hold both a NoDisplaySleep and
1119 a NoIdleSleep assertion as the latter is implied by the former.
1121 Since there were multiple copies of the same code to disable display sleep spread across WebCore, WebKit and WebKit2
1122 this patch takes the approach of moving this functionality to a new DisplaySleepDisabler class that lives in WebCore.
1123 A class is used as it makes it easier to reason about the lifetime of the assertions and to ensure that the assertions will
1124 always be released when their owning objects go away.
1126 Reviewed by Dan Bernstein.
1129 * WebCore.xcodeproj/project.pbxproj:
1130 * platform/mac/DisplaySleepDisabler.cpp:
1131 (WebCore::DisplaySleepDisabler::DisplaySleepDisabler): Register for the NoDisplaySleep assertion, and start our
1132 system activity timer when on Leopard.
1133 (WebCore::DisplaySleepDisabler::~DisplaySleepDisabler): Unregister for the assertion.
1134 (WebCore::DisplaySleepDisabler::systemActivityTimerFired): Call UpdateSystemActivity to prevent the screensaver from
1135 triggering on Leopard.
1136 * platform/mac/DisplaySleepDisabler.h:
1137 (WebCore::DisplaySleepDisabler::create):
1138 * platform/mac/WebVideoFullscreenController.h:
1139 * platform/mac/WebVideoFullscreenController.mm:
1140 (-[WebVideoFullscreenController dealloc]):
1141 (-[WebVideoFullscreenController setupVideoOverlay:]): Remove the now-unnecessary explicit use of the WebCore namespace.
1142 (-[WebVideoFullscreenController mediaElement]): Ditto.
1143 (-[WebVideoFullscreenController setMediaElement:]): Ditto.
1144 (-[WebVideoFullscreenController windowDidExitFullscreen]): Ditto.
1145 (-[WebVideoFullscreenController updatePowerAssertions]): Create a DisplaySleepDisabler instance when transitioning from permitting
1146 display sleep to disabling display sleep. Clear out our reference when sleep should be permitted, destroying any
1147 disabler that we own.
1149 2011-09-19 Ryosuke Niwa <rniwa@webkit.org>
1151 Hit testing on margins of body and head elements doesn't recur
1152 https://bugs.webkit.org/show_bug.cgi?id=40753
1154 Reviewed by Darin Adler.
1156 The bug was caused by positionForPointRespectingEditingBoundaries's comparing the editability
1157 of head/body and html elements when hit testing was done inside margins of head and body elements.
1159 Fixed the bug by special-casing html element (any immediate child of render view with a render layer)
1160 since margins of head and body elements are special.
1162 Tests: editing/selection/click-on-body-margin.html
1163 editing/selection/click-on-head-margin.html
1165 * rendering/RenderBlock.cpp:
1166 (WebCore::positionForPointRespectingEditingBoundaries):
1168 2011-09-19 Sheriff Bot <webkit.review.bot@gmail.com>
1170 Unreviewed, rolling out r95493 and r95496.
1171 http://trac.webkit.org/changeset/95493
1172 http://trac.webkit.org/changeset/95496
1173 https://bugs.webkit.org/show_bug.cgi?id=68418
1175 Broke Windows build (Requested by rniwa on #webkit).
1177 * ForwardingHeaders/heap/AllocationSpace.h: Removed.
1179 2011-09-19 James Robinson <jamesr@chromium.org>
1181 [chromium] ContentLayer's texture updater deleted during paint when compositing turns off in the middle of paint
1182 https://bugs.webkit.org/show_bug.cgi?id=68405
1184 Reviewed by Kenneth Russell.
1186 Make TiledLayerChromium's textureUpdater refcounted and hold an explicit reference during paint in case
1187 compositing is turned off halfway through a paint.
1189 * platform/graphics/chromium/ContentLayerChromium.h:
1190 * platform/graphics/chromium/ImageLayerChromium.cpp:
1191 (WebCore::ImageLayerTextureUpdater::create):
1192 * platform/graphics/chromium/ImageLayerChromium.h:
1193 * platform/graphics/chromium/LayerTextureUpdater.h:
1194 * platform/graphics/chromium/LayerTextureUpdaterCanvas.cpp:
1195 (WebCore::LayerTextureUpdaterBitmap::create):
1196 (WebCore::LayerTextureUpdaterSkPicture::create):
1197 * platform/graphics/chromium/LayerTextureUpdaterCanvas.h:
1198 * platform/graphics/chromium/TiledLayerChromium.cpp:
1199 (WebCore::TiledLayerChromium::prepareToUpdate):
1201 2011-09-19 Luke Macpherson <macpherson@chromium.org>
1203 Eliminate Length::undefinedLength = -1 and replace with Undefined LengthType.
1204 https://bugs.webkit.org/show_bug.cgi?id=68057
1206 Reviewed by Darin Adler.
1208 There appear to be many cases where -1 is actually a valid Length.
1209 Encoding the validity of Length separately to the value is a natural solution.
1211 No new tests / no behavioral changes.
1213 * css/CSSComputedStyleDeclaration.cpp:
1214 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1215 * css/CSSPrimitiveValue.cpp:
1216 (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
1217 * css/CSSStyleApplyProperty.cpp:
1218 (WebCore::ApplyPropertyLength::applyValue):
1219 * platform/Length.h:
1220 (WebCore::Length::Length):
1221 (WebCore::Length::value):
1222 (WebCore::Length::calcValue):
1223 (WebCore::Length::calcMinValue):
1224 (WebCore::Length::calcFloatValue):
1225 (WebCore::Length::isUndefined):
1226 * rendering/RenderBlock.cpp:
1227 (WebCore::RenderBlock::computePreferredLogicalWidths):
1228 * rendering/RenderDeprecatedFlexibleBox.cpp:
1229 (WebCore::RenderDeprecatedFlexibleBox::computePreferredLogicalWidths):
1230 * rendering/RenderFileUploadControl.cpp:
1231 (WebCore::RenderFileUploadControl::computePreferredLogicalWidths):
1232 * rendering/RenderImage.cpp:
1233 (WebCore::RenderImage::isLogicalWidthSpecified):
1234 (WebCore::RenderImage::isLogicalHeightSpecified):
1235 * rendering/RenderListBox.cpp:
1236 (WebCore::RenderListBox::computePreferredLogicalWidths):
1237 * rendering/RenderMenuList.cpp:
1238 (WebCore::RenderMenuList::computePreferredLogicalWidths):
1239 * rendering/RenderReplaced.cpp:
1240 (WebCore::RenderReplaced::computePreferredLogicalWidths):
1241 * rendering/RenderSlider.cpp:
1242 (WebCore::RenderSlider::computePreferredLogicalWidths):
1243 * rendering/RenderTextControl.cpp:
1244 (WebCore::RenderTextControl::computePreferredLogicalWidths):
1245 * rendering/style/RenderStyle.h:
1246 (WebCore::InheritedFlags::initialMaxSize):
1247 * rendering/svg/RenderSVGRoot.cpp:
1248 (WebCore::RenderSVGRoot::computePreferredLogicalWidths):
1250 2011-09-19 Adam Barth <abarth@webkit.org>
1252 Always enable ENABLE(EVENTSOURCE)
1253 https://bugs.webkit.org/show_bug.cgi?id=68414
1255 Reviewed by Eric Seidel.
1257 EventSource seems to be here to stay. This patch makes WebKit more
1258 hackable by removing this ENABLE macro, as discussed on webkit-dev.
1260 * Configurations/FeatureDefines.xcconfig:
1262 * bindings/cpp/WebDOMEventTarget.cpp:
1264 * bindings/js/JSDOMWindowCustom.cpp:
1265 (WebCore::JSDOMWindow::eventSource):
1266 * bindings/js/JSEventSourceCustom.cpp:
1267 * bindings/js/JSEventTarget.cpp:
1269 (WebCore::toEventTarget):
1270 * bindings/js/JSWorkerContextCustom.cpp:
1271 (WebCore::JSWorkerContext::eventSource):
1272 * bindings/v8/V8DOMWrapper.cpp:
1273 (WebCore::V8DOMWrapper::convertEventTargetToV8Object):
1275 * page/DOMWindow.idl:
1276 * page/EventSource.cpp:
1277 * page/EventSource.h:
1278 * page/EventSource.idl:
1279 * workers/WorkerContext.idl:
1281 2011-09-19 Jeremy Apthorp <jeremya@chromium.org>
1283 Fix a use-after-free: clear the fullscreen change event target queue at
1284 detach time, rather than at destruction time. If this isn't done, it's
1285 possible for the event target queue to be the only thing that
1286 references the document. Then when the document is popped off the queue
1287 and dereferenced in Document::fullScreenChangeDelayTimerFired, the
1288 document is destroyed and the subsequent access to
1289 m_fullScreenChangeEventTargetQueue.isEmpty() accesses free'd memory.
1290 https://bugs.webkit.org/show_bug.cgi?id=67960
1292 Reviewed by Adam Barth.
1295 (WebCore::Document::~Document):
1296 (WebCore::Document::detach):
1298 2011-09-19 Sheriff Bot <webkit.review.bot@gmail.com>
1300 Unreviewed, rolling out r95482.
1301 http://trac.webkit.org/changeset/95482
1302 https://bugs.webkit.org/show_bug.cgi?id=68410
1304 Broke chromium webkit-tests (Requested by dslomov on #webkit).
1306 * platform/image-encoders/skia/JPEGImageEncoder.cpp:
1307 (WebCore::RGBAtoRGB):
1309 2011-09-19 Oliver Hunt <oliver@apple.com>
1311 Refactor Heap allocation logic into separate AllocationSpace class
1312 https://bugs.webkit.org/show_bug.cgi?id=68409
1314 Reviewed by Gavin Barraclough.
1316 Adding a forwarding header.
1318 * ForwardingHeaders/heap/AllocationSpace.h: Added.
1320 2011-09-19 Adam Barth <abarth@webkit.org>
1322 [V8] document.all gets confused about its prototype chain
1323 https://bugs.webkit.org/show_bug.cgi?id=68393
1325 Reviewed by Eric Seidel.
1327 GetRealNamedPropertyInPrototypeChain doesn't call interceptors, so it's
1328 not a good idea to use its return value. It turns out that all the
1329 callers of the API only cared about whether it returns a null handle.
1331 Test: http/tests/security/document-all.html
1333 * bindings/v8/V8Collection.h:
1334 (WebCore::collectionNamedPropertyGetter):
1335 * bindings/v8/custom/V8DOMStringMapCustom.cpp:
1336 (WebCore::V8DOMStringMap::namedPropertyDeleter):
1337 (WebCore::V8DOMStringMap::namedPropertySetter):
1338 * bindings/v8/custom/V8HTMLAllCollectionCustom.cpp:
1339 (WebCore::V8HTMLAllCollection::namedPropertyGetter):
1340 * bindings/v8/custom/V8HTMLCollectionCustom.cpp:
1341 (WebCore::V8HTMLCollection::namedPropertyGetter):
1342 * bindings/v8/custom/V8NamedNodeMapCustom.cpp:
1343 (WebCore::V8NamedNodeMap::namedPropertyGetter):
1344 * bindings/v8/custom/V8StorageCustom.cpp:
1345 (WebCore::storageSetter):
1347 2011-09-19 Adam Barth <abarth@webkit.org>
1349 Named property confusion with __proto__
1350 https://bugs.webkit.org/show_bug.cgi?id=68221
1352 Reviewed by Eric Seidel.
1354 The __proto__ property is super magical because it's not a real named
1355 property and it has higher precedence than even interceptors. This
1356 confuses this check, which is meant to detech which names will get
1357 handled by our interceptor.
1359 Test: http/tests/security/window-named-proto.html
1361 * bindings/v8/custom/V8DOMWindowCustom.cpp:
1362 (WebCore::V8DOMWindow::namedSecurityCheck):
1364 2011-09-19 Adam Barth <abarth@webkit.org>
1366 Rename ENABLE(OPENTYPE_SANITIZER) to USE(OPENTYPE_SANITIZER)
1367 https://bugs.webkit.org/show_bug.cgi?id=68292
1369 Reviewed by Eric Seidel.
1371 OpenType Sanitizer is a library for sanitizing type and not a feature.
1372 Therefore this macro should say that we USE the library.
1374 * platform/graphics/WOFFFileFormat.cpp:
1375 * platform/graphics/WOFFFileFormat.h:
1376 * platform/graphics/mac/FontCustomPlatformData.cpp:
1377 (WebCore::createFontCustomPlatformData):
1378 * platform/graphics/opentype/OpenTypeSanitizer.cpp:
1379 * platform/graphics/opentype/OpenTypeSanitizer.h:
1380 * platform/graphics/skia/FontCustomPlatformData.cpp:
1381 (WebCore::createFontCustomPlatformData):
1382 (WebCore::FontCustomPlatformData::supportsFormat):
1384 2011-09-19 Adam Barth <abarth@webkit.org>
1386 Remove APPLICATION_CACHE_DYNAMIC_ENTRIES and associated code
1387 https://bugs.webkit.org/show_bug.cgi?id=68407
1389 Reviewed by Eric Seidel.
1391 As discussed on webkit-dev, no one appears to be using this code.
1393 * GNUmakefile.list.am:
1397 * WebCore.vcproj/WebCore.vcproj:
1398 * WebCore.xcodeproj/project.pbxproj:
1399 * bindings/js/JSBindingsAllInOne.cpp:
1400 * bindings/js/JSDOMApplicationCacheCustom.cpp: Removed.
1402 2011-09-19 Sheriff Bot <webkit.review.bot@gmail.com>
1404 Unreviewed, rolling out r95385 and r95457.
1405 http://trac.webkit.org/changeset/95385
1406 http://trac.webkit.org/changeset/95457
1407 https://bugs.webkit.org/show_bug.cgi?id=68395
1409 Broke chromium browser_tests (Requested by dslomov on
1412 * bindings/v8/V8DOMWindowShell.cpp:
1413 (WebCore::V8DOMWindowShell::disposeContextHandles):
1414 (WebCore::V8DOMWindowShell::initContextIfNeeded):
1415 * bindings/v8/V8IsolatedContext.cpp:
1416 (WebCore::V8IsolatedContext::V8IsolatedContext):
1417 (WebCore::V8IsolatedContext::destroy):
1418 * bindings/v8/V8IsolatedContext.h:
1419 * loader/EmptyClients.h:
1420 (WebCore::EmptyFrameLoaderClient::didCreateScriptContextForFrame):
1421 (WebCore::EmptyFrameLoaderClient::didDestroyScriptContextForFrame):
1422 (WebCore::EmptyFrameLoaderClient::didCreateIsolatedScriptContext):
1423 * loader/FrameLoaderClient.h:
1425 2011-09-19 John Bauman <jbauman@chromium.org>
1427 Fix nonpremultiplied webgl toDataURL to jpeg
1428 https://bugs.webkit.org/show_bug.cgi?id=68366
1430 The canvas spec says that toDataURL to formats without an alpha must
1431 be "composited onto a solid black background using the source-over
1434 Reviewed by Kenneth Russell.
1436 * platform/image-encoders/skia/JPEGImageEncoder.cpp:
1437 (WebCore::RGBAtoRGB):
1439 2011-09-19 Chris Marrin <cmarrin@apple.com>
1441 Crash can occur when doing a PlatformCAAnimation::copy() with no valueFunction
1442 https://bugs.webkit.org/show_bug.cgi?id=67510
1444 Reviewed by Adam Roben.
1446 Another fix to take care of one last crash when running pause-crash.html.
1447 CACF can't deal with null valueFunctions, so avoid setting it when it doesn't
1450 This also adds logic to the Windows Hook in LayerChangesFlusher to prevent it
1451 from catching the null pointer exception generated by the pause-crash.html test
1452 before this bug was fixed. Windows was ignoring the exception, so the testcase
1453 would appear to succeed, even though it should have crashed.
1455 This is a resubmission of http://trac.webkit.org/changeset/95243 with a build fix.
1457 * WebCore.vcproj/WebCore.vcproj:
1458 * platform/graphics/ca/win/LayerChangesFlusher.cpp:
1459 (WebCore::LayerChangesFlusher::hookCallback):
1460 * platform/graphics/ca/win/PlatformCAAnimationWin.cpp:
1461 (PlatformCAAnimation::copy):
1462 * platform/win/StructuredExceptionHandlerSupressor.h: Added.
1463 (WebCore::StructuredExceptionHandlerSupressor::StructuredExceptionHandlerSupressor):
1464 (WebCore::StructuredExceptionHandlerSupressor::~StructuredExceptionHandlerSupressor):
1466 2011-09-19 Ryosuke Niwa <rniwa@webkit.org>
1468 Incorrect selection with absolutely positioned div
1469 https://bugs.webkit.org/show_bug.cgi?id=39503
1471 Reviewed by Kenneth Rohde Christiansen.
1473 The bug was caused by a false assumption in RenderBlock::positionForPoint. Because the last child box
1474 can be positioned, floated, invisible, etc..., we can't always trust last child's logicalTop to tell us
1475 whether a given point is inside or below the last child box.
1477 Fixed the bug by using the last hit-test candidate instead.
1479 Test: editing/selection/block-with-positioned-lastchild.html
1481 * rendering/RenderBlock.cpp:
1482 (WebCore::RenderBlock::positionForPoint):
1484 2011-09-19 Dmitry Titov <dimich@chromium.org>
1486 [Chromium] Crash after magic iframe transfer for Pepper/NaCl plugins.
1487 https://bugs.webkit.org/show_bug.cgi?id=68267
1488 Make adoptNode() to not enable live iframe transfer when the iframe's subtree contains plugins.
1490 Reviewed by Adam Barth.
1492 Test: fast/frames/iframe-reparenting-embed-elements.html
1495 (WebCore::Document::adoptNode):
1496 * html/HTMLFrameElementBase.cpp:
1497 (WebCore::hasPluginElements):
1498 (WebCore::HTMLFrameElementBase::canRemainAliveOnRemovalFromTree):
1499 * html/HTMLFrameElementBase.h:
1501 2011-09-19 Abhishek Arya <inferno@chromium.org>
1503 Issues with merging ruby bases.
1504 https://bugs.webkit.org/show_bug.cgi?id=67240
1506 Reviewed by James Robinson.
1508 1) Change fromBeforeChild to beforeChild to match
1509 webkit rendering naming conventions.
1510 2) Add assert to verify ruby base is indeed emptied
1511 after collecting all children in a single base.
1512 3) Fix condition in mergeBlockChildren to bail out only
1513 when we have no children and there is no work to merge
1516 Test: fast/ruby/ruby-overhang-crash.html
1518 * rendering/RenderRubyBase.cpp:
1519 (WebCore::RenderRubyBase::moveChildren):
1520 (WebCore::RenderRubyBase::moveInlineChildren):
1521 (WebCore::RenderRubyBase::moveBlockChildren):
1522 (WebCore::RenderRubyBase::mergeBlockChildren):
1523 * rendering/RenderRubyBase.h:
1524 * rendering/RenderRubyRun.cpp:
1525 (WebCore::RenderRubyRun::removeChild):
1527 2011-09-16 Abhishek Arya <inferno@chromium.org>
1529 Child not placed correctly when beforeChild (table part)
1530 has both :before, :after content.
1531 https://bugs.webkit.org/show_bug.cgi?id=67656
1533 Reviewed by James Robinson.
1535 Tests: fast/table/table-cell-before-after-content-around-table-block.html
1536 fast/table/table-cell-before-after-content-around-table-row.html
1537 fast/table/table-cell-before-after-content-around-table.html
1538 fast/table/table-row-before-after-content-around-block.html
1539 fast/table/table-row-before-after-content-around-table.html
1541 * rendering/RenderBlock.cpp:
1542 (WebCore::RenderBlock::addChildIgnoringAnonymousColumnBlocks):
1543 1. Use the new helper functions findAfterContentRenderer,
1545 2. Rename anonymousChild to better name - beforeChildAnonymousContainer.
1546 * rendering/RenderObject.cpp:
1547 (WebCore::RenderObject::addChild):
1548 When adding a new child, if beforeChild is a table part(
1549 Table/TableSection/TableRow), we need to check if both
1550 :before, :after content are shoved in one of the anonymous child.
1551 If yes, we need to split the :before, :after content before adding
1552 newChild. Easiest approach is to destroy the :before content, then add
1553 the newChild and then call updateBeforeAfterContent to recreate the
1555 * rendering/RenderObject.h:
1556 (WebCore::RenderObject::findBeforeContentRenderer): same as
1557 beforePseudoElementRenderer, but ignores text childs since they are
1559 (WebCore::RenderObject::findAfterContentRenderer): same.
1560 (WebCore::RenderObject::anonymousContainer):
1561 (WebCore::objectIsRelayoutBoundary):
1562 * rendering/RenderTable.cpp:
1563 (WebCore::RenderTable::addChild): use the new helpers and functionally
1564 correct functions - findAfterContentRenderer, anonymousContainer. previous
1565 implementation was wrong since it would not go inside, if :after content
1566 is embedded deeper than one level.
1567 * rendering/RenderTableRow.cpp:
1568 (WebCore::RenderTableRow::addChild): same.
1569 * rendering/RenderTableSection.cpp:
1570 (WebCore::RenderTableSection::addChild): same.
1572 2011-09-19 Robert Kroeger <rjkroege@chromium.org>
1574 [chromium] Gesture recognizer fires taptype only every other touch
1575 down/up sequence https://bugs.webkit.org/show_bug.cgi?id=68368
1577 Reviewed by Adam Barth.
1579 The addition of doubletap detection to the gesture recognizer missed some of the
1580 outgoing edges in the recognizer state machine. This change simplifies the logic
1581 and handles all outgoing edges.
1583 * platform/chromium/GestureRecognizerChromium.cpp:
1584 (WebCore::GestureRecognizerChromium::GestureRecognizerChromium):
1585 (WebCore::GestureRecognizerChromium::isInSecondClickTimeWindow):
1586 (WebCore::GestureRecognizerChromium::updateValues):
1587 (WebCore::GestureRecognizerChromium::touchDown):
1588 (WebCore::GestureRecognizerChromium::click):
1589 * platform/chromium/GestureRecognizerChromium.h:
1591 2011-09-19 Tom Sepez <tsepez@chromium.org>
1593 Fix xssauditor bypass with unterminated closing tag by making the HTMLSourceTracker
1594 and the HTMLParser interact more closely with each other. HTMLParser should be
1595 setting the end range for the token itself to account for buffering that the
1596 HTMLSourceTracker can't know about, but there are a lot of paths that would need
1597 updating. First step is to cover this one path.
1598 https://bugs.webkit.org/show_bug.cgi?id=68281
1600 Reviewed by Adam Barth.
1602 Test: http/tests/security/xssAuditor/script-tag-with-invalid-closing-tag.html
1604 * html/parser/HTMLSourceTracker.cpp:
1605 (WebCore::HTMLSourceTracker::end):
1606 * html/parser/HTMLTokenizer.cpp:
1607 (WebCore::HTMLTokenizer::nextToken):
1609 2011-09-19 Peter Rybin <peter.rybin@gmail.com>
1611 TextPosition refactoring: Merge ZeroBasedNumber and OneBasedNumber classes
1612 https://bugs.webkit.org/show_bug.cgi?id=63541
1614 Reviewed by Adam Barth.
1616 No new tests because this patch is not changing behavior.
1618 * bindings/js/JavaScriptCallFrame.cpp:
1619 (WebCore::JavaScriptCallFrame::JavaScriptCallFrame):
1620 * bindings/js/JavaScriptCallFrame.h:
1621 (WebCore::JavaScriptCallFrame::create):
1622 (WebCore::JavaScriptCallFrame::position):
1623 (WebCore::JavaScriptCallFrame::update):
1624 * bindings/js/ScriptController.cpp:
1625 (WebCore::ScriptController::eventHandlerLineNumber):
1626 * bindings/js/ScriptDebugServer.cpp:
1627 (WebCore::ScriptDebugServer::hasBreakpoint):
1628 (WebCore::ScriptDebugServer::dispatchDidParseSource):
1629 (WebCore::ScriptDebugServer::createCallFrameAndPauseIfNeeded):
1630 (WebCore::ScriptDebugServer::updateCallFrameAndPauseIfNeeded):
1631 * bindings/js/ScriptDebugServer.h:
1632 * bindings/js/ScriptSourceCode.h:
1633 (WebCore::ScriptSourceCode::ScriptSourceCode):
1634 * bindings/js/StringSourceProvider.h:
1635 (WebCore::StringSourceProvider::create):
1636 (WebCore::StringSourceProvider::startPosition):
1637 (WebCore::StringSourceProvider::StringSourceProvider):
1638 * bindings/v8/ScheduledAction.cpp:
1639 (WebCore::ScheduledAction::ScheduledAction):
1640 * bindings/v8/ScriptController.cpp:
1641 (WebCore::ScriptController::eventHandlerPosition):
1642 * bindings/v8/ScriptController.h:
1643 * bindings/v8/ScriptEventListener.cpp:
1644 (WebCore::createAttributeEventListener):
1645 * bindings/v8/ScriptSourceCode.h:
1646 (WebCore::ScriptSourceCode::ScriptSourceCode):
1647 (WebCore::ScriptSourceCode::startPosition):
1648 * bindings/v8/V8LazyEventListener.cpp:
1649 (WebCore::V8LazyEventListener::V8LazyEventListener):
1650 * bindings/v8/V8LazyEventListener.h:
1651 (WebCore::V8LazyEventListener::create):
1652 * bindings/v8/V8Proxy.cpp:
1653 (WebCore::V8Proxy::compileScript):
1654 (WebCore::V8Proxy::evaluate):
1655 (WebCore::V8Proxy::runScript):
1656 * bindings/v8/V8Proxy.h:
1657 * bindings/v8/WorkerContextExecutionProxy.cpp:
1658 (WebCore::WorkerContextExecutionProxy::evaluate):
1659 (WebCore::WorkerContextExecutionProxy::runScript):
1660 * bindings/v8/WorkerContextExecutionProxy.h:
1661 * bindings/v8/WorkerScriptController.cpp:
1662 (WebCore::WorkerScriptController::evaluate):
1663 * dom/PendingScript.cpp:
1664 (WebCore::PendingScript::releaseElementAndClear):
1665 * dom/PendingScript.h:
1666 (WebCore::PendingScript::PendingScript):
1667 (WebCore::PendingScript::startingPosition):
1668 (WebCore::PendingScript::setStartingPosition):
1669 * dom/ScriptElement.cpp:
1670 (WebCore::ScriptElement::prepareScript):
1671 * dom/ScriptElement.h:
1672 * dom/ScriptableDocumentParser.h:
1673 * dom/ViewportArguments.cpp:
1674 (WebCore::parserLineNumber):
1675 * html/parser/HTMLDocumentParser.cpp:
1676 (WebCore::HTMLDocumentParser::runScriptsForPausedTreeBuilder):
1677 (WebCore::HTMLDocumentParser::pumpTokenizer):
1678 (WebCore::HTMLDocumentParser::lineNumber):
1679 (WebCore::HTMLDocumentParser::textPosition):
1680 * html/parser/HTMLDocumentParser.h:
1681 * html/parser/HTMLInputStream.h:
1682 * html/parser/HTMLScriptRunner.cpp:
1683 (WebCore::HTMLScriptRunner::execute):
1684 (WebCore::HTMLScriptRunner::runScript):
1685 * html/parser/HTMLScriptRunner.h:
1686 * html/parser/HTMLTreeBuilder.cpp:
1687 (WebCore::uninitializedPositionValue1):
1688 (WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
1689 (WebCore::HTMLTreeBuilder::takeScriptToProcess):
1690 (WebCore::HTMLTreeBuilder::processEndTag):
1691 (WebCore::HTMLTreeBuilder::processScriptStartTag):
1692 * html/parser/HTMLTreeBuilder.h:
1693 * inspector/InspectorResourceAgent.cpp:
1694 (WebCore::InspectorResourceAgent::buildInitiatorObject):
1695 * platform/text/SegmentedString.cpp:
1696 (WebCore::SegmentedString::currentLine):
1697 (WebCore::SegmentedString::currentColumn):
1698 (WebCore::SegmentedString::setCurrentPosition):
1699 * platform/text/SegmentedString.h:
1700 * svg/SVGDocumentExtensions.cpp:
1701 (WebCore::parserLineNumber):
1702 * xml/XMLErrors.cpp:
1703 (WebCore::XMLErrors::XMLErrors):
1704 (WebCore::XMLErrors::handleError):
1705 (WebCore::XMLErrors::appendErrorMessage):
1707 * xml/parser/MarkupTokenizerBase.h:
1708 (WebCore::MarkupTokenizerBase::lineNumber):
1709 * xml/parser/NewXMLDocumentParser.cpp:
1710 (WebCore::NewXMLDocumentParser::processScript):
1711 (WebCore::NewXMLDocumentParser::textPosition):
1712 (WebCore::NewXMLDocumentParser::lineNumber):
1713 * xml/parser/NewXMLDocumentParser.h:
1714 * xml/parser/XMLDocumentParser.cpp:
1715 (WebCore::XMLDocumentParser::pushCurrentNode):
1716 (WebCore::XMLDocumentParser::handleError):
1717 * xml/parser/XMLDocumentParser.h:
1718 * xml/parser/XMLDocumentParserLibxml2.cpp:
1719 (WebCore::PendingCallbacks::appendErrorCallback):
1720 (WebCore::XMLDocumentParser::XMLDocumentParser):
1721 (WebCore::XMLDocumentParser::doWrite):
1722 (WebCore::XMLDocumentParser::startElementNs):
1723 (WebCore::XMLDocumentParser::error):
1724 (WebCore::XMLDocumentParser::lineNumber):
1725 (WebCore::XMLDocumentParser::columnNumber):
1726 (WebCore::XMLDocumentParser::textPosition):
1727 * xml/parser/XMLDocumentParserQt.cpp:
1728 (WebCore::XMLDocumentParser::XMLDocumentParser):
1729 (WebCore::XMLDocumentParser::doWrite):
1730 (WebCore::XMLDocumentParser::doEnd):
1731 (WebCore::XMLDocumentParser::lineNumber):
1732 (WebCore::XMLDocumentParser::columnNumber):
1733 (WebCore::XMLDocumentParser::textPosition):
1734 (WebCore::XMLDocumentParser::parse):
1735 (WebCore::XMLDocumentParser::parseStartElement):
1737 2011-09-19 Dan Bernstein <mitz@apple.com>
1739 WebCore part of [mac] WebKit contains Objective-C classes that are not prefixed with its standard prefixes
1740 https://bugs.webkit.org/show_bug.cgi?id=68323
1742 Reviewed by Sam Weinig.
1744 Renamed AccessibilityObjectWrapper to WebAccessibilityObjectWrapper.
1745 Renamed CascadeList to WebCascadeList.
1746 Renamed CookieStorageObjCAdapter to WebCookieStorageObjCAdapter.
1747 Renamed LanguageChangeObserver to WebLanguageChangeObserver.
1748 Renamed ScrollAnimationHelperDelegate to WebScrollAnimationHelperDelegate.
1749 Renamed ScrollbarPainterControllerDelegate to WebScrollbarPainterControllerDelegate.
1750 Renamed ScrollbarPainterDelegate to WebScrollbarPainterDelegate.
1751 Renamed ScrollbarPartAnimation to WebScrollbarPartAnimation.
1752 Renamed ScrollbarPrefsObserver to WebScrollbarPrefsObserver.
1754 * WebCore.gyp/WebCore.gyp: Updated for the renaming of CascadeList to WebCascadeList.
1755 * WebCore.xcodeproj/project.pbxproj:
1756 * accessibility/AccessibilityObject.h:
1757 * accessibility/mac/AXObjectCacheMac.mm:
1758 (WebCore::AXObjectCache::attachWrapper):
1759 * accessibility/mac/AccessibilityObjectMac.mm:
1760 * accessibility/mac/AccessibilityObjectWrapper.h: Removed.
1761 * accessibility/mac/AccessibilityObjectWrapper.mm: Removed.
1762 * accessibility/mac/WebAccessibilityObjectWrapper.h: Copied from Source/WebCore/accessibility/mac/AccessibilityObjectWrapper.h.
1763 * accessibility/mac/WebAccessibilityObjectWrapper.mm: Copied from Source/WebCore/accessibility/mac/AccessibilityObjectWrapper.mm.
1765 (-[WebAccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
1766 (-[WebAccessibilityObjectWrapper accessibilityIndexOfChild:]):
1767 (-[WebAccessibilityObjectWrapper accessibilityArrayAttributeValues:index:maxCount:]):
1768 * platform/graphics/mac/ComplexTextControllerCoreText.mm:
1769 (WebCore::ComplexTextController::collectComplexTextRunsForCharactersCoreText):
1770 * platform/mac/Language.mm:
1771 (WebCore::platformDefaultLanguage):
1772 * platform/mac/ScrollAnimatorMac.h:
1773 * platform/mac/ScrollAnimatorMac.mm:
1774 (-[WebScrollbarPainterDelegate setUpAnimation:scrollerPainter:part:WebCore::animateAlphaTo:duration:]):
1775 (WebCore::ScrollAnimatorMac::ScrollAnimatorMac):
1776 * platform/mac/ScrollbarThemeMac.mm:
1777 (WebCore::ScrollbarThemeMac::ScrollbarThemeMac):
1778 * platform/network/mac/CookieStorageMac.mm:
1779 (WebCore::startObservingCookieChanges):
1781 2011-09-19 Cary Clark <caryclark@google.com>
1783 Move fontDataForCombiningCharacterSequence to fix Skia on Mac build
1784 https://bugs.webkit.org/show_bug.cgi?id=68358
1786 Reviewed by Dan Bernstein.
1790 * platform/graphics/mac/FontMac.mm:
1791 * platform/graphics/mac/FontComplexTextMac.cpp:
1792 (WebCore::Font::fontDataForCombiningCharacterSequence):
1793 This moves the implementation from FontMac.mm to
1794 FontComplexTextMac.cpp, so it is visible to the Skia on Mac
1797 2011-09-19 Jessie Berlin <jberlin@apple.com>
1799 Sites that use history pushState or replaceState are recorded in history in Private Browsing
1801 https://bugs.webkit.org/show_bug.cgi?id=68208
1803 Reviewed by Brady Eidson.
1805 Test: TestWebKitAPI/Tests/WebKit2/PrivateBrowsingPushStateNoHistoryCallback.
1807 Add the privateBrowsingEnabled check that is used in other places in HistoryController
1808 before calling addVisitedLink and FrameLoaderClient::updateGlobalHistory.
1810 * loader/HistoryController.cpp:
1811 (WebCore::HistoryController::pushState):
1812 (WebCore::HistoryController::replaceState):
1814 2011-09-19 Leandro Pereira <leandro@profusion.mobi>
1816 Unreviewed: ScrollbarThemeMock.cpp is already referenced in the
1817 global CMakeLists.txt.
1819 * CMakeListsEfl.txt: Remove reference to platform/mock/ScrollbarThemeMock.cpp.
1820 * CMakeListsWinCE.txt: Ditto.
1822 2011-09-19 Ademar de Souza Reis Jr. <ademar.reis@openbossa.org>
1824 Unreviewed: dos2unix on bindings/js/JSExceptionBase.h
1826 Visual Studio is choking on this file when generating packages for
1830 Source\WebCore\Bindings\js\JSExceptionBase.h:
1831 error C4335: Mac file format detected: please convert the source file
1832 to either DOS or UNIX format
1835 Since from all .cpp or .h files shared by all ports this is the only
1836 one with CRLF line terminations, I'm assuming this was a mistake.
1838 * bindings/js/JSExceptionBase.h:
1840 2011-09-19 Ilya Tikhonovsky <loislo@chromium.org>
1842 Web Inspector: didMarkDOMContentEvent() should send event of MarkDOMContent type.
1843 https://bugs.webkit.org/show_bug.cgi?id=67528
1845 Reviewed by Pavel Feldman.
1847 Tests: inspector/timeline/timeline-dom-content-loaded-event.html
1848 inspector/timeline/timeline-load-event.html
1850 * inspector/InspectorTimelineAgent.cpp:
1851 (WebCore::InspectorTimelineAgent::didMarkDOMContentEvent):
1853 2011-09-19 Shawn Singh <shawnsingh@chromium.org>
1855 Re-name LayerChromium border functions to reflect that
1856 they are only for debug use.
1857 https://bugs.webkit.org/show_bug.cgi?id=68212
1859 Reviewed by James Robinson.
1861 Code cleanup towards unit testing.
1863 * platform/graphics/chromium/GraphicsLayerChromium.cpp:
1864 (WebCore::GraphicsLayerChromium::clearBackgroundColor):
1865 (WebCore::GraphicsLayerChromium::setDebugBackgroundColor):
1866 (WebCore::GraphicsLayerChromium::setDebugBorder):
1867 (WebCore::GraphicsLayerChromium::updateLayerBackgroundColor):
1868 (WebCore::GraphicsLayerChromium::setupContentsLayer):
1869 * platform/graphics/chromium/LayerChromium.cpp:
1870 (WebCore::LayerChromium::setDebugBorderColor):
1871 (WebCore::LayerChromium::setDebugBorderWidth):
1872 * platform/graphics/chromium/LayerChromium.h:
1874 2011-09-18 Ilya Tikhonovsky <loislo@chromium.org>
1876 Web Inspector: requestAnimationFrame callbacks don't show up in the timeline panel.
1877 https://bugs.webkit.org/show_bug.cgi?id=67986
1879 Reviewed by Pavel Feldman.
1881 Test: inspector/timeline/timeline-animation-frame.html
1883 * English.lproj/localizedStrings.js:
1884 * bindings/v8/V8Proxy.cpp:
1885 (WebCore::V8Proxy::callFunction):
1886 (WebCore::V8Proxy::callFunctionWithoutFrame):
1887 (WebCore::V8Proxy::instrumentedCallFunction):
1888 * bindings/v8/V8Proxy.h:
1889 * bindings/v8/custom/V8CustomVoidCallback.cpp:
1890 (WebCore::invokeCallback):
1891 * dom/ScriptedAnimationController.cpp:
1892 (WebCore::ScriptedAnimationController::registerCallback):
1893 (WebCore::ScriptedAnimationController::cancelCallback):
1894 (WebCore::ScriptedAnimationController::serviceScriptedAnimations):
1895 * inspector/InspectorInstrumentation.cpp:
1896 (WebCore::InspectorInstrumentation::didRegisterAnimationFrameCallbackImpl):
1897 (WebCore::InspectorInstrumentation::didCancelAnimationFrameCallbackImpl):
1898 (WebCore::InspectorInstrumentation::willFireAnimationFrameEventImpl):
1899 (WebCore::InspectorInstrumentation::didFireAnimationFrameEventImpl):
1900 * inspector/InspectorInstrumentation.h:
1901 (WebCore::InspectorInstrumentation::willCallFunction):
1902 (WebCore::InspectorInstrumentation::didRegisterAnimationFrameCallback):
1903 (WebCore::InspectorInstrumentation::didCancelAnimationFrameCallback):
1904 (WebCore::InspectorInstrumentation::willFireAnimationFrameEvent):
1905 (WebCore::InspectorInstrumentation::didFireAnimationFrameEvent):
1906 * inspector/InspectorTimelineAgent.cpp:
1907 (WebCore::InspectorTimelineAgent::didRegisterAnimationFrameCallback):
1908 (WebCore::InspectorTimelineAgent::didCancelAnimationFrameCallback):
1909 (WebCore::InspectorTimelineAgent::willFireAnimationFrameEvent):
1910 (WebCore::InspectorTimelineAgent::didFireAnimationFrameEvent):
1911 * inspector/InspectorTimelineAgent.h:
1912 * inspector/TimelineRecordFactory.cpp:
1913 (WebCore::TimelineRecordFactory::createAnimationFrameCallbackData):
1914 * inspector/TimelineRecordFactory.h:
1915 * inspector/front-end/TimelineAgent.js:
1916 * inspector/front-end/TimelinePanel.js:
1917 (WebInspector.TimelinePanel):
1918 (WebInspector.TimelinePanel.prototype.get _recordStyles):
1919 (WebInspector.TimelinePanel.prototype._innerAddRecordToTimeline):
1920 (WebInspector.TimelinePanel.prototype._clearPanel):
1921 (WebInspector.TimelinePanel.FormattedRecord):
1922 (WebInspector.TimelinePanel.FormattedRecord.prototype._generatePopupContent):
1923 (WebInspector.TimelinePanel.FormattedRecord.prototype._getRecordDetails):
1925 2011-09-19 Carlos Garcia Campos <cgarcia@igalia.com>
1927 [GTK] Fix distcheck build
1928 https://bugs.webkit.org/show_bug.cgi?id=68241
1930 Reviewed by Martin Robinson.
1932 * GNUmakefile.list.am:
1934 2011-09-18 Ilya Tikhonovsky <loislo@chromium.org>
1936 Web Inspector: chromium-win: "Save timeline data" does nothing.
1937 https://bugs.webkit.org/show_bug.cgi?id=68313
1939 windows shell API function GetSaveFileName doesn't accept file names with ':' symbol.
1941 Reviewed by Pavel Feldman.
1943 * inspector/front-end/TimelinePanel.js:
1944 (WebInspector.TimelineModel.prototype._saveToFile):
1946 2011-09-18 Dan Bernstein <mitz@apple.com>
1948 Try to fix the Chromium Mac build after r95391.
1950 * WebCore.gyp/WebCore.gyp:
1952 2011-09-18 Dan Bernstein <mitz@apple.com>
1954 Try to fix the Chromium Mac build after r95391.
1956 * WebCore.gyp/WebCore.gyp:
1958 2011-09-18 Dan Bernstein <mitz@apple.com>
1960 Try to fix the Chromium Mac build after r95391.
1962 * WebCore.gypi: Updated for the renaming of ComplexTextController.cpp.
1963 * WebCore.xcodeproj/project.pbxproj: Ditto.
1964 * platform/graphics/Font.h: Changed #if directives to include the Chromium Mac port.
1965 * platform/graphics/SimpleFontData.h: Ditto.
1966 * platform/graphics/mac/ComplexTextControllerCoreText.cpp: Changed the filename extension of this
1967 Objective-C++ file to .mm.
1968 * platform/graphics/mac/ComplexTextControllerCoreText.mm: Copied from Source/WebCore/platform/graphics/mac/ComplexTextControllerCoreText.cpp.
1970 2011-09-18 Dan Bernstein <mitz@apple.com>
1972 Snow Leopard build fix after r95391.
1974 * platform/graphics/mac/ComplexTextControllerCoreText.cpp:
1975 (WebCore::ComplexTextController::collectComplexTextRunsForCharactersCoreText):
1977 2011-09-18 Dan Bernstein <mitz@apple.com>
1979 Leopard build fix after r95391.
1981 * platform/graphics/mac/ComplexTextControllerATSUI.cpp:
1982 (WebCore::ComplexTextController::collectComplexTextRunsForCharactersATSUI):
1984 2011-09-18 Dan Bernstein <mitz@apple.com>
1986 Allow Core Text to choose the fallback font for rendering a combining character sequence
1988 Fixes <rdar://problem/7860281> Decomposed text is displayed incorrectly when Verdana is specified
1989 https://bugs.webkit.org/show_bug.cgi?id=68287
1991 Reviewed by Dave Hyatt.
1993 Test: platform/mac/fast/text/combining-character-sequence-fallback.html
1995 * WebCore.xcodeproj/project.pbxproj: Compile ComplexTextControllerCoreText.cpp as Objective-C++.
1996 I am going to rename this file in a followup patch.
1998 * platform/graphics/Font.h: Declared fontDataForCombiningCharacterSequence().
2000 * platform/graphics/SimpleFontData.h: Declared canRenderCombiningCharacterSequence() and added
2001 a member variable to cache the results of calling this function.
2003 * platform/graphics/mac/ComplexTextController.cpp:
2004 (WebCore::ComplexTextController::offsetForPosition): Fixed a typo in a comment.
2005 (WebCore::advanceByCombiningCharacterSequence): Added this helper function, which iterates over
2006 characters until the end of a sequence of combining characters, zero-width joiners and zero-width
2007 non-joiners. A single base characater followed by such a (possibly-empty) sequence is known as
2008 a combining character sequence. This stretches the definition a little because the base character
2009 may be a combining character as well. Returns false if an invalid UTF-16 sequence is encountered,
2011 (WebCore::ComplexTextController::collectComplexTextRuns): - Replaced the glyphData and nextGlyphData
2012 variables each with a pair of variables, a SimpleFontData* and a boolean indicating whether a
2013 character mapped to the missing glyph. This clarifies that this function does not use glyph IDs.
2014 - Renamed the local variable newC to uppercaseCharacter.
2015 - Changed to use advanceByCombiningCharacterSequence().
2016 - Changed to use Font::fontDataForCombiningCharacterSequence() instead of Font::glyphDataForCharacter().
2017 If there are combining marks and none of the fonts in the fallback list can render the sequence alone,
2018 use the systemFallbackFontData() constant to indicate to collectComplexTextRunsForCharactersCoreText()
2019 to allow Core Text to perform its own fallback.
2020 - Stopped checking isSmallCaps against nextIsSmallCaps. It was redundant, since the small caps FontData
2021 differs from the normal variant.
2022 (WebCore::ComplexTextController::collectComplexTextRunsForCharacters): Moved the common logic to
2023 handle the 0 fontData case from the ATSUI and Core Text continuations of this function into this function.
2025 * platform/graphics/mac/ComplexTextController.h:
2026 (WebCore::ComplexTextController::systemFallbackFontData): Added. This constant is used to indicate to
2027 collectComplexTextRunsForCharactersCoreText() that it should allow Core Text to perform its own font
2030 * platform/graphics/mac/ComplexTextControllerATSUI.cpp:
2031 (WebCore::ComplexTextController::collectComplexTextRunsForCharactersATSUI): Handle systemFallbackFontData()
2032 by using the primary font data.
2034 * platform/graphics/mac/ComplexTextControllerCoreText.cpp:
2035 (-[CascadeList initWithFont:WebCore::character:]): Added.
2036 (-[CascadeList count]): Added.
2037 (-[CascadeList objectAtIndex:]): Added. Returns an entry from a cascade list of CTFontDescriptorRef
2038 objects based on the font’s fallback list for the character. The list is initialized lazily.
2039 (WebCore::ComplexTextController::collectComplexTextRunsForCharactersCoreText): Handle systemFallbackFontData()
2040 by allowing Core Text to perform font fallback, starting with a cascade list based on the font’s fallback
2041 list and possibly continuing with system fallback.
2043 * platform/graphics/mac/FontMac.mm:
2044 (WebCore::Font::fontDataForCombiningCharacterSequence): Added. If the sequence is only a base character,
2045 calls through to glyphDataForCharacter(). Otherwise, iterates over the font’s fallback list for the
2046 base character (and the system fallback font for that character), returning the first font that can
2047 render the sequence, or 0 if there is none.
2049 * platform/graphics/mac/SimpleFontDataMac.mm:
2050 (WebCore::provideStringAndAttributes): Added this Core Text callback.
2051 (WebCore::SimpleFontData::canRenderCombiningCharacterSequence): Added. Checks if Core Text can render
2052 the sequence using only this font. Caches the result.
2054 2011-09-17 Mihai Parparita <mihaip@chromium.org>
2056 FrameLoaderClient BackForwardList-related methods are unsued
2057 https://bugs.webkit.org/show_bug.cgi?id=68293
2059 Reviewed by Darin Adler.
2061 Remove FrameLoaderClient methods that were added by r51629, since only
2062 the old (since-deleted) Android port needed them.
2064 * history/BackForwardListImpl.cpp:
2065 (WebCore::BackForwardListImpl::addItem):
2066 (WebCore::BackForwardListImpl::goBack):
2067 (WebCore::BackForwardListImpl::goForward):
2068 (WebCore::BackForwardListImpl::goToItem):
2069 (WebCore::BackForwardListImpl::setCapacity):
2070 * loader/EmptyClients.h:
2071 * loader/FrameLoaderClient.h:
2073 2011-09-17 David Hyatt <hyatt@apple.com>
2075 https://bugs.webkit.org/show_bug.cgi?id=68307
2077 Crash in border image cssText. Make sure to null check all the components, since they're all
2080 Reviewed by Sam Weinig.
2082 Added fast/borders/border-image-slice-omission.html
2084 * css/CSSBorderImageValue.cpp:
2085 (WebCore::CSSBorderImageValue::cssText):
2087 2011-09-17 Aaron Boodman <aa@chromium.org>
2089 Rework script context creation/release notifications
2090 https://bugs.webkit.org/show_bug.cgi?id=67828
2092 Reviewed by Adam Barth.
2094 * bindings/v8/V8DOMWindowShell.cpp:
2095 (WebCore::V8DOMWindowShell::disposeContextHandles):
2096 (WebCore::V8DOMWindowShell::initContextIfNeeded):
2097 * bindings/v8/V8IsolatedContext.cpp:
2098 (WebCore::V8IsolatedContext::V8IsolatedContext):
2099 (WebCore::V8IsolatedContext::destroy):
2100 * bindings/v8/V8IsolatedContext.h:
2101 * loader/EmptyClients.h:
2102 (WebCore::EmptyFrameLoaderClient::didCreateScriptContext):
2103 (WebCore::EmptyFrameLoaderClient::willReleaseScriptContext):
2104 * loader/FrameLoaderClient.h:
2106 2011-09-17 Ilya Tikhonovsky <loislo@chromium.org>
2108 Web Inspector: file open dialog appears when user clicks on the timeline bar in timeline panel.
2109 https://bugs.webkit.org/show_bug.cgi?id=68312
2111 Reviewed by Pavel Feldman.
2113 * inspector/front-end/TimelinePanel.js:
2114 (WebInspector.TimelinePanel.prototype._createFileSelector):
2116 2011-09-17 Jeff Miller <jeffm@apple.com>
2118 Build fix after r95372.
2120 * dom/DOMAllInOne.cpp: #include "EventListenerMap.cpp"
2122 2011-09-17 Deepak Sherveghar <bpwv64@motorola.com>
2124 Override supportsFocus() for HTMLMediaElement.
2125 https://bugs.webkit.org/show_bug.cgi?id=67190
2127 Reviewed by Antonio Gomes.
2129 Tests: fast/events/media-element-focus-tab.html
2130 fast/spatial-navigation/snav-media-elements.html
2132 Return true from supportsFocus() if control's attribute is present or a tabindex is specified.
2134 * html/HTMLMediaElement.cpp:
2135 (WebCore::HTMLMediaElement::supportsFocus):
2136 * html/HTMLMediaElement.h:
2138 2011-09-16 Adam Barth <abarth@webkit.org>
2140 Rename ENABLE(LEVELDB) to USE(LEVELDB)
2141 https://bugs.webkit.org/show_bug.cgi?id=68290
2143 Reviewed by Darin Adler.
2145 LEVELDB is a library that can be used to implemented INDEXED_DATABASE,
2146 which means it should be a USE not an ENABLE.
2149 * WebCore.gyp/WebCore.gyp:
2150 * platform/leveldb/LevelDBComparator.h:
2151 * platform/leveldb/LevelDBDatabase.cpp:
2152 * platform/leveldb/LevelDBDatabase.h:
2153 * platform/leveldb/LevelDBIterator.h:
2154 * platform/leveldb/LevelDBSlice.h:
2155 * platform/leveldb/LevelDBTransaction.cpp:
2156 * platform/leveldb/LevelDBTransaction.h:
2157 * platform/leveldb/LevelDBWriteBatch.cpp:
2158 * platform/leveldb/LevelDBWriteBatch.h:
2159 * storage/IDBFactoryBackendImpl.cpp:
2160 (WebCore::IDBFactoryBackendImpl::open):
2161 (WebCore::IDBFactoryBackendImpl::migrateFromSQLiteToLevelDB):
2162 * storage/IDBLevelDBBackingStore.cpp:
2163 * storage/IDBLevelDBBackingStore.h:
2164 * storage/IDBLevelDBCoding.cpp:
2165 * storage/IDBLevelDBCoding.h:
2167 2011-09-16 Andreas Kling <kling@webkit.org>
2169 Reduce EventTarget memory usage by deferring hash map allocation
2170 until there are listeners for more than 1 event type.
2172 http://webkit.org/b/68105
2174 Reviewed by Darin Adler.
2176 Introduce an EventListenerMap class which manages a map of event types that have
2177 one or more listeners connected.
2179 When there is only one event type, it's stored directly on the EventListenerMap
2180 internally, and when more are added it moves to a hash map. It only goes back
2181 from the hash map if all the listeners are removed at once (i.e clear() is called.)
2184 * GNUmakefile.list.am:
2187 * WebCore.vcproj/WebCore.vcproj:
2188 * WebCore.xcodeproj/project.pbxproj:
2194 Export EventListenerMap::contains() for WebKit/mac.
2196 * dom/EventListenerMap.cpp: Added.
2197 (WebCore::EventListenerMap::EventListenerMap):
2198 (WebCore::EventListenerMap::~EventListenerMap):
2199 (WebCore::EventListenerMap::isEmpty):
2200 (WebCore::EventListenerMap::contains):
2201 (WebCore::EventListenerMap::clear):
2202 (WebCore::EventListenerMap::eventTypes):
2203 (WebCore::addListenerToVector):
2204 (WebCore::EventListenerMap::add):
2205 (WebCore::removeListenerFromVector):
2206 (WebCore::EventListenerMap::remove):
2207 (WebCore::EventListenerMap::find):
2208 (WebCore::removeFirstListenerCreatedFromMarkup):
2209 (WebCore::EventListenerMap::removeFirstEventListenerCreatedFromMarkup):
2210 (WebCore::copyListenersNotCreatedFromMarkupToTarget):
2211 (WebCore::EventListenerMap::copyEventListenersNotCreatedFromMarkupToTarget):
2212 (WebCore::EventListenerIterator::EventListenerIterator):
2213 (WebCore::EventListenerIterator::nextListener):
2214 * dom/EventListenerMap.h: Added.
2216 * dom/EventTarget.cpp:
2217 (WebCore::EventTargetData::~EventTargetData):
2218 (WebCore::EventTarget::addEventListener):
2219 (WebCore::EventTarget::removeEventListener):
2220 (WebCore::EventTarget::fireEventListeners):
2221 (WebCore::EventTarget::getEventListeners):
2222 (WebCore::EventTarget::removeAllEventListeners):
2224 * dom/EventTarget.h:
2225 (WebCore::EventTarget::visitJSEventListeners):
2227 Use EventListenerIterator to visit listeners. (JSC specific.)
2229 * inspector/InspectorDOMAgent.cpp:
2230 (WebCore::InspectorDOMAgent::getEventListenersForNode):
2232 Call EventListenerMap::eventTypes() go get the list of event types
2233 currently listened for.
2236 (WebCore::Node::removeEventListener):
2237 * svg/SVGUseElement.cpp:
2238 (WebCore::SVGUseElement::transferEventListenersToShadowTree):
2240 Move implementations of SVG-specific hacks into EventListenerMap and
2241 call them from here.
2243 2011-09-16 Jeremy Apthorp <jeremya@chromium.org> and James Kozianski <koz@chromium.org>
2245 Don't detach elements from the render tree when entering fullscreen mode
2246 https://bugs.webkit.org/show_bug.cgi?id=66531
2248 This prevents plugin instances from being destroyed and reinstantiated
2249 when entering fullscreen mode.
2251 Reviewed by James Robinson.
2253 Test: plugins/fullscreen-plugins-dont-reload.html
2256 (WebCore::Document::webkitWillEnterFullScreenForElement):
2257 (WebCore::Document::webkitDidExitFullScreenForElement):
2258 * dom/NodeRenderingContext.cpp:
2259 (WebCore::NodeRendererFactory::createRendererIfNeeded):
2260 * rendering/RenderFullScreen.cpp:
2261 (createFullScreenStyle):
2262 (RenderFullScreen::wrapRenderer):
2263 (RenderFullScreen::unwrapRenderer):
2264 * rendering/RenderFullScreen.h:
2266 2011-09-16 Jochen Eisinger <jochen@chromium.org>
2268 Rename FrameLoaderClient::allowImages to FrameLoaderClient::allowImage and include the image URL as parameter
2269 https://bugs.webkit.org/show_bug.cgi?id=68071
2271 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.
2273 Reviewed by Adam Barth.
2275 * html/ImageDocument.cpp:
2276 (WebCore::ImageDocumentParser::appendBytes):
2277 * loader/FrameLoaderClient.h:
2278 (WebCore::FrameLoaderClient::allowImage):
2279 * loader/cache/CachedResourceLoader.cpp:
2280 (WebCore::CachedResourceLoader::requestImage):
2282 2011-09-16 Tom Sepez <tsepez@chromium.org>
2284 Make XSSAuditor truncate inline snippets at a reasonable length before comparison
2285 respecting boundaries of multiply urlencoded sequences.
2286 https://bugs.webkit.org/show_bug.cgi?id=68092
2288 Reviewed by Adam Barth.
2290 Test: http/tests/security/xssAuditor/property-escape-long.html
2292 * html/parser/XSSAuditor.cpp:
2293 (WebCore::XSSAuditor::filterTokenAfterScriptStartTag):
2294 (WebCore::XSSAuditor::eraseDangerousAttributesIfInjected):
2295 (WebCore::XSSAuditor::eraseAttributeIfInjected):
2296 (WebCore::XSSAuditor::decodedSnippetForAttribute):
2297 (WebCore::XSSAuditor::isContainedInRequest):
2298 * html/parser/XSSAuditor.h:
2300 2011-09-16 Shawn Singh <shawnsingh@chromium.org>
2302 Remove m_contentsDirty from LayerChromium because it
2303 is redundant with m_dirtyRect.
2304 https://bugs.webkit.org/show_bug.cgi?id=68213
2306 Reviewed by James Robinson.
2308 Code cleanup towards unit testing.
2310 * platform/graphics/chromium/Canvas2DLayerChromium.cpp:
2311 (WebCore::Canvas2DLayerChromium::updateCompositorResources):
2312 * platform/graphics/chromium/ContentLayerChromium.cpp:
2313 (WebCore::ContentLayerChromium::paintContentsIfDirty):
2314 * platform/graphics/chromium/ImageLayerChromium.cpp:
2315 (WebCore::ImageLayerChromium::paintContentsIfDirty):
2316 * platform/graphics/chromium/LayerChromium.cpp:
2317 (WebCore::LayerChromium::LayerChromium):
2318 (WebCore::LayerChromium::setNeedsDisplay):
2319 (WebCore::LayerChromium::resetNeedsDisplay):
2320 * platform/graphics/chromium/LayerChromium.h:
2321 * platform/graphics/chromium/VideoLayerChromium.cpp:
2322 (WebCore::VideoLayerChromium::updateCompositorResources):
2323 * platform/graphics/chromium/WebGLLayerChromium.cpp:
2324 (WebCore::WebGLLayerChromium::updateCompositorResources):
2326 2011-09-16 Dmitry Lomov <dslomov@google.com>
2328 https://bugs.webkit.org/show_bug.cgi?id=66714
2329 Add webkitPostMessage to allow for adding transferable support.
2330 This adds webkitPostMessage, currently identical to postMessage, which
2331 would later be a vehicle for adding transferable support for messaging.
2333 Based on patch by Luke Zarko.
2335 Reviewed by David Levin.
2337 * bindings/js/JSDOMWindowCustom.cpp:
2338 (WebCore::JSDOMWindow::webkitPostMessage):
2339 * bindings/js/JSDedicatedWorkerContextCustom.cpp:
2340 (WebCore::JSDedicatedWorkerContext::webkitPostMessage):
2341 * bindings/js/JSMessageEventCustom.cpp:
2342 (WebCore::JSMessageEvent::webkitInitMessageEvent):
2343 * bindings/js/JSMessagePortCustom.cpp:
2344 (WebCore::JSMessagePort::webkitPostMessage):
2345 * bindings/js/JSWorkerCustom.cpp:
2346 (WebCore::JSWorker::postMessage):
2347 (WebCore::JSWorker::webkitPostMessage):
2348 * bindings/v8/custom/V8DOMWindowCustom.cpp:
2349 (WebCore::handlePostMessageCallback):
2350 (WebCore::V8DOMWindow::postMessageCallback):
2351 (WebCore::V8DOMWindow::webkitPostMessageCallback):
2352 * bindings/v8/custom/V8DedicatedWorkerContextCustom.cpp:
2353 (WebCore::handlePostMessageCallback):
2354 (WebCore::V8DedicatedWorkerContext::postMessageCallback):
2355 (WebCore::V8DedicatedWorkerContext::webkitPostMessageCallback):
2356 * bindings/v8/custom/V8MessageEventCustom.cpp:
2357 (WebCore::V8MessageEvent::initMessageEventCallback):
2358 (WebCore::V8MessageEvent::webkitInitMessageEventCallback):
2359 * bindings/v8/custom/V8MessagePortCustom.cpp:
2360 (WebCore::handlePostMessageCallback):
2361 (WebCore::V8MessagePort::postMessageCallback):
2362 (WebCore::V8MessagePort::webkitPostMessageCallback):
2363 * bindings/v8/custom/V8WorkerCustom.cpp:
2364 (WebCore::handlePostMessageCallback):
2365 (WebCore::V8Worker::postMessageCallback):
2366 (WebCore::V8Worker::webkitPostMessageCallback):
2367 * dom/MessageEvent.idl:
2368 * dom/MessagePort.idl:
2369 * page/DOMWindow.idl:
2370 * workers/DedicatedWorkerContext.idl:
2371 * workers/Worker.idl:
2373 2011-09-16 Alexei Svitkine <asvitkine@chromium.org>
2375 Chromium: Fix repaint of rubber-band overhang area under composited path
2376 https://bugs.webkit.org/show_bug.cgi?id=68246
2378 I accidently removed these two lines from the last patch on: https://bugs.webkit.org/show_bug.cgi?id=66969
2380 Reviewed by James Robinson.
2382 Test: platform/chromium-gpu/compositing/rubberbanding/transform-overhang-size-change.html
2384 * platform/ScrollView.cpp:
2385 (WebCore::ScrollView::scrollContents):
2387 2011-09-16 Peter Beverloo <peter@chromium.org>
2389 Depend on harfbuzz for OS=Android as well
2390 https://bugs.webkit.org/show_bug.cgi?id=68239
2392 Like GTK, Android depends on harfbuzz as well, so reflect that in
2393 the project file. Furthermore, fix a compile error in PopupListBox.cpp
2394 by explicitly including ctype.h, as isspace otherwise won't be declared.
2396 Reviewed by Steve Block.
2398 * WebCore.gyp/WebCore.gyp:
2399 * platform/chromium/PopupListBox.cpp:
2401 2011-09-16 Tony Chang <tony@chromium.org>
2403 Rename flex-align values to match the spec
2404 https://bugs.webkit.org/show_bug.cgi?id=67741
2406 Reviewed by Ojan Vafai.
2408 * css/CSSParser.cpp:
2409 (WebCore::CSSParser::parseValue):
2410 * css/CSSPrimitiveValueMappings.h:
2411 (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
2412 (WebCore::CSSPrimitiveValue::operator EFlexAlign):
2413 * css/CSSValueKeywords.in:
2414 * rendering/style/RenderStyleConstants.h:
2416 2011-09-16 Kentaro Hara <haraken@chromium.org>
2418 Implement an ErrorEvent constructor for JSC
2419 https://bugs.webkit.org/show_bug.cgi?id=68148
2421 Reviewed by Sam Weinig.
2423 The spec for the ErrorEvent constructor is here:
2424 http://dev.w3.org/html5/workers/#errorevent
2426 Test: fast/events/constructors/error-event-constructor.html
2428 * bindings/generic/EventConstructors.h: Added a definition for the ErrorEvent constructor.
2429 * bindings/js/JSEventConstructors.cpp: Added #includes for ErrorEvent.
2430 * dom/ErrorEvent.cpp:
2431 (WebCore::ErrorEventInit::ErrorEventInit):
2432 (WebCore::ErrorEvent::ErrorEvent):
2433 (WebCore::ErrorEvent::initErrorEvent):
2434 (WebCore::ErrorEvent::isErrorEvent):
2435 * dom/ErrorEvent.h: Added a definition for ErrorEventInit.
2436 (WebCore::ErrorEvent::create):
2437 (WebCore::ErrorEvent::message):
2438 (WebCore::ErrorEvent::filename):
2439 (WebCore::ErrorEvent::lineno):
2440 * dom/ErrorEvent.idl: Makes ErrorEvent constructible.
2442 2011-09-16 Kentaro Hara <haraken@google.com>
2444 Overhangs a ruby by no more than half the width of the neighboring text.
2445 https://bugs.webkit.org/show_bug.cgi?id=62684
2447 Reviewed by Dan Bernstein.
2449 Assume two rubies between which a narrow text exists, like
2450 "<ruby>x<rt>xxxxxx</rt></ruby>l<ruby>y<rt>yyyyyy</rt></ruby>".
2451 In order to avoid the two rubies overlapping with each other,
2452 this patch overhangs the ruby by no more than half the ruby font
2453 size and no more than half the width of the neighboring text.
2455 Tests: fast/ruby/overhang-horizontal-no-overlap1.html
2456 fast/ruby/overhang-horizontal-no-overlap2.html
2457 fast/ruby/overhang-vertical-no-overlap1.html
2458 fast/ruby/overhang-vertical-no-overlap2.html
2460 * rendering/RenderRubyRun.cpp:
2461 (WebCore::RenderRubyRun::getOverhang): Calculates the width of ruby overhanging.
2463 2011-09-16 Sheriff Bot <webkit.review.bot@gmail.com>
2465 Unreviewed, rolling out r95304.
2466 http://trac.webkit.org/changeset/95304
2467 https://bugs.webkit.org/show_bug.cgi?id=68299
2469 Broke GTK+ builds. It pulls derived headers into main.c
2470 (Requested by rniwa on #webkit).
2472 * bindings/scripts/CodeGeneratorGObject.pm:
2474 * bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp:
2475 * bindings/scripts/test/GObject/WebKitDOMTestCallback.h:
2476 * bindings/scripts/test/GObject/WebKitDOMTestCallbackPrivate.h:
2477 * bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp:
2478 * bindings/scripts/test/GObject/WebKitDOMTestInterface.h:
2479 * bindings/scripts/test/GObject/WebKitDOMTestInterfacePrivate.h:
2480 * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.cpp:
2481 * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.h:
2482 * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListenerPrivate.h:
2483 * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
2484 (webkit_dom_test_obj_conditional_method1):
2485 (webkit_dom_test_obj_conditional_method2):
2486 (webkit_dom_test_obj_conditional_method3):
2487 (webkit_dom_test_obj_get_conditional_attr1):
2488 (webkit_dom_test_obj_set_conditional_attr1):
2489 (webkit_dom_test_obj_get_conditional_attr2):
2490 (webkit_dom_test_obj_set_conditional_attr2):
2491 (webkit_dom_test_obj_get_conditional_attr3):
2492 (webkit_dom_test_obj_set_conditional_attr3):
2493 (webkit_dom_test_obj_set_property):
2494 (webkit_dom_test_obj_get_property):
2495 (webkit_dom_test_obj_class_init):
2496 * bindings/scripts/test/GObject/WebKitDOMTestObj.h:
2497 * bindings/scripts/test/GObject/WebKitDOMTestObjPrivate.h:
2498 * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.cpp:
2499 * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.h:
2500 * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterfacePrivate.h:
2502 2011-09-16 Shawn Singh <shawnsingh@chromium.org>
2504 Re-named isRootLayer to isNonCompositedContent because
2505 that is what the flag actually means.
2506 https://bugs.webkit.org/show_bug.cgi?id=68214
2508 Reviewed by James Robinson.
2510 Code cleanup towards unit testing.
2512 * platform/graphics/chromium/LayerChromium.cpp:
2513 (WebCore::LayerChromium::LayerChromium):
2514 (WebCore::LayerChromium::pushPropertiesTo):
2515 * platform/graphics/chromium/LayerChromium.h:
2516 (WebCore::LayerChromium::setIsNonCompositedContent):
2517 (WebCore::LayerChromium::isNonCompositedContent):
2518 * platform/graphics/chromium/NonCompositedContentHost.cpp:
2519 (WebCore::NonCompositedContentHost::NonCompositedContentHost):
2520 * platform/graphics/chromium/TiledLayerChromium.cpp:
2521 (WebCore::TiledLayerChromium::setLayerTreeHost):
2522 * platform/graphics/chromium/cc/CCLayerImpl.cpp:
2523 (WebCore::CCLayerImpl::CCLayerImpl):
2524 * platform/graphics/chromium/cc/CCLayerImpl.h:
2525 (WebCore::CCLayerImpl::setIsNonCompositedContent):
2526 (WebCore::CCLayerImpl::isNonCompositedContent):
2527 * platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:
2528 (WebCore::CCTiledLayerImpl::draw):
2530 2011-09-16 Simon Fraser <simon.fraser@apple.com>
2532 Make custom scrollbar theme for use in DRT, to reduce pixel diffs between platforms
2533 https://bugs.webkit.org/show_bug.cgi?id=68134
2535 Reviewed by Sam Weinig.
2537 Add a new setting to control whether the mock scrollbar theme is used.
2538 This is a global setting, so that it can be set without having to
2539 access a specific Settings object.
2542 (WebCore::Settings::setMockScrollbarsEnabled):
2543 (WebCore::Settings::mockScrollbarsEnabled):
2545 2011-09-16 Ben Wells <benwells@chromium.org>
2547 Large canvas fills should not crash or create unnecessarily large image buffers
2548 https://bugs.webkit.org/show_bug.cgi?id=67988
2550 When using source-in, destination-in, source-out, or destination-atop a temporary
2551 buffer is created. This buffer only needs to be big enough to cover the intersection
2552 of the path and the canvas. If the area of intersection between the fill and the
2553 canvas is empty the canvas is completely cleared and a temporary buffer is not used.
2555 This change also adds some null checks for failures to create contexts or buffers.
2557 Reviewed by Darin Adler.
2559 Test: fast/canvas/canvas-large-fills.html
2561 * html/canvas/CanvasRenderingContext2D.cpp:
2562 (WebCore::CanvasRenderingContext2D::clearCanvas):
2563 (WebCore::CanvasRenderingContext2D::fillAndDisplayTransparencyElsewhere):
2565 2011-09-16 Shawn Singh <shawnsingh@chromium.org>
2567 Remove default NULL argument in LayerChromium::create().
2568 https://bugs.webkit.org/show_bug.cgi?id=68211
2570 Reviewed by James Robinson.
2572 Code cleanup related to creating unit testing.
2574 * platform/graphics/chromium/LayerChromium.h:
2576 2011-09-16 Adrienne Walker <enne@google.com>
2578 [chromium] Move quad drawing code from LayerChromium to LayerRendererChromium
2579 https://bugs.webkit.org/show_bug.cgi?id=68272
2581 Reviewed by James Robinson.
2583 All the OpenGL code is in LayerRendererChromium and the CCLayerImpl
2584 tree, so move the static drawTexturedQuad/toGLMatrix functions to
2585 LayerRendererChromium, where they really belong.
2587 Just moving code around. Tested by existing compositor tests.
2589 * platform/graphics/chromium/LayerChromium.cpp:
2590 * platform/graphics/chromium/LayerChromium.h:
2591 * platform/graphics/chromium/LayerRendererChromium.cpp:
2592 (WebCore::LayerRendererChromium::toGLMatrix):
2593 (WebCore::LayerRendererChromium::drawTexturedQuad):
2594 * platform/graphics/chromium/LayerRendererChromium.h:
2595 * platform/graphics/chromium/cc/CCCanvasLayerImpl.cpp:
2596 (WebCore::CCCanvasLayerImpl::draw):
2597 * platform/graphics/chromium/cc/CCHeadsUpDisplay.cpp:
2598 (WebCore::CCHeadsUpDisplay::draw):
2599 * platform/graphics/chromium/cc/CCLayerImpl.cpp:
2600 (WebCore::CCLayerImpl::drawDebugBorder):
2601 * platform/graphics/chromium/cc/CCPluginLayerImpl.cpp:
2602 (WebCore::CCPluginLayerImpl::draw):
2603 * platform/graphics/chromium/cc/CCRenderSurface.cpp:
2604 (WebCore::CCRenderSurface::drawSurface):
2605 * platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:
2606 (WebCore::CCTiledLayerImpl::drawTiles):
2607 * platform/graphics/chromium/cc/CCVideoLayerImpl.cpp:
2608 (WebCore::CCVideoLayerImpl::drawYUV):
2609 (WebCore::CCVideoLayerImpl::drawRGBA):
2611 2011-09-16 Shawn Singh <shawnsingh@chromium.org>
2613 Fixed const correctness on accessors in LayerChromium
2614 https://bugs.webkit.org/show_bug.cgi?id=68210
2616 Reviewed by James Robinson.
2618 Code cleanup related to creating unit testing.
2620 * platform/graphics/chromium/LayerChromium.h:
2621 (WebCore::LayerChromium::preserves3D):
2622 (WebCore::LayerChromium::replicaLayer):
2624 2011-09-14 Ryosuke Niwa <rniwa@webkit.org>
2626 Deleting line break before h1 converts h1 to span
2627 https://bugs.webkit.org/show_bug.cgi?id=45784
2629 Reviewed by Kenneth Rohde Christiansen.
2631 Fixed the bug by treating h1 and other elements that retain structure like Mail blockquote.
2633 We already had a logic to overriding styles of merged paragraphs by Mail blockquote so
2634 just extend this logic for h1-h6, pre, etc...
2636 Tests: editing/deleting/merge-paragraph-from-address.html
2637 editing/deleting/merge-paragraph-from-h6-with-style.html
2638 editing/deleting/merge-paragraph-from-h6.html
2639 editing/deleting/merge-paragraph-from-listing.html
2640 editing/deleting/merge-paragraph-into-h1-with-style.html
2641 editing/deleting/merge-paragraph-into-h1.html
2642 editing/deleting/merge-paragraph-into-pre.html
2644 * editing/ReplaceSelectionCommand.cpp:
2645 (WebCore::ReplaceSelectionCommand::removeRedundantStylesAndKeepStyleSpanInline):
2646 * editing/markup.cpp:
2647 (WebCore::isBlockNodeToRetainAppearance): Extracted from ancestorToRetainStructureAndAppearance.
2648 (WebCore::StyledMarkupAccumulator::serializeNodes):
2649 (WebCore::ancestorToRetainStructureAndAppearance):
2652 2011-09-16 Max Perepelitsyn <pph34r@gmail.com>
2654 Set but not used variables cleanup (gcc 4.6)
2655 https://bugs.webkit.org/show_bug.cgi?id=68157
2657 Reviewed by Darin Adler.
2659 * platform/audio/ReverbConvolverStage.cpp:
2660 (WebCore::ReverbConvolverStage::process):
2661 * rendering/RenderMediaControlsChromium.cpp:
2662 (WebCore::paintMediaButton):
2664 2011-09-16 Geoffrey Garen <ggaren@apple.com>
2666 Removed undetectable style.filter.
2668 Reviewed by Sam Weinig.
2670 This feature was added in http://trac.webkit.org/changeset/15557 to
2671 support housingmaps.com. But housingmaps.com no longer needs this hack,
2672 we don't know of other websites that need it, and we don't know of
2673 any other browsers that have implemented this feature.
2675 * ForwardingHeaders/runtime/StringObjectThatMasqueradesAsUndefined.h: Removed.
2677 * bindings/js/JSCSSStyleDeclarationCustom.cpp:
2678 (WebCore::JSCSSStyleDeclaration::nameGetter):
2680 2011-09-16 Adam Barth <abarth@webkit.org>
2682 Update JSC results to account for intrinsics change.
2684 * bindings/scripts/test/JS/JSTestInterface.cpp:
2685 * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
2686 * bindings/scripts/test/JS/JSTestObj.cpp:
2687 * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
2689 2011-09-16 Sheriff Bot <webkit.review.bot@gmail.com>
2691 Unreviewed, rolling out r95312.
2692 http://trac.webkit.org/changeset/95312
2693 https://bugs.webkit.org/show_bug.cgi?id=68277
2695 It's innocent, innocent I tell you! (Requested by jamesr_ on
2698 * platform/graphics/chromium/ContentLayerChromium.cpp:
2699 (WebCore::ContentLayerChromium::createTextureUpdater):
2700 * platform/graphics/chromium/LayerRendererChromium.cpp:
2701 (WebCore::LayerRendererChromium::LayerRendererChromium):
2702 * platform/graphics/chromium/cc/CCLayerTreeHost.h:
2703 * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
2704 * platform/graphics/chromium/cc/CCThreadProxy.cpp:
2705 (WebCore::CCThreadProxy::context):
2706 (WebCore::CCThreadProxy::beginFrameAndCommitOnCCThread):
2707 (WebCore::CCThreadProxy::setNeedsCommitAndRedrawOnCCThread):
2708 (WebCore::CCThreadProxy::setNeedsRedrawOnCCThread):
2710 2011-09-16 Sheriff Bot <webkit.review.bot@gmail.com>
2712 Unreviewed, rolling out r95309.
2713 http://trac.webkit.org/changeset/95309
2714 https://bugs.webkit.org/show_bug.cgi?id=68271
2716 Broke many chromium gpu tests. (Requested by dave_levin on
2719 * platform/graphics/chromium/ContentLayerChromium.cpp:
2720 (WebCore::ContentLayerChromium::createTextureUpdater):
2721 * platform/graphics/chromium/LayerRendererChromium.cpp:
2722 (WebCore::LayerRendererChromium::LayerRendererChromium):
2723 * platform/graphics/chromium/cc/CCLayerTreeHost.h:
2724 * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
2725 * platform/graphics/chromium/cc/CCThreadProxy.cpp:
2726 (WebCore::CCThreadProxy::context):
2727 (WebCore::CCThreadProxy::beginFrameAndCommitOnCCThread):
2728 (WebCore::CCThreadProxy::setNeedsCommitAndRedrawOnCCThread):
2729 (WebCore::CCThreadProxy::setNeedsRedrawOnCCThread):
2731 2011-09-16 Filip Pizlo <fpizlo@apple.com>
2733 DFG JIT should inline Math.abs
2734 https://bugs.webkit.org/show_bug.cgi?id=68227
2736 Reviewed by Oliver Hunt.
2738 Added JavaScriptCore/dfg to include path path. Changed the bindings
2739 scripts to handle the presence of intrinsics.
2742 * bindings/scripts/CodeGeneratorJS.pm:
2743 (GenerateHashTable):
2745 2011-09-16 Iain Merrick <husky@google.com>
2747 [chromium] Fix CCLayerTreeHostTest
2748 https://bugs.webkit.org/show_bug.cgi?id=67418
2750 This is a minimal set of changes to get CCLayerTreeHostTest
2751 compiling, running and passing with USE_THREADED_COMPOSITING
2754 Reviewed by James Robinson.
2756 * platform/graphics/chromium/ContentLayerChromium.cpp:
2757 (WebCore::ContentLayerChromium::createTextureUpdater):
2758 * platform/graphics/chromium/LayerRendererChromium.cpp:
2759 (WebCore::LayerRendererChromium::LayerRendererChromium):
2760 * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
2761 (WebCore::CCLayerTreeHost::createLayerTreeHostImpl):
2762 * platform/graphics/chromium/cc/CCLayerTreeHost.h:
2763 * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
2764 * platform/graphics/chromium/cc/CCThreadProxy.cpp:
2765 (WebCore::CCThreadProxy::context):
2766 (WebCore::CCThreadProxy::beginFrameAndCommitOnCCThread):
2767 (WebCore::CCThreadProxy::setNeedsCommitAndRedrawOnCCThread):
2768 (WebCore::CCThreadProxy::setNeedsRedrawOnCCThread):
2770 2011-09-16 Sheriff Bot <webkit.review.bot@gmail.com>
2772 Unreviewed, rolling out r95227.
2773 http://trac.webkit.org/changeset/95227
2774 https://bugs.webkit.org/show_bug.cgi?id=68262
2776 Broke a bunch of SVG tests (Requested by andersca on #webkit).
2778 * platform/ScrollView.cpp:
2779 (WebCore::ScrollView::contentsSize):
2780 (WebCore::ScrollView::wheelEvent):
2781 * platform/ScrollView.h:
2782 * platform/mac/ScrollViewMac.mm:
2783 (WebCore::ScrollView::platformContentsSize):
2784 * platform/wx/ScrollViewWx.cpp:
2785 (WebCore::ScrollView::platformContentsSize):
2787 2011-09-16 James Simonsen <simonjam@chromium.org>
2789 Fix HTML5 parser's adoption agency algorithm to reparent correctly
2790 https://bugs.webkit.org/show_bug.cgi?id=68147
2792 Reviewed by Eric Seidel.
2794 * html/parser/HTMLTreeBuilder.cpp:
2795 (WebCore::HTMLTreeBuilder::callTheAdoptionAgency):
2797 2011-09-16 Adam Barth <abarth@webkit.org>
2799 CodeGeneratorGObject should use C++ style comments for ENABLE guards
2800 https://bugs.webkit.org/show_bug.cgi?id=68256
2802 Reviewed by Darin Adler.
2804 This patch should have not behavioral effect. It just cleans up the
2805 GObject code generator to use C++-style comments for ENABLE guards and
2806 to use the usual comment style for license blocks.
2808 * bindings/scripts/CodeGeneratorGObject.pm:
2809 * bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp:
2810 * bindings/scripts/test/GObject/WebKitDOMTestCallback.h:
2811 * bindings/scripts/test/GObject/WebKitDOMTestCallbackPrivate.h:
2812 * bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp:
2813 * bindings/scripts/test/GObject/WebKitDOMTestInterface.h:
2814 * bindings/scripts/test/GObject/WebKitDOMTestInterfacePrivate.h:
2815 * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.cpp:
2816 * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.h:
2817 * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListenerPrivate.h:
2818 * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
2819 (webkit_dom_test_obj_conditional_method1):
2820 (webkit_dom_test_obj_conditional_method2):
2821 (webkit_dom_test_obj_conditional_method3):
2822 (webkit_dom_test_obj_get_conditional_attr1):
2823 (webkit_dom_test_obj_set_conditional_attr1):
2824 (webkit_dom_test_obj_get_conditional_attr2):
2825 (webkit_dom_test_obj_set_conditional_attr2):
2826 (webkit_dom_test_obj_get_conditional_attr3):
2827 (webkit_dom_test_obj_set_conditional_attr3):
2828 (webkit_dom_test_obj_set_property):
2829 (webkit_dom_test_obj_get_property):
2830 (webkit_dom_test_obj_class_init):
2831 * bindings/scripts/test/GObject/WebKitDOMTestObj.h:
2832 * bindings/scripts/test/GObject/WebKitDOMTestObjPrivate.h:
2833 * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.cpp:
2834 * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.h:
2835 * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterfacePrivate.h:
2837 2011-09-16 Csaba Osztrogonác <ossy@webkit.org>
2839 [Qt] REGRESSION(r95091) It made many tests flakey
2840 https://bugs.webkit.org/show_bug.cgi?id=68232
2842 Unreviewed rolling out r95091 and followup patches.
2844 * English.lproj/localizedStrings.js:
2845 * bindings/v8/V8Proxy.cpp:
2846 (WebCore::V8Proxy::callFunction):
2847 * bindings/v8/V8Proxy.h:
2848 * bindings/v8/custom/V8CustomVoidCallback.cpp:
2849 (WebCore::invokeCallback):
2850 * dom/ScriptedAnimationController.cpp:
2851 (WebCore::ScriptedAnimationController::registerCallback):
2852 (WebCore::ScriptedAnimationController::cancelCallback):
2853 (WebCore::ScriptedAnimationController::serviceScriptedAnimations):
2854 * inspector/InspectorInstrumentation.cpp:
2855 * inspector/InspectorInstrumentation.h:
2856 (WebCore::InspectorInstrumentation::willCallFunction):
2857 * inspector/InspectorTimelineAgent.cpp:
2858 * inspector/InspectorTimelineAgent.h:
2859 * inspector/TimelineRecordFactory.cpp:
2860 * inspector/TimelineRecordFactory.h:
2861 * inspector/front-end/TimelineAgent.js:
2862 * inspector/front-end/TimelinePanel.js:
2863 (WebInspector.TimelinePanel):
2864 (WebInspector.TimelinePanel.prototype.get _recordStyles):
2865 (WebInspector.TimelinePanel.prototype._innerAddRecordToTimeline):
2866 (WebInspector.TimelinePanel.prototype._clearPanel):
2867 (WebInspector.TimelinePanel.FormattedRecord):
2868 (WebInspector.TimelinePanel.FormattedRecord.prototype._generatePopupContent):
2869 (WebInspector.TimelinePanel.FormattedRecord.prototype._getRecordDetails):
2871 2011-09-16 Abhishek Arya <inferno@chromium.org>
2873 cachedFont not getting updated for inline SVG text.
2874 https://bugs.webkit.org/show_bug.cgi?id=68060
2876 Reviewed by Nikolas Zimmermann.
2878 The cached scaledFont needs to be updated on every style set call. It
2879 is not similar to m_style which can get derived from parent's style and
2880 hence will get automatically updated on ancestor's style change. This is
2881 required, otherwise we will maintain stale font list in cached scaledFont
2882 when custom fonts are retired on Document::recalcStyle.
2884 Test: svg/text/text-style-recalc-crash.html
2886 * rendering/svg/RenderSVGInlineText.cpp:
2887 (WebCore::RenderSVGInlineText::styleDidChange):
2888 (WebCore::RenderSVGInlineText::setStyle):
2889 * rendering/svg/RenderSVGInlineText.h:
2891 2011-09-16 Antti Koivisto <antti@apple.com>
2893 REGRESSION (r95052): SelectorChecker identifier filter not working
2894 https://bugs.webkit.org/show_bug.cgi?id=68244
2896 Reviewed by Dan Bernstein.
2900 * css/SelectorChecker.cpp:
2901 (WebCore::collectDescendantSelectorIdentifierHashes):
2903 2011-09-16 Csaba Osztrogonác <ossy@webkit.org>
2905 Unreviewed typo fix after r95271.
2907 * bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp:
2909 2011-09-16 Andrey Kosyakov <caseq@chromium.org>
2911 Web Inspector: [Extensions API] support extensions for remote inspector front-end
2912 https://bugs.webkit.org/show_bug.cgi?id=67840
2914 Reviewed by Pavel Feldman.
2916 - Merge ExtensionCommon.js into ExtensionAPI.js
2917 - refactor building of extension API for better reuse
2918 - expose interface for extension registration
2921 * WebCore.vcproj/WebCore.vcproj:
2922 * inspector/front-end/ExtensionAPI.js:
2923 (defineCommonExtensionSymbols):
2924 (buildExtensionAPIInjectedScript):
2925 * inspector/front-end/ExtensionCommon.js:
2926 * inspector/front-end/ExtensionServer.js:
2927 (WebInspector.ExtensionServer.prototype._addExtensions):
2928 (WebInspector.ExtensionServer.prototype._addExtension):
2929 (WebInspector.ExtensionServer.prototype._buildExtensionAPIScript):
2930 (WebInspector.ExtensionServer.prototype._onWindowMessage):
2931 (WebInspector.ExtensionServer.prototype._registerExtension):
2932 (WebInspector.ExtensionServer.prototype._expandResourcePath):
2933 * inspector/front-end/WebKit.qrc:
2934 * inspector/front-end/inspector.html:
2936 2011-09-16 Ilya Tikhonovsky <loislo@chromium.org>
2938 Web Inspector: change WebInspector.currentPanel getter/setter to functions.
2939 https://bugs.webkit.org/show_bug.cgi?id=68242
2941 This is necessary for the panel switching performance tests.
2943 Reviewed by Pavel Feldman.
2945 * inspector/front-end/Drawer.js:
2946 (WebInspector.Drawer.prototype.show.animationFinished):
2947 (WebInspector.Drawer.prototype.show):
2948 (WebInspector.Drawer.prototype.hide):
2949 (WebInspector.Drawer.prototype._animateDrawerHeight.animationFinished):
2950 (WebInspector.Drawer.prototype._animateDrawerHeight):
2951 (WebInspector.Drawer.prototype._statusBarDragging):
2952 * inspector/front-end/ElementsPanel.js:
2953 (WebInspector.ElementsPanel.prototype.switchToAndFocus):
2954 * inspector/front-end/ResourcesPanel.js:
2955 (WebInspector.ResourcesPanel.prototype.showAnchorLocation):
2956 * inspector/front-end/ScriptsPanel.js:
2957 * inspector/front-end/SearchController.js:
2958 (WebInspector.SearchController.prototype.updateSearchMatchesCount):
2959 (WebInspector.SearchController.prototype.updateCurrentMatchIndex):
2960 (WebInspector.SearchController.prototype.updateSearchLabel):
2961 (WebInspector.SearchController.prototype.handleShortcut):
2962 (WebInspector.SearchController.prototype._performSearch):
2963 * inspector/front-end/Toolbar.js:
2964 (WebInspector.Toolbar.createPanelToolbarItem.onToolbarItemClicked):
2965 (WebInspector.Toolbar.createPanelToolbarItem):
2966 * inspector/front-end/inspector.js:
2967 (WebInspector.currentPanel):
2968 (WebInspector._updateFocusedNode):
2969 (WebInspector.windowResize):
2970 (WebInspector.documentKeyDown):
2971 (WebInspector.documentCanCopy):
2972 (WebInspector.documentCopy):
2973 (WebInspector.showPanel):
2974 (WebInspector.startUserInitiatedDebugging):
2975 (WebInspector.inspect):
2976 (WebInspector._showAnchorLocationInPanel):
2977 (WebInspector._toolbarItemClicked):
2978 (WebInspector.PanelHistory.prototype.goBack):
2979 (WebInspector.PanelHistory.prototype.goForward):
2981 2011-09-15 Pavel Feldman <pfeldman@google.com>
2983 Web Inspector: rename Console.clearConsoleMessages to Console.clearMessages, brush up console domain doc.
2984 https://bugs.webkit.org/show_bug.cgi?id=68165
2986 Reviewed by Yury Semikhatsky.
2988 * inspector/InjectedScriptHost.cpp:
2989 (WebCore::InjectedScriptHost::clearConsoleMessages):
2990 * inspector/Inspector.json:
2991 * inspector/InspectorConsoleAgent.cpp:
2992 (WebCore::InspectorConsoleAgent::clearMessages):
2993 * inspector/InspectorConsoleAgent.h:
2994 * inspector/front-end/ConsoleModel.js:
2995 (WebInspector.ConsoleModel.prototype.requestClearMessages):
2997 2011-09-16 Alejandro G. Castro <alex@igalia.com>
2999 Fix GTK build after r95245.
3001 * GNUmakefile.list.am:
3003 2011-09-16 Leo Yang <leo.yang@torchmobile.com.cn>
3005 [Qt] Crash when dragging google maps.
3006 https://bugs.webkit.org/show_bug.cgi?id=68223
3008 The custom image for a cursor might not be ready when WebKit trying
3009 to use it to construct the cursor in Qt porting. This patch is using
3010 arrow image to substitute the unready custom image.
3012 Reviewed by Adam Barth.
3014 Test: fast/css/crash-on-custom-cursor-when-loading.html
3016 * platform/qt/CursorQt.cpp:
3017 (WebCore::createCustomCursor):
3018 (WebCore::Cursor::ensurePlatformCursor):
3020 2011-09-15 Adam Barth <abarth@webkit.org>
3022 Rename ENABLE(DATABASE) to ENABLE(SQL_DATABASE)
3023 https://bugs.webkit.org/show_bug.cgi?id=68205
3025 Reviewed by Eric Seidel.
3027 As discussed on webkit-dev.
3030 * Configurations/FeatureDefines.xcconfig:
3032 * GNUmakefile.list.am:
3034 * bindings/generic/RuntimeEnabledFeatures.cpp:
3035 * bindings/generic/RuntimeEnabledFeatures.h:
3036 * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
3037 * bindings/js/JSDOMBinding.cpp:
3038 (WebCore::setDOMException):
3039 * bindings/js/JSExceptionBase.cpp:
3040 (WebCore::toExceptionBase):
3041 * bindings/js/JSInjectedScriptHostCustom.cpp:
3042 (WebCore::JSInjectedScriptHost::databaseId):
3043 * bindings/js/JSSQLResultSetRowListCustom.cpp:
3044 * bindings/js/JSSQLTransactionCustom.cpp:
3045 * bindings/js/JSSQLTransactionSyncCustom.cpp:
3046 * bindings/scripts/test/CPP/WebDOMTestCallback.cpp:
3047 * bindings/scripts/test/CPP/WebDOMTestCallback.h:
3048 * bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp:
3049 * bindings/scripts/test/JS/JSTestCallback.cpp:
3050 * bindings/scripts/test/JS/JSTestCallback.h:
3051 * bindings/scripts/test/ObjC/DOMTestCallback.mm:
3052 * bindings/scripts/test/TestCallback.idl:
3053 * bindings/scripts/test/V8/V8TestCallback.cpp:
3054 * bindings/scripts/test/V8/V8TestCallback.h:
3055 * bindings/v8/V8Proxy.cpp:
3056 (WebCore::V8Proxy::setDOMException):
3057 * bindings/v8/V8Proxy.h:
3058 * bindings/v8/custom/V8CustomSQLStatementErrorCallback.cpp:
3059 * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
3060 (WebCore::V8InjectedScriptHost::databaseIdCallback):
3061 * bindings/v8/custom/V8SQLResultSetRowListCustom.cpp:
3062 * bindings/v8/custom/V8SQLTransactionCustom.cpp:
3063 * bindings/v8/custom/V8SQLTransactionSyncCustom.cpp:
3066 * dom/ExceptionCode.cpp:
3067 (WebCore::getExceptionCodeDescription):
3068 * dom/ExceptionCode.h:
3069 * dom/ScriptExecutionContext.cpp:
3070 (WebCore::ScriptExecutionContext::ScriptExecutionContext):
3071 (WebCore::ScriptExecutionContext::~ScriptExecutionContext):
3072 * dom/ScriptExecutionContext.h:
3074 * history/PageCache.cpp:
3075 (WebCore::logCanCacheFrameDecision):
3076 (WebCore::PageCache::canCachePageContainingThisFrame):
3077 * inspector/InjectedScriptHost.cpp:
3078 (WebCore::InjectedScriptHost::InjectedScriptHost):
3079 (WebCore::InjectedScriptHost::disconnect):
3080 * inspector/InjectedScriptHost.h:
3081 (WebCore::InjectedScriptHost::init):
3082 * inspector/InspectorController.cpp:
3083 (WebCore::InspectorController::InspectorController):
3084 (WebCore::InspectorController::connectFrontend):
3085 (WebCore::InspectorController::disconnectFrontend):
3086 (WebCore::InspectorController::restoreInspectorStateFromCookie):
3087 * inspector/InspectorController.h:
3088 * inspector/InspectorDatabaseAgent.cpp:
3089 * inspector/InspectorDatabaseInstrumentation.h:
3090 * inspector/InspectorDatabaseResource.cpp:
3091 * inspector/InspectorDatabaseResource.h:
3092 * inspector/InspectorInstrumentation.cpp:
3093 (WebCore::InspectorInstrumentation::didCommitLoadImpl):
3094 * inspector/InspectorInstrumentation.h:
3095 * inspector/InstrumentingAgents.h:
3096 (WebCore::InstrumentingAgents::InstrumentingAgents):
3097 * inspector/WorkerInspectorController.cpp:
3098 (WebCore::WorkerInspectorController::WorkerInspectorController):
3099 (WebCore::WorkerInspectorController::connectFrontend):
3100 * loader/EmptyClients.h:
3101 * loader/FrameLoader.cpp:
3102 (WebCore::FrameLoader::stopLoading):
3103 * page/ChromeClient.h:
3104 * page/DOMWindow.cpp:
3106 * page/DOMWindow.idl:
3107 * platform/sql/SQLiteAuthorizer.cpp:
3108 * platform/sql/SQLiteDatabase.cpp:
3109 * platform/sql/SQLiteFileSystem.cpp:
3110 * platform/sql/SQLiteStatement.cpp:
3111 * platform/sql/SQLiteTransaction.cpp:
3112 * storage/AbstractDatabase.cpp:
3113 * storage/AbstractDatabase.h:
3114 * storage/ChangeVersionWrapper.cpp:
3115 * storage/ChangeVersionWrapper.h:
3116 * storage/Database.cpp:
3117 * storage/Database.h:
3118 * storage/Database.idl:
3119 * storage/DatabaseAuthorizer.cpp:
3120 * storage/DatabaseCallback.h:
3121 * storage/DatabaseCallback.idl:
3122 * storage/DatabaseDetails.h:
3123 * storage/DatabaseSync.cpp:
3124 * storage/DatabaseSync.h:
3125 * storage/DatabaseSync.idl:
3126 * storage/DatabaseTask.cpp:
3127 * storage/DatabaseTask.h:
3128 * storage/DatabaseThread.cpp:
3129 * storage/DatabaseThread.h:
3130 * storage/DatabaseTracker.cpp:
3131 * storage/DatabaseTracker.h:
3132 * storage/DatabaseTrackerClient.h:
3133 * storage/OriginQuotaManager.cpp:
3134 * storage/OriginQuotaManager.h:
3135 * storage/OriginUsageRecord.cpp:
3136 * storage/OriginUsageRecord.h:
3137 * storage/SQLCallbackWrapper.h:
3138 * storage/SQLError.h:
3139 * storage/SQLError.idl:
3140 * storage/SQLException.h:
3141 * storage/SQLException.idl:
3142 * storage/SQLResultSet.cpp:
3143 * storage/SQLResultSet.h:
3144 * storage/SQLResultSet.idl:
3145 * storage/SQLResultSetRowList.cpp:
3146 * storage/SQLResultSetRowList.h:
3147 * storage/SQLResultSetRowList.idl:
3148 * storage/SQLStatement.cpp:
3149 * storage/SQLStatement.h:
3150 * storage/SQLStatementCallback.h:
3151 * storage/SQLStatementCallback.idl:
3152 * storage/SQLStatementErrorCallback.h:
3153 * storage/SQLStatementErrorCallback.idl:
3154 * storage/SQLStatementSync.cpp:
3155 * storage/SQLStatementSync.h:
3156 * storage/SQLTransaction.cpp:
3157 * storage/SQLTransaction.h:
3158 * storage/SQLTransaction.idl:
3159 * storage/SQLTransactionCallback.h:
3160 * storage/SQLTransactionCallback.idl:
3161 * storage/SQLTransactionClient.cpp:
3162 * storage/SQLTransactionClient.h:
3163 * storage/SQLTransactionCoordinator.cpp:
3164 * storage/SQLTransactionCoordinator.h:
3165 * storage/SQLTransactionErrorCallback.h:
3166 * storage/SQLTransactionErrorCallback.idl:
3167 * storage/SQLTransactionSync.cpp:
3168 * storage/SQLTransactionSync.h:
3169 * storage/SQLTransactionSync.idl:
3170 * storage/SQLTransactionSyncCallback.h:
3171 * storage/SQLTransactionSyncCallback.idl:
3172 * storage/chromium/DatabaseObserver.h:
3173 * storage/chromium/DatabaseTrackerChromium.cpp:
3174 * storage/chromium/QuotaTracker.cpp:
3175 * storage/chromium/QuotaTracker.h:
3176 * storage/chromium/SQLTransactionClientChromium.cpp:
3177 * workers/WorkerContext.cpp:
3178 * workers/WorkerContext.h:
3179 * workers/WorkerContext.idl:
3180 * workers/WorkerThread.cpp:
3181 (WebCore::WorkerThreadShutdownStartTask::performTask):
3182 (WebCore::WorkerThread::stop):
3184 2011-09-15 Alexandru Chiculita <achicu@adobe.com>
3186 [CSSRegions] Regions should not slice line box rendering
3187 https://bugs.webkit.org/show_bug.cgi?id=66198
3189 Created a new LayoutState constructor for the RenderFlowThread. It will
3190 set m_isPaginated to true and force a pageHeight if 1. The actual pageHeight is
3191 not used, because pageLogicalHeightForOffset will actually redirect the call
3192 to RenderFlowThread.
3194 Removed some of the duplicate code that calculated the page logical offset.
3195 Added new methods like logicalPageOffset, pageLogicalHeightForOffset,
3196 pageRemainingLogicalHeightForOffset.
3198 There are still some issues related to incremental layout and different region widths.
3199 Those issues will be addressed in different patches.
3201 Reviewed by David Hyatt.
3203 Tests: fast/regions/text-region-breaks.html
3204 fast/regions/text-region-split-horizontal-bt.html
3205 fast/regions/text-region-split-vertical-rl.html
3206 fast/regions/text-region-split-vertical.html
3207 fast/regions/text-region-split.html
3209 * rendering/LayoutState.cpp:
3210 (WebCore::LayoutState::LayoutState):
3211 * rendering/LayoutState.h:
3212 (WebCore::LayoutState::LayoutState):
3213 (WebCore::LayoutState::isPaginated):
3214 * rendering/RenderBlock.cpp:
3215 (WebCore::RenderBlock::positionNewFloats):
3216 (WebCore::RenderBlock::adjustForRegionFittingIfNeeded):
3217 (WebCore::RenderBlock::nextPageLogicalTopExcludingBoundaryPoint):
3218 (WebCore::RenderBlock::nextPageLogicalTopIncludingBoundaryPoint):
3219 (WebCore::inNormalFlow):
3220 (WebCore::RenderBlock::applyBeforeBreak):
3221 (WebCore::RenderBlock::applyAfterBreak):
3222 (WebCore::RenderBlock::logicalPageOffset):
3223 (WebCore::RenderBlock::pageLogicalHeightForOffset):
3224 (WebCore::RenderBlock::pageRemainingLogicalHeightForOffset):
3225 (WebCore::RenderBlock::adjustForUnsplittableChild):
3226 (WebCore::RenderBlock::adjustLinePositionForPagination):
3227 * rendering/RenderBlock.h:
3228 * rendering/RenderFlowThread.cpp:
3229 (WebCore::RenderFlowThread::layout):
3230 (WebCore::RenderFlowThread::regionLogicalHeightForLine):
3231 (WebCore::RenderFlowThread::regionRemainingLogicalHeightForLine):
3232 * rendering/RenderFlowThread.h:
3233 * rendering/RenderView.cpp:
3234 (WebCore::RenderView::pushLayoutState):
3235 * rendering/RenderView.h:
3236 (WebCore::LayoutStateMaintainer::LayoutStateMaintainer):
3237 (WebCore::LayoutStateMaintainer::push):
3239 2011-09-15 Kentaro Hara <haraken@google.com>
3241 Implement a PopStateEvent constructor for JSC
3242 https://bugs.webkit.org/show_bug.cgi?id=67977
3244 Reviewed by Sam Weinig.
3246 Test: fast/events/constructors/pop-state-event-constructor.html
3248 * bindings/generic/EventConstructors.h: Added a definition for the PopStateEvent constructor.
3249 * bindings/js/JSEventConstructors.cpp: Added #includes for PopStateEvent.
3250 * dom/PopStateEvent.cpp:
3251 (WebCore::PopStateEventInit::PopStateEventInit):
3252 (WebCore::PopStateEvent::PopStateEvent):
3253 (WebCore::PopStateEvent::create):
3254 * dom/PopStateEvent.h: Added a definition for PopStateEventInit.
3255 * dom/PopStateEvent.idl: Makes PopStateEvent constructible.
3257 2011-09-15 Mihai Parparita <mihaip@chromium.org>
3259 Fragment navigations should interrupt a provisional load of a different document
3260 https://bugs.webkit.org/show_bug.cgi?id=64556
3262 Reviewed by Adam Barth.
3264 Tests: http/tests/history/back-with-fragment-change.php
3265 http/tests/navigation/navigation-interrupted-by-fragment.html
3267 * loader/FrameLoader.cpp: Stop provisional load if a fragment commits.
3268 * loader/HistoryController.cpp: Don't commit the wrong provisional item.
3270 2011-09-15 Adrienne Walker <enne@google.com>
3272 [chromium] Add temporary diagnostics for LayerTreeHost::commitTo crash
3273 https://bugs.webkit.org/show_bug.cgi?id=68204
3275 Reviewed by James Robinson.
3277 Add CRASH calls to determine which assumptions are being violated.
3279 * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
3280 (WebCore::CCLayerTreeHost::commitTo):
3282 2011-09-15 Mark Hahnenberg <mhahnenberg@apple.com>
3284 Unzip initialization lists and constructors in JSCell hierarchy (7/7)
3285 https://bugs.webkit.org/show_bug.cgi?id=68122
3287 Reviewed by Geoffrey Garen.
3291 Completed the seventh and final level of the refactoring to add finishCreation()
3292 methods to all classes within the JSCell hierarchy with non-trivial
3295 This consists of moving the finishCreation() method call into the create methods
3296 of the sixth level of the hierarchy as was done in previous patches.
3298 The special cases for JSAudioConstructor, JSOptionConstructor, and JSImageConstructor
3299 were also lumped in and given finishCreation() methods that are called in their
3300 create methods because we are at the end and want to avoid a trivial patch just
3301 for moving their finishCreation() methods from their constructor to their create method.
3303 * bindings/js/JSAudioConstructor.cpp:
3304 (WebCore::JSAudioConstructor::JSAudioConstructor):
3305 (WebCore::JSAudioConstructor::finishCreation):
3306 * bindings/js/JSAudioConstructor.h:
3307 (WebCore::JSAudioConstructor::create):
3308 * bindings/js/JSDOMBinding.h:
3309 (WebCore::DOMConstructorWithDocument::DOMConstructorWithDocument):
3310 * bindings/js/JSDOMWindowBase.cpp:
3311 (WebCore::JSDOMWindowBase::JSDOMWindowBase):
3312 * bindings/js/JSImageConstructor.cpp:
3313 (WebCore::JSImageConstructor::JSImageConstructor):
3314 (WebCore::JSImageConstructor::finishCreation):
3315 * bindings/js/JSImageConstructor.h:
3316 (WebCore::JSImageConstructor::create):
3317 * bindings/js/JSOptionConstructor.cpp:
3318 (WebCore::JSOptionConstructor::JSOptionConstructor):
3319 (WebCore::JSOptionConstructor::finishCreation):
3320 * bindings/js/JSOptionConstructor.h:
3321 (WebCore::JSOptionConstructor::create):
3322 * bindings/js/JSWorkerContextBase.cpp:
3323 (WebCore::JSWorkerContextBase::JSWorkerContextBase):
3325 The bindings generation script was also changed to move the finishCreation() call into the
3326 create methods for descendants of JSWorkerContextBase and JSDOMWindowBase because those base
3327 classes had it removed from their constructors.
3329 * bindings/scripts/CodeGeneratorJS.pm:
3331 * bridge/c/c_instance.cpp:
3332 (JSC::Bindings::CRuntimeMethod::create):
3333 (JSC::Bindings::CRuntimeMethod::CRuntimeMethod):
3334 * bridge/jni/jsc/JavaInstanceJSC.cpp:
3335 (JavaRuntimeMethod::create):
3336 (JavaRuntimeMethod::JavaRuntimeMethod):
3337 * bridge/objc/objc_instance.mm:
3338 (ObjCRuntimeMethod::create):
3339 (ObjCRuntimeMethod::ObjCRuntimeMethod):
3340 * bridge/qt/qt_runtime.cpp:
3341 (JSC::Bindings::QtRuntimeMetaMethod::QtRuntimeMetaMethod):
3342 (JSC::Bindings::QtRuntimeConnectionMethod::QtRuntimeConnectionMethod):
3343 * bridge/qt/qt_runtime.h:
3344 (JSC::Bindings::QtRuntimeMetaMethod::create):
3345 (JSC::Bindings::QtRuntimeConnectionMethod::create):
3347 2011-09-15 Kentaro Hara <haraken@google.com>
3349 A single line must not be split into two pages.
3350 https://bugs.webkit.org/show_bug.cgi?id=65005
3352 Reviewed by David Hyatt.
3354 When the document width of a page is overflowed, the last line of the page can be
3355 split into the next page. This is the regression caused by r88737. r88737 tried to
3356 fix rounding errors in rendering calculations by expanding and shrinking a page
3357 using one common method, resizePageRectsKeepingRatio(), but overlooked the case where
3358 a document width gets overflowed.
3360 This patch fixes the problem by also using resizePageRectsKeepingRatio() for the case
3361 where the document width gets overflowed.
3363 Test: printing/single-line-must-not-be-split-into-two-pages.html
3365 * WebCore.exp.in: Updated the signature of forceLayoutForPagination().
3367 (WebCore::Frame::setPrinting): Added a new argument |originalPageSize|, which is an original page size before being expanded or shrunk.
3369 * page/FrameView.cpp:
3370 (WebCore::FrameView::forceLayoutForPagination): Uses resizePageRectsKeepingRatio() in the case where the document width gets overflowed.
3372 * page/PrintContext.cpp:
3373 (WebCore::PrintContext::begin): Passes an original page size to setPrinting().
3374 (WebCore::PrintContext::end): Ditto.
3376 2011-09-15 Sheriff Bot <webkit.review.bot@gmail.com>
3378 Unreviewed, rolling out r95243 and r95246.
3379 http://trac.webkit.org/changeset/95243
3380 http://trac.webkit.org/changeset/95246
3381 https://bugs.webkit.org/show_bug.cgi?id=68202
3383 Broke the Windows build (Requested by smfr on #webkit).
3385 * WebCore.vcproj/WebCore.vcproj:
3386 * platform/graphics/ca/win/LayerChangesFlusher.cpp:
3387 (WebCore::LayerChangesFlusher::hookCallback):
3388 * platform/graphics/ca/win/PlatformCAAnimationWin.cpp:
3389 (PlatformCAAnimation::copy):
3390 * platform/win/StructuredExceptionHandlerSupressor.h: Removed.
3392 2011-09-15 Simon Fraser <simon.fraser@apple.com>
3394 Attempt to fix Windows build after r95243.
3396 * WebCore.vcproj/WebCore.vcproj:
3398 2011-09-15 Simon Fraser <simon.fraser@apple.com>
3400 Make custom scrollbar theme for use in DRT, to reduce pixel differences between platforms
3401 https://bugs.webkit.org/show_bug.cgi?id=68134
3403 Reviewed by James Robinson.
3405 Add new scrollbar theme, called ScrollbarThemeMock, for use in layout
3406 tests. The mock scrollbar simply draws a light gray box in the track,
3407 with a dark gray box for the thumb.
3409 Add ScrollbarThemeMock files to the build on all platforms. It isn't hooked up yet.
3412 * CMakeListsEfl.txt:
3413 * CMakeListsWinCE.txt:
3414 * GNUmakefile.list.am:
3417 * WebCore.vcproj/WebCore.vcproj:
3418 * WebCore.xcodeproj/project.pbxproj:
3419 * platform/mac/ScrollbarThemeMac.mm:
3420 (WebCore::ScrollbarTheme::nativeTheme):
3421 * platform/mock/ScrollbarThemeMock.cpp: Added.
3422 (WebCore::ScrollbarThemeMock::trackRect):
3423 (WebCore::ScrollbarThemeMock::scrollbarThickness):
3424 (WebCore::ScrollbarThemeMock::paintTrackBackground):
3425 (WebCore::ScrollbarThemeMock::paintThumb):
3426 * platform/mock/ScrollbarThemeMock.h: Added.
3427 (WebCore::ScrollbarThemeMock::hasButtons):
3428 (WebCore::ScrollbarThemeMock::hasThumb):
3429 (WebCore::ScrollbarThemeMock::backButtonRect):
3430 (WebCore::ScrollbarThemeMock::forwardButtonRect):
3432 2011-09-15 Beth Dakin <bdakin@apple.com>
3434 https://bugs.webkit.org/show_bug.cgi?id=67884
3435 Delete button icon does not properly update when the device resolution changes
3438 <rdar://problem/10104632>
3440 Reviewed by Darin Adler.
3442 In DeleteButtonController::deviceScaleFactorChanged(), if the delete button is
3443 currently showing, hide it and re-show it, forcing it to re-create the deletion
3445 * editing/DeleteButtonController.cpp:
3446 (WebCore::DeleteButtonController::deviceScaleFactorChanged):
3447 * editing/DeleteButtonController.h:
3448 * editing/Editor.cpp:
3449 (WebCore::Editor::deviceScaleFactorChanged):
3452 Iterate through all of the frames and propagate the deviceScaleFactorChange()
3455 (WebCore::Page::setDeviceScaleFactor):
3457 2011-09-15 Chris Marrin <cmarrin@apple.com>
3459 Crash can occur when doing a PlatformCAAnimation::copy() with no valueFunction
3460 https://bugs.webkit.org/show_bug.cgi?id=67510
3462 Reviewed by Adam Roben.
3464 Another fix to take care of one last crash when running pause-crash.html.
3465 CACF can't deal with null valueFunctions, so avoid setting it when it doesn't
3468 This also adds logic to the Windows Hook in LayerChangesFlusher to prevent it
3469 from catching the null pointer exception generated by the pause-crash.html test
3470 before this bug was fixed. Windows was ignoring the exception, so the testcase
3471 would appear to succeed, even though it should have crashed.
3473 * WebCore.vcproj/WebCore.vcproj:
3474 * platform/graphics/ca/win/LayerChangesFlusher.cpp:
3475 (WebCore::LayerChangesFlusher::hookCallback):
3476 * platform/graphics/ca/win/PlatformCAAnimationWin.cpp:
3477 (PlatformCAAnimation::copy):
3478 * platform\win\StructuredExceptionHandlerSupressor.h: New file to encapsulate the exception handling supression.
3480 2011-09-15 David Hyatt <hyatt@apple.com>
3482 https://bugs.webkit.org/show_bug.cgi?id=27579
3484 Make sure that the border shorthand also resets border-image.
3486 Reviewed by Beth Dakin.
3488 Added fast/borders/border-image-reset-by-border-shorthand.html.
3490 * css/CSSParser.cpp:
3491 (WebCore::CSSParser::parseValue):
3493 2011-09-15 David Hyatt <hyatt@apple.com>
3495 https://bugs.webkit.org/show_bug.cgi?id=50072
3497 Make overflow clipping to border-radius work across layers. This patch makes painting
3498 work but does not attempt to fix hit testing. It also doesn't work when a composited
<