Timeline



Jun 3, 2009:

8:32 PM Changeset in webkit [44409] by weinig@apple.com
  • 5 edits
    2 copies in trunk/WebKit

WebKit:

2009-06-03 Sam Weinig <sam@webkit.org>

Reviewed by Mark Rowe.

Added WebDelegateImplementationCaching.h/mm

  • WebKit.xcodeproj/project.pbxproj:

WebKit/mac:

2009-06-03 Sam Weinig <sam@webkit.org>

Reviewed by Mark Rowe.

Move delegate implementation caching logic into its own files.

  • WebView/WebDelegateImplementationCaching.h: Copied from mac/WebView/WebViewInternal.h.
  • WebView/WebDelegateImplementationCaching.mm: Copied from mac/WebView/WebView.mm. (WebViewGetResourceLoadDelegateImplementations): (WebViewGetFrameLoadDelegateImplementations): (WebViewGetScriptDebugDelegateImplementations):
  • WebView/WebView.mm:
  • WebView/WebViewInternal.h:
8:30 PM Changeset in webkit [44408] by mitz@apple.com
  • 4 edits in trunk/WebCore

Reviewed by Sam Weinig.

  • add some assertions that Font methods are used on the main thread
  • platform/graphics/Font.cpp: (WebCore::Font::setShouldUseSmoothing):
  • platform/graphics/Font.h: (WebCore::Font::primaryFont):
  • platform/graphics/FontFastPath.cpp: (WebCore::Font::glyphDataForCharacter):
7:39 PM Changeset in webkit [44407] by weinig@apple.com
  • 5 edits
    1 add in trunk/WebKit

WebKit:

2009-06-03 Sam Weinig <sam@webkit.org>

Reviewed by Mark Rowe.

Add WebViewInternal.mm.

  • WebKit.xcodeproj/project.pbxproj:

WebKit/mac:

2009-06-03 Sam Weinig <sam@webkit.org>

Reviewed by Mark Rowe.

Move WebViewPrivate structure to WebViewInternal.h/mm.

  • WebView/WebView.mm:
  • WebView/WebViewInternal.h:
  • WebView/WebViewInternal.mm: Added. (+[WebViewPrivate initialize]): (-[WebViewPrivate init]): (-[WebViewPrivate dealloc]): (-[WebViewPrivate finalize]):
6:13 PM Changeset in webkit [44406] by weinig@apple.com
  • 2 edits in trunk/WebKit/mac

2009-06-03 Sam Weinig <sam@webkit.org>

Reviewed by Darin Adler.

Small cleanup in WebView.

  • Move global data initialization to WebView's initialization method.
  • Move _clearViewUpdateRunLoopObserver from WebViewPrivate to WebView (FileInternal)
  • WebView/WebView.mm: (-[WebViewPrivate init]): Remove global initializers. (-[WebViewPrivate dealloc]): Cleanup whitespace. (-[WebViewPrivate finalize]): Ditto. (-[WebView _close]): Call [self _clearViewUpdateRunLoopObserver] instead of [_private _clearViewUpdateRunLoopObserver] (+[WebView initialize]): Move global initializers here. (-[WebView _clearViewUpdateRunLoopObserver]): Moved from WebViewPrivate. (viewUpdateRunLoopObserverCallBack): Call [self _clearViewUpdateRunLoopObserver] instead of [_private _clearViewUpdateRunLoopObserver]
5:11 PM Changeset in webkit [44405] by mitz@apple.com
  • 2 edits in trunk/WebCore
  • Windows build fix

Rolled out apparently-accidental changes to config.h from r44398. These
were not part of the patch as reviewed.

  • config.h:
5:07 PM Changeset in webkit [44404] by dimich@chromium.org
  • 3 edits in trunk/WebCore

2009-06-03 Dmitry Titov <dimich@chromium.org>

Not reviewed, Chromium build fix.

https://bugs.webkit.org/show_bug.cgi?id=26177
Reverting 'private' to 'protected' on 2 classes.
Chromium glue layer (not yet in Webkit tree) relies on ability to derive
Chromium-specific platform classes and access the data members.
See bug for more details.

  • platform/PlatformMouseEvent.h:
  • platform/PlatformWheelEvent.h:
4:37 PM Changeset in webkit [44403] by cmarrin@apple.com
  • 3 edits
    1 add in trunk/WebCore

Reviewed by Simon Fraser <simonfr@apple.com>.

Fixed https://bugs.webkit.org/show_bug.cgi?id=26162

This corrects an error when destroying an animation
or transition where endAnimation was never getting
called and therefore the hardware animation was never
getting removed.

This includes a manual-test since it's really impossible
to make a meaningful automatic test for an animation
bug like this.

This has no effect unless accelerated compositing is
enabled.

4:12 PM Changeset in webkit [44402] by kevino@webkit.org
  • 2 edits in trunk/WebKit/wx

wx build fix, remove no longer needed function call.

4:08 PM Changeset in webkit [44401] by agl@chromium.org
  • 3 edits in trunk/WebCore

2009-06-03 Adam Langley <agl@google.com>

Reviewed by Eric Seidel.

Make the scrollbar thumb size twice the width for Chromium Linux. This
matches Firefox on Linux.

This will need layout test pixel results to be rebaselined in the
Chromium tree.

http://code.google.com/p/chromium/issues/detail?id=12602
https://bugs.webkit.org/show_bug.cgi?id=26176

  • platform/chromium/ScrollbarThemeChromiumLinux.cpp: (WebCore::ScrollbarThemeChromiumLinux::minimumThumbLength):
  • platform/chromium/ScrollbarThemeChromiumLinux.h:
3:46 PM Changeset in webkit [44400] by agl@chromium.org
  • 5 edits
    1 copy
    1 add in trunk/WebCore

2009-06-03 Adam Langley <agl@google.com>

Reviewed by Eric Seidel.

Change Chromium scrollbar theme code to use different classes on
Windows and Linux rather than suppling symbols. The ScrollbarTheme
class is already using virtual dispatch, so there's no reason not to.

This should not affect any layout tests.

https://bugs.webkit.org/show_bug.cgi?id=26174

  • platform/chromium/ScrollbarThemeChromium.cpp:
  • platform/chromium/ScrollbarThemeChromium.h:
  • platform/chromium/ScrollbarThemeChromiumLinux.cpp: (WebCore::ScrollbarTheme::nativeTheme): (WebCore::ScrollbarThemeChromiumLinux::scrollbarThickness): (WebCore::ScrollbarThemeChromiumLinux::paintTrackPiece): (WebCore::ScrollbarThemeChromiumLinux::paintButton): (WebCore::ScrollbarThemeChromiumLinux::paintThumb): (WebCore::ScrollbarThemeChromiumLinux::buttonSize):
  • platform/chromium/ScrollbarThemeChromiumLinux.h: Added.
  • platform/chromium/ScrollbarThemeChromiumWin.cpp: (WebCore::ScrollbarTheme::nativeTheme): (WebCore::ScrollbarThemeChromiumWin::scrollbarThickness): (WebCore::ScrollbarThemeChromiumWin::invalidateOnMouseEnterExit): (WebCore::ScrollbarThemeChromiumWin::shouldSnapBackToDragOrigin): (WebCore::ScrollbarThemeChromiumWin::paintTrackPiece): (WebCore::ScrollbarThemeChromiumWin::paintButton): (WebCore::ScrollbarThemeChromiumWin::paintThumb): (WebCore::ScrollbarThemeChromiumWin::getThemeState): (WebCore::ScrollbarThemeChromiumWin::getThemeArrowState): (WebCore::ScrollbarThemeChromiumWin::getClassicThemeState): (WebCore::ScrollbarThemeChromiumWin::buttonSize):
  • platform/chromium/ScrollbarThemeChromiumWin.h: Added.
3:45 PM Changeset in webkit [44399] by bfulgham@webkit.org
  • 2 edits in trunk/WebKit/win

2009-06-03 Brent Fulgham <bfulgham@webkit.org>

Build fix for Windows Cairo.

  • WebKit.vcproj/WebKit.vcproj: Remove unneeded giflib.lib link command.
3:32 PM Changeset in webkit [44398] by bfulgham@webkit.org
  • 10 edits in trunk/WebCore

2009-06-03 Pavel Feldman <pfeldman@chromium.org>

Reviewed by Timothy Hatcher.

Enabling debugger requires that Scripts panel is already attached to the
render tree. The reason is that recompile events result in script sources
being added into the source frames. Prior to the global options introduced,
debugger was enabled from the Scripts panel, so that it was guaranteed to
exist. The InspectorController::enableDebugger API calls with no inspector
frontend showing were failing though.

https://bugs.webkit.org/show_bug.cgi?id=26145

  • WebCore.base.exp:
  • inspector/InspectorController.cpp: (WebCore::InspectorController::setWindowVisible): (WebCore::InspectorController::scriptObjectReady): (WebCore::InspectorController::enableDebuggerFromFrontend): (WebCore::InspectorController::enableDebugger):
  • inspector/InspectorController.h:
  • inspector/InspectorController.idl:
  • inspector/InspectorFrontend.cpp: (WebCore::InspectorFrontend::attachDebuggerWhenShown):
  • inspector/InspectorFrontend.h:
  • inspector/front-end/ScriptsPanel.js: (WebInspector.ScriptsPanel.prototype.show): (WebInspector.ScriptsPanel.prototype.attachDebuggerWhenShown):
  • inspector/front-end/inspector.js: (WebInspector.attachDebuggerWhenShown):
3:31 PM Changeset in webkit [44397] by weinig@apple.com
  • 6 edits in branches/nitro-extreme/JavaScriptCore

2009-06-03 Sam Weinig <sam@webkit.org>

Reviewed by Geoffrey Garen.

Add back known this value optimization by abstracting
slow case if not JSCell jumps.

  • jit/JIT.h:
  • jit/JITCall.cpp: (JSC::JIT::compileOpCallVarargs): (JSC::JIT::compileOpCallVarargsSlowCase): (JSC::JIT::compileOpCall): (JSC::JIT::compileOpCallSlowCase):
  • jit/JITInlineMethods.h: (JSC::JIT::emitJumpSlowCaseIfNotJSCell): (JSC::JIT::linkSlowCaseIfNotJSCell):
  • jit/JITOpcodes.cpp: (JSC::JIT::emit_op_instanceof): (JSC::JIT::emitSlow_op_instanceof):
  • jit/JITPropertyAccess.cpp: (JSC::JIT::emit_op_get_by_val): (JSC::JIT::emitSlow_op_get_by_val): (JSC::JIT::emit_op_put_by_val): (JSC::JIT::emitSlow_op_put_by_val): (JSC::JIT::emit_op_get_by_id): (JSC::JIT::emitSlow_op_get_by_id): (JSC::JIT::emit_op_put_by_id): (JSC::JIT::emitSlow_op_put_by_id):
3:10 PM Changeset in webkit [44396] by mitz@apple.com
  • 2 edits in trunk/WebCore

Reviewed by Anders Carlsson.

  • fix a regression from the previous patch
  • platform/graphics/Font.cpp: Initialize shouldUseFontSmoothing to true.
3:03 PM Changeset in webkit [44395] by mitz@apple.com
  • 13 edits
    2 deletes in trunk

WebCore:

Reviewed by Anders Carlsson.

  • eliminate WebCoreTextRenderer
  • WebCore.base.exp: Updated.
  • WebCore.xcodeproj/project.pbxproj: Removed WebCoreTextRenderer.{h,mm}

and promoted WebFontCache.h to private.

  • platform/graphics/Font.cpp: (WebCore::Font::setShouldUseSmoothing): Added this static setter for

a new file-static boolean.

(WebCore::Font::shouldUseSmoothing): Added this static getter.

  • platform/graphics/Font.h: Decleared setShouldUseSmoothing() and

shouldUseSmoothing().

  • platform/graphics/mac/FontMac.mm: (WebCore::Font::drawGlyphs): Use Font::shouldUseSmoothing() instead of WebCoreShouldUseFontSmoothing().
  • platform/graphics/mac/WebLayer.mm: Removed unneeded #import.
  • platform/mac/WebCoreTextRenderer.h: Removed.
  • platform/mac/WebCoreTextRenderer.mm: Removed.

WebKit:

Reviewed by Anders Carlsson.

  • WebKit project part of eliminating WebCoreTextRenderer
  • WebKit.xcodeproj/project.pbxproj: Changed WebKitNSStringExtras.m to

compile as Objective-C++.

WebKit/mac:

Reviewed by Anders Carlsson.

  • WebKit part of eliminating WebCoreTextRenderer
  • Misc/WebKitNSStringExtras.m: (webkit_CGCeiling): Added. (-[NSString _web_drawAtPoint:font:textColor:]): Replaced the malloc()ed

string buffer with a Vector. Moved code from
WebCoreDrawTextAtPoint() to here.

(-[NSString _web_drawDoubledAtPoint:withTopColor:bottomColor:font:]):
(-[NSString _web_widthWithFont:]): Replaced the malloc()ed string buffer

with a Vector. Moved code from WebCoreTextFloatWidth() to here.

  • WebView/WebHTMLView.mm: (-[WebHTMLView _addToStyle:fontA:fontB:]): Replaced call to

WebCoreFindFont() with use of
+[WebFontCache fontWithFamily:traits:weight:size:].

  • WebView/WebView.mm: (+[WebView _setAlwaysUsesComplexTextCodePath:]): Changed to call

Font::setCodePath() directly.

(+[WebView _setShouldUseFontSmoothing:]): Changed to call

Font::setShouldUseSmoothing().

(+[WebView _shouldUseFontSmoothing]): Changed to call

Font::shouldUseSmoothing().

2:11 PM Changeset in webkit [44394] by mrowe@apple.com
  • 4 edits in branches/WWDC-2009-branch

Versioning.

2:09 PM Changeset in webkit [44393] by mrowe@apple.com
  • 1 copy in tags/Safari-6530.15

New tag.

2:05 PM Changeset in webkit [44392] by mrowe@apple.com
  • 2 edits in branches/WWDC-2009-branch/JavaScriptCore

Merge r44356.

1:32 PM Changeset in webkit [44391] by levin@chromium.org
  • 2 edits in trunk/WebCore

2009-06-03 David Levin <levin@chromium.org>

Reviewed by Dimitri Glazkov.

v8's ScriptController::evaluate should protect the Frame like the jsc version.
https://bugs.webkit.org/show_bug.cgi?id=26172

This change is simply copying protections done for Frame in the method
WebCore::ScriptController::evaluate in the file js/ScriptController.cpp.

  • bindings/v8/ScriptController.cpp: (WebCore::ScriptController::evaluate):
1:17 PM Changeset in webkit [44390] by mitz@apple.com
  • 3 edits in trunk/WebKit/mac

Rubber-stamped by Mark Rowe.

  • remove a private method that was used only by Safari 3.0.
  • WebView/WebView.mm: Removed +_minimumRequiredSafariBuildNumber.
  • WebView/WebViewPrivate.h: Ditto.
11:24 AM Changeset in webkit [44389] by mitz@apple.com
  • 3 edits in trunk/WebCore

Reviewed by John Sullivan.

  • fix <rdar://problem/6841120> Use CTFontManager notifications instead of ATS notifications
  • platform/graphics/FontCache.h: Made it an error to destroy a FontCache instance.
  • platform/graphics/mac/FontCacheMac.mm: (WebCore::fontCacheRegisteredFontsChangedNotificationCallback): Added this notification callback for the kCTFontManagerRegisteredFontsChangedNotification, which calls invalidate(). (WebCore::FontCache::platformInit): Register for kCTFontManagerRegisteredFontsChangedNotification.
11:10 AM Changeset in webkit [44388] by mitz@apple.com
  • 2 edits in trunk/WebKit/mac
  • build fix
  • WebView/WebHTMLView.mm:
10:07 AM Changeset in webkit [44387] by kevino@webkit.org
  • 2 edits in trunk/WebCore

Reviewed by Kevin Ollivier.

Use CGContextShowGlyphsWithAdvances to get more accurate text rendering on Mac.

https://bugs.webkit.org/show_bug.cgi?id=26161

9:43 AM Changeset in webkit [44386] by Dimitri Glazkov
  • 2 edits in trunk/WebCore

2009-06-03 Pavel Feldman <pfeldman@chromium.org>

