! Please note that this is a snapshot of our old Bugzilla server, which is read only since May 29, 2020. Please go to gitlab.xfce.org for our new server !
compact windowlist enhancement
Status:
RESOLVED: FIXED
Severity:
enhancement
Product:
Xfdesktop
Component:
General

Comments

Description Zach Carter 2007-03-17 16:54:31 CET
User-Agent:       Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.1) Gecko/20061010 Firefox/2.0
Build Identifier: 

I am a heavy multitasker, with lots of workspaces, and lots of windows open, many of them sticky.   All this means I end up with a *huge* windowlist.   I've made a couple of modifications to the xfdesktop windowlist.c code to make it a little more compact.   Basically, I changed three things: it only prints sticky windows once (for the active workspace), it strips out the code that prints the workspace names, and it ignores empty workspaces.

Does this arrangement appeal to anyone else?   Enough to make it into a
"compact windowlist" setting everyone can use?  Is there a better way to achieve a streamlined windowlist?

Reproducible: Always




See attached patches, built against xfdesktop-4.4.0
Comment 1 Zach Carter 2007-03-17 16:57:57 CET
Created attachment 1039 
Patch #1, tells the windowlist to only list sticky windows once.

Patch #1, tells the windowlist to only list sticky windows once.
Comment 2 Zach Carter 2007-03-17 16:58:57 CET
Created attachment 1040 
Patch #2, does the same thing as patch #1, strips out the code that prints the workspace titles, and doesn't print a seperator for empty workspaces

Patch #2, does the same thing as patch #1, strips out the code that prints the workspace titles, and doesn't print a seperator for empty workspaces
Comment 3 Zach Carter 2007-03-19 17:57:20 CET
BTW, I realize that patch #2 should not be applied to the code as-is.  It is included only to demonstrate the relevant sections of code.   If the decision is made to create any new windowlist settings, I would be happy to donate my time to create them.   
Comment 4 Brian J. Tarricone (not reading bugmail) 2007-03-19 18:30:38 CET
Ok, I see a few possible ways to go here.

1.  I'm not really fond of adding a preference to switch between a 'normal' and 'compact' window list style, but I'm not really too strongly against it either, so that's one way to go.

2.  Come up with a usable compromise between the current window list and the one you've worked up that we can all be happy with, and that will become the one and only window list.

3.  Not totally related, but I also thought about doing submenus - one submenu per workspace.  Might slow down workflow too much to be useful.  Also the option of 'grouping' windows from the same application into submenus.  Again, might be too slow.

BTW, can you attach a screenshot of what your implementation looks like?
Comment 5 Zach Carter 2007-03-19 22:22:33 CET
Created attachment 1043 
Screenshot #1, shows my custom windowlist
Comment 6 Zach Carter 2007-03-19 22:23:36 CET
Created attachment 1044 
Screenshot #2, shows the same set of windows, using the default windowlist
Comment 7 Brian J. Tarricone (not reading bugmail) 2007-03-19 22:46:55 CET
Thanks for the screenshots - the 'before' shot was useful as well.  I've thought about this a bit more, and I think it makes sense to make options for the different pieces of what you want.  So we could have something like:

[ ] Show window list on middle click
    [ ] Show workspace names in list
        [ ] Show windows on each workspace in submenus
    [ ] Show sticky windows only in active workspace

Your third item, ignoring empty workspaces, would be implied by unchecking 'show workspace names in list'.  So you could get the behavior you want by checking options 1 and 4, and leaving 2 and 3 unchecked.
Comment 8 Zach Carter 2007-03-19 23:17:08 CET
Another option to consider, to allow flexibility to the power users out there, without adding lots of extra code to xfdesktop, might be to give the users the ability to map plugins to the mouse click actions, (example: the panel xfce4-windowlist-plugin available on goodies today).  The default in xfdesktop could be a lightweight implementation that satisfies the largest number of users, but with the addition of a plugin architecture, a user would have the ability to customize it however they like, without impacting the xfdesktop code.
Comment 9 Brian J. Tarricone (not reading bugmail) 2007-03-19 23:59:09 CET
No, I'm definitely not interested in implementing even a minimal plugin system for xfdesktop.  That's going a bit too far.

Anyway, other stuff is done.
Comment 10 Zach Carter 2007-03-22 23:39:39 CET
(In reply to comment #9)
> 
> Anyway, other stuff is done.
> 

Looks pretty good, except it's still not ignoring empty workspaces, even though I've checked only options 1 and 4 from your example.

I'll attach screenshots and a patch to show you what I mean.

Comment 11 Zach Carter 2007-03-22 23:42:21 CET
Created attachment 1057 
Ignore Empty Workspaces in Windowlist
Comment 12 Zach Carter 2007-03-22 23:43:38 CET
Created attachment 1058 
Windowlist before ignore_empty_workspaces.patch
Comment 13 Zach Carter 2007-03-22 23:44:39 CET
Created attachment 1059 
Windowlist after ignore_empty_workspaces.patch
Comment 14 Brian J. Tarricone (not reading bugmail) 2007-03-23 00:09:46 CET
Good catch.  Applied.

Bug #3024

Reported by:
Zach Carter
Reported on: 2007-03-17
Last modified on: 2009-07-14

People

Assignee:
Brian J. Tarricone (not reading bugmail)
CC List:
0 users

Version

Attachments

Additional information