         event-loop
     ] [ cleanup-win32-ui ] [ ] cleanup ;
 
-M: windows-ui-backend beep ( -- )
+M: windows-ui-backend beep
     0 MessageBeep drop ;
 
 M: windows-ui-backend system-alert

        [ drop SW_RESTORE ShowWindow win32-error=0/f ]
    } 2cleave ;

M: windows-ui-backend (set-fullscreen) ( ? world -- )
    [ enter-fullscreen ] [ exit-fullscreen ] if ;

M: windows-ui-backend (fullscreen?) ( world -- ? )
    handle>> hWnd>>
    [ hwnd>RECT ] [ fullscreen-RECT ] bi
    [ get-RECT-dimensions 2array 2nip ] same? ;

M: windows-ui-backend resize-window ( world dim -- )
  [ handle>> hWnd>> dup hwnd>RECT get-RECT-top-left ]
  [ first2 FALSE ] bi* MoveWindow win32-error=0/f ;

M: windows-ui-backend ui-backend-available?
    t ;

: (opaque-pixels) ( world -- pixels )
    [ handle>> bits>> ] [ dim>> ] bi bitmap>byte-array (make-opaque) ;

M: windows-ui-backend raise-window*
    handle>> [ hWnd>> SetFocus drop ] when* ;

M: windows-ui-backend set-title
    handle>>
    dup title>> [ free ] when*
    swap utf16n malloc-string
