Timeline
Nov 18, 2002:
- 11:57 PM Changeset in webkit [2753] by
-
- 18 edits in trunk
- reduced the creation of Value objects and hoisted the property map into Object for another gain of about 6%
- JavaScriptCore.pbproj/project.pbxproj: Made property_map.h public.
- kjs/array_object.cpp: (compareWithCompareFunctionForQSort): Don't wrap the ValueImp * in a Value just to add it to a list. (ArrayProtoFuncImp::call): Pass the globalObject directly so we don't have to ref/deref.
- kjs/function.cpp: (FunctionImp::call): Use a reference for the global object to avoid ref/deref. (GlobalFuncImp::call): Ditto.
- kjs/internal.cpp: (BooleanImp::toObject): Put the object directly into the list, don't create a Value. (StringImp::toObject): Ditto. (NumberImp::toObject): Ditto. (InterpreterImp::evaluate): Use a reference for the global object.
- kjs/internal.h: Return a reference for the global object.
- kjs/interpreter.cpp: (Interpreter::globalObject): Ditto.
- kjs/interpreter.h: Ditto.
- kjs/object.cpp: Use _prop directly in the object, not a separate pointer.
- kjs/object.h: Ditto.
- kjs/types.cpp: Added List methods that work directly with ValueImp. (List::append): Added a ValueImp version. (List::prepend): Ditto. (List::appendList): Work directly with the ValueImp's. (List::prependList): Ditto. (List::copy): Use appendList. (List::empty): Use a shared global List.
- kjs/types.h: Update for above changes.
WebCore:
- force-js-clean-timestamp: Another Object change.
- 11:44 PM Changeset in webkit [2752] by
-
- 27 edits in trunk/WebCore
Implement phased painting to correct the paint order of blocks,
floats, and inlines.
- khtml/rendering/render_body.cpp: (RenderBody::paintBoxDecorations):
- khtml/rendering/render_body.h:
- khtml/rendering/render_box.cpp: (RenderBox::paint): (RenderBox::paintBoxDecorations): (RenderBox::paintBackground):
- khtml/rendering/render_box.h:
- khtml/rendering/render_br.h:
- khtml/rendering/render_flow.cpp: (RenderFlow::paint): (RenderFlow::paintObject): (RenderFlow::paintFloats): (RenderFlow::addChild):
- khtml/rendering/render_flow.h:
- khtml/rendering/render_html.cpp: (RenderHtml::setStyle): (RenderHtml::paint): (RenderHtml::paintBoxDecorations):
- khtml/rendering/render_html.h:
- khtml/rendering/render_image.cpp: (RenderImage::setStyle): (RenderImage::paintObject):
- khtml/rendering/render_image.h:
- khtml/rendering/render_layer.cpp: (RenderLayer::paint): (RenderLayer::nodeAtPoint):
- khtml/rendering/render_list.cpp: (RenderListItem::paint): (RenderListItem::paintObject): (RenderListMarker::paint): (RenderListMarker::paintObject):
- khtml/rendering/render_list.h:
- khtml/rendering/render_object.cpp: (RenderObject::RenderObject): (RenderObject::paintBorder): (RenderObject::paintOutline): (RenderObject::paint): (RenderObject::dump): (RenderObject::setStyle):
- khtml/rendering/render_object.h:
- khtml/rendering/render_replaced.cpp: (RenderReplaced::paint): (RenderWidget::setStyle): (RenderWidget::paintObject):
- khtml/rendering/render_replaced.h:
- khtml/rendering/render_root.cpp: (RenderRoot::paint): (RenderRoot::paintObject):
- khtml/rendering/render_root.h:
- khtml/rendering/render_table.cpp: (RenderTable::paint): (RenderTableCell::RenderTableCell): (RenderTableCell::setStyle): (RenderTableCell::paint): (RenderTableCell::paintBoxDecorations):
- khtml/rendering/render_table.h:
- khtml/rendering/render_text.cpp: (TextSlave::paintSelection): (TextSlave::paintDecoration): (TextSlave::paintBoxDecorations): (RenderText::paintObject): (RenderText::paint): (RenderText::paintTextOutline):
- khtml/rendering/render_text.h:
- 11:04 PM Changeset in webkit [2751] by
-
- 5 edits in trunk/JavaScriptCore
- kjs/property_map.cpp: Oops, copyright goes to Apple, not me.
- kjs/property_map.h: Ditto.
- 10:59 PM Changeset in webkit [2750] by
-
- 4 edits in trunk/WebCore
- force-js-clean-timestamp: I changed the size of ObjectImp.
- 10:53 PM Changeset in webkit [2749] by
-
- 10 edits in trunk/JavaScriptCore
- property and string improvements giving a 7% or so improvement in JavaScript iBench
- kjs/property_map.h: Rewrite to use a hash table.
- kjs/property_map.cpp: Ditto.
- kjs/string_object.h:
- kjs/string_object.cpp: (StringInstanceImp::StringInstanceImp): Construct a string with the right value instead of putting the string in later. (StringInstanceImp::get): Get the length from the string, not a separate property. (StringInstanceImp::put): Ignore attempts to set length, since we don't put it in the property map. (StringInstanceImp::hasProperty): Return true for length. (StringInstanceImp::deleteProperty): Return false for length. (StringObjectImp::construct): Call new StringInstanceImp constructor. Don't try to set a length property.
- kjs/ustring.h: Make the rep deref know how to deallocate the rep.
- kjs/ustring.cpp: (UString::release): Move the real work to the rep's deref, since the hash table now uses the rep directly.
- kjs/object.h: Remove unused field.
- 10:20 PM Changeset in webkit [2748] by
-
- 6 edits in trunk/JavaScriptCore
Change List to completely avoid going through the GC
allocator. 3.6% performance improvement on JavaScript iBench.
- kjs/internal.cpp: (InterpreterImp::mark): Don't mark the empty list.
For all the methods below I basically lifted the ListImp version
up to the List method with minor tweaks.
- kjs/types.cpp: (ListIterator::ListIterator): (List::List): (List::operator=): (List::~List): (List::mark): (List::append): (List::prepend): (List::appendList): (List::prependList): (List::removeFirst): (List::removeLast): (List::remove): (List::clear): (List::clearInternal): (List::copy): (List::begin): (List::end): (List::isEmpty): (List::size): (List::at): (List::operator[]): (List::empty): (List::erase): (List::refAll): (List::derefAll): (List::swap): (List::globalClear):
- kjs/types.h:
- 9:07 PM Changeset in webkit [2747] by
-
- 4 edits in trunk/JavaScriptCore
Fixed a horrible leak introduced with my last change that
somehow did not show up on my machine.
- kjs/types.cpp: (List::List): Mark ListImp as GC allowed.
- 7:05 PM Changeset in webkit [2746] by
-
- 4 edits in trunk/WebCore
Fix crazyapplerumors.com. I had the logic backwards. CSS
padding beats cellpadding.
- khtml/rendering/render_table.cpp: (RenderTableCell::paddingTop): (RenderTableCell::paddingBottom): (RenderTableCell::paddingLeft): (RenderTableCell::paddingRight):
- 6:33 PM Changeset in webkit [2745] by
-
- 4 edits in trunk/WebCore
Fix crash on espn.com.
- khtml/rendering/render_object.cpp: (RenderObject::setLayouted):
- 6:15 PM Changeset in webkit [2744] by
-
- 5 edits in trunk/JavaScriptCore
Another step towards the List conversion: stop inheriting from Value.
- kjs/types.cpp: (ListIterator::ListIterator): (List::List): (List::operator=): (List::~List): (List::mark): (List::append): (List::prepend): (List::appendList): (List::prependList): (List::removeFirst): (List::removeLast): (List::remove): (List::clear): (List::copy): (List::begin): (List::end): (List::isEmpty): (List::size): (List::at): (List::operator[]):
- kjs/types.h:
- 6:03 PM Changeset in webkit [2743] by
-
- 4 edits in trunk/WebCore
Fix my <konqblock> regression on ign.com.
- khtml/html/htmlparser.cpp: (KHTMLParser::insertNode):
- 5:30 PM Changeset in webkit [2742] by
-
- 9 edits in trunk/WebKit
Real fix for: 3104183 - Assert loading www.louisvuitton.com
Since we don't consider plug-in content as a subresource, attaching plug-in streams to the datasource has no affect on the loading state of the datasource. Both stopLoading on WebFrame and _stopLoading datasource, would not stop plug-ins streams after the data source was done loading. Because of this, I've decided to not keep a list of plug-in streams attached to the data source and pulled my previous change. To fix this bug, WebBaseResourceHandleDelegate now retains the controller.
- Plugins.subproj/WebNetscapePluginStream.m: (-[WebNetscapePluginStream start]): (-[WebNetscapePluginStream cancel]): (-[WebNetscapePluginStream handleDidFinishLoading:]): (-[WebNetscapePluginStream handle:didFailLoadingWithError:]):
- WebView.subproj/WebBaseResourceHandleDelegate.h:
- WebView.subproj/WebBaseResourceHandleDelegate.m: (-[WebBaseResourceHandleDelegate _releaseResources]): (-[WebBaseResourceHandleDelegate setDataSource:]): (-[WebBaseResourceHandleDelegate handle:willSendRequest:]): (-[WebBaseResourceHandleDelegate handleDidFinishLoading:]): (-[WebBaseResourceHandleDelegate handle:didFailLoadingWithError:]): (-[WebBaseResourceHandleDelegate _cancelWithError:]):
- WebView.subproj/WebDataSourcePrivate.h:
- WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSourcePrivate dealloc]): (-[WebDataSource _stopLoading]): (-[WebDataSource _makeHandleDelegates:deferCallbacks:]): (-[WebDataSource _defersCallbacksChanged]):
- 5:01 PM Changeset in webkit [2741] by
-
- 13 edits in trunk
Partway to removing Value from List. Created a marking List
variant, used it in place of ListImp.
- kjs/internal.h: Removed List stuff.
- kjs/internal.cpp: (InterpreterImp::mark): Call appropriate List method to do marking of empty ListImp.
- kjs/object.h:
- kjs/object.cpp: Use marking List instead of ListImp *.
- kjs/types.h:
- kjs/types.cpp: (List::List): New boolean needsMarking parameter. (List::operator=): Perform trickery related to needsMarking. (List::~List): Likewise. (List::mark): Mark the ListImp. (List::markEmptyList): (ListImp::*): Moved here fron internal.cpp, they will be integrated into the relevant List methods soon.
WebCore:
- force-js-clean-timestamp: Rebuild for JSC changes.
- 3:43 PM Changeset in webkit [2740] by
-
- 9 edits in trunk/JavaScriptCore
- another string constant discovered that can be optimized
- kjs/object.h: Add a property name constant for "proto".
- kjs/object.cpp: Define it. (ObjectImp::get): Use it. (ObjectImp::hasProperty): Use it.
- prepare to turn PropertyMap into a hash table
- kjs/object.cpp: (ObjectImp::mark): Use the new PropertyMap::mark(). (ObjectImp::put): Use the new overload of PropertyMap::get(). (ObjectImp::deleteProperty): Use the new overload of PropertyMap::get(). (ObjectImp::propList): Use PropertyMap::addEnumerablesToReferenceList().
- kjs/property_map.h: Remove PropertyMapNode and make all node-related methods private. Add mark(), a new overload of get() that returns attributes, a clear() that takes no attributes, and addEnumerablesToReferenceList().
- kjs/property_map.cpp: (PropertyMap::get): Added new overload. (PropertyMap::clear): Added new overload. (PropertyMap::mark): Added. (PropertyMap::addEnumerablesToReferenceList): Added.
- kjs/ustring.h: Added a hash function.
- kjs/ustring.cpp: (KJS::hash): Added.
- 3:23 PM Changeset in webkit [2739] by
-
- 4 edits in trunk/WebCore
- force-js-clean-timestamp: Touch files to make the build work.
- 2:49 PM Changeset in webkit [2738] by
-
- 7 edits in trunk/JavaScriptCore
- simplified the ExecState class, which was showing up in profiles
Sped up JavaScript iBench by 6%.
- kjs/interpreter.h: Removed the level of indirection, and made it all inline.
- kjs/interpreter.cpp: Removed ExecState implementation from here altogether.
- fixed an oversight in my sort speedup
- kjs/array_object.h: Add pushUndefinedObjectsToEnd.
- kjs/array_object.cpp: (ArrayInstanceImp::sort): Call pushUndefinedObjectsToEnd. (ArrayInstanceImp::pushUndefinedObjectsToEnd): Added. Pushes all undefined to the end of the array.
- 2:22 PM Changeset in webkit [2737] by
-
- 5 edits in trunk/WebKit
Fixed: 3104183 - Assert loading www.louisvuitton.com
We need to treat plug-in streams like subresources except they don't change the loading state of the data source.
- Plugins.subproj/WebNetscapePluginStream.m: (-[WebNetscapePluginStream start]): call _addPluginStream (-[WebNetscapePluginStream cancel]): call _removePluginStream (-[WebNetscapePluginStream handleDidFinishLoading:]): call _removePluginStream (-[WebNetscapePluginStream handle:didFailLoadingWithError:]): call _removePluginStream
- WebView.subproj/WebDataSourcePrivate.h:
- WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSourcePrivate dealloc]): release pluginStreams (-[WebDataSource _addPluginStream:]): just like addSubresourceClient except don't change the loading state. (-[WebDataSource _removePluginStream:]): just like removeSubresourceClient except don't change the loading state. (-[WebDataSource _stopLoading]): stop plug-ins streams (-[WebDataSource _makeHandleDelegates:deferCallbacks:]): (-[WebDataSource _defersCallbacksChanged]): call _makeHandleDelegates:deferCallbacks: for subresources and plug-in streams.
- 1:55 PM Changeset in webkit [2736] by
-
- 11 edits in trunk/JavaScriptCore
- fix worst speed problems on the sort page of the iBench JavaScript test
Sped up JavaScript iBench by 70%, the sort page by 88%.
- kjs/array_object.h: Add array-specific sort functions.
- kjs/array_object.cpp: (compareByStringForQSort): Added. (ArrayInstanceImp::sort): Added. (compareWithCompareFunctionForQSort): Added. (ArrayProtoFuncImp::call): Use ArrayInstanceImp::sort if the object being sorted is actually an array.
- kjs/object.h: Add argumentsPropertyName.
- kjs/object.cpp: Add argumentsPropertyName.
- kjs/function.cpp: (FunctionImp::FunctionImp): Use argumentsPropertyName to avoid making a UString. (FunctionImp::call): Ditto. (ActivationImp::ActivationImp): Ditto.
- kjs/function_object.cpp: (FunctionObjectImp::construct): Ditto.
- kjs/ustring.h: Added compare function for -1/0/+1 comparison.
- kjs/ustring.cpp: (KJS::compare): Added.
- 1:45 PM Changeset in webkit [2735] by
-
- 6 edits in trunk/JavaScriptCore
Change ArgumentListNode operations to be iterative instead of
recursive. This probably fixes 3095446 (Crash in
KJS::ArgumentListNode::ref()) but I can't reproduce it myself so
I'm not 100% sure. I think the original bug was a stack overflow
and this change would remove that possibility.
- kjs/nodes.cpp: (ArgumentListNode::ref): Make iterative. (ArgumentListNode::deref): Make iterative. (ArgumentListNode::evaluateList): Make iterative.
- 12:30 PM Changeset in webkit [2734] by
-
- 4 edits in trunk/WebCore
Fixed 3103004. REGRESSION: word-spacing/letter-spacing applied when they shouldn't be
This was actually NOT a regression. khtml wasn't recognizing the 'normal' value for the
word and letter spacing properties. So it incorrectly substituted a -1 spacing.
- khtml/css/cssstyleselector.cpp:
- 12:14 PM Changeset in webkit [2733] by
-
- 5 edits in trunk/WebCore
Fix render_body's repaint method.
- khtml/rendering/render_body.cpp: (RenderBody::repaint):
- khtml/rendering/render_body.h:
- 11:52 AM Changeset in webkit [2732] by
-
- 3 edits in trunk/WebKit
Check for usesBackForwardList was excluding all load types.
- WebView.subproj/WebFramePrivate.m: (-[WebFrame _transitionToCommitted]):
- 11:31 AM Changeset in webkit [2731] by
-
- 3 edits in trunk/WebKit
Fixed: 3098767 - REGRESSION: standalone quicktime content just shows blank window
Check the instance not the class for the class type.
- Plugins.subproj/WebNetscapePluginRepresentation.m: (-[WebNetscapePluginRepresentation receivedData:withDataSource:]):
- 7:52 AM Changeset in webkit [2730] by
-
- 7 edits2 adds in trunk/WebKit
WebKit:
Added feature to import bookmarks/favorites from MSIE. This
fixes Radar 2961230 (import Mac IE bookmarks).
- Bookmarks.subproj/WebBookmarkImporter.h: Added.
- Bookmarks.subproj/WebBookmarkImporter.m: Added. (_breakStringIntoLines): (_HREFRangeFromSpec): (_HREFTextFromSpec): (_linkTextRangeFromSpec): (_linkTextFromSpec): (-[WebBookmarkImporter initWithPath:group:]): (-[WebBookmarkImporter topBookmark]): (-[WebBookmarkImporter error]): (-[WebBookmarkImporter dealloc]):
- Bookmarks.subproj/WebBookmarkList.m: (-[WebBookmarkList init]): Create the bookmark list object. This was not created with the -init initializer, causing bookmark lists to fail.
- English.lproj/Localizable.strings:
- English.lproj/StringsNotToBeLocalized.txt:
- WebKit.exp:
- WebKit.pbproj/project.pbxproj:
WebBrowser:
Added calls in Debug menu to import IE Favorites.
No doubt that this code will move somewhere else once
we figure out the interaction design for importing
bookmarks.
- Debug/DebugUtilities.m: (-[DebugUtilities createDebugMenu]): (-[BrowserDocument importInteretExplorerBookmarks:]):
- 5:41 AM Changeset in webkit [2729] by
-
- 4 edits in trunk/WebCore
- fixed 3103711 - Alexander does not complete JavaScript iBench
- khtml/ecma/kjs_html.cpp: (KJS::HTMLDocument::putValue): Resolve URL for location property relative to the base URL of the frame where the JavaScript is executing, not the target frame.
- 1:11 AM Changeset in webkit [2728] by
-
- 5 edits in trunk/WebCore
Yay! Found the main cause of :hover feedback being so
slow on links. The diff function for styles was
considering a color change as a containing block layout
instead of just a repaint. With this fix, we will no
longer lay out when you hover over a link whose color
is different (remember that laying out causes the whole
page to repaint).
There's still some work to do to optimize this further,
since we do repaint the containing block still, but this
should be good enough for beta.
- khtml/rendering/render_style.cpp: (RenderStyle::diff):
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):
Nov 15, 2002:
- 11:29 PM Changeset in webkit [2707] by
-
- 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
-
- 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
-
- 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
-
- 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
-
- 5 edits in trunk/WebCore
Fix asserts in tables.
- khtml/rendering/render_table.cpp: (RenderTableRow::layout):
- 2:42 PM Changeset in webkit [2702] by
-
- 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
-
- 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
-
- 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
-
- 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
-
- 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
-
- 4 edits in trunk/WebCore
- kwq/KWQWindowWidget.mm: (KWQWindowWidget::setFrameGeometry): Oops. Make that display:YES.
- 11:14 AM Changeset in webkit [2696] by
-
- 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
-
- 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
-
- 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
-
- 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
-
- 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
-
- 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
-
- 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
-
- 4 edits in trunk/WebCore
- khtml/html/html_formimpl.cpp: (HTMLInputElementImpl::attach): Removed a stray printf.
- 5:40 AM Changeset in webkit [2688] by
-
- 11 edits2 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
-
- 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
-
- 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
-
- 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
-
- 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
-
- 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
-
- 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
-
- 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
-
- 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
-
- 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
-
- 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
-
- 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
-
- 8 edits in trunk
Alex-32 stamp
- 10:35 AM Changeset in webkit [2674] by
-
- 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
-
- 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
-
- 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
-
- 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
-
- 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
-
- 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.