diff options
author | Ken Moore <moorekou@gmail.com> | 2016-06-13 10:15:46 -0400 |
---|---|---|
committer | Ken Moore <moorekou@gmail.com> | 2016-06-13 10:15:46 -0400 |
commit | 7465015c4655c0fe131fa0ae382e3399e001df8f (patch) | |
tree | 5bb31942e356b3093c6b1bd050507981bea2eeaf /src-qt5/core | |
parent | Setup the keyboard shortcut so the windows/meta key will open the start menu. (diff) | |
download | lumina-7465015c4655c0fe131fa0ae382e3399e001df8f.tar.gz lumina-7465015c4655c0fe131fa0ae382e3399e001df8f.tar.bz2 lumina-7465015c4655c0fe131fa0ae382e3399e001df8f.zip |
A few changes:
1) Cleanup a compile warning in LDesktopBackground.cpp
2) Ensure the desktop re-themes when the theme changes (another leftover from changing the binary name)
3) Setup the appmenu and userbutton panel plugin to try and register themselves as "Start buttons" for the purpose of keyboard shortcuts opening them on demand.
Diffstat (limited to 'src-qt5/core')
7 files changed, 27 insertions, 4 deletions
diff --git a/src-qt5/core/libLumina/LuminaThemes.cpp b/src-qt5/core/libLumina/LuminaThemes.cpp index c5e4fe51..9d33960f 100644 --- a/src-qt5/core/libLumina/LuminaThemes.cpp +++ b/src-qt5/core/libLumina/LuminaThemes.cpp @@ -454,7 +454,7 @@ void LuminaThemeEngine::reloadFiles(){ //Check the Theme file/settings if(lastcheck < QFileInfo(QDir::homePath()+"/.lumina/themesettings.cfg").lastModified().addSecs(1) ){ QStringList current = LTHEME::currentSettings(); - if(application->applicationFilePath().section("/",-1)=="Lumina-DE"){ + if(application->applicationFilePath().section("/",-1)=="lumina-desktop"){ application->setStyleSheet( LTHEME::assembleStyleSheet(current[0], current[1], current[3], current[4]) ); } if(icons!=current[2]){ diff --git a/src-qt5/core/lumina-desktop/LDesktop.cpp b/src-qt5/core/lumina-desktop/LDesktop.cpp index 11d99581..134cada1 100644 --- a/src-qt5/core/lumina-desktop/LDesktop.cpp +++ b/src-qt5/core/lumina-desktop/LDesktop.cpp @@ -106,6 +106,7 @@ void LDesktop::SystemTerminal(){ LSession::handle()->sessionSettings()->sync(); //make sure it is up to date QString term = LXDG::findDefaultAppForMime("application/terminal"); //LSession::handle()->sessionSettings()->value("default-terminal","xterm").toString(); if(term.endsWith(".desktop")){ term = "lumina-open \""+term+"\""; } + else if(term.isEmpty() || !LUtils::isValidBinary(term)){ term = "xterm"; } LSession::LaunchApplication(term); } diff --git a/src-qt5/core/lumina-desktop/LDesktopBackground.cpp b/src-qt5/core/lumina-desktop/LDesktopBackground.cpp index bdb6dbab..dadbd848 100644 --- a/src-qt5/core/lumina-desktop/LDesktopBackground.cpp +++ b/src-qt5/core/lumina-desktop/LDesktopBackground.cpp @@ -8,7 +8,7 @@ #include <QPainter> -void LDesktopBackground::paintEvent(QPaintEvent *pe) { +void LDesktopBackground::paintEvent(QPaintEvent *) { if (bgPixmap != NULL) { QPainter painter(this); painter.setBrush(*bgPixmap); diff --git a/src-qt5/core/lumina-desktop/panel-plugins/appmenu/LAppMenuPlugin.cpp b/src-qt5/core/lumina-desktop/panel-plugins/appmenu/LAppMenuPlugin.cpp index 7c9b7ab0..57e84a1d 100644 --- a/src-qt5/core/lumina-desktop/panel-plugins/appmenu/LAppMenuPlugin.cpp +++ b/src-qt5/core/lumina-desktop/panel-plugins/appmenu/LAppMenuPlugin.cpp @@ -24,6 +24,9 @@ LAppMenuPlugin::LAppMenuPlugin(QWidget *parent, QString id, bool horizontal) : L connect(LSession::handle()->applicationMenu(), SIGNAL(AppMenuUpdated()), this, SLOT(UpdateMenu())); QTimer::singleShot(0,this, SLOT(OrientationChange())); //Update icons/sizes QTimer::singleShot(0,this, SLOT(UpdateMenu()) ); + //Setup the global shortcut handling for opening the start menu + connect(QApplication::instance(), SIGNAL(StartButtonActivated()), this, SLOT(shortcutActivated()) ); + LSession::handle()->registerStartButton(this->type()); } LAppMenuPlugin::~LAppMenuPlugin(){ @@ -40,6 +43,13 @@ void LAppMenuPlugin::updateButtonVisuals(){ // ======================== // PRIVATE FUNCTIONS // ======================== +void LAppMenuPlugin::shortcutActivated(){ + if(LSession::handle()->registerStartButton(this->type())){ + if(button->menu()->isVisible()){ button->menu()->hide(); } + else{ button->showMenu(); } + } +} + void LAppMenuPlugin::LaunchItem(QAction* item){ QString appFile = item->whatsThis(); if(appFile.startsWith("internal::")){ diff --git a/src-qt5/core/lumina-desktop/panel-plugins/appmenu/LAppMenuPlugin.h b/src-qt5/core/lumina-desktop/panel-plugins/appmenu/LAppMenuPlugin.h index 36cd8605..659d781f 100644 --- a/src-qt5/core/lumina-desktop/panel-plugins/appmenu/LAppMenuPlugin.h +++ b/src-qt5/core/lumina-desktop/panel-plugins/appmenu/LAppMenuPlugin.h @@ -35,6 +35,7 @@ private: void updateButtonVisuals(); private slots: + void shortcutActivated(); void LaunchItem(QAction* item); void UpdateMenu(); @@ -60,4 +61,4 @@ public slots: } }; -#endif
\ No newline at end of file +#endif diff --git a/src-qt5/core/lumina-desktop/panel-plugins/userbutton/LUserButton.cpp b/src-qt5/core/lumina-desktop/panel-plugins/userbutton/LUserButton.cpp index 1fefa304..acb27135 100644 --- a/src-qt5/core/lumina-desktop/panel-plugins/userbutton/LUserButton.cpp +++ b/src-qt5/core/lumina-desktop/panel-plugins/userbutton/LUserButton.cpp @@ -26,6 +26,10 @@ LUserButtonPlugin::LUserButtonPlugin(QWidget *parent, QString id, bool horizonta button->setMenu(menu); connect(menu, SIGNAL(aboutToHide()), this, SLOT(updateButtonVisuals()) ); + //Setup the global shortcut handling for opening the start menu + connect(QApplication::instance(), SIGNAL(StartButtonActivated()), this, SLOT(shortcutActivated()) ); + LSession::handle()->registerStartButton(this->type()); + QTimer::singleShot(0,this, SLOT(OrientationChange())); //Update icons/sizes } @@ -55,3 +59,9 @@ void LUserButtonPlugin::closeMenu(){ menu->hide(); } +void LUserButtonPlugin::shortcutActivated(){ + if(LSession::handle()->registerStartButton(this->type())){ + if(menu->isVisible()){ closeMenu(); } + else{ openMenu(); } + } +} diff --git a/src-qt5/core/lumina-desktop/panel-plugins/userbutton/LUserButton.h b/src-qt5/core/lumina-desktop/panel-plugins/userbutton/LUserButton.h index ca835bfe..8d5e5040 100644 --- a/src-qt5/core/lumina-desktop/panel-plugins/userbutton/LUserButton.h +++ b/src-qt5/core/lumina-desktop/panel-plugins/userbutton/LUserButton.h @@ -44,6 +44,7 @@ private: private slots: void openMenu(); void closeMenu(); + void shortcutActivated(); void updateButtonVisuals(); @@ -71,4 +72,4 @@ public slots: } }; -#endif
\ No newline at end of file +#endif |