---------- Forwarded message ----------
From: jonathan david <[email protected]>
Date: Tue, May 12, 2009 at 10:48 AM
Subject: GTK win32 - g_main_context_iteration during WM_WINDOWPOSCHANGED
To: [email protected]


Hello all,
I set a timer that calls gtk_window_move on a popup window(*1). while the
popup window is moving I move the main application window.
This leads to immediate processing of WM_WINDOWPOSCHANGED message, which in
turn calls g_main_context_iteration
during that iteration, additional call to the timer is made which causes
unexpected behavior (the timer func expects the operation to complete before
it is re-entered, and the first timer func has not yet returned from
the gtk_window_move
call)

should there be a limitation on functions calls that may result in premature
activation of the main loop (during timeout CBs)?
Am I misusing the timer?

there is also a modal_timer_proc called when the window is being dragged,
which calls g_main_context_iteration.
while tracing my problem I tried to blocked this timer and saw that all my
application windows are sill redrawn while one
of them is dragged on top of the others. What should this timer execute
during the modal loop?

Thanks in advance,
Jonathan


*1 - the popup window is set up as:
 GTK_WINDOW(win)->type = GTK_WINDOW_POPUP;
gtk_window_set_decorated(GTK_WINDOW(win), 0);
gtk_window_set_skip_pager_hint(GTK_WINDOW(win), 1);
gtk_window_set_type_hint(GTK_WINDOW(win), GDK_WINDOW_TYPE_HINT_DIALOG);
gtk_window_stick(GTK_WINDOW(win));
gtk_window_set_skip_taskbar_hint(GTK_WINDOW(win), 1);
gtk_window_set_keep_above(GTK_WINDOW(win), 1);
gtk_window_set_accept_focus(GTK_WINDOW(win), 0);
_______________________________________________
gtk-list mailing list
[email protected]
http://mail.gnome.org/mailman/listinfo/gtk-list

Reply via email to