Timeline



Apr 23, 2004:

7:50 PM Changeset in webkit [6475] by darin
  • 2 edits in trunk/WebKit

Reviewed by Maciej.

  • fixed <rdar://problem/3627362>: "bad access with libgmalloc in -[_WebCoreHistoryProvider containsItemForURLUnicode:length:]"
  • History.subproj/WebHistory.m: (-[_WebCoreHistoryProvider containsItemForURLUnicode:length:]): Add range checks so we don't overrun the buffer while looking for slashes.
4:57 PM Changeset in webkit [6474] by hyatt
  • 2 edits in trunk/WebCore

Fix the apple-line-clamp values to more closely match what is needed, an even split of the max lines between the possible
values.

  • khtml/rendering/render_flexbox.cpp: (khtml::RenderFlexibleBox::layoutVerticalBox):
4:43 PM Changeset in webkit [6473] by hyatt
  • 3 edits in trunk/WebCore

Fix to make the containing block percentage height calculation actually work according to the CSS2 spec.
Percentages other than 100% are now supported, and flexing percentage height blocks inside table cells
are now supported.

Reviewed by kocienda

  • khtml/rendering/render_box.cpp: (RenderBox::calcHeight): (RenderBox::calcPercentageHeight):
  • khtml/rendering/render_box.h:
3:40 PM Changeset in webkit [6472] by mjs
  • 7 edits
    2 adds in trunk/JavaScriptCore

Reviewed by Darin.

Implementation of conservative GC, based partly on code from
Darin. It's turned off for now, so it shouldn't have any effect on
the normal build.

  • JavaScriptCore.pbproj/project.pbxproj:
  • kjs/collector.cpp: (KJS::Collector::markStackObjectsConservatively): (KJS::Collector::markProtectedObjects): (KJS::Collector::collect):
  • kjs/collector.h:
  • kjs/protect.h: (KJS::gcProtect): (KJS::gcUnprotect):
  • kjs/protected_values.cpp: Added. (KJS::ProtectedValues::getProtectCount): (KJS::ProtectedValues::increaseProtectCount): (KJS::ProtectedValues::insert): (KJS::ProtectedValues::decreaseProtectCount): (KJS::ProtectedValues::expand): (KJS::ProtectedValues::shrink): (KJS::ProtectedValues::rehash): (KJS::ProtectedValues::computeHash):
  • kjs/protected_values.h: Added.
  • kjs/value.cpp: (ValueImp::useConservativeMark): (ValueImp::mark): (ValueImp::marked):
  • kjs/value.h: (KJS::ValueImp::):
2:20 PM Changeset in webkit [6471] by kocienda
  • 2 edits in trunk/WebCore

Reviewed by John

Fix for this bug:
<rdar://problem/3632163>: "REGRESSSION: crash on css home page"

  • khtml/rendering/render_block.cpp: (khtml::RenderBlock::positionForRenderer): Add null check.
2:17 PM Changeset in webkit [6470] by cblu
  • 4 edits in trunk/WebKit

Reviewed by John

Added header doc comments to proposed API's.

  • WebView.subproj/WebArchive.h:
  • WebView.subproj/WebFramePrivate.h:
  • WebView.subproj/WebResource.h:
12:01 PM Changeset in webkit [6469] by hyatt
  • 3 edits in trunk/WebCore

Fix hiermenu opacity bug. Make sure to save/restore the graphics state before pushing and popping
transparency layers, so that alterations to alpha don't accidentally persist.

Reviewed by kocienda

  • kwq/KWQPainter.mm: (QPainter::beginTransparencyLayer): (QPainter::endTransparencyLayer):
10:18 AM Changeset in webkit [6468] by kocienda
  • 8 edits in trunk/WebCore

Reviewed by Darin

Changed inlineBoxForRenderer(RenderObject *, int) helper that was static
in dom_position.cpp into a virtual method on RenderObjects. Function is
now called inlineBox(int). Functionality unchanged.

  • khtml/rendering/render_br.cpp: (RenderBR::inlineBox)
  • khtml/rendering/render_br.h:
  • khtml/rendering/render_object.cpp: (RenderObject::caretMaxRenderedOffset) (RenderObject::inlineBox)
  • khtml/rendering/render_object.h:
  • khtml/rendering/render_text.cpp: (RenderText::inlineBox)
  • khtml/rendering/render_text.h:
  • khtml/xml/dom_position.cpp: (DOM::renderersOnDifferentLine): (DOM::nextRenderedEditable) (DOM::previousRenderedEditable) (DOM::Position::previousLinePosition) (DOM::Position::nextLinePosition) (DOM::Position::rendersInDifferentPosition)
10:02 AM Changeset in webkit [6467] by kocienda
  • 2 edits in trunk/WebCore

Reviewed by Darin

  • khtml/editing/htmlediting_impl.cpp: (DeleteSelectionCommandImpl::doApply): Fix editing test regression with deleting whitespace at the end of the line. I just made this "improvement" yesterday, and the concept of the change is a good one, but instead of short-circuiting if the selection after deleting collapsible whitespace is a range (which can be confused by "significant" collapsed whitespace at the end of a line), short-circuit if the upstream start position equals the downstream end position.
