andersca [Fri, 3 Nov 2006 03:37:29 +0000 (03:37 +0000)]
Another build fix.
* rendering/RenderFileUploadControl.cpp:
(WebCore::RenderFileUploadControl::paintObject):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17559
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca [Fri, 3 Nov 2006 03:33:17 +0000 (03:33 +0000)]
Build fix.
* page/FramePrivate.h:
(WebCore::FramePrivate::FramePrivate):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17558
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca [Fri, 3 Nov 2006 03:27:31 +0000 (03:27 +0000)]
Reviewed by Geoff, landed by Anders.
Fix dependency problems caused when running move-js-headers.sh
* move-js-headers.sh:
Use cp -p instead of just cp so that the modification time
of the original files are used.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17557
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca [Fri, 3 Nov 2006 03:23:02 +0000 (03:23 +0000)]
2006-11-02 W. Andy Carrel <wac@google.com>
Reviewed by Maciej, landed by Anders.
Adding tests for Unicode RegExp behavior to match IE and Firefox.
* fast/js/regexp-unicode-handling-expected.txt: Added.
* fast/js/regexp-unicode-handling.html: Added.
* fast/js/resources/regexp-unicode-handling.js: Added.
2006-11-02 Alexey Proskuryakov <ap@nypop.com>
Reviewed by Maciej, landed by Anders.
Test for bugs 7253 and 7445, based on reductions made by Parag Shah and W. Andy Carrel.
* fast/js/gmail-re-re-expected.txt: Added.
* fast/js/gmail-re-re.html: Added.
* fast/js/resources/gmail-re-re.js: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17556
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca [Fri, 3 Nov 2006 03:17:44 +0000 (03:17 +0000)]
Reviewed by Tim H, landed by Anders.
Fixes http://bugzilla.opendarwin.org/show_bug.cgi?id=10840
REGRESSION: Shadow of file upload button is clipped
* rendering/RenderFileUploadControl.cpp:
(WebCore::RenderFileUploadControl::paintObject): Add 2px to the clip
height to keep from clipping in the shadow
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17555
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca [Fri, 3 Nov 2006 03:16:38 +0000 (03:16 +0000)]
Reviewed by Maciej, landed by Anders.
* platform/qt/ScrollViewQt.cpp: Fix translation of coordinates between
content and window. ScrollViewQt already receives correct content
coordinates from QScrollArea.
(WebCore::ScrollView::contentsToWindow):
(WebCore::ScrollView::windowToContents):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17554
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca [Fri, 3 Nov 2006 03:14:50 +0000 (03:14 +0000)]
JavaScriptCore:
Reviewed by Maciej, landed by Anders.
* CMakeLists.txt:
Make KDE support optional.
WebKitQt:
Reviewed by Maciej, landed by Anders.
* QtLauncher/CMakeLists.txt: Make linkage against kde libraries
optional
* QtLauncher/main.cpp: Make it compile without KDE.
(main):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17553
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca [Fri, 3 Nov 2006 03:11:52 +0000 (03:11 +0000)]
Reviewed by Maciej, landed by Anders
* CMakeLists.txt: Make linkage against KDE libraries conditional
* platform/network/qt/ResourceHandleManager.cpp: Added a simple
Qt base resource handler that supports only requests to the
local filesystem. Used when compiling without KDE support.
ResourceHandleManager.cpp/h are to be split up into ResourceHandleManagerKDE
and ResourceHandleManagerQt in the future, as well as QtJob.cpp/h.
(WebCore::QtJob::QtJob):
(WebCore::QtJob::timerEvent):
(WebCore::ResourceHandleManager::ResourceHandleManager):
(WebCore::ResourceHandleManager::~ResourceHandleManager):
(WebCore::ResourceHandleManager::self):
(WebCore::ResourceHandleManager::remove):
(WebCore::ResourceHandleManager::add):
(WebCore::ResourceHandleManager::cancel):
(WebCore::ResourceHandleManager::deliverJobData):
* platform/network/qt/ResourceHandleManager.h:
* platform/qt/FrameQtClient.cpp:
(WebCore::FrameQtClientDefault::runJavaScriptAlert):
(WebCore::FrameQtClientDefault::runJavaScriptConfirm):
(WebCore::FrameQtClientDefault::runJavaScriptPrompt):
* platform/qt/LoaderFunctionsQt.cpp: Use the Qt messagebox and
input dialog functions when compiling without KDE support
(WebCore::ServeSynchronousRequest):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17552
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca [Fri, 3 Nov 2006 03:09:04 +0000 (03:09 +0000)]
2006-11-02 Alexey Proskuryakov <ap@nypop.com>
Reviewed by Maciej, landed by Anders.
- http://bugzilla.opendarwin.org/show_bug.cgi?id=7802
devenv.com not available in VC++ Express installations
* Scripts/webkitdirs.pm: Make Windows build work with Visual C++ Express.
* Scripts/install-win-extras: Make setx.exe actually run.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17551
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca [Fri, 3 Nov 2006 03:06:40 +0000 (03:06 +0000)]
2006-11-02 David Carson <dacarson@gmail.com>
Reviewed by Geoff, landed by Anders.
Fix for: http://bugs.webkit.org/show_bug.cgi?id=11471
Initializing variable in constructor.
* page/FramePrivate.h:
(WebCore::FramePrivate::FramePrivate):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17550
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca [Fri, 3 Nov 2006 01:30:24 +0000 (01:30 +0000)]
2006-11-02 Anders Carlsson <acarlsson@apple.com>
Reviewed by Geoff.
Use CFMutableURLRequestRef instead of CFHTTPMessageRef since not all URL requests are http requests.
* platform/network/cf/ResourceHandleCFNet.cpp:
(WebCore::addHeadersFromHashMap):
Don't set all headers at once since that clears any previous headers set.
(WebCore::ResourceHandle::start):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17549
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
thatcher [Fri, 3 Nov 2006 00:27:52 +0000 (00:27 +0000)]
Build fix.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17548
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
thatcher [Fri, 3 Nov 2006 00:12:45 +0000 (00:12 +0000)]
Reviewed by Brady.
Adding outdent to the WebView responder forwarding list.
Also add outdent to WebHTMLView.h and WebViewPrivate.h.
* WebView/WebHTMLView.h:
* WebView/WebViewPrivate.h:
* WebView/WebView.mm:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17547
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren [Thu, 2 Nov 2006 22:08:31 +0000 (22:08 +0000)]
Updated results to fix failure seen when running layout tests. Justin
Garcia says the new results look more correct.
* editing/selection/drag-to-contenteditable-iframe-expected.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17545
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
adele [Thu, 2 Nov 2006 21:37:46 +0000 (21:37 +0000)]
LayoutTests:
Reviewed by Mitz and Geoff.
Test for <rdar://problem/
4650271> REGRESSION(NativeTextArea): Textareas don't get scrollbars when text gets too big for content area (10105)
* fast/forms/textarea-scrollbar-expected.checksum: Added.
* fast/forms/textarea-scrollbar-expected.png: Added.
* fast/forms/textarea-scrollbar-expected.txt: Added.
* fast/forms/textarea-scrollbar.html: Added.
WebCore:
Reviewed by Mitz and Geoff.
- Fix for:
<rdar://problem/
4650271> REGRESSION(NativeTextArea): Textareas don't get scrollbars when text gets too big for content area (10105)
<rdar://problem/
4650813> REGRESSION(tiger-leopard): typing in a textarea in Safari is extremely slow (sample shows focus ring drawing)
<rdar://problem/
4658779> REGRESSION: Text selection is weird in textareas in Trac wiki editing pages
Test: fast/forms/textarea-scrollbar.html
To avoid some of our flexbox bugs for textareas, we're moving the text controls back to RenderBlock. This should make them
a lot more stable. In the future, when we've worked out more of the flexbox kinks, we may want to consider moving them back.
* rendering/RenderTextControl.h: Convert text controls back to RenderBlock instead of RenderFlexibleBox.
* rendering/RenderTextControl.cpp:
(WebCore::RenderTextControl::RenderTextControl):
(WebCore::RenderTextControl::setStyle):
(WebCore::RenderTextControl::createDivStyle):
(WebCore::RenderTextControl::updateFromElement):
(WebCore::RenderTextControl::calcHeight):
(WebCore::RenderTextControl::baselinePosition):
(WebCore::RenderTextControl::nodeAtPoint):
(WebCore::RenderTextControl::layout): Set the inner div's height explicitly before doing a normal layout.
(WebCore::RenderTextControl::scrollWidth):
(WebCore::RenderTextControl::scrollHeight):
(WebCore::RenderTextControl::scrollLeft):
(WebCore::RenderTextControl::scrollTop):
* rendering/RenderObject.cpp: (WebCore::RenderObject::markContainingBlocksForLayout): Make subtree layout optimization work for textareas.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17543
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
sullivan [Thu, 2 Nov 2006 18:12:53 +0000 (18:12 +0000)]
Reviewed by Geoff Garen
* editing/Selection.cpp:
(WebCore::Selection::showTreeForThis):
this debugging method now displays start offset and end offset, at Darin's suggestion
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17539
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kmccullo [Thu, 2 Nov 2006 17:44:13 +0000 (17:44 +0000)]
Reviewed by Maciej.
- Changed the test to take into account the JavaScript standard's interesting take on DST. According to the standard DST should not reflect historically accurate information but should rather interpolate from a comparable year. This test used to show historically accurate information but now reflects the results of interpolating.
* fast/js/date-big-setdate-expected.txt:
* fast/js/resources/date-big-setdate.js:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17538
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
slewis [Thu, 2 Nov 2006 03:59:39 +0000 (03:59 +0000)]
2006-11-01 Stephanie Lewis <slewis@apple.com>
Reviewed by Kevin.
Fixed bug where additional arguments got fed to xcode and jsdriver.pl
Since testkjs is being built before the tests are run, we don't need
to build it with webkit.
Fixes bugs
http://bugs.webkit.org/show_bug.cgi?id=11462
http://bugs.webkit.org/show_bug.cgi?id=6168
* Scripts/build-webkit:
* Scripts/run-javascriptcore-tests:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17534
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
justing [Thu, 2 Nov 2006 03:52:33 +0000 (03:52 +0000)]
LayoutTests:
Reviewed by darin
<rdar://problem/
4062865>
Copy/paste of a select element fails to include the options
Updated to reflect fix:
* editing/pasteboard/
4641033-expected.checksum:
* editing/pasteboard/
4641033-expected.png:
* editing/pasteboard/
4641033-expected.txt:
* editing/pasteboard/
4641033.html:
Added:
* editing/inserting/before-after-input-element-expected.checksum: Added.
* editing/inserting/before-after-input-element-expected.png: Added.
* editing/inserting/before-after-input-element-expected.txt: Added.
* editing/inserting/before-after-input-element.html: Added.
* editing/pasteboard/input-field-1-expected.checksum: Added.
* editing/pasteboard/input-field-1-expected.png: Added.
* editing/pasteboard/input-field-1-expected.txt: Added.
* editing/pasteboard/input-field-1.html: Added.
* editing/pasteboard/select-element-1-expected.checksum: Added.
* editing/pasteboard/select-element-1-expected.png: Added.
* editing/pasteboard/select-element-1-expected.txt: Added.
* editing/pasteboard/select-element-1.html: Added.
* editing/selection/select-element-paragraph-boundary-expected.checksum: Added.
* editing/selection/select-element-paragraph-boundary-expected.png: Added.
* editing/selection/select-element-paragraph-boundary-expected.txt: Added.
* editing/selection/select-element-paragraph-boundary.html: Added.
WebCore:
Reviewed by darin
<rdar://problem/
4062865>
Copy/paste of a select element fails to include the options
* editing/SelectionController.cpp:
(WebCore::SelectionController::modify): Added paragraphBoundary.
* editing/htmlediting.cpp:
(WebCore::canHaveChildrenForEditing): Added checks for input elements
and textareas. Insertion operations would fail when performed just
before/after one of these elements b/c the content would be put inside
the element.
(WebCore::enclosingNodeWithTag): Fixed a problem when calling these in non
editable content, and made the code to stop at an root faster (don't check
isDescendantOf on every iteration).
(WebCore::enclosingNodeOfType): Ditto.
(WebCore::enclosingList): Ditto.
(WebCore::enclosingListChild): Ditto. Added a FIXME, this function seems
inappropriately named.
* editing/markup.cpp:
(WebCore::startMarkup): Use the text node's value instead of its rendered
content for text nodes inside select elements. One might also turn off
annotation when createMarkup enters a select element, but createMarkup
is iterative, not recursive, so doing so would be complicated.
(WebCore::createMarkup): Add markup for unrendered nodes if they are
descendants of a select element.
* editing/visible_units.cpp:
(WebCore::startOfParagraph): Migrate to isBlock/enclosingBlock. Fixes bug
where various replaced elements can't be copied when they are the only
thing selected.
(WebCore::endOfParagraph): Ditto.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17532
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
oliver [Thu, 2 Nov 2006 01:41:28 +0000 (01:41 +0000)]
2006-11-01 Oliver Hunt <oliver@apple.com>
Reviewed by Adam.
Converting more or kcanvas/quartz from Obj-C to C++
Minor SVG updates
compatibility fixes
* WebCore.xcodeproj/project.pbxproj:
* kcanvas/device/KRenderingPaintServer.h:
* kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.cpp: Added.
(WebCore::KRenderingPaintServerGradientQuartz::updateQuartzGradientCache):
* kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm: Removed.
* kcanvas/device/quartz/KRenderingPaintServerQuartz.cpp: Added.
* kcanvas/device/quartz/KRenderingPaintServerQuartz.mm: Removed.
* kcanvas/device/quartz/QuartzSupport.h:
* ksvg2/css/SVGCSSStyleSelector.cpp:
* ksvg2/misc/KCanvasRenderingStyle.h:
* ksvg2/scripts/cssmakeprops:
* ksvg2/scripts/cssmakevalues:
* ksvg2/scripts/make_names.pl:
* ksvg2/svg/SVGAnimateColorElement.cpp:
* ksvg2/svg/SVGAnimateTransformElement.cpp:
* ksvg2/svg/SVGAnimationElement.cpp:
* ksvg2/svg/SVGMaskElement.cpp:
* ksvg2/svg/SVGPatternElement.cpp:
* ksvg2/svg/svgpathparser.cpp:
* platform/Path.cpp:
* platform/graphics/svg/SVGResourceImage.h:
* rendering/RenderPath.cpp:
* rendering/SVGRenderAsText.cpp:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17529
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kmccullo [Thu, 2 Nov 2006 01:02:42 +0000 (01:02 +0000)]
- temporarily passing a test so that it does not interfere with others testing.
* fast/js/date-big-setdate-expected.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17528
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
beidson [Thu, 2 Nov 2006 00:56:56 +0000 (00:56 +0000)]
Reviewed by Tim Hatcher
Added accessor to get the source directory for use in client scripts
* Scripts/webkitdirs.pm:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17527
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
adele [Thu, 2 Nov 2006 00:43:07 +0000 (00:43 +0000)]
Reviewed by Adele.
- Fix a regression from r17521: painting of and crash caused by tables
with collapsed borders
* rendering/RenderTable.cpp:
(WebCore::RenderTable::paint): Changed 'paintInfo' to 'info'. Prior to
r17521, 'paintInfo' was the local variable. Now 'info' is the local variable
and 'paintInfo' is the parameter, which we were accidently modifying.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17526
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
adele [Wed, 1 Nov 2006 23:34:17 +0000 (23:34 +0000)]
Fixing typo. Changed repaintTest to runRepaintTest.
* fast/repaint/overflow-outline-repaint-expected.checksum:
* fast/repaint/overflow-outline-repaint-expected.png:
* fast/repaint/overflow-outline-repaint.html:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17525
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
adele [Wed, 1 Nov 2006 23:28:57 +0000 (23:28 +0000)]
LayoutTests:
Reviewed by Mitz.
Tests for http://bugs.webkit.org/show_bug.cgi?id=11277
REGRESSION: Incomplete repaint of overflow areas when deleting
* fast/repaint/overflow-delete-line-expected.checksum: Added.
* fast/repaint/overflow-delete-line-expected.png: Added.
* fast/repaint/overflow-delete-line-expected.txt: Added.
* fast/repaint/overflow-delete-line.html: Added.
* fast/repaint/overflow-scroll-delete-expected.checksum: Added.
* fast/repaint/overflow-scroll-delete-expected.png: Added.
* fast/repaint/overflow-scroll-delete-expected.txt: Added.
* fast/repaint/overflow-scroll-delete.html: Added.
* fast/repaint/overflow-outline-repaint-expected.checksum: Added.
* fast/repaint/overflow-outline-repaint-expected.png: Added.
* fast/repaint/overflow-outline-repaint-expected.txt: Added.
* fast/repaint/overflow-outline-repaint.html: Added.
WebCore:
Reviewed by Mitz.
- Fix for http://bugs.webkit.org/show_bug.cgi?id=11277
REGRESSION: Incomplete repaint of overflow areas when deleting
Restrict the repaint rect for overflow blocks after the height has been fully computed.
Also, adjust the repaint rect coordinates for the scroll offset.
* rendering/RenderBlock.cpp: (WebCore::RenderBlock::layoutBlock):
* rendering/bidi.cpp: (WebCore::RenderBlock::layoutInlineChildren):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17524
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
sullivan [Wed, 1 Nov 2006 23:22:33 +0000 (23:22 +0000)]
Reviewed by Adam Roben
- fixed <rdar://problem/
4801351> Crash reloading PDF file in new Safari (or closing a window containing a PDF file)
* WebView/WebPDFView.mm:
(-[WebPDFView initWithFrame:]):
Retain the PDFSubview in the code path where we just obtain it by asking the PDFPreviewView for it. We were
unconditionally releasing it in dealloc, but only retaining it in one of the two code paths.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17523
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
weinig [Wed, 1 Nov 2006 21:49:13 +0000 (21:49 +0000)]
Reviewed by Mitz.
Fix for http://bugs.webkit.org/show_bug.cgi?id=11474
Rename the "p" member variable of the PaintInfo struct to "context"
- Renames the 'p' and 'r' member variables of the PaintInfo struct to
'context' and 'rect' respectively.
- Assorted surrounding cleanups.
* rendering/EllipsisBox.cpp:
(WebCore::EllipsisBox::paint):
* rendering/EllipsisBox.h:
* rendering/InlineBox.cpp:
(WebCore::InlineBox::paint):
* rendering/InlineFlowBox.cpp:
(WebCore::InlineFlowBox::paint):
(WebCore::InlineFlowBox::paintBackground):
(WebCore::InlineFlowBox::paintBackgroundAndBorder):
(WebCore::InlineFlowBox::paintDecorations):
* rendering/InlineFlowBox.h:
* rendering/InlineRunBox.h:
* rendering/InlineTextBox.cpp:
(WebCore::InlineTextBox::paint):
* rendering/InlineTextBox.h:
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::paint):
(WebCore::RenderBlock::paintChildren):
(WebCore::RenderBlock::paintCaret):
(WebCore::RenderBlock::paintObject):
(WebCore::RenderBlock::paintFloats):
(WebCore::RenderBlock::paintEllipsisBoxes):
(WebCore::RenderBlock::paintSelection):
(WebCore::RenderBlock::fillSelectionGaps):
(WebCore::RenderBlock::fillInlineSelectionGaps):
(WebCore::RenderBlock::fillBlockSelectionGaps):
(WebCore::RenderBlock::fillHorizontalSelectionGap):
(WebCore::RenderBlock::fillVerticalSelectionGap):
(WebCore::RenderBlock::fillLeftSelectionGap):
(WebCore::RenderBlock::fillRightSelectionGap):
* rendering/RenderBox.cpp:
(WebCore::RenderBox::paint):
(WebCore::RenderBox::paintRootBoxDecorations):
(WebCore::RenderBox::paintBoxDecorations):
* rendering/RenderBox.h:
* rendering/RenderButton.cpp:
(WebCore::RenderButton::paintObject):
* rendering/RenderFieldset.cpp:
(WebCore::RenderFieldset::paintBoxDecorations):
* rendering/RenderFileUploadControl.cpp:
(WebCore::RenderFileUploadControl::paintObject):
* rendering/RenderFlow.cpp:
(WebCore::RenderFlow::continuationBefore):
(WebCore::RenderFlow::addChildWithContinuation):
(WebCore::RenderFlow::addChild):
(WebCore::RenderFlow::attachLineBox):
(WebCore::RenderFlow::destroy):
(WebCore::RenderFlow::dirtyLinesFromChangedChild):
(WebCore::RenderFlow::dirtyLineBoxes):
(WebCore::RenderFlow::createInlineBox):
(WebCore::RenderFlow::paintLines):
(WebCore::RenderFlow::getAbsoluteRepaintRect):
(WebCore::RenderFlow::lowestPosition):
(WebCore::RenderFlow::rightmostPosition):
(WebCore::RenderFlow::leftmostPosition):
(WebCore::RenderFlow::caretRect):
(WebCore::RenderFlow::addFocusRingRects):
(WebCore::RenderFlow::paintOutline):
(WebCore::RenderFlow::paintOutlineForLine):
* rendering/RenderForeignObject.cpp:
(WebCore::RenderForeignObject::paint):
* rendering/RenderHTMLCanvas.cpp:
(WebCore::RenderHTMLCanvas::paint):
* rendering/RenderImage.cpp:
(WebCore::RenderImage::paint):
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::paintLayer):
* rendering/RenderListBox.cpp:
(WebCore::RenderListBox::paintObject):
(WebCore::RenderListBox::paintScrollbar):
(WebCore::RenderListBox::paintItemForeground):
(WebCore::RenderListBox::paintItemBackground):
* rendering/RenderListMarker.cpp:
(WebCore::RenderListMarker::paint):
* rendering/RenderMenuList.cpp:
(WebCore::RenderMenuList::paintObject):
* rendering/RenderObject.cpp:
(WebCore::RenderObject::paint):
* rendering/RenderObject.h:
(WebCore::RenderObject::PaintInfo::PaintInfo):
(WebCore::RenderObject::paintBoxDecorations):
(WebCore::RenderObject::paintingRootForChildren):
(WebCore::RenderObject::shouldPaintWithinRoot):
(WebCore::RenderObject::printBoxDecorations):
* rendering/RenderPath.cpp:
(WebCore::RenderPath::paint):
* rendering/RenderReplaced.cpp:
(WebCore::RenderReplaced::shouldPaint):
* rendering/RenderSVGContainer.cpp:
(WebCore::RenderSVGContainer::paint):
* rendering/RenderSVGContainer.h:
* rendering/RenderSVGImage.cpp:
(WebCore::RenderSVGImage::paint):
* rendering/RenderSVGText.cpp:
(WebCore::RenderSVGText::paint):
* rendering/RenderSVGText.h:
(WebCore::RenderSVGText::renderName):
* rendering/RenderTable.cpp:
(WebCore::RenderTable::paint):
(WebCore::RenderTable::paintBoxDecorations):
* rendering/RenderTable.h:
* rendering/RenderTableCell.cpp:
(WebCore::RenderTableCell::paint):
(WebCore::RenderTableCell::paintBackgroundsBehindCell):
(WebCore::RenderTableCell::paintBoxDecorations):
* rendering/RenderTableCell.h:
* rendering/RenderTableRow.cpp:
(WebCore::RenderTableRow::paint):
* rendering/RenderTableRow.h:
* rendering/RenderTableSection.cpp:
(WebCore::RenderTableSection::paint):
* rendering/RenderTableSection.h:
(WebCore::RenderTableSection::getBaseline):
(WebCore::RenderTableSection::setNeedCellRecalc):
* rendering/RenderText.h:
(WebCore::RenderText::renderName):
(WebCore::RenderText::paint):
(WebCore::RenderText::element):
* rendering/RenderTheme.cpp:
(WebCore::RenderTheme::paint):
(WebCore::RenderTheme::paintBorderOnly):
(WebCore::RenderTheme::paintDecorations):
* rendering/RenderTheme.h:
(WebCore::RenderTheme::RenderTheme):
(WebCore::RenderTheme::~RenderTheme):
(WebCore::RenderTheme::controlSupportsTints):
(WebCore::RenderTheme::adjustRepaintRect):
(WebCore::RenderTheme::themeChanged):
(WebCore::RenderTheme::supportsHover):
(WebCore::RenderTheme::paintCheckbox):
(WebCore::RenderTheme::setCheckboxSize):
(WebCore::RenderTheme::paintRadio):
(WebCore::RenderTheme::setRadioSize):
(WebCore::RenderTheme::paintButton):
(WebCore::RenderTheme::setButtonSize):
(WebCore::RenderTheme::paintTextField):
(WebCore::RenderTheme::paintTextArea):
(WebCore::RenderTheme::paintMenuList):
(WebCore::RenderTheme::paintMenuListButton):
* rendering/RenderThemeMac.mm:
(WebCore::RenderThemeMac::paintCheckbox):
(WebCore::RenderThemeMac::paintRadio):
(WebCore::RenderThemeMac::paintButton):
(WebCore::RenderThemeMac::paintTextField):
(WebCore::RenderThemeMac::paintTextArea):
(WebCore::RenderThemeMac::paintMenuList):
(WebCore::RenderThemeMac::paintMenuListButtonGradients):
(WebCore::RenderThemeMac::paintMenuListButton):
* rendering/RenderView.cpp:
(WebCore::RenderView::paint):
(WebCore::RenderView::paintBoxDecorations):
* rendering/RenderView.h:
* rendering/RenderWidget.cpp:
(WebCore::RenderWidget::paint):
* rendering/RenderWidget.h:
(WebCore::RenderWidget::isWidget):
* rendering/RootInlineBox.cpp:
(WebCore::RootInlineBox::paintEllipsisBox):
(WebCore::RootInlineBox::paintCustomHighlight):
(WebCore::RootInlineBox::paint):
(WebCore::RootInlineBox::fillLineSelectionGap):
* rendering/RootInlineBox.h:
* rendering/SVGInlineFlowBox.cpp:
(WebCore::paintSVGInlineFlow):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17521
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kmccullo [Wed, 1 Nov 2006 20:34:23 +0000 (20:34 +0000)]
Reviewed by Brady.
- Fixes many JavaScriptCore tests in other timezones. The root problem is that on mac localtime() returns historically accurate information for DST, but the JavaScript spec explicitly states to not take into account historical information but rather to interpolate from valid years.
* kjs/DateMath.cpp:
(KJS::equivalentYearForDST):
(KJS::getDSTOffsetSimple):
(KJS::getDSTOffset):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17520
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca [Wed, 1 Nov 2006 19:43:21 +0000 (19:43 +0000)]
2006-11-01 Anders Carlsson <acarlsson@apple.com>
Reviewed by Oliver, Brady.
* platform/network/ResourceResponse.h:
(WebCore::ResourceResponse::setLastModifiedDate):
(WebCore::ResourceResponse::lastModifiedDate):
Add getters and setters for last modified dadte.
* platform/network/cf/ResourceResponseCFNet.cpp:
(WebCore::getResourceResponse):
Fetch the last modified date. Add correct offset to expired date.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17519
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
thatcher [Wed, 1 Nov 2006 19:25:48 +0000 (19:25 +0000)]
Build fix for 64-bit.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17518
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ddkilzer [Wed, 1 Nov 2006 11:47:10 +0000 (11:47 +0000)]
2006-11-01 David Kilzer <ddkilzer@kilzer.net>
Reviewed by Mitz.
Added missing "break;" statement in switch statement from r17493.
Bug 11442: [CSS 3] support for cursor: all-scroll
http://bugs.webkit.org/show_bug.cgi?id=11442
* css/CSSComputedStyleDeclaration.cpp:
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17516
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bdash [Wed, 1 Nov 2006 07:53:36 +0000 (07:53 +0000)]
2006-10-31 Mitz Pettel <mitz@webkit.org>
Reviewed by Maciej.
- fix image dragging
This is covered by editing/selection/drag-to-contenteditable-iframe.html
* rendering/HitTestResult.cpp:
(WebCore::HitTestResult::altDisplayString): Changed imageTag to imgTag, for
HTML IMG elements.
(WebCore::HitTestResult::absoluteImageURL): Ditto.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17515
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bdash [Wed, 1 Nov 2006 07:15:28 +0000 (07:15 +0000)]
2006-10-31 Mark Rowe <bdash@webkit.org>
Reviewed by Maciej.
Fix null pointer dereference while running editing/pasteboard/drag-drop-modifies-page.html
* Misc/WebElementDictionary.m:
(-[WebElementDictionary _image]): Add null check.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17514
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bdash [Wed, 1 Nov 2006 06:13:06 +0000 (06:13 +0000)]
2006-10-31 Mark Rowe <bdash@webkit.org>
Reviewed by Mitz.
Update WebKit blog link to prevent pointless redirects.
* nav.inc:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17513
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bdash [Wed, 1 Nov 2006 05:45:55 +0000 (05:45 +0000)]
2006-11-01 Mark Rowe <bdash@webkit.org>
Reviewed by Mitz.
Update references to webkit.opendarwin.org to webkit.org in Spinneret and WebKit.app.
* Spinneret/Spinneret/Spinneret.cpp:
(_tWinMain):
* WebKitLauncher/WebKitNightlyEnabler.m:
(cleanUpAfterOurselves):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17512
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bdakin [Wed, 1 Nov 2006 03:22:12 +0000 (03:22 +0000)]
WebCore:
Reviewed by Maciej.
This adds the back-end of the remaining WebElementDictionary
functions into HitTestResult.
* WebCore.exp:
* rendering/HitTestResult.cpp:
(WebCore::HitTestResult::title):
(WebCore::displayString): This is nearly identical to the
displayString() defined in DOMInternal.mm except that it returns a
String instead of an NSString. The old code path used the
DOMInternal method, so I made a new one here for the new code path.
(WebCore::HitTestResult::altDisplayString):
(WebCore::HitTestResult::image):
(WebCore::HitTestResult::absoluteImageURL):
(WebCore::HitTestResult::absoluteLinkURL):
(WebCore::HitTestResult::titleDisplayString):
(WebCore::HitTestResult::textContent):
* rendering/HitTestResult.h:
WebKit:
Reviewed by Maciej.
This creates local functions for the remaining WebElementDictionary
members that calls into HitTestResult instead of doing magical
things with the Objective-C DOM classes.
* ChangeLog:
* Misc/WebElementDictionary.m:
(addLookupKey): The values of the dictionary are now just
selectors. They used to be WebElementMethods which were
WebElementTargetObjects associated with selectors, but none of that
is needed any more.
(+[WebElementDictionary initializeLookupTable]): All selectors are
now local functions, no more WebElementTargetObjects.
(-[WebElementDictionary objectForKey:]): No more target objects!
(-[WebElementDictionary _domNode]): Call into HitTestResult member
variable.
(-[WebElementDictionary _altDisplayString]): Same.
(-[WebElementDictionary _image]): Same.
(-[WebElementDictionary _absoluteImageURL]): Same.
(-[WebElementDictionary _title]): Same.
(-[WebElementDictionary _absoluteLinkURL]): Same.
(-[WebElementDictionary _targetWebFrame]): Same.
(-[WebElementDictionary _titleDisplayString]): Same.
(-[WebElementDictionary _textContent]): Same.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17511
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bdash [Wed, 1 Nov 2006 03:11:46 +0000 (03:11 +0000)]
2006-10-31 Mark Rowe <bdash@webkit.org>
Reviewed by Stephanie.
Limit build slaves to a single build to prevent concurrent builds on a single slave from significantly increasing build time.
* BuildSlaveSupport/build.webkit.org-config/webkit/builders.py: Adjust slave distribution, and make use of a SlaveLock.
* BuildSlaveSupport/build.webkit.org-config/webkit/factories.py: Remove unused Qt build factory.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17510
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
sullivan [Wed, 1 Nov 2006 02:59:56 +0000 (02:59 +0000)]
* bridge/mac/FrameMac.mm:
(WebCore::FrameMac::markMisspellings):
Tiger build fix: added an #ifndef BUILDING_ON_TIGER where one was needed.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17509
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
sullivan [Wed, 1 Nov 2006 02:49:02 +0000 (02:49 +0000)]
Reviewed by Maciej
- fixed <rdar://problem/
4804627> ToolTips do not appear for grammar suggestions
The foundation of this was in my last checkin. This checkin is all about displaying
the correct string in the toolTip.
* dom/DocumentMarker.h:
New description field in this struct.
* bridge/mac/FrameMac.mm:
(WebCore::FrameMac::advanceToNextMisspelling):
When adding a grammar marker, supply the appropriate description. Also, added a comment
about the remaining work to make grammar checking return sensible answers.
(WebCore::FrameMac::markMisspellings):
ditto (yes, still needs some refactoring to minimize duplicated code)
* dom/Document.h:
* dom/Document.cpp:
(WebCore::Document::addMarker):
Now takes an optional description string
(WebCore::Document::markerContainingPoint):
New function, returns a pointer to the (first) marker of the specified type whose rect
contains the specified point, or 0 if none.
* rendering/HitTestResult.cpp:
(WebCore::HitTestResult::spellingToolTip):
Replaced hardwired string placeholder implementation with code that uses markerContainingPoint
and gets the description from the marker.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17508
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren [Wed, 1 Nov 2006 02:14:01 +0000 (02:14 +0000)]
JavaScriptCore:
Reviewed by Beth.
Fixed http://bugs.webkit.org/show_bug.cgi?id=11477
REGRESSION: GMail crashes in KJS::FunctionImp::callerGetter
* kjs/function.cpp:
(KJS::FunctionImp::argumentsGetter): Removed unnecessary braces.
(KJS::FunctionImp::callerGetter): More logical NULL checking.
LayoutTests:
Added test for accessing the 'caller' property from inside an event
listener.
* fast/events/caller-access-from-event-listener-expected.txt: Added.
* fast/events/caller-access-from-event-listener.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17507
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren [Wed, 1 Nov 2006 01:35:00 +0000 (01:35 +0000)]
Reviewed by Maciej.
Fixed crash resulting from Darin's last patch to remove BrowserExtension.
* loader/mac/FrameLoaderMac.mm:
(WebCore::FrameLoader::createWindow):
* manual-tests/window-open-features-parsing.html: Updated for clarity.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17506
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
thatcher [Wed, 1 Nov 2006 00:56:15 +0000 (00:56 +0000)]
Build fix for Leopard.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17505
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren [Tue, 31 Oct 2006 23:56:37 +0000 (23:56 +0000)]
LayoutTests:
Added layout test for copying password field.
* editing/pasteboard/copy-in-password-field-expected.txt: Added.
* editing/pasteboard/copy-in-password-field.html: Added.
WebCore:
Reviewed by Alice.
Moved some Editing code from WebKit, the bridge, and WebCore::Frame down
to WebCore::Editor.
Layout tests pass.
Renamed "may*" to "can*" because "can" is more accurate (these functions
aren't just about permission) and it matches WebKit.
(WebCore::FrameMac::handleMouseMoveEvent): Directly test for dragging in a
password field. Now that WebCore fully implements canCopy(), it doesn't just
mean "the selection is not in a password field" anymore.
(-[WebCoreFrameBridge _shouldAllowAccessFrom:]): Removed this #ifed-out code.
The fact that it's not called anymore may represent a security issue, but I
don't see how commented-out code will help reveal the issue, and the
bridge is going away, anyway.
* editing/SelectionController.h: Changed selection() calls to references
to m_sel, to match the rest of the file.
WebKit:
Reviewed by Alice.
Moved some Editing code from WebKit, the bridge, and WebCore::Frame down
to WebCore::Editor.
* WebCoreSupport/WebFrameBridge.mm:
* WebView/WebHTMLView.m:
(-[WebHTMLView _shouldDeleteRange:]):
(-[WebHTMLView _canCopy]):
(-[WebHTMLView _canCut]):
(-[WebHTMLView _canDelete]):
(-[WebHTMLView _canPaste]):
(-[WebHTMLView _canEdit]):
(-[WebHTMLView _canEditRichly]):
(-[WebHTMLView _isEditable]):
(-[WebHTMLView _isSelectionInPasswordField]):
(-[NSArray validateUserInterfaceItem:]):
(-[NSArray _expandSelectionToGranularity:]):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17504
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
justing [Tue, 31 Oct 2006 23:37:04 +0000 (23:37 +0000)]
LayoutTests:
Reviewed by harrison
Updated these tests to mention the bug that they demonstrate:
* editing/pasteboard/nested-blocks-with-text-area-expected.checksum:
* editing/pasteboard/nested-blocks-with-text-area-expected.png:
* editing/pasteboard/nested-blocks-with-text-area-expected.txt:
* editing/pasteboard/nested-blocks-with-text-area.html:
* editing/pasteboard/nested-blocks-with-text-field-expected.checksum:
* editing/pasteboard/nested-blocks-with-text-field-expected.png:
* editing/pasteboard/nested-blocks-with-text-field-expected.txt:
* editing/pasteboard/nested-blocks-with-text-field.html:
WebCore:
Reviewed by harrison
<rdar://problem/
4711063>
Pasting 10K lines into Mail/Blot takes ~7sec, in TextEdit it takes ~1.5sec
* editing/ReplaceSelectionCommand.cpp:
(WebCore::ReplacementFragment::ReplacementFragment): Don't do the test
insertion and plain text string creation unless we need the string
for a BeforeTextInserted event handler or for a plain text only region.
(WebCore::ReplacementFragment::removeInterchangeNodes): Added, moved
code here from ReplacementFragment's constructor.
(WebCore::ReplaceSelectionCommand::completeHTMLReplacement): Added a
FIXME.
* editing/ReplaceSelectionCommand.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17503
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
adachan [Tue, 31 Oct 2006 23:10:39 +0000 (23:10 +0000)]
2006-10-31 Ada Chan <adachan@apple.com>
Reviewed by Adam
Correct forward declarations of the HitTestRequest struct.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17502
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
sullivan [Tue, 31 Oct 2006 23:03:24 +0000 (23:03 +0000)]
WebCore:
Reviewed by Beth and Adam
Support for displaying tooltips for bad grammar. Currently this always displays the same tooltip;
next I'll make it use a string that's relevant for a specific grammar error.
* WebCore.exp:
export symbol for spellingToolTip function
* rendering/HitTestResult.h:
* rendering/HitTestResult.cpp:
(WebCore::HitTestResult::spellingToolTip):
new function, returns the string to be used in a tool tip that describes the questionable grammar
* rendering/InlineTextBox.h:
* rendering/InlineTextBox.cpp:
(WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
now takes a style and font, needed to compute the rect representing the range containing
questionable grammar. Computes the rect and associates it with the marker.
(WebCore::InlineTextBox::paintDocumentMarkers):
Pass in the style and font now needed by paintSpellingOrGrammarMarker
WebKit:
Reviewed by Beth and Adam
Display a tooltip when hovering over marked bad grammar.
* Misc/WebElementDictionary.m:
(+[WebElementDictionary initializeLookupTable]):
support spelling tool tip
(-[WebElementDictionary _spellingToolTip]):
new method, calls through to HitTestResult
* WebView/WebHTMLView.m:
(-[WebHTMLView _updateMouseoverWithEvent:]):
Check for a spelling tool tip; if found, prefer it over the other possible tool tips.
Check for empty strings instead of just nil strings being, since values from
WebElementDictionary are empty strings.
* WebView/WebViewPrivate.h:
declare new string constant WebElementSpellingToolTipKey
* WebView/WebView.mm:
define new string constant WebElementSpellingToolTipKey
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17501
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
adele [Tue, 31 Oct 2006 23:01:27 +0000 (23:01 +0000)]
Removed commented out variable from last checkin.
* html/HTMLSelectElement.cpp:
(WebCore::HTMLSelectElement::listBoxDefaultEventHandler):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17500
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
beidson [Tue, 31 Oct 2006 22:51:09 +0000 (22:51 +0000)]
Build fix
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17499
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
adele [Tue, 31 Oct 2006 22:10:51 +0000 (22:10 +0000)]
LayoutTests:
Reviewed by Adam.
Tests for http://bugs.webkit.org/show_bug.cgi?id=11127 NativeListBox: arrow and drag selection should pivot around one list item
and http://bugs.webkit.org/show_bug.cgi?id=11173 REGRESSION (NativeListBox): Shift-clicking items in list box doesn't expand the current selection
and http://bugs.webkit.org/show_bug.cgi?id=11417 REGRESSION: onchange does not fire for list-style select elements
* fast/forms/listbox-onchange-expected.txt: Added.
* fast/forms/listbox-onchange.html: Added.
* fast/forms/listbox-selection-expected.txt: Added.
* fast/forms/listbox-selection.html: Added.
WebCore:
Reviewed by Adam.
- Fix for http://bugs.webkit.org/show_bug.cgi?id=11127 NativeListBox: arrow and drag selection should pivot around one list item
and http://bugs.webkit.org/show_bug.cgi?id=11173 REGRESSION (NativeListBox): Shift-clicking items in list box doesn't expand the current selection
and http://bugs.webkit.org/show_bug.cgi?id=11417 REGRESSION: onchange does not fire for list-style select elements
Tests:
* LayoutTests/fast/forms/listbox-selection.html
* LayoutTests/fast/forms/listbox-onchange.html
* html/HTMLSelectElement.h: Added m_selectedListIndexBase and m_selectedListIndexExtent to track indices for the active selection in progress.
Added 2 vectors to cache selection state. One is kept so that the previous selection state can be restored as the active selection grows and shrinks.
And one for onChange, that is updated after onChange is fired.
Added m_activeSelectionState to keep track of whether the current drag selection is selecting or deselecting.
* html/HTMLSelectElement.cpp:
(WebCore::HTMLSelectElement::HTMLSelectElement): Initialized new variables.
(WebCore::HTMLSelectElement::setSelectedIndex): If needed, initialize m_selectedListIndexBase and m_selectedListIndexExtent.
(WebCore::HTMLSelectElement::dispatchBlurEvent): Only fire the onChange event here for menu lists.
(WebCore::HTMLSelectElement::listBoxDefaultEventHandler): Updates base and extent variables for mouse and key events.
(WebCore::HTMLSelectElement::setBase): Added. Also caches the selection state.
(WebCore::HTMLSelectElement::setExtent): Added.
(WebCore::HTMLSelectElement::updateListBoxSelection): Added.
(WebCore::HTMLSelectElement::listBoxOnChange): Added.
* rendering/RenderListBox.cpp:
(WebCore::RenderListBox::updateFromElement): Only scroll to reveal the first index if both the first and last indices aren't visible.
(WebCore::RenderListBox::listIndexAtOffset): Added. Replaces optionAtPoint, which is no longer used.
(WebCore::RenderListBox::autoscroll): Now sets the selection using the select's base and extent.
(WebCore::RenderListBox::stopAutoscroll): Added. Tells the select element to fire onChange. This is needed because the autoscroll can end from a mouseUp
outside of the list box, and the select element won't get a mouseUp event directly. But the frame will stop the autoscroll at that point, and now we can
notify the select element from here.
(WebCore::RenderListBox::scrollToRevealElementAtListIndex): Checks new listIndexIsVisible method.
(WebCore::RenderListBox::listIndexIsVisible): Added.
(WebCore::RenderListBox::valueChanged): Removed unnecessary printf.
* page/Frame.cpp: (WebCore::Frame::stopAutoscrollTimer): Added rendererIsBeingDestroyed argument, so when the renderer calls this during destruction,
we don't try to use the pointer to that renderer to call stopAutoscroll. This is done so a renderer that's still alive has a chance to do some cleanup after autoscroll.
* rendering/RenderListBox.h: (WebCore::RenderListBox::shouldAutoscroll): Always returns true now, since we're also updating selection from the autoscroll timer.
* rendering/RenderObject.h: (WebCore::RenderObject::stopAutoscroll): Added.
* rendering/RenderObject.cpp: (WebCore::RenderObject::destroy): Calls stopAutoscrollTimer with rendererIsBeingDestroyed argument.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17498
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bdakin [Tue, 31 Oct 2006 21:55:43 +0000 (21:55 +0000)]
Fixing typo in ChangeLog. This is the last one, I swear.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17496
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bdakin [Tue, 31 Oct 2006 21:53:10 +0000 (21:53 +0000)]
Forgot to check this in a minute ago. Oops!! Thanks Mitz!
* rendering/HitTestRequest.h: Added.
(WebCore::HitTestRequest::HitTestRequest):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17495
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bdakin [Tue, 31 Oct 2006 21:48:20 +0000 (21:48 +0000)]
WebCore:
Reviewed by Maciej.
Fix for http://bugs.webkit.org/show_bug.cgi?id=11461 HitTestResult
should be split into HitTestRequest and HitTestResult
This patch creates a new struct called HitTestRequest that holds
the three boolean values (readonly, active, and mouseMove) that
were formerly a part of HitTestRequest. all hitTest() and
nodeAtPoint() functions now take a HitTestRequest in addition to
the HitTestResult.
WebKit:
Reviewed by Maciej.
Small tweaks to WebKit because of http://bugs.webkit.org/
show_bug.cgi?id=11461 HitTestResult should be split into
HitTestRequest and HitTestResult
* WebKit.xcodeproj/project.pbxproj:
* WebView/WebHTMLView.m:
(-[WebHTMLView elementAtPoint:allowShadowContent:]): The
HitTestResult initializer now just takes a point.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17494
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
thatcher [Tue, 31 Oct 2006 21:03:24 +0000 (21:03 +0000)]
Reviewed by Maciej.
Bug 11442: [CSS 3] support for cursor: all-scroll
http://bugs.webkit.org/show_bug.cgi?id=11442
* css/CSSComputedStyleDeclaration.cpp:
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
* css/CSSValueKeywords.in:
* css/cssparser.cpp:
(WebCore::CSSParser::parseValue):
* page/FrameView.cpp:
(WebCore::selectCursor):
* rendering/RenderStyle.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17493
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
oliver [Tue, 31 Oct 2006 20:56:47 +0000 (20:56 +0000)]
2006-10-31 Oliver Hunt <oliver@apple.com>
Reviewed by Geoff.
Converting Obj-C++ to C++ in kcanvas
* WebCore.xcodeproj/project.pbxproj:
* kcanvas/device/quartz/KCanvasFilterQuartz.h:
* kcanvas/device/quartz/KCanvasFilterQuartz.mm:
* kcanvas/device/quartz/KCanvasItemQuartz.cpp: Added.
* kcanvas/device/quartz/KCanvasItemQuartz.mm: Removed.
* kcanvas/device/quartz/KRenderingDeviceQuartz.cpp: Added.
* kcanvas/device/quartz/KRenderingDeviceQuartz.h:
* kcanvas/device/quartz/KRenderingDeviceQuartz.mm: Removed.
* kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm:
* kcanvas/device/quartz/KRenderingPaintServerQuartz.h:
* kcanvas/device/quartz/QuartzSupport.cpp: Added.
* kcanvas/device/quartz/QuartzSupport.h:
* kcanvas/device/quartz/QuartzSupport.mm: Removed.
* platform/graphics/svg/cg/SVGResourceClipperCg.cpp: Added.
(WebCore::SVGResourceClipper::applyClip):
* platform/graphics/svg/cg/SVGResourceClipperCg.mm: Removed.
* platform/graphics/svg/cg/SVGResourceImageCg.cpp: Added.
* platform/graphics/svg/cg/SVGResourceImageCg.mm: Removed.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17492
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
oliver [Tue, 31 Oct 2006 20:52:06 +0000 (20:52 +0000)]
2006-10-31 Oliver Hunt <oliver@apple.com>
Reviewed by Geoff.
Adding definition for PLATFORM(CI)
* wtf/Platform.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17491
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
justing [Tue, 31 Oct 2006 20:34:28 +0000 (20:34 +0000)]
LayoutTests:
Reviewed by harrison
* editing/execCommand/create-list-1.html: Removed.
* editing/execCommand/create-list-with-hr-expected.checksum:
* editing/execCommand/create-list-with-hr-expected.png:
* editing/execCommand/create-list-with-hr-expected.txt:
* editing/execCommand/remove-list-1-expected.checksum:
* editing/execCommand/remove-list-1-expected.png:
* editing/execCommand/remove-list-1-expected.txt:
* fast/text/attributed-substring-from-range-001-expected.txt:
WebCore:
Reviewed by harrison
<rdar://problem/
4808375>
REGRESSION: TextIterator slowed down, affecting Find on Page & Copy (etc.) [11460}
Completely back out r17276 because of performance issues.
* editing/TextIterator.cpp:
(WebCore::TextIterator::TextIterator):
(WebCore::TextIterator::advance):
(WebCore::TextIterator::handleTextNode):
(WebCore::TextIterator::handleTextBox):
(WebCore::TextIterator::handleReplacedElement):
(WebCore::TextIterator::handleNonTextNode):
(WebCore::TextIterator::exitNode):
(WebCore::TextIterator::emitCharacter):
(WebCore::TextIterator::range):
(WebCore::SimplifiedBackwardsTextIterator::SimplifiedBackwardsTextIterator):
(WebCore::SimplifiedBackwardsTextIterator::advance):
(WebCore::SimplifiedBackwardsTextIterator::handleTextNode):
(WebCore::SimplifiedBackwardsTextIterator::handleReplacedElement):
(WebCore::SimplifiedBackwardsTextIterator::emitCharacter):
(WebCore::SimplifiedBackwardsTextIterator::emitNewline):
(WebCore::SimplifiedBackwardsTextIterator::range):
(WebCore::CharacterIterator::range):
(WebCore::TextIterator::rangeFromLocationAndLength):
* editing/TextIterator.h:
(WebCore::TextIterator::atEnd):
(WebCore::SimplifiedBackwardsTextIterator::atEnd):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17490
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
thatcher [Tue, 31 Oct 2006 20:01:20 +0000 (20:01 +0000)]
Build fix. Generated headers need to be added to 'Copy Generated Headers' and not 'Copy Headers'.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17489
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Tue, 31 Oct 2006 19:31:41 +0000 (19:31 +0000)]
WebCore:
Reviewed by Brady.
- got "action dictionary" code out of FrameLoader,
replacing with a class called NavigationAction
* loader/DocumentLoader.h: Changed m_triggeringAction to a NavigationAction.
* loader/mac/DocumentLoaderMac.mm:
(WebCore::DocumentLoader::triggeringAction): Ditto.
(WebCore::DocumentLoader::setTriggeringAction): Ditto.
* loader/FrameLoader.h: Changed action parameters to NavigationAction.
* loader/FrameLoaderClient.h: Changed action parameters to NavigationAction.
Removed elementForEvent.
* loader/mac/FrameLoaderMac.mm:
(WebCore::FrameLoader::load): Ditto.
(WebCore::FrameLoader::reload): Ditto.
(WebCore::FrameLoader::checkNewWindowPolicy): Ditto.
(WebCore::FrameLoader::checkNavigationPolicy): Ditto.
(WebCore::FrameLoader::continueLoadAfterNewWindowPolicy): Ditto.
(WebCore::FrameLoader::post): Ditto.
* loader/NavigationAction.h: Added.
* loader/NavigationAction.cpp: Added.
* loader/mac/NavigationActionMac.mm: Added.
* loader/mac/MainResourceLoaderMac.mm: Fixed copyright.
* WebCore.xcodeproj/project.pbxproj: Updated for new files.
* WebCore.exp: Updated.
WebKit:
Reviewed by Brady.
- got "action dictionary" code out of FrameLoader,
replacing with a class called NavigationAction
* WebCoreSupport/WebFrameLoaderClient.h: Changed parameter types to NavigationAction.
Made elementForEvent non-virtual. Added actionDictionary function.
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction): Changed parameter type,
and used actionDictionary to make the action dictionary.
(WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction): Ditto.
(WebFrameLoaderClient::actionDictionary): Added. Code that was originally in WebCore
that creates the action dictionary (from a NavigationAction).
* WebView/WebFrame.mm: (-[WebFrame _loadItem:withLoadType:]): Use NavigationAction
instead of a dictionary for the action parameters.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17488
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
sfalken [Tue, 31 Oct 2006 19:19:42 +0000 (19:19 +0000)]
2006-10-31 Steve Falkenburg <sfalken@apple.com>
Reviewed by Adam.
Build fix
* platform/win/CookieJarWin.cpp:
(WebCore::cookies):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17487
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aroben [Tue, 31 Oct 2006 19:03:15 +0000 (19:03 +0000)]
Reviewed by Maciej. Landed by Adam.
Fixes: http://bugs.webkit.org/show_bug.cgi?id=11463
Move KCanvasTreeDebug into rendering, named as SVGRenderTreeAsText.*,
as dicussed with Dave. Also kill the outdated DESIGN document.
* CMakeLists.txt:
* WebCore.xcodeproj/project.pbxproj:
* kcanvas/DESIGN: Removed.
* kcanvas/KCanvasFilters.cpp:
* kcanvas/KCanvasTreeDebug.cpp: Moved to rendering/SVGRenderTreeAsText
* kcanvas/KCanvasTreeDebug.h: Ditto.
* kcanvas/device/KRenderingPaintServerGradient.cpp:
* kcanvas/device/KRenderingPaintServerPattern.cpp:
* kcanvas/device/KRenderingPaintServerSolid.cpp:
* platform/graphics/svg/SVGResourceClipper.cpp:
* rendering/RenderTreeAsText.cpp:
* rendering/SVGRenderTreeAsText.cpp: Added.
* rendering/SVGRenderTreeAsText.h: Added.
(WebCore::operator<<):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17486
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap [Tue, 31 Oct 2006 18:43:09 +0000 (18:43 +0000)]
2006-10-31 MorganL <morganl.webkit@yahoo.com>
Reviewed by Maciej.
Fixes http://bugs.webkit.org/show_bug.cgi?id=11286
Includes some CRLF -> LF fixups.
* platform/win/CookieJarWin.cpp:
(WebCore::cookies):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17485
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aroben [Tue, 31 Oct 2006 18:19:14 +0000 (18:19 +0000)]
Reviewed by Steve.
Fix some incorrect forward declarations.
* loader/FrameLoader.h:
* page/Frame.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17484
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap [Tue, 31 Oct 2006 18:16:08 +0000 (18:16 +0000)]
2006-10-31 Vladimir Olexa <vladimir.olexa@gmail.com>
Reviewed by Geoff.
http://bugs.webkit.org/show_bug.cgi?id=4166
Function object does not support caller property
Test: fast/js/caller-property.html
* kjs/function.cpp:
(KJS::FunctionImp::callerGetter): added
(KJS::FunctionImp::getOwnPropertySlot): added if statement to handle callerGetter()
* kjs/function.h: added callerGetter() declaration
* kjs/identifier.h: added caller property macro
* tests/mozilla/expected.html:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17483
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mjs [Tue, 31 Oct 2006 17:45:42 +0000 (17:45 +0000)]
Reviewed by Maciej.
- fixed "Stop and reload don't work on the WebView"
http://bugs.webkit.org/show_bug.cgi?id=11285
* COM/WebFrame.cpp:
(WebFrame::stopLoading): Implement.
* COM/WebView.cpp:
(WebView::stopLoading): ditto
(WebView::reload): ditto
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17482
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap [Tue, 31 Oct 2006 17:20:32 +0000 (17:20 +0000)]
2006-10-31 Simon Hausmann <hausmann@kde.org>
Reviewed by Maciej.
* QtLauncher/main.cpp:
(main): Declare our frame as main frame to the Page object.
Fixes crashes on various web sites
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17481
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Tue, 31 Oct 2006 16:49:59 +0000 (16:49 +0000)]
* DumpRenderTree/DumpRenderTree.m: Instead of allocating a single local
pasteboard, allocate any number of local pasteboards.
(main): Allocate the dictionary of pasteboards.
(+[DumpRenderTreePasteboard _pasteboardWithName:]): Allocate a pasteboard,
given a name.
(+[LocalPasteboard alloc]): Added, so we don't have to call NSAllocateObject
explicitly elsewhere.
(-[LocalPasteboard addTypes:owner:]): Added a check that the owner responds
to the selector rather than calling unconditionally.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17480
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Tue, 31 Oct 2006 16:40:17 +0000 (16:40 +0000)]
* WebCore.xcodeproj/project.pbxproj: Change GraphicsTypes.h to a private header to
try to fix the build on the buildbot.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17479
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Tue, 31 Oct 2006 16:16:01 +0000 (16:16 +0000)]
* bridge/mac/FrameMac.mm:
(WebCore::FrameMac::advanceToNextMisspelling): Build fix for release Tiger builds.
(WebCore::FrameMac::markMisspellings): Ditto.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17478
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
sullivan [Tue, 31 Oct 2006 14:26:46 +0000 (14:26 +0000)]
* bridge/mac/FrameMac.mm:
(WebCore::FrameMac::advanceToNextMisspelling):
build fix: needed #ifndef BUILDING_ON_TIGER in one more place
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17477
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
sullivan [Tue, 31 Oct 2006 14:18:37 +0000 (14:18 +0000)]
Reviewed by Adam Roben
- fixes <rdar://problem/
4804614> Bad grammar ranges are not visibly marked
This patch introduces much of the guts of grammar checking, though still not enough to actually
check grammar sensibly, due to:
<rdar://problem/
4811175> Many false reports of bad grammar appear, caused by insufficient
context passed to grammar checker
* platform/Logging.h:
* platform/Logging.cpp:
new log channel SpellingAndGrammar
* bridge/mac/WebCorePageBridge.mm:
(initializeLoggingChannelsIfNecessary):
initialize new log channel
* bridge/mac/FrameMac.mm:
(WebCore::FrameMac::advanceToNextMisspelling):
Compute bad grammar range when computing misspelling range. Find first detailed grammar range from the
set NSSpellChecker determines. Compare it with misspelling range to see which is earliest (or shortest
in the event of a tie), and do further processing with that one (select range; create marker that
causes range to be visibly marked with a funky underline; update spelling panel appropriately).
(WebCore::FrameMac::markMisspellings):
More or less the same types of changes as in advanceToNextMisspelling The loops are structured just
differently enough to make sharing code between these two functions a little tricky, so I decided to
save that for a later patch.
(WebCore::FrameMac::respondToChangedSelection):
remove grammar markers when we remove spelling markers
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17476
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bdash [Tue, 31 Oct 2006 12:36:32 +0000 (12:36 +0000)]
2006-10-31 Nikolas Zimmermann <zimmermann@kde.org>
Reviewed by Mitz.
Fix Qt/Linux build with older gcc3.3.4.
* bindings/js/kjs_window.cpp:
(KJS::WindowFunc::callAsFunction):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17475
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bdash [Tue, 31 Oct 2006 12:24:43 +0000 (12:24 +0000)]
Remove obsolete KCanvasClipperQt.h which should have been removed in r17467.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17474
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bdash [Tue, 31 Oct 2006 11:47:47 +0000 (11:47 +0000)]
2006-10-31 Zack Rusin <zack@kde.org>
Reviewed by Mitz.
Fix the Qt build after last nights changes.
* platform/qt/FrameQt.cpp:
* platform/qt/EditorClientQt.h:
* platform/qt/EditorClientQt.cpp:
* platform/graphics/svg/qt/SVGResourceImageQt.cpp:
* platform/graphics/svg/qt/SVGResourceClipperQt.cpp:
* CMakeLists.txt:
* kcanvas/device/qt/KRenderingDeviceQt.cpp:
2006-10-31 Zack Rusin <zack@kde.org>
Reviewed by Mitz.
Fix the Qt build after last nights changes.
* QtLauncher/CMakeLists.txt:
* WebKitPart/CMakeLists.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17473
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Tue, 31 Oct 2006 05:50:14 +0000 (05:50 +0000)]
- fixed build
* DumpRenderTree/DumpRenderTree.m: (-[LocalPasteboard setString:forType:]):
Don't use CFPasteboard.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17472
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Tue, 31 Oct 2006 05:46:02 +0000 (05:46 +0000)]
Reviewed by Anders.
- remove BrowserExtension
* WebCore.vcproj/WebCore/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* bindings/js/kjs_window.cpp:
(KJS::createNewWindow):
(KJS::WindowFunc::callAsFunction):
* bridge/BrowserExtension.h: Removed.
* bridge/mac/BrowserExtensionMac.h: Removed.
* bridge/mac/BrowserExtensionMac.mm: Removed.
* bridge/mac/FrameMac.mm:
(WebCore::FrameMac::FrameMac):
(WebCore::FrameMac::submitForm):
(WebCore::FrameMac::urlSelected):
* bridge/win/BrowserExtensionWin.cpp: Removed.
* bridge/win/BrowserExtensionWin.h: Removed.
* bridge/win/FrameWin.cpp:
(WebCore::FrameWin::FrameWin):
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::createWindow):
* loader/FrameLoader.h:
* loader/icon/IconLoader.cpp:
* loader/mac/FrameLoaderMac.mm:
(WebCore::FrameLoader::safeLoad):
(WebCore::FrameLoader::load):
(WebCore::FrameLoader::createWindow):
* page/Frame.cpp:
(WebCore::Frame::urlSelected):
(WebCore::Frame::requestFrame):
(WebCore::Frame::submitForm):
(WebCore::Frame::scheduleHistoryNavigation):
(WebCore::Frame::redirectionTimerFired):
* page/Frame.h:
* page/FrameLoadRequest.h:
(WebCore::FrameLoadRequest::FrameLoadRequest):
(WebCore::FrameLoadRequest::isEmpty):
(WebCore::FrameLoadRequest::resourceRequest):
(WebCore::FrameLoadRequest::frameName):
(WebCore::FrameLoadRequest::setFrameName):
* page/FramePrivate.h:
(WebCore::FramePrivate::FramePrivate):
(WebCore::FramePrivate::~FramePrivate):
* platform/gdk/BrowserExtensionGdk.h: Removed.
* platform/gdk/FrameGdk.cpp:
(WebCore::FrameGdk::FrameGdk):
* platform/gdk/TemporaryLinkStubs.cpp:
* platform/network/ResourceRequest.h:
(WebCore::ResourceRequest::isEmpty):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17471
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Tue, 31 Oct 2006 05:45:25 +0000 (05:45 +0000)]
* Plugins/WebBaseNetscapePluginView.mm:
(-[WebBaseNetscapePluginView evaluateJavaScriptPluginRequest:]):
Fix comment.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17470
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
thatcher [Tue, 31 Oct 2006 05:29:07 +0000 (05:29 +0000)]
Reviewed by Tim H.
Fixes: http://bugs.webkit.org/show_bug.cgi?id=11353
* Drosera/debugger.js: ParsedURL() object now recognizes local files
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17469
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Tue, 31 Oct 2006 04:48:08 +0000 (04:48 +0000)]
Reviewed by Tim Hatcher.
* DumpRenderTree/DumpRenderTree.m: Changed to allocate a local pasteboard.
This should make our buildbot tests no longer need a pasteboard server.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17468
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
oliver [Tue, 31 Oct 2006 04:17:43 +0000 (04:17 +0000)]
2006-10-31 Nikolas Zimmermann <zimmermann@kde.org>
Reviewed by Oliver.
Modified from original due to earlier reversion
Fixes: http://bugs.webkit.org/show_bug.cgi?id=11436
Better SVG integration in WebKit, Part I.
The patch is mostly about creating a new platform/graphics directory, and
moving the kcanvas resources (clipper/masker/marker) there (in svg budir),
with a new name (KCanvasClipper -> SVGResourceClipper). Also fix several ownership
issues, by using ref counting (the SVG classes now store RefPtrs to the resources).
KCanvasFilters is still left in kcanvas/ subdirectory, to be converted in a next patch.
All details of the patch, and upcoming patches can be found in the bug report.
* CMakeLists.txt:
* WebCore.xcodeproj/project.pbxproj:
* graphics/svg/SVGResource.cpp: Removed.
* graphics/svg/SVGResourceClipper.cpp: Removed.
* graphics/svg/SVGResourceClipper.h: Removed.
* graphics/svg/SVGResourceImage.h: Removed.
* graphics/svg/SVGResourceListener.h: Removed.
* graphics/svg/SVGResourceMarker.cpp: Removed.
* graphics/svg/SVGResourceMarker.h: Removed.
* graphics/svg/SVGResourceMasker.cpp: Removed.
* graphics/svg/SVGResourceMasker.h: Removed.
* kcanvas/KCanvasClipper.cpp: Removed.
* kcanvas/KCanvasClipper.h: Removed.
* kcanvas/KCanvasCreator.cpp: Removed.
* kcanvas/KCanvasCreator.h: Removed.
* kcanvas/KCanvasFilters.cpp:
(WebCore::getFilterById):
* kcanvas/KCanvasFilters.h:
* kcanvas/KCanvasImage.h: Removed.
* kcanvas/KCanvasMarker.cpp: Removed.
* kcanvas/KCanvasMarker.h: Removed.
* kcanvas/KCanvasMasker.cpp: Removed.
* kcanvas/KCanvasMasker.h: Removed.
* kcanvas/KCanvasResource.cpp: Removed.
* kcanvas/KCanvasResource.h: Removed.
* kcanvas/KCanvasResourceListener.h: Removed.
* kcanvas/KCanvasTreeDebug.cpp:
(WebCore::writeRenderResources):
* kcanvas/device/KRenderingDevice.h:
* kcanvas/device/KRenderingPaintServer.h:
(WebCore::KRenderingPaintServer::KRenderingPaintServer):
* kcanvas/device/KRenderingPaintServerGradient.cpp:
(WebCore::KRenderingPaintServerGradient::listener):
(WebCore::KRenderingPaintServerGradient::setListener):
* kcanvas/device/KRenderingPaintServerGradient.h:
* kcanvas/device/KRenderingPaintServerPattern.cpp:
(WebCore::KRenderingPaintServerPattern::KRenderingPaintServerPattern):
(WebCore::KRenderingPaintServerPattern::~KRenderingPaintServerPattern):
(WebCore::KRenderingPaintServerPattern::tile):
(WebCore::KRenderingPaintServerPattern::setTile):
(WebCore::KRenderingPaintServerPattern::listener):
(WebCore::KRenderingPaintServerPattern::setListener):
* kcanvas/device/KRenderingPaintServerPattern.h:
* kcanvas/device/KRenderingPaintServerSolid.h:
* kcanvas/device/qt/KCanvasClipperQt.cpp: Removed.
* kcanvas/device/qt/KCanvasClipperQt.h:
* kcanvas/device/qt/KRenderingDeviceQt.cpp:
(WebCore::KRenderingDeviceQt::contextForImage):
(WebCore::KRenderingDeviceQt::createResource):
(WebCore::KRenderingDeviceQt::createPaintServer):
* kcanvas/device/qt/KRenderingDeviceQt.h:
* kcanvas/device/qt/KRenderingPaintServerGradientQt.cpp:
* kcanvas/device/qt/KRenderingPaintServerPatternQt.cpp:
* kcanvas/device/qt/KRenderingPaintServerQt.cpp:
* kcanvas/device/qt/KRenderingPaintServerSolidQt.cpp:
* kcanvas/device/qt/RenderPathQt.h: Removed.
* kcanvas/device/quartz/KCanvasFilterQuartz.mm:
(WebCore::KCanvasFilterQuartz::getCIFilterStack):
* kcanvas/device/quartz/KCanvasItemQuartz.mm:
* kcanvas/device/quartz/KCanvasMaskerQuartz.h: Removed.
* kcanvas/device/quartz/KCanvasMaskerQuartz.mm: Removed.
* kcanvas/device/quartz/KCanvasResourcesQuartz.h: Removed.
* kcanvas/device/quartz/KCanvasResourcesQuartz.mm: Removed.
* kcanvas/device/quartz/KRenderingDeviceQuartz.h:
* kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
(WebCore::KRenderingDeviceQuartz::contextForImage):
(WebCore::KRenderingDeviceQuartz::createPaintServer):
(WebCore::KRenderingDeviceQuartz::createResource):
* kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm:
(WebCore::KRenderingPaintServerGradientQuartz::KRenderingPaintServerGradientQuartz):
(WebCore::KRenderingPaintServerGradientQuartz::~KRenderingPaintServerGradientQuartz):
(WebCore::KRenderingPaintServerGradientQuartz::setup):
(WebCore::KRenderingPaintServerGradientQuartz::teardown):
* kcanvas/device/quartz/KRenderingPaintServerQuartz.h:
* kcanvas/device/quartz/KRenderingPaintServerQuartz.mm:
(WebCore::patternCallback):
(WebCore::KRenderingPaintServerPatternQuartz::setup):
* kcanvas/device/quartz/QuartzSupport.mm:
* ksvg2/misc/KCanvasRenderingStyle.cpp:
(WebCore::sharedSolidPaintServer):
* ksvg2/svg/SVGClipPathElement.cpp:
(WebCore::SVGClipPathElement::SVGClipPathElement):
(WebCore::SVGClipPathElement::~SVGClipPathElement):
(WebCore::SVGClipPathElement::canvasResource):
* ksvg2/svg/SVGClipPathElement.h:
* ksvg2/svg/SVGFEImageElement.cpp:
* ksvg2/svg/SVGFilterElement.cpp:
(WebCore::SVGFilterElement::SVGFilterElement):
(WebCore::SVGFilterElement::~SVGFilterElement):
(WebCore::SVGFilterElement::canvasResource):
* ksvg2/svg/SVGFilterElement.h:
* ksvg2/svg/SVGGradientElement.cpp:
(WebCore::SVGGradientElement::SVGGradientElement):
(WebCore::SVGGradientElement::~SVGGradientElement):
(WebCore::SVGGradientElement::canvasResource):
(WebCore::SVGGradientElement::resourceNotification):
* ksvg2/svg/SVGGradientElement.h:
* ksvg2/svg/SVGImageElement.cpp:
* ksvg2/svg/SVGLinearGradientElement.cpp:
(WebCore::SVGLinearGradientElement::buildGradient):
* ksvg2/svg/SVGLinearGradientElement.h:
* ksvg2/svg/SVGMarkerElement.cpp:
(WebCore::SVGMarkerElement::SVGMarkerElement):
(WebCore::SVGMarkerElement::~SVGMarkerElement):
(WebCore::SVGMarkerElement::canvasResource):
* ksvg2/svg/SVGMarkerElement.h:
* ksvg2/svg/SVGMaskElement.cpp:
(WebCore::SVGMaskElement::SVGMaskElement):
(WebCore::SVGMaskElement::~SVGMaskElement):
(WebCore::SVGMaskElement::drawMaskerContent):
(WebCore::SVGMaskElement::canvasResource):
* ksvg2/svg/SVGMaskElement.h:
* ksvg2/svg/SVGPatternElement.cpp:
(WebCore::SVGPatternElement::SVGPatternElement):
(WebCore::SVGPatternElement::~SVGPatternElement):
(WebCore::SVGPatternElement::fillAttributesFromReferencePattern):
(WebCore::SVGPatternElement::drawPatternContentIntoTile):
(WebCore::SVGPatternElement::canvasResource):
* ksvg2/svg/SVGPatternElement.h:
* ksvg2/svg/SVGRadialGradientElement.cpp:
(WebCore::SVGRadialGradientElement::buildGradient):
* ksvg2/svg/SVGRadialGradientElement.h:
* ksvg2/svg/SVGStyledElement.h:
(WebCore::SVGStyledElement::canvasResource):
* platform/GraphicsContext.cpp: Removed.
* platform/GraphicsContext.h: Removed.
* platform/GraphicsTypes.cpp: Removed.
* platform/GraphicsTypes.h: Removed.
* platform/graphics/GraphicsContext.cpp:
(WebCore::GraphicsContextState::GraphicsContextState):
(WebCore::GraphicsContextPrivate::GraphicsContextPrivate):
(WebCore::GraphicsContext::createGraphicsContextPrivate):
(WebCore::GraphicsContext::destroyGraphicsContextPrivate):
(WebCore::GraphicsContext::save):
(WebCore::GraphicsContext::restore):
(WebCore::GraphicsContext::font):
(WebCore::GraphicsContext::setFont):
(WebCore::GraphicsContext::pen):
(WebCore::GraphicsContext::setPen):
(WebCore::GraphicsContext::setFillColor):
(WebCore::GraphicsContext::fillColor):
(WebCore::GraphicsContext::updatingControlTints):
(WebCore::GraphicsContext::setUpdatingControlTints):
(WebCore::GraphicsContext::setPaintingDisabled):
(WebCore::GraphicsContext::paintingDisabled):
(WebCore::GraphicsContext::drawImage):
(WebCore::GraphicsContext::drawText):
(WebCore::GraphicsContext::drawHighlightForText):
(WebCore::GraphicsContext::initFocusRing):
(WebCore::GraphicsContext::clearFocusRing):
(WebCore::GraphicsContext::focusRingBoundingRect):
(WebCore::GraphicsContext::addFocusRingRect):
(WebCore::GraphicsContext::focusRingWidth):
(WebCore::GraphicsContext::focusRingOffset):
(WebCore::GraphicsContext::focusRingRects):
(WebCore::GraphicsContext::drawTiledImage):
* platform/graphics/GraphicsContext.h:
* platform/graphics/GraphicsTypes.cpp:
(WebCore::):
(WebCore::parseCompositeOperator):
(WebCore::compositeOperatorName):
(WebCore::parseLineCap):
(WebCore::lineCapName):
(WebCore::parseLineJoin):
(WebCore::lineJoinName):
* platform/graphics/GraphicsTypes.h:
(WebCore::):
* platform/graphics/svg/SVGResource.cpp: Added.
(WebCore::SVGResource::SVGResource):
(WebCore::SVGResource::~SVGResource):
(WebCore::SVGResource::invalidate):
(WebCore::SVGResource::addClient):
(WebCore::SVGResource::clients):
(WebCore::SVGResource::idInRegistry):
(WebCore::SVGResource::setIdInRegistry):
(WebCore::SVGResource::externalRepresentation):
(WebCore::getResourceById):
(WebCore::getPaintServerById):
(WebCore::operator<<):
* platform/graphics/svg/SVGResource.h: Added.
(WebCore::):
(WebCore::SVGResource::isPaintServer):
(WebCore::SVGResource::isFilter):
(WebCore::SVGResource::isClipper):
(WebCore::SVGResource::isMarker):
(WebCore::SVGResource::isMasker):
(WebCore::SVGResourceListener::~SVGResourceListener):
* platform/graphics/svg/SVGResourceClipper.cpp: Added.
(WebCore::SVGResourceClipper::SVGResourceClipper):
(WebCore::SVGResourceClipper::~SVGResourceClipper):
(WebCore::SVGResourceClipper::resetClipData):
(WebCore::SVGResourceClipper::addClipData):
(WebCore::SVGResourceClipper::clipData):
(WebCore::SVGResourceClipper::externalRepresentation):
(WebCore::operator<<):
(WebCore::getClipperById):
* platform/graphics/svg/SVGResourceClipper.h: Added.
(WebCore::ClipDataList::addPath):
(WebCore::SVGResourceClipper::isClipper):
* platform/graphics/svg/SVGResourceImage.h: Added.
* platform/graphics/svg/SVGResourceMarker.cpp: Added.
(WebCore::SVGResourceMarker::SVGResourceMarker):
(WebCore::SVGResourceMarker::~SVGResourceMarker):
(WebCore::SVGResourceMarker::setMarker):
(WebCore::SVGResourceMarker::setRef):
(WebCore::SVGResourceMarker::draw):
(WebCore::SVGResourceMarker::externalRepresentation):
(WebCore::getMarkerById):
* platform/graphics/svg/SVGResourceMarker.h: Added.
(WebCore::SVGResourceMarker::refX):
(WebCore::SVGResourceMarker::refY):
(WebCore::SVGResourceMarker::setAngle):
(WebCore::SVGResourceMarker::setAutoAngle):
(WebCore::SVGResourceMarker::angle):
(WebCore::SVGResourceMarker::setUseStrokeWidth):
(WebCore::SVGResourceMarker::useStrokeWidth):
(WebCore::SVGResourceMarker::isMarker):
* platform/graphics/svg/SVGResourceMasker.cpp: Added.
(WebCore::SVGResourceMasker::SVGResourceMasker):
(WebCore::SVGResourceMasker::~SVGResourceMasker):
(WebCore::SVGResourceMasker::setMask):
(WebCore::SVGResourceMasker::mask):
(WebCore::SVGResourceMasker::externalRepresentation):
(WebCore::getMaskerById):
* platform/graphics/svg/SVGResourceMasker.h: Added.
(WebCore::SVGResourceMasker::isMasker):
* platform/graphics/svg/cg/SVGResourceClipperCg.mm: Added.
(WebCore::SVGResourceClipper::applyClip):
* platform/graphics/svg/cg/SVGResourceImageCg.mm: Added.
(WebCore::SVGResourceImage::SVGResourceImage):
(WebCore::SVGResourceImage::~SVGResourceImage):
(WebCore::SVGResourceImage::init):
(WebCore::SVGResourceImage::size):
(WebCore::SVGResourceImage::cgLayer):
(WebCore::SVGResourceImage::setCGLayer):
* platform/graphics/svg/cg/SVGResourceMaskerCg.mm: Added.
(WebCore::applyLuminanceToAlphaFilter):
(WebCore::applyExpandAlphatoGrayscaleFilter):
(WebCore::transformImageIntoGrayscaleMask):
(WebCore::SVGResourceMasker::applyMask):
* platform/graphics/svg/qt/SVGResourceClipperQt.cpp: Added.
(WebCore::SVGResourceClipper::applyClip):
* platform/graphics/svg/qt/SVGResourceImageQt.cpp: Added.
(WebCore::SVGResourceImage::init):
(WebCore::SVGResourceImage::size):
* platform/graphics/svg/qt/SVGResourceMaskerQt.cpp: Added.
(WebCore::SVGResourceMasker::applyMask):
* platform/qt/GraphicsContextQt.cpp:
* rendering/RenderPath.cpp:
(WebCore::RenderPath::paint):
(WebCore::DrawMarkersData::DrawMarkersData):
(WebCore::RenderPath::drawMarkersIfNeeded):
* rendering/RenderSVGContainer.cpp:
(WebCore::RenderSVGContainer::paint):
* rendering/RenderSVGImage.cpp:
(WebCore::RenderSVGImage::paint):
* rendering/SVGInlineFlowBox.cpp:
(WebCore::paintSVGInlineFlow):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17467
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
sullivan [Tue, 31 Oct 2006 03:53:05 +0000 (03:53 +0000)]
Reviewed by Brady
- minor cleanup to make future patches clearer
* bridge/mac/FrameMac.mm:
(WebCore::FrameMac::advanceToNextMisspelling):
renamed misspelling to misspellingNSRange for clarity; changed > 0 test to == 0 test
with "continue" to better match structure of similar code in markMisspellings; a few
other style tweaks.
(WebCore::FrameMac::markMisspellings):
renamed misspelling to misspellingNSRange for clarity; removed unnecessary braces around
a block just after a break and outdented accordingly.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17466
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren [Tue, 31 Oct 2006 03:23:35 +0000 (03:23 +0000)]
Reviewed by Beth.
Reorganized project file into Delegates and Controllers groups, and split
UIDelegate stuff into a UIDelegate class.
A little birdy told me that I might end up adding some UIDelegate methods
to DRT soon.
* DumpRenderTree/DumpRenderTree.m:
(main):
(runTest):
* DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17465
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
sullivan [Tue, 31 Oct 2006 02:54:41 +0000 (02:54 +0000)]
WebCore:
Reviewed by Geoff Garen
WebCore part of change to push the code that updates the spelling panel
into WebCore, in preparation for some grammar-checking stuff.
* bridge/mac/FrameMac.h:
* bridge/mac/FrameMac.mm:
(WebCore::FrameMac::advanceToNextMisspelling):
no more return value for this method, and update the spelling panel with
the misspelled word here rather than in the WebKit callers.
WebKit:
Reviewed by Geoff Garen
* WebView/WebHTMLView.m:
(-[NSArray checkSpelling:]):
removed code to update spelling panel; WebCore handles that now
(-[NSArray showGuessPanel:]):
ditto
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17464
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
sullivan [Tue, 31 Oct 2006 02:36:35 +0000 (02:36 +0000)]
* English.lproj/WebViewEditingContextMenu.nib/info.nib:
* English.lproj/WebViewEditingContextMenu.nib/objects.nib:
Another wording change to match framework, post-Tiger:
"Check Spelling" -> "Check Document Now"
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17463
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
oliver [Tue, 31 Oct 2006 02:33:47 +0000 (02:33 +0000)]
liver Hunt <oliver@apple.com>
Reviewed by Anders.
Roll out last patch
* CMakeLists.txt:
* ChangeLog:
* WebCore.xcodeproj/project.pbxproj:
* graphics/svg/SVGResource.cpp:
* graphics/svg/SVGResourceClipper.cpp:
* graphics/svg/SVGResourceClipper.h:
* graphics/svg/SVGResourceImage.h:
* graphics/svg/SVGResourceListener.h:
* graphics/svg/SVGResourceMarker.cpp:
* graphics/svg/SVGResourceMarker.h:
* graphics/svg/SVGResourceMasker.cpp:
* graphics/svg/SVGResourceMasker.h:
* kcanvas/KCanvasClipper.cpp: Added.
(WebCore::operator<<):
(WebCore::KCanvasClipper::KCanvasClipper):
(WebCore::KCanvasClipper::~KCanvasClipper):
(WebCore::KCanvasClipper::resetClipData):
(WebCore::KCanvasClipper::addClipData):
(WebCore::KCanvasClipper::clipData):
(WebCore::KCanvasClipper::externalRepresentation):
(WebCore::getClipperById):
* kcanvas/KCanvasClipper.h: Added.
(WebCore::KCClipData::windRule):
(WebCore::KCClipDataList::KCClipDataList):
(WebCore::KCClipDataList::addPath):
(WebCore::KCanvasClipper::isClipper):
* kcanvas/KCanvasFilters.cpp:
(WebCore::getFilterById):
* kcanvas/KCanvasFilters.h:
* kcanvas/KCanvasImage.h: Added.
(WebCore::KCanvasImage::KCanvasImage):
(WebCore::KCanvasImage::~KCanvasImage):
* kcanvas/KCanvasMarker.cpp: Added.
(WebCore::KCanvasMarker::KCanvasMarker):
(WebCore::KCanvasMarker::~KCanvasMarker):
(WebCore::KCanvasMarker::setMarker):
(WebCore::KCanvasMarker::setRef):
(WebCore::KCanvasMarker::refX):
(WebCore::KCanvasMarker::refY):
(WebCore::KCanvasMarker::setAngle):
(WebCore::KCanvasMarker::angle):
(WebCore::KCanvasMarker::setAutoAngle):
(WebCore::KCanvasMarker::setUseStrokeWidth):
(WebCore::KCanvasMarker::useStrokeWidth):
(WebCore::KCanvasMarker::draw):
(WebCore::KCanvasMarker::externalRepresentation):
(WebCore::getMarkerById):
* kcanvas/KCanvasMarker.h: Added.
(WebCore::KCanvasMarker::isMarker):
* kcanvas/KCanvasMasker.cpp: Added.
(WebCore::KCanvasMasker::KCanvasMasker):
(WebCore::KCanvasMasker::~KCanvasMasker):
(WebCore::KCanvasMasker::setMask):
(WebCore::KCanvasMasker::externalRepresentation):
(WebCore::getMaskerById):
* kcanvas/KCanvasMasker.h: Added.
(WebCore::KCanvasMasker::isMasker):
(WebCore::KCanvasMasker::mask):
* kcanvas/KCanvasResource.cpp: Added.
(WebCore::operator<<):
(WebCore::KCanvasResource::KCanvasResource):
(WebCore::KCanvasResource::~KCanvasResource):
(WebCore::KCanvasResource::addClient):
(WebCore::KCanvasResource::clients):
(WebCore::KCanvasResource::invalidate):
(WebCore::KCanvasResource::idInRegistry):
(WebCore::KCanvasResource::setIdInRegistry):
(WebCore::KCanvasResource::externalRepresentation):
(WebCore::getResourceById):
(WebCore::getPaintServerById):
* kcanvas/KCanvasResource.h:
(WebCore::):
(WebCore::KCanvasResource::isPaintServer):
(WebCore::KCanvasResource::isFilter):
(WebCore::KCanvasResource::isClipper):
(WebCore::KCanvasResource::isMarker):
(WebCore::KCanvasResource::isMasker):
* kcanvas/KCanvasResourceListener.h: Added.
(KCanvasResourceListener::KCanvasResourceListener):
(KCanvasResourceListener::~KCanvasResourceListener):
* kcanvas/KCanvasTreeDebug.cpp:
(WebCore::writeRenderResources):
* kcanvas/device/KRenderingDevice.h:
* kcanvas/device/KRenderingPaintServer.h:
(WebCore::KRenderingPaintServer::KRenderingPaintServer):
(WebCore::KRenderingPaintServer::idInRegistry):
(WebCore::KRenderingPaintServer::setIdInRegistry):
* kcanvas/device/KRenderingPaintServerGradient.cpp:
(WebCore::KRenderingPaintServerGradient::listener):
(WebCore::KRenderingPaintServerGradient::setListener):
* kcanvas/device/KRenderingPaintServerGradient.h:
* kcanvas/device/KRenderingPaintServerPattern.cpp:
(WebCore::KRenderingPaintServerPattern::KRenderingPaintServerPattern):
(WebCore::KRenderingPaintServerPattern::~KRenderingPaintServerPattern):
(WebCore::KRenderingPaintServerPattern::tile):
(WebCore::KRenderingPaintServerPattern::setTile):
(WebCore::KRenderingPaintServerPattern::listener):
(WebCore::KRenderingPaintServerPattern::setListener):
* kcanvas/device/KRenderingPaintServerPattern.h:
* kcanvas/device/KRenderingPaintServerSolid.h:
* kcanvas/device/qt/KCanvasClipperQt.cpp:
(WebCore::KCanvasClipperQt::applyClip):
* kcanvas/device/qt/KCanvasClipperQt.h:
(WebCore::KCanvasClipperQt::KCanvasClipperQt):
* kcanvas/device/qt/KRenderingDeviceQt.cpp:
(WebCore::KRenderingDeviceQt::contextForImage):
(WebCore::KRenderingDeviceQt::createResource):
(WebCore::KRenderingDeviceQt::createPaintServer):
* kcanvas/device/qt/KRenderingDeviceQt.h:
* kcanvas/device/qt/KRenderingPaintServerGradientQt.cpp:
* kcanvas/device/qt/KRenderingPaintServerPatternQt.cpp:
* kcanvas/device/qt/KRenderingPaintServerQt.cpp:
* kcanvas/device/qt/KRenderingPaintServerSolidQt.cpp:
* kcanvas/device/quartz/KCanvasFilterQuartz.mm:
(WebCore::KCanvasFilterQuartz::getCIFilterStack):
* kcanvas/device/quartz/KCanvasItemQuartz.mm:
* kcanvas/device/quartz/KCanvasMaskerQuartz.h:
(WebCore::KCanvasMaskerQuartz::KCanvasMaskerQuartz):
* kcanvas/device/quartz/KCanvasMaskerQuartz.mm:
(WebCore::applyLuminanceToAlphaFilter):
(WebCore::applyExpandAlphatoGrayscaleFilter):
(WebCore::transformImageIntoGrayscaleMask):
(WebCore::KCanvasMaskerQuartz::applyMask):
* kcanvas/device/quartz/KCanvasResourcesQuartz.h:
(WebCore::KCanvasClipperQuartz::KCanvasClipperQuartz):
(WebCore::KCanvasImageQuartz::KCanvasImageQuartz):
(WebCore::KCanvasImageQuartz::init):
(WebCore::KCanvasImageQuartz::size):
* kcanvas/device/quartz/KCanvasResourcesQuartz.mm:
(WebCore::KCanvasClipperQuartz::applyClip):
(WebCore::KCanvasImageQuartz::~KCanvasImageQuartz):
(WebCore::KCanvasImageQuartz::cgLayer):
(WebCore::KCanvasImageQuartz::setCGLayer):
* kcanvas/device/quartz/KRenderingDeviceQuartz.h:
* kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
(WebCore::KRenderingDeviceQuartz::contextForImage):
(WebCore::KRenderingDeviceQuartz::createPaintServer):
(WebCore::KRenderingDeviceQuartz::createResource):
* kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm:
(WebCore::KRenderingPaintServerGradientQuartz::KRenderingPaintServerGradientQuartz):
(WebCore::KRenderingPaintServerGradientQuartz::~KRenderingPaintServerGradientQuartz):
(WebCore::KRenderingPaintServerGradientQuartz::setup):
(WebCore::KRenderingPaintServerGradientQuartz::teardown):
* kcanvas/device/quartz/KRenderingPaintServerQuartz.h:
* kcanvas/device/quartz/KRenderingPaintServerQuartz.mm:
(WebCore::patternCallback):
(WebCore::KRenderingPaintServerPatternQuartz::setup):
* kcanvas/device/quartz/QuartzSupport.mm:
* ksvg2/misc/KCanvasRenderingStyle.cpp:
(WebCore::sharedSolidPaintServer):
* ksvg2/svg/SVGClipPathElement.cpp:
(WebCore::SVGClipPathElement::SVGClipPathElement):
(WebCore::SVGClipPathElement::~SVGClipPathElement):
(WebCore::SVGClipPathElement::canvasResource):
* ksvg2/svg/SVGClipPathElement.h:
* ksvg2/svg/SVGFEImageElement.cpp:
* ksvg2/svg/SVGFilterElement.cpp:
(WebCore::SVGFilterElement::SVGFilterElement):
(WebCore::SVGFilterElement::~SVGFilterElement):
(WebCore::SVGFilterElement::canvasResource):
* ksvg2/svg/SVGFilterElement.h:
* ksvg2/svg/SVGGradientElement.cpp:
(WebCore::SVGGradientElement::SVGGradientElement):
(WebCore::SVGGradientElement::~SVGGradientElement):
(WebCore::SVGGradientElement::canvasResource):
(WebCore::SVGGradientElement::resourceNotification):
* ksvg2/svg/SVGGradientElement.h:
* ksvg2/svg/SVGImageElement.cpp:
* ksvg2/svg/SVGLinearGradientElement.cpp:
(WebCore::SVGLinearGradientElement::buildGradient):
* ksvg2/svg/SVGLinearGradientElement.h:
* ksvg2/svg/SVGMarkerElement.cpp:
(WebCore::SVGMarkerElement::SVGMarkerElement):
(WebCore::SVGMarkerElement::~SVGMarkerElement):
(WebCore::SVGMarkerElement::canvasResource):
* ksvg2/svg/SVGMarkerElement.h:
* ksvg2/svg/SVGMaskElement.cpp:
(WebCore::SVGMaskElement::SVGMaskElement):
(WebCore::SVGMaskElement::~SVGMaskElement):
(WebCore::SVGMaskElement::drawMaskerContent):
(WebCore::SVGMaskElement::canvasResource):
* ksvg2/svg/SVGMaskElement.h:
* ksvg2/svg/SVGPatternElement.cpp:
(WebCore::SVGPatternElement::SVGPatternElement):
(WebCore::SVGPatternElement::~SVGPatternElement):
(WebCore::SVGPatternElement::fillAttributesFromReferencePattern):
(WebCore::SVGPatternElement::drawPatternContentIntoTile):
(WebCore::SVGPatternElement::canvasResource):
* ksvg2/svg/SVGPatternElement.h:
* ksvg2/svg/SVGRadialGradientElement.cpp:
(WebCore::SVGRadialGradientElement::buildGradient):
* ksvg2/svg/SVGRadialGradientElement.h:
* ksvg2/svg/SVGStyledElement.h:
(WebCore::SVGStyledElement::canvasResource):
* platform/GraphicsContext.cpp: Added.
(WebCore::GraphicsContextState::GraphicsContextState):
(WebCore::GraphicsContextPrivate::GraphicsContextPrivate):
(WebCore::GraphicsContext::createGraphicsContextPrivate):
(WebCore::GraphicsContext::destroyGraphicsContextPrivate):
(WebCore::GraphicsContext::save):
(WebCore::GraphicsContext::restore):
(WebCore::GraphicsContext::font):
(WebCore::GraphicsContext::setFont):
(WebCore::GraphicsContext::pen):
(WebCore::GraphicsContext::setPen):
(WebCore::GraphicsContext::setFillColor):
(WebCore::GraphicsContext::fillColor):
(WebCore::GraphicsContext::updatingControlTints):
(WebCore::GraphicsContext::setUpdatingControlTints):
(WebCore::GraphicsContext::setPaintingDisabled):
(WebCore::GraphicsContext::paintingDisabled):
(WebCore::GraphicsContext::drawImage):
(WebCore::GraphicsContext::drawText):
(WebCore::GraphicsContext::drawHighlightForText):
(WebCore::GraphicsContext::initFocusRing):
(WebCore::GraphicsContext::clearFocusRing):
(WebCore::GraphicsContext::focusRingBoundingRect):
(WebCore::GraphicsContext::addFocusRingRect):
(WebCore::GraphicsContext::focusRingWidth):
(WebCore::GraphicsContext::focusRingOffset):
(WebCore::GraphicsContext::focusRingRects):
(WebCore::GraphicsContext::drawTiledImage):
* platform/GraphicsContext.h: Added.
* platform/GraphicsTypes.cpp: Added.
(WebCore::):
(WebCore::parseCompositeOperator):
(WebCore::compositeOperatorName):
(WebCore::parseLineCap):
(WebCore::lineCapName):
(WebCore::parseLineJoin):
(WebCore::lineJoinName):
* platform/GraphicsTypes.h: Added.
(WebCore::):
* platform/graphics/GraphicsContext.cpp:
* platform/graphics/GraphicsContext.h:
* platform/graphics/GraphicsTypes.cpp:
* platform/graphics/GraphicsTypes.h:
* platform/qt/GraphicsContextQt.cpp:
* rendering/RenderPath.cpp:
(WebCore::RenderPath::paint):
(WebCore::DrawMarkersData::DrawMarkersData):
(WebCore::RenderPath::drawMarkersIfNeeded):
* rendering/RenderSVGContainer.cpp:
(WebCore::RenderSVGContainer::paint):
* rendering/RenderSVGImage.cpp:
(WebCore::RenderSVGImage::paint):
* rendering/SVGInlineFlowBox.cpp:
(WebCore::paintSVGInlineFlow):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17462
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
oliver [Tue, 31 Oct 2006 01:46:33 +0000 (01:46 +0000)]
2006-10-31 Nikolas Zimmermann <zimmermann@kde.org>
Reviewed by Oliver.
Fixes: http://bugs.webkit.org/show_bug.cgi?id=11436
Better SVG integration in WebKit, Part I.
The patch is mostly about creating a new platform/graphics directory, and
moving the kcanvas resources (clipper/masker/marker) there (in svg budir),
with a new name (KCanvasClipper -> SVGResourceClipper). Also fix several ownership
issues, by using ref counting (the SVG classes now store RefPtrs to the resources).
KCanvasFilters is still left in kcanvas/ subdirectory, to be converted in a next patch.
All details of the patch, and upcoming patches can be found in the bug report.
* CMakeLists.txt:
* WebCore.xcodeproj/project.pbxproj:
* kcanvas/KCanvasClipper.cpp: Removed.
* kcanvas/KCanvasClipper.h: Removed.
* kcanvas/KCanvasCreator.cpp: Removed.
* kcanvas/KCanvasCreator.h: Removed.
* kcanvas/KCanvasFilters.cpp:
(WebCore::getFilterById):
* kcanvas/KCanvasFilters.h:
* kcanvas/KCanvasImage.h: Removed.
* kcanvas/KCanvasMarker.cpp: Removed.
* kcanvas/KCanvasMarker.h: Removed.
* kcanvas/KCanvasMasker.cpp: Removed.
* kcanvas/KCanvasMasker.h: Removed.
* kcanvas/KCanvasResource.cpp: Removed.
* kcanvas/KCanvasResource.h: Removed.
* kcanvas/KCanvasResourceListener.h: Removed.
* kcanvas/KCanvasTreeDebug.cpp:
(WebCore::writeRenderResources):
* kcanvas/device/KRenderingDevice.h:
* kcanvas/device/KRenderingPaintServer.h:
(WebCore::KRenderingPaintServer::KRenderingPaintServer):
* kcanvas/device/KRenderingPaintServerGradient.cpp:
(WebCore::KRenderingPaintServerGradient::listener):
(WebCore::KRenderingPaintServerGradient::setListener):
* kcanvas/device/KRenderingPaintServerGradient.h:
* kcanvas/device/KRenderingPaintServerPattern.cpp:
(WebCore::KRenderingPaintServerPattern::KRenderingPaintServerPattern):
(WebCore::KRenderingPaintServerPattern::~KRenderingPaintServerPattern):
(WebCore::KRenderingPaintServerPattern::tile):
(WebCore::KRenderingPaintServerPattern::setTile):
(WebCore::KRenderingPaintServerPattern::listener):
(WebCore::KRenderingPaintServerPattern::setListener):
* kcanvas/device/KRenderingPaintServerPattern.h:
* kcanvas/device/KRenderingPaintServerSolid.h:
* kcanvas/device/qt/KCanvasClipperQt.cpp: Removed.
* kcanvas/device/qt/KCanvasClipperQt.h: Removed.
* kcanvas/device/qt/KRenderingDeviceQt.cpp:
(WebCore::KRenderingDeviceQt::contextForImage):
(WebCore::KRenderingDeviceQt::createResource):
(WebCore::KRenderingDeviceQt::createPaintServer):
* kcanvas/device/qt/KRenderingDeviceQt.h:
* kcanvas/device/qt/KRenderingPaintServerGradientQt.cpp:
* kcanvas/device/qt/KRenderingPaintServerPatternQt.cpp:
* kcanvas/device/qt/KRenderingPaintServerQt.cpp:
* kcanvas/device/qt/KRenderingPaintServerSolidQt.cpp:
* kcanvas/device/qt/RenderPathQt.h: Removed.
* kcanvas/device/quartz/KCanvasFilterQuartz.mm:
(WebCore::KCanvasFilterQuartz::getCIFilterStack):
* kcanvas/device/quartz/KCanvasItemQuartz.mm:
* kcanvas/device/quartz/KCanvasMaskerQuartz.h: Removed.
* kcanvas/device/quartz/KCanvasMaskerQuartz.mm: Removed.
* kcanvas/device/quartz/KCanvasResourcesQuartz.h: Removed.
* kcanvas/device/quartz/KCanvasResourcesQuartz.mm: Removed.
* kcanvas/device/quartz/KRenderingDeviceQuartz.h:
* kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
(WebCore::KRenderingDeviceQuartz::contextForImage):
(WebCore::KRenderingDeviceQuartz::createPaintServer):
(WebCore::KRenderingDeviceQuartz::createResource):
* kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm:
(WebCore::KRenderingPaintServerGradientQuartz::KRenderingPaintServerGradientQuartz):
(WebCore::KRenderingPaintServerGradientQuartz::~KRenderingPaintServerGradientQuartz):
(WebCore::KRenderingPaintServerGradientQuartz::setup):
(WebCore::KRenderingPaintServerGradientQuartz::teardown):
* kcanvas/device/quartz/KRenderingPaintServerQuartz.h:
* kcanvas/device/quartz/KRenderingPaintServerQuartz.mm:
(WebCore::patternCallback):
(WebCore::KRenderingPaintServerPatternQuartz::setup):
* kcanvas/device/quartz/QuartzSupport.mm:
* ksvg2/misc/KCanvasRenderingStyle.cpp:
(WebCore::sharedSolidPaintServer):
* ksvg2/svg/SVGClipPathElement.cpp:
(WebCore::SVGClipPathElement::SVGClipPathElement):
(WebCore::SVGClipPathElement::~SVGClipPathElement):
(WebCore::SVGClipPathElement::canvasResource):
* ksvg2/svg/SVGClipPathElement.h:
* ksvg2/svg/SVGFEImageElement.cpp:
* ksvg2/svg/SVGFilterElement.cpp:
(WebCore::SVGFilterElement::SVGFilterElement):
(WebCore::SVGFilterElement::~SVGFilterElement):
(WebCore::SVGFilterElement::canvasResource):
* ksvg2/svg/SVGFilterElement.h:
* ksvg2/svg/SVGGradientElement.cpp:
(WebCore::SVGGradientElement::SVGGradientElement):
(WebCore::SVGGradientElement::~SVGGradientElement):
(WebCore::SVGGradientElement::canvasResource):
(WebCore::SVGGradientElement::resourceNotification):
* ksvg2/svg/SVGGradientElement.h:
* ksvg2/svg/SVGImageElement.cpp:
* ksvg2/svg/SVGLinearGradientElement.cpp:
(WebCore::SVGLinearGradientElement::buildGradient):
* ksvg2/svg/SVGLinearGradientElement.h:
* ksvg2/svg/SVGMarkerElement.cpp:
(WebCore::SVGMarkerElement::SVGMarkerElement):
(WebCore::SVGMarkerElement::~SVGMarkerElement):
(WebCore::SVGMarkerElement::canvasResource):
* ksvg2/svg/SVGMarkerElement.h:
* ksvg2/svg/SVGMaskElement.cpp:
(WebCore::SVGMaskElement::SVGMaskElement):
(WebCore::SVGMaskElement::~SVGMaskElement):
(WebCore::SVGMaskElement::drawMaskerContent):
(WebCore::SVGMaskElement::canvasResource):
* ksvg2/svg/SVGMaskElement.h:
* ksvg2/svg/SVGPatternElement.cpp:
(WebCore::SVGPatternElement::SVGPatternElement):
(WebCore::SVGPatternElement::~SVGPatternElement):
(WebCore::SVGPatternElement::fillAttributesFromReferencePattern):
(WebCore::SVGPatternElement::drawPatternContentIntoTile):
(WebCore::SVGPatternElement::canvasResource):
* ksvg2/svg/SVGPatternElement.h:
* ksvg2/svg/SVGRadialGradientElement.cpp:
(WebCore::SVGRadialGradientElement::buildGradient):
* ksvg2/svg/SVGRadialGradientElement.h:
* ksvg2/svg/SVGStyledElement.h:
(WebCore::SVGStyledElement::canvasResource):
* platform/GraphicsContext.cpp: Removed.
* platform/GraphicsContext.h: Removed.
* platform/GraphicsTypes.cpp: Removed.
* platform/GraphicsTypes.h: Removed.
* platform/graphics/GraphicsContext.cpp: Added.
(WebCore::GraphicsContextState::GraphicsContextState):
(WebCore::GraphicsContextPrivate::GraphicsContextPrivate):
(WebCore::GraphicsContext::createGraphicsContextPrivate):
(WebCore::GraphicsContext::destroyGraphicsContextPrivate):
(WebCore::GraphicsContext::save):
(WebCore::GraphicsContext::restore):
(WebCore::GraphicsContext::font):
(WebCore::GraphicsContext::setFont):
(WebCore::GraphicsContext::pen):
(WebCore::GraphicsContext::setPen):
(WebCore::GraphicsContext::setFillColor):
(WebCore::GraphicsContext::fillColor):
(WebCore::GraphicsContext::updatingControlTints):
(WebCore::GraphicsContext::setUpdatingControlTints):
(WebCore::GraphicsContext::setPaintingDisabled):
(WebCore::GraphicsContext::paintingDisabled):
(WebCore::GraphicsContext::drawImage):
(WebCore::GraphicsContext::drawText):
(WebCore::GraphicsContext::drawHighlightForText):
(WebCore::GraphicsContext::initFocusRing):
(WebCore::GraphicsContext::clearFocusRing):
(WebCore::GraphicsContext::focusRingBoundingRect):
(WebCore::GraphicsContext::addFocusRingRect):
(WebCore::GraphicsContext::focusRingWidth):
(WebCore::GraphicsContext::focusRingOffset):
(WebCore::GraphicsContext::focusRingRects):
(WebCore::GraphicsContext::drawTiledImage):
* platform/graphics/GraphicsContext.h: Added.
* platform/graphics/GraphicsTypes.cpp: Added.
(WebCore::):
(WebCore::parseCompositeOperator):
(WebCore::compositeOperatorName):
(WebCore::parseLineCap):
(WebCore::lineCapName):
(WebCore::parseLineJoin):
(WebCore::lineJoinName):
* platform/graphics/GraphicsTypes.h: Added.
(WebCore::):
* platform/graphics/svg/SVGResource.cpp: Added.
(WebCore::SVGResource::SVGResource):
(WebCore::SVGResource::~SVGResource):
(WebCore::SVGResource::invalidate):
(WebCore::SVGResource::addClient):
(WebCore::SVGResource::clients):
(WebCore::SVGResource::idInRegistry):
(WebCore::SVGResource::setIdInRegistry):
(WebCore::SVGResource::externalRepresentation):
(WebCore::getResourceById):
(WebCore::getPaintServerById):
(WebCore::operator<<):
* platform/graphics/svg/SVGResource.h: Added.
(WebCore::):
(WebCore::SVGResource::isPaintServer):
(WebCore::SVGResource::isFilter):
(WebCore::SVGResource::isClipper):
(WebCore::SVGResource::isMarker):
(WebCore::SVGResource::isMasker):
(WebCore::SVGResourceListener::~SVGResourceListener):
* platform/graphics/svg/SVGResourceClipper.cpp: Added.
(WebCore::SVGResourceClipper::SVGResourceClipper):
(WebCore::SVGResourceClipper::~SVGResourceClipper):
(WebCore::SVGResourceClipper::resetClipData):
(WebCore::SVGResourceClipper::addClipData):
(WebCore::SVGResourceClipper::clipData):
(WebCore::SVGResourceClipper::externalRepresentation):
(WebCore::operator<<):
(WebCore::getClipperById):
* platform/graphics/svg/SVGResourceClipper.h: Added.
(WebCore::ClipDataList::addPath):
(WebCore::SVGResourceClipper::isClipper):
* platform/graphics/svg/SVGResourceImage.h: Added.
* platform/graphics/svg/SVGResourceMarker.cpp: Added.
(WebCore::SVGResourceMarker::SVGResourceMarker):
(WebCore::SVGResourceMarker::~SVGResourceMarker):
(WebCore::SVGResourceMarker::setMarker):
(WebCore::SVGResourceMarker::setRef):
(WebCore::SVGResourceMarker::draw):
(WebCore::SVGResourceMarker::externalRepresentation):
(WebCore::getMarkerById):
* platform/graphics/svg/SVGResourceMarker.h: Added.
(WebCore::SVGResourceMarker::refX):
(WebCore::SVGResourceMarker::refY):
(WebCore::SVGResourceMarker::setAngle):
(WebCore::SVGResourceMarker::setAutoAngle):
(WebCore::SVGResourceMarker::angle):
(WebCore::SVGResourceMarker::setUseStrokeWidth):
(WebCore::SVGResourceMarker::useStrokeWidth):
(WebCore::SVGResourceMarker::isMarker):
* platform/graphics/svg/SVGResourceMasker.cpp: Added.
(WebCore::SVGResourceMasker::SVGResourceMasker):
(WebCore::SVGResourceMasker::~SVGResourceMasker):
(WebCore::SVGResourceMasker::setMask):
(WebCore::SVGResourceMasker::mask):
(WebCore::SVGResourceMasker::externalRepresentation):
(WebCore::getMaskerById):
* platform/graphics/svg/SVGResourceMasker.h: Added.
(WebCore::SVGResourceMasker::isMasker):
* platform/graphics/svg/cg/SVGResourceClipperCg.mm: Added.
(WebCore::SVGResourceClipper::applyClip):
* platform/graphics/svg/cg/SVGResourceImageCg.mm: Added.
(WebCore::SVGResourceImage::SVGResourceImage):
(WebCore::SVGResourceImage::~SVGResourceImage):
(WebCore::SVGResourceImage::init):
(WebCore::SVGResourceImage::size):
(WebCore::SVGResourceImage::cgLayer):
(WebCore::SVGResourceImage::setCGLayer):
* platform/graphics/svg/cg/SVGResourceMaskerCg.mm: Added.
(WebCore::applyLuminanceToAlphaFilter):
(WebCore::applyExpandAlphatoGrayscaleFilter):
(WebCore::transformImageIntoGrayscaleMask):
(WebCore::SVGResourceMasker::applyMask):
* platform/graphics/svg/qt/SVGResourceClipperQt.cpp: Added.
(WebCore::SVGResourceClipper::applyClip):
* platform/graphics/svg/qt/SVGResourceImageQt.cpp: Added.
(WebCore::SVGResourceImage::init):
(WebCore::SVGResourceImage::size):
* platform/graphics/svg/qt/SVGResourceMaskerQt.cpp: Added.
(WebCore::SVGResourceMasker::applyMask):
* platform/qt/GraphicsContextQt.cpp:
* rendering/RenderPath.cpp:
(WebCore::RenderPath::paint):
(WebCore::DrawMarkersData::DrawMarkersData):
(WebCore::RenderPath::drawMarkersIfNeeded):
* rendering/RenderSVGContainer.cpp:
(WebCore::RenderSVGContainer::paint):
* rendering/RenderSVGImage.cpp:
(WebCore::RenderSVGImage::paint):
* rendering/SVGInlineFlowBox.cpp:
(WebCore::paintSVGInlineFlow):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17461
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
oliver [Tue, 31 Oct 2006 01:44:20 +0000 (01:44 +0000)]
2006-10-31 Nikolas Zimmermann <zimmermann@kde.org>
Reviewed by Oliver.
Add new platform/graphics include directory.
* DumpRenderTree/DumpRenderTree.qtproj/CMakeLists.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17460
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
thatcher [Tue, 31 Oct 2006 01:35:47 +0000 (01:35 +0000)]
Reviewed by Brady.
Make the universal build return non-zero when module make fails.
* Makefile:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17459
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
thatcher [Tue, 31 Oct 2006 01:33:04 +0000 (01:33 +0000)]
Reviewed by Stephanie.
Add a special case for the Internal makefiles, so it can find the OepnSource.
* Scripts/webkitdirs.pm:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17458
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
sullivan [Tue, 31 Oct 2006 01:25:52 +0000 (01:25 +0000)]
WebCore:
Reviewed by Geoff Garen.
Moved spelling-related methods from bridge to EditorClient. Added one not-yet-used
grammar-related method.
* bridge/EditorClient.h:
declare isContinuousSpellCheckingEnabled(), spellCheckerDocumentTag(), and new
isGrammarCheckingEnabled()
* bridge/mac/WebCoreFrameBridge.h:
removed bridge equivalents
* bridge/mac/FrameMac.mm:
(WebCore::FrameMac::advanceToNextMisspelling):
convert bridge-using code to editor()->client()-using code
(WebCore::FrameMac::markMisspellingsInAdjacentWords):
ditto
(WebCore::FrameMac::markMisspellings):
ditto
(WebCore::FrameMac::respondToChangedSelection):
ditto
* editing/Editor.h:
* editing/Editor.cpp:
(WebCore::Editor::client):
new method, returns EditorClient pointer. In an ideal world all the code that needed to
access the EditorClient would be in Editor.cpp, and we wouldn't need this accessor.
But for now it's too tricky to extricate the spelling-related code from FrameMac.mm.
WebKit:
Reviewed by Geoff Garen.
Moved spelling-related methods from bridge to EditorClient. Added one not-yet-used
grammar-related method.
* WebCoreSupport/WebEditorClient.h:
declare overrides of isContinuousSpellCheckingEnabled(), spellCheckerDocumentTag(), and new
isGrammarCheckingEnabled()
* WebCoreSupport/WebEditorClient.mm:
(WebEditorClient::isContinuousSpellCheckingEnabled):
implement by calling through to WebView
(WebEditorClient::isGrammarCheckingEnabled):
ditto
(WebEditorClient::spellCheckerDocumentTag):
ditto
* WebCoreSupport/WebFrameBridge.mm:
removed bridge equivalents of these methods
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17457
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren [Tue, 31 Oct 2006 01:21:49 +0000 (01:21 +0000)]
Reviewed by Beth.
Fixed nil-deref crash that I saw while using TOT (not sure how to repro,
but the debugger confirmed the cause).
* WebView/WebFrame.mm:
(core): Added check for NULL bridge.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17456
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren [Tue, 31 Oct 2006 01:01:01 +0000 (01:01 +0000)]
WebCore:
Reviewed by Darin.
Removed a number of editing and selection methods from the bridge.
I moved cross-platform editing and selection code into Editor and
SelectionController, respecitvely.
I moved ObjC and AppKit stuff up into WebKit, so I ended up exporting
everything + the kitchen sink.
Specific comments below for interesting things.
* bindings/objc/DOMInternal.h: Moved exception handling helper methods into
a new file so that WebKit can use them, too. Added a helper method for
handling exceptions when selecting a Range.
* bridge/mac/FrameMac.h: Moved attributedString creation and helper functions into
WebKit, since they have to do with creating an NSAttributedString for API
consumption, and not much to do with general Frame functionality.
* editing/Editor.h: Moved lastEditCommand tracking (at least the data,
for now) into the Editor. Eventually, the Frame will not have to notify
the Editor of what the lastEditCommand was, since the Editor will perform
all EditCommands.
* editing/SelectionController.h: The code here is just stuff moved from the bridge.
* editing/SelectionController.cpp:
(WebCore::SelectionController::setSelectedRange): We now explicitly check from DOM exceptions
and return them. The bridge method to select a DOM range did this implicitly,
since all ObjC DOM operations handle DOM exceptions by throwing them as
ObjC exceptions.
* editing/TextAffinity.h: Added helper functions for conversion to NSSelectionAffinity.
The two enumerations are numerically identical, but that's an implementation
detail of TextAffinity that clients shouldn't be required to know about.
WebKit:
Reviewed by Darin.
Removed a number of editing and selection methods from the bridge.
I moved cross-platform editing and selection code into WebCore::Editor and
WebCore::SelectionController, respecitvely.
All of the seemingly new code here is just code grabbed from WebCore or
merged from WebCoreFrameBridge.
I changed one piece of internal API: we now pass around Ranges in places
where we used to pass around broken out components of Ranges.
I also added WebCore XPATH_SUPPORT AND SVG_SUPPORT #defines to the project.
Since we now include WebCore headers that depend on these #defines, we need
to keep in sync with them, to avoid binary incompatibility.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17455
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
thatcher [Tue, 31 Oct 2006 00:49:26 +0000 (00:49 +0000)]
Rolling out the following change because this crash:
<rdar://problem/
4806705> REGRESSION: Crash occurs at WebCore::Font::lineSpacing() when loading site (http://www.photoplusexpo.com/ppe/index.jsp)
And this regression:
<rdar://problem/
4728514> REGRESSION: Safari applies the wrong font to BODY element at http://www.apple.com/downloads/dashboard/
2006-09-06 David Harrison <harrison@apple.com>
Reviewed and tweaked by Tim H.
<rdar://problem/
4564955> WebKit doesn't trigger Auto Font Activation
If we don't find the font in the available fonts list, call [NSFont fontWithName:size:]
to trigger a search that will include auto activation. No PLT or iBench perf impact.
No layout tests affected. Not testable in an automated way that will work on all systems.
* platform/mac/WebFontCache.mm:
(+[WebFontCache fontWithFamily:traits:size:]):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17450
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
justing [Mon, 30 Oct 2006 23:25:05 +0000 (23:25 +0000)]
Reviewed by harrison
<rdar://problem/
4808375>
REGRESSION: TextIterator slowed down, affecting Find on Page & Copy (etc.) (11460)
* editing/TextIterator.cpp:
(WebCore::TextIterator::exitNode): Only create VisiblePositions
when we're going to use them to create a range for an emitted character.
We should further speed TextIterators up by avoiding creating VisiblePositions
for TIs that are only used for the characters they emit (like the one that
plainText uses).
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17449
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
weinig [Mon, 30 Oct 2006 22:41:29 +0000 (22:41 +0000)]
Reviewed by Mitz.
Fix for http://bugs.webkit.org/show_bug.cgi?id=11441
More rendering code cleaning
* WebCore.xcodeproj/project.pbxproj:
* rendering/RenderApplet.cpp:
(WebCore::RenderApplet::RenderApplet):
(WebCore::RenderApplet::createWidgetIfNecessary):
* rendering/RenderApplet.h:
* rendering/RenderArena.cpp:
(WebCore::):
(WebCore::RenderArena::RenderArena):
(WebCore::RenderArena::allocate):
(WebCore::RenderArena::free):
* rendering/RenderArena.h:
* rendering/RenderBR.cpp:
(WebCore::RenderBR::RenderBR):
(WebCore::RenderBR::baselinePosition):
(WebCore::RenderBR::lineHeight):
(WebCore::RenderBR::setStyle):
(WebCore::RenderBR::caretMinOffset):
(WebCore::RenderBR::positionForCoordinates):
(WebCore::RenderBR::inlineBox):
* rendering/RenderBR.h:
* rendering/RenderBlock.cpp:
* rendering/RenderBlock.h:
(WebCore::RenderBlock::maxTopMargin):
(WebCore::RenderBlock::maxBottomMargin):
(WebCore::RenderBlock::initMaxMarginValues):
(WebCore::RenderBlock::containsFloats):
(WebCore::RenderBlock::setHasMarkupTruncation):
(WebCore::RenderBlock::BlockSelectionInfo::BlockSelectionInfo):
(WebCore::RenderBlock::BlockSelectionInfo::block):
(WebCore::RenderBlock::BlockSelectionInfo::state):
(WebCore::RenderBlock::FloatingObject::FloatingObject):
(WebCore::RenderBlock::CompactInfo::clear):
* rendering/RenderButton.cpp:
(WebCore::RenderButton::removeChild):
(WebCore::RenderButton::paintObject):
* rendering/RenderButton.h:
(WebCore::RenderButton::renderName):
(WebCore::RenderButton::removeLeftoverAnonymousBoxes):
* rendering/RenderContainer.cpp:
(WebCore::RenderContainer::RenderContainer):
* rendering/RenderContainer.h:
(WebCore::RenderContainer::firstChild):
(WebCore::RenderContainer::lastChild):
(WebCore::RenderContainer::calcMinMaxWidth):
* rendering/RenderCounter.cpp:
(WebCore::RenderCounter::RenderCounter):
(WebCore::toRoman):
(WebCore::toHebrew):
(WebCore::RenderCounter::calcMinMaxWidth):
* rendering/RenderCounter.h:
* rendering/RenderFieldset.cpp:
(WebCore::RenderFieldset::paintBoxDecorations):
(WebCore::RenderFieldset::paintBorderMinusLegend):
(WebCore::RenderFieldset::setStyle):
* rendering/RenderFileUploadControl.cpp:
(WebCore::RenderFileUploadControl::~RenderFileUploadControl):
(WebCore::RenderFileUploadControl::setStyle):
(WebCore::RenderFileUploadControl::paintObject):
(WebCore::RenderFileUploadControl::calcMinMaxWidth):
* rendering/RenderFileUploadControl.h:
(WebCore::RenderFileUploadControl::renderName):
* rendering/RenderFlexibleBox.h:
* rendering/RenderFlow.cpp:
* rendering/RenderFlow.h:
* rendering/RenderForeignObject.cpp:
(WebCore::RenderForeignObject::RenderForeignObject):
(WebCore::RenderForeignObject::paint):
(WebCore::RenderForeignObject::computeAbsoluteRepaintRect):
(WebCore::RenderForeignObject::layout):
(WebCore::RenderForeignObject::nodeAtPoint):
* rendering/RenderForeignObject.h:
(WebCore::RenderForeignObject::renderName):
* rendering/RenderFormElement.cpp:
(WebCore::RenderFormElement::setStyle):
(WebCore::RenderFormElement::layout):
(WebCore::RenderFormElement::textAlignment):
* rendering/RenderFormElement.h:
* rendering/RenderFrame.cpp:
* rendering/RenderFrame.h:
(WebCore::RenderFrame::element):
* rendering/RenderFrameSet.cpp:
* rendering/RenderFrameSet.h:
(WebCore::RenderFrameSet::element):
* rendering/RenderHTMLCanvas.cpp:
(WebCore::RenderHTMLCanvas::RenderHTMLCanvas):
(WebCore::RenderHTMLCanvas::paint):
* rendering/RenderHTMLCanvas.h:
(WebCore::RenderHTMLCanvas::renderName):
* rendering/RenderImage.cpp:
(WebCore::RenderImage::RenderImage):
(WebCore::RenderImage::setStyle):
(WebCore::RenderImage::setContentObject):
(WebCore::RenderImage::setCachedImage):
(WebCore::RenderImage::imageChanged):
(WebCore::RenderImage::paint):
(WebCore::RenderImage::layout):
(WebCore::RenderImage::updateAltText):
* rendering/RenderImage.h:
(WebCore::RenderImage::element):
* rendering/RenderInline.cpp:
(WebCore::RenderInline::RenderInline):
(WebCore::RenderInline::~RenderInline):
(WebCore::RenderInline::setStyle):
(WebCore::RenderInline::addChildToFlow):
(WebCore::RenderInline::cloneInline):
(WebCore::RenderInline::splitInlines):
(WebCore::RenderInline::splitFlow):
(WebCore::RenderInline::paint):
(WebCore::RenderInline::absoluteRects):
(WebCore::RenderInline::calcMinMaxWidth):
(WebCore::RenderInline::requiresLayer):
(WebCore::RenderInline::width):
(WebCore::RenderInline::height):
(WebCore::RenderInline::renderName):
(WebCore::RenderInline::nodeAtPoint):
(WebCore::RenderInline::positionForCoordinates):
* rendering/RenderInline.h:
(WebCore::RenderInline::layout):
* rendering/RenderLayer.cpp:
* rendering/RenderLayer.h:
(WebCore::ClipRects::ClipRects):
(WebCore::RenderLayer::nextSibling):
(WebCore::RenderLayer::root):
(WebCore::RenderLayer::setPos):
(WebCore::RenderLayer::height):
(WebCore::RenderLayer::relativePositionOffset):
* rendering/RenderLineEdit.cpp:
(WebCore::RenderLineEdit::setStyle):
(WebCore::RenderLineEdit::updateFromElement):
(WebCore::RenderLineEdit::selectionStart):
(WebCore::RenderLineEdit::selectionEnd):
(WebCore::RenderLineEdit::setSelectionStart):
(WebCore::RenderLineEdit::setSelectionEnd):
(WebCore::RenderLineEdit::setSelectionRange):
* rendering/RenderLineEdit.h:
* rendering/RenderListBox.cpp:
* rendering/RenderListBox.h:
(WebCore::RenderListBox::renderName):
* rendering/RenderListItem.cpp:
(WebCore::RenderListItem::setStyle):
(WebCore::getParentOfFirstLineBox):
(WebCore::RenderListItem::updateMarkerLocation):
(WebCore::RenderListItem::positionListMarker):
(WebCore::RenderListItem::paint):
* rendering/RenderListItem.h:
* rendering/RenderListMarker.cpp:
* rendering/RenderListMarker.h:
(WebCore::RenderListMarker::renderName):
(WebCore::RenderListMarker::isListMarker):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17448
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
slewis [Mon, 30 Oct 2006 22:35:43 +0000 (22:35 +0000)]
Reviewed by Darin.
Change Makefiles to return non-zero when module make fails.
* Makefile:
WebKitTools:
Change Makefiles to return non-zero when module make fails.
Fix bug where if xcode options are not set, modules can build in the
wrong directory.
* Makefile:
* Scripts/webkitdirs.pm:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17447
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
thatcher [Mon, 30 Oct 2006 22:25:41 +0000 (22:25 +0000)]
Build fix.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17446
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
thatcher [Mon, 30 Oct 2006 22:19:19 +0000 (22:19 +0000)]
Reviewed by Hyatt.
<rdar://problem/
4478625> Basic table editing and culling
Refined the criteria for deletable elements, rely on the renderer more.
Corrected the interface positioning for elements that have borders.
* editing/DeleteButtonController.cpp:
(WebCore::isDeletableElement):
(WebCore::DeleteButtonController::show):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17445
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kmccullo [Mon, 30 Oct 2006 21:34:54 +0000 (21:34 +0000)]
Reviewed by Adam.
- Fix some timezone issues and JavaScriptCore date tests. Addresses bugzilla 4930.
* kjs/DateMath.h:
(KJS::GregorianDateTime::GregorianDateTime): Here's the fix, to add parenthesis for order of precedence.
* kjs/date_object.cpp:
(KJS::DateProtoFunc::callAsFunction):
(KJS::DateObjectImp::construct): memset not needed as GregorianDateTime initializes itself.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17444
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Mon, 30 Oct 2006 20:48:29 +0000 (20:48 +0000)]
- fix build
* loader/ResourceLoader.h: Added header guard.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17443
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Mon, 30 Oct 2006 20:05:39 +0000 (20:05 +0000)]
Reviewed by Adam.
- fix FrameLoader files so they can be built on non-Mac platforms
* page/FramePrivate.h:
(WebCore::FramePrivate::FramePrivate): Added code to create the frame loader.
(WebCore::FramePrivate::~FramePrivate): Added code to delete the frame loader.
* page/Page.h:
* page/Page.cpp: (WebCore::Page::setDefersLoading): Removed the
#if PLATFORM(MAC) that Adam added as a stop-gap when I did this wrong
the other day.
* bridge/mac/FrameMac.mm:
(WebCore::FrameMac::FrameMac): Removed code to create the frame loader.
(WebCore::FrameMac::~FrameMac): Removed code to delete the frame loader.
* loader/FrameLoader.h: Changed import to include, added #if PLATFORM(MAC)
around the PolicyCheck definition.
* loader/FormState.cpp: Changed import to include.
* loader/FrameLoader.cpp: Ditto.
* loader/MainResourceLoader.h: Ditto.
* loader/FrameLoaderTypes.h: Added a header guard.
* loader/NetscapePlugInStreamLoader.h: Changed import to include.
Added #if PLATFORM(MAC) around Mac-specific details.
* loader/SubresourceLoader.h: Ditto.
* page/Frame.cpp: (WebCore::Frame::loader): Updated name of loader to
m_loader from m_frameLoader.
* CMakeLists.txt: Updated.
* WebCoreSources.bkl: Updated.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17442
268f45cc-cd09-0410-ab3c-
d52691b4dbfc