1. 23 Sep, 2007 1 commit
    • zecke's avatar
      /: · 2752405f
      zecke authored
      2007-09-20  Holger Hans Peter Freyther  <zecke@selfish.org>
      
              Rubber stamped by Adam.
      
              Renamed files from *Gdk to *Gtk (see #14732) using the
              work of Juan A. Suarez Romero as a base.
      
              GDK -> GTK
      
              * WebKit.pri:
              * WebKit.pro:
      
      JavaScriptCore:
      2007-09-20  Holger Hans Peter Freyther  <zecke@selfish.org>
      
              Rubber stamped by Adam.
      
              Renamed files from *Gdk to *Gtk (see #14732) using the
              work of Juan A. Suarez Romero as a base.
      
              GDK -> GTK 
      
              * JavaScriptCore.pri:
              * kjs/testkjs.pro:
              * pcre/dftables.pro:
              * wtf/Platform.h: PLATFORM(GDK) to PLATFORM(GTK)
      
      WebCore:
      2007-09-20  Holger Hans Peter Freyther  <zecke@selfish.org>
      
              Rubber stamped by Adam.
      
              Renamed files from *Gdk to *Gtk (see #14732) using the
              work of Juan A. Suarez Romero as a base.
      
              GDK -> GTK
      
              * Projects/gdk/webcore-gdk.bkl:
              * WebCore.pro:
              * WebCoreSources.bkl:
              * loader/gdk: Removed.
              * loader/gdk/DocumentLoaderGdk.cpp: Removed.
              * loader/gtk: Added.
              * loader/gtk/DocumentLoaderGdk.cpp: Removed.
              * loader/gtk/DocumentLoaderGtk.cpp: Added.
              * page/FrameView.cpp:
              * page/FrameView.h:
              * page/gdk: Removed.
              * page/gdk/DragControllerGdk.cpp: Removed.
              * page/gdk/EventHandlerGdk.cpp: Removed.
              * page/gdk/FrameGdk.cpp: Removed.
              * page/gtk: Added.
              * page/gtk/DragControllerGdk.cpp: Removed.
              * page/gtk/DragControllerGtk.cpp: Added.
              * page/gtk/EventHandlerGdk.cpp: Removed.
              * page/gtk/EventHandlerGtk.cpp: Added.
              (WebCore::EventHandler::createDraggingClipboard):
              * page/gtk/FrameGdk.cpp: Removed.
              * page/gtk/FrameGtk.cpp: Added.
              * platform/ContextMenuItem.h:
              * platform/Cursor.h:
              * platform/DragData.h:
              * platform/DragImage.h:
              * platform/FontData.h:
              * platform/NotImplemented.h:
              * platform/PlatformKeyboardEvent.h:
              * platform/PlatformMenuDescription.h:
              * platform/PlatformMouseEvent.h:
              * platform/PlatformWheelEvent.h:
              * platform/ScrollView.h:
              * platform/Widget.h:
              * platform/gdk: Removed.
              * platform/gdk/ClipboardGdk.cpp: Removed.
              * platform/gdk/ClipboardGdk.h: Removed.
              * platform/gdk/ContextMenuGdk.cpp: Removed.
              * platform/gdk/ContextMenuItemGdk.cpp: Removed.
              * platform/gdk/CookieJarGdk.cpp: Removed.
              * platform/gdk/CursorGdk.cpp: Removed.
              * platform/gdk/DragDataGdk.cpp: Removed.
              * platform/gdk/DragImageGdk.cpp: Removed.
              * platform/gdk/FileChooserGdk.cpp: Removed.
              * platform/gdk/FileSystemGdk.cpp: Removed.
              * platform/gdk/FontCacheGdk.cpp: Removed.
              * platform/gdk/FontDataGdk.cpp: Removed.
              * platform/gdk/FontGdk.cpp: Removed.
              * platform/gdk/FontPlatformData.h: Removed.
              * platform/gdk/FontPlatformDataGdk.cpp: Removed.
              * platform/gdk/GlyphPageTreeNodeGdk.cpp: Removed.
              * platform/gdk/KeyEventGdk.cpp: Removed.
              * platform/gdk/KeyboardCodes.h: Removed.
              * platform/gdk/LocalizedStringsGdk.cpp: Removed.
              * platform/gdk/LoggingGdk.cpp: Removed.
              * platform/gdk/MIMETypeRegistryGdk.cpp: Removed.
              * platform/gdk/MouseEventGdk.cpp: Removed.
              * platform/gdk/PasteboardGdk.cpp: Removed.
              * platform/gdk/PlatformScreenGdk.cpp: Removed.
              * platform/gdk/PlatformScrollBar.h: Removed.
              * platform/gdk/PlatformScrollBarGdk.cpp: Removed.
              * platform/gdk/PopupMenuGdk.cpp: Removed.
              * platform/gdk/RenderThemeGdk.cpp: Removed.
              * platform/gdk/RenderThemeGdk.h: Removed.
              * platform/gdk/ScrollViewGdk.cpp: Removed.
              * platform/gdk/SearchPopupMenuGdk.cpp: Removed.
              * platform/gdk/SharedTimerLinux.cpp: Removed.
              * platform/gdk/SoundGdk.cpp: Removed.
              * platform/gdk/SystemTimeLinux.cpp: Removed.
              * platform/gdk/TemporaryLinkStubs.cpp: Removed.
              * platform/gdk/WheelEventGdk.cpp: Removed.
              * platform/gdk/WidgetGdk.cpp: Removed.
              * platform/graphics/GraphicsContext.h:
              * platform/graphics/cairo/GraphicsContextCairo.cpp:
              (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
              (WebCore::GraphicsContext::setPlatformFont):
              * platform/graphics/gdk: Removed.
              * platform/graphics/gdk/IconGdk.cpp: Removed.
              * platform/graphics/gdk/ImageGdk.cpp: Removed.
              * platform/graphics/gtk: Added.
              * platform/graphics/gtk/IconGdk.cpp: Removed.
              * platform/graphics/gtk/IconGtk.cpp: Added.
              * platform/graphics/gtk/ImageGdk.cpp: Removed.
              * platform/graphics/gtk/ImageGtk.cpp: Added.
              * platform/gtk: Added.
              * platform/gtk/ClipboardGdk.cpp: Removed.
              * platform/gtk/ClipboardGdk.h: Removed.
              * platform/gtk/ClipboardGtk.cpp: Added.
              (WebCore::ClipboardGtk::ClipboardGtk):
              (WebCore::ClipboardGtk::~ClipboardGtk):
              (WebCore::ClipboardGtk::clearData):
              (WebCore::ClipboardGtk::clearAllData):
              (WebCore::ClipboardGtk::getData):
              (WebCore::ClipboardGtk::setData):
              (WebCore::ClipboardGtk::types):
              (WebCore::ClipboardGtk::dragLocation):
              (WebCore::ClipboardGtk::dragImage):
              (WebCore::ClipboardGtk::setDragImage):
              (WebCore::ClipboardGtk::dragImageElement):
              (WebCore::ClipboardGtk::setDragImageElement):
              (WebCore::ClipboardGtk::createDragImage):
              (WebCore::ClipboardGtk::declareAndWriteDragImage):
              (WebCore::ClipboardGtk::writeURL):
              (WebCore::ClipboardGtk::writeRange):
              (WebCore::ClipboardGtk::hasData):
              * platform/gtk/ClipboardGtk.h: Added.
              * platform/gtk/ContextMenuGdk.cpp: Removed.
              * platform/gtk/ContextMenuGtk.cpp: Added.
              * platform/gtk/ContextMenuItemGdk.cpp: Removed.
              * platform/gtk/ContextMenuItemGtk.cpp: Added.
              * platform/gtk/CookieJarGdk.cpp: Removed.
              * platform/gtk/CookieJarGtk.cpp: Added.
              * platform/gtk/CursorGdk.cpp: Removed.
              * platform/gtk/CursorGtk.cpp: Added.
              * platform/gtk/DragDataGdk.cpp: Removed.
              * platform/gtk/DragDataGtk.cpp: Added.
              * platform/gtk/DragImageGdk.cpp: Removed.
              * platform/gtk/DragImageGtk.cpp: Added.
              * platform/gtk/FileChooserGdk.cpp: Removed.
              * platform/gtk/FileChooserGtk.cpp: Added.
              * platform/gtk/FileSystemGdk.cpp: Removed.
              * platform/gtk/FileSystemGtk.cpp: Added.
              * platform/gtk/FontCacheGdk.cpp: Removed.
              * platform/gtk/FontCacheGtk.cpp: Added.
              * platform/gtk/FontDataGdk.cpp: Removed.
              * platform/gtk/FontDataGtk.cpp: Added.
              * platform/gtk/FontGdk.cpp: Removed.
              * platform/gtk/FontGtk.cpp: Added.
              * platform/gtk/FontPlatformDataGdk.cpp: Removed.
              * platform/gtk/FontPlatformDataGtk.cpp: Added.
              * platform/gtk/GlyphPageTreeNodeGdk.cpp: Removed.
              * platform/gtk/GlyphPageTreeNodeGtk.cpp: Added.
              * platform/gtk/KeyEventGdk.cpp: Removed.
              * platform/gtk/KeyEventGtk.cpp: Added.
              * platform/gtk/LocalizedStringsGdk.cpp: Removed.
              * platform/gtk/LocalizedStringsGtk.cpp: Added.
              * platform/gtk/LoggingGdk.cpp: Removed.
              * platform/gtk/LoggingGtk.cpp: Added.
              * platform/gtk/MIMETypeRegistryGdk.cpp: Removed.
              * platform/gtk/MIMETypeRegistryGtk.cpp: Added.
              * platform/gtk/MouseEventGdk.cpp: Removed.
              * platform/gtk/MouseEventGtk.cpp: Added.
              * platform/gtk/PasteboardGdk.cpp: Removed.
              * platform/gtk/PasteboardGtk.cpp: Added.
              * platform/gtk/PlatformScreenGdk.cpp: Removed.
              * platform/gtk/PlatformScreenGtk.cpp: Added.
              * platform/gtk/PlatformScrollBarGdk.cpp: Removed.
              * platform/gtk/PlatformScrollBarGtk.cpp: Added.
              * platform/gtk/PopupMenuGdk.cpp: Removed.
              * platform/gtk/PopupMenuGtk.cpp: Added.
              * platform/gtk/RenderThemeGdk.cpp: Removed.
              * platform/gtk/RenderThemeGdk.h: Removed.
              * platform/gtk/RenderThemeGtk.cpp: Added.
              (WebCore::theme):
              (WebCore::RenderThemeGtk::RenderThemeGtk):
              (WebCore::RenderThemeGtk::close):
              (WebCore::RenderThemeGtk::addIntrinsicMargins):
              (WebCore::RenderThemeGtk::supportsFocus):
              (WebCore::RenderThemeGtk::determineState):
              (WebCore::RenderThemeGtk::determineShadow):
              (WebCore::RenderThemeGtk::getThemeData):
              (WebCore::RenderThemeGtk::setCheckboxSize):
              (WebCore::RenderThemeGtk::paintCheckbox):
              (WebCore::RenderThemeGtk::setRadioSize):
              (WebCore::RenderThemeGtk::paintRadio):
              (WebCore::RenderThemeGtk::paintButton):
              (WebCore::RenderThemeGtk::adjustTextFieldStyle):
              (WebCore::RenderThemeGtk::paintTextField):
              (WebCore::RenderThemeGtk::paintTextArea):
              (WebCore::RenderThemeGtk::adjustButtonStyle):
              (WebCore::RenderThemeGtk::systemFont):
              (WebCore::RenderThemeGtk::gtkButton):
              (WebCore::RenderThemeGtk::gtkCheckbox):
              (WebCore::RenderThemeGtk::gtkRadioButton):
              (WebCore::RenderThemeGtk::gtkWindowContainer):
              * platform/gtk/RenderThemeGtk.h: Added.
              * platform/gtk/ScrollViewGdk.cpp: Removed.
              * platform/gtk/ScrollViewGtk.cpp: Added.
              * platform/gtk/SearchPopupMenuGdk.cpp: Removed.
              * platform/gtk/SearchPopupMenuGtk.cpp: Added.
              * platform/gtk/SoundGdk.cpp: Removed.
              * platform/gtk/SoundGtk.cpp: Added.
              * platform/gtk/WheelEventGdk.cpp: Removed.
              * platform/gtk/WheelEventGtk.cpp: Added.
              * platform/gtk/WidgetGdk.cpp: Removed.
              * platform/gtk/WidgetGtk.cpp: Added.
              * platform/network/ResourceHandle.h:
      
      WebKitTools:
      2007-09-20  Holger Hans Peter Freyther  <zecke@selfish.org>
      
              Rubber stamped by Adam.
      
              * GdkLauncher: Removed.
              * GdkLauncher/Bakefiles.bkgen: Removed.
              * GdkLauncher/ENV: Removed.
              * GdkLauncher/GdkLauncher.pro: Removed.
              * GdkLauncher/gdklauncher.bkl: Removed.
              * GdkLauncher/main.cpp: Removed.
              * GdkLauncher/mk: Removed.
              * GdkLauncher/simple.svg: Removed.
              * GdkLauncher/text.html: Removed.
              * GtkLauncher: Added.
              * GtkLauncher/GdkLauncher.pro: Removed.
              * GtkLauncher/GtkLauncher.pro: Added.
              * GtkLauncher/main.cpp:
              (updateWindowTitle):
              (main):
              * Scripts/build-webkit:
              * Scripts/regenerate-makefiles:
              * Scripts/run-javascriptcore-tests:
              * Scripts/run-launcher:
              * Scripts/run-webkit-tests:
              * Scripts/webkitdirs.pm:
      
      
      
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@25703 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      2752405f
  2. 09 Jul, 2007 1 commit
  3. 20 Jun, 2007 1 commit
    • aroben's avatar
      Land the new Inspector. · dfc5666e
      aroben authored
      WebCore:
      
              Land the new Inspector.
      
              Co-written with Tim Hatcher.
      
              Reviewed by Anders, Adele, Hyatt, and Sam.
      
              No regression tests possible.
      
              Add a new InspectorController that is in charge of the Inspector. It
              has an InspectorClient that controls the Inspector's window and node
              highlight.
      
              * page/InspectorClient.h: Added.
              (WebCore::InspectorClient::~InspectorClient):
              * page/InspectorController.cpp: Added.
              (WebCore::ConsoleMessage::ConsoleMessage):
              (WebCore::InspectorResource::): Represents a single resource that the
              Inspector knows about.
              (WebCore::InspectorResource::InspectorResource):
              (WebCore::InspectorResource::~InspectorResource):
              (WebCore::InspectorResource::type):
              (WebCore::InspectorResource::setScriptObject):
              (WebCore::addSourceToFrame): Callback available from JS.
              (WebCore::getResourceDocumentNode): Ditto.
              (WebCore::highlightDOMNode): Ditto.
              (WebCore::hideDOMNodeHighlight): Ditto.
              (WebCore::loaded): Ditto.
              (WebCore::unloading): Ditto.
              (WebCore::attach): Ditto.
              (WebCore::detach): Ditto.
              (WebCore::log): Ditto.
              (WebCore::search): Ditto.
              (WebCore::inspectedWindow): Ditto.
              (WebCore::InspectorController::InspectorController):
              (WebCore::InspectorController::~InspectorController):
              (WebCore::InspectorController::inspect): Called by
              ContextMenuController to inspect a node.
              (WebCore::InspectorController::focusNode):
              (WebCore::InspectorController::highlight):
              (WebCore::InspectorController::hideHighlight):
              (WebCore::InspectorController::windowVisible):
              (WebCore::InspectorController::setWindowVisible):
              (WebCore::InspectorController::addMessageToConsole):
              (WebCore::InspectorController::attachWindow):
              (WebCore::InspectorController::detachWindow):
              (WebCore::InspectorController::windowScriptObjectAvailable):
              (WebCore::InspectorController::scriptObjectReady):
              (WebCore::InspectorController::windowUnloading):
              (WebCore::addHeaders): Static helper function.
              (WebCore::objectForRequest): Ditto.
              (WebCore::objectForResponse): Ditto.
              (WebCore::InspectorController::addScriptResource):
              (WebCore::InspectorController::addAndUpdateScriptResource):
              (WebCore::InspectorController::removeScriptResource):
              (WebCore::InspectorController::updateScriptResource):
              (WebCore::InspectorController::populateScriptResources):
              (WebCore::InspectorController::addScriptConsoleMessage):
              (WebCore::callClearFunction): Static helper function.
              (WebCore::InspectorController::clearScriptResources):
              (WebCore::InspectorController::clearScriptConsoleMessages):
              (WebCore::InspectorController::clearNetworkTimeline):
              (WebCore::InspectorController::pruneResources):
              (WebCore::InspectorController::didCommitLoad): Callback from
              FrameLoader.
              (WebCore::InspectorController::frameDetachedFromParent): Ditto.
              (WebCore::InspectorController::addResource): Ditto.
              (WebCore::InspectorController::removeResource): Ditto.
              (WebCore::InspectorController::didLoadResourceFromMemoryCache): Ditto.
              (WebCore::InspectorController::identifierForInitialRequest): Ditto.
              (WebCore::InspectorController::willSendRequest): Ditto.
              (WebCore::InspectorController::didReceiveResponse): Ditto.
              (WebCore::InspectorController::didReceiveContentLength): Ditto.
              (WebCore::InspectorController::didFinishLoading): Ditto.
              (WebCore::InspectorController::didFailLoading): Ditto.
              * page/InspectorController.h: Added.
              (WebCore::InspectorController::inspectedPage):
              (WebCore::InspectorController::scriptContext):
              (WebCore::InspectorController::setScriptContext):
              (WebCore::InspectorController::resources):
              (WebCore::InspectorController::removeAllResources):
      
              Add the JavaScript that defines most of the behavior of the Inspector.
      
              * page/inspector/ConsolePanel.js: Added.
              * page/inspector/NetworkPanel.js: Added.
              * page/inspector/Resource.js: Added.
              * page/inspector/ResourceCategory.js: Added.
              * page/inspector/ResourcePanel.js: Added.
              * page/inspector/inspector.js: Added.
              * page/inspector/treeoutline.js: Renamed from WebKit/WebInspector/webInspector/treeoutline.js.
              * page/inspector/utilities.js: Added.
      
              Add the Inspector's CSS and HTML.
      
              * page/inspector/inspector.css: Added.
              * page/inspector/inspector.html: Added.
      
              Hang the InspectorController off of Page. We only create an
              InspectorController if an InspectorClient is given to the Page.
      
              * page/Page.cpp:
              (WebCore::Page::Page):
              * page/Page.h:
              (WebCore::Page::inspectorController):
      
              Use FrameLoader to notify the InspectorController of resource loads.
      
              * loader/FrameLoader.cpp:
              (WebCore::FrameLoader::begin):
              (WebCore::FrameLoader::transitionToCommitted):
              (WebCore::FrameLoader::continueLoadAfterWillSubmitForm):
              (WebCore::FrameLoader::detachFromParent):
              (WebCore::FrameLoader::assignIdentifierToInitialRequest):
              (WebCore::FrameLoader::willSendRequest):
              (WebCore::FrameLoader::didReceiveResponse):
              (WebCore::FrameLoader::didReceiveData):
              (WebCore::FrameLoader::sendRemainingDelegateMessages):
              (WebCore::FrameLoader::requestFromDelegate):
              (WebCore::FrameLoader::didFinishLoad):
              (WebCore::FrameLoader::dispatchWindowObjectAvailable):
              (WebCore::FrameLoader::dispatchDidCommitLoad):
              (WebCore::FrameLoader::dispatchAssignIdentifierToInitialRequest):
              (WebCore::FrameLoader::dispatchWillSendRequest):
              (WebCore::FrameLoader::dispatchDidReceiveResponse):
              (WebCore::FrameLoader::dispatchDidReceiveContentLength):
              (WebCore::FrameLoader::dispatchDidFinishLoading):
              (WebCore::FrameLoader::dispatchDidLoadResourceFromMemoryCache):
              * loader/FrameLoader.h:
      
              Send console messages to the InspectorController.
      
              * page/Chrome.cpp:
              (WebCore::Chrome::addMessageToConsole): Send all console messages to
              the InspectorController.
              * page/Chrome.h: Add a new MessageLevel and MessageSource that are
              used in the Inspector JS.
      
              Report HTML errors when the Inspector window is open.
              We don't report errors when the window is closed because we don't want
              to slow down the HTMLTokenizer.
      
              * html/HTMLDocument.cpp:
              (WebCore::HTMLDocument::createTokenizer):
              * html/HTMLParser.cpp:
              (WebCore::HTMLParser::HTMLParser):
              * html/HTMLParser.h:
              * html/HTMLTokenizer.cpp:
              (WebCore::HTMLTokenizer::HTMLTokenizer):
              * html/HTMLTokenizer.h:
      
              Append the "Inspect Element" context menu item after passing the
              context menu to the ContextMenuClient. This work used to be done in
              WebKit.
      
              * page/ContextMenuClient.h:
              * page/ContextMenuController.cpp:
              (WebCore::ContextMenuController::handleContextMenuEvent): Add the
              "Inspect Element" item.
              (WebCore::ContextMenuController::contextMenuItemSelected): Handle the
              "Inspect Element" item.
              * platform/ContextMenu.cpp:
              (WebCore::ContextMenu::addInspectElementItem):
              (WebCore::ContextMenu::checkOrEnableIfNeeded): Updated for "Inspect
              Element" item.
              * platform/ContextMenu.h:
              * platform/ContextMenuItem.h:
              (WebCore::): Add ContextMenuItemTagInspectElement.
              * platform/graphics/svg/SVGImageEmptyClients.h:
              * page/mac/WebCoreViewFactory.h: Add the "Inspect Element" localized
              string.
              * platform/LocalizedStrings.h: Ditto.
              * platform/mac/LocalizedStringsMac.mm:
              (WebCore::contextMenuItemTagInspectElement): Ditto.
      
              Miscellaneous changes:
      
              * css/view-source.css: Add message bubble styles.
              * loader/DocumentLoader.h: Add a frame getter.
              * platform/win/ScrollViewWin.cpp:
              (WebCore::ScrollView::updateScrollbars): Respect
              Frame::prohibitsScrolling.
      
              Add new images needed for the Inspector.
      
              * page/inspector/Images/attachedShadow.png: Added.
              * page/inspector/Images/bottomShadow.png: Added.
              * page/inspector/Images/breadcrumbBackground.png: Added.
              * page/inspector/Images/checker.png: Added.
              * page/inspector/Images/console.png: Added.
              * page/inspector/Images/darkShadow.png: Added.
              * page/inspector/Images/disclosureDownPressed.png: Added.
              * page/inspector/Images/disclosureRightDown.png: Added.
              * page/inspector/Images/disclosureRightPressed.png: Added.
              * page/inspector/Images/document.png: Added.
              * page/inspector/Images/domViewButton.png: Added.
              * page/inspector/Images/domViewButtonSelected.png: Added.
              * page/inspector/Images/downTriangle.png: Added.
              * page/inspector/Images/errorIcon.png: Added.
              * page/inspector/Images/errorMediumIcon.png: Added.
              * page/inspector/Images/folder.png: Added.
              * page/inspector/Images/goArrow.png: Added.
              * page/inspector/Images/gradient.png: Added.
              * page/inspector/Images/gradientHighlight.png: Added.
              * page/inspector/Images/gradientHighlightBottom.png: Added.
              * page/inspector/Images/hideStatusWidget.png: Added.
              * page/inspector/Images/hideStatusWidgetPressed.png: Added.
              * page/inspector/Images/network.png: Added.
              * page/inspector/Images/paneBottomGrow.png: Added.
              * page/inspector/Images/paneBottomGrowActive.png: Added.
              * page/inspector/Images/paneGrowHandleLine.png: Added.
              * page/inspector/Images/paneHeader.png: Added.
              * page/inspector/Images/paneHeaderActive.png: Added.
              * page/inspector/Images/plainDocument.png: Added.
              * page/inspector/Images/popupArrows.png: Added.
              * page/inspector/Images/rightTriangle.png: Added.
              * page/inspector/Images/segment.png: Added.
              * page/inspector/Images/segmentEnd.png: Added.
              * page/inspector/Images/segmentHover.png: Added.
              * page/inspector/Images/segmentHoverEnd.png: Added.
              * page/inspector/Images/segmentSelected.png: Added.
              * page/inspector/Images/segmentSelectedEnd.png: Added.
              * page/inspector/Images/showStatusWidget.png: Added.
              * page/inspector/Images/showStatusWidgetPressed.png: Added.
              * page/inspector/Images/sidbarItemBackground.png: Added.
              * page/inspector/Images/sidebarActionWidget.png: Added.
              * page/inspector/Images/sidebarActionWidgetPressed.png: Added.
              * page/inspector/Images/sidebarAttachWidget.png: Added.
              * page/inspector/Images/sidebarAttachWidgetPressed.png: Added.
              * page/inspector/Images/sidebarDetachWidget.png: Added.
              * page/inspector/Images/sidebarDetachWidgetPressed.png: Added.
              * page/inspector/Images/sidebarResizeWidget.png: Added.
              * page/inspector/Images/sidebarSelection.png: Added.
              * page/inspector/Images/sidebarSelectionBlurred.png: Added.
              * page/inspector/Images/sidebarSelectionBlurredTall.png: Added.
              * page/inspector/Images/sidebarSelectionGray.png: Added.
              * page/inspector/Images/sidebarSelectionGrayTall.png: Added.
              * page/inspector/Images/sidebarSelectionTall.png: Added.
              * page/inspector/Images/sidebarStatusAreaBackground.png: Added.
              * page/inspector/Images/sourceViewButton.png: Added.
              * page/inspector/Images/sourceViewButtonSelected.png: Added.
              * page/inspector/Images/splitviewDimple.png: Added.
              * page/inspector/Images/splitviewDividerBackground.png: Added.
              * page/inspector/Images/tab.png: Added.
              * page/inspector/Images/tabSelected.png: Added.
              * page/inspector/Images/timelinePillBlue.png: Added.
              * page/inspector/Images/timelinePillGray.png: Added.
              * page/inspector/Images/timelinePillGreen.png: Added.
              * page/inspector/Images/timelinePillOrange.png: Added.
              * page/inspector/Images/timelinePillPurple.png: Added.
              * page/inspector/Images/timelinePillRed.png: Added.
              * page/inspector/Images/timelinePillYellow.png: Added.
              * page/inspector/Images/tipBalloon.png: Added.
              * page/inspector/Images/tipBalloonBottom.png: Added.
              * page/inspector/Images/tipIcon.png: Added.
              * page/inspector/Images/tipIconPressed.png: Added.
              * page/inspector/Images/toggleDown.png: Added.
              * page/inspector/Images/toggleUp.png: Added.
              * page/inspector/Images/toolbarBackground.png: Added.
              * page/inspector/Images/toolbarBackgroundInactive.png: Added.
              * page/inspector/Images/toolbarButton.png: Added.
              * page/inspector/Images/toolbarButtonInactive.png: Added.
              * page/inspector/Images/toolbarButtonPressed.png: Added.
              * page/inspector/Images/toolbarButtonPressedInactive.png: Added.
              * page/inspector/Images/toolbarSplitButtonDivider.png: Added.
              * page/inspector/Images/toolbarSplitButtonDividerInactive.png: Added.
              * page/inspector/Images/treeDownTriangleBlack.png: Added.
              * page/inspector/Images/treeDownTriangleWhite.png: Added.
              * page/inspector/Images/treeLeftTriangleBlack.png: Added.
              * page/inspector/Images/treeRightTriangleBlack.png: Added.
              * page/inspector/Images/treeRightTriangleWhite.png: Added.
              * page/inspector/Images/warningIcon.png: Added.
              * page/inspector/Images/warningMediumIcon.png: Added.
              * page/inspector/Images/warningsErrors.png: Added.
      
              Build-fu:
      
              * WebCore.exp: Added new symbols.
              * WebCore.xcodeproj/project.pbxproj: Added new source files and
              resources.
              * WebCore.vcproj/WebCore.vcproj: Ditto, and copy the resources to
              $WebKitOutputDir.
      
              Windows build fixes:
      
              * history/HistoryItem.h: ResourceRequest is a struct.
              * loader/FrameLoaderClient.h: Ditto.
      
      WebKit:
      
              Land the new Inspector.
      
              Co-written with Tim Hatcher.
      
              Reviewed by Anders, Adele, Hyatt, and Sam.
      
              Implement the InspectorClient interface.
      
              * WebCoreSupport/WebInspectorClient.h: Added.
              * WebCoreSupport/WebInspectorClient.mm: Added.
              (WebInspectorClient::WebInspectorClient):
              (WebInspectorClient::inspectorDestroyed):
              (WebInspectorClient::createPage):
              (WebInspectorClient::showWindow):
              (WebInspectorClient::closeWindow):
              (WebInspectorClient::attachWindow):
              (WebInspectorClient::detachWindow):
              (WebInspectorClient::highlight):
              (WebInspectorClient::hideHighlight):
              (WebInspectorClient::inspectedURLChanged):
              (WebInspectorClient::updateWindowTitle):
              (-[WebInspectorWindowController init]):
              (-[WebInspectorWindowController initWithInspectedWebView:]):
              (-[WebInspectorWindowController dealloc]):
              (-[WebInspectorWindowController inspectorVisible]):
              (-[WebInspectorWindowController webView]):
              (-[WebInspectorWindowController window]):
              (-[WebInspectorWindowController windowShouldClose:]):
              (-[WebInspectorWindowController close]):
              (-[WebInspectorWindowController showWindow:]):
              (-[WebInspectorWindowController attach]):
              (-[WebInspectorWindowController detach]):
              (-[WebInspectorWindowController highlightAndScrollToNode:]):
              (-[WebInspectorWindowController highlightNode:]):
              (-[WebInspectorWindowController hideHighlight]):
              (-[WebInspectorWindowController animationDidEnd:]):
      
              Add an easier-to-see highlight.
      
              * Misc/WebNSViewExtras.h:
              * Misc/WebNSViewExtras.m:
              (-[NSView _web_convertRect:toView:]):
              * WebInspector/WebNodeHighlight.h:
              * WebInspector/WebNodeHighlight.m:
              (-[WebNodeHighlightFadeInAnimation setCurrentProgress:]):
              (-[WebNodeHighlight initWithTargetView:]):
              (-[WebNodeHighlight setHighlightedNode:]):
              (-[WebNodeHighlight highlightedNode]):
              (-[WebNodeHighlight dealloc]):
              (-[WebNodeHighlight attachHighlight]):
              (-[WebNodeHighlight delegate]):
              (-[WebNodeHighlight detachHighlight]):
              (-[WebNodeHighlight show]):
              (-[WebNodeHighlight hide]):
              (-[WebNodeHighlight animationDidEnd:]):
              (-[WebNodeHighlight ignoresMouseEvents]):
              (-[WebNodeHighlight highlightView]):
              (-[WebNodeHighlight setDelegate:]):
              (-[WebNodeHighlight setHolesNeedUpdateInTargetViewRect:]):
              (-[WebNodeHighlight setIgnoresMouseEvents:]):
              (-[WebNodeHighlight targetView]):
              (-[WebNodeHighlight _computeHighlightWindowFrame]):
              (-[WebNodeHighlight _repositionHighlightWindow]):
              * WebInspector/WebNodeHighlightView.h:
              * WebInspector/WebNodeHighlightView.m:
              (-[WebNodeHighlightView initWithWebNodeHighlight:]):
              (-[WebNodeHighlightView dealloc]):
              (-[WebNodeHighlightView detachFromWebNodeHighlight]):
              (-[WebNodeHighlightView drawRect:]):
              (-[WebNodeHighlightView webNodeHighlight]):
              (-[WebNodeHighlightView fractionFadedIn]):
              (-[WebNodeHighlightView setFractionFadedIn:]):
              (-[WebNodeHighlightView setHolesNeedUpdateInRect:]):
              (-[WebNodeHighlightView _holes]):
      
              WebView changes needed for the new Inspector.
      
              * WebView/WebView.mm: Remove the old _inspectElement method now that
              this is handled by WebCore.
              (-[WebView _isClosed]): Added.
              (-[WebView initWithFrame]): Give each Page an InspectorClient to
              enable the Inspector.
              * WebView/WebViewPrivate.h:
      
              Updates needed for WebCore changes.
      
              * WebCoreSupport/WebContextMenuClient.h:
              * WebCoreSupport/WebContextMenuClient.mm:
              * WebCoreSupport/WebViewFactory.mm:
              (-[WebViewFactory contextMenuItemTagInspectElement]):
              * WebView/WebUIDelegatePrivate.h:
      
              Remove old Inspector code.
      
              * WebCoreSupport/WebFrameLoaderClient.mm:
              (WebFrameLoaderClient::dispatchDidLoadResourceFromMemoryCache):
              (WebFrameLoaderClient::assignIdentifierToInitialRequest):
              (WebFrameLoaderClient::dispatchDidFinishLoading):
              * WebInspector/WebInspector.m: Removed.
              * WebInspector/WebInspectorPanel.h: Removed.
              * WebInspector/WebInspectorPanel.m: Removed.
              * WebInspector/webInspector/Images/button.png: Removed.
              * WebInspector/webInspector/Images/buttonDivider.png: Removed.
              * WebInspector/webInspector/Images/buttonPressed.png: Removed.
              * WebInspector/webInspector/Images/close.png: Removed.
              * WebInspector/webInspector/Images/closePressed.png: Removed.
              * WebInspector/webInspector/Images/downTriangle.png: Removed.
              * WebInspector/webInspector/Images/menu.png: Removed.
              * WebInspector/webInspector/Images/menuPressed.png: Removed.
              * WebInspector/webInspector/Images/popup.png: Removed.
              * WebInspector/webInspector/Images/popupPressed.png: Removed.
              * WebInspector/webInspector/Images/resize.png: Removed.
              * WebInspector/webInspector/Images/rightTriangle.png: Removed.
              * WebInspector/webInspector/Images/scrollThumbBottom.png: Removed.
              * WebInspector/webInspector/Images/scrollThumbMiddle.png: Removed.
              * WebInspector/webInspector/Images/scrollTrackBottom.png: Removed.
              * WebInspector/webInspector/Images/upTriangle.png: Removed.
              * WebInspector/webInspector/inspector.css: Removed.
              * WebInspector/webInspector/inspector.html: Removed.
              * WebInspector/webInspector/inspector.js: Removed.
              * WebInspector/webInspector/scrollarea.js: Removed.
              * WebInspector/webInspector/scrollbar.js: Removed.
              * WebInspector/webInspector/utilities.js: Removed.
              * WebView/WebFrame.mm:
              (-[WebFramePrivate dealloc]):
              * WebView/WebFrameInternal.h:
              * WebView/WebHTMLView.mm:
              (-[WebHTMLView menuForEvent:]):
      
              Build-fu:
      
              * WebKit.exp:
              * WebKit.xcodeproj/project.pbxproj:
      
      WebKit/win:
      
              Land the new Inspector.
      
              Co-written with Tim Hatcher.
      
              Reviewed by Anders, Adele, Hyatt, and Sam.
      
              Implement the InspectorClient interface.
      
              * WebInspectorClient.cpp: Added.
              (WebInspectorClient::WebInspectorClient):
              (WebInspectorClient::~WebInspectorClient):
              (WebInspectorClient::inspectorDestroyed):
              (WebInspectorClient::createPage):
              (WebInspectorClient::showWindow):
              (WebInspectorClient::closeWindow):
              (WebInspectorClient::windowVisible):
              (WebInspectorClient::attachWindow):
              (WebInspectorClient::detachWindow):
              (WebInspectorClient::highlight):
              (WebInspectorClient::hideHighlight):
              (WebInspectorClient::inspectedURLChanged):
              (WebInspectorClient::updateWindowTitle):
              (WebInspectorClient::onSize):
              (WebInspectorClient::onClose):
              (WebInspectorClient::onWebViewWindowPosChanging):
              (WebInspectorWndProc):
              (SubclassedWebViewWndProc):
              (registerWindowClass):
              * WebInspectorClient.h: Added.
      
              Add an easier-to-see highlight.
      
              * WebNodeHighlight.cpp: Added.
              (WebNodeHighlight::WebNodeHighlight):
              (WebNodeHighlight::~WebNodeHighlight):
              (WebNodeHighlight::highlight):
              (WebNodeHighlight::hide):
              (WebNodeHighlight::visible):
              (WebNodeHighlight::updateWindow):
              (WebNodeHighlight::removeSubclass):
              (registerOverlayClass):
              (OverlayWndProc):
              (SubclassedWndProc):
              * WebNodeHighlight.h: Added.
      
              WebView changes needed for the new Inspector.
      
              * WebView.cpp: Removed old inspectElement method now that this is
              handled by WebCore.
              (WebView::WebView):
              (WebView::close):
              (WebView::performContextMenuAction): Removed handling of the Inspect
              Element context menu item.
              (WebView::initWithFrame): Give each Page an InspectorClient to enable
              the Inspector.
              (WebView::setProhibitsMainFrameScrolling): Added.
              * WebView.h:
      
              Updates needed for WebCore changes.
      
              * Interfaces/IWebUIDelegate.idl:
              * WebContextMenuClient.cpp:
              (WebContextMenuClient::getCustomMenuFromDefaultItems):
              * WebContextMenuClient.h:
              * WebCoreLocalizedStrings.cpp:
      
              Remove old Inspector code.
      
              * WebFrame.cpp:
              * WebFrame.h:
              * WebInspector/WebInspector.cpp: Removed.
              * WebInspector/WebInspector.h: Removed.
              * WebInspector/webInspector/Images/button.png: Removed.
              * WebInspector/webInspector/Images/buttonDivider.png: Removed.
              * WebInspector/webInspector/Images/buttonPressed.png: Removed.
              * WebInspector/webInspector/Images/close.png: Removed.
              * WebInspector/webInspector/Images/closePressed.png: Removed.
              * WebInspector/webInspector/Images/downTriangle.png: Removed.
              * WebInspector/webInspector/Images/menu.png: Removed.
              * WebInspector/webInspector/Images/menuPressed.png: Removed.
              * WebInspector/webInspector/Images/popup.png: Removed.
              * WebInspector/webInspector/Images/popupPressed.png: Removed.
              * WebInspector/webInspector/Images/resize.png: Removed.
              * WebInspector/webInspector/Images/rightTriangle.png: Removed.
              * WebInspector/webInspector/Images/scrollThumbBottom.png: Removed.
              * WebInspector/webInspector/Images/scrollThumbMiddle.png: Removed.
              * WebInspector/webInspector/Images/scrollTrackMiddle.png: Removed.
              * WebInspector/webInspector/Images/upTriangle.png: Removed.
              * WebInspector/webInspector/inspector.css: Removed.
              * WebInspector/webInspector/inspector.html: Removed.
              * WebInspector/webInspector/inspector.js: Removed.
              * WebInspector/webInspector/scrollarea.js: Removed.
              * WebInspector/webInspector/scrollbar.js: Removed.
              * WebInspector/webInspector/treeoutline.js: Removed.
              * WebInspector/webInspector/utilities.js: Removed.
      
              Build-fu:
      
              * WebKit.vcproj/WebKit.vcproj:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@23677 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      dfc5666e
  4. 12 Apr, 2007 1 commit
    • sullivan's avatar
      WebCore: · db1947fe
      sullivan authored
              Reviewed by Anders
      
              - WebCore part of fix for:
              <rdar://problem/5128697> REGRESSION: At least one PDF context menu item isn't appearing on Leopard
      
              * platform/ContextMenuItem.h:
              (WebCore::):
              add two PDF-related context menu items to enum to keep it in sync with WebKit
      
              * platform/ContextMenu.cpp:
              (WebCore::ContextMenu::checkOrEnableIfNeeded):
              add the new context menu items to the do-nothing case of a big switch statement
      
      WebKit:
      
              Reviewed by Anders
      
              - WebKit part of fix for:
              <rdar://problem/5128697> REGRESSION: At least one PDF context menu item isn't appearing on Leopard
      
              * Misc/WebNSArrayExtras.h: Added.
              * Misc/WebNSArrayExtras.m: Added.
              (-[NSMutableArray _webkit_removeUselessMenuItemSeparators]):
              New file, includes this method to strip leading, trailing, and duplicate separators from arrays
              of NSMenuItems (copied from Safari)
      
              * WebView/WebUIDelegatePrivate.h:
              new MenuItemTag enum values for new PDFKit context menu items
      
              * WebKit.xcodeproj/project.pbxproj:
              updated for new files
      
              * WebView/WebPDFView.mm:
              (-[WebPDFView _anyPDFTagsFoundInMenu:]):
              check for new PDFKit context menu items
              (-[WebPDFView _menuItemsFromPDFKitForEvent:]):
              associate new PDFKit context menu item selectors with the new tags; skip certain selectors that
              correspond to menu items that WebKit already includes; remove useless menu item separators when
              we're done, since we might have removed arbitrarily-placed menu items
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@20862 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      db1947fe
  5. 24 Mar, 2007 1 commit
    • beidson's avatar
      JavaScriptCore: · 4ce64942
      beidson authored
              Reviewed by Adam
              
              <rdar://problem/5086210> - Move RetainPtr to WTF
      
              * wtf/RetainPtr.h: Added
              * JavaScriptCore.xcodeproj/project.pbxproj: Add it to the project file
              * JavaScriptCore.vcproj/WTF/WTF.vcproj: Ditto
      
      WebCore:
      
              Reviewed by Adam
      
              <rdar://problem/5086210> - Move RetainPtr to WTF
      
              * ForwardingHeaders/wtf/RetainPtr.h: Added.
              * WebCore.xcodeproj/project.pbxproj: Removed WebCore/RetainPtr.h
              
              * history/HistoryItem.h: Changed #include to <wtf/RetainPtr.h>
              * history/PageCache.h: Ditto
              * page/mac/WebCoreFrameBridge.mm: Ditto
              * platform/ContextMenu.h: Ditto
              * platform/ContextMenuItem.h: Ditto
              * platform/DragImage.h: Ditto
              * platform/FileChooser.h: Ditto
              * platform/PlatformKeyboardEvent.h: Ditto
              * platform/PopupMenu.h: Ditto
              * platform/SharedBuffer.h: Ditto
              * platform/cf/RetainPtr.h: Removed.
              * platform/graphics/Icon.h: Changed #include
              * platform/mac/ClipboardMac.h: Ditto
              * platform/mac/PasteboardMac.mm: Ditto
              * platform/mac/WidgetMac.mm: Ditto
              * platform/network/AuthenticationChallenge.h: Ditto
              * platform/network/ResourceError.h: Ditto
              * platform/network/ResourceHandle.h: Ditto
              * platform/network/ResourceRequest.h: Ditto
              * platform/network/ResourceResponse.h: Ditto
              * rendering/RenderThemeMac.mm: Ditto
      
      WebKit:
      
              Reviewed by Adam
      
              <rdar://problem/5086210> - Move RetainPtr to WTF
              
              * ForwardingHeaders/wtf/RetainPtr.h: Added.
              * History/WebBackForwardList.mm: Changed #import to <wtf/RetainPtr.h>
              * WebCoreSupport/WebEditorClient.h: Ditto
              * WebCoreSupport/WebFrameLoaderClient.h: Ditto
              * WebView/WebDocumentLoaderMac.h: Ditto
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@20475 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4ce64942
  6. 09 Feb, 2007 1 commit
    • sullivan's avatar
      WebCore: · 39786562
      sullivan authored
              Reviewed by Beth
              
              - WebCore part of fix for radar 4939636, problems with context menu items and binaries linked
                against WebKit 2.0.
      
              * platform/ContextMenuItem.h:
              (WebCore::):
              Tweaked comment; bumped enum value for new SPI tags to avoid conflict with pre-3.0 SPI tag values.
      
      WebKit:
      
              Reviewed by Beth
      
              - WebKit part of fix for radar 4939636, problems with context menu items and binaries linked
                against WebKit 2.0.
      
              * WebKit.xcodeproj/project.pbxproj:
              Changed DYLIB_CURRENT_VERSION to 2 (was 1)
      
              * Misc/WebKitVersionChecks.h:
              Added constant WEBKIT_FIRST_VERSION_WITH_3_0_CONTEXT_MENU_TAGS, which is 2 but in the weird
              format that these version checks use.
      
              * WebView/WebUIDelegatePrivate.h:
              Tweaked comments; included the old values for three tags for context menu items that changed
              from SPI to API in 3.0; renamed WEBMENUITEMTAG_SPI_START to WEBMENUITEMTAG_WEBKIT_3_0_SPI_START 
              for clarity, and bumped its value to avoid conflict with the three old values
      
              * WebCoreSupport/WebContextMenuClient.mm:
              (isAppleMail):
              new helper function that checks the bundle identifier
              (fixMenusToSendToOldClients):
              Removed return value for clarity; now checks linked-on version and also makes special case
              for Mail; now replaces three API tags with their old SPI values for clients that linked
              against old WebKit version, in addition to replacing new API with WebMenuItemTagOther for
              items that had no specific tag before.
              (fixMenusReceivedFromOldClients):
              Removed return value for clarity; removed defaultMenuItems parameter because it's no longer 
              necessary; removed code that tried to recognize menus that got confused by the SPI -> API 
              change (we now pass the old SPI values to these clients to avoid confusing them); now 
              restores the tags for the items whose tags were replaced in fixMenusToSendToOldClients 
              (this used to restore the tags of the default items rather than the new items, which was 
              incorrect but happened to work since the clients we tested were using the objects from the
              default items array in their new items array)
              (WebContextMenuClient::getCustomMenuFromDefaultItems):
              Updated to account for the removed return values for the two fix-up methods; moved the
              autorelease of newItems here, which is clearer and was the source of a leak before.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@19529 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      39786562
  7. 07 Feb, 2007 1 commit
    • kjk's avatar
      Reviewed by Maciej. · 91af88eb
      kjk authored
              Linux/gdk build fixes.
      
              * platform/ContextMenuItem.h:
              * platform/PlatformMenuDescription.h:
              * platform/gdk/PopupMenuGdk.cpp: Added. Renamed from RenderPopupMenuGdk.cpp for
              consistency with other platforms.
              (WebCore::PopupMenu::PopupMenu):
              (WebCore::PopupMenu::~PopupMenu):
              * platform/gdk/RenderPopupMenuGdk.cpp: Removed.
              * platform/gdk/RenderPopupMenuGdk.h: Removed.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@19495 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      91af88eb
  8. 18 Jan, 2007 1 commit
    • aroben's avatar
      WebCore: · 690a378d
      aroben authored
              Reviewed by Beth.
      
              Fix: <rdar://problem/4939672> REGRESSION: With text selected that is
              not a link, the "Remove Link" contextual menu item remains active
      
              * platform/ContextMenuItem.h: Added enabled method.
              * platform/qt/ContextMenuItemQt.cpp:
              (WebCore::ContextMenuItem::enabled): Implemented.
              * platform/mac/ContextMenuItemMac.mm:
              (WebCore::ContextMenuItem::enabled): Ditto.
              * platform/mac/ContextMenuMac.mm:
              (-[WebCoreMenuTarget validateMenuItem:]): Implemented to fulfill the
              NSMenuValidation protocol.
      
      WebKit:
      
              Reviewed by Beth.
      
              Fix <rdar://problem/4939672> REGRESSION: With text selected that is
              not a link, the "Remove Link" contextual menu item remains active
      
              * WebView/WebHTMLView.mm:
              (-[WebHTMLView menuForEvent:]): Leave autoenabling of menu items on so
              that clients can implement validateMenuItem:.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@18975 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      690a378d
  9. 16 Dec, 2006 2 commits
    • aroben's avatar
      Build fixes. · f0a9b23b
      aroben authored
              * platform/ContextMenuItem.h: Fixed const declarations.
              * platform/mac/ContextMenuItemMac.mm: Dito.
              (WebCore::ContextMenuItem::type):
              (WebCore::ContextMenuItem::setTitle):
              (WebCore::ContextMenuItem::setChecked):
              (WebCore::ContextMenuItem::setEnabled):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@18262 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f0a9b23b
    • bdakin's avatar
      WebCore: · 6172e092
      bdakin authored
              Reviewed by Adam (and partially Geoff).
      
              Primarily, this patch gives WebCore context menus the ability to
              enable/disable and set state. It does a few other things along the
              way, though. Some of the more noticeable things:
                     -Re-architects the ContextMenuItem class a bit so that the
                      ownership model is a bit less confusing. ContextMenuItem is
                      now *purely* a wrapper for the platformDescription. There
                      are no other member variables. If you ever need the
                      platformDescription outside of the MenuItem class, you have
                      to call releasePlatformDescription(), which transfers
                      ownership of the platformDescription to the caller.
                     -Moves fontForSelection() from FrameMac into Editor.cpp.
                      Turns out I don't need to use this function for my patch
                      after all, but it doesn't seem like a terrible idea to move
                      it anyway since we seem to be moving things from FrameMac
                      into Editor these days anyway.
      WebKit:
              Reviewed by Adam.
      
              WebKit side of making WebCore context menus support state and
              enabled/disabled.
      
              * WebCoreSupport/WebContextMenuClient.h: contextMenuItemSelected
              takes a pointer to the parentMenu now since menu items no longer
              hold onto it.
              * WebCoreSupport/WebContextMenuClient.mm: Same.
              (WebContextMenuClient::contextMenuItemSelected): Same.
              * WebView/WebHTMLView.m: Must call setAutoenablesItems:NO on our
              menu.
              (-[NSArray menuForEvent:]):
              * WebView/WebUIDelegatePrivate.h: No need for if-def.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@18245 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6172e092
  10. 11 Dec, 2006 1 commit
    • bdakin's avatar
      WebCore: · 08b0dcea
      bdakin authored
              Reviewed by Adam.
      
              Primarily, this patch implements/hooks-up actions for the sub-menu
              items in WebCore context menus. I fixed a few other things along
              the way too:
                      -Made BUILDING_ON_TIGER ifdef work within C++ as well as
                       Obj-C
                      -Fixed bug where we would throw and Obj-C exception and
                       fail to pop up menus with more than one separator item.
                      -Re-named some of the spelling/grammar tags since Tiger and
                       Leopard share more of the actions than initially
                       anticipated.
      
              * WebCorePrefix.h: Make BUILDING_ON_TIGER available to C++
              * bridge/EditorClient.h: New functions to toggle
              spelling/grammar checking.
              * editing/Editor.cpp:
              (WebCore::Editor::toggleContinuousSpellChecking): Call into client.
              (WebCore::Editor::toggleGrammarChecking): Same.
              (WebCore::Editor::toggleBold): call execToggleBold()
              (WebCore::Editor::toggleUnderline): Create appropriate underline
              style and apply to selection.
              (WebCore::Editor::setBaseWritingDirection): Create appropriate
              writing direction and apply to selection.
              * editing/Editor.h:
              * editing/mac/EditorMac.mm: New functions to show spelling guesses,
              fonts, styles, and color panels.
              * page/ContextMenuClient.h: New functions for the speech sub-menu.
              * page/ContextMenuController.cpp:
              (WebCore::ContextMenuController::contextMenuItemSelected): Fill in
              editing sub-menu actions.
              * platform/ContextMenu.cpp:
              (WebCore::separatorItem): Helper function to create a separator 
              item.
              (WebCore::createFontSubMenu): Put very mac-specific things within a
              platform ifdef.
              (WebCore::createSpellingAndGrammarSubMenu): Re-named some of the
              spelling sub-menu tags.
              (WebCore::createSpellingSubMenu): Same.
              (WebCore::ContextMenu::populate): We can't share the separator
              item. When we do, menus with more than one separator throw and obj-
              c exception and fail to pop-up.
              * platform/ContextMenuItem.h:
              (WebCore::): Re-named some of the spelling sub-menu tags.
      
      WebKit:
              Reviewed by Adam.
      
              WebKit support for editing sub-menu actions.
      
              * WebCoreSupport/WebContextMenuClient.h: New functions for the
              speech sub-menu.
              * WebCoreSupport/WebContextMenuClient.mm:
              (WebContextMenuClient::speak):
              (WebContextMenuClient::stopSpeaking):
              * WebCoreSupport/WebEditorClient.h: New functions to toggle
              spelling/grammar checking.
              * WebCoreSupport/WebEditorClient.mm:
              (WebEditorClient::toggleContinuousSpellChecking):
              (WebEditorClient::toggleGrammarChecking):
              * WebView/WebUIDelegatePrivate.h: Re-named some of the spelling
              sub-menu tags.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@18166 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      08b0dcea
  11. 08 Dec, 2006 1 commit
    • bdakin's avatar
      Reviewed by Maciej. · 9126f2c9
      bdakin authored
              Add a new member variable to ContectMenuItem to hold on to the sub-
              menu. The new member variable is an OwnPtr<ContextMenu>
      
              * platform/ContextMenu.cpp: Because of the OwnPtr in
              ContextMenuItem, we have to separate the declaration of
              ContextMenuItems away from the calls to appendItem(). Not doing so
              causes a build failure because OwnPtr inherits from Noncopyable.
              (WebCore::createFontSubMenu): Same.
              (WebCore::createSpellingAndGrammarSubMenu): Same.
              (WebCore::createSpellingSubMenu): Same.
              (WebCore::createSpeechSubMenu): Same.
              (WebCore::createWritingDirectionSubMenu): Same.
              (WebCore::ContextMenu::populate): Same.
              * platform/ContextMenuItem.h:  New member variable m_subMenu.
              * platform/mac/ContextMenuItemMac.mm: Take care of setting
              m_subMenu in addition to setting the submenu of the NSMenuItem when
              we have a sub-menu.
              (WebCore::menuToArray):
              (WebCore::ContextMenuItem::ContextMenuItem): Same.
              (WebCore::ContextMenuItem::platformSubMenu): Same.
              (WebCore::ContextMenuItem::setSubMenu): Same.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@18081 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      9126f2c9
  12. 06 Dec, 2006 1 commit
    • bdakin's avatar
      Reviewed by Adam. · 1f36a953
      bdakin authored
              There are two bugs with WebCore ContextMenus due to the static 
              ContextMenuItems. One bug is that we often crashed in 
              NSAutoreleasePool upon quitting the browser. The other bug is that 
              we were adding static NSMenuItems to multiple NSMenus, which is 
              disallowed. To fix these bugs, the MenuItems are no longer static. 
              This is in line with the current design in WebKit anyway. I made 
              some re-arrangements in the code because I also removed the macro 
              that was used to create the menu items since it was a bit 
              confusing.
      
              * platform/ContextMenu.cpp:
              (WebCore::createFontSubMenu):
              (WebCore::createSpellingAndGrammarSubMenu):
              (WebCore::createSpellingSubMenu):
              (WebCore::createSpeechSubMenu):
              (WebCore::createWritingDirectionSubMenu):
              (WebCore::ContextMenu::populate):
              * platform/ContextMenuItem.h:
              * platform/mac/ContextMenuItemMac.mm:
              (WebCore::ContextMenuItem::ContextMenuItem): Use the NSMenuItem 
              global separator item if we have SeparatorType.
              * platform/mac/ContextMenuMac.mm:
              (WebCore::setMenuItemTarget):  Change name of getNSMenuItem since 
              that is no longer accurate.
              (WebCore::ContextMenu::appendItem): Above name change.
              (WebCore::ContextMenu::insertItem): Same.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@18045 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1f36a953
  13. 05 Dec, 2006 1 commit
    • sullivan's avatar
      WebCore: · 6265c783
      sullivan authored
              Reviewed by Darin
      
              WebCore part of fix for:
              <rdar://problem/4817188> Context menu for bad grammar should include suggestions and "Ignore Grammar"
      
              The context menu mechanism is currently in flux; the old mechanism is still in place, but an
              up-and-coming new mechanism is waiting in the wings. I updated both of them, but couldn't
              test the new mechanism because it doesn't work well enough yet. Also, some of this code 
              should move from Frame to Editor, but that will wait for another checkin.
      
              * page/Frame.h:
              added pure virtual function declarations for isSelectionUngrammatical() and guessesForUngrammaticalSelection()
      
              * bridge/mac/FrameMac.h:
              added virtual functions declarations for isSelectionUngrammatical() and guessesForUngrammaticalSelection()
      
              * bridge/mac/FrameMac.mm:
              (WebCore::FrameMac::isSelectionMisspelled):
              now updates spelling panel (whether or not it's showing), since this is now needed to make -[NSSSpellChecker
              ignoreWord:inSpellDocumentWithTag:] work correctly
              (WebCore::isRangeUngrammatical):
              new function, helper used by both isSelectionUngrammatical() and guessesForUngrammaticalSelection()
              (WebCore::FrameMac::isSelectionUngrammatical):
              new function, calls isRangeUngrammatical
              (WebCore::FrameMac::guessesForUngrammaticalSelection):
              ditto
      
              * platform/ContextMenu.cpp:
              (WebCore::ContextMenu::populate):
              now considers bad grammar as well as misspellings
              
              * platform/ContextMenuItem.h:
              added ContextMenuItemTagIgnoreGrammar
      
      WebKit:
      
              Reviewed by Darin
      
              WebKit part of fix for:
              <rdar://problem/4817188> Context menu for bad grammar should include suggestions and "Ignore Grammar"
      
              The context menu mechanism is currently in flux; the old mechanism is still in place, but an
              up-and-coming new mechanism is waiting in the wings. I updated both of them, but couldn't
              test the new mechanism because it doesn't work well enough yet. Most of this WebKit code
              can be deleted when the new mechanism is in place.
      
              * WebView/WebUIDelegatePrivate.h:
              added WebMenuItemTagIgnoreGrammar
      
              * DefaultDelegates/WebDefaultContextMenuDelegate.m:
              (-[WebDefaultUIDelegate menuItemWithTag:target:representedObject:]):
              added case for WebMenuItemTagIgnoreGrammar
              (-[WebDefaultUIDelegate editingContextMenuItemsForElement:defaultMenuItems:]):
              now considers adding grammar-related items as well as spelling-related items
              
              * WebView/WebHTMLViewPrivate.h:
              declared _isSelectionUngrammatical
      
              * WebView/WebHTMLView.m:
              (-[WebHTMLView _isSelectionUngrammatical]):
              new method, calls through to WebCore
              (-[WebHTMLView _ignoreGrammarFromMenu:]):
              new method, calls _ignoreSpellingFromMenu: since NSSpellChecker has one method for both
      
              * English.lproj/Localizable.strings:
              updated for "Ignore Grammar" menu item title
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@18021 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6265c783
  14. 04 Dec, 2006 1 commit
    • ap's avatar
      2006-12-04 Don Gibson <dgibson77@gmail.com> · 2f965312
      ap authored
              Reviewed by Mitz.
      
              http://bugs.webkit.org/show_bug.cgi?id=11748:
              Windows build bustage.
      
              * WebCore.vcproj/WebCore/WebCore.vcproj:
              * platform/ContextMenuItem.h:
              * platform/win/TemporaryLinkStubs.cpp:
              (WebCore::ContextMenuItem::ContextMenuItem):
              (WebCore::ContextMenuItem::platformDescription):
              (WebCore::ContextMenuItem::action):
              (WebCore::ContextMenuItem::setAction):
              (WebCore::ContextMenuItem::title):
              (WebCore::ContextMenuItem::setTitle):
              (WebCore::ContextMenuItem::platformSubMenu):
              (WebCore::ContextMenuItem::setSubMenu):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@17999 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      2f965312
  15. 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
  16. 28 Nov, 2006 1 commit
    • aroben's avatar
      WebCore: · 590b5aaa
      aroben authored
              Reviewed by Beth.
      
              More WebCore context menu work (still not turned on, however).
      
              Split ContextMenuItem into its own files and make it a class.
      
              * WebCore.exp: Updated symbols.
              * WebCore.xcodeproj/project.pbxproj: Added new ContextMenuItem files.
              * platform/ContextMenu.cpp:
              (WebCore::ContextMenu::populate): Code cleanup.
              * platform/ContextMenu.h: Split ContextMenuItem into a separate file,
              removed redundant "Menu" part of platformMenuDescription(),
              setPlatformMenuDescription().
              (WebCore::ContextMenu::ContextMenu):
              (WebCore::ContextMenu::hitTestResult):
              (WebCore::ContextMenu::platformDescription):
              * platform/ContextMenuItem.h: Added. Made ContextMenuItem a
              full-fledged class.
              (WebCore::):
              (WebCore::ContextMenuItem::ContextMenuItem):
              (WebCore::ContextMenuItem::menu):
              (WebCore::ContextMenuItem::platformDescription):
              (WebCore::ContextMenuItem::type):
              (WebCore::ContextMenuItem::action):
              (WebCore::ContextMenuItem::title):
              * platform/mac/ContextMenuItemMac.mm: Added.
              (WebCore::ContextMenuItem::ContextMenuItem):
              * platform/mac/ContextMenuMac.mm: Updated for ContextMenuItem changes.
              (-[MenuTarget forwardContextMenuAction:]):
              (getNSMenuItem): Handle separator items.
              (ContextMenu::appendItem):
              (ContextMenu::itemCount):
              (ContextMenu::insertItem):
              (ContextMenu::setPlatformDescription):
              * page/ContextMenuController.h: Updated declaration, added getter.
              (WebCore::ContextMenuController::contextMenu):
      
              Added some more context menu plumbing.
      
              * dom/EventTargetNode.cpp:
              (WebCore::EventTargetNode::defaultEventHandler): Added code to call the
              ContextMenuController when a context menu event is received.
              * page/ContextMenuClient.h: New client method declaration.
              * page/ContextMenuController.cpp:
              (WebCore::ContextMenuController::handleContextMenuEvent): Set the event
              defaultHandled after handling it.
              (WebCore::ContextMenuController::contextMenuItemSelected): Take a
              ContextMenuItem instead of a separate action and title.
      
              Changed event-handling methods to return bools to signify whether the
              event was handled or not. This is needed so we can know whether to hand
              the event off to the OS. Also restructured some code to use early
              returns instead of nesting ifs.
      
              * page/EventHandler.cpp:
              (WebCore::EventHandler::handleMousePressEventDoubleClick):
              (WebCore::EventHandler::handleMousePressEventTripleClick):
              (WebCore::EventHandler::handleMousePressEventSingleClick):
              (WebCore::EventHandler::handleMousePressEvent):
              (WebCore::EventHandler::handleMouseMoveEvent):
              (WebCore::EventHandler::handleMouseReleaseEvent):
              (WebCore::EventHandler::handleMouseDoubleClickEvent):
              (WebCore::EventHandler::handleWheelEvent):
              (WebCore::EventHandler::canMouseDownStartSelect):
              * page/EventHandler.h:
              * page/FrameView.cpp:
              (WebCore::FrameView::handleMouseMoveEvent):
              (WebCore::FrameView::handleMouseReleaseEvent):
              * page/FrameView.h:
              * platform/ScrollBar.h: More bool return values.
              (WebCore::Scrollbar::handleMouseMoveEvent):
              (WebCore::Scrollbar::handleMouseOutEvent):
              * platform/Widget.h: Ditto.
              (WebCore::Widget::handleMouseMoveEvent):
              (WebCore::Widget::handleMouseReleaseEvent):
      
              Reverted the changes made in r17805 so that we can have fewer header
              #includes.
      
              * page/Page.cpp:
              (WebCore::Page::Page):
              * page/Page.h: Ditto.
              (WebCore::Page::dragCaretController):
              (WebCore::Page::chrome):
              (WebCore::Page::contextMenuController):
      
      WebKit:
      
              Reviewed by Beth.
      
              More WebCore context menu work.
      
              * DefaultDelegates/WebDefaultUIDelegate.m: New stub delegate method implementation.
              (-[NSApplication webView:contextMenuItemSelected:forElement:]):
              * WebCoreSupport/WebContextMenuClient.h: Updated to match ContextMenuClient.h changes.
              * WebCoreSupport/WebContextMenuClient.mm:
              (WebContextMenuClient::addCustomContextMenuItems): Updated for method name changes.
              (WebContextMenuClient::contextMenuItemSelected): Added new client method.
              * WebView/WebUIDelegatePrivate.h: New private delegate method declaration.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@17910 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      590b5aaa