Commit 0247dacd909fe9cccf21d8d3f85b5065c93d7d37

  • avatar
  • Jakub Wieczorek <faw217 @gm…l.com>
  • Wed Jun 17 19:45:49 CEST 2009
When displaying a context menu on the bookmarks toolbar, don't assume
that there is a bookmark or a folder under the cursor so that the
actions that are not context-dependant will be displayed on the entire
width of the toolbar.
  
6565void BookmarksToolBar::contextMenuRequested(const QPoint &position)
6666{
6767 QAction *action = actionAt(position);
68 if (!action)
69 return;
70 QVariant variant = action->data();
71 if (!variant.canConvert<QModelIndex>())
72 return;
73
7468 QMenu menu;
75 QAction *menuAction = 0;
7669
77 if (!action->menu()) {
78 menuAction = menu.addAction(tr("Open"), this, SLOT(openBookmarkInCurrentTab()));
79 menuAction->setData(variant);
70 if (action) {
71 QVariant variant = action->data();
72 Q_ASSERT(variant.canConvert<QModelIndex>());
8073
81 menuAction = menu.addAction(tr("Open in New &Tab"), this, SLOT(openBookmarkInNewTab()));
74 QAction *menuAction = 0;
75
76 if (!action->menu()) {
77 menuAction = menu.addAction(tr("Open"), this, SLOT(openBookmarkInCurrentTab()));
78 menuAction->setData(variant);
79
80 menuAction = menu.addAction(tr("Open in New &Tab"), this, SLOT(openBookmarkInNewTab()));
81 menuAction->setData(variant);
82
83 menu.addSeparator();
84 }
85
86 menuAction = menu.addAction(tr("Remove"), this, SLOT(removeBookmark()));
8287 menuAction->setData(variant);
8388
8489 menu.addSeparator();
8590 }
86
87 menuAction = menu.addAction(tr("Remove"), this, SLOT(removeBookmark()));
88 menuAction->setData(variant);
89
90 menu.addSeparator();
9191
9292 menu.addAction(tr("Add Bookmark..."), this, SLOT(newBookmark()));
9393 menu.addAction(tr("Add Folder..."), this, SLOT(newFolder()));