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

Navi (bookmarked page) menu reworked #11997

Open
wants to merge 6 commits into
base: master
Choose a base branch
from

Conversation

Commodore64user
Copy link
Contributor

@Commodore64user Commodore64user commented Jun 9, 2024

Well, here we go again. In my never ending quest to improve our menus, I present to you, your new "Navi" (bookmarked page) menu.

This is by far the least aggressive of all changes proposed so far, it is purely a reorganisation of settings, with NO new additions, pretty much just a UI/UX job here.

Before:

After:

Inside table of contents:

I haven't touched the "Bookmarks" submenu at all, as I am not entirely sure what is going on there. I mean, some changes were proposed but reverted shortly after so, should you all want me to go ahead with it, I'll get it over and done with.


This change is Reviewable

@poire-z
Copy link
Contributor

poire-z commented Jun 9, 2024

For me, Reference pages and Hide non-linear fragments, appearing only when the book has these features (which is quite rare, may be less rare these days for Reference pages, but still only in < 30 % of my books), needs to be in that top/first level menu, so we know the features are here.

No Page browser in first menu ?! I hope it's because you did your screenshot on NT where it is not enabled (but then, why is it there on your first screenshot?)

I also like the Alt/Custom Toc to be in the first submenu. Having them in the second will be a bit unpractical, just for the sake of prettyness.

@Commodore64user
Copy link
Contributor Author

No Page browser in first menu ?! I hope it's because you did your screenshot on NT where it is not enabled (but then, why is it there on your first screenshot?)

Much like with every other before/after photo shoot out there, there is a bit of trickery involved. The models are not the same, shocking 😮. One is KV the other is K4.

needs to be in that top/first level menu, so we know the features are here.

Well, now tap the screen once more and you can find out ;). More elegant this way.

I also like the Alt/Custom Toc to be in the first submenu. Having them in the second will be a bit unpractical, just for the sake of prettyness.

This is why we can't have nice things...

@jonnyl2
Copy link
Contributor

jonnyl2 commented Jun 9, 2024

  1. What's wrong with "Settings"? "Preferences" implies that you change something to your preference and then you're done. Dot leaders are a preference, as are chapter lengths. (But they are settings as well.) Custom TOC and Hidden Flows are in most cases not preferences – they are just settings, and may vary by book. "Settings" encompasses both, "preferences" only the former.
  2. The checkbox already means 'enable'. If you disable the checkbox, do you "disable the enable custom hidden flows"?
  3. I agree with @poire-z that usability would suffer with this rearrangement.

@Commodore64user
Copy link
Contributor Author

  1. What's wrong with "Settings"? "Preferences" implies that you change something to your preference and then you're done. Dot leaders are a preference, as are chapter lengths. (But they are settings as well.) Custom TOC and Hidden Flows are in most cases not preferences – they are just settings, and may vary by book. "Settings" encompasses both, "preferences" only the former.

Nothing wrong with it, what I am not okay with is the over reliance on it, it makes the programme feel unpolished, cheap and amateurish. Grab your device and have a little tour through the menu, you will find a lot of instances of it. I made my stance very clear before (perhaps not to you), settings, should only be in one place.

custom top and hidden flows are preferences you make, you could not use them, but you do because you prefer it that way. Apple called all their 'settings' for a very long time "system preferences" so... there is that as well

  1. The checkbox already means 'enable'. If you disable the checkbox, do you "disable the enable custom hidden flows"?

This I agree with, however, I can't have twice the exact same name listed, so the "enable" is kind of a necessary evil.

  1. I agree with @poire-z that usability would suffer with this rearrangement.

How? Alternative ToC is a one click solution, and custom ToC isn't set there anyway. Furthermore, they are all related to ToC so I can't just separate one just because.

@Frenzie
Copy link
Member

Frenzie commented Jun 10, 2024

In any event, we will not be using "preferences." Randomly using synonyms to avoid repetition feels "unpolished, cheap and amateurish."

