- 20 Mar, 2008 14 commits
-
-
aroben@apple.com authored
Part of Bug 17133: Should support pausing JavaScript execution without hanging the process <http://bugs.webkit.org/show_bug.cgi?id=17133> <rdar://problem/5719551> Two new methods are added to KJSProxy: setPaused and isPaused. When setPaused(true) is called, JS event handlers are blocked and javascript: URIs will not be evaluated. Reviewed by Tim Hatcher. * bindings/js/kjs_events.cpp: (WebCore::JSAbstractEventListener::handleEvent): - Removed some old KJS_DEBUGGER code - Don't run the handler if the KJSProxy is paused. * bindings/js/kjs_proxy.cpp: (WebCore::KJSProxy::KJSProxy): Initialize new member. * bindings/js/kjs_proxy.h: Added new methods. * loader/FrameLoader.cpp: (WebCore::FrameLoader::executeScript): Don't execute the script if the KJSProxy is paused. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@31197 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
jhoneycutt@apple.com authored
Reviewed by Anders. Fix Windows warning / leak: warning C4150: deletion of pointer to incomplete type 'WebCore::PluginRequest'; no destructor called * plugins/PluginView.cpp: Move PluginRequest class to PluginView.h so Windows PluginView destructor can use WTF::deleteAllValues to clean up m_requests. * plugins/PluginView.h: (WebCore::PluginRequest::PluginRequest): (WebCore::PluginRequest::frameLoadRequest): (WebCore::PluginRequest::notifyData): (WebCore::PluginRequest::sendNotification): (WebCore::PluginRequest::shouldAllowPopups): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@31196 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
mrowe@apple.com authored
Ensure that the defines in FEATURE_DEFINES are sorted so that they will match the default settings of build-webkit. This will prevent the world from being rebuilt if you happen to switch between building in Xcode and with build-webkit on the command-line. Reviewed by Sam Weinig. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@31195 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
aroben@apple.com authored
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@31194 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
jhoneycutt@apple.com authored
Reviewed by Anders. <rdar://problem/5809600> REGRESSION: http/tests/plugins/cross-frame-object-access.html hangs Windows Layout Tests r30897 changed the way we conditionalize this feature. * plugins/PluginView.cpp: (WebCore::PluginView::getValue): Test ENABLE(NETSCAPE_PLUGIN_API) instead of USE(NPOBJECT). (WebCore::PluginView::bindingInstance): Same. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@31193 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
aroben@apple.com authored
Part of Bug 16532: Inspector should highlight nodes in page when hovering over nodes in Inspector's interface <http://bugs.webkit.org/show_bug.cgi?id=16532> <rdar://problem/5712896> Reviewed by Tim Hatcher. * page/inspector/ConsolePanel.js: (WebInspector.ConsolePanel._formatnode): Add mouseover/mouseout event listeners to highlight the node and clear the highlight. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@31192 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
aroben@apple.com authored
Part of Bug 16532: Inspector should highlight nodes in page when hovering over nodes in Inspector's interface <http://bugs.webkit.org/show_bug.cgi?id=16532> <rdar://problem/5712896> Reviewed by Tim Hatcher. * page/inspector/DocumentPanel.js: (WebInspector.DocumentPanel): Add an mouseout event listener to the breadcrumbs element to clear the highlighted node. (WebInspector.DocumentPanel.updateBreadcrumbs): Change the mouseover event listener to highlight the node represented by the hovered breadcrumb. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@31191 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
aroben@apple.com authored
Part of Bug 16532: Inspector should highlight nodes in page when hovering over nodes in Inspector's interface <http://bugs.webkit.org/show_bug.cgi?id=16532> <rdar://problem/5712896> The inspected node is no longer highlighted (unless, of course, you hover over it). Reviewed by Tim Hatcher. * page/inspector/DocumentPanel.js: (WebInspector.DocumentPanel): - Don't highlight the focused node when the DOM tree is shown - Added mousemove/mouseout event listeners to set/clear the highlighted node. These are added to the root of the DOM tree instead of to each individual list item to avoid flashing as the mouse moves between nodes. (WebInspector.DocumentPanel.set focusedDOMNode): Don't highlight the focused node. (WebInspector.DocumentPanel._onmousemove): Highlight the node under the mouse. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@31190 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
aroben@apple.com authored
Part of Bug 17221: Node highlight should show node metrics <http://bugs.webkit.org/show_bug.cgi?id=17221> <rdar://problem/5732822> Outstanding issues: 1) We don't show padding/border/margins for inlines 2) We don't show any numeric metrics, we just draw the boxes 3) We'll probably want to tweak the look of the highlight some, at least to make the boxes better distinguishable Reviewed by Tim Hatcher. * page/InspectorController.cpp: (WebCore::drawOutlinedRect): Added. Just draws a single rect. (WebCore::drawHighlightForBoxes): Added. Takes the rects we calculated for the node and draws the highlight. (WebCore::InspectorController::drawNodeHighlight): Calculates the content/padding/border/margin boxes for blocks and passes them off to drawHighlightForBoxes. The behavior for inlines is for now unchanged. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@31189 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
aroben@apple.com authored
RenderContainer::addLineBoxRects was never getting called because its parameters didn't match those of RenderObject::addLineBoxRects. Reviewed by Mitz Pettel. No test possible. * rendering/RenderContainer.cpp: Added an optional bool useSelectionHeight parameter to match RenderObject's method. * rendering/RenderContainer.h: Ditto. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@31188 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
alp@webkit.org authored
Reviewed by Alp Toker. http://bugs.webkit.org/show_bug.cgi?id=17946 [GTK] Widgets are not clipped * platform/gtk/RenderThemeGtk.cpp: (WebCore::paintMozWidget): pass the clipping rectangle to moz_gtk_widget_paint() instead of just the widget rectangle. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@31185 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
hyatt@apple.com authored
Fix for http://bugs.webkit.org/show_bug.cgi?id=9279 Make :hover work with the adjacent sibling selector. This fix makes all forms of dynamic changes (class name changes, :hover, :focus, etc.) work properly when used with the + selector. Reviewed by weinig Added fast/css/dynamic-sibling-selector.html * dom/Element.cpp: (WebCore::Element::recalcStyle): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@31181 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
ddkilzer@apple.com authored
2008-03-20 Aaron Golden <aegolden@gmail.com> Reviewed by Darin and David Kilzer. Addresses <http://bugs.webkit.org/show_bug.cgi?id=15263>, which caused certain marquees to not display. Test: fast/html/marquee-scroll.html * html/HTMLMarqueeElement.cpp: (WebCore::HTMLMarqueeElement::parseMappedAttribute): LayoutTests: 2008-03-20 Aaron Golden <aegolden@gmail.com> Reviewed by Darin and David Kilzer. - test for <http://bugs.webkit.org/show_bug.cgi?id=15263>, which caused certain marquees to not display. * fast/html/marquee-scroll.html: Added. * platform/mac/fast/html/marquee-scroll-expected.checksum: Added. * platform/mac/fast/html/marquee-scroll-expected.png: Added. * platform/mac/fast/html/marquee-scroll-expected.txt: Added. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@31178 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
aroben@apple.com authored
WebCore: Export InspectorController::drawNodeHighlight Reviewed by Tim Hatcher. * WebCore.base.exp: Also sorted this file. WebKit: Mark WebNodeHighlight.m and WebNodeHighlightView.m Obj-C++ Reviewed by Tim Hatcher. * WebKit.xcodeproj/project.pbxproj: WebKit/mac: Make WebNodeHighlightView use InspectorController to do its painting Reviewed by Tim Hatcher. * WebCoreSupport/WebInspectorClient.mm: (-[WebInspectorWindowController highlightNode:]): Pass the InspectorController to the WebNodeHighlight, and don't call setHighlightedNode: (which has been removed). (-[WebInspectorWindowController hideHighlight]): Removed call to setHighlightedNode:. * WebInspector/WebNodeHighlight.h: - Replaced _highlightNode with _inspectorController - Removed _highlightedNode accessors - Added -inspectorController method * WebInspector/WebNodeHighlight.m: (-[WebNodeHighlight initWithTargetView:inspectorController:]): Now takes an InspectorController* and stores it in _inspectorController. (-[WebNodeHighlight dealloc]): Removed code dealing with _highlightedNode. (-[WebNodeHighlight inspectorController]): Added. * WebInspector/WebNodeHighlightView.m: Removed FileInternal category. (-[WebNodeHighlightView isFlipped]): Added. WebCore expects all GraphicsContexts to be based on a flipped CGContext, so we have to specify that this view is flipped. (-[WebNodeHighlightView drawRect:]): Changed to create a GraphicsContext and pass it to InspectorController::drawNodeHighlight. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@31177 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
- 19 Mar, 2008 15 commits
-
-
slewis@apple.com authored
Rubber-stamped by Anders. Fix Windows Build * platform/cf/SharedBufferCF.cpp: (WebCore::SharedBuffer::createCFData): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@31171 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
slewis@apple.com authored
Rubber-stamped by Anders. Fix Windows Build * platform/SharedBuffer.h: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@31170 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
justin.garcia@apple.com authored
2008-03-19 Justin Garcia <justin.garcia@apple.com> Reviewed by Oliver. <rdar://problem/5780697> Copying content with CSS property values that are percentages can cause fidelity issues Elements with height: x%; overflow: visible; overlap what's below them when they are copied from a document in quirksmode and pasted into to one in standards mode. This fix uses the computed the value for a property if its value is a percentage. * css/CSSMutableStyleDeclaration.cpp: (WebCore::CSSMutableStyleDeclaration::addParsedProperty): Added so that we don't have to use setProperty from appendStartMarkup. We already have a parsed property value, so we shouldn't use setProperty, since it takes in a String. If we did, we would have to call CSSValue::cssText() for a String only to re-parse it in setProperty. This wasn't extremely important now, but it will be as we compute more properties to fix the rest of the copy/paste fidelity bugs. * css/CSSMutableStyleDeclaration.h: * editing/markup.cpp: (WebCore::appendStartMarkup): Compute values for properties that have percentage values. We could perhaps narrow this special case to only include properties that are effected by quirksmode. LayoutTests: 2008-03-19 Justin Garcia <justin.garcia@apple.com> Reviewed by Oliver. <rdar://problem/5780697> Copying content with CSS property values that are percentages can cause fidelity issues * editing/pasteboard/5780697-2-expected.txt: Added. * editing/pasteboard/5780697-2.html: Added. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@31169 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
weinig@apple.com authored
2008-03-19 Sam Weinig <sam@webkit.org> Reviewed by Anders Carlsson. Fix for <rdar://problem/5785694> Crash occurs at KJS::Collector::collect() when loading web clip widgets with a PAC file Make the activeExecStates stack per JSGlobalObject instead of static to ensure thread safety. * JavaScriptCore.exp: * kjs/ExecState.cpp: (KJS::InterpreterExecState::InterpreterExecState): (KJS::InterpreterExecState::~InterpreterExecState): (KJS::EvalExecState::EvalExecState): (KJS::EvalExecState::~EvalExecState): (KJS::FunctionExecState::FunctionExecState): (KJS::FunctionExecState::~FunctionExecState): * kjs/ExecState.h: (KJS::): * kjs/JSGlobalObject.cpp: (KJS::JSGlobalObject::mark): * kjs/JSGlobalObject.h: (KJS::JSGlobalObject::activeExecStates): * kjs/collector.cpp: (KJS::Collector::collect): (KJS::Collector::reportOutOfMemoryToAllExecStates): Iterate all JSGlobalObjects and report the OutOfMemory condition to all the ExecStates in each. WebCore: 2008-03-19 Sam Weinig <sam@webkit.org> Reviewed by Anders Carlsson. Fix for <rdar://problem/5785694> Crash occurs at KJS::Collector::collect() when loading web clip widgets with a PAC file Make the activeExecStates stack per JSGlobalObject instead of static to ensure thread safety. * bindings/objc/WebScriptObject.mm: (+[WebScriptObject throwException:]): Change to throw an exception on the current GlobalObject instead of the top of the static activeExecStates stack. (-[WebScriptObject setException:]): Change to use the top of the rootObjects GlobalObject instead of the top of the static activeExecStates stack. * bridge/c/c_instance.cpp: * bridge/c/c_instance.h: * bridge/jni/jni_instance.cpp: (JavaInstance::virtualBegin): (JavaInstance::virtualEnd): * bridge/jni/jni_instance.h: * bridge/objc/objc_instance.h: * bridge/objc/objc_instance.mm: (ObjcInstance::~ObjcInstance): (ObjcInstance::virtualBegin): (ObjcInstance::virtualEnd): * bridge/runtime.cpp: (KJS::Bindings::Instance::setDidExecuteFunction): (KJS::Bindings::Instance::didExecuteFunction): (KJS::Bindings::Instance::setCurrentGlobalObject): Added. (KJS::Bindings::Instance::currentGlobalObject): Added. (KJS::Bindings::Instance::begin): (KJS::Bindings::Instance::end): * bridge/runtime.h: (KJS::Bindings::Instance::virtualBegin): Renamed from begin(). (KJS::Bindings::Instance::virtualEnd): Renamed from end(). We now store the currently active globalObject everytime we cross the runtime object boundary. To do this, we take advantage of the existing begin/end methods that are called when crossing this boundary, making begin set the current globalObject and then call the old begin, now called virtualBegin. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@31167 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
beidson@apple.com authored
Reviewed by Anders Change SharedBuffer so the wrapping platform data aspect can be shared with all CoreFoundation platforms (Mac and Windows instead of just Mac) * WebCore.vcproj/WebCore.vcproj: Add SharedBufferCF.cpp * WebCore.xcodeproj/project.pbxproj: Ditto * platform/SharedBuffer.cpp: * platform/SharedBuffer.h: Change the private c'tor from NSData to CFDataRef, other PLATFORM tweaks * platform/cf/SharedBufferCF.cpp: Added. (WebCore::SharedBuffer::SharedBuffer): (WebCore::SharedBuffer::createCFData): Non-Mac version of createCFData (WebCore::SharedBuffer::hasPlatformData): (WebCore::SharedBuffer::platformData): (WebCore::SharedBuffer::platformDataSize): (WebCore::SharedBuffer::maybeTransferPlatformData): (WebCore::SharedBuffer::clearPlatformData): * platform/mac/SharedBufferMac.mm: (WebCore::SharedBuffer::wrapNSData): Use the CFDataRef constructor via toll-free bridging (WebCore::SharedBuffer::createCFData): Mac-specific version of createCFData git-svn-id: http://svn.webkit.org/repository/webkit/trunk@31166 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
oliver@apple.com authored
http://bugs.webkit.org/show_bug.cgi?id=17954 Reviewed by Antti Simple fix -- use >= instead of > when validating the radius. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@31162 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
justin.garcia@apple.com authored
2008-03-19 Justin Garcia <justin.garcia@apple.com> Reviewed by Oliver. <rdar://problem/5794920> Acid3: Assertion failure in VisiblePosition::previous when clicking on results (17004) The position inside an empty inline-block was a candidate, but upstream and downstream would move across it without stopping. This confused canonicalPosition, since no more than two candidates should have the same upstream/downstream (be visually equivalent). Code was added intentionally in isCandidate to make VisiblePositions inside empty inline-blocks, so we need to make upstream/downstream understand that. * dom/Position.cpp: (WebCore::endsOfNodeAreVisuallyDistinctPositions): upstream and downstream used to only stop when entering or leaving a non-inline element (referred to as a "block"). We must also avoid entering or leaving an empty inline-block. This will allow a VisiblePosition there, to match up with what the code in isCandidate intended. (WebCore::enclosingVisualBoundary): Removed enclosingBlock and replaced it with this. (WebCore::Position::upstream): Added better comments, called the new functions. (WebCore::Position::downstream): Ditto. * dom/Position.h: LayoutTests: 2008-03-19 Justin Garcia <justin.garcia@apple.com> Reviewed by Oliver. <rdar://problem/5794920> Acid3: Assertion failure in VisiblePosition::previous when clicking on results (17004) * editing/pasteboard/4989774.html: Updated to wait for the images to load before trying to copy it. * editing/selection/5794920-1-expected.txt: Added. * editing/selection/5794920-1.html: Added. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@31161 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
mitz@apple.com authored
Rubber-stamped by John Sullivan. - change CSS property and value keyword constants from all-caps with underscores to intra-caps. * css/makeprop.pl: * css/makevalues.pl: * All files using the constants git-svn-id: http://svn.webkit.org/repository/webkit/trunk@31160 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
aroben@apple.com authored
We now have mousedown and dblclick event listeners on the root of the tree that forward the event to the node on the row the mouse is over. Reviewed by Tim Hatcher. * page/inspector/DocumentPanel.js: (WebInspector.DocumentPanel): Added a dblclick and mousedown event listeners to the root of the tree. (WebInspector.DocumentPanel._treeElementFromEvent): Added. Finds the tree element for the row underneath the mouse. (WebInspector.DocumentPanel._ondblclick): Added. Sends the dblclick event on to the tree element in the current row. (WebInspector.DocumentPanel._onmousedown): Added. Selects the tree element in the current row. * page/inspector/treeoutline.js: (TreeOutline.treeElementFromPoint): Added. (TreeElement.treeElementSelected): Changed to call TreeElement.isEventWithinDisclosureTriangle, and added an early return. (TreeElement.treeElementToggled): Ditto. (TreeElement.isEventWithinDisclosureTriangle): Added. * page/inspector/utilities.js: (Node.enclosingNodeOrSelfWithNodeNameInArray): Added. (Node.enclosingNodeOrSelfWithNodeName): Now just calls enclosingNodeOrSelfWithNodeNameInArray. (Elemnt.get totalOffsetLeft): Added. (Elemnt.get totalOffsetTop): Added. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@31159 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
mitz@apple.com authored
Reviewed by Sam Weinig. - fix assertion failure in RenderBlock::determineStartPosition() at http://www.wired.com/techbiz/it/magazine/16-04/bz_apple Test: fast/repaint/line-flow-with-floats-10.html * rendering/bidi.cpp: (WebCore::RenderBlock::determineStartPosition): Removed bogus assertion. If the float's top margin has changed and it has not been repositioned yet, we do not have its new y position. LayoutTests: Reviewed by Sam Weinig. - test for assertion failure in RenderBlock::determineStartPosition() at http://www.wired.com/techbiz/it/magazine/16-04/bz_apple * fast/repaint/line-flow-with-floats-10.html: Added. * platform/mac/fast/repaint/line-flow-with-floats-10-expected.checksum: Added. * platform/mac/fast/repaint/line-flow-with-floats-10-expected.png: Added. * platform/mac/fast/repaint/line-flow-with-floats-10-expected.txt: Added. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@31157 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
hyatt@apple.com authored
New implementation of full page zoom. Because of how much doesn't transform when zooming, and because of the need to obey viewport constraints, I decided to take a completely different approach. Now CSS lengths and intrinsic sizes are simply adjusted by the zoom factor. This approach works much better and avoids pixel cracks more than the old approach. In addition widgets "just work", namely plugins zoom and scrollbars do not. This patch also implements the IE zoom CSS property. This property allows fine-grained control over zooming at the element level. It takes values of normal | <number> | <percentage> to match WinIE. In addition, in the vein of text-size-adjust for text zooming, I have extended the zoom property with an extra value, reset. The reset keyword can be used to prevent a section of the page from scaling at all when a zoom is applied. Reviewed by olliej * css/CSSComputedStyleDeclaration.cpp: (WebCore::): (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Support the new 'zoom' property for getComputedStyle. * css/CSSParser.cpp: (WebCore::CSSParser::parseValue): Code that parses the 'zoom' property. * css/CSSPrimitiveValue.cpp: (WebCore::CSSPrimitiveValue::computeLengthInt): (WebCore::CSSPrimitiveValue::computeLengthIntForLength): (WebCore::CSSPrimitiveValue::computeLengthShort): (WebCore::CSSPrimitiveValue::computeLengthFloat): (WebCore::CSSPrimitiveValue::computeLengthDouble): * css/CSSPrimitiveValue.h: Extend all of the computeLength methods to take a multiplier so that lengths can be adjusted by the zoom factor. * css/CSSPropertyNames.in: Add the new zoom property to the list of properties we understand. * css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::applyDeclarations): (WebCore::CSSStyleSelector::applyProperty): (WebCore::CSSStyleSelector::mapBackgroundSize): (WebCore::CSSStyleSelector::mapBackgroundXPosition): (WebCore::CSSStyleSelector::mapBackgroundYPosition): (WebCore::CSSStyleSelector::getComputedSizeFromSpecifiedSize): * css/CSSStyleSelector.h: (WebCore::CSSStyleSelector::setStyle): Pass in the zoom factor when computing all lengths in CSS. * css/CSSValueKeywords.in: Add support for the 'reset' keyword of the zoom property. * dom/Document.cpp: (WebCore::Document::recalcStyle): Set the 'zoom' CSS property on the RenderView. This is how we implement full page zoom. * html/CanvasRenderingContext2D.cpp: (WebCore::size): Make sure the back end canvas size ignores zooming when rendering images. * html/HTMLImageElement.cpp: (WebCore::HTMLImageElement::width): (WebCore::HTMLImageElement::height): (WebCore::HTMLImageElement::naturalWidth): (WebCore::HTMLImageElement::naturalHeight): Use the unzoomed width/height if we have no style information in HTMLImageElement.cpp. * loader/CachedImage.cpp: (WebCore::CachedImage::ref): (WebCore::CachedImage::imageSize): (WebCore::CachedImage::imageRect): * loader/CachedImage.h: (WebCore::CachedImage::canRender): Force access to the CachedImage metrics to take a multiplier so that people have to think about the zoom factor. The "intrinsic size" of the image then takes that into account. * loader/ImageDocument.cpp: (WebCore::ImageTokenizer::finish): (WebCore::ImageDocument::scale): (WebCore::ImageDocument::resizeImageToFit): (WebCore::ImageDocument::imageChanged): (WebCore::ImageDocument::restoreImageSize): (WebCore::ImageDocument::imageFitsInWindow): Make sure image documents respect the zoom. * page/AnimationController.cpp: (WebCore::ImplicitAnimation::animate): Make the 'zoom' CSS property work with CSS transitions. * page/Frame.h: (WebCore::Frame::pageZoomFactor): (WebCore::Frame::textZoomFactor): Add accessors for obtaining the pageZoom vs. textZoom. * page/FrameView.cpp: (WebCore::FrameView::adjustViewSize): Remove the old zoom implementation that used transforms. * page/mac/WebCoreAXObject.mm: (-[WebCoreAXObject accessibilityIsIgnored]): Pass in the zoom factor. * rendering/InlineFlowBox.cpp: (WebCore::InlineFlowBox::paintBackground): (WebCore::InlineFlowBox::paintBoxDecorations): Pass in the zoom factor when testing for size. * rendering/RenderBox.cpp: (WebCore::RenderBox::calculateBackgroundSize): (WebCore::RenderBox::imageChanged): (WebCore::RenderBox::paintBackgroundExtended): (WebCore::RenderBox::calcHeight): * rendering/RenderFrameSet.cpp: (WebCore::RenderFrameSet::layout): * rendering/RenderHTMLCanvas.cpp: (WebCore::RenderHTMLCanvas::canvasSizeChanged): * rendering/RenderHTMLCanvas.h: (WebCore::RenderHTMLCanvas::renderName): (WebCore::RenderHTMLCanvas::intrinsicSizeChanged): * rendering/RenderImage.cpp: (WebCore::RenderImage::setImageSizeForAltText): (WebCore::RenderImage::imageChanged): (WebCore::RenderImage::calcReplacedWidth): (WebCore::RenderImage::calcReplacedHeight): * rendering/RenderImage.h: (WebCore::RenderImage::intrinsicSizeChanged): * rendering/RenderListMarker.cpp: (WebCore::RenderListMarker::layout): (WebCore::RenderListMarker::imageChanged): (WebCore::RenderListMarker::getRelativeMarkerRect): * rendering/RenderObject.cpp: (WebCore::RenderObject::mustRepaintBackgroundOrBorder): (WebCore::RenderObject::paintBorder): Pass in the zoom factor when testing for size. * rendering/RenderReplaced.cpp: (WebCore::RenderReplaced::RenderReplaced): (WebCore::RenderReplaced::setStyle): (WebCore::RenderReplaced::intrinsicSizeChanged): * rendering/RenderReplaced.h: Added a new call when the zoom factor changes, intrinsicSizeChanged(). Replaced element subclasses respond to this via overrides. * rendering/RenderStyle.cpp: (WebCore::StyleVisualData::StyleVisualData): (WebCore::StyleInheritedData::StyleInheritedData): (WebCore::StyleInheritedData::operator==): (WebCore::RenderStyle::diff): * rendering/RenderStyle.h: (WebCore::StyleVisualData::operator==): (WebCore::RenderStyle::zoom): (WebCore::RenderStyle::zoomInEffect): (WebCore::RenderStyle::setZoom): (WebCore::RenderStyle::setZoomInEffect): (WebCore::RenderStyle::initialZoom): Support for 'zoom' in the RenderStyle. "zoomInEffect" represents the computed zoom taking into account all the zooms specified on ancestors. * rendering/RenderTableCol.cpp: (WebCore::RenderTableCol::imageChanged): * rendering/RenderTableRow.cpp: (WebCore::RenderTableRow::imageChanged): * rendering/RenderTableSection.cpp: (WebCore::RenderTableSection::imageChanged): * rendering/RenderVideo.h: (WebCore::RenderVideo::intrinsicSizeChanged): Pass in the zoom factor. * rendering/RenderView.cpp: (WebCore::RenderView::calcHeight): (WebCore::RenderView::calcWidth): (WebCore::RenderView::layout): (WebCore::RenderView::viewHeight): (WebCore::RenderView::viewWidth): * rendering/RenderView.h: (WebCore::RenderView::zoomFactor): Back out the old implementation. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@31155 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
aroben@apple.com authored
Rubberstamped by John Sullivan. * page/inspector/ConsolePanel.js: * page/inspector/DocumentPanel.js: * page/inspector/NetworkPanel.js: * page/inspector/inspector.js: * page/inspector/utilities.js: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@31154 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
mitz@apple.com authored
Reviewed by John Sullivan. - fix <rdar://problem/5805070> CrashTracer: [USER] 33 crashes in Safari at com.apple.WebCore: WebCore::FrameView::layout + 431 Test: fast/dynamic/subtree-parent-static-y.html * rendering/RenderObject.cpp: (WebCore::RenderObject::markContainingBlocksForLayout): Avoid calling this method on the parent if the parent is the new layout subtree root, which would result in marking all the way to the top, when it should actually do nothing. LayoutTests: Reviewed by John Sullivan. - test for <rdar://problem/5805070> CrashTracer: [USER] 33 crashes in Safari at com.apple.WebCore: WebCore::FrameView::layout + 431 * fast/dynamic/subtree-parent-static-y.html: Added. * platform/mac/fast/dynamic/subtree-parent-static-y-expected.checksum: Added. * platform/mac/fast/dynamic/subtree-parent-static-y-expected.png: Added. * platform/mac/fast/dynamic/subtree-parent-static-y-expected.txt: Added. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@31153 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
mrowe@apple.com authored
Reviewed by Oliver Hunt. Use WTF::Unicode abstraction rather than using ICU functions directly. * html/PreloadScanner.cpp: (WebCore::PreloadScanner::tokenize): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@31152 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
mrowe@apple.com authored
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@31151 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
- 18 Mar, 2008 11 commits
-
-
darin@apple.com authored
2008-03-18 Darin Adler <darin@apple.com> Reviewed by Maciej. - Speed up JavaScript built-in properties by changing the hash table to take advantage of the identifier objects 5% speedup for Acid3 test 26 * JavaScriptCore.exp: Updated. * kjs/create_hash_table: Compute size of hash table large enough so that there are no collisions, but don't generate the hash table. * kjs/identifier.h: Made the add function that returns a PassRefPtr public. * kjs/lexer.cpp: (KJS::Lexer::lex): Updated for change to HashTable interface. * kjs/lookup.cpp: (KJS::HashTable::changeKeysToIdentifiers): Added. Finds the identifier for each property so the equality comparision can be done with pointer comparision. * kjs/lookup.h: Made the key be a union of char* with UString::Rep* so it can hold identifiers. Added a keysAreIdentifiers flag to the HashTable. Changed the Lookup functions to be member functions of HashTable instead. * kjs/object.cpp: (KJS::JSObject::deleteProperty): Update for change to HashTable. (KJS::JSObject::findPropertyHashEntry): Ditto. (KJS::JSObject::getPropertyAttributes): Ditto. (KJS::JSObject::getPropertyNames): Ditto. WebCore: 2008-03-18 Darin Adler <darin@apple.com> Reviewed by Maciej. - Speed up JavaScript built-in properties by changing the hash table to take advantage of the identifier objects 5% speedup for Acid3 test 26 * bindings/js/JSDOMWindowBase.cpp: (WebCore::JSDOMWindowBase::getOwnPropertySlot): Update for change to HashTable. (WebCore::JSDOMWindowBase::put): Ditto. * bindings/js/JSDOMWindowCustom.cpp: (WebCore::JSDOMWindow::customGetOwnPropertySlot): Ditto. * bindings/js/JSHTMLInputElementBase.cpp: (WebCore::JSHTMLInputElementBase::getOwnPropertySlot): Ditto. * bindings/js/JSHistoryCustom.cpp: (WebCore::JSHistory::customGetOwnPropertySlot): Ditto. * bindings/js/JSLocation.cpp: (WebCore::JSLocation::customGetOwnPropertySlot): Ditto. (WebCore::JSLocation::put): Ditto. * bindings/js/kjs_binding.cpp: (WebCore::nonCachingStaticFunctionGetter): Ditto. * bindings/scripts/CodeGeneratorJS.pm: Same changes as in the create_hash_table script. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@31147 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
pewtermoose@webkit.org authored
Fix the Gtk build for real this time. * platform/network/curl/AuthenticationChallenge.h: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@31146 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
weinig@apple.com authored
2008-03-18 Sam Weinig <sam@webkit.org> Reviewed by Anders Carlsson. Fix for http://bugs.webkit.org/show_bug.cgi?id=17057 REGRESSION: Frequent random crashes in WebCore::JSNodeList::indexGetter <rdar://problem/5725058> Tests: fast/dom/NodeList/5725058-crash-scenario-1.html fast/dom/NodeList/5725058-crash-scenario-2.html fast/dom/NodeList/5725058-crash-scenario-3.html * dom/ChildNodeList.cpp: (WebCore::ChildNodeList::ChildNodeList): * dom/ChildNodeList.h: Remove rootNodeChildrenChanged() method and fix the constructor to not pass in a needsNotifications argument to DynamicNodeList, as it no longer takes one. * dom/ClassNodeList.cpp: (WebCore::ClassNodeList::ClassNodeList): Don't pass the needsNotifications argument to DynamicNodeList. * dom/ContainerNode.cpp: (WebCore::ContainerNode::childrenChanged): Rename call to hasNodeLists() to hasNodeListCaches(). * dom/Document.cpp: (WebCore::Document::Document): (WebCore::Document::~Document): Zero out the m_document variable to signify to destructors down the destruction chain that this is a Document type node being destructed, and thus, accessing document() is prohibited. * dom/Document.h: (WebCore::Document::addNodeListCache): Renamed from addNodeList. (WebCore::Document::removeNodeListCache): Renamed from removeNodeList, adds assertion. (WebCore::Document::hasNodeListCaches): Renamed from hasNodeListCaches. Rename m_numNodeLists to m_numNodeListCaches. * dom/DynamicNodeList.cpp: (WebCore::DynamicNodeList::DynamicNodeList): (WebCore::DynamicNodeList::~DynamicNodeList): (WebCore::DynamicNodeList::invalidateCache): (WebCore::DynamicNodeList::Caches::Caches): * dom/DynamicNodeList.h: (WebCore::DynamicNodeList::hasOwnCaches): Remove the needsNotifications concept from DynamicNodeList, instead, manually invalidate the cache for lists that own their own cache. * dom/NameNodeList.cpp: (WebCore::NameNodeList::NameNodeList): * dom/NameNodeList.h: Remove rootNodeAttributeChanged() method and fix the constructor to not pass in a needsNotifications argument to DynamicNodeList, as it no longer takes one. * dom/Node.cpp: (WebCore::Node::~Node): Decrement the document's nodeListCache count if we had a NodeListsNodeData cache and this is not the Document being destructor, as tagged by a null m_document. (WebCore::Node::childNodes): Increment the document's nodeListCache count if we need create the NodeListsNodeData. (WebCore::Node::registerDynamicNodeList): Increment the document's nodeListCache count if we need create the NodeListsNodeData. Change to invalidate all the caches, instead of just the ChildNodeList, if document has had no NodeListCaches. (WebCore::Node::unregisterDynamicNodeList): Change to remove the cache from the m_listsWithCaches set if it is owned by the NodeList and clear the m_nodeLists if it is empty. (WebCore::Node::notifyLocalNodeListsAttributeChanged): Move logic to NodeListsNodeData::invalidateAttributeCaches and clear the cache pointer if it is empty. (WebCore::Node::notifyLocalNodeListsChildrenChanged): Move logic to NodeListsNodeData::invalidateCaches and clear the cache pointer if it is empty. (WebCore::Node::notifyNodeListsChildrenChanged): Cleanup. (WebCore::Node::getElementsByName): Increment the document's nodeListCache count if we need create the NodeListsNodeData. (WebCore::Node::getElementsByClassName): Increment the document's nodeListCache count if we need create the NodeListsNodeData. (WebCore::NodeListsNodeData::invalidateCaches): Added. (WebCore::NodeListsNodeData::invalidateAttributeCaches): Added. (WebCore::NodeListsNodeData::isEmpty): Added. * dom/TagNodeList.cpp: (WebCore::TagNodeList::TagNodeList): Don't pass the needsNotifications argument to DynamicNodeList. LayoutTests: 2008-03-18 Sam Weinig <sam@webkit.org> Reviewed by Anders Carlsson. Tests for http://bugs.webkit.org/show_bug.cgi?id=17057 REGRESSION: Frequent random crashes in WebCore::JSNodeList::indexGetter <rdar://problem/5725058> * fast/dom/NodeList/5725058-crash-scenario-1-expected.txt: Added. * fast/dom/NodeList/5725058-crash-scenario-1.html: Added. * fast/dom/NodeList/5725058-crash-scenario-2-expected.txt: Added. * fast/dom/NodeList/5725058-crash-scenario-2.html: Added. * fast/dom/NodeList/5725058-crash-scenario-3-expected.txt: Added. * fast/dom/NodeList/5725058-crash-scenario-3.html: Added. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@31144 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
pewtermoose@webkit.org authored
Not reviewed, build fix. * platform/network/curl/AuthenticationChallenge.h: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@31143 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
pewtermoose@webkit.org authored
2008-03-18 Brent Fulgham <bfulgham@gmail.com> Reviewed by Adam Roben. Provide some stub implementations for things that WebKit uses for performing authentication/challenge activities. This is in support of http://bugs.webkit.org/show_bug.cgi?id=17837 * platform/network/ResourceHandle.h: * platform/network/curl/AuthenticationChallenge.h: (WebCore::AuthenticationChallenge::AuthenticationChallenge): (WebCore::AuthenticationChallenge::sourceHandle): WebKit/win: 2008-03-18 Brent Fulgham <bfulgham@gmail.com> Reviewed by Adam Roben. Provide some stub implementations for things that WebKit uses for performing authentication/challenge activities. This is in support of http://bugs.webkit.org/show_bug.cgi?id=17837 * WebDataSource.cpp: * WebError.cpp: Conditionalize CFNetwork-specific logic * WebURLAuthenticationChallenge.cpp: Conditionalize constructor for authentication/challenge member. (WebURLAuthenticationChallenge::initWithAuthenticationChallenge): * WebURLResponse.cpp: Remove CFNetwork-specific logic. * WebURLResponse.h: Conditionalize CFNetwork-specific member. * WebView.cpp: Conditionalize CFNetwork-specific network protocol test. (WebView::canHandleRequest): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@31141 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
eric@webkit.org authored
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@31140 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
eric@webkit.org authored
Fix SVGImage crash seen once, and obvious via code inspection. I was not able to find a test case for this. * svg/graphics/SVGImage.cpp: (WebCore::SVGImage::setContainerSize): (WebCore::SVGImage::usesContainerSize): (WebCore::SVGImage::hasRelativeWidth): (WebCore::SVGImage::hasRelativeHeight): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@31139 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
mrowe@apple.com authored
Fix Qt build after r31123. Add PluginView methods to TemporaryLinkStubs. * platform/qt/TemporaryLinkStubs.cpp: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@31138 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
weinig@apple.com authored
Reviewed by Darin Adler. - Speed up JavaScript prototype and constructor object creation using a static Identifier in the self() methods to avoid the cost of creating one from a c-string each time. 5% speedup for Acid3 test 26 * bindings/scripts/CodeGeneratorJS.pm: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@31137 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
antti@apple.com authored
Reviewed by Mark Rowe. Enable preloading for other platforms besides Mac. * GNUmakefile.am: * WebCore.pro: * WebCore.vcproj/WebCore.vcproj: * WebCoreSources.bkl: * html/HTMLTokenizer.cpp: * html/HTMLTokenizer.h: * html/PreloadScanner.cpp: (WebCore::PreloadScanner::tokenize): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@31135 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
mitz@apple.com authored
2008-03-18 Dan Bernstein <mitz@apple.com> Reviewed by Adele Peterson. - fix <rdar://problem/5805127> REGRESSION (r31116): Assertion failure (floatIndex < floats.size()) in RenderBlock::determineStartPosition() at digg.com Test: fast/dynamic/floating-to-positioned.html * rendering/RenderObject.cpp: (WebCore::RenderObject::setStyle): Added code to remove a float from object lists if its position property changes to something other than static, since then it ceases to be a float. LayoutTests: 2008-03-18 Dan Bernstein <mitz@apple.com> Reviewed by Adele Peterson. - test for <rdar://problem/5805127> REGRESSION (r31116): Assertion failure (floatIndex < floats.size()) in RenderBlock::determineStartPosition() at digg.com * fast/dynamic/floating-to-positioned.html: Added. * platform/mac/fast/dynamic/floating-to-positioned-expected.checksum: Added. * platform/mac/fast/dynamic/floating-to-positioned-expected.png: Added. * platform/mac/fast/dynamic/floating-to-positioned-expected.txt: Added. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@31132 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-