9:41 AM Changeset in webkit [6466] by vicki
  • 3 edits in trunk

Change version number to '139u'. The tree is open!

9:33 AM Changeset in webkit [6465]
  • 3 copies in tags/Safari-138

This commit was manufactured by cvs2svn to create tag 'Safari-138'.

9:33 AM Changeset in webkit [6464] by vicki
  • 6 edits in trunk

Safari-138 stamp

8:13 AM Changeset in webkit [6463] by kocienda
  • 11 edits in trunk

WebCore:

Reviewed by John

Added some plumbing for applying styles.

  • khtml/xml/dom_docimpl.cpp: (DocumentImpl::createCSSStyleDeclaration): New factory method.
  • khtml/xml/dom_docimpl.h: Declare the above.
  • kwq/DOM-CSS.mm: (-[DOMCSSStyleDeclaration _styleDeclarationImpl]): Expose this in the WebCoreInternal category, "promoting" it from being private to the DOM-CSS.mm file.
  • kwq/DOM.mm: Add -(DOMCSSStyleDeclaration *)createCSSStyleDeclaration extension.
  • kwq/DOMExtensions.h: Delcare the above.
  • kwq/DOMInternal.h: Add _styleDeclarationImpl to WebCoreInternal category.

WebKit:

Reviewed by John

Added some plumbing for applying styles.

  • DOM.subproj/DOMExtensions.h: Copied from WebCore.
  • WebView.subproj/WebView.m: (-[WebView DOMDocument]): Added new helper. (-[WebView styleDeclarationWithText:]): Added new helper.
  • WebView.subproj/WebViewPrivate.h: Declare above methods.
3:40 AM Changeset in webkit [6462] by sullivan
  • 2 edits in trunk/WebCore
  • fixed <rdar://problem/3631541>: "repro crash in KHTMLPart::setFocusNodeIfNeeded"

Reviewed by Maciej.

  • khtml/khtml_part.cpp: (KHTMLPart::setFocusNodeIfNeeded): added nil check
1:43 AM Changeset in webkit [6461] by mjs
  • 2 edits in trunk/WebCore

Back out one of the previous changes, it causes a crash. Whoops!

  • kwq/KWQScrollView.mm: (QScrollView::addChild):

Apr 22, 2004:

2:55 PM Changeset in webkit [6460] by rjw
  • 2 edits in trunk/JavaScriptCore

Fixed build snafu (re-declaration of NPBool in npruntime.h and
npapi.h).

  • bindings/npruntime.h:
2:54 PM Changeset in webkit [6459] by rjw
  • 5 edits
    2 adds in trunk/WebKit

Updates to plugin binding APIs.
Updates to Java plugin APIs.
Transparency fix for Dashboard.

Reviewed by John and Greg Bolsinga.

  • Plugins.subproj/WebPluginJava.h: Added. New API for Java plugin.
  • Plugins.subproj/npfunctions.h:
  • Plugins.subproj/npruntime.h: (_NPString::): (_NPString::_NPVariant::):
  • Plugins.subproj/npsap.h: Added. New API for plugin bindings.
  • WebView.subproj/WebHTMLView.m: (-[WebHTMLView drawRect:]): Update for Dashboard. View must fill with transparency when not drawing background.
  • copy-webcore-files-to-webkit:
2:49 PM Changeset in webkit [6458] by kocienda
  • 2 edits in trunk/WebCore

Reviewed by Hyatt

  • khtml/editing/htmlediting_impl.cpp: (DeleteSelectionCommandImpl::doApply): Short-circuit return if the selection is not a range after collapsing whitespace.
2:38 PM Changeset in webkit [6457] by rjw
  • 11 edits in trunk/JavaScriptCore

Updated plugin binding API to reflect latest revision from
working group.

Biggest change is the introduction of NPVariant used to represent
value types. NPVariant replaces the use of NPObject for the
exchange of values between scripting environment and native code.

