Timeline


and

12/09/07:

22:22 Changeset [28578] by darin@apple.com

Reviewed by Sam Weinig.

  • pcre/pcre_compile.cpp: Changed some names to use interCaps intead of under_scores. (branchIsAnchored): Broke is_anchored into two separate functions; this one works on a branch and the other on an anchor. The old function would only work on a bracket. Also removed unneeded parameters; the anchored check does not require the bracket map or the options any more because we have a reduced set of features. (bracketIsAnchored): Ditto. (branchNeedsLineStart): Broke canApplyFirstCharOptimization into two functions and gave both a better name. This is the function that was returning the wrong value. The failure was beacuse the old function would only work on a bracket. (bracketNeedsLineStart): Ditto. (jsRegExpCompile): Changed to call the appropriate branch or bracket flavor of the functions based on whether we compiled an outer bracket. Also removed inaccurate comments and unneeded parameters.
  • other small changes
  • pcre/pcre.h: Renumbered error codes, in a logical order. First, normal failure, then the recursion limit, then running out of memory, and finally an unexpected internal error.
  • pcre/pcre_exec.cpp: Fixed indentation. (jsRegExpExecute): Corrected an inaccurate comment.
20:05 Changeset [28577] by darin@apple.com

Reviewed by Maciej.

Test: fast/js/exception-linenums-in-html-1.html
Test: fast/js/exception-linenums-in-html-2.html
Test: fast/js/exception-linenums.html

By the time the ProgramNode was constructed, the source URL was empty.

  • kjs/Parser.cpp: (KJS::Parser::parseProgram): Added code to set and clear m_sourceURL, which is now handled here instead of in the lexer; it needs to still be set when we create the program node. Call setLoc to set the first and last line number. (KJS::Parser::parseFunctionBody): Ditto, but for the body. (KJS::Parser::parse): Removed the sourceURL argument.
  • kjs/Parser.h: Added sourceURL(), m_sourceURL, and m_lastLine. Added a lastLine parameter to didFinishParsing, since the bison grammar knows the last line number and we otherwise do not know it. Removed the sourceURL parameter from parse, since that's now handled at a higher level.
  • kjs/grammar.y: Pass the last line number to didFinishParsing.
  • kjs/lexer.cpp: (KJS::Lexer::setCode): Removed the sourceURL argument and the code to set m_sourceURL. (KJS::Lexer::clear): Ditto.
  • kjs/lexer.h: More of the same.
  • kjs/nodes.cpp: (KJS::FunctionBodyNode::FunctionBodyNode): Get the source URL from the parser rather than from the lexer. Removed unneeded call to setLoc, since the line numbers already both default to -1.
19:33 Changeset [28576] by weinig@apple.com

Rubber stamped by Mark Rowe.

  • WebCore.xcodeproj/project.pbxproj: Add missing DerivedSources files.
17:12 Changeset [28575] by oliver@apple.com

Need to read the spec properly.

Reviewed by Niko

Correction, 'z' and 'Z' are the only commands that cannot have an extended
list of arguments.

16:44 Changeset [28574] by oliver@apple.com

Prevent unlimited iteration in the case of invalid path data.

Reviewed by Niko.

The only path commands that can leave numbers trailing the command processing
are 'm' and 'M', in which trailing numbers are parsed as arguments to an
implicit lineto command. In any case we should just terminate as an invalid
path.

13:52 Changeset [28573] by alp@webkit.org

2007-12-09 Luca Bruno <lethalman88@gmail.com>

Reviewed by Alp Toker.

http://bugs.webkit.org/show_bug.cgi?id=15825
[GTK] curl - slow dns causing hangs.

Create a vector of jobs, to satisfy requests in the right order.
Set a limit to the number of simultaneous connections.

  • platform/network/curl/ResourceHandleManager.cpp: (WebCore::maxRunningJobs): added (WebCore::ResourceHandleManager::ResourceHandleManager): (WebCore::ResourceHandleManager::removeFromCurl): (WebCore::ResourceHandleManager::startScheduledJobs):
  • platform/network/curl/ResourceHandleManager.h: (WebCore::ResourceHandleList): removed (WebCore::ResourceHandleManager::m_runningJobs): added (WebCore::ResourceHandleManager::m_resourceHandleListHead): removed (WebCore::ResourceHandleManager::m_resourceHandleList): added
10:49 UsingGitWithWebKit edited by waameukee@schitterendedingen.com
(diff)

12/08/07:

23:56 Changeset [28572] by weinig@apple.com

Reviewed by Oliver.

Cleanup kjs_window.h/cpp.

  • bindings/js/kjs_window.cpp: (KJS::WindowPrivate::WindowPrivate): (KJS::DOMWindowTimer::DOMWindowTimer): (KJS::Window::Window): (KJS::Window::retrieveWindow): (KJS::Window::retrieveActive): (KJS::Window::retrieve): (KJS::Window::location): (KJS::Window::mark): (KJS::allowPopUp): (KJS::parseModalDialogFeatures): (KJS::floatFeature): (KJS::canShowModalDialog): (KJS::canShowModalDialogNow): (KJS::showModalDialog): (KJS::Window::getValueProperty): (KJS::Window::getOwnPropertySlot): (KJS::Window::globalExec): (KJS::Window::setListener): (KJS::Window::getListener): (KJS::Window::findOrCreateJSEventListener): (KJS::Window::findOrCreateJSUnprotectedEventListener): (KJS::Window::clearHelperObjectProperties): (KJS::Window::setCurrentEvent): (KJS::WindowProtoFuncAToB::callAsFunction): (KJS::WindowProtoFuncBToA::callAsFunction): (KJS::WindowProtoFuncOpen::callAsFunction): (KJS::WindowProtoFuncSetTimeout::callAsFunction): (KJS::WindowProtoFuncClearTimeout::callAsFunction): (KJS::WindowProtoFuncSetInterval::callAsFunction): (KJS::WindowProtoFuncAddEventListener::callAsFunction): (KJS::WindowProtoFuncRemoveEventListener::callAsFunction): (KJS::WindowProtoFuncShowModalDialog::callAsFunction): (KJS::WindowProtoFuncNotImplemented::callAsFunction):
  • bindings/js/kjs_window.h: (KJS::PausedTimeouts::PausedTimeouts): (KJS::PausedTimeouts::takeTimeouts): (KJS::ScheduledAction::ScheduledAction):
23:48 Changeset [28571] by weinig@apple.com

Rubber-stamped by Adam Roben.

  • fast/dom/Window/window-resize-and-move-arguments.html: Make the window small enough that this test won't fail on systems with lower resolutions.
16:47 Changeset [28570] by weinig@apple.com

WebCore:

Reviewed by Mitz.

Move window scrolling, moving and resizing methods from KJS::Window
to WebCore::DOMWindow so that there bindings can be autogenerated.

Tests: fast/dom/Window/window-resize-and-move-arguments.html

fast/dom/Window/window-scroll-arguments.html

  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/kjs_window.cpp: (KJS::Window::getValueProperty): Remove extraneous allowsAccessFrom check. (KJS::WindowProtoFuncOpen::callAsFunction): (KJS::WindowProtoFuncNotImplemented::callAsFunction): Remove extraneous allowsAccessFrom check.
  • bindings/js/kjs_window.h:
  • bindings/scripts/CodeGeneratorJS.pm: Add new extended attribute to ensure that the no less than the declared number of attributes is allowed.
  • page/DOMWindow.cpp: (WebCore::DOMWindow::adjustWindowRect): Moved from kjs_window. (WebCore::DOMWindow::scrollBy): (WebCore::DOMWindow::scrollTo): (WebCore::DOMWindow::moveBy): (WebCore::DOMWindow::moveTo): (WebCore::DOMWindow::resizeBy): (WebCore::DOMWindow::resizeTo):
  • page/DOMWindow.h: (WebCore::DOMWindow::scroll):
  • page/DOMWindow.idl:

LayoutTests:

Reviewed by Sam W.

Split the ENABLE_SVG_EXPERIMENTAL_FEATURES flag into separate flags.


Fixes <rdar://problem/5620249> Must disable SVG animation
<rdar://problem/5612772> Disable SVG filters on Mac to match Windows behavior

These layout test changes are caused by some of the experimental
features no longer being enabled by default.

  • fast/dom/Window/window-properties-expected.txt:
  • platform/mac/svg/W3C-SVG-1.1/filters-blend-01-b-expected.txt:
  • platform/mac/svg/W3C-SVG-1.1/filters-color-01-b-expected.txt:
  • platform/mac/svg/W3C-SVG-1.1/filters-composite-02-b-expected.txt:
  • platform/mac/svg/W3C-SVG-1.1/filters-comptran-01-b-expected.txt:
  • platform/mac/svg/W3C-SVG-1.1/filters-conv-01-f-expected.txt:
  • platform/mac/svg/W3C-SVG-1.1/filters-diffuse-01-f-expected.txt:
  • platform/mac/svg/W3C-SVG-1.1/filters-displace-01-f-expected.txt:
  • platform/mac/svg/W3C-SVG-1.1/filters-example-01-b-expected.txt:
  • platform/mac/svg/W3C-SVG-1.1/filters-felem-01-b-expected.txt:
  • platform/mac/svg/W3C-SVG-1.1/filters-gauss-01-b-expected.txt:
  • platform/mac/svg/W3C-SVG-1.1/filters-image-01-b-expected.txt:
  • platform/mac/svg/W3C-SVG-1.1/filters-light-01-f-expected.txt:
  • platform/mac/svg/W3C-SVG-1.1/filters-morph-01-f-expected.txt:
  • platform/mac/svg/W3C-SVG-1.1/filters-offset-01-b-expected.txt:
  • platform/mac/svg/W3C-SVG-1.1/filters-specular-01-f-expected.txt:
  • platform/mac/svg/W3C-SVG-1.1/filters-tile-01-b-expected.txt:
  • platform/mac/svg/W3C-SVG-1.1/filters-turb-01-f-expected.txt:
  • platform/mac/svg/custom/empty-merge-expected.txt:
  • platform/mac/svg/custom/feComponentTransfer-Discrete-expected.txt:
  • platform/mac/svg/custom/feComponentTransfer-Gamma-expected.txt:
  • platform/mac/svg/custom/feComponentTransfer-Linear-expected.txt:
  • platform/mac/svg/custom/feComponentTransfer-Table-expected.txt:
  • platform/mac/svg/custom/feDisplacementMap-01-expected.txt:
  • platform/mac/svg/custom/filter-source-alpha-expected.txt:
  • platform/mac/svg/custom/image-with-transform-clip-filter-expected.txt:
  • platform/mac/svg/custom/invalid-css-expected.txt:
  • platform/mac/svg/custom/non-opaque-filters-expected.txt:
  • platform/mac/svg/custom/text-filter-expected.txt:
  • platform/mac/svg/custom/visibility-override-filter-expected.txt:
  • svg/batik/filters/filterRegions-expected.txt:
  • svg/batik/text/textEffect-expected.txt:
  • svg/batik/text/textEffect3-expected.txt:
  • svg/batik/text/textFeatures-expected.txt:
  • svg/batik/text/textProperties-expected.txt:
  • svg/custom/js-svg-constructors-expected.txt:
  • svg/dom/font-face-elements-expected.txt:
  • svg/webarchive/svg-feimage-subresources-expected.txt:
16:32 Changeset [28569] by alp@webkit.org

2007-12-08 Kevin Ollivier <kevino@theolliviers.com>

Reviewed by Alp Toker.

http://bugs.webkit.org/show_bug.cgi?id=14651
[CURL] didReceiveResponse() only called for HTTP loads

http://bugs.webkit.org/show_bug.cgi?id=14583
[GDK] file:// relative CSS include URLs handled incorrectly

