Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
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
Spec: Appearance configuration objects for profiles #8345
Spec: Appearance configuration objects for profiles #8345
Changes from 4 commits
963e624
a24d166
d5f6ced
83b78ba
887af3b
7ddb322
5cf8216
0e7b578
6812b76
ad352df
df039d2
95ab38c
2f18add
7445282
8a62a44
5048f8f
df9627b
c50df8d
e00e259
File filter
Filter by extension
Conversations
Jump to
There are no files selected for viewing
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
How does your design scale as we add new states? Consider the following profile:
What is the font face in the following scenarios:
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is the single thing I'm the most worried about with this spec, but still don't have any good ideas. It doesn't make sense to have
appearance.unfocused
,appearance.elevated
,appearance.unfocusedElevated
,appearance.foo
,appearance.unfocusedFoo
,appearance.unfocusedElevatedFoo
, etc. That pretty immediately doesn't scale.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Unless we just do something like "we'll apply appearance's in order, on top of whatever the default appearance is". So we'll always start with the focused (profile) appearance. Then if we're admin, we'll apply that on top. Then if we're focused, we'll apply that on top. When the control is unfocused, it'll go back and apply the default appearance + the elevated appearance.
Then, if we ever have a
foo
state, it could be inserted into that list in some order s.t. runtime appearance = elevated + foo + unfocused.Pretty sure this doesn't make sense, but that's my idea
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
So, when
"adminState"
gets added, we'll have a larger set of accepted parameters. For example...name
,tabTitle
,suppressApplicationTitle
--> what is my title?startingDirectory
andcommandline
--> startup-related settingsShould we just accept every profile setting, then silently ignore ones that don't apply?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm thinking that at least for now, these additional state configurations should be entirely appearance-based, so we don't accept things like
commandline
,startingDirectory
and probably nothing to do with the title either.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
useAcrylic
andacrylicOpacity
should be allowed (conceptually), but aren't because of a something out of our control (at least for now). Should we specifically throw a warning when somebody tries to set these in the"unfocusedState"
object?There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not directly. I guess a user could choose for themselves some unfocused states that would make the UI highly inaccessible to themselves (poor contrast ratio.)
What happens for high-contrast mode? Is the user allowed to still override high-contrast mode colors to the point where they might not be high-contrast anymore?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If the user can override high-contrast mode colors already in their current profiles, then yes they can do so in the unfocused appearance as well. I.e. this change doesn't provide additional functionality with regards to a specific appearance, it just gives users a second appearance for their profiles, so any accessibility concerns with regards to users messing around with their unfocused appearance already exist because they could do the same with the one appearance they have currently.