Reviewed by John.

  • JavaScriptCore.pbproj/project.pbxproj:
  • bindings/NP_jsobject.cpp: (identiferFromNPIdentifier): (NPN_Call): (NPN_Evaluate): (NPN_GetProperty): (NPN_SetProperty): (NPN_ToString): (NPN_GetPropertyAtIndex): (NPN_SetPropertyAtIndex):
  • bindings/c/c_class.cpp: (CClass::methodsNamed): (CClass::fieldNamed):
  • bindings/c/c_instance.cpp: (CInstance::invokeMethod): (CInstance::defaultValue):
  • bindings/c/c_runtime.cpp: (CField::valueFromInstance): (CField::setValueToInstance):
  • bindings/c/c_utility.cpp: (convertNPStringToUTF16): (convertUTF8ToUTF16): (coerceValueToNPVariantStringType): (convertValueToNPVariant): (convertNPVariantToValue):
  • bindings/c/c_utility.h:
  • bindings/npruntime.cpp: (NPN_GetIdentifier): (NPN_GetIdentifiers): (NPN_UTF8FromIdentifier): (NPN_VariantIsVoid): (NPN_VariantIsNull): (NPN_VariantIsUndefined): (NPN_VariantIsBool): (NPN_VariantIsInt32): (NPN_VariantIsDouble): (NPN_VariantIsString): (NPN_VariantIsObject): (NPN_VariantToBool): (NPN_VariantToString): (NPN_VariantToInt32): (NPN_VariantToDouble): (NPN_VariantToObject): (NPN_InitializeVariantAsVoid): (NPN_InitializeVariantAsNull): (NPN_InitializeVariantAsUndefined): (NPN_InitializeVariantWithBool): (NPN_InitializeVariantWithInt32): (NPN_InitializeVariantWithDouble): (NPN_InitializeVariantWithString): (NPN_InitializeVariantWithStringCopy): (NPN_InitializeVariantWithObject): (NPN_InitializeVariantWithVariant): (NPN_ReleaseVariantValue): (NPN_CreateObject): (NPN_RetainObject): (NPN_ReleaseObject): (NPN_IsKindOfClass): (NPN_SetExceptionWithUTF8): (NPN_SetException):
  • bindings/npruntime.h: (_NPString::): (_NPString::_NPVariant::):
  • bindings/testbindings.cpp: (logMessage): (setDoubleValue): (setIntValue): (setStringValue): (setBooleanValue): (getDoubleValue): (getIntValue): (getStringValue): (getBooleanValue): (myGetProperty): (mySetProperty): (myInvoke): (myAllocate):
1:06 PM Changeset in webkit [6456] by kocienda
  • 13 edits in trunk

WebCore:

Reviewed by Hyatt

More work to bring code up to date with the latest API proposal.

  • khtml/xml/dom_selection.h: Fix typo in comment.
  • kwq/WebCoreBridge.h: -applyStyle:toElementsInDOMRange: is now applyStyle:
  • kwq/WebCoreBridge.mm: (-[WebCoreBridge applyStyle:]): Ditto.

WebKit:

Reviewed by Hyatt

More work to bring code up to date with the latest API proposal. Note that
all of the replaceXXX methods below now operate on the current selection, so
the method implementations have been simplifed accordingly.

  • WebView.subproj/WebDataSource.m: (-[WebDataSource _replaceSelectionWithArchive:]): New name for _replaceSelectionWithWebArchive.
  • WebView.subproj/WebDataSourcePrivate.h: Ditto.
  • WebView.subproj/WebDefaultEditingDelegate.m: (-[WebDefaultEditingDelegate webViewShouldBeginEditing:inDOMRange:]): Added inDOMRange: parameter. (-[WebDefaultEditingDelegate webViewShouldEndEditing:inDOMRange:]): Ditto. (-[WebDefaultEditingDelegate webView shouldChangeSelectedDOMRange:toDOMRange:proposedRange affinity:stillSelecting:]): Missed adding affinity in last patch.
  • WebView.subproj/WebHTMLView.m: (-[WebHTMLView _pasteFromPasteboard:]): Call old method with new name: _replaceSelectionWithArchive
  • WebView.subproj/WebView.m: (-[WebView replaceSelectionWithNode:]): New version of insertNode:replacingDOMRange: (-[WebView replaceSelectionWithText:]): New version of insertText:replacingDOMRange: (-[WebView replaceSelectionWithMarkupString:]): New version of insertMarkupString:replacingDOMRange: (-[WebView replaceSelectionWithArchive:]): New version of insertWebArchive:replacingDOMRange: (-[WebView deleteSelection]): New version of deleteDOMRange: (-[WebView applyStyle:]): New version of applyStyle:toElementsInDOMRange:
  • WebView.subproj/WebViewPrivate.h:
10:54 AM Changeset in webkit [6455] by kocienda
  • 12 edits in trunk

Tests:

Reviewed by John

  • Blot/BlotDocument.m: (-[BlotDocument webView:didFinishLoadForFrame:]): Send along selection affinity in call to set selection.

WebCore:

Reviewed by John

Adds the notion of selection affinity to the editing API, bringing it up to
date with the latest proposal.

  • khtml/xml/dom_selection.cpp: (DOM::Selection::Selection): Adds support for selection affinity member variable. (DOM::Selection::init): Ditto. (DOM::Selection::operator=): Ditto. (DOM::Selection::setAffinity): New function. (DOM::Selection::layoutCaret): Added comment to indicate that we need to enhance this function to handle selection affinity.
  • khtml/xml/dom_selection.h: Added EAffinity enum and m_affinity member variable. (DOM::Selection::): Moved the enums above the constructors. No code change. (DOM::Selection::affinity): New accessor.
  • kwq/WebCoreBridge.h:
  • kwq/WebCoreBridge.mm: Add selection affinity to API declarations as needed. (-[WebCoreBridge setSelectedDOMRange:affinity:]): Ditto. (-[WebCoreBridge selectedDOMRange]): Ditto. (-[WebCoreBridge selectionAffinity]): Ditto.

WebKit:

Reviewed by John

Adds the notion of selection affinity to the editing API, bringing it up to
date with the latest proposal.

  • WebView.subproj/WebView.m: (-[WebView _alterCurrentSelection:direction:granularity:]): Pass selection affinity to the delegate. We can just pass the current one since this does not change with arrow keys. (-[WebView setSelectedDOMRange:affinity:]): Set the affinity on the selection. (-[WebView selectionAffinity]): New accessor. (-[WebView insertNode:replacingDOMRange:]): Change to pass selection affinity to call to set selection. This is just to get the code to compile for now, since this method will soon be removed in place of a similar one from the latest proposal that always works on the current selection. (-[WebView insertText:replacingDOMRange:]): Ditto. (-[WebView insertMarkupString:replacingDOMRange:]): Ditto. (-[WebView insertWebArchive:replacingDOMRange:]): Ditto. (-[WebView deleteDOMRange:]): Ditto. (-[WebView applyStyle:toElementsInDOMRange:]): Ditto.
  • WebView.subproj/WebViewPrivate.h: Add selection affinity to API declarations as needed.
10:10 AM Changeset in webkit [6454] by darin
  • 2 edits in trunk/JavaScriptCore

Reviewed by Maciej.

  • fixed <rdar://problem/3627473>: "REGRESSION (125-137): memory trasher in UString::append, causing many different crashes"
  • kjs/ustring.cpp: (KJS::UString::expandCapacity): Fix sizeof(UChar *) that should be sizeof(UChar). Was resulting in a buffer 2x the needed size. (KJS::UString::expandPreCapacity): Ditto. (KJS::UString::append): Fix malloc that is missing a sizeof(UChar).
10:07 AM Changeset in webkit [6453] by mjs
  • 1 add in trunk/JavaScriptCore/kjs/protect.h

* empty log message *

9:53 AM Changeset in webkit [6452] by mjs
  • 14 edits
    1 add in trunk

JavaScriptCore:

Reviewed by Darin.

Preliminary change for conservative GC. Create "protected"
subclasses to GC-protect objects when on heap, since we will soon
remove the built-in refcounting of the normal wrapper classes. Use
them where needed.

  • JavaScriptCore.pbproj/project.pbxproj:
  • kjs/context.h:
  • kjs/internal.h: (KJS::InterpreterImp::globalObject):
  • kjs/interpreter.h:
  • kjs/property_map.cpp:
  • kjs/reference.h:
  • kjs/reference_list.cpp:

WebCore:

Reviewed by Darin.

Preliminary change for conservative GC. Use new "protected"
subclasses to GC-protect objects when on heap, since we will soon
remove the built-in refcounting of the normal wrapper classes.

  • ForwardingHeaders/kjs/protect.h: Added.
  • khtml/ecma/kjs_binding.h:
  • khtml/ecma/kjs_events.h:
  • khtml/ecma/kjs_traversal.h:
  • khtml/ecma/kjs_window.h:
9:16 AM Changeset in webkit [6451] by kocienda
  • 2 edits in trunk/WebKit

Reviewed by Darin

Work around this bug:
<rdar://problem/3630640>: "Calling interpretKeyEvents: in a custom text view can fail to process keys right after app startup"

  • WebView.subproj/WebView.m: (-[WebView _editingKeyDown:]): The issue is with a message to nil in AppKit key binding manager code. Add call to [NSKeyBindingManager sharedKeyBindingManager] to make sure the not-supposed-to-be-nil object is created before calling interpretKeyEvents:.
8:39 AM Changeset in webkit [6450] by darin
  • 2 edits in trunk/WebCore
  • khtml/ecma/kjs_window.cpp: (Window::get): Removed code that gets properties from the parent. This was a mistake we inherited from KHTML, and they have long since fixed it.
6:24 AM Changeset in webkit [6449] by kocienda
  • 11 edits in trunk

WebCore:

Reviewed by Hyatt

Ensures caret visibility after making an editing action.

  • khtml/xml/dom_selection.cpp: (DOM::Selection::getRepaintRect): Expose this as public.
  • khtml/xml/dom_selection.h: Ditto.
  • kwq/WebCoreBridge.h: Add ensureCaretVisible method.
  • kwq/WebCoreBridge.mm: (-[WebCoreBridge replaceSelectionWithMarkupString:baseURLString:]): Unrelated crash fix. Null-check baseURLString. (-[WebCoreBridge ensureCaretVisible]): Added.

WebKit:

Reviewed by Hyatt

Added calls to ensure caret visibility after the editing action is done.

  • WebView.subproj/WebView.m: (-[WebView _alterCurrentSelection:direction:granularity:]): (-[WebView insertNewline:]): (-[WebView deleteBackward:]): (-[WebView insertText:]):

Apr 21, 2004:

9:41 PM Changeset in webkit [6448] by hyatt
  • 1 edit in trunk/LayoutTests/fast/table/rowspan-paint-order-expected.txt

Fix multiple rowspan test.

9:39 PM Changeset in webkit [6447] by hyatt
  • 2 adds in trunk/LayoutTests/fast/table

Add layout test with multiple rows expanding in percentage heights.

9:37 PM Changeset in webkit [6446] by hyatt
  • 2 edits in trunk/WebCore