Reviewed by Timothy Hatcher.

Reorder ResourcesPanel components initialization to unfreeze resource list scroller.

https://bugs.webkit.org/show_bug.cgi?id=26159

  • inspector/front-end/ResourcesPanel.js: (WebInspector.ResourcesPanel):
9:41 AM Changeset in webkit [44385] by Dimitri Glazkov
  • 3 edits in trunk/WebCore

2009-06-03 Pavel Feldman <pfeldman@chromium.org>

Reviewed by Timothy Hatcher.

  • Fix for crash (preceded by assertion) in InspectorController::didCommitLoad when reloading or navigating with the Inspector open.
  • Fix for Inspector's Elements panel being empty when Inspector first appears.

https://bugs.webkit.org/show_bug.cgi?id=26134
https://bugs.webkit.org/show_bug.cgi?id=26135

  • inspector/InspectorController.cpp: (WebCore::InspectorController::scriptObjectReady): (WebCore::InspectorController::didLoadResourceFromMemoryCache): (WebCore::InspectorController::identifierForInitialRequest): (WebCore::InspectorController::ensureResourceTrackingSettingsLoaded):
  • inspector/InspectorController.h:
9:35 AM Changeset in webkit [44384] by mitz@apple.com
  • 3 edits in trunk/WebKit/mac

Reviewed by Anders Carlsson.

  • build fix
  • WebView/WebHTMLView.mm:
  • WebView/WebView.mm:
8:29 AM Changeset in webkit [44383] by Adam Roben
  • 2 edits in trunk/WebCore

Windows build fix after r44379

  • svg/graphics/SVGImage.cpp: Move EmptyClients.h back down below the other #includes to fix a compiler warning on Windows.
7:22 AM Changeset in webkit [44382] by Simon Hausmann
  • 2 edits in trunk/WebCore

2009-06-02 Kenneth Rohde Christiansen <kenneth.christiansen@openbossa.org>

Reviewed by Simon Hausmann.

Add workaround for crash in Linux Flash Player when hosted by
another toolkit than GTK+. Bug fixed at the Flash Player bugzilla,
issue (FP-2140).

7:21 AM Changeset in webkit [44381] by Simon Hausmann
  • 5 edits
    1 add in trunk/WebCore

2009-06-01 Kenneth Rohde Christiansen <kenneth.christiansen@openbossa.org>

Reviewed by Simon Hausmann.

Refactor the Qt plugin code to use NPP_SetWindow correctly,
to make resizing of plugins work.

Attention was paid to make sure that the windowed plugins scroll
synchronized with the page view. A manual test has been added.

12:33 AM Changeset in webkit [44380] by ap@webkit.org
  • 2 edits in trunk/LayoutTests

Rubber-stamped by Mark Rowe.

Fix appcache/fallback.html test broken by network simulator changes made for a preloading test.

  • http/tests/resources/network-simulator.php: Tell PHP that a variable is global.

Jun 2, 2009:

10:37 PM Changeset in webkit [44379] by Darin Adler
  • 41 edits in trunk

WebCore:

2009-06-02 Darin Adler <Darin Adler>

Reviewed by David Hyatt.

Bug 26112: viewless WebKit -- make events work
https://bugs.webkit.org/show_bug.cgi?id=26112

The main fix here is to make mouse and wheel event coordinates in the coordinate
system of the top level NSView rather than the NSWindow when in the viewless mode.
This is the design Hyatt chose, but the event part of it wasn't done yet.

Also fix FrameView to do normal reference counting instead of a strange model with
an explicit deref near creation time.

  • WebCore.base.exp: Updated.
  • page/EventHandler.cpp: (WebCore::EventHandler::eventLoopHandleMouseUp): Moved this function into the file to reduce conditionals in the header. (WebCore::EventHandler::eventLoopHandleMouseDragged): Ditto.
  • page/EventHandler.h: Reduced includes. Fixed formatting of Objective-C types. Made currentNSEvent a static member function. Added sendContextMenuEvent and eventMayStartDrag functions that takes NSEvent * so the conversion to PlatformMouseEvent can be done here rather than in WebKit. Reduced #if by making eventLoopHandleMouseUp and eventLoopHandleMouseDragged unconditional.
  • page/Frame.cpp: (WebCore::Frame::setView): Made this take a PassRefPtr since it takes ownership. (WebCore::Frame::createView): Changed to use RefPtr and FrameView::create and remove the explicit deref.
  • page/Frame.h: Changed setView to take a PassRefPtr.
  • page/FrameTree.cpp: Added newly-needed include.
  • page/FrameView.cpp: (WebCore::FrameView::FrameView): Got rid of one of the two constructors, and removed the initialization of m_refCount and call to show from the reamining one. (WebCore::FrameView::create): Added two create functions that do what the two constructors did before, except that they return a PassRefPtr to make sure the reference counting is handled correctly. (WebCore::FrameView::~FrameView): Removed assertion from when FrameView implemented its own reference counting.
  • page/FrameView.h: Inherit from RefCounted for reference counting. Made the constructor private and added create functions. Got rid of the hand-implemented reference counting in this class.
  • page/mac/EventHandlerMac.mm: (WebCore::currentNSEventSlot): Renamed currentEvent to currentNSEventSlot to make it more clear how it relates to currentNSEvent. (WebCore::EventHandler::currentNSEvent): Updated. (WebCore::CurrentEventScope::CurrentEventScope): Added. Use to set/reset the current event in a foolproof way. (WebCore::CurrentEventScope::~CurrentEventScope): Ditto. (WebCore::EventHandler::wheelEvent): Use CurrentEventScope. Pass the platform window in when constructing the PlatformWheelEvent. (WebCore::EventHandler::keyEvent): Use CurrentEventScope. (WebCore::lastEventIsMouseUp): Use currentNSEvent. (WebCore::EventHandler::passMouseDownEventToWidget): Ditto. (WebCore::EventHandler::eventLoopHandleMouseDragged): Ditto. (WebCore::EventHandler::eventLoopHandleMouseUp): Ditto. (WebCore::EventHandler::passSubframeEventToSubframe): Use currentPlatformMouseEvent to get a mouse event that has the appropriate platform window passed to create it. (WebCore::EventHandler::passWheelEventToWidget): Ditto. (WebCore::EventHandler::mouseDown): Ditto. (WebCore::EventHandler::mouseDragged): Ditto. (WebCore::EventHandler::mouseUp): Ditto. (WebCore::EventHandler::mouseMoved): Ditto. (WebCore::EventHandler::currentPlatformMouseEvent): Added. Passes the platform window that's now needed to create a PlatformMouseEvent. (WebCore::EventHandler::sendContextMenuEvent): Added. (WebCore::EventHandler::eventMayStartDrag): Added.
  • platform/HostWindow.h: Removed unneeded includes and constructor definition.
  • platform/PlatformMouseEvent.h: Sorted things in alphabetical order. Changed Mac constructor to take a windowView as well as the event. This is needed in viewless mode, since the "window" is actually an NSView, so the event has to know which view to compute the coordinates with. Made the same change to pointForEvent.
  • platform/PlatformWheelEvent.h: Ditto.
  • platform/mac/PlatformMouseEventMac.mm: (WebCore::pointForEvent): Convert point from window coordinates to view coordinates if a windowView is passed in. This is used in viewless mode. (WebCore::PlatformMouseEvent::PlatformMouseEvent): Ditto.
  • platform/mac/WheelEventMac.mm: (WebCore::PlatformWheelEvent::PlatformWheelEvent): Ditto.
  • platform/mac/WidgetMac.mm: (WebCore::Widget::convertFromContainingWindow): Fixed case where there is no platform widget and no parent. Before it would yield unpredictable results because of dispatching to a nil object and returning a structure. Now it returns the point without changing coordinates at all, which is what we need for this case in viewless mode.
  • rendering/RenderApplet.cpp: Removed unneeded includes. (WebCore::RenderApplet::intrinsicSize): Use widget function. (WebCore::RenderApplet::createWidgetIfNecessary): Ditto.
  • rendering/RenderApplet.h: Make more things private. Get rid of unneeded explicit destructor.
  • rendering/RenderFrame.cpp: Removed unneeded includes. (WebCore::RenderFrame::edgeInfo): Updated to use node function so header doesn't have to define element function. (WebCore::RenderFrame::viewCleared): Ditto. Also changed to use widget function.
  • rendering/RenderFrame.h: Removed unneeded includes. Made some things private. Got rid of element function.
  • rendering/RenderPart.cpp: Removed unneeded includes. (WebCore::RenderPart::~RenderPart): Changed to use clearWidget function. (WebCore::RenderPart::setWidget): Changed to use widget function. (WebCore::RenderPart::deleteWidget): Changed to use passed-in widget. This is now only called by the clearWidget function.
  • rendering/RenderPart.h: Removed unneeded forward declarations. Made more functions private. Updated deleteWidget to take widget argument.
  • rendering/RenderPartObject.cpp: (WebCore::RenderPartObject::~RenderPartObject): use frameView function instead of getting at m_view directly. (WebCore::RenderPartObject::updateWidget): Ditto. (WebCore::RenderPartObject::layout): Ditto. Same for widget and m_widget. (WebCore::RenderPartObject::viewCleared): Ditto.
  • rendering/RenderPartObject.h: Made some functions private.
  • rendering/RenderWidget.cpp: (WebCore::RenderWidget::RenderWidget): Initialize m_frameView with construction syntax instead of assignment. (WebCore::RenderWidget::destroy): Updated for name change of m_view to m_frameView. (WebCore::RenderWidget::~RenderWidget): Use clearWidget to delete the widget. (WebCore::RenderWidget::setWidget): Use clearWidget. (WebCore::RenderWidget::paint): Updated for name change of m_view to m_frameView. (WebCore::RenderWidget::deleteWidget): Changed to use passed-in widget.
  • rendering/RenderWidget.h: Made many functions protected, others private and made all data members private.
  • svg/animation/SMILTime.h: Removed unhelpful max and min functions. These just do what std::max and std::min will already do automatically for this type, so they are not helpful.
  • svg/graphics/SVGImage.cpp: (WebCore::SVGImage::SVGImage): Removed unneeded initial values for types that initialize to zero without anything explicit. (WebCore::SVGImage::~SVGImage): Update since m_frame and m_frameView are no longer stored. (WebCore::SVGImage::setContainerSize): Ditto. (WebCore::SVGImage::usesContainerSize): Ditto. (WebCore::SVGImage::size): Ditto. (WebCore::SVGImage::hasRelativeWidth): Ditto. (WebCore::SVGImage::hasRelativeHeight): Ditto. (WebCore::SVGImage::draw): Ditto. (WebCore::SVGImage::nativeImageForCurrentFrame): Ditto. (WebCore::SVGImage::dataChanged): Ditto.
  • svg/graphics/SVGImage.h: Removed unneeded includes and unneeded data members m_document, m_frame, m_frameView, and m_minSize.

WebKit/mac:

2009-06-02 Darin Adler <Darin Adler>

Reviewed by David Hyatt.

Bug 26112: viewless WebKit -- make events work
https://bugs.webkit.org/show_bug.cgi?id=26112

One change here is to make the -[WebFrame frameView] function assert if ever called
in viewless mode, and fix many callers that would trip that assertion.

A major change is to put some methods and data in WebView that are currently in
WebHTMLView, used only in viewless mode. A next step will be to use the WebView
methods whenever possible, even when not in the viewless mode.

Also fix FrameView to do normal reference counting instead of a strange model with
an explicit deref near creation time.

  • WebCoreSupport/WebChromeClient.mm: (WebChromeClient::scrollRectIntoView): Add code to start in the appropriate place when dealing with viewless mode. This gets triggered when visiting the Google home page. (WebChromeClient::setToolTip): Changed to call WebView instead of WebHTMLView. (WebChromeClient::print): Changed to use a new selector that doesn't require a WebFrameView if present. Also don't even try to use the old selector in viewless mode.
  • WebCoreSupport/WebEditorClient.mm: (WebEditorClient::respondToChangedSelection): Changed to call WebView instead of WebHTMLView.
  • WebCoreSupport/WebFrameLoaderClient.mm: (WebFrameLoaderClient::transitionToCommittedForNewPage): Added more code paths for viewless mode to skip things we can't do in that mode, with appropriate FIXME. Use Frame::create and RefPtr and eliminate the strange reference counting of FrameView.
  • WebView/WebDataSource.mm: (-[WebDataSource _receivedData:]): Added a _usesDocumentViews guard around code that's specific to document views.
  • WebView/WebFrame.mm: (-[WebFrame _updateBackgroundAndUpdatesWhileOffscreen]): Added a _usesDocumentViews guard around code that's specific to document views. (-[WebFrame _hasSelection]): Added an implementation for viewless mode. (-[WebFrame _clearSelection]): Assert we're not in viewless mode; it doesn't really make sense to clear the selection in only one frame in viewless mode. Later we can decide what to do. (-[WebFrame _dragSourceMovedTo:]): Assert we're not in viewless mode; the dragging code for viewless mode shouldn't have to involve the WebFrame object at all. (-[WebFrame _dragSourceEndedAt:operation:]): Ditto. (-[WebFrame frameView]): Assert we're not in viewless mode. This assertion fires often, but it's a great pointer to code that needs to be changed.
  • WebView/WebHTMLView.mm: (-[WebHTMLView hitTest:]): Tweaked a comment. (-[WebHTMLView _updateMouseoverWithEvent:]): Fixed a bug where the fake event for moving the mouse out of the old view ended up overwriting the event for moving the mouse within the new view. (-[WebHTMLView mouseDown:]): Got rid of explicit conversion of event to PlatformMouseEvent in call to sendContextMenuEvent; that's no longer possible without passing another argument, and it's now handled in EventHandler.
  • WebView/WebTextCompletionController.h: Copied from WebKit/mac/WebView/WebHTMLView.mm. Removed everything except for the WebTextCompletionController class.
  • WebView/WebTextCompletionController.mm: Copied from WebKit/mac/WebView/WebHTMLView.mm. Ditto.
  • WebView/WebUIDelegatePrivate.h: Added webView:printFrame: method.
  • WebView/WebView.mm: Moved includes and fields in from WebHTMLView. (-[WebView _usesDocumentViews]): Updated for name change from useDocumentViews to usesDocumentViews. (-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]): Ditto. (-[WebView drawSingleRect:]): Ditto. (-[WebView isFlipped]): Ditto. (-[WebView setFrameSize:]): Ditto. Also changed to use _mainCoreFrame method. (-[WebView _viewWillDrawInternal]): Ditto. (-[WebView viewWillDraw]): Ditto. (-[WebView drawRect:]): Ditto. (-[WebView _close]): Added code to nil out the lastMouseoverView global. (-[WebView _dashboardRegions]): Use _mainCoreFrame. (-[WebView setProhibitsMainFrameScrolling:]): Ditto. (-[WebView _setInViewSourceMode:]): Ditto. (-[WebView _inViewSourceMode]): Ditto. (-[WebView _attachScriptDebuggerToAllFrames]): Ditto. (-[WebView _detachScriptDebuggerFromAllFrames]): Ditto. (-[WebView textIteratorForRect:]): Ditto. (-[WebView _executeCoreCommandByName:value:]): Ditto. (-[WebView addWindowObserversForWindow:]): Ditto. (-[WebView removeWindowObservers]): Ditto. (-[WebView _updateFocusedAndActiveState]): Ditto. (-[WebView _updateFocusedAndActiveStateForFrame:]): Turned into a class method. Added code to handle the viewless case without calling frameView. (-[WebView _windowDidBecomeKey:]): Updated for name change from useDocumentViews to usesDocumentViews. (-[WebView _windowDidResignKey:]): Ditto. (-[WebView _windowWillOrderOnScreen:]): Ditto. (-[WebView mainFrame]): Tweaked. (-[WebView selectedFrame]): Added a conditional to avoid trying to get at the frame view in viewless case. (-[WebView _setZoomMultiplier:isTextOnly:]): Use _mainCoreFrame. (-[WebView setCustomTextEncodingName:]): Ditto. (-[WebView windowScriptObject]): Ditto. (-[WebView setHostWindow:]): Ditto. Also put some code that's needed only for document views inside _private->usesDocumentViews. (-[WebView _hitTest:dragTypes:]): Tweaked. (-[WebView acceptsFirstResponder]): Added case for viewless mode along with a FIXME, since it's not complete. (-[WebView becomeFirstResponder]): Ditto. (-[WebView _webcore_effectiveFirstResponder]): Put the body of this inside a usesDocumentView check, because we don't need the first responder forwarding in viewless mode. (-[WebView setNextKeyView:]): Ditto. (-[WebView mouseDown:]): Added. Copied from WebHTMLView. FIXME in here suggests that we make WebHTMLView share this one soon, which I think is practical. (-[WebView mouseUp:]): Ditto. (-[WebView setHoverFeedbackSuspended:]): Added a code path for viewless mode. (-[WebView shouldClose]): Use _mainCoreFrame. (-[WebView aeDescByEvaluatingJavaScriptFromString:]): Ditto. (-[WebView setEditable:]): Ditto. (-[WebView _frameViewAtWindowPoint:]): Added an assertion that we're not in viewless mode since this method makes no sense in that mode. (-[WebView _setMouseDownEvent:]): Added. Copied from WebHTMLView. I plan to eliminate the one in WebHTMLView soon. (-[WebView _cancelUpdateMouseoverTimer]): Ditto. (-[WebView _stopAutoscrollTimer]): Ditto. (+[WebView _updateMouseoverWithEvent:]): Ditto. (-[WebView _updateMouseoverWithFakeEvent]): Ditto. (-[WebView _setToolTip:]): Added. Calls through to the WebHTMLView version. (-[WebView _selectionChanged]): Ditto. (-[WebView _mainCoreFrame]): Added. (-[WebView _needsOneShotDrawingSynchronization]): Moved into the WebInternal category. (-[WebView _setNeedsOneShotDrawingSynchronization:]): Ditto. (-[WebView _startedAcceleratedCompositingForFrame:]): Ditto. (-[WebView _stoppedAcceleratedCompositingForFrame:]): Ditto. (viewUpdateRunLoopObserverCallBack): Ditto. (-[WebView _scheduleViewUpdate]): Ditto.
  • WebView/WebViewInternal.h: Made most of the file not compile at all when included from non-C++ source files, elminating some excess declarations and typedefs. Moved more methods into the real internal category. Added new methods _setMouseDownEvent, _cancelUpdateMouseoverTimer, _stopAutoscrollTimer, _updateMouseoverWithFakeEvent, _selectionChanged, and _setToolTip:.

