Timeline


and

09/04/09:

21:10 Changeset [48092] by mrowe@apple.com

Versioning.

21:09 Changeset [48091] by mrowe@apple.com

New tag.

21:08 Changeset [48090] by mrowe@apple.com

Merge r48085.

21:08 Changeset [48089] by mrowe@apple.com

Merge r48070.

21:07 Changeset [48088] by mrowe@apple.com

2009-09-04 Anders Carlsson <andersca@apple.com>

Reviewed by Adele Petersen.

  • Fix <rdar://problem/7192902>

Never throw away the first frame in an animation.

  • platform/graphics/BitmapImage.cpp: (WebCore::BitmapImage::destroyDecodedData):
21:07 Changeset [48087] by mrowe@apple.com

Merge r48062.

20:54 Changeset [48086] by dimich@chromium.org

Prevent UI freeze in case when too many timers are in the timer queue.
https://bugs.webkit.org/show_bug.cgi?id=23865

Reviewed by David Levin.

The fix measures the elapsed time while executing timers. If we have too many
timers and it takes significant time to fire, quit the loop and reschedule.
This lets the run loop process user input (close the window for example).

  • platform/ThreadTimers.h:
  • platform/ThreadTimers.cpp:

(WebCore::ThreadTimers::sharedTimerFiredInternal):
(WebCore::ThreadTimers::fireTimersInNestedEventLoop):
Removed functions and members used before to grab a list of all expired timers.
Now we fetch one by one, measuring time and quitting the loop if it takes too long.

  • platform/Timer.cpp:

(WebCore::TimerBase::isActive):
(WebCore::TimerBase::setNextFireTime):
Since timers are now fired one by one, there is no need to keep track of updated timers.

  • manual-tests/input-starved-by-timers.html: Manual test that attempts to freeze browser by

creating of enough timers. It then keeps UI frozen and after 10 seconds starts to drain the timers
so the browser un-freezes. This is instead of a regular layout test because we don't have a way
to inject an input events via regular run loop in DRT - instead they are directly dispatched by
eventSender, which does not reproduce the UI freeze that happens with real input.

20:47 Changeset [48085] by andersca@apple.com

<rdar://problem/7201063>

Reviewed by Adele Peterson.

Detach any custom scrollbars before detaching the document.

  • page/Frame.cpp:

(WebCore::Frame::setView):

19:19 Changeset [48084] by oliver@apple.com

Windows build fix

19:07 Changeset [48083] by oliver@apple.com

ToString? conversion should use the actual toString function for String objects.

Reviewed by Gavin Barraclough.

Remove incorrect specialisations of toString conversions on StringObject.

18:13 Changeset [48082] by laszlo.1.gombos@nokia.com

Unreviewed, build fix.

Remove remaining references to UserStyleSheetLoader after r48075.

  • WebCore.gypi:
  • WebCore.xcodeproj/project.pbxproj:
  • page/qt/FrameQt.cpp:
  • page/wince/FrameWince.cpp:
17:35 Changeset [48081] by eric@webkit.org

2009-09-04 Michelangelo De Simone <micdesim@gmail.com>

Reviewed by David Levin.

https://bugs.webkit.org/show_bug.cgi?id=28988
Minor fix: "novalidate" attribute renamed in "noValidate", according to
HTML5 specs:
http://www.whatwg.org/specs/web-apps/current-work/#dom-fs-novalidate

  • fast/forms/novalidate-attribute-expected.txt:
  • fast/forms/resources/novalidate-attribute.js:

2009-09-04 Michelangelo De Simone <micdesim@gmail.com>

Reviewed by David Levin.

https://bugs.webkit.org/show_bug.cgi?id=28988
Minor fix: "novalidate" attribute renamed in "noValidate", according to
HTML5 specs:
http://www.whatwg.org/specs/web-apps/current-work/#dom-fs-novalidate

  • html/HTMLFormElement.cpp: (WebCore::HTMLFormElement::noValidate): (WebCore::HTMLFormElement::setNoValidate):
  • html/HTMLFormElement.h:
  • html/HTMLFormElement.idl:
17:18 Changeset [48080] by dimich@chromium.org

Remove unused line of code from WorkerContext
https://bugs.webkit.org/show_bug.cgi?id=28990

Reviewed by David Levin.

  • workers/WorkerContext.cpp:

(WebCore::WorkerContext::importScripts):

17:03 Changeset [48079] by darin@apple.com

Fix assertion seen when running buildbot.

Patch by Darin Adler <darin@apple.com> on 2009-09-04
Reviewed by Oliver Hunt.

  • bindings/js/JSDOMBinding.h:

(WebCore::DOMObjectWithGlobalPointer::createStructure): Create the structure without
the HasDefaultMark bit since this has a custom mark function.

15:27 Changeset [48078] by ap@apple.com

Fix expected test output.

  • fast/dom/DOMImplementation/detached-doctype-expected.txt:
14:54 Changeset [48077] by sfalken@apple.com

Windows build fix.

  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def: Add new export.
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore_debug.def: Add new export.
14:45 Changeset [48076] by sfalken@apple.com

Windows build fix.

  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def: Remove unneeded export.
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore_debug.def: Remove unneeded export.
14:33 Changeset [48075] by hyatt@apple.com

https://bugs.webkit.org/show_bug.cgi?id=28984, remove the remote stylesheet loader on Mac/Qt.
Make sure the other code path (now used by everybody) can handle data URLs.

Reviewed by Adam Roben.

As per the post on webkit-dev, the ability to work remotely isn't working properly anyway (it doesn't
hold up the pending sheet count, so you'd just FOUC on every Web page), and it's extremely unlikely
that anybody is relying on this support.

Tor Arne agreed it was ok to disable (he enabled it on the Qt side), and only Mac/Qt were using this
code.

  • WebCore.pro:
  • WebCore.xcodeproj/project.pbxproj:
  • dom/Document.cpp:

(WebCore::Document::userStyleSheet):

  • dom/Document.h:
  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::begin):

  • loader/UserStyleSheetLoader.cpp: Removed.
  • loader/UserStyleSheetLoader.h: Removed.
  • page/Frame.cpp:

(WebCore::Frame::reapplyStyles):

  • page/Frame.h:
  • page/Page.cpp:

(WebCore::Page::userStyleSheetLocationChanged):
(WebCore::Page::userStyleSheet):

  • page/mac/FrameMac.mm:
  • page/qt/FrameQt.cpp:
14:11 Changeset [48074] by pfeldman@chromium.org

2009-09-04 Mikhail Naganov <mnaganov@chromium.org>

Reviewed by Timothy Hatcher.

Add "sampling profiler" preference, simplify data display when it's set.

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

  • inspector/front-end/ProfileDataGridTree.js: (WebInspector.ProfileDataGridNode.prototype.get data.formatMilliseconds): (WebInspector.ProfileDataGridNode.prototype.get data):
  • inspector/front-end/ProfileView.js: (WebInspector.ProfileView):
  • inspector/front-end/inspector.js:
13:55 Changeset [48073] by hyatt@apple.com

Remove bogus assert that is affecting layout tests.

13:40 Changeset [48072] by jianli@chromium.org

[V8] Run-time exception in onmessage handler is not forwarded to the worker object.
https://bugs.webkit.org/show_bug.cgi?id=28980

Reviewed by Adam Barth.

Tested by worker-close.html.

  • bindings/v8/ScriptFunctionCall.cpp:
  • bindings/v8/V8AbstractEventListener.cpp:

(WebCore::V8AbstractEventListener::invokeEventHandler):

  • bindings/v8/V8Utilities.cpp:

(WebCore::getScriptExecutionContext):
(WebCore::reportException):

  • bindings/v8/V8Utilities.h:

(WebCore::getScriptExecutionContext):

  • bindings/v8/custom/V8MessageChannelConstructor.cpp:

(WebCore::CALLBACK_FUNC_DECL):

  • bindings/v8/custom/V8SharedWorkerCustom.cpp:

(WebCore::CALLBACK_FUNC_DECL):

  • bindings/v8/custom/V8WorkerCustom.cpp:

(WebCore::CALLBACK_FUNC_DECL):

  • bindings/v8/custom/V8XMLHttpRequestConstructor.cpp:

(WebCore::CALLBACK_FUNC_DECL):

  • bindings/v8/custom/V8XMLHttpRequestCustom.cpp:

(WebCore::CALLBACK_FUNC_DECL):

12:53 Changeset [48071] by hyatt@apple.com

Remove unused m_sheet variable and setCSSStyleSheet methods.

Reviewed by Anders Carlsson.

  • dom/Document.cpp:
  • dom/Document.h:
12:39 MathML Goals edited by alex@milowski.com
(diff)
12:31 Changeset [48070] by andersca@apple.com

(Based on a patch from Adele).

Reviewed by David Hyatt and Adele Peterson.

Fix <rdar://problem/7185875>.

  • page/Frame.cpp:

(WebCore::Frame::setView):
Detach any custom scroll bars from the old view.

  • page/FrameView.cpp:

(WebCore::FrameView::detachCustomScrollbars):
Simplify the check (and make it work when body is null) by just checking that the scroll bar owner is
not a RenderPart object.

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::destroy):
ASSERT that frame() is not null here and also add a null check so that release builds won't crash.

12:09 Changeset [48069] by hyatt@apple.com

Make m_userStyleSheetLoader in Frame an OwnPtr.

Reviewed by Adam Roben.

  • page/Frame.cpp:

(WebCore::Frame::Frame):
(WebCore::Frame::~Frame):

  • page/Frame.h:
  • page/mac/FrameMac.mm:

(WebCore::Frame::setUserStyleSheetLocation):
(WebCore::Frame::setUserStyleSheet):

12:05 MathML Goals created by alex@milowski.com
12:03 Changeset [48068] by darin@apple.com

DateInstance object collected on ARM JIT (JSValue: WTF_USE_JSVALUE32)
https://bugs.webkit.org/show_bug.cgi?id=28909

Patch by Darin Adler <darin@apple.com> on 2009-09-04
Reviewed by Geoff Garen.

Part two.

Make some improvements to garbage collection code:

1) Create a runtime assertion that catches any classes that

override markChildren but have the HasDefaultMark bit set.

2) Remove checks of the mark bit outside the MarkStack::append

function; they are redundant.

3) Improve the efficiency of the asObject and asArray functions

when called on JSCell* to avoid a round trip to JSValue.

4) Make more callers use the checked asCell and asObject

casting functions rather than unchecked casts.

5) Removed the JSCell::marked function and other GC-related

functions because these operations are no longer things that
code other than the core GC code needs to do directly. Fixed
callers that were calling them.

  • runtime/Collector.cpp:

(JSC::Heap::markConservatively): Removed unneeded call to MarkStack::drain.
(JSC::Heap::markProtectedObjects): Removed unneeded check of the mark
bit and call to MarkStack::drain.
(JSC::Heap::collect): Removed unneeded checks of the mark bit and also
changed call to SmallStrings::mark to call markChildren instead to match
the rest of the objects.
(JSC::typeName): Removed unneeded cast to JSObject*.

  • runtime/JSArray.h:

(JSC::asArray): Added an overload for JSCell* and changed the JSValue
version to call it. Removed some unneeded casts.
(JSC::JSArray::markChildrenDirect): Marked this function inline. It's in
a header, and if not marked inline this could lead to linking problems.
(JSC::MarkStack::markChildren): Added. This helper function is used by
the drain function to avoid repating code. Also added the code here to
check fro default mark violations in debug code. If a markChildren
function adds something to the mark stack, but the type info claimed
hasDefaultMark was true, then we will get an assertion now. Also fixed
the assertion about the mark bit to use the Heap function directly
because we don't have a JSCell::marked function any more.
(JSC::MarkStack::drain): Changed a local variable from "v" to "value",
and from "currentCell" to "cell". Changed to call markChildren in two
places instead of repeating a chain of if statements twice. Changed
code that reads and writes the mark bit to use Heap::isCellMarked and
Heap::markCell so we can eliminate the JSCell::marked and
JSCell::markCellDirect functions.

  • runtime/JSCell.h: Removed JSCell's markCellDirect and marked member

functions. Added a comment explaining that asCell should be deprecated
in favor of the JSValue asCell member function.
(JSC::MarkStack::append): Added the assertion that catches callers
that have set the HasDefaultMark bit incorrectly. Changed
code that reads and writes the mark bit to use Heap::isCellMarked and
Heap::markCell so we can eliminate the JSCell::marked and
JSCell::markCellDirect functions. Moved the overload of
MarkStack::append for JSValue here so it can call through to the cell
version. The old version had a copy of all the code instead, but that
repeated the conversion from JSValue to JSCell* and the check for
whether a value is a cell multiple times.
(JSC::Structure::markAggregate): Moved this function here to avoid
dependencies for Structure.h, since this calls MarkStack::append.

  • runtime/JSObject.cpp:

(JSC::JSObject::markChildren): Added code to clear
m_isCheckingForDefaultMarkViolation so the marking done by JSObject
doesn't trigger the assertion.

  • runtime/JSValue.h: Moved some stray includes that were outside the

header guard inside it. Not sure how that happened! Removed the
GC-related member functions markChildren, hasChildren, marked, and
markDirect.

  • runtime/JSWrapperObject.h: Made markChildren private.

(JSC::JSWrapperObject::createStructure): Added. Fixes a bug where the
HasDefaultMark bit was set.

  • runtime/MarkStack.h: Added m_isCheckingForDefaultMarkViolation and

initialized it to false. Moved the append function body from here to
JSCell.h. Added a declaration of a private markChildren function used
inside the drain function.

  • runtime/SmallStrings.cpp:

(JSC::SmallStrings::markChildren): Changed the name and style of this
function to match other functions. This allows us to share the normal
mark stack code path.

  • runtime/SmallStrings.h: Changed the name and interface of mark to

the more-normal markChildren style.

  • runtime/Structure.h: Moved the body of markAggregate into the

JSCell.h to avoid a circular dependency with JSCell.h.

11:53 Changeset [48067] by darin@apple.com

JavaScriptCore: DateInstance object collected on ARM JIT (JSValue: WTF_USE_JSVALUE32)
https://bugs.webkit.org/show_bug.cgi?id=28909

Patch by Darin Adler <darin@apple.com> on 2009-09-04
Reviewed by Geoff Garen.

Part one.

Make some improvements to garbage collection code:

1) Fix the two classes that had the default mark bit set but

should not.

2) Remove checks of the mark bit outside the MarkStack::append

function; they are redundant.

3) Make more callers use the checked asCell and asObject

casting functions rather than unchecked casts.

4) Removed some GC-related functions because these operations are

no longer things that code other than the core GC code needs
to do directly. Fixed callers that were calling them.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::markAggregate): Removed unneeded check of the mark
bit before calling MarkStack::append.

  • interpreter/Register.h: Removed unneeded marked and markChildren

functions.

  • jit/JITStubs.cpp:

(op_eq): Removed unneeded assertions, instead using checked casting
functions such as asObject.

  • runtime/ArgList.h: Added now-needed forward declaration of MarkStack.
  • runtime/GetterSetter.cpp:

(JSC::GetterSetter::markChildren): Remmoved unneeded check of the mark bit.

  • runtime/GlobalEvalFunction.h:

(JSC::GlobalEvalFunction::createStructure): Added. Fixes a bug where the
HasDefaultMark bit was set.

  • runtime/JSCell.cpp:

(JSC::JSCell::getObject): Use asObject to avoid a direct static_cast.

  • runtime/JSObject.h:

(JSC::asObject): Added an overload for JSCell* and changed the JSValue
version to call it.
(JSC::JSValue::get): Use asObject to avoid a direct static_cast.

  • runtime/JSValue.h: Moved some stray includes that were outside the

header guard inside it. Not sure how that happened! Removed the
GC-related member functions markChildren, hasChildren, marked, and
markDirect.

  • runtime/JSWrapperObject.h: Made markChildren private.

(JSC::JSWrapperObject::createStructure): Added. Fixes a bug where the
HasDefaultMark bit was set. Later we may want to optimize this for
wrapper types that never have cells in their internal values, but there
is no measured performance regression in SunSpider or V8 doing this
all the time.

  • runtime/MarkStack.cpp: Tweaked formatting.

JavaScriptGlue: * JSValueWrapper.cpp:
(JSValueWrapper::JSObjectMark): Removed a check of the mark
bit. It's OK to do more work in this case, and there is no
longer a public function to access the mark bit.

Reviewed by Geoff Garen.

11:35 WikiStart edited by alex@milowski.com
(diff)
11:34 WikiStart edited by alex@milowski.com
added MathML section (diff)
11:22 Changeset [48066] by kevino@webkit.org

wx build fix. Switch USE_ defines over to the compiler so that they can be
checked by files not including config.h (like WebCorePrefix.h).

11:07 Changeset [48065] by timothy@apple.com

Show color swatches in the Web Inspector before the color text so clicking them will not
shift the swatch. Also makes multiple swatches in the single property toggle the color format.

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

Reviewed by Darin Adler.

  • inspector/front-end/StylesSidebarPane.js:

(WebInspector.StylePropertyTreeElement.prototype.updateTitle): Some refactoring to consolidate
the processing we do on the property value. This eliminated the old nickname code, since the new
WebInspector.Color class handles this. We could also simplify the color regex since more
is handled by the Color class. Also no longer uses innerHTML for the linkify code.
(WebInspector.StylePropertyTreeElement.prototype.updateTitle.processValue): Helper function to
process a value given a regex and processor functions.
(WebInspector.StylePropertyTreeElement.prototype.updateTitle.linkifyURL): Make an anchor for the
URL with "url()" syntax surrounding it.
(WebInspector.StylePropertyTreeElement.prototype.updateTitle.processColor): Makes a color, if
there was an exception just return a text node.
(WebInspector.StylePropertyTreeElement.prototype.updateTitle.processColor.changeColorDisplay.changeTo):
Moved from later in the file.
(WebInspector.StylePropertyTreeElement.prototype.updateTitle.processColor.changeColorDisplay): Ditto.

  • inspector/front-end/inspector.css:
10:59 Changeset [48064] by dglazkov@chromium.org

WebCore:

2009-09-04 Mark Mentovai <mark@chromium.org>

Reviewed by Dave Hyatt.

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

Account for scrollbar state changes that occur during layout.

  • platform/ScrollView.cpp: (WebCore::ScrollView::updateScrollbars):

Perform a layout prior to checking whether the scrollbar modes are
off, on, or automatic. The modes may change during layout.

  • WebCore.base.exp:
  • WebCore.order:
  • page/Frame.cpp: (WebCore::Frame::createView):
  • page/FrameView.cpp: (WebCore::FrameView::FrameView): (WebCore::FrameView::resetScrollbars): (WebCore::FrameView::layout):
  • page/FrameView.h:
  • platform/ScrollView.h:

Eliminate duplicated (and incorrect) scrollbar mode tracking between
FrameView and ScrollView.

WebKit/mac:

2009-09-04 Mark Mentovai <mark@chromium.org>

Reviewed by Dave Hyatt.

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

Account for scrollbar state changes that occur during layout.

  • WebView/WebDynamicScrollBarsView.mm: (-[WebDynamicScrollBarsView updateScrollers]):

Perform a layout prior to checking whether the scrollbar modes are
off, on, or automatic. The modes may change during layout.

  • WebView/WebFrameView.mm: (-[WebFrameView _install]):

Eliminate duplicated (and incorrect) scrollbar mode tracking between
FrameView and ScrollView.

WebKit/qt:

2009-09-04 Mark Mentovai <mark@chromium.org>

Reviewed by Dave Hyatt.

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

Account for scrollbar state changes that occur during layout.

  • Api/qwebframe.cpp: (QWebFrame::setScrollBarPolicy):

Eliminate duplicated (and incorrect) scrollbar mode tracking between
FrameView and ScrollView.

10:53 Changeset [48063] by yael.aharon@nokia.com

WebCore: hostname and host are mixed up when manipulating anchor elements.
https://bugs.webkit.org/show_bug.cgi?id=28954

Patch by Yael Aharon <yael.aharon@nokia.com> on 2009-09-04
Reviewed by Darin Adler.

Swapped the implementation of host and hostname, and made sure not to return
the port number if it is default for the given protocol.
FireFox also avoids returning the protocol number if it is default.

Test: fast/dom/Element/hostname-host.html

10:19 Changeset [48062] by andersca@apple.com

Fix <rdar://problem/7192902>.

Reviewed by Darin Adler and Steve Falkenburg.

Add the necessary plumbing for having QTMovieWin use WebCore timers.

  • platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:

(WebCore::TaskTimer::initialize):
Create the timer and call QTMovieWin::setTaskTimerFuncs.

(WebCore::TaskTimer::setTaskTimerDelay):
Start the timer.

(WebCore::TaskTimer::stopTaskTimer):
Stop the timer.

(WebCore::TaskTimer::fired):
Call QTMovieWin::taskTimerFired().

