This is an old revision of the document!
Appfinder panel plugin
README (from repo):
Application Finder Panel Applet (appfinder) =========================================== Appfinder is an extension for the Xfce Panel. It enables users to add a button to the panel, which, when pressed, pops up an appfinder widget (same as the one displayed by running an xfce4-appfinder command). The differences between this panel and having a simple launcher on the panel that starts xfce4-appfinder are: - the button is configurable, i.e.: * it can have an icon, a label, or both, * it can occupy the whole width of the panel. - the configuration dialog is available by right-clicking on the button and the appfinder window isn't cluttered with buttons such as "preferences", "close" or "launch". - pressing the button toggles the appfinder window on/off rather than starting several instances of xfce4-appfinder.
Code:
Pending issues:
- no plugin preferences
- no keyboard focus – using a GTK_WINDOW_POPUP (like menu) but it needs additional code to handle focus.
- “ if I click outside the widget, I'd like it to close - this isn't the case atm” – Related to 2?
- GTK_WINDOW_POPUP makes direct window resizing impossible (has to be done through a preference dialog). Is it possible to make a toplevel window without title bar but with resizing frames?
- will (probably) have to disable collapsed mode – other possibilities: set size requisition in the widget (doesn't allow scaling the window down (?)) or add a DBUS signal for mode changes.
- strange behaviour of mouse clicks – fixed in repo
- for some reason the widget looks a bit different when used in xfce4-appfinder and in the plugin
- “I would rename the “Open” D-Bus methods to “Create…” or “Show…”, as open is a term rarely used for windows in APIs.” – what about API compatibility?
- “Also, perhaps rename XfceAppfinderWidget to XfceAppfinderView, widget is just so generic, I mean, everything is a widget.” – good point, BTW calling it “widget” created some name clashes with widgets, I'll gladly rework it.
- “ The .desktop.in file i missing” – added in repo
- “a –daemon option but […] doesn't work well. Each time I ask the daemon to open a window/widget it loads all the icons, which takes time.”
- no remote xfce4-popup-appmenu script – fixed in repo
Pending design decisions:
- GTK_WINDOW_POPUP or GTK_WINDOW_TOPLEVEL?
- How to implement –daemon option so that it (pre-)caches icons instead of loading them every time a widget is open (issue 10)
- (in the future) what should we use instead of GtkSocket/GtkPlug?