enum HwndOpenedOutcome {
Linked,
Repaired(u64),
NoMatchingLabel,
}Expand description
Internal — the four branches of apply_hwnd_opened against a
known label_hint. Lifted into its own enum so the function
can drop the &mut WindowMirror borrow before calling
state.bump_version() on the drift-emitting path (rustc E0499).
Variants§
Linked
Existing mirror was waiting for an HWND; linked successfully.
Repaired(u64)
Existing mirror was already linked to a DIFFERENT HWND. The
explicit on_after_created path is authoritative — REPAIR by
overwriting the stale link, and emit HwndWithoutBrowser
drift to surface the prior incorrect link for diagnostics.
Carry the prior HWND for the drift message.
(PR #664: replaces the no-repair behavior that caused the
panel grows but no window appears user symptom under
burst creates.)
NoMatchingLabel
No mirror exists for that label — fall through to pending stash (caller responsibility).
Auto Trait Implementations§
impl Freeze for HwndOpenedOutcome
impl RefUnwindSafe for HwndOpenedOutcome
impl Send for HwndOpenedOutcome
impl Sync for HwndOpenedOutcome
impl Unpin for HwndOpenedOutcome
impl UnsafeUnpin for HwndOpenedOutcome
impl UnwindSafe for HwndOpenedOutcome
Blanket Implementations§
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
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.