Set selected on paper-tabs always after render.

We only set it when viewState changes, but it can keep it state, when
navigating from other pages after viewState has been reset.

Google-Bug-Id: b/278254859
Release-Notes: skip
Change-Id: Idc859b697b9f06cbb5bb496430ba85a16779b5c0
(cherry picked from commit 9600e01e6579c4a02995b6733f2eba390be5f834)
diff --git a/polygerrit-ui/app/elements/change/gr-change-view/gr-change-view.ts b/polygerrit-ui/app/elements/change/gr-change-view/gr-change-view.ts
index 9acc910..5ceeeaf 100644
--- a/polygerrit-ui/app/elements/change/gr-change-view/gr-change-view.ts
+++ b/polygerrit-ui/app/elements/change/gr-change-view/gr-change-view.ts
@@ -1639,6 +1639,16 @@
     `;
   }
 
+  override updated() {
+    const tabs = [...queryAll<HTMLElement>(this.tabs!, 'paper-tab')];
+    const tabIndex = tabs.findIndex(t => t.dataset['name'] === this.activeTab);
+    assert(tabIndex !== -1, `tab ${this.activeTab} not found`);
+
+    if (this.tabs!.selected !== tabIndex) {
+      this.tabs!.selected = tabIndex;
+    }
+  }
+
   private readonly handleScroll = () => {
     if (!this.isViewCurrent) return;
     this.scrollTask = debounce(
@@ -1680,22 +1690,10 @@
   }
 
   setActiveTab(e: SwitchTabEvent) {
-    if (!this.tabs) return;
-    const tabs = [...queryAll<HTMLElement>(this.tabs, 'paper-tab')];
-    if (!tabs) return;
-
     const tab = e.detail.tab;
-    const tabIndex = tabs.findIndex(t => t.dataset['name'] === tab);
-    assert(tabIndex !== -1, `tab ${tab} not found`);
-
-    if (this.tabs.selected !== tabIndex) {
-      this.tabs.selected = tabIndex;
-    }
-
     this.getViewModel().updateState({tab});
-
     if (e.detail.tabState) this.tabState = e.detail.tabState;
-    if (e.detail.scrollIntoView) this.tabs.scrollIntoView({block: 'center'});
+    if (e.detail.scrollIntoView) this.tabs!.scrollIntoView({block: 'center'});
   }
 
   /**