summaryrefslogtreecommitdiffstats
path: root/src/traylabelmgr.h
diff options
context:
space:
mode:
authorMichele Calgaro <michele.calgaro@yahoo.it>2020-03-16 21:58:44 +0900
committerMichele Calgaro <michele.calgaro@yahoo.it>2020-03-16 21:58:44 +0900
commitab3e99d8ee8ef5b53dcd1e6f90e3cdbbc08322e3 (patch)
treee622bfddde12ec89c8a84bfefec8dce7140109db /src/traylabelmgr.h
parentd9e1d9fa71544a674d213117c0b675a0e874e556 (diff)
downloadtdedocker-ab3e99d8ee8ef5b53dcd1e6f90e3cdbbc08322e3.tar.gz
tdedocker-ab3e99d8ee8ef5b53dcd1e6f90e3cdbbc08322e3.zip
Conversion to TDE application.
Notable changes: 1) save/restore data are saved in TDE session files. 2) remove -a, -l options. Removed "Launch on startup" option. 3) docked application are restored automatically by the TDE session manager. After being restored, tdedocker will wait for 5 seconds to let the various applications be restored, then it will try to grab the required windows. 4) save/restore of docked applications is now working properly. 5) due to the way TDE manages command line options, at the moment additional parameters cannot be passed to the application to be docked. This will be address in a subsequent commit. Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
Diffstat (limited to 'src/traylabelmgr.h')
-rw-r--r--src/traylabelmgr.h24
1 files changed, 15 insertions, 9 deletions
diff --git a/src/traylabelmgr.h b/src/traylabelmgr.h
index 8a27a6c..90ff1ba 100644
--- a/src/traylabelmgr.h
+++ b/src/traylabelmgr.h
@@ -1,6 +1,6 @@
/*
* Copyright (C) 2004 Girish Ramakrishnan All Rights Reserved.
- *
+ *
* This 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
@@ -25,12 +25,16 @@
#include <tqptrlist.h>
#include <tqvaluelist.h>
#include <tqstringlist.h>
+#include <tqtimer.h>
+#include <tdeapplication.h>
#include "customtraylabel.h"
class CustomTrayLabel;
+class TDECmdLineArgs;
+class TQSessionManager;
-class TrayLabelMgr : public TQObject
+class TrayLabelMgr : public TQObject, public KSessionManaged
{
Q_OBJECT
@@ -40,21 +44,21 @@ public:
~TrayLabelMgr();
- TQString saveSession();
+ bool saveState(TQSessionManager &sm);
bool x11EventFilter(XEvent *);
- bool processCommand(const TQStringList& argv);
+ bool processCommand(const TQStringList &argv);
int hiddenLabelsCount(void) const;
int dockedLabelsCount(void) const;
bool isWindowDocked(Window w);
-
+
public slots:
- void about();
void undockAll();
void dockAnother();
private slots:
void startup();
+ void doRestoreSession();
void trayLabelDestroyed(TQObject *);
void sysTrayDestroyed(void);
void notifySysTrayAbsence();
@@ -62,17 +66,19 @@ private slots:
private:
TrayLabelMgr();
bool processCommand(int argc, char** argv);
+ bool processCommand(TDECmdLineArgs *args);
void manageTrayLabel(TQTrayLabel *l);
- bool restoreSession(const TQString& sessionId);
-
+ void restoreSession();
+
TQTrayLabel *dockApplication(char *argv[]);
TQTrayLabel *selectAndDock(Window w = None, bool checkNormality = true);
TQPtrList<TQTrayLabel> mTrayLabels;
TQValueList<TQStringList> mRequestQ;
+ TQTimer restoreSessionTimer;
bool mReady;
int mHiddenLabelsCount;
-
+
static const char *mOptionString;
static TrayLabelMgr *gTrayLabelMgr;
};