message: Impl tab switching
diff: @@ -54,7 +54,15 @@ export class Window {
  const tabBarLayout = new QBoxLayout(Direction.LeftToRight, this.#tabBarContainerWidget);
  tabBarLayout.setContentsMargins(0, 0, 0, 0);
  - this.#tabBar = this.#createTabBar();
  +
  + const tabbarContainer = new QWidget();
  + const tabbarContainerLayout = new QBoxLayout(Direction.LeftToRight, tabbarContainer);
  + this.#tabBar = new QTabBar();
  + this.#tabBar.addEventListener("currentChanged", (index: number) => {
  + this.#handleTabBarChanged(index);
  + });
  + tabbarContainerLayout.addWidget(this.#tabBar);
  +
  tabBarLayout.addWidget(this.#tabBar, 1);
  tabBarLayout.addWidget(this.#createHamburgerMenu(), 0);
  @@ -64,15 +72,6 @@ export class Window {
  topLayout.addWidget(this.#contentStack);
  }
  - #createTabBar(): QTabBar {
  - const tabbarContainer = new QWidget();
  - const tabbarContainerLayout = new QBoxLayout(Direction.LeftToRight, tabbarContainer);
  - const tabBar = new QTabBar();
  - tabbarContainerLayout.addWidget(tabBar);
  -
  - return tabBar;
  - }
  -
  #createHamburgerMenu(): QToolButton {
  this.#hamburgerMenuButton = new QToolButton();
  this.#hamburgerMenuButton.setText("=");
  @@ -118,6 +117,10 @@ export class Window {
  });
  }
  + #handleTabBarChanged(index: number): void {
  + this.#contentStack.setCurrentIndex(index);
  + }
  +
  #createTerminalVisualConfig(): TerminalVisualConfig {
  const config = this.#configDatabase.getGeneralConfig();
  const fontInfo = this.#getFontInfo(config.terminalFont);
  