bdash [Mon, 12 Feb 2007 23:52:11 +0000 (23:52 +0000)]
2007-02-12 Mitz Pettel <mitz@webkit.org>
Reviewed by Dave Hyatt.
- fix http://bugs.webkit.org/show_bug.cgi?id=12123
REGRESSION: Incomplete repaint of floats' overflows
Tests: fast/repaint/float-overflow.html
fast/repaint/float-overflow-right.html
- fix http://bugs.webkit.org/show_bug.cgi?id=10116
REGRESSION: Menu item drawn 2 pixels short on WWDC 2006 Attendee Site
Reflected in existing test results.
Unified floats and overflow for the purposes of painting and hit-testing.
Overhanging and overflowing floats are now factored into a block's overflow
unless their painting has been propagated to an ancestor.
Changed table cells to no longer expand to enclose overflow, thus making
it purely "visual overflow", having no effect on layout in WebCore. It
still determines scrolling dimensions.
* rendering/InlineFlowBox.cpp:
(WebCore::InlineFlowBox::placeBoxesHorizontally): Include inline blocks'
horizontal overflow in the inline box's dimensions.
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::layoutBlock): Removed the expand to enclose overflows
behavior. Added code to add this block's floats (and their overflow) to its
overflow rect if it is not in a block formatting context. Otherwise, the
inclusion of floats in the overflow is deferred until this block's parent
examines its floats and possibly adopts overhanging floats.
(WebCore::RenderBlock::layoutBlockChildren):
(WebCore::RenderBlock::paint):
(WebCore::RenderBlock::floatRect): Changed to return an empty rect if there
are no floats or the floats are clipped, instead of returning the border box.
(WebCore::RenderBlock::addOverhangingFloats): Any floats of the child that
are not to be painted by the parent are added to the child's overflow rect.
(WebCore::RenderBlock::addVisualOverflow): Added. Adjusts the overflow
bounds to include the given rect.
(WebCore::RenderBlock::nodeAtPoint):
* rendering/RenderBlock.h:
* rendering/RenderFlexibleBox.cpp:
(WebCore::RenderFlexibleBox::layoutBlock):
(WebCore::RenderFlexibleBox::layoutHorizontalBox): After placing a normal
child, add its floats to its overflow, since painting of floats does not
propagate to flexible boxes.
(WebCore::RenderFlexibleBox::layoutVerticalBox): Ditto.
* rendering/RenderForeignObject.cpp:
(WebCore::RenderForeignObject::layout):
* rendering/RenderHTMLCanvas.cpp:
(WebCore::RenderHTMLCanvas::layout):
* rendering/RenderImage.cpp:
(WebCore::RenderImage::layout):
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::updateLayerPositions):
(WebCore::RenderLayer::absoluteBoundingBox):
* rendering/RenderLayer.h:
* rendering/RenderObject.cpp:
(WebCore::RenderObject::repaintAfterLayoutIfNeeded):
* rendering/RenderObject.h:
(WebCore::RenderObject::expandsToEncloseOverhangingFloats):
* rendering/RenderPath.cpp:
(WebCore::RenderPath::layout):
* rendering/RenderSVGContainer.cpp:
(WebCore::RenderSVGContainer::layout):
* rendering/RenderSVGText.cpp:
(WebCore::RenderSVGText::layout):
* rendering/RenderTable.cpp:
(WebCore::RenderTable::layout):
* rendering/RenderTableCell.h:
(WebCore::RenderTableCell::expandsToEncloseOverhangingFloats):
2007-02-12 Mitz Pettel <mitz@webkit.org>
Reviewed by Dave Hyatt.
- repaint test for http://bugs.webkit.org/show_bug.cgi?id=12123
REGRESSION: Incomplete repaint of floats' overflows
- updated results for http://bugs.webkit.org/show_bug.cgi?id=10116
REGRESSION: Menu item drawn 2 pixels short on WWDC 2006 Attendee Site
* css1/formatting_model/inline_elements-expected.checksum:
* css1/formatting_model/inline_elements-expected.png:
* css1/formatting_model/inline_elements-expected.txt:
* css2.1/t0905-c414-flt-00-d-expected.txt:
* css2.1/t0905-c414-flt-01-d-g-expected.txt:
* css2.1/t0905-c414-flt-02-c-expected.txt:
* css2.1/t0905-c414-flt-03-c-expected.txt:
* css2.1/t0905-c414-flt-04-c-expected.txt:
* css2.1/t0905-c414-flt-wrap-01-d-g-expected.txt:
* css2.1/t0905-c5525-fltcont-00-d-g-expected.txt:
* css2.1/t0905-c5525-fltwidth-02-c-g-expected.txt:
* css2.1/t0905-c5525-fltwidth-03-c-g-expected.txt:
* css2.1/t090501-c414-flt-02-d-g-expected.txt:
* css2.1/t090501-c414-flt-03-b-g-expected.txt:
* fast/backgrounds/repeat/negative-offset-repeat-expected.txt:
* fast/block/float/008-expected.txt:
* fast/block/float/013-expected.checksum:
* fast/block/float/013-expected.txt:
* fast/block/float/029-expected.txt:
* fast/block/float/031-expected.txt:
* fast/block/float/float-in-float-painting-expected.txt:
* fast/block/margin-collapse/059-expected.checksum:
* fast/block/margin-collapse/059-expected.png:
* fast/block/margin-collapse/059-expected.txt:
* fast/block/margin-collapse/062-expected.txt:
* fast/block/margin-collapse/063-expected.txt:
* fast/box-shadow/basic-shadows-expected.txt:
* fast/forms/floating-textfield-relayout-expected.checksum:
* fast/forms/floating-textfield-relayout-expected.txt:
* fast/lists/003-expected.txt:
* fast/media/mq-relative-constraints-08-expected.txt:
* fast/multicol/float-multicol-expected.txt:
* fast/repaint/float-overflow-expected.checksum: Added.
* fast/repaint/float-overflow-expected.png: Added.
* fast/repaint/float-overflow-expected.txt: Added.
* fast/repaint/float-overflow-right-expected.checksum: Added.
* fast/repaint/float-overflow-right-expected.png: Added.
* fast/repaint/float-overflow-right-expected.txt: Added.
* fast/repaint/float-overflow-right.html: Added.
* fast/repaint/float-overflow.html: Added.
* fast/table/009-expected.checksum:
* fast/table/009-expected.png:
* fast/table/009-expected.txt:
* fast/text/text-shadow-extreme-value.html:
* fast/text/whitespace/012-expected.txt:
* tables/mozilla/bugs/bug120364-expected.txt:
* tables/mozilla/bugs/bug196870-expected.checksum:
* tables/mozilla/bugs/bug196870-expected.png:
* tables/mozilla/bugs/bug196870-expected.txt:
* tables/mozilla/bugs/bug45055-2-expected.txt:
* tables/mozilla/bugs/bug72359-expected.txt:
* tables/mozilla/marvin/x_table_align_left-expected.txt:
* tables/mozilla/marvin/x_table_align_right-expected.txt:
* tables/mozilla_expected_failures/marvin/table_overflow_dirty_reflow-expected.checksum:
* tables/mozilla_expected_failures/marvin/table_overflow_dirty_reflow-expected.png:
* tables/mozilla_expected_failures/marvin/table_overflow_dirty_reflow-expected.txt:
* tables/mozilla_expected_failures/marvin/table_overflow_dirty_reflow_row-expected.checksum:
* tables/mozilla_expected_failures/marvin/table_overflow_dirty_reflow_row-expected.png:
* tables/mozilla_expected_failures/marvin/table_overflow_dirty_reflow_row-expected.txt:
* tables/mozilla_expected_failures/marvin/table_overflow_dirty_reflow_table-expected.checksum:
* tables/mozilla_expected_failures/marvin/table_overflow_dirty_reflow_table-expected.png:
* tables/mozilla_expected_failures/marvin/table_overflow_dirty_reflow_table-expected.txt:
* tables/mozilla_expected_failures/marvin/table_overflow_dirty_reflow_tbody-expected.checksum:
* tables/mozilla_expected_failures/marvin/table_overflow_dirty_reflow_tbody-expected.png:
* tables/mozilla_expected_failures/marvin/table_overflow_dirty_reflow_tbody-expected.txt:
* tables/mozilla_expected_failures/marvin/table_overflow_hidden_table-expected.checksum:
* tables/mozilla_expected_failures/marvin/table_overflow_hidden_table-expected.png:
* tables/mozilla_expected_failures/marvin/table_overflow_hidden_table-expected.txt:
* tables/mozilla_expected_failures/marvin/table_overflow_hidden_tbody-expected.checksum:
* tables/mozilla_expected_failures/marvin/table_overflow_hidden_tbody-expected.png:
* tables/mozilla_expected_failures/marvin/table_overflow_hidden_tbody-expected.txt:
* tables/mozilla_expected_failures/marvin/table_overflow_hidden_tr-expected.checksum:
* tables/mozilla_expected_failures/marvin/table_overflow_hidden_tr-expected.png:
* tables/mozilla_expected_failures/marvin/table_overflow_hidden_tr-expected.txt:
* tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_cell-expected.checksum:
* tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_cell-expected.png:
* tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_cell-expected.txt:
* tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_cell_sibling-expected.checksum:
* tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_cell_sibling-expected.png:
* tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_cell_sibling-expected.txt:
* tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_row-expected.checksum:
* tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_row-expected.png:
* tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_row-expected.txt:
* tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_row_sibling-expected.checksum:
* tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_row_sibling-expected.png:
* tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_row_sibling-expected.txt:
* tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_table-expected.checksum:
* tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_table-expected.png:
* tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_table-expected.txt:
* tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_table_caption-expected.checksum:
* tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_table_caption-expected.png:
* tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_table_caption-expected.txt:
* tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_tbody-expected.checksum:
* tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_tbody-expected.png:
* tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_tbody-expected.txt:
* tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_tbody_sibling-expected.checksum:
* tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_tbody_sibling-expected.png:
* tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_tbody_sibling-expected.txt:
* tables/mozilla_expected_failures/marvin/table_overflow_td_align_right-expected.checksum:
* tables/mozilla_expected_failures/marvin/table_overflow_td_align_right-expected.png:
* tables/mozilla_expected_failures/marvin/table_overflow_td_align_right-expected.txt:
* tables/mozilla_expected_failures/marvin/table_overflow_td_valign_bottom-expected.checksum:
* tables/mozilla_expected_failures/marvin/table_overflow_td_valign_bottom-expected.png:
* tables/mozilla_expected_failures/marvin/table_overflow_td_valign_bottom-expected.txt:
* tables/mozilla_expected_failures/marvin/table_overflow_td_valign_middle-expected.checksum:
* tables/mozilla_expected_failures/marvin/table_overflow_td_valign_middle-expected.png:
* tables/mozilla_expected_failures/marvin/table_overflow_td_valign_middle-expected.txt:
* tables/mozilla_expected_failures/marvin/table_overflow_td_valign_top-expected.checksum:
* tables/mozilla_expected_failures/marvin/table_overflow_td_valign_top-expected.png:
* tables/mozilla_expected_failures/marvin/table_overflow_td_valign_top-expected.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19588
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Mon, 12 Feb 2007 23:36:34 +0000 (23:36 +0000)]
LayoutTests:
Reviewed by Hyatt.
- update pixel results in cases where overline and line-through were used,
because our old code put them 1px too low
* css1/cascade/cascade_order-expected.checksum: Updated because this has
line-through style.
* css1/cascade/cascade_order-expected.png: Ditto.
* css1/text_properties/text_decoration-expected.checksum: Updated because
this has overline and line-through.
* css1/text_properties/text_decoration-expected.png: Ditto.
* css2.1/t1504-c543-txt-decor-00-d-g-expected.checksum: Ditto.
* css2.1/t1504-c543-txt-decor-00-d-g-expected.png: Ditto.
* fast/text/stroking-decorations-expected.checksum: Ditto.
* fast/text/stroking-decorations-expected.png: Ditto.
- added some missing pixel-test results
* fast/forms/disabled-select-change-index-expected.checksum: Added.
* fast/forms/disabled-select-change-index-expected.png: Added.
WebCore:
Reviewed by Hyatt.
- fix http://bugs.webkit.org/show_bug.cgi?id=12668
<rdar://problem/
4893344> REGRESSION: underline not visible for the international
input inline hole in most text fields (12668)
- fix bug where overline and line-through were 1px lower than we intended
* platform/graphics/GraphicsContext.h: Removed unneeded y offset parameter.
* platform/graphics/cairo/GraphicsContextCairo.cpp:
(WebCore::GraphicsContext::drawLineForText): Removed bogus y offset and +1.
* platform/graphics/cg/GraphicsContextCG.cpp:
(WebCore::GraphicsContext::drawLineForText): Ditto.
* platform/graphics/qt/GraphicsContextQt.cpp:
(WebCore::GraphicsContext::drawLineForText): Ditto.
* rendering/InlineFlowBox.cpp:
(WebCore::InlineFlowBox::paintTextDecorations): Added the "+1" that used to be
inside drawLineForText to the underline-drawing code. Changed the other callers
of drawLineForText to include the y offset in the y coordinate.
* rendering/InlineTextBox.cpp:
(WebCore::InlineTextBox::paintDecoration): Ditto. Also renamed _tx and _ty to
remove the gratuitious underscores.
(WebCore::InlineTextBox::paintMarkedTextUnderline): Made the default thickness
be 1px instead of 0 (which ends up being roughly 1px in the CG code path anyway).
Fixed the code computing the position to put the underline at the bottom of the
line (different from regular underlines which are put 1px under the baseline).
The old code used to put the underline 1px further down in the thick case, and
2px further down in the non-thick case. Both of those are bad, because they
could be completely clipped out in many cases.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19587
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca [Mon, 12 Feb 2007 23:24:15 +0000 (23:24 +0000)]
LayoutTests:
Reviewed by Darin.
<rdar://problem/
4846962>
Aperture: Aperture 1.5 - DOM exception occurs when exporting a web gallery
* fast/dom/Document/replace-child-expected.txt: Added.
* fast/dom/Document/replace-child.html: Added.
WebCore:
Reviewed by Darin.
<rdar://problem/
4846962>
Aperture: Aperture 1.5 - DOM exception occurs when exporting a web gallery
* dom/ContainerNode.cpp:
(WebCore::ContainerNode::replaceChild):
Call checkReplaceChild here.
* dom/Document.cpp:
(WebCore::Document::canReplaceChild):
* dom/Document.h:
Add implementation of canReplaceChild that makes sure that doing the replacement won't cause
more than one element and document type node to end up in the document.
* dom/Node.cpp:
(WebCore::Node::canReplaceChild):
Base implementation of canReplaceChild.
(WebCore::Node::checkReplaceChild):
New function that does what checAddChild does but calls canReplaceChild.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19584
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kdecker [Mon, 12 Feb 2007 23:01:01 +0000 (23:01 +0000)]
Reviewed by Anders.
Fixed: <rdar://problem/
4874059> REGRESSION: Painter IX:register - Crash in WebCore:: ResourceLoader::willSendRequest()
What happened here was that a WebDataSource was being dealloced *while* a load for that resource is still in progress.
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::stopAllLoaders): Calling stopAllLoaders cancels loads and informs the frame load delegate accordingly.
The delegate however may decide to kick off a new provisional load as the result of the cancel. Therefore a local variable
for the provisional and main doucment loader is introduced, and we now only nil out the provisional loader if the local and
member provisional variables represent the exact same load.
(WebCore::FrameLoader::continueLoadAfterNavigationPolicy): Added the same check here, too.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19583
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
lars [Mon, 12 Feb 2007 21:41:33 +0000 (21:41 +0000)]
Reviewed by Mitz.
Do not create child renderers for table column groups
if the child has not a table column display type.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19582
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
antti [Mon, 12 Feb 2007 20:28:52 +0000 (20:28 +0000)]
Reviewed by Mitz
Fix assertion failure in layout test.
* html/HTMLMapElement.cpp:
(WebCore::HTMLMapElement::parseMappedAttribute):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19581
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kmccullo [Mon, 12 Feb 2007 19:58:31 +0000 (19:58 +0000)]
Reviewed by Brady.
- Fixing a performance regression caused by r19500. The heart of the matter
is that we now call canLoad on every resource request even ones in the cache,
to avoid a security issue. So I could not take out the canLoad call, but I
but I could try to make it more efficient.
* loader/DocLoader.cpp:
(WebCore::DocLoader::requestResource):
(WebCore::DocLoader::setLoadInProgress):
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::canLoad):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19580
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Mon, 12 Feb 2007 19:05:07 +0000 (19:05 +0000)]
WebCore:
Reviewed by Oliver.
- fix http://bugs.webkit.org/show_bug.cgi?id=12677
<rdar://problem/
4759563> REGRESSION: Return key is always sent when you confirm
a clause in kotoeri (12677)
- fix http://bugs.webkit.org/show_bug.cgi?id=12596
<rdar://problem/
4794346> REGRESSION: Tab key shifts form field focus instead of
navigating prediction window (12596)
- fix http://bugs.webkit.org/show_bug.cgi?id=10010
<rdar://problem/
4822935> REGRESSION: Pressing Return with unconfirmed text in
Hangul inserts carriage return (10010)
- fix http://bugs.webkit.org/show_bug.cgi?id=12531
<rdar://problem/
4975126> REGRESSION: Inline text input types repeated keys in
latest nightly (r19336) (12531)
- fix http://bugs.webkit.org/show_bug.cgi?id=12539
<rdar://problem/
4975130> REGRESSION: Pressing Backspace while in inline input
area moves to the previous page in history (12539)
This area still needs work because keypress events are being sent for all the
events before they go to the input methods, and it seems that this is not
compatible with what other browsers do and with what sites assume. That's covered
by this bug:
http://bugs.webkit.org/show_bug.cgi?id=10871
<rdar://problem/
4823129> REGRESSION: IME key events different in nightly (10871)
which is still open.
* bindings/objc/ExceptionHandlers.h: Remove selectRange helper that doesn't really
belong here, and also isn't needed since the callers don't want to raise ObjC
exceptions.
* bindings/objc/ExceptionHandlers.mm: Ditto. Also removed unneeded external globals
that aren't exported anyway and unneeded includes.
* bridge/EditorClient.h: Added Mac-specific function, markedTextAbandoned. Long term
this might move into platform instead, but it's fine to have it on the client for now
as long as it doesn't cause trouble for platforms other than Mac.
* dom/EventTargetNode.cpp: (WebCore::EventTargetNode::defaultEventHandler): Since
all the event handling code in this function is intended to run on the node itself,
not parent nodes, check and do nothing if this event is bubbling up from another
node. Added code to call a function on EventHandler for default handling of text
input events.
* dom/KeyboardEvent.h:
* dom/KeyboardEvent.cpp: (WebCore::findKeyboardEvent): Added. Just like the
findUIEventWithKeyState function, but specific to keyboard events.
* dom/TextEvent.h: Added isLineBreak and isBackTab flags so that we can carry
additional information about what a text input event is trying to do, but still
go through the DOM event machinery.
* dom/TextEvent.cpp: Ditto.
* editing/Editor.h:
* editing/Editor.cpp:
(WebCore::Editor::handleKeyPress): Removed unneeded check of isCaretOrRange, since
isContentEditable already checks that.
(WebCore::Editor::canEdit): Ditto.
(WebCore::Editor::canEditRichly): Ditto.
(WebCore::Editor::canPaste): Changed to call canEdit for brevity.
(WebCore::Editor::replaceSelectionWithText): Changed to take a const String&.
(WebCore::Editor::shouldInsertText): Ditto.
(WebCore::hasEditableSelection): Removed unneeded check of isCaretOrRange, since
isContentEditable already checks that.
(WebCore::Editor::Editor): Initialize the new m_ignoreMarkedTextSelectionChange
flag. Moved here from WebHTMLView.
(WebCore::Editor::insertText): Moved most of the code from -[WebHTMLView insertText:]
here, since this needs to be done in response to a text input event and we don't want
to go back over the WebKit side for that.
(WebCore::Editor::insertLineBreak): Added. Moved here from -[WebHTMLView insertLineBreak:]
for the same reason -- needs to be done in response to text input events.
(WebCore::Editor::insertParagraphSeparator): Ditto.
(WebCore::Editor::selectMarkedText): Added. Used by insertText.
(WebCore::Editor::discardMarkedText): Added. Used by insertText.
(WebCore::Editor::unmarkText): Added. Used by insertText.
* editing/mac/EditorMac.mm:
(WebCore::Editor::unmarkText): Added. Used by insertText.
* html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::canHaveSelection): Changed to use isTextField to avoid repeating
the switch statement.
(WebCore::HTMLInputElement::selectionStart): Ditto.
(WebCore::HTMLInputElement::selectionEnd): Ditto.
(WebCore::HTMLInputElement::setSelectionStart): Ditto.
(WebCore::HTMLInputElement::setSelectionEnd): Ditto.
(WebCore::HTMLInputElement::select): Ditto.
(WebCore::HTMLInputElement::setSelectionRange): Ditto.
(WebCore::HTMLInputElement::createRenderer): Resorted cases alphaebtically.
(WebCore::HTMLInputElement::defaultEventHandler): Added code to make hitting return cause the
form to be submitted when it comes through as a text input event. This is now the normal case
on Macintosh, because enter key presses normally turn into this. In addition, change the other
event handling to run only after trying the base defaultEventHandler. That makes the key
handling done in EventTargetNode take precedence over the event handling here for editable text
fields, which is what we want. This gets rid of the need for the hack where we check
inputManagerHasMarkedText and suppress the handling of the enter key.
* page/EventHandler.h: Removed unneeded includes. Moved EventHandlerDragState down into the
private part of the class. Changed sendContextMenuEvent to take a const&. Added new
handleTextInputEvent and defaultTextInputEventHandler functions. Made eventLoopHandleMouseUp
and eventLoopHandleMouseDragged private. Added private defaultTabEventHandler function.
* page/EventHandler.cpp:
(WebCore::EventHandler::sendContextMenuEvent): Changed parameter to be a const&.
(WebCore::EventHandler::defaultKeyboardEventHandler): Rearranged things so that the key bindings
handling in handleKeyPress comes before special tab event handling. In cases where the tab turns
into text to insert, we now handle it in the text input event handler.
(WebCore::EventHandler::handleTextInputEvent): Added. Creates and dispatches a text input event.
(WebCore::EventHandler::defaultTextInputEventHandler): Added. Inserts text, but has special cases
for the tab and newline character cases.
(WebCore::EventHandler::defaultTabEventHandler): Added. Shared by the tab-handling code in
the keyboard event and text input event handlers.
* page/mac/EventHandlerMac.mm: Tweak formatting, remove some unused functions.
* page/FocusController.h: Removed unnneded includes and forwards, and added an overload of
advanceFocus that takes a FocusDirection parameter.
* page/FocusController.cpp: (WebCore::FocusController::advanceFocus): Changed to allow a 0 for
the event pointer. Also added a version where the direction is passed explicitly, to be used
for cases where we want to tab backward even if the event doesn't have a shift modifier key set.
* platform/graphics/svg/SVGImageEmptyClients.h: Updated for change to EditorClient.
This should really probably just use 0 for the EditorClient.
* WebCore.exp: Update both for newly used and no-longer-used entry points.
* page/mac/WebCoreFrameBridge.h:
* page/mac/WebCoreFrameBridge.mm: Removed two unused methods.
WebKit:
Reviewed by Oliver.
- fix http://bugs.webkit.org/show_bug.cgi?id=12677
<rdar://problem/
4759563> REGRESSION: Return key is always sent when you confirm
a clause in kotoeri (12677)
- fix http://bugs.webkit.org/show_bug.cgi?id=12596
<rdar://problem/
4794346> REGRESSION: Tab key shifts form field focus instead of
navigating prediction window (12596)
- fix http://bugs.webkit.org/show_bug.cgi?id=10010
<rdar://problem/
4822935> REGRESSION: Pressing Return with unconfirmed text in
Hangul inserts carriage return (10010)
- fix http://bugs.webkit.org/show_bug.cgi?id=12531
<rdar://problem/
4975126> REGRESSION: Inline text input types repeated keys in
latest nightly (r19336) (12531)
- fix http://bugs.webkit.org/show_bug.cgi?id=12539
<rdar://problem/
4975130> REGRESSION: Pressing Backspace while in inline input
area moves to the previous page in history (12539)
* WebCoreSupport/WebEditorClient.h:
* WebCoreSupport/WebEditorClient.mm: (WebEditorClient::markedTextAbandoned):
Added.
* WebView/WebHTMLView.mm:
(-[WebHTMLView menuForEvent:]): Added explicit constructor needed now that the
function takes a const&.
(-[WebHTMLView becomeFirstResponder]): Removed fake event code, no longer needed
since advanceFocus now works fine with 0 for a DOM event.
(-[WebHTMLView _expandSelectionToGranularity:]): Changed to use the normal
selection controller function instead of selectRange.
(-[WebHTMLView insertTab:]): Changed to call bottleneck that receives the DOM
event.
(-[WebHTMLView insertBacktab:]): Ditto.
(-[WebHTMLView insertNewline:]): Ditto.
(-[WebHTMLView insertLineBreak:]): Ditto.
(-[WebHTMLView insertParagraphSeparator:]): Ditto.
(-[WebHTMLView insertNewlineIgnoringFieldEditor:]): Ditto.
(-[WebHTMLView insertTabIgnoringFieldEditor:]): Ditto.
(-[WebHTMLView yank:]): Updated to call Editor directly since the insertText
code now works via a text input event which is not what we want for paste-like
things such as yank.
(-[WebHTMLView yankAndSelect:]): Ditto.
(-[WebHTMLView selectToMark:]): Changed to use the normal selection controller
function instead of selectRange, which also allows us to remove the ObjC exception
handling code.
(-[WebHTMLView swapWithMark:]): Ditto.
(-[WebHTMLView transpose:]): Ditto.
(-[WebHTMLView unmarkText]): Since this is one of the calls back from the input
manager, added code to set the "event was handled" flag. Moved the actual work
into the Editor class in WebCore and just call that from here.
(-[WebHTMLView _selectRangeInMarkedText:]): Changed to use the normal selection
controller function instead of selectRange.
(-[WebHTMLView setMarkedText:selectedRange:]): Since this is one of the calls
back from the input manager, added code to set the "event was handled" flag.
Also changed the ignoreMarkedTextSelectionChange to use the flag over on the
WebCore side, since we moved it there and to call selectMarkedText over on
the WebCore side too.
(-[WebHTMLView doCommandBySelector:]): Added special cases for newline and tab
selectors so that the event is passed along. These selectors are special because
they are ones that turn into text input events.
(-[WebHTMLView _discardMarkedText]): Moved the body of this function into the
Editor class in WebCore and just call that from here.
(-[WebHTMLView insertText:]): Added code to send a text input event instead of
calling the editor to do text insertion. The insertion is then done in the
default handler for the text input event.
(-[WebHTMLView _insertNewlineWithEvent:isLineBreak:]): Added. Sends a text
input event.
(-[WebHTMLView _insertTabWithEvent:isBackTab:]): Ditto.
(-[WebHTMLView _updateSelectionForInputManager]): Changed to use the
ignoreMarkedTextSelectionChange flag in Editor now that the one here is gone.
* WebView/WebHTMLViewInternal.h: Remove ignoreMarkedTextSelectionChange field.
* WebView/WebView.mm: (-[WebView setSelectedDOMRange:affinity:]): Changed to
use the normal selection controller function instead of selectRange.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19579
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
antti [Mon, 12 Feb 2007 18:07:26 +0000 (18:07 +0000)]
LayoutTests:
Reviewed by Darin
- test for Imagemap not clickable in www.toptenbooks.net/
http://bugs.webkit.org/show_bug.cgi?id=12738
* fast/images/imagemap-case-expected.checksum: Added.
* fast/images/imagemap-case-expected.png: Added.
* fast/images/imagemap-case-expected.txt: Added.
* fast/images/imagemap-case.html: Added.
WebCore:
Reviewed by Darin.
- fixed Imagemap not clickable in www.toptenbooks.net/
http://bugs.webkit.org/show_bug.cgi?id=12738
Make imagemap names case insensitive in HTML mode
* dom/Document.cpp:
(WebCore::Document::getImageMap):
* html/HTMLMapElement.cpp:
(WebCore::HTMLMapElement::parseMappedAttribute):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19578
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren [Mon, 12 Feb 2007 17:15:29 +0000 (17:15 +0000)]
Updated results for this failing test. It looks like Maciej generated
the original results before he made the test "dump as text."
* fast/text/text-shadow-extreme-value-expected.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19577
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mjs [Mon, 12 Feb 2007 11:59:07 +0000 (11:59 +0000)]
LayoutTests:
Reviewed by Antti.
- test case for <rdar://problem/
4928675> REGRESSION: Crash in CGBlt_copyBytes under WebCore::Font::drawGlyphs (12083)
http://bugs.webkit.org/show_bug.cgi?id=12083
* fast/text/text-shadow-extreme-value.html: Added.
* fast/text/text-shadow-extreme-value-expected.txt: Added.
WebCore:
Reviewed by Antti.
- fixed <rdar://problem/
4928675> REGRESSION: Crash in CGBlt_copyBytes under WebCore::Font::drawGlyphs (12083)
http://bugs.webkit.org/show_bug.cgi?id=12083
Test: fast/text/text-shadow-extreme-value.html
* platform/graphics/cg/GraphicsContextCG.cpp:
(WebCore::GraphicsContext::setShadow): Clamp shadow value to 1000px, anything more seems to
make CG unhappy.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19573
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
beidson [Mon, 12 Feb 2007 07:37:07 +0000 (07:37 +0000)]
Reviewed by Maciej
First in what will be a series of HistoryItem enhancements to help debugging
* history/HistoryItem.cpp:
(WebCore::HistoryItem::showTree):
(WebCore::HistoryItem::showTreeWithIndent):
(showTree): Outside of WebCore namespace, and extern "C" - to make even the
DWARF debugger able to find it... *sigh*
* history/HistoryItem.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19572
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mjs [Mon, 12 Feb 2007 07:21:14 +0000 (07:21 +0000)]
LayoutTests:
Test case not reviewed; based on manual test by David Kilzer.
- test case for <rdar://problem/
4975133> ASSERT failure and crash right-clicking on image in SVG use test
http://bugs.webkit.org/show_bug.cgi?id=12580
* svg/custom/use-events-crash.svg: Added.
WebCore:
Reviewed by Anders.
- fixed <rdar://problem/
4975133> ASSERT failure and crash right-clicking on image in SVG use test
http://bugs.webkit.org/show_bug.cgi?id=12580
Test: svg/cust/use-events-crash.svg
* bindings/js/kjs_dom.cpp:
(KJS::toJS):
* ksvg2/svg/SVGElementInstance.cpp:
(WebCore::SVGElementInstance::toNode):
* ksvg2/svg/SVGElementInstance.h:
WebKitTools:
Reviewed by Mitz.
- add contextClick() operation to eventSender to be able to test this
* DumpRenderTree/EventSendingController.m:
(+[EventSendingController isSelectorExcludedFromWebScript:]):
(-[EventSendingController contextClick]):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19571
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bdash [Mon, 12 Feb 2007 07:06:40 +0000 (07:06 +0000)]
Binary portion of patch landed in r19490 that I forgot to land.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19570
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mjs [Mon, 12 Feb 2007 04:06:07 +0000 (04:06 +0000)]
LayoutTests:
Reviewed by Maciej.
- test for http://bugs.webkit.org/show_bug.cgi?id=10144
REGRESSION: Reproducible assertion failure in DeleteSelectionCommand::fixupWhitespace()
* fast/text/delete-hard-break-character-expected.checksum: Added.
* fast/text/delete-hard-break-character-expected.png: Added.
* fast/text/delete-hard-break-character-expected.txt: Added.
* fast/text/delete-hard-break-character.html: Added.
WebCore:
Reviewed by Maciej.
- fix http://bugs.webkit.org/show_bug.cgi?id=10144
REGRESSION: Reproducible assertion failure in DeleteSelectionCommand::fixupWhitespace()
Test: fast/text/delete-hard-break-character.html
The bug was caused by not updating a line whose line break object and offset
has been deleted. When deleting text, all lines containing the deleted text
are marked dirty. However, if the first character being deleted is a newline
which serves as a hard line break for the previous line, then that line will
not be marked, and since it will be a clean line ending with a line break,
relayout will begin at the next line. The fix is to check for this when
determining where to relayout from.
* rendering/bidi.cpp:
(WebCore::RenderBlock::determineStartPosition): Changed the condition for
including the last clean line in relayout to include the case where the
last clean line ends with a line break, but that line break is a newline that
has been deleted.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19569
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
weinig [Mon, 12 Feb 2007 01:19:40 +0000 (01:19 +0000)]
Reviewed by Mark.
Switch the initial value of box-sizing property from "border-box" to "content-box".
* WebInspector/webInspector/inspector.js:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19568
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
antti [Mon, 12 Feb 2007 00:18:21 +0000 (00:18 +0000)]
LayoutTests:
Reviewed by Maciej.
Test for REGRESSION: Google Calendar cell highlight misplaced
http://bugs.webkit.org/show_bug.cgi?id=12687
* fast/block/positioning/offsetLeft-offsetTop-borders-expected.checksum: Added.
* fast/block/positioning/offsetLeft-offsetTop-borders-expected.png: Added.
* fast/block/positioning/offsetLeft-offsetTop-borders-expected.txt: Added.
* fast/block/positioning/offsetLeft-offsetTop-borders.html: Added.
WebCore:
Reviewed by Maciej.
REGRESSION: Google Calendar cell highlight misplaced
http://bugs.webkit.org/show_bug.cgi?id=12687
Make offsetLeft/offsetTop/offsetParent behavior match Firefox.
* rendering/RenderObject.cpp:
(WebCore::RenderObject::offsetLeft):
(WebCore::RenderObject::offsetTop):
(WebCore::RenderObject::offsetParent):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19567
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
antti [Sun, 11 Feb 2007 23:50:40 +0000 (23:50 +0000)]
LayoutTests:
Reviewed by Maciej.
Test for REGRESSION: No day/week scrollbar in Google Calendar
http://bugs.webkit.org/show_bug.cgi?id=11985
* fast/layers/overflow-scroll-auto-switch-expected.checksum: Added.
* fast/layers/overflow-scroll-auto-switch-expected.png: Added.
* fast/layers/overflow-scroll-auto-switch-expected.txt: Added.
* fast/layers/overflow-scroll-auto-switch.html: Added.
WebCore:
Reviewed by Maciej.
- fixed REGRESSION: No day/week scrollbar in Google Calendar
http://bugs.webkit.org/show_bug.cgi?id=11985
Make sure overflow:auto scrollbars are always enabled. If they were overflow:scroll
and dynamically changed to auto they might still be disabled.
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::updateScrollInfoAfterLayout):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19566
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Sun, 11 Feb 2007 18:28:46 +0000 (18:28 +0000)]
* Scripts/check-for-global-initializers: Fix case where executable doesn't exist at all
so it doesn't give a perl exception (happens in clean builds, for example).
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19565
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap [Sun, 11 Feb 2007 09:05:04 +0000 (09:05 +0000)]
Reviewed by Hyatt.
http://bugs.webkit.org/show_bug.cgi?id=12581
XPath //title shouldn't match <title> in XHTML
Test: fast/xpath/ensure-null-namespace.xhtml
* xml/XPathStep.cpp:
(WebCore::XPath::Step::nodeTestMatches): Only let a null namespace match any for HTML.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19564
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap [Sun, 11 Feb 2007 08:28:04 +0000 (08:28 +0000)]
Reviewed by Adam.
http://bugs.webkit.org/show_bug.cgi?id=12701
REGRESSION: After javascript, onChange not triggered when selecting same option
* html/HTMLSelectElement.cpp:
(WebCore::HTMLSelectElement::setSelectedIndex): Remember m_lastOnChangeIndex value,
as it can change from setSelected() now.
(WebCore::HTMLSelectElement::notifyOptionSelected): Update m_lastOnChangeIndex.
* manual-tests/select-onchange-after-js.html: Added. Also tests for bug 11402.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19563
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ddkilzer [Sun, 11 Feb 2007 02:59:46 +0000 (02:59 +0000)]
WebKitTools:
Reviewed by Adam.
* Scripts/svn-create-patch:
(findSourceFileAndRevision($)): Use File::Spec->abs2rel() instead of substr() to generate
a relative path to the copied file.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19562
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
thatcher [Sun, 11 Feb 2007 02:32:23 +0000 (02:32 +0000)]
Reviewed by Sam Weinig.
* Drosera/Drosera.icns: updated the icon with 512px and 256px variants
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19561
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ddkilzer [Sun, 11 Feb 2007 02:29:15 +0000 (02:29 +0000)]
WebKitTools:
Reviewed by Timothy.
* Scripts/svn-apply: Binary patches don't need a trailing newline after the base64
encoded text.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19560
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ddkilzer [Sun, 11 Feb 2007 02:17:16 +0000 (02:17 +0000)]
JavaScriptCore:
Reviewed by Maciej.
- fix for http://bugs.webkit.org/show_bug.cgi?id=12636
Corrected the generation of method signatures when the parameter
is an Array.
Added support for converting a Javascript array to a Java array.
* bindings/jni/jni_utility.h: added new type for array, array_type
* bindings/jni/jni_runtime.cpp: add support for new array type
(JavaField::valueFromInstance):
(JavaField::setValueToInstance):
(JavaMethod::JavaMethod):
(JavaMethod::signature):
* bindings/jni/jni_utility.cpp: add support for new array type
(KJS::Bindings::callJNIMethod):
(KJS::Bindings::callJNIStaticMethod):
(KJS::Bindings::callJNIMethodIDA):
(KJS::Bindings::JNITypeFromClassName):
(KJS::Bindings::signatureFromPrimitiveType):
(KJS::Bindings::JNITypeFromPrimitiveType):
(KJS::Bindings::getJNIField):
(KJS::Bindings::convertArrayInstanceToJavaArray): new method
converts the Javascript array to the requested Java array.
(KJS::Bindings::convertValueToJValue):
WebCore:
Reviewed by Maciej.
Manual tests for http://bugs.webkit.org/show_bug.cgi?id=12636
Call different Java methods that take a variety of Array parameters
from Javascript, passing a Javascript array.
* manual-tests/liveconnect-applet-array-parameters.html: Added.
* manual-tests/resources/ArrayParameterTestApplet.class: Added.
* manual-tests/resources/ArrayParameterTestApplet.java: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19559
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
weinig [Sun, 11 Feb 2007 02:06:06 +0000 (02:06 +0000)]
LayoutTests:
Reviewed by Maciej.
http://bugs.webkit.org/show_bug.cgi?id=12724
Crash when enumerating XPath namespace axis
Test adapted from Python-based 4XPath test suite,
<http://sourceforge.net/projects/foursuite/>
* fast/xpath/namespace-nodes-expected.txt: Added.
* fast/xpath/namespace-nodes.html: Added.
WebCore:
Reviewed by Maciej.
http://bugs.webkit.org/show_bug.cgi?id=12724
Crash when enumerating XPath namespace axis
* xml/XPathStep.cpp:
(WebCore::XPath::Step::nodesInAxis): Namespace axis enumeration was broken in that it crashed, and also in that
it returned attribute nodes instead of XPath namespace ones. Removed it altogether.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19558
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ddkilzer [Sun, 11 Feb 2007 01:05:07 +0000 (01:05 +0000)]
WebCore:
Reviewed by Adam.
- fix http://bugs.webkit.org/show_bug.cgi?id=12565
ASSERTION failure on some declarative animations <rdar://problem/
4975132>
* ksvg2/svg/SVGAnimationElement.cpp:
(WebCore::parseValues): Changed the string length math to avoid truncating
the last character of each value.
* manual-tests/svg-animation-parseValues.svg: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19557
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ddkilzer [Sun, 11 Feb 2007 01:01:01 +0000 (01:01 +0000)]
WebCore:
Reviewed by Adam.
- fix http://bugs.webkit.org/show_bug.cgi?id=11621
REGRESSION (Native slider): slider thumb not updated when the mouse is dragged/released out of range
No automated test case because dumping the render tree updates layer positions anyway.
* manual-tests/slider-thumb-tracking.html: Added.
* rendering/RenderSlider.cpp:
(WebCore::RenderSlider::setCurrentPosition): Added call to updateLayerPosition()
for the thumb's layer.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19556
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ddkilzer [Sun, 11 Feb 2007 00:52:32 +0000 (00:52 +0000)]
LayoutTests:
Reviewed by Adam.
- fix http://bugs.webkit.org/show_bug.cgi?id=12727
Layout test failure: fast/events/frame-click-focus.html
* fast/events/frame-click-focus-expected.txt: Update results to include main frame blur.
* fast/events/frame-click-focus.html: Update to click in main frame first.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19555
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
weinig [Sat, 10 Feb 2007 14:00:48 +0000 (14:00 +0000)]
Reviewed by Maciej.
- fix http://bugs.webkit.org/show_bug.cgi?id=11847
REGRESSION (SearchField): Dragging to select in the Web Inspector's search fields drags the inspector window
* WebInspector/webInspector/inspector.css: Added the search field to the
undraggable dashboard-region.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19554
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
beidson [Sat, 10 Feb 2007 10:38:05 +0000 (10:38 +0000)]
LayoutTests:
Reviewed by Maciej
<rdar://problem/
4965133> WebKit sends file:// url referrers
Added a new category of http tests - "local" where the test is run as a local file but
the test involves remote resources from the httpd.
This test had to be done with cached subresources to tickle the code path that was failing before,
hence the bizarre different-sized images instead of simple success/failure text
* http/tests/local/file-url-sent-as-referer-expected.txt: Added.
* http/tests/local/file-url-sent-as-referer.html: Added - document.writes an img source
that ends up testing the http-referer
* http/tests/security/resources/green250x50.png: Added.
* http/tests/security/resources/red200x100.png: Added.
* http/tests/security/resources/showRefererImage.php: Added - By scanning the referrer,
sends back either the success or failure image
WebCore:
Reviewed by Maciej
<rdar://problem/
4965133> WebKit sends file:// url referrers
* loader/SubresourceLoader.cpp:
(WebCore::SubresourceLoader::create): In SubresourceLoader::create(), we make a copy of the original request
to use for the load. We then call FrameLoader::canLoad() which tells us if we should hide the referer. Before
this fix if it said to hide the referrer, we would simply not apply a new referrer to our copy of the request.
But if the original request already had a referrer, so did our copy. We simply have to clear the referrer from
the copied request.
WebKitTools:
Reviewed by Maciej
<rdar://problem/
4965133> WebKit sends file:// url referrers
* Scripts/run-webkit-tests: Enhanced the http tests so that we can run layout tests
on local files, but have an httpd for remote resources
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19553
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mjs [Sat, 10 Feb 2007 10:35:38 +0000 (10:35 +0000)]
- add missing result and update tests to work right from DumpRenderTree
* fast/dom/Window/resources/window-appendages-cleared-results.html:
* fast/dom/Window/window-appendages-cleared-expected.txt: Added.
* fast/dom/Window/window-appendages-cleared.html:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19552
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mjs [Sat, 10 Feb 2007 09:12:14 +0000 (09:12 +0000)]
LayoutTests:
Regression not reviewed, based loosely on test case from Ian Eng.
- test case for <rdar://problem/
4988091> objects attached to Window not cleared (memory leak)
* fast/dom/Window/resources/window-appendages-cleared-results.html: Added.
* fast/dom/Window/window-appendages-cleared.html: Added.
WebCore:
Reviewed by me, patch from Ian Eng (cleaned up by me some).
- fixed <rdar://problem/
4988091> objects attached to Window not cleared (memory leak)
Test case: fast/dom/Window/window-appendages-cleared.html
* bindings/js/kjs_window.cpp:
(KJS::Window::clearHelperObjectProperties):
(KJS::Window::clear):
* bindings/js/kjs_window.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19551
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
beidson [Sat, 10 Feb 2007 01:39:40 +0000 (01:39 +0000)]
Reviewed by Tim Hatcher
<rdar://problem/
4985497> - Plugs a potential null DocumentLoader deref when
transitioning out of the Bookmarks View
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::recursiveGoToItem): add a null check
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19550
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kdecker [Sat, 10 Feb 2007 00:58:29 +0000 (00:58 +0000)]
Reviewed by Darin & Maciej.
Fixed: <rdar://problem/
4930688> REGRESSION: missing images when reloading webarchives (11962)
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::canUseArchivedResource): The bug here is that because a reload sets a cache
policy of NSURLRequestReloadIgnoringCacheData (rightfully so), this method was refusing to load
subresources in WebArchives. It's OK to use archive subresources for the NSURLRequestReloadIgnoringCacheData
cache policy because we're not worried about the actual contents of a WebArchive changing on disk.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19549
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
thatcher [Sat, 10 Feb 2007 00:15:51 +0000 (00:15 +0000)]
Attempt to fix the build when using buildit.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19548
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bdakin [Fri, 9 Feb 2007 23:53:43 +0000 (23:53 +0000)]
Rubber-stamped by John . . . and Adam.
* page/ContextMenuController.cpp:
(WebCore::ContextMenuController::contextMenuItemSelected): Missing
break.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19547
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
justing [Fri, 9 Feb 2007 23:27:10 +0000 (23:27 +0000)]
LayoutTests:
Reviewed by darin
* editing/selection/
4975120-expected.checksum: Added.
* editing/selection/
4975120-expected.png: Added.
* editing/selection/
4975120-expected.txt: Added.
* editing/selection/
4975120.html: Added.
WebCore:
Reviewed by darin
<rdar://problem/
4975120>
REGRESSION: double-cursor after switching window away/back (11770)
<http://bugs.webkit.org/show_bug.cgi?id=11328>
Gmail Editor: Caret can simultaneously appear in both the TO: and message body fields
* page/mac/WebCoreFrameBridge.h: Removed two unused methods
left over from the old form control implementation.
WebKit:
Reviewed by darin
<rdar://problem/
4975120>
REGRESSION: double-cursor after switching window away/back (11770)
<http://bugs.webkit.org/show_bug.cgi?id=11328>
Gmail Editor: Caret can simultaneously appear in both the TO: and message body fields
* WebCoreSupport/WebFrameBridge.mm: Removed unused methods.
* WebView/WebHTMLView.mm: Ditto.
(-[WebHTMLView _web_firstResponderCausesFocusDisplay]): Don't
appear focused if a descendant view is firstResponder.
(-[WebHTMLView _updateActiveState]): Removed the check for a BOOL
that was always false.
* WebView/WebHTMLViewInternal.h: Removed a BOOL that's always false.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19546
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
sullivan [Fri, 9 Feb 2007 22:51:41 +0000 (22:51 +0000)]
* rendering/bidi.cpp:
(WebCore::bidiNext):
At Darin's suggestion, moved the "next = 0" line from my previous patch to the start of the loop body
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19545
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
justing [Fri, 9 Feb 2007 22:35:34 +0000 (22:35 +0000)]
LayoutTests:
Reviewed by john
<rdar://problem/
4960116>
REGRESSION: Nightly Safari crashes in WebCore::SelectionController::xPosForVerticalArrowNavigation (12416)
* editing/selection/
4960116-expected.checksum: Added.
* editing/selection/
4960116-expected.png: Added.
* editing/selection/
4960116-expected.txt: Added.
* editing/selection/
4960116.html: Added.
WebCore:
Reviewed by john
<rdar://problem/
4960116>
REGRESSION: Nightly Safari crashes in WebCore::SelectionController::xPosForVerticalArrowNavigation (12416)
* editing/SelectionController.cpp:
(WebCore::SelectionController::xPosForVerticalArrowNavigation):
Null check. VisiblePosition creation can fail if a node that
contains the selection was made invisible after the selection
was made and before this function is called during a selection
modification operation.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19543
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
justing [Fri, 9 Feb 2007 22:25:39 +0000 (22:25 +0000)]
LayoutTests:
Reviewed by john
<rdar://problem/
4983858>
REGRESSION: In a new mail message, attempting to select a single word causes the selection to extend to the previous line
* editing/selection/
4983858-expected.checksum: Added.
* editing/selection/
4983858-expected.png: Added.
* editing/selection/
4983858-expected.txt: Added.
* editing/selection/
4983858.html: Added.
WebCore:
Reviewed by john
<rdar://problem/
4983858>
REGRESSION: In a new mail message, attempting to select a single word causes the selection to extend to the previous line
* editing/TextIterator.cpp:
(WebCore::SimplifiedBackwardsTextIterator::exitNode):
We recently split shouldEmitNewlineForNode into
shouldEmitNewline{Before, After}Node, so this function now
needs an implementation that is different from
SimplifiedBackwardsTextIterator::handleNonTextNode. The
difference is that we must call shouldEmit*BeforeNode
instead of shouldEmit*AfterNode since we are a) exiting
nodes and b) moving backward.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19542
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
justing [Fri, 9 Feb 2007 22:11:18 +0000 (22:11 +0000)]
LayoutTests:
Reviewed by john
<rdar://problem/
4916541>
Some of the selection isn't preserved during an Indent opreration
Added:
* editing/execCommand/
4916541-expected.checksum: Added.
* editing/execCommand/
4916541-expected.png: Added.
* editing/execCommand/
4916541-expected.txt: Added.
* editing/execCommand/
4916541.html: Added.
Fixed:
* editing/execCommand/
4641880-2-expected.checksum:
* editing/execCommand/
4641880-2-expected.png:
* editing/execCommand/
4641880-2-expected.txt:
* editing/execCommand/indent-selection-expected.checksum:
* editing/execCommand/indent-selection-expected.png:
* editing/execCommand/indent-selection-expected.txt:
Added a FIXME:
* editing/execCommand/indent-list-item-expected.checksum:
* editing/execCommand/indent-list-item-expected.png:
* editing/execCommand/indent-list-item-expected.txt:
* editing/execCommand/indent-list-item.html:
WebCore:
Reviewed by john
<rdar://problem/
4916541>
Some of the selection isn't preserved during an Indent opreration
* editing/IndentOutdentCommand.cpp:
(WebCore::indexForVisiblePosition): Added.
(WebCore::IndentOutdentCommand::indentRegion): Use rangeLength
and rangeFromLocationAndLength to restore the selection after
the repeated moveParagraph calls necessary to perform indent are
finished.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19541
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
sullivan [Fri, 9 Feb 2007 22:05:04 +0000 (22:05 +0000)]
Reviewed by Kevin Decker
- fixed <rdar://problem/
4960095> REPRODUCIBLE HANG: WebKit freezes when printing as PDF
a certain kind of code (12449)
No test case because I don't know how to make the bug occur without printing.
* rendering/bidi.cpp:
(WebCore::bidiNext):
reset loop's "next" variable after using it; we were setting "current" to the same value
of "next" each subsequent time through the loop, which is not helpful.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19539
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Fri, 9 Feb 2007 21:49:59 +0000 (21:49 +0000)]
Reviewed by Adele.
- Add TextEvent to the DOM (based on the proposed DOM level 3)
to be used to fix some international input bugs soon.
At this point, we don't send any text events.
- Remove some obsolete files.
* CMakeLists.txt:
* WebCore.pro:
* WebCore.xcodeproj/project.pbxproj:
* WebCoreSources.bkl:
Add new files, remove obsolete files.
* DerivedSources.make: Add TextEvent to the Objective-C and JavaScript bindings lists.
* WebCore.exp: Export DOMTextEvent Objective-C wrapper.
* bindings/js/kjs_events.cpp: (KJS::toJS): Added TextEvent to the list of Event subclasses
so we make the right kind of JS wrapper.
* bindings/objc/DOMEvents.mm: (+[DOMEvent _eventWith:]): Same thing, for Objective-C.
* bindings/objc/DOMInternal.h: Added DOMTextEventInternal.h.
* dom/DOMImplementation.cpp: (WebCore::DOMImplementation::hasFeature):
Added "TextEvents", "3.0" to the list of things we'll answer true for
(as specified in the DOM Level 3 documentation).
This isn't so great until we actually send textInput events, but that's coming soon.
* dom/Document.cpp: (WebCore::Document::createEvent): Add "TextEvent" as a way to make
a TextEvent (as specified in the DOM Level 3 documentation).
* dom/Event.h:
* dom/Event.cpp: (WebCore::Event::isTextEvent): Added virtual function to be used
for runtime type checking of Event objects (as for other event types).
* dom/TextEvent.cpp: Added.
* dom/TextEvent.h: Added.
* dom/TextEvent.idl: Added.
* platform/mac/WebCoreWidgetHolder.h: Removed.
* rendering/CounterListItem.h: Removed.
* rendering/CounterResetNode.cpp: Removed.
* rendering/CounterResetNode.h: Removed.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19538
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca [Fri, 9 Feb 2007 20:33:01 +0000 (20:33 +0000)]
Reviewed by Geoff.
<rdar://problem/
4816376>
REGRESSION: NetNewsWire 3.0 - Crashes in WebDocumentLoaderMac::attachToFrame() (12674)
The bug was that the NNW policy delegate never calls back on the policy listener so we'll try to do a load
while there's a policy decision underway. The extra call to setPolicyDocumentLoader would cause a detached (and deallocated)
WebDataSource to be reattached and thus causing a crash.
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::load):
Remove extra call to setPolicyDocumentLoader.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19537
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bdakin [Fri, 9 Feb 2007 20:06:29 +0000 (20:06 +0000)]
WebCore:
Fix for <rdar://problem/
4674537> REGRESSION: Adobe Acrobat 8 - Text
blinks when mouse is moved, and is invisible otherwise
Acrobat 8 was relying on a WebKit bug that was fixed about a year
ago with r12753. The bug was that we would not reload a page if the
source of an iframe was set to the same value it already was. Now
that we have fixed the bug, Acrobat constantly reloads their EULA,
making it blinky and impossible to read.
No layout test since the fix is to add an Acrobat-specific quirk.
* WebCore.exp:
* html/HTMLFrameElementBase.cpp:
(WebCore::HTMLFrameElementBase::setLocation): If the new url is the
same as the old one and we are honoring the Acrobat quirk, don't do
anything.
* page/Settings.cpp:
(WebCore::Settings::Settings):
(WebCore::Settings::setNeedsAcrobatFrameReloadingQuirk):
* page/Settings.h:
(WebCore::Settings::needsAcrobatFrameReloadingQuirk):
WebKit:
Reviewed by Darin.
Fix for <rdar://problem/
4674537> REGRESSION: Adobe Acrobat 8 - Text
blinks when mouse is moved, and is invisible otherwise
Allow quirk if the Application was linked before 3.0 and if the
application is Adobe Acrobat.
* Misc/WebKitVersionChecks.h:
* WebView/WebView.mm:
(-[WebView _updateWebCoreSettingsFromPreferences:]):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19536
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
beidson [Fri, 9 Feb 2007 20:00:03 +0000 (20:00 +0000)]
Rubberstamped by Dave Harrison
Disable the thread-check assertion in WebCore, as well as Webkit
* WebCore.xcodeproj/project.pbxproj:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19535
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca [Fri, 9 Feb 2007 19:28:02 +0000 (19:28 +0000)]
JavaScriptCore:
Reviewed by Geoff.
<rdar://problem/
4930614>
Safari complains about "Slow Script" if GMail is left open and machine is busy
<rdar://problem/
4649516>
Turn off slow script dialog or crank up time that makes it come up
<rdar://problem/
4963589>
Slow script warning is displayed after closing of PROMPT or PRINT dialog
Re-do the way script timeouts are handled. No longer use a unix timer that sends signals. Instead, add a
tick count and increment it in loop bodies. If the tick count reaches a threshold, do a timeout check. If the total time executing
is higher than the timeout value, (possibly) interrupt the script. The timeout checker also adjusts the threshold dynamically
to prevent doing the timeout check too often.
* JavaScriptCore.exp:
Remove pause and resume calls.
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
Add winmm.lib.
* kjs/interpreter.cpp:
(KJS::Interpreter::init):
(KJS::Interpreter::~Interpreter):
(KJS::Interpreter::startTimeoutCheck):
(KJS::Interpreter::stopTimeoutCheck):
(KJS::Interpreter::resetTimeoutCheck):
(KJS::getCurrentTime):
(KJS::Interpreter::checkTimeout):
* kjs/interpreter.h:
(KJS::Interpreter::timedOut):
* kjs/nodes.cpp:
(DoWhileNode::execute):
(WhileNode::execute):
(ForNode::execute):
WebCore:
Reviewed by Geoff.
No need to pause timeout checks anymore.
* bindings/js/kjs_window.cpp:
(KJS::WindowFunc::callAsFunction):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19534
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
thatcher [Fri, 9 Feb 2007 18:48:20 +0000 (18:48 +0000)]
Reviewed by Brady.
* WebKit.exp: Add WebBaseNetscapePluginView to the export list.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19531
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
thatcher [Fri, 9 Feb 2007 18:44:09 +0000 (18:44 +0000)]
Build fix. Use 0 or 0.0 instead of nil to prevent a compile warning.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19530
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
sullivan [Fri, 9 Feb 2007 16:48:47 +0000 (16:48 +0000)]
WebCore:
Reviewed by Beth
- WebCore part of fix for radar
4939636, problems with context menu items and binaries linked
against WebKit 2.0.
* platform/ContextMenuItem.h:
(WebCore::):
Tweaked comment; bumped enum value for new SPI tags to avoid conflict with pre-3.0 SPI tag values.
WebKit:
Reviewed by Beth
- WebKit part of fix for radar
4939636, problems with context menu items and binaries linked
against WebKit 2.0.
* WebKit.xcodeproj/project.pbxproj:
Changed DYLIB_CURRENT_VERSION to 2 (was 1)
* Misc/WebKitVersionChecks.h:
Added constant WEBKIT_FIRST_VERSION_WITH_3_0_CONTEXT_MENU_TAGS, which is 2 but in the weird
format that these version checks use.
* WebView/WebUIDelegatePrivate.h:
Tweaked comments; included the old values for three tags for context menu items that changed
from SPI to API in 3.0; renamed WEBMENUITEMTAG_SPI_START to WEBMENUITEMTAG_WEBKIT_3_0_SPI_START
for clarity, and bumped its value to avoid conflict with the three old values
* WebCoreSupport/WebContextMenuClient.mm:
(isAppleMail):
new helper function that checks the bundle identifier
(fixMenusToSendToOldClients):
Removed return value for clarity; now checks linked-on version and also makes special case
for Mail; now replaces three API tags with their old SPI values for clients that linked
against old WebKit version, in addition to replacing new API with WebMenuItemTagOther for
items that had no specific tag before.
(fixMenusReceivedFromOldClients):
Removed return value for clarity; removed defaultMenuItems parameter because it's no longer
necessary; removed code that tried to recognize menus that got confused by the SPI -> API
change (we now pass the old SPI values to these clients to avoid confusing them); now
restores the tags for the items whose tags were replaced in fixMenusToSendToOldClients
(this used to restore the tags of the default items rather than the new items, which was
incorrect but happened to work since the clients we tested were using the objects from the
default items array in their new items array)
(WebContextMenuClient::getCustomMenuFromDefaultItems):
Updated to account for the removed return values for the two fix-up methods; moved the
autorelease of newItems here, which is clearer and was the source of a leak before.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19529
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bdash [Fri, 9 Feb 2007 13:55:43 +0000 (13:55 +0000)]
2007-02-09 Nicholas Shanks <webkit@nickshanks.com>
Reviewed by Dave Hyatt.
Removed broken recognition of :last-* and :only-* selectors
* css/CSSGrammar.y:
* css/CSSSelector.cpp:
(WebCore::CSSSelector::extractPseudoType):
* css/CSSSelector.h:
(WebCore::CSSSelector::):
* css/cssstyleselector.cpp:
(WebCore::CSSStyleSelector::checkOneSelector):
2007-02-09 Nicholas Shanks <webkit@nickshanks.com>
Reviewed by Dave Hyatt.
Removed broken recognition of :last-* and :only-* selectors
Test results show red indicating property unsupported
Previous behaviour was to erroneously make everything green
* css3/expected_failures/css3-modsel-33-expected.checksum: Added.
* css3/expected_failures/css3-modsel-33-expected.png: Added.
* css3/expected_failures/css3-modsel-33-expected.txt: Added.
* css3/expected_failures/css3-modsel-33.html: Added.
* css3/expected_failures/css3-modsel-35-expected.checksum: Added.
* css3/expected_failures/css3-modsel-35-expected.png: Added.
* css3/expected_failures/css3-modsel-35-expected.txt: Added.
* css3/expected_failures/css3-modsel-35.html: Added.
* css3/expected_failures/css3-modsel-36-expected.checksum: Added.
* css3/expected_failures/css3-modsel-36-expected.png: Added.
* css3/expected_failures/css3-modsel-36-expected.txt: Added.
* css3/expected_failures/css3-modsel-36.html: Added.
* css3/expected_failures/css3-modsel-37-expected.checksum: Added.
* css3/expected_failures/css3-modsel-37-expected.png: Added.
* css3/expected_failures/css3-modsel-37-expected.txt: Added.
* css3/expected_failures/css3-modsel-37.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19528
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mjs [Fri, 9 Feb 2007 13:24:35 +0000 (13:24 +0000)]
Reviewed by Mark.
<rdar://problem/
4980176>
* page/Frame.cpp:
(WebCore::Frame::pageDestroyed): Since this frame is getting
disconnected from its page, ensure it is not the focus node.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19527
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kjk [Fri, 9 Feb 2007 10:57:36 +0000 (10:57 +0000)]
Reviewed by Maciej.
gdklauncher crashes when compiled with NDEBUG defined.
* Projects/gdk/webcore-gdk.bkl:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19526
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mjs [Fri, 9 Feb 2007 10:44:41 +0000 (10:44 +0000)]
Reviewed by Mitz.
<rdar://problem/
4971224> REGRESSION: ASSERT in WebCore with Mail (12491)
http://bugs.webkit.org/show_bug.cgi?id=12491
No test case. Not testable since there is no way to do substitute
data loads from layout tests.
* loader/MainResourceLoader.cpp:
(WebCore::MainResourceLoader::continueAfterContentPolicy): Don't dispatch data load
callback when loading empty data.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19525
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bdash [Fri, 9 Feb 2007 08:50:57 +0000 (08:50 +0000)]
2007-02-09 Mark Rowe <mrowe@apple.com>
Reviewed by Maciej.
http://bugs.webkit.org/show_bug.cgi?id=12705
REGRESSION: Crash with user stylesheet set
Allow the Frame::canLoad check to skipped so that user stylesheets can be loaded in remote documents.
* ChangeLog:
* loader/DocLoader.cpp:
(WebCore::DocLoader::requestCSSStyleSheet): Skip canLoad check if this is a user stylesheet.
(WebCore::DocLoader::requestUserCSSStyleSheet):
(WebCore::DocLoader::requestResource): Allow canLoad check to be skipped.
* loader/DocLoader.h:
* page/Frame.cpp:
(WebCore::UserStyleSheetLoader::UserStyleSheetLoader):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19524
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kjk [Fri, 9 Feb 2007 06:49:24 +0000 (06:49 +0000)]
Reviewed by Darin.
Linux/gdk build fixes.
* Projects/gdk/webcore-gdk.bkl: Account for file renaming.
* platform/gdk/KeyEventGdk.cpp: Make gdk's tab key recognized as tab so that
keyboard link walking works on gdk.
(WebCore::keyIdentifierForGdkKeyCode):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19523
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
adele [Fri, 9 Feb 2007 06:29:24 +0000 (06:29 +0000)]
LayoutTests:
Reviewed by Brady.
Test for http://bugs.webkit.org/show_bug.cgi?id=12599
<rdar://problem/
4973507> REGRESSION: When replying in Gmail, the caret disappears when you start to type (12599)
* fast/frames/iframe-window-focus-expected.txt: Added.
* fast/frames/iframe-window-focus.html: Added.
WebCore:
Reviewed by Brady.
Fix for http://bugs.webkit.org/show_bug.cgi?id=12599
<rdar://problem/
4973507> REGRESSION: When replying in Gmail, the caret disappears when you start to type (12599)
When a frame's window was focused, the page didn't get updated about the new frame getting focus.
This was causing handleKeyPress to fail because it kept getting a selection for the wrong frame (which wasn't editable).
Test: fast/frames/iframe-window-focus.html
* page/Frame.cpp:
(WebCore::Frame::focusWindow):
(WebCore::Frame::unfocusWindow):
* page/Frame.h:
* page/mac/FrameMac.mm:
(WebCore::FrameMac::focusWindow):
(WebCore::FrameMac::unfocusWindow):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19522
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bdash [Fri, 9 Feb 2007 05:43:46 +0000 (05:43 +0000)]
2007-02-08 Mark Rowe <mrowe@apple.com>
Reviewed by Tim Hatcher.
* nav.inc: Add link to very work-in-progress DOM documentation.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19521
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
adele [Fri, 9 Feb 2007 04:20:26 +0000 (04:20 +0000)]
LayoutTests:
Reviewed by Brady.
Test for http://bugs.webkit.org/show_bug.cgi?id=12480
<rdar://problem/
4971222> REGRESSION (NativeListBox): Deselecting option causes list to jump to top
* fast/forms/listbox-deselect-scroll-expected.checksum: Added.
* fast/forms/listbox-deselect-scroll-expected.png: Added.
* fast/forms/listbox-deselect-scroll-expected.txt: Added.
* fast/forms/listbox-deselect-scroll.html: Added.
WebCore:
Reviewed by Brady.
Fix for http://bugs.webkit.org/show_bug.cgi?id=12480
<rdar://problem/
4971222> REGRESSION (NativeListBox): Deselecting option causes list to jump to top
Test: fast/forms/listbox-deselect-scroll.html
* html/HTMLSelectElement.cpp:
(WebCore::HTMLSelectElement::activeSelectionStartListIndex): Added. Returns the index for the active selection. If there is no active selection,
it returns the first selected index.
(WebCore::HTMLSelectElement::activeSelectionEndListIndex): Added. If there is no active selection, it returns the last selected index.
* html/HTMLSelectElement.h:
* rendering/RenderListBox.cpp: (WebCore::RenderListBox::scrollToRevealSelection): Instead of using the first and last selected indices,
use the active selection indices to determine which item to reveal. This way, when you're selecting with the keyboard, or the mouse,
no unnecessary scrolling will occur if the end of your active selection is already visible.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19520
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
adele [Fri, 9 Feb 2007 02:24:14 +0000 (02:24 +0000)]
LayoutTests:
Reviewed by Hyatt.
Test for: <rdar://problem/
4963411> Items of SELECT element are incorrectly highlighted when display:block is set
* fast/forms/select-block-background-expected.checksum: Added.
* fast/forms/select-block-background-expected.png: Added.
* fast/forms/select-block-background-expected.txt: Added.
* fast/forms/select-block-background.html: Added.
WebCore:
Reviewed by Hyatt.
Fix for <rdar://problem/
4963411> Items of SELECT element are incorrectly highlighted when display:block is set
Test: fast/forms/select-block-background.html
* rendering/RenderListBox.cpp: (WebCore::RenderListBox::paintObject):
Paint the item backgrounds during the PaintPhaseChildBlockBackground or PaintPhaseChildBlockBackgrounds phase.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19518
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bdash [Fri, 9 Feb 2007 02:21:54 +0000 (02:21 +0000)]
2007-02-08 Mitz Pettel <mitz@webkit.org>
Reviewed by Adele.
- fix http://bugs.webkit.org/show_bug.cgi?id=11047
REGRESSION: Empty options cause the entire select to collapse
Test: fast/forms/select-empty-option-height.html
- fix http://bugs.webkit.org/show_bug.cgi?id=10783
REGRESSION (r16044): Clicking a popup changes layout around it
* rendering/RenderMenuList.cpp:
(WebCore::RenderMenuList::setText): If the option text is empty, use a RenderBR
as inner text, to ensure that the inner div has line height.
2007-02-08 Mitz Pettel <mitz@webkit.org>
Reviewed by Adele.
- test for http://bugs.webkit.org/show_bug.cgi?id=11047
REGRESSION: Empty options cause the entire select to collapse
- updated results for http://bugs.webkit.org/show_bug.cgi?id=10783
REGRESSION (r16044): Clicking a popup changes layout around it
* fast/forms/HTMLOptionElement_label07-expected.txt:
* fast/forms/form-element-geometry-expected.txt:
* fast/forms/select-baseline-expected.txt:
* fast/forms/select-empty-option-height-expected.checksum: Added.
* fast/forms/select-empty-option-height-expected.png: Added.
* fast/forms/select-empty-option-height-expected.txt: Added.
* fast/forms/select-empty-option-height.html: Added.
* fast/replaced/three-selects-break-expected.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19517
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren [Fri, 9 Feb 2007 01:48:57 +0000 (01:48 +0000)]
WebCore:
Reviewed by Beth Dakin.
Added a hard counter for SubresourceLoaders because the leaks tool now
ignores them.
* loader/SubresourceLoader.cpp:
(WebCore::):
(WebCore::SubresourceLoaderCounter::~SubresourceLoaderCounter):
(WebCore::SubresourceLoader::SubresourceLoader):
(WebCore::SubresourceLoader::~SubresourceLoader):
* page/Frame.cpp: Removed unnecessary #define
WebKitTools:
Reviewed by Beth Dakin.
Ignore another false leak report.
* Scripts/run-webkit-tests:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19516
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren [Fri, 9 Feb 2007 01:44:17 +0000 (01:44 +0000)]
LayoutTests:
Reviewed by Beth Dakin.
Updated results now that we actually return the correct ones.
* fast/css/computed-style-expected.txt:
WebCore:
Reviewed by Beth Dakin.
Fixed <rdar://problem/
4982374> CSSComputedStyleDeclaration::getPropertyCSSValue
leak reported by buildbot
The leak was a typo: "new" instead of "return new". I also generously
deployed RefPtr in places that were holding ref-counted objects in
bare pointers.
* css/CSSComputedStyleDeclaration.cpp:
(WebCore::valueForShadow):
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19515
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kjk [Thu, 8 Feb 2007 23:07:02 +0000 (23:07 +0000)]
Reviewed by Adam Roben.
Linux/gdk build fixes.
* GdkLauncher/main.cpp: Add -exit-after-loading and
-dump-render-tree as debugging aid.
(strEq):
(main):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19514
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren [Thu, 8 Feb 2007 23:01:49 +0000 (23:01 +0000)]
build fix, oops!
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19513
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kjk [Thu, 8 Feb 2007 22:59:10 +0000 (22:59 +0000)]
Reviewed by Adam Roben.
Linux/gdk build fixes.
* platform/gdk/EditorClientGdk.cpp: Added. Based on qt version.
(WebCore::EditorClientGdk::shouldDeleteRange):
(WebCore::EditorClientGdk::shouldShowDeleteInterface):
(WebCore::EditorClientGdk::isContinuousSpellCheckingEnabled):
(WebCore::EditorClientGdk::isGrammarCheckingEnabled):
(WebCore::EditorClientGdk::spellCheckerDocumentTag):
(WebCore::EditorClientGdk::shouldBeginEditing):
(WebCore::EditorClientGdk::shouldEndEditing):
(WebCore::EditorClientGdk::shouldInsertText):
(WebCore::EditorClientGdk::shouldApplyStyle):
(WebCore::EditorClientGdk::didBeginEditing):
(WebCore::EditorClientGdk::respondToChangedContents):
(WebCore::EditorClientGdk::didEndEditing):
(WebCore::EditorClientGdk::didWriteSelectionToPasteboard):
(WebCore::EditorClientGdk::didSetSelectionTypesForPasteboard):
(WebCore::EditorClientGdk::selectWordBeforeMenuEvent):
(WebCore::EditorClientGdk::isEditable):
(WebCore::EditorClientGdk::registerCommandForUndo):
(WebCore::EditorClientGdk::registerCommandForRedo):
(WebCore::EditorClientGdk::clearUndoRedoOperations):
(WebCore::EditorClientGdk::canUndo):
(WebCore::EditorClientGdk::canRedo):
(WebCore::EditorClientGdk::undo):
(WebCore::EditorClientGdk::redo):
(WebCore::EditorClientGdk::shouldInsertNode):
(WebCore::EditorClientGdk::pageDestroyed):
(WebCore::EditorClientGdk::smartInsertDeleteEnabled):
(WebCore::EditorClientGdk::toggleContinuousSpellChecking):
(WebCore::EditorClientGdk::toggleGrammarChecking):
(WebCore::EditorClientGdk::handleKeyPress):
(WebCore::EditorClientGdk::EditorClientGdk):
(WebCore::EditorClientGdk::setPage):
* platform/gdk/EditorClientGdk.h: Added. Ditto.
* platform/gdk/FrameGdk.cpp: Add exitAfterLoading and dumpRenderTreeAfterLoading
as small debugging features. Remove FrameGdkClient as no other platform has Frame*Client
anymore. Adjust for new APIs.
(WebCore::FrameGdk::FrameGdk):
(WebCore::FrameGdk::onDidFinishLoad):
(WebCore::FrameGdk::dumpRenderTree):
(WebCore::FrameGdk::keyPress):
(WebCore::FrameGdk::handleGdkEvent):
(WebCore::FrameGdk::focusWindow):
(WebCore::FrameGdk::unfocusWindow):
(WebCore::FrameGdk::getObjectInstanceForWidget):
(WebCore::FrameGdk::getEmbedInstanceForWidget):
(WebCore::FrameGdk::bindingRootObject):
(WebCore::FrameGdk::print):
(WebCore::FrameGdk::getAppletInstanceForWidget):
(WebCore::FrameGdk::issueCutCommand):
(WebCore::FrameGdk::issueCopyCommand):
(WebCore::FrameGdk::issuePasteCommand):
(WebCore::FrameGdk::issueTransposeCommand):
(WebCore::FrameGdk::issuePasteAndMatchStyleCommand):
(WebCore::FrameGdk::markedTextRange):
(WebCore::FrameGdk::shouldChangeSelection):
(WebCore::FrameGdk::respondToChangedSelection):
(WebCore::FrameGdk::mimeTypeForFileName):
* platform/gdk/FrameGdk.h: Ditto.
(WebCore::FrameGdk::setExitAfterLoading):
(WebCore::FrameGdk::exitAfterLoading):
(WebCore::FrameGdk::setDumpRenderTreeAfterLoading):
(WebCore::FrameGdk::dumpRenderTreeAfterLoading):
(WebCore::GdkFrame):
* platform/gdk/TemporaryLinkStubs.cpp: Adjust to new APIs. Small cleanups.
(FrameView::updateBorder):
(Widget::setEnabled):
(Widget::isEnabled):
(Widget::enableFlushDrawing):
(Widget::removeFromParent):
(Widget::paint):
(Widget::setIsSelected):
(Widget::invalidate):
(Widget::invalidateRect):
(PlatformMouseEvent::PlatformMouseEvent):
(WebCore::findWordBoundary):
(ChromeClientGdk::chromeDestroyed):
(ChromeClientGdk::closeWindowSoon):
(ChromeClientGdk::canTakeFocus):
(ChromeClientGdk::takeFocus):
(ChromeClientGdk::canRunBeforeUnloadConfirmPanel):
(ChromeClientGdk::addMessageToConsole):
(ChromeClientGdk::runBeforeUnloadConfirmPanel):
(ChromeClientGdk::runJavaScriptAlert):
(ChromeClientGdk::runJavaScriptConfirm):
(ChromeClientGdk::runJavaScriptPrompt):
(ChromeClientGdk::setStatusbarText):
(ChromeClientGdk::shouldInterruptJavaScript):
(WebCore::inputElementAltText):
(WebCore::resetButtonDefaultLabel):
(WebCore::searchableIndexIntroduction):
(WebCore::fileButtonChooseFileLabel):
(WebCore::fileButtonNoFileSelectedLabel):
(WebCore::contextMenuItemTagOpenLinkInNewWindow):
(WebCore::contextMenuItemTagDownloadLinkToDisk):
(WebCore::contextMenuItemTagCopyLinkToClipboard):
(WebCore::contextMenuItemTagOpenImageInNewWindow):
(WebCore::contextMenuItemTagDownloadImageToDisk):
(WebCore::contextMenuItemTagCopyImageToClipboard):
(WebCore::contextMenuItemTagOpenFrameInNewWindow):
(WebCore::contextMenuItemTagCopy):
(WebCore::contextMenuItemTagGoBack):
(WebCore::contextMenuItemTagGoForward):
(WebCore::contextMenuItemTagStop):
(WebCore::contextMenuItemTagReload):
(WebCore::contextMenuItemTagCut):
(WebCore::contextMenuItemTagPaste):
(WebCore::contextMenuItemTagNoGuessesFound):
(WebCore::contextMenuItemTagIgnoreSpelling):
(WebCore::contextMenuItemTagLearnSpelling):
(WebCore::contextMenuItemTagSearchWeb):
(WebCore::contextMenuItemTagLookUpInDictionary):
(WebCore::contextMenuItemTagOpenLink):
(WebCore::contextMenuItemTagIgnoreGrammar):
(WebCore::contextMenuItemTagSpellingMenu):
(WebCore::contextMenuItemTagShowSpellingPanel):
(WebCore::contextMenuItemTagCheckSpelling):
(WebCore::contextMenuItemTagCheckSpellingWhileTyping):
(WebCore::contextMenuItemTagCheckGrammarWithSpelling):
(WebCore::contextMenuItemTagFontMenu):
(WebCore::contextMenuItemTagBold):
(WebCore::contextMenuItemTagItalic):
(WebCore::contextMenuItemTagUnderline):
(WebCore::contextMenuItemTagOutline):
(WebCore::contextMenuItemTagWritingDirectionMenu):
(WebCore::contextMenuItemTagDefaultDirection):
(WebCore::contextMenuItemTagLeftToRight):
(WebCore::contextMenuItemTagRightToLeft):
(PlugInInfoStore::createPluginInfoForPluginAtIndex):
(PlugInInfoStore::pluginCount):
(WebCore::PlugInInfoStore::supportsMIMEType):
(WebCore::refreshPlugins):
(SearchPopupMenu::saveRecentSearches):
(SearchPopupMenu::loadRecentSearches):
(SearchPopupMenu::SearchPopupMenu):
(Path::apply):
(PlatformScrollbar::PlatformScrollbar):
(PlatformScrollbar::~PlatformScrollbar):
(PlatformScrollbar::width):
(PlatformScrollbar::height):
(PlatformScrollbar::setEnabled):
(PlatformScrollbar::paint):
(PlatformScrollbar::updateThumbPosition):
(PlatformScrollbar::updateThumbProportion):
(PlatformScrollbar::setRect):
(ResourceHandle::willLoadFromCache):
(ResourceHandle::loadsBlocked):
(ResourceHandle::loadResourceSynchronously):
(PageCache::close):
(Editor::ignoreSpelling):
(Editor::learnSpelling):
(Editor::isSelectionUngrammatical):
(Editor::isSelectionMisspelled):
(Editor::guessesForMisspelledSelection):
(Editor::guessesForUngrammaticalSelection):
(Editor::markMisspellingsAfterTypingToPosition):
(Editor::newGeneralClipboard):
(Pasteboard::generalPasteboard):
(Pasteboard::writeSelection):
(Pasteboard::writeURL):
(Pasteboard::clear):
(Pasteboard::canSmartReplace):
(Pasteboard::documentFragment):
(Pasteboard::plainText):
(Pasteboard::Pasteboard):
(Pasteboard::~Pasteboard):
(ContextMenu::ContextMenu):
(ContextMenu::~ContextMenu):
(ContextMenu::appendItem):
(ContextMenu::setPlatformDescription):
(ContextMenu::platformDescription):
(ContextMenuItem::ContextMenuItem):
(ContextMenuItem::~ContextMenuItem):
(ContextMenuItem::releasePlatformDescription):
(ContextMenuItem::type):
(ContextMenuItem::setType):
(ContextMenuItem::action):
(ContextMenuItem::setAction):
(ContextMenuItem::title):
(ContextMenuItem::setTitle):
(ContextMenuItem::platformSubMenu):
(ContextMenuItem::setSubMenu):
(ContextMenuItem::setChecked):
(ContextMenuItem::setEnabled):
(WebCore::systemBeep):
(WebCore::userIdleTime):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19512
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kjk [Thu, 8 Feb 2007 22:37:14 +0000 (22:37 +0000)]
Reviewed by Adam Roben.
Linux/gdk build fixes.
* platform/GlyphPageTreeNode.h: Fix header guard name.
* platform/gdk/ChromeClientGdk.h:
* platform/gdk/CursorGdk.cpp:
(WebCore::verticalTextCursor):
(WebCore::cellCursor):
(WebCore::contextMenuCursor):
(WebCore::noDropCursor):
(WebCore::copyCursor):
(WebCore::progressCursor):
(WebCore::aliasCursor):
* platform/gdk/MouseEventGdk.cpp:
(WebCore::PlatformMouseEvent::PlatformMouseEvent):
* platform/gdk/PageGdk.cpp: Removed. No longer used.
* platform/gdk/RenderThemeGdk.cpp:
(WebCore::RenderThemeGdk::getThemeData):
(WebCore::RenderThemeGdk::setCheckboxSize):
(WebCore::RenderThemeGdk::paintCheckbox):
(WebCore::RenderThemeGdk::setRadioSize):
(WebCore::RenderThemeGdk::paintRadio):
(WebCore::RenderThemeGdk::paintButton):
(WebCore::RenderThemeGdk::adjustTextFieldStyle):
(WebCore::RenderThemeGdk::paintTextField):
(WebCore::RenderThemeGdk::paintTextArea):
(WebCore::RenderThemeGdk::systemFont):
* platform/gdk/RenderThemeGdk.h:
* platform/gdk/ScreenGdk.cpp:
(WebCore::screenDepth):
(WebCore::screenDepthPerComponent):
(WebCore::screenIsMonochrome):
(WebCore::screenRect):
(WebCore::screenAvailableRect):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19511
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren [Thu, 8 Feb 2007 22:33:26 +0000 (22:33 +0000)]
Minor fixup based on Maciej's review last night.
* Scripts/run-webkit-tests: Use normal "increment at end of loop" behavior,
and do a little math to make it work.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19510
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kjk [Thu, 8 Feb 2007 22:15:36 +0000 (22:15 +0000)]
Reviewed by Adam Roben.
Linux/gdk build fixes for cairo.
* platform/graphics/GraphicsContext.cpp:
* platform/graphics/cairo/GraphicsContextCairo.cpp:
(WebCore::GraphicsContext::GraphicsContext):
(WebCore::GraphicsContext::strokeArc):
(WebCore::GraphicsContext::drawFocusRing):
(WebCore::GraphicsContext::setFocusRingClip):
(WebCore::GraphicsContext::clearFocusRingClip):
(WebCore::GraphicsContext::drawLineForMisspellingOrBadGrammar):
(WebCore::GraphicsContext::origin):
(WebCore::GraphicsContext::setPlatformFillColor):
(WebCore::GraphicsContext::setPlatformStrokeColor):
(WebCore::GraphicsContext::setPlatformStrokeThickness):
(WebCore::GraphicsContext::setPlatformStrokeStyle):
(WebCore::GraphicsContext::setPlatformFont):
(WebCore::GraphicsContext::setURLForRect):
(WebCore::GraphicsContext::addRoundedRectClip):
(WebCore::GraphicsContext::addInnerRoundedRectClip):
(WebCore::GraphicsContext::setShadow):
(WebCore::GraphicsContext::clearShadow):
(WebCore::GraphicsContext::beginTransparencyLayer):
(WebCore::GraphicsContext::endTransparencyLayer):
(WebCore::GraphicsContext::clearRect):
(WebCore::GraphicsContext::strokeRect):
(WebCore::GraphicsContext::setLineCap):
(WebCore::GraphicsContext::setLineJoin):
(WebCore::GraphicsContext::setMiterLimit):
(WebCore::GraphicsContext::setAlpha):
(WebCore::toCairoOperator):
(WebCore::GraphicsContext::setCompositeOperation):
(WebCore::GraphicsContext::clip):
(WebCore::GraphicsContext::rotate):
(WebCore::GraphicsContext::scale):
(WebCore::GraphicsContext::clipOut):
(WebCore::GraphicsContext::clipOutEllipseInRect):
(WebCore::GraphicsContext::fillRoundedRect):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19508
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kjk [Thu, 8 Feb 2007 22:07:18 +0000 (22:07 +0000)]
WebCore:
Reviewed by Adam Roben.
Linux/gdk build fixes.
* Projects/gdk/webcore-gdk.bkl:
* WebCoreSources.bkl:
* webcore-base.bkl:
WebKitTools:
Reviewed by Adam Roben..
Linux/gdk build fixes.
* GdkLauncher/gdklauncher.bkl:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19507
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
beidson [Thu, 8 Feb 2007 21:01:28 +0000 (21:01 +0000)]
Reviewed by Tim Hatcher
Tweaked the thread violation behavior to be disabled by default, and to provide
an easy breakpoint to set.
The possibilities for the "WebCoreThreadCheck" user defaults key are -
- The value "None" disables thread checking
- The value "Log" causes an NSLog on a violation
- The value "Exception" causes exceptions to be raised on a violation
* platform/Logging.h:
* platform/mac/LoggingMac.mm:
(WebCore::_WebCoreThreadViolationCheck):
(WebCoreReportThreadViolation): In the global namespace, making breakpoints cake!
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19506
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren [Thu, 8 Feb 2007 20:56:26 +0000 (20:56 +0000)]
Reviewed by Adam Roben, Darin Adler.
Updated results for tests that started failing after my run-webkit-tests
check-in.
These failures were not regressions. My check-in just caused the regular
bot to behave more like the leaks bot, so it started reporting the results
that the leaks bot had been reporting all along.
There does seem to be an underlying bug in the way XHTML documents report
line numbers for JavaScript exceptions. I've file that bug along with a
reduction:
http://bugs.webkit.org/show_bug.cgi?id=12700
JavaScript errors in XML documents have incorrect line numbers
However, that bug is not a regression, so I think we should treat it separately.
* dom/xhtml/level2/html/frame-expected.txt:
* dom/xhtml/level2/html/iframe-expected.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19505
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kmccullo [Thu, 8 Feb 2007 20:23:14 +0000 (20:23 +0000)]
Reviewed by
- Fix layout test failures.
* Scripts/run-webkit-tests:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19504
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
beidson [Thu, 8 Feb 2007 19:58:50 +0000 (19:58 +0000)]
Reviewed by Tim Hatcher
<rdar://problem/
4983515> Need mechanism to protect against WebKit calls from secondary threads
This initial landing is a conservative move until we can be certain of performance impact.
By writing to the user defaults key @"WebCoreThreadCheck" for the WebKit app you're running -
- The value "None" disables thread checking
- The value "Exception" causes exceptions to be raised on a violation
- The default is to do the check, and NSLog each violation
* bindings/objc/ExceptionHandlers.h: Add a "Is Main Thread" assert macro
* bindings/scripts/CodeGeneratorObjC.pm: Use new mechanism in allocs and deallocs for now
* platform/Logging.h: Added WebCoreThreadViolationCheck macro
* platform/mac/LoggingMac.mm:
(WebCore::_WebCoreThreadViolationCheck): Check for main-threadedness, and do some stuff
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19503
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kmccullo [Thu, 8 Feb 2007 19:19:52 +0000 (19:19 +0000)]
Reviewed by
- fixing a build breakage.
* Misc/WebNSAttributedStringExtras.mm:
(fileWrapperForElement):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19502
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kmccullo [Thu, 8 Feb 2007 18:39:32 +0000 (18:39 +0000)]
LayoutTests:
Reviewed by Maciej, Darin and Mark.
rdar://problem/
4922454
- No longer allow remote sites to access local resources.
* fast/loader/local-JavaScript-from-local-expected.txt: Added.
* fast/loader/local-JavaScript-from-local.html: Added.
* fast/loader/local-iFrame-source-from-local-expected.txt: Added.
* fast/loader/local-iFrame-source-from-local.html: Added.
* fast/loader/local-image-from-local-expected.txt: Added.
* fast/loader/local-image-from-local.html: Added.
* http/tests/security/local-JavaScript-from-remote-expected.txt: Added.
* http/tests/security/local-JavaScript-from-remote.html: Added.
* http/tests/security/local-iFrame-from-remote-expected.txt: Added.
* http/tests/security/local-iFrame-from-remote.html: Added.
* http/tests/security/local-image-from-remote-expected.txt: Added.
* http/tests/security/local-image-from-remote.html: Added.
* http/tests/security/resources/compass.jpg: Added.
* http/tests/security/resources/localPage.html: Added.
* http/tests/security/resources/localPage.html.orig: Added.
* http/tests/security/resources/localScript.js: Added.
WebCore:
Reviewed by Maciej, Darin, and Mark.
rdar://problem/
4922454
- Prevents remote sites from executing local scripts.
* bindings/objc/DOM.mm: - renamed a function that is now in the base class
(-[DOMElement image]):
(-[DOMElement _imageTIFFRepresentation]):
* dom/XMLTokenizer.cpp: - removed needless asserts
(WebCore::XMLTokenizer::notifyFinished):
* html/HTMLImageLoader.cpp: - renamed a function that is now in the base class
(WebCore::HTMLImageLoader::dispatchLoadEvent):
* html/HTMLTokenizer.cpp: - removed needless asserts
(WebCore::HTMLTokenizer::reset):
(WebCore::HTMLTokenizer::notifyFinished):
* ksvg2/misc/SVGImageLoader.cpp: - renamed a function that is now in the base class
(WebCore::SVGImageLoader::dispatchLoadEvent):
* loader/Cache.cpp: - return early if an error occured
(WebCore::Cache::requestResource):
(WebCore::Cache::remove):
* loader/CachedImage.h: - renamed a function that is now in the base class
(WebCore::CachedImage::canRender):
* loader/CachedResource.h: - renamed a function that is now in the base class
(WebCore::CachedResource::errorOccurred):
* loader/CachedScript.h: - renamed a function that is now in the base class
(WebCore::CachedScript::schedule):
* loader/DocLoader.cpp: - The heart of the fix, prevents resources from being created or retrieved from the cache if a remote site is requesting the local resource.
(WebCore::DocLoader::requestResource):
(WebCore::DocLoader::setLoadInProgress):
* page/EventHandler.cpp: - renamed a function that is now in the base class
(WebCore::selectCursor):
* rendering/HitTestResult.cpp: - renamed a function that is now in the base class
(WebCore::HitTestResult::image):
* rendering/RenderImage.cpp: - renamed a function that is now in the base class
(WebCore::RenderImage::setCachedImage):
(WebCore::RenderImage::imageChanged):
(WebCore::RenderImage::paint):
(WebCore::RenderImage::layout):
(WebCore::RenderImage::calcAspectRatioWidth):
(WebCore::RenderImage::calcAspectRatioHeight):
* rendering/RenderImage.h: - renamed a function that is now in the base class
(WebCore::RenderImage::errorOccurred):
* rendering/RenderListItem.cpp: - renamed a function that is now in the base class
(WebCore::RenderListItem::setStyle):
* rendering/RenderListMarker.cpp: - renamed a function that is now in the base class
(WebCore::RenderListMarker::isImage):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19500
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Thu, 8 Feb 2007 18:19:12 +0000 (18:19 +0000)]
Reviewed by Anders.
* Scripts/check-for-global-initializers: For speed, only check files that
have been modified since the last time we linked. For tidiness, capture
stderr from nm, and prevent "nm: no name list" messages from going out.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19498
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren [Thu, 8 Feb 2007 08:42:21 +0000 (08:42 +0000)]
Reviewed by Maciej Stachowiak, Adam Roben.
Added 'nthly' support to run-webkit-tests. It's like 'singly', for an
arbitrary number n.
Plus some renames:
- DumpRenderTree => "dumpTool" (to match abstraction elsewhere)
- checkLeaks => "shouldCheckLeaks" (to match style guidelines)
- tool => dumpTool (to match abstraction elsewhere)
- httpdOpen => isHttpdOpen (to match style guidelines)
Plus a few logic fixups:
- Don't check isDumpToolOpen when we know we've called openDumpTool().
- Use a single code path to decide when to shut down dumpTool and
when to check for leaks, since the operations are coincidental.
- Use a single code path for running the leaks tool, since the only
thing that varies between configurations is the output file name.
- Increment $count after each test finishes, instead of at the end
of the loop, to help with comparing to the length of the array
and %-ing by n.
- Use a more robust test inside the loop to determine if we need to
close dumpTool, instead of copying the closing code outside the loop.
Layout tests pass.
* Scripts/run-webkit-tests:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19497
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kjk [Thu, 8 Feb 2007 06:29:48 +0000 (06:29 +0000)]
Reviewed by Maciej.
Add updateGeometry() to gdk's ScrollView. Needed to fix resizing of the window
in gdk.
* platform/ScrollView.h:
* platform/gdk/ScrollViewGdk.cpp:
(WebCore::ScrollView::updateGeometry):
(WebCore::ScrollView::setDrawable):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19496
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kjk [Thu, 8 Feb 2007 06:25:15 +0000 (06:25 +0000)]
Reviewed by Maciej.
Linux/gdk build fixes.
* platform/ContextMenuItem.h:
* platform/PlatformMenuDescription.h:
* platform/gdk/PopupMenuGdk.cpp: Added. Renamed from RenderPopupMenuGdk.cpp for
consistency with other platforms.
(WebCore::PopupMenu::PopupMenu):
(WebCore::PopupMenu::~PopupMenu):
* platform/gdk/RenderPopupMenuGdk.cpp: Removed.
* platform/gdk/RenderPopupMenuGdk.h: Removed.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19495
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aroben [Thu, 8 Feb 2007 05:41:39 +0000 (05:41 +0000)]
2007-02-07 Charles Ying <charles_ying@yahoo.com>
Reviewed by Adam.
Code suggestion by aroben
Fix http://bugs.webkit.org/show_bug.cgi?id=12688
REGRESSION (r19469): ASSERT when right clicking on hyperlinks! in TOT webkit
* WebCoreSupport/WebContextMenuClient.mm:
(fixMenusReceivedFromOldClients):
- fixMenusReceivedFromOldClients was hitting an ASSERT incorrectly
because it could not match [item title] to any of the contentMenuItemTags
using pointer comparison ==. Instead, it needs to do a string comparison
between [item title] and the various contentMenuItemTags using
isEqualToString instead of ==. You would encounter this whenever the
context menu was activated, e.g., from a hyperlink right click (or
control click).
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19494
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bdash [Thu, 8 Feb 2007 05:12:58 +0000 (05:12 +0000)]
2007-02-07 Mitz Pettel <mitz@webkit.org>
Reviewed by Maciej.
- fix http://bugs.webkit.org/show_bug.cgi?id=12608
Incorrect min. width calculation of a series of floats with clear:both and white-space:nowrap
Test: fast/block/float/nowrap-clear-min-width.html
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::calcInlineMinMaxWidth):
2007-02-07 Mitz Pettel <mitz@webkit.org>
Reviewed by Maciej.
- test for http://bugs.webkit.org/show_bug.cgi?id=12608
Incorrect min. width calculation of a series of floats with clear:both and white-space:nowrap
* fast/block/float/nowrap-clear-min-width-expected.checksum: Added.
* fast/block/float/nowrap-clear-min-width-expected.png: Added.
* fast/block/float/nowrap-clear-min-width-expected.txt: Added.
* fast/block/float/nowrap-clear-min-width.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19493
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bdash [Thu, 8 Feb 2007 05:10:34 +0000 (05:10 +0000)]
2007-02-07 Mitz Pettel <mitz@webkit.org>
Reviewed by Dave Hyatt.
- fix http://bugs.webkit.org/show_bug.cgi?id=10522
REGRESSION: Incomplete repaint after table relayout that decreases height
Test: fast/repaint/intermediate-layout-position.html
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::layoutBlock): Adjust the old bounds by the layout delta,
to get the block's absolute bounds as they were before its ancestors moved it
during layout.
(WebCore::RenderBlock::collapseMargins): Update the layout delta for the child
when moving it.
(WebCore::RenderBlock::clearFloatsIfNeeded): Ditto.
(WebCore::RenderBlock::determineHorizontalPosition): Ditto.
(WebCore::RenderBlock::layoutBlockChildren): Ditto.
* rendering/RenderFlexibleBox.cpp:
(WebCore::RenderFlexibleBox::layoutBlock): Adjust the old bounds by the current
layout delta.
* rendering/RenderHTMLCanvas.cpp:
(WebCore::RenderHTMLCanvas::layout): Ditto.
* rendering/RenderImage.cpp:
(WebCore::RenderImage::layout): Ditto.
* rendering/RenderTable.cpp:
(WebCore::RenderTable::layout): Ditto.
* rendering/RenderView.h:
(WebCore::RenderView::layoutDelta): Added. Keeps track of the offset between
the position of the object currently being laid out and its position at the
end of the last layout.
(WebCore::RenderView::addLayoutDelta): Added.
2007-02-07 Mitz Pettel <mitz@webkit.org>
Reviewed by Dave Hyatt.
- repaint test for http://bugs.webkit.org/show_bug.cgi?id=10522
REGRESSION: Incomplete repaint after table relayout that decreases height
* fast/repaint/intermediate-layout-position-expected.checksum: Added.
* fast/repaint/intermediate-layout-position-expected.png: Added.
* fast/repaint/intermediate-layout-position-expected.txt: Added.
* fast/repaint/intermediate-layout-position.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19492
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bdash [Thu, 8 Feb 2007 05:06:44 +0000 (05:06 +0000)]
2007-02-07 Christopher Brichford <chrisb@adobe.com>
Reviewed by Brady.
http://bugs.webkit.org/show_bug.cgi?id=6286
Very large (~500MB) images cause reproducible Safari crash
* loader/CachedImage.cpp:
(WebCore::CachedImage::bufferData): Detect failure to create a
large Vector<> and call error() when that happens.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19491
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bdash [Thu, 8 Feb 2007 04:56:20 +0000 (04:56 +0000)]
2007-02-07 Mitz Pettel <mitz@webkit.org>
Reviewed by Dave Hyatt.
- fix http://bugs.webkit.org/show_bug.cgi?id=5399
no-repeat on negatively positioned background images are ignored
Test: fast/backgrounds/repeat/negative-offset-repeat.html
- fix http://bugs.webkit.org/show_bug.cgi?id=5821
Changing background of <col> doesn't repaint the column
Test: fast/repaint/table-col-background.html
- fix http://bugs.webkit.org/show_bug.cgi?id=11720
REGRESSION: large amounts of CPU consumed viewing this site
* rendering/RenderBox.cpp:
(WebCore::RenderBox::imageChanged): Added. Finds the border and/or background
layer(s) that use the image and invalidates only the rect in which the image
actually paints. There are two special cases in this function: 1) for the body
element, the background is propagated to the root; 2) inline flows do a full
repaint.
(WebCore::RenderBox::calculateBackgroundImageGeometry): Added. Factored out,
simplified and corrected the calculation of the rectangle into which the background
image paints, the tile size and the pattern phase.
(WebCore::RenderBox::paintBackgroundExtended):
* rendering/RenderBox.h:
* rendering/RenderObject.cpp:
* rendering/RenderObject.h:
(WebCore::RenderObject::imageChanged): Moved the implementation to RenderBox.
* rendering/RenderTableCol.cpp:
(WebCore::RenderTableCol::getAbsoluteRepaintRect): Overridden to return the
table's repaint rect.
(WebCore::RenderTableCol::imageChanged): Overridden to do a full repaint, which
currently repaints the entire table.
* rendering/RenderTableCol.h:
* rendering/RenderTableRow.cpp:
(WebCore::RenderTableRow::imageChanged): Overridden to do a full repaint
of the row, since the backgrounds are painted by the cells.
* rendering/RenderTableRow.h:
* rendering/RenderTableSection.cpp:
(WebCore::RenderTableSection::imageChanged): Overridden to do a full
repaint of the section, since the backgrounds are painted by the cells.
* rendering/RenderTableSection.h:
2007-02-07 Mitz Pettel <mitz@webkit.org>
Reviewed by Dave Hyatt.
- pixel test and updated results for http://bugs.webkit.org/show_bug.cgi?id=5399
no-repeat on negatively positioned background images are ignored
- repaint test for http://bugs.webkit.org/show_bug.cgi?id=5821
Changing background of <col> doesn't repaint the column
* fast/backgrounds/repeat/negative-offset-repeat-expected.checksum: Added.
* fast/backgrounds/repeat/negative-offset-repeat-expected.png: Added.
* fast/backgrounds/repeat/negative-offset-repeat-expected.txt: Added.
* fast/backgrounds/repeat/negative-offset-repeat.html: Added. Based on a test by Mark Rowe.
* fast/backgrounds/repeat/resources/gradient.gif: Added.
* fast/repaint/table-col-background-expected.checksum: Added.
* fast/repaint/table-col-background-expected.png: Added.
* fast/repaint/table-col-background-expected.txt: Added.
* fast/repaint/table-col-background.html: Added.
* tables/mozilla/marvin/backgr_position-table-expected.checksum:
* tables/mozilla/marvin/backgr_position-table-expected.png:
* tables/mozilla_expected_failures/marvin/backgr_border-table-cell-expected.checksum:
* tables/mozilla_expected_failures/marvin/backgr_border-table-cell-expected.png:
* tables/mozilla_expected_failures/marvin/backgr_border-table-column-expected.checksum:
* tables/mozilla_expected_failures/marvin/backgr_border-table-column-expected.png:
* tables/mozilla_expected_failures/marvin/backgr_border-table-column-group-expected.checksum:
* tables/mozilla_expected_failures/marvin/backgr_border-table-column-group-expected.png:
* tables/mozilla_expected_failures/marvin/backgr_border-table-expected.checksum:
* tables/mozilla_expected_failures/marvin/backgr_border-table-expected.png:
* tables/mozilla_expected_failures/marvin/backgr_border-table-row-expected.checksum:
* tables/mozilla_expected_failures/marvin/backgr_border-table-row-expected.png:
* tables/mozilla_expected_failures/marvin/backgr_border-table-row-group-expected.checksum:
* tables/mozilla_expected_failures/marvin/backgr_border-table-row-group-expected.png:
* tables/mozilla_expected_failures/marvin/backgr_layers-hide-expected.checksum:
* tables/mozilla_expected_failures/marvin/backgr_layers-hide-expected.png:
* tables/mozilla_expected_failures/marvin/backgr_position-table-cell-expected.checksum:
* tables/mozilla_expected_failures/marvin/backgr_position-table-cell-expected.png:
* tables/mozilla_expected_failures/marvin/backgr_position-table-column-expected.checksum:
* tables/mozilla_expected_failures/marvin/backgr_position-table-column-expected.png:
* tables/mozilla_expected_failures/marvin/backgr_position-table-column-group-expected.checksum:
* tables/mozilla_expected_failures/marvin/backgr_position-table-column-group-expected.png:
* tables/mozilla_expected_failures/marvin/backgr_position-table-row-expected.checksum:
* tables/mozilla_expected_failures/marvin/backgr_position-table-row-expected.png:
* tables/mozilla_expected_failures/marvin/backgr_position-table-row-group-expected.checksum:
* tables/mozilla_expected_failures/marvin/backgr_position-table-row-group-expected.png:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19490
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Thu, 8 Feb 2007 03:58:11 +0000 (03:58 +0000)]
* JavaScriptCore.vcproj/JavaScriptCore.sln: Reenable testkjs.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19489
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca [Thu, 8 Feb 2007 03:07:42 +0000 (03:07 +0000)]
Try fixing the Qt build.
* WebCoreSupport/ChromeClientQt.cpp:
(WebCore::ChromeClientQt::shouldInterruptJavaScript):
* WebCoreSupport/ChromeClientQt.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19488
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca [Thu, 8 Feb 2007 03:05:29 +0000 (03:05 +0000)]
WebCore:
Reviewed by Maciej.
Move shouldInterruptJavaScript to the Chrome.
* bindings/js/kjs_binding.cpp:
(KJS::ScriptInterpreter::shouldInterruptScript):
* page/Chrome.cpp:
(WebCore::Chrome::shouldInterruptJavaScript):
* page/Chrome.h:
* page/ChromeClient.h:
* page/Frame.h:
* page/mac/FrameMac.h:
* page/mac/FrameMac.mm:
* page/mac/WebCoreFrameBridge.h:
* platform/graphics/svg/SVGImageEmptyClients.h:
(WebCore::SVGEmptyChromeClient::shouldInterruptJavaScript):
WebKit:
Reviewed by Maciej.
Move shouldInterruptJavaScript to the Chrome.
* WebCoreSupport/WebChromeClient.h:
* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::shouldInterruptJavaScript):
* WebCoreSupport/WebFrameBridge.mm:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19487
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Thu, 8 Feb 2007 02:20:44 +0000 (02:20 +0000)]
Reviewed by Maciej.
- <rdar://problem/
4826861> WebKit tests show memory leaks in NSHTMLReader, caused by method named "hash"
* bindings/scripts/CodeGeneratorObjC.pm: Added a list of method names we should never use, since they
are in base classes WebScriptObject and NSObject. Luckily, only "hash" is causing trouble. Added
"hash" to the existing special case for "id". Now "hash" is "hashName" just as "id" is "idName".
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19486
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
sullivan [Thu, 8 Feb 2007 01:35:33 +0000 (01:35 +0000)]
Reviewed by Kevin Decker
- fixed all places in WebKit where _web_userVisibleString was used where
_web_originalDataAsString should have been used instead.
* History/WebURLsWithTitles.m:
(+[WebURLsWithTitles writeURLs:andTitles:toPasteboard:]):
use _web_originalDataAsString when writing since these aren't displayed to the user
(+[WebURLsWithTitles URLsFromPasteboard:]):
use _web_URLWithDataAsString when reading, to match what we used when writing
* Misc/WebNSPasteboardExtras.mm:
(-[NSPasteboard _web_writeURL:andTitle:types:]):
use _web_originalDataAsString when writing the NSURL type; continue using
_web_userVisibleString when writing the plain text type
* WebView/WebHTMLView.mm:
(-[WebHTMLView _documentFragmentWithPaths:]):
added comment about why _web_userVisibleString is appropriate here
(-[WebHTMLView _documentFragmentFromPasteboard:inContext:allowPlainText:chosePlainText:]):
use _web_originalDataAsString when setting the href attribute of an anchor tag
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19485
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
harrison [Thu, 8 Feb 2007 01:29:12 +0000 (01:29 +0000)]
Reviewed by Adam.
<rdar://problem/
4943650> REGRESSION: insertion point blink redraws entire web page, making everything slow
Problem is that AppKit recently changed NSControl to trigger a full redraw if the control has a focus ring.
WebHTMLView is a subclass of NSControl, but the focus ring type was the default value, though we actually
draw no focus ring. Fix is to formally set our focus ring type.
* WebView/WebHTMLView.mm:
(-[WebHTMLView initWithFrame:]):
Send [self setFocusRingType:NSFocusRingTypeNone].
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19484
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
sullivan [Thu, 8 Feb 2007 00:49:30 +0000 (00:49 +0000)]
Undid changes that I hadn't intended to check in
* WebView/WebHTMLView.mm:
(-[WebHTMLView _documentFragmentWithPaths:]):
(-[WebHTMLView _documentFragmentFromPasteboard:inContext:allowPlainText:chosePlainText:]):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19483
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
sullivan [Thu, 8 Feb 2007 00:41:47 +0000 (00:41 +0000)]
Reviewed by Ollie and Geoff
- fixed <rdar://problem/
4982345> KURL::createCFURL leak inside -[WebFrameBridge startDraggingImage...]
reported by buildbot
(-[WebHTMLView _startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]):
don't retain the imageURL we pass to the drag controller -- it's just automagically
converted to a KURL anyway
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19482
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kjk [Wed, 7 Feb 2007 23:09:19 +0000 (23:09 +0000)]
Reviewed by Adam Roben.
Linux/gdk build fixes for graphics-related stuff.
* platform/graphics/cairo/ImageCairo.cpp:
(WebCore::BitmapImage::checkForSolidColor):
* platform/graphics/cairo/ImageSourceCairo.cpp:
(WebCore::ImageSource::setData):
* platform/graphics/gdk/ImageGdk.cpp:
(WebCore::BitmapImage::initPlatformData):
(WebCore::BitmapImage::invalidatePlatformData):
(WebCore::Image::loadPlatformResource):
(WebCore::Image::drawPattern):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19481
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
sullivan [Wed, 7 Feb 2007 22:54:05 +0000 (22:54 +0000)]
Reviewed by Darin
- fixed <rdar://problem/
4974420> REGRESSION: Dragging a saved image into the browser window
displays a error (No File exists at the address "null") (12662)
* WebCoreSupport/WebPasteboardHelper.mm:
(WebPasteboardHelper::urlFromPasteboard):
use _web_originalDataAsString instead of _web_userVisibleString, since _web_userVisibleString
can return a string with non-ASCII characters -- suitable for display but not for code
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19480
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kjk [Wed, 7 Feb 2007 22:35:13 +0000 (22:35 +0000)]
Reviewed by Maciej.
Linux/gdk build fixes related to networking.
* platform/network/ResourceHandleInternal.h: Add accessor for m_client.
(WebCore::ResourceHandleInternal::client):
* platform/network/gdk/ResourceHandleCurl.cpp: Add missing functions and
massage for changed APIs.
(WebCore::ResourceHandle::start):
(WebCore::ResourceHandle::cancel):
(WebCore::ResourceHandle::bufferedData):
(WebCore::ResourceHandle::supportsBufferedData):
(WebCore::ResourceHandle::setDefersLoading):
* platform/network/gdk/ResourceHandleManager.cpp: Rename get() to
sharedInstance(). Massaged for changed APIs.
(WebCore::ResourceHandleManager::sharedInstance):
(WebCore::writeCallback):
(WebCore::ResourceHandleManager::downloadTimerCallback):
(WebCore::ResourceHandleManager::remove):
* platform/network/gdk/ResourceHandleManager.h: Ditto.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19479
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kjk [Wed, 7 Feb 2007 22:16:48 +0000 (22:16 +0000)]
Reviewed by Maciej.
Mismatched type of alloc/free function crashes gdk build.
* platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
(WebCore::JPEGImageReader::close):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19478
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kjk [Wed, 7 Feb 2007 22:11:20 +0000 (22:11 +0000)]
Reviewed by Adam Roben.
Linux/gdk build fixes - add file based on qt implementation.
* platform/DragData.h:
* platform/gdk/DragDataGdk.cpp: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19477
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kjk [Wed, 7 Feb 2007 21:53:30 +0000 (21:53 +0000)]
Reviewed by Adam Roben.
Linux/gdk build fixes - add new files based on qt implementation.
* page/gdk/DragControllerGdk.cpp: Added.
(WebCore::DragController::dragOperation):
* page/gdk/EventHandlerGdk.cpp: Added.
(WebCore::EventHandler::focusDocumentView):
(WebCore::EventHandler::passWidgetMouseDownEventToWidget):
(WebCore::EventHandler::handleDrag):
(WebCore::EventHandler::eventActivatedView):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@19476
268f45cc-cd09-0410-ab3c-
d52691b4dbfc