⚠ Archived content — this site is no longer maintained.   Current WebKit documentation is at docs.webkit.org.

Timeline



Nov 17, 2002:

11:55 PM Changeset in webkit [2727] by hyatt
  • 6 edits in trunk/WebCore

Don't use the immediate painting code for now. Revert
to non-immediate code. Using the non-immediate path I
have managed to fix all the regressions except for
mrskin losing updates in its marquee (this works only with
immediate painting) and the general scrollbar regression
(which I just don't understand).

  • khtml/html/html_documentimpl.cpp: (HTMLDocumentImpl::close):
  • khtml/rendering/render_object.cpp: (RenderObject::setLayouted):
  • khtml/rendering/render_root.cpp: (RenderRoot::repaintRectangle): (RenderRoot::repaint):
10:47 PM Changeset in webkit [2726] by trey
  • 3 edits in trunk/WebKit

Code cleanup to make some internal methods return autoreleased objects.

  • WebView.subproj/WebFramePrivate.m: (-[WebFrame _addBackForwardItemClippedAtTarget:]): (-[WebFrame _createItem]): (-[WebFrame _createItemTreeWithTargetFrame:clippedAtTarget:]): (-[WebFrame _transitionToCommitted]):
9:59 PM Changeset in webkit [2725] by trey
  • 8 edits in trunk/WebKit

Fixed 3102076 - REGRESSION: infinite recursion involving bridge end
Fixed 3100929 - REGRESSION: serverRedirectedForDataSource: not sent on server redirects
Fixed 3103381 - REGRESSION: Going back from anchor doesn't restore scroll position

  • WebView.subproj/WebBaseResourceHandleDelegate.m: (-[WebBaseResourceHandleDelegate handle:willSendRequest:]): Return the copy of the request that we make instead of the original.
  • WebView.subproj/WebMainResourceClient.m: (-[WebMainResourceClient handle:willSendRequest:]): Call super after we make our mods to the request, so the copy that super makes for us includes those mods.
  • WebView.subproj/WebFramePrivate.h: Added new state, WebFrameStateCompleting.
  • WebView.subproj/WebFramePrivate.m: (-[WebFrame _transitionToLayoutAcceptable]): Completing state is a NOP. (-[WebFrame _transitionToCommitted]): Completing state is a NOP. (-[WebFrame _isLoadComplete]): Go to Completing state before calling [bridge end]. Go to Completed state afterwards, only if no new loads started in the meantime. (-[WebFrame _loadItem:fromItem:withLoadType:]): When doing anchor nav to get to the item, save and restore scroll state, and set the current item. (-[WebFrame _continueFragmentScrollAfterNavigationPolicy:request:]): Reorder the steps so the right scroll state gets saved to the right place. Also, don't add a backForward item if we're doing a client redirect to an anchor.
8:59 PM Changeset in webkit [2724] by hyatt
  • 5 edits in trunk/WebCore

More refinements to immediate painting code. Still doesn't
fix the scrollbar problem though. :(

  • khtml/html/html_documentimpl.cpp: (HTMLDocumentImpl::close):
  • khtml/khtmlview.cpp: (KHTMLView::init): (KHTMLView::timerEvent):
8:01 PM Changeset in webkit [2723] by hyatt
  • 7 edits in trunk/WebCore

Make immediate repainting of the root element more robust.

  • khtml/html/html_documentimpl.cpp: (HTMLDocumentImpl::close):
  • khtml/khtmlview.cpp: (KHTMLView::unscheduleRepaint):
  • khtml/khtmlview.h:
  • khtml/rendering/render_root.cpp: (RenderRoot::repaint):
7:37 PM Changeset in webkit [2722] by hyatt
  • 3 edits in trunk/WebKit

Back out my previous fix. I have a better one that is
confined to WebCore.

  • WebView.subproj/WebFramePrivate.m: (-[WebFrame _isLoadComplete]):
6:02 PM Changeset in webkit [2721] by hyatt
  • 3 edits in trunk/WebKit

The needsdisplay is necessary even for HTML documents.
I over-optimized here. Fixes the directory.apple.com
regression and the santa clara library regression.

  • WebView.subproj/WebFramePrivate.m: (-[WebFrame _isLoadComplete]):
1:25 PM Changeset in webkit [2720] by darin
  • 23 edits in trunk

WebCore:

  • moved all NSURL and CFURL use out of WebCore
  • kwq/KWQKURL.h: Remove getNSURL() and getNSURLFromString().
  • kwq/KWQKURL.mm: Ditto.
  • kwq/KWQKCookieJar.mm: (KWQKCookieJar::cookie): Pass an NSString instead of an NSURL. (KWQKCookieJar::setCookie): Ditto.
  • kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::openURL): Ditto. (KWQKHTMLPart::openURLRequest): Ditto. (KWQKHTMLPart::submitForm): Ditto. (KWQKHTMLPart::urlSelected): Ditto. (KWQKHTMLPart::createPart): Ditto. (KWQKHTMLPart::redirectionTimerStartedOrStopped): Ditto. (KWQKHTMLPart::userAgent): Ditto. (KWQKHTMLPart::requestedURLString): Receive an NSString instead of an NSURL.
  • kwq/KWQKHTMLPartBrowserExtension.mm: (KHTMLPartBrowserExtension::createNewWindow): Pass an NSString instead of an NSURL. (KHTMLPartBrowserExtension::setIconURL): Ditto. (KHTMLPartBrowserExtension::setTypedIconURL): Ditto.
  • kwq/KWQKJavaAppletWidget.h: Remove use of NSURL, just use QString instead.
  • kwq/KWQKJavaAppletWidget.mm: (KJavaAppletWidget::KJavaAppletWidget): No need to set the QString to nil. (KJavaAppletWidget::~KJavaAppletWidget): No need to release the QString. (KJavaAppletWidget::showApplet): Pass an NSString instead of an NSURL.
  • kwq/KWQLoader.mm: (KWQServeRequest): Pass an NSString instead of an NSURL. (KWQCheckCacheObjectStatus): Ditto.
  • kwq/WebCoreBridge.h: Change all methods to use NSString instead of NSURL.
  • kwq/WebCoreBridge.mm: (-[WebCoreBridge openURL:reload:headers:]): Receive an NSString instead of an NSURL. (-[WebCoreBridge completeURLForDOMString:]): Return an NSString instead of an NSURL. (-[WebCoreBridge elementAtPoint:]): WebCoreElementLinkURL and WebCoreElementImageURL are now strings. (-[WebCoreBridge URL]): Return an NSString instead of an NSURL.
  • kwq/WebCoreCookieAdapter.h: Change all methods to use NSString instead of NSURL.
  • kwq/WebCoreCookieAdapter.m: (-[WebCoreCookieAdapter cookiesForURL:]): Ditto. (-[WebCoreCookieAdapter setCookies:forURL:policyBaseURL:]): Ditto.
  • khtml/rendering/render_applet.cpp: (RenderApplet::processArguments): Tweaked this file a tiny bit, mainly because header dependencies weren't working and we need this file to be recompiled due to inline function changes.

WebKit:

  • update for change to WebCore API so it never uses NSURL
  • WebCoreSupport.subproj/WebBridge.m: (-[WebBridge createWindowWithURL:frameName:]): Take NSString instead of NSURL. (-[WebBridge startLoadingResource:withURL:]): Ditto. (-[WebBridge objectLoadedFromCacheWithURL:response:size:]): Ditto. (-[WebBridge reportClientRedirectToURL:delay:fireDate:]): Ditto. (-[WebBridge setIconURL:]): Ditto. (-[WebBridge setIconURL:withType:]): Ditto. (-[WebBridge loadURL:reload:triggeringEvent:isFormSubmission:]): Ditto. (-[WebBridge postWithURL:data:contentType:triggeringEvent:]): Ditto. (-[WebBridge createChildFrameNamed:withURL:renderPart:allowsScrolling:marginWidth:marginHeight:]): Ditto. (-[WebBridge userAgentForURL:]): Ditto. (-[WebBridge requestedURL]): Return NSString instead of NSURL. (-[WebBridge viewForPluginWithURL:attributes:baseURL:MIMEType:]): Take NSString instead of NSURL. (-[WebBridge viewForJavaAppletWithFrame:attributes:baseURL:]): Take NSString instead of NSURL.
  • WebCoreSupport.subproj/WebCookieAdapter.m: (-[WebCookieAdapter cookiesForURL:]): Take NSString instead of NSURL. (-[WebCookieAdapter setCookies:forURL:policyBaseURL:]): Ditto.
  • WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _commitIfReady]): Pass NSString instead of NSURL.
  • WebView.subproj/WebFramePrivate.m: (-[WebFrame _continueFragmentScrollAfterNavigationPolicy:request:]): Pass NSString instead of NSURL (-[WebFrame _loadURL:loadType:triggeringEvent:isFormSubmission:]): Turn bridge URL into NSURL so we can call _web_URLByRemovingFragment on it.
  • WebView.subproj/WebHTMLViewPrivate.m: (-[WebHTMLView _elementAtPoint:]): Convert NSString to NSURL when making the WebKit element dictionary.
