Shrinking Gnumeric for touchscreen devices

A couple of weeks back I wrote:

Hi people. I've just signed up to this list as I'm involved with a project
that wants to use Gnumeric on a small-form-factor device. I'll send a
another mail about how we can spend some time improving Gnumeric for use on
small screens, touchscreens etc, and looking for advice on the best ways to
minimise it's footprint.

And now I've got round to it.

So, we have a machine with an 800x600 display but it's not a laptop - there
is only 32/64MB of (flash) storage and it has a touchscreen so there is only
one sort of click (a left-click). This is a big project, but I can't say who
or what at the moment, I'm afraid. 

Really good Excel compatibility is needed and Gnumeric seems to be the best
way to get that short of Openoffice which is _way_ too big. However Gnumeric
is rather too big too at the moment.

So, I'm hoping to get some advice from you guys about how we can minimise
Gnumeric's footprint and make it touchscreen friendly. Here's my
understanding so far (based on the Debian build/packaging in case it

This info will be used by Embedded Debian to produce a minimised version for
general small-machine use as well as in this particular project. If you have
ideas about how best to incorporate PDA/touchscreen/small-screen
functionality (e.g UI changes, build options), I love to hear about them as
obviously the more of this stuff we can push upstream the better for

First, size: 

The binary package is about 4Mb, so is the gnumeric-common package, making
8Mb. Then there is about another 3Mb of library/support packages. The fatest
being gconf at nearly 1Mb. Giving a total of 11Mb, which is an awful lot of
our 'flash budget'. I'm sure there is room to strip this down significantly.
There are obvious thigns like -Os and throwing away docs, but there are no
doubt less obvious things which I need some help from you guys to
understand. For example it runs without gconfd present but at the expense of
a lot of complaints about it not being able to get config info. Presumably
something less than 1Mb of code could be implemented to get the relevant
config settings? Can we get rid of some of the bonobo stuff and still have
it work? 

How much else is modular and could be stripped down? What are the tradeoffs?

Second, Touchscreen use:
Are there any important things that are lost if we only have left-clicks?

Also all the icons need making much bigger for sensible touchscreen use
(which implies reducing their number - there isn't much screen space). We
are making a lot of mods to GTK to change the default sizes of things like
this. Do you think there is much that will need to be changed inside
gnumeric itself, or does it use GTK so thoroughly that UI changes will
automatically 'filter through'?

There is the possibility that some paid work will be available for (for
example) improving the Excel import/export and/or the above work. No
guarantees at this stage, but if any interested parties make themselves
known to me with some idea of how much time they have and money they need
I'll pass it on to the purse-string people.

thanx very much - you've all been a great help so far.

Aleph One Ltd, Bottisham, CAMBRIDGE, CB5 9BA, UK  Tel +44 (0) 1223 811679
work:     play:

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]