GPE SOURCES, INCLUDING THE MODIFIED ONES ======================================== The GPE Palmtop Environment sources. Most is upstream and unmodified. *** base/gpe-appmgr/ IS NOT UPSTREAM. *** It carries the reconstruction of Psion's launcher, which did not survive. Psion's own gpe-appmgr was in their private CVS (cvs.psiondev.com, tag GPE_APPMGR_56) and is gone. Written for this project, principally in row_view.c: * The right-hand TODAY / PROGRAMS / TASKS strip, drawn rotated. * The red power button at the foot of that strip, and its action -- it suspends the machine rather than logging out, because the lx user is auto-logged-in and logging out would simply log back in. * The rotated OFFICE / INTERNET / PIM / OTHER category labels. * /usr/share/gpe/overrides being searched ahead of /usr/share/applications, which is how Psion's names are restored without touching the .desktop files their own builds install. It is an imitation measured against the prototype photograph in 5-REFERENCE/ui-photos/, not Psion's code, and the icons they drew for it are lost. If you want to improve the reconstruction, row_view.c is where to start. THINGS LEARNED IN THERE, WORTH KNOWING BEFORE YOU EDIT The usable height is not allocation.height. That reports 600; the desktop must fit gdk_screen_height() - PANEL_HEIGHT, which is 552. The power button was first drawn underneath the dock for exactly this reason. GDK has no antialiasing. Anything drawn with gdk_draw_* comes out blocky at this size. The power button is drawn at 4x and scaled down with GDK_INTERP_HYPER. find_icon() returns NULL for a missing icon and the draw path guards on it, so a .desktop naming an icon that does not exist is safe -- it renders with a label and no picture rather than crashing.