mrowe@apple.com [Fri, 9 Nov 2007 01:48:46 +0000 (01:48 +0000)]
Versioning.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27627
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
sfalken [Fri, 9 Nov 2007 01:39:16 +0000 (01:39 +0000)]
Fix typo in ChangeLog.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27626
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
sfalken [Fri, 9 Nov 2007 01:32:49 +0000 (01:32 +0000)]
<rdar://problem/
5491463> Wrong dates shown in History menu.
Fix off-by-one error in Windows epoch.
For the Windows DATE type, 1/1/1900 should be 2.0, not 1.0.
DATE is the number of dates since 12/30/1899.
Reviewed by Ada.
* MarshallingHelpers.cpp:
(MarshallingHelpers::windowsEpochAbsoluteTime):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27625
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
alp@webkit.org [Fri, 9 Nov 2007 01:13:28 +0000 (01:13 +0000)]
2007-11-08 Alp Toker <alp@atoker.com>
Reviewed by Mark Rowe.
http://bugs.webkit.org/show_bug.cgi?id=15653
[GTK] Text editor does not handle common keystrokes
Handle more keystrokes in EditorClientGtk. Note that this is a
temporary measure pending a proper solution using GtkBindingSet (see
http://bugs.webkit.org/show_bug.cgi?id=15911).
* WebCoreSupport/EditorClientGtk.cpp:
(WebKit::EditorClient::handleKeypress):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27624
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin@apple.com [Fri, 9 Nov 2007 01:04:54 +0000 (01:04 +0000)]
- fix build
* kjs/nodes.h: Add missing parameter name.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27623
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eseidel [Fri, 9 Nov 2007 00:43:52 +0000 (00:43 +0000)]
2007-11-08 Eric Seidel <eric@webkit.org>
Reviewed by darin.
Add ExpressionNode subclass of Node, use it.
* kjs/grammar.y:
* kjs/nodes.cpp:
(KJS::ForInNode::ForInNode):
* kjs/nodes.h:
(KJS::ExpressionNode::):
(KJS::NullNode::):
(KJS::NullNode::precedence):
(KJS::BooleanNode::):
(KJS::BooleanNode::precedence):
(KJS::RegExpNode::):
(KJS::RegExpNode::precedence):
(KJS::ThisNode::):
(KJS::ThisNode::precedence):
(KJS::ResolveNode::):
(KJS::ElementNode::):
(KJS::ArrayNode::):
(KJS::PropertyNode::):
(KJS::PropertyNode::precedence):
(KJS::PropertyNode::name):
(KJS::PropertyListNode::):
(KJS::ObjectLiteralNode::):
(KJS::ObjectLiteralNode::precedence):
(KJS::BracketAccessorNode::):
(KJS::DotAccessorNode::):
(KJS::DotAccessorNode::precedence):
(KJS::ArgumentListNode::):
(KJS::ArgumentsNode::):
(KJS::NewExprNode::):
(KJS::NewExprNode::precedence):
(KJS::FunctionCallValueNode::):
(KJS::FunctionCallValueNode::precedence):
(KJS::FunctionCallResolveNode::):
(KJS::FunctionCallBracketNode::):
(KJS::FunctionCallBracketNode::precedence):
(KJS::FunctionCallDotNode::):
(KJS::FunctionCallDotNode::precedence):
(KJS::PrePostResolveNode::):
(KJS::PostfixBracketNode::):
(KJS::PostfixBracketNode::precedence):
(KJS::PostIncBracketNode::):
(KJS::PostIncBracketNode::isIncrement):
(KJS::PostDecBracketNode::):
(KJS::PostDecBracketNode::isIncrement):
(KJS::PostfixDotNode::):
(KJS::PostfixDotNode::precedence):
(KJS::PostIncDotNode::):
(KJS::PostIncDotNode::isIncrement):
(KJS::PostDecDotNode::):
(KJS::PostDecDotNode::isIncrement):
(KJS::PostfixErrorNode::):
(KJS::PostfixErrorNode::precedence):
(KJS::DeleteResolveNode::):
(KJS::DeleteBracketNode::):
(KJS::DeleteBracketNode::precedence):
(KJS::DeleteDotNode::):
(KJS::DeleteDotNode::precedence):
(KJS::DeleteValueNode::):
(KJS::DeleteValueNode::precedence):
(KJS::VoidNode::):
(KJS::VoidNode::precedence):
(KJS::TypeOfResolveNode::):
(KJS::TypeOfValueNode::):
(KJS::PrefixBracketNode::):
(KJS::PrefixBracketNode::precedence):
(KJS::PreIncBracketNode::):
(KJS::PreIncBracketNode::isIncrement):
(KJS::PreDecBracketNode::):
(KJS::PreDecBracketNode::isIncrement):
(KJS::PrefixDotNode::):
(KJS::PrefixDotNode::precedence):
(KJS::PreIncDotNode::):
(KJS::PreIncDotNode::isIncrement):
(KJS::PreDecDotNode::):
(KJS::PreDecDotNode::isIncrement):
(KJS::PrefixErrorNode::):
(KJS::PrefixErrorNode::precedence):
(KJS::UnaryPlusNode::):
(KJS::UnaryPlusNode::precedence):
(KJS::NegateNode::):
(KJS::NegateNode::precedence):
(KJS::BitwiseNotNode::):
(KJS::BitwiseNotNode::precedence):
(KJS::LogicalNotNode::):
(KJS::LogicalNotNode::precedence):
(KJS::AddNode::):
(KJS::AddNode::precedence):
(KJS::LeftShiftNode::):
(KJS::LeftShiftNode::precedence):
(KJS::RightShiftNode::):
(KJS::RightShiftNode::precedence):
(KJS::UnsignedRightShiftNode::):
(KJS::UnsignedRightShiftNode::precedence):
(KJS::LessNode::):
(KJS::LessNode::precedence):
(KJS::GreaterNode::):
(KJS::GreaterNode::precedence):
(KJS::LessEqNode::):
(KJS::LessEqNode::precedence):
(KJS::GreaterEqNode::):
(KJS::GreaterEqNode::precedence):
(KJS::InstanceOfNode::):
(KJS::InstanceOfNode::precedence):
(KJS::InNode::):
(KJS::InNode::precedence):
(KJS::EqualNode::):
(KJS::EqualNode::precedence):
(KJS::NotEqualNode::):
(KJS::NotEqualNode::precedence):
(KJS::StrictEqualNode::):
(KJS::StrictEqualNode::precedence):
(KJS::NotStrictEqualNode::):
(KJS::NotStrictEqualNode::precedence):
(KJS::BitAndNode::):
(KJS::BitAndNode::precedence):
(KJS::BitOrNode::):
(KJS::BitOrNode::precedence):
(KJS::BitXOrNode::):
(KJS::BitXOrNode::precedence):
(KJS::LogicalAndNode::):
(KJS::LogicalAndNode::precedence):
(KJS::LogicalOrNode::):
(KJS::LogicalOrNode::precedence):
(KJS::ConditionalNode::):
(KJS::ConditionalNode::precedence):
(KJS::ReadModifyResolveNode::):
(KJS::ReadModifyResolveNode::precedence):
(KJS::AssignResolveNode::):
(KJS::AssignResolveNode::precedence):
(KJS::ReadModifyBracketNode::):
(KJS::ReadModifyBracketNode::precedence):
(KJS::AssignBracketNode::):
(KJS::AssignBracketNode::precedence):
(KJS::AssignDotNode::):
(KJS::AssignDotNode::precedence):
(KJS::ReadModifyDotNode::):
(KJS::ReadModifyDotNode::precedence):
(KJS::AssignErrorNode::):
(KJS::AssignErrorNode::precedence):
(KJS::CommaNode::):
(KJS::CommaNode::precedence):
(KJS::AssignExprNode::):
(KJS::AssignExprNode::precedence):
(KJS::ExprStatementNode::):
(KJS::IfNode::):
(KJS::DoWhileNode::):
(KJS::WhileNode::):
(KJS::ReturnNode::):
(KJS::WithNode::):
(KJS::ThrowNode::):
(KJS::ParameterNode::):
(KJS::CaseClauseNode::):
(KJS::CaseClauseNode::precedence):
(KJS::ClauseListNode::):
(KJS::SwitchNode::):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27622
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
weinig@apple.com [Fri, 9 Nov 2007 00:09:48 +0000 (00:09 +0000)]
Correct ChangeLogs to reflect that the speedup was 1% not .5%. Turns out you are not supposed to test in Debug builds.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27621
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren@apple.com [Thu, 8 Nov 2007 23:51:44 +0000 (23:51 +0000)]
Fixed bug title in old check-in.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27620
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
sfalken [Thu, 8 Nov 2007 23:49:56 +0000 (23:49 +0000)]
<rdar://problem/
5524082> Allow images to be dragged out directly into other apps
We weren't including CF_HDROP in our image drops. This broke drag of
images out of the browser window directly into other apps (examples
include notepad, mspaint, msword).
Reviewed by Oliver, Ada.
* platform/win/ClipboardWin.cpp:
(WebCore::createGlobalImageFileContent): Removed unused variable.
(WebCore::createGlobalHDropContent): Added
(WebCore::writeFileToDataObject): Write HDROP data if available.
(WebCore::writeImageToDataObject): Write HDROP for dragged images.
(WebCore::ClipboardWin::writeURL): Don't write HDROP for dragged URLs.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27619
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
alp@webkit.org [Thu, 8 Nov 2007 23:31:16 +0000 (23:31 +0000)]
2007-11-08 Xan Lopez <xan@gnome.org>
Reviewed by Alp.
http://bugs.webkit.org/show_bug.cgi?id=15908
Use g_object_ref_sink when available
* platform/gtk/PopupMenuGtk.cpp:
(WebCore::PopupMenu::show):
* platform/gtk/ScrollViewGtk.cpp:
(WebCore::ScrollView::setGtkAdjustments):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27618
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mitz@apple.com [Thu, 8 Nov 2007 22:59:42 +0000 (22:59 +0000)]
WebCore:
Reviewed by Beth Dakin.
- fix <rdar://problem/
5491922> REGRESSION (Safari 2-3): Flash-based "Cash Optimizer" on etrade.com does not draw completely
Test: fast/dom/length-attribute-mapping.html
* dom/StyledElement.cpp:
(WebCore::StyledElement::addCSSLength): Changed the garbage-stripping
logic to stop after the first "%" or "*" in the string. This allows for
"100%25" to be mapped to "100%" like it is in Firefox and WinIE.
LayoutTests:
Reviewed by Beth Dakin.
- test for <rdar://problem/
5491922> REGRESSION (Safari 2-3): Flash-based "Cash Optimizer" on etrade.com does not draw completely
* fast/dom/length-attribute-mapping-expected.txt: Added.
* fast/dom/length-attribute-mapping.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27617
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kmccullo [Thu, 8 Nov 2007 22:26:29 +0000 (22:26 +0000)]
WebCore:
- Build fix.
* loader/FrameLoaderClient.h:
* platform/graphics/svg/SVGImageEmptyClients.h:
(WebCore::SVGEmptyFrameLoaderClient::windowObjectCleared):
WebKit/mac:
Build Fix.
* WebCoreSupport/WebFrameLoaderClient.h:
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::windowObjectCleared):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27616
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
oliver [Thu, 8 Nov 2007 22:23:39 +0000 (22:23 +0000)]
Add a fast path for bitwise-and of two immediate numbers for a 0.7% improvement in SunSpider (4% bitop improvement).
Reviewed by Sam.
This only improves bitwise-and performance, as the additional logic required
for similar code paths on or, xor, and shifting requires additional operations
and branches that negate (and in certain cases, regress) any advantage we might
otherwise receive.
This improves performance on all bitop tests, the cryptography tests, as well as
the string-base64 and string-unpack-code tests. No significant degradation on
any other tests.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27615
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aroben@apple.com [Thu, 8 Nov 2007 21:49:20 +0000 (21:49 +0000)]
Stop using KJS inside of MathExtras.h
Reviewed by Darin.
* wtf/MathExtras.h: Removed an unused header, and a now-unused
forward-declaration.
(wtf_atan2): Use std::numeric_limits intead of KJS.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27614
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kmccullo [Thu, 8 Nov 2007 21:45:18 +0000 (21:45 +0000)]
Reviewed by Sam.
- Use the new IWebFrame [local] function signature and get the shared
server correctly.
* Drosera/win/DebuggerClient.cpp:
(DebuggerClient::didFinishLoadForFrame):
* Drosera/win/ServerConnection.cpp:
(ServerConnection::attemptToCreateServerConnection):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27613
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kmccullo [Thu, 8 Nov 2007 21:43:31 +0000 (21:43 +0000)]
WebCore:
Reviewed by Sam.
- windowObjectCleared() is no longer const. It needs to setup the
script debugger and cannot be const to do so.
* loader/FrameLoaderClient.h:
* platform/graphics/svg/SVGImageEmptyClients.h:
(WebCore::SVGEmptyFrameLoaderClient::windowObjectCleared):
WebKit/gtk:
Reviewed by Sam.
- windowObjectCleared() is no longer const. It needs to setup the
script debugger and cannot be const to do so.
* WebCoreSupport/FrameLoaderClientGtk.cpp:
(WebKit::FrameLoaderClient::windowObjectCleared):
* WebCoreSupport/FrameLoaderClientGtk.h:
WebKit/qt:
Reviewed by Sam.
- windowObjectCleared() is no longer const. It needs to setup the
script debugger and cannot be const to do so.
* WebCoreSupport/FrameLoaderClientQt.cpp:
(WebCore::FrameLoaderClientQt::windowObjectCleared):
* WebCoreSupport/FrameLoaderClientQt.h:
WebKit/win:
Reviewed by Sam.
- With this change Drosera can now get the source of a website and the
listings of the sources it gets. This also lays the foundation for
letting Drosera show the scope chain of the JavaScript stack.
* Interfaces/IWebFrame.idl: Changed the signature of the local function,
globalContext(), because COM was unable to marshal this object with the
other signature.
* Interfaces/IWebScriptDebugServer.idl: Of course adding and removing
a listener cannot be done in a const function.
* WebChromeClient.h: Added accessor to the WebView for the new added
kit() function in WebFrame.
(WebChromeClient::webView):
* WebFrame.cpp: Added a script debugger object and the necessary
functions to attach and communicate with it. Also needed to change the
local function, globalContext(), because of a COM issue.
(kit):
(WebFrame::WebFrame):
(WebFrame::globalContext):
(WebFrame::loadData):
(WebFrame::attachScriptDebugger):
(WebFrame::detachScriptDebugger):
(WebFrame::dispatchDidLoadMainResource):
(WebFrame::windowObjectCleared):
* WebFrame.h: Ditto.
* WebHTMLRepresentation.cpp: Implemented documentSource so Drosera has
some source code to display.
(WebHTMLRepresentation::WebHTMLRepresentation):
(WebHTMLRepresentation::documentSource):
* WebKit.vcproj/WebKit.vcproj: Added the new WebScriptDebugger class.
* WebScriptCallFrame.cpp: Implemented much of this class' functionality.
(EnumScopes::EnumScopes): Made an EnumScopes class to create an
IEnumVARIANT to wrap a ScopeChain for Drosera.
(EnumScopes::QueryInterface):
(EnumScopes::AddRef):
(EnumScopes::Release):
(EnumScopes::Next):
(EnumScopes::Skip):
(EnumScopes::Reset):
(EnumScopes::Clone):
(WebScriptCallFrame::caller):
(WebScriptCallFrame::scopeChain):
(WebScriptCallFrame::functionName):
(WebScriptCallFrame::stringByEvaluatingJavaScriptFromString):
* WebScriptCallFrame.h: Added member data needed for the above functions
* WebScriptDebugServer.cpp: Began implementing.
(WebScriptDebugServer::listenerCount):
(EnumViews::QueryInterface):
(EnumViews::AddRef):
(EnumViews::Release):
(EnumViews::Next):
(EnumViews::Skip):
(EnumViews::Reset):
(EnumViews::Clone):
(WebScriptDebugServer::WebScriptDebugServer):
(WebScriptDebugServer::createInstance):
(WebScriptDebugServer::sharedWebScriptDebugServer):
(WebScriptDebugServer::AddRef):
(WebScriptDebugServer::Release):
(WebScriptDebugServer::addListener):
(WebScriptDebugServer::removeListener):
(WebScriptDebugServer::step):
(WebScriptDebugServer::pause):
(WebScriptDebugServer::resume):
(WebScriptDebugServer::isPaused):
(WebScriptDebugServer::suspendProcessIfPaused):
(WebScriptDebugServer::didLoadMainResourceForDataSource):
(WebScriptDebugServer::didParseSource):
(WebScriptDebugServer::failedToParseSource):
(WebScriptDebugServer::didEnterCallFrame):
(WebScriptDebugServer::willExecuteStatement):
(WebScriptDebugServer::willLeaveCallFrame):
(WebScriptDebugServer::exceptionWasRaised):
* WebScriptDebugServer.h: Began implementing.
* WebScriptDebugger.cpp: Added.
(WebScriptDebugger::WebScriptDebugger):
(WebScriptDebugger::sourceParsed):
* WebScriptDebugger.h: Added.
* WebScriptScope.cpp: Make this class use createInstance which is more
in line with our guidelines.
(WebScriptScope::WebScriptScope):
(WebScriptScope::createInstance):
* WebScriptScope.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27612
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aroben@apple.com [Thu, 8 Nov 2007 21:27:13 +0000 (21:27 +0000)]
Hopeful Windows build fix
* rendering/RenderObject.cpp: Touch this file to make it recompile.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27611
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
weinig@apple.com [Thu, 8 Nov 2007 21:26:49 +0000 (21:26 +0000)]
Windows build fix.
* kjs/date_object.cpp:
(KJS::DateProtoFuncToLocaleString::callAsFunction): Fix unused arg warning.
(KJS::DateProtoFuncToLocaleDateString::callAsFunction): ditto
(KJS::DateProtoFuncToLocaleTimeString::callAsFunction): ditto
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27610
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mrowe@apple.com [Thu, 8 Nov 2007 21:03:13 +0000 (21:03 +0000)]
2007-11-08 Mark Rowe <mrowe@apple.com>
Gtk build fix.
* kjs/lookup.h: Add missing include.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27609
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
weinig@apple.com [Thu, 8 Nov 2007 20:31:26 +0000 (20:31 +0000)]
JavaScriptCore:
Reviewed by Darin.
Convert JavaScript internal function objects to use one class per
function. This avoids a switch statement inside what used to be
the shared function classes and will allow Shark to better analyze
the code.
To make this switch, the value property of the HashEntry was changed
to a union of an intptr_t (which is used to continue handle valueGetters)
and function pointer which points to a static constructor for the
individual new function objects.
SunSpider claims this is a 0.5% speedup.
* kjs/array_object.cpp:
(KJS::ArrayPrototype::getOwnPropertySlot):
(KJS::getProperty):
(KJS::ArrayProtoFuncToString::callAsFunction):
(KJS::ArrayProtoFuncToLocaleString::callAsFunction):
(KJS::ArrayProtoFuncJoin::callAsFunction):
(KJS::ArrayProtoFuncConcat::callAsFunction):
(KJS::ArrayProtoFuncPop::callAsFunction):
(KJS::ArrayProtoFuncPush::callAsFunction):
(KJS::ArrayProtoFuncReverse::callAsFunction):
(KJS::ArrayProtoFuncShift::callAsFunction):
(KJS::ArrayProtoFuncSlice::callAsFunction):
(KJS::ArrayProtoFuncSort::callAsFunction):
(KJS::ArrayProtoFuncSplice::callAsFunction):
(KJS::ArrayProtoFuncUnShift::callAsFunction):
(KJS::ArrayProtoFuncFilter::callAsFunction):
(KJS::ArrayProtoFuncMap::callAsFunction):
(KJS::ArrayProtoFuncEvery::callAsFunction):
(KJS::ArrayProtoFuncForEach::callAsFunction):
(KJS::ArrayProtoFuncSome::callAsFunction):
(KJS::ArrayProtoFuncIndexOf::callAsFunction):
(KJS::ArrayProtoFuncLastIndexOf::callAsFunction):
* kjs/array_object.h:
(KJS::ArrayPrototype::classInfo):
* kjs/create_hash_table:
* kjs/date_object.cpp:
(KJS::DatePrototype::getOwnPropertySlot):
(KJS::DateProtoFuncToString::callAsFunction):
(KJS::DateProtoFuncToUTCString::callAsFunction):
(KJS::DateProtoFuncToDateString::callAsFunction):
(KJS::DateProtoFuncToTimeString::callAsFunction):
(KJS::DateProtoFuncToLocaleString::callAsFunction):
(KJS::DateProtoFuncToLocaleDateString::callAsFunction):
(KJS::DateProtoFuncToLocaleTimeString::callAsFunction):
(KJS::DateProtoFuncValueOf::callAsFunction):
(KJS::DateProtoFuncGetTime::callAsFunction):
(KJS::DateProtoFuncGetFullYear::callAsFunction):
(KJS::DateProtoFuncGetUTCFullYear::callAsFunction):
(KJS::DateProtoFuncToGMTString::callAsFunction):
(KJS::DateProtoFuncGetMonth::callAsFunction):
(KJS::DateProtoFuncGetUTCMonth::callAsFunction):
(KJS::DateProtoFuncGetDate::callAsFunction):
(KJS::DateProtoFuncGetUTCDate::callAsFunction):
(KJS::DateProtoFuncGetDay::callAsFunction):
(KJS::DateProtoFuncGetUTCDay::callAsFunction):
(KJS::DateProtoFuncGetHours::callAsFunction):
(KJS::DateProtoFuncGetUTCHours::callAsFunction):
(KJS::DateProtoFuncGetMinutes::callAsFunction):
(KJS::DateProtoFuncGetUTCMinutes::callAsFunction):
(KJS::DateProtoFuncGetSeconds::callAsFunction):
(KJS::DateProtoFuncGetUTCSeconds::callAsFunction):
(KJS::DateProtoFuncGetMilliSeconds::callAsFunction):
(KJS::DateProtoFuncGetUTCMilliseconds::callAsFunction):
(KJS::DateProtoFuncGetTimezoneOffset::callAsFunction):
(KJS::DateProtoFuncSetTime::callAsFunction):
(KJS::DateProtoFuncSetMilliSeconds::callAsFunction):
(KJS::DateProtoFuncSetUTCMilliseconds::callAsFunction):
(KJS::DateProtoFuncSetSeconds::callAsFunction):
(KJS::DateProtoFuncSetUTCSeconds::callAsFunction):
(KJS::DateProtoFuncSetMinutes::callAsFunction):
(KJS::DateProtoFuncSetUTCMinutes::callAsFunction):
(KJS::DateProtoFuncSetHours::callAsFunction):
(KJS::DateProtoFuncSetUTCHours::callAsFunction):
(KJS::DateProtoFuncSetDate::callAsFunction):
(KJS::DateProtoFuncSetUTCDate::callAsFunction):
(KJS::DateProtoFuncSetMonth::callAsFunction):
(KJS::DateProtoFuncSetUTCMonth::callAsFunction):
(KJS::DateProtoFuncSetFullYear::callAsFunction):
(KJS::DateProtoFuncSetUTCFullYear::callAsFunction):
(KJS::DateProtoFuncSetYear::callAsFunction):
(KJS::DateProtoFuncGetYear::callAsFunction):
* kjs/date_object.h:
* kjs/lookup.cpp:
(KJS::Lookup::find):
* kjs/lookup.h:
(KJS::HashEntry::):
(KJS::staticFunctionGetter):
(KJS::staticValueGetter):
(KJS::getStaticPropertySlot):
(KJS::getStaticFunctionSlot):
(KJS::lookupPut):
* kjs/math_object.cpp:
(KJS::MathObjectImp::getOwnPropertySlot):
(KJS::MathProtoFuncAbs::callAsFunction):
(KJS::MathProtoFuncACos::callAsFunction):
(KJS::MathProtoFuncASin::callAsFunction):
(KJS::MathProtoFuncATan::callAsFunction):
(KJS::MathProtoFuncATan2::callAsFunction):
(KJS::MathProtoFuncCeil::callAsFunction):
(KJS::MathProtoFuncCos::callAsFunction):
(KJS::MathProtoFuncExp::callAsFunction):
(KJS::MathProtoFuncFloor::callAsFunction):
(KJS::MathProtoFuncLog::callAsFunction):
(KJS::MathProtoFuncMax::callAsFunction):
(KJS::MathProtoFuncMin::callAsFunction):
(KJS::MathProtoFuncPow::callAsFunction):
(KJS::MathProtoFuncRandom::callAsFunction):
(KJS::MathProtoFuncRound::callAsFunction):
(KJS::MathProtoFuncSin::callAsFunction):
(KJS::MathProtoFuncSqrt::callAsFunction):
(KJS::MathProtoFuncTan::callAsFunction):
* kjs/math_object.h:
(KJS::MathObjectImp::classInfo):
(KJS::MathObjectImp::):
* kjs/string_object.cpp:
(KJS::StringPrototype::getOwnPropertySlot):
(KJS::StringProtoFuncToString::callAsFunction):
(KJS::StringProtoFuncValueOf::callAsFunction):
(KJS::StringProtoFuncCharAt::callAsFunction):
(KJS::StringProtoFuncCharCodeAt::callAsFunction):
(KJS::StringProtoFuncConcat::callAsFunction):
(KJS::StringProtoFuncIndexOf::callAsFunction):
(KJS::StringProtoFuncLastIndexOf::callAsFunction):
(KJS::StringProtoFuncMatch::callAsFunction):
(KJS::StringProtoFuncSearch::callAsFunction):
(KJS::StringProtoFuncReplace::callAsFunction):
(KJS::StringProtoFuncSlice::callAsFunction):
(KJS::StringProtoFuncSplit::callAsFunction):
(KJS::StringProtoFuncSubstr::callAsFunction):
(KJS::StringProtoFuncSubstring::callAsFunction):
(KJS::StringProtoFuncToLowerCase::callAsFunction):
(KJS::StringProtoFuncToUpperCase::callAsFunction):
(KJS::StringProtoFuncToLocaleLowerCase::callAsFunction):
(KJS::StringProtoFuncToLocaleUpperCase::callAsFunction):
(KJS::StringProtoFuncLocaleCompare::callAsFunction):
(KJS::StringProtoFuncBig::callAsFunction):
(KJS::StringProtoFuncSmall::callAsFunction):
(KJS::StringProtoFuncBlink::callAsFunction):
(KJS::StringProtoFuncBold::callAsFunction):
(KJS::StringProtoFuncFixed::callAsFunction):
(KJS::StringProtoFuncItalics::callAsFunction):
(KJS::StringProtoFuncStrike::callAsFunction):
(KJS::StringProtoFuncSub::callAsFunction):
(KJS::StringProtoFuncSup::callAsFunction):
(KJS::StringProtoFuncFontcolor::callAsFunction):
(KJS::StringProtoFuncFontsize::callAsFunction):
(KJS::StringProtoFuncAnchor::callAsFunction):
(KJS::StringProtoFuncLink::callAsFunction):
* kjs/string_object.h:
WebCore:
Reviewed by Darin.
Convert JavaScript internal function objects to use one class per
function. This avoids a switch statement inside what used to be
the shared function classes and will allow Shark to better analyze
the code.
To make this switch, the value property of the HashEntry was changed
to a union of an intptr_t (which is used to continue handle valueGetters)
and function pointer which points to a static constructor for the
individual new function objects.
SunSpider claims this is a 0.5% speedup.
- On the WebCore side, I updated CodeGeneratorJS.pm to generate the
new classes and hand updated the remain non-generated (groan) classes.
* bindings/js/JSDOMWindowCustom.cpp:
(WebCore::JSDOMWindow::customGetOwnPropertySlot):
* bindings/js/JSEventTargetNode.cpp:
(WebCore::JSEventTargetNodePrototypeFunctionAddEventListener::callAsFunction):
(WebCore::JSEventTargetNodePrototypeFunctionRemoveEventListener::callAsFunction):
(WebCore::JSEventTargetNodePrototypeFunctionDispatchEvent::callAsFunction):
* bindings/js/JSEventTargetNode.h:
* bindings/js/JSHTMLInputElementBase.cpp:
(WebCore::JSHTMLInputElementBaseFunctionSetSelectionRange::callAsFunction):
(WebCore::JSHTMLInputElementBase::getOwnPropertySlot):
* bindings/js/JSHTMLInputElementBase.h:
(WebCore::JSHTMLInputElementBase::):
* bindings/js/JSXMLHttpRequest.cpp:
(KJS::JSXMLHttpRequestPrototypeFunctionAbort::callAsFunction):
(KJS::JSXMLHttpRequestPrototypeFunctionGetAllResponseHeaders::callAsFunction):
(KJS::JSXMLHttpRequestPrototypeFunctionGetResponseHeader::callAsFunction):
(KJS::JSXMLHttpRequestPrototypeFunctionOpen::callAsFunction):
(KJS::JSXMLHttpRequestPrototypeFunctionSend::callAsFunction):
(KJS::JSXMLHttpRequestPrototypeFunctionSetRequestHeader::callAsFunction):
(KJS::JSXMLHttpRequestPrototypeFunctionOverrideMIMEType::callAsFunction):
(KJS::JSXMLHttpRequestPrototypeFunctionAddEventListener::callAsFunction):
(KJS::JSXMLHttpRequestPrototypeFunctionRemoveEventListener::callAsFunction):
(KJS::JSXMLHttpRequestPrototypeFunctionDispatchEvent::callAsFunction):
* bindings/js/JSXMLHttpRequest.h:
(KJS::JSXMLHttpRequest::impl):
* bindings/js/JSXSLTProcessor.cpp:
(KJS::JSXSLTProcessorPrototypeFunctionImportStylesheet::callAsFunction):
(KJS::JSXSLTProcessorPrototypeFunctionTransformToFragment::callAsFunction):
(KJS::JSXSLTProcessorPrototypeFunctionTransformToDocument::callAsFunction):
(KJS::JSXSLTProcessorPrototypeFunctionSetParameter::callAsFunction):
(KJS::JSXSLTProcessorPrototypeFunctionGetParameter::callAsFunction):
(KJS::JSXSLTProcessorPrototypeFunctionRemoveParameter::callAsFunction):
(KJS::JSXSLTProcessorPrototypeFunctionClearParameters::callAsFunction):
(KJS::JSXSLTProcessorPrototypeFunctionReset::callAsFunction):
* bindings/js/JSXSLTProcessor.h:
* bindings/js/kjs_events.cpp:
(WebCore::JSClipboardPrototypeFunctionClearData::callAsFunction):
(WebCore::JSClipboardPrototypeFunctionGetData::callAsFunction):
(WebCore::JSClipboardPrototypeFunctionSetData::callAsFunction):
(WebCore::JSClipboardPrototypeFunctionSetDragImage::callAsFunction):
* bindings/js/kjs_events.h:
* bindings/js/kjs_navigator.cpp:
(KJS::Plugins::):
(KJS::Navigator::getOwnPropertySlot):
(KJS::Plugins::getOwnPropertySlot):
(KJS::PluginsFunctionRefresh::callAsFunction):
(KJS::NavigatorProtoFuncJavaEnabled::callAsFunction):
* bindings/js/kjs_navigator.h:
(KJS::Navigator::):
* bindings/js/kjs_window.cpp:
(KJS::Window::getOwnPropertySlot):
(KJS::Window::put):
(KJS::WindowProtoFuncAToB::callAsFunction):
(KJS::WindowProtoFuncBToA::callAsFunction):
(KJS::WindowProtoFuncOpen::callAsFunction):
(KJS::WindowProtoFuncScrollBy::callAsFunction):
(KJS::WindowProtoFuncScrollTo::callAsFunction):
(KJS::WindowProtoFuncMoveBy::callAsFunction):
(KJS::WindowProtoFuncMoveTo::callAsFunction):
(KJS::WindowProtoFuncResizeBy::callAsFunction):
(KJS::WindowProtoFuncResizeTo::callAsFunction):
(KJS::WindowProtoFuncSetTimeout::callAsFunction):
(KJS::WindowProtoFuncClearTimeout::callAsFunction):
(KJS::WindowProtoFuncSetInterval::callAsFunction):
(KJS::WindowProtoFuncAddEventListener::callAsFunction):
(KJS::WindowProtoFuncRemoveEventListener::callAsFunction):
(KJS::WindowProtoFuncShowModalDialog::callAsFunction):
(KJS::WindowProtoFuncNotImplemented::callAsFunction):
(KJS::Location::getOwnPropertySlot):
(KJS::Location::put):
(KJS::LocationProtoFuncReplace::callAsFunction):
(KJS::LocationProtoFuncReload::callAsFunction):
(KJS::LocationProtoFuncAssign::callAsFunction):
(KJS::LocationProtoFuncToString::callAsFunction):
* bindings/js/kjs_window.h:
(KJS::Window::):
* bindings/scripts/CodeGeneratorJS.pm:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27608
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aroben@apple.com [Thu, 8 Nov 2007 20:22:38 +0000 (20:22 +0000)]
Windows build fix
Reviewed by Sam and Ada.
* wtf/MathExtras.h: Get rid of a circular #include dependency to fix
the build.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27607
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aroben@apple.com [Thu, 8 Nov 2007 19:58:20 +0000 (19:58 +0000)]
Fix a precedence warning on Windows
* kjs/JSImmediate.h:
(KJS::JSImmediate::toBoolean):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27606
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mrowe@apple.com [Thu, 8 Nov 2007 19:49:23 +0000 (19:49 +0000)]
2007-11-08 Mark Rowe <mrowe@apple.com>
Build fix for JavaScriptGlue.
* wtf/MathExtras.h: Include stdlib.h for srand and RAND_MAX.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27605
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mrowe@apple.com [Thu, 8 Nov 2007 19:45:49 +0000 (19:45 +0000)]
2007-11-08 Mark Rowe <mrowe@apple.com>
Build fix.
* ForwardingHeaders/wtf/MathExtras.h: Copied from WebCore/ForwardingHeaders/wtf/MathExtras.h.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27604
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin@apple.com [Thu, 8 Nov 2007 19:38:49 +0000 (19:38 +0000)]
- Windows build fix
* kjs/JSImmediate.h: Include MathExtras.h rather than math.h since this file uses "signbit".
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27603
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
oliver [Thu, 8 Nov 2007 18:27:21 +0000 (18:27 +0000)]
Replace the use of floats for immediate values with the use of integers for a 4.5% improvement in SunSpider.
Reviewed by Darin.
Unfortunately this change results in NaN, +Inf, -Inf, and -0 being heap allocated now, but
we should now have faster array access, faster immediate to double conversion, and the
potential to further improve bitwise operators in future.
This also removes the need for unions to avoid strict aliasing problems when extracting
a value from immediates.
* kjs/JSImmediate.h:
(KJS::):
(KJS::JSImmediate::trueImmediate):
(KJS::JSImmediate::falseImmediate):
(KJS::JSImmediate::undefinedImmediate):
(KJS::JSImmediate::nullImmediate):
(KJS::JSImmediate::toBoolean):
* kjs/value.h:
(KJS::jsNaN):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27602
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mrowe@apple.com [Thu, 8 Nov 2007 17:18:22 +0000 (17:18 +0000)]
2007-11-08 Mark Rowe <mrowe@apple.com>
Fix the Gtk, Qt and Wx builds.
* platform/gtk/TemporaryLinkStubs.cpp:
* platform/qt/TemporaryLinkStubs.cpp:
* platform/wx/TemporaryLinkStubs.cpp:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27601
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mrowe@apple.com [Thu, 8 Nov 2007 16:50:03 +0000 (16:50 +0000)]
2007-11-08 Mark Rowe <mrowe@apple.com>
Not reviewed. Fix two instances of includes using the wrong case in the filename.
* platform/graphics/mac/MoviePrivateQTKit.mm:
* platform/wx/MimeTypeRegistryWx.cpp:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27600
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin@apple.com [Thu, 8 Nov 2007 15:42:46 +0000 (15:42 +0000)]
WebCore:
Reviewed by Adam.
- fix <rdar://problem/
5552943> accesskey does not focus <button> elements
Test: fast/forms/access-key.html
* html/HTMLButtonElement.cpp: (WebCore::HTMLButtonElement::accessKeyAction):
Added a call to focus.
LayoutTests:
Reviewed by Adam.
- test changes for <rdar://problem/
5552943> accesskey does not focus <button> elements
* fast/forms/access-key.html: Check for both focus and click events on all elements, but
resisted the urge to switch to the American spelling for "focused".
* fast/forms/access-key-expected.txt: Updated to reflect the bug fix ("1 button focussed"),
the fact that <input type=button>, <input type=checkbox>, <input type=submit>, and
<input type=reset> are all both focused and clicked ("2 input type button clicked",
"3 input type checkbox clicked", "5 input type submit focussed", and
"6 input type reset focussed"). Unfortunately this now also demonstrates that we don't
send a click to <input type=text> and Gecko does. And there are still quite a few types
that are not covered.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27599
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin@apple.com [Thu, 8 Nov 2007 15:40:40 +0000 (15:40 +0000)]
WebCore:
Reviewed by Steve.
- cut down on notImplemented() functions on Windows
* bridge/AXObjectCache.h: Put #if around the accessibility
global.
* bridge/win/FrameWin.cpp: (WebCore::Frame::setNeedsReapplyStyles):
Moved here from TemporaryLinkStubs.
* dom/Document.cpp: (WebCore::Document::lastModified): Re-implemented
using the ResourceResponse that's now available from the DocumentLoader.
* editing/JSEditor.cpp: (execTranspose): Changed to call transpose() on
the Editor instead of the obsolete one on the Frame.
* loader/DocumentLoader.h: Removed getResponseModifiedHeader.
* loader/FrameLoader.h: Removed overrideMediaType.
* loader/gtk/DocumentLoaderGtk.cpp: Removed.
* loader/mac/DocumentLoaderMac.mm: Removed.
* loader/qt/DocumentLoaderQt.cpp: Removed.
* page/Frame.cpp: Removed transpose.
* page/Frame.h: Ditto.
* page/FrameView.h: Removed updateBorder.
* page/gtk/FrameGtk.cpp: Removed issueTransposeCommand.
* page/mac/FrameMac.mm: Ditto.
* page/mac/WebCoreFrameBridge.h: Removed issueTransposeCommand and
overrideMediaType.
* page/qt/FrameQt.cpp: Removed issueTransposeCommand.
* platform/gtk/TemporaryLinkStubs.cpp: Removed gAccessibilityEnabled.
* platform/qt/TemporaryLinkStubs.cpp: Ditto.
* platform/win/TemporaryLinkStubs.cpp: Removed or moved all but 3 of the stubs.
* platform/wx/TemporaryLinkStubs.cpp: Removed gAccessibilityEnabled,
issueTransposeCommand, and overrideMediaType.
* platform/network/cf/ResourceHandleCFNet.cpp:
(WebCore::ResourceHandle::loadsBlocked): Moved here from TemporaryLinkStubs.
(WebCore::ResourceHandle::willLoadFromCache): Ditto.
* platform/win/GraphicsContextWin.cpp:
(WebCore::GraphicsContextPlatformPrivate::clip): Ditto.
* platform/win/ScrollViewWin.cpp: (WebCore::ScrollView::inWindow): Ditto.
* platform/win/SystemTimeWin.cpp: (WebCore::userIdleTime): Ditto.
* platform/win/WidgetWin.cpp: (WebCore::Widget::setIsSelected): Ditto.
* WebCore.pro: Updated for removed files.
* WebCore.xcodeproj/project.pbxproj: Updated for removed file.
WebKit/mac:
Reviewed by Steve.
- removed some unused WebCore bridge methods
* WebCoreSupport/WebFrameBridge.mm: Removed issueTransposeCommand and overrideMediaType.
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::overrideMediaType): Changed to call WebView directly instead of
using the bridge object.
WebKit/win:
Reviewed by Steve.
* Interfaces/IWebUIDelegate.idl: Added the functions needed below.
* WebChromeClient.cpp:
(WebChromeClient::setMenubarVisible): Eliminated the notImplemented()
here by calling through the UI delegate.
(WebChromeClient::menubarVisible): Ditto.
(WebChromeClient::runDatabaseSizeLimitPrompt): Ditto.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27598
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mrowe@apple.com [Thu, 8 Nov 2007 15:12:14 +0000 (15:12 +0000)]
2007-11-08 Mark Rowe <mrowe@apple.com>
Build fix for case-sensitive file systems. Fix case of file names
in #include's.
* html/HTMLMediaElement.cpp:
* platform/graphics/Movie.cpp:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27597
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann [Thu, 8 Nov 2007 14:18:55 +0000 (14:18 +0000)]
Build fix for Qt 4.3.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27596
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann [Thu, 8 Nov 2007 08:20:46 +0000 (08:20 +0000)]
Remove some warnings about not implemented methods.
* ResourceHandle::loadsBlocked and ResourceHandle::supportsBufferedData are
specific to the NS API and won't be implemented on Qt.
* ResourceHandle::bufferedData can not be reached as we return false in
ResourceHandle::supportsBufferedData.
Signed-off-by: Lars Knoll <lars@trolltech.com>
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27595
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann [Thu, 8 Nov 2007 08:20:40 +0000 (08:20 +0000)]
Cleanup checking for the request method.
* Check the request method only in QWebNetworkManager::add.
* Currently HEAD, GET, POST are allowed and for everything else
QWebNetworkManager::add returns false.
* Returning false is compatible with ResourceHandle::start and it
can be used in ResourceHandle::loadResourceSynchronously to generate
a ResourceError
Signed-off-by: Lars Knoll <lars@trolltech.com>
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27594
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann [Thu, 8 Nov 2007 08:20:33 +0000 (08:20 +0000)]
Implement WebCore::callOnMainThread
Implemented using a global QObject, that is moved to the main thread
and then sending a custom event to it.
Picked a number below QEvent::User but above any other documented value.
Signed-off-by: Lars Knoll <lars@trolltech.com>
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27593
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann [Thu, 8 Nov 2007 08:20:27 +0000 (08:20 +0000)]
Fix bug in the implementation of synchronous network jobs.
* George (pmax) reviewed the networking patches and found the following bug (thanks for reviewing)
- if (jobMode == AsynchronousJob) {
+ if (jobMode == SynchronousJob) {
add job to synchronous list/hash
* Just applying the above change will lead to crashes because we can finish
jobs before we started them.
* Avoid these issues by saving all work (starting a job, sending data and
finishing it) inside one list. JobWork will contain any
of the above three work types and doWork will just work on this list
(m_pendingWork). As foreach takes a copy of the list calling started, data
and finished will not add new work and we gurantee that if we have JobStarted
it will be in the list before JobData and JobFinished.
* Observation: We might just kill the code to handle sync jobs.
Signed-off-by: Lars Knoll <lars@trolltech.com>
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27592
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann [Thu, 8 Nov 2007 08:20:20 +0000 (08:20 +0000)]
Avoid problems with calling QPainter::begin() on an already active paintdevice
* Partial pick from
6200e04c3e0a77873c3b3f3969b65bc701020326 to avoid getting
crashes on Qt/Mac 4.4 with QPainter::begin to fail because we already draw.
* If we are in a layout or need one do not paint. This can happen for the PlatformScrollBar
used by the ScrollView on a layout triggered by QWebPage::paintEvent.
Signed-off-by: Lars Knoll <lars@trolltech.com>
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27591
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric@webkit.org [Thu, 8 Nov 2007 08:03:19 +0000 (08:03 +0000)]
2007-11-08 Eric Seidel <eric@webkit.org>
No review.
* ksvg2/svg/SVGPathElement.h: remove old comment
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27590
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric@webkit.org [Thu, 8 Nov 2007 07:58:15 +0000 (07:58 +0000)]
2007-11-07 Eric Seidel <eric@webkit.org>
Reviewed by Darin and Oliver.
Add evaluateToNumber parallel evaluation tree to speed up number operations.
Make ImmediateNumberNode a subclass of NumberNode.
Share evaluate logic between evaluate and evaluateToNumber using inline functions
There is still a lot of improvement to be made here.
SunSpider claims this is a 1.0% speedup overall (nbody 7.9%), base64 slowing 2.0%
Given the huge win that this prepares us for with simple type inferencing I see the small
regression in base64 being worth the substantial overall improvement.
* kjs/grammar.y:
* kjs/nodes.cpp:
(KJS::Node::evaluateToNumber):
(KJS::NumberNode::evaluate):
(KJS::NumberNode::evaluateToNumber):
(KJS::StringNode::evaluateToNumber):
(KJS::LocalVarAccessNode::inlineEvaluate):
(KJS::LocalVarAccessNode::evaluate):
(KJS::LocalVarAccessNode::evaluateToNumber):
(KJS::BracketAccessorNode::inlineEvaluate):
(KJS::BracketAccessorNode::evaluate):
(KJS::BracketAccessorNode::evaluateToNumber):
(KJS::NegateNode::evaluate):
(KJS::NegateNode::evaluateToNumber):
(KJS::MultNode::inlineEvaluateToNumber):
(KJS::MultNode::evaluate):
(KJS::MultNode::evaluateToNumber):
(KJS::DivNode::inlineEvaluateToNumber):
(KJS::DivNode::evaluate):
(KJS::DivNode::evaluateToNumber):
(KJS::ModNode::inlineEvaluateToNumber):
(KJS::ModNode::evaluate):
(KJS::ModNode::evaluateToNumber):
(KJS::throwOutOfMemoryErrorToNumber):
(KJS::addSlowCaseToNumber):
(KJS::add):
(KJS::addToNumber):
(KJS::AddNode::evaluateToNumber):
(KJS::SubNode::inlineEvaluateToNumber):
(KJS::SubNode::evaluate):
(KJS::SubNode::evaluateToNumber):
(KJS::valueForReadModifyAssignment):
(KJS::ReadModifyLocalVarNode::evaluate):
(KJS::ReadModifyResolveNode::evaluate):
(KJS::ReadModifyDotNode::evaluate):
(KJS::ReadModifyBracketNode::evaluate):
* kjs/nodes.h:
(KJS::Node::):
(KJS::NumberNode::):
(KJS::ImmediateNumberNode::):
(KJS::AddNode::precedence):
* kjs/nodes2string.cpp:
(KJS::NumberNode::streamTo):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27589
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
sfalken [Thu, 8 Nov 2007 07:40:08 +0000 (07:40 +0000)]
Added IWebDocumentText available via QI from WebFrame.
Reviewed by Sam.
* WebFrame.cpp:
(WebFrame::QueryInterface): Added IID_IWebDocumentText.
(WebFrame::supportsTextEncoding): Stubbed out.
(WebFrame::selectedString): Implemented.
(WebFrame::selectAll): Stubbed out.
(WebFrame::deselectAll): Stubbed out.
* WebFrame.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27588
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
antti [Thu, 8 Nov 2007 06:13:20 +0000 (06:13 +0000)]
Reviewed by Ollie.
Ensure video renderer has correct size if video has already been loaded
when it is constructed.
* rendering/RenderVideo.cpp:
(WebCore::RenderVideo::RenderVideo):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27587
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
antti [Thu, 8 Nov 2007 04:24:50 +0000 (04:24 +0000)]
Reviewed by Ollie.
Ensure video is visible when it should be.
* rendering/RenderVideo.cpp:
(WebCore::RenderVideo::updateMovie):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27586
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mitz@apple.com [Thu, 8 Nov 2007 01:54:14 +0000 (01:54 +0000)]
Reviewed by Darin Adler.
- fix <rdar://problem/
5523503> Safari crashes clicking scroll bar in FaceBook 'Trips'
Layers and listboxes are two kinds of ScrollBarClient that can be
removed while the scrollbar is tracking the mouse. The scrollbar is not
destroyed until later, and meanwhile it can try to call the client,
which results in a crash.
* manual-tests/stale-scrollbar-client-crash.html: Added.
* platform/ScrollBar.h:
(WebCore::Scrollbar::setClient): Added.
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::destroyScrollbar): Call Scrollbar::setClient().
* rendering/RenderListBox.cpp:
(WebCore::RenderListBox::~RenderListBox): Ditto.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27585
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mitz@apple.com [Thu, 8 Nov 2007 01:45:11 +0000 (01:45 +0000)]
Reviewed by Darin Adler.
- add an option to run-webkit-tests to ignore pixel test failures where
all pixels differ by no more than a specified threshold
* DumpRenderTree/mac/ImageDiff.m:
(main):
(compareImages):
(computePercentageDifferent):
* Scripts/run-webkit-tests:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27584
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aroben [Wed, 7 Nov 2007 23:45:58 +0000 (23:45 +0000)]
Fix <rdar://
5569268> Crash when opening any FTP site in second tab/window
WebCore:
Fix <rdar://
5569268> Crash when opening any FTP site in second tab/window
Reviewed by Sam.
No test possible.
* platform/win/SharedBufferWin.cpp:
(WebCore::SharedBuffer::createWithContentsOfFile): Bail if we get an
empty path, because _wfopen_s will crash if we pass it a null pointer.
WebKit/win:
Fix <rdar://
5569268> Crash when opening any FTP site in second tab/window
Reviewed by Sam.
* WebView.cpp:
(WebView::initWithFrame): Set the ftpDirectoryTemplatePath for every
Page, not just the first one.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27583
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mrowe@apple.com [Wed, 7 Nov 2007 23:09:12 +0000 (23:09 +0000)]
2007-11-07 Mark Rowe <mrowe@apple.com>
Reviewed by Kevin Decker.
Fix 64-bit Mac build.
* WebKit.xcodeproj/project.pbxproj: Change paths specified relative to SRCROOT
to be relative to PROJECT_DIR. PROJECT_DIR takes into account the projectDirPath
setting of the project, which in this instance includes the necessary "mac"
subdirectory.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27582
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ddkilzer [Wed, 7 Nov 2007 21:54:57 +0000 (21:54 +0000)]
WebCore:
WebKit confuses width/height for Media Queries device-aspect-ratio evaluation
<http://bugs.webkit.org/show_bug.cgi?id=14893>
<rdar://problem/
5380295>
Reviewed by Darin.
Tests: fast/css/device-aspect-ratio.html
fast/css/max-device-aspect-ratio.html
fast/css/min-device-aspect-ratio.html
* css/MediaQueryEvaluator.cpp:
(WebCore::parseAspectRatio): Renamed method parameters from a/b to h/v.
(WebCore::device_aspect_ratioMediaFeatureEval): Renamed local variables from
a/b to h/v. Switched first two arguments of the call to cmpvalue() to fix
the bug.
LayoutTests:
WebKit confuses width/height for Media Queries device-aspect-ratio evaluation
<http://bugs.webkit.org/show_bug.cgi?id=14893>
<rdar://problem/
5380295>
Reviewed by Darin.
Each of the following tests creates a <link> element and dynamically sets its
media query based on the aspect ratio (width/height) of the current screen.
When the <link> element is attached to the <head> node, the test expects the
stylesheet to be loaded for the test to pass.
* fast/css/device-aspect-ratio-expected.txt: Added.
* fast/css/device-aspect-ratio.html: Added.
This test sets the device-aspect-ratio to the current size of the screen.
NOTE: This test passed before the fix.
* fast/css/max-device-aspect-ratio-expected.txt: Added.
* fast/css/max-device-aspect-ratio.html: Added.
This test sets the max-device-aspect ratio to 100/1 for landscape monitors or
1/1 for portrait (or square) monitors.
NOTE: This test failed before the fix.
* fast/css/min-device-aspect-ratio-expected.txt: Added.
* fast/css/min-device-aspect-ratio.html: Added.
This test sets the min-device-aspect ratio to 1/1 for landscape monitors or
1/100 for portrait (or square) monitors.
NOTE: This test failed before the fix.
* fast/css/resources/device-aspect-ratio.css: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27581
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mrowe@apple.com [Wed, 7 Nov 2007 21:44:04 +0000 (21:44 +0000)]
Roll out r27578 as it is not necessary.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27580
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mitz@apple.com [Wed, 7 Nov 2007 20:59:00 +0000 (20:59 +0000)]
WebCore:
Reviewed by Dave Hyatt.
- fix http://bugs.webkit.org/show_bug.cgi?id=15887
REGRESSION (r27576): Crash in RenderStyle::affectedByHoverRules clicking link on Digg
Test: fast/css/display-none-inline-style-change-crash.html
* dom/Element.cpp:
(WebCore::Element::recalcStyle): Fixed the crash by null-checking
the current style and removed other checks that are not strictly
necessary.
LayoutTests:
Reviewed by Dave Hyatt.
- test for http://bugs.webkit.org/show_bug.cgi?id=15887
REGRESSION (r27576): Crash in RenderStyle::affectedByHoverRules clicking link on Digg
* fast/css/display-none-inline-style-change-crash-expected.txt: Added.
* fast/css/display-none-inline-style-change-crash.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27579
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
tristan [Wed, 7 Nov 2007 20:11:12 +0000 (20:11 +0000)]
Reviewed by Kevin Decker.
Build fix for Leopard. Cast a size() as int to unsigned for proper
comparison.
* bindings/js/JSHTMLDocumentCustom.cpp:
(WebCore::writeHelper):
Casted an int to unsigned for an unsigned to unsigned comparison.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27578
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
beidson@apple.com [Wed, 7 Nov 2007 19:31:27 +0000 (19:31 +0000)]
Rubberstamped by Sam
Remove FrameLoaderClient methods from SVG that were pruned awhile ago
* platform/graphics/svg/SVGImageEmptyClients.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27577
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mitz@apple.com [Wed, 7 Nov 2007 18:52:09 +0000 (18:52 +0000)]
WebCore:
Reviewed by Darin Adler.
- fix a bug where CSS rules with :hover in the ancestor chain stopped
working after changing the inline style declaration of the ancestor
Test: fast/css/affected-by-hover-after-style-change.html
* dom/Element.cpp:
(WebCore::Element::recalcStyle): If we are not forcing style
recalculation for all descendants, preserve any "affected by
{hover|active|drag} bits that we may have acquired from them.
Also renamed _style to currentStyle.
WebKitSite:
Reviewed by Darin Adler.
- removed a workaround for the bug fixed in the WebCore part of this
patch
* misc/DatabaseExample.html:
LayoutTests:
Reviewed by Darin Adler.
- test that CSS rules with :hover in the ancestor chain continue to work
after changing the inline style declaration of the ancestor
* fast/css/affected-by-hover-after-style-change.html: Added.
* platform/mac/fast/css/affected-by-hover-after-style-change-expected.checksum: Added.
* platform/mac/fast/css/affected-by-hover-after-style-change-expected.png: Added.
* platform/mac/fast/css/affected-by-hover-after-style-change-expected.txt: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27576
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Wed, 7 Nov 2007 17:56:16 +0000 (17:56 +0000)]
Reviewed by Adam.
Bug 11920: Web Inspector should have Firebug-like CSS editing
http://bugs.webkit.org/show_bug.cgi?id=11920
* css/CSSComputedStyleDeclaration.h:
(WebCore::CSSComputedStyleDeclaration::isPropertyImplicit): Return false. I'm not sure why
this was true, but computed style has no concept of implicit. So false makes more sense
and makes the code simpler in the inspector. This function was added for the inspector,
so this isn't a compatibility change.
* page/inspector/PropertiesSection.js: Add a getter/setter to reset populated status.
* page/inspector/StylesSidebarPane.js: Some refactoring along with the main support for
style editing.
* page/inspector/inspector.css: Style changes for propery editing and focus correctness.
* page/inspector/inspector.js: Look for a handleKeyEvent function of the focus element before
trying to call a function based on the element's id. Call focused and blurred on the focused
element when currentFocusElement is changed. Use the new listItemElement getter instead of
the private property.
* page/inspector/treeoutline.js: No longer expand on double click if ondblclick is implemented.
Shrink the toggle zone to 10px to better match the size of the arrow. Add an onattach call
to allow generation of the title using the DOM element. Add listItemElement and
childrenListElement getters.
* page/inspector/utilities.js: Add new helper prototype methods on CSSStyleDeclaration.
* page/inspector/DocumentPanel.js: Use the new listItemElement getter instead of the private
property. Also expand the DOM node on double click now that the TreeOutline dosen't do it.
* page/inspector/Resource.js: Use the new listItemElement and childrenListElement getters
instead of the private properties.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27575
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mrowe@apple.com [Wed, 7 Nov 2007 17:54:36 +0000 (17:54 +0000)]
2007-11-07 Mark Rowe <mrowe@apple.com>
Reviewed by Eric.
Fix up initialization after being mangled in r27572, and remove the
ternary expression as extraCost will always be zero for the numeric
heap.
* kjs/collector.cpp:
(KJS::Collector::heapAllocate):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27574
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mrowe@apple.com [Wed, 7 Nov 2007 17:54:12 +0000 (17:54 +0000)]
2007-11-07 Mark Rowe <mrowe@apple.com>
Gtk build fix.
* kjs/regexp_object.cpp:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27573
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren@apple.com [Wed, 7 Nov 2007 17:32:11 +0000 (17:32 +0000)]
Reviewed by Beth Dakin.
Eliminated a bogus (though compiled-out) branch in the collector.
* kjs/collector.cpp:
(KJS::Collector::heapAllocate):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27572
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren@apple.com [Wed, 7 Nov 2007 17:18:39 +0000 (17:18 +0000)]
JavaScriptCore:
Reviewed by Darin Adler.
Fixed part of http://bugs.webkit.org/show_bug.cgi?id=15861
15% of string-validate-input.js is spent compiling the same regular expression.
Put RegExpImp properties into a static hashtable to avoid a slew of
PropertyMap churn when creating a RegExpImp.
Factored important bits of regular expression implementation out of
RegExpImp (the JS object) and into RegExp (the PCRE wrapper class),
making RegExp a ref-counted class. (This will help later.)
Removed PCRE_POSIX support because I didn't quite know how to test it
and keep it working with these changes.
1.1% SunSpider speedup. 5.8% speedup on string-validate-input.js.
* kjs/regexp.h: A few interface changes:
1. Renamed "subpatterns()" => "numSubpatterns()"
2. Made flag enumeration private and replaced it with public getters for
specific flags.
3. Made RegExp ref-counted so RegExps can be shared by RegExpImps.
4. Made RegExp take a string of flags instead of an int, eliminating
duplicated flag parsing code elsewhere.
* kjs/regexp_object.cpp:
(KJS::RegExpProtoFunc::callAsFunction): For RegExp.compile:
- Fixed a bug where compile(undefined) would throw an exception.
- Removed some now-redundant code.
- Used RegExp sharing to eliminate an allocation and a bunch of
PropertyMap thrash. (Not a big win since compile is a deprecated
function. I mainly did this to test the plubming.)
LayoutTests:
Reviewed by Darin Adler.
Beefed up the RegExp.compile testcase to cover a mistake in the
original check-in and a mistake I made while developing my new patch.
* fast/js/resources/regexp-compile.js:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27571
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann [Wed, 7 Nov 2007 16:36:04 +0000 (16:36 +0000)]
JavaScriptCore.pri expects OBJECTS_DIR to be set, so set it in
testkjs.pro, too, where it's included from.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27570
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann [Wed, 7 Nov 2007 16:14:59 +0000 (16:14 +0000)]
Coding style fix.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27569
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann [Wed, 7 Nov 2007 15:52:09 +0000 (15:52 +0000)]
For safety provide a default constructor for WindowFeatures().
ContextMenuController.cpp: createNewWindow as well as QWebPage need to
create a default initialized WindowFeatures object on the fly.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27568
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann [Wed, 7 Nov 2007 15:35:44 +0000 (15:35 +0000)]
Fix the Qt build.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27567
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann [Wed, 7 Nov 2007 14:45:32 +0000 (14:45 +0000)]
Fix "nmake clean" for the Qt/Windows build by replacing tmp/ with a variable that ends with the correct type of slash/backslash depending on the choice of compiler/make tool.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27566
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann [Wed, 7 Nov 2007 14:32:23 +0000 (14:32 +0000)]
Make the setting of letting Javascript access the clipboard configurable through QWebSettings, turn it off by default and turn it on in DumpRenderTree.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27565
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann [Wed, 7 Nov 2007 14:32:16 +0000 (14:32 +0000)]
Changed QWebPageHistory::goToItem to take a value instead of a pointer.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27564
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann [Wed, 7 Nov 2007 14:32:09 +0000 (14:32 +0000)]
Removed unimplemented QWebHistoryItem::children() function
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27563
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann [Wed, 7 Nov 2007 14:32:05 +0000 (14:32 +0000)]
Changed the getter functions in QWebSettings to transparently resolve against the default settings.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27562
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann [Wed, 7 Nov 2007 14:31:59 +0000 (14:31 +0000)]
Added explicit functions for resetting the font sizes and font families.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27561
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann [Wed, 7 Nov 2007 14:31:54 +0000 (14:31 +0000)]
Combined the font sizes accessors/setters under one setter/getter with an enum.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27560
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann [Wed, 7 Nov 2007 14:31:49 +0000 (14:31 +0000)]
Renamed QWebPage::userAgentStringForUrl(url) to QWebPage::userAgentFor(url);
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27559
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann [Wed, 7 Nov 2007 14:31:44 +0000 (14:31 +0000)]
Renamed QWebPage::webActionTriggered to QWebPage::triggerAction
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27558
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann [Wed, 7 Nov 2007 14:31:38 +0000 (14:31 +0000)]
Changed the virtual QWebPage::setWindowGeometry to be a geometryChangeRequest signal instead.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27557
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann [Wed, 7 Nov 2007 14:31:32 +0000 (14:31 +0000)]
Renamed QWebPage::webAction() to QWebPage::action()
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27556
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann [Wed, 7 Nov 2007 14:31:26 +0000 (14:31 +0000)]
Removed a bunch of slots/functions that are now available through the new actions API.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27555
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann [Wed, 7 Nov 2007 14:31:22 +0000 (14:31 +0000)]
Added some more comments to the API after another round of API review with Lars.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27554
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann [Wed, 7 Nov 2007 14:31:16 +0000 (14:31 +0000)]
Moved QWebFrame::selectedText() to QWebPage::selectedText().
The currently selected text is a property of the page as a whole.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27553
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann [Wed, 7 Nov 2007 14:31:11 +0000 (14:31 +0000)]
Implemented support for settings propagation.
If an individual setting is not set in a page's QWebSettings then it is inherited from the default settings.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27552
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann [Wed, 7 Nov 2007 14:31:04 +0000 (14:31 +0000)]
Reworked the QWebSettings API.
QWebPage now returns a pointer to its mutable QWebSettings object and the settings of newly created QWebPageObjects are initialized from QWebSettings::defaultSettings().
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27551
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann [Wed, 7 Nov 2007 14:30:57 +0000 (14:30 +0000)]
Made the QWebSettings::webGraphic functions static. The implementation was using QWebSettings::global() anyway.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27550
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann [Wed, 7 Nov 2007 14:30:50 +0000 (14:30 +0000)]
Moved the WebCore::Image specific function loadResourcePixmap from qwebsettings.cpp to ImageQt.cpp and made it static.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27549
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann [Wed, 7 Nov 2007 14:30:43 +0000 (14:30 +0000)]
Changed the icondatabase accessor to be a static function because it doesn't change the QWebSettings object.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27548
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann [Wed, 7 Nov 2007 14:30:38 +0000 (14:30 +0000)]
Changed the webAction() accessor to not be a slot but just a public function.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27547
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann [Wed, 7 Nov 2007 14:30:34 +0000 (14:30 +0000)]
Implemented createWindow() in QtLauncher.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27546
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann [Wed, 7 Nov 2007 14:30:28 +0000 (14:30 +0000)]
Implemented opening links in new windows
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27545
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann [Wed, 7 Nov 2007 14:30:22 +0000 (14:30 +0000)]
Added and implemented the "OpenLink" action.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27544
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann [Wed, 7 Nov 2007 14:30:17 +0000 (14:30 +0000)]
Adjust the state of the reload action correctly.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27543
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann [Wed, 7 Nov 2007 14:30:11 +0000 (14:30 +0000)]
Initialize the undo/redo actions from QUndoStack. That automatically takes care of enabling/disabling them as well as the activation/trigger.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27542
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann [Wed, 7 Nov 2007 14:30:05 +0000 (14:30 +0000)]
Added undo/redo toolbar buttons, moved the location line edit into a separate toolbar.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27541
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann [Wed, 7 Nov 2007 14:30:00 +0000 (14:30 +0000)]
Update the editor actions when the selection changes.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27540
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann [Wed, 7 Nov 2007 14:29:54 +0000 (14:29 +0000)]
Added cut/copy/paste actions to the toolbar of QtLauncher
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27539
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann [Wed, 7 Nov 2007 14:29:48 +0000 (14:29 +0000)]
Started working on keeping the state of the navigation actions up-to-date.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27538
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann [Wed, 7 Nov 2007 14:29:42 +0000 (14:29 +0000)]
Use the navigational web actions in the toolbar
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27537
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann [Wed, 7 Nov 2007 14:29:37 +0000 (14:29 +0000)]
Store a bunch of QActions in QWebPagePrivate, corresponding to QWebPage::WebAction.
Added QWebPageContext to hold context sensitive information (for example used by the context menu).
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27536
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann [Wed, 7 Nov 2007 14:29:31 +0000 (14:29 +0000)]
Moved the editing actions implemented in keyPressEvent into webActionTriggered.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27535
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann [Wed, 7 Nov 2007 14:29:25 +0000 (14:29 +0000)]
Introduced a central virtual void webActionTriggered(WebAction action) method that is called from various
convenience methods such as cut()/copy()/paste().
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27534
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann [Wed, 7 Nov 2007 14:29:19 +0000 (14:29 +0000)]
Restructure the context menu classes for the Qt port. ContextMenu and ContextMenuItem don't store
QActions/QMenus anymore but just store the action type, tag, title and optionally submenu as created
in ContextMenu::populate().
For the actual Qt context menu we traverse this structure after sendContextMenuEvent and create a QMenu
out of it. That menu is currently not functional anymore though.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27533
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann [Wed, 7 Nov 2007 14:29:11 +0000 (14:29 +0000)]
Changed ContextMenu::setPlatformDescription for the Qt port to not show the qmenu right away
but instead just behave as a normal setter that takes ownership of the platform menu description (the qmenu).
Instead now QWebPage::contextMenuEvent() retrieves the QMenu after calling sendContextMenuEvent and calls exec()
on it.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27532
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann [Wed, 7 Nov 2007 14:29:03 +0000 (14:29 +0000)]
Changed to PlatformMouseEvent constructor to allow construction from a QContextMenuEvent.
Call sendContextMenuEvent on the event handler from a QWidget::contextMenuEvent re-implementation instead of in mousePressEvent.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27531
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann [Wed, 7 Nov 2007 14:28:56 +0000 (14:28 +0000)]
Turned onLoadProgressChanged into a real private slot.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27530
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann [Wed, 7 Nov 2007 14:28:33 +0000 (14:28 +0000)]
Make QWebHistory an explicitly shared object, returned as a pointer by QWebPage::history().
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27529
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann [Wed, 7 Nov 2007 14:23:14 +0000 (14:23 +0000)]
comments on API changes that we'd like to do.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@27528
268f45cc-cd09-0410-ab3c-
d52691b4dbfc