1 2011-09-26 Tim Horton <timothy_horton@apple.com>
3 <animateColor> applied to filtered ellipse does not update
4 https://bugs.webkit.org/show_bug.cgi?id=68457
5 <rdar://problem/10154777>
7 Reviewed by Darin Adler.
9 Invalidate the filter's cache when style changes take place so that style changes are respected.
11 Test: svg/filters/animate-fill.svg
13 * rendering/svg/SVGResourcesCache.cpp:
14 (WebCore::SVGResourcesCache::clientStyleChanged):
15 (WebCore::SVGResourcesCache::clientUpdatedFromElement):
17 2011-09-26 Max Perepelitsyn <pph34r@gmail.com>
19 Set but unused variables cleanup in v8 bindings (gcc 4.6)
20 https://bugs.webkit.org/show_bug.cgi?id=68079
22 Reviewed by Adam Barth.
24 Test: http/tests/websocket/tests/hybi/send-object-tostring-check.html
26 * bindings/scripts/CodeGeneratorV8.pm:
27 * bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:
28 (WebCore::ConfigureV8TestMediaQueryListListenerTemplate):
29 * bindings/scripts/test/V8/V8TestObj.cpp:
30 (WebCore::ConfigureV8TestObjTemplate):
31 * bindings/v8/WorkerScriptDebugServer.cpp:
32 (WebCore::WorkerScriptDebugServer::addListener):
33 * bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp:
34 (WebCore::V8HTMLOptionsCollection::lengthAccessorSetter):
35 * bindings/v8/custom/V8WebSocketCustom.cpp:
36 (WebCore::V8WebSocket::sendCallback):
38 2011-09-26 Tony Chang <tony@chromium.org>
40 switch the initial value of flex-order to 0
41 https://bugs.webkit.org/show_bug.cgi?id=68820
43 The spec changed from having an initial value of 1 to 0.
45 Reviewed by Ojan Vafai.
47 * rendering/style/RenderStyle.h:
48 (WebCore::InheritedFlags::initialFlexOrder):
50 2011-09-26 Chris Rogers <crogers@google.com>
52 OfflineAudioDestinationNode must wait for thread completion in uninitialize()
53 https://bugs.webkit.org/show_bug.cgi?id=68725
55 Reviewed by Kenneth Russell.
57 No new tests. This fixes internal implementation details.
59 * webaudio/OfflineAudioDestinationNode.cpp:
60 (WebCore::OfflineAudioDestinationNode::uninitialize):
62 2011-09-26 Xan Lopez <xlopez@igalia.com>
64 [GTK] Do not ignore 'Replaceable' attributes in the DOM bindings
65 https://bugs.webkit.org/show_bug.cgi?id=68837
67 Reviewed by Martin Robinson.
69 * bindings/scripts/CodeGeneratorGObject.pm: add getters (but not
70 setters) for 'Replaceable' attributes. Punt for the future
71 actually making them settable, since it seems non trivial.
73 2011-09-26 Ryosuke Niwa <rniwa@webkit.org>
77 * testing/Internals.cpp:
78 (WebCore::Internals::setZoomAnimatorTransform):
80 2011-09-26 Joshua Bell <jsbell@chromium.org>
82 IndexedDB: Null key path gets stored as empty string key path
83 https://bugs.webkit.org/show_bug.cgi?id=68726
85 Reviewed by Tony Chang.
87 Store additional flag to indicate if object store key path
88 is null vs. empty. Added additional runtime tests for integrity
89 of object store metadata.
91 * storage/IDBLevelDBBackingStore.cpp:
92 (WebCore::checkObjectStoreAndMetaDataType):
93 (WebCore::IDBLevelDBBackingStore::getObjectStores):
94 (WebCore::IDBLevelDBBackingStore::createObjectStore):
95 * storage/IDBLevelDBCoding.cpp:
97 2011-09-26 John Bauman <jbauman@chromium.org>
99 Fix nonpremultiplied webgl toDataURL to jpeg
100 https://bugs.webkit.org/show_bug.cgi?id=68366
102 The canvas spec says that toDataURL to formats without an alpha must
103 be "composited onto a solid black background using the source-over
106 Reviewed by Kenneth Russell.
108 * platform/graphics/cg/ImageBufferCG.cpp:
109 (WebCore::CGImageToDataURL):
110 (WebCore::ImageBuffer::toDataURL):
111 (WebCore::ImageDataToDataURL):
112 * platform/image-encoders/skia/JPEGImageEncoder.cpp:
113 (WebCore::RGBAtoRGB):
115 2011-09-26 Raphael Kubo da Costa <kubo@profusion.mobi>
117 [CMake] Remove FindFreetype.cmake
118 https://bugs.webkit.org/show_bug.cgi?id=68778
120 Reviewed by Adam Barth.
122 CMake has provided its own FindFreetype.cmake forever, so there is no
123 need to have another implementation in WebKit.
125 No new tests, just a buildsystem change.
127 * CMakeListsEfl.txt: Use FREETYPE_{LIBRARIES,INCLUDE_DIRS} instead of
128 Freetype_{LIBRARIES,INCLUDE_DIRS}.
130 2011-09-26 Alexei Svitkine <asvitkine@chromium.org>
132 Fix full-page rubber band overhang appearing when gesturing during a slow page load.
133 https://bugs.webkit.org/show_bug.cgi?id=68568
135 Chromium bug: http://code.google.com/p/chromium/issues/detail?id=97243
137 (This also happens on Safari.)
139 The problem was that ScrollView::overhangAmount() was returning a full-page overhang due to contentsSize() being 0 briefly during a page load, which was then getting used by ScrollAnimatorChromiumMac.mm to update the overhang on a gesture event. This change makes the relevant logic not return an overhang if the contentsSize() is empty.
141 Reviewed by Adam Barth.
143 No new tests, since this is highly timing-related.
145 * platform/ScrollView.cpp:
146 (WebCore::ScrollView::overhangAmount):
147 (WebCore::ScrollView::wheelEvent):
149 2011-09-26 W. James MacLean <wjmaclean@chromium.org>
151 [chromium] Revise zoom animator backend to use full transform instead of just scale.
152 https://bugs.webkit.org/show_bug.cgi?id=68535
154 Reviewed by Kenneth Russell.
157 (WebCore::Settings::Settings):
159 (WebCore::Settings::setZoomAnimatorScale):
160 (WebCore::Settings::zoomAnimatorScale):
161 (WebCore::Settings::setZoomAnimatorPosition):
162 (WebCore::Settings::zoomAnimatorPosX):
163 (WebCore::Settings::zoomAnimatorPosY):
164 * platform/graphics/chromium/LayerRendererChromium.cpp:
165 (WebCore::LayerRendererChromium::LayerRendererChromium):
166 (WebCore::LayerRendererChromium::drawLayersInternal):
167 * platform/graphics/chromium/LayerRendererChromium.h:
168 (WebCore::LayerRendererChromium::setZoomAnimatorTransform):
169 * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
170 (WebCore::CCLayerTreeHost::CCLayerTreeHost):
171 (WebCore::CCLayerTreeHost::commitTo):
172 (WebCore::CCLayerTreeHost::setZoomAnimatorTransform):
173 (WebCore::CCLayerTreeHost::updateLayers):
174 * platform/graphics/chromium/cc/CCLayerTreeHost.h:
175 * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
176 (WebCore::CCLayerTreeHostImpl::setZoomAnimatorTransform):
177 * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
178 * testing/Internals.cpp:
179 (WebCore::Internals::setZoomAnimatorTransform):
180 * testing/Internals.h:
181 * testing/Internals.idl:
183 2011-09-26 Dan Bernstein <mitz@apple.com>
185 REGRESSION (r95926) Assert firing in svg/clip-path/clip-path-on-svg.svg
186 https://bugs.webkit.org/show_bug.cgi?id=68819
188 Reviewed by Dave Hyatt.
190 * rendering/RenderObject.cpp:
191 (WebCore::RenderObject::scheduleRelayout): Revert to using view() instead of the RenderView**
192 parameter of isRooted, since only the former returns 0 when the document is detached.
194 2011-09-26 Vsevolod Vlasov <vsevik@chromium.org>
196 Web Inspector: XMLHttpRequest console logging messages should link to network panel when possible.
197 https://bugs.webkit.org/show_bug.cgi?id=67399
199 Reviewed by Pavel Feldman.
201 * inspector/ConsoleMessage.cpp:
202 (WebCore::ConsoleMessage::ConsoleMessage):
203 * inspector/ConsoleMessage.h:
204 * inspector/InspectorConsoleAgent.cpp:
205 (WebCore::InspectorConsoleAgent::resourceRetrievedByXMLHttpRequest):
206 * inspector/InspectorConsoleAgent.h:
207 * inspector/InspectorInstrumentation.cpp:
208 (WebCore::InspectorInstrumentation::resourceRetrievedByXMLHttpRequestImpl):
209 * inspector/front-end/ConsoleMessage.js:
210 (WebInspector.ConsoleMessage.prototype._formatMessage.else.else.linkifier):
211 (WebInspector.ConsoleMessage.prototype._formatMessage):
212 * inspector/front-end/ResourcesPanel.js:
213 (WebInspector.ResourcesPanel.prototype.showAnchorLocation):
214 * inspector/front-end/inspector.js:
215 (WebInspector.linkifyStringAsFragmentWithCustomLinkifier):
216 (WebInspector.linkifyStringAsFragment):
218 2011-09-26 Jer Noble <jer.noble@apple.com>
220 White flash when entering full-screen using element.webkitRequestFullScreen()
221 https://bugs.webkit.org/show_bug.cgi?id=68481
223 Reviewed by Simon Fraser.
225 No new tests; covered by existing full screen tests.
227 During an animation, renderers may try to paint into the FullScreenRenderer's
228 GraphicsLayer, and an optimization we previously added for the FullScreenRenderer's
229 background will cause these paints to fail. Remove this optimization in
230 containsPaintedContent, and taking non-composited elements into full screen will
233 * rendering/RenderLayerBacking.cpp:
234 (WebCore::RenderLayerBacking::containsPaintedContent):
236 2011-09-26 Mihai Parparita <mihaip@chromium.org>
238 Unreviewed, rolling out r95960.
239 http://trac.webkit.org/changeset/95960
240 https://bugs.webkit.org/show_bug.cgi?id=58608
242 Significantly changes table border rendering
244 * rendering/RenderObject.cpp:
245 (WebCore::RenderObject::drawLineForBoxSide):
247 2011-09-23 Simon Fraser <simon.fraser@apple.com>
249 Repaint tests don't work in WebKit2
250 https://bugs.webkit.org/show_bug.cgi?id=68453
252 Reviewed by Sam Weinig.
254 Have FrameView keep track of repaint rects when asked to, and
255 expose this set of repaint rects via private WebKit API for later
256 use by DumpRenderTree.
258 The repaint rects are in WebView coordinates, so we have to
259 unapply the scroll offset.
262 * page/FrameView.cpp:
263 (WebCore::FrameView::FrameView):
264 (WebCore::FrameView::reset):
265 (WebCore::FrameView::repaintContentRectangle):
266 (WebCore::FrameView::setTracksRepaints):
268 (WebCore::FrameView::isTrackingRepaints):
269 (WebCore::FrameView::resetTrackedRepaints):
270 (WebCore::FrameView::trackedRepaintRects):
272 2011-09-26 Antti Koivisto <antti@apple.com>
274 Optimize matching of common pseudo classes
275 https://bugs.webkit.org/show_bug.cgi?id=68633
277 Reviewed by Dave Hyatt, Darin Adler, Dimitri Glazkov.
279 :link, :visited and :focus are quite common. They often used as univeral selectors (including in our
280 default stylesheet) so we try to match them for all elements in the document. They take always the
281 slow matching path. In addition we match link styles twice due to visited link pseudo style generation
282 so the overhead is doubled. As a result substantial portion of our style matching time is spent
283 dealing with these pseudo classes.
285 This patch adds new lists to RuleSet for common pseudo class rules. The rules on the lists are only checked
286 if the element has approprate type and stat. ases where the rightmost pseudo class can then be rejected immediately.
287 We can also enable the fast path checking for the rest of the selector in many cases.
289 This seems to be >30% progression in selector matching performance with typical style sheets. It saves ~0.9s
290 when loading the full HTML5 spec.
292 * css/CSSStyleSelector.cpp:
293 (WebCore::RuleData::hasRightmostSelectorMatchingHTMLBasedOnRuleHash):
294 (WebCore::RuleSet::idRules):
295 (WebCore::RuleSet::classRules):
296 (WebCore::RuleSet::tagRules):
297 (WebCore::RuleSet::shadowPseudoElementRules):
298 (WebCore::RuleSet::linkPseudoClassRules):
299 (WebCore::RuleSet::visitedPseudoClassRules):
300 (WebCore::RuleSet::focusPseudoClassRules):
301 (WebCore::RuleSet::universalRules):
302 (WebCore::RuleSet::pageRules):
304 Add a new lists, some stylistic renamings.
306 (WebCore::CSSStyleSelector::matchRules):
308 New link and focus checks.
310 (WebCore::CSSStyleSelector::matchRulesForList):
311 (WebCore::CSSStyleSelector::checkSelector):
313 Inline the rightmost selector tag checking, skip if unnecessary.
315 (WebCore::isSelectorMatchingHTMLBasedOnRuleHash):
317 Common pseudo classes now match based on early filtering (though it is not a hash in this case).
319 (WebCore::RuleData::RuleData):
320 (WebCore::RuleSet::~RuleSet):
321 (WebCore::RuleSet::addRule):
323 Sort pseudo classes to new lists.
325 (WebCore::RuleSet::collectFeatures):
326 (WebCore::RuleSet::shrinkToFit):
327 (WebCore::CSSStyleSelector::matchPageRules):
328 * css/SelectorChecker.cpp:
329 (WebCore::SelectorChecker::checkSelector):
331 Adopt to expanded fast path (this is used by querySelectorAll).
333 (WebCore::SelectorChecker::fastCheckRightmostSelector):
334 (WebCore::SelectorChecker::fastCheckSelector):
336 Rightmost selector is now checked differently than the rest. RuleSet based selection in CSSStyleSelector
337 is equivalent to fastCheckRightmostSelector().
339 (WebCore::isFastCheckableRelation):
340 (WebCore::isFastCheckableMatch):
341 (WebCore::isFastCheckableRightmostSelector):
342 (WebCore::SelectorChecker::isFastCheckableSelector):
343 (WebCore::SelectorChecker::checkOneSelector):
344 (WebCore::SelectorChecker::commonPseudoClassSelectorMatches):
345 (WebCore::SelectorChecker::isFrameFocused):
346 * css/SelectorChecker.h:
347 (WebCore::SelectorChecker::isCommonPseudoClassSelector):
348 (WebCore::SelectorChecker::linkMatchesVisitedPseudoClass):
349 (WebCore::SelectorChecker::matchesFocusPseudoClass):
350 (WebCore::SelectorChecker::tagMatches):
352 Refactor a bunch of shared checks into functions.
354 2011-09-12 Ryosuke Niwa <rniwa@webkit.org>
356 REGRESSION(r74971): Selection doesn't work correctly in BiDi Text
357 https://bugs.webkit.org/show_bug.cgi?id=57340
359 Reviewed by Eric Seidel.
361 This patch adds the end point adjustment mechanism at bidi boundaries similar to the one NSTextView implements.
363 To understand the problem, suppose we have strong RTL letters "ABC" in a LTR block (visually laid out as CBA).
365 Per NSTextView convention, logical offsets between each letter is placed as (0)C(2)B(1)A(3). In other words,
366 placing the caret visually on the left of CBA yields the position inside the text node of "ABC" at offset 0.
367 Likewise, placing it between C and B yields ("ABC", 2), and placing it on the right of CBA yields ("ABC", 3).
369 Now suppose a user attempts to select the letter A by a mouse drag from the right of CBA to a point between
370 B and A. First, the initial mouse down places the selection's base at ("ABC", 3). Then as the mouse pointer
371 moves to a point on the left of A, the selection's extent is set at ("ABC", 1), selecting "BC".
373 To mitigate this issue, NSTextView adjusts selection base and extent under certain conditions. In the above
374 example, NSTextView detects user's intent and changes the selection's base to ("ABC", 0) temporarily.
376 This patch implements a similar trick on WebKit. We adjust the base or the extent when they're at the left
377 end or at the right end of a bidi run and the other end is inside of the run. In the above example, the
378 base position on the right of A is the right end of a bidi run and the extent position between B and A is
379 inside the same run (CBA), so we would adjust the base to be ("ABC", 0) as NSTextView does.
381 Take another example abcABC. Note offsets are assigned as (0)a(1)b(2)c(3)C(5)B(4)A(6) When the user starts
382 a mouse drag from the right of A to a point between B and A, we adjust the selection base to be ("abcABC", 3)
383 because the base is at the right end of a bidi run and the extent is in the same run. We keep the adjustment
384 when the mouse pointer moves to a point between C and B. However, when the mouser pointer reaches a point
385 between letters b and c, the selection extent is placed at ("abcABC", 2). Because the extent is outside of
386 the bidi run started from the selection base, we restore the original base at this point. Had we not done this,
387 we'll end up selecting just "c".
389 While this algorithm is implemented in FrameSelection::setNonDirectionalSelectionIfNeeded, this patch adds
390 various member functions to RenderedPosition to facilitate abstraction around inline boxes and bidi runs.
392 Test: editing/selection/select-bidi-run.html
394 * editing/FrameSelection.cpp:
395 (WebCore::adjustEndpointsAtBidiBoundary): Added. Implements the endpoints adjustment algorithm.
396 (WebCore::FrameSelection::setNonDirectionalSelectionIfNeeded): Calls adjustEndpointsAtBidiBoundary, and
397 restores the original base as needed.
398 * editing/FrameSelection.h:
399 * editing/RenderedPosition.cpp:
400 (WebCore::RenderedPosition::RenderedPosition):
401 (WebCore::RenderedPosition::prevLeafChild): Added to cache prevLeafChild of the current inline box.
402 (WebCore::RenderedPosition::nextLeafChild): Ditto for nextLeafChild.
403 (WebCore::RenderedPosition::isEquivalent): Compares two RenderedPositions considering neighboring inline boxes
404 so that the rightmost position in a box and the leftmost position in the following box is considered equal.
405 (WebCore::RenderedPosition::bidiLevelOnLeft): Added. Returns the bidi level of the run on the left. We can't
406 add a generic bidiLevel to this class because it'll be ambiguous at bidi boundaries.
407 (WebCore::RenderedPosition::bidiLevelOnRight): Ditto for the run on the right.
408 (WebCore::RenderedPosition::leftBoundaryOfBidiRun): Added.
409 (WebCore::RenderedPosition::rightBoundaryOfBidiRun): Added.
410 (WebCore::RenderedPosition::atLeftBoundaryOfBidiRun): Added.
411 (WebCore::RenderedPosition::atRightBoundaryOfBidiRun): Added.
412 (WebCore::RenderedPosition::positionAtLeftBoundaryOfBiDiRun): Returns Position at the left edge of a bidi run
413 if RenderedPosition is at such a position. Asserts atLeftBoundaryOfBidiRun.
414 (WebCore::RenderedPosition::positionAtRightBoundaryOfBiDiRun): Ditto for the right edge.
415 * editing/RenderedPosition.h:
416 (WebCore::RenderedPosition::atLeftBoundaryOfBidiRun): Added.
417 (WebCore::RenderedPosition::atRightBoundaryOfBidiRun): Added.
418 (WebCore::RenderedPosition::atLeftmostOffsetInBox): Added.
419 (WebCore::RenderedPosition::atRightmostOffsetInBox): Added.
420 (WebCore::RenderedPosition::uncachedInlineBox): Added. We can't use a static const variable because gcc thinks
421 reinterpret_cast<InlineBox*>(1) is not an integral value.
422 (WebCore::RenderedPosition::RenderedPosition):
423 * editing/VisibleSelection.h:
424 (WebCore::VisibleSelection::visibleBase): Added.
425 (WebCore::VisibleSelection::visibleExtent): Added.
426 * page/EventHandler.cpp:
427 (WebCore::EventHandler::updateSelectionForMouseDrag):
429 2011-09-26 Sheriff Bot <webkit.review.bot@gmail.com>
431 Unreviewed, rolling out r95256.
432 http://trac.webkit.org/changeset/95256
433 https://bugs.webkit.org/show_bug.cgi?id=68814
435 Temporary CRASH calls no longer needed (Requested by enne on
438 * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
439 (WebCore::CCLayerTreeHost::commitTo):
441 2011-09-26 Mark Rowe <mrowe@apple.com>
443 <http://webkit.org/b/68809> IconDatabase::syncThreadMainLoop can assert if wakeSyncThread is called before thread starts executing
445 If wakeSyncThread is called before syncThreadMainLoop starts executing then m_syncThreadHasWorkToDo would be set
446 while executing the body of the sync thread loop, causing us to skip blocking on the condition variable. This would
447 lead to us hitting the assertion failure due to m_disabledSuddenTerminationForSyncThread being false, unless the main
448 thread happened to call wakeSyncThread a second time while the first loop iteration was executing.
450 Reviewed by Anders Carlsson.
452 * loader/icon/IconDatabase.cpp:
453 (WebCore::IconDatabase::syncThreadMainLoop): Clear m_syncThreadHasWorkToDo to indicate that we're about to perform
456 2011-09-26 Antaryami Pandia <antaryami.pandia@motorola.com>
458 Groove/inset/outset borders show solid if the color is black.
459 https://bugs.webkit.org/show_bug.cgi?id=58608
461 Reviewed by Simon Fraser.
463 Lightened the border side colors when drawing borders with styles as
464 Outset/Inset/Groove/Ridge.
466 Tests: fast/borders/border-groove.html
467 fast/borders/border-inset.html
468 fast/borders/border-outset.html
469 fast/borders/border-ridge.html
471 * rendering/RenderObject.cpp:
472 (WebCore::RenderObject::drawLineForBoxSide):
474 2011-09-26 Abhishek Arya <inferno@chromium.org>
476 Delete retired custom font data only on document
477 destruction, and not on recalc style.
478 https://bugs.webkit.org/show_bug.cgi?id=68805
480 Reviewed by Dave Hyatt.
482 Test: fast/text/custom-font-data-crash.html
485 (WebCore::Document::recalcStyle):
487 2011-09-23 Adrienne Walker <enne@google.com>
489 [chromium] Update VideoLayerChromium textures after texture resources are reclaimed
490 https://bugs.webkit.org/show_bug.cgi?id=68742
492 Reviewed by James Robinson.
494 If video textures are reclaimed (such as during a visibility change on
495 a tab), the dirty rect for the layer is empty and it skips out of
496 updating compositor resources, leaving the video textures invalid.
497 Instead, check the textures here to make sure they're still valid
498 first before early out so that they can get reupdated if necessary.
500 Additionally, fix a small bug in pushPropertiesTo where 1 plane RGB
501 videos would not get drawn because all 3 planes didn't have valid
504 Test: compositing/video-page-visibility.html
506 * platform/graphics/chromium/VideoLayerChromium.cpp:
507 (WebCore::VideoLayerChromium::VideoLayerChromium):
508 (WebCore::VideoLayerChromium::cleanupResources):
509 (WebCore::VideoLayerChromium::updateCompositorResources):
510 (WebCore::VideoLayerChromium::pushPropertiesTo):
511 (WebCore::VideoLayerChromium::setLayerTreeHost):
512 (WebCore::VideoLayerChromium::texturesValid):
513 * platform/graphics/chromium/VideoLayerChromium.h:
515 2011-09-26 Pavel Feldman <pfeldman@google.com>
517 Web Inspector: introduce protocol backwards compatibility validator.
518 https://bugs.webkit.org/show_bug.cgi?id=68800
520 Reviewed by Yury Semikhatsky.
522 * inspector/Inspector.json:
523 * inspector/Inspector.draft-01.json: Copied from Source/WebCore/inspector/Inspector.json.
524 * inspector/validate-protocol-compatibility: Added.
526 2011-09-26 Andreas Kling <kling@webkit.org>
528 [Qt] Unused variable in QNetworkReplyHandler::sendNetworkRequest.
529 https://bugs.webkit.org/show_bug.cgi?id=68798
531 Reviewed by Noam Rosenthal.
533 * platform/network/qt/QNetworkReplyHandler.cpp:
534 (WebCore::QNetworkReplyHandler::sendNetworkRequest):
536 2011-09-26 Ilya Tikhonovsky <loislo@chromium.org>
538 Second unreviewed build fix for r95941
540 * inspector/InspectorInstrumentation.cpp:
541 (WebCore::InspectorInstrumentation::willCallFunctionImpl):
543 2011-09-26 Ilya Tikhonovsky <loislo@chromium.org>
545 Unreviewed build fix for webkit builds after r95941.
547 * inspector/InspectorInstrumentation.cpp:
548 (WebCore::InspectorInstrumentation::willCallFunctionImpl):
550 2011-09-26 Andrey Kosyakov <caseq@chromium.org>
552 Web Inspector: [Extensions API] allow resources to hook on click on resource links
553 https://bugs.webkit.org/show_bug.cgi?id=68528
555 Reviewed by Yury Semikhatsky.
558 * WebCore.vcproj/WebCore.vcproj:
559 * inspector/front-end/ExtensionAPI.js:
560 (injectedExtensionAPI.Console.prototype.get Severity):
561 (injectedExtensionAPI.Panels.prototype.create):
562 (injectedExtensionAPI.Panels.prototype.setOpenResourceHandler.else.callbackWrapper):
563 (injectedExtensionAPI.Panels.prototype.setOpenResourceHandler):
564 (injectedExtensionAPI.ExtensionServerClient.prototype.hasHandler):
565 (injectedExtensionAPI.ExtensionServerClient.prototype.deregisterHandler):
566 * inspector/front-end/ExtensionServer.js:
567 (WebInspector.ExtensionServer):
568 (WebInspector.ExtensionServer.prototype._onSetOpenResourceHandler):
569 (WebInspector.ExtensionServer.prototype._handleAnchorClicked):
570 (WebInspector.ExtensionServer.prototype._addExtensions):
571 (WebInspector.ExtensionServer.prototype._addExtension):
572 (WebInspector.ExtensionServer.prototype._registerExtension):
573 * inspector/front-end/SettingsScreen.js:
574 (WebInspector.SettingsScreen):
575 (WebInspector.SettingsScreen.prototype._createCustomSetting):
576 * inspector/front-end/WebKit.qrc:
577 * inspector/front-end/helpScreen.css:
578 (.help-content select):
579 (.help-content select:disabled):
580 (.help-content option):
581 * inspector/front-end/inspector.html:
582 * inspector/front-end/inspector.js:
583 (WebInspector.set attached):
584 (WebInspector._showAnchorLocation):
586 2011-09-23 Ilya Tikhonovsky <loislo@chromium.org>
588 Web Inspector: Timeline: record root event for the function calls enforced by console eval.
589 https://bugs.webkit.org/show_bug.cgi?id=68695
591 In a complex web application developer might want to timeline a specific piece of code.
593 In this case he can do the next steps:
595 2) eval a command in console;
598 I think it'd be nice to have a root event for the all the events that happened as the result of such eval.
600 Reviewed by Yury Semikhatsky.
602 Test: inspector/timeline/timeline-injected-script-eval.html
604 * bindings/v8/ScriptFunctionCall.cpp:
605 * inspector/InjectedScript.cpp:
606 (WebCore::InjectedScript::makeCall):
607 * inspector/InspectorInstrumentation.cpp:
608 (WebCore::InspectorInstrumentation::willCallFunctionImpl):
610 2011-09-26 No'am Rosenthal <noam.rosenthal@nokia.com>
612 [Texmap][Qt] Enable TextureMapperGL in platforms where BGRA is not present
613 https://bugs.webkit.org/show_bug.cgi?id=65473
615 Reviewed by Andreas Kling.
617 For now, swap RGBA->BGRA in software if we're in OpenGL ES 2.
618 We do that by iterating on the pixels and manually swapping each pixel's red and blue
619 values. This can be done faster with shaders, but for now this is a working solution
620 for platforms without BGRA support.
622 No new tests. Existing layout tests cover this.
624 * platform/graphics/opengl/TextureMapperGL.cpp:
625 (WebCore::BitmapTextureGL::endPaint):
626 * platform/graphics/opengl/TextureMapperGL.h:
627 * platform/graphics/qt/TextureMapperQt.cpp:
628 (WebCore::RGBA32PremultimpliedBufferQt::swapRGB):
630 2011-09-26 Sergio Villar Senin <svillar@igalia.com>
632 [GTK] Fix coding style bits in ResourceHandleSoup.cpp
633 https://bugs.webkit.org/show_bug.cgi?id=68634
635 Reviewed by Martin Robinson.
639 * platform/network/soup/ResourceHandleSoup.cpp:
640 (WebCore::ResourceHandle::defaultSession):
642 2011-09-26 James Robinson <jamesr@chromium.org>
644 [mac] Timestamp parameter to requestAnimationFrame is busted in USE(REQUEST_ANIMATION_FRAME_TIMER) path
645 https://bugs.webkit.org/show_bug.cgi?id=68769
647 Reviewed by Simon Fraser.
649 Convert the time parameter from double to DOMTimeStamp using convertSecondsToDOMTimeStamp rather than relying on
650 implicit double->long conversion, which ignores the units of the value.
652 Test: fast/animation/request-animation-frame-timestamps-advance.html
654 * dom/ScriptedAnimationController.cpp:
655 (WebCore::ScriptedAnimationController::animationTimerFired):
657 2011-09-25 Mark Hahnenberg <mhahnenberg@apple.com>
659 Add custom vtable struct to ClassInfo struct
660 https://bugs.webkit.org/show_bug.cgi?id=68567
662 Reviewed by Oliver Hunt.
666 Added CREATE_METHOD_TABLE macro to generate the custom vtable for the
667 specified class in its ClassInfo. Also added to it the first function to use
668 this macro, visitChildren. This is part of the process of getting rid of all
669 C++ virtual methods in JSCell. Eventually all virtual functions in JSCell
670 that can't easily be converted to non-virtual functions will be put into
671 this custom vtable structure.
673 * bindings/js/JSAudioConstructor.cpp:
674 * bindings/js/JSDOMGlobalObject.cpp:
675 * bindings/js/JSDOMWindowBase.cpp:
676 * bindings/js/JSDOMWindowShell.cpp:
677 * bindings/js/JSImageConstructor.cpp:
678 * bindings/js/JSImageDataCustom.cpp:
680 * bindings/js/JSOptionConstructor.cpp:
681 * bindings/js/JSWorkerContextBase.cpp:
683 Changed the bindings generator to add the call to the CREATE_METHOD_TABLE macro where
685 * bindings/scripts/CodeGeneratorJS.pm:
686 (GenerateImplementation):
687 (GenerateConstructorDefinition):
688 * bindings/scripts/test/JS/JSTestInterface.cpp:
689 * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
690 * bindings/scripts/test/JS/JSTestObj.cpp:
691 * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
692 * bridge/c/CRuntimeObject.cpp:
693 * bridge/c/c_instance.cpp:
694 * bridge/jni/jsc/JavaInstanceJSC.cpp:
695 * bridge/jni/jsc/JavaRuntimeObject.cpp:
696 * bridge/objc/ObjCRuntimeObject.mm:
697 * bridge/objc/objc_instance.mm:
698 * bridge/objc/objc_runtime.mm:
699 * bridge/qt/qt_instance.cpp:
700 * bridge/qt/qt_pixmapruntime.cpp:
701 * bridge/qt/qt_runtime.cpp:
702 * bridge/runtime_array.cpp:
703 * bridge/runtime_method.cpp:
704 * bridge/runtime_object.cpp:
706 2011-09-25 Eunmi Lee <eunmi15.lee@samsung.com>
708 [EFL] Move GtkWidgetBackingStoreCairo to the cairo directory and modify to use in the EFL.
709 https://bugs.webkit.org/show_bug.cgi?id=63502
711 Reviewed by Martin Robinson.
713 The gtk/GtkWidgetBackingStoreCairo.cpp is moved to the cairo/WidgetBackingStoreCairo.cpp and
714 some codes for EFL are added.
715 WidgetBackingStoreCairo creates cairo_image_surface and has a role to copy reusable area
716 when scrolling. So, it will be used in the WebKit2 EFL port's BackingStore.
719 * GNUmakefile.list.am:
720 * platform/cairo/WidgetBackingStore.h:
721 * platform/cairo/WidgetBackingStoreCairo.cpp: Renamed from Source/WebCore/platform/gtk/GtkWidgetBackingStoreCairo.cpp.
722 (WebCore::createSurfaceForBackingStore):
723 (WebCore::WidgetBackingStorePrivate::create):
724 (WebCore::WidgetBackingStorePrivate::WidgetBackingStorePrivate):
725 (WebCore::WidgetBackingStore::create):
726 (WebCore::WidgetBackingStore::WidgetBackingStore):
727 (WebCore::WidgetBackingStore::~WidgetBackingStore):
728 (WebCore::WidgetBackingStore::cairoSurface):
729 (WebCore::WidgetBackingStore::scroll):
730 * platform/gtk/GtkWidgetBackingStoreX11.cpp:
732 2011-09-25 Adam Barth <abarth@webkit.org>
734 Finish removing PLATFORM(BREWMP) by removing associated code
735 https://bugs.webkit.org/show_bug.cgi?id=68779
737 Reviewed by Sam Weinig.
739 When Geoffrey Garen removed PLATFORM(BREWMP) in
740 http://trac.webkit.org/changeset/95555, he did not remove all the
741 associated code. This completes the work started in r95555 by removing
742 all the code assoicated with PLATFORM(BREWMP).
744 * WebCore.gyp/WebCore.gyp:
746 * bindings/js/ScriptControllerBrew.cpp: Removed.
747 * editing/brew: Removed.
748 * editing/brew/EditorBrew.cpp: Removed.
750 * page/brew: Removed.
751 * page/brew/ChromeClientBrew.h: Removed.
752 * page/brew/DragControllerBrew.cpp: Removed.
753 * page/brew/EventHandlerBrew.cpp: Removed.
754 * page/brew/FrameBrew.cpp: Removed.
755 * platform/brew: Removed.
756 * platform/brew/ClipboardBrew.cpp: Removed.
757 * platform/brew/ClipboardBrew.h: Removed.
758 * platform/brew/ContextMenuBrew.cpp: Removed.
759 * platform/brew/ContextMenuItemBrew.cpp: Removed.
760 * platform/brew/CursorBrew.cpp: Removed.
761 * platform/brew/DragDataBrew.cpp: Removed.
762 * platform/brew/EventLoopBrew.cpp: Removed.
763 * platform/brew/FileSystemBrew.cpp: Removed.
764 * platform/brew/KURLBrew.cpp: Removed.
765 * platform/brew/LanguageBrew.cpp: Removed.
766 * platform/brew/LocalizedStringsBrew.cpp: Removed.
767 * platform/brew/LoggingBrew.cpp: Removed.
768 * platform/brew/MIMETypeRegistryBrew.cpp: Removed.
769 * platform/brew/PasteboardBrew.cpp: Removed.
770 * platform/brew/PlatformKeyboardEventBrew.cpp: Removed.
771 * platform/brew/PlatformMouseEventBrew.cpp: Removed.
772 * platform/brew/PlatformTouchEventBrew.cpp: Removed.
773 * platform/brew/PlatformTouchPointBrew.cpp: Removed.
774 * platform/brew/PopupMenuBrew.cpp: Removed.
775 * platform/brew/PopupMenuBrew.h: Removed.
776 * platform/brew/SSLKeyGeneratorBrew.cpp: Removed.
777 * platform/brew/ScreenBrew.cpp: Removed.
778 * platform/brew/ScrollbarThemeBrew.cpp: Removed.
779 * platform/brew/ScrollbarThemeBrew.h: Removed.
780 * platform/brew/SearchPopupMenuBrew.cpp: Removed.
781 * platform/brew/SearchPopupMenuBrew.h: Removed.
782 * platform/brew/SharedBufferBrew.cpp: Removed.
783 * platform/brew/SharedTimerBrew.cpp: Removed.
784 * platform/brew/SoundBrew.cpp: Removed.
785 * platform/brew/SystemTimeBrew.cpp: Removed.
786 * platform/brew/TemporaryLinkStubs.cpp: Removed.
787 * platform/brew/WidgetBrew.cpp: Removed.
788 * platform/graphics/brew: Removed.
789 * platform/graphics/brew/IconBrew.cpp: Removed.
790 * platform/graphics/brew/ImageBrew.cpp: Removed.
791 * platform/graphics/brew/IntPointBrew.cpp: Removed.
792 * platform/graphics/brew/IntSizeBrew.cpp: Removed.
793 * platform/network/brew: Removed.
794 * platform/network/brew/DNSBrew.cpp: Removed.
795 * platform/network/brew/SocketStreamError.h: Removed.
796 * platform/network/brew/SocketStreamHandle.h: Removed.
797 * platform/network/brew/SocketStreamHandleBrew.cpp: Removed.
798 * platform/network/brew/SocketStreamHandlePrivate.h: Removed.
799 * platform/text/brew: Removed.
800 * platform/text/brew/TextBoundariesBrew.cpp: Removed.
801 * platform/text/brew/TextBreakIteratorBrew.cpp: Removed.
802 * platform/text/brew/TextCodecBrew.cpp: Removed.
803 * platform/text/brew/TextCodecBrew.h: Removed.
805 2011-09-25 Kentaro Hara <haraken@chromium.org>
807 Implement a CloseEvent constructor for JSC
808 https://bugs.webkit.org/show_bug.cgi?id=68340
810 Reviewed by Oliver Hunt.
812 The spec of the CloseEvent constructor is here:
813 http://dev.w3.org/html5/websockets/#closeevent
815 Test: fast/events/constructors/close-event-constructor.html
817 * bindings/generic/EventConstructors.h: Added a definition for the CloseEvent constructor.
818 * bindings/js/JSEventConstructors.cpp: Added #includes for CloseEvent.
819 * websockets/CloseEvent.h: Added a definition for CloseEventInit.
820 (WebCore::CloseEventInit::CloseEventInit):
821 (WebCore::CloseEvent::create):
822 (WebCore::CloseEvent::CloseEvent):
823 * websockets/CloseEvent.idl: Makes CloseEvent constructible.
825 2011-09-25 Mark Rowe <mrowe@apple.com>
827 <rdar://problem/10177824> IconDatabase’s use of ThreadCondition leads to assertion failures in the face of spurious wakeups
829 It's possible for ThreadCondition::wait to return spuriously without the condition having been signaled.
830 When that happens we should immediately return to waiting rather than doing our normal work, as some of that
831 work relies on wakeSyncThread having been called to signal the condition.
833 Reviewed by Sam Weinig.
835 * loader/icon/IconDatabase.cpp:
836 (WebCore::IconDatabase::IconDatabase):
837 (WebCore::IconDatabase::wakeSyncThread): Note that we have work for the sync thread to do.
838 (WebCore::IconDatabase::syncThreadMainLoop): If we were woken with no work to do, immediately
839 go back to waiting on the condition variable. Otherwise, reset m_syncThreadHasWorkToDo and then
840 do that work. We also switch to moving m_disabledSuddenTerminationForSyncThread immediately in to
841 our local shouldReenableSuddenTermination variable since it can be updated by other threads while
842 we don't hold the lock. This makes it inappropriate to make assumptions about its value after dropping
843 and reacquiring the lock.
844 * loader/icon/IconDatabase.h:
846 2011-09-25 Dan Bernstein <mitz@apple.com>
848 <rdar://problem/10156263> ASSERT in WebCore::FrameView::scheduleRelayoutOfSubtree
850 Reviewed by Sam Weinig.
852 Test: fast/dynamic/subtree-unrooted.html
854 * rendering/RenderObject.cpp:
855 (WebCore::RenderObject::scheduleRelayout): Replaced the check that the renderer is parented,
856 which was added in r21162, with a check that it is “rooted”.
858 2011-09-24 Abhishek Arya <inferno@chromium.org>
860 Issues with merging block children of a ruby
861 base with another ruby base having inline children.
862 https://bugs.webkit.org/show_bug.cgi?id=66124
864 Reviewed by Dan Bernstein.
866 Test: fast/ruby/ruby-base-merge-block-children-crash.html
868 * rendering/RenderRubyBase.cpp:
869 (WebCore::RenderRubyBase::moveInlineChildren): add a firstChild()
870 check to prevent empty anonymous block addition, just like
871 moveBlockChildren method.
872 * rendering/RenderRubyBase.cpp:
873 (WebCore::RenderRubyBase::moveBlockChildren): This was incorrectly
874 doing optimizations to see if current ruby base has only inline
875 children before beforeChild and then trying to take out them from
876 their parent anonymous blocks. The problem is those inlines could
877 be split and have continuations because of encountering a block
878 inside inline flow. In those cases, we cannot take the inline out.
879 So, we should just make children non-inline in the destination
880 block and transfer the children as it-is.
881 * rendering/RenderRubyBase.h: remove unncessary functions.
883 2011-09-25 Adam Barth <abarth@webkit.org>
885 Remove PLATFORM(HAIKU) and associated code
886 https://bugs.webkit.org/show_bug.cgi?id=68774
888 Reviewed by Sam Weinig.
890 As discussed on webkit-dev, the Haiku port has been inactive for over a
891 year. A year and a half ago, we discussed removing the port, but folks
892 said they planned to work on it more. That work does not appear to
893 have happened in the intervening time.
895 * WebCore.gyp/WebCore.gyp:
897 * bindings/js/ScriptControllerHaiku.cpp: Removed.
898 * editing/haiku: Removed.
899 * editing/haiku/EditorHaiku.cpp: Removed.
901 * loader/cache/CachedFont.cpp:
902 * page/EventHandler.cpp:
903 (WebCore::EventHandler::eventInvertsTabsToLinksClientCallResult):
904 * page/haiku: Removed.
905 * page/haiku/DragControllerHaiku.cpp: Removed.
906 * page/haiku/EventHandlerHaiku.cpp: Removed.
907 * page/haiku/FrameHaiku.cpp: Removed.
908 * platform/ContextMenuItem.h:
910 * platform/DragData.h:
911 * platform/DragImage.h:
912 * platform/PlatformKeyboardEvent.h:
913 * platform/PlatformMenuDescription.h:
914 * platform/PlatformMouseEvent.h:
916 * platform/graphics/BitmapImage.h:
917 * platform/graphics/Color.h:
918 * platform/graphics/FloatPoint.h:
919 * platform/graphics/FloatRect.h:
920 * platform/graphics/Gradient.h:
921 * platform/graphics/GraphicsContext.cpp:
922 * platform/graphics/GraphicsContext.h:
923 * platform/graphics/ImageBufferData.h:
924 * platform/graphics/ImageSource.h:
925 * platform/graphics/IntPoint.h:
926 * platform/graphics/IntRect.h:
927 * platform/graphics/IntSize.h:
928 * platform/graphics/Path.h:
929 * platform/graphics/Pattern.h:
930 * platform/graphics/SimpleFontData.h:
931 * platform/graphics/haiku: Removed.
932 * platform/graphics/haiku/ColorHaiku.cpp: Removed.
933 * platform/graphics/haiku/FloatPointHaiku.cpp: Removed.
934 * platform/graphics/haiku/FloatRectHaiku.cpp: Removed.
935 * platform/graphics/haiku/FontCacheHaiku.cpp: Removed.
936 * platform/graphics/haiku/FontCustomPlatformData.cpp: Removed.
937 * platform/graphics/haiku/FontCustomPlatformData.h: Removed.
938 * platform/graphics/haiku/FontHaiku.cpp: Removed.
939 * platform/graphics/haiku/FontPlatformData.h: Removed.
940 * platform/graphics/haiku/GlyphPageTreeNodeHaiku.cpp: Removed.
941 * platform/graphics/haiku/GradientHaiku.cpp: Removed.
942 * platform/graphics/haiku/GraphicsContextHaiku.cpp: Removed.
943 * platform/graphics/haiku/IconHaiku.cpp: Removed.
944 * platform/graphics/haiku/ImageBufferDataHaiku.h: Removed.
945 * platform/graphics/haiku/ImageBufferHaiku.cpp: Removed.
946 * platform/graphics/haiku/ImageHaiku.cpp: Removed.
947 * platform/graphics/haiku/IntPointHaiku.cpp: Removed.
948 * platform/graphics/haiku/IntRectHaiku.cpp: Removed.
949 * platform/graphics/haiku/IntSizeHaiku.cpp: Removed.
950 * platform/graphics/haiku/PathHaiku.cpp: Removed.
951 * platform/graphics/haiku/SimpleFontDataHaiku.cpp: Removed.
952 * platform/graphics/haiku/StillImageHaiku.cpp: Removed.
953 * platform/graphics/haiku/StillImageHaiku.h: Removed.
954 * platform/haiku: Removed.
955 * platform/haiku/ClipboardHaiku.cpp: Removed.
956 * platform/haiku/ClipboardHaiku.h: Removed.
957 * platform/haiku/ContextMenuHaiku.cpp: Removed.
958 * platform/haiku/ContextMenuItemHaiku.cpp: Removed.
959 * platform/haiku/CookieJarHaiku.cpp: Removed.
960 * platform/haiku/CursorHaiku.cpp: Removed.
961 * platform/haiku/DragDataHaiku.cpp: Removed.
962 * platform/haiku/DragImageHaiku.cpp: Removed.
963 * platform/haiku/EventLoopHaiku.cpp: Removed.
964 * platform/haiku/FileSystemHaiku.cpp: Removed.
965 * platform/haiku/LocalizedStringsHaiku.cpp: Removed.
966 * platform/haiku/LoggingHaiku.cpp: Removed.
967 * platform/haiku/MIMETypeRegistryHaiku.cpp: Removed.
968 * platform/haiku/PasteboardHaiku.cpp: Removed.
969 * platform/haiku/PlatformKeyboardEventHaiku.cpp: Removed.
970 * platform/haiku/PlatformMouseEventHaiku.cpp: Removed.
971 * platform/haiku/PlatformWheelEventHaiku.cpp: Removed.
972 * platform/haiku/PopupMenuHaiku.cpp: Removed.
973 * platform/haiku/PopupMenuHaiku.h: Removed.
974 * platform/haiku/RenderThemeHaiku.cpp: Removed.
975 * platform/haiku/RenderThemeHaiku.h: Removed.
976 * platform/haiku/ScreenHaiku.cpp: Removed.
977 * platform/haiku/ScrollbarThemeHaiku.cpp: Removed.
978 * platform/haiku/ScrollbarThemeHaiku.h: Removed.
979 * platform/haiku/SearchPopupMenuHaiku.cpp: Removed.
980 * platform/haiku/SearchPopupMenuHaiku.h: Removed.
981 * platform/haiku/SharedBufferHaiku.cpp: Removed.
982 * platform/haiku/SharedTimerHaiku.cpp: Removed.
983 * platform/haiku/SoundHaiku.cpp: Removed.
984 * platform/haiku/TemporaryLinkStubs.cpp: Removed.
985 * platform/haiku/WidgetHaiku.cpp: Removed.
986 * platform/image-decoders/haiku: Removed.
987 * platform/image-decoders/haiku/ImageDecoderHaiku.cpp: Removed.
988 * platform/text/UnicodeRange.h:
989 * platform/text/haiku: Removed.
990 * platform/text/haiku/TextBreakIteratorInternalICUHaiku.cpp: Removed.
992 2011-09-25 Adam Barth <abarth@webkit.org>
994 Attempted build fixes for GTK and Qt.
996 * GNUmakefile.list.am:
999 2011-09-24 Adam Barth <abarth@webkit.org>
1001 Always enable ENABLE(OFFLINE_WEB_APPLICATIONS)
1002 https://bugs.webkit.org/show_bug.cgi?id=68767
1004 Reviewed by Eric Seidel.
1006 As discussed on webkit-dev, almost everyone has this enable turned on
1007 and this feature is unlikely to be removed from the web platform given
1011 * Configurations/FeatureDefines.xcconfig:
1013 * GNUmakefile.list.am:
1016 * bindings/cpp/WebDOMEventTarget.cpp:
1018 * bindings/js/JSEventTarget.cpp:
1020 (WebCore::toEventTarget):
1021 * bindings/v8/V8DOMWrapper.cpp:
1022 (WebCore::V8DOMWrapper::convertEventTargetToV8Object):
1023 * dom/EventTarget.cpp:
1024 (WebCore::EventTarget::toDOMApplicationCache):
1025 * dom/EventTarget.h:
1027 * history/PageCache.cpp:
1028 (WebCore::logCanCacheFrameDecision):
1029 (WebCore::PageCache::canCachePageContainingThisFrame):
1030 * html/HTMLHtmlElement.cpp:
1031 (WebCore::HTMLHtmlElement::insertedByParser):
1032 * html/HTMLHtmlElement.h:
1033 * html/HTMLMediaElement.cpp:
1034 (WebCore::createFileURLForApplicationCacheResource):
1035 (WebCore::HTMLMediaElement::loadResource):
1036 * html/ImageDocument.cpp:
1037 (WebCore::ImageDocument::createDocumentStructure):
1038 * html/MediaDocument.cpp:
1039 (WebCore::MediaDocumentParser::createDocumentStructure):
1040 * html/PluginDocument.cpp:
1041 (WebCore::PluginDocumentParser::createDocumentStructure):
1042 * html/parser/HTMLConstructionSite.cpp:
1043 (WebCore::HTMLConstructionSite::insertHTMLHtmlStartTagBeforeHTML):
1044 * inspector/InspectorApplicationCacheAgent.cpp:
1045 * inspector/InspectorApplicationCacheAgent.h:
1046 * inspector/InspectorController.cpp:
1047 (WebCore::InspectorController::InspectorController):
1048 (WebCore::InspectorController::connectFrontend):
1049 (WebCore::InspectorController::disconnectFrontend):
1050 * inspector/InspectorController.h:
1051 * inspector/InspectorInstrumentation.cpp:
1052 (WebCore::InspectorInstrumentation::updateApplicationCacheStatusImpl):
1053 * inspector/InspectorInstrumentation.h:
1054 (WebCore::InspectorInstrumentation::networkStateChanged):
1055 (WebCore::InspectorInstrumentation::updateApplicationCacheStatus):
1056 * inspector/InstrumentingAgents.h:
1057 (WebCore::InstrumentingAgents::InstrumentingAgents):
1058 (WebCore::InstrumentingAgents::setInspectorApplicationCacheAgent):
1059 * inspector/WorkerInspectorController.cpp:
1060 (WebCore::WorkerInspectorController::connectFrontend):
1061 * inspector/generate-inspector-idl:
1062 * loader/DocumentLoader.cpp:
1063 (WebCore::DocumentLoader::DocumentLoader):
1064 (WebCore::DocumentLoader::mainReceivedError):
1065 (WebCore::DocumentLoader::stopLoading):
1066 (WebCore::DocumentLoader::detachFromFrame):
1067 (WebCore::DocumentLoader::handledOnloadEvents):
1068 * loader/DocumentLoader.h:
1069 (WebCore::DocumentLoader::applicationCacheHost):
1070 * loader/EmptyClients.h:
1071 (WebCore::EmptyChromeClient::reachedApplicationCacheOriginQuota):
1072 * loader/FrameLoader.cpp:
1073 (WebCore::FrameLoader::loadResourceSynchronously):
1074 * loader/MainResourceLoader.cpp:
1075 (WebCore::MainResourceLoader::willSendRequest):
1076 (WebCore::MainResourceLoader::didReceiveResponse):
1077 (WebCore::MainResourceLoader::didReceiveData):
1078 (WebCore::MainResourceLoader::didFinishLoading):
1079 (WebCore::MainResourceLoader::didFail):
1080 (WebCore::MainResourceLoader::load):
1081 * loader/ResourceLoader.cpp:
1082 (WebCore::ResourceLoader::start):
1083 (WebCore::ResourceLoader::willSendRequest):
1084 (WebCore::ResourceLoader::didSendData):
1085 (WebCore::ResourceLoader::didReceiveResponse):
1086 (WebCore::ResourceLoader::didReceiveData):
1087 (WebCore::ResourceLoader::didFinishLoading):
1088 (WebCore::ResourceLoader::didFail):
1089 (WebCore::ResourceLoader::wasBlocked):
1090 (WebCore::ResourceLoader::cannotShowURL):
1091 (WebCore::ResourceLoader::shouldUseCredentialStorage):
1092 (WebCore::ResourceLoader::willCacheResponse):
1093 * loader/ResourceLoader.h:
1094 * loader/appcache/ApplicationCache.cpp:
1095 * loader/appcache/ApplicationCache.h:
1096 * loader/appcache/ApplicationCacheGroup.cpp:
1097 * loader/appcache/ApplicationCacheGroup.h:
1098 * loader/appcache/ApplicationCacheHost.cpp:
1099 * loader/appcache/ApplicationCacheHost.h:
1100 * loader/appcache/ApplicationCacheResource.cpp:
1101 * loader/appcache/ApplicationCacheResource.h:
1102 * loader/appcache/ApplicationCacheStorage.cpp:
1103 * loader/appcache/ApplicationCacheStorage.h:
1104 * loader/appcache/DOMApplicationCache.cpp:
1105 * loader/appcache/DOMApplicationCache.h:
1106 * loader/appcache/DOMApplicationCache.idl:
1107 * loader/appcache/ManifestParser.cpp:
1108 (WebCore::parseManifest):
1109 * loader/appcache/ManifestParser.h:
1110 * loader/chromium/ResourceLoaderChromium.cpp:
1111 (WebCore::ResourceLoader::didDownloadData):
1112 * page/ChromeClient.h:
1113 * page/DOMWindow.cpp:
1114 (WebCore::DOMWindow::clear):
1115 (WebCore::DOMWindow::applicationCache):
1117 (WebCore::DOMWindow::optionalApplicationCache):
1118 * page/DOMWindow.idl:
1119 * xml/parser/XMLDocumentParserLibxml2.cpp:
1120 (WebCore::XMLDocumentParser::startElementNs):
1121 * xml/parser/XMLDocumentParserQt.cpp:
1122 (WebCore::XMLDocumentParser::parseStartElement):
1124 2011-09-24 Adam Barth <abarth@webkit.org>
1126 Remove ENABLE(WCSS) and associated code
1127 https://bugs.webkit.org/show_bug.cgi?id=68759
1129 Reviewed by Darin Adler.
1131 As discussed on webkit-dev, we are removing this feature from trunk to
1132 reduce the number of different configurations.
1134 * CodeGenerators.pri:
1137 * css/CSSParser.cpp:
1138 (WebCore::CSSParser::parseValue):
1140 * css/CSSPrimitiveValueMappings.h:
1141 (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
1142 * css/CSSStyleSelector.cpp:
1143 (WebCore::CSSStyleSelector::applyProperty):
1144 * css/WCSSPropertyNames.in: Removed.
1145 * css/WCSSValueKeywords.in: Removed.
1147 * html/HTMLInputElement.cpp:
1148 (WebCore::HTMLInputElement::HTMLInputElement):
1149 * html/HTMLInputElement.h:
1150 * html/TextFieldInputType.cpp:
1151 (WebCore::TextFieldInputType::sanitizeValue):
1152 (WebCore::TextFieldInputType::handleBeforeTextInsertedEvent):
1153 * rendering/RenderMarquee.cpp:
1154 (WebCore::RenderMarquee::start):
1155 * rendering/RenderObject.cpp:
1156 (WebCore::RenderObject::createObject):
1157 * rendering/style/RenderStyleConstants.h:
1159 2011-09-24 Young Han Lee <joybro@company100.net>
1161 SVGAnimation does not support 'values' for from-to animations
1162 https://bugs.webkit.org/show_bug.cgi?id=64859
1164 Reviewed by Dirk Schulze.
1166 If from-to animation have discrete calc-mode and have a 'keyTimes' list, values of
1167 the keyTimes indicate the begin and the end of the animation respectively.[1][2]
1169 When keyTimes is given, calculate the progress percentage of the animation with it
1170 even for from-to animation.
1172 [1] http://www.w3.org/TR/SVG/animate.html#ValueAttributes
1173 [2] http://www.w3.org/TR/2001/REC-smil-animation-20010904/#AnimFuncValues
1175 Test: svg/animations/animate-from-to-keyTimes.html
1177 * svg/SVGAnimationElement.cpp:
1178 (WebCore::SVGAnimationElement::calculatePercentForFromTo):
1179 (WebCore::SVGAnimationElement::updateAnimation):
1180 * svg/SVGAnimationElement.h:
1182 2011-09-23 Chris Fleizach <cfleizach@apple.com>
1184 WebKit does not expose AXPlaceholder value on password fields
1185 https://bugs.webkit.org/show_bug.cgi?id=68745
1187 Reviewed by Oliver Hunt.
1189 * accessibility/mac/WebAccessibilityObjectWrapper.mm:
1190 (-[WebAccessibilityObjectWrapper accessibilityAttributeNames]):
1192 2011-09-23 Mark Rowe <mrowe@apple.com>
1196 * loader/CrossOriginAccessControl.cpp:
1197 (WebCore::passesAccessControlCheck): Get rid of the exit-time destructor.
1199 2011-09-23 Adam Barth <abarth@webkit.org>
1201 Canvas security checks show up on HTML5GamingTest benchmark
1202 https://bugs.webkit.org/show_bug.cgi?id=68743
1204 Reviewed by Oliver Hunt.
1206 Prior to this patch, the canvas security checks took as much as 4% of
1207 the time on the HTML5GamingTest benchmark:
1209 http://craftymind.com/factory/guimark2/HTML5GamingTest.html
1211 This patch uses a couple of AtomicStrings and shuffles around the order
1212 of the security check to take this down to around 0.1% (which is near
1213 the noise floor of what I can measure with my profiler).
1215 * html/canvas/CanvasRenderingContext.cpp:
1216 (WebCore::CanvasRenderingContext::wouldTaintOrigin):
1217 * loader/CrossOriginAccessControl.cpp:
1218 (WebCore::passesAccessControlCheck):
1220 2011-09-23 Justin Novosad <junov@chromium.org>
1222 Unwarranted DOM Exception when canvas2D drawImage is called with src
1224 https://bugs.webkit.org/show_bug.cgi?id=65709
1226 Reviewed by Oliver Hunt.
1228 * html/canvas/CanvasRenderingContext2D.cpp:
1229 (WebCore::CanvasRenderingContext2D::drawImage):
1230 Return early without throwing an exception if source rectangle is out of
1231 bounds to match the spec.
1233 2011-09-23 Lukasz Slachciak <l.slachciak@samsung.com>
1235 Printing of notImplemented() when logging enabled.
1236 https://bugs.webkit.org/show_bug.cgi?id=64590
1238 Printing of notImplemented() method was enabled on Debug builds only.
1239 Now it is enabled when logging is enabled.
1241 Reviewed by Oliver Hunt.
1243 No new tests because there is no new functionality.
1245 * platform/NotImplemented.h: Non-debug mode replaced with non-logging mode.
1247 2011-09-23 Mihai Parparita <mihaip@chromium.org>
1249 [Chromium] REGRESSION (r95725): Resizing a window doesn't resize the contents
1250 https://bugs.webkit.org/show_bug.cgi?id=68730
1252 Reviewed by James Robinson.
1254 Adds a missing contentsResized() call in ScrollView::setFrameRect.
1256 Test: fast/dom/Window/window-resize-contents.html
1258 * platform/ScrollView.cpp:
1259 (WebCore::ScrollView::setFrameRect):
1261 2011-09-23 Adam Klein <adamk@chromium.org>
1263 Add ENABLE_MUTATION_OBSERVERS feature flag
1264 https://bugs.webkit.org/show_bug.cgi?id=68732
1266 Reviewed by Ojan Vafai.
1268 This flag will guard an implementation of the "Mutation Observers" proposed in
1269 http://lists.w3.org/Archives/Public/public-webapps/2011JulSep/1622.html
1271 * Configurations/FeatureDefines.xcconfig:
1274 2011-09-23 Varun Jain <varunjain@google.com>
1276 Refactor WebViewImpl::scrollFocusedNodeIntoRect to a better place and add tests
1277 https://bugs.webkit.org/show_bug.cgi?id=68198
1279 Reviewed by Dimitri Glazkov.
1281 Tests: fast/dom/scroll-element-to-rect-centered.html
1282 fast/dom/scroll-element-to-rect.html
1285 * page/FrameView.cpp:
1286 (WebCore::FrameView::scrollElementToRect):
1288 * testing/Internals.cpp:
1289 (WebCore::Internals::scrollElementToRect):
1290 * testing/Internals.h:
1291 * testing/Internals.idl:
1293 2011-09-23 Mihai Parparita <mihaip@chromium.org>
1295 Unreviewed, rolling out r95860.
1296 http://trac.webkit.org/changeset/95860
1297 https://bugs.webkit.org/show_bug.cgi?id=68648
1299 Breaks overhang rendering on Chromium Mac
1301 * platform/chromium/ScrollbarThemeChromium.cpp:
1302 * platform/chromium/ScrollbarThemeChromium.h:
1303 * platform/chromium/ScrollbarThemeChromiumMac.h:
1304 * platform/chromium/ScrollbarThemeChromiumMac.mm:
1305 (WebCore::ScrollbarThemeChromiumMac::ScrollbarThemeChromiumMac):
1306 (WebCore::ScrollbarThemeChromiumMac::paintOverhangAreas):
1308 2011-09-23 Dean Jackson <dino@apple.com>
1310 Add -webkit-filter to CSSPropertyNames
1311 https://bugs.webkit.org/show_bug.cgi?id=68675
1313 Reviewed by Simon Fraser.
1315 Add property and rudimentary parsing for -webkit-filter. The
1316 property value isn't preserved anywhere yet. Add
1317 stub definition for computed style.
1319 Test: css3/filters/filter-property.html
1321 * css/CSSComputedStyleDeclaration.cpp:
1322 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1323 * css/CSSParser.cpp:
1324 (WebCore::CSSParser::parseValue):
1325 (WebCore::CSSParser::parseFilter):
1327 * css/CSSPropertyNames.in:
1328 * css/CSSStyleSelector.cpp:
1329 (WebCore::CSSStyleSelector::applyProperty):
1331 2011-09-23 Antoine Labour <piman@chromium.org>
1333 Remove preserves3D() from CCLayerDelegate, replacing it by setting the
1334 value explicitly after creating a layer, or setting its delegate.
1335 https://bugs.webkit.org/show_bug.cgi?id=68295
1337 Reviewed by James Robinson.
1339 Covered by compositing/ layeout tests.
1341 * platform/graphics/chromium/GraphicsLayerChromium.cpp:
1342 (WebCore::GraphicsLayerChromium::setContentsToCanvas):
1343 (WebCore::GraphicsLayerChromium::setContentsToMedia):
1344 (WebCore::GraphicsLayerChromium::updateLayerPreserves3D):
1345 (WebCore::GraphicsLayerChromium::setupContentsLayer):
1346 * platform/graphics/chromium/GraphicsLayerChromium.h:
1347 * platform/graphics/chromium/LayerChromium.cpp:
1348 (WebCore::LayerChromium::LayerChromium):
1349 * platform/graphics/chromium/LayerChromium.h:
1350 (WebCore::LayerChromium::setPreserves3D):
1351 (WebCore::LayerChromium::preserves3D):
1353 2011-09-23 Julien Chaffraix <jchaffraix@webkit.org>
1355 Implicit conversion double to float in ShadowBlur::adjustBlurRadius
1356 https://bugs.webkit.org/show_bug.cgi?id=68722
1358 Reviewed by Simon Fraser.
1360 * platform/graphics/ShadowBlur.cpp:
1361 (WebCore::ShadowBlur::adjustBlurRadius): Added 2 explicit
1364 2011-09-23 Dan Bernstein <mitz@apple.com>
1366 <rdar://problem/10178576> REGRESSION (r95391): Crash in -[WebCascadeList objectAtIndex:] when a font-family list contains missing fonts
1367 https://bugs.webkit.org/show_bug.cgi?id=68737
1369 Reviewed by Darin Adler.
1371 Test: fast/text/combining-character-sequence-fallback-crash.html
1373 * platform/graphics/mac/ComplexTextControllerCoreText.mm:
1374 (-[WebCascadeList initWithFont:WebCore::character:]): Changed to intialize _count to the exact
1375 number of FontData instances in the fallback list rather than the number of font families in the
1378 2011-09-23 David Reveman <reveman@chromium.org>
1380 [Chromium] Fix CSS 3D corner anti-aliasing.
1381 https://bugs.webkit.org/show_bug.cgi?id=68087
1383 Reviewed by James Robinson.
1385 Render sharp corners more correctly by adding bounding box
1386 edges to anti-aliasing shaders.
1388 Test: platform/chromium/compositing/3d-corners.html
1390 * platform/graphics/chromium/ShaderChromium.cpp:
1391 (WebCore::FragmentShaderRGBATexAlphaAA::getShaderString):
1392 (WebCore::FragmentShaderRGBATexClampAlphaAA::getShaderString):
1393 (WebCore::FragmentShaderRGBATexClampSwizzleAlphaAA::getShaderString):
1394 (WebCore::FragmentShaderRGBATexAlphaMaskAA::getShaderString):
1395 * platform/graphics/chromium/cc/CCRenderSurface.cpp:
1396 (WebCore::CCRenderSurface::drawLayer):
1397 (WebCore::CCRenderSurface::drawSurface):
1398 * platform/graphics/chromium/cc/CCRenderSurface.h:
1399 * platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:
1400 (WebCore::CCTiledLayerImpl::draw):
1401 (WebCore::CCTiledLayerImpl::drawTiles):
1402 * platform/graphics/chromium/cc/CCTiledLayerImpl.h:
1404 2011-09-23 Oliver Hunt <oliver@apple.com>
1406 Make write barriers actually do something when enabled
1407 https://bugs.webkit.org/show_bug.cgi?id=68717
1409 Reviewed by Geoffrey Garen.
1411 Add a forwarding header, and fix an evaluation ordering
1412 issue that shows up if you try to use write barriers.
1414 * ForwardingHeaders/heap/CardSet.h: Added.
1415 * bindings/js/JSEventListener.h:
1416 (WebCore::JSEventListener::jsFunction):
1418 2011-09-23 James Robinson <jamesr@chromium.org>
1420 Avoid updating compositing state during paint
1421 https://bugs.webkit.org/show_bug.cgi?id=68727
1423 Reviewed by Simon Fraser.
1425 We shouldn't update our compositing state in the middle of a paint. The call to
1426 updateCompositingAndLayerListsIfNeeded() was added to RenderLayer::paintLayer in r45715, which was intended to
1427 fix this exact issue. Based off the ChangeLog entries, I think that this was just a typo.
1429 * rendering/RenderLayer.cpp:
1430 (WebCore::RenderLayer::paintLayer):
1431 (WebCore::RenderLayer::updateCompositingAndLayerListsIfNeeded):
1432 * rendering/RenderLayerCompositor.cpp:
1433 (WebCore::RenderLayerCompositor::updateCompositingLayers):
1434 * rendering/RenderLayerCompositor.h:
1436 2011-09-23 Fady Samuel <fsamuel@chromium.org>
1438 Refactor paintOverhangAreas to allow non-Mac Chromium platforms to reuse code
1439 https://bugs.webkit.org/show_bug.cgi?id=68648
1441 Reviewed by Dimitri Glazkov.
1443 No new tests because there's no change in functionality (yet).
1445 * platform/chromium/ScrollbarThemeChromium.cpp:
1446 (WebCore::ScrollbarThemeChromium::ScrollbarThemeChromium):
1447 (WebCore::ScrollbarThemeChromium::~ScrollbarThemeChromium):
1448 (WebCore::ScrollbarThemeChromium::paintOverhangAreas):
1449 * platform/chromium/ScrollbarThemeChromium.h:
1450 * platform/chromium/ScrollbarThemeChromiumMac.h:
1451 * platform/chromium/ScrollbarThemeChromiumMac.mm:
1452 (WebCore::ScrollbarThemeChromiumMac::ScrollbarThemeChromiumMac):
1454 2011-09-23 Ojan Vafai <ojan@chromium.org>
1456 remove physical flex-flow values to match the updated spec
1457 https://bugs.webkit.org/show_bug.cgi?id=68728
1459 Reviewed by Tony Chang.
1461 * css/CSSParser.cpp:
1462 (WebCore::CSSParser::parseValue):
1463 * css/CSSPrimitiveValueMappings.h:
1464 (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
1465 (WebCore::CSSPrimitiveValue::operator EFlexFlow):
1466 * css/CSSValueKeywords.in:
1467 * rendering/style/RenderStyleConstants.h:
1469 2011-09-23 Abhishek Arya <inferno@chromium.org>
1471 Style not updated for :before, :after content
1473 https://bugs.webkit.org/show_bug.cgi?id=68625
1475 Reviewed by Dave Hyatt.
1477 Test: fast/ruby/ruby-text-before-after-content.html
1479 * rendering/RenderRubyText.cpp:
1480 (WebCore::RenderRubyText::updateBeforeAfterContent):
1481 * rendering/RenderRubyText.h:
1483 2011-09-22 Ojan Vafai <ojan@chromium.org>
1485 refactor RenderFlexibleBox to use flex-flow aware methods
1486 https://bugs.webkit.org/show_bug.cgi?id=68665
1488 Reviewed by Tony Chang.
1490 This is just a refactor. Just move the all the code that needs to
1491 be flow aware into helper functions. Actually making them flow-aware
1492 can be done in a followup patch.
1494 * rendering/RenderBlock.cpp:
1495 * rendering/RenderBlock.h:
1496 Moved setLogicalLocationForChild into RenderFlexibleBox since that was the only caller.
1497 * rendering/RenderFlexibleBox.cpp:
1498 (WebCore::RenderFlexibleBox::hasOrthogonalFlow):
1499 (WebCore::RenderFlexibleBox::isHorizontalFlow):
1500 (WebCore::RenderFlexibleBox::isLeftToRightFlow):
1501 (WebCore::RenderFlexibleBox::setFlowAwareLogicalHeight):
1502 (WebCore::RenderFlexibleBox::flowAwareLogicalHeightForChild):
1503 (WebCore::RenderFlexibleBox::flowAwareLogicalWidthForChild):
1504 (WebCore::RenderFlexibleBox::flowAwareLogicalHeight):
1505 (WebCore::RenderFlexibleBox::flowAwareContentLogicalWidth):
1506 (WebCore::RenderFlexibleBox::flowAwareAvailableLogicalWidth):
1507 (WebCore::RenderFlexibleBox::flowAwareBorderStart):
1508 (WebCore::RenderFlexibleBox::flowAwareBorderBefore):
1509 (WebCore::RenderFlexibleBox::flowAwareBorderAfter):
1510 (WebCore::RenderFlexibleBox::flowAwarePaddingStart):
1511 (WebCore::RenderFlexibleBox::flowAwarePaddingBefore):
1512 (WebCore::RenderFlexibleBox::flowAwarePaddingAfter):
1513 (WebCore::RenderFlexibleBox::flowAwareMarginStartForChild):
1514 (WebCore::RenderFlexibleBox::flowAwareMarginBeforeForChild):
1515 (WebCore::RenderFlexibleBox::flowAwareMarginAfterForChild):
1516 (WebCore::RenderFlexibleBox::setFlowAwareMarginStartForChild):
1517 (WebCore::RenderFlexibleBox::setFlowAwareMarginEndForChild):
1518 (WebCore::RenderFlexibleBox::setFlowAwareLogicalLocationForChild):
1519 (WebCore::RenderFlexibleBox::logicalBorderAndPaddingWidthForChild):
1520 (WebCore::RenderFlexibleBox::logicalScrollbarHeightForChild):
1521 (WebCore::RenderFlexibleBox::marginStartStyleForChild):
1522 (WebCore::RenderFlexibleBox::marginEndStyleForChild):
1523 (WebCore::RenderFlexibleBox::preferredLogicalContentWidthForFlexItem):
1524 (WebCore::RenderFlexibleBox::layoutInlineDirection):
1525 (WebCore::RenderFlexibleBox::logicalPositiveFlexForChild):
1526 (WebCore::RenderFlexibleBox::logicalNegativeFlexForChild):
1527 (WebCore::RenderFlexibleBox::computePreferredLogicalWidth):
1528 (WebCore::RenderFlexibleBox::runFreeSpaceAllocationAlgorithmInlineDirection):
1529 (WebCore::RenderFlexibleBox::setLogicalOverrideSize):
1530 (WebCore::RenderFlexibleBox::layoutAndPlaceChildrenInlineDirection):
1531 * rendering/RenderFlexibleBox.h:
1533 2011-09-23 David Hyatt <hyatt@apple.com>
1535 https://bugs.webkit.org/show_bug.cgi?id=68719
1537 Push through multiple regions when an object doesn't fit in any of them. Unlike with pages and
1538 columns, when regions have a non-uniform height, we may need to push through multiple regions
1539 in order to find one that fits.
1541 Added an optimization for quickly noticing if regions do have a uniform height so that we can
1542 treat them like columns and pages if so.
1544 Also fixed the end line matchup to properly null out endLine when no next line box exists. The new
1545 layout tests I wrote to cover this feature exposed this crasher, so fixing it in order to land
1548 Reviewed by Anders Carlsson.
1550 Added new tests in fast/regions.
1552 * rendering/RenderBlock.cpp:
1553 (WebCore::RenderBlock::adjustForUnsplittableChild):
1554 (WebCore::RenderBlock::pushToNextPageWithMinimumLogicalHeight):
1555 (WebCore::RenderBlock::adjustLinePositionForPagination):
1556 * rendering/RenderBlock.h:
1557 * rendering/RenderBlockLineLayout.cpp:
1558 (WebCore::RenderBlock::matchedEndLine):
1559 * rendering/RenderFlowThread.cpp:
1560 (WebCore::RenderFlowThread::RenderFlowThread):
1561 (WebCore::RenderFlowThread::layout):
1562 * rendering/RenderFlowThread.h:
1564 2011-09-23 Konstantin Scheglov <scheglov@google.com>
1566 Redrawing dirty parts of a large table is very slow
1567 https://bugs.webkit.org/show_bug.cgi?id=64546
1569 Reviewed by David Hyatt.
1571 Move CollapsedBorderValues into RenderTable.h.
1572 Calculate collapsed borders only once and re-use during paintObject().
1573 Invalidate cache when cell, row, row group, col, col group or table border is changed.
1575 Tests: fast/table/border-collapsing/cached-cell-append.html
1576 fast/table/border-collapsing/cached-cell-remove.html
1577 fast/table/border-collapsing/cached-change-cell-border-color.html
1578 fast/table/border-collapsing/cached-change-cell-border-width.html
1579 fast/table/border-collapsing/cached-change-col-border-color.html
1580 fast/table/border-collapsing/cached-change-col-border-width.html
1581 fast/table/border-collapsing/cached-change-colgroup-border-color.html
1582 fast/table/border-collapsing/cached-change-colgroup-border-width.html
1583 fast/table/border-collapsing/cached-change-row-border-color.html
1584 fast/table/border-collapsing/cached-change-row-border-width.html
1585 fast/table/border-collapsing/cached-change-table-border-color.html
1586 fast/table/border-collapsing/cached-change-table-border-width.html
1587 fast/table/border-collapsing/cached-change-tbody-border-color.html
1588 fast/table/border-collapsing/cached-change-tbody-border-width.html
1590 * rendering/RenderTable.cpp:
1591 (WebCore::RenderTable::RenderTable):
1592 (WebCore::RenderTable::styleDidChange): Invalidate cache on border change.
1593 (WebCore::RenderTable::layout): Invalidate cache if layout changed.
1594 (WebCore::RenderTable::recalcCollapsedBorders): Ensures that cache is valid.
1595 (WebCore::RenderTable::paintObject): Use cached collapsed borders.
1596 * rendering/RenderTable.h:
1597 (WebCore::RenderTable::invalidateCollapsedBorders): Accessor to mark cache invalid.
1598 (WebCore::RenderTable::currentBorderValue): Rename to use word "value".
1599 * rendering/RenderTableCell.cpp:
1600 (WebCore::RenderTableCell::styleDidChange): If border changed, invalidate cache.
1602 Rename to use word "value".
1603 (WebCore::addBorderStyle):
1604 (WebCore::RenderTableCell::collectBorderValues):
1605 (WebCore::compareBorderValuesForQSort):
1606 (WebCore::RenderTableCell::sortBorderValues):
1607 (WebCore::RenderTableCell::paintCollapsedBorder):
1608 * rendering/RenderTableCell.h:
1610 If border changed, invalidate cache.
1611 * rendering/RenderTableCol.cpp:
1612 (WebCore::RenderTableCol::styleDidChange):
1613 * rendering/RenderTableCol.h:
1614 * rendering/RenderTableRow.cpp:
1615 (WebCore::RenderTableRow::styleDidChange):
1616 * rendering/RenderTableSection.cpp:
1617 (WebCore::RenderTableSection::styleDidChange):
1619 2011-09-23 Mark Hahnenberg <mhahnenberg@apple.com>
1621 Add static version of JSCell::visitChildren
1622 https://bugs.webkit.org/show_bug.cgi?id=68404
1624 Reviewed by Darin Adler.
1628 In this patch we just extract the bodies of the virtual visitChildren methods
1629 throughout the JSCell inheritance hierarchy out into static methods, which are
1630 now called from the virtual methods. This is an intermediate step in trying to
1631 move the virtual-ness of visitChildren into our own custom vtable stored in
1632 ClassInfo. We need to convert the methods to static methods in order to be
1633 able to more easily store and refer to them in our custom vtable since normal
1634 member methods store some implicit information in their types, making it
1635 impossible to store them generically in ClassInfo.
1638 * bindings/js/JSAttrCustom.cpp:
1639 (WebCore::JSAttr::visitChildrenVirtual):
1640 (WebCore::JSAttr::visitChildren):
1641 * bindings/js/JSAudioContextCustom.cpp:
1642 (WebCore::JSAudioContext::visitChildrenVirtual):
1643 (WebCore::JSAudioContext::visitChildren):
1644 * bindings/js/JSCSSRuleCustom.cpp:
1645 (WebCore::JSCSSRule::visitChildrenVirtual):
1646 (WebCore::JSCSSRule::visitChildren):
1647 * bindings/js/JSCSSStyleDeclarationCustom.cpp:
1648 (WebCore::JSCSSStyleDeclaration::visitChildrenVirtual):
1649 (WebCore::JSCSSStyleDeclaration::visitChildren):
1650 * bindings/js/JSCanvasRenderingContextCustom.cpp:
1651 (WebCore::JSCanvasRenderingContext::visitChildrenVirtual):
1652 (WebCore::JSCanvasRenderingContext::visitChildren):
1653 * bindings/js/JSDOMGlobalObject.cpp:
1654 (WebCore::JSDOMGlobalObject::visitChildrenVirtual):
1655 (WebCore::JSDOMGlobalObject::visitChildren):
1656 * bindings/js/JSDOMGlobalObject.h:
1657 * bindings/js/JSDOMWindowCustom.cpp:
1658 (WebCore::JSDOMWindow::visitChildrenVirtual):
1659 (WebCore::JSDOMWindow::visitChildren):
1660 * bindings/js/JSDOMWindowShell.cpp:
1661 (WebCore::JSDOMWindowShell::visitChildrenVirtual):
1662 (WebCore::JSDOMWindowShell::visitChildren):
1663 * bindings/js/JSDOMWindowShell.h:
1664 * bindings/js/JSJavaScriptAudioNodeCustom.cpp:
1665 (WebCore::JSJavaScriptAudioNode::visitChildrenVirtual):
1666 (WebCore::JSJavaScriptAudioNode::visitChildren):
1667 * bindings/js/JSMessageChannelCustom.cpp:
1668 (WebCore::JSMessageChannel::visitChildrenVirtual):
1669 (WebCore::JSMessageChannel::visitChildren):
1670 * bindings/js/JSMessagePortCustom.cpp:
1671 (WebCore::JSMessagePort::visitChildrenVirtual):
1672 (WebCore::JSMessagePort::visitChildren):
1673 * bindings/js/JSNamedNodeMapCustom.cpp:
1674 (WebCore::JSNamedNodeMap::visitChildrenVirtual):
1675 (WebCore::JSNamedNodeMap::visitChildren):
1676 * bindings/js/JSNodeCustom.cpp:
1677 (WebCore::JSNode::visitChildrenVirtual):
1678 (WebCore::JSNode::visitChildren):
1679 * bindings/js/JSNodeFilterCustom.cpp:
1680 (WebCore::JSNodeFilter::visitChildrenVirtual):
1681 (WebCore::JSNodeFilter::visitChildren):
1682 * bindings/js/JSNodeIteratorCustom.cpp:
1683 (WebCore::JSNodeIterator::visitChildrenVirtual):
1684 (WebCore::JSNodeIterator::visitChildren):
1685 * bindings/js/JSSVGElementInstanceCustom.cpp:
1686 (WebCore::JSSVGElementInstance::visitChildrenVirtual):
1687 (WebCore::JSSVGElementInstance::visitChildren):
1688 * bindings/js/JSSharedWorkerCustom.cpp:
1689 (WebCore::JSSharedWorker::visitChildrenVirtual):
1690 (WebCore::JSSharedWorker::visitChildren):
1691 * bindings/js/JSStyleSheetCustom.cpp:
1692 (WebCore::JSStyleSheet::visitChildrenVirtual):
1693 (WebCore::JSStyleSheet::visitChildren):
1694 * bindings/js/JSTreeWalkerCustom.cpp:
1695 (WebCore::JSTreeWalker::visitChildrenVirtual):
1696 (WebCore::JSTreeWalker::visitChildren):
1697 * bindings/js/JSWebGLRenderingContextCustom.cpp:
1698 (WebCore::JSWebGLRenderingContext::visitChildrenVirtual):
1699 (WebCore::JSWebGLRenderingContext::visitChildren):
1700 * bindings/js/JSWorkerContextCustom.cpp:
1701 (WebCore::JSWorkerContext::visitChildrenVirtual):
1702 (WebCore::JSWorkerContext::visitChildren):
1703 * bindings/js/JSXMLHttpRequestCustom.cpp:
1704 (WebCore::JSXMLHttpRequest::visitChildrenVirtual):
1705 (WebCore::JSXMLHttpRequest::visitChildren):
1706 * bindings/js/JSXPathResultCustom.cpp:
1707 (WebCore::JSXPathResult::visitChildrenVirtual):
1708 (WebCore::JSXPathResult::visitChildren):
1709 * bindings/scripts/CodeGeneratorJS.pm:
1711 (GenerateImplementation):
1712 * bindings/scripts/test/JS/JSTestObj.cpp:
1713 (WebCore::JSTestObj::visitChildrenVirtual):
1714 (WebCore::JSTestObj::visitChildren):
1715 * bindings/scripts/test/JS/JSTestObj.h:
1716 * bridge/qt/qt_instance.cpp:
1717 (JSC::Bindings::QtRuntimeObject::visitChildrenVirtual):
1718 (JSC::Bindings::QtRuntimeObject::visitChildren):
1719 * bridge/qt/qt_runtime.cpp:
1720 (JSC::Bindings::QtRuntimeMetaMethod::visitChildrenVirtual):
1721 (JSC::Bindings::QtRuntimeMetaMethod::visitChildren):
1722 * bridge/qt/qt_runtime.h:
1723 * workers/WorkerContext.h:
1725 2011-09-23 Mario Sanchez Prada <msanchez@igalia.com>
1727 [GTK] Remove extra space at the beginning of the last line.
1728 https://bugs.webkit.org/show_bug.cgi?id=68710
1730 Reviewed by Gustavo Noronha Silva.
1732 * platform/network/soup/SocketStreamHandleSoup.cpp:
1734 2011-09-23 Mario Sanchez Prada <msanchez@igalia.com>
1736 [GTK] Fix coding style issues in ResourceRequestSoup.cpp
1737 https://bugs.webkit.org/show_bug.cgi?id=68707
1739 Reviewed by Xan Lopez.
1741 This patch fixes some issues as reported by check-webkit-style.
1743 * platform/network/soup/ResourceRequestSoup.cpp:
1744 (WebCore::ResourceRequest::updateFromSoupMessage):
1746 2011-09-22 Ademar de Souza Reis Jr. <ademar.reis@openbossa.org>
1748 Unreviewed: [Qt] Workaround MSVC2010 problems when linking QtWebKit
1750 Include MSVC2010 in the list of compilers where incremental
1751 build is disabled (INCREMENTAL:NO).
1753 Change suggested by Simo Falt <simo.falt@nokia.com>, already present
1754 in the Qt-4.8 repository where the problem was identified.
1758 2011-09-23 Darin Adler <darin@apple.com>
1760 Try to fix warning seen in some 32-bit builds.
1762 * rendering/RenderBoxModelObject.cpp:
1763 (WebCore::backgroundRectAdjustedForBleedAvoidance):
1764 Use an explicit cast for the conversion from a double to a LayoutUnit.
1766 2011-09-23 Vsevolod Vlasov <vsevik@chromium.org>
1768 Web Inspector: Clicking on error doesn't point on the correct line if user searched something
1769 https://bugs.webkit.org/show_bug.cgi?id=68627
1771 Reviewed by Yury Semikhatsky.
1773 * inspector/front-end/SearchController.js:
1774 (WebInspector.SearchController.prototype.disableSearchUntilExplicitAction):
1775 * inspector/front-end/inspector.js:
1776 (WebInspector._showAnchorLocationInPanel):
1778 2011-09-23 Vsevolod Vlasov <vsevik@chromium.org>
1780 Web Inspector: InspectorStyleSheet should use stylesheet's original url, not final one.
1781 https://bugs.webkit.org/show_bug.cgi?id=68631
1783 Reviewed by Yury Semikhatsky.
1785 Test: http/tests/inspector/styles/styles-redirected-css.html
1787 * inspector/InspectorStyleSheet.cpp:
1788 (WebCore::InspectorStyleSheet::resourceStyleSheetText):
1790 2011-09-23 Vsevolod Vlasov <vsevik@chromium.org>
1792 Web Inspector: XHRs requests with the same url as main resource should have correct category.
1793 https://bugs.webkit.org/show_bug.cgi?id=68646
1795 Reviewed by Yury Semikhatsky.
1797 Test: http/tests/inspector/network/network-xhr-same-url-as-main-resource.html
1799 * inspector/InspectorResourceAgent.cpp:
1800 (WebCore::InspectorResourceAgent::didReceiveResponse):
1802 2011-09-23 Vsevolod Vlasov <vsevik@chromium.org>
1804 Web Inspector: Add context menu action to navigate from resources panel resource to network panel.
1805 https://bugs.webkit.org/show_bug.cgi?id=68657
1807 Reviewed by Yury Semikhatsky.
1809 * English.lproj/localizedStrings.js:
1810 * inspector/front-end/NetworkPanel.js:
1811 (WebInspector.NetworkPanel.prototype.showAnchorLocation):
1812 (WebInspector.NetworkPanel.prototype.revealAndHighlightResource):
1813 * inspector/front-end/ResourcesPanel.js:
1814 (WebInspector.FrameResourceTreeElement.prototype._handleContextMenuEvent):
1815 (WebInspector.FrameResourceTreeElement.prototype._appendOpenInNetworkPanelAction):
1816 * inspector/front-end/inspector.js:
1817 (WebInspector.openInNetworkPanelLabel):
1818 (WebInspector.openRequestInNetworkPanel):
1820 2011-09-23 Deepak Sherveghar <bpwv64@motorola.com>
1822 [Gtk] Title attribute is not respected on option elements.
1823 https://bugs.webkit.org/show_bug.cgi?id=68615
1825 Reviewed by Martin Robinson.
1827 Set tooltip on PopupMenuGtk items created from GtkActions.
1829 * platform/gtk/GtkPopupMenu.cpp:
1830 (WebCore::GtkPopupMenu::appendItem): Added a call to gtk_widget_set_tooltip_text()
1831 to set the tooltip on menuitem. Tooltip text is retrieved from GtkAction.
1832 * platform/gtk/PopupMenuGtk.cpp:
1833 (WebCore::PopupMenuGtk::createGtkActionForMenuItem): Pass the tooltip text
1834 from client when creating a GtkAction.
1836 2011-09-23 Yael Aharon <yael.aharon@nokia.com>
1838 [Qt][Gtk] Wrong state when pausing a video in the "playing" event handler
1839 https://bugs.webkit.org/show_bug.cgi?id=68589
1841 Reviewed by Philippe Normand.
1843 Test: media/video-playing-and-pause.html
1845 As suggested by Alexis Menard on IRC, query gstreamer's state instead of using a cached value
1846 in MediaPlayerGstreamerPrivate::paused().
1848 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
1849 (WebCore::MediaPlayerPrivateGStreamer::paused):
1851 2011-09-15 Pavel Podivilov <podivilov@chromium.org>
1853 Web Inspector: skip overlapping scripts when displaying concatenated content.
1854 https://bugs.webkit.org/show_bug.cgi?id=68144
1856 Dynamically appended script tags have wrong offsets and cause troubles building concatenated content.
1858 Reviewed by Pavel Feldman.
1860 * inspector/front-end/SourceFile.js:
1861 (WebInspector.ConcatenatedScriptsContentProvider.prototype._concatenateScriptsContent.appendChunk):
1862 (WebInspector.ConcatenatedScriptsContentProvider.prototype._concatenateScriptsContent):
1864 2011-09-23 Ilya Tikhonovsky <loislo@chromium.org>
1866 Web Inspector: file open dialog appears when user clicks on the timeline bar in timeline panel.
1867 https://bugs.webkit.org/show_bug.cgi?id=68312
1869 Reviewed by Yury Semikhatsky.
1871 * inspector/front-end/TimelinePanel.js:
1872 (WebInspector.TimelinePanel.prototype._createFileSelector):
1874 2011-09-23 Sheriff Bot <webkit.review.bot@gmail.com>
1876 Unreviewed, rolling out r95383.
1877 http://trac.webkit.org/changeset/95383
1878 https://bugs.webkit.org/show_bug.cgi?id=68690
1880 It broke WebInspector.Timeline.LoadFromFile feature.
1881 (Requested by loislo on #webkit).
1883 * inspector/front-end/TimelinePanel.js:
1884 (WebInspector.TimelinePanel.prototype._createFileSelector):
1886 2011-09-23 Rob Buis <rbuis@rim.com>
1888 use after free in WebCore::SVGTRefElement::updateReferencedText
1889 https://bugs.webkit.org/show_bug.cgi?id=67555
1891 Reviewed by Nikolas Zimmermann.
1893 Event listeners can outlive the tref element that created them when
1894 the tref is cloned and then garbage collected, causing a dangling pointer to the
1895 tref. To fix this do not install event listener until the tref is inserted into the document.
1897 Test: svg/custom/tref-clone-crash.html
1899 * svg/SVGTRefElement.cpp:
1900 (WebCore::SVGTRefElement::svgAttributeChanged):
1901 (WebCore::SVGTRefElement::insertedIntoDocument):
1902 * svg/SVGTRefElement.h:
1904 2011-09-23 Vsevolod Vlasov <vsevik@chromium.org>
1906 ASSERTION FAILED: documentLoader in WebKit/Source/WebCore/inspector/InspectorInstrumentation.cpp(597)
1907 https://bugs.webkit.org/show_bug.cgi?id=68291
1909 Reviewed by Tony Chang.
1912 (WebCore::Document::finishedParsing):
1913 * inspector/InspectorInstrumentation.cpp:
1914 (WebCore::InspectorInstrumentation::domContentLoadedEventFiredImpl):
1915 (WebCore::InspectorInstrumentation::loadEventFiredImpl):
1916 * inspector/InspectorInstrumentation.h:
1917 (WebCore::InspectorInstrumentation::domContentLoadedEventFired):
1918 (WebCore::InspectorInstrumentation::loadEventFired):
1919 * page/DOMWindow.cpp:
1920 (WebCore::DOMWindow::dispatchLoadEvent):
1922 2011-09-22 Tony Chang <tony@chromium.org>
1924 implement -webkit-flex-order
1925 https://bugs.webkit.org/show_bug.cgi?id=67432
1927 Reviewed by Ojan Vafai.
1929 flex-order can be an int (including negative), but we disallow the two
1930 smallest values so we can put the numbers into a hash set.
1932 Also, create two iterators: one that goes in render tree order (we use
1933 this for the first pass and to collect the possible flex order values)
1934 and one that goes in flex order.
1936 Test: css3/flexbox/flex-order.html
1938 * css/CSSParser.cpp:
1939 (WebCore::CSSParser::parseValue):
1940 * rendering/RenderFlexibleBox.cpp:
1941 (WebCore::FlexOrderHashTraits::emptyValue):
1942 (WebCore::FlexOrderHashTraits::constructDeletedValue):
1943 (WebCore::FlexOrderHashTraits::isDeletedValue):
1944 (WebCore::RenderFlexibleBox::TreeOrderIterator::TreeOrderIterator): A simple iterator
1945 that goes in render tree order.
1946 (WebCore::RenderFlexibleBox::TreeOrderIterator::next):
1947 (WebCore::RenderFlexibleBox::TreeOrderIterator::reset):
1948 (WebCore::RenderFlexibleBox::TreeOrderIterator::flexOrderValues):
1949 (WebCore::RenderFlexibleBox::FlexOrderIterator::FlexOrderIterator): An iterator that
1950 goes in flex-order order. Creating this involves sorting, so only create it once
1952 (WebCore::RenderFlexibleBox::FlexOrderIterator::first):
1953 (WebCore::RenderFlexibleBox::FlexOrderIterator::next):
1954 (WebCore::RenderFlexibleBox::FlexOrderIterator::reset):
1955 (WebCore::RenderFlexibleBox::layoutHorizontalBlock):
1956 (WebCore::RenderFlexibleBox::computePreferredLogicalWidth):
1957 (WebCore::RenderFlexibleBox::runFreeSpaceAllocationAlgorithmInlineDirection):
1958 (WebCore::RenderFlexibleBox::layoutAndPlaceChildrenInlineDirection):
1959 * rendering/RenderFlexibleBox.h:
1961 2011-09-22 Darin Adler <darin@apple.com>
1963 Use AffineTransform scale functions in ShadowBlur::adjustBlurRadius
1964 https://bugs.webkit.org/show_bug.cgi?id=68667
1966 Reviewed by Simon Fraser.
1968 * platform/graphics/ShadowBlur.cpp:
1969 (WebCore::ShadowBlur::adjustBlurRadius): Use AffineTransform::xScale and
1970 AffineTransform::yScale instead of the custom code here that seems to do
1973 2011-09-22 Darin Adler <darin@apple.com>
1975 Remove unneeded type conversion from background bleed code
1976 https://bugs.webkit.org/show_bug.cgi?id=68669
1978 Reviewed by Geoffrey Garen.
1980 * rendering/RenderBoxModelObject.cpp:
1981 (WebCore::backgroundRectAdjustedForBleedAvoidance): Use ceil instead of ceilf
1982 and eliminate superflous conversion to float and use of FloatSize. Also added
1985 2011-09-22 Darin Adler <darin@apple.com>
1987 Refactor checks for antialiasing lines to share a single function
1988 https://bugs.webkit.org/show_bug.cgi?id=68666
1990 Reviewed by Dan Bernstein.
1992 * rendering/RenderBlock.cpp:
1993 (WebCore::RenderBlock::paintColumnRules): Call shouldAntialiasLines.
1994 * rendering/RenderBoxModelObject.cpp:
1995 (WebCore::RenderBoxModelObject::paintBorder): Ditto.
1996 (WebCore::RenderBoxModelObject::shouldAntialiasLines): Added.
1997 * rendering/RenderBoxModelObject.h: Added shouldAntialiasLines function.
1998 * rendering/RenderInline.cpp:
1999 (WebCore::RenderInline::paintOutlineForLine): Call shouldAntialiasLines.
2000 * rendering/RenderTableCell.cpp:
2001 (WebCore::RenderTableCell::paintCollapsedBorder): Ditto.
2003 2011-09-22 Antoine Labour <piman@chromium.org>
2005 Remove unused members from LayerChromium.
2006 These members are never set, and never used.
2007 Other members that are set but not used have been left (we may use them
2008 later, e.g. m_opaque).
2009 https://bugs.webkit.org/show_bug.cgi?id=68297
2011 Reviewed by James Robinson.
2013 No functional change, no new test needed.
2015 * platform/graphics/chromium/LayerChromium.cpp:
2016 (WebCore::LayerChromium::LayerChromium):
2017 * platform/graphics/chromium/LayerChromium.h:
2019 2011-09-22 Tom Sepez <tsepez@chromium.org>
2021 Make XSSAuditor extract meaningful snippet from script blocks for comparison
2022 against the URL when checking for reflection. Avoids getting caugh up in
2024 https://bugs.webkit.org/show_bug.cgi?id=68094
2026 Reviewed by Adam Barth.
2028 Tests: http/tests/security/xssAuditor/script-tag-with-trailing-comment.html
2029 http/tests/security/xssAuditor/script-tag-with-trailing-comment2.html
2030 http/tests/security/xssAuditor/script-tag-with-trailing-comment3.html
2032 * html/parser/XSSAuditor.cpp:
2033 (WebCore::XSSAuditor::filterTokenAfterScriptStartTag):
2034 (WebCore::XSSAuditor::extractCodeFragment):
2035 * html/parser/XSSAuditor.h:
2037 2011-09-22 Nate Chapin <japhet@chromium.org>
2039 Remove didReceiveAuthenticationChallenge() from SubresourceLoaderClient.
2040 Instead, add a load-specific policy for showing the user authentication
2041 challenge down to ResourceLoaderOptions and enforce it in ResourceLoader.
2042 https://bugs.webkit.org/show_bug.cgi?id=65330
2044 Reviewed by Alexey Proskuryakov.
2046 No new tests, refactor only.
2048 * loader/DocumentThreadableLoader.cpp:
2049 * loader/DocumentThreadableLoader.h:
2050 * loader/MainResourceLoader.cpp:
2051 * loader/NetscapePlugInStreamLoader.cpp:
2052 * loader/ResourceLoadScheduler.h:
2053 * loader/ResourceLoader.cpp:
2054 (WebCore::ResourceLoader::didReceiveAuthenticationChallenge):
2055 For resource types that always send a challenge to the embedder,
2056 this patch doesn't change anything. For those that don't, we will
2057 always try to continue without credentials when they are forbidden
2058 and the platform supports it.
2059 When continuing without credentials was initially implemented in
2060 DocumentThreadableLoader, we sent the ThreadableLoaderClient a didFail(),
2061 then canceled the SubresourceLoader. This was necessary because of the
2062 quirks of ThreadableLoader cancellation (we sever the client/loader connections
2063 before the load actually cancels), but a simple didFail() should suffice at
2064 the ResourceLoader layer.
2065 * loader/ResourceLoaderOptions.h:
2066 * loader/SubresourceLoader.cpp:
2067 * loader/SubresourceLoader.h:
2068 * loader/SubresourceLoaderClient.h:
2069 * loader/cache/CachedResource.cpp:
2070 * loader/cache/CachedResourceLoader.cpp:
2071 * loader/cache/CachedResourceLoader.h:
2072 * loader/icon/IconLoader.cpp: The ResourceLoader implementation of
2073 didReceiveAuthenticationChallege means that IconLoader will now
2074 try to continue with credentials on platforms that support it,
2075 rather than just canceling outright. We still will never prompt
2076 for authentication for icons.
2077 * loader/icon/IconLoader.h:
2079 2011-09-22 Dean Jackson <dino@apple.com>
2081 Add ENABLE_CSS_FILTERS
2082 https://bugs.webkit.org/show_bug.cgi?id=68652
2084 Reviewed by Simon Fraser.
2086 * Configurations/FeatureDefines.xcconfig:
2088 2011-09-22 Anders Carlsson <andersca@apple.com>
2090 Make sure to update scrollbars in ScrollView::setFrameRect
2091 https://bugs.webkit.org/show_bug.cgi?id=68663
2093 Reviewed by Sam Weinig.
2095 Call updateScrollbars after setting the frame rect. This was previously done by the
2096 call to setBoundsSize from RenderWidget::setWidgetGeometry but setBoundsSize was removed
2097 completely in http://trac.webkit.org/changeset/95725.
2099 * platform/ScrollView.cpp:
2100 (WebCore::ScrollView::setFrameRect):
2102 2011-09-22 Jon Lee <jonlee@apple.com>
2104 Progress control gets cropped on the bottom
2105 https://bugs.webkit.org/show_bug.cgi?id=68302
2106 <rdar://problem/10069915>
2108 Reviewed by Kent Tamura.
2110 As it turns out the smaller control type does not get rendered either, so this patch
2113 * manual-tests/dom/progressbar.html: Altered to show both sizes of controls
2114 * rendering/RenderThemeMac.h:
2115 * rendering/RenderThemeMac.mm: Added methods to inflate the drawing rect
2116 (WebCore::RenderThemeMac::progressBarSizes):
2117 (WebCore::RenderThemeMac::progressBarMargins):
2118 (WebCore::RenderThemeMac::minimumProgressBarHeight):
2119 (WebCore::RenderThemeMac::paintProgressBar): Inflate the rect based on minimum desired
2120 control height and glow margin.
2122 2011-09-22 David Hyatt <hyatt@apple.com>
2124 https://bugs.webkit.org/show_bug.cgi?id=68658
2126 Make matchedEndLine smart enough to not match lines that have moved to new
2127 regions with different available content logical widths. When this happens, we go ahead and treat
2128 the line as failing to match.
2130 Reviewed by Anders Carlsson.
2132 Added new tests in fast/regions.
2134 * rendering/RenderBlock.cpp:
2135 (WebCore::RenderBlock::lineWidthForPaginatedLineChanged):
2136 * rendering/RenderBlock.h:
2137 Enhanced to take an optional delta, so that you can check a new position without having to move
2140 * rendering/RenderBlockLineLayout.cpp:
2141 (WebCore::RenderBlock::checkPaginationAndFloatsAtEndLine):
2142 New function that refactors checking for line width changes from region movement as well as the
2143 float checks. Since the float checks were duplicated twice, this is a nice refactoring.
2145 (WebCore::RenderBlock::matchedEndLine):
2146 Changed to call the new helper function that will check both floats and pagination.
2148 2011-09-22 Gavin Barraclough <barraclough@apple.com>
2150 Implement Function.prototype.bind
2151 https://bugs.webkit.org/show_bug.cgi?id=26382
2153 Reviewed by Sam Weinig.
2155 Test: fast/js/function-bind.html
2157 * bindings/js/JSDOMBinding.cpp:
2158 (WebCore::objectToStringFunctionGetter):
2159 * bindings/js/JSDOMWindowCustom.cpp:
2160 (WebCore::nonCachingStaticFunctionGetter):
2161 * bindings/js/JSHistoryCustom.cpp:
2162 (WebCore::nonCachingStaticBackFunctionGetter):
2163 (WebCore::nonCachingStaticForwardFunctionGetter):
2164 (WebCore::nonCachingStaticGoFunctionGetter):
2165 * bindings/js/JSLocationCustom.cpp:
2166 (WebCore::nonCachingStaticReplaceFunctionGetter):
2167 (WebCore::nonCachingStaticReloadFunctionGetter):
2168 (WebCore::nonCachingStaticAssignFunctionGetter):
2169 - Function::create no longer requires functionStructure() to be passed.
2170 2011-09-22 David Hyatt <hyatt@apple.com>
2172 https://bugs.webkit.org/show_bug.cgi?id=68650
2174 Make determineStartPosition smart enough to not skip over clean lines that have moved to a new
2175 region with a different available content logical width. When this happens, we go ahead and treat
2178 Reviewed by Sam Weinig.
2180 Covered by existing fast/regions tests.
2182 * rendering/RenderBlock.cpp:
2183 (WebCore::RenderBlock::layoutBlock):
2184 Disable region fitting if we detect that the regions all have uniform widths. In this case we know
2185 the content width can't vary, so there's no reason to waste time worrying about it.
2187 (WebCore::RenderBlock::computeLogicalLocationForFloat):
2188 Pull the content width checking code into computeLogicalLocationForFloat, since we've incorporated
2189 region fitting into the fixed offsets now rather than the line functions.
2191 (WebCore::RenderBlock::positionNewFloats):
2192 Changed because more code moved from here into computeLogicalLocationForFloat.
2194 (WebCore::RenderBlock::adjustForRegionFittingIfNeeded):
2195 No changes. Just moved the function above the left offset function.
2197 (WebCore::RenderBlock::logicalLeftOffsetForContent):
2198 (WebCore::RenderBlock::logicalRightOffsetForContent):
2199 Added. These new functions give the fixed left and right offsets for lines in a particular region.
2200 When no regions are present or when all the regions have a uniform width, they are identical
2201 to the versions of the functions that take no arguments.
2203 (WebCore::RenderBlock::logicalRightOffsetForLine):
2204 Changed to no longer do region fitting, since that's built into logicalRightOffsetForContent now.
2206 (WebCore::RenderBlock::lineWidthForPaginatedLineChanged):
2207 New function that takes a root line box and compares its cached old content width with the width
2208 available at the line's new location.
2210 * rendering/RenderBlock.h:
2211 (WebCore::RenderBlock::logicalRightOffsetForLine):
2212 (WebCore::RenderBlock::logicalLeftOffsetForLine):
2213 Modified to call the logicalXXXOffsetForContent functions that take a block direction position.
2215 (WebCore::RenderBlock::logicalRightOffsetForContent):
2216 (WebCore::RenderBlock::logicalLeftOffsetForContent):
2217 Added the new functions that take a position so that they can fit to the correct region.
2219 (WebCore::RenderBlock::availableLogicalWidthForContent):
2220 New helper function that calls right - left (similar to the corresponding line function that includes
2223 * rendering/RenderBlockLineLayout.cpp:
2224 (WebCore::RenderBlock::determineStartPosition):
2225 Patched to check if a line has moved to a place with a different available content width. If so, the line
2226 is dirtied so that line layout can re-run.
2228 * rendering/RootInlineBox.cpp:
2229 (WebCore::RootInlineBox::RootInlineBox):
2230 (WebCore::RootInlineBox::alignBoxesInBlockDirection):
2231 Sets the paginated line width from the current block logical height.
2233 * rendering/RootInlineBox.h:
2234 (WebCore::RootInlineBox::paginationStrut):
2235 (WebCore::RootInlineBox::setPaginationStrut):
2236 Fixed paginationStrut to be LayoutUnit instead of int.
2238 (WebCore::RootInlineBox::paginatedLineWidth):
2239 (WebCore::RootInlineBox::setPaginatedLineWidth):
2240 Added paginatedLineWidth getter/setter for caching the content width for a given root line.
2242 2011-09-21 Anders Carlsson <andersca@apple.com>
2244 Remove Widget::beforeMouseDown and Widget::afterMouseDown
2245 https://bugs.webkit.org/show_bug.cgi?id=68570
2247 Reviewed by Darin Adler.
2249 These two member functions were originally added to avoid crashes due to removing NSViews while they were
2250 being tracked by AppKit. Since they were added, we've moved away from NSViews for form controls, and the bugs in
2251 AppKit that lead to crashes have been fixed.
2253 This patch was rolled out in r95743 because it broke a bunch of tests. The patch accidentally removed setting back
2254 m_sendingEventToSubview to false.
2256 * page/mac/EventHandlerMac.mm:
2257 (WebCore::EventHandler::passMouseDownEventToWidget):
2258 * platform/Widget.h:
2259 * platform/mac/WidgetMac.mm:
2260 (WebCore::Widget::Widget):
2261 (WebCore::Widget::removeFromSuperview):
2263 * rendering/RenderWidget.cpp:
2264 Change widgetHierarchyUpdateSuspendCount to be an unsigned integer instead of a size_t.
2266 2011-09-22 Sheriff Bot <webkit.review.bot@gmail.com>
2268 Unreviewed, rolling out r95335 and r95645.
2269 http://trac.webkit.org/changeset/95335
2270 http://trac.webkit.org/changeset/95645
2271 https://bugs.webkit.org/show_bug.cgi?id=68649
2273 Wrong fix (Requested by rniwa on #webkit).
2275 * editing/DeleteSelectionCommand.cpp:
2276 (WebCore::DeleteSelectionCommand::saveTypingStyleState):
2277 * editing/EditingStyle.cpp:
2278 (WebCore::EditingStyle::removeStyleAddedByNode):
2279 * editing/EditingStyle.h:
2280 * editing/ReplaceSelectionCommand.cpp:
2281 (WebCore::ReplaceSelectionCommand::removeRedundantStylesAndKeepStyleSpanInline):
2282 * editing/markup.cpp:
2283 (WebCore::StyledMarkupAccumulator::serializeNodes):
2284 (WebCore::ancestorToRetainStructureAndAppearance):
2287 2011-09-22 Ryosuke Niwa <rniwa@webkit.org>
2289 Revert r95673 since it caused hundreds of tests to fail on Leopard / Snow Leopard.
2291 * page/mac/EventHandlerMac.mm:
2292 (WebCore::EventHandler::passMouseDownEventToWidget):
2293 * platform/Widget.h:
2294 * platform/mac/WidgetMac.mm:
2295 (WebCore::Widget::Widget):
2296 (WebCore::Widget::removeFromSuperview):
2297 (WebCore::Widget::beforeMouseDown):
2298 (WebCore::Widget::afterMouseDown):
2299 * rendering/RenderWidget.cpp:
2301 2011-09-22 David Hyatt <hyatt@apple.com>
2303 https://bugs.webkit.org/show_bug.cgi?id=68638
2305 Make RenderFlowThread cache whether or not it has regions of varying widths. This will
2306 be relevant for performance as we begin adding code to do custom block painting and
2307 layout based off regions not having the same width.
2309 Reviewed by Dan Bernstein and Adam Roben.
2311 * rendering/RenderFlowThread.cpp:
2312 (WebCore::RenderFlowThread::RenderFlowThread):
2313 (WebCore::RenderFlowThread::layout):
2314 * rendering/RenderFlowThread.h:
2316 2011-09-22 Anders Carlsson <andersca@apple.com>
2318 FrameView::invalidateRect and FrameView::setFrameRect shouldn't take LayoutRects
2319 https://bugs.webkit.org/show_bug.cgi?id=68639
2321 Reviewed by David Hyatt.
2323 FrameView::invalidateRect and FrameView::setFrameRect override Widget and ScrollView
2324 member functions that take IntRects, and Widget coordinates are currently defined in terms of
2325 IntRects (and probably always should since we want them to be pixel-aligned).
2327 * page/FrameView.cpp:
2328 (WebCore::FrameView::invalidateRect):
2329 (WebCore::FrameView::setFrameRect):
2332 2011-09-22 Tim Horton <timothy_horton@apple.com>
2334 Unreviewed build fix (fixes warning about too many parens).
2336 * rendering/RenderBox.cpp:
2337 (WebCore::RenderBox::computePositionedLogicalWidthReplaced):
2339 2011-09-22 Anders Carlsson <andersca@apple.com>
2341 Widget::frameRect shouldn't be virtual
2342 https://bugs.webkit.org/show_bug.cgi?id=68637
2344 Reviewed by Sam Weinig.
2346 Nobody overrides Widget::frameRect and nobody should.
2348 * platform/Widget.h:
2350 2011-09-22 Sergey Glazunov <serg.glazunov@gmail.com>
2352 Ref protect shaders in V8WebGLRenderingContext::getAttachedShadersCallback
2353 https://bugs.webkit.org/show_bug.cgi?id=68630
2355 Reviewed by Adam Barth.
2357 Test: fast/canvas/webgl/shader-deleted-by-accessor.html
2359 * bindings/js/JSWebGLRenderingContextCustom.cpp:
2360 (WebCore::JSWebGLRenderingContext::getAttachedShaders):
2361 * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
2362 (WebCore::V8WebGLRenderingContext::getAttachedShadersCallback):
2363 * html/canvas/WebGLRenderingContext.cpp:
2364 (WebCore::WebGLRenderingContext::getAttachedShaders):
2365 * html/canvas/WebGLRenderingContext.h:
2367 2011-09-05 Robert Hogan <robert@webkit.org>
2369 CSS 2.1 failure: abspos-non-replaced-width-margin-000, abspos-replaced-width-margin-000
2370 https://bugs.webkit.org/show_bug.cgi?id=47148
2372 Reviewed by David Hyatt.
2374 * rendering/RenderBlock.h:
2375 * rendering/RenderBlockLineLayout.cpp:
2376 (WebCore::RenderBlock::startOffsetForLine): Return offset from right, rather than offset from left + logicalwidth
2377 * rendering/RenderBlockLineLayout.cpp:
2378 (WebCore::RenderBlock::startAlignedOffsetForLine):
2379 Return the correct alignment for RTL blocks too. Looks like neither FF or Opera do this correctly.
2380 Covered by new test left-right-center-inline-alignment-in-ltr-and-rtl-blocks.html
2381 * rendering/RenderBox.cpp:
2382 (WebCore::computeInlineStaticDistance):
2383 - The CSS 2.1 tests now require UAs to use the parent block's direction (rather than the
2384 containing block's direction) when computing static distance. The container block's direction
2385 is still used in the other width and offset related calculations.
2386 - In the context of this function, the logicalRight value is just an element that will be used later to calculate
2387 the correct logicalLeft position for the RTL block. So whereas an LTR block can substract containerBlock->borderLogicalLeft()
2388 in this function directly, an RTL block has to add it here so that will be later subtracted from availableSpace to get
2389 logicalLeft in computePositionedLogicalWidthUsing().
2391 (WebCore::RenderBox::computePositionedLogicalWidth):
2392 - Update comments and use the container block's direction except when calculating the static distance.
2393 - Remove the notion of a quirks mode in this function and for calculating the position of replaced and non-replaced
2394 blocks generally. This is in line with both FF4 and Opera - neither of which have a quirks mode for them.
2395 (WebCore::RenderBox::computePositionedLogicalWidthUsing):
2396 - Update comments and use the container block's direction except when calculating the static distance.
2397 (WebCore::RenderBox::computePositionedLogicalHeight):
2399 (WebCore::RenderBox::computePositionedLogicalWidthReplaced):
2400 - Update comments and use the container block's direction except when calculating the static distance.
2401 - If the containing block is RTL, always assume that values are over-constrained.
2402 (WebCore::RenderBox::computePositionedLogicalHeightReplaced):
2405 2011-09-22 Anders Carlsson <andersca@apple.com>
2407 Get rid of Widget::setBoundsSize
2408 https://bugs.webkit.org/show_bug.cgi?id=68491
2410 Reviewed by Sam Weinig.
2412 This basically reverts http://trac.webkit.org/changeset/79167 and http://trac.webkit.org/changeset/75897
2413 which were added to make zoom gestures work with WebKit1, but since we don't support zoom gestures in WebKit1
2414 anymore, it's better for code cleanliness to get rid of Widget::setBoundsSize and the associated code. While this
2415 will unfortunately break transformed iframes in WebKit1, but Simon says that it's an acceptable tradeoff.
2418 * loader/FrameLoader.cpp:
2419 (WebCore::FrameLoader::open):
2420 * page/FrameView.cpp:
2421 (WebCore::FrameView::create):
2422 * platform/ScrollView.cpp:
2423 (WebCore::ScrollView::visibleContentRect):
2424 (WebCore::ScrollView::updateScrollbars):
2425 (WebCore::ScrollView::wheelEvent):
2426 * platform/ScrollView.h:
2427 * platform/Widget.cpp:
2428 * platform/Widget.h:
2429 (WebCore::Widget::resize):
2430 * platform/chromium/PopupContainer.cpp:
2431 (WebCore::PopupContainer::refresh):
2432 * platform/gtk/ScrollViewGtk.cpp:
2433 (WebCore::ScrollView::visibleContentRect):
2434 * platform/mac/WidgetMac.mm:
2435 (WebCore::Widget::paint):
2436 * rendering/RenderWidget.cpp:
2437 (WebCore::RenderWidget::setWidgetGeometry):
2438 (WebCore::RenderWidget::setWidget):
2439 (WebCore::RenderWidget::updateWidgetPosition):
2440 * rendering/RenderWidget.h:
2442 2011-09-21 David Hyatt <hyatt@apple.com>
2444 https://bugs.webkit.org/show_bug.cgi?id=68590
2446 Floats pushed to next page, column or region don't reposition properly if the amount of
2447 available logical width at the new position changes. Refactor the code so that we can
2448 run the float placement algorithm again when this happens.
2450 Covered by an existing regions test that exposes the issue.
2452 Reviewed by Adam Roben.
2454 * rendering/RenderBlock.cpp:
2455 (WebCore::RenderBlock::computeLogicalLocationForFloat):
2456 (WebCore::RenderBlock::positionNewFloats):
2457 * rendering/RenderBlock.h:
2459 2011-09-22 Leandro Gracia Gil <leandrogracia@chromium.org>
2461 Fire TextInput events on speech input, but not set/add any inputMethod attribute.
2462 https://bugs.webkit.org/show_bug.cgi?id=60451
2464 Reviewed by Ryosuke Niwa.
2466 Introduce code to dispatch TextInput events when text is introduced via
2467 the speech input feature. Handle also the cases where speech input is
2468 started programmatically from the LayoutTestController.
2470 Test: fast/speech/input-ontextinput-event.html
2472 * dom/TextEventInputType.h:
2473 * html/shadow/TextControlInnerElements.cpp:
2474 (WebCore::InputFieldSpeechButtonElement::setRecognitionResult):
2476 2011-09-20 Jason Liu <jason.liu@torchmobile.com.cn>
2478 Reviewed by Simon Fraser.
2480 CSS outline property on a narrow element has rabbit ear artifacts
2481 https://bugs.webkit.org/show_bug.cgi?id=36793
2483 Patch by Jason Liu <jason.liu@torchmobile.com.cn>
2484 Patch updated by Robert Hogan <robert@webkit.org>
2486 Test: fast/css/outline-narrowLine.html
2488 * rendering/RenderInline.cpp:
2489 (WebCore::RenderInline::paintOutlineForLine):
2491 2011-09-22 Wajahat Siddiqui <mdwajahatali.siddiqui@motorola.com>
2493 [GTK]Popup drop-down menu contains extra empty spaces at beginning and
2494 occupies whole screen when items in popup reaches the height of display device.
2495 https://bugs.webkit.org/show_bug.cgi?id=68533
2497 When implementing the GTK+ menu position function, set pushIn to false, which tell
2498 GTK+ not create a menu that is as big as the entire screen.
2500 Reviewed by Martin Robinson.
2502 * platform/gtk/GtkPopupMenu.cpp:
2503 (WebCore::GtkPopupMenu::menuPositionFunction): Set pushIn to false in the menu position function.
2505 2011-09-22 Alpha Lam <hclam@chromium.org>
2507 Define export symbol correctly due to rename of pageScaleFactor to
2510 Not reviewed. Build fix.
2514 2011-09-22 Vsevolod Vlasov <vsevik@chromium.org>
2516 Web Inspector: Console is always scrolled to the top
2517 https://bugs.webkit.org/show_bug.cgi?id=67483
2519 Reviewed by Pavel Feldman.
2521 * inspector/front-end/ConsoleView.js:
2522 (WebInspector.ConsoleView.prototype.wasShown):
2523 (WebInspector.ConsoleView.prototype.storeScrollPositions):
2524 (WebInspector.ConsoleView.prototype.restoreScrollPositions):
2525 (WebInspector.ConsoleView.prototype.onResize):
2526 (WebInspector.ConsoleView.prototype._immediatelyScrollIntoView):
2527 (WebInspector.ConsoleView.prototype._cancelScheduledScrollIntoView):
2528 (WebInspector.ConsoleView.prototype._consoleCleared):
2529 * inspector/front-end/Drawer.js:
2530 (WebInspector.Drawer.prototype.hide):
2531 (WebInspector.Drawer.prototype.resize):
2532 (WebInspector.Drawer.prototype._startStatusBarDragging):
2533 (WebInspector.Drawer.prototype._statusBarDragging):
2534 * inspector/front-end/inspector.js:
2535 (WebInspector.animateStyle):
2536 (WebInspector.animateStyle.forceComplete):
2538 2011-09-22 Alpha Lam <hclam@chromium.org>
2540 https://bugs.webkit.org/show_bug.cgi?id=68081
2541 Fix scroll in page scaling mode.
2543 Reviewed by Simon Fraser.
2545 The following things are done in this patch:
2546 1. Rename Frame::pageScaleFactor() to Frame::frameScaleFactor() to better
2547 reflect its purpose.
2548 2. Frame::frameScaleFactor() returns the scale factor of this frame with
2549 respect to the container. So for the main frame it'll return the scale
2550 factor of the page, inner frames will return 1.0
2551 3. scrollBy(), scrollX() and scrollY() to take into account of the frame
2552 scale factor, causing incorrect coordinates reported to Javascript.
2554 Tests: fast/events/scale-and-scroll-body.html
2555 fast/events/scale-and-scroll-iframe-body.html
2556 fast/events/scale-and-scroll-iframe-window.html
2557 fast/events/scale-and-scroll-window.html
2559 * html/HTMLBodyElement.cpp:
2560 (WebCore::adjustForZoom):
2561 (WebCore::HTMLBodyElement::setScrollLeft):
2562 (WebCore::HTMLBodyElement::setScrollTop):
2563 * loader/HistoryController.cpp:
2564 (WebCore::HistoryController::saveScrollPositionAndViewStateToItem):
2565 * page/DOMWindow.cpp:
2566 (WebCore::DOMWindow::scrollX):
2567 (WebCore::DOMWindow::scrollY):
2568 (WebCore::DOMWindow::scrollTo):
2570 (WebCore::Frame::frameScaleFactor): Return page's scale factor if this is
2571 main frame, otherwise 1.0
2573 * page/FrameView.cpp:
2574 (WebCore::FrameView::applyOverflowToViewport):
2575 (WebCore::FrameView::scrollXForFixedPosition):
2576 (WebCore::FrameView::scrollYForFixedPosition):
2578 2011-09-22 Andreas Kling <kling@webkit.org>
2580 CSS: Implement 'font' property in CSSComputedStyle.
2581 https://bugs.webkit.org/show_bug.cgi?id=66666
2583 Reviewed by Antti Koivisto.
2585 Test: fast/css/getComputedStyle/computed-style-font.html
2587 * css/CSSComputedStyleDeclaration.cpp:
2588 (WebCore::fontFamilyFromStyle): Factored out of getPropertyCSSValue().
2589 This function will always return a CSSValueList, as opposed to the previous
2590 implementation which would return a CSSPrimitiveValue if there was only one family.
2591 getCSSPropertyValue() will return the first element of the list for 1-element lists
2592 to preserve the current behavior of getPropertyCSSValue('font-family').
2594 (WebCore::lineHeightFromStyle): Factored out of getPropertyCSSValue().
2595 (WebCore::fontSizeFromStyle): Ditto.
2596 (WebCore::fontStyleFromStyle): Ditto.
2597 (WebCore::fontVariantFromStyle): Ditto.
2598 (WebCore::fontWeightFromStyle): Ditto.
2600 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Added
2601 implementation of the computed 'font' property (CSSPropertyFont.)
2603 2011-09-22 Jesus Sanchez-Palencia <jesus.palencia@openbossa.org>
2605 [Qt] Redirection overflow errors have wrong error domain
2606 https://bugs.webkit.org/show_bug.cgi?id=68612
2608 Reviewed by Andreas Kling.
2610 Redirection overflow currently puts the URL hostname in the errorDomain field.
2611 Now redirection overflow errors will be classified as "HTTP" errors.
2613 * platform/network/qt/QNetworkReplyHandler.cpp:
2614 (WebCore::QNetworkReplyHandler::redirect):
2616 2011-09-22 James Robinson <jamesr@chromium.org>
2618 Unreviewed, rolling out r95699.
2619 http://trac.webkit.org/changeset/95699
2620 https://bugs.webkit.org/show_bug.cgi?id=67417
2622 Makes many chromium compositor tests crash
2624 * platform/CrossThreadCopier.h:
2625 * platform/graphics/chromium/LayerRendererChromium.cpp:
2626 (WebCore::LayerRendererChromium::~LayerRendererChromium):
2627 * platform/graphics/chromium/cc/CCHeadsUpDisplay.cpp:
2628 (WebCore::CCHeadsUpDisplay::enabled):
2629 * platform/graphics/chromium/cc/CCLayerImpl.cpp:
2630 (WebCore::CCLayerImpl::CCLayerImpl):
2631 (WebCore::CCLayerImpl::~CCLayerImpl):
2632 * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
2633 (WebCore::CCLayerTreeHost::CCLayerTreeHost):
2634 (WebCore::CCLayerTreeHost::commitTo):
2635 (WebCore::CCLayerTreeHost::setNeedsRedraw):
2636 * platform/graphics/chromium/cc/CCLayerTreeHost.h:
2637 (WebCore::CCSettings::CCSettings):
2638 * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
2639 (WebCore::CCLayerTreeHostImpl::CCLayerTreeHostImpl):
2640 (WebCore::CCLayerTreeHostImpl::~CCLayerTreeHostImpl):
2641 * platform/graphics/chromium/cc/CCProxy.h:
2642 * platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
2643 (WebCore::CCSingleThreadProxy::finishAllRendering):
2644 (WebCore::CCSingleThreadProxy::setNeedsCommit):
2645 (WebCore::CCSingleThreadProxy::commitIfNeeded):
2646 * platform/graphics/chromium/cc/CCThreadProxy.cpp:
2647 (WebCore::CCThreadProxy::CCThreadProxy):
2648 (WebCore::CCThreadProxy::~CCThreadProxy):
2649 (WebCore::CCThreadProxy::compositeAndReadback):
2650 (WebCore::CCThreadProxy::finishAllRendering):
2651 (WebCore::CCThreadProxy::isStarted):
2652 (WebCore::CCThreadProxy::initializeLayerRenderer):
2653 (WebCore::CCThreadProxy::setNeedsCommit):
2654 (WebCore::CCThreadProxy::setNeedsCommitAndRedraw):
2655 (WebCore::CCThreadProxy::setNeedsRedraw):
2656 (WebCore::CCThreadProxy::start):
2657 (WebCore::CCThreadProxy::stop):
2658 (WebCore::CCThreadProxy::beginFrameAndCommitOnCCThread):
2659 (WebCore::CCThreadProxy::beginFrameAndCommit):
2660 (WebCore::CCThreadProxy::commitOnCCThread):
2661 (WebCore::CCThreadProxy::drawLayersOnCCThread):
2662 (WebCore::CCThreadProxy::setNeedsCommitOnCCThread):
2663 (WebCore::CCThreadProxy::setNeedsCommitAndRedrawOnCCThread):
2664 (WebCore::CCThreadProxy::setNeedsRedrawOnCCThread):
2665 * platform/graphics/chromium/cc/CCThreadProxy.h:
2667 2011-09-22 Nat Duca <nduca@chromium.org>
2669 [chromium] Make CCThreadProxy draw
2670 https://bugs.webkit.org/show_bug.cgi?id=67417
2672 Update the CCThreadProxy to correctly implement the CCProxy
2673 interface, do all the right committing and updating steps, and
2674 draw a picture on the screen.
2676 Reviewed by James Robinson.
2678 * platform/graphics/IntRect.h:
2679 * platform/graphics/chromium/LayerRendererChromium.cpp:
2680 (WebCore::LayerRendererChromium::~LayerRendererChromium):
2681 * platform/graphics/chromium/cc/CCHeadsUpDisplay.cpp:
2682 (WebCore::CCHeadsUpDisplay::enabled):
2683 * platform/graphics/chromium/cc/CCLayerImpl.cpp:
2684 (WebCore::CCLayerImpl::CCLayerImpl):
2685 (WebCore::CCLayerImpl::~CCLayerImpl):
2686 * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
2687 (WebCore::CCLayerTreeHost::CCLayerTreeHost):
2688 (WebCore::CCLayerTreeHost::commitTo):
2689 (WebCore::CCLayerTreeHost::commitComplete):
2690 (WebCore::CCLayerTreeHost::setNeedsRedraw):
2691 * platform/graphics/chromium/cc/CCLayerTreeHost.h:
2692 * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
2693 (WebCore::CCLayerTreeHostImpl::CCLayerTreeHostImpl):
2694 (WebCore::CCLayerTreeHostImpl::~CCLayerTreeHostImpl):
2695 * platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
2696 (WebCore::CCSingleThreadProxy::finishAllRendering):
2697 (WebCore::CCSingleThreadProxy::setNeedsCommit):
2698 (WebCore::CCSingleThreadProxy::commitIfNeeded):
2699 * platform/graphics/chromium/cc/CCThreadProxy.cpp:
2700 (WebCore::CCThreadProxy::CCThreadProxy):
2701 (WebCore::CCThreadProxy::~CCThreadProxy):
2702 (WebCore::CCThreadProxy::compositeAndReadback):
2703 (WebCore::CCThreadProxy::drawLayersAndReadbackOnCCThread):
2704 (WebCore::CCThreadProxy::finishAllRendering):
2705 (WebCore::CCThreadProxy::isStarted):
2706 (WebCore::CCThreadProxy::setNeedsCommit):
2707 (WebCore::CCThreadProxy::setNeedsCommitAndRedraw):
2708 (WebCore::CCThreadProxy::setNeedsRedraw):
2709 (WebCore::CCThreadProxy::start):
2710 (WebCore::CCThreadProxy::stop):
2711 (WebCore::CCThreadProxy::finishAllRenderingOnCCThread):
2712 (WebCore::CCThreadProxy::createBeginFrameAndCommitTaskOnCCThread):
2713 (WebCore::CCThreadProxy::beginFrameAndCommit):
2714 (WebCore::CCThreadProxy::commitOnCCThread):
2715 (WebCore::CCThreadProxy::scheduleDrawTaskOnCCThread):
2716 (WebCore::CCThreadProxy::drawLayersAndPresentOnCCThread):
2717 (WebCore::CCThreadProxy::drawLayersOnCCThread):
2718 (WebCore::CCThreadProxy::updateSchedulerStateOnCCThread):
2719 * platform/graphics/chromium/cc/CCThreadProxy.h:
2721 2011-09-21 Beth Dakin <bdakin@apple.com>
2723 https://bugs.webkit.org/show_bug.cgi?id=67415
2724 Text drawn via -webkit-background-clip:text is blurry at device scale factors >1.0
2726 <rdar://problem/10060379>
2728 Reviewed by Darin Adler.
2730 New helper function RenderBoxModelObject scales the mask image by the
2731 deviceScaleFactor to get an image of the appropriate resolution. It also scales
2732 the image's GraphicsContext so that the clip is set up on the same scale. Back in
2733 paintFillLayerExtended() we still clip the image to the original maskRect to get
2734 everything scaled back to the appropriate size.
2735 * rendering/RenderBoxModelObject.cpp:
2736 (WebCore::createDeviceScaledImageBuffer):
2737 (WebCore::RenderBoxModelObject::paintFillLayerExtended):
2739 Make the deviceScaleFactor convenience function just a namespace-level function in
2740 Page rather than a static member or Page.
2742 (WebCore::deviceScaleFactor):
2745 Pre-existing callers of Page::deviceScaleFactor(Frame*) must now use
2746 WebCore::deviceScaleFactor(Frame*)
2747 * editing/DeleteButtonController.cpp:
2748 (WebCore::DeleteButtonController::createDeletionUI):
2749 * rendering/RenderImage.cpp:
2750 (WebCore::RenderImage::imageSizeForError):
2751 (WebCore::RenderImage::paintReplaced):
2752 * rendering/RenderLayer.cpp:
2753 (WebCore::RenderLayer::drawPlatformResizerImage):
2755 2011-09-21 Tim Horton <timothy_horton@apple.com>
2757 [CG] ImageBufferData::getData has an invariant comparison in the inner part of a loop which doesn't get optimized out
2758 https://bugs.webkit.org/show_bug.cgi?id=68588
2759 <rdar://problem/10164955>
2761 Reviewed by Simon Fraser.
2763 Factor the unmultiplied check out of the inner loop, resulting in a
2764 speed bump in ImageBufferData::getData.
2766 No new tests, performance improvement.
2768 * platform/graphics/cg/ImageBufferDataCG.cpp:
2769 (WebCore::ImageBufferData::getData):
2771 2011-09-21 Sameer Patil <mkrp87@motorola.com>
2773 :hover selector fails when hovering over a child select element with size attribute
2774 https://bugs.webkit.org/show_bug.cgi?id=67594
2776 Reviewed by Darin Adler.
2778 Test: fast/css/hover-affects-ancestor.html
2780 This patch addresses the problem of deactivation of the ancestor element :hover rules
2781 when hovered its contained elements.
2783 * rendering/RenderLayer.cpp:
2784 (WebCore::RenderLayer::updateHoverActiveState):
2786 2011-09-21 Sergey Glazunov <serg.glazunov@gmail.com>
2788 [Chromium] Protect message ports from being deleted in V8MessageEvent::portsAccessorGetter
2789 https://bugs.webkit.org/show_bug.cgi?id=68584
2791 Reviewed by Adam Barth.
2793 Test: fast/dom/message-port-deleted-by-accessor.html
2795 * bindings/v8/custom/V8MessageEventCustom.cpp:
2796 (WebCore::V8MessageEvent::portsAccessorGetter):
2798 2011-09-21 Anders Carlsson <andersca@apple.com>
2800 Add back protection against the NSView going away while handling mouseDown
2801 https://bugs.webkit.org/show_bug.cgi?id=68585
2803 Reviewed by Darin Adler.
2805 Add calls to RenderWidget::suspendWidgetHierarchyUpdates() and RenderWidget::resumeWidgetHierarchyUpdates(),
2806 as a followup fix to https://bugs.webkit.org/show_bug.cgi?id=68570.
2808 * page/mac/EventHandlerMac.mm:
2809 (WebCore::EventHandler::passMouseDownEventToWidget):
2811 2011-09-21 Julien Chaffraix <jchaffraix@webkit.org>
2813 Crash in RenderBox::paintMaskImages when GraphicsContext's painting is disabled
2814 https://bugs.webkit.org/show_bug.cgi?id=68133
2816 Reviewed by Darin Adler.
2818 Tests: fast/css/webkit-mask-crash-fieldset-legend.html
2819 fast/css/webkit-mask-crash-figure.html
2820 fast/css/webkit-mask-crash-table.html
2821 fast/css/webkit-mask-crash-td-2.html
2822 fast/css/webkit-mask-crash-td.html
2824 GraphicsContext::getCTM crashes if called with a GraphicsContext that has painting
2825 disabled. RenderBox::paintMaskImages would thus crash if called in this condition.
2827 This change just modifies the different GraphicsContext::getCTM method to bail early
2828 if painting is disabled on the GraphicsContext. The rest of the change is exposing
2829 paintControlTints that exposes this.
2831 * WebCore.exp.in: Added symbols of the newly export window.internals function.
2833 * page/FrameView.cpp:
2834 (WebCore::FrameView::updateControlTints): Split this function in 2 so that
2835 I can expose the internal paintControlTints.
2837 (WebCore::FrameView::paintControlTints):
2838 This is the one exposed to Internals as we want to be testable regardless of
2839 whether the platform supports control tints.
2841 * page/FrameView.h: Added paintControlTints.
2843 * testing/Internals.cpp:
2844 (WebCore::Internals::paintControlTints):
2845 * testing/Internals.h:
2846 * testing/Internals.idl:
2847 Added a way to force a fake painting so that we can easily reproduce the bugs.
2849 * platform/graphics/cairo/GraphicsContextCairo.cpp:
2850 (WebCore::GraphicsContext::getCTM):
2851 * platform/graphics/cg/GraphicsContextCG.cpp:
2852 (WebCore::GraphicsContext::getCTM):
2853 * platform/graphics/qt/GraphicsContextQt.cpp:
2854 (WebCore::GraphicsContext::getCTM):
2855 * platform/graphics/skia/GraphicsContextSkia.cpp:
2856 (WebCore::GraphicsContext::getCTM):
2857 * platform/graphics/wince/GraphicsContextWinCE.cpp:
2858 (WebCore::GraphicsContext::getCTM):
2859 * platform/graphics/wx/GraphicsContextWx.cpp:
2860 (WebCore::GraphicsContext::getCTM):
2861 Fixed all our back-end to exit early if painting is disabled.
2863 2011-09-19 Jer Noble <jer.noble@apple.com>
2865 Add settings to control the availability of the Web Audio API to WebKit and WebKit2.
2866 https://bugs.webkit.org/show_bug.cgi?id=68382
2868 Reviewed by Darin Adler.
2870 Only create a AudioContext object if the Web Audio feature is runtime-enabled in Settings.
2872 No new tests, as this feature is not yet enabled by default.
2874 * bindings/js/JSDOMWindowCustom.cpp:
2875 (WebCore::JSDOMWindow::webkitAudioContext):
2877 2011-09-21 Anders Carlsson <andersca@apple.com>
2879 Remove checks for Leopard-only Objective-C APIs
2880 https://bugs.webkit.org/show_bug.cgi?id=68579
2882 Reviewed by Sam Weinig.
2884 We can always assume that OBJC_API_VERSION is at least 2, it's been 2 since Leopard.
2886 * bridge/objc/objc_class.mm:
2887 (JSC::Bindings::ObjcClass::methodsNamed):
2888 (JSC::Bindings::ObjcClass::fieldNamed):
2889 * bridge/objc/objc_instance.mm:
2890 (allocateAutoReleasePool):
2891 * bridge/objc/objc_runtime.mm:
2892 (JSC::Bindings::ObjcField::ObjcField):
2893 * page/mac/EventHandlerMac.mm:
2895 2011-09-21 Anders Carlsson <andersca@apple.com>
2897 Remove Widget::beforeMouseDown and Widget::afterMouseDown
2898 https://bugs.webkit.org/show_bug.cgi?id=68570
2900 Reviewed by Sam Weinig.
2902 These two member functions were originally added to avoid crashes due to removing NSViews while they were
2903 being tracked by AppKit. Since they were added, we've moved away from NSViews for form controls, and the bugs in
2904 AppKit that lead to crashes have been fixed.
2906 * page/mac/EventHandlerMac.mm:
2907 (WebCore::EventHandler::passMouseDownEventToWidget):
2908 * platform/Widget.h:
2909 * platform/mac/WidgetMac.mm:
2910 (WebCore::Widget::Widget):
2911 (WebCore::Widget::removeFromSuperview):
2913 * rendering/RenderWidget.cpp:
2914 Change widgetHierarchyUpdateSuspendCount to be an unsigned integer instead of a size_t.
2916 2011-09-21 Abhishek Arya <inferno@chromium.org>
2918 Not use anonymousContainer on beforeChild calculation
2919 and let later code handle it. Fix style update on block-level
2921 https://bugs.webkit.org/show_bug.cgi?id=67656
2923 Reviewed by David Hyatt.
2925 Test: fast/table/quote-text-around-iframe.html
2927 * rendering/RenderTable.cpp:
2928 (WebCore::RenderTable::addChild):
2929 * rendering/RenderTableCell.cpp:
2930 (WebCore::RenderTableCell::styleDidChange):
2931 * rendering/RenderTableRow.cpp:
2932 (WebCore::RenderTableRow::addChild):
2933 * rendering/RenderObject.cpp:
2934 (WebCore::RenderObject::propagateStyleToAnonymousChildren):
2936 2011-09-21 David Hyatt <hyatt@apple.com>
2938 https://bugs.webkit.org/show_bug.cgi?id=68562
2940 Pagination struts don't update properly when collapsing margin estimates are wrong.
2942 Refactor the pagination adjustments that happen during block layout to allow for
2943 a 3-pass layout system instead of just a 2-pass layout system. The basic idea is
2944 to come up with an estimate that includes collapsing, clearance and pagination.
2946 If the estimate only with collapsing and clearance was wrong, then we lay out again
2947 using the correct collapsing margin values and clearance before applying pagination breaks.
2949 After this second layout, the normal code that runs when unpaginated compares estimates
2950 and lays out a third time to account for adjustments as a result of pagination movement.
2952 Reviewed by Sam Weinig.
2954 Added fast/regions/text-regions-split-small-pagination.html
2956 * rendering/RenderBlock.cpp:
2957 (WebCore::RenderBlock::estimateLogicalTopPosition):
2958 (WebCore::RenderBlock::layoutBlockChild):
2959 (WebCore::RenderBlock::adjustBlockChildForPagination):
2960 * rendering/RenderBlock.h:
2962 2011-09-21 James Robinson <jamesr@chromium.org>
2964 [chromium] SharedGraphicsContext3D's context should not be destroyed during atexit
2965 https://bugs.webkit.org/show_bug.cgi?id=68558
2967 Reviewed by Stephen White.
2969 The SharedGraphicsContext3D's internal context is lazily created and then leaked intentionally, but since the
2970 last ref is in a function-static RefPtr<> it ends up being destroyed at process exit time. This is bad, since
2971 by the time we get this far in process shutdown we can't actually cleanly run the destruction logic and we
2972 crash. Since we are explicitly leaking this for the lifetime of the process there's no point in keeping it in a
2975 * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
2976 (WebCore::SharedGraphicsContext3D::get):
2978 2011-09-21 Sergey Glazunov <serg.glazunov@gmail.com>
2980 [Chromium] Protect the Frame in V8HTMLDocument::openCallback
2981 https://bugs.webkit.org/show_bug.cgi?id=68555
2983 Reviewed by Nate Chapin.
2985 Test: fast/dom/frame-deleted-in-document-open.html
2987 * bindings/v8/custom/V8HTMLDocumentCustom.cpp:
2988 (WebCore::V8HTMLDocument::openCallback):
2990 2011-09-21 Adam Klein <adamk@chromium.org>
2992 Clean up CSS Counter code
2993 https://bugs.webkit.org/show_bug.cgi?id=68492
2995 Reviewed by Tony Chang.
2997 Several cleanups/fixes:
2998 - Make Counter::listStyle() return the actual list style string,
2999 rather than empty string.
3000 - Handle a specified list style of "none" correctly when generating
3001 cssText and in Counter::listStyle().
3002 - Use StringBuilder when generating cssText.
3004 Test: fast/css/counters/getCounterValue.html
3006 * css/CSSParser.cpp:
3007 (WebCore::CSSParser::parseCounterContent):
3008 Simplify processing (moving conversion to CSSStyleSelector),
3009 pass a CSS_IDENT as the listStyle to Counter::create.
3010 * css/CSSPrimitiveValue.cpp:
3011 (WebCore::CSSPrimitiveValue::cssText):
3013 * css/CSSStyleSelector.cpp:
3014 (WebCore::CSSStyleSelector::applyProperty):
3015 Convert from a CSS_IDENT to an EListStyleType.
3017 (WebCore::Counter::listStyleIdent):
3018 Renamed from listStyleNumber to match its new functionality.
3020 2011-09-21 Chris Marrin <cmarrin@apple.com>
3022 Check in WebCore.vcproj file unchanged but written like MSDev likes it
3026 * WebCode.vcproj/WebCore.vcproj:
3028 2011-09-21 Stephen White <senorblanco@chromium.org>
3030 [chromium] Optimize ImageBuffer constructor when accelerated
3031 https://bugs.webkit.org/show_bug.cgi?id=68501
3033 If the accelerated rendering mode is passed in to ImageBuffer, instead
3034 of creating a bitmap PlatformCanvas and subsequently replacing its
3035 device with an SkGpuDevice, create an SkCanvas and SkGpuDevice first,
3036 and fall back to raster creation only failure. This saves on system
3037 RAM for the backing store (and possibly GDI resources).
3039 Reviewed by James Robinson.
3041 Covered by existing tests.
3043 * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
3044 (WebCore::SharedGraphicsContext3D::get):
3045 * platform/graphics/gpu/SharedGraphicsContext3D.h:
3046 Rename "SharedGraphicsContext3D::create()" to "get()" to more
3047 accurately reflect its function.
3048 * platform/graphics/skia/ImageBufferSkia.cpp:
3049 (WebCore::createAcceleratedCanvas):
3050 Refactor creation of accelerated ImageBuffer.
3051 (WebCore::ImageBuffer::ImageBuffer):
3052 Attempt creation of accelerated ImageBuffer first, and only fall back
3053 to bitmap-backed canvas creation if it fails.
3055 2011-09-21 Dan Bernstein <mitz@apple.com>
3057 WebCore part of: Prevent the WebKit frameworks from defining inappropriately-named Objective-C classes
3058 https://bugs.webkit.org/show_bug.cgi?id=68451
3060 Reviewed by Darin Adler.
3062 * WebCore.xcodeproj/project.pbxproj: Added a script build phase that invokes
3063 check-for-inappropriate-objc-class-names, allowing only class names prefixed with "DOM" or "Web".
3065 2011-09-21 Dan Bernstein <mitz@apple.com>
3067 <rdar://problem/9768483> REGRESSION: Crash in RenderBlock::removeFloatingObjectsBelow()
3068 https://bugs.webkit.org/show_bug.cgi?id=68550
3070 Reviewed by Darin Adler.
3072 Test: fast/multicol/null-lastFloat-in-removeFloatingObjectsBelow.html
3074 * rendering/RenderBlock.cpp:
3075 (WebCore::RenderBlock::removeFloatingObjectsBelow): Break out of the while() loop when the
3076 floating object set is empty, which can happen if there were no floats on previous lines
3077 (in which case, lastFloat is 0).
3079 2011-09-21 ChangSeok Oh <shivamidow@gmail.com>
3081 [GTK] Fix build break when enabling webgl on r95593
3082 https://bugs.webkit.org/show_bug.cgi?id=68502
3084 Reviewed by Martin Robinson.
3086 Add PassOwnPtr.h to GC3DPrivate.h and remove useless one from GC3DGtk.cpp & GC3DPrivate.cpp
3090 * platform/graphics/gtk/GraphicsContext3DGtk.cpp:
3091 * platform/graphics/gtk/GraphicsContext3DPrivate.cpp:
3092 * platform/graphics/gtk/GraphicsContext3DPrivate.h:
3094 2011-09-21 Vsevolod Vlasov <vsevik@chromium.org>
3096 Web Inspector: clear resource agent resource cache upon resource agent's disable.
3097 https://bugs.webkit.org/show_bug.cgi?id=67995
3099 Reviewed by Pavel Feldman.
3101 Test: http/tests/inspector/network/network-disabling-check-no-memory-leak.html
3103 * inspector/InspectorResourceAgent.cpp:
3104 (WebCore::InspectorResourceAgent::disable):
3106 2011-09-21 David Hyatt <hyatt@apple.com>
3108 https://bugs.webkit.org/show_bug.cgi?id=68543
3110 Make sure that when regions change dimensions we recompute pagination slices.
3112 Reviewed by Simon Fraser.
3114 Added new tests in fast/regions.
3116 * rendering/LayoutState.cpp:
3117 (WebCore::LayoutState::LayoutState):
3118 * rendering/LayoutState.h:
3119 * rendering/RenderFlowThread.cpp:
3120 (WebCore::RenderFlowThread::layout):
3121 (WebCore::RenderFlowThread::renderRegionForLine):
3122 (WebCore::RenderFlowThread::regionLogicalWidthForLine):
3123 * rendering/RenderRegion.cpp:
3124 (WebCore::RenderRegion::layout):
3125 * rendering/RenderView.cpp:
3126 (WebCore::RenderView::pushLayoutState):
3127 * rendering/RenderView.h:
3128 (WebCore::LayoutStateMaintainer::LayoutStateMaintainer):
3129 (WebCore::LayoutStateMaintainer::push):
3131 2011-09-21 Xianzhu Wang <wangxianzhu@chromium.org>
3133 Ensure TestWebKitAPI works on mac, win, chromium-mac and chromium-linux
3134 https://bugs.webkit.org/show_bug.cgi?id=68206
3136 Reviewed by Tony Chang.
3138 Added two new wtf headers into ForwardingHeaders/wtf to make
3139 #include <wtf/...h> cross-platform.
3140 No new tests needed.
3142 * ForwardingHeaders/wtf/MetaAllocator.h: Added.
3143 * ForwardingHeaders/wtf/RedBlackTree.h: Added.
3145 2011-09-21 David Delaune <david.delaune@googlemail.com>
3147 [WinCairo] IconDatabase::defaultIcon always fails for non-CAN_THEME_URL_ICON builds.
3148 https://bugs.webkit.org/show_bug.cgi?id=67469
3150 Reviewed by Brent Fulgham.
3152 No new functionality added in this change.
3154 * loader/icon/IconDatabase.cpp: defining CAN_THEME_URL_ICON for the WIN_CAIRO
3156 2011-09-20 Ryosuke Niwa <rniwa@webkit.org>
3158 Span element gets produced using backspace/delete to merge header with paragraph
3159 https://bugs.webkit.org/show_bug.cgi?id=68413
3161 Reviewed by Darin Adler.
3163 Add p element to the list of elements to retain appearance. Also modified removeStyleFromNode
3164 (and renamed to removeStyleFromRules) not to remove inline style declarations because
3165 inline styles need to stay on copy.
3167 Test: editing/deleting/merge-paragraph-from-p-with-style.html
3169 * editing/DeleteSelectionCommand.cpp:
3170 (WebCore::DeleteSelectionCommand::saveTypingStyleState):
3171 * editing/EditingStyle.cpp:
3172 (WebCore::EditingStyle::removeStyleFromRules): Renamed from removeStyleFromNode.
3173 * editing/EditingStyle.h:
3174 * editing/markup.cpp:
3175 (WebCore::isBlockNodeToRetainAppearance):
3176 (WebCore::StyledMarkupAccumulator::serializeNodes):
3178 2011-09-21 Alice Boxhall <aboxhall@chromium.org>
3180 Report AXValueChanged when value changes in element with role=textbox.
3181 https://bugs.webkit.org/show_bug.cgi?id=68201
3183 Reviewed by Chris Fleizach.
3185 Test: platform/mac/accessibility/textbox-role-reports-notifications.html
3187 * accessibility/AccessibilityObject.cpp:
3188 (WebCore::AccessibilityObject::isARIATextControl):
3189 * accessibility/AccessibilityObject.h:
3190 * accessibility/AccessibilityRenderObject.cpp:
3191 (WebCore::AccessibilityRenderObject::contentChanged):
3192 (WebCore::AccessibilityRenderObject::childrenChanged):
3194 2011-09-21 Pavel Feldman <pfeldman@google.com>
3196 Web Inspector: introduce Page.enable and Page.disable
3197 https://bugs.webkit.org/show_bug.cgi?id=68530
3199 Otherwise protocol is violating the contract of not sending
3200 notifications by default.
3202 Reviewed by Yury Semikhatsky.
3204 * inspector/Inspector.json:
3206 2011-09-21 Pavel Feldman <pfeldman@google.com>
3208 Web Inspector: add minimal error handling to the DOM breakpoints.
3209 https://bugs.webkit.org/show_bug.cgi?id=68537
3211 Reviewed by Yury Semikhatsky.
3213 * inspector/InspectorDOMAgent.h:
3214 * inspector/InspectorDOMDebuggerAgent.cpp:
3215 (WebCore::domTypeForName):
3216 (WebCore::InspectorDOMDebuggerAgent::setDOMBreakpoint):
3217 (WebCore::InspectorDOMDebuggerAgent::removeDOMBreakpoint):
3219 2011-09-21 Ilya Tikhonovsky <loislo@chromium.org>
3221 Web Inspector: make WebInspector a bit more timeline friendly.
3222 https://bugs.webkit.org/show_bug.cgi?id=68534
3224 I found that the maximum captured stack frame depth tracked by timeline is not
3225 very convenient because the average depth of call stack considerably more than five.
3226 Another useful trick is console.timeStamp for all backend calls.
3228 Reviewed by Yury Semikhatsky.
3230 * inspector/CodeGeneratorInspector.pm:
3231 * inspector/front-end/TimelinePanel.js:
3232 (WebInspector.TimelinePanel.prototype._toggleTimelineButtonClicked):
3234 2011-09-21 Jesus Sanchez-Palencia <jesus.palencia@openbossa.org>
3236 [Qt][WK2] Implement Download support in WebProcess
3237 https://bugs.webkit.org/show_bug.cgi?id=68153
3239 Reviewed by Andreas Kling.
3241 Refactored QNetworkReplyHandler::finish() in order to add
3242 and use the static function QNetworkReplyHandler::errorForReply().
3243 This will be used by our Download implementation in WebKit2 (WebProcess)
3244 when handling ResourceError.
3246 * platform/network/qt/QNetworkReplyHandler.cpp:
3247 (WebCore::QNetworkReplyHandler::finish):
3248 (WebCore::QNetworkReplyHandler::errorForReply):
3249 * platform/network/qt/QNetworkReplyHandler.h:
3250 * platform/network/qt/ResourceRequest.h:
3252 2011-09-21 Pavel Feldman <pfeldman@google.com>
3254 Web Inspector: paint box model colors in Metrics sidebar at all times, do not draw box outlines.
3255 https://bugs.webkit.org/show_bug.cgi?id=68240
3257 Today we paint backgrounds in Metrics box model on hover only - should be painted at all
3258 times for the reference. Outlining boxes is highlight is wrong since outlines are outside
3259 the corresponding box regions. We've seen few reports on that + Firebug does not do borders
3262 Reviewed by Yury Semikhatsky.
3264 * inspector/DOMNodeHighlighter.cpp:
3265 * inspector/DOMNodeHighlighter.h:
3266 * inspector/Inspector.json:
3267 * inspector/InspectorDOMAgent.cpp:
3268 (WebCore::InspectorDOMAgent::setHighlightDataFromConfig):
3269 * inspector/front-end/Color.js:
3270 * inspector/front-end/MetricsSidebarPane.js:
3271 (WebInspector.MetricsSidebarPane.prototype._highlightDOMNode):
3272 (WebInspector.MetricsSidebarPane.prototype._updateMetrics):
3273 * inspector/front-end/inspector.css:
3275 * inspector/front-end/inspector.js:
3276 (WebInspector.buildHighlightConfig):
3278 2011-09-21 Andreas Kling <kling@webkit.org>
3280 Protect against misuse of EventListenerIterator.
3281 https://bugs.webkit.org/show_bug.cgi?id=68364
3283 Reviewed by Darin Adler.
3285 In debug mode, keep track of the number of active EventListenerIterators
3286 on an EventListenerMap, and assert that there are no iterators when the
3287 map is being modified.
3289 * dom/EventListenerMap.cpp:
3290 (WebCore::EventListenerMap::EventListenerMap):
3291 (WebCore::EventListenerMap::clear):
3292 (WebCore::EventListenerMap::add):
3293 (WebCore::EventListenerMap::remove):
3294 (WebCore::EventListenerMap::find):
3295 (WebCore::EventListenerMap::removeFirstEventListenerCreatedFromMarkup):
3296 (WebCore::EventListenerMap::copyEventListenersNotCreatedFromMarkupToTarget):
3297 (WebCore::EventListenerIterator::EventListenerIterator):
3298 (WebCore::EventListenerIterator::~EventListenerIterator):
3299 * dom/EventListenerMap.h:
3301 2011-09-21 Pavel Feldman <pfeldman@google.com>
3303 Web Inspector: minor fixes in the DOM domain of the protocol.
3304 https://bugs.webkit.org/show_bug.cgi?id=68517
3306 Reviewed by Yury Semikhatsky.
3308 * inspector/Inspector.json:
3309 * inspector/InspectorDOMAgent.cpp:
3310 (WebCore::InspectorDOMAgent::setAttributesAsText):
3311 * inspector/InspectorDOMAgent.h:
3312 * inspector/front-end/DOMAgent.js:
3313 (WebInspector.DOMNode.prototype.setAttribute):
3315 2011-09-16 Pavel Feldman <pfeldman@google.com>
3317 Web Inspector: limit the use of "Resource" term in the protocol.
3318 https://bugs.webkit.org/show_bug.cgi?id=68250
3320 Reviewed by Yury Semikhatsky.
3322 * inspector/Inspector.json:
3323 * inspector/InspectorResourceAgent.cpp:
3324 (WebCore::InspectorResourceAgent::markResourceAsCached):
3325 (WebCore::InspectorResourceAgent::didLoadResourceFromMemoryCache):
3326 (WebCore::InspectorResourceAgent::setExtraHTTPHeaders):
3327 (WebCore::InspectorResourceAgent::getResponseBody):
3328 * inspector/InspectorResourceAgent.h:
3329 * inspector/front-end/ExtensionServer.js:
3330 (WebInspector.ExtensionServer.prototype._onAddRequestHeaders):
3331 * inspector/front-end/NetworkManager.js:
3332 (WebInspector.NetworkManager.prototype.requestContent):
3333 (WebInspector.NetworkDispatcher.prototype.requestServedFromCache):
3334 (WebInspector.NetworkDispatcher.prototype.requestServedFromMemoryCache):
3336 2011-09-21 Sheriff Bot <webkit.review.bot@gmail.com>
3338 Unreviewed, rolling out r95608.
3339 http://trac.webkit.org/changeset/95608
3340 https://bugs.webkit.org/show_bug.cgi?id=68521
3342 breaks GTK and Windows builds. Please check EWS next time.
3343 (Requested by philn-tp on #webkit).
3345 * html/HTMLBodyElement.cpp:
3346 (WebCore::adjustForZoom):
3347 (WebCore::HTMLBodyElement::setScrollLeft):
3348 (WebCore::HTMLBodyElement::setScrollTop):
3349 * loader/HistoryController.cpp:
3350 (WebCore::HistoryController::saveScrollPositionAndViewStateToItem):
3351 * page/DOMWindow.cpp:
3352 (WebCore::DOMWindow::scrollX):
3353 (WebCore::DOMWindow::scrollY):
3354 (WebCore::DOMWindow::scrollTo):
3356 (WebCore::Frame::pageScaleFactor):
3358 * page/FrameView.cpp:
3359 (WebCore::FrameView::applyOverflowToViewport):
3360 (WebCore::FrameView::scrollXForFixedPosition):
3361 (WebCore::FrameView::scrollYForFixedPosition):
3363 2011-09-21 Pavel Feldman <pfeldman@google.com>
3365 Web Inspector: console panel's scroller is not properly aligned.
3366 https://bugs.webkit.org/show_bug.cgi?id=68448
3368 Reviewed by Yury Semikhatsky.
3370 * inspector/front-end/inspector.css:
3372 (#console-messages):
3373 (#drawer #console-messages):
3375 2011-09-20 Alpha Lam <hclam@chromium.org>
3377 https://bugs.webkit.org/show_bug.cgi?id=68081
3378 Fix scroll in page scaling mode.
3380 Reviewed by Simon Fraser.
3382 The following things are done in this patch:
3383 1. Rename Frame::pageScaleFactor() to Frame::frameScaleFactor() to better
3384 reflect its purpose.
3385 2. Frame::frameScaleFactor() returns the scale factor of this frame with
3386 respect to the container. So for the main frame it'll return the scale
3387 factor of the page, inner frames will return 1.0
3388 3. scrollBy(), scrollX() and scrollY() to take into account of the frame
3389 scale factor, causing incorrect coordinates reported to Javascript.
3391 Tests: fast/events/scale-and-scroll-body.html
3392 fast/events/scale-and-scroll-iframe-body.html
3393 fast/events/scale-and-scroll-iframe-window.html
3394 fast/events/scale-and-scroll-window.html
3396 * html/HTMLBodyElement.cpp:
3397 (WebCore::adjustForZoom):
3398 (WebCore::HTMLBodyElement::setScrollLeft):
3399 (WebCore::HTMLBodyElement::setScrollTop):
3400 * loader/HistoryController.cpp:
3401 (WebCore::HistoryController::saveScrollPositionAndViewStateToItem):
3402 * page/DOMWindow.cpp:
3403 (WebCore::DOMWindow::scrollX):
3404 (WebCore::DOMWindow::scrollY):
3405 (WebCore::DOMWindow::scrollTo):
3407 (WebCore::Frame::frameScaleFactor): Return page's scale factor if this is
3408 main frame, otherwise 1.0
3410 * page/FrameView.cpp:
3411 (WebCore::FrameView::applyOverflowToViewport):
3412 (WebCore::FrameView::scrollXForFixedPosition):
3413 (WebCore::FrameView::scrollYForFixedPosition):
3415 2011-09-21 Andras Becsi <andras.becsi@nokia.com>
3417 [Qt] Remove Qt specific code from css/SelectorChecker.cpp
3418 https://bugs.webkit.org/show_bug.cgi?id=67702
3420 Reviewed by Csaba Osztrogonác.
3422 No new tests needed.
3424 * css/SelectorChecker.cpp: Move Qt-specific code to the Qt-specific WebPlatformStrategies.
3425 (WebCore::SelectorChecker::determineLinkStateSlowCase):
3426 * platform/VisitedLinkStrategy.h:
3428 2011-09-16 MORITA Hajime <morrita@google.com>
3430 Style changes on forwarded shadow children should trigger shadow renderer reconstruction.
3431 https://bugs.webkit.org/show_bug.cgi?id=68228
3433 Reviewed by Dimitri Glazkov.
3435 Currently style changes on forwarded shadow child triggers
3436 Node::reattach() only for the forwarded node. But it should
3437 invalidate whole renderers on the shadow tree because
3438 ShadowContentElement expects its inclusions to be attached and to
3439 create renderers in the inclusion order. But single node
3440 reattach() violates the expectation and possibly creates
3441 inconsistent render tree.
3443 This change makes NodeRenderingContext to go
3444 AttachContentForwarded, where the ShadowContentElement::attach()
3445 happens, only during ShadowRoot::attach(), not for style-change
3446 triggered Node::attach() on the forwarded nodes.
3448 Note that the altering phase AttachContentLight doesn't create
3449 renderers for the forwarded nodes. Instead of that, it possibly
3450 triggers shadow subtree reconstruction on
3451 NodeRenderingContext::hostChildrenChanged().
3453 No new tests. This is a defensive change. There is no visible
3454 difference at this time.
3456 * dom/NodeRenderingContext.cpp:
3457 (WebCore::NodeRenderingContext::NodeRenderingContext):
3458 * dom/ShadowRoot.cpp:
3459 (WebCore::ShadowRoot::isInclusionSelectorActive):
3462 2011-09-20 MORITA Hajime <morrita@google.com>
3464 <meter> doesn't update rendering when its value is changed.
3465 https://bugs.webkit.org/show_bug.cgi?id=67614
3467 Reviewed by Dimitri Glazkov.
3469 It lacks repaint() when the value is changed.