(WebCore::MediaPlayerPrivate::load):
Initialize the Task timer.

  • platform/graphics/win/QTMovieWin.cpp:

(updateTaskTimer):
Call the global stopTaskTimer function and setTaskTimerDelay.

(QTMovieWin::taskTimerFired):
Make this a member function.

(QTMovieWin::setTaskTimerFuncs):
Set the global function pointers.

(QTMovieWin::initializeQuickTime):
(DllMain):
No need to use the QT shared timer.

  • platform/graphics/win/QTMovieWin.h:
10:08 Changeset [48061] by levin@chromium.org

Fix Chromium Win compile. Missing return statement in
WebCore::RenderThemeChromiumSkia::paintSliderThumb.
https://bugs.webkit.org/show_bug.cgi?id=28974

Patch by Tony Chang <tony@chromium.org> on 2009-09-04
Reviewed by David Levin.

No new tests, build fix.

  • rendering/RenderThemeChromiumSkia.cpp:

(WebCore::RenderThemeChromiumSkia::paintSliderThumb):

10:07 Changeset [48060] by aroben@apple.com

Make WebView function without a parent window

When WebView has no parent window, it becomes a message-only window,
which hides it from the screen and prevents it from appearing on the
taskbar.

Fixes <http://webkit.org/b/28971> <rdar://problem/4976998>
WebView::initWithFrame fails if there's no host window

Reviewed by Dave Hyatt.

  • WebView.cpp:

(WebView::initWithFrame): m_hostWindow is null, use HWND_MESSAGE as
our parent window, which will make us a message-only window.
(WebView::setHostWindow): If he new host window is null, use
HWND_MESSAGE as our parent window, which will make us a message-only
window.

10:06 Changeset [48059] by dglazkov@chromium.org

2009-09-04 Dimitri Glazkov <dglazkov@chromium.org>

Unreviewed, build fix.

[Chromium] Rolling out http://trac.webkit.org/changeset/48035, because it broke
the build.
https://bugs.webkit.org/show_bug.cgi?id=28696

10:02 Changeset [48058] by andersca@apple.com

Fix vcproj file.

  • WebCore.vcproj/WebCore.vcproj:
10:01 Changeset [48057] by hyatt@apple.com

WebCore: https://bugs.webkit.org/show_bug.cgi?id=28890, make simple user script injection work.

Reviewed by Adam Roben.

This patch adds new API for adding and removing user scripts from page groups. User scripts
are bundled together in isolated worlds (you can have multiple scripts together in the same
world).

Added userscripts/ directory for holding new tests (along with a simple test of script injection).

  • WebCore.base.exp:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/ScriptController.cpp:

(WebCore::ScriptController::evaluateInIsolatedWorld):

  • bindings/js/ScriptController.h:
  • bindings/v8/ScriptController.cpp:

(WebCore::ScriptController::evaluateInIsolatedWorld):

  • bindings/v8/ScriptController.h:
  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::finishedParsing):
(WebCore::FrameLoader::dispatchDocumentElementAvailable):

  • page/Frame.cpp:

(WebCore::Frame::injectUserScripts):
(WebCore::Frame::injectUserScriptsForWorld):

  • page/Frame.h:
  • page/PageGroup.cpp:

(WebCore::PageGroup::~PageGroup):
(WebCore::PageGroup::addUserScript):
(WebCore::PageGroup::removeUserContentForWorld):
(WebCore::PageGroup::removeAllUserContent):

  • page/PageGroup.h:

(WebCore::PageGroup::userScripts):

  • page/UserScript.h: Added.

(WebCore::UserScript::UserScript):
(WebCore::UserScript::source):
(WebCore::UserScript::url):
(WebCore::UserScript::patterns):
(WebCore::UserScript::worldID):
(WebCore::UserScript::injectionTime):

  • page/UserScriptTypes.h: Added.

(WebCore::):

WebKit/mac: https://bugs.webkit.org/show_bug.cgi?id=28890, make simple user script injection work.

Reviewed by Adam Roben.

This patch adds new API for adding and removing user scripts from page groups. User scripts
are bundled together in isolated worlds (you can have multiple scripts together in the same
world).

Added userscripts/ directory for holding new tests (along with a simple test of script injection).

  • WebView/WebView.mm:

(+[WebView _addUserScriptToGroup:source:url:worldID:patterns:injectionTime:]):
(+[WebView _removeUserContentFromGroup:worldID:]):
(+[WebView _removeAllUserContentFromGroup:]):

  • WebView/WebViewPrivate.h:

LayoutTests: https://bugs.webkit.org/show_bug.cgi?id=28890, make simple user script injection work.

Reviewed by Adam Roben.

This patch adds new API for adding and removing user scripts from page groups. User scripts
are bundled together in isolated worlds (you can have multiple scripts together in the same
world).

Added userscripts/ directory for holding new tests (along with a simple test of script injection).

  • platform/mac/userscripts: Added.
  • platform/mac/userscripts/script-run-at-end-expected.txt: Added.
  • userscripts: Added.
  • userscripts/script-run-at-end.html: Added.
09:42 Changeset [48056] by abarth@webkit.org

Added missing ;

09:34 Changeset [48055] by ap@apple.com

Reviewed by Eric Seidel.

https://bugs.webkit.org/show_bug.cgi?id=26402
Crashes when using a detached DocumentType node

Test: fast/dom/DOMImplementation/detached-doctype.html

DocumentType nodes are the only one that can have null document(), and they can never have
children, so they are a degenerate case for NodeLists.

  • dom/Node.cpp: (WebCore::Node::childNodes): Don't try register node list with document if there's no document. Since there are no changes possible for a DocumentType's node list, this is not necessary. (WebCore::Node::registerDynamicNodeList): Ditto. (WebCore::Node::unregisterDynamicNodeList): Ditto. I couldn't find a scenario where this was invoked for a DocumentType node, but I also couldn't prove that it can't be (the de-registration code path that I saw taken was via Node destructor, and that already has a null check for document).
  • bindings/js/JSNodeCustom.cpp: (WebCore::JSNode::addEventListener): Bail out if there is no document (just as we already do if there is no window). (WebCore::JSNode::removeEventListener): Ditto.
09:34 Changeset [48054] by abarth@webkit.org

2009-09-04 Adam Barth <abarth@webkit.org>

Unreviewed attempt at a build fix.

Added missing include.

  • WebCoreSupport/WebFrameLoaderClient.cpp:
09:23 Changeset [48053] by abarth@webkit.org

2009-09-04 Adam Barth <abarth@webkit.org>

Unreviewed attempt at a build fix.

Fix typo of IWebFrameLoadDelegatePrivate2 and make
IWebFrameLoadDelegatePrivate inherit from IWebFrameLoadDelegatePrivate
as requestd by Adam Roben.

  • Interfaces/IWebFrameLoadDelegatePrivate2.idl:
  • WebCoreSupport/WebFrameLoaderClient.cpp: (WebFrameLoaderClient::didDisplayInsecureContent): (WebFrameLoaderClient::didRunInsecureContent):

2009-09-04 Adam Barth <abarth@webkit.org>

Unreviewed build fix.

Update declaration of FrameLoadDelegate to reflect that
IWebFrameLoadDelegatePrivate2 inherits from
IWebFrameLoadDelegatePrivate.

  • DumpRenderTree/win/FrameLoadDelegate.h:
08:53 Changeset [48052] by vestbo@webkit.org

[Qt] Fix brainfart in r48050, tests should have paths

Rubber-stamped by Simon Hausmann.

  • platform/qt/Skipped:
08:49 Changeset [48051] by abarth@webkit.org

2009-09-04 Adam Barth <abarth@webkit.org>

Reviewed by Eric Seidel.

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

Plumb mixed content notifications to WebFrameLoadDelegatePrivate.

  • WebCoreSupport/WebFrameLoaderClient.mm: (WebFrameLoaderClient::didDisplayInsecureContent): (WebFrameLoaderClient::didRunInsecureContent):
  • WebView/WebDelegateImplementationCaching.h:
  • WebView/WebFrameLoadDelegatePrivate.h: Added.

2009-09-04 Adam Barth <abarth@webkit.org>

Reviewed by Eric Seidel.

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

Plumb mixed content notifications to IWebFrameLoadDelegatePrivate.

  • Interfaces/IWebFrameLoadDelegatePrivate2.idl: Added.
  • Interfaces/WebKit.idl:
  • WebCoreSupport/WebFrameLoaderClient.cpp: (WebFrameLoaderClient::didDisplayInsecureContent): (WebFrameLoaderClient::didRunInsecureContent):
  • WebKit.vcproj/Interfaces.vcproj:

2009-09-04 Adam Barth <abarth@webkit.org>

Reviewed by Eric Seidel.

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

Add testing instrumentation for mixed content.

  • DumpRenderTree/mac/FrameLoadDelegate.mm: (-[FrameLoadDelegate webView:]): (-[FrameLoadDelegate webView:didRunInsecureContent:]):
  • DumpRenderTree/win/FrameLoadDelegate.cpp: (descriptionSuitableForTestResult): (FrameLoadDelegate::QueryInterface): (FrameLoadDelegate::didDisplayInsecureContent): (FrameLoadDelegate::didRunInsecureContent):
  • DumpRenderTree/win/FrameLoadDelegate.h:
08:34 Changeset [48050] by vestbo@webkit.org

[Qt] Skip tests failing due to missing DRT features

Rubber-stamped by Simon Hausmann.

  • platform/qt/Skipped:
07:04 Changeset [48049] by xan@webkit.org

2009-09-04 Xan Lopez <xlopez@igalia.com>

Reviewed by Gustavo Noronha.

[GTK] loadFinished never emitted
https://bugs.webkit.org/show_bug.cgi?id=28935

Do not report errors right away from
ResourceHandle::start. Instead return true and schedule an error
to be reported in the handle later. Otherwise WebCore gets
confused and thinks the resource never finished loading, making it
not emit the finished status.

  • platform/network/soup/ResourceHandleSoup.cpp: (WebCore::startHttp): (WebCore::):
07:00 Changeset [48048] by yong.li@torchmobile.com

2009-09-03 Yong Li <yong.li@torchmobile.com>

Reviewed by David Levin.

Remove unnecessary dependency on unistd.h
https://bugs.webkit.org/show_bug.cgi?id=28962

  • runtime/Completion.cpp:
03:28 Changeset [48047] by eric@webkit.org

2009-09-04 Ben Murdoch <benm@google.com>

Reviewed by Eric Seidel.

[V8] DOM Storage bindings: Event Handler should create StorageEvents
https://bugs.webkit.org/show_bug.cgi?id=28942

Tests:
Causes the following tests that were failing with V8 to pass:

  • storage/domstorage/localstorage/onstorage-attribute-setwindow.html
  • storage/domstorage/localstorage/complex-keys.html
  • storage/domstorage/localstorage/onstorage-attribute-markup.html
  • storage/domstorage/localstorage/simple-events.html
  • storage/domstorage/localstorage/onstorage-attribute-set-attribute.html
  • storage/domstorage/localstorage/index-get-and-set.html
  • storage/domstorage/sessionstorage/onstorage-attribute-setwindow.html
  • storage/domstorage/sessionstorage/onstorage-attribute-markup.html
  • storage/domstorage/sessionstorage/simple-events.html
  • storage/domstorage/sessionstorage/onstorage-attribute-set-attribute.html
  • storage/domstorage/sessionstorage/index-get-and-set.html

Code changes:

  • bindings/v8/V8DOMWrapper.cpp: (WebCore::V8DOMWrapper::convertEventToV8Object): Create StorageEvents.
  • bindings/v8/custom/V8StorageCustom.cpp: (WebCore::storageGetter): Check if we are retrieving the length property and return the number of items in the object rather than a property named length when invoking the getItem() member of local/sessionStorage.
02:04 Changeset [48046] by pfeldman@chromium.org

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

Reviewed by Timothy Hatcher.

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

  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • inspector/InspectorBackend.cpp: (WebCore::InspectorBackend::dispatchOnInjectedScript):
  • inspector/InspectorBackend.h:
  • inspector/InspectorBackend.idl:
  • inspector/front-end/ConsoleView.js: (WebInspector.ConsoleView.prototype.doEvalInWindow): (WebInspector.ConsoleView.prototype._formatarray): (WebInspector.ConsoleView.prototype._formatnode):
  • inspector/front-end/DOMAgent.js:
  • inspector/front-end/ElementsPanel.js: (WebInspector.ElementsPanel.this.treeOutline.focusedNodeChanged): (WebInspector.ElementsPanel.prototype.searchCanceled): (WebInspector.ElementsPanel.prototype.performSearch):
  • inspector/front-end/InjectedScript.js: (InjectedScript.dispatch):
  • inspector/front-end/InjectedScriptAccess.js: Added. (InjectedScriptAccess._installHandler.InjectedScriptAccess.methodName): (InjectedScriptAccess._installHandler):
  • inspector/front-end/MetricsSidebarPane.js: (WebInspector.MetricsSidebarPane.prototype.update): (WebInspector.MetricsSidebarPane.prototype.editingCommitted):
  • inspector/front-end/ObjectPropertiesSection.js: (WebInspector.ObjectPropertiesSection.prototype.update): (WebInspector.ObjectPropertyTreeElement.prototype.onpopulate): (WebInspector.ObjectPropertyTreeElement.prototype.applyExpression):
  • inspector/front-end/PropertiesSidebarPane.js: (WebInspector.PropertiesSidebarPane.prototype.update):
  • inspector/front-end/ResourcesPanel.js: (WebInspector.ResourceSidebarTreeElement.prototype.ondblclick):
  • inspector/front-end/ScriptsPanel.js: (WebInspector.ScriptsPanel.prototype.doEvalInCallFrame):
  • inspector/front-end/StylesSidebarPane.js: (WebInspector.StylesSidebarPane.prototype.update): (WebInspector.StylePropertiesSection.prototype.editingSelectorCommitted): (WebInspector.BlankStylePropertiesSection.prototype.editingCommitted): (WebInspector.StylePropertyTreeElement.prototype):
  • inspector/front-end/inspector.html:
01:47 Changeset [48045] by eric@webkit.org

2009-09-04 Tony Chang <tony@chromium.org>

Reviewed by Eric Seidel.

Implement <input type="range"> for Chromium Linux by painting
the slider and the thumb using skia.
https://bugs.webkit.org/show_bug.cgi?id=28928

Covered by existing tests (we're currently hitting an assert for them).

  • rendering/RenderThemeChromiumLinux.cpp: (WebCore::RenderThemeChromiumLinux::adjustSliderThumbSize):
  • rendering/RenderThemeChromiumLinux.h:
  • rendering/RenderThemeChromiumSkia.cpp: (WebCore::drawVertLine): (WebCore::drawHorizLine): (WebCore::drawBox): (WebCore::RenderThemeChromiumSkia::paintSliderTrack): (WebCore::RenderThemeChromiumSkia::paintSliderThumb):
  • rendering/RenderThemeChromiumSkia.h:
01:40 Changeset [48044] by eric@webkit.org

2009-09-04 Albert Bachand <albertb@google.com>

Reviewed by Eric Seidel.

Modify the condition regarding the key modifier for opening combo
boxes under GTK from just PLATFORM(GTK) to also look for
(PLATFORM(CHROMIUM) && PLATFORM(LINUX)).

  • WebCore/dom/SelectElement.cpp:
  • WebCore/manual-tests/select-popup-on-spacebar.html:
01:32 Changeset [48043] by eric@webkit.org

2009-09-04 Kent Tamura <tkent@chromium.org>

Reviewed by Eric Seidel.

Tests for <input type=color> validation.
https://bugs.webkit.org/show_bug.cgi?id=28966

  • fast/forms/ValidityState-patternMismatch-unsupported-expected.txt: Added.
  • fast/forms/ValidityState-patternMismatch-unsupported.html: Added.
  • fast/forms/ValidityState-typeMismatch-color-expected.txt: Added.
  • fast/forms/ValidityState-typeMismatch-color.html: Added.
  • fast/forms/resources/ValidityState-patternMismatch-unsupported.js: Added.
  • fast/forms/resources/ValidityState-typeMismatch-color.js: Added.

2009-09-04 Kent Tamura <tkent@chromium.org>

Reviewed by Eric Seidel.

Tests: fast/forms/ValidityState-patternMismatch-unsupported.html

fast/forms/ValidityState-typeMismatch-color.html

  • html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::valueMissing): (WebCore::HTMLInputElement::patternMismatch): (WebCore::HTMLInputElement::setInputType): (WebCore::HTMLInputElement::formControlType): (WebCore::HTMLInputElement::saveFormControlState): (WebCore::HTMLInputElement::restoreFormControlState): (WebCore::HTMLInputElement::accessKeyAction): (WebCore::HTMLInputElement::rendererIsNeeded): (WebCore::HTMLInputElement::createRenderer): (WebCore::HTMLInputElement::appendFormData): (WebCore::HTMLInputElement::valueWithDefault): (WebCore::HTMLInputElement::storesValueSeparateFromAttribute): (WebCore::HTMLInputElement::defaultEventHandler): (WebCore::HTMLInputElement::isRequiredFormControl): (WebCore::HTMLInputElement::dataList):
  • html/HTMLInputElement.h: (WebCore::HTMLInputElement::): (WebCore::HTMLInputElement::isTextField):
  • html/ValidityState.cpp: (WebCore::ValidityState::typeMismatch): (WebCore::ValidityState::isValidColorString):
  • html/ValidityState.h:
01:07 Changeset [48042] by levin@chromium.org

[V8] Crash when updating document cache
https://bugs.webkit.org/show_bug.cgi?id=28965

Patch by Mads Ager <ager@chromium.org> on 2009-09-04
Reviewed by David Levin.

Initialization of a V8 JavaScript context can fail. When that
happens, do not attempt to update the document wrapper cache.

This code path is exercised by http/tests/security/javascriptURL/javascriptURL-in-new-iframe.html.

  • bindings/v8/V8Proxy.cpp:

(WebCore::V8Proxy::updateDocument):

00:50 Changeset [48041] by eric@webkit.org

2009-09-04 Laszlo Gombos <laszlo.1.gombos@nokia.com>

Reviewed by Eric Seidel.

[Qt] Fix tst_QWebPage::database autotest failure
https://bugs.webkit.org/show_bug.cgi?id=28961

Make sure that the test case enables the feature before
the feature gets tested

  • tests/qwebpage/tst_qwebpage.cpp: (tst_QWebPage::database):
00:15 Changeset [48040] by eric@webkit.org

2009-09-04 Yaar Schnitman <yaar@chromium.org>

Reviewed by Eric Seidel.

Two bugs:

https://bugs.webkit.org/show_bug.cgi?id=25489
CSS property background-position is now serialized in shorthand string as
background-position-x background-position-y, as the specification requires
(See http://www.w3.org/TR/2008/WD-css3-background-20080910/#the-background-position).

https://bugs.webkit.org/show_bug.cgi?id=26541
CSS background-color is now be serialized before other background properties,
as CSS specification requires (See http://dev.w3.org/csswg/cssom/#css-value).

An existing layout test that accepted wrong order and skipped position test
had to be modified.

  • fast/dom/background-shorthand-csstext-expected.txt:
  • fast/dom/background-shorthand-csstext.html:

2009-09-04 Yaar Schnitman <yaar@chromium.org>

Reviewed by Eric Seidel.

Two bugs:

https://bugs.webkit.org/show_bug.cgi?id=25489
CSS property background-position is now serialized in shorthand string as
background-position-x background-position-y, as the specification requires
(See http://www.w3.org/TR/2008/WD-css3-background-20080910/#the-background-position).

https://bugs.webkit.org/show_bug.cgi?id=26541
CSS background-color is now be serialized before other background properties,
as CSS specification requires (See http://dev.w3.org/csswg/cssom/#css-value).

An existing layout test that accepted wrong order and skipped position test
had to be modified.

  • css/CSSMutableStyleDeclaration.cpp: (WebCore::CSSMutableStyleDeclaration::getPropertyValue):
00:07 Changeset [48039] by eric@webkit.org

2009-09-04 Benjamin C Meyer <benjamin.meyer@torchmobile.com>

Reviewed by Eric Seidel.

Any QtWebKit application crashes on exit if the inspector is
used during the session rather then exiting.

If a QWebView has a QWebPage that is destroyed the QWebView
does not update its pointer and will crash the next time
it access the page pointers (such as in its destructor).

InspectorClientView should not call deleteLater when the page
is destroyed because it does not have a parent and is a top
level widget. close() needs to be called so that QApplication
can exit the application if quitOnLastWindowClosed is set
and a InspectorClientView is the last window, otherwise
the application will never exit.

  • Api/qwebview.cpp: (QWebViewPrivate::_q_pageDestroyed): (QWebView::setPage):
  • Api/qwebview.h:
  • WebCoreSupport/InspectorClientQt.cpp: (WebCore::InspectorClientView::InspectorClientView):

09/03/09:

22:24 Changeset [48038] by eric@webkit.org

2009-09-03 Kent Tamura <tkent@chromium.org>

Reviewed by David Levin.

Test for HTMLTextAreaElement.textLength
https://bugs.webkit.org/show_bug.cgi?id=28929

  • fast/forms/resources/textarea-textlength.js: Added.
  • fast/forms/textarea-textlength-expected.txt: Added.
  • fast/forms/textarea-textlength.html: Added.

2009-09-03 Kent Tamura <tkent@chromium.org>

Reviewed by David Levin.

Add support for HTMLTextAreaElement.textLength
https://bugs.webkit.org/show_bug.cgi?id=28929

Test: fast/forms/textarea-textlength.html

  • html/HTMLTextAreaElement.h: (WebCore::HTMLTextAreaElement::textLength):
  • html/HTMLTextAreaElement.idl:
17:27 Changeset [48037] by ap@apple.com

Reviewed by Darin Adler.

<rdar://problem/7180197>, https://bugs.webkit.org/show_bug.cgi?id=28822
REGRESSION(r31231): Creating document with current document's DOCTYPE causes crashes

Test: fast/dom/DOMImplementation/createDocument-with-used-doctype.html

  • dom/DOMImplementation.cpp: (WebCore::DOMImplementation::createDocument): Even though we cannot raise an exception immediately out of fear of breaking Acid3, we shouldn't use a DocumentType node in two documents.
16:57 Changeset [48036] by beidson@apple.com

WebCore: Page Cache should support pages with Frames.
https://bugs.webkit.org/show_bug.cgi?id=13631

Reviewed by Sam Weinig.

Tests: fast/events/pageshow-pagehide-on-back-cached-with-frames.html

fast/loader/frames-with-unload-handlers-in-page-cache.html

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::canCachePageContainingThisFrame):
(WebCore::FrameLoader::logCanCacheFrameDecision):

LayoutTests: Page Cache should support pages with Frames.
https://bugs.webkit.org/show_bug.cgi?id=13631

Reviewed by Sam Weinig.

  • fast/events/pageshow-pagehide-on-back-cached-with-frames-expected.txt: Added.
  • fast/events/pageshow-pagehide-on-back-cached-with-frames.html: Added.
  • fast/events/resources/pageshow-pagehide-subframe-cachable.html: Added.
  • fast/events/resources/pageshow-pagehide-subsubframe-cachable.html: Added.
  • fast/loader/frames-with-unload-handlers-in-page-cache-expected.txt: Added.
  • fast/loader/frames-with-unload-handlers-in-page-cache.html: Added.
  • fast/loader/resources/notify-done.html: Added.
  • fast/loader/resources/subframe-with-subsubframe-with-unload-handler.html: Added.
  • fast/loader/resources/subframe-with-unload-handler.html: Added.
16:23 Changeset [48035] by eric@webkit.org

2009-09-03 Steve VanDeBogart <vandebo@chromium.org>

Reviewed by Eric Seidel.

Check that middle click triggers an onpaste event in Linux.
https://bugs.webkit.org/show_bug.cgi?id=28696

  • platform/gtk/editing/pasteboard: Added.
  • platform/gtk/editing/pasteboard/middle-click-onpaste-expected.txt: Added.
  • platform/gtk/editing/pasteboard/resources: Added.
  • platform/gtk/editing/pasteboard/resources/TEMPLATE.html: Added.
  • platform/gtk/editing/pasteboard/resources/middle-click-onpaste.js: Added. (handlePaste):

2009-09-03 Steve VanDeBogart <vandebo@chromium.org>

Reviewed by Eric Seidel.

Handle middle click in Chromium like QT
https://bugs.webkit.org/show_bug.cgi?id=28696

Tested by middle-click-onpaste.html.

  • platform/Pasteboard.h:
  • platform/chromium/ChromiumBridge.h:
  • platform/chromium/ClipboardChromium.cpp: (WebCore::ClipboardChromium::getData):
  • platform/chromium/PasteboardChromium.cpp: (WebCore::Pasteboard::Pasteboard): (WebCore::Pasteboard::isSelectionMode): (WebCore::Pasteboard::setSelectionMode): (WebCore::Pasteboard::canSmartReplace): (WebCore::Pasteboard::plainText): (WebCore::Pasteboard::documentFragment):
  • platform/chromium/PasteboardPrivate.h: (WebCore::PasteboardPrivate::):
16:10 Changeset [48034] by beidson@apple.com

More partial work towards "Page Cache should support pages with Frames"
https://bugs.webkit.org/show_bug.cgi?id=13631

Reviewed by Sam Weinig.

Fix a bug where subframes weren't asked if they were cacheable.

No new tests, especially since page caching for frames isn't turned on yet.
A layout test will come in my next patch, which enables frames in the page cache.

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::canCachePageContainingThisFrame):

16:08 Changeset [48033] by abarth@webkit.org

2009-09-03 Adam Barth <abarth@webkit.org>

Unreviewed build fix.

Change notImplemented() to a FIXME.

  • WebCoreSupport/WebFrameLoaderClient.mm: (WebFrameLoaderClient::didDisplayInsecureContent): (WebFrameLoaderClient::didRunInsecureContent):
15:59 Changeset [48032] by abarth@webkit.org

2009-09-03 Adam Barth <abarth@webkit.org>

Reviewed by eric@webkit.org.

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

Added mixed content methods to FrameLoaderClient.

  • loader/EmptyClients.h: (WebCore::EmptyFrameLoaderClient::didDisplayInsecureContent): (WebCore::EmptyFrameLoaderClient::didRunInsecureContent):
  • loader/FrameLoaderClient.h:

2009-09-03 Adam Barth <abarth@webkit.org>

Reviewed by eric@webkit.org.

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

Stub implementations of mixed content methods of FrameLoaderClient.

  • WebCoreSupport/FrameLoaderClientGtk.cpp: (WebKit::FrameLoaderClient::didDisplayInsecureContent): (WebKit::FrameLoaderClient::didRunInsecureContent):
  • WebCoreSupport/FrameLoaderClientGtk.h:

2009-09-03 Adam Barth <abarth@webkit.org>

Reviewed by eric@webkit.org.

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

Stub implementations of mixed content methods of FrameLoaderClient.

  • WebCoreSupport/WebFrameLoaderClient.h:
  • WebCoreSupport/WebFrameLoaderClient.mm: (WebFrameLoaderClient::didDisplayInsecureContent): (WebFrameLoaderClient::didRunInsecureContent):

2009-09-03 Adam Barth <abarth@webkit.org>

Reviewed by eric@webkit.org.

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

Stub implementations of mixed content methods of FrameLoaderClient.

  • WebCoreSupport/FrameLoaderClientQt.cpp: (WebCore::FrameLoaderClientQt::didDisplayInsecureContent): (WebCore::FrameLoaderClientQt::didRunInsecureContent):
  • WebCoreSupport/FrameLoaderClientQt.h:

2009-09-03 Adam Barth <abarth@webkit.org>

Reviewed by eric@webkit.org.

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

Stub implementations of mixed content methods of FrameLoaderClient.

  • WebCoreSupport/WebFrameLoaderClient.cpp: (WebFrameLoaderClient::didDisplayInsecureContent): (WebFrameLoaderClient::didRunInsecureContent):
  • WebCoreSupport/WebFrameLoaderClient.h:

2009-09-03 Adam Barth <abarth@webkit.org>

Reviewed by eric@webkit.org.

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

Stub implementations of mixed content methods of FrameLoaderClient.

  • WebKitSupport/FrameLoaderClientWx.cpp: (WebCore::FrameLoaderClientWx::didDisplayInsecureContent): (WebCore::FrameLoaderClientWx::didRunInsecureContent):
  • WebKitSupport/FrameLoaderClientWx.h:
14:37 Changeset [48031] by xan@webkit.org

2009-09-03 Xan Lopez <xlopez@igalia.com>

Reviewed by Gustavo Noronha.

Access private member variables directly instead of using the
accessor.

  • WebCoreSupport/FrameLoaderClientGtk.cpp: (WebKit::FrameLoaderClient::createFrame): (WebKit::FrameLoaderClient::windowObjectCleared):
13:25 Changeset [48030] by atwilson@chromium.org

Exception.toString() on Qt seems to print out a different value than other platforms.
https://bugs.webkit.org/show_bug.cgi?id=28952

Reviewed by Dave Levin.

  • platform/qt/Skipped:

Disabled new worker tests that rely on the string format of DOM exceptions until bug #28952 is resolved.

12:38 Changeset [48029] by kevino@webkit.org

Reviewed by Kevin Ollivier.

[wx] Frames support
https://bugs.webkit.org/show_bug.cgi?id=19041

12:35 Changeset [48028] by yael.aharon@nokia.com

[Qt] Page content is not displayed in case of HTTP status error
https://bugs.webkit.org/show_bug.cgi?id=28949

Patch by Yael Aharon <yael.aharon@nokia.com> on 2009-09-03
Reviewed by Simon Hausmann.

If the server sent content, show it to the user instead of an error,
even if the HTTP status code is not success.

  • platform/network/qt/QNetworkReplyHandler.cpp:
  • platform/network/qt/QNetworkReplyHandler.h:
12:07 Changeset [48027] by ddkilzer@apple.com

<http://webkit.org/b/28880> svn-apply --force doesn't actually work

Reviewed by Eric Seidel.

This fixes "svn-apply --force" and adds unit tests for the
scm.apply_patch() method which uses this script.

  • Scripts/svn-apply: Created $globalExitCode variable that defaults to 0. Exit with a value of $globalExitCode when the script is finished. (applyPatch): Ignore a non-zero $exitCode if $force is true, but set $globalExitCode to $exitCode so that svn-apply exits with a non-zero status if any patches did not apply cleanly. Also print out the actual patch command if $force was not true.
  • Scripts/modules/scm.py: (scripts_directory): Added. Extracted from script_path(). (script_path): Extracted scripts_directory().
  • Scripts/modules/scm_unittest.py: Import urllib. (SVNTestRepository.setup): Save the original working directory in test_object since this represents the WebKit repository from where the unit tests are run. (SCMTest): Created new super class to hold utility methods. (SCMTest._create_patch): Creates a patch file on disk and a dictionary for use with scm.svn_apply(). (SCMTest._setup_webkittools_scripts_symlink): Sets up a symlink back to WebKitTools/Scripts in the test repository so that scm.apply_patch() is able to find the svn-apply script. (SVNTest): Inherit from SCMTest instead of unittest.TestCase. (SVNTest.tearDown): Make sure to change directories back to the original_path before the next test. (SVNTest.test_apply_svn_patch): New test case for applying an svn patch with scm.apply_patch(). (SVNTest.test_apply_svn_patch_force): New test case for applying an svn patch with scm.apply_patch() that conflicts. (GitTest): Inherit from SCMTest instead of unittest.TestCase. (GitTest.tearDown): Make sure to change directories back to the original_path before the next test. (GitTest.test_apply_git_patch): New test case for applying a git patch with scm.apply_patch(). (GitTest.test_apply_git_patch_force): New test case for applying a git patch with scm.apply_patch() that conflicts.
11:36 Changeset [48026] by atwilson@chromium.org

Need to update v8 bindings to support passing multiple ports to postMessage()
https://bugs.webkit.org/show_bug.cgi?id=28839

Reviewed by Dimitri Glazkov.

Added support for passing MessagePortArray to v8 bindings.

New tests that now pass with V8:

fast/events/message-port-multi.html
fast/workers/worker-context-multi-port.html
fast/workers/worker-multi-port.html

  • WebCore.gypi:

Added V8MessageEventCustom.cpp and V8MessagePortCustom.h

  • bindings/v8/custom/V8CustomBinding.h:

Added custom postMessage() handlers for various classes.

  • bindings/v8/custom/V8DOMWindowCustom.cpp:

(WebCore::DOMWindowPostMessage):
Added custom handler that supports MessagePortArray.

  • bindings/v8/custom/V8DedicatedWorkerContextCustom.cpp:

(WebCore::DedicatedWorkerContextPostMessage):
Added custom handler that supports MessagePortArray.

  • bindings/v8/custom/V8MessageEventCustom.cpp: Added.

(WebCore::MessageEventPorts):
Added getter for ports attribute.
(WebCore::MessageEventInitMessageEvent):
Added custom handler that supports MessagePortArray.

  • bindings/v8/custom/V8MessagePortCustom.cpp:

(WebCore::MessagePortPostMessage):
Added custom handler that supports MessagePortArray.
(WebCore::getMessagePortArray):
Added helper function that supports converting from a sequence-like object to a MessagePortArray.

  • bindings/v8/custom/V8MessagePortCustom.h: Added.

Added declaration for getMessagePortArray().

  • bindings/v8/custom/V8WorkerCustom.cpp:

(WebCore::WorkerPostMessage):
Added custom handler that supports MessagePortArray.

11:36 Changeset [48025] by atwilson@chromium.org

WebCore: Need to update JS bindings and IDL files to support multiple message ports in postMessage()
https://bugs.webkit.org/show_bug.cgi?id=28460

Reviewed by Sam Weinig.

Added new toJSSequence() API which validates that a JSValue meets the WebIDL criteria for a sequence.

Tests: fast/events/message-port-multi.html

fast/workers/worker-context-multi-port.html
fast/workers/worker-multi-port.html

  • GNUmakefile.am:
  • WebCore.gypi:
  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • WebCoreSources.bkl:

Added JSMessagePortCustom.h and JSMessageEventCustom.cpp.

  • bindings/js/JSDOMBinding.cpp:

(WebCore::toJSSequence):
Added toJSSequence() API to do validation on sequence-like objects per WebIDL.

  • bindings/js/JSDOMBinding.h:
  • bindings/js/JSDOMWindowCustom.cpp:

(WebCore::JSDOMWindow::postMessage):
Added custom handler for postMessage() that handles being passed MessagePortArrays.

  • bindings/js/JSDedicatedWorkerContextCustom.cpp:

(WebCore::JSDedicatedWorkerContext::postMessage):
Added custom handler for postMessage() that handles being passed MessagePortArrays.

  • bindings/js/JSMessageEventCustom.cpp: Added.

(WebCore::JSMessageEvent::ports):
Added custom ports() getter that converts from MessagePortArray to JSArray.
(WebCore::JSMessageEvent::initMessageEvent):
Added support for passing a MessagePortArray.

  • bindings/js/JSMessagePortCustom.cpp:

(WebCore::JSMessagePort::postMessage):
Added custom handler for postMessage() that handles being passed MessagePortArray.
(WebCore::fillMessagePortArray):
New helper routine that validates/converts from a JS sequence o a WebCore::MessagePortArray.

  • bindings/js/JSMessagePortCustom.h: Added.
  • bindings/js/JSWorkerCustom.cpp:

(WebCore::JSWorker::postMessage):
Added custom handler for postMessage() that handles being passed MessagePortArray.

  • dom/MessageEvent.cpp:
  • dom/MessageEvent.h:

(WebCore::MessageEvent::ports):
Changed ports() to return a MessagePortArray* since this value can be null.

  • dom/MessageEvent.idl:

Updated IDL to match HTML5 spec (now accepts MessagePortArrays instead of a solitary MessagePort).

  • dom/MessagePort.cpp:
  • dom/MessagePort.h:
  • dom/MessagePort.idl:

Updated IDL to match HTML5 spec (postMessage() now accepts MessagePortArrays instead of a solitary MessagePort).

  • page/DOMWindow.h:
  • page/DOMWindow.idl:

Updated IDL to match HTML5 spec (postMessage() now accepts MessagePortArrays instead of a solitary MessagePort).

  • workers/DedicatedWorkerContext.cpp:
  • workers/DedicatedWorkerContext.h:
  • workers/DedicatedWorkerContext.idl:

Updated IDL to match HTML5 spec (postMessage() now accepts MessagePortArrays instead of a solitary MessagePort).

  • workers/Worker.cpp:
  • workers/Worker.h:
  • workers/Worker.idl:

Updated IDL to match HTML5 spec (postMessage() now accepts MessagePortArrays instead of a solitary MessagePort).

LayoutTests: Need to update JS bindings and IDL files to support multiple message ports in postMessage()
https://bugs.webkit.org/show_bug.cgi?id=28460

Reviewed by Sam Weinig.

Updated layout tests to match new postMessage() and MessageEvent APIs.

Added new layout tests to test sending/receiving multiple ports.

  • fast/dom/Window/window-postmessage-args-expected.txt:
  • fast/dom/Window/window-postmessage-args.html:

Updated to match new postMessage API.

  • fast/events/init-events-expected.txt:
  • fast/events/message-channel-gc-4.html:

Updated to match new postMessage API.

  • fast/events/message-port-clone.html:

Updated to match new postMessage API.

  • fast/events/message-port-deleted-document.html:

Updated to match new postMessage API.

  • fast/events/message-port-deleted-frame.html:

Updated to match new postMessage API.

  • fast/events/message-port-inactive-document.html:

Updated to match new postMessage API.

  • fast/events/message-port-multi-expected.txt: Added.
  • fast/events/message-port-multi.html: Added.

Added tests for various cases of sending multiple ports.

  • fast/events/message-port.html:

Updated to match new postMessage API.

  • fast/events/resources/init-events.js:

Added tests for sending ports to initMessageEvent()

  • fast/events/resources/message-port-iframe.html:
  • fast/events/resources/message-port-multi.js: Added.

Added tests for various cases of sending multiple ports.

  • fast/workers/resources/shared-worker-common.js:

(onconnect):
Updated to reflect new MessageEvent API.

  • fast/workers/resources/shared-worker-script-error.js:

(onconnect):
Updated to reflect new MessageEvent API.

  • fast/workers/resources/worker-cloneport.js:

(onmessage):
Updated to reflect new MessageEvent API.

  • fast/workers/resources/worker-context-multi-port.js: Added.

(worker.onmessage):
Added tests for various cases of sending multiple ports.

  • fast/workers/resources/worker-context-thread-multi-port.js: Added.

Added tests for various cases of sending multiple ports.

  • fast/workers/resources/worker-messageport.js:

(onmessage):
Updated to reflect new MessageEvent API.

  • fast/workers/resources/worker-multi-port.js: Added.

(worker.onmessage):
Added tests for various cases of sending multiple ports.

  • fast/workers/resources/worker-thread-multi-port.js: Added.

(onmessage):
Worker-thread side of multiple port layout test.
(testPassed):
(testFailed):

  • fast/workers/worker-cloneport.html:
  • fast/workers/worker-context-multi-port-expected.txt: Added.
  • fast/workers/worker-context-multi-port.html: Added.

Added tests for sending multiple ports from the worker thread.

  • fast/workers/worker-messageport-expected.txt:
  • fast/workers/worker-messageport-gc.html:
  • fast/workers/worker-messageport.html:
  • fast/workers/worker-multi-port-expected.txt: Added.
  • fast/workers/worker-multi-port.html: Added.
09:54 Changeset [48024] by pfeldman@chromium.org

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

Reviewed by Timothy Hatcher.

WebInspector: Do not query non-function call frames for function name.

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

  • inspector/front-end/InjectedScript.js: (InjectedScript.CallFrameProxy): (InjectedScript.CallFrameProxy.prototype._wrapScopeChain):
09:52 Changeset [48023] by sullivan@apple.com
  • StringsNotToBeLocalized.txt:

Brought this file up to date.

Reviewed by Adam Roben

09:51 Changeset [48022] by pfeldman@chromium.org

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

Reviewed by Timothy Hatcher.

Crash after typing "clear" and pressing return in inspector console.

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

  • inspector/front-end/InjectedScript.js: (InjectedScript._clearConsoleMessages): (InjectedScript._inspectObject): (InjectedScript._ensureCommandLineAPIInstalled):
09:09 Changeset [48021] by vestbo@webkit.org

[Qt] Skip a couple of failing layout-tests

Rubber-stamped by Ariya Hidayat.

We skip most of the D&D tests already, and the animation test
seems to be flakey on our platform since the commit that triggered
it only touched V8 bindings.

  • platform/qt/Skipped:
06:56 Changeset [48020] by eric@webkit.org

2009-09-03 Vitaly Repeshko <vitalyr@chromium.org>

Reviewed by Adam Barth.

[V8] Squeezed out some performance from string conversion.
https://bugs.webkit.org/show_bug.cgi?id=28945

  • bindings/v8/V8Binding.cpp: (WebCore::WebCoreStringResource::WebCoreStringResource): (WebCore::WebCoreStringResource::~WebCoreStringResource): (WebCore::WebCoreStringResource::data): (WebCore::WebCoreStringResource::length): (WebCore::WebCoreStringResource::atomicString): (WebCore::WebCoreStringResource::string): Avoid calling virtual length method. Be more explicit with external memory computation. Avoid function calls in data and length. (WebCore::): (WebCore::v8StringToWebCoreString): (WebCore::v8StringToAtomicWebCoreString): (WebCore::v8NonStringValueToWebCoreString): (WebCore::v8NonStringValueToAtomicWebCoreString): Avoid extra calls of WebCoreStringResource::toString. When AtomicString is computed pass it immediately when constructing WebCoreStringResource. Use inline buffer for small strings.
  • bindings/v8/V8Binding.h: (WebCore::v8ValueToWebCoreString): (WebCore::v8ValueToAtomicWebCoreString): (WebCore::toString): Inline dispatch of string vs. non-string values.
06:49 Changeset [48019] by eric@webkit.org

2009-09-03 Vitaly Repeshko <vitalyr@chromium.org>

Reviewed by Adam Barth.

[V8] Inlined common case of V8IsolatedWorld::getEntered to speed
up V8Proxy lookup.
https://bugs.webkit.org/show_bug.cgi?id=28946

  • bindings/v8/V8IsolatedWorld.cpp: (WebCore::V8IsolatedWorld::getEnteredImpl):
  • bindings/v8/V8IsolatedWorld.h: (WebCore::V8IsolatedWorld::getEntered):
06:40 Changeset [48018] by kov@webkit.org

2009-09-03 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>

Reviewed by Xan Lopez.

Remove bogus asserts that break Debug builds at runtime.

  • WebCoreSupport/DocumentLoaderGtk.cpp: (WebKit::DocumentLoader::detachFromFrame): (WebKit::DocumentLoader::decreaseLoadCount):
05:57 Changeset [48017] by zoltan@webkit.org

2009-09-03 Renata Hodovan <hodovan.renata@stud.u-szeged.hu>

Reviewed by Ariya Hidayat.

[Qt] Update outdated metrics in css2.1/t170602-bdr-conflct-w-* (50 files).
Remove these files from Skipped.

  • platform/qt/Skipped:
  • platform/qt/css2.1/t170602-bdr-conflct-w-00-d-expected.txt:
  • platform/qt/css2.1/t170602-bdr-conflct-w-01-d-expected.txt:
  • platform/qt/css2.1/t170602-bdr-conflct-w-02-d-expected.txt:
  • platform/qt/css2.1/t170602-bdr-conflct-w-03-d-expected.txt:
  • platform/qt/css2.1/t170602-bdr-conflct-w-04-d-expected.txt:
  • platform/qt/css2.1/t170602-bdr-conflct-w-05-d-expected.txt:
  • platform/qt/css2.1/t170602-bdr-conflct-w-06-d-expected.txt:
  • platform/qt/css2.1/t170602-bdr-conflct-w-07-d-expected.txt:
  • platform/qt/css2.1/t170602-bdr-conflct-w-08-d-expected.txt:
  • platform/qt/css2.1/t170602-bdr-conflct-w-09-d-expected.txt:
  • platform/qt/css2.1/t170602-bdr-conflct-w-10-d-expected.txt:
  • platform/qt/css2.1/t170602-bdr-conflct-w-11-d-expected.txt:
  • platform/qt/css2.1/t170602-bdr-conflct-w-12-d-expected.txt:
  • platform/qt/css2.1/t170602-bdr-conflct-w-13-d-expected.txt:
  • platform/qt/css2.1/t170602-bdr-conflct-w-14-d-expected.txt:
  • platform/qt/css2.1/t170602-bdr-conflct-w-15-d-expected.txt:
  • platform/qt/css2.1/t170602-bdr-conflct-w-16-d-expected.txt:
  • platform/qt/css2.1/t170602-bdr-conflct-w-17-d-expected.txt:
  • platform/qt/css2.1/t170602-bdr-conflct-w-18-d-expected.txt:
  • platform/qt/css2.1/t170602-bdr-conflct-w-19-d-expected.txt:
  • platform/qt/css2.1/t170602-bdr-conflct-w-20-d-expected.txt:
  • platform/qt/css2.1/t170602-bdr-conflct-w-21-d-expected.txt:
  • platform/qt/css2.1/t170602-bdr-conflct-w-22-d-expected.txt:
  • platform/qt/css2.1/t170602-bdr-conflct-w-23-d-expected.txt:
  • platform/qt/css2.1/t170602-bdr-conflct-w-24-d-expected.txt:
  • platform/qt/css2.1/t170602-bdr-conflct-w-25-d-expected.txt:
  • platform/qt/css2.1/t170602-bdr-conflct-w-26-d-expected.txt:
  • platform/qt/css2.1/t170602-bdr-conflct-w-27-d-expected.txt:
  • platform/qt/css2.1/t170602-bdr-conflct-w-28-d-expected.txt:
  • platform/qt/css2.1/t170602-bdr-conflct-w-29-d-expected.txt:
  • platform/qt/css2.1/t170602-bdr-conflct-w-30-d-expected.txt:
  • platform/qt/css2.1/t170602-bdr-conflct-w-31-d-expected.txt:
  • platform/qt/css2.1/t170602-bdr-conflct-w-32-d-expected.txt:
  • platform/qt/css2.1/t170602-bdr-conflct-w-33-d-expected.txt:
  • platform/qt/css2.1/t170602-bdr-conflct-w-34-d-expected.txt:
  • platform/qt/css2.1/t170602-bdr-conflct-w-35-d-expected.txt:
  • platform/qt/css2.1/t170602-bdr-conflct-w-36-d-expected.txt:
  • platform/qt/css2.1/t170602-bdr-conflct-w-37-d-expected.txt:
  • platform/qt/css2.1/t170602-bdr-conflct-w-38-d-expected.txt:
  • platform/qt/css2.1/t170602-bdr-conflct-w-39-d-expected.txt:
  • platform/qt/css2.1/t170602-bdr-conflct-w-40-d-expected.txt:
  • platform/qt/css2.1/t170602-bdr-conflct-w-41-d-expected.txt:
  • platform/qt/css2.1/t170602-bdr-conflct-w-42-d-expected.txt:
  • platform/qt/css2.1/t170602-bdr-conflct-w-43-d-expected.txt:
  • platform/qt/css2.1/t170602-bdr-conflct-w-44-d-expected.txt:
  • platform/qt/css2.1/t170602-bdr-conflct-w-45-d-expected.txt:
  • platform/qt/css2.1/t170602-bdr-conflct-w-46-d-expected.txt:
  • platform/qt/css2.1/t170602-bdr-conflct-w-47-d-expected.txt:
  • platform/qt/css2.1/t170602-bdr-conflct-w-48-d-expected.txt:
  • platform/qt/css2.1/t170602-bdr-conflct-w-49-d-expected.txt:
04:53 Changeset [48016] by zoltan@webkit.org

2009-09-03 Renata Hodovan <hodovan.renata@stud.u-szeged.hu>

Reviewed by Ariya Hidayat.

[Qt] Update outdated metrics in css2.1/t1202-counters-* (17 files).
Remove these files from Skipped.

  • platform/qt/Skipped:
  • platform/qt/css2.1/t1202-counters-00-b-expected.txt:
  • platform/qt/css2.1/t1202-counters-01-b-expected.txt:
  • platform/qt/css2.1/t1202-counters-02-b-expected.txt:
  • platform/qt/css2.1/t1202-counters-03-b-expected.txt:
  • platform/qt/css2.1/t1202-counters-05-b-expected.txt:
  • platform/qt/css2.1/t1202-counters-06-b-expected.txt:
  • platform/qt/css2.1/t1202-counters-07-b-expected.txt:
  • platform/qt/css2.1/t1202-counters-08-b-expected.txt:
  • platform/qt/css2.1/t1202-counters-09-b-expected.txt:
  • platform/qt/css2.1/t1202-counters-11-b-expected.txt:
  • platform/qt/css2.1/t1202-counters-12-b-expected.txt:
  • platform/qt/css2.1/t1202-counters-13-b-expected.txt:
  • platform/qt/css2.1/t1202-counters-14-b-expected.txt:
  • platform/qt/css2.1/t1202-counters-15-b-expected.txt:
  • platform/qt/css2.1/t1202-counters-16-c-expected.txt:
  • platform/qt/css2.1/t1202-counters-17-d-expected.txt:
  • platform/qt/css2.1/t1202-counters-18-f-expected.txt:
03:50 Changeset [48015] by vestbo@webkit.org

[Qt] Disable a few tests that require new controller features

Reviewed by Ariya Hidayat.

  • platform/qt/Skipped:
03:44 Changeset [48014] by vestbo@webkit.org

[Qt/Linux] Add platform-spesific result for plugin-javascript-access

Rubber-stamped by Simon Hausmann..

  • platform/qt-linux/plugins/plugin-javascript-access-expected.txt: Added.
02:47 Changeset [48013] by zoltan@webkit.org

2009-09-03 Renata Hodovan <hodovan.renata@stud.u-szeged.hu>

Reviewed by Ariya Hidayat.

[Qt] Update outdated metrics in css2.1/t140201* (16 files).
Remove these files from Skipped.

  • platform/qt/Skipped:
  • platform/qt/css2.1/t140201-c532-bgcolor-00-a-expected.txt:
  • platform/qt/css2.1/t140201-c532-bgcolor-01-b-expected.txt:
  • platform/qt/css2.1/t140201-c533-bgimage-00-a-expected.txt:
  • platform/qt/css2.1/t140201-c533-bgimage-01-b-g-expected.txt:
  • platform/qt/css2.1/t140201-c534-bgre-00-b-ag-expected.txt:
  • platform/qt/css2.1/t140201-c534-bgre-01-b-ag-expected.txt:
  • platform/qt/css2.1/t140201-c534-bgreps-00-c-ag-expected.txt:
  • platform/qt/css2.1/t140201-c534-bgreps-01-c-ag-expected.txt:
  • platform/qt/css2.1/t140201-c534-bgreps-02-c-ag-expected.txt:
  • platform/qt/css2.1/t140201-c534-bgreps-03-c-ag-expected.txt:
  • platform/qt/css2.1/t140201-c534-bgreps-04-c-ag-expected.txt:
  • platform/qt/css2.1/t140201-c534-bgreps-05-c-ag-expected.txt:
  • platform/qt/css2.1/t140201-c535-bg-fixd-00-b-g-expected.txt:
  • platform/qt/css2.1/t140201-c536-bgpos-00-b-ag-expected.txt:
  • platform/qt/css2.1/t140201-c536-bgpos-01-b-ag-expected.txt:
  • platform/qt/css2.1/t140201-c537-bgfxps-00-c-ag-expected.txt:
02:38 Changeset [48012] by eric@webkit.org

2009-09-03 Fumitoshi Ukai <ukai@chromium.org>

Reviewed by Eric Seidel.

Add strnstr for Linux and Windows in StringExtras.h
https://bugs.webkit.org/show_bug.cgi?id=28901

  • wtf/StringExtras.h: (strnstr):
02:29 Changeset [48011] by eric@webkit.org

2009-09-03 Kent Tamura <tkent@chromium.org>

Reviewed by Eric Seidel.

Tests for maxLength and IME input.
https://bugs.webkit.org/show_bug.cgi?id=25253

  • fast/forms/input-maxlength-ime-completed-expected.txt: Added.
  • fast/forms/input-maxlength-ime-completed.html: Added.
  • fast/forms/input-maxlength-ime-preedit-expected.txt: Added.
  • fast/forms/input-maxlength-ime-preedit.html: Added.
  • fast/forms/resources/input-maxlength-ime-completed.js: Added.
  • fast/forms/resources/input-maxlength-ime-preedit.js: Added.
  • platform/gtk/Skipped:
  • platform/win/Skipped:

2009-09-03 Kent Tamura <tkent@chromium.org>

Reviewed by Eric Seidel.

Fix a regression bug that maxLength doesn't work for IME input.
https://bugs.webkit.org/show_bug.cgi?id=25253

Tests: fast/forms/input-maxlength-ime-completed.html

fast/forms/input-maxlength-ime-preedit.html

  • dom/InputElement.cpp: (WebCore::InputElement::handleBeforeTextInsertedEvent):
  • dom/InputElement.h:
  • html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::defaultEventHandler):
  • wml/WMLInputElement.cpp: (WebCore::WMLInputElement::defaultEventHandler):
02:12 Changeset [48010] by eric@webkit.org

2009-09-03 Cameron McCormack <cam@mcc.id.au>

Reviewed by Eric Seidel.

Make SVGStyleElement title/media/type setters do something
https://bugs.webkit.org/show_bug.cgi?id=28828

  • svg/dom/resources/style-reflect.js: Added.
  • svg/dom/style-reflect-expected.txt: Added.
  • svg/dom/style-reflect.html: Added.

2009-09-03 Cameron McCormack <cam@mcc.id.au>

Reviewed by Eric Seidel.

Make SVGStyleElement title/media/type setters do something
https://bugs.webkit.org/show_bug.cgi?id=28828

Test: svg/dom/style-reflect.html

  • svg/SVGStyleElement.cpp: (WebCore::SVGStyleElement::setXmlspace): Actually change the attribute. (WebCore::SVGStyleElement::setType): Ditto. (WebCore::SVGStyleElement::setMedia): Ditto. (WebCore::SVGStyleElement::setTitle): Ditto.
02:08 Changeset [48009] by vestbo@webkit.org

[Qt] Add support for platform-spesific layout-test results

Reviewed by Mark Rowe.

For the Qt port we use the qt-[mac|linux|win] directories and then fall
back to the generic qt directory for both test results and skipped list.

  • Scripts/run-webkit-tests:
  • Scripts/webkitdirs.pm:
02:04 Changeset [48008] by eric@webkit.org

2009-09-03 Ben Murdoch <benm@google.com>

https://bugs.webkit.org/show_bug.cgi?id=28872
Test to verify statement error callbacks behave as expected when they return true or throw an exception.

  • storage/statement-error-callback-expected.txt: Added with properties svn:eol-style.
  • storage/statement-error-callback.html: Added with properties svn:eol-style.

2009-09-03 Ben Murdoch <benm@google.com>

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

Fixes a bug where handleEvent() in the V8 Custom SQL Statement Error binding would not return the correct result to WebCore after invoking the callback.

Test: storage/statement-error-callback.html

  • bindings/v8/custom/V8CustomSQLStatementErrorCallback.cpp: (WebCore::V8CustomSQLStatementErrorCallback::handleEvent): Return true from handleEvent() if the callback raised an exception or the callback itself returned true.
01:57 Changeset [48007] by eric@webkit.org

2009-09-03 Laszlo Gombos <laszlo.1.gombos@nokia.com>

Reviewed by Eric Seidel.

[Qt] Add a setting to turn SessionStorage on/off
https://bugs.webkit.org/show_bug.cgi?id=28836

  • Api/qwebsettings.cpp: (QWebSettingsPrivate::apply): (QWebSettings::QWebSettings):
  • Api/qwebsettings.h:
  • tests/qwebpage/tst_qwebpage.cpp: (testFlag): (tst_QWebPage::testOptionalJSObjects):
01:50 Changeset [48006] by eric@webkit.org

2009-09-03 Maxime Simon <simon.maxime@gmail.com>

Reviewed by Eric Seidel.

[Haiku] Adding three font-specific files to WebCore:
FontCustomPlatformData.cpp, FontCustomPlatformData.h,
and FontPlatformData.h
https://bugs.webkit.org/show_bug.cgi?id=28131

  • platform/graphics/haiku/FontCustomPlatformData.cpp: Added. (WebCore::FontCustomPlatformData::~FontCustomPlatformData): (WebCore::FontCustomPlatformData::fontPlatformData): (WebCore::createFontCustomPlatformData):
  • platform/graphics/haiku/FontCustomPlatformData.h: Added. (WebCore::FontCustomPlatformData::FontCustomPlatformData):
  • platform/graphics/haiku/FontPlatformData.h: Added. (WebCore::FontPlatformData::FontPlatformData): (WebCore::FontPlatformData::font): (WebCore::FontPlatformData::size): (WebCore::FontPlatformData::bold): (WebCore::FontPlatformData::oblique): (WebCore::FontPlatformData::hashTableDeletedFontValue):
00:14 Changeset [48005] by zoltan@webkit.org

2009-09-03 Zoltan Horvath <hzoltan@inf.u-szeged.hu>

Reviewed by Darin Adler.

Allow custom memory allocation control for JavaScriptCore's HashEntry class
https://bugs.webkit.org/show_bug.cgi?id=27830

Inherits HashEntry class from FastAllocBase because it has been
instantiated by 'new' JavaScriptCore/runtime/Lookup.cpp:32.

  • runtime/Lookup.h:

09/02/09:

19:31 Changeset [48004] by eric@webkit.org

2009-09-02 Laurent Cerveau <lcerveau@me.com>

Reviewed by David Kilzer.

<http://webkit.org/b/25517> build-webkit script should print build time at end

  • Scripts/build-webkit: Added startTime and endTime variable so that the build time is computed and printed as part of the build message; display formatting has been separated in a dedicated subroutine.
18:44 Changeset [48003] by ddkilzer@apple.com

<http://webkit.org/b/28881> svn-create-patch should check if the repo path is the same when trying to find the root

Reviewed by Eric Seidel.

  • Scripts/VCSUtils.pm: (determineSvnRoot): Added back check for repository root that was removed in r46134 when this code lived in svn-create-patch. It's necessary to check both the repository root and the repository UUID in case two different working directories are checked out from the same repository.
18:10 Changeset [48002] by timothy@apple.com

Use new 512x512 icons for nightly builds.

Rubber-stamped by Mark Rowe.

  • WebKitLauncher/webkit.icns:
17:55 Changeset [48001] by beidson@apple.com

More partial work towards "Page Cache should support pages with Frames"
https://bugs.webkit.org/show_bug.cgi?id=13631

Reviewed by Darin Adler.

No new tests. (No change in behavior, current tests pass).

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::stopLoading): Adopt the new enum form for FrameLoader::stopLoading().

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::stopLoading): Take an enum to decide whether to dispatch no unload events,

