Page Menu
Home
Phorge
Search
Configure Global Search
Log In
Files
F43885033
D284.1771558226.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Award Token
Flag For Later
Size
7 KB
Referenced Files
None
Subscribers
None
D284.1771558226.diff
View Options
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -161,6 +161,7 @@
TabView.qml
Tab.qml
ClosableScrollablePage.qml
+ ClosableScrollableOverlay.qml
SelfDestroyableOverlaySheet.qml
RoomListView.qml
RoomListViewItemDelegate.qml
diff --git a/src/contents/ui/ActionSettingsPage.qml b/src/contents/ui/ActionSettingsPage.qml
--- a/src/contents/ui/ActionSettingsPage.qml
+++ b/src/contents/ui/ActionSettingsPage.qml
@@ -9,7 +9,7 @@
import '.' as Kazv
import 'shortcuts' as KazvShortcuts
-Kazv.ClosableScrollablePage {
+Kazv.ClosableScrollableOverlay {
id: page
property alias actionsToConfigure: settings.actions
title: l10n.get('action-settings-page-title')
diff --git a/src/contents/ui/ClosableScrollableOverlay.qml b/src/contents/ui/ClosableScrollableOverlay.qml
new file mode 100644
--- /dev/null
+++ b/src/contents/ui/ClosableScrollableOverlay.qml
@@ -0,0 +1,10 @@
+import QtQuick 2.2
+
+import '.' as Kazv
+
+Kazv.ScrollablePageAdapter {
+ onBackRequested: (event) => {
+ event.accepted = true;
+ applicationWindow().pageStack.layers.pop();
+ }
+}
\ No newline at end of file
diff --git a/src/contents/ui/CreateRoomPage.qml b/src/contents/ui/CreateRoomPage.qml
--- a/src/contents/ui/CreateRoomPage.qml
+++ b/src/contents/ui/CreateRoomPage.qml
@@ -15,7 +15,7 @@
import moe.kazv.mxc.kazv 0.0 as MK
-Kazv.ClosableScrollablePage {
+Kazv.ClosableScrollableOverlay {
id: createRoomPage
title: l10n.get('create-room-page-title')
diff --git a/src/contents/ui/JoinRoomPage.qml b/src/contents/ui/JoinRoomPage.qml
--- a/src/contents/ui/JoinRoomPage.qml
+++ b/src/contents/ui/JoinRoomPage.qml
@@ -11,7 +11,7 @@
import '.' as Kazv
-Kazv.ClosableScrollablePage {
+Kazv.ClosableScrollableOverlay {
id: joinRoomPage
title: l10n.get('join-room-page-title')
diff --git a/src/contents/ui/Main.qml b/src/contents/ui/Main.qml
--- a/src/contents/ui/Main.qml
+++ b/src/contents/ui/Main.qml
@@ -242,7 +242,7 @@
}
function activateRoomSettingsPage(room) {
- pageStack.push(Qt.resolvedUrl("room-settings/RoomSettingsPage.qml"), {
+ pageStack.layers.push(Qt.resolvedUrl("room-settings/RoomSettingsPage.qml"), {
room
});
}
@@ -254,25 +254,25 @@
}
function activateRoomInvitePage(room) {
- pageStack.push(Qt.resolvedUrl("room-settings/RoomInvitePage.qml"), {
+ pageStack.layers.push(Qt.resolvedUrl("room-settings/RoomInvitePage.qml"), {
room
});
}
function activateRoomStickerPacksPage(room) {
- pageStack.push(Qt.resolvedUrl("room-settings/RoomStickerPacksPage.qml"), {
+ pageStack.layers.push(Qt.resolvedUrl("room-settings/RoomStickerPacksPage.qml"), {
room
});
}
function activateRoomStatePage(room) {
- pageStack.push(Qt.resolvedUrl("room-settings/RoomStatePage.qml"), {
+ pageStack.layers.push(Qt.resolvedUrl("room-settings/RoomStatePage.qml"), {
room
});
}
function activateUserPage(user, room, userId) {
- pageStack.push(Qt.resolvedUrl("UserPage.qml"), {
+ pageStack.layers.push(Qt.resolvedUrl("UserPage.qml"), {
userId: userId || user.userId,
user,
room
@@ -280,6 +280,7 @@
}
function switchToMainPage() {
+ pageStack.layers.clear()
pageStack.replace([root.mainPage])
pageStack.currentIndex = 0
}
@@ -290,27 +291,27 @@
}
function pushLoginPage() {
- pageStack.push(Qt.resolvedUrl("LoginPage.qml"), {
+ pageStack.layers.push(Qt.resolvedUrl("LoginPage.qml"), {
isSwitchingAccount: true,
});
}
function pushActionSettingsPage() {
- pageStack.push(Qt.resolvedUrl("ActionSettingsPage.qml"), {
+ pageStack.layers.push(Qt.resolvedUrl("ActionSettingsPage.qml"), {
actionsToConfigure: globalActionCollection.allActions(),
});
}
function pushSettingsPage() {
- pageStack.push(Qt.resolvedUrl("SettingsPage.qml"));
+ pageStack.layers.push(Qt.resolvedUrl("SettingsPage.qml"));
}
function pushCreateRoomPage() {
- pageStack.push(Qt.resolvedUrl("CreateRoomPage.qml"), {});
+ pageStack.layers.push(Qt.resolvedUrl("CreateRoomPage.qml"), {});
}
function pushJoinRoomPage() {
- pageStack.push(Qt.resolvedUrl("JoinRoomPage.qml"), {});
+ pageStack.layers.push(Qt.resolvedUrl("JoinRoomPage.qml"), {});
}
function sessionNameFor(userId, deviceId) {
diff --git a/src/contents/ui/SettingsPage.qml b/src/contents/ui/SettingsPage.qml
--- a/src/contents/ui/SettingsPage.qml
+++ b/src/contents/ui/SettingsPage.qml
@@ -13,7 +13,7 @@
import '.' as Kazv
import 'settings' as Settings
-Kazv.ClosableScrollablePage {
+Kazv.ClosableScrollableOverlay {
id: settingsPage
title: l10n.get('settings-page-title')
diff --git a/src/contents/ui/UserPage.qml b/src/contents/ui/UserPage.qml
--- a/src/contents/ui/UserPage.qml
+++ b/src/contents/ui/UserPage.qml
@@ -15,7 +15,7 @@
import 'device-mgmt' as KazvDM
import 'matrix-helpers.js' as Helpers
-Kazv.ClosableScrollablePage {
+Kazv.ClosableScrollableOverlay {
id: userPage
property string userId: ''
diff --git a/src/contents/ui/room-settings/RoomInvitePage.qml b/src/contents/ui/room-settings/RoomInvitePage.qml
--- a/src/contents/ui/room-settings/RoomInvitePage.qml
+++ b/src/contents/ui/room-settings/RoomInvitePage.qml
@@ -13,7 +13,7 @@
import '..' as Kazv
import '../matrix-helpers.js' as Helpers
-Kazv.ClosableScrollablePage {
+Kazv.ClosableScrollableOverlay {
id: roomInvitePage
property var room
diff --git a/src/contents/ui/room-settings/RoomMemberListPage.qml b/src/contents/ui/room-settings/RoomMemberListPage.qml
--- a/src/contents/ui/room-settings/RoomMemberListPage.qml
+++ b/src/contents/ui/room-settings/RoomMemberListPage.qml
@@ -14,7 +14,7 @@
import '..' as Kazv
-Kazv.ClosableScrollablePage {
+Kazv.ClosableScrollableOverlay {
id: roomSettingsPage
property var room
diff --git a/src/contents/ui/room-settings/RoomSettingsPage.qml b/src/contents/ui/room-settings/RoomSettingsPage.qml
--- a/src/contents/ui/room-settings/RoomSettingsPage.qml
+++ b/src/contents/ui/room-settings/RoomSettingsPage.qml
@@ -17,7 +17,7 @@
import '..' as Kazv
import '.' as RoomSettings
-Kazv.ClosableScrollablePage {
+Kazv.ClosableScrollableOverlay {
id: roomSettingsPage
property var room
@@ -245,7 +245,7 @@
text: l10n.get('room-settings-members-action')
icon.name: 'im-user'
Layout.fillWidth: true
- onClicked: pageStack.push(Qt.resolvedUrl('RoomMemberListPage.qml'), { room: room, members: room.members() })
+ onClicked: pageStack.layers.push(Qt.resolvedUrl('RoomMemberListPage.qml'), { room: room, members: room.members() })
}
Button {
@@ -253,7 +253,7 @@
icon.name: 'im-kick-user'
icon.color: Kirigami.Theme.negativeTextColor
Layout.fillWidth: true
- onClicked: pageStack.push(Qt.resolvedUrl('RoomMemberListPage.qml'), { room: room, members: room.bannedMembers() })
+ onClicked: pageStack.layers.push(Qt.resolvedUrl('RoomMemberListPage.qml'), { room: room, members: room.bannedMembers() })
}
Label {
diff --git a/src/contents/ui/room-settings/RoomStatePage.qml b/src/contents/ui/room-settings/RoomStatePage.qml
--- a/src/contents/ui/room-settings/RoomStatePage.qml
+++ b/src/contents/ui/room-settings/RoomStatePage.qml
@@ -12,7 +12,7 @@
import '../matrix-helpers.js' as Helpers
import '..' as Kazv
-Kazv.ClosableScrollablePage {
+Kazv.ClosableScrollableOverlay {
id: roomStatePage
property var room
property var roomNameProvider: Kazv.RoomNameProvider {
diff --git a/src/contents/ui/room-settings/RoomStickerPacksPage.qml b/src/contents/ui/room-settings/RoomStickerPacksPage.qml
--- a/src/contents/ui/room-settings/RoomStickerPacksPage.qml
+++ b/src/contents/ui/room-settings/RoomStickerPacksPage.qml
@@ -13,7 +13,7 @@
import '.' as RoomSettings
import '../matrix-helpers.js' as Helpers
-Kazv.ClosableScrollablePage {
+Kazv.ClosableScrollableOverlay {
id: roomStickerPacksPage
property var room
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Thu, Feb 19, 7:30 PM (22 h, 41 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
1119573
Default Alt Text
D284.1771558226.diff (7 KB)
Attached To
Mode
D284: Create an overlay page type and change several pages to overlay
Attached
Detach File
Event Timeline
Log In to Comment