WebKit-https.git
13 years ago2007-12-17 Tony Chang <idealisms@gmail.com>
alp@webkit.org [Thu, 20 Dec 2007 18:09:31 +0000 (18:09 +0000)]
2007-12-17  Tony Chang  <idealisms@gmail.com>

        Reviewed by Darin.

        - Fix for http://bugs.webkit.org/show_bug.cgi?id=16479
          text selection does not always begin at mouse down point
          Reset the m_dragSrc object on mouse down on all platforms.

        Test: fast/text/reset-drag-on-mouse-down.html

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28888 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago Reviewed by Eric.
darin@apple.com [Thu, 20 Dec 2007 17:42:50 +0000 (17:42 +0000)]
    Reviewed by Eric.

        - http://bugs.webkit.org/show_bug.cgi?id=16471
          Completions need to be smaller (or not exist at all)

        SuSpider shows 2.4% speedup.

        Stop using completions in the execution engine.
        Instead, the completion type and label target are both
        stored in the ExecState.

        * API/JSContextRef.cpp: Removed unneeded include of "completion.h".
        * bindings/runtime_method.cpp: Removed unused execute function.
        * bindings/runtime_method.h: Ditto.

        * kjs/ExecState.h: Added completionType, breakOrContinueTarget,
        setCompletionType, setNormalCompletion, setBreakCompletion,
        setContinueCompletion, setReturnValueCompletion, setThrowCompletion,
        setInterruptedCompletion, m_completionType, and m_breakOrContinueTarget.

        * kjs/completion.h: Removed constructor and getter for target
        for break and continue from Completion. This class is now only
        used for the public API to Interpreter and such.

        * kjs/date_object.h: Removed unused execute function.

        * kjs/function.cpp:
        (KJS::FunctionImp::callAsFunction): Removed some unneeded
        exception processing. Updated to call the new execute function
        and to get the completion type from the ExecState. Merged in
        the execute function, which repeated some of the same logic and
        was called only from here.
        (KJS::GlobalFuncImp::callAsFunction): More of the same for eval.
        * kjs/function.h: Removed execute.

        * kjs/interpreter.cpp:
        (KJS::Interpreter::evaluate): Added code to convert the result of
        execut into a Completion.

        * kjs/nodes.cpp:
        (KJS::Node::setErrorCompletion): Renamed from createErrorCompletion.
        Now sets the completion type in the ExecState.
        (KJS::Node::rethrowException): Now sets the completion type in the
        ExecState.
        (KJS::StatementNode::hitStatement): Now sets the completion type in
        the ExecState.
        (KJS::VarStatementNode::execute): Updated to put completion type in
        the ExecState instead of a Completion object.
        (KJS::statementListExecute): Ditto. Also changed the for loop to use
        indices instead of iterators.
        (KJS::BlockNode::execute): Updated return type.
        (KJS::EmptyStatementNode::execute): Updated to put completion type in
        the ExecState instead of a Completion object.
        (KJS::ExprStatementNode::execute): Ditto.
        (KJS::IfNode::execute): Ditto.
        (KJS::DoWhileNode::execute): Ditto. Also streamlined the logic a little
        to make the normal case a little faster and moved the end outside the
        loop so that "break" can do a break.
        (KJS::WhileNode::execute): Ditto.
        (KJS::ForNode::execute): Ditto.
        (KJS::ForInNode::execute): Ditto.
        (KJS::ContinueNode::execute): Updated to put completion type in
        the ExecState instead of a Completion object.
        (KJS::BreakNode::execute): Ditto.
        (KJS::ReturnNode::execute): Ditto.
        (KJS::WithNode::execute): Ditto.
        (KJS::CaseClauseNode::executeStatements): Ditto. Also renamed to have
        execute in its name to reflect the fact that it's a member of the same
        family of functions.
        (KJS::CaseBlockNode::executeBlock): Ditto.
        (KJS::SwitchNode::execute): Ditto.
        (KJS::LabelNode::execute): Ditto.
        (KJS::ThrowNode::execute): Ditto.
        (KJS::TryNode::execute): Ditto.
        (KJS::ProgramNode::execute): Ditto.
        (KJS::EvalNode::execute): Ditto.
        (KJS::FunctionBodyNode::execute): Ditto.
        (KJS::FuncDeclNode::execute): Ditto.

        * kjs/nodes.h: Renamed setErrorCompletion to createErrorCompletion, made
        hitStatement protected, changed return value of execute to a JSValue,
        renamed evalStatements to executeStatements, and evalBlock to executeBlock.

        * kjs/number_object.h: Removed unused execute function.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28887 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago Added Radar number.
ggaren@apple.com [Thu, 20 Dec 2007 10:31:23 +0000 (10:31 +0000)]
    Added Radar number.

        * kjs/nodes.cpp:
        (KJS::ProgramNode::processDeclarations):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28886 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago Linux build fix: config.h has to come first.
ggaren@apple.com [Thu, 20 Dec 2007 09:41:30 +0000 (09:41 +0000)]
    Linux build fix: config.h has to come first.

        * kjs/error_object.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28885 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years agoJavaScriptCore:
ggaren@apple.com [Thu, 20 Dec 2007 09:32:06 +0000 (09:32 +0000)]
JavaScriptCore:

        Reviewed by Oliver Hunt.

        Optimized global access to global variables, using a symbol table.

        SunSpider reports a 1.5% overall speedup, a 6.2% speedup on 3d-morph,
        and a whopping 33.1% speedup on bitops-bitwise-and.

        * API/JSCallbackObjectFunctions.h: Replaced calls to JSObject:: with
        calls to Base::, since JSObject is not always our base class. This
        was always a bug, but the bug is even more apparent after some of my
        changes.

        (KJS::::staticFunctionGetter): Replaced use of getDirect with call to
        getOwnPropertySlot. Global declarations are no longer stored in the
        property map, so a call to getDirect is insufficient for finding
        override properties.

        * API/testapi.c:
        * API/testapi.js: Added test for the getDirect change mentioned above.

        * kjs/ExecState.cpp:
        * kjs/ExecState.h: Dialed back the optimization to store a direct
        pointer to the localStorage buffer. One ExecState can grow the global
        object's localStorage without another ExecState's knowledge, so
        ExecState can't store a direct pointer to the localStorage buffer
        unless/until we invent a way to update all the relevant ExecStates.

        * kjs/JSGlobalObject.cpp: Inserted the symbol table into get and put
        operations.
        (KJS::JSGlobalObject::reset): Reset the symbol table and local storage,
        too. Also, clear the property map here, removing the need for a
        separate call.

        * kjs/JSVariableObject.cpp:
        * kjs/JSVariableObject.h: Added support for saving localStorage and the
        symbol table to the back/forward cache, and restoring them.

        * kjs/function.cpp:
        (KJS::GlobalFuncImp::callAsFunction): Renamed progNode to evalNode
        because it's an EvalNode, not a ProgramNode.

        * kjs/lookup.h:
        (KJS::cacheGlobalObject): Replaced put with faster putDirect, since
        that's how the rest of lookup.h works. putDirect is safe here because
        cacheGlobalObject is only used for objects whose names are not valid
        identifiers.

        * kjs/nodes.cpp: The good stuff!

        (KJS::EvalNode::processDeclarations): Replaced hasProperty with
        the new hasOwnProperty, which is slightly faster.

        * kjs/object.h: Nixed clearProperties because clear() does this job now.

        * kjs/property_map.cpp:
        * kjs/property_map.h: More back/forward cache support.

        * wtf/Vector.h:
        (WTF::::grow): Added fast non-branching grow function. I used it in
        an earlier version of this patch, even though it's not used anymore.

JavaScriptGlue:

        Build fix.

        * ForwardingHeaders/wtf/VectorTraits.h: Added.

WebCore:

        Reviewed by Oliver Hunt.

        Build support:
        * ForwardingHeaders/kjs/SymbolTable.h: Added.
        * ForwardingHeaders/wtf/VectorTraits.h: Added.

        * bindings/js/JSDOMWindowCustom.cpp:
        (WebCore::JSDOMWindow::customGetOwnPropertySlot): Replaced use of
        getDirectLocation with getOwnPropertySlot. getDirectLocation is no
        longer valid, since global declarations are not stored in the property
        map.

        (WebCore::JSDOMWindow::customPut): Replaced use of JSObject::put with
        JSGlobalObject::put. JSObject::put is no longer valid, since global
        declarations are not stored in the property map.

        * bindings/js/kjs_window.cpp: Replaced JSObject:: calls with Base::
        calls, since JSObject is not our base class. This was always a bug, but
        the bug is even more apparent after some of my changes.

        (KJS::Window::clear): Removed call to clearProperties because
        JSGlobalObject::reset takes care of that now.

        * history/CachedPage.cpp:
        * history/CachedPage.h: Added support for saving a symbol table and
        localStorage to the page cache, and restoring it.

WebKit/mac:

        Reviewed by Oliver Hunt.

        Build fix.

        * ForwardingHeaders/kjs/SymbolTable.h: Added.
        * ForwardingHeaders/wtf/VectorTraits.h: Added.

LayoutTests:

        Reviewed by Oliver Hunt.

        Added some tests to verify some of the changes I made while optimizing
        global access to global variables.

        * fast/dom/Window/resources/window-property-clearing-iframe0.html: Added.
        * fast/dom/Window/resources/window-property-clearing-iframe1.html: Added.
        * fast/dom/Window/window-property-clearing-expected.txt: Added.
        * fast/dom/Window/window-property-clearing.html: Added.
        * fast/dom/getter-on-window-object2-expected.txt: Added.
        * fast/dom/getter-on-window-object2.html: Added.

        Checked in failing results for these const tests. The symbol table
        optimization broke const. (We didn't know this before because our only
        tests used global variables.)

        * fast/js/const-expected.txt:
        * fast/js/kde/const-expected.txt:

        * fast/js/resources/for-in-avoid-duplicates.js: Fixed a typo I noticed.
        Not related to this patch.

        * fast/dom/Window/window-property-shadowing.html: Changed this test to
        use "this" instead of "window". The fact that "window" worked before,
        despite an overriding / shadowing var declaration, was a bug.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28884 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago - remove two more tests that pass now due to changed font fallback