WebKit/wx:

2009-06-02 Darin Adler <Darin Adler>

Reviewed by David Hyatt.

  • WebKitSupport/FrameLoaderClientWx.cpp: (WebCore::FrameLoaderClientWx::transitionToCommittedForNewPage): Use FrameView::create and RefPtr instead of the old "crazy" reference counting.
8:15 PM Changeset in webkit [44378] by agl@chromium.org
  • 4 edits in trunk/WebCore

2009-06-02 Adam Langley <agl@google.com>

Reviewed by Eric Seidel.

The previous code was assuming that we'll be painting buttons on the scrollbar
which isn't true on Linux. To reproduce, resize a page with scrollbars until
they are less than two widths high.

This will need pixel test baselines to be updated in the Chromium tree.

  • platform/chromium/ScrollbarThemeChromium.cpp: move this function...
  • platform/chromium/ScrollbarThemeChromiumWin.cpp: (WebCore::ScrollbarThemeChromium::trackRect): ... to here
  • platform/chromium/ScrollbarThemeChromiumLinux.cpp: (WebCore::ScrollbarThemeChromium::trackRect): add an alternative which doesn't remove the track when the scrollbar is less than two widths high.
7:57 PM Changeset in webkit [44377] by jberlin@apple.com
  • 2 edits in trunk/WebKitTools

2009-06-02 Jessie Berlin <jberlin@apple.com>

Reviewed by Mark Rowe.


Add "replace" behavior so that it shows the addition part of the
replacement of the file first, and then shows the changes.


Future: Add in showing the removal part of the replacement.

  • Scripts/svn-create-patch:
7:01 PM Changeset in webkit [44376] by mrowe@apple.com
  • 8 edits in trunk

Remove workaround that was added to address <rdar://problem/5488678> as it no longer affects our Tiger builds.

Reviewed by Anders Carlsson.

  • Configurations/Base.xcconfig:
5:19 PM Changeset in webkit [44375] by eric@webkit.org
  • 3 edits
    2 adds in trunk

2009-06-02 Eric Seidel <eric@webkit.org>

Reviewed by Maciej Stachowiak.

Insert*List on an stand-alone image in a content editable region ASSERTS
ASSERTION FAILED: isStartOfParagraph(startOfParagraphToMove)
https://bugs.webkit.org/show_bug.cgi?id=19066

Attempt to fix this by noticing that we inserted the list inside
the selection which includes the image, and re-adjust the selection
to not include the list before trying to move the image into
the list item.

Test: editing/execCommand/list-wrapping-image-crash.html

  • editing/InsertListCommand.cpp: (WebCore::InsertListCommand::doApply):
4:09 PM Changeset in webkit [44374] by eric@webkit.org
  • 3 edits in trunk/WebCore

2009-06-02 Eric Seidel <eric@webkit.org>

Reviewed by Darin Adler.

Rename PositionIterator members in hope of futher clarity
https://bugs.webkit.org/show_bug.cgi?id=24854

