So in OS X one of the screens has a 22 pixel menu bar.  But due to
reasons I haven't fully figured out, the maximum vertical size you can
make a window before it goes off the bottom of the screen is the
screen height - 44.  I don't have a dock at the bottom, but if I did
it would probably subtract some more pixels.

But anyway, when I create an Fl_Window apparently there's code that
figures how much room is available and reduces the height as
necessary.  But that same code apparently doesn't apply to the resize
method, since it will happily resize past the edges of the screen.  It
seems to make it buggy too, since it can then jump about randomly when
I drag it.

So firstly, Fl_Window::resize on the mac should probably clip to the
screen size as it does on creation, right?

Secondly, is there a portable way to find out the usable space on a
screen?  Fl::screen_xywh() just gives the resolution which isn't
enough to create or maximize windows.

Thirdly, I wanted to see if the behaviour had been fixed in recent
versions so I did an svn update, but it looks like the build is
broken, coincidentally also with a bunch of screen-related symbols:

Compiling Fl_Native_File_Chooser_MAC.mm...
Fl_cocoa.mm: In function ‘void -[FLDelegate
windowDidResignKey:](FLDelegate*, objc_selector*, NSNotification*)’:
Fl_cocoa.mm:1046: error: ‘class Fl_Window’ has no member named
‘fullscreen_active’
Fl_cocoa.mm: In function ‘void -[FLDelegate
windowDidBecomeKey:](FLDelegate*, objc_selector*, NSNotification*)’:
Fl_cocoa.mm:1057: error: ‘class Fl_Window’ has no member named
‘fullscreen_active’
Fl_cocoa.mm: At global scope:
Fl_cocoa.mm:2039: error: no ‘void Fl_Window::fullscreen_x()’ member
function declared in class ‘Fl_Window’
Fl_cocoa.mm: In member function ‘void Fl_Window::fullscreen_x()’:
Fl_cocoa.mm:2040: error: ‘_set_fullscreen’ was not declared in this scope
Fl_cocoa.mm:2045: error: ‘FL_FULLSCREEN’ was not declared in this scope
Fl_cocoa.mm: At global scope:
Fl_cocoa.mm:2048: error: no ‘void Fl_Window::fullscreen_off_x(int,
int, int, int)’ member function declared in class ‘Fl_Window’
Fl_cocoa.mm: In member function ‘void Fl_Window::fullscreen_off_x(int,
int, int, int)’:
Fl_cocoa.mm:2049: error: ‘_clear_fullscreen’ was not declared in this scope
Fl_cocoa.mm:2053: error: ‘FL_FULLSCREEN’ was not declared in this scope
Fl_cocoa.mm: In static member function ‘static void Fl_X::make(Fl_Window*)’:
Fl_cocoa.mm:2171: error: ‘class Fl_Window’ has no member named
‘fullscreen_active’
Fl_cocoa.mm: In function ‘NSImage* imageFromText(const char*, int*, int*)’:
Fl_cocoa.mm:3228: error: ‘create_offscreen_with_alpha’ is not a member
of ‘Fl_Quartz_Graphics_Driver’
Fl_cocoa.mm: In function ‘NSImage* defaultDragImage(int*, int*)’:
Fl_cocoa.mm:3257: error: ‘create_offscreen_with_alpha’ is not a member
of ‘Fl_Quartz_Graphics_Driver’

_______________________________________________
fltk-dev mailing list
fltk-dev@easysw.com
http://lists.easysw.com/mailman/listinfo/fltk-dev

Reply via email to