mitz@apple.com [Thu, 20 Dec 2007 06:40:31 +0000 (06:40 +0000)]
    - remove two more tests that pass now due to changed font fallback

        * platform/win/Skipped:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28883 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years agoWebCore:
mitz@apple.com [Thu, 20 Dec 2007 06:21:47 +0000 (06:21 +0000)]
WebCore:

        Reviewed by Darin Adler and Dave Hyatt.

        - Substitute the user's preferred standard font for an unknown primary
          font before falling back on the platform's last resort font

        Cannot be tested in DumpRenderTree because it sets the standard font to
        Times, which is also the hard-coded last resort font on Mac.

        * css/CSSFontSelector.cpp:
        (WebCore::CSSFontSelector::getFontData): Changed the early bail out
        condition to allow getting generic font families from settings even if
        there are not @font-face rules. Fixed a typo that mapped fantasy to
        cursive. Added a mapping from -webkit-standard to the standard family.
        * css/CSSStyleSelector.cpp:
        (WebCore::CSSStyleSelector::CSSStyleSelector): Changed to always create
        a font selector.
        (WebCore::CSSRuleSet::addRulesFromSheet):
        (WebCore::CSSStyleSelector::applyProperty): Changed to always use the
        font selector.
        * css/CSSStyleSelector.h:
        (WebCore::CSSStyleSelector::fontSelector):
        * platform/graphics/FontCache.cpp:
        (WebCore::FontCache::getFontData): Try the user's preferred standard
        font before the platform's last resort font.

LayoutTests:

        - remove passing tests following the change to font fallback

        * platform/win/Skipped: Removed tests that failed only because they
        specified as primary font family a font family that was not available
        on Windows and therefore were rendered using the platform last resort
        font, Times New Roman. Now they are rendered using the 'standard'
        font family, which is set to Times on both Mac and Windows when running
        the tests.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28882 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago Make svn-apply/svn-unapply work with patches from git-format-patch.
ddkilzer@apple.com [Thu, 20 Dec 2007 04:24:45 +0000 (04:24 +0000)]
    Make svn-apply/svn-unapply work with patches from git-format-patch.

        Reviewed by Darin.

        * Scripts/svn-apply:
        (patch): If 'Index:' can't be found in the text passed in, print it
        out with a warning and return early.
        * Scripts/svn-unapply:
        (patch): Ditto.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28881 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago2007-12-19 Sven Herzberg <sven@imendio.com>
alp@webkit.org [Thu, 20 Dec 2007 03:03:43 +0000 (03:03 +0000)]
2007-12-19  Sven Herzberg  <sven@imendio.com>

        Reviewed by Alp Toker.

        Scaled font destruction takes place in FontData::platformDestroy(). No
        need to do it in FontPlatformData::~FontPlatformData().

        Destroying platform data in platformDestroy() is a convention we
        borrow from the Mac and Win ports.

        * platform/graphics/gtk/FontPlatformDataGtk.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28880 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago build fix (Windows)
alice.liu@apple.com [Thu, 20 Dec 2007 01:12:33 +0000 (01:12 +0000)]
    build fix (Windows)

        Changed uint to unsigned int.  uint caused Windows build breakage

        * page/Page.cpp:
        (WebCore::Page::markAllMatchesForText):
        * page/Page.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28879 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago2007-12-19 Christian Dywan <christian@twotoasts.de>
alp@webkit.org [Thu, 20 Dec 2007 00:23:03 +0000 (00:23 +0000)]
2007-12-19  Christian Dywan  <christian@twotoasts.de>

        Reviewed by Alp Toker.

        http://bugs.webkit.org/show_bug.cgi?id=16222
        [GTK] Implement inline search and highlighting of matching strings.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28878 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago Reviewed by Sam Weinig, Dan Bernstein.
ggaren@apple.com [Thu, 20 Dec 2007 00:02:51 +0000 (00:02 +0000)]
    Reviewed by Sam Weinig, Dan Bernstein.

        Tiger build fix: restored some graphics code still needed on Tiger.

        * platform/graphics/GraphicsTypes.h:
        * platform/graphics/cg/GraphicsContextCG.cpp:
        * platform/graphics/mac/GraphicsContextMac.mm:
        (WebCore::GraphicsContext::setCompositeOperation):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28877 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago2007-12-19 Alp Toker <alp@atoker.com>
alp@webkit.org [Wed, 19 Dec 2007 23:22:11 +0000 (23:22 +0000)]
2007-12-19  Alp Toker  <alp@atoker.com>

        Build fix for Pango < 1.18.0 breakage introduced in r28864. Use Fc and
        the Pango backend API in these cases.

        * platform/graphics/gtk/FontPlatformDataGtk.cpp:
        (WebCore::FontPlatformData::FontPlatformData):
        (WebCore::FontPlatformData::~FontPlatformData):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28876 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years agoWebCore:
alice.liu@apple.com [Wed, 19 Dec 2007 22:51:30 +0000 (22:51 +0000)]
WebCore:

        Reviewed by Darin.

        Fixed <rdar://problem/5592485> Safari crashed trying to get a motorcycle insurance quote
        on Geico.com WebCore::Document::inPageCache()

        Calling Node::willRemove on the focusedNode would immediately tell the document to remove
        the focused node, and trigger JS events.  This means that the document is mutated while
        the engine is trying to tell all child nodes that it's about to removed.  To avoid
        crashing, we need to hold off on mutating the document until node traversal is finished.

        * dom/ContainerNode.cpp:
        (WebCore::ContainerNode::removeChild):
        (WebCore::ContainerNode::removeChildren):
        * dom/Node.cpp:
        * dom/Node.h:
        (WebCore::Node::willRemove):
        * loader/FrameLoader.cpp:
        (WebCore::FrameLoader::clear):

LayoutTests:

        Reviewed by Darin.

        Fixed <rdar://problem/5592485> Safari crashed trying to get a motorcycle insurance quote
        on Geico.com WebCore::Document::inPageCache()

        * fast/events/nested-event-remove-node-crash-expected.txt: Added.
        * fast/events/nested-event-remove-node-crash.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28875 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years agoLayoutTests:
aboule@apple.com [Wed, 19 Dec 2007 21:57:01 +0000 (21:57 +0000)]
LayoutTests:

        Reviewed by Dan Bernstein.

        Adding tests for canvas compositing modes to make sure the results don't change after:
        <rdar://problem/5640059> GraphicsContext::setCompositeOperation should use CGContextSetBlendMode

        The following compositing modes don't pass however that is covered by another bug:
        source-in
        source-out
        destination-in
        destination-atop
        copy
        <rdar://problem/5651783> Some canvas tag compositing modes don't render correctly

        * fast/canvas/canvas-composite.html: Added.
        * platform/mac/fast/canvas/canvas-composite-expected.checksum: Added.
        * platform/mac/fast/canvas/canvas-composite-expected.png: Added.
        * platform/mac/fast/canvas/canvas-composite-expected.txt: Added.

WebCore:

        Reviewed by Dan Bernstein.

        Test: fast/canvas/canvas-composite.html

        Fix for:
        <rdar://problem/5640059> GraphicsContext::setCompositeOperation should use CGContextSetBlendMode

        This fix makes setCompositeOperation consistent across all platforms that use CG.

        The following compositing modes don't pass however that is covered by another bug:
        source-in
        source-out
        destination-in
        destination-atop
        copy
        <rdar://problem/5651783> Some canvas tag compositing modes don't render correctly

        * platform/graphics/GraphicsTypes.h:
        * platform/graphics/cg/GraphicsContextCG.cpp:
        (WebCore::GraphicsContext::setCompositeOperation):
        * platform/graphics/mac/GraphicsContextMac.mm:
        * platform/win/GraphicsContextWin.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28874 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years agoWebCore:
mitz@apple.com [Wed, 19 Dec 2007 21:45:56 +0000 (21:45 +0000)]
WebCore:

        Reviewed by Dave Hyatt.

        - fix <rdar://problem/5650045> REGRESSION: major layout problems in svn r28754 WebKit on Vox.com page

        Test: fast/dynamic/subtree-boundary-percent-height.html

        * rendering/RenderObject.cpp:
        (WebCore::objectIsRelayoutBoundary): Do not allow overflows with
        percent heights because sometimes they compute to 'auto'.

LayoutTests:

        Reviewed by Dave Hyatt.

        - test for <rdar://problem/5650045> REGRESSION: major layout problems in svn r28754 WebKit on Vox.com page

        * fast/dynamic/subtree-boundary-percent-height.html: Added.
        * platform/mac/fast/dynamic/subtree-boundary-percent-height-expected.checksum: Added.
        * platform/mac/fast/dynamic/subtree-boundary-percent-height-expected.png: Added.
        * platform/mac/fast/dynamic/subtree-boundary-percent-height-expected.txt: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28873 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years agoFix unsigned/enum problem on Win32. r=darin.
