74f11b8203
## Summary of the Pull Request ![603-final](https://user-images.githubusercontent.com/18356694/132585665-afed3210-257a-4fee-9b43-4273a0f5cf69.gif) Adds support for vintage style opacity, on Windows 11+. The API we're using for this exists since the time immemorial, but there's a bug in XAML Islands that prevents it from working right until Windows 11 (which we're working on backporting). Replaces the `acrylicOpacity` setting with `opacity`, which is a uint between 0 and 100 (inclusive), default to 100. `useAcrylic` now controls whether acrylic is used or not. Setting an opacity < 100 with `"useAcrylic": false` will use vintage style opacity. Mouse wheeling adjusts opacity. Whether acrylic is used or not is dependent upon `useAcrylic`. `opacity` will stealthily default to 50 if `useAcrylic:true` is set. ## PR Checklist * [x] Closes #603 * [x] I work here * [x] Tests added/passed * [x] https://github.com/MicrosoftDocs/terminal/pull/416 ## Detailed Description of the Pull Request / Additional comments Opacity was moved to AppearanceConfig. In the future, I have a mind to allow unfocused acrylic, so that'll be important then. ## Validation Steps Performed _just look at it_
57 lines
1.6 KiB
Plaintext
57 lines
1.6 KiB
Plaintext
// Copyright (c) Microsoft Corporation.
|
|
// Licensed under the MIT license.
|
|
|
|
import "IKeyBindings.idl";
|
|
import "IControlAppearance.idl";
|
|
|
|
namespace Microsoft.Terminal.Control
|
|
{
|
|
enum ScrollbarState
|
|
{
|
|
Visible = 0,
|
|
Hidden
|
|
};
|
|
|
|
enum TextAntialiasingMode
|
|
{
|
|
Grayscale = 0,
|
|
Cleartype,
|
|
Aliased
|
|
};
|
|
|
|
// Class Description:
|
|
// TerminalSettings encapsulates all settings that control the
|
|
// TermControl's behavior. In these settings there is both the entirety
|
|
// of the Core ITerminalSettings interface, and any additional settings
|
|
// for specifically the control.
|
|
interface IControlSettings requires Microsoft.Terminal.Core.ICoreSettings, Microsoft.Terminal.Control.IControlAppearance
|
|
{
|
|
String ProfileName;
|
|
|
|
Boolean UseAcrylic;
|
|
ScrollbarState ScrollState;
|
|
|
|
String FontFace;
|
|
Int32 FontSize;
|
|
Windows.UI.Text.FontWeight FontWeight;
|
|
String Padding;
|
|
Windows.Foundation.Collections.IMap<String, UInt32> FontFeatures;
|
|
Windows.Foundation.Collections.IMap<String, Single> FontAxes;
|
|
|
|
Microsoft.Terminal.Control.IKeyBindings KeyBindings;
|
|
|
|
Boolean CopyOnSelect;
|
|
Boolean FocusFollowMouse;
|
|
|
|
String Commandline;
|
|
String StartingDirectory;
|
|
String EnvironmentVariables;
|
|
|
|
TextAntialiasingMode AntialiasingMode;
|
|
|
|
// Experimental Settings
|
|
Boolean ForceFullRepaintRendering;
|
|
Boolean SoftwareRendering;
|
|
};
|
|
}
|