12:39 PM Changeset in webkit [2719] by hyatt
  • 15 edits in trunk/WebCore

Add support for specifying whether repaint should be immediate or
not. Default to async for now to maintain current behavior.

For clipped object repainting (e.g., livepage.apple.com and mrskin)
switch to immediate repainting, since this makes the marquees
faster, stops dropping updates, and keeps the hover effects and
painting on the rest of the page fast (since the marquee rect doesn't
get unioned with links or images that you roll over).

  • khtml/rendering/render_box.cpp: (RenderBox::repaint): (RenderBox::repaintRectangle):
  • khtml/rendering/render_box.h:
  • khtml/rendering/render_html.cpp: (RenderHtml::repaint):
  • khtml/rendering/render_html.h:
  • khtml/rendering/render_object.cpp: (RenderObject::setLayouted): (RenderObject::repaintRectangle):
  • khtml/rendering/render_object.h:
  • khtml/rendering/render_root.cpp: (RenderRoot::repaintRectangle): (RenderRoot::repaint):
  • khtml/rendering/render_root.h:
  • khtml/rendering/render_table.cpp: (RenderTableRow::repaint): (RenderTableCell::repaintRectangle): (RenderTableCell::repaint):
  • khtml/rendering/render_table.h:
  • khtml/rendering/render_text.cpp: (RenderText::repaint):
  • khtml/rendering/render_text.h:
5:52 AM Changeset in webkit [2718] by mjs
  • 15 edits
    1 add in trunk

