Timeline



Apr 6, 2008:

11:55 PM Changeset in webkit [31679] by beidson@apple.com
  • 2 edits in trunk/WebCore

2008-04-06 Brady Eidson <beidson@apple.com>

Attempt to tickle Windows build into accepting this idl

  • storage/StorageEvent.idl:
11:39 PM Changeset in webkit [31678] by beidson@apple.com
  • 7 edits
    12 adds in trunk/WebCore

2008-04-06 Brady Eidson <beidson@apple.com>

Reviewed by Sam

HTML5 Session and Local Storage

Land a bunch of empty files and interfaces to keep things building while
I finish off the rest of the implementation of SessionStorage

  • DerivedSources.make:
  • GNUmakefile.am:
  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • WebCoreSources.bkl:
  • storage/OriginStorage.cpp: Added.
  • storage/OriginStorage.h: Added.
  • storage/SessionStorage.cpp: Added.
  • storage/SessionStorage.h: Added.
  • storage/Storage.cpp: Added. (WebCore::Storage::length): (WebCore::Storage::key): (WebCore::Storage::getItem): (WebCore::Storage::setItem): (WebCore::Storage::removeItem):
  • storage/Storage.h: Added.
  • storage/Storage.idl: Added.
  • storage/StorageEvent.cpp: Added.
  • storage/StorageEvent.h: Added. (WebCore::StorageEvent::key): (WebCore::StorageEvent::oldValue): (WebCore::StorageEvent::newValue): (WebCore::StorageEvent::uri): (WebCore::StorageEvent::source): (WebCore::StorageEvent::initStorageEvent):
  • storage/StorageEvent.idl: Added.
  • storage/StorageMap.cpp: Added.
  • storage/StorageMap.h: Added.
11:33 PM Changeset in webkit [31677] by ap@webkit.org
  • 5 edits in trunk/JavaScriptCore

Reviewed by Darin.

Make UString thread-safe.

No change on SunSpider total, although individual tests have changed a lot, up to 3%.

  • kjs/InitializeThreading.cpp: (KJS::initializeThreading): Call UString::null() to initialize a static.


  • kjs/identifier.cpp: (KJS::CStringTranslator::translate): (KJS::UCharBufferTranslator::translate): Use "true" for a boolean value instead of 1, because it's C++.
  • kjs/ustring.h: (KJS::CString::adopt): Added a method to create from a char* buffer without copying. (KJS::UString::Rep::ref): Removed an assertion for JSLock::lockCount, as it's no longer necessary to hold JSLock when working with strings. (KJS::UString::Rep::deref): Ditto. (KJS::UString::Rep::isStatic): Added a field to quickly determine that this is an empty or null static string.
  • kjs/ustring.cpp: (KJS::): Removed normalStatBufferSize and statBufferSize, as there is no reason to have such an advanced implementation of a debug-only ascii() method. Removed a long-obsolete comment about UChar. (KJS::UString::Rep::createCopying): Removed an assertion for JSLock::lockCount. (KJS::UString::Rep::create): Ditto. (KJS::UString::Rep::destroy): Ditto. Do not do anything for static null and empty strings, as refcounting is not reliable for those. Reordered branches for a noticeable speed gain - apparently this functiton is hot enough for SunSpider to see an effect from this! (KJS::UString::null): Moved a star, added a comment. (KJS::UString::cstring): Reimplemented to not call ascii(), which is not thread-safe. (KJS::UString::ascii): Simplified statBuffer handling logic. (KJS::UString::toDouble): Use cstring() instead of ascii().
5:09 PM Changeset in webkit [31676] by alp@webkit.org
  • 2 edits in trunk/WebKit/gtk

2008-04-06 Luca Bruno <lethalman88@gmail.com>

Reviewed by Alp Toker.

Fix webkit_web_view_get_transparent() return value.

  • webkit/webkitwebview.cpp:
5:06 PM Changeset in webkit [31675] by ggaren@apple.com
  • 11 edits in branches/squirrelfish/JavaScriptCore

2008-04-06 Geoffrey Garen <ggaren@apple.com>

Reviewed by Oliver Hunt.


First step toward supporting re-entrant evaluation: Switch register
clients from using "registers", a pointer to a register vector, to
"registerBase", an indirect pointer to the logical first entry in the
register file. (The logical first entry is the first entry that is not
a global variable).


With a vector, offsets into the register file remain good when the
underlying buffer reallocates, but they go bad when the logical
first entry moves. (The logical first entry moves when new global
variables get added to the beginning of the register file.) With an
indirect pointer to the logical first entry, offsets will remain good
regardless.

1.4% speedup on sunspider --squirrelfish. I suspect this is due to
reduced allocation when creating closures, and reduced indirection
through the register vector.

  • wtf/Vector.h: Added an accessor for an indirect pointer to the vector's buffer, which we currently use (incorrectly) for registerBase. This is temporary scaffolding to allow us to change client code without changing behavior.
3:26 PM squirrelfish edited by weinig@apple.com
Remove ReadModifyDotNode (diff)
3:25 PM Changeset in webkit [31674] by weinig@apple.com
  • 3 edits in branches/squirrelfish/JavaScriptCore

2008-04-06 Sam Weinig <sam@webkit.org>

Reviewed by Oliver Hunt.

Implement codegen for ReadModifyDotNode.

  • kjs/nodes.cpp: (KJS::ReadModifyDotNode::emitCode):
  • kjs/nodes.h:
3:19 PM squirrelfish edited by weinig@apple.com
Re-add NewExprNode as it still needs a bit of love (diff)
2:51 PM squirrelfish edited by weinig@apple.com
Remove another LocalVar nodes as we don't need to emit anything for them (diff)
2:50 PM squirrelfish edited by weinig@apple.com
Remove more nods (diff)
2:49 PM Changeset in webkit [31673] by weinig@apple.com
  • 3 edits in branches/squirrelfish/JavaScriptCore

2008-04-06 Sam Weinig <sam@webkit.org>

Reviewed by Oliver Hunt.

Fix codegen for PostIncDotNode and implement codegen for PostIncBracketNode,
PostDecBracketNode and PostDecDotNode.

  • kjs/nodes.cpp: (KJS::PostIncBracketNode::emitCode): (KJS::PostDecBracketNode::emitCode): (KJS::PostIncDotNode::emitCode): (KJS::PostDecDotNode::emitCode):
  • kjs/nodes.h:
12:35 PM squirrelfish edited by weinig@apple.com
Remove more nodes that now have emitCode support (diff)
12:34 PM squirrelfish edited by weinig@apple.com
Remove LocalVar nodes as we don't need to emit anything for them (diff)
12:27 PM Changeset in webkit [31672] by weinig@apple.com
  • 8 edits in branches/squirrelfish/JavaScriptCore

2008-04-06 Sam Weinig <sam@webkit.org>

Reviewed by Geoffrey Garen.

Implement codegen for PreDecResolveNode, PreIncBracketNode, PreDecBracketNode,
PreIncDotNode and PreDecDotNode. This required adding one new op code, op_pre_dec.

  • VM/CodeBlock.cpp: (KJS::CodeBlock::dump):
  • VM/CodeGenerator.cpp: (KJS::CodeGenerator::emitPreDec):
  • VM/CodeGenerator.h:
  • VM/Machine.cpp: (KJS::Machine::privateExecute):
  • VM/Opcode.h:
  • kjs/nodes.cpp: (KJS::PreDecResolveNode::emitCode): (KJS::PreIncBracketNode::emitCode): (KJS::PreDecBracketNode::emitCode): (KJS::PreIncDotNode::emitCode): (KJS::PreDecDotNode::emitCode):
  • kjs/nodes.h:
10:51 AM Changeset in webkit [31671] by ggaren@apple.com
  • 7 edits in branches/squirrelfish/JavaScriptCore

2008-04-06 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


Improved register dumping, plus a liberal smattering of "const". Here's
what the new format looks like:

(gdb) call (void)dumpCallFrame(codeBlock, scopeChain, registers->begin(), r)
4 instructions; 48 bytes at 0x509210; 3 locals (2 parameters); 1 temporaries

[ 0] load lr1, undefined(@k0)
[ 3] load lr1, 2(@k1)
[ 6] add tr0, lr2, lr1
[ 10] ret tr0

Constants:

k0 = undefined
k1 = 2

Register frame:

----------------------------------------

use | address | value

----------------------------------------
[return info] | 0x80ac08 | 0x5081c0
[return info] | 0x80ac0c | 0x508e90
[return info] | 0x80ac10 | 0x504acc
[return info] | 0x80ac14 | 0x2
[return info] | 0x80ac18 | 0x0
[return info] | 0x80ac1c | 0x7
[return info] | 0x80ac20 | 0x0
----------------------------------------
[param] | 0x80ac24 | 0x1
[param] | 0x80ac28 | 0x7
[var] | 0x80ac2c | 0xb
[temp] | 0x80ac30 | 0xf

12:58 AM Changeset in webkit [31670] by ggaren@apple.com
  • 7 edits in branches/squirrelfish/JavaScriptCore

2008-04-06 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.

