ShellTransition

Struct ShellTransition 

Source
pub struct ShellTransition {
Show 17 fields pub id: Option<i32>, pub create_time_ns: Option<i64>, pub send_time_ns: Option<i64>, pub dispatch_time_ns: Option<i64>, pub merge_time_ns: Option<i64>, pub merge_request_time_ns: Option<i64>, pub shell_abort_time_ns: Option<i64>, pub wm_abort_time_ns: Option<i64>, pub finish_time_ns: Option<i64>, pub start_transaction_id: Option<u64>, pub finish_transaction_id: Option<u64>, pub handler: Option<i32>, pub type: Option<i32>, pub targets: Vec<Target>, pub merge_target: Option<i32>, pub flags: Option<i32>, pub starting_window_remove_time_ns: Option<i64>,
}
Expand description

ShellTransition messages record information about the shell transitions in the system. This is used to track the animations that are created and execute through the shell transition system.

Fields§

§id: Option<i32>

The unique identifier of the transition.

§create_time_ns: Option<i64>

The time the transition was created on the WM side (using SystemClock.elapsedRealtimeNanos())

§send_time_ns: Option<i64>

The time the transition was sent from the WM side to shell (using SystemClock.elapsedRealtimeNanos())

§dispatch_time_ns: Option<i64>

The time the transition was dispatched by shell to execute (using SystemClock.elapsedRealtimeNanos())

§merge_time_ns: Option<i64>

If the transition merge was accepted by the transition handler, this contains the time the transition was merged into transition with id merge_target. (using SystemClock.elapsedRealtimeNanos())

§merge_request_time_ns: Option<i64>

The time shell proposed the transition should be merged to the transition handler into transition with id merge_target. (using SystemClock.elapsedRealtimeNanos()).

§shell_abort_time_ns: Option<i64>

If the transition was aborted on the shell side, this is the time that occurred. (using SystemClock.elapsedRealtimeNanos())

§wm_abort_time_ns: Option<i64>

If the transition was aborted on the wm side, this is the time that occurred. (using SystemClock.elapsedRealtimeNanos())

§finish_time_ns: Option<i64>

The time WM considers the transition to be complete. (using SystemClock.elapsedRealtimeNanos())

§start_transaction_id: Option<u64>

The id of the transaction that WM proposed to use as the starting transaction. It contains all the layer changes required to setup the transition and should be executed right at the start of the transition by the transition handler.

§finish_transaction_id: Option<u64>

The if of the transaction that WM proposed to use as the finish transaction. It contains all the layer changes required to set the final state of the transition.

§handler: Option<i32>

The id of the handler that executed the transition. A HandlerMappings message in the trace will contain the mapping of id to a string representation of the handler.

§type: Option<i32>

The transition type of this transition (e.g. TO_FRONT, OPEN, CLOSE).

§targets: Vec<Target>

The list of targets that are part of this transition.

§merge_target: Option<i32>

The id of the transition we have requested to merge or have merged this transition into.

§flags: Option<i32>

The flags set on this transition.

§starting_window_remove_time_ns: Option<i64>

The time the starting window was removed. Tracked because this can happen after the transition finishes, but the app may not yet be visible until the starting window is removed. So in a sense the transition is not finished until the starting window is removed. (b/284302118) (using SystemClock.elapsedRealtimeNanos())

Implementations§

Source§

impl ShellTransition

Source

pub fn id(&self) -> i32

Returns the value of id, or the default value if id is unset.

Source

pub fn create_time_ns(&self) -> i64

Returns the value of create_time_ns, or the default value if create_time_ns is unset.

Source

pub fn send_time_ns(&self) -> i64

Returns the value of send_time_ns, or the default value if send_time_ns is unset.

Source

pub fn dispatch_time_ns(&self) -> i64

Returns the value of dispatch_time_ns, or the default value if dispatch_time_ns is unset.

Source

pub fn merge_time_ns(&self) -> i64

Returns the value of merge_time_ns, or the default value if merge_time_ns is unset.

Source

pub fn merge_request_time_ns(&self) -> i64

Returns the value of merge_request_time_ns, or the default value if merge_request_time_ns is unset.

