fractal::components::dialogs::auth::imp

Struct AuthDialog

Source
pub struct AuthDialog {
    password: TemplateChild<PasswordEntry>,
    open_browser_btn: TemplateChild<Button>,
    open_browser_btn_handler: RefCell<Option<SignalHandlerId>>,
    error: TemplateChild<Label>,
    session: WeakRef<Session>,
    parent: WeakRef<Widget>,
    sender: RefCell<Option<Sender<String>>>,
}

Fields§

§password: TemplateChild<PasswordEntry>§open_browser_btn: TemplateChild<Button>§open_browser_btn_handler: RefCell<Option<SignalHandlerId>>§error: TemplateChild<Label>§session: WeakRef<Session>

The parent session.

§parent: WeakRef<Widget>

The parent widget.

§sender: RefCell<Option<Sender<String>>>

The sender for the response.

Implementations§

Source§

impl AuthDialog

Source

fn register_type()

Registers the type only once.

Source§

impl AuthDialog

Source

pub fn downgrade(&self) -> <Self as Downgrade>::Weak

Source§

impl AuthDialog

Source

pub(super) async fn authenticate<Response: Send + 'static, F1: Future<Output = Result<Response, Error>> + Send + 'static, FN: Fn(Client, Option<AuthData>) -> F1 + Send + 'static + Sync + Clone>( &self, parent: &Widget, callback: FN, ) -> Result<Response, AuthError>

Authenticate the user to the server via an interactive authentication flow.

The type of flow and the required stages are negotiated during the authentication. Returns the last server response on success.

Source

pub(super) async fn reset_cross_signing( &self, parent: &Widget, ) -> Result<(), AuthError>

Reset the cross-signing keys while handling the interactive authentication flow.

The type of flow and the required stages are negotiated during the authentication. Returns the last server response on success.

Source

async fn perform_next_stage( &self, uiaa_info: &UiaaInfo, ) -> Result<AuthData, AuthError>

Performs the preferred next stage in the given UIAA info.

Stages that are actually supported are preferred. If no stages are supported, we use the web-based fallback.

Source

async fn try_perform_stage( &self, uiaa_session: Option<&String>, stage: &AuthType, ) -> Option<Result<AuthData, AuthError>>

Tries to perform the given stage.

Returns None if the stage is not implemented.

Source

async fn perform_password_stage( &self, uiaa_session: Option<String>, ) -> Result<AuthData, AuthError>

Performs the password stage.

Source

fn perform_dummy_stage(uiaa_session: Option<String>) -> AuthData

Performs the dummy stage.

Source

async fn perform_fallback( &self, uiaa_session: Option<String>, stage: &AuthType, ) -> Result<AuthData, AuthError>

Performs a web-based fallback for the given stage.

Source

async fn show_and_wait_for_response(&self) -> Result<(), AuthError>

Let the user complete the current stage.

Source

fn show_auth_error(&self, auth_error: Option<&StandardErrorBody>)

Show the given error.

Source

fn set_up_fallback(&self, homeserver: &str, auth_type: &str, uiaa_session: &str)

Prepare the button to open the web-based fallback with the given settings.

Source

fn update_confirm(&self)

Update the confirm response for the current state.

Trait Implementations§

Source§

impl AdwAlertDialogImpl for AuthDialog

Source§

fn response(&self, response: &str)

Source§

impl AdwDialogImpl for AuthDialog

Source§

impl CompositeTemplate for AuthDialog

Source§

impl CompositeTemplateCallbacks for AuthDialog

Source§

const CALLBACKS: &'static [TemplateCallback]

Source§

fn bind_template_callbacks<T>(klass: &mut T)
where T: WidgetClassExt,

Binds the template callbacks from this type into the default template scope for klass.
Source§

fn bind_template_callbacks_prefixed<T>(klass: &mut T, prefix: &str)
where T: WidgetClassExt,

Binds the template callbacks from this type into the default template scope for klass, prepending prefix to each callback name.
Source§

fn add_callbacks_to_scope(scope: &BuilderRustScope)

Binds the template callbacks from this type into scope.
Source§

fn add_callbacks_to_scope_prefixed(scope: &BuilderRustScope, prefix: &str)

Binds the template callbacks from this type into scope, prepending prefix to each callback name.
Source§

impl Debug for AuthDialog

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for AuthDialog

Source§

fn default() -> AuthDialog

Returns the “default value” for a type. Read more
Source§

impl DerivedObjectProperties for AuthDialog

Source§

fn derived_properties() -> &'static [ParamSpec]

Properties installed for this type.
Source§

