Timeline
Nov 17, 2002:
- 11:55 PM Changeset in webkit [2727] by
-
- 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
-
- 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
-
- 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
-
- 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
-
- 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
-
- 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
-
- 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
-
- 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
-
- 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
-
- 15 edits1 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
-
- 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
-
- 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
-
- 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
-
- 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
-
- 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
-
- 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
-
- 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
-
- 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
-
- 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
-
- 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):