Make WordPress Core

Opened 7 months ago

Last modified 3 weeks ago

#64020 new defect (bug)

Site icon: Don't force cropping

Reported by: jorbin's profile jorbin Owned by:
Milestone: Future Release Priority: normal
Severity: normal Version:
Component: Administration Keywords: has-patch dev-feedback changes-requested
Focuses: javascript, administration Cc:

Description

Do not force users to go through the cropping flow if the image is the correct ratio. This was fixed in the customizer in r59197, but that change needs to be ported to the site-options form of the site icon.

Attachments (3)

customizer - before .mov (7.0 MB) - added by kirasong 5 months ago.
screencast - customizer as currently in trunk
settings - before.mov (9.3 MB) - added by kirasong 5 months ago.
screencast - settings as currently in trunk
settings - after.mov (4.6 MB) - added by kirasong 5 months ago.
screencast - settings after applying 10179.diff

Change History (16)

This ticket was mentioned in Slack in #core by jorbin. View the logs.


7 months ago

This ticket was mentioned in PR #10179 on WordPress/wordpress-develop by @Presskopp.


6 months ago
#2

  • Keywords has-patch added; needs-patch removed

Trac ticket: #64020

#3 @gulamdastgir04
5 months ago

I have tested the patch in the playground using a 512x512 pixel square image as the site icon. When added through the Site Icon option, it successfully bypasses the image cropping flow.

Test Report

Description

This report validates whether the indicated patch works as expected.

Patch tested: https://github.com/WordPress/wordpress-develop/pull/10179.diff

Environment

  • WordPress: 6.9-alpha-20251007.105636
  • PHP: 8.3.25-dev
  • Server: PHP.wasm
  • Database: WP_SQLite_Driver (Server: 5.5 / Client: 3.40.1)
  • Browser: Chrome 141.0.0.0
  • OS: Linux
  • Theme: Twenty Twenty-Five 1.3
  • MU Plugins: None activated
  • Plugins:
    • Test Reports 1.2.0

Actual Results

✅ Issue resolved with patch.

@kirasong
5 months ago

screencast - customizer as currently in trunk

@kirasong
5 months ago

screencast - settings as currently in trunk

@kirasong
5 months ago

screencast - settings after applying 10179.diff

#4 @kirasong
5 months ago

  • Keywords dev-feedback added

I tested the patch, and it does skip the cropping step, but the behavior is different than in the customizer, since it doesn't present the "skip cropping" button -- but instead assumes the user would like to skip.

As a user, I prefer this behavior, but it is a departure from the behavior in the customizer.

I've attached a before and after for customizer and settings.

Customizer Before: customizer - before .mov
Settings Before: settings - before.mov
Settings After applying 10189.diff: settings - after.mov

#5 @gulamdastgir04
5 months ago

@kirasong I agree - skipping the cropping step automatically feels like a smoother and more intuitive experience, even though it differs slightly from the Customizer flow. Having to crop an image that’s already the perfect size can be a real headache for users, so this behavior is definitely a welcome improvement.

#6 @gulamdastgir04
5 months ago

This improvement definitely deserves to be included in the 6.9 release. It feels user-friendly and aligns well with the current UX direction.

#7 @jorbin
5 months ago

  • Keywords changes-requested added

The behavior should be consistent with the customizer. Just because something is square when uploaded doesn't mean that the site admin intends to use that exact square as the site icon.

#8 @wildworks
5 months ago

  • Milestone changed from 6.9 to 7.0

It seems we haven't yet reached an agreement on whether to proceed with PR 10179. Since the RC1 release is next week, I'd like to punt it to 7.0.

If an agreement is reached on the approach, please revert the milestone back to 6.9, and feel free to move forward.

This ticket was mentioned in Slack in #core-test by sajib1223. View the logs.


7 weeks ago

#10 @ozgursar
7 weeks ago

Patch Testing Report

Patch Tested: https://github.com/WordPress/wordpress-develop/pull/10179

Environment

  • WordPress: 7.0-alpha-61215-src
  • PHP: 8.2.29
  • Server: nginx/1.29.4
  • Database: mysqli (Server: 8.4.7 / Client: mysqlnd 8.2.29)
  • Browser: Chrome 145.0.0.0
  • OS: macOS
  • Theme: Twenty Twenty-Five 1.4
  • MU Plugins: None activated
  • Plugins:
    • Test Reports 1.2.1

Steps taken

  1. Activate any classic theme
  2. Appearance > Customize > Site Identity
  3. Click Select Site Icon
  4. Upload a square png image that is equal or larger than 512x512 pixels
  5. View Skip Cropping and Crop Image buttons
  6. Activate Twenty Twenty-Five theme
  7. Settings > General Settings > Site Icon
  8. Click Choose a Site Icon
  9. Upload a square png image that is equal or larger than 512x512 pixels
  10. Click Set Site Icon
  11. View only Crop Image button appears
  12. Apply patch and repeat steps 7-10
  13. Confirm that Crop Image button does not appear and directly sets the site icon
  14. ✅ Patch is solving the problem

Expected result

  • After applying the patch, if the image size is properly sized it won't ask for cropping the image.

Additional Notes

  • Even though the experience is slightly different than Customize, I think it's better to skip the question Skip Cropping or Crop Image as the aspect ratio will stay the same.

Screenshots/Screencast with results

Video Customize (before patch): https://files.catbox.moe/reugxl.mp4
Video General Settings (before patch): https://files.catbox.moe/yz8qqc.mp4
Video General Settings (after patch): https://files.catbox.moe/0j67pe.mp4

This ticket was mentioned in Slack in #core by audrasjb. View the logs.


3 weeks ago

#12 @joedolson
3 weeks ago

I agree with @jorbin; "square" does not mean it's the best option for the site icon.

#13 @audrasjb
3 weeks ago

  • Milestone changed from 7.0 to Future Release

As per today's 7.0 pre-RC1 bug scrub:

Given the PR makes the assumption that "square" equals "what I want for the site icon", some changes were requested in the current PR.
Moving to Future Release. Props @joedolson.

Note: See TracTickets for help on using tickets.