Web lists-archives.com

Re: Gtk::Widget::is_mapped ()

On Sun, Mar 3, 2019 at 6:26 AM Emmanuele Bassi via gtk-devel-list <gtk-devel-list@xxxxxxxxx> wrote:
On Sun, 3 Mar 2019 at 12:58, John Emmas <john@xxxxxxxxxxxxxxxxxx> wrote:

For example... let's say the widget is a top-level window.  If it's currently displayed on screen but there's some other window hiding it (maybe from a totally different app) would 'is_visible()' return true or false?

That's entirely different, and you should have said so at the very beginning of the thread. Yes, both "visible" and "mapped" would be set to true because you called show() on the window, and a window has no parents, so once it's visible and realized, it'll be mapped as well; there is no way to know, from a toolkit perspective, if a top level is being partially, or totally, covered by some other window, either in the same process or from a different process. That information is only available to the window manager.

John should really know that there's code to do this (to the best extent possible) within the Ardour source code at libs/gtkmm2ext/visibility_tracker.cc :)))

It works (to whatever extent it does work) by handling GtkEventVisibility notifications. Hopefully this is still possible in GTK3 ?

gtk-devel-list mailing list