hyatt@apple.com [Wed, 19 Dec 2007 21:21:45 +0000 (21:21 +0000)]
Fix unsigned/enum problem on Win32. r=darin.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28872 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years agoOops! Typo!
bdakin@apple.com [Wed, 19 Dec 2007 20:26:17 +0000 (20:26 +0000)]
Oops! Typo!

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28871 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years agoFix unsigned/enum problem on Win32. r=darin.
hyatt@apple.com [Wed, 19 Dec 2007 20:15:30 +0000 (20:15 +0000)]
Fix unsigned/enum problem on Win32. r=darin.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28870 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years agoFix unsigned/enum problem on Win32. r=darin.
hyatt@apple.com [Wed, 19 Dec 2007 20:14:07 +0000 (20:14 +0000)]
Fix unsigned/enum problem on Win32. r=darin.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28869 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago Reviewed by Maciej.
weinig@apple.com [Wed, 19 Dec 2007 20:11:09 +0000 (20:11 +0000)]
    Reviewed by Maciej.

        http://bugs.webkit.org/show_bug.cgi?id=16511
        Speed up ClassNodeList and NamedNodeList by using the caching mechanism employed by ChildNodeList.
        - This give a ~2.15x speedup on the native test @ http://ejohn.org/apps/classname/

        * dom/ChildNodeList.cpp: Use the caching NodeList constructor to turn on caching.
        (WebCore::ChildNodeList::ChildNodeList):
        * dom/ClassNodeList.cpp:
        (WebCore::ClassNodeList::ClassNodeList):
        * dom/ClassNodeList.h:

        Move getElementsByName and getElementsByClassName to Node so they
        can use easily employ the caching already used by ChildNodeLists.  In the case of
        getElementsByClassName, this reduces code duplication in Element as well
        * dom/Document.cpp:
        * dom/Document.h:

        Move getElementsByClassName to Node.
        * dom/Element.cpp:
        * dom/Element.h:

        * dom/NameNodeList.cpp: Use the caching NodeList constructor to turn on caching.
        (WebCore::NameNodeList::NameNodeList):
        (WebCore::NameNodeList::item):
        * dom/NameNodeList.h:

        Add maps of caches for ClassNodeLists and NameNodeList to NodeListsNodeData.
        * dom/Node.cpp:
        (WebCore::TagNodeList::TagNodeList):
        (WebCore::Node::Node):
        (WebCore::Node::~Node):
        (WebCore::Node::childNodes):
        (WebCore::Node::registerNodeList):
        (WebCore::Node::getElementsByName):
        (WebCore::Node::getElementsByClassName):
        * dom/Node.h: Make m_nodeLists an OwnPtr.  Moved getElementsByName and getElementsByClassName here

        Allow subclasses to choose whether they want to receive the notifications using a new bit.
        * dom/NodeList.cpp:
        (WebCore::NodeList::NodeList):
        * dom/NodeList.h:
        (WebCore::NodeList::needsNotifications):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28868 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years agoAdd support for GDI text on Windows.
hyatt@apple.com [Wed, 19 Dec 2007 19:24:10 +0000 (19:24 +0000)]
Add support for GDI text on Windows.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28867 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years agoAdd fourth preference value for GDI text font smoothing to WebKit.
hyatt@apple.com [Wed, 19 Dec 2007 19:13:16 +0000 (19:13 +0000)]
Add fourth preference value for GDI text font smoothing to WebKit.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28866 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago2007-12-19 Alp Toker <alp@atoker.com>
alp@webkit.org [Wed, 19 Dec 2007 18:41:17 +0000 (18:41 +0000)]
2007-12-19  Alp Toker  <alp@atoker.com>

        Remove the cairo-ft pkg-config check. The GTK+ port doesn't use
        cairo-ft directly following changes in r28864.

        * WebKit.pri:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28865 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago2007-12-19 Sven Herzberg <sven@imendio.com>
alp@webkit.org [Wed, 19 Dec 2007 18:00:23 +0000 (18:00 +0000)]
2007-12-19  Sven Herzberg  <sven@imendio.com>

        Reviewed by Alp Toker.

        Replace the fontconfig/freetype based font management with a pango
        based one. Fixes:
        http://bugs.webkit.org/show_bug.cgi?id=15229

        * platform/gtk/FontDataGtk.cpp (FontData::platformDestroy()): updated
        the platform specific destroy code
        (FontData::containsCharacters()): implemented font coverage with pango
        * platform/gtk/FontPlatformData.h: replaced fontconfig specific
        members with pango-specific ones
        * platform/gtk/FontPlatformDataGtk.cpp: added static members for the
        FontPlatformData class
        (FontPlatformData::FontPlatformData()): implemented the font-matching
        with a PangoFontDescription instead of an FcPattern; initialize the
        scaled font by using the API for PangoCairoFont
        (FontPlatformData::init()): initialize the PangoFontMap and set up a
        hash table to translate the font family name into a font family
        (FontPlatformData::isFixedPitch()): implemented by querying the
        PangoFontFamily
        (FontPlatformData::operator==): compare the FontPlatformData by
        comparing the font pointers or the described fonts
        * platform/gtk/GlyphPageTreeNodeGtk.cpp (pango_font_get_glyph()):
        added a function to query a glyph from a PangoFont
        (GlyphPage::fill()): implemented the fill function with Pango instead
        of fontconfig/freetype

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28864 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years agowx build process improvements, including added checks and outdated changes after...
kevino@webkit.org [Wed, 19 Dec 2007 17:36:57 +0000 (17:36 +0000)]
wx build process improvements, including added checks and outdated changes after the move to trunk.

Reviewed by Alp Toker

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28863 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago2007-12-19 Alp Toker <alp@atoker.com>
alp@webkit.org [Wed, 19 Dec 2007 17:00:01 +0000 (17:00 +0000)]
2007-12-19  Alp Toker  <alp@atoker.com>

        Reviewed by Holger Freyther.

        Delete when Destroy functions are called to avoid leaks

        This matches the Mac port.

        * WebCoreSupport/ChromeClientGtk.cpp:
        * WebCoreSupport/ContextMenuClientGtk.cpp:
        * WebCoreSupport/InspectorClientGtk.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28862 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago2007-12-19 Alp Toker <alp@atoker.com>
alp@webkit.org [Wed, 19 Dec 2007 16:55:58 +0000 (16:55 +0000)]
2007-12-19  Alp Toker  <alp@atoker.com>

        Reviewed by Holger Freyther.

        Improve graphics operator approximations

        These changes match Cairo's own CG approximations.

        * platform/graphics/cairo/GraphicsContextCairo.cpp:
        (WebCore::toCairoOperator):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28861 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago2007-12-19 Alp Toker <alp@atoker.com>
alp@webkit.org [Wed, 19 Dec 2007 16:55:37 +0000 (16:55 +0000)]
2007-12-19  Alp Toker  <alp@atoker.com>

        Reviewed by Holger Freyther.

        Check the bounding box before doing a full hit test

        * platform/graphics/cairo/PathCairo.cpp:
        (WebCore::Path::contains):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28860 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years agoBuild fix for non-Mac platforms. Move NodeInfo into its own header so that the YYTYP...
mrowe@apple.com [Wed, 19 Dec 2007 09:10:16 +0000 (09:10 +0000)]
Build fix for non-Mac platforms.  Move NodeInfo into its own header so that the YYTYPE declaration in grammar.h is able to declare members of that type.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28859 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago Reviewed by Geoff.
weinig@apple.com [Wed, 19 Dec 2007 08:41:14 +0000 (08:41 +0000)]
    Reviewed by Geoff.

        Fix for <rdar://problem/5646478>
        REGRESSION: fast/events/event-view-toString fails on Leopard

        This fixes an issue where we were incorrectly setting the lastInPrototypeChain
        for the JSDOMWindow (the global object) before a call to setPrototype overwrote
        it. This fixes it by passing the prototype up the constructor chain so that it
        is set before any calls can be made.

        * bindings/js/kjs_window.cpp:
        (KJS::Window::Window):
        * bindings/js/kjs_window.h:
        * bindings/scripts/CodeGeneratorJS.pm:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28858 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years agoMake appendToVarDeclarationList static
oliver@apple.com [Wed, 19 Dec 2007 08:13:00 +0000 (08:13 +0000)]
Make appendToVarDeclarationList static

RS=Weinig

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28857 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years agoWebCore:
bdakin@apple.com [Wed, 19 Dec 2007 07:53:52 +0000 (07:53 +0000)]
WebCore:

        Reviewed by Oliver.

        Fix for <rdar://problem/5616982> SVGs with width and height 100%
        fail to render when used as <img> or CSS image (16167)

        This final part of the work fixes the <img> tag.

        This is the real fix.
        * rendering/RenderImage.cpp:
        (WebCore::RenderImage::calcReplacedWidth): Set the container size
        on the image. Setting the container size only actually sticks if
        the values are non-zero, so if the container size really was set,
        use the imageSize that is calculated using the container size. If
        it did not stick but the image does have relative width (meaning
        that the container size is 0), set the width to 0 by hand. We want
        to avoid setting the width before we have a container size or we
        will end up incorrectly using the default size of 300x150.
        (WebCore::RenderImage::calcReplacedHeight): Same as above, but for
        height.

        A few more pieces of information have to be exposed through cached
        image to make this happen.
        * loader/CachedImage.cpp:
        (WebCore::CachedImage::usesImageContainerSize): As mentioned above,
        when setContainerSize() is called, the container size is only
        actually set if the values are non-zero. This call tells you if it
        was set.
        (WebCore::CachedImage::imageHasRelativeWidth):
        (WebCore::CachedImage::imageHasRelativeHeight):
        * loader/CachedImage.h:
        * platform/graphics/Image.h:
        (WebCore::Image::usesContainerSize):
        * svg/graphics/SVGImage.cpp:
        (WebCore::SVGImage::usesContainerSize):
        * svg/graphics/SVGImage.h:

LayoutTests:

        Reviewed by Oliver.

        Test for <rdar://problem/5616982> SVGs with width and height 100%
        fail to render when used as <img> or CSS image (16167)

        * fast/images/resources/green-relative-size-rect.svg: Added.
        * fast/images/svg-as-relative-image.html: Added.
        * platform/mac/fast/images/svg-as-relative-image-expected.checksum: Added.
        * platform/mac/fast/images/svg-as-relative-image-expected.png: Added.
        * platform/mac/fast/images/svg-as-relative-image-expected.txt: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28856 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years agoRemove dead code due to removal of post-parse declaration discovery.
oliver@apple.com [Wed, 19 Dec 2007 07:42:49 +0000 (07:42 +0000)]
Remove dead code due to removal of post-parse declaration discovery.

RS=Geoff.

Due to the removal of the declaration discovery pass after parsing we
no longer need any of the logic used for that discovery.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28855 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years agoReplace post-parse pass to find declarations with logic in the parser itself
oliver@apple.com [Wed, 19 Dec 2007 07:42:29 +0000 (07:42 +0000)]
Replace post-parse pass to find declarations with logic in the parser itself

Reviewed by Geoff.

Instead of finding declarations in a pass following the initial parsing of
a program, we incorporate the logic directly into the parser.  This lays
the groundwork for further optimisations (such as improving performance in
declaration expressions -- var x = y; -- to match that of standard assignment)
in addition to providing a 0.4% performance improvement in SunSpider.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28854 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years agoVersioning.
mrowe@apple.com [Wed, 19 Dec 2007 05:04:13 +0000 (05:04 +0000)]
Versioning.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28853 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years agoFix typo in hosted SunSpider page.
mrowe@apple.com [Wed, 19 Dec 2007 04:58:39 +0000 (04:58 +0000)]
Fix typo in hosted SunSpider page.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28850 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago Correct link to Visual Studio Express 2005.
sfalken@apple.com [Wed, 19 Dec 2007 04:54:33 +0000 (04:54 +0000)]
    Correct link to Visual Studio Express 2005.
        Old link points to 2008.

        Reviewed by Mark.

        * building/tools.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28849 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago * Scripts/make-js-test-wrappers: Don't generate a wrapper for select-options...
darin@apple.com [Wed, 19 Dec 2007 03:11:17 +0000 (03:11 +0000)]
    * Scripts/make-js-test-wrappers: Don't generate a wrapper for select-options-remove.js.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28848 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago2007-12-18 Xan Lopez <xan@gnome.org>
ddkilzer@apple.com [Wed, 19 Dec 2007 02:58:36 +0000 (02:58 +0000)]
2007-12-18  Xan Lopez  <xan@gnome.org>

        Reviewed by Geoff.

        Fix http://bugs.webkit.org/show_bug.cgi?id=14521
        Bug 14521: JavaScriptCore fails to build on Linux/PPC gcc 4.1.2

        * wtf/TCSpinLock.h:
        (TCMalloc_SpinLock::Unlock):

        Use less strict memory operand constraint on inline asm generation.
        PLATFORM(DARWIN) left unpatched due to Apple's GCC bug.

        Patch by David Kilzer <ddkilzer@webkit.org>

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28847 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years agoRemove outdated and non-functioning project files for the Apollo port. Rubber-stampe...
mrowe@apple.com [Wed, 19 Dec 2007 02:12:08 +0000 (02:12 +0000)]
Remove outdated and non-functioning project files for the Apollo port.  Rubber-stamped by Maciej Stachowiak and Chris Brichford.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28846 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago Reviewed by John Sullivan.
mitz@apple.com [Wed, 19 Dec 2007 01:41:12 +0000 (01:41 +0000)]
    Reviewed by John Sullivan.

        - remove passing test and reclassify one failing test

        * platform/win/Skipped: Removed fast/text/international/002.html.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28845 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago Reviewed by Geoffrey.
weinig@apple.com [Wed, 19 Dec 2007 01:12:26 +0000 (01:12 +0000)]
    Reviewed by Geoffrey.

        - Temporarily remove calls that are causing subsequent tests in DRT to fail.
          Filled http://bugs.webkit.org/show_bug.cgi?id=16510 to track the issue.

        * http/tests/security/cross-frame-access-history-expected.txt:
        * http/tests/security/cross-frame-access-history.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28844 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago Add script to run Drosera as part of the nightly.
sfalken@apple.com [Wed, 19 Dec 2007 00:58:22 +0000 (00:58 +0000)]
    Add script to run Drosera as part of the nightly.

        Reviewed by Kevin M.

        * Scripts/run-drosera.cmd: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28843 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago * Scripts/do-webcore-rename: Remove a stray K.
darin@apple.com [Wed, 19 Dec 2007 00:35:38 +0000 (00:35 +0000)]
    * Scripts/do-webcore-rename: Remove a stray K.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28842 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago - fix Windows build
darin@apple.com [Wed, 19 Dec 2007 00:34:00 +0000 (00:34 +0000)]
    - fix Windows build

        * pcre/pcre_exec.cpp:
        (jsRegExpExecute): Change back from false/true to 0/1 -- I probably should not have
        deleted MATCH_MATCH and MATCH_NOMATCH, but I'm going to leave them out.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28841 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago * Scripts/do-webcore-rename: Plan more renaming.
darin@apple.com [Tue, 18 Dec 2007 23:40:35 +0000 (23:40 +0000)]
    * Scripts/do-webcore-rename: Plan more renaming.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28840 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago <rdar://problem/5649911> REGRESSION (304-306A9): Typing 'p' in popup menu...
sfalken@apple.com [Tue, 18 Dec 2007 23:38:20 +0000 (23:38 +0000)]
    <rdar://problem/5649911> REGRESSION (304-306A9): Typing 'p' in popup menu for type-to-select brings up Safari Help

        Need to translate the char back into a key code for posting our WM_KEYDOWN.

        Reviewed by Ada.

        * platform/win/PopupMenuWin.cpp:
        (WebCore::PopupWndProc):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28839 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago <rdar://problem/5651534> REGRESSION(r28764-r28765): GDI leak drawing text...
sfalken@apple.com [Tue, 18 Dec 2007 22:56:48 +0000 (22:56 +0000)]
    <rdar://problem/5651534> REGRESSION(r28764-r28765): GDI leak drawing text when no appropriate font is available

        Our captured metafile from Uniscribe may contain multiple calls to CreateFontIndirect.
        Only create a font with the last one.

        Reviewed by Mitz, Darin.

        * platform/graphics/win/FontCacheWin.cpp:
        (WebCore::metaFileEnumProc):
        (WebCore::FontCache::getFontDataForCharacters):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28838 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago - fix failing regression test
darin@apple.com [Tue, 18 Dec 2007 22:32:47 +0000 (22:32 +0000)]
    - fix failing regression test

        * fast/regex/resources/TEMPLATE.html: Updated this template -- I accidentally landed
        the one that was copied without updating the paths.
        * fast/regex/slow.html: Regenerated.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28837 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago Reviewed by Darin.
alice.liu@apple.com [Tue, 18 Dec 2007 21:50:49 +0000 (21:50 +0000)]
    Reviewed by Darin.

        Fixed <rdar://problem/5646454> REGRESSION: dom/xhtml/level2/html/HTMLDocument12 fails on Leopard

        * fast/cookies/local-file-can-set-cookies.html:
        cookies are matched by domain and path, and since layout tests are file URLs,
        they all match on domain.  setting a cookie without specifying the path will
        make CFNetwork pick up the path from the URL automatically.  Since
        fast/cookies/local-file-can-set-cookies.html set a specific path of /, that
        cookie will be set for EVERY local file loaded in Safari.   removing that
        component from the cookie string will fix the problem.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28836 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago2007-12-17 Brent Fulgham <bfulgham@gmail.com>
alp@webkit.org [Tue, 18 Dec 2007 21:37:00 +0000 (21:37 +0000)]
2007-12-17  Brent Fulgham  <bfulgham@gmail.com>

        Reviewed by Darin.

        http://bugs.webkit.org/show_bug.cgi?id=16464
        Modify WebCore to use win32 thread primitives

        Updates to support native windows threading primitives
        rather than pthreads emulation library.

        * WebCore.vcproj/WebCore.vcproj:
        * config.h:
        * platform/Threading.h:
        * platform/win/MutexWin.cpp: Added.
        (WebCore::Mutex::Mutex):
        (WebCore::Mutex::~Mutex):
        (WebCore::Mutex::lock):
        (WebCore::Mutex::tryLock):
        (WebCore::Mutex::unlock):
        * platform/win/ThreadConditionWin.cpp: Added.
        (WebCore::ThreadCondition::ThreadCondition):
        (WebCore::ThreadCondition::~ThreadCondition):
        (WebCore::ThreadCondition::wait):
        (WebCore::ThreadCondition::signal):
        (WebCore::ThreadCondition::broadcast):
        * platform/win/ThreadingWin.cpp:
        (WebCore::threadMapMutex):
        (WebCore::threadMap):
        (WebCore::storeThreadHandleByIdentifier):
        (WebCore::identifierByThreadHandle):
        (WebCore::threadHandleForIdentifier):
        (WebCore::clearThreadHandleForIdentifier):
        (WebCore::createThread):
        (WebCore::waitForThreadCompletion):
        (WebCore::detachThread):
        (WebCore::currentThread):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28835 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago2007-12-18 Rodney Dawes <dobey@wayofthemonkey.com>
alp@webkit.org [Tue, 18 Dec 2007 21:36:31 +0000 (21:36 +0000)]
2007-12-18  Rodney Dawes  <dobey@wayofthemonkey.com>

        Reviewed by Darin Adler.

        Handle EINTR when set by select() and try the select() again
        http://bugs.webkit.org/show_bug.cgi?id=16071

        * platform/network/curl/ResourceHandleManager.cpp:
        (ResourceHandleManager::downloadTimerCallback):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28834 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years agoJavaScriptCore:
