private void initializeLeftPropertiesPanel(@NotNull Provider<TabBuilder> tabBuilderProvider) {
    final TabSelectHandler consoleHandler =
        new TabSelectHandler() {
          @Override
          public void onTabSelected() {
            if (selectedRunner != null) {
              selectedRunner.setActiveTab(locale.runnerTabConsole());
            }
          }
        };

    consoleTab =
        tabBuilderProvider
            .get()
            .presenter(consoleContainer)
            .title(locale.runnerTabConsole())
            .visible(REMOVABLE)
            .selectHandler(consoleHandler)
            .scope(EnumSet.of(RUNNERS))
            .tabType(RIGHT)
            .build();

    leftPropertiesContainer.addTab(consoleTab);

    TabSelectHandler propertiesHandler =
        new TabSelectHandler() {
          @Override
          public void onTabSelected() {
            if (RUNNERS.equals(panelState.getState())) {
              propertiesContainer.show(selectedRunner);

              if (selectedRunner != null) {
                selectedRunner.setActiveTab(locale.runnerTabProperties());
              }
            } else {
              propertiesContainer.show(selectedEnvironment);
            }
          }
        };

    propertiesTab =
        tabBuilderProvider
            .get()
            .presenter(propertiesContainer)
            .selectHandler(propertiesHandler)
            .title(locale.runnerTabProperties())
            .visible(REMOVABLE)
            .scope(EnumSet.allOf(State.class))
            .tabType(RIGHT)
            .build();

    leftPropertiesContainer.addTab(propertiesTab);
  }