Support for evaluating multiple scripts in the same global environment.
(Still don't support re-entrant evaluation yet.)

The main changes here are:

(1) Obey the ECMA 10.1.3 rules regarding how to resolve collisions when
a given symbol is declared more than once. (This patch fixes the same
issue for function code, too.)


(2) In the case of var and/or function collisions, reuse the existing
storage slot. For global code, this is required for previously
generated instructions to continue to work. For function code, it's
more of a "nice to have": it makes register layout in the case of
collisions easier to understand, and has the added benefit of saving
memory.


(3) Allocate slots in the CodeGenerator's m_locals vector in parallel
to register indexes in the symbol table. This ensures that, given an
index in the symbol table, we can find the corresponding RegisterID
without hashing, which speeds up codegen.


I moved responsibility for emitting var and function initialization
instructions into the CodeGenerator, because bookkeeping in cases where
var, function, and/or parameter names collide requires a lot of
internal knowledge about the CodeGenerator.

  • VM/CodeGenerator.cpp: (KJS::CodeGenerator::addVar): Removed responsibility for checking whether a var declaration overwrites "arguments", because the check is inappropriate for global code, which may not have a pre-existing "arguments" symbol in scope. Also changed this function to return a boolean indicating whether addVar actually created a new RegisterID, or just reused an old one.


(KJS::CodeGenerator::CodeGenerator): Split out the constructors for
function code and global code, since they're quite different now.


(KJS::CodeGenerator::registerForLocal): This function does its job
without any hashing now.


  • VM/Machine.cpp: Move old globals and update "r" before executing a new script. That way, old globals stay at a constant offset from "r", and previously optimized code still works.


  • VM/RegisterID.h: Added the ability to allocate a RegisterID before initializing its index field. We use this for parameters now.
  • kjs/JSVariableObject.h: (KJS::JSVariableObject::symbolTableGet): Changed the ungettable getter ASSERT to account for the fact that symbol indexes are all negative.

Apr 5, 2008:

11:50 PM squirrelfish edited by weinig@apple.com
Remove InNode (diff)
11:50 PM Changeset in webkit [31669] by weinig@apple.com
  • 1 edit in branches/squirrelfish/JavaScriptCore/ChangeLog

Fix ChangeLog

11:48 PM Changeset in webkit [31668] by weinig@apple.com
  • 8 edits in branches/squirrelfish/JavaScriptCore

2008-04-05 Sam Weinig <sam@webkit.org>

Reviewed by Geoffrey Garen.

Implement codegen for ForInNode.

  • VM/CodeBlock.cpp: (KJS::CodeBlock::dump):
  • VM/CodeGenerator.cpp: (KJS::CodeGenerator::emitIn):
  • VM/CodeGenerator.h:
  • VM/Machine.cpp: (KJS::Machine::privateExecute):
  • VM/Opcode.h:
  • kjs/nodes.cpp: (KJS::InNode::emitCode):
  • kjs/nodes.h:
5:56 PM Changeset in webkit [31667] by kevino@webkit.org
  • 2 edits in trunk/WebKit/wx

Rubber stamped by Mark Rowe.

Don't assume wxWebKit to be part of the wx package. This allows us to run it from any directory on the PYTHONPATH rather than having to copy files into the wxPython directory.

5:38 PM Changeset in webkit [31666] by kevino@webkit.org
  • 3 edits in trunk/WebCore

Reviewed by Mark Rowe.

Add CSS to the MIMETypeRegistry, which ensures CSS files get the right MIMEType when loaded from disk.

4:17 PM squirrelfish edited by weinig@apple.com
DeleteNodes now work (diff)
3:58 PM Changeset in webkit [31665] by weinig@apple.com
  • 8 edits in branches/squirrelfish/JavaScriptCore

2008-04-05 Sam Weinig <sam@webkit.org>

Reviewed by Oliver Hunt.

  • Implement codegen for DeleteResolveNode, DeleteBracketNode, DeleteDotNode and DeleteValueNode.
  • VM/CodeBlock.cpp: (KJS::CodeBlock::dump):
  • VM/CodeGenerator.cpp: (KJS::CodeGenerator::emitGetPropId): (KJS::CodeGenerator::emitPutPropId): (KJS::CodeGenerator::emitDeletePropId): (KJS::CodeGenerator::emitDeletePropVal): (KJS::CodeGenerator::emitPutPropIndex):
  • VM/CodeGenerator.h:
  • VM/Machine.cpp: (KJS::Machine::privateExecute):
  • VM/Opcode.h:
  • kjs/nodes.cpp: (KJS::DeleteResolveNode::emitCode): (KJS::DeleteBracketNode::emitCode): (KJS::DeleteDotNode::emitCode): (KJS::DeleteValueNode::emitCode):
  • kjs/nodes.h:
1:43 PM Changeset in webkit [31664] by rwlbuis@webkit.org
  • 4 edits
    4 adds in trunk

Reviewed by Eric.

http://bugs.webkit.org/show_bug.cgi?id=17129
Incorrect style resolution in CSS styled SVG, with multiple style sheets
Fix the style resolution on the svg by ensuring xml-stylesheet pseudo
attributes title and alternate are transferred to the stylesheet
created from the ProcessingInstruction.

9:05 AM Changeset in webkit [31663] by mitz@apple.com
  • 5 edits
    4 adds in trunk

WebCore:

Reviewed by Darin Adler.

  • fix <rdar://problem/5843719> Excessive repainting of cells in tables with non-auto height

Test: fast/repaint/table-two-pass-layout-overpaint.html

  • rendering/RenderTable.cpp: (WebCore::RenderTable::layout): Changed the first pass over the sections to only call calcRowHeight() and recalcOuterBorder() but not layoutRows(), because the section's final height is unknown yet. Removed caching of m_height before the call to calcHeight(), because for non-positioned tables, calcHeight() only calculates the vertical margins and does not change m_height. Added a second pass over the sections, after the table height is known, to call layoutRows() on each section, with additional height if needed. Did minimal cleanup including caching the value of collapseBorders() in a local variable and changing a while loop into a for loop.
  • rendering/RenderTableSection.cpp: (WebCore::RenderTableSection::calcRowHeight): Changed to return the height of the section based on row height calculations. (WebCore::RenderTableSection::layoutRows): Removed a call to recalcOuterBorder(), which is now done by RenderTable::layout().
  • rendering/RenderTableSection.h: Changed calcRowHeight() to have a return value.

LayoutTests:

Reviewed by Darin Adler.

  • repaint test for <rdar://problem/5843719> Excessive repainting of cells in tables with non-auto height
  • fast/repaint/table-two-pass-layout-overpaint.html: Added.
  • platform/mac/fast/repaint/table-two-pass-layout-overpaint-expected.checksum: Added.
  • platform/mac/fast/repaint/table-two-pass-layout-overpaint-expected.png: Added.
  • platform/mac/fast/repaint/table-two-pass-layout-overpaint-expected.txt: Added.
5:33 AM Changeset in webkit [31662] by Simon Hausmann
  • 3 edits in trunk/WebCore

Simon Hausmann <shausman@trolltech.com>

Fixes: Disable "unimplemented" warnings when building WebKit inside Qt.

5:24 AM Changeset in webkit [31661] by Simon Hausmann
  • 2 edits in trunk/WebKit/qt

Olivier Goffart <ogoffart@trolltech.com>

Fixes: Right clicking an image and choosing "copy image" doesnt put anything in the clipboard.

5:24 AM Changeset in webkit [31660] by Simon Hausmann
  • 2 edits in trunk/WebKit/qt

Olivier Goffart <ogoffart@trolltech.com>

Fixes: Right click, and "Open image" open the link instead of the image.

5:23 AM Changeset in webkit [31659] by Simon Hausmann
  • 2 edits in trunk/WebCore

Simon Hausmann <Simon Hausmann>

Rubber-stamped by Holger

Revert "* Load images incrementally. This will show warnings on the console"
This rolls out -r29739.

This unfortunately caused some crashes and drawing errors. Backing out for now.

5:01 AM QtWebKitContrib edited by Simon Hausmann
(diff)
4:56 AM Changeset in webkit [31658] by Simon Hausmann
  • 2 edits in trunk/WebKit/qt

Benjamin Meyer <bmeyer@trolltech.com>

Added doc stub for QWebSettings so class docs are generated

4:56 AM Changeset in webkit [31657] by Simon Hausmann
  • 4 edits in trunk/WebKit/qt

Holger Hans Peter Freyther <holger.freyther@trolltech.com>

  • Propose the addition of updateRequest and scrollRequest to the QWebPage.
  • The question is if these signals belong to QWebPage or QWebFrame.

-It is more easy to have them in QWebPage because ScrollView is invoking

the ChromeClient with the right coordinates

-On the other hand someone wants to render frames separately. But this is partly

doomed as you can have overlapping frames and what you paint would not relate to
what you normally see on webpages.

Apr 4, 2008:

11:34 PM Changeset in webkit [31656] by sfalken@apple.com
  • 3 edits in trunk/WebKit/win

Only delete the backing store of background windows.

Reviewed by Ada Chan.

  • WebView.cpp: (WebView::WebView): (WebView::deleteBackingStore): (WebView::paint): Added active check. (WebView::deleteBackingStoreSoon): (WebView::cancelDeleteBackingStoreSoon): Added. (WebView::active): Added. (WebView::updateActiveState): Moved active check code from here to active().
  • WebView.h:
10:50 PM Changeset in webkit [31655] by sfalken@apple.com
  • 2 edits in trunk/WebKit/win

Fix tooltip window leak.


Explicitly call DestroyWindow on the tooltip.
Destroying its parent won't destroy the tooltip, since it not a WS_CHILD style window.

Reviewed by Ada Chan.

  • WebView.cpp: (WebView::~WebView):
10:17 PM Changeset in webkit [31654] by kevino@webkit.org
  • 2 edits in trunk/WebCore

Add GradientWx.cpp to the wx build process.

9:54 PM Changeset in webkit [31653] by mitz@apple.com
  • 2 edits in trunk/WebCore

Reviewed by Sam Weinig.

  • speed up CSSFontSelector::getFontData()
  • css/CSSFontSelector.cpp: (WebCore::fontDataForGenericFamily): Factored out of getFontData(). (WebCore::CSSFontSelector::getFontData): Changed to call fontDataForGenericFamily() directly if the map is empty.
9:02 PM Changeset in webkit [31652] by jhoneycutt@apple.com
  • 5 edits in trunk/WebCore

2008-04-04 Jon Honeycutt <jhoneycutt@apple.com>

Reviewed by Oliver.

Replace AccessibilityObject::isRenderImage() with a virtual
RenderObject::isRenderImage().

  • page/AccessibilityObject.cpp: (WebCore::AccessibilityObject::accessibilityIsIgnored): (WebCore::AccessibilityObject::addChildren):
  • page/AccessibilityObject.h: (WebCore::AccessibilityObject::isDetached):
  • rendering/RenderImage.h: (WebCore::RenderImage::isRenderImage):
  • rendering/RenderObject.h: (WebCore::RenderObject::isRenderImage):
7:14 PM Changeset in webkit [31651] by sfalken@apple.com
  • 3 edits in trunk/WebKit/win

Delete backing store after we go 5 seconds without a paint.


Timer will be reset if a paint occurs, so this won't negatively impact performance.


Reviewed by Ada Chan.

  • WebView.cpp: (WebView::paint): Call deleteBackingStoreSoon after paint. (WebViewWndProc): Add DeleteBackingStoreTimer. (WebView::deleteBackingStoreSoon): Added.
  • WebView.h: Add deleteBackingStoreSoon.
5:13 PM Changeset in webkit [31650] by mitz@apple.com
  • 2 edits in trunk/WebCore
  • try to fix the wx build
  • platform/graphics/wx/FontPlatformDataWx.cpp: (WebCore::fontWeightToWxFontWeight): (WebCore::FontPlatformData::FontPlatformData):
5:05 PM Changeset in webkit [31649] by jhoneycutt@apple.com
  • 4 edits in trunk/WebCore

2008-04-04 Jon Honeycutt <jhoneycutt@apple.com>

Reviewed by Beth.

Some more clean-up of AccessibilityObject:

  • Rearranged/grouped methods.
  • Marked many methods const.
  • Changed many methods to take args by const ref instead of by val.
  • Made headingLevel() static.
  • Renamed detached() to isDetached(), loaded() to isLoaded(), documentLinks to getDocumentLinks().
  • Made clearChildren(), removeAXObjectID(), isDetached() private.
  • Added notImplemented() calls for unimplemented methods.
  • Replaced stringForReplacedNode method with static function.
3:32 PM squirrelfish edited by weinig@apple.com
Remove some implemented Nodes from un-implemented opcode list (diff)
2:13 PM Changeset in webkit [31648] by timothy@apple.com
  • 2 edits in trunk/WebCore

Restore the user entered text when clearing the auto-completion.
This is important when the user typed text that is a different
case than the completion. This has no affect on the Console, since
it matches completions case-sensitively. This is used in the up-coming
Database Query view for words like "SELECT" and "INSERT".

Reviewed by Adam Roben.

  • page/inspector/TextPrompt.js:

(WebInspector.TextPrompt.prototype.clearAutoComplete): Restore the user typed
text in the original DOM range that complete() saved away.
(WebInspector.TextPrompt.prototype.complete): Store away the fullWordRange
and it's text content so clearAutoComplete can restore it.

2:11 PM Changeset in webkit [31647] by weinig@apple.com
  • 5 edits in branches/squirrelfish/JavaScriptCore

2008-04-04 Sam Weinig <sam@webkit.org>

Reviewed by Oliver Hunt.

  • Implement codegen for Switch statements.
  • VM/CodeGenerator.cpp: (KJS::CodeGenerator::pushJumpContext): (KJS::CodeGenerator::popJumpContext): (KJS::CodeGenerator::jumpContextForLabel):
  • VM/CodeGenerator.h: Rename LoopContext to JumpContext now that it used of Switch statements in addition to loops.
  • kjs/nodes.cpp: (KJS::DoWhileNode::emitCode): (KJS::WhileNode::emitCode): (KJS::ForNode::emitCode): (KJS::ForInNode::emitCode): (KJS::ContinueNode::emitCode): (KJS::BreakNode::emitCode): (KJS::CaseBlockNode::emitCodeForBlock): (KJS::SwitchNode::emitCode):
  • kjs/nodes.h: (KJS::CaseClauseNode::expr): (KJS::CaseClauseNode::children): (KJS::CaseBlockNode::):
1:58 PM Changeset in webkit [31646] by timothy@apple.com
  • 2 edits in trunk/WebCore

Don't trim whitespace when looking for the current match, this prevents tabbing through matches in the up-coming Database Query view.

Reviewed by Adam Roben.

  • page/inspector/TextPrompt.js: Removed a trimTrailingWhitespace() call.
1:50 PM Changeset in webkit [31645] by timothy@apple.com
  • 5 edits
    1 add in trunk/WebCore

Factor out the Console text completion and command history into
a new TextPrompt object. This TextPrompt object will be used later
other parts of the Inspector that need text completion and history.
Not functionality changed, just moved code around.

Reviewed by Adam Roben.

  • WebCore.vcproj/WebCore.vcproj: Add TextPrompt.js.
  • page/inspector/Console.js: Call the new prompt object and delete all the code that moved.
  • page/inspector/TextPrompt.js: Added. Moved code from Console.js.
  • page/inspector/WebKit.qrc: Add TextPrompt.js.
  • page/inspector/inspector.html: Add TextPrompt.js.
1:29 PM Changeset in webkit [31644] by timothy@apple.com
  • 2 edits in trunk/WebCore

Makes setting shouldRefreshChildren on a TreeElement perform the refresh
immediately if the element is already expanded.

Reviewed by Adam Roben.

  • page/inspector/treeoutline.js:

(TreeElement.prototype.get shouldRefreshChildren): Return this._shouldRefreshChildren.
(TreeElement.prototype.set shouldRefreshChildren): If changing to true, and
already expanded,
call expand again to trigger the refresh. Sets this._shouldRefreshChildren.
(TreeElement.prototype._attach): Check for this._shouldRefreshChildren.
(TreeElement.prototype.expand): Ditto.

1:21 PM ApplicationsGtk edited by alp@atoker.com
Epiphany is now WebKit-only (diff)
1:17 PM Changeset in webkit [31643] by jhoneycutt@apple.com
  • 3 edits in trunk/WebCore

2008-04-04 Jon Honeycutt <jhoneycutt@apple.com>

Reviewed by Beth.

Some clean up of AccessibilityObject:

  • Use existing isImage() in more places.
  • Use existing isTextControl() in more places.
  • Added isRenderImage(). Check this before casting to RenderImage, since other, non-RenderImage derived RenderObjects (e.g. RenderListMarker) can return true for isImage().
  • Fix two copy/paste errors with improper semicolons.
  • page/AccessibilityObject.cpp: (WebCore::AccessibilityObject::isImageButton): Use isImage(). (WebCore::AccessibilityObject::isRenderImage): Added. (WebCore::AccessibilityObject::isAnchor): Use isImage(). (WebCore::AccessibilityObject::isAttachment): Same. (WebCore::AccessibilityObject::accessibilityDescription): Same. (WebCore::AccessibilityObject::accessibilityIsIgnored): Use isRenderImage() instead of isImage(). (WebCore::AccessibilityObject::url): Use isImage(). (WebCore::AccessibilityObject::textControl): Remove improper semicolon, and use isTextControl(). (WebCore::AccessibilityObject::textMarkerForIndex): Same. (WebCore::AccessibilityObject::indexForTextMarker): Use isTextControl(). (WebCore::AccessibilityObject::doAXRangeForLine): Same. (WebCore::AccessibilityObject::doAXRangeForIndex): Same (WebCore::AccessibilityObject::doAXStringForRange): Same. (WebCore::AccessibilityObject::roleValue): Use isImage(). (WebCore::AccessibilityObject::addChildren): Use isRenderImage().
  • page/AccessibilityObject.h:
1:13 PM Changeset in webkit [31642] by timothy@apple.com
  • 2 edits in trunk/WebCore

Fixes a null exception when hovering in some areas of the DOM tree.

Reviewed by Adam Roben.

  • page/inspector/treeoutline.js:

(TreeOutline.prototype.treeElementFromPoint): Check listNode for null/undefined
before accessing any properties. Return null if listNode is null.

1:05 PM Changeset in webkit [31641] by timothy@apple.com
  • 2 edits in trunk/WebCore

Changing WebInspector.currentFocusElement to/from an input element
does not change the actual focus of that input element. You see this
in the search field.

Reviewed by Adam Roben.

  • page/inspector/inspector.js:

(WebInspector.set currentFocusElement): Call blur and focus if the
node implements them.

12:18 PM Changeset in webkit [31640] by hyatt@apple.com
  • 2 edits in trunk/WebCore

2008-04-04 David Hyatt <hyatt@apple.com>

Improve the background size heuristic for SVGs used as background images with no intrinsic size specified.
Treat them as having a background-size of 100%. This means their maximal size will be the box established
by background-origin.

Reviewed by Beth

  • rendering/RenderBox.cpp: (WebCore::RenderBox::calculateBackgroundSize):
12:16 PM Changeset in webkit [31639] by timothy@apple.com
  • 5 edits in trunk/WebCore

Correctly show DOCTYPE in the breadcrumbs and match the CSS rules
from view-source.css for the DOCTYPE in the DOM tree.

Reviewed by Adam Roben.

  • css/view-source.css: Add and correct comments about keeping

in-sync with inspector.css.

  • page/inspector/ElementsPanel.js:

(WebInspector.DocumentPanel.prototype.updateBreadcrumb):
Add a case for Node.DOCUMENT_TYPE_NODE.

  • page/inspector/inspector.css: Add a rule for .webkit-html-doctype.
  • page/inspector/utilities.js:

(nodeTitleInfo): Use the webkit-html-doctype class for nodes
with Node.DOCUMENT_TYPE_NODE.

12:02 PM Changeset in webkit [31638] by mitz@apple.com
  • 1 edit
    1 copy in trunk/WebCore
  • try to fix the Tiger build
  • icu/unicode/uscript.h: Copied from WebKit/mac/icu/unicode/uscript.h.
11:17 AM Changeset in webkit [31637] by Adam Roben
  • 4 edits in trunk

Make WebKit use WebCore's copy of the ICU headers

WebCore:

Copy icu/ to PrivateHeaders for WebKit's benefit

Rubberstamped by Tim Hatcher.

  • WebCore.xcodeproj/project.pbxproj: Renamed the Copy Forwarding Headers build phase to Copy Forwarding and ICU Headers, and added the icu/ directory to it.

WebKit/mac:

Use WebCore's ICU headers instead of our own copy

Rubberstamped by Tim Hatcher.

  • Configurations/WebKit.xcconfig: Pick up ICU headers from WebCore's PrivateHeaders.
10:47 AM Changeset in webkit [31636] by Adam Roben
  • 4 edits in trunk

Fix <rdar://problem/5804776> Would like to use WebCore's ForwardingHeaders in WebKit without manually creating copies

WebCore:

Fix <rdar://problem/5804776> Would like to use WebCore's
ForwardingHeaders in WebKit without manually creating copies

Patch by Tim Hatcher, typed by me.

  • WebCore.xcodeproj/project.pbxproj: Added a new build phase, Copy Forwarding Headers, that copies the ForwardingHeaders directory to WebCore's PrivateHeaders directory.

WebKit/mac:

Fix <rdar://problem/5804776> Would like to use WebCore's
ForwardingHeaders in WebKit without manually creating copies

Patch by Tim Hatcher, typed by me.

  • Configurations/WebKit.xcconfig: Use the copy of ForwardingHeaders in WebCore's PrivateHeaders instead of our own copy.
10:21 AM Changeset in webkit [31635] by adachan@apple.com
  • 7 edits in trunk

WebCore:

Changed the signature of imageTitleForFilename so we can pass in the width
and height as integers.

Reviewed by Dan.

  • page/mac/WebCoreViewFactory.h:
  • platform/mac/LocalizedStringsMac.mm: (WebCore::imageTitle):

WebKit:

Updated the format string for window title for a standalone image to take integers.

Reviewed by Dan.

  • English.lproj/Localizable.strings:

WebKit/mac:

Now we pass width and height directly as integers to format
the window title for a standalone image.

Reviewed by Dan.

  • WebCoreSupport/WebViewFactory.mm: (-[WebViewFactory imageTitleForFilename:width:height:]):
8:57 AM Changeset in webkit [31634] by adachan@apple.com
  • 3 edits in trunk/WebKit/win

<rdar://problem/5830598> Image file opened in the browser window shows "Localized String Not Found' in window's title bar instead file name
Save WebCoreLocalizedStrings.cpp with UTF8 encoding.
Changed the format string to take in integers.

Reviewed by Dan.

  • English.lproj/Localizable.strings: Updated.
  • WebCoreLocalizedStrings.cpp: (WebCore::imageTitle):
12:54 AM squirrelfish edited by ggaren@apple.com
(diff)
12:52 AM QtWebKitContrib edited by Simon Hausmann
(diff)
12:42 AM squirrelfish edited by ggaren@apple.com
(diff)

Apr 3, 2008:

11:38 PM Changeset in webkit [31633] by mjs@apple.com
  • 2 edits in branches/squirrelfish/JavaScriptCore

2008-04-03 Maciej Stachowiak <mjs@apple.com>

Reviewed by Sam.


  • fix crash in codegen from new nodes
  • VM/CodeGenerator.cpp: (KJS::CodeGenerator::emitConstruct):
  • kjs/nodes.h:
11:38 PM Changeset in webkit [31632] by mjs@apple.com
  • 1 edit in branches/squirrelfish/JavaScriptCore/kjs/nodes.h

File I forgot in my last commit.

11:34 PM Changeset in webkit [31631] by mjs@apple.com
  • 2 edits in branches/squirrelfish/JavaScriptCore

2008-04-03 Maciej Stachowiak <mjs@apple.com>

Reviewed by Geoff.

  • kjs/nodes.cpp: (KJS::ReadModifyResolveNode::emitCode): (KJS::ReadModifyBracketNode::emitCode):
  • kjs/nodes.h:
10:28 PM Changeset in webkit [31630] by mitz@apple.com
  • 1 edit in trunk/WebCore/platform/graphics/win/FontCacheWin.cpp

Forgot to save after the last change...

10:20 PM Changeset in webkit [31629] by mitz@apple.com
  • 2 edits in trunk/WebCore
  • Windows build fix
  • platform/graphics/win/FontCacheWin.cpp: (WebCore::matchImprovingEnumProc):
10:08 PM Changeset in webkit [31628] by kevino@webkit.org
  • 2 edits in trunk/WebCore

Fix PlatformGradient so that it's a pointer on all platforms.

9:47 PM Changeset in webkit [31627] by mitz@apple.com
  • 2 edits in trunk/WebCore
  • 64-bit build fix
  • platform/mac/WebFontCache.mm: (+[WebFontCache internalFontWithFamily:traits:weight:size:]):
9:34 PM Changeset in webkit [31626] by kevino@webkit.org
  • 1 edit
    1 add in trunk/WebCore

wx build fix. Add stubs for gradient class platform functions.

9:32 PM Changeset in webkit [31625] by kevino@webkit.org
  • 2 edits in trunk/WebCore

Reviewed by Dan Bernstein.

Refactor Gradient.h to have the same API on platforms without a gradient class.

9:13 PM Changeset in webkit [31624] by mitz@apple.com
  • 2 edits in trunk/WebCore
  • Qt build fix
  • platform/graphics/qt/FontQt.cpp: (WebCore::Font::Font):
9:07 PM Changeset in webkit [31623] by mitz@apple.com
  • 3 edits in trunk/WebCore
  • Tiger build fix
  • platform/mac/WebFontCache.mm:
  • rendering/RenderThemeMac.mm:
9:04 PM Changeset in webkit [31622] by mitz@apple.com
  • 4 edits in trunk/WebCore
  • Gtk build fix
  • platform/graphics/gtk/FontPlatformData.h: (WebCore::FontPlatformData::size):
  • platform/graphics/gtk/FontPlatformDataGtk.cpp: (WebCore::FontPlatformData::FontPlatformData):
  • platform/graphics/gtk/FontPlatformDataPango.cpp: (WebCore::FontPlatformData::FontPlatformData):
8:51 PM Changeset in webkit [31621] by mitz@apple.com
  • 4 edits in trunk/WebCore
  • project file updates in preparation for build fixes
  • GNUmakefile.am:
  • WebCore.pro:
  • WebCoreSources.bkl:
8:46 PM Changeset in webkit [31620] by mitz@apple.com
  • 29 edits
    1 add in trunk

WebCore:

2008-04-03 Nicholas Shanks <webkit@nickshanks.com>

Updated by Dan Bernstein. Reviewed by Dave Hyatt.

Tests to come: <http://bugs.webkit.org/show_bug.cgi?id=18306>

Build fixes for platforms other than Mac and Windows to come.

  • WebCore.vcproj/WebCore.vcproj: Added FontDescription.cpp.
  • WebCore.xcodeproj/project.pbxproj: Ditto.
  • css/CSSComputedStyleDeclaration.cpp: (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Changed to return additional weight value keywords 100, 200, 300, 500, 600, 800 and 900.
  • css/CSSFontSelector.cpp: (WebCore::hashForFont): Changed the bold parameter into a weight parameter and added the weight to the string to be hashed. (WebCore::CSSFontSelector::addFontFaceRule): Changed to apply all CSS weight values to the font description. (WebCore::CSSFontSelector::getFontData): Updated the fallback logic to go through all weights equal or lighter from the desired weight. For SVG, to also consider heavier weights.
  • css/CSSParser.cpp: (WebCore::CSSParser::parseValue): Cleaned up parsing of the font-weight property.
  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::applyProperty): Changed to apply all CSS weight values to the font description.
  • platform/graphics/Font.h: (WebCore::Font::weight): Updated for the change to FontDescription::weight().
  • platform/graphics/FontCache.cpp: (WebCore::FontPlatformDataCacheKey::FontPlatformDataCacheKey): Replaced the bold component of the key with a weight component. (WebCore::FontPlatformDataCacheKey::operator==): Updated for the above. (WebCore::computeHash): Ditto. (WebCore::FontPlatformDataCacheKeyTraits::deletedValue): Removed unnecessary parameters. (WebCore::FontPlatformDataCacheKeyTraits::emptyValue): Ditto. (WebCore::FontCache::getCachedFontPlatformData): Updated for the change in FontPlatformDataCacheKey.
  • platform/graphics/FontDescription.cpp: Added. (WebCore::FontDescription::lighterWeight): Added. Returns a lighter CSS font-weight value if there is one, or the lightest value. (WebCore::FontDescription::bolderWeight): Added. Returns a heavier CSS font-weight value if there is one, or the heaviest value.
  • platform/graphics/FontDescription.h: (WebCore::FontWeight): Added this enumeration. (WebCore::FontDescription::FontDescription): (WebCore::FontDescription::bold): Removed. (WebCore::FontDescription::weight): Changed to return a FontWeight. (WebCore::FontDescription::setBold): Removed. (WebCore::FontDescription::setWeight): Changed to take a FontWeight.
  • platform/graphics/mac/FontCacheMac.mm: (WebCore::toAppKitFontWeight): Added. Maps a FontWeight to the AppKit font weight scale of 0-15. (WebCore::isAppKitFontWeightBold): Added. (WebCore::FontCache::getFontDataForCharacters): Changed to use a weight instead of the bold trait for custom fonts, and to decide whether to synthesize bold based on the weights rather than the bold trait. (WebCore::FontCache::fontExists): Updated for the change in WebFontCache . (WebCore::FontCache::createFontPlatformData): Ditto. Also changed to decide whether to synthesize bold based on the weights rather than on the bold trait.
  • platform/graphics/win/FontCacheWin.cpp: (WebCore::toGDIFontWeight): Added. Maps a FontWeight to a GDI font weight constant. (WebCore::isGDIFontWeightBold): Added. (WebCore::adjustedGDIFontWeight): Added. (WebCore::MatchImprovingProcData::MatchImprovingProcData): Added this data structure for use by the following callback. (WebCore::matchImprovingEnumProc): Added. The logic of this method is a simplification of the betterChoice() predicate in WebFontCache.mm, which considers only the italic trait and the weight. (WebCore::createGDIFont): Added. Similarly to +[WebFontCache fontWithFamily:traits:weight:size:], this function finds the closest match in the family for the desired italic bit and weight. (WebCore::FontCache::fontExists): Changed to call createGDIFont(). (WebCore::FontCache::createFontPlatformData): Ditto. Also changed to compute the synthetic bold and synthetic italic flags based on weights and italic bits and pass them to the FontPlatformData constructor.
  • platform/graphics/win/FontPlatformDataWin.cpp: (WebCore::FontPlatformData::FontPlatformData): Changed the bold and oblique parameters to mean whether these should be synthesized and removed the font enumeration code that used to decide that.
  • platform/graphics/win/SimpleFontDataWin.cpp: (WebCore::SimpleFontData::smallCapsFontData): Changed to pass the synthetic bold and oblique flags from the full-size FontPlatformData to the FontPlatformData constructor for the small caps font.
  • platform/mac/WebCoreTextRenderer.h:
  • platform/mac/WebCoreTextRenderer.mm: (WebCoreFindFont): Added a weight parameter, which is passed to +[WebFontCache fontWithFamily:traits:weight:size:].
  • platform/mac/WebFontCache.h:
  • platform/mac/WebFontCache.mm: (acceptableChoice): (betterChoice): Changed to ignore the bold trait. Changed the logic for deciding based on weights to prefer the font whose weight is closer to the desired one, or, if both candidates' weights are the same distance from the desired weight, the one that is more "off-center". (+[WebFontCache internalFontWithFamily:traits:weight:size:]): Changed to check for weight when matching by full name. Changed to pass the actual desired weight instead of the constant 5 to acceptableChoice() and betterChoice(). Changed to use weights to decide whether to synthesize bold. (+[WebFontCache fontWithFamily:traits:weight:size:]): Added a weight parameter, which is passed to the internal method.
  • platform/win/PopupMenuWin.cpp: (WebCore::PopupMenu::paint): Updated for the change to FontDescription.
  • rendering/RenderListBox.cpp: (WebCore::RenderListBox::updateFromElement): Ditto. (WebCore::RenderListBox::paintItemForeground): Ditto.
  • rendering/RenderThemeMac.mm: (WebCore::toFontWeight): Added. Maps the AppKit font weight range of 0-15 to the FontWeight range. (WebCore::RenderThemeMac::systemFont): Updated for the change to FontDescription.
  • rendering/RenderThemeSafari.cpp: (WebCore::RenderThemeSafari::systemFont): Ditto.

WebKit/mac:

2008-04-03 Nicholas Shanks <webkit@nickshanks.com>

Updated by Dan Bernstein. Reviewed by Dave Hyatt.

  • WebView/WebHTMLView.mm: (-[WebHTMLView _styleFromFontAttributes:]): (-[WebHTMLView _originalFontB]): (-[WebHTMLView _addToStyle:fontA:fontB:]):

WebKit/win:

2008-04-03 Dan Bernstein <mitz@apple.com>

Reviewed by Dave Hyatt.

  • DOMCoreClasses.cpp: (DOMElement::font): Updated for the change to FontDescription.
  • WebCoreSupport/WebDragClient.cpp: (dragLabelFont): Ditto.
  • WebKitGraphics.cpp: (makeFont): Ditto.
  • WebKitGraphics.h: Added a FIXME.
8:10 PM Changeset in webkit [31619] by mitz@apple.com
  • 2 edits in trunk/WebCore
  • another Gtk build fix attempt
  • platform/graphics/cairo/GradientCairo.cpp: (WebCore::Gradient::platformDestroy):
7:25 PM Changeset in webkit [31618] by mrowe@apple.com
  • 4 edits in tags/Safari-5525.18.1

Versioning.

7:18 PM Changeset in webkit [31617] by mrowe@apple.com
  • 1 copy in tags/Safari-5525.18.1

New tag.

7:17 PM Changeset in webkit [31616] by mrowe@apple.com
  • 2 edits in branches/Safari-3-1-branch/WebCore

2008-04-03 Anders Carlsson <andersca@apple.com>

Reviewed by Sam.

<rdar://problem/5832603> REGRESSION: Adding an image to the header image well causes Journal page to incorrectly draw

  • dom/Document.cpp: (WebCore::Document::childrenChanged): Make sure to chain up to ContainerNode::childrenChanged.
7:05 PM Changeset in webkit [31615] by mitz@apple.com
  • 2 edits in trunk/WebCore
  • attempted Gtk build fix
  • GNUmakefile.am:
6:02 PM Changeset in webkit [31614] by mitz@apple.com
  • 2 edits in trunk/WebCore
  • attempted Qt build fix
  • platform/graphics/qt/GradientQt.cpp: (WebCore::Gradient::platformDestroy):
5:43 PM Changeset in webkit [31613] by mitz@apple.com
  • 2 edits in trunk/WebCore
  • attempted Gtk build fix
  • html/CanvasRenderingContext2D.cpp: (WebCore::CanvasRenderingContext2D::stroke):
5:40 PM Changeset in webkit [31612] by mitz@apple.com
  • 2 edits in trunk/WebCore
  • attempted Qt build fix
  • html/CanvasRenderingContext2D.cpp: (WebCore::CanvasRenderingContext2D::stroke):
4:13 PM Changeset in webkit [31611] by sfalken@apple.com
  • 3 edits in trunk/WebKit/win

<rdar://problem/5835382> Calling window.open immediately after window.close can sometimes result in no window being created


Group name tracking needs to happen using code in WebCore::Page, since it is more involved than
just setting a string.


Reviewed by Adam Roben.

  • WebView.cpp: (WebView::close): Add null check (found via code inspection). (WebView::initWithFrame): Store the group name directly in Page. (WebView::setGroupName): Store the group name directly in Page. (WebView::groupName): Retrieve the group name directly from Page.
  • WebView.h: Removed m_groupName
4:08 PM Changeset in webkit [31610] by Beth Dakin
  • 2 edits in trunk/WebCore

2008-04-03 Beth Dakin <Beth Dakin>

Reviewed by Alice.

Build fix for non-Macs.

  • page/AXObjectCache.h: (WebCore::AXObjectCache::isIDinUse):
3:48 PM Changeset in webkit [31609] by pewtermoose@webkit.org
  • 2 edits in trunk/WebCore

2008-04-03 Brent Fulgham <bfulgham@gmail.com>

Reviewed by Darin.

Correct build error due to incomplete merging of changes to project
files from Issue 17985. This small project file patch corrects
the build issue (see http://bugs.webkit.org/show_bug.cgi?id=18195).

  • WebCore.vcproj/WebCore.vcproj:
3:02 PM Changeset in webkit [31608] by Beth Dakin
  • 12 edits
    1 delete in trunk/WebCore

2008-04-02 Beth Dakin <Beth Dakin>

Reviewed by Hyatt.

This patch eliminates AccessibilityObjectMac. All of the platform-
specific code is now in AccessibilityObjectWrapper.

  • WebCore.xcodeproj/project.pbxproj:
  • dom/Element.h: (WebCore::Element::isPasswordField):
  • html/HTMLInputElement.h: (WebCore::HTMLInputElement::isPasswordField):
  • page/AXObjectCache.h: (WebCore::AXObjectCache::isIDinUse):
  • page/AccessibilityObject.cpp: (WebCore::AccessibilityObject::isPasswordField): (WebCore::AccessibilityObject::press): (WebCore::AccessibilityObject::widgetForAttachmentView): (WebCore::AccessibilityObject::doAXBoundsForTextMarkerRange): (WebCore::AccessibilityObject::doAXTextMarkerForPosition):
  • page/AccessibilityObject.h: (WebCore::AccessibilityObject::areaElement): (WebCore::AccessibilityObject::setWrapper):
  • page/mac/AXObjectCacheMac.mm:
  • page/mac/AccessibilityObjectMac.mm: Removed.
  • page/mac/AccessibilityObjectWrapper.h:
  • page/mac/AccessibilityObjectWrapper.mm: (-[AccessibilityObjectWrapper attachmentView]): (textMarkerForVisiblePosition): (visiblePositionForTextMarker): (visiblePositionForStartOfTextMarkerRange): (visiblePositionForEndOfTextMarkerRange): (textMarkerRangeFromMarkers): (AXAttributeStringSetFont): (CreateCGColorIfDifferent): (AXAttributeStringSetColor): (AXAttributeStringSetNumber): (AXAttributeStringSetStyle): (blockquoteLevel): (AXAttributeStringSetBlockquoteLevel): (AXAttributeStringSetSpelling): (AXAttributeStringSetHeadingLevel): (AXLinkElementForNode): (AXAttributeStringSetElement): (AXAttributedStringAppendText): (nsStringForReplacedNode): (-[AccessibilityObjectWrapper doAXAttributedStringForTextMarkerRange:]): (textMarkerRangeFromVisiblePositions): (-[AccessibilityObjectWrapper accessibilityActionNames]): (-[AccessibilityObjectWrapper accessibilityAttributeNames]): (-[AccessibilityObjectWrapper visiblePositionRangeForTextMarkerRange:]): (-[AccessibilityObjectWrapper textMarkerRangeForSelection]): (-[AccessibilityObjectWrapper position]): (createAccessibilityRoleMap): (RoleEntry::): (roleValueToNSString): (-[AccessibilityObjectWrapper role]): (-[AccessibilityObjectWrapper subrole]): (-[AccessibilityObjectWrapper roleDescription]): (-[AccessibilityObjectWrapper accessibilityAttributeValue:]): (-[AccessibilityObjectWrapper accessibilityIsIgnored]): (-[AccessibilityObjectWrapper accessibilityPerformAction:]): (-[AccessibilityObjectWrapper doAXAttributedStringForRange:]): (-[AccessibilityObjectWrapper doAXRTFForRange:]): (-[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]): (-[AccessibilityObjectWrapper accessibilityShouldUseUniqueId]):
  • platform/ScrollView.h:
  • platform/mac/ScrollViewMac.mm: (WebCore::ScrollView::viewRectToScreen): (WebCore::ScrollView::absolutePointToView):
2:57 PM Changeset in webkit [31607] by hyatt@apple.com
  • 10 edits
    5 adds in trunk/WebCore

2008-04-03 David Hyatt <hyatt@apple.com>

Create a new cross-platform Gradient abstraction and make CanvasGradient wrap it. This first
step just cleans up CanvasGradient. The code that calls it remains ifdef'd however.

Reviewed by olliej

  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • WebCoreSources.bkl:
  • bindings/js/JSCanvasRenderingContext2DCustom.cpp: (WebCore::toJS):
  • html/CanvasGradient.cpp: (WebCore::CanvasGradient::CanvasGradient):
  • html/CanvasGradient.h: (WebCore::CanvasGradient::gradient): (WebCore::CanvasGradient::addColorStop): (WebCore::CanvasGradient::getColor):
  • html/CanvasRenderingContext2D.cpp: (WebCore::CanvasRenderingContext2D::fill): (WebCore::CanvasRenderingContext2D::stroke): (WebCore::CanvasRenderingContext2D::fillRect):
  • html/CanvasStyle.h: (WebCore::CanvasStyle::canvasGradient):
  • platform/graphics/Gradient.cpp: Added. (WebCore::Gradient::Gradient): (WebCore::Gradient::~Gradient): (WebCore::Gradient::addColorStop): (WebCore::compareStops): (WebCore::Gradient::getColor): (WebCore::Gradient::findStop):
  • platform/graphics/Gradient.h: Added. (WebCore::Gradient::ColorStop::ColorStop): (WebCore::Gradient::platformInit):
  • platform/graphics/cairo/GradientCairo.cpp: Added. (WebCore::Gradient::platformDestroy): (WebCore::Gradient::platformGradient):
  • platform/graphics/cg/GradientCG.cpp: Added. (WebCore::Gradient::platformDestroy): (WebCore::gradientCallback): (WebCore::Gradient::platformGradient):
  • platform/graphics/qt/GradientQt.cpp: Added. (WebCore::Gradient::platformDestroy): (WebCore::Gradient::platformGradient):
2:47 PM Changeset in webkit [31606] by Simon Hausmann
  • 11 edits in trunk

Roll out r31599 and r31605 again after discussion with Mark Rowe.

2:25 PM Changeset in webkit [31605] by Simon Hausmann
  • 2 edits in trunk/WebKit/win

Attempted build fix

2:14 PM Changeset in webkit [31604] by hyatt@apple.com
  • 2 edits in trunk/WebCore

2008-04-03 David Hyatt <hyatt@apple.com>

Fix for bug 18194, resizable text fields get messed up when resizing in the presence of zoom.

Reviewed by adele

  • rendering/RenderLayer.cpp: (WebCore::RenderLayer::resize):
1:49 PM Changeset in webkit [31603] by mrowe@apple.com
  • 4 edits in branches/Safari-3-1-branch

Versioning.

1:48 PM Changeset in webkit [31602] by mrowe@apple.com
  • 1 copy in tags/Safari-5525.18

New tag.

1:47 PM Changeset in webkit [31601] by mrowe@apple.com
  • 2 edits in branches/Safari-3-1-branch/WebCore

Merge r31320.

1:30 PM Changeset in webkit [31600] by oliver@apple.com
  • 227 edits
    13 deletes in trunk

Rollout r31566 as there were a few issues i missed during review (thanks to antti for pointing them out)

1:17 PM Changeset in webkit [31599] by Simon Hausmann
  • 9 edits in trunk

2008-04-03 Holger Hans Peter Freyther <holger.freyther@trolltech.com>

Reviewed by Simon.

  • Change IconDatabase::iconForPageURL to return more information. E.g. if an image has been found, or if the loading of an image has been scheduled.
  • Update FrameLoader to use another method to trigger reading from disk
  • Update the QWebFrame and QWebSettings
12:22 PM Changeset in webkit [31598] by Simon Hausmann
  • 3 edits in trunk/WebKit/qt

Holger Hans Peter Freyther <holger.freyther@trolltech.com>

  • Safari is using the IconDatabase the following way (assumption). Before they call iconDatabase()->open they "retain" all URLs they are interested in, these could come from the history.
  • When opening the iconDatabase() a thread will be started that is going to import the URLs, all none manually retained URLs are scheduled for removal. The removal is going to happen when the next icon gets stored in the database.
  • We do not have any IconDatabase code, we can not retain the URLs before opening the database. To disable the automatic pruning of the icons we will ask the IconDatabase to delay this operation. This means our IconDatabase, when used, will grow, so we should try to have a IconDatabase class in 4.4.
  • The only way to counter the growth is a call to QWebSettings::clearIconDatabase
12:01 PM Changeset in webkit [31597] by Simon Hausmann
  • 1 edit in trunk/WebKit/qt/Api/qwebsettings.cpp

Oops, fixed previous commit/merge error that caused build failure in Qt.

12:00 PM Changeset in webkit [31596] by adachan@apple.com
  • 8 edits in trunk/WebKit/win

Allow WebArchive to be created via COM.
Replaced IID_DOMNode with uuidof(DOMNode).

Reviewed by Adam and Steve.

  • DOMCoreClasses.cpp: (DOMNode::QueryInterface): (DOMNode::isSameNode):
  • DOMCoreClasses.h:
  • ForEachCoClass.h:
  • Interfaces/WebKit.idl:
  • WebArchive.cpp: (WebArchive::createInstance):
  • WebArchive.h:
  • WebKitClassFactory.cpp:
11:59 AM Changeset in webkit [31595] by Simon Hausmann
  • 3 edits in trunk/WebKit/qt

Benjamin Meyer <bmeyer@trolltech.com>

Add a way to get the site icon for a url
static QPixmap iconForUrl(const QUrl &url);

11:46 AM Changeset in webkit [31594] by Simon Hausmann
  • 3 edits in trunk/WebKit/qt

Holger Hans Peter Freyther <holger.freyther@trolltech.com>

  • Update the Copyright info in QWebSettings
11:46 AM Changeset in webkit [31593] by Simon Hausmann
  • 2 edits in trunk/WebKit/qt

Holger Hans Peter Freyther <holger.freyther@trolltech.com>

  • The isEmpty check is not needed anymore with the earlier backport
10:49 AM squirrelfish edited by ggaren@apple.com
(diff)
9:50 AM Changeset in webkit [31592] by beidson@apple.com
  • 2 edits in trunk/LayoutTests

2008-04-03 Brady Eidson <beidson@apple.com>

Fix a tab into 4-spaces instead

  • webarchive/test-css-import-expected.txt:
9:20 AM Changeset in webkit [31591] by mitz@apple.com
  • 2 edits in trunk/WebCore
  • Mac build fix
  • WebCore.base.exp:
6:21 AM Changeset in webkit [31590] by Simon Hausmann
  • 2 edits in trunk/WebCore

Fix the build when building without icondatabase.

5:27 AM Changeset in webkit [31589] by Simon Hausmann
  • 3 edits in trunk/WebCore

Holger Hans Peter Freyther <holger.freyther@trolltech.com>

  • Remove the unused 'cache' parameter
5:04 AM Changeset in webkit [31588] by Simon Hausmann
  • 2 edits in trunk/WebCore

2008-04-03 Holger Hans Peter Freyther <holger.freyther@trolltech.com>

Reviewed by Simon.

  • Add WebCore/loader/icon to the DEPENDPATH as well
4:40 AM Changeset in webkit [31587] by Simon Hausmann
  • 1 edit
    1 add in trunk/LayoutTests

Holger Hans Peter Freyther <holger.freyther@trolltech.com>

  • Add a Qt specific result for bad-scheme-subframe-expected.txt
  • To match the mac-port we would have to return IgnoreNavigationRequest for schemes/URLs not supported by the QNetworkAccessManager in QWebPage::navigationRequested but we can't do that because QNetworkAccessManager does not expose a list of supported schemes and operations. So in contrast to the mac we will try to load the frame and fail.
4:40 AM Changeset in webkit [31586] by Simon Hausmann
  • 1 edit
    4 adds in trunk/LayoutTests

Holger Hans Peter Freyther <holger.freyther@trolltech.com>

  • Fix http/tests/loading/simple-subframe.html by adding a test result. The result is quite similar to the one of the mac port.
3:31 AM Changeset in webkit [31585] by Simon Hausmann
  • 2 edits in trunk/WebKitTools

2008-04-03 Holger Hans Peter Freyther <holger.freyther@trolltech.com>

Reviewed by Simon.

  • Enable running http tests for Qt again. Failing tests can be put into the skipped list.
  • Running these tests on windows and other platforms might need some work.
3:31 AM Changeset in webkit [31584] by Simon Hausmann
  • 4 edits in trunk

Holger Hans Peter Freyther <holger.freyther@trolltech.com>

  • For the http tests we need the output of the FrameLoaderClient. The QtWebKit API is not exporting enough to create the output in DRT itself. Settle with the approach Lars has taken for the Editing support and add branches to our FrameLoaderClient code.
  • run-webkit-tests http/tests(/loading) can now be executed.
  • For tests in loading/ directories we are going to throw away the dirty QWebPage to start with something clean.
3:30 AM Changeset in webkit [31583] by Simon Hausmann
  • 3 edits in trunk/WebKitTools

Holger Hans Peter Freyther <holger.freyther@trolltech.com>

  • Treat http and https as special URLs as well. Change the main.cpp and DumpRenderTree.cpp to handle http and https URIs as input.
  • I'm not doing the clean up and merging of these two checks now.
3:30 AM Changeset in webkit [31582] by Simon Hausmann
  • 4 edits in trunk

Holger Hans Peter Freyther <holger.freyther@trolltech.com>

  • Remove dumpFrameLoadCallbacks from simple-subframe.html because it is located in a directory with the name "loading". And this will autoamtically enable dumping.
  • Remove this method from the LayoutTestController as it is unused now and this avoids adding it to the DRT of the Qt port.

Apr 2, 2008:

11:21 PM Changeset in webkit [31581] by mjs@apple.com
  • 2 edits in branches/squirrelfish/JavaScriptCore

2008-04-02 Maciej Stachowiak <mjs@apple.com>

Reviewed by Geoff.


  • take a shot at marking constant pools for global and eval code


Geoff says this won't really work in all cases but is an ok stopgap.

  • kjs/JSGlobalObject.cpp: (KJS::JSGlobalObject::mark):
11:19 PM Changeset in webkit [31580] by mjs@apple.com
  • 2 edits in branches/squirrelfish/JavaScriptCore

2008-04-02 Maciej Stachowiak <mjs@apple.com>

Reviewed by Geoff.


  • fix 2x perf regression in 3d-morph


  • VM/Machine.cpp: (KJS::Machine::privateExecute): If we subbed in null for the global object, don't toObject it, since that will throw an exception (very slowly).
11:12 PM Changeset in webkit [31579] by mjs@apple.com
  • 2 edits in branches/squirrelfish/JavaScriptCore

2008-04-02 Maciej Stachowiak <mjs@apple.com>

Rubber stamped by Geoff


  • fix Release build
  • kjs/nodes.cpp: (KJS::getNonLocalSymbol):
10:56 PM Changeset in webkit [31578] by beidson@apple.com
  • 8 edits
    6 adds in trunk

WebCore:

2008-04-02 Brady Eidson <beidson@apple.com>

Reviewed by Mitz Pettel

<rdar://problem/5838347> and http://bugs.webkit.org/show_bug.cgi?id=11839
Webarchive fails to save CSS files in @import statements

  • css/CSSStyleSheet.cpp: (WebCore::CSSStyleSheet::addSubresourceURLStrings): Recursively add the URL each @import rule under the current style sheet.
  • css/CSSStyleSheet.h:
  • css/StyleSheet.h: (WebCore::StyleSheet::addSubresourceURLStrings):
  • html/HTMLLinkElement.cpp: (WebCore::HTMLLinkElement::getSubresourceAttributeStrings): Add the linked URL as well as all @import rules rooted at the linked stylesheet.
  • html/HTMLStyleElement.cpp: (WebCore::HTMLStyleElement::getSubresourceAttributeStrings): Walk all @import rules rooted at this stylesheet to add to the list.
  • html/HTMLStyleElement.h:

LayoutTests:

2008-04-02 Brady Eidson <beidson@apple.com>

Written by David Kilzer, tweaked by Brady, Reviewed by Mitz Pettel

The idea is to <link> to a CSS file which @imports another CSS file,
and also @import a CSS file inside a <style> element, which also @imports another CSS file

Then make sure all 4 of the css files are in the resulting webarchive

  • webarchive/resources/test-css-import-recurse.css: Added.
  • webarchive/resources/test-css-import.css: Added.
  • webarchive/resources/test-css-link-recurse.css: Added.
  • webarchive/resources/test-css-link.css: Added.
  • webarchive/test-css-import-expected.txt: Added.
  • webarchive/test-css-import.html: Added.
10:11 PM Changeset in webkit [31577] by mrowe@apple.com
  • 8 edits in trunk

Ensure that debug symbols are generated for x86_64 and ppc64 builds.

Reviewed by Oliver Hunt.

9:37 PM Changeset in webkit [31576] by ggaren@apple.com
  • 10 edits in branches/squirrelfish/JavaScriptCore

2008-04-02 Geoffrey Garen <ggaren@apple.com>

Reviewed by Oliver Hunt.


Removed the last vestiges of LocalStorage from JSVariableObject and
JSGlobalObject.

  • kjs/JSGlobalObject.cpp: (KJS::JSGlobalObject::saveLocalStorage): Save and restore from/to registers. Use stub isReadOnly and isDontEnum methods for now, until we really implement attributes in the symbol table. (KJS::JSGlobalObject::restoreLocalStorage): (KJS::JSGlobalObject::reset):
  • kjs/JSVariableObject.cpp: (KJS::JSVariableObject::getPropertyNames): Use stub isDontEnum method for now, as above. (KJS::JSVariableObject::getPropertyAttributes): ditto
  • kjs/JSVariableObject.h: Removed LocalStorage from JSVariableObjectData. Removed mark method, because subclasses implement different strategies for marking registers. (KJS::JSVariableObject::isReadOnly): Stub method (KJS::JSVariableObject::isDontEnum): ditto

Changed the code below to ASSERT_NOT_REACHED() and return 0, since it
can no longer retrieve LocalStorage from the ExecState. (Eventually,
we'll just remove this code and all its friends, but that's a task for
later.)


  • kjs/ExecState.cpp: (KJS::ExecState::ExecState):
  • kjs/function.cpp: (KJS::ActivationImp::markChildren):
  • kjs/function.h:
  • kjs/nodes.cpp: (KJS::getNonLocalSymbol): (KJS::ScopeNode::optimizeVariableAccess): (KJS::ProgramNode::processDeclarations):
5:24 PM Changeset in webkit [31575] by christian@webkit.org
  • 4 edits in trunk

Build fix for GCC 4.3.

4:30 PM Applications using WebKit edited by alp@atoker.com
Link to ApplicationsGtk (diff)
3:49 PM Changeset in webkit [31574] by alp@webkit.org
  • 2 edits in trunk/WebCore

2008-04-02 Christian Persch <chpe@gnome.org>

Reviewed by Alp Toker.

GTK+/Pango font backend build fix.

  • platform/graphics/gtk/FontCustomPlatformDataPango.cpp: (WebCore::FontCustomPlatformData::fontPlatformData):
2:48 PM Changeset in webkit [31573] by Nikolas Zimmermann
  • 3 edits in trunk/LayoutTests/svg/dynamic-updates/resources

Not reviewed. Speculative fix for hanging tests on buildbot (Tiger). Click events may have wrong origins.

11:41 AM Changeset in webkit [31572] by eric@webkit.org
  • 2 edits in trunk/WebCore

No review, build fix only.

Speculative build fix for no-svg build.
Use #if ENABLE(SVG) instead of #if ENABLE_SVG

  • css/CSSMutableStyleDeclaration.cpp: (WebCore::CSSMutableStyleDeclaration::getPropertyValue):
11:12 AM Changeset in webkit [31571] by Adam Roben
  • 2 edits in trunk/WebCore

Rename instances of ExecState from "state" to "exec" in JavaScriptDebugServer

Rename requested by Darin Adler.

  • page/JavaScriptDebugServer.cpp:
10:59 AM Changeset in webkit [31570] by Adam Roben
  • 3 edits in trunk/WebCore

Make it possible for JavaScriptDebugListeners to listen to specific Pages

JavaScriptDebugServer now has overloads of its
addListener/removeListener methods that take a Page* to indicate for
which Page the JavaScriptDebugListener wishes to receive messages.

Reviewed by Darin.

  • page/JavaScriptDebugServer.cpp: (WebCore::JavaScriptDebugServer::~JavaScriptDebugServer): Delete all ListenerSets being held in m_pageListenersMap. (WebCore::JavaScriptDebugServer::addListener): Changed to call hasListeners(). (WebCore::JavaScriptDebugServer::removeListener): Ditto. (WebCore::JavaScriptDebugServer::addListener): Added. This overload takes a Page* and puts the listener in the appropriate ListenerSet within m_pageListenersMap. The ListenerSet is allocated and added to m_pageListenersMap when its first listener is added. (WebCore::JavaScriptDebugServer::removeListener): Added. This overload takes a Page* and removes the listener from the appropriate ListenerSet in m_pageListenersMap. The ListenerSet is deleted and removed from m_pageListenersMap when its last listener is removed. (WebCore::toPage): Added. Retrieves the parent Page from an ExecState. (WebCore::JavaScriptDebugServer::sourceParsed): Changed to call dispatchDidParseSource/dispatchDidFailToParseSource for both the global listeners and the Page listeners. (WebCore::dispatchFunctionToListeners): Added. This code was extracted from the JavaScriptDebugServer method of the same name. (WebCore::JavaScriptDebugServer::dispatchFunctionToListeners): Call dispatchFunctionToListeners for both the global listeners and the Page listeners.
  • page/JavaScriptDebugServer.h:
    • Added declarations for new methods.
    • Made JavaScriptExecutionCallback typedef public so that it could be used by a helper method.
    • Added new m_pageListenersMap member.
6:50 AM Changeset in webkit [31569] by Simon Hausmann
  • 4 edits in trunk/WebKit/qt

Holger Hans Peter Freyther <holger.freyther@trolltech.com>

  • Export the PageCache and Cache capacity call one to one. This is only there to allow the QtLauncher to play with caching.
  • TODO: make API decisions and consider following the windows Api to set a WebCacheModel and determine certain values automatically.
6:50 AM Changeset in webkit [31568] by Simon Hausmann
  • 5 edits in trunk/WebKit/qt

Holger Hans Peter Freyther <holger.freyther@trolltech.com>

Prepapre everything for enabling the PageCache for the Qt Platform:

  • Claim that we can cache pages
  • Create the FrameView FrameLoaderClientQt::transitionToCommittedForNewPage using the initial size of the viewport and stop creating it in the QWebFramePrivate::init

Differences to the Windows port:

  • attachToWindow/detachFromWindow is not called and is not (yet) part of Widget/ScrollView of the Qt platform. We might need that for plugin support in the future.
  • We store the margin's and scrolling flag inside QWebFrame and use it when creating the FrameView.

What is missing:

  • API to call pageCache()->setCapacity(XYZ);
6:49 AM Changeset in webkit [31567] by Simon Hausmann
  • 2 edits in trunk/WebCore

Fix compilation on case-sensitive file systems.

5:55 AM Changeset in webkit [31566] by Nikolas Zimmermann
  • 227 edits
    15 adds in trunk

Reviewed by Oliver.

Fixes: http://bugs.webkit.org/show_bug.cgi?id=17779 (SVG 1.1 Errata demands "SVG JavaScript Liveness" support)

SVG Errata states: "All SVG DOM objects that directly correspond to an
attribute, e.g. the SVGAnimatedLength 'ry' in an SVGRectElement, are live. This
means that any changes made to the attribute are immediately reflected in the
corresponding SVG DOM object." (see linked URL on bug report)

Until now only XML -> SVG DOM changes took affect, aka. changing the 'rx' attribute of a <rect>
element resuted in changes when accessing 'rx' through SVG DOM (rx.baseVal.value).

Add a new synchronization layer to handle SVG DOM -> XML changes.

Added Test: svg/custom/svg-xml-dom-sync.html

5:00 AM Changeset in webkit [31565] by Simon Hausmann
  • 3 edits in trunk/WebKit/qt

Holger Hans Peter Freyther <holger.freyther@trolltech.com>

  • For the PageCache support we do not want to create a FrameView in the constructor of QWebFrame. In QWegPage::viewportSize() we currently call mainFrame() and that will create a QWebFrame if no mainFrame is present and this gets called when we try to create a FrameView...
  • Keep a copy of the initial viewportSize around and use it if we do not have a Frame or FrameView.
5:00 AM Changeset in webkit [31564] by Simon Hausmann
  • 2 edits in trunk/WebKit/qt

2008-04-02 Holger Hans Peter Freyther <holger.freyther@trolltech.com>

Reviewed by Simon.

  • Always return true in FrameLoaderClientQt::shouldGoToHistoryItem, like the windows port
5:00 AM Changeset in webkit [31563] by Simon Hausmann
  • 2 edits in trunk/WebKit/qt

Holger Hans Peter Freyther <holger.freyther@trolltech.com>

  • Attempt to make the m_webFrame null pointer checking consistent. Always check for m_webFrame. It should get set by the QWebFrame with the FramerLoaderClientQt::setFrame call and should stay valid until the destruction of the QWebFrame.
  • Currently the same checking is not needed for m_frame as it will only set to 0 in FrameLoaderClientQt::frameLoaderDestroyed and should be not 0 because of the setFrame initialisation.
4:54 AM Changeset in webkit [31562] by Darin Adler
  • 2 edits in trunk/WebCore

2008-04-02 Darin Adler <Darin Adler>

Reviewed by Alexey.

  • fix storage leak seen on buildbot
  • platform/graphics/cg/ImageBufferCG.cpp: (WebCore::utiFromMIMEType): Put the result of createCFString() into a RetainPtr. Changed result to be a RetainPtr. (WebCore::ImageBuffer::toDataURL): Tweak a little bit, removing one local variable and some unneeded explicit conversions.
Note: See TracTimeline for information about the timeline view.