Timeline



Aug 27, 2002:

9:17 PM Changeset in webkit [1924] by darin
  • 4 edits in trunk/WebCore
  • force-clean-timestamp: Dave's changes require a full build. I found out the hard way, by debugging for a while.
6:37 PM Changeset in webkit [1923] by rjw
  • 13 edits in trunk

i

  • WebView.subproj/WebHTMLView.m: (-[WebHTMLView mouseDown:]): (-[WebHTMLView mouseDragged:]): (-[WebHTMLView mouseMovedNotification:]):
  • WebView.subproj/WebHTMLViewPrivate.h:
  • WebView.subproj/WebHTMLViewPrivate.m:

Fixed active link style. Cleaned up and fixed drag initiation
for links and images. Dotted lines not drawing correcly, but
other styles are applied correctly.

  • WebKit.exp:
  • History.subproj/WebHistory.h:
  • History.subproj/WebHistory.m:

Added some constants.

  • WebCoreSupport.subproj/WebTextRendererFactory.m:

Code to change CG caching policy. Not enabled until
we receive a root from CG team.

  • kwq/WebCoreBridge.h:

Fixed constants to conform to WebKit. These need to be shared.

6:35 PM Changeset in webkit [1922] by hyatt
  • 8 edits
    2 adds in trunk/WebCore

Change relative positioned blocks so that they are treated as special objects and
painted last along with absolutely positioned blocks and floaters. Note that the
entire special object system is fundamentally flawed, and it needs to be replaced
with a real layering subsystem.

This checkin at least gets relatively positioned divs painting correctly some of
the time (in the cases where the containing blocks of absolute and relative positioned
divs happen to be the same). It does not, however, deal with the problem of ensuring
correct stacking of positioned elements with different containing blocks.

render_layer.h and .cpp include a new implementation (not used yet, just the beginnings)
of a layering subsystem that I am going to be working on over the next few days
that will eventually be responsible for handling event dispatching and painting and that
will also understand how to deal with form controls and other objects that have Cocoa
views.

  • WebCore.pbproj/project.pbxproj:
  • khtml/rendering/render_box.cpp: (RenderBox::RenderBox):
  • khtml/rendering/render_box.h:
  • khtml/rendering/render_flow.cpp: (RenderFlow::printObject): (RenderFlow::printSpecialObjects): (RenderFlow::layoutSpecialObjects): (RenderFlow::layoutBlockChildren): (RenderFlow::insertSpecialObject):
  • khtml/rendering/render_flow.h:
  • khtml/rendering/render_layer.cpp: Added. (RenderLayer::RenderLayer): (RenderLayer::~RenderLayer): (RenderLayer::addChild): (RenderLayer::removeChild):
  • khtml/rendering/render_layer.h: Added.
5:14 PM Changeset in webkit [1921] by darin
  • 4 edits in trunk/WebCore
  • fixed 3031952 -- null-dereference in dispatchToUInt32 closing window
  • khtml/ecma/kjs_window.cpp: (History::getValueProperty): Use Undefined(), not Value() for an error result. Value() is pure evil.
4:25 PM Changeset in webkit [1920] by darin
  • 9 edits in trunk/WebCore
  • fixed 3021018 -- Crash selecting from popup just after choosing radio button
  • kwq/KWQComboBox.mm: (QComboBox::QComboBox): Pass the widget in when creating the cell. (-[KWQPopUpButtonCell initWithWidget:]): Store a widget pointer. (-[KWQPopUpButtonCell trackMouse:inRect:ofView:untilMouseUp:]): Get to the bridge and tell it to defer loading while we track the mouse.
  • kwq/KWQKHTMLPartImpl.h: Add bridgeForWidget.
  • kwq/KWQKHTMLPartImpl.mm: (KWQKHTMLPartImpl::nextKeyViewForWidget): Use nodeForWidget and partForNode. (KWQKHTMLPartImpl::bridgeForWidget): Added. Use nodeForWidget and partForNode. (KWQKHTMLPartImpl::partForNode): Move code here from nextKeyViewForWidget. (KWQKHTMLPartImpl::nodeForWidget): Move code here from nextKeyViewForWidget.
  • kwq/WebCoreBridge.h: Add defersLoading and setDefersLoading. Both are already in WebKit.
3:52 PM Changeset in webkit [1919] by darin
  • 7 edits in trunk/WebKit
  • fixed 3031583 -- directory.apple.com now gives "unsupported" redirect
  • WebView.subproj/WebDataSource.m: (-[WebDataSource initWithURL:attributes:flags:]): Don't create the resource handle here. It's a bit too early.
  • WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _startLoading:]): Create the resource handle here, now that we have a controller to get a user agent from.
  • WebView.subproj/WebMainResourceClient.m: (-[WebMainResourceClient handleWillUseUserAgent:forURL:]): Add an assert that will catch any future problems of this kind.
  • WebCoreSupport.subproj/WebBridge.m: (-[WebBridge defersLoading]): Added. New call for use in WebCore. (-[WebBridge setDefersLoading:]): Added. New call for use in WebCore.

