summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarius Vlad <marius.vlad@collabora.com>2023-10-12 16:12:21 +0300
committerMarius Vlad <marius.vlad@collabora.com>2023-10-26 00:41:57 +0300
commitc13f6c196066bccb33c3a1f524a108b52c356bfd (patch)
treed6b2cb785de44383e5ddcffc98c44fb4ec60974c
parent5d6e250cf1175ede73764514b3cd9359467ddcaf (diff)
homescreen/src/shell: Cleanup older shell source file not needed
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
-rw-r--r--homescreen/meson.build2
-rw-r--r--homescreen/src/main.cpp31
-rw-r--r--homescreen/src/shell.cpp60
-rw-r--r--homescreen/src/shell.h60
4 files changed, 2 insertions, 151 deletions
diff --git a/homescreen/meson.build b/homescreen/meson.build
index 50c644c..98c0505 100644
--- a/homescreen/meson.build
+++ b/homescreen/meson.build
@@ -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',
diff --git a/homescreen/src/main.cpp b/homescreen/src/main.cpp
index 8598a33..66ddb75 100644
--- a/homescreen/src/main.cpp
+++ b/homescreen/src/main.cpp
@@ -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
index b7583c1..0000000
--- a/homescreen/src/shell.cpp
+++ /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
index 51990d8..0000000
--- a/homescreen/src/shell.h
+++ /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