WebCore:

  • fixed 2949193 - implement onKeyDown, onKeyPress, and onKeyUp event handlers
  • khtml/html/html_formimpl.cpp: (HTMLGenericFormElementImpl::defaultEventHandler):
  • kwq/KWQEvent.h:
  • kwq/KWQEvent.mm: (QKeyEvent::QKeyEvent): Implemented. (QKeyEvent::key): Likewise. (QKeyEvent::state): Likewise. (QKeyEvent::accept): Likewise. (QKeyEvent::ignore): Likewise. (QKeyEvent::isAutoRepeat): Likewise. (QKeyEvent::text): Likewise. (QKeyEvent::ascii): Likewise. (QKeyEvent::count): Likewise. (QKeyEvent::isAccepted): Likewise.
  • kwq/KWQKHTMLPart.h:
  • kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::keyEvent): Translate the event to a QEvent and send it through the DOM event mechanism.
  • kwq/WebCoreBridge.h:
  • kwq/WebCoreBridge.mm: (-[WebCoreBridge interceptKeyEvent:toView:]): Pass event to the KWQ part.
  • kwq/WebCoreBridgePrivate.h: Added.
  • WebCore.pbproj/project.pbxproj: Added new file.

WebKit:

  • fixed 2949193 - implement onKeyDown, onKeyPress, and onKeyUp event handlers
  • WebView.subproj/WebHTMLViewPrivate.h:
  • WebView.subproj/WebHTMLViewPrivate.m: (+[WebHTMLView load]): Pose as NSWindow too now. (-[WebHTMLView _interceptKeyEvent:toView:]): Pass event to WebCore and see if WebCore wants to block it. (-[WebNSWindow sendEvent:]): For all key events that would go to a subview of a WebHTMLView, let the WebHTMLView take a first crack at it.
2:38 AM Changeset in webkit [2717] by hyatt
  • 4 edits in trunk/WebCore

Don't discard linefeeds after elements with no close tag
(e.g., <img> or <input>).

  • khtml/html/htmltokenizer.cpp: (HTMLTokenizer::parseTag):
1:58 AM Changeset in webkit [2716] by hyatt
  • 4 edits in trunk/WebCore

Fix for slashdot table mispositioning in the upper right.
Now that we fixed <td> to set to -konq-center when align="center"
is specified, the style rules are no longer necessary in
html4.css (and are in fact harmful).

  • khtml/css/html4.css:
1:24 AM Changeset in webkit [2715] by hyatt
  • 4 edits in trunk/WebCore

Fix for 3038168. Duh. Remember to be case-insensitive when
checking the type of the <style> attribute.

  • khtml/html/html_headimpl.cpp: (HTMLStyleElementImpl::parseAttribute):
1:04 AM Changeset in webkit [2714] by hyatt
  • 8 edits in trunk/WebCore

This is a fix for bug 3058470. The bug was that replaced elements
were computing their min and max widths wrong. Specifically they
were not adding in borders and padding! This means that any image
with a border around it would potentially break to another line
too early.

Once I fixed this for replaced elements I then went in and
fixed form controls. I added two APPLE_CHANGES features for
our form controls. First I overrode the border/padding functions
to always return 0 for all form controls, since no Aqua control
honors border/padding (nor should it). This fixes the menulist
at the top of wired.com.

Second I made sure that certain controls will ignore CSS-specified
heights and always use their intrinsic heights. These include
<select size=1> (combobox), single line text fields, and buttons.
I allow listboxes and textareas to honor height.

  • khtml/rendering/render_box.cpp: (RenderBox::contentWidth): (RenderBox::contentHeight): (RenderBox::calcWidth): (RenderBox::calcHeight):
  • khtml/rendering/render_form.h:
  • khtml/rendering/render_image.h:
  • khtml/rendering/render_object.h:
  • khtml/rendering/render_replaced.cpp: (RenderReplaced::calcMinMaxWidth):

Nov 16, 2002:

9:15 PM Changeset in webkit [2713] by hyatt
  • 4 edits in trunk/WebCore

Fix for 3078240, <pre> should not establish its own text-align,
but should instead inherit from its parent.

  • khtml/css/html4.css:
7:30 PM Changeset in webkit [2712] by hyatt
  • 5 edits in trunk/WebCore

Rewrite the calculation of min and max width for <pre>s. This
is the second stage of the whitespace rewrite (third stage
will be to stop morphing newlines).

This should fix a bunch of bugs, e.g., especially if you ever
did the following:
<td><pre><span>foo</span>

more text after the newline</pre></td>

The new code now properly handles building up the correct min/max
width for the <pre>.

If anyone recalls seeing any bugs like this, let me know and
I can close them.

  • khtml/rendering/render_flow.cpp: (RenderFlow::calcInlineMinMaxWidth):
  • khtml/rendering/render_text.cpp: (RenderText::trimmedMinMaxWidth): (RenderText::calcMinMaxWidth):
5:57 PM Changeset in webkit [2711] by hyatt
  • 4 edits in trunk/WebCore

Fix more edge cases with whitespace handling that caused some
lines to be too long (and unselectable).

  • khtml/rendering/bidi.cpp: (appendRunsForObject):
5:33 PM Changeset in webkit [2710] by hyatt
  • 4 edits in trunk/WebCore

Make <caption> error-handling more robust.

Specifically, handle <tr> and <td> misplaced inside
<caption>s and still make them be part of the table.

  • khtml/html/htmlparser.cpp: (KHTMLParser::insertNode):
11:57 AM Changeset in webkit [2709] by hyatt
  • 4 edits in trunk/WebCore

Implement the collapsing top margin quirk for <body> (the same
quirk used for table cells) and make sure it works even when the
<body> has margins of its own.

