mirror of
https://invent.kde.org/network/falkon.git
synced 2024-12-20 10:46:35 +01:00
Mac: Re-enable dock menu with New Tab, New Window and New Private Window actions
This commit is contained in:
parent
c607a2f717
commit
767e01fd22
@ -546,15 +546,6 @@ void BrowserWindow::goBack()
|
|||||||
weView()->back();
|
weView()->back();
|
||||||
}
|
}
|
||||||
|
|
||||||
QMenuBar* BrowserWindow::menuBar() const
|
|
||||||
{
|
|
||||||
#ifdef Q_OS_MAC
|
|
||||||
return mApp->macMenuReceiver()->menuBar();
|
|
||||||
#endif
|
|
||||||
|
|
||||||
return QMainWindow::menuBar();
|
|
||||||
}
|
|
||||||
|
|
||||||
TabbedWebView* BrowserWindow::weView() const
|
TabbedWebView* BrowserWindow::weView() const
|
||||||
{
|
{
|
||||||
return weView(m_tabWidget->currentIndex());
|
return weView(m_tabWidget->currentIndex());
|
||||||
|
@ -25,7 +25,6 @@
|
|||||||
#include "restoremanager.h"
|
#include "restoremanager.h"
|
||||||
#include "qzcommon.h"
|
#include "qzcommon.h"
|
||||||
|
|
||||||
class QMenuBar;
|
|
||||||
class QLabel;
|
class QLabel;
|
||||||
class QVBoxLayout;
|
class QVBoxLayout;
|
||||||
class QSplitter;
|
class QSplitter;
|
||||||
@ -84,7 +83,6 @@ public:
|
|||||||
void createEncodingMenu(QMenu* menu);
|
void createEncodingMenu(QMenu* menu);
|
||||||
|
|
||||||
SideBar* addSideBar();
|
SideBar* addSideBar();
|
||||||
virtual QMenuBar* menuBar() const;
|
|
||||||
|
|
||||||
QByteArray saveState(int version = 0) const;
|
QByteArray saveState(int version = 0) const;
|
||||||
bool restoreState(const QByteArray &state, int version = 0);
|
bool restoreState(const QByteArray &state, int version = 0);
|
||||||
|
@ -102,7 +102,6 @@ MainApplication::MainApplication(int &argc, char** argv)
|
|||||||
, m_registerQAppAssociation(0)
|
, m_registerQAppAssociation(0)
|
||||||
#endif
|
#endif
|
||||||
#ifdef Q_OS_MAC
|
#ifdef Q_OS_MAC
|
||||||
, m_macMenuReceiver(0)
|
|
||||||
, m_macDockMenu(0)
|
, m_macDockMenu(0)
|
||||||
#endif
|
#endif
|
||||||
{
|
{
|
||||||
@ -1115,29 +1114,7 @@ RegisterQAppAssociation* MainApplication::associationManager()
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef Q_OS_MAC
|
#ifdef Q_OS_MAC
|
||||||
#include "macmenureceiver.h"
|
|
||||||
|
|
||||||
#include <QFileOpenEvent>
|
#include <QFileOpenEvent>
|
||||||
#include <QMenu>
|
|
||||||
|
|
||||||
extern void qt_mac_set_dock_menu(QMenu* menu);
|
|
||||||
|
|
||||||
QMenu* MainApplication::macDockMenu()
|
|
||||||
{
|
|
||||||
if (!m_macDockMenu) {
|
|
||||||
m_macDockMenu = new QMenu(0);
|
|
||||||
qt_mac_set_dock_menu(m_macDockMenu);
|
|
||||||
}
|
|
||||||
return m_macDockMenu;
|
|
||||||
}
|
|
||||||
|
|
||||||
MacMenuReceiver* MainApplication::macMenuReceiver()
|
|
||||||
{
|
|
||||||
if (!m_macMenuReceiver) {
|
|
||||||
m_macMenuReceiver = new MacMenuReceiver(this);
|
|
||||||
}
|
|
||||||
return m_macMenuReceiver;
|
|
||||||
}
|
|
||||||
|
|
||||||
bool MainApplication::event(QEvent* e)
|
bool MainApplication::event(QEvent* e)
|
||||||
{
|
{
|
||||||
|
@ -31,6 +31,7 @@ class QNetworkDiskCache;
|
|||||||
|
|
||||||
class History;
|
class History;
|
||||||
class AutoFill;
|
class AutoFill;
|
||||||
|
class MainMenu;
|
||||||
class Bookmarks;
|
class Bookmarks;
|
||||||
class CookieJar;
|
class CookieJar;
|
||||||
class AutoSaver;
|
class AutoSaver;
|
||||||
@ -48,10 +49,6 @@ class HTML5PermissionsManager;
|
|||||||
class RegisterQAppAssociation;
|
class RegisterQAppAssociation;
|
||||||
class DesktopNotificationsFactory;
|
class DesktopNotificationsFactory;
|
||||||
|
|
||||||
#ifdef Q_OS_MAC
|
|
||||||
class MacMenuReceiver;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
class QUPZILLA_EXPORT MainApplication : public QtSingleApplication
|
class QUPZILLA_EXPORT MainApplication : public QtSingleApplication
|
||||||
{
|
{
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
@ -188,13 +185,7 @@ private:
|
|||||||
|
|
||||||
#ifdef Q_OS_MAC
|
#ifdef Q_OS_MAC
|
||||||
public:
|
public:
|
||||||
MacMenuReceiver* macMenuReceiver();
|
|
||||||
QMenu* macDockMenu();
|
|
||||||
bool event(QEvent* e);
|
bool event(QEvent* e);
|
||||||
|
|
||||||
private:
|
|
||||||
MacMenuReceiver* m_macMenuReceiver;
|
|
||||||
QMenu* m_macDockMenu;
|
|
||||||
#endif
|
#endif
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -39,6 +39,10 @@
|
|||||||
#include <QWebPage>
|
#include <QWebPage>
|
||||||
#include <QMenuBar>
|
#include <QMenuBar>
|
||||||
|
|
||||||
|
#ifdef Q_OS_MAC
|
||||||
|
extern void qt_mac_set_dock_menu(QMenu* menu);
|
||||||
|
#endif
|
||||||
|
|
||||||
MainMenu::MainMenu(BrowserWindow* window, QWidget* parent)
|
MainMenu::MainMenu(BrowserWindow* window, QWidget* parent)
|
||||||
: QMenu(parent)
|
: QMenu(parent)
|
||||||
, m_window(window)
|
, m_window(window)
|
||||||
@ -631,6 +635,13 @@ void MainMenu::init()
|
|||||||
// Add standard actions to File Menu (as it won't be ever cleared) and Mac menubar should move them to "Application" menu
|
// Add standard actions to File Menu (as it won't be ever cleared) and Mac menubar should move them to "Application" menu
|
||||||
m_menuFile->addAction(m_actions[QSL("Standard/About")]);
|
m_menuFile->addAction(m_actions[QSL("Standard/About")]);
|
||||||
m_menuFile->addAction(m_actions[QSL("Standard/Preferences")]);
|
m_menuFile->addAction(m_actions[QSL("Standard/Preferences")]);
|
||||||
|
|
||||||
|
// Create Dock menu
|
||||||
|
QMenu* dockMenu = new QMenu(0);
|
||||||
|
dockMenu->addAction(m_actions[QSL("File/NewTab")]);
|
||||||
|
dockMenu->addAction(m_actions[QSL("File/NewWindow")]);
|
||||||
|
dockMenu->addAction(m_actions[QSL("File/NewPrivateWindow")]);
|
||||||
|
qt_mac_set_dock_menu(dockMenu);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if defined(Q_OS_UNIX) && !defined(Q_OS_MAC)
|
#if defined(Q_OS_UNIX) && !defined(Q_OS_MAC)
|
||||||
|
Loading…
Reference in New Issue
Block a user