only unload, or unload and pagehide.

(WebCore::FrameLoader::closeURL):
(WebCore::FrameLoader::scheduleRedirection):
(WebCore::FrameLoader::cachePageForHistoryItem): Call pageHidden().
(WebCore::FrameLoader::pageHidden): Add to dispatch the pagehide event to all frames in the case

where a page is added to the PageCache.

  • loader/FrameLoader.h:
  • loader/FrameLoaderTypes.h: Add an UnloadEventPolicy enum.
17:18 Changeset [48000] by barraclough@apple.com

Should crash if JIT code buffer allocation fails.

Patch by Gavin Barraclough <barraclough@apple.com> on 2009-09-02
https://bugs.webkit.org/show_bug.cgi?id=28926
<rdar://problem/7031922>

  • jit/ExecutableAllocatorPosix.cpp:

(JSC::ExecutablePool::systemAlloc):

  • jit/ExecutableAllocatorWin.cpp:

(JSC::ExecutablePool::systemAlloc):

17:07 Changeset [47999] by beidson@apple.com

WebCore: More partial work towards "Page Cache should support pages with Frames"
https://bugs.webkit.org/show_bug.cgi?id=13631

Reviewed by Darin Adler.

  • More CachedFrame destruction work.
  • Including related Frame and FrameLoader changes and cleanup.

No new tests. (No change in behavior, current tests pass).

  • history/CachedFrame.cpp:

(WebCore::CachedFrameBase::restore): Rebuild up the whole FrameTree when restoring.
(WebCore::CachedFrame::CachedFrame): Tear down the entire FrameTree when caching.
(WebCore::CachedFrame::destroy): For child frames that are being destroyed while in

the PageCache, do lightweight cleanup to:
A - Prevent referring to a stale Page object.
B - Prevent World Leaks of WebKit objects.

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::stopAllLoaders): stopAllLoaders() should never be called on Frames that are

in the PageCache. ASSERT that fact.

(WebCore::FrameLoader::open): Remove a bogus release-build workaround, as the comment right above it

explains it is not effective, and it'd be better to see the crash locally instead of downstream.

(WebCore::FrameLoader::closeAndRemoveChild): Make sure the owner element has a page pointer before

referencing it.

(WebCore::FrameLoader::detachFromParent): Use the new detachViewsAndDocumentLoader() call
(WebCore::FrameLoader::detachViewsAndDocumentLoader): Does lightweight cleanup of client (WebKit) objects.

  • loader/FrameLoader.h:
  • page/Frame.cpp:

(WebCore::Frame::detachFromPage): Simply clear the Page pointer without doing any other work.
(WebCore::Frame::pageDestroyed): Use the new detachFromPage().

  • page/Frame.h:

WebKit/mac: More partial work towards "Page Cache should support pages with Frames"
https://bugs.webkit.org/show_bug.cgi?id=13631

Reviewed by Darin Adler.

  • WebView/WebHTMLView.mm:

(-[WebHTMLView _topHTMLView]): Rework the ASSERT in this method to reflect the

reality of calling this method for pages currently in the PageCache.

16:41 Changeset [47998] by jshin@chromium.org

2009-09-02 Jungshik Shin <jshin@chromium.org>

