github.com/GeniusesGroup/libgo@v0.0.0-20220929090155-5ff932cb408e/protocol/gui-screen.go (about) 1 /* For license and copyright information please see LEGAL file in repository */ 2 3 package protocol 4 5 // Screen indicate some information about screen that a page-state(window) can render to it. 6 // https://developer.mozilla.org/en-US/docs/Web/API/Screen 7 type GUIScreen interface { 8 ID() int 9 Type() ScreenType 10 Mode() ScreenMode 11 12 Height() int 13 Width() int 14 AvailHeight() int 15 AvailWidth() int 16 // The rate where screen updates are performed (per seconds). 17 UpdateRate() int 18 PixelDepth() int 19 ColorDepth() int 20 Orientation() ScreenOrientation 21 22 EventTarget 23 } 24 25 type ScreenType uint8 26 27 const ( 28 ScreenType_Unset ScreenType = iota 29 ScreenType_Primary 30 ScreenType_Secondary 31 ScreenType_Extend 32 ScreenType_Duplicate 33 ) 34 35 // ScreenMode is the window mode (ScreenMode.Option sets it). 36 // Note that mode can be changed programmatically as well as by the user 37 // clicking on the minimize/maximize buttons on the window's title bar. 38 type ScreenMode uint8 39 40 const ( 41 ScreenMode_Unset ScreenMode = iota 42 // Screened is the normal window mode with any OS specific window decorations. 43 ScreenMode_Screened 44 // FullScreen is the full screen window mode. 45 ScreenMode_FullScreen 46 // Minimized is for systems where the window can be minimized to an icon. 47 ScreenMode_Minimized 48 // Maximized is for systems where the window can be made to fill the available monitor area. 49 ScreenMode_Maximized 50 ) 51 52 type ScreenOrientation uint8 53 54 const ( 55 // ScreenOrientation_Any or Unset or Natural allows the window to be freely orientated. 56 ScreenOrientation_Any ScreenOrientation = iota 57 // ScreenOrientation_Landscape constrains the window to landscape orientations. 58 ScreenOrientation_Landscape 59 // ScreenOrientation_Portrait constrains the window to portrait orientations. 60 ScreenOrientation_Portrait 61 ) 62 63 type ScreenEvent uint8 64 65 // absolute?: boolean; 66 // alpha?: number | null; 67 // beta?: number | null; 68 // gamma?: number | null;