Timeline


and

05/20/10:

23:17 Changeset [59916] by dbates@webkit.org

2010-05-20 Daniel Bates <dbates@rim.com>

Rubber-stamped by Simon Fraser.

Spelling correction; change "acces" [sic] to "access".

  • quality/lifecycle.html:
23:10 Changeset [59915] by philn@webkit.org

2010-05-18 Philippe Normand <pnormand@igalia.com>

Reviewed by Eric Carlson.

[GStreamer] PlatformMedia support
https://bugs.webkit.org/show_bug.cgi?id=39300

Basic support for PlatformMedia in the gst player. The
PlatformMedia object contains a GStreamerGWorld object. That
object is empty for now. XOverlay features will be added later
on for easy review sake.

  • GNUmakefile.am:
  • platform/graphics/MediaPlayer.h: (WebCore::PlatformMedia::):
  • platform/graphics/gstreamer/GStreamerGWorld.cpp: Added. (WebCore::GStreamerGWorld::createGWorld): (WebCore::GStreamerGWorld::GStreamerGWorld): (WebCore::GStreamerGWorld::~GStreamerGWorld):
  • platform/graphics/gstreamer/GStreamerGWorld.h: Added.
  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp: (WebCore::MediaPlayerPrivateGStreamer::platformMedia): (WebCore::MediaPlayerPrivateGStreamer::createGSTPlayBin):
  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
22:58 Changeset [59914] by eric@webkit.org

2010-05-20 Kwang Yul Seo <skyul@company100.net>

Reviewed by Eric Seidel.

[BREWMP] Add dummy SSLKeyGenerator
https://bugs.webkit.org/show_bug.cgi?id=39403

Add dummy implementation of SSLKeyGenerator.

  • platform/brew/SSLKeyGeneratorBrew.cpp: Added. (WebCore::WebCore::getSupportedKeySizes): (WebCore::WebCore::signedPublicKeyAndChallengeString):
22:23 Changeset [59913] by mrowe@apple.com

<rdar://problem/7848154> Remove the dependency on Foundation's private COCOA_FORMAL_PROTOCOLS_2 define.

Rubber-stamped by Dan Bernstein.

WebCore:

  • platform/mac/EmptyProtocolDefinitions.h:

WebKitTools:

  • DumpRenderTree/mac/LayoutTestControllerMac.mm:
22:15 Changeset [59912] by simon.fraser@apple.com

2010-05-20 Simon Fraser <simon.fraser@apple.com>

Build fix, no review.

Fix the non-accelerated-compositing Windows build with some
#if USE(ACCELERATED_COMPOSITING) loving.

  • WebView.cpp:
  • WebView.h:
22:09 Changeset [59911] by eric@webkit.org

2010-05-20 Kwang Yul Seo <skyul@company100.net>

Reviewed by Eric Seidel.

[BREWMP] Add Editor
https://bugs.webkit.org/show_bug.cgi?id=39404

Implement Editor::newGeneralClipboard.

  • editing/brew/EditorBrew.cpp: Added. (WebCore::Editor::newGeneralClipboard):
21:49 Changeset [59910] by simon.fraser@apple.com

2010-05-20 Simon Fraser <simon.fraser@apple.com>

Reviewed by Adam Roben.

Avoid flushing CA layers when a layout is pending
https://bugs.webkit.org/show_bug.cgi?id=39463
<rdar://problem/7999463>

Avoid rendering the compositing layers to the screen if there's a layout pending,
since the layer tree not in a state that should be presented to the user.

This fixes flashes in some types of content that dynamically add and remove layers.

Do this by adding a WKCACFLayerRendererClient for WKCACFLayerRenderer, which it can
call through to ask whether now is a good time to render. If not, it schedules
another render soon.

  • platform/graphics/win/WKCACFLayerRenderer.h: (WebCore::WKCACFLayerRendererClient::~WKCACFLayerRendererClient):
  • platform/graphics/win/WKCACFLayerRenderer.cpp: (WebCore::WKCACFLayerRenderer::acceleratedCompositingAvailable): (WebCore::WKCACFLayerRenderer::create): (WebCore::WKCACFLayerRenderer::WKCACFLayerRenderer): (WebCore::WKCACFLayerRenderer::render):
21:41 Changeset [59909] by eric@webkit.org

2010-05-20 Kwang Yul Seo <skyul@company100.net>

Reviewed by Eric Seidel.

[BREWMP] Don't include CoreFoundation.h when building for BREW MP
https://bugs.webkit.org/show_bug.cgi?id=39405

Add !defined(BUILDING_BREWMP) guard for CoreFoundation.h.

  • WebCorePrefix.h:
21:19 Changeset [59908] by eric@webkit.org

2010-05-20 Kwang Yul Seo <skyul@company100.net>

Reviewed by Eric Seidel.

[BREWMP] Use skia as BREW MP's graphics backend.
https://bugs.webkit.org/show_bug.cgi?id=39407

Define WTF_PLATFORM_SKIA=1 for BREW MP.

  • wtf/Platform.h:
20:56 Changeset [59907] by eric@webkit.org

2010-05-20 Kwang Yul Seo <skyul@company100.net>

Reviewed by Eric Seidel.

[BREWMP] Add ScrollTheme
https://bugs.webkit.org/show_bug.cgi?id=39406

As BREW MP always uses frame flattening, there is no need to render scorllbars.
Use the default scrollbar theme with thickness 0.

  • platform/brew/ScrollbarThemeBrew.cpp: Added. (WebCore::ScrollbarTheme::nativeTheme): (WebCore::ScrollbarThemeBrew::~ScrollbarThemeBrew):
  • platform/brew/ScrollbarThemeBrew.h: Added.
20:42 Changeset [59906] by eric@webkit.org

2010-05-20 Tony Gentilcore <tonyg@chromium.org>

Reviewed by Daniel Bates.

Look in /proc/registry64 for the Platform SDK on 64-bit Windows.
https://bugs.webkit.org/show_bug.cgi?id=39296

The build-webkit script failed for me on Vista 64. A web search turned
up this blog post with a patch that worked for me:
http://www.nicholaswilson.me.uk/2010/04/hacking-webkit-fail/

  • Scripts/webkitdirs.pm:
20:39 Changeset [59905] by ggaren@apple.com

Fixed naming mixup: it's op_call_put_result, not ret_result.

Reviewed by Beth Dakin.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::dump):

  • interpreter/Interpreter.cpp:

(JSC::Interpreter::privateExecute):

20:20 Changeset [59904] by jhoneycutt@apple.com

REGRESSION(r53637): DivX plug-in fails to start until window is resized
https://bugs.webkit.org/show_bug.cgi?id=39457
<rdar://problem/8006102>

Before r53637, we called Widget::move() (which caused us to call
NPP_SetWindow) before painting a plug-in. r53637 removed the call to
Widget::move(), and we end up never calling NPP_SetWindow for plug-ins
with the "DeferFirstSetWindowCall" quirk, including the DivX plug-in.

Reviewed by Simon Fraser.

  • manual-tests/divx-plugin-fails-to-draw.html: Added.
  • plugins/PluginView.cpp:

(WebCore::PluginView::PluginView):
Initialize new member to false.

  • plugins/PluginView.h:

Added new member.

  • plugins/win/PluginViewWin.cpp:

(WebCore::PluginView::paint):
Call setNPWindowRect() before painting to ensure that NPP_SetWindow gets
called.
(WebCore::PluginView::setNPWindowRect):
Set m_haveCalledSetWindow.

20:06 Changeset [59903] by ukai@chromium.org

2010-05-20 Fumitoshi Ukai <ukai@chromium.org>

Reviewed by Alexey Proskuryakov.

WebSocket handshake incompatible change in draft-hixie-thewebsocketprotocol-76
https://bugs.webkit.org/show_bug.cgi?id=35572

Fix LayoutTests for new WebSocket protocol.
It requires https://bugs.webkit.org/show_bug.cgi?id=38034 to pass websocket tests.

  • websocket/tests/handshake-error-expected.txt: Update expected data.
  • websocket/tests/handshake-error_wsh.py: Without CRLF, the wsh will sends "ThisWillCauseHandshakeErrorHTTP/1.1 101 WebSocket Protocol Handshake\r\n", which is legal for the first line of draft 76 WebSocket opening handshake. (4.1 Opening Handhshake, step 28 to 30). To fail handshake, it needs \r\n.
  • websocket/tests/long-invalid-header-expected.txt: Originally, it expects Upgrade header after status line. In draft 76, order is not important. But "pppp..\r\n" would fail because it misses ":" (end of name) before \r.

2010-05-20 Fumitoshi Ukai <ukai@chromium.org>

Reviewed by Alexey Proskuryakov.

WebSocket handshake incompatible change in draft-hixie-thewebsocketprotocol-76
https://bugs.webkit.org/show_bug.cgi?id=35572

WebSocket opening handshake is changed. New protocol draft could be found at http://www.whatwg.org/specs/web-socket-protocol/
It requires https://bugs.webkit.org/show_bug.cgi?id=38034 to pass websocket tests.

  • websockets/WebSocketHandshake.cpp: (WebCore::extractResponseCode): add lineLength parameter to return length of status line. (WebCore::hostName): Added. (WebCore::generateSecWebSocketKey): Added. (WebCore::generateKey3): Added. (WebCore::setChallengeNumber): Added. (WebCore::generateChallengeResponseExpected): Added. (WebCore::WebSocketHandshake::WebSocketHandshake): generate challenge response key and expected data. (WebCore::WebSocketHandshake::clientLocation): use hostName. (WebCore::WebSocketHandshake::clientHandshakeMessage): changed for draft 76 spec. (WebCore::WebSocketHandshake::clientHandshakeRequest): (WebCore::WebSocketHandshake::readServerHandshake): changed for draft 76 spec. m_mode is managed in this method. (WebCore::WebSocketHandshake::readHTTPHeaders): change error log messages. (WebCore::WebSocketHandshake::processHeaders): chagned for draft 76 spec. (WebCore::WebSocketHandshake::checkResponseHeaders): return boolean whether response header is ok or not and not change m_mode in it.
  • websockets/WebSocketHandshake.h:
20:04 Changeset [59902] by eric@webkit.org

2010-05-20 Eric Seidel <eric@webkit.org>

Reviewed by Adam Barth.

ThreadedMessageQueue should use with_statement for exception safety
https://bugs.webkit.org/show_bug.cgi?id=39233

  • Scripts/webkitpy/common/thread/threadedmessagequeue.py:
19:52 Changeset [59901] by eric@webkit.org

2010-05-20 Viet-Trung Luu <viettrungluu@chromium.org>

Reviewed by Darin Fisher.

[Chromium] Don't rely on focused node to route mouse events to plugins.
https://bugs.webkit.org/show_bug.cgi?id=39375
http://crbug.com/43935

On mouse down, do a hit test and check if a plugin was hit. If so, then
save the node for future mouse events (until mouse up or capture lost).

  • src/WebViewImpl.cpp: (WebKit::WebViewImpl::WebViewImpl): (WebKit::WebViewImpl::mouseDown): (WebKit::WebViewImpl::handleInputEvent): (WebKit::WebViewImpl::mouseCaptureLost):
  • src/WebViewImpl.h: Remove m_haveMouseCapture; add m_mouseCaptureNode.
19:44 Changeset [59900] by victorw@chromium.org

2010-05-20 Victor Wang <victorw@chromium.org>

Unreviewed. Update test expectations for chromium.

  • platform/chromium-linux/fast/css/font-face-in-shadow-DOM-expected.checksum: Added.
  • platform/chromium-linux/fast/css/font-face-in-shadow-DOM-expected.png: Added.
  • platform/chromium-win/fast/css/font-face-in-shadow-DOM-expected.checksum: Added.
  • platform/chromium-win/fast/css/font-face-in-shadow-DOM-expected.png: Added.
  • platform/chromium/test_expectations.txt:
19:34 Changeset [59899] by eric@webkit.org

2010-05-20 Zhenyao Mo <zmo@google.com>

Reviewed by Dimitri Glazkov.

fast/canvas/webgl/texture-npot.html failed on leopard bot
https://bugs.webkit.org/show_bug.cgi?id=39128

  • fast/canvas/webgl/texture-npot-expected.txt: Adding the failed test cases back.
  • fast/canvas/webgl/texture-npot.html:
  • platform/mac-leopard/Skipped: Skip texture-npot.html on leopard for now.
19:19 Changeset [59898] by eric@webkit.org

2010-05-20 Dominic Mazzoni <dmazzoni@chromium.org>

Reviewed by Darin Fisher.

Add headingLevel and setFocused methods.

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

  • public/WebAccessibilityObject.h:
  • src/WebAccessibilityObject.cpp: (WebKit::WebAccessibilityObject::headingLevel): (WebKit::WebAccessibilityObject::setFocused):
19:14 Changeset [59897] by aroben@apple.com

Stop leaking all CACFContexts

Fixes <http://webkit.org/b/39466> <rdar://problem/8007141>.

Reviewed by Simon Fraser.

  • platform/graphics/win/WKCACFContextFlusher.cpp:

(WebCore::WKCACFContextFlusher::addContext): Only retain the context
when we first add it to the m_contexts set. Otherwise we'll retain the
same context multiple times, causing it to leak.

19:02 Changeset [59896] by eric@webkit.org

2010-05-20 Diego Gonzalez <diegohcg@webkit.org>

Reviewed by Kenneth Rohde Christiansen.

[Qt] QtTestBrowser does not support websites which requires HTTP Authentication via dialogs
https://bugs.webkit.org/show_bug.cgi?id=38456

  • QtTestBrowser/webpage.cpp: (WebPage::WebPage): (WebPage::authenticationRequired):
  • QtTestBrowser/webpage.h:
19:01 Changeset [59895] by ggaren@apple.com

2010-05-20 Geoffrey Garen <ggaren@apple.com>

Reviewed by Oliver Hunt.

Whittling away at CodeBlock use: Removed a little wonkiness in closure lookup
https://bugs.webkit.org/show_bug.cgi?id=39444


Calculate all lookup depths at compile time. I'm not sure why we couldn't
do this before, but whatever the reason, it seems to be gone now.

  • bytecompiler/BytecodeGenerator.cpp: (JSC::BytecodeGenerator::findScopedProperty):
  • bytecompiler/BytecodeGenerator.h:
  • interpreter/Interpreter.cpp: (JSC::Interpreter::resolveSkip): (JSC::Interpreter::resolveGlobalDynamic): (JSC::Interpreter::privateExecute):
  • jit/JITOpcodes.cpp: (JSC::JIT::emit_op_get_scoped_var): (JSC::JIT::emit_op_put_scoped_var): (JSC::JIT::emit_op_resolve_skip): (JSC::JIT::emit_op_resolve_global_dynamic): (JSC::JIT::emitSlow_op_resolve_global_dynamic):
  • jit/JITOpcodes32_64.cpp: (JSC::JIT::emit_op_get_scoped_var): (JSC::JIT::emit_op_put_scoped_var): (JSC::JIT::emit_op_resolve_skip):
18:45 Changeset [59894] by eric@webkit.org

2010-05-20 Young Han Lee <joybro@company100.net>

Reviewed by Darin Adler.

Create filenameFromString for all ports except GTK and EFL.
https://bugs.webkit.org/show_bug.cgi?id=39348

  • platform/FileSystem.cpp: Added. (WebCore::filenameFromString):
  • platform/FileSystem.h:
18:42 Changeset [59893] by mrowe@apple.com

Versioning.

18:41 Changeset [59892] by mrowe@apple.com

New tag.

18:40 Changeset [59891] by mthole@apple.com

When using a scale factor > 1, scrollbars sometimes appear when not necessary
https://bugs.webkit.org/show_bug.cgi?id=39458

Reviewed by Dave Hyatt.

  • WebView/WebDynamicScrollBarsView.mm:

(-[WebDynamicScrollBarsView updateScrollers]): Round up non-integral sizes from AppKit
so that they can be compared against the integral document size.

18:19 Changeset [59890] by eric@webkit.org

2010-05-20 Young Han Lee <joybro@company100.net>

Reviewed by Darin Adler.

Port SharedBuffer to POSIX.
https://bugs.webkit.org/show_bug.cgi?id=39283

  • platform/posix/SharedBufferPOSIX.cpp: Added. (WebCore::SharedBuffer::createWithContentsOfFile):
18:19 Changeset [59889] by mrowe@apple.com

Merge r59876.

18:06 Changeset [59888] by eric@webkit.org

2010-05-20 Zhenyao Mo <zmo@google.com>

Reviewed by Dimitri Glazkov.

Map RGBA4/RGB5_A1 to RGBA and RGB565 to RGB in RenderbufferStorage
https://bugs.webkit.org/show_bug.cgi?id=39077

  • fast/canvas/webgl/framebuffer-object-attachment-expected.txt: Add the test cases for color renderbuffer creation and attachment to framebuffer.
  • fast/canvas/webgl/framebuffer-object-attachment.html: Ditto.

2010-05-20 Zhenyao Mo <zmo@google.com>

Reviewed by Dimitri Glazkov.

Map RGBA4/RGB5_A1 to RGBA and RGB565 to RGB in RenderbufferStorage
https://bugs.webkit.org/show_bug.cgi?id=39077

  • platform/graphics/mac/GraphicsContext3DMac.cpp: (WebCore::GraphicsContext3D::renderbufferStorage): Mapping the enums.

2010-05-20 Zhenyao Mo <zmo@google.com>

Reviewed by Dimitri Glazkov.

Map RGBA4/RGB5_A1 to RGBA and RGB565 to RGB in RenderbufferStorage
https://bugs.webkit.org/show_bug.cgi?id=39077

  • src/WebGraphicsContext3DDefaultImpl.cpp: (WebKit::WebGraphicsContext3DDefaultImpl::renderbufferStorage): Mapping the enums.
18:05 Changeset [59887] by mrowe@apple.com

Merge r59793.

18:05 Changeset [59886] by mrowe@apple.com

Merge r59853.

18:05 Changeset [59885] by mrowe@apple.com

Merge r59873.

18:04 Changeset [59884] by mrowe@apple.com

Merge r59871.

18:04 Changeset [59883] by mrowe@apple.com

Merge r59854.

18:04 Changeset [59882] by mrowe@apple.com

Merge r59864.

18:04 Changeset [59881] by mrowe@apple.com

Merge r59795.

18:04 Changeset [59880] by mrowe@apple.com

Merge r59859.

18:04 Changeset [59879] by mrowe@apple.com

Merge r59732.

18:04 Changeset [59878] by mrowe@apple.com

Merge r59731.

18:04 Changeset [59877] by mrowe@apple.com

Merge r59798.

17:37 Changeset [59876] by mitz@apple.com

<rdar://problem/8007953> Textarea using custom font appears blank

Reviewed by Dave Hyatt.

WebCore:

Test: fast/css/font-face-in-shadow-DOM.html

When a remote font is loaded, CSSFontSelector forces a style recalc, which replaces all
RenderSyles that have FontFallbackLists referencing the placeholder font with fresh
RenderStyles. However, it does not descend into shadow DOM trees, so those may end up with
styles that still reference the placeholder font.

The fix is to add RenderObject::requiresForcedStyleRecalcPropagation() and have it return
true from renderers that maintain shadow DOM trees or otherwise keep their own RenderStyles.

  • dom/Element.cpp:

(WebCore::Element::recalcStyle): Check if forced style recalc needs to propagated.

  • rendering/RenderButton.h:

(WebCore::RenderButton::requiresForcedStyleRecalcPropagation):

  • rendering/RenderDataGrid.h:

(WebCore::RenderDataGrid::requiresForcedStyleRecalcPropagation):

  • rendering/RenderFileUploadControl.h:

(WebCore::RenderFileUploadControl::requiresForcedStyleRecalcPropagation):

  • rendering/RenderListItem.h:

(WebCore::RenderListItem::requiresForcedStyleRecalcPropagation):

  • rendering/RenderMedia.h:

(WebCore::RenderMedia::requiresForcedStyleRecalcPropagation):

  • rendering/RenderMenuList.h:

(WebCore::RenderMenuList::RenderMenuList::requiresForcedStyleRecalcPropagation):

  • rendering/RenderObject.h:

(WebCore::RenderObject::requiresForcedStyleRecalcPropagation):

  • rendering/RenderProgress.h:

(WebCore::RenderProgress::requiresForcedStyleRecalcPropagation):

  • rendering/RenderSlider.h:

(WebCore::RenderSlider::requiresForcedStyleRecalcPropagation):

  • rendering/RenderTextControl.h:

(WebCore::RenderTextControl::requiresForcedStyleRecalcPropagation):

LayoutTests:

  • fast/css/font-face-in-shadow-DOM.html: Added.
  • platform/mac/fast/css/font-face-in-shadow-DOM-expected.checksum: Added.
  • platform/mac/fast/css/font-face-in-shadow-DOM-expected.png: Added.
  • platform/mac/fast/css/font-face-in-shadow-DOM-expected.txt: Added.
16:58 Changeset [59875] by mrowe@apple.com

Merge r59776.

16:57 Changeset [59874] by mrowe@apple.com

Merge r59677.

16:02 Changeset [59873] by jer.noble@apple.com

No review; build fix only.

When WTF_USE_ACCELERATED_COMPOSITING is turned off, MediaPlayerPrivateQuickTimeVisualContext.cpp
must include CoreGraphics/CGContext.h.

  • platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
15:51 Changeset [59872] by mrobinson@webkit.org

2010-05-20 Martin Robinson <mrobinson@igalia.com>

Not reviewed.

Tests that use Geolocation.getCurrentPosition fail
https://bugs.webkit.org/show_bug.cgi?id=39454

  • platform/gtk/Skipped: Skip failing tests until this bug is resolved.
15:41 Changeset [59871] by jer.noble@apple.com

2010-05-20 Jer Noble <jer.noble@apple.com>

Reviewed by Sam Weinig.

Video elements show no video on Windows machines that do not support accelerated compositing
https://bugs.webkit.org/show_bug.cgi?id=39446
rdar://problem/7999794

Implement the paint() method in MediaPlayerPrivateQuickTimeVisualContext. The visual context should
be set up in load() and torn down in the destructor (as opposed to setUpVideoRendering and
tearDownVideoRendering, which won't get called in a non-accelerated compositing case).


  • platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp: (WebCore::MediaPlayerPrivateQuickTimeVisualContext::~MediaPlayerPrivateQuickTimeVisualContext): (WebCore::MediaPlayerPrivateQuickTimeVisualContext::load): (WebCore::MediaPlayerPrivateQuickTimeVisualContext::paint): (WebCore::MediaPlayerPrivateQuickTimeVisualContext::visualContextTimerFired): (WebCore::MediaPlayerPrivateQuickTimeVisualContext::retrieveCurrentImage): (WebCore::MediaPlayerPrivateQuickTimeVisualContext::setUpVideoRendering): (WebCore::MediaPlayerPrivateQuickTimeVisualContext::tearDownVideoRendering):
15:32 Changeset [59870] by victorw@chromium.org

2010-05-20 Abhishek Arya <inferno@chromium.org>

Reviewed by Adam Barth.

Added method to WebSecurityOrigin for invoking
SecurityOrigin::canAccessPasswordManager.
https://bugs.webkit.org/show_bug.cgi?id=38916

  • public/WebSecurityOrigin.h:
  • src/WebSecurityOrigin.cpp: (WebKit::WebSecurityOrigin::canAccessPasswordManager):

2010-05-20 Abhishek Arya <inferno@chromium.org>

Reviewed by Adam Barth.

Added a method to check if the security origin can access
password manager.
https://bugs.webkit.org/show_bug.cgi?id=38916

  • page/SecurityOrigin.h: (WebCore::SecurityOrigin::canAccessPasswordManager):
15:27 Changeset [59869] by victorw@chromium.org

2010-05-20 Victor Wang <victorw@chromium.org>

Unreviewed. Update test expectations for chromium.

  • platform/chromium-mac/svg/filters/feLighting-crash-expected.checksum: Added.
  • platform/chromium-mac/svg/filters/feLighting-crash-expected.png: Added.
  • platform/chromium-win/svg/filters/feLighting-crash-expected.checksum: Added.
  • platform/chromium-win/svg/filters/feLighting-crash-expected.png: Added.
  • platform/chromium/test_expectations.txt:
15:17 Changeset [59868] by darin@apple.com

2010-05-20 Darin Adler <darin@apple.com>

Reviewed by Eric Seidel.

Fix warnings seen on the buildbots today
https://bugs.webkit.org/show_bug.cgi?id=39368

  • profiler/ProfileNode.cpp: (JSC::getCount): Removed unneeded initialization of global variable. These are all initialized to zero anyway, so no need to try to initialize it and get a warning.
  • wtf/CurrentTime.cpp: (WTF::currentTime): Removed unused global variable.

2010-05-20 Darin Adler <darin@apple.com>

Reviewed by Eric Seidel.

Fix warnings seen on the buildbots today
https://bugs.webkit.org/show_bug.cgi?id=39368

  • loader/icon/IconDatabase.cpp: (WebCore::IconDatabase::pruneUnretainedIcons): Use the type "long long" for things being printed with "%lli". There is no guaranteed that int64_t is the same thing as long long.
  • page/EventHandler.cpp: (WebCore::EventHandler::handleMousePressEvent): Added parentheses as suggested by warnings in newer versions of GCC.
  • platform/ContextMenu.cpp: Fix #if around the functions to match the #if around the call sites to avoid unused function warning.
  • platform/graphics/gtk/ImageGtk.cpp: (WebCore::Image::loadPlatformResource): Use NULL to end a variable argument list rather than 0. This is a case where the WebKit "use 0 instead of NULL" guideline is incorrect and won't work properly.
  • platform/win/SystemTimeWin.cpp: (WebCore::userIdleTime): Removed unnecessary initialization of LASTINPUTINFO.
  • platform/win/WebCoreInstanceHandle.h: Added property svn:eol-style. Made functions inline instead of static. It's not correct to have functions with internal linkage in a header file. Marking them inline makes more sense.
  • plugins/win/PluginMessageThrottlerWin.cpp: (WebCore::PluginMessageThrottlerWin::PluginMessageThrottlerWin): Reordered the initializers to match the order of the data members from the class definition.
  • plugins/win/PluginViewWin.cpp: (WebCore::PluginView::paintIntoTransformedContext): Initialized all the fields of WINDOWPOS. I know this goes against the traditions of Windows programming, but it's correct and silences the warning. Also removed the unneeded separate code path for non-WinCE platforms that translates only the corner of the window rectangle; the WinCE version is correct for normal Windows as well. Not sure why this wasn't caught when the code was originally checked in.
15:05 Changeset [59867] by mrobinson@webkit.org

2010-05-20 Martin Robinson <mrobinson@igalia.com>

Not reviewed.

https://bugs.webkit.org/show_bug.cgi?id=39388
Re-enable geolocation tests on GTK+ now that this bug is closed.

  • platform/gtk/Skipped: Re-enable geolocation tests.
14:56 Changeset [59866] by yaar@chromium.org

2010-05-20 Justin Schuh <jschuh@chromium.org>

Reviewed by Adam Barth.

Moving frame.src checks out of the bindings
https://bugs.webkit.org/show_bug.cgi?id=37815

Moved JavaScript frame.src checks out of bindings and into
HTMLFrameElementBase. Added main thread state stack to JavaScriptCore
so ExecState is available inside core DOM. Updated affected bindings
(except for GObject, which will need to be updated to avoid origin
failures inside native code).

  • Android.jscbindings.mk:
  • CMakeLists.txt:
  • GNUmakefile.am:
  • WebCore.gypi:
  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSBindingsAllInOne.cpp:
  • bindings/js/JSCallbackData.cpp: (WebCore::JSCallbackData::invokeCallback):
  • bindings/js/JSEventListener.cpp: (WebCore::JSEventListener::handleEvent):
  • bindings/js/JSInjectedScriptHostCustom.cpp: (WebCore::InjectedScriptHost::createInjectedScript):
  • bindings/js/JSMainThreadExecState.cpp: Added.
  • bindings/js/JSMainThreadExecState.h: Added. (WebCore::JSMainThreadExecState::currentState): (WebCore::JSMainThreadExecState::call): (WebCore::JSMainThreadExecState::evaluate): (WebCore::JSMainThreadExecState::JSMainThreadExecState): (WebCore::JSMainThreadExecState::~JSMainThreadExecState): (WebCore::JSMainThreadNullState::JSMainThreadNullState):
  • bindings/js/ScheduledAction.cpp: (WebCore::ScheduledAction::executeFunctionInContext): (WebCore::ScheduledAction::execute):
  • bindings/js/ScheduledAction.h:
  • bindings/js/ScriptController.cpp: (WebCore::ScriptController::evaluateInWorld): (WebCore::ScriptController::canAccessFromCurrentOrigin):
  • bindings/js/ScriptController.h:
  • bindings/js/ScriptFunctionCall.cpp: (WebCore::ScriptFunctionCall::call):
  • bindings/objc/ObjCEventListener.mm:
  • bindings/objc/WebScriptObject.mm: (-[WebScriptObject callWebScriptMethod:withArguments:]): (-[WebScriptObject evaluateWebScript:]):
  • bindings/scripts/CodeGeneratorObjC.pm:
  • bindings/scripts/test/ObjC/DOMTestCallback.mm: (-[DOMTestCallback callbackWithClass1Param:]): (-[DOMTestCallback callbackWithClass2Param:strArg:]): (-[DOMTestCallback callbackWithNonBoolReturnType:]): (-[DOMTestCallback customCallback:class6Param:]):
  • bindings/scripts/test/ObjC/DOMTestInterface.mm:
  • bindings/scripts/test/ObjC/DOMTestObj.mm: (-[DOMTestObj readOnlyIntAttr]): (-[DOMTestObj readOnlyStringAttr]): (-[DOMTestObj readOnlyTestObjAttr]): (-[DOMTestObj intAttr]): (-[DOMTestObj setIntAttr:]): (-[DOMTestObj longLongAttr]): (-[DOMTestObj setLongLongAttr:]): (-[DOMTestObj unsignedLongLongAttr]): (-[DOMTestObj setUnsignedLongLongAttr:]): (-[DOMTestObj stringAttr]): (-[DOMTestObj setStringAttr:]): (-[DOMTestObj testObjAttr]): (-[DOMTestObj setTestObjAttr:]): (-[DOMTestObj attrWithException]): (-[DOMTestObj setAttrWithException:]): (-[DOMTestObj attrWithSetterException]): (-[DOMTestObj setAttrWithSetterException:]): (-[DOMTestObj attrWithGetterException]): (-[DOMTestObj setAttrWithGetterException:]): (-[DOMTestObj customAttr]): (-[DOMTestObj setCustomAttr:]): (-[DOMTestObj scriptStringAttr]): (-[DOMTestObj voidMethod]): (-[DOMTestObj voidMethodWithArgs:strArg:objArg:]): (-[DOMTestObj intMethod]): (-[DOMTestObj intMethodWithArgs:strArg:objArg:]): (-[DOMTestObj objMethod]): (-[DOMTestObj objMethodWithArgs:strArg:objArg:]): (-[DOMTestObj methodThatRequiresAllArgs:objArg:]): (-[DOMTestObj methodThatRequiresAllArgsAndThrows:objArg:]): (-[DOMTestObj serializedValue:]): (-[DOMTestObj methodWithException]): (-[DOMTestObj customMethod]): (-[DOMTestObj customMethodWithArgs:strArg:objArg:]): (-[DOMTestObj customArgsAndException:]): (-[DOMTestObj addEventListener:listener:useCapture:]): (-[DOMTestObj removeEventListener:listener:useCapture:]): (-[DOMTestObj withDynamicFrame]): (-[DOMTestObj withDynamicFrameAndArg:]): (-[DOMTestObj withDynamicFrameAndOptionalArg:optionalArg:]): (-[DOMTestObj withDynamicFrameAndUserGesture:]): (-[DOMTestObj withDynamicFrameAndUserGestureASAD:optionalArg:]): (-[DOMTestObj withScriptStateVoid]): (-[DOMTestObj withScriptStateObj]): (-[DOMTestObj withScriptStateVoidException]): (-[DOMTestObj withScriptStateObjException]): (-[DOMTestObj methodWithOptionalArg:]): (-[DOMTestObj methodWithNonOptionalArgAndOptionalArg:opt:]): (-[DOMTestObj methodWithNonOptionalArgAndTwoOptionalArgs:opt1:opt2:]):
  • bindings/v8/ScriptController.cpp: (WebCore::ScriptController::canAccessFromCurrentOrigin):
  • bindings/v8/ScriptController.h:
  • html/HTMLFrameElementBase.cpp: (WebCore::HTMLFrameElementBase::isURLAllowed):

2010-05-20 Justin Schuh <jschuh@chromium.org>

Reviewed by Adam Barth.

Moving frame.src checks out of the bindings
https://bugs.webkit.org/show_bug.cgi?id=37815

  • http/tests/security/xss-DENIED-iframe-src-alias-expected.txt:
  • http/tests/security/xss-DENIED-iframe-src-alias.html:
14:55 Changeset [59865] by kdecker@apple.com

Reviewed by Anders Carlsson.

https://bugs.webkit.org/show_bug.cgi?id=39441
<rdar://problem/7985715> Flash context menu is both horizontally and vertically offset from point of click
<rdar://problem/7986109> Youtube video controller UI entirely missing
<rdar://problem/7986154> Flash content paints at horizontally and vertically shifted locations (within the plug-in region)

  • Plugins/Hosted/WebHostedNetscapePluginView.mm: (-[WebHostedNetscapePluginView updateAndSetWindow]): The base coordinates of a window and it's contentView happen to be the equal at a userSpaceScaleFactor of 1. For non-1.0 scale factors this assumption is false. Accordingly we now convert to the window contentView coordinate system when computing bounds in "window" and the visible rect.
  • Plugins/WebNetscapePluginView.mm: (-[WebNetscapePluginView saveAndSetNewPortStateForUpdate:]): Ditto.
14:30 Changeset [59864] by aroben@apple.com

Fix an HRGN leak in WKCACFLayerRenderer

Fixes <http://webkit.org/b/39312> <rdar://problem/7998728> REGRESSION
(r53686-r55990): Graphics corruption when watching video (affects
youtube.com)

Reviewed by Darin Adler.

  • platform/graphics/win/WKCACFLayerRenderer.cpp:

(WebCore::getDirtyRects): Use an OwnPtr to hold the HRGN we allocate.
That way we don't have to remember to destroy it (as we were
forgetting to do) when we bail out of this function early.

14:20 Changeset [59863] by ggaren@apple.com

2010-05-20 Geoffrey Garen <ggaren@apple.com>

Reviewed by Darin Adler.

Removed some reliance on callFame[CodeBlock] by storing CodeBlock in a
local variable in the Interpreter.
https://bugs.webkit.org/show_bug.cgi?id=39447

Small speedup on SunSpider in Interpreter mode.

  • interpreter/Interpreter.cpp: (JSC::Interpreter::privateExecute):
  • jsc.cpp:
  • wtf/Platform.h:
13:49 Changeset [59862] by darin@chromium.org

2010-05-20 Darin Fisher <darin@chromium.org>

Reviewed by Nate Chapin.

[chromium] Provide a way to catch exceptions thrown while interacting
with a NPObject via WebBindings methods.
https://bugs.webkit.org/show_bug.cgi?id=39378

This change also includes a small bit of cleanup in V8NPObject and
friends. I moved code into the WebCore namespace where appropriate.


In _NPN_Invoke, I also moved the call to _NPN_Evaluate outside of the
context scope. I did this to avoid having nested ExceptionCatcher
objects, which is not strictly necessary, but it seemed cleaner.
_NPN_Evaluate already takes care of creating a context scope.

  • bindings/v8/NPV8Object.cpp: (WebCore::v8ObjectToNPObject): (WebCore::npCreateV8ScriptObject): (_NPN_Invoke): (_NPN_InvokeDefault): (_NPN_Evaluate): (_NPN_EvaluateHelper): (_NPN_GetProperty): (_NPN_SetProperty): (_NPN_RemoveProperty): (_NPN_HasProperty): (_NPN_HasMethod): (_NPN_SetException): (_NPN_Enumerate): (_NPN_Construct):
  • bindings/v8/NPV8Object.h:
  • bindings/v8/V8NPObject.cpp:
  • bindings/v8/V8NPObject.h:
  • bindings/v8/V8NPUtils.cpp: (WebCore::convertV8ObjectToNPVariant): (WebCore::pushExceptionHandler): (WebCore::popExceptionHandler): (WebCore::ExceptionCatcher::ExceptionCatcher): (WebCore::ExceptionCatcher::~ExceptionCatcher):
  • bindings/v8/V8NPUtils.h:
  • bindings/v8/npruntime.cpp:
13:20 Changeset [59861] by mrobinson@webkit.org

2010-05-20 Martin Robinson <mrobinson@igalia.com>

Reviewed by Eric Seidel.

editingBehavior settings needs to be set back to a reasonable default between tests
https://bugs.webkit.org/show_bug.cgi?id=39433

For now, hard code the default setting during reset, so that the serialized
version of the setting stays in sync with expectations.

  • DumpRenderTree/mac/DumpRenderTree.mm: (resetDefaultsToConsistentValues): Reset editing behavior to the appropriate platform default.
  • DumpRenderTree/win/DumpRenderTree.cpp: (resetDefaultsToConsistentValues): Ditto.
13:12 Changeset [59860] by barraclough@apple.com

Bug 39408 - Unify JIT/interpreter return behaviour.

Reviewed by Oliver Hunt.

Presently the JIT and the interpreter have differing implementations in how
they handle storing the result of a function call back to the register file.
In both cases the op_call ( / _eval / _varargs / op_construct) opcode has an
operand indicating the VM register in which the result should be stored.
The JIT plants code after the call to store the result, so the value will be
stored as soon as the callee has returned. In the interpreter the call
passes the return value register id into the callee via the callee callframe,
and the callee is responsible for writing the result back into its callers
register file after it has restored the parents callframe pointer, but before
returning.

Instead, move the task of writing the call result to the register file into a
new opcode (op_call_put_result), and after returning the callee should leave
the return value in a canonical location. In the case of the interpreter,
this canonical location is a local variable in privateExecute
(functionReturnValue), in the case of the JIT this is the normal return value
registers (regT0, or regT1:regT0 in JSVALUE32_64). op_call_put_result stores
the result from the canonical location to the registerfile.

In addition to unifying JIT & interpreter behaviour this change allows us to
remove a slot from the callframe, omit the write of the result where the
return value from the call is not used, and provides a 2% speedup on sunspider
in the interpreter.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::dump):

  • bytecode/Opcode.h:
  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::emitCall):
(JSC::BytecodeGenerator::emitCallVarargs):
(JSC::BytecodeGenerator::emitConstruct):

  • bytecompiler/BytecodeGenerator.h:

(JSC::BytecodeGenerator::finalDestinationOrIgnored):

  • bytecompiler/NodesCodegen.cpp:

(JSC::NewExprNode::emitBytecode):
(JSC::FunctionCallValueNode::emitBytecode):
(JSC::FunctionCallResolveNode::emitBytecode):
(JSC::FunctionCallBracketNode::emitBytecode):
(JSC::FunctionCallDotNode::emitBytecode):
(JSC::CallFunctionCallDotNode::emitBytecode):
(JSC::ApplyFunctionCallDotNode::emitBytecode):

  • interpreter/CallFrame.h:

(JSC::ExecState::init):
(JSC::ExecState::noCaller):

  • interpreter/Interpreter.cpp:

(JSC::Interpreter::dumpRegisters):
(JSC::Interpreter::throwException):
(JSC::Interpreter::privateExecute):

  • interpreter/RegisterFile.h:

(JSC::RegisterFile::):

  • jit/JIT.cpp:

(JSC::JIT::privateCompileMainPass):

  • jit/JIT.h:
  • jit/JITCall.cpp:

(JSC::JIT::compileOpCallSetupArgs):
(JSC::JIT::compileOpConstructSetupArgs):
(JSC::JIT::emit_op_call_put_result):
(JSC::JIT::compileOpCallVarargs):
(JSC::JIT::compileOpCallVarargsSlowCase):
(JSC::JIT::compileOpCall):
(JSC::JIT::compileOpCallSlowCase):
(JSC::JIT::compileOpCallVarargsSetupArgs):

13:10 Changeset [59859] by steveblock@google.com

2010-05-20 Marcus Bulach <bulach@chromium.org>

Reviewed by Steve Block.

Ensure timers are stopped on Geolocation::disconnectFrame()
https://bugs.webkit.org/show_bug.cgi?id=39388

fast/dom/Geolocation/notimer-after-unload.html, plus it should be possible to re-enable Gtk LayoutTests.

  • page/Geolocation.cpp: (WebCore::Geolocation::disconnectFrame):
12:44 Changeset [59858] by bfulgham@webkit.org

Build fix. No review.

The WebKitAPITest targets do not use the "_debug" suffix needed
by the WinCairo port. Added Debug_Cairo target to correct this.

  • WebKitAPITest/WebKitAPITest.vcproj:
12:32 Changeset [59857] by mrobinson@webkit.org

2010-05-20 Martin Robinson <mrobinson@igalia.com>

Unreviewed.

editingBehavior settings needs to be set back to a reasonable default between tests
https://bugs.webkit.org/show_bug.cgi?id=39433

I forgot to revert the expected results for this test after reverting it.

  • editing/selection/extend-selection-after-double-click-expected.txt:
12:18 Changeset [59856] by jamesr@google.com

2010-05-20 James Robinson <jamesr@chromium.org>

Reviewed by Eric Seidel.

Ensures styles are up-to-date before determining selection
https://bugs.webkit.org/show_bug.cgi?id=39389

This adds a call to document::updateStyleIfNeeded() to
Frame::notifyRendererOfSelectionChange(). Without this call, if there
is a pending style update that will detach part of the DOM and the
the selection is within that part of the DOM when
notifyRendererOfSeletionChange is called, the rootEditableElement
algorithm ends up walking through detached parts of the render tree.

Test: editing/selection/focus-and-display-none.html

  • page/Frame.cpp: (WebCore::Frame::notifyRendererOfSelectionChange):

2010-05-20 James Robinson <jamesr@chromium.org>

Reviewed by Eric Seidel.

Tests putting focus into a textarea and setting display:none
https://bugs.webkit.org/show_bug.cgi?id=39389

  • editing/selection/focus-and-display-none-expected.txt: Added.
  • editing/selection/focus-and-display-none.html: Added.
12:14 Changeset [59855] by bfulgham@webkit.org

[WinCairo] Correct scaling for print preview
https://bugs.webkit.org/show_bug.cgi?id=39329

Reviewed by Adam Roben.

Cairo does not properly deal with Windows HDCs that have been
scaled using MM_ANISOTROPIC mapping mode, and a WindowExt and
ViewportExt setting.
(see http://bugs.freedesktop.org/show_bug.cgi?id=28161)

Instead, reset the HDC's WorldTransform to be unscaled, then
scale the cairo context to the desired scaling, and perform
the drawing operation.

  • WebFrame.cpp:

(WebFrame::drawHeader): Use pre-positioned context to simplify

this method.

(WebFrame::drawFooter): Use pre-positioned context to simplify

this method.

(WebFrame::spoolPage): Revise scaling logic to turn off HDC

scaling, and scale using only Cairo. Revert scaling at end
so that user-defined GDI-based routines (e.g., header/footer)
will draw in the right position.

(WebFrame::spoolPages): Identify print preview case, and

retrieve scaling factors from preview context. Set the
Cairo context to use these factors during the spoolPage
operation.

11:51 Changeset [59854] by aroben@apple.com

Remove code that fetched, but did nothing useful with, a CFDictionary in MediaPlayerPrivateQuickTimeVisualContext

I also removed the code in QTPixelBuffer that vended the dictionary.

Fixes <http://webkit.org/b/39435> <rdar://problem/8009278>
QTPixelBuffer passes CFDictionaries across the DLL boundary, which can
lead to crashes

Reviewed by Darin Adler.

  • platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:

(WebCore::MediaPlayerPrivateQuickTimeVisualContext::retrieveCurrentImage):
Deleted code that fetched the attachments dictionary, which was never
used other than to pass it to CFRetain/CFRelease, which could be
enough to cause a crash due to incompatible copies of
CoreFoundation.dll.

  • platform/graphics/win/QTMovieVisualContext.h: Added a now-needed

forward declaration.

  • platform/graphics/win/QTPixelBuffer.cpp:
  • platform/graphics/win/QTPixelBuffer.h:

Removed the now-unused attachments function.

11:51 Changeset [59853] by aroben@apple.com

Fix a CFData leak in MediaPlayerPrivateQuickTimeVisualContext

Fixes <http://webkit.org/b/39432> <rdar://problem/8008992>

Reviewed by Ada Chan

  • platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:

(WebCore::QTCFDictionaryCreateWithDataCallback): Use a RetainPtr to
hold the CFData we allocate so it will get released when this function
is exited. Also pass kCFAllocatorNull as the bytes deallocator to
CFDataCreateWithBytesNoCopy so that CF doesn't try to deallocate the
bytes we pass to it.

11:36 Changeset [59852] by mrobinson@webkit.org

2010-05-20 Martin Robinson <mrobinson@igalia.com>

Reviewed by Ojan Vafai.

editingBehavior settings needs to be set back to a reasonable default between tests
https://bugs.webkit.org/show_bug.cgi?id=39433

Revert the changes from r59840 to this test until there is a method
in the WebKit APIs to consistently reset the editingBehavior setting
to a reasonable default.

11:32 Changeset [59851] by jianli@chromium.org

Rename GenericTask* to CrossThreadTask* in CrossThreadTask.h.
https://bugs.webkit.org/show_bug.cgi?id=39437

Reviewed by David Levin.

  • dom/CrossThreadTask.h:

(WebCore::):
(WebCore::CrossThreadTask1::create):
(WebCore::CrossThreadTask1::CrossThreadTask1):
(WebCore::CrossThreadTask2::create):
(WebCore::CrossThreadTask2::CrossThreadTask2):
(WebCore::CrossThreadTask3::create):
(WebCore::CrossThreadTask3::CrossThreadTask3):
(WebCore::CrossThreadTask4::create):
(WebCore::CrossThreadTask4::CrossThreadTask4):
(WebCore::CrossThreadTask5::create):
(WebCore::CrossThreadTask5::CrossThreadTask5):
(WebCore::CrossThreadTask6::create):
(WebCore::CrossThreadTask6::CrossThreadTask6):
(WebCore::CrossThreadTask7::create):
(WebCore::CrossThreadTask7::CrossThreadTask7):
(WebCore::CrossThreadTask8::create):
(WebCore::CrossThreadTask8::CrossThreadTask8):
(WebCore::createCallbackTask):

11:31 Changeset [59850] by victorw@chromium.org

2010-05-20 Victor Wang <victorw@chromium.org>

Unreviewed. Update test expectations from chromium.

  • platform/chromium/test_expectations.txt:
10:57 Changeset [59849] by jianli@chromium.org

Rename GenericWorkerTask.h to CrossThreadTask.h and move it to dom directory.
https://bugs.webkit.org/show_bug.cgi?id=39135

Reviewed by David Levin.

WebCore:

  • GNUmakefile.am:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • dom/CrossThreadTask.h: Renamed from WebCore/workers/GenericWorkerTask.h.
  • html/FileStreamProxy.cpp:
  • loader/WorkerThreadableLoader.cpp:
  • websockets/WorkerThreadableWebSocketChannel.cpp:
  • workers/DefaultSharedWorkerRepository.cpp:
  • workers/WorkerMessagingProxy.cpp:
  • workers/WorkerScriptLoader.cpp:

WebKit/chromium:

  • src/WebSharedWorkerImpl.cpp:
  • src/WebWorkerBase.cpp:
  • src/WebWorkerClientImpl.cpp:
  • src/WebWorkerImpl.cpp:
10:52 EFLWebKit edited by leandro@profusion.mobi
(diff)
10:44 Changeset [59848] by adele@apple.com

Remove the Safari welcome page site-specific quirk, since its no longer needed.

Reviewed by Mark Rowe.

  • css/CSSStyleSheet.cpp: (WebCore::CSSStyleSheet::cssRules):
10:37 Changeset [59847] by steveblock@google.com

2010-05-20 Steve Block <steveblock@google.com>

Reviewed by Jeremy Orlow.

Provide bindings for DeviceOrientation
https://bugs.webkit.org/show_bug.cgi?id=39210

Adds ENABLE_DEVICE_ORIENTATION to XCode project file, always disabled.

  • Configurations/FeatureDefines.xcconfig:

2010-05-20 Steve Block <steveblock@google.com>

Reviewed by Jeremy Orlow.

Provide bindings for DeviceOrientation
https://bugs.webkit.org/show_bug.cgi?id=39210

Adds ENABLE_DEVICE_ORIENTATION to VisualStudio project files, always disabled.

  • win/tools/vsprops/FeatureDefines.vsprops:
  • win/tools/vsprops/FeatureDefinesCairo.vsprops:

2010-05-20 Steve Block <steveblock@google.com>

Reviewed by Jeremy Orlow.

Provide bindings for DeviceOrientation
https://bugs.webkit.org/show_bug.cgi?id=39210

Adds ENABLE_DEVICE_ORIENTATION to XCode project file, always disabled.

  • Configurations/FeatureDefines.xcconfig:

2010-05-20 Steve Block <steveblock@google.com>

Reviewed by Jeremy Orlow.

Provide bindings for DeviceOrientation
https://bugs.webkit.org/show_bug.cgi?id=39210

Tests: fast/dom/DeviceOrientation/window-property.html

fast/dom/Window/window-properties-on-device-orientation.html

Adds bindings for DeviceOrientation as defined in
http://dev.w3.org/geo/api/spec-source-orientation.html
This is guarded by ENABLE(DEVICE_ORIENTATION) which is currently disabled on
all platforms but Android.

  • Android.derived.jscbindings.mk:
  • Android.derived.v8bindings.mk:
  • Android.mk:
  • Configurations/FeatureDefines.xcconfig:
  • DerivedSources.cpp:
  • DerivedSources.make:
  • GNUmakefile.am:
  • WebCore.gypi:
  • WebCore.pri:
  • WebCore.pro:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSEventCustom.cpp: (WebCore::toJS):
  • bindings/v8/custom/V8EventCustom.cpp: (WebCore::toV8):
  • dom/DeviceOrientationEvent.cpp: Added. (WebCore::DeviceOrientationEvent::DeviceOrientationEvent): (WebCore::DeviceOrientationEvent::initDeviceOrientationEvent):
  • dom/DeviceOrientationEvent.h: Added. (WebCore::DeviceOrientationEvent::create): (WebCore::DeviceOrientationEvent::alpha): (WebCore::DeviceOrientationEvent::beta): (WebCore::DeviceOrientationEvent::gamma): (WebCore::DeviceOrientationEvent::isDeviceOrientationEvent):
  • dom/DeviceOrientationEvent.idl: Added.
  • dom/Event.cpp: (WebCore::Event::isDeviceOrientationEvent):
  • dom/Event.h:
  • dom/EventNames.h:
  • page/DOMWindow.h:
  • page/DOMWindow.idl:

2010-05-20 Steve Block <steveblock@google.com>

Reviewed by Jeremy Orlow.

Provide bindings for DeviceOrientation
https://bugs.webkit.org/show_bug.cgi?id=39210

Modifies existing fast/dom/Window tests to skip window.ondeviceorientation until
it is widely supported.
Adds new fast/dom/Window/window-properties-on-device-orientation.html to test
type and presence of window.ondeviceorientation.
Adds new fast/dom/DeviceOrientation directory and initial test.
Adds all DeviceOrientation tests to all skipped lists.

  • fast/dom/DeviceOrientation: Added.
  • fast/dom/DeviceOrientation/script-tests: Added.
  • fast/dom/DeviceOrientation/script-tests/TEMPLATE.html: Added.
  • fast/dom/DeviceOrientation/script-tests/window-property.js: Added. (hasOnDeviceOrientationProperty):
  • fast/dom/DeviceOrientation/window-property-expected.txt: Added.
  • fast/dom/DeviceOrientation/window-property.html: Added.
  • fast/dom/Window/script-tests/window-property-descriptors.js:
  • fast/dom/Window/window-properties-on-device-orientation-expected.txt: Added.
  • fast/dom/Window/window-properties-on-device-orientation.html: Added.
  • fast/dom/Window/window-properties.html:
  • platform/chromium/test_expectations.txt:
  • platform/gtk/Skipped:
  • platform/mac/Skipped:
  • platform/qt/Skipped:
  • platform/win/Skipped:
10:26 Changeset [59846] by kenneth@webkit.org

Use 0.15 as text drag delay when Q_WS_MAC is defined, which is
consistent with the Mac OS X platform.

Rubberstamped by Antti Koivisto.

  • page/qt/EventHandlerQt.cpp:
10:24 Changeset [59845] by mrobinson@webkit.org

2010-05-20 Martin Robinson <mrobinson@igalia.com>

Unreviewed.

Touch WebKit.idl to ensure that interfaces rebuild.

  • Interfaces/WebKit.idl: Touched.
10:15 Changeset [59844] by mrobinson@webkit.org

2010-05-20 Martin Robinson <mrobinson@igalia.com>

Reviewed by Ojan Vafai.

editing/selection/extend-selection-after-double-click.html crashes on the Leopard Intel release bot
https://bugs.webkit.org/show_bug.cgi?id=39431

  • DumpRenderTree/mac/LayoutTestControllerMac.mm: (LayoutTestController::setEditingBehavior): Prevent a double-free by not having this variable be in the auto-release pool.
09:48 Changeset [59843] by mrobinson@webkit.org

2010-05-20 Martin Robinson <mrobinson@igalia.com>

Reviewed by Adam Roben.

Fix the Windows build and move new IDL declarations to the bottom of the file.

  • Interfaces/IWebPreferences.idl: Move new API to the bottom of the IDL file to prevent vtable mismatch.
  • WebPreferences.cpp: (WebPreferences::setEditingBehavior): Change the type of the parameter to setEditingBehavior to the proper type.
09:19 Changeset [59842] by mrobinson@webkit.org

2010-05-20 Martin Robinson <mrobinson@igalia.com>

Unreviewed.

Fix the Windows build.

  • WebView.cpp: (WebView::notifyPreferencesChanged): Change behavior to 'editingBehavior'.
09:11 Changeset [59841] by tkent@chromium.org

Unreviewed. Touch WebKit.idl as usual.

08:48 Changeset [59840] by mrobinson@webkit.org

2010-05-20 Martin Robinson <mrobinson@webkit.org>

Reviewed by Ojan Vafai.

Expose the editing behavior setting in DRT to test all editing code paths
https://bugs.webkit.org/show_bug.cgi?id=38603

  • editing/selection/extend-selection-after-double-click.html: Use the new DRT support for changing editing behavior.
  • editing/selection/extend-selection-after-double-click-expected.txt: Update expected results to reflect both behaviors.

2010-05-20 Martin Robinson <mrobinson@webkit.org>

Reviewed by Ojan Vafai.

Expose the editing behavior setting in DRT to test all editing code paths
https://bugs.webkit.org/show_bug.cgi?id=38603

  • public/WebSettings.h: (WebKit::WebSettings::): Added an enum for EditingBehavior types.
  • src/WebSettingsImpl.cpp: (WebKit::WebSettingsImpl::setEditingBehavior): Added.
  • src/WebSettingsImpl.h:

2010-05-20 Martin Robinson <mrobinson@webkit.org>

Reviewed by Ojan Vafai.

Expose the editing behavior setting in DRT to test all editing code paths
https://bugs.webkit.org/show_bug.cgi?id=38603

  • WebView/WebFrame.mm: (core):
  • WebView/WebFrameInternal.h: Added a conversion method from the API enum to the WebCore enum.
  • WebView/WebPreferenceKeysPrivate.h: Added a preference key for the new setting.
  • WebView/WebPreferences.mm: (+[WebPreferences initialize]): Initialize the EditingBehavior to Mac style. (-[WebPreferences editingBehavior]): Added. (-[WebPreferences setEditingBehavior:]): Added.
  • WebView/WebPreferencesPrivate.h: Added the new API points to the private API.
  • WebView/WebView.mm: (-[WebView _preferencesChangedNotification:]): Set the editing behavior via the WebPreferences setting.

2010-05-20 Martin Robinson <mrobinson@webkit.org>

Reviewed by Ojan Vafai.

Expose the editing behavior setting in DRT to test all editing code paths
https://bugs.webkit.org/show_bug.cgi?id=38603

Expose the EditingBehavior setting in the Windows API.

  • Interfaces/IWebPreferences.idl: Add the API point for setting the editing behavior.
  • WebPreferenceKeysPrivate.h: Add a key for the editing behavior setting.
  • WebPreferences.cpp: (WebPreferences::editingBehavior): Added. (WebPreferences::setEditingBehavior): Added.
  • WebPreferences.h: Add method declarations.
  • WebView.cpp: (WebView::notifyPreferencesChanged): Update the WebCore setting based on the WebPreferences setting.

2010-05-20 Martin Robinson <mrobinson@webkit.org>

Reviewed by Ojan Vafai.

Expose the editing behavior setting in DRT to test all editing code paths
https://bugs.webkit.org/show_bug.cgi?id=38603

  • DumpRenderTree/LayoutTestController.cpp: (setEditingBehaviorCallback): Added. (LayoutTestController::staticFunctions): Expose the setEditingBehaviorCallback function.
  • DumpRenderTree/LayoutTestController.h:
  • DumpRenderTree/chromium/LayoutTestController.cpp: Add callback method for setting editing behavior.
  • DumpRenderTree/chromium/LayoutTestController.h: Declaration for this method.
  • DumpRenderTree/gtk/LayoutTestControllerGtk.cpp: (LayoutTestController::setEditingBehavior): Implementation of editing behavior control.
  • DumpRenderTree/mac/LayoutTestControllerMac.mm: (LayoutTestController::setEditingBehavior): Ditto
  • DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::setEditingBehavior): Added stub implementation of editing behavior control.
  • DumpRenderTree/qt/LayoutTestControllerQt.h: (LayoutTestController::setEditingBehavior): Add slot for controlling editor behavior.
  • DumpRenderTree/win/LayoutTestControllerWin.cpp: (LayoutTestController::setEditingBehavior): Implementation of editing behavior control.
  • DumpRenderTree/wx/LayoutTestControllerWx.cpp: (LayoutTestController::setEditingBehavior): Added stub implementation of editing behavior control.
08:46 Changeset [59839] by tkent@chromium.org

2010-05-20 Kent Tamura <tkent@chromium.org>

Reviewed by Eric Seidel.

[DRT/Chromium] Increase the time out value
https://bugs.webkit.org/show_bug.cgi?id=39203

Change the time out value of Chromium DRT to 30 seconds, which is
the same as other ports.
If a DRT process exits before new-run-webkit-tests detects time
out, new-run-webkit-tests assumes the DRT process crashed.

  • DumpRenderTree/chromium/TestShell.cpp: (TestShell::layoutTestTimeout): Change the time out value from 10 seconds to 30 seconds.
08:22 Changeset [59838] by eric@webkit.org

2010-05-20 Janne Koskinen <janne.p.koskinen@digia.com>

Reviewed by Kenneth Rohde Christiansen.

[Qt] WINSCW compile fix for qwebframe test
https://bugs.webkit.org/show_bug.cgi?id=38722

WINSCW cannot determine template type up the hierarchy
to common base class.

  • tests/qwebframe/tst_qwebframe.cpp:
08:13 Changeset [59837] by hausmann@webkit.org

Fix painting when using clipToImageBuffer()

Reviewed by Simon Hausmann.

When we apply the transform of the parent painter to the painter of
the transparency layer, we adopt its coordinate system, thus offset
should not be in page coordinates, but in the coordinate system of
the parent painter.

  • platform/graphics/qt/GraphicsContextQt.cpp:

(WebCore::TransparencyLayer::TransparencyLayer):

08:01 Changeset [59836] by eric@webkit.org

2010-05-20 Laszlo Gombos <laszlo.1.gombos@nokia.com>

Reviewed by Kenneth Rohde Christiansen.

Remove unused "old style" private APIs

These symbols were introduced after QtWebKit v4.6
so no-one should be using them

  • WebCoreSupport/DumpRenderTreeSupportQt.cpp:
07:21 Changeset [59835] by agl@chromium.org

2010-05-20 Adam Langley <agl@chromium.org>

Reviewed by David Levin.

[chromium] Avoid crash when msttcorefonts aren't provided

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

  • platform/graphics/chromium/FontCacheLinux.cpp: (WebCore::FontCache::createFontPlatformData):
07:15 Changeset [59834] by zherczeg@webkit.org

Unreviewed. Update Qt specific expected file.

  • platform/qt/svg/filters/feLighting-crash-expected.txt:
06:56 Changeset [59833] by eric@webkit.org

2010-05-20 Rajiv Ramanasankaran <rajiv.ramanasankaran@nokia.com>

Reviewed by Simon Hausmann.

[Qt] QWebPage::inputMethodQuery() returns wrong values for Qt::ImCursorPosition, Qt::ImAnchorPosition
https://bugs.webkit.org/show_bug.cgi?id=38779

The earlier implementation was written with the assumption that in this scenario the
anchor position always corresponds to the START index and that the current cursor position
always corresponds to the END index in WebKit.

Updated the implementation of QWebPage::inputMethodQuery(Qt::ImCursorPosition) and
QWebPage::inputMethodQuery(Qt::ImAnchorPosition) for the case where the Editor is not in
composition mode. In the non-composition mode, the Anchor and the Current cursor positions
correspond to the Base and Extent position offsets in WebKit.

Also added the auto-tests for the RIGHT to LEFT and LEFT to RIGHT selections.

  • Api/qwebpage.cpp: (QWebPage::inputMethodQuery): Now returning correct values for Qt::ImCursorPosition and Qt::ImAnchorPosition when the Editor is not in composition mode.
  • tests/qwebpage/tst_qwebpage.cpp: (tst_QWebPage::inputMethods): Added auto-tests for RIGHT to LEFT and LEFT to RIGHT selections
06:53 Changeset [59832] by zherczeg@webkit.org

WebCore: Fix a crash caused by feLigthing::apply()
https://bugs.webkit.org/show_bug.cgi?id=39004

Reviewed by Dirk Schulze.

Make FELighting::apply() similar to other filters' applies
to avoid an assertion fail in putUnmultipliedImageData(),
when effectDrawingRect has negative location (x or y is less than 0).

Test: svg/filters/feLighting-crash.svg

  • svg/graphics/filters/SVGFELighting.cpp:

(WebCore::FELighting::apply):

LayoutTests: In case of lighting SVG effects, a wider output rectangle
than the input image size should not cause crash.
https://bugs.webkit.org/show_bug.cgi?id=39004

Reviewed by Dirk Schulze.

  • platform/mac/svg/filters/feLighting-crash-expected.checksum: Added.
  • platform/mac/svg/filters/feLighting-crash-expected.png: Added.
  • platform/mac/svg/filters/feLighting-crash-expected.txt: Added.
  • platform/qt/svg/filters/feLighting-crash-expected.txt: Added.
  • svg/filters/feLighting-crash.svg: Added.
06:43 Changeset [59831] by eric@webkit.org

2010-05-20 Luiz Agostini <luiz.agostini@openbossa.org>

Reviewed by Kenneth Rohde Christiansen.

[Qt] Skipping popup focus test for maemo
https://bugs.webkit.org/show_bug.cgi?id=39314

Skipping popup focus test for maemo in qwebframe auto test.

The test method tst_QWebFrame::popupFocus() was testing popup focus AND input
field focus. The input field focus has been removed from the method popupFocus()
and a new test method named inputFieldFocus() has been added. Finally the test
method popupFocus() has been skipped for maemo.

  • tests/qwebframe/tst_qwebframe.cpp:
06:02 Changeset [59830] by cevans@google.com

Unreviewed.

Marking myself as a committer.

04:48 Changeset [59829] by cjerdonek@webkit.org

2010-05-20 Chris Jerdonek <cjerdonek@webkit.org>

Reviewed by Eric Seidel.

Modified FrameLoader::urlSelected() to accept a KURL instead of a
ResourceRequest.

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

Since ResourceRequest has non-explicit single-parameter constructors for
String and KURL, urlSelected() previously accepted any of String, KURL,
and ResourceRequest. This revision changes urlSelected() to accept only
a KURL to make the API tighter and easier to refactor.

No new functionality, so no new tests.

  • loader/FrameLoader.cpp: (WebCore::FrameLoader::urlSelected):
    • Changed the public overload to accept a KURL instead of a ResourceRequest.
  • loader/FrameLoader.h:
    • Changed the public overload to accept a KURL instead of a ResourceRequest.
  • wml/WMLAElement.cpp: (WebCore::WMLAElement::defaultEventHandler):
    • Updated the call to urlSelected().

2010-05-20 Chris Jerdonek <cjerdonek@webkit.org>

Reviewed by Eric Seidel.

Modified FrameLoader::urlSelected() to accept a KURL instead of a
ResourceRequest.

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

Since ResourceRequest has non-explicit single-parameter constructors for
String and KURL, urlSelected() previously accepted any of String, KURL,
and ResourceRequest. This revision changes urlSelected() to accept only
a KURL to make the API tighter and easier to refactor.

  • WebCoreSupport/WebContextMenuClient.cpp: (WebContextMenuClient::searchWithGoogle):
    • Updated the call to urlSelected().
04:07 Changeset [59828] by morrita@google.com

2010-05-20 MORITA Hajime <morrita@google.com>

Reviewed by Kent Tamura.

2x execCommand ReadAV@NULL
https://bugs.webkit.org/show_bug.cgi?id=35791

This test passes if it doesn't crash.

  • editing/execCommand/35791-expected.txt: Added.
  • editing/execCommand/35791.html: Added.

2010-05-20 MORITA Hajime <morrita@google.com>

Reviewed by Kent Tamura.

2x execCommand ReadAV@NULL
https://bugs.webkit.org/show_bug.cgi?id=35791

In applyBlockStyle(), a node which is referred from
nextParagraphStart sometimes removed from the document and goes
orphan, and that causes an assertion failed. This is because
moveParagraphs() replaces the node with a new one with some new
styles applied. So we re-compute nextParagraphStart in that case.

Test: editing/execCommand/35791.html

  • dom/Position.h: (WebCore::Position::isOrphan):
  • editing/ApplyStyleCommand.cpp: (WebCore::ApplyStyleCommand::applyBlockStyle):
  • editing/VisiblePosition.h: (WebCore::VisiblePosition::isOrphan):
04:04 Changeset [59827] by hausmann@webkit.org

[Qt] Weekly binary builds on Mac OS X don't work when launched in the Finder
https://bugs.webkit.org/show_bug.cgi?id=37273

Reviewed by Tor Arne Vestbo.

  • QtTestBrowser/QtTestBrowser.pro: Build QtLauncher as bundle in package builds
02:06 Changeset [59826] by steveblock@google.com

2010-05-20 Steve Block <steveblock@google.com>

Reviewed by Eric Seidel.

PluginView contains JSC-specific code
https://bugs.webkit.org/show_bug.cgi?id=38907

Build fix only, no new tests.

  • plugins/PluginView.cpp: (WebCore::PluginView::start): (WebCore::PluginView::stop): (WebCore::PluginView::performRequest):
  • plugins/PluginView.h:
01:44 Changeset [59825] by philn@webkit.org

2010-05-17 Philippe Normand <pnormand@igalia.com>

Reviewed by Eric Seidel.

[GStreamer] enable gst support if USE_GSTREAMER macro is defined
https://bugs.webkit.org/show_bug.cgi?id=39205

Include gstreamer private player in the build when the
USE_GSTREAMER macro is enabled.

  • platform/graphics/MediaPlayer.cpp: (WebCore::installedMediaEngines):
01:28 Changeset [59824] by ukai@chromium.org

Unreviewed fix for websocket test failures.

  • Scripts/new-run-webkit-websocketserver: options is named parameter for factory.get().
01:23 QtWebKitTriageRoster edited by hausmann@webkit.org
(diff)
00:45 Changeset [59823] by ukai@chromium.org

2010-05-20 Fumitoshi Ukai <ukai@chromium.org>

Reviewed by Shinichiro Hamaji.

Chromium: Add --chromium option to new-run-webkit-websocketserver
https://bugs.webkit.org/show_bug.cgi?id=37664

Missed to pass options to factory.get() in r59595

  • Scripts/new-run-webkit-websocketserver: Pass options to factory.get().

05/19/10:

22:59 Changeset [59822] by eric@webkit.org

2010-05-19 Vangelis Kokkevis <vangelis@chromium.org>

Reviewed by Darin Fisher.

Implementing hardware accelerated compositing of layers for Chromium.
Completely removed the existing software compositing path to replace
it with code implemented using OpenGL.
https://bugs.webkit.org/show_bug.cgi?id=38783

Tests: Covered by existing compositing tests.

  • WebCore.gyp/WebCore.gyp:
  • platform/graphics/chromium/GraphicsLayerChromium.cpp: (WebCore::GraphicsLayerChromium::~GraphicsLayerChromium): (WebCore::GraphicsLayerChromium::updateLayerDrawsContent): (WebCore::GraphicsLayerChromium::updateContentsRect):
  • platform/graphics/chromium/LayerChromium.cpp: (WebCore::LayerChromium::LayerChromium): (WebCore::LayerChromium::~LayerChromium): (WebCore::LayerChromium::updateGraphicsContext): (WebCore::LayerChromium::drawsContentUpdated): (WebCore::LayerChromium::updateContents): (WebCore::LayerChromium::setContents): (WebCore::LayerChromium::setBackingStoreSize): (WebCore::LayerChromium::setBounds): (WebCore::LayerChromium::setNeedsDisplay):
  • platform/graphics/chromium/LayerChromium.h: (WebCore::LayerChromium::contentsDirty): (WebCore::LayerChromium::drawsContent):
  • platform/graphics/chromium/LayerRendererChromium.cpp: (WebCore::): (WebCore::checkGLError): (WebCore::loadShader): (WebCore::loadShaderProgram): (WebCore::toGLMatrix): (WebCore::orthoMatrix): (WebCore::createLayerTexture): (WebCore::LayerRendererChromium::create): (WebCore::LayerRendererChromium::LayerRendererChromium): (WebCore::LayerRendererChromium::~LayerRendererChromium): (WebCore::LayerRendererChromium::drawTexturedQuad): (WebCore::LayerRendererChromium::drawLayers): (WebCore::LayerRendererChromium::getTextureId): (WebCore::LayerRendererChromium::assignTextureForLayer): (WebCore::LayerRendererChromium::freeLayerTexture): (WebCore::LayerRendererChromium::drawDebugBorder): (WebCore::LayerRendererChromium::isLayerVisible): (WebCore::LayerRendererChromium::compositeLayersRecursive): (WebCore::LayerRendererChromium::makeContextCurrent): (WebCore::LayerRendererChromium::initGL): (WebCore::LayerRendererChromium::bindCommonAttribLocation): (WebCore::LayerRendererChromium::initializeSharedGLObjects):
  • platform/graphics/chromium/LayerRendererChromium.h: (WebCore::LayerRendererChromium::):

2010-05-19 Vangelis Kokkevis <vangelis@chromium.org>

Reviewed by Darin Fisher.

Modifying WebViewImpl to support new hardware compositing for
LayerChromium layers.
https://bugs.webkit.org/show_bug.cgi?id=38783

  • src/WebViewImpl.cpp: (WebKit::WebViewImpl::paint): (WebKit::WebViewImpl::setIsAcceleratedCompositingActive): (WebKit::WebViewImpl::updateRootLayerContents): (WebKit::WebViewImpl::setRootLayerNeedsDisplay):
22:38 Changeset [59821] by eric@webkit.org

2010-05-19 Eric Seidel <eric@webkit.org>

Reviewed by Adam Roben.

WinEWS should build Debug instead of Release
https://bugs.webkit.org/show_bug.cgi?id=39242

This is a workaround for
https://bugs.webkit.org/show_bug.cgi?id=39197
Adam Roben and Brian Weinstein believe this may
also make building faster since Debug builds
take less time to link.

  • Scripts/webkitpy/tool/commands/earlywarningsystem.py:
22:36 Changeset [59820] by barraclough@apple.com

Errk! rename op_constructor_ret as requested in review of Bug 39399.

Reviewed by Geoff Garen.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::dump):

  • bytecode/Opcode.h:
  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::emitReturn):

  • interpreter/Interpreter.cpp:

(JSC::Interpreter::privateExecute):

  • jit/JIT.cpp:

(JSC::JIT::privateCompileMainPass):

  • jit/JIT.h:
  • jit/JITCall.cpp:

(JSC::JIT::emit_op_ret_object_or_this):

  • jit/JITOpcodes.cpp:

(JSC::JIT::emit_op_ret_object_or_this):

22:35 Changeset [59819] by tony@chromium.org

2010-05-19 Tony Chang <tony@chromium.org>

Reviewed by Kent Tamura.

[chromium] disable spelling suggestions if spellcheck=false
https://bugs.webkit.org/show_bug.cgi?id=39402

This is the Chromium fix for bug 25639 that was fixed in the
other ports in r59585.

  • src/ContextMenuClientImpl.cpp: (WebKit::ContextMenuClientImpl::getCustomMenuFromDefaultItems):
22:02 Changeset [59818] by eric@webkit.org

2010-05-19 Mario Sanchez Prada <msanchez@igalia.com>

Reviewed by Darin Adler.

Misleading variable name in a11y test
https://bugs.webkit.org/show_bug.cgi?id=38465

Use a more appropriate variable name for the return
value of accessibilityController.rootElement

  • accessibility/aria-controls-with-tabs.html:
21:57 Changeset [59817] by barraclough@apple.com

Bug 39399 - Move responsibility for verifying constructors return objects from the caller to the callee.

Reviewed by Geoff Garen.

This is a necessary step to move object creation from caller to callee.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::dump):

  • bytecode/Opcode.h:
  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::BytecodeGenerator):
(JSC::BytecodeGenerator::emitReturn):
(JSC::BytecodeGenerator::emitConstruct):

  • bytecompiler/BytecodeGenerator.h:

(JSC::BytecodeGenerator::isConstructor):

  • bytecompiler/NodesCodegen.cpp:

(JSC::FunctionBodyNode::emitBytecode):

  • interpreter/Interpreter.cpp:

(JSC::Interpreter::privateExecute):

  • jit/JIT.cpp:

(JSC::JIT::privateCompileMainPass):
(JSC::JIT::privateCompileSlowCases):

  • jit/JIT.h:
  • jit/JITCall.cpp:

(JSC::JIT::emit_op_constructor_ret):

  • jit/JITOpcodes.cpp:

(JSC::JIT::emit_op_constructor_ret):

21:37 Changeset [59816] by eric@webkit.org

2010-05-19 Andrey Kosyakov <caseq@chromium.org>

Reviewed by Timothy Hatcher.

Maintain focus on help screen while it's active.
https://bugs.webkit.org/show_bug.cgi?id=39237

21:18 Changeset [59815] by eric@webkit.org

2010-05-19 Jedrzej Nowacki <jedrzej.nowacki@nokia.com>

Reviewed by Kenneth Rohde Christiansen.

Crash fix in the HistoryController.

The problem was casued by a documented feature of the QWebFrame::setHtml().
The method doesn't affect a browsing history (doesn't create a HistoryItem instance), so
m_currentItem and m_previousItem are not set.

A null check was added.

[Qt] The QWebPage crashes on history.pushState().
https://bugs.webkit.org/show_bug.cgi?id=38840

  • loader/HistoryController.cpp: (WebCore::HistoryController::pushState): (WebCore::HistoryController::replaceState):

2010-05-19 Jedrzej Nowacki <jedrzej.nowacki@nokia.com>

Reviewed by Kenneth Rohde Christiansen.

Crash fix in the HistoryController.

The problem was casued by a documented feature of the QWebFrame::setHtml().
The method doesn't affect a browsing history (doesn't create a HistoryItem instance), so
m_currentItem and m_previousItem are not set.

A null check was added.

[Qt] The QWebPage crashes on history.pushState().
https://bugs.webkit.org/show_bug.cgi?id=38840

  • tests/qwebhistory/tst_qwebhistory.cpp: (tst_QWebHistory::popPushState_data): (tst_QWebHistory::popPushState):
20:24 Changeset [59814] by darin@chromium.org

2010-05-19 Darin Fisher <darin@chromium.org>

Revert r59790 due to failing Chromium npruntime tests.

  • bindings/v8/NPV8Object.cpp: (v8ObjectToNPObject): (npCreateV8ScriptObject): (_NPN_Invoke): (_NPN_InvokeDefault): (_NPN_Evaluate): (_NPN_EvaluateHelper): (_NPN_GetProperty): (_NPN_SetProperty): (_NPN_RemoveProperty): (_NPN_HasProperty): (_NPN_HasMethod): (_NPN_SetException): (_NPN_Enumerate): (_NPN_Construct):
  • bindings/v8/NPV8Object.h:
  • bindings/v8/V8NPObject.cpp: (forgetV8ObjectForNPObject):
  • bindings/v8/V8NPObject.h:
  • bindings/v8/V8NPUtils.cpp: (convertV8ObjectToNPVariant): (getStringIdentifier):
  • bindings/v8/V8NPUtils.h:
  • bindings/v8/npruntime.cpp:
20:22 Changeset [59813] by barraclough@apple.com

Fix windows build II.

Reviewed by NOBODY (build fix).

20:12 Changeset [59812] by barraclough@apple.com

Fix windows build.

Reviewed by NOBODY (build fix).

19:38 Changeset [59811] by barraclough@apple.com

JavaScriptCore: Bug 39393 - JSFunction need not be a subclass of InternalFunction.

Reviewed by Oliver Hunt.

re-landing r59800.

(JSC::Interpreter::retrieveCaller):
(JSC::Interpreter::findFunctionCallFrame):

  • interpreter/Interpreter.h:
  • profiler/Profiler.cpp:

(JSC::Profiler::createCallIdentifier):

  • runtime/FunctionPrototype.cpp:

(JSC::functionProtoFuncToString):

  • runtime/JSFunction.cpp:

(JSC::):
(JSC::JSFunction::JSFunction):
(JSC::JSFunction::name):
(JSC::JSFunction::displayName):
(JSC::JSFunction::calculatedDisplayName):

  • runtime/JSFunction.h:
  • runtime/JSObject.cpp:

(JSC::JSObject::putDirectFunction):
(JSC::JSObject::putDirectFunctionWithoutTransition):

  • runtime/JSObject.h:
  • runtime/Lookup.cpp:

(JSC::setUpStaticFunctionSlot):

WebCore: Rubber Stamped by Sam Weinig.

JSFunctions are no longer a subclass of InternalFunction.

  • bindings/js/ScriptCallStack.cpp:

(WebCore::ScriptCallStack::ScriptCallStack):
(WebCore::ScriptCallStack::initialize):

  • bindings/js/ScriptCallStack.h:
19:35 Changeset [59810] by mrowe@apple.com

Merge r59719.

19:35 Changeset [59809] by mrowe@apple.com

Merge r59674.

19:35 Changeset [59808] by mrowe@apple.com

Merge r59684.

19:35 Changeset [59807] by mrowe@apple.com

Merge r59683.

19:35 Changeset [59806] by mrowe@apple.com

Merge r59682.

19:35 Changeset [59805] by mrowe@apple.com

Merge r59724.

19:35 Changeset [59804] by mrowe@apple.com

Merge r59716.

19:34 Changeset [59803] by mrowe@apple.com

Merge r59680.

19:34 Changeset [59802] by mrowe@apple.com

Merge r59678.

18:15 Changeset [59801] by barraclough@apple.com

Reverting r59800, this b0rked stuff.

Reviewed by NOBODY (build fix).

(JSC::Interpreter::retrieveCaller):
(JSC::Interpreter::findFunctionCallFrame):

  • interpreter/Interpreter.h:
  • profiler/Profiler.cpp:

(JSC::Profiler::createCallIdentifier):

  • runtime/FunctionPrototype.cpp:

(JSC::functionProtoFuncToString):

  • runtime/JSFunction.cpp:

(JSC::):
(JSC::JSFunction::JSFunction):

  • runtime/JSFunction.h:
  • runtime/JSObject.cpp:
  • runtime/JSObject.h:
  • runtime/Lookup.cpp:

(JSC::setUpStaticFunctionSlot):

18:01 Changeset [59800] by barraclough@apple.com

Bug 39393 - JSFunction need not be a subclass of InternalFunction.

Reviewed by Oliver Hunt.

This may prevent us from introducing a more useful parent class to
JSFunction, e.g. a JSObject that holds an executable, which could
also reference an eval or program executable.

(JSC::Interpreter::retrieveCaller):
(JSC::Interpreter::findFunctionCallFrame):

  • interpreter/Interpreter.h:
  • profiler/Profiler.cpp:

(JSC::Profiler::createCallIdentifier):

  • runtime/FunctionPrototype.cpp:

(JSC::functionProtoFuncToString):

  • runtime/JSFunction.cpp:

(JSC::):
(JSC::JSFunction::JSFunction):
(JSC::JSFunction::name):
(JSC::JSFunction::displayName):
(JSC::JSFunction::calculatedDisplayName):

  • runtime/JSFunction.h:
  • runtime/JSObject.cpp:

(JSC::JSObject::putDirectFunction):
(JSC::JSObject::putDirectFunctionWithoutTransition):

  • runtime/JSObject.h:
  • runtime/Lookup.cpp:

(JSC::setUpStaticFunctionSlot):

17:54 Changeset [59799] by victorw@chromium.org

2010-05-19 Victor Wang <victorw@chromium.org>

Unreviewed. Update Chromium test expectations.

  • platform/chromium-linux/fast/multicol/layers-split-across-columns-expected.checksum: Added.
  • platform/chromium-linux/fast/multicol/layers-split-across-columns-expected.png: Added.
  • platform/chromium-mac/fast/multicol/layers-in-multicol-expected.checksum:
  • platform/chromium-mac/fast/multicol/layers-in-multicol-expected.png: Removed.
  • platform/chromium-mac/fast/multicol/layers-split-across-columns-expected.checksum: Added.
  • platform/chromium-win/fast/multicol/layers-in-multicol-expected.txt:
  • platform/chromium-win/fast/multicol/layers-split-across-columns-expected.checksum: Added.
  • platform/chromium-win/fast/multicol/layers-split-across-columns-expected.png: Added.
  • platform/chromium-win/fast/multicol/layers-split-across-columns-expected.txt: Added.
  • platform/chromium-win/fast/multicol/nested-columns-expected.txt:
17:30 Changeset [59798] by oliver@apple.com

2010-05-19 Oliver Hunt <oliver@apple.com>

Reviewed by Geoffrey Garen.

emitJumpIfNotJSCell should special case constant immediate values
https://bugs.webkit.org/show_bug.cgi?id=39392
<rdar://problem/8001324>

Make emitJumpSlowCaseIfNotJSCell special case constant immediate
values, in addition to the immediate JSCell optimisation.

Also add assertions to make sure no one else produces code that
attempts to load constants from the register file.

  • jit/JITInlineMethods.h: (JSC::JIT::emitJumpSlowCaseIfNotJSCell):
  • jit/JSInterfaceJIT.h: (JSC::JSInterfaceJIT::emitJumpIfNotJSCell): (JSC::JSInterfaceJIT::emitLoadInt32): (JSC::JSInterfaceJIT::tagFor): (JSC::JSInterfaceJIT::payloadFor): (JSC::JSInterfaceJIT::emitLoadDouble): (JSC::JSInterfaceJIT::addressFor):
  • jit/ThunkGenerators.cpp:

2010-05-19 Oliver Hunt <oliver@apple.com>

Reviewed by Geoffrey Garen.

emitJumpIfNotJSCell should special case constant immediate values
https://bugs.webkit.org/show_bug.cgi?id=39392

Add tests for immediate constants being used where cells are expected.

  • fast/js/immediate-constant-instead-of-cell-expected.txt: Added.
  • fast/js/immediate-constant-instead-of-cell.html: Added.
  • fast/js/script-tests/immediate-constant-instead-of-cell.js: Added. ():
17:23 Changeset [59797] by jianli@chromium.org

Refactor text encoding detection logic in FileReader.
https://bugs.webkit.org/show_bug.cgi?id=39131

Reviewed by Alexey Proskuryakov.

WebCore:

Changed FileReader::convertToText to call TextResourceDecoder::decode to
detect the encoding from BOM and decode the text. Though the File API
spec says that the supplied encoding should be used if it is valid, we
choose to ignore this requirement in order to be consistent with how
WebKit decodes the web content: always has the BOM override the provided
encoding.

  • html/FileReader.cpp:

(WebCore::FileReader::convertToText):

  • html/FileReader.h:

LayoutTests:

Add more test coverage for FileReader.

  • fast/files/file-reader-expected.txt:
  • fast/files/file-reader.html:
  • fast/files/resources/binary-file: Added.
17:19 Changeset [59796] by mrobinson@webkit.org

Not reviewed.

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

Disabling geolocation tests until blockers are fixed.

  • platform/gtk/Skipped: Skipping geolocation tests for now.
16:59 Changeset [59795] by yaar@chromium.org

2010-05-19 Abhishek Arya <inferno@chromium.org>

Reviewed by David Hyatt.

Check that the node is a text node before doing a static cast
to a Text class pointer.
https://bugs.webkit.org/show_bug.cgi?id=38626

Test: fast/text/text-transform-nontext-node-crash.xhtml

  • rendering/RenderText.cpp: (WebCore::RenderText::originalText):
  • rendering/RenderTextFragment.cpp: (WebCore::RenderTextFragment::originalText): (WebCore::RenderTextFragment::previousCharacter):

2010-05-19 Abhishek Arya <inferno@chromium.org>

Reviewed by David Hyatt.

Tests that text transformation applied to a non-text node
does not result in crash.
https://bugs.webkit.org/show_bug.cgi?id=38626

  • fast/text/text-transform-nontext-node-crash-expected.txt: Added.
  • fast/text/text-transform-nontext-node-crash.xhtml: Added.
16:52 Changeset [59794] by yaar@chromium.org

2010-05-19 Yaar Schnitman <yaar@chromium.org>

Reviewed by Eric Seidel.

Fixed warnings by JSC overloads changes. Also updated the binding reference files for JSC.
https://bugs.webkit.org/show_bug.cgi?id=39390

  • bindings/scripts/CodeGeneratorJS.pm:
  • bindings/scripts/test/JS/JSTestInterface.cpp: (WebCore::):
  • bindings/scripts/test/JS/JSTestObj.cpp: (WebCore::):
16:39 Changeset [59793] by andersca@apple.com

<rdar://problem/8004528>
REGRESSION: Coordinate system for Core Animation NPAPI plug-ins is flipped with accelerated compositing turned on

Reviewed by Kevin Decker and Simon Fraser.

When needed, create a new CALayer and set it's geometry to be flipped. Add the plug-in layer as a sublayer and then return
the newly created layer.

  • Plugins/Hosted/WebHostedNetscapePluginView.mm:

(-[WebHostedNetscapePluginView createPlugin]):

  • Plugins/WebNetscapePluginView.mm:

(-[WebNetscapePluginView createPlugin]):

16:28 Changeset [59792] by mrobinson@webkit.org

2010-05-19 Martin Robinson <mrobinson@igalia.com>

Not reviewed.

Updated multi-column test baselines.

  • platform/gtk/fast/multicol/layers-in-multicol-expected.txt: Updated.
  • platform/gtk/fast/multicol/layers-split-across-columns-expected.txt: Added.
  • platform/gtk/fast/multicol/nested-columns-expected.txt: Updated.
16:24 Changeset [59791] by ggaren@apple.com

2010-05-19 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.

Slight refactoring to CodeBlock bytecode access
https://bugs.webkit.org/show_bug.cgi?id=39384

  • bytecode/CodeBlock.h: (JSC::CodeBlock::bytecodeOffset):
  • interpreter/CallFrame.h: (JSC::ExecState::returnPC):
  • interpreter/Interpreter.cpp: (JSC::Interpreter::unwindCallFrame): (JSC::Interpreter::retrieveLastCaller): Moved bytecode access into a CodeBlock helper function. Changed CallFrame to accurately represent how the returnPC is stored in JIT vs Interpreter.
15:59 Changeset [59790] by darin@chromium.org

2010-05-19 Darin Fisher <darin@chromium.org>

Reviewed by Nate Chapin.

[chromium] Provide a way to catch exceptions thrown while interacting
with a NPObject via WebBindings methods.
https://bugs.webkit.org/show_bug.cgi?id=39378

This change also includes a small bit of cleanup in V8NPObject and
friends. I moved code into the WebCore namespace where appropriate.


In _NPN_Invoke, I also moved the call to _NPN_Evaluate outside of the
context scope. I did this to avoid having nested ExceptionCatcher
objects, which is not strictly necessary, but it seemed cleaner.
_NPN_Evaluate already takes care of creating a context scope.

  • bindings/v8/NPV8Object.cpp: (WebCore::v8ObjectToNPObject): (WebCore::npCreateV8ScriptObject): (_NPN_Invoke): (_NPN_InvokeDefault): (_NPN_Evaluate): (_NPN_EvaluateHelper): (_NPN_GetProperty): (_NPN_SetProperty): (_NPN_RemoveProperty): (_NPN_HasProperty): (_NPN_HasMethod): (_NPN_SetException): (_NPN_Enumerate): (_NPN_Construct):
  • bindings/v8/NPV8Object.h:
  • bindings/v8/V8NPObject.cpp:
  • bindings/v8/V8NPObject.h:
  • bindings/v8/V8NPUtils.cpp: (WebCore::convertV8ObjectToNPVariant): (WebCore::pushExceptionHandler): (WebCore::popExceptionHandler): (WebCore::ExceptionCatcher::~ExceptionCatcher):
  • bindings/v8/V8NPUtils.h:
  • bindings/v8/npruntime.cpp:
15:43 Changeset [59789] by dpranke@chromium.org

2010-05-19 Dirk Pranke <dpranke@chromium.org>

Unreviewed, build fix.

  • DumpRenderTree/chromium/NotificationPresenter.cpp: (NotificationPresenter::show):
15:43 Changeset [59788] by yaar@chromium.org

2010-05-19 Yaar Schnitman <yaar@chromium.org>

Unreviewed, rolling out r59769.
http://trac.webkit.org/changeset/59769
https://bugs.webkit.org/show_bug.cgi?id=37815

Broke GTK again

  • Android.jscbindings.mk:
  • CMakeLists.txt:
  • GNUmakefile.am:
  • WebCore.gypi:
  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSBindingsAllInOne.cpp:
  • bindings/js/JSCallbackData.cpp: (WebCore::JSCallbackData::invokeCallback):
  • bindings/js/JSEventListener.cpp: (WebCore::JSEventListener::handleEvent):
  • bindings/js/JSInjectedScriptHostCustom.cpp: (WebCore::InjectedScriptHost::createInjectedScript):
  • bindings/js/JSMainThreadExecState.cpp: Removed.
  • bindings/js/JSMainThreadExecState.h: Removed.
  • bindings/js/ScheduledAction.cpp: (WebCore::ScheduledAction::executeFunctionInContext): (WebCore::ScheduledAction::execute):
  • bindings/js/ScheduledAction.h:
  • bindings/js/ScriptController.cpp: (WebCore::ScriptController::evaluateInWorld):
  • bindings/js/ScriptController.h:
  • bindings/js/ScriptFunctionCall.cpp: (WebCore::ScriptFunctionCall::call):
  • bindings/objc/ObjCEventListener.mm:
  • bindings/objc/WebScriptObject.mm: (-[WebScriptObject callWebScriptMethod:withArguments:]): (-[WebScriptObject evaluateWebScript:]):
  • bindings/scripts/CodeGeneratorObjC.pm:
  • bindings/scripts/test/ObjC/DOMTestCallback.mm: (-[DOMTestCallback callbackWithClass1Param:]): (-[DOMTestCallback callbackWithClass2Param:strArg:]): (-[DOMTestCallback callbackWithNonBoolReturnType:]): (-[DOMTestCallback customCallback:class6Param:]):
  • bindings/scripts/test/ObjC/DOMTestInterface.mm:
  • bindings/scripts/test/ObjC/DOMTestObj.mm: (-[DOMTestObj readOnlyIntAttr]): (-[DOMTestObj readOnlyStringAttr]): (-[DOMTestObj readOnlyTestObjAttr]): (-[DOMTestObj intAttr]): (-[DOMTestObj setIntAttr:]): (-[DOMTestObj longLongAttr]): (-[DOMTestObj setLongLongAttr:]): (-[DOMTestObj unsignedLongLongAttr]): (-[DOMTestObj setUnsignedLongLongAttr:]): (-[DOMTestObj stringAttr]): (-[DOMTestObj setStringAttr:]): (-[DOMTestObj testObjAttr]): (-[DOMTestObj setTestObjAttr:]): (-[DOMTestObj attrWithException]): (-[DOMTestObj setAttrWithException:]): (-[DOMTestObj attrWithSetterException]): (-[DOMTestObj setAttrWithSetterException:]): (-[DOMTestObj attrWithGetterException]): (-[DOMTestObj setAttrWithGetterException:]): (-[DOMTestObj customAttr]): (-[DOMTestObj setCustomAttr:]): (-[DOMTestObj scriptStringAttr]): (-[DOMTestObj voidMethod]): (-[DOMTestObj voidMethodWithArgs:strArg:objArg:]): (-[DOMTestObj intMethod]): (-[DOMTestObj intMethodWithArgs:strArg:objArg:]): (-[DOMTestObj objMethod]): (-[DOMTestObj objMethodWithArgs:strArg:objArg:]): (-[DOMTestObj methodThatRequiresAllArgs:objArg:]): (-[DOMTestObj methodThatRequiresAllArgsAndThrows:objArg:]): (-[DOMTestObj serializedValue:]): (-[DOMTestObj methodWithException]): (-[DOMTestObj customMethod]): (-[DOMTestObj customMethodWithArgs:strArg:objArg:]): (-[DOMTestObj customArgsAndException:]): (-[DOMTestObj addEventListener:listener:useCapture:]): (-[DOMTestObj removeEventListener:listener:useCapture:]): (-[DOMTestObj withDynamicFrame]): (-[DOMTestObj withDynamicFrameAndArg:]): (-[DOMTestObj withDynamicFrameAndOptionalArg:optionalArg:]): (-[DOMTestObj withDynamicFrameAndUserGesture:]): (-[DOMTestObj withDynamicFrameAndUserGestureASAD:optionalArg:]): (-[DOMTestObj withScriptStateVoid]): (-[DOMTestObj withScriptStateObj]): (-[DOMTestObj withScriptStateVoidException]): (-[DOMTestObj withScriptStateObjException]): (-[DOMTestObj methodWithOptionalArg:]): (-[DOMTestObj methodWithNonOptionalArgAndOptionalArg:opt:]): (-[DOMTestObj methodWithNonOptionalArgAndTwoOptionalArgs:opt1:opt2:]):
  • bindings/v8/ScriptController.cpp:
  • bindings/v8/ScriptController.h:
  • html/HTMLFrameElementBase.cpp: (WebCore::HTMLFrameElementBase::isURLAllowed):

2010-05-19 Yaar Schnitman <yaar@chromium.org>

Unreviewed, rolling out r59769.
http://trac.webkit.org/changeset/59769
https://bugs.webkit.org/show_bug.cgi?id=37815

Broke GTK again

  • http/tests/security/xss-DENIED-iframe-src-alias-expected.txt:
  • http/tests/security/xss-DENIED-iframe-src-alias.html:
15:36 Changeset [59787] by dpranke@chromium.org

2010-05-19 Dirk Pranke <dpranke@chromium.org>

Try again to roll out r58765

  • fast/notifications/notifications-replace-expected.txt: Removed.
  • fast/notifications/notifications-replace.html: Removed.
  • fast/notifications/notifications-rtl-expected.txt: Removed.
  • fast/notifications/notifications-rtl.html: Removed.

2010-05-19 Dirk Pranke <dpranke@chromium.org>

Try again to roll out r58675.

  • notifications/Notification.h:
  • notifications/Notification.idl:

2010-05-19 Dirk Pranke <dpranke@chromium.org>

Try again to roll out r58765.

  • public/WebNotification.h:
  • src/WebNotification.cpp:
14:53 Changeset [59786] by enrica@apple.com

WebCore: REGRESSION (r59385) crash destroying inline renderers
https://bugs.webkit.org/show_bug.cgi?id=39143
<rdar://problem/8003662>

Reviewed by Dave Hyatt.

The goal of r59385 was to make sure that the layout of block after all its children had been removed produced the identical result
as the one of a newly created empty block. In order to do so, we had to make sure that the m_inlineChildren flag was reset to true when
the block had no children (as it is upon creation).
I discovered that, by doing that for anonymous blocks it leads removeChild to conclude that the anonymous children can be removed,
without considering that the anonymous block could be part of a continuation chain. For this reason, when RenderInline::destroy()
tries to remove the continuations we are effectively deleting a renderer that had been deleted already.

Test: fast/inline-block/anonymous-block-crash.html

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::layoutBlock): resetting the flag m_inlineChildren only for non anonymous blocks otherwise we incurr in
a double deletion of the renderer that causes the crash.

LayoutTests: REGRESSION (r59385) crash destroying inline renderers
https://bugs.webkit.org/show_bug.cgi?id=39143
<rdar://problem/8003662>

Reviewed by Dave Hyatt.

  • fast/inline-block/anonymous-block-crash-expected.txt: Added.
  • fast/inline-block/anonymous-block-crash.html: Added.
14:30 Changeset [59785] by dpranke@chromium.org

2010-05-19 Sheriff Bot <webkit.review.bot@gmail.com>

Unreviewed, rolling out r59782.
http://trac.webkit.org/changeset/59782
https://bugs.webkit.org/show_bug.cgi?id=39379