Fixes www.eflightpacks.com (the top frame was shoved down because
the <p> margin didn't collapse away).

  • khtml/rendering/render_flow.cpp: (RenderFlow::layoutBlockChildren):
1:20 AM Changeset in webkit [2708] by hyatt
  • 4 edits in trunk/WebCore

Sigh. Amazingly enough, all other browsers seem to treat
stray </p>s as <p></p> (Mac IE treats it as <br>, but
I'm going with the WinIE/Gecko behavior of <p></p>).

This fixes bug 3063699.

  • khtml/html/htmlparser.cpp: (KHTMLParser::processCloseTag): (KHTMLParser::popBlock):

Nov 15, 2002:

11:29 PM Changeset in webkit [2707] by hyatt
  • 7 edits in trunk/WebCore

Fix for livepage.apple.com slowness. Ensure that
clipped regions only paint their own rectangles
when they or any children inside of them need to
be reflowed.

This fix is intended as an interim band-aid for a much
larger problem (that all of layout doesn't just auto-invalidate
the regions it needs to, and that DHTML doesn't have
specialized behavior to avoid async repainting or even
relayout when only a repaint is required).

  • khtml/khtmlview.cpp: (KHTMLView::timerEvent):
  • khtml/rendering/render_container.cpp: (RenderContainer::removeChildNode): (RenderContainer::appendChildNode): (RenderContainer::insertChildNode): (RenderContainer::layout):
  • khtml/rendering/render_object.cpp: (RenderObject::setLayouted): (RenderObject::scheduleRelayout):
  • khtml/rendering/render_root.cpp: (RenderRoot::repaintRectangle):
6:23 PM Changeset in webkit [2706] by hyatt
  • 4 edits in trunk/WebCore

Fix the problem where the last lines of paragrpahs were getting
justified incorrectly.

  • khtml/rendering/bidi.cpp: (RenderFlow::findNextLineBreak):
4:09 PM Changeset in webkit [2705] by hyatt
  • 4 edits in trunk/WebCore

Fix bustage with <nobr> tags. Inline nowrap elements were
breaking on images when they shouldn't have.

  • khtml/rendering/render_flow.cpp: (RenderFlow::calcInlineMinMaxWidth):
4:06 PM Changeset in webkit [2704] by kocienda
  • 6 edits in trunk/WebCore

Fix for this bug:

Radar 3102708 (REGRESSION: assertion failure backing up to page)

KWQCheckCacheObjectStatus did not create an NSURL in a way that
dealt with the fact that we handle non-NSURL-compliant URL strings.
I have fixed it so it does, and in the process, factored out
the code to do it into a new KURL static function (KURL::getNSURLFromString).

  • kwq/KWQKURL.h:
  • kwq/KWQKURL.mm: (KURL::getNSURL): Now calls through to KURL::getNSURLFromString (KURL::encode_string) (KURL::getNSURLFromString): New function to handle NSURL creation
  • kwq/KWQLoader.mm: (KWQCheckCacheObjectStatus)
3:56 PM Changeset in webkit [2703] by hyatt
  • 5 edits in trunk/WebCore

Fix asserts in tables.

  • khtml/rendering/render_table.cpp: (RenderTableRow::layout):
2:42 PM Changeset in webkit [2702] by darin
  • 4 edits in trunk/WebKit
  • fixed 3079214 -- text/plain page shows up slowly, a few pages at a time
  • WebView.subproj/WebTextView.m: (-[WebTextView initWithFrame:]): Remove unneeded setWidthTracksTextView:, because that's the default. (-[WebTextView dataSourceUpdated:]): Replace the thing each time in the RTF case. (-[WebTextView viewDidMoveToSuperview]): Here's where we resize, but only the width. Resizing the height was causing the bug. (-[WebTextView layout]): Do nothing. (-[WebTextView setAcceptsDrags:]): Update to new name. Since we weren't importing WebDocument.h, we never noticed that this file got out of sync. (-[WebTextView acceptsDrags]): Ditto. (-[WebTextView setAcceptsDrops:]): Ditto. (-[WebTextView acceptsDrops]): Ditto.
  • WebView.subproj/WebDocument.h: Fix typo. It said setAcceptsDrags: twice.
2:35 PM Changeset in webkit [2701] by hyatt
  • 4 edits in trunk/WebCore

Fix for whitespace regressions that caused text overlapping
and text spilling.

  • khtml/rendering/bidi.cpp: (appendRunsForObject):
1:32 PM Changeset in webkit [2700] by hyatt
  • 6 edits in trunk/WebCore

Fix newlines getting stripped out of textareas by not making
rendertext objects for children of textareas.

  • khtml/rendering/render_form.h:
  • khtml/rendering/render_object.h:
  • khtml/xml/dom_textimpl.cpp: (TextImpl::attach):
1:02 PM Changeset in webkit [2699] by hyatt
  • 6 edits in trunk/WebCore

Make <form> inside <table> stay inside the <table> but demote
itself to a leaf. Then the children of the <form> are treated
as though they occurred underneath the <table> itself. Everything
KHTML does with this is completely wrong but this band-aid should
hopefully suffice until 1.0.

Also allowing <input type="hidden"> to be constructed and attached
under <table>s. Since they have no render objects this is safe.
Again, total hack, since CSS2 anonymous table construction should be
implemented and that would have fixed all this.

This collection of hacks makes travelocity render correctly on the
PLT.

  • khtml/css/html4.css:
  • khtml/html/dtd.cpp: (DOM::checkChild):
  • khtml/html/html_tableimpl.cpp: (HTMLTableElementImpl::addChild):
  • khtml/html/htmlparser.cpp: (KHTMLParser::parseToken): (KHTMLParser::insertNode):
12:04 PM Changeset in webkit [2698] by hyatt
  • 4 edits in trunk/WebCore

Fix Hixie's blog. Background images can be transparent, so
if the root's color isn't valid always do a fixup even if you
have a valid background image.

  • khtml/rendering/render_html.cpp: (RenderHtml::printBoxDecorations):
11:42 AM Changeset in webkit [2697] by darin
  • 4 edits in trunk/WebCore
  • kwq/KWQWindowWidget.mm: (KWQWindowWidget::setFrameGeometry): Oops. Make that display:YES.
11:14 AM Changeset in webkit [2696] by darin
  • 4 edits in trunk/WebCore
  • fixed 3090219 -- Window jumps up and down when loading nikon page
  • kwq/KWQWindowWidget.mm: (KWQWindowWidget::setFrameGeometry): Don't pass display:NO when resizing the window.
10:34 AM Changeset in webkit [2695] by darin
  • 3 edits in trunk/WebKit
  • WebView.subproj/WebFramePrivate.m: Removed a bunch of tabs and fixed indenting.
10:30 AM Changeset in webkit [2694] by mjs
  • 7 edits in trunk/WebKit
  • fixed 3102016 - REGRESSION: Command-clicking on a link can open _two_ windows.
  • WebView.subproj/WebDataSourcePrivate.h:
  • WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _setJustOpenedForTargetedLink:]): (-[WebDataSource _justOpenedForTargetedLink]):
  • WebView.subproj/WebFrame.m: (-[WebFrame findOrCreateFramedNamed:]):
  • WebView.subproj/WebFramePrivate.h:
  • WebView.subproj/WebFramePrivate.m: (-[WebFrame _continueAfterNavigationPolicy:]): (-[WebFrame _loadDataSource:withLoadType:]): (-[WebFrame _downloadRequest:toPath:]): (-[WebFrame _setJustOpenedForTargetedLink:]):
