Add VIS vehicle signal support
[apps/homescreen.git] / homescreen / src / homescreenhandler.h
index 5dfe041..503221a 100644 (file)
 #define HOMESCREENHANDLER_H
 
 #include <QObject>
-#include <libhomescreen.hpp>
+
+#include "applicationlauncher.h"
+#include "applaunch_interface.h"
+
+#include "shell.h"
 #include <string>
 
 using namespace std;
@@ -27,25 +31,38 @@ class HomescreenHandler : public QObject
 {
     Q_OBJECT
 public:
-    explicit HomescreenHandler(QObject *parent = 0);
+    explicit HomescreenHandler(Shell *aglShell, ApplicationLauncher *launcher = 0, QObject *parent = 0);
     ~HomescreenHandler();
 
-    void init(int port, const char* token);
+    void init(void);
 
     Q_INVOKABLE void tapShortcut(QString application_id);
 
+#if 0
     void onRep(struct json_object* reply_contents);
     void onEv(const string& event, struct json_object* event_contents);
-
+#endif
     static void* myThis;
+#if 0
     static void onRep_static(struct json_object* reply_contents);
     static void onEv_static(const string& event, struct json_object* event_contents);
+#endif
+
+    void addAppToStack(const QString& application_id);
 
 signals:
     void showNotification(QString application_id, QString icon_path, QString text);
     void showInformation(QString info);
+
+public slots:
+    void appStarted(const QString& application_id);
+    void appTerminated(const QString& application_id);
+
 private:
-    LibHomeScreen *mp_hs;
+    ApplicationLauncher *mp_launcher;
+    Shell *aglShell;
+    org::automotivelinux::AppLaunch *applaunch_iface;
+    QStringList apps_stack;
 };
 
 #endif // HOMESCREENHANDLER_H