mirror of
https://github.com/kovidgoyal/calibre.git
synced 2025-07-08 02:34:06 -04:00
Use the same context menu code for the cover grid view as well
This commit is contained in:
parent
852618cb66
commit
ee5711f0ba
@ -15,14 +15,14 @@ from textwrap import wrap
|
|||||||
|
|
||||||
from PyQt5.Qt import (
|
from PyQt5.Qt import (
|
||||||
QListView, QSize, QStyledItemDelegate, QModelIndex, Qt, QImage, pyqtSignal,
|
QListView, QSize, QStyledItemDelegate, QModelIndex, Qt, QImage, pyqtSignal,
|
||||||
QTimer, QPalette, QColor, QItemSelection, QPixmap, QMenu, QApplication,
|
QTimer, QPalette, QColor, QItemSelection, QPixmap, QApplication,
|
||||||
QMimeData, QUrl, QDrag, QPoint, QPainter, QRect, pyqtProperty, QEvent,
|
QMimeData, QUrl, QDrag, QPoint, QPainter, QRect, pyqtProperty, QEvent,
|
||||||
QPropertyAnimation, QEasingCurve, pyqtSlot, QHelpEvent, QAbstractItemView,
|
QPropertyAnimation, QEasingCurve, pyqtSlot, QHelpEvent, QAbstractItemView,
|
||||||
QStyleOptionViewItem, QToolTip, QByteArray, QBuffer, QBrush, qRed, qGreen,
|
QStyleOptionViewItem, QToolTip, QByteArray, QBuffer, QBrush, qRed, qGreen,
|
||||||
qBlue, QItemSelectionModel, QIcon, QFont)
|
qBlue, QItemSelectionModel, QIcon, QFont)
|
||||||
|
|
||||||
from calibre import fit_image, prints, prepare_string_for_xml, human_readable
|
from calibre import fit_image, prints, prepare_string_for_xml, human_readable
|
||||||
from calibre.constants import DEBUG, config_dir
|
from calibre.constants import DEBUG, config_dir, islinux
|
||||||
from calibre.ebooks.metadata import fmt_sidx, rating_to_stars
|
from calibre.ebooks.metadata import fmt_sidx, rating_to_stars
|
||||||
from calibre.utils import join_with_timeout
|
from calibre.utils import join_with_timeout
|
||||||
from calibre.gui2 import gprefs, config, rating_font
|
from calibre.gui2 import gprefs, config, rating_font
|
||||||
@ -929,17 +929,16 @@ class GridView(QListView):
|
|||||||
self.context_menu = menu
|
self.context_menu = menu
|
||||||
|
|
||||||
def contextMenuEvent(self, event):
|
def contextMenuEvent(self, event):
|
||||||
if self.context_menu is not None:
|
if self.context_menu is None:
|
||||||
menu = self._temp_menu = QMenu(self)
|
return
|
||||||
sac = self.gui.iactions['Sort By']
|
from calibre.gui2.main_window import clone_menu
|
||||||
sort_added = tuple(ac for ac in self.context_menu.actions() if ac is sac.qaction)
|
sac = self.gui.iactions['Sort By']
|
||||||
if not sort_added:
|
sort_added = tuple(ac for ac in self.context_menu.actions() if ac is sac.qaction)
|
||||||
menu.addAction(sac.qaction)
|
if sort_added:
|
||||||
for ac in self.context_menu.actions():
|
|
||||||
menu.addAction(ac)
|
|
||||||
sac.update_menu()
|
sac.update_menu()
|
||||||
menu.popup(event.globalPos())
|
m = clone_menu(self.context_menu) if islinux else self.context_menu
|
||||||
event.accept()
|
m.popup(event.globalPos())
|
||||||
|
event.accept()
|
||||||
|
|
||||||
def get_selected_ids(self):
|
def get_selected_ids(self):
|
||||||
m = self.model()
|
m = self.model()
|
||||||
|
Loading…
x
Reference in New Issue
Block a user