diff --git a/po/POTFILES.in b/po/POTFILES.in index 7803ad86..d4201d12 100644 --- a/po/POTFILES.in +++ b/po/POTFILES.in @@ -40,28 +40,28 @@ src/contrib/qr_code.rs src/error_page.blp src/error_page.rs src/identity_verification_view/accept_request_page.rs -src/identity_verification_view/accept_request_page.ui +src/identity_verification_view/accept_request_page.blp src/identity_verification_view/cancelled_page.rs -src/identity_verification_view/cancelled_page.ui +src/identity_verification_view/cancelled_page.blp src/identity_verification_view/choose_method_page.rs -src/identity_verification_view/choose_method_page.ui +src/identity_verification_view/choose_method_page.blp src/identity_verification_view/completed_page.rs -src/identity_verification_view/completed_page.ui +src/identity_verification_view/completed_page.blp src/identity_verification_view/confirm_qr_code_page.rs -src/identity_verification_view/confirm_qr_code_page.ui +src/identity_verification_view/confirm_qr_code_page.blp src/identity_verification_view/mod.rs -src/identity_verification_view/mod.ui +src/identity_verification_view/mod.blp src/identity_verification_view/no_supported_methods_page.rs -src/identity_verification_view/no_supported_methods_page.ui +src/identity_verification_view/no_supported_methods_page.blp src/identity_verification_view/qr_code_scanned_page.rs -src/identity_verification_view/qr_code_scanned_page.ui -src/identity_verification_view/room_left_page.ui +src/identity_verification_view/qr_code_scanned_page.blp +src/identity_verification_view/room_left_page.blp src/identity_verification_view/sas_page.rs -src/identity_verification_view/sas_page.ui +src/identity_verification_view/sas_page.blp src/identity_verification_view/scan_qr_code_page.rs -src/identity_verification_view/scan_qr_code_page.ui +src/identity_verification_view/scan_qr_code_page.blp src/identity_verification_view/wait_for_other_page.rs -src/identity_verification_view/wait_for_other_page.ui +src/identity_verification_view/wait_for_other_page.blp src/login/advanced_dialog.ui src/login/greeter.ui src/login/homeserver_page.rs diff --git a/src/blp-resources.in b/src/blp-resources.in index be7b94a5..46abda2e 100644 --- a/src/blp-resources.in +++ b/src/blp-resources.in @@ -42,4 +42,17 @@ components/rows/substring_entry_row.blp components/rows/switch_loading_row.blp components/user_page.blp error_page.blp +identity_verification_view/accept_request_page.blp +identity_verification_view/cancelled_page.blp +identity_verification_view/choose_method_page.blp +identity_verification_view/completed_page.blp +identity_verification_view/confirm_qr_code_page.blp +identity_verification_view/mod.blp +identity_verification_view/no_supported_methods_page.blp +identity_verification_view/qr_code_scanned_page.blp +identity_verification_view/room_left_page.blp +identity_verification_view/sas_emoji.blp +identity_verification_view/sas_page.blp +identity_verification_view/scan_qr_code_page.blp +identity_verification_view/wait_for_other_page.blp window.blp diff --git a/src/identity_verification_view/accept_request_page.blp b/src/identity_verification_view/accept_request_page.blp new file mode 100644 index 00000000..9f2e1436 --- /dev/null +++ b/src/identity_verification_view/accept_request_page.blp @@ -0,0 +1,79 @@ +using Gtk 4.0; +using Adw 1; + +template $IdentityVerificationAcceptRequestPage: Adw.Bin { + Gtk.ScrolledWindow scrolled_window { + hscrollbar-policy: never; + propagate-natural-height: true; + + child: Adw.Clamp { + maximum-size: 400; + tightening-threshold: 300; + + child: Gtk.Box { + orientation: vertical; + spacing: 18; + valign: center; + margin-bottom: 24; + + Gtk.Label title { + wrap: true; + wrap-mode: word_char; + justify: center; + accessible-role: heading; + + accessibility { + level: 1; + } + + styles [ + "title-1", + ] + } + + Gtk.Label instructions { + wrap: true; + wrap-mode: word_char; + justify: center; + + styles [ + "body", + ] + } + + Gtk.Picture { + file: "resource:///org/gnome/Fractal/assets/other-device.svg"; + accessible-role: presentation; + } + + Adw.WrapBox { + child-spacing: 12; + line-spacing: 12; + align: 0.5; + + $LoadingButton decline_btn { + content-label: _("Decline"); + halign: center; + clicked => $decline() swapped; + + styles [ + "destructive-action", + "pill", + ] + } + + $LoadingButton accept_btn { + content-label: _("Verify"); + halign: center; + clicked => $accept() swapped; + + styles [ + "suggested-action", + "pill", + ] + } + } + }; + }; + } +} diff --git a/src/identity_verification_view/accept_request_page.ui b/src/identity_verification_view/accept_request_page.ui deleted file mode 100644 index e5cb235a..00000000 --- a/src/identity_verification_view/accept_request_page.ui +++ /dev/null @@ -1,84 +0,0 @@ - - - - diff --git a/src/identity_verification_view/cancelled_page.blp b/src/identity_verification_view/cancelled_page.blp new file mode 100644 index 00000000..f87cf7ad --- /dev/null +++ b/src/identity_verification_view/cancelled_page.blp @@ -0,0 +1,72 @@ +using Gtk 4.0; +using Adw 1; + +template $IdentityVerificationCancelledPage: Adw.Bin { + Gtk.ScrolledWindow scrolled_window { + hscrollbar-policy: never; + propagate-natural-height: true; + + child: Adw.Clamp { + maximum-size: 400; + tightening-threshold: 300; + + child: Gtk.Box { + orientation: vertical; + spacing: 18; + valign: center; + + Gtk.Label title { + wrap: true; + wrap-mode: word_char; + justify: center; + accessible-role: heading; + + accessibility { + level: 1; + } + + styles [ + "title-1", + ] + } + + Gtk.Label message { + wrap: true; + wrap-mode: word_char; + justify: center; + + styles [ + "body", + ] + } + + Adw.WrapBox { + child-spacing: 12; + line-spacing: 12; + align: 0.5; + + $LoadingButton dismiss_btn { + halign: center; + content-label: _("_Done"); + clicked => $dismiss() swapped; + + styles [ + "pill", + ] + } + + $LoadingButton try_again_btn { + halign: center; + content-label: _("Send New Request"); + clicked => $try_again() swapped; + + styles [ + "suggested-action", + "pill", + ] + } + } + }; + }; + } +} diff --git a/src/identity_verification_view/cancelled_page.ui b/src/identity_verification_view/cancelled_page.ui deleted file mode 100644 index c9c75b19..00000000 --- a/src/identity_verification_view/cancelled_page.ui +++ /dev/null @@ -1,76 +0,0 @@ - - - - diff --git a/src/identity_verification_view/choose_method_page.blp b/src/identity_verification_view/choose_method_page.blp new file mode 100644 index 00000000..c633948e --- /dev/null +++ b/src/identity_verification_view/choose_method_page.blp @@ -0,0 +1,94 @@ +using Gtk 4.0; +using Adw 1; + +template $IdentityVerificationChooseMethodPage: Adw.Bin { + Gtk.ScrolledWindow scrolled_window { + hscrollbar-policy: never; + propagate-natural-height: true; + + child: Adw.Clamp { + maximum-size: 400; + tightening-threshold: 300; + + child: Gtk.Box { + orientation: vertical; + spacing: 18; + valign: center; + + Gtk.Label title { + wrap: true; + wrap-mode: word_char; + justify: center; + accessible-role: heading; + + accessibility { + level: 1; + } + + styles [ + "title-1", + ] + } + + Gtk.Label instructions { + wrap: true; + wrap-mode: word_char; + justify: center; + + styles [ + "body", + ] + } + + $TriQRCode qrcode { + valign: center; + halign: center; + margin-top: 24; + margin-bottom: 24; + + styles [ + "card", + ] + } + + Gtk.Label cannot_scan_label { + label: _("Can’t scan QR code?"); + wrap: true; + wrap-mode: word_char; + justify: center; + } + + $LoadingButton scan_qr_code_btn { + halign: center; + content-label: _("Scan QR code with this session"); + clicked => $start_qr_code_scan() swapped; + + styles [ + "pill", + ] + } + + $LoadingButton start_sas_btn { + content-label: _("Compare Emoji"); + halign: center; + clicked => $start_sas() swapped; + + styles [ + "pill", + ] + } + + $LoadingButton cancel_btn { + halign: center; + content-label: _("Cancel Verification"); + clicked => $cancel() swapped; + + styles [ + "destructive-action", + "pill", + ] + } + }; + }; + } +} diff --git a/src/identity_verification_view/choose_method_page.ui b/src/identity_verification_view/choose_method_page.ui deleted file mode 100644 index b7085df2..00000000 --- a/src/identity_verification_view/choose_method_page.ui +++ /dev/null @@ -1,98 +0,0 @@ - - - - diff --git a/src/identity_verification_view/completed_page.blp b/src/identity_verification_view/completed_page.blp new file mode 100644 index 00000000..c7a722ff --- /dev/null +++ b/src/identity_verification_view/completed_page.blp @@ -0,0 +1,63 @@ +using Gtk 4.0; +using Adw 1; + +template $IdentityVerificationCompletedPage: Adw.Bin { + Gtk.ScrolledWindow scrolled_window { + hscrollbar-policy: never; + propagate-natural-height: true; + + child: Adw.Clamp { + maximum-size: 400; + tightening-threshold: 300; + + child: Gtk.Box { + orientation: vertical; + spacing: 18; + valign: center; + + Gtk.Label title { + wrap: true; + wrap-mode: word_char; + justify: center; + accessible-role: heading; + + accessibility { + level: 1; + } + + styles [ + "title-1", + ] + } + + Gtk.Picture { + file: "resource:///org/gnome/Fractal/assets/setup-complete.svg"; + accessible-role: presentation; + } + + Gtk.Label message { + wrap: true; + wrap-mode: word_char; + justify: center; + + styles [ + "body", + ] + } + + Gtk.Button dismiss_btn { + can-shrink: true; + halign: center; + label: _("_Done"); + use-underline: true; + clicked => $dismiss() swapped; + + styles [ + "suggested-action", + "pill", + ] + } + }; + }; + } +} diff --git a/src/identity_verification_view/completed_page.ui b/src/identity_verification_view/completed_page.ui deleted file mode 100644 index f3548fb3..00000000 --- a/src/identity_verification_view/completed_page.ui +++ /dev/null @@ -1,67 +0,0 @@ - - - - diff --git a/src/identity_verification_view/confirm_qr_code_page.blp b/src/identity_verification_view/confirm_qr_code_page.blp new file mode 100644 index 00000000..db2ac35c --- /dev/null +++ b/src/identity_verification_view/confirm_qr_code_page.blp @@ -0,0 +1,91 @@ +using Gtk 4.0; +using Adw 1; + +template $IdentityVerificationConfirmQrCodePage: Adw.Bin { + Gtk.ScrolledWindow scrolled_window { + hscrollbar-policy: never; + propagate-natural-height: true; + + child: Adw.Clamp { + maximum-size: 400; + tightening-threshold: 300; + + child: Gtk.Box { + orientation: vertical; + spacing: 18; + valign: center; + + Gtk.Label title { + label: _("Confirm Scan"); + wrap: true; + wrap-mode: word_char; + justify: center; + accessible-role: heading; + + accessibility { + level: 1; + } + + styles [ + "title-1", + ] + } + + Gtk.Picture { + file: "resource:///org/gnome/Fractal/assets/setup-complete.svg"; + accessible-role: presentation; + } + + Gtk.Label question { + wrap: true; + wrap-mode: word_char; + justify: center; + + styles [ + "body", + ] + } + + Adw.WrapBox { + child-spacing: 12; + line-spacing: 12; + align: 0.5; + + $LoadingButton cancel_btn { + content-label: _("Cancel"); + halign: center; + clicked => $cancel() swapped; + + accessibility { + described-by: [ + question, + ]; + } + + styles [ + "destructive-action", + "pill", + ] + } + + $LoadingButton confirm_btn { + content-label: _("Confirm"); + halign: center; + clicked => $confirm_scanned() swapped; + + accessibility { + described-by: [ + question, + ]; + } + + styles [ + "suggested-action", + "pill", + ] + } + } + }; + }; + } +} diff --git a/src/identity_verification_view/confirm_qr_code_page.ui b/src/identity_verification_view/confirm_qr_code_page.ui deleted file mode 100644 index 511b7a82..00000000 --- a/src/identity_verification_view/confirm_qr_code_page.ui +++ /dev/null @@ -1,90 +0,0 @@ - - - - diff --git a/src/identity_verification_view/mod.blp b/src/identity_verification_view/mod.blp new file mode 100644 index 00000000..1be9dfb8 --- /dev/null +++ b/src/identity_verification_view/mod.blp @@ -0,0 +1,104 @@ +using Gtk 4.0; +using Adw 1; + +template $IdentityVerificationView: Adw.Bin { + accessibility { + label: _("Identity Verification"); + } + + Gtk.Stack main_stack { + transition-type: crossfade; + vexpand: true; + notify::transition-running => $handle_transition_running() swapped; + + Gtk.StackPage { + name: "accept-request"; + title: _("New Identity Verification Request"); + + child: $IdentityVerificationAcceptRequestPage accept_request_page { + verification: bind template.verification; + }; + } + + Gtk.StackPage { + name: "wait-for-other-party"; + title: _("Wait for Other Party"); + + child: $IdentityVerificationWaitForOtherPage wait_for_other_page { + verification: bind template.verification; + }; + } + + Gtk.StackPage { + name: "no-supported-methods"; + title: _("No Supported Verification Methods"); + + child: $IdentityVerificationNoSupportedMethodsPage no_supported_methods_page { + verification: bind template.verification; + }; + } + + Gtk.StackPage { + name: "choose-method"; + title: _("Verification Request Methods"); + + child: $IdentityVerificationChooseMethodPage choose_method_page { + verification: bind template.verification; + }; + } + + Gtk.StackPage { + name: "qr-code-scanned"; + title: _("Scan Complete"); + + child: $IdentityVerificationQrCodeScannedPage qr_code_scanned_page { + verification: bind template.verification; + }; + } + + Gtk.StackPage { + name: "confirm-qr-code"; + title: _("Confirm Scan Result"); + + child: $IdentityVerificationConfirmQrCodePage confirm_qr_code_page { + verification: bind template.verification; + }; + } + + Gtk.StackPage { + name: "sas"; + title: _("Short Authentication String Verification"); + + child: $IdentityVerificationSasPage sas_page { + verification: bind template.verification; + }; + } + + Gtk.StackPage { + name: "completed"; + title: _("Verification Successful"); + + child: $IdentityVerificationCompletedPage completed_page { + verification: bind template.verification; + }; + } + + Gtk.StackPage { + name: "cancelled"; + title: _("Verification Cancelled"); + + child: $IdentityVerificationCancelledPage cancelled_page { + verification: bind template.verification; + }; + } + + Gtk.StackPage { + name: "room-left"; + title: _("Verification Cancelled"); + + child: $IdentityVerificationRoomLeftPage room_left_page { + verification: bind template.verification; + }; + } + } +} diff --git a/src/identity_verification_view/mod.ui b/src/identity_verification_view/mod.ui deleted file mode 100644 index d2542df9..00000000 --- a/src/identity_verification_view/mod.ui +++ /dev/null @@ -1,125 +0,0 @@ - - - - diff --git a/src/identity_verification_view/no_supported_methods_page.blp b/src/identity_verification_view/no_supported_methods_page.blp new file mode 100644 index 00000000..832154dd --- /dev/null +++ b/src/identity_verification_view/no_supported_methods_page.blp @@ -0,0 +1,66 @@ +using Gtk 4.0; +using Adw 1; + +template $IdentityVerificationNoSupportedMethodsPage: Adw.Bin { + Gtk.ScrolledWindow scrolled_window { + hscrollbar-policy: never; + propagate-natural-height: true; + + child: Adw.Clamp { + maximum-size: 400; + tightening-threshold: 300; + + child: Gtk.Box { + orientation: vertical; + spacing: 18; + valign: center; + + Gtk.Label title { + wrap: true; + wrap-mode: word_char; + justify: center; + label: _("No Supported Verification Methods"); + accessible-role: heading; + + accessibility { + level: 1; + } + + styles [ + "title-1", + ] + } + + Gtk.Label message { + wrap: true; + wrap-mode: word_char; + justify: center; + + styles [ + "body", + ] + } + + Gtk.Label instructions { + wrap: true; + wrap-mode: word_char; + justify: center; + label: _("You can accept this verification from another session or decline it for all your sessions"); + + styles [ + "body", + ] + } + + $LoadingButton cancel_btn { + halign: center; + clicked => $cancel() swapped; + + styles [ + "pill", + ] + } + }; + }; + } +} diff --git a/src/identity_verification_view/no_supported_methods_page.ui b/src/identity_verification_view/no_supported_methods_page.ui deleted file mode 100644 index c1188c51..00000000 --- a/src/identity_verification_view/no_supported_methods_page.ui +++ /dev/null @@ -1,69 +0,0 @@ - - - - diff --git a/src/identity_verification_view/qr_code_scanned_page.blp b/src/identity_verification_view/qr_code_scanned_page.blp new file mode 100644 index 00000000..feddb409 --- /dev/null +++ b/src/identity_verification_view/qr_code_scanned_page.blp @@ -0,0 +1,62 @@ +using Gtk 4.0; +using Adw 1; + +template $IdentityVerificationQrCodeScannedPage: Adw.Bin { + Gtk.ScrolledWindow scrolled_window { + hscrollbar-policy: never; + propagate-natural-height: true; + + child: Adw.Clamp { + maximum-size: 400; + tightening-threshold: 300; + + child: Gtk.Box { + orientation: vertical; + spacing: 18; + valign: center; + + Gtk.Label title { + label: _("Scan Complete"); + wrap: true; + wrap-mode: word_char; + justify: center; + accessible-role: heading; + + accessibility { + level: 1; + } + + styles [ + "title-1", + ] + } + + Gtk.Picture { + file: "resource:///org/gnome/Fractal/assets/setup-complete.svg"; + accessible-role: presentation; + } + + Gtk.Label message { + wrap: true; + wrap-mode: word_char; + justify: center; + + styles [ + "body", + ] + } + + $LoadingButton cancel_btn { + halign: center; + content-label: _("Cancel Verification"); + clicked => $cancel() swapped; + + styles [ + "destructive-action", + "pill", + ] + } + }; + }; + } +} diff --git a/src/identity_verification_view/qr_code_scanned_page.ui b/src/identity_verification_view/qr_code_scanned_page.ui deleted file mode 100644 index 2e7fc01a..00000000 --- a/src/identity_verification_view/qr_code_scanned_page.ui +++ /dev/null @@ -1,66 +0,0 @@ - - - - diff --git a/src/identity_verification_view/room_left_page.blp b/src/identity_verification_view/room_left_page.blp new file mode 100644 index 00000000..f4475ef3 --- /dev/null +++ b/src/identity_verification_view/room_left_page.blp @@ -0,0 +1,59 @@ +using Gtk 4.0; +using Adw 1; + +template $IdentityVerificationRoomLeftPage: Adw.Bin { + Gtk.ScrolledWindow { + hscrollbar-policy: never; + propagate-natural-height: true; + + child: Adw.Clamp { + maximum-size: 400; + tightening-threshold: 300; + + child: Gtk.Box { + orientation: vertical; + spacing: 18; + valign: center; + + Gtk.Label { + wrap: true; + wrap-mode: word_char; + justify: center; + label: _("Verification Cancelled"); + accessible-role: heading; + + accessibility { + level: 1; + } + + styles [ + "title-1", + ] + } + + Gtk.Label { + wrap: true; + wrap-mode: word_char; + justify: center; + label: _("You are no longer in the room where the verification was taking place"); + + styles [ + "body", + ] + } + + Gtk.Button dismiss_btn { + halign: center; + can-shrink: true; + label: _("_Done"); + use-underline: true; + clicked => $dismiss() swapped; + + styles [ + "pill", + ] + } + }; + }; + } +} diff --git a/src/identity_verification_view/room_left_page.ui b/src/identity_verification_view/room_left_page.ui deleted file mode 100644 index 617f9d2f..00000000 --- a/src/identity_verification_view/room_left_page.ui +++ /dev/null @@ -1,62 +0,0 @@ - - - - diff --git a/src/identity_verification_view/sas_emoji.blp b/src/identity_verification_view/sas_emoji.blp new file mode 100644 index 00000000..9457c03a --- /dev/null +++ b/src/identity_verification_view/sas_emoji.blp @@ -0,0 +1,29 @@ +using Gtk 4.0; +using Adw 1; + +template $IdentityVerificationSasEmoji: Adw.Bin { + accessibility { + labelled-by: [ + emoji, + ]; + + described-by: [ + emoji_name, + ]; + } + + valign: center; + + Gtk.Box { + spacing: 6; + orientation: vertical; + + Gtk.Label emoji { + styles [ + "emoji", + ] + } + + Gtk.Label emoji_name {} + } +} diff --git a/src/identity_verification_view/sas_emoji.ui b/src/identity_verification_view/sas_emoji.ui deleted file mode 100644 index a7e57737..00000000 --- a/src/identity_verification_view/sas_emoji.ui +++ /dev/null @@ -1,27 +0,0 @@ - - - - diff --git a/src/identity_verification_view/sas_page.blp b/src/identity_verification_view/sas_page.blp new file mode 100644 index 00000000..43d9bb5d --- /dev/null +++ b/src/identity_verification_view/sas_page.blp @@ -0,0 +1,87 @@ +using Gtk 4.0; +using Adw 1; + +template $IdentityVerificationSasPage: Adw.Bin { + Gtk.ScrolledWindow scrolled_window { + hscrollbar-policy: never; + propagate-natural-height: true; + + child: Adw.Clamp { + maximum-size: 400; + tightening-threshold: 300; + + child: Gtk.Box { + orientation: vertical; + spacing: 18; + valign: center; + + Gtk.Label title { + wrap: true; + wrap-mode: word_char; + justify: center; + accessible-role: heading; + + accessibility { + level: 1; + } + + styles [ + "title-1", + ] + } + + Gtk.Label instructions { + wrap: true; + wrap-mode: word_char; + justify: center; + + styles [ + "body", + ] + } + + Gtk.Box row_1 { + valign: center; + halign: center; + spacing: 30; + margin-top: 24; + } + + Gtk.Box row_2 { + valign: center; + halign: center; + spacing: 30; + margin-bottom: 24; + } + + Adw.WrapBox { + child-spacing: 12; + line-spacing: 12; + align: 0.5; + + $LoadingButton mismatch_btn { + content-label: _("Do Not Match"); + halign: center; + clicked => $data_mismatch() swapped; + + styles [ + "destructive-action", + "pill", + ] + } + + $LoadingButton match_btn { + content-label: _("Match"); + halign: center; + clicked => $data_match() swapped; + + styles [ + "suggested-action", + "pill", + ] + } + } + }; + }; + } +} diff --git a/src/identity_verification_view/sas_page.ui b/src/identity_verification_view/sas_page.ui deleted file mode 100644 index 736eae92..00000000 --- a/src/identity_verification_view/sas_page.ui +++ /dev/null @@ -1,95 +0,0 @@ - - - - diff --git a/src/identity_verification_view/scan_qr_code_page.blp b/src/identity_verification_view/scan_qr_code_page.blp new file mode 100644 index 00000000..c68e6abe --- /dev/null +++ b/src/identity_verification_view/scan_qr_code_page.blp @@ -0,0 +1,95 @@ +using Gtk 4.0; +using Adw 1; + +template $IdentityVerificationScanQrCodePage: Adw.Bin { + Gtk.ScrolledWindow scrolled_window { + hscrollbar-policy: never; + propagate-natural-height: true; + + child: Adw.Clamp { + maximum-size: 400; + tightening-threshold: 300; + + child: Gtk.Box { + orientation: vertical; + spacing: 18; + valign: center; + + Gtk.Label title { + wrap: true; + wrap-mode: word_char; + justify: center; + accessible-role: heading; + + accessibility { + level: 1; + } + + styles [ + "title-1", + ] + } + + Gtk.Label instructions { + wrap: true; + wrap-mode: word_char; + justify: center; + + styles [ + "body", + ] + } + + Adw.Bin qrcode_scanner_bin { + margin-top: 12; + margin-bottom: 12; + valign: center; + halign: center; + } + + Gtk.Label cannot_scan_label { + label: _("Can’t scan QR code?"); + wrap: true; + wrap-mode: word_char; + justify: center; + + styles [ + "body", + ] + } + + Gtk.Button show_qr_code_btn { + halign: center; + can-shrink: true; + label: _("Show a QR code to scan with another device"); + clicked => $show_qrcode() swapped; + + styles [ + "pill", + ] + } + + $LoadingButton start_sas_btn { + content-label: _("Compare Emoji"); + halign: center; + clicked => $start_sas() swapped; + + styles [ + "pill", + ] + } + + $LoadingButton cancel_btn { + halign: center; + content-label: _("Cancel Verification"); + clicked => $cancel() swapped; + + styles [ + "destructive-action", + "pill", + ] + } + }; + }; + } +} diff --git a/src/identity_verification_view/scan_qr_code_page.ui b/src/identity_verification_view/scan_qr_code_page.ui deleted file mode 100644 index abf5be5b..00000000 --- a/src/identity_verification_view/scan_qr_code_page.ui +++ /dev/null @@ -1,99 +0,0 @@ - - - - diff --git a/src/identity_verification_view/wait_for_other_page.blp b/src/identity_verification_view/wait_for_other_page.blp new file mode 100644 index 00000000..3fe22707 --- /dev/null +++ b/src/identity_verification_view/wait_for_other_page.blp @@ -0,0 +1,84 @@ +using Gtk 4.0; +using Adw 1; + +template $IdentityVerificationWaitForOtherPage: Adw.Bin { + Gtk.ScrolledWindow scrolled_window { + hscrollbar-policy: never; + propagate-natural-height: true; + + child: Adw.Clamp { + maximum-size: 400; + tightening-threshold: 300; + + child: Gtk.Box { + orientation: vertical; + spacing: 18; + valign: center; + halign: center; + + Gtk.Label title { + wrap: true; + wrap-mode: word_char; + justify: center; + accessible-role: heading; + + accessibility { + level: 1; + } + + styles [ + "title-1", + ] + } + + Gtk.Label instructions { + wrap: true; + wrap-mode: word_char; + justify: center; + + styles [ + "body", + ] + } + + Gtk.Label trust { + label: _("To be secure, the verification should happen in person or use a trusted way of communication."); + wrap: true; + wrap-mode: word_char; + justify: center; + + styles [ + "body", + ] + } + + Gtk.Picture { + file: "resource:///org/gnome/Fractal/icons/scalable/status/other-device.svg"; + accessible-role: presentation; + } + + Gtk.Label { + label: _("The request is not showing up on the other device?"); + wrap: true; + wrap-mode: word_char; + justify: center; + + styles [ + "body", + ] + } + + $LoadingButton cancel_btn { + halign: center; + content-label: _("Cancel Verification Request"); + clicked => $cancel() swapped; + + styles [ + "destructive-action", + "pill", + ] + } + }; + }; + } +} diff --git a/src/identity_verification_view/wait_for_other_page.ui b/src/identity_verification_view/wait_for_other_page.ui deleted file mode 100644 index 6ee5048d..00000000 --- a/src/identity_verification_view/wait_for_other_page.ui +++ /dev/null @@ -1,88 +0,0 @@ - - - - diff --git a/src/ui-resources.gresource.xml b/src/ui-resources.gresource.xml index 773b966e..947191f3 100644 --- a/src/ui-resources.gresource.xml +++ b/src/ui-resources.gresource.xml @@ -1,19 +1,6 @@ - identity_verification_view/accept_request_page.ui - identity_verification_view/cancelled_page.ui - identity_verification_view/choose_method_page.ui - identity_verification_view/completed_page.ui - identity_verification_view/confirm_qr_code_page.ui - identity_verification_view/mod.ui - identity_verification_view/no_supported_methods_page.ui - identity_verification_view/qr_code_scanned_page.ui - identity_verification_view/room_left_page.ui - identity_verification_view/sas_emoji.ui - identity_verification_view/sas_page.ui - identity_verification_view/scan_qr_code_page.ui - identity_verification_view/wait_for_other_page.ui login/advanced_dialog.ui login/greeter.ui login/homeserver_page.ui