Bring back Folio

This commit is contained in:
Yari Polla 2023-03-06 19:13:48 +00:00
parent 5183fce7f7
commit c4f0ce09cb
14 changed files with 28 additions and 21 deletions

View file

@ -17,7 +17,7 @@ import org.kde.kquickcontrolsaddons 2.0
import org.kde.plasma.private.containmentlayoutmanager 1.0 as ContainmentLayoutManager
import org.kde.plasma.private.mobileshell 1.0 as MobileShell
import org.kde.plasma.private.mobileshell.state 1.0 as MobileShellState
import org.kde.private.plasma.mobile.homescreen.folio 1.0 as Folio
import org.kde.private.mobile.homescreen.folio 1.0 as Folio
import "private" as Private

View file

@ -21,7 +21,7 @@ import org.kde.plasma.private.containmentlayoutmanager 1.0 as ContainmentLayoutM
import org.kde.plasma.private.mobileshell 1.0 as MobileShell
import org.kde.plasma.private.mobileshell.state 1.0 as MobileShellState
import org.kde.private.plasma.mobile.homescreen.folio 1.0 as Folio
import org.kde.private.mobile.homescreen.folio 1.0 as Folio
Item {
id: root

View file

@ -7,23 +7,23 @@
import QtQuick 2.12
import QtQuick.Window 2.12
import QtQuick.Layouts 1.1
import QtGraphicalEffects 1.0
import Qt5Compat.GraphicalEffects
import org.kde.plasma.plasmoid 2.0
import org.kde.plasma.core 2.0 as PlasmaCore
import org.kde.plasma.components 3.0 as PlasmaComponents
import org.kde.draganddrop 2.0 as DragDrop
import org.kde.plasma.private.containmentlayoutmanager 1.0 as ContainmentLayoutManager
import org.kde.plasma.private.containmentlayoutmanager 1.0 as ContainmentLayoutManager
import org.kde.plasma.private.mobileshell 1.0 as MobileShell
import org.kde.private.plasma.mobile.homescreen.folio 1.0 as Folio
import org.kde.private.mobile.homescreen.folio 1.0 as Folio
import "private" as Private
DragDrop.DropArea {
id: dropArea
required property var homeScreenState
required property Folio.DesktopModel desktopModel
@ -52,6 +52,7 @@ DragDrop.DropArea {
z: 999999
appletsLayout: dropArea.appletsLayout
favoriteStrip: dropArea.favoriteStrip
desktopModel: dropArea.desktopModel
}
property bool inAppletEditMode: false
@ -68,7 +69,7 @@ DragDrop.DropArea {
event.accept(event.proposedAction);
launcherDragManager.active = true;
}
onDragMove: {
let posInFavorites = favoriteStrip.mapFromItem(this, event.x, event.y);
if (posInFavorites.y > 0) {

View file

@ -9,7 +9,7 @@ import QtQuick 2.4
import org.kde.plasma.plasmoid 2.0
import org.kde.plasma.private.containmentlayoutmanager 1.0 as ContainmentLayoutManager
import org.kde.plasma.private.mobileshell 1.0 as MobileShell
import org.kde.private.plasma.mobile.homescreen.folio 1.0 as Folio
import org.kde.private.mobile.homescreen.folio 1.0 as Folio
Item {
id: root

View file

@ -17,7 +17,7 @@ import org.kde.plasma.private.containmentlayoutmanager 1.0 as ContainmentLayoutM
import org.kde.plasma.private.mobileshell 1.0 as MobileShell
import org.kde.plasma.private.mobileshell.state 1.0 as MobileShellState
import org.kde.plasma.private.nanoshell 2.0 as NanoShell
import org.kde.private.plasma.mobile.homescreen.folio 1.0 as Folio
import org.kde.private.mobile.homescreen.folio 1.0 as Folio
import org.kde.kirigami 2.14 as Kirigami
Repeater {

View file

@ -18,7 +18,7 @@ import org.kde.kirigami 2.10 as Kirigami
import org.kde.plasma.private.nanoshell 2.0 as NanoShell
import org.kde.plasma.private.mobileshell 1.0 as MobileShell
import org.kde.plasma.private.mobileshell.state 1.0 as MobileShellState
import org.kde.private.plasma.mobile.homescreen.folio 1.0 as Folio
import org.kde.private.mobile.homescreen.folio 1.0 as Folio
import "../private"

View file

@ -17,7 +17,7 @@ import org.kde.kirigami 2.10 as Kirigami
import org.kde.plasma.private.nanoshell 2.0 as NanoShell
import org.kde.plasma.private.mobileshell 1.0 as MobileShell
import org.kde.private.plasma.mobile.homescreen.folio 1.0 as Folio
import org.kde.private.mobile.homescreen.folio 1.0 as Folio
import "../private"

View file

@ -15,7 +15,7 @@ import org.kde.plasma.components 3.0 as PlasmaComponents
import org.kde.plasma.private.mobileshell 1.0 as MobileShell
import org.kde.plasma.private.mobileshell.state 1.0 as MobileShellState
import org.kde.private.plasma.mobile.homescreen.folio 1.0 as Folio
import org.kde.private.mobile.homescreen.folio 1.0 as Folio
MobileShell.HomeScreen {
id: root

View file

@ -16,7 +16,7 @@ import org.kde.kquickcontrolsaddons 2.0
import org.kde.plasma.private.containmentlayoutmanager 1.0 as ContainmentLayoutManager
import org.kde.plasma.private.mobileshell 1.0 as MobileShell
import org.kde.private.plasma.mobile.homescreen.folio 1.0 as Folio
import org.kde.private.mobile.homescreen.folio 1.0 as Folio
PC3.RoundButton {
id: removeButton

View file

@ -7,7 +7,7 @@ set(folioplugin_SRCS
desktopmodel.cpp
)
install(FILES qmldir DESTINATION ${KDE_INSTALL_QMLDIR}/org/kde/private/plasma/mobile/homescreen/halcyon)
install(FILES qmldir DESTINATION ${KDE_INSTALL_QMLDIR}/org/kde/private/mobile/homescreen/folio)
add_library(folioplugin SHARED ${folioplugin_SRCS})
@ -24,6 +24,6 @@ target_link_libraries(folioplugin
KF6::WaylandClient
KF6::WindowSystem)
set_property(TARGET folioplugin PROPERTY LIBRARY_OUTPUT_DIRECTORY ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/org/kde/private/plasma/mobile/homescreen/folio)
install(TARGETS folioplugin DESTINATION ${KDE_INSTALL_QMLDIR}/org/kde/private/plasma/mobile/homescreen/folio)
set_property(TARGET folioplugin PROPERTY LIBRARY_OUTPUT_DIRECTORY ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/org/kde/private/mobile/homescreen/folio)
install(TARGETS folioplugin DESTINATION ${KDE_INSTALL_QMLDIR}/org/kde/private/mobile/homescreen/folio)

View file

@ -46,6 +46,12 @@ ApplicationListModel::ApplicationListModel(QObject *parent)
ApplicationListModel::~ApplicationListModel() = default;
ApplicationListModel *ApplicationListModel::self()
{
static ApplicationListModel *inst = new ApplicationListModel(nullptr);
return inst;
}
QHash<int, QByteArray> ApplicationListModel::roleNames() const
{
return {{ApplicationNameRole, QByteArrayLiteral("applicationName")},

View file

@ -53,6 +53,7 @@ public:
ApplicationListModel(QObject *parent = nullptr);
~ApplicationListModel() override;
static ApplicationListModel *self();
int rowCount(const QModelIndex &parent = QModelIndex()) const Q_DECL_OVERRIDE;
QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const Q_DECL_OVERRIDE;

View file

@ -7,11 +7,10 @@
void HalcyonPlugin::registerTypes(const char *uri)
{
Q_ASSERT(QLatin1String(uri) == QLatin1String("org.kde.private.plasma.mobile.homescreen.halcyon"));
Q_ASSERT(QLatin1String(uri) == QLatin1String("org.kde.private.mobile.homescreen.folio"));
ApplicationListModel *applicationListModel = new ApplicationListModel{this};
qmlRegisterSingletonType<ApplicationListModel>(uri, 1, 0, "ApplicationListModel", [applicationListModel](QQmlEngine *, QJSEngine *) -> QObject * {
return applicationListModel;
qmlRegisterSingletonType<ApplicationListModel>(uri, 1, 0, "ApplicationListModel", [](QQmlEngine *, QJSEngine *) -> QObject * {
return ApplicationListModel::self();
});
qmlRegisterType<DesktopModel>(uri, 1, 0, "DesktopModel");

View file

@ -1,6 +1,6 @@
# SPDX-FileCopyrightText: 2023 Devin Lin <devin@kde.org>
# SPDX-License-Identifier: GPL-2.0-or-later
module org.kde.private.plasma.mobile.homescreen.folio
module org.kde.private.mobile.homescreen.folio
plugin folioplugin