Struct android_activity::WindowManagerFlags
source · pub struct WindowManagerFlags(/* private fields */);
Expand description
Flags for AndroidApp::set_window_flags
as per the android.view.WindowManager.LayoutParams Java API
Implementations§
source§impl WindowManagerFlags
impl WindowManagerFlags
sourcepub const ALLOW_LOCK_WHILE_SCREEN_ON: Self = _
pub const ALLOW_LOCK_WHILE_SCREEN_ON: Self = _
As long as this window is visible to the user, allow the lock
screen to activate while the screen is on. This can be used
independently, or in combination with
Self::KEEP_SCREEN_ON
and/or Self::SHOW_WHEN_LOCKED
sourcepub const DIM_BEHIND: Self = _
pub const DIM_BEHIND: Self = _
Everything behind this window will be dimmed. */
sourcepub const BLUR_BEHIND: Self = _
👎Deprecated: Blurring is no longer supported
pub const BLUR_BEHIND: Self = _
Blur everything behind this window.
sourcepub const NOT_FOCUSABLE: Self = _
pub const NOT_FOCUSABLE: Self = _
This window won’t ever get key input focus, so the
user can not send key or other button events to it. Those will
instead go to whatever focusable window is behind it. This flag
will also enable Self::NOT_TOUCH_MODAL
whether or not
that is explicitly set.
Setting this flag also implies that the window will not need to
interact with
a soft input method, so it will be Z-ordered and positioned
independently of any active input method (typically this means it
gets Z-ordered on top of the input method, so it can use the full
screen for its content and cover the input method if needed. You
can use Self::ALT_FOCUSABLE_IM
to modify this
behavior.
sourcepub const NOT_TOUCHABLE: Self = _
pub const NOT_TOUCHABLE: Self = _
This window can never receive touch events.
sourcepub const NOT_TOUCH_MODAL: Self = _
pub const NOT_TOUCH_MODAL: Self = _
Even when this window is focusable (if
Self::NOT_FOCUSABLE
is not set), allow any pointer
events outside of the window to be sent to the windows behind it.
Otherwise it will consume all pointer events itself, regardless of
whether they are inside of the window.
sourcepub const TOUCHABLE_WHEN_WAKING: Self = _
👎Deprecated
pub const TOUCHABLE_WHEN_WAKING: Self = _
When set, if the device is asleep when the touch screen is pressed, you will receive this first touch event. Usually the first touch event is consumed by the system since the user can not see what they are pressing on.
sourcepub const KEEP_SCREEN_ON: Self = _
pub const KEEP_SCREEN_ON: Self = _
As long as this window is visible to the user, keep the device’s screen turned on and bright.
sourcepub const LAYOUT_IN_SCREEN: Self = _
pub const LAYOUT_IN_SCREEN: Self = _
Place the window within the entire screen, ignoring decorations around the border (such as the status bar). The window must correctly position its contents to take the screen decoration into account.
sourcepub const LAYOUT_NO_LIMITS: Self = _
pub const LAYOUT_NO_LIMITS: Self = _
Allows the window to extend outside of the screen.
sourcepub const FULLSCREEN: Self = _
pub const FULLSCREEN: Self = _
Hide all screen decorations (such as the status
bar) while this window is displayed. This allows the window to
use the entire display space for itself – the status bar will
be hidden when an app window with this flag set is on the top
layer. A fullscreen window will ignore a value of
[Self::SOFT_INPUT_ADJUST_RESIZE
] the window will stay
fullscreen and will not resize.
sourcepub const FORCE_NOT_FULLSCREEN: Self = _
pub const FORCE_NOT_FULLSCREEN: Self = _
Override Self::FULLSCREEN
and force the
screen decorations (such as the status bar) to be shown.
sourcepub const DITHER: Self = _
👎Deprecated: This flag is no longer used
pub const DITHER: Self = _
Turn on dithering when compositing this window to the screen.
sourcepub const SECURE: Self = _
pub const SECURE: Self = _
Treat the content of the window as secure, preventing it from appearing in screenshots or from being viewed on non-secure displays.
sourcepub const SCALED: Self = _
pub const SCALED: Self = _
A special mode where the layout parameters are used to perform scaling of the surface when it is composited to the screen.
sourcepub const IGNORE_CHEEK_PRESSES: Self = _
pub const IGNORE_CHEEK_PRESSES: Self = _
Intended for windows that will often be used when the user is
holding the screen against their face, it will aggressively
filter the event stream to prevent unintended presses in this
situation that may not be desired for a particular window, when
such an event stream is detected, the application will receive
a AMOTION_EVENT_ACTION_CANCEL
to indicate this so
applications can handle this accordingly by taking no action on
the event until the finger is released.
sourcepub const LAYOUT_INSET_DECOR: Self = _
pub const LAYOUT_INSET_DECOR: Self = _
A special option only for use in combination with
Self::LAYOUT_IN_SCREEN
. When requesting layout in
the screen your window may appear on top of or behind screen decorations
such as the status bar. By also including this flag, the window
manager will report the inset rectangle needed to ensure your
content is not covered by screen decorations.
sourcepub const ALT_FOCUSABLE_IM: Self = _
pub const ALT_FOCUSABLE_IM: Self = _
Invert the state of Self::NOT_FOCUSABLE
with
respect to how this window interacts with the current method.
That is, if Self::NOT_FOCUSABLE
is set and this flag is set,
then the window will behave as if it needs to interact with the
input method and thus be placed behind/away from it; if
Self::NOT_FOCUSABLE
is not set and this flag is set,
then the window will behave as if it doesn’t need to interact
with the input method and can be placed to use more space and
cover the input method.
sourcepub const WATCH_OUTSIDE_TOUCH: Self = _
pub const WATCH_OUTSIDE_TOUCH: Self = _
If you have set Self::NOT_TOUCH_MODAL
, you
can set this flag to receive a single special MotionEvent with
the action
AMOTION_EVENT_ACTION_OUTSIDE
for
touches that occur outside of your window. Note that you will not
receive the full down/move/up gesture, only the location of the
first down as an AMOTION_EVENT_ACTION_OUTSIDE
.
sourcepub const SHOW_WHEN_LOCKED: Self = _
pub const SHOW_WHEN_LOCKED: Self = _
Special flag to let windows be shown when the screen
is locked. This will let application windows take precedence over
key guard or any other lock screens. Can be used with
Self::KEEP_SCREEN_ON
to turn screen on and display
windows directly before showing the key guard window. Can be used with
Self::DISMISS_KEYGUARD
to automatically fully
dismiss non-secure key guards. This flag only applies to the top-most
full-screen window.
sourcepub const SHOW_WALLPAPER: Self = _
pub const SHOW_WALLPAPER: Self = _
Ask that the system wallpaper be shown behind your window. The window surface must be translucent to be able to actually see the wallpaper behind it; this flag just ensures that the wallpaper surface will be there if this window actually has translucent regions.
sourcepub const TURN_SCREEN_ON: Self = _
pub const TURN_SCREEN_ON: Self = _
When set as a window is being added or made visible, once the window has been shown then the system will poke the power manager’s user activity (as if the user had woken up the device) to turn the screen on.
sourcepub const DISMISS_KEYGUARD: Self = _
pub const DISMISS_KEYGUARD: Self = _
When set the window will cause the key guard to
be dismissed, only if it is not a secure lock key guard. Because such
a key guard is not needed for security, it will never re-appear if
the user navigates to another window (in contrast to
Self::SHOW_WHEN_LOCKED
, which will only temporarily
hide both secure and non-secure key guards but ensure they reappear
when the user moves to another UI that doesn’t hide them).
If the key guard is currently active and is secure (requires an
unlock pattern) then the user will still need to confirm it before
seeing this window, unless Self::SHOW_WHEN_LOCKED
has
also been set.
source§impl WindowManagerFlags
impl WindowManagerFlags
sourcepub const fn bits(&self) -> u32
pub const fn bits(&self) -> u32
Get the underlying bits value.
The returned value is exactly the bits set in this flags value.
sourcepub const fn from_bits(bits: u32) -> Option<Self>
pub const fn from_bits(bits: u32) -> Option<Self>
Convert from a bits value.
This method will return None
if any unknown bits are set.
sourcepub const fn from_bits_truncate(bits: u32) -> Self
pub const fn from_bits_truncate(bits: u32) -> Self
Convert from a bits value, unsetting any unknown bits.
sourcepub const fn from_bits_retain(bits: u32) -> Self
pub const fn from_bits_retain(bits: u32) -> Self
Convert from a bits value exactly.
sourcepub fn from_name(name: &str) -> Option<Self>
pub fn from_name(name: &str) -> Option<Self>
Get a flags value with the bits of a flag with the given name set.
This method will return None
if name
is empty or doesn’t
correspond to any named flag.
sourcepub const fn intersects(&self, other: Self) -> bool
pub const fn intersects(&self, other: Self) -> bool
Whether any set bits in a source flags value are also set in a target flags value.
sourcepub const fn contains(&self, other: Self) -> bool
pub const fn contains(&self, other: Self) -> bool
Whether all set bits in a source flags value are also set in a target flags value.
sourcepub fn remove(&mut self, other: Self)
pub fn remove(&mut self, other: Self)
The intersection of a source flags value with the complement of a target flags value (&!
).
This method is not equivalent to self & !other
when other
has unknown bits set.
remove
won’t truncate other
, but the !
operator will.
sourcepub fn toggle(&mut self, other: Self)
pub fn toggle(&mut self, other: Self)
The bitwise exclusive-or (^
) of the bits in two flags values.
sourcepub fn set(&mut self, other: Self, value: bool)
pub fn set(&mut self, other: Self, value: bool)
Call insert
when value
is true
or remove
when value
is false
.
sourcepub const fn intersection(self, other: Self) -> Self
pub const fn intersection(self, other: Self) -> Self
The bitwise and (&
) of the bits in two flags values.
sourcepub const fn union(self, other: Self) -> Self
pub const fn union(self, other: Self) -> Self
The bitwise or (|
) of the bits in two flags values.
sourcepub const fn difference(self, other: Self) -> Self
pub const fn difference(self, other: Self) -> Self
The intersection of a source flags value with the complement of a target flags value (&!
).
This method is not equivalent to self & !other
when other
has unknown bits set.
difference
won’t truncate other
, but the !
operator will.
sourcepub const fn symmetric_difference(self, other: Self) -> Self
pub const fn symmetric_difference(self, other: Self) -> Self
The bitwise exclusive-or (^
) of the bits in two flags values.
sourcepub const fn complement(self) -> Self
pub const fn complement(self) -> Self
The bitwise negation (!
) of the bits in a flags value, truncating the result.
source§impl WindowManagerFlags
impl WindowManagerFlags
sourcepub const fn iter(&self) -> Iter<WindowManagerFlags>
pub const fn iter(&self) -> Iter<WindowManagerFlags>
Yield a set of contained flags values.
Each yielded flags value will correspond to a defined named flag. Any unknown bits will be yielded together as a final flags value.
sourcepub const fn iter_names(&self) -> IterNames<WindowManagerFlags>
pub const fn iter_names(&self) -> IterNames<WindowManagerFlags>
Yield a set of contained named flags values.
This method is like iter
, except only yields bits in contained named flags.
Any unknown bits, or bits not corresponding to a contained flag will not be yielded.
Trait Implementations§
source§impl Binary for WindowManagerFlags
impl Binary for WindowManagerFlags
source§impl BitAnd for WindowManagerFlags
impl BitAnd for WindowManagerFlags
source§impl BitAndAssign for WindowManagerFlags
impl BitAndAssign for WindowManagerFlags
source§fn bitand_assign(&mut self, other: Self)
fn bitand_assign(&mut self, other: Self)
The bitwise and (&
) of the bits in two flags values.
source§impl BitOr for WindowManagerFlags
impl BitOr for WindowManagerFlags
source§fn bitor(self, other: WindowManagerFlags) -> Self
fn bitor(self, other: WindowManagerFlags) -> Self
The bitwise or (|
) of the bits in two flags values.
§type Output = WindowManagerFlags
type Output = WindowManagerFlags
|
operator.source§impl BitOrAssign for WindowManagerFlags
impl BitOrAssign for WindowManagerFlags
source§fn bitor_assign(&mut self, other: Self)
fn bitor_assign(&mut self, other: Self)
The bitwise or (|
) of the bits in two flags values.
source§impl BitXor for WindowManagerFlags
impl BitXor for WindowManagerFlags
source§impl BitXorAssign for WindowManagerFlags
impl BitXorAssign for WindowManagerFlags
source§fn bitxor_assign(&mut self, other: Self)
fn bitxor_assign(&mut self, other: Self)
The bitwise exclusive-or (^
) of the bits in two flags values.
source§impl Clone for WindowManagerFlags
impl Clone for WindowManagerFlags
source§fn clone(&self) -> WindowManagerFlags
fn clone(&self) -> WindowManagerFlags
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for WindowManagerFlags
impl Debug for WindowManagerFlags
source§impl Extend<WindowManagerFlags> for WindowManagerFlags
impl Extend<WindowManagerFlags> for WindowManagerFlags
source§fn extend<T: IntoIterator<Item = Self>>(&mut self, iterator: T)
fn extend<T: IntoIterator<Item = Self>>(&mut self, iterator: T)
The bitwise or (|
) of the bits in each flags value.
source§fn extend_one(&mut self, item: A)
fn extend_one(&mut self, item: A)
extend_one
)source§fn extend_reserve(&mut self, additional: usize)
fn extend_reserve(&mut self, additional: usize)
extend_one
)source§impl Flags for WindowManagerFlags
impl Flags for WindowManagerFlags
source§const FLAGS: &'static [Flag<WindowManagerFlags>] = _
const FLAGS: &'static [Flag<WindowManagerFlags>] = _
source§fn from_bits_retain(bits: u32) -> WindowManagerFlags
fn from_bits_retain(bits: u32) -> WindowManagerFlags
source§fn from_bits_truncate(bits: Self::Bits) -> Self
fn from_bits_truncate(bits: Self::Bits) -> Self
source§fn from_name(name: &str) -> Option<Self>
fn from_name(name: &str) -> Option<Self>
source§fn iter_names(&self) -> IterNames<Self>
fn iter_names(&self) -> IterNames<Self>
source§fn intersects(&self, other: Self) -> boolwhere
Self: Sized,
fn intersects(&self, other: Self) -> boolwhere
Self: Sized,
source§fn contains(&self, other: Self) -> boolwhere
Self: Sized,
fn contains(&self, other: Self) -> boolwhere
Self: Sized,
source§fn insert(&mut self, other: Self)where
Self: Sized,
fn insert(&mut self, other: Self)where
Self: Sized,
|
) of the bits in two flags values.source§fn remove(&mut self, other: Self)where
Self: Sized,
fn remove(&mut self, other: Self)where
Self: Sized,
&!
). Read moresource§fn toggle(&mut self, other: Self)where
Self: Sized,
fn toggle(&mut self, other: Self)where
Self: Sized,
^
) of the bits in two flags values.source§fn intersection(self, other: Self) -> Self
fn intersection(self, other: Self) -> Self
&
) of the bits in two flags values.source§fn difference(self, other: Self) -> Self
fn difference(self, other: Self) -> Self
&!
). Read moresource§fn symmetric_difference(self, other: Self) -> Self
fn symmetric_difference(self, other: Self) -> Self
^
) of the bits in two flags values.source§fn complement(self) -> Self
fn complement(self) -> Self
!
) of the bits in a flags value, truncating the result.source§impl FromIterator<WindowManagerFlags> for WindowManagerFlags
impl FromIterator<WindowManagerFlags> for WindowManagerFlags
source§fn from_iter<T: IntoIterator<Item = Self>>(iterator: T) -> Self
fn from_iter<T: IntoIterator<Item = Self>>(iterator: T) -> Self
The bitwise or (|
) of the bits in each flags value.
source§impl Hash for WindowManagerFlags
impl Hash for WindowManagerFlags
source§impl IntoIterator for WindowManagerFlags
impl IntoIterator for WindowManagerFlags
source§impl LowerHex for WindowManagerFlags
impl LowerHex for WindowManagerFlags
source§impl Not for WindowManagerFlags
impl Not for WindowManagerFlags
source§impl Octal for WindowManagerFlags
impl Octal for WindowManagerFlags
source§impl PartialEq for WindowManagerFlags
impl PartialEq for WindowManagerFlags
source§fn eq(&self, other: &WindowManagerFlags) -> bool
fn eq(&self, other: &WindowManagerFlags) -> bool
self
and other
values to be equal, and is used
by ==
.source§impl PublicFlags for WindowManagerFlags
impl PublicFlags for WindowManagerFlags
source§impl Sub for WindowManagerFlags
impl Sub for WindowManagerFlags
source§fn sub(self, other: Self) -> Self
fn sub(self, other: Self) -> Self
The intersection of a source flags value with the complement of a target flags value (&!
).
This method is not equivalent to self & !other
when other
has unknown bits set.
difference
won’t truncate other
, but the !
operator will.
§type Output = WindowManagerFlags
type Output = WindowManagerFlags
-
operator.source§impl SubAssign for WindowManagerFlags
impl SubAssign for WindowManagerFlags
source§fn sub_assign(&mut self, other: Self)
fn sub_assign(&mut self, other: Self)
The intersection of a source flags value with the complement of a target flags value (&!
).
This method is not equivalent to self & !other
when other
has unknown bits set.
difference
won’t truncate other
, but the !
operator will.