fn derived_property(&self, id: usize, pspec: &ParamSpec) -> Value

Similar to ObjectImpl but auto-generated by the Properties macro to allow handling more complex use-cases.
Source§

fn derived_set_property(&self, id: usize, value: &Value, pspec: &ParamSpec)

Similar to ObjectImpl but auto-generated by the Properties macro to allow handling more complex use-cases.
Source§

impl ObjectImpl for AuthDialog

Source§

fn properties() -> &'static [ParamSpec]

Properties installed for this type.
Source§

fn set_property(&self, id: usize, value: &Value, pspec: &ParamSpec)

Property setter. Read more
Source§

fn property(&self, id: usize, pspec: &ParamSpec) -> Value

Property getter. Read more
Source§

fn signals() -> &'static [Signal]

Signals installed for this type.
Source§

fn constructed(&self)

Constructed. Read more
Source§

fn dispose(&self)

Disposes of the object. Read more
Source§

fn notify(&self, pspec: &ParamSpec)

Function to be called when property change is notified for with self.notify("property").
Source§

fn dispatch_properties_changed(&self, pspecs: &[ParamSpec])

Source§

impl ObjectSubclass for AuthDialog

Source§

const NAME: &'static str = "AuthDialog"

GObject type name. Read more
Source§

type Interfaces = ()

List of interfaces implemented by this type.
Source§

type Class = ClassStruct<AuthDialog>

The C class struct. Read more
Source§

type Instance = InstanceStruct<AuthDialog>

The C instance struct. Read more
Source§

type Type = AuthDialog

Wrapper around this subclass defined with wrapper!
Source§

type ParentType = AlertDialog

Parent Rust type to inherit from.
Source§

fn new() -> Self

Constructor. Read more
Source§

fn class_init(klass: &mut Self::Class)

Class initialization. Read more
Source§

fn instance_init(obj: &InitializingObject<Self>)

Performs additional instance initialization. Read more
Source§

const ABSTRACT: bool = false

If this subclass is an abstract class or not. Read more
Source§

const ALLOW_NAME_CONFLICT: bool = false

Allow name conflicts for this class. Read more
Source§

fn type_init(_type_: &mut InitializingType<Self>)

Additional type initialization. Read more
Source§

fn with_class(_klass: &Self::Class) -> Self

Constructor. Read more
Source§

impl ObjectSubclassType for AuthDialog

Source§

fn type_data() -> NonNull<TypeData>

Storage for the type-specific data used during registration.
Source§

fn type_() -> Type

Returns the glib::Type ID of the subclass. Read more
Source§

impl WidgetImpl for AuthDialog

Source§

fn compute_expand(&self, hexpand: &mut bool, vexpand: &mut bool)

Source§

fn contains(&self, x: f64, y: f64) -> bool

Source§

fn direction_changed(&self, previous_direction: TextDirection)

Source§

fn focus(&self, direction_type: DirectionType) -> bool

Source§

fn request_mode(&self) -> SizeRequestMode

Source§

fn grab_focus(&self) -> bool

Source§

fn hide(&self)

👎Deprecated: Since 4.10
Source§

fn keynav_failed(&self, direction_type: DirectionType) -> bool

Source§

fn map(&self)

Source§

fn measure( &self, orientation: Orientation, for_size: i32, ) -> (i32, i32, i32, i32)

Source§

fn mnemonic_activate(&self, group_cycling: bool) -> bool

Source§

fn move_focus(&self, direction_type: DirectionType)

Source§

fn query_tooltip( &self, x: i32, y: i32, keyboard_tooltip: bool, tooltip: &Tooltip, ) -> bool

Source§

fn realize(&self)

Source§

fn root(&self)

Source§

fn set_focus_child(&self, child: Option<&Widget>)

Source§

fn show(&self)

👎Deprecated: Since 4.10
Source§

fn size_allocate(&self, width: i32, height: i32, baseline: i32)

Source§

fn snapshot(&self, snapshot: &Snapshot)

Source§

fn state_flags_changed(&self, state_flags: &StateFlags)

Source§

fn system_setting_changed(&self, settings: &SystemSetting)

Source§

fn unmap(&self)

Source§

fn unrealize(&self)

Source§

fn unroot(&self)

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> AdwAlertDialogImplExt for T

Source§

fn parent_response(&self, response: &str)

Source§

impl<T> AdwDialogImplExt for T
where T: AdwDialogImpl,

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CompositeTemplateDisposeExt for T

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, W> HasTypeWitness<W> for T
where W: MakeTypeWitness<Arg = T>, T: ?Sized,