10:22 AM Changeset in webkit [2693] by kocienda
  • 4 edits in trunk/WebCore

Remove characters RFC 2396 describes as "unwise" from the
BadChar character class. This causes them to remain unescaped
in KURL objects. As a result, some extra escaping needed to
be added into the getNSURL() function to enable NSURL
objects to be created using a KURL.

This enables me to fix this bug:
Radar 3050437 (Clicking link leads to page with garbled content)

Note, however, that my fix for 3050437 relies on this bug remaining unfixed:

Radar 3102332 (Square bracket characters "sneak through" CFURL illegal character checks)

  • kwq/KWQKURL.mm: (KURL::getNSURL)
9:59 AM Changeset in webkit [2692] by darin
  • 3 edits in trunk/WebKit
  • WebView.subproj/WebFramePrivate.m: (-[WebFrame _checkNavigationPolicyForRequest:dataSource:andCall:withSelector:]): Give the listener a slightly longer lifetime, to make this API a bit more foolproof.
8:46 AM Changeset in webkit [2691] by darin
  • 6 edits in trunk/WebCore

Tools:

  • Scripts/update-alex-localizable-strings: Fix it so that the line numbers in error messages will be accurate.

WebCore:

  • fixed 3027460 -- text areas don't have focus rectangles
  • fixed 2937204 -- text areas have solid black borders
  • kwq/KWQSignal.mm: (KWQSignal::disconnect): Add a special case so we don't hear about finishedParsing all the time.
  • kwq/KWQTextArea.mm: (-[KWQTextArea initWithFrame:]): Use a bezel border, not a line border. (-[KWQTextArea getCursorPositionAsIndex:inParagraph:]): Fix bug where it would return a bogus value for an empty text area. (-[KWQTextArea setCursorPositionToIndex:inParagraph:]): Use setSelectedRange: ratherr than setMarkedText:selectedRange:. (-[KWQTextArea drawRect:]): Draw a focus ring if our text view is first responder. (-[KWQTextArea _KWQ_setKeyboardFocusRingNeedsDisplay]): Added. (-[KWQTextAreaTextView becomeFirstResponder]): Call _KWQ_setKeyboardFocusRingNeedsDisplay. (-[KWQTextAreaTextView resignFirstResponder]): Call _KWQ_setKeyboardFocusRingNeedsDisplay. (-[NSView _KWQ_setKeyboardFocusRingNeedsDisplay]): Calls the same thing on parent.
  • WebCore.pbproj/project.pbxproj: PB is a cruel master.

WebBrowser:

  • fixed problem I introduced where text would get too close to the right button
  • LocationTextField.m: (-[LocationTextField didShowOrHideRightButton]): Add back logic to adjust the right border. I removed this because it was incompatible with my changes, but now I made a new compatible version by adding a new method.
  • TextFieldWithControls.h: Rename showRightButton: to setIsShowingRightButton:, and added isShowingRightButton, and didShowOrHideRightButton methods.
  • TextFieldWithControls.m: (-[TextFieldWithControls isShowingRightButton]): Added. (-[TextFieldWithControls didShowOrHideRightButton]): Added. (-[TextFieldWithControls setIsShowingRightButton:]): Call didShowOrHideRightButton at the right moment so we can properly respond to any changes it makes to the cell.
  • BrowserWindowController.m: (-[BrowserWindowController updateSnapBackButtons]): Update for method name change.
  • WebBrowser.pbproj/project.pbxproj: PB is a cruel master.
8:40 AM Changeset in webkit [2690] by mjs
  • 3 edits in trunk/WebKit

Fix world leak I introduced, and also add an early return when needed.

  • WebView.subproj/WebFramePrivate.m: (-[WebFrame _invalidatePendingPolicyDecisionCallingDefaultAction:]): (-[WebFrame _checkNavigationPolicyForRequest:dataSource:andCall:withSelector:]):
