Timeline
Sep 27, 2008:
- 10:38 PM Changeset in webkit [37030] by
-
- 5 edits in trunk/WebCore
2008-09-27 Eric Carlson <eric.carlson@apple.com>
Reviewed by Sam Weinig.
fix https://bugs.webkit.org/show_bug.cgi?id=20994
<rdar://problem/6171023> HTMLVideoElement width and height attributes are now unsigned
HTML5 spec says HTMLVideoElement width and height attributes should be unsigned. Convert
all unsigned media attributes from string with toUInt() instead of toInt().
- html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::playCount): convert from attribute with toUInt().
- html/HTMLVideoElement.cpp: (WebCore::HTMLVideoElement::videoWidth): (WebCore::HTMLVideoElement::videoHeight): return unsigned to match idl. (WebCore::HTMLVideoElement::width): convert from attribute with toUInt() and return unsigned value. (WebCore::HTMLVideoElement::height): Ditto. (WebCore::HTMLVideoElement::setWidth): take unsigned value. (WebCore::HTMLVideoElement::setHeight): Ditto.
- html/HTMLVideoElement.h: width, height, videoWidth, and videoHeight are unsigned.
- html/HTMLVideoElement.idl: make width and height unsigned to match HTML5 spec.
- 9:59 PM Changeset in webkit [37029] by
-
- 1 edit in trunk/WebCore/platform/mac/WheelEventMac.mm
Fix indentation error from bug 17589 fix made in WheelEventMac.mm
- 9:57 PM Changeset in webkit [37028] by
-
- 1 edit in trunk/WebCore/platform/PlatformWheelEvent.h
It's SENSITIVE. SENSITIVE. Not SENSIBLE.
- 9:40 PM Changeset in webkit [37027] by
-
- 2 edits in trunk/WebCore
Fixes an exception when typing a command in the Console.
Reviewed by Oliver Hunt.
- page/inspector/Console.js: (WebInspector.Console.prototype.addMessage): Null check this.previosMessage.
- 9:40 PM Changeset in webkit [37026] by
-
- 2 edits in trunk/WebCore
Fixes a bug where the Profiles panel sidebar would be empty
after closing and reopening the Web Inspector.
Reviewed by Sam Weinig.
- page/inspector/ProfilesPanel.js: (WebInspector.ProfilesPanel.prototype.reset): Don't call populateInterface, it is called automatically. (WebInspector.ProfilesPanel.prototype._populateProfiles): Return early if the sidebar is already populated.
- 9:38 PM Changeset in webkit [37025] by
-
- 2 edits in trunk/WebCore
Fix for line step being too small on Windows.
- 8:51 PM Changeset in webkit [37024] by
-
- 7 edits in trunk/WebCore
2008-09-27 David Hyatt <hyatt@apple.com>
Make the scrollbarUnderMouse method cross-platform.
Reviewed by Sam Weinig
- platform/ScrollView.cpp: (WebCore::ScrollView::scrollbarUnderMouse):
- platform/gtk/ScrollViewGtk.cpp:
- platform/mac/ScrollViewMac.mm:
- platform/qt/ScrollViewQt.cpp:
- platform/win/ScrollViewWin.cpp:
- platform/wx/ScrollViewWx.cpp:
- 6:50 PM Changeset in webkit [37023] by
-
- 2 edits in trunk/WebCore
Gtk+ build fix.
- 6:49 PM Changeset in webkit [37022] by
-
- 5 edits in trunk
/
2008-09-27 Jan Michael Alonzo <jmalonzo@webkit.org>
Reviewed by Holger Freyther.
https://bugs.webkit.org/show_bug.cgi?id=20287
[Gtk] disable plugins for gtk/directfb target
Introduce WTF_PLATFORM_X11 for X11 builds.
Also use target-specific packages when building the port
- configure.ac: Do not check for cairo-ft for directfb builds.
WebCore
2008-09-27 Jan Michael Alonzo <jmalonzo@webkit.org>
Reviewed by Holger Freyther.
https://bugs.webkit.org/show_bug.cgi?id=20287
[Gtk] disable plugins for gtk/directfb target
Introduce WTF_PLATFORM_X11 for X11 builds.
Also use target-specific packages when building the port
- platform/gtk/PlatformScreenGtk.cpp:
- plugins/gtk/PluginViewGtk.cpp: (WebCore::PluginView::updatePluginWidget): (WebCore::PluginView::getValueStatic): (WebCore::PluginView::getValue): (WebCore::PluginView::init):
- 6:08 PM Changeset in webkit [37021] by
-
- 1 edit in trunk/WebKit/win/WebView.cpp
Missed WebKit single line change.
- 6:07 PM Changeset in webkit [37020] by
-
- 1 edit in trunk/WebCore/platform/ScrollView.cpp
Oops. Checked in stale file.
- 6:07 PM Changeset in webkit [37019] by
-
- 12 edits in trunk/WebCore
2008-09-27 David Hyatt <hyatt@apple.com>
Make scrollbar suppression and resizer avoidance cross-platform.
Reviewed by Anders
- loader/FrameLoader.cpp: (WebCore::FrameLoader::transitionToCommitted):
- page/FrameView.cpp: (WebCore::FrameView::resetScrollbars): (WebCore::FrameView::clear): (WebCore::FrameView::layout): (WebCore::FrameView::restoreScrollbar): (WebCore::FrameView::windowResizerRect):
- page/FrameView.h:
- platform/ScrollView.cpp: (WebCore::ScrollView::init): (WebCore::ScrollView::resizerOverlapsContent): (WebCore::ScrollView::adjustScrollbarsAvoidingResizerCount): (WebCore::ScrollView::setParent): (WebCore::ScrollView::setScrollbarsSuppressed): (WebCore::ScrollView::platformSetScrollbarsSuppressed):
- platform/ScrollView.h: (WebCore::ScrollView::scrollbarsSuppressed): (WebCore::ScrollView::windowResizerRect):
- platform/Scrollbar.cpp: (WebCore::Scrollbar::setFrameRect): (WebCore::Scrollbar::setParent):
- platform/gtk/ScrollViewGtk.cpp: (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate): (WebCore::ScrollView::ScrollViewPrivate::adjustmentChanged): (WebCore::ScrollView::updateScrollbars): (WebCore::ScrollView::paint):
- platform/mac/ScrollViewMac.mm: (WebCore::ScrollView::ScrollView): (WebCore::ScrollView::~ScrollView): (WebCore::ScrollView::platformSetScrollbarsSuppressed): (WebCore::ScrollView::setScrollPosition):
- platform/qt/ScrollViewQt.cpp: (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate): (WebCore::ScrollView::ScrollViewPrivate::valueChanged): (WebCore::ScrollView::frameRectsChanged): (WebCore::ScrollView::updateScrollbars): (WebCore::ScrollView::paint):
- platform/win/ScrollViewWin.cpp: (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate): (WebCore::ScrollView::ScrollViewPrivate::valueChanged): (WebCore::ScrollView::updateScrollbars): (WebCore::ScrollView::paint):
- platform/wx/ScrollViewWx.cpp: (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
- 4:58 PM Changeset in webkit [37018] by
-
- 1 edit in trunk/LayoutTests/fast/dom/Window/window-properties-expected.txt
Update a layout test result to add console.trace.
- 4:46 PM Changeset in webkit [37017] by
-
- 2 edits in trunk/WebCore
2008-09-27 Holger Hans Peter Freyther <zecke@selfish.org>
Rubber-stamped by Anders Carlsson.
Compile fix.
- plugins/PluginView.cpp: (WebCore::PluginView::load):
- 4:23 PM Changeset in webkit [37016] by
-
- 2 edits in trunk/WebCore
Fix <https://bugs.webkit.org/show_bug.cgi?id=21184>.
Bug 21184: REGRESSION: Reproducible crash below StringImpl::hash while running editing/deleting/5408255.html
Remove an assertion that was incorrect and that if made correct would have duplicated a check that occurred earlier in the function.
Rubber-stamped by Sam Weinig.
- loader/CachedResource.cpp:
(WebCore::CachedResource::~CachedResource):
- 3:56 PM Changeset in webkit [37015] by
-
- 2 edits in trunk
2008-09-27 Marco Barisione <marco.barisione@collabora.co.uk>
Reviewed by Holger Freyther.
http://bugs.webkit.org/show_bug.cgi?id=21174
[GTK][AUTOTOOLS] Enable large file support at configure time
- configure.ac: Enable large file support with AC_SYS_LARGEFILE.
- 3:46 PM Changeset in webkit [37014] by
-
- 2 edits in trunk/WebCore
[qt] Use QImageReader to figure out which image formats are supported
- Qt can have many different plugins for different image formats. Instead of checking only for a few in WebCore use Qt to determine if this data can be treated as an image.
- 3:45 PM Changeset in webkit [37013] by
-
- 3 edits in trunk/WebCore
[qt] Clean the pattern code
- Use save/restore on the painter after manipulating the pen/brush
- Make the context and object null checking consistent. CG is using the object unconditionally so the Qt webkit platform can do the same.
- Move code below the early exit. Only use the m_ownerElement before the early exit as the CG code is doing it.
- 3:18 PM Changeset in webkit [37012] by
-
- 8 edits in trunk
Added support for console.trace.
2008-09-27 Keishi Hattori <casey.hattori@gmail.com>
Added Machine::retrieveCaller to the export list.
Reviewed by Kevin McCullough and Tim Hatcher.
- JavaScriptCore.exp: Added Machine::retrieveCaller.
WebCore:
2008-09-27 Keishi Hattori <casey.hattori@gmail.com>
Added support for console.trace.
Reviewed by Kevin McCullough and Tim Hatcher.
- bindings/js/JSConsoleCustom.cpp: (WebCore::JSConsole::trace):
- page/Console.cpp: (WebCore::Console::trace): Calls Machine::retrieveCaller to get a stack trace.
- page/Console.h: (WebCore::): Added TraceMessageLevel.
- page/Console.idl: Added console.trace.
- page/inspector/Console.js: (ConsoleMessage): Added case for TraceMessageLevel.
- 3:18 PM Changeset in webkit [37011] by
-
- 2 edits in trunk/WebKit/mac
2008-09-27 David Hyatt <hyatt@apple.com>
Make sure Mac null checks the view like the other platforms do now that Mac goes through WebCore
to call setAllowsScrolling.
Reviewed by Mark Rowe
- WebCoreSupport/WebFrameLoaderClient.mm: (WebFrameLoaderClient::createFrame):
- 3:15 PM Changeset in webkit [37010] by
-
- 5 edits in trunk/WebKit
WebKit/qt:
2008-09-27 David Hyatt <hyatt@apple.com>
Forgot to land renaming changes in WebKit.
- Api/qwebframe.cpp: (QWebFrame::render): (QWebFrame::pos): (QWebFrame::geometry):
- Api/qwebpage.cpp: (QWebPage::viewportSize): (QWebPage::setViewportSize):
WebKit/win:
2008-09-27 David Hyatt <hyatt@apple.com>
Land the frameGeometry->frameRect changes that I forgot to land in WebKit.
- Interfaces/IWebScrollBarPrivate.idl:
- WebCoreSupport/EmbeddedWidget.cpp: (EmbeddedWidget::setFrameRect): (EmbeddedWidget::frameRectsChanged):
- WebCoreSupport/EmbeddedWidget.h:
- WebScrollBar.cpp: (WebScrollBar::setRect): (WebScrollBar::frameRect):
- WebScrollBar.h:
- 2:30 PM Changeset in webkit [37009] by
-
- 1 edit2 moves in trunk/LayoutTests
Rubber-stamped by Sam Weinig.
- fix typo in test name
- media/video-click-dblckick-standalone-expected.txt: Copied from media/video-click-dlbclick-standalone-expected.txt.
- media/video-click-dblckick-standalone.html: Copied from media/video-click-dlbclick-standalone.html.
- media/video-click-dlbclick-standalone-expected.txt: Removed.
- media/video-click-dlbclick-standalone.html: Removed.
- 2:28 PM Changeset in webkit [37008] by
-
- 7 edits2 adds in trunk
WebCore:
2008-09-27 Anders Carlsson <andersca@apple.com>
Reviewed by Sam Weinig.
https://bugs.webkit.org/show_bug.cgi?id=21178
<rdar://problem/6248651>
Check if the plug-in is allowed to load the resource. This matches Firefox.
Test: http/tests/plugins/local-geturl-from-remote.html
- plugins/PluginView.cpp: (WebCore::PluginView::load):
WebKit/mac:
2008-09-27 Anders Carlsson <andersca@apple.com>
Reviewed by Sam Weinig.
https://bugs.webkit.org/show_bug.cgi?id=21178
<rdar://problem/6248651>
Check if the plug-in is allowed to load the resource. This matches Firefox.
- Plugins/WebBaseNetscapePluginView.mm: (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:sendNotification:]):
WebKitTools:
2008-09-27 Anders Carlsson <andersca@apple.com>
Reviewed by Sam Weinig.
https://bugs.webkit.org/show_bug.cgi?id=21178
<rdar://problem/6248651>
Return the result value from getURL.
- DumpRenderTree/TestNetscapePlugIn.subproj/PluginObject.cpp: (getURL):
LayoutTests:
2008-09-27 Anders Carlsson <andersca@apple.com>
Reviewed by Sam Weinig.
https://bugs.webkit.org/show_bug.cgi?id=21178
<rdar://problem/6248651>
Add tests.
- http/tests/plugins/local-geturl-from-remote-expected.txt: Added.
- http/tests/plugins/local-geturl-from-remote.html: Added.
- 2:13 PM Changeset in webkit [37007] by
-
- 4 edits in trunk/WebKit/win
2008-09-27 Anders Carlsson <andersca@apple.com>
Fix build.
- WebCoreSupport/EmbeddedWidget.cpp: (EmbeddedWidget::setFrameRect): (EmbeddedWidget::frameRectsChanged):
- WebCoreSupport/EmbeddedWidget.h:
- WebScrollBar.cpp: (WebScrollBar::setRect): (WebScrollBar::frameGeometry):
- 2:06 PM Changeset in webkit [37006] by
-
- 2 edits in trunk/WebCore
2008-09-22 Dirk Schulze <vbs85@gmx.de>
Reviewed by Eric Seidel.
Added SVG pattern support to Qt.
[Qt] SVG patterns are missing
https://bugs.webkit.org/show_bug.cgi?id=20973
- svg/graphics/qt/SVGPaintServerPatternQt.cpp: (WebCore::SVGPaintServerPattern::setup):
- 1:18 PM Changeset in webkit [37005] by
-
- 2 edits in trunk/WebCore
Fixed a bug in the JS syntax highlighter with multiple line tokens.
Reviewed by Tim Hatcher.
- page/inspector/SourceFrame.js: (syntaxHighlightJavascriptLine): Initialize previousMatchLength.
- 1:18 PM Changeset in webkit [37004] by
-
- 2 edits in trunk/WebCore
Change searching in the Profiles panel to not match the
Self and Total columns when there are no units. The only
column that is matched for unitless number searches is
now the Calls column.
Reviewed by Sam Weinig.
- page/inspector/ProfileView.js: (WebInspector.ProfileView.prototype.performSearch):
- 12:56 PM Changeset in webkit [37003] by
-
- 11 edits in trunk/WebCore
2008-09-27 David Hyatt <hyatt@apple.com>
Rename boundsGeometry -> boundsRect. Rename geometryChanged -> frameRectsChanged.
Reviewed by Sam Weinig
- platform/ScrollView.h:
- platform/Widget.h: (WebCore::Widget::boundsRect): (WebCore::Widget::invalidate): (WebCore::Widget::frameRectsChanged):
- platform/gtk/ScrollViewGtk.cpp: (WebCore::ScrollViewScrollbar::frameRectsChanged): (WebCore::ScrollView::ScrollViewPrivate::scrollBackingStore): (WebCore::ScrollView::setFrameRect): (WebCore::ScrollView::updateScrollbars): (WebCore::ScrollView::frameRectsChanged):
- platform/gtk/ScrollbarGtk.cpp: (ScrollbarGtk::setFrameRect): (ScrollbarGtk::frameRectsChanged):
- platform/gtk/ScrollbarGtk.h:
- platform/gtk/WidgetGtk.cpp:
- platform/qt/ScrollViewQt.cpp: (WebCore::ScrollView::ScrollViewPrivate::scrollBackingStore): (WebCore::ScrollView::setFrameRect): (WebCore::ScrollView::frameRectsChanged): (WebCore::ScrollView::updateScrollbars):
- platform/win/ScrollViewWin.cpp: (WebCore::ScrollView::ScrollViewPrivate::scrollBackingStore): (WebCore::ScrollView::setFrameRect): (WebCore::ScrollView::updateScrollbars): (WebCore::ScrollView::frameRectsChanged):
- plugins/PluginView.cpp: (WebCore::PluginView::frameRectsChanged):
- plugins/PluginView.h:
- 12:49 PM Changeset in webkit [37002] by
-
- 3 edits in trunk/WebCore
2008-09-27 Simon Hausmann <Simon Hausmann>
Refix the previous build fix to compile on non-Qt platforms, too.
- 12:15 PM Changeset in webkit [37001] by
-
- 6 edits in trunk/WebCore
2008-09-27 Simon Hausmann <Simon Hausmann>
Fix compilation with gcc 4.3 (probably > 4.0)
- 11:32 AM Changeset in webkit [37000] by
-
- 3 edits in trunk/WebKit/qt
2008-09-27 Simon Hausmann <Simon Hausmann>
Qt build fix - use frameRect instead of frameGeometry, adapt
to renamed scrollbar frameview methods.
- 10:41 AM Changeset in webkit [36999] by
-
- 2 edits in trunk/JavaScriptCore
2008-09-27 Anders Carlsson <andersca@apple.com>
Fix build.
- VM/CTI.cpp: (JSC::):
- 10:20 AM Changeset in webkit [36998] by
-
- 1 edit in trunk/JavaScriptCore/ChangeLog
Added bug #
- 10:19 AM Changeset in webkit [36997] by
-
- 6 edits in trunk/JavaScriptCore
2008-09-27 Geoffrey Garen <ggaren@apple.com>
Reviewed by Cameron Zwarich.
Store the callee CodeBlock, not the caller CodeBlock, in the call frame
header. Nix the "codeBlock" local variable, and access the callee
CodeBlock through the call frame header instead.
Profit: call + return are simpler, because they don't have to update the
"codeBlock" local variable.
Because CTI keeps "r" in a register, reading the callee CodeBlock relative
to "r" can be very fast, in any cases we care to optimize. Presently,
no such cases seem important.
Also, stop writing "dst" to the call frame header. CTI doesn't use it.
21.6% speedup on empty function call benchmark.
3.8% speedup on SunSpider --v8.
2.1% speedup on v8 benchmark.
0.7% speedup on SunSpider (6% speedup on controlflow-recursive).
Small regression in bytecode, because currently every op_ret reads the
callee CodeBlock to check needsFullScopeChain, and bytecode does not
keep "r" in a register. On-balance, this is probably OK, since CTI is
our high-performance execution model. Also, this should go away once
we make needsFullScopeChain statically determinable at parse time.
- VM/CTI.cpp: (JSC::CTI::compileOpCall): The speedup! (JSC::CTI::privateCompileSlowCases): ditto
- VM/CTI.h: (JSC::): Fixed up magic trampoline constants to account for the nixed "codeBlock" argument. (JSC::CTI::execute): Changed trampoline function not to take a "codeBlock" argument, since codeBlock is now stored in the call frame header.
- VM/Machine.cpp: Read the callee CodeBlock from the register file. Use a NULL CallerRegisters in the call frame header to signal a built-in caller, since CodeBlock is now never NULL.
- VM/Machine.h: Made some stand-alone functions Machine member functions so they could call the private codeBlock() accessor in the Register class, of which Machine is a friend. Renamed "CallerCodeBlock" to "CodeBlock", since it's no longer the caller's CodeBlock.
- VM/RegisterFile.h: Marked some methods const to accommodate a const RegisterFile* being passed around in Machine.cpp.
- 1:23 AM Changeset in webkit [36996] by
-
- 2 edits in trunk/WebKit/qt
2008-09-27 Jan Michael Alonzo <jmalonzo@webkit.org>
Qt build fix - rename frameGeometry to frameRect per r36995.
- Api/qwebframe.cpp: (QWebFrame::render): (QWebFrame::pos): (QWebFrame::geometry):
- 1:01 AM Changeset in webkit [36995] by
-
- 31 edits in trunk/WebCore
2008-09-27 David Hyatt <hyatt@apple.com>
Rename frameGeometry to frameRect. Rename setFrameGeometry to setFrameRect.
Reviewed by Dan Bernstein
- WebCore.base.exp:
- page/FrameView.cpp: (WebCore::FrameView::FrameView): (WebCore::FrameView::updateControlTints):
- platform/ScrollView.h:
- platform/Scrollbar.cpp: (WebCore::Scrollbar::Scrollbar): (WebCore::Scrollbar::paint): (WebCore::Scrollbar::setFrameRect):
- platform/Scrollbar.h:
- platform/ScrollbarThemeComposite.cpp: (WebCore::ScrollbarThemeComposite::paint):
- platform/Widget.h: (WebCore::Widget::x): (WebCore::Widget::y): (WebCore::Widget::width): (WebCore::Widget::height): (WebCore::Widget::size): (WebCore::Widget::pos): (WebCore::Widget::resize): (WebCore::Widget::move):
- platform/gtk/ScrollViewGtk.cpp: (WebCore::ScrollViewScrollbar::geometryChanged): (WebCore::ScrollView::update): (WebCore::ScrollView::setFrameRect): (WebCore::ScrollView::updateScrollbars): (WebCore::ScrollView::scrollbarUnderMouse): (WebCore::ScrollView::paint):
- platform/gtk/ScrollbarGtk.cpp: (ScrollbarGtk::setFrameRect): (ScrollbarGtk::geometryChanged):
- platform/gtk/ScrollbarGtk.h:
- platform/gtk/WidgetGtk.cpp: (WebCore::Widget::frameRect): (WebCore::Widget::setFrameRect):
- platform/mac/ScrollbarThemeMac.mm: (WebCore::ScrollbarThemeMac::trackRect): (WebCore::ScrollbarThemeMac::paint):
- platform/mac/WidgetMac.mm: (WebCore::Widget::frameRect): (WebCore::Widget::setFrameRect):
- platform/qt/ScrollViewQt.cpp: (WebCore::ScrollView::setFrameRect): (WebCore::ScrollView::updateScrollbars): (WebCore::ScrollView::scrollbarUnderMouse): (WebCore::ScrollView::paint):
- platform/qt/ScrollbarThemeQt.cpp: (WebCore::styleOptionSlider):
- platform/qt/WidgetQt.cpp: (WebCore::Widget::frameRect): (WebCore::Widget::setFrameRect):
- platform/win/PopupMenuWin.cpp: (WebCore::PopupMenu::invalidateItem): (WebCore::PopupMenu::valueChanged): (WebCore::PopupWndProc):
- platform/win/ScrollViewWin.cpp: (WebCore::ScrollView::setFrameRect): (WebCore::ScrollView::updateScrollbars): (WebCore::ScrollView::scrollbarUnderMouse): (WebCore::ScrollView::paint):
- platform/win/ScrollbarThemeSafari.cpp: (WebCore::ScrollbarThemeSafari::trackRect):
- platform/win/WidgetWin.cpp: (WebCore::Widget::frameRect): (WebCore::Widget::setFrameRect):
- platform/wx/WidgetWx.cpp: (WebCore::Widget::frameRect): (WebCore::Widget::setFrameRect):
- plugins/PluginView.cpp: (WebCore::PluginView::setFrameRect):
- plugins/PluginView.h:
- plugins/gtk/PluginViewGtk.cpp: (WebCore::PluginView::updatePluginWidget): (WebCore::PluginView::paint): (WebCore::PluginView::init):
- plugins/qt/PluginViewQt.cpp: (WebCore::PluginView::updatePluginWidget): (WebCore::PluginView::init):
- plugins/win/PluginViewWin.cpp: (WebCore::PluginView::updatePluginWidget): (WebCore::PluginView::paintMissingPluginIcon): (WebCore::PluginView::paint): (WebCore::PluginView::init):
- rendering/RenderLayer.cpp: (WebCore::RenderLayer::positionOverflowControls):
- rendering/RenderListBox.cpp: (WebCore::RenderListBox::paintScrollbar):
- rendering/RenderPart.cpp: (WebCore::RenderPart::updateWidgetPosition):
- rendering/RenderWidget.cpp: (WebCore::RenderWidget::setWidgetGeometry): (WebCore::RenderWidget::updateWidgetPosition):
- 12:51 AM Changeset in webkit [36994] by
-
- 1 edit in trunk/WebCore/platform/wx/ScrollViewWx.cpp
Fix wx bustage.
- 12:43 AM Changeset in webkit [36993] by
-
- 1 edit in trunk/WebCore/page/FocusController.cpp
- 12:43 AM Changeset in webkit [36992] by
-
- 2 edits in trunk/WebCore
2008-09-27 David Hyatt <hyatt@apple.com>
<rdar://problem/6252041> REGRESSION (4dp-TOT): Crash in Widget::platformWidget() when closing a PDF
This crash was lurking for a while and basically got exposed by my changes to visibleContentRect() to
access an actual member variable.
Reviewed by Dan Bernstein
- page/FocusController.cpp: (WebCore::FocusController::setFocusedFrame):
- 12:38 AM Changeset in webkit [36991] by
-
- 2 edits in trunk/WebCore
2008-09-27 Jan Michael Alonzo <jmalonzo@webkit.org>
Attempt to fix QT Build. Not reviewed.
- WebCore.pro: add -n WebCore parameter to create_hash_table
Sep 26, 2008:
- 11:48 PM Changeset in webkit [36990] by
-
- 3 edits in trunk/WebCore
2008-09-26 Gwenole Beauchesne <gbeauchesne@splitted-desktop.org>
Reviewed by Eric Seidel.
http://bugs.webkit.org/show_bug.cgi?id=18905
[GTK] Fix build with older pango (1.14.8)
- platform/graphics/gtk/FontGtk.cpp:
- platform/gtk/Language.cpp: (_pango_get_lc_ctype): (pango_language_get_default):
- 11:36 PM Changeset in webkit [36989] by
-
- 2 edits in trunk/JavaScriptCore
2008-09-26 Jan Michael Alonzo <jmalonzo@webkit.org>
Gtk build fix. Not reviewed.
Narrow-down the target of the JavaScriptCore .lut.h generator so
it won't try to create the WebCore .lut.hs.
- GNUmakefile.am:
- 11:23 PM Changeset in webkit [36988] by
-
- 8 edits in trunk/WebCore
2008-09-26 David Hyatt <hyatt@apple.com>
Make contentsToWindow/windowToContents cross-platform.
Reviewed by Oliver Hunt
- platform/ScrollView.cpp: (WebCore::ScrollView::windowToContents): (WebCore::ScrollView::contentsToWindow):
- platform/ScrollView.h:
- platform/gtk/ScrollViewGtk.cpp:
- platform/mac/ScrollViewMac.mm:
- platform/qt/ScrollViewQt.cpp:
- platform/win/ScrollViewWin.cpp:
- platform/wx/ScrollViewWx.cpp:
- 11:15 PM Changeset in webkit [36987] by
-
- 2 edits in trunk/WebCore
2008-09-26 Sam Weinig <sam@webkit.org>
GTK build fix.
- GNUmakefile.am:
- 10:47 PM Changeset in webkit [36986] by
-
- 6 edits in trunk
2008-09-26 Matt Lilek <webkit@mattlilek.com>
Reviewed by Tim Hatcher.
Update FEATURE_DEFINES after ENABLE_CROSS_DOCUMENT_MESSAGING was removed.
- Configurations/JavaScriptCore.xcconfig:
WebKit/mac:
2008-09-26 Matt Lilek <webkit@mattlilek.com>
Reviewed by Tim Hatcher.
Update FEATURE_DEFINES after ENABLE_CROSS_DOCUMENT_MESSAGING was removed.
- Configurations/WebKit.xcconfig:
WebKitTools:
2008-09-26 Matt Lilek <webkit@mattlilek.com>
Reviewed by Tim Hatcher.
Update FEATURE_DEFINES after ENABLE_CROSS_DOCUMENT_MESSAGING was removed.
- Scripts/build-webkit:
- 10:26 PM Changeset in webkit [36985] by
-
- 10 edits in trunk/WebCore
2008-09-26 David Hyatt <hyatt@apple.com>
Eliminate shouldUpdateWhileOffscreen from ScrollView. Make the concept of not invalidating while
offscreen cross-platform. Rename the inWindow method to isOffscreen (which flips the boolean), since that
more clearly conveys the intent of the method. Make isOffscreen also check NSWindow visibility on Mac.
Reviewed by Oliver Hunt
- page/FrameView.cpp: (WebCore::FrameView::repaintContentRectangle):
- page/FrameView.h:
- platform/ScrollView.h:
- platform/gtk/ScrollViewGtk.cpp: (WebCore::ScrollView::isOffscreen):
- platform/mac/ScrollViewMac.mm: (WebCore::ScrollView::updateContents): (WebCore::ScrollView::isOffscreen):
- platform/qt/ScrollViewQt.cpp: (WebCore::ScrollView::isOffscreen):
- platform/win/ScrollViewWin.cpp: (WebCore::ScrollView::isOffscreen):
- platform/wx/ScrollViewWx.cpp: (WebCore::ScrollView::isOffscreen):
- rendering/RenderObject.cpp: (WebCore::RenderObject::willRenderImage):
- 10:24 PM Changeset in webkit [36984] by
-
- 1 edit in trunk/WebCore/platform/ScrollView.h
Fix WIndows bustage.
- 9:44 PM Changeset in webkit [36983] by
-
- 3 edits in trunk/LayoutTests/platform/mac/editing/selection
Land new result.
- 9:43 PM Changeset in webkit [36982] by
-
- 16 edits in trunk
WebCore:
2008-09-26 David Hyatt <hyatt@apple.com>
Rework concept of allowsScrolling/setAllowsScrolling to be cross-platform.
Reviewed by Sam Weinig
- WebCore.base.exp:
- page/FrameView.cpp: (WebCore::FrameView::setAllowsScrolling):
- page/FrameView.h:
- platform/ScrollView.cpp: (WebCore::ScrollView::setAllowsScrolling):
- platform/ScrollView.h: (WebCore::ScrollView::allowsScrolling):
- platform/win/ScrollViewWin.cpp: (WebCore::ScrollView::wheelEvent):
WebKit/mac:
2008-09-26 David Hyatt <hyatt@apple.com>
Rework concept of allowsScrolling/setAllowsScrolling to be cross-platform.
Reviewed by Sam Weinig
- WebCoreSupport/WebFrameLoaderClient.mm: (WebFrameLoaderClient::createFrame):
- WebView/WebDynamicScrollBarsView.h:
- WebView/WebDynamicScrollBarsView.m:
- WebView/WebDynamicScrollBarsViewInternal.h:
- WebView/WebFrameView.mm: (-[WebFrameView setAllowsScrolling:]): (-[WebFrameView allowsScrolling]):
- 8:23 PM Changeset in webkit [36981] by
-
- 2 edits in trunk/JavaScriptCore
2008-09-26 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Rubber-stamped by Anders Carlson.
Change the name 'sc' to 'scopeChainNode' in a few places.
- kjs/nodes.cpp: (JSC::EvalNode::generateCode): (JSC::FunctionBodyNode::generateCode): (JSC::ProgramNode::generateCode):
- 8:22 PM Changeset in webkit [36980] by
-
- 7 edits in trunk
wx build fixes after Widget/ScrollView changes.
- 7:44 PM Changeset in webkit [36979] by
-
- 1 edit2 adds in trunk/WebKitSite
Add screenshots of searching in the Web Inspector.
Not reviewed.
- blog-files/inspector-searching-elements.png: Added.
- blog-files/inspector-searching-profiles.png: Added.
- 7:44 PM Changeset in webkit [36978] by
-
- 2 edits in trunk/WebCore
Allow searching for paths by always performing the
three search methods in the Elements panel and not
assume a search with a "/" is a XPath query.
Reviewed by Geoff Garen.
- page/inspector/ElementsPanel.js: (WebInspector.ElementsPanel.prototype.performSearch):
- 7:36 PM Changeset in webkit [36977] by
-
- 36 edits in trunk
2008-09-26 Sam Weinig <sam@webkit.org>
Reviewed by Darin Adler.
Patch for https://bugs.webkit.org/show_bug.cgi?id=21152
Speedup static property get/put
Convert getting/setting static property values to use static functions
instead of storing an integer and switching in getValueProperty/putValueProperty.
- kjs/JSObject.cpp: (JSC::JSObject::deleteProperty): (JSC::JSObject::getPropertyAttributes):
- kjs/MathObject.cpp: (JSC::MathObject::getOwnPropertySlot):
- kjs/NumberConstructor.cpp: (JSC::numberConstructorNaNValue): (JSC::numberConstructorNegInfinity): (JSC::numberConstructorPosInfinity): (JSC::numberConstructorMaxValue): (JSC::numberConstructorMinValue):
- kjs/PropertySlot.h: (JSC::PropertySlot::):
- kjs/RegExpConstructor.cpp: (JSC::regExpConstructorDollar1): (JSC::regExpConstructorDollar2): (JSC::regExpConstructorDollar3): (JSC::regExpConstructorDollar4): (JSC::regExpConstructorDollar5): (JSC::regExpConstructorDollar6): (JSC::regExpConstructorDollar7): (JSC::regExpConstructorDollar8): (JSC::regExpConstructorDollar9): (JSC::regExpConstructorInput): (JSC::regExpConstructorMultiline): (JSC::regExpConstructorLastMatch): (JSC::regExpConstructorLastParen): (JSC::regExpConstructorLeftContext): (JSC::regExpConstructorRightContext): (JSC::setRegExpConstructorInput): (JSC::setRegExpConstructorMultiline): (JSC::RegExpConstructor::setInput): (JSC::RegExpConstructor::setMultiline): (JSC::RegExpConstructor::multiline):
- kjs/RegExpConstructor.h:
- kjs/RegExpObject.cpp: (JSC::regExpObjectGlobal): (JSC::regExpObjectIgnoreCase): (JSC::regExpObjectMultiline): (JSC::regExpObjectSource): (JSC::regExpObjectLastIndex): (JSC::setRegExpObjectLastIndex):
- kjs/RegExpObject.h: (JSC::RegExpObject::setLastIndex): (JSC::RegExpObject::lastIndex): (JSC::RegExpObject::RegExpObjectData::RegExpObjectData):
- kjs/StructureID.cpp: (JSC::StructureID::getEnumerablePropertyNames):
- kjs/create_hash_table:
- kjs/lexer.cpp: (JSC::Lexer::lex):
- kjs/lookup.cpp: (JSC::HashTable::createTable): (JSC::HashTable::deleteTable): (JSC::setUpStaticFunctionSlot):
- kjs/lookup.h: (JSC::HashEntry::initialize): (JSC::HashEntry::setKey): (JSC::HashEntry::key): (JSC::HashEntry::attributes): (JSC::HashEntry::function): (JSC::HashEntry::functionLength): (JSC::HashEntry::propertyGetter): (JSC::HashEntry::propertyPutter): (JSC::HashEntry::lexerValue): (JSC::HashEntry::): (JSC::HashTable::entry): (JSC::getStaticPropertySlot): (JSC::getStaticValueSlot): (JSC::lookupPut):
WebCore:
2008-09-26 Sam Weinig <sam@webkit.org>
Reviewed by Darin Adler.
Patch for https://bugs.webkit.org/show_bug.cgi?id=21152
Speedup static property get/put
- DerivedSources.make:
- GNUmakefile.am:
- WebCore.pro:
- WebCore.vcproj/WebCore.vcproj:
- WebCore.xcodeproj/project.pbxproj:
- bindings/js/JSDOMBinding.cpp:
- bindings/js/JSDOMBinding.h:
- bindings/js/JSDOMWindowBase.cpp: (WebCore::getDOMConstructor): (WebCore::jsDOMWindowBaseCrypto): (WebCore::jsDOMWindowBaseEvent): (WebCore::jsDOMWindowBaseImage): (WebCore::jsDOMWindowBaseMessageChannel): (WebCore::jsDOMWindowBaseOption): (WebCore::jsDOMWindowBaseXMLHttpRequest): (WebCore::jsDOMWindowBaseAudio): (WebCore::jsDOMWindowBaseXSLTProcessor): (WebCore::jsDOMWindowBaseOnabort): (WebCore::jsDOMWindowBaseOnblur): (WebCore::jsDOMWindowBaseOnchange): (WebCore::jsDOMWindowBaseOnclick): (WebCore::jsDOMWindowBaseOndblclick): (WebCore::jsDOMWindowBaseOnerror): (WebCore::jsDOMWindowBaseOnfocus): (WebCore::jsDOMWindowBaseOnkeydown): (WebCore::jsDOMWindowBaseOnkeypress): (WebCore::jsDOMWindowBaseOnkeyup): (WebCore::jsDOMWindowBaseOnload): (WebCore::jsDOMWindowBaseOnmousedown): (WebCore::jsDOMWindowBaseOnmousemove): (WebCore::jsDOMWindowBaseOnmouseout): (WebCore::jsDOMWindowBaseOnmouseover): (WebCore::jsDOMWindowBaseOnmouseup): (WebCore::jsDOMWindowBaseOnMouseWheel): (WebCore::jsDOMWindowBaseOnreset): (WebCore::jsDOMWindowBaseOnresize): (WebCore::jsDOMWindowBaseOnscroll): (WebCore::jsDOMWindowBaseOnsearch): (WebCore::jsDOMWindowBaseOnselect): (WebCore::jsDOMWindowBaseOnsubmit): (WebCore::jsDOMWindowBaseOnbeforeunload): (WebCore::jsDOMWindowBaseOnunload): (WebCore::jsDOMWindowBaseOnWebKitAnimationStart): (WebCore::jsDOMWindowBaseOnWebKitAnimationIteration): (WebCore::jsDOMWindowBaseOnWebKitAnimationEnd): (WebCore::jsDOMWindowBaseOnWebKitTransitionEnd): (WebCore::JSDOMWindowBase::getOwnPropertySlot): (WebCore::JSDOMWindowBase::put): (WebCore::setJSDOMWindowBaseOnabort): (WebCore::setJSDOMWindowBaseOnblur): (WebCore::setJSDOMWindowBaseOnchange): (WebCore::setJSDOMWindowBaseOnclick): (WebCore::setJSDOMWindowBaseOndblclick): (WebCore::setJSDOMWindowBaseOnerror): (WebCore::setJSDOMWindowBaseOnfocus): (WebCore::setJSDOMWindowBaseOnkeydown): (WebCore::setJSDOMWindowBaseOnkeypress): (WebCore::setJSDOMWindowBaseOnkeyup): (WebCore::setJSDOMWindowBaseOnload): (WebCore::setJSDOMWindowBaseOnmousedown): (WebCore::setJSDOMWindowBaseOnmousemove): (WebCore::setJSDOMWindowBaseOnmouseout): (WebCore::setJSDOMWindowBaseOnmouseover): (WebCore::setJSDOMWindowBaseOnmouseup): (WebCore::setJSDOMWindowBaseOnMouseWheel): (WebCore::setJSDOMWindowBaseOnreset): (WebCore::setJSDOMWindowBaseOnresize): (WebCore::setJSDOMWindowBaseOnscroll): (WebCore::setJSDOMWindowBaseOnsearch): (WebCore::setJSDOMWindowBaseOnselect): (WebCore::setJSDOMWindowBaseOnsubmit): (WebCore::setJSDOMWindowBaseOnbeforeunload): (WebCore::setJSDOMWindowBaseOnunload): (WebCore::setJSDOMWindowBaseOnWebKitAnimationStart): (WebCore::setJSDOMWindowBaseOnWebKitAnimationIteration): (WebCore::setJSDOMWindowBaseOnWebKitAnimationEnd): (WebCore::setJSDOMWindowBaseOnWebKitTransitionEnd): (WebCore::setJSDOMWindowBaseEvent): (WebCore::setJSDOMWindowBaseAudio): (WebCore::setJSDOMWindowBaseImage): (WebCore::setJSDOMWindowBaseMessageChannel): (WebCore::setJSDOMWindowBaseOption): (WebCore::setJSDOMWindowBaseXMLHttpRequest): (WebCore::setJSDOMWindowBaseXSLTProcessor):
- bindings/js/JSDOMWindowBase.h:
- bindings/js/JSDOMWindowCustom.cpp: (WebCore::nonCachingStaticCloseFunctionGetter): (WebCore::nonCachingStaticBlurFunctionGetter): (WebCore::nonCachingStaticFocusFunctionGetter): (WebCore::nonCachingStaticPostMessageFunctionGetter):
- bindings/js/JSDOMWindowCustom.h: (WebCore::JSDOMWindow::customGetOwnPropertySlot):
- bindings/js/JSEventTargetBase.cpp:
- bindings/js/JSEventTargetBase.h: (WebCore::JSEventTargetBasePrototype::getOwnPropertySlot): (WebCore::JSEventTargetBasePrototype::classInfo):
- bindings/js/JSEventTargetNode.cpp: (WebCore::): (WebCore::JSEventTargetNode::getOwnPropertySlot): (WebCore::JSEventTargetNode::put):
- bindings/js/JSEventTargetNode.h: (WebCore::JSEventTargetNode::classInfo): (WebCore::JSEventTargetNode::prototypeClassName):
- bindings/js/JSEventTargetSVGElementInstance.cpp: (WebCore::): (WebCore::JSEventTargetSVGElementInstance::getOwnPropertySlot): (WebCore::JSEventTargetSVGElementInstance::put):
- bindings/js/JSEventTargetSVGElementInstance.h: (WebCore::JSEventTargetSVGElementInstance::classInfo): (WebCore::JSEventTargetSVGElementInstance::prototypeClassName):
- bindings/js/JSHTMLInputElementCustom.cpp: (WebCore::JSHTMLInputElement::customGetOwnPropertySlot):
- bindings/js/JSHistoryCustom.cpp: (WebCore::nonCachingStaticBackFunctionGetter): (WebCore::nonCachingStaticForwardFunctionGetter): (WebCore::nonCachingStaticGoFunctionGetter): (WebCore::JSHistory::customGetOwnPropertySlot):
- bindings/js/JSLocationCustom.cpp: (WebCore::nonCachingStaticReplaceFunctionGetter): (WebCore::nonCachingStaticReloadFunctionGetter): (WebCore::nonCachingStaticAssignFunctionGetter): (WebCore::JSLocation::customGetOwnPropertySlot): (WebCore::JSLocation::customPut):
- bindings/scripts/CodeGeneratorJS.pm:
- 6:44 PM Changeset in webkit [36976] by
-
- 12 edits1 add in trunk/JavaScriptCore
2008-09-26 Gavin Barraclough <barraclough@apple.com>
Reviewed by Maciej Stachowiak & Oliver Hunt.
Add support for reusing temporary JSNumberCells. This change is based on the observation
that if the result of certain operations is a JSNumberCell and is consumed by a subsequent
operation that would produce a JSNumberCell, we can reuse the object rather than allocating
a fresh one. E.g. given the expression ((a * b) * c), we can statically determine that
(a * b) will have a numeric result (or else it will have thrown an exception), so the result
will either be a JSNumberCell or a JSImmediate.
This patch changes three areas of JSC:
- The AST now tracks type information about the result of each node.
- This information is consumed in bytecode compilation, and certain bytecode operations now carry the statically determined type information about their operands.
- CTI uses the information in a number of fashions:
- Where an operand to certain arithmetic operations is reusable, it will plant code to try to perform the operation in JIT code & reuse the cell, where appropriate.
- Where it can be statically determined that an operand can only be numeric (typically the result of another arithmetic operation) the code will not redundantly check that the JSCell is a JSNumberCell.
- Where either of the operands to an add are non-numeric do not plant an optimized arithmetic code path, just call straight out to the C function.
+6% Sunspider (10% progression on 3D, 16% progression on math, 60% progression on access-nbody),
+1% v8-tests (improvements in raytrace & crypto)
- VM/CTI.cpp: Add optimized code generation with reuse of temporary JSNumberCells.
- VM/CTI.h:
- kjs/JSNumberCell.h:
- masm/X86Assembler.h:
- VM/CodeBlock.cpp: Add type information to specific bytecodes.
- VM/CodeGenerator.cpp:
- VM/CodeGenerator.h:
- VM/Machine.cpp:
- kjs/nodes.cpp: Track static type information for nodes.
- kjs/nodes.h:
- kjs/ResultDescriptor.h: (Added)
- JavaScriptCore.xcodeproj/project.pbxproj:
- 4:01 PM Changeset in webkit [36975] by
-
- 2 edits in trunk/WebKitTools
2008-09-26 Alice Liu <alice.liu@apple.com>
Remove usage of atlstr.h and CString for VCExpress compatibility
Reviewed by Stephanie Lewis.
- record-memory-win/main.cpp: (ProcessArgs): (UseImage): (QueryContinuously): (OneQuery): (OneQueryMP):
- 3:45 PM Changeset in webkit [36974] by
-
- 2 edits in trunk/JavaScriptCore
2008-09-26 Yichao Yin <yichao.yin@torchmobile.com.cn>
Reviewed by George Staikos, Maciej Stachowiak.
Add utility functions needed for upcoming WML code.
- wtf/ASCIICType.h: (WTF::isASCIIPrintable):
- 3:43 PM Changeset in webkit [36973] by
-
- 4 edits in trunk/JavaScriptCore
2008-09-26 Geoffrey Garen <ggaren@apple.com>
Reviewed by Darin Adler.
Reverted the part of r36614 that used static data because static data
is not thread-safe.
- 3:40 PM Changeset in webkit [36972] by
-
- 8 edits in trunk/JavaScriptCore
2008-09-26 Geoffrey Garen <ggaren@apple.com>
Reviewed by Maciej Stachowiak.
Removed dynamic check for whether the callee needs an activation object.
Replaced with callee code to create the activation object.
0.5% speedup on SunSpider.
No change on v8 benchmark. (Might be a speedup, but it's in range of the
variance.)
0.7% speedup on v8 benchmark in bytecode.
1.3% speedup on empty call benchmark in bytecode.
- VM/CTI.cpp: (JSC::CTI::privateCompileMainPass): Added support for op_init_activation, the new opcode that specifies that the callee's initialization should create an activation object. (JSC::CTI::privateCompile): Removed previous code that did a similar thing in an ad-hoc way.
- VM/CodeBlock.cpp: (JSC::CodeBlock::dump): Added a case for dumping op_init_activation.
- VM/CodeGenerator.cpp: (JSC::CodeGenerator::generate): Added fixup code to change op_init to op_init_activation if necessary. (With a better parser, we would know which to use from the beginning.)
- VM/Instruction.h: (JSC::Instruction::Instruction): (WTF::): Faster traits for the instruction vector. An earlier version of this patch relied on inserting at the beginning of the vector, and depended on this change for speed.
- VM/Machine.cpp: (JSC::Machine::execute): Removed clients of setScopeChain, the old abstraction for dynamically checking for whether an activation object needed to be created. (JSC::Machine::privateExecute): ditto
(JSC::Machine::cti_op_push_activation): Renamed this function from
cti_vm_updateScopeChain, and made it faster by removing the call to
setScopeChain.
- VM/Machine.h:
- VM/Opcode.h: Declared op_init_activation.
- 2:57 PM Changeset in webkit [36971] by
-
- 3 edits in trunk/WebKit/win
fix Win bustage.
- 2:53 PM Changeset in webkit [36970] by
-
- 1 edit in trunk/WebKit/win/WebCoreSupport/WebFrameLoaderClient.cpp
fix Win bustage.
- 2:45 PM Changeset in webkit [36969] by
-
- 1 edit in trunk/WebCore/platform/win/ScrollViewWin.cpp
Fix Win bustage.
- 2:35 PM Changeset in webkit [36968] by
-
- 1 edit in trunk/WebKit/qt/Api/qwebframe.cpp
Fix Qt bustage.
- 2:35 PM Changeset in webkit [36967] by
-
- 2 edits in trunk/WebKitTools
wx build fix. Update the version of libpng.
- 2:22 PM Changeset in webkit [36966] by
-
- 1 edit in trunk/WebCore/platform/qt/ScrollViewQt.cpp
Fix Qt bustage.
- 2:19 PM Changeset in webkit [36965] by
-
- 4 edits in branches/Safari-3-2-branch
Versioning.
- 2:00 PM Changeset in webkit [36964] by
-
- 1 edit in trunk/WebCore/platform/gtk/ScrollViewGtk.cpp
Fix gtk bustage.
- 1:54 PM Changeset in webkit [36963] by
-
- 1 edit in trunk/WebKit/gtk/WebCoreSupport/FrameLoaderClientGtk.cpp
Fix gtk bustage.
- 1:49 PM Changeset in webkit [36962] by
-
- 17 edits in trunk
WebCore:
2008-09-26 David Hyatt <hyatt@apple.com>
Make the concept of scroll modes cross-platform. Move the scrollbars up into ScrollView as well.
Eliminate the unused isScrollable() method.
Reviewed by Sam Weinig
- WebCore.base.exp:
- page/FrameView.cpp: (WebCore::FrameView::resetScrollbars): (WebCore::FrameView::initScrollbars): (WebCore::FrameView::layout):
- page/FrameView.h:
- page/mac/WebCoreFrameView.h:
- platform/ScrollView.cpp: (WebCore::ScrollView::init): (WebCore::ScrollView::setScrollbarModes): (WebCore::ScrollView::scrollbarModes): (WebCore::ScrollView::platformSetScrollbarModes): (WebCore::ScrollView::platformScrollbarModes):
- platform/ScrollView.h: (WebCore::ScrollView::horizontalScrollbar): (WebCore::ScrollView::verticalScrollbar): (WebCore::ScrollView::isScrollViewScrollbar): (WebCore::ScrollView::setHorizontalScrollbarMode): (WebCore::ScrollView::setVerticalScrollbarMode): (WebCore::ScrollView::horizontalScrollbarMode): (WebCore::ScrollView::verticalScrollbarMode): (WebCore::ScrollView::convertSelfToChild):
- platform/gtk/ScrollViewGtk.cpp: (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate): (WebCore::ScrollView::ScrollViewPrivate::setHasHorizontalScrollbar): (WebCore::ScrollView::ScrollViewPrivate::setHasVerticalScrollbar): (WebCore::ScrollView::ScrollViewPrivate::valueChanged): (WebCore::ScrollView::updateScrollbars): (WebCore::ScrollView::scrollbarUnderMouse): (WebCore::ScrollView::isScrollViewScrollbar): (WebCore::ScrollView::paint): (WebCore::ScrollView::scroll):
- platform/mac/ScrollViewMac.mm: (WebCore::ScrollView::platformSetScrollbarModes): (WebCore::ScrollView::platformScrollbarModes):
- platform/qt/ScrollViewQt.cpp: (WebCore::ScrollView::ScrollViewPrivate::setHasHorizontalScrollbar): (WebCore::ScrollView::ScrollViewPrivate::setHasVerticalScrollbar): (WebCore::ScrollView::ScrollViewPrivate::valueChanged): (WebCore::ScrollView::horizontalScrollbar): (WebCore::ScrollView::verticalScrollbar): (WebCore::ScrollView::invalidateScrollbars): (WebCore::ScrollView::updateScrollbars): (WebCore::ScrollView::scrollbarUnderMouse): (WebCore::ScrollView::paint): (WebCore::ScrollView::scroll):
- platform/win/ScrollViewWin.cpp: (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate): (WebCore::ScrollView::ScrollViewPrivate::setHasHorizontalScrollbar): (WebCore::ScrollView::ScrollViewPrivate::setHasVerticalScrollbar): (WebCore::ScrollView::ScrollViewPrivate::valueChanged): (WebCore::ScrollView::ScrollViewPrivate::setAllowsScrolling): (WebCore::ScrollView::ScrollViewPrivate::allowsScrolling): (WebCore::ScrollView::suppressScrollbars): (WebCore::ScrollView::updateScrollbars): (WebCore::ScrollView::scrollbarUnderMouse): (WebCore::ScrollView::paint): (WebCore::ScrollView::scroll):
- platform/wx/ScrollViewWx.cpp: (WebCore::ScrollView::platformSetScrollbarModes): (WebCore::ScrollView::platformScrollbarModes):
WebKit/mac:
2008-09-26 David Hyatt <hyatt@apple.com>
More refactoring to make scrollbar modes cross-platform. Reduce the protocol that
WebDynamicScrollBarsView has to implement for communicating with WebCore to just three methods.
Reviewed by Sam Weinig
- WebView/WebDynamicScrollBarsView.m: (-[WebDynamicScrollBarsView scrollingModes:WebCore::vertical:WebCore::]): (-[WebDynamicScrollBarsView setHorizontalScrollingMode:andLock:]): (-[WebDynamicScrollBarsView setVerticalScrollingMode:andLock:]): (-[WebDynamicScrollBarsView setScrollingModes:vertical:andLock:]):
- WebView/WebDynamicScrollBarsViewInternal.h:
- WebView/WebFrameView.mm: (-[WebFrameView setAllowsScrolling:]):
- WebView/WebView.mm: (-[WebView setAlwaysShowVerticalScroller:]): (-[WebView setAlwaysShowHorizontalScroller:]):
- 1:47 PM Changeset in webkit [36961] by
-
- 7 edits in trunk
Fix Mac build with XPATH and XSLT disabled
WebCore:
Fix Mac build with XPATH and XSLT disabled
Reviewed by Alexey.
- bindings/objc/DOMUtility.mm: (JSC::createDOMWrapper): Conditionalize code with ENABLE(XPATH).
- dom/XMLTokenizerLibxml2.cpp: (WebCore::errorFunc): Conditionalize method with ENABLE(XSLT) to prevent an unused code warning.
WebKit/mac:
Fix Mac build with XSLT disabled
Reviewed by Alexey.
- Misc/WebCache.mm: (+[WebCache statistics]): Populate xslStyleSheet statistics with zeros if XSLT is disabled.
WebKit/win:
Speculative Windows build fix with XSLT disabled
Reviewed by Alexey.
- WebCache.cpp: (WebCache::statistics): Populate xslStyleSheet statistics with zeros if XSLT is disabled.
- 10:57 AM Changeset in webkit [36960] by
-
- 2 edits in trunk/WebCore
2008-09-26 Kevin McCullough <kmccullough@apple.com>
Rubber stamped by Tim Hatcher.
Bug 21098: Crashing under Console::log
- Speculative ASSERT to help find the problem.
- page/InspectorController.cpp: (WebCore::ConsoleMessage::isEqual):
- 10:56 AM Changeset in webkit [36959] by
-
- 2 edits in trunk/WebCore
[gtk+] Build fix for the latest ScrollView changes
- 10:27 AM Changeset in webkit [36958] by
-
- 3 edits in trunk/WebCore
Fixes a bug where the console message repeat count would be wrong
when typing commands in between repeated messages.
Reviewed by Kevin McCullough.
- page/InspectorController.cpp: (WebCore::InspectorController::clearConsoleMessages): Reset m_groupLevel. (WebCore::InspectorController::didCommitLoad): Call clearConsoleMessages.
- page/inspector/Console.js: (WebInspector.Console.prototype.addMessage): Remember the original repeat count for each message as totalRepeatCount, since we now modify repeatCount to mean repeats since previous console command. If repeatCountBeforeCommand is a number, subtract that value from the repeatCount. (WebInspector.Console.prototype.clearMessages): Delete the repeatCountBeforeCommand and commandSincePreviousMessage properties.
- 10:26 AM Changeset in webkit [36957] by
-
- 17 edits in trunk/WebCore
2008-09-26 Eric Carlson <eric.carlson@apple.com>
Reviewed by Antti
https://bugs.webkit.org/show_bug.cgi?id=21116
<rdar://problem/5726325> Audio from <video> can still be heard after navigating
back to page with <video>, then closing tab
Rename willSaveToCache/didRestoreFromCache callbacks to documentWillBecomeInactive/
documentDidBecomeActive, and post documentWillBecomeInactive when a page is marked for
deletion.
- dom/Document.cpp: (WebCore::Document::documentWillBecomeInactive): (WebCore::Document::documentDidBecomeActive): (WebCore::Document::registerForDocumentActivationCallbacks): (WebCore::Document::unregisterForDocumentActivationCallbacks):
- dom/Document.h:
- dom/Element.h: (WebCore::Element::documentWillBecomeInactive): (WebCore::Element::documentDidBecomeActive):
- history/CachedPage.cpp: (WebCore::CachedPage::CachedPage):
- html/HTMLFormElement.cpp: (WebCore::HTMLFormElement::~HTMLFormElement): (WebCore::HTMLFormElement::parseMappedAttribute): (WebCore::HTMLFormElement::documentDidBecomeActive): (WebCore::HTMLFormElement::willMoveToNewOwnerDocument): (WebCore::HTMLFormElement::didMoveToNewOwnerDocument):
- html/HTMLFormElement.h:
- html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::~HTMLInputElement): (WebCore::HTMLInputElement::setInputType): (WebCore::HTMLInputElement::parseMappedAttribute): (WebCore::HTMLInputElement::needsActivationCallback): (WebCore::HTMLInputElement::registerForActivationCallbackIfNeeded): (WebCore::HTMLInputElement::unregisterForActivationCallbackIfNeeded): (WebCore::HTMLInputElement::documentDidBecomeActive): (WebCore::HTMLInputElement::willMoveToNewOwnerDocument): (WebCore::HTMLInputElement::didMoveToNewOwnerDocument):
- html/HTMLInputElement.h:
- html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::HTMLMediaElement): (WebCore::HTMLMediaElement::~HTMLMediaElement): (WebCore::HTMLMediaElement::documentWillBecomeInactive): (WebCore::HTMLMediaElement::documentDidBecomeActive):
- html/HTMLMediaElement.h: (WebCore::HTMLMediaElement::inActiveDocument):
- loader/FrameLoader.cpp: (WebCore::FrameLoader::opened):
- page/Page.cpp: (WebCore::Page::~Page):
- rendering/RenderMedia.cpp: (WebCore::RenderMedia::updateControls):
- rendering/RenderVideo.cpp: (WebCore::RenderVideo::updatePlayer):
- svg/SVGSVGElement.cpp: (WebCore::SVGSVGElement::SVGSVGElement): (WebCore::SVGSVGElement::~SVGSVGElement): (WebCore::SVGSVGElement::documentWillBecomeInactive): (WebCore::SVGSVGElement::documentDidBecomeActive):
- svg/SVGSVGElement.h:
- 9:30 AM Changeset in webkit [36956] by
-
- 2 edits in trunk/WebCore
2008-09-26 Ariya Hidayat <ariya.hidayat@trolltech.com>
Reviewed by Simon
Fix the build inside Qt, don't create faulty prl files for now.
- 6:17 AM Changeset in webkit [36955] by
-
- 4 edits in trunk/WebCore
2008-09-26 Simon Hausmann <Simon Hausmann>
Fix compilation on Qt/Windows
- Add WebCore/ to the include path so that config.h is found that enables JSC
- Link against winmm for the multimedia timer functions
- Include DateMath.h instead of JavaScriptCore/DateMath.h as file is in the kjs/ subdirectory
- In PluginViewWin.cpp don't use setPlatformWidget with the HWND for the Qt/Windows port but set m_window directly as setPlatformWidget takes a QWidget*.
- 4:53 AM Changeset in webkit [36954] by
-
- 14 edits6 adds in trunk
Bug 21054: Construction of certain DOM objects is heavily regressed by r36675
<https://bugs.webkit.org/show_bug.cgi?id=21054>
Reviewed by Maciej Stachowiak
This performance regression is actually just a symptom of a correctness
bug. The constructor objects for a number of properties that have security
checks on access were returning new objects each time. The most obvious
symptom of this bug is that window.Image != window.Image, etc.
The solution to this is to make sure we cache these constructors
in the same way as all the other DOM constructors. To achieve this
without causing any refcount cycles it is necessary to replace the
refcounted document pointer in the Image, MessageChannel, Option,
XMLHttpRequest, and Audio constructor objects with a reference to
the document's JS wrapper.
Tests: fast/dom/constructors-cached-navigate.html
fast/dom/constructors-cached.html
- 3:55 AM Changeset in webkit [36953] by
-
- 2 edits in trunk/WebCore
2008-09-26 Simon Hausmann <Simon Hausmann>
Unreviewed one-liner build fix for the Qt/Windows build.
The build requires NPAPI support to be enabled, fix the condition in
the .pro file for that.
- 3:51 AM Changeset in webkit [36952] by
-
- 2 edits in trunk/WebCore
2008-09-26 Trenton Schulz <twschulz@trolltech.com>
Reviewed by Simon.
Fix compilation with the Qt/Cocoa port.
- 2:37 AM Changeset in webkit [36951] by
-
- 2 edits in trunk/WebCore
2008-09-26 Simon Hausmann <Simon Hausmann>
Reviewed by Holger.
Fix compilation with VC9SP1, work around bug in TR1 library by
disabling it.
- 2:37 AM Changeset in webkit [36950] by
-
- 2 edits in trunk/WebCore
2008-09-26 Simon Hausmann <Simon Hausmann>
Reviewed by Holger.
Fix an lupdate() warning.
Don't use tr() in a class that is not a QObject, use
QCoreApplication::translate() directly.
- 2:36 AM Changeset in webkit [36949] by
-
- 3 edits in trunk/WebKit/qt
2008-09-26 Ariya Hidayat <ahidayat@trolltech.com>
Reviewed by Simon.
Fixed potential crash when deleting QWebView instance.
When deleting the view, sets the page's view to NULL.
The reason is that the page is smart and its destructor might lead to a call
that operates on a view (which is in the process of being deleted).
- 2:36 AM Changeset in webkit [36948] by
-
- 2 edits in trunk/WebKit/qt
2008-09-26 Ariya Hidayat <ahidayat@trolltech.com>
Reviewed by Simon.
Fixed using modifiers to type special symbols (e.g '@','$') does not work on Mac OS X.
- 2:36 AM Changeset in webkit [36947] by
-
- 2 edits in trunk/WebKit/qt
2008-09-26 Håvard Wall <hwall@trolltech.com>
Reviewed by Simon.
Fix compilation with QT_NO_MESSAGEBOX
- 12:19 AM Changeset in webkit [36946] by
-
- 1 edit in trunk/WebCore/platform/gtk/ScrollViewGtk.cpp
Fix Gtk bustage.
- 12:15 AM Changeset in webkit [36945] by
-
- 1 edit in trunk/WebCore/platform/wx/ScrollViewWx.cpp
Fix wx bustage.
- 12:15 AM Changeset in webkit [36944] by
-
- 1 edit in trunk/WebCore/platform/ScrollView.cpp
Fix Win, Gtk, Qt bustage.
- 12:07 AM Changeset in webkit [36943] by
-
- 1 edit in trunk/WebKit/qt/Api/qwebframe.cpp
Fix Qt bustage.
- 12:03 AM Changeset in webkit [36942] by
-
- 1 edit in trunk/WebKit/win/WebView.cpp
Fix Win bustage.
Sep 25, 2008:
- 11:50 PM Changeset in webkit [36941] by
-
- 1 edit in trunk/WebCore/platform/qt/ScrollViewQt.cpp
Put back a hide() call on Qt that I accidentally removed.
- 11:47 PM Changeset in webkit [36940] by
-
- 3 edits in trunk/WebCore/platform
Fix Win, Qt, Gtk bustage.
- 11:45 PM Changeset in webkit [36939] by
-
- 1 edit in trunk/WebCore/platform/gtk/ScrollViewGtk.cpp
Fix Gtk bustage.
- 11:44 PM Changeset in webkit [36938] by
-
- 1 edit in trunk/WebCore/platform/qt/ScrollViewQt.cpp
Fix Qt bustage.
- 11:33 PM Changeset in webkit [36937] by
-
- 1 edit in trunk/WebCore/platform/win/ScrollViewWin.cpp
Fix Win bustage.
- 11:32 PM Changeset in webkit [36936] by
-
- 1 edit in trunk/WebKit/gtk/webkit/webkitwebview.cpp
Fix Gtk bustage.
- 11:30 PM Changeset in webkit [36935] by
-
- 1 edit in trunk/WebCore/platform/graphics/IntPoint.h
Fix Win, Gtk, Qt bustage.
- 11:21 PM Changeset in webkit [36934] by
-
- 3 edits in trunk/WebCore
2008-09-25 David Hyatt <hyatt@apple.com>
Remove the scrollTo() method from FrameView, since it is not used by anyone.
Reviewed by Oliver Hunt
- page/FrameView.cpp:
- page/FrameView.h:
- 11:17 PM Changeset in webkit [36933] by
-
- 1 edit in trunk/WebCore/platform/ScrollView.h
Add some comments to the ScrollView.h header.
- 11:15 PM Changeset in webkit [36932] by
-
- 7 edits in trunk/WebCore
2008-09-25 David Hyatt <hyatt@apple.com>
Make scrollRectIntoViewRecursively cross-platform.
Reviewed by Oliver Hunt
- platform/ScrollView.cpp: (WebCore::ScrollView::scrollRectIntoViewRecursively):
- platform/gtk/ScrollViewGtk.cpp:
- platform/mac/ScrollViewMac.mm:
- platform/qt/ScrollViewQt.cpp:
- platform/win/ScrollViewWin.cpp:
- platform/wx/ScrollViewWx.cpp:
- 11:07 PM Changeset in webkit [36931] by
-
- 10 edits in trunk/WebCore
2008-09-25 David Hyatt <hyatt@apple.com>
Rename resizeContents method on ScrollView to setContentsSize (to match contentsSize()). Make it
cross-platform.
Reviewed by Oliver Hunt
- loader/FrameLoader.cpp: (WebCore::FrameLoader::begin):
- page/FrameView.cpp: (WebCore::FrameView::adjustViewSize):
- platform/ScrollView.cpp: (WebCore::ScrollView::setContentsSize):
- platform/ScrollView.h: (WebCore::ScrollView::updateScrollbars):
- platform/gtk/ScrollViewGtk.cpp:
- platform/mac/ScrollViewMac.mm: (WebCore::ScrollView::platformSetContentsSize):
- platform/qt/ScrollViewQt.cpp:
- platform/win/ScrollViewWin.cpp:
- platform/wx/ScrollViewWx.cpp: (WebCore::ScrollView::platformSetContentsSize):
- 11:03 PM Changeset in webkit [36930] by
-
- 1 edit in trunk/WebCore/platform/ScrollView.cpp
Fix Windows bustage when scrolling.
- 10:40 PM Changeset in webkit [36929] by
-
- 15 edits in trunk/WebCore
2008-09-25 David Hyatt <hyatt@apple.com>
Clean up the methods that actually do the scrolling in ScrollView.
Reviewed by Oliver Hunt
- html/HTMLBodyElement.cpp: (WebCore::HTMLBodyElement::setScrollLeft): (WebCore::HTMLBodyElement::setScrollTop):
- loader/FrameLoader.cpp: (WebCore::FrameLoader::restoreScrollPositionAndViewState):
- loader/ImageDocument.cpp: (WebCore::ImageDocument::imageClicked):
- page/DOMWindow.cpp: (WebCore::DOMWindow::scrollBy): (WebCore::DOMWindow::scrollTo):
- page/FrameView.cpp: (WebCore::FrameView::scrollTo): (WebCore::FrameView::setScrollPosition):
- page/FrameView.h:
- platform/ScrollView.cpp: (WebCore::ScrollView::maximumScrollPosition):
- platform/ScrollView.h: (WebCore::ScrollView::contentsWidth): (WebCore::ScrollView::contentsHeight): (WebCore::ScrollView::scrollBy):
- platform/gtk/ScrollViewGtk.cpp: (WebCore::ScrollView::setScrollPosition):
- platform/mac/ScrollViewMac.mm: (WebCore::ScrollView::setScrollPosition):
- platform/qt/ScrollViewQt.cpp: (WebCore::ScrollView::setScrollPosition): (WebCore::ScrollView::scrollRectIntoViewRecursively):
- platform/win/ScrollViewWin.cpp: (WebCore::ScrollView::setScrollPosition): (WebCore::ScrollView::scrollRectIntoViewRecursively):
- platform/wx/ScrollViewWx.cpp: (WebCore::ScrollView::setScrollPosition):
- rendering/RenderLayer.cpp: (WebCore::RenderLayer::scrollByRecursively): (WebCore::RenderLayer::scrollRectToVisible):
- 10:25 PM Changeset in webkit [36928] by
-
- 2 edits in trunk/WebCore
Attempted Windows build fix
- 10:03 PM Changeset in webkit [36927] by
-
- 1 edit in trunk/WebCore/platform/gtk/ScrollViewGtk.cpp
Fix Gtk bustage.
- 9:35 PM Changeset in webkit [36926] by
-
- 2 edits in trunk/WebCore
Revert the padding changes done in r36905 to prevent the
scrollbar from overlapping the URLs in the Console.
- page/inspector/inspector.css:
- 9:28 PM Changeset in webkit [36925] by
-
- 18 edits in trunk/WebCore
2008-09-25 David Hyatt <hyatt@apple.com>
Refactor contents size and scroll offset to be cross-platform. Reduce further the number
of platform-specific methods required of ScrollView implementations.
Reviewed by Tim Hatcher
- dom/MouseRelatedEvent.cpp: (WebCore::contentsX): (WebCore::contentsY):
- html/HTMLBodyElement.cpp: (WebCore::HTMLBodyElement::scrollLeft): (WebCore::HTMLBodyElement::setScrollLeft): (WebCore::HTMLBodyElement::scrollTop): (WebCore::HTMLBodyElement::setScrollTop):
- loader/FrameLoader.cpp: (WebCore::FrameLoader::saveScrollPositionAndViewStateToItem):
- page/DOMWindow.cpp: (WebCore::DOMWindow::scrollX): (WebCore::DOMWindow::scrollY):
- page/EventHandler.cpp: (WebCore::EventHandler::hitTestResultAtPoint):
- page/FrameView.cpp: (WebCore::FrameView::scrollTo): (WebCore::FrameView::windowClipRect):
- platform/ScrollView.cpp: (WebCore::ScrollView::visibleContentRect): (WebCore::ScrollView::contentsSize): (WebCore::ScrollView::platformContentsSize):
- platform/ScrollView.h: (WebCore::ScrollView::scrollPosition): (WebCore::ScrollView::scrollOffset): (WebCore::ScrollView::scrollX): (WebCore::ScrollView::scrollY): (WebCore::ScrollView::contentsWidth): (WebCore::ScrollView::contentsHeight):
- platform/gtk/ScrollViewGtk.cpp: (WebCore::ScrollView::ScrollViewPrivate::adjustmentChanged): (WebCore::ScrollView::setGtkAdjustments): (WebCore::ScrollView::resizeContents): (WebCore::ScrollView::contentsWidth): (WebCore::ScrollView::contentsHeight): (WebCore::ScrollView::scrollOffset): (WebCore::ScrollView::maximumScroll): (WebCore::ScrollView::scrollBy): (WebCore::ScrollView::suppressScrollbars): (WebCore::ScrollView::setHScrollbarMode): (WebCore::ScrollView::setVScrollbarMode): (WebCore::ScrollView::setScrollbarsMode): (WebCore::ScrollView::setFrameGeometry): (WebCore::ScrollView::updateScrollbars):
- platform/mac/ScrollViewMac.mm: (WebCore::ScrollView::platformContentsSize): (WebCore::ScrollView::scrollBy):
- platform/mac/WidgetMac.mm: (WebCore::Widget::convertFromContainingWindow): (WebCore::Widget::convertToContainingWindow):
- platform/qt/ScrollViewQt.cpp: (WebCore::ScrollView::ScrollViewPrivate::valueChanged): (WebCore::ScrollView::resizeContents): (WebCore::ScrollView::setFrameGeometry): (WebCore::ScrollView::scrollOffset): (WebCore::ScrollView::maximumScroll): (WebCore::ScrollView::scrollBy): (WebCore::ScrollView::setHScrollbarMode): (WebCore::ScrollView::setVScrollbarMode): (WebCore::ScrollView::setScrollbarsMode): (WebCore::ScrollView::updateScrollbars):
- platform/win/ScrollViewWin.cpp: (WebCore::ScrollView::ScrollViewPrivate::valueChanged): (WebCore::ScrollView::ScrollViewPrivate::setAllowsScrolling): (WebCore::ScrollView::resizeContents): (WebCore::ScrollView::setFrameGeometry): (WebCore::ScrollView::scrollOffset): (WebCore::ScrollView::maximumScroll): (WebCore::ScrollView::scrollBy): (WebCore::ScrollView::setHScrollbarMode): (WebCore::ScrollView::setVScrollbarMode): (WebCore::ScrollView::setScrollbarsMode): (WebCore::ScrollView::updateScrollbars):
- platform/wx/ScrollViewWx.cpp: (WebCore::ScrollView::platformVisibleContentRect): (WebCore::ScrollView::platformContentsSize):
- rendering/RenderBlock.cpp: (WebCore::RenderBlock::nodeAtPoint):
- rendering/RenderLayer.cpp: (WebCore::RenderLayer::scrollRectToVisible): (WebCore::RenderLayer::calculateClipRects): (WebCore::RenderLayer::calculateRects):
- rendering/RenderView.cpp: (WebCore::RenderView::absolutePosition): (WebCore::RenderView::computeAbsoluteRepaintRect):
- 9:05 PM Changeset in webkit [36924] by
-
- 5 edits in trunk/WebCore
2008-09-25 David Smith <catfish.man@gmail.com>
Reviewed by Dave Hyatt.
Fix a nasty regression I introduced in the previous commit, which caused infinite recursion on facebook.
- dom/Element.cpp: (WebCore::Element::rareData):
- dom/Element.h:
- dom/Node.cpp: (WebCore::Node::rareData):
- dom/Node.h:
- 7:36 PM Changeset in webkit [36923] by
-
- 14 edits2 adds in trunk/WebCore
2008-09-25 David Smith <catfish.man@gmail.com>
Reviewed by Darin Adler.
https://bugs.webkit.org/show_bug.cgi?id=20980
Split off uncommonly used data from Node similar to ElementRareData
Saves an OwnPtr and a short on Node, as well as providing room for an isContainer bit,
which in turn allows inlining firstChild(), lastChild(), childNodeCount(), and childNode()
for a 5-10+% performance win on SlickSpeed and assorted speedups on other tests.
- WebCore.base.exp:
- WebCore.xcodeproj/project.pbxproj:
- dom/ChildNodeList.cpp: Include ContainerNode to pick up its definitions for childNodeCount(), etc...
- dom/ContainerNode.cpp: Set isContainer to true (WebCore::ContainerNode::ContainerNode):
- dom/ContainerNode.h: These Node inlines are here to avoid including ContainerNode.h in Node.h (WebCore::Node::containerChildNodeCount): Use ContainerNode's definition, having proved that the Node is a container (WebCore::Node::containerChildNode): ditto (WebCore::Node::containerFirstChild): ditto (WebCore::Node::containerLastChild): ditto
- dom/Element.cpp: Most of the changes here are moving ElementRareData to ElementRareData.h and NodeRareData.h (WebCore::Element::Element): (WebCore::Element::~Element): (WebCore::Element::rareData): (WebCore::Element::ensureRareData): Renamed from createRareData (WebCore::Element::createRareData): Used by ensureRareData to get the correct rareData type (WebCore::Element::attach): Check hasRareData rather than null-checking rareData() (WebCore::Element::detach): ditto (WebCore::Element::recalcStyle): ditto (WebCore::Element::focus): (WebCore::Element::minimumSizeForResizing): ditto (WebCore::Element::setMinimumSizeForResizing): ditto (WebCore::Element::computedStyle): (WebCore::Element::cancelFocusAppearanceUpdate): ditto
- dom/Element.h:
- dom/ElementRareData.h: Added; everything copied from Element.cpp (WebCore::defaultMinimumSizeForResizing): (WebCore::ElementRareData::ElementRareData): (WebCore::ElementRareData::resetComputedStyle):
- dom/EventTargetNode.cpp: (WebCore::EventTargetNode::EventTargetNode): Pass the isContainer flag up the chain
- dom/EventTargetNode.h:
- dom/Node.cpp: (WebCore::Node::Node): (WebCore::Node::~Node): rareData cleanup code moved from Element and changed to use hasRareData (WebCore::Node::rareData): (WebCore::Node::ensureRareData): (WebCore::Node::createRareData): (WebCore::Node::tabIndex): nonzero tab indexes are now in rareData (WebCore::Node::setTabIndexExplicitly): (WebCore::Node::childNodes): NodeLists are now in rareData (WebCore::Node::setFocus): (WebCore::Node::rareDataFocused): (WebCore::Node::isFocusable): (WebCore::Node::isKeyboardFocusable): (WebCore::Node::registerDynamicNodeList): NodeLists are now in rareData (WebCore::Node::unregisterDynamicNodeList): ditto (WebCore::Node::notifyLocalNodeListsAttributeChanged): ditto (WebCore::Node::notifyLocalNodeListsChildrenChanged): ditto (WebCore::Node::getElementsByName): ditto (WebCore::Node::getElementsByClassName): ditto
- dom/Node.h: (WebCore::Node::firstChild): Use isContainerNode() to devirtualize (WebCore::Node::lastChild): ditto (WebCore::Node::isContainerNode): Take advantage of a newly freed bit to store whether we're a container (WebCore::Node::focused): focus is in rareData if set (WebCore::Node::childTypeAllowed): (WebCore::Node::childNodeCount): Use isContainerNode() to devirtualize (WebCore::Node::childNode): ditto (WebCore::Node::hasRareData): Use another newly freed bit to store whether we have rare data; avoids doing hash lookups in the common case
- dom/NodeRareData.h: Added. Most of this is just properties moved from Node (WebCore::NodeListsNodeData::~NodeListsNodeData): Moved from Node.cpp since we NodeRareData needs to put them in a HashTable :( (WebCore::NodeRareData::NodeRareData): (WebCore::NodeRareData::rareDataMap): (WebCore::NodeRareData::rareDataFromMap): (WebCore::NodeRareData::clearNodeLists): (WebCore::NodeRareData::setNodeLists): (WebCore::NodeRareData::nodeLists): (WebCore::NodeRareData::tabIndex): (WebCore::NodeRareData::setTabIndex): (WebCore::NodeRareData::tabIndexSetExplicitly):
- dom/TreeWalker.cpp: Include ContainerNode to pick up its definitions for childNodeCount(), etc...
- xml/XPathUtil.cpp: Include ContainerNode to pick up its definitions for childNodeCount(), etc...
- 6:54 PM Changeset in webkit [36922] by
-
- 2 edits in trunk/WebCore
[qt] ImageBuffer::toDataURL implementation
- 6:47 PM Changeset in webkit [36921] by
-
- 3 edits1 add in trunk/WebCore
[qt] Implement SharedBuffer for Qt
- 6:26 PM Changeset in webkit [36920] by
-
- 1 edit2 adds in trunk/WebKitSite
2008-09-25 Maciej Stachowiak <mjs@apple.com>
Not reviewed.
- add some screenshots.
- blog-files/acid3-screenshot.png: Added.
- blog-files/acid3-timing-screenshot.png: Added.
- 6:22 PM Changeset in webkit [36919] by
-
- 2 edits in trunk/WebKit/mac
2008-09-25 David Hyatt <hyatt@apple.com>
Fix the updating of the active state to not be dumb, so that viewless scrollbars repaint properly.
Reviewed by Tim Hatcher
- WebView/WebHTMLView.mm: (-[WebHTMLView _updateFocusedAndActiveState]):
- 5:53 PM Changeset in webkit [36918] by
-
- 11 edits2 adds in trunk
WebCore:
Fix bug: https://bugs.webkit.org/show_bug.cgi?id=21032
<rdar://problem/6243032>
Reviewed by Dave Hyatt.
Test: fast/dom/attribute-downcast-right.html
Add isMappedAttribute function to Attribute for checking if an object
is an instance of MappedAttribute. Removed attributeItem,
getAttributeItem functions from NamedMappedAttrMap, and callers
expecting MappedAttribute have to check isMappedAttribute before
downcasting the return value to MappedAttribute.
- css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::styleForElement):
- dom/Attribute.h: (WebCore::Attribute::isMappedAttribute):
- dom/MappedAttribute.h: (WebCore::MappedAttribute::isMappedAttribute):
- dom/NamedMappedAttrMap.cpp: (WebCore::NamedMappedAttrMap::declCount): (WebCore::NamedMappedAttrMap::mapsEquivalent):
- dom/NamedMappedAttrMap.h:
- dom/StyledElement.cpp: (WebCore::StyledElement::attributeChanged):
- html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::setInputType):
- svg/SVGForeignObjectElement.cpp: (WebCore::addCSSPropertyAndNotifyAttributeMap):
- svg/SVGStyledElement.cpp: (WebCore::SVGStyledElement::getPresentationAttribute):
LayoutTests:
Test for: https://bugs.webkit.org/show_bug.cgi?id=21032
<rdar://problem/6243032>
Reviewed by Dave Hyatt.
The test crashes webkit if using Windows heap allocator.
- fast/dom/attribute-downcast-right-expected.txt: Added.
- fast/dom/attribute-downcast-right.html: Added.
- 5:26 PM Changeset in webkit [36917] by
-
- 1 edit in trunk/WebCore/platform/gtk/ScrollViewGtk.cpp
Fix Gtk bustage.
- 4:13 PM Changeset in webkit [36916] by
-
- 2 edits in trunk/WebKit/win
Fix Win bustage.
- 4:03 PM Changeset in webkit [36915] by
-
- 1 edit in trunk/WebCore/platform/win/ScrollViewWin.cpp
Fix Win bustage.
- 3:52 PM Changeset in webkit [36914] by
-
- 1 edit in trunk/WebCore/platform/ScrollView.cpp
Fix Qt, Win, Gtk bustage.
- 3:47 PM Changeset in webkit [36913] by
-
- 1 edit in trunk/WebCore/platform/qt/ScrollViewQt.cpp
Fix Qt bustage.
- 3:34 PM Changeset in webkit [36912] by
-
- 1 edit in trunk/WebCore/platform/ScrollView.cpp
Fix Win, Gtk, Qt bustage.
- 3:30 PM Changeset in webkit [36911] by
-
- 1 edit in trunk/WebKit/qt/Api/qwebframe.cpp
Fix Qt bustage.
- 3:28 PM Changeset in webkit [36910] by
-
- 1 edit in trunk/WebCore/platform/qt/ScrollViewQt.cpp
Fix Qt bustage.
- 3:25 PM Changeset in webkit [36909] by
-
- 12 edits in trunk/WebCore
2008-09-25 David Hyatt <hyatt@apple.com>
Make visibleContentRect cross-platform. Note this does add new horizontal/verticalScrollbar accessors
to a bunch of platforms. This is a temporary evil until the scrollbars get made cross-platform (and I
didn't want to mix that change in with this patch).
Reviewed by Sam Weinig
- page/Frame.cpp: (WebCore::Frame::markAllMatchesForText):
- page/FrameView.cpp: (WebCore::FrameView::repaintContentRectangle): (WebCore::FrameView::windowClipRect): (WebCore::FrameView::updateControlTints):
- platform/ScrollView.cpp: (WebCore::ScrollView::visibleContentRect): (WebCore::ScrollView::platformVisibleContentRect):
- platform/ScrollView.h: (WebCore::ScrollView::visibleWidth): (WebCore::ScrollView::visibleHeight):
- platform/gtk/ScrollViewGtk.cpp: (WebCore::ScrollView::horizontalScrollbar): (WebCore::ScrollView::verticalScrollbar):
- platform/mac/ScrollViewMac.mm: (WebCore::ScrollView::horizontalScrollbar): (WebCore::ScrollView::verticalScrollbar): (WebCore::ScrollView::platformVisibleContentRect):
- platform/qt/ScrollViewQt.cpp: (WebCore::ScrollView::horizontalScrollbar): (WebCore::ScrollView::verticalScrollbar):
- platform/win/ScrollViewWin.cpp: (WebCore::ScrollView::horizontalScrollbar): (WebCore::ScrollView::verticalScrollbar):
- platform/wx/ScrollViewWx.cpp: (WebCore::ScrollView::platformVisibleContentRect): (WebCore::ScrollView::horizontalScrollbar): (WebCore::ScrollView::verticalScrollbar):
- rendering/RenderLayer.cpp: (WebCore::RenderLayer::scrollRectToVisible): (WebCore::frameVisibleRect):
- rendering/RenderView.cpp: (WebCore::RenderView::viewRect):
- 2:21 PM Changeset in webkit [36908] by
-
- 4 edits in branches/Safari-3-2-branch
Versioning.
- 1:55 PM Changeset in webkit [36907] by
-
- 3 edits in trunk/WebCore
2008-09-25 David Smith <catfish.man@gmail.com>
Reviewed by Timothy Hatcher
https://bugs.webkit.org/show_bug.cgi?id=21052
Generalize id selector special case for querySelectorAll
By checking the element we get with getElementById against the selector, we can use the special case in many more circumstances.
Changes results on http://native.khan.mozilla.org
from
#title: 2ms
h1#title: 55ms
div #title: 55ms
to:
#title: 1ms
h1#title: 2ms
div #title: 5ms
- dom/Node.cpp: (WebCore::Node::querySelector):
- dom/SelectorNodeList.cpp: (WebCore::createSelectorNodeList):
- 1:49 PM Changeset in webkit [36906] by
-
- 9 edits in trunk/WebCore
2008-09-25 David Hyatt <hyatt@apple.com>
Make the concept of whether you can blit on scroll cross-platform on ScrollView.
Reviewed by Sam Weinig
- page/FrameView.cpp: (WebCore::FrameView::clear): (WebCore::FrameView::layout): (WebCore::FrameView::setUseSlowRepaints): (WebCore::FrameView::addSlowRepaintObject): (WebCore::FrameView::removeSlowRepaintObject):
- platform/ScrollView.cpp: (WebCore::ScrollView::init): (WebCore::ScrollView::addChild): (WebCore::ScrollView::removeChild): (WebCore::ScrollView::setCanBlitOnScroll):
- platform/ScrollView.h: (WebCore::ScrollView::canBlitOnScroll):
- platform/gtk/ScrollViewGtk.cpp: (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate): (WebCore::ScrollView::ScrollViewPrivate::scrollBackingStore): (WebCore::ScrollView::ScrollView):
- platform/mac/ScrollViewMac.mm: (WebCore::ScrollView::ScrollView): (WebCore::ScrollView::platformAddChild): (WebCore::ScrollView::platformRemoveChild): (WebCore::ScrollView::platformSetCanBlitOnScroll):
- platform/qt/ScrollViewQt.cpp: (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate): (WebCore::ScrollView::ScrollViewPrivate::scrollBackingStore): (WebCore::ScrollView::ScrollView):
- platform/win/ScrollViewWin.cpp: (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate): (WebCore::ScrollView::ScrollViewPrivate::scrollBackingStore): (WebCore::ScrollView::ScrollView):
- platform/wx/ScrollViewWx.cpp: (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate): (WebCore::ScrollView::ScrollView): (WebCore::ScrollView::scrollBy):
- 1:29 PM Changeset in webkit [36905] by
-
- 3 edits in trunk/WebCore
2008-09-25 Kevin McCullough <kmccullough@apple.com>
Reviewed by Tim Hatcher.
Bug 21109: Console should right-align urls
- page/inspector/Console.js: Re-order the message elements so that when it overflows it doesn't get mixed in with the next message.
- page/inspector/inspector.css:
- 1:15 PM Changeset in webkit [36904] by
-
- 5 edits2 copies in trunk
2008-09-25 David Hyatt <hyatt@apple.com>
Putting r36771 back in with a fix to the addPendingSheet check in CSSImportRule::insertedIntoParent.
Reviewed by Darin Adler
- css/CSSImportRule.cpp: (WebCore::CSSImportRule::insertedIntoParent):
- css/CSSRule.cpp: (WebCore::CSSRule::parentStyleSheet): (WebCore::CSSRule::parentRule):
- css/CSSStyleSheet.cpp: (WebCore::CSSStyleSheet::CSSStyleSheet):
- css/CSSStyleSheet.h:
- 1:02 PM Changeset in webkit [36903] by
-
- 2 edits in trunk/WebCore
2008-09-25 Darin Adler <Darin Adler>
Reviewed by Adele Peterson.
- fix https://bugs.webkit.org/show_bug.cgi?id=21115 <rdar://problem/6245773> REGRESSION (r34702): Safari no longer zips bundled documents
- html/HTMLFormElement.cpp: (WebCore::HTMLFormElement::formData): Use files() instead of value() to get the path, since value() now returns just the basename.
- 11:37 AM Changeset in webkit [36902] by
-
- 6 edits2 deletes in trunk
WebCore:
2008-09-25 Brady Eidson <beidson@apple.com>
Rubberstamped by Mark Rowe
Roll out 36771 as it caused <rdar://problem/6246554>
"nytimes.com doesn't display after returning to it with back/forward"
- css/CSSImportRule.cpp: (WebCore::CSSImportRule::insertedIntoParent):
- css/CSSRule.cpp: (WebCore::CSSRule::parentStyleSheet): (WebCore::CSSRule::parentRule):
- css/CSSStyleSheet.cpp: (WebCore::CSSStyleSheet::CSSStyleSheet): (WebCore::CSSStyleSheet::docLoader):
- css/CSSStyleSheet.h: (WebCore::CSSStyleSheet::doc):
LayoutTests:
2008-09-25 Brady Eidson <beidson@apple.com>
Rubberstamped by Mark Rowe
Roll out 36771 as it caused <rdar://problem/6246554>
"nytimes.com doesn't display after returning to it with back/forward"
- fast/css/nested-rule-parent-sheet-expected.txt: Removed.
- fast/css/nested-rule-parent-sheet.html: Removed.
- 10:47 AM Changeset in webkit [36901] by
-
- 2 edits in trunk/WebCore
Windows build fix
- WebCore.vcproj/WebCore.vcproj: Add ScrollView.cpp to the project.
- 10:27 AM Changeset in webkit [36900] by
-
- 2 edits in trunk/WebCore
- Windows build fix
- platform/win/ScrollViewWin.cpp: (WebCore::ScrollView::addChildPlatformWidget): (WebCore::ScrollView::removeChildPlatformWidget):
- 10:24 AM Changeset in webkit [36899] by
-
- 2 edits in trunk/WebKitSite
2008-09-25 Darin Adler <Darin Adler>
- contact.html: Take a cut at making the role of webkitsdk-dev clearer, specifying that it's Mac OS X specific and hosted at Apple, not WebKit.
- 10:07 AM Changeset in webkit [36898] by
-
- 2 edits in trunk/WebCore
Fixes a leak of ConsoleMessage seen when repeated console
messages occur.
Reviewed by Mark Rowe.
- page/InspectorController.cpp: (WebCore::InspectorController::addConsoleMessage): Delete the repeat since we don't add it to m_consoleMessages.
- 9:59 AM Changeset in webkit [36897] by
-
- 4 edits in branches/Safari-3-2-branch
Versioning.
- 9:55 AM Changeset in webkit [36896] by
-
- 1 copy in tags/Safari-5525.25.2
New tag.
- 9:48 AM Changeset in webkit [36895] by
-
- 4 edits in trunk/WebCore
2008-09-25 Kevin McCullough <kmccullough@apple.com>
Reviewed by Dan Bernstein.
Bug 21105: XHRs logged in the console may show the wrong URL for the
source
- Get the url at the time of the send() and pass it on to the XHR.
- bindings/js/JSXMLHttpRequestCustom.cpp: (WebCore::JSXMLHttpRequest::send):
- xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::didFinishLoading):
- xml/XMLHttpRequest.h: (WebCore::XMLHttpRequest::setLastSendURL):
- 9:04 AM Changeset in webkit [36894] by
-
- 4 edits in trunk/WebCore
2008-09-25 Kevin McCullough <kmccullough@apple.com>
Reviewed by Geoff and Tim.
Bug 20322: XHRs logged in the console do not have line numbers
- Get the line number at the time of the send and pass it on to the XHR.
- bindings/js/JSXMLHttpRequestCustom.cpp: (WebCore::JSXMLHttpRequest::send):
- xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::XMLHttpRequest): (WebCore::XMLHttpRequest::didFinishLoading):
- xml/XMLHttpRequest.h: (WebCore::XMLHttpRequest::setLastSendLineNumber):
- 8:33 AM Changeset in webkit [36893] by
-
- 40 edits in trunk
2008-09-25 Eric Carlson <eric.carlson@apple.com>
Reviewed by Eric Seidel.
<rdar://problem/6171047> HTMLMediaElement "begin" event is now "loadstart"
https://bugs.webkit.org/show_bug.cgi?id=21003
- dom/EventNames.h: remove "begin" event
- html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::load): Post "loadstart" event instead of "begin"
2008-09-25 Eric Carlson <eric.carlson@apple.com>
Reviewed by Eric Seidel.
<rdar://problem/6171047> HTMLMediaElement "begin" event is now "loadstart"
https://bugs.webkit.org/show_bug.cgi?id=21003
Update media layout test results for progress event name change from "begin" to "loadstart"
- media/audio-constructor-expected.txt:
- media/audio-constructor-src-expected.txt:
- media/audio-constructor-src.html:
- media/audio-constructor.html:
- media/progress-event-expected.txt:
- media/progress-event-total-expected.txt:
- media/progress-event-total.html:
- media/progress-event.html:
- media/video-error-abort-expected.txt:
- media/video-error-abort.html:
- media/video-load-networkState-expected.txt:
- media/video-load-networkState.html:
- media/video-load-readyState-expected.txt:
- media/video-load-readyState.html:
- media/video-pause-empty-events-expected.txt:
- media/video-pause-empty-events.html:
- media/video-play-empty-events-expected.txt:
- media/video-play-empty-events.html:
- media/video-source-expected.txt:
- media/video-source-media-expected.txt:
- media/video-source-media.html:
- media/video-source-type-expected.txt:
- media/video-source-type-params-expected.txt:
- media/video-source-type-params.html:
- media/video-source-type.html:
- media/video-source.html:
- media/video-src-change-expected.txt:
- media/video-src-change.html:
- media/video-src-expected.txt:
- media/video-src-remove-expected.txt:
- media/video-src-remove.html:
- media/video-src-set-expected.txt:
- media/video-src-set.html:
- media/video-src-source-expected.txt:
- media/video-src-source.html:
- media/video-src.html:
- 4:30 AM Changeset in webkit [36892] by
-
- 4 edits2 adds in trunk
Reviewed by Eric Seidel.
https://bugs.webkit.org/show_bug.cgi?id=21097
Calling a MessageChannel constructor from a destroyed document results in a crash
Test: fast/events/message-port-constructor-for-deleted-document.html
- bindings/js/JSMessageChannelConstructor.cpp: (WebCore::JSMessageChannelConstructor::construct):
- bindings/js/JSMessageChannelConstructor.h: Made m_document a RefPtr.
- 3:15 AM Changeset in webkit [36891] by
-
- 28 edits27 adds in trunk
Reviewed by Sam Weinig, Anders Carlsson, and (unofficially) Adam Barth.
https://bugs.webkit.org/show_bug.cgi?id=20879
Implement HTML5 channel messaging
Tests: fast/events/message-channel-gc.html
fast/events/message-port-deleted-document.html
fast/events/message-port-deleted-frame.html
fast/events/message-port-inactive-document.html
fast/events/message-port.html
http/tests/security/MessagePort/event-listener-context.html
- Configurations/WebCore.xcconfig: Removed unused ENABLE_CROSS_DOCUMENT_MESSAGING macro.
- DerivedSources.make: Added MessageChannel and MessagePort.
- WebCore.pro: Made MessageEvent compilation unconditional, as it could not possibly be turmed off anyway. Added new files.
- GNUmakefile.am:
- WebCore.pro:
- WebCore.vcproj/WebCore.vcproj:
- WebCore.xcodeproj/project.pbxproj:
- WebCoreSources.bkl: Added new files.
- bindings/js/JSDOMWindowBase.h:
- bindings/js/JSDOMWindowBase.cpp: (WebCore::JSDOMWindowBase::getValueProperty): Added suport for window.MessageChannel constructor.
- bindings/js/JSDOMWindowCustom.cpp: (WebCore::JSDOMWindow::postMessage):
- page/DOMWindow.cpp: (WebCore::DOMWindow::postMessage):
- page/DOMWindow.h:
- page/DOMWindow.idl: Added support for three-argument postMessage (that posts a MessagePort).
- dom/EventTarget.cpp: (WebCore::EventTarget::toMessagePort):
- dom/EventTarget.h:
- bindings/js/JSEventTargetBase.cpp: (WebCore::toJS): Added MessagePort as yet another EventTarget variant.
- bindings/js/JSMessageChannelConstructor.h:
- bindings/js/JSMessageChannelConstructor.cpp: Added a custom constructor, so that it could take a browsing context (document) parameter.
- bindings/js/JSMessageChannelCustom.cpp: Added. (WebCore::JSMessageChannel::mark): JSMessageChannel uses a custom mark function to mark port1 and port2 that it owns.
- bindings/js/JSMessagePortCustom.cpp: Added. (WebCore::JSMessagePort::startConversation): (WebCore::JSMessagePort::addEventListener): (WebCore::JSMessagePort::removeEventListener): (WebCore::JSMessagePort::dispatchEvent): (WebCore::JSMessagePort::setOnmessage): (WebCore::JSMessagePort::onmessage): (WebCore::JSMessagePort::setOnclose): (WebCore::JSMessagePort::onclose): (WebCore::JSMessagePort::mark):
- dom/MessagePort.cpp: Added.
- dom/MessagePort.h: Added.
- dom/MessagePort.idl: Added. Added a MessagePort implementation. Currently, it is not thread-safe at all, and only works with Documents as contexts, but in the future, it will be used for communication with worker threads.
- bindings/objc/DOMInternal.h: Include "DOMMessagePortInternal.h". The new APIs do not really have Obj-C bindings, as they are far from being final, but a MessagePort stub is needed for MessageEvent.
- bindings/scripts/CodeGeneratorJS.pm: Include PlatformString.h for MessagePort happiness.
- dom/Document.cpp: (WebCore::MessagePortTimer::MessagePortTimer): (WebCore::MessagePortTimer::fired): (WebCore::Document::processMessagePortMessagesSoon): (WebCore::Document::~Document): (WebCore::Document::dispatchMessagePortEvents): (WebCore::Document::createdMessagePort): (WebCore::Document::destroyedMessagePort):
- dom/Document.h: Document keeps track of all MessagePort objects that were created when it was fully active in its context.
- dom/EventNames.h: Added closeEvent.
- dom/MessageChannel.cpp: Added. (WebCore::MessageChannel::MessageChannel): (WebCore::MessageChannel::~MessageChannel):
- dom/MessageChannel.h: Added. (WebCore::MessageChannel::create): (WebCore::MessageChannel::port1): (WebCore::MessageChannel::port2):
- dom/MessageChannel.idl: Added. Addded JSMessageChannel implementation.
- dom/MessageEvent.cpp: (WebCore::MessageEvent::MessageEvent): (WebCore::MessageEvent::initMessageEvent):
- dom/MessageEvent.h: (WebCore::MessageEvent::create): (WebCore::MessageEvent::messagePort):
- dom/MessageEvent.idl: MessageEvent has a MessagePort member now, making it possible to pass ports across documents.
- 1:57 AM Changeset in webkit [36890] by
-
- 5 edits4 adds in trunk
WebCore:
2008-09-25 David Smith <catfish.man@gmail.com>
Reviewed by Eric Seidel
fix https://bugs.webkit.org/show_bug.cgi?id=21091
Regression: querySelector matches tag names case sensitively
Tests: fast/dom/SelectorAPI/caseTag.html
fast/dom/SelectorAPI/caseTagX.xhtml
- css/CSSParser.cpp: (WebCore::CSSParser::parseSelector): Add a Document argument, since tag case sensitivity is different for HTML documents
- css/CSSParser.h:
- dom/Node.cpp: (WebCore::Node::querySelector): (WebCore::Node::querySelectorAll):
LayoutTests:
2008-09-25 David Smith <catfish.man@gmail.com>
Reviewed by Eric Seidel
Tests for https://bugs.webkit.org/show_bug.cgi?id=21091
Regression: querySelector matches tag names case sensitively
- ChangeLog:
- fast/dom/SelectorAPI/caseTag-expected.txt: Added.
- fast/dom/SelectorAPI/caseTag.html: Added.
- fast/dom/SelectorAPI/caseTagX-expected.txt: Added.
- fast/dom/SelectorAPI/caseTagX.xhtml: Added.
- 1:23 AM Changeset in webkit [36889] by
-
- 1 edit in trunk/WebCore/page/FrameView.cpp
Fix Qt bustage.
- 1:09 AM Changeset in webkit [36888] by
-
- 1 edit in trunk/WebCore/page/JavaScriptDebugServer.cpp
Fix Qt bustage.
- 12:57 AM Changeset in webkit [36887] by
-
- 1 edit in trunk/WebCore/page/JavaScriptDebugServer.cpp
Fix Qt bustage.
- 12:38 AM Changeset in webkit [36886] by
-
- 19 edits1 add in trunk/WebCore
2008-09-24 David Hyatt <hyatt@apple.com>
Make the m_children member of ScrollView cross-platform. Consolidate children add/remove
functionality. Add platform stubs for connecting/disconnecting the platform widgets.
Reviewed by Sam Weinig
- GNUmakefile.am:
- WebCore.pro:
- WebCore.vcproj/WebCore.vcproj:
- WebCore.xcodeproj/project.pbxproj:
- WebCoreSources.bkl:
- platform/ScrollView.h: (WebCore::ScrollView::children):
- platform/Widget.h:
- platform/gtk/ScrollViewGtk.cpp: (WebCore::ScrollView::addChildPlatformWidget): (WebCore::ScrollView::removeChildPlatformWidget): (WebCore::ScrollView::geometryChanged):
- platform/mac/ScrollViewMac.mm: (WebCore::ScrollView::addChildPlatformWidget): (WebCore::ScrollView::removeChildPlatformWidget):
- platform/qt/ScrollViewQt.cpp: (WebCore::ScrollView::geometryChanged): (WebCore::ScrollView::addChildPlatformWidget): (WebCore::ScrollView::removeChildPlatformWidget):
- platform/win/ScrollViewWin.cpp: (WebCore::ScrollView::geometryChanged): (WebCore::ScrollView::setParentVisible): (WebCore::ScrollView::show): (WebCore::ScrollView::hide):
- platform/wx/ScrollViewWx.cpp: (WebCore::ScrollView::addChildPlatformWidget): (WebCore::ScrollView::removeChildPlatformWidget):
- 12:16 AM Changeset in webkit [36885] by
-
- 3 edits in trunk/WebCore
Reviewed by Dave Hyatt.
- fix https://bugs.webkit.org/show_bug.cgi?id=21024 <rdar://problem/6240821> Scrollbar not painted until hovered
- rendering/RenderWidget.cpp: (WebCore::RenderWidget::setWidgetGeometry): Replaced resizeWidget with this method, which sets both the location and the size. (WebCore::RenderWidget::setWidget): Replaced the call to resizeWidget with a call to the new method setWidgetGeometry. Positioning the widget correctly ensures that the scroll bars invalidate correctly when they are created and resized.
- rendering/RenderWidget.h:
Sep 24, 2008:
- 8:32 PM Changeset in webkit [36884] by
-
- 9 edits in branches/Safari-3-2-branch
Merge r35897.
- 8:32 PM Changeset in webkit [36883] by
-
- 4 edits in branches/Safari-3-2-branch/WebKit/win
Merge r35896.
- 7:46 PM Changeset in webkit [36882] by
-
- 2 edits in trunk/JavaScriptCore
2008-09-24 Geoffrey Garen <ggaren@apple.com>
Reviewed by Maciej Stachowiak.
Move most of the return code back into the callee, now that the callee
doesn't have to calculate anything dynamically.
11.5% speedup on empty function call benchmark.
SunSpider says 0.3% faster. SunSpider --v8 says no change.
- VM/CTI.cpp: (JSC::CTI::compileOpCall): (JSC::CTI::privateCompileMainPass): (JSC::CTI::privateCompileSlowCases):
- 6:10 PM Changeset in webkit [36881] by
-
- 2 edits in trunk/WebKit/win
2008-09-24 Matt Lilek <webkit@mattlilek.com>
Reviewed by Darin Adler.
Bug 20999: Inspector hover to select does not work properly on Windows
https://bugs.webkit.org/show_bug.cgi?id=20999
<rdar://problem/6236524>
- WebNodeHighlight.cpp: (WebNodeHighlight::show):
- 6:08 PM Changeset in webkit [36880] by
-
- 5 edits in trunk/WebKit/mac
2008-09-24 Darin Adler <Darin Adler>
Reviewed by Dan Bernstein.
- https://bugs.webkit.org/show_bug.cgi?id=21079 <rdar://problem/6203938> Disallow embedding Safari-generated pages (e.g bookmarks collection) in subframes
- DefaultDelegates/WebDefaultPolicyDelegate.m: (-[WebDefaultPolicyDelegate webView:decidePolicyForNavigationAction:request:frame:decisionListener:]): Use the new +[WebView _canHandleRequest:forMainFrame:] so we can give a different answer for the main frame and subframes.
- WebCoreSupport/WebFrameLoaderClient.mm: (WebFrameLoaderClient::canHandleRequest): Ditto.
- WebView/WebView.mm: (+[WebView _canHandleRequest:forMainFrame:]): Added forMainFrame. Only look for scheme-specific representations for the main frame, not subframes. (+[WebView _canHandleRequest:]): Give answer for main frame -- calls the method above with YES for main frame.
- WebView/WebViewInternal.h: Added _canHandleRequest:forMainFrame:.
- 5:53 PM Changeset in webkit [36879] by
-
- 4 edits in trunk/WebKit
..:
2008-09-24 Darin Adler <Darin Adler>
- StringsNotToBeLocalized.txt: Updated for recent changes.
../win:
2008-09-24 Darin Adler <Darin Adler>
- English.lproj/Localizable.strings: Updated for recent changes.
- 5:50 PM Changeset in webkit [36878] by
-
- 2 edits in trunk/WebCore
Rubber-stamped by Sam Weinig.
- create a "style" subfolder under "rendering" and move style files to that folder
- WebCore.vcproj/WebCore.vcproj:
- 5:39 PM Changeset in webkit [36877] by
-
- 6 edits in trunk
2008-09-24 Sam Weinig <sam@webkit.org>
Reviewed by Maciej Stachowiak.
Remove staticFunctionGetter. There is only one remaining user of
staticFunctionGetter and it can be converted to use setUpStaticFunctionSlot.
- JavaScriptCore.exp:
- kjs/lookup.cpp:
- kjs/lookup.h:
WebCore:
2008-09-24 Sam Weinig <sam@webkit.org>
Reviewed by Maciej Stachowiak.
Remove staticFunctionGetter. There is only one remaining user of
staticFunctionGetter and it can be converted to use setUpStaticFunctionSlot.
- bindings/js/JSDOMWindowBase.cpp: (WebCore::JSDOMWindowBase::getOwnPropertySlot):
- 5:26 PM Changeset in webkit [36876] by
-
- 5 edits in trunk/JavaScriptCore
2008-09-24 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver Hunt.
- inline JIT fast case of op_neq
- remove extra level of function call indirection from slow cases of eq and neq
1% speedup on Richards
- VM/CTI.cpp: (JSC::CTI::privateCompileMainPass): (JSC::CTI::privateCompileSlowCases):
- VM/Machine.cpp: (JSC::Machine::privateExecute): (JSC::Machine::cti_op_eq): (JSC::Machine::cti_op_neq):
- kjs/operations.cpp: (JSC::equal): (JSC::equalSlowCase):
- kjs/operations.h: (JSC::equalSlowCaseInline):
- 5:07 PM Changeset in webkit [36875] by
-
- 5 edits2 adds in trunk
2008-09-24 Sam Weinig <sam@webkit.org>
Reviewed by Darin Adler.
Fix for https://bugs.webkit.org/show_bug.cgi?id=21080
<rdar://problem/6243534>
Crash below Function.apply when using a runtime array as the argument list
Test: plugins/bindings-array-apply-crash.html
- kjs/FunctionPrototype.cpp: (JSC::functionProtoFuncApply): Revert to the slow case if the object inherits from JSArray (via ClassInfo) but is not a JSArray.
WebKitTools:
2008-09-24 Sam Weinig <sam@webkit.org>
Reviewed by Darin Adler.
Fix for https://bugs.webkit.org/show_bug.cgi?id=21080
<rdar://problem/6243534>
Crash below Function.apply when using a runtime array as the argument list
Add method to ObjCController to return a runtime array.
- DumpRenderTree/mac/ObjCController.m: (+[ObjCController isSelectorExcludedFromWebScript:]): (+[ObjCController webScriptNameForSelector:]): (-[ObjCController testArray]):
LayoutTests:
2008-09-24 Sam Weinig <sam@webkit.org>
Reviewed by Darin Adler.
Test for https://bugs.webkit.org/show_bug.cgi?id=21080
<rdar://problem/6243534>
Crash below Function.apply when using a runtime array as the argument list
- platform/mac/plugins/bindings-array-apply-crash-expected.txt: Added.
- platform/mac/plugins/bindings-array-apply-crash.html: Added.
- 4:40 PM Changeset in webkit [36874] by
-
- 3 edits4 adds in trunk
WebCore:
2008-09-24 Jeremy Moskovich <jeremy@chromium.org>
Reviewed by Dan Bernstein.
Test: editing/spelling/inline_spelling_markers.html
- https://bugs.webkit.org/show_bug.cgi?id=20092 Spelling markers positioned incorrectly in RTL text
Measure spelling markers with selectionRectForText() to fix RTL.
This patch also fixes hit-testing for spelling marker tool tips,
which used to work only on the first line.
- rendering/InlineTextBox.cpp: (WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
LayoutTests:
2008-09-24 Jeremy Moskovich <jeremy@chromium.org>
Reviewed by Dan Bernstein.
- https://bugs.webkit.org/show_bug.cgi?id=20092 Spelling markers positioned incorrectly in RTL text
- editing/spelling/inline_spelling_markers.html: Added.
- platform/mac/editing/spelling/inline_spelling_markers-expected.checksum: Added.
- platform/mac/editing/spelling/inline_spelling_markers-expected.png: Added.
- platform/mac/editing/spelling/inline_spelling_markers-expected.txt: Added.
- 3:26 PM Changeset in webkit [36873] by
-
- 1 edit in trunk/JavaScriptCore/ChangeLog
Removed a stray line from a recent ChangeLog entry.
- 3:24 PM Changeset in webkit [36872] by
-
- 2 edits in trunk/JavaScriptCore
2008-09-24 Kevin McCullough <kmccullough@apple.com>
Style change.
- kjs/nodes.cpp: (JSC::statementListEmitCode):
- 3:19 PM Changeset in webkit [36871] by
-
- 3 edits in trunk/JavaScriptCore
2008-09-24 Kevin McCullough <kmccullough@apple.com>
Reviewed by Geoff.
Bug 21031: Breakpoints in the condition of loops only breaks the first
time
- Now when setting breakpoints in the condition of a loop (for, while, for in, and do while) will successfully break each time throught the loop.
- For 'for' loops we need a little more complicated behavior that cannot be accomplished without some more significant changes: https://bugs.webkit.org/show_bug.cgi?id=21073
- kjs/nodes.cpp: (JSC::statementListEmitCode): We don't want to blindly emit a debug hook at the first line of loops, instead let the loop emit the debug hooks. (JSC::DoWhileNode::emitCode): (JSC::WhileNode::emitCode): (JSC::ForNode::emitCode): (JSC::ForInNode::emitCode):
- kjs/nodes.h: (JSC::StatementNode::): (JSC::DoWhileNode::): (JSC::WhileNode::): (JSC::ForInNode::):
- 2:48 PM Changeset in webkit [36870] by
-
- 2 edits in trunk/WebKitTools
2008-09-24 Beth Dakin <Beth Dakin>
Reviewed by Sam Weinig.
Speculative build fix.
- DumpRenderTree/win/AccessibilityUIElementWin.cpp: (AccessibilityUIElement::supportsPressAction):
- 2:45 PM Changeset in webkit [36869] by
-
- 7 edits2 deletes in trunk/WebCore
2008-09-24 David Hyatt <hyatt@apple.com>
Make sure the viewless scrollbar knows how to paint properly when transformed.
Reviewed by Sam Weinig
- platform/mac/ScrollbarThemeMac.mm: (WebCore::ScrollbarThemeMac::ScrollbarThemeMac): (WebCore::ScrollbarThemeMac::paint):
- 2:28 PM Changeset in webkit [36868] by
-
- 2 edits in trunk/WebCore
2008-09-24 David Hyatt <hyatt@apple.com>
Make sure the viewless scrollbar knows how to paint properly when transformed.
Reviewed by Sam Weinig
- platform/mac/ScrollbarThemeMac.mm: (WebCore::ScrollbarThemeMac::ScrollbarThemeMac): (WebCore::ScrollbarThemeMac::paint):
- 2:18 PM Changeset in webkit [36867] by
-
- 1 edit3 adds in trunk/WebKitSite
Add new screenshots of the Web Inspector's Scope Variables pane.
Not reviewed.
- blog-files/inspector-closure-scope.png: Added.
- blog-files/inspector-event-scope.png: Added.
- blog-files/inspector-with-scope.png: Added.
- 2:17 PM Changeset in webkit [36866] by
-
- 3 edits in trunk/WebCore
Not reviewed. Try to fix win build.
Add missing ChangeLog entry from last commit.
- 2:13 PM Changeset in webkit [36865] by
-
- 1 edit in trunk/JavaScriptCore/ChangeLog
Remove stray characters Maciej pointed out in log.
- 2:08 PM Changeset in webkit [36864] by
-
- 4 edits in trunk/WebCore
2008-09-24 Simon Fraser <Simon Fraser>
Reviewed by Dave Hyatt
Wrap up dirtying the z-order list of the stacking context
RenderLayer into a method.
https://bugs.webkit.org/show_bug.cgi?id=21072
- rendering/RenderLayer.cpp: (WebCore::RenderLayer::setHasVisibleContent): (WebCore::RenderLayer::addChild): (WebCore::RenderLayer::removeChild): (WebCore::RenderLayer::dirtyStackingContextZOrderLists): (WebCore::RenderLayer::styleChanged):
- rendering/RenderLayer.h:
- rendering/RenderObject.cpp: (WebCore::RenderObject::setStyle):
- 1:38 PM Changeset in webkit [36863] by
-
- 5 edits1 add in trunk/JavaScriptCore
2008-09-24 Geoffrey Garen <ggaren@apple.com>
Reviewed by Darin Adler.
Fixed <rdar://problem/5605532> Need a SPI for telling JS the size of
the objects it retains
- API/JSBase.h: Filled in some missing function names.
- API/tests/testapi.c: Test the new SPI a little.
- API/JSSPI.cpp: Add the new SPI.
- API/JSSPI.h: Add the new SPI.
- JavaScriptCore.exp: Add the new SPI.
- JavaScriptCore.xcodeproj/project.pbxproj: Add the new SPI.
- 1:37 PM Changeset in webkit [36862] by
-
- 1 edit1 add in trunk/WebKitSite
Add another screenshot of the Web Inspector.
Not reviewed.
- blog-files/inspector-disabling-properties.png: Added.
- 1:22 PM Changeset in webkit [36861] by
-
- 3 edits in trunk/WebCore
2008-09-24 Kevin McCullough <kmccullough@apple.com>
Reviewed by Tim.
Bug 21070: REGRESSION Repeated messages with arguments are not repeated
or displayed multiple times
- The Insepctor Controller was comparing JSValue pointers so thought the message was not a repeat, but the JS of the inspector compared the strings and so knew it was the same message and so overwrote the old message.
- page/InspectorController.cpp: (WebCore::ConsoleMessage::isEqual): (WebCore::InspectorController::addMessageToConsole): (WebCore::InspectorController::addConsoleMessage): (WebCore::InspectorController::startGroup): (WebCore::InspectorController::endGroup):
- page/InspectorController.h:
- 1:19 PM Changeset in webkit [36860] by
-
- 5 edits in trunk/WebCore
2008-09-24 David Hyatt <hyatt@apple.com>
Make sure the viewless Mac scrollbar responds properly to system preference changes (including the
arrow placement preference and the thumb jump preference).
Reviewed by Adam Roben
- platform/Scrollbar.cpp: (WebCore::Scrollbar::Scrollbar): (WebCore::Scrollbar::~Scrollbar):
- platform/ScrollbarTheme.h: (WebCore::ScrollbarTheme::registerScrollbar): (WebCore::ScrollbarTheme::unregisterScrollbar):
- platform/mac/ScrollbarThemeMac.h:
- platform/mac/ScrollbarThemeMac.mm: (+[ScrollbarPrefsObserver appearancePrefsChanged:]): (+[ScrollbarPrefsObserver behaviorPrefsChanged:]): (+[ScrollbarPrefsObserver registerAsObserver]): (WebCore::ScrollbarThemeMac::registerScrollbar): (WebCore::ScrollbarThemeMac::unregisterScrollbar): (WebCore::ScrollbarThemeMac::ScrollbarThemeMac): (WebCore::ScrollbarThemeMac::preferencesChanged):
- 1:13 PM Changeset in webkit [36859] by
-
- 2 edits in trunk/JavaScriptCore
2008-09-24 Geoffrey Garen <ggaren@apple.com>
Reviewed by Darin Adler.
- API/JSBase.h: Filled in some missing function names.
- 1:06 PM Changeset in webkit [36858] by
-
- 2 edits1 add in trunk/WebCore/dom
Reviewed by Oliver.
Add ContainerNodeAlgorithms.h, as central place to share algorithms
operating on TreeShared-derived classes with a Node-style interface.
This allows SVGElementInstance & ContainerNode to share code.
- 12:50 PM Changeset in webkit [36857] by
-
- 1 edit10 adds in trunk/WebKitSite
Add new screenshots of the Web Inspector.
Not reviewed.
- blog-files/inspector-console-autocomplete.png: Added.
- blog-files/inspector-databases-panel-query-view.png: Added.
- blog-files/inspector-databases-panel.png: Added.
- blog-files/inspector-elements-panel.png: Added.
- blog-files/inspector-numeric-style-stepping.gif: Added.
- blog-files/inspector-profiles-panel.png: Added.
- blog-files/inspector-resources-panel.png: Added.
- blog-files/inspector-scripts-panel.png: Added.
- blog-files/inspector-status-bar-with-errors.png: Added.
- blog-files/inspector-toolbar.png: Added.
- 12:23 PM Changeset in webkit [36856] by
-
- 3 edits2 adds in trunk
Reviewed by Darin.
https://bugs.webkit.org/show_bug.cgi?id=20557
getScreenCTM() returns wrong values
Use the absolute position of the svg root when
determining the screen ctm.
Test: svg/custom/getscreenctm-in-mixed-content2.xhtml
- 11:26 AM Changeset in webkit [36855] by
-
- 52 edits in trunk
2008-09-24 David Hyatt <hyatt@apple.com>
Turn off support for CSS variables.
- ChangeLog:
- css/CSSParser.cpp: (WebCore::CSSParser::createVariablesRule): (WebCore::CSSParser::addVariable): (WebCore::CSSParser::addVariableDeclarationBlock):
- 11:15 AM Changeset in webkit [36854] by
-
- 5 edits1 delete in trunk
2008-09-24 David Hyatt <hyatt@apple.com>
Back out the alternate forms of CSS variable call syntax (leaving only the -webkit-var version).
- css/CSSGrammar.y:
- css/CSSParserValues.cpp: (WebCore::CSSParserValue::isVariable):
- css/CSSPrimitiveValue.cpp: (WebCore::CSSPrimitiveValue::cleanup): (WebCore::CSSPrimitiveValue::getStringValue): (WebCore::CSSPrimitiveValue::cssText): (WebCore::CSSPrimitiveValue::parserValue):
- css/CSSPrimitiveValue.h: (WebCore::CSSPrimitiveValue::): (WebCore::CSSPrimitiveValue::isVariable):
- 10:54 AM Changeset in webkit [36853] by
-
- 2 edits in trunk/JavaScriptCore
2008-09-24 Geoffrey Garen <ggaren@apple.com>
Reviewed by Cameron Zwarich.
Fixed https://bugs.webkit.org/show_bug.cgi?id=21057
Crash in RegisterID::deref() running fast/canvas/canvas-putImageData.html
- VM/CodeGenerator.h: Changed declaration order to ensure the m_lastConstant, which is a RefPtr that points into m_calleeRegisters, has its destructor called before the destructor for m_calleeRegisters.
- 10:40 AM Changeset in webkit [36852] by
-
- 2 edits in trunk/WebKitSite
- demos/drosera/demo.js: Add some console.profile() calls.
- 10:02 AM Changeset in webkit [36851] by
-
- 9 edits in trunk/JavaScriptCore
2008-09-24 Darin Adler <Darin Adler>
Reviewed by Sam Weinig.
- https://bugs.webkit.org/show_bug.cgi?id=21047 speed up ret_activation with inlining
About 1% on v8-raytrace.
- JavaScriptCore.exp: Removed JSVariableObject::setRegisters.
- kjs/JSActivation.cpp: Moved copyRegisters to the header to make it inline.
- kjs/JSActivation.h: (JSC::JSActivation::copyRegisters): Moved here. Also removed the registerArraySize argument to setRegisters, since the object doesn't need to store the number of registers.
- kjs/JSGlobalObject.cpp: (JSC::JSGlobalObject::reset): Removed unnecessary clearing left over from when we used this on objects that weren't brand new. These days, this function is really just part of the constructor.
- kjs/JSGlobalObject.h: Added registerArraySize to JSGlobalObjectData, since JSVariableObjectData no longer needs it. Added a setRegisters override here that handles storing the size.
- kjs/JSStaticScopeObject.h: Removed code to set registerArraySize, since it no longer exists.
- kjs/JSVariableObject.cpp: Moved copyRegisterArray and setRegisters to the header to make them inline.
- kjs/JSVariableObject.h: Removed registerArraySize from JSVariableObjectData, since it was only used for the global object. (JSC::JSVariableObject::copyRegisterArray): Moved here ot make it inline. (JSC::JSVariableObject::setRegisters): Moved here to make it inline. Also removed the code to set registerArraySize and changed an if statement into an assert to save an unnnecessary branch.
- 9:39 AM Changeset in webkit [36850] by
-
- 1 edit in trunk/WebCore/ChangeLog
Added bug URLs for r36001
- 9:23 AM Changeset in webkit [36849] by
-
- 2 edits in trunk/WebCore
Fixes a regression where the "incorrect MIME-type" warning would not
show up correctly in the Console or the resources sidebar.
Reviewed by Kevin McCullough.
- page/inspector/Resource.js: (WebInspector.Resource.prototype._addTip): Add the repeat count argument to the WebInspector.ConsoleMessage constructor call. (WebInspector.Resource.prototype._checkWarning): Ditto.
- 6:47 AM Changeset in webkit [36848] by
-
- 5 edits in trunk
2008-09-23 Tor Arne Vestbø <tavestbo@trolltech.com>
Reviewed by Simon.
Remove deprecated JS Qt bindings object call/construct code and fix autotests
- 1:11 AM Changeset in webkit [36847] by
-
- 4 edits in trunk/JavaScriptCore
2008-09-24 Maciej Stachowiak <mjs@apple.com>
Reviewed by Oliver Hunt.
- inline PropertyMap::getOffset to speed up polymorphic lookups
~1.5% speedup on v8 benchmark
no effect on SunSpider
- JavaScriptCore.exp:
- kjs/PropertyMap.cpp:
- kjs/PropertyMap.h: (JSC::PropertyMap::getOffset):
- 12:43 AM Changeset in webkit [36846] by
-
- 2 edits in trunk/JavaScriptCore
2008-09-24 Jan Michael Alonzo <jmalonzo@webkit.org>
Reviewed by Alp Toker.
https://bugs.webkit.org/show_bug.cgi?id=20992
Build fails on GTK+ Mac OS
- wtf/ThreadingGtk.cpp: Remove platform ifdef as suggested by Richard Hult. (WTF::initializeThreading):
- 12:42 AM Changeset in webkit [36845] by
-
- 3 edits in trunk
2008-09-23 Richard Hult <richard@imendio.com>
Reviewed by Alp Toker. Landed by Jan Alonzo.
http://bugs.webkit.org/show_bug.cgi?id=20582
[Gtk] Link error on Mac OS X
- GNUmakefile.am: Only use the -version-script flag for the gnu linker.
- configure.ac: Check for GNU OSes.
- 12:42 AM Changeset in webkit [36844] by
-
- 3 edits in trunk/WebCore
2008-09-23 Julien Chaffraix <jchaffraix@pleyo.com>
Reviewed by Alp Toker. Landed by Jan Alonzo.
Bug 20883: [CURL] Add deferred loading
https://bugs.webkit.org/show_bug.cgi?id=20883
Implement deferred loading for the libcURL backend using curl_easy_pause.
As the method was introduced in version 7.18.0, all the code checks for libcURL
version.
- platform/network/curl/ResourceHandleCurl.cpp: (WebCore::ResourceHandle::setDefersLoading):
- platform/network/curl/ResourceHandleManager.cpp: (WebCore::writeCallback): Add an assertion that deferred loading is not activated. (WebCore::headerCallback): Ditto. (WebCore::readCallback): Ditto. (WebCore::ResourceHandleManager::dispatchSynchronousJob): Force defersLoading to be false in order to avoid triggering an assertion. (WebCore::ResourceHandleManager::initializeHandle): If deferred loading is activated, pause the easy handle.
- 12:32 AM Changeset in webkit [36843] by
-
- 4 edits in trunk/JavaScriptCore
Bug 19968: Slow Script at www.huffingtonpost.com
<https://bugs.webkit.org/show_bug.cgi?id=19968>
Reviewed by Maciej Stachowiak
Finally found the cause of this accursed issue. It is triggered
by synchronous creation of a new global object from JS. The new
global object resets the timer state in this execution group's
Machine, taking timerCheckCount to 0. Then when JS returns the
timerCheckCount is decremented making it non-zero. The next time
we execute JS we will start the timeout counter, however the non-zero
timeoutCheckCount means we don't reset the timer information. This
means that the timeout check is now checking the cumulative time
since the creation of the global object rather than the time since
JS was last entered. At this point the slow script dialog is guaranteed
to eventually be displayed incorrectly unless a page is loaded
asynchronously (which will reset everything into a sane state).
The fix for this is rather trivial -- the JSGlobalObject constructor
should not be resetting the machine timer state.
Sep 23, 2008:
- 11:44 PM Changeset in webkit [36842] by
-
- 4 edits2 adds in trunk
2008-09-23 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Fixed https://bugs.webkit.org/show_bug.cgi?id=21038 | <rdar://problem/6240812>
Uncaught exceptions in regex replace callbacks crash webkit
This was a combination of two problems:
(1) the replace function would continue execution after an exception
had been thrown.
(2) In some cases, the Machine would return 0 in the case of an exception,
despite the fact that a few clients dereference the Machine's return
value without first checking for an exception.
- VM/Machine.cpp: (JSC::Machine::execute):
Return jsNull() instead of 0 in the case of an exception, since some
clients depend on using our return value.
ASSERT that execution does not continue after an exception has been
thrown, to help catch problems like this in the future.
- kjs/StringPrototype.cpp: (JSC::stringProtoFuncReplace):
Stop execution if an exception has been thrown.
LayoutTests:
2008-09-23 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Test for https://bugs.webkit.org/show_bug.cgi?id=21038
Uncaught exceptions in regex replace callbacks crash webkit
- fast/js/string-replace-exception-crash-expected.txt: Added.
- fast/js/string-replace-exception-crash.html: Added.
- 10:49 PM Changeset in webkit [36841] by
-
- 2 edits in trunk/JavaScriptCore
2008-09-23 Geoffrey Garen <ggaren@apple.com>
Try to fix the windows build.
- VM/CTI.cpp: (JSC::CTI::compileOpCall): (JSC::CTI::privateCompileMainPass):
- 8:36 PM Changeset in webkit [36840] by
-
- 2 edits in trunk/JavaScriptCore
2008-09-23 Alp Toker <alp@nuanti.com>
Build fix.
- VM/CTI.h:
- 8:24 PM Changeset in webkit [36839] by
-
- 2 edits in trunk/WebCore
2008-09-23 Matt Lilek <webkit@mattlilek.com>
Reviewed by Tim Hatcher.
Inspector search field style tweaks.
- page/inspector/inspector.css:
- 7:23 PM Changeset in webkit [36838] by
-
- 3 edits in trunk/WebCore
Reviewed by Eric.
Fixes: https://bugs.webkit.org/show_bug.cgi?id=21046 (Several LayoutTests crash)
Fix missing negation in EventTargetNode::insertedIntoDocument.
Made handleLocalEvents() virtual again, HTMLFormElement overrides it.
Remove code, that wasn't supposed to go in in dispatchGenericEvent().
- 7:08 PM Changeset in webkit [36837] by
-
- 4 edits in trunk/WebCore
Adds search support to the Profiles panel.
The Profiles panel supports a few types of queries:
- Standard string matching for function names and file URLs.
- Greater than and less than search for numeric columns. So a query of ">24" will match all rows that have calls greater than 24. Or "<=42" will match all 42 or less.
- Percent and time units. Adding a unit of "s", "ms" or "%" is supported and will match only the Self and Total columns. So a query of ">1.25s" will match all rows that took longer than 1.25 seconds.
Reviewed by Oliver Hunt.
- page/inspector/ProfileView.js: (WebInspector.ProfileView.prototype.hide): Reset _currentSearchResultIndex to -1. So the next time it will start at the first result. (WebInspector.ProfileView.prototype.refreshShowAsPercents): Moved from the bottom of the file. (WebInspector.ProfileView.prototype.searchCanceled): Clear the search properties and refresh highlighted data grid nodes. (WebInspector.ProfileView.prototype.performSearch): Search the profile nodes. (WebInspector.ProfileView.prototype.jumpToFirstSearchResult): Does what the function says. Calls _jumpToSearchResult. (WebInspector.ProfileView.prototype.jumpToLastSearchResult): Ditto. (WebInspector.ProfileView.prototype.jumpToNextSearchResult): Ditto. (WebInspector.ProfileView.prototype.jumpToPreviousSearchResult): Ditto. (WebInspector.ProfileView.prototype.showingFirstSearchResult): Does what the function says. (WebInspector.ProfileView.prototype.showingLastSearchResult): Ditto. (WebInspector.ProfileView.prototype._jumpToSearchResult): Select and reveal the profile node. Expand all the ancestors first so the profile node will have a DataGridNode. (WebInspector.ProfileView.prototype._changeView): Perform the search again on the new tree. (WebInspector.ProfileDataGridNode.prototype.createCell): Add the highlight class to cells that have search matches.
- page/inspector/ProfilesPanel.js: (WebInspector.ProfilesPanel.prototype.reset): Call searchCanceled and delete the currentQuery. (WebInspector.ProfilesPanel.prototype.showProfile): Use profileViewForProfile. (WebInspector.ProfilesPanel.prototype.showView): Call showProfile. Used by Panel to show a view. (WebInspector.ProfilesPanel.prototype.profileViewForProfile): Create the ProfileView if needed. (WebInspector.ProfilesPanel.prototype.closeVisibleView): Renamed visibleProfileView to visibleView. (WebInspector.ProfilesPanel.prototype.get searchableViews): Return all the views. (WebInspector.ProfilesPanel.prototype.searchMatchFound): Update the sidebar search matches. (WebInspector.ProfilesPanel.prototype.searchCanceled): Clear all the sidebar search matches. (WebInspector.ProfileSidebarTreeElement.prototype.set searchMatches): Set the class and bubbleText.
- page/inspector/inspector.css: New style rules for the cell highlight color.
- 7:08 PM Changeset in webkit [36836] by
-
- 8 edits4 adds in trunk/WebCore
Adds search support to the Resources and Scripts panels.
Reviewed by Oliver Hunt.
- page/inspector/Images/searchSmallBlue.png: Added.
- page/inspector/Images/searchSmallBrightBlue.png: Added.
- page/inspector/Images/searchSmallGray.png: Added.
- page/inspector/Images/searchSmallWhite.png: Added.
- page/inspector/ResourceView.js: (WebInspector.ResourceView.prototype.attach): Attempt to attach to "resource-views" or "script-resource-views" since one might not be created yet.
- page/inspector/ResourcesPanel.js: (WebInspector.ResourcesPanel.prototype.show): Hide any views that are visible that are not this panel's current visible view. This can happen when a ResourceView is visible in the Scripts panel then switched to the this panel. (WebInspector.ResourcesPanel.prototype.get searchableViews): Return all views, with the visibleView first. (WebInspector.ResourcesPanel.prototype.searchResultsSortFunction): Return a sort function that uses the current graph search function. So cycling through results will be in the order things appear in the sidebar. (WebInspector.ResourcesPanel.prototype.searchMatchFound): Update the search matches on the resource's sidebar tree element. (WebInspector.ResourcesPanel.prototype.searchCanceled): Restore the error and warning bubbles in the sidebar. Calls the Panel prototype's searchCanceled. (WebInspector.ResourcesPanel.prototype.performSearch): Hide all the error and warning bubbles in the sidebar. Calls the Panel prototype's performSearch. (WebInspector.ResourcesPanel.prototype.reset): Call searchCanceled and delete the currentQuery. (WebInspector.ResourcesPanel.prototype.addMessageToResource): Don't call updateErrorsAndWarnings if there is a current search query. (WebInspector.ResourcesPanel.prototype.clearMessages): Ditto. (WebInspector.ResourcesPanel.prototype.recreateViewForResourceIfNeeded): Ditto. (WebInspector.ResourcesPanel.prototype.showView): Call showResource. Used by Panel to show a view. (WebInspector.ResourceSidebarTreeElement.prototype.resetBubble): Clear all the classes and content. (WebInspector.ResourceSidebarTreeElement.prototype.set searchMatches): Set the bubbleText and class. (WebInspector.ResourceSidebarTreeElement.prototype.updateErrorsAndWarnings): Call resetBubble.
- page/inspector/ScriptView.js: (WebInspector.ScriptView): Set _sourceFrameSetup to flase. (WebInspector.ScriptView.prototype.hide): Reset _currentSearchResultIndex to -1. So the next time it will start at the first result. (WebInspector.ScriptView.prototype.setupSourceFrameIfNeeded): Add an event listener for "syntax highlighting complete". (WebInspector.ScriptView.prototype): Share many methods with SourceView.
- page/inspector/ScriptsPanel.js: (WebInspector.ScriptsPanel.prototype.show): Hide any views that are visible that are not this This can happen when a ResourceView is visible in the Resources panel then switched to the this panel. (WebInspector.ScriptsPanel.prototype.get searchableViews): Return all views, with the visibleView first. (WebInspector.ScriptsPanel.prototype.reset): Call searchCanceled and delete the currentQuery. (WebInspector.ScriptsPanel.prototype.showView): Call _showScriptOrResource. Used by Panel to show a view. (WebInspector.ScriptsPanel.prototype._sourceViewForScriptOrResource): Added helper.
- page/inspector/SourceFrame.js: (WebInspector.SourceFrame.prototype.syntaxHighlightJavascript): Dispatch a "syntax highlighting complete" event.
- page/inspector/SourceView.js: (WebInspector.SourceView.prototype.hide): (WebInspector.SourceView.prototype.detach): (WebInspector.SourceView.prototype._resourceLoadingFinished): Moved from the bottom of the file. (WebInspector.SourceView.prototype._addBreakpoint): Ditto. (WebInspector.SourceView.prototype.searchCanceled): Delete search properties. (WebInspector.SourceView.prototype.performSearch): Search the frame if it is loaded, otherwise store the worker function as _delayedFindSearchMatches and call it later in _sourceFrameSetupFinished. (WebInspector.SourceView.prototype.jumpToFirstSearchResult): (WebInspector.SourceView.prototype.jumpToLastSearchResult): (WebInspector.SourceView.prototype.jumpToNextSearchResult): (WebInspector.SourceView.prototype.jumpToPreviousSearchResult): (WebInspector.SourceView.prototype.showingFirstSearchResult): (WebInspector.SourceView.prototype.showingLastSearchResult): (WebInspector.SourceView.prototype._jumpToSearchResult): Selects the found Range. (WebInspector.SourceView.prototype._sourceFrameSetupFinished): Calls _delayedFindSearchMatches. (WebInspector.SourceView.prototype._syntaxHighlightingComplete): Call _sourceFrameSetupFinished.
- page/inspector/inspector.css:
- 7:08 PM Changeset in webkit [36835] by
-
- 3 edits in trunk/WebCore
Rename some properties of ResourcesPanel and ScriptsPanel to be the same,
so future code can be shared.
Reviewed by Oliver Hunt.
- page/inspector/ResourcesPanel.js: Renamed resourceViews to viewsContainerElement. And visibleResourceView to visibleView.
- page/inspector/ScriptsPanel.js: Renamed scriptResourceViews to viewsContainerElement.
- 7:08 PM Changeset in webkit [36834] by
-
- 4 edits in trunk/WebCore
Highlight all matched search results in the Elements panel DOM tree.
Reviewed by Oliver Hunt.
- page/inspector/ElementsPanel.js: (WebInspector.ElementsPanel.prototype.searchCanceled): Clear the highlight on all previous search results. (WebInspector.ElementsPanel.prototype.performSearch): Set the hihglight on all new search results.
- page/inspector/ElementsTreeOutline.js: (WebInspector.ElementsTreeElement): Delay setting the title until onattach. (WebInspector.ElementsTreeElement.prototype.get/set highlighted): Sets or removes the highlighted class on the listItemElement. (WebInspector.ElementsTreeElement.prototype.onattach): Set the highlighted class if needed. Calls _updateTitle. (WebInspector.ElementsTreeElement.prototype._updateTitle): Adds a span with the highlight class so it can be styled when the highlighted class is present.
- page/inspector/inspector.css: New style rules for the hihglight.
- 7:08 PM Changeset in webkit [36833] by
-
- 2 edits in trunk/WebCore
Add search support to the Elements panel.
Reviewed by Oliver Hunt.
- page/inspector/ElementsPanel.js: (WebInspector.ElementsPanel.prototype.searchCanceled): Call updateSearchMatchesCount with a 0 match count to rest. Reset the other search properties. (WebInspector.ElementsPanel.prototype.performSearch): Evaluates the search as an XPath query and a CSS selector on all the Documents in the page. Remembers the found nodes and avoids duplicates. Focuses the first result. (WebInspector.ElementsPanel.prototype.jumpToNextSearchResult): Focuses the next result. (WebInspector.ElementsPanel.prototype.jumpToPreviousSearchResult): Focuses the previous result.
- 7:08 PM Changeset in webkit [36832] by
-
- 2 edits in trunk/WebCore
Add support to Panel that allows easy searching of sub-views.
Reviewed by Oliver Hunt.
- page/inspector/Panel.js: (WebInspector.Panel.prototype.searchCanceled): Call searchCanceled on all the views in the search results and delete the currentQuery property. Call WebInspector.updateSearchMatchesCount wit ha 0 match count to rest. Reset the other search properties. (WebInspector.Panel.prototype.performSearch): Call searchCanceled since it will reset everything we need before doing a new search. Get an array of searchableViews from the panel, implemented by sub-classes. Iterate over the views one-by-one with an interval to prevent blocking the UI for large lists of searchableViews. This keeps the interface really responsive. Pass a finishedCallback function to the performSearch on each view so it can notify the panel of results. (WebInspector.Panel.prototype.jumpToNextSearchResult): Finds the index in the searchResults of the visibleView, so we know where in the results we are. This is done every time incase the user manually navigates to a new view. If the view is showing the last result, jump to the next view and show it's first result. Otherwise jump to the next result in the current view. (WebInspector.Panel.prototype.jumpToPreviousSearchResult): Ditto, but in reverse.
- 7:08 PM Changeset in webkit [36831] by
-
- 5 edits in trunk/WebCore
Add support for asking the current panel to perform a search, find next/previous and clear.
A search is performed on the new new current panel when switching between panels. The search
label/placeholder in the toolbar now includes the panel name to make it clear that panel will
be searched. The search field contents are selected when Command/Control-F or Enter/Return
is pressed, so the user can easily type an entirely new query. The search match count shows
up in the toolbar next to the search field.
Also changed:
- Rename lastQuery to currentQuery since it better matches the truth.
- Set the search field "results" attribute to zero since results arn't saved for how we use the search field.
- Make repeated presses of the Return key jump to the next search result instead of doing nothing.
- Increased the search field width.
Reviewed by Oliver Hunt.
- English.lproj/localizedStrings.js: New strings.
- page/inspector/inspector.css: New styles.
- page/inspector/inspector.html: Add the search-results-matches element. Add the incremental attribute to the search field and set the results attribute to zero.
- page/inspector/inspector.js: (WebInspector.set currentPanel): perform the search on the new panel. (WebInspector.loaded): Change the event listeners and remove code that changes the search label text. (WebInspector.documentKeyDown): Add support for Command/Control-G and Command/Control-Shift-G. To jump to the next and previous search results. (WebInspector.updateSearchLabel): Added. Update the search placeholder/label. This does different things depending on the attached state. (WebInspector.searchKeyDown): Call preventDefault since this was the Enter key. This prevents a "search" event from firing for key down. We handle the Enter key on key up in searchKeyUp. This stops performSearch from being called twice in a row. (WebInspector.searchKeyUp): Calls performSearch when it is the Enter key. (WebInspector.performSearch): Delete the currentQuery property and call searchCanceled on all the panels. Call jumpToNextSearchResult when this is the same query or a forced search. Call updateSearchMatchesCount to reset the matches count in the toolbar. (WebInspector.updateSearchMatchesCount): Added. Updates the matches count in the toolbar.
- 7:08 PM Changeset in webkit [36830] by
-
- 4 edits in trunk/WebCore
Remove the previous Inspector search code to make room for the new stuff.
Reviewed by Oliver Hunt.
- page/inspector/inspector.css:
- page/inspector/inspector.html:
- page/inspector/inspector.js: (WebInspector.get/set showingSearchResults): Removed. (WebInspector.searchResultsKeyDown): Removed. (WebInspector.searchResultsResizerDragStart): Removed. (WebInspector.searchResultsResizerDragEnd): Removed. (WebInspector.searchResultsResizerDrag): Removed. (WebInspector.performSearch): Removed searching parts.
- 7:07 PM Changeset in webkit [36829] by
-
- 4 edits in trunk/WebCore
Use the Array.remove helper function in more places.
Reviewed by Kevin McCullough.
- page/inspector/ResourceCategory.js: (WebInspector.ResourceCategory.prototype.removeResource): Use Array.remove.
- page/inspector/ResourcesPanel.js: (WebInspector.ResourcesPanel.prototype.removeResource): Ditto.
- page/inspector/inspector.js: (WebInspector.removeResource): Ditto.
- 7:07 PM Changeset in webkit [36828] by
-
- 3 edits in trunk/WebCore
Fixes a bug where inspecting a node after reloading the page
would not reveal the node in the DOM tree. The TreeOutline
was not being told to forget decendants of a removed child.
So old TreeElements would be found that are not in the tree.
Reviewed by Kevin McCullough.
- page/inspector/treeoutline.js: (TreeOutline._removeChildAtIndex): Call _forgetChildrenRecursive in addition to _forgetTreeElement. (TreeOutline._removeChildren): Call _forgetChildrenRecursive in addition to _forgetTreeElement. (TreeOutline._rememberTreeElement): Use Array.indexOf to quickly search for known elements. (TreeOutline._forgetTreeElement): Use Array.remove to remove elements. (TreeOutline._forgetChildrenRecursive): Recursively traverse the descendants and call _forgetTreeElement.
- page/inspector/utilities.js: (Array.prototype.remove): Speed up this function by using Array.indexOf when onlyFirst is true.
- 7:07 PM Changeset in webkit [36827] by
-
- 2 edits in trunk/WebCore
Fixes a bug where inspecting some short text nodes does
not reveal them in the Elements panel DOM tree.
Reviewed by Oliver Hunt.
- page/inspector/ElementsTreeOutline.js: (WebInspector.ElementsTreeOutline.prototype.set focusedDOMNode): The revealAndSelectNode() method might find a different element if there is inlined text, and the select() call would change the focusedDOMNode and reenter this setter. So to avoid calling focusedNodeChanged() twice, first check if _focusedDOMNode is the same node as the one passed in. (WebInspector.ElementsTreeOutline.prototype.update): Remove use of this.treeOutline, since this is the TreeOutline. (WebInspector.ElementsTreeOutline.prototype.findTreeElement): Added. Provides default functions for isAncestor, getParet and equal. Calls the base protoype's findTreeElement. If that returns null and the node is a text node, try finding it's parent. (WebInspector.ElementsTreeOutline.prototype.revealNode): Removed. Renamed to revealAndSelectNode. (WebInspector.ElementsTreeOutline.prototype.revealAndSelectNode): Selects and reveals the node passed in. Use the simple findTreeElement. (WebInspector.ElementsTreeOutline.prototype._treeElementFromEvent): Remove use of this.treeOutline, since this is the TreeOutline.
- 7:07 PM Changeset in webkit [36826] by
-
- 2 edits in trunk/WebCore
Fixes an exception that happened when removing a Resource
from the ResourcesPanel.
Reviewed by Kevin McCullough.
- page/inspector/ResourcesPanel.js: (WebInspctor.ResourcesPanel.prototype.removeResource): Remove the graphElement.
- 6:52 PM Changeset in webkit [36825] by
-
- 2 edits in trunk/JavaScriptCore
2008-09-23 Geoffrey Garen <ggaren@apple.com>
Reviewed by Darin Adler.
- wtf/Platform.h: Removed duplicate #if.
- 6:18 PM Changeset in webkit [36824] by
-
- 1 edit in trunk/WebCore/ChangeLog
2008-09-23 Kevin McCullough <kmccullough@apple.com>
Fixed "Time" to "Tim"
- ChangeLog:
- 6:00 PM Changeset in webkit [36823] by
-
- 12 edits in trunk/WebCore
Reviewed by Oliver.
Move mapInstanceToElement/removeInstanceMapping/instancesForElement
from SVGDocumentExtensions to SVGElement. It's more useful to store
the list of SVGElementInstances per SVGElement, instead of using
a document-wide hash for this purpose.
- 5:53 PM Changeset in webkit [36822] by
-
- 2 edits in trunk/WebCore
wx build fix.
- 5:27 PM Changeset in webkit [36821] by
-
- 27 edits in trunk/JavaScriptCore
2008-09-23 Geoffrey Garen <ggaren@apple.com>
Reviewed by Darin Adler.
Changed the layout of the call frame from
{ header, parameters, locals | constants, temporaries }
to
{ parameters, header | locals, constants, temporaries }
This simplifies function entry+exit, and enables a number of future
optimizations.
13.5% speedup on empty call benchmark for bytecode; 23.6% speedup on
empty call benchmark for CTI.
SunSpider says no change. SunSpider --v8 says 1% faster.
- VM/CTI.cpp:
Added a bit of abstraction for calculating whether a register is a
constant, since this patch changes that calculation:
(JSC::CTI::isConstant):
(JSC::CTI::getConstant):
(JSC::CTI::emitGetArg):
(JSC::CTI::emitGetPutArg):
(JSC::CTI::getConstantImmediateNumericArg):
Updated for changes to callframe header location:
(JSC::CTI::emitPutToCallFrameHeader):
(JSC::CTI::emitGetFromCallFrameHeader):
(JSC::CTI::printOpcodeOperandTypes):
Renamed to spite Oliver:
(JSC::CTI::emitInitRegister):
Added an abstraction for emitting a call through a register, so that
calls through registers generate exception info, too:
(JSC::CTI::emitCall):
Updated to match the new callframe header layout, and to support calls
through registers, which have no destination address:
(JSC::CTI::compileOpCall):
(JSC::CTI::privateCompileMainPass):
(JSC::CTI::privateCompileSlowCases):
(JSC::CTI::privateCompile):
- VM/CTI.h:
More of the above:
(JSC::CallRecord::CallRecord):
- VM/CodeBlock.cpp:
Updated for new register layout:
(JSC::registerName):
(JSC::CodeBlock::dump):
- VM/CodeBlock.h:
Updated CodeBlock to track slightly different information about the
register frame, and tweaked the style of an ASSERT_NOT_REACHED.
(JSC::CodeBlock::CodeBlock):
(JSC::CodeBlock::getStubInfo):
- VM/CodeGenerator.cpp:
Added some abstraction around constant register allocation, since this
patch changes it, changed codegen to account for the new callframe
layout, and added abstraction around register fetching code
that used to assume that all local registers lived at negative indices,
since vars now live at positive indices:
(JSC::CodeGenerator::generate):
(JSC::CodeGenerator::addVar):
(JSC::CodeGenerator::addGlobalVar):
(JSC::CodeGenerator::allocateConstants):
(JSC::CodeGenerator::CodeGenerator):
(JSC::CodeGenerator::addParameter):
(JSC::CodeGenerator::registerFor):
(JSC::CodeGenerator::constRegisterFor):
(JSC::CodeGenerator::newRegister):
(JSC::CodeGenerator::newTemporary):
(JSC::CodeGenerator::highestUsedRegister):
(JSC::CodeGenerator::addConstant):
ASSERT that our caller referenced the registers it passed to us.
Otherwise, we might overwrite them with parameters:
(JSC::CodeGenerator::emitCall):
(JSC::CodeGenerator::emitConstruct):
- VM/CodeGenerator.h:
Added some abstraction for getting a RegisterID for a given index,
since the rules are a little weird:
(JSC::CodeGenerator::registerFor):
- VM/Machine.cpp:
Utility function to transform a machine return PC to a virtual machine
return VPC, for the sake of stack unwinding, since both PCs are stored
in the same location now:
(JSC::vPCForPC):
Tweaked to account for new call frame:
(JSC::Machine::initializeCallFrame):
Tweaked to account for registerOffset supplied by caller:
(JSC::slideRegisterWindowForCall):
Tweaked to account for new register layout:
(JSC::scopeChainForCall):
(JSC::Machine::callEval):
(JSC::Machine::dumpRegisters):
(JSC::Machine::unwindCallFrame):
(JSC::Machine::execute):
Changed op_call and op_construct to implement the new calling convention:
(JSC::Machine::privateExecute):
Tweaked to account for the new register layout:
(JSC::Machine::retrieveArguments):
(JSC::Machine::retrieveCaller):
(JSC::Machine::retrieveLastCaller):
(JSC::Machine::callFrame):
(JSC::Machine::getArgumentsData):
Changed CTI call helpers to implement the new calling convention:
(JSC::Machine::cti_op_call_JSFunction):
(JSC::Machine::cti_op_call_NotJSFunction):
(JSC::Machine::cti_op_ret_activation):
(JSC::Machine::cti_op_ret_profiler):
(JSC::Machine::cti_op_construct_JSConstruct):
(JSC::Machine::cti_op_construct_NotJSConstruct):
(JSC::Machine::cti_op_call_eval):
- VM/Machine.h:
- VM/Opcode.h:
Renamed op_initialise_locals to op_init, because this opcode
doesn't initialize all locals, and it doesn't initialize only locals.
Also, to spite Oliver.
- VM/RegisterFile.h:
New call frame enumeration values:
(JSC::RegisterFile::):
Simplified the calculation of whether a RegisterID is a temporary,
since we can no longer assume that all positive non-constant registers
are temporaries:
- VM/RegisterID.h: (JSC::RegisterID::RegisterID): (JSC::RegisterID::setTemporary): (JSC::RegisterID::isTemporary):
Renamed firstArgumentIndex to firstParameterIndex because the assumption
that this variable pertained to the actual arguments supplied by the
caller caused me to write some buggy code:
- kjs/Arguments.cpp: (JSC::ArgumentsData::ArgumentsData): (JSC::Arguments::Arguments): (JSC::Arguments::fillArgList): (JSC::Arguments::getOwnPropertySlot): (JSC::Arguments::put):
Updated for new call frame layout:
- kjs/DebuggerCallFrame.cpp: (JSC::DebuggerCallFrame::functionName): (JSC::DebuggerCallFrame::type):
- kjs/DebuggerCallFrame.h:
Changed the activation object to account for the fact that a call frame
header now sits between parameters and local variables. This change
requires all variable objects to do their own marking, since they
now use their register storage differently:
- kjs/JSActivation.cpp: (JSC::JSActivation::mark): (JSC::JSActivation::copyRegisters): (JSC::JSActivation::createArgumentsObject):
- kjs/JSActivation.h:
Updated global object to use the new interfaces required by the change
to JSActivation above:
- kjs/JSGlobalObject.cpp: (JSC::JSGlobalObject::reset): (JSC::JSGlobalObject::mark): (JSC::JSGlobalObject::copyGlobalsFrom): (JSC::JSGlobalObject::copyGlobalsTo):
- kjs/JSGlobalObject.h: (JSC::JSGlobalObject::addStaticGlobals):
Updated static scope object to use the new interfaces required by the
change to JSActivation above:
- kjs/JSStaticScopeObject.cpp: (JSC::JSStaticScopeObject::mark): (JSC::JSStaticScopeObject::~JSStaticScopeObject):
- kjs/JSStaticScopeObject.h: (JSC::JSStaticScopeObject::JSStaticScopeObject): (JSC::JSStaticScopeObject::d):
Updated variable object to use the new interfaces required by the
change to JSActivation above:
- kjs/JSVariableObject.cpp: (JSC::JSVariableObject::copyRegisterArray): (JSC::JSVariableObject::setRegisters):
- kjs/JSVariableObject.h:
Changed the bit twiddling in symbol table not to assume that all indices
are negative, since they can be positive now:
- kjs/SymbolTable.h: (JSC::SymbolTableEntry::SymbolTableEntry): (JSC::SymbolTableEntry::isNull): (JSC::SymbolTableEntry::getIndex): (JSC::SymbolTableEntry::getAttributes): (JSC::SymbolTableEntry::setAttributes): (JSC::SymbolTableEntry::isReadOnly): (JSC::SymbolTableEntry::pack): (JSC::SymbolTableEntry::isValidIndex):
Changed call and construct nodes to ref their functions and/or bases,
so that emitCall/emitConstruct doesn't overwrite them with parameters.
Also, updated for rename to registerFor:
- kjs/nodes.cpp: (JSC::ResolveNode::emitCode): (JSC::NewExprNode::emitCode): (JSC::EvalFunctionCallNode::emitCode): (JSC::FunctionCallValueNode::emitCode): (JSC::FunctionCallResolveNode::emitCode): (JSC::FunctionCallBracketNode::emitCode): (JSC::FunctionCallDotNode::emitCode): (JSC::PostfixResolveNode::emitCode): (JSC::DeleteResolveNode::emitCode): (JSC::TypeOfResolveNode::emitCode): (JSC::PrefixResolveNode::emitCode): (JSC::ReadModifyResolveNode::emitCode): (JSC::AssignResolveNode::emitCode): (JSC::ConstDeclNode::emitCodeSingle): (JSC::ForInNode::emitCode):
Added abstraction for getting exception info out of a call through a
register:
- masm/X86Assembler.h: (JSC::X86Assembler::emitCall):
Removed duplicate #if:
- wtf/Platform.h:
- 5:23 PM Changeset in webkit [36820] by
-
- 10 edits in trunk/WebCore
Rubber stamped by Sam.
Move code from EventTarget to EventTargetNode.
I refactored most parts to live in EventTarget, a year ago,
though the implementation of EventTargetSVGElementInstance is
done in another way, that obsoletes this.
- 5:14 PM Changeset in webkit [36819] by
-
- 3 edits in trunk/WebCore
Fix horizontal scrollbars on windows.
- 5:09 PM Changeset in webkit [36818] by
-
- 13 edits2 adds in trunk
WebCore:
2008-09-23 Beth Dakin <Beth Dakin>
Reviewed by Sam Weinig.
Fix for https://bugs.webkit.org/show_bug.cgi?id=21041 "Add Contact"
link at gmail does not support AXPress action
and corresponding: <rdar://problem/6216178>
I fixed this bug by making AccessibilityObject::anchorElement
support ARIA links.
- page/AccessibilityImageMapLink.cpp: (WebCore::AccessibilityImageMapLink::anchorElement):
- page/AccessibilityImageMapLink.h:
- page/AccessibilityObject.cpp: (WebCore::AccessibilityObject::anchorElement):
- page/AccessibilityObject.h: (WebCore::AccessibilityObject::isNativeAnchor):
- page/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::isNativeAnchor): (WebCore::AccessibilityRenderObject::anchorElement): (WebCore::AccessibilityRenderObject::internalLinkElement): (WebCore::AccessibilityRenderObject::url):
- page/AccessibilityRenderObject.h:
- page/mac/AccessibilityObjectWrapper.mm: (AXLinkElementForNode):
WebKitTools:
2008-09-23 Beth Dakin <Beth Dakin>
Reviewed by Sam Weinig.
This patch extends DumpRenderTree's AccessibilityController to ask
if the focused element supports the press action.
- DumpRenderTree/AccessibilityUIElement.cpp: (getSupportsPressActionCallback): (AccessibilityUIElement::getJSClass):
- DumpRenderTree/AccessibilityUIElement.h:
- DumpRenderTree/mac/AccessibilityUIElementMac.mm: (AccessibilityUIElement::supportsPressAction):
LayoutTests:
2008-09-23 Beth Dakin <Beth Dakin>
Reviewed by Sam Weinig.
Test for https://bugs.webkit.org/show_bug.cgi?id=21041 "Add
Contact" link at gmail does not support AXPress action
and corresponding: <rdar://problem/6216178>
- accessibility/aria-link-supports-press-expected.txt: Added.
- accessibility/aria-link-supports-press.html: Added.
- 5:05 PM Changeset in webkit [36817] by
-
- 7 edits in trunk/WebCore
2008-09-23 Kevin McCullough <kmccullough@apple.com>
Reviewed by Time and Oliver.
Bug 20949: Catch repeated messages in Inspector Controller to limit
memory usage
- Store the repeat count in the Console Message object, in the Inspector Controller and JS ConsoleMessage object.
- page/InspectorController.cpp: (WebCore::ConsoleMessage::ConsoleMessage): (WebCore::ConsoleMessage::operator==): (WebCore::InspectorController::InspectorController): (WebCore::InspectorController::addConsoleMessage): (WebCore::InspectorController::addScriptConsoleMessage):
- page/InspectorController.h:
- page/inspector/Console.js:
- page/inspector/Resource.js:
- page/inspector/ResourcesPanel.js:
- page/inspector/SourceFrame.js:
- 4:44 PM Changeset in webkit [36816] by
-
- 16 edits2 moves5 adds in trunk
Reviewed by Eric.
Working on proper EventTarget support for SVGElementInstance.
Add new EventTargetSVGElementInstance class, and it's corresponding JS wrapper.
Finally JSEventTargetBase, is actually used for another class than JSEventTargetnode.
Remove EventTarget inheritance from SVGElementInstance, and the manual "TreeShared"
implementation. Let it use TreeShared directly.
It's not activated so far (SVGUseElement still creating SVGElementInstance objects).
The transition to EventTargetSVGElementInstance will be done in a few individual patches.
- 2:47 PM Changeset in webkit [36815] by
-
- 2 edits in trunk/WebCore
Reviewed by Dave Hyatt.
- https://bugs.webkit.org/show_bug.cgi?id=21040 Pass NULL instead of the identity matrix to CTFontCreateWithGraphicsFont()
- platform/graphics/mac/SimpleFontDataMac.mm: (WebCore::SimpleFontData::getCTFont):
- 2:43 PM Changeset in webkit [36814] by
-
- 9 edits in trunk
WebCore:
2008-09-23 David Hyatt <hyatt@apple.com>
Teach the viewless Mac scrollbar how to avoid NSWindow's resizer.
Reviewed by Sam Weinig
- platform/ScrollView.h:
- platform/Scrollbar.cpp: (WebCore::Scrollbar::setFrameGeometry):
- platform/Scrollbar.h:
- platform/Widget.cpp: (WebCore::Widget::convertFromContainingWindow):
- platform/Widget.h:
- platform/mac/ScrollViewMac.mm: (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate): (WebCore::ScrollView::ScrollView): (WebCore::ScrollView::~ScrollView): (WebCore::ScrollView::windowResizerRect): (WebCore::ScrollView::resizerOverlapsContent): (WebCore::ScrollView::adjustOverlappingScrollbarCount): (WebCore::ScrollView::setParent):
- platform/mac/WidgetMac.mm: (WebCore::Widget::convertFromContainingWindow):
WebKit/mac:
2008-09-23 David Hyatt <hyatt@apple.com>
Teach the viewless Mac scrollbar how to avoid the NSWindow resizer.
Reviewed by Sam Weinig
- WebCoreSupport/WebChromeClient.mm: (WebChromeClient::windowResizerRect):
- 2:33 PM Changeset in webkit [36813] by
-
- 2 edits in trunk/WebCore
2008-09-23 Dirk Schulze <vbs85@gmx.de>
Reviewed by Darin Adler. Landed by Jan Alonzo.
Added support for getImageData() and putImageData()
to Cairo.
[CAIRO] needs getImageData and putImageData support
https://bugs.webkit.org/show_bug.cgi?id=20838
- platform/graphics/cairo/ImageBufferCairo.cpp: (WebCore::ImageBuffer::ImageBuffer): (WebCore::ImageBuffer::getImageData): (WebCore::ImageBuffer::putImageData):
- 2:07 PM Changeset in webkit [36812] by
-
- 3 edits2 adds in trunk/WebCore
2008-09-23 Marco Barisione <marco.barisione@collabora.co.uk>
Reviewed by Holger Freyther.
http://bugs.webkit.org/show_bug.cgi?id=18987
[GTK] Implement SharedBuffer::createWithContentsOfFile and
KURL::fileSystemPath
- GNUmakefile.am: Add KURLGtk.cpp and SharedBufferGtk.cpp.
- platform/gtk/KURLGtk.cpp: Added. (WebCore::KURL::fileSystemPath): Implemented.
- platform/gtk/SharedBufferGtk.cpp: Added. (WebCore::SharedBuffer::createWithContentsOfFile): Implemented.
- platform/gtk/TemporaryLinkStubs.cpp: Remove the old stubs.
- 1:39 PM Changeset in webkit [36811] by
-
- 2 edits in trunk/WebCore
Reviewed by Oliver Hunt, okayed by Darin Adler.
<rdar://problem/5575547> REGRESSION: ATOK has no phrase boundary on Safari/Mail.app
- rendering/InlineTextBox.cpp: (WebCore::InlineTextBox::paintCompositionUnderline): Add 2 pixel spacing between clauses.
- 1:30 PM Changeset in webkit [36810] by
-
- 3 edits3 adds in trunk
WebKit/mac:
Reviewed by Beth Dakin.
- fix <rdar://problem/6233388> Crash beneath -[WebFrameView keyDown:]
Test: fast/events/keydown-remove-frame.html
- WebView/WebFrameView.mm: (-[WebFrameView keyDown:]): Added a null check.
LayoutTests:
Reviewed by Beth Dakin.
- test for <rdar://problem/6233388> Crash beneath -[WebFrameView keyDown:]
- fast/events/keydown-remove-frame-expected.txt: Added.
- fast/events/keydown-remove-frame.html: Added.
- fast/events/resources/keydown-remove-frame-iframe.html: Added.
- 11:37 AM Changeset in webkit [36809] by
-
- 3 edits in trunk/JavaScriptCore
2008-09-23 Kevin McCullough <kmccullough@apple.com>
Reviewed by Darin.
Bug 21030: The JS debugger breaks on the do of a do-while not the while
(where the conditional statement is)
https://bugs.webkit.org/show_bug.cgi?id=21030
Now the statementListEmitCode detects if a do-while node is being
emited and emits the debug hook on the last line instead of the first.
This change had no effect on sunspider.
- kjs/nodes.cpp: (JSC::statementListEmitCode):
- kjs/nodes.h: (JSC::StatementNode::isDoWhile): (JSC::DoWhileNode::isDoWhile):
- 10:30 AM Changeset in webkit [36808] by
-
- 3 edits in trunk/JavaScriptCore
2008-09-23 Maciej Stachowiak <mjs@apple.com>
Reviewed by Camron Zwarich.
- inline the fast case of instanceof https://bugs.webkit.org/show_bug.cgi?id=20818
~2% speedup on EarleyBoyer test.
- VM/CTI.cpp: (JSC::CTI::privateCompileMainPass): (JSC::CTI::privateCompileSlowCases):
- VM/Machine.cpp: (JSC::Machine::cti_op_instanceof):
- 9:34 AM Changeset in webkit [36807] by
-
- 8 edits in trunk
Reviewed by Darin Adler.
https://bugs.webkit.org/show_bug.cgi?id=21023
Don't use TEC for encodings supported by ICU
- platform/text/mac/mac-encodings.txt: Removed x-mac-centraleurroman, x-mac-cyrillic, x-mac-greek, and x-mac-turkish.
- platform/text/TextCodecICU.cpp: (WebCore::TextCodecICU::registerExtendedEncodingNames): Register aliases for these encodings that are not registered automatically; updated comments.
- 7:18 AM Changeset in webkit [36806] by
-
- 2 edits in trunk/JavaScriptCore
2008-09-23 Maciej Stachowiak <mjs@apple.com>
Reviewed by Cameron Zwarich.
- add forgotten slow case logic for !==
- VM/CTI.cpp: (JSC::CTI::privateCompileSlowCases):
- 6:20 AM Changeset in webkit [36805] by
-
- 4 edits in trunk/JavaScriptCore
2008-09-23 Maciej Stachowiak <mjs@apple.com>
Reviewed by Cameron Zwarich.
- inline the fast cases of !==, same as for ===
2.9% speedup on EarleyBoyer benchmark
- VM/CTI.cpp: (JSC::CTI::compileOpStrictEq): Factored stricteq codegen into this function, and parameterized so it can do the reverse version as well. (JSC::CTI::privateCompileMainPass): Use the above for stricteq and nstricteq.
- VM/CTI.h: (JSC::CTI::): Declare above stuff.
- VM/Machine.cpp: (JSC::Machine::cti_op_nstricteq): Removed fast cases, now handled inline.
- 3:59 AM Changeset in webkit [36804] by
-
- 2 edits in trunk/JavaScriptCore
2008-09-23 Cameron Zwarich <cwzwarich@uwaterloo.ca>
Reviewed by Oliver Hunt.
Bug 20989: Aguments constructor should put 'callee' and 'length' properties in a more efficient way
<https://bugs.webkit.org/show_bug.cgi?id=20989>
Make special cases for the 'callee' and 'length' properties in the
Arguments object.
This is somewhere between a 7.8% speedup and a 10% speedup on the V8
Raytrace benchmark, depending on whether it is run alone or with the
other V8 benchmarks.
- kjs/Arguments.cpp: (JSC::ArgumentsData::ArgumentsData): (JSC::Arguments::Arguments): (JSC::Arguments::mark): (JSC::Arguments::getOwnPropertySlot): (JSC::Arguments::put): (JSC::Arguments::deleteProperty):
- 3:03 AM Changeset in webkit [36803] by
-
- 1 add in trunk/WebCore/bindings/js/JSCanvasPixelArrayCustom.h
Build fix (add file i forgot in r36801)
- 12:46 AM Changeset in webkit [36802] by
-
- 7 edits in trunk
2008-09-23 Maciej Stachowiak <mjs@apple.com>
Reviewed by Darin.
- speed up instanceof some more https://bugs.webkit.org/show_bug.cgi?id=20818
~2% speedup on EarleyBoyer
The idea here is to record in the StructureID whether the class
needs a special hasInstance or if it can use the normal logic from
JSObject.
Based on this I inlined the real work directly into
cti_op_instanceof and put the fastest checks up front and the
error handling at the end (so it should be fairly straightforward
to split off the beginning to be inlined if desired).
I only did this for CTI, not the bytecode interpreter.
- API/JSCallbackObject.h: (JSC::JSCallbackObject::createStructureID):
- ChangeLog:
- VM/Machine.cpp: (JSC::Machine::cti_op_instanceof):
- kjs/JSImmediate.h: (JSC::JSImmediate::isAnyImmediate):
- kjs/TypeInfo.h: (JSC::TypeInfo::overridesHasInstance): (JSC::TypeInfo::flags):
WebCore:
2008-09-23 Maciej Stachowiak <mjs@apple.com>
Reviewed by Darin.
- speed up instanceof some more https://bugs.webkit.org/show_bug.cgi?id=20818
~2% speedup on EarleyBoyer
(WebCore updates.)
- bindings/js/JSQuarantinedObjectWrapper.h: (WebCore::JSQuarantinedObjectWrapper::createStructureID):
- 12:40 AM Changeset in webkit [36801] by
-
- 7 edits in trunk/WebCore
2008-09-22 Darin Adler <Darin Adler>
- fix https://bugs.webkit.org/show_bug.cgi?id=21008 getting pixels by index from CanvasPixelArray is unnecessarily slow
Reviewed by Oliver Hunt
- GNUmakefile.am: Added JSCanvasPixelArrayCustom.h.
- WebCore.vcproj/WebCore.vcproj: Ditto.
- WebCore.xcodeproj/project.pbxproj: Ditto.
- bindings/js/JSCanvasPixelArrayCustom.cpp: Removed indexGetter and indexSetter. These are now both inlined, so in the header.
- bindings/js/JSCanvasPixelArrayCustom.h: Added. The getByIndex function is what's used for HasCustomIndexGetter. Also moved the indexSetter function here.
- bindings/scripts/CodeGeneratorJS.pm: Changed HasCustomIndexGetter to use a getByIndex member function rather than an indexGetter stat member function in a property slot. This lets us avoid the property slot mechanism's rule where it turns numeric property names into strings in the identifier table, which is good because that's slow. Also added a new property CustomHeader that allows IDL files to introduce headers to be included -- useful when we have functions that we want to inline into the binding.
- html/CanvasPixelArray.idl: Added CustomHeader attribute.
- 12:23 AM Changeset in webkit [36800] by
-
- 2 edits in trunk/WebCore
No review, build fix only.
Another blind stab in the dark.
- svg/graphics/cg/SVGResourceClipperCg.cpp: Add missing header.
- 12:04 AM Changeset in webkit [36799] by
-
- 3 edits in trunk/WebCore
No review, build fix only.
Third time's the charm, eh? My local build is sadly still not done...
- platform/graphics/AffineTransform.cpp: remove extra &
- platform/graphics/AffineTransform.h: remove extra &