2 * Copyright (c) 2017 TOYOTA MOTOR CORPORATION
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
17 #ifndef HOMESCREENHANDLER_H
18 #define HOMESCREENHANDLER_H
22 #include "applicationlauncher.h"
23 #include "applaunch_interface.h"
30 class HomescreenHandler : public QObject
34 explicit HomescreenHandler(Shell *aglShell, ApplicationLauncher *launcher = 0, QObject *parent = 0);
39 Q_INVOKABLE void tapShortcut(QString application_id);
42 void onRep(struct json_object* reply_contents);
43 void onEv(const string& event, struct json_object* event_contents);
47 static void onRep_static(struct json_object* reply_contents);
48 static void onEv_static(const string& event, struct json_object* event_contents);
51 void addAppToStack(const QString& application_id);
54 void showNotification(QString application_id, QString icon_path, QString text);
55 void showInformation(QString info);
58 void appStarted(const QString& application_id);
59 void appTerminated(const QString& application_id);
62 ApplicationLauncher *mp_launcher;
64 org::automotivelinux::AppLaunch *applaunch_iface;
65 QStringList apps_stack;
68 #endif // HOMESCREENHANDLER_H