darin@apple.com [Tue, 18 Dec 2007 19:30:05 +0000 (19:30 +0000)]
JavaScriptCore:

        Reviewed by Geoff.

        - test for http://bugs.webkit.org/show_bug.cgi?id=16458
          REGRESSION (r28164): regular expressions can now hang due to lack of a match limit
          <rdar://problem/5636067>

        Test: fast/regex/slow.html

        Slows down SunSpider a bit (about 1.01x); filed a bug to follow up on that:
        http://bugs.webkit.org/show_bug.cgi?id=16503

        * pcre/pcre.h: Changed name of error code to not specifically mention "recursion".
        * pcre/pcre_exec.cpp:
        (match): Replaced the depth limit, MATCH_RECURSION_LIMIT, with a total match looping
        limit, matchLimit. Also eliminated the constants for MATCH_MATCH and MATCH_NOMATCH,
        since they are just true and false (1 and 0).
        (jsRegExpExecute): More of the MATCH_MATCH change.

LayoutTests:

        Reviewed by Geoff.

        - test for http://bugs.webkit.org/show_bug.cgi?id=16458
          REGRESSION (r28164): regular expressions can now hang due to lack of a match limit

        * fast/regex/resources: Added.
        * fast/regex/resources/TEMPLATE.html: Copied from fast/js/resources/TEMPLATE.html.
        * fast/regex/resources/slow.js: Added.
        * fast/regex/slow-expected.txt: Added.
        * fast/regex/slow.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28833 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago Reviewed by Dave Hyatt.
mitz@apple.com [Tue, 18 Dec 2007 18:58:57 +0000 (18:58 +0000)]
    Reviewed by Dave Hyatt.

        - avoid the simplified Chinese font linking code for characters that are
          not in any Windows code page

        * platform/graphics/win/FontCacheWin.cpp:
        (WebCore::FontCache::getFontDataForCharacters):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28832 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago Reviewed by John Sullivan.
mitz@apple.com [Tue, 18 Dec 2007 18:35:59 +0000 (18:35 +0000)]
    Reviewed by John Sullivan.

        - remove passing test

        * platform/win/Skipped: Removed fast/text/international/wrap-CJK-001.html

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28831 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago Reviewed by Adele
beidson@apple.com [Tue, 18 Dec 2007 18:19:13 +0000 (18:19 +0000)]
    Reviewed by Adele

        <rdar://problem/5525770> REGRESSION: HTTP Auth protected favicon request results in a password sheet

        Some http-auth protected sites have the main resource(s) unprotected, but many subresources are
        protected by authentication.  Occasionally one can view the main page of a site but the favicon
        is behind the iron curtain - in these cases, we should *not* prompt for a username and password
        solely for the favicon.

        * loader/ResourceLoader.h: Make didReceiveAuthenticationChallenge virtual

        * loader/SubresourceLoader.cpp:
        (WebCore::SubresourceLoader::didReceiveAuthenticationChallenge): Now that this method
          is virtual from ResourceLoader, SubresourceLoader can override.  First call to the
          SubresourceLoaderClient.  If they cancel the resource load, return early. Otherwise, let
          ResourceLoader work its magic (resulting in the auth sheet coming down)
        * loader/SubresourceLoader.h:

        * loader/SubresourceLoaderClient.h:
        (WebCore::SubresourceLoaderClient::didReceiveAuthenticationChallenge):

        * loader/icon/IconLoader.cpp:
        (WebCore::IconLoader::didReceiveAuthenticationChallenge): Cancel the resource load, since we should
          never prompt the user for credentials just for a favicon.
        * loader/icon/IconLoader.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28830 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago Reviewed by Brady
sullivan@apple.com [Tue, 18 Dec 2007 17:07:55 +0000 (17:07 +0000)]
    Reviewed by Brady

        - fixed <rdar://problem/5652380> Initial prompt shows "" for databases with no user-visible name

        * storage/DatabaseTracker.cpp:
        (WebCore::DatabaseTracker::canEstablishDatabase):
        pass "name" instead of "displayName" if there's no displayName

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28829 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago Reviewed by Eric.
mjs@apple.com [Tue, 18 Dec 2007 09:27:00 +0000 (09:27 +0000)]
    Reviewed by Eric.

        - give an extra digit of precision for small differences.

        * resources/sunspider-compare-results.js:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28828 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago Reviewed by Maciej Stachowiak.
mitz@apple.com [Tue, 18 Dec 2007 06:01:20 +0000 (06:01 +0000)]
    Reviewed by Maciej Stachowiak.

        - restore ButtonFace and ThreeDFace to their previous values for non-Mac
          platforms. The Mac port also uses the same values for now instead
          of NSColor-based ones.

        * rendering/RenderTheme.cpp:
        (WebCore::RenderTheme::systemColor):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28827 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago2007-12-17 Rodney Dawes <dobey@wayofthemonkey.com>
mrowe@apple.com [Tue, 18 Dec 2007 05:24:43 +0000 (05:24 +0000)]
2007-12-17  Rodney Dawes  <dobey@wayofthemonkey.com>

        Reviewed by Maciej Stachowiak.

        Define WTF_USE_NPOBJECT and WTF_USE_JAVASCRIPTCORE_BINDINGS for GTK+
        Add required Frame::createScriptInstanceForWidget to FrameGtk

        * config.h:
        * page/gtk/FrameGtk.cpp (Frame::createScriptInstanceForWidget):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28826 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years agoSunSpider:
mjs@apple.com [Tue, 18 Dec 2007 04:39:33 +0000 (04:39 +0000)]
SunSpider:

        Reviewed by Eric.

        - work around IE layout bugs

        * hosted/sunspider.css:

WebKitSite:

        Reviewed by Eric.

        - work around IE layout bugs

        * perf/sunspider-0.9/sunspider.css:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28825 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago Reviewed by Adam.
alice.liu@apple.com [Tue, 18 Dec 2007 02:21:59 +0000 (02:21 +0000)]
    Reviewed by Adam.

        Fixed <rdar://5566435> window with no scrollbars can be scrolled

        * platform/win/ScrollViewWin.cpp:
        (WebCore::ScrollView::maximumScroll):
        corrected maximumScroll() to account for scrolling not allowed.
        (WebCore::ScrollView::wheelEvent):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28824 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago Reviewed by Adam.
alice.liu@apple.com [Tue, 18 Dec 2007 02:10:56 +0000 (02:10 +0000)]
    Reviewed by Adam.

        Test for <rdar://problem/5566435> window with no scrollbars can still be scrolled with wheelevent

        * fast/events/attempt-scroll-with-no-scrollbars-expected.txt: Added.
        * fast/events/attempt-scroll-with-no-scrollbars.html: Added.
        * platform/mac/Skipped:
        Adding to mac Skipped list because of <rdar://problem/5643675> window.scrollTo scrolls a window with no scrollbars
        * platform/win/Skipped:
        Adding to win Skipped list because of <rdar://problem/5132009> Windows DRT does not support multiple windows

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28823 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago Reviewed by Sam.
darin@apple.com [Tue, 18 Dec 2007 01:30:07 +0000 (01:30 +0000)]
    Reviewed by Sam.

        - <rdar://4516170> Back/Forward Cache on Windows

        * WebFrame.cpp:
        (WebFrame::forceLayout): Implemented this. Just calling through to
        Frame::forceLayout matches the Mac pretty well and should be enough
        for now. Without this we won't repaint the new page when we go back
        and forward.
        (WebFrame::dispatchWillSubmitForm): Use COMPtr's AdoptCOM constructor
        instead of the adoptRef function.
        (WebFrame::restoreViewState): Removed unneeded notImplemented() call.
        This is implemented as much as it needs to be.
        (WebFrame::shouldGoToHistoryItem): Ditto.
        (WebFrame::saveViewStateToItem): Ditto.
        (WebFrame::canCachePage): Ditto, also changed it to return true. This
        is what was preventing the back/forward cache from running, and there's
        no need for any additional checks in the Windows version.

        * WebView.cpp:
        (PreferencesChangedOrRemovedObserver::onNotify): Fix backwards null check
        that was preventing this notification from ever being sent, which in turn
        meant that page cache had a capacity of 0.
        (WebView::initWithFrame): Removed unneeded setUsesPageCache(false) code.
        This actually was ineffective and ended up doing no harm, but we don't
        need it.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28822 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago - disabling this test until we can find a way to make it pass on diverse...
darin@apple.com [Mon, 17 Dec 2007 22:54:54 +0000 (22:54 +0000)]
    - disabling this test until we can find a way to make it pass on diverse machines

        * fast/css/css2-system-color.html: Removed.
        * fast/css/css2-system-color.html-disabled: Copied from fast/css/css2-system-color.html.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28820 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago2007-12-14 Juan A. Suarez Romero <jasuarez@igalia.com>
alp@webkit.org [Mon, 17 Dec 2007 20:54:49 +0000 (20:54 +0000)]
2007-12-14  Juan A. Suarez Romero  <jasuarez@igalia.com>

        Reviewed by Alp Toker.

        http://bugs.webkit.org/show_bug.cgi?id=16042
        [GTK] Eliminate webkit_init()

        Move webkit initialization to WebView class init.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28818 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago2007-12-17 Luca Bruno <lethalman88@gmail.com>
alp@webkit.org [Mon, 17 Dec 2007 20:51:36 +0000 (20:51 +0000)]
2007-12-17  Luca Bruno  <lethalman88@gmail.com>

        Reviewed by Alp Toker.

        http://bugs.webkit.org/show_bug.cgi?id=13542
        gdklauncher doesnt change URL in adress GTKEntry.

        Let DOMDocument observers do their work before emitting title-changed.
        The load-committed signal has been added for both the view and the frame.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28817 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago2007-12-17 Jon Honeycutt <jhoneycutt@apple.com>