Aug 26, 2002:

5:19 PM Changeset in webkit [1918] by hyatt
  • 4 edits in trunk/WebCore

Fix for 3026006. Ensure that TABLES inside <div>s with align="right"
are properly positioned. <div align="right"> was completely
unimplemented. This patch implements it for the common cases
(nested divs, tables within divs, and paragraphs).

  • khtml/css/html4.css:
2:33 PM Changeset in webkit [1917] by darin
  • 11 edits in trunk/WebKit

Add machinery for deferring callbacks. Not used yet.

  • WebView.subproj/WebControllerPrivate.h: Add methods.
  • WebView.subproj/WebControllerPrivate.m: (-[WebController _defersCallbacks]): Returns old state. (-[WebController _setDefersCallbacks:]): Changes state and calls _defersCallbacksChanged on the main frame.
  • WebView.subproj/WebFramePrivate.h: Add _defersCallbacksChanged.
  • WebView.subproj/WebFramePrivate.m: (-[WebFrame _defersCallbacksChanged]): Calls _defersCallbacksChanged on both data sources.
  • WebView.subproj/WebDataSourcePrivate.h: Add _defersCallbacksChanged.
  • WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _setController:]): Call _defersCallbacksChanged if changing the controller changes the state. (-[WebDataSource _addResourceHandle:]): Call setDefersCallbacks:YES on the new handle if we are already attached to a controller that defers callbacks. (-[WebDataSource _defersCallbacksChanged]): Call setDefersCallbacks on all the handles, and call _defersCallbacksChanged on the child frames as well.
  • WebView.subproj/WebDataSource.m: (-[WebDataSource controller]): We need to know about all controller changes, so it's unacceptable to consult our parent about the controller. But we already do know about it and this code was unnecessary. Leave the old code around as an assert only.
2:21 PM Changeset in webkit [1916] by darin
  • 4 edits in trunk/WebCore
  • khtml/rendering/render_list.cpp: Make file match the original KDE more closely (no substantive change).
1:50 PM Changeset in webkit [1915] by rjw
  • 12 edits
    2 adds in trunk

WebBrowser:

  • History.subproj/WebHistory.h:
  • History.subproj/WebHistory.m: (+[WebHistory webHistoryWithFile:]): Stage 1, set the shared history instance. This'll move to WebKit soon.
  • WebView.subproj/WebView.m: (-[WebView setFrame:]): Only force display if in live resize.

WebKit

Fixed for 2883623 (visited links only). Will change
w/ stage 2 of history move to webkit.

  • GlobalHistory.m: (-[GlobalHistory awakeFromNib]):

WebCore:

  • WebCore.exp:

Added WebCoreHistory

  • WebCore.pbproj/project.pbxproj:

Added WebCoreHistory

  • kwq/KWQKHistoryProvider.mm: Use WebCoreHistory to determine visited link.
  • kwq/WebCoreHistory.h: Added.
  • kwq/WebCoreHistory.m: Added.

Stage 1. Use WebKit's WebHistory. Writing
of history and initialization still handled
by Alex until stage 2.

(+[WebCoreHistory setSharedHistory:]):
(+[WebCoreHistory sharedHistory]):
(-[WebCoreHistory containsURL:]):

  • kwq/KWQString.mm: (QString::compare):

Optimization, use strcmp when both src and dst have valid ascii.

1:35 PM Changeset in webkit [1914] by hyatt
  • 5 edits in trunk/WebCore
  • Patch drawText to understand right-aligned drawing.
  • Fixed <ul> bullets so that they position properly.
  • Fixed bugs with horizontal and vertical positioning of <ol> bullets.
  • khtml/rendering/render_list.cpp: (RenderListMarker::printObject):
  • kwq/KWQPainter.mm: (QPainter::drawText):
7:27 AM Changeset in webkit [1913] by sullivan
  • 5 edits in trunk/WebKit

WebKit:

  • fixed bug where dragging a separator in the Bookmarks window would hit an assertion.
  • Bookmarks.subproj/WebBookmarkSeparator.m: (-[WebBookmarkSeparator initWithGroup:]): Removed obsolete assertion that group is not nil.
  • Bookmarks.subproj/WebBookmarkLeaf.m: (-[WebBookmarkLeaf initWithTitle:group:]): Removed a similar obsolete assertion here.
  • Bookmarks.subproj/WebBookmarkList.m: (-[WebBookmarkList initWithTitle:group:]): Removed a similar obsolete assertion here.

