diff options
author | Allan Sandfeld Jensen <allan.jensen@digia.com> | 2013-10-15 19:00:43 +0200 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2013-10-28 20:00:40 +0100 |
commit | 06285084ea92dc8900ba195db5379501e0173c53 (patch) | |
tree | 755ab3f57407d8bc280dfaede52b45685cdd7d2f /Source/WebKit/qt/WidgetApi/qwebpage.cpp | |
parent | 36321b9aaeedef1232d464d3dd7d03f39b7f7f37 (diff) | |
download | qtwebkit-06285084ea92dc8900ba195db5379501e0173c53.tar.gz |
Support HTML5 media context menu items
Support most of the items WebCore populates the context menu with when
the user right clicks an HTML5 audio or video element.
Change-Id: I331a3271f68075fe70d914e2675620f617d53b42
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Diffstat (limited to 'Source/WebKit/qt/WidgetApi/qwebpage.cpp')
-rw-r--r-- | Source/WebKit/qt/WidgetApi/qwebpage.cpp | 24 |
1 files changed, 22 insertions, 2 deletions
diff --git a/Source/WebKit/qt/WidgetApi/qwebpage.cpp b/Source/WebKit/qt/WidgetApi/qwebpage.cpp index d69d673bb..d50d91b40 100644 --- a/Source/WebKit/qt/WidgetApi/qwebpage.cpp +++ b/Source/WebKit/qt/WidgetApi/qwebpage.cpp @@ -497,6 +497,7 @@ QMenu *createContextMenu(QWebPage* page, const QList<MenuItem>& items, QBitArray QWebPage::WebAction action = webActionForAdapterMenuAction(item.action); QAction *a = page->action(action); if (a) { + a->setText(item.title); a->setEnabled(item.traits & MenuItem::Enabled); a->setCheckable(item.traits & MenuItem::Checkable); a->setChecked(item.traits & MenuItem::Checked); @@ -523,7 +524,7 @@ QMenu *createContextMenu(QWebPage* page, const QList<MenuItem>& items, QBitArray // don't show sub-menus with just disabled actions if (anyEnabledAction) { - subMenu->setTitle(item.subMenuTitle); + subMenu->setTitle(item.title); menu->addAction(subMenu->menuAction()); } else delete subMenu; @@ -1182,7 +1183,12 @@ QWebInspector* QWebPagePrivate::getOrCreateInspector() \value AlignJustified Applies full justification to content. (Added in Qt 4.6) \value AlignLeft Applies left justification to content. (Added in Qt 4.6) \value AlignRight Applies right justification to content. (Added in Qt 4.6) - + \value DownloadMediaToDisk Download the hovered audio or video to the disk. (Added in Qt 5.2) + \value CopyMediaUrlToClipboard Copy the hovered audio or video's URL to the clipboard. (Added in Qt 5.2) + \value ToggleMediaControls Toggles between showing and hiding the controls for the hovered audio or video element. (Added in Qt 5.2) + \value ToggleMediaLoop Toggles whether the hovered audio or video should loop on completetion or not. (Added in Qt 5.2) + \value ToggleMediaPlayPause Toggles the play/pause state of the hovered audio or video element. (Added in Qt 5.2) + \value ToggleMediaMute Mutes or unmutes the hovered audio or video element. (Added in Qt 5.2) \omitvalue WebActionCount @@ -1721,6 +1727,11 @@ void QWebPage::triggerAction(WebAction action, bool) case SetTextDirectionDefault: case SetTextDirectionLeftToRight: case SetTextDirectionRightToLeft: + case DownloadMediaToDisk: + case ToggleMediaControls: + case ToggleMediaLoop: + case ToggleMediaPlayPause: + case ToggleMediaMute: mappedAction = adapterMenuActionForWebAction(action); break; case ReloadAndBypassCache: // Manual mapping @@ -1733,6 +1744,9 @@ void QWebPage::triggerAction(WebAction action, bool) case CopyImageUrlToClipboard: QApplication::clipboard()->setText(d->hitTestResult.imageUrl().toString()); break; + case CopyMediaUrlToClipboard: + QApplication::clipboard()->setText(d->hitTestResult.mediaUrl().toString()); + break; #endif case InspectElement: { #if ENABLE(INSPECTOR) @@ -2204,6 +2218,12 @@ QAction *QWebPage::action(WebAction action) const case ToggleBold: case ToggleItalic: case ToggleUnderline: + case DownloadMediaToDisk: + case CopyMediaUrlToClipboard: + case ToggleMediaControls: + case ToggleMediaLoop: + case ToggleMediaPlayPause: + case ToggleMediaMute: mappedAction = adapterMenuActionForWebAction(action); break; case InspectElement: |