Source§

const WITNESS: W = W::MAKE

A constant of the type witness
Source§

impl<T> Identity for T
where T: ?Sized,

Source§

const TYPE_EQ: TypeEq<T, <T as Identity>::Type> = TypeEq::NEW

Proof that Self is the same type as Self::Type, provides methods for casting between Self and Self::Type.
Source§

type Type = T

The same type as Self, used to emulate type equality bounds (T == U) with associated type equality constraints (T: Identity<Type = U>).
Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

impl<T> NoneValue for T
where T: Default,

Source§

type NoneType = T

Source§

fn null_value() -> T

The none-equivalent value.
Source§

impl<T> NoneValue for T
where T: Default,

Source§

type NoneType = T

Source§

fn null_value() -> T

The none-equivalent value.
Source§

impl<T> ObjectImplExt for T
where T: ObjectImpl,

Source§

fn parent_constructed(&self)

Chain up to the parent class’ implementation of glib::Object::constructed().
Source§

fn parent_notify(&self, pspec: &ParamSpec)

Chain up to the parent class’ implementation of glib::Object::notify().
Source§

fn parent_dispatch_properties_changed(&self, pspecs: &[ParamSpec])

Chain up to the parent class’ implementation of glib::Object::dispatch_properties_changed().
Source§

fn signal_chain_from_overridden( &self, token: &SignalClassHandlerToken, values: &[Value], ) -> Option<Value>

Chain up to parent class signal handler.
Source§

impl<T> ObjectSubclassExt for T
where T: ObjectSubclass,

Source§

fn instance(&self) -> BorrowedObject<'_, <T as ObjectSubclass>::Type>

👎Deprecated: Use obj() instead
Returns the corresponding object instance.
Source§

fn from_instance(obj: &<T as ObjectSubclass>::Type) -> &T

👎Deprecated: Use from_obj() instead
Returns the implementation from an instance.
Source§

fn obj(&self) -> BorrowedObject<'_, <T as ObjectSubclass>::Type>

Returns the corresponding object instance. Read more
Source§

fn from_obj(obj: &<T as ObjectSubclass>::Type) -> &T

Returns the implementation from an instance. Read more
Source§

fn ref_counted(&self) -> ObjectImplRef<T>

Returns a new reference-counted wrapper around self.
Source§

fn instance_data<U>(&self, type_: Type) -> Option<&U>
where U: Any + Send + Sync + 'static,

Returns a pointer to the instance implementation specific data. Read more
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WidgetImplExt for T
where T: WidgetImpl,

Source§

fn parent_compute_expand(&self, hexpand: &mut bool, vexpand: &mut bool)

Source§

fn parent_contains(&self, x: f64, y: f64) -> bool

Source§

fn parent_direction_changed(&self, previous_direction: TextDirection)

Source§

fn parent_focus(&self, direction_type: DirectionType) -> bool

Source§

fn parent_request_mode(&self) -> SizeRequestMode

Source§

fn parent_grab_focus(&self) -> bool

Source§

fn parent_hide(&self)

👎Deprecated: Since 4.10
Source§

fn parent_keynav_failed(&self, direction_type: DirectionType) -> bool

Source§

fn parent_map(&self)

Source§

fn parent_measure( &self, orientation: Orientation, for_size: i32, ) -> (i32, i32, i32, i32)

Source§

fn parent_mnemonic_activate(&self, group_cycling: bool) -> bool

Source§

fn parent_move_focus(&self, direction_type: DirectionType)

Source§

fn parent_query_tooltip( &self, x: i32, y: i32, keyboard_tooltip: bool, tooltip: &Tooltip, ) -> bool

Source§

fn parent_realize(&self)

Source§

fn parent_root(&self)

Source§

fn parent_set_focus_child(&self, child: Option<&Widget>)

Source§

fn parent_show(&self)

👎Deprecated: Since 4.10
Source§

fn parent_size_allocate(&self, width: i32, height: i32, baseline: i32)

Source§

fn parent_snapshot(&self, snapshot: &Snapshot)

Source§

fn parent_state_flags_changed(&self, state_flags: &StateFlags)

Source§

fn parent_system_setting_changed(&self, settings: &SystemSetting)

Source§

fn parent_unmap(&self)

Source§

fn parent_unrealize(&self)

Source§

fn parent_unroot(&self)

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<T> Any for T
where T: Any,

Source§

impl<T> ErasedDestructor for T
where T: 'static,

Source§

impl<A, B, T> HttpServerConnExec<A, B> for T
where B: Body,

Source§

impl<T> MaybeSendSync for T