@poire-z
Copy link
Contributor

poire-z commented Jun 10, 2024

you will find a lot of instances of it. I made my stance very clear before (perhaps not to you), settings, should only be in one place.

You did. We discussed that elsewhere in the past. And those of us who discussed it with you made our stance very clear too: we don't agree, we have no problem with multiple Settings> in different places where the place is obviously telling what these settings apply to.

I'm not that fond of having it at the first item: image
I prefer it below the group of items it apply to: image when these "Settings" don't apply to all the items in that menu (ie. Book map, Page browser...).
We have it at the top in the "Search" tab: image
because it gathers settings for ALL the items. (I'm still not really fond and used to having it at the top, but well...).

Anyway, if they were to be all at the top, it would feel indeed quite unpolished/... if there were to NOT have the same text, and each be a random synonym just to avoid repetition.
image image
I would expect and want repetition, for it to look polished. Moreover, it is just below the tab with an open connector, it's obvious to what these settings relate to.

@Frenzie
Copy link
Member

Frenzie commented Jun 10, 2024

I prefer it below the group of items it apply to:

Definitely. The top is where you'd want the most important or most frequently used action. You might quibble whether that's ToC or Book map, but it won't be settings.

because it gathers settings for ALL the items. (I'm still not really fond and used to having it at the top, but well...).

Yes, I'm definitely not fond of that one. I'd probably prefer it at the bottom.

@Commodore64user
Copy link
Contributor Author

Definitely. The top is where you'd want the most important or most frequently used action. You might quibble whether that's ToC or Book map, but it won't be settings.

to be fair, I don't access any of these 'widgets' (ToC, BookMap et al.) via the menu. They are all assigned to a gesture so the only thing I personally need is their "settings". Don't you all have gestures for that stuff?

it makes the programme feel unpolished, cheap and amateurish.

This was a poor choice of words. In any case, my intention has been to somewhat improve things (at least where I think they could benefit from improving), but it seems like the only thing I have successfully done is offend everyone. I am not sure if I should continue pushing for changes like this one.

so that is where I am at, unsure how to proceed...

@mergen3107
Copy link
Contributor

Don't you all have gestures for that stuff?

TOC is top-left corner tap for me, PageBrowser I set up as a gesture (and access Book Map from within it, if needed - rarely), Bookmarks are also on a gesture.

However, I agree that Settings should not be the top choice. According to regular (please don't beat me to death for my exact words, I don't have a UX degree :D ) paradigm, first "tab" in the top toolbar is File, which has New, then Open, then something else, then Exit as the last item. Settings (or rather Preferences) are usually in the second "tab" called Edit, having almost always a last position.

So the idea here is that (I think) most people got used to have something functional (i.e. just areas of the software that work) first, before willing to dig into the settings/preferences.

@mergen3107
Copy link
Contributor

Here are examples from Firefox on Ubuntu:
image

image

@poire-z
Copy link
Contributor

poire-z commented Jun 14, 2024

They are all assigned to a gesture so the only thing I personally need is their "settings". Don't you all have gestures for that stuff?

We probably do - and even for settings, we don't access them very often, so they don't really need to be more accessible than the "launch the feature" menu items.
So, the top menu is mostly aimed at new users (or the users that may not like to remember gestures), and we need to have it explicitely show the features. We don't need to make it cryptic/obscure and less natural/obvious just because some of us only needs bits of it.
(Moreover, if you mostly use gestures, why spend so much time on the top menu ? :))

(Also, for the first left menu, I never dropped the "action" items and never put them in a submenu, because I thought about NT users, who need them quickly reachable. Now, they have your hardware keys combinations to get at them more easily - but it's like gestures, some users will probably not like them, and prefer just reaching stuff via the menu like they have done for years.)

This was a poor choice of words. In any case, my intention has been to somewhat improve things (at least where I think they could benefit from improving), but it seems like the only thing I have successfully done is offend everyone. I am not sure if I should continue pushing for changes like this one.

I'm not offended by your choice of words (at least not these ones - I probably was by complications and tab leaders :))
I'm more offended exhausted rather by your method.
You go at things with your few-months-old user experience with the app, and you somehow assume the current choice of menu layout was done without thinking (that is a bit offending :)) while many things have actually a reason (what I explained above about non-linear fragments and reference pages) and they had been discussed.
You have some strong opinion and choices, and I understand it's easier to go working at implementing that alone, and quickly, and be done.
But often, we don't agree, and being proposed some/your single final solution, we are in a "defensive" posture (to be honest, I hesitated writing the word a few times, but most of the times - UI or wording PRs -, I feel like I'm fighting against "sabotage" targeting our lovely app :)).

