Better top-level window positioning on Cocoa and X11

darcs
slava 2006-11-17 09:36:59 +00:00
parent 97c59a3cf8
commit c3a6e02a38
3 changed files with 14 additions and 1 deletions

View File

@ -1,5 +1,6 @@
+ 0.87:
- live search operations need to hide the minibuffer
- vocab links don't work
- browse modules and vocabs by showing a new list
- get rid of the navigator in the browser tool

View File

@ -79,9 +79,17 @@ IN: gadgets
: set-title ( string world -- )
world-handle second swap <NSString> -> setTitle: ;
: auto-position ( world -- )
dup world-loc { 0 0 } = [
world-handle second -> center
] [
drop
] if ;
: open-window* ( world -- )
dup gadget-window
dup start-world
dup auto-position
world-handle second f -> makeKeyAndOrderFront: ;
: raise-window ( world -- )

View File

@ -36,12 +36,16 @@ USING: alien gadgets hashtables kernel math namespaces sequences ;
USPosition over set-XSizeHints-flags
dpy get -rot XSetWMNormalHints ;
: auto-position ( window loc -- )
{ 0 0 } = [ drop ] [ set-size-hints ] if ;
: create-window ( loc dim visinfo -- window )
pick >r
>r >r >r dpy get root get r> first2 r> first2 0 r>
[ XVisualInfo-depth InputOutput ] keep
[ XVisualInfo-visual create-window-mask ] keep
window-attributes XCreateWindow
dup set-size-hints ;
dup r> auto-position ;
: glx-window ( loc dim -- window context )
choose-visual