homescreen/src/shell: Cleanup older shell source file not needed 09/29309/2
authorMarius Vlad <marius.vlad@collabora.com>
Thu, 12 Oct 2023 13:12:21 +0000 (16:12 +0300)
committerMarius Vlad <marius.vlad@collabora.com>
Wed, 25 Oct 2023 21:41:57 +0000 (00:41 +0300)
We're no longer need it, so it would better to just remove it. We still
use the agl-shell for setting the wayland surfaces, but we don't use the
Shell object wrapper for that.

Bug-AGL: SPEC-4912
Signed-off-by: Marius Vlad <marius.vlad@collabora.com>
Change-Id: I3776cd25e312f6ed128bbe14b187607f4b607541

homescreen/meson.build
homescreen/src/main.cpp
homescreen/src/shell.cpp [deleted file]
homescreen/src/shell.h [deleted file]

index 50c644c..98c0505 100644 (file)
@@ -113,14 +113,12 @@ homescreen_src_headers = [
   'src/statusbarserver.h',
   'src/homescreenhandler.h',
   'src/AglShellGrpcClient.h',
-  'src/shell.h'
 ]
 
 moc_files = qt5.compile_moc(headers: homescreen_src_headers,
                             dependencies: qt5_dep)
 
 homescreen_src = [
-  'src/shell.cpp',
   'src/statusbarserver.cpp',
   'src/statusbarmodel.cpp',
   'src/applicationlauncher.cpp',
index 8598a33..66ddb75 100644 (file)
@@ -16,6 +16,7 @@
 #include <QtQml/qqml.h>
 #include <QQuickWindow>
 #include <QTimer>
+#include <QScreen>
 
 #include <weather.h>
 #include <bluetooth.h>
@@ -31,7 +32,6 @@
 #include <wayland-client.h>
 
 #include "agl-shell-client-protocol.h"
-#include "shell.h"
 
 #include <thread>
 #include "AglShellGrpcClient.h"
@@ -87,34 +87,7 @@ static void
 agl_shell_app_state(void *data, struct agl_shell *agl_shell,
                const char *app_id, uint32_t state)
 {
-#if 0
-       struct shell_data *shell_data = static_cast<struct shell_data *>(data);
-       HomescreenHandler *homescreenHandler = shell_data->homescreenHandler;
-
-       if (!homescreenHandler)
-               return;
-
-       switch (state) {
-       case AGL_SHELL_APP_STATE_STARTED:
-               qDebug() << "Got AGL_SHELL_APP_STATE_STARTED for app_id " << app_id;
-               homescreenHandler->processAppStatusEvent(app_id, "started");
-               break;
-       case AGL_SHELL_APP_STATE_TERMINATED:
-               qDebug() << "Got AGL_SHELL_APP_STATE_TERMINATED for app_id " << app_id;
-               // handled by HomescreenHandler::processAppStatusEvent
-               break;
-       case AGL_SHELL_APP_STATE_ACTIVATED:
-               qDebug() << "Got AGL_SHELL_APP_STATE_ACTIVATED for app_id " << app_id;
-               homescreenHandler->addAppToStack(app_id);
-               break;
-       case AGL_SHELL_APP_STATE_DEACTIVATED:
-               qDebug() << "Got AGL_SHELL_APP_STATE_DEACTIVATED for app_id " << app_id;
-               homescreenHandler->processAppStatusEvent(app_id, "deactivated");
-               break;
-       default:
-               break;
-       }
-#endif
+       /* unused */
 }
 
 static void
diff --git a/homescreen/src/shell.cpp b/homescreen/src/shell.cpp
deleted file mode 100644 (file)
index b7583c1..0000000
+++ /dev/null
@@ -1,60 +0,0 @@
-/*
- * Copyright © 2019, 2022 Collabora Ltd.
- *
- * Permission is hereby granted, free of charge, to any person obtaining
- * a copy of this software and associated documentation files (the
- * "Software"), to deal in the Software without restriction, including
- * without limitation the rights to use, copy, modify, merge, publish,
- * distribute, sublicense, and/or sell copies of the Software, and to
- * permit persons to whom the Software is furnished to do so, subject to
- * the following conditions:
- *
- * The above copyright notice and this permission notice (including the
- * next paragraph) shall be included in all copies or substantial
- * portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- * NONINFRINGEMENT.  IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
- * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
- * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- */
-
-#include <QGuiApplication>
-#include <QDebug>
-#include "shell.h"
-// defined by meson build file
-#include QT_QPA_HEADER
-#include <stdio.h>
-
-static struct wl_output *
-getWlOutput(QPlatformNativeInterface *native, QScreen *screen)
-{
-       void *output = native->nativeResourceForScreen("output", screen);
-       return static_cast<struct ::wl_output*>(output);
-}
-
-void Shell::activate_app(QWindow *win, const QString &app_id)
-{
-    QPlatformNativeInterface *native = qApp->platformNativeInterface();
-    QScreen *screen = win->screen();
-
-    struct wl_output *output = getWlOutput(native, screen);
-
-    qDebug() << "++ activating app_id " << app_id.toStdString().c_str();
-
-    agl_shell_activate_app(this->shell.get(),
-                           app_id.toStdString().c_str(),
-                           output);
-}
-
-void Shell::set_activate_region(struct wl_output *output, int32_t x, int32_t y,
-                               int32_t width, int32_t height)
-{
-#ifdef AGL_SHELL_SET_ACTIVATE_REGION_SINCE_VERSION
-       agl_shell_set_activate_region(this->shell.get(), output, x, y, width, height);
-#endif
-}
diff --git a/homescreen/src/shell.h b/homescreen/src/shell.h
deleted file mode 100644 (file)
index 51990d8..0000000
+++ /dev/null
@@ -1,60 +0,0 @@
-/*
- * Copyright © 2019 Collabora Ltd.
- *
- * Permission is hereby granted, free of charge, to any person obtaining
- * a copy of this software and associated documentation files (the
- * "Software"), to deal in the Software without restriction, including
- * without limitation the rights to use, copy, modify, merge, publish,
- * distribute, sublicense, and/or sell copies of the Software, and to
- * permit persons to whom the Software is furnished to do so, subject to
- * the following conditions:
- *
- * The above copyright notice and this permission notice (including the
- * next paragraph) shall be included in all copies or substantial
- * portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- * NONINFRINGEMENT.  IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
- * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
- * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- */
-
-
-#ifndef SHELLHANDLER_H
-#define SHELLHANDLER_H
-
-#include <QObject>
-#include <QString>
-#include <QScreen>
-#include <QWindow>
-#include <memory>
-#include "agl-shell-client-protocol.h"
-
-/*
- * Basic type to wrap the agl_shell wayland object into a QObject, so that it
- * can be used in callbacks from QML.
- */
-
-class Shell : public QObject
-{
-       Q_OBJECT
-
-public:
-       std::shared_ptr<struct agl_shell> shell;
-
-       Shell(std::shared_ptr<struct agl_shell> shell, QObject *parent = nullptr) :
-               QObject(parent), shell(shell)
-       {}
-       public slots:
-               void activate_app(QWindow *win, const QString &app_id);
-       void set_activate_region(struct wl_output *output, int32_t x, int32_t y,
-                       int32_t width, int32_t height);
-private:
-       struct wl_region *m_region = nullptr;
-};
-
-#endif // SHELLHANDLER_H