X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=homescreen%2Fsrc%2Fhomescreenhandler.h;h=478d9fc6b8a86c043b07a0196ceb2f45ec4d7939;hb=b2c08ec4a30e5acf3cb1851f71bda88bc542f7d1;hp=1a9a2b5225365cab74dcea49deee47b6ec2b5008;hpb=389a02a99961f1bcc6d317ffc9223ea7f2d05023;p=apps%2Fhomescreen.git diff --git a/homescreen/src/homescreenhandler.h b/homescreen/src/homescreenhandler.h index 1a9a2b5..478d9fc 100644 --- a/homescreen/src/homescreenhandler.h +++ b/homescreen/src/homescreenhandler.h @@ -1,47 +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 +#include "applicationlauncher.h" +#include "AppLauncherClient.h" +#include "AglShellGrpcClient.h" + using namespace std; class HomescreenHandler : public QObject { - Q_OBJECT + Q_OBJECT public: - explicit HomescreenHandler(QObject *parent = 0); - ~HomescreenHandler(); + explicit HomescreenHandler(ApplicationLauncher *launcher = 0, GrpcClient *_client = nullptr, QObject *parent = 0); + ~HomescreenHandler(); + + Q_INVOKABLE void tapShortcut(QString application_id); - void init(int port, const char* token); + 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; } - Q_INVOKABLE void tapShortcut(QString application_id); + QStringList apps_stack; + std::list> pending_app_list; +signals: + void showNotification(QString application_id, QString icon_path, QString text); + void showInformation(QString info); - void onRep(struct json_object* reply_contents); - void onEv(const string& event, struct json_object* event_contents); +public slots: + void processAppStatusEvent(const QString &id, const QString &status); - static void* myThis; - static void onRep_static(struct json_object* reply_contents); - static void onEv_static(const string& event, struct json_object* event_contents); private: - LibHomeScreen *mp_hs; + ApplicationLauncher *mp_launcher; + AppLauncherClient *mp_applauncher_client; + GrpcClient *m_grpc_client; }; #endif // HOMESCREENHANDLER_H