Opened 10 months ago

Last modified 8 months ago

#21455 assigned feature request

HiDPI (retina) theme custom backgrounds

Reported by: nacin Owned by: Otto42
Priority: normal Milestone: Future Release
Component: Appearance Version:
Severity: normal Keywords:
Cc: aaroncampbell, j@…

Description

We should support HiDPI custom backgrounds.

This will be a bit easier than custom headers, #21389, as we can do a media query in _custom_background_cb(). Worth noting that we will still need to solve some aspect of retina uploads, #21038.

Change History (6)

  • Owner set to Otto42
  • Status changed from new to assigned

Problem: Backgrounds don't have "sizes". So the question is when to use a different sized background.

Options:

  • Provide a separate image uploader or choice for hi-dpi background entirely. (hat-tip Aaron Campbell)
  • Allow the user to check a box or something, which causes WP to generate a half-width image of the background, and use that for the normal case while using the full size background for the hi-dpi case

Both are easily doable, but there's no doing this completely transparently because backgrounds just don't have a "size" inherent in them at the moment.

  • Cc aaroncampbell added

After banging my head on a wall for 3 weeks on this one, I'm inclined to say push it to 3.6 or "wontfix" it.

Basic problem as I stated before: backgrounds don't have any indication as to widths.

Two cases to consider:

  • BIG background images have an inherent problem in that we don't know what the intended width of the background image is supposed to be. So if the image is large, do we half-size it and use the uploaded version as the HiDPI version?
  • SMALL background images have an inherent problem in that scaling small images down looks terrible. If you take a 32px tiled image as the HiDPI version, and scale it down to 16px for the normal case, it looks just awful. Every site that has HiDPI tiled backgrounds includes two separately made versions of them at each size (ask koop to show you some example sites with HiDPI tiled images). So you kinda need a second uploader.

I have no solution to this problem. Everything I've tried short of adding an entirely separate image uploader box has a major downside.

Suggestions welcome.

  • Milestone changed from 3.5 to Future Release
  • Type changed from task (blessed) to feature request

I think supporting user-uploaded HiDPI images in core for 3.5 is not going to be feasible — backgrounds and then some. Agreed on the punt. Let's see what happens with media in 3.5 and see what we can then do in a plugin.

The IRC meetup yesterday confirmed that HiDPI support for user-uploaded images is no longer part of 3.5's scope, due to the complexities of implementation. With the media UIs and image APIs improving quite a bit in this release, it ideally becomes more feasible in a future version. It is unfortunately too much at once to try it in 3.5 while everything it would be built upon is also shifting around.

Combined with the fact that HiDPI support everywhere on the internet remains a total hack, this also gives browser makers and standards bodies some more time to come up with a sane way to handle HiDPI support.

Otto42 will be watching #21390 (and related tickets) closely to make sure the right hooks are in place so this can be attempted in a plugin.

This applies to #21038 (user content), #21455 (backgrounds), #21389 (headers).

  • Cc j@… added
Note: See TracTickets for help on using tickets.