Another idea came to me in shower - I've been reading up about MS Office 12 UI changes and I think there are some very nice ideas there, but we can do better.
The main principle of the Ribbon is that all functions are there, but some are smaller then others based on their priority.
It came to me that when you design an UI in, for example, Glade you are basically creating a dynamic structure that can scale up or down. The only two things missing to make it a Ribbonesque interface are: 1. unique priority for each widget to decide which widgets to reduce/increase in size, 2. multiple size versions for each widget - buttons from 128x128px to 16x16px, ...
For situations when 16x16px is not enough for the widget (editbox, for example) one could make a micro button that brings up the rest of the widget as a popover when pressed or simply not show the widget. Less important widgets would simply not be displayed at smaller screen/window sizes (hidden behind a generic "+" icon meaning more functions in a category).
This would allow an application to use those huge screens of the future for bigger and more detailed buttons/widgets and at the same time would increase usability of applications at small screen sizes. Or maybe I am just thinking too far.