Icon overlaps with radio/checkbox element on menu items on Linux
Categories
(WebExtensions :: Frontend, defect, P3)
Tracking
(Not tracked)
People
(Reporter: robwu, Unassigned)
References
(Depends on 1 open bug, Blocks 1 open bug)
Details
Attachments
(3 files)
| Reporter | ||
Comment 1•7 years ago
|
||
| str | ||
| Reporter | ||
Comment 2•7 years ago
|
||
| Reporter | ||
Comment 3•7 years ago
|
||
| Reporter | ||
Comment 4•7 years ago
|
||
Updated•7 years ago
|
| Reporter | ||
Comment 5•7 years ago
|
||
Comment 6•7 years ago
|
||
Comment 7•7 years ago
|
||
Comment 8•6 years ago
|
||
My recommendation is to make all panel with this structure:
Input & label
[label]
--------------
[i] [label]
where [I] is an input (checkbox, radio).
Image & label
[label]
--------------
[i][label]
where [i] is an image (e.g. extension icon).
Input, Image & label
In the edge case we have both icon & input the alignment should be like this
[label]
--------------
[I] [label]
[label]
--------------
[i] [I][label]
Please, let me know if this is something we are able to do!
| Reporter | ||
Comment 9•6 years ago
|
||
The requested end state is not implemented of any of our platforms. Notably on macOS, the icon order is "[I] [i][label]".
I need to investigate whether the requested appearance is technically feasible.
Comment 10•6 years ago
|
||
(In reply to Rob Wu [:robwu] from comment #9)
The requested end state is not implemented of any of our platforms. Notably on macOS, the icon order is "[I] [i][label]".
Yes, we're making a conscious decision to establish our pattern, instead of following the platform one.
I need to investigate whether the requested appearance is technically feasible.
Yes, it makes sense. Thank you.
| Reporter | ||
Comment 11•6 years ago
|
||
Image & label
The "Image & label" case mainly applies to the History and Bookmarks menus (and to menu items for/from extensions).
The history and bookmarks menus never have an input box, so adding indentation is not quite useful there.
Moving the icon to the label position results in a visually misaligned menu label for all users (because the built-in Screenshots add-on adds a "Take a Screenshot" menu item):
[back] [forward] [refresh] [bookmark]
Save Page As
...
View Page Source
View Page Info
Inspect Element (Q)
[i] Take a Screenshot
This looks like an unreasonable cost for solving the rare problem of icon+input case (this bug). I prefer to have well-aligned menu icons for the common case (input+label / icon+label), rather than breaking the common case to account for a rare case (icon+input+label).
Input, image & label
On macOS, the menus in the menubar are native and their appearance cannot be changed by us. macOS does support [input][icon][label], but the the icon is intentionally ignored to match the alleged lack of checkmark+icon support on other platforms.
Other non-native menus can be changed by us, but moving the position of the input ("image & label" case) is considerably more difficult than prepending an icon to the label.
Prepending the icon can be done with just changes to XUL and CSS (for Linux and macOS), whereas moving the position of the input also requires changes in platform-specific C++ for Linux, macOS and Windows.
Conclusion
Implementing macOS's approach on Windows and Linux takes the least efforts to fix this bug, with minimal risk of negatively impacting the appearance of menus with only icon or input. This is also the only approach that can be implemented in macOS's native menus. Summarized:
[label] Regular menu item
[I] [label] Input (radio/checkbox)
[i] [label] icon *
[I] [i][label] Input (radio/checkbox) + icon *
* different from comment 8
Updated•6 years ago
|
Updated•3 years ago
|
Description
•