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

Settings tabs/buttons element UX #2867

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

Conversation

duanemoody
Copy link

The Settings dialog has a tabbed interface and 3 buttons but all of these elements are visually links. This patch keeps them as A links but uses CSS to make the tabs obvious and button element wrappers to make the Import/Export/Reset buttons recognizable, leaving the 4chanX/changelog/Issues hyperlinks recognizably links and not something else.
Pipe delimiters have been removed; accessibility solutions should have no difficulty with the semantics of the changes (tabs are already inside a NAV element, BUTTON wrapping A).

Import/export/reset are button actions. Styling as such.
Import/export/reset are buttons, coding as such
Correct class name, add visited: pseudoclass
Add margin spacing to buttons
tabify tabs
Remove pipe spacing between tabs since they're tabs now. Assistive devices can handle this.
@ccd0
Copy link
Owner

ccd0 commented Jan 14, 2021

It looks much better, especially the tab part. But it could use some more work to blend in with the Tomorrow theme. And there should be a little space between the buttons and the links. Also it causes the Keybinds tab to disappear, but this can be fixed by removing the links.pop() that was there to remove the final pipe delimiter.

Is there a reason to change them to a BUTTON wrapping A instead of just a BUTTON?

@duanemoody
Copy link
Author

duanemoody commented Feb 9, 2021

Is there a reason to change them to a BUTTON wrapping A instead of just a BUTTON?

Without reading the entire project's source code, I couldn't be sure something wasn't going to look for A.className and break because the element was now BUTTON.className. Same reason I gave the buttons parallel but separate class names.

I'll work on the other issues.

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.

2 participants