1 ! (c)2009 Joe Groff bsd license
2 USING: alien.c-types alien.data alien.libraries alien.syntax
3 classes.struct kernel math system-info.windows windows.types ;
10 { cyBottomHeight int } ;
12 STRUCT: DWM_BLURBEHIND
16 { fTransitionOnMaximized BOOL } ;
18 : <MARGINS> ( l r t b -- MARGINS )
19 MARGINS <struct-boa> ; inline
21 : full-window-margins ( -- MARGINS )
22 -1 -1 -1 -1 <MARGINS> ; inline
24 << "dwmapi" "dwmapi.dll" stdcall add-library >>
28 FUNCTION: HRESULT DwmExtendFrameIntoClientArea ( HWND hWnd, MARGINS* pMarInset ) ;
29 FUNCTION: HRESULT DwmEnableBlurBehindWindow ( HWND hWnd, DWM_BLURBEHIND* pBlurBehind ) ;
30 FUNCTION: HRESULT DwmIsCompositionEnabled ( BOOL* pfEnabled ) ;
32 CONSTANT: WM_DWMCOMPOSITIONCHANGED HEX: 31E
34 : composition-enabled? ( -- ? )
36 [ 0 <int> [ DwmIsCompositionEnabled drop ] keep *int c-bool> ]