mirror of
https://github.com/SteamDeckHomebrew/decky-frontend-lib.git
synced 2026-05-25 20:38:52 +02:00
* change: Add SteamClient types Steam Version: 1690583737 Steam Client Build Date: Sat, Jul 29 02:44 UTC -08:00 * new: Document some SteamClient interfaces Using the SDH discord server, GitHub and some personal findings, I tried to document as much SteamClient functions as I can. * new: Document some SteamClient interfaces - part 2 * new: Document some SteamClient interfaces - part 3 * new: Document some SteamClient interfaces - part 4 * new: Document some SteamClient interfaces - part 5 * new: Document some SteamClient interfaces - part 6 * new: Document some SteamClient interfaces - part 7 * change: Update interfaces to Steam Version 1691097434 Steam Version: 1691097434 Steam Client Build Date: Fri, Aug 4 04:54 UTC -08:00 * new: Document some SteamClient interfaces - part 8 * new: Document some SteamClient interfaces - part 9 * change: Update interfaces to Steam Version 1694466342 Steam Version: 1694466342 Steam Client Build Date: Tue, Sep 12 04:59 UTC +08:00 * new: Document some SteamClient interfaces - part 10 * new: Document some SteamClient interfaces - part 11 * new: Document some SteamClient interfaces - part 12 * new: Document some SteamClient interfaces - part 13 * new: Document some SteamClient interfaces - part 14 * change: Update interfaces to Steam Version 1698260427 Steam Version: 1698260427 Steam Client Build Date: Thu, Oct 26 2:40 AM UTC -08:00 * new: Document some SteamClient interfaces - part 10 * change: Update interfaces to Steam Version 1700160213 Steam Version: 1700160213 Steam Client Build Date: Fri, Nov 17 2:23 AM UTC +08:00 * docs(SteamClient): document some interfaces * change: Fix formatting style * docs(SteamClient): document protobufs & System.Report * docs(SteamClient): document CMsgMonitorInfo * docs(SteamClient): document remaining messages * docs(SteamClient): update interfaces to Steam Version 1702515219 Steam Version: 1702515219 Steam Client Build Date: Thu, Dec 14 00:36 UTC -08:00 * docs(SteamClient): update interfaces to Steam Version 1704329464 Steam Version: 1704329464 Steam Client Build Date: Thu, Jan 4 12:23 AM UTC -08:00 * docs(SteamClient): update interfaces to Steam Version 1705630720 Steam Version: 1705630720 Steam Client Build Date: Fri, Jan 19 1:58 AM UTC -08:00 * docs(SteamClient): update interfaces to Steam Version 1706914901 Steam Version: 1706914901 Steam Client Build Date: Fri, Feb 2 8:46 PM UTC -08:00 * docs(SteamClient): update interfaces to Steam Version 1709920887 Steam Version: 1709920887 Steam Client Build Date: Thu, Mar 7 5:29 PM UTC -08:00 * docs(SteamClient): update interfaces to Steam Version 1710786209 Steam Version: 1710786209 Steam Client Build Date: Mon, Mar 18 7:07 PM UTC -08:00 * docs(SteamClient): document even more interfaces * new: Document some SteamClient interfaces - part 15 * Fix QAM button bit number * new: Document some SteamClient interfaces - part 16 * change: Update interfaces to Steam Version 1714854927 Steam Version: 1714854927 Steam Client Build Date: Sat, May 4 7:11 AM UTC -08:00 * change: Refactor and reorganize SteamClient * docs(SteamClient): document more notification interfaces * docs(SteamClient): document more interfaces * docs(SteamClient): add some descriptions * docs(SteamClient): remove duplicate types * change: Fix rebase errors * Updated ControllerStateChange * Fix typo * docs(SteamClient): update interfaces to Steam Version 1723601482 Steam Version: 1723601482 Steam Client Build Date: Wed, Aug 14 01:51 UTC -08:00 * docs(SteamClient): update interfaces to 1725654351 * docs(SteamClient): update interfaces to 1730416762 * docs(SteamClient): forgot some stuff * docs(SteamClient): add missed interfaces * docs(SteamClient): update enums * docs(SteamClient): add some things and move stuff around * docs(SteamClient): move shared enums/interfaces to a separate file * docs(SteamClient): add more stuff * docs(SteamClient): reword some things * docs(SteamClient): new BrowserView things * docs(SteamClient): review fixes * move to src/globals --------- Co-authored-by: ricewind012 <58827198+ricewind012@users.noreply.github.com> Co-authored-by: Party Wumpus <48649272+PartyWumpus@users.noreply.github.com> Co-authored-by: Xander <xander@isxander.dev>
91 lines
2.3 KiB
TypeScript
91 lines
2.3 KiB
TypeScript
import { EUIMode, Unregisterable } from "./shared";
|
|
import {EOSType} from "./system";
|
|
|
|
export interface UI {
|
|
EnsureMainWindowCreated(): void;
|
|
|
|
ExitBigPictureMode(): void;
|
|
|
|
GetDesiredSteamUIWindows(): Promise<SteamWindow[]>;
|
|
|
|
/**
|
|
* Gets information about whether your OS will be unsupported in the future or not.
|
|
*/
|
|
GetOSEndOfLifeInfo(): Promise<OSEndOfLifeInfo>;
|
|
|
|
/**
|
|
* Retrieves the current UI mode.
|
|
* @returns the current UI mode.
|
|
*/
|
|
GetUIMode(): Promise<EUIMode>;
|
|
|
|
NotifyAppInitialized(): void;
|
|
|
|
RegisterDesiredSteamUIWindowsChanged(callback: () => void): Unregisterable;
|
|
|
|
/**
|
|
* Registers a callback function to be called when a convar's value gets changed.
|
|
*
|
|
* Hard crashes if such a convar does not exist or if you can't set it.
|
|
*
|
|
* @param convar The ConVar to watch.
|
|
* @param callback The callback function to be called.
|
|
*/
|
|
RegisterForClientConVar(convar: string, callback: (value: string) => void): Unregisterable;
|
|
|
|
/**
|
|
* @todo param{0,1} are enums
|
|
*/
|
|
RegisterForErrorCondition(callback: (param0: number, param1: number) => void): Unregisterable;
|
|
|
|
RegisterForKioskModeResetSignal(callback: () => void): Unregisterable;
|
|
|
|
/**
|
|
* @todo This fires multiple times.
|
|
*/
|
|
RegisterForStartupFinished(callback: () => void): Unregisterable;
|
|
|
|
RegisterForUIModeChanged(callback: (mode: EUIMode) => void): Unregisterable;
|
|
|
|
ResetErrorCondition(): void;
|
|
|
|
/**
|
|
* Sets the UI mode to the specified value.
|
|
* @param mode The UI mode to set.
|
|
*/
|
|
SetUIMode(mode: EUIMode): void;
|
|
}
|
|
|
|
export enum EWindowType {
|
|
MainGamepadUI,
|
|
OverlayGamepadUI,
|
|
Keyboard,
|
|
ControllerConfigurator,
|
|
VR,
|
|
MainDesktopUI,
|
|
DesktopLogin,
|
|
OverlayDesktopUI,
|
|
SteamChinaReviewLauncher,
|
|
}
|
|
|
|
export interface OSEndOfLifeInfo {
|
|
bOSWillBeUnsupported: boolean;
|
|
osType: EOSType;
|
|
}
|
|
|
|
/**
|
|
* The following might have more correct information:
|
|
* https://github.com/SteamDatabase/SteamTracking/blob/master/Protobufs/webuimessages_sharedjscontext.proto
|
|
*/
|
|
export interface SteamWindow {
|
|
appid: number;
|
|
hwndParent: number;
|
|
nBrowserID: number;
|
|
strAppName: string;
|
|
unID: number;
|
|
unPID: number;
|
|
windowType: EWindowType;
|
|
x: number;
|
|
y: number;
|
|
}
|