Hi Sean - thanks for the tip - that's fixed it :-) On Tue, Sep 14, 2010 at 3:08 PM, Sean McNeil <seanmcne...@gmail.com> wrote: > Take a look at the system property ro.sf.lcd_density. For a QVGA screen, > you want to set it as > > ro.sf.lcd_density = 120 > > to get the proper scaling. IMHO, the density should not be necessary and > scaling could be done via the dpi. But for some reason it isn't done. > > Sean > > On 9/14/2010 4:54 PM, James Adams wrote: >> >> I'm porting Android onto some hardware with a 240x320 (portrait) display. >> >> My quesion is, does Android base all of its icon / widget scaling >> based on the 'width' and 'height' (in mm) parameters returned from the >> frame buffer driver? >> >> I expect it should, but it seems not to - what I want to do is get the >> screen on my device to draw exactly the same as the emulator but it >> doesn't.... >> >> If I set up the emulator to be a 240x320 device I get: >> >> ... >> I/gralloc ( 52): using (fd=22) >> I/gralloc ( 52): id = >> I/gralloc ( 52): xres = 240 px >> I/gralloc ( 52): yres = 320 px >> I/gralloc ( 52): xres_virtual = 240 px >> I/gralloc ( 52): yres_virtual = 640 px >> I/gralloc ( 52): bpp = 16 >> I/gralloc ( 52): r = 11:5 >> I/gralloc ( 52): g = 5:6 >> I/gralloc ( 52): b = 0:5 >> I/gralloc ( 52): width = 37 mm (164.756760 dpi) >> I/gralloc ( 52): height = 49 mm (165.877548 dpi) >> I/gralloc ( 52): refresh rate = 60.00 Hz >> D/libEGL ( 52): egl.cfg not found, using default config >> ... >> >> My screen driver doesn't report the physical dimensions so for now >> until I;ve fixed it I have edited >> hardware/libhardware/modules/gralloc/framebuffer.cpp to make the >> 'width' and 'height' the same asthe emulator (and gralloc reports >> info.width/height are set correctly): >> (line 241...) >> if (int(info.width)<= 0 || int(info.height)<= 0) { >> // the driver doesn't return that information >> // default to 160 dpi >> LOGI("Driver doesn't report width/height - setting default..."); >> //info.width = ((info.xres * 25.4f)/160.0f + 0.5f); >> //info.height = ((info.yres * 25.4f)/160.0f + 0.5f); >> info.width = 37; // JRA same as emulator... >> info.height = 49; >> } >> >> BUT the screen icons on my device are still a different size to the >> emulator - the emulator they are a bit smaller and fit much more >> nicely, so what could be going wrong? Can anyone point me int he right >> direction? >> >> NB I'm using 2.1 Eclair. >> >> Thanks, >> >> James. >> > > -- > unsubscribe: android-porting+unsubscr...@googlegroups.com > website: http://groups.google.com/group/android-porting >
-- unsubscribe: android-porting+unsubscr...@googlegroups.com website: http://groups.google.com/group/android-porting