Window layering
Mark Waddingham
mark at livecode.com
Wed Jul 19 13:51:00 EDT 2017
On 2017-07-19 18:59, Mark Waddingham via use-livecode wrote:
>> - set the layer ouf a stack below all other windows (opposite
>> of systemWindow)
>
> It might be useful - although probably not implementable (judging by
> how hard it is to get the backdrop to work reliably on all platforms).
This case is a *lot* harder.
The Mac Window Server does define various levels for windows
(https://developer.apple.com/documentation/coregraphics/cgwindowlevelkey?language=objc).
However, the two below 'Normal' are not referenced in Cocoa - they are
likely reserved for the OS. Indeed, the 'Desktop' level is the actual
Desktop window (the thing which shows all the icons and such). I suspect
that you have no control over ordering within those levels at all - so
the chance of it doing what you want there is minimal.
On Linux it is a similar story, there are a number of levels - the one
which (a long time ago) used to be used for backdrops, is now reserved
to the 'Desktops' (e.g. Gnome or KDE). If you have one of these desktops
running, if you set a window to that level (via the appropriate hint) it
goes underneath so you don't see it.
On Win32 it probably could be 'hacked' in a similar way we do the
backdrop there now - however, you then have the problem that you have to
make it work in the sea of other application windows completely
unrelated to your own windows, which is a potential problem.
Warmest Regards,
Mark.
--
Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/
LiveCode: Everyone can create apps
More information about the use-livecode
mailing list