MidoriBrowser gains the show-preferences signal which
gives API users a chance to add preferences.
katze_preferences_add_category now returns a box to
allow freely packing a widget into the page.
The extension panel is packed into the preferences now
rather than being appended as a proper panel.
Motivation is consistency here, such as with Gedit or
Emerillon and also the aspect that extensions often
really do tweak behaviour like preferences do.
Spacing and icons are added for visual consistency.
Iterating an array by a GList is considerably faster than
continuously retrieving items, however it is also a lot
more complicated. So the new macro takes care of that and
uses a new semi-private function to avoid copying the list.
Note that the macro can't be nested, which basically isn't
useful in practise anyway.
Extensions can be unavailable on a particular platform or a system
lacking a build-time requirement. Let's handle this more cleanly
and reflect it in the Extensions panel.
Whether an extension is active or not is now reflected by a tick
mark that can be toggled with a mouse. Double clicking and
pressing space do the same. The buttons are thusly removed.
While we are at it, we also listen for status changes that might be
coming from a different window.
Sensitivity does no longer relate to activation status.