Reviewed by Dimitri Glazkov

[Chromium] Add 'icu::' qualifier in preparation for ICU upgrade to 4.2
in Chromium. This is to fix a new file added in r28742 since the
last patch for this issue.

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

No change in the test result.

  • platform/graphics/chromium/FontLinux.cpp: (WebCore::TextRunWalker::getNormalizedTextRun):
16:01 Changeset [47997] by kevino@webkit.org

waf build fix. Remove local variable shadowing global.

15:21 Changeset [47996] by dglazkov@chromium.org

2009-09-02 Dimitri Glazkov <dglazkov@chromium.org>

Unreviewed, build fix.

[Chromium] Correct a typo to fix bustage, caused by r47991.
https://bugs.webkit.org/show_bug.cgi?id=27933

  • platform/graphics/skia/ImageBufferSkia.cpp: Changed "Unpremultipled" to "Unmultiplied".
14:31 Changeset [47995] by dglazkov@chromium.org

2009-09-02 Dimitri Glazkov <dglazkov@chromium.org>

Unreviewed, build fix.

[Chromium] Add a missing include to fix bustage, caused by r47991.
https://bugs.webkit.org/show_bug.cgi?id=27933

  • platform/graphics/skia/ImageBufferSkia.cpp: Added SkColorPriv include.
14:30 Changeset [47994] by jianli@chromium.org

[Chromium] Implement file support for DragData.
https://bugs.webkit.org/show_bug.cgi?id=28896

Reviewed by Dimitri Glazkov.

  • platform/chromium/DragDataChromium.cpp:

(WebCore::DragData::containsURL):
(WebCore::DragData::asURL):
(WebCore::DragData::containsCompatibleContent):

14:07 Changeset [47993] by kevino@webkit.org

Reviewed by Kevin Ollivier.

Protect libcurl shared data with Mutex objects via curl_set_share_opt.
https://bugs.webkit.org/show_bug.cgi?id=28920

13:45 Changeset [47992] by eric@webkit.org

2009-09-02 Evan Stade <estade@chromium.org>

Reviewed by Eric Seidel.

Expose functions to change the focus ring color for Linux Chromium

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

  • rendering/RenderThemeChromiumLinux.cpp: (WebCore::RenderThemeChromiumLinux::RenderThemeChromiumLinux): (WebCore::RenderThemeChromiumLinux::setFocusRingColor): (WebCore::RenderThemeChromiumLinux::platformFocusRingColor):
  • rendering/RenderThemeChromiumLinux.h:
13:38 Changeset [47991] by eric@webkit.org

2009-09-02 Dirk Schulze <krit@webkit.org>

Reviewed by Eric Seidel.

SVG Filter premultiplied color support for getImageDate/putImageData
https://bugs.webkit.org/show_bug.cgi?id=27933

Patch to get premultiplied color support for Skia on getImageDate/putImageData.

  • platform/graphics/skia/ImageBufferSkia.cpp: (WebCore::getImageData): (WebCore::putImageData):
13:23 Changeset [47990] by beidson@apple.com

Forget to rename openInFrameloader() to open(), which was requested in Darin's review of my last patch.

  • history/CachedFrame.cpp:

(WebCore::CachedFrameBase::restore):
(WebCore::CachedFrame::open):

  • history/CachedFrame.h:
  • history/CachedPage.cpp:

(WebCore::CachedPage::restore):

13:16 Changeset [47989] by beidson@apple.com

In http://trac.webkit.org/changeset/47943 I added new header dependencies to FrameLoader.h.
Removing them is a little trouble, but worth it going forward.
The pattern of creating a "CachedFrameBase" as the interface CachedFrame provides to FrameLoader
was suggested by Darin Adler.

Reviewed by Darin Adler.

No new tests. (No change in behavior)

Make CachedFrame inherit privately from CachedFrameBase, which becomes the interface FrameLoader uses:

  • history/CachedFrame.cpp:

(WebCore::CachedFrameBase::CachedFrameBase):
(WebCore::CachedFrameBase::~CachedFrameBase):
(WebCore::CachedFrameBase::restore):
(WebCore::CachedFrame::CachedFrame):
(WebCore::CachedFrame::openInFrameLoader):

  • history/CachedFrame.h:

(WebCore::CachedFrameBase::document):
(WebCore::CachedFrameBase::view):
(WebCore::CachedFrameBase::domWindow):
(WebCore::CachedFrame::create):
(WebCore::CachedFrame::documentLoader):
(WebCore::CachedFrame::mousePressNode):

Call the new ::openInFrameLoader() method on the CachedFrame, as CachedFrameBase is now the only
thing capable of interacting with FrameLoader::open(CachedFrameBase):

  • history/CachedPage.cpp:

(WebCore::CachedPage::restore):

  • history/CachedPage.h:

(WebCore::CachedPage::documentLoader):

Make ::open(CachedFrame) public, and change it to ::open(CachedFrameBase):

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::open):

  • loader/FrameLoader.h:
13:13 Changeset [47988] by ddkilzer@apple.com

2009-09-02 Zan Dobersek <zandobersek@gmail.com>

Reviewed by David Kilzer.

Calls exitStatus function from the main package where it is also defined.

  • Scripts/VCSUtils.pm:
13:13 Changeset [47987] by rniwa@webkit.org

WebCore: Cannot pres Enter to escape from bulleted list when <ul> is a child of <li>.
https://bugs.webkit.org/show_bug.cgi?id=24866

Patch by Ryosuke Niwa <rniwa@webkit.org> on 2009-09-02
Reviewed by Eric Seidel.

This patch modifies breakOutOfEmptyListItem to break out of a properly nested list
(a list to break out of is inside another list item).

When the empty list item appears at the end of another list item, WebKit breaks out of
the outer list item, and adds new item below the outer list item.
Otherwise, WebKit breaks out of the the inner list item and inserts new paragraph.

Test: editing/execCommand/break-out-of-empty-list-item.html

  • editing/CompositeEditCommand.cpp:

(WebCore::CompositeEditCommand::breakOutOfEmptyListItem):

LayoutTests: Cannot press Enter to escape from bulleted list when <ul> is a child of <li>.
https://bugs.webkit.org/show_bug.cgi?id=24866

Patch by Ryosuke Niwa <rniwa@webkit.org> on 2009-09-02
Reviewed by Eric Seidel.

This patch adds a test to make sure WebKit break out of an empty list item.

  • editing/execCommand/break-out-of-empty-list-item-expected.txt: Added.
  • editing/execCommand/break-out-of-empty-list-item.html: Added.
  • editing/execCommand/resources/break-out-of-empty-list-item.js: Added.

(pressKey):
(enterAtTarget):
(testBreakOutOfEmptyListItem):

12:55 Changeset [47986] by ap@apple.com

Reviewed by Brady Eidson.

Fix the test to pass on Tiger.

Tiger's ICU decodes the invalid text differently. Moved it inside the comment - this also
matches the original from the Web better.

  • fast/encoding/japanese-encoding-mix-expected.txt:
  • fast/encoding/japanese-encoding-mix.html:
12:32 Changeset [47985] by beidson@apple.com

More partial work towards "Page Cache should support pages with Frames"
https://bugs.webkit.org/show_bug.cgi?id=13631

Reviewed by Sam Weinig.

This patch is primarily about the "CachedFrame tree" and making slightly different decisions
based on whether a CachedFrame is the main frame or a subframe.

  • Store whether a CachedFrame represents the main frame or a subframe.
  • "Chop off the frame tree" for the main frame when creating its CachedFrame, as main frames are reused and need to start new page loads with an empty frame tree.
  • Reattach the frame tree to the main frame when restoring it.
  • open() the cached subframes in their respective loaders when restoring.
  • Properly clear() and destroy() cached subframes.
  • When committing to a new page load, and after caching the previous page, only clear the FrameView for the main frame.

Note that all of above will eventually be necessary as I continue to land this work in pieces,
but doesn't actually change any behavior right now because we still refuse to even *try* to
cache pages with frames.

No new tests. No change in behavior, and current tests continue to pass.

  • history/CachedFrame.cpp:

(WebCore::CachedFrame::CachedFrame):
(WebCore::CachedFrame::restore):
(WebCore::CachedFrame::clear):
(WebCore::CachedFrame::destroy):

  • history/CachedFrame.h:

(WebCore::CachedFrame::isMainFrame):

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::clear):
(WebCore::FrameLoader::open):

  • loader/FrameLoader.h:
11:32 Changeset [47984] by beidson@apple.com

No review, build fix.

http://trac.webkit.org/changeset/47976 broke the build.
Let's try compiling before we land things, shall we?

  • platform/graphics/SimpleFontData.cpp:

(WebCore::SimpleFontData::SimpleFontData): Order the initialization list correctly.

11:28 Changeset [47983] by kevino@webkit.org

waf build fixes for Windows/MSVC and Mac/Snow Leopard.

11:14 Changeset [47982] by benm@google.com

Unreviewed build fix for Chromium.

Missed #including V8Proxy.h in WebCore/bindings/v8/V8Binding.cpp.

  • bindings/v8/V8Binding.cpp: add V8Proxy.h as an include
11:03 Changeset [47981] by kevino@webkit.org

Reviewed by Kevin Ollivier.

wx port: Call WTF::initializeThreading().
https://bugs.webkit.org/show_bug.cgi?id=28912

10:41 Changeset [47980] by kevino@webkit.org

waf build fix, don't define symbols we now grab from other sources.

10:39 Changeset [47979] by kevino@webkit.org

Build fix for building on Windows.

10:34 Changeset [47978] by kevino@webkit.org

Build fixes for PluginViewNone.cpp and a wx build fix for PluginView.cpp.

10:32 Changeset [47977] by kevino@webkit.org

wx build fix. Use the 2 param KURL constructor.

10:10 Changeset [47976] by yong.li@torchmobile.com

2009-09-02 Charles Wei <charles.wei@torchmobile.com.cn>

Reviewed by Eric Seidel.

Fix the build failure of WebKit for Linux/Qt when WML is enabled

No test cases needed since this just fixes the build problem.

  • wml/WMLElement.cpp: (WebCore::WMLElement::create):
  • wml/WMLTableElement.cpp: (WebCore::WMLTableElement::joinSuperflousColumns): (WebCore::WMLTableElement::padWithEmptyColumns):
09:37 Changeset [47975] by yong.li@torchmobile.com

2009-09-02 Yong Li <yong.li@torchmobile.com>

Reviewed by Adam Barth.

WINCE PORT: use shared buffer for custom font data
https://bugs.webkit.org/show_bug.cgi?id=27734

Refactored by Joe Mason <joe.mason@torchmobile.com>

  • loader/CachedFont.cpp: add WINCE to platforms using cached custom data
  • platform/graphics/opentype/OpenTypeUtilities.cpp: (WebCore::renameFont): implement for WinCE
  • platform/graphics/opentype/OpenTypeUtilities.h: build fixes
  • platform/graphics/wince/FontCustomPlatformData.cpp: (WebCore::setCustomFontCache): add accessor (WebCore::createFontCustomPlatformData): change param to SharedBuffer
  • platform/graphics/wince/FontCustomPlatformData.h: update function signatures
09:32 Changeset [47974] by yong.li@torchmobile.com

2009-09-02 Yong Li <yong.li@torchmobile.com>

Reviewed by Adam Barth.

WINCE PORT: font-related build fixes and minor bugfixes
https://bugs.webkit.org/show_bug.cgi?id=27734

  • platform/graphics/FontCache.h: declare functions added in https://bugs.webkit.org/show_bug.cgi?id=27509
  • platform/graphics/GlyphPageTreeNode.cpp: (WebCore::GlyphPageTreeNode::initializePage): fix ambiguous overload error in min/max on Windows
  • platform/graphics/SimpleFontData.cpp: (WebCore::SimpleFontData::SimpleFontData): initialize member vars
  • platform/graphics/SimpleFontData.h: disable unused members on Wince to save space
08:54 Changeset [47973] by abarth@webkit.org

2009-09-02 Jeremy Orlow <jorlow@chromium.org>

Reviewed by Adam Barth.

Another pass at releasing the storage mutex.
https://bugs.webkit.org/show_bug.cgi?id=28904

Another pass at releasing the storage mutex (when applicable) when we finish
executing JavaScript. http://dev.w3.org/html5/spec/Overview.html#storage-mutex
describes the required behavior.

As it turns out, https://bugs.webkit.org/show_bug.cgi?id=28789 didn't solve
the problem correctly. First of all, I missed that events and timeouts go
through a different call path. Second of all, I didn't consider recursion
correctly. Third of all, my check to see if LocalStorage is alive actually
instantiates it if it isn't yet. Fourth, I forgot DOM_STORAGE guards around
it. So I'm reverting that change completely and doing it more cleanly.
Unfortunately, the solution isn't as portable (and thus I've left out the JSC
implementation for now).

NOTE: This change now tracks recursion on function callbacks in V8. I ran this
by Mads Ager and Mike Belshe and they seemed to think adding the checks were
fine. Most callbacks are asynchronous and thus wouldn't be nested. The few
scenareos where you can have nested callbacks probably should have always been
protected by a recursion guard.

Unfortunately, this can't be tested without a hook added to the layout test
controllers since the lock is (by design) not supposed to be observable by
JavaScript. https://bugs.webkit.org/show_bug.cgi?id=28906

  • bindings/js/ScriptController.cpp: (WebCore::ScriptController::evaluate): revert
  • bindings/v8/ScriptController.cpp: (WebCore::ScriptController::evaluate): revert
  • bindings/v8/V8Proxy.cpp: (WebCore::V8Proxy::runScript):

Add releaseStorageMutex call. A small amount of clean up.

(WebCore::V8Proxy::callFunction):

Add releaseStorageMutex call. A small amount of clean up.

(WebCore::V8Proxy::releaseStorageMutex):

Check to see if localStorage has been instantiated. If so, tell it to
unlock all storage areas.

  • bindings/v8/V8Proxy.h:
  • page/PageGroup.h: (WebCore::PageGroup::hasLocalStorage): Make hasLocalStorage public.
08:48 Changeset [47972] by kevino@webkit.org

Reviewed by Eric Seidel.

Changes needed for build-webkit to support the waf build system for the wx port.

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

08:24 Changeset [47971] by ddkilzer@apple.com

<http://webkit.org/b/27168> With Subversion 1.6, update-webkit prompts on conflicts

Reviewed by Eric Seidel.

  • Scripts/update-webkit: Added "--accept postpone" to @svnOptions when running with svn-1.6 or newer.
08:24 Changeset [47970] by ddkilzer@apple.com

Moved svn 1.6 version check into VCSUtils::isSVNVersion16OrNewer()

Reviewed by Eric Seidel.

  • Scripts/VCSUtils.pm: (@EXPORT): Added &isSVNVersion16OrNewer. (svnVersion): Added. Internal method that gets the SVN version and caches it. (isSVNVersion16OrNewer): Added. Method that does the SVN 1.6 version check.
  • Scripts/prepare-ChangeLog: Switched to use new isSVNVersion16OrNewer() method.
  • Scripts/resolve-ChangeLogs: Ditto.
  • Scripts/svn-create-patch: Ditto.
08:24 Changeset [47969] by ddkilzer@apple.com

Clean up VCSUtils.pm

Reviewed by Eric Seidel.

  • Scripts/VCSUtils.pm: Added proper package statement. Fixed indentation of BEGIN block. Listed each exported method on a line by itself. Added methods to the export list after adding the package statement. Sorted module variables. Moved definiton of $gitRoot next to other module variables.
08:19 Changeset [47968] by abarth@webkit.org

2009-09-02 Yong Li <yong.li@torchmobile.com>

Reviewed by Adam Barth.

WINCE PORT: Implement ImageBuffer for WINCE
Implement Image interface with a light class BufferedImage
for rendering ImageBuffer
https://bugs.webkit.org/show_bug.cgi?id=28167

  • platform/graphics/wince/ImageBufferData.h: Added.
  • platform/graphics/wince/ImageBufferWince.cpp: Added.
07:24 Changeset [47967] by vestbo@webkit.org

Join the various PluginView destructors into one shared implementation

Reviewed by Eric Seidel.

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

The Qt port used to delete the platform plugin widget as the last step.
Now this is done before cleaning up the script objects and unloading the
plugin package, similar to how the Win port does it.

  • plugins/PluginView.cpp:
  • plugins/PluginViewNone.cpp:
  • plugins/gtk/PluginViewGtk.cpp:
  • plugins/mac/PluginViewMac.cpp:
  • plugins/qt/PluginViewQt.cpp:
  • plugins/win/PluginViewWin.cpp:
06:50 Changeset [47966] by vestbo@webkit.org

Share PluginView::init() between ports

Reviewed by Eric Seidel.

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

The port-spesific bits are moved to platformStart(), which now returns
a bool based on the success of the platformStart.

m_hasPendingGeometryChange is now initialized in the initializer list
instead of in PluginViewQt's init()

PluginViewMac (currently used only by the Qt port) used to manually call
stop() in the case where an unsupported drawing or event model was detected.
This was wrong, as the m_status and m_isStarted fields should be used to
guard against doing operations on a plugin in this intermediate state.

  • plugins/PluginView.cpp:
  • plugins/PluginView.h:
  • plugins/PluginViewNone.cpp:
  • plugins/gtk/PluginViewGtk.cpp:
  • plugins/mac/PluginViewMac.cpp:
  • plugins/qt/PluginViewQt.cpp:
  • plugins/win/PluginViewWin.cpp:
06:06 Changeset [47965] by jmalonzo@webkit.org

2009-09-02 Jan Michael Alonzo <jmalonzo@webkit.org>

Reviewed by Xan Lopez and Gustavo Noronha.

[Gtk] Implement a WebDataSource for the gtk port
https://bugs.webkit.org/show_bug.cgi?id=24758

Add data source API getters to WebKitWebFrame.
Also add WebKitWebDataSource unit test.

  • tests/testwebdatasource.c: Added.
  • webkit/webkitwebframe.cpp:
  • webkit/webkitwebframe.h:

Add WebKitWebDataSource unit test to the build script

  • GNUmakefile.am:
05:58 Changeset [47964] by jmalonzo@webkit.org

2009-09-02 Jan Michael Alonzo <jmalonzo@webkit.org>

Reviewed by Xan Lopez and Gustavo Noronha.

[Gtk] Implement a WebDataSource for the gtk port
https://bugs.webkit.org/show_bug.cgi?id=24758

Subclass DocumentLoader for Gtk and implement it under the WebKit
namespace. Add WebKitWebDataSource implementation that closely
follows the mac implementation of the API.

  • WebCoreSupport/DocumentLoaderGtk.cpp: Added.
  • WebCoreSupport/DocumentLoaderGtk.h: Added.
  • webkit/webkitwebdatasource.cpp: Added.
  • webkit/webkitwebdatasource.h: Added.

Add WebKitWebDataSource and DocumentLoaderGtk to the build script.

  • GNUmakefile.am:
05:40 Changeset [47963] by vestbo@webkit.org

[Qt] Make sure we relayout the page after evaluating JS

Patch by Richard Moore <rich@kde.org> on 2009-09-02
Reviewed by Tor Arne Vestbø.

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

QtWebKit does not always seem to reflow the page when evaluating
javascript. This patch changes the way evaluateJavaScript works to
use the frameloader which ensures that this is done properly.

  • Api/qwebframe.cpp:

(QWebFrame::evaluateJavaScript):

  • tests/qwebframe/tst_qwebframe.cpp:
04:38 Changeset [47962] by benm@google.com

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

Patch by Ben Murdoch <benm@google.com> on 2009-09-02
Update JavaScript bindings in JSC and V8 for SQLTransaction to throw exceptions in the right places.

  • bindings/js/JSSQLTransactionCustom.cpp:

(WebCore::JSSQLTransaction::executeSql): Throw an exception if no parameters are passed to executeSql().

  • bindings/v8/V8Binding.cpp:

(WebCore::v8ValueToWebCoreString): Catch an exception if thrown from toString().

  • bindings/v8/custom/V8SQLTransactionCustom.cpp:

(WebCore::CALLBACK_FUNC_DECL): Allow "arrayish objects" to be passed to executeSql.

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

Patch by Ben Murdoch <benm@google.com> on 2009-09-02
Update the execute-sql-args.html to be agnostic to exception message formatting between JSC and V8 and throw an exception when no parameters are passed to the executeSql() function.

  • storage/execute-sql-args-expected.txt:
  • storage/execute-sql-args.html:
03:16 Changeset [47961] by vestbo@webkit.org

[Qt] Fix layout-test plugins/plugin-javascript-access.html

Rubber-stamped by Simon Hausmann.

  • DumpRenderTree/qt/TestNetscapePlugin/TestNetscapePlugin.pro:
  • platform/qt/Skipped:
02:59 Changeset [47960] by pfeldman@chromium.org

2009-09-01 Pavel Feldman <pfeldman@chromium.org>