7:11 AM Changeset in webkit [2689] by mjs
  • 4 edits in trunk/WebCore
  • khtml/html/html_formimpl.cpp: (HTMLInputElementImpl::attach): Removed a stray printf.
5:40 AM Changeset in webkit [2688] by mjs
  • 11 edits
    2 adds in trunk/WebKit

WebKit:

Make navigation policy asynchronous for real.

  • WebKit.pbproj/project.pbxproj:
  • WebView.subproj/WebControllerPolicyDelegate.h:
  • WebView.subproj/WebControllerPolicyDelegate.m: (-[WebPolicyDecisionListenerPrivate initWithTarget:action:]): (-[WebPolicyDecisionListenerPrivate dealloc]): (-[WebPolicyDecisionListener usePolicy:]): (-[WebPolicyDecisionListener _initWithTarget:action:]): (-[WebPolicyDecisionListener dealloc]): (-[WebPolicyDecisionListener _invalidate]):
  • WebView.subproj/WebControllerPolicyDelegatePrivate.h: Added.
  • WebView.subproj/WebDefaultPolicyDelegate.m: (-[WebDefaultPolicyDelegate decideNavigationPolicyForAction:andRequest:inFrame:decisionListener:]):
  • WebView.subproj/WebFrame.m: (-[WebFrame stopLoading]):
  • WebView.subproj/WebFramePrivate.h:
  • WebView.subproj/WebFramePrivate.m: (-[WebFramePrivate dealloc]): (-[WebFrame _invalidatePendingPolicyDecisionCallingDefaultAction:]): (-[WebFrame _checkNavigationPolicyForRequest:dataSource:andCall:withSelector:]): (-[WebFrame _continueAfterNavigationPolicy:]): (-[WebFrame _loadURL:loadType:triggeringEvent:isFormSubmission:]): (-[WebFrame _loadDataSource:withLoadType:]):

WebBrowser:

Make navigation policy asynchronous.

  • BrowserWebController.m: (-[BrowserWebController decideNavigationPolicyForAction:andRequest:inFrame:decisionListener:]):
3:33 AM Changeset in webkit [2687] by mjs
  • 6 edits in trunk/WebKit

Wrap content policy invocation to look asynchronous.

  • WebView.subproj/WebBaseResourceHandleDelegate.h:
  • WebView.subproj/WebMainResourceClient.m: (-[WebMainResourceClient continueAfterContentPolicy:response:]): (-[WebMainResourceClient checkContentPolicyForResponse:andCallSelector:]): (-[WebMainResourceClient handle:didReceiveResponse:]):
2:48 AM Changeset in webkit [2686] by mjs
  • 8 edits in trunk/WebKit

Refactor so that all invocations of navigation policy are set up
to be asynchronous. However, the actually delegate method is not
async yet.

  • WebView.subproj/WebFramePrivate.h:
  • WebView.subproj/WebFramePrivate.m: (-[WebFrame _checkNavigationPolicyForRequest:dataSource:andCall:withSelector:]): (-[WebFrame _continueFragmentScrollAfterNavigationPolicy:request:]): (-[WebFrame _loadURL:loadType:triggeringEvent:isFormSubmission:]): (-[WebFrame _continueLoadRequestAfterNavigationPolicy:request:]): (-[WebFrame _loadDataSource:withLoadType:]):
  • WebView.subproj/WebMainResourceClient.h:
  • WebView.subproj/WebMainResourceClient.m: (-[WebMainResourceClient stopLoadingForPolicyChange]): (-[WebMainResourceClient continueAfterNavigationPolicy:request:]): (-[WebMainResourceClient handle:willSendRequest:]): (-[WebMainResourceClient handle:didReceiveResponse:]):

Nov 14, 2002:

10:08 PM Changeset in webkit [2685] by darin
  • 7 edits in trunk/WebCore

WebCore:

  • fixed most of the problems with OPTGROUP
  • khtml/html/htmlparser.cpp: (KHTMLParser::insertNode): Make OPTGROUPs pop out of other unclosed OPTGROUPs, not just out of options.
  • kwq/KWQListBox.h: Add private member function.
  • kwq/KWQListBox.mm: (QListBox::insertItem): Use shared insertItem function. (QListBox::insertGroupLabel): Create an attributed string for the group label, with bold font. (-[KWQListBoxTableViewDelegate tableView:shouldSelectRow:]): Return YES only for the plain strings, that way you can't select the group labels.
  • WebCore.pbproj/project.pbxproj: Let PB do its thing.

WebBrowser:

  • BrowserDocument.h: Remove unused BrowserDocumentPageTitleChangedNotification.
  • BrowserDocument.m: (-[BrowserDocument _pageTitleHasChanged]): Remove unused notification. (-[BrowserDocument goToBugReportingPage:]): Escape URL so it works in the form parameters.
  • PoofAnimator.m: (-[PoofAnimator init]): Remove use of private _setHasShadow: which is just the same thing as the public setHasShadow:.
  • BrowserWindowController.m: Tweak formatting.
  • Preferences.subproj/GeneralPreferences.m: Tweak.
  • WebBrowser.pbproj/project.pbxproj: Let PB do its thing.
9:48 PM Changeset in webkit [2684] by mjs
  • 5 edits in trunk/WebKit

