.class public Landroidx/car/app/ScreenManager; .super Ljava/lang/Object; .source "ScreenManager.java" # interfaces .implements Ll0/a; # annotations .annotation build Landroidx/annotation/MainThread; .end annotation .annotation system Ldalvik/annotation/MemberClasses; value = { Landroidx/car/app/ScreenManager$LifecycleObserverImpl; } .end annotation # instance fields .field public final a:Ljava/util/Deque; .annotation system Ldalvik/annotation/Signature; value = { "Ljava/util/Deque<", "Landroidx/car/app/t0;", ">;" } .end annotation .end field .field public final b:Landroidx/car/app/CarContext; .field public final c:Landroidx/lifecycle/Lifecycle; # direct methods .method public constructor (Landroidx/car/app/CarContext;Landroidx/lifecycle/Lifecycle;)V .locals 1 .param p1 # Landroidx/car/app/CarContext; .annotation build Landroidx/annotation/NonNull; .end annotation .end param .param p2 # Landroidx/lifecycle/Lifecycle; .annotation build Landroidx/annotation/NonNull; .end annotation .end param .annotation build Landroidx/annotation/RestrictTo; value = { .enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY_GROUP:Landroidx/annotation/RestrictTo$Scope; } .end annotation .line 1 invoke-direct {p0}, Ljava/lang/Object;->()V .line 2 new-instance v0, Ljava/util/ArrayDeque; invoke-direct {v0}, Ljava/util/ArrayDeque;->()V iput-object v0, p0, Landroidx/car/app/ScreenManager;->a:Ljava/util/Deque; .line 3 iput-object p1, p0, Landroidx/car/app/ScreenManager;->b:Landroidx/car/app/CarContext; .line 4 iput-object p2, p0, Landroidx/car/app/ScreenManager;->c:Landroidx/lifecycle/Lifecycle; .line 5 new-instance p1, Landroidx/car/app/ScreenManager$LifecycleObserverImpl; invoke-direct {p1, p0}, Landroidx/car/app/ScreenManager$LifecycleObserverImpl;->(Landroidx/car/app/ScreenManager;)V invoke-virtual {p2, p1}, Landroidx/lifecycle/Lifecycle;->addObserver(Landroidx/lifecycle/LifecycleObserver;)V return-void .end method .method public static f(Landroidx/car/app/CarContext;Landroidx/lifecycle/Lifecycle;)Landroidx/car/app/ScreenManager; .locals 1 .line 1 new-instance v0, Landroidx/car/app/ScreenManager; invoke-direct {v0, p0, p1}, Landroidx/car/app/ScreenManager;->(Landroidx/car/app/CarContext;Landroidx/lifecycle/Lifecycle;)V return-object v0 .end method # virtual methods .method public g()V .locals 3 .line 1 iget-object v0, p0, Landroidx/car/app/ScreenManager;->a:Ljava/util/Deque; invoke-interface {v0}, Ljava/util/Deque;->iterator()Ljava/util/Iterator; move-result-object v0 :goto_0 invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z move-result v1 if-eqz v1, :cond_0 invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object; move-result-object v1 check-cast v1, Landroidx/car/app/t0; const/4 v2, 0x1 .line 2 invoke-virtual {p0, v1, v2}, Landroidx/car/app/ScreenManager;->w(Landroidx/car/app/t0;Z)V goto :goto_0 .line 3 :cond_0 iget-object v0, p0, Landroidx/car/app/ScreenManager;->a:Ljava/util/Deque; invoke-interface {v0}, Ljava/util/Deque;->clear()V return-void .end method .method public final h(Ljava/lang/String;)Z .locals 1 .line 1 invoke-virtual {p0}, Landroidx/car/app/ScreenManager;->k()Landroidx/car/app/t0; move-result-object v0 invoke-virtual {v0}, Landroidx/car/app/t0;->h()Ljava/lang/String; move-result-object v0 invoke-virtual {p1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z move-result p1 return p1 .end method .method public i()Ljava/util/Deque; .locals 1 .annotation build Landroidx/annotation/NonNull; .end annotation .annotation build Landroidx/annotation/RestrictTo; value = { .enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY_GROUP:Landroidx/annotation/RestrictTo$Scope; } .end annotation .annotation system Ldalvik/annotation/Signature; value = { "()", "Ljava/util/Deque<", "Landroidx/car/app/t0;", ">;" } .end annotation .line 1 iget-object v0, p0, Landroidx/car/app/ScreenManager;->a:Ljava/util/Deque; return-object v0 .end method .method public j()I .locals 1 .line 1 iget-object v0, p0, Landroidx/car/app/ScreenManager;->a:Ljava/util/Deque; invoke-interface {v0}, Ljava/util/Deque;->size()I move-result v0 return v0 .end method .method public k()Landroidx/car/app/t0; .locals 1 .annotation build Landroidx/annotation/NonNull; .end annotation .line 1 invoke-static {}, Landroidx/car/app/utils/q;->a()V .line 2 iget-object v0, p0, Landroidx/car/app/ScreenManager;->a:Ljava/util/Deque; invoke-interface {v0}, Ljava/util/Deque;->peek()Ljava/lang/Object; move-result-object v0 check-cast v0, Landroidx/car/app/t0; invoke-static {v0}, Ljava/util/Objects;->requireNonNull(Ljava/lang/Object;)Ljava/lang/Object; return-object v0 .end method .method public l()Landroidx/car/app/model/TemplateWrapper; .locals 4 .annotation build Landroidx/annotation/NonNull; .end annotation .line 1 invoke-static {}, Landroidx/car/app/utils/q;->a()V .line 2 invoke-virtual {p0}, Landroidx/car/app/ScreenManager;->k()Landroidx/car/app/t0; move-result-object v0 const-string v1, "CarApp" const/4 v2, 0x3 .line 3 invoke-static {v1, v2}, Landroid/util/Log;->isLoggable(Ljava/lang/String;I)Z move-result v2 if-eqz v2, :cond_0 .line 4 new-instance v2, Ljava/lang/StringBuilder; invoke-direct {v2}, Ljava/lang/StringBuilder;->()V const-string v3, "Requesting template from Screen " invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v2 invoke-static {v1, v2}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I .line 5 :cond_0 invoke-virtual {v0}, Landroidx/car/app/t0;->k()Landroidx/car/app/model/TemplateWrapper; move-result-object v0 .line 6 new-instance v1, Ljava/util/ArrayList; invoke-direct {v1}, Ljava/util/ArrayList;->()V .line 7 iget-object v2, p0, Landroidx/car/app/ScreenManager;->a:Ljava/util/Deque; invoke-interface {v2}, Ljava/util/Deque;->iterator()Ljava/util/Iterator; move-result-object v2 :goto_0 invoke-interface {v2}, Ljava/util/Iterator;->hasNext()Z move-result v3 if-eqz v3, :cond_1 invoke-interface {v2}, Ljava/util/Iterator;->next()Ljava/lang/Object; move-result-object v3 check-cast v3, Landroidx/car/app/t0; .line 8 invoke-virtual {v3}, Landroidx/car/app/t0;->f()Landroidx/car/app/model/TemplateInfo; move-result-object v3 invoke-virtual {v1, v3}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z goto :goto_0 .line 9 :cond_1 invoke-virtual {v0, v1}, Landroidx/car/app/model/TemplateWrapper;->l(Ljava/util/List;)V return-object v0 .end method .method public final m(Landroidx/car/app/t0;)V .locals 2 .line 1 iget-object v0, p0, Landroidx/car/app/ScreenManager;->a:Ljava/util/Deque; invoke-interface {v0}, Ljava/util/Deque;->peek()Ljava/lang/Object; move-result-object v0 check-cast v0, Landroidx/car/app/t0; if-eqz v0, :cond_1 if-ne v0, p1, :cond_0 goto :goto_0 .line 2 :cond_0 iget-object v1, p0, Landroidx/car/app/ScreenManager;->a:Ljava/util/Deque; invoke-interface {v1, p1}, Ljava/util/Deque;->remove(Ljava/lang/Object;)Z const/4 v1, 0x0 .line 3 invoke-virtual {p0, p1, v1}, Landroidx/car/app/ScreenManager;->s(Landroidx/car/app/t0;Z)V .line 4 invoke-virtual {p0, v0, v1}, Landroidx/car/app/ScreenManager;->w(Landroidx/car/app/t0;Z)V .line 5 iget-object v0, p0, Landroidx/car/app/ScreenManager;->c:Landroidx/lifecycle/Lifecycle; invoke-virtual {v0}, Landroidx/lifecycle/Lifecycle;->getCurrentState()Landroidx/lifecycle/Lifecycle$State; move-result-object v0 sget-object v1, Landroidx/lifecycle/Lifecycle$State;->RESUMED:Landroidx/lifecycle/Lifecycle$State; invoke-virtual {v0, v1}, Landroidx/lifecycle/Lifecycle$State;->isAtLeast(Landroidx/lifecycle/Lifecycle$State;)Z move-result v0 if-eqz v0, :cond_1 .line 6 sget-object v0, Landroidx/lifecycle/Lifecycle$Event;->ON_RESUME:Landroidx/lifecycle/Lifecycle$Event; invoke-virtual {p1, v0}, Landroidx/car/app/t0;->c(Landroidx/lifecycle/Lifecycle$Event;)V :cond_1 :goto_0 return-void .end method .method public n()V .locals 2 .line 1 invoke-static {}, Landroidx/car/app/utils/q;->a()V .line 2 iget-object v0, p0, Landroidx/car/app/ScreenManager;->a:Ljava/util/Deque; invoke-interface {v0}, Ljava/util/Deque;->size()I move-result v0 const/4 v1, 0x1 if-le v0, v1, :cond_0 .line 3 iget-object v0, p0, Landroidx/car/app/ScreenManager;->a:Ljava/util/Deque; invoke-interface {v0}, Ljava/util/Deque;->pop()Ljava/lang/Object; move-result-object v0 check-cast v0, Landroidx/car/app/t0; invoke-static {v0}, Ljava/util/Collections;->singletonList(Ljava/lang/Object;)Ljava/util/List; move-result-object v0 invoke-virtual {p0, v0}, Landroidx/car/app/ScreenManager;->o(Ljava/util/List;)V :cond_0 return-void .end method .method public final o(Ljava/util/List;)V .locals 6 .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/util/List<", "Landroidx/car/app/t0;", ">;)V" } .end annotation .line 1 invoke-virtual {p0}, Landroidx/car/app/ScreenManager;->k()Landroidx/car/app/t0; move-result-object v0 const/4 v1, 0x1 .line 2 invoke-virtual {v0, v1}, Landroidx/car/app/t0;->s(Z)V .line 3 iget-object v2, p0, Landroidx/car/app/ScreenManager;->b:Landroidx/car/app/CarContext; const-class v3, Landroidx/car/app/AppManager; invoke-virtual {v2, v3}, Landroidx/car/app/CarContext;->p(Ljava/lang/Class;)Ljava/lang/Object; move-result-object v2 check-cast v2, Landroidx/car/app/AppManager; invoke-virtual {v2}, Landroidx/car/app/AppManager;->n()V .line 4 iget-object v2, p0, Landroidx/car/app/ScreenManager;->c:Landroidx/lifecycle/Lifecycle; invoke-virtual {v2}, Landroidx/lifecycle/Lifecycle;->getCurrentState()Landroidx/lifecycle/Lifecycle$State; move-result-object v2 sget-object v3, Landroidx/lifecycle/Lifecycle$State;->STARTED:Landroidx/lifecycle/Lifecycle$State; invoke-virtual {v2, v3}, Landroidx/lifecycle/Lifecycle$State;->isAtLeast(Landroidx/lifecycle/Lifecycle$State;)Z move-result v2 if-eqz v2, :cond_0 .line 5 sget-object v2, Landroidx/lifecycle/Lifecycle$Event;->ON_START:Landroidx/lifecycle/Lifecycle$Event; invoke-virtual {v0, v2}, Landroidx/car/app/t0;->c(Landroidx/lifecycle/Lifecycle$Event;)V .line 6 :cond_0 invoke-interface {p1}, Ljava/util/List;->iterator()Ljava/util/Iterator; move-result-object p1 :goto_0 invoke-interface {p1}, Ljava/util/Iterator;->hasNext()Z move-result v2 const/4 v3, 0x3 const-string v4, "CarApp" if-eqz v2, :cond_2 invoke-interface {p1}, Ljava/util/Iterator;->next()Ljava/lang/Object; move-result-object v2 check-cast v2, Landroidx/car/app/t0; .line 7 invoke-static {v4, v3}, Landroid/util/Log;->isLoggable(Ljava/lang/String;I)Z move-result v3 if-eqz v3, :cond_1 .line 8 new-instance v3, Ljava/lang/StringBuilder; invoke-direct {v3}, Ljava/lang/StringBuilder;->()V const-string v5, "Popping screen " invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; const-string v5, " off the screen stack" invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v3 invoke-static {v4, v3}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I .line 9 :cond_1 invoke-virtual {p0, v2, v1}, Landroidx/car/app/ScreenManager;->w(Landroidx/car/app/t0;Z)V goto :goto_0 .line 10 :cond_2 invoke-static {v4, v3}, Landroid/util/Log;->isLoggable(Ljava/lang/String;I)Z move-result p1 if-eqz p1, :cond_3 .line 11 new-instance p1, Ljava/lang/StringBuilder; invoke-direct {p1}, Ljava/lang/StringBuilder;->()V const-string v1, "Screen " invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; const-string v1, " is at the top of the screen stack" invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p1 invoke-static {v4, p1}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I .line 12 :cond_3 iget-object p1, p0, Landroidx/car/app/ScreenManager;->c:Landroidx/lifecycle/Lifecycle; invoke-virtual {p1}, Landroidx/lifecycle/Lifecycle;->getCurrentState()Landroidx/lifecycle/Lifecycle$State; move-result-object p1 sget-object v1, Landroidx/lifecycle/Lifecycle$State;->RESUMED:Landroidx/lifecycle/Lifecycle$State; invoke-virtual {p1, v1}, Landroidx/lifecycle/Lifecycle$State;->isAtLeast(Landroidx/lifecycle/Lifecycle$State;)Z move-result p1 if-eqz p1, :cond_4 .line 13 iget-object p1, p0, Landroidx/car/app/ScreenManager;->a:Ljava/util/Deque; invoke-interface {p1, v0}, Ljava/util/Deque;->contains(Ljava/lang/Object;)Z move-result p1 if-eqz p1, :cond_4 .line 14 sget-object p1, Landroidx/lifecycle/Lifecycle$Event;->ON_RESUME:Landroidx/lifecycle/Lifecycle$Event; invoke-virtual {v0, p1}, Landroidx/car/app/t0;->c(Landroidx/lifecycle/Lifecycle$Event;)V :cond_4 return-void .end method .method public p(Ljava/lang/String;)V .locals 3 .param p1 # Ljava/lang/String; .annotation build Landroidx/annotation/NonNull; .end annotation .end param .line 1 invoke-static {}, Landroidx/car/app/utils/q;->a()V .line 2 invoke-static {p1}, Ljava/util/Objects;->requireNonNull(Ljava/lang/Object;)Ljava/lang/Object; .line 3 new-instance v0, Ljava/util/ArrayList; invoke-direct {v0}, Ljava/util/ArrayList;->()V .line 4 :goto_0 iget-object v1, p0, Landroidx/car/app/ScreenManager;->a:Ljava/util/Deque; invoke-interface {v1}, Ljava/util/Deque;->size()I move-result v1 const/4 v2, 0x1 if-le v1, v2, :cond_0 invoke-virtual {p0, p1}, Landroidx/car/app/ScreenManager;->h(Ljava/lang/String;)Z move-result v1 if-nez v1, :cond_0 .line 5 iget-object v1, p0, Landroidx/car/app/ScreenManager;->a:Ljava/util/Deque; invoke-interface {v1}, Ljava/util/Deque;->pop()Ljava/lang/Object; move-result-object v1 check-cast v1, Landroidx/car/app/t0; invoke-virtual {v0, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z goto :goto_0 .line 6 :cond_0 invoke-virtual {v0}, Ljava/util/ArrayList;->isEmpty()Z move-result p1 if-eqz p1, :cond_1 return-void .line 7 :cond_1 invoke-virtual {p0, v0}, Landroidx/car/app/ScreenManager;->o(Ljava/util/List;)V return-void .end method .method public q()V .locals 3 .line 1 invoke-static {}, Landroidx/car/app/utils/q;->a()V .line 2 iget-object v0, p0, Landroidx/car/app/ScreenManager;->a:Ljava/util/Deque; invoke-interface {v0}, Ljava/util/Deque;->size()I move-result v0 const/4 v1, 0x1 if-gt v0, v1, :cond_0 return-void .line 3 :cond_0 new-instance v0, Ljava/util/ArrayList; invoke-direct {v0}, Ljava/util/ArrayList;->()V .line 4 :goto_0 iget-object v2, p0, Landroidx/car/app/ScreenManager;->a:Ljava/util/Deque; invoke-interface {v2}, Ljava/util/Deque;->size()I move-result v2 if-le v2, v1, :cond_1 .line 5 iget-object v2, p0, Landroidx/car/app/ScreenManager;->a:Ljava/util/Deque; invoke-interface {v2}, Ljava/util/Deque;->pop()Ljava/lang/Object; move-result-object v2 check-cast v2, Landroidx/car/app/t0; invoke-virtual {v0, v2}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z goto :goto_0 .line 6 :cond_1 invoke-virtual {p0, v0}, Landroidx/car/app/ScreenManager;->o(Ljava/util/List;)V return-void .end method .method public r(Landroidx/car/app/t0;)V .locals 0 .param p1 # Landroidx/car/app/t0; .annotation build Landroidx/annotation/NonNull; .end annotation .end param .line 1 invoke-static {}, Landroidx/car/app/utils/q;->a()V .line 2 invoke-static {p1}, Ljava/util/Objects;->requireNonNull(Ljava/lang/Object;)Ljava/lang/Object; invoke-virtual {p0, p1}, Landroidx/car/app/ScreenManager;->u(Landroidx/car/app/t0;)V return-void .end method .method public final s(Landroidx/car/app/t0;Z)V .locals 1 .line 1 iget-object v0, p0, Landroidx/car/app/ScreenManager;->a:Ljava/util/Deque; invoke-interface {v0, p1}, Ljava/util/Deque;->push(Ljava/lang/Object;)V if-eqz p2, :cond_0 .line 2 iget-object p2, p0, Landroidx/car/app/ScreenManager;->c:Landroidx/lifecycle/Lifecycle; invoke-virtual {p2}, Landroidx/lifecycle/Lifecycle;->getCurrentState()Landroidx/lifecycle/Lifecycle$State; move-result-object p2 sget-object v0, Landroidx/lifecycle/Lifecycle$State;->CREATED:Landroidx/lifecycle/Lifecycle$State; invoke-virtual {p2, v0}, Landroidx/lifecycle/Lifecycle$State;->isAtLeast(Landroidx/lifecycle/Lifecycle$State;)Z move-result p2 if-eqz p2, :cond_0 .line 3 sget-object p2, Landroidx/lifecycle/Lifecycle$Event;->ON_CREATE:Landroidx/lifecycle/Lifecycle$Event; invoke-virtual {p1, p2}, Landroidx/car/app/t0;->c(Landroidx/lifecycle/Lifecycle$Event;)V .line 4 :cond_0 invoke-virtual {p1}, Landroidx/car/app/t0;->getLifecycle()Landroidx/lifecycle/Lifecycle; move-result-object p2 invoke-virtual {p2}, Landroidx/lifecycle/Lifecycle;->getCurrentState()Landroidx/lifecycle/Lifecycle$State; move-result-object p2 sget-object v0, Landroidx/lifecycle/Lifecycle$State;->CREATED:Landroidx/lifecycle/Lifecycle$State; invoke-virtual {p2, v0}, Landroidx/lifecycle/Lifecycle$State;->isAtLeast(Landroidx/lifecycle/Lifecycle$State;)Z move-result p2 if-nez p2, :cond_1 return-void .line 5 :cond_1 iget-object p2, p0, Landroidx/car/app/ScreenManager;->c:Landroidx/lifecycle/Lifecycle; invoke-virtual {p2}, Landroidx/lifecycle/Lifecycle;->getCurrentState()Landroidx/lifecycle/Lifecycle$State; move-result-object p2 sget-object v0, Landroidx/lifecycle/Lifecycle$State;->STARTED:Landroidx/lifecycle/Lifecycle$State; invoke-virtual {p2, v0}, Landroidx/lifecycle/Lifecycle$State;->isAtLeast(Landroidx/lifecycle/Lifecycle$State;)Z move-result p2 if-eqz p2, :cond_2 .line 6 iget-object p2, p0, Landroidx/car/app/ScreenManager;->b:Landroidx/car/app/CarContext; const-class v0, Landroidx/car/app/AppManager; invoke-virtual {p2, v0}, Landroidx/car/app/CarContext;->p(Ljava/lang/Class;)Ljava/lang/Object; move-result-object p2 check-cast p2, Landroidx/car/app/AppManager; invoke-virtual {p2}, Landroidx/car/app/AppManager;->n()V .line 7 sget-object p2, Landroidx/lifecycle/Lifecycle$Event;->ON_START:Landroidx/lifecycle/Lifecycle$Event; invoke-virtual {p1, p2}, Landroidx/car/app/t0;->c(Landroidx/lifecycle/Lifecycle$Event;)V :cond_2 return-void .end method .method public t(Landroidx/car/app/t0;Landroidx/car/app/q0;)V .locals 0 .param p1 # Landroidx/car/app/t0; .annotation build Landroidx/annotation/NonNull; .end annotation .end param .param p2 # Landroidx/car/app/q0; .annotation build Landroidx/annotation/NonNull; .end annotation .end param .annotation build Landroid/annotation/SuppressLint; value = { "ExecutorRegistration" } .end annotation .line 1 invoke-static {}, Landroidx/car/app/utils/q;->a()V .line 2 invoke-static {p1}, Ljava/util/Objects;->requireNonNull(Ljava/lang/Object;)Ljava/lang/Object; invoke-static {p2}, Ljava/util/Objects;->requireNonNull(Ljava/lang/Object;)Ljava/lang/Object; check-cast p2, Landroidx/car/app/q0; invoke-virtual {p1, p2}, Landroidx/car/app/t0;->q(Landroidx/car/app/q0;)V .line 3 invoke-virtual {p0, p1}, Landroidx/car/app/ScreenManager;->u(Landroidx/car/app/t0;)V return-void .end method .method public final u(Landroidx/car/app/t0;)V .locals 3 const-string v0, "CarApp" const/4 v1, 0x3 .line 1 invoke-static {v0, v1}, Landroid/util/Log;->isLoggable(Ljava/lang/String;I)Z move-result v1 if-eqz v1, :cond_0 .line 2 new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1}, Ljava/lang/StringBuilder;->()V const-string v2, "Pushing screen " invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; const-string v2, " to the top of the screen stack" invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-static {v0, v1}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I .line 3 :cond_0 iget-object v0, p0, Landroidx/car/app/ScreenManager;->a:Ljava/util/Deque; invoke-interface {v0, p1}, Ljava/util/Deque;->contains(Ljava/lang/Object;)Z move-result v0 if-eqz v0, :cond_1 .line 4 invoke-virtual {p0, p1}, Landroidx/car/app/ScreenManager;->m(Landroidx/car/app/t0;)V return-void .line 5 :cond_1 iget-object v0, p0, Landroidx/car/app/ScreenManager;->a:Ljava/util/Deque; invoke-interface {v0}, Ljava/util/Deque;->peek()Ljava/lang/Object; move-result-object v0 check-cast v0, Landroidx/car/app/t0; const/4 v1, 0x1 .line 6 invoke-virtual {p0, p1, v1}, Landroidx/car/app/ScreenManager;->s(Landroidx/car/app/t0;Z)V .line 7 iget-object v1, p0, Landroidx/car/app/ScreenManager;->a:Ljava/util/Deque; invoke-interface {v1, p1}, Ljava/util/Deque;->contains(Ljava/lang/Object;)Z move-result v1 if-nez v1, :cond_2 return-void :cond_2 if-eqz v0, :cond_3 const/4 v1, 0x0 .line 8 invoke-virtual {p0, v0, v1}, Landroidx/car/app/ScreenManager;->w(Landroidx/car/app/t0;Z)V .line 9 :cond_3 iget-object v0, p0, Landroidx/car/app/ScreenManager;->c:Landroidx/lifecycle/Lifecycle; invoke-virtual {v0}, Landroidx/lifecycle/Lifecycle;->getCurrentState()Landroidx/lifecycle/Lifecycle$State; move-result-object v0 sget-object v1, Landroidx/lifecycle/Lifecycle$State;->RESUMED:Landroidx/lifecycle/Lifecycle$State; invoke-virtual {v0, v1}, Landroidx/lifecycle/Lifecycle$State;->isAtLeast(Landroidx/lifecycle/Lifecycle$State;)Z move-result v0 if-eqz v0, :cond_4 .line 10 sget-object v0, Landroidx/lifecycle/Lifecycle$Event;->ON_RESUME:Landroidx/lifecycle/Lifecycle$Event; invoke-virtual {p1, v0}, Landroidx/car/app/t0;->c(Landroidx/lifecycle/Lifecycle$Event;)V :cond_4 return-void .end method .method public v(Landroidx/car/app/t0;)V .locals 2 .param p1 # Landroidx/car/app/t0; .annotation build Landroidx/annotation/NonNull; .end annotation .end param .line 1 invoke-static {}, Landroidx/car/app/utils/q;->a()V .line 2 invoke-static {p1}, Ljava/util/Objects;->requireNonNull(Ljava/lang/Object;)Ljava/lang/Object; .line 3 iget-object v0, p0, Landroidx/car/app/ScreenManager;->a:Ljava/util/Deque; invoke-interface {v0}, Ljava/util/Deque;->size()I move-result v0 const/4 v1, 0x1 if-gt v0, v1, :cond_0 return-void .line 4 :cond_0 invoke-virtual {p0}, Landroidx/car/app/ScreenManager;->k()Landroidx/car/app/t0; move-result-object v0 invoke-virtual {p1, v0}, Ljava/lang/Object;->equals(Ljava/lang/Object;)Z move-result v0 if-eqz v0, :cond_1 .line 5 iget-object v0, p0, Landroidx/car/app/ScreenManager;->a:Ljava/util/Deque; invoke-interface {v0}, Ljava/util/Deque;->pop()Ljava/lang/Object; .line 6 invoke-static {p1}, Ljava/util/Collections;->singletonList(Ljava/lang/Object;)Ljava/util/List; move-result-object p1 invoke-virtual {p0, p1}, Landroidx/car/app/ScreenManager;->o(Ljava/util/List;)V goto :goto_0 .line 7 :cond_1 iget-object v0, p0, Landroidx/car/app/ScreenManager;->a:Ljava/util/Deque; invoke-interface {v0, p1}, Ljava/util/Deque;->remove(Ljava/lang/Object;)Z move-result v0 if-eqz v0, :cond_2 .line 8 sget-object v0, Landroidx/lifecycle/Lifecycle$Event;->ON_DESTROY:Landroidx/lifecycle/Lifecycle$Event; invoke-virtual {p1, v0}, Landroidx/car/app/t0;->c(Landroidx/lifecycle/Lifecycle$Event;)V :cond_2 :goto_0 return-void .end method .method public final w(Landroidx/car/app/t0;Z)V .locals 2 .line 1 invoke-virtual {p1}, Landroidx/car/app/t0;->getLifecycle()Landroidx/lifecycle/Lifecycle; move-result-object v0 invoke-virtual {v0}, Landroidx/lifecycle/Lifecycle;->getCurrentState()Landroidx/lifecycle/Lifecycle$State; move-result-object v0 .line 2 sget-object v1, Landroidx/lifecycle/Lifecycle$State;->RESUMED:Landroidx/lifecycle/Lifecycle$State; invoke-virtual {v0, v1}, Landroidx/lifecycle/Lifecycle$State;->isAtLeast(Landroidx/lifecycle/Lifecycle$State;)Z move-result v1 if-eqz v1, :cond_0 .line 3 sget-object v1, Landroidx/lifecycle/Lifecycle$Event;->ON_PAUSE:Landroidx/lifecycle/Lifecycle$Event; invoke-virtual {p1, v1}, Landroidx/car/app/t0;->c(Landroidx/lifecycle/Lifecycle$Event;)V .line 4 :cond_0 sget-object v1, Landroidx/lifecycle/Lifecycle$State;->STARTED:Landroidx/lifecycle/Lifecycle$State; invoke-virtual {v0, v1}, Landroidx/lifecycle/Lifecycle$State;->isAtLeast(Landroidx/lifecycle/Lifecycle$State;)Z move-result v0 if-eqz v0, :cond_1 .line 5 sget-object v0, Landroidx/lifecycle/Lifecycle$Event;->ON_STOP:Landroidx/lifecycle/Lifecycle$Event; invoke-virtual {p1, v0}, Landroidx/car/app/t0;->c(Landroidx/lifecycle/Lifecycle$Event;)V :cond_1 if-eqz p2, :cond_2 .line 6 sget-object p2, Landroidx/lifecycle/Lifecycle$Event;->ON_DESTROY:Landroidx/lifecycle/Lifecycle$Event; invoke-virtual {p1, p2}, Landroidx/car/app/t0;->c(Landroidx/lifecycle/Lifecycle$Event;)V :cond_2 return-void .end method