Rename m_parent to m_anchorNode (since although it's always the parent
of the previous m_child member, it is not always the parent of the effective position)
Rename m_child to m_nodeAfterPositionInAnchor to make clear that it's the node
directly following the position. This member is often NULL, but is always
a child of m_parent, now m_anchorNode if set.
Rename m_offset to m_offsetInAnchor (since it's interpreted relative to m_anchorNode)

  • dom/PositionIterator.cpp: (WebCore::PositionIterator::operator Position): (WebCore::PositionIterator::increment): (WebCore::PositionIterator::decrement): (WebCore::PositionIterator::atStart): (WebCore::PositionIterator::atEnd): (WebCore::PositionIterator::atStartOfNode): (WebCore::PositionIterator::atEndOfNode): (WebCore::PositionIterator::isCandidate):
  • dom/PositionIterator.h: (WebCore::PositionIterator::PositionIterator): (WebCore::PositionIterator::node): (WebCore::PositionIterator::offsetInLeafNode):
3:08 PM Changeset in webkit [44373] by jianli@chromium.org
  • 1 edit in trunk/WebCore/ChangeLog

Fix the incorrect bug link in WebCore/ChangeLog for r44366.

2:46 PM Changeset in webkit [44372] by ap@webkit.org
  • 2 edits in trunk/LayoutTests

Land correct results for a test I just added (forgot to regenerate them after adding new
test cases).

  • fast/xpath/py-dom-xpath/expressions-expected.txt:
2:43 PM Changeset in webkit [44371] by pkasting@chromium.org
  • 4 edits in trunk/WebCore

Revert r44276.

2:42 PM Changeset in webkit [44370] by cmarrin@apple.com
  • 1 edit
    4 moves in trunk/LayoutTests

Moved CSSMatrix tests into LayoutTests/transforms so both 2D and 3D versions get tested in all cases, as per discussion with Maciej

2:33 PM Changeset in webkit [44369] by eric@webkit.org
  • 5 edits in trunk

2009-06-02 Julien Chaffraix <jchaffraix@webkit.org>

Reviewed by Eric Seidel.

Bug 17167: Failures in fast/dom/Node/initial-values.html

This partly solve a compatibility issue with other browsers. It will also
make us more consistent while handling XHTML element.

The issue is that when we create an XHTML element inside an HTML document
(as it is the case when calling createElementNS), we default to the HTML
behaviour in nodeName. As we cannot test if an HTMLElement is an XHTML
element, our fix is to check whether it has a prefix and then default
to XML behaviour for nodeName.

  • html/HTMLElement.cpp: (WebCore::HTMLElement::nodeName): Add a prefix check before returning the uppercase tagName (HTML behaviour).
2:31 PM Changeset in webkit [44368] by eric@webkit.org
  • 3 edits in trunk/WebCore

2009-06-02 Eric Seidel <eric@webkit.org>

Reviewed by Maciej Stachowiak.

Add a compareBoundaryPoints which takes RangeBoundaryPoints
https://bugs.webkit.org/show_bug.cgi?id=25500

I noticed the need for this function when removing compareBoundaryPoints(Position, Position)
This patch is almost entirely minus lines.

No functional changes, thus no tests.

  • dom/Range.cpp: (WebCore::Range::setStart): (WebCore::Range::setEnd): (WebCore::Range::compareBoundaryPoints): (WebCore::Range::boundaryPointsValid):
  • dom/Range.h:
2:31 PM Changeset in webkit [44367] by eric@webkit.org
  • 11 edits in trunk/WebCore

2009-06-02 Eric Seidel <eric@webkit.org>

Reviewed by Maciej Stachowiak.

Remove Range::compareBoundaryPoints(Position, Position) per Darin's suggestion in bug 25056
https://bugs.webkit.org/show_bug.cgi?id=25500

Darin indicated the Range should deal only with primitive DOM node/offset
pairs, and that Position (which is a more robust editing construct) should have
its own comparison functions and that Range.h should not mention Position at all.

Turns out that Position already has a comparePositions() function (which knows
how to additionally handled positions in shadow trees). So I've just changed
all callers of compareBoundaryPoints(Position, Position) to use the existing
comparePositions() function. I've also added a comparePositions which takes
VisiblePositions for convenience.

  • dom/Range.cpp:
  • dom/Range.h:
  • editing/ApplyStyleCommand.cpp: (WebCore::ApplyStyleCommand::updateStartEnd): (WebCore::ApplyStyleCommand::applyBlockStyle): (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange): (WebCore::ApplyStyleCommand::applyInlineStyle): (WebCore::ApplyStyleCommand::applyInlineStyleToRange): (WebCore::ApplyStyleCommand::removeInlineStyle): (WebCore::ApplyStyleCommand::nodeFullySelected): (WebCore::ApplyStyleCommand::nodeFullyUnselected):
  • editing/CompositeEditCommand.cpp: (WebCore::CompositeEditCommand::deleteInsignificantText): (WebCore::CompositeEditCommand::moveParagraphContentsToNewBlockIfNecessary): (WebCore::CompositeEditCommand::moveParagraphs):
  • editing/DeleteSelectionCommand.cpp: (WebCore::DeleteSelectionCommand::initializeStartEnd): (WebCore::DeleteSelectionCommand::handleGeneralDelete): (WebCore::DeleteSelectionCommand::mergeParagraphs):
  • editing/SelectionController.cpp: (WebCore::SelectionController::nodeWillBeRemoved):
  • editing/VisibleSelection.cpp: (WebCore::VisibleSelection::toNormalizedRange):
  • editing/htmlediting.cpp: (WebCore::comparePositions):
  • editing/htmlediting.h:
  • page/EventHandler.cpp: (WebCore::EventHandler::handleMousePressEventSingleClick):
2:09 PM Changeset in webkit [44366] by jianli@chromium.org
  • 4 edits in trunk/WebCore

2009-06-02 Albert J. Wong <ajwong@chromium.org>

Reviewed by Dimitri Glazkov.

https://bugs.webkit.org/show_bug.cgi?id=25595
Upstream v8_utility.h functions into V8Utilities.h. This patch has
some transitional code to make upstreaming easier. This code will
be deleted in a few days.

  • bindings/v8/ScriptFunctionCall.cpp: (WebCore::ScriptFunctionCall::construct): NewInstance -> newInstance.
  • bindings/v8/V8Utilities.h: (WebCore::AllowAllocation::AllowAllocation): Function added. (WebCore::AllowAllocation::~AllowAllocation): Function added. (WebCore::SafeAllocation::NewInstance): Function added.
  • bindings/v8/WorkerContextExecutionProxy.cpp: (WebCore::WorkerContextExecutionProxy::initContextIfNeeded): NewInstance -> newInstance. (WebCore::WorkerContextExecutionProxy::toV8): NewInstance -> newInstance.
1:59 PM Changeset in webkit [44365] by andersca@apple.com
  • 4 edits in trunk/WebKitLibraries

2009-06-02 Anders Carlsson <andersca@apple.com>

Rubber-stamped by Mark Rowe.

Update WebKitSystemInterface.

  • libWebKitSystemInterfaceLeopard.a:
  • libWebKitSystemInterfaceSnowLeopard.a:
  • libWebKitSystemInterfaceTiger.a:
1:25 PM Changeset in webkit [44364] by mitz@apple.com
  • 2 edits in trunk/WebCore

Reviewed by John Sullivan.

  • fix <rdar://problem/6940747> Search field’s focus ring is outset
  • rendering/RenderThemeWin.cpp: (WebCore::RenderThemeWin::adjustSearchFieldStyle): Set the focused search field outline offset to -2.
12:01 PM Changeset in webkit [44363] by bfulgham@webkit.org
  • 4 edits in trunk/WebKitTools

2009-06-02 Brent Fulgham <bfulgham@webkit.org>

Reviewed by Adam Roben.

Update WinLauncher for WebKitCreateInstance.
https://bugs.webkit.org/show_bug.cgi?id=26136

  • WinLauncher/WinLauncher.cpp: Revise implementation to use WebKitCreateInstance (rather than CoCreateInstance).
  • WinLauncher/WinLauncher.h: Modify include path for WebKit.h to match DumpRenderTree style.
  • WinLauncher/WinLauncher.vcproj: Remove unnecessary WebKit.tlb and EmbeddedIDL flags from build.
11:10 AM Changeset in webkit [44362] by weinig@apple.com
  • 2 edits in trunk/WebCore

2009-06-02 Sam Weinig <sam@webkit.org>

Reviewed by Alexey Proskuryakov.

Add list of unimplemented event handlers to DOMWindow.

  • page/DOMWindow.idl:
10:59 AM Changeset in webkit [44361] by ap@webkit.org
  • 11 edits
    17 adds in trunk

Reviewed by Sam Weinig.

https://bugs.webkit.org/show_bug.cgi?id=26133
Adapt and import py-dom-xpath tests

Tests: fast/xpath/py-dom-xpath/abbreviations.html

fast/xpath/py-dom-xpath/axes.html
fast/xpath/py-dom-xpath/data.html
fast/xpath/py-dom-xpath/expressions.html
fast/xpath/py-dom-xpath/functions.html
fast/xpath/py-dom-xpath/nodetests.html
fast/xpath/py-dom-xpath/paths.html
fast/xpath/py-dom-xpath/predicates.html

Fix bugs found with this test suite:

  • name and local-name were incorrect for processing instructions (XPath expanded-name doesn't match DOM exactly);
  • name, local-name and namespace functions should crash on attribute nodes;
  • attemps to make node sets from other types were not detected as errors.

No performance impact.

  • xml/XPathExpressionNode.h: Track type conversion errors that happen during evaluation. An error won't stop evaluation, but an exception will be raised afterwards. We could also detect conversion errors at compile time, but not if we're going to support XPath variables (which is unnecessary for XPathEvaluator, but will be necessary if we decide to make our own XSLT one day).
  • xml/XPathExpression.cpp: (WebCore::XPathExpression::evaluate): Check whether a type conversion exception occurred during evaluation, and raise an excpetion if it did.
  • xml/XPathFunctions.cpp: (WebCore::XPath::expandedNameLocalPart): (WebCore::XPath::expandedName): XPath name(), local-name() and namespace-uri() functions are defined in terms of expanded-name, which doesn't match anything available via DOM exactly. Calculate the expanded name properly. (WebCore::XPath::FunNamespaceURI::evaluate): This function could crash if used with an attribute node, because it released what was possibly the only reference to attribute node before using it. Changed the function to avoid such situation. (WebCore::XPath::FunLocalName::evaluate): Ditto. Also, used the new expandedNameLocalPart() to work properly with processing instruction nodes. (WebCore::XPath::FunName::evaluate): Ditto (using expandedName()). (WebCore::XPath::FunCount::evaluate): Signal an error if the argument is not a node-set (by using toNodeSet unconditionally, which will raise an error, and return an empty set).
  • xml/XPathPath.cpp: (WebCore::XPath::Filter::evaluate): Signal an error if the expression evaluation result is not a node-set.
  • xml/XPathPath.h: (WebCore::XPath::Filter::resultType): A Filter's result is actually always a node-set (this is not so for FilterExpr production in the spec, but is for us, because we don't naively map BNF productions to classes).
  • xml/XPathPredicate.cpp: (WebCore::XPath::Union::evaluate): Signal an error if either side is not a node-set.
  • xml/XPathStep.cpp: Removed an unnecesary include.
  • xml/XPathValue.cpp: (WebCore::XPath::Value::toNodeSet): Signal an error if conversion fails. (WebCore::XPath::Value::modifiableNodeSet): Ditto. (WebCore::XPath::Value::toNumber): Don't allow inputs that don't match XPath Number production (in particular, those using exponential notation).
10:33 AM Changeset in webkit [44360] by weinig@apple.com
  • 6 edits in trunk

WebCore:

2009-06-01 Sam Weinig <sam@webkit.org>

Reviewed by Brady Eidson.

Part of https://bugs.webkit.org/show_bug.cgi?id=26100
Add missing event handler properties to the DOMWindow

Added oncontextmenu, oninput, and onmessage event handlers to
the DOMWindow. Aditionally, the onloadstart, onprogress, onstalled,
and onsuspend event handlers were implemented but not added to
DOMWindow.idl.

  • page/DOMWindow.cpp: (WebCore::DOMWindow::oninput): (WebCore::DOMWindow::setOninput): (WebCore::DOMWindow::onmessage): (WebCore::DOMWindow::setOnmessage): (WebCore::DOMWindow::oncontextmenu): (WebCore::DOMWindow::setOncontextmenu):
  • page/DOMWindow.h:
  • page/DOMWindow.idl:

LayoutTests:

2009-06-01 Sam Weinig <sam@webkit.org>

Reviewed by Brady Eidson.

Part of https://bugs.webkit.org/show_bug.cgi?id=26100
Add missing event handler properties to the DOMWindow

Added oncontextmenu, oninput, and onmessage event handlers to
the DOMWindow. Aditionally, the onloadstart, onprogress, onstalled,
and onsuspend event handlers were implemented but not added to
DOMWindow.idl.

  • fast/dom/Window/window-properties-expected.txt:
9:57 AM Changeset in webkit [44359] by xan@webkit.org
  • 2 edits in trunk/JavaScriptCore

2009-06-02 Xan Lopez <xlopez@igalia.com>

Reviewed by Sam Weinig.

Use C-style comments in Platform.h so it can be included from C
files.

  • wtf/Platform.h:
7:54 AM Changeset in webkit [44358] by vestbo@webkit.org
  • 2 edits in trunk/WebKitTools

2009-06-02 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>

Rubber-stamped by Adam Roben.

[Qt] Fix Perl warning about uninitialized value (passedConfiguration())

6:54 AM Changeset in webkit [44357] by vestbo@webkit.org
  • 4 edits in trunk

2009-06-02 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>

Rubber-stamped by Simon Hausmann.

Use File::Spec->tmpdir instead of hardcoded paths for tempfile() dir

This fixes the Windows-build if the user does not have a /tmp directory.

2:34 AM Changeset in webkit [44356] by barraclough@apple.com
  • 2 edits in trunk/JavaScriptCore

2009-06-02 Gavin Barraclough <barraclough@apple.com>

Reviewed by Oliver ">>" Hunt.

emitSlow_op_rshift is linking the wrong number of slow cases, if !supportsFloatingPoint().
Fixerate, and refactor/comment the code a little to make it clearer what is going on.

  • jit/JITArithmetic.cpp: (JSC::JIT::emit_op_rshift): (JSC::JIT::emitSlow_op_rshift):
2:17 AM Changeset in webkit [44355] by abarth@webkit.org
  • 3 edits
    2 deletes in trunk

Revert 44354. Test does not pass.

1:37 AM Changeset in webkit [44354] by abarth@webkit.org
  • 3 edits
    3 adds in trunk

WebCore:

2009-06-02 Grace Kloba <klobag@gmail.com>

Reviewed by Darin Adler. Landed by Adam Barth.

https://bugs.webkit.org/show_bug.cgi?id=26016

As HTMLKeygenElement is derived from HTMLSelectElement, HTMLOptionElement::ownerSelectElement() needs to check both selectTag and keygenTag.
Test: fast/dom/HTMLKeygenElement/keygen-option-select.html

  • html/HTMLOptionElement.cpp: (WebCore::HTMLOptionElement::ownerSelectElement):

LayoutTests:

2009-06-02 Grace Kloba <klobag@gmail.com>

Reviewed by Darin Adler. Landed by Adam Barth.

https://bugs.webkit.org/show_bug.cgi?id=26016

As HTMLKeygenElement is derived from HTMLSelectElement, HTMLOptionElement::ownerSelectElement() needs to check both selectTag and keygenTag. Added layout test to make sure set selected on option will affect keygen element.

  • fast/dom/HTMLKeygenElement: Added.
  • fast/dom/HTMLKeygenElement/keygen-option-select-expected.txt: Added.
  • fast/dom/HTMLKeygenElement/keygen-option-select.html: Added.
1:32 AM Changeset in webkit [44353] by abarth@webkit.org
  • 1 edit in trunk/WebCore/ChangeLog

Add link to bug.

1:30 AM Changeset in webkit [44352] by abarth@webkit.org
  • 8 edits
    2 deletes in trunk

Revert 44351.

12:56 AM Changeset in webkit [44351] by abarth@webkit.org
  • 8 edits
    2 adds in trunk

WebCore:

2009-06-01 Ben Murdoch <benm@google.com>

Reviewed by Darin Adler. Landed by Adam Barth.

https://bugs.webkit.org/show_bug.cgi?id=25710

Fix a bug that causes database transactions to fail if a history navigation to a hash fragment of the same document is made while resources (e.g. an XHR) are loading.

Test: storage/hash-change-with-xhr.html

  • loader/DocumentLoader.cpp: (WebCore::DocumentLoader::stopLoading):
  • loader/DocumentLoader.h:
  • loader/FrameLoader.cpp: (WebCore::FrameLoader::stopLoading): (WebCore::FrameLoader::stopAllLoaders):
  • loader/FrameLoader.h:
  • loader/FrameLoaderTypes.h: (WebCore::):
  • page/Page.cpp: (WebCore::Page::goToItem):

LayoutTests:

2009-06-02 Ben Murdoch <benm@google.com>

Reviewed by Darin Alder. Landed by Adam Barth.

https://bugs.webkit.org/show_bug.cgi?id=25710

Fix a bug that causes database transactions to fail if a history navigation to a hash fragment of the same document is made while resources (e.g. an XHR) are loading.

  • storage/hash-change-with-xhr-expected.txt: Added.
  • storage/hash-change-with-xhr.html: Added.
12:26 AM Changeset in webkit [44350] by abarth@webkit.org
  • 2 edits
    3 adds in trunk/LayoutTests

2009-06-02 Johnny Ding <johnnyding.webkit@gmail.com>

Reviewed by Alexey Proskuryakov. Landed by Adam Barth.

https://bugs.webkit.org/show_bug.cgi?id=24747

Add a test case for multiple requests for same sub-resource due to preload.

  • http/tests/loading/preload-img-test-expected.txt: Added.
  • http/tests/loading/preload-img-test.html: Added.
  • http/tests/loading/resources/preload-test.jpg: Added.
  • http/tests/resources/network-simulator.php:
12:00 AM Changeset in webkit [44349] by abarth@webkit.org
  • 2 edits in trunk/WebKitTools

2009-06-01 Yongjun Zhang <yongjun.zhang@nokia.com>>

Reviewed by Holger Freyther. Landed by Adam Barth.

<https://bugs.webkit.org/show_bug.cgi?id=26070>

[Qt] EventSender.keyDown doesn't support Arrow Up and Down keys.
Add Down and Up key support.


  • DumpRenderTree/qt/jsobjects.cpp: (EventSender::keyDown):

Jun 1, 2009:

11:40 PM Changeset in webkit [44348] by abarth@webkit.org
  • 2 edits in trunk/WebCore

2009-06-01 Jeremy Orlow <jorlow@chromium.org>

Reviewed by Darin Adler. Landed by Adam Barth.

Remove a redundant checkEncodedString call when constructing a
KURL object from a string.

  • platform/KURL.cpp: (WebCore::KURL::KURL):
10:59 PM Changeset in webkit [44347] by barraclough@apple.com
  • 2 edits in trunk/JavaScriptCore

2009-06-01 Gavin Barraclough <barraclough@apple.com>

Reviewed by NOBODY - speculative windows build fix (errm, for the other patch!).

  • jit/JITStubs.cpp: (JSC::):
10:54 PM Changeset in webkit [44346] by barraclough@apple.com
  • 2 edits in trunk/JavaScriptCore

2009-06-01 Gavin Barraclough <barraclough@apple.com>

Reviewed by NOBODY - speculative windows build fix.

  • assembler/AbstractMacroAssembler.h: (JSC::::CodeLocationCall::CodeLocationCall): (JSC::::CodeLocationNearCall::CodeLocationNearCall):
10:46 PM Changeset in webkit [44345] by ggaren@apple.com
  • 5 edits in branches/nitro-extreme

JavaScriptCore:

2009-06-01 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


Fixed some of the regression in crypto-aes.js. (8.5% speedup in
crypto-aes.js.)


SunSpider reports no change overall.


Division was producing double results, which took the slow path through
array access code.


Strangely, all my attempts at versions of this patch that modified array
access code to accept ints encoded as doubles along the fast or slow paths
were regressions. So I did this instead.

  • jit/JITArithmetic.cpp: (JSC::JIT::emit_op_div): When dividing an int by an int, go ahead and try to turn the result into an int. Don't just do int division, though, because testing shows it to be slower than SSE double division, and the corner cases are pretty complicated / lengthy on top of that. Also, don't try to canonicalize division of known tiny numerators into ints, since that's a waste of time.

LayoutTests:

2009-06-01 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


Added test cases for some division edge cases I broke.

  • fast/js/arithmetic-expected.txt:
  • fast/js/resources/arithmetic.js: Also modified this test to avoid constant folding.
10:36 PM Changeset in webkit [44344] by barraclough@apple.com
  • 8 edits in trunk/JavaScriptCore

2009-06-01 Gavin Barraclough <barraclough@apple.com>

Reviewed by Olliej Hunt.

Change JITStub functions from being static members on the JITStub class to be
global extern "C" functions, and switch their the function signature declaration
in the definition of the functions to be C-macro generated. This makes it easier
to work with the stub functions from assembler code (since the names no longer
require mangling), and by delaring the functions with a macro we can look at
also auto-generating asm thunks to wrap the JITStub functions to perform the
work currently in 'restoreArgumentReference' (as a memory saving).

Making this change also forces us to be a bit more realistic about what is private
on the Register and CallFrame objects. Presently most everything on these classes
is private, and the classes have plenty of friends. We could befriend all the
global functions to perpetuate the delusion of encapsulation, but using friends is
a bit of a sledgehammer solution here - since friends can poke around with all of
the class's privates, and since all the major classes taht operate on Regsiters are
currently friends, right there is currently in practice very little protection at
all. Better to start removing friend delclarations, and exposing just the parts
that need to be exposed.

  • interpreter/CallFrame.h: (JSC::ExecState::returnPC): (JSC::ExecState::setCallerFrame): (JSC::ExecState::returnValueRegister): (JSC::ExecState::setArgumentCount): (JSC::ExecState::setCallee): (JSC::ExecState::setCodeBlock):
  • interpreter/Interpreter.h:
  • interpreter/Register.h: (JSC::Register::Register): (JSC::Register::i):
  • jit/JITStubs.cpp: (JSC::): (JSC::JITThunks::JITThunks): (JSC::JITThunks::tryCachePutByID): (JSC::JITThunks::tryCacheGetByID): (JSC::JITStubs::DEFINE_STUB_FUNCTION):
  • jit/JITStubs.h: (JSC::JITStubs::):
  • runtime/JSFunction.h: (JSC::JSFunction::nativeFunction): (JSC::JSFunction::classInfo):
  • runtime/JSGlobalData.h:
9:40 PM Changeset in webkit [44343] by oliver@apple.com
  • 2 edits in trunk/JavaScriptCore

Tidy up the literal parser.

Reviewed by Gavin Barraclogh.

Make the number lexing in the LiteralParser exactly match the JSON spec, which
makes us cover more cases, but also more strict. Also made string lexing only
allow double-quoted strings.

8:03 PM Changeset in webkit [44342] by Dimitri Glazkov
  • 2 edits in trunk/WebCore

2009-06-01 Dimitri Glazkov <Dimitri Glazkov>

Unreviewed, build fix.

Reposition platform guard, improperly placed by http://trac.webkit.org/changeset/44340
Bad Dimitri.

  • platform/KeyboardCodes.h: Repositioned the guard to avoid nested

WebCore namespace declarations.

6:20 PM Changeset in webkit [44341] by barraclough@apple.com
  • 10 edits in trunk/JavaScriptCore

2009-06-01 Gavin Barraclough <barraclough@apple.com>

Reviewed by Sam "WX" Weinig.

Allow the JIT to operate without relying on use of RWX memory, on platforms where this is supported.

This patch adds a switch to Platform.h (ENABLE_ASSEMBLER_WX_EXCLUSIVE) which enables this mode of operation.
When this flag is set, all executable memory will be allocated RX, and switched to RW only whilst being
modified. Upon completion of code generation the protection is switched back to RX to allow execution.

Further optimization will be required before it is desirable to enable this mode of operation by default;
enabling this presently incurs a 5%-10% regression.

(Submitting disabled - no performance impact).

  • assembler/AbstractMacroAssembler.h: (JSC::AbstractMacroAssembler::CodeLocationInstruction::repatchLoadToLEA): (JSC::AbstractMacroAssembler::CodeLocationLabel::fromFunctionPointer): (JSC::AbstractMacroAssembler::CodeLocationJump::relink): (JSC::AbstractMacroAssembler::CodeLocationCall::relink): (JSC::AbstractMacroAssembler::CodeLocationNearCall::relink): (JSC::AbstractMacroAssembler::CodeLocationDataLabel32::repatch): (JSC::AbstractMacroAssembler::CodeLocationDataLabelPtr::repatch): (JSC::AbstractMacroAssembler::ProcessorReturnAddress::relinkCallerToTrampoline): (JSC::AbstractMacroAssembler::ProcessorReturnAddress::relinkCallerToFunction): (JSC::AbstractMacroAssembler::ProcessorReturnAddress::relinkNearCallerToTrampoline): (JSC::AbstractMacroAssembler::ProcessorReturnAddress::relinkNearCallerToFunction): (JSC::AbstractMacroAssembler::PatchBuffer::PatchBuffer): (JSC::AbstractMacroAssembler::PatchBuffer::~PatchBuffer): (JSC::AbstractMacroAssembler::PatchBuffer::link): (JSC::AbstractMacroAssembler::PatchBuffer::patch): (JSC::AbstractMacroAssembler::PatchBuffer::performFinalization): (JSC::::CodeLocationCommon::nearCallAtOffset): (JSC::::CodeLocationCall::CodeLocationCall): (JSC::::CodeLocationNearCall::CodeLocationNearCall):
  • assembler/AssemblerBuffer.h: (JSC::AssemblerBuffer::executableCopy):
  • assembler/X86Assembler.h: (JSC::CAN_SIGN_EXTEND_U32_64): (JSC::X86Assembler::linkJump): (JSC::X86Assembler::linkCall): (JSC::X86Assembler::patchPointer): (JSC::X86Assembler::relinkJump): (JSC::X86Assembler::relinkCall): (JSC::X86Assembler::repatchInt32): (JSC::X86Assembler::repatchPointer): (JSC::X86Assembler::repatchLoadToLEA): (JSC::X86Assembler::patchInt32): (JSC::X86Assembler::patchRel32):
  • jit/ExecutableAllocator.h: (JSC::ExecutableAllocator::): (JSC::ExecutableAllocator::makeWritable): (JSC::ExecutableAllocator::makeExecutable):
  • jit/ExecutableAllocatorFixedVMPool.cpp: (JSC::FixedVMPoolAllocator::FixedVMPoolAllocator):
  • jit/ExecutableAllocatorPosix.cpp: (JSC::ExecutablePool::systemAlloc): (JSC::ExecutablePool::systemRelease): (JSC::ExecutableAllocator::reprotectRegion):
  • jit/ExecutableAllocatorWin.cpp:
  • jit/JITPropertyAccess.cpp: (JSC::JIT::patchGetByIdSelf): (JSC::JIT::patchPutByIdReplace):
  • wtf/Platform.h:
4:48 PM Changeset in webkit [44340] by Dimitri Glazkov
  • 2 edits
    1 delete in trunk/WebCore

2009-06-01 Dimitri Glazkov <Dimitri Glazkov>

Unreviewed, build fix.

  • platform/KeyboardCodes.h: Integrated contents of platform/chromium/KeyboardCodes.h

with a stern FIXME.

  • platform/chromium/KeyboardCodes.h: Removed.
4:38 PM Changeset in webkit [44339] by mrowe@apple.com
  • 3 edits in trunk/WebKitTools

svn-create-patch displays confusing "Broken pipe" errors from Subversion
when files have been renamed in local working copy. This was happening
because we invoke 'svn info' to determine the URL that the file was copied
from, but we were closing the pipe to the subprocess before SVN had finished
writing its output.

Reviewed by Sam Weinig.

  • Scripts/prepare-ChangeLog: Consume all 'svn info' output before closing the file handle.
  • Scripts/svn-create-patch: Ditto.
4:09 PM Changeset in webkit [44338] by Nikolas Zimmermann
  • 3 edits in trunk/WebCore

Reviewed by Eric Seidel.

Fix assertion error in --filters enabled debug builds.
Instead of using RefPtr<AtomicStringImpl> as keys for the hash maps in SVGFilterBuilder, just use AtomicString objects.

3:20 PM Changeset in webkit [44337] by Nikolas Zimmermann
  • 10 edits in trunk/WebCore

Reviewed by Eric Seidel.

Fix --filters enabled build on Mac.
Remove unnecessary 'boundingBox' parameter from finishRenderSVGContent() method.
Kill several warnings, to make build pass.

3:19 PM Changeset in webkit [44336] by bfulgham@webkit.org
  • 2 edits in trunk/JavaScriptCore

2009-05-29 Zoltan Horvath <hzoltan@inf.u-szeged.hu>

Reviewed by Darin Adler.

Inherits Interpreter class from FastAllocBase because it has been
instantiated by 'new' in JavaScriptCore/runtime/JSGlobalData.cpp.

  • interpreter/Interpreter.h:
2:52 PM Changeset in webkit [44335] by Dimitri Glazkov
  • 1 edit in trunk/WebCore/ChangeLog

ChangeLog spelling, meaning fixes.

2:50 PM Changeset in webkit [44334] by Dimitri Glazkov
  • 2 edits in trunk/WebCore

2009-06-01 Dimitri Glazkov <Dimitri Glazkov>

Reviewed by Dave Hyatt.

Fix Chromium build by adding an #ifdef.

  • platform/mac/ScrollbarThemeMac.mm: (WebCore::ScrollbarThemeMac::paint): Added an #ifdef.
2:37 PM Changeset in webkit [44333] by kov@webkit.org
  • 3 edits in trunk/WebKit/qt

2009-06-01 Benjamin C Meyer <benjamin.meyer@torchmobile.com>

Rubber-stamped by Gustavo Noronha.

Before guessing the url trim the string to remove whitespace added to the start/end by the user.

  • Api/qwebview.cpp: (QWebView::guessUrlFromString):
  • tests/qwebview/tst_qwebview.cpp: (tst_QWebView::guessUrlFromString_data):
2:28 PM Changeset in webkit [44332] by krit@webkit.org
  • 5 edits
    8 deletes in trunk/WebCore

2009-06-01 Dirk Schulze <krit@webkit.org>

Reviewed by Nikolas Zimmermann.

Remove last pieces of the old SVG filte system. They are not
usable with our current filter system. The new filter effects
will replace the functionality step by step.

  • GNUmakefile.am:
  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • svg/graphics/cairo: Removed.
  • svg/graphics/cairo/SVGResourceFilterCairo.cpp: Removed.
  • svg/graphics/cg: Removed.
  • svg/graphics/cg/SVGResourceFilterCg.cpp: Removed.
  • svg/graphics/cg/SVGResourceFilterCg.mm: Removed.
  • svg/graphics/filters/SVGFilterEffect.cpp: Removed.
  • svg/graphics/filters/SVGFilterEffect.h: Removed.
  • svg/graphics/filters/cg: Removed.
  • svg/graphics/filters/cg/SVGFEHelpersCg.h: Removed.
  • svg/graphics/filters/cg/SVGFEHelpersCg.mm: Removed.
  • svg/graphics/filters/cg/SVGFilterEffectCg.mm: Removed.
  • svg/graphics/filters/cg/WKArithmeticFilter.cikernel: Removed.
  • svg/graphics/filters/cg/WKArithmeticFilter.h: Removed.
  • svg/graphics/filters/cg/WKArithmeticFilter.m: Removed.
  • svg/graphics/filters/cg/WKComponentMergeFilter.cikernel: Removed.
  • svg/graphics/filters/cg/WKComponentMergeFilter.h: Removed.
  • svg/graphics/filters/cg/WKComponentMergeFilter.m: Removed.
  • svg/graphics/filters/cg/WKDiffuseLightingFilter.cikernel: Removed.
  • svg/graphics/filters/cg/WKDiffuseLightingFilter.h: Removed.
  • svg/graphics/filters/cg/WKDiffuseLightingFilter.m: Removed.
  • svg/graphics/filters/cg/WKDiscreteTransferFilter.cikernel: Removed.
  • svg/graphics/filters/cg/WKDiscreteTransferFilter.h: Removed.
  • svg/graphics/filters/cg/WKDiscreteTransferFilter.m: Removed.
  • svg/graphics/filters/cg/WKDisplacementMapFilter.cikernel: Removed.
  • svg/graphics/filters/cg/WKDisplacementMapFilter.h: Removed.
  • svg/graphics/filters/cg/WKDisplacementMapFilter.m: Removed.
  • svg/graphics/filters/cg/WKDistantLightFilter.cikernel: Removed.
  • svg/graphics/filters/cg/WKDistantLightFilter.h: Removed.
  • svg/graphics/filters/cg/WKDistantLightFilter.m: Removed.
  • svg/graphics/filters/cg/WKGammaTransferFilter.cikernel: Removed.
  • svg/graphics/filters/cg/WKGammaTransferFilter.h: Removed.
  • svg/graphics/filters/cg/WKGammaTransferFilter.m: Removed.
  • svg/graphics/filters/cg/WKIdentityTransferFilter.h: Removed.
  • svg/graphics/filters/cg/WKIdentityTransferFilter.m: Removed.
  • svg/graphics/filters/cg/WKLinearTransferFilter.cikernel: Removed.
  • svg/graphics/filters/cg/WKLinearTransferFilter.h: Removed.
  • svg/graphics/filters/cg/WKLinearTransferFilter.m: Removed.
  • svg/graphics/filters/cg/WKNormalMapFilter.cikernel: Removed.
  • svg/graphics/filters/cg/WKNormalMapFilter.h: Removed.
  • svg/graphics/filters/cg/WKNormalMapFilter.m: Removed.
  • svg/graphics/filters/cg/WKPointLightFilter.cikernel: Removed.
  • svg/graphics/filters/cg/WKPointLightFilter.h: Removed.
  • svg/graphics/filters/cg/WKPointLightFilter.m: Removed.
  • svg/graphics/filters/cg/WKSpecularLightingFilter.cikernel: Removed.
  • svg/graphics/filters/cg/WKSpecularLightingFilter.h: Removed.
  • svg/graphics/filters/cg/WKSpecularLightingFilter.m: Removed.
  • svg/graphics/filters/cg/WKSpotLightFilter.cikernel: Removed.
  • svg/graphics/filters/cg/WKSpotLightFilter.h: Removed.
  • svg/graphics/filters/cg/WKSpotLightFilter.m: Removed.
  • svg/graphics/filters/cg/WKTableTransferFilter.cikernel: Removed.
  • svg/graphics/filters/cg/WKTableTransferFilter.h: Removed.
  • svg/graphics/filters/cg/WKTableTransferFilter.m: Removed.
  • svg/graphics/mac: Removed.
  • svg/graphics/mac/SVGResourceFilterPlatformDataMac.h: Removed.
  • svg/graphics/mac/SVGResourceFilterPlatformDataMac.mm: Removed.
  • svg/graphics/qt: Removed.
  • svg/graphics/qt/SVGResourceFilterQt.cpp: Removed.
  • svg/graphics/skia: Removed.
  • svg/graphics/skia/SVGResourceFilterSkia.cpp: Removed.
2:05 PM Changeset in webkit [44331] by kov@webkit.org
  • 2 edits in trunk/WebKit/qt

2009-06-01 Benjamin C Meyer <benjamin.meyer@torchmobile.com>

Rubber-stamped by Gustavo Noronha.

Use QLatin1Char() to compile when QT_NO_CAST_FROM_ASCII and QT_NO_CAST_TO_ASCII is defined

  • Api/qwebview.cpp: (QWebView::guessUrlFromString):
1:06 PM Changeset in webkit [44330] by kov@webkit.org
  • 2 edits in trunk/WebKit/qt

2009-06-01 Benjamin C Meyer <benjamin.meyer@torchmobile.com>

Rubber-stamped by Gustavo Noronha.

Cleanup autotest file

  • use proper includes
  • remove useless constructor and destructor
  • add missing newline at the end of the file
  • tests/qwebview/tst_qwebview.cpp:
1:01 PM Changeset in webkit [44329] by kov@webkit.org
  • 2 edits in trunk/WebKit/qt

2009-06-01 Benjamin C Meyer <benjamin.meyer@torchmobile.com>

Rubber-stamped by Gustavo Noronha.

Add a missing space between two words in the documentation.

  • Api/qwebview.cpp:
12:56 PM Changeset in webkit [44328] by dimich@chromium.org
  • 2 edits in trunk/WebCore

2009-06-01 Dmitry Titov <dimich@chromium.org>

Fix the previous checkin (ttp://trac.webkit.org/changeset/44327).
This adds a comment suggested during review.

  • platform/ThreadGlobalData.cpp: (WebCore::ThreadGlobalData::~ThreadGlobalData): Add comment clarifying the change.
12:44 PM Changeset in webkit [44327] by dimich@chromium.org
  • 3 edits in trunk/WebCore

2009-06-01 Dmitry Titov <dimich@chromium.org>

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=25973
Avoid calling CurrentThread() in thread-specific destructors in OSX Chromium.
Pthreads invoke thread-specific destructors after WTF::detachThread() is called and ThreadIdentifier
for the thread removed from the WTF thread map. Calling CurrentThread() in such destructor causes
the ThreadIdentifier to be re-created and inserted into the map again. Since Pthreads on OSX reuse
the pthread_t between threads, the next created thread will have the same pthread_t and cause an assert
in establishIdentifierForPthreadHandle() since the id is already in the map.

The behavior is covered by existing test LayoutTests/fast/workers/worker-terminate.html, which currently fails
on OSX Chromium and will stop failing after this change.

  • platform/ThreadGlobalData.h:
  • platform/ThreadGlobalData.cpp: (WebCore::ThreadGlobalData::~ThreadGlobalData): Store the result of "isMainThread()" in a member variable during construction of thread-specific data to avoid calling IsMainThread() in destructor, since the latter calls CurrentThread() in OSX Chromium.
12:18 PM Changeset in webkit [44326] by levin@chromium.org
  • 3 edits in trunk/JavaScriptCore

2009-06-01 David Levin <levin@chromium.org>

Reviewed by NOBODY (windows build fix).

Add exports for windows (corresponding to the JavaScriptCore.exp modification
in the previous change).

11:41 AM Changeset in webkit [44325] by levin@chromium.org
  • 9 edits in trunk

JavaScriptCore:

2009-06-01 David Levin <levin@chromium.org>

Reviewed by Darin Alder and Maciej Stachowiak.

Bug 26057: StringImpl should share buffers with UString.
https://bugs.webkit.org/show_bug.cgi?id=26057

  • JavaScriptCore.exp:
  • runtime/UString.cpp: (JSC::UString::Rep::create): (JSC::UString::BaseString::sharedBuffer): Only do the sharing when the buffer exceeds a certain size. The size was tuned by running various dom benchmarks with numbers ranging from 20 to 800 and finding a place that seemed to do the best overall.
  • runtime/UString.h:

WebCore:

2009-06-01 David Levin <levin@chromium.org>

Reviewed by Darin Alder and Maciej Stachowiak.

Bug 26057: StringImpl should share buffers with UString.
https://bugs.webkit.org/show_bug.cgi?id=26057

This change results in the following performance improvements:
On http://www.hixie.ch/tests/adhoc/perf/dom/artificial/core/001.html
the time went from 78ms to 40ms for append (other times remained constant).

On http://www.hixie.ch/tests/adhoc/perf/dom/artificial/core/002.html,
the time went from 3900ms to 2600ms.

For http://dromaeo.com/?dom, the time for DomModification improved by ~6%.
Other tests in dom seemed to be faster across several runs but within the
margin of error (except DOM Attributes which was slightly ~1.5% worse).

Existing tests cover this code and there is no new functionality
that is exposed to test.

  • platform/text/AtomicString.cpp: (WebCore::AtomicString::add):
  • platform/text/String.cpp: (WebCore::String::String): (WebCore::String::operator UString):
  • platform/text/StringImpl.cpp: (WebCore::StringImpl::StringImpl): (WebCore::StringImpl::~StringImpl): (WebCore::StringImpl::create): Consumes a shared buffer. (WebCore::StringImpl::ustring): Shares the StringImpl's buffer with the UString. (WebCore::StringImpl::sharedBuffer): Exposes the buffer that may be shared.
  • platform/text/StringImpl.h: (WebCore::StringImpl::hasTerminatingNullCharacter): (WebCore::StringImpl::inTable): (WebCore::StringImpl::setInTable): Converted the bools to be inside of PtrAndFlags to avoid growing StringImpl in size.
10:35 AM WebKit Team edited by kov@webkit.org
(diff)
10:16 AM Changeset in webkit [44324] by bfulgham@webkit.org
  • 3 edits in trunk/WebKit/win

2009-06-01 Brent Fulgham <bfulgham@webkit.org>

Build fix for Cairo Windows target. Windows link definition
files were out of sync with the Apple Windows link files.

  • WebKit.vcproj/WebKit_Cairo.def:
  • WebKit.vcproj/WebKit_Cairo_debug.def:
9:53 AM Changeset in webkit [44323] by Dimitri Glazkov
  • 3 edits in trunk/WebCore

2009-06-01 Dimitri Glazkov <Dimitri Glazkov>

Unreviewed, build fix.

V8 bindings follow-up to to DOMWindow-related cleanup:
http://trac.webkit.org/changeset/44215

  • bindings/v8/ScriptController.cpp: Removed disconnectFrame(), relocated

its body to destructor.

  • bindings/v8/ScriptController.h: Removed disconnectFrame() decl.
9:16 AM Changeset in webkit [44322] by Dimitri Glazkov
  • 14 edits
    1 add in trunk/WebCore

2009-05-28 Pavel Feldman <pfeldman@chromium.org>

Reviewed by Timothy Hatcher.

  • Add panel enabler to the resources panel.
  • Add session / always options into the panel enabler.
  • Make enabled status for three panels sticky (globally).
  • Persist enabled status using InspectorController::Settings
  • Make InspectorController produce no network-related overhead when resources panel is not enabled.

https://bugs.webkit.org/show_bug.cgi?id=26046

  • inspector/InspectorController.cpp: (WebCore::InspectorController::InspectorController): (WebCore::InspectorController::setWindowVisible): (WebCore::InspectorController::populateScriptObjects): (WebCore::InspectorController::identifierForInitialRequest): (WebCore::InspectorController::willSendRequest): (WebCore::InspectorController::didReceiveResponse): (WebCore::InspectorController::didReceiveContentLength): (WebCore::InspectorController::didFinishLoading): (WebCore::InspectorController::didFailLoading): (WebCore::InspectorController::resourceRetrievedByXMLHttpRequest): (WebCore::InspectorController::scriptImported): (WebCore::InspectorController::enableResourceTracking): (WebCore::InspectorController::disableResourceTracking): (WebCore::InspectorController::startUserInitiatedProfiling): (WebCore::InspectorController::enableProfiler): (WebCore::InspectorController::disableProfiler): (WebCore::InspectorController::enableDebugger): (WebCore::InspectorController::disableDebugger):
  • inspector/InspectorController.h: (WebCore::InspectorController::Setting::Setting): (WebCore::InspectorController::resourceTrackingEnabled):
  • inspector/InspectorController.idl:
  • inspector/InspectorFrontend.cpp: (WebCore::InspectorFrontend::resourceTrackingWasEnabled): (WebCore::InspectorFrontend::resourceTrackingWasDisabled):
  • inspector/InspectorFrontend.h:
  • inspector/front-end/PanelEnablerView.js: (WebInspector.PanelEnablerView.enableOption): (WebInspector.PanelEnablerView): (WebInspector.PanelEnablerView.prototype._windowResized): (WebInspector.PanelEnablerView.prototype.alwaysWasChosen):
  • inspector/front-end/ProfilesPanel.js: (WebInspector.ProfilesPanel.prototype._enableProfiling): (WebInspector.ProfilesPanel.prototype._toggleProfiling):
  • inspector/front-end/ResourcesPanel.js: (WebInspector.ResourcesPanel): (WebInspector.ResourcesPanel.prototype.get statusBarItems): (WebInspector.ResourcesPanel.prototype.resourceTrackingWasEnabled): (WebInspector.ResourcesPanel.prototype.resourceTrackingWasDisabled): (WebInspector.ResourcesPanel.prototype.reset): (WebInspector.ResourcesPanel.prototype._updateSidebarWidth): (WebInspector.ResourcesPanel.prototype._enableResourceTracking): (WebInspector.ResourcesPanel.prototype._toggleResourceTracking):
  • inspector/front-end/ScriptsPanel.js: (WebInspector.ScriptsPanel.prototype._enableDebugging): (WebInspector.ScriptsPanel.prototype._toggleDebugging):
  • inspector/front-end/inspector.css:
  • inspector/front-end/inspector.js: (WebInspector.resourceTrackingWasEnabled): (WebInspector.resourceTrackingWasDisabled):
3:14 AM Changeset in webkit [44321] by abarth@webkit.org
  • 1 edit
    4 deletes in trunk/LayoutTests

Revert 44320. The test didn't pass on Windows.

2:05 AM Changeset in webkit [44320] by abarth@webkit.org
  • 1 edit
    4 adds in trunk/LayoutTests

2009-06-01 Jungshik Shin <jshin@chromium.org>

Reviewed by Maciej Stachowiak. Landed by Adam Barth.

Add an additional test for bug 23786 (mistreatment of CR/LF
as zero-width characters in Chromium port). Tests using Bidi text were
added when the fix was checked in. Without the patch, Chromium used
to fail the same way with LTR complex scripts as well. (that is,
CR and LF were treated as zero-width space). To prevent a potential
regression in the future, a new test with Hindi (a LTR complex script)
is added.

https://bugs.webkit.org/show_bug.cgi?id=25698

  • fast/text/international/hindi-whitespace.html: Added.
  • platform/mac/fast/text/international/hindi-whitespace-expected.checksum: Added.
  • platform/mac/fast/text/international/hindi-whitespace-expected.png: Added.
  • platform/mac/fast/text/international/hindi-whitespace-expected.txt: Added.
2:00 AM Changeset in webkit [44319] by abarth@webkit.org
  • 7 edits
    6 adds in trunk

WebCore:

2009-06-01 Drew Wilson <atwilson@google.com>

Reviewed by Darin Adler. Landed (and tweaked) by Adam Barth.

https://bugs.webkit.org/show_bug.cgi?id=25902

Added WorkerContext.close()

Test: fast/workers/worker-close.html

  • workers/WorkerContext.cpp: (WebCore::WorkerContext::close):
  • workers/WorkerContext.h:
  • workers/WorkerContext.idl:
  • workers/WorkerMessagingProxy.cpp: (WebCore::WorkerMessagingProxy::workerContextDestroyedInternal):

LayoutTests:

2009-06-01 Drew Wilson <atwilson@google.com>

Reviewed by Darin Adler. Landed by Adam Barth.

https://bugs.webkit.org/show_bug.cgi?id=25902

Added WorkerContext.close()

  • fast/workers/worker-close-expected.txt: Added.
  • fast/workers/worker-close.html: Added.
  • fast/workers/resources/worker-close.js: Added.
  • http/tests/xmlhttprequest/workers/close.html: Added.
1:30 AM Changeset in webkit [44318] by abarth@webkit.org
  • 1 edit in trunk/LayoutTests/platform/mac/fast/dynamic/anchor-lock-expected.txt

Add missing expected result.

1:27 AM Changeset in webkit [44317] by ap@webkit.org
  • 9 edits
    2 adds in trunk

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=12471
XPathResult not invalidated for documents retrieved via XMLHttpRequest

Test: fast/xpath/detached-subtree-invalidate-iterator.html and existing tests in dom/svg/level3/xpath.

Use DOM tree version instead of DOMSubtreeModified events to invalidate, which is more
reliable and much faster.

  • xml/XPathExpression.cpp: (WebCore::XPathExpression::evaluate):
  • xml/XPathResult.cpp: (WebCore::XPathResult::XPathResult): (WebCore::XPathResult::~XPathResult): (WebCore::XPathResult::invalidIteratorState): (WebCore::XPathResult::iterateNext):
  • xml/XPathResult.h: (WebCore::XPathResult::create):
1:18 AM Changeset in webkit [44316] by Darin Adler
  • 2 edits in trunk/WebKit/mac

2009-06-01 Darin Adler <Darin Adler>

  • WebView/WebTextCompletionController.mm: Fix Tiger build by adding import of WebTypesInternal.h.
1:11 AM Changeset in webkit [44315] by abarth@webkit.org
  • 3 edits
    2 adds in trunk

WebCore:

2009-06-01 Brett Wilson <brettw@chromium.org>

Reviewed by Darin Adler. Landed by Adam Barth.

https://bugs.webkit.org/show_bug.cgi?id=25750

Test: fast/transforms/bounding-rect-zoom.html

Make getClientRects and getBoundingClientRect account for ther zoom
factor.

  • dom/Element.cpp: (WebCore::adjustFloatPointForAbsoluteZoom): (WebCore::adjustFloatQuadForAbsoluteZoom): (WebCore::adjustIntRectForAbsoluteZoom): (WebCore::Element::getClientRects): (WebCore::Element::getBoundingClientRect):

LayoutTests:

2009-06-01 Brett Wilson <brettw@chromium.org>

Reviewed by Darin Adler. Landed by Adam Barth.

https://bugs.webkit.org/show_bug.cgi?id=25750

Test: fast/transforms/bounding-rect-zoom.html

Make getClientRects and getBoundingClientRect account for ther zoom
factor.

  • fast/transforms/bounding-rect-zoom.html: Added.
  • platform/mac/fast/transforms/bounding-rect-zoom-expected.txt: Added.
1:07 AM Changeset in webkit [44314] by abarth@webkit.org
  • 1 add in trunk/LayoutTests/platform/mac/fast/dynamic/anchor-lock-expected.txt

Add bogus expected result to trick the bot into showing me the real expected results (as suggested by bdash).

12:46 AM Changeset in webkit [44313] by Darin Adler
  • 4 edits
    2 copies in trunk/WebKit

WebKit:

2009-06-01 Darin Adler <Darin Adler>

Reviewed by Maciej Stachowiak.

Bug 26113: break WebTextCompletionController out into its own source file
https://bugs.webkit.org/show_bug.cgi?id=26113

  • WebKit.xcodeproj/project.pbxproj: Add WebTextCompletionController.h/mm.

WebKit/mac:

2009-06-01 Darin Adler <Darin Adler>

Reviewed by Maciej Stachowiak.

Bug 26113: break WebTextCompletionController out into its own source file
https://bugs.webkit.org/show_bug.cgi?id=26113

  • WebView/WebHTMLView.mm: (-[WebHTMLViewPrivate dealloc]): Updated for new name. (-[WebHTMLViewPrivate clear]): Ditto. (-[WebHTMLView _frameOrBoundsChanged]): Ditto. (-[WebHTMLView menuForEvent:]): Ditto. (-[WebHTMLView windowDidResignKey:]): Ditto. (-[WebHTMLView windowWillClose:]): Ditto. (-[WebHTMLView mouseDown:]): Ditto. (-[WebHTMLView resignFirstResponder]): Ditto. (-[WebHTMLView keyDown:]): Ditto. (-[WebHTMLView complete:]): Ditto. Also pass WebView to init method. (-[WebHTMLView _interceptEditingKeyEvent:shouldSaveCommand:]): Ditto.
  • WebView/WebTextCompletionController.h: Copied from mac/WebView/WebHTMLView.mm.
  • WebView/WebTextCompletionController.mm: Copied from mac/WebView/WebHTMLView.mm. Changed initializer to pass in a spearate WebView and WebHTMLView, to smooth the way for handling viewless mode properly in the future.
12:43 AM Changeset in webkit [44312] by abarth@webkit.org
  • 2 edits in trunk/WebCore

2009-06-01 Tony Chang <tony@chromium.org>

Reviewed by Dimitri Glazkov. Landed by Adam Barth.

https://bugs.webkit.org/show_bug.cgi?id=26026

Fix an infinite loop when using the keyboard in Chromium select
popups.

Not testable since it involves sending a keyboard event to
the popup, which is not possible (eventSender sends the key
events through webview, we want to go through the webwidget).

  • platform/chromium/PopupMenuChromium.cpp:
12:34 AM Changeset in webkit [44311] by abarth@webkit.org
  • 5 edits
    2 adds in trunk

WebCore:

2009-06-01 Nate Chapin <japhet@google.com>

Reviewed by Dimitri Glazkov. Landed by Adam Barth.


If a url with an anchor is being loaded, ensure that the anchor remains locked in view until the page
has finished loading compeltely or the user has manually scrolled. Refreshing an anchor url after
scrolling to a new location on the page will still result in jumping to the new location.


https://bugs.webkit.org/show_bug.cgi?id=26034

  • loader/FrameLoader.cpp: (WebCore::FrameLoader::gotoAnchor): Set anchor lock after navigating to anchor. (WebCore::FrameLoader::completed): Release anchor lock.
  • page/FrameView.cpp: (WebCore::FrameView::FrameView): Ensure anchor lock starts unset. (WebCore::FrameView::reset): Ensure anchor lock starts unset. (WebCore::FrameView::layout): If anchor lock is set, force a gotoAnchor() after layout. (WebCore::FrameView::scrollRectIntoViewRecursively): Release anchor lock if a programmatic scroll begins. (WebCore::FrameView::setWasScrolledByUser): Release anchor lock if user manually scrolls. (WebCore::FrameView::setScrollPosition): Release anchor lock if a programmatic scroll begins.
  • page/FrameView.h: (WebCore::FrameView::lockedToAnchor): Added. (WebCore::FrameView::setLockedToAnchor): Added.

LayoutTests:

2009-06-01 Nate Chapin <japhet@google.com>

Reviewed by Dimitri Glazkov. Landed by Adam Barth.

Ensure an anchor remains locked in view as images (without height already specified) load around it.


https://bugs.webkit.org/show_bug.cgi?id=26034

  • fast/dynamic/anchor-lock.html: Added.
  • fast/dynamic/resources/largeblank.png: Added.

May 31, 2009:

11:06 PM Changeset in webkit [44310] by barraclough@apple.com
  • 3 edits in trunk/JavaScriptCore

2009-05-31 Gavin Barraclough <barraclough@apple.com>

Reviewed by Olliej "you just need to change NativeFunctionWrapper.h" Hunt.

Add ENABLE_JIT_OPTIMIZE_NATIVE_CALL switch to allow JIT to operate without native call optimizations.

  • runtime/NativeFunctionWrapper.h:
  • wtf/Platform.h:
10:36 PM Changeset in webkit [44309] by krit@webkit.org
  • 8 edits
    2 adds
    2 deletes in trunk/WebCore

2009-05-31 Dirk Schulze <krit@webkit.org>

Reviewed by Nikolas Zimmermann.

WebKit needs cross-platform filter system
https://bugs.webkit.org/show_bug.cgi?id=19991

A short clean-up. FilterBuilder is SVG specific. Move it
to svg/graphics/filters and rename it to SVGFilterBuilder.

  • GNUmakefile.am:
  • WebCore.pro:
  • WebCore.xcodeproj/project.pbxproj:
  • svg/FilterBuilder.cpp: Removed.
  • svg/FilterBuilder.h: Removed.
  • svg/SVGFilterElement.cpp:
  • svg/SVGFilterPrimitiveStandardAttributes.h:
  • svg/graphics/SVGResourceFilter.cpp: (WebCore::SVGResourceFilter::SVGResourceFilter):
  • svg/graphics/SVGResourceFilter.h: (WebCore::SVGResourceFilter::builder):
  • svg/graphics/filters/SVGFilterBuilder.cpp: Added. (WebCore::SVGFilterBuilder::SVGFilterBuilder): (WebCore::SVGFilterBuilder::add): (WebCore::SVGFilterBuilder::getEffectById): (WebCore::SVGFilterBuilder::clearEffects):
  • svg/graphics/filters/SVGFilterBuilder.h: Added. (WebCore::SVGFilterBuilder::lastEffect):
10:35 PM Changeset in webkit [44308] by ap@webkit.org
  • 1 edit in trunk/WebCore/ChangeLog

Fix a typo in ChangeLog.

10:23 PM Changeset in webkit [44307] by ap@webkit.org
  • 6 edits in trunk/WebCore

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=13233
Need to implement an optimizing XPath evaluator

Avoid sorting results of hierarchical paths that are natuarlly sorted. On a flat data structure
with 128K nodes and a simple XPath expression, this changes evaluation time from 1.5 minutes
to 33 ms.

  • xml/XPathNodeSet.h: Keep track of whether subtrees rooted at nodes in set are disjoint, which is useful for optimization. (WebCore::XPath::NodeSet::NodeSet): Removed, it was identical to compiler generated one. (WebCore::XPath::NodeSet::operator=): Ditto. (WebCore::XPath::NodeSet::swap): Ditto. (WebCore::XPath::NodeSet::isSorted): Single element sets are always sorted, even if sort() was never called. (WebCore::XPath::NodeSet::markSubtreesDisjoint): Just like being sorted, the new flag is maintained by callers. (WebCore::XPath::NodeSet::subtreesAreDisjoint): A single element set only has one subtree. Currently, the only way for a set to gain this flag is to be produced from a single element set with a hierarchical location path.
  • xml/XPathPath.cpp: (WebCore::XPath::LocationPath::evaluate): Use the new flag to avoid maintaining a set of unique nodes, and to avoid sorting the result.
9:18 PM Changeset in webkit [44306] by ap@webkit.org
  • 14 edits
    2 adds in trunk

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=13233
Need to implement an optimizing XPath evaluator

This patch adds some infrastructure and simple optimizations. Namely,

  • we now avoid building a full NodeSet just to evaluate a predicate in some cases;
  • "/descendant-or-self::node()/child::" is optimized to iterate the tree once when possible;

WebCore:

  • xml/XPathExpressionNode.cpp: (WebCore::XPath::Expression::Expression):
  • xml/XPathExpressionNode.h: (WebCore::XPath::Expression::addSubExpression): (WebCore::XPath::Expression::isContextNodeSensitive): (WebCore::XPath::Expression::isContextPositionSensitive): (WebCore::XPath::Expression::isContextSizeSensitive): (WebCore::XPath::Expression::setIsContextNodeSensitive): (WebCore::XPath::Expression::setIsContextPositionSensitive): (WebCore::XPath::Expression::setIsContextSizeSensitive): XPath expression now knows its result type, and whether evaluation depends on context.
  • xml/XPathFunctions.cpp: (WebCore::XPath::FunLast::resultType): (WebCore::XPath::FunLast::FunLast): (WebCore::XPath::FunPosition::resultType): (WebCore::XPath::FunPosition::FunPosition): (WebCore::XPath::FunCount::resultType): (WebCore::XPath::FunId::resultType): (WebCore::XPath::FunLocalName::resultType): (WebCore::XPath::FunLocalName::FunLocalName): (WebCore::XPath::FunNamespaceURI::resultType): (WebCore::XPath::FunNamespaceURI::FunNamespaceURI): (WebCore::XPath::FunName::resultType): (WebCore::XPath::FunName::FunName): (WebCore::XPath::FunString::resultType): (WebCore::XPath::FunString::FunString): (WebCore::XPath::FunConcat::resultType): (WebCore::XPath::FunStartsWith::resultType): (WebCore::XPath::FunContains::resultType): (WebCore::XPath::FunSubstringBefore::resultType): (WebCore::XPath::FunSubstringAfter::resultType): (WebCore::XPath::FunSubstring::resultType): (WebCore::XPath::FunStringLength::resultType): (WebCore::XPath::FunStringLength::FunStringLength): (WebCore::XPath::FunNormalizeSpace::resultType): (WebCore::XPath::FunNormalizeSpace::FunNormalizeSpace): (WebCore::XPath::FunTranslate::resultType): (WebCore::XPath::FunBoolean::resultType): (WebCore::XPath::FunNot::resultType): (WebCore::XPath::FunTrue::resultType): (WebCore::XPath::FunFalse::resultType): (WebCore::XPath::FunLang::resultType): (WebCore::XPath::FunLang::FunLang): (WebCore::XPath::FunNumber::resultType): (WebCore::XPath::FunNumber::FunNumber): (WebCore::XPath::FunSum::resultType): (WebCore::XPath::FunFloor::resultType): (WebCore::XPath::FunCeiling::resultType): (WebCore::XPath::FunRound::resultType): (WebCore::XPath::Function::setArguments): Set optimization details for the expression. Normally, a function does not introduce context node set dependency, but some use context node as default argument, or otherwise use the context.
  • xml/XPathFunctions.h: Tweaked style.
  • xml/XPathPath.cpp: (WebCore::XPath::Filter::Filter): A filter is as context node set sensitive as its expression is. (WebCore::XPath::LocationPath::LocationPath): A location path can only be context node sensitive, and only if the path relative. (WebCore::XPath::LocationPath::appendStep): Invoke compile-time Step optimizations. (WebCore::XPath::LocationPath::insertFirstStep): Ditto. (WebCore::XPath::Path::Path): A path is as context node set sensitive as its filter is.
  • xml/XPathPath.h: (WebCore::XPath::Filter::resultType): Result type of a filter is the same as of its expression (useful filters return NodeSets, of course). (WebCore::XPath::LocationPath::setAbsolute): An absolute location path if context node set insensitive. (WebCore::XPath::LocationPath::resultType): A path's result is always a node set. (WebCore::XPath::Path::resultType): Ditto.
  • xml/XPathPredicate.h: (WebCore::XPath::Number::resultType): Return a proper result type. (WebCore::XPath::StringExpression::resultType): Ditto. (WebCore::XPath::Negative::resultType): Ditto. (WebCore::XPath::NumericOp::resultType): Ditto. (WebCore::XPath::EqTestOp::resultType): Ditto. (WebCore::XPath::LogicalOp::resultType): Ditto. (WebCore::XPath::Union::resultType): Ditto. (WebCore::XPath::Predicate::isContextPositionSensitive): A predicate can be context position sensitive even if its expression is not, because e.g. [5] is a shortcut for [position()=5]. (WebCore::XPath::Predicate::isContextSizeSensitive): This matches expression result.
  • xml/XPathStep.h: (WebCore::XPath::Step::NodeTest::Kind): Removed unused ElementNodeTest, which was previously borrowed from XPath 2.0 to express some optimizations. (WebCore::XPath::Step::NodeTest::mergedPredicates): To avoid building a huge node set and filtering it with predicates, we now try to apply predicates while enumerating an axis. (WebCore::XPath::Step::nodeTest): Expose m_nodeTest.
  • xml/XPathStep.cpp: (WebCore::XPath::Step::~Step): The step owns NodeTest merged predicates, so it is still possible to copy NodeTests. (WebCore::XPath::Step::optimize): Merge predicates into NodeTest if possible. (WebCore::XPath::optimizeStepPair): Optimize some expressions containing "". (WebCore::XPath::Step::predicatesAreContextListInsensitive): The above optimization is only possible if there are no context sensitive predicates for "". (WebCore::XPath::Step::evaluate): Track context position for the first merged predicate. (WebCore::XPath::nodeMatchesBasicTest): Check whether the node matches node test, ignoring merged predicates. (WebCore::XPath::nodeMatches): Additionally check merged predicates, and update position. (WebCore::XPath::Step::nodesInAxis): Check merged predicates in optimized attribute code path.
  • xml/XPathVariableReference.h: (WebCore::XPath::VariableReference::resultType): Variable references are not used with XPathEvaluator, so we'll only need them if we decide to reimplement XSLT. The type of variable reference is not known at compile time.

LayoutTests:

  • fast/xpath/attribute-node-predicate-expected.txt: Added.
  • fast/xpath/attribute-node-predicate.html: Added. Test that predicates on attribute nodes are applied correctly (which I had wrong for a while when working on this patch).
  • fast/xpath/position-expected.txt:
  • fast/xpath/position.html: Added an example from XPath spec.
8:59 PM Changeset in webkit [44305] by mitz@apple.com
  • 1 edit
    3 adds in trunk/LayoutTests

Add Windows results for fast/forms/isindex-placeholder.html

8:55 PM Changeset in webkit [44304] by mitz@apple.com
  • 2 edits in trunk/WebKitTools

2009-05-31 Sam Weinig <sam@webkit.org>

Implement LayoutTestController::clearAllDatabases()
on Windows.

8:05 PM Changeset in webkit [44303] by weinig@apple.com
  • 4 edits
    1 delete in trunk/WebCore

2009-05-31 Sam Weinig <sam@webkit.org>

Rubber-stamped by Dan Bernstein.

Remove unused JSEventTargetBase.h

  • GNUmakefile.am:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSEventTargetBase.h: Removed.
7:56 PM Changeset in webkit [44302] by weinig@apple.com
  • 6 edits in trunk

WebCore:

2009-05-31 Sam Weinig <sam@webkit.org>

Reviewed by Dan Bernstein.

Part of https://bugs.webkit.org/show_bug.cgi?id=26100
Add missing event handler properties to the DOMWindow

Add missing oncanplay, oncanplaythrough, ondurationchange, onemptied,
onended, onloadeddata, onloadedmetadata, onpause, onplay, onplaying,
onratechange, onseeked, onseeking, ontimeupdate, onvolumechange,
onwaiting, onloadstart, onprogress, onstalled, onsuspend, ondrag,
ondragend, ondragenter, ondragleave, ondragover, ondragstart and
ondrop event handlers to the DOMWindow.

  • page/DOMWindow.cpp: (WebCore::DOMWindow::ondrag): (WebCore::DOMWindow::setOndrag): (WebCore::DOMWindow::ondragend): (WebCore::DOMWindow::setOndragend): (WebCore::DOMWindow::ondragenter): (WebCore::DOMWindow::setOndragenter): (WebCore::DOMWindow::ondragleave): (WebCore::DOMWindow::setOndragleave): (WebCore::DOMWindow::ondragover): (WebCore::DOMWindow::setOndragover): (WebCore::DOMWindow::ondragstart): (WebCore::DOMWindow::setOndragstart): (WebCore::DOMWindow::ondrop): (WebCore::DOMWindow::setOndrop): (WebCore::DOMWindow::oncanplay): (WebCore::DOMWindow::setOncanplay): (WebCore::DOMWindow::oncanplaythrough): (WebCore::DOMWindow::setOncanplaythrough): (WebCore::DOMWindow::ondurationchange): (WebCore::DOMWindow::setOndurationchange): (WebCore::DOMWindow::onemptied): (WebCore::DOMWindow::setOnemptied): (WebCore::DOMWindow::onended): (WebCore::DOMWindow::setOnended): (WebCore::DOMWindow::onloadeddata): (WebCore::DOMWindow::setOnloadeddata): (WebCore::DOMWindow::onloadedmetadata): (WebCore::DOMWindow::setOnloadedmetadata): (WebCore::DOMWindow::onpause): (WebCore::DOMWindow::setOnpause): (WebCore::DOMWindow::onplay): (WebCore::DOMWindow::setOnplay): (WebCore::DOMWindow::onplaying): (WebCore::DOMWindow::setOnplaying): (WebCore::DOMWindow::onratechange): (WebCore::DOMWindow::setOnratechange): (WebCore::DOMWindow::onseeked): (WebCore::DOMWindow::setOnseeked): (WebCore::DOMWindow::onseeking): (WebCore::DOMWindow::setOnseeking): (WebCore::DOMWindow::ontimeupdate): (WebCore::DOMWindow::setOntimeupdate): (WebCore::DOMWindow::onvolumechange): (WebCore::DOMWindow::setOnvolumechange): (WebCore::DOMWindow::onwaiting): (WebCore::DOMWindow::setOnwaiting): (WebCore::DOMWindow::onloadstart): (WebCore::DOMWindow::setOnloadstart): (WebCore::DOMWindow::onprogress): (WebCore::DOMWindow::setOnprogress): (WebCore::DOMWindow::onstalled): (WebCore::DOMWindow::setOnstalled): (WebCore::DOMWindow::onsuspend): (WebCore::DOMWindow::setOnsuspend):
  • page/DOMWindow.h:
  • page/DOMWindow.idl:

LayoutTests:

2009-05-31 Sam Weinig <sam@webkit.org>

Reviewed by Dan Bernstein.

Part of https://bugs.webkit.org/show_bug.cgi?id=26100
Add missing event handler properties to the DOMWindow

Add missing oncanplay, oncanplaythrough, ondurationchange, onemptied,
onended, onloadeddata, onloadedmetadata, onpause, onplay, onplaying,
onratechange, onseeked, onseeking, ontimeupdate, onvolumechange,
onwaiting, onloadstart, onprogress, onstalled, onsuspend, ondrag,
ondragend, ondragenter, ondragleave, ondragover, ondragstart and
ondrop event handlers to the DOMWindow.

  • fast/dom/Window/window-properties-expected.txt:
5:20 PM Changeset in webkit [44301] by weinig@apple.com
  • 8 edits in trunk

WebCore:

2009-05-31 Sam Weinig <sam@webkit.org>

Reviewed by Anders Carlsson.

Part of https://bugs.webkit.org/show_bug.cgi?id=26100
Add missing event handler properties to the DOMWindow

Add missing onstorage event handler to the DOMWindow.

  • page/DOMWindow.cpp: (WebCore::DOMWindow::onstorage): (WebCore::DOMWindow::setOnstorage):
  • page/DOMWindow.h:
  • page/DOMWindow.idl:

LayoutTests:

2009-05-31 Sam Weinig <sam@webkit.org>

Reviewed by Anders Carlsson.

Part of https://bugs.webkit.org/show_bug.cgi?id=26100
Add missing event handler properties to the DOMWindow

Add missing onstorage event handler to the DOMWindow.

  • fast/dom/Window/window-properties-expected.txt:
  • storage/domstorage/window-attributes-exist-expected.txt:
  • storage/domstorage/window-attributes-exist.html:
4:47 PM Changeset in webkit [44300] by weinig@apple.com
  • 1 edit
    1 delete in trunk/LayoutTests

2009-05-31 Sam Weinig <sam@webkit.org>

Rubber-stamped by Mark Rowe.

Remove duplicate file. The version of window-properties-expected.txt in the
platform/mac-leopard was identical to the one in the normal spot.

  • platform/mac-leopard/fast/dom/Window/window-properties-expected.txt: Removed.
4:12 PM Changeset in webkit [44299] by krit@webkit.org
  • 41 edits in trunk/WebCore

2009-05-31 Dirk Schulze <krit@webkit.org>

Reviewed by Nikolas Zimmermann.

WebKit needs cross-platform filter system
https://bugs.webkit.org/show_bug.cgi?id=19991

Make use of the new filter system in WebCore for SVG. Deleted Mac bindings
and replace it by a platform independent code. Calculation of subRegions
is missing but needed for a first filter effect.

  • GNUmakefile.am:
  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • platform/graphics/filters/Filter.h: (WebCore::Filter::~Filter): (WebCore::Filter::setSourceImage):
  • rendering/SVGRenderSupport.cpp: (WebCore::SVGRenderBase::prepareToRenderSVGContent): (WebCore::SVGRenderBase::finishRenderSVGContent):
  • svg/FilterBuilder.h: (WebCore::FilterBuilder::lastEffect):
  • svg/SVGFEBlendElement.cpp: (WebCore::SVGFEBlendElement::SVGFEBlendElement): (WebCore::SVGFEBlendElement::build):
  • svg/SVGFEBlendElement.h:
  • svg/SVGFEColorMatrixElement.cpp: (WebCore::SVGFEColorMatrixElement::SVGFEColorMatrixElement): (WebCore::SVGFEColorMatrixElement::build):
  • svg/SVGFEColorMatrixElement.h:
  • svg/SVGFEComponentTransferElement.cpp: (WebCore::SVGFEComponentTransferElement::SVGFEComponentTransferElement): (WebCore::SVGFEComponentTransferElement::build):
  • svg/SVGFEComponentTransferElement.h:
  • svg/SVGFECompositeElement.cpp: (WebCore::SVGFECompositeElement::SVGFECompositeElement): (WebCore::SVGFECompositeElement::build):
  • svg/SVGFECompositeElement.h:
  • svg/SVGFEDiffuseLightingElement.cpp: (WebCore::SVGFEDiffuseLightingElement::SVGFEDiffuseLightingElement): (WebCore::SVGFEDiffuseLightingElement::build):
  • svg/SVGFEDiffuseLightingElement.h:
  • svg/SVGFEDisplacementMapElement.cpp: (WebCore::SVGFEDisplacementMapElement::SVGFEDisplacementMapElement): (WebCore::SVGFEDisplacementMapElement::build):
  • svg/SVGFEDisplacementMapElement.h:
  • svg/SVGFEFloodElement.cpp: (WebCore::SVGFEFloodElement::SVGFEFloodElement): (WebCore::SVGFEFloodElement::build):
  • svg/SVGFEFloodElement.h:
  • svg/SVGFEGaussianBlurElement.cpp: (WebCore::SVGFEGaussianBlurElement::SVGFEGaussianBlurElement): (WebCore::SVGFEGaussianBlurElement::build):
  • svg/SVGFEGaussianBlurElement.h:
  • svg/SVGFEImageElement.cpp: (WebCore::SVGFEImageElement::SVGFEImageElement): (WebCore::SVGFEImageElement::notifyFinished): (WebCore::SVGFEImageElement::build):
  • svg/SVGFEImageElement.h:
  • svg/SVGFEMergeElement.cpp: (WebCore::SVGFEMergeElement::SVGFEMergeElement): (WebCore::SVGFEMergeElement::build):
  • svg/SVGFEMergeElement.h:
  • svg/SVGFEOffsetElement.cpp: (WebCore::SVGFEOffsetElement::SVGFEOffsetElement): (WebCore::SVGFEOffsetElement::build):
  • svg/SVGFEOffsetElement.h:
  • svg/SVGFESpecularLightingElement.cpp: (WebCore::SVGFESpecularLightingElement::SVGFESpecularLightingElement): (WebCore::SVGFESpecularLightingElement::build):
  • svg/SVGFESpecularLightingElement.h:
  • svg/SVGFETileElement.cpp: (WebCore::SVGFETileElement::SVGFETileElement): (WebCore::SVGFETileElement::build):
  • svg/SVGFETileElement.h:
  • svg/SVGFETurbulenceElement.cpp: (WebCore::SVGFETurbulenceElement::SVGFETurbulenceElement): (WebCore::SVGFETurbulenceElement::build):
  • svg/SVGFETurbulenceElement.h:
  • svg/SVGFilterElement.cpp: (WebCore::SVGFilterElement::canvasResource):
  • svg/SVGFilterPrimitiveStandardAttributes.cpp: (WebCore::SVGFilterPrimitiveStandardAttributes::setStandardAttributes):
  • svg/SVGFilterPrimitiveStandardAttributes.h: (WebCore::SVGFilterPrimitiveStandardAttributes::contextElement):
  • svg/graphics/SVGResourceFilter.cpp: (WebCore::SVGResourceFilter::SVGResourceFilter): (WebCore::SVGResourceFilter::addFilterEffect): (WebCore::SVGResourceFilter::filterBBoxForItemBBox): (WebCore::SVGResourceFilter::prepareFilter): (WebCore::SVGResourceFilter::applyFilter): (WebCore::SVGResourceFilter::externalRepresentation):
  • svg/graphics/SVGResourceFilter.h: (WebCore::SVGResourceFilter::filterBoundingBox): (WebCore::SVGResourceFilter::setFilterBoundingBox): (WebCore::SVGResourceFilter::itemBoundingBox): (WebCore::SVGResourceFilter::setItemBoundingBox): (WebCore::SVGResourceFilter::builder):
3:24 PM Changeset in webkit [44298] by weinig@apple.com
  • 8 edits in trunk

WebCore:

2009-05-30 Sam Weinig <sam@webkit.org>

Reviewed by Mark Rowe.

Fix for https://bugs.webkit.org/show_bug.cgi?id=26110
Update online/offline events to match the current spec.

  • Also adds window.ononline and window.onoffline event handler properties.
  • page/DOMWindow.cpp: (WebCore::DOMWindow::onoffline): (WebCore::DOMWindow::setOnoffline): (WebCore::DOMWindow::ononline): (WebCore::DOMWindow::setOnonline):
  • page/DOMWindow.h:
  • page/DOMWindow.idl:
  • page/Page.cpp: (WebCore::networkStateChanged):

LayoutTests:

2009-05-30 Sam Weinig <sam@webkit.org>

Reviewed by Mark Rowe.

Fix for https://bugs.webkit.org/show_bug.cgi?id=26110
Update online/offline events to match the current spec.

  • Also adds window.ononline and window.onoffline event handler properties.
  • fast/dom/Window/window-properties-expected.txt:
  • platform/mac-leopard/fast/dom/Window/window-properties-expected.txt:
11:22 AM Changeset in webkit [44297] by krit@webkit.org
  • 6 edits in trunk/WebCore

2009-05-31 Dirk Schulze <krit@webkit.org>

Reviewed by Nikolas Zimmermann.

WebKit needs cross-platform filter system
https://bugs.webkit.org/show_bug.cgi?id=19991

Adding 'in1' attribute support for <feFlood>, as specified in SVG 1.1.
This change helps creating test cases, once filters are activated.

  • svg/SVGFEFloodElement.cpp: (WebCore::SVGFEFloodElement::SVGFEFloodElement): (WebCore::SVGFEFloodElement::parseMappedAttribute): (WebCore::SVGFEFloodElement::build):
  • svg/SVGFEFloodElement.h:
  • svg/SVGFEFloodElement.idl:
  • svg/graphics/filters/SVGFEFlood.cpp: (WebCore::FEFlood::FEFlood): (WebCore::FEFlood::create):
  • svg/graphics/filters/SVGFEFlood.h:
10:34 AM Changeset in webkit [44296] by krit@webkit.org
  • 41 edits
    3 adds
    2 deletes in trunk/WebCore

2009-05-31 Dirk Schulze <krit@webkit.org>

Reviewed by Nikolas Zimmermann.

WebKit needs cross-platform filter system
https://bugs.webkit.org/show_bug.cgi?id=19991

Replace all occurrences of SVGResourceFilter by Filter. This is the last
step for a SVG independent filter system. Every other part of WebCore can
use the filter system by creating a new Filter object.

  • GNUmakefile.am:
  • WebCore.pro:
  • WebCore.xcodeproj/project.pbxproj:
  • platform/graphics/filters/FEBlend.cpp: (WebCore::FEBlend::apply):
  • platform/graphics/filters/FEBlend.h:
  • platform/graphics/filters/FEColorMatrix.cpp: (WebCore::FEColorMatrix::apply):
  • platform/graphics/filters/FEColorMatrix.h:
  • platform/graphics/filters/FEComponentTransfer.cpp: (WebCore::FEComponentTransfer::apply):
  • platform/graphics/filters/FEComponentTransfer.h:
  • platform/graphics/filters/FEComposite.cpp: (WebCore::FEComposite::apply):
  • platform/graphics/filters/FEComposite.h:
  • platform/graphics/filters/Filter.h: Added. (WebCore::Filter::setSourceImage): (WebCore::Filter::sourceImage):
  • platform/graphics/filters/FilterEffect.h:
  • platform/graphics/filters/SourceAlpha.cpp: (WebCore::SourceAlpha::apply):
  • platform/graphics/filters/SourceAlpha.h:
  • platform/graphics/filters/SourceGraphic.cpp: (WebCore::SourceGraphic::apply):
  • platform/graphics/filters/SourceGraphic.h:
  • svg/Filter.cpp: Removed.
  • svg/Filter.h: Removed.
  • svg/graphics/filters/SVGFEConvolveMatrix.cpp: (WebCore::FEConvolveMatrix::apply):
  • svg/graphics/filters/SVGFEConvolveMatrix.h:
  • svg/graphics/filters/SVGFEDiffuseLighting.cpp: (WebCore::FEDiffuseLighting::apply):
  • svg/graphics/filters/SVGFEDiffuseLighting.h:
  • svg/graphics/filters/SVGFEDisplacementMap.cpp: (WebCore::FEDisplacementMap::apply):
  • svg/graphics/filters/SVGFEDisplacementMap.h:
  • svg/graphics/filters/SVGFEFlood.cpp: (WebCore::FEFlood::apply):
  • svg/graphics/filters/SVGFEFlood.h:
  • svg/graphics/filters/SVGFEGaussianBlur.cpp: (WebCore::FEGaussianBlur::apply):
  • svg/graphics/filters/SVGFEGaussianBlur.h:
  • svg/graphics/filters/SVGFEImage.cpp: (WebCore::FEImage::apply):
  • svg/graphics/filters/SVGFEImage.h:
  • svg/graphics/filters/SVGFEMerge.cpp: (WebCore::FEMerge::apply):
  • svg/graphics/filters/SVGFEMerge.h:
  • svg/graphics/filters/SVGFEMorphology.cpp: (WebCore::FEMorphology::apply):
  • svg/graphics/filters/SVGFEMorphology.h:
  • svg/graphics/filters/SVGFEOffset.cpp: (WebCore::FEOffset::apply):
  • svg/graphics/filters/SVGFEOffset.h:
  • svg/graphics/filters/SVGFESpecularLighting.cpp: (WebCore::FESpecularLighting::apply):
  • svg/graphics/filters/SVGFESpecularLighting.h:
  • svg/graphics/filters/SVGFETile.cpp: (WebCore::FETile::apply):
  • svg/graphics/filters/SVGFETile.h:
  • svg/graphics/filters/SVGFETurbulence.cpp: (WebCore::FETurbulence::apply):
  • svg/graphics/filters/SVGFETurbulence.h:
  • svg/graphics/filters/SVGFilter.cpp: Added. (WebCore::SVGFilter::SVGFilter): (WebCore::SVGFilter::calculateEffectSubRegion): (WebCore::SVGFilter::create):
  • svg/graphics/filters/SVGFilter.h: Added.

May 30, 2009:

8:26 PM Changeset in webkit [44295] by kevino@webkit.org
  • 2 edits in trunk/WebCore

Build fix for platforms without plugins support.

7:32 PM Changeset in webkit [44294] by Nikolas Zimmermann
  • 2 edits in trunk/WebCore

Reviewed by Darin Adler.

Fixes: https://bugs.webkit.org/show_bug.cgi?id=25979

Fix regression, local WML files won't load anymore, as the mimetype isn't correctly detected.
Bug filed at <rdar://problem/6917571> to cover this CFNetwork limitation.

5:58 PM Changeset in webkit [44293] by weinig@apple.com
  • 17 edits in trunk

WebCore:

2009-05-29 Sam Weinig <sam@webkit.org>

Reviewed by Anders Carlsson.

Fix for https://bugs.webkit.org/show_bug.cgi?id=26091
Make storage events match the current spec.

  • Storage event listeners are added to the window.
  • Storage events are dispatched to the window.

Updated existing tests.

  • dom/Document.cpp: (WebCore::Document::dispatchWindowEvent):
  • dom/Document.h:
  • dom/Node.cpp:
  • dom/Node.h:
  • html/HTMLBodyElement.cpp: (WebCore::HTMLBodyElement::parseMappedAttribute):
  • storage/LocalStorageArea.cpp: (WebCore::LocalStorageArea::dispatchStorageEvent):
  • storage/SessionStorageArea.cpp: (WebCore::SessionStorageArea::dispatchStorageEvent):

LayoutTests:

2009-05-29 Sam Weinig <sam@webkit.org>

Reviewed by Anders Carlsson.

Fix for https://bugs.webkit.org/show_bug.cgi?id=26091
Make storage events match the current spec.

  • Storage event listeners are added to the window.
  • Storage events are dispatched to the window.
  • storage/domstorage/localstorage/iframe-events.html:
  • storage/domstorage/localstorage/index-get-and-set.html:
  • storage/domstorage/localstorage/resources/iframe-events-second.html:
  • storage/domstorage/localstorage/simple-events.html:
  • storage/domstorage/sessionstorage/iframe-events.html:
  • storage/domstorage/sessionstorage/index-get-and-set.html:
  • storage/domstorage/sessionstorage/resources/iframe-events-second.html:
  • storage/domstorage/sessionstorage/simple-events.html:
4:27 PM Changeset in webkit [44292] by Darin Adler
  • 7 edits in trunk

WebCore:

2009-05-30 Darin Adler <Darin Adler>

Reviewed by Adele Peterson.

Bug 26097: REGRESSION (r44283): Tab key doesn't work when focus is on a <select> element

Test: fast/forms/focus-control-to-page.html

  • dom/SelectElement.h: Made destructor protected. Tweaked a bit.
  • html/HTMLSelectElement.cpp: Removed unneeded includes. (WebCore::HTMLSelectElement::remove): Removed unneeded range check of the result of optionToListIndex. (WebCore::HTMLSelectElement::parseMappedAttribute): Removed code to set the unused attribute, m_minwidth. (WebCore::HTMLSelectElement::defaultEventHandler): The actual bug fix. Call through to the base class defaultEventHandler if the event hasn't been handled yet.
  • html/HTMLSelectElement.h: Removed unneeded includes. Made a lot more functions private. Removed unused minWidth function and m_minwidth data member.

LayoutTests:

2009-05-30 Darin Adler <Darin Adler>

Reviewed by Adele Peterson.

Bug 26097: REGRESSION (r44283): Tab key doesn't work when focus is on a <select> element

  • fast/forms/focus-control-to-page-expected.txt: Updated.
  • fast/forms/focus-control-to-page.html: Added test of <select>, <textarea>, and <input type="password">, and made sure we can tab both in and out of each type.
4:20 PM Changeset in webkit [44291] by bfulgham@webkit.org
  • 2 edits
    1 move
    1 delete in trunk/WebCore

2009-05-30 Fridrich Strba <fridrich.strba@bluewin.ch>

Reviewed by Holger Freyther.

The two KeyboardCodes.h files are basically identical and the
qt one is properly #ifdef-ed for different win32 systems. Share
them between Qt and Gtk implementations.

  • GNUmakefile.am:
  • platform/KeyboardCodes.h: Copied from WebCore/platform/qt/KeyboardCodes.h.
  • platform/gtk/KeyboardCodes.h: Removed.
  • platform/qt/KeyboardCodes.h: Removed.
3:58 PM Changeset in webkit [44290] by ddkilzer@apple.com
  • 2 edits in trunk/WebKit/mac

Add JSLock to -[WebScriptCallFrame scopeChain]

Reviewed by Darin Adler.

In Debug builds of WebKit, Dashcode launching MobileSafari could
cause the ASSERT(JSLock::lockCount() > 0) assertion to fire in
JSC::Heap::heapAllocate() because the JSLock wasn't taken.

  • WebView/WebScriptDebugDelegate.mm: (-[WebScriptCallFrame scopeChain]): Take JSLock before calling into JavaScriptCore.
3:38 PM Changeset in webkit [44289] by bfulgham@webkit.org
  • 1 edit
    4 adds in trunk/LayoutTests

2009-05-30 Jeremy Orlow <jorlow@chromium.org>

Reviewed by Sam Weinig.

LocalStorage and SessionStorage's implicit setters do not correctly
handle null. The custom JS bindings should convert to strings
unconditionally and not try to handle null specially.
https://bugs.webkit.org/show_bug.cgi?id=25970

  • storage/domstorage/localstorage/string-conversion-expected.txt: Added.
  • storage/domstorage/localstorage/string-conversion.html: Added.
  • storage/domstorage/sessionstorage/string-conversion-expected.txt: Added.
  • storage/domstorage/sessionstorage/string-conversion.html: Added.
3:38 PM Changeset in webkit [44288] by bfulgham@webkit.org
  • 2 edits in trunk/WebCore

2009-05-30 Jeremy Orlow <jorlow@chromium.org>

Reviewed by Sam Weinig.

LocalStorage and SessionStorage's implicit setters do not correctly
handle null. The custom JS bindings should convert to strings
unconditionally and not try to handle null specially.
https://bugs.webkit.org/show_bug.cgi?id=25970

Tests: storage/domstorage/localstorage/string-conversion.html

storage/domstorage/sessionstorage/string-conversion.html

  • bindings/js/JSStorageCustom.cpp: (WebCore::JSStorage::customPut):
1:35 PM Changeset in webkit [44287] by mitz@apple.com
  • 3 edits
    4 adds in trunk

WebCore:

Reviewed by Darin Adler.

  • fix <rdar://problem/6935192> REGRESSION (Safari 3-TOT): Scroll bars in key window draw as inactive if the WebView is not active

Test: platform/mac/scrollbars/key-window-not-first-responder.html

  • platform/mac/ScrollbarThemeMac.mm: (WebCore::ScrollbarThemeMac::paint): Use the window's key state instead of the WebView's first responder state to switch between active and inactive state.

LayoutTests:

Reviewed by Darin Adler.

  • test for <rdar://problem/6935192> REGRESSION (Safari 3-TOT): Scroll bars in key window draw as inactive if the WebView is not active
  • platform/mac/scrollbars/key-window-not-first-responder-expected.checksum: Added.
  • platform/mac/scrollbars/key-window-not-first-responder-expected.png: Added.
  • platform/mac/scrollbars/key-window-not-first-responder-expected.txt: Added.
  • platform/mac/scrollbars/key-window-not-first-responder.html: Added.
1:27 PM Changeset in webkit [44286] by Darin Adler
  • 2 edits in trunk/JavaScriptCore

2009-05-30 Darin Adler <Darin Adler>

Reviewed by Sam Weinig.

<rdar://problem/6935193> REGRESSION (r42734): Celtic Kane JavaScript benchmark does not run:
"Maximum call stack size exceeded"

  • runtime/ArrayPrototype.cpp: (JSC::arrayProtoFuncToString): Use the same recursion limit as the other recursion checks. We need a limit of at least 100 to run the benchmark above. (JSC::arrayProtoFuncToLocaleString): Ditto. (JSC::arrayProtoFuncJoin): Ditto.
10:50 AM Changeset in webkit [44285] by mitz@apple.com
  • 3 edits
    4 adds in trunk

WebCore:

Reviewed by Simon Fraser.

Test: fast/backgrounds/body-generated-image-propagated-to-root.html

  • rendering/RenderBoxModelObject.cpp: (WebCore::RenderBoxModelObject::paintFillLayerExtended): Check if this is the root element painting a background layer propagated from the body, and if it is, use the body's renderer as the client to StyleImage::image().

LayoutTests:

Reviewed by Simon Fraser.

  • fast/backgrounds/body-generated-image-propagated-to-root.html: Added.
  • platform/mac/fast/backgrounds/body-generated-image-propagated-to-root-expected.checksum: Added.
  • platform/mac/fast/backgrounds/body-generated-image-propagated-to-root-expected.png: Added.
  • platform/mac/fast/backgrounds/body-generated-image-propagated-to-root-expected.txt: Added.
9:50 AM Changeset in webkit [44284] by zecke@webkit.org
  • 2 edits in trunk/WebCore

2009-05-30 Holger Hans Peter Freyther <zecke@selfish.org>

Unreviewed build fix for AXObjectCache.

For !HAVE(ACCESSIBILITY) postNotification was defined twice. Move
that into the #ifdef.

  • accessibility/AXObjectCache.cpp:
Note: See TracTimeline for information about the timeline view.