2017-06-04 01:58:03 +03:00
/*
* Copyright 2016 Smith AR < audoban @ openmailbox . org >
* Michail Vourlakos < mvourlakos @ gmail . com >
*
* This file is part of Latte - Dock
*
* Latte - Dock is free software ; you can redistribute it and / or
* modify it under the terms of the GNU General Public License as
* published by the Free Software Foundation ; either version 2 of
* the License , or ( at your option ) any later version .
*
* Latte - Dock is distributed in the hope that it will be useful ,
* but WITHOUT ANY WARRANTY ; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE . See the
* GNU General Public License for more details .
*
* You should have received a copy of the GNU General Public License
* along with this program . If not , see < http : //www.gnu.org/licenses/>.
*/
# ifndef GLOBALSHORTCUTS_H
# define GLOBALSHORTCUTS_H
# include "dockcorona.h"
2017-06-04 02:43:52 +03:00
# include "dockview.h"
2017-06-04 01:58:03 +03:00
# include "../liblattedock/dock.h"
2017-06-04 11:15:32 +03:00
# include <QQuickItem>
# include <QMetaMethod>
2017-06-04 01:58:03 +03:00
class DockCorona ;
2017-06-04 02:43:52 +03:00
class DockView ;
2017-06-04 01:58:03 +03:00
namespace Latte {
class GlobalShortcuts : public QObject {
Q_OBJECT
public :
GlobalShortcuts ( QObject * parent = nullptr ) ;
~ GlobalShortcuts ( ) override ;
void activateLauncherMenu ( ) ;
void updateDockItemBadge ( QString identifier , QString value ) ;
2017-06-04 10:08:58 +03:00
private slots :
void hideDockTimerSlot ( ) ;
2017-06-04 01:58:03 +03:00
private :
void init ( ) ;
2017-06-04 02:43:52 +03:00
void activateTaskManagerEntry ( int index , Qt : : Key modifier ) ;
void showDock ( ) ;
void hideDock ( ) ;
2017-06-04 01:58:03 +03:00
2017-06-04 10:08:58 +03:00
QAction * m_lastInvokedAction ;
2017-06-04 02:43:52 +03:00
QTimer m_hideDockTimer ;
DockView * m_hideDock ;
2017-06-04 01:58:03 +03:00
2017-06-04 11:15:32 +03:00
int m_tasksMethodIndex { - 1 } ;
QQuickItem * m_tasksPlasmoid { nullptr } ;
QMetaMethod m_methodShowNumbers ;
2017-06-04 02:43:52 +03:00
DockCorona * m_corona { nullptr } ;
2017-06-04 01:58:03 +03:00
} ;
}
# endif // GLOBALSHORTCUTS_H