Re: gdk_window_resize, height > 16 bit ?



Hans Breuer <hans breuer org> writes:

> while investigating why testgtk::layout doesn't show on anything
> on win98 but works fine under winNT I stumble over the call of
> 
>       gdk_window_resize (layout->bin_window,
> 			 MAX (layout->width, allocation->width),
> 			 MAX (layout->height, allocation->height));
> 
> which passes it's sizes unfiltered to the windowing backend.
> This fails on win9x because it is not forgiving with its real 16 bit
> limitation in GDI. (The passed in value 128000 becomes negative I guess).
> 
> At other places in Gdk there is some handling of windowing limits
> (see gdk_window_compute_position, gdk_window_premove and friends).
> 
> Now my question: What's the suggested way to fix it ?

gdk_window_premove() and friends are emulating 32-bit coordinates
on a 16-bit windowing system. If you can't depend on your
windowing system handling bigger windows, you'll have to do
that as well, though I wouldn't advise trying to copy
the code in gdkgeometry-x11.c ... it's very specific to
scrolling using various X tricks.

I think windows has a ScrollWindow() type API call that
may be useful in the usgae...

Regards,
                                        Owen




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]