From 0963e25642f588da2d03feb94e36fb00a774d9c2 Mon Sep 17 00:00:00 2001 From: Craig Drummond Date: Sat, 17 Feb 2018 15:38:17 +0000 Subject: [PATCH] macOS fixes --- gui/mainwindow.cpp | 10 ++++++++-- gui/preferencesdialog.cpp | 1 + support/configdialog.h | 12 ++++++++---- support/dialog.h | 4 ++-- widgets/titlewidget.cpp | 2 ++ 5 files changed, 21 insertions(+), 8 deletions(-) diff --git a/gui/mainwindow.cpp b/gui/mainwindow.cpp index 69a57c9d1..35d3c920c 100644 --- a/gui/mainwindow.cpp +++ b/gui/mainwindow.cpp @@ -578,7 +578,9 @@ void MainWindow::init() bool showMenubar = Utils::Gnome!=Utils::currentDe() && Utils::Ubuntu_Gnome!=Utils::currentDe(); #endif if (showMenubar) { - #ifndef Q_OS_MAC + #ifdef Q_OS_MAC + menuButton->setVisible(false); + #else showMenubarAction = ActionCollection::get()->createAction("showmenubar", tr("Show Menubar")); showMenubarAction->setShortcut(Qt::ControlModifier+Qt::Key_M); showMenubarAction->setCheckable(true); @@ -609,10 +611,12 @@ void MainWindow::init() menuBar()->addMenu(menu); if (Utils::KDE!=Utils::currentDe()) { menu=new QMenu(tr("&View"), this); + #ifndef Q_OS_MAC if (showMenubarAction) { addMenuAction(menu, showMenubarAction); menu->addSeparator(); } + #endif addMenuAction(menu, expandInterfaceAction); addMenuAction(menu, fullScreenAction); //addMenuAction(menu, songInfoAction); @@ -629,9 +633,11 @@ void MainWindow::init() menuBar()->addMenu(menu); if (Utils::KDE==Utils::currentDe()) { menu=new QMenu(tr("&Settings"), this); + #ifndef Q_OS_MAC if (showMenubarAction) { addMenuAction(menu, showMenubarAction); } + #endif addMenuAction(menu, expandInterfaceAction); addMenuAction(menu, fullScreenAction); //addMenuAction(menu, songInfoAction); @@ -1845,7 +1851,7 @@ void MainWindow::updateStatus(MPDStatus * const status) consumePlayQueueAction->setChecked(status->consume()); updateNextTrack(status->nextSongId()); - if (status->timeElapsed()<172800 && (!currentIsStream() || (status->timeTotal()>0 && status->timeElapsed()<=status->timeTotal()))) { + if (status->timeElapsed()<64800 && (!currentIsStream() || (status->timeTotal()>0 && status->timeElapsed()<=status->timeTotal()))) { if (status->state() == MPDState_Stopped || status->state() == MPDState_Inactive) { nowPlaying->setRange(0, 0); } else { diff --git a/gui/preferencesdialog.cpp b/gui/preferencesdialog.cpp index c83b05498..69210a8fb 100644 --- a/gui/preferencesdialog.cpp +++ b/gui/preferencesdialog.cpp @@ -92,6 +92,7 @@ PreferencesDialog::PreferencesDialog(QWidget *parent) addPage(QLatin1String("custom"), custom, tr("Custom Actions"), Icon(QStringList() << "fork" << "gtk-execute"), tr("Custom Actions")); #ifdef Q_OS_MAC setCaption(tr("Cantata Preferences")); + setMinimumWidth(800); #else setCaption(tr("Configure")); #endif diff --git a/support/configdialog.h b/support/configdialog.h index fad392873..af070c26e 100644 --- a/support/configdialog.h +++ b/support/configdialog.h @@ -76,7 +76,11 @@ public: virtual void cancel()=0; public Q_SLOTS: + #ifdef __APPLE__ + void slotButtonClicked(int button); + #else void slotButtonClicked(int button) override; + #endif private Q_SLOTS: void activatePage(); @@ -85,10 +89,10 @@ private Q_SLOTS: private: #ifdef __APPLE__ - void keyPressEvent(QKeyEvent *e); - void showEvent(QShowEvent *e); - void hideEvent(QHideEvent *e); - void closeEvent(QCloseEvent *e); + void keyPressEvent(QKeyEvent *e) override; + void showEvent(QShowEvent *e) override; + void hideEvent(QHideEvent *e) override; + void closeEvent(QCloseEvent *e) override; #endif private: diff --git a/support/dialog.h b/support/dialog.h index 0b9b59980..8a1c10dc8 100644 --- a/support/dialog.h +++ b/support/dialog.h @@ -136,8 +136,8 @@ public: void resize(const QSize &sz); #ifdef Q_OS_MAC - virtual void hideEvent(QHideEvent *e); - virtual void closeEvent(QCloseEvent *e); + void hideEvent(QHideEvent *e) override; + void closeEvent(QCloseEvent *e) override; #endif private Q_SLOTS: diff --git a/widgets/titlewidget.cpp b/widgets/titlewidget.cpp index 37193f5c8..cc8bd2ece 100644 --- a/widgets/titlewidget.cpp +++ b/widgets/titlewidget.cpp @@ -25,6 +25,7 @@ #include "support/squeezedtextlabel.h" #include "support/utils.h" #include "support/icon.h" +#include "support/proxystyle.h" #include "gui/stdactions.h" #include "toolbutton.h" #include "groupedview.h" @@ -47,6 +48,7 @@ TitleWidget::TitleWidget(QWidget *p) , pressed(false) , controls(nullptr) { + setProperty(ProxyStyle::constModifyFrameProp, ProxyStyle::VF_Side|ProxyStyle::VF_Top); QHBoxLayout *layout=new QHBoxLayout(this); QVBoxLayout *textLayout=new QVBoxLayout(nullptr); image=new QLabel(this);