Fix for 3245627, nested tables don't expand vertically. I actually fixed the basic problem in the
previous checkin, but this exposed another basic math error where |numVariable| was not being
decremented properly. This meant space was mis-allocated when multiple variable height rows both needed
to expand.

  • khtml/rendering/render_table.cpp: (RenderTableSection::layoutRows):
7:26 PM Changeset in webkit [6445] by hyatt
  • 2 adds in trunk/LayoutTests/fast/table

Add layout test for weird rowspan case.

7:24 PM Changeset in webkit [6444] by hyatt
  • 2 edits in trunk/WebCore

Fix for 3020449, ensure that the paint order of cells with rowspans matches other browsers.

Reviewed by darin

  • khtml/rendering/render_table.cpp: (RenderTableSection::paint):
2:49 PM Changeset in webkit [6443] by hyatt
  • 2 adds in trunk/LayoutTests/fast/table

Add test case for nested percent height tables.

2:48 PM Changeset in webkit [6442] by hyatt
  • 2 edits in trunk/WebCore

Remove the (incorrect) restriction on table flexing that required the cell to have a fixed width. In
reality, the style on the cell is completely irrelevant.

Reviewed by kocienda

  • khtml/rendering/render_table.cpp: (RenderTable::layout):
2:25 PM Changeset in webkit [6441] by hyatt
  • 2 adds in trunk/LayoutTests/fast/table

Add layout test to cover percentage height cells case.

2:24 PM Changeset in webkit [6440] by hyatt
  • 2 edits in trunk/WebCore

Make sure cells that get flexed vertically in tables don't check text children when looking for
percentage height children.

Reviewed by kocienda

  • khtml/rendering/render_table.cpp: (RenderTableSection::layoutRows):
1:56 PM Changeset in webkit [6439] by hyatt
  • 2 adds in trunk/LayoutTests/fast/block/positioning

Add test for the hiermenu image positioning bug.

1:49 PM Changeset in webkit [6438] by hyatt
  • 2 edits in trunk/WebCore

Fix for hiermenus bug. Absolutely positioned images should not contribute to their containing block's
max width. Make sure to disregard positioned elements when computing min/max width.

Reviewed by kocienda

  • khtml/rendering/render_block.cpp: (khtml::InlineMinMaxIterator::next):
1:43 PM Changeset in webkit [6437] by kocienda
  • 8 edits
    2 adds in trunk

Reviewed by Hyatt

A small collection of fixups.

  • khtml/editing/htmlediting_impl.cpp: (DeleteSelectionCommandImpl::doApply): Do not shift ending selection downstream when at position zero of a BR. That's just wrong. Simplify code that does "onlyWhitespace" delete. No need to handle multiple characters here; we can only ever have one thanks to the delete-collapsible-whitespace code. (TypingCommandImpl::issueCommandForDeleteKey): Don't do anything if at the start of a root editable block. This is a no-op....not an opportunity to crash.
  • khtml/rendering/render_block.cpp: (khtml::RenderBlock::positionForRenderer): Return this renderer's element position if the passed-in renderer is nil. This helps to make clicking in empty blocks work.
  • khtml/rendering/render_container.cpp: (RenderContainer::positionForCoordinates): Fixed typo in comment.
  • khtml/xml/dom_position.cpp: (DOM::Position::equivalentLeafPosition): Do not attempt to find a leaf if the position's node does not have a renderer, if the renderer has no kids.
  • layout-tests/editing/deleting/delete-br-001-expected.txt: Update expected results for BR fix.
  • layout-tests/editing/deleting/delete-br-003-expected.txt: Ditto.
  • layout-tests/editing/deleting/delete-br-006-expected.txt: Ditto.
  • layout-tests/editing/deleting/delete-br-007.html: Added. New BR test.
  • layout-tests/editing/deleting/delete-br-007-expected.txt: Added.
9:47 AM Changeset in webkit [6436] by kocienda
  • 3 edits in trunk/WebCore

Reviewed by Hyatt

  • khtml/css/css_computedstyle.cpp: (DOM::CSSComputedStyleDeclarationImpl::getPropertyCSSValue): Added implementations for these properties: CSS_PROP_TEXT_DECORATION, CSS_PROP_VERTICAL_ALIGN, CSS_PROP_TEXT_INDENT, CSS_PROP_LETTER_SPACING, CSS_PROP_WORD_SPACING, CSS_PROP_LINE_HEIGHT
9:42 AM Changeset in webkit [6435] by kocienda
  • 17 edits in trunk/WebCore

Reviewed by John

