Timeline
Jul 14, 2002:
- 11:51 PM Changeset in webkit [1557] by
-
- 5 edits in trunk/WebCore
WebCore:
- kwq/WebCoreFrame.mm: (-[WebCoreFrame dealloc]): Fix NULL-dereferencing problem that was hidden by the "leak the world" bug in WebBrowser.
WebBrowser:
Fix "leak the world" bug.
- BrowserDocument.m: (-[BrowserDocument close]): Having the web controller as its own window context creates a reference cycle. As with the other similar cases here, break the cycle by explicitly setting it to nil.
- 10:55 PM Changeset in webkit [1556] by
-
- 5 edits in trunk/WebCore
Assign getView() results to variable of appropriate type to work
around apparent ObjC++ compiler bug. I wonder why other people
aren't running into this (and why I haven't run into it before).
- kwq/KWQButton.mm: (QButton::setText): (QButton::text):
- kwq/KWQLineEdit.mm: (QLineEdit::setEchoMode): (QLineEdit::setText): (QLineEdit::text): (QLineEdit::setMaxLength): (QLineEdit::isReadOnly): (QLineEdit::setReadOnly): (QLineEdit::maxLength): (QLineEdit::selectAll): (QLineEdit::edited): (QLineEdit::setEdited):
- 10:08 PM Changeset in webkit [1555] by
-
- 5 edits in trunk/WebCore
- WebCore-tests.exp: Tests needed access to QPoint, QString, and KURL symbols that were formerly exported for the benefit of WebKit.
- kwq/KWQPixmap.mm: I needed to touch something since .exp files don't cause a rebuild, so I fixed a comment in here.
- 4:49 PM Changeset in webkit [1554] by
-
- 61 edits4 adds1 delete in trunk
WebCore:
Changes to WebCore that allow WebKit to work through Objective C without going
straight to the KHTML headers. Also remove a bunch of unused stuff, especially
in QPainter.
- WebCore.exp: Export the new classes WebCoreCache and WebCoreJavaScript. Don't export any C++ symbols at all.
- WebCore.pbproj/project.pbxproj: Remove KWQWMatrix.mm, add WebCoreCache.* and WebCoreJavaScript.*.
- khtml/khtml_part.cpp: Put more unused code inside ifndef APPLE_CHANGES.
- khtml/khtmlview.cpp: Put unused code inside #ifndef APPLE_CHANGES
- khtml/khtmlview.h: Put unused virtual functions inside #ifndef APPLE_CHANGES.
- khtml/misc/loader.cpp: (CachedImage::tiled_pixmap): Change this so it always returns pixmap(). Handling it at this level is better than changing all the callers for now.
- khtml/rendering/render_box.cpp: (RenderBox::printBackground): Took out the APPLE_CHANGES now that tiled_pixmap() always just returns pixmap().
- khtml/rendering/render_frames.cpp: (RenderFrameSet::userResize): Put some unused code inside APPLE_CHANGES.
- kwq/KWQKHTMLPart.mm: (KWQKHTMLPartImpl::requestFrame): Made it get the view using the bridge, since we don't have a [widget] method on the frame any more. (KWQKHTMLPartImpl::findFrame): Used committedBridge instead of bridge, since I changed bridge to return the provisional if available. (KWQKHTMLPartImpl::frames): Used committedBridge instead of bridge, since I changed bridge to return the provisional if available.
- kwq/qt/qpixmap.h: Put an empty version of QWMatrix in here. We don't actually ever need a real matrix, just a class to let us compile.
- kwq/qt/qpainter.h: Moved QWMatrix into qpixmap.h. Removed constructors that take QPixmap and QWidget. Removed unused variants of drawText. Removed unused setClipping, setClipRect, hasClipping, translate, scale, begin, end, and device functions.
- kwq/KWQPainter.mm: (QPainter::QPainter): Remove the constructors that take a paint device, widget, or pixmap. We can get away without them. (QPainter::save): Simplify. Also remove the optimization for painters without stacks, since having an empty stack is very inexpensive. (QPainter::restore): Simplify. (QPainter::_drawPoints): Move paintingDisabled check in here. (QPainter::drawText): Removed many unused drawText variants.
- kwq/KWQView.h: Tweaked.
- kwq/KWQView.mm: Removed [KWQView drawRect:].
- kwq/KWQWMatrix.mm: Removed.
- kwq/qt/qwidget.h: Removed paint() virtual function.
- kwq/KWQWidget.mm: Removed QWidget::paint().
- kwq/WebCoreBridge.h: Added new methods installInFrame:, removeFromFrame, mouseDown:, mouseUp:, mouseMoved:, mouseDragged:, copyDOMTree:, and copyRenderTree:.
- kwq/WebCoreBridge.mm: (-[WebCoreBridge dealloc]): Call removeFromFrame. (-[WebCoreBridge createKHTMLViewWithNSView:width:height:marginWidth:marginHeight:]): Don't return the view any more, also set bridgeOwnsKHTMLView to YES. (-[WebCoreBridge copyDOMNode:DOM::copier:]): Added helper method for copyDOMTree. (-[WebCoreBridge copyDOMTree:]): Added method to be used by IFDOMNode to get at DOM tree without using C++. (-[WebCoreBridge copyRenderNode:khtml::copier:]): Added helper method for copyRenderTree. (-[WebCoreBridge copyRenderTree:]): Added method to be used by IFRenderNode to get at render tree without using C++. (-[WebCoreBridge removeFromFrame]): Added. Deletes the view if we own it. We don't want to wait for dealloc time to do this, since a lingering view might be visible. (-[WebCoreBridge installInFrame:]): Added. Does a set of things we need to do at the time we commit a provisional data source. (-[WebCoreBridge addModifiers:toState:]): Moved here from IFHTMLView. (-[WebCoreBridge mouseUp:]): Added. Used to get a mouse up event to the KHTMLView. (-[WebCoreBridge mouseDown:]): Added. Used to get a mouse down event to the KHTMLView. (-[WebCoreBridge mouseMoved:]): Added. Used to get a mouse moved event to the KHTMLView. (-[WebCoreBridge mouseDragged:]): Added. Used to get a mouse moved event to the KHTMLView in the case where we are dragging -- perhaps could be merged with mouseMoved.
- kwq/WebCoreCache.h: Added. Allows control of the WebCore cache; previously done directly in IFCache in WebKit.
- kwq/WebCoreCache.mm: Added.
- kwq/WebCoreFrame.h: Remove widget method. Change semantics of bridge method to return provisional bridge if available, which corresponds to what the widget method did before. Added a committedBridge method that has the semantics that bridge did before.
- kwq/WebCoreJavaScript.h: Added. Returns statistics about the state of JavaScript objects; previously done directly in IFCache in WebKit.
- kwq/WebCoreJavaScript.mm: Added.
WebKit:
Wean WebKit completely from getting at the C++ parts of WebCore.
We probably don't need to use C++ at all for WebKit any more.
- WebKit.pbproj/project.pbxproj: Remove all the header search paths; we don't need any special ones now.
- WebKitPrefix.h: Remove <config.h>; we don't need it any more.
- Misc.subproj/IFCache.h: Rename getStatistics to statistics.
- Misc.subproj/IFCache.mm: (+[IFCache statistics]): (+[IFCache empty]): (+[IFCache setDisabled:]): Call through WebCoreCache instead of going directly to khtml::Cache. (+[IFCache javaScriptObjectsCount]): (+[IFCache javaScriptInterpretersCount]): (+[IFCache javaScriptNoGCAllowedObjectsCount]): (+[IFCache javaScriptReferencedObjectsCount]): (+[IFCache garbageCollectJavaScriptObjects]): Call through WebCoreJavaScript instead of going directly to kjs::Collector.
- WebCoreSupport.subproj/IFWebCoreFrame.m: (-[IFWebCoreFrame bridge]): Change to return bridge from the provisional data source if it exists. (-[IFWebCoreFrame committedBridge]): Do what [bridge] used to do, always returning the bridge from the committed data source and never the provisional one.
- WebView.subproj/IFHTMLView.mm: (-[IFHTMLView provisionalDataSourceChanged:]): Don't store the provisional widget. It's stored in the bridge for the provisional data source. (-[IFHTMLView provisionalDataSourceCommitted:]): Use the bridge method installInFrame: to do most of the work that used to be here. The rest is don in removeFromFrame which is called elsewhere. (-[IFHTMLView mouseUp:]): Use the bridge's mouseUp method. (-[IFHTMLView mouseDown:]): Use the bridge's mouseDown method. (-[IFHTMLView mouseMovedNotification:]): Use the bridge's mouseMoved method. (-[IFHTMLView mouseDragged:]): Use the bridge's mouseDragged method.
- WebView.subproj/IFHTMLViewPrivate.h: Remove the widget, widgetOwned, and provisionalWidget instance variables, and the _widget and _provisionalWidget methods.
- WebView.subproj/IFHTMLViewPrivate.mm: (-[IFHTMLView _reset]): Remove the code that deleted the widget and the provisional widget. This is now handled elsewhere.
- WebView.subproj/IFDOMNode.mm: Redo to use the copyDOMTree feature of the bridge.
- WebView.subproj/IFRenderNode.mm: Redo to use the copyRenderTree feature of the bridge.
- WebView.subproj/IFRenderNode.h: Use an NSRect instead of four integers (the switch to floating point is OK).
- WebView.subproj/IFWebDataSourcePrivate.h: Add private _removeFromFrame method.
- WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource _removeFromFrame]): Set the controller and location change handler references to nil, and also call [WebCoreBridge removeFromFrame].
- WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFramePrivate setDataSource:]): Use _removeFromFrame where we formerly would set the controller and location change handler references to nil.
- WebCoreSupport.subproj/IFWebCoreBridge.h: Tweak.
WebBrowser:
- Debug/CacheController.m: (-[CacheController refreshWebCoreStatisticsMatrix]): Change name of method from getStatistics to statistics.
Jul 13, 2002:
- 9:33 PM Changeset in webkit [1553] by
-
- 6 edits in trunk/WebKit
WebFoundation:
- AuthenticationManager.subproj/IFAuthenticationManager.m: (-[IFAuthenticationManager dealloc]): Fix leak by adding call to [super dealloc].
WebKit:
- Plugins.subproj/IFNullPluginView.mm: (-[IFNullPluginView dealloc]):
- WebView.subproj/IFImageRepresentation.m: (-[IFImageRepresentation dealloc]): Fix leaks by adding calls to [super dealloc].
WebBrowser:
- Debug/DOMTree.m: (-[DOMTreeDataSource dealloc]):
- Debug/DebugUtilities.m: (-[DebugUtilities dealloc]):
- Debug/RenderTree.m: (-[RenderTreeDataSource dealloc]):
- Debug/ViewTree.m: (-[ViewTreeDataSource dealloc]):
- ListView.m: (-[ListView dealloc]): Fix leaks by adding calls to [super dealloc].
- 9:27 PM Changeset in webkit [1552] by
-
- 23 edits2 deletes in trunk
top level:
- Site/Internal/Design/IFRenamings.txt: Update with new proposals.
WebFoundation:
- AuthenticationManager.subproj/IFAuthenticationManagerCallback.h:
- AuthenticationManager.subproj/IFAuthenticationManagerPrivate.h:
- Misc.subproj/IFCFRunLoopExtensions.m: Changed to use #import instead of #include.
- Database.subproj/IFURLFileDatabase.m: Renamed private struct IFFileAccessTime to FileAccessTime (PointerEqual): Renamed from IFPtrEqual. (FileAccessTimeRelease): Renamed from IFFileAccessTimeRelease.
- Misc.subproj/IFNSThreadExtensions.m: Renamed IFNSJoinableThreadContext to IFJoinableThreadContext for clarity, since there is no NSJoinableThread. (InitJoinableThreads):
WebCore:
- WebCore.pbproj/project.pbxproj: Add a few files that are sources although they should not be compiled for any target.
- kwq/qt/qpushbutton.h: Simplified.
- kwq/KWQPushButton.mm: (QPushButton::QPushButton): Implemented text parameter.
WebKit:
- Misc.subproj/IFNSEventExtras.h: Removed.
- Misc.subproj/IFNSEventExtras.m: Removed.
- WebKit.pbproj/project.pbxproj: Removed IFNSEventExtras.*.
- WebCoreSupport.subproj/IFWebCoreBridge.mm:
- WebView.subproj/IFWebFrame.mm:
- WebView.subproj/IFWebFramePrivate.h:
- WebView.subproj/IFWebFramePrivate.mm: Renamed all bridgeFrame to frameBridge for greater clarity.
- WebView.subproj/IFHTMLView.mm: Updated comments and commented-out code.
- WebView.subproj/IFWebDataSource.h: Fix comment that mentioned IFDefaultWebController.
- WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame _transitionProvisionalToCommitted]): Fix exception string that cited the wrong state name.
- 8:55 PM Changeset in webkit [1551] by
-
- 71 edits130 adds1 delete in trunk
top level:
- embed.am: Removed.
Tools:
- Scripts/embed-in-alex: Added. Replaces the rules in embed.am as the way to make our frameworks embed themselves in Alex so we can rebuild a framework and re-run Alex with the changes without building Alex too.
- Scripts/create-forwarding-header: Added. Mainly useful for the one-time job of making forwarding headers for WebCore, but saving for possible use in the future.
- Scripts/commit-log-editor: Make Tools log show up after top level, but before things like JavaScriptCore.
- Makefile.am: Don't use embed.am any more.
- JavaScriptCore.pbproj/project.pbxproj: Use embed-into-alex instead of make embed.
WebFoundation:
- Makefile.am: Remove include of embed.am.
- WebFoundation.pbproj/project.pbxproj: Remove unneeded ApplicationServices framework search path. Use embed-into-alex instead of make embed.
WebCore:
- ForwardingHeaders/*: Added. New approach to headers to try to make Project Builder's header dependency support work even for includes like #include <render/render_object.h>.
- kwq/kjs/*: Removed. Now part of ForwardingHeaders.
- Makefile.am: Remove embed.am support.
- WebCore.pbproj/project.pbxproj: Remove other search paths, and add ForwardingHeaders directory as a search path. Add qucomextra_p.h.
- khtml/ecma/kjs_navigator.cpp: Made gratuitous changes to touch this file to make things build without requiring clean rebuild.
- khtml/rendering/render_form.cpp: Removed many unneeded QObject:: qualifiers from inside APPLE_CHANGES to touch this file to make things build without requiring clean rebuild.
- kwq/KWQButton.mm: (QButton::setText), (QButton::text):
- kwq/KWQColor.mm: (QColor::setNamedColor):
- kwq/KWQKConfigBase.mm: (KConfig::readEntry):
- kwq/KWQKHTMLSettings.mm: (KHTMLSettings::stdFontName), (KHTMLSettings::fixedFontName): (KHTMLSettings::serifFontName), (KHTMLSettings::sansSerifFontName), (KHTMLSettings::cursiveFontName), (KHTMLSettings::fantasyFontName), (KHTMLSettings::encoding):
- kwq/KWQKLocale.mm: (i18n):
- kwq/KWQKMessageBox.mm: (KMessageBox::error), (KMessageBox::warningYesNo): (KMessageBox::questionYesNo), (KMessageBox::sorry):
- kwq/KWQListBox.mm: (-[KWQBrowserDelegate browser:willDisplayCell:atRow:column:]):
- kwq/WebCoreBridge.mm: (-[WebCoreBridge selectedText]): Wean from QSTRING_TO_NSSTRING and NSSTRING_TO_QSTRING.
- kwq/KWQComboBox.mm: (QComboBox::insertItem): Wean from QSTRING_TO_NSSTRING. Note that this now stores a copy of the string in the array. The old version was unsafe if anyone later modified the QString that was passed in.
- kwq/KWQFontMetrics.mm: (QFontMetrics::width):
- kwq/KWQPainter.mm: (QPainter::drawUnderlineForText), (QPainter::drawText): Wean from QSTRING_TO_NSSTRING_LENGTH and _FAST_QSTRING_TO_NSSTRING. We still have speed as high as before, in the "length" case slightly faster.
- kwq/qt/qstring.h: Remove QSTRING_TO_NSSTRING family of macros.
- kwq/KWQInvisibleButton.mm:
- kwq/KWQKHTMLPart.mm:
- kwq/KWQKHTMLPartBrowserExtension.mm:
- kwq/KWQKJavaAppletWidget.mm:
- kwq/KWQKloader.mm:
- kwq/KWQView.mm:
- kwq/KWQsignals.mm:
- kwq/WebCoreBridge.mm:
- kwq/kdecore/kconfig.h:
- kwq/kdecore/klibloader.h:
- kwq/kdecore/klocale.h:
- kwq/khtml/khtml_ext.h:
- kwq/khtml/khtml_factory.h:
- kwq/kio/kmimetype.h: Remove subdirectory prefix from imports to match Project Builder include scheme.
- kwq/KWQKCursor.mm: (+[NSCursor _WebCore_linkCursor]):
- kwq/KWQKLocale.mm: (i18n):
- kwq/KWQKstddirs.mm: (locate): Use bundleForClass instead of bundleWithIdentifier to avoid any potential problems with multiple versions of the framework installed on the same system.
- kwq/KWQKLineEdit.mm: (KLineEdit::completionBox): Remove _logNotYetImplemented, since this is implemented well enough for our needs now, and if we need to implement it later, it will become clear from the application behavior. This should be the destiny of most of these.
- kwq/kdecore/kglobal.h: Simplify.
- kwq/KWQKGlobal.mm: Simplify.
- kwq/qt/qlineedit.h: Simplify.
- kwq/KWQLineEdit.mm: Simplify.
- kwq/KWQPaintDeviceMetrics.mm: Remove unneeded import.
- kwq/qt/qbutton.h: Remove unneeded destructor.
WebKit:
- History.subproj/IFURIEntry.m: (-[IFURIEntry image]): Use [IFURIEntry class] instead of [self class] so we get the icon from the WebKit bundle even if someone subclasses IFURIEntry.
- Plugins.subproj/IFNullPluginView.mm: (-[IFNullPluginView initWithFrame:mimeType:arguments:]): Use bundleForClass instead of bundleWithIdentifier so things work even if we have two copies of WebKit installed on the same machine.
- Makefile.am: Remove include of embed.am.
- WebKit.pbproj/project.pbxproj: Use embed-into-alex instead of make embed. Also change bundle identifier to com.apple.WebKit instead of com.apple.webkit to match standard used by our other frameworks. (Checked that we no longer have any hard-coding of the bundle identifier anywhere in our code.)
WebBrowser:
- WebBrowser.pbproj/project.pbxproj: Remove unneeded build phase.
- 3:01 PM Changeset in webkit [1550] by
-
- 24 edits in trunk
Fixed 2981849 - frames don't always draw correctly.
- WebCoreSupport.subproj/IFWebCoreBridge.mm: (-[IFWebCoreBridge childFrameNamed:]): Check provisional data source first.
- WebView.subproj/IFHTMLViewPrivate.h:
- WebView.subproj/IFHTMLViewPrivate.mm: (-[IFHTMLView _adjustFrames]): Added method to adjust frame geometry.
- WebView.subproj/IFWebDataSourcePrivate.h:
- WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource _layoutChildren]): Added method to adjust child frame geometries.
- WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame _isLoadComplete]): Removed unnecessary drawing now that frame geometry is calculated directly.
- kwq/KWQPainter.mm: Added disable drawing mode. (QPainter::drawRect): (QPainter::drawLine): (QPainter::drawEllipse): (QPainter::drawArc): (QPainter::drawLineSegments): (QPainter::drawPolyline): (QPainter::drawPolygon): (QPainter::drawConvexPolygon): (QPainter::drawPixmap): (QPainter::drawTiledPixmap): (QPainter::drawText): (QPainter::drawUnderlineForText): (QPainter::fillRect): (QPainter::setPaintingDisabled):
- kwq/KWQWidget.mm: (QWidget::frameGeometry): Use the IFWebView's geometry.
- kwq/WebCoreBridge.h:
- kwq/WebCoreBridge.mm: (-[WebCoreBridge _drawRect:withPainter:]): (-[WebCoreBridge drawRect:]): (-[WebCoreBridge adjustFrames:]): Added adjustFrames:. Factored some code.
- kwq/qt/qpainter.h: Added setPaintingDisabled.
- khtml/html/html_baseimpl.cpp: (HTMLFrameElementImpl::attach): (HTMLIFrameElementImpl::attach): Removed uniqueness check. Need to revisit vis-a-vis provisional ds.
Jul 12, 2002:
- 10:33 PM Changeset in webkit [1549] by
-
- 93 edits2 adds in trunk
- kjs/ustring.h: Since <sys/types.h> includes ushort and uint now, had to change the includes here to be compatible with that.
WebFoundation:
- WebFoundation.pbproj/project.pbxproj: Remove unused build phase.
WebCore:
- WebCore.pbproj/project.pbxproj: Add WebCoreFrame.mm, also export all the WebCore headers as Private so WebKit can see them.
- khtml/khtmlview.cpp: (KHTMLView::drawContents): Remove APPLE_CHANGES since we don't use this function any more.
- kwq/KWQDef.h: Since <sys/types.h> now includes ushort and uint, update code here to take that into account.
- kwq/KWQKHTMLPartImpl.h: Added getView().
- kwq/KWQKHTMLPart.mm: (KWQKHTMLPartImpl::getView): Added. Used by bridge.
- kwq/qt/qpainter.h:
- kwq/KWQPainter.mm: Simplify a bit, and remove some unused stuff.
- kwq/WebCoreBridge.h: Add reapplyStyles, forceLayout, drawRect:.
- kwq/WebCoreBridge.mm: (-[WebCoreBridge reapplyStyles]): Added. (-[WebCoreBridge forceLayout]): Added. (-[WebCoreBridge drawRect:]): Added.
- kwq/WebCoreFrame.h: Make this a class as well as an interface.
- kwq/WebCoreFrame.mm: Added.
- WebCore.exp: Since WebCoreFrame is now a class as well as a protocol, export it so we can subclass.
WebKit:
About 1/3 of the remaining work to wean WebKit from its special relationship with WebCore
onto explicit interfaces.
- Misc.subproj/IFCache.mm:
- WebView.subproj/IFDOMNode.mm:
- WebView.subproj/IFRenderNode.mm: Mark imports from inside WebCore with #ifndef WEBKIT_INDEPENDENT_OF_WEBCORE. Once these are all gone, the task is done.
- Plugins.subproj/IFPlugin.h:
- WebCoreSupport.subproj/IFCookieAdapter.h:
- WebCoreSupport.subproj/IFImageRenderer.h:
- WebCoreSupport.subproj/IFImageRendererFactory.h:
- WebCoreSupport.subproj/IFResourceURLHandleClient.m:
- WebCoreSupport.subproj/IFTextRenderer.h:
- WebCoreSupport.subproj/IFTextRendererFactory.h:
- WebCoreSupport.subproj/IFWebCoreBridge.h:
- WebCoreSupport.subproj/IFWebCoreViewFactory.h: Use #import <WebCore/> for getting at WebCore headers so we don't need to use -I.
- WebCoreSupport.subproj/IFWebCoreBridge.mm: (-[IFWebCoreBridge createChildFrameNamed:withURL:renderPart:allowsScrolling:marginWidth:marginHeight:]): Call setRenderPart on the WebCoreFrame rather than on the IFWebFrame.
- WebCoreSupport.subproj/IFWebCoreFrame.h: Subclass from the WebCoreFrame class.
- WebCoreSupport.subproj/IFWebCoreFrame.m: (-[IFWebCoreFrame HTMLView]): Add a cast. (-[IFWebCoreFrame widget]): Remove overzealous assert.
- WebKit.pbproj/project.pbxproj: Rearranged things a bit. Removed unneeded build phase.
- WebView.subproj/IFDocument.h:
- WebView.subproj/IFDynamicScrollBarsView.h:
- WebView.subproj/IFWebController.h:
- WebView.subproj/IFWebControllerPolicyHandler.h: Changed a few stray #include statements to #import statements.
- WebView.subproj/IFHTMLView.mm: (-[IFHTMLView provisionalDataSourceCommitted:]): Move the logic for setting up the renderPart in here from IFWebView. (-[IFHTMLView reapplyStyles]): Use the bridge. (-[IFHTMLView layout]): Use the bridge. (-[IFHTMLView drawRect:]): Use the bridge.
- WebView.subproj/IFHTMLViewPrivate.h: Remove _takeOwnershipOfWidget which is no longer needed.
- WebView.subproj/IFHTMLViewPrivate.mm: (-[NSView _IF_stopIfPluginView]): Added. Use to clean up _reset a bit. (-[IFHTMLView _reset]): Use makeObjectsPerformSelector: for simplicity.
- WebView.subproj/IFImageView.h: Remove unneeded IFWebDataSource declaration.
- WebView.subproj/IFImageView.m: Just formatting tweaks.
- WebView.subproj/IFWebControllerPrivate.mm: Removed unneeded import.
- WebView.subproj/IFWebDataSource.mm: Removed unneeded import.
- WebView.subproj/IFWebDataSourcePrivate.mm: Removed unneeded import.
- WebView.subproj/IFWebFrame.mm: Removed unneeded import.
- WebView.subproj/IFWebFramePrivate.h: Remove renderPart field and related declarations.
- WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFramePrivate dealloc]): No need to let go of renderPart any more. (-[IFWebFrame _transitionProvisionalToCommitted]): Move logic into IFHTMLView.
- WebView.subproj/IFWebView.h: Be a bit more specific about the type of documentView.
- 4:28 PM Changeset in webkit [1548] by
-
- 4 edits in trunk/WebKit
WebKit:
Only accept drags of 1 file.
- WebView.subproj/IFWebView.mm: (-[IFWebView draggingEntered:]):
WebBrowser:
Only accept drags of 1 file.
- LocationFieldEditor.m: (-[LocationFieldEditor _dragOperationForDraggingInfo:]): added (-[LocationFieldEditor draggingEntered:]): returns _dragOperationForDraggingInfo (-[LocationFieldEditor draggingUpdated:]): returns _dragOperationForDraggingInfo (-[LocationFieldEditor concludeDragOperation:]): removed comment
- 1:16 PM Changeset in webkit [1547] by
-
- 13 edits in trunk/WebKit
top level:
- configure.in: Don't play games with RANLIB; we don't need that any more and it just messes things up in the libiftest directory.
- Tests/libiftest/Makefile.am: Remove all the explicit options and just let libiftest.a be built as the default kind of library (static, I assume).
WebKit:
Fix cancelling. My recent check-in broke it for downloads.
- WebCoreSupport.subproj/IFResourceURLHandleClient.m: (-[IFResourceURLHandleClient receivedError:forHandle:]): Helper function to save code. (-[IFResourceURLHandleClient IFURLHandleResourceDidCancelLoading:]): Use an error for cancel rather than -1,-1 progress.
- WebView.subproj/IFMainURLHandleClient.mm: (-[IFMainURLHandleClient receivedProgressWithHandle:complete:]): Remove -1,-1 handling here; instead we treat it as an error. (-[IFMainURLHandleClient receivedError:forHandle:]): Remove most of the parameters since they are things we can compute ourselves. (-[IFMainURLHandleClient IFURLHandleResourceDidCancelLoading:]): Use an error for cancel rather than -1,-1 progress.
- WebView.subproj/IFWebControllerPrivate.mm: (-[IFWebController _receivedProgress:forResourceHandle:fromDataSource:complete:]): Remove the -1,-1 cancel handling; we use an error instead. (-[IFWebController _mainReceivedProgress:forResourceHandle:fromDataSource:complete:]): Remove the -1,-1 cancel handling; we use an error instead. (-[IFWebController _receivedError:forResourceHandle:partialProgress:fromDataSource:]): Remove the _isStopping check. We want to do the additional work even if already stopping. (-[IFWebController _mainReceivedError:forResourceHandle:partialProgress:fromDataSource:]): Remove the _isStopping check. We want to do the additional work even if already stopping.
- WebView.subproj/IFWebView.mm: (-[IFWebView keyDown:]): Use NSDeleteCharacter.
- 11:54 AM Changeset in webkit [1546] by
-
- 10 edits in trunk/WebKit
WebFoundation:
- Misc.subproj/IFNSDictionaryExtensions.h:
- Misc.subproj/IFNSDictionaryExtensions.m: (-[NSDictionary _IF_objectForMIMEType:]): Added. Looks in the dictionary first by the full MIME type, then by the part leading up to the "/". Used in WebKit for the dictionaries for representation and view classes.
WebKit:
- WebView.subproj/IFWebDataSource.mm: (+[IFWebDataSource registerRepresentationClass:forMIMEType:]): Use self instead of [self class]. (+[IFWebDataSource createRepresentationForMIMEType:]): Use the new _IF_objectForMIMEType to simplify and use hash table instead of linear search.
- WebView.subproj/IFWebDataSourcePrivate.mm: (+[IFWebDataSource _repTypes]): Use initWithObjectsAndKeys for brevity and a tiny tiny bit of efficiency. (+[IFWebDataSource _canShowMIMEType:]): Use the new _IF_objectForMIMEType to simplify and use hash table instead of linear search.
- WebView.subproj/IFWebView.mm: (+[IFWebView registerViewClass:forMIMEType:]): Use self instead of [self class]. (+[IFWebView createViewForMIMEType:]): Use the new _IF_objectForMIMEType to simplify and use hash table instead of linear search.
- WebView.subproj/IFWebViewPrivate.mm: (+[IFWebView _canShowMIMEType:]): Use the new _IF_objectForMIMEType to simplify and use hash table instead of linear search.
- 11:19 AM Changeset in webkit [1545] by
-
- 3 edits in trunk/WebKit
- WebKit.pbproj/project.pbxproj: Re-added JavaScriptCore, which I removed by accident.
- 10:35 AM Changeset in webkit [1544] by
-
- 28 edits9 adds14 deletes in trunk
top level:
Top level part of making WebCore build with Project Builder
instead of using automake.
- Makefile.am: Remove rules for building .pfe files. Add new one-time-commands and force-clean-timestamp features, so I don't have to send out instructions to everyone about how to make things build.
- configure.in: Remove options for using .pfe files. Remove Objective C++ support. Also remove WebCore/khtml/dom, WebCore/khtml/xml, WebCore/khtml/rendering, Test/khtmlview, Tools/wftool, and Tools/HotSpots, from the list of directories where we need to make makefiles.
- force-clean-timestamp: Added.
- one-time-commands: Added.
- .cvsignore: Don't ignore things we don't create. Do ignore the new one-time-commands-timestamp and previous-clean-timestamp.
- Tests/Makefile.am: Removed khtmlview.
- Tests/khtmlview/*: Removed.
- Tests/CookieManager/Makefile.am: Use objc-dummy.m, not objc-dummy.mm.
- Tests/CookieManager/objc-dummy.m: Added.
- Tests/CookieManager/objc-dummy.mm: Removed.
- Tests/kde/Makefile.am: Use objc-dummy.m, not objc-dummy.mm.
- Tests/kde/objc-dummy.m: Added.
- Tests/kde/objc-dummy.mm: Removed.
- Tests/qt/Makefile.am: Use objc-dummy.m, not objc-dummy.mm.
- Tests/qt/objc-dummy.m: Added.
- Tests/qt/objc-dummy.mm: Removed.
- Updates/automake-1.5-mac-ported.diff: Removed, since we can use standard automake.
- Updates/automake-1.5.tar.gz: Removed.
- Updates/install-automake.sh: Removed.
- Updates/update: Removed call to install-automake.sh.
- Tests/WebFoundation-Misc/ifnsstringextensions-test.chk: Change result to match new behavior of the _IF_domainMatches method.
- Site/Internal/Design/IFRenamings.txt: Updated for recent changes.
Tools:
- Scripts/commit-log-editor: Always sort top level first.
- Makefile.am: Take out the wftool subdir.
- wftool/.cvsignore: Removed.
WebCore:
Build WebCore with Project Builder instead of make.
Also wean WebCore from peeking inside the WebKit bundle.
- WebCore.pbproj/.cvsignore: Added.
- WebCore.pbproj/project.pbxproj: Added.
- Makefile.am: Removed rules about building the framework, and just use pbxbuild instead.
- dummy.mm: Removed.
- khtml/Makefile.am: Removed everything but SUBDIRS.
- khtml/css/Makefile.am: Removed everything but the rules for generated sources.
- khtml/dom/Makefile.am: Removed.
- khtml/ecma/Makefile.am: Removed everything but the rules for generated sources.
- khtml/html/Makefile.am: Removed everything but the rules for generated sources.
- khtml/misc/Makefile.am: Removed everything but the rules for generated sources.
- khtml/rendering/Makefile.am: Removed.
- khtml/xml/Makefile.am: Removed.
- kwq/Makefile.am: Removed everything but the rules for generated sources.
- kwq/KWQKLocale.mm: (i18n): Look in WebCore bundle, not WebKit bundle.
- kwq/KWQKstddirs.mm: (locate): Look in WebCore bundle, not WebKit bundle. Also, always assume we are looking for html4.css. (locateLocal): Don't waste code making a bad path, just return empty string.
- kwq/qt/qpixmap.h:
- kwq/KWQPixmap.mm: Changed convertToImage() to an inline since we never need to implement it.
- kwq/KWQKDebug.mm: Removed.
- kwq/KWQKImageIO.mm: Removed.
- kwq/kdecore/kcmdlineargs.h: Emptied out the file.
- kwq/kdecore/kdebug.h: Made the do-nothing code here all be inlines for smaller code size.
- kwq/KWQScrollBar.h: Fixed header guard.
- .cvsignore:
- kwq/.cvsignore:
- khtml/dom/.cvsignore: Removed.
- khtml/rendering/.cvsignore: Removed.
- khtml/xml/.cvsignore: Removed.
- kwq/kdecore/.cvsignore: Removed.
- kwq/qt/.cvsignore: Removed. Don't ignore things we don't generate any more.
- kwq/kjs/collector.h: Added.
- kwq/kjs/internal.h: Added.
- kwq/kjs/interpreter.h: Added.
- kwq/kjs/lookup.h: Added.
- kwq/kjs/object.h: Added. Used so that khtml can see the headers from JavaScriptCore.
WebKit:
- WebKit.pbproj/project.pbxproj: Don't include the html4.css file from WebCore any more. WebCore handles this on its own now. Also, don't include the document templates; we don't use them any more.
- Resources/image_document_template.html: Removed.
- Resources/plugin_document_template.html: Removed.
- Resources/text_document_template.html: Removed.
- Makefile.am: Small tweak to the force-clean-timestamp logic.
Jul 11, 2002:
- 5:47 PM Changeset in webkit [1543] by
-
- 4 edits in trunk/JavaScriptCore
- JavaScriptCore.pbproj/project.pbxproj: To make the build of WebCore work without using -I to peek at JavaScriptCore sources, made all the Public sources Private so they are all in one directory. Also, made lookup.h be Private.
- 5:45 PM Changeset in webkit [1542] by
-
- 4 edits in trunk/WebKit
2986548 - Crash if you drop URL of frameset page onto frame
2953421 - document dragged into frame should replace frameset
- WebView.subproj/IFWebView.mm: (-[IFWebView draggingEntered:]): removed obsolute comment (-[IFWebView performDragOperation:]): moved implementation from here (-[IFWebView concludeDragOperation:]): to here, added support for NSURL drags
- 5:43 PM Changeset in webkit [1541] by
-
- 4 edits in trunk/WebKit
- WebView.subproj/IFWebViewPrivate.mm: (+[IFWebView _viewTypes]): Changed back to a mutable dictionary. Oops.
- 4:51 PM Changeset in webkit [1540] by
-
- 7 edits in trunk/WebKit
WebKit:
- fixed 2980779 -- no scroll bar in history window
- WebKit.pbproj/project.pbxproj: Removed nonexistent .h file from project list (IFGrabBag.h)
- WebView.subproj/IFDynamicScrollBarsView.h: Renamed field allowsScrolling to disallowsScrolling
- WebView.subproj/IFDynamicScrollBarsView.m: (-[IFDynamicScrollBarsView updateScrollers]): (-[IFDynamicScrollBarsView setAllowsScrolling:]): (-[IFDynamicScrollBarsView allowsScrolling]): Removed initWithFrame override, whose only purpose was to set allowsScrolling to the "default" value (but not good enough for load-from-nib case). Changed all users of allowsScrolling to !disallowsScrolling instead.
WebBrowser:
- made History menu show all history, not just most recent
- futzed around with some view positions
- fixed 2988910 -- Favorites bar does not show links until restart
- made Favorites bar do fewer unnecessary relayouts
- BrowserWindow.m: (-[BrowserWindow toggleFavoritesBarWithAnimation:]): (-[BrowserWindow toggleStatusBarWithAnimation:]): Tweaked some constants.
- Defaults.plist: Changed default number of items in History menu (now used only for flat part of menu) to 10.
- English.lproj/Browser.nib: Pushed some pixels
- English.lproj/MainMenu.nib: Changed "Show All History" to "Show History in Window" since the menu now shows all history
- FavoritesBar.h: Added _lastWidth and _buttonHeight ivars
- FavoritesBar.m: (-[FavoritesBar _refreshButtons]): Use _buttonHeight ivar instead of measuring height, since bar might be shrunken down into nothingness. (-[FavoritesBar _favoritesViewFrameChanged:]): Only lay out again if width has changed (-[FavoritesBar initWithView:]): set _buttonHeight based on initial height
- GlobalHistory.m: (-[GlobalHistory _insertItemsForDate:intoMenu:atIndex:withRunningTotal:limit:]): add no-limit case (-[GlobalHistory _insertSubmenu:withTitle:atIndex:]): generalized slightly from old _insertSubmenu:forDate:atIndex: (-[GlobalHistory _addHistoryToMenu]): add all history, but limit flat part of menu; only add submenu for today if there are more today entries than fit in flat part; don't add separator after today's entries if there are no submenus; use _insertSubmenu:withTitle:atIndex: instead of _insertSubmenu:forDate:atIndex:
- NSViewAdditions.h:
- NSViewAdditions.m: (-[NSView retileAllScrollViews]): New method to work around AppKit bug involving scroll bar placement.
- WebBrowser.pbproj/project.pbxproj: The Preferences group had fallen inside Search at some point in the past; rescued it.
- 1:08 PM Changeset in webkit [1539] by
-
- 10 edits in trunk/WebKit
- Plugins.subproj/IFPluginNullEventSender.h:
- Plugins.subproj/IFPluginNullEventSender.m: (-[IFPluginNullEventSender initWithPluginView:]): renamed, simplified (-[IFPluginNullEventSender stop]): call plugin debug function
- Plugins.subproj/IFPluginView.h:
- Plugins.subproj/IFPluginView.mm: (-[IFPluginView start]): call new initWithPluginView (-[IFPluginView windowWillClose:]): added back to fix plugin view leak (-[IFPluginView NPP_HandleEvent]): added
- 10:19 AM Changeset in webkit [1538] by
-
- 14 edits in trunk/WebKit
- fixed 2930872 -- option-arrow keys should page up and down
- fixed 2924727 -- Delete does not go to previous page
- WebView.subproj/IFHTMLView.mm: Disable the keyDown and keyUp methods here. We don't really need to pass these events to KHTMLView at the moment. See the comment in this file for further explanation. This paves the way to handle keys other than arrow keys in IFWebView.
- WebView.subproj/IFWebController.h: Add temporary goBack method to IFWindowContext. See comment for more.
- WebView.subproj/IFWebView.mm: (-[IFWebView keyDown:]): Add handling for option arrow keys, space (page down), shift-space (page up), and delete (go back). Also make this call super if the key is not handled so keys make their way back to the superview in the application.
- WebView.subproj/IFWebViewPrivate.h: Add _pageLeft, _pageRight, _goBack.
- WebView.subproj/IFWebViewPrivate.mm: (-[IFWebView _pageHorizontally:]): Added. (-[IFWebView _pageLeft]): Added. (-[IFWebView _pageRight]): Added. (+[IFWebView _viewTypes]): Simplify. (-[IFWebView _goBack]): Added. Calls [IFWindowContext goBack].
- 12:56 AM Changeset in webkit [1537]
-
- 3 copies in tags/Alexander-12
This commit was manufactured by cvs2svn to create tag 'Alexander-12'.
- 12:56 AM Changeset in webkit [1536] by
-
- 5 edits in trunk/WebCore
Fixed Radar 2953254 - JavaScript window.scroll() and
window.scrollBy() do not work
- khtml/ecma/kjs_window.cpp: (WindowFunc::tryCall): Handle Scroll the same as ScrollBy.
- kwq/KWQScrollView.mm: (QScrollView::scrollBy): Implement this method, since it's needed for JS scrolling.
Jul 10, 2002:
- 11:48 PM Changeset in webkit [1535] by
-
- 4 edits in trunk/WebKit
- fixed 2973738 -- box characters
To be consistent with other browsers, we need to draw nothing for 0000-001F.
We were drawing boxes.
- WebCoreSupport.subproj/IFTextRenderer.m: (-[IFTextRenderer convertCharacters:length:toGlyphs:skipControlCharacters:]): Add the skipControlCharacters parameter. If YES, don't include glyphs for characters in the 0000-001F range. (-[IFTextRenderer slowPackGlyphsForCharacters:numCharacters:glyphBuffer:numGlyphs:]): Pass skipControlCharacters:YES. (-[IFTextRenderer _drawCharacters:length:fromCharacterPosition:toCharacterPosition:atPoint:withTextColor:backgroundColor:]): Skip control characters when creating the glyph array. (-[IFTextRenderer slowFloatWidthForCharacters:stringLength:fromCharacterPostion:numberOfCharacters:applyRounding:]): Pass skipControlCharacters:YES. (-[IFTextRenderer floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:applyRounding:attemptFontSubstitution:]): Skip control characters when computing the width. (-[IFTextRenderer extendCharacterToGlyphMapToInclude:]): Pass skipControlCharacters:NO.
- 11:23 PM Changeset in webkit [1534] by
-
- 7 edits in trunk/WebCore
- fixed 2978796 -- Client-side image map not working
- kwq/KWQRegion.mm: (QRegion::QRegion): Implement constructor that takes a QPointArray.
- kwq/qt/qarray.h: Fix some const loopholes.
- kwq/KWQCString.mm: (QCString::find): Use const char * instead of char *. (QCString::contains): Use const char * instead of char *. (QCString::right): Use const char * instead of char *. (QCString::mid): Use const char * instead of char *.
- 10:49 PM Changeset in webkit [1533] by
-
- 11 edits in trunk/WebKit
- fixed 2986273 -- assert currentURL isEqual:[handle redirectedURL] ? [handle redirectedURL] : [handle url]
Since cancel prevents further notification from getting through, currentURL can get
out of sync before cancelling, so we can't assert in the cancel function.
- WebCoreSupport.subproj/IFResourceURLHandleClient.m: (-[IFResourceURLHandleClient IFURLHandleResourceDidCancelLoading:]): Remove assert.
- WebView.subproj/IFMainURLHandleClient.h: Remove unnecessary includes. Change type of dataSource to IFWebDataSource from id. Change url to currentURL to match IFResourceURLHandleClient.
- WebView.subproj/IFMainURLHandleClient.mm: (-[IFMainURLHandleClient initWithDataSource:]): Simplify. (-[IFMainURLHandleClient didStartLoadingWithURL:]): Copied here from IFResourceURLHandleClient as a first step toward using a common superclass some day. (-[IFMainURLHandleClient didStopLoading]): Copied here from IFResourceURLHandleClient as a first step toward using a common superclass some day. (-[IFMainURLHandleClient dealloc]): Add an assert. (-[IFMainURLHandleClient receivedProgressWithHandle:complete:]): Removed most of the parameters to make this match the one in IFResourceURLHandleClient. (-[IFMainURLHandleClient IFURLHandleResourceDidBeginLoading:]): Use didStartLoadingWithURL. (-[IFMainURLHandleClient IFURLHandleResourceDidCancelLoading:]): Use receivedProgressWithHandle and didStopLoading. (-[IFMainURLHandleClient IFURLHandleResourceDidFinishLoading:data:]): Use receivedProgressWithHandle and didStopLoading. (-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]): Use receivedProgressWithHandle. (-[IFMainURLHandleClient IFURLHandle:resourceDidFailLoadingWithResult:]): Use receivedProgressWithHandle and didStopLoading. (-[IFMainURLHandleClient IFURLHandle:didRedirectToURL:]): Use didStopLoading and didStartLoadingWithURL.
- 10:32 PM Changeset in webkit [1532] by
-
- 14 edits in trunk
WebCore:
WebCore part of fix for:
Radar 2953250 - JavaScript window.focus() and window.blur()
methods don't work
- khtml/ecma/kjs_window.cpp: (WindowFunc::tryCall): Call the appropriate things on focus and blur.
- kwq/KWQKHTMLPart.mm: (KWQKHTMLPartImpl::unfocusWindow): Implemented by calling bridge.
- kwq/KWQKHTMLPartImpl.h, kwq/KWQWidget.mm: (QWidget::setActiveWindow): Implemented by ordering the window front and making it key.
- kwq/WebCoreBridge.h: Prototype new bridge method.
WebKit:
WebKit part of fix for:
Radar 2953250 - JavaScript window.focus() and window.blur()
methods don't work
- WebCoreSupport.subproj/IFWebCoreBridge.mm: (-[IFWebCoreBridge unfocusWindow]): Use private AppKit interface to cycle windows if the window is the key window.
- 10:07 PM Changeset in webkit [1531] by
-
- 4 edits in trunk/WebCore
- fixed 2979153 -- charset sjis page is gibberish
- kwq/character-sets.txt: Add x-sjis as an alias for Shift JIS.
- 9:59 PM Changeset in webkit [1530] by
-
- 4 edits in trunk/WebKit
- fixed 2983025 -- crash in sendEvent on pages with flash playing
- Plugins.subproj/IFPluginView.mm: (-[IFPluginView removeTrackingRect]): New, removes tracking rect and releases window. (-[IFPluginView resetTrackingRect]): New, adds tracking rect and retains window. (-[IFPluginView start]): Use resetTrackingRect. (-[IFPluginView stop]): Use removeTrackingRect. (-[IFPluginView viewWillMoveToWindow:]): Call removeTrackingRect because the window will change by the time we get to viewDidMoveToWindow. (-[IFPluginView viewDidMoveToWindow]): Call resetTrackingRect. (-[IFPluginView viewHasMoved:]): Call resetTrackingRect.
- 9:12 PM Changeset in webkit [1529] by
-
- 4 edits in trunk/WebKit
- WebView.subproj/IFWebViewPrivate.mm: (-[IFWebView _scrollToBottomLeft]): Fix this to use the document view to define what the bottom left is, not the content view (which is often much smaller than the document).
- 6:44 PM Changeset in webkit [1528] by
-
- 5 edits in trunk/WebKit
WebKit:
Fixes for:
2981866 - Download doesn't appear in Downloads window if link was command-clicked
2965312 - Download progress not shown when clicking on download link with Alex not running
- WebView.subproj/IFMainURLHandleClient.mm: (-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]): retain the downloadProgressHandler before calling requestContentPolicy as the web controller may be released in requestContentPolicy
WebBrowser:
Fixes for:
2981866 - Download doesn't appear in Downloads window if link was command-clicked
2965312 - Download progress not shown when clicking on download link with Alex not running
- BrowserDocument.m: (-[BrowserDocument _stopNonDownloadingDataSource:]): added (-[BrowserDocument close]): calls above
- WebController.m: (-[BrowserWebController haveContentPolicy:andPath:forDataSource:]): moved super call to first line
- 5:38 PM Changeset in webkit [1527] by
-
- 6 edits in trunk/WebCore
- kwq/KWQPixmap.mm: (QPixmap::QPixmap): Restore the imageRenderer == nil case to fix a regression related to resized images. Otherwise, isNull was returning true for all images. In copy constructor, set needCopyOnWrite on both the source and destination; setting it on the destination was not enough. (QPixmap::receivedData): Create the imageRenderer if it's nil. (QPixmap::operator=): Set needCopyOnWrite on both the source and destination.
- kwq/qt/qpixmap.h: Make needCopyOnWrite mutable so we can set it on the source when copying or assigning.
- 3:08 PM Changeset in webkit [1526] by
-
- 20 edits in trunk/WebKit
WebKit:
Fix for:
2976311 - Download fails if you close the window that started the download
2976308 - Can't navigate in window while download started in that window is in progress
- WebView.subproj/IFMainURLHandleClient.h:
- WebView.subproj/IFMainURLHandleClient.mm: (-[IFMainURLHandleClient dealloc]): (-[IFMainURLHandleClient _receivedProgress:forResourceHandle:fromDataSource:complete:]): added, sends progress to correct handler (-[IFMainURLHandleClient _receivedError:forResourceHandle:partialProgress:fromDataSource:]): added, sends progress to correct handler (-[IFMainURLHandleClient IFURLHandleResourceDidCancelLoading:]): calls _receivedProgress (-[IFMainURLHandleClient IFURLHandleResourceDidFinishLoading:data:]): calls _receivedProgress (-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]): calls _receivedProgress (-[IFMainURLHandleClient IFURLHandle:resourceDidFailLoadingWithResult:]): calls _receivedError
- WebView.subproj/IFWebController.h:
- WebView.subproj/IFWebController.mm: (-[IFWebController setDownloadProgressHandler:]): added (-[IFWebController downloadProgressHandler]): added
- WebView.subproj/IFWebControllerPrivate.h:
- WebView.subproj/IFWebControllerPrivate.mm: (-[IFWebController _mainReceivedProgress:forResourceHandle:fromDataSource:complete:]): removed download special-casing
WebBrowser:
Fix for:
2976311 - Download fails if you close the window that started the download
2976308 - Can't navigate in window while download started in that window is in progress
- BrowserDocument.m: (-[BrowserDocument init]): set the downloadProgressHandler to the download monitor (-[BrowserDocument close]): set the downloadProgressHandler to nil
- DownloadMonitor.h:
- DownloadMonitor.m: (-[DownloadMonitor _monitorDownload:withProgress:error:dataSource:complete:]): renamed, made private (-[DownloadMonitor receivedProgress:forResourceHandle:fromDataSource:complete:]): added, calls _monitorDownload (-[DownloadMonitor receivedError:forResourceHandle:partialProgress:fromDataSource:]): added, calls _monitorDownload
- WebController.m: (-[BrowserWebController receivedProgress:forResourceHandle:fromDataSource:complete:]): removed download special-casing (-[BrowserWebController receivedError:forResourceHandle:partialProgress:fromDataSource:]): removed download special-casing
- 1:50 PM Changeset in webkit [1525] by
-
- 1 edit in trunk/WebKit/Misc.subproj/WebFileDatabase.m
Fix the underlying cause of a deadlock problem that I saw. It's important that IFURLHandle
drops its references to the handle clients on the thread that it's using for client notification
rather than the thread it happens to be deallocated on.
Also fix things so that the notifications can be sent without holding the lock the whole time,
by making a copy of the client array and any parameters, and fix one small problem related to this.
Use makeObjectsPerformSelector in a lot more places, and do a few other cleanups.
- CacheLoader.subproj/IFURLHandle.m: (-[IFURLHandleSynchronousClient initWithHandle:monitor:]): Remove unneeded [self release] in the case where self is nil. (-[IFURLHandle _didRedirectToURL:]): Lock around changes to the redirectedURL so we don't access the object from the callback thread when it's invalid. (-[IFURLHandle _notifyClientsDidBeginLoading]): Do notifications outside the lock. (-[IFURLHandle _notifyClientsDidCancelLoading]): Do notifications outside the lock. Also empty out the clients array because we are at an end state. It's important to empty it out here from the thread we are calling back on rather than from dealloc on whatever thread that is called on. (-[IFURLHandle _notifyClientsDataDidBecomeAvailable]): Do notifications outside the lock. (-[IFURLHandle _notifyClientsDidFinishLoading]): Do notifications outside the lock. Also empty out the clients array because we are at an end state. It's important to empty it out here from the thread we are calling back on rather than from dealloc on whatever thread that is called on. (-[IFURLHandle _notifyClientsDidFailLoading]): Do notifications outside the lock. Also empty out the clients array because we are at an end state. It's important to empty it out here from the thread we are calling back on rather than from dealloc on whatever thread that is called on. (-[IFURLHandle _notifyClientsDidRedirectToURL]): Do notifications outside the lock.
- AuthenticationManager.subproj/IFAuthenticationManager.m: (-[IFAuthenticationManager _retryWaitingRequests]): Remove unnecessary copy/autorelease since we are the sole owner of the waitingRequests array.
- CacheLoader.subproj/IFHTTPURLProtocolHandler.m: (-[IFHTTPURLProtocolHandler setRedirectedURL:]): Use makeObjectsPerformSelector for simplicity. Also remove the exception handler since the handles accessor now does a copy/autorelease. (-[IFHTTPURLProtocolHandler setResponseHeaders:]): Use makeObjectsPerformSelector for simplicity. Also remove the exception handler since the handles accessor now does a copy/autorelease.
- CacheLoader.subproj/IFURLLoad.m: (-[IFURLLoad handles]): Return a copied auto-released version. (-[IFURLLoad updateHandles]): Use makeObjectsPerformSelector for simplicity.
- Database.subproj/IFURLFileDatabase.m: (-[IFURLFileDatabase sync]): Remove unnecessary checks for nil and empty array in cases that the nil behavior of Objective C already takes care of. Use makeObjectsPerformSelector for simplicity.
- Misc.subproj/IFFileTypeMappings.m: (-[IFFileTypeMappingsPrivate init]): Create a reverse mapping dictionary too, so we can map in both directions quickly. Also fix a storage leak in the failure case. (-[IFFileTypeMappings _init]): Fix a storage leak in the failure case. (-[IFFileTypeMappings MIMETypeForExtension:]): Use the new reverse dictionary.
- Misc.subproj/IFNSArrayExtensions.h: Add _IF_makeObjectsPerformSelector:withObject:withObject:.
- Misc.subproj/IFNSArrayExtensions.m: Fix name in comment for the benefit of the renamings script. (-[NSArray _IF_makeObjectsPerformSelector:withObject:withObject:]): Added. Stole the algorithm from NSArray.m.
- Misc.subproj/IFNSObjectExtensions.m: Fix name in comment for the benefit of the renamings script.
- 11:57 AM Changeset in webkit [1524] by
-
- 5 edits1 delete in trunk/WebKit
- WebView.subproj/IFGrabBag.h: Removed.
- WebView.subproj/IFWebController.h: Move IFContextMenuHandler here.
- 11:05 AM Changeset in webkit [1523] by
-
- 8 edits in trunk/WebKit
Did some tweaks that weren't really necessary. But at least one is a significant
improvement so I decided to commit rather then just discarding the changes.
- Bookmarks.subproj/IFBookmark.m: (-[IFBookmark title]): Take out special case for separator. (-[IFBookmark setTitle:]): Take out special case for separator. (-[IFBookmark image]): Take out special case for separator. (-[IFBookmark setImage:]): Take out special case for separator. (-[IFBookmark setURLString:]): Take out special case for non-leaf. (-[IFBookmark children]): Take out request for concrete implementation; this is not useful since it's specific to one subclass. (-[IFBookmark numberOfChildren]): Take out request for concrete implementation; this is not useful since it's specific to one subclass. (-[IFBookmark _numberOfDescendants]): Take out request for concrete implementation; this is not useful since it's specific to one subclass. (-[IFBookmark insertChild:atIndex:]): Take out special case for non-list. (-[IFBookmark removeChild:]): Take out special case for non-list. (+[IFBookmark bookmarkFromDictionaryRepresentation:withGroup:]): Refactored to eliminate repeated code.
- Bookmarks.subproj/IFBookmarkLeaf.m: (-[IFBookmarkLeaf copyWithZone:]): Use allocWithZone to be more pedantically correct.
- Bookmarks.subproj/IFBookmarkSeparator.m: (-[IFBookmarkSeparator title]): Override to return nil. (-[IFBookmarkSeparator image]): Override to return nil.
- 10:58 AM Changeset in webkit [1522] by
-
- 5 edits in trunk/WebCore
- kwq/KWQKHTMLPart.mm: (KWQKHTMLPartImpl::setBaseURL): Call setBaseURL on the underlying document all the time, not just when we add a missing "/" character.
- 10:31 AM Changeset in webkit [1521] by
-
- 7 edits in trunk/WebKit
- Misc.subproj/WebKitDebug.m: Remove workaround for long-ago fixed C compiler bug.
- Plugins.subproj/IFPluginView.mm: (-[IFPluginView keyUp:]), (-[IFPluginView keyDown:]): Simplify keyboard scrolling code by passing along all events that the plug-in doesn't handle rather than special-casing certain events. Also use super rather than nextResponder to pass along the scroll events (super will do nextResponder).
- WebView.subproj/IFHTMLView.mm: (-[IFHTMLView keyDown:]), (-[IFHTMLView keyUp:]): Use super rather than nextResponder to pass along scroll events (super will do nextResponder).