Re: [AD] Non-blocking menus block when active, patch

[ Thread Index | Date Index | More lists.liballeg.org/allegro-developers Archives ]


> Also, I am more than a bit concerned about the usage of yield_timeslice()
> in all dialogs where a menu is active.  If the menu is non-blocking, then
> the app may very well not be idle, despite the menu being active.  If the
> app IS active, then it should know well enough to yield timeslices.  A
> compromise would be to provide an alternate d_menu_proc() that does
> automatically yield timeslices.  Forcing it for any case where menus are
> in use seems likely to cause reduced app responsiveness.

I've applied the following patch:

Index: src/gui.c
===================================================================
RCS file: /cvsroot/alleg/allegro/src/gui.c,v
retrieving revision 1.61
diff -u -p -r1.61 gui.c
--- src/gui.c   8 Feb 2003 22:47:05 -0000       1.61
+++ src/gui.c   15 Mar 2003 08:49:07 -0000
@@ -878,8 +878,6 @@ int update_dialog(DIALOG_PLAYER *player)

    /* redirect to update_menu() whenever a menu is activated */
    if (active_menu_player) {
-      yield_timeslice();
-
       if (update_menu(active_menu_player))
         return TRUE;


-- 
Eric Botcazou




Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/