pub struct FocusRequest {
pub target: FocusTarget,
pub highlight: bool,
pub force_window_focus: bool,
pub window_indicator: Option<FocusIndicator>,
}
Expand description
Focus change request.
See FOCUS
for details.
Fields§
§target: FocusTarget
Where to move the focus.
highlight: bool
If the widget should visually indicate that it has keyboard focus.
force_window_focus: bool
If the window should be focused even if another app has focus. By default the window
is only focused if the app has keyboard focus in any of the open windows, if this is enabled
a WINDOWS.focus
request is always made, potentially stealing keyboard focus from another app
and disrupting the user.
window_indicator: Option<FocusIndicator>
Focus indicator to set on the target window if the app does not have keyboard focus and
force_window_focus
is disabled.
The focus_indicator
of the window is set and the request is processed after the window receives focus,
or it is canceled if another focus request is made.
Implementations§
source§impl FocusRequest
impl FocusRequest
sourcepub fn new(target: FocusTarget, highlight: bool) -> Self
pub fn new(target: FocusTarget, highlight: bool) -> Self
New request from target and highlight.
sourcepub fn direct(widget_id: WidgetId, highlight: bool) -> Self
pub fn direct(widget_id: WidgetId, highlight: bool) -> Self
New FocusTarget::Direct
request.
sourcepub fn direct_or_exit(
widget_id: WidgetId,
navigation_origin: bool,
highlight: bool,
) -> Self
pub fn direct_or_exit( widget_id: WidgetId, navigation_origin: bool, highlight: bool, ) -> Self
New FocusTarget::DirectOrExit
request.
sourcepub fn direct_or_enter(
widget_id: WidgetId,
navigation_origin: bool,
highlight: bool,
) -> Self
pub fn direct_or_enter( widget_id: WidgetId, navigation_origin: bool, highlight: bool, ) -> Self
New FocusTarget::DirectOrEnter
request.
New FocusTarget::DirectOrRelated
request.
sourcepub fn enter(highlight: bool) -> Self
pub fn enter(highlight: bool) -> Self
New FocusTarget::Enter
request.
sourcepub fn exit(highlight: bool) -> Self
pub fn exit(highlight: bool) -> Self
New FocusTarget::Exit
request.
sourcepub fn next(highlight: bool) -> Self
pub fn next(highlight: bool) -> Self
New FocusTarget::Next
request.
sourcepub fn prev(highlight: bool) -> Self
pub fn prev(highlight: bool) -> Self
New FocusTarget::Prev
request.
sourcepub fn up(highlight: bool) -> Self
pub fn up(highlight: bool) -> Self
New FocusTarget::Up
request.
sourcepub fn right(highlight: bool) -> Self
pub fn right(highlight: bool) -> Self
New FocusTarget::Right
request.
sourcepub fn down(highlight: bool) -> Self
pub fn down(highlight: bool) -> Self
New FocusTarget::Down
request.
sourcepub fn left(highlight: bool) -> Self
pub fn left(highlight: bool) -> Self
New FocusTarget::Left
request.
sourcepub fn alt(highlight: bool) -> Self
pub fn alt(highlight: bool) -> Self
New FocusTarget::Alt
request.
sourcepub fn with_force_window_focus(self) -> Self
pub fn with_force_window_focus(self) -> Self
Sets FocusRequest::force_window_focus
to true
.
sourcepub fn with_indicator(self, indicator: FocusIndicator) -> Self
pub fn with_indicator(self, indicator: FocusIndicator) -> Self
Sets the FocusRequest::window_indicator
.
Trait Implementations§
source§impl Clone for FocusRequest
impl Clone for FocusRequest
source§fn clone(&self) -> FocusRequest
fn clone(&self) -> FocusRequest
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for FocusRequest
impl Debug for FocusRequest
source§impl<'de> Deserialize<'de> for FocusRequest
impl<'de> Deserialize<'de> for FocusRequest
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
source§impl PartialEq for FocusRequest
impl PartialEq for FocusRequest
source§impl Serialize for FocusRequest
impl Serialize for FocusRequest
impl Copy for FocusRequest
impl Eq for FocusRequest
impl StructuralPartialEq for FocusRequest
Auto Trait Implementations§
impl Freeze for FocusRequest
impl RefUnwindSafe for FocusRequest
impl Send for FocusRequest
impl Sync for FocusRequest
impl Unpin for FocusRequest
impl UnwindSafe for FocusRequest
Blanket Implementations§
source§impl<T> AnyVarValue for Twhere
T: VarValue,
impl<T> AnyVarValue for Twhere
T: VarValue,
source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
dyn Any
methods.source§fn clone_boxed(&self) -> Box<dyn AnyVarValue>
fn clone_boxed(&self) -> Box<dyn AnyVarValue>
source§fn clone_boxed_var(&self) -> Box<dyn AnyVar>
fn clone_boxed_var(&self) -> Box<dyn AnyVar>
LocalVar<Self>
.source§fn eq_any(&self, other: &(dyn AnyVarValue + 'static)) -> bool
fn eq_any(&self, other: &(dyn AnyVarValue + 'static)) -> bool
self
equals other
.source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key
and return true
if they are equal.§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
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 moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
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