Browse Source

Bump gtk crates and dependents

We use glycin as a git dependency for now because the latest RC doesn't
work, but the latest commit does.
fractal-13
Kévin Commaille 7 months ago
parent
commit
847dcb5110
No known key found for this signature in database
GPG Key ID: F26F4BE20A08255B
  1. 384
      Cargo.lock
  2. 26
      Cargo.toml
  3. 7
      src/account_chooser_dialog/account_row.rs
  4. 7
      src/account_chooser_dialog/mod.rs
  5. 7
      src/account_switcher/account_switcher_button.rs
  6. 12
      src/account_switcher/account_switcher_popover.rs
  7. 7
      src/account_switcher/avatar_with_selection.rs
  8. 7
      src/account_switcher/session_item.rs
  9. 7
      src/components/action_button.rs
  10. 3
      src/components/avatar/crop_circle.rs
  11. 10
      src/components/avatar/editable.rs
  12. 9
      src/components/avatar/mod.rs
  13. 3
      src/components/avatar/overlapping.rs
  14. 3
      src/components/camera/linux/viewfinder.rs
  15. 6
      src/components/camera/qrcode_scanner.rs
  16. 3
      src/components/camera/viewfinder.rs
  17. 10
      src/components/context_menu_bin.rs
  18. 7
      src/components/crypto/identity_setup_view.rs
  19. 7
      src/components/crypto/recovery_setup_view.rs
  20. 3
      src/components/custom_entry.rs
  21. 7
      src/components/dialogs/auth/in_browser_page.rs
  22. 6
      src/components/dialogs/auth/mod.rs
  23. 7
      src/components/dialogs/auth/password_page.rs
  24. 6
      src/components/dialogs/room_preview.rs
  25. 7
      src/components/dialogs/toastable.rs
  26. 7
      src/components/dialogs/user_profile.rs
  27. 3
      src/components/drag_overlay.rs
  28. 3
      src/components/label_with_widgets.rs
  29. 7
      src/components/loading/bin.rs
  30. 3
      src/components/loading/button.rs
  31. 9
      src/components/media/audio_player.rs
  32. 7
      src/components/media/content_viewer.rs
  33. 3
      src/components/media/location_viewer.rs
  34. 26
      src/components/media/video_player.rs
  35. 3
      src/components/offline_banner.rs
  36. 7
      src/components/pill/mod.rs
  37. 7
      src/components/pill/search_entry.rs
  38. 7
      src/components/pill/source_row.rs
  39. 6
      src/components/power_level_selection/combo_box.rs
  40. 7
      src/components/power_level_selection/popover.rs
  41. 6
      src/components/power_level_selection/row.rs
  42. 3
      src/components/role_badge.rs
  43. 6
      src/components/rows/button_count_row.rs
  44. 7
      src/components/rows/check_loading_row.rs
  45. 6
      src/components/rows/copyable_row.rs
  46. 6
      src/components/rows/entry_add_row.rs
  47. 10
      src/components/rows/loading_button_row.rs
  48. 10
      src/components/rows/loading_row.rs
  49. 6
      src/components/rows/removable_row.rs
  50. 6
      src/components/rows/substring_entry_row.rs
  51. 6
      src/components/rows/switch_loading_row.rs
  52. 3
      src/components/scale_revealer.rs
  53. 7
      src/components/user_page.rs
  54. 3
      src/contrib/qr_code.rs
  55. 3
      src/error_page.rs
  56. 7
      src/identity_verification_view/accept_request_page.rs
  57. 9
      src/identity_verification_view/cancelled_page.rs
  58. 9
      src/identity_verification_view/choose_method_page.rs
  59. 9
      src/identity_verification_view/completed_page.rs
  60. 9
      src/identity_verification_view/confirm_qr_code_page.rs
  61. 9
      src/identity_verification_view/mod.rs
  62. 9
      src/identity_verification_view/no_supported_methods_page.rs
  63. 9
      src/identity_verification_view/qr_code_scanned_page.rs
  64. 9
      src/identity_verification_view/room_left_page.rs
  65. 7
      src/identity_verification_view/sas_emoji.rs
  66. 9
      src/identity_verification_view/sas_page.rs
  67. 7
      src/identity_verification_view/scan_qr_code_page.rs
  68. 9
      src/identity_verification_view/wait_for_other_page.rs
  69. 6
      src/login/advanced_dialog.rs
  70. 7
      src/login/greeter.rs
  71. 7
      src/login/homeserver_page.rs
  72. 7
      src/login/in_browser_page.rs
  73. 7
      src/login/method_page.rs
  74. 7
      src/login/mod.rs
  75. 7
      src/login/session_setup_view.rs
  76. 6
      src/login/sso_idp_button.rs
  77. 7
      src/session/view/account_settings/encryption_page/import_export_keys_subpage.rs
  78. 7
      src/session/view/account_settings/encryption_page/mod.rs
  79. 7
      src/session/view/account_settings/general_page/change_password_subpage.rs
  80. 7
      src/session/view/account_settings/general_page/deactivate_account_subpage.rs
  81. 7
      src/session/view/account_settings/general_page/log_out_subpage.rs
  82. 7
      src/session/view/account_settings/general_page/mod.rs
  83. 7
      src/session/view/account_settings/mod.rs
  84. 7
      src/session/view/account_settings/notifications_page.rs
  85. 7
      src/session/view/account_settings/safety_page/ignored_users_subpage/ignored_user_row.rs
  86. 7
      src/session/view/account_settings/safety_page/ignored_users_subpage/mod.rs
  87. 7
      src/session/view/account_settings/safety_page/mod.rs
  88. 6
      src/session/view/account_settings/user_session/user_session_list_subpage.rs
  89. 7
      src/session/view/account_settings/user_session/user_session_row.rs
  90. 7
      src/session/view/account_settings/user_session/user_session_subpage.rs
  91. 7
      src/session/view/content/explore/mod.rs
  92. 7
      src/session/view/content/explore/public_room_row.rs
  93. 7
      src/session/view/content/explore/server_row.rs
  94. 7
      src/session/view/content/explore/servers_popover.rs
  95. 9
      src/session/view/content/invite.rs
  96. 9
      src/session/view/content/invite_request.rs
  97. 9
      src/session/view/content/mod.rs
  98. 7
      src/session/view/content/room_details/addresses_subpage/completion_popover.rs
  99. 7
      src/session/view/content/room_details/addresses_subpage/mod.rs
  100. 7
      src/session/view/content/room_details/edit_details_subpage.rs
  101. Some files were not shown because too many files have changed in this diff Show More

384
Cargo.lock generated

File diff suppressed because it is too large Load Diff

26
Cargo.toml

@ -60,16 +60,16 @@ wtinylfu = "0.2"
zeroize = "1"
# gtk-rs project and dependents. These usually need to be updated together.
adw = { package = "libadwaita", version = "0.7", features = ["v1_7"] }
glycin = { version = "=3.0.0-beta.1", default-features = false, features = ["tokio", "gdk4"] }
gst = { version = "0.23", package = "gstreamer" }
gst_app = { version = "0.23", package = "gstreamer-app" }
gst_pbutils = { version = "0.23", package = "gstreamer-pbutils" }
gst_play = { version = "0.23", package = "gstreamer-play" }
gst_video = { version = "0.23", package = "gstreamer-video" }
gtk = { package = "gtk4", version = "0.9", features = ["gnome_47"] }
shumate = { package = "libshumate", version = "0.6", features = ["v1_1"] }
sourceview = { package = "sourceview5", version = "0.9" }
adw = { package = "libadwaita", version = "0.8", features = ["v1_7"] }
glycin = { git = "https://gitlab.gnome.org/GNOME/glycin.git", rev = "113b70766a8612b1896fb3b78e0d98f5069d1885", default-features = false, features = ["tokio", "gdk4"] }
gst = { version = "0.24", package = "gstreamer" }
gst_app = { version = "0.24", package = "gstreamer-app" }
gst_pbutils = { version = "0.24", package = "gstreamer-pbutils" }
gst_play = { version = "0.24", package = "gstreamer-play" }
gst_video = { version = "0.24", package = "gstreamer-video" }
gtk = { package = "gtk4", version = "0.10", features = ["gnome_47"] }
shumate = { package = "libshumate", version = "0.7", features = ["v1_1"] }
sourceview = { package = "sourceview5", version = "0.10" }
[dependencies.matrix-sdk]
version = "0.14"
@ -117,12 +117,12 @@ features = [
# Linux-only dependencies.
[target.'cfg(target_os = "linux")'.dependencies]
aperture = "0.9"
ashpd = { version = "0.11", default-features = false, features = [
aperture = "0.11"
ashpd = { version = "0.12", default-features = false, features = [
"tracing",
"tokio",
] }
oo7 = { version = "0.4", default-features = false, features = [
oo7 = { version = "0.5", default-features = false, features = [
"openssl_crypto",
"tokio",
"tracing",

7
src/account_chooser_dialog/account_row.rs

@ -1,4 +1,4 @@
use gtk::{self, CompositeTemplate, glib, prelude::*, subclass::prelude::*};
use gtk::{glib, prelude::*, subclass::prelude::*};
use crate::{
components::{Avatar, AvatarData},
@ -14,7 +14,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/account_chooser_dialog/account_row.ui")]
#[properties(wrapper_type = super::AccountRow)]
pub struct AccountRow {
@ -122,7 +122,8 @@ mod imp {
glib::wrapper! {
/// A `GtkListBoxRow` representing a logged-in session in the `AccountChooserDialog`.
pub struct AccountRow(ObjectSubclass<imp::AccountRow>)
@extends gtk::Widget, gtk::ListBoxRow, @implements gtk::Accessible;
@extends gtk::Widget, gtk::ListBoxRow,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget, gtk::Actionable;
}
impl AccountRow {

7
src/account_chooser_dialog/mod.rs

@ -1,6 +1,6 @@
use adw::{prelude::*, subclass::prelude::*};
use futures_channel::oneshot;
use gtk::{CompositeTemplate, glib};
use gtk::glib;
use tracing::error;
mod account_row;
@ -15,7 +15,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/account_chooser_dialog/mod.ui")]
#[properties(wrapper_type = super::AccountChooserDialog)]
pub struct AccountChooserDialog {
@ -78,7 +78,8 @@ glib::wrapper! {
///
/// Should be used by calling [`Self::choose_account()`].
pub struct AccountChooserDialog(ObjectSubclass<imp::AccountChooserDialog>)
@extends gtk::Widget, adw::Dialog, @implements gtk::Accessible;
@extends gtk::Widget, adw::Dialog,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget, gtk::ShortcutManager;
}
#[gtk::template_callbacks]

7
src/account_switcher/account_switcher_button.rs

@ -1,4 +1,4 @@
use gtk::{CompositeTemplate, glib, glib::clone, prelude::*, subclass::prelude::*};
use gtk::{glib, glib::clone, prelude::*, subclass::prelude::*};
use super::AccountSwitcherPopover;
use crate::{
@ -13,7 +13,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/account_switcher/account_switcher_button.ui")]
#[properties(wrapper_type = super::AccountSwitcherButton)]
pub struct AccountSwitcherButton {
@ -122,7 +122,8 @@ mod imp {
glib::wrapper! {
/// A button showing the currently selected session and opening the account switcher popover.
pub struct AccountSwitcherButton(ObjectSubclass<imp::AccountSwitcherButton>)
@extends gtk::Widget, gtk::Button, gtk::ToggleButton, @implements gtk::Accessible;
@extends gtk::Widget, gtk::Button, gtk::ToggleButton,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget, gtk::Actionable;
}
#[gtk::template_callbacks]

12
src/account_switcher/account_switcher_popover.rs

@ -1,9 +1,4 @@
use gtk::{
CompositeTemplate,
glib::{self, clone},
prelude::*,
subclass::prelude::*,
};
use gtk::{glib, glib::clone, prelude::*, subclass::prelude::*};
use super::session_item::SessionItemRow;
use crate::utils::{BoundObjectWeakRef, FixedSelection};
@ -13,7 +8,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/account_switcher/account_switcher_popover.ui")]
#[properties(wrapper_type = super::AccountSwitcherPopover)]
pub struct AccountSwitcherPopover {
@ -133,7 +128,8 @@ glib::wrapper! {
/// A popover allowing to switch between the available sessions, to open their
/// account settings, or to log into a new account.
pub struct AccountSwitcherPopover(ObjectSubclass<imp::AccountSwitcherPopover>)
@extends gtk::Widget, gtk::Popover, @implements gtk::Accessible;
@extends gtk::Widget, gtk::Popover,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget, gtk::Native, gtk::ShortcutManager;
}
impl AccountSwitcherPopover {

7
src/account_switcher/avatar_with_selection.rs

@ -1,5 +1,5 @@
use adw::{prelude::*, subclass::prelude::*};
use gtk::{CompositeTemplate, glib};
use gtk::glib;
use crate::components::{Avatar, AvatarData};
@ -10,7 +10,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/account_switcher/avatar_with_selection.ui")]
#[properties(wrapper_type = super::AvatarWithSelection)]
pub struct AvatarWithSelection {
@ -105,7 +105,8 @@ mod imp {
glib::wrapper! {
/// A widget displaying an [`Avatar`] and an optional selected effect.
pub struct AvatarWithSelection(ObjectSubclass<imp::AvatarWithSelection>)
@extends gtk::Widget, adw::Bin, @implements gtk::Accessible;
@extends gtk::Widget, adw::Bin,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
impl AvatarWithSelection {

7
src/account_switcher/session_item.rs

@ -1,4 +1,4 @@
use gtk::{CompositeTemplate, glib, prelude::*, subclass::prelude::*};
use gtk::{glib, prelude::*, subclass::prelude::*};
use super::avatar_with_selection::AvatarWithSelection;
use crate::{
@ -15,7 +15,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/account_switcher/session_item.ui")]
#[properties(wrapper_type = super::SessionItemRow)]
pub struct SessionItemRow {
@ -169,7 +169,8 @@ mod imp {
glib::wrapper! {
/// A `GtkListBoxRow` representing a logged-in session.
pub struct SessionItemRow(ObjectSubclass<imp::SessionItemRow>)
@extends gtk::Widget, gtk::ListBoxRow, @implements gtk::Accessible;
@extends gtk::Widget, gtk::ListBoxRow,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget, gtk::Actionable;
}
impl SessionItemRow {

7
src/components/action_button.rs

@ -1,5 +1,5 @@
use adw::{prelude::*, subclass::prelude::*};
use gtk::{CompositeTemplate, glib, glib::closure_local};
use gtk::{glib, glib::closure_local};
#[derive(Debug, Default, Hash, Eq, PartialEq, Clone, Copy, glib::Enum)]
#[repr(u32)]
@ -40,7 +40,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/components/action_button.ui")]
#[properties(wrapper_type = super::ActionButton)]
pub struct ActionButton {
@ -180,7 +180,8 @@ mod imp {
glib::wrapper! {
/// A button to emit an action and handle its different states.
pub struct ActionButton(ObjectSubclass<imp::ActionButton>)
@extends gtk::Widget, adw::Bin, @implements gtk::Actionable, gtk::Accessible;
@extends gtk::Widget, adw::Bin,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget, gtk::Actionable;
}
#[gtk::template_callbacks]

3
src/components/avatar/crop_circle.rs

@ -167,7 +167,8 @@ mod imp {
glib::wrapper! {
/// A widget that crops its child with a circle.
pub struct CropCircle(ObjectSubclass<imp::CropCircle>)
@extends gtk::Widget, @implements gtk::Accessible;
@extends gtk::Widget,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
impl CropCircle {

10
src/components/avatar/editable.rs

@ -1,11 +1,10 @@
use std::time::Duration;
use adw::subclass::prelude::*;
use adw::{prelude::*, subclass::prelude::*};
use gettextrs::gettext;
use gtk::{
CompositeTemplate, gdk, gio, glib,
gdk, gio, glib,
glib::{clone, closure, closure_local},
prelude::*,
};
use tracing::{debug, error};
@ -48,7 +47,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/components/avatar/editable.ui")]
#[properties(wrapper_type = super::EditableAvatar)]
pub struct EditableAvatar {
@ -464,7 +463,8 @@ mod imp {
glib::wrapper! {
/// An `Avatar` that can be edited.
pub struct EditableAvatar(ObjectSubclass<imp::EditableAvatar>)
@extends gtk::Widget, adw::Bin, @implements gtk::Accessible;
@extends gtk::Widget, adw::Bin,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
impl EditableAvatar {

9
src/components/avatar/mod.rs

@ -1,5 +1,5 @@
use adw::subclass::prelude::*;
use gtk::{CompositeTemplate, gdk, glib, glib::clone, prelude::*};
use adw::{prelude::*, subclass::prelude::*};
use gtk::{gdk, glib, glib::clone};
mod crop_circle;
mod data;
@ -53,7 +53,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/components/avatar/mod.ui")]
#[properties(wrapper_type = super::Avatar)]
pub struct Avatar {
@ -425,7 +425,8 @@ mod imp {
glib::wrapper! {
/// A widget displaying an `Avatar` for a `Room` or `User`.
pub struct Avatar(ObjectSubclass<imp::Avatar>)
@extends gtk::Widget, adw::Bin, @implements gtk::Accessible;
@extends gtk::Widget, adw::Bin,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
impl Avatar {

3
src/components/avatar/overlapping.rs

@ -242,7 +242,8 @@ mod imp {
glib::wrapper! {
/// A horizontal list of overlapping avatars.
pub struct OverlappingAvatars(ObjectSubclass<imp::OverlappingAvatars>)
@extends gtk::Widget, @implements gtk::Accessible;
@extends gtk::Widget,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
impl OverlappingAvatars {

3
src/components/camera/linux/viewfinder.rs

@ -176,7 +176,8 @@ mod imp {
glib::wrapper! {
/// A camera viewfinder widget for Linux.
pub struct LinuxCameraViewfinder(ObjectSubclass<imp::LinuxCameraViewfinder>)
@extends gtk::Widget, CameraViewfinder;
@extends gtk::Widget, CameraViewfinder,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
impl LinuxCameraViewfinder {

6
src/components/camera/qrcode_scanner.rs

@ -17,11 +17,10 @@ mod imp {
use std::sync::LazyLock;
use glib::subclass::{InitializingObject, Signal};
use gtk::CompositeTemplate;
use super::*;
#[derive(Debug, CompositeTemplate, Default, glib::Properties)]
#[derive(Debug, gtk::CompositeTemplate, Default, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/components/camera/qrcode_scanner.ui")]
#[properties(wrapper_type = super::QrCodeScanner)]
pub struct QrCodeScanner {
@ -113,7 +112,8 @@ mod imp {
glib::wrapper! {
/// A widget to show the output of the camera and detect QR codes with it.
pub struct QrCodeScanner(ObjectSubclass<imp::QrCodeScanner>)
@extends gtk::Widget, adw::Bin;
@extends gtk::Widget, adw::Bin,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
impl QrCodeScanner {

3
src/components/camera/viewfinder.rs

@ -97,7 +97,8 @@ glib::wrapper! {
///
/// To construct this, use `Camera::viewfinder()`.
pub struct CameraViewfinder(ObjectSubclass<imp::CameraViewfinder>)
@extends gtk::Widget, @implements gtk::Accessible;
@extends gtk::Widget,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
/// Trait implemented by types that subclass [`CameraViewfinder`].

10
src/components/context_menu_bin.rs

@ -1,5 +1,4 @@
use adw::subclass::prelude::*;
use gtk::{CompositeTemplate, gdk, glib, glib::clone, prelude::*};
use gtk::{gdk, glib, glib::clone, prelude::*, subclass::prelude::*};
use crate::utils::{BoundObject, key_bindings};
@ -12,7 +11,7 @@ mod imp {
#[repr(C)]
pub struct ContextMenuBinClass {
parent_class: glib::object::Class<adw::Bin>,
parent_class: glib::object::Class<gtk::Widget>,
pub(super) menu_opened: fn(&super::ContextMenuBin),
}
@ -25,7 +24,7 @@ mod imp {
(klass.as_ref().menu_opened)(this);
}
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/components/context_menu_bin.ui")]
#[properties(wrapper_type = super::ContextMenuBin)]
pub struct ContextMenuBin {
@ -203,7 +202,8 @@ mod imp {
glib::wrapper! {
/// A Bin widget that can have a context menu.
pub struct ContextMenuBin(ObjectSubclass<imp::ContextMenuBin>)
@extends gtk::Widget, @implements gtk::Accessible;
@extends gtk::Widget,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
impl ContextMenuBin {

7
src/components/crypto/identity_setup_view.rs

@ -1,7 +1,7 @@
use adw::{prelude::*, subclass::prelude::*};
use gettextrs::gettext;
use gtk::{
CompositeTemplate, glib,
glib,
glib::{clone, closure_local},
};
use tracing::{debug, error};
@ -55,7 +55,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/components/crypto/identity_setup_view.ui")]
#[properties(wrapper_type = super::CryptoIdentitySetupView)]
pub struct CryptoIdentitySetupView {
@ -458,7 +458,8 @@ mod imp {
glib::wrapper! {
/// A view with the different flows to setup a crypto identity.
pub struct CryptoIdentitySetupView(ObjectSubclass<imp::CryptoIdentitySetupView>)
@extends gtk::Widget, adw::Bin, @implements gtk::Accessible;
@extends gtk::Widget, adw::Bin,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
impl CryptoIdentitySetupView {

7
src/components/crypto/recovery_setup_view.rs

@ -1,6 +1,6 @@
use adw::{prelude::*, subclass::prelude::*};
use gettextrs::gettext;
use gtk::{CompositeTemplate, glib, glib::closure_local};
use gtk::{glib, glib::closure_local};
use matrix_sdk::encryption::{
recovery::{RecoveryError, RecoveryState as SdkRecoveryState},
secret_storage::SecretStorageError,
@ -50,7 +50,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/components/crypto/recovery_setup_view.ui")]
#[properties(wrapper_type = super::CryptoRecoverySetupView)]
pub struct CryptoRecoverySetupView {
@ -539,7 +539,8 @@ mod imp {
glib::wrapper! {
/// A view with the different flows to use or set up account recovery.
pub struct CryptoRecoverySetupView(ObjectSubclass<imp::CryptoRecoverySetupView>)
@extends gtk::Widget, adw::Bin, @implements gtk::Accessible;
@extends gtk::Widget, adw::Bin,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
impl CryptoRecoverySetupView {

3
src/components/custom_entry.rs

@ -29,7 +29,8 @@ glib::wrapper! {
/// Wrap your custom widgets with CustomEntry to get stock entry styling and
/// behavior for free.
pub struct CustomEntry(ObjectSubclass<imp::CustomEntry>)
@extends gtk::Widget, adw::Bin;
@extends gtk::Widget, adw::Bin,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
impl CustomEntry {

7
src/components/dialogs/auth/in_browser_page.rs

@ -1,7 +1,7 @@
use std::fmt::Debug;
use adw::{prelude::*, subclass::prelude::*};
use gtk::{CompositeTemplate, glib};
use gtk::glib;
use tracing::error;
use crate::components::LoadingButton;
@ -13,7 +13,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/components/dialogs/auth/in_browser_page.ui")]
#[properties(wrapper_type = super::AuthDialogInBrowserPage)]
pub struct AuthDialogInBrowserPage {
@ -83,7 +83,8 @@ mod imp {
glib::wrapper! {
/// Page to pass a stage in the browser for the [`AuthDialog`].
pub struct AuthDialogInBrowserPage(ObjectSubclass<imp::AuthDialogInBrowserPage>)
@extends gtk::Widget, adw::Bin, @implements gtk::Accessible;
@extends gtk::Widget, adw::Bin,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
impl AuthDialogInBrowserPage {

6
src/components/dialogs/auth/mod.rs

@ -3,7 +3,7 @@ use std::{fmt::Debug, future::Future};
use adw::{prelude::*, subclass::prelude::*};
use futures_channel::oneshot;
use gettextrs::gettext;
use gtk::{CompositeTemplate, glib, glib::clone};
use gtk::{glib, glib::clone};
use matrix_sdk::{Error, encryption::CrossSigningResetAuthType};
use ruma::{
api::{
@ -36,7 +36,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/components/dialogs/auth/mod.ui")]
#[properties(wrapper_type = super::AuthDialog)]
pub struct AuthDialog {
@ -494,7 +494,7 @@ glib::wrapper! {
/// [User-Interactive Authentication API]: https://spec.matrix.org/latest/client-server-api/#user-interactive-authentication-api
pub struct AuthDialog(ObjectSubclass<imp::AuthDialog>)
@extends gtk::Widget, adw::Dialog, ToastableDialog,
@implements gtk::Accessible;
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget, gtk::ShortcutManager;
}
impl AuthDialog {

7
src/components/dialogs/auth/password_page.rs

@ -1,7 +1,7 @@
use std::fmt::Debug;
use adw::{prelude::*, subclass::prelude::*};
use gtk::{CompositeTemplate, glib};
use gtk::glib;
use crate::components::LoadingButton;
@ -10,7 +10,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate)]
#[derive(Debug, Default, gtk::CompositeTemplate)]
#[template(resource = "/org/gnome/Fractal/ui/components/dialogs/auth/password_page.ui")]
pub struct AuthDialogPasswordPage {
#[template_child]
@ -74,7 +74,8 @@ mod imp {
glib::wrapper! {
/// Page to pass the password stage for the [`AuthDialog`].
pub struct AuthDialogPasswordPage(ObjectSubclass<imp::AuthDialogPasswordPage>)
@extends gtk::Widget, adw::Bin, @implements gtk::Accessible;
@extends gtk::Widget, adw::Bin,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
impl AuthDialogPasswordPage {

6
src/components/dialogs/room_preview.rs

@ -1,6 +1,6 @@
use adw::{prelude::*, subclass::prelude::*};
use gettextrs::gettext;
use gtk::{CompositeTemplate, glib, glib::clone};
use gtk::{glib, glib::clone};
use super::ToastableDialog;
use crate::{
@ -23,7 +23,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/components/dialogs/room_preview.ui")]
#[properties(wrapper_type = super::RoomPreviewDialog)]
pub struct RoomPreviewDialog {
@ -447,7 +447,7 @@ glib::wrapper! {
/// Dialog to preview a room and eventually join it.
pub struct RoomPreviewDialog(ObjectSubclass<imp::RoomPreviewDialog>)
@extends gtk::Widget, adw::Dialog, ToastableDialog,
@implements gtk::Accessible;
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget, gtk::ShortcutManager;
}
#[gtk::template_callbacks]

7
src/components/dialogs/toastable.rs

@ -1,5 +1,5 @@
use adw::{prelude::*, subclass::prelude::*};
use gtk::{CompositeTemplate, glib};
use gtk::glib;
mod imp {
use std::marker::PhantomData;
@ -8,7 +8,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/components/dialogs/toastable.ui")]
#[properties(wrapper_type = super::ToastableDialog)]
pub struct ToastableDialog {
@ -62,7 +62,8 @@ mod imp {
glib::wrapper! {
/// A dialog that can display toasts.
pub struct ToastableDialog(ObjectSubclass<imp::ToastableDialog>)
@extends gtk::Widget, adw::Dialog, @implements gtk::Accessible;
@extends gtk::Widget, adw::Dialog,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget, gtk::ShortcutManager;
}
pub trait ToastableDialogExt: 'static {

7
src/components/dialogs/user_profile.rs

@ -1,5 +1,5 @@
use adw::{prelude::*, subclass::prelude::*};
use gtk::{CompositeTemplate, glib, glib::clone};
use gtk::{glib, glib::clone};
use ruma::OwnedUserId;
use super::ToastableDialog;
@ -17,7 +17,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate)]
#[derive(Debug, Default, gtk::CompositeTemplate)]
#[template(resource = "/org/gnome/Fractal/ui/components/dialogs/user_profile.ui")]
pub struct UserProfileDialog {
#[template_child]
@ -112,7 +112,8 @@ mod imp {
glib::wrapper! {
/// Dialog to view a user's profile.
pub struct UserProfileDialog(ObjectSubclass<imp::UserProfileDialog>)
@extends gtk::Widget, adw::Dialog, ToastableDialog, @implements gtk::Accessible;
@extends gtk::Widget, adw::Dialog, ToastableDialog,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget, gtk::ShortcutManager;
}
impl UserProfileDialog {

3
src/components/drag_overlay.rs

@ -126,7 +126,8 @@ mod imp {
glib::wrapper! {
/// A widget displaying an overlay when something is dragged onto it.
pub struct DragOverlay(ObjectSubclass<imp::DragOverlay>)
@extends gtk::Widget, @implements gtk::Accessible;
@extends gtk::Widget,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
impl DragOverlay {

3
src/components/label_with_widgets.rs

@ -316,7 +316,8 @@ mod imp {
glib::wrapper! {
/// A Label that can have multiple widgets placed inside the text.
pub struct LabelWithWidgets(ObjectSubclass<imp::LabelWithWidgets>)
@extends gtk::Widget, @implements gtk::Accessible;
@extends gtk::Widget,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
impl LabelWithWidgets {

7
src/components/loading/bin.rs

@ -1,5 +1,5 @@
use adw::prelude::*;
use gtk::{CompositeTemplate, glib, subclass::prelude::*};
use gtk::{glib, subclass::prelude::*};
use crate::utils::ChildPropertyExt;
@ -10,7 +10,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/components/loading/bin.ui")]
#[properties(wrapper_type = super::LoadingBin)]
pub struct LoadingBin {
@ -106,7 +106,8 @@ mod imp {
glib::wrapper! {
/// A Bin that shows either its child or a loading spinner.
pub struct LoadingBin(ObjectSubclass<imp::LoadingBin>)
@extends gtk::Widget, @implements gtk::Accessible;
@extends gtk::Widget,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
impl LoadingBin {

3
src/components/loading/button.rs

@ -149,7 +149,8 @@ glib::wrapper! {
/// Use the `content-label` and `content-icon-name` properties instead of `label` and
/// `icon-name` respectively, otherwise the spinner will not appear.
pub struct LoadingButton(ObjectSubclass<imp::LoadingButton>)
@extends gtk::Widget, gtk::Button, @implements gtk::Accessible, gtk::Actionable;
@extends gtk::Widget, gtk::Button,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget, gtk::Actionable;
}
impl LoadingButton {

9
src/components/media/audio_player.rs

@ -1,5 +1,5 @@
use adw::subclass::prelude::*;
use gtk::{CompositeTemplate, gio, glib, prelude::*};
use adw::{prelude::*, subclass::prelude::*};
use gtk::{gio, glib};
use crate::utils::BoundObject;
@ -10,7 +10,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/components/media/audio_player.ui")]
#[properties(wrapper_type = super::AudioPlayer)]
pub struct AudioPlayer {
@ -85,7 +85,8 @@ mod imp {
glib::wrapper! {
/// A widget displaying a video media file.
pub struct AudioPlayer(ObjectSubclass<imp::AudioPlayer>)
@extends gtk::Widget, adw::Bin, @implements gtk::Accessible;
@extends gtk::Widget, adw::Bin,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
impl AudioPlayer {

7
src/components/media/content_viewer.rs

@ -1,7 +1,7 @@
use adw::{prelude::*, subclass::prelude::*};
use geo_uri::GeoUri;
use gettextrs::gettext;
use gtk::{CompositeTemplate, gdk, gio, glib};
use gtk::{gdk, gio, glib};
use super::{AnimatedImagePaintable, AudioPlayer, LocationViewer};
use crate::{
@ -56,7 +56,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/components/media/content_viewer.ui")]
#[properties(wrapper_type = super::MediaContentViewer)]
pub struct MediaContentViewer {
@ -275,7 +275,8 @@ mod imp {
glib::wrapper! {
/// Widget to view any media file.
pub struct MediaContentViewer(ObjectSubclass<imp::MediaContentViewer>)
@extends gtk::Widget, ContextMenuBin, @implements gtk::Accessible;
@extends gtk::Widget, ContextMenuBin,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
impl MediaContentViewer {

3
src/components/media/location_viewer.rs

@ -156,7 +156,8 @@ mod imp {
glib::wrapper! {
/// A widget displaying a location.
pub struct LocationViewer(ObjectSubclass<imp::LocationViewer>)
@extends gtk::Widget, adw::Bin, @implements gtk::Accessible;
@extends gtk::Widget, adw::Bin,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
impl LocationViewer {

26
src/components/media/video_player.rs

@ -1,5 +1,5 @@
use adw::{prelude::*, subclass::prelude::*};
use gtk::{CompositeTemplate, gio, glib, glib::clone};
use gtk::{gio, glib, glib::clone};
use tracing::{error, warn};
use super::video_player_renderer::VideoPlayerRenderer;
@ -12,7 +12,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/components/media/video_player.ui")]
#[properties(wrapper_type = super::VideoPlayer)]
pub struct VideoPlayer {
@ -69,7 +69,7 @@ mod imp {
glib::ControlFlow::Break,
move |_, message| {
if let Ok(message) = gst_play::PlayMessage::parse(message) {
imp.handle_message(message);
imp.handle_message(&message);
}
glib::ControlFlow::Continue
@ -147,24 +147,25 @@ mod imp {
}
/// Handle a message from the player.
fn handle_message(&self, message: gst_play::PlayMessage) {
fn handle_message(&self, message: &gst_play::PlayMessage) {
match message {
gst_play::PlayMessage::StateChanged { state } => {
gst_play::PlayMessage::StateChanged(change) => {
if matches!(
state,
change.state(),
gst_play::PlayState::Playing | gst_play::PlayState::Paused
) {
// Files that fail to play go from `Buffering` to `Stopped`.
self.set_state(LoadingState::Ready);
}
}
gst_play::PlayMessage::DurationChanged { duration } => {
self.set_duration(duration);
gst_play::PlayMessage::DurationChanged(change) => {
self.set_duration(change.duration());
}
gst_play::PlayMessage::Warning { error, .. } => {
warn!("Warning playing video: {error}");
gst_play::PlayMessage::Warning(warning) => {
warn!("Warning playing video: {}", warning.error());
}
gst_play::PlayMessage::Error { error, .. } => {
gst_play::PlayMessage::Error(error) => {
let error = error.error().clone();
error!("Error playing video: {error}");
self.error.replace(Some(error));
self.set_state(LoadingState::Error);
@ -219,7 +220,8 @@ mod imp {
glib::wrapper! {
/// A widget to preview a video file without controls or sound.
pub struct VideoPlayer(ObjectSubclass<imp::VideoPlayer>)
@extends gtk::Widget, adw::Bin, @implements gtk::Accessible;
@extends gtk::Widget, adw::Bin,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
impl VideoPlayer {

3
src/components/offline_banner.rs

@ -125,7 +125,8 @@ glib::wrapper! {
/// If a session is set, it watches the offline status of the session, otherwise it watches the
/// network connection with [`gio::NetworkMonitor`].
pub struct OfflineBanner(ObjectSubclass<imp::OfflineBanner>)
@extends gtk::Widget, adw::Bin;
@extends gtk::Widget, adw::Bin,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
impl OfflineBanner {

7
src/components/pill/mod.rs

@ -1,5 +1,5 @@
use adw::{prelude::*, subclass::prelude::*};
use gtk::{CompositeTemplate, glib, glib::clone};
use gtk::{glib, glib::clone};
mod at_room;
mod search_entry;
@ -32,7 +32,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/components/pill/mod.ui")]
#[properties(wrapper_type = super::Pill)]
pub struct Pill {
@ -252,7 +252,8 @@ mod imp {
glib::wrapper! {
/// Inline widget displaying an emphasized `PillSource`.
pub struct Pill(ObjectSubclass<imp::Pill>)
@extends gtk::Widget, @implements gtk::Accessible;
@extends gtk::Widget,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
impl Pill {

7
src/components/pill/search_entry.rs

@ -1,6 +1,6 @@
use adw::{prelude::*, subclass::prelude::*};
use gtk::{
CompositeTemplate, glib,
glib,
glib::{clone, closure_local},
};
@ -13,7 +13,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/components/pill/search_entry.ui")]
#[properties(wrapper_type = super::PillSearchEntry)]
pub struct PillSearchEntry {
@ -229,7 +229,8 @@ mod imp {
glib::wrapper! {
/// Search entry where selected results can be added as [`Pill`]s.
pub struct PillSearchEntry(ObjectSubclass<imp::PillSearchEntry>)
@extends gtk::Widget, adw::Bin, @implements gtk::Accessible;
@extends gtk::Widget, adw::Bin,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
impl PillSearchEntry {

7
src/components/pill/source_row.rs

@ -1,4 +1,4 @@
use gtk::{CompositeTemplate, glib, prelude::*, subclass::prelude::*};
use gtk::{glib, prelude::*, subclass::prelude::*};
use super::{AtRoom, Avatar, AvatarImageSafetySetting, PillSource};
use crate::session::model::Room;
@ -10,7 +10,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/components/pill/source_row.ui")]
#[properties(wrapper_type = super::PillSourceRow)]
pub struct PillSourceRow {
@ -76,7 +76,8 @@ mod imp {
glib::wrapper! {
/// A list row to display a [`PillSource`].
pub struct PillSourceRow(ObjectSubclass<imp::PillSourceRow>)
@extends gtk::Widget, gtk::ListBoxRow;
@extends gtk::Widget, gtk::ListBoxRow,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget, gtk::Actionable;
}
impl PillSourceRow {

6
src/components/power_level_selection/combo_box.rs

@ -1,5 +1,5 @@
use adw::{prelude::*, subclass::prelude::*};
use gtk::{CompositeTemplate, gdk, glib};
use gtk::{gdk, glib};
use ruma::{Int, events::room::power_levels::UserPowerLevel};
use super::PowerLevelSelectionPopover;
@ -12,7 +12,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/components/power_level_selection/combo_box.ui")]
#[properties(wrapper_type = super::PowerLevelSelectionComboBox)]
pub struct PowerLevelSelectionComboBox {
@ -116,7 +116,7 @@ glib::wrapper! {
/// A combo box to select a room member's power level.
pub struct PowerLevelSelectionComboBox(ObjectSubclass<imp::PowerLevelSelectionComboBox>)
@extends gtk::Widget, gtk::Button, gtk::ToggleButton,
@implements gtk::Actionable, gtk::Accessible;
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget, gtk::Actionable;
}
impl PowerLevelSelectionComboBox {

7
src/components/power_level_selection/popover.rs

@ -1,5 +1,5 @@
use adw::{prelude::*, subclass::prelude::*};
use gtk::{CompositeTemplate, glib, glib::clone};
use gtk::{glib, glib::clone};
use ruma::events::room::power_levels::UserPowerLevel;
use crate::{
@ -14,7 +14,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/components/power_level_selection/popover.ui")]
#[properties(wrapper_type = super::PowerLevelSelectionPopover)]
pub struct PowerLevelSelectionPopover {
@ -285,7 +285,8 @@ mod imp {
glib::wrapper! {
/// A popover to select a room member's power level.
pub struct PowerLevelSelectionPopover(ObjectSubclass<imp::PowerLevelSelectionPopover>)
@extends gtk::Widget, gtk::Popover, @implements gtk::Accessible;
@extends gtk::Widget, gtk::Popover,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget, gtk::Native, gtk::ShortcutManager;
}
impl PowerLevelSelectionPopover {

6
src/components/power_level_selection/row.rs

@ -1,5 +1,5 @@
use adw::{prelude::*, subclass::prelude::*};
use gtk::{CompositeTemplate, glib, glib::closure_local};
use gtk::{glib, glib::closure_local};
use ruma::{Int, events::room::power_levels::UserPowerLevel, int};
use super::PowerLevelSelectionPopover;
@ -19,7 +19,7 @@ mod imp {
use super::*;
#[derive(Debug, CompositeTemplate, glib::Properties)]
#[derive(Debug, gtk::CompositeTemplate, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/components/power_level_selection/row.ui")]
#[properties(wrapper_type = super::PowerLevelSelectionRow)]
pub struct PowerLevelSelectionRow {
@ -271,7 +271,7 @@ glib::wrapper! {
/// An `AdwPreferencesRow` behaving like a combo box to select a room member's power level.
pub struct PowerLevelSelectionRow(ObjectSubclass<imp::PowerLevelSelectionRow>)
@extends gtk::Widget, gtk::ListBoxRow, adw::PreferencesRow,
@implements gtk::Actionable, gtk::Accessible;
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget, gtk::Actionable;
}
impl PowerLevelSelectionRow {

3
src/components/role_badge.rs

@ -107,7 +107,8 @@ mod imp {
glib::wrapper! {
/// Inline widget displaying a badge with the role of a room member.
pub struct RoleBadge(ObjectSubclass<imp::RoleBadge>)
@extends gtk::Widget, adw::Bin;
@extends gtk::Widget, adw::Bin,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
impl RoleBadge {

6
src/components/rows/button_count_row.rs

@ -1,5 +1,5 @@
use adw::{prelude::*, subclass::prelude::*};
use gtk::{CompositeTemplate, glib};
use gtk::glib;
mod imp {
use std::marker::PhantomData;
@ -8,7 +8,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/components/rows/button_count_row.ui")]
#[properties(wrapper_type = super::ButtonCountRow)]
pub struct ButtonCountRow {
@ -64,7 +64,7 @@ glib::wrapper! {
/// An `AdwPreferencesRow` usable as a button, that optionally displays a count.
pub struct ButtonCountRow(ObjectSubclass<imp::ButtonCountRow>)
@extends gtk::Widget, gtk::ListBoxRow, adw::PreferencesRow, adw::ActionRow,
@implements gtk::Accessible;
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget, gtk::Actionable;
}
impl ButtonCountRow {

7
src/components/rows/check_loading_row.rs

@ -1,5 +1,5 @@
use adw::subclass::prelude::*;
use gtk::{CompositeTemplate, glib, glib::clone, prelude::*};
use gtk::{glib, glib::clone, prelude::*};
use crate::{components::LoadingBin, utils::bool_to_accessible_tristate};
@ -10,7 +10,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/components/rows/check_loading_row.ui")]
#[properties(wrapper_type = super::CheckLoadingRow)]
pub struct CheckLoadingRow {
@ -116,7 +116,8 @@ mod imp {
glib::wrapper! {
/// An `AdwActionRow` with a check button and a loading state.
pub struct CheckLoadingRow(ObjectSubclass<imp::CheckLoadingRow>)
@extends gtk::Widget, gtk::ListBoxRow, adw::PreferencesRow, adw::ActionRow, @implements gtk::Actionable, gtk::Accessible;
@extends gtk::Widget, gtk::ListBoxRow, adw::PreferencesRow, adw::ActionRow,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget, gtk::Actionable;
}
impl CheckLoadingRow {

6
src/components/rows/copyable_row.rs

@ -1,5 +1,5 @@
use adw::{prelude::*, subclass::prelude::*};
use gtk::{CompositeTemplate, glib};
use gtk::glib;
use crate::toast;
@ -25,7 +25,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/components/rows/copyable_row.ui")]
#[properties(wrapper_type = super::CopyableRow)]
pub struct CopyableRow {
@ -157,7 +157,7 @@ glib::wrapper! {
/// An `AdwActionRow` with a button to copy the title or subtitle.
pub struct CopyableRow(ObjectSubclass<imp::CopyableRow>)
@extends gtk::Widget, gtk::ListBoxRow, adw::PreferencesRow, adw::ActionRow,
@implements gtk::Actionable, gtk::Accessible;
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget, gtk::Actionable;
}
impl CopyableRow {

6
src/components/rows/entry_add_row.rs

@ -1,5 +1,5 @@
use adw::{prelude::*, subclass::prelude::*};
use gtk::{CompositeTemplate, glib, glib::closure_local};
use gtk::{glib, glib::closure_local};
use crate::components::LoadingButton;
@ -10,7 +10,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/components/rows/entry_add_row.ui")]
#[properties(wrapper_type = super::EntryAddRow)]
pub struct EntryAddRow {
@ -132,7 +132,7 @@ glib::wrapper! {
/// An `AdwEntryRow` with an "Add" button.
pub struct EntryAddRow(ObjectSubclass<imp::EntryAddRow>)
@extends gtk::Widget, gtk::ListBoxRow, adw::PreferencesRow, adw::ActionRow, adw::EntryRow,
@implements gtk::Actionable, gtk::Editable, gtk::Accessible;
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget, gtk::Actionable, gtk::Editable;
}
impl EntryAddRow {

10
src/components/rows/loading_button_row.rs

@ -1,8 +1,7 @@
use adw::subclass::prelude::*;
use adw::{prelude::*, subclass::prelude::*};
use gtk::{
CompositeTemplate, glib,
glib,
glib::{clone, closure_local},
prelude::*,
};
use crate::components::LoadingBin;
@ -14,7 +13,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/components/rows/loading_button_row.ui")]
#[properties(wrapper_type = super::LoadingButtonRow)]
pub struct LoadingButtonRow {
@ -97,7 +96,8 @@ mod imp {
glib::wrapper! {
/// An `AdwPreferencesRow` usable as a button with a loading state.
pub struct LoadingButtonRow(ObjectSubclass<imp::LoadingButtonRow>)
@extends gtk::Widget, gtk::ListBoxRow, adw::PreferencesRow, @implements gtk::Accessible;
@extends gtk::Widget, gtk::ListBoxRow, adw::PreferencesRow,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget, gtk::Actionable;
}
impl LoadingButtonRow {

10
src/components/rows/loading_row.rs

@ -1,6 +1,5 @@
use glib::subclass::Signal;
use gtk::{
CompositeTemplate, glib,
glib,
glib::{clone, closure_local},
prelude::*,
subclass::prelude::*,
@ -11,11 +10,11 @@ use crate::components::LoadingBin;
mod imp {
use std::{marker::PhantomData, sync::LazyLock};
use glib::subclass::InitializingObject;
use glib::subclass::{InitializingObject, Signal};
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/components/rows/loading_row.ui")]
#[properties(wrapper_type = super::LoadingRow)]
pub struct LoadingRow {
@ -103,7 +102,8 @@ glib::wrapper! {
///
/// It's also possible to set an error once the loading fails, including a retry button.
pub struct LoadingRow(ObjectSubclass<imp::LoadingRow>)
@extends gtk::Widget, gtk::ListBoxRow, @implements gtk::Accessible;
@extends gtk::Widget, gtk::ListBoxRow,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget, gtk::Actionable;
}
impl LoadingRow {

6
src/components/rows/removable_row.rs

@ -1,5 +1,5 @@
use adw::{prelude::*, subclass::prelude::*};
use gtk::{CompositeTemplate, glib, glib::closure_local};
use gtk::{glib, glib::closure_local};
use crate::components::LoadingButton;
@ -10,7 +10,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/components/rows/removable_row.ui")]
#[properties(wrapper_type = super::RemovableRow)]
pub struct RemovableRow {
@ -144,7 +144,7 @@ glib::wrapper! {
/// An `AdwActionRow` with a "remove" button.
pub struct RemovableRow(ObjectSubclass<imp::RemovableRow>)
@extends gtk::Widget, gtk::ListBoxRow, adw::PreferencesRow, adw::ActionRow,
@implements gtk::Actionable, gtk::Accessible;
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget, gtk::Actionable;
}
impl RemovableRow {

6
src/components/rows/substring_entry_row.rs

@ -1,6 +1,6 @@
use adw::{prelude::*, subclass::prelude::*};
use gtk::{
CompositeTemplate, glib,
glib,
glib::{clone, closure_local},
pango,
};
@ -18,7 +18,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/components/rows/substring_entry_row.ui")]
#[properties(wrapper_type = super::SubstringEntryRow)]
pub struct SubstringEntryRow {
@ -454,7 +454,7 @@ glib::wrapper! {
/// It also has a built-in "Add" button, making it an almost drop-in replacement to `EntryAddRow`.
pub struct SubstringEntryRow(ObjectSubclass<imp::SubstringEntryRow>)
@extends gtk::Widget, gtk::ListBoxRow, adw::PreferencesRow,
@implements gtk::Editable, gtk::Accessible;
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget, gtk::Actionable, gtk::Editable;
}
impl SubstringEntryRow {

6
src/components/rows/switch_loading_row.rs

@ -1,5 +1,5 @@
use adw::{prelude::*, subclass::prelude::*};
use gtk::{CompositeTemplate, glib, glib::clone};
use gtk::{glib, glib::clone};
use crate::utils::bool_to_accessible_tristate;
@ -10,7 +10,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/components/rows/switch_loading_row.ui")]
#[properties(wrapper_type = super::SwitchLoadingRow)]
pub struct SwitchLoadingRow {
@ -123,7 +123,7 @@ glib::wrapper! {
/// An `AdwActionRow` with a switch and a loading state.
pub struct SwitchLoadingRow(ObjectSubclass<imp::SwitchLoadingRow>)
@extends gtk::Widget, gtk::ListBoxRow, adw::PreferencesRow, adw::ActionRow,
@implements gtk::Actionable, gtk::Accessible;
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget, gtk::Actionable;
}
impl SwitchLoadingRow {

3
src/components/scale_revealer.rs

@ -213,7 +213,8 @@ mod imp {
glib::wrapper! {
/// A widget to reveal a child with a scaling animation.
pub struct ScaleRevealer(ObjectSubclass<imp::ScaleRevealer>)
@extends gtk::Widget, adw::Bin;
@extends gtk::Widget, adw::Bin,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
impl ScaleRevealer {

7
src/components/user_page.rs

@ -3,7 +3,7 @@ use std::slice;
use adw::{prelude::*, subclass::prelude::*};
use gettextrs::{gettext, ngettext, pgettext};
use gtk::{
CompositeTemplate, glib,
glib,
glib::{clone, closure_local},
};
use ruma::{
@ -33,7 +33,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/components/user_page.ui")]
#[properties(wrapper_type = super::UserPage)]
pub struct UserPage {
@ -778,7 +778,8 @@ mod imp {
glib::wrapper! {
/// Page to view details about a user.
pub struct UserPage(ObjectSubclass<imp::UserPage>)
@extends gtk::Widget, adw::NavigationPage, @implements gtk::Accessible;
@extends gtk::Widget, adw::NavigationPage,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
impl UserPage {

3
src/contrib/qr_code.rs

@ -126,7 +126,8 @@ glib::wrapper! {
/// }
/// ```
pub struct QRCode(ObjectSubclass<imp::QRCode>)
@extends gtk::Widget, @implements gtk::Accessible;
@extends gtk::Widget,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
impl QRCode {

3
src/error_page.rs

@ -99,7 +99,8 @@ mod imp {
glib::wrapper! {
/// A view displaying an error.
pub struct ErrorPage(ObjectSubclass<imp::ErrorPage>)
@extends gtk::Widget, adw::Bin, @implements gtk::Accessible;
@extends gtk::Widget, adw::Bin,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
impl ErrorPage {

7
src/identity_verification_view/accept_request_page.rs

@ -1,6 +1,6 @@
use adw::subclass::prelude::*;
use gettextrs::gettext;
use gtk::{CompositeTemplate, glib, glib::clone, prelude::*};
use gtk::{glib, glib::clone, prelude::*};
use crate::{
components::LoadingButton, gettext_f, prelude::*, session::model::IdentityVerification, toast,
@ -13,7 +13,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(
resource = "/org/gnome/Fractal/ui/identity_verification_view/accept_request_page.ui"
)]
@ -108,7 +108,8 @@ mod imp {
glib::wrapper! {
/// A page to accept or decline a new identity verification request.
pub struct AcceptRequestPage(ObjectSubclass<imp::AcceptRequestPage>)
@extends gtk::Widget, adw::Bin, @implements gtk::Accessible;
@extends gtk::Widget, adw::Bin,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
#[gtk::template_callbacks]

9
src/identity_verification_view/cancelled_page.rs

@ -1,6 +1,6 @@
use adw::subclass::prelude::*;
use adw::{prelude::*, subclass::prelude::*};
use gettextrs::gettext;
use gtk::{CompositeTemplate, glib, glib::clone, prelude::*};
use gtk::{glib, glib::clone};
use matrix_sdk::crypto::CancelInfo;
use ruma::events::key::verification::cancel::CancelCode;
@ -16,7 +16,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/identity_verification_view/cancelled_page.ui")]
#[properties(wrapper_type = super::CancelledPage)]
pub struct CancelledPage {
@ -116,7 +116,8 @@ mod imp {
glib::wrapper! {
/// A page to show when the verification was cancelled.
pub struct CancelledPage(ObjectSubclass<imp::CancelledPage>)
@extends gtk::Widget, adw::Bin, @implements gtk::Accessible;
@extends gtk::Widget, adw::Bin,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
#[gtk::template_callbacks]

9
src/identity_verification_view/choose_method_page.rs

@ -1,6 +1,6 @@
use adw::subclass::prelude::*;
use adw::{prelude::*, subclass::prelude::*};
use gettextrs::gettext;
use gtk::{CompositeTemplate, glib, glib::clone, prelude::*};
use gtk::{glib, glib::clone};
use crate::{
components::LoadingButton,
@ -19,7 +19,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/identity_verification_view/choose_method_page.ui")]
#[properties(wrapper_type = super::ChooseMethodPage)]
pub struct ChooseMethodPage {
@ -136,7 +136,8 @@ mod imp {
glib::wrapper! {
/// A page that shows a QR code or allows to choose between different flows.
pub struct ChooseMethodPage(ObjectSubclass<imp::ChooseMethodPage>)
@extends gtk::Widget, adw::Bin, @implements gtk::Accessible;
@extends gtk::Widget, adw::Bin,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
#[gtk::template_callbacks]

9
src/identity_verification_view/completed_page.rs

@ -1,6 +1,6 @@
use adw::subclass::prelude::*;
use adw::{prelude::*, subclass::prelude::*};
use gettextrs::gettext;
use gtk::{CompositeTemplate, glib, glib::clone, prelude::*};
use gtk::{glib, glib::clone};
use crate::{gettext_f, prelude::*, session::model::IdentityVerification};
@ -11,7 +11,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/identity_verification_view/completed_page.ui")]
#[properties(wrapper_type = super::CompletedPage)]
pub struct CompletedPage {
@ -101,7 +101,8 @@ mod imp {
glib::wrapper! {
/// A page to show when the verification was completed.
pub struct CompletedPage(ObjectSubclass<imp::CompletedPage>)
@extends gtk::Widget, adw::Bin, @implements gtk::Accessible;
@extends gtk::Widget, adw::Bin,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
#[gtk::template_callbacks]

9
src/identity_verification_view/confirm_qr_code_page.rs

@ -1,6 +1,6 @@
use adw::subclass::prelude::*;
use adw::{prelude::*, subclass::prelude::*};
use gettextrs::gettext;
use gtk::{CompositeTemplate, glib, glib::clone, prelude::*};
use gtk::{glib, glib::clone};
use crate::{
components::LoadingButton, gettext_f, prelude::*, session::model::IdentityVerification, toast,
@ -13,7 +13,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(
resource = "/org/gnome/Fractal/ui/identity_verification_view/confirm_qr_code_page.ui"
)]
@ -107,7 +107,8 @@ mod imp {
glib::wrapper! {
/// A page to confirm whether the QR Code was scanned successfully by the other party.
pub struct ConfirmQrCodePage(ObjectSubclass<imp::ConfirmQrCodePage>)
@extends gtk::Widget, adw::Bin, @implements gtk::Accessible;
@extends gtk::Widget, adw::Bin,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
#[gtk::template_callbacks]

9
src/identity_verification_view/mod.rs

@ -1,6 +1,6 @@
use adw::subclass::prelude::*;
use adw::{prelude::*, subclass::prelude::*};
use gettextrs::gettext;
use gtk::{CompositeTemplate, glib, glib::clone, prelude::*};
use gtk::{glib, glib::clone};
mod accept_request_page;
mod cancelled_page;
@ -32,7 +32,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/identity_verification_view/mod.ui")]
#[properties(wrapper_type = super::IdentityVerificationView)]
pub struct IdentityVerificationView {
@ -155,7 +155,8 @@ mod imp {
glib::wrapper! {
/// A view to show the different stages of an identity verification.
pub struct IdentityVerificationView(ObjectSubclass<imp::IdentityVerificationView>)
@extends gtk::Widget, adw::Bin, @implements gtk::Accessible;
@extends gtk::Widget, adw::Bin,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
impl IdentityVerificationView {

9
src/identity_verification_view/no_supported_methods_page.rs

@ -1,6 +1,6 @@
use adw::subclass::prelude::*;
use adw::{prelude::*, subclass::prelude::*};
use gettextrs::gettext;
use gtk::{CompositeTemplate, glib, glib::clone, prelude::*};
use gtk::{glib, glib::clone};
use crate::{
components::LoadingButton, gettext_f, prelude::*, session::model::IdentityVerification, toast,
@ -14,7 +14,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(
resource = "/org/gnome/Fractal/ui/identity_verification_view/no_supported_methods_page.ui"
)]
@ -116,7 +116,8 @@ mod imp {
glib::wrapper! {
/// A page to show when a verification request was received with no methods that Fractal supports.
pub struct NoSupportedMethodsPage(ObjectSubclass<imp::NoSupportedMethodsPage>)
@extends gtk::Widget, adw::Bin, @implements gtk::Accessible;
@extends gtk::Widget, adw::Bin,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
#[gtk::template_callbacks]

9
src/identity_verification_view/qr_code_scanned_page.rs

@ -1,6 +1,6 @@
use adw::subclass::prelude::*;
use adw::{prelude::*, subclass::prelude::*};
use gettextrs::gettext;
use gtk::{CompositeTemplate, glib, glib::clone, prelude::*};
use gtk::{glib, glib::clone};
use crate::{
components::LoadingButton, gettext_f, prelude::*, session::model::IdentityVerification, toast,
@ -13,7 +13,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(
resource = "/org/gnome/Fractal/ui/identity_verification_view/qr_code_scanned_page.ui"
)]
@ -98,7 +98,8 @@ mod imp {
glib::wrapper! {
/// A page to show when a QR code was scanned.
pub struct QrCodeScannedPage(ObjectSubclass<imp::QrCodeScannedPage>)
@extends gtk::Widget, adw::Bin, @implements gtk::Accessible;
@extends gtk::Widget, adw::Bin,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
#[gtk::template_callbacks]

9
src/identity_verification_view/room_left_page.rs

@ -1,5 +1,5 @@
use adw::subclass::prelude::*;
use gtk::{CompositeTemplate, glib, prelude::*};
use adw::{prelude::*, subclass::prelude::*};
use gtk::glib;
use crate::session::model::IdentityVerification;
@ -8,7 +8,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/identity_verification_view/room_left_page.ui")]
#[properties(wrapper_type = super::RoomLeftPage)]
pub struct RoomLeftPage {
@ -50,7 +50,8 @@ mod imp {
glib::wrapper! {
/// A page to show when a verification request was cancelled because the room where it happened was left.
pub struct RoomLeftPage(ObjectSubclass<imp::RoomLeftPage>)
@extends gtk::Widget, adw::Bin, @implements gtk::Accessible;
@extends gtk::Widget, adw::Bin,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
#[gtk::template_callbacks]

7
src/identity_verification_view/sas_emoji.rs

@ -1,12 +1,12 @@
use adw::subclass::prelude::*;
use gtk::{CompositeTemplate, glib};
use gtk::glib;
mod imp {
use glib::subclass::InitializingObject;
use super::*;
#[derive(Debug, Default, CompositeTemplate)]
#[derive(Debug, Default, gtk::CompositeTemplate)]
#[template(resource = "/org/gnome/Fractal/ui/identity_verification_view/sas_emoji.ui")]
pub struct SasEmoji {
#[template_child]
@ -38,7 +38,8 @@ mod imp {
glib::wrapper! {
/// An emoji for SAS verification.
pub struct SasEmoji(ObjectSubclass<imp::SasEmoji>)
@extends gtk::Widget, adw::Bin, @implements gtk::Accessible;
@extends gtk::Widget, adw::Bin,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
impl SasEmoji {

9
src/identity_verification_view/sas_page.rs

@ -1,8 +1,8 @@
use std::collections::HashMap;
use adw::subclass::prelude::*;
use adw::{prelude::*, subclass::prelude::*};
use gettextrs::gettext;
use gtk::{CompositeTemplate, gio, glib, glib::clone, prelude::*};
use gtk::{gio, glib, glib::clone};
use super::sas_emoji::SasEmoji;
use crate::{
@ -17,7 +17,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/identity_verification_view/sas_page.ui")]
#[properties(wrapper_type = super::SasPage)]
pub struct SasPage {
@ -127,7 +127,8 @@ mod imp {
glib::wrapper! {
/// A page to confirm if SAS verification data matches.
pub struct SasPage(ObjectSubclass<imp::SasPage>)
@extends gtk::Widget, adw::Bin, @implements gtk::Accessible;
@extends gtk::Widget, adw::Bin,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
#[gtk::template_callbacks]

7
src/identity_verification_view/scan_qr_code_page.rs

@ -1,6 +1,6 @@
use adw::{prelude::*, subclass::prelude::*};
use gettextrs::gettext;
use gtk::{CompositeTemplate, glib, glib::clone};
use gtk::{glib, glib::clone};
use matrix_sdk::encryption::verification::QrVerificationData;
use tracing::error;
@ -20,7 +20,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/identity_verification_view/scan_qr_code_page.ui")]
#[properties(wrapper_type = super::ScanQrCodePage)]
pub struct ScanQrCodePage {
@ -133,7 +133,8 @@ mod imp {
glib::wrapper! {
/// A page to scan a QR code.
pub struct ScanQrCodePage(ObjectSubclass<imp::ScanQrCodePage>)
@extends gtk::Widget, adw::Bin, @implements gtk::Accessible;
@extends gtk::Widget, adw::Bin,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
#[gtk::template_callbacks]

9
src/identity_verification_view/wait_for_other_page.rs

@ -1,6 +1,6 @@
use adw::subclass::prelude::*;
use adw::{prelude::*, subclass::prelude::*};
use gettextrs::gettext;
use gtk::{CompositeTemplate, glib, glib::clone, prelude::*};
use gtk::{glib, glib::clone};
use crate::{
components::LoadingButton, gettext_f, prelude::*, session::model::IdentityVerification, toast,
@ -13,7 +13,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(
resource = "/org/gnome/Fractal/ui/identity_verification_view/wait_for_other_page.ui"
)]
@ -101,7 +101,8 @@ mod imp {
glib::wrapper! {
/// A page instructing the user to wait for the other party.
pub struct WaitForOtherPage(ObjectSubclass<imp::WaitForOtherPage>)
@extends gtk::Widget, adw::Bin, @implements gtk::Accessible;
@extends gtk::Widget, adw::Bin,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
#[gtk::template_callbacks]

6
src/login/advanced_dialog.rs

@ -1,6 +1,6 @@
use adw::{prelude::*, subclass::prelude::*};
use futures_channel::oneshot;
use gtk::{CompositeTemplate, glib};
use gtk::glib;
mod imp {
use std::cell::{Cell, RefCell};
@ -9,7 +9,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/login/advanced_dialog.ui")]
#[properties(wrapper_type = super::LoginAdvancedDialog)]
pub struct LoginAdvancedDialog {
@ -67,7 +67,7 @@ glib::wrapper! {
/// A dialog with advanced settings for the login flow.
pub struct LoginAdvancedDialog(ObjectSubclass<imp::LoginAdvancedDialog>)
@extends gtk::Widget, adw::Dialog, adw::PreferencesDialog,
@implements gtk::Accessible;
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget, gtk::ShortcutManager;
}
impl LoginAdvancedDialog {

7
src/login/greeter.rs

@ -1,5 +1,5 @@
use adw::{prelude::*, subclass::prelude::*};
use gtk::{CompositeTemplate, glib};
use gtk::glib;
use crate::components::OfflineBanner;
@ -8,7 +8,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate)]
#[derive(Debug, Default, gtk::CompositeTemplate)]
#[template(resource = "/org/gnome/Fractal/ui/login/greeter.ui")]
pub struct Greeter {}
@ -46,7 +46,8 @@ mod imp {
glib::wrapper! {
/// The welcome screen of the app.
pub struct Greeter(ObjectSubclass<imp::Greeter>)
@extends gtk::Widget, adw::NavigationPage, @implements gtk::Accessible;
@extends gtk::Widget, adw::NavigationPage,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
impl Greeter {

7
src/login/homeserver_page.rs

@ -1,6 +1,6 @@
use adw::{prelude::*, subclass::prelude::*};
use gettextrs::gettext;
use gtk::{CompositeTemplate, glib, glib::clone};
use gtk::{glib, glib::clone};
use matrix_sdk::{
Client, ClientBuildError, ClientBuilder, config::RequestConfig, sanitize_server_name,
};
@ -21,7 +21,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/login/homeserver_page.ui")]
#[properties(wrapper_type = super::LoginHomeserverPage)]
pub struct LoginHomeserverPage {
@ -277,7 +277,8 @@ mod imp {
glib::wrapper! {
/// The login page to provide the homeserver and login settings.
pub struct LoginHomeserverPage(ObjectSubclass<imp::LoginHomeserverPage>)
@extends gtk::Widget, adw::NavigationPage, @implements gtk::Accessible;
@extends gtk::Widget, adw::NavigationPage,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
impl LoginHomeserverPage {

7
src/login/in_browser_page.rs

@ -1,6 +1,6 @@
use adw::{prelude::*, subclass::prelude::*};
use gettextrs::gettext;
use gtk::{CompositeTemplate, glib};
use gtk::glib;
use matrix_sdk::{
Error,
authentication::oauth::{OAuthAuthorizationData, UrlOrQuery},
@ -20,7 +20,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/login/in_browser_page.ui")]
#[properties(wrapper_type = super::LoginInBrowserPage)]
pub struct LoginInBrowserPage {
@ -242,7 +242,8 @@ mod imp {
glib::wrapper! {
/// A page to log the user in via the browser.
pub struct LoginInBrowserPage(ObjectSubclass<imp::LoginInBrowserPage>)
@extends gtk::Widget, adw::NavigationPage, @implements gtk::Accessible;
@extends gtk::Widget, adw::NavigationPage,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
impl LoginInBrowserPage {

7
src/login/method_page.rs

@ -1,6 +1,6 @@
use adw::{prelude::*, subclass::prelude::*};
use gettextrs::gettext;
use gtk::{self, CompositeTemplate, glib};
use gtk::glib;
use ruma::{OwnedServerName, api::client::session::get_login_types::v3::LoginType};
use tracing::warn;
use url::Url;
@ -15,7 +15,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/login/method_page.ui")]
#[properties(wrapper_type = super::LoginMethodPage)]
pub struct LoginMethodPage {
@ -225,7 +225,8 @@ mod imp {
glib::wrapper! {
/// The login page allowing to login via password or to choose a SSO provider.
pub struct LoginMethodPage(ObjectSubclass<imp::LoginMethodPage>)
@extends gtk::Widget, adw::NavigationPage, @implements gtk::Accessible;
@extends gtk::Widget, adw::NavigationPage,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
impl LoginMethodPage {

7
src/login/mod.rs

@ -2,7 +2,7 @@ use std::net::{Ipv4Addr, Ipv6Addr};
use adw::{prelude::*, subclass::prelude::*};
use gettextrs::gettext;
use gtk::{CompositeTemplate, gio, glib, glib::clone};
use gtk::{gio, glib, glib::clone};
use matrix_sdk::{
Client,
authentication::oauth::{
@ -63,7 +63,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/login/mod.ui")]
#[properties(wrapper_type = super::Login)]
pub struct Login {
@ -501,7 +501,8 @@ mod imp {
glib::wrapper! {
/// A widget managing the login flows.
pub struct Login(ObjectSubclass<imp::Login>)
@extends gtk::Widget, adw::Bin, @implements gtk::Accessible;
@extends gtk::Widget, adw::Bin,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
impl Login {

7
src/login/session_setup_view.rs

@ -1,6 +1,6 @@
use adw::{prelude::*, subclass::prelude::*};
use gtk::{
CompositeTemplate, glib,
glib,
glib::{clone, closure_local},
};
@ -34,7 +34,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/login/session_setup_view.ui")]
#[properties(wrapper_type = super::SessionSetupView)]
pub struct SessionSetupView {
@ -338,7 +338,8 @@ mod imp {
glib::wrapper! {
/// A view with the different flows to verify a session.
pub struct SessionSetupView(ObjectSubclass<imp::SessionSetupView>)
@extends gtk::Widget, adw::NavigationPage, @implements gtk::Accessible;
@extends gtk::Widget, adw::NavigationPage,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
impl SessionSetupView {

6
src/login/sso_idp_button.rs

@ -1,4 +1,4 @@
use gtk::{self, CompositeTemplate, glib, glib::clone, prelude::*, subclass::prelude::*};
use gtk::{glib, glib::clone, prelude::*, subclass::prelude::*};
use matrix_sdk::ruma::api::client::session::get_login_types::v3::{
IdentityProvider, IdentityProviderBrand,
};
@ -12,7 +12,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/login/sso_idp_button.ui")]
#[properties(wrapper_type = super::SsoIdpButton)]
pub struct SsoIdpButton {
@ -151,7 +151,7 @@ glib::wrapper! {
/// A button to represent an SSO identity provider.
pub struct SsoIdpButton(ObjectSubclass<imp::SsoIdpButton>)
@extends gtk::Widget, gtk::Button,
@implements gtk::Accessible, gtk::Actionable;
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget, gtk::Actionable;
}
impl SsoIdpButton {

7
src/session/view/account_settings/encryption_page/import_export_keys_subpage.rs

@ -1,6 +1,6 @@
use adw::{prelude::*, subclass::prelude::*};
use gettextrs::{gettext, ngettext};
use gtk::{CompositeTemplate, gio, glib};
use gtk::{gio, glib};
use matrix_sdk::encryption::{KeyExportError, RoomKeyImportError};
use tracing::{debug, error};
@ -25,7 +25,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(
resource = "/org/gnome/Fractal/ui/session/view/account_settings/encryption_page/import_export_keys_subpage.ui"
)]
@ -373,7 +373,8 @@ mod imp {
glib::wrapper! {
/// Subpage to import or export room encryption keys for backup.
pub struct ImportExportKeysSubpage(ObjectSubclass<imp::ImportExportKeysSubpage>)
@extends gtk::Widget, adw::NavigationPage, @implements gtk::Accessible;
@extends gtk::Widget, adw::NavigationPage,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
impl ImportExportKeysSubpage {

7
src/session/view/account_settings/encryption_page/mod.rs

@ -1,6 +1,6 @@
use adw::{prelude::*, subclass::prelude::*};
use gettextrs::gettext;
use gtk::{CompositeTemplate, glib, glib::clone};
use gtk::{glib, glib::clone};
mod import_export_keys_subpage;
@ -18,7 +18,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(
resource = "/org/gnome/Fractal/ui/session/view/account_settings/encryption_page/mod.ui"
)]
@ -284,7 +284,8 @@ mod imp {
glib::wrapper! {
/// Encryption settings page.
pub struct EncryptionPage(ObjectSubclass<imp::EncryptionPage>)
@extends gtk::Widget, adw::PreferencesPage, @implements gtk::Accessible;
@extends gtk::Widget, adw::PreferencesPage,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
impl EncryptionPage {

7
src/session/view/account_settings/general_page/change_password_subpage.rs

@ -1,6 +1,6 @@
use adw::{prelude::*, subclass::prelude::*};
use gettextrs::gettext;
use gtk::{CompositeTemplate, glib};
use gtk::glib;
use ruma::api::client::error::ErrorKind;
use tracing::error;
@ -16,7 +16,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(
resource = "/org/gnome/Fractal/ui/session/view/account_settings/general_page/change_password_subpage.ui"
)]
@ -222,7 +222,8 @@ mod imp {
glib::wrapper! {
/// Subpage allowing the user to change the account's password.
pub struct ChangePasswordSubpage(ObjectSubclass<imp::ChangePasswordSubpage>)
@extends gtk::Widget, adw::NavigationPage, @implements gtk::Accessible;
@extends gtk::Widget, adw::NavigationPage,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
impl ChangePasswordSubpage {

7
src/session/view/account_settings/general_page/deactivate_account_subpage.rs

@ -1,6 +1,6 @@
use adw::{prelude::*, subclass::prelude::*};
use gettextrs::gettext;
use gtk::{CompositeTemplate, glib, glib::clone};
use gtk::{glib, glib::clone};
use matrix_sdk::authentication::oauth::{AccountManagementActionFull, AccountManagementUrlBuilder};
use tracing::error;
@ -17,7 +17,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(
resource = "/org/gnome/Fractal/ui/session/view/account_settings/general_page/deactivate_account_subpage.ui"
)]
@ -187,7 +187,8 @@ mod imp {
glib::wrapper! {
/// Subpage allowing the user to deactivate their account.
pub struct DeactivateAccountSubpage(ObjectSubclass<imp::DeactivateAccountSubpage>)
@extends gtk::Widget, adw::NavigationPage, @implements gtk::Accessible;
@extends gtk::Widget, adw::NavigationPage,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
impl DeactivateAccountSubpage {

7
src/session/view/account_settings/general_page/log_out_subpage.rs

@ -1,6 +1,6 @@
use adw::{prelude::*, subclass::prelude::*};
use gettextrs::gettext;
use gtk::{CompositeTemplate, glib};
use gtk::glib;
use crate::{
components::LoadingButtonRow,
@ -16,7 +16,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(
resource = "/org/gnome/Fractal/ui/session/view/account_settings/general_page/log_out_subpage.ui"
)]
@ -170,7 +170,8 @@ mod imp {
glib::wrapper! {
/// Subpage allowing a user to log out from their account.
pub struct LogOutSubpage(ObjectSubclass<imp::LogOutSubpage>)
@extends gtk::Widget, adw::NavigationPage, @implements gtk::Accessible;
@extends gtk::Widget, adw::NavigationPage,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
impl LogOutSubpage {

7
src/session/view/account_settings/general_page/mod.rs

@ -1,6 +1,6 @@
use adw::{prelude::*, subclass::prelude::*};
use gettextrs::gettext;
use gtk::{CompositeTemplate, gio, glib, glib::clone};
use gtk::{gio, glib, glib::clone};
use matrix_sdk::authentication::oauth::{AccountManagementActionFull, AccountManagementUrlBuilder};
use ruma::{OwnedMxcUri, api::client::discovery::get_capabilities::v3::Capabilities};
use tracing::error;
@ -29,7 +29,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(
resource = "/org/gnome/Fractal/ui/session/view/account_settings/general_page/mod.ui"
)]
@ -536,7 +536,8 @@ mod imp {
glib::wrapper! {
/// Account settings page about the user and the session.
pub struct GeneralPage(ObjectSubclass<imp::GeneralPage>)
@extends gtk::Widget, adw::PreferencesPage, @implements gtk::Accessible;
@extends gtk::Widget, adw::PreferencesPage,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
impl GeneralPage {

7
src/session/view/account_settings/mod.rs

@ -1,6 +1,6 @@
use adw::{prelude::*, subclass::prelude::*};
use gtk::{
CompositeTemplate, glib,
glib,
glib::{clone, closure_local},
};
use matrix_sdk::authentication::oauth::{
@ -58,7 +58,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/session/view/account_settings/mod.ui")]
#[properties(wrapper_type = super::AccountSettings)]
pub struct AccountSettings {
@ -244,7 +244,8 @@ mod imp {
glib::wrapper! {
/// Preference window to display and update account settings.
pub struct AccountSettings(ObjectSubclass<imp::AccountSettings>)
@extends gtk::Widget, adw::Dialog, adw::PreferencesDialog, @implements gtk::Accessible;
@extends gtk::Widget, adw::Dialog, adw::PreferencesDialog,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget, gtk::ShortcutManager;
}
impl AccountSettings {

7
src/session/view/account_settings/notifications_page.rs

@ -1,6 +1,6 @@
use adw::{prelude::*, subclass::prelude::*};
use gettextrs::gettext;
use gtk::{CompositeTemplate, gio, glib, glib::clone};
use gtk::{gio, glib, glib::clone};
use tracing::error;
use crate::{
@ -18,7 +18,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(
resource = "/org/gnome/Fractal/ui/session/view/account_settings/notifications_page.ui"
)]
@ -453,7 +453,8 @@ mod imp {
glib::wrapper! {
/// Preferences page to edit global notification settings.
pub struct NotificationsPage(ObjectSubclass<imp::NotificationsPage>)
@extends gtk::Widget, adw::PreferencesPage, @implements gtk::Accessible;
@extends gtk::Widget, adw::PreferencesPage,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
impl NotificationsPage {

7
src/session/view/account_settings/safety_page/ignored_users_subpage/ignored_user_row.rs

@ -1,5 +1,5 @@
use gettextrs::gettext;
use gtk::{CompositeTemplate, glib, prelude::*, subclass::prelude::*};
use gtk::{glib, prelude::*, subclass::prelude::*};
use ruma::UserId;
use crate::{components::LoadingButton, session::model::IgnoredUsers, toast};
@ -11,7 +11,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(
resource = "/org/gnome/Fractal/ui/session/view/account_settings/safety_page/ignored_users_subpage/ignored_user_row.ui"
)]
@ -92,7 +92,8 @@ mod imp {
glib::wrapper! {
/// A row presenting an ignored user.
pub struct IgnoredUserRow(ObjectSubclass<imp::IgnoredUserRow>)
@extends gtk::Widget, gtk::Box, @implements gtk::Accessible;
@extends gtk::Widget, gtk::Box,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget, gtk::Orientable;
}
impl IgnoredUserRow {

7
src/session/view/account_settings/safety_page/ignored_users_subpage/mod.rs

@ -1,5 +1,5 @@
use adw::{prelude::*, subclass::prelude::*};
use gtk::{CompositeTemplate, glib, glib::clone};
use gtk::{glib, glib::clone};
use tracing::error;
mod ignored_user_row;
@ -14,7 +14,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(
resource = "/org/gnome/Fractal/ui/session/view/account_settings/safety_page/ignored_users_subpage/mod.ui"
)]
@ -162,7 +162,8 @@ mod imp {
glib::wrapper! {
/// A subpage with the list of ignored users.
pub struct IgnoredUsersSubpage(ObjectSubclass<imp::IgnoredUsersSubpage>)
@extends gtk::Widget, adw::NavigationPage;
@extends gtk::Widget, adw::NavigationPage,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
impl IgnoredUsersSubpage {

7
src/session/view/account_settings/safety_page/mod.rs

@ -1,6 +1,6 @@
use adw::{prelude::*, subclass::prelude::*};
use gettextrs::gettext;
use gtk::{CompositeTemplate, glib, glib::clone};
use gtk::{glib, glib::clone};
use ruma::events::media_preview_config::MediaPreviews;
use tracing::error;
@ -23,7 +23,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/session/view/account_settings/safety_page/mod.ui")]
#[properties(wrapper_type = super::SafetyPage)]
pub struct SafetyPage {
@ -326,7 +326,8 @@ mod imp {
glib::wrapper! {
/// Safety settings page.
pub struct SafetyPage(ObjectSubclass<imp::SafetyPage>)
@extends gtk::Widget, adw::PreferencesPage, @implements gtk::Accessible;
@extends gtk::Widget, adw::PreferencesPage,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
impl SafetyPage {

6
src/session/view/account_settings/user_session/user_session_list_subpage.rs

@ -1,5 +1,5 @@
use adw::{prelude::*, subclass::prelude::*};
use gtk::{CompositeTemplate, gio, glib, glib::clone};
use gtk::{gio, glib, glib::clone};
use tracing::error;
use super::UserSessionRow;
@ -15,7 +15,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(
resource = "/org/gnome/Fractal/ui/session/view/account_settings/user_session/user_session_list_subpage.ui"
)]
@ -235,7 +235,7 @@ glib::wrapper! {
/// Subpage to present the sessions of a user.
pub struct UserSessionListSubpage(ObjectSubclass<imp::UserSessionListSubpage>)
@extends gtk::Widget, adw::NavigationPage,
@implements gtk::Accessible;
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
impl UserSessionListSubpage {

7
src/session/view/account_settings/user_session/user_session_row.rs

@ -1,5 +1,5 @@
use adw::{prelude::*, subclass::prelude::*};
use gtk::{CompositeTemplate, glib};
use gtk::glib;
use crate::{session::model::UserSession, utils::TemplateCallbacks};
@ -10,7 +10,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(
resource = "/org/gnome/Fractal/ui/session/view/account_settings/user_session/user_session_row.ui"
)]
@ -60,7 +60,8 @@ mod imp {
glib::wrapper! {
/// A row presenting a user session.
pub struct UserSessionRow(ObjectSubclass<imp::UserSessionRow>)
@extends gtk::Widget, gtk::ListBoxRow, @implements gtk::Accessible;
@extends gtk::Widget, gtk::ListBoxRow,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget, gtk::Actionable;
}
impl UserSessionRow {

7
src/session/view/account_settings/user_session/user_session_subpage.rs

@ -1,6 +1,6 @@
use adw::{prelude::*, subclass::prelude::*};
use gettextrs::gettext;
use gtk::{CompositeTemplate, glib, glib::clone};
use gtk::{glib, glib::clone};
use matrix_sdk::authentication::oauth::{AccountManagementActionFull, AccountManagementUrlBuilder};
use tracing::error;
@ -18,7 +18,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(
resource = "/org/gnome/Fractal/ui/session/view/account_settings/user_session/user_session_subpage.ui"
)]
@ -280,7 +280,8 @@ mod imp {
glib::wrapper! {
/// Account settings subpage about a user session.
pub struct UserSessionSubpage(ObjectSubclass<imp::UserSessionSubpage>)
@extends gtk::Widget, adw::NavigationPage, @implements gtk::Accessible;
@extends gtk::Widget, adw::NavigationPage,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
impl UserSessionSubpage {

7
src/session/view/content/explore/mod.rs

@ -1,5 +1,5 @@
use adw::{prelude::*, subclass::prelude::*};
use gtk::{CompositeTemplate, gio, glib, glib::clone};
use gtk::{gio, glib, glib::clone};
use tracing::error;
mod public_room_row;
@ -28,7 +28,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/session/view/content/explore/mod.ui")]
#[properties(wrapper_type = super::Explore)]
pub struct Explore {
@ -309,7 +309,8 @@ mod imp {
glib::wrapper! {
/// A view to explore rooms in the public directory of homeservers.
pub struct Explore(ObjectSubclass<imp::Explore>)
@extends gtk::Widget, adw::BreakpointBin, @implements gtk::Accessible;
@extends gtk::Widget, adw::BreakpointBin,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
impl Explore {

7
src/session/view/content/explore/public_room_row.rs

@ -1,6 +1,6 @@
use adw::{prelude::*, subclass::prelude::*};
use gettextrs::gettext;
use gtk::{CompositeTemplate, glib, glib::clone};
use gtk::{glib, glib::clone};
use crate::{
Window,
@ -19,7 +19,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/session/view/content/explore/public_room_row.ui")]
#[properties(wrapper_type = super::PublicRoomRow)]
pub struct PublicRoomRow {
@ -257,7 +257,8 @@ mod imp {
glib::wrapper! {
/// A row representing a room in a homeserver's public directory.
pub struct PublicRoomRow(ObjectSubclass<imp::PublicRoomRow>)
@extends gtk::Widget, adw::Bin, @implements gtk::Accessible;
@extends gtk::Widget, adw::Bin,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
impl PublicRoomRow {

7
src/session/view/content/explore/server_row.rs

@ -1,4 +1,4 @@
use gtk::{CompositeTemplate, glib, prelude::*, subclass::prelude::*};
use gtk::{glib, prelude::*, subclass::prelude::*};
use super::ExploreServer;
use crate::utils::TemplateCallbacks;
@ -10,7 +10,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/session/view/content/explore/server_row.ui")]
#[properties(wrapper_type = super::ExploreServerRow)]
pub struct ExploreServerRow {
@ -60,7 +60,8 @@ mod imp {
glib::wrapper! {
/// A row representing a server to explore.
pub struct ExploreServerRow(ObjectSubclass<imp::ExploreServerRow>)
@extends gtk::Widget, gtk::ListBoxRow, @implements gtk::Accessible;
@extends gtk::Widget, gtk::ListBoxRow,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget, gtk::Actionable;
}
impl ExploreServerRow {

7
src/session/view/content/explore/servers_popover.rs

@ -1,5 +1,5 @@
use adw::{prelude::*, subclass::prelude::*};
use gtk::{CompositeTemplate, glib};
use gtk::glib;
use ruma::ServerName;
use tracing::error;
@ -13,7 +13,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/session/view/content/explore/servers_popover.ui")]
#[properties(wrapper_type = super::ExploreServersPopover)]
pub struct ExploreServersPopover {
@ -187,7 +187,8 @@ mod imp {
glib::wrapper! {
/// A popover that lists the servers that can be explored.
pub struct ExploreServersPopover(ObjectSubclass<imp::ExploreServersPopover>)
@extends gtk::Widget, gtk::Popover, @implements gtk::Accessible;
@extends gtk::Widget, gtk::Popover,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget, gtk::Native, gtk::ShortcutManager;
}
impl ExploreServersPopover {

9
src/session/view/content/invite.rs

@ -1,6 +1,6 @@
use adw::subclass::prelude::*;
use adw::{prelude::*, subclass::prelude::*};
use gettextrs::gettext;
use gtk::{CompositeTemplate, glib, glib::clone, prelude::*};
use gtk::{glib, glib::clone};
use crate::{
components::{
@ -21,7 +21,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/session/view/content/invite.ui")]
#[properties(wrapper_type = super::Invite)]
pub struct Invite {
@ -309,7 +309,8 @@ mod imp {
glib::wrapper! {
/// A view presenting an invitation to a room.
pub struct Invite(ObjectSubclass<imp::Invite>)
@extends gtk::Widget, adw::Bin, @implements gtk::Accessible;
@extends gtk::Widget, adw::Bin,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
impl Invite {

9
src/session/view/content/invite_request.rs

@ -1,6 +1,6 @@
use adw::subclass::prelude::*;
use adw::{prelude::*, subclass::prelude::*};
use gettextrs::gettext;
use gtk::{CompositeTemplate, glib, glib::clone, prelude::*};
use gtk::{glib, glib::clone};
use crate::{
components::{Avatar, LoadingButton},
@ -16,7 +16,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/session/view/content/invite_request.ui")]
#[properties(wrapper_type = super::InviteRequest)]
pub struct InviteRequest {
@ -185,7 +185,8 @@ mod imp {
glib::wrapper! {
/// A view presenting an invitate request to a room.
pub struct InviteRequest(ObjectSubclass<imp::InviteRequest>)
@extends gtk::Widget, adw::Bin, @implements gtk::Accessible;
@extends gtk::Widget, adw::Bin,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
impl InviteRequest {

9
src/session/view/content/mod.rs

@ -1,5 +1,5 @@
use adw::subclass::prelude::*;
use gtk::{CompositeTemplate, glib, glib::clone, prelude::*};
use adw::{prelude::*, subclass::prelude::*};
use gtk::{glib, glib::clone};
mod explore;
mod invite;
@ -44,7 +44,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(resource = "/org/gnome/Fractal/ui/session/view/content/mod.ui")]
#[properties(wrapper_type = super::Content)]
pub struct Content {
@ -278,7 +278,8 @@ mod imp {
glib::wrapper! {
/// A view displaying the selected content in the sidebar.
pub struct Content(ObjectSubclass<imp::Content>)
@extends gtk::Widget, adw::NavigationPage, @implements gtk::Accessible;
@extends gtk::Widget, adw::NavigationPage,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
impl Content {

7
src/session/view/content/room_details/addresses_subpage/completion_popover.rs

@ -1,5 +1,5 @@
use adw::{prelude::*, subclass::prelude::*};
use gtk::{CompositeTemplate, gdk, gio, glib, glib::clone, pango};
use gtk::{gdk, gio, glib, glib::clone, pango};
use tracing::error;
use crate::utils::BoundObjectWeakRef;
@ -11,7 +11,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(
resource = "/org/gnome/Fractal/ui/session/view/content/room_details/addresses_subpage/completion_popover.ui"
)]
@ -370,7 +370,8 @@ mod imp {
glib::wrapper! {
/// A popover to auto-complete strings for a `gtk::Editable`.
pub struct CompletionPopover(ObjectSubclass<imp::CompletionPopover>)
@extends gtk::Widget, gtk::Popover, @implements gtk::Accessible;
@extends gtk::Widget, gtk::Popover,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget, gtk::Native, gtk::ShortcutManager;
}
impl CompletionPopover {

7
src/session/view/content/room_details/addresses_subpage/mod.rs

@ -1,6 +1,6 @@
use adw::{prelude::*, subclass::prelude::*};
use gettextrs::gettext;
use gtk::{CompositeTemplate, gio, glib, glib::clone, pango};
use gtk::{gio, glib, glib::clone, pango};
use ruma::RoomAliasId;
use tracing::error;
@ -27,7 +27,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(
resource = "/org/gnome/Fractal/ui/session/view/content/room_details/addresses_subpage/mod.ui"
)]
@ -794,7 +794,8 @@ mod imp {
glib::wrapper! {
/// Subpage to manage the public addresses of a room.
pub struct AddressesSubpage(ObjectSubclass<imp::AddressesSubpage>)
@extends gtk::Widget, gtk::Window, adw::NavigationPage, @implements gtk::Accessible;
@extends gtk::Widget, adw::NavigationPage,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
impl AddressesSubpage {

7
src/session/view/content/room_details/edit_details_subpage.rs

@ -1,6 +1,6 @@
use adw::{prelude::*, subclass::prelude::*};
use gettextrs::gettext;
use gtk::{CompositeTemplate, gio, glib, glib::clone};
use gtk::{gio, glib, glib::clone};
use matrix_sdk::RoomState;
use ruma::{OwnedMxcUri, assign, events::room::avatar::ImageInfo};
use tracing::error;
@ -26,7 +26,7 @@ mod imp {
use super::*;
#[derive(Debug, Default, CompositeTemplate, glib::Properties)]
#[derive(Debug, Default, gtk::CompositeTemplate, glib::Properties)]
#[template(
resource = "/org/gnome/Fractal/ui/session/view/content/room_details/edit_details_subpage.ui"
)]
@ -565,7 +565,8 @@ mod imp {
glib::wrapper! {
/// Subpage to edit the room main details (avatar, name and topic).
pub struct EditDetailsSubpage(ObjectSubclass<imp::EditDetailsSubpage>)
@extends gtk::Widget, adw::NavigationPage, @implements gtk::Accessible;
@extends gtk::Widget, adw::NavigationPage,
@implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget;
}
impl EditDetailsSubpage {

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save