Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Separate the "group" and "list" options from TrayStyle #309

Closed
joewing opened this issue Apr 16, 2016 · 4 comments
Closed

Separate the "group" and "list" options from TrayStyle #309

joewing opened this issue Apr 16, 2016 · 4 comments

Comments

@joewing
Copy link
Owner

joewing commented Apr 16, 2016

The "group" and "list" attributes specify behavior that really isn't associated with theming, so they shouldn't be part of the TrayStyle tag since this prevents a user from setting them if they using Include to set a JWM theme.

To avoid breaking backward compatibility, I propose adding a new tag with "group" and "list" attributes while still supporting the old method until the next minor version bump.

@technosaurus
Copy link
Contributor

technosaurus commented May 15, 2016

TaskListStyle seems like the obvious place.

I'd also like to see an extra option for tablet mode... something like group="icon" to omit the label. On many tablets, the resolution is so high that I need a 96px icon for easy thumb clicking. With the labels, it either takes too much horizontal space or makes the icon too small.

It looks like group="icon" would need to be changes in at least:

void UpdateTaskBar(void) for bp->itemHeight = GetStringHeight(FONT_TASKLIST) + 12; to account for the layout mode to set width=height

void Render(const TaskBarType *bp) to omit the label.

void ShowClientList(TaskBarType *bar, TaskEntry *tp) to add the label to the top of the menu (since it isn't shown on the button)

I hard coded some hacks to see what it would look like:
example

@joewing
Copy link
Owner Author

joewing commented May 18, 2016

TaskListSyle probably isn't the right place either though since it has to do with themes. "group" and "list" affect behavior more than style. I think they should be broken into separate tags.

Omitting the text next to an icon is something I've thought about before. A work around is to set the width (or height) of the tray such that only the icon fits. That's a little bit ugly though, so an option to disable the text would probably be good on a per-tray basis.

@technosaurus
Copy link
Contributor

I don't think the disabled text belongs in the tray properties either - only the TaskListStyle. If you don't want button labels in the tray, you just don't put them.

When the TaskListStyle is grouped, the label really provides no useful purpose for most apps. It's a bit redundant to see the Firefox icon followed by a label confirming that it is in fact Firefox just like it was when you clicked it in the menu or tray button. It would be really slick to omit the label entirely when it has an icon and if it is missing an icon, overlay as much of the label as possible over the default icon (I am imagining rxvt inside the default square)

@joewing
Copy link
Owner Author

joewing commented Aug 13, 2017

As of snapshot 1637, the "group" and "list" options are part of TaskListStyle instead of TrayStyle.

Also, there is also a "labeled" option on the TaskList element, which can be used to disable the label and show only the icon (due to a previous change).

@joewing joewing closed this as completed Aug 13, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants