Spend a lot of time today rewriting an important Widget in GMPC, namely the widget that displays song-lists.
The old version was written in GOB and left a lot of basic functionality still at the user side (.e.g. implementing keybindings, and context menu, cut/paste/add/remove/insert/etc).
So I decided to rewrite the widget, It is not yet done (by far). But it is making good progress. It already is reducing the amount of code, and I haven’t even replaced all instances (+ code) of the old widget.
The new widget offers:
- Support for song-lists and showing the playqueue. (this means other bindings should be active.
- Copy/Cut/Paste support (depending on the type of widget)
- ‘Queue’ support.
- Consistent Keybindings. (as they are implemented in the Widget and not in the layer above).
- Column editing. (Build-in, not using code from libegg anymore, this will be a significant reduction in code once removed.)
- Storing/restoring column(s) state.
- Context menu. (now with menu key enabled. dunno why I forgot todo that previously)