UNRKarmicApplicationResolution

Summary

There are some applications don't fit the screen of netbooks. We'd like to fix those applications to make them fit. Also we'd like to work with the upstream to reduce the future maintaining efforts for those applications.

Release Note

  • Some UNR apps have been modified to better fit small screens.

Rationale

  • If an application doesn't fit into screen, some buttons and/or text are not being seen. Then the users might think that application doesn't work.
  • QA from OEM vendor also do test on usability test.
  • Resolution bugs are not specific for this cycle. It's a long-term job because the applications are many and new applications are made.
  • Application should be fit in 1024x576. Better to be fit in 640x480 which most Microsoft applications fit in that size. Also we might have 1280x525 LCD in the future.

User stories

  • Alice bought a netbook from market and then she download and install Ubuntu UNR. Because Ubuntu UNR is already fix the resolution issues, so it fits better than other OS.
  • Bob bought a netbook from brand and it is pre-installed Ubuntu UNR. He won't need to make phone calls complaining about the application resolution problem.

Assumptions

  • Resolution issues are hidden in many applications, until we seen it, it is hard to be detected.
  • Patch made for package maintainer and upstream should be different because the purpose is different. For package maintainer, the patch should be as small as possible because it's easier for update. For upstream, the patch should be good and without dirty hacks.
  • Application should be fit in 1024x576 with 96 DPI. Hardware reports wrong or large DPI makes the application doesn't fit is not counted in this spec.
    • We need an default DPI for measurement. Because large DPI value will result each characters in the application too large and no way to fit into the screen.
    • 96 DPI is a good choice because many 1024x600 netbook LCD are physically 96 DPI. Some 1024x576 LCD are physically 72 DPI but the hardware vendor will set it to report 96 DPI to OS because 72 DPI font is too small which is unreadable.

Design

  • There are already some patches made by OEM team.
    • List of patches that should be take care: UpstreamStatus

    • Refine it and send it back to the upstream.
  • Find out more application resolution issues.

Implementation

UI Changes

  • Make changes to Ubuntu packages in Karmic UNR. (short-term)
    • Only when we found an application in Karmic UNR which doesn't fit the small screen.
    • We should avoid modifying glade files. UI changes are better to be in code for easier maintainance.
    • Due to package maintainance issue, we can avoid too many delta by just adding simple scrolled bars.
    • Scrolled bars should not be inside another scrolled bars.
    • Patches to package should not interfere the original outfit for large resolution screens.
    • Open a bug to notice upstream that the application has issues with the small screen.
  • Send patches to upstream. (long-term)
    • We should avoid just send the scrolled bar version to the upstream.
    • Re-design the UI is better.
    • Avoid code modification if that belongs to glade files.
    • If necessary, we should discuss with UI design team.
    • Refine the patches until upstream accepted.

Code Changes

  • Make changes to Ubuntu packages. (short-term)
    • Patches should be maintained by patch system, like quilt.
    • Code example

if (gdk_screen_get_default() != NULL &&
    gdk_screen_get_height(gdk_screen_get_default()) <= 600) {
  /* do some small resolution customization here */
}
  • Send patches to upstream. (long-term)
    • Do any kind of patch. But the patch should be graceful, elegent and the upstream is happy to accept it.

Migration

Test/Demo Plan

Unresolved issues

  • Anjal, the GUI front-end for Evolution, is now in Karmic. We need testers to test it.
  • Low-hanging fruits like Firefox/Thunderbird patches should be directly forwarded to upstream

BoF agenda and discussion

In UNR Jaunty - there were patches for application resolution provided by OEM team

  • Need to get upstream
    • Prepare list of patches, check if they are upstream

    • Send them upstream if they are not
  • See which applications in UNR still don't fit resolution requirements
    • Firefox - get certificate dialog
  • Create wiki page that shows screenshots about why it's important, examples of how to fix it properly, raise awareness to the problem
    • not a one size fits all solution
    • there are valid best practices that can be described though
  • Evolution was patched in haste
    • to do it right would be very complicated
    • investigate Anjal as a better interface for UNR
  • [action] write wiki page
  • Low hanging fruit
    • settings we can change for applications that will make that application fit better


CategorySpec

Specs/UNRKarmicApplicationResolution (last edited 2009-07-30 09:03:49 by 219-70-232-49)