The problem was that 'xwidget-set-adjustment' in xwidget.c was checking 'value' using 'CHECK_NATNUM'. However, 'value' can be negative in the case of relative scrolling. The solution is instead to use 'CHECK_NUMBER'. A patch implementing this is attached.

Christopher Cooper