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

[channel-picker] First iteration #147

Merged
merged 15 commits into from
Nov 8, 2024
Merged

[channel-picker] First iteration #147

merged 15 commits into from
Nov 8, 2024

Conversation

DmitrySharabin
Copy link
Member

@DmitrySharabin DmitrySharabin commented Nov 6, 2024

Partially addresses #124.

It's a bare minimum, just for a start.

Docs: https://deploy-preview-147--color-elements.netlify.app/src/channel-picker/

Copy link

netlify bot commented Nov 6, 2024

Deploy Preview for color-elements ready!

Name Link
🔨 Latest commit 6671522
🔍 Latest deploy log https://app.netlify.com/sites/color-elements/deploys/672e0316da99d500088d32de
😎 Deploy Preview https://deploy-preview-147--color-elements.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify site configuration.

Copy link
Member

@LeaVerou LeaVerou left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great job, only minor comments.

One thing that should absolutely change though is the styling: It should be obvious that these are two separate selects. They should still be readable as a unit, but their styling should have affordances that indicate that they are separate dropdowns. Like, the triangle should still be there, for both of them. Then you also don't need the weird dashed line.

src/channel-picker/channel-picker.js Show resolved Hide resolved
src/channel-picker/channel-picker.js Outdated Show resolved Hide resolved
src/channel-picker/channel-picker.js Show resolved Hide resolved
let channel = this.value?.split(".")[1];
if (channel && channel in coords) {
// Preserve the channel if it exists in the new space
this._el.picker.value = channel;
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Likely post-MVP, but even if it doesn't, it would be nice to still keep it around somewhere so that switching back to that space preserves your selection

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good idea! Thanks.

@DmitrySharabin
Copy link
Member Author

I addressed all your feedback. Thank you!

I also made the picker more resistant to and tolerant of user errors. I would be grateful for your following review.

Copy link
Member

@LeaVerou LeaVerou left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code looks good, only remaining comment is styling: The control still tries to look like a single thing, which looks weird. I'd render it as either separate dropdowns that are side by side or a "segmented" control, where there is a line down the middle. And the border color should be way fainter in any case.

@DmitrySharabin
Copy link
Member Author

I'd render it as either separate dropdowns that are side by side or a "segmented" control, where there is a line down the middle. And the border color should be way fainter in any case.

Thank you for your feedback. I ended up with a "segmented" control. We can improve it with the next iterations.

image

@DmitrySharabin DmitrySharabin merged commit 4dc9e9c into main Nov 8, 2024
4 checks passed
@DmitrySharabin DmitrySharabin deleted the channel-picker branch November 8, 2024 12:29
@LeaVerou
Copy link
Member

LeaVerou commented Nov 8, 2024

Yeah. One issue with the current styling is that it doesn't communicate the hierarchy, that Lightness is a coordinate of Oklch, they look like peers.

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