Make sure CURL sets the ResourceResponse URL and calls
didReceiveResponse for local files too.

  • platform/network/curl/ResourceHandleManager.cpp: (WebCore::writeCallback):
16:27 Changeset [28568] by oliver@apple.com

Split the ENABLE_SVG_EXPERIMENTAL_FEATURES flag into separate flags.

Reviewed by Sam W.

Fixes <rdar://problem/5620249> Must disable SVG animation

<rdar://problem/5612772> Disable SVG filters on Mac to match Windows behavior

In order to allow finer grained control over the set of SVG features
this patch splits ENABLE_SVG_EXPERIMENTAL_FEATURES into the following
distinct flags:

ENABLE_SVG_ANIMATION
ENABLE_SVG_FILTERS
ENABLE_SVG_FONTS
ENABLE_SVG_AS_IMAGE
ENABLE_SVG_USE

by default only ENABLE_SVG_AS_IMAGE and ENABLE_SVG_USE are set.

16:19 BuildingGtk edited by andi5.py@gmx.net
apt-get typo (diff)
15:45 Changeset [28567] by mitz@apple.com

WebCore:

Reviewed by Adele Peterson.

  • fix two bugs in parsing of stylesheets in <style> elements created by the parser:
    1. each such stylesheet is parsed twice, once when the text node is added and again when the </style> tag is reached
    2. re-inserting such a <style> element into the document fails to re-parse and apply its stylesheet.

Test for bug #2: fast/dom/HTMLStyleElement/insert-parser-generated.html

  • html/HTMLStyleElement.cpp: (WebCore::HTMLStyleElement::finishedParsing):
  • svg/SVGStyleElement.cpp: (WebCore::SVGStyleElement::finishedParsing):

LayoutTests:

Reviewed by Adele Peterson.

  • test that re-inserting a parser-generated <style> element applies its sylesheet.
  • fast/dom/HTMLStyleElement: Added.
  • fast/dom/HTMLStyleElement/insert-parser-generated.html: Added.
  • platform/mac/fast/dom/HTMLStyleElement: Added.
  • platform/mac/fast/dom/HTMLStyleElement/insert-parser-generated-expected.checksum: Added.
  • platform/mac/fast/dom/HTMLStyleElement/insert-parser-generated-expected.png: Added.
  • platform/mac/fast/dom/HTMLStyleElement/insert-parser-generated-expected.txt: Added.
13:02 Changeset [28566] by weinig@apple.com

Fix ChangeLog

10:03 Changeset [28565] by weinig@apple.com

JavaScriptCore:

Reviewed by Darin.

  • Rename isSafeScript to allowsAccess.
  • bindings/NP_jsobject.cpp: (_isSafeScript):
  • kjs/JSGlobalObject.h: (KJS::JSGlobalObject::allowsAccessFrom): Reverse caller/argument of allowsAccessFrom to match the new call.

WebCore:

Reviewed by Darin.

  • Removes the faulty isSafeScript implementation that was only used for plugins.
  • Renames isSafeScript to allowsAccessFrom.
  • bindings/js/JSDOMWindowCustom.cpp: (WebCore::JSDOMWindow::customGetOwnPropertySlot): (WebCore::JSDOMWindow::customPut):
  • bindings/js/kjs_dom.cpp: (WebCore::checkNodeSecurity):
  • bindings/js/kjs_window.cpp: (KJS::createWindow): (KJS::Window::getValueProperty): (KJS::Window::namedItemGetter): (KJS::Window::getOwnPropertySlot): (KJS::Window::put): (KJS::Window::allowsAccessFrom): (KJS::Window::setListener): (KJS::Window::getListener): (KJS::WindowProtoFuncOpen::callAsFunction): (KJS::WindowProtoFuncSetTimeout::callAsFunction): (KJS::WindowProtoFuncClearTimeout::callAsFunction): (KJS::WindowProtoFuncSetInterval::callAsFunction): (KJS::WindowProtoFuncAddEventListener::callAsFunction): (KJS::WindowProtoFuncRemoveEventListener::callAsFunction): (KJS::WindowProtoFuncNotImplemented::callAsFunction): (KJS::Location::getOwnPropertySlot): (KJS::Location::put): (KJS::LocationProtoFuncReplace::callAsFunction): (KJS::LocationProtoFuncReload::callAsFunction): (KJS::LocationProtoFuncAssign::callAsFunction): (KJS::LocationProtoFuncToString::callAsFunction):
  • bindings/js/kjs_window.h: (KJS::Window::allowsAccessFrom):
  • bindings/objc/WebScriptObject.mm: (-[WebScriptObject _isSafeScript]): Reverse caller/argument of allowsAccessFrom to match the new call.
  • bindings/scripts/CodeGeneratorJS.pm:
06:39 Changeset [28564] by alp@webkit.org

2007-12-08 Luca Bruno <lethalman88@gmail.com>

Reviewed by Alp Toker.

http://bugs.webkit.org/show_bug.cgi?id=16346
[GTK] Some webview parts must use the focused frame.

Also update some old code.

  • WebView/webkitprivate.cpp: (getFrameFromView): removed
  • WebView/webkitprivate.h: (getFrameFromView): removed


  • WebView/webkitwebview.cpp: (webkit_web_view_expose_event): (webkit_web_view_key_press_event): use focused frame (webkit_web_view_key_release_event): use focused frame (webkit_web_view_button_press_event): (webkit_web_view_button_release_event): (webkit_web_view_motion_event): (webkit_web_view_scroll_event): (webkit_web_view_size_allocate): (webkit_web_view_set_scroll_adjustments): (webkit_web_view_execute_script): (webkit_web_view_stop_loading): (webkit_web_view_load_string): (webkit_web_view_reload): (webkit_web_view_open): (webkit_web_view_can_go_forward): (webkit_web_view_can_go_backward): (webkit_web_view_go_forward): (webkit_web_view_go_backward):
  • WebCoreSupport/EditorClientGtk.cpp: (WebKit::EditorClient::handleKeypress): fix for page up and page down keys for editable contents
04:27 Changeset [28563] by rwlbuis@webkit.org

Reviewed by Darin.

http://bugs.webkit.org/show_bug.cgi?id=15464
SVGLengthList allows bad values

Be more strict with svg lengths without a unit identifier.

Test: svg/custom/invalid-lengthlist.svg

04:11 Changeset [28562] by rwlbuis@webkit.org

Mac Tiger build fix.

Use the wtf prefix when including MathExtras.h.

03:35 Changeset [28561] by alp@webkit.org

Remove 'Reviewed by' from build fix ChangeLog entry

03:32 Changeset [28560] by alp@webkit.org

2007-12-08 Alp Toker <alp@atoker.com>

Reviewed by Alp Toker.

GTK+ build fix (for ENABLE_VIDEO builds):

Include MathExtras.h to get isfinite().

  • rendering/RenderMedia.cpp:
00:53 Changeset [28559] by rwlbuis@webkit.org

Reviewed by Darin.

http://bugs.webkit.org/show_bug.cgi?id=15528
svg_dynamic_cast should be removed

Replace svg_dynamic_cast with a combination of
isSVGElement and static_cast.

12/07/07:

22:49 Changeset [28558] by antti@apple.com

WebCore:

Reviewed by Adele.


Partial fix for <rdar://problem/5633400>
Transformed <video>, <img>, <embed> are not clipped correctly until a repaint is forced


Fix video painting when transform is applied.

Test: media/video-transformed.html

  • platform/graphics/mac/MediaPlayerPrivateQTKit.mm: (WebCore::MediaPlayerPrivate::paint):

LayoutTests:

Reviewed by Adele.


Test video painting when transform is applied.

  • media/video-paint-test.js: Added.
  • media/video-transformed.html: Added.
  • platform/mac/media/video-transformed-expected.checksum: Added.
  • platform/mac/media/video-transformed-expected.png: Added.
  • platform/mac/media/video-transformed-expected.txt: Added.
21:44 Changeset [28557] by sfalken@apple.com

WebKit/win:

Fix version parsing.

Rubber-stamped by Oliver.

  • WebKit.vcproj/auto-version.sh:

WebKitTools:

Fix version parsing.

Rubber-stamped by Oliver.

  • Drosera/win/Drosera.vcproj/auto-version.sh:
20:26 Changeset [28556] by sfalken@apple.com

Build modifications for Drosera.

Reviewed by Adam.

  • Drosera/DroseraWin.make: Added.
  • Drosera/win/Drosera.vcproj/Drosera.rc:
  • Drosera/win/Drosera.vcproj/Drosera.vcproj:
  • Drosera/win/Drosera.vcproj/PRODUCTVERSION: Added.
  • Drosera/win/Drosera.vcproj/VERSION: Added.
  • Drosera/win/Drosera.vcproj/auto-version.sh: Added.
17:48 Changeset [28555] by mitz@apple.com

WebCore:

Reviewed by Sam Weinig.

Test: fast/css/font-face-default-font.html

  • dom/Document.cpp: (WebCore::Document::recalcStyle): Pass our font selector to Font::update() if we already have one.

LayoutTests:

Reviewed by Sam Weinig.

  • fast/css/font-face-default-font.html: Added.
  • platform/mac-leopard/fast/css: Added.
  • platform/mac-leopard/fast/css/font-face-default-font-expected.checksum: Added.
  • platform/mac-leopard/fast/css/font-face-default-font-expected.png: Added.
  • platform/mac/fast/css/font-face-default-font-expected.txt: Added.
17:37 Changeset [28554] by darin@apple.com

Reviewed by Kevin Decker and Tim Hatcher.

  • speculative fix for <rdar://problem/5400159> CrashTracer: [USER] 726 crashes in Safari at com.apple.WebKit: -[WebHTMLView(WebPrivate) _updateMouseoverWithFakeEvent] + 389
  • WebView/WebHTMLView.mm: (-[WebHTMLView _frameOrBoundsChanged]): Only schedule the mouseover timer if we are in a window and not closed. That's because viewDidMoveToWindow and close are the entry points for cancelling. (-[WebHTMLView close]): Add code to cancel both timers. Needed for the case where the entire window goes away, and the view is never removed from the window. (-[WebHTMLView viewDidMoveToWindow]): Don't do work if the view is closed.
17:06 Changeset [28553] by sfalken@apple.com

Fix build.

  • WebKit.vcproj/WebKit.vcproj:
  • WebScriptCallFrame.cpp:
17:00 Changeset [28552] by sfalken@apple.com

Fix build.

  • WebHistory.cpp: (_WebCoreHistoryProvider::containsURL):
16:59 Changeset [28551] by ggaren@apple.com

Reviewed by Sam Weinig.


Refactored variable access optimization: Removed the assumption that
the FunctionBodyNode holds the symbol table.

16:56 Changeset [28550] by darin@apple.com
  • try to fix build
  • Api/qwebhistoryinterface.cpp: (WebCore::historyContains): There's a WebCore function here in WebKit! Needs to be updated, since WebCore changed, but this should not be here.
16:39 Changeset [28549] by ggaren@apple.com

Build fix: added #include.

  • kjs/nodes.cpp:
16:35 Changeset [28548] by ggaren@apple.com

Build fix: added #include.

  • kjs/interpreter.cpp:
16:30 Changeset [28547] by ggaren@apple.com

Build fix: added #include.

  • kjs/grammar.y:
16:24 Changeset [28546] by ggaren@apple.com

Build fix: added #include.

  • kjs/function_object.cpp:
16:23 Changeset [28545] by ggaren@apple.com

Reviewed by Sam Weinig.


Fixed crash seen running layout tests.


Reverted a change I made earlier today. Added a comment to try to
discourage myself from making this mistake a third time.

  • kjs/function.cpp: (KJS::ActivationImp::mark):
  • kjs/function.h: (KJS::ActivationImp::ActivationImpData::ActivationImpData):