Reviewed by Timothy Hatcher.

WebInspector: Migrate Databases tab to InjectedScript /
serialized interaction.

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

  • inspector/InspectorDOMAgent.cpp: (WebCore::InspectorDOMAgent::handleEvent):
  • inspector/front-end/Database.js: (WebInspector.Database.prototype.isDB): (WebInspector.Database.prototype.runWithTableNames.sortingCallback): (WebInspector.Database.prototype.runWithTableNames): (WebInspector.Database.prototype.executeSql): (WebInspector.Database.prototype.executeSql.errorCallback): (WebInspector.Database.prototype.executeSql.queryTransaction):
  • inspector/front-end/DatabaseQueryView.js: (WebInspector.DatabaseQueryView.prototype._enterKeyPressed): (WebInspector.DatabaseQueryView.prototype._queryFinished):
  • inspector/front-end/DatabaseTableView.js: (WebInspector.DatabaseTableView):
  • inspector/front-end/StoragePanel.js: (WebInspector.StoragePanel.prototype.selectDatabase): (WebInspector.StoragePanel.prototype.updateDatabaseTables.withTableNames): (WebInspector.StoragePanel.prototype.updateDatabaseTables): (WebInspector.DatabaseSidebarTreeElement.prototype.onpopulate.withTableNames): (WebInspector.DatabaseSidebarTreeElement.prototype.onpopulate):
02:49 Changeset [47959] by eric@webkit.org

2009-09-02 Norbert Leser <norbert.leser@nokia.com>

Reviewed by Eric Seidel.

Use fastMalloc when neither MMAP nor VIRTUALALLOC are enabled

RegisterFile constructor currently throws #error when both
MMAP and VIRTUALALLOC conditions fail.
On any platform that does not provide these features
(for instance, Symbian),
the fallback should be regular malloc (or fastMalloc).
It is functionally equivalent in this case, even though it may
have certain drawbacks such as lack of dynamic pre-allocation.

  • interpreter/RegisterFile.cpp: (JSC::RegisterFile::~RegisterFile):
  • interpreter/RegisterFile.h: (JSC::RegisterFile::RegisterFile):
02:46 Changeset [47958] by pfeldman@chromium.org

2009-09-02 Pavel Feldman <pfeldman@chromium.org>

Not reviewed (trivial followup fix).


Web Inspector: Trivial follow up fix to r47944.

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

  • inspector/InspectorBackend.cpp: (WebCore::InspectorBackend::nodeForId):
02:44 Changeset [47957] by zoltan@webkit.org

2009-09-02 Renata Hodovan <hodovan.renata@stud.u-szeged.hu>

Reviewed by Ariya Hidayat.

[Qt] Update css2.1/t1202-counter-* and css2.1/t1205* tests after new metrics.
Remove these files from Skipped (and fixed Skipped according to Changeset 47815).

  • platform/qt/Skipped:
  • platform/qt/css2.1/t1202-counter-00-b-expected.txt:
  • platform/qt/css2.1/t1202-counter-01-b-expected.txt:
  • platform/qt/css2.1/t1202-counter-02-b-expected.txt:
  • platform/qt/css2.1/t1202-counter-03-b-expected.txt:
  • platform/qt/css2.1/t1202-counter-04-b-expected.txt:
  • platform/qt/css2.1/t1202-counter-05-b-expected.txt:
  • platform/qt/css2.1/t1202-counter-06-b-expected.txt:
  • platform/qt/css2.1/t1202-counter-07-b-expected.txt:
  • platform/qt/css2.1/t1202-counter-08-b-expected.txt:
  • platform/qt/css2.1/t1202-counter-09-b-expected.txt:
  • platform/qt/css2.1/t1202-counter-11-b-expected.txt:
  • platform/qt/css2.1/t1202-counter-12-b-expected.txt:
  • platform/qt/css2.1/t1202-counter-13-b-expected.txt:
  • platform/qt/css2.1/t1202-counter-14-b-expected.txt:
  • platform/qt/css2.1/t1202-counter-15-b-expected.txt:
  • platform/qt/css2.1/t1202-counter-16-f-expected.txt:
  • platform/qt/css2.1/t1205-c561-list-displ-00-b-expected.txt:
  • platform/qt/css2.1/t1205-c563-list-type-00-b-expected.txt:
  • platform/qt/css2.1/t1205-c563-list-type-01-b-expected.txt:
  • platform/qt/css2.1/t1205-c564-list-img-00-b-g-expected.txt:
  • platform/qt/css2.1/t1205-c565-list-pos-00-b-expected.txt:
  • platform/qt/css2.1/t1205-c566-list-stl-01-c-g-expected.txt:
01:08 Changeset [47956] by eric@webkit.org

2009-09-02 Shinichiro Hamaji <hamaji@chromium.org>

Reviewed by Eric Seidel.

js tests should move into jstests subdirectory instead of resources/
https://bugs.webkit.org/show_bug.cgi?id=25880

make-script-wrappers supports both resources and script-tests directories.
run-webkit-tests ignores files in script-tests.
Move script tests of animations to check the new script is working.

  • animations/animation-css-rule-types.html:
  • animations/resources/TEMPLATE.html: Removed.
  • animations/resources/animation-css-rule-types.js: Removed.
  • animations/script-tests: Added.
  • animations/script-tests/TEMPLATE.html: Copied from LayoutTests/animations/resources/TEMPLATE.html.
  • animations/script-tests/animation-css-rule-types.js: Copied from LayoutTests/animations/resources/animation-css-rule-types.js.

2009-09-02 Shinichiro Hamaji <hamaji@chromium.org>

Reviewed by Eric Seidel.

js tests should move into jstests subdirectory instead of resources/
https://bugs.webkit.org/show_bug.cgi?id=25880

make-script-wrappers supports both resources and script-tests directories.
run-webkit-tests ignores files in script-tests.
Move script tests of animations to check the new script is working.

  • Scripts/make-script-test-wrappers:
  • Scripts/run-webkit-tests:
01:01 Changeset [47955] by eric@webkit.org

2009-09-02 Szabo Carol <carol.szabo@nokia.com>

Reviewed by David Levin.

check-webkit-style uses python from /usr/bin instead of the PATH
https://bugs.webkit.org/show_bug.cgi?id=28225

  • Scripts/bugzilla-tool:
  • Scripts/check-webkit-style:
  • Scripts/run-webkit-unittests:
  • Scripts/update-sources-list.py: Changed the first line from #!/usr/bin/python to #!/usr/bin/env python which causes python to be invoked from the path location returned by "which python" when any of these scripts are launched. these are currently all the python scripts in WebKitTools/Scripts.

09/01/09:

22:03 Changeset [47954] by bweinstein@apple.com

2009-09-01 Brian Weinstein <bweinstein@apple.com>

Reviewed by John Sullivan.

Added a new case to aria-readonly.html to account for textareas instead of just input fields.

  • accessibility/aria-readonly-expected.txt:
  • accessibility/aria-readonly.html:

2009-09-01 Brian Weinstein <bweinstein@apple.com>

Reviewed by John Sullivan.

Fixed a bug in handling of isReadOnly, where textareas were casted to HTMLInputElements.

  • accessibility/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::isReadOnly):
19:26 Changeset [47953] by ddkilzer@apple.com

<http://webkit.org/b/28601> bugzilla-tool post-commits posts commits backwards

Reviewed by Adam Barth.

  • Scripts/modules/scm.py: (Git.commit_ids_from_commitish_arguments): Reverse the list of commits returned from git-rev-list since we always want to post the oldest patches first to bugs.webkit.org.
  • Scripts/modules/scm_unittest.py: (run): Added return statement to return the output now that we want it sometimes. (SVNTestRepository._setup_test_commits): Added a fourth commit so the GitTest.test_commitish_order() test has more commits to work with. (GitTest.test_commitish_order): Added unit test for change to Git.commit_ids_from_commitish_arguments() in scm.py.
17:38 Changeset [47952] by eric@webkit.org

2009-09-01 Patrick Mueller <Patrick_Mueller@us.ibm.com>

Reviewed by Timothy Hatcher.

https://bugs.webkit.org/show_bug.cgi?id=28047
add utility method to enable logging messages for inspector development

manual test case added (see below)

  • inspector/front-end/ConsoleView.js: (WebInspector.ConsoleMessage.prototype.toMessageElement): (WebInspector.ConsoleMessage.prototype.toString):
  • inspector/front-end/inspector.css:
  • inspector/front-end/inspector.js: (WebInspector.log):
  • manual-tests/inspector/webinspector-log.html: Added.
  • page/Console.cpp: (WebCore::printMessageSourceAndLevelPrefix):
  • page/Console.h: (WebCore::):
17:15 Changeset [47951] by eric@webkit.org

2009-09-01 Eric Seidel <eric@webkit.org>

Rubber stamped by Simon Fraser.

REGRESSION: media/video-source-add-src.html (and other media tests?) crashing/timing-out intermittently
https://bugs.webkit.org/show_bug.cgi?id=28845

Disabling this test on all platforms until
a media expert can have a chance to look at it.
See bug 28845 for further discussion.

  • media/video-source-add-src.html-disabled: Renamed from LayoutTests/media/video-source-add-src.html.
17:06 Changeset [47950] by ap@apple.com

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=21990
When a rare EUC-JP character is present, explicitly (and correctly) labelled EUC-JP document
is mistreated as Shift_JIS

<rdar://problem/5828506> Safari should not try auto-detecting if charset information exists

WebKit used to unconditionally auto-detect document encoding if it was one of Japanese ones.
This didn't really match any browser, and did cause problems on some sites.

Our detector is very quick to label an EUC-JP page as Shift_JIS if it notices a byte that
cannot be part of EUC-JP source. However, such bytes do appear in Web pages sometimes,
especially in comments. Also, some valid EUC-JP sequences are not known to it.

Some pages that are fixed by this change:

<rdar://problem/5934750> Encoding in incorrect at http://cocodeparis.blog45.fc2.com/. This
page has incorrect encoding in title, so no browser displays it 100% fine. We now match
Firefox and IE.

<rdar://problem/6007713> The web page http://www.sf.us.emb-japan.go.jp/top.htm is garbled
in Safari. There is a stray byte in comments that was makes charset detector think it can't
be EUC-JP.

<rdar://problem/6965711> A Japanese web page www.nippontv.studiolegend.tv is garbled in
Safari. Many comments on this page are encoded as Shift_JIS - IE magically displays that
fine in View Source mode (it doesn't seem to have an ability to switch between EUC-JP and
Shift_JIS in normal HTML view though).

Test: fast/encoding/japanese-encoding-mix.html

  • loader/TextResourceDecoder.cpp: (WebCore::TextResourceDecoder::decode): Only invoke auto- detection if there is no solid charset information yet.
16:07 Changeset [47949] by ddkilzer@apple.com

<http://webkit.org/b/28877> Implement bugzilla-tool mark-fixed

Reviewed by David Levin.

The mark-fixed subcommand is for those times when you don't use
bugzilla-tool to commit a patch, but you want to use it to close
the bug with a committed-revision message.

  • Scripts/bugzilla-tool: (bug_comment_from_svn_revision): Added. Extracted from bug_comment_from_commit_text(). (bug_comment_from_commit_text): Extracted bug_comment_from_svn_revision() from this method. (MarkBugFixed.init): Added. (MarkBugFixed._fetch_commit_log): Added. Retrieves the commit log from the last commit if no svn revision is specified, else the commit log for the specified svn revision. (MarkBugFixed._determine_bug_id_and_svn_revision): Added. Attempts to determine the bug id and svn revision if one or both were not defined on the command line. (MarkBugFixed.execute): Added. Adds a comment about the revision that fixed the bug and closes the bug. (BugzillaTool.init): Added mark-fixed subcommand.
  • Scripts/modules/bugzilla.py: (Bugzilla.fetch_title_from_bug): Added. Returns the title of a bug given a bug id.
  • Scripts/modules/scm.py: (SCM.strip_r_from_svn_revision): Added. Utility method to strip the leading 'r' from an svn revision. (SCM.svn_commit_log): Added. Subclasses must override. (SCM.last_svn_commit_log): Added. Subclasses must override. (SVN.svn_commit_log): Added. Returns svn log for a given revision. (SVN.last_svn_commit_log): Added. Uses svnversion to find the last commit in an svn working directory and then runs svn log. (Git.svn_commit_log): Added. Returns svn log for a given revision. (Git.last_svn_commit_log): Added. Runs git-svn-log with a limit of one log message.
13:18 Changeset [47948] by dglazkov@chromium.org

2009-09-01 Victor Wang <victorw@chromium.org>

Reviewed by Darin Adler.

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

Fix fast/dom/StyleSheet/ownerNode-lifetime-2.html
The problem is WebKit <link> nodes will only have a
style sheet created if they have href attribute.
The src attribute to non-existant css doesn't work.
Change src to href to make this test works in WebKit.

Also update the expectation result.

  • fast/dom/StyleSheet/ownerNode-lifetime-2-expected.txt:
  • fast/dom/StyleSheet/ownerNode-lifetime-2.html:
13:16 Changeset [47947] by jianli@chromium.org

[V8] FileList cannot be accessed via index in Chromium.
https://bugs.webkit.org/show_bug.cgi?id=28883

Reviewed by Dimitri Glazkov.

Tested by clipboard-file-access.html.

  • WebCore.gypi:
  • bindings/v8/V8DOMWrapper.cpp:

(WebCore::V8DOMWrapper::getTemplate):

  • bindings/v8/custom/V8CustomBinding.h:
  • bindings/v8/custom/V8FileListCustom.cpp: Added.
12:52 Changeset [47946] by jhoneycutt@apple.com

Remove the workaround added in r47316.

Reviewed by Sam Weinig.

  • accessibility/AXObjectCache.cpp:

(WebCore::AXObjectCache::AXObjectCache):

  • accessibility/AXObjectCache.h:

Remove the Document argument to the AXObjectCache constructor and the
m_document member variable, and replace the no-parameter
handleFocusedUIElementChanged() with the two-parameter GTK function.
(WebCore::AXObjectCache::handleFocusedUIElementChanged):

  • accessibility/chromium/AXObjectCacheChromium.cpp:

(WebCore::AXObjectCache::handleFocusedUIElementChanged):

  • accessibility/gtk/AXObjectCacheAtk.cpp:

(WebCore::AXObjectCache::handleFocusedUIElementChanged):

  • accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:

(fallbackObject):
Don't pass a null Document when constructing the AXObjectCache.

  • accessibility/mac/AXObjectCacheMac.mm:

(WebCore::AXObjectCache::handleFocusedUIElementChanged):

  • accessibility/win/AXObjectCacheWin.cpp:

(WebCore::AXObjectCache::handleFocusedUIElementChanged):
Get the document from the RenderObject; m_document was removed.

  • dom/Document.cpp:

(WebCore::Document::axObjectCache):
Don't pass the Document when constructing the AXObjectCache.
(WebCore::Document::setFocusedNode):
Pass the old and new focused RenderObjects when calling
handleFocusedUIElementChanged().

11:42 Changeset [47945] by ddkilzer@apple.com

<http://webkit.org/b/28880> svn-apply --force doesn't actually work

Reviewed by Brady Eidson.

  • Scripts/svn-apply: (applyPatch): Add "--force" to $options arrayref if $force is set.
11:17 Changeset [47944] by pfeldman@chromium.org

2009-09-01 Yury Semikhatsky <yurys@chromium.org>

Reviewed by Timothy Hatcher.

Check that InspectorDOMAgent and InspectorFrontend are not null
before accessing them in InspectorBackend. They may be null if
InspectorController is closed before an asynchronous operation is
started.

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

  • inspector/InspectorBackend.cpp: (WebCore::InspectorBackend::getCookies): (WebCore::InspectorBackend::getChildNodes): (WebCore::InspectorBackend::setAttribute): (WebCore::InspectorBackend::removeAttribute): (WebCore::InspectorBackend::setTextNodeValue): (WebCore::InspectorBackend::highlight): (WebCore::InspectorBackend::nodeForId): (WebCore::InspectorBackend::pushNodePathToFrontend): (WebCore::InspectorBackend::addNodesToSearchResult): (WebCore::InspectorBackend::selectDatabase): (WebCore::InspectorBackend::selectDOMStorage): (WebCore::InspectorBackend::inspectorDOMAgent): (WebCore::InspectorBackend::inspectorFrontend):
  • inspector/InspectorBackend.h:
11:13 Changeset [47943] by beidson@apple.com

Page Cache should support pages with frames
https://bugs.webkit.org/show_bug.cgi?id=13631

Reviewed by Sam Weinig.

Things learned in the full task that this patch addresses:

  • The notions of clearing a CachedFrame and destroying a CachedFrame were two concepts that needed to be managed separately.
  • Once we start restoring pages with multiple CachedFrames, we'll have to be calling FrameLoader::open(CachedFrame&) multiple times with different CachedFrames, and this process will be guided by the CachedFrames themselves.

No new tests. (No change in behavior, current layout tests pass)

  • history/CachedFrame.cpp:

(WebCore::CachedFrame::CachedFrame):
(WebCore::CachedFrame::~CachedFrame):
(WebCore::CachedFrame::clear): Only clear pointers out.
(WebCore::CachedFrame::destroy): Perform the destructive cleanup work here - Things that shouldn't

occur simply by navigating back to a page with a CachedFrame.

  • history/CachedFrame.h:
  • history/CachedPage.cpp:

(WebCore::CachedPage::~CachedPage):
(WebCore::CachedPage::restore): Call clear() after restoring.
(WebCore::CachedPage::clear):
(WebCore::CachedPage::destroy):

  • history/CachedPage.h:
  • history/PageCache.cpp:

(WebCore::PageCache::releaseAutoreleasedPagesNow): destroy() CachedPages that are being pruned,

instead of clearing them.

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::commitProvisionalLoad): Let the CachedPage clear() itself after restoring.
(WebCore::FrameLoader::open): Don't ::open() the CachedFrame, as the CachedPage does that now.

  • loader/FrameLoader.h: Add the friending so CachedPage and CachedFrame can better guide the process. Even though CachedFrame::restore() isn't used for now, it will be soon.
11:06 Coding Style Guidelines edited by berkeley@ptc.com
(diff)
11:00 Changeset [47942] by benm@google.com

Add a "lowMemoryNotification" method to the V8 ScriptController class.
This is needed in order to allow the host application (Android Web browser in this case)
to call the v8::V8::LowMemoryNotification() method added to V8 in
http://code.google.com/p/v8/source/detail?spec=svn2777&r=2725

Patch by Andrei Popescu <andreip@google.com> on 2009-09-01
Reviewed by David Levin.

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

  • bindings/v8/ScriptController.cpp:

(WebCore::ScriptController::lowMemoryNotification):

  • bindings/v8/ScriptController.h:
09:39 Changeset [47941] by abarth@webkit.org

2009-09-01 Fumitoshi Ukai <ukai@chromium.org>

Reviewed by Adam Barth.

V8 Bindings for WebSocket API.
https://bugs.webkit.org/show_bug.cgi?id=28844

  • bindings/v8/DOMObjectsInclude.h:
  • bindings/v8/DerivedSourcesAllInOne.cpp:
  • bindings/v8/V8DOMWrapper.cpp: (WebCore::V8DOMWrapper::getTemplate): (WebCore::V8DOMWrapper::convertToV8Object): (WebCore::V8DOMWrapper::convertEventTargetToV8Object):
  • bindings/v8/V8DOMWrapper.h:
  • bindings/v8/V8Index.cpp:
  • bindings/v8/V8Index.h:
  • bindings/v8/WorkerContextExecutionProxy.cpp:
  • bindings/v8/custom/V8CustomBinding.h:
  • bindings/v8/custom/V8WebSocketCustom.cpp: Added.
09:35 Changeset [47940] by aroben@apple.com

Post a notification when a WebView is closing

This is useful for situations where some code wants to react to the
WebView closing but isn't in charge of the WebView and can't otherwise
be notified. This notification could replace
IWebUIDelegatePrivate::webViewClosing if we decide that the
notification system isn't too burdensome.

<http://webkit.org/b/28875>

Reviewed by John Sullivan.

  • Interfaces/IWebViewPrivate.idl: Added the

WebViewWillCloseNotification string constant.

  • WebKit.vcproj/WebKit.vcproj: Link against comsuppw.lib in all

configurations so that we can use _bstr_t.

  • WebView.cpp:

(WebView::close): Post the WebViewWillCloseNotification.

09:17 Changeset [47939] by pkasting@chromium.org

Unreviewed (build fix).

Missed a "." -> "->" conversion.

  • platform/graphics/qt/ImageDecoderQt.cpp:

(WebCore::ImageDecoderQt::ReadContext::ReadContext):

09:12 Changeset [47938] by pkasting@chromium.org

Unreviewed (build fix).

Try to fix Qt build, take 2. The Qt code had what looks like a
broken virtual function override.

  • platform/graphics/qt/ImageDecoderQt.cpp:

(WebCore::ImageDecoderQt::ReadContext::ReadContext):
(WebCore::ImageDecoderQt::setData):

  • platform/graphics/qt/ImageDecoderQt.h:
09:09 Changeset [47937] by abarth@webkit.org

2009-09-01 Adam Barth <abarth@webkit.org>

Reviewed by Sam Weinig.

Uninitialized variable in XSSAuditor
https://bugs.webkit.org/show_bug.cgi?id=28874

One ought to initialize variables before use even when it doesn't
matter. No behavior change.

  • page/XSSAuditor.h: (WebCore::XSSAuditor::CachingURLCanonicalizer::CachingURLCanonicalizer):
08:57 Changeset [47936] by pkasting@chromium.org

Unreviewed (build fix).

Try to fix Qt build.

  • platform/graphics/ImageSource.cpp:
08:50 Changeset [47935] by pkasting@chromium.org

https://bugs.webkit.org/show_bug.cgi?id=27965
Eliminate most of ImageSourceQt.cpp in favor of ImageSource.cpp.

Reviewed by Eric Seidel.

  • WebCore.pro:
  • platform/graphics/ImageSource.cpp:

(WebCore::ImageSource::frameHasAlphaAtIndex):

  • platform/graphics/qt/ImageSourceQt.cpp:

(WebCore::ImageSource::createFrameAtIndex):
(WebCore::ImageSource::frameHasAlphaAtIndex):
(WebCore::ImageSource::frameIsCompleteAtIndex):

07:58 Changeset [47934] by pfeldman@chromium.org

2009-09-01 Pavel Feldman <pfeldman@chromium.org>

Reviewed by Timothy Hatcher.

WebInspector: Make InjectedScript self-contained (move necessary
methods from utilities.js into InjectedScript).

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

  • inspector/front-end/ElementsPanel.js: (WebInspector.ElementsPanel.prototype.generateStylesheet):
  • inspector/front-end/InjectedScript.js: (InjectedScript._ensureCommandLineAPIInstalled.inspectObject): (InjectedScript._ensureCommandLineAPIInstalled): (InjectedScript.pushNodeToFrontend): (InjectedScript.createProxyObject): (Object.type): (Object.hasProperties): (Object.className): (String.prototype.escapeCharacters):
  • inspector/front-end/utilities.js:
07:41 Changeset [47933] by pfeldman@chromium.org

2009-09-01 Pavel Feldman <pfeldman@chromium.org>

Reviewed by Timothy Hatcher.

WebInspector: console log message repeat count double.

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

  • inspector/front-end/InjectedScript.js: (InjectedScript._evaluateOn):
07:11 Changeset [47932] by ddkilzer@apple.com

<http://webkit.org/b/28725> resolve-ChangeLogs: determineVCSRoot() returns incorrect repository root during git filter-branch

Reviewed by Adam Roben.

When git-filter-branch has been invoked to rewrite ChangeLog
files on series of git commits, it changes directories into
.git-rewrite/t before re-running resolve-ChangeLogs. This
causes determineVCSRoot() in VCSUtils.pm to return
".git-rewrite/t", which causes that path to be prepended to all
ChangeLog paths, which results in an error like this:

error: pathspec '.git-rewrite/t/ChangeLog' did not match any file(s) known to git.
Died at WebKitTools/Scripts/resolve-ChangeLogs line 376.

The correct way to fix this is not to try to find the repository
root when invoked by git-filter-branch.

  • Scripts/resolve-ChangeLogs: If isInGitFilterBranch() is true, set $relativePath to '.' instead of calling chdirReturningRelativePath(determineVCSRoot()). (isInGitFilterBranch): Added. Checks for the existence of the MAPPED_PREVIOUS_COMMIT environment variable.
06:06 Changeset [47931] by kov@webkit.org

2009-09-01 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>

Reviewed by Xan Lopez.

Avoid causing unexpected issues with window sizing when sites
disable scrollbars completely.

  • WebCoreSupport/ChromeClientGtk.cpp: (WebKit::ChromeClient::scrollbarsModeDidChange):
  • tests/testwindow.c: (test_webkit_window_scrollbar_policy):
  • webkit/webkitwebframe.cpp: (webkit_web_frame_class_init):
05:50 Changeset [47930] by xan@webkit.org

LayoutTests:

2009-09-01 Xan Lopez <xlopez@igalia.com>

Reviewed by Gustavo Noronha.

Add support for Fedora distros in the http tests
https://bugs.webkit.org/show_bug.cgi?id=28263

Add httpd conf file for Fedora.

  • http/conf/fedora-httpd.conf: Added.

WebKitTools:

2009-09-01 Xan Lopez <xlopez@igalia.com>

Reviewed by Gustavo Noronha.

Add support for Fedora distros in the http tests
https://bugs.webkit.org/show_bug.cgi?id=28263

Add detection code for Fedora distribution, and use the proper
httpd conf file when needed.

  • Scripts/run-webkit-httpd:
  • Scripts/run-webkit-tests:
  • Scripts/webkitdirs.pm:
05:19 Changeset [47929] by jmalonzo@webkit.org

2009-09-01 Jan Michael Alonzo <jmalonzo@webkit.org>

Reviewed by Xan Lopez and Gustavo Noronha.

[Gtk] Implement a WebDataSource for the gtk port
https://bugs.webkit.org/show_bug.cgi?id=24758

Implement WebKitWebResource for the resource-related API for
WebKitWebDataSource.

  • GNUmakefile.am:

Add WebKitWebResource to the build script.

  • GNUmakefile.am:
05:05 Changeset [47928] by jmalonzo@webkit.org

2009-09-01 Jan Michael Alonzo <jmalonzo@webkit.org>

Reviewed by Eric Seidel.

[Gtk] DRT needs implementation of overridePreference
https://bugs.webkit.org/show_bug.cgi?id=28830

Unskip tests that are now working.

  • platform/gtk/Skipped:

Implement overridePreference.

  • DumpRenderTree/gtk/DumpRenderTree.cpp: (resetDefaultsToConsistentValues): (setDefaultsToConsistentStateValuesForTesting): (runTest):
  • DumpRenderTree/gtk/LayoutTestControllerGtk.cpp: (toWebSettingKey): (LayoutTestController::overridePreference):
04:55 Changeset [47927] by jmalonzo@webkit.org

2009-09-01 Jan Michael Alonzo <jmalonzo@webkit.org>

Reviewed by Mark Rowe.

[Gtk] Fix DATALIST build
https://bugs.webkit.org/show_bug.cgi?id=28826

Unskip now working fast/forms/input-list.html.

  • platform/gtk/Skipped:

Add ENABLE_DATALIST to FEATURE_DEFINES.

  • GNUmakefile.am:
04:11 Changeset [47926] by eric@webkit.org

2009-09-01 Cameron McCormack <cam@mcc.id.au>

Reviewed by Eric Seidel.

SVGSVGElement suspend methods argument/return types incorrect
https://bugs.webkit.org/show_bug.cgi?id=28860

Also fix the style of the argument names.

  • svg/SVGSVGElement.cpp: (WebCore::SVGSVGElement::suspendRedraw): (WebCore::SVGSVGElement::unsuspendRedraw):
  • svg/SVGSVGElement.h:
04:01 Changeset [47925] by eric@webkit.org

2009-09-01 Roland Steiner <rolandsteiner@google.com>

Reviewed by Eric Seidel.

Fix bug 28808: [Skia] Fix flaky layout test svg/dynamic-updates/SVGClipPathElement-dom-clipPathUnits-attr.html [DEBUG]
(https://bugs.webkit.org/show_bug.cgi?id=28808)

The bug fix adds an explicit check for the validity of the path when it is
transformed into local coordinates.
This was the most suitable place I could find that didn't cause an inordinate
amount of refactoring. Also, it seems pertinent and may also catch other cases
that are not limited to clipping paths.

TEST: existing svg/dynamic-updates/SVGClipPathElement-dom-clipPathUnits-attr.html

  • platform/graphics/skia/GraphicsContextSkia.cpp: make isPathSkiaSafe accessible (WebCore::):
  • platform/graphics/skia/PlatformContextSkia.cpp: (PlatformContextSkia::currentPathInLocalCoordinates): check Skia safety of path
03:54 Changeset [47924] by xan@webkit.org

2009-09-01 Xan Lopez <xlopez@igalia.com>

Reviewed by Jan Alonzo.

https://bugs.webkit.org/show_bug.cgi?id=28842
[GTK] Do not emit extra FINISHED load-status signals

Do not emit FINISHED load-status signals on our own, just rely on
WebCore for that. Avoids emitting FINISHED several times when we
fail to load a URI.

  • WebCoreSupport/FrameLoaderClientGtk.cpp: (WebKit::FrameLoaderClient::dispatchDidFailProvisionalLoad): (WebKit::FrameLoaderClient::dispatchDidFailLoad):
  • tests/testloading.c: (web_loading_fixture_setup): (web_loading_fixture_teardown): (load_finished_cb): (status_changed_cb): (test_loading_status): (load_error_status_changed_cb): (load_error_cb): (test_loading_error): (main):
  • webkit/webkitwebframe.h:
03:24 Changeset [47923] by eric@webkit.org

2009-09-01 Joseph Pecoraro <joepeck@webkit.org>

<http://webkit.org/b/28623> svn-[un]apply should change directories to the repository root before [un]applying

Reviewed by Eric Seidel.

Jump back and forth between the repository root directory (to apply) and the
directory the script was run from (to find the patch).

  • Scripts/svn-apply:
  • Scripts/svn-unapply:
03:14 Changeset [47922] by eric@webkit.org

2009-09-01 Yusuke Sato <yusukes@chromium.org>

Reviewed by Eric Seidel.

[Chromium] Combining Diacritical Marks (U+0300..) are not handled correctly.
https://bugs.webkit.org/show_bug.cgi?id=28742

Normalize (NFC) a TextRun when the run contains combining diacritical marks
so that Skia can pick a correct glyph without relying on GSUB table in a font.
This change is for Chromium Linux.

  • platform/graphics/chromium/FontLinux.cpp: (WebCore::TextRunWalker::getTextRun): Added. (WebCore::TextRunWalker::getNormalizedTextRun): Added.

This function is called when the run contains U+0300..U+036F and converts characters in
the run to the combined form (NFC) using ICU.

03:05 Changeset [47921] by eric@webkit.org

2009-09-01 Vitaly Repeshko <vitalyr@chromium.org>

Reviewed by Dimitri Glazkov.

[V8] Inlined fast paths of V8DOMWrapper::convertNodeToV8Object and
V8Proxy::createWrapperFromCache.
https://bugs.webkit.org/show_bug.cgi?id=28848

  • bindings/v8/V8DOMWrapper.cpp: (WebCore::V8DOMWrapper::convertDocumentToV8Object): Special function for document wrapping. (WebCore::V8DOMWrapper::convertNewNodeToV8Object): Slow case of wrapping a new node.
  • bindings/v8/V8DOMWrapper.h: (WebCore::V8DOMWrapper::convertNodeToV8Object): Extracted fast path from V8DOMWrapper.cpp.
  • bindings/v8/V8Proxy.cpp: (WebCore::V8Proxy::createWrapperFromCacheSlowCase):
  • bindings/v8/V8Proxy.h: (WebCore::V8Proxy::createWrapperFromCache): Extracted fast path from V8Proxy.cpp.
02:34 Changeset [47920] by eric@webkit.org

2009-09-01 Eric Seidel <eric@webkit.org>

No review, windows build fix only. Clearly I should have read the patch closer. :(

Allow excluding certain plugins from loading
https://bugs.webkit.org/show_bug.cgi?id=28677

  • plugins/PluginDatabase.cpp: (WebCore::PluginDatabase::refresh):
02:31 Changeset [47919] by pfeldman@chromium.org

2009-09-01 Alexander Pavlov <apavlov@chromium.org>

Reviewed by Timothy Hatcher.

Implement conditional breakpoints in the Web Inspector backend
and add frontend JavaScript stubs.
https://bugs.webkit.org/show_bug.cgi?id=28846

  • inspector/InspectorBackend.cpp: (WebCore::InspectorBackend::profiles): (WebCore::InspectorBackend::addBreakpoint): (WebCore::InspectorBackend::updateBreakpoint):
  • inspector/InspectorBackend.h:
  • inspector/InspectorBackend.idl:
  • inspector/JavaScriptDebugServer.cpp: (WebCore::JavaScriptDebugServer::BreakpointInfo::condition): (WebCore::JavaScriptDebugServer::BreakpointInfo::setCondition): (WebCore::JavaScriptDebugServer::addBreakpoint): (WebCore::JavaScriptDebugServer::breakpointInfo): (WebCore::JavaScriptDebugServer::updateBreakpoint): (WebCore::JavaScriptDebugServer::updateBreakpointInfo): (WebCore::JavaScriptDebugServer::removeBreakpoint): (WebCore::JavaScriptDebugServer::hasBreakpoint): (WebCore::JavaScriptDebugServer::clearBreakpoints):
  • inspector/JavaScriptDebugServer.h: (WebCore::JavaScriptDebugServer::BreakpointInfo::BreakpointInfo):
  • inspector/front-end/Breakpoint.js: (WebInspector.Breakpoint): (WebInspector.Breakpoint.prototype.get id): (WebInspector.Breakpoint.prototype.get condition): (WebInspector.Breakpoint.prototype.set condition):
  • inspector/front-end/BreakpointsSidebarPane.js: (WebInspector.BreakpointsSidebarPane.prototype.addBreakpoint): (WebInspector.BreakpointsSidebarPane.prototype._breakpointEnableChanged):
  • inspector/front-end/ScriptsPanel.js: (WebInspector.ScriptsPanel.prototype.addScript):
02:13 Changeset [47918] by eric@webkit.org

2009-09-01 Marius Renn <damarvy@gmail.com>

Reviewed by Eric Seidel.

Added delegate to PluginDatabase to disable loading certain plugins.
This is useful when you want to load from the standard plugin
directory, but want to exclude certain plugins. Plugins may be
excluded early on by name, so that no plugin code is executed (which
may have caused a crash).

  • plugins/PluginDatabase.cpp: (WebCore::PluginDatabase::PluginDatabase): (WebCore::PluginDatabase::refresh):
  • plugins/PluginDatabase.h: (WebCore::PluginDatabase::setClient):
  • plugins/PluginDatabaseClient.h: Added. (WebCore::PluginDatabaseClient::~PluginDatabaseClient):

08/31/09:

20:45 Changeset [47917] by beidson@apple.com

Rubberstamped by Sam Weinig

  • WebCore.base.exp: Removed an unneeded symbol export.
18:34 Changeset [47916] by kov@webkit.org

WebCore

2009-08-31 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>

Reviewed by Alexey Proskuryakov.

https://bugs.webkit.org/show_bug.cgi?id=28466
When downloading a file, two GET requests are sent to the HTTP server

Can't think of a way to test this.

  • loader/ResourceLoader.cpp: (WebCore::ResourceLoader::releaseResources): only nullify the handle's client when it is the ResourceLoader, to support the case in which a download API uses a different client

WebKit/gtk

2009-08-31 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>

Reviewed by Alexey Proskuryakov.

https://bugs.webkit.org/show_bug.cgi?id=28466
When downloading a file, two GET requests are sent to the HTTP server

Support reusing a connection that is already ongoing, instead of
cancelling the connection and creating another.

  • WebCoreSupport/FrameLoaderClientGtk.cpp: (WebKit::FrameLoaderClient::download):
  • webkit/webkitdownload.cpp: (webkit_download_new_with_handle): (webkit_download_start):
  • webkit/webkitprivate.h:
  • webkit/webkitwebview.cpp: (webkit_web_view_request_download):
16:44 Changeset [47915] by bweinstein@apple.com

2009-08-31 Brian Weinstein <bweinstein@apple.com>

Reviewed by Darin Adler.

Text Fields and Text Areas are reported as read-only by inspect32.exe.
https://bugs.webkit.org/show_bug.cgi?id=28854

Added another case in AcccessibiltyRenderObject::isReadOnly to test if text fields
and texts areas are read-only.

  • accessibility/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::isReadOnly): (WebCore::AccessibilityRenderObject::canSetValueAttribute):

2009-08-31 Brian Weinstein <bweinstein@apple.com>

Reviewed by Darin Adler.

Added a case to check for readonly and non-readonly set through the readonly attribute
instead of through aria-readonly. This tests our new case in AccessibilityRenderObject::isReadOnly.

  • accessibility/aria-readonly-expected.txt:
  • accessibility/aria-readonly.html:
16:40 Changeset [47914] by atwilson@chromium.org

WebCore: fast/workers/worker-lifecycle.html crashes intermittently on snowleopard
https://bugs.webkit.org/show_bug.cgi?id=28795

Reviewed by Alexey Proskuryakov.

Changed WorkerContext::close() to no longer stop the worker thread.
It is now the parent's responsibility to shut down the worker thread when it is notified that the context is closed.

  • workers/AbstractWorker.cpp:

Updated dispatchScriptErrorEvent to pass-through the "handled" value from dispatchEvent(), to allow event handlers added with addEventListener() to mark events as handled.

  • workers/DefaultSharedWorkerRepository.cpp:

(WebCore::SharedWorkerProxy::workerContextClosed):
Now shuts down the worker thread when notified that the context is closed.
(WebCore::SharedWorkerProxy::close):
Now handles being invoked when the context is already in the process of shutting down.

  • workers/WorkerContext.cpp:

(WebCore::WorkerContext::close):
No longer calls WorkerThread::stop() to avoid race conditions with shutting down the thread while the parent is still interacting with it.

  • workers/WorkerContext.h:

(WebCore::WorkerContext::isClosing):
isClosing() is now public so WorkerRunLoop can call it to determine whether to process tasks.

  • workers/WorkerMessagingProxy.cpp:

(WebCore::WorkerExceptionTask::performTask):
Error events should still be delivered even if the worker thread is closing.
Also fixed problem where error events were not dispatched if error handlers were added via addEventListener().
(WebCore::WorkerTerminateTask::create):
New task that invokes terminateWorkerContext() on the parent thread when the context is closed.
(WebCore::WorkerTerminateTask::WorkerTerminateTask):
(WebCore::WorkerTerminateTask::performTask):
(WebCore::WorkerMessagingProxy::workerContextClosed):
Now fires off a WorkerTerminateTask to shut down the thread when the context is closed.

  • workers/WorkerMessagingProxy.h:

WorkerMessagingProxy now overrides workerContextClosed().

  • workers/WorkerRunLoop.cpp:

(WebCore::WorkerRunLoop::runInMode):
Now drops tasks on the floor if the WorkerContext is closing.

LayoutTests: fast/workers/worker-lifecycle.html crashes intermittently on snowleopard
https://bugs.webkit.org/show_bug.cgi?id=28795

Reviewed by Alexey Proskuryakov.

Removed worker-lifecycle.html from the list of Skipped tests since it no longer crashes.
Added test for case where we capture script errors via an event listener added via addEventListener().

  • fast/workers/worker-script-error.html
  • fast/workers/worker-script-error-expected.txt

Added testScriptErrorAddEventListener to test catching script errors via addEventListener().

  • platform/mac-snowleopard/Skipped:
16:36 Changeset [47913] by bdakin@apple.com

Rubber-stamped by Mark Rowe.

Meant to update these results with my earlier check-in, but I
forgot!

  • platform/mac/fast/inspector/style-expected.txt:
16:30 Changeset [47912] by ojan@chromium.org

Not reviewed (build fix)

Build fix for Chromium to match r49707.

  • bindings/v8/ScriptCallFrame.cpp:

(WebCore::ScriptCallFrame::ScriptCallFrame):

  • bindings/v8/ScriptSourceCode.h:

(WebCore::ScriptSourceCode::ScriptSourceCode):

  • platform/KURLGoogle.cpp:

(WebCore::KURL::KURL):
(WebCore::blankURL):

16:01 Changeset [47911] by ap@apple.com

Gtk build fix.

This is also a behavior fix, at least on debug builds - a caller of
webkit_web_history_item_new_with_data() could pass an URL that could cause an assertion
failure in KURL.

  • webkit/webkitwebhistoryitem.cpp: (webkit_web_history_item_new_with_data): Pass a null KURL as base to parse properly.
15:49 Changeset [47910] by ap@apple.com

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=28858
Element.baseURI parses xml:base attribute incorrectly

Test: fast/dom/base-attribute-parsing.xhtml

  • dom/Element.cpp: (WebCore::Element::baseURI): Avoid assertion failure (no change in release mode).
15:27 Changeset [47909] by dglazkov@chromium.org

WebCore:

2009-08-31 Dimitri Glazkov <dglazkov@chromium.org>

Reverting http://trac.webkit.org/changeset/47904, because it caused
layout test failure.

Test: fast/dom/Window/new-window-opener.html

WebKit/mac:

2009-08-31 Dimitri Glazkov <dglazkov@chromium.org>

Reverting http://trac.webkit.org/changeset/47904, because it caused
layout test failure.

15:09 Changeset [47908] by mrowe@apple.com

Remove WebViewEditingContextMenu.nib and WebViewEditingContextMenuOld.nib.

Rubber-stamped by Beth Dakin.

We stopped using these back in r18592 when we switched over to context menus
driven by WebCore.

  • English.lproj/WebViewEditingContextMenu.nib/classes.nib: Removed.
  • English.lproj/WebViewEditingContextMenu.nib/info.nib: Removed.
  • English.lproj/WebViewEditingContextMenu.nib/objects.nib: Removed.
  • English.lproj/WebViewEditingContextMenuOld.nib/classes.nib: Removed.
  • English.lproj/WebViewEditingContextMenuOld.nib/info.nib: Removed.
  • English.lproj/WebViewEditingContextMenuOld.nib/objects.nib: Removed.
  • WebKit.xcodeproj/project.pbxproj:
15:07 Changeset [47907] by ap@apple.com

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=28852
Rename KURL single argument constructor to avoid confusion

  • platform/KURL.h: The constructor that used to be single argument should now be invoked as KURL(ParsedURLString, myString).
15:05 Changeset [47906] by bdakin@apple.com

WebCore: Fix for https://bugs.webkit.org/show_bug.cgi?id=28635 [CSS3
Backgrounds and Borders] Add support for 2-keyword values for
background-repeat