But it's possible our accumulated choices have resulted in not the best general layout - but nobody among us probably cares. So, it's good somebody like you have the energy, interest, and time to invest in thinking about it.
So, may be start with questions, ask why these choices, propose some ideas and alternative layout/ordering, see what we think, add some suggestions as text snippets, so we can see early if we can reach something without strong oppositions, before investing time in the coding (and asking for code help and make me an accomplice to the sabotaging :))

so that is where I am at, unsure how to proceed...

Well, you proposed your solution, but it's just the first - we don't like all of it, but we mention some requirements and problems. So, as you have the time and energy, give it some thoughts, try to think about an alternative that you won't dislike too much (because we probably won't accept the one your like most), and that fit our requirements and don't trigger our stated oppostions.
May be we'll appreciate your second or third proposal - no promise, but discuss it.
If you can't think of alternatives, or are fed up and lack the energy, well, no problem closing it - and eventually get back at it later.

(For the record, my saddest losing against others' opinion is #4659 (comment) - it still hurts in my belly when I see https://github.com/koreader/koreader/wiki/multiswipes - so I just don't visit that page :))

@Frenzie
Copy link
Member

Frenzie commented Jun 14, 2024

@Commodore64user Not offended, but we've established that as a group we disagree that seeing the same word settings multiple times in different contexts for the same general concept is a bad thing for the purposes of a computer interface, which is a different medium than a written text where you might want to avoid using the exact same turn of phrase five times in a row.

  • Something other than settings can be better, not mentioning anything at all can be better: gesture manager isn't gesture settings, highlight style isn't highlight style settings, etc.
  • All instances of settings can theoretically be replaced with a synonym like preferences, options, environment, set-up (or "set up …"), configuration (or "configure …")
  • But we like settings
  • And we don't want randomly mixed synonyms; a deviation should have a clear purpose other than showing off thesaurus skills
  • Nor avoidance of the word settings at the cost of clarity. This might look like the same point, but preferences and complications are not the same thing. We don't think complications quite works, but it could work. While preferences means the exact same thing as settings and options.

@mergen3107

However, I agree that Settings should not be the top choice. According to regular (please don't beat me to death for my exact words, I don't have a UX degree :D ) paradigm, first "tab" in the top toolbar is File, which has New, then Open, then something else, then Exit as the last item. Settings (or rather Preferences) are usually in the second "tab" called Edit, having almost always a last position.

It's not quite a UX principle, although it's not not one either. The principle is more fundamental than that. We scan diagonally from the top left to the bottom right. Aspects like size, white space, color etc. can influence where attention is drawn, but basically you'll note both paper and electronic "interfaces" often work in what is termed Z and F patterns. Also related is Fitts' Law, which in the simplest terms means we want the most important stuff the closest to where we just put our finger to open the menu.

The traditional menu layout is a result of all of that combined with a ton of testing and a dash of technical limitations.

@Frenzie
Copy link
Member

Frenzie commented Jun 14, 2024

it still hurts in my belly when I see https://github.com/koreader/koreader/wiki/multiswipes - so I just don't visit that page :))

