mirror of
https://github.com/microsoft/terminal.git
synced 2025-12-10 18:43:54 -06:00
This PR allows users to enable the tab bar in fullscreen mode. A new setting; "showTabsFullscreen"; has been added which accepts a boolean value. When `true`, then the tab bar will remain visible when the terminal app is fullscreen. If the value is `false` (default), then the tab bar is hidden in fullscreen. When the tab bar is visible in fullscreen, the min/max/close controls are hidden to maintain the expected behaviour of a fullscreen app. ## Validation Steps Performed All unit tests are passing. Manually verified that when the "launchMode" setting is "fullscreen" and the "showTabsFullscreen" setting is `true`, the tab bar is visible on launch. Manually verified that changing the setting at runtime causes the tab bar to be shown/hidden immediately (if the terminal is currently fullscreen). Manually verified that the new "showTabsFullscreen" setting is honoured regardless of whether "showTabsInTitlebar" is set to `true` or `false`. Closes #11130
41 lines
2.0 KiB
Plaintext
41 lines
2.0 KiB
Plaintext
// Copyright (c) Microsoft Corporation.
|
|
// Licensed under the MIT license.
|
|
|
|
import "EnumEntry.idl";
|
|
|
|
#include "ViewModelHelpers.idl.h"
|
|
|
|
namespace Microsoft.Terminal.Settings.Editor
|
|
{
|
|
runtimeclass GlobalAppearanceViewModel : Windows.UI.Xaml.Data.INotifyPropertyChanged
|
|
{
|
|
GlobalAppearanceViewModel(Microsoft.Terminal.Settings.Model.GlobalAppSettings globalSettings);
|
|
|
|
IInspectable CurrentTheme;
|
|
static String ThemeNameConverter(Microsoft.Terminal.Settings.Model.Theme theme);
|
|
Windows.Foundation.Collections.IObservableVector<Microsoft.Terminal.Settings.Model.Theme> ThemeList { get; };
|
|
|
|
IInspectable CurrentNewTabPosition;
|
|
Windows.Foundation.Collections.IObservableVector<Microsoft.Terminal.Settings.Editor.EnumEntry> NewTabPositionList { get; };
|
|
|
|
IInspectable CurrentTabWidthMode;
|
|
Windows.Foundation.Collections.IObservableVector<Microsoft.Terminal.Settings.Editor.EnumEntry> TabWidthModeList { get; };
|
|
|
|
Boolean InvertedDisableAnimations;
|
|
|
|
void ShowTitlebarToggled(IInspectable sender, Windows.UI.Xaml.RoutedEventArgs args);
|
|
|
|
PERMANENT_OBSERVABLE_PROJECTED_SETTING(Boolean, AlwaysShowTabs);
|
|
PERMANENT_OBSERVABLE_PROJECTED_SETTING(Boolean, ShowTabsFullscreen);
|
|
PERMANENT_OBSERVABLE_PROJECTED_SETTING(Boolean, ShowTabsInTitlebar);
|
|
PERMANENT_OBSERVABLE_PROJECTED_SETTING(Boolean, UseAcrylicInTabRow);
|
|
PERMANENT_OBSERVABLE_PROJECTED_SETTING(Boolean, ShowTitleInTitlebar);
|
|
PERMANENT_OBSERVABLE_PROJECTED_SETTING(Boolean, AlwaysOnTop);
|
|
PERMANENT_OBSERVABLE_PROJECTED_SETTING(Boolean, AutoHideWindow);
|
|
PERMANENT_OBSERVABLE_PROJECTED_SETTING(Boolean, AlwaysShowNotificationIcon);
|
|
PERMANENT_OBSERVABLE_PROJECTED_SETTING(Boolean, MinimizeToNotificationArea);
|
|
PERMANENT_OBSERVABLE_PROJECTED_SETTING(Boolean, ShowAdminShield);
|
|
PERMANENT_OBSERVABLE_PROJECTED_SETTING(Boolean, EnableUnfocusedAcrylic);
|
|
}
|
|
}
|