I was also thinking on using surf in the n900, but the main concern is about the mouse handling. It would be nice to support drag panning of the canvas by just clicking and dragging, we can probably toggle this mode or implement this in javascript in user.js ?
For zooming, there are two hardware buttons that can be hooked in the config.h, and for keybindings is not a big deal, but for clicking, in touch screens there's only one event (left click), it is possible to handle a long click as a right click? this will enable surf to work on touchscreens and with single-button mouses (apple like). Another thing I have been thinking about is the thing that if you middle click the canvas, the contents of the clipboard should be used as an URI to be opened. Maybe this can be done in javascript, but what do you think about adding this feature in core surf? --pancake