using AIStudio.Settings.DataModel; namespace AIStudio.Tools.Rust; /// /// What the runtime reports about the interface size on the screen AI Studio shows on. /// /// /// All percentages count like the scaling of the operating system: device pixels per pixel of the app. /// /// Whether the runtime could measure the screen. /// What went wrong, when it could not. /// The zoom of the webview: 1.0 is the scaling of the system. /// The size on this screen: the one the user chose for it, or else its default size. /// The size of this screen while the user chose none for it: the app default on the screen of a laptop, the scaling of the system on any other. /// What the size of this screen is stored by: its resolution and its physical size. /// The width of the screen in device pixels. /// The height of the screen in device pixels. /// The diagonal of the screen in inches, or null when the screen does not report its size. /// The scaling of the system on this screen. /// The scale AI Studio shows with. /// The scale the app default gives this screen, which is also where its custom scale starts. /// The smallest custom scale this screen allows. /// The largest custom scale this screen allows. public sealed record InterfaceSizeResponse( bool Success, string ErrorMessage, double Zoom, InterfaceSize Size, InterfaceSize DefaultSize, string ScreenKey, int ScreenWidth, int ScreenHeight, double? ScreenDiagonalInches, int SystemPercent, int CurrentPercent, int AppDefaultPercent, int MinPercent, int MaxPercent);