diff --git a/ide/frames/project_application_options.pas b/ide/frames/project_application_options.pas
index 7946969faa..2e8e6579e6 100644
--- a/ide/frames/project_application_options.pas
+++ b/ide/frames/project_application_options.pas
@@ -244,6 +244,7 @@ begin
DpiLevelNames[xmdaTrue] := dlgPODpiAwarenessOn;
DpiLevelNames[xmdaPerMonitor] := dlgPODpiAwarenessOldOffNewPerMonitor;
DpiLevelNames[xmdaTruePM] := dlgPODpiAwarenessOldOnNewPerMonitor;
+ DpiLevelNames[xmdaPerMonitorV2] := dlgPODpiAwarenessOldOnNewPerMonitorV2;
ExecutionLevelLabel.Caption := dlgPOExecutionLevel;
for ExecutionLevel in TXPManifestExecutionLevel do
diff --git a/ide/lazarusidestrconsts.pas b/ide/lazarusidestrconsts.pas
index 5d843b55a5..640e5d206e 100644
--- a/ide/lazarusidestrconsts.pas
+++ b/ide/lazarusidestrconsts.pas
@@ -2596,6 +2596,7 @@ resourcestring
dlgPODpiAwarenessOn = 'on';
dlgPODpiAwarenessOldOffNewPerMonitor = 'Vista-8: off, 8.1+: per monitor';
dlgPODpiAwarenessOldOnNewPerMonitor = 'Vista-8: on, 8.1+: per monitor';
+ dlgPODpiAwarenessOldOnNewPerMonitorV2 = 'Vista-8: on, 8.1/10+: per monitor/V2';
dlgPOUIAccess = 'UI Access (uiAccess)';
dlgPOAsInvoker = 'as invoker (asInvoker)';
dlgPOHighestAvailable = 'highest available (highestAvailable)';
diff --git a/ide/w32manifest.pas b/ide/w32manifest.pas
index bd521d08a6..f0e69f1c3c 100644
--- a/ide/w32manifest.pas
+++ b/ide/w32manifest.pas
@@ -55,7 +55,8 @@ type
xmdaFalse,
xmdaTrue,
xmdaPerMonitor,
- xmdaTruePM
+ xmdaTruePM,
+ xmdaPerMonitorV2
);
type
@@ -100,9 +101,18 @@ const
'False',
'True',
'Per-monitor',
+ 'True/PM',
'True/PM'
);
+ ManifestDpiAwarenessValues: array[TXPManifestDpiAware] of string = (
+ '',
+ '',
+ '',
+ '',
+ 'PerMonitorV2, PerMonitor'
+ );
+
implementation
const
@@ -140,6 +150,7 @@ const
' '#$D#$A+
' '#$D#$A+
' %s'#$D#$A+
+ ' %s'#$D#$A+
' '#$D#$A+
' '#$D#$A+
'';
@@ -232,7 +243,8 @@ begin
TextDesc,
ExecutionLevelToStr[ExecutionLevel],
BoolToStr(UIAccess, 'true', 'false'),
- ManifestDpiAwareValues[DpiAware]]);
+ ManifestDpiAwareValues[DpiAware],
+ ManifestDpiAwarenessValues[DpiAware]]);
Res.RawData.Write(ManifestFileData[1], Length(ManifestFileData));
AResources.AddSystemResource(Res);
end;