jhoneycutt@apple.com [Mon, 17 Dec 2007 19:48:29 +0000 (19:48 +0000)]
2007-12-17  Jon Honeycutt  <jhoneycutt@apple.com>

        Reviewed by Darin.

        <rdar://problem/5651291> REGRESSION: Flash content doesn't display
        (www.adobe.com)

        We were passing NPEvent** instead of NPEvent* to NPP_HandleEvent.

        * plugins/win/PluginViewWin.cpp:
        (WebCore::PluginViewWin::dispatchNPEvent): Changed to take NPEvent&, not
        NPEvent*
        (WebCore::PluginViewWin::paint): Pass NPEvent, not NPEvent*
        (WebCore::PluginViewWin::handleKeyboardEvent): same
        (WebCore::PluginViewWin::handleMouseEvent): same
        * plugins/win/PluginViewWin.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28816 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago Fix argument to window.open.
andersca@apple.com [Mon, 17 Dec 2007 19:44:31 +0000 (19:44 +0000)]
    Fix argument to window.open.

        * http/tests/misc/window-open-then-write.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28815 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago2007-12-17 Mark Rowe <mrowe@apple.com>
mrowe@apple.com [Mon, 17 Dec 2007 18:42:35 +0000 (18:42 +0000)]
2007-12-17  Mark Rowe  <mrowe@apple.com>

        Update test results after r28812.

        * platform/mac-tiger/fast/css/css2-system-color-expected.txt:
        * platform/mac/fast/css/css2-system-color-expected.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28814 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago Reviewed by Darin.
ap@webkit.org [Mon, 17 Dec 2007 18:34:17 +0000 (18:34 +0000)]
    Reviewed by Darin.

        Live to the promise of never making AppKit special character codes visible via DOM.

        Test: fast/events/arrow-keys-on-body.html

        * page/EventHandler.cpp:
        (WebCore::EventHandler::keyEvent): Check for empty keypress characters after disambiguation,
        to let quirks-aware code strip special charactrers.
        * platform/mac/KeyEventMac.mm:
        (WebCore::PlatformKeyboardEvent::disambiguateKeyDownEvent): If not in keyboard event quirks
        mode, remove the text if it's a special character.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28813 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago2007-12-17 Mark Rowe <mrowe@apple.com>
mrowe@apple.com [Mon, 17 Dec 2007 18:21:43 +0000 (18:21 +0000)]
2007-12-17  Mark Rowe  <mrowe@apple.com>

        Reviewed by Darin Adler.

        Fix incorrect array size and incorrect array index in convertNSColorToColor.

        * rendering/RenderThemeMac.mm:
        (WebCore::convertNSColorToColor):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28812 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago Reviewed by Mark Rowe.
darin@apple.com [Mon, 17 Dec 2007 17:53:23 +0000 (17:53 +0000)]
    Reviewed by Mark Rowe.

        - fix http://bugs.webkit.org/show_bug.cgi?id=16468
          REGRESSION(r28781): Crash running storage/transaction_callback_exception_crash.html

        * storage/DatabaseThread.cpp:
        (WebCore::DatabaseThread::dispatchNextTaskIdentifier): Use a RefPtr for the database
        because there's no guarantee it won't lose its last reference otherwise.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28811 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago Reviewed by Maciej Stachowiak.
mitz@apple.com [Mon, 17 Dec 2007 17:09:56 +0000 (17:09 +0000)]
    Reviewed by Maciej Stachowiak.

        - fix <rdar://problem/5333260> Some Chinese characters in Text Encoding menu are bold, others are not
          and <rdar://problem/5280188> Chinese text looks worse on Safari for Windows cf. Safari for Mac

        * platform/graphics/win/FontCacheWin.cpp:
        (WebCore::FontCache::getFontDataForCharacters): To ensure that font
        linking gives consistent results for characters that are exclusive to
        the simplified Chinese code page and characters that belong to that
        code page and other code pages, always ask to map to simplified Chinese
        alone first.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28810 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago2007-12-17 Christian Dywan <christian@twotoasts.de>
alp@webkit.org [Mon, 17 Dec 2007 16:18:44 +0000 (16:18 +0000)]
2007-12-17  Christian Dywan  <christian@twotoasts.de>

        Reviewed by Alp Toker.

        http://bugs.webkit.org/show_bug.cgi?id=16378
        Implement Icon for Gtk

        Icon provides a GdkPixbuf containing a themed icon.
        The icon theme is probed for an icon name according to the
        Icon Naming Specification or conventional Gnome icon names respectively.

        See http://standards.freedesktop.org/icon-naming-spec/icon-naming-spec-latest.html

        * platform/graphics/Icon.h:
        * platform/graphics/gtk/IconGtk.cpp:
        (WebCore::Icon::~Icon):
        (WebCore::lookupIconName):
        (WebCore::Icon::newIconForFile):
        (WebCore::Icon::paint):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28809 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years agoSunSpider:
mjs@apple.com [Mon, 17 Dec 2007 11:50:53 +0000 (11:50 +0000)]
SunSpider:

        Reviewed by Mark.

        - fix compare feature

        * hosted/sunspider-results.html:

WebKitSite:

        Reviewed by Mark.

        - fix compare feature

        * perf/sunspider-0.9/sunspider-results.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28806 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago Rubber stamped by Mark.
mjs@apple.com [Mon, 17 Dec 2007 09:44:17 +0000 (09:44 +0000)]
    Rubber stamped by Mark.

        - Add a copy of SunSpider 0.9 to the site

        * perf: Added.
        * perf/sunspider-0.9: Added.
        * perf/sunspider-0.9/3d-cube.html: Added.
        * perf/sunspider-0.9/3d-morph.html: Added.
        * perf/sunspider-0.9/3d-raytrace.html: Added.
        * perf/sunspider-0.9/access-binary-trees.html: Added.
        * perf/sunspider-0.9/access-fannkuch.html: Added.
        * perf/sunspider-0.9/access-nbody.html: Added.
        * perf/sunspider-0.9/access-nsieve.html: Added.
        * perf/sunspider-0.9/bitops-3bit-bits-in-byte.html: Added.
        * perf/sunspider-0.9/bitops-bits-in-byte.html: Added.
        * perf/sunspider-0.9/bitops-bitwise-and.html: Added.
        * perf/sunspider-0.9/bitops-nsieve-bits.html: Added.
        * perf/sunspider-0.9/controlflow-recursive.html: Added.
        * perf/sunspider-0.9/crypto-aes.html: Added.
        * perf/sunspider-0.9/crypto-md5.html: Added.
        * perf/sunspider-0.9/crypto-sha1.html: Added.
        * perf/sunspider-0.9/date-format-tofte.html: Added.
        * perf/sunspider-0.9/date-format-xparb.html: Added.
        * perf/sunspider-0.9/math-cordic.html: Added.
        * perf/sunspider-0.9/math-partial-sums.html: Added.
        * perf/sunspider-0.9/math-spectral-norm.html: Added.
        * perf/sunspider-0.9/regexp-dna.html: Added.
        * perf/sunspider-0.9/string-base64.html: Added.
        * perf/sunspider-0.9/string-fasta.html: Added.
        * perf/sunspider-0.9/string-tagcloud.html: Added.
        * perf/sunspider-0.9/string-unpack-code.html: Added.
        * perf/sunspider-0.9/string-validate-input.html: Added.
        * perf/sunspider-0.9/sunspider-analyze-results.js: Added.
        * perf/sunspider-0.9/sunspider-compare-results.js: Added.
        * perf/sunspider-0.9/sunspider-driver.html: Added.
        * perf/sunspider-0.9/sunspider-record-result.js: Added.
        * perf/sunspider-0.9/sunspider-results.html: Added.
        * perf/sunspider-0.9/sunspider-test-prefix.js: Added.
        * perf/sunspider-0.9/sunspider.css: Added.
        * perf/sunspider-0.9/sunspider.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28803 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago Reviewed by Mark.
mjs@apple.com [Mon, 17 Dec 2007 09:43:01 +0000 (09:43 +0000)]
    Reviewed by Mark.

        - Change the format of the output URL to be shorter, to meet IE constraints

        * hosted/sunspider-driver.html:
        * hosted/sunspider-results.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28801 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago - speculative build fix for non-gcc platforms
darin@apple.com [Mon, 17 Dec 2007 08:56:54 +0000 (08:56 +0000)]
    - speculative build fix for non-gcc platforms

        * pcre/pcre_exec.cpp: (match): Remove unused cases from return switch.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28799 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago Reviewed by Mitz.
weinig@apple.com [Mon, 17 Dec 2007 07:19:08 +0000 (07:19 +0000)]
    Reviewed by Mitz.

        Fix for http://bugs.webkit.org/show_bug.cgi?id=16466
        Move the JS Location object to its own file

        - Move Location into its own file and rename it JSLocation.

        * DerivedSources.make:
        * WebCore.pro:
        * WebCore.vcproj/WebCore.vcproj:
        * WebCore.xcodeproj/project.pbxproj:
        * WebCoreSources.bkl:
        * bindings/js/JSDocumentCustom.cpp:
        * bindings/js/JSLocation.cpp: Copied from WebCore/bindings/js/kjs_window.cpp.
        (WebCore::):
        (WebCore::JSLocation::JSLocation):
        (WebCore::JSLocation::getValueProperty):
        (WebCore::JSLocation::getOwnPropertySlot):
        (WebCore::JSLocation::put):
        (WebCore::JSLocationProtoFuncReplace::callAsFunction):
        (WebCore::JSLocationProtoFuncReload::callAsFunction):
        (WebCore::JSLocationProtoFuncAssign::callAsFunction):
        (WebCore::JSLocationProtoFuncToString::callAsFunction):
        * bindings/js/JSLocation.h: Copied from WebCore/bindings/js/kjs_window.h.
        (WebCore::JSLocation::):
        (WebCore::JSLocation::frame):
        (WebCore::JSLocation::classInfo):
        * bindings/js/kjs_window.cpp:
        (KJS::Window::location):
        * bindings/js/kjs_window.h:
        * history/CachedPage.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28798 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago Reviewed by Sam Weinig.