Refactor things a bit so all loads bottleneck through a single
method (_loadDataSource:withLoadType:).

  • WebView.subproj/WebFrame.m: (-[WebFrame loadRequest:]): (-[WebFrame reload]):
  • WebView.subproj/WebFramePrivate.h:
  • WebView.subproj/WebFramePrivate.m: (-[WebFrame _loadItem:fromItem:withLoadType:]): (-[WebFrame _loadRequest:triggeringAction:loadType:]): (-[WebFrame _loadURL:loadType:triggeringEvent:isFormSubmission:]): (-[WebFrame _postWithURL:data:contentType:triggeringEvent:]): (-[WebFrame _reloadAllowingStaleDataWithOverrideEncoding:]): (-[WebFrame _loadDataSource:withLoadType:]): (-[WebFrame _downloadRequest:toPath:]):
8:23 PM Changeset in webkit [2683] by mjs
  • 17 edits in trunk/WebKit

WebKit:

Change things so the public interface to loading is loadRequest:
and everything else is private.

  • Plugins.subproj/WebBaseNetscapePluginView.m: (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]):
  • Plugins.subproj/WebPluginController.m: (-[WebPluginController showURL:inFrame:]):
  • WebView.subproj/WebController.h:
  • WebView.subproj/WebController.m: (-[WebController init]):
  • WebView.subproj/WebControllerPrivate.m: (-[WebController _createFrameNamed:inParent:allowsScrolling:]): (-[WebController _downloadURL:toPath:]):
  • WebView.subproj/WebFrame.h:
  • WebView.subproj/WebFrame.m: (-[WebFrame init]): (-[WebFrame initWithName:webView:controller:]): (-[WebFrame loadRequest:]): (-[WebFrame reload]):
  • WebView.subproj/WebFramePrivate.h:
  • WebView.subproj/WebFramePrivate.m: (-[WebFrame _timedLayout:]): (-[WebFrame _clearProvisionalDataSource]): (-[WebFrame _loadItem:fromItem:withLoadType:]): (-[WebFrame _loadRequest:triggeringAction:]): (-[WebFrame _reloadAllowingStaleDataWithOverrideEncoding:]): (-[WebFrame _itemForRestoringDocState]): (-[WebFrame _setProvisionalDataSource:]): (-[WebFrame _startLoading]): (-[WebFrame _downloadRequest:toPath:]):
  • WebView.subproj/WebMainResourceClient.m: (-[WebMainResourceClient handle:willSendRequest:]): (-[WebMainResourceClient stopLoadingAfterContentPolicy]): (-[WebMainResourceClient handle:didReceiveResponse:]):
  • WebView.subproj/WebView.m: (-[WebView concludeDragOperation:]):

WebBrowser:

Change things so the public interface to loading is loadRequest:
and everything else is private.

  • BrowserDocument.m: (-[BrowserDocument goToRequest:]):
  • BrowserWebController.m: (-[BrowserWebController initWithBrowserDocument:]):
  • Debug/SnippetController.h:
  • Debug/SnippetController.m: (-[SnippetController dealloc]): (-[SnippetController windowWillClose:]): (-[SnippetController load]): (-[SnippetController loadComplete]): (-[SnippetController mainDataSource]):
6:23 PM Changeset in webkit [2682] by hyatt
  • 4 edits in trunk/WebCore

Fix spinner.com mislayout on the PLT. Make sure
<input type=image> honors the width attribute and
make sure that its render object calls updateFromElement.

  • khtml/html/html_formimpl.cpp: (HTMLInputElementImpl::parseAttribute): (HTMLInputElementImpl::attach):
4:04 PM Changeset in webkit [2681] by hyatt
  • 3 edits in trunk/WebKit

Move text measurement and layout beyond onload. This
shoudl speed up i-bench substantially and morrison's
PLT test slightly. Note that the adjustFrames layout
stuff has been removed from isLoadComplete.

  • WebView.subproj/WebFramePrivate.m: (-[WebFrame _timedLayout:]): (-[WebFrame _isLoadComplete]):
3:57 PM Changeset in webkit [2680] by hyatt
  • 7 edits in trunk/WebCore

Move text measurement and layout beyond onload. This
shoudl speed up i-bench substantially and morrison's
PLT test slightly.

Also allow <table>s as children of <p> and <h1>-<h6>.
This fixes floats on slashdot.org (the left side) and
the floating tables in articles on wired.com.

  • khtml/html/dtd.cpp: (DOM::checkChild):
  • khtml/html/html_documentimpl.cpp: (HTMLDocumentImpl::HTMLDocumentImpl): (HTMLDocumentImpl::close):
  • khtml/html/html_documentimpl.h:
  • khtml/html/htmlparser.cpp: (KHTMLParser::insertNode):
1:46 PM Changeset in webkit [2679] by rjw
  • 4 edits in trunk/WebCore

Fixed 3099505. With the recent white space changes, multiple slaves may
be created for contiguous text on the same line. The fix changes the
iteration order of over the slave array. Now, when searching for the end
point of a line we'll always find the last slave on a line first.

  • khtml/khtml_part.cpp: (lastSlaveAt):
11:37 AM Changeset in webkit [2678] by darin
  • 4 edits in trunk/WebCore
  • fixed 3095854 -- small select boxes get no scrollbar
  • kwq/KWQListBox.mm: (QListBox::sizeForNumberOfLines): Always use a minimum of 4 lines.
11:19 AM Changeset in webkit [2677] by darin
  • 3 edits in trunk/WebKit

WebFoundation:

  • English.lproj/StringsNotToBeLocalized.txt: Updated for recent changes.

WebKit:

  • English.lproj/Localizable.strings: Updated to include the new error messages that Maciej just added. I wonder what effect this will have if we see those errors in Alex-32?