Reviewed by Darin Adler.

This patch allows background-repeat to take two values by making
background-repeat just like background-position internally. There
is a little extra legwork for background-repeat because the spec
indicates that its computed value should be equivalent to how it
was specified. I keep track of the specified thing by setting the
implicit flag whenever background-repeat is defined with only one
value (since internally, we now store this as 2 values.)

Here we can't access the implicit flag, so for backwards-
compatibility's sake, we always return one value when that makes
sense.

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::fillRepeatToCSSValue):
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):

Here we check for the implicit flag and return one value when it is
set.

  • css/CSSMutableStyleDeclaration.cpp:

(WebCore::CSSMutableStyleDeclaration::getPropertyValue):
(WebCore::CSSMutableStyleDeclaration::getLayeredShorthandValue):
(WebCore::CSSMutableStyleDeclaration::cssText):

Add support for CSSPropertyBackgroundRepeatX and
CSSPropertyBackgroundRepeatY

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseValue):
(WebCore::CSSParser::parseFillShorthand):
(WebCore::CSSParser::parseFillRepeat):
(WebCore::CSSParser::parseFillProperty):

  • css/CSSParser.h:

Get rid of mappings to RepeatXFill and RepeatYFill since we don't
need those parts of the EFillRepeat enum anymore.

  • css/CSSPrimitiveValueMappings.h:

(WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
(WebCore::CSSPrimitiveValue::operator EFillRepeat):

Add CSSPropertyBackgroundRepeatX and CSSPropertyBackgroundRepeatY

  • css/CSSPropertyLonghand.cpp:

(WebCore::initShorthandMap):

Add background-repeat-x and -y.

  • css/CSSPropertyNames.in:

Break repeat into x and y.

  • css/CSSStyleSelector.cpp:

(WebCore::CSSStyleSelector::applyProperty):
(WebCore::CSSStyleSelector::mapFillRepeatX):
(WebCore::CSSStyleSelector::mapFillRepeatY):

  • css/CSSStyleSelector.h:

There is no more RepeatXFill. Instead, look for
fillLayer->repeatX() == RepeatFill

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::calculateBackgroundImageGeometry):

Break m_repeat into m_repeatX and m_repeatY

  • rendering/style/FillLayer.cpp:

(WebCore::FillLayer::FillLayer):
(WebCore::FillLayer::operator=):
(WebCore::FillLayer::operator==):
(WebCore::FillLayer::fillUnsetProperties):
(WebCore::FillLayer::cullEmptyLayers):

  • rendering/style/FillLayer.h:

(WebCore::FillLayer::repeatX):
(WebCore::FillLayer::repeatY):
(WebCore::FillLayer::isRepeatXSet):
(WebCore::FillLayer::isRepeatYSet):
(WebCore::FillLayer::setRepeatX):
(WebCore::FillLayer::setRepeatY):
(WebCore::FillLayer::clearRepeatX):
(WebCore::FillLayer::clearRepeatY):
(WebCore::FillLayer::initialFillRepeatX):
(WebCore::FillLayer::initialFillRepeatY):

Again, break backgroundRepeat into backgroundRepeatX and
backgroundRepeatY

  • rendering/style/RenderStyle.h:

(WebCore::InheritedFlags::backgroundRepeatX):
(WebCore::InheritedFlags::backgroundRepeatY):
(WebCore::InheritedFlags::maskRepeatX):
(WebCore::InheritedFlags::maskRepeatY):

We don't need RepeatXFill or RepeatYFill. Now that we store two
values, they are represented by Repeat-NoRepeat and NoRepeat-
Repeat, respectively.

  • rendering/style/RenderStyleConstants.h:

(WebCore::):

LayoutTests: Tests for https://bugs.webkit.org/show_bug.cgi?id=28635 [CSS3
Backgrounds and Borders] Add support for 2-keyword values for
background-repeat

Reviewed by Darin Adler.

This test is updated to test for two values.

  • fast/backgrounds/repeat/parsing-background-repeat-expected.txt:
  • fast/backgrounds/repeat/resources/parsing-background-repeat.js:

These tests are updated to reflect new order.

  • fast/css/background-position-serialize-expected.txt:
  • fast/css/remove-shorthand-expected.txt:

Reflect new order in results, and make the test dump as text.

  • fast/inspector/style.html:
  • platform/mac/fast/inspector/style-expected.checksum: Removed.
  • platform/mac/fast/inspector/style-expected.png: Removed.
  • platform/mac/fast/inspector/style-expected.txt:
14:00 Changeset [47905] by simon.fraser@apple.com

2009-08-31 Simon Fraser <simon.fraser@apple.com>

Reviewed by Dan Bernstein.

Compositing layer size needs to take into account software reflections on children.
https://bugs.webkit.org/show_bug.cgi?id=28837

When computing the bounds of a composited layer, take software-rendered
reflections into account.

Test: compositing/reflections/reflection-in-composited.html

  • rendering/RenderLayerCompositor.cpp: (WebCore::RenderLayerCompositor::calculateCompositedBounds):
13:37 Changeset [47904] by dglazkov@chromium.org

WebCore:

2009-08-31 Mark Mentovai <mark@chromium.org>

Reviewed by Dave Hyatt.

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

Perform a layout prior to checking whether the scrollbar modes are
off, on, or automatic. The modes may change during layout.

  • platform/ScrollView.cpp: (WebCore::ScrollView::updateScrollbars):

WebKit/mac:

2009-08-31 Mark Mentovai <mark@chromium.org>

Reviewed by Dave Hyatt.

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

Perform a layout prior to checking whether the scrollbar modes are
off, on, or automatic. The modes may change during layout.

  • WebView/WebDynamicScrollBarsView.mm: (-[WebDynamicScrollBarsView updateScrollers]):
13:15 Changeset [47903] by eric@webkit.org

2009-08-31 Patrick Mueller <Patrick_Mueller@us.ibm.com>

Reviewed by Timothy Hatcher.

Inspector Request Headers Should Show Data Sent With Request
https://bugs.webkit.org/show_bug.cgi?id=22920

Manual test added - see below.

  • English.lproj/localizedStrings.js:
  • inspector/InspectorResource.cpp: (WebCore::InspectorResource::updateRequest): (WebCore::InspectorResource::createScriptObject): (WebCore::InspectorResource::updateScriptObject):
  • inspector/InspectorResource.h:
  • inspector/front-end/Resource.js: (WebInspector.Resource):
  • inspector/front-end/ResourceView.js: (WebInspector.ResourceView): (WebInspector.ResourceView.prototype._refreshURL): (WebInspector.ResourceView.prototype._refreshQueryString): (WebInspector.ResourceView.prototype._refreshFormData): (WebInspector.ResourceView.prototype._refreshRequestPayload): (WebInspector.ResourceView.prototype._refreshParms): (WebInspector.ResourceView.prototype._toggleURLdecoding): (WebInspector.ResourceView.prototype._getHeaderValue): (WebInspector.ResourceView.prototype._refreshRequestHeaders):
  • inspector/front-end/inspector.css:
  • inspector/front-end/inspector.js: (WebInspector.addResource): (WebInspector.updateResource):
  • manual-tests/inspector/display-form-data.html: Added.
12:31 Changeset [47902] by barraclough@apple.com

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

Patch by Robert Agoston <Agoston.Robert@stud.u-szeged.hu> on 2009-08-31
Reviewed by Gavin Barraclough.

  • parser/Parser.h:

(JSC::Parser::parse):

12:01 Changeset [47901] by simon.fraser@apple.com

2009-08-31 Simon Fraser <simon.fraser@apple.com>

Followup from r47877; add test for the Obj-C wrapper class for WebkitCSSTransformValue
https://bugs.webkit.org/show_bug.cgi?id=27727

  • platform/mac/fast/dom/wrapper-classes-objc-expected.txt:
  • platform/mac/fast/dom/wrapper-classes-objc.html:
11:37 Changeset [47900] by simon.fraser@apple.com

2009-08-28 Simon Fraser <simon.fraser@apple.com>

Reviewed by Dan Bernstein.

Fix positioning error when a compositing, absolutely-positioned element has an ancestor with opacity.
https://bugs.webkit.org/show_bug.cgi?id=28754

For absolutely-positioned layers, convertToLayerCoords() jumps to the positioned
ancestor, since the layer x and y are relative to that ancestor. However, this could
skip over the ancestorLayer, thus giving the wrong result.

Fix by duplicating the enclosingPositionedAncestor() logic in convertToLayerCoords(),
and checking for ancestorLayer along the way. If found, compute offset of both to
the enclosingPositionedAncestor() and subtract.

This also fixes a positioning bug with abs. positioned elements in reflections,
so there is a new reflection test with a pixel result.

Tests: compositing/geometry/abs-position-inside-opacity.html

fast/reflections/abs-position-in-reflection.html

  • rendering/RenderLayer.cpp: (WebCore::isPositionedContainer): (WebCore::RenderLayer::enclosingPositionedAncestor): (WebCore::RenderLayer::enclosingTransformedAncestor): (WebCore::RenderLayer::convertToLayerCoords):
11:12 Changeset [47899] by aroben@apple.com

Fall back to a Release version of Safari if a Debug one doesn't exist

<http://webkit.org/b/28849>

Reviewed by Sam Weinig.

  • Scripts/webkitdirs.pm:

(safariPath): If the user is working with a Debug build, but there's
no Debug version of Safari present, fall back to using a Release
version of Safari.

10:54 Changeset [47898] by aroben@apple.com

Make safariPath() work for Debug builds of Safari on Windows

<http://webkit.org/b/28849>

Reviewed by Sam Weinig.

  • Scripts/webkitdirs.pm:

(safariPath): If the user is working with a Debug build, add the
_debug suffix to Safari.exe.

10:20 Changeset [47897] by pfeldman@chromium.org

2009-08-31 Pavel Feldman <pfeldman@chromium.org>

Reviewed by Timothy Hatcher.

WebInspector: pass call frames into the frontend as a part of
pausedScript event.

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

  • inspector/InspectorController.cpp: (WebCore::InspectorController::didPause):
  • inspector/InspectorFrontend.cpp: (WebCore::InspectorFrontend::pausedScript):
  • inspector/InspectorFrontend.h:
  • inspector/front-end/ScriptsPanel.js: (WebInspector.ScriptsPanel.prototype.debuggerPaused):
  • inspector/front-end/inspector.js: (WebInspector.pausedScript):
08:06 Changeset [47896] by aroben@apple.com

Give WebKit clients access to the window features specified in window.open

Reviewed by Steve Falkenburg.

  • COMVariantSetter.h: Added COMVariantSetters for bool and float.
  • Interfaces/IWebUIDelegatePrivate.idl: Added IWebUIDelegatePrivate2,

which contains a new version of createWebViewWithRequest that also
passes the window features as an IPropertyBag. This is analagous to
the -createWebViewWithRequest:windowFeatures: method added to
WebUIDelegate on Mac in r27452. Also added key strings for use with
the window features property bag.

  • WebCoreSupport/WebChromeClient.cpp:

(createWindowFeaturesPropertyBag): Added this helper function to turn
a WebCore::WindowFeatures into an IPropertyBag for passing to WebKit
clients.
(WebChromeClient::createWindow): If the UI delegate implements
IWebUIDelegatePrivate2, call the new createWebViewWithRequest function
that takes a window features property bag. If the delegate doesn't
implement the new function, fall back to the old functions.

08:05 Changeset [47895] by aroben@apple.com

A little clean-up in WebChromeClient::createWindow

Reviewed by Steve Falkenburg.

  • WebCoreSupport/WebChromeClient.cpp:

(WebChromeClient::createWindow): Refactored to share more code between
the dialog and non-dialog cases.

05:50 Changeset [47894] by zoltan@webkit.org

2009-08-31 Andras Becsi <becsi.andras@stud.u-szeged.hu>

Reviewed by Ariya Hidayat.

[Qt] Update outdated font metrics in the remaining css1 tests. All tests pass.

  • platform/qt/Skipped:
  • platform/qt/css1/text_properties/letter_spacing-expected.txt:
  • platform/qt/css1/text_properties/line_height-expected.txt:
  • platform/qt/css1/text_properties/text_align-expected.txt:
  • platform/qt/css1/text_properties/text_decoration-expected.txt:
  • platform/qt/css1/text_properties/text_indent-expected.txt:
  • platform/qt/css1/text_properties/text_transform-expected.txt:
  • platform/qt/css1/text_properties/vertical_align-expected.txt:
  • platform/qt/css1/text_properties/word_spacing-expected.txt:
  • platform/qt/css1/units/color_units-expected.txt:
  • platform/qt/css1/units/length_units-expected.txt:
  • platform/qt/css1/units/percentage_units-expected.txt:
  • platform/qt/css1/units/urls-expected.txt:
05:15 Changeset [47893] by zoltan@webkit.org

2009-08-31 Andras Becsi <becsi.andras@stud.u-szeged.hu>

Reviewed by Ariya Hidayat.

[Qt] Update font metrics for these css1 tests.

  • platform/qt/Skipped:
  • platform/qt/css1/formatting_model/canvas-expected.txt:
  • platform/qt/css1/formatting_model/floating_elements-expected.txt:
  • platform/qt/css1/formatting_model/height_of_lines-expected.txt:
  • platform/qt/css1/formatting_model/horizontal_formatting-expected.txt:
  • platform/qt/css1/formatting_model/inline_elements-expected.txt:
  • platform/qt/css1/formatting_model/replaced_elements-expected.txt:
  • platform/qt/css1/formatting_model/vertical_formatting-expected.txt:
  • platform/qt/css1/pseudo/anchor-expected.txt:
  • platform/qt/css1/pseudo/firstletter-expected.txt:
  • platform/qt/css1/pseudo/firstline-expected.txt:
  • platform/qt/css1/pseudo/multiple_pseudo_elements-expected.txt:
  • platform/qt/css1/pseudo/pseudo_elements_in_selectors-expected.txt:
05:09 Changeset [47892] by vestbo@webkit.org

[Qt] Un-blacklist Silverlight on Mac

Reviewed by Ariya Hidayat.

Does not seem to crash anymore, probably due to how we now handle
drawing and event model handshake better.

  • plugins/mac/PluginPackageMac.cpp:

(WebCore::PluginPackage::isPluginBlacklisted):

04:17 Changeset [47891] by zoltan@webkit.org

2009-08-31 Andras Becsi <becsi.andras@stud.u-szeged.hu>

Reviewed by Ariya Hidayat.

[Qt] Update outdated font metrics for these css1 tests.

  • platform/qt/Skipped:
  • platform/qt/css1/color_and_background/background-expected.txt:
  • platform/qt/css1/color_and_background/background_attachment-expected.txt:
  • platform/qt/css1/color_and_background/background_color-expected.txt:
  • platform/qt/css1/color_and_background/background_image-expected.txt:
  • platform/qt/css1/color_and_background/background_position-expected.txt:
  • platform/qt/css1/color_and_background/background_repeat-expected.txt:
  • platform/qt/css1/color_and_background/color-expected.txt:
  • platform/qt/css1/conformance/forward_compatible_parsing-expected.txt:
04:06 Changeset [47890] by eric@webkit.org

2009-08-31 Cameron McCormack <cam@mcc.id.au>

Reviewed by Eric Seidel.

https://bugs.webkit.org/show_bug.cgi?id=28827
SVGSVGElement.unsuspendRedraw() shouldn't throw

  • svg/SVGSVGElement.cpp: (WebCore::SVGSVGElement::unsuspendRedraw):
  • svg/SVGSVGElement.h:
  • svg/SVGSVGElement.idl:
03:55 Changeset [47889] by eric@webkit.org

2009-08-31 Kent Tamura <tkent@chromium.org>

Reviewed by Eric Seidel.

  • html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::list): (WebCore::HTMLInputElement::dataList): (WebCore::HTMLInputElement::selectedOption):
  • html/HTMLInputElement.h:
  • html/HTMLInputElement.idl:
03:45 Changeset [47888] by eric@webkit.org

2009-08-31 Kwang Yul Seo <skyul@company100.net>

Reviewed by Eric Seidel.

Remove ASSERT(frame) in ResourceHandle::start (ResourceHandleCurl.cpp)
https://bugs.webkit.org/show_bug.cgi?id=28802

Remove ASSERT because the frame could be null if the
ResourceHandle is not associated with any frame, e.g. if we are
downloading a file.
If the frame is not null but the page is null this must be an
attempted load from an onUnload handler, so let's just block it.

  • platform/network/curl/ResourceHandleCurl.cpp: (WebCore::ResourceHandle::start):
03:18 Changeset [47887] by eric@webkit.org

2009-08-31 Maxime Simon <simon.maxime@gmail.com>

Reviewed by Eric Seidel.

Build fix for platforms which don't enable DOM_STORAGE.
https://bugs.webkit.org/show_bug.cgi?id=28834

  • bindings/js/ScriptController.cpp: (WebCore::ScriptController::evaluate):
  • bindings/v8/ScriptController.cpp: (WebCore::ScriptController::evaluate):
02:59 Changeset [47886] by vestbo@webkit.org

Fix the Qt/Mac build of TestNetscapePlugin after Qt change 3940f25

02:53 Changeset [47885] by vestbo@webkit.org

Fix the Qt/Mac build after Qt change 3940f25 (LIBS_PRIVATE)

We no longer pick up the libraries/frameworks that Qt was built
against, so we have to add them manually for our targets.

00:49 Changeset [47884] by zoltan@webkit.org

2009-08-31 Renata Hodovan <hodovan.renata@stud.u-szeged.hu>

Reviewed by Ariya Hidayat.

[Qt] Update outdated metrics in css2.1/t040*. (19 files)
Fix relative path in .css files.

  • css2.1/support/css1test64a.css:
  • css2.1/support/css1test64b.css:
  • platform/qt/Skipped:
  • platform/qt/css2.1/t0402-c71-fwd-parsing-00-f-expected.txt:
  • platform/qt/css2.1/t0402-c71-fwd-parsing-01-f-expected.txt:
  • platform/qt/css2.1/t0402-c71-fwd-parsing-02-f-expected.txt:
  • platform/qt/css2.1/t0402-c71-fwd-parsing-03-f-expected.txt:
  • platform/qt/css2.1/t0402-c71-fwd-parsing-04-f-expected.txt:
  • platform/qt/css2.1/t0402-syntax-01-f-expected.txt:
  • platform/qt/css2.1/t0402-syntax-02-f-expected.txt:
  • platform/qt/css2.1/t0402-syntax-03-f-expected.txt:
  • platform/qt/css2.1/t0402-syntax-04-f-expected.txt:
  • platform/qt/css2.1/t0402-syntax-05-f-expected.txt:
  • platform/qt/css2.1/t0402-syntax-06-f-expected.txt:
  • platform/qt/css2.1/t040302-c61-ex-len-00-b-a-expected.txt:
  • platform/qt/css2.1/t040302-c61-phys-len-00-b-expected.txt:
  • platform/qt/css2.1/t040302-c61-rel-len-00-b-ag-expected.txt:
  • platform/qt/css2.1/t040303-c62-percent-00-b-ag-expected.txt:
  • platform/qt/css2.1/t040304-c64-uri-00-a-g-expected.txt:
  • platform/qt/css2.1/t040306-c63-color-00-b-ag-expected.txt:
  • platform/qt/css2.1/t040306-syntax-01-f-expected.txt:
  • platform/qt/css2.1/t040307-syntax-01-b-expected.txt:
Note: See TracTimeline for information about the timeline view.