Hey Hannes,

thanks for the patch. Would be cleaner if you put a corresponding if for 
the e_border_layer_set in the e_border_unfullscreen function.

-Sthitha

Hannes Janetzek wrote:
> Hi,
> this patch adds the option to have windows above fullscreen windows.
> This is for example nice to reach the hidden shelves when working with
> fullscreen.  For me this behavior could even be the default (without
> option) since it is quite irritating to use alt-tab but then the
> selected window doesnt appear. 
>
> Regards,
> Hannes 
> ------------------------------------------------------------------------
>
> Index: e_config.c
> ===================================================================
> RCS file: /var/cvs/e/e17/apps/e/src/bin/e_config.c,v
> retrieving revision 1.242
> diff -u -r1.242 e_config.c
> --- e_config.c        12 May 2007 22:40:03 -0000      1.242
> +++ e_config.c        20 May 2007 22:19:52 -0000
> @@ -428,6 +428,7 @@
>     E_CONFIG_VAL(D, T, maximize_policy, INT); /**/
>     E_CONFIG_VAL(D, T, allow_manip, INT); /**/
>     E_CONFIG_VAL(D, T, border_fix_on_shelf_toggle, INT); /**/
> +   E_CONFIG_VAL(D, T, allow_above_fullscreen, INT); /**/
>     E_CONFIG_VAL(D, T, kill_if_close_not_possible, INT); /**/
>     E_CONFIG_VAL(D, T, kill_process, INT); /**/
>     E_CONFIG_VAL(D, T, kill_timer_wait, DOUBLE); /**/
> @@ -1399,7 +1400,11 @@
>     e_config->menu_favorites_show = 1;
>     e_config->menu_apps_show = 1;
>     IFCFGEND;
> -   
> +
> +   IFCFG(0x0119);
> +   e_config->allow_above_fullscreen = 1;
> +   IFCFGEND;
> +
>     e_config->config_version = E_CONFIG_FILE_VERSION;   
>       
>  #if 0 /* example of new config */
> @@ -1462,6 +1467,7 @@
>     E_CONFIG_LIMIT(e_config->maximize_policy, E_MAXIMIZE_FULLSCREEN, 
> E_MAXIMIZE_DIRECTION);
>     E_CONFIG_LIMIT(e_config->allow_manip, 0, 1);
>     E_CONFIG_LIMIT(e_config->border_fix_on_shelf_toggle, 0, 1);
> +   E_CONFIG_LIMIT(e_config->allow_above_fullscreen, 0, 1);
>     E_CONFIG_LIMIT(e_config->kill_if_close_not_possible, 0, 1);
>     E_CONFIG_LIMIT(e_config->kill_process, 0, 1);
>     E_CONFIG_LIMIT(e_config->kill_timer_wait, 0.0, 120.0);
> Index: e_config.h
> ===================================================================
> RCS file: /var/cvs/e/e17/apps/e/src/bin/e_config.h,v
> retrieving revision 1.155
> diff -u -r1.155 e_config.h
> --- e_config.h        12 May 2007 22:40:03 -0000      1.155
> +++ e_config.h        20 May 2007 22:19:52 -0000
> @@ -169,6 +169,7 @@
>     int         maximize_policy; // GUI
>     int         allow_manip; // GUI
>     int         border_fix_on_shelf_toggle; // GUI
> +   int         allow_above_fullscreen; // GUI
>     int         kill_if_close_not_possible;
>     int         kill_process;
>     double      kill_timer_wait;
> Index: e_int_config_window_manipulation.c
> ===================================================================
> RCS file: /var/cvs/e/e17/apps/e/src/bin/e_int_config_window_manipulation.c,v
> retrieving revision 1.18
> diff -u -r1.18 e_int_config_window_manipulation.c
> --- e_int_config_window_manipulation.c        11 Apr 2007 15:37:04 -0000      
> 1.18
> +++ e_int_config_window_manipulation.c        20 May 2007 22:19:54 -0000
> @@ -28,6 +28,7 @@
>     int border_fix_on_shelf_toggle;
>     int border_raise_on_mouse_action;
>     int border_raise_on_focus;
> +   int allow_above_fullscreen; 
>  };
>  
>  /* a nice easy setup function that does the dirty work */
> @@ -75,6 +76,7 @@
>     cfdata->border_fix_on_shelf_toggle = e_config->border_fix_on_shelf_toggle;
>     cfdata->border_raise_on_mouse_action = 
> e_config->border_raise_on_mouse_action;
>     cfdata->border_raise_on_focus = e_config->border_raise_on_focus;
> +   cfdata->allow_above_fullscreen = e_config->allow_above_fullscreen;
>  }
>  
>  static void *
> @@ -125,6 +127,7 @@
>     e_config->border_fix_on_shelf_toggle = cfdata->border_fix_on_shelf_toggle;
>     e_config->border_raise_on_mouse_action = 
> cfdata->border_raise_on_mouse_action;
>     e_config->border_raise_on_focus = cfdata->border_raise_on_focus;
> +   e_config->allow_above_fullscreen = cfdata->allow_above_fullscreen;
>     e_config_save_queue();
>     return 1; /* Apply was OK */
>  }
> @@ -186,6 +189,8 @@
>     e_widget_framelist_object_append(of, ob);
>     ob = e_widget_check_add(evas, _("Raise when clicking to focus"), 
> &(cfdata->border_raise_on_focus));
>     e_widget_framelist_object_append(of, ob);
> +   ob = e_widget_check_add(evas, _("Allow windows to be above fullscreen 
> window"), &(cfdata->allow_above_fullscreen));
> +   e_widget_framelist_object_append(of, ob);
>     e_widget_table_object_append(ot, of, 1, 0, 1, 1, 1, 1, 1, 1);
>     
>     of = e_widget_framelist_add(evas, _("Resistance"), 0);
> Index: e_border.c
> ===================================================================
> RCS file: /var/cvs/e/e17/apps/e/src/bin/e_border.c,v
> retrieving revision 1.590
> diff -u -r1.590 e_border.c
> --- e_border.c        7 May 2007 18:01:42 -0000       1.590
> +++ e_border.c        20 May 2007 22:20:03 -0000
> @@ -1990,8 +1990,9 @@
>       bd->client_inset.b = 0;
>  
>       /* e_zone_fullscreen_set(bd->zone, 1); */
> +        if(!e_config->allow_above_fullscreen)
> +       e_border_layer_set(bd, 200);
>  
> -     e_border_layer_set(bd, 200);
>       if ((evas_list_count(bd->zone->container->zones) > 1) || (policy == 
> E_FULLSCREEN_RESIZE))
>         {
>            e_border_move_resize(bd, bd->zone->x, bd->zone->y, bd->zone->w, 
> bd->zone->h);
>   
> ------------------------------------------------------------------------
>
> -------------------------------------------------------------------------
> This SF.net email is sponsored by DB2 Express
> Download DB2 Express C - the FREE version of DB2 express and take
> control of your XML. No limits. Just data. Click to get it now.
> http://sourceforge.net/powerbar/db2/
> ------------------------------------------------------------------------
>
> _______________________________________________
> enlightenment-devel mailing list
> enlightenment-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
>   


-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to