broke DRT build (Requested by dpranke on #webkit).

  • fast/notifications/notifications-replace-expected.txt: Added.
  • fast/notifications/notifications-replace.html: Added.
  • fast/notifications/notifications-rtl-expected.txt: Added.
  • fast/notifications/notifications-rtl.html: Added.

2010-05-19 Sheriff Bot <webkit.review.bot@gmail.com>

Unreviewed, rolling out r59782.
http://trac.webkit.org/changeset/59782
https://bugs.webkit.org/show_bug.cgi?id=39379

broke DRT build (Requested by dpranke on #webkit).

  • notifications/Notification.h: (WebCore::Notification::dir): (WebCore::Notification::setDir): (WebCore::Notification::replaceId): (WebCore::Notification::setReplaceId):
  • notifications/Notification.idl:

2010-05-19 Sheriff Bot <webkit.review.bot@gmail.com>

Unreviewed, rolling out r59782.
http://trac.webkit.org/changeset/59782
https://bugs.webkit.org/show_bug.cgi?id=39379

broke DRT build (Requested by dpranke on #webkit).

  • public/WebNotification.h:
  • src/WebNotification.cpp: (WebKit::WebNotification::dir): (WebKit::WebNotification::replaceId):
14:03 Changeset [59784] by hyatt@apple.com

https://bugs.webkit.org/show_bug.cgi?id=21049, opacity and position:relative fail in multi-column layouts.

Reviewed by Oliver Hunt.

Make layers split painting across columns just as normal flow content does. This is actually very
challenging, since intermediate multicol layers can exist between a child that has to be split and
its enclosing stacking context.

In order to properly paginate layers, a bit is set on all pagination roots, i.e., layers that will get
split and thus split any descendant layers that they are also responsible for painting. For a paginated
root, we walk up the layer hierarchy and collect all intermediate multicol blocks between the child
and the enclosing stacking context.

We then recur from the outside in, applying clipping and translation as we break up the layer into strips.

Composited layers remain unsplittable and have a hacked offset still in order to be placed in the right
column.

Painting and hit testing of columns has been simplified in all of the functions to use the x position of
the column rect instead of trying to increment an x offset by adding in widths and column gaps. This
makes those functions directionality-independent (and the LTR/RTL code paths are now the same).

Fix repainting of columns as well to make sure rects are split across columns only after relative position
and transforms have been applied.

Added fast/multicol/layers-split-across-columns.html

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::paintColumnContents):
(WebCore::RenderBlock::adjustRectForColumns):
(WebCore::RenderBlock::adjustForColumns):

  • rendering/RenderBlock.h:
  • rendering/RenderBox.cpp:

(WebCore::RenderBox::computeRectForRepaint):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::RenderLayer):
(WebCore::RenderLayer::updateLayerPositions):
(WebCore::RenderLayer::updatePagination):
(WebCore::RenderLayer::updateLayerPosition):
(WebCore::RenderLayer::paintLayer):
(WebCore::RenderLayer::paintList):
(WebCore::RenderLayer::paintPaginatedChildLayer):
(WebCore::RenderLayer::paintChildLayerIntoColumns):
(WebCore::RenderLayer::hitTestLayer):
(WebCore::RenderLayer::hitTestList):
(WebCore::RenderLayer::hitTestPaginatedChildLayer):
(WebCore::RenderLayer::hitTestChildLayerColumns):

  • rendering/RenderLayer.h:

(WebCore::RenderLayer::):
(WebCore::RenderLayer::isPaginated):

13:54 Changeset [59783] by eric@webkit.org

2010-05-19 Sheriff Bot <webkit.review.bot@gmail.com>

Unreviewed, rolling out r59240.
http://trac.webkit.org/changeset/59240
https://bugs.webkit.org/show_bug.cgi?id=39377

"Might cause crashes in GTK+ bots" (Requested by xan_ on
#webkit).

  • WebCoreSupport/ContextMenuClientGtk.cpp: (WebKit::inputMethodsMenuItem):
  • WebCoreSupport/EditorClientGtk.cpp: (WebKit::EditorClient::setInputMethodState): (WebKit::EditorClient::respondToChangedSelection): (WebKit::EditorClient::handleInputMethodKeydown): (WebKit::EditorClient::EditorClient): (WebKit::EditorClient::~EditorClient):
  • WebCoreSupport/FrameLoaderClientGtk.cpp: (WebKit::postCommitFrameViewSetup):
  • webkit/webkitprivate.h:
  • webkit/webkitwebview.cpp: (destroy_menu_cb): (webkit_web_view_forward_context_menu_event): (webkit_web_view_key_release_event): (webkit_web_view_button_release_event): (webkit_web_view_focus_in_event): (webkit_web_view_focus_out_event): (webkit_web_view_realize): (webkit_web_view_set_scroll_adjustments): (webkit_web_view_dispose): (webkit_web_view_finalize): (webViewGetDPI): (webkit_web_view_screen_changed): (webkit_web_view_query_tooltip): (webkit_web_view_get_im_context): (webkit_web_view_update_settings): (webkit_web_view_init): (webkit_web_view_set_settings): (webkit_web_view_get_settings): (webkit_web_view_get_inspector): (webkit_web_view_set_window_features): (webkit_web_view_get_window_features): (webkit_web_view_get_back_forward_list): (webkit_web_view_zoom_in): (webkit_web_view_zoom_out): (webkit_web_view_get_encoding): (webkit_web_view_get_custom_encoding): (webkit_web_view_add_resource): (webkit_web_view_get_resource): (webkit_web_view_get_main_resource): (webkit_web_view_clear_resources): (webkit_web_view_get_subresources): (webkit_web_view_set_tooltip_text): (webkit_web_view_get_icon_uri):
13:41 Changeset [59782] by dpranke@chromium.org

2010-05-18 Dirk Pranke <dpranke@chromium.org>

Reviewed by Dimitri Glazkov.

Attempt to revert r58765 to see if it was causing a performance
regression.

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

  • fast/notifications/notifications-replace-expected.txt: Removed.
  • fast/notifications/notifications-replace.html: Removed.
  • fast/notifications/notifications-rtl-expected.txt: Removed.
  • fast/notifications/notifications-rtl.html: Removed.

2010-05-18 Dirk Pranke <dpranke@chromium.org>

Reviewed by Dimitri Glazkov.

Attempt to revert r58765 to see if it was causing a performance
regression.

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

  • notifications/Notification.h:
  • notifications/Notification.idl:

2010-05-18 Dirk Pranke <dpranke@chromium.org>

Reviewed by Dimitri Glazkov.

Attempt to revert r58765 to see if it was causing a performance
regression.

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

  • public/WebNotification.h:
  • src/WebNotification.cpp:
13:35 Changeset [59781] by ggaren@apple.com

2010-05-19 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.

Don't build the Interpreter into JIT builds.
https://bugs.webkit.org/show_bug.cgi?id=39373

SunSpider says no change.

  • interpreter/Interpreter.cpp: (JSC::Interpreter::privateExecute):
  • interpreter/Interpreter.h:
  • wtf/Platform.h:
12:17 Changeset [59780] by kevino@webkit.org

Reviewed by Kevin Ollivier.

[wx] Ensure m_nsFont is initialized properly, and tweak fallback font handling
to handle more cases.
https://bugs.webkit.org/show_bug.cgi?id=39365

12:08 Changeset [59779] by eric@webkit.org

2010-05-19 Marcus Bulach <bulach@chromium.org>

Reviewed by Eric Seidel.

Fixes Windows Qt Release post r59772.
https://bugs.webkit.org/show_bug.cgi?id=39369

  • platform/GeolocationService.cpp:
12:02 Changeset [59778] by eric@webkit.org

2010-05-19 Eric Seidel <eric@webkit.org>

Reviewed by Adam Barth.

Add support for handling basic <script> tags in the HTML5 Parser
https://bugs.webkit.org/show_bug.cgi?id=39350

WebKit currently executes scripts from HTMLTokenizer in one giagantic
hack. HTML 5 requires that we execute scripts from the tree-builders/parser.

It will take me a while to re-factor enough of HTMLTokenizer to be able to
move the script execution logic without breaking things. In the interest
of allowing Adam to continue improving the HTML 5 lexer I've added this
very basic (and very incomplete) <script> support to the HTML 5 parser code
path so the he can run the HTML5 parser test suite.

<script> support is tested by most of the layout tests.

  • dom/ScriptElement.cpp: (WebCore::useHTML5Parser): (WebCore::ScriptElement::finishParsingChildren):
11:28 Changeset [59777] by ggaren@apple.com

Standardized naming: "bytecode offset" wins; "bytecode index" loses.

Reviewed by Gavin Barraclough.

Also renamed getBytecodeOffset to bytecodeOffset, to match the WebKit
naming style.

  • bytecode/CodeBlock.h:

(JSC::CallReturnOffsetToBytecodeOffset::CallReturnOffsetToBytecodeOffset):
(JSC::getCallReturnOffset):
(JSC::CodeBlock::bytecodeOffset):
(JSC::CodeBlock::callReturnIndexVector):

  • interpreter/Interpreter.cpp:

(JSC::bytecodeOffsetForPC):

  • jit/JIT.cpp:

(JSC::JIT::JIT):
(JSC::JIT::privateCompileMainPass):
(JSC::JIT::privateCompileLinkPass):
(JSC::JIT::privateCompileSlowCases):
(JSC::JIT::privateCompile):

  • jit/JIT.h:

(JSC::CallRecord::CallRecord):
(JSC::JumpTable::JumpTable):
(JSC::SwitchRecord::SwitchRecord):

  • jit/JITCall.cpp:

(JSC::JIT::compileOpCallVarargsSlowCase):
(JSC::JIT::compileOpCall):

  • jit/JITInlineMethods.h:

(JSC::JIT::emitNakedCall):
(JSC::JIT::addSlowCase):
(JSC::JIT::addJump):
(JSC::JIT::emitJumpSlowToHot):
(JSC::JIT::isLabeled):
(JSC::JIT::map):
(JSC::JIT::unmap):
(JSC::JIT::isMapped):
(JSC::JIT::getMappedPayload):
(JSC::JIT::getMappedTag):
(JSC::JIT::emitGetVirtualRegister):

  • jit/JITOpcodes.cpp:

(JSC::JIT::emit_op_switch_imm):
(JSC::JIT::emit_op_switch_char):
(JSC::JIT::emit_op_switch_string):
(JSC::JIT::emit_op_new_error):

  • jit/JITOpcodes32_64.cpp:

(JSC::JIT::emit_op_mov):
(JSC::JIT::emit_op_get_global_var):
(JSC::JIT::emit_op_put_global_var):
(JSC::JIT::emit_op_get_scoped_var):
(JSC::JIT::emit_op_put_scoped_var):
(JSC::JIT::emit_op_to_primitive):
(JSC::JIT::emit_op_resolve_global):
(JSC::JIT::emit_op_to_jsnumber):
(JSC::JIT::emit_op_catch):
(JSC::JIT::emit_op_switch_imm):
(JSC::JIT::emit_op_switch_char):
(JSC::JIT::emit_op_switch_string):
(JSC::JIT::emit_op_new_error):
(JSC::JIT::emit_op_convert_this):

  • jit/JITPropertyAccess.cpp:

(JSC::JIT::emit_op_method_check):
(JSC::JIT::emitSlow_op_method_check):

  • jit/JITPropertyAccess32_64.cpp:

(JSC::JIT::emit_op_method_check):
(JSC::JIT::emitSlow_op_method_check):
(JSC::JIT::emit_op_get_by_val):
(JSC::JIT::emit_op_get_by_id):
(JSC::JIT::emit_op_get_by_pname):

  • jit/JITStubCall.h:

(JSC::JITStubCall::call):

  • jit/JITStubs.cpp:

(JSC::DEFINE_STUB_FUNCTION):

11:03 Changeset [59776] by andersca@apple.com

2010-05-19 Anders Carlsson <andersca@apple.com>

Reviewed by Sam Weinig.

Move member variables from NamedMappedAttrMap to its base class NamedNodeMap
https://bugs.webkit.org/show_bug.cgi?id=39367
<rdar://problem/8003304>

This lets us get rid of the vtable pointer in NamedNodeMap which saves 8 bytes, and also allows us to
fit the m_mappedAttributeCount unsigned int in the RefCounted padding (in 64-bit).


The net result is that we shrink the NamedMappedAttrMap size by 16 bytes, while keeping the size of NamedNodeMap the same.

  • dom/Element.cpp: (WebCore::Element::createAttributeMap):
  • dom/Element.h:
  • dom/NamedMappedAttrMap.cpp:
  • dom/NamedMappedAttrMap.h: (WebCore::NamedMappedAttrMap::NamedMappedAttrMap):
  • dom/NamedNodeMap.cpp: (WebCore::NamedNodeMap::clearAttributes):
  • dom/NamedNodeMap.h: (WebCore::NamedNodeMap::NamedNodeMap):
  • dom/Node.cpp: (WebCore::Node::dumpStatistics):
  • dom/StyledElement.cpp:
  • dom/StyledElement.h:
10:58 Changeset [59775] by weinig@apple.com

Use ASSERT_UNUSED instead of UNUSED_PARAM.

Reviewed by Anders Carlsson.

  • dom/Attribute.cpp:

(WebCore::Attribute::unbindAttr):

10:57 Changeset [59774] by jianli@chromium.org

Remove obsolete ChromiumBridge code that routes FileSystem calls to WebKitClient.
https://bugs.webkit.org/show_bug.cgi?id=39332

Reviewed by Darin Fisher.

  • public/WebKitClient.h:
  • src/ChromiumBridge.cpp:

(WebCore::ChromiumBridge::fileExists):
(WebCore::ChromiumBridge::deleteFile):
(WebCore::ChromiumBridge::deleteEmptyDirectory):
(WebCore::ChromiumBridge::getFileSize):
(WebCore::ChromiumBridge::getFileModificationTime):
(WebCore::ChromiumBridge::directoryName):
(WebCore::ChromiumBridge::pathByAppendingComponent):
(WebCore::ChromiumBridge::makeAllDirectories):
(WebCore::ChromiumBridge::getAbsolutePath):
(WebCore::ChromiumBridge::isDirectory):
(WebCore::ChromiumBridge::filePathToURL):

10:48 Changeset [59773] by weinig@apple.com

Complete the merge of MappedAttribute and Attribute.

Rubber-stamped by Anders Carlsson.

Files elided for brevity.

10:38 Changeset [59772] by eric@webkit.org

2010-05-19 Marcus Bulach <bulach@chromium.org>

Reviewed by Steve Block.

[chromium] Adds supports for layout tests using GeolocationServiceMock.
https://bugs.webkit.org/show_bug.cgi?id=39081

Allows injection of GeolocationServiceMock factory.

Tests: existing fast/dom/Geolocation/*

  • platform/GeolocationService.cpp: (WebCore::GeolocationService::useMock): (WebCore::GeolocationService::useMockFactory):
  • platform/GeolocationService.h:
  • platform/chromium/GeolocationServiceChromium.cpp: (WebCore::GeolocationServiceChromium::GeolocationServiceChromium):

2010-05-19 Marcus Bulach <bulach@chromium.org>

Reviewed by Steve Block.

[chromium] Adds supports for layout tests using GeolocationServiceMock.
https://bugs.webkit.org/show_bug.cgi?id=39081

Allows injection of GeolocationServiceMock factory.
Tests: existing fast/dom/Geolocation/*

  • WebKit.gyp:
  • public/WebGeolocationServiceMock.h: Added.
  • src/WebGeolocationServiceMock.cpp: Added. (WebCore::GeolocationServiceChromiumMock::create): (WebCore::GeolocationServiceChromiumMock::GeolocationServiceChromiumMock): (WebCore::GeolocationServiceChromiumMock::startUpdating): (WebCore::GeolocationServiceChromiumMock::stopUpdating): (WebCore::GeolocationServiceChromiumMock::lastPosition): (WebCore::GeolocationServiceChromiumMock::lastError): (WebCore::GeolocationServiceChromiumMock::geolocationServicePositionChanged): (WebCore::GeolocationServiceChromiumMock::geolocationServiceErrorOccurred): (WebKit::WebGeolocationServiceMock::setMockGeolocationPosition): (WebKit::WebGeolocationServiceMock::setMockGeolocationError):
10:23 Changeset [59771] by eric@webkit.org

2010-05-19 Eric Seidel <eric@webkit.org>

Reviewed by Adam Barth.

user.py throws exception when readline module is missing
https://bugs.webkit.org/show_bug.cgi?id=39239

  • Scripts/webkitpy/common/system/user.py:
    • The error handling path requires the "sys" module, so added an import sys at the top of the file.
09:38 Changeset [59770] by mrobinson@webkit.org

2010-05-19 Martin Robinson <mrobinson@igalia.com>

Not reviewed.

Add baselines for new multi-column tests.

  • platform/gtk/fast/multicol/column-count-with-rules-expected.txt: Added.
  • platform/gtk/fast/multicol/layers-in-multicol-expected.txt: Added.
  • platform/gtk/fast/multicol/nested-columns-expected.txt: Added.
09:16 Changeset [59769] by yaar@chromium.org

2010-05-19 Justin Schuh <jschuh@chromium.org>

Reviewed by Adam Barth.

Moving frame.src checks out of the bindings
https://bugs.webkit.org/show_bug.cgi?id=37815

Moved JavaScript frame.src checks out of bindings and into
HTMLFrameElementBase. Added main thread state stack to JavaScriptCore
so ExecState is available inside core DOM. Updated affected bindings
(except for GObject, which will need to be updated to avoid origin
failures inside native code).

  • Android.jscbindings.mk:
  • CMakeLists.txt:
  • GNUmakefile.am:
  • WebCore.gypi:
  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSBindingsAllInOne.cpp:
  • bindings/js/JSCallbackData.cpp: (WebCore::JSCallbackData::invokeCallback):
  • bindings/js/JSEventListener.cpp: (WebCore::JSEventListener::handleEvent):
  • bindings/js/JSInjectedScriptHostCustom.cpp: (WebCore::InjectedScriptHost::createInjectedScript):
  • bindings/js/JSMainThreadExecState.cpp: Added.
  • bindings/js/JSMainThreadExecState.h: Added. (WebCore::JSMainThreadExecState::currentState): (WebCore::JSMainThreadExecState::call): (WebCore::JSMainThreadExecState::evaluate): (WebCore::JSMainThreadExecState::JSMainThreadExecState): (WebCore::JSMainThreadExecState::~JSMainThreadExecState): (WebCore::JSMainThreadNullState::JSMainThreadNullState):
  • bindings/js/ScheduledAction.cpp: (WebCore::ScheduledAction::executeFunctionInContext): (WebCore::ScheduledAction::execute):
  • bindings/js/ScheduledAction.h:
  • bindings/js/ScriptController.cpp: (WebCore::ScriptController::evaluateInWorld): (WebCore::ScriptController::canAccessFromCurrentOrigin):
  • bindings/js/ScriptController.h:
  • bindings/js/ScriptFunctionCall.cpp: (WebCore::ScriptFunctionCall::call):
  • bindings/objc/ObjCEventListener.mm:
  • bindings/objc/WebScriptObject.mm: (-[WebScriptObject callWebScriptMethod:withArguments:]): (-[WebScriptObject evaluateWebScript:]):
  • bindings/scripts/CodeGeneratorObjC.pm:
  • bindings/scripts/test/ObjC/DOMTestCallback.mm: (-[DOMTestCallback callbackWithClass1Param:]): (-[DOMTestCallback callbackWithClass2Param:strArg:]): (-[DOMTestCallback callbackWithNonBoolReturnType:]): (-[DOMTestCallback customCallback:class6Param:]):
  • bindings/scripts/test/ObjC/DOMTestInterface.mm:
  • bindings/scripts/test/ObjC/DOMTestObj.mm: (-[DOMTestObj readOnlyIntAttr]): (-[DOMTestObj readOnlyStringAttr]): (-[DOMTestObj readOnlyTestObjAttr]): (-[DOMTestObj intAttr]): (-[DOMTestObj setIntAttr:]): (-[DOMTestObj longLongAttr]): (-[DOMTestObj setLongLongAttr:]): (-[DOMTestObj unsignedLongLongAttr]): (-[DOMTestObj setUnsignedLongLongAttr:]): (-[DOMTestObj stringAttr]): (-[DOMTestObj setStringAttr:]): (-[DOMTestObj testObjAttr]): (-[DOMTestObj setTestObjAttr:]): (-[DOMTestObj attrWithException]): (-[DOMTestObj setAttrWithException:]): (-[DOMTestObj attrWithSetterException]): (-[DOMTestObj setAttrWithSetterException:]): (-[DOMTestObj attrWithGetterException]): (-[DOMTestObj setAttrWithGetterException:]): (-[DOMTestObj customAttr]): (-[DOMTestObj setCustomAttr:]): (-[DOMTestObj scriptStringAttr]): (-[DOMTestObj voidMethod]): (-[DOMTestObj voidMethodWithArgs:strArg:objArg:]): (-[DOMTestObj intMethod]): (-[DOMTestObj intMethodWithArgs:strArg:objArg:]): (-[DOMTestObj objMethod]): (-[DOMTestObj objMethodWithArgs:strArg:objArg:]): (-[DOMTestObj methodThatRequiresAllArgs:objArg:]): (-[DOMTestObj methodThatRequiresAllArgsAndThrows:objArg:]): (-[DOMTestObj serializedValue:]): (-[DOMTestObj methodWithException]): (-[DOMTestObj customMethod]): (-[DOMTestObj customMethodWithArgs:strArg:objArg:]): (-[DOMTestObj customArgsAndException:]): (-[DOMTestObj addEventListener:listener:useCapture:]): (-[DOMTestObj removeEventListener:listener:useCapture:]): (-[DOMTestObj withDynamicFrame]): (-[DOMTestObj withDynamicFrameAndArg:]): (-[DOMTestObj withDynamicFrameAndOptionalArg:optionalArg:]): (-[DOMTestObj withDynamicFrameAndUserGesture:]): (-[DOMTestObj withDynamicFrameAndUserGestureASAD:optionalArg:]): (-[DOMTestObj withScriptStateVoid]): (-[DOMTestObj withScriptStateObj]): (-[DOMTestObj withScriptStateVoidException]): (-[DOMTestObj withScriptStateObjException]): (-[DOMTestObj methodWithOptionalArg:]): (-[DOMTestObj methodWithNonOptionalArgAndOptionalArg:opt:]): (-[DOMTestObj methodWithNonOptionalArgAndTwoOptionalArgs:opt1:opt2:]):
  • bindings/v8/ScriptController.cpp: (WebCore::ScriptController::canAccessFromCurrentOrigin):
  • bindings/v8/ScriptController.h:
  • html/HTMLFrameElementBase.cpp: (WebCore::HTMLFrameElementBase::isURLAllowed):

2010-05-19 Justin Schuh <jschuh@chromium.org>

Reviewed by Adam Barth.

Moving frame.src checks out of the bindings
https://bugs.webkit.org/show_bug.cgi?id=37815

  • http/tests/security/xss-DENIED-iframe-src-alias-expected.txt:
  • http/tests/security/xss-DENIED-iframe-src-alias.html:
09:11 Changeset [59768] by chang.shu@nokia.com

2010-05-19 Andreas Kling <andreas.kling@nokia.com>

Reviewed by Darin Adler.

CanvasRenderingContext2D's property getters that return colors should
serialize them in accordance with the HTML5 spec (4.8.11.1.4)
Setters should ignore invalid colors.

Also, shadowColor should initially be transparent black (4.8.11.1.6)

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

Refactored CanvasStyle to store an RGBA32 instead of RGBA components and/or the color string.

Spec links:
http://www.whatwg.org/specs/web-apps/current-work/#serialization-of-a-color
http://www.whatwg.org/specs/web-apps/current-work/#dom-context-2d-shadowcolor

  • html/canvas/CanvasRenderingContext2D.cpp: (WebCore::CanvasRenderingContext2D::State::State): (WebCore::CanvasRenderingContext2D::shadowColor): (WebCore::CanvasRenderingContext2D::setShadowColor): (WebCore::CanvasRenderingContext2D::setShadow): (WebCore::CanvasRenderingContext2D::clearShadow): (WebCore::CanvasRenderingContext2D::applyShadow):
  • html/canvas/CanvasRenderingContext2D.h:
  • html/canvas/CanvasStyle.cpp: (WebCore::CanvasStyle::CanvasStyle): (WebCore::CanvasStyle::create): (WebCore::CanvasStyle::applyStrokeColor): (WebCore::CanvasStyle::applyFillColor):
  • html/canvas/CanvasStyle.h: (WebCore::CanvasStyle::create): (WebCore::CanvasStyle::color): (WebCore::CanvasStyle::): (WebCore::CanvasStyle::CMYKAValues::CMYKAValues):
  • platform/graphics/Color.cpp: (WebCore::Color::serialized):
  • platform/graphics/Color.h:

2010-05-19 Andreas Kling <andreas.kling@nokia.com>

Reviewed by Darin Adler.

Added a test to verify proper color serialization in CanvasRenderingContext2D's getters.
https://bugs.webkit.org/show_bug.cgi?id=38845

Spec link:
http://www.whatwg.org/specs/web-apps/current-work/#serialization-of-a-color

  • fast/canvas/canvas-color-serialization-expected.txt: Added.
  • fast/canvas/canvas-color-serialization.html: Added.
  • fast/canvas/canvas-set-properties-with-non-invertible-ctm-expected.txt: Updated baseline.
  • fast/canvas/script-tests/canvas-color-serialization.js: Added. (trySettingStrokeStyle): (trySettingFillStyle): (trySettingShadowColor): (trySettingColor): (trySettingStrokeColorWithSetter): (trySettingFillColorWithSetter): (trySettingShadowWithSetter): (trySettingColorWithSetter): (trySettingFillColorRGBA): (trySettingStrokeColorRGBA): (trySettingShadowRGBA): (trySettingRGBA): (trySettingFillColorCMYKA): (trySettingStrokeColorCMYKA): (trySettingShadowCMYKA): (trySettingCMYKA): (trySettingFillColorWithOverrideAlpha): (trySettingStrokeColorWithOverrideAlpha): (trySettingShadowWithOverrideAlpha): (trySettingColorWithOverrideAlpha): (trySettingFillColorGrayLevel): (trySettingStrokeColorGrayLevel): (trySettingShadowGrayLevel): (trySettingGrayLevel): (trySettingFillColorGrayLevelWithAlpha): (trySettingStrokeColorGrayLevelWithAlpha): (trySettingShadowGrayLevelWithAlpha): (trySettingGrayLevelWithAlpha): (tryClearShadowAfterSettingColor): (checkDefaultValue):
  • fast/canvas/script-tests/canvas-set-properties-with-non-invertible-ctm.js:
  • fast/dom/canvasContext2d-element-attribute-js-null-expected.txt: Updated baseline.
  • fast/dom/canvasContext2d-element-attribute-js-null.html:
08:55 Changeset [59767] by chang.shu@nokia.com

2010-05-19 Andreas Kling <andreas.kling@nokia.com>

Reviewed by Simon Hausmann.

[Qt] REGRESSION: CoolClock isn't rendered properly

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

CanvasRenderingContext2D's arc() should connect to the previous point
with a straight line (HTML5 spec 4.8.11.1.8), but if the path is empty
to begin with, we don't want a line back to (0,0)
This also fixes the rendering artifact discussed in bug 36226.

Spec link:
http://www.whatwg.org/specs/web-apps/current-work/#dom-context-2d-arc

Test: fast/canvas/canvas-arc-connecting-line.html

  • platform/graphics/qt/PathQt.cpp: (WebCore::Path::addArc):

2010-05-19 Andreas Kling <andreas.kling@nokia.com>

Reviewed by Simon Hausmann.

Add test to verify that CanvasRenderingContext2D's arc() connects arcs
by a straight line (unless it's the first element in the path.)
https://bugs.webkit.org/show_bug.cgi?id=38526

  • fast/canvas/canvas-arc-connecting-line-expected.txt: Added.
  • fast/canvas/canvas-arc-connecting-line.html: Added.
  • fast/canvas/script-tests/canvas-arc-connecting-line.js: Added. (deg2rad):
08:20 Changeset [59766] by abecsi@webkit.org

The backtrackParenthesesOnceEnd function should store the start position
of the subpattern's non-greedy match at the place of the subpattern's
start index in the output array instead of the place of the
subpattern's end index.
Add layout test for checking of non-greedy matching of subpattern in
regular expressions.
https://bugs.webkit.org/show_bug.cgi?id=39289

Patch by Peter Varga <pvarga@inf.u-szeged.hu> on 2010-05-19
Reviewed by Darin Adler.

JavaScriptCore:

  • yarr/RegexInterpreter.cpp:

(JSC::Yarr::Interpreter::backtrackParenthesesOnceEnd):

LayoutTests:

  • fast/js/regexp-non-greedy-parentheses-expected.txt: Added.
  • fast/js/regexp-non-greedy-parentheses.html: Added.
  • fast/js/script-tests/regexp-non-greedy-parentheses.js: Added.
08:14 Changeset [59765] by antti.j.koivisto@nokia.com

[Qt] TiledBackingStore updates broken when not using resizesToContents mode
https://bugs.webkit.org/show_bug.cgi?id=39359

Rubber-stamped by Kenneth Rohde Christiansen.

Put the back logic that was lost in refactoring.

  • WebCoreSupport/ChromeClientQt.cpp:

(WebCore::ChromeClientQt::visibleRectForTiledBackingStore):

  • WebCoreSupport/PageClientQt.cpp:

(WebCore::PageClientQGraphicsWidget::graphicsItemVisibleRect):

  • WebCoreSupport/PageClientQt.h:

(WebCore::PageClientQWidget::viewResizesToContentsEnabled):
(WebCore::PageClientQGraphicsWidget::viewResizesToContentsEnabled):

08:13 Changeset [59764] by eric@webkit.org

2010-05-19 Sheriff Bot <webkit.review.bot@gmail.com>

Unreviewed, rolling out r59758.
http://trac.webkit.org/changeset/59758
https://bugs.webkit.org/show_bug.cgi?id=39361

This patch adds a test that fails on Leopard (Requested by
abarth on #webkit).

  • fast/canvas/webgl/texture-npot-expected.txt:
  • fast/canvas/webgl/texture-npot.html:
08:04 Changeset [59763] by hausmann@webkit.org

Symbian build fix.

[Qt] Updated the def file with exports needed for DumpRenderTree.

  • symbian/eabi/QtWebKitu.def:
06:25 Changeset [59762] by apavlov@chromium.org

2010-05-19 Alexander Pavlov <apavlov@chromium.org>

Reviewed by Jeremy Orlow.

Fix whitespace for the bug 38906
https://bugs.webkit.org/show_bug.cgi?id=39351

No new tests required (no code change).

  • css/CSSParser.cpp: (WebCore::CSSParser::~CSSParser): (WebCore::CSSParser::setupParser): (WebCore::CSSParser::parseSheet): (WebCore::CSSParser::parseValue): (WebCore::CSSParser::parseSelector): (WebCore::unitFromString): (WebCore::CSSParser::checkForOrphanedUnits): (WebCore::CSSParser::parseWCSSInputProperty): (WebCore::CSSParser::parseFillShorthand): (WebCore::CSSParser::parseAnimationShorthand): (WebCore::CSSParser::parseTransitionShorthand): (WebCore::CSSParser::parseShorthand): (WebCore::CSSParser::parse4Values): (WebCore::CSSParser::parseAttr): (WebCore::CSSParser::parseFillPositionXY): (WebCore::CSSParser::parseFillPosition): (WebCore::CSSParser::parseFillRepeat): (WebCore::CSSParser::parseFillProperty): (WebCore::CSSParser::parseAnimationTimingFunction): (WebCore::CSSParser::parseAnimationProperty): (WebCore::CSSParser::parseDashboardRegions): (WebCore::CSSParser::parseCounterContent): (WebCore::CSSParser::parseShape): (WebCore::CSSParser::parseFont): (WebCore::CSSParser::parseFontFamily): (WebCore::CSSParser::parseFontFaceSrc): (WebCore::parseInt): (WebCore::CSSParser::parseColor): (WebCore::CSSParser::parseShadow): (WebCore::CSSParser::parseReflect): (WebCore::BorderImageParseContext::commitNumber): (WebCore::BorderImageParseContext::commitBorderImage): (WebCore::CSSParser::parseBorderImage): (WebCore::CSSParser::parseCounter): (WebCore::parseGradientPoint): (WebCore::parseGradientColorStop): (WebCore::CSSParser::parseGradient): (WebCore::CSSParser::parseCanvas): (WebCore::CSSParser::parseTransform): (WebCore::CSSParser::parseTransformOrigin): (WebCore::CSSParser::parsePerspectiveOrigin): (WebCore::CSSParser::text): (WebCore::CSSParser::createRuleList): (WebCore::CSSParser::createVariablesRule): (WebCore::CSSParser::parseVariable): (WebCore::CSSParser::parsePropertyWithResolvedVariables): (WebCore::CSSParser::checkForVariables): (WebCore::CSSParser::createKeyframeRule):
  • css/CSSParser.h:
  • inspector/InspectorController.cpp: (WebCore::InspectorController::setFrontend): (WebCore::InspectorController::show): (WebCore::InspectorController::unbindAllResources): (WebCore::InspectorController::didCommitLoad): (WebCore::InspectorController::scriptImported): (WebCore::InspectorController::getCurrentUserInitiatedProfileName): (WebCore::InspectorController::removeBreakpoint): (WebCore::drawOutlinedQuad): (WebCore::InspectorController::stopTiming):
  • inspector/InspectorDOMAgent.cpp: (WebCore::InspectorDOMAgent::didRemoveDOMNode): (WebCore::InspectorDOMAgent::getStyles): (WebCore::InspectorDOMAgent::applyStyleText):
06:24 Changeset [59761] by kenneth@webkit.org

When creating the UA, do not sassmue the language code is a
two-letter iso639-1 code.

Patch by Denis Dzyubenko <denis.dzyubenko@nokia.com> on 2010-05-19
Reviewed by Kenneth Rohde Christiansen.

  • Api/qwebpage.cpp:

(QWebPage::userAgentForUrl):

04:44 Changeset [59760] by antti.j.koivisto@nokia.com

[Qt] Move visible rect calculation from QGraphicsWebViewPrivate to PageClientQGraphicsWidget
https://bugs.webkit.org/show_bug.cgi?id=39294

Reviewed by Kenneth Rohde Christiansen.

  • Api/qgraphicswebview.cpp:
  • WebCoreSupport/PageClientQt.cpp:

(WebCore::PageClientQGraphicsWidget::graphicsItemVisibleRect):

  • WebCoreSupport/PageClientQt.h:
04:43 Changeset [59759] by eric@webkit.org

2010-05-19 Dan Winship <danw@gnome.org>

Reviewed by Xan Lopez.

[GTK] Install introspection files in our prefix, not
gobject-introspection's prefix

  • GNUmakefile.am:
  • configure.ac:
03:59 Changeset [59758] by eric@webkit.org

2010-05-19 Zhenyao Mo <zmo@google.com>

Reviewed by Darin Adler.

fast/canvas/webgl/texture-npot.html failed on leopard bot
https://bugs.webkit.org/show_bug.cgi?id=39128

  • fast/canvas/webgl/texture-npot-expected.txt: Skip pixel (0, 0); print out actual color when failing.
  • fast/canvas/webgl/texture-npot.html: Ditto.
03:48 Changeset [59757] by eric@webkit.org

2010-05-19 Steve Block <steveblock@google.com>

Reviewed by Nate Chapin.

V8 code generator does not add ENABLE guards around attribute getters and setters
https://bugs.webkit.org/show_bug.cgi?id=39222

No new tests, build fix only.

  • bindings/scripts/CodeGeneratorV8.pm:
03:17 Changeset [59756] by jorlow@chromium.org

2010-05-19 Jeremy Orlow <jorlow@chromium.org>

Unreviewed build fix for Chromium.

  • storage/IndexedDatabaseImpl.cpp:
03:04 Changeset [59755] by jorlow@chromium.org

2010-05-17 Jeremy Orlow <jorlow@chromium.org>

Reviewed by Darin Fisher.

Hook Chromium's WebIndexedDatabaseImpl up to IndexedDatabaseImpl
https://bugs.webkit.org/show_bug.cgi?id=39216

All of these functions are supposed to be passing around the origin since
the caller of IndexedDatabaseImpl might not be able to pass in a Frame*
object. I tried to fix this in an ealier patch, but obviously messed up.

Also change passing security origin strings to passing SecurityOrigin
objects.

No behavior change because Chromium was emulating the old behavior before
even though the code wasn't properly hooked up.

  • storage/IndexedDatabase.h:
  • storage/IndexedDatabaseImpl.cpp: (WebCore::IndexedDatabaseImpl::open):
  • storage/IndexedDatabaseImpl.h:
  • storage/IndexedDatabaseRequest.cpp: (WebCore::IndexedDatabaseRequest::open):

2010-05-17 Jeremy Orlow <jorlow@chromium.org>

Reviewed by Darin Fisher.

Hook Chromium's WebIndexedDatabaseImpl up to IndexedDatabaseImpl
https://bugs.webkit.org/show_bug.cgi?id=39216

WebImpl is for re-entering the WebKit layer from the browser layer.
Thus the previous IDBCallbacksProxy was mis-named (and should have been
WebIDBCallbacksImpl). This patch renames it and then implements the
proper proxy (which is for going from WebCore to WebKit).

Also change using security origin strings to using WebSecurityOrigin
objects.

This patch also implements the glue between WebIndexedDatabaseImpl and
IndexedDatabaseImpl.

  • WebKit.gyp:
  • src/IDBCallbacksProxy.cpp: (WebCore::IDBCallbacksProxy::create): (WebCore::IDBCallbacksProxy::IDBCallbacksProxy): (WebCore::IDBCallbacksProxy::onError): (WebCore::IDBCallbacksProxy::onSuccess):
  • src/IDBCallbacksProxy.h:
  • src/IndexedDatabaseProxy.cpp: (WebCore::IndexedDatabaseProxy::open):
  • src/IndexedDatabaseProxy.h:
  • src/WebIDBCallbacksImpl.cpp: Added. (WebCore::WebIDBCallbacksImpl::WebIDBCallbacksImpl): (WebCore::WebIDBCallbacksImpl::~WebIDBCallbacksImpl): (WebCore::WebIDBCallbacksImpl::onError): (WebCore::WebIDBCallbacksImpl::onSuccess):
  • src/WebIDBCallbacksImpl.h: Added.
  • src/WebIDBDatabaseImpl.cpp: Added. (WebKit::WebIDBDatabaseImpl::WebIDBDatabaseImpl): (WebKit::WebIDBDatabaseImpl::~WebIDBDatabaseImpl):
  • src/WebIDBDatabaseImpl.h: Added.
  • src/WebIndexedDatabaseImpl.cpp: (WebKit::WebIndexedDatabaseImpl::WebIndexedDatabaseImpl): (WebKit::WebIndexedDatabaseImpl::open):
  • src/WebIndexedDatabaseImpl.h:
02:37 Changeset [59754] by eric@webkit.org

2010-05-19 Ben Murdoch <benm@google.com>

Reviewed by Darin Adler.

Touch events are marked DontEnum in DOMWindow.idl
https://bugs.webkit.org/show_bug.cgi?id=39118

Update the expected results for enumerating the window object
properties now touch event listeners are no longer marked DontEnum.

  • platform/qt/fast/dom/Window/window-properties-expected.txt:

2010-05-19 Ben Murdoch <benm@google.com>

Reviewed by Darin Adler.

Touch events are marked DontEnum in DOMWindow.idl
https://bugs.webkit.org/show_bug.cgi?id=39118

Touch events are the only attribute event listeners on the
window object that are marked DontEnum. For consistency allow
them to be enumerated.

  • page/DOMWindow.idl: Remove DontEnum from touchcancel, touchend,

touchstart and touchmove attributes.

01:38 Changeset [59753] by hausmann@webkit.org

[Qt] Fix build warning

NamedAttrMap.h has been renamed to NamedNodeMap.h

  • WebCore.pro:
01:22 Changeset [59752] by eric@webkit.org

2010-05-19 Eric Seidel <eric@webkit.org>

Reviewed by Adam Barth.

Add an HTML parsing benchmark
https://bugs.webkit.org/show_bug.cgi?id=39338

This benchmark parses the HTML5 specification 10 times and
reports how long it takes. It does this 21 times, discarding
the first warm-up run, and then prints the average time and
standard deviation.

Sharking the benchmark correctly shows over 60% of the time spent under HTMLTokenizer::write().
The numbers from the benchmark are rather consistent. On my
Mac Book Pro, I consistently see standard deviations < 2% of total time.

  • benchmarks/parser/html-parser.html: Added.
  • benchmarks/parser/resources/html5.html: Added.
00:33 Changeset [59751] by yuzo@google.com

2010-05-18 Yuzo Fujishima <yuzo@google.com>

Reviewed by Shinichiro Hamaji.

Make CSS Parser properly handle only-for-pages pseudo-classes.

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

  • fast/css/misplaced-paged-media-pseudo-expected.txt: Removed.
  • fast/css/misplaced-paged-media-pseudo.html: Removed.
  • printing/page-rule-css-text-expected.txt:
  • printing/page-rule-css-text.html:
  • printing/pseudo-class-outside-page-expected.txt:
  • printing/pseudo-class-outside-page.html:

2010-05-18 Yuzo Fujishima <yuzo@google.com>

Reviewed by Shinichiro Hamaji.

Make CSS Parser properly handle only-for-pages pseudo-classes.

A new Match category, PagePseudoClass, is introduced to distinguish
only-for-pages pseudo-classes from others. A new symbol, pseudo_page,
is introduced to handle them separately.

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

  • css/CSSGrammar.y:
  • css/CSSParser.cpp: (WebCore::CSSParser::createMarginAtRule):
  • css/CSSParser.h:
  • css/CSSSelector.cpp: (WebCore::CSSSelector::extractPseudoType): (WebCore::CSSSelector::selectorText):
  • css/CSSSelector.h: (WebCore::CSSSelector::):
  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
00:26 Changeset [59750] by abarth@webkit.org

2010-05-19 Adam Barth <abarth@webkit.org>

Reviewed by David Hyatt.

Change the API of nextToken to distinguish between emitting a token and just running out of input
https://bugs.webkit.org/show_bug.cgi?id=39349

I'm not sure there's a functional difference with this patch yet, but
as discussed with Eric, we need this to handle attributes.

  • html/HTML5Lexer.cpp: (WebCore::HTML5Lexer::reset): (WebCore::HTML5Lexer::nextToken):
  • html/HTML5Lexer.h:
  • html/HTML5Token.h: (WebCore::HTML5Token::HTML5Token): (WebCore::HTML5Token::clear): (WebCore::HTML5Token::beginStartTag): (WebCore::HTML5Token::beginEndTag): (WebCore::HTML5Token::beginCharacter):
  • html/HTML5Tokenizer.cpp: (WebCore::HTML5Tokenizer::write):
00:19 Changeset [59749] by eric@webkit.org

2010-05-18 Eric Seidel <eric@webkit.org>

Reviewed by Maciej Stachowiak.

Refactor HTMLTokenizer::write to make it more readable and split out the lexer bits from flow control bits
https://bugs.webkit.org/show_bug.cgi?id=39318

No functional changes, only moving code into smaller functions.

This code is already covered by numerous layout tests.

HTML parsing benchmark shows this to be a wash.

  • dom/Tokenizer.h:
  • html/HTMLTokenizer.cpp: (WebCore::HTMLTokenizer::advance):
    • New funtion to encapulate code which will move into HTMLLexer eventually.
    • Use ALWAYS_INLINE to make sure compilers inline this large function (otherwise this patch is a regression).

(WebCore::HTMLTokenizer::willWriteHTML):

  • New function to handle calling any pre-write delegates.

(WebCore::HTMLTokenizer::didWriteHTML):

  • New function to handle calling any post-write delegates.

(WebCore::HTMLTokenizer::write):

  • Call the new functions.
  • html/HTMLTokenizer.h:

05/18/10:

23:45 Changeset [59748] by alex@webkit.org

2010-05-18 Alejandro G. Castro <alex@igalia.com>

Unreviewed, skip test.

Skipping fast/workers/storage
https://bugs.webkit.org/show_bug.cgi?id=39346

  • platform/gtk/Skipped:
23:30 Changeset [59747] by abarth@webkit.org

2010-05-18 Adam Barth <abarth@webkit.org>

Reviewed by Eric Seidel.

Make the HTML5 parser correctly parse <div>Hello</div>
https://bugs.webkit.org/show_bug.cgi?id=39345

Again, this patch is covered by a large number of LayoutTests.

  • html/HTML5Lexer.cpp: (WebCore::HTML5Lexer::HTML5Lexer): (WebCore::HTML5Lexer::reset): (WebCore::HTML5Lexer::nextToken): (WebCore::HTML5Lexer::emitCommentToken): (WebCore::HTML5Lexer::emitCharacter): (WebCore::HTML5Lexer::emitCurrentTagToken):
  • html/HTML5Lexer.h:
  • html/HTML5Token.h: (WebCore::HTML5Token::beginCharacter): (WebCore::HTML5Token::appendToCharacter): (WebCore::HTML5Token::characters):
  • html/HTML5Tokenizer.cpp: (WebCore::convertToOldStyle):
23:04 Changeset [59746] by barraclough@apple.com

Bug 39343 - Dynamically generate a native call thunk per NativeFunction

Reviewed by Geoff Garen.

https://bugs.webkit.org/show_bug.cgi?id=39252 regressed performance on i386,
by adding an extra indirection to making a native call. By introducing per-
NativeFunction thunks we can hard code the function pointer into the thunk
so that it need not be loaded from the callee.

  • jit/JIT.h:

(JSC::JIT::compileCTINativeCall):

  • jit/JITOpcodes.cpp:

(JSC::JIT::privateCompileCTINativeCall):

  • jit/JITOpcodes32_64.cpp:

(JSC::JIT::privateCompileCTINativeCall):

  • jit/JITPropertyAccess.cpp:

(JSC::JIT::emitSlow_op_get_by_val):

  • jit/JITPropertyAccess32_64.cpp:

(JSC::JIT::emitSlow_op_get_by_val):

  • jit/JITStubs.cpp:

(JSC::JITThunks::ctiStub):
(JSC::JITThunks::hostFunctionStub):

  • jit/JITStubs.h:
  • jit/SpecializedThunkJIT.h:

(JSC::SpecializedThunkJIT::finalize):

  • jit/ThunkGenerators.cpp:

(JSC::charCodeAtThunkGenerator):
(JSC::charAtThunkGenerator):
(JSC::fromCharCodeThunkGenerator):
(JSC::sqrtThunkGenerator):
(JSC::powThunkGenerator):

  • runtime/JSFunction.cpp:

(JSC::JSFunction::JSFunction):

  • runtime/JSGlobalData.cpp:

(JSC::JSGlobalData::getHostFunction):

  • runtime/JSGlobalData.h:

(JSC::JSGlobalData::getCTIStub):

  • runtime/Lookup.cpp:

(JSC::setUpStaticFunctionSlot):

  • runtime/StringConstructor.cpp:

(JSC::StringConstructor::StringConstructor):

  • wtf/Platform.h:
22:30 Changeset [59745] by abarth@webkit.org

2010-05-18 Adam Barth <abarth@webkit.org>

Reviewed by Eric Seidel.

Make the HTML5 parser actually parse <div></div>
https://bugs.webkit.org/show_bug.cgi?id=39342

This patch is covered by every LayoutTest. Yes. All of them. :)

  • html/HTML5Lexer.cpp: (WebCore::toLowerCase): (WebCore::HTML5Lexer::HTML5Lexer): (WebCore::HTML5Lexer::nextToken): (WebCore::HTML5Lexer::emitCharacter):
  • html/HTML5Lexer.h:
  • html/HTML5Token.h: (WebCore::HTML5Token::HTML5Token): (WebCore::HTML5Token::beginStartTag): (WebCore::HTML5Token::beginEndTag): (WebCore::HTML5Token::appendToName): (WebCore::HTML5Token::type): (WebCore::HTML5Token::name): (WebCore::HTML5Token::selfClosing): (WebCore::HTML5Token::attrs):
  • html/HTML5Tokenizer.cpp: (WebCore::convertToOldStyle): (WebCore::HTML5Tokenizer::write):
22:27 Changeset [59744] by tkent@chromium.org

[DRT/Chromium] Fix a repaint issue and textarea tests
https://bugs.webkit.org/show_bug.cgi?id=39054

Reviewed by Dimitri Glazkov.

WebKit/chromium:

  • DEPS: Update to Chromium r47248 to use a fix for CommandLine assertion and textAreaResizeCorner.png
  • WebKit.gyp: Add textAreaResizeCorner.png as a Mac resource

WebKitTools:

  • DumpRenderTree/chromium/WebViewHost.cpp:

(WebViewHost::canvas): Remove m_paintRect initialization in canvas().

This line updated m_paintRect unexpectedly during paintRect().
We don't need to initialize m_paintRect because show() does it.

22:12 Changeset [59743] by tony@chromium.org

2010-05-18 Tony Chang <tony@chromium.org>

Reviewed by Kent Tamura.

[chromium] new-run-webkit-tests --use-drt should run on Linux
https://bugs.webkit.org/show_bug.cgi?id=37845

  • Scripts/webkitpy/layout_tests/port/chromium.py:
  • Scripts/webkitpy/layout_tests/port/chromium_linux.py:
  • Scripts/webkitpy/layout_tests/port/chromium_mac.py:
  • Scripts/webkitpy/layout_tests/port/chromium_unittest.py:
  • Scripts/webkitpy/layout_tests/port/chromium_win.py:
22:10 Changeset [59742] by ggaren@apple.com

JavaScriptCore: Simplified handling of 'arguments' -- 1.2% SunSpider speedup
https://bugs.webkit.org/show_bug.cgi?id=39200

Reviewed by Darin Adler.

Removed the reserved OptionalCalleeArguments slot from the CallFrame.
Now, slots for 'arguments' are allocated and initialized only by
functions that might need them.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::dump): Updated for new bytecode operands.

(JSC::CodeBlock::CodeBlock):

  • bytecode/CodeBlock.h:

(JSC::unmodifiedArgumentsRegister): Added a helper function for mapping
from the arguments register to its unmodified counterpart.

(JSC::CodeBlock::setArgumentsRegister):
(JSC::CodeBlock::argumentsRegister):
(JSC::CodeBlock::usesArguments): Changed from a "usesArguments" bool to
an optional int index representing the arguments register.

  • bytecode/Opcode.h: Updated for new bytecode operands.
  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::addVar): Factored out a helper function for
allocating an anonymous var.

(JSC::BytecodeGenerator::BytecodeGenerator): Merged / simplified some
arguments vs activation logic, and added code to allocate the arguments
registers when needed.

(JSC::BytecodeGenerator::createArgumentsIfNecessary): Updated for new bytecode operands.

(JSC::BytecodeGenerator::emitCallEval): No need to create the arguments
object before calling eval; the activation object will lazily create the
arguments object if eval resolves it.

(JSC::BytecodeGenerator::emitReturn): Updated for new bytecode operands.

(JSC::BytecodeGenerator::emitPushScope):
(JSC::BytecodeGenerator::emitPushNewScope): Ditto emitCallEval.

  • bytecompiler/BytecodeGenerator.h:

(JSC::BytecodeGenerator::addVar): Factored out a helper function for
allocating an anonymous var.

(JSC::BytecodeGenerator::registerFor): No more need for special handling
of the arguments registers; they're allocated just like normal registers
now.

  • interpreter/CallFrame.h:

(JSC::ExecState::callerFrame):
(JSC::ExecState::init):

  • interpreter/CallFrameClosure.h:

(JSC::CallFrameClosure::resetCallFrame): Nixed optionalCalleeArguments.

  • interpreter/Interpreter.cpp:

(JSC::Interpreter::dumpRegisters):
(JSC::Interpreter::unwindCallFrame):
(JSC::Interpreter::privateExecute):
(JSC::Interpreter::retrieveArguments): Opcodes accessing 'arguments' now
take operands specifying registers, just like all other opcodes.
JSActivation::copyRegisters is no longer responsible for tearing off the
arguments object; instead, the VM is responsible for both.

Also, a behavior change: Each access to f.arguments creates a new object,
unless f itself uses 'arguments'. This matches Chrome, and is necessary
for the optimization. f.arguments is a nonstandard, deprecated feature,
so high fidelity to a given implementation is not necessarily a goal.
Also, as illustrated by the new test case, the identity of f.arguments
has been broken since 2008, except in the case where f itself accesses
f.arguments -- but nobody seemed to notice. So, hopefully this change won't
break the web.

  • interpreter/Register.h: Nixed the special arguments accessor. It's no

longer needed.

  • interpreter/RegisterFile.h:

(JSC::RegisterFile::):

  • jit/JITCall.cpp:

(JSC::JIT::compileOpCallInitializeCallFrame):
(JSC::JIT::compileOpCall):

  • jit/JITOpcodes.cpp:

(JSC::JIT::emit_op_tear_off_activation):
(JSC::JIT::emit_op_tear_off_arguments):
(JSC::JIT::emit_op_create_arguments):
(JSC::JIT::emit_op_init_arguments):

  • jit/JITOpcodes32_64.cpp:

(JSC::JIT::emit_op_tear_off_activation):
(JSC::JIT::emit_op_tear_off_arguments):
(JSC::JIT::emit_op_create_arguments):
(JSC::JIT::emit_op_init_arguments): The actual optimization: Removed
OptionalCalleeArguments from the callframe slot. Now, it doesn't need
to be initialized for most calls.

  • jit/JITStubs.cpp:

(JSC::DEFINE_STUB_FUNCTION):

  • jit/JITStubs.h:

(JSC::): Updated stubs to support arbitrary 'arguments' registers,
instead of hard-coding something in the call frame.

  • runtime/Arguments.h:

(JSC::JSActivation::copyRegisters): Removed some obfuscatory abstraction.

  • runtime/Executable.h:

(JSC::FunctionExecutable::generatedByteCode): Added a helper for accessing
the 'arguments' register. In a future patch, that kind of data should
probably move out of CodeBlock and into Executable.

  • runtime/JSActivation.cpp:

(JSC::JSActivation::getOwnPropertySlot):
(JSC::JSActivation::argumentsGetter):

  • runtime/JSActivation.h: Simplified / fixed access to 'arguments' via

the activation object. It now implements the same behavior implemented
by optimized variable access in the VM. This simplifies some other
things, too -- like eval code generation.

LayoutTests: Simplified handling of 'arguments' -- 1.2% SunSpider speedup
https://bugs.webkit.org/show_bug.cgi?id=39200

Reviewed by Darin Adler.

  • fast/js/function-dot-arguments-expected.txt:
  • fast/js/script-tests/function-dot-arguments.js:

(argumentsIdentity): Updated to match new behavior.

  • fast/js/function-dot-arguments2-expected.txt:
  • fast/js/function-dot-arguments2.html: New tests for some things that

weren't covered before.

  • fast/js/global-recursion-on-full-stack.html: Rejiggered the stack

usage in this test. Since stack usage is more efficient now, you
need a slightly different usage pattern to hit the exact thing this
test wanted to test.

  • fast/js/kde/script-tests/function_arguments.js:

(f): Updated to more specifically test what this was trying to test,
to avoid just testing the identity of f.arguments.

21:24 Changeset [59741] by tkent@chromium.org

Unreviewed test fix.

fast/css/pseudo-required-optional-unapplied.html failure with ENABLE_METER_TAG
https://bugs.webkit.org/show_bug.cgi?id=39341

Remove test elements at the end of the test because dumpAsText() output
for <meter> depends on ENABLE_METER_TAG.

  • fast/css/pseudo-required-optional-unapplied-expected.txt:
  • fast/css/pseudo-required-optional-unapplied.html:
  • platform/qt/Skipped:
20:54 Changeset [59740] by tkent@chromium.org

Unreviewed. Add pseudo-required-optional-unapplied.html to qt/Skipped.
https://bugs.webkit.org/show_bug.cgi?id=39341

20:30 Changeset [59739] by tony@chromium.org

2010-05-18 Tony Chang <tony@chromium.org>

Reviewed by Ojan Vafai.

REGRESSION: crash in WebCore::CompositeEditCommand::splitTreeToNode when indenting in an empty li
https://bugs.webkit.org/show_bug.cgi?id=38232

  • editing/execCommand/crash-indenting-list-item-expected.txt: Added.
  • editing/execCommand/crash-indenting-list-item.html: Added.

2010-05-18 Tony Chang <tony@chromium.org>

Reviewed by Ojan Vafai.

REGRESSION: crash in WebCore::CompositeEditCommand::splitTreeToNode when indenting in an empty li
https://bugs.webkit.org/show_bug.cgi?id=38232

Test: editing/execCommand/crash-indenting-list-item.html

  • editing/IndentOutdentCommand.cpp: (WebCore::IndentOutdentCommand::tryIndentingAsListItem): (WebCore::IndentOutdentCommand::indentIntoBlockquote):
20:15 Changeset [59738] by tkent@chromium.org

':optional' pseudo selector should not be applied to <keygen> and <progress>
https://bugs.webkit.org/show_bug.cgi?id=39292

Reviewed by Darin Adler.

WebCore:

Test: fast/css/pseudo-required-optional-unapplied.html

  • html/HTMLKeygenElement.h:

(WebCore::HTMLKeygenElement::isOptionalFormControl):

Add isOptionalFormControl() returning false.
HTMLKeygenElement inherits HTMLSelectElement, which should return true
for isOptionalFormControl(). However, <keygen> is not :optional
according to the standard.

  • html/HTMLProgressElement.h: Remove isOptionalFormControl().

LayoutTests:

Add a test for non-optional form elements.

  • fast/css/pseudo-required-optional-unapplied-expected.txt: Added.
  • fast/css/pseudo-required-optional-unapplied.html: Added.
19:59 Changeset [59737] by tkent@chromium.org

2010-05-18 Kent Tamura <tkent@chromium.org>

Reviewed by Dimitri Glazkov.

[DRT/Chromium] Fix some initialization/reset issues
https://bugs.webkit.org/show_bug.cgi?id=39281

  • DumpRenderTree/chromium/LayoutTestController.cpp: (LayoutTestController::reset): Reset m_userStyleSheetLocation.
  • DumpRenderTree/chromium/LayoutTestController.h: Remove unused variable, m_workQueueFrozen. (LayoutTestController::WorkQueue::WorkQueue): Initialize m_frozen.
  • DumpRenderTree/chromium/TestShell.cpp: (TestShell::resetTestController): Reset WebSettings too.
19:57 Changeset [59736] by abarth@webkit.org

2010-05-18 Adam Barth <abarth@webkit.org>

Reviewed by Eric Seidel.

Implement the DOCTYPE states for the HTML5 lexer
https://bugs.webkit.org/show_bug.cgi?id=39335

  • html/HTML5Lexer.cpp: (WebCore::HTML5Lexer::nextToken): (WebCore::emitCurrentDoctypeToken):
  • html/HTML5Lexer.h:
19:33 Changeset [59735] by tony@chromium.org

2010-05-18 Tony Chang <tony@chromium.org>

Reviewed by Ojan Vafai.

[chromium] ignore IME events if the keydown event was prevented
https://bugs.webkit.org/show_bug.cgi?id=37692

A manual test to verify the IME behavior since the existing methods of
textInputController test at a lower level than the fix.

  • manual-tests/ime-keydown-preventdefault.html: Added.

2010-05-18 Tony Chang <tony@chromium.org>

Reviewed by Ojan Vafai.

[chromium] ignore IME events if the keydown event was prevented
https://bugs.webkit.org/show_bug.cgi?id=37692

  • src/WebViewImpl.cpp: (WebKit::WebViewImpl::handleCompositionEvent):
19:26 Changeset [59734] by weinig@apple.com

Fix the build for platforms that don't always include UnusedParam.h

  • dom/Attribute.cpp:
19:24 Changeset [59733] by morrita@google.com

2010-05-18 MORITA Hajime <morrita@google.com>

Reviewed by Kent Tamura.

[Chromium] Windows: Determinate progress bar should have glossy overlay
https://bugs.webkit.org/show_bug.cgi?id=39269

  • Moved animation code from RenderThemeChromiumWin to chromium tree because it should be behind the theme implementation, which lives in chromium tree.
  • Passed current time to the bridge, which will be used to compute the state of the theme animation.

No new tests, animation effect can be confirmed only manually.

  • platform/chromium/ChromiumBridge.h:
  • rendering/RenderProgress.h: (WebCore::RenderProgress::animationStartTime): Added.
  • rendering/RenderThemeChromiumWin.cpp: (WebCore::RenderThemeChromiumWin::animationDurationForProgressBar): (WebCore::RenderThemeChromiumWin::paintProgressBar):

2010-05-18 MORITA Hajime <morrita@google.com>

Reviewed by Kent Tamura.

[Chromium] Windows: Determinate progress bar should have glossy overlay
https://bugs.webkit.org/show_bug.cgi?id=39269

Changed WebThemeEngine::drawProgressBar() signature to delegate
theme implementation detail to the engine.
Chromium side will come to http://crbug.com/44430.

No new tests, animation effect can be confirmed only manually.

  • public/WebThemeEngine.h: (WebKit::WebThemeEngine::paintProgressBar):
  • src/ChromiumBridge.cpp: (WebCore::ChromiumBridge::paintProgressBar):
19:18 QtWebKitBackportingFixes edited by laszlo.1.gombos@nokia.com
(diff)
19:12 Changeset [59732] by weinig@apple.com

Fix release build.

  • dom/Attribute.cpp:

(WebCore::Attribute::unbindAttr):

18:56 Changeset [59731] by weinig@apple.com

Move Attr pointer from Attribute to a global HashMap.
https://bugs.webkit.org/show_bug.cgi?id=39337
<rdar://problem/8001168>

Reviewed by Maciej Stachowiak.

Shaves another word off of Attribute.

  • dom/Attr.cpp:

(WebCore::Attr::Attr):
(WebCore::Attr::~Attr):

  • dom/Attribute.cpp:

(WebCore::attributeAttrMap):
(WebCore::Attribute::attr):
(WebCore::Attribute::createAttrIfNeeded):
(WebCore::Attribute::bindAttr):
(WebCore::Attribute::unbindAttr):

  • dom/Attribute.h:

(WebCore::Attribute::Attribute):

18:52 Changeset [59730] by jamesr@google.com

2010-05-18 James Robinson <jamesr@chromium.org>

Unreviewed.

Add leopard-specific pixel results for more tests that need them
https://bugs.webkit.org/show_bug.cgi?id=39325

This adds new Leopard baselines for all tests that currently
pass with tolerance=0 on Snow Leopard but fail on Leopard
with an image diff of <= 0.1%. These tests previously had
expectations in platform/mac that were Snow Leopard specific.

  • platform/mac-leopard/animations: Added.
  • platform/mac-leopard/animations/3d: Added.
  • platform/mac-leopard/animations/3d/change-transform-in-end-event-expected.checksum: Added.
  • platform/mac-leopard/animations/3d/change-transform-in-end-event-expected.png: Added.
  • platform/mac-leopard/compositing/animation: Added.
  • platform/mac-leopard/compositing/animation/state-at-end-event-transform-layer-expected.checksum: Added.
  • platform/mac-leopard/compositing/animation/state-at-end-event-transform-layer-expected.png: Added.
  • platform/mac-leopard/compositing/compositing-visible-descendant-expected.checksum: Added.
  • platform/mac-leopard/compositing/compositing-visible-descendant-expected.png: Added.
  • platform/mac-leopard/compositing/geometry/abs-position-inside-opacity-expected.checksum: Added.
  • platform/mac-leopard/compositing/geometry/abs-position-inside-opacity-expected.png: Added.
  • platform/mac-leopard/compositing/geometry/fixed-position-expected.checksum: Added.
  • platform/mac-leopard/compositing/geometry/fixed-position-expected.png: Added.
  • platform/mac-leopard/compositing/geometry/horizontal-scroll-composited-expected.checksum: Added.
  • platform/mac-leopard/compositing/geometry/horizontal-scroll-composited-expected.png: Added.
  • platform/mac-leopard/compositing/geometry/partial-layout-update-expected.checksum: Added.
  • platform/mac-leopard/compositing/geometry/partial-layout-update-expected.png: Added.
  • platform/mac-leopard/compositing/geometry/transfrom-origin-on-zero-size-layer-expected.checksum: Added.
  • platform/mac-leopard/compositing/geometry/transfrom-origin-on-zero-size-layer-expected.png: Added.
  • platform/mac-leopard/compositing/geometry/vertical-scroll-composited-expected.checksum: Added.
  • platform/mac-leopard/compositing/geometry/vertical-scroll-composited-expected.png: Added.
  • platform/mac-leopard/compositing/iframes/iframe-copy-on-scroll-expected.checksum: Added.
  • platform/mac-leopard/compositing/iframes/iframe-copy-on-scroll-expected.png: Added.
  • platform/mac-leopard/compositing/masks: Added.
  • platform/mac-leopard/compositing/masks/direct-image-mask-expected.checksum: Added.
  • platform/mac-leopard/compositing/masks/direct-image-mask-expected.png: Added.
  • platform/mac-leopard/compositing/overflow/fixed-position-ancestor-clip-expected.checksum: Added.
  • platform/mac-leopard/compositing/overflow/fixed-position-ancestor-clip-expected.png: Added.
  • platform/mac-leopard/compositing/reflections/reflection-in-composited-expected.checksum: Added.
  • platform/mac-leopard/compositing/reflections/reflection-in-composited-expected.png: Added.
  • platform/mac-leopard/compositing/reflections/reflection-ordering-expected.checksum: Added.
  • platform/mac-leopard/compositing/reflections/reflection-ordering-expected.png: Added.
  • platform/mac-leopard/compositing/repaint/content-into-overflow-expected.checksum: Added.
  • platform/mac-leopard/compositing/repaint/content-into-overflow-expected.png: Added.
  • platform/mac-leopard/compositing/repaint/layer-repaint-expected.checksum: Added.
  • platform/mac-leopard/compositing/repaint/layer-repaint-expected.png: Added.
  • platform/mac-leopard/compositing/repaint/opacity-between-absolute-expected.checksum: Added.
  • platform/mac-leopard/compositing/repaint/opacity-between-absolute-expected.png: Added.
  • platform/mac-leopard/compositing/repaint/opacity-between-absolute2-expected.checksum: Added.
  • platform/mac-leopard/compositing/repaint/opacity-between-absolute2-expected.png: Added.
  • platform/mac-leopard/fast/borders: Added.
  • platform/mac-leopard/fast/borders/svg-as-border-image-2-expected.checksum: Added.
  • platform/mac-leopard/fast/borders/svg-as-border-image-2-expected.png: Added.
  • platform/mac-leopard/fast/borders/svg-as-border-image-expected.checksum: Added.
  • platform/mac-leopard/fast/borders/svg-as-border-image-expected.png: Added.
  • platform/mac-leopard/fast/forms/placeholder-stripped-expected.checksum: Added.
  • platform/mac-leopard/fast/forms/placeholder-stripped-expected.png: Added.
  • platform/mac-leopard/fast/multicol: Added.
  • platform/mac-leopard/fast/multicol/column-count-with-rules-expected.checksum: Added.
  • platform/mac-leopard/fast/multicol/column-count-with-rules-expected.png: Added.
  • platform/mac-leopard/media/controls-strict-expected.checksum:
  • platform/mac-leopard/media/controls-strict-expected.png:
  • platform/mac-leopard/media/video-display-toggle-expected.checksum:
  • platform/mac-leopard/media/video-display-toggle-expected.png:
  • platform/mac-leopard/media/video-replaces-poster-expected.checksum: Added.
  • platform/mac-leopard/media/video-replaces-poster-expected.png: Added.
18:32 Changeset [59729] by jpetsovits@rim.com

2010-05-18 Jakob Petsovits <jpetsovits@rim.com>

Unreviewed, forgot to svn add source file in r59619.
http://trac.webkit.org/changeset/59619

  • platform/image-decoders/openvg: Added.
  • platform/image-decoders/openvg/ImageDecoderOpenVG.cpp: Added. (WebCore::RGBA32Buffer::asNewNativeImage):
18:16 Changeset [59728] by mrobinson@webkit.org

2010-05-18 Martin Robinson <mrobinson@igalia.com>

Not reviewed.

[GTK] fast/dom/Geolocation/enabled.html is crashing on the bots
https://bugs.webkit.org/show_bug.cgi?id=39326

  • platform/gtk/Skipped: Skip another test causing crashes.
18:05 Changeset [59727] by yaar@chromium.org

2010-05-18 Yaar Schnitman <yaar@chromium.org>

Unreviewed, rolling out r59693.
http://trac.webkit.org/changeset/59693
https://bugs.webkit.org/show_bug.cgi?id=37815

Broke GTK Release

  • Android.jscbindings.mk:
  • CMakeLists.txt:
  • GNUmakefile.am:
  • WebCore.gypi:
  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSBindingsAllInOne.cpp:
  • bindings/js/JSCallbackData.cpp: (WebCore::JSCallbackData::invokeCallback):
  • bindings/js/JSEventListener.cpp: (WebCore::JSEventListener::handleEvent):
  • bindings/js/JSInjectedScriptHostCustom.cpp: (WebCore::InjectedScriptHost::createInjectedScript):
  • bindings/js/JSMainThreadExecState.cpp: Removed.
  • bindings/js/JSMainThreadExecState.h: Removed.
  • bindings/js/ScheduledAction.cpp: (WebCore::ScheduledAction::executeFunctionInContext): (WebCore::ScheduledAction::execute):
  • bindings/js/ScheduledAction.h:
  • bindings/js/ScriptController.cpp: (WebCore::ScriptController::evaluateInWorld):
  • bindings/js/ScriptController.h:
  • bindings/js/ScriptFunctionCall.cpp: (WebCore::ScriptFunctionCall::call):
  • bindings/objc/ObjCEventListener.mm:
  • bindings/objc/WebScriptObject.mm: (-[WebScriptObject callWebScriptMethod:withArguments:]): (-[WebScriptObject evaluateWebScript:]):
  • bindings/scripts/CodeGeneratorObjC.pm:
  • bindings/scripts/test/ObjC/DOMTestCallback.mm: (-[DOMTestCallback callbackWithClass1Param:]): (-[DOMTestCallback callbackWithClass2Param:strArg:]): (-[DOMTestCallback callbackWithNonBoolReturnType:]): (-[DOMTestCallback customCallback:class6Param:]):
  • bindings/scripts/test/ObjC/DOMTestInterface.mm:
  • bindings/scripts/test/ObjC/DOMTestObj.mm: (-[DOMTestObj readOnlyIntAttr]): (-[DOMTestObj readOnlyStringAttr]): (-[DOMTestObj readOnlyTestObjAttr]): (-[DOMTestObj intAttr]): (-[DOMTestObj setIntAttr:]): (-[DOMTestObj longLongAttr]): (-[DOMTestObj setLongLongAttr:]): (-[DOMTestObj unsignedLongLongAttr]): (-[DOMTestObj setUnsignedLongLongAttr:]): (-[DOMTestObj stringAttr]): (-[DOMTestObj setStringAttr:]): (-[DOMTestObj testObjAttr]): (-[DOMTestObj setTestObjAttr:]): (-[DOMTestObj attrWithException]): (-[DOMTestObj setAttrWithException:]): (-[DOMTestObj attrWithSetterException]): (-[DOMTestObj setAttrWithSetterException:]): (-[DOMTestObj attrWithGetterException]): (-[DOMTestObj setAttrWithGetterException:]): (-[DOMTestObj customAttr]): (-[DOMTestObj setCustomAttr:]): (-[DOMTestObj scriptStringAttr]): (-[DOMTestObj voidMethod]): (-[DOMTestObj voidMethodWithArgs:strArg:objArg:]): (-[DOMTestObj intMethod]): (-[DOMTestObj intMethodWithArgs:strArg:objArg:]): (-[DOMTestObj objMethod]): (-[DOMTestObj objMethodWithArgs:strArg:objArg:]): (-[DOMTestObj methodThatRequiresAllArgs:objArg:]): (-[DOMTestObj methodThatRequiresAllArgsAndThrows:objArg:]): (-[DOMTestObj serializedValue:]): (-[DOMTestObj methodWithException]): (-[DOMTestObj customMethod]): (-[DOMTestObj customMethodWithArgs:strArg:objArg:]): (-[DOMTestObj customArgsAndException:]): (-[DOMTestObj addEventListener:listener:useCapture:]): (-[DOMTestObj removeEventListener:listener:useCapture:]): (-[DOMTestObj withDynamicFrame]): (-[DOMTestObj withDynamicFrameAndArg:]): (-[DOMTestObj withDynamicFrameAndOptionalArg:optionalArg:]): (-[DOMTestObj withDynamicFrameAndUserGesture:]): (-[DOMTestObj withDynamicFrameAndUserGestureASAD:optionalArg:]): (-[DOMTestObj withScriptStateVoid]): (-[DOMTestObj withScriptStateObj]): (-[DOMTestObj withScriptStateVoidException]): (-[DOMTestObj withScriptStateObjException]): (-[DOMTestObj methodWithOptionalArg:]): (-[DOMTestObj methodWithNonOptionalArgAndOptionalArg:opt:]): (-[DOMTestObj methodWithNonOptionalArgAndTwoOptionalArgs:opt1:opt2:]):
  • bindings/v8/ScriptController.cpp:
  • bindings/v8/ScriptController.h:
  • html/HTMLFrameElementBase.cpp: (WebCore::HTMLFrameElementBase::isURLAllowed):

2010-05-18 Yaar Schnitman <yaar@chromium.org>

Unreviewed, rolling out r59693.
http://trac.webkit.org/changeset/59693
https://bugs.webkit.org/show_bug.cgi?id=37815

Broke GTK Release

  • http/tests/security/xss-DENIED-iframe-src-alias-expected.txt:
  • http/tests/security/xss-DENIED-iframe-src-alias.html:
17:57 Changeset [59726] by abarth@webkit.org

2010-05-18 Adam Barth <abarth@webkit.org>

Reviewed by Eric Seidel.

Implement comment states for HTML5 lexer
https://bugs.webkit.org/show_bug.cgi?id=39334

  • html/HTML5Lexer.cpp: (WebCore::HTML5Lexer::nextToken):
17:52 Changeset [59725] by dpranke@chromium.org

2010-05-18 Dirk Pranke <dpranke@chromium.org>

Reviewed by Ojan Vafai.

new-run-webkit-tests: implement '--reset-results' flag to complement
the '--new-baseline' flag. '--new-baseline' will always write the
results into the platform directory; '--reset-results' will update the
existing baseline wherever it happens to be. Both sets of behavior
are useful in different circumstances.

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

  • Scripts/webkitpy/layout_tests/data/image/canvas-bg.html: Added.
  • Scripts/webkitpy/layout_tests/data/image/canvas-zoom-expected.checksum: Added.
  • Scripts/webkitpy/layout_tests/data/image/canvas-zoom-expected.png: Added.
  • Scripts/webkitpy/layout_tests/data/image/canvas-zoom-expected.txt: Added.
  • Scripts/webkitpy/layout_tests/data/image/canvas-zoom.html: Added.
  • Scripts/webkitpy/layout_tests/data/misc/crash-expected.txt: Added.
  • Scripts/webkitpy/layout_tests/data/misc/crash.html: Added.
  • Scripts/webkitpy/layout_tests/data/misc/missing-expectation.html: Added.
  • Scripts/webkitpy/layout_tests/data/misc/passing-expected.txt: Added.
  • Scripts/webkitpy/layout_tests/data/misc/passing.html: Added.
  • Scripts/webkitpy/layout_tests/data/platform/test/image/canvas-bg-expected.checksum: Added.
  • Scripts/webkitpy/layout_tests/data/platform/test/image/canvas-bg-expected.png: Added.
  • Scripts/webkitpy/layout_tests/data/platform/test/image/canvas-bg-expected.txt: Added.
  • Scripts/webkitpy/layout_tests/data/platform/test/test_expectations.txt: Added.
  • Scripts/webkitpy/layout_tests/data/text/article-element-expected.txt: Added.
  • Scripts/webkitpy/layout_tests/data/text/article-element.html: Added.
  • Scripts/webkitpy/layout_tests/layout_package/test_expectations_unittest.py:
  • Scripts/webkitpy/layout_tests/port/test.py:
  • Scripts/webkitpy/layout_tests/run_webkit_tests_unittest.py:
  • Scripts/webkitpy/layout_tests/layout_package/dump_render_tree_thread.py:
  • Scripts/webkitpy/layout_tests/layout_package/printing_unittest.py:
  • Scripts/webkitpy/layout_tests/run_webkit_tests.py:
  • Scripts/webkitpy/layout_tests/test_types/image_diff.py:
  • Scripts/webkitpy/layout_tests/test_types/test_type_base.py:
  • Scripts/webkitpy/layout_tests/test_types/text_diff.py:
  • Scripts/webkitpy/layout_tests/port/test.py:
  • Scripts/webkitpy/layout_tests/port/dryrun.py:
17:50 QtWebKitBackportingFixes edited by laszlo.1.gombos@nokia.com
(diff)
17:42 Changeset [59724] by andersca@apple.com

2010-05-18 Anders Carlsson <andersca@apple.com>

Reviewed by Sam Weinig.

Move all member variables from MappedAttribute to Attribute.
https://bugs.webkit.org/show_bug.cgi?id=39336
<rdar://problem/8000853>

This saves one word because we no longer have any virtual member functions in Attribute, and
thus no vtable pointer.


I plan to remove MappedAttribute altogether in a subsequent commit.

  • Android.mk:
  • GNUmakefile.am:
  • WebCore.gypi:
  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::styleForElement):
  • dom/Attribute.cpp: (WebCore::Attribute::clone):
  • dom/Attribute.h: (WebCore::Attribute::create): (WebCore::Attribute::style): (WebCore::Attribute::decl): (WebCore::Attribute::setDecl): (WebCore::Attribute::isMappedAttribute): (WebCore::Attribute::Attribute):
  • dom/MappedAttribute.cpp: Removed.
  • dom/MappedAttribute.h: (WebCore::MappedAttribute::create): (WebCore::MappedAttribute::MappedAttribute): (WebCore::toMappedAttribute):
  • dom/NamedMappedAttrMap.cpp: (WebCore::NamedMappedAttrMap::declCount): (WebCore::NamedMappedAttrMap::mapsEquivalent):
  • dom/StyledElement.cpp: (WebCore::StyledElement::attributeChanged):
  • svg/SVGSVGElement.cpp: (WebCore::updateCSSForAttribute):
  • svg/SVGStyledElement.cpp: (WebCore::SVGStyledElement::getPresentationAttribute):
17:36 Changeset [59723] by jamesr@google.com

2010-05-18 James Robinson <jamesr@chromium.org>

Unreviewed.

Add leopard-specific pixel results for tests that need them
https://bugs.webkit.org/show_bug.cgi?id=39325

This adds new Leopard baselines for all tests that currently
pass with tolerance=0 on Snow Leopard but fail on Leopard
with an image diff of <= 0.01%. These tests previously had
expectations in platform/mac that were Snow Leopard specific.

  • platform/mac-leopard/compositing/color-matching: Added.
  • platform/mac-leopard/compositing/color-matching/pdf-image-match-expected.checksum: Added.
  • platform/mac-leopard/compositing/color-matching/pdf-image-match-expected.png: Added.
  • platform/mac-leopard/compositing/reflections: Added.
  • platform/mac-leopard/compositing/reflections/simple-composited-reflections-expected.checksum: Added.
  • platform/mac-leopard/compositing/reflections/simple-composited-reflections-expected.png: Added.
  • platform/mac-leopard/compositing/repaint/overflow-into-content-expected.checksum: Added.
  • platform/mac-leopard/compositing/repaint/overflow-into-content-expected.png: Added.
  • platform/mac-leopard/editing/pasteboard: Added.
  • platform/mac-leopard/editing/pasteboard/drag-image-to-contenteditable-in-iframe-expected.checksum: Added.
  • platform/mac-leopard/editing/pasteboard/drag-image-to-contenteditable-in-iframe-expected.png: Added.
  • platform/mac-leopard/fast/css: Added.
  • platform/mac-leopard/fast/css/pseudo-cache-stale-expected.checksum: Added.
  • platform/mac-leopard/fast/css/pseudo-cache-stale-expected.png: Added.
  • platform/mac-leopard/fast/frames: Added.
  • platform/mac-leopard/fast/frames/take-focus-from-iframe-expected.checksum: Added.
  • platform/mac-leopard/fast/frames/take-focus-from-iframe-expected.png: Added.
  • platform/mac-leopard/fast/repaint: Added.
  • platform/mac-leopard/fast/repaint/fixed-child-move-after-scroll-expected.checksum: Added.
  • platform/mac-leopard/fast/repaint/fixed-child-move-after-scroll-expected.png: Added.
  • platform/mac-leopard/fast/repaint/fixed-child-of-fixed-move-after-scroll-expected.checksum: Added.
  • platform/mac-leopard/fast/repaint/fixed-child-of-fixed-move-after-scroll-expected.png: Added.
  • platform/mac-leopard/fast/repaint/fixed-child-of-transformed-move-after-scroll-expected.checksum: Added.
  • platform/mac-leopard/fast/repaint/fixed-child-of-transformed-move-after-scroll-expected.png: Added.
  • platform/mac-leopard/fast/repaint/fixed-move-after-scroll-expected.checksum: Added.
  • platform/mac-leopard/fast/repaint/fixed-move-after-scroll-expected.png: Added.
  • platform/mac-leopard/fast/text/format-control-expected.checksum: Added.
  • platform/mac-leopard/fast/text/format-control-expected.png: Added.
  • platform/mac-leopard/plugins: Added.
  • platform/mac-leopard/plugins/qt-qwidget-plugin-expected.checksum: Added.
  • platform/mac-leopard/plugins/qt-qwidget-plugin-expected.png: Added.
  • platform/mac-leopard/transforms/svg-vs-css-expected.checksum: Added.
  • platform/mac-leopard/transforms/svg-vs-css-expected.png: Added.
  • platform/mac-leopard/transitions: Added.
  • platform/mac-leopard/transitions/move-after-transition-expected.checksum: Added.
  • platform/mac-leopard/transitions/move-after-transition-expected.png: Added.
17:36 Changeset [59722] by tony@chromium.org

2010-05-18 Tony Chang <tony@chromium.org>

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=24943
Command-B and Command-I do not generate keydown events in contentEditable regions.

  • manual-tests/style-keypress-events.html: Added.

2010-05-18 Tony Chang <tony@chromium.org>

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=24943
Command-B and Command-I do not generate keydown events in contentEditable regions.

Manual test because performKeyEquivalent is not called by DRT.

Test: manual-tests/style-keypress-events.html

  • WebView/WebHTMLView.mm: (-[WebHTMLView performKeyEquivalent:]): Move style key handling until after webcore gets a chance to handle the event
17:31 Changeset [59721] by abarth@webkit.org

2010-05-18 Adam Barth <abarth@webkit.org>

Reviewed by Eric Seidel.

Add more state to the HTML5 lexer
https://bugs.webkit.org/show_bug.cgi?id=39333

This code is just transliteration from the spec.

  • html/HTML5Lexer.cpp: (WebCore::HTML5Lexer::HTML5Lexer): (WebCore::HTML5Lexer::nextToken):
  • html/HTML5Lexer.h:
16:55 Changeset [59720] by abarth@webkit.org

2010-05-18 Adam Barth <abarth@webkit.org>

Reviewed by Eric Seidel.

Implement two more lexer states
https://bugs.webkit.org/show_bug.cgi?id=39298

No tests because Eric is still working on wiring up the lexer to the
test harness.

  • html/HTML5Lexer.cpp: (WebCore::HTML5Lexer::nextToken): (WebCore::HTML5Lexer::emitParseError): (WebCore::HTML5Lexer::emitCurrentTagToken):
  • html/HTML5Lexer.h:
16:53 Changeset [59719] by beidson@apple.com

Repro crash with many Google image search results
<rdar://problem/7685669> and https://bugs.webkit.org/show_bug.cgi?id=39323

Reviewed by Maciej Stachowiak.

WebCore:

When an iframe has a plugin resource as its src, that case bypassed the plugin sandboxing checks and continued to load
the data for the plugin resource. It handed that data off to a nonexistent Widget, causing a null deref and the crash.

By replacing PluginDocuments in sandboxes iframes with a new "SinkDocument" that just acts as a data sink, we prevent the
crash and also prevent actually loading the plugin binaries.

I filed https://bugs.webkit.org/show_bug.cgi?id=39330 to follow up and let us cancel the load as soon as we know we should.

Test: fast/loader/sandboxed-plugin-crash.html

  • CMakeLists.txt:
  • GNUmakefile.am:
  • WebCore.gypi:
  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • loader/DocumentWriter.cpp:

(WebCore::DocumentWriter::begin): If the created document is a PluginDocument and the plugin sandbox flag is set,

replace it with a SinkDocument.

  • loader/PluginDocument.h:

(WebCore::PluginDocument::isPluginDocument): Make public (it was already public at the Document.h level).

Add a simple document/tokenizer pair that simply presents a blank HTML document and acts as a data sink for whatever
data is handed to it:

  • loader/SinkDocument.cpp: Added.

(WebCore::SinkTokenizer::SinkTokenizer):
(WebCore::SinkTokenizer::write):
(WebCore::SinkTokenizer::isWaitingForScripts):
(WebCore::SinkTokenizer::wantsRawData):
(WebCore::SinkTokenizer::writeRawData):
(WebCore::SinkTokenizer::stopParsing):
(WebCore::SinkTokenizer::finish):
(WebCore::SinkDocument::SinkDocument):
(WebCore::SinkDocument::createTokenizer):

  • loader/SinkDocument.h: Added.

(WebCore::SinkDocument::create):

LayoutTests:

  • fast/loader/resources/test.swf: Copied from LayoutTests/fast/replaced/resources/test.swf.
  • fast/loader/sandboxed-plugin-crash-expected.txt: Added.
  • fast/loader/sandboxed-plugin-crash.html: Added.
15:53 Changeset [59718] by mrobinson@webkit.org

2010-05-18 Martin Robinson <mrobinson@igalia.com>

No review necessary.

[GTK] fast/dom/Geolocation/enabled.html is crashing on the bots
https://bugs.webkit.org/show_bug.cgi?id=39326

  • platform/gtk/Skipped: Skip the crashing tests.
15:47 Changeset [59717] by laszlo.1.gombos@nokia.com

2010-05-18 Laszlo Gombos <laszlo.1.gombos@nokia.com>

Symbian build fix.

[Qt] Updated the def file with new exports after r59335.

  • symbian/eabi/QtWebKitu.def:
15:38 Changeset [59716] by weinig@apple.com

https://bugs.webkit.org/show_bug.cgi?id=39321
Reduce the size of ListHashSets used by Document
<rdar://problem/7999388>

Reviewed by Anders Carlsson.

Reduce Membuster peak memory usage by ~450K by reducing the pool sizes
of the ListHashSets used by Document.

  • dom/Document.cpp:

(WebCore::Document::addStyleSheetCandidateNode):
(WebCore::Document::recalcStyleSelector):

  • dom/Document.h:
15:29 Changeset [59715] by jianli@chromium.org

Updated WebCore/Change to correct the bug link.

15:14 Changeset [59714] by mrobinson@webkit.org

2010-05-18 Martin Robinson <mrobinson@igalia.com>

Reviewed by Xan Lopez.

[GTK] DragClientGtk::startDrag leaks GdkEvents
https://bugs.webkit.org/show_bug.cgi?id=39322

  • WebCoreSupport/DragClientGtk.cpp: (WebKit::DragClient::startDrag): Properly clean up allocated GdkEvent.
14:59 Changeset [59713] by kenneth@webkit.org

Return null when creating an ImageBuffer failed, due to for
instance a nulled pixmap.

Rubberstamped by Simon Hausmann.

  • platform/graphics/qt/ImageBufferQt.cpp:

(WebCore::ImageBufferData::ImageBufferData):
(WebCore::ImageBuffer::ImageBuffer):

14:55 Changeset [59712] by jianli@chromium.org

Fix bug 39285: fast/files/file-reader.html is timing out on all mac bots.
https://bugs.webkit.org/show_bug.cgi?id=39135

Reviewed by Dmitry Titov.

WebCore:

The timeout is caused by 59659 that changed the GC timer to 0 and thus
triggered a bug in FileReader code. The fix is to add more states so
that hasPendingActivity() can do the check correctly.

  • html/FileReader.cpp:

(WebCore::FileReader::FileReader):
(WebCore::FileReader::hasPendingActivity):
(WebCore::FileReader::readInternal):
(WebCore::FileReader::terminate):
(WebCore::FileReader::didStart):
(WebCore::FileReader::didGetSize):
(WebCore::FileReader::didRead):
(WebCore::FileReader::didFinish):
(WebCore::FileReader::didFail):
(WebCore::FileReader::readyState):
(WebCore::FileReader::result):

  • html/FileReader.h:

(WebCore::FileReader::):

LayoutTests:

Re-enale the file reader test.

  • fast/files/file-reader-expected.txt:
  • fast/files/file-reader.html:
  • platform/mac/Skipped:
14:37 Changeset [59711] by simon.fraser@apple.com

2010-05-18 Simon Fraser <simon.fraser@apple.com>

Reviewed by Darin Adler.

Clean up GraphicsLayer naming code
https://bugs.webkit.org/show_bug.cgi?id=39316

Move code that generates a name for the GraphicsLayer (used in debug builds only) into
a new nameForLayer() method. Use it when naming the foreground layer.

  • rendering/RenderLayerBacking.cpp: (WebCore::RenderLayerBacking::createGraphicsLayer): (WebCore::RenderLayerBacking::updateForegroundLayer): (WebCore::RenderLayerBacking::nameForLayer):
  • rendering/RenderLayerBacking.h:
14:22 Changeset [59710] by mrowe@apple.com

Merge r59556.

14:22 Changeset [59709] by mrowe@apple.com

Merge r59495.

14:22 Changeset [59708] by mrowe@apple.com

Merge r59576.

14:22 Changeset [59707] by mrowe@apple.com

Merge r59486.

14:22 Changeset [59706] by mrowe@apple.com

Merge r59577.

14:22 Changeset [59705] by mrowe@apple.com

Merge r59610.

14:22 Changeset [59704] by mrowe@apple.com

Merge r59609.

14:22 Changeset [59703] by mrowe@apple.com

Merge r59516.

14:21 Changeset [59702] by mrowe@apple.com

Merge r59444.

14:21 Changeset [59701] by mrowe@apple.com

Merge r59443.

14:21 Changeset [59700] by mrowe@apple.com

Merge r59390.

14:21 Changeset [59699] by mrowe@apple.com

Merge r59591.

14:21 Changeset [59698] by mrowe@apple.com

Merge r59629.

14:21 Changeset [59697] by mrowe@apple.com

Merge r59583.

14:21 Changeset [59696] by mrowe@apple.com

Merge r59514.

14:21 Changeset [59695] by mrowe@apple.com

Merge r59587.

14:20 Changeset [59694] by mrowe@apple.com

Merge r59547.

14:15 Changeset [59693] by yaar@chromium.org

2010-05-18 Justin Schuh <jschuh@chromium.org>

Reviewed by Adam Barth.

Moving frame.src checks out of the bindings
https://bugs.webkit.org/show_bug.cgi?id=37815

Moved JavaScript frame.src checks out of bindings and into
HTMLFrameElementBase. Added main thread state stack to JavaScriptCore
so ExecState is available inside core DOM. Updated affected bindings
(except for GObject, which will need to be updated to avoid origin
failures inside native code).

  • Android.jscbindings.mk:
  • CMakeLists.txt:
  • GNUmakefile.am:
  • WebCore.gypi:
  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSBindingsAllInOne.cpp:
  • bindings/js/JSCallbackData.cpp: (WebCore::JSCallbackData::invokeCallback):
  • bindings/js/JSEventListener.cpp: (WebCore::JSEventListener::handleEvent):
  • bindings/js/JSInjectedScriptHostCustom.cpp: (WebCore::InjectedScriptHost::createInjectedScript):
  • bindings/js/JSMainThreadExecState.cpp: Added.
  • bindings/js/JSMainThreadExecState.h: Added. (WebCore::JSMainThreadExecState::currentState): (WebCore::JSMainThreadExecState::call): (WebCore::JSMainThreadExecState::evaluate): (WebCore::JSMainThreadExecState::JSMainThreadExecState): (WebCore::JSMainThreadExecState::~JSMainThreadExecState): (WebCore::JSMainThreadNullState::JSMainThreadNullState):
  • bindings/js/ScheduledAction.cpp: (WebCore::ScheduledAction::executeFunctionInContext): (WebCore::ScheduledAction::execute):
  • bindings/js/ScheduledAction.h:
  • bindings/js/ScriptController.cpp: (WebCore::ScriptController::evaluateInWorld): (WebCore::ScriptController::canAccessFromCurrentOrigin):
  • bindings/js/ScriptController.h:
  • bindings/js/ScriptFunctionCall.cpp: (WebCore::ScriptFunctionCall::call):
  • bindings/objc/ObjCEventListener.mm:
  • bindings/objc/WebScriptObject.mm: (-[WebScriptObject callWebScriptMethod:withArguments:]): (-[WebScriptObject evaluateWebScript:]):
  • bindings/scripts/CodeGeneratorObjC.pm:
  • bindings/scripts/test/ObjC/DOMTestCallback.mm: (-[DOMTestCallback callbackWithClass1Param:]): (-[DOMTestCallback callbackWithClass2Param:strArg:]): (-[DOMTestCallback callbackWithNonBoolReturnType:]): (-[DOMTestCallback customCallback:class6Param:]):
  • bindings/scripts/test/ObjC/DOMTestInterface.mm:
  • bindings/scripts/test/ObjC/DOMTestObj.mm: (-[DOMTestObj readOnlyIntAttr]): (-[DOMTestObj readOnlyStringAttr]): (-[DOMTestObj readOnlyTestObjAttr]): (-[DOMTestObj intAttr]): (-[DOMTestObj setIntAttr:]): (-[DOMTestObj longLongAttr]): (-[DOMTestObj setLongLongAttr:]): (-[DOMTestObj unsignedLongLongAttr]): (-[DOMTestObj setUnsignedLongLongAttr:]): (-[DOMTestObj stringAttr]): (-[DOMTestObj setStringAttr:]): (-[DOMTestObj testObjAttr]): (-[DOMTestObj setTestObjAttr:]): (-[DOMTestObj attrWithException]): (-[DOMTestObj setAttrWithException:]): (-[DOMTestObj attrWithSetterException]): (-[DOMTestObj setAttrWithSetterException:]): (-[DOMTestObj attrWithGetterException]): (-[DOMTestObj setAttrWithGetterException:]): (-[DOMTestObj customAttr]): (-[DOMTestObj setCustomAttr:]): (-[DOMTestObj scriptStringAttr]): (-[DOMTestObj voidMethod]): (-[DOMTestObj voidMethodWithArgs:strArg:objArg:]): (-[DOMTestObj intMethod]): (-[DOMTestObj intMethodWithArgs:strArg:objArg:]): (-[DOMTestObj objMethod]): (-[DOMTestObj objMethodWithArgs:strArg:objArg:]): (-[DOMTestObj methodThatRequiresAllArgs:objArg:]): (-[DOMTestObj methodThatRequiresAllArgsAndThrows:objArg:]): (-[DOMTestObj serializedValue:]): (-[DOMTestObj methodWithException]): (-[DOMTestObj customMethod]): (-[DOMTestObj customMethodWithArgs:strArg:objArg:]): (-[DOMTestObj customArgsAndException:]): (-[DOMTestObj addEventListener:listener:useCapture:]): (-[DOMTestObj removeEventListener:listener:useCapture:]): (-[DOMTestObj withDynamicFrame]): (-[DOMTestObj withDynamicFrameAndArg:]): (-[DOMTestObj withDynamicFrameAndOptionalArg:optionalArg:]): (-[DOMTestObj withDynamicFrameAndUserGesture:]): (-[DOMTestObj withDynamicFrameAndUserGestureASAD:optionalArg:]): (-[DOMTestObj withScriptStateVoid]): (-[DOMTestObj withScriptStateObj]): (-[DOMTestObj withScriptStateVoidException]): (-[DOMTestObj withScriptStateObjException]): (-[DOMTestObj methodWithOptionalArg:]): (-[DOMTestObj methodWithNonOptionalArgAndOptionalArg:opt:]): (-[DOMTestObj methodWithNonOptionalArgAndTwoOptionalArgs:opt1:opt2:]):
  • bindings/v8/ScriptController.cpp: (WebCore::ScriptController::canAccessFromCurrentOrigin):
  • bindings/v8/ScriptController.h:
  • html/HTMLFrameElementBase.cpp: (WebCore::HTMLFrameElementBase::isURLAllowed):

2010-05-18 Justin Schuh <jschuh@chromium.org>

Reviewed by Adam Barth.

Moving frame.src checks out of the bindings
https://bugs.webkit.org/show_bug.cgi?id=37815

  • http/tests/security/xss-DENIED-iframe-src-alias-expected.txt:
  • http/tests/security/xss-DENIED-iframe-src-alias.html:
14:11 Changeset [59692] by crogers@google.com

Add initial implementation for JavascriptAudioSourceNode

  • this is very experimental to get us quickly up and running
  • fix AudioContext to not use static global for timing!
  • unfinished steps at getting V8 bindings working again
13:52 Changeset [59691] by atwilson@chromium.org

Unreviewed: Speculative build fix for Chromium win.

  • platform/graphics/skia/SkiaFontWin.cpp: Properly set inlineCapacity.
13:39 Changeset [59690] by atwilson@chromium.org

Unreviewed fix for Chromium build break.

  • platform/graphics/skia/SkiaFontWin.cpp: Now set inlineCapacity param.
13:22 Changeset [59689] by dimich@chromium.org

DragData::asURL() shouldn't do file validity checks
https://bugs.webkit.org/show_bug.cgi?id=38711

Patch by Daniel Cheng <dcheng@chromium.org> on 2010-05-18
Reviewed by Darin Adler, Jian Li.

WebCore:

There's no point to trying to make sure the file is valid in
DragData::asURL(). It's better to ask for forgiveness than to ask for
permission, since asking for permission is prone to race conditions
and results in unnecessary I/O. Consumers of this function either:

  • need to verify the file exists themselves (e.g. the loader)
  • don't care about file validity (rich text drag-and-drop)
  • platform/chromium/DragDataChromium.cpp:

(WebCore::DragData::asURL):

WebKit/mac:

Change [NSPasteboard _web_bestURL] to still return a file URL for paths
that don't exist. Callers who care about the existence of the file or
whether or not it is a directory should check themselves when they
want to use the file. The directory check has been left in for now,
since the Mac implementation of ResourceHandle, which uses this function
indirectly via DragController::performDrag) handles directories somewhat
non-intuitively: it opens the parent directory in the Finder, rather
than opening the directory itself.

  • Misc/WebNSPasteboardExtras.mm:

(-[NSPasteboard _web_bestURL]):

LayoutTests:

Several layout tests depended on the fact that dropping a file would
never trigger navigation. This never happened to occur in the past,
since it just so happened that the filenames used in the tests never
resolved to files that exist. Since DragData::asURL() no longer tries
to verify file existence, the layout tests were updated to either
suppress navigation or log any navigation that should occur as part of
the test.

  • editing/pasteboard/file-input-files-access-expected.txt:
  • editing/pasteboard/script-tests/file-input-files-access.js:

(runTest.window.onbeforeunload):
(runTest):

  • http/tests/security/clipboard/script-tests/clipboard-file-access.js:
13:21 Changeset [59688] by timothy@apple.com

Fix a handful of various localization issues in the Web Inspector.

  • Localize strings that where not localized.
  • Make WebInspector.UIString work without bind.
  • Always pass WebInspector.UIString to Number.secondsToString and Number.bytesToString.
  • Never pass a variable to WebInspector.UIString, since that prevents auto-generation.
  • Use an ellipsis instead of three periods.

https://webkit.org/b/39303
rdar://problem/7997101

Reviewed by Adam Roben.

  • English.lproj/localizedStrings.js:
  • inspector/front-end/AuditRules.js:

(WebInspector.AuditRules.GzipRule.prototype.doRun):
(WebInspector.AuditRules.CookieSizeRule.prototype.processCookies):
(WebInspector.AuditRules.StaticCookielessRule.prototype.processCookies):

  • inspector/front-end/ConsoleView.js:

(WebInspector.ConsoleView):

  • inspector/front-end/ImageView.js:

(WebInspector.ImageView.prototype.contentTabSelected):

  • inspector/front-end/ProfileDataGridTree.js:

(WebInspector.ProfileDataGridNode.prototype.get data.formatMilliseconds):
(WebInspector.ProfileDataGridNode.prototype.get data):

  • inspector/front-end/ResourcesPanel.js:

(WebInspector.ResourceTimeCalculator.prototype.formatValue):
(WebInspector.ResourceTransferTimeCalculator.prototype.formatValue):
(WebInspector.ResourceTransferDurationCalculator.prototype.formatValue):
(WebInspector.ResourceTransferSizeCalculator.prototype.formatValue):

  • inspector/front-end/ScriptsPanel.js:

(WebInspector.ScriptsPanel.prototype._registerShortcuts):

  • inspector/front-end/SourceFrame.js:

(WebInspector.SourceFrame.prototype._contextMenu):

  • inspector/front-end/TimelineOverviewPane.js:

(WebInspector.TimelineOverviewCalculator):
(WebInspector.TimelineOverviewCalculator.prototype.formatValue):

  • inspector/front-end/TimelinePanel.js:

(WebInspector.TimelinePanel):
(WebInspector.TimelineCalculator):
(WebInspector.TimelineCalculator.prototype.formatValue):
(WebInspector.TimelinePanel.FormattedRecord.prototype._generateAggregatedInfo):
(WebInspector.TimelinePanel.FormattedRecord.prototype._generatePopupContent):
(WebInspector.TimelinePanel.FormattedRecord.prototype._getRecordDetails):
(WebInspector.TimelinePanel.PopupContentHelper.prototype._appendTextRow):
(WebInspector.TimelinePanel.PopupContentHelper.prototype._appendElementRow):

  • inspector/front-end/inspector.js:

(WebInspector.loaded):
(WebInspector.setRecordingProfile):
(WebInspector.UIString):

13:16 Changeset [59687] by eric@webkit.org

2010-05-18 Eric Seidel <eric@webkit.org>

Reviewed by Adam Roben.

Add an --html5-parser option to DumpRenderTree to allow testing the new HTML5Lexer
https://bugs.webkit.org/show_bug.cgi?id=39311

This flag allows us to run the new HTML5Lexer code.
Right now all documents parse as empty documents, but
now that we're able to run the code we can fix that.

Once we're able to lex a few basic documents I'll add
an --html5-parser flag to run-webkit-tests so that we test
running all of the layout tests with the HTML5 parser.

  • DumpRenderTree/mac/DumpRenderTree.mm: (resetDefaultsToConsistentValues): (initializeGlobalsFromCommandLineOptions):
13:13 Changeset [59686] by weinig@apple.com

Another attempt to fix the build.

  • css/CSSCursorImageValue.cpp:
12:48 QtWebKitTriageRoster edited by hausmann@webkit.org
(diff)
12:46 QtWebKitBugs edited by hausmann@webkit.org
(diff)
12:45 Changeset [59685] by weinig@apple.com

Try to fix the windows build.

  • API/JSStringRefBSTR.cpp:
12:33 Changeset [59684] by aroben@apple.com

Make accelerated compositing work on machines that don't support hardware vertex processing

Fixes <http://webkit.org/b/39299> <rdar://problem/7997692> Accelerated
compositing on Windows doesn't work on machines that don't support
hardware vertex processing, but should

Reviewed by Eric Carlson.

  • platform/graphics/win/WKCACFLayerRenderer.cpp:

(WebCore::WKCACFLayerRenderer::createRenderer): Query the device
capabilities to decide whether to request hardware or software vertex
processing.

12:33 Changeset [59683] by aroben@apple.com

Make WKCACFLayerRenderer robust against temporary failure of Direct3DCreate9 and IDirect3D9::CreateDevice

For a short time after waking from sleep, Direct3DCreate9() will
return an IDirect3D9 for which IDirect3D9::CreateDevice will always
fail. Also during this time period, IDirect3D9::CreateDevice
will fail even for non-bad IDirect3D9s. (It will later start
succeeding.) WKCACFLayerRenderer now works around this behavior by
detecting when it might be in this situation and calling these
functions again later.

Fixes <http://webkit.org/b/39297> <rdar://problem/7997431> WebView
doesn't repaint until page reloads when page using hardware
acceleration loads just after waking from sleep

Reviewed by John Sullivan.

  • manual-tests/crash-and-no-repaint-after-wake-from-sleep.html:

Renamed from WebCore/manual-tests/crash-after-wake-from-sleep.html.
Modified to also include instructions for reproducing this bug.

  • platform/graphics/win/WKCACFLayerRenderer.cpp:

(WebCore::WKCACFLayerRenderer::WKCACFLayerRenderer): Replaced
m_triedToCreateD3DRenderer with m_mightBeAbleToCreateDeviceLater. The
new member is initialized to true, since we haven't even tried to
create a device once yet.
(WebCore::WKCACFLayerRenderer::createRenderer): If we already have a
D3D device, or we don't have one and are sure that we won't be able to
create one later, just return the previously-created device, if any.
We assume that we won't be able to create a device later if this
function fails, unless the function fails due to CreateDevice failing.
As noted above, CreateDevice will sometimes temporarily fail and then
later start working again. When CreateDevice fails, we also assume
that we might have a bad IDirect3D9, so we get rid of the one we have
so a new (and hopefully non-bad) one will be allocated later.
(WebCore::WKCACFLayerRenderer::destroyRenderer): Reset
m_mightBeAbleToCreateDeviceLater to true, since we no longer have a
device.
(WebCore::WKCACFLayerRenderer::paint): Before trying to paint, try to
create our D3D device and renderer. If this fails, we bail out, but if
we think we might be able to create a device later we schedule another
paint (via renderSoon()) so that we'll try again soon.

  • platform/graphics/win/WKCACFLayerRenderer.h: Replaced

m_triedToCreateD3DRenderer with m_mightBeAbleToCreateDeviceLater.

12:32 Changeset [59682] by aroben@apple.com

Fix a crash when a page that uses accelerated compositing loads soon after the computer wakes from sleep

The set-up:

For a short time after waking from sleep, IDirect3D9::CreateDevice
will fail. This caused WKCACFLayerRenderer::createRenderer to fail,
and meant that WKCACFLayerRenderer never allocated a root layer.
WebView wouldn't notice that createRenderer failed, and would go ahead
and try to use the root layer anyway, resulting in a crash.

The fix:

We now allocate the root layer (and all the other members of
WKCACFLayerRenderer that aren't dependent on having an
IDirect3DDevice9) in WKCACFLayerRenderer's constructor. This way the
layers will always be present, even when creating the D3D device
fails.

There are two remaining problems:

1) This results in slightly more memory usage in the case where

CreateDevice fails.

2) Once we get into this bad state, the WebView doesn't repaint

until we navigate somewhere else.

(2) is covered by
<http://webkit.org/b/39297>/<rdar://problem/7997431>. We'll fix it by
retrying CreateDevice later in hopes that it will succeed after more
time has passed. This will in turn fix (1). (We should never end up in
a case where CreateDevice fails forever because we already did some
preliminary checks in acceleratedCompositingAvailable().)

Fixes <http://webkit.org/b/39295> <rdar://problem/7971319> Crash
(preceded by assertion) in WKCACFLayerRenderer::setNeedsDisplay when
computer wakes from sleep on particular page

Reviewed by John Sullivan.

  • manual-tests/crash-after-wake-from-sleep.html: Added. This

is the Poster Circle demo from webkit.org/blog, but modified to
automatically reload every 5 seconds and with instructions to put the
computer to sleep and wake it up again.

  • platform/graphics/win/WKCACFLayerRenderer.cpp:

(WebCore::WKCACFLayerRenderer::WKCACFLayerRenderer): Moved code to
initialize m_context, m_renderContext, and m_*Layer here...
(WebCore::WKCACFLayerRenderer::createRenderer): ...from here.

12:32 Changeset [59681] by aroben@apple.com

Remove an unused member variable from WKCACFLayerRenderer

Rubber-stamped by Ada Chan.

  • platform/graphics/win/WKCACFLayerRenderer.h: Removed m_viewLayer,

which is unused.

12:25 Changeset [59680] by andersca@apple.com

2010-05-18 Anders Carlsson <andersca@apple.com>

Reviewed by Sam Weinig.

Allocate the m_preloads list hash set dynamically and free it when done.
https://bugs.webkit.org/show_bug.cgi?id=39309
<rdar://problem/7998495>

This saves about 6000 bytes on a fully loaded document.

  • loader/DocLoader.cpp: (WebCore::DocLoader::requestPreload): (WebCore::DocLoader::clearPreloads):
  • loader/DocLoader.h:
12:16 Changeset [59679] by andersca@apple.com

Revert unintended indentation and unnecessary nested name specifier.

  • rendering/RenderBlock.cpp:

(WebCore::clipOutPositionedObjects):
(WebCore::RenderBlock::insertPositionedObject):

11:58 Changeset [59678] by andersca@apple.com

2010-05-18 Anders Carlsson <andersca@apple.com>

Reviewed by Sam Weinig.

Add an inlineCapacity template parameter to ListHashSet and use it to shrink the positioned object list hash set.
https://bugs.webkit.org/show_bug.cgi?id=39304
<rdar://problem/7998366>

Add an inlineCapacity template parameter to ListHashSet.

  • wtf/ListHashSet.h: (WTF::::ListHashSet): (WTF::::operator): (WTF::::swap): (WTF::::~ListHashSet): (WTF::::size): (WTF::::capacity): (WTF::::isEmpty): (WTF::::begin): (WTF::::end): (WTF::::find): (WTF::::contains): (WTF::::add): (WTF::::insertBefore): (WTF::::remove): (WTF::::clear): (WTF::::unlinkAndDelete): (WTF::::appendNode): (WTF::::insertNodeBefore): (WTF::::deleteAllNodes): (WTF::::makeIterator): (WTF::::makeConstIterator): (WTF::deleteAllValues):

2010-05-18 Anders Carlsson <andersca@apple.com>

Reviewed by Sam Weinig.

Add an inlineCapacity template parameter to ListHashSet and use it to shrink the positioned object list hash set.
https://bugs.webkit.org/show_bug.cgi?id=39304
<rdar://problem/7998366>

Set the inlineCapacity for the positionedObjects ListHashSet to 4 instead of 256. Since a RenderBlock usually has
few positioned objects, this saves memory.

  • WebCore.base.exp:
  • rendering/RenderBlock.cpp: (WebCore::clipOutPositionedObjects): (WebCore::RenderBlock::insertPositionedObject):
  • rendering/RenderBlock.h: (WebCore::RenderBlock::positionedObjects):
11:43 Changeset [59677] by weinig@apple.com

https://bugs.webkit.org/show_bug.cgi?id=39258
Remove NamedAttrMap residual gunk

Reviewed by Darin Adler.

Replace NamedAttrMap.h/cpp with NamedNodeMap.h/cpp which was the class
it contained.

  • CMakeLists.txt:
  • GNUmakefile.am:
  • WebCore.gypi:
  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/v8/custom/V8NamedNodesCollection.cpp:
  • dom/NamedAttrMap.cpp: Removed.
  • dom/NamedAttrMap.h: Removed.
  • dom/NamedNodeMap.cpp: Copied from dom/NamedAttrMap.cpp.
  • dom/NamedNodeMap.h: Replaced with dom/NamedAttrMap.h.
  • editing/ReplaceNodeWithSpanCommand.cpp:
  • platform/chromium/ClipboardChromium.cpp:
11:32 Changeset [59676] by loki@webkit.org

Fix the interpreter after r59637
https://bugs.webkit.org/show_bug.cgi?id=39287

Reviewed by Darin Adler.

  • runtime/Executable.h:
  • runtime/JSFunction.cpp:

(JSC::JSFunction::JSFunction):
(JSC::JSFunction::getCallData):

  • runtime/JSGlobalData.cpp:
  • runtime/JSGlobalData.h:
11:28 Changeset [59675] by jianli@chromium.org

Unreviewed. Build fix. Disable file-reader.html for more investigation.

  • platform/mac/Skipped:
11:28 Changeset [59674] by beidson@apple.com

<rdar://problem/7993468> REGRESSION (r58586): Audio doesn't play on first click of play button at NPR.org

Reviewed by Eric Carlson.

NPR swallows the first mouse click on the play button, calls load() on the element, then waits for the
canplay event to come in before calling play itself.

After the site specific hack added in r58586, we disallowed play() from within the canplay event handler.
By tracking whether a load() was triggered by a user gesture, we can differentiate between the original
canplay event that we meant to ignore and the one resulting from the first mouse click which we want to honor.

No new tests. (Currently no way to test such site specific hack behavior)

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::HTMLMediaElement):
(WebCore::HTMLMediaElement::load): Set the m_loadInitiatedByUserGesture flag
(WebCore::HTMLMediaElement::play): Only apply the site specific hack if the load wasn't initiated by a user gesture.

  • html/HTMLMediaElement.h:
11:09 Changeset [59673] by jpetsovits@rim.com

2010-05-18 Jakob Petsovits <jpetsovits@rim.com>

Reviewed by Dirk Schulze.

[OpenVG] Fix stupid build errors from the OpenVG Path commit
https://bugs.webkit.org/show_bug.cgi?id=39228

  • platform/graphics/openvg/PainterOpenVG.cpp: (WebCore::PainterOpenVG::clipPath):
  • platform/graphics/openvg/PathOpenVG.cpp: (WebCore::Path::transform):
10:30 Changeset [59672] by jianli@chromium.org

Unreviewed. Build fix. Disable test cases in file-reader.html that
cause time-out in mac bot for further investigation.

  • fast/files/file-reader-expected.txt:
  • fast/files/file-reader.html:
10:27 Changeset [59671] by jparent@chromium.org

Rietveld review page should dedicate more space to Rietveld, less to high level comments form.

Reviewed by Ojan Vafai.

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

  • template/en/custom/attachment/reviewform.html.tmpl:

Delete a random BR amongst the hidden elements that was causing extra whitespace.

  • template/en/custom/attachment/rietveldreview.html.tmpl:

Increase size of Rietveld frame to 80%, from 60%.

09:18 Changeset [59670] by cjerdonek@webkit.org

2010-05-18 Chris Jerdonek <cjerdonek@webkit.org>

Reviewed by Darin Adler.

Refactored FrameLoader::isDocumentSandboxed() from a private member function
to a static, non-member, non-friend function.

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

Making this function non-private lets us make FrameLoader::createWindow()
a non-member function in a subsequent patch. We also made it non-member
rather than member to increase encapsulation and limit the number of
public functions with access to private FrameLoader data.

No new functionality, so no new tests.

  • loader/FrameLoader.cpp: (WebCore::isDocumentSandboxed):
    • Moved this function from a private member function of FrameLoader to a static, non-member, non-friend function.

(WebCore::FrameLoader::createWindow):

  • Updated the call to isDocumentSandboxed().

(WebCore::FrameLoader::submitForm):

  • Updated the call to isDocumentSandboxed().

(WebCore::FrameLoader::requestObject):

  • Updated the call to isDocumentSandboxed().

(WebCore::FrameLoader::shouldAllowNavigation):

  • Updated the call to isDocumentSandboxed().
  • loader/FrameLoader.h:
    • Removed isDocumentSandboxed() and added a FIXME to move createWindow() out of the FrameLoader class.
07:07 Changeset [59669] by hausmann@webkit.org

[Qt] Fix http/tests/xmlhttprequest/cross-origin-no-authorization.html

2010-05-08 Robert Hogan <robert@roberthogan.net>

Reviewed by Simon Hausmann.

[Qt] Fix http/tests/xmlhttprequest/cross-origin-no-authorization.html

and http/tests/xmlhttprequest/cross-origin-authorization.html

QHttpNetworkRequest adds Authorization and Cookie headers to XHRs
without knowing if this is valid behaviour or not. In order to allow
Qt to decide whether Cookie/Authorization headers should be added
to an XHR QtWebKit needs to use an attribute added to QNetworkRequest.
These new attributes are: QNetworkRequest::CookieLoadControlAttribute,
QNetworkRequest::CookieSaveControlAttribute,and
QNetworkRequest::AuthenticationReuseControlAttribute.

QtWebKit will set QNetworkRequest::AuthenticationReuseControlAttribute to false
unless withCredentials is set to true in the XHR.

QtWebkit will set CookieLoad/SaveControlAttribute to false unless withCredentials
is set to true in the XHR.

Qt will pass the values onto QHttpNetworkRequest and this will permit
the Qt network access processing to decide whether or not to add either
or both of the Cookie/Authorisation headers, and whether to save cookies
returned from such requests. By default the attribute
will always be true so unless QtWebKit sets it to false normal
header processing is unaffected.

There are platform-specific results for cross-origin-no-authorization.html:

  1. Qt's DRT does not capture the final 'DONE'.
  2. QNetworkReplyHandler.cpp's ignoreHttpError() means that async requests do not execute didFail() when they receive a 401 HTTP response. This results in async tests passing with '401 Authorisation required' rather than 'received error event'.

The Qt part of these changes was merged at: http://gitorious.org/qt/qt/merge_requests/592

In order to properly support the tests, Qt's DRT needs to use one
NetworkAccessManager for all pages. This allows it to use cached
credentials where appropriate.

The tests now pass when run individually but there seems to be a problem with
leaking the results of requests across tests when run with the others in
http/tests. This will be addressed in a separate patch.

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

  • DumpRenderTree/qt/DumpRenderTreeQt.cpp: (WebCore::WebPage::WebPage): (WebCore::DumpRenderTree::DumpRenderTree):
  • DumpRenderTree/qt/DumpRenderTreeQt.h:
  • platform/network/qt/ResourceRequestQt.cpp: (WebCore::ResourceRequest::toNetworkRequest):
  • platform/qt/Skipped: Group together the tests that are waiting for 4.7 to be unskipped.
  • platform/qt/http/tests/xmlhttprequest/cross-origin-no-authorization-expected.txt: Added.
06:25 Changeset [59668] by zherczeg@webkit.org

[Qt] Implementing clipToImageBuffer for Qt port.
https://bugs.webkit.org/show_bug.cgi?id=24289

Reviewed by Kenneth Rohde Christiansen.

The implementation combines pixmap layers and destinationIn
composition mode.

  • platform/graphics/qt/GraphicsContextQt.cpp:

(WebCore::TransparencyLayer::TransparencyLayer):
(WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
(WebCore::GraphicsContext::savePlatformState):
(WebCore::GraphicsContext::restorePlatformState):
(WebCore::GraphicsContext::inTransparencyLayer):
(WebCore::GraphicsContext::beginTransparencyLayer):
(WebCore::GraphicsContext::endTransparencyLayer):
(WebCore::GraphicsContext::clipToImageBuffer):

04:04 Changeset [59667] by eric@webkit.org

2010-05-18 Eric Seidel <eric@webkit.org>

Unreviewed build fix.

Make it possible to enable the new HTML5Tokenizer for testing
https://bugs.webkit.org/show_bug.cgi?id=39275

  • WebCore.gypi:
    • Fix HTMLLexer.* -> HTML5Lexer.*
  • WebCore.vcproj/WebCore.vcproj:
    • Add HTML5Lexer and HTML5Tokenizer to project.
03:40 Changeset [59666] by ukai@chromium.org

2010-05-18 Fumitoshi Ukai <ukai@chromium.org>

Reviewed by Eric Seidel.

run_webkit_tests_unittest fails on SnowLeopard
https://bugs.webkit.org/show_bug.cgi?id=39279

  • Scripts/webkitpy/layout_tests/port/base.py: Return copy of os.environ.
  • Scripts/webkitpy/layout_tests/port/chromium_win_unittest.py: Check os.environ was not modified.
03:38 Changeset [59665] by eric@webkit.org

2010-05-18 Eric Seidel <eric@webkit.org>

Unreviewed build fix.

Make it possible to enable the new HTML5Tokenizer for testing
https://bugs.webkit.org/show_bug.cgi?id=39275

  • dom/NamedAttrMap.cpp: (WebCore::NamedNodeMap::setNamedItemNS):
    • Move this to the .cpp file so as to avoid needing to include "Node.h" in the header.
  • dom/NamedAttrMap.h:
  • html/HTML5Token.h:
    • Remove #include "String.h" which was wrong. Adam meant "PlatformString.h"
    • Remove unneeded #include "Node.h", it was only needed because NamedAttrMap.h was incorrectly depending on Node.h but not including it. It didn't actually need Node.h except for one inlined method setNamedItemNS, so I moved setNamedItemNS into the .cpp to get rid of the Node.h requirement.
03:17 Changeset [59664] by eric@webkit.org

2010-05-18 Eric Seidel <eric@webkit.org>

Reviewed by Adam Barth.

Make it possible to enable the new HTML5Tokenizer for testing
https://bugs.webkit.org/show_bug.cgi?id=39275

I added html5ParserEnabled to Settings so that we can enable/disable
the HTML5 parser for testing.

I also ripped out a bunch of dead code from HTML5Lexer.

I had to add HTML5Lexer/HTML5Tokenizer to all build systems so that
the build wouldn't fail now that we reference these classes from HTMLDocument.

  • Android.mk:
  • CMakeLists.txt:
  • GNUmakefile.am:
  • WebCore.gypi:
  • WebCore.pro:
  • WebCore.xcodeproj/project.pbxproj:
  • html/HTML5Lexer.cpp: (WebCore::HTML5Lexer::reset): (WebCore::isWhitespace): (WebCore::HTML5Lexer::nextToken):
  • html/HTML5Lexer.h:
  • html/HTML5Tokenizer.cpp: Added. (WebCore::HTML5Tokenizer::HTML5Tokenizer): (WebCore::HTML5Tokenizer::~HTML5Tokenizer): (WebCore::HTML5Tokenizer::begin): (WebCore::HTML5Tokenizer::write): (WebCore::HTML5Tokenizer::end): (WebCore::HTML5Tokenizer::finish): (WebCore::HTML5Tokenizer::isWaitingForScripts):
  • html/HTML5Tokenizer.h: Added.
  • html/HTMLDocument.cpp: (WebCore::HTMLDocument::createTokenizer):
  • html/HTMLTokenizer.h:
  • html/HTMLViewSourceDocument.cpp: (WebCore::HTMLViewSourceDocument::createTokenizer):
  • page/Settings.cpp: (WebCore::Settings::Settings):
  • page/Settings.h: (WebCore::Settings::setHTML5ParserEnabled): (WebCore::Settings::html5ParserEnabled):

2010-05-18 Eric Seidel <eric@webkit.org>

Reviewed by Adam Barth (and Maciej Stachowiak).

Make it possible to enable the new HTML5Tokenizer for testing
https://bugs.webkit.org/show_bug.cgi?id=39275

Expose the WebCore::Settings::html5ParserEnabled as a private WebKit setting.

  • WebView/WebPreferenceKeysPrivate.h:
  • WebView/WebPreferences.mm: (-[WebPreferences html5ParserEnabled]): (-[WebPreferences setHTML5ParserEnabled:]):
  • WebView/WebPreferencesPrivate.h:
  • WebView/WebView.mm: (-[WebView _preferencesChangedNotification:]):
02:08 Changeset [59663] by abarth@webkit.org

2010-05-18 Maciej Stachowiak <mjs@apple.com>

Not reviewed, build fix.

Attempt to fix build for v8 bindings (untested).

  • bindings/v8/ScriptController.cpp: (WebCore::ScriptController::clearWindowShell):
  • bindings/v8/ScriptController.h:
02:04 Changeset [59662] by mjs@apple.com

Not reviewed, build fix.

Attempt to fix build for v8 bindings (untested).

  • bindings/v8/ScriptController.cpp:

(WebCore::ScriptController::clearWindowShell):

  • bindings/v8/ScriptController.h:
01:52 Changeset [59661] by ukai@chromium.org

2010-05-18 Fumitoshi Ukai <ukai@chromium.org>

Reviewed by Eric Seidel.

Chromium: new-run-webkit-httpd fails to setup_mount
https://bugs.webkit.org/show_bug.cgi?id=39257

  • Scripts/webkitpy/common/system/executive.py: Assert type of args in run_command.
  • Scripts/webkitpy/common/system/executive_unittest.py: Add test_run_command_args_type
  • Scripts/webkitpy/layout_tests/port/chromium_win.py: Executive.run_command takes array for command line.
  • Scripts/webkitpy/layout_tests/port/chromium_win_unittest.py: Test if setup_environ_for_server() run setup_mount.bat.
01:42 Changeset [59660] by hausmann@webkit.org

Fix QWebHistory serialization.

Patch by Jedrzej Nowacki <jedrzej.nowacki@nokia.com> on 2010-05-18
Reviewed by Simon Hausmann.

Regression was caused by bug 33224. The streaming function
should generate a documentSequenceNumber for all loaded values.

[Qt] tst_QWebHistory::serialize_2() fails
https://bugs.webkit.org/show_bug.cgi?id=37322

  • Api/qwebhistory.cpp:

(operator>>):

01:09 Changeset [59659] by mjs@apple.com

2010-05-17 Maciej Stachowiak <mjs@apple.com>

Reviewed by Oliver Hunt.

GC more promptly when navigating to a new inner window, but not at all when it went in the page cache
https://bugs.webkit.org/show_bug.cgi?id=39254
<rdar://problem/7996370>

~1% PLT speedup
~4% iBench HTML speedup

  • bindings/js/GCController.cpp: (WebCore::GCController::garbageCollectSoon): Change back to a 0 delay timer instead of 0.5 second.
  • bindings/js/ScriptController.cpp: (WebCore::ScriptController::clearWindowShell): Add a new boolean parameter. Don't garbageColectSoon if the page is going into the page cache.
  • bindings/js/ScriptController.h: Prototype change for above.
  • loader/FrameLoader.cpp: (WebCore::FrameLoader::clear): Indicate when the page is going into the page cache.
00:24 Changeset [59658] by abarth@webkit.org

2010-05-18 Adam Barth <abarth@webkit.org>

Reviewed by Eric Seidel.

Implement ScriptData states for HTML5Lexer
https://bugs.webkit.org/show_bug.cgi?id=39273

This patch implements more of the lexer states according to the HTML5
specification. Currently, this code is compiled by not tested. We're
working on bringing up a test harness in parallel with transliterating
the spec into code.

  • html/HTML5Lexer.cpp: (WebCore::HTML5Lexer::tokenize): (WebCore::HTML5Lexer::temporaryBufferIs):
  • html/HTML5Lexer.h: (WebCore::HTML5Lexer::):
00:00 Changeset [59657] by eric@webkit.org

2010-05-17 Eric Seidel <eric@webkit.org>

Reviewed by Adam Barth.

Rename HTML5Tokenzier to HTML5Lexer so that we can add a new HTML5Tokenizer which implements Tokenizer
https://bugs.webkit.org/show_bug.cgi?id=39272

Strictly a rename, no functionality change.

  • WebCore.xcodeproj/project.pbxproj:
  • html/HTML5Lexer.cpp: Added.
  • html/HTML5Lexer.h: Added.
  • html/HTML5Tokenizer.cpp: Removed.
  • html/HTML5Tokenizer.h: Removed.

05/17/10:

23:01 Changeset [59656] by atwilson@chromium.org

Unreviewed test expectations update for chromium.

  • platform/chromium-mac/html5lib/runner-expected.txt: Added.
  • platform/chromium-win/html5lib/runner-expected.txt: Added.
22:56 Changeset [59655] by tkent@chromium.org

2010-05-17 Sheriff Bot <webkit.review.bot@gmail.com>

Unreviewed, rolling out r59652.
http://trac.webkit.org/changeset/59652
https://bugs.webkit.org/show_bug.cgi?id=39268

file-input-files-access test is broken on Mac (Requested by
dcheng on #webkit).

  • editing/pasteboard/file-input-files-access-expected.txt:
  • editing/pasteboard/script-tests/file-input-files-access.js: (runTest):
  • http/tests/security/clipboard/script-tests/clipboard-file-access.js:

2010-05-17 Sheriff Bot <webkit.review.bot@gmail.com>

Unreviewed, rolling out r59652.
http://trac.webkit.org/changeset/59652
https://bugs.webkit.org/show_bug.cgi?id=39268

file-input-files-access test is broken on Mac (Requested by
dcheng on #webkit).

  • platform/chromium/DragDataChromium.cpp: (WebCore::DragData::asURL):

2010-05-17 Sheriff Bot <webkit.review.bot@gmail.com>

Unreviewed, rolling out r59652.
http://trac.webkit.org/changeset/59652
https://bugs.webkit.org/show_bug.cgi?id=39268

file-input-files-access test is broken on Mac (Requested by
dcheng on #webkit).

  • Misc/WebNSPasteboardExtras.mm: (-[NSPasteboard _web_bestURL]):
22:51 Changeset [59654] by abarth@webkit.org

2010-05-17 Adam Barth <abarth@webkit.org>

Reviewed by Eric Seidel.

Implement RAWTEXT tokenizer states
https://bugs.webkit.org/show_bug.cgi?id=39267

More tokenizer states. There's a bunch of functionality notImplemented
that we'll come back to.

  • html/HTML5Tokenizer.cpp: (WebCore::HTML5Tokenizer::tokenize):
  • html/HTML5Tokenizer.h:
22:17 Changeset [59653] by abarth@webkit.org

2010-05-17 Adam Barth <abarth@webkit.org>

Reviewed by Eric Seidel.

Implement more parser states in HTML5Tokenizer
https://bugs.webkit.org/show_bug.cgi?id=39265

This patch implements some easy states. I'll come back and do the
harder states later.

  • html/HTML5Tokenizer.cpp: (WebCore::HTML5Tokenizer::tokenize): (WebCore::HTML5Tokenizer::emitParseError):
  • html/HTML5Tokenizer.h:
22:11 Changeset [59652] by tkent@chromium.org

2010-05-17 Daniel Cheng <dcheng@chromium.org>

DragData::asURL() shouldn't do file validity checks
https://bugs.webkit.org/show_bug.cgi?id=38711

Several layout tests depended on the fact that dropping a file would
never trigger navigation. This never happened to occur in the past,
since it just so happened that the filenames used in the tests never
resolved to files that exist. Since DragData::asURL() no longer tries
to verify file existence, the layout tests were updated to either
suppress navigation or log any navigation that should occur as part of
the test.

  • editing/pasteboard/file-input-files-access-expected.txt:
  • editing/pasteboard/script-tests/file-input-files-access.js: (runTest.window.onbeforeunload): (runTest):
  • http/tests/security/clipboard/script-tests/clipboard-file-access.js:

2010-05-17 Daniel Cheng <dcheng@chromium.org>

Reviewed by Darin Adler.

DragData::asURL() shouldn't do file validity checks
https://bugs.webkit.org/show_bug.cgi?id=38711

There's no point to trying to make sure the file is valid in
DragData::asURL(). It's better to ask for forgiveness than to ask for
permission, since asking for permission is prone to race conditions
and results in unnecessary I/O. Consumers of this function either:

  • need to verify the file exists themselves (e.g. the loader)
  • don't care about file validity (rich text drag-and-drop)
  • platform/chromium/DragDataChromium.cpp: (WebCore::DragData::asURL):

2010-05-17 Daniel Cheng <dcheng@chromium.org>

Reviewed by Darin Adler.

DragData::asURL() shouldn't do file validity checks
https://bugs.webkit.org/show_bug.cgi?id=38711

Change [NSPasteboard _web_bestURL] to still return a file URL for paths
that don't exist. Callers who care about the existence of the file or
whether or not it is a directory should check themselves when they
want to use the file. The directory check has been left in for now,
since the Mac implementation of ResourceHandle, which uses this function
indirectly via DragController::performDrag) handles directories somewhat
non-intuitively: it opens the parent directory in the Finder, rather
than opening the directory itself.

  • Misc/WebNSPasteboardExtras.mm: (-[NSPasteboard _web_bestURL]):
22:05 Changeset [59651] by tkent@chromium.org

Unreviewed. Roll out r59650.
A workaround of a buildbot issue triggered by r59650 wasn't resolved by r59646.

21:56 Changeset [59650] by tkent@chromium.org

[DRT/Chromium] Fix repaint, WebGL, textarea tests
https://bugs.webkit.org/show_bug.cgi?id=39054

Reviewed by Dimitri Glazkov.

WebKit/chromium:

  • DEPS: Update to Chromium r47248 to use a fix for CommandLine assertion and textAreaResizeCorner.png
  • WebKit.gyp: Add textAreaResizeCorner.png as a Mac resource
  • features.gypi: Enable ENABLE_3D_CANVAS.

WebKitTools:

  • DumpRenderTree/chromium/WebViewHost.cpp:

(WebViewHost::canvas): Remove m_paintRect initialization in canvas().

This line updated m_paintRect unexpectedly during paintRect().
We don't need to initialize m_paintRect because show() does it.

21:46 Changeset [59649] by yuzo@google.com

2010-05-16 Yuzo Fujishima <yuzo@google.com>

Reviewed by Darin Adler.

Add tests for Bug 31267 - :nth-child(-2n) should match no element.
http://trac.webkit.org/changeset/58300 has fixed this already.
https://bugs.webkit.org/show_bug.cgi?id=31267

  • fast/css/nth-child-negative-a-param-expected.txt: Added.
  • fast/css/nth-child-negative-a-param.html: Added.
21:27 Changeset [59648] by abarth@webkit.org

2010-05-17 Adam Barth <abarth@webkit.org>

Reviewed by Eric Seidel.

Update states in HTML5Tokenizer to match HTML5 spec
https://bugs.webkit.org/show_bug.cgi?id=39264

I've also implemented the DataState. More states to follow.

  • html/HTML5Tokenizer.cpp: (WebCore::HTML5Tokenizer::reset): (WebCore::HTML5Tokenizer::tokenize):
  • html/HTML5Tokenizer.h: (WebCore::HTML5Tokenizer::):
21:24 Changeset [59647] by tkent@chromium.org

Unreviewed.

Update a test for the behavior change of r59645.
https://bugs.webkit.org/show_bug.cgi?id=39162

  • fast/forms/script-tests/willvalidate.js:
  • fast/forms/willvalidate-expected.txt:
21:04 Changeset [59646] by tkent@chromium.org

Chromium Windows build system does not rebuild correctly when
enabling/disabling a feature
https://bugs.webkit.org/show_bug.cgi?id=38926

Reviewed by David Levin.

Add a workaround of this issue.

  • Scripts/update-webkit: Chromium-Windows only: If WebKit/chromium/features.gyp has been updated, remove WebKit/chromium/Debug and WebKit/chromium/Release.
20:57 Changeset [59645] by tkent@chromium.org

':valid' CSS selector should not be applied to some form controls
https://bugs.webkit.org/show_bug.cgi?id=39162

Reviewed by Darin Adler.

WebCore:

  • html/HTMLElement.cpp:

(WebCore::inlineTagList): Always includes progressTag. This change is
needed in a case of no ENABLE_PROGRESS_TAG. Without this change and
ENABLE_PROGRESS_TAG, <progress> tags disappear.

  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::recalcWillValidate):

Return false for SUBMIT and IMAGE.

  • html/HTMLProgressElement.h:

(WebCore::HTMLProgressElement::recalcWillValidate):

Return false. This change is needed in a case of ENABLE_PROGRESS_TAG.

LayoutTests:

Add test cases for

  • <input type=submit>
  • <input type=image>
  • <progress>
  • <meter>
  • fast/css/pseudo-valid-unapplied-expected.txt:
  • fast/css/pseudo-valid-unapplied.html:
20:41 Changeset [59644] by abarth@webkit.org

2010-05-17 Adam Barth <abarth@webkit.org>

Reviewed by Eric Seidel.

Remove load-related code from HTML5Tokenizer
https://bugs.webkit.org/show_bug.cgi?id=39263

This code is related to reloading resources and not to tokenizing. In
the PreloadScanner, these concerns are coupled, but we want to decouple
them.

  • html/HTML5Tokenizer.cpp: (WebCore::HTML5Tokenizer::HTML5Tokenizer): (WebCore::HTML5Tokenizer::~HTML5Tokenizer): (WebCore::HTML5Tokenizer::begin): (WebCore::HTML5Tokenizer::end): (WebCore::HTML5Tokenizer::reset): (WebCore::HTML5Tokenizer::write): (WebCore::HTML5Tokenizer::consumeEntity): (WebCore::HTML5Tokenizer::tokenize): (WebCore::HTML5Tokenizer::processAttribute): (WebCore::HTML5Tokenizer::emitCharacter): (WebCore::HTML5Tokenizer::emitTag):
  • html/HTML5Tokenizer.h:
20:25 Changeset [59643] by abarth@webkit.org

2010-05-17 Adam Barth <abarth@webkit.org>

Reviewed by Eric Seidel.

Add HTML5Tokenizer to the build system on Mac
https://bugs.webkit.org/show_bug.cgi?id=39262

This file will be easier to work with if we're actually compiling it.
Hopefully we'll get this wired into the PreloadScanner soon. Once we
start actually calling the code, we'll add it to the build system on
other platforms.

  • WebCore.xcodeproj/project.pbxproj:
20:24 Changeset [59642] by barraclough@apple.com

Oops, meant ebx not eax there. Fix Qt (and probably Win too).

Reviewed by Geoff Garen.

  • jit/JITOpcodes32_64.cpp:
20:21 Changeset [59641] by eric@webkit.org

2010-05-17 Eric Seidel <eric@webkit.org>

Reviewed by Adam Barth.

Copy PreloadScanner.* to HTML5Tokenizer.* to start work on the new HTML5 Tokenizer
https://bugs.webkit.org/show_bug.cgi?id=39261

  • html/HTML5Tokenizer.cpp: Rename PreloadScanner to HTML5Tokenizer.
  • html/HTML5Tokenizer.h: ditto.
20:15 Changeset [59640] by eric@webkit.org

2010-05-17 Eric Seidel <eric@webkit.org>

Reviewed by Adam Barth.

Copy PreloadScanner.* to HTML5Tokenizer.* to start work on the new HTML5 Tokenizer
https://bugs.webkit.org/show_bug.cgi?id=39261

This time copy the cpp from the right file.

  • html/HTML5Tokenizer.cpp: Copied from WebCore/html/PreloadScanner.cpp.
20:08 Changeset [59639] by eric@webkit.org

2010-05-17 Eric Seidel <eric@webkit.org>

Reviewed by Adam Barth.

Copy PreloadScanner.* to HTML5Tokenizer.* to start work on the new HTML5 Tokenizer
https://bugs.webkit.org/show_bug.cgi?id=39261

  • html/HTML5Tokenizer.cpp: Copied from WebCore/html/PreloadScanner.h.
  • html/HTML5Tokenizer.h: Copied from WebCore/html/PreloadScanner.h.
20:06 Changeset [59638] by abarth@webkit.org

2010-05-17 Adam Barth <abarth@webkit.org>

Reviewed by Eric Seidel.

Add the html5lib HTML parser tests
https://bugs.webkit.org/show_bug.cgi?id=39260

We currently fail a bunch of these. Hopefully we'll get better as we
implement the HTML5 parser.

Source: http://gsnedders.html5.org/html5lib-tests/runner.html

  • html5lib/resources/dom2string.js: Added. (String.prototype.toAsciiLowerCase): (indent): (dom2string):
  • html5lib/resources/tests1.dat: Added.
  • html5lib/resources/tests10.dat: Added.
  • html5lib/resources/tests11.dat: Added.
  • html5lib/resources/tests12.dat: Added.
  • html5lib/resources/tests13.dat: Added.
  • html5lib/resources/tests14.dat: Added.
  • html5lib/resources/tests15.dat: Added.
  • html5lib/resources/tests16.dat: Added.
  • html5lib/resources/tests2.dat: Added.
  • html5lib/resources/tests3.dat: Added.
  • html5lib/resources/tests4.dat: Added.
  • html5lib/resources/tests5.dat: Added.
  • html5lib/resources/tests6.dat: Added.
  • html5lib/resources/tests7.dat: Added.
  • html5lib/resources/tests8.dat: Added.
  • html5lib/resources/tests9.dat: Added.
  • html5lib/runner-expected.txt: Added.
  • html5lib/runner.html: Added.
19:39 Changeset [59637] by barraclough@apple.com

Bug 39252 - Move host/native JSFunction's NativeFunction onto NativeExecutable.

Reviewed by Geoff Garen.

Currently host functions reuse JSFunction's ScopeChain as storage for their
NativeFunction (the C function pointer to the host function implementation).
Instead, move this onto NativeExecutable. This will allow host functions to
have a scopechain (which will be implemented as a separate patch).

  • JavaScriptCore.xcodeproj/project.pbxproj:
  • jit/JIT.h:
  • jit/JITCall.cpp:

(JSC::JIT::compileOpCallInitializeCallFrame):
(JSC::JIT::compileOpCall):

  • jit/JITOpcodes.cpp:

(JSC::JIT::privateCompileCTIMachineTrampolines):

  • jit/JITOpcodes32_64.cpp:
  • jit/JITPropertyAccess.cpp:

(JSC::JIT::stringGetByValStubGenerator):
(JSC::JIT::emitSlow_op_get_by_val):

  • jit/JITPropertyAccess32_64.cpp:

(JSC::JIT::stringGetByValStubGenerator):
(JSC::JIT::emitSlow_op_get_by_val):

  • jit/JITStubs.cpp:

(JSC::JITThunks::specializedThunk):

  • jit/JITStubs.h:

(JSC::JITThunks::ctiNativeCall):

  • jit/SpecializedThunkJIT.h:

(JSC::SpecializedThunkJIT::finalize):

  • jit/ThunkGenerators.cpp:

(JSC::charCodeAtThunkGenerator):
(JSC::charAtThunkGenerator):
(JSC::fromCharCodeThunkGenerator):
(JSC::sqrtThunkGenerator):
(JSC::powThunkGenerator):

  • jit/ThunkGenerators.h:
  • runtime/Executable.h:

(JSC::NativeExecutable::create):
(JSC::NativeExecutable::function):
(JSC::NativeExecutable::NativeExecutable):
(JSC::JSFunction::nativeFunction):

  • runtime/JSFunction.cpp:

(JSC::JSFunction::JSFunction):
(JSC::JSFunction::~JSFunction):
(JSC::JSFunction::markChildren):
(JSC::JSFunction::getCallData):
(JSC::JSFunction::call):
(JSC::JSFunction::getOwnPropertySlot):
(JSC::JSFunction::getConstructData):
(JSC::JSFunction::construct):

  • runtime/JSFunction.h:

(JSC::JSFunction::scope):

  • runtime/JSGlobalData.h:

(JSC::JSGlobalData::getThunk):

  • runtime/Lookup.cpp:

(JSC::setUpStaticFunctionSlot):

  • runtime/StringConstructor.cpp:

(JSC::StringConstructor::StringConstructor):

18:38 Changeset [59636] by atwilson@chromium.org

2010-05-17 Sheriff Bot <webkit.review.bot@gmail.com>

Unreviewed, rolling out r59631.
http://trac.webkit.org/changeset/59631
https://bugs.webkit.org/show_bug.cgi?id=39255

chromium canaries can no longer run webkit_tests, suspect this
change. (Requested by atwilson on #webkit).

  • Scripts/webkitpy/layout_tests/layout_package/dump_render_tree_thread.py:
  • Scripts/webkitpy/layout_tests/run_webkit_tests.py:
  • Scripts/webkitpy/layout_tests/run_webkit_tests_unittest.py:
18:28 Changeset [59635] by morrita@google.com

2010-05-17 MORITA Hajime <morrita@google.com>

Reviewed by Kent Tamura.

[Chromium] Windows: Speed of indeterminate progress bar should be constant
https://bugs.webkit.org/show_bug.cgi?id=39211

No new tests, animation effect can be confirmed only manually.

  • rendering/RenderThemeChromiumWin.cpp: (WebCore::RenderThemeChromiumWin::animationDurationForProgressBar): (WebCore::RenderThemeChromiumWin::paintProgressBar):
17:58 Changeset [59634] by atwilson@chromium.org

Unreviewed build fix for Qt and Chromium. Added missing #include in Frame.h.

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

  • page/Frame.h: Now includes CSSMutableStyleDeclaration.h.
17:19 Changeset [59633] by simon.fraser@apple.com

2010-05-17 Simon Fraser <simon.fraser@apple.com>

Reviewed by Darin Adler.

Remove unused member member from Document
https://bugs.webkit.org/show_bug.cgi?id=39251

Remove m_associatedHistoryItems from Document; it is never used.

  • dom/Document.h:
17:15 Changeset [59632] by darin@apple.com

Fix Qt build.

  • page/Frame.cpp:

(WebCore::Frame::setTypingStyle): Move back to make non-inline.

  • page/Frame.h: Removed inline version of setTypingStyle.
17:15 Changeset [59631] by eric@webkit.org

2010-05-17 Eric Seidel <eric@webkit.org>

Reviewed by Adam Barth.

Attempt to make new-run-webkit-tests --help more sane
https://bugs.webkit.org/show_bug.cgi?id=37836

  • Scripts/webkitpy/layout_tests/layout_package/dump_render_tree_thread.py:
    • Add a FIXME about options.singly and options.batch_size being different.
  • Scripts/webkitpy/layout_tests/run_webkit_tests.py:
    • Add support for hidden options.
    • Add option groupings to attempt to simplify --help.
    • Fix a bunch of option helps to start with a capitalized verb.
    • Hide a bunch of options which make no sense to users.
    • Sort options in --help.
  • Scripts/webkitpy/layout_tests/run_webkit_tests_unittest.py:
    • Add tests for option sorting.
16:48 Changeset [59630] by darin@apple.com

2010-05-14 Darin Adler <darin@apple.com>

Reviewed by Brady Eidson.

Frame has many trivial member functions that should be inlined
https://bugs.webkit.org/show_bug.cgi?id=39147

  • WebCore.base.exp: Export the functions that are now inlined.
  • page/Frame.cpp: (WebCore::Frame::removeEditingStyleFromBodyElement): Removed the body of this function.
  • page/Frame.h: (WebCore::Frame::init): Moved here from .cpp. (WebCore::Frame::loader): Ditto. (WebCore::Frame::redirectScheduler): Ditto. (WebCore::Frame::view): Ditto. (WebCore::Frame::script): Ditto. (WebCore::Frame::document): Ditto. (WebCore::Frame::selection): Ditto. (WebCore::Frame::editor): Ditto. (WebCore::Frame::animation): Ditto. (WebCore::Frame::mark): Ditto. (WebCore::Frame::setMark): Ditto. (WebCore::Frame::zoomFactor): Ditto. (WebCore::Frame::jsStatusBarText): Ditto. (WebCore::Frame::jsDefaultStatusBarText): Ditto. (WebCore::Frame::needsReapplyStyles): Ditto. (WebCore::Frame::typingStyle): Ditto. (WebCore::Frame::setTypingStyle): Ditto. (WebCore::Frame::clearTypingStyle): Ditto. (WebCore::Frame::ownerElement): Ditto. (WebCore::Frame::isDisconnected): Ditto. (WebCore::Frame::setIsDisconnected): Ditto. (WebCore::Frame::excludeFromTextSearch): Ditto. (WebCore::Frame::setExcludeFromTextSearch): Ditto. (WebCore::Frame::inViewSourceMode): Ditto. (WebCore::Frame::setInViewSourceMode): Ditto. (WebCore::Frame::markedTextMatchesAreHighlighted): Ditto. (WebCore::Frame::tree): Ditto. (WebCore::Frame::page): Ditto. (WebCore::Frame::detachFromPage): Ditto. (WebCore::Frame::eventHandler): Ditto. (WebCore::Frame::shouldClose): Ditto.
16:03 Changeset [59629] by andersca@apple.com

2010-05-17 Anders Carlsson <andersca@apple.com>

Reviewed by Sam Weinig.

https://bugs.webkit.org/show_bug.cgi?id=39247
<rdar://problem/7994707>
Move rarely used data members to the rare structures, thus saving memory.

Move rarely used member variables from StyleInheritedData and StyleVisualData to
StyleRareInheritedData and StyleRareNonInheritedData, namely:

indent, cursorData, m_effectiveZoom, widows and orphans move from StyleInheritedData to StyleRareInheritedData.
m_counterIncrement and m_counterReset move from StyleVisualData to StyleRareNonInheritedData.

  • rendering/style/RenderStyle.cpp: (WebCore::RenderStyle::diff): (WebCore::RenderStyle::addCursor): (WebCore::RenderStyle::setCursorList): (WebCore::RenderStyle::clearCursorList):
  • rendering/style/RenderStyle.h: (WebCore::InheritedFlags::textIndent): (WebCore::InheritedFlags::effectiveZoom): (WebCore::InheritedFlags::counterIncrement): (WebCore::InheritedFlags::counterReset): (WebCore::InheritedFlags::cursors): (WebCore::InheritedFlags::widows): (WebCore::InheritedFlags::orphans): (WebCore::InheritedFlags::setTextIndent): (WebCore::InheritedFlags::setEffectiveZoom): (WebCore::InheritedFlags::setCounterIncrement): (WebCore::InheritedFlags::setCounterReset): (WebCore::InheritedFlags::setWidows): (WebCore::InheritedFlags::setOrphans):
  • rendering/style/StyleInheritedData.cpp: (WebCore::StyleInheritedData::StyleInheritedData): (WebCore::StyleInheritedData::operator==):
  • rendering/style/StyleInheritedData.h:
  • rendering/style/StyleRareInheritedData.cpp: (WebCore::StyleRareInheritedData::StyleRareInheritedData): (WebCore::cursorDataEquivalent): (WebCore::StyleRareInheritedData::operator==):
  • rendering/style/StyleRareInheritedData.h:
  • rendering/style/StyleRareNonInheritedData.cpp: (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData): (WebCore::StyleRareNonInheritedData::operator==):
  • rendering/style/StyleRareNonInheritedData.h:
  • rendering/style/StyleVisualData.cpp: (WebCore::StyleVisualData::StyleVisualData):
  • rendering/style/StyleVisualData.h: (WebCore::StyleVisualData::operator==):
15:25 Changeset [59628] by jamesr@google.com

2010-05-17 James Robinson <jamesr@chromium.org>

Reviewed by Darin Adler.

Rebaseline fast/multicol pixel results on mac
https://bugs.webkit.org/show_bug.cgi?id=39241

  • fast/multicol/client-rects-expected.checksum:
  • fast/multicol/client-rects-expected.png:
  • platform/mac/fast/multicol/float-multicol-expected.png:
  • platform/mac/fast/multicol/layers-in-multicol-expected.checksum: Added.
  • platform/mac/fast/multicol/layers-in-multicol-expected.png: Added.
  • platform/mac/fast/multicol/nested-columns-expected.checksum: Added.
  • platform/mac/fast/multicol/nested-columns-expected.png: Added.
  • platform/mac/fast/multicol/positioned-with-constrained-height-expected.checksum:
  • platform/mac/fast/multicol/positioned-with-constrained-height-expected.png:
15:21 Changeset [59627] by atwilson@chromium.org

Unreviewed. Update Chromium test expectations.

  • platform/chromium-linux/fast/multicol/layers-in-multicol-expected.checksum:
  • platform/chromium-linux/fast/multicol/layers-in-multicol-expected.png:
  • platform/chromium-linux/fast/multicol/nested-columns-expected.checksum: Added.
  • platform/chromium-linux/fast/multicol/nested-columns-expected.png: Added.
  • platform/chromium-mac/fast/multicol/layers-in-multicol-expected.checksum:
  • platform/chromium-mac/fast/multicol/layers-in-multicol-expected.png:
  • platform/chromium-mac/fast/multicol/nested-columns-expected.checksum: Added.
  • platform/chromium-mac/fast/multicol/nested-columns-expected.png: Added.
  • platform/chromium-win/fast/multicol/layers-in-multicol-expected.checksum:
  • platform/chromium-win/fast/multicol/layers-in-multicol-expected.png:
  • platform/chromium-win/fast/multicol/layers-in-multicol-expected.txt:
  • platform/chromium-win/fast/multicol/nested-columns-expected.checksum: Added.
  • platform/chromium-win/fast/multicol/nested-columns-expected.png: Added.
13:46 QtWebKitTableOfFeatures20 edited by noam.rosenthal@nokia.com
(diff)
13:45 Changeset [59626] by robert@webkit.org

2010-05-17 Robert Hogan <robert@webkit.org>

Rubber-stamped by Eric Seidel.

Fix --no-svg build.

I have no idea where the SVG-dependent include of this file is hidden, but
it is probably better to include it explicitly anyway like V8WorkerContextCustom.cpp.

  • bindings/js/JSWorkerContextCustom.cpp:
13:39 Changeset [59625] by atwilson@chromium.org

Unreviewd: Update Chromium test expectations.

  • platform/chromium-win/fast/multicol/nested-columns-expected.txt: Added.
13:29 Changeset [59624] by hyatt@apple.com

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

Reviewed by Dan Bernstein.

Fix failures in the RTL portion of fast/multicol/layers-in-multicol.html. Make sure block children of RTL blocks are positioned using
the reduced column width instead of the total content width.

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::determineHorizontalPosition):
(WebCore::RenderBlock::nodeAtPoint):
(WebCore::RenderBlock::hitTestContents):
(WebCore::RenderBlock::adjustForColumns):

12:36 Changeset [59623] by robert@webkit.org

2010-05-17 Robert Hogan <robert@webkit.org>

Reviewed by Kenneth Rohde Christiansen.

[Qt] Disable Icon Database by default in Qt DRT

Unskip:

http/tests/misc/favicon-loads-with-images-disabled.html
http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-in-body.html
http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-parent-same-origin-deny.html
http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag.html

Qt returns 5 (QNetworkReply::OperationCanceledError) instead of -999 for the XFrameOptions tests,
so update accordingly.

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

  • platform/qt/Skipped:
  • platform/qt/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-expected.txt: Added. Qt returns 5 instead of -999.
  • platform/qt/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-in-body-expected.txt: Added. Qt returns 5 instead of -999.
  • platform/qt/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-parent-same-origin-deny-expected.txt: Added. Qt returns 5 instead of -999.

2010-05-17 Robert Hogan <robert@webkit.org>

Reviewed by Kenneth Rohde Christiansen.

[Qt] Disable Icon Database by default in Qt DRT

Unskip:

http/tests/misc/favicon-loads-with-images-disabled.html
http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-in-body.html
http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-parent-same-origin-deny.html
http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag.html

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

Add support for layoutTestController.setIconDatabaseEnabled and layoutTestController.disableImageLoading().
The XFrameOptions tests were failing because of an extra resource load callback for favicon.ico requests.
These extra callbacks are removed by supporting both of the above layoutTestContoller commands.

  • DumpRenderTree/qt/DumpRenderTreeQt.cpp: (WebCore::WebPage::resetSettings): (WebCore::DumpRenderTree::DumpRenderTree):
  • DumpRenderTree/qt/DumpRenderTreeQt.h: (WebCore::DumpRenderTree::drtStoragePath):
  • DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::reset): (LayoutTestController::disableImageLoading): (LayoutTestController::setIconDatabaseEnabled):
  • DumpRenderTree/qt/LayoutTestControllerQt.h:
12:33 Changeset [59622] by mrowe@apple.com

<rdar://problem/7987585> Disable SVG filters.

JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig:

WebCore:

  • Configurations/FeatureDefines.xcconfig:

WebKit/mac:

  • Configurations/FeatureDefines.xcconfig:

WebKit2:

  • Configurations/FeatureDefines.xcconfig:

WebKitLibraries:

  • win/tools/vsprops/FeatureDefines.vsprops:

WebKitTools:

  • Scripts/build-webkit:
12:32 Changeset [59621] by mrowe@apple.com

<rdar://problem/7987743> Disable Blob.slice.

JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig:

WebCore:

  • Configurations/FeatureDefines.xcconfig:

WebKit/mac:

  • Configurations/FeatureDefines.xcconfig:

WebKit2:

  • Configurations/FeatureDefines.xcconfig:
12:32 Changeset [59620] by mrowe@apple.com

<rdar://problem/7987750> Disable progress element.

JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig:

WebCore:

  • Configurations/FeatureDefines.xcconfig:

WebKit/mac:

  • Configurations/FeatureDefines.xcconfig:

WebKit2:

  • Configurations/FeatureDefines.xcconfig:
12:09 Changeset [59619] by jpetsovits@rim.com

2010-05-17 Jakob Petsovits <jpetsovits@rim.com>

Reviewed by George Staikos.

[OpenVG] Add support for decoding and drawing images
https://bugs.webkit.org/show_bug.cgi?id=36072

OpenVG has a maximum image size (how large is
specific to the OpenVG implementation), so this
requires us to store them as separate image tiles.

Image decoding and initial drawing code by
Adam Treat <atreat@rim.com>. Image decoder
downsampling support by Yong Li <yoli@rim.com>.

  • platform/graphics/ImageSource.h:
  • platform/graphics/openvg/ImageOpenVG.cpp: Added. (WebCore::FrameData::clear): (WebCore::BitmapImage::BitmapImage): (WebCore::BitmapImage::checkForSolidColor): (WebCore::BitmapImage::initPlatformData): (WebCore::BitmapImage::invalidatePlatformData): (WebCore::adjustSourceRectForDownSampling): (WebCore::BitmapImage::draw): (WebCore::Image::drawPattern): (WebCore::Image::loadPlatformResource):
  • platform/graphics/openvg/PainterOpenVG.cpp: (WebCore::PainterOpenVG::drawImage): (WebCore::PainterOpenVG::asNewNativeImage):
  • platform/graphics/openvg/PainterOpenVG.h:
  • platform/graphics/openvg/TiledImageOpenVG.cpp: Added. (WebCore::TiledImageOpenVG::TiledImageOpenVG): (WebCore::TiledImageOpenVG::operator=): (WebCore::TiledImageOpenVG::~TiledImageOpenVG): (WebCore::TiledImageOpenVG::numTiles): (WebCore::TiledImageOpenVG::numColumns): (WebCore::TiledImageOpenVG::numRows): (WebCore::TiledImageOpenVG::setTile): (WebCore::TiledImageOpenVG::tilesInRect): (WebCore::TiledImageOpenVG::tile): (WebCore::TiledImageOpenVG::tileRect): (WebCore::TiledImageOpenVG::detachTiles): (WebCore::TiledImageOpenVG::destroyTiles):
  • platform/graphics/openvg/TiledImageOpenVG.h: Added. (WebCore::TiledImageOpenVG::size): (WebCore::TiledImageOpenVG::maxTileSize):
  • platform/graphics/openvg/VGUtils.cpp: (WebCore::VGUtils::bytesForImage): (WebCore::VGUtils::bytesForImageScanline): (WebCore::VGUtils::imageFormatBitsPerPixel): (WebCore::VGUtils::endianAwareImageFormat):
  • platform/graphics/openvg/VGUtils.h:
  • platform/image-decoders/openvg/ImageDecoderOpenVG.cpp: Added. (WebCore::RGBA32Buffer::asNewNativeImage):
11:42 Changeset [59618] by yaar@chromium.org

2010-05-17 Yaar Schnitman <yaar@chromium.org>

Reviewed by Darin Adler.

Fix JSC's generation of 'Optional' arguments. When a single 'Optional' extended attribute precedes multiple method arguments, all of these arguments are optional as a group (either all or non must be specified). This fix, which makes JSC compliant with V8 and with the Web IDL specs, is pretty harmless, since Optional is currently not being used anywhere in JSC, but it blocks further work on overloads.
https://bugs.webkit.org/show_bug.cgi?id=39227

  • bindings/scripts/CodeGeneratorJS.pm:
  • bindings/scripts/test/JS/JSTestObj.cpp: (WebCore::jsTestObjPrototypeFunctionMethodWithNonOptionalArgAndTwoOptionalArgs):
11:05 Changeset [59617] by weinig@apple.com

https://bugs.webkit.org/show_bug.cgi?id=39192
Remove unused PERFECT_HASH code CodeGeneratorJS.

Reviewed by Adam Barth.

  • bindings/scripts/CodeGeneratorJS.pm:
10:57 Changeset [59616] by hyatt@apple.com

Add a test of columns inside columns. The test also puts a RenderLayer in the 2nd column of the 2nd column
to make sure layer positioning works across nested columns.

Reviewed by Dan Bernstein.

  • fast/multicol/nested-columns.html: Added.
  • platform/mac/fast/multicol/nested-columns-expected.txt: Added.
10:54 Changeset [59615] by eric@webkit.org

2010-05-17 Jeremy Moskovich <jeremy@chromium.org>

Reviewed by Jeremy Orlow.

Remove debug code that was introduced to help narrow down the
source of a crash.
https://bugs.webkit.org/show_bug.cgi?id=36426

No change in behavior, so no new tests.

  • loader/FrameLoader.cpp: (WebCore::FrameLoader::finishedLoadingDocument):
10:43 Changeset [59614] by eric@webkit.org

2010-05-17 Tasuku Suzuki <tasuku.suzuki@nokia.com>

Reviewed by Kenneth Rohde Christiansen.

[Qt] Fix compilation with QT_NO_COMBOBOX
https://bugs.webkit.org/show_bug.cgi?id=38324

  • WebCoreSupport/ChromeClientQt.cpp: (WebCore::ChromeClientQt::createSelectPopup):
  • WebCoreSupport/QtFallbackWebPopup.cpp:
  • WebCoreSupport/QtFallbackWebPopup.h:
10:32 Changeset [59613] by eric@webkit.org

2010-05-17 Andreas Kling <andreas.kling@nokia.com>

Reviewed by Kenneth Rohde Christiansen.

Add a test to verify proper behavior of createImageData(ImageData)
and createImageData(width, height) with negative arguments.
https://bugs.webkit.org/show_bug.cgi?id=39189

Spec link:
http://www.whatwg.org/specs/web-apps/current-work/#dom-context-2d-createimagedata

  • fast/canvas/canvas-createImageData-expected.txt: Added.
  • fast/canvas/canvas-createImageData.html: Added.
  • fast/canvas/script-tests/canvas-createImageData.js: Added.

2010-05-17 Andreas Kling <andreas.kling@nokia.com>

Reviewed by Kenneth Rohde Christiansen.

Bring CanvasRenderingContext2D's createImageData() in line with HTML5 spec
Added createImageData(ImageData) which returns a new ImageData with the same size as the one passed.
Changed createImageData(width, height) to use the absolute values of width and height.

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

Spec link:
http://www.whatwg.org/specs/web-apps/current-work/#dom-context-2d-createimagedata

Test: fast/canvas/canvas-createImageData.html

  • bindings/js/JSCanvasRenderingContext2DCustom.cpp: (WebCore::JSCanvasRenderingContext2D::createImageData):
  • html/canvas/CanvasRenderingContext2D.cpp: (WebCore::CanvasRenderingContext2D::createImageData):
  • html/canvas/CanvasRenderingContext2D.h:
  • html/canvas/CanvasRenderingContext2D.idl:
08:37 Changeset [59612] by antti.j.koivisto@nokia.com

This was missing from previous commit.

  • platform/qt/QWebPageClient.h:

(QWebPageClient::graphicsItemVisibleRect):

08:34 Changeset [59611] by antti.j.koivisto@nokia.com

https://bugs.webkit.org/show_bug.cgi?id=39218
[Qt] Tiled backing store tiles sometimes flicker when exiting a zoom animation

Reviewed by Kenneth Rohde Christiansen.

WebCore:

Tiles sometimes flicker when exiting a zoom animation. This happens as a result
of the visible rectangle being momentarily out of sync.

Instead of updating the visible rect by explicitly setting it, pull it through
the client and recompute in the WebKit level.

  • page/ChromeClient.h:

(WebCore::ChromeClient::visibleRectForTiledBackingStore):

  • page/Frame.cpp:

(WebCore::Frame::tiledBackingStoreVisibleRect):

  • page/Frame.h:
  • platform/graphics/TiledBackingStore.cpp:

(WebCore::TiledBackingStore::checkVisibleRectChanged):
(WebCore::TiledBackingStore::createTiles):

  • platform/graphics/TiledBackingStore.h:
  • platform/graphics/TiledBackingStoreClient.h:

WebKit/qt:

Tiles sometimes flicker when exiting a zoom animation. This happens as a result
of the visible rectangle being momentarily out of sync.

Instead of updating the visible rect by explicitly setting it, pull it through
the client and recompute in WebKit the level.

  • Api/qgraphicswebview.cpp:

(QGraphicsWebView::paint):

  • WebCoreSupport/ChromeClientQt.cpp:

(WebCore::ChromeClientQt::visibleRectForTiledBackingStore):

  • WebCoreSupport/ChromeClientQt.h:
08:04 Changeset [59610] by aroben@apple.com

Periodically try to reset a lost IDirect3DDevice9 until we succeed

This is how MSDN says we must respond to a lost device (see
<http://msdn.microsoft.com/en-us/library/bb174714(v=VS.85).aspx>).

Only testable by a manual test, unfortunately.

Fixes <rdar://problem/7986906> <http://webkit.org/b/39139> Pages that
use hardware acceleration don't repaint after waking computer from
sleep

Reviewed by John Sullivan.

  • manual-tests/no-repaint-after-wake-from-sleep.html: Added. This is

the Poster Circle demo from webkit.org/blog, but with instructions for
putting the computer to sleep and waking it up again.

  • platform/graphics/win/WKCACFLayerRenderer.cpp:

(WebCore::WKCACFLayerRenderer::WKCACFLayerRenderer): Initialize new
member that tells us whether we need to try to reset the device before
rendering.
(WebCore::WKCACFLayerRenderer::resize): Changed to tell resetDevice
the reason why the device needs to be reset (which is because the
window's size has changed).
(WebCore::WKCACFLayerRenderer::render): Before we do anything else,
check if we need to reset the device before rendering. If we do, try
to reset it. If that fails, bail out and set a timer to try again
later. If we discover that the device is lost when calling
IDirect3DDevice9::Present and resetting the device fails, bail out and
set a timer to try again later.
(WebCore::WKCACFLayerRenderer::resetDevice): Changed to return a
boolean indicating whether resetting succeeded or not. Added a
ResetReason parameter so callers can specify whey the device needs to
be reset. Before trying to do anything, we call
IDirect3DDevice9::TestCooperativeLevel to find out whether the device
can be reset currently. If it can't, we set a flag to tell ourselves
that the device must be reset before we next render, and indicate to
the caller that the reset failed. If we thought the device was lost
but it turns out not to be, we don't have to do anything and can tell
the caller that the reset succeeded. Otherwise we go ahead and reset
the device as before, and indicate to the caller that the reset
succeeded.

  • platform/graphics/win/WKCACFLayerRenderer.h: Changed resetDevice to

return a boolean and take a ResetReason parameter. Added a comment
about when and why this function should be called. And added
m_mustResetLostDeviceBeforeRendering.

08:04 Changeset [59609] by aroben@apple.com

Call CARenderOGLPurge whenever we call IDirect3DDevice9::Reset

MSDN says that all resoures allocated with D3DPOOL_DEFAULT must be
destroyed before calling IDirect3DDevice9::Reset. The only way to
guarantee this with Core Animation is to call CARenderOGLPurge.

Unfortunately this isn't testable at the moment, as we don't use any
features of Core Animation (e.g., mask layers) that actually make this
required. But it seems like a good idea to fix the code now so that
if/when we do start using those features we won't run into problems.

Fixes <http://webkit.org/b/39159> WKCACFLayerRenderer::resetDevice
might fail due to failing to destroy all D3DPOOL_DEFAULT resources

Reviewed by John Sullivan.

  • platform/graphics/win/WKCACFLayerRenderer.cpp:

(WebCore::WKCACFLayerRenderer::render): Moved the call to
CARenderOGLPurge from here...
(WebCore::WKCACFLayerRenderer::resetDevice): ...to here, so that it
will be called whenever we reset the device (e.g., when resizing the
window).

07:42 Changeset [59608] by kov@webkit.org

2010-05-17 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>

Rubber-stamped by Xan Lopez.

Build fix. Remove bashism from build system.

  • GNUmakefile.am:
07:25 Changeset [59607] by yurys@chromium.org

2010-05-17 Sheriff Bot <webkit.review.bot@gmail.com>

Unreviewed, rolling out r59483.
http://trac.webkit.org/changeset/59483
https://bugs.webkit.org/show_bug.cgi?id=39215

"page_cycler_intl1 regression on Linux" (Requested by yurys on
#webkit).

  • platform/chromium/ChromiumBridge.h:
  • platform/graphics/chromium/FontCacheLinux.cpp: (WebCore::FontCache::getFontDataForCharacters):
06:49 Changeset [59606] by kenneth@webkit.org

REGRESSION(59563): [Qt] JSValue QtClass::fallbackObject can be optimized

Reviewed by Laszlo Gombos.

Patch declared a variable index, which shadowed an earlier declared
variable.

  • bridge/qt/qt_class.cpp:

(JSC::Bindings::QtClass::fallbackObject):

06:33 Changeset [59605] by jorlow@chromium.org

2010-05-14 Andrei Popescu <andreip@google.com>

Reviewed by Jeremy Orlow.

IDBRequest is not a proper ActiveDomObject
https://bugs.webkit.org/show_bug.cgi?id=39001

Add IDBRequest interface to the IsActiveDomType
routine of the CodeGeneratorV8.pm.

Rename IDBRequest::m_stopped to m_suspended and reset
the flag when resume() is called.

No new tests, Indexed Database isn't yet testable.

  • bindings/scripts/CodeGeneratorV8.pm:
  • storage/IDBRequest.cpp: (WebCore::IDBRequest::suspend): (WebCore::IDBRequest::resume): (WebCore::IDBRequest::timerFired): (WebCore::IDBRequest::onEventCommon):
  • storage/IDBRequest.h:
06:22 Changeset [59604] by xan@webkit.org

2010-05-17 Xan Lopez <xlopez@igalia.com>

Do not include the indexed database headers if the feature is not
enabled. Should fix the build in GTK+.

  • bindings/js/JSEventCustom.cpp:
05:55 Changeset [59603] by xan@webkit.org

2010-05-17 Xan Lopez <xlopez@igalia.com>

Try to fix GTK+ build.

  • GNUmakefile.am:
04:20 Changeset [59602] by jorlow@chromium.org

2010-05-14 Jeremy Orlow <jorlow@chromium.org>

Reviewed by Nate Chapin.

Finish up IndexedDB events
https://bugs.webkit.org/show_bug.cgi?id=39117

Add the beginnings of a test for IndexedDB. It currently fails, but we'll
update this (and/or add other tests) as things start passing.

Disable it on all !Chromium platforms since none of them compile it
in. (Note that Chromium keeps it behind a runtime flag at the moment,
despite compiling it in...so don't worry.)

This also makes evalAndLog return the result of the evaluation. I think
this was just an oversight when I originally added it, and it's going to
come in useful for these tests.

  • fast/js/resources/js-test-pre.js: (evalAndLog):
  • platform/gtk/Skipped:
  • platform/mac-leopard/Skipped:
  • platform/mac-snowleopard/Skipped:
  • platform/mac-tiger/Skipped:
  • platform/mac/Skipped:
  • platform/qt/Skipped:
  • platform/win/Skipped:
  • storage/indexeddb/basics-expected.txt: Added.
  • storage/indexeddb/basics.html: Added.
  • storage/indexeddb/script-tests/TEMPLATE.html: Copied from LayoutTests/storage/domstorage/script-tests/TEMPLATE.html.
  • storage/indexeddb/script-tests/basics.js: Added. (eventShared): (successFunction): (errorFunction): (test):

2010-05-14 Jeremy Orlow <jorlow@chromium.org>

Reviewed by Nate Chapin.

Finish up IndexedDB events
https://bugs.webkit.org/show_bug.cgi?id=39117

Implement the indexed database event interfaces as proposed by Mozilla.
Refactor the run time type detection code that was in IDBRequest into its own
class named IDBAny. Use this new class within the new event classes and
IDBResults.

Test: storage/indexeddb/basics.html

  • DerivedSources.cpp:
  • DerivedSources.make:
  • GNUmakefile.am:
  • WebCore.gyp/WebCore.gyp:
  • WebCore.gypi:
  • WebCore.pri:
  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSEventCustom.cpp: (WebCore::toJS):
  • bindings/js/JSEventTarget.cpp: (WebCore::toJS):
  • bindings/js/JSIDBAnyCustom.cpp: Added. (WebCore::toJS):
  • bindings/js/JSIDBRequestCustom.cpp: Removed.
  • bindings/v8/custom/V8EventCustom.cpp: (WebCore::toV8):
  • bindings/v8/custom/V8IDBAnyCustom.cpp: Added. (WebCore::toV8):
  • bindings/v8/custom/V8IDBRequestCustom.cpp: Removed.
  • dom/Event.cpp: (WebCore::Event::isIDBErrorEvent): (WebCore::Event::isIDBSuccessEvent):
  • dom/Event.h:
  • storage/IDBAny.cpp: Added. (WebCore::IDBAny::create): (WebCore::IDBAny::IDBAny): (WebCore::IDBAny::~IDBAny): (WebCore::IDBAny::idbDatabaseRequest): (WebCore::IDBAny::indexedDatabaseRequest): (WebCore::IDBAny::serializedScriptValue): (WebCore::IDBAny::set):
  • storage/IDBAny.h: Added. (WebCore::IDBAny::): (WebCore::IDBAny::type):
  • storage/IDBAny.idl: Added.
  • storage/IDBErrorEvent.cpp: Added. (WebCore::IDBErrorEvent::create): (WebCore::IDBErrorEvent::IDBErrorEvent): (WebCore::IDBErrorEvent::~IDBErrorEvent):
  • storage/IDBErrorEvent.h: Added. (WebCore::IDBErrorEvent::code): (WebCore::IDBErrorEvent::message): (WebCore::IDBErrorEvent::isIDBErrorEvent):
  • storage/IDBErrorEvent.idl: Added.
  • storage/IDBEvent.cpp: Added. (WebCore::IDBEvent::IDBEvent): (WebCore::IDBEvent::~IDBEvent): (WebCore::IDBEvent::source):
  • storage/IDBEvent.h: Added.
  • storage/IDBEvent.idl: Added.
  • storage/IDBRequest.cpp: (WebCore::IDBRequest::IDBRequest): (WebCore::IDBRequest::onSuccess): (WebCore::IDBRequest::timerFired): (WebCore::IDBRequest::onEventCommon):
  • storage/IDBRequest.h: (WebCore::IDBRequest::create): (WebCore::IDBRequest::result):
  • storage/IDBRequest.idl:
  • storage/IDBSuccessEvent.cpp: Added. (WebCore::IDBSuccessEvent::create): (WebCore::IDBSuccessEvent::IDBSuccessEvent): (WebCore::IDBSuccessEvent::~IDBSuccessEvent): (WebCore::IDBSuccessEvent::result):
  • storage/IDBSuccessEvent.h: Added. (WebCore::IDBSuccessEvent::isIDBSuccessEvent):
  • storage/IDBSuccessEvent.idl: Added.
  • storage/IndexedDatabaseImpl.cpp: (WebCore::IndexedDatabaseImpl::open):
  • storage/IndexedDatabaseRequest.cpp: (WebCore::IndexedDatabaseRequest::IndexedDatabaseRequest): (WebCore::IndexedDatabaseRequest::open):
  • storage/IndexedDatabaseRequest.h:
01:44 Changeset [59601] by yurys@chromium.org

2010-05-17 Yury Semikhatsky <yurys@chromium.org>

Unreviewed. Update Chromium test expectations.

  • platform/chromium-win-xp/fast/multicol/client-rects-expected.txt: Removed.
  • platform/chromium/test_expectations.txt:
01:11 Changeset [59600] by eric@webkit.org

2010-05-17 Patrick Gansterer <paroga@paroga.com>

Reviewed by Laszlo Gombos.

[Qt] Remove WinCE endian dedection.
https://bugs.webkit.org/show_bug.cgi?id=38511

Windows CE supports little-endian format only.
Correct dedection was added in r57804.

  • wtf/Platform.h:
01:10 Changeset [59599] by mjs@apple.com

Browser-hosted version of SunSpider runs tests twice as many times as advertised
https://bugs.webkit.org/show_bug.cgi?id=39201

Reviewed by Mark Rowe.

  • make-hosted: Make sure to reset test list after every test suite.
01:03 Changeset [59598] by cjerdonek@webkit.org

Unreviewed.

Removed the stray equals sign from the reviewer's name in the
"Reviewed by" line of the ChangeLog entry for r59596:

http://trac.webkit.org/changeset/59596

00:42 Changeset [59597] by yurys@chromium.org

2010-05-17 Yury Semikhatsky <yurys@chromium.org>

Unreviewed. Update Chromium test expectations.

  • platform/chromium-linux/fast/loader/recursive-before-unload-crash-expected.txt:
  • platform/chromium-linux/fast/multicol/client-rects-expected.txt: Removed.
  • platform/chromium-linux/fast/multicol/column-count-with-rules-expected.checksum: Added.
  • platform/chromium-linux/fast/multicol/column-count-with-rules-expected.png: Added.
  • platform/chromium-linux/fast/multicol/layers-in-multicol-expected.checksum: Added.
  • platform/chromium-linux/fast/multicol/layers-in-multicol-expected.png: Added.
  • platform/chromium-mac/fast/multicol/column-count-with-rules-expected.checksum: Added.
  • platform/chromium-mac/fast/multicol/column-count-with-rules-expected.png: Added.
  • platform/chromium-mac/fast/multicol/layers-in-multicol-expected.checksum: Added.
  • platform/chromium-mac/fast/multicol/layers-in-multicol-expected.png: Added.
  • platform/chromium-win/fast/canvas/canvas-toDataURL-case-insensitive-mimetype-expected.txt: Added.
  • platform/chromium-win/fast/multicol/client-rects-expected.txt:
  • platform/chromium-win/fast/multicol/column-count-with-rules-expected.checksum: Added.
  • platform/chromium-win/fast/multicol/column-count-with-rules-expected.png: Added.
  • platform/chromium-win/fast/multicol/column-count-with-rules-expected.txt: Added.
  • platform/chromium-win/fast/multicol/column-rules-expected.txt:
  • platform/chromium-win/fast/multicol/columns-shorthand-parsing-expected.txt:
  • platform/chromium-win/fast/multicol/float-avoidance-expected.txt:
  • platform/chromium-win/fast/multicol/float-multicol-expected.txt:
  • platform/chromium-win/fast/multicol/layers-in-multicol-expected.checksum: Added.
  • platform/chromium-win/fast/multicol/layers-in-multicol-expected.png: Added.
  • platform/chromium-win/fast/multicol/layers-in-multicol-expected.txt: Added.
  • platform/chromium-win/fast/multicol/single-line-expected.txt:
00:34 Changeset [59596] by cjerdonek@webkit.org

2010-05-16 Chris Jerdonek <cjerdonek@webkit.org>

Reviewed by =Adam Barth.

Refactored FrameLoader::changeLocation() and urlSelected() to share more code.

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

No change in behavior, so no new tests.

  • bindings/ScriptControllerBase.cpp: (WebCore::ScriptController::executeIfJavaScriptURL):
    • Changed a parameter from boolean to the ShouldReplaceDocumentIfJavaScriptURL enum.
  • bindings/js/ScriptController.h:
    • Changed a parameter from boolean to the ShouldReplaceDocumentIfJavaScriptURL enum.
  • bindings/v8/ScriptController.h:
    • Changed a parameter from boolean to the ShouldReplaceDocumentIfJavaScriptURL enum.
  • loader/FrameLoader.cpp: (WebCore::FrameLoader::changeLocation):
    • Changed to call the new private overload of urlSelected().

(WebCore::FrameLoader::urlSelected):

  • Added a private overload of urlSelected().
  • Changed the public urlSelected() to call the private overload.

(WebCore::FrameLoader::submitForm):

  • loader/FrameLoader.h:
    • Added a private overload of urlSelected().
  • loader/FrameLoaderTypes.h:
    • Added a ShouldReplaceDocumentIfJavaScriptURL enum.
00:06 Changeset [59595] by ukai@chromium.org

2010-05-17 Fumitoshi Ukai <ukai@chromium.org>

Reviewed by Eric Seidel.

Chromium: Add --chromium option to new-run-webkit-websocketserver
https://bugs.webkit.org/show_bug.cgi?id=37664

os.environ setup and setup_mount for cygwin are moved in ChromiumWinPort.setup_environ_for_server.

  • Scripts/new-run-webkit-httpd: Remove passing register_cygwin.
  • Scripts/new-run-webkit-websocketserver: Add --chromium flag. Remove passing register_cygwin. Create port object using options.
  • Scripts/webkitpy/layout_tests/port/base.py: Add setup_environ_for_server().
  • Scripts/webkitpy/layout_tests/port/chromium_win.py: Ditto.
  • Scripts/webkitpy/layout_tests/port/factory_unittest.py: Added.
  • Scripts/webkitpy/layout_tests/port/http_server.py: Remove register_cygwin_parameter. Call setup_environ_for_server().
  • Scripts/webkitpy/layout_tests/port/websocket_server.py: Ditto.

05/16/10:

23:10 Changeset [59594] by ukai@chromium.org

Unreviewed

Patch by Takeshi Yoshino <tyoshino@google.com> on 2010-05-16
Update test_expectations.txt for Chromium
fast/loader/recursive-before-unload-crash.html is flaky on Linux and Win
See http://code.google.com/p/chromium/issues/detail?id=44229 for detail.

  • platform/chromium/test_expectations.txt:
23:10 Changeset [59593] by dbates@webkit.org

2010-05-16 Daniel Bates <dbates@rim.com>

Reviewed by Chris Jerdonek.

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

Adds function VCSUtils::parseSvnProperty to parse an SVN property with
either a single-line or multi-line value change.

  • Scripts/VCSUtils.pm:
    • Added function parseSvnProperty. We will use this function towards resolving Bug #38885 <https://bugs.webkit.org/show_bug.cgi?id=38885>.
    • Removed FIXME comment above function parseSvnPropertyValue, since it is being used by parseSvnProperty.
    • Modified function parseSvnPropertyValue to break out of "while (<$fileHandle>)" loop when it encounters the start of the next property so that it can be processed by its caller, parseSvnPropertyValue. We reference this bullet below by (*).
  • Scripts/webkitperl/VCSUtils_unittest/parseSvnProperty.pl: Added.
    • Added unit tests.
  • Scripts/webkitperl/VCSUtils_unittest/parseSvnPropertyValue.pl:
    • Changed the name of the unit test "simple multi-line '-' change" to "single-line '-' change followed by empty line" since the former was an incorrect description of this test.
    • Added unit test "single-line '-' change followed by the next property", and "multi-line '-' change followed by the next property" to test (*) above.
21:58 Changeset [59592] by dbates@webkit.org

2010-05-16 Daniel Bates <dbates@rim.com>

Reviewed by David Hyatt.

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

Rollout changeset 59274 <http://trac.webkit.org/changeset/59274>.

Prepared on behalf of David Hyatt.

"Not worth the memory use." Just roll this out.

  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • editing/visible_units.cpp: (WebCore::previousLinePosition): (WebCore::nextLinePosition):
  • rendering/EllipsisBox.cpp: (WebCore::EllipsisBox::paint): (WebCore::EllipsisBox::selectionRect): (WebCore::EllipsisBox::paintSelection): (WebCore::EllipsisBox::nodeAtPoint):
  • rendering/EllipsisBox.h: (WebCore::EllipsisBox::EllipsisBox): (WebCore::EllipsisBox::height):
  • rendering/InlineBox.cpp: (WebCore::InlineBox::height): (WebCore::InlineBox::adjustPosition): (WebCore::InlineBox::canAccommodateEllipsis):
  • rendering/InlineBox.h: (WebCore::InlineBox::InlineBox): (WebCore::InlineBox::isInlineBox): (WebCore::InlineBox::hasVirtualHeight): (WebCore::InlineBox::setHasVirtualHeight): (WebCore::InlineBox::virtualHeight): (WebCore::InlineBox::setWidth): (WebCore::InlineBox::width): (WebCore::InlineBox::setX): (WebCore::InlineBox::x): (WebCore::InlineBox::setY): (WebCore::InlineBox::y): (WebCore::InlineBox::baselinePosition): (WebCore::InlineBox::lineHeight):
  • rendering/InlineFlowBox.cpp: (WebCore::InlineFlowBox::placeBoxesVertically): (WebCore::InlineFlowBox::computeVerticalOverflow): (WebCore::InlineFlowBox::nodeAtPoint): (WebCore::InlineFlowBox::paintBoxDecorations): (WebCore::InlineFlowBox::paintMask): (WebCore::InlineFlowBox::paintTextDecorations):
  • rendering/InlineFlowBox.h: (WebCore::InlineFlowBox::visibleOverflowRect): (WebCore::InlineFlowBox::topLayoutOverflow): (WebCore::InlineFlowBox::bottomLayoutOverflow): (WebCore::InlineFlowBox::leftLayoutOverflow): (WebCore::InlineFlowBox::rightLayoutOverflow): (WebCore::InlineFlowBox::layoutOverflowRect): (WebCore::InlineFlowBox::topVisualOverflow): (WebCore::InlineFlowBox::bottomVisualOverflow): (WebCore::InlineFlowBox::leftVisualOverflow): (WebCore::InlineFlowBox::rightVisualOverflow): (WebCore::InlineFlowBox::visualOverflowRect): (WebCore::InlineFlowBox::setHorizontalOverflowPositions): (WebCore::InlineFlowBox::setVerticalOverflowPositions):
  • rendering/InlineTextBox.cpp: (WebCore::InlineTextBox::selectionRect): (WebCore::InlineTextBox::placeEllipsisBox): (WebCore::InlineTextBox::nodeAtPoint): (WebCore::InlineTextBox::paint): (WebCore::InlineTextBox::paintSelection): (WebCore::InlineTextBox::paintCompositionBackground): (WebCore::InlineTextBox::paintDecoration): (WebCore::InlineTextBox::paintSpellingOrGrammarMarker): (WebCore::InlineTextBox::paintTextMatchMarker): (WebCore::InlineTextBox::computeRectForReplacementMarker): (WebCore::InlineTextBox::paintCompositionUnderline): (WebCore::InlineTextBox::offsetForPosition): (WebCore::InlineTextBox::positionForOffset):
  • rendering/InlineTextBox.h: (WebCore::InlineTextBox::setSpaceAdd):
  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::positionForPointWithInlineChildren):
  • rendering/RenderBlockLineLayout.cpp: (WebCore::RenderBlock::computeVerticalPositionsForLine): (WebCore::RenderBlock::layoutInlineChildren):
  • rendering/RenderSVGInline.cpp: (WebCore::RenderSVGInline::createInlineFlowBox):
  • rendering/RenderSVGInlineText.cpp: (WebCore::RenderSVGInlineText::createTextBox):
  • rendering/RenderSVGText.cpp: (WebCore::RenderSVGText::createRootInlineBox):
  • rendering/RenderText.cpp: (WebCore::RenderText::positionForPoint): (WebCore::RenderText::firstRunX): (WebCore::RenderText::firstRunY):
  • rendering/RenderTreeAsText.cpp: (WebCore::writeTextRun):
  • rendering/RootInlineBox.cpp: (WebCore::RootInlineBox::placeEllipsis): (WebCore::RootInlineBox::addHighlightOverflow): (WebCore::RootInlineBox::closestLeafChildForXPos):
  • rendering/SVGInlineFlowBox.h: (WebCore::SVGInlineFlowBox::SVGInlineFlowBox): (WebCore::SVGInlineFlowBox::virtualHeight): (WebCore::SVGInlineFlowBox::setHeight):
  • rendering/SVGInlineTextBox.h: (WebCore::SVGInlineTextBox::virtualHeight): (WebCore::SVGInlineTextBox::setHeight): (WebCore::SVGInlineTextBox::selectionTop): (WebCore::SVGInlineTextBox::selectionHeight):
  • rendering/SVGRootInlineBox.h: (WebCore::SVGRootInlineBox::SVGRootInlineBox): (WebCore::SVGRootInlineBox::virtualHeight): (WebCore::SVGRootInlineBox::setHeight):
  • rendering/TrailingFloatsRootInlineBox.h: Added. (WebCore::TrailingFloatsRootInlineBox::TrailingFloatsRootInlineBox): (WebCore::TrailingFloatsRootInlineBox::virtualHeight):
21:08 Changeset [59591] by tony@chromium.org

2010-05-13 Tony Chang <tony@chromium.org>

Reviewed by Darin Adler.

REGRESSION: Crash by pasting to a textarea with white-space:nowrap
https://bugs.webkit.org/show_bug.cgi?id=38992

  • editing/pasteboard/paste-plaintext-nowrap-expected.txt: Added.
  • editing/pasteboard/paste-plaintext-nowrap.html: Added.

2010-05-13 Tony Chang <tony@chromium.org>

Reviewed by Darin Adler.

REGRESSION: Crash by pasting to a textarea with white-space:nowrap
https://bugs.webkit.org/show_bug.cgi?id=38992

Test: editing/pasteboard/paste-plaintext-nowrap.html

  • editing/InsertParagraphSeparatorCommand.cpp: (WebCore::highestVisuallyEquivalentDivBelowRoot): (WebCore::InsertParagraphSeparatorCommand::doApply):
20:34 Changeset [59590] by hyatt@apple.com

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

Reviewed by Dan Bernstein.

Fix all of the multi-column painting and hit testing functions to properly account for RTL directionality.

Added fast/multicol/column-count-with-rules.html

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::paintColumnRules):
(WebCore::RenderBlock::paintColumnContents):
(WebCore::RenderBlock::hitTestColumns):
(WebCore::RenderBlock::adjustRectForColumns):

20:03 Changeset [59589] by mitz@apple.com

Fix SVG test failures after r59588.

Reviewed by Dave Hyatt.

Updated SVG InlineBox virtual method overrides to match HTML ones. Removed
SVGInlineFlowBox::verticallyAlignBoxes() since InlineFlowBox no longer declares
verticallyAlignBoxes().

  • rendering/SVGInlineFlowBox.cpp:

(WebCore::SVGInlineFlowBox::placeBoxesHorizontally):

  • rendering/SVGInlineFlowBox.h:
  • rendering/SVGRootInlineBox.cpp:

(WebCore::SVGRootInlineBox::placeBoxesHorizontally):
(WebCore::SVGRootInlineBox::verticallyAlignBoxes):

  • rendering/SVGRootInlineBox.h:
18:43 Changeset [59588] by mitz@apple.com

Move transient glyph overflow and fallback font data from a global to the stack
https://bugs.webkit.org/show_bug.cgi?id=39050

Reviewed by Darin Adler.

  • rendering/InlineFlowBox.cpp:

(WebCore::InlineFlowBox::placeBoxesHorizontally): Added a GlyphOverflowAndFallbackFontsMap
parameter. Read glyph overflow from the map.
(WebCore::InlineFlowBox::computeLogicalBoxHeights): Added a GlyphOverflowAndFallbackFontsMap
parameter. Read fallback fonts from the map.
(WebCore::InlineFlowBox::computeVerticalOverflow): Added a GlyphOverflowAndFallbackFontsMap
parameter. Read glyph overflow from the map.

  • rendering/InlineFlowBox.h:
  • rendering/InlineTextBox.cpp: Removed setFallbackFonts(), fallbackFonts(), setGlyphOverflow(),

and glyphOverflow(). Removed s_glyphOverflowAndFallbackFontsMap.

  • rendering/InlineTextBox.h:
  • rendering/RenderBlock.h:
  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlock::computeHorizontalPositionsForLine): Added a GlyphOverflowAndFallbackFontsMap
parameter. Write fallback fonts and glyph overflow into the map.
(WebCore::RenderBlock::computeVerticalPositionsForLine): Added a GlyphOverflowAndFallbackFontsMap
parameter. Pass it down to verticallyAlignBoxes().
(WebCore::RenderBlock::layoutInlineChildren): Create a GlyphOverflowAndFallbackFontsMap on the
stack and pass it down to computeHorizontalPositionsForLine(), computeVerticalPositionsForLine(),
and verticallyAlignBoxes().

  • rendering/RootInlineBox.cpp:

(WebCore::RootInlineBox::verticallyAlignBoxes): Added a GlyphOverflowAndFallbackFontsMap parameter.
Pass it down to computeLogicalBoxHeights() and computeVerticalOverflow().

  • rendering/RootInlineBox.h:
  • rendering/SVGRootInlineBox.cpp:

(WebCore::SVGRootInlineBox::layoutInlineBoxes): Updated.

18:02 Changeset [59587] by simon.fraser@apple.com

2010-05-16 Simon Fraser <simon.fraser@apple.com>

Reviewed by Darin Adler.

Reduce the size of FunctionExecutable
https://bugs.webkit.org/show_bug.cgi?id=39180

Change m_numVariables from a size_t to 31 bits in a bitfield,
packed with another bit for m_forceUsesArguments (which in turn
get packed with the base class).

Reduces the size of FunctionExecutable from 160 to 152 bytes.

  • runtime/Executable.h: (JSC::FunctionExecutable::variableCount): (JSC::FunctionExecutable::FunctionExecutable):
18:00 Changeset [59586] by tony@chromium.org

2010-05-16 Tony Chang <tony@chromium.org>

Not reviewed, fixing layout test.

Add tiger and SL results. Remove Inspect Element from leopard results.

  • platform/mac-leopard/editing/spelling/context-menu-suggestions-expected.txt:
  • platform/mac-snowleopard/editing/spelling/context-menu-suggestions-expected.txt: Added.
  • platform/mac-tiger/editing/spelling/context-menu-suggestions-expected.txt: Added.

2010-05-16 Tony Chang <tony@chromium.org>

Not reviewed, fixing layout test.

Don't output Inspect Element since this is not enabled on the bots,
but most developers probably have it installed.

  • DumpRenderTree/mac/EventSendingController.mm: (-[EventSendingController contextClick:]):
17:26 Changeset [59585] by tony@chromium.org

2010-05-12 Tony Chang <tony@chromium.org>

Reviewed by Darin Adler.

Spellcheck disabling does not disable context menu
https://bugs.webkit.org/show_bug.cgi?id=25639

  • editing/spelling/context-menu-suggestions.html: Added.
  • platform/chromium/test_expectations.txt:
  • platform/gtk/Skipped:
  • platform/mac-leopard/editing/spelling/context-menu-suggestions-expected.txt: Added.
  • platform/qt/Skipped:
  • platform/win/Skipped:

2010-05-12 Tony Chang <tony@chromium.org>

Reviewed by Darin Adler.

Spellcheck disabling does not disable context menu
https://bugs.webkit.org/show_bug.cgi?id=25639

Test: editing/spelling/context-menu-suggestions.html

  • platform/ContextMenu.cpp: (WebCore::ContextMenu::populate):

2010-05-12 Tony Chang <tony@chromium.org>

Reviewed by Darin Adler.

Spellcheck disabling does not disable context menu
https://bugs.webkit.org/show_bug.cgi?id=25639

  • DumpRenderTree/mac/EventSendingController.mm: (+[EventSendingController isSelectorExcludedFromWebScript:]): (+[EventSendingController webScriptNameForSelector:]): (-[EventSendingController contextClick:]): add a bool parameter that

when true, dumps the context menu items to stdout.

16:48 Changeset [59584] by crogers@google.com

compile fixes for Snow Leopard

16:42 Changeset [59583] by weinig@apple.com

https://bugs.webkit.org/show_bug.cgi?id=39190
Shave a word off of GlyphPageTreeNode
<rdar://problem/7990428>

Reviewed by Dan Bernstein.

  • platform/graphics/GlyphPageTreeNode.h:

(WebCore::GlyphPageTreeNode::GlyphPageTreeNode):

14:46 Changeset [59582] by eric@webkit.org

2010-05-16 Andreas Kling <andreas.kling@nokia.com>

Reviewed by Kenneth Rohde Christiansen.

Add a test to verify proper handling of invalid arguments to getImageData().
Updated old putImageData() test with correct expectations.

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

Spec link:
http://www.whatwg.org/specs/web-apps/current-work/#pixel-manipulation

  • fast/canvas/canvas-getImageData-invalid-expected.txt: Added.
  • fast/canvas/canvas-getImageData-invalid.html: Added.
  • fast/canvas/canvas-putImageData-expected.txt:
  • fast/canvas/canvas-putImageData.js:
  • fast/canvas/script-tests/canvas-getImageData-invalid.js: Added.

2010-05-16 Andreas Kling <andreas.kling@nokia.com>

Reviewed by Kenneth Rohde Christiansen.

Properly handle invalid arguments to CanvasRenderingContext2D's getImageData() and putImageData().
Both should throw NOT_SUPPORTED_ERR when called with nonfinite arguments.
getImageData() should throw INDEX_SIZE_ERR if either width or height is 0.

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

Spec link:
http://www.whatwg.org/specs/web-apps/current-work/#pixel-manipulation

Test: fast/canvas/canvas-getImageData-invalid.html

  • html/canvas/CanvasRenderingContext2D.cpp: (WebCore::CanvasRenderingContext2D::createImageData): (WebCore::CanvasRenderingContext2D::getImageData): (WebCore::CanvasRenderingContext2D::putImageData):
14:08 Changeset [59581] by eric@webkit.org

2010-05-16 Andreas Kling <andreas.kling@nokia.com>

Reviewed by Kenneth Rohde Christiansen.

Add a test to verify that Canvas's toDataURL() is case insensitive wrt the mimeType argument.
https://bugs.webkit.org/show_bug.cgi?id=39153

Spec link:
http://www.whatwg.org/specs/web-apps/current-work/#dom-canvas-todataurl

  • fast/canvas/canvas-toDataURL-case-insensitive-mimetype-expected.txt: Added.
  • fast/canvas/canvas-toDataURL-case-insensitive-mimetype.html: Added.
  • fast/canvas/script-tests/canvas-toDataURL-case-insensitive-mimetype.js: Added. (tryMimeType):
  • platform/gtk/fast/canvas/canvas-toDataURL-case-insensitive-mimetype-expected.txt: Added.

2010-05-16 Andreas Kling <andreas.kling@nokia.com>

Reviewed by Kenneth Rohde Christiansen.

Canvas's toDataURL() should be case insensitive wrt the mimeType argument.
https://bugs.webkit.org/show_bug.cgi?id=39153

Spec link:
http://www.whatwg.org/specs/web-apps/current-work/#dom-canvas-todataurl

Test: fast/canvas/canvas-toDataURL-case-insensitive-mimetype.html

  • dom/CanvasSurface.cpp: (WebCore::CanvasSurface::toDataURL):
13:13 Changeset [59580] by robert@webkit.org

[Qt] Fix FrameLoaderClientQt.cpp to print relative filename paths correctly.

2010-05-16 Robert Hogan <robert@webkit.org>

Reviewed by Kenneth Rohde Christiansen.

Fix FrameLoaderClientQt.cpp to print relative filename paths correctly.

Move qt_* functions in FrameLoaderClientQt, EditorClientQt, and NotificationPresenterClientQt
to DumpRenderTreeSupportQt. Create new functions to replace them in DumpRenderTreeSupportQt.
Support for the old function names is retained until confirmed that no one uses them outside
QtWebKit.

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

  • WebCoreSupport/DumpRenderTreeSupportQt.cpp: (DumpRenderTreeSupportQt::dumpFrameLoader): (DumpRenderTreeSupportQt::dumpResourceLoadCallbacks): (DumpRenderTreeSupportQt::dumpResourceLoadCallbacksPath): (DumpRenderTreeSupportQt::setWillSendRequestReturnsNullOnRedirect): (DumpRenderTreeSupportQt::setWillSendRequestReturnsNull): (DumpRenderTreeSupportQt::setWillSendRequestClearHeaders): (DumpRenderTreeSupportQt::dumpEditingCallbacks): (DumpRenderTreeSupportQt::dumpSetAcceptsEditing): (DumpRenderTreeSupportQt::dumpNotification): (qt_dump_frame_loader): (qt_dump_resource_load_callbacks): (qt_dump_resource_load_callbacks_path): (qt_set_will_send_request_returns_null_on_redirect): (qt_set_will_send_request_returns_null): (qt_set_will_send_request_clear_headers): (qt_dump_editing_callbacks): (qt_dump_set_accepts_editing): (qt_dump_notification):
  • WebCoreSupport/DumpRenderTreeSupportQt.h:
  • WebCoreSupport/EditorClientQt.cpp:
  • WebCoreSupport/EditorClientQt.h:
  • WebCoreSupport/FrameLoaderClientQt.cpp: (drtDescriptionSuitableForTestResult):
  • WebCoreSupport/FrameLoaderClientQt.h:
  • WebCoreSupport/NotificationPresenterClientQt.cpp:
  • WebCoreSupport/NotificationPresenterClientQt.h:

Update Qt DRT to use frame loader, editor client and notificaiton presenter
functions in DumpRenderTreeSupportQt.

  • DumpRenderTree/qt/DumpRenderTreeQt.cpp: (WebCore::DumpRenderTree::open): (WebCore::DumpRenderTree::dump):
  • DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::LayoutTestController): (LayoutTestController::reset): (LayoutTestController::dumpEditingCallbacks): (LayoutTestController::dumpFrameLoadCallbacks): (LayoutTestController::dumpResourceLoadCallbacks): (LayoutTestController::setWillSendRequestReturnsNullOnRedirect): (LayoutTestController::setWillSendRequestReturnsNull): (LayoutTestController::setWillSendRequestClearHeader):

Unskip fast/loader/main-document-url-for-non-http-loads.html

  • platform/qt/Skipped:
11:01 Changeset [59579] by eric@webkit.org

2010-05-16 Mike Belshe <mbelshe@chromium.org>

Reviewed by Dimitri Glazkov.

Add a flag to the ResourceResponse for tracking if a request was
fetched via the TLS/Next-Protocol-Negotiation mechanism.

Also cleaned up the style in ResourceResponse to group the flags
together (and alphabetically) and hopefully improve readability of
the file.

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

  • public/WebURLResponse.h:
  • src/WebURLResponse.cpp: (WebKit::WebURLResponse::wasNpnNegotiated): (WebKit::WebURLResponse::setWasNpnNegotiated):
10:50 Changeset [59578] by eric@webkit.org

2010-05-16 Eric Seidel <eric@webkit.org>

Unreviewed, rolling out r59571.
http://trac.webkit.org/changeset/59571
https://bugs.webkit.org/show_bug.cgi?id=39054

Broke Cr Win, but we didn't notice immediately due to
https://bugs.webkit.org/show_bug.cgi?id=38926. It's possible
that this didn't actually break Cr Win, but rather that bug
38926 necessitates a clean compile after this and sucessive
checkins only produced a partial recompile and thus failed to
build.

  • DEPS:
  • WebKit.gyp:
  • features.gypi:

2010-05-16 Eric Seidel <eric@webkit.org>

Unreviewed, rolling out r59571.
http://trac.webkit.org/changeset/59571
https://bugs.webkit.org/show_bug.cgi?id=39054

Broke Cr Win, but we didn't notice immediately due to
https://bugs.webkit.org/show_bug.cgi?id=38926. It's possible
that this didn't actually break Cr Win, but rather that bug
38926 necessitates a clean compile after this and sucessive
checkins only produced a partial recompile and thus failed to
build.

  • DumpRenderTree/chromium/WebViewHost.cpp: (WebViewHost::canvas):
10:24 Changeset [59577] by simon.fraser@apple.com

2010-05-16 Simon Fraser <simon.fraser@apple.com>

Reviewed by Anders Carlsson.

Shrink SimpleFontData
https://bugs.webkit.org/show_bug.cgi?id=39179

Change SimpleFontData to have a pointer to the m_glyphToBoundsMap,
and to allocate this lazily. This reduces the size of the class from
5632 to 1536 bytes.

  • platform/graphics/SimpleFontData.h: (WebCore::SimpleFontData::boundsForGlyph):
08:43 Changeset [59576] by simon.fraser@apple.com

2010-05-15 Simon Fraser <simon.fraser@apple.com>

Reviewed by Maciej Stachowiak.

Reduce the size of CachedResource
https://bugs.webkit.org/show_bug.cgi?id=39171

Make protected data members of CachedResource private, to allow for
easier rearrangement, and hide the fact that enums are in bitfields.

Rearrange the data members of CachedResource to save 32 bytes per instance
in 64-bit. Also modernized the constructor code.

  • loader/CachedCSSStyleSheet.cpp: (WebCore::CachedCSSStyleSheet::didAddClient): (WebCore::CachedCSSStyleSheet::data): (WebCore::CachedCSSStyleSheet::checkNotify): (WebCore::CachedCSSStyleSheet::error):
  • loader/CachedFont.cpp: (WebCore::CachedFont::load): (WebCore::CachedFont::didAddClient): (WebCore::CachedFont::data): (WebCore::CachedFont::ensureCustomFontData): (WebCore::CachedFont::ensureSVGFontData): (WebCore::CachedFont::checkNotify): (WebCore::CachedFont::error):
  • loader/CachedImage.cpp: (WebCore::CachedImage::CachedImage): (WebCore::CachedImage::load): (WebCore::CachedImage::didAddClient): (WebCore::CachedImage::allClientsRemoved): (WebCore::CachedImage::image): (WebCore::CachedImage::data): (WebCore::CachedImage::error): (WebCore::CachedImage::checkNotify): (WebCore::CachedImage::destroyDecodedData):
  • loader/CachedImage.h: (WebCore::CachedImage::stillNeedsLoad):
  • loader/CachedResource.cpp: (WebCore::CachedResource::CachedResource):
  • loader/CachedResource.h: (WebCore::CachedResource::type): (WebCore::CachedResource::preloadResult): (WebCore::CachedResource::status): (WebCore::CachedResource::setStatus): (WebCore::CachedResource::isLoaded): (WebCore::CachedResource::isLoading): (WebCore::CachedResource::setErrorOccurred):
  • loader/CachedScript.cpp: (WebCore::CachedScript::didAddClient): (WebCore::CachedScript::data): (WebCore::CachedScript::checkNotify): (WebCore::CachedScript::error):
  • loader/CachedXSLStyleSheet.cpp: (WebCore::CachedXSLStyleSheet::didAddClient): (WebCore::CachedXSLStyleSheet::data): (WebCore::CachedXSLStyleSheet::checkNotify): (WebCore::CachedXSLStyleSheet::error):
06:44 Changeset [59575] by eric@webkit.org

2010-05-16 Sheriff Bot <webkit.review.bot@gmail.com>

Unreviewed, rolling out r59574.
http://trac.webkit.org/changeset/59574
https://bugs.webkit.org/show_bug.cgi?id=39176

Supposedly broke cr-win, but the errors seems somewhat
unrelated (Requested by abarth on #webkit).

  • platform/network/chromium/ResourceResponse.h: (WebCore::ResourceResponse::ResourceResponse): (WebCore::ResourceResponse::setSecurityInfo): (WebCore::ResourceResponse::isContentFiltered): (WebCore::ResourceResponse::setIsContentFiltered): (WebCore::ResourceResponse::setAppCacheID): (WebCore::ResourceResponse::setAppCacheManifestURL): (WebCore::ResourceResponse::setWasFetchedViaSPDY): (WebCore::ResourceResponse::setIsMultipartPayload): (WebCore::ResourceResponse::setResponseTime):

2010-05-16 Sheriff Bot <webkit.review.bot@gmail.com>

Unreviewed, rolling out r59574.
http://trac.webkit.org/changeset/59574
https://bugs.webkit.org/show_bug.cgi?id=39176

Supposedly broke cr-win, but the errors seems somewhat
unrelated (Requested by abarth on #webkit).

  • public/WebURLResponse.h:
  • src/WebURLResponse.cpp:
01:58 Changeset [59574] by eric@webkit.org

2010-05-16 Mike Belshe <mbelshe@chromium.org>

Reviewed by Dimitri Glazkov.

Add a flag to the ResourceResponse for tracking if a request was
fetched via the TLS/Next-Protocol-Negotiation mechanism.

Also cleaned up the style in ResourceResponse to group the flags
together (and alphabetically) and hopefully improve readability of
the file.

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

  • public/WebURLResponse.h:
  • src/WebURLResponse.cpp: (WebKit::WebURLResponse::wasNpnNegotiated): (WebKit::WebURLResponse::setWasNpnNegotiated):
01:55 Changeset [59573] by robert@webkit.org

[Qt]Unskip security/set-form-autocomplete-attribute.html

2010-05-16 Robert Hogan <robert@webkit.org>

Reviewed by Kenneth Rohde Christiansen.

[Qt]Unskip security/set-form-autocomplete-attribute.html

Add support for layoutTestController.elementDoesAutoCompleteForElementWithId().

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

  • DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::elementDoesAutoCompleteForElementWithId):
  • DumpRenderTree/qt/LayoutTestControllerQt.h:
  • WebCoreSupport/DumpRenderTreeSupportQt.cpp: (DumpRenderTreeSupportQt::elementDoesAutoCompleteForElementWithId):
  • WebCoreSupport/DumpRenderTreeSupportQt.h:
  • platform/qt/Skipped:
01:49 Changeset [59572] by hausmann@webkit.org

[Qt] Prospective Qt/Mac build fix.

The friend declaration of QGraphicsWidget confuses gcc and thinks that it's an implicit
forward declaration, moving the class into the WebCore namespace (WebCore::QGraphicsWidget).

The declaration seems useless as no method of QGraphicsWidget is going to call anything
in this class.

  • WebCoreSupport/PageClientQt.h:
01:47 Changeset [59571] by eric@webkit.org

2010-05-16 Kent Tamura <tkent@chromium.org>

Reviewed by Dimitri Glazkov.

[DRT/Chromium] Fix repaint, WebGL, textarea tests
https://bugs.webkit.org/show_bug.cgi?id=39054

  • DEPS: Update to Chromium r47248 to use a fix for CommandLine assertion and textAreaResizeCorner.png
  • WebKit.gyp: Add textAreaResizeCorner.png as a Mac resource
  • features.gypi: Enable ENABLE_3D_CANVAS.

2010-05-16 Kent Tamura <tkent@chromium.org>

Reviewed by Dimitri Glazkov.

[DRT/Chromium] Fix repaint, WebGL, textarea tests
https://bugs.webkit.org/show_bug.cgi?id=39054

  • DumpRenderTree/chromium/WebViewHost.cpp: (WebViewHost::canvas): Remove m_paintRect initialization in canvas(). This line updated m_paintRect unexpectedly during paintRect(). We don't need to initialize m_paintRect because show() does it.
01:10 Changeset [59570] by eric@webkit.org

2010-05-16 Dan Bernstein <mitz@apple.com>

Reviewed by Darin Adler.

Scalar types allocated on the heap due to misuse of DEFINE_STATIC_LOCAL
https://bugs.webkit.org/show_bug.cgi?id=39086

Use global variables directly.

  • bindings/v8/ScriptCallStack.cpp: (WebCore::ScriptCallStack::createUtilityContext):
  • platform/ScrollView.cpp: (WebCore::ScrollView::wheelEvent):
  • platform/graphics/mac/ComplexTextController.cpp: (WebCore::shouldUseATSUIAPI):
00:58 Changeset [59569] by eric@webkit.org

2010-05-16 Andreas Kling <andreas.kling@nokia.com>

Reviewed by Kenneth Rohde Christiansen.

Add a test to check proper return value (null) from invalid canvas getContext() calls.

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

  • fast/canvas/canvas-getContext-invalid-expected.txt: Added.
  • fast/canvas/canvas-getContext-invalid.html: Added.
  • fast/canvas/script-tests/canvas-getContext-invalid.js: Added.

2010-05-16 Andreas Kling <andreas.kling@nokia.com>

Reviewed by Kenneth Rohde Christiansen.

Canvas's getContext() must return null when called with an invalid/unsupported parameter.
(HTML5 spec 4.8.11): http://www.whatwg.org/specs/web-apps/current-work/multipage/the-canvas-element.html#dom-canvas-getcontext

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

Test: fast/canvas/canvas-getContext-invalid.html

  • bindings/js/JSHTMLCanvasElementCustom.cpp: (WebCore::JSHTMLCanvasElement::getContext):
  • bindings/v8/custom/V8HTMLCanvasElementCustom.cpp: (WebCore::V8HTMLCanvasElement::getContextCallback):
00:44 Changeset [59568] by eric@webkit.org

2010-05-16 Sergio Villar Senin <svillar@igalia.com>

Reviewed by Gustavo Noronha Silva.

Removed 5 http/history tests from Skipped file

[GTK] Improve reporting of frame loader callbacks in DRT
https://bugs.webkit.org/show_bug.cgi?id=36454

  • platform/gtk/Skipped:

2010-05-16 Sergio Villar Senin <svillar@igalia.com>

Reviewed by Gustavo Noronha Silva.

[GTK] Improve reporting of frame loader callbacks in DRT
https://bugs.webkit.org/show_bug.cgi?id=36454

  • DumpRenderTree/gtk/DumpRenderTree.cpp: (webViewLoadStatusNotified): (createWebView): added connection to notify::load-status and signal callback
Note: See TracTimeline for information about the timeline view.