16:22 Changeset [28544] by darin@apple.com
  • fix Windows build
  • bridge/win/GlobalHistoryWin.cpp: (WebCore::historyContains): Missed a rename.
16:05 Changeset [28543] by beidson@apple.com

Reviewed by Anders and Darin

When a statement bumps up against the quota and the UI Delegate grants more space, we need to
actually set the new maximum size on the SQLiteDatabase (in addition to storing the new max quota
in the DatabaseTracker, which was already done)

  • storage/SQLTransaction.cpp: (WebCore::SQLTransaction::runStatements): If a statement is being retried, set the maximum size on the SQLiteDatabase to the new maximum size
16:02 Changeset [28542] by darin@apple.com
  • fix Tiger build
  • platform/graphics/mac/MediaPlayerPrivateQTKit.mm: Tiger didn't even have QTKIT_VERSION_MAX_ALLOWED, so add logic to work without that.
16:02 Changeset [28541] by beidson@apple.com

Reviewed by Darin's rubberstamp

When developing the Database feature and dealing with UI Delegate issues, it is important to have
live examples on the web to help reproduce certain situations.

This file is a dumping ground for such examples, and starts out with one function - the ability to add
arbitrary amounts of data to a database to test the quota-related mechanisms of the UI

  • misc/DatabaseTester.html: Added.
16:01 Changeset [28540] by ggaren@apple.com

Reviewed by Sam Weinig.


Refactored parsing of global code: Removed the assumption that
ProgramNode inherits from FunctionBodyNode from the parser.

  • kjs/Parser.cpp: (KJS::Parser::parseProgram): (KJS::Parser::parseFunctionBody): (KJS::Parser::parse):
  • kjs/Parser.h: (KJS::Parser::didFinishParsing):
  • kjs/function.cpp:
  • kjs/grammar.y:
  • kjs/nodes.h:
15:53 Changeset [28539] by darin@apple.com
  • fix 64-bit build, hopefully without breaking Tiger build
  • platform/graphics/mac/MediaPlayerPrivateQTKit.mm: (WebCore::MediaPlayerPrivate::updateStates): Don't use Movies.h constants that are nonexistent in 64-bit. Define the new QTMovie.h constants, though, when using an older QTKit.
15:22 Changeset [28538] by ggaren@apple.com

Tried to fix build by suppressing warning.

  • WebScriptCallFrame.cpp:
15:00 Changeset [28537] by beidson@apple.com

Reviewed by Anders

Fix <rdar://problem/5636115> - Prompted for quota increase to create database when it already existed

  • storage/DatabaseTracker.cpp: (WebCore::DatabaseTracker::canEstablishDatabase): Check hasEntryForDatabase before doing any prompting (WebCore::DatabaseTracker::hasEntryForDatabase): Check and see if this database already exists
  • storage/DatabaseTracker.h:
14:58 Changeset [28536] by darin@apple.com

WebCore:

Reviewed by Mitz.

  • bridge/GlobalHistory.h: Change historyContains to take a character pointer plus length instead of requiring a DeprecatedString.
  • bridge/mac/GlobalHistoryMac.mm: (WebCore::historyContains): Updated for above change. Also removes pointless "fast Latin-1" case that was never used.
  • bridge/win/GlobalHistoryWin.cpp: (WebCore::historyContains): Ditto.
  • platform/gtk/TemporaryLinkStubs.cpp: (WebCore::historyContains): Ditto.
  • platform/wx/TemporaryLinkStubs.cpp: (WebCore::historyContains): Ditto.
  • css/CSSStyleSelector.cpp: (WebCore::findHash): Added. Helper for cleanpath. (WebCore::findSlashDotDotSlash): Ditto. (WebCore::findSlashSlash): Ditto. (WebCore::findSlashDotSlash): Ditto. (WebCore::cleanpath): Changed to use fast helper functions instead of slower general-purpose DeprecatedString find function. (WebCore::containsColonSlashSlash): Added. Helper for checkPseudoState. (WebCore::checkPseudoState): Got rid of reference count churn by using an AtomicString* instead of an AtomicString for the attribute value. Changed to use fast helper function instead of slower DeprecatedString::contains function, and also made the fast case not bother allocating a DeprecatedConstString.
  • unrelated tiny cleanup
  • platform/graphics/svg/cg/SVGPaintServerGradientCg.cpp: (WebCore::releaseCachedStops): Use static_cast instead of reinterpret_cast. (WebCore::cgGradientCallback): Ditto.

WebKit/mac:

Reviewed by Mitz.

  • History/WebHistory.mm: Removed unused Latin-1 code path. (-[_WebCoreHistoryProvider containsURL:length:]): Updated for method name change.

WebKit/win:

Reviewed by Mitz.

  • WebHistory.cpp: Removed unused Latin-1 code path. (_WebCoreHistoryProvider::containsItem): Updated for function name change.
14:45 Changeset [28535] by darin@apple.com

Fix build on Tiger (Mark Rowe told me how).

  • platform/graphics/mac/MediaPlayerPrivateQTKit.mm: Include <objc/objc-runtime.h>, which existed back on Tiger, rather than <objc/runtime.h>, which did not.
14:45 Changeset [28534] by ggaren@apple.com

Build fix: added JSVariableObject.cpp to the .pri file.

14:37 Changeset [28533] by ggaren@apple.com

Build fix: added #include.

  • kjs/function.cpp:
14:33 Changeset [28532] by ggaren@apple.com

Build fix: rolling out last build fix to change #include path.

WARNING: NO TEST CASES ADDED OR CHANGED

  • platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
14:30 Changeset [28531] by sfalken@apple.com

JavaScriptCore:

Re-named our B&I flag from BUILDBOT to PRODUCTION.

Reviewed by Sam Weinig.

WebCore:

Re-named our B&I flag from BUILDBOT to PRODUCTION.

Reviewed by Sam Weinig.

  • WebCore.vcproj/WebCore.make:

WebKit/win:

Re-named our B&I flag from BUILDBOT to PRODUCTION.
Fix our tiny versioning.
Bump our product version.
Use just the major version in the fallback VERSION files.
Pick up the version numbers from the production builder.

Reviewed by Sam Weinig.

  • Interfaces/WebKit.idl:
  • WebKit.vcproj/Interfaces.vcproj:
  • WebKit.vcproj/PRODUCTVERSION:
  • WebKit.vcproj/VERSION:
  • WebKit.vcproj/WebKit.make:
  • WebKit.vcproj/WebKit.rc:
  • WebKit.vcproj/WebKit.vcproj:
  • WebKit.vcproj/auto-version.sh:
  • WebKitDLL.cpp: (DllUnregisterServer):
14:26 Changeset [28530] by ggaren@apple.com

Build fix: corrected #include path.

  • platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
14:23 Changeset [28529] by ggaren@apple.com

Build fix: removed stray name qualification.

  • kjs/function.h: (KJS::ActivationImp::ActivationImp):
14:14 Changeset [28528] by ggaren@apple.com

Build fix: moved functions with qualified names outside of class
declaration.

  • kjs/JSVariableObject.h: (KJS::JSVariableObject::symbolTableGet): (KJS::JSVariableObject::symbolTablePut):
14:05 Changeset [28527] by ggaren@apple.com

JavaScriptCore:

Reviewed by Sam Weinig.

Next step in refactoring JSGlobalObject: Added JSVariableObject class,
and factored symbol-table-related code into it. (JSGlobalObject doesn't
use the symbol table code yet, though.)


Layout and JS tests, and testapi, pass. SunSpider reports no regression.

WebCore:

Reviewed by Sam Weinig.

Added some namespace qualifications and a forwarding header, now that
KJS::Node is sometimes #included in WebCore by JavaScriptCore headers.

  • ForwardingHeaders/wtf/ListRefPtr.h: Added.
  • bindings/js/JSXSLTProcessor.cpp: (KJS::JSXSLTProcessorPrototypeFunctionTransformToFragment::callAsFunction):
  • bindings/js/kjs_binding.cpp: (KJS::ScriptInterpreter::getDOMNodeForDocument): (KJS::ScriptInterpreter::forgetDOMNodeForDocument): (KJS::ScriptInterpreter::putDOMNodeForDocument): (KJS::ScriptInterpreter::markDOMNodesForDocument): (KJS::ScriptInterpreter::updateDOMNodeDocument):

WebKit/mac:

Reviewed by Sam Weinig.


Added a forwarding header, since we now #include nodes.h through some
JavaScriptCore headers.

  • ForwardingHeaders/wtf/ListRefPtr.h: Added.
12:21 Changeset [28526] by aroben@apple.com

Add SoftLinking.h for Windows and use it in a few places

WebCore:

Add SoftLinking.h for Windows and use it in a few places

Reviewed by Oliver.

  • WebCore.vcproj/WebCore.vcproj: Added new file to project.
  • platform/win/PlatformScrollBarSafari.cpp: Use SoftLinking.h. (WebCore::PlatformScrollbar::PlatformScrollbar): Removed manual soft-linking calls. (WebCore::PlatformScrollbar::paintButton): Check for the presence of the SafariTheme library now that we can't check for the presence of paintThemePart directly. (WebCore::PlatformScrollbar::paintTrack): Ditto. (WebCore::PlatformScrollbar::paintThumb): Ditto.
  • platform/win/SoftLinking.h: Copied from WebCore/platform/mac/SoftLinking.h.
  • rendering/RenderThemeSafari.cpp: Same basic changes as to PlatformScrollBarSafari.cpp. (WebCore::RenderThemeSafari::RenderThemeSafari): (WebCore::RenderThemeSafari::isControlStyled): (WebCore::RenderThemeSafari::paintCapsLockIndicator):
  • rendering/RenderThemeSafari.h: Removed m_themeDLL member.

WebKit/win:

Use SoftLinking.h in WebKitClassFactory.

Reviewed by Oliver.

  • WebKitClassFactory.cpp: (WebKitClassFactory::WebKitClassFactory): We don't have to worry about not finding STInitialize anymore now that a version of SafariTheme containing this function has shipped.
11:59 Changeset [28525] by darin@apple.com

Reviewed by Geoff.

While this does not make SunSpider faster, it will make many regular
expressions a bit faster.

  • pcre/pcre_compile.cpp: Moved CompileData struct in here from the header since it's private to this file. (compile_branch): Updated for function name change. (compile_bracket): Renamed from compile_regex, since, for one thing, this does not compile an entire regular expression. (calculateCompiledPatternLengthAndFlags): Removed unused item_count local variable. Renamed CompileData to cd instead of compile_block to be consistent with other functions. Added code to set the needOuterBracket flag if there's at least one "|" at the outer level. (jsRegExpCompile): Renamed CompileData to cd instead of compile_block to be consistent with other functions. Removed unneeded "size" field from the compiled regular expression. If no outer bracket is needed, then use compile_branch to compile the regular expression.
  • pcre/pcre_internal.h: Removed the CompileData struct, which is now private to pcre_compile.cpp. Removed the size member from JSRegExp.
11:44 Changeset [28524] by darin@apple.com

WebCore:

Reviewed by Adele.

  • fix <rdar://problem/5608795> CrashTracer: 481 crashes in Safari at WebCore::HTMLSelectElement::saveState const + 152

