[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[E-devel] Showing icons on other desks and screens in the window list (or not).....


I wanted a slightly different behavior than what was available, so I've changed it up a bit on my copy, and wanted others opinions as to whether the change might be suitable for the general population.

Please excuse me if I am getting my terminology (screens vs desks) mixed up.

Presently in e17.037...
when you iconify a window, you can choose whether you want to have them enumerated in the window list or not. If you choose not to, then they are not present at all. If you wish to see them, you see *all* iconified windows on the same screen. Therefore, if you have only one screen like myself, and you switch to one of your other virtual desks... you see them *all* in the list.

I would prefer them to not be there. I prefer to use each virtual desk as entirely separate from the others.

Presently in my patched version...
I have created options in the Configuration Panel -> Advanced -> Window List -> Window List Settings dialog which read:
 - Show iconified windows (<- This was already present)
 - Show iconified windows from other desks
 - Show iconified windows from other screens

and modified the winlist_border_add function with the following rule:
   if (bd->iconic)
	if (!e_config->winlist_list_show_iconified) ok = 0;
	if ((bd->zone != zone) &&
	    (!e_config->winlist_list_show_other_screen_iconified)) ok = 0;	
	if ((bd->desk != desk) &&
	    (!e_config->winlist_list_show_other_desk_iconified)) ok = 0;

This allows me more flexibility over what I see in the window list. If I do not want to see those windows which are iconified on desk0 *from* desk1, then I can uncheck the "Show iconified windows from other desks".

I have given the following default values
	winlist_list_show_iconified = 1
	winlist_list_show_other_desk_iconified = 1
	winlist_list_show_other_screen_iconified = 0
as I think these represent the original behavior before the changes.

One thing I am aware of that I *did not* do (which may need addressing)... I did not modify the IPC_Handlers in any way. I was hoping for comments on that. Is it necessary? Adding something to e_int_config_winlist.h looks, well.... painful.

Your thoughts?  Would anyone be interested in this functionality?