WebBrowser:

  • fixed bug where new separator would not be scrolled into view if necessary.
  • BookmarksController.m: (-[BookmarksController _focusOnNewlyCreatedBookmark:]): Scroll to reveal new item.

Aug 24, 2002:

11:41 PM Changeset in webkit [1912] by darin
  • 5 edits in trunk/WebCore
  • fixed 3032072 -- Crash on reload in DOM::DocumentImpl::~DocumentImpl [unified]()

This was a tough one to debug.
Turned out to be a subtle bug in our new QConstString implementation.

  • kwq/KWQString.mm: (QStringData::makeAscii): Don't invalidate the Unicode buffer unless the ASCII buffer is taking over the internal buffer from the Unicode. In other cases, it's important not to invalidate the Unicode because it can result in the Unicode being freed and re-created when unicode() is called, which is disastrous in the QConstString case because we can't free the Unicode. (QStringData::makeUnicode): Make the corresponding change for ASCII too. In this case, it's just an optimization, not a bug fix. (QString::insert), (QString::remove), (QString::fill), (QString::operator+=): Mark the other string invalid whenever we modify either the ASCII or the Unicode string. This was handled correctly for some operations before, but not all, and it now matters because makeAscii and makeUnicode will now allow this state.

Fixed a separate QString problem; I think I may have introduced this one.

  • kwq/KWQString.mm: (QString::getNSString): Since by ASCII, we actually mean ISO Latin 1, we can't use [NSString stringWithCString:]. Use CFStringCreateWithCString instead, pass CFStringCreateWithCString as the encoding, and use autorelease. We shouldn't really use the term ASCII in this class for the 8-bit-per-character buffer. Something more like Latin1 would be a more accurate way to refer to it. Maybe I'll do that renaming after talking to Richard about it on Monday.

Fixed a small storage leak.

  • khtml/css/css_valueimpl.cpp: (CSSPrimitiveValueImpl::cleanup): Added braces to fix obviously-incorrect if/else grouping.

Aug 23, 2002:

2:25 PM Changeset in webkit [1911] by darin
  • 4 edits in trunk/WebKit

WebKit:

  • WebView.subproj/WebFrame.m: (-[WebFrame reset]): Remove unneeded call to _reset.
  • WebView.subproj/WebFramePrivate.m: (-[WebFrame _setDataSource:]): Add code that removes the KHTML stuff from the frame when switching to another type of view. It would be better to do this at some other level, but without this code, we end up leaving the entire KHTMLView behind when we switch to a non-HTML page.

WebBrowser:

Debugging tool to make it easy to reproduce problems like 3021018, where
a page transition happens while you are holding a menu down.

  • Debug/DebugUtilities.m: (-[DebugUtilities createDebugMenu]): Add "Go to about:blank Soon menu item". (-[BrowserDocument goToAboutBlankSoon:]): Implementation.
10:28 AM Changeset in webkit [1910] by darin
  • 4 edits in trunk/WebCore

Got the kurl-test in the Tests directory working again.

  • kwq/KWQKURL.mm: (KURL::KURL): Fixed problem where relative path resolution code for "../" could eat up the host name too, treating it as part of the path.
10:16 AM Changeset in webkit [1909] by darin
  • 6 edits in trunk/WebCore
  • fixed 3032058 -- Links on local developer doc pages all broken (all local files?)
  • kwq/KWQKURL.mm: (KURL::getNSURL): Re-added a workaround for CFURL bug 2908969. We have to hack to make NSURL take "file:/" URLs.
  • kwq/KWQKHTMLPartImpl.mm: (KWQKHTMLPartImpl::nextKeyViewInFrame): Add a nil check. I ran into this because my frame failed to load.
3:24 AM Changeset in webkit [1908] by mjs
  • 6 edits in trunk/WebCore

A few more KURL changes that reduce it down to background noise
level.

For me this gave another 1-2% improvement on cvs-base.

  • kwq/kdecore/kurl.h:
  • kwq/KWQKURL.mm: (KURL::KURL): In the relative constructor, do all work in a char array for the relative path case, and leave it up to ::parse to create a QString. (KURL::parse): Do all work in a char array, only creating a QString at the end if needed. Also, take an optional pointer to the QString that the char * was created from, and if the final processed URL is the same as the original, assign the original instead of creating a new QString. (KURL::setProtocol): Adjust for prase() interface change. (KURL::setHost): Likewise. (KURL::setPort): Likewise. (KURL::setRef): Likewise. (KURL::setQuery): Likewise. (KURL::setPath): Likewise. (appendEscapingBadChars): Instead of taking and returning a QString like the old escapeBadChars, copy from and write into existing C string buffers.
Note: See TracTimeline for information about the timeline view.