The Selection class now uses the Position class throughout its public and
private interface. This replaces the inconsistent use of the Position
class here and node/offset pairs there. There are no functional changes, only
updates to the new Selection class API.

  • khtml/ecma/kjs_window.cpp: (Selection::get): (SelectionFunc::tryCall):
  • khtml/editing/htmlediting_impl.cpp: (DeleteCollapsibleWhitespaceCommandImpl::doApply): (DeleteSelectionCommandImpl::joinTextNodesWithSameStyle): (DeleteSelectionCommandImpl::doApply): (InputNewlineCommandImpl::doApply): (InputTextCommandImpl::deleteCharacter): (InputTextCommandImpl::prepareForTextInsertion): (InputTextCommandImpl::execute): (PasteMarkupCommandImpl::doApply): (TypingCommandImpl::issueCommandForDeleteKey):
  • khtml/khtml_part.cpp: (KHTMLPart::findTextNext): (KHTMLPart::setFocusNodeIfNeeded): (KHTMLPart::notifySelectionChanged): (KHTMLPart::isPointInsideSelection): (KHTMLPart::handleMouseMoveEventSelection): (KHTMLPart::khtmlMouseReleaseEvent): (KHTMLPart::selectAll):
  • khtml/rendering/render_block.cpp: (khtml::RenderBlock::paintObject):
  • khtml/xml/dom_docimpl.cpp: (DocumentImpl::updateSelection):
  • khtml/xml/dom_nodeimpl.cpp:
  • khtml/xml/dom_selection.cpp: (DOM::emptyPosition): (DOM::Selection::Selection): (DOM::Selection::init): (DOM::Selection::operator=): (DOM::Selection::moveTo): (DOM::Selection::modify): (DOM::Selection::xPosForVerticalArrowNavigation): (DOM::Selection::clear): (DOM::Selection::setBase): (DOM::Selection::setExtent): (DOM::Selection::setBaseAndExtent): (DOM::Selection::setStart): (DOM::Selection::setEnd): (DOM::Selection::setStartAndEnd): (DOM::Selection::toRange): (DOM::Selection::layoutCaret): (DOM::Selection::needsCaretRepaint): (DOM::Selection::paintCaret): (DOM::Selection::validate): (DOM::Selection::moveToRenderedContent): (DOM::Selection::nodeIsBeforeNode): (DOM::startAndEndLineNodesIncludingNode): (DOM::Selection::debugRenderer): (DOM::Selection::debugPosition):
  • khtml/xml/dom_selection.h: (DOM::Selection::~Selection): (DOM::Selection::base): (DOM::Selection::extent): (DOM::Selection::start): (DOM::Selection::end): (DOM::Selection::assignBase): (DOM::Selection::assignExtent): (DOM::Selection::assignBaseAndExtent): (DOM::Selection::assignStart): (DOM::Selection::assignEnd): (DOM::Selection::assignStartAndEnd): (DOM::operator==):
  • kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::jumpToSelection): (KWQKHTMLPart::selectionStartOffset): (KWQKHTMLPart::selectionEndOffset): (KWQKHTMLPart::selectionStart): (KWQKHTMLPart::selectionEnd):
  • kwq/KWQRenderTreeDebug.cpp: (writeSelection):
  • kwq/WebCoreBridge.mm: (-[WebCoreBridge isSelectionEditable]): (-[WebCoreBridge setSelectionFrom:startOffset:to:endOffset:]): (-[WebCoreBridge setSelectedDOMRange:]):

Apr 20, 2004:

4:36 PM Changeset in webkit [6434] by hyatt
  • 3 edits in trunk/LayoutTests/fast

Fix frames layout tests now that regression has been fixed.

3:59 PM Changeset in webkit [6433] by cblu
  • 2 edits in trunk/WebKit

Fixed: <rdar://problem/3605209>: "HITLIST: REGRESSION (131-132): iframes/frames no longer dump on layout tests"

Reviewed by hyatt.

  • WebView.subproj/WebHTMLRepresentation.m: (-[WebHTMLRepresentation finishedLoadingWithDataSource:]): the encoding was not being set in the about:blank case. Call receivedData:textEncodingName: as we did in the past to set it.
3:17 PM Changeset in webkit [6432] by kocienda
  • 45 edits
    1 add
    2 deletes in trunk/WebCore

Reviewed by Hyatt

Renamed DOMPosition class to Position.
Renamed KHTMLSelection to Selection and moved to DOM namespace.

  • ForwardingHeaders/xml/dom_selection.h: Added.
  • WebCore.pbproj/project.pbxproj: Go Xcode!
  • khtml/khtml_selection.cpp: Removed.
  • khtml/khtml_selection.h: Removed.
  • khtml/xml/dom_position.cpp: Renamed DOMPosition to Position
  • khtml/xml/dom_position.h: Ditto.
  • khtml/xml/dom_selection.cpp: New home for renamed Selection object.
  • khtml/xml/dom_selection.h: Ditto.
2:20 PM Changeset in webkit [6431] by kocienda
  • 22 edits
    2 adds in trunk

WebCore:

