diff --git a/src/renderer/lib/config.ts b/src/renderer/lib/config.ts index 7342eccf..ec211df8 100644 --- a/src/renderer/lib/config.ts +++ b/src/renderer/lib/config.ts @@ -59,6 +59,7 @@ export enum MultiMonitorMode { export type WinboatConfigObj = { scale: number; scaleDesktop: number; + desktopSize: string, smartcardEnabled: boolean; rdpMonitoringEnabled: boolean; passedThroughDevices: PTSerializableDeviceInfo[]; @@ -78,6 +79,7 @@ const currentVersion = new WinboatVersion(import.meta.env.VITE_APP_VERSION); const defaultConfig: WinboatConfigObj = { scale: 100, scaleDesktop: 100, + desktopSize: "fullscreen", smartcardEnabled: false, rdpMonitoringEnabled: false, passedThroughDevices: [], diff --git a/src/renderer/lib/winboat.ts b/src/renderer/lib/winboat.ts index d6d52f19..8fea33bf 100644 --- a/src/renderer/lib/winboat.ts +++ b/src/renderer/lib/winboat.ts @@ -652,7 +652,8 @@ export class Winboat { if (app.Path == InternalApps.WINDOWS_DESKTOP) { args = args.concat([ - "+f", + this.#wbConfig?.config.desktopSize == "fullscreen" ? "+f" : "", + `/size:${this.#wbConfig?.config.desktopSize}`, this.#wbConfig?.config.smartcardEnabled ? "/smartcard" : "", `/scale:${this.#wbConfig?.config.scale ?? 100}`, ]); diff --git a/src/renderer/views/Config.vue b/src/renderer/views/Config.vue index 8ffb1e84..f9752927 100644 --- a/src/renderer/views/Config.vue +++ b/src/renderer/views/Config.vue @@ -332,7 +332,72 @@
General +
+ + + +
+
+ +

Desktop Size

+
+

+ Controls what size the Windows desktop interface is. +

+
+
+ + + + Fullscreen + + + 3840x2160 + + + 2560x1440 + + + 1920x1080 + + + 1680x1050 + + + 1600x900 + + + 1536x864 + + + 1440x900 + + + 1366x768 + + + 1280x960 + + + 1280x720 + + + 1024x768 + + + 800x600 + + + +
+
+