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

Use unicode bullets for tristate check symbols #46

Merged
merged 2 commits into from
Jun 15, 2024
Merged

Conversation

Jollywatt
Copy link
Contributor

This is a tiny PR, meant more as a reminder for something to think about!

Problem

The symbol "×" has the connotation of excluding something or crossing something out, which can confusing especially when it is not obvious whether the initial state is "everything selected" or "nothing selected", e.g., when performing a split.

"[~] foo/bar                                                                  [-]"
"  (~) Section 1/1                                                            (-)"
"    [×] - before text 1⏎                                                        "
"    [×] - before text 2⏎                                                        "
"    [×] + after text 1⏎                                                         "
"    [ ] + after text 2⏎      

Proposed

Using "●" for selected and "◐" for partial:

"[◐] foo/bar                                                                  [-]"
"  (◐) Section 1/1                                                            (-)"
"    [●] - before text 1⏎                                                        "
"    [●] - before text 2⏎                                                        "
"    [●] + after text 1⏎                                                         "
"    [ ] + after text 2⏎    

@Jollywatt
Copy link
Contributor Author

I should add that, while this helps especially for a diffedit context, I still think it remains ambiguous in a split context. Related: algmyr@063a3be

@arxanas
Copy link
Owner

arxanas commented May 25, 2024

I'm trying this out to make sure it works well! Seems good so far. The only thing to note is that when the full circle is highlighted/focused, it becomes an empty circle (which has the opposite semantics), whereas the current x doesn't have different meaning depending on its filled status. But we don't use an empty circle glyph, so I'm not expecting this to be a real issue.

@Jollywatt
Copy link
Contributor Author

Good point; we should avoid using [○] and [●] together.

P.S. circles are one option, but simply replacing × with would accomplish just as much.

[ ] [~] [×] # current
[ ] [~] [✲]
[ ] [~] [✓]
[ ] [-] [✓]
[ ] [◐] [●]
[ ] [◖] [●]
[ ] [◩] [■]
[←] [⇆] [→] # left/right analogy
[<] [≶] [>]
[🔧] [🛠️] [🔨]

@emesterhazy
Copy link
Collaborator

emesterhazy commented Jun 3, 2024

My 2c, I personally don't find the X confusing since the opposite state is just an empty box. It seems clear to me that the empty box is an unselected state. I actually don't think that the X has a connotation of crossing something out when it's inside of a box like this, but maybe it depends from region to region.

Edit: It seems like the confusion might be about where the selected changes end up. The left/right analogy seems like it could be the best option for resolving that problem, but users will still need to know what the left and right states are. The circle / square options don't seem like an improvement over X to me since they don't convey any additional information IMO.

@arxanas
Copy link
Owner

arxanas commented Jun 15, 2024

I don't personally have a problem with x either, but I don't think it hurts to try to address it if it confuses some people. The issue of where selected changes end up will probably only be fixed with a more substantial effort.

@arxanas arxanas enabled auto-merge (rebase) June 15, 2024 22:46
@arxanas arxanas merged commit 54fd3a5 into arxanas:main Jun 15, 2024
2 checks passed
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.

3 participants