Test: fast/forms/select-set-inner.html

  • dom/ContainerNode.cpp: (WebCore::ContainerNode::removeChildren): Added a return value, as with other calls that change children, so we can optimize for the case where it does nothing. (WebCore::ContainerNode::cloneChildNodes): Changed parameter type to ContainerNode.
  • dom/ContainerNode.h: See above.
  • html/HTMLOptGroupElement.cpp: (WebCore::HTMLOptGroupElement::removeChildren): Override removeChildren and call recalcSelectOptions in that case. (WebCore::HTMLOptGroupElement::childrenChanged): Override childrenChanged instead of addChild, for consistency with HTMLSelectElement; no need to override both. (WebCore::HTMLOptGroupElement::groupLabelText): Made const.
  • html/HTMLOptGroupElement.h: See above.
  • html/HTMLSelectElement.cpp: Don't override addChild any more, because we already override childrenChanged, and addChild calls that. (WebCore::HTMLSelectElement::removeChildren): Override removeChildren and call recalcSelectOptions in that case. (WebCore::HTMLSelectElement::recalcListItems): Tightened up the code a little bit by using a for loop and traverseNextSibling. Also added some new comments and removed some obsolete ones. (WebCore::HTMLSelectElement::checkListItems): Added. Debug-only check to make sure we don't have a stale list items vector.
  • html/HTMLSelectElement.h: Changed listItems() to invoke checkListItems(). This will help us catch cases where we have too few calls to setRecalcListItems.

LayoutTests:

Reviewed by Adele.

  • test for <rdar://problem/5608795> CrashTracer: 481 crashes in Safari at WebCore::HTMLSelectElement::saveState const + 152
  • fast/forms/select-set-inner-expected.txt: Added.
  • fast/forms/select-set-inner.html: Added.
11:24 Changeset [28523] by mitz@apple.com

WebCore:

Reviewed by Darin Adler.

  • WebCore part of fixing <rdar://problem/5499918> REGRESSION: insertion point in input field with custom border cuts holes in focus ring interior edges

Test: fast/repaint/focus-ring.html

  • editing/SelectionController.cpp: (WebCore::SelectionController::caretRepaintRect): Changed to return just the caret rect without any padding. (WebCore::SelectionController::recomputeCaretRect): Changed to repaint just the caret rect without any padding.
  • platform/graphics/GraphicsContext.h: Removed setFocusRingClip() and clearFocusRingClip().
  • platform/graphics/cairo/GraphicsContextCairo.cpp: Ditto.
  • platform/graphics/cg/GraphicsContextCG.cpp: Ditto.
  • platform/graphics/cg/GraphicsContextPlatformPrivate.h: Removed m_focusRingClip member.
  • platform/graphics/mac/GraphicsContextMac.mm: (WebCore::GraphicsContext::drawFocusRing): Changed to call wkDrawFocusRing() once without setting up additional clip. On Leopard, wkDrawFocusRing() respects the context clip now. On Tiger, a transparency layer is used to apply clipping to the focus ring.
  • platform/graphics/qt/GraphicsContextQt.cpp: Removed focus ring clip methods and member.
  • platform/graphics/wx/GraphicsContextWx.cpp: Ditto.
  • platform/mac/WebCoreSystemInterface.h: Removed the clipRect argument to wkDrawFocusRing().
  • platform/mac/WebCoreSystemInterface.mm: Ditto.
  • rendering/RenderLayer.cpp: (WebCore::setClip): Removed call to set the focus ring clip. (WebCore::restoreClip): Removed call to reset the focus ring clip.

WebKitLibraries:

Reviewed by Darin Adler.

  • updated system interface for fixing <rdar://problem/5499918> REGRESSION: insertion point in input field with custom border cuts holes in focus ring interior edges
  • WebKitSystemInterface.h:
  • libWebKitSystemInterfaceLeopard.a:
  • libWebKitSystemInterfaceTiger.a:

LayoutTests:

Reviewed by Darin Adler.

  • repaint test for <rdar://problem/5499918> REGRESSION: insertion point in input field with custom border cuts holes in focus ring interior edges
  • fast/repaint/focus-ring.html: Added.
  • platform/mac/fast/repaint/focus-ring-expected.checksum: Added.
  • platform/mac/fast/repaint/focus-ring-expected.png: Added.
  • platform/mac/fast/repaint/focus-ring-expected.txt: Added.
11:09 Changeset [28522] by beidson@apple.com

Reviewed by Adam Roben

  • misc/DatabaseExample.html: Changed to differentiate failure between running with an unsupported browser or some other error that prevented the database from opening. In the future we can use ExceptionCodes returned from openDatabase(), but a good list of those don't exist yet
10:44 Changeset [28521] by darin@apple.com

Reviewed by Antti Koivisto and Kevin Decker.

  • fix <rdar://problem/5601586> QtKit should be dynamically loaded upon need, not linked at startup

Also did a lot of small tweaks to MediaPlayerPrivateQTKit.

  • WebCore.xcodeproj/project.pbxproj: Don't link to QTKit.
  • platform/graphics/mac/MediaPlayerPrivateQTKit.h: Omit unneeded includes and declarations. Made a lot more functions const. Made a few more members private and a couple inline.
  • platform/graphics/mac/MediaPlayerPrivateQTKit.mm: Added soft linking machinery for all the things we currently use in QTKit. It's a little more awkward for classes and other data objects than it is for functions, but still relatively straightforward, with no changes needed to the client code. Added using namespace directives. Made a cuePointTimerInterval constant and put it at the top of the file. Use 0 consistently instead of sometimes 0 and sometimes 0.0f. (WebCore::MediaPlayerPrivate::MediaPlayerPrivate): Removed unneeded initialization of RetainPtr members to nil. (WebCore::MediaPlayerPrivate::createQTMovie): Use adoptNS instead of autorelease. (WebCore::MediaPlayerPrivate::createQTMovieView): Ditto. Also use -[NSColor clearColor]. (WebCore::MediaPlayerPrivate::createQTTime): Remove an unneeded type cast that had no effect. Changed to use long instead of int because that's the type for a QTTime time scale anyway. (WebCore::MediaPlayerPrivate::duration): Use a static_cast instead of a C-style cast. (WebCore::MediaPlayerPrivate::currentTime): Ditto. Also merged into a single expression. (WebCore::MediaPlayerPrivate::cuePointTimerFired): Added code to make a copy of the cue points set to avoid a potential problem with a set being modified as we iterate it. (WebCore::MediaPlayerPrivate::bytesLoaded): Removed unneeded null check of m_qtMovie. (WebCore::MediaPlayerPrivate::updateStates): Instead of comments explaining the numeric values, used the constants from the headers directly. (WebCore::MediaPlayerPrivate::getSupportedTypes): Instead of (QTMovieFileTypeOptions)0, pass the named constant with value 0, QTIncludeCommonTypes. Skipped the intermediate type of NSString to remove one cast. Replaced C-style cast with reinterpret_cast (arguably no better). Used RetainPtr instead of explicit CFRelease calls.
  • platform/mac/SoftLinking.h: Added macros to do soft linking for classes and for pointers. It's not quite as automatic as the soft linking we can do for functions, since these define functions to get the values, so you need to define macros to make what look like variable accesses turn into function calls. See MediaPlayerPrivateQTKit for the details.
  • html/HTMLMediaElement.h:
  • html/TimeRanges.h:
  • html/VoidCallback.h:
  • platform/graphics/MediaPlayer.h: Use angle brackets for wtf includes. Omit unneeded includes.
10:43 Changeset [28520] by adachan@apple.com

<rdar://problem/5556378> Implemented database related UI delegate methods (prompts for new/enlarged databases)

Reviewed by Darin.

  • Interfaces/IWebUIDelegatePrivate.idl:
  • WebChromeClient.cpp: (WebChromeClient::requestQuotaIncreaseForNewDatabase): (WebChromeClient::requestQuotaIncreaseForDatabaseOperation):
10:26 Changeset [28519] by mitz@apple.com

WebCore:

Reviewed by Darin Adler.

Test: fast/dynamic/subtree-no-common-root-static-y.html

  • rendering/RenderObject.cpp: (WebCore::RenderObject::markContainingBlocksForLayout): Changed the call to setChildNeedsLayout() to not mark containing blocks and added a separate call to markContainingBlocksForLayout() that will not schedule a layout if we are already in the middle of scheduleRelayoutOfSubtree().

LayoutTests:

Reviewed by Darin Adler.

  • fast/dynamic/subtree-no-common-root-static-y.html: Added.
  • platform/mac/fast/dynamic/subtree-no-common-root-static-y-expected.checksum: Added.
  • platform/mac/fast/dynamic/subtree-no-common-root-static-y-expected.png: Added.
  • platform/mac/fast/dynamic/subtree-no-common-root-static-y-expected.txt: Added.
09:24 Changeset [28518] by kevino@webkit.org

Fix wxWebKit page leaks.

Reviewed by Darin Adler.

09:18 Changeset [28517] by kevino@webkit.org

MSVC7 build fix due to a compiler bug with placement new and/or templates and casting.

Reviewed by Darin Adler.

04:26 HackingGtk edited by alp@atoker.com
Movie -> MediaPlayer in SVN link (diff)
03:47 Changeset [28516] by alp@webkit.org

2007-12-07 Luca Bruno <lethalman88@gmail.com>

Reviewed by Alp Toker.

http://bugs.webkit.org/show_bug.cgi?id=16333
[GTK] Key bindings must work with focused frames.

There are still more cases where getFrameFromView() is mis-used that
need to be fixed, but this is a good start.

  • WebView/webkitwebview.cpp: (webkit_web_view_real_select_all): (webkit_web_view_real_cut_clipboard): (webkit_web_view_real_copy_clipboard): (webkit_web_view_real_paste_clipboard):
02:17 Changeset [28515] by ap@webkit.org

Reviewed by Darin.

http://bugs.webkit.org/show_bug.cgi?id=16325
<rdar://problem/5632997> REGRESSION: www.xerox.ru doesn't work


Test: http/tests/misc/empty-cookie.html

  • platform/mac/CookieJar.mm: (WebCore::setCookies): Don't store empty cookies. (WebCore::cookies): Filter out empty cookies if we have them, as they could have been set with an earlier version of Leopard!

12/06/07:

23:27 Changeset [28514] by adachan@apple.com