mitz@apple.com [Mon, 17 Dec 2007 06:26:50 +0000 (06:26 +0000)]
    Reviewed by Sam Weinig.

        - make 'cursor: copy' and 'cursor: none' work.

        Already covered by manual-tests/cursor.html

        * rendering/RenderStyle.h: Increase the _cursor_style field to 6 bits,
        needed for the 33rd and 34th cursor values.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28797 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years agoSpeculative build fix for non-Mac platforms.
mrowe@apple.com [Mon, 17 Dec 2007 06:01:22 +0000 (06:01 +0000)]
Speculative build fix for non-Mac platforms.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28796 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years agoRefactor Mac plugin stream code to use the shared NetscapePlugInStreamLoader implemen...
mrowe@apple.com [Mon, 17 Dec 2007 06:00:49 +0000 (06:00 +0000)]
Refactor Mac plugin stream code to use the shared NetscapePlugInStreamLoader implementation.

Reviewed by Maciej Stachowiak.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28795 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago Reviewed by Maciej.
weinig@apple.com [Mon, 17 Dec 2007 04:50:53 +0000 (04:50 +0000)]
    Reviewed by Maciej.

        Yet more of http://bugs.webkit.org/show_bug.cgi?id=16385
        Cleanup kjs_window

        - Move ScheduledAction into its own file and put it in the WebCore namespace.

        * WebCore.pro:
        * WebCore.vcproj/WebCore.vcproj:
        * WebCore.xcodeproj/project.pbxproj:
        * WebCoreSources.bkl:
        * bindings/js/PausedTimeouts.cpp:
        * bindings/js/PausedTimeouts.h:
        * bindings/js/ScheduledAction.cpp: Copied from bindings/js/kjs_window.cpp.
        (WebCore::ScheduledAction::ScheduledAction):
        (WebCore::ScheduledAction::execute):
        * bindings/js/ScheduledAction.h: Copied from bindings/js/kjs_window.h.
        (WebCore::ScheduledAction::ScheduledAction):
        * bindings/js/kjs_window.cpp:
        (KJS::DOMWindowTimer::DOMWindowTimer):
        (KJS::DOMWindowTimer::action):
        (KJS::DOMWindowTimer::takeAction):
        (KJS::Window::installTimeout):
        (KJS::Window::timerFired):
        * bindings/js/kjs_window.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28794 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago Reviewed by Maciej.
darin@apple.com [Mon, 17 Dec 2007 04:19:25 +0000 (04:19 +0000)]
    Reviewed by Maciej.

        - http://bugs.webkit.org/show_bug.cgi?id=16438
        - removed some more unused code
        - changed quite a few more names to WebKit-style
        - moved more things out of pcre_internal.h
        - changed some indentation to WebKit-style
        - improved design of the functions for reading and writing
          2-byte values from the opcode stream (in pcre_internal.h)

        * pcre/dftables.cpp:
        (main): Added the kjs prefix a normal way in lieu of using macros.

        * pcre/pcre_compile.cpp: Moved some definitions here from pcre_internal.h.
        (errorText): Name changes, fewer typedefs.
        (checkEscape): Ditto. Changed uppercase conversion to use toASCIIUpper.
        (isCountedRepeat): Name change.
        (readRepeatCounts): Name change.
        (firstSignificantOpcode): Got rid of the use of OP_lengths, which is
        very lightly used here. Hard-coded the length of OP_BRANUMBER.
        (firstSignificantOpcodeSkippingAssertions): Ditto. Also changed to
        use the advanceToEndOfBracket function.
        (getOthercaseRange): Name changes.
        (encodeUTF8): Ditto.
        (compileBranch): Name changes. Removed unused after_manual_callout and
        the code to handle it. Removed code to handle OP_ONCE since we never
        emit this opcode. Changed to use advanceToEndOfBracket in more places.
        (compileBracket): Name changes.
        (branchIsAnchored): Removed code to handle OP_ONCE since we never emit
        this opcode.
        (bracketIsAnchored): Name changes.
        (branchNeedsLineStart): More fo the same.
        (bracketNeedsLineStart): Ditto.
        (branchFindFirstAssertedCharacter): Removed OP_ONCE code.
        (bracketFindFirstAssertedCharacter): More of the same.
        (calculateCompiledPatternLengthAndFlags): Ditto.
        (returnError): Name changes.
        (jsRegExpCompile): Ditto.

        * pcre/pcre_exec.cpp: Moved some definitions here from pcre_internal.h.
        (matchRef): Updated names.
        Improved macros to use the do { } while(0) idiom so they expand to single
        statements rather than to blocks or multiple statements. And refeactored
        the recursive match macros.
        (MatchStack::pushNewFrame): Name changes.
        (getUTF8CharAndIncrementLength): Name changes.
        (match): Name changes. Removed the ONCE opcode.
        (jsRegExpExecute): Name changes.

        * pcre/pcre_internal.h: Removed quite a few unneeded includes. Rewrote
        quite a few comments. Removed the macros that add kjs prefixes to the
        functions with external linkage; instead renamed the functions. Removed
        the unneeded typedefs pcre_uint16, pcre_uint32, and uschar. Removed the
        dead and not-all-working code for LINK_SIZE values other than 2, although
        we aim to keep the abstraction working. Removed the OP_LENGTHS macro.
        (put2ByteValue): Replaces put2ByteOpcodeValueAtOffset.
        (get2ByteValue): Replaces get2ByteOpcodeValueAtOffset.
        (put2ByteValueAndAdvance): Replaces put2ByteOpcodeValueAtOffsetAndAdvance.
        (putLinkValueAllowZero): Replaces putOpcodeValueAtOffset; doesn't do the
        addition, since a comma is really no better than a plus sign. Added an
        assertion to catch out of range values and changed the parameter type to
        int rather than unsigned.
        (getLinkValueAllowZero): Replaces getOpcodeValueAtOffset.
        (putLinkValue): New function that most former callers of the
        putOpcodeValueAtOffset function can use; asserts the value that is
        being stored is non-zero and then calls putLinkValueAllowZero.
        (getLinkValue): Ditto.
        (putLinkValueAndAdvance): Replaces putOpcodeValueAtOffsetAndAdvance. No
        caller was using an offset, which makes sense given the advancing behavior.
        (putLinkValueAllowZeroAndAdvance): Ditto.
        (isBracketOpcode): Added. For use in an assertion.
        (advanceToEndOfBracket): Renamed from moveOpcodePtrPastAnyAlternateBranches,
        and removed comments about how it's not well designed. This function takes
        a pointer to the beginning of a bracket and advances to the end of the
        bracket.

        * pcre/pcre_tables.cpp: Updated names.
        * pcre/pcre_ucp_searchfuncs.cpp:
        (kjs_pcre_ucp_othercase): Ditto.
        * pcre/pcre_xclass.cpp:
        (getUTF8CharAndAdvancePointer): Ditto.
        (kjs_pcre_xclass): Ditto.
        * pcre/ucpinternal.h: Ditto.

        * wtf/ASCIICType.h:
        (WTF::isASCIIAlpha): Added an int overload, like the one we already have for
        isASCIIDigit.
        (WTF::isASCIIAlphanumeric): Ditto.
        (WTF::isASCIIHexDigit): Ditto.
        (WTF::isASCIILower): Ditto.
        (WTF::isASCIISpace): Ditto.
        (WTF::toASCIILower): Ditto.
        (WTF::toASCIIUpper): Ditto.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28793 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago2007-12-16 Alp Toker <alp@atoker.com>