Reviewed by Hyatt

  • WebCore.pbproj/project.pbxproj:
  • khtml/khtml_part.cpp: (KHTMLPart::handleMousePressEventDoubleClick): Improved name of expandToElement. Now is expandUsingGranularity. (KHTMLPart::handleMousePressEventTripleClick): Ditto. (KHTMLPart::handleMouseMoveEventSelection): Ditto.
  • khtml/khtml_selection.cpp: (KHTMLSelection::modify): Added support for modifying and extending selection right and left by word. Also added support for extending selection up and down. (KHTMLSelection::expandUsingGranularity): New name for expandToElement. (KHTMLSelection::xPosForVerticalArrowNavigation): Made this function handle cases where we know we want to use a particular position for calculating the right x position. We need this to handle extending selection up and down, and for setting the caret to the right place when moving up and down when a range is already selected. (KHTMLSelection::validate): Name tweak. expandTo variable now granularity.
  • khtml/khtml_selection.h: Make declaration changes for changes to cpp file.
  • khtml/misc/helper.cpp: (khtml::findWordBoundary): Added this hook for KDE to do their version of KWQFindWordBoundary
  • khtml/misc/helper.h:
  • khtml/rendering/render_block.cpp: (khtml::RenderBlock::positionForCoordinates): Factor out closest box finder code to its own function
  • khtml/rendering/render_line.cpp: (InlineFlowBox::closestChildForXPos): New function. This is the factored code that was taken out of render_block.cpp. (InlineBox::closestLeafChildForXPos): Ditto.
  • khtml/rendering/render_line.h: Ditto.
  • khtml/rendering/render_replaced.cpp: (RenderReplaced::positionForCoordinates): I think I am starting to get how the coordinate transforms work. Made some fixups based on this greater sense of enlightenment.
  • khtml/rendering/render_text.cpp: (RenderText::positionForCoordinates): Ditto. Fix lastTextBox/firstTextBox code mistake.
  • khtml/xml/dom_position.cpp: (DOMPosition::previousWordPosition): Added. (DOMPosition::nextWordPosition): Added. (DOMPosition::previousLinePosition): No longer use nodeAtPoint. Use new closestLeafChildForXPos instead. (DOMPosition::nextLinePosition): Ditto. (DOMPosition::inLastEditableInContainingEditableBlock):
  • khtml/xml/dom_position.h:
  • kwq/KWQTextUtilities.cpp: Added. (KWQFindWordBoundary): Factored out code that was in a static function in khtml_selection.cpp so that DOMPosition can use it too.
  • kwq/KWQTextUtilities.h: Added.

WebKit:

Reviewed by Hyatt

Added implementations for these methods.

  • WebView.subproj/WebView.m: (-[WebView moveUpAndModifySelection:]): (-[WebView moveWordLeft:]): (-[WebView moveWordLeftAndModifySelection:]): (-[WebView moveWordRight:]): (-[WebView moveWordRightAndModifySelection:]):
1:36 PM Changeset in webkit [6430]
  • 51 copies
    2 deletes in tags/WebCore-125~6~3

This commit was manufactured by cvs2svn to create tag
'WebCore-125~6~3'.

1:36 PM Changeset in webkit [6429] by vicki
  • 2 edits in branches/Safari-1-2-branch/WebCore

WebCore versioning, WebCore-125.6.3

1:05 PM Changeset in webkit [6428] by vicki
  • 4 edits in branches/Safari-1-2-branch/WebCore
  • fixed <rdar://problem/3626076>: (REGRESSION (10.3.3-7H40): some tables rendering incorrectly) by merging more of the zeldman change (3609695) and fixing HRs
  • khtml/css/html4.css: margins on HRs should be smaller, to match other browsers
  • khtml/rendering/render_block.cpp: (khtml::RenderBlock::layoutBlockChildren):
  • khtml/rendering/render_table.cpp: (RenderTableCell::paint):
11:28 AM Changeset in webkit [6427] by sullivan
  • 3 edits in trunk/WebKit

WebKit:

  • fixed <rdar://problem/3622393>: When in stealth mode, visited webpage contents should not be cached to disk

Reviewed by Ken.

  • WebView.subproj/WebBaseResourceHandleDelegate.m: (-[WebBaseResourceHandleDelegate willCacheResponse:]): if will cache to disk and in stealth mode, replace cache response with an identical one that won't cache to disk.

WebBrowser:

  • fixed the following bugs: <rdar://problem/3529727>: click and hold on an auto-tab folder in the bookmarks bar should show the items in a menu <rdar://problem/3546013>: bookmark button is left in the wrong state when closing a tab with bookmarks in it <rdar://problem/3612787>: When printed page has no HTML title, put URL in header instead of footer <rdar://problem/3628119>: Would like "Reveal in Collections" context menu item in bookmarks filter search results <rdar://problem/3628143>: Would like "Reveal in Collections" context menu item in Bookmarks bar

Reviewed by Chris.

  • BookmarksViewController.m: (-[BookmarksViewController revealBookmark:expand:]): generalized this to work with content items that aren't bookmarks (e.g. history items) (-[BookmarksViewController outlineView:menuForEvent:inRow:tableColumn:]): add a "Reveal in Collections" item just before Delete (-[BookmarksViewController revealSelectedFilterSearchItem]): new method, sets the collection appropriately and then reveals the item
  • BrowserWebBookmarkExtras.m: (-[WebBookmark revealFavorite]): new method, calls through to BrowserWindowController
  • BrowserWebViewPrinting.m: (-[BrowserWebView webView:drawFooterInRect:]): don't draw URL in footer if it's already being drawn in the header
  • BrowserWindowController.h:
  • BrowserWindowController.m: (-[BrowserWindowController revealFavorite:]): new method, calls through to BookmarksViewController (-[BrowserWindowController closeTab:]): update the show/hide bookmarks button here also (we were already updating it when showing a tab)
  • English.lproj/Localizable.strings: updated for these changes
  • FavoriteButton.m: (-[FavoriteButton menu]): add "Reveal in Collections" item (-[FavoriteButton shouldShowContentsMenuFromEvent:waitedForDragDelay:]): added waitedForDragDelay parameter, use it to decide whether to show the menu even for the auto-tab case (-[FavoriteButton performClick:]): pass NO for waitedForDragDelay (-[FavoriteButton mouseDown:]): pass appropriate value for waitedForDragDelay

