getting-things-gnome / gtg

Getting Things GNOME! trunk
https://wiki.gnome.org/Apps/GTG
GNU General Public License v3.0
552 stars 166 forks source link

Improve consistency between the "Start Tomorrow" headerbar deferment menu and the right-click task deferment menu #550

Open nekohayo opened 3 years ago

nekohayo commented 3 years ago

A spiritual successor to #244, with some usability nitpicks that have been bugging me ever since, but that I never found to be critical enough to consider it a big problem, hence the low-priority tag on this ticket. 244's last comments also hints at some technological blockers that may be a problem for a more advanced implementation, but I guess this ticket here is more about harmonizing the labels and the ordering of the items, so probably would work no matter what widgets we use.

What's been bothering me a lot in daily use so far has been the inconsistency between the headerbar's deferment menubutton:

Screenshot from 2020-03-28 20-36-07

...and the contextual (right-click) deferment menu:

foo

The options present, are not identical from one to another. I think mostly it boils down to:

I wonder if those menu item labels allow having span styling on text, i.e. something where we could make a portion of a text label only 70% opaque, so that you could have for example "Friday (in 2 days)" with the parenthesis part faded out a little bit? This is probably a little bit nightmarish from a translatable plurals strings perspective (i.e. how do you assemble/mangle the strings if at all) though. But it could open the opportunity to have the best of both worlds, including being able to have more precision for the context-menu-specific actions by having semi-transparent things in parentheses, like for example "Next Week (in 7 days)", "Next Month (Feb 26th)", "Next Year (Jan 26th)"...

Out of curiosity, I went to check how the popular "Todoist" web app presents it, and this is how they lay things out in their popover widget:

todoist scheduling popover

...but obviously they have more flexibility than us "native GTK" in that regard. Also, I'm not saying we should aim to imitate this, I'm just illustrating the "grayed out secondary text on a menu row" thing. I still think GTG's days of the week quick rescheduling actions are more flexible than just fixed arbitrary notions of "first day of the work week" and "first day of the week-end", but then Todoist does have the luxury of a calendar picker widget embedded directly that shows only the current and upcoming weeks (instead of GTK's calendar picker that shows the whole current month, even past weeks, which is noise).

nekohayo commented 2 years ago

The issue gets partially solved by MR #778's commits so far, they make it look like this:

https://user-images.githubusercontent.com/479401/153547991-9347cb54-be4a-42e6-94b4-017d49035b74.mp4

This ticket could either be kept open afterwards for anyone wanting to implement the rest (i.e. finding a way to dynamically modify those right-click menu items, and/or maybe replacing that stuff by fancier widgets like the other screenshots shown above from Todoist), or it could be closed (for milestone targetting) and split into a new ticket, though the new ticket would probably end up with a fair chunk of description from this one to copy-paste. But maybe GTK4 would change a lot of things here anyway (?)...