alp@webkit.org [Mon, 17 Dec 2007 04:08:39 +0000 (04:08 +0000)]
2007-12-16  Alp Toker  <alp@atoker.com>

        Reviewed by Maciej.

        http://bugs.webkit.org/show_bug.cgi?id=16356
        [GTK] Integrate GStreamer video with the graphics backend

        Integrate the GStreamer media backend with the Cairo graphics backend.
        There are still some issues: Data is copied more often than necessary,
        and repaint() is not called, causing transformed video not to update
        sometimes.

        * WebCore.pro:
        * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
        (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
        (WebCore::MediaPlayerPrivate::~MediaPlayerPrivate):
        (WebCore::MediaPlayerPrivate::currentTime):
        (WebCore::MediaPlayerPrivate::setEndTime):
        (WebCore::MediaPlayerPrivate::seeking):
        (WebCore::MediaPlayerPrivate::naturalSize):
        (WebCore::MediaPlayerPrivate::setMuted):
        (WebCore::MediaPlayerPrivate::setRect):
        (WebCore::MediaPlayerPrivate::setVisible):
        (WebCore::MediaPlayerPrivate::repaint):
        (WebCore::MediaPlayerPrivate::paint):
        (WebCore::MediaPlayerPrivate::createGSTPlayBin):
        * platform/graphics/gtk/MediaPlayerPrivateGStreamer.h:
        * platform/graphics/gtk/VideoSinkGStreamer.cpp: Added.
        (webkit_video_sink_base_init):
        (webkit_video_sink_init):
        (webkit_video_sink_idle_func):
        (webkit_video_sink_render):
        (webkit_video_sink_set_caps):
        (webkit_video_sink_dispose):
        (webkit_video_sink_finalize):
        (webkit_video_sink_set_property):
        (webkit_video_sink_get_property):
        (webkit_video_sink_stop):
        (webkit_video_sink_class_init):
        (webkit_video_sink_new):
        (webkit_video_sink_set_surface):
        (plugin_init):
        * platform/graphics/gtk/VideoSinkGStreamer.h: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28792 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago2007-12-16 Mark Rowe <mrowe@apple.com>
mrowe@apple.com [Mon, 17 Dec 2007 02:09:28 +0000 (02:09 +0000)]
2007-12-16  Mark Rowe  <mrowe@apple.com>

        Mac build fix.

        * WebCore.xcodeproj/project.pbxproj: Remove NetscapePlugInStreamLoader.cpp from the WebCore target.
        Mac currently has its own implementation in NetscapePlugInStreamLoaderMac.mm which conflicts with the
        new shared implementation.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28791 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago2007-12-16 Rodney Dawes <dobey@wayofthemonkey.com>
mrowe@apple.com [Mon, 17 Dec 2007 01:50:18 +0000 (01:50 +0000)]
2007-12-16  Rodney Dawes  <dobey@wayofthemonkey.com>

        Reviewed by Maciej Stachowiak.

        http://bugs.webkit.org/show_bug.cgi?id=16389
        Bug 16389: Common Implementation of NetscapePlugInStreamLoader

        * WebCore.vcproj/WebCore.vcproj: Remove NetscapePlugInStreamLoaderWin.cpp.
        * loader/NetscapePlugInStreamLoader.cpp: Copy method implementations from NetscapePlugInStreamLoaderWin.cpp.
        * loader/win/NetscapePlugInStreamLoaderWin.cpp: Removed.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28790 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago2007-12-16 Dimitri Glazkov <dimitri@glazkov.com>
mrowe@apple.com [Mon, 17 Dec 2007 01:35:37 +0000 (01:35 +0000)]
2007-12-16  Dimitri Glazkov  <dimitri@glazkov.com>

        Reviewed by Adam Roben.

        Remove the double-quotes around the PATH variable value, in order to make it work in Windows shell.

        * FindSafari/FindSafari.cpp:
        (_tmain):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28789 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago2007-12-16 Brent Fulgham <bfulgham@gmail.com>
mrowe@apple.com [Mon, 17 Dec 2007 01:33:16 +0000 (01:33 +0000)]
2007-12-16  Brent Fulgham  <bfulgham@gmail.com>

        Reviewed by Adam Roben.

        http://bugs.webkit.org/show_bug.cgi?id=16315
        FindSafari needs a path-only option.

        * FindSafari/FindSafari.cpp:
        (_tmain):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28788 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago * fast/js/regexp-overflow-expected.txt: Updated. I accidentally checked in an
darin@apple.com [Mon, 17 Dec 2007 01:31:06 +0000 (01:31 +0000)]
    * fast/js/regexp-overflow-expected.txt: Updated. I accidentally checked in an
        out-of-date file last time.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28787 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago Reviewed by Darin Adler.
darin@apple.com [Mon, 17 Dec 2007 01:28:32 +0000 (01:28 +0000)]
    Reviewed by Darin Adler.

        Fix http://bugs.webkit.org/show_bug.cgi?id=16433.
        Bug 16433: LOW_BANDWIDTH_DISPLAY build is broken

        * dom/Document.cpp:
        (WebCore::Document::Document):
        * loader/FrameLoader.cpp:
        (WebCore::FrameLoader::addLowBandwidthDisplayRequest):
        (WebCore::FrameLoader::switchOutLowBandwidthDisplayIfReady):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28786 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years agoJavaScriptCore:
darin@apple.com [Mon, 17 Dec 2007 01:26:54 +0000 (01:26 +0000)]
JavaScriptCore:

        Reviewed by Maciej.

        - fix http://bugs.webkit.org/show_bug.cgi?id=16459
          REGRESSION: assertion failure with regexp with \B in a case-ignoring character range
          <rdar://problem/5646361>

        The problem was that \B was not handled properly in character classes.

        Test: fast/js/regexp-overflow.html

        * pcre/pcre_compile.cpp:
        (check_escape): Added handling of ESC_b and ESC_B in character classes here.
        Allows us to get rid of the handling of \b in character classes from all the
        call sites that handle it separately and to handle \B properly as well.
        (compileBranch): Remove the ESC_b handling, since it's not needed any more.
        (calculateCompiledPatternLengthAndFlags): Ditto.

LayoutTests:

        Reviewed by Maciej.

        - test for http://bugs.webkit.org/show_bug.cgi?id=16459
          REGRESSION: assertion failure with regexp with \B in a case-ignoring character range
          <rdar://problem/5646361>

        * fast/js/regexp-overflow-expected.txt: Updated.
        * fast/js/resources/regexp-overflow.js: Added test cases.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28785 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago2007-12-16 Grace Kloba <klobag@gmail.com>
mrowe@apple.com [Mon, 17 Dec 2007 01:26:46 +0000 (01:26 +0000)]
2007-12-16  Grace Kloba  <klobag@gmail.com>

        Reviewed by Darin Adler.

        Fix http://bugs.webkit.org/show_bug.cgi?id=16433.
        Bug 16433: LOW_BANDWIDTH_DISPLAY build is broken

        * dom/Document.cpp:
        (WebCore::Document::Document):
        * loader/FrameLoader.cpp:
        (WebCore::FrameLoader::addLowBandwidthDisplayRequest):
        (WebCore::FrameLoader::switchOutLowBandwidthDisplayIfReady):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28784 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago2007-12-16 Brent Fulgham <bfulgham@gmail.com>
mrowe@apple.com [Mon, 17 Dec 2007 01:20:57 +0000 (01:20 +0000)]
2007-12-16  Brent Fulgham  <bfulgham@gmail.com>

        Reviewed by Maciej Stachowiak.

        http://bugs.webkit.org/show_bug.cgi?id=16446.

        * building/debug.html:  Update to expand the win32 debugging instructions.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28783 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years agoFix http://bugs.webkit.org/show_bug.cgi?id=16448 ([GTK] Celtic Kane JavaScript perfor...
mrowe@apple.com [Mon, 17 Dec 2007 01:14:36 +0000 (01:14 +0000)]
Fix bugs.webkit.org/show_bug.cgi?id=16448 ([GTK] Celtic Kane JavaScript performance on Array test is slow relative to Mac).

Reviewed by Maciej Stachowiak.

* kjs/array_instance.cpp:
(KJS::compareByStringPairForQSort):
(KJS::ArrayInstance::sort): Convert JSValue's to strings once up front and then sort the
results.  This avoids calling toString twice per comparison, but requires a temporary buffer
so we only use this approach in cases where the array being sorted is not too large.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28782 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years agoWebCore:
darin@apple.com [Mon, 17 Dec 2007 00:24:48 +0000 (00:24 +0000)]
WebCore:

        Reviewed by Darin.

        More of http://bugs.webkit.org/show_bug.cgi?id=16385
        Cleanup kjs_window

        - Move PausedTimeouts into its own file and put it in the WebCore namespace.

        * WebCore.pro:
        * WebCore.vcproj/WebCore.vcproj:
        * WebCore.xcodeproj/project.pbxproj:
        * WebCoreSources.bkl:
        * bindings/js/PausedTimeouts.cpp: Copied from bindings/js/kjs_window.cpp.
        * bindings/js/PausedTimeouts.h: Copied from bindings/js/kjs_window.h.
        * bindings/js/kjs_window.cpp:
        (KJS::Window::pauseTimeouts):
        * bindings/js/kjs_window.h:
        * history/CachedPage.cpp:
        * history/CachedPage.h:
        * page/Chrome.cpp:

LayoutTests:

        Reviewed by Maciej.

        - tests for the argument handling of the executeSql function

        * storage/execute-sql-args-expected.txt: Added.
        * storage/execute-sql-args.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28781 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago - try to get the system color test passing on the buildbot
darin@apple.com [Mon, 17 Dec 2007 00:17:29 +0000 (00:17 +0000)]
    - try to get the system color test passing on the buildbot

        I fear this test may be vulnerable to slight platform differences.

        * platform/mac-tiger/fast: Added.
        * platform/mac-tiger/fast/css: Added.
        * platform/mac-tiger/fast/css/css2-system-color-expected.checksum: Copied from platform/mac/fast/css/css2-system-color-expected.checksum.
        * platform/mac-tiger/fast/css/css2-system-color-expected.png: Copied from platform/mac/fast/css/css2-system-color-expected.png.
        * platform/mac-tiger/fast/css/css2-system-color-expected.txt: Copied from platform/mac/fast/css/css2-system-color-expected.txt.
        Then updated to match what the buildbot says.

        * platform/mac/fast/css/css2-system-color-expected.txt: Updated to match
        results I'm getting locally on my Leopard machine.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28780 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 years ago Reviewed by Darin.
weinig@apple.com [Sun, 16 Dec 2007 23:59:02 +0000 (23:59 +0000)]
    Reviewed by Darin.

        More of http://bugs.webkit.org/show_bug.cgi?id=16385
        Cleanup kjs_window

        - Move PausedTimeouts into its own file and put it in the WebCore namespace.

        * WebCore.pro:
        * WebCore.vcproj/WebCore.vcproj:
        * WebCore.xcodeproj/project.pbxproj:
        * WebCoreSources.bkl:
        * bindings/js/PausedTimeouts.cpp: Copied from bindings/js/kjs_window.cpp.
        * bindings/js/PausedTimeouts.h: Copied from bindings/js/kjs_window.h.
        * bindings/js/kjs_window.cpp:
        (KJS::Window::pauseTimeouts):
        * bindings/js/kjs_window.h:
        * history/CachedPage.cpp:
        * history/CachedPage.h:
        * page/Chrome.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28779 268f45cc-cd09-0410-ab3c-d52691b4dbfc