Fixed the if statement (ERROR_SUCCESS is 0 and we were actually
returning true when there's an error).

Reviewed by Steve.

  • platform/win/FileSystemWin.cpp: (WebCore::makeAllDirectories):
23:02 Changeset [28513] by ap@webkit.org

Reviewed by Darin.

http://bugs.webkit.org/show_bug.cgi?id=16091
JSCRE needs to import the PCRE test suite

We can use two files from PCRE test suite, as others either test for features not supported
in JS, or use internal debugging facilities of PCRE.

The files are checked in almost unmodified, I have only converted them to UTF-8 and removed two
huge test cases that were completely incompatible with JSC, and were polluting the output.

Many of the failures in results are just legitimate differences in behavior or possibly
problems with the test runner, but some may be genuine bugs and even regressions in JSC.

  • fast/regex: Added.
  • fast/regex/pcre-test-runner.js: Added.
  • fast/regex/test1-expected.txt: Added.
  • fast/regex/test1.html: Added.
  • fast/regex/test4-expected.txt: Added.
  • fast/regex/test4.html: Added.
  • fast/regex/testinput1: Added.
  • fast/regex/testinput4: Added.
  • fast/regex/testoutput1: Added.
  • fast/regex/testoutput4: Added.
22:17 Changeset [28512] by beidson@apple.com

Reviewed by Oliver's rubber stamp

Let's go ahead and call the correct UI Delegate method, shall we?

  • WebCoreSupport/WebChromeClient.mm: (WebChromeClient::requestQuotaIncreaseForDatabaseOperation): Call the correct UI delegate
21:33 Changeset [28511] by kevino@webkit.org

Linux build fix - ensure that webcore is linked before jscore so that the linker will know which symbols it needs to link in. Also fix MSVC project file name typo for sample app.

19:59 Changeset [28510] by darin@apple.com
  • fix broken regression test
  • bindings/js/kjs_binding.cpp: (KJS::setDOMException): Oops, this was just supposed to be PERMISSION_DENIED.
19:18 Changeset [28509] by darin@apple.com

Reviewed by Sam Weinig.

  • WebCore.pro: Added ExceptionCode.cpp.
  • WebCore.vcproj/WebCore.vcproj: Added ExceptionCode.cpp.
  • WebCore.xcodeproj/project.pbxproj: Added ExceptionCode.cpp.
  • WebCoreSources.bkl: Added ExceptionCode.cpp.
  • bindings/js/kjs_binding.cpp: (KJS::setDOMException): Moved the code to decompose an ExceptionCode into ExceptionCode.h/cpp -- getExceptionCodeDescription. Also removed the many unneeded includes that were here. Had to keep one special case here, for SECURITY_ERR.
  • bindings/objc/ExceptionHandlers.mm: (WebCore::raiseDOMException): Changed to use the new getExceptionCodeDescription function so that this shares the exception name information that was previously only available to JavaScript.
  • dom/ExceptionCode.cpp: Copied from bindings/js/kjs_binding.cpp. (WebCore::getExceptionCodeDescription): Added some assertions, and made the function handle exception names in a slightly more robust way that is not subject to integer overflow. (Not a real world issue since we should never receive a bad exception code.)
  • dom/ExceptionCode.h: Added the ExceptionCodeDescription struct and the getExceptionCodeDescription function.
  • svg/SVGException.h: Added a missing #include and got rid of some comments. Some of the comments were mildly helpful, but others were incorrect. This now matches the other exception-related headers such as RangeException.h.
18:49 Changeset [28508] by beidson@apple.com

Reviewed by Darin

Fixed a glaring bug that would prevent a statement from getting run a second time

  • storage/SQLStatement.cpp: (WebCore::SQLStatement::execute): Clear failure due to quota *before* we check the error and return early (WebCore::SQLStatement::clearFailureDueToQuota): Only clear the error if it was a quota error
18:10 Changeset [28507] by timothy@apple.com

Reviewed by Oliver Hunt.

Use keydown instead of keypress so keyIdentifier can be used.

  • page/inspector/ConsolePanel.js: Use keydown instead of keypress.
  • page/inspector/DatabasePanel.js: Ditto.
  • page/inspector/inspector.js: Ditto. Plus call removeEventListener before deleting windowLoaded.
18:05 Changeset [28506] by aroben@apple.com

Rename FontsTable.plist to FontsList.plist

Rubberstamped by Hyatt.

  • platform/graphics/win/FontDatabase.cpp:
18:00 Changeset [28505] by alice.liu@apple.com

Fixed <rdar://5540000> onbeforeunload doesn't fire when closing window/tab

Reviewed by Darin.

  • Interfaces/IWebViewPrivate.idl:
  • WebView.cpp: (WebView::shouldClose):
  • WebView.h:
17:51 Changeset [28504] by beidson@apple.com

Reviewed by Darin

Tweaked a comment and a few assertions from my last checkin

  • storage/SQLStatement.cpp: (WebCore::SQLStatement::execute): (WebCore::SQLStatement::clearFailureDueToQuota): (WebCore::SQLStatement::lastExecutionFailedDueToQuota):
17:04 Changeset [28503] by aroben@apple.com

Fix <rdar://5615283> Crash in WebFrame::receivedPolicyDecision

WebKit/mac:

Remove some assertions we know can fire and replace them with a FIXME

Reviewed by Anders.

  • WebCoreSupport/WebFrameLoaderClient.mm:

WebKit/win:

Fix <rdar://5615283> Crash in WebFrame::receivedPolicyDecision

It's possible for a second policy listener to be created while we're
waiting for a decision on the first policy listener. In this case we
would crash when the first policy listener had a decision made. Mac
WebKit already handles this by invalidating any existing policy
listener when creating a new one.

A test case is coming in a future commit.

Reviewed by Anders.

  • WebFrame.cpp: (WebFrame::setUpPolicyListener): Copy the Mac behavior of invalidating any existing policy listener, and remove some assertions that we know can fire.
16:50 Changeset [28502] by beidson@apple.com

Reviewed by Darin

Finished hooking up UI Delegate for databases - Database operations will now enforce a size quota and
will ask the UI Delegate for more space when that quota is met

  • platform/sql/SQLiteDatabase.cpp: Add the new SQLResultFull constant
  • platform/sql/SQLiteDatabase.h: Ditto
  • storage/Database.cpp: (WebCore::Database::securityOriginData): Added this accessor, copying for thread safety (WebCore::Database::stringIdentifier): Ditto
  • storage/Database.h:
  • storage/SQLStatement.cpp: (WebCore::SQLStatement::SQLStatement): (WebCore::SQLStatement::execute): Change to return an enum that represents 3 states - success, error, and quota. If the result is quota, this statement expects that it might be run again, presumably after the user increases the quota (WebCore::SQLStatement::setFailureDueToQuota): Setup a quota failure, including a flag and the error (WebCore::SQLStatement::clearFailureDueToQuota): Clear a quota failure, for when the statement is rerun (WebCore::SQLStatement::lastExecutionFailedDueToQuota):
  • storage/SQLStatement.h:
  • storage/SQLTransaction.cpp: (WebCore::SQLTransaction::SQLTransaction): (WebCore::SQLTransaction::performPendingCallback): Added an acceptable callback pointer (WebCore::SQLTransaction::openTransactionAndPreflight): Setup the quota in the database that will remain for this transaction. Note that in this patch, the quota being set is wrong - it makes sense to fix that in a follow up patch (WebCore::SQLTransaction::runStatements): Modified to add the ability to re-run a statement based on the UI delegate decision and whether the current statement was already run (WebCore::SQLTransaction::runCurrentStatement): Added another result condition - the Quota result - and handle it (WebCore::SQLTransaction::handleCurrentStatementError): Statements can now error-out from two places, so the code that handles a statement error was moved here (WebCore::SQLTransaction::deliverQuotaIncreaseCallback): Added - Consult the UI delegate for more quota, then reschedule the current statement on the database thread
  • storage/SQLTransaction.h:
15:32 Changeset [28501] by timothy@apple.com

Change the ASSERT added for the previous fix. The ASSERT was firing for 10.5.0.
Only assert if the major version is zero, since zero is handled in the other cases.

  • WebView/WebView.mm: (callGestalt): Remove the ASSERT. (createMacOSXVersionString): ASSERT that major is not zero.
15:31 Changeset [28500] by sfalken@apple.com

<rdar://problem/5614257> Crash in timer / hashtable code due to uncaught exception


Don't use callback-based timers, since these cause Windows to eat Windows crashes
in code the timers call.


Windows appears to be defending against "shatter" attacks partially by setting
up a structured exception block while dispatching callback-based WM_TIMERs.


I verified this by adding a divide by zero into some timer callback code.
In the case where the timer was dispatched via a callback, the divide by zero
exception was silently handled and ignored, with execution continuing after
our call to DispatchMessage. When processed via the WNDPROC, no SEH
block was established by Windows, and our divide by zero generated a real
crash (which is what we wanted).


Windows handling our crashes for us led us to leave the timer data structures
in an invalid state so the next time a timer was set, we'd crash accessing an
invalid HashMap of timer data.


Reviewed by Hyatt.

  • platform/win/SharedTimerWin.cpp: (WebCore::TimerWindowWndProc): (WebCore::setSharedTimerFireTime):
14:36 Changeset [28499] by darin@apple.com

Reviewed by Tim Hatcher.

  • fix <rdar://problem/5513394> No way to detect Tiger vs Leopard from Safari's user agent string
  • WebView/WebView.mm: (callGestalt): Added. (createMacOSXVersionString): Added. (-[WebView _userAgentWithApplicationName:andWebKitVersion:]): Added Mac OS X version string, right after the string "Mac OS X", but with underscores instead of dots to avoid the dreaded "4." problem (old libraries that think a "4." anywhere in the user agent means Netscape 4). (-[WebView _userAgentForURL:]): Fixed incorrect bug numbers.
14:11 Changeset [28498] by aroben@apple.com

Fix <rdar://5108390> Feed title is too low in blue banner

WebCore:

Fix <rdar://5108390> Feed title is too low in blue banner

Way back in r23069 we started applying the same font ascent hack that
Mac WebKit applies to Helvetica, Times, and Courier. We did this so
that those fonts would match the Mac metrics when we run the
regression tests. However, this hack was applying to Arial on Windows
when a site would specify the Helvetica font face because Windows will
alias the font names. Instead of removing the hack entirely, we
turn it off by default but provide some SPI so that DumpRenderTree can
turn it on.

Reviewed by Hyatt.

All tests pass.

  • platform/graphics/FontData.h: Add a new static method to turn on the hack on Windows only.
  • platform/graphics/win/FontDataWin.cpp: (WebCore::FontData::setShouldApplyMacAscentHack): Added. (WebCore::FontData::platformInit): Only perform the hack if shouldApplyMacAscentHack is true.

WebKit/win:

Add SPI so that DumpRenderTree can turn on the Mac font ascent hack

Reviewed by Hyatt.

  • Interfaces/IWebViewPrivate.idl: Added new method declaration.
  • WebView.cpp: (WebView::setShouldApplyMacFontAscentHack): Added. Just calls down to FontData.
  • WebView.h:

WebKitTools:

Explicitly turn on the Mac font ascent hack on Windows

This keeps our font metrics matching those from Mac.

Reviewed by Hyatt.

  • DumpRenderTree/win/DumpRenderTree.cpp: (main):
13:25 Changeset [28497] by mitz@apple.com
  • updated render tree results for r28483
  • svg/batik/text/textEffect2-expected.txt:
  • svg/batik/text/textProperties-expected.txt:
13:19 Changeset [28496] by ggaren@apple.com

WebCore:

Reviewed by Sam Weinig.

Fixed http://bugs.webkit.org/show_bug.cgi?id=16328
REGRESSION (r28470): Crash expanding a GMail conversation


  • page/Frame.cpp: (WebCore::Frame::scriptProxy): Only return 0 if JS seems disabled *and* we haven't created the proxy yet. If we've created the proxy already, a script may be in the midst of execution, even though we've lost our settings object. During execution, scripts assume they have free access to the proxy.

LayoutTests:

Reviewed by Sam Weinig.

Test for http://bugs.webkit.org/show_bug.cgi?id=16328
REGRESSION (r28470): Crash expanding a GMail conversation

  • fast/frames/location-put-after-removal.html: Added.
  • fast/frames/resources/location-put-after-removal-frame.html: Added.
  • fast/frames/resources/location-put-after-removal-frame-expected.txt: Updated.
13:17 Changeset [28495] by andersca@apple.com

Rename main.c to main.cpp here too.


  • DumpRenderTree/win/TestNetscapePlugin/main.cpp: Copied from DumpRenderTree/win/TestNetscapePlugin/main.c.
13:10 Changeset [28494] by weinig@apple.com

Rubber stamped by Geoff.

  • Scripts/do-webcore-rename: Don't rename kjs_css twice.
13:00 Changeset [28493] by darin@apple.com
  • Scripts/do-webcore-rename: Some more renaming plans.
12:37 Changeset [28492] by andersca@apple.com

Remove implementation of testGetIntIdentifier that was accidentally
removed somehow (possibly when I made PluginObject be a cpp file).


  • DumpRenderTree/TestNetscapePlugIn.subproj/PluginObject.cpp: (pluginInvoke):
12:24 Changeset [28491] by darin@apple.com

JavaScriptCore:

Reviewed by Eric Seidel.

Test: fast/js/regexp-oveflow.html

  • pcre/pcre_compile.cpp: (calculateCompiledPatternLengthAndFlags): In the case where a single character character class is optimized to not use a character class at all, the preflight code was not setting the lastitemlength variable.

LayoutTests:

Reviewed by Eric Seidel.

  • fast/js/regexp-overflow-expected.txt: Updated.
  • fast/js/resources/regexp-overflow.js: Added test.
12:11 Changeset [28490] by alp@webkit.org

2007-12-06 Xan Lopez <xan@gnome.org>

Reviewed by Alp Toker.

http://bugs.webkit.org/show_bug.cgi?id=16329
[GTK] Two small cleanups

  • WebCoreSupport/ChromeClientGtk.cpp: (WebKit::ChromeClient::createWindow): (WebKit::ChromeClient::addMessageToConsole): (WebKit::ChromeClient::runJavaScriptAlert): (WebKit::ChromeClient::runJavaScriptConfirm): (WebKit::ChromeClient::runJavaScriptPrompt): (WebKit::ChromeClient::setStatusbarText): (WebKit::ChromeClient::mouseDidMoveOverElement): (WebKit::ChromeClient::setToolTip):
  • WebCoreSupport/ChromeClientGtk.h:
  • WebView/webkitprivate.cpp: (WebKit::kit): s/m_webPage/m_webView/
  • WebView/webkitwebview.cpp: Chain up to the parent class to activate bindings instead of doing it explicitely.
12:02 Changeset [28489] by adele@apple.com

WebCore:

Reviewed by Oliver.

Fix for <rdar://problem/5631356> Toggling display property on video causes controls to get lost

  • html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::attach): Call updateFromElement.
  • html/HTMLMediaElement.h:

LayoutTests:

Reviewed by Oliver.

Fix <rdar://problem/5631356> Toggling display property on video causes controls to get lost

  • media/video-display-toggle.html: Added.
  • platform/mac/media/video-display-toggle-expected.checksum: Added.
  • platform/mac/media/video-display-toggle-expected.png: Added.
  • platform/mac/media/video-display-toggle-expected.txt: Added.
11:33 Changeset [28488] by adachan@apple.com

Build fix.

Reviewed by Geoff.

  • WebScriptCallFrame.cpp: (WebScriptCallFrame::valueByEvaluatingJavaScriptFromString):
10:46 Changeset [28487] by antti@apple.com

Reviewed by Oliver.

Rename

Movie -> MediaPlayer
MoviePrivate -> MediaPlayerPrivate


Movie is QuickTime terminology and clashes with its C API.

  • WebCore.xcodeproj/project.pbxproj:
  • html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::HTMLMediaElement): (WebCore::HTMLMediaElement::~HTMLMediaElement): (WebCore::HTMLMediaElement::initAndDispatchProgressEvent): (WebCore::HTMLMediaElement::bufferingRate): (WebCore::HTMLMediaElement::load): (WebCore::HTMLMediaElement::mediaPlayerNetworkStateChanged): (WebCore::HTMLMediaElement::mediaPlayerReadyStateChanged): (WebCore::HTMLMediaElement::setReadyState): (WebCore::HTMLMediaElement::progressEventTimerFired): (WebCore::HTMLMediaElement::seek): (WebCore::HTMLMediaElement::currentTime): (WebCore::HTMLMediaElement::duration): (WebCore::HTMLMediaElement::playbackRate): (WebCore::HTMLMediaElement::setPlaybackRate): (WebCore::HTMLMediaElement::play): (WebCore::HTMLMediaElement::pause): (WebCore::HTMLMediaElement::setVolume): (WebCore::HTMLMediaElement::setMuted): (WebCore::HTMLMediaElement::pickMedia): (WebCore::HTMLMediaElement::checkIfSeekNeeded): (WebCore::HTMLMediaElement::mediaPlayerVolumeChanged): (WebCore::HTMLMediaElement::mediaPlayerTimeChanged): (WebCore::HTMLMediaElement::mediaPlayerCuePointReached): (WebCore::HTMLMediaElement::addCuePoint): (WebCore::HTMLMediaElement::buffered): (WebCore::HTMLMediaElement::seekable): (WebCore::HTMLMediaElement::effectiveStart): (WebCore::HTMLMediaElement::effectiveEnd): (WebCore::HTMLMediaElement::effectiveLoopStart): (WebCore::HTMLMediaElement::effectiveLoopEnd): (WebCore::HTMLMediaElement::updateMediaPlayer): (WebCore::HTMLMediaElement::willSaveToCache):
  • html/HTMLMediaElement.h: (WebCore::HTMLMediaElement::player):
  • html/HTMLVideoElement.cpp: (WebCore::HTMLVideoElement::videoWidth): (WebCore::HTMLVideoElement::videoHeight):
  • platform/MIMETypeRegistry.cpp: (WebCore::initialiseSupportedMediaMIMETypes): (WebCore::MIMETypeRegistry::isSupportedMediaMIMEType): (WebCore::MIMETypeRegistry::getSupportedMediaMIMETypes):
  • platform/MIMETypeRegistry.h:
  • platform/graphics/MediaPlayer.cpp: Copied from WebCore/platform/graphics/Movie.cpp. (WebCore::MediaPlayer::MediaPlayer): (WebCore::MediaPlayer::~MediaPlayer): (WebCore::MediaPlayer::load): (WebCore::MediaPlayer::cancelLoad): (WebCore::MediaPlayer::play): (WebCore::MediaPlayer::pause): (WebCore::MediaPlayer::duration): (WebCore::MediaPlayer::currentTime): (WebCore::MediaPlayer::seek): (WebCore::MediaPlayer::paused): (WebCore::MediaPlayer::seeking): (WebCore::MediaPlayer::naturalSize): (WebCore::MediaPlayer::hasVideo): (WebCore::MediaPlayer::networkState): (WebCore::MediaPlayer::readyState): (WebCore::MediaPlayer::volume): (WebCore::MediaPlayer::setVolume): (WebCore::MediaPlayer::rate): (WebCore::MediaPlayer::setRate): (WebCore::MediaPlayer::muted): (WebCore::MediaPlayer::setMuted): (WebCore::MediaPlayer::dataRate): (WebCore::MediaPlayer::setEndTime): (WebCore::MediaPlayer::addCuePoint): (WebCore::MediaPlayer::removeCuePoint): (WebCore::MediaPlayer::clearCuePoints): (WebCore::MediaPlayer::maxTimeBuffered): (WebCore::MediaPlayer::maxTimeSeekable): (WebCore::MediaPlayer::bytesLoaded): (WebCore::MediaPlayer::totalBytesKnown): (WebCore::MediaPlayer::totalBytes): (WebCore::MediaPlayer::setRect): (WebCore::MediaPlayer::visible): (WebCore::MediaPlayer::setVisible): (WebCore::MediaPlayer::paint): (WebCore::MediaPlayer::getSupportedTypes): (WebCore::MediaPlayer::networkStateChanged): (WebCore::MediaPlayer::readyStateChanged): (WebCore::MediaPlayer::volumeChanged): (WebCore::MediaPlayer::timeChanged): (WebCore::MediaPlayer::cuePointReached):
  • platform/graphics/MediaPlayer.h: Copied from WebCore/platform/graphics/Movie.h. (WebCore::MediaPlayerClient::~MediaPlayerClient): (WebCore::MediaPlayerClient::mediaPlayerNetworkStateChanged): (WebCore::MediaPlayerClient::mediaPlayerReadyStateChanged): (WebCore::MediaPlayerClient::mediaPlayerVolumeChanged): (WebCore::MediaPlayerClient::mediaPlayerTimeChanged): (WebCore::MediaPlayerClient::mediaPlayerCuePointReached):
  • platform/graphics/Movie.cpp: Removed.
  • platform/graphics/Movie.h: Removed.
  • platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp: Copied from WebCore/platform/graphics/gtk/MoviePrivateGStreamer.cpp. (WebCore::mediaPlayerPrivateErrorCallback): (WebCore::mediaPlayerPrivateEOSCallback): (WebCore::mediaPlayerPrivateStateCallback): (WebCore::mediaPlayerPrivateBufferingCallback): (WebCore::MediaPlayerPrivate::MediaPlayerPrivate): (WebCore::MediaPlayerPrivate::~MediaPlayerPrivate): (WebCore::MediaPlayerPrivate::load): (WebCore::MediaPlayerPrivate::play): (WebCore::MediaPlayerPrivate::pause): (WebCore::MediaPlayerPrivate::duration): (WebCore::MediaPlayerPrivate::currentTime): (WebCore::MediaPlayerPrivate::seek): (WebCore::MediaPlayerPrivate::setEndTime): (WebCore::MediaPlayerPrivate::addCuePoint): (WebCore::MediaPlayerPrivate::removeCuePoint): (WebCore::MediaPlayerPrivate::clearCuePoints): (WebCore::MediaPlayerPrivate::startCuePointTimerIfNeeded): (WebCore::MediaPlayerPrivate::cancelSeek): (WebCore::MediaPlayerPrivate::cuePointTimerFired): (WebCore::MediaPlayerPrivate::paused): (WebCore::MediaPlayerPrivate::seeking): (WebCore::MediaPlayerPrivate::naturalSize): (WebCore::MediaPlayerPrivate::hasVideo): (WebCore::MediaPlayerPrivate::setVolume): (WebCore::MediaPlayerPrivate::setMuted): (WebCore::MediaPlayerPrivate::setRate): (WebCore::MediaPlayerPrivate::dataRate): (WebCore::MediaPlayerPrivate::networkState): (WebCore::MediaPlayerPrivate::readyState): (WebCore::MediaPlayerPrivate::maxTimeBuffered): (WebCore::MediaPlayerPrivate::maxTimeSeekable): (WebCore::MediaPlayerPrivate::maxTimeLoaded): (WebCore::MediaPlayerPrivate::bytesLoaded): (WebCore::MediaPlayerPrivate::totalBytesKnown): (WebCore::MediaPlayerPrivate::totalBytes): (WebCore::MediaPlayerPrivate::cancelLoad): (WebCore::MediaPlayerPrivate::updateStates): (WebCore::MediaPlayerPrivate::loadStateChanged): (WebCore::MediaPlayerPrivate::rateChanged): (WebCore::MediaPlayerPrivate::sizeChanged): (WebCore::MediaPlayerPrivate::timeChanged): (WebCore::MediaPlayerPrivate::volumeChanged): (WebCore::MediaPlayerPrivate::didEnd): (WebCore::MediaPlayerPrivate::loadingFailed): (WebCore::MediaPlayerPrivate::setRect): (WebCore::MediaPlayerPrivate::setVisible): (WebCore::MediaPlayerPrivate::paint): (WebCore::MediaPlayerPrivate::getSupportedTypes): (WebCore::MediaPlayerPrivate::createGSTPlayBin):
  • platform/graphics/gtk/MediaPlayerPrivateGStreamer.h: Copied from WebCore/platform/graphics/gtk/MoviePrivateGStreamer.h.
  • platform/graphics/gtk/MoviePrivateGStreamer.cpp: Removed.
  • platform/graphics/gtk/MoviePrivateGStreamer.h: Removed.
  • platform/graphics/mac/MediaPlayerPrivateQTKit.h: Copied from WebCore/platform/graphics/mac/MoviePrivateQTKit.h.
  • platform/graphics/mac/MediaPlayerPrivateQTKit.mm: Copied from WebCore/platform/graphics/mac/MoviePrivateQTKit.mm. (WebCore::MediaPlayerPrivate::MediaPlayerPrivate): (WebCore::MediaPlayerPrivate::~MediaPlayerPrivate): (WebCore::MediaPlayerPrivate::createQTMovie): (WebCore::MediaPlayerPrivate::createQTMovieView): (WebCore::MediaPlayerPrivate::createQTTime): (WebCore::MediaPlayerPrivate::load): (WebCore::MediaPlayerPrivate::play): (WebCore::MediaPlayerPrivate::pause): (WebCore::MediaPlayerPrivate::duration): (WebCore::MediaPlayerPrivate::currentTime): (WebCore::MediaPlayerPrivate::seek): (WebCore::MediaPlayerPrivate::doSeek): (WebCore::MediaPlayerPrivate::cancelSeek): (WebCore::MediaPlayerPrivate::seekTimerFired): (WebCore::MediaPlayerPrivate::setEndTime): (WebCore::MediaPlayerPrivate::addCuePoint): (WebCore::MediaPlayerPrivate::removeCuePoint): (WebCore::MediaPlayerPrivate::clearCuePoints): (WebCore::MediaPlayerPrivate::startCuePointTimerIfNeeded): (WebCore::MediaPlayerPrivate::cuePointTimerFired): (WebCore::MediaPlayerPrivate::paused): (WebCore::MediaPlayerPrivate::seeking): (WebCore::MediaPlayerPrivate::naturalSize): (WebCore::MediaPlayerPrivate::hasVideo): (WebCore::MediaPlayerPrivate::setVolume): (WebCore::MediaPlayerPrivate::setMuted): (WebCore::MediaPlayerPrivate::setRate): (WebCore::MediaPlayerPrivate::dataRate): (WebCore::MediaPlayerPrivate::networkState): (WebCore::MediaPlayerPrivate::readyState): (WebCore::MediaPlayerPrivate::maxTimeBuffered): (WebCore::MediaPlayerPrivate::maxTimeSeekable): (WebCore::MediaPlayerPrivate::maxTimeLoaded): (WebCore::MediaPlayerPrivate::bytesLoaded): (WebCore::MediaPlayerPrivate::totalBytesKnown): (WebCore::MediaPlayerPrivate::totalBytes): (WebCore::MediaPlayerPrivate::cancelLoad): (WebCore::MediaPlayerPrivate::updateStates): (WebCore::MediaPlayerPrivate::loadStateChanged): (WebCore::MediaPlayerPrivate::rateChanged): (WebCore::MediaPlayerPrivate::sizeChanged): (WebCore::MediaPlayerPrivate::timeChanged): (WebCore::MediaPlayerPrivate::volumeChanged): (WebCore::MediaPlayerPrivate::didEnd): (WebCore::MediaPlayerPrivate::setRect): (WebCore::MediaPlayerPrivate::setVisible): (WebCore::MediaPlayerPrivate::paint): (WebCore::MediaPlayerPrivate::getSupportedTypes): (-[WebCoreMovieObserver initWithCallback:WebCore::]):
  • platform/graphics/mac/MoviePrivateQTKit.h: Removed.
  • platform/graphics/mac/MoviePrivateQTKit.mm: Removed.
  • rendering/RenderMedia.cpp: (WebCore::RenderMedia::player):
  • rendering/RenderMedia.h:
  • rendering/RenderVideo.cpp: (WebCore::RenderVideo::RenderVideo): (WebCore::RenderVideo::~RenderVideo): (WebCore::RenderVideo::videoSizeChanged): (WebCore::RenderVideo::paintReplaced): (WebCore::RenderVideo::layout): (WebCore::RenderVideo::updateFromElement): (WebCore::RenderVideo::updatePlayer):
  • rendering/RenderVideo.h:
10:26 HackingGtk edited by alp@atoker.com
Add a link to the GStreamer video backend code (diff)
10:01 Changeset [28486] by ggaren@apple.com

Build fix: access global object directly.

  • plugins/win/PluginViewWin.cpp: (WebCore::PluginViewWin::bindingInstance):
04:20 Changeset [28485] by mrowe@apple.com

Fix bug spotted by GCC 4.2. Remove extraneous semicolon that completely changed the meaning of allowPopUp.

Reviewed by Eric.

01:26 Changeset [28484] by alp@webkit.org

2007-12-06 Holger Hans Peter Freyther <holger.freyther@trolltech.com>

Reviewed by Alp Toker.

http://bugs.webkit.org/show_bug.cgi?id=16173
Licensing change

Change license from BSD to LGPL.

12/05/07:

23:40 Changeset [28483] by rwlbuis@webkit.org

Reviewed by Mitz.

http://bugs.webkit.org/show_bug.cgi?id=15289
WebKit does not respect clip paths of a 0x0 rect

Make empty clip paths clip the whole referencing graphic.

22:25 Changeset [28482] by darin@apple.com

Reviewed by Maciej.

I don't know how to reproduce this in a test.

  • bindings/js/JSDocumentCustom.cpp: (WebCore::JSDocument::mark): Call JSEventTargetNode::mark instead of DOMObject::mark. There's no difference right now, but it's best to call your base class, not your base's base.
  • bindings/js/kjs_events.h: Removed unneeded virtual from the JSUnprotectedEventListener::mark() function; it neither derives from or is derived from anyone else with a mark() function so there's no need for virtual.
  • bindings/js/kjs_window.cpp: (KJS::Window::mark): Call JSGlobalObject::mark, not JSObject::mark. This is the actual bug fix.
21:42 Changeset [28481] by alp@webkit.org

2007-12-05 Pierre-Luc Beaudoin <pierre-luc.beaudoin@collabora.co.uk>

http://bugs.webkit.org/show_bug.cgi?id=16145
[gtk] Implement media support in GTK backend

Reviewed by Alp Toker.

Remove old comments, fix variable names, match WebKit coding style.

  • platform/graphics/gtk/MoviePrivateGStreamer.cpp: (WebCore::moviePrivateEOSCallback): (WebCore::MoviePrivate::MoviePrivate): (WebCore::MoviePrivate::load): (WebCore::MoviePrivate::play): (WebCore::MoviePrivate::pause): (WebCore::MoviePrivate::currentTime): (WebCore::MoviePrivate::seek): (WebCore::MoviePrivate::cancelSeek): (WebCore::MoviePrivate::seeking): (WebCore::MoviePrivate::naturalSize): (WebCore::MoviePrivate::setVolume): (WebCore::MoviePrivate::setMuted): (WebCore::MoviePrivate::maxTimeBuffered): (WebCore::MoviePrivate::bytesLoaded): (WebCore::MoviePrivate::totalBytesKnown): (WebCore::MoviePrivate::totalBytes): (WebCore::MoviePrivate::updateStates): (WebCore::MoviePrivate::didEnd): (WebCore::MoviePrivate::paint): (WebCore::MoviePrivate::createGSTPlayBin):
  • platform/graphics/gtk/MoviePrivateGStreamer.h:
21:37 Changeset [28480] by mrowe@apple.com

Speculative wx build fix. Add PlugInInfoStore::pluginNameForMIMEType to the temporary link stubs.

21:25 Changeset [28479] by mrowe@apple.com

Qt Windows build fix. Include the time-related headers in the correct place.

21:22 Changeset [28478] by darin@apple.com

Not reviewed; just undoing a previous commit.

The real bug was the backwards ?: in the compile function, which Geoff just
fixed. Rolling out the incorrect earlier fix.

  • pcre/pcre_compile.cpp: (calculateCompiledPatternLengthAndFlags): Take out the unneeded preflight change. The regression test proves this is still working fine, so the bug remains fixed.
21:13 Changeset [28477] by alp@webkit.org

2007-12-05 Alp Toker <alp@atoker.com>

Rubber stamped by Mark Rowe.

Remove DEPENDPATH on the generated sources directory. This causes
trouble and is no longer necessary following the glib-genmarshal
generator split.

  • WebCore.pro:
20:14 Changeset [28476] by mrowe@apple.com

Build fix. Include headers before trying to use the things that they declare.

19:11 Changeset [28475] by ggaren@apple.com

Build fix: added some #includes.

  • kjs/JSImmediate.cpp:
19:07 Changeset [28474] by ggaren@apple.com

Build fix: added some #includes.

  • kjs/JSGlobalObject.cpp:
  • kjs/JSImmediate.cpp:
19:02 Changeset [28473] by ggaren@apple.com

Build fix: Fixed #include spelling.

  • kjs/debugger.cpp:
18:57 Changeset [28472] by ggaren@apple.com

Build fix: added #include.

  • kjs/debugger.cpp:
18:51 Changeset [28471] by ggaren@apple.com

Build fix: added a forward declaration.

  • kjs/debugger.h:
18:47 Changeset [28470] by ggaren@apple.com

Build fix: added an #include.

  • kjs/error_object.cpp:
18:41 Changeset [28469] by ggaren@apple.com

Build fix: added an #include.

  • kjs/bool_object.cpp:
18:31 Changeset [28468] by ggaren@apple.com

JavaScriptCore:

Reviewed by Darin Adler.

Third step in refactoring JSGlobalObject: Moved data members and
functions accessing data members from Interpreter to JSGlobalObject.
Changed Interpreter member functions to static functions.


This resolves a bug in global object bootstrapping, where the global
ExecState could be used when uninitialized.


This is a big change, but it's mostly code motion and renaming.


Layout and JS tests, and testjsglue and testapi, pass. SunSpider reports
a .7% regression, but Shark sees no difference related to this patch,
and SunSpider reported a .7% speedup from an earlier step in this
refactoring, so I think it's fair to call that a wash.

JavaScriptGlue:

Reviewed by Darin Adler.

Third step in refactoring JSGlobalObject: Moved data members and data
member access from Interpreter to JSGlobalObject. Replaced JSInterpreter
subclass with JSGlobalObject subclass.


  • JSRun.cpp: (JSRun::JSRun): (JSRun::Evaluate): (JSRun::CheckSyntax):
  • JSRun.h: (JSGlueGlobalObject::JSGlueGlobalObject):
  • JSUtils.cpp: (KJSValueToCFTypeInternal):
  • JSValueWrapper.cpp: (getThreadGlobalExecState):

WebCore:

Reviewed by Darin Adler.

Third step in refactoring JSGlobalObject: Moved data members and data
member access from Interpreter to JSGlobalObject. Changed Interpreter
member functions to static functions. Same for the subclass,
ScriptInterpreter.


This is a big change, but it's mostly code motion and renaming.

WebKit/mac:

Reviewed by Darin Adler.

Third step in refactoring JSGlobalObject: Moved data members and data
member access from Interpreter to JSGlobalObject.


  • WebView/WebFrame.mm: (-[WebFrame _attachScriptDebugger]):

WebKit/win:

Reviewed by Darin Adler.

Third step in refactoring JSGlobalObject: Moved data members and data
member access from Interpreter to JSGlobalObject.


  • WebFrame.cpp: (WebFrame::globalContext): (WebFrame::attachScriptDebugger): (WebFrame::windowObjectCleared):
  • WebScriptDebugger.cpp: (WebScriptDebugger::WebScriptDebugger):
17:37 Changeset [28467] by alice.liu@apple.com

Reviewed by Antti.

Addressed <rdar://problem/5137284> fast/events/mouseout-dead-node.html fails on boomer

  • fast/events/mouseout-dead-node.html: Changed the questionable calls to mouseUp() to mouseMoveTo() to better simulate mouseovers
  • platform/win/Skipped: removed this test from skipped file
17:36 Changeset [28466] by sfalken@apple.com

<rdar://problem/5625327> Crash toggling check grammar w/ spelling when no spell checker exists.


Reviewed by Adam.

  • WebView.cpp: (WebView::setGrammarCheckingEnabled): Add null check
16:56 Changeset [28465] by aroben@apple.com
  • platform/win/Skipped: Add a crashing test.
16:33 Changeset [28464] by darin@apple.com

"Reviewed" by Geoff.

  • loader/FrameLoader.cpp: (WebCore::FrameLoader::checkLoadCompleteForThisFrame): Removed assertion. (WebCore::FrameLoader::dispatchDidCommitLoad): This one too. The assertions are firing like crazy. Not sure why yet.
16:03 Changeset [28463] by ggaren@apple.com

Reviewed by Darin Adler. (Or vice versa.)


Fixed ASSERT during run-javascriptcore-tests. (Darin just added the
ASSERT, but the bug wasn't new.)

  • pcre/pcre_compile.cpp: (compile_branch): The ?: operator here was backwards, causing us to execute the loop too many times, adding stray KET opcodes to the compiled regular expression.
15:56 BuildBot edited by aroben@apple.com
Add a note about the just-in-time debugger registry key on Windows (diff)
15:34 Changeset [28462] by andersca@apple.com

Make the entry points extern "C".

  • DumpRenderTree/TestNetscapePlugIn.subproj/main.cpp:
14:58 Changeset [28461] by darin@apple.com

Reviewed by Adam Roben.

  • loader/FrameLoader.cpp: (WebCore::FrameLoader::dispatchDidCommitLoad): Check m_creatingInitialEmptyDocument and don't deliver the client call in that case.
14:57 Changeset [28460] by andersca@apple.com

C++ warning fixes.


  • DumpRenderTree/TestNetscapePlugIn.subproj/main.cpp: (NPP_New): (NPP_Destroy): (NPP_SetWindow): (NPP_NewStream): (NPP_HandleEvent): (NPP_URLNotify): (NPP_GetValue):
14:54 Changeset [28459] by andersca@apple.com

Add the .cpp files to the TestNetscapePlugIn target.

  • DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
14:48 Changeset [28458] by kmccullough@apple.com

Reviewed by Geoff.

  • Wait until local variable data is fully constructed before notifying the debugger of entering or leaving a call frame.
  • kjs/function.cpp: (KJS::FunctionImp::callAsFunction):
  • kjs/nodes.cpp: (KJS::FunctionBodyNode::execute):
14:42 Changeset [28457] by andersca@apple.com

Reviewed by Geoff.


Rename the TestNetscapePlugIn .c files to be .cpp.

  • DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
  • DumpRenderTree/TestNetscapePlugIn.subproj/PluginObject.c: Removed.
  • DumpRenderTree/TestNetscapePlugIn.subproj/PluginObject.cpp: Copied from DumpRenderTree/TestNetscapePlugIn.subproj/PluginObject.c.
  • DumpRenderTree/TestNetscapePlugIn.subproj/TestObject.c: Removed.
  • DumpRenderTree/TestNetscapePlugIn.subproj/TestObject.cpp: Copied from DumpRenderTree/TestNetscapePlugIn.subproj/TestObject.c.
  • DumpRenderTree/TestNetscapePlugIn.subproj/main.c: Removed.
  • DumpRenderTree/TestNetscapePlugIn.subproj/main.cpp: Copied from DumpRenderTree/TestNetscapePlugIn.subproj/main.c.
  • DumpRenderTree/win/TestNetscapePlugin/TestNetscapePlugin.vcproj:
14:30 Changeset [28456] by mrowe@apple.com

Fix 64-bit debug build.

Reviewed by Kevin Decker.

  • platform/text/mac/TextCodecMac.cpp:

(WebCore::TextCodecMac::decode): OSStatus is a long for 32-bit but int on 64-bit,
so we need to cast it to be able to use a single format specifier on both.

14:29 Changeset [28455] by mrowe@apple.com

Build fix for GCC 4.2. Cast via a union to avoid strict-aliasing issues.

Reviewed by Oliver.

14:27 Changeset [28454] by aroben@apple.com
  • platform/win/Skipped: Add another test failing due to fonts.
14:24 Changeset [28453] by aroben@apple.com

Fix case of keypresses from the Windows implementation of eventSender.keyDown

This fixes several regression tests.

Reviewed by Alice.

  • DumpRenderTree/win/EventSender.cpp: (keyDownCallback): Virtual keycodes for ASCII characters are always uppercase, so we need to check the case of the original character passed in to eventSender.keyDown.
14:08 Changeset [28452] by kdecker@apple.com

Corrected a Radar number in my previous ChangeLog entry.

13:51 Changeset [28451] by kdecker@apple.com

Reviewed by Hyatt.

<rdar://problem/5602071> Safari displays each pixel of 300 dpi US Patent TIFF Images, making them extremely large


  • loader/FrameLoader.cpp: (WebCore::FrameLoader::shouldUsePlugin): Allow plug-ins (with the exception of QuickTime) to takeover TIFF once again.
13:48 Changeset [28450] by timothy@apple.com

Add another Inspector screenshot for an upcoming blog post.

  • blog-files/InspectorDatabaseBrowser.png: Added.
13:16 Changeset [28449] by mrowe@apple.com

Fix testkjs in 64-bit.

When built for 64-bit the TCMalloc spin lock uses pthread mutexes rather than a custom spin lock
implemented in assembly. If we fail to initialize the pthread mutex, attempts to lock or unlock
it will fail and trigger a call to abort.

Reviewed by Darin.

  • wtf/FastMalloc.cpp: Initialize the spin lock so that we can later lock and unlock it.
  • wtf/TCSpinLock.h: Add an Init method to the optimised spin lock.
13:12 HackingGtk edited by alp@atoker.com
Mention bundled code (diff)
12:26 Changeset [28448] by alp@webkit.org

2007-12-05 Luca Bruno <lethalman88@gmail.com>

Reviewed by Alp Toker.

http://bugs.webkit.org/show_bug.cgi?id=16290
[GTK] Pasting clipboard in rich text.

  • platform/gtk/PasteboardGtk.cpp: (Pasteboard::documentFragment): Implement rich text paste support.
12:10 Changeset [28447] by adele@apple.com

Reviewed by Hyatt.

Reverting fix for <rdar://problem/5499918> REGRESSION: insertion point in input field with custom border cuts holes in focus ring interior edges

We need to just fix the underlying focus ring repaint problem.

  • rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::setStyle):
12:01 Changeset [28446] by kmccullough@apple.com

WebCore:

Reviewed by Darin.

  • <rdar://5621435>
  • Security Fix. Instead of having it off by default, WebKit now must explicitly turn off local-resource restriction when needed for backwards compatibility reasons.
  • loader/FrameLoader.cpp:

WebKit/mac:

Reviewed by Darin.

  • <rdar://5621435>
  • Security Fix. Instead of having it off by default, WebKit now must explicitly turn off local-resource restriction when needed for backwards coimpatibility reasons.
  • WebView/WebView.mm: (-[WebView _commonInitializationWithFrameName:groupName:]):
11:38 Changeset [28445] by aroben@apple.com

Expose WebView::setProhibitsMainFrameScrolling through IWebViewPrivate

Reviewed by Steve.

  • Interfaces/IWebViewPrivate.idl: Added declaration.
  • WebInspectorClient.cpp: (WebInspectorClient::createPage): Updated for change to setProhibitsMainFrameScrolling signature.
  • WebView.cpp: (WebView::setProhibitsMainFrameScrolling): Updated and robustified.
  • WebView.h:
11:36 Changeset [28444] by aroben@apple.com

Set the menu item identifier for all menu items

This allows WebKit clients to distinguish between submenus in the
context menu.

Reviewed by Darin.

No test possible.

  • platform/win/ContextMenuItemWin.cpp: (WebCore::ContextMenuItem::ContextMenuItem):
10:51 Changeset [28443] by aroben@apple.com

Learn from Tim's mistakes

  • DumpRenderTree/win/DumpRenderTree.cpp: (runTest): Reset the authorAndUserStylesEnabled preference for each test.
10:46 Changeset [28442] by mitz@apple.com

WebCore:

Reviewed by Darin Adler.

  • manual-tests/nested-plug-ins.html: Added.
  • manual-tests/resources/nested-plug-ins-inner-frame.html: Added.
  • manual-tests/resources/nested-plug-ins-outer-frame.html: Added.
  • platform/ScrollView.h:
  • platform/Widget.h: (WebCore::Widget::attachToWindow): Added. Tells the widget that it is connected via visible ScrollViews to the root ScrollView of the WebView. (WebCore::Widget::detachFromWindow): Added. Tells the widget that it is no longer connected via visible ScrollViews to the root ScrollView of the WebView.
  • platform/win/ScrollViewWin.cpp: (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate): Added m_visible and m_attachedToWindow members. (WebCore::ScrollView::attachToWindow): Added. Attaches all children if this view is visible. (WebCore::ScrollView::detachFromWindow): Added. Detaches all children if this view is visible (otherwise they would be detached already). (WebCore::ScrollView::show): Added. Attaches all children if this view is attached. (WebCore::ScrollView::hide): Added. Detaches all children if this view is attached (otherwise they would be detached already). (WebCore::ScrollView::isAttachedToWindow): Added.
  • platform/win/WidgetWin.cpp: (WebCore::Widget::setParent): Added calls to attachToWindow() and detachFromWindow() depending on whether the parent is set and attached or not.
  • plugins/win/PluginViewWin.cpp: (WebCore::PluginViewWin::setFocus): (WebCore::PluginViewWin::show): Changed to show the plug-in only if this view is attached. (WebCore::PluginViewWin::hide): Changed to hide the plug-in only if this view is attached (otherwise it would be hidden already). (WebCore::PluginViewWin::attachToWindow): Added. Shows the plug-in if this view is visible. (WebCore::PluginViewWin::detachFromWindow): Added. Hides the plug-in if this view is visible (otherwise it would be hidden already). (WebCore::PluginViewWin::PluginViewWin):
  • plugins/win/PluginViewWin.h: Added m_attachedToWindow member.

WebKit/win:

Reviewed by Darin Adler.

  • WebView.cpp: (WebView::initWithFrame): Attach the main frame's view.
10:15 Changeset [28441] by beidson@apple.com

Reviewed by Kevin Deckers rubberstamp

Disclose and export the Databases Directory defaults key

  • Storage/WebDatabaseManager.mm:
  • Storage/WebDatabaseManagerPrivate.h:
  • WebKit.exp:
09:07 HackingGtk edited by alp@atoker.com
Update link to the Cairo SVG backend in SVN, add link to the Cairo canvas (diff)
08:42 Changeset [28440] by alp@webkit.org

2007-12-05 Alp Toker <alp@atoker.com>

Reviewed by Mark Rowe.

Initialize GTK+ and WebKit so the tests can run.

Reorganize the headers a little.

07:53 Changeset [28439] by alp@webkit.org

2007-12-05 Michael Natterer <mitch@imendio.com>

Reviewed by Alp Toker.

  • WebView/webkitwebview.cpp: split key and button event handlers into separate press and release functions.
07:16 Changeset [28438] by alp@webkit.org

2007-12-05 Luca Bruno <lethalman88@gmail.com>

Reviewed by Alp Toker.

Handle events for Home and End keys.

  • WebView/webkitwebview.cpp: (webkit_web_view_key_event):
  • WebCoreSupport/EditorClientGtk.cpp: (EditorClient::handleKeypress):
04:35 Changeset [28437] by alp@webkit.org

2007-12-05 Michael Natterer <mitch@imendio.com>

Reviewed by Alp Toker.

  • WebView/webkitwebview.cpp
  • WebCoreSupport/ChromeClientGtk.cpp
  • WebCoreSupport/FrameLoaderClientGtk.cpp: canonicalize signal names.
01:32 QtWebKitTodo edited by hausmann@webkit.org
(diff)
00:26 Changeset [28436] by mitz@apple.com

Reviewed by Adam Roben.

  • fast/dom/ImageDocument-image-deletion-expected.txt: Added.
  • fast/dom/ImageDocument-image-deletion.html: Added.
Note: See TracTimeline for information about the timeline view.