Source

pub fn shell_abort_time_ns(&self) -> i64

Returns the value of shell_abort_time_ns, or the default value if shell_abort_time_ns is unset.

Source

pub fn wm_abort_time_ns(&self) -> i64

Returns the value of wm_abort_time_ns, or the default value if wm_abort_time_ns is unset.

Source

pub fn finish_time_ns(&self) -> i64

Returns the value of finish_time_ns, or the default value if finish_time_ns is unset.

Source

pub fn start_transaction_id(&self) -> u64

Returns the value of start_transaction_id, or the default value if start_transaction_id is unset.

Source

pub fn finish_transaction_id(&self) -> u64

Returns the value of finish_transaction_id, or the default value if finish_transaction_id is unset.

Source

pub fn handler(&self) -> i32

Returns the value of handler, or the default value if handler is unset.

Source

pub fn type(&self) -> i32

Returns the value of type, or the default value if type is unset.

Source

pub fn merge_target(&self) -> i32

Returns the value of merge_target, or the default value if merge_target is unset.

Source

pub fn flags(&self) -> i32

Returns the value of flags, or the default value if flags is unset.

Source

pub fn starting_window_remove_time_ns(&self) -> i64

Returns the value of starting_window_remove_time_ns, or the default value if starting_window_remove_time_ns is unset.

Trait Implementations§

Source§

impl Clone for ShellTransition

Source§

fn clone(&self) -> ShellTransition

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for ShellTransition

Source§

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

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

impl Default for ShellTransition

Source§

fn default() -> ShellTransition

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

impl Message for ShellTransition

Source§

fn encoded_len(&self) -> usize

Returns the encoded length of the message without a length delimiter.
Source§

fn clear(&mut self)

Clears the message, resetting all fields to their default.
Source§

fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>
where Self: Sized,

Encodes the message to a buffer. Read more
Source§

fn encode_to_vec(&self) -> Vec<u8>
where Self: Sized,

Encodes the message to a newly allocated buffer.
Source§

fn encode_length_delimited( &self, buf: &mut impl BufMut, ) -> Result<(), EncodeError>
where Self: Sized,

Encodes the message with a length-delimiter to a buffer. Read more
Source§

fn encode_length_delimited_to_vec(&self) -> Vec<u8>
where Self: Sized,

Encodes the message with a length-delimiter to a newly allocated buffer.
Source§

fn decode(buf: impl Buf) -> Result<Self, DecodeError>
where Self: Default,

Decodes an instance of the message from a buffer. Read more
Source§

fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>
where Self: Default,

Decodes a length-delimited instance of the message from the buffer.
Source§

fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>
where Self: Sized,

Decodes an instance of the message from a buffer, and merges it into self. Read more
Source§

fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>
where Self: Sized,

Decodes a length-delimited instance of the message from buffer, and merges it into self.
Source§

impl PartialEq for ShellTransition

Source§

fn eq(&self, other: &ShellTransition) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl StructuralPartialEq for ShellTransition

Auto Trait Implementations§

Blanket Implementations§

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> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> DynClone for T
where T: Clone,

Source§

fn __clone_box(&self, _: Private) -> *mut ()

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> FromRef<T> for T
where T: Clone,

§

fn from_ref(input: &T) -> T

Converts to this type from a reference to the input type.
§

impl<T> Instrument for T

§

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

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

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
§

impl<T> IntoRequest<T> for T

§

fn into_request(self) -> Request<T>

Wrap the input message T in a tonic::Request
§

impl<L> LayerExt<L> for L

§

fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>
where L: Layer<S>,

Applies the layer to a service and wraps it in [Layered].
§

impl<T> Pointable for T

§

const ALIGN: usize

The alignment of pointer.
§

type Init = T

The type for initializers.
§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
§

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

§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns [Action::Follow] only if self and other return Action::Follow. Read more
§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns [Action::Follow] if either self or other returns Action::Follow. Read more
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
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.
§

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

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

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
§

fn with_current_subscriber(self) -> WithDispatch<Self>

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

impl<T> Allocation for T
where T: RefUnwindSafe + Send + Sync,