10:51 AM Changeset in webkit [2676]
  • 3 copies in tags/Alexander-32

This commit was manufactured by cvs2svn to create tag 'Alexander-32'.

10:51 AM Changeset in webkit [2675] by sheridan
  • 8 edits in trunk

Alex-32 stamp

10:35 AM Changeset in webkit [2674] by darin
  • 4 edits in trunk/JavaScriptCore
  • fixed 3101243 -- excite passes date that can't be parsed, results in bogus date at top right corner
  • kjs/date_object.cpp: (KJS::KRFCDate_parseDate): Handle errors from strtol by checking errno. Check the "string in a haystack" to be sure it's a multiple of 3. Add case that allows year to be after time.
10:11 AM Changeset in webkit [2673] by darin
  • 4 edits in trunk/JavaScriptCore
  • fixed 3101191 -- REGRESSION: Hang loading excite.com
  • kjs/date_object.cpp: (mktimeUsingCF): Pick an arbitrary cutoff of 3000, and return -1 if the year passed in is that big so we don't infinite loop. Also validate the rest of the date with CFGregorianDateIsValid. (DateProtoFuncImp::call): Handle a -1 result from mktime. (DateObjectImp::construct): Check for NaN before calling mktime, and also handle a -1 result from mktime. (DateObjectFuncImp::call): Check for NaN before calling mktime, and also handle a -1 result from mktime.
6:52 AM Changeset in webkit [2672] by gramps
  • 4 edits in trunk/WebKit
  • WebView.subproj/WebControllerPolicyDelegate.h:

Added missing semi-colon in definition of WebPolicyDecisionListener to
fix build error.

5:18 AM Changeset in webkit [2671] by mjs
  • 13 edits in trunk/WebKit

WebKit:

Combined file URL policy with content policy. We don't actually
bother to ask earlier for file URLs yet, since that will make
things more complicated.

  • Misc.subproj/WebKitErrors.h:
  • WebView.subproj/WebControllerPolicyDelegate.h:
  • WebView.subproj/WebDefaultPolicyDelegate.m:
  • WebView.subproj/WebFramePrivate.h:
  • WebView.subproj/WebFramePrivate.m: (-[WebFrame _handleUnimplementablePolicy:errorCode:forURL:]): (-[WebFrame _continueAfterNavigationPolicyForRequest:dataSource:]):
  • WebView.subproj/WebMainResourceClient.h:
  • WebView.subproj/WebMainResourceClient.m: (-[WebMainResourceClient stopLoadingAfterContentPolicy]): (-[WebMainResourceClient handle:didReceiveResponse:]):
  • WebView.subproj/WebView.m: (+[WebView initialize]):

WebBrowser:

Combined file URL policy with content policy. Also adjusted error
handling to continue to handle file errors well.

  • BrowserWebController.m: (-[BrowserWebController unableToImplementPolicy:error:forURL:inFrame:]): (-[BrowserWebController contentPolicyForMIMEType:andRequest:inFrame:]):
  • LocationChangeError.m: (-[LocationChangeHandler specializedTitleForError:]): (-[LocationChangeHandler specializedMessageForError:]):
  • LocationChangeHandler.m: (-[LocationChangeHandler locationChangeDone:forDataSource:]):
  • WebBrowser.pbproj/project.pbxproj:
1:13 AM Changeset in webkit [2670] by darin
  • 10 edits in trunk

WebCore:

  • fixed 3099240 -- REGRESSION: repro assert d->m_doc->parsing

Don't force all redirects to be reloads, because the ones from JavaScript must
not be. Maybe a better solution post-Alex-32 will be to pass a flag that distinguishes
redirects from other location changes.

  • khtml/khtml_part.cpp: (KHTMLPart::slotRedirect): Don't ignore the anchor when comparing URLs to see if they should be a reload. We'll still do a reload if the URLs are actually equal, but if they differ in anchor we will just go to the anchor. This is the bug fix.
  • kwq/WebCoreBridge.h: Add reload parameter.
  • kwq/WebCoreBridge.mm: (-[WebCoreBridge openURL:reload:headers:]): Stuff the reload parameter into the URLArgs.

WebKit:

  • fixed 3099240 -- REGRESSION: repro assert d->m_doc->parsing

Make the reload flag pass across the bridge.

  • WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _commitIfReady]): Pass a reload flag, based on the load type, to the bridge.
  • WebView.subproj/WebFramePrivate.m: (-[WebFrame _loadURL:loadType:triggeringEvent:isFormSubmission:]): Pass a reload flag of NO in the anchor case. Preserve reload load types even when doing client redirects (have to talk with Trey about this tomorrow).
12:37 AM Changeset in webkit [2669] by darin
  • 9 edits in trunk

WebCore:

  • fixed 3100235 -- nil-deference in khtml::RenderTable at money.cnn.com
  • kwq/WebCoreBridge.h: Add needsLayout.
  • kwq/WebCoreBridge.mm: (-[WebCoreBridge needsLayout]): Return true if the render tree root says "layouted" is false. It would be more elegant to use more of this WebCore layout logic and have less of our own on the WebKit side.
  • WebCore.pbproj/project.pbxproj: Oh, that Project Builder.

WebKit:

  • fixed 3100235 -- nil-deference in khtml::RenderTable at money.cnn.com
  • WebView.subproj/WebHTMLView.m: (-[WebHTMLView drawRect:]): If the WebCore side needs layout, then do layout before trying to draw.
Note: See TracTimeline for information about the timeline view.