Apr 19, 2004:

3:54 PM Changeset in webkit [6426] by kocienda
  • 23 edits in trunk

WebCore:

Reviewed by Hyatt

  • khtml/khtml_part.cpp: (KHTMLPart::notifySelectionChanged): Clear the value used for maintaining x position when doing vertical arrow navigation. WebCoreBridge restores this value when needed. (KHTMLPart::setXPosForVerticalArrowNavigation): New accessor. (KHTMLPart::xPosForVerticalArrowNavigation): New accessor.
  • khtml/khtml_part.h: (KHTMLPart::): Add NoXPosForVerticalArrowNavigation constant.
  • khtml/khtml_selection.cpp: (KHTMLSelection::modify): Add cases for UP and DOWN navigation (KHTMLSelection::xPosForVerticalArrowNavigation): New helper.
  • khtml/khtml_selection.h: Add UP and DOWN constants to EDirection enum. (KHTMLSelection::):
  • khtml/khtmlpart_p.h: Declare storage for m_xPosForVerticalArrowNavigation, the value used for maintaining x position when doing vertical arrow navigation.
  • khtml/rendering/render_block.cpp: (khtml::RenderBlock::positionForCoordinates): Improved this function to handle deficiencies exposed when trying to implement new behavior.
  • khtml/rendering/render_br.cpp: (RenderBR::positionForCoordinates): Added implementation of this virtual function.
  • khtml/rendering/render_br.h: Declare implementation for positionForCoordinates virtual function.
  • khtml/rendering/render_replaced.cpp: (RenderReplaced::positionForCoordinates): Improved this function to handle deficiencies exposed when trying to implement new behavior.
  • khtml/rendering/render_text.cpp: (InlineTextBox::offsetForPosition): Remove left/right "bounds" check here. (RenderText::positionForCoordinates): Improved this function to handle deficiencies exposed when trying to implement new behavior.
  • khtml/xml/dom_position.cpp: (inlineBoxForRenderer): Moved to top of file so all code in the file can see this static function. (renderersOnDifferentLine): Ditto. (nextRenderedEditable): Ditto. (previousRenderedEditable): Ditto. (DOMPosition::previousLinePosition): New function. Implements the guts of up/down navigation. (DOMPosition::nextLinePosition): Ditto.
  • khtml/xml/dom_position.h: Added declarations for nextLinePosition and previousLinePosition.
  • kwq/WebCoreBridge.h: Add WebSelectUp and WebSelectDown constants.
  • kwq/WebCoreBridge.mm: (-[WebCoreBridge alterCurrentSelection:direction:granularity:]): Handles saving and restoring the x position used for doing vertical arrow navigation.

WebKit:

Reviewed by Hyatt

  • WebView.subproj/WebView.m: (-[WebView moveDown:]): Added implementation. (-[WebView moveUp:]): Added implementation.
2:26 PM Changeset in webkit [6425] by mjs
  • 3 edits in trunk/JavaScriptCore

Reviewed by Dave.

Optimize prepend using the shared substring optimization. Also,
limit the applicability of shared append and shared prepend. If
you overdo it, it does more harm than good, because you create a
bunch of strings that are disqualified from future shared
append/prepend, for not much immediate savings in allocate/copy
expense.

  • kjs/ustring.cpp: (KJS::): (KJS::UString::Rep::create): (KJS::UString::expandedSize): (KJS::UString::usedPreCapacity): (KJS::UString::expandCapacity): (KJS::UString::expandPreCapacity): (KJS::UString::UString): (KJS::UString::append): (KJS::UString::operator=):
  • kjs/ustring.h: (KJS::UString::Rep::data):
9:55 AM Changeset in webkit [6424] by cblu
  • 5 edits in trunk/WebKit

Added support for pasting frames via WebArchives.

Reviewed by kocienda.

  • WebView.subproj/WebDataSource.m: (-[WebDataSource _addSubframeArchives:]): renamed, now allows subframe archives to be added at anytime (-[WebDataSource _popSubframeArchiveWithName:]): renamed, now deletes the returned subframe to consume less memory (-[WebDataSource _replaceSelectionWithWebArchive:]): added support for subframes
  • WebView.subproj/WebDataSourcePrivate.h:
  • WebView.subproj/WebFrame.m: (-[WebFrame _loadRequest:subresources:subframeArchives:]): call renamed methods (-[WebFrame _loadURL:intoChild:]): ditto
  • WebView.subproj/WebHTMLRepresentation.m: (-[WebHTMLRepresentation loadArchive]): ditto
Note: See TracTimeline for information about the timeline view.