X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=homescreen%2Fsrc%2Fhomescreenhandler.h;h=478d9fc6b8a86c043b07a0196ceb2f45ec4d7939;hb=b2c08ec4a30e5acf3cb1851f71bda88bc542f7d1;hp=503221aaf5c653b7ca2c44819fa8d3375a59830a;hpb=20970d846906a070305d8e96cf0735bf7fd831b1;p=apps%2Fhomescreen.git diff --git a/homescreen/src/homescreenhandler.h b/homescreen/src/homescreenhandler.h index 503221a..478d9fc 100644 --- a/homescreen/src/homescreenhandler.h +++ b/homescreen/src/homescreenhandler.h @@ -1,68 +1,49 @@ +// SPDX-License-Identifier: Apache-2.0 /* * Copyright (c) 2017 TOYOTA MOTOR CORPORATION - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. + * Copyright (c) 2022 Konsulko Group */ #ifndef HOMESCREENHANDLER_H #define HOMESCREENHANDLER_H #include +#include #include "applicationlauncher.h" -#include "applaunch_interface.h" - -#include "shell.h" -#include +#include "AppLauncherClient.h" +#include "AglShellGrpcClient.h" using namespace std; class HomescreenHandler : public QObject { - Q_OBJECT + Q_OBJECT public: - explicit HomescreenHandler(Shell *aglShell, ApplicationLauncher *launcher = 0, QObject *parent = 0); - ~HomescreenHandler(); - - void init(void); - - Q_INVOKABLE void tapShortcut(QString application_id); + explicit HomescreenHandler(ApplicationLauncher *launcher = 0, GrpcClient *_client = nullptr, QObject *parent = 0); + ~HomescreenHandler(); -#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 + Q_INVOKABLE void tapShortcut(QString application_id); - void addAppToStack(const QString& application_id); + void addAppToStack(const QString& application_id); + void activateApp(const QString& app_id); + void deactivateApp(const QString& app_id); + void setGrpcClient(GrpcClient *_client) { m_grpc_client = _client; } + GrpcClient *getGrpcClient(void) { return m_grpc_client; } + QStringList apps_stack; + std::list> pending_app_list; signals: - void showNotification(QString application_id, QString icon_path, QString text); - void showInformation(QString info); + 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); + void processAppStatusEvent(const QString &id, const QString &status); private: - ApplicationLauncher *mp_launcher; - Shell *aglShell; - org::automotivelinux::AppLaunch *applaunch_iface; - QStringList apps_stack; + ApplicationLauncher *mp_launcher; + AppLauncherClient *mp_applauncher_client; + GrpcClient *m_grpc_client; }; #endif // HOMESCREENHANDLER_H