1. 13 Jan, 2011 1 commit
    • enrica@apple.com's avatar
      Source/WebCore: WebKit2: Add support for drag and drop · 9d9813d0
      enrica@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=52343
      <rdar://problem/7660558>
                     
      Reviewed by Darin Adler.
      
      This patch contains the changes required to support dropping content
      in WebKit on the Mac. The DragData class has been extended to provide
      additional context from the application (keyboard state, modal windows, etc.)
      as well as information of the drag pasteboard being used.
      The support for WebKit as drag source will be added with a separate patch.
      
      * WebCore.exp.in:
      * page/DragController.cpp:
      (WebCore::DragController::dragIsMove): Added DragData parameter.
      (WebCore::DragController::tryDocumentDrag): Modified call to dragIsMove.
      (WebCore::DragController::concludeEditDrag): Same as above.
      * page/DragController.h: Added parameter to isCopyKeyDown.
      * page/mac/DragControllerMac.mm:
      The following methods have been modified to use the information stored
      in the DragData class.
      (WebCore::DragController::isCopyKeyDown):
      (WebCore::DragController::dragOperation):
      * platform/DragData.h:
      (WebCore::DragData::flags):
      * platform/DragData.cpp: Added default flags parameter to the constructor.
      * platform/mac/DragDataMac.mm:
      (WebCore::DragData::DragData): Added constructor that receives the name of the pasteboard to use.
      (WebCore::DragData::canSmartReplace):
      (WebCore::DragData::containsColor):
      (WebCore::DragData::containsFiles):
      (WebCore::DragData::asFilenames):
      (WebCore::DragData::containsPlainText):
      (WebCore::DragData::asPlainText):
      (WebCore::DragData::containsCompatibleContent):
      (WebCore::DragData::asURL):
      (WebCore::DragData::asFragment):
      All the following files have been modified to add the DragData
      parameter to isCopyKeyDown. I plan to improve this in the future
      and make isCopyKeyDown not platform specific.
      * page/android/DragControllerAndroid.cpp:
      (WebCore::DragController::isCopyKeyDown):
      * page/brew/DragControllerBrew.cpp:
      (WebCore::DragController::isCopyKeyDown):
      * page/chromium/DragControllerChromium.cpp:
      (WebCore::DragController::isCopyKeyDown):
      * page/efl/DragControllerEfl.cpp:
      (WebCore::DragController::isCopyKeyDown):
      * page/gtk/DragControllerGtk.cpp:
      (WebCore::DragController::isCopyKeyDown):
      * page/haiku/DragControllerHaiku.cpp:
      (WebCore::DragController::isCopyKeyDown):
      * page/mac/DragControllerMac.mm:
      (WebCore::DragController::isCopyKeyDown):
      (WebCore::DragController::dragOperation):
      * page/qt/DragControllerQt.cpp:
      (WebCore::DragController::isCopyKeyDown):
      * page/win/DragControllerWin.cpp:
      (WebCore::DragController::isCopyKeyDown):
      * page/wx/DragControllerWx.cpp:
      (WebCore::DragController::isCopyKeyDown):
      
      WebKit/mac: WebKit2: Add support for drag and drop
      https://bugs.webkit.org/show_bug.cgi?id=52343
      <rdar://problem/7660558>
              
      Reviewed by Darin Adler.
      
      The DragData class has been extended to provide
      additional context from the application (keyboard state, modal windows, etc.)
      as well as information of the drag pasteboard being used.
      These are the changes to align the behavior for WebKit.
      
      * WebView/WebView.mm:
      (-[WebView applicationFlags:]): Added.
      (-[WebView draggingEntered:]): Added parameter to the DragData constructor.
      (-[WebView draggingUpdated:]): Added parameter to the DragData constructor.
      (-[WebView draggingExited:]): Added parameter to the DragData constructor.
      (-[WebView performDragOperation:]): Added parameter to the DragData constructor.
      
      WebKit2: WebKit2: Add support for drag and drop
      https://bugs.webkit.org/show_bug.cgi?id=52343
      <rdar://problem/7660558>
                     
      Reviewed by Darin Adler.
      
      This patch contains the changes required to support dropping content
      in WebKit on the Mac. The DragData class has been extended to provide
      additional context from the application (keyboard state, modal windows, etc.)
      as well as information of the drag pasteboard being used.
      The support for WebKit as drag source will be added with a separate patch.
      
      * Shared/DragControllerAction.h: Added.
      * UIProcess/API/mac/WKView.mm:
      Added implemention of the methods required to add suport for a drop target.
      To maintain asynchronous communication with the WebProcess, we always return
      the previous calculated value for the drag operation.
      (-[WKView _registerDraggedTypes]):
      (-[WKView initWithFrame:contextRef:pageGroupRef:]):
      (-[WKView applicationFlags:]):
      (-[WKView draggingEntered:]):
      (-[WKView draggingUpdated:]):
      (-[WKView draggingExited:]):
      (-[WKView prepareForDragOperation:]):
      (-[WKView performDragOperation:]):
      * UIProcess/WebPageProxy.cpp:
      (WebKit::WebPageProxy::WebPageProxy):
      (WebKit::WebPageProxy::performDragControllerAction):
      (WebKit::WebPageProxy::didPerformDragControllerAction):
      * UIProcess/WebPageProxy.h:
      (WebKit::WebPageProxy::dragOperation):
      (WebKit::WebPageProxy::resetDragOperation):
      * UIProcess/WebPageProxy.messages.in:
      * WebKit2.xcodeproj/project.pbxproj:
      * WebProcess/WebCoreSupport/WebDragClient.cpp:
      (WebKit::WebDragClient::willPerformDragDestinationAction):
      (WebKit::WebDragClient::willPerformDragSourceAction):
      (WebKit::WebDragClient::actionMaskForDrag):
      (WebKit::WebDragClient::dragSourceActionMaskForPoint):
      (WebKit::WebDragClient::startDrag):
      * WebProcess/WebPage/WebPage.cpp:
      (WebKit::WebPage::performDragControllerAction):
      * WebProcess/WebPage/WebPage.h:
      * WebProcess/WebPage/WebPage.messages.in:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@75743 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      9d9813d0
  2. 11 Jan, 2011 1 commit
    • enrica@apple.com's avatar
      Source/WebCore: Paste and drag and drop use different code paths to interact with the pasteboard. · 964ea218
      enrica@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=52093
      The change consists in a refactoring of the code to have only one class that
      deals with the pasteboard on Mac.
      
      Reviewed by Alexey Proskuryakov.
      
      No new tests. A test is already available for this
      (editing/pasteboard/drag-image-to-contenteditable-in-iframe.html) but had incorrect results.
      
      * WebCore.exp.in:
      * loader/EmptyClients.h: Added two Mac only methods to call into WebKit to use functionality
      that is in NSURLExtras.
      (WebCore::EmptyEditorClient::canonicalizeURL):
      (WebCore::EmptyEditorClient::canonicalizeURLString):
      * page/DragController.cpp:
      The following methods have been changed to pass a pointer to the Frame object
      to the DragData class.
      (WebCore::documentFragmentFromDragData):
      (WebCore::DragController::performDrag):
      (WebCore::DragController::dispatchTextInputEventFor):
      (WebCore::DragController::concludeEditDrag):
      * page/EditorClient.h: Added two Mac only methods to call into WebKit to use functionality
      that is in NSURLExtras.
      The following files have been modified to pass the Frame object to the DragData method calls.
      * page/chromium/DragControllerChromium.cpp:
      (WebCore::DragController::dragOperation):
      * page/gtk/DragControllerGtk.cpp:
      (WebCore::DragController::dragOperation):
      * page/mac/DragControllerMac.mm:
      (WebCore::DragController::dragOperation):
      * page/qt/DragControllerQt.cpp:
      (WebCore::DragController::dragOperation):
      * page/win/DragControllerWin.cpp:
      (WebCore::DragController::dragOperation):
      * platform/DragData.h: Removed Mac specific constructor and reference to PasteboardHelper class.
      * platform/Pasteboard.h: Added public constructor to create a Pasteboard object from an NSPasteboard.
      The following files were all modified to match the new parameters of the methods listed.
      * platform/android/DragDataAndroid.cpp:
      (WebCore::DragData::asPlainText):
      (WebCore::DragData::containsURL):
      (WebCore::DragData::asURL):
      (WebCore::DragData::asFragment):
      * platform/chromium/DragDataChromium.cpp:
      (WebCore::DragData::containsURL):
      (WebCore::DragData::asURL):
      (WebCore::DragData::asPlainText):
      (WebCore::DragData::containsCompatibleContent):
      (WebCore::DragData::asFragment):
      * platform/gtk/DragDataGtk.cpp:
      (WebCore::DragData::asPlainText):
      (WebCore::DragData::containsCompatibleContent):
      (WebCore::DragData::containsURL):
      (WebCore::DragData::asURL):
      (WebCore::DragData::asFragment):
      * platform/haiku/DragDataHaiku.cpp:
      (WebCore::DragData::asPlainText):
      (WebCore::DragData::containsURL):
      (WebCore::DragData::asURL):
      (WebCore::DragData::asFragment):
      * platform/mac/DragDataMac.mm:
      (WebCore::DragData::DragData):
      (WebCore::DragData::asPlainText):
      (WebCore::insertablePasteboardTypes):
      (WebCore::DragData::containsCompatibleContent):
      (WebCore::DragData::containsURL):
      (WebCore::DragData::asURL):
      (WebCore::DragData::asFragment):
      * platform/mac/PasteboardMac.mm:
      (WebCore::Pasteboard::getBestURL):
      (WebCore::Pasteboard::asURL):
      * platform/qt/DragDataQt.cpp:
      (WebCore::DragData::asPlainText):
      (WebCore::DragData::containsCompatibleContent):
      (WebCore::DragData::containsURL):
      (WebCore::DragData::asURL):
      (WebCore::DragData::asFragment):
      * platform/win/DragDataWin.cpp:
      (WebCore::DragData::containsURL):
      (WebCore::DragData::asURL):
      (WebCore::DragData::asPlainText):
      (WebCore::DragData::containsCompatibleContent):
      (WebCore::DragData::asFragment):
      * platform/wince/DragDataWinCE.cpp:
      (WebCore::DragData::containsURL):
      (WebCore::DragData::asURL):
      (WebCore::DragData::asPlainText):
      (WebCore::DragData::asFragment):
      * platform/wx/DragDataWx.cpp:
      (WebCore::DragData::asPlainText):
      (WebCore::DragData::containsURL):
      (WebCore::DragData::asURL):
      (WebCore::DragData::asFragment):
      
      WebKit: Paste and drag and drop use different code paths to interact with the pasteboard.
      https://bugs.webkit.org/show_bug.cgi?id=52093
      The change consists in a refactoring of the code to have only one class that
      deals with the pasteboard on Mac.
      
      Reviewed by Alexey Proskuryakov.
      
      * WebKit.xcodeproj/project.pbxproj: Removed WebPasteboardHelper.mm and WebPasteboardHelper.h.
      
      WebKit/mac: Paste and drag and drop use different code paths to interact with the pasteboard.
      https://bugs.webkit.org/show_bug.cgi?id=52093
      The change consists in a refactoring of the code to have only one class that
      deals with the pasteboard on Mac.
      
      Reviewed by Alexey Proskuryakov.
      
      * WebCoreSupport/WebEditorClient.h:
      * WebCoreSupport/WebEditorClient.mm: Added two methods to provide to WebCore functionality
      exposed by NSURLExtras.
      (WebEditorClient::canonicalizeURL):
      (WebEditorClient::canonicalizeURLString):
      * WebCoreSupport/WebPasteboardHelper.h: Removed.
      * WebCoreSupport/WebPasteboardHelper.mm: Removed.
      * WebView/WebHTMLView.mm: Removed comment.
      * WebView/WebView.mm: The following methods have been changed to use the new DragData
      constructor that doesn't use the WebPasteboardHelper reference.
      (-[WebView draggingEntered:]):
      (-[WebView draggingUpdated:]):
      (-[WebView draggingExited:]):
      (-[WebView performDragOperation:]):
      
      WebKit2: Paste and drag and drop use different code paths to interact with the pasteboard.
      https://bugs.webkit.org/show_bug.cgi?id=52093
      The change consists in a refactoring of the code to have only one class that
      deals with the pasteboard on Mac.
      
      Reviewed by Alexey Proskuryakov.
      
      * WebProcess/WebCoreSupport/WebEditorClient.h:
      * WebProcess/WebCoreSupport/mac/WebEditorClientMac.mm: Added two methods to provide to WebCore functionality
      exposed by NSURLExtras.
      (WebKit::WebEditorClient::canonicalizeURL):
      (WebKit::WebEditorClient::canonicalizeURLString):
      
      LayoutTests: Paste and drag and drop use different code paths to interact with the pasteboard.
      https://bugs.webkit.org/show_bug.cgi?id=52093
      
      Reviewed by Alexey Proskuryakov.
      
      New test results added to match the correct behavior.
              
      * platform/mac/editing/pasteboard/drag-image-to-contenteditable-in-iframe-expected.checksum:
      * platform/mac/editing/pasteboard/drag-image-to-contenteditable-in-iframe-expected.png:
      * platform/mac/editing/pasteboard/drag-image-to-contenteditable-in-iframe-expected.txt:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@75523 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      964ea218
  3. 08 Jan, 2011 1 commit
  4. 08 Dec, 2010 1 commit
  5. 27 Apr, 2010 1 commit
  6. 12 Dec, 2009 1 commit
    • weinig@apple.com's avatar
      Rubber-stamped by Dan Bernstein. · 58518949
      weinig@apple.com authored
      Fix the EXPERIMENTAL_SINGLE_VIEW_MODE build.
      
      * Configurations/WebCore.xcconfig:
      * page/EventHandler.cpp:
      (WebCore::EventHandler::EventHandler):
      (WebCore::EventHandler::clearDragState):
      * page/mac/DragControllerMac.mm:
      (WebCore::DragController::isCopyKeyDown):
      * page/mac/EventHandlerMac.mm:
      (WebCore::EventHandler::eventActivatedView):
      * platform/PlatformKeyboardEvent.h:
      * platform/PlatformMouseEvent.h:
      * platform/PlatformWheelEvent.h:
      (WebCore::PlatformWheelEvent::PlatformWheelEvent):
      * platform/ScrollView.cpp:
      (WebCore::ScrollView::wheelEvent):
      * platform/mac/KeyEventMac.mm:
      (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
      * platform/mac/PlatformMouseEventMac.mm:
      (WebCore::PlatformMouseEvent::PlatformMouseEvent):
      * platform/mac/PopupMenuMac.mm:
      (WebCore::PopupMenu::show):
      * platform/mac/WidgetMac.mm:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@52063 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      58518949
  7. 09 Dec, 2009 1 commit
    • weinig@apple.com's avatar
      Add some #ifdefs to allow us to experiment with a single NSView mac WebKit. · 970f6580
      weinig@apple.com authored
      Reviewed by Anders Carlsson.
      
      * page/Chrome.h:
      * page/EventHandler.h:
      * page/mac/ChromeMac.mm:
      * page/mac/DragControllerMac.mm:
      (WebCore::DragController::dragOperation):
      * page/mac/EventHandlerMac.mm:
      (WebCore::EventHandler::eventLoopHandleMouseDragged):
      (WebCore::EventHandler::eventActivatedView):
      (WebCore::EventHandler::passMousePressEventToSubframe):
      (WebCore::EventHandler::passMouseMoveEventToSubframe):
      (WebCore::EventHandler::passMouseReleaseEventToSubframe):
      (WebCore::EventHandler::passWheelEventToWidget):
      (WebCore::EventHandler::focusDocumentView):
      (WebCore::EventHandler::passWidgetMouseDownEventToWidget):
      (WebCore::EventHandler::createDraggingClipboard):
      (WebCore::isKeyboardOptionTab):
      (WebCore::EventHandler::invertSenseOfTabsToLinks):
      (WebCore::EventHandler::tabsToAllControls):
      (WebCore::EventHandler::needsKeyboardEventDisambiguationQuirks):
      (WebCore::EventHandler::accessKeyModifiers):
      * platform/ScrollView.cpp:
      (WebCore::ScrollView::wheelEvent):
      * platform/Widget.cpp:
      * platform/Widget.h:
      * platform/mac/ScrollViewMac.mm:
      * platform/mac/WidgetMac.mm:
      (WebCore::Widget::Widget):
      (WebCore::Widget::~Widget):
      (WebCore::Widget::show):
      (WebCore::Widget::hide):
      (WebCore::Widget::setCursor):
      (WebCore::Widget::paint):
      (WebCore::Widget::setFocus):
      (WebCore::Widget::setIsSelected):
      (WebCore::Widget::frameRect):
      (WebCore::Widget::setFrameRect):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@51916 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      970f6580
  8. 16 Sep, 2009 1 commit
    • bolsinga@apple.com's avatar
      Add ENABLE(DRAG_SUPPORT) · 5db11076
      bolsinga@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=29233
      
      Reviewed by David Kilzer.
      
      JavaScriptCore:
      
      * wtf/Platform.h:
      
      WebCore:
      
      No new tests. (No change in default behavior.)
      
      * DerivedSources.make: Use new WebCore.DragSupport.exp file if ENABLE_DRAG_SUPPORT.
      * WebCore.base.exp: Move Drag Support only exports to WebCore.DragSupport.exp.
      * WebCore.xcodeproj/project.pbxproj: Add WebCore.DragSupport.exp.
      * dom/Clipboard.h: Use ENABLE(DRAG_SUPPORT) where applicable.
      * loader/EmptyClients.h: Ditto.
      * page/DragController.cpp: Wrap entire file in ENABLE(DRAG_SUPPORT).
      * page/EventHandler.cpp: Use ENABLE(DRAG_SUPPORT) where applicable.
      (WebCore::EventHandler::EventHandler):
      (WebCore::EventHandler::clear):
      (WebCore::EventHandler::handleMousePressEvent):
      (WebCore::EventHandler::handleMouseReleaseEvent):
      (WebCore::EventHandler::handleMouseMoveEvent):
      * page/EventHandler.h: Ditto.
      * page/Page.cpp: Ditto.
      (WebCore::Page::Page):
      * page/Page.h: Ditto.
      * page/mac/DragControllerMac.mm: Wrap entire file in ENABLE(DRAG_SUPPORT).
      * page/mac/EventHandlerMac.mm: Use ENABLE(DRAG_SUPPORT) where applicable.
      (WebCore::EventHandler::passSubframeEventToSubframe):
      * platform/DragData.cpp: Wrap entire file in ENABLE(DRAG_SUPPORT).
      * platform/DragImage.cpp: Wrap entire file in ENABLE(DRAG_SUPPORT).
      * platform/mac/ClipboardMac.h: Use ENABLE(DRAG_SUPPORT) where applicable.
      * platform/mac/ClipboardMac.mm: Ditto.
      * platform/mac/DragDataMac.mm: Wrap entire file in ENABLE(DRAG_SUPPORT).
      * platform/mac/DragImageMac.mm: Wrap entire file in ENABLE(DRAG_SUPPORT).
      * rendering/RenderLayer.cpp: Use ENABLE(DRAG_SUPPORT) where applicable.
      (WebCore::RenderLayer::autoscroll):
      * rendering/RenderObject.cpp: Ditto.
      * rendering/RenderObject.h: Ditto.
      * svg/graphics/SVGImage.cpp: Ditto.
      (WebCore::SVGImage::dataChanged):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@48426 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5db11076
  9. 21 May, 2009 1 commit
    • eric@webkit.org's avatar
      2009-05-21 Eric Seidel <eric@webkit.org> · 3d81d65f
      eric@webkit.org authored
              Reviewed by Alexey Proskuryakov.
      
              Clean up DragController
              https://bugs.webkit.org/show_bug.cgi?id=25926
      
              I renamed m_document to m_documentUnderMouse to better document what it does
              I could call it m_lastDocumentUnderMouse to be most-accurate, but this seemed
              long enough.
      
              I also saw copy/paste code involving clearing the selection when moving out of
              one document and into another.  I moved that code into a function called
              mouseMovedIntoDocument.
      
              I also got rid of a couple needless null-checks after confirming via source
              inspection they were not ever possible.
              In Mac WebKit it's not possible to have a Page that doesn't have a mainFrame()
              I left an ASSERT(m_page->mainFrame()) in case some other port ever violates this.
              It's also not possible to return a document from documentAtPoint that is not
              in a frame (as such a document would not be rendered).
      
              No functional changes, thus no tests.
      
              * page/DragController.cpp:
              (WebCore::DragController::DragController):
              (WebCore::DragController::dragIsMove):
              (WebCore::DragController::dragExited):
              (WebCore::DragController::performDrag):
              (WebCore::DragController::mouseMovedIntoDocument):
              (WebCore::DragController::dragEnteredOrUpdated):
              (WebCore::DragController::tryDocumentDrag):
              (WebCore::DragController::operationForLoad):
              (WebCore::DragController::concludeEditDrag):
              (WebCore::DragController::canProcessDrag):
              (WebCore::DragController::tryDHTMLDrag):
              (WebCore::DragController::placeDragCaret):
              * page/DragController.h:
              (WebCore::DragController::documentUnderMouse):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43968 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3d81d65f
  10. 26 Nov, 2008 1 commit
    • darin@chromium.org's avatar
      2008-10-31 Tony Chang <tony@chromium.org> · 89e50aab
      darin@chromium.org authored
              Reviewed by Oliver Hunt.
      
              Add a new platform specific method cleanupAfterSystemDrag
              that platforms can ue to clean up drag state after a
              system drag.  Use this method on PLAFORM(MAC).
              https://bugs.webkit.org/show_bug.cgi?id=21956
      
              * ChangeLog:
              * page/DragController.cpp:
              (WebCore::DragController::doSystemDrag):
              * page/DragController.h:
              * page/gtk/DragControllerGtk.cpp:
              (WebCore::DragController::cleanupAfterSystemDrag):
              * page/mac/DragControllerMac.mm:
              (WebCore::DragController::cleanupAfterSystemDrag):
              * page/qt/DragControllerQt.cpp:
              (WebCore::DragController::cleanupAfterSystemDrag):
              * page/win/DragControllerWin.cpp:
              (WebCore::DragController::cleanupAfterSystemDrag):
              * page/wx/DragControllerWx.cpp:
            (WebCore::DragController::cleanupAfterSystemDrag):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@38805 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      89e50aab
  11. 19 Feb, 2007 1 commit
    • andersca's avatar
      Reviewed by Oliver. · f74b393e
      andersca authored
              Make DragController::maxDragImageSize a function to get rid of the global initializer.
              
              * page/DragController.cpp:
              (WebCore::DragController::doImageDrag):
              * page/DragController.h:
              * page/mac/DragControllerMac.mm:
              (WebCore::DragController::maxDragImageSize):
              * page/qt/DragControllerQt.cpp:
              (WebCore::DragController::maxDragImageSize):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@19713 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f74b393e
  12. 18 Feb, 2007 1 commit
    • oliver's avatar
      2007-02-18 Oliver Hunt <oliver@apple.com> · cd54bad1
      oliver authored
              Reviewed by Adam.
      WebCore:
              More drag and drop migration, now the entirety of the
              drag initiation logic has been rendered platform independent
              This has required a number of new interfaces, and a reasonable
              amount of logic migration.
      
              As a side effect, this patch also fixes rdar://problem/4945341
      
              There are some basic Qt stubs that should stop the build from failing,
              however the absence of ClipboardQt means any attempt to initiate a drag 
              may cause a crash.
      
              * WebCore.exp:
                 Exporting new symbols
      
              * WebCore.xcodeproj/project.pbxproj:
                 New files
      
              * dom/Clipboard.cpp:
              (WebCore::Clipboard::canSaveAsWebArchive):
                Migrated from WebKit
      
              * dom/Clipboard.h:
                Added more methods to allow Clipboard to be used as a 
                platform independent container for drag and drop
      
              * page/DragClient.h:
              (WebCore::DragClient::declareAndWriteDragImage):
                This is a mac only helper function, so i've made it have an empty implementation,
                that way we won't need a PLATFORM(MAC) block in SVGImageEmptyClients
      
              * page/DragController.cpp:
              (WebCore::DragController::dragExited):
              (WebCore::DragController::performDrag):
              (WebCore::DragController::tryDocumentDrag): 
              (WebCore::DragController::tryDHTMLDrag):
                Using RefPtrs now
              (WebCore::getCachedImage):
              (WebCore::getImage):
                Helper functions                   
              (WebCore::dragLocForDHTMLDrag):
              (WebCore::dragLocForSelectionDrag):
              (WebCore::DragController::startDrag):
              (WebCore::DragController::doImageDrag):
              (WebCore::DragController::doSystemDrag):
                Logic that generates drag images and clipboard content, and
                initiates the actual system drag operation
      
              * page/DragController.h:
                Method and variable declarations
      
              * page/EventHandler.cpp:
              (WebCore::EventHandler::handleDrag):
                handleDrag is now platform independent
              (WebCore::EventHandler::handleTextInputEvent):
                 formatting
      
              * page/EventHandler.h:
              (WebCore::EventHandler::eventLoopHandleMouseDragged):
                Forgot to define this stub function 
      
              * page/Frame.h:
                Declaring dragImageForSelection to provide drag image for selected content
      
              * page/mac/DragControllerMac.mm:
                Defining drag images control vars
      
              * page/mac/EventHandlerMac.mm:
              (WebCore::EventHandler::createDraggingClipboard):
                Migrated old clipboard creation to here
      
              * page/mac/FrameMac.mm:
              (WebCore::Frame::dragImageForSelection):
                Wrap FrameMac::selectionImage
      
              * page/qt/DragControllerQt.cpp:
                Defining drag images control vars
      
              * page/qt/EventHandlerQt.cpp:
              (WebCore::EventHandler::createDraggingClipboard):
                stub
      
              * page/qt/FrameQt.cpp:
              (WebCore::Frame::dragImageForSelection):
                stub
      
              * platform/DragImage.cpp: Added.
              (WebCore::fitDragImageToMaxSize):
              (WebCore::createDragImageForSelection):
                 Platform independent processing for drag images
      
              * platform/DragImage.h: Added.
                 Declaring typedefs and wrapper functions to abstract the handling
                 of drag images 
      
              * platform/Pasteboard.h:
                Declaring extracted writeURL and writeSelection methods
      
              * platform/graphics/svg/SVGImageEmptyClients.h:
              (WebCore::SVGEmptyDragClient::willPerformDragSourceAction):
              (WebCore::SVGEmptyDragClient::startDrag):
              (WebCore::SVGEmptyDragClient::createDragImageForLink):
                Stubs FTW!
      
              * platform/mac/ClipboardMac.h:
              (WebCore::ClipboardMac::pasteboard):
                Provide accessor for underlying NSPasteboard
      
              * platform/mac/ClipboardMac.mm:
              (WebCore::ClipboardMac::hasData):
              (WebCore::ClipboardMac::writeRange):
              (WebCore::ClipboardMac::writeURL):
              (WebCore::ClipboardMac::declareAndWriteDragImage):
              (WebCore::ClipboardMac::createDragImage):
                 Implemented new Clipboarid functionality.
              (WebCore::ClipboardMac::dragNSImage):
                 Made this a const method
      
              * platform/mac/DragImageMac.mm: Added.
              (WebCore::dragImageSize):
              (WebCore::deleteDragImage):
              (WebCore::scaleDragImage):
              (WebCore::dissolveDragImageToFraction):
              (WebCore::createDragImageFromImage):
              (WebCore::createDragImageIconForCachedImage):
                 Implemented platform specific DragImage functions
      
              * platform/mac/PasteboardMac.mm:
              (WebCore::writeSelection):
              (WebCore::Pasteboard::writeSelection):
              (WebCore::writeURL):
              (WebCore::Pasteboard::writeURL):
                 Extracted member implementations of these functions, so that
                 Clipboard could also make use of this functionality.
                 Pasteboard methods now call the new non-member implementations.
                 Also fixed implementations to respect the list of requested types.
      
              * platform/qt/DragImageQt.cpp: Added.
              (WebCore::dragImageSize):
              (WebCore::deleteDragImage):
              (WebCore::scaleDragImage):
              (WebCore::dissolveDragImageToFraction):
              (WebCore::createDragImageFromImage):
              (WebCore::createDragImageIconForCachedImage):  
                Stubs
      
      WebKit:
              Moving the drag initiation logic to WebCore.
              The redundant code in webkit will be moved out in a later patch.
      
              * WebCoreSupport/WebDragClient.h:
              * WebCoreSupport/WebDragClient.mm:
              (getTopHTMLView):
                Helper function
              (WebDragClient::willPerformDragSourceAction):
              (WebDragClient::startDrag):
              (WebDragClient::createDragImageForLink):
                Implemented new DragClient methods
              (WebDragClient::declareAndWriteDragImage):
                Helper function for the Mac to allow new drag and drop
                code to match behaviour
                
              * WebView/WebHTMLView.mm:
              (-[WebHTMLView _dragImageForURL:withLabel:]):
              (-[WebHTMLView _dragImageForLinkElement:]):
                Refactoring old _dragImageForLinkElement function so that 
                the link drag image can be created with just a URL and label, 
                rather than requiring the original element
              (-[WebHTMLView dragImage:at:offset:event:pasteboard:source:slideBack:]):
                Removed logic that is no longer necessary                 
              (-[WebHTMLView _mouseDownEvent]):
                The WebDragClient may need the original mouseDownEvent of a drag when initiating
                a drag
              * WebView/WebHTMLViewInternal.h:
                Declaring _mouseDownEvent
      
              * WebView/WebHTMLViewPrivate.h:
                Declaring _dragImageForURL
                                              
            
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@19689 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      cd54bad1
  13. 24 Jan, 2007 1 commit
    • oliver's avatar
      2007-01-24 Oliver Hunt <oliver@apple.com> · 83dc3539
      oliver authored
              Reviewed by Adele.
      
              Fixes DragController to allow a null target Document.
              This is encountered in new tabs/windows that have not
              loaded any page (including about:blank)
      
              * page/DragController.cpp:
              (WebCore::documentAtPoint):
              (WebCore::DragController::tryDocumentDrag):
              (WebCore::DragController::operationForLoad):
              (WebCore::DragController::concludeDrag):
              * page/mac/DragControllerMac.mm:
              (WebCore::DragController::dragOperation):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@19084 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      83dc3539
  14. 23 Jan, 2007 1 commit
    • oliver's avatar
      2007-01-23 Oliver Hunt <oliver@apple.com> · aeffa297
      oliver authored
              Reviewed by Adam.
      
              Added DragController to handled drag and drop state and control logic.
              Currently this only handles logic for Dragging and Dropping, and is 
              unable to initialise a drag itself.
      
              platform/DragData encapsulate the paltform Drag data (NSDraggingInfo on Mac, 
              QMimeType in Qt).  This provides methods to pull data out the drag data as a String, 
              a URL, a DocumentFragment (for rich content), or a Colour.
      
              * WebCore.exp:
              * WebCore.pro:
              * WebCore.xcodeproj/project.pbxproj:
              * dom/Clipboard.cpp: Added.
              (WebCore::Clipboard::setAccessPolicy):
              (WebCore::dragOpFromIEOp):
              (WebCore::IEOpFromDragOp):
              (WebCore::Clipboard::sourceOperation):
              (WebCore::Clipboard::destinationOperation):
              (WebCore::Clipboard::setSourceOperation):
              (WebCore::Clipboard::setDestinationOperation):
              (WebCore::Clipboard::setDropEffect):
              (WebCore::Clipboard::setEffectAllowed):
                move platform independent functions from ClipboardMac to Clipboard
      
              * dom/Clipboard.h:
              (WebCore::Clipboard::Clipboard):
              (WebCore::Clipboard::dropEffect):
              (WebCore::Clipboard::effectAllowed):
              (WebCore::Clipboard::policy):
                as above -- also removed virtual modifier from now 
                platform independent methods
      
              * editing/Editor.cpp:
              (WebCore::Editor::smartInsertDeleteEnabled): 
              (WebCore::Editor::shouldApplyStyle):
              * editing/Editor.h:
                adding calls through to EditorClient
               
              * page/DragActions.h: Added.
              (WebCore::):
                Replicates a number of NS* enums in the WebCore namespace
      
              * page/DragClient.h: Added.
              (WebCore::DragClient::~DragClient):
                Standard client interface for dragging UIDelegate
      
              * page/DragController.cpp: Added.
              (WebCore::createMouseEvent):
              (WebCore::DragController::DragController):
              (WebCore::DragController::~DragController):
              (WebCore::documentFragmentFromDragData):
              (WebCore::DragController::isMoveDrag):
              (WebCore::visiblePositionForPoint):
              (WebCore::DragController::cancelDrag):
              (WebCore::documentAtPoint):
              (WebCore::DragController::dragEntered):
              (WebCore::DragController::dragExited):
              (WebCore::DragController::dragUpdated):
              (WebCore::DragController::performDrag):
              (WebCore::DragController::dragEnteredOrUpdated):
              (WebCore::DragController::tryDocumentDrag):
              (WebCore::DragController::operationForLoad):
              (WebCore::DragController::concludeDrag):
              (WebCore::DragController::canProcessDrag):
              (WebCore::DragController::tryDHTMLDrag):
                Class to handle state and logic for dragging and dropping
      
              * page/DragController.h: Added.
              (WebCore::DragController::client):
              (WebCore::DragController::didInitiateDrag):
              (WebCore::DragController::isHandlingDrag):
              (WebCore::DragController::dragOperation):
              (WebCore::DragController::document):
              (WebCore::DragController::dragInitiator):
              (WebCore::DragController::dragDestinationAction):
              (WebCore::DragController::dragSourceAction):
              (WebCore::DragController::dragEnded):
              (WebCore::DragController::setIsHandlingDrag):
              (WebCore::DragController::setDidInitiateDrag):
              (WebCore::DragController::setDragOperation):
              (WebCore::DragController::setDragSourceAction):
              (WebCore::DragController::setDragInitiator):
                See above
      
              * page/Page.cpp:
              (WebCore::Page::Page):
                Update Page to have DragController
      
              * page/Page.h:
              (WebCore::Page::dragController):
                ditto
      
              * page/mac/DragControllerMac.mm: Added.
              (WebCore::DragController::isCopyKeyDown):
              (WebCore::DragController::dragOperation):
                Platform specific portions of the DragController
      
              * page/mac/EventHandlerMac.mm:
              (WebCore::EventHandler::handleDrag):
              (WebCore::EventHandler::dragSourceEndedAt):
                Convert from NSDragOperation to WebCore::DragOperation
      
              * page/mac/WebCoreFrameBridge.h:
              * page/mac/WebCoreFrameBridge.mm:
                Remove obsolete Drag functions
      
              * page/qt/DragControllerQt.cpp: Added.
              (WebCore::DragController::isCopyKeyDown):
              (WebCore::DragController::dragOperation):
                Basic stubs to maintain Qt  build
      
              * platform/DragData.cpp: Added.
              (WebCore::DragData::DragData):
              * platform/DragData.h: Added.
              (WebCore::DragData::clientPosition):
              (WebCore::DragData::globalPosition):
              (WebCore::DragData::platformData):
              (WebCore::DragData::draggingSourceOperationMask):
                DragData class to encapsulate platform drag data/event
      
              * platform/graphics/svg/SVGImage.cpp:
              (WebCore::SVGImage::setData):
                Addition of dummy DragClient
      
              * platform/graphics/svg/SVGImageEmptyClients.h:
              (WebCore::SVGEmptyDragClient::~SVGEmptyDragClient):
              (WebCore::SVGEmptyDragClient::willPerformDragDestinationAction):
              (WebCore::SVGEmptyDragClient::actionMaskForDrag):
              (WebCore::SVGEmptyDragClient::dragControllerDestroyed):
                ditto
      
              * platform/mac/ClipboardMac.h:
              * platform/mac/ClipboardMac.mm:
              (WebCore::ClipboardMac::ClipboardMac):
              (WebCore::ClipboardMac::clearData):
              (WebCore::ClipboardMac::clearAllData):
              (WebCore::ClipboardMac::getData):
              (WebCore::ClipboardMac::setData):
              (WebCore::ClipboardMac::types):
              (WebCore::ClipboardMac::setDragImage):
               Moving platform independent logic to Clipboard, and updating
               platform specific methods to use appropriate accessors rather than 
               directly manipulating data they no longer own
      
              * platform/mac/DragDataMac.mm: Added.
              (WebCore::DragData::DragData):
              (WebCore::DragData::canSmartReplace):
              (WebCore::DragData::containsColor):
              (WebCore::DragData::containsPlainText):
              (WebCore::DragData::asPlainText):
              (WebCore::DragData::asColor):
              (WebCore::DragData::createClipboard):
              (WebCore::imageExistsAtPaths):
              (WebCore::DragData::containsCompatibleContent):
              (WebCore::DragData::containsURL):
              (WebCore::DragData::asURL):
              (WebCore::DragData::asFragment):
                Mac implementations of DragData methods.  A number of these use
                a Helper class that accesses WebKit functionality.  That functionality 
                should be migrated to WebCore in the future.
      
              * platform/mac/PasteboardHelper.h: Added.
              (WebCore::PasteboardHelper::~PasteboardHelper):
                Temporary, and Mac only, helper class to access WebKit functionality 
                from WebCore
      
              * platform/qt/DragDataQt.cpp: Added.
              (WebCore::DragData::canSmartReplace):
              (WebCore::DragData::containsColor):
              (WebCore::DragData::containsPlainText):
              (WebCore::DragData::asPlainText):
              (WebCore::DragData::asColor):
              (WebCore::DragData::createClipboard):
              (WebCore::DragData::containsCompatibleContent):
              (WebCore::DragData::containsURL):
              (WebCore::DragData::asURL):
              (WebCore::DragData::asFragment):
               Basic stubs to maintain Qt build
      
              * rendering/HitTestResult.cpp:
              (WebCore::HitTestResult::HitTestResult):
               Correct HitTestResult copy contructor to copy localPoint
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@19039 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      aeffa297
  15. 15 Jan, 2007 1 commit
    • eseidel's avatar
      2007-01-15 Eric Seidel <eric@webkit.org> · 8eddecf9
      eseidel authored
              Reviewed by bdash.
      
              Update header guards to follow new style guidelines using new clean-header-guards script.
      
              * bindings/js/JSHTMLElementWrapperFactory.h:
              * bindings/js/JSHTMLInputElementBase.h:
              * bindings/js/JSHTMLOptionElementConstructor.h:
              * bindings/js/JSSVGElementWrapperFactory.h:
              * bindings/js/JSSVGPODTypeWrapper.h:
              * bindings/js/JSXMLHttpRequest.h:
              * bindings/js/JSXSLTProcessor.h:
              * bindings/js/kjs_binding.h:
              * bindings/js/kjs_css.h:
              * bindings/js/kjs_dom.h:
              * bindings/js/kjs_domnode.h:
              * bindings/js/kjs_events.h:
              * bindings/js/kjs_html.h:
              * bindings/js/kjs_navigator.h:
              * bindings/js/kjs_proxy.h:
              * bindings/js/kjs_traversal.h:
              * bindings/js/kjs_window.h:
              * bridge/EditorClient.h:
              * bridge/History.h:
              * css/CSSStyleSheet.h:
              * css/CSSValue.h:
              * css/CSSValueList.h:
              * css/DashboardRegion.h:
              * css/FontFamilyValue.h:
              * css/FontValue.h:
              * css/MediaFeatureNames.h:
              * css/MediaList.h:
              * css/Pair.h:
              * css/RectImpl.h:
              * css/ShadowValue.h:
              * css/StyleBase.h:
              * css/StyleList.h:
              * css/StyleSheet.h:
              * css/StyleSheetList.h:
              * css/cssstyleselector.h:
              * dom/BeforeTextInsertedEvent.h:
              * dom/CDATASection.h:
              * dom/CharacterData.h:
              * dom/ChildNodeList.h:
              * dom/Comment.h:
              * dom/DOMImplementation.h:
              * dom/DocPtr.h:
              * dom/Document.h:
              * dom/DocumentFragment.h:
              * dom/DocumentMarker.h:
              * dom/DocumentType.h:
              * dom/EditingText.h:
              * dom/Entity.h:
              * dom/EntityReference.h:
              * dom/EventNames.h:
              * dom/EventTargetNode.h:
              * dom/NameNodeList.h:
              * dom/NamedNodeMap.h:
              * dom/Node.h:
              * dom/NodeList.h:
              * dom/Notation.h:
              * dom/Position.h:
              * dom/ProcessingInstruction.h:
              * dom/Range.h:
              * dom/StyleElement.h:
              * dom/Text.h:
              * editing/AppendNodeCommand.h:
              * editing/ApplyStyleCommand.h:
              * editing/BreakBlockquoteCommand.h:
              * editing/CommandByName.h:
              * editing/CompositeEditCommand.h:
              * editing/DeleteButton.h:
              * editing/DeleteButtonController.h:
              * editing/DeleteFromTextNodeCommand.h:
              * editing/DeleteSelectionCommand.h:
              * editing/InsertIntoTextNodeCommand.h:
              * editing/InsertLineBreakCommand.h:
              * editing/InsertNodeBeforeCommand.h:
              * editing/InsertParagraphSeparatorCommand.h:
              * editing/InsertTextCommand.h:
              * editing/JoinTextNodesCommand.h:
              * editing/MergeIdenticalElementsCommand.h:
              * editing/ModifySelectionListLevel.h:
              * editing/MoveSelectionCommand.h:
              * editing/RemoveCSSPropertyCommand.h:
              * editing/RemoveNodeAttributeCommand.h:
              * editing/RemoveNodeCommand.h:
              * editing/RemoveNodePreservingChildrenCommand.h:
              * editing/ReplaceSelectionCommand.h:
              * editing/SetNodeAttributeCommand.h:
              * editing/SplitElementCommand.h:
              * editing/SplitTextNodeCommand.h:
              * editing/SplitTextNodeContainingElementCommand.h:
              * editing/TextGranularity.h:
              * editing/TypingCommand.h:
              * editing/WrapContentsInDummySpanCommand.h:
              * history/BackForwardList.h:
              * history/HistoryItem.h:
              * history/HistoryItemTimer.h:
              * history/PageCache.h:
              * html/CanvasGradient.h:
              * html/CanvasPattern.h:
              * html/CanvasRenderingContext2D.h:
              * html/CanvasStyle.h:
              * html/FormDataList.h:
              * html/HTMLAnchorElement.h:
              * html/HTMLAppletElement.h:
              * html/HTMLAreaElement.h:
              * html/HTMLBRElement.h:
              * html/HTMLBaseElement.h:
              * html/HTMLBaseFontElement.h:
              * html/HTMLBlockquoteElement.h:
              * html/HTMLBodyElement.h:
              * html/HTMLButtonElement.h:
              * html/HTMLCanvasElement.h:
              * html/HTMLCollection.h:
              * html/HTMLDListElement.h:
              * html/HTMLDirectoryElement.h:
              * html/HTMLDivElement.h:
              * html/HTMLElement.h:
              * html/HTMLElementFactory.h:
              * html/HTMLEmbedElement.h:
              * html/HTMLFieldSetElement.h:
              * html/HTMLFontElement.h:
              * html/HTMLFormCollection.h:
              * html/HTMLFormElement.h:
              * html/HTMLFrameSetElement.h:
              * html/HTMLGenericFormElement.h:
              * html/HTMLHRElement.h:
              * html/HTMLHeadElement.h:
              * html/HTMLHeadingElement.h:
              * html/HTMLHtmlElement.h:
              * html/HTMLImageElement.h:
              * html/HTMLImageLoader.h:
              * html/HTMLInputElement.h:
              * html/HTMLIsIndexElement.h:
              * html/HTMLKeygenElement.h:
              * html/HTMLLIElement.h:
              * html/HTMLLabelElement.h:
              * html/HTMLLegendElement.h:
              * html/HTMLLinkElement.h:
              * html/HTMLMapElement.h:
              * html/HTMLMarqueeElement.h:
              * html/HTMLMenuElement.h:
              * html/HTMLMetaElement.h:
              * html/HTMLModElement.h:
              * html/HTMLNameCollection.h:
              * html/HTMLOListElement.h:
              * html/HTMLObjectElement.h:
              * html/HTMLOptGroupElement.h:
              * html/HTMLOptionElement.h:
              * html/HTMLOptionsCollection.h:
              * html/HTMLParagraphElement.h:
              * html/HTMLParamElement.h:
              * html/HTMLParser.h:
              * html/HTMLPlugInElement.h:
              * html/HTMLPreElement.h:
              * html/HTMLQuoteElement.h:
              * html/HTMLScriptElement.h:
              * html/HTMLSelectElement.h:
              * html/HTMLStyleElement.h:
              * html/HTMLTableCaptionElement.h:
              * html/HTMLTableCellElement.h:
              * html/HTMLTableColElement.h:
              * html/HTMLTableElement.h:
              * html/HTMLTablePartElement.h:
              * html/HTMLTableRowElement.h:
              * html/HTMLTableSectionElement.h:
              * html/HTMLTextAreaElement.h:
              * html/HTMLTextFieldInnerElement.h:
              * html/HTMLTitleElement.h:
              * html/HTMLUListElement.h:
              * ksvg2/css/SVGRenderStyle.h:
              * ksvg2/css/SVGRenderStyleDefs.h:
              * ksvg2/events/JSSVGLazyEventListener.h:
              * ksvg2/events/SVGZoomEvent.h:
              * ksvg2/misc/KCanvasRenderingStyle.h:
              * ksvg2/misc/PointerEventsHitRules.h:
              * ksvg2/misc/SVGDocumentExtensions.h:
              * ksvg2/misc/SVGImageLoader.h:
              * ksvg2/misc/TimeScheduler.h:
              * ksvg2/svg/GradientAttributes.h:
              * ksvg2/svg/LinearGradientAttributes.h:
              * ksvg2/svg/PatternAttributes.h:
              * ksvg2/svg/RadialGradientAttributes.h:
              * ksvg2/svg/SVGAElement.h:
              * ksvg2/svg/SVGAngle.h:
              * ksvg2/svg/SVGAnimateColorElement.h:
              * ksvg2/svg/SVGAnimateElement.h:
              * ksvg2/svg/SVGAnimateMotionElement.h:
              * ksvg2/svg/SVGAnimateTransformElement.h:
              * ksvg2/svg/SVGAnimatedPathData.h:
              * ksvg2/svg/SVGAnimatedPoints.h:
              * ksvg2/svg/SVGAnimatedTemplate.h:
              * ksvg2/svg/SVGAnimationElement.h:
              * ksvg2/svg/SVGCircleElement.h:
              * ksvg2/svg/SVGClipPathElement.h:
              * ksvg2/svg/SVGColor.h:
              * ksvg2/svg/SVGComponentTransferFunctionElement.h:
              * ksvg2/svg/SVGCursorElement.h:
              * ksvg2/svg/SVGDOMImplementation.h:
              * ksvg2/svg/SVGDefsElement.h:
              * ksvg2/svg/SVGDescElement.h:
              * ksvg2/svg/SVGDocument.h:
              * ksvg2/svg/SVGElement.h:
              * ksvg2/svg/SVGElementInstance.h:
              * ksvg2/svg/SVGElementInstanceList.h:
              * ksvg2/svg/SVGEllipseElement.h:
              * ksvg2/svg/SVGExternalResourcesRequired.h:
              * ksvg2/svg/SVGFEBlendElement.h:
              * ksvg2/svg/SVGFEColorMatrixElement.h:
              * ksvg2/svg/SVGFEComponentTransferElement.h:
              * ksvg2/svg/SVGFECompositeElement.h:
              * ksvg2/svg/SVGFEDiffuseLightingElement.h:
              * ksvg2/svg/SVGFEDisplacementMapElement.h:
              * ksvg2/svg/SVGFEDistantLightElement.h:
              * ksvg2/svg/SVGFEFloodElement.h:
              * ksvg2/svg/SVGFEFuncAElement.h:
              * ksvg2/svg/SVGFEFuncBElement.h:
              * ksvg2/svg/SVGFEFuncGElement.h:
              * ksvg2/svg/SVGFEFuncRElement.h:
              * ksvg2/svg/SVGFEGaussianBlurElement.h:
              * ksvg2/svg/SVGFEImageElement.h:
              * ksvg2/svg/SVGFELightElement.h:
              * ksvg2/svg/SVGFEMergeElement.h:
              * ksvg2/svg/SVGFEMergeNodeElement.h:
              * ksvg2/svg/SVGFEOffsetElement.h:
              * ksvg2/svg/SVGFEPointLightElement.h:
              * ksvg2/svg/SVGFESpecularLightingElement.h:
              * ksvg2/svg/SVGFESpotLightElement.h:
              * ksvg2/svg/SVGFETileElement.h:
              * ksvg2/svg/SVGFETurbulenceElement.h:
              * ksvg2/svg/SVGFilterElement.h:
              * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.h:
              * ksvg2/svg/SVGFitToViewBox.h:
              * ksvg2/svg/SVGForeignObjectElement.h:
              * ksvg2/svg/SVGGElement.h:
              * ksvg2/svg/SVGGradientElement.h:
              * ksvg2/svg/SVGImageElement.h:
              * ksvg2/svg/SVGLangSpace.h:
              * ksvg2/svg/SVGLength.h:
              * ksvg2/svg/SVGLengthList.h:
              * ksvg2/svg/SVGLineElement.h:
              * ksvg2/svg/SVGLinearGradientElement.h:
              * ksvg2/svg/SVGList.h:
              * ksvg2/svg/SVGListTraits.h:
              * ksvg2/svg/SVGLocatable.h:
              * ksvg2/svg/SVGMarkerElement.h:
              * ksvg2/svg/SVGMaskElement.h:
              * ksvg2/svg/SVGMetadataElement.h:
              * ksvg2/svg/SVGNumberList.h:
              * ksvg2/svg/SVGPaint.h:
              * ksvg2/svg/SVGParserUtilities.h:
              * ksvg2/svg/SVGPathElement.h:
              * ksvg2/svg/SVGPathSeg.h:
              * ksvg2/svg/SVGPathSegArc.h:
              * ksvg2/svg/SVGPathSegClosePath.h:
              * ksvg2/svg/SVGPathSegCurvetoCubic.h:
              * ksvg2/svg/SVGPathSegCurvetoCubicSmooth.h:
              * ksvg2/svg/SVGPathSegCurvetoQuadratic.h:
              * ksvg2/svg/SVGPathSegCurvetoQuadraticSmooth.h:
              * ksvg2/svg/SVGPathSegLineto.h:
              * ksvg2/svg/SVGPathSegLinetoHorizontal.h:
              * ksvg2/svg/SVGPathSegLinetoVertical.h:
              * ksvg2/svg/SVGPathSegList.h:
              * ksvg2/svg/SVGPathSegMoveto.h:
              * ksvg2/svg/SVGPatternElement.h:
              * ksvg2/svg/SVGPointList.h:
              * ksvg2/svg/SVGPolyElement.h:
              * ksvg2/svg/SVGPolygonElement.h:
              * ksvg2/svg/SVGPolylineElement.h:
              * ksvg2/svg/SVGPreserveAspectRatio.h:
              * ksvg2/svg/SVGRadialGradientElement.h:
              * ksvg2/svg/SVGRectElement.h:
              * ksvg2/svg/SVGRenderingIntent.h:
              * ksvg2/svg/SVGSVGElement.h:
              * ksvg2/svg/SVGScriptElement.h:
              * ksvg2/svg/SVGSetElement.h:
              * ksvg2/svg/SVGStopElement.h:
              * ksvg2/svg/SVGStringList.h:
              * ksvg2/svg/SVGStylable.h:
              * ksvg2/svg/SVGStyleElement.h:
              * ksvg2/svg/SVGStyledElement.h:
              * ksvg2/svg/SVGStyledLocatableElement.h:
              * ksvg2/svg/SVGStyledTransformableElement.h:
              * ksvg2/svg/SVGSwitchElement.h:
              * ksvg2/svg/SVGSymbolElement.h:
              * ksvg2/svg/SVGTRefElement.h:
              * ksvg2/svg/SVGTSpanElement.h:
              * ksvg2/svg/SVGTests.h:
              * ksvg2/svg/SVGTextContentElement.h:
              * ksvg2/svg/SVGTextElement.h:
              * ksvg2/svg/SVGTextPositioningElement.h:
              * ksvg2/svg/SVGTitleElement.h:
              * ksvg2/svg/SVGTransform.h:
              * ksvg2/svg/SVGTransformList.h:
              * ksvg2/svg/SVGTransformable.h:
              * ksvg2/svg/SVGURIReference.h:
              * ksvg2/svg/SVGUnitTypes.h:
              * ksvg2/svg/SVGUseElement.h:
              * ksvg2/svg/SVGViewElement.h:
              * ksvg2/svg/SVGZoomAndPan.h:
              * loader/CachedCSSStyleSheet.h:
              * loader/CachedImage.h:
              * loader/CachedXSLStyleSheet.h:
              * loader/DocumentLoader.h:
              * loader/Request.h:
              * loader/SubresourceLoader.h:
              * loader/icon/IconDataCache.h:
              * loader/icon/IconDatabase.h:
              * loader/icon/IconLoader.h:
              * loader/icon/SQLDatabase.h:
              * loader/icon/SQLStatement.h:
              * loader/icon/SQLTransaction.h:
              * page/Frame.h:
              * page/FrameLoadRequest.h:
              * page/FrameTree.h:
              * page/FrameView.h:
              * page/PageState.h:
              * page/Plugin.h:
              * page/qt/FrameQt.h:
              * page/qt/FrameQtClient.h:
              * platform/Arena.h:
              * platform/ArrayImpl.h:
              * platform/Cursor.h:
              * platform/DeprecatedArray.h:
              * platform/DeprecatedCString.h:
              * platform/FileChooser.h:
              * platform/Font.h:
              * platform/FontCache.h:
              * platform/FontData.h:
              * platform/FontDescription.h:
              * platform/FontFamily.h:
              * platform/GlyphBuffer.h:
              * platform/GlyphMap.h:
              * platform/GlyphWidthMap.h:
              * platform/Logging.h:
              * platform/Pasteboard.h:
              * platform/PlatformString.h:
              * platform/PlugInInfoStore.h:
              * platform/PopupMenu.h:
              * platform/PopupMenuClient.h:
              * platform/ScrollBar.h:
              * platform/ScrollView.h:
              * platform/SearchPopupMenu.h:
              * platform/Shared.h:
              * platform/Sound.h:
              * platform/SystemTime.h:
              * platform/Timer.h:
              * platform/Widget.h:
              * platform/cf/RetainPtr.h:
              * platform/gdk/ChromeClientGdk.h:
              * platform/gdk/FontPlatformData.h:
              * platform/gdk/FrameGdk.h:
              * platform/gdk/KeyboardCodes.h:
              * platform/gdk/RenderPopupMenuGdk.h:
              * platform/gdk/RenderThemeGdk.h:
              * platform/graphics/BitmapImage.h:
              * platform/graphics/Color.h:
              * platform/graphics/FloatPoint.h:
              * platform/graphics/FloatPoint3D.h:
              * platform/graphics/FloatRect.h:
              * platform/graphics/Icon.h:
              * platform/graphics/Image.h:
              * platform/graphics/ImageAnimationObserver.h:
              * platform/graphics/ImageBuffer.h:
              * platform/graphics/ImageSource.h:
              * platform/graphics/IntPoint.h:
              * platform/graphics/IntRect.h:
              * platform/graphics/IntSize.h:
              * platform/graphics/IntSizeHash.h:
              * platform/graphics/PathTraversalState.h:
              * platform/graphics/Pen.h:
              * platform/graphics/qt/ImageDecoderQt.h:
              * platform/graphics/svg/SVGImage.h:
              * platform/graphics/svg/SVGImageEmptyClients.h:
              * platform/graphics/svg/SVGPaintServer.h:
              * platform/graphics/svg/SVGPaintServerGradient.h:
              * platform/graphics/svg/SVGPaintServerLinearGradient.h:
              * platform/graphics/svg/SVGPaintServerPattern.h:
              * platform/graphics/svg/SVGPaintServerRadialGradient.h:
              * platform/graphics/svg/SVGPaintServerSolid.h:
              * platform/graphics/svg/SVGResource.h:
              * platform/graphics/svg/SVGResourceClipper.h:
              * platform/graphics/svg/SVGResourceFilter.h:
              * platform/graphics/svg/SVGResourceMarker.h:
              * platform/graphics/svg/SVGResourceMasker.h:
              * platform/graphics/svg/cg/CgSupport.h:
              * platform/graphics/svg/filters/SVGDistantLightSource.h:
              * platform/graphics/svg/filters/SVGFEBlend.h:
              * platform/graphics/svg/filters/SVGFEColorMatrix.h:
              * platform/graphics/svg/filters/SVGFEComponentTransfer.h:
              * platform/graphics/svg/filters/SVGFEComposite.h:
              * platform/graphics/svg/filters/SVGFEConvolveMatrix.h:
              * platform/graphics/svg/filters/SVGFEDiffuseLighting.h:
              * platform/graphics/svg/filters/SVGFEDisplacementMap.h:
              * platform/graphics/svg/filters/SVGFEFlood.h:
              * platform/graphics/svg/filters/SVGFEGaussianBlur.h:
              * platform/graphics/svg/filters/SVGFEImage.h:
              * platform/graphics/svg/filters/SVGFEMerge.h:
              * platform/graphics/svg/filters/SVGFEMorphology.h:
              * platform/graphics/svg/filters/SVGFEOffset.h:
              * platform/graphics/svg/filters/SVGFESpecularLighting.h:
              * platform/graphics/svg/filters/SVGFETile.h:
              * platform/graphics/svg/filters/SVGFETurbulence.h:
              * platform/graphics/svg/filters/SVGFilterEffect.h:
              * platform/graphics/svg/filters/SVGLightSource.h:
              * platform/graphics/svg/filters/SVGPointLightSource.h:
              * platform/graphics/svg/filters/SVGSpotLightSource.h:
              * platform/mac/FontPlatformData.h:
              * platform/mac/PlatformScrollBar.h:
              * platform/network/AuthenticationChallenge.h:
              * platform/network/Credential.h:
              * platform/network/HTTPHeaderMap.h:
              * platform/network/ProtectionSpace.h:
              * platform/network/ResourceError.h:
              * platform/network/ResourceRequest.h:
              * platform/network/ResourceResponse.h:
              * platform/network/cf/FormDataStreamCFNet.h:
              * platform/network/cf/ResourceRequestCFNet.h:
              * platform/network/cf/ResourceResponseCFNet.h:
              * platform/network/gdk/ResourceHandleManager.h:
              * platform/network/mac/AuthenticationMac.h:
              * platform/network/mac/FormDataStreamMac.h:
              * platform/network/qt/ResourceHandleManagerKDE.h:
              * platform/network/qt/ResourceHandleManagerQt.h:
              * platform/network/win/ResourceHandleWin.h:
              * platform/qt/FontPlatformData.h:
              * platform/qt/KeyboardCodes.h:
              * platform/qt/PlatformScrollBar.h:
              * platform/qt/ScrollViewCanvasQt.h:
              * platform/qt/SharedTimerQt.h:
              * platform/win/FontPlatformData.h:
              * platform/win/PlatformScrollBar.h:
              * rendering/AutoTableLayout.h:
              * rendering/HitTestRequest.h:
              * rendering/HitTestResult.h:
              * rendering/InlineBox.h:
              * rendering/InlineFlowBox.h:
              * rendering/Length.h:
              * rendering/ListMarkerBox.h:
              * rendering/RenderBox.h:
              * rendering/RenderMenuList.h:
              * rendering/RenderPart.h:
              * rendering/RenderPartObject.h:
              * rendering/RenderPath.h:
              * rendering/RenderReplaced.h:
              * rendering/RenderSVGContainer.h:
              * rendering/RenderSVGImage.h:
              * rendering/RenderSVGInline.h:
              * rendering/RenderSVGInlineText.h:
              * rendering/RenderSVGTSpan.h:
              * rendering/RenderSVGText.h:
              * rendering/RenderStyle.h:
              * rendering/RenderTableCol.h:
              * rendering/RenderThemeWin.h:
              * rendering/bidi.h:
              * xml/DOMParser.h:
              * xml/XPathEvaluator.h:
              * xml/XPathExpression.h:
              * xml/XPathExpressionNode.h:
              * xml/XPathFunctions.h:
              * xml/XPathNSResolver.h:
              * xml/XPathNamespace.h:
              * xml/XPathParser.h:
              * xml/XPathPath.h:
              * xml/XPathPredicate.h:
              * xml/XPathResult.h:
              * xml/XPathStep.h:
              * xml/XPathUtil.h:
              * xml/XPathValue.h:
              * xml/XPathVariableReference.h:
              * xml/XSLImportRule.h:
              * xml/XSLStyleSheet.h:
              * xml/XSLTProcessor.h:
              * xml/xmlhttprequest.h:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@18874 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8eddecf9
  16. 11 Jan, 2007 1 commit
    • beidson's avatar
      WebCore: · d0d91260
      beidson authored
              Reviewed by Anders
      
              Rewrites HTTP Authentication setting up a more platform-independent structure
      
              * WebCore.exp:
              * WebCore.xcodeproj/project.pbxproj:
              * loader/FrameLoader.cpp:
              (WebCore::FrameLoader::didReceiveAuthenticationChallenge):
              (WebCore::FrameLoader::didCancelAuthenticationChallenge):
              * loader/FrameLoader.h:
              * loader/FrameLoaderClient.h:
              * loader/ResourceLoader.cpp:
              (WebCore::ResourceLoader::ResourceLoader):
              (WebCore::ResourceLoader::didCancel):
              * loader/ResourceLoader.h:
              (WebCore::ResourceLoader::didReceiveAuthenticationChallenge):
              (WebCore::ResourceLoader::didCancelAuthenticationChallenge):
              (WebCore::ResourceLoader::receivedCredential):
              (WebCore::ResourceLoader::receivedRequestToContinueWithoutCredential):
              (WebCore::ResourceLoader::receivedCancellation):
              * loader/mac/FrameLoaderMac.mm:
              * loader/mac/ResourceLoaderMac.mm:
              (WebCore::ResourceLoader::didReceiveAuthenticationChallenge):
              (WebCore::ResourceLoader::didCancelAuthenticationChallenge):
              (WebCore::ResourceLoader::receivedCredential):
              (WebCore::ResourceLoader::receivedRequestToContinueWithoutCredential):
              (WebCore::ResourceLoader::receivedCancellation):
              * platform/graphics/svg/SVGImageEmptyClients.h:
              (WebCore::SVGEmptyFrameLoaderClient::dispatchDidReceiveAuthenticationChallenge):
              (WebCore::SVGEmptyFrameLoaderClient::dispatchDidCancelAuthenticationChallenge):
              * platform/network/ResourceHandleClient.h:
              (WebCore::ResourceHandleClient::willSendRequest):
              (WebCore::ResourceHandleClient::didReceiveAuthenticationChallenge):
              (WebCore::ResourceHandleClient::didCancelAuthenticationChallenge):
              (WebCore::ResourceHandleClient::receivedCredential):
              (WebCore::ResourceHandleClient::receivedRequestToContinueWithoutCredential):
              (WebCore::ResourceHandleClient::receivedCancellation):
              (WebCore::ResourceHandleClient::willCacheResponse):
              * platform/network/ResourceResponse.h:
              (WebCore::operator!=):
              * platform/network/URLAuthenticationChallenge.cpp: Added.
              (WebCore::URLAuthenticationChallenge::URLAuthenticationChallenge):
              (WebCore::URLAuthenticationChallenge::previousFailureCount):
              (WebCore::URLAuthenticationChallenge::proposedCredential):
              (WebCore::URLAuthenticationChallenge::protectionSpace):
              (WebCore::URLAuthenticationChallenge::failureResponse):
              (WebCore::URLAuthenticationChallenge::error):
              (WebCore::URLAuthenticationChallenge::isNull):
              (WebCore::URLAuthenticationChallenge::nullify):
              (WebCore::operator==):
              (WebCore::operator!=):
              * platform/network/URLAuthenticationChallenge.h: Added.
              (WebCore::URLAuthenticationChallenge::sender):
              (WebCore::URLAuthenticationChallenge::nsURLAuthenticationChallenge):
              * platform/network/URLCredential.cpp: Added.
              (WebCore::URLCredential::URLCredential):
              (WebCore::URLCredential::user):
              (WebCore::URLCredential::password):
              (WebCore::URLCredential::hasPassword):
              (WebCore::URLCredential::persistence):
              (WebCore::operator==):
              * platform/network/URLCredential.h: Added.
              (WebCore::):
              (WebCore::operator!=):
              * platform/network/URLProtectionSpace.cpp: Added.
              (WebCore::URLProtectionSpace::URLProtectionSpace):
              (WebCore::URLProtectionSpace::host):
              (WebCore::URLProtectionSpace::port):
              (WebCore::URLProtectionSpace::serverType):
              (WebCore::URLProtectionSpace::realm):
              (WebCore::URLProtectionSpace::authenticationScheme):
              (WebCore::operator==):
              * platform/network/URLProtectionSpace.h: Added.
              (WebCore::):
              (WebCore::operator!=):
              * platform/network/mac/AuthenticationMac.h: Added.
              * platform/network/mac/AuthenticationMac.mm: Added.
              (WebCore::URLAuthenticationChallenge::URLAuthenticationChallenge):
              (WebCore::mac):
              (WebCore::core):
              * platform/network/mac/ResourceHandleMac.mm:
              (-[WebCoreResourceHandleAsDelegate connection:didReceiveAuthenticationChallenge:]):
              (-[WebCoreResourceHandleAsDelegate connection:didCancelAuthenticationChallenge:]):
              (-[WebCoreResourceHandleAsDelegate useCredential:forAuthenticationChallenge:]):
              (-[WebCoreResourceHandleAsDelegate continueWithoutCredentialForAuthenticationChallenge:]):
              (-[WebCoreResourceHandleAsDelegate cancelAuthenticationChallenge:]):
              * platform/network/mac/ResourceResponseMac.mm:
              (WebCore::operator==):
      
      WebKit:
      
              Reviewed by Anders
      
              Rewrites HTTP Authentication setting up a more platform-independent structure
      
              * WebCoreSupport/WebFrameLoaderClient.h:
              * WebCoreSupport/WebFrameLoaderClient.mm:
              (WebFrameLoaderClient::dispatchDidReceiveAuthenticationChallenge):
              (WebFrameLoaderClient::dispatchDidCancelAuthenticationChallenge):
              * WebKit.xcodeproj/project.pbxproj:
      
      WebKitQt:
      
              Keep the fancy new FrameLoaderClientQt building with a small api change in WebCore
              Yay for the loader on QT!
      
              * WebCoreSupport/FrameLoaderClientQt.cpp:
              (WebCore::FrameLoaderClientQt::dispatchDidReceiveAuthenticationChallenge):
              (WebCore::FrameLoaderClientQt::dispatchDidCancelAuthenticationChallenge):
              * WebCoreSupport/FrameLoaderClientQt.h:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@18783 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d0d91260
  17. 01 Dec, 2006 1 commit
    • bdakin's avatar
      WebCore: · a047fd3a
      bdakin authored
              Reviewed by Adam.
      
              Support for sub-menus in WebCore context menus. This also re-
              architects the ContextMenuItem class so that it is more like
              ContextMenu in that the class is now really just a wrapper for the
              platformDescription
      
              * WebCore.exp:
              * WebCore.xcodeproj/project.pbxproj:
              * page/ContextMenuController.cpp:
              (WebCore::ContextMenuController::contextMenuItemSelected): Add
              place-holders for new tags for the sub-menu items. I will flesh
              these out in a separate check-in.
              * platform/ContextMenu.cpp:
              (WebCore::createFontSubMenu):
              (WebCore::createSpellingAndGrammarSubMenu):
              (WebCore::createSpellingSubMenu):
              (WebCore::createSpeechSubMenu):
              (WebCore::createWritingDirectionSubMenu):
              (WebCore::ContextMenu::populate): Call the above functions to add
              the appropriate sub-menus to editing context menus.
              * platform/ContextMenu.h:
              * platform/ContextMenuItem.h:
              (WebCore::): New tags in the ContextMenuAction enumeration.
              (WebCore::ContextMenuItem::parentMenu):
              (WebCore::ContextMenuItem::setType):
              * platform/PlatformMenuDescription.h: Added. This defines
              PlatformMenuDesciption. It needs to be its own header because we
             have to include it from ContextMenu.h and ContextMenuItem.h
              * platform/mac/ContextMenuItemMac.mm: Lots of adjustments here to
              make this class basically just be a wrapper for NSMenuItem.
              (WebCore::ContextMenuItem::ContextMenuItem):
              (WebCore::ContextMenuItem::~ContextMenuItem):
              (WebCore::ContextMenuItem::platformDescription):
              (WebCore::ContextMenuItem::action):
              (WebCore::ContextMenuItem::title):
              (WebCore::ContextMenuItem::platformSubMenu):
              (WebCore::ContextMenuItem::setAction):
              (WebCore::ContextMenuItem::setTitle):
              (WebCore::ContextMenuItem::setSubMenu):
              * platform/mac/ContextMenuMac.mm:
              (WebCore::ContextMenu::ContextMenu):
              (WebCore::getNSMenuItem): Now we only have to get the
              platformDescription of the ContextMenuItem and then set its target
              and action.
              (WebCore::ContextMenu::itemCount):
      
      WebKit:
              Reviewed by Adam.
      
              Changes to support sub-menus in WebCore ContextMenus.
      
              * WebCoreSupport/WebContextMenuClient.mm:
              (WebContextMenuClient::contextMenuItemSelected): 
              ContextMenuItem::menu() is now called parentMenu()
              * WebView/WebUIDelegatePrivate.h: New not-yet-API tags.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@17984 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a047fd3a
  18. 21 Oct, 2006 1 commit
    • thatcher's avatar
      WebCore: · f780fa7a
      thatcher authored
              Reviewed by Geoff.
      
              <rdar://problem/4478625> HTML Editing: Basic table editing and culling
      
              Initial implementaltion of table deletion user interface:
              * Interface shows up on the nearest table containing the entire selection.
              * Shows a Dashboard style close button in the top left corner.
              * Shows a 60% opaque black outline around the table.
              * Adds a new EditorClient function shouldShowDeleteInterface.
      
              Also adds a new constructor CachedImage and setter functions on
              HTMLImageElement and HTMLImageLoader allowing an Image object to be set
              and image element in the page. This change also paves the way to allow an
              NSImage setter on DOMHTMLImageElement. 
      
              * Resources/deleteButton.tiff: Added.
              * Resources/deleteButtonPressed.tiff: Added.
              * WebCore.xcodeproj/project.pbxproj:
              * bridge/EditorClient.h:
              * editing/DeleteButton.cpp: Added.
              (WebCore::DeleteButton::DeleteButton):
              (WebCore::DeleteButton::defaultEventHandler): notify the controller to delete on click
              * editing/DeleteButton.h: Added.
              * editing/DeleteButtonController.cpp: Added.
              (WebCore::DeleteButtonController::DeleteButtonController):
              (WebCore::DeleteButtonController::respondToChangedSelection): move the interface to the new element, or hide
              (WebCore::DeleteButtonController::respondToChangedContents): call updateOutlineStyle
              (WebCore::DeleteButtonController::updateOutlineStyle): resize the outline if the table changed size
              (WebCore::DeleteButtonController::show): shows the interface on a new element
              (WebCore::DeleteButtonController::hide): hides the existing interface
              (WebCore::DeleteButtonController::deleteTarget): deletes the targeted element
              * editing/DeleteButtonController.h: Added.
              (WebCore::DeleteButtonController::target): getter for the current target
              * editing/Editor.cpp:
              (WebCore::Editor::shouldShowDeleteInterface): call the new shouldShowDeleteInterface client function
              (WebCore::Editor::Editor): remove the manual ref now that we use RefPtr for m_client
              (WebCore::Editor::~Editor): remove the manual deref now that we use RefPtr for m_client
              * editing/Editor.h:
              (WebCore::Editor::frame): new getter
              (WebCore::Editor::deleteButtonController): ditto
              * editing/SelectionController.cpp:
              (WebCore::SelectionController::setSelection): notify the DeleteButtonController about the new selection
              * html/HTMLImageElement.h:
              (WebCore::HTMLImageElement::setCachedImage): new setter that replaces the CachedImage
              * html/HTMLImageLoader.cpp:
              (WebCore::HTMLImageLoader::setImage): ditto
              * html/HTMLImageLoader.h:
              * loader/CachedImage.cpp:
              (WebCore::CachedImage::CachedImage): new constructor that takes an Image
              * loader/CachedImage.h: ditto
              * page/Frame.cpp:
              (WebCore::Frame::selectionController): cleanup coding style
              (WebCore::Frame::editor): ditto
              (WebCore::Frame::command): ditto
              (WebCore::Frame::appliedEditing): tell the delete button outline to update
              (WebCore::Frame::unappliedEditing): ditto
              (WebCore::Frame::reappliedEditing): ditto
              * rendering/RenderTable.cpp:
              (WebCore::RenderTable::addChild): workaround until bug 11363 is fixed
      
      WebKit:
      
              Reviewed by Geoff.
      
              <rdar://problem/4478625> HTML Editing: Basic table editing and culling
      
              Initial implementaltion of table deletion user interface:
              * Adds a new editing delegate method, webView:shouldShowDeleteInterfaceForElement:.
              * The new delegate method is called from the new shouldShowDeleteInterface EditorClient function.
      
              * DefaultDelegates/WebDefaultEditingDelegate.m:
              (-[WebDefaultEditingDelegate webView:shouldShowDeleteInterfaceForElement:]):
              * WebCoreSupport/WebEditorClient.h:
              * WebCoreSupport/WebEditorClient.mm:
              (WebEditorClient::WebEditorClient):
              (WebEditorClient::shouldDeleteRange):
              (WebEditorClient::shouldShowDeleteInterface):
              * WebKit.xcodeproj/project.pbxproj:
              * WebView/WebEditingDelegatePrivate.h: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@17196 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f780fa7a
  19. 09 Jul, 2006 1 commit
    • darin's avatar
      Reviewed by Tim Hatcher. · f4b05b29
      darin authored
              - put more into the WebCore namespace
              - removed unused code for plain text fields
      
              Put more classes, class templates, enums, functions, and constants into
              the WebCore namespace, including all the headers in the platform directory.
      
              Removed lots of unneeded "WebCore::" qualifiers and "using" directives.
      
              Added some "WebCore::" qualifiers in a few places.
      
              Removed "uses WebCore::" in headers that we said we'd remove "when
              everything is in the WebCore namespace".
      
              * bindings/js/JSDOMParser.cpp:
              * bindings/js/JSHTMLElementWrapperFactory.cpp:
              * bindings/js/JSXSLTProcessor.cpp:
              * bindings/js/kjs_binding.cpp:
              * bindings/js/kjs_css.cpp:
              * bindings/js/kjs_dom.cpp:
              * bindings/js/kjs_dom.h:
              * bindings/js/kjs_events.cpp:
              * bindings/js/kjs_proxy.h:
              * bindings/js/kjs_window.h:
              * bindings/objc/DOM.mm:
              * bridge/History.h:
              * bridge/JavaAppletWidget.h:
              * bridge/mac/FormDataMac.h:
              * bridge/mac/FormDataMac.mm:
              * bridge/mac/WebCoreAXObject.mm:
              * bridge/mac/WebCoreEncodings.mm:
              * bridge/mac/WebCoreFrameBridge.h:
              * bridge/mac/WebCoreIconDatabaseBridge.mm:
              * bridge/mac/WebCorePageState.h:
              * bridge/mac/WebCoreScriptDebugger.mm:
              * bridge/mac/WebCoreSettings.h:
              * css/CSSGrammar.y:
              * css/CSSPageRule.cpp:
              * css/CSSPageRule.h:
              * css/MediaList.cpp:
              * css/cssstyleselector.h:
              * dom/Clipboard.h:
              * dom/Document.cpp:
              * dom/Document.h:
              * dom/EventTargetNode.h:
              * dom/Node.cpp:
              * dom/Node.h:
              * dom/Position.h:
              * dom/Range.cpp:
              * dom/XMLTokenizer.cpp:
              * editing/AppendNodeCommand.h:
              * editing/ApplyStyleCommand.cpp:
              * editing/BreakBlockquoteCommand.cpp:
              * editing/BreakBlockquoteCommand.h:
              * editing/CompositeEditCommand.cpp:
              * editing/CompositeEditCommand.h:
              * editing/CreateLinkCommand.h:
              * editing/DeleteFromTextNodeCommand.h:
              * editing/DeleteSelectionCommand.h:
              * editing/FormatBlockCommand.h:
              * editing/HTMLInterchange.cpp:
              * editing/HTMLInterchange.h:
              * editing/IndentOutdentCommand.h:
              * editing/InsertIntoTextNodeCommand.h:
              * editing/InsertLineBreakCommand.h:
              * editing/InsertListCommand.h:
              * editing/InsertNodeBeforeCommand.h:
              * editing/InsertTextCommand.cpp:
              * editing/InsertTextCommand.h:
              * editing/JSEditor.cpp:
              * editing/JSEditor.h:
              * editing/JoinTextNodesCommand.h:
              * editing/MergeIdenticalElementsCommand.cpp:
              * editing/MergeIdenticalElementsCommand.h:
              * editing/ModifySelectionListLevel.h:
              * editing/MoveSelectionCommand.h:
              * editing/RebalanceWhitespaceCommand.h:
              * editing/RemoveNodeAttributeCommand.h:
              * editing/RemoveNodeCommand.h:
              * editing/RemoveNodePreservingChildrenCommand.h:
              * editing/ReplaceSelectionCommand.h:
              * editing/SetNodeAttributeCommand.h:
              * editing/SplitElementCommand.cpp:
              * editing/SplitElementCommand.h:
              * editing/SplitTextNodeCommand.cpp:
              * editing/SplitTextNodeCommand.h:
              * editing/SplitTextNodeContainingElementCommand.h:
              * editing/TypingCommand.cpp:
              * editing/TypingCommand.h:
              * editing/UnlinkCommand.h:
              * editing/VisiblePosition.cpp:
              * editing/WrapContentsInDummySpanCommand.cpp:
              * editing/WrapContentsInDummySpanCommand.h:
              * editing/markup.cpp:
              * editing/markup.h:
              * html/HTMLAnchorElement.cpp:
              * html/HTMLBodyElement.cpp:
              * html/HTMLButtonElement.h:
              * html/HTMLCollection.h:
              * html/HTMLDocument.h:
              * html/HTMLEmbedElement.cpp:
              * html/HTMLFormElement.cpp:
              * html/HTMLFormElement.h:
              * html/HTMLFrameElement.cpp:
              * html/HTMLFrameSetElement.cpp:
              * html/HTMLKeygenElement.cpp:
              * html/HTMLLabelElement.cpp:
              * html/HTMLObjectElement.cpp:
              * html/HTMLObjectElement.h:
              * html/HTMLTableElement.cpp:
              * html/HTMLTablePartElement.cpp:
              * icon/IconDatabase.h:
              * kcanvas/KCanvasPath.h:
              * kcanvas/KCanvasResources.cpp:
              * kcanvas/KCanvasResources.h:
              * kcanvas/KCanvasTreeDebug.cpp:
              * kcanvas/KCanvasTreeDebug.h:
              * kcanvas/RenderSVGContainer.cpp:
              * kcanvas/RenderSVGText.h:
              * kcanvas/device/KRenderingPaintServer.h:
              * kcanvas/device/KRenderingPaintServerGradient.h:
              * kcanvas/device/KRenderingPaintServerSolid.cpp:
              * ksvg2/misc/SVGImageLoader.cpp:
              * ksvg2/svg/SVGElement.cpp:
              * ksvg2/svg/SVGElement.h:
              * ksvg2/svg/SVGForeignObjectElement.cpp:
              * ksvg2/svg/SVGForeignObjectElement.h:
              * ksvg2/svg/SVGImageElement.cpp:
              * ksvg2/svg/SVGPoint.h:
              * ksvg2/svg/SVGStylable.h:
              * ksvg2/svg/SVGTRefElement.cpp:
              * ksvg2/svg/SVGTRefElement.h:
              * ksvg2/svg/SVGTSpanElement.cpp:
              * ksvg2/svg/SVGTSpanElement.h:
              * ksvg2/svg/SVGTextElement.h:
              * ksvg2/svg/svgpathparser.cpp:
              * ksvg2/svg/svgpathparser.h:
              * loader/Cache.h:
              * loader/DocLoader.h:
              * loader/LoaderFunctions.h:
              * loader/mac/LoaderFunctionsMac.mm:
              * page/Frame.h:
              * page/FrameView.h:
              * page/Page.h:
              * page/Settings.h:
              * platform/AffineTransform.cpp:
              * platform/AffineTransform.h:
              * platform/Arena.cpp:
              * platform/Arena.h:
              * platform/CookieJar.h:
              * platform/DeprecatedCString.cpp:
              * platform/DeprecatedCString.h:
              * platform/DeprecatedPtrList.h:
              * platform/DeprecatedPtrListImpl.cpp:
              * platform/DeprecatedPtrListImpl.h:
              * platform/DeprecatedPtrQueue.h:
              * platform/DeprecatedString.cpp:
              * platform/DeprecatedString.h:
              * platform/DeprecatedStringList.cpp:
              * platform/DeprecatedStringList.h:
              * platform/DeprecatedValueList.h:
              * platform/DeprecatedValueListImpl.cpp:
              * platform/DeprecatedValueListImpl.h:
              * platform/FileButton.h:
              * platform/FloatPoint.h:
              * platform/FloatRect.h:
              * platform/FloatSize.h:
              * platform/FontData.h:
              * platform/FontFallbackList.h:
              * platform/GraphicsContext.h:
              * platform/IntPoint.h:
              * platform/IntRect.h:
              * platform/IntSize.h:
              * platform/KURL.cpp:
              * platform/KURL.h:
              * platform/ListBox.h:
              * platform/Logging.cpp:
              * platform/Logging.h:
              * platform/Pen.h:
              * platform/PopUpButton.h:
              * platform/RegularExpression.cpp:
              * platform/RegularExpression.h:
              * platform/SSLKeyGenerator.h:
              * platform/ScrollBar.h:
              * platform/SegmentedString.h:
              * platform/Shared.h:
              * platform/Slider.h:
              * platform/StringImpl.h:
              * platform/TextBox.h:
              * platform/TextField.h:
              * platform/TextStream.cpp:
              * platform/TextStream.h:
              * platform/TransferJob.h:
              * platform/TransferJobClient.h:
              * platform/Widget.h:
              * platform/cg/AffineTransformCG.cpp:
              * platform/mac/ClipboardMac.h:
              * platform/mac/ClipboardMac.mm:
              * platform/mac/DeprecatedStringListMac.mm:
              * platform/mac/FontCacheMac.mm:
              * platform/mac/KURLMac.mm:
              * platform/mac/ListBoxMac.mm:
              * platform/mac/PopUpButtonMac.mm:
              * platform/mac/SSLKeyGeneratorMac.mm:
              * platform/mac/TextBoxMac.mm:
              * platform/mac/TextFieldMac.mm:
              * platform/mac/WebCoreTextArea.h:
              * platform/mac/WebCoreTextArea.mm:
              * platform/mac/WebCoreTextField.h:
              * platform/mac/WebCoreTextField.mm:
              * rendering/DeprecatedRenderSelect.h:
              * rendering/RenderArena.cpp:
              * rendering/RenderArena.h:
              * rendering/RenderBlock.cpp:
              * rendering/RenderBox.cpp:
              * rendering/RenderContainer.cpp:
              * rendering/RenderFlexibleBox.cpp:
              * rendering/RenderFlow.cpp:
              * rendering/RenderLayer.cpp:
              * rendering/RenderLineEdit.cpp:
              * rendering/RenderObject.h:
              * rendering/RenderStyle.cpp:
              * rendering/RenderStyle.h:
              * rendering/RenderText.cpp:
              * rendering/RenderTextFragment.cpp:
              * rendering/RenderTheme.h:
              * rendering/RenderTreeAsText.cpp:
              * rendering/RenderTreeAsText.h:
              * rendering/RenderView.h:
              * rendering/bidi.h:
              * xml/XSLStyleSheet.cpp:
              * xml/XSLTProcessor.cpp:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@15286 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f4b05b29
  20. 19 Mar, 2006 1 commit
  21. 23 Feb, 2006 1 commit
    • darin's avatar
      Reviewed by John Sullivan. · 947a31b6
      darin authored
              - moved QMouseEvent, QKeyEvent, QWheelEvent, and "Foundation extras"
                from kwq to platform directory
              - moved history function from kwq to bridge directory
              - eliminated QEvent, MousePressEvent, MouseDoubleClickEvent, MouseMoveEvent,
                MoveReleaseEvent, and DrawContents classes
              - merged NodeImpl::MouseEvent and the MouseEvent from khtml_events.h into
                a single class in the page directory
              - broke khtmllayout.h out into a file for the Length structure in the css
                directory and a file for the GapRects structure in the rendering directory
              - redid the Length structure to work more portably by not relying on bitfield
                layout and improve the names to no longer explicitly mention "width"
              - reduced use of QGuardedPtr and other uses of the QObject "destroyed" signal
      
              * ForwardingHeaders/kparts: Removed.
              * ForwardingHeaders/qevent.h: Removed.
              * khtml/khtml_events.cpp: Removed.
              * khtml/khtml_events.h: Removed.
              * khtml/misc/khtmllayout.h: Removed.
              * kwq/KWQEvent.h: Removed.
              * kwq/KWQEvent.mm: Removed.
              * kwq/KWQFoundationExtras.h: Removed.
              * kwq/KWQKHistoryProvider.mm: Removed.
              * kwq/KWQKPartsHistoryProvider.h: Removed.
      
              * bridge/History.h: Added.
              * bridge/mac/HistoryMac.mm: Added.
              * css/Length.h: Added.
              * page/MouseEventWithHitTestResults.h: Added.
              * platform/KeyEvent.h: Added.
              * platform/MouseEvent.h: Added.
              * platform/WheelEvent.h: Added.
              * platform/mac/FoundationExtras.h: Added.
              * platform/mac/KeyEventMac.mm: Added.
              * platform/mac/MouseEventMac.mm: Added.
              * platform/mac/WheelEventMac.mm: Added.
              * rendering/GapRects.h: Added.
      
              * WebCore.xcodeproj/project.pbxproj: Updated for above changes.
              * WebCore.vcproj/WebCore/WebCore.vcproj: Updated for above changes.
      
              * bridge/mac/MacFrame.h: Removed unused parameters from urlSelected functions.
              Replaced MouseEvent, MousePressEvent, MouseMoveEvent, and MouseReleaseEvent
              with MouseEventWithHitTestResults.
              * bridge/mac/MacFrame.mm:
              (WebCore::MacFrame::urlSelected): Removed unused parameters.
              (WebCore::MacFrame::wheelEvent): Changed to use WheelEvent.
              (WebCore::MacFrame::keyEvent): Changed to use KeyEvent.
              (WebCore::MacFrame::khtmlMousePressEvent): Changed parameter type.
              (WebCore::MacFrame::khtmlMouseMoveEvent): Ditto.
              (WebCore::MacFrame::khtmlMouseReleaseEvent): Ditto.
              (WebCore::MacFrame::passSubframeEventToSubframe): Ditto.
              (WebCore::MacFrame::mouseDown): Changed to use MouseEvent.
              (WebCore::MacFrame::mouseDragged): Ditto.
              (WebCore::MacFrame::mouseUp): Ditto.
              (WebCore::MacFrame::mouseMoved): Ditto.
              (WebCore::MacFrame::sendContextMenuEvent): Ditto.
      
              * css/csshelper.h: Removed a bunch of unused declarations.
      
              * dom/DocumentImpl.h:
              * dom/DocumentImpl.cpp:
              (WebCore::DocumentImpl::prepareMouseEvent): Changed to take a MouseEvent
              and return a MouseEventWithHitTestResults.
              (WebCore::DocumentImpl::defaultEventHandler): Changed to use KeyEvent.
      
              * dom/NodeImpl.h: Removed NodeImpl::MouseEvent and NodeImpl::MouseEventType.
              * dom/NodeImpl.cpp:
              (WebCore::NodeImpl::dispatchMouseEvent): Changed to always get the type and
              detail values from the caller, never from the event. Changed to use MouseEvent.
              (WebCore::NodeImpl::dispatchKeyEvent): Changed to use KeyEvent.
              (WebCore::NodeImpl::dispatchWheelEvent): Changed to use WheelEvent.
      
              * dom/dom2_eventsimpl.h:
              * dom/dom2_eventsimpl.cpp:
              (WebCore::KeyboardEventImpl::KeyboardEventImpl): Changed to use KeyEvent.
              (WebCore::KeyboardEventImpl::charCode): Ditto.
      
              * dom/dom_elementimpl.h: Removed unused mouseEventHandler function.
      
              * khtml/ecma/domparser.h: Use RefPtr instead of QGuardedPtr to hold the reference
              to the document.
      
              * khtml/ecma/kjs_proxy.h: (WebCore::KJSProxyImpl::haveInterpreter): Added. For
              use in the Frame destructor so we can get an existing KJS::Window object without
              creating a new interpreter and window object.
      
              * khtml/ecma/kjs_window.h: Merged WindowQObject into Window. Changed all the
              guarded pointers to Frame to use plain old pointers that are cleared by the
              Frame explicitly (by the function disconnectFrame). Made the pointers to all
              the sub-objects of KJS::Window be mutable so we don't have to const_cast in
              the functions to get (and lazily create) them.
              * khtml/ecma/kjs_window.cpp:
              (KJS::DOMWindowTimer::DOMWindowTimer): Use Window* instead of WindowQObject*.
              (KJS::History::disconnectFrame): Added. Clears m_frame.
              (KJS::FrameArray::disconnectFrame): Added. Clears m_frame.
              (KJS::Window::Window): Removed code to create a WindowQObject.
              (KJS::Window::~Window): Removed code to delete a WindowQObject.
              (KJS::Window::location): Remove now-unneeded const_cast.
              (KJS::Window::selection): Ditto.
              (KJS::Window::locationbar): Ditto.
              (KJS::Window::menubar): Ditto.
              (KJS::Window::personalbar): Ditto.
              (KJS::Window::statusbar): Ditto.
              (KJS::Window::toolbar): Ditto.
              (KJS::Window::scrollbars): Ditto.
              (KJS::Window::getValueProperty): Update since m_frame is now a raw pointer.
              (KJS::Window::getOwnPropertySlot): Ditto.
              (KJS::Window::toBoolean): Ditto.
              (KJS::Window::scheduleClose): Remove assert that WindowQObject* is not null.
              (KJS::Window::isSafeScript): Update since m_frame is now a raw pointer.
              (KJS::Window::clear): Remove code to delete a WindowQObject. Added a call
              to clearAllTimeouts instead.
              (KJS::Window::clearAllTimeouts): Added. Does equivalent of the WindowQObject
              destructor.
              (KJS::Window::installTimeout): Moved to Window from WindowQObject.
              (KJS::Window::pauseTimeouts): Ditto.
              (KJS::Window::resumeTimeouts): Ditto.
              (KJS::Window::clearTimeout): Ditto.
              (KJS::Window::timerFired): Ditto.
              (KJS::Window::disconnectFrame): Added. Sets all the frame pointers to 0.
              (KJS::FrameArray::getOwnPropertySlot): Update since m_frame is now a raw pointer.
              (KJS::Location::getOwnPropertySlot): Ditto.
              (KJS::Location::put): Ditto.
              (KJS::Selection::getOwnPropertySlot): Ditto.
              (KJS::BarInfo::getOwnPropertySlot): Ditto.
      
              * khtml/html/html_baseimpl.h: Forward-declare Length instead of including khtmllayout.h.
              * khtml/html/html_imageimpl.h: Ditto.
      
              * khtml/html/html_inlineimpl.cpp: (WebCore::HTMLAnchorElementImpl::defaultEventHandler):
              Changed to use KeyEvent and removed the code to extract the button and state from the
              DOM even to pass to urlSelected.
              * ksvg2/svg/SVGAElementImpl.cpp: (SVGAElementImpl::defaultEventHandler): Ditto.
      
              * khtml/html/htmltokenizer.cpp: (WebCore::HTMLTokenizer::timerFired): Change to use
              a RefPtr instead of a QGuardedPtr.
      
              * khtml/misc/helper.h:
              * khtml/misc/helper.cpp: Removed printpainter and setPrintPainter.
      
              * ksvg2/svg/SVGDocumentImpl.h:
              * ksvg2/svg/SVGDocumentImpl.cpp: (WebCore::SVGDocumentImpl::dispatchKeyEvent):
              Change to use KeyEvent.
      
              * kwq/KWQComboBox.mm:
              (-[KWQPopUpButton becomeFirstResponder]):
              (-[KWQPopUpButton resignFirstResponder]):
              * kwq/KWQFileButton.mm:
              (KWQFileButton::focusChanged):
              * kwq/KWQListBox.mm:
              (-[KWQTableView becomeFirstResponder]):
              (-[KWQTableView resignFirstResponder]):
              * kwq/KWQSlider.mm:
              (-[KWQSlider becomeFirstResponder]):
              (-[KWQSlider resignFirstResponder]):
              * kwq/KWQTextArea.mm:
              (-[KWQTextAreaTextView becomeFirstResponder]):
              (-[KWQTextAreaTextView resignFirstResponder]):
              * kwq/KWQTextField.mm:
              (-[KWQTextFieldController setHasFocus:]):
              Updated to use new eventFilterFocusIn/Out instead of the general purpose
              eventFilter function. This allows us to remove QEvent and the focus events.
      
              * kwq/KWQNamespace.h: Removed ButtonState.
      
              * kwq/KWQObject.h:
              * kwq/KWQObject.cpp: Replaced eventFilter function with eventFilterFocusIn and
              eventFilterFocusOut, allowing us to remove QEvent. Removed event function.
      
              * kwq/KWQSlot.cpp:
              (KWQSlot::KWQSlot): Removed the parentDestroyed slot.
              (KWQSlot::call): Ditto.
      
              * page/Frame.h:
              * page/Frame.cpp:
              (WebCore::UserStyleSheetLoader::UserStyleSheetLoader): Renamed from
              PartStyleSheetLoader. Removed a lot of unneeded null checks. Use a
              raw Frame pointer instead of a QGuardedPtr, and count on the Frame
              to delete us when it's being deleted.
              (WebCore::UserStyleSheetLoader::~UserStyleSheetLoader): No longer
              a virtual function. This is not a polymorphic class.
              (WebCore::UserStyleSheetLoader::setStyleSheet): Remove code to delete
              ourselves -- that's now the frame's responsibility.
              (WebCore::Frame::~Frame): Call disconnectFrame on the KJS::Window and
              delete m_userStyleSheetLoader.
              (WebCore::Frame::changeLocation): Update since urlSelected no longer takes
              button and state parameters.
              (WebCore::Frame::setUserStyleSheet): Delete existing loader to stop a load
              in progress before starting a new load. Store reference to loader.
              (WebCore::Frame::urlSelected): Remove button and state parameters and unused
              local variable hasTarget.
              (WebCore::Frame::selectClosestWordFromMouseEvent): Change from QMouseEvent
              to MouseEvent.
              (WebCore::Frame::handleMousePressEventDoubleClick): Change from MousePressEvent
              to MouseEventWithHitTestResults.
              (WebCore::Frame::handleMousePressEventTripleClick): Ditto.
              (WebCore::Frame::handleMousePressEventSingleClick): Ditto.
              (WebCore::Frame::khtmlMousePressEvent): Ditto.
              (WebCore::Frame::handleMouseMoveEventSelection): Change from MouseMoveEvent
              to MouseEventWithHitTestResults.
              (WebCore::Frame::khtmlMouseMoveEvent): Ditto.
              (WebCore::Frame::khtmlMouseReleaseEvent): Change from MouseReleaseEvent
              to MouseEventWithHitTestResults.
              (WebCore::Frame::khtmlMouseDoubleClickEvent): Change from
              MouseReleaseDoubleClickEvent to MouseEventWithHitTestResults.
              (WebCore::Frame::passWidgetMouseDownEventToWidget): Change from
              NodeImpl::MouseEvent to MouseEventWithHitTestResults.
      
              * page/FramePrivate.h: Added m_userStyleSheetLoader.
      
              * page/FrameView.h:
              * page/FrameView.cpp:
              (WebCore::FrameView::viewportMousePressEvent): Change from QMouseEvent to
              MouseEvent and from NodeImpl::MouseEvent to MouseEventWithHitTestResults.
              (WebCore::FrameView::viewportMouseDoubleClickEvent): Ditto.
              (WebCore::selectCursor): Ditto.
              (WebCore::FrameView::viewportMouseMoveEvent): Ditto.
              (WebCore::FrameView::viewportMouseReleaseEvent): Ditto.
              (WebCore::FrameView::keyPressEvent): Change from QKeyEvent to KeyEvent.
              (WebCore::FrameView::dispatchMouseEvent): Change from QMouseEvent to
              MouseEvent and from NodeImpl::MouseEvent to MouseEventWithHitTestResults.
              (WebCore::FrameView::viewportWheelEvent): Change from QWheelEvent to
              WheelEvent.
              (WebCore::FrameView::hoverTimerFired): Update for change to prepareMouseEvent
              parameters.
      
              * platform/Widget.h:
              * platform/Widget.cpp: Removed event function.
      
              * rendering/render_form.h: Removed LineEditWidget, ComboBoxWidget, TextAreaWidget.
              * rendering/render_form.cpp:
              (WebCore::RenderFormElement::slotClicked): Changed from QMouseEvent to MouseEvent.
              (WebCore::RenderFormElement::addIntrinsicMarginsIfAllowed): Updated for changes
              to the Length class.
              (WebCore::RenderSelect::setWidgetWritingDirection): Updated for removal of
              ComboBoxWidget.
              (WebCore::RenderSelect::slotSelected): Ditto.
              (WebCore::RenderSelect::createComboBox): Ditto.
      
              * rendering/render_replaced.h:
              * rendering/render_replaced.cpp:
              (WebCore::RenderWidget::destroy): Updated since removeEventFilter no longer takes
              a parameter.
              (WebCore::RenderWidget::setQWidget): Ditto.
              (WebCore::RenderWidget::eventFilterFocusIn): Added. Replaces eventFilter.
              (WebCore::RenderWidget::eventFilterFocusOut): Ditto.
      
              * css/css_computedstyle.cpp:
              (WebCore::valueForLength):
              (WebCore::CSSComputedStyleDeclarationImpl::getPropertyCSSValue):
              * css/cssstyleselector.cpp:
              (WebCore::checkPseudoState):
              (WebCore::CSSStyleSelector::applyProperty):
              (WebCore::CSSStyleSelector::getComputedSizeFromSpecifiedSize):
              * khtml/html/html_imageimpl.cpp:
              (WebCore::HTMLAreaElementImpl::getRegion):
              * rendering/RenderBlock.cpp:
              (WebCore::RenderBlock::MarginInfo::MarginInfo):
              (WebCore::RenderBlock::isSelfCollapsingBlock):
              (WebCore::RenderBlock::layoutBlock):
              (WebCore::RenderBlock::determineHorizontalPosition):
              (WebCore::RenderBlock::leftRelOffset):
              (WebCore::RenderBlock::rightRelOffset):
              (WebCore::RenderBlock::calcMinMaxWidth):
              (WebCore::getBPMWidth):
              (WebCore::RenderBlock::calcInlineMinMaxWidth):
              (WebCore::RenderBlock::calcBlockMinMaxWidth):
              * rendering/RenderTable.cpp:
              (WebCore::RenderTable::calcWidth):
              (WebCore::RenderTable::layout):
              * rendering/RenderTableCell.cpp:
              (WebCore::RenderTableCell::calcMinMaxWidth):
              * rendering/RenderTableSection.cpp:
              (WebCore::RenderTableSection::addChild):
              (WebCore::RenderTableSection::addCell):
              (WebCore::RenderTableSection::calcRowHeight):
              (WebCore::RenderTableSection::layoutRows):
              * rendering/RenderText.h:
              (khtml::RenderText::marginLeft):
              (khtml::RenderText::marginRight):
              * rendering/bidi.cpp:
              (khtml::getBPMWidth):
              * rendering/render_applet.cpp:
              (WebCore::RenderApplet::createWidgetIfNecessary):
              * rendering/render_box.cpp:
              (WebCore::RenderBox::paintBackgroundExtended):
              (WebCore::RenderBox::getClipRect):
              (WebCore::RenderBox::relativePositionOffset):
              (WebCore::RenderBox::calcWidth):
              (WebCore::RenderBox::calcWidthUsing):
              (WebCore::RenderBox::sizesToIntrinsicWidth):
              (WebCore::RenderBox::calcHorizontalMargins):
              (WebCore::RenderBox::calcHeight):
              (WebCore::RenderBox::calcHeightUsing):
              (WebCore::RenderBox::calcPercentageHeight):
              (WebCore::RenderBox::calcReplacedWidth):
              (WebCore::RenderBox::calcReplacedWidthUsing):
              (WebCore::RenderBox::calcReplacedHeight):
              (WebCore::RenderBox::calcReplacedHeightUsing):
              (WebCore::RenderBox::availableHeightUsing):
              (WebCore::RenderBox::calcVerticalMargins):
              (WebCore::RenderBox::calcAbsoluteHorizontal):
              (WebCore::RenderBox::calcAbsoluteHorizontalValues):
              (WebCore::RenderBox::calcAbsoluteVertical):
              (WebCore::RenderBox::calcAbsoluteVerticalValues):
              * rendering/render_br.cpp:
              (WebCore::RenderBR::lineHeight):
              * rendering/render_flexbox.cpp:
              (khtml::RenderFlexibleBox::calcHorizontalMinMaxWidth):
              (khtml::RenderFlexibleBox::calcVerticalMinMaxWidth):
              (khtml::RenderFlexibleBox::calcMinMaxWidth):
              (khtml::RenderFlexibleBox::allowedChildFlex):
              * rendering/render_flow.cpp:
              (WebCore::RenderFlow::lineHeight):
              * rendering/render_frames.cpp:
              (WebCore::RenderFrameSet::layout):
              * rendering/render_image.cpp:
              (WebCore::RenderImage::isWidthSpecified):
              (WebCore::RenderImage::isHeightSpecified):
              * rendering/render_layer.cpp:
              (WebCore::Marquee::direction):
              (WebCore::Marquee::start):
              (WebCore::Marquee::updateMarqueeStyle):
              (WebCore::Marquee::timerFired):
              * rendering/render_line.cpp:
              (WebCore::InlineFlowBox::marginLeft):
              (WebCore::InlineFlowBox::marginRight):
              * rendering/render_object.cpp:
              (WebCore::RenderObject::mustRepaintBackgroundOrBorder):
              (WebCore::RenderObject::paintBorderImage):
              (WebCore::RenderObject::paddingTop):
              (WebCore::RenderObject::paddingBottom):
              (WebCore::RenderObject::paddingLeft):
              (WebCore::RenderObject::paddingRight):
              (WebCore::RenderObject::getVerticalPosition):
              (WebCore::RenderObject::lineHeight):
              (WebCore::RenderObject::addDashboardRegions):
              * rendering/render_style.h:
              * rendering/render_theme_mac.mm:
              (WebCore::RenderThemeMac::addIntrinsicMargins):
              * rendering/table_layout.cpp:
              (WebCore::FixedTableLayout::calcWidthArray):
              (WebCore::FixedTableLayout::calcMinMaxWidth):
              (WebCore::FixedTableLayout::layout):
              (WebCore::AutoTableLayout::recalcColumn):
              (WebCore::AutoTableLayout::fullRecalc):
              (WebCore::AutoTableLayout::calcMinMaxWidth):
              (WebCore::AutoTableLayout::calcEffectiveWidth):
              (WebCore::AutoTableLayout::layout):
              (WebCore::AutoTableLayout::calcPercentages):
              Updated for changes to the Length class.
              Also removed a check of the printpainter global, never used in WebCore.
      
              * bindings/objc/DOM.mm:
              * bindings/objc/DOMCSS.mm:
              * bindings/objc/DOMHTML.mm:
              * bridge/mac/WebCoreFrameBridge.mm:
              * css/csshelper.cpp:
              * editing/SelectionController.cpp:
              * khtml/ecma/kjs_html.h:
              * kwq/KWQAccObject.mm:
              * kwq/KWQAccObjectCache.mm:
              * kwq/KWQClipboard.mm:
              * kwq/KWQFont.mm:
              * kwq/KWQFontMetrics.mm:
              * kwq/KWQKJobClasses.mm:
              * kwq/KWQKURL.mm:
              * kwq/KWQLoader.mm:
              * kwq/KWQPageState.mm:
              * kwq/KWQPainter.mm:
              * kwq/WebCoreSettings.mm:
              * platform/StringImpl.cpp:
              * platform/mac/CursorMac.mm:
              * platform/mac/WidgetMac.mm:
              * rendering/RenderBlock.h:
              * rendering/render_canvas.cpp:
              * rendering/render_line.h:
              * rendering/render_style.cpp:
              * rendering/table_layout.h:
              Updated includes.
      
              * bindings/js/JSDOMCore.cpp: Touched, because I got strange failures if this
              didn't rebuild.
              * bindings/js/JSDOMEvents.cpp: Ditto.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12953 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      947a31b6
  22. 22 Feb, 2006 1 commit
  23. 14 Feb, 2006 1 commit
    • darin's avatar
      Rubber-stamped by Eric. · a68e043d
      darin authored
              - moved editing sources from khtml/editing to editing, and renamed files with single classes
      
              * WebCore.xcodeproj/project.pbxproj: Added new, removed old.
              * WebCore.vcproj/WebCore/WebCore.vcproj: Ditto.
      
              * bridge/mac/MacFrame.mm:
              * bridge/mac/WebCoreFrameBridge.mm:
              * dom/DocumentImpl.cpp:
              * dom/dom2_rangeimpl.cpp:
              * dom/dom_position.cpp:
              * khtml/khtml_events.cpp:
              * kwq/KWQAccObject.mm:
              * kwq/KWQAccObjectCache.h:
              * kwq/KWQEditCommand.mm:
              * page/Frame.cpp:
              * page/FramePrivate.h:
              * rendering/RenderBlock.cpp:
              * rendering/RenderContainer.cpp:
              * rendering/RenderText.cpp:
              * rendering/render_br.cpp:
              * rendering/render_inline.cpp:
              * rendering/render_object.cpp:
              * rendering/render_replaced.cpp:
              Fixed up includes.
      
              * editing: Added.
              * editing/AppendNodeCommand.cpp: Added.
              * editing/AppendNodeCommand.h: Added.
              * editing/ApplyStyleCommand.cpp: Added.
              * editing/ApplyStyleCommand.h: Added.
              * editing/BreakBlockquoteCommand.cpp: Added.
              * editing/BreakBlockquoteCommand.h: Added.
              * editing/CompositeEditCommand.cpp: Added.
              * editing/CompositeEditCommand.h: Added.
              * editing/DeleteFromTextNodeCommand.cpp: Added.
              * editing/DeleteFromTextNodeCommand.h: Added.
              * editing/DeleteSelectionCommand.cpp: Added.
              * editing/DeleteSelectionCommand.h: Added.
              * editing/EditCommand.cpp: Added.
              * editing/EditCommand.h: Added.
              * editing/InsertIntoTextNodeCommand.cpp: Added.
              * editing/InsertIntoTextNodeCommand.h: Added.
              * editing/InsertLineBreakCommand.cpp: Added.
              * editing/InsertLineBreakCommand.h: Added.
              * editing/InsertNodeBeforeCommand.cpp: Added.
              * editing/InsertNodeBeforeCommand.h: Added.
              * editing/InsertParagraphSeparatorCommand.cpp: Added.
              * editing/InsertParagraphSeparatorCommand.h: Added.
              * editing/InsertTextCommand.cpp: Added.
              * editing/InsertTextCommand.h: Added.
              * editing/JoinTextNodesCommand.cpp: Added.
              * editing/JoinTextNodesCommand.h: Added.
              * editing/MergeIdenticalElementsCommand.cpp: Added.
              * editing/MergeIdenticalElementsCommand.h: Added.
              * editing/MoveSelectionCommand.cpp: Added.
              * editing/MoveSelectionCommand.h: Added.
              * editing/RebalanceWhitespaceCommand.cpp: Added.
              * editing/RebalanceWhitespaceCommand.h: Added.
              * editing/RemoveCSSPropertyCommand.cpp: Added.
              * editing/RemoveCSSPropertyCommand.h: Added.
              * editing/RemoveNodeAttributeCommand.cpp: Added.
              * editing/RemoveNodeAttributeCommand.h: Added.
              * editing/RemoveNodeCommand.cpp: Added.
              * editing/RemoveNodeCommand.h: Added.
              * editing/RemoveNodePreservingChildrenCommand.cpp: Added.
              * editing/RemoveNodePreservingChildrenCommand.h: Added.
              * editing/ReplaceSelectionCommand.cpp: Added.
              * editing/ReplaceSelectionCommand.h: Added.
              * editing/Selection.cpp:
              * editing/SelectionController.cpp:
              * editing/SetNodeAttributeCommand.cpp: Added.
              * editing/SetNodeAttributeCommand.h: Added.
              * editing/SplitElementCommand.cpp: Added.
              * editing/SplitElementCommand.h: Added.
              * editing/SplitTextNodeCommand.cpp: Added.
              * editing/SplitTextNodeCommand.h: Added.
              * editing/SplitTextNodeContainingElementCommand.cpp: Added.
              * editing/SplitTextNodeContainingElementCommand.h: Added.
              * editing/TypingCommand.cpp: Added.
              * editing/TypingCommand.h: Added.
              * editing/VisiblePosition.cpp: Added.
              * editing/VisiblePosition.h: Added.
              * editing/VisibleRange.cpp: Added.
              * editing/VisibleRange.h: Added.
              * editing/WrapContentsInDummySpanCommand.cpp: Added.
              * editing/WrapContentsInDummySpanCommand.h: Added.
              * editing/append_node_command.cpp: Removed.
              * editing/append_node_command.h: Removed.
              * editing/apply_style_command.cpp: Removed.
              * editing/apply_style_command.h: Removed.
              * editing/break_blockquote_command.cpp: Removed.
              * editing/break_blockquote_command.h: Removed.
              * editing/composite_edit_command.cpp: Removed.
              * editing/composite_edit_command.h: Removed.
              * editing/delete_from_text_node_command.cpp: Removed.
              * editing/delete_from_text_node_command.h: Removed.
              * editing/delete_selection_command.cpp: Removed.
              * editing/delete_selection_command.h: Removed.
              * editing/edit_command.cpp: Removed.
              * editing/edit_command.h: Removed.
              * editing/htmlediting.cpp:
              * editing/insert_into_text_node_command.cpp: Removed.
              * editing/insert_into_text_node_command.h: Removed.
              * editing/insert_line_break_command.cpp: Removed.
              * editing/insert_line_break_command.h: Removed.
              * editing/insert_node_before_command.cpp: Removed.
              * editing/insert_node_before_command.h: Removed.
              * editing/insert_paragraph_separator_command.cpp: Removed.
              * editing/insert_paragraph_separator_command.h: Removed.
              * editing/insert_text_command.cpp: Removed.
              * editing/insert_text_command.h: Removed.
              * editing/join_text_nodes_command.cpp: Removed.
              * editing/join_text_nodes_command.h: Removed.
              * editing/jsediting.cpp:
              * editing/markup.cpp:
              * editing/merge_identical_elements_command.cpp: Removed.
              * editing/merge_identical_elements_command.h: Removed.
              * editing/move_selection_command.cpp: Removed.
              * editing/move_selection_command.h: Removed.
              * editing/rebalance_whitespace_command.cpp: Removed.
              * editing/rebalance_whitespace_command.h: Removed.
              * editing/remove_css_property_command.cpp: Removed.
              * editing/remove_css_property_command.h: Removed.
              * editing/remove_node_attribute_command.cpp: Removed.
              * editing/remove_node_attribute_command.h: Removed.
              * editing/remove_node_command.cpp: Removed.
              * editing/remove_node_command.h: Removed.
              * editing/remove_node_preserving_children_command.cpp: Removed.
              * editing/remove_node_preserving_children_command.h: Removed.
              * editing/replace_selection_command.cpp: Removed.
              * editing/replace_selection_command.h: Removed.
              * editing/set_node_attribute_command.cpp: Removed.
              * editing/set_node_attribute_command.h: Removed.
              * editing/split_element_command.cpp: Removed.
              * editing/split_element_command.h: Removed.
              * editing/split_text_node_command.cpp: Removed.
              * editing/split_text_node_command.h: Removed.
              * editing/split_text_node_containing_element.cpp: Removed.
              * editing/split_text_node_containing_element_command.h: Removed.
              * editing/typing_command.cpp: Removed.
              * editing/typing_command.h: Removed.
              * editing/visible_position.cpp: Removed.
              * editing/visible_position.h: Removed.
              * editing/visible_range.cpp: Removed.
              * editing/visible_range.h: Removed.
              * editing/visible_units.cpp:
              * editing/wrap_contents_in_dummy_span_command.cpp: Removed.
              * editing/wrap_contents_in_dummy_span_command.h: Removed.
      
              * khtml/editing: Removed.
              * khtml/editing/Selection.cpp: Removed.
              * khtml/editing/Selection.h: Removed.
              * khtml/editing/SelectionController.cpp: Removed.
              * khtml/editing/SelectionController.h: Removed.
              * khtml/editing/append_node_command.cpp: Removed.
              * khtml/editing/append_node_command.h: Removed.
              * khtml/editing/apply_style_command.cpp: Removed.
              * khtml/editing/apply_style_command.h: Removed.
              * khtml/editing/break_blockquote_command.cpp: Removed.
              * khtml/editing/break_blockquote_command.h: Removed.
              * khtml/editing/composite_edit_command.cpp: Removed.
              * khtml/editing/composite_edit_command.h: Removed.
              * khtml/editing/delete_from_text_node_command.cpp: Removed.
              * khtml/editing/delete_from_text_node_command.h: Removed.
              * khtml/editing/delete_selection_command.cpp: Removed.
              * khtml/editing/delete_selection_command.h: Removed.
              * khtml/editing/edit_actions.h: Removed.
              * khtml/editing/edit_command.cpp: Removed.
              * khtml/editing/edit_command.h: Removed.
              * khtml/editing/html_interchange.cpp: Removed.
              * khtml/editing/html_interchange.h: Removed.
              * khtml/editing/htmlediting.cpp: Removed.
              * khtml/editing/htmlediting.h: Removed.
              * khtml/editing/insert_into_text_node_command.cpp: Removed.
              * khtml/editing/insert_into_text_node_command.h: Removed.
              * khtml/editing/insert_line_break_command.cpp: Removed.
              * khtml/editing/insert_line_break_command.h: Removed.
              * khtml/editing/insert_node_before_command.cpp: Removed.
              * khtml/editing/insert_node_before_command.h: Removed.
              * khtml/editing/insert_paragraph_separator_command.cpp: Removed.
              * khtml/editing/insert_paragraph_separator_command.h: Removed.
              * khtml/editing/insert_text_command.cpp: Removed.
              * khtml/editing/insert_text_command.h: Removed.
              * khtml/editing/join_text_nodes_command.cpp: Removed.
              * khtml/editing/join_text_nodes_command.h: Removed.
              * khtml/editing/jsediting.cpp: Removed.
              * khtml/editing/jsediting.h: Removed.
              * khtml/editing/markup.cpp: Removed.
              * khtml/editing/markup.h: Removed.
              * khtml/editing/merge_identical_elements_command.cpp: Removed.
              * khtml/editing/merge_identical_elements_command.h: Removed.
              * khtml/editing/move_selection_command.cpp: Removed.
              * khtml/editing/move_selection_command.h: Removed.
              * khtml/editing/rebalance_whitespace_command.cpp: Removed.
              * khtml/editing/rebalance_whitespace_command.h: Removed.
              * khtml/editing/remove_css_property_command.cpp: Removed.
              * khtml/editing/remove_css_property_command.h: Removed.
              * khtml/editing/remove_node_attribute_command.cpp: Removed.
              * khtml/editing/remove_node_attribute_command.h: Removed.
              * khtml/editing/remove_node_command.cpp: Removed.
              * khtml/editing/remove_node_command.h: Removed.
              * khtml/editing/remove_node_preserving_children_command.cpp: Removed.
              * khtml/editing/remove_node_preserving_children_command.h: Removed.
              * khtml/editing/replace_selection_command.cpp: Removed.
              * khtml/editing/replace_selection_command.h: Removed.
              * khtml/editing/set_node_attribute_command.cpp: Removed.
              * khtml/editing/set_node_attribute_command.h: Removed.
              * khtml/editing/split_element_command.cpp: Removed.
              * khtml/editing/split_element_command.h: Removed.
              * khtml/editing/split_text_node_command.cpp: Removed.
              * khtml/editing/split_text_node_command.h: Removed.
              * khtml/editing/split_text_node_containing_element.cpp: Removed.
              * khtml/editing/split_text_node_containing_element_command.h: Removed.
              * khtml/editing/text_affinity.h: Removed.
              * khtml/editing/text_granularity.h: Removed.
              * khtml/editing/typing_command.cpp: Removed.
              * khtml/editing/typing_command.h: Removed.
              * khtml/editing/visible_position.cpp: Removed.
              * khtml/editing/visible_position.h: Removed.
              * khtml/editing/visible_range.cpp: Removed.
              * khtml/editing/visible_range.h: Removed.
              * khtml/editing/visible_text.cpp: Removed.
              * khtml/editing/visible_text.h: Removed.
              * khtml/editing/visible_units.cpp: Removed.
              * khtml/editing/visible_units.h: Removed.
              * khtml/editing/wrap_contents_in_dummy_span_command.cpp: Removed.
              * khtml/editing/wrap_contents_in_dummy_span_command.h: Removed.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12803 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a68e043d
  24. 03 Oct, 2005 1 commit
    • mjs's avatar
      JavaScriptCore: · b64c50a2
      mjs authored
              Reviewed by Darin.
      
      	<rdar://problem/4283967> REGRESSION: 3% regression on PLT from new FastMalloc
      	http://bugzilla.opendarwin.org/show_bug.cgi?id=5243
      
      	A number of optimizations to the new threadsafe malloc that make it actually as fast
      	as dlmalloc (I measured wrong before) and as memory-efficient as the system malloc.
      
      	- use fastMalloc for everything - it now gets applied to all new/delete allocations
      	via a private inline operator new that is now included into every file via config.h.
      
      	- tweaked some of the numeric parameters for size classes and amount of wasted memory
      	allowed per allocation - this saves on memory use and consequently improves speed.
      
      	- so long as the allocator is not being used on background threads, get the per-thread
      	cache from a global variable instead of from pthread_getspecific, since the latter is slow.
      
      	- inline more functions, and force the ones GCC refuses to inline with
      	attribute(always_inline), nearly all of these have one call site so inlining them has
      	to be a win.
      
      	- use some tricks to calculate allocation size more efficiently and fewer times for small
      	allocations, to avoid hitting the huge size table array.
      
      	- avoid hitting the per-thread cache on code paths that don't need it.
      
      	- implement inline assembly version of spinlock for PowerPC (was already done for x86)
      
              * bindings/NP_jsobject.cpp:
              * bindings/c/c_class.cpp:
              * bindings/c/c_instance.cpp:
              * bindings/c/c_runtime.cpp:
              * bindings/c/c_utility.cpp:
              * bindings/jni/jni_class.cpp:
              * bindings/jni/jni_instance.cpp:
              * bindings/jni/jni_jsobject.cpp:
              * bindings/jni/jni_objc.mm:
              * bindings/jni/jni_runtime.cpp:
              * bindings/jni/jni_utility.cpp:
              * bindings/npruntime.cpp:
              * bindings/objc/WebScriptObject.mm:
              * bindings/objc/objc_class.mm:
              * bindings/objc/objc_instance.mm:
              * bindings/objc/objc_runtime.mm:
              * bindings/objc/objc_utility.mm:
              * bindings/runtime.cpp:
              * bindings/runtime_array.cpp:
              * bindings/runtime_method.cpp:
              * bindings/runtime_object.cpp:
              * bindings/runtime_root.cpp:
              * bindings/testbindings.cpp:
              * bindings/testbindings.mm:
              * kjs/array_object.cpp:
              (ArrayInstanceImp::ArrayInstanceImp):
              (ArrayInstanceImp::~ArrayInstanceImp):
              (ArrayInstanceImp::resizeStorage):
              * kjs/bool_object.cpp:
              * kjs/collector.cpp:
              (KJS::Collector::registerThread):
              * kjs/config.h:
              * kjs/debugger.cpp:
              * kjs/error_object.cpp:
              * kjs/function.cpp:
              * kjs/function_object.cpp:
              * kjs/identifier.cpp:
              (KJS::Identifier::rehash):
              * kjs/internal.cpp:
              (KJS::Parser::saveNewNode):
              (KJS::clearNewNodes):
              * kjs/interpreter.cpp:
              * kjs/lexer.cpp:
              (Lexer::doneParsing):
              (Lexer::makeIdentifier):
              (Lexer::makeUString):
              * kjs/list.cpp:
              * kjs/math_object.cpp:
              * kjs/nodes.cpp:
              * kjs/nodes.h:
              * kjs/nodes2string.cpp:
              * kjs/number_object.cpp:
              (integer_part_noexp):
              (char_sequence):
              * kjs/object.cpp:
              * kjs/object_object.cpp:
              * kjs/property_map.cpp:
              * kjs/property_slot.cpp:
              * kjs/protected_values.cpp:
              (KJS::ProtectedValues::rehash):
              * kjs/reference.cpp:
              * kjs/reference_list.cpp:
              * kjs/regexp.cpp:
              * kjs/regexp_object.cpp:
              * kjs/scope_chain.cpp:
              * kjs/scope_chain.h:
              * kjs/string_object.cpp:
              * kjs/testkjs.cpp:
              * kjs/ustring.h:
              * kjs/value.cpp:
              * kxmlcore/Assertions.mm:
              * kxmlcore/FastMalloc.cpp:
              (KXMLCore::InitSizeClasses):
              (KXMLCore::DLL_IsEmpty):
              (KXMLCore::DLL_Prepend):
              (KXMLCore::TCMalloc_Central_FreeList::Insert):
              (KXMLCore::TCMalloc_Central_FreeList::Remove):
              (KXMLCore::TCMalloc_Central_FreeList::Populate):
              (KXMLCore::TCMalloc_ThreadCache::Allocate):
              (KXMLCore::TCMalloc_ThreadCache::FetchFromCentralCache):
              (KXMLCore::fastMallocRegisterThread):
              (KXMLCore::TCMalloc_ThreadCache::GetCache):
              (KXMLCore::TCMalloc_ThreadCache::GetCacheIfPresent):
              (KXMLCore::TCMalloc_ThreadCache::CreateCacheIfNecessary):
              (KXMLCore::do_malloc):
              (KXMLCore::do_free):
              (KXMLCore::realloc):
              * kxmlcore/FastMalloc.h:
              (operator new):
              (operator delete):
              (operator new[]):
              (operator delete[]):
              * kxmlcore/HashTable.cpp:
              * kxmlcore/TCSpinLock.h:
              (TCMalloc_SpinLock::Lock):
              (TCMalloc_SpinLock::Unlock):
              (TCMalloc_SlowLock):
              * kxmlcore/TCSystemAlloc.cpp:
      
      WebCore:
      
              Reviewed by Darin.
      
      	<rdar://problem/4283967> REGRESSION: 3% regression on PLT from new FastMalloc
      	http://bugzilla.opendarwin.org/show_bug.cgi?id=5243
      
      	- use fastMalloc for everything - it now gets applied to all new/delete allocations
              via a private inline operator new that is now included into every file via config.h
      
              * WebCore.xcodeproj/project.pbxproj:
              * WebCorePrefix.h:
              * khtml/css/css_base.cpp:
              * khtml/css/css_base.h:
              * khtml/css/css_computedstyle.cpp:
              * khtml/css/css_ruleimpl.cpp:
              * khtml/css/css_stylesheetimpl.cpp:
              * khtml/css/css_valueimpl.cpp:
              * khtml/css/css_valueimpl.h:
              * khtml/css/csshelper.cpp:
              * khtml/css/cssparser.cpp:
              (ValueList::ValueList):
              (ValueList::~ValueList):
              (ValueList::addValue):
              (CSSParser::CSSParser):
              (CSSParser::~CSSParser):
              (CSSParser::setupParser):
              (CSSParser::addProperty):
              * khtml/css/cssstyleselector.cpp:
              * khtml/css/cssstyleselector.h:
              * khtml/dom/dom2_events.cpp:
              * khtml/dom/dom2_traversal.cpp:
              * khtml/dom/dom_misc.cpp:
              * khtml/dom/dom_string.cpp:
              * khtml/ecma/domparser.cpp:
              * khtml/ecma/kjs_binding.cpp:
              * khtml/ecma/kjs_css.cpp:
              * khtml/ecma/kjs_dom.cpp:
              * khtml/ecma/kjs_events.cpp:
              * khtml/ecma/kjs_html.cpp:
              (KJS::KJS::Context2DFunction::callAsFunction):
              (KJS::Gradient::~Gradient):
              (KJS::Gradient::addColorStop):
              (KJS::Gradient::colorStops):
              * khtml/ecma/kjs_navigator.cpp:
              * khtml/ecma/kjs_proxy.cpp:
              * khtml/ecma/kjs_range.cpp:
              * khtml/ecma/kjs_traversal.cpp:
              * khtml/ecma/kjs_views.cpp:
              * khtml/ecma/kjs_window.cpp:
              * khtml/ecma/xmlhttprequest.cpp:
              * khtml/ecma/xmlserializer.cpp:
              * khtml/editing/SelectionController.cpp:
              * khtml/editing/append_node_command.cpp:
              * khtml/editing/apply_style_command.cpp:
              * khtml/editing/break_blockquote_command.cpp:
              * khtml/editing/composite_edit_command.cpp:
              * khtml/editing/delete_from_text_node_command.cpp:
              * khtml/editing/delete_selection_command.cpp:
              * khtml/editing/edit_command.cpp:
              * khtml/editing/html_interchange.cpp:
              * khtml/editing/htmlediting.cpp:
              * khtml/editing/insert_into_text_node_command.cpp:
              * khtml/editing/insert_line_break_command.cpp:
              * khtml/editing/insert_node_before_command.cpp:
              * khtml/editing/insert_paragraph_separator_command.cpp:
              * khtml/editing/insert_text_command.cpp:
              * khtml/editing/join_text_nodes_command.cpp:
              * khtml/editing/jsediting.cpp:
              * khtml/editing/markup.cpp:
              * khtml/editing/merge_identical_elements_command.cpp:
              * khtml/editing/move_selection_command.cpp:
              * khtml/editing/rebalance_whitespace_command.cpp:
              * khtml/editing/remove_css_property_command.cpp:
              * khtml/editing/remove_node_attribute_command.cpp:
              * khtml/editing/remove_node_command.cpp:
              * khtml/editing/remove_node_preserving_children_command.cpp:
              * khtml/editing/replace_selection_command.cpp:
              * khtml/editing/set_node_attribute_command.cpp:
              * khtml/editing/split_element_command.cpp:
              * khtml/editing/split_text_node_command.cpp:
              * khtml/editing/split_text_node_containing_element.cpp:
              * khtml/editing/typing_command.cpp:
              * khtml/editing/visible_position.cpp:
              * khtml/editing/visible_range.cpp:
              * khtml/editing/visible_text.cpp:
              (khtml::CircularSearchBuffer::~CircularSearchBuffer):
              (khtml::CircularSearchBuffer::CircularSearchBuffer):
              * khtml/editing/visible_units.cpp:
              * khtml/editing/wrap_contents_in_dummy_span_command.cpp:
              * khtml/html/html_baseimpl.cpp:
              * khtml/html/html_blockimpl.cpp:
              * khtml/html/html_canvasimpl.cpp:
              * khtml/html/html_documentimpl.cpp:
              * khtml/html/html_elementimpl.cpp:
              * khtml/html/html_formimpl.cpp:
              * khtml/html/html_headimpl.cpp:
              * khtml/html/html_imageimpl.cpp:
              * khtml/html/html_inlineimpl.cpp:
              * khtml/html/html_listimpl.cpp:
              * khtml/html/html_miscimpl.cpp:
              * khtml/html/html_objectimpl.cpp:
              * khtml/html/html_tableimpl.cpp:
              * khtml/html/htmlfactory.cpp:
              * khtml/html/htmlnames.cpp:
              * khtml/html/htmlparser.cpp:
              * khtml/html/htmltokenizer.cpp:
              (khtml::HTMLTokenizer::enlargeBuffer):
              (khtml::HTMLTokenizer::enlargeScriptBuffer):
              * khtml/khtml_events.cpp:
              * khtml/khtml_part.cpp:
              * khtml/khtmlview.cpp:
              * khtml/misc/arena.cpp:
              * khtml/misc/arena.h:
              * khtml/misc/decoder.cpp:
              * khtml/misc/formdata.cpp:
              * khtml/misc/helper.cpp:
              * khtml/misc/loader.cpp:
              * khtml/misc/stringit.cpp:
              * khtml/rendering/bidi.cpp:
              * khtml/rendering/break_lines.cpp:
              * khtml/rendering/font.cpp:
              * khtml/rendering/render_arena.cpp:
              * khtml/rendering/render_block.cpp:
              * khtml/rendering/render_box.cpp:
              * khtml/rendering/render_br.cpp:
              * khtml/rendering/render_canvas.cpp:
              * khtml/rendering/render_canvasimage.cpp:
              (RenderCanvasImage::~RenderCanvasImage):
              (RenderCanvasImage::createDrawingContext):
              * khtml/rendering/render_container.cpp:
              * khtml/rendering/render_flexbox.cpp:
              * khtml/rendering/render_flow.cpp:
              * khtml/rendering/render_form.cpp:
              * khtml/rendering/render_frames.cpp:
              * khtml/rendering/render_image.cpp:
              * khtml/rendering/render_inline.cpp:
              * khtml/rendering/render_layer.cpp:
              * khtml/rendering/render_line.cpp:
              * khtml/rendering/render_list.cpp:
              * khtml/rendering/render_object.cpp:
              * khtml/rendering/render_replaced.cpp:
              * khtml/rendering/render_style.cpp:
              * khtml/rendering/render_style.h:
              * khtml/rendering/render_table.cpp:
              * khtml/rendering/render_text.cpp:
              * khtml/rendering/render_theme.cpp:
              * khtml/rendering/render_theme_mac.mm:
              * khtml/rendering/table_layout.cpp:
              * khtml/xbl/xbl_binding.cpp:
              * khtml/xbl/xbl_binding_manager.cpp:
              * khtml/xbl/xbl_docimpl.cpp:
              * khtml/xbl/xbl_protobinding.cpp:
              * khtml/xbl/xbl_protohandler.cpp:
              * khtml/xbl/xbl_protoimplementation.cpp:
              * khtml/xbl/xbl_tokenizer.cpp:
              * khtml/xml/EventNames.cpp:
              * khtml/xml/dom2_eventsimpl.cpp:
              * khtml/xml/dom2_eventsimpl.h:
              * khtml/xml/dom2_rangeimpl.cpp:
              * khtml/xml/dom2_rangeimpl.h:
              * khtml/xml/dom2_traversalimpl.cpp:
              * khtml/xml/dom2_traversalimpl.h:
              * khtml/xml/dom2_viewsimpl.cpp:
              * khtml/xml/dom2_viewsimpl.h:
              * khtml/xml/dom_atomicstring.cpp:
              * khtml/xml/dom_docimpl.cpp:
              * khtml/xml/dom_docimpl.h:
              * khtml/xml/dom_elementimpl.cpp:
              * khtml/xml/dom_elementimpl.h:
              * khtml/xml/dom_nodeimpl.cpp:
              * khtml/xml/dom_nodeimpl.h:
              * khtml/xml/dom_position.cpp:
              * khtml/xml/dom_qname.cpp:
              * khtml/xml/dom_stringimpl.cpp:
              * khtml/xml/dom_stringimpl.h:
              * khtml/xml/dom_textimpl.cpp:
              * khtml/xml/dom_xmlimpl.cpp:
              * khtml/xml/xml_tokenizer.cpp:
              * khtml/xsl/xsl_stylesheetimpl.cpp:
              * khtml/xsl/xslt_processorimpl.cpp:
              * kwq/DOM-CSS.mm:
              * kwq/DOM.mm:
              * kwq/DOMEvents.mm:
              * kwq/DOMHTML.mm:
              * kwq/DOMInternal.mm:
              (DOMString::DOMString):
              * kwq/DOMUtility.mm:
              * kwq/DOMViews.mm:
              * kwq/KWQAccObject.mm:
              * kwq/KWQAccObjectCache.mm:
              * kwq/KWQApplication.mm:
              * kwq/KWQArrayImpl.h:
              * kwq/KWQArrayImpl.mm:
              * kwq/KWQBuffer.mm:
              * kwq/KWQButton.mm:
              * kwq/KWQCString.mm:
              * kwq/KWQCharsets.mm:
              * kwq/KWQClipboard.mm:
              * kwq/KWQCollection.mm:
              * kwq/KWQColor.mm:
              * kwq/KWQComboBox.mm:
              * kwq/KWQCursor.mm:
              * kwq/KWQDateTime.mm:
              * kwq/KWQDictImpl.mm:
              * kwq/KWQEditCommand.mm:
              * kwq/KWQEvent.mm:
              * kwq/KWQExceptions.mm:
              * kwq/KWQFile.mm:
              * kwq/KWQFileButton.mm:
              * kwq/KWQFont.mm:
              * kwq/KWQFontFamily.h:
              * kwq/KWQFontFamily.mm:
              * kwq/KWQFontMetrics.mm:
              * kwq/KWQFormData.mm:
              * kwq/KWQFrame.mm:
              * kwq/KWQGlobal.mm:
              * kwq/KWQGuardedPtr.mm:
              * kwq/KWQKCharsets.mm:
              * kwq/KWQKConfigBase.mm:
              * kwq/KWQKCookieJar.mm:
              * kwq/KWQKCursor.mm:
              * kwq/KWQKGlobal.mm:
              * kwq/KWQKGlobalSettings.mm:
              * kwq/KWQKHTMLFactory.mm:
              * kwq/KWQKHTMLPart.cpp:
              * kwq/KWQKHTMLPart.mm:
              * kwq/KWQKHTMLPartBrowserExtension.mm:
              * kwq/KWQKHTMLView.mm:
              * kwq/KWQKHistoryProvider.mm:
              * kwq/KWQKJavaAppletWidget.mm:
              * kwq/KWQKJob.mm:
              * kwq/KWQKJobClasses.mm:
              * kwq/KWQKLocale.mm:
              * kwq/KWQKPartsBrowserInterface.mm:
              * kwq/KWQKPartsEvent.mm:
              * kwq/KWQKPartsPart.mm:
              * kwq/KWQKSSLKeyGen.mm:
              * kwq/KWQKStandardDirs.mm:
              * kwq/KWQKStringHandler.mm:
              * kwq/KWQKURL.mm:
              (KURL::KURL):
              (KURL::decode_string):
              (KURL::parse):
              (KURL::encode_string):
              (encodeRelativeString):
              * kwq/KWQKWin.mm:
              * kwq/KWQKWinModule.mm:
              * kwq/KWQLabel.mm:
              * kwq/KWQLineEdit.mm:
              * kwq/KWQListBox.mm:
              * kwq/KWQListImpl.mm:
              * kwq/KWQLoader.mm:
              (KWQIsResponseURLEqualToURL):
              * kwq/KWQMapImpl.h:
              * kwq/KWQMapImpl.mm:
              * kwq/KWQMovie.mm:
              * kwq/KWQObject.mm:
              * kwq/KWQPageState.mm:
              * kwq/KWQPaintDeviceMetrics.mm:
              * kwq/KWQPainter.mm:
              * kwq/KWQPalette.mm:
              * kwq/KWQPen.mm:
              * kwq/KWQPixmap.mm:
              * kwq/KWQPoint.mm:
              * kwq/KWQPointArray.mm:
              * kwq/KWQPtrDictImpl.mm:
              * kwq/KWQPushButton.mm:
              * kwq/KWQRect.mm:
              * kwq/KWQRegExp.mm:
              * kwq/KWQRegion.mm:
              * kwq/KWQRenderTreeDebug.cpp:
              * kwq/KWQResourceLoader.mm:
              * kwq/KWQScrollBar.mm:
              * kwq/KWQScrollView.mm:
              * kwq/KWQSignal.mm:
              * kwq/KWQSignalStubs.mm:
              * kwq/KWQSize.mm:
              * kwq/KWQSlider.mm:
              * kwq/KWQSlot.mm:
              * kwq/KWQString.h:
              * kwq/KWQString.mm:
              (ALLOC_CHAR):
              (REALLOC_CHAR):
              (DELETE_CHAR):
              (ALLOC_QCHAR):
              (REALLOC_QCHAR):
              (DELETE_QCHAR):
              (_printQStringAllocationStatistics):
              (allocateHandle):
              (KWQStringData::operator new):
              (KWQStringData::operator delete):
              (freeHandle):
              * kwq/KWQStringList.mm:
              * kwq/KWQStyle.mm:
              * kwq/KWQTextArea.mm:
              * kwq/KWQTextCodec.mm:
              * kwq/KWQTextEdit.mm:
              * kwq/KWQTextField.mm:
              * kwq/KWQTextStream.mm:
              * kwq/KWQTextUtilities.mm:
              * kwq/KWQTimer.mm:
              * kwq/KWQValueListImpl.h:
              * kwq/KWQValueListImpl.mm:
              * kwq/KWQVariant.mm:
              * kwq/KWQVectorImpl.mm:
              (KWQVectorImpl::KWQVectorImpl):
              (KWQVectorImpl::~KWQVectorImpl):
              (KWQVectorImpl::clear):
              (KWQVectorImpl::resize):
              (KWQVectorImpl::assign):
              * kwq/KWQWMatrix.mm:
              * kwq/KWQWidget.mm:
              * kwq/KWQWindowWidget.mm:
              * kwq/WebCoreBridge.mm:
              * kwq/WebCoreCache.mm:
              * kwq/WebCoreEncodings.mm:
              * kwq/WebCoreJavaScript.mm:
              * kwq/WebCoreScriptDebugger.mm:
              * kwq/WebCoreSettings.mm:
              * kwq/WebCoreTextRendererFactory.mm:
              * kwq/can-convert.mm:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@10701 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b64c50a2
  25. 23 Sep, 2004 1 commit
    • darin's avatar
      Reviewed by Ken. · e4b01dd1
      darin authored
              - added new VisibleRange class; not used yet
      
              * WebCore.pbproj/project.pbxproj: Added visible_range.h and visible_range.cpp.
              * khtml/editing/visible_range.cpp: Added.
              * khtml/editing/visible_range.h: Added.
      
              - tweaks
      
              * kwq/WebCoreBridge.mm: (-[WebCoreBridge alterCurrentSelection:direction:granularity:]):
              Use switch statement instead of if statement so we get a warning if we ever add a new
              granularity.
      
              * khtml/editing/selection.h: khtml, not DOM, namespace
              * khtml/editing/visible_position.h: Ditto.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@7654 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e4b01dd1
  26. 21 Jan, 2003 1 commit
  27. 31 May, 2002 1 commit
    • darin's avatar
      Remove some unused stuff; total of 1000s of lines. · 23918b0e
      darin authored
      	* Makefile.am: Removed some strange uses of "./" and
      	improved stamp-related rules.
      
      	* WebCore-tests.exp: Removed QDir functions.
      
      	* khtml/Makefile.am: Removed java subdirectory.
      	* khtml/java/*: Removed.
      	* khtml/rendering/render_applet.cpp: Rearrange APPLE_CHANGES so
      	that we use our own KJavaAppletWidget rather than a QWidget.
      	* kwq/khtml/java/kjavaappletcontext.h: Added.
      	* kwq/khtml/java/kjavaappletwidget.h: Added.
      	* kwq/KWQKJavaAppletWidget.mm: Added. Replaces WCJavaAppletWidget.mm.
      	* kwq/KWQsignals.mm: Removed java-related signals.
      
      	* khtml/css/Makefile.am:
      	* khtml/misc/Makefile.am:
      	Improve stamp-related rules.
      
      	* khtml/misc/loader.cpp: Move around and add ifdefs so we don't
      	need as much KWQ code. Maybe revisit this later -- related to the
      	KDE implementation of animated and progressive loading images,
      	which we probably don't need, but it may integrate slightly better than
      	doing our hacks inside QPixmap.
      
      	* kwq/KWQApplication.mm:
      	* kwq/KWQFontInfo.mm:
      	* kwq/KWQInputDialog.mm:
      	* kwq/KWQKFileDialog.mm:
      	* kwq/KWQKHTMLPartBrowserExtension.mm:
      	* kwq/KWQKWin.mm:
      	* kwq/KWQKWinModule.mm:
      	* kwq/KWQKstddirs.mm:
      	* kwq/KWQPixmap.mm:
      	Simplified, removed unused code, minor tweaks.
      
      	* kwq/Makefile.am: Removed all the old files, added some new ones.
      	* kwq/KWQBitmap.mm: Removed.
      	* kwq/KWQBrush.mm: Removed.
      	* kwq/KWQDCOPClient.mm: Removed.
      	* kwq/KWQDataStream.h: Removed.
      	* kwq/KWQDir.mm: Removed.
      	* kwq/KWQFontDatabase.mm: Removed.
      	* kwq/KWQImage.mm: Removed.
      	* kwq/KWQKInstance.mm: Removed.
      	* kwq/KWQPaintDevice.mm: Removed.
      	* kwq/KWQPart.mm: Removed.
      	* kwq/KWQasyncimageio.mm: Removed.
      	* kwq/KWQasyncio.mm: Removed.
      	* kwq/KWQbrowserextension.mm: Removed.
      	* kwq/WCJavaAppletWidget.h: Removed.
      	* kwq/WCJavaAppletWidget.mm: Removed.
      	* kwq/qt/qdatastream.h: Removed.
      	* kwq/qt/qdir.h: Removed.
      	* kwq/qt/qlayout.h: Removed.
      
      	* kwq/KWQCursor.mm:
      	(QCursor::handle): Return the cursor object as an integer rather than
      	just returning 0; makes the code that uses handle() more likely to work
      	although it introduces a 64-bit cleanliness problem.
      
      	* kwq/KWQEvent.mm: Initialize event type in QEvent subclasses.
      
      	* kwq/WebCoreImageRenderer.h: Added NSObject and NSCopying protocols to
      	the WebCoreImageRenderer protocol.
      
      	* kwq/kwqdebug.h: Use displayableString in DEBUG_OBJECT for better logging.
      
      	* kwq/dcop/dcopclient.h:
      	* kwq/kdecore/kstddirs.h:
      	* kwq/kdecore/kwin.h:
      	* kwq/kdecore/kwinmodule.h:
      	* kwq/kfile/kfiledialog.h:
      	* kwq/kparts/browserextension.h:
      	* kwq/kparts/event.h:
      	* kwq/qt/qapplication.h:
      	* kwq/qt/qasyncimageio.h:
      	* kwq/qt/qasyncio.h:
      	* kwq/qt/qbitmap.h:
      	* kwq/qt/qbrush.h:
      	* kwq/qt/qbutton.h:
      	* kwq/qt/qcheckbox.h:
      	* kwq/qt/qcollection.h:
      	* kwq/qt/qcolor.h:
      	* kwq/qt/qcombobox.h:
      	* kwq/qt/qcursor.h:
      	* kwq/qt/qdrawutil.h:
      	* kwq/qt/qevent.h:
      	* kwq/qt/qfont.h:
      	* kwq/qt/qfontdatabase.h:
      	* kwq/qt/qfontinfo.h:
      	* kwq/qt/qimage.h:
      	* kwq/qt/qinputdialog.h:
      	* kwq/qt/qintcache.h:
      	* kwq/qt/qintdict.h:
      	* kwq/qt/qpaintdevice.h:
      	* kwq/qt/qpixmap.h:
      	* kwq/qt/qstring.h:
      	Removed lots of unused stuff, including old conditionals and the like.
      
      	* khtml/khtml_part.cpp:
      	(KHTMLPart::khtmlMouseMoveEvent): Add missing parenthesis.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@1245 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      23918b0e
  28. 05 Oct, 2001 1 commit
  29. 10 Sep, 2001 1 commit
  30. 06 Sep, 2001 2 commits
  31. 05 Sep, 2001 2 commits
  32. 30 Aug, 2001 1 commit
  33. 27 Aug, 2001 1 commit
  34. 24 Aug, 2001 1 commit