Re: How to prevent windows to be raised at the top of the stack when clicked?
Thank you very much, Sam, It does make sense indeed. I almost abandoned the idea of managing completely the stacking order at application-level, and tried to find a way to distribute my windows into several non-intersecting stacking groups. By using the gdk_window_set_type_hint() function, I could identify 4 groups, from top to bottom of the z-order stack: - Above any other window (including the windows from the application that currently has the focus) : GDK_WINDOW_TYPE_HINT_DOCK - Below that, GDK_WINDOW_TYPE_HINT_UTILITY or GDK_WINDOW_TYPE_HINT_TOOLBAR or GDK_WINDOW_TYPE_HINT_MENU or GDK_WINDOW_TYPE_HINT_DIALOG - Below that, GDK_WINDOW_TYPE_HINT_NORMAL or GDK_WINDOW_TYPE_HINT_DROPDOWN_MENU or GDK_WINDOW_TYPE_HINT_SPLASHSCREEN or GDK_WINDOW_TYPE_HINT_POPUP_MENU or GDK_WINDOW_TYPE_HINT_TOOLTIP or GDK_WINDOW_TYPE_HINT_NOTIFICATION or GDK_WINDOW_TYPE_HINT_COMBO or GDK_WINDOW_TYPE_HINT_DND - And at the very bottom, below any other window, even the windows from other applications that don't have the focus : GDK_WINDOW_TYPE_HINT_DESKTOP I presume that, internally, the WM manages these type hints by setting the values that are described in the link you provided: http://standards.freedesktop.org/wm-spec/wm-spec-latest.html#STACKINGORDER It's not completely satisfactory, because for instance, when tool palettes are clicked they will raise above the currently open dialog box. This drawback doesn't seem to be avoidable (e.g. I also noticed it in The Gimp), but it seems to be the best result I could expect from this OS. By comparison, this feature is quite straightforward under Windows or MacOS. Thanks ! Olivier Sam Spilsbury smspil...@gmail.com wrote: Hi, On Thu, Feb 14, 2013 at 12:17 AM, Olivier Guillion - Myriad oliv...@myriad-online.com wrote: Hi, I'm struggling with this problem for several days now, and can't find any solution. I'm writing an application for Ubuntu using GTK in C language. This application manages various windows (floating palettes, documents, toolbars, etc), with a complex stacking (Z-order) strategy. I would want to manage the stacking myself, by calling gtk_window_restack appropriately. Warning, here be dragons. Applications don't have full control over their stacking order or stacking policy, except if they are override redirect and the window manager does not touch them at all. It works well, except for one thing : when a window is clicked, it seems to be automatically sent to front (top of the stack) by the system before my program receives any signal. For instance, if I put a breakpoint in the focus_in_event or button_press_event signal callback, the window has already been sent to top before the breakpoint is reached. Is there a way to prevent a clicked window from being automatically sent to top of the stack ? Any help would be greatly appreciated. There isn't really. You can set _NET_WM_STATE_BELOW to make the window manager put it on the same layer as all of the below windows [1]. The window manager will still freely raise any window within this layer. Then you can use WM_TRANSIENT_FOR in order to force ordering amongst your windows. That ordering won't be exclusive though - it is entirely possible that other windows can go in-between. The reason why the window is automatically raised is because the window manager has a passive grab on the parent window if its not on the top of the stack. This grab activates and prevents your application from receiving the first mouse click until the window manager has done what its wants to do, namely, place the window at the top of the stack. This is part of the reason why people want client side decorations. I'd suggest reconsidering the design of your application. There are very good reasons why window managers needs to manage the stacking order, allowing applications to override that behaviour generally results in trouble. [1] http://standards.freedesktop.org/wm-spec/wm-spec-latest.html#STACKINGORDER Thank you, Olivier ___ gtk-app-devel-list mailing list gtk-app-devel-list@gnome.org https://mail.gnome.org/mailman/listinfo/gtk-app-devel-list -- Sam Spilsbury ___ gtk-app-devel-list mailing list gtk-app-devel-list@gnome.org https://mail.gnome.org/mailman/listinfo/gtk-app-devel-list
Re: glib-mkenums in glib 2
On 4 Jan 2013, at 10:49, Matthew Brush wrote: From the last few messages on this thread, it kind of sounds like your module search path is not set up correctly, that is, Python doesn't know where to look to import your modules/packages (try print(sys.path) to see which paths I mean). There's good docs about this on python.org (as well as all kinds of other excellent docs/tuts). Hi guys, I suppose everyone's probably forgotten all about this by now - so to recap... I was trying to use Visual Studio to do a complete build of libglib, including the various perl and python scripts such as 'glib-mkenums' and 'gdbus-codegen'. glib-mkenums eventually got solved but I couldn't build gdbus-codegen (which needs Python). My builds were consistently failing at lines which looked like this:- from . import something A few people suggested changing those lines to a simplified version:- import something but initial tests didn't look good, so I gave up. But yesterday I came across this thread at StackOverflow which gave me some further information to consider:- http://stackoverflow.com/questions/72852/how-to-do-relative-imports-in-python and finally, after a lot of patience I've just managed to make the build work! It does seem to be a problem with paths and I'm not yet sure what the minimum changes are. However, if anyone's still interested, I'll simplify it as much as I can and post the solution here sometime. John ___ gtk-devel-list mailing list gtk-devel-list@gnome.org https://mail.gnome.org/mailman/listinfo/gtk-devel-list
Re: glib-mkenums in glib 2
On 19 Feb 2013, at 15:37, Bernhard Schuster wrote: I would like to see that information - even if I have no instant use for it - but I am pretty sure it will help a lot of people digging for information. No problem. At the moment, I've made a couple of dozen changes in my efforts to track this down. I need to start backing them out now until I arrive at the minimum changes needed for making the build work. Might have something in the next day or two. John ___ gtk-devel-list mailing list gtk-devel-list@gnome.org https://mail.gnome.org/mailman/listinfo/gtk-devel-list
Re: glib-mkenums in glib 2
On Feb 19, 2013, at 8:22 AM, John Emmas john...@tiscali.co.uk wrote: On 19 Feb 2013, at 15:37, Bernhard Schuster wrote: I would like to see that information - even if I have no instant use for it - but I am pretty sure it will help a lot of people digging for information. No problem. At the moment, I've made a couple of dozen changes in my efforts to track this down. I need to start backing them out now until I arrive at the minimum changes needed for making the build work. Might have something in the next day or two. Might I suggest a wiki page on GnomeLive, perhaps linked to https://live.gnome.org/GTK+/Win32? Regards, John Ralls ___ gtk-devel-list mailing list gtk-devel-list@gnome.org https://mail.gnome.org/mailman/listinfo/gtk-devel-list
Re: Patch submitted, but no reviews
Hi Ape, I am relatively new to this project. On 26 Dec 2012, I submitted a (mostly) documentation patch, but I have seen no reviews/comments. https://bugzilla.gnome.org/show_bug.cgi?id=690737 Was the same for me. Worked years ago 2 weeks on an overhaul of the theme interface. After a first bunch of suggestions, I didn't get any feedback (not even negative one, which I would have appriciated more than silence). Back then I decided to not pursue improving gtk+ any further What is the normal process? For this bug (patch), I simply created, but did not announce on this mailing list. Should I announce in the future? The best you can probably do, is to personally contact people over IRC/Mail which have worked in the area your patch targets. Regards ___ gtk-devel-list mailing list gtk-devel-list@gnome.org https://mail.gnome.org/mailman/listinfo/gtk-devel-list
Proposed fixes to gspawn-win32-helper.c for newer Microsoft CRTs (was: glib-mkenums in glib 2)
Hi John, I'm sorry if this sounds a bit off-topic, but can you check your Visual Studio 2005 build (if I recalled correctly, that's the version of Visual Studio you are using) of gspawn-win32-helper.exe/gspawn-win32-helper-console.exe whether programs using them are able to complete successfully without being terminated/aborted by Windows. One good example to check here is using the glib-compile-resources utility program in gio/, the other ones would be the spawn-singlethread* and spawn-multithreaded* in $(srcroot)/glib/tests. With blessings, thank you! -Fan, Chun-wei --- Hi list, I have posted a bug report with a proposed patch at https://bugzilla.gnome.org/show_bug.cgi?id=693646, as newer Microsoft CRTs are much more picky on the parameters passed into close() and _get_osfhandle(), so it would be greatly appreciated on my side if people building and using GLib on Windows can check that for me (so far, no feedback yet), especially whether: -People using Visual Studio 2005 or later to build and use GLib using msvcr80.dll or later does not run into the bug -This does not break GLib builds of people using MinGW to build and use GLib (or those using MSVCRT.dll) With blessings, thank you! -Fan, Chun-wei --- *You will need to edit the spawn-singlethread.c and spawn-multithreaded.c and append .exe to the various parts referring to test-spawn-echo, and you will need to build test-spawn-echo.exe before running the spawn tests You can comment out this line:g_test_add_func (/gthread/spawn-script, test_spawn_script); as that test involves running the test scripts in a shell. ___ gtk-devel-list mailing list gtk-devel-list@gnome.org https://mail.gnome.org/mailman/listinfo/gtk-devel-list
problem with treeModelFilter / convert_child_iter_to_iter
Hi, I use python3 / and gobject introspection and I am having some issues with my treeModel / treeModelFilter. In short, when I want to know if a row is visible, I get the child row in the treeModel, and then I call: self.modelfilter.convert_child_iter_to_iter(iter_) But always the second time this is called for a given iter I get this warning: /usr/lib/python3/dist-packages/gi/types.py:47: Warning: g_sequence_iter_get_position: assertion `iter != NULL' failed return info.invoke(*args, **kwargs) Any idea what could cause that? Could it be a problem in my code? I use gtk 3.4.2 / python3-g3 3.4.2 Thanks in advance, -- Yann ___ gtk-list mailing list gtk-list@gnome.org https://mail.gnome.org/mailman/listinfo/gtk-list
gtk_widget_override_color and other things
Hi all, I have been experimenting with code like the following: GdkRGBA color; GdkRGBA black={0.,0.,0.,1.}; gtk_widget_override_color (widget, 0, black); gtk_style_context_get_color (gtk_widget_get_style_context (widget), 0, color); Printing out the values of color shows: 1., 1., 1., 1. ! Is this a bug ? How is it possible to get the override colour for a widget/state ? However, the override seems to work for most built-in widgets. There are a couple of exceptions though: - it seems to be impossible to set the border color for frames - I have tried with override and CSS properties color, background-color, and border-color. - it seems impossible to set the background color for GtkEntry (except when the entry is insensitive), only the selection color can be changed Also I have noticed that gtk3 seems to be a lot slower at rendering than gtk2 in some situations. For example, I have a vbox inside a scrolled window which contains 256 textviews and a checkbutton. It takes over 10 seconds in gtk3 before the window appears. Similarly, just closing the window takes 4 or 5 seconds too. Regards, Salsaman. http://lives.sourceforge.net https://www.ohloh.net/accounts/salsaman ___ gtk-list mailing list gtk-list@gnome.org https://mail.gnome.org/mailman/listinfo/gtk-list
Where are the GTK+1.2 sources?
Where can I download the source for GTK+1.2? The official link from www.gtk.org doesn’t work: http://ftp.gnome.org/pub/gnome/sources/gtk+/1.2/ I have a closed source GNU/Linux application that requires GTK+1.2, which isn't available in my distribution repositories. ___ gtk-list mailing list gtk-list@gnome.org https://mail.gnome.org/mailman/listinfo/gtk-list
Re: Where are the GTK+1.2 sources?
Hi. 2013/2/20 Troy Watson drt...@gmail.com: Where can I download the source for GTK+1.2? The official link from www.gtk.org doesn’t work: http://ftp.gnome.org/pub/gnome/sources/gtk+/1.2/ Sources can be downloaded from [1]. Cheers, Tadej [1] ftp://ftp.gtk.org/pub/gtk/ -- Tadej Borovšak blog.borovsak.si tadeb...@gmail.com tadej.borov...@gmail.com ___ gtk-list mailing list gtk-list@gnome.org https://mail.gnome.org/mailman/listinfo/gtk-list
Re: Where are the GTK+1.2 sources?
Thank you very much! On Wed, Feb 20, 2013 at 4:37 PM, Tadej Borovšak tadeb...@gmail.com wrote: Hi. 2013/2/20 Troy Watson drt...@gmail.com: Where can I download the source for GTK+1.2? The official link from www.gtk.org doesn’t work: http://ftp.gnome.org/pub/gnome/sources/gtk+/1.2/ Sources can be downloaded from [1]. Cheers, Tadej [1] ftp://ftp.gtk.org/pub/gtk/ -- Tadej Borovšak blog.borovsak.si tadeb...@gmail.com tadej.borov...@gmail.com ___ gtk-list mailing list gtk-list@gnome.org https://mail.gnome.org/mailman/listinfo/gtk-list