summaryrefslogtreecommitdiffstats
path: root/Source/WebCore/page/ContextMenuController.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Source/WebCore/page/ContextMenuController.cpp')
-rw-r--r--Source/WebCore/page/ContextMenuController.cpp19
1 files changed, 19 insertions, 0 deletions
diff --git a/Source/WebCore/page/ContextMenuController.cpp b/Source/WebCore/page/ContextMenuController.cpp
index 0909f70..36ac89d 100644
--- a/Source/WebCore/page/ContextMenuController.cpp
+++ b/Source/WebCore/page/ContextMenuController.cpp
@@ -207,6 +207,11 @@ void ContextMenuController::contextMenuItemSelected(ContextMenuItem* item)
// For now, call into the client. This is temporary!
frame->editor()->copyImage(m_hitTestResult);
break;
+#if PLATFORM(QT)
+ case ContextMenuItemTagCopyImageUrlToClipboard:
+ frame->editor()->copyURL(m_hitTestResult.absoluteImageURL(), m_hitTestResult.textContent());
+ break;
+#endif
case ContextMenuItemTagOpenMediaInNewWindow:
openNewWindow(m_hitTestResult.absoluteMediaURL(), frame);
break;
@@ -642,6 +647,10 @@ void ContextMenuController::populate()
contextMenuItemTagDownloadImageToDisk());
ContextMenuItem CopyImageItem(ActionType, ContextMenuItemTagCopyImageToClipboard,
contextMenuItemTagCopyImageToClipboard());
+#if PLATFORM(QT)
+ ContextMenuItem CopyImageUrlItem(ActionType, ContextMenuItemTagCopyImageUrlToClipboard,
+ contextMenuItemTagCopyImageUrlToClipboard());
+#endif
ContextMenuItem OpenMediaInNewWindowItem(ActionType, ContextMenuItemTagOpenMediaInNewWindow, String());
ContextMenuItem CopyMediaLinkItem(ActionType, ContextMenuItemTagCopyMediaLinkToClipboard,
String());
@@ -708,6 +717,10 @@ void ContextMenuController::populate()
appendItem(OpenLinkInNewWindowItem, m_contextMenu.get());
appendItem(DownloadFileItem, m_contextMenu.get());
}
+#if PLATFORM(QT)
+ if (m_hitTestResult.isSelected())
+ appendItem(CopyItem, m_contextMenu.get());
+#endif
appendItem(CopyLinkItem, m_contextMenu.get());
}
@@ -720,6 +733,9 @@ void ContextMenuController::populate()
appendItem(DownloadImageItem, m_contextMenu.get());
if (imageURL.isLocalFile() || m_hitTestResult.image())
appendItem(CopyImageItem, m_contextMenu.get());
+#if PLATFORM(QT)
+ appendItem(CopyImageUrlItem, m_contextMenu.get());
+#endif
}
KURL mediaURL = m_hitTestResult.absoluteMediaURL();
@@ -1172,6 +1188,9 @@ void ContextMenuController::checkOrEnableIfNeeded(ContextMenuItem& item) const
case ContextMenuItemTagOpenImageInNewWindow:
case ContextMenuItemTagDownloadImageToDisk:
case ContextMenuItemTagCopyImageToClipboard:
+#if PLATFORM(QT)
+ case ContextMenuItemTagCopyImageUrlToClipboard:
+#endif
break;
case ContextMenuItemTagOpenMediaInNewWindow:
if (m_hitTestResult.mediaIsVideo())