Incidentally that shows the insertion of a complications-equivalent that doesn't impact much of anything and hopefully made someone smile. ;-)
image

@Commodore64user
Copy link
Contributor Author

Commodore64user commented Jun 15, 2024

What you seem to dismiss as "your few-months-old user experience with the app" gives me an upper hand over all of you, I can see the shortcomings (new users face) that all of you no longer see. You are already so familiar with it that you cannot put yourselves in the shoes of inexperienced users (i.e Little Timmy). Sadly I might lose that power soon too.

why spend so much time on the top menu ? :))

because I care about Little Timmy, I don't want people to give up on the app (almost my case) because it is extra difficult (there is already an unavoidable learning curve here) to set their sleep screen message or other. I thought I had already proven myself that my changes are not "sabotage" or malicious in any way, in fact quite the opposite (I think), I am all for improvement. Alas, it feels like I am in a constant fight with everyone, like caring does not pay.

Regarding the placement of the "preferences" or "settings", I am honestly not bothered if it goes at the top or bottom. I specifically put it at the top for consistency with the "Search" one, an also because it now had all the settings available in that menu. But in any case, I am not sure what other alternatives there are to essentially what I can only describe as: keeping it the way it is ("Reference pages and Hide non-linear fragments on the top menu", "the Alt/Custom Toc to be in the first submenu. Having them in the second will be a bit unpractical, just for the sake of prettyness")

But it's possible our accumulated choices have resulted in not the best general layout - but nobody among us probably cares. So, it's good somebody like you have the energy, interest, and time to invest in thinking about it.

And yet here I am, defeated. Because it simply does not pay to care. I really wanted to help improve things, in perhaps the only way I can, but it is very difficult when you are essentially fencing with every single person about the most minute of things, even using the name of the actual things seems to be a problem. The best analogy I can think of right now is politicians opening new hospitals and cutting ribbons, everyone loves those, but fixing the existing ones [hospitals], nah nobody cares about that stuff.

@poire-z
Copy link
Contributor

poire-z commented Jun 16, 2024

I thought I had already proven myself that my changes are not "sabotage" or malicious in any way

I know they are not.

What you seem to dismiss as "your few-months-old user experience with the app" gives me an upper hand over all of you,

You are right. But you are not playing this game alone, you need to also care about the other players, and not crush them with a royal flush every time :)

because I care about Little Timmy, I don't want people to give up on the app

I know you do, and that's good. (But you're not the only one who cares about him.)
But caring too much about that imaginary new user, you seem to care little about real old users, their experience, their feedback, how they have been using the app for years. And indeed, not caring about them does not seem to pay :/

Alas, it feels like I am in a constant fight with everyone, like caring does not pay.
And yet here I am, defeated. Because it simply does not pay to care. I really wanted to help improve things, in perhaps the only way I can, but it is very difficult when you are essentially fencing with every single person

Every single person can not be wrong :)
I don't like fighting/fencing, but we've all been gentlemen enough to keep it civil and explain our point of views. It is indeed difficult, for you and even for us, it takes time and energy to explain things, but I'm not giving up :) I hope you won't.

in perhaps the only way I can

So, if this way does not work/pay, may be try to learn/invent another way ? Listen, read, suggest, compromise, adapt.

(In most of the projects I have worked on in my life, I've usually been quite solitary: I get an idea, implement it, make all the decisions alone, and they are obviously the best :) because I'm good at what I do and other people are less or do not know or do not care (and they are usually happy with the end result). It feels a bit like how you do.
KOReader may be the first project I've been involded with where there has been real teamwork. It's sometimes hard, having to negotiate, compromise, slow down, delay... but in the end, because the other people are competent, cultured, funny, friendly, it's been quite confortable: no deadline, we have time, I don't carry all the decisions alone on my shoulders. I have now more pleasure working on it than on any other solitary office work/projects.
And I had my share of difficult times here :) There's been a few PRs that I spent 40 hours on, push here, and a 3mn 2-lines single comment by @Frenzie or @NiLuJe about a thing I didn't think or care about (and wtf do they care?!) shove me back working again on it and testing it all again for 10 more hours.... I have hated these people too :))

@Frenzie
Copy link
Member

Frenzie commented Jun 16, 2024

What you seem to dismiss as "your few-months-old user experience with the app" gives me an upper hand over all of you, I can see the shortcomings (new users face) that all of you no longer see. You are already so familiar with it that you cannot put yourselves in the shoes of inexperienced users (i.e Little Timmy). Sadly I might lose that power soon too.

I'm not sure how helpful the Little Timmy metaphor is. Would Little Timmy just use the stock Kindle/Kobo software or is Little Timmy a power user? That doesn't in itself mean we should or shouldn't do things differently, but in trying to reach the widest possible audience while preferably tying said audience to their store, they'll frequently make different choices.

because I care about Little Timmy, I don't want people to give up on the app

I'm not necessarily sure if I don't want them to give up. There are many alternative apps that they can or should use if they don't like this one. Exceptions apply of course for things like your specific non-touch perspective, which is very helpful.

The best analogy I can think of right now is politicians opening new hospitals and cutting ribbons, everyone loves those, but fixing the existing ones [hospitals], nah nobody cares about that stuff.

If we didn't care we'd simply merge. :-)

Regarding the placement of the "preferences" or "settings", I am honestly not bothered if it goes at the top or bottom. I specifically put it at the top for consistency with the "Search" one, an also because it now had all the settings available in that menu. But in any case, I am not sure what other alternatives there are to essentially what I can only describe as: keeping it the way it is ("Reference pages and Hide non-linear fragments on the top menu", "the Alt/Custom Toc to be in the first submenu. Having them in the second will be a bit unpractical, just for the sake of prettyness")

That mostly describes how things came to be and why they are as they are. Sometimes explicitly, sometimes implicitly. Explicitly meaning you can read discussions in some issue or PR making similar or even identical points, implicitly meaning the PR author went through that during the design phase and we agreed with the reasoning without going in depth.


Regarding the alternative table of contents, if we flutter our eyelashes at @hius07 maybe it'll magically appear as a hamburger menu on the ToC itself. By which I mean to say that solutions can also lie outside of the top menu, or be accessible from both locations.

@pazos
Copy link
Member

pazos commented Jun 16, 2024

I'm not sure how helpful the Little Timmy metaphor is [...]

Lets play with it 😄

There're other things besides menu reordering/rewording that could improve the life of little Timmies :)

We, currently, ship the full package, with everything enabled.
Little Timmy will be overwhelmed by menus, with options for things he will probably never use or settings that are difficult to explain without the proper context.

My suggestion, for 1st time users, is to ship with all plugins disabled (except coverbrowser, gestures and language support). This will reduce the cognitive overhead of learning KOReader, as the core program is pretty minimal.

Also, since plugins are now opt-in put manage plugins on front of the "tools" menu and document on the quick start guide.

Polishing menus for core options is important, but the impact of the action alone won't help little Timmy as much as you would think.

@Frenzie
Copy link
Member

Frenzie commented Jun 17, 2024

One thing that Microsoft does, or at least tried at some point in the past, is to put something like an "enable all plugins" button in the quickstart guide.

@zwim
Copy link
Contributor

zwim commented Jun 18, 2024

One thing that Microsoft does, or at least tried at some point in the past, is to put something like an "enable all plugins" button in the quickstart guide.

!
I am not fond of enabling all and everything (aka MS).
I am also not a fan of nothing enabled (Linux rtfm).

I might want so see some guided experience level:
Beginner
Intermediate
Expert

with interests in:
Optimized standby times
total connectivity
assistents (like autowarmth)
tranalations

and a good multilinual glossary (autotranslated).

Maybe I can get that for XMas?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

7 participants