diff --git a/news/4.34/images/hidpi-setting-preference.png b/news/4.34/images/hidpi-setting-preference.png new file mode 100644 index 000000000..d8756fab0 Binary files /dev/null and b/news/4.34/images/hidpi-setting-preference.png differ diff --git a/news/4.34/images/rescaling_disabled.png b/news/4.34/images/rescaling_disabled.png new file mode 100644 index 000000000..c4648863c Binary files /dev/null and b/news/4.34/images/rescaling_disabled.png differ diff --git a/news/4.34/images/rescaling_enabled.png b/news/4.34/images/rescaling_enabled.png new file mode 100644 index 000000000..b18e8b60b Binary files /dev/null and b/news/4.34/images/rescaling_enabled.png differ diff --git a/news/4.34/platform.html b/news/4.34/platform.html index d0953575d..80fa67e82 100644 --- a/news/4.34/platform.html +++ b/news/4.34/platform.html @@ -112,6 +112,48 @@

Themes and Styling

General Updates

+ + Monitor-Specific UI Rescaling (Experimental, Windows only) + +

+ This update introduces a preference to enable an improved, monitor- and resolution-specific UI scaling on Windows. + The feature makes each window adapt its scaling to the monitor it is currently placed on in a sharp, + resolution-specific way and without requiring the application to restart. + When using multiple windows, each of them will adapt its scaling to the monitor it is placed on. + When enabling the feature, it replaces the existing scaling support for high-resolution monitors that is limited to + initializing the application's window according to the scaling of the primary monitor at startup and adapting to + monitors with other scale values only via blurry scaling or via an application restart. +

+

+ To enable this feature, check the Monitor-specific UI scaling box on the Appearance preference page + (Window > Preferences > General > Appearance), as shown in the image below. + In addition to the enhanced UI scaling, this preference also enables the Edge browser as default for an improved + browser scaling experience. + The feature is still under development, thus marked as experimental and disabled by default. We encourage users + to explore this feature and share their feedback to help us improve the functionality. +

+

+ Monitor-Specific UI Rescaling Preference +

+

+ The functionality can also be used in pure SWT applications. See this news on the according SWT API changes. +

+

+ The images below demonstrate the scaling behavior in an extract of an Eclipse application when moving the window + from a primary monitor with 100% scaling to another monitor with 200% scaling, first having the feature disabled and + second having it enabled. +

+

+ With monitor-specific UI rescaling disabled: + Monitor-Specific UI Rescaling Disabled +

+

+ With monitor-specific UI rescaling enabled: + Monitor-Specific UI Rescaling Enabled +

+ + diff --git a/news/4.34/platform_isv.html b/news/4.34/platform_isv.html index 505271019..9826f8d91 100644 --- a/news/4.34/platform_isv.html +++ b/news/4.34/platform_isv.html @@ -44,6 +44,35 @@

Platform and Equinox API

SWT Changes

+ + Monitor-Specific UI Rescaling in Display Class (Windows only) + +

+ The API methods + org.eclipse.swt.widgets.Display#setRescalingAtRuntime(boolean) and + org.eclipse.swt.widgets.Display#isRescalingAtRuntime() have been added to SWT. + These methods allow to enable, disable, and retrieve the state of the "rescaling at runtime" functionality. + When enabled, it makes shells and their contents sharply rescale according to the current monitor they are placed on + or moved to. +

+

+ Note that in order to work as expected, enabling the rescaling at runtime functionality will also set the DPI + awareness of the Display's thread to PerMonitorV2. + This happens even if the DPI awareness of the Java process itself is set to some different value. +

+

+ To ensure backwards compatibility, this feature is disabled by default. The feature has to be enabled for a + Display it is supposed to be used for. It needs to be activated before a shell is created to take + proper effect. + As an example, the feature can be enabled in Eclipse applications via a preference, see this news. +

+

+ Note: Those methods will currently only have an effect on Windows. +

+ +