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

Domains: Fix DNS pages header design issues #58692

Merged
merged 6 commits into from
Dec 7, 2021

Conversation

leonardost
Copy link
Contributor

@leonardost leonardost commented Nov 30, 2021

Changes proposed in this Pull Request

This PR fixes design issues in the DNS pages header pointed out by the design review in pcYYhz-q9-p2#comment-358.

The following screenshots highlight what was updated:

Markup on 2021-11-30 at 19:48:05

Markup on 2021-11-30 at 19:46:47

  1. Button is now not primary and reads "+ Add a record"
  2. Ellipsis icon is vertically aligned with the other items in the breadcrumbs
  3. Inactive redo icon is now visible in menu
  4. The "+ Add a record" button becomes a borderless "+" button in mobile view and the ellipsis menu is removed

You can compare them with the previous designs:

Screen Shot 2021-11-30 at 19 48 57

Screen Shot 2021-11-30 at 19 49 06

Note: Breadcrumbs issues are being addressed in #58601 and #58519.

Testing instructions

  • Build this branch locally or open the live Calypso link
    • If you're in the live Calypso link, please append ?flags=domains/dns-records-redesign to your URL to enable the appropriate feature flag
  • Go to "Upgrades > Domains"
  • Select one of your registered domains or domain connections
  • Go to "Change your name servers & DNS records"
  • Ensure the design updates described above are present

@leonardost leonardost requested a review from a team as a code owner November 30, 2021 22:53
@matticbot matticbot added the [Status] Needs Review The PR is ready for review. This also triggers e2e canary tests and wp-desktop tests automatically. label Nov 30, 2021
@github-actions
Copy link

github-actions bot commented Nov 30, 2021

@matticbot
Copy link
Contributor

matticbot commented Nov 30, 2021

Here is how your PR affects size of JS and CSS bundles shipped to the user's browser:

Sections (~59 bytes added 📈 [gzipped])

name     parsed_size           gzip_size
domains       +204 B  (+0.0%)      +59 B  (+0.0%)

Sections contain code specific for a given set of routes. Is downloaded and parsed only when a particular route is navigated to.

Legend

What is parsed and gzip size?

Parsed Size: Uncompressed size of the JS and CSS files. This much code needs to be parsed and stored in memory.
Gzip Size: Compressed size of the JS and CSS files. This much data needs to be downloaded over network.

Generated by performance advisor bot at iscalypsofastyet.com.

Comment on lines +232 to +238
.popover__menu-item[disabled] {
svg.gridicon {
fill: var( --color-neutral-20 );
}
}
Copy link
Contributor Author

Choose a reason for hiding this comment

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

Having to define this feels like a regression 🤔 the icon was invisible because it was being colored color: var( --color-neutral-0 ). Or maybe we're defining something wrong and the icon ends up being colored wrongly?

@leonardost leonardost added the [Feature Group] Emails & Domains Features related to email integrations and domain management. label Nov 30, 2021
@leonardost leonardost requested a review from a team December 1, 2021 14:30
@poligilad-auto
Copy link

Thanks @leonardost!
Most of this looks good to me.

This is kind of my mistake, but I think the "3 dots" button should still be there in mobile, Like this:

image

“3 dots” this should be within a 40x40px button

This point doesn't seem to be addressed and this should be true for all borderless buttons (in any page, including the "Domains" page). This helps create consistent spacing as well as providing a large enough hit area on mobile.

Currently, it's like this:
image

While I think we should go for a similar approach to how it is in P2 for example. Their button size is 36x36. In our case it would be 40x40.
image

@leonardost
Copy link
Contributor Author

Thanks for the review @poligilad-auto!

I think the "3 dots" button should still be there in mobile

I had thought about asking you about that but I didn't, so I'm at fault too 😆

The width of the ellipsis button is now 40px:

Screen Shot 2021-12-01 at 19 57 54

And it's in the mobile view too:

Screen Shot 2021-12-01 at 20 04 58

I reduced the left margin of the button to 8px in the mobile view as it seemed that way in the design - is this correct?

@poligilad-auto
Copy link

The width of the ellipsis button is now 40px

Perfect.

I reduced the left margin of the button to 8px in the mobile view as it seemed that way in the design - is this correct?

Yes, exactly correct 👌

The only thing now is doing the same for the "Domains" page :)

Now we also have miss-alignment that needs to be fixed in the table, that's what this comment was about:
"“3 dots”: let’s add 8px margin-right to this to align with the “3 dots” in the header, similar to my comment for the domains list."

image

@leonardost leonardost force-pushed the update/dns-pages-header-design-fixes branch from 7fa198b to f2ed3c0 Compare December 7, 2021 00:07
Copy link
Contributor

@rafaelgallani rafaelgallani left a comment

Choose a reason for hiding this comment

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

Nice job! LGTM. Tested that all the described changes were reflected.

There's only one single issue I found with the TXT record alignment - although I'm not sure if that's related to this PR:

image

I think it's easier to fix it in this PR, but if that's not the case, then feel free to ignore this comment 😅
I also left a single code suggestion, but that's only a nitpick - it should be good to go with or without it.

@@ -171,6 +171,10 @@
.breadcrumbs__buttons-mobile {
display: flex;

> * + * {
Copy link
Contributor

Choose a reason for hiding this comment

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

Nice one!
There's a relatively new flex/grid display CSS property called gap that does the same thing - and you can also define row-gap and column-gap separately on it.

I saw a few references to it in our codebase, although I'm not so sure how that would be interpreted by our webpack loaders. It might be worth giving a try 😸

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I think it was Del who wrote that selector, it's neat 😄

I was going to say that selector isn't inside a grid context, but I just learned that gap can be used in flexbox too, that's nice!

Copy link
Contributor

Choose a reason for hiding this comment

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

Yeah...I think you should be able to use gap here. Probably more readable than the "owl-face" selector I used. :-D

Copy link
Contributor Author

Choose a reason for hiding this comment

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

🦉 Owl face, that's a nice one * + * 😄

@leonardost
Copy link
Contributor Author

Thanks for the review @rafaelgalani and nice catch! I'll take a look at that case 👀

@matticbot
Copy link
Contributor

This PR modifies the release build for wpcom-block-editor

To test your changes on WordPress.com, run install-plugin.sh wpcom-block-editor update/dns-pages-header-design-fixes on your sandbox.

To deploy your changes after merging, see the documentation: PCYsg-l4k-p2

@matticbot
Copy link
Contributor

This PR modifies the release build for editing-toolkit

To test your changes on WordPress.com, run install-plugin.sh editing-toolkit update/dns-pages-header-design-fixes on your sandbox.

To deploy your changes after merging, see the documentation: PCYsg-mMA-p2

@matticbot
Copy link
Contributor

This PR modifies the release build for notifications

To test your changes on WordPress.com, run install-plugin.sh notifications update/dns-pages-header-design-fixes on your sandbox.

To deploy your changes after merging, see the documentation: PCYsg-elI-p2

@leonardost
Copy link
Contributor Author

The only thing now is doing the same for the "Domains" page :)

Cool! I've aligned the 3 dots icons with the header's 3 dots, I'll do the same for the "Domains" page in a follow-up PR 👍

@leonardost leonardost merged commit 8aa46e6 into trunk Dec 7, 2021
@leonardost leonardost deleted the update/dns-pages-header-design-fixes branch December 7, 2021 19:33
@github-actions github-actions bot removed the [Status] Needs Review The PR is ready for review. This also triggers e2e canary tests and wp-desktop tests automatically. label Dec 7, 2021
@a8ci18n
Copy link

a8ci18n commented Dec 7, 2021

This Pull Request is now available for translation here: https://translate.wordpress.com/deliverables/7027759

Thank you @leonardost for including a screenshot in the description! This is really helpful for our translators.

nelsonec87 pushed a commit that referenced this pull request Dec 9, 2021
* Fix DNS page header design issues

* Fix width of ellipsis breadcrumb button

* Reduce left-margin of breadcrumb buttons in mobile view

* Align DNS item rows' 3 dots with DNS header's 3 dots

* Fix positioning of ellipsis menu of DNS items in mobile view

* Make DNS items ellipsis popover appear below the icon instead of above
@a8ci18n
Copy link

a8ci18n commented Dec 17, 2021

Translation for this Pull Request has now been finished.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
[Feature Group] Emails & Domains Features related to email integrations and domain management.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants