[Goodies-commits] r2390 - in verve-plugin/tags: . 0.3.5 0.3.5/panel-plugin 0.3.5/po 0.3.5/scripts

Jannis Pohlmann jannis at xfce.org
Tue Jan 16 22:51:22 CET 2007


Author: jannis
Date: 2007-01-16 21:51:22 +0000 (Tue, 16 Jan 2007)
New Revision: 2390

Added:
   verve-plugin/tags/0.3.5/
   verve-plugin/tags/0.3.5/ChangeLog
   verve-plugin/tags/0.3.5/README
   verve-plugin/tags/0.3.5/THANKS
   verve-plugin/tags/0.3.5/configure.in.in
   verve-plugin/tags/0.3.5/panel-plugin/verve-dbus-service.c
   verve-plugin/tags/0.3.5/panel-plugin/verve-dbus-service.h
   verve-plugin/tags/0.3.5/panel-plugin/verve-env.c
   verve-plugin/tags/0.3.5/panel-plugin/verve-env.h
   verve-plugin/tags/0.3.5/panel-plugin/verve-history.c
   verve-plugin/tags/0.3.5/panel-plugin/verve-history.h
   verve-plugin/tags/0.3.5/panel-plugin/verve-plugin.c
   verve-plugin/tags/0.3.5/panel-plugin/verve.c
   verve-plugin/tags/0.3.5/panel-plugin/verve.h
   verve-plugin/tags/0.3.5/po/ca.po
   verve-plugin/tags/0.3.5/po/cs.po
   verve-plugin/tags/0.3.5/po/de.po
   verve-plugin/tags/0.3.5/po/el.po
   verve-plugin/tags/0.3.5/po/eu.po
   verve-plugin/tags/0.3.5/po/fi.po
   verve-plugin/tags/0.3.5/po/fr.po
   verve-plugin/tags/0.3.5/po/it.po
   verve-plugin/tags/0.3.5/po/ja.po
   verve-plugin/tags/0.3.5/po/nl.po
   verve-plugin/tags/0.3.5/po/pl.po
   verve-plugin/tags/0.3.5/po/pt_BR.po
   verve-plugin/tags/0.3.5/po/ru.po
   verve-plugin/tags/0.3.5/po/vi.po
   verve-plugin/tags/0.3.5/po/zh_TW.po
   verve-plugin/tags/0.3.5/scripts/verve-focus.c
Removed:
   verve-plugin/tags/0.3.5/ChangeLog
   verve-plugin/tags/0.3.5/README
   verve-plugin/tags/0.3.5/THANKS
   verve-plugin/tags/0.3.5/configure.in.in
   verve-plugin/tags/0.3.5/panel-plugin/verve-dbus-service.c
   verve-plugin/tags/0.3.5/panel-plugin/verve-dbus-service.h
   verve-plugin/tags/0.3.5/panel-plugin/verve-env.c
   verve-plugin/tags/0.3.5/panel-plugin/verve-env.h
   verve-plugin/tags/0.3.5/panel-plugin/verve-history.c
   verve-plugin/tags/0.3.5/panel-plugin/verve-history.h
   verve-plugin/tags/0.3.5/panel-plugin/verve-plugin.c
   verve-plugin/tags/0.3.5/panel-plugin/verve.c
   verve-plugin/tags/0.3.5/panel-plugin/verve.h
   verve-plugin/tags/0.3.5/po/ca.po
   verve-plugin/tags/0.3.5/po/cs.po
   verve-plugin/tags/0.3.5/po/de.po
   verve-plugin/tags/0.3.5/po/el.po
   verve-plugin/tags/0.3.5/po/eu.po
   verve-plugin/tags/0.3.5/po/fi.po
   verve-plugin/tags/0.3.5/po/fr.po
   verve-plugin/tags/0.3.5/po/it.po
   verve-plugin/tags/0.3.5/po/ja.po
   verve-plugin/tags/0.3.5/po/nl.po
   verve-plugin/tags/0.3.5/po/pl.po
   verve-plugin/tags/0.3.5/po/pt_BR.po
   verve-plugin/tags/0.3.5/po/ru.po
   verve-plugin/tags/0.3.5/po/vi.po
   verve-plugin/tags/0.3.5/po/zh_TW.po
   verve-plugin/tags/0.3.5/scripts/verve-focus.c
Log:
Tag 0.3.5 release.



Copied: verve-plugin/tags/0.3.5 (from rev 2388, verve-plugin/trunk)

Deleted: verve-plugin/tags/0.3.5/ChangeLog

Copied: verve-plugin/tags/0.3.5/ChangeLog (from rev 2389, verve-plugin/trunk/ChangeLog)
===================================================================
--- verve-plugin/tags/0.3.5/ChangeLog	                        (rev 0)
+++ verve-plugin/tags/0.3.5/ChangeLog	2007-01-16 21:51:22 UTC (rev 2390)
@@ -0,0 +1,424 @@
+2007-01-16	Jannis Pohlmann <jannis at xce.org>
+
+	* 0.3.5 released!
+	* configure.in.in, po/*.po, panel-plugin/*.{c,h},
+	  scripts/verve-plugin.c: Update copyright years. 
+	* THANKS: Honour all translators for their great work.
+
+2007-01-16	Jannis Pohlmann <jannis at xfce.org>
+
+	* panel-plugin/verve-plugin.c: Add some more G_LOCK/G_UNLOCK
+	  calls to protect the command completion. This fixes some
+	  serious issues I had with Verve crashing when a command was
+	  entered but the completion had not been loaded completely.
+
+2006-11-27	Jannis Pohlmann <jannis at xfce.org>
+
+	* panel-plugin/verve-plugin.c: Properly modify the foreground 
+	  color of the input entry while blinking - thanks to Mike 
+	  Massonnet (mmassonnet at gmail.com) for the patch.
+
+2006-08-24	Jannis Pohlmann <jannis at xfce.org>
+
+	* configure.in.in: Finnish translations added.
+
+2006-08-16	Jannis Pohlmann <jannis at xfce.org>
+
+	* panel-plugin/verve-plugin.c, panel-plugin/verve-history.c,
+	  panel-plugin/verve.c, panel-plugin/verve-env.c: Apply patch
+	  from Jasper, which removes several unused variables, evil
+	  C99-style and avoids a double-free'd GList. Bug #2175.
+
+2006-08-09	Jannis Pohlmann <jannis at xfce.org>
+
+	* panel-plugin/verve-plugin.c, panel-plugin/verve-history.c:
+	  Make number of history items configurable. 
+
+2006-08-08	Jannis Pohlmann <jannis at xfce.org>
+
+	* scripts/verve-focus.c: Check if objects are != NULL before
+	  unref'ing them. This fixes bug #2125 as reported by
+	  huggie at earth.li.
+	* panel-plugin/verve-plugin.c: Unhide the panel when Verve grabs
+	  the focus. Re-hide it after a command was successfully
+	  started.
+	* configure.in.in: Depend on version 4.3.90.2svn-22691 of the
+	  panel when the xfce_panel_plugin_set_hidden was introduced.
+
+2006-08-02	Jannis Pohlmann <jannis at xfce.org>
+
+	* configure.in.in, po/*.po: Version 0.3.4 released, which fixes
+	  a major verve-focus bug (#2113).
+
+2006-08-02	Jannis Pohlmann <jannis at xfce.org>
+
+	* scripts/verve-focus.c: Fix segfault caused by a DBusError
+	  pointer not being initialized (bug #2113).
+
+2006-08-02	Jannis Pohlmann <jannis at xfce.org>
+
+	* README: Add optional D-BUS dependency.
+
+2006-08-02	Jannis Pohlmann <jannis at xfce.org>
+	
+	* 0.3.3 released.
+
+2006-08-02	Jannis Pohlmann <jannis at xfce.org>
+
+	* TODO: TODO list updated
+	* THANKS: Translator credits updated
+	* README: Dependencies updated
+
+2006-08-02	Jannis Pohlmann <jannis at xfce.org>
+
+	* Makefile.am, panel-plugin/Makefile.am: Add dist-bzip2 automake
+	  option and fix distcheck errors with D-BUS service information
+	  generated by dbus-binding-tool. These changes will go into
+	  0.3.3, of course.
+
+2006-08-02	Jannis Pohlmann <jannis at xfce.org>
+
+	* Preparing for 0.3.3 release
+	* configure.in.in, po/*.po: Bump version to 0.3.3.
+
+2006-08-02	Jannis Pohlmann <jannis at xfce.org>
+
+	* panel-plugins/verve.c: Add "/?" to the URL expressions. This
+	  way URIs with a trailing "/" are properly recognized as URIs.
+	  Fixes bug #2102.
+
+2006-08-01	Jannis Pohlmann <jannis at xfce.org>
+
+	* panel-plugin/verve-plugin.c: Executes commands when GDK_KP_Enter 
+	  is pressed (in addition to GDK_Return). Fixes bug #2094.
+
+2006-08-01	Jannis Pohlmann <jannis at xfce.org>
+
+	* scripts/Makefile.am, scripts/verve-focus, scripts/verve-focus.c: 
+	  Added a C program to replace the old Python verve-focus script. 
+	  It's a lot faster than the old one and it calls 
+	  org.xfce.Verve#GrabFocus instead of the 'OpenDialog' method.
+	* panel-plugin/verve-dbus-service-infos.xml,
+	  panel-plugin/verve-dbus-service.c: Added 'GrabFocus' method to the
+	  org.xfce.Verve service. Also implemented a 'grab-focus' signal which
+	  is emitted when the 'GrabFocus' method is called.
+	* panel-plugin/verve-plugin.c: Connect to the 'grab-focus' signal of the
+	  D-BUS service. Use one method to handle both, 'open-dialog' and
+	  'grab-focus'.
+
+2006-07-26	Jannis Pohlmann <jannis at xfce.org>
+
+	* panel-plugin/verve-plugin.c, panel-plugin/verve-env.c: Properly sort
+	  items of the completion list and also insert new items using
+	  g_list_insert_sorted. This fixes bug #2074 (reported by Nick Arend).
+
+2006-07-26	Jannis Pohlmann <jannis at xfce.org>
+
+	* configure.in.in, panel-plugin/verve-dbus-service.c: Add switch to
+	  use different D-BUS flags when requesting a service name depending
+	  on the available D-BUS version (the flags changed with 0.60).
+
+2006-07-26	Jannis Pohlmann <jannis at xfce.org>
+
+	* panel-plugin/verve-dbus-service-infos.xml: Add the same 'OpenDialog'
+	  method to the 'org.xfce.Verve' interface as we already support in
+	  'org.xfce.RunDialog'.
+	* scripts/verve-focus: Use 'OpenDialog' method of 'org.xfce.Verve'
+	  interface to make sure we actually target a Verve instance and no
+	  other 'org.xfce.RunDialog' providers.
+	* panel-plugin/verve-dbus-service.c: Add
+	  DBUS_NAME_FLAGS_ALLOW_REPLACEMENT to the 'org.xfce.Verve' name 
+	  request. I bet users expect the last created Verve instance to have 
+	  the ownership and to be focused when verve-focus is executed. Don't
+	  do this for 'org.xfce.RunDialog' (until someone complains), because
+	  I suppose a user using Verve doesn't want to use other RunDialog
+	  providers.
+
+2006-07-25	Jannis Pohlmann <jannis at xfce.org>
+
+	* scripts/verve-focus: Call 'import pygtk; pygtk.require("2.0")' before
+	  importing the gtk module.
+	* panel-plugin/verve-plugin.c: Connect to "focus-out-event" of the input
+	  field in order to stop blinking whenever any other widget gains the
+	  focus (this fixes a bug reported by Nikolas Arend).
+
+2006-07-19	Jannis Pohlmann <jannis at xfce.org>
+
+	* panel-plugin/verve-env.c: Remove debug statements.
+	* panel-plugin/verve-plugin.c: Use XfceTitledDialog instead of the 
+	  old plain GTK one. 
+	* panel-plugin/verve.desktop.in.in, panel-plugin/verve-plugin.c:
+	  Use "utilities-terminal" icon instead of "Terminal". 
+	* configure.in.in, po/*.po: Version bump to 0.3.2. 
+
+2006-07-13	Jannis Pohlmann <jannis at xfce.org>
+
+	* panel-plugin/verve-plugin.c: Lock command completion using
+	  G_LOCK_DEFINE_STATIC. This replaces the global GDK locks and should
+	  avoid random crashes when the worker thread (which loads contents of 
+	  $PATH) and the panel plugin try to access the completion at the same
+	  time.
+
+2006-07-11	Jannis Pohlmann <jannis at xfce.org>
+
+	* panel-plugin/verve-plugin.c: Use gdk_threads_enter/leave to lock
+	  completion access (only one thread is allowed to access it at once).
+	* panel-plugin/verve-dbus-service.c: Remove C++ comment style.
+
+2006-07-11	Jannis Pohlmann <jannis at xfce.org>
+
+	* scripts/Makefile.am: Add verve-focus to EXTRA_DIST (it's missing in
+	  the 0.3.1 tarball.
+	* panel-plugin/verve-env.c, panel-plugin/verve-plugin.c: Implemented 
+	  threaded, asynchronous loading of $PATH entries. This avoids slower
+	  panel startup if $PATH includes slow media folders.
+	  Use more precise filters when loading the binaries (check for
+	  executable flag, avoid duplicate entries etc.).
+
+2006-06-17	Jannis Pohlmann <jannis at xfce.org>
+
+	* Added Italian translation to the XDT_I18N list.
+
+2006-04-22	Jannis Pohlmann <jannis at xfce.org>
+
+	* configure.in.in: Bump version.
+
+2006-04-22	Jannis Pohlmann <jannis at xfce.org>
+
+	* panel-plugin/verve-plugin.c: Fix adding to command history when
+	  history is empty.
+
+2006-04-19	Jannis Pohlmann <jannis at xfce.org>
+
+	* scripts/Makefile.am: Applied patch by Yves-Alexis Perez 
+	  <corsac at corsac.net>, which fixes an error during installation.
+	  of the scripts/ directory.
+
+2006-04-08	Jannis Pohlmann <jannis at xfce.org>
+
+	* configure.in.in, po/el.po: Greek translations by Stavros 
+	  Giannouris <stavrosg2002 at freemail.gr> added.
+
+2006-04-08	Jannis Pohlmann <jannis at xfce.org>
+
+	* configure.in.in: Applied Daichi's patch (which adds pl to the
+	  translations).
+
+2006-04-03	Jannis Pohlmann <jannis at xfce.org>
+
+	* panel-plugin/verve-plugin.c: Fix compilation error without 
+	  D-BUS.
+
+2006-04-03	Jannis Pohlmann <jannis at xfce.org>
+
+	* scripts/Makefile.am, scripts/verve-focus, Makefile.am,
+	  configure.in.in: Added verve-focus script and a Makefile
+	  to install it into $(bindir). 
+
+2006-04-03	Jannis Pohlmann <jannis at xfce.org>
+
+	* panel-plugin/verve-env.{h,c}: Remove all the shell stuff. As I
+	  dropped the idea of user-defined commands this is just annoying
+	  overhead. Code cleaned up.
+	* panel-plugin/verve-plugin.c: Cleaned up the code. Avoid to add
+	  a command to the history if it's the same as the previously added
+	  command. This fixes bug #6900. Entries from the command history
+	  now appear in the auto-completion results.
+	* panel-plugin/verve-history.{c,h}: Another bug fixed: Don't write
+	  more than 25 commands to the cache. I'll add an option for this
+	  to the preferences dialog later, so that the user can choose
+	  how many commands he wants to have saved. Code cleaned up.
+	* panel-plugin/verve.c: Code cleaned up.
+
+2006-03-25	Jannis Pohlmann <jannis at xfce.org>
+
+	* panel-plugin/verve-plugin.c: Enhance flash highlighting.
+
+2006-03-25	Jannis Pohlmann <jannis at xfce.org>
+
+	* panel-plugin/verve-plugin.c: Implement flash timeout in order to
+	  notify the user when Verve got the focus through the D-BUS service.
+	  Unregister the timeout as soon as a mouse button or key is pressed.
+
+2006-03-22	Jannis Pohlmann <jannis at xfce.org>
+
+	* panel-plugin/Makefile.am: Add hints for building 
+	  verve-dbus-service-infos.h from verve-dbus-service-infos.xml during
+	  make.
+
+2006-03-22	Jannis Pohlmann <jannis at xfce.org>
+
+	* TODO: Remove startup notification, terminal startup support.
+	* scripts/verve-focus.py: Add helper script for focussing Verve
+	  using the org.xfce.RunDialog D-BUS service.
+	* panel-plugin/verve-dbus-service.c, panel-plugin/verve-plugin.c: 
+	  Use a signal ("open-dialog") callback for grabbing the focus rather 
+	  than using VerveDBusService "plugin" and "input" properties. This
+	  moves GUI stuff out of VerveDBusService again.
+	* panel-plugin/*.{c,h}: Wrap function parameters and clean up the 
+	  code.
+	* configure.in.in: Remove libstartup-notification from dependencies.
+
+2006-03-22	Jannis Pohlmann <jannis at xfce.org>
+
+	* panel-plugin/verve-plugin.c: Fix completion loading. Re-add 
+	  accidently removed line to create the completion at startup.
+	  Add terminal exec feature using the <Control> key.
+	  panel-plugin/verve.{c,h}: Add terminal exec feature. Open
+	  directories with exo-open, just like URLs and eMail addresses.
+
+2006-03-21	Jannis Pohlmann <jannis at xfce.org>
+
+	* panel-plugin/verve-plugin.c: Remove debug print statements.
+
+2006-03-21	Jannis Pohlmann <jannis at xfce.org>
+
+	* panel-plugin/verve-dbus-service.c: Add "plugin" property and call
+	  xfce_panel_focus_widget () when the "OpenDialog" method is called.
+	* panel-plugin/verve-plugin.c: Set "plugin" property of D-BUS 
+	  service.
+
+2006-03-21	Jannis Pohlmann <jannis at xfce.org>
+
+	* verve/*.{c,h}: Moved all source files to panel-plugin/.
+	* panel-plugin/verve-dbus-services.*: Implemented org.xfce.RunDialog 
+	  D-BUS service. 
+	* tests/*.*: Removed test script.
+	* configure.in.in, Makefile.am: Add optional D-BUS support.
+
+2006-03-21	Jannis Pohlmann <jannis at xfce.org>
+
+	* verve/verve-db.{c,h}, tests/Makefile.am, panel-plugin/Makefile.am, 
+	  verve/verve.{c,h}: Removed unused verve command database.
+	* verve/verve-history.h: Include <libxfce4util/libxfce4util.h>.
+	* verve/verve.c: Fixed error handling which made the plugin crash on
+	  shell errors (this fixes bug #6663).
+
+2006-03-02	Jannis Pohlmann <jannis at xfce.org>
+
+	* Fix version string (use 0.2.0 instead of 0.2).
+
+2006-03-02	Jannis Pohlmann <jannis at xfce.org>
+
+	* Fixed another resize bug. The user-defined width will now
+	  be used no matter how the panel behaves.
+
+2006-03-02	Jannis Pohlmann <jannis at xfce.org>
+
+	* Create 0.2 tag
+
+2006-03-02	Jannis Pohlmann <jannis at xfce.org>
+
+	* configure.in.in: Change package version to 0.2
+	* THANKS: Update translator credits
+	* po/*.po[t]: Update translation files
+
+2006-02-14	Jannis Pohlmann <jannis at xfce.org>
+
+	* panel-plugin/verve-plugin.c: Added config.h include. This 
+	  fixes translation problems (translations weren't displayed 
+	  before).
+
+2006-02-14	Jannis Pohlmann <jannis at xfce.org>
+
+	* panel-plugin/verve-plugin.c: Return TRUE in 
+	  verve_plugin_update_size.
+	* configure.in.in: Rename fr_CH to fr.
+
+2006-02-12	Jannis Pohlmann <jannis at xfce.org>
+
+	* configure.in.in: Define libxfce4panel version more specific.
+	* panel-plugin/verve-plugin.c: Apply Jasper's patch in order to
+	  make use of the new focus grab method for external plugins.
+
+2006-02-12	Jannis Pohlmann <jannis at xfce.org>
+
+	* Fix use of unterminated supported_shells array. Use 
+	  G_N_ELEMENTS() instead of g_strv_length(). Thanks to
+	  Jasper for the patch.
+
+2006-02-11	Jannis Pohlmann <jannis at xfce.org>
+
+	* panel-plugin/verve-plugin.c, panel-plugin/configure.in.in: 
+	  Make plugin exteral. Patch provided by Jasper.
+
+2006-02-11	Jannis Pohlmann <jannis at xfce.org>
+	
+	* panel-plugin/Makefile.am: Applied another one of Daichi's 
+	  patches
+
+2006-02-11	Jannis Pohlmann <jannis at xfce.org>
+
+	* configure.in.in: Applied Daichi's AC_INIT patch
+
+2006-02-09	Jannis Pohlmann <jannis at xfce.org>
+
+	* Implement size-changed signal in order to keep the width
+	  defined in the properties dialog when the panel size changes
+
+2006-02-09	Jannis Pohlmann <jannis at xfce.org>
+
+	* Cache the last 25 commands on disk when closing the panel
+	  and restore them on the next start
+
+2006-02-08	Jannis Pohlmann <jannis at xfce.org>
+
+	* Don't display an error when executing an URL
+
+2006-02-08	Jannis Pohlmann <jannis at xfce.org>
+
+	* Make libstartup-notification non-optional
+
+2O06-02-07	Jannis Pohlmann <jannis at xfce.org>
+	
+	* Added a small test program in order to search for
+	  memory leaks
+
+2006-02-07	Jannis Pohlmann <jannis at xfce.org>
+
+	* Avoid the error dialog to appear twice
+
+2006-02-07	Jannis Pohlmann <jannis at xfce.org>
+	
+	* Don't trim before auto-completing, as this would make
+	  things just more complicated than necessary.
+
+2006-02-07	Jannis Pohlmann <jannis at xfce.org>
+
+	* Removed XFCE_PANEL_PLUGIN call from configure.in.in
+
+2006-02-07	Jannis Pohlmann <jannis at xfce.org>
+
+	* Trim whitespaces before parsing the command. This fixes 
+	  bug #6311.
+	* Don't clear input if exec_command (libfcegui4). Bug #6310.
+
+2006-02-07	Jannis Pohlmann <jannis at xfce.org>
+	
+	* Added intltool-* scripts to DIST_EXTRA and DISTCLEAN
+	* Added po/Makefil.am added
+
+2006-02-07	Jannis Pohlmann <jannis at xfce.org>
+	
+	* Added intltool-* scripts
+
+2006-02-07	Jannis Pohlmann <jannis at xfce.org>
+	
+	* Moved src/ to verve/
+
+2006-02-07	Jannis Pohlmann <jannis at xfce.org>
+	
+	* Added missing NEWS file
+
+2006-02-07	Jannis Pohlmann <jannis at xfce.org>
+
+	* Initial import into Xfce Goodies SVN
+
+2006-02-06	Jannis Pohlmann <jannis at xfce.org>
+
+	* src/verve-history.{c,h}: Function for getting the last item
+	  of the list added
+	* src/verve-plugin.c: Use newly added history function when 
+	  pressing GDK_Down
+
+# vi:set ts=8 sw=8 tw=72 noet ai nocindent:

Deleted: verve-plugin/tags/0.3.5/README

Copied: verve-plugin/tags/0.3.5/README (from rev 2389, verve-plugin/trunk/README)
===================================================================
--- verve-plugin/tags/0.3.5/README	                        (rev 0)
+++ verve-plugin/tags/0.3.5/README	2007-01-16 21:51:22 UTC (rev 2390)
@@ -0,0 +1,9 @@
+Required packages:
+  * exo >= 0.3.1.3
+  * xfce4-panel >= 4.3.28
+  * libxfce4util >= 4.3.0
+  * GLib >= 2.6.4
+  * pcre
+
+Optionally required packages:
+  * D-BUS >= 0.34

Deleted: verve-plugin/tags/0.3.5/THANKS

Copied: verve-plugin/tags/0.3.5/THANKS (from rev 2389, verve-plugin/trunk/THANKS)
===================================================================
--- verve-plugin/tags/0.3.5/THANKS	                        (rev 0)
+++ verve-plugin/tags/0.3.5/THANKS	2007-01-16 21:51:22 UTC (rev 2390)
@@ -0,0 +1,22 @@
+Translators
+-----------
+Michal Várady       (cs)    <miko.vaji at gmail.com>
+Carles Munoz Gorriz (ca)    <carlesmu at internautas.org>
+Stavros Giannouris  (el)    <stavrosg at serverhive.com>
+Jarbas Araujo Jr.   (eo)    <jarbasaraujojr at yahoo.com.br>
+Piarres Beobide	    (eu)    <pi at beobide.net>
+Jannis Pohlmann     (de)    <jannis at xfce.org>
+Jari Rahkonen       (fi)    <jari.rakhonen at pp1.inet.fi>
+Maximilian Schleiss (fr)    <maxschleiss at bluewin.ch>
+SZERVÁC Attila      (hu)    <sas at 321.hu>
+Roberto Pariset     (it)    <r.pariset at gmail.com>
+Daichi Kawahata     (ja)    <daichi at xfce.org>
+Vincent             (nl)    <imnotb at gmail.com>
+Stephan Arts        (nl)    <stephan at xfce.org>
+Piotr Malinski      (po)    <admin at rk.edu.pl>
+Piotr Maliński      (pl)    <admin at rk.edu.pl>
+Tomas A. Schertel   (pt_BR) <tschertel at gmail.com>
+A S Alam            (pu)    <aalam at users.sf.net>
+Andrey Fedoseev     (ru)    <andrey.fedoseev at gmail.com>
+Phan Vĩnh Thịnh     (vi)    <teppi at vnlinux.org>
+Hydonsingore Cia    (zh_TW) <hydonsingore at educities.edu.tw>

Deleted: verve-plugin/tags/0.3.5/configure.in.in

Copied: verve-plugin/tags/0.3.5/configure.in.in (from rev 2389, verve-plugin/trunk/configure.in.in)
===================================================================
--- verve-plugin/tags/0.3.5/configure.in.in	                        (rev 0)
+++ verve-plugin/tags/0.3.5/configure.in.in	2007-01-16 21:51:22 UTC (rev 2390)
@@ -0,0 +1,102 @@
+dnl $Id$
+dnl
+dnl Copyright (c) 2006 - Jannis Pohlmann <jannis at xfce.org>
+dnl
+
+dnl ***************************
+dnl *** Initialize autoconf ***
+dnl ***************************
+AC_COPYRIGHT([Copyright (c) 2006-2007 Jannis Pohlmann <jannis at xfce.org>])
+AC_INIT([verve-plugin], [0.3.5], [jannis at xfce.org], [verve-plugin])
+AC_REVISION([$Id$])
+AC_PREREQ([2.50])
+
+dnl ***************************
+dnl *** Initialize automake ***
+dnl ***************************
+AM_INIT_AUTOMAKE([AC_PACKAGE_TARNAME()], [AC_PACKAGE_VERSION()])
+AM_CONFIG_HEADER([config.h])
+AM_MAINTAINER_MODE()
+
+dnl *******************************
+dnl *** Check for UNIX variants ***
+dnl *******************************
+AC_AIX()
+AC_ISC_POSIX()
+AC_MINIX()
+
+dnl ********************************
+dnl *** Check for basic programs ***
+dnl ********************************
+AC_PROG_CC()
+AC_PROG_LD()
+AC_PROG_INSTALL()
+AC_PROG_INTLTOOL()
+
+dnl **************************
+dnl *** Initialize libtool ***
+dnl **************************
+AC_DISABLE_STATIC()
+AC_PROG_LIBTOOL()
+
+dnl **********************************
+dnl *** Check for standard headers ***
+dnl **********************************
+AC_HEADER_STDC()
+
+dnl ******************************
+dnl *** Check for i18n support ***
+dnl ******************************
+XDT_I18N([ca cs de el eu fi fr it ja nl pl pt_BR ru vi])
+
+dnl ***********************************
+dnl *** Check for required packages ***
+dnl ***********************************
+XDT_CHECK_PACKAGE([LIBEXO], [exo-0.3], [0.3.1.3])
+XDT_CHECK_PACKAGE([LIBXFCE4PANEL], [libxfce4panel-1.0], [4.3.90.2svn-22691])
+XDT_CHECK_PACKAGE([LIBXFCE4UTIL], [libxfce4util-1.0], [4.3.0])
+XDT_CHECK_PACKAGE([GLIB], [glib-2.0], [2.6.4])
+XDT_CHECK_PACKAGE([GTHREAD], [gthread-2.0], [2.6.4])
+
+dnl **************************
+dnl *** Check for libpcre3 ***
+dnl **************************
+LIBPCRE_LIBS=""
+LIBPCRE_CFLAGS=""
+AC_CHECK_LIB([pcre], [pcre_compile],
+[
+  AC_CHECK_HEADER([pcre.h],
+  [
+    LIBPCRE_LIBS="-lpcre"
+    AC_DEFINE([HAVE_LIBPCRE], [1], [Define to 1 if libpcre is found])
+    AC_DEFINE([HAVE_PCRE_H], [1], [Define to 1 if pcre.h is found])
+  ])
+], [-lm])
+AC_SUBST([LIBPCRE_CFLAGS])
+AC_SUBST([LIBPCRE_LIBS])
+
+dnl *********************************
+dnl ** Optional support for D-BUS ***
+dnl *********************************
+XDT_CHECK_OPTIONAL_PACKAGE([DBUS], [dbus-glib-1],
+                           [0.34], [dbus], [D-BUS support])
+
+dnl *******************************************************
+dnl ** Determine if D-BUS version is >= 0.60 in order to **
+dnl ** set correct flags when calling D-BUS functions    **
+dnl *******************************************************
+if $PKG_CONFIG --atleast-version=0.60 dbus-glib-1 >/dev/null 2>&1; then
+  AC_DEFINE([HAVE_DBUS_NEW_FLAGS], [1], [Define if D-BUS version >= 0.60])
+fi
+
+dnl ***********************************
+dnl *** Check for debugging support ***
+dnl ***********************************
+BM_DEBUG_SUPPORT()
+
+AC_OUTPUT([
+Makefile
+panel-plugin/Makefile
+scripts/Makefile
+po/Makefile.in
+])

Deleted: verve-plugin/tags/0.3.5/panel-plugin/verve-dbus-service.c

Copied: verve-plugin/tags/0.3.5/panel-plugin/verve-dbus-service.c (from rev 2389, verve-plugin/trunk/panel-plugin/verve-dbus-service.c)
===================================================================
--- verve-plugin/tags/0.3.5/panel-plugin/verve-dbus-service.c	                        (rev 0)
+++ verve-plugin/tags/0.3.5/panel-plugin/verve-dbus-service.c	2007-01-16 21:51:22 UTC (rev 2390)
@@ -0,0 +1,224 @@
+/***************************************************************************
+ *            verve-dbus-service.c
+ *
+ *  $Id$
+ *  Copyright  2006-2007  Jannis Pohlmann
+ *  jannis at xfce.org
+ ****************************************************************************/
+
+/*
+ *  This program is free software; you can redistribute it and/or modify
+ *  it under the terms of the GNU General Public License as published by
+ *  the Free Software Foundation; either version 2 of the License, or
+ *  (at your option) any later version.
+ *
+ *  This program is distributed in the hope that it will be useful,
+ *  but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ *  GNU General Public License for more details.
+ *
+ *  You should have received a copy of the GNU General Public License
+ *  along with this program; if not, write to the Free Software
+ *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include <glib-object.h>
+#include <glib/gstdio.h>
+
+#include <gtk/gtk.h>
+
+#include <dbus/dbus-glib-bindings.h>
+#include <dbus/dbus-glib-lowlevel.h>
+#include <dbus/dbus.h>
+
+#include <libxfce4panel/xfce-panel-plugin.h>
+
+#include "verve-dbus-service.h"
+
+
+
+static void     verve_dbus_service_class_init  (VerveDBusServiceClass *klass);
+static void     verve_dbus_service_init        (VerveDBusService      *dbus_service);
+static void     verve_dbus_service_finalize    (GObject               *object);
+static gboolean verve_dbus_service_open_dialog (VerveDBusService      *dbus_service, 
+                                                const gchar           *dir, 
+                                                const gchar           *display,
+                                                GError               **error);
+static gboolean verve_dbus_service_grab_focus  (VerveDBusService      *dbus_service);
+
+
+
+struct _VerveDBusServiceClass
+{
+  GObjectClass __parent__;
+
+  /* Signal identifiers */
+  guint open_dialog_signal_id;
+  guint grab_focus_signal_id;
+};
+
+struct _VerveDBusService
+{
+  GObject __parent__;
+
+  /* D-BUS connection */
+  DBusGConnection *connection;
+};
+
+
+
+static GObjectClass *verve_dbus_service_parent_class;
+
+
+
+GType
+verve_dbus_service_get_type (void)
+{
+  static GType type = G_TYPE_INVALID;
+
+  if (G_UNLIKELY (type == G_TYPE_INVALID))
+  {
+    static const GTypeInfo info = 
+    {
+      sizeof (VerveDBusServiceClass),
+      NULL,
+      NULL,
+      (GClassInitFunc) verve_dbus_service_class_init,
+      NULL,
+      NULL,
+      sizeof (VerveDBusService),
+      0,
+      (GInstanceInitFunc) verve_dbus_service_init,
+      NULL,
+    };
+
+    type = g_type_register_static (G_TYPE_OBJECT, "VerveDBusService", &info, 0);
+  }
+  
+  return type;
+}
+
+
+  
+static void
+verve_dbus_service_class_init (VerveDBusServiceClass *klass)
+{
+  extern const DBusGObjectInfo dbus_glib_verve_dbus_service_object_info;
+  GObjectClass *gobject_class;
+
+#if 0
+  g_type_class_add_private (klass, sizeof (VerveDBusServicePrivate)); 
+#endif
+  
+  verve_dbus_service_parent_class = g_type_class_peek_parent (klass);
+
+  gobject_class = G_OBJECT_CLASS (klass);
+  gobject_class->finalize = verve_dbus_service_finalize;
+
+  /* Register "open-dialog" signal */
+  klass->open_dialog_signal_id = g_signal_newv ("open-dialog",
+                                                G_TYPE_FROM_CLASS (gobject_class),
+                                                G_SIGNAL_RUN_LAST | G_SIGNAL_NO_RECURSE | G_SIGNAL_NO_HOOKS,
+                                                NULL,
+                                                NULL,
+                                                NULL,
+                                                g_cclosure_marshal_VOID__VOID,
+                                                G_TYPE_NONE,
+                                                0,
+                                                NULL);
+
+  /* Register "grab-focus" signal */
+  klass->grab_focus_signal_id = g_signal_newv ("grab-focus",
+                                               G_TYPE_FROM_CLASS (gobject_class),
+                                               G_SIGNAL_RUN_LAST | G_SIGNAL_NO_RECURSE | G_SIGNAL_NO_HOOKS,
+                                               NULL,
+                                               NULL,
+                                               NULL,
+                                               g_cclosure_marshal_VOID__VOID,
+                                               G_TYPE_NONE,
+                                               0,
+                                               NULL);
+
+  /* Install the D-BUS info */
+  dbus_g_object_type_install_info (G_TYPE_FROM_CLASS (klass), &dbus_glib_verve_dbus_service_object_info);
+}
+
+
+
+static void
+verve_dbus_service_init (VerveDBusService *dbus_service)
+{
+  GError *error = NULL;
+
+  /* Try to connect to the session bus */
+  dbus_service->connection = dbus_g_bus_get (DBUS_BUS_SESSION, &error);
+  if (G_LIKELY (dbus_service->connection != NULL))
+  {
+    /* Register the /org/xfce/RunDialog object for Verve */
+    dbus_g_connection_register_g_object (dbus_service->connection, "/org/xfce/RunDialog", G_OBJECT (dbus_service));
+
+    /* Request service names */
+#ifdef HAVE_DBUS_NEW_FLAGS
+    dbus_bus_request_name (dbus_g_connection_get_connection (dbus_service->connection), "org.xfce.Verve", DBUS_NAME_FLAG_REPLACE_EXISTING|DBUS_NAME_FLAG_ALLOW_REPLACEMENT, NULL);
+    dbus_bus_request_name (dbus_g_connection_get_connection (dbus_service->connection), "org.xfce.RunDialog", DBUS_NAME_FLAG_REPLACE_EXISTING|DBUS_NAME_FLAG_ALLOW_REPLACEMENT, NULL);
+#else
+    dbus_bus_request_name (dbus_g_connection_get_connection (dbus_service->connection), "org.xfce.Verve", DBUS_NAME_FLAG_REPLACE_EXISTING, NULL);
+    dbus_bus_request_name (dbus_g_connection_get_connection (dbus_service->connection), "org.xfce.RunDialog", DBUS_NAME_FLAG_REPLACE_EXISTING, NULL);
+#endif /* !HAVE_DBUS_NEW_FLAGS */
+  }
+  else
+  {
+    /* Notify the user that D-BUS won't be a available */
+    g_fprintf (stderr, "Verve: Failed to connect to the D-BUS session bus: %s\n", error->message);
+    g_error_free (error);
+  }
+}
+
+
+
+static void
+verve_dbus_service_finalize (GObject *object)
+{
+  VerveDBusService *dbus_service = VERVE_DBUS_SERVICE (object);
+
+  /* Release the D-BUS connection object */
+  if (G_LIKELY (dbus_service->connection != NULL))
+    dbus_g_connection_unref (dbus_service->connection);
+
+  (*G_OBJECT_CLASS (verve_dbus_service_parent_class)->finalize) (object);
+}
+
+
+
+static gboolean
+verve_dbus_service_open_dialog (VerveDBusService *dbus_service, 
+                                const gchar *dir, 
+                                const gchar *display, 
+                                GError **error)
+{
+  /* Emit "open-dialog" signal */
+  g_signal_emit (dbus_service, VERVE_DBUS_SERVICE_GET_CLASS (dbus_service)->open_dialog_signal_id, 0, NULL);
+
+  return TRUE;
+}
+
+
+
+static gboolean
+verve_dbus_service_grab_focus (VerveDBusService *dbus_service)
+{
+  /* Emit "grab-focus" signal */
+  g_signal_emit (dbus_service, VERVE_DBUS_SERVICE_GET_CLASS (dbus_service)->grab_focus_signal_id, 0, NULL);
+
+  return TRUE;
+}
+  
+
+
+#include "verve-dbus-service-infos.h"
+
+/* vim:set expandtab ts=1 sw=2: */

Deleted: verve-plugin/tags/0.3.5/panel-plugin/verve-dbus-service.h

Copied: verve-plugin/tags/0.3.5/panel-plugin/verve-dbus-service.h (from rev 2389, verve-plugin/trunk/panel-plugin/verve-dbus-service.h)
===================================================================
--- verve-plugin/tags/0.3.5/panel-plugin/verve-dbus-service.h	                        (rev 0)
+++ verve-plugin/tags/0.3.5/panel-plugin/verve-dbus-service.h	2007-01-16 21:51:22 UTC (rev 2390)
@@ -0,0 +1,48 @@
+/***************************************************************************
+ *            verve-dbus-service.h
+ *
+ *  $Id$
+ *  Copyright  2006-2007  Jannis Pohlmann
+ *  jannis at xfce.org
+ ****************************************************************************/
+
+/*
+ *  This program is free software; you can redistribute it and/or modify
+ *  it under the terms of the GNU General Public License as published by
+ *  the Free Software Foundation; either version 2 of the License, or
+ *  (at your option) any later version.
+ *
+ *  This program is distributed in the hope that it will be useful,
+ *  but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ *  GNU General Public License for more details.
+ *
+ *  You should have received a copy of the GNU General Public License
+ *  along with this program; if not, write to the Free Software
+ *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ */
+ 
+#ifndef __VERVE_DBUS_SERVICE_H__
+#define __VERVE_DBUS_SERVICE_H__
+
+#include <glib-object.h>
+
+G_BEGIN_DECLS;
+
+typedef struct _VerveDBusServiceClass VerveDBusServiceClass;
+typedef struct _VerveDBusService VerveDBusService;
+  
+#define VERVE_TYPE_DBUS_SERVICE            (verve_dbus_service_get_type ())
+#define VERVE_DBUS_SERVICE(obj)            (G_TYPE_CHECK_INSTANCE_CAST ((obj), VERVE_TYPE_DBUS_SERVICE, VerveDBusService))
+#define VERVE_DBUS_SERVICE_CLASS(klass)    (G_TYPE_CHECK_CLASS_CAST ((klass, VERVE_TYPE_DBUS_SERVICE, VerveDBusServiceClass)))
+#define VERVE_IS_DBUS_SERVICE(obj)         (G_TYPE_CHECK_INSTANCE_TYPE ((obj), VERVE_TYPE_DBUS_SERVICE))
+#define VERVE_IS_DBUS_SERVICE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), VERVE_TYPE_DBUS_SERVICE))
+#define VERVE_DBUS_SERVICE_GET_CLASS(obj)  (G_TYPE_INSTANCE_GET_CLASS ((obj), VERVE_TYPE_DBUS_SERVICE, VerveDBusServiceClass))
+
+GType verve_dbus_service_get_type (void) G_GNUC_CONST;
+
+G_END_DECLS;
+
+#endif /* __VERVE_DBUS_SERVICE_H__ */
+
+/* vim:set expandtab ts=1 sw=2: */

Deleted: verve-plugin/tags/0.3.5/panel-plugin/verve-env.c

Copied: verve-plugin/tags/0.3.5/panel-plugin/verve-env.c (from rev 2389, verve-plugin/trunk/panel-plugin/verve-env.c)
===================================================================
--- verve-plugin/tags/0.3.5/panel-plugin/verve-env.c	                        (rev 0)
+++ verve-plugin/tags/0.3.5/panel-plugin/verve-env.c	2007-01-16 21:51:22 UTC (rev 2390)
@@ -0,0 +1,309 @@
+/***************************************************************************
+ *            verve-env.c
+ *
+ *  $Id$
+ *  Copyright  2006-2007  Jannis Pohlmann
+ *  jannis at xfce.org
+ ****************************************************************************/
+
+/* 
+ *  This program is free software; you can redistribute it and/or modify
+ *  it under the terms of the GNU General Public License as published by
+ *  the Free Software Foundation; either version 2 of the License, or
+ *  (at your option) any later version.
+ *
+ *  This program is distributed in the hope that it will be useful,
+ *  but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ *  GNU General Public License for more details.
+ *
+ *  You should have received a copy of the GNU General Public License
+ *  along with this program; if not, write to the Free Software
+ *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include "verve-env.h"
+
+
+
+static void     verve_env_class_init             (VerveEnvClass *klass);
+static void     verve_env_init                   (VerveEnv      *env);
+static void     verve_env_finalize               (GObject       *object);
+static void     verve_env_load_binaries          (VerveEnv      *env);
+static gpointer verve_env_load_thread            (gpointer       user_data);
+
+
+
+struct _VerveEnvClass
+{
+  GObjectClass __parent__;
+
+  guint        load_binaries_signal;
+
+  /* Signals */
+  void (*load_binaries) (VerveEnv *env);
+};
+
+
+
+struct _VerveEnv
+{
+  GObject  __parent__;
+
+  /* $PATH list */
+  gchar  **paths;
+
+  /* Binaries in $PATH */
+  GList   *binaries;
+
+  /* Thread used for loading $PATH binary names */
+  gboolean load_thread_cancelled;
+  GThread *load_thread;
+};
+
+
+
+static GObjectClass *verve_env_parent_class;
+
+
+
+GType
+verve_env_get_type (void)
+{
+  static GType type = G_TYPE_INVALID;
+  
+  if (G_UNLIKELY (type == G_TYPE_INVALID))
+    {
+      static const GTypeInfo info = 
+      {
+        sizeof (VerveEnvClass),
+        NULL,
+        NULL,
+        (GClassInitFunc) verve_env_class_init,
+        NULL,
+        NULL,
+        sizeof (VerveEnv),
+        0,
+        (GInstanceInitFunc) verve_env_init,
+        NULL,
+      };
+      
+      type = g_type_register_static (G_TYPE_OBJECT, "VerveEnv", &info, 0);
+    }
+    
+  return type;
+}
+
+
+
+void
+verve_env_class_init (VerveEnvClass *klass)
+{
+  GObjectClass *gobject_class;
+  
+  /* Determine parent class */
+  verve_env_parent_class = g_type_class_peek_parent (klass);
+  
+  gobject_class = G_OBJECT_CLASS (klass);
+  gobject_class->finalize = verve_env_finalize;
+
+  klass->load_binaries = verve_env_load_binaries;
+
+  /* Register "load-binaries" signal */
+  klass->load_binaries_signal = g_signal_new ("load-binaries", 
+                                              G_TYPE_FROM_CLASS (klass), 
+                                              G_SIGNAL_RUN_LAST,
+                                              G_STRUCT_OFFSET (VerveEnvClass, load_binaries),
+                                              NULL, NULL,
+                                              g_cclosure_marshal_VOID__VOID,
+                                              G_TYPE_NONE,
+                                              0);
+}
+
+
+
+void 
+verve_env_init (VerveEnv *env)
+{
+  env->paths = NULL;
+  env->binaries = NULL;
+
+  /* Spawn the thread used to load the command completion data */
+  env->load_thread = g_thread_create_full (verve_env_load_thread, env, 0, TRUE, FALSE, G_THREAD_PRIORITY_LOW, NULL);
+}
+
+
+
+static VerveEnv *env = NULL;  
+
+
+
+VerveEnv*
+verve_env_get (void)
+{
+  if (G_UNLIKELY (env == NULL))
+    {
+      env = g_object_new (VERVE_TYPE_ENV, NULL);
+      g_object_add_weak_pointer (G_OBJECT (env), (gpointer) &env);
+    }
+  else
+    g_object_ref (G_OBJECT (env));
+  
+  return env;
+}
+
+
+
+void 
+verve_env_shutdown (void)
+{
+  if (G_LIKELY (env != NULL))
+    g_object_unref (G_OBJECT (env));
+}
+
+
+
+static void 
+verve_env_finalize (GObject *object)
+{
+  VerveEnv *env = VERVE_ENV (object);
+
+  /* Cancel and join the loading thread */
+  env->load_thread_cancelled = TRUE;
+  g_thread_join (env->load_thread);
+
+  /* Free path list */
+  if (G_LIKELY (env->paths != NULL))
+    g_strfreev (env->paths);
+
+  /* Free binaries list */
+  if (G_LIKELY (env->binaries != NULL))
+    {
+      g_list_foreach (env->binaries, (GFunc) g_free, NULL);
+#if 0
+      GList *iter = g_list_first (env->binaries);
+      while (iter != NULL)
+        {
+          g_free ((gchar *)iter->data);
+          iter = g_list_next (iter);
+        }
+#endif
+      g_list_free (env->binaries);
+      env->binaries = NULL;
+    }
+}
+
+
+
+/*********************************************************************
+ *
+ * PATH parsing and search routines
+ *
+ *********************************************************************/
+
+gchar**
+verve_env_get_path (VerveEnv *env)
+{
+  if (G_UNLIKELY (env->paths == NULL))
+    env->paths = g_strsplit (g_getenv ("PATH"), G_SEARCHPATH_SEPARATOR_S, -1);
+
+  return env->paths;
+}
+
+
+
+GList *
+verve_env_get_path_binaries (VerveEnv *env)
+{
+  return env->binaries;
+}
+
+
+
+static gpointer
+verve_env_load_thread (gpointer user_data)
+{
+  VerveEnv *env = VERVE_ENV (user_data);
+  gchar   **paths;
+  int       i;
+  
+  /* Get $PATH directories */
+  paths = verve_env_get_path (env);
+  
+  /* Iterate over paths list */
+  for (i=0; !env->load_thread_cancelled && i<g_strv_length (paths); i++)
+  {
+    const gchar *current;
+    gchar       *filename;
+    GList       *lp;
+    /* Try opening the directory */
+    GDir *dir = g_dir_open (paths[i], 0, NULL);
+
+    /* Continue with next directory if this one cant' be opened */
+    if (G_UNLIKELY (dir == NULL)) 
+      continue;
+
+    /* Iterate over files in this directory */
+    while (!env->load_thread_cancelled && (current = g_dir_read_name (dir)) != NULL)
+      {
+        /* Convert to valid UTF-8 */
+        filename = g_filename_display_name (current);
+
+        /* Avoid duplicates */
+        for (lp = g_list_first (env->binaries); lp != NULL; lp = lp->next)
+          if (g_ascii_strcasecmp (lp->data, filename) == 0)
+            break;
+       
+        /* Check details of file if it's not in the list already */
+        if (G_LIKELY (lp == NULL))
+          {
+            /* Determine the absolute path to the file */
+            gchar *path = g_build_filename (paths[i], current, NULL);
+
+            /* Check if the path refers to an executable */
+            if (g_file_test (path, G_FILE_TEST_IS_EXECUTABLE) &&
+                !g_file_test (path, G_FILE_TEST_IS_DIR))
+              {
+                /* Add file filename to the list */
+                env->binaries = g_list_prepend (env->binaries, filename);
+
+                /* No need to free the filename later in this function */
+                filename = NULL;
+              }
+
+            /* Free absolute path */
+            g_free (path);
+          }
+
+        /* Release filename if necessary */
+        g_free (filename);
+      }
+
+    /* Close directory */
+    g_dir_close (dir);
+  }
+
+  /* Sort binaries */
+  env->binaries = g_list_sort (env->binaries, (GCompareFunc) g_utf8_collate);
+
+  /* Emit 'load-binaries' signal */
+  g_signal_emit_by_name (env, "load-binaries");
+
+  return env->binaries;
+}
+
+
+
+static void
+verve_env_load_binaries (VerveEnv *env)
+{
+  /* Do nothing */
+}
+
+
+
+/* vim:set expandtab sts=2 ts=2 sw=2: */

Deleted: verve-plugin/tags/0.3.5/panel-plugin/verve-env.h

Copied: verve-plugin/tags/0.3.5/panel-plugin/verve-env.h (from rev 2389, verve-plugin/trunk/panel-plugin/verve-env.h)
===================================================================
--- verve-plugin/tags/0.3.5/panel-plugin/verve-env.h	                        (rev 0)
+++ verve-plugin/tags/0.3.5/panel-plugin/verve-env.h	2007-01-16 21:51:22 UTC (rev 2390)
@@ -0,0 +1,53 @@
+/***************************************************************************
+ *            verve-env.h
+ *
+ *  $Id$
+ *  Copyright  2006-2007  Jannis Pohlmann
+ *  jannis at xfce.org
+ ****************************************************************************/
+
+/*
+ *  This program is free software; you can redistribute it and/or modify
+ *  it under the terms of the GNU General Public License as published by
+ *  the Free Software Foundation; either version 2 of the License, or
+ *  (at your option) any later version.
+ *
+ *  This program is distributed in the hope that it will be useful,
+ *  but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ *  GNU General Public License for more details.
+ *
+ *  You should have received a copy of the GNU General Public License
+ *  along with this program; if not, write to the Free Software
+ *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ */
+ 
+#ifndef __VERVE_ENV_H__
+#define __VERVE_ENV_H__
+
+#include <glib-object.h>
+
+G_BEGIN_DECLS;
+
+typedef struct _VerveEnvClass VerveEnvClass;
+typedef struct _VerveEnv      VerveEnv;
+  
+#define VERVE_TYPE_ENV            (verve_env_get_type ())
+#define VERVE_ENV(obj)            (G_TYPE_CHECK_INSTANCE_CAST ((obj), VERVE_TYPE_ENV, VerveEnv))
+#define VERVE_ENV_CLASS(klass)    (G_TYPE_CHECK_CLASS_CAST ((klass, VERVE_TYPE_ENV, VerveEnvClass)))
+#define VERVE_IS_ENV(obj)         (G_TYPE_CHECK_INSTANCE_TYPE ((obj), VERVE_TYPE_ENV))
+#define VERVE_IS_ENV_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), VERVE_TYPE_ENV))
+#define VERVE_ENV_GET_CLASS(obj)  (G_TYPE_INSTANCE_GET_CLASS ((obj), VERVE_TYPE_ENV, VerveEnvClass))
+
+GType        verve_env_get_type          (void) G_GNUC_CONST;
+VerveEnv    *verve_env_get               (void);
+gchar      **verve_env_get_path          (VerveEnv *env);
+GList       *verve_env_get_path_binaries (VerveEnv *env);
+
+void         verve_env_shutdown          (void);
+
+G_END_DECLS;
+
+#endif /* __VERVE_ENV_H__ */
+
+/* vim:set expandtab sts=2 ts=2 sw=2: */

Deleted: verve-plugin/tags/0.3.5/panel-plugin/verve-history.c

Copied: verve-plugin/tags/0.3.5/panel-plugin/verve-history.c (from rev 2389, verve-plugin/trunk/panel-plugin/verve-history.c)
===================================================================
--- verve-plugin/tags/0.3.5/panel-plugin/verve-history.c	                        (rev 0)
+++ verve-plugin/tags/0.3.5/panel-plugin/verve-history.c	2007-01-16 21:51:22 UTC (rev 2390)
@@ -0,0 +1,329 @@
+/***************************************************************************
+ *            verve-history.h
+ *
+ *  $Id$
+ *  Copyright  2006-2007  Jannis Pohlmann
+ *  jannis at xfce.org
+ ****************************************************************************/
+
+/*
+ *  This program is free software; you can redistribute it and/or modify
+ *  it under the terms of the GNU General Public License as published by
+ *  the Free Software Foundation; either version 2 of the License, or
+ *  (at your option) any later version.
+ *
+ *  This program is distributed in the hope that it will be useful,
+ *  but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ *  GNU General Public License for more details.
+ *
+ *  You should have received a copy of the GNU General Public License
+ *  along with this program; if not, write to the Free Software
+ *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include <libxfce4util/libxfce4util.h>
+
+#include "verve.h"
+#include "verve-history.h"
+
+
+
+const gchar *verve_history_cache_get_filename (void);
+static void  verve_history_cache_load         (void);
+static void  verve_history_cache_write        (void);
+static void  verve_history_append             (gchar *command);
+
+
+
+/*********************************************************************
+ * 
+ * Init / Shutdown functions
+ *
+ *********************************************************************/
+
+static gint   history_length = 25;
+static GList *history = NULL;
+
+
+
+void 
+verve_history_init (void)
+{
+  verve_history_cache_load ();
+}
+
+
+
+void
+verve_history_shutdown (void)
+{
+  /* Write history into the cache file */
+  verve_history_cache_write ();
+
+  /* Free history data */
+  if (G_LIKELY (history != NULL))
+    {
+      /* Free entries */
+      GList *iter = g_list_first (history);
+      while (iter != NULL)
+        {
+          g_free ((gchar *)iter->data);
+          iter = g_list_next (iter);
+        }
+      
+      /* Free list */
+      g_list_free (history);
+    }
+}
+
+
+
+void
+verve_history_set_length (gint length)
+{
+  history_length = length;
+}
+
+
+
+void
+verve_history_add (gchar *input)
+{
+  /* Prepend input to history */
+  history = g_list_prepend (history, input);
+}
+
+
+
+void
+verve_history_append (gchar *command)
+{
+  /* Append command to history */
+  history = g_list_append (history, command);
+}
+
+
+
+GList*
+verve_history_begin (void)
+{
+  /* Return first list entry or NULL */
+  return g_list_first (history);
+}
+
+
+
+GList*
+verve_history_end (void)
+{
+  /* Return last list entry or NULL */
+  return g_list_last (history);
+}
+
+
+
+GList*
+verve_history_get_prev (const GList *current)
+{
+  /* Return command before the current one or NULL */
+  return g_list_previous (current);
+}
+
+
+
+GList*
+verve_history_get_next (const GList *current)
+{
+  /* Return command after the current one or NULL */
+  return g_list_next (current);
+}
+
+
+
+gboolean
+verve_history_is_empty (void)
+{
+  /* Check whether history is uninitialized or its length is zero */
+  if (G_UNLIKELY (history == NULL) || g_list_length (history) == 0)
+    return TRUE;
+  else
+    return FALSE;
+}
+
+
+
+const gchar*
+verve_history_get_last_command (void)
+{
+  /* Get first (= latest) history entry */
+  GList *list = verve_history_begin ();
+  
+  /* Return NULL if list is empty */
+  if (G_UNLIKELY (list == NULL))
+    return NULL;
+
+  /* Return command data */
+  return (gchar *)list->data;
+}
+    
+
+
+const gchar *
+verve_history_cache_get_filename (void)
+{
+  static const gchar *filename = "xfce4/Verve/history";
+  return filename;
+}
+
+
+
+static void
+verve_history_cache_load (void)
+{
+  const gchar *basename = verve_history_cache_get_filename ();
+
+  /* Search for cache file */
+  gchar *filename = xfce_resource_lookup (XFCE_RESOURCE_CONFIG, basename);
+
+  /* Only read cache if file exists */
+  if (G_LIKELY (filename != NULL))
+    {
+      GError     *error = NULL;
+      GIOChannel *handle;
+     
+      /* Open file input stream */
+      handle = g_io_channel_new_file (filename, "r", &error);
+
+      /* Instantly destroy error messages - just ignore them */
+      if (G_UNLIKELY (error != NULL))
+        g_error_free (error);
+
+      /* Only read contents if stream could be opened */
+      if (G_LIKELY (handle != NULL))
+        {
+          GIOStatus status;
+          gchar    *line;
+          gsize     length;
+          
+          /* Read first line */
+          status = g_io_channel_read_line (handle, &line, &length, NULL, &error);
+          
+          /* Read lines until EOF is reached or an error occurs */ 
+          while (status != G_IO_STATUS_EOF && error == NULL)
+          {
+            /* Get current line, remove leading and trailing whitespace */
+            GString *strline = g_string_new (g_strstrip (line));
+
+            /* Only add non-empty lines to the history */
+            if (G_LIKELY (strline->len > 0))
+              verve_history_append (strline->str);
+
+            /* Free string data */
+            g_free (line);
+            g_string_free (strline, FALSE);
+            
+            /* Read next line */
+            status = g_io_channel_read_line (handle, &line, &length, NULL, &error);
+          }
+
+          /* Free error message */
+          if (G_UNLIKELY (error != NULL))
+            g_error_free (error);
+
+          /* Close file handle */
+          g_io_channel_shutdown (handle, TRUE, &error);
+
+          /* Again: Free error message */
+          if (G_UNLIKELY (error != NULL))
+            g_error_free (error);
+
+          /* Destroy stream object */
+          g_io_channel_unref (handle);
+        }
+    }
+
+  /* Free filename string */
+  g_free (filename);
+}
+
+
+
+static void
+verve_history_cache_write (void)
+{
+  /* Do not write history if it is empty */
+  if (verve_history_is_empty ())
+    return;
+
+  const gchar *basename = verve_history_cache_get_filename ();
+
+  /* Search for history file, create if it does not exist yet */
+  gchar *filename = xfce_resource_save_location (XFCE_RESOURCE_CONFIG, basename, TRUE);
+
+  if (G_LIKELY (filename != NULL))
+    {
+      GError     *error = NULL;
+      GIOChannel *handle;
+     
+      /* Open output stream */
+      handle = g_io_channel_new_file (filename, "w+", &error);
+
+      /* Ignore and free error messages */
+      if (G_UNLIKELY (error != NULL))
+        g_error_free (error);
+
+      /* Only write contents if stream could be opened */
+      if (G_LIKELY (handle != NULL))
+      {
+        GList    *current;
+        gsize     bytes;
+        int       i;
+
+        /* Get first history entry */
+        current = verve_history_begin();
+
+        /* Save the last 25 commands */
+        for (i = 0; i < history_length && current != NULL; i++)
+          {
+            /* Build output line */
+            gchar *line = g_strconcat ("", current->data, "\n", NULL);
+
+            /* Write line */
+            g_io_channel_write_chars (handle, line, -1, &bytes, &error);
+
+            /* Free line string */
+            g_free (line);
+            
+            /* Do not write more records if there was an error (e.g. no space left on device) */
+            if (G_UNLIKELY (error != NULL))
+              {
+                g_error_free (error);
+                break;
+              }
+            
+            /* Step over to next entry */
+            current = verve_history_get_next (current);
+          }
+
+        /* Close file handle */
+        g_io_channel_shutdown (handle, TRUE, &error);
+
+        /* Free error message */
+        if (G_UNLIKELY (error != NULL))
+          g_error_free (error);
+
+        /* Destroy stream object */
+        g_io_channel_unref (handle);
+      }
+    }
+  
+  /* Free filename string */
+  g_free (filename);
+}
+
+/* vim:set expandtab sts=2 ts=2 sw=2: */

Deleted: verve-plugin/tags/0.3.5/panel-plugin/verve-history.h

Copied: verve-plugin/tags/0.3.5/panel-plugin/verve-history.h (from rev 2389, verve-plugin/trunk/panel-plugin/verve-history.h)
===================================================================
--- verve-plugin/tags/0.3.5/panel-plugin/verve-history.h	                        (rev 0)
+++ verve-plugin/tags/0.3.5/panel-plugin/verve-history.h	2007-01-16 21:51:22 UTC (rev 2390)
@@ -0,0 +1,45 @@
+/***************************************************************************
+ *            verve-history.h
+ *
+ *  $Id$
+ *  Copyright  2006-2007  Jannis Pohlmann
+ *  jannis at xfce.org
+ ****************************************************************************/
+
+/*
+ *  This program is free software; you can redistribute it and/or modify
+ *  it under the terms of the GNU General Public License as published by
+ *  the Free Software Foundation; either version 2 of the License, or
+ *  (at your option) any later version.
+ *
+ *  This program is distributed in the hope that it will be useful,
+ *  but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ *  GNU General Public License for more details.
+ *
+ *  You should have received a copy of the GNU General Public License
+ *  along with this program; if not, write to the Free Software
+ *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ */
+
+#ifndef __VERVE_HISTORY_H__
+#define __VERVE_HISTORY_H__
+
+#include <glib-object.h>
+
+/* Init / Shutdown history database */
+void         verve_history_init             (void);
+void         verve_history_shutdown         (void);
+
+void         verve_history_set_length       (gint         length);
+void         verve_history_add              (gchar       *input);
+GList       *verve_history_begin            (void);
+GList       *verve_history_end              (void);
+GList       *verve_history_get_prev         (const GList *current);
+GList       *verve_history_get_next         (const GList *current);
+gboolean     verve_history_is_empty         (void);
+const gchar *verve_history_get_last_command (void);
+
+#endif /* !__VERVE_HISTORY_H__ */
+
+/* vim:set expandtab sts=2 ts=2 sw=2: */

Deleted: verve-plugin/tags/0.3.5/panel-plugin/verve-plugin.c

Copied: verve-plugin/tags/0.3.5/panel-plugin/verve-plugin.c (from rev 2389, verve-plugin/trunk/panel-plugin/verve-plugin.c)
===================================================================
--- verve-plugin/tags/0.3.5/panel-plugin/verve-plugin.c	                        (rev 0)
+++ verve-plugin/tags/0.3.5/panel-plugin/verve-plugin.c	2007-01-16 21:51:22 UTC (rev 2390)
@@ -0,0 +1,910 @@
+/***************************************************************************
+ *            verve-plugin.c
+ *
+ *  $Id$
+ *  Copyright  2006-2007  Jannis Pohlmann
+ *  jannis at xfce.org
+ ****************************************************************************/
+
+/*
+ *  This program is free software; you can redistribute it and/or modify
+ *  it under the terms of the GNU General Public License as published by
+ *  the Free Software Foundation; either version 2 of the License, or
+ *  (at your option) any later version.
+ *
+ *  This program is distributed in the hope that it will be useful,
+ *  but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ *  GNU General Public License for more details.
+ *
+ *  You should have received a copy of the GNU General Public License
+ *  along with this program; if not, write to the Free Software
+ *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif 
+
+#include <X11/Xlib.h>
+#include <X11/Xatom.h>
+
+#include <glib.h>
+#include <gdk/gdkkeysyms.h>
+#include <gtk/gtk.h>
+
+#include <libxfce4util/libxfce4util.h>
+#include <libxfce4panel/xfce-panel-plugin.h>
+#include <libxfcegui4/libxfcegui4.h>
+
+#include "verve.h"
+#include "verve-env.h"
+#include "verve-history.h"
+
+#ifdef HAVE_DBUS
+#include "verve-dbus-service.h"
+#endif
+
+
+
+typedef struct
+{
+  XfcePanelPlugin  *plugin;
+
+  /* User interface */
+  GtkWidget        *event_box;
+  GtkWidget        *input;
+  
+  /* Command history */
+  GList            *history_current;
+
+  /* Timeouts */
+  guint             focus_timeout;
+  
+  /* Autocompletion */
+  GCompletion      *completion;
+  gint              n_complete;
+
+  /* Properties */ 
+  gint              size;
+  gint              history_length;
+
+#ifdef HAVE_DBUS
+  VerveDBusService *dbus_service;
+#endif
+
+} VervePlugin;
+
+
+/* Mutex lock used to avoid thread collisions when accessing the command
+ * completion 
+ */
+G_LOCK_DEFINE_STATIC (plugin_completion_mutex);
+
+
+void
+verve_plugin_load_completion (VerveEnv* env, gpointer user_data)
+{
+  VervePlugin *verve = (VervePlugin*) user_data;
+
+  /* Load command history */
+  GList *history = verve_history_begin ();
+
+  /* Load linux binaries from PATH */
+  GList *binaries = verve_env_get_path_binaries (env);
+
+  /* Merged (and sorted) list */
+  GList *items = NULL;
+
+  /* Iterator */
+  GList *iter = NULL;
+
+  G_LOCK (plugin_completion_mutex);
+
+  /* Build merged list */
+  items = g_list_copy (binaries);
+  for (iter = g_list_first (history); iter != NULL; iter = g_list_next (iter))
+    items = g_list_insert_sorted (items, iter->data, (GCompareFunc) g_utf8_collate);
+
+  verve->completion = g_completion_new (NULL);
+
+  /* Add merged items to completion */
+  if (G_LIKELY (history != NULL)) 
+    g_completion_add_items (verve->completion, items);
+
+  /* Free merged list */
+  g_list_free (items);
+  
+  G_UNLOCK (plugin_completion_mutex);
+}
+
+
+  
+static gboolean
+verve_plugin_focus_timeout (VervePlugin *verve)
+{
+  GtkStyle *default_style;
+  GtkStyle *style;
+  
+  g_return_val_if_fail (verve != NULL, FALSE);
+  g_return_val_if_fail (verve->input != NULL || GTK_IS_ENTRY (verve->input), FALSE);
+  
+  /* Determine current entry style */
+  style = gtk_widget_get_style (verve->input);
+
+  /* Get default style for widgets */
+  default_style = gtk_widget_get_default_style ();
+  
+  /* Check whether the entry already is highlighted */
+  if (gdk_color_equal (&style->base[GTK_STATE_NORMAL], &style->base[GTK_STATE_SELECTED]))
+    {
+      /* Make it look normal again */
+      gtk_widget_modify_base (verve->input, GTK_STATE_NORMAL, &default_style->base[GTK_STATE_NORMAL]);
+      gtk_widget_modify_bg (verve->input, GTK_STATE_NORMAL, &default_style->bg[GTK_STATE_NORMAL]);
+      gtk_widget_modify_text (verve->input, GTK_STATE_NORMAL, &default_style->text[GTK_STATE_NORMAL]);
+    }
+  else
+    {
+      /* Highlight the entry by changing base and background colors */
+      gtk_widget_modify_base (verve->input, GTK_STATE_NORMAL, &style->base[GTK_STATE_SELECTED]);
+      gtk_widget_modify_bg (verve->input, GTK_STATE_NORMAL, &style->bg[GTK_STATE_SELECTED]);
+      gtk_widget_modify_text (verve->input, GTK_STATE_NORMAL, &style->text[GTK_STATE_SELECTED]);
+    }
+  
+  return TRUE;
+}
+
+
+
+static void
+verve_plugin_focus_timeout_reset (VervePlugin *verve)
+{
+  GtkStyle *default_style;
+
+  g_return_if_fail (verve != NULL);
+  g_return_if_fail (verve->input != NULL || GTK_IS_ENTRY (verve->input));
+
+  /* Unregister timeout */
+  if (G_LIKELY (verve->focus_timeout != 0))
+    {
+      g_source_remove (verve->focus_timeout);
+      verve->focus_timeout = 0;
+    }
+  
+  /* Get default style */
+  default_style = gtk_widget_get_default_style ();
+  
+  /* Reset entry background */
+  gtk_widget_modify_base (verve->input, GTK_STATE_NORMAL, &default_style->base[GTK_STATE_NORMAL]);
+  gtk_widget_modify_bg (verve->input, GTK_STATE_NORMAL, &default_style->bg[GTK_STATE_NORMAL]);
+  gtk_widget_modify_text (verve->input, GTK_STATE_NORMAL, &default_style->text[GTK_STATE_NORMAL]);
+}
+
+
+
+static gboolean
+verve_plugin_focus_out (GtkWidget *entry,
+                        GdkEventFocus *event,
+                        VervePlugin *verve)
+{
+  g_return_val_if_fail (verve != NULL, FALSE);
+  g_return_val_if_fail (verve->input != NULL || GTK_IS_ENTRY (verve->input), FALSE);
+
+  /* Stop blinking */
+  verve_plugin_focus_timeout_reset (verve);
+
+  return TRUE;
+}
+
+
+
+static gboolean 
+verve_plugin_buttonpress_cb (GtkWidget *entry, 
+                             GdkEventButton *event, 
+                             VervePlugin *verve)
+{
+  GtkWidget *toplevel;
+  
+  g_return_val_if_fail (entry != NULL || GTK_IS_ENTRY (entry), FALSE);
+  g_return_val_if_fail (verve != NULL, FALSE);
+ 
+  /* Determine toplevel parent widget */
+  toplevel = gtk_widget_get_toplevel (entry);
+
+  /* Reset focus timeout if necessary */
+  if (G_LIKELY (verve->focus_timeout != 0))
+    verve_plugin_focus_timeout_reset (verve);
+
+  /* Grab entry focus if possible */
+  if (event->button != 3 && toplevel && toplevel->window)
+    xfce_panel_plugin_focus_widget (verve->plugin, entry);
+
+  return FALSE;
+}
+
+
+
+#ifdef HAVE_DBUS
+static void
+verve_plugin_grab_focus (VerveDBusService *dbus_service, 
+                         VervePlugin *verve)
+{
+  GtkWidget *toplevel;
+ 
+  g_return_if_fail (verve != NULL);
+  g_return_if_fail (verve->input != NULL || GTK_IS_ENTRY (verve->input));
+ 
+  /* Determine toplevel widget */
+  toplevel = gtk_widget_get_toplevel (verve->input);
+
+  if (toplevel && toplevel->window)
+    {
+      /* Unhide the panel */
+      xfce_panel_plugin_set_panel_hidden (verve->plugin, FALSE);
+
+      /* Focus the command entry */
+      xfce_panel_plugin_focus_widget (verve->plugin, verve->input);
+      
+      /* Make it flashy so chances are higher that the user notices the focus */
+      if (verve->focus_timeout == 0) 
+        verve->focus_timeout = g_timeout_add_full (G_PRIORITY_DEFAULT_IDLE, 250, (GSourceFunc)verve_plugin_focus_timeout, verve, NULL);
+    }
+}
+#endif
+
+
+
+static gboolean 
+verve_plugin_keypress_cb (GtkWidget   *entry, 
+                          GdkEventKey *event, 
+                          VervePlugin *verve)
+{
+  GCompletion *completion;
+  gchar       *command;
+  gboolean     terminal;
+  const gchar *prefix;
+  GList       *similar = NULL;
+  gboolean     selected = FALSE;
+  gint         selstart;
+  gint         i;
+  gint         len;
+
+  g_return_val_if_fail (verve != NULL, FALSE);
+
+  /* Get entry completion */
+  completion = verve->completion;
+  
+  /* Reset focus timeout, if necessary */
+  if (verve->focus_timeout != 0)
+    verve_plugin_focus_timeout_reset (verve);
+    
+  switch (event->keyval)
+    {
+      /* Reset entry value when ESC is pressed */
+      case GDK_Escape:
+         gtk_entry_set_text (GTK_ENTRY (entry), "");
+         return TRUE;
+
+      /* Browse backwards through the command history */
+      case GDK_Down:
+        /* Do nothing if history is empty */
+        if (verve_history_is_empty ())
+          return TRUE;
+
+        /* Check if we already are in "history browsing mode" */
+        if (G_LIKELY (verve->history_current != NULL))
+          {
+            /* Get entry before current */
+            GList *tmp = verve_history_get_prev (verve->history_current);
+            
+            /* Make sure we did not reach the end yet */
+            if (G_LIKELY (tmp != NULL))
+              {
+                /* Set current entry */
+                verve->history_current = tmp;
+
+                /* Set verve input entry text */
+                gtk_entry_set_text (GTK_ENTRY (entry), verve->history_current->data);
+              }
+            else
+              {
+                /* Reset pointer to current history entry */
+                verve->history_current = NULL;
+
+                /* Clear verve input entry text */
+                gtk_entry_set_text (GTK_ENTRY (entry), "");
+              }
+          }
+        else
+          {
+            /* Get last history entry */
+            verve->history_current = verve_history_end();
+
+            /* Set input entry text */
+            gtk_entry_set_text (GTK_ENTRY (entry), verve->history_current->data);
+          }
+        
+        return TRUE;
+
+      /* Browse forwards through the command history */
+      case GDK_Up:
+        /* Do nothing if the history is empty */
+        if (verve_history_is_empty ())
+          return TRUE;
+        
+        /* Check whether we already are in history browsing mode */
+        if (G_LIKELY (verve->history_current != NULL))
+          {
+            /* Get command after current entry */
+            GList *tmp = verve_history_get_next (verve->history_current);
+
+            /* Make sure we did not reach the end yet */
+            if (G_LIKELY (tmp != NULL))
+              {
+                /* Set current history entry */
+                verve->history_current = tmp;
+
+                /* Set entry text */
+                gtk_entry_set_text (GTK_ENTRY (entry), verve->history_current->data);
+              }
+            else
+              {
+                /* Reset current history entry */
+                verve->history_current = NULL;
+
+                /* Clear entry text */
+                gtk_entry_set_text (GTK_ENTRY (entry), "");
+              }
+          }
+        else
+          {
+            /* Begin with latest history command */
+            verve->history_current = verve_history_begin ();
+
+            /* Set entry text */
+            gtk_entry_set_text (GTK_ENTRY (entry), verve->history_current->data);
+          }
+        
+        return TRUE;
+
+      /* Execute command entered by the user */
+      case GDK_Return:
+      case GDK_KP_Enter:
+        /* Retrieve a copy of the entry text */
+        command = g_strdup (gtk_entry_get_text (GTK_ENTRY (entry)));
+
+        /* Remove leading and trailing whitespace */
+        command = g_strstrip (command);
+        
+        /* Run command in terminal if the CTRL key is pressed */
+        if ((event->state) & GDK_CONTROL_MASK)
+          terminal = TRUE;
+        else
+          terminal = FALSE;
+        
+        /* Try executing the command */
+        if (G_LIKELY (verve_execute (command, terminal)))
+          {
+            /* Hide the panel again */
+            xfce_panel_plugin_set_panel_hidden (verve->plugin, TRUE);
+
+            /* Do not add command to history if it is the same as the one before */
+            if (verve_history_is_empty () || g_utf8_collate (verve_history_get_last_command (), command) != 0)
+              {
+                /* Add command to history */
+                verve_history_add (g_strdup (command));
+
+                G_LOCK (plugin_completion_mutex);
+
+                /* Add command to completion */
+                verve->completion->items = g_list_insert_sorted (verve->completion->items, g_strdup (command), (GCompareFunc) g_utf8_collate);
+
+                G_UNLOCK (plugin_completion_mutex);
+              }
+      
+            /* Reset current history entry */
+            verve->history_current = NULL;
+
+            /* Clear input entry text */
+            gtk_entry_set_text (GTK_ENTRY (entry), "");
+          }
+        else
+          {
+            /* Generate error message */
+            gchar *msg = g_strconcat (_("Could not execute command:"), " ", command, NULL);
+
+            /* Display error message dialog */
+            show_error (msg);
+
+            /* Free message */
+            g_free (msg);
+          }
+
+        /* Free entry text copy */
+        g_free (command);
+
+        return TRUE;
+
+      /* Cycle through completion results */
+      case GDK_Tab:
+        /* Retrieve a copy of the entry text */
+        command = g_strdup (gtk_entry_get_text (GTK_ENTRY (entry)));
+
+        /* Determine command length and abort if it is empty */
+        if ((len = g_utf8_strlen (command, -1)) == 0)
+          return TRUE;
+
+        /* Determine currently selected chars */
+        selected = gtk_editable_get_selection_bounds (GTK_EDITABLE (entry), &selstart, NULL);
+       
+        /* Check if we are in auto-completion browsing mode */
+        if (selected && selstart != 0)
+          {
+            /* Switch over to the next completion result */
+            verve->n_complete++;
+
+            /* Determine the prefix (which is what the user actually typed by himself) */
+            prefix = g_strndup (command, selstart);
+          }
+        else
+          {
+            /* Start with first completion result */
+            verve->n_complete = 0;
+
+            /* The complete input is the prefix */
+            prefix = command;
+          }
+
+        G_LOCK (plugin_completion_mutex);
+
+        /* Get all completion results */
+        similar = g_completion_complete (completion, prefix, NULL);
+
+        G_UNLOCK (plugin_completion_mutex);
+
+        /* Check if there are any results */
+        if (G_LIKELY (similar != NULL))
+          {
+            /* Check if we are in browsing mode already */
+            if (selected && selstart != 0)
+              {
+                /* Go back to the first entry if we reached the end of the result list */
+                if (verve->n_complete >= g_list_length (similar))
+                  verve->n_complete = 0;
+
+                /* Search the next result */
+                for (i=0; i<verve->n_complete; i++)
+                  if (similar->next != NULL)
+                    similar = similar->next;
+              }
+
+            /* Put result text into input entry */
+            gtk_entry_set_text (GTK_ENTRY (entry), similar->data);
+
+            /* Select chars after the prefix entered by the user */
+            gtk_editable_select_region (GTK_EDITABLE (entry), (selstart == 0 ? len : selstart), -1);
+          }
+
+        /* Free entry text copy */
+        g_free (command);
+ 
+        return TRUE;
+
+      /* Any other key pressed, so the entry will handle the input itself */
+      default:
+        return FALSE;
+    }
+}
+
+
+
+static VervePlugin*
+verve_plugin_new (XfcePanelPlugin *plugin)
+{
+  /* Set application name */
+  g_set_application_name ("Verve");
+
+  /* Init thread system */
+  g_thread_init (NULL);
+
+  /* Init Verve mini-framework */
+  verve_init ();
+  
+  /* Create the plugin object */
+  VervePlugin *verve = g_new (VervePlugin, 1);
+
+  /* Assign the panel plugin to the plugin member */
+  verve->plugin = plugin;
+  
+  /* Initialize completion variables */
+  verve->history_current = NULL;
+  verve->completion = NULL;
+  verve->n_complete = 0;
+  verve->size = 20;
+  verve->history_length = 25;
+
+  /* Connect to load-binaries signal of environment */
+  g_signal_connect (G_OBJECT (verve_env_get()), "load-binaries", G_CALLBACK (verve_plugin_load_completion), verve);
+
+  /* Initialize focus timeout */
+  verve->focus_timeout = 0;
+
+  /* Create an event box to put the input entry into */
+  verve->event_box = gtk_event_box_new ();
+  gtk_widget_show (verve->event_box);
+  
+  /* Create the input entry */
+  verve->input = gtk_entry_new ();
+  gtk_entry_set_width_chars (GTK_ENTRY (verve->input), 20);
+  gtk_widget_show (verve->input);
+  gtk_container_add (GTK_CONTAINER (verve->event_box), verve->input);
+
+  /* Handle mouse button and key press events */
+  g_signal_connect (verve->input, "key-press-event", G_CALLBACK (verve_plugin_keypress_cb), verve);
+  g_signal_connect (verve->input, "button-press-event", G_CALLBACK (verve_plugin_buttonpress_cb), verve);
+  g_signal_connect (verve->input, "focus-out-event", G_CALLBACK (verve_plugin_focus_out), verve);
+  
+#ifdef HAVE_DBUS
+  /* Attach the D-BUS service */
+  verve->dbus_service = g_object_new (VERVE_TYPE_DBUS_SERVICE, NULL);
+
+  /* Connect to D-BUS service signals */
+  g_signal_connect (G_OBJECT (verve->dbus_service), "open-dialog", G_CALLBACK (verve_plugin_grab_focus), verve);
+  g_signal_connect (G_OBJECT (verve->dbus_service), "grab-focus", G_CALLBACK (verve_plugin_grab_focus), verve);
+#endif
+  
+  return verve;
+}
+
+
+
+static void
+verve_plugin_free (XfcePanelPlugin *plugin, 
+                   VervePlugin *verve)
+{
+#ifdef HAVE_DBUS
+  g_object_unref (G_OBJECT (verve->dbus_service));
+#endif
+
+  /* Unregister focus timeout */
+  verve_plugin_focus_timeout_reset (verve);
+
+  /* Unload completion */
+  g_completion_free (verve->completion);
+  
+  /* Free plugin data structure */
+  g_free (verve);
+
+  /* Shutdown Verve mini-framework */
+  verve_shutdown ();
+}
+
+
+
+static gboolean
+verve_plugin_update_size (XfcePanelPlugin *plugin, gint size, VervePlugin *verve)
+{
+  g_return_val_if_fail (verve != NULL, FALSE);
+  g_return_val_if_fail (verve->input != NULL || GTK_IS_ENTRY (verve->input), FALSE);
+
+  /* Set internal size variable */
+  verve->size = size;
+
+  /* Update entry width */
+  gtk_entry_set_width_chars (GTK_ENTRY (verve->input), size);
+
+  return TRUE;
+}
+
+
+
+static gboolean
+verve_plugin_size_changed_request (XfcePanelPlugin *plugin, 
+                                   gint size, 
+                                   VervePlugin *verve)
+{
+  g_return_val_if_fail (verve != NULL, FALSE);
+
+  /* Update Verve size */
+  verve_plugin_update_size (plugin, verve->size, verve);
+
+  return TRUE;
+}
+
+
+
+static gboolean
+verve_plugin_update_history_length (XfcePanelPlugin *plugin,
+                                    gint             history_length,
+                                    VervePlugin     *verve)
+{
+  g_return_val_if_fail (verve != NULL, FALSE);
+
+  /* Set internal history length variable */
+  verve->history_length = history_length;
+
+  /* Apply length to history */
+  verve_history_set_length (history_length);
+
+  return TRUE;
+}
+
+
+
+static void
+verve_plugin_read_rc_file (XfcePanelPlugin *plugin, 
+                           VervePlugin *verve)
+{
+  XfceRc *rc;
+  gchar  *filename;
+  
+  /* Default size */
+  gint    size = 20;
+
+  /* Default number of saved history entries */
+  gint    history_length = 25;
+
+  g_return_if_fail (plugin != NULL);
+  g_return_if_fail (verve != NULL);
+
+  /* Search for config file */
+  filename = xfce_panel_plugin_lookup_rc_file (plugin);
+
+  /* Abort if file could not be found */
+  if (G_UNLIKELY (filename == NULL))
+    return;
+
+  /* Open rc handle */
+  rc = xfce_rc_simple_open (filename, TRUE);
+
+  /* Only read config if rc handle could be opened */
+  if (G_LIKELY (rc != NULL))
+    {
+      /* Read size value */
+      size = xfce_rc_read_int_entry (rc, "size", size);
+
+      /* Read number of saved history entries */
+      history_length = xfce_rc_read_int_entry (rc, "history-length", history_length);
+    
+      /* Update plugin size */
+      verve_plugin_update_size (NULL, size, verve);
+
+      /* Update history length */
+      verve_plugin_update_history_length (NULL, history_length, verve);
+      
+      /* Close handle */
+      xfce_rc_close (rc);
+    }
+
+  /* Free filename string */
+  g_free (filename);
+}
+
+
+
+static void
+verve_plugin_write_rc_file (XfcePanelPlugin *plugin, 
+                            VervePlugin *verve)
+{
+  XfceRc *rc;
+  gchar *filename;
+
+  g_return_if_fail (plugin != NULL);
+  g_return_if_fail (verve != NULL);
+
+  /* Search for the config file */
+  filename = xfce_panel_plugin_save_location (plugin, TRUE);
+
+  /* Abort saving if the file does not exists */
+  if (G_UNLIKELY (filename == NULL))
+    return;
+
+  /* Open rc handle */
+  rc = xfce_rc_simple_open (filename, FALSE);
+
+  if (G_LIKELY (rc != NULL))
+    {
+      /* Write size value */
+      xfce_rc_write_int_entry (rc, "size", verve->size);
+
+      /* Write number of saved history entries */
+      xfce_rc_write_int_entry (rc, "history-length", verve->history_length);
+    
+      /* Close handle */
+      xfce_rc_close (rc);
+    }
+
+  /* Free filename string */
+  g_free (filename);
+}
+
+
+
+static void
+verve_plugin_size_changed (GtkSpinButton *spin, 
+                           VervePlugin *verve)
+{
+  g_return_if_fail (verve != NULL);
+
+  /* Update plugin size */
+  verve_plugin_update_size (NULL, gtk_spin_button_get_value_as_int (spin), verve);
+}
+
+
+
+static void
+verve_plugin_history_length_changed (GtkSpinButton *spin,
+                                     VervePlugin   *verve)
+{
+  g_return_if_fail (verve != NULL);
+
+  /* Update history length */
+  verve_plugin_update_history_length (NULL, gtk_spin_button_get_value_as_int (spin), verve);
+}
+
+
+
+static void
+verve_plugin_response (GtkWidget *dialog, 
+                       int response, 
+                       VervePlugin *verve)
+{
+  g_return_if_fail (verve != NULL);
+  g_return_if_fail (verve->plugin != NULL);
+
+  /* Disconnect from dialog */
+  g_object_set_data (G_OBJECT (verve->plugin), "dialog", NULL);
+
+  /* Destroy dialog object */
+  gtk_widget_destroy (dialog);
+  
+  /* Unblock plugin context menu */
+  xfce_panel_plugin_unblock_menu (verve->plugin);
+
+  /* Save changes to config file */
+  verve_plugin_write_rc_file (verve->plugin, verve);
+}
+
+
+
+static void
+verve_plugin_properties (XfcePanelPlugin *plugin, 
+                         VervePlugin *verve)
+{
+  GtkWidget *dialog;
+  GtkWidget *frame;
+  GtkWidget *bin1;
+  GtkWidget *bin2;
+  GtkWidget *hbox;
+  GtkWidget *size_label;
+  GtkWidget *size_spin;
+  GtkWidget *history_length_label;
+  GtkWidget *history_length_spin;
+  GtkObject *adjustment;
+
+  g_return_if_fail (plugin != NULL);
+  g_return_if_fail (verve != NULL);
+
+  /* Block plugin context menu */
+  xfce_panel_plugin_block_menu (plugin);
+
+  /* Create properties dialog */
+  dialog = xfce_titled_dialog_new_with_buttons (_("Verve"),
+                                                GTK_WINDOW (gtk_widget_get_toplevel (GTK_WIDGET (plugin))),
+                                                GTK_DIALOG_DESTROY_WITH_PARENT | GTK_DIALOG_NO_SEPARATOR,
+                                                GTK_STOCK_CLOSE, GTK_RESPONSE_OK,
+                                                NULL);
+
+  /* Set dialog property */
+  g_object_set_data (G_OBJECT (plugin), "dialog", dialog);
+
+  /* Be notified when the properties dialog is closed */
+  g_signal_connect (dialog, "response", G_CALLBACK (verve_plugin_response), verve);
+
+  /* Basic dialog window setup */
+  gtk_window_set_icon_name (GTK_WINDOW (dialog), "utilities-terminal");
+  gtk_window_set_position (GTK_WINDOW (dialog), GTK_WIN_POS_CENTER);
+  gtk_container_set_border_width (GTK_CONTAINER (dialog), 2);
+
+  /* Frame for appearance settings */
+  frame = xfce_create_framebox (_("Appearance"), &bin1);
+  gtk_container_set_border_width (GTK_CONTAINER (frame), 6);
+  gtk_box_pack_start (GTK_BOX (GTK_DIALOG (dialog)->vbox), frame, TRUE, TRUE, 0);
+  gtk_widget_show (frame);
+
+  /* Plugin size container */
+  hbox = gtk_hbox_new (FALSE, 8);
+  gtk_container_add (GTK_CONTAINER (bin1), hbox);
+  gtk_widget_show (hbox);
+
+  /* Plugin size label */
+  size_label = gtk_label_new (_("Width (in chars):"));
+  gtk_box_pack_start (GTK_BOX (hbox), size_label, FALSE, TRUE, 0);
+  gtk_widget_show (size_label);
+
+  /* Plugin size adjustment */
+  adjustment = gtk_adjustment_new (verve->size, 5, 100, 1, 5, 10);
+
+  /* Plugin size spin button */
+  size_spin = gtk_spin_button_new (GTK_ADJUSTMENT (adjustment), 1, 0);
+  gtk_widget_add_mnemonic_label (size_spin, size_label);
+  gtk_box_pack_start (GTK_BOX (hbox), size_spin, FALSE, TRUE, 0);
+  gtk_widget_show (size_spin);
+
+  /* Assign current size to spin button */
+  gtk_spin_button_set_value (GTK_SPIN_BUTTON (size_spin), verve->size);
+
+  /* Be notified when the user requests a different plugin size */
+  g_signal_connect (size_spin, "value-changed", G_CALLBACK (verve_plugin_size_changed), verve);
+
+  /* Frame for behaviour settings */
+  frame = xfce_create_framebox (_("Behaviour"), &bin2);
+  gtk_container_set_border_width (GTK_CONTAINER (frame), 6);
+  gtk_box_pack_start (GTK_BOX (GTK_DIALOG (dialog)->vbox), frame, TRUE, TRUE, 0);
+  gtk_widget_show (frame);
+
+  /* Plugin history length container */
+  hbox = gtk_hbox_new (FALSE, 8);
+  gtk_container_add (GTK_CONTAINER (bin2), hbox);
+  gtk_widget_show (hbox);
+
+  /* History length label */
+  history_length_label = gtk_label_new (_("Number of saved history items:"));
+  gtk_box_pack_start (GTK_BOX (hbox), history_length_label, FALSE, TRUE, 0);
+  gtk_widget_show (history_length_label);
+
+  /* History length adjustment */
+  adjustment = gtk_adjustment_new (verve->history_length, 0, 1000, 1, 5, 10);
+
+  /* History length spin button */
+  history_length_spin = gtk_spin_button_new (GTK_ADJUSTMENT (adjustment), 1, 0);
+  gtk_widget_add_mnemonic_label (history_length_spin, history_length_label);
+  gtk_box_pack_start (GTK_BOX (hbox), history_length_spin, FALSE, TRUE, 0);
+  gtk_widget_show (history_length_spin);
+
+  /* Assign current length to the spin button */
+  gtk_spin_button_set_value (GTK_SPIN_BUTTON (history_length_spin), verve->history_length);
+
+  /* Be notified when the user requests a different history length */
+  g_signal_connect (history_length_spin, "value-changed", G_CALLBACK (verve_plugin_history_length_changed), verve);
+
+  /* Show properties dialog */
+  gtk_widget_show (dialog);
+}
+ 
+
+
+static void
+verve_plugin_construct (XfcePanelPlugin *plugin)
+{
+  /* Set gettext text domain */
+  xfce_textdomain (GETTEXT_PACKAGE, PACKAGE_LOCALE_DIR, "UTF-8");
+  
+  /* Create Verve plugin */
+  VervePlugin *verve = verve_plugin_new (plugin);
+
+  /* Read config file */
+  verve_plugin_read_rc_file (plugin, verve);
+ 
+  /* Add event box to the panel plugin */
+  gtk_container_add (GTK_CONTAINER (plugin), verve->event_box);
+  xfce_panel_plugin_add_action_widget (plugin, verve->event_box);
+
+  /* Make the plugin configurable from the context menu */
+  xfce_panel_plugin_menu_show_configure (plugin);
+ 
+  /* Connect to panel plugin signals */
+  g_signal_connect (plugin, "save", G_CALLBACK (verve_plugin_write_rc_file), verve);
+  g_signal_connect (plugin, "free-data", G_CALLBACK (verve_plugin_free), verve);
+  g_signal_connect (plugin, "configure-plugin", G_CALLBACK (verve_plugin_properties), verve);
+  g_signal_connect (plugin, "size-changed", G_CALLBACK (verve_plugin_size_changed_request), verve);
+}
+ 
+
+
+/* Register exteral panel plugin */
+XFCE_PANEL_PLUGIN_REGISTER_EXTERNAL (verve_plugin_construct);
+
+
+
+/* vim:set expandtab sts=2 ts=2 sw=2: */

Deleted: verve-plugin/tags/0.3.5/panel-plugin/verve.c

Copied: verve-plugin/tags/0.3.5/panel-plugin/verve.c (from rev 2389, verve-plugin/trunk/panel-plugin/verve.c)
===================================================================
--- verve-plugin/tags/0.3.5/panel-plugin/verve.c	                        (rev 0)
+++ verve-plugin/tags/0.3.5/panel-plugin/verve.c	2007-01-16 21:51:22 UTC (rev 2390)
@@ -0,0 +1,283 @@
+/***************************************************************************
+ *            verve.c
+ *
+ *  $Id$
+ *  Copyright  2006-2007  Jannis Pohlmann
+ *  jannis at xfce.org
+ ****************************************************************************/
+
+/*
+ *  This program is free software; you can redistribute it and/or modify
+ *  it under the terms of the GNU General Public License as published by
+ *  the Free Software Foundation; either version 2 of the License, or
+ *  (at your option) any later version.
+ *
+ *  This program is distributed in the hope that it will be useful,
+ *  but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ *  GNU General Public License for more details.
+ *
+ *  You should have received a copy of the GNU General Public License
+ *  along with this program; if not, write to the Free Software
+ *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ */
+ 
+#include <pcre.h>
+
+#include <glib-object.h>
+
+#include <libxfcegui4/libxfcegui4.h>
+
+#include "verve.h"
+#include "verve-env.h"
+#include "verve-history.h"
+
+
+
+static gboolean verve_is_url       (const gchar *str);
+static gboolean verve_is_email     (const gchar *str);
+static gboolean verve_is_directory (const gchar *str);
+
+
+
+/* URL/eMail matching patterns */
+#define USERCHARS   "-A-Za-z0-9"
+#define PASSCHARS   "-A-Za-z0-9,?;.:/!%$^*&~\"#'"
+#define HOSTCHARS   "-A-Za-z0-9"
+#define USER        "[" USERCHARS "]+(:["PASSCHARS "]+)?"
+#define MATCH_URL1  "^((file|https?|ftps?)://(" USER "@)?)[" HOSTCHARS ".]+(:[0-9]+)?" \
+                    "(/[-A-Za-z0-9_$.+!*(),;:@&=?/~#%]*[^]'.}>) \t\r\n,\\\"])?/?$"
+#define MATCH_URL2  "^(www|ftp)[" HOSTCHARS "]*\\.[" HOSTCHARS ".]+(:[0-9]+)?" \
+                    "(/[-A-Za-z0-9_$.+!*(),;:@&=?/~#%]*[^]'.}>) \t\r\n,\\\"])?/?$"
+#define MATCH_EMAIL "^(mailto:)?[a-z0-9][a-z0-9.-]*@[a-z0-9][a-z0-9-]*(\\.[a-z0-9][a-z0-9-]*)+$"
+
+
+
+/*********************************************************************
+ *
+ * Initialize/shutdown Verve
+ * -------------------------
+ *
+ * The execution of these functions is necessary before and after 
+ * your program makes use of Verve.
+ *
+ *********************************************************************/
+
+void 
+verve_init (void)
+{
+  /* Init history database */
+  verve_history_init ();
+}
+
+
+
+void
+verve_shutdown (void)
+{
+  /* Free history database */
+  verve_history_shutdown ();
+
+  /* Shutdown environment */
+  verve_env_shutdown ();
+}
+
+
+
+/*********************************************************************
+ *
+ * Verve command line execution function
+ * -------------------------------------
+ *
+ * With the help of this function, shell commands can be executed.
+ *
+ *********************************************************************/
+ 
+gboolean verve_spawn_command_line (const gchar *cmdline)
+{
+  gint         argc;
+  gchar      **argv;
+  gboolean     success;
+  GError      *error = NULL;
+  const gchar *home_dir;
+  GSpawnFlags  flags;
+  
+  /* Parse command line arguments */
+  success = g_shell_parse_argv (cmdline, &argc, &argv, &error);
+
+  /* Return false if command line arguments failed to be arsed */
+  if (G_UNLIKELY (error != NULL))
+    {
+      g_error_free (error);
+      return FALSE;
+    }
+
+  /* Get user's home directory */
+  home_dir = xfce_get_homedir ();
+
+  /* Set up spawn flags */
+  flags = G_SPAWN_STDOUT_TO_DEV_NULL;
+  flags |= G_SPAWN_STDERR_TO_DEV_NULL;
+  flags |= G_SPAWN_SEARCH_PATH;
+  
+  /* Spawn subprocess */
+  success = g_spawn_async (home_dir, argv, NULL, flags, NULL, NULL, NULL, &error);
+
+  /* Return false if subprocess could not be spawned */
+  if (G_UNLIKELY (error != NULL)) 
+    {
+      g_error_free (error);
+      return FALSE;
+    }
+
+  /* Free command line arguments */
+  g_strfreev (argv);
+  
+  /* Return whether process was spawned successfully */
+  return success;
+}
+
+
+
+/*********************************************************************
+ * 
+ * Verve main execution method
+ * ---------------------------
+ *
+ * This method should be used whenever you want to run command line 
+ * input, be it a URL, an eMail address or a custom command.
+ *
+ *********************************************************************/
+
+gboolean
+verve_execute (const gchar *input, 
+               gboolean terminal)
+{
+  gchar   *command;
+  gboolean result = FALSE;
+    
+  /* Open URLs, eMail addresses and directories using exo-open */
+  if (verve_is_url (input) || verve_is_email (input) || verve_is_directory (input))
+  {
+    /* Build exo-open command */
+    command = g_strconcat ("exo-open ", input, NULL);
+  }
+  else
+  {
+    /* Run command using the xfterm4 wrapper if the terminal flag was set */
+    if (G_UNLIKELY (terminal))
+      command = g_strconcat ("xfterm4 -e ", input, NULL);
+    else
+      command = g_strdup (input);
+  }
+    
+  /* Try to execute the exo-open command */
+  if (verve_spawn_command_line (command))
+    result = TRUE;
+    
+  /* Free command string */
+  g_free (command);
+
+  /* Return spawn result */
+  return result;
+}
+
+
+
+/*********************************************************************
+ *
+ * Internal pattern matching functions
+ *
+ *********************************************************************/
+
+gboolean
+verve_is_url (const gchar *str)
+{
+  GString     *string = g_string_new (str);
+  pcre        *pattern;
+  const gchar *error;
+  int          error_offset;
+  int          ovector[30];
+  gboolean     success = FALSE;
+
+  /* Compile first pattern */
+  pattern = pcre_compile (MATCH_URL1, 0, &error, &error_offset, NULL);
+  
+  /* Test whether the string matches this pattern */
+  if (pcre_exec (pattern, NULL, string->str, string->len, 0, 0, ovector, 30) >= 0)
+    success = TRUE;
+
+  /* Free pattern */
+  pcre_free (pattern);
+
+  /* Free data and return true if string matched the first pattern */
+  if (success)
+    {
+      g_string_free (string, TRUE);
+      return TRUE;
+    }
+
+  /* Compile second pattern */
+  pattern = pcre_compile (MATCH_URL2, 0, &error, &error_offset, NULL);
+
+  /* Test whether the string matches this pattern */
+  if (pcre_exec (pattern, NULL, string->str, string->len, 0, 0, ovector, 30) >= 0)
+    success = TRUE;
+
+  /* Free pattern */
+  pcre_free (pattern);
+
+  /* Free string */
+  g_string_free (string, TRUE);
+
+  /* Return whether the string matched any of the URL patterns */
+  return success;
+}
+
+
+
+gboolean
+verve_is_email (const gchar *str)
+{
+  GString     *string = g_string_new (str);
+  const gchar *error;
+  pcre        *pattern;
+  int          error_offset;
+  int          ovector[30];
+  gboolean     success = FALSE;
+
+  /* Compile the pattern */
+  pattern = pcre_compile (MATCH_EMAIL, 0, &error, &error_offset, NULL);
+
+  /* Test whether the string matches this pattern */
+  if (pcre_exec (pattern, NULL, string->str, string->len, 0, 0, ovector, 30) >= 0)
+    success = TRUE;
+
+  /* Free pattern */
+  pcre_free (pattern);
+
+  /* Free string data */
+  g_string_free (string, TRUE);
+
+  /* Return whether the string matched any of the eMail patterns */
+  return success;
+}
+
+
+
+gboolean
+verve_is_directory (const gchar *str)
+{
+  /* Avoid opening directories with the same name as an existing executable. */
+  if (g_find_program_in_path (str))
+    return FALSE;
+
+  if (g_file_test (str, G_FILE_TEST_IS_DIR))
+    return TRUE;
+  else
+    return FALSE;
+}
+
+
+
+/* vim:set expandtab sts=2 ts=2 sw=2: */

Deleted: verve-plugin/tags/0.3.5/panel-plugin/verve.h

Copied: verve-plugin/tags/0.3.5/panel-plugin/verve.h (from rev 2389, verve-plugin/trunk/panel-plugin/verve.h)
===================================================================
--- verve-plugin/tags/0.3.5/panel-plugin/verve.h	                        (rev 0)
+++ verve-plugin/tags/0.3.5/panel-plugin/verve.h	2007-01-16 21:51:22 UTC (rev 2390)
@@ -0,0 +1,41 @@
+/***************************************************************************
+ *            verve.h
+ *
+ *  $Id$
+ *  Copyright  2007  Jannis Pohlmann
+ *  jannis at xfce.org
+ ****************************************************************************/
+
+/*
+ *  This program is free software; you can redistribute it and/or modify
+ *  it under the terms of the GNU General Public License as published by
+ *  the Free Software Foundation; either version 2 of the License, or
+ *  (at your option) any later version.
+ *
+ *  This program is distributed in the hope that it will be useful,
+ *  but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ *  GNU General Public License for more details.
+ *
+ *  You should have received a copy of the GNU General Public License
+ *  along with this program; if not, write to the Free Software
+ *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ */
+ 
+#ifndef __VERVE_H__
+#define __VERVE_H__
+
+#include "verve-env.h"
+#include "verve-history.h"
+
+/* Init / Shutdown Verve */
+void verve_init (void);
+void verve_shutdown (void);
+
+/* Command line methods */
+gboolean verve_spawn_command_line (const gchar *cmdline);
+gboolean verve_execute (const gchar *input, gboolean terminal);
+
+#endif /* !__VERVE_H__ */
+
+/* vim:set expandtab ts=1 sw=2: */

Deleted: verve-plugin/tags/0.3.5/po/ca.po

Copied: verve-plugin/tags/0.3.5/po/ca.po (from rev 2389, verve-plugin/trunk/po/ca.po)
===================================================================
--- verve-plugin/tags/0.3.5/po/ca.po	                        (rev 0)
+++ verve-plugin/tags/0.3.5/po/ca.po	2007-01-16 21:51:22 UTC (rev 2390)
@@ -0,0 +1,79 @@
+# Catalan translations for verve-plugin package.
+# Copyright (C) 2006 Jannis Pohlmann.
+# This file is distributed under the same license as the
+# verve-plugin package.
+# Carles Muñoz Gorriz <carlesmu at internautas.org>, 2006.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: verve-plugin 0.3.5\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2006-09-10 21:29+0200\n"
+"PO-Revision-Date: 2006-04-17 19:32+0100\n"
+"Last-Translator: Carles Muñoz Gorriz <carlesmu at internautas.org>\n"
+"Language-Team: catalan\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n > 1);\n"
+
+#. Generate error message
+#: ../panel-plugin/verve-plugin.c:407
+msgid "Could not execute command:"
+msgstr "No es pot executar l'ordre:"
+
+#. Create properties dialog
+#: ../panel-plugin/verve-plugin.c:781
+#, fuzzy
+msgid "Verve"
+msgstr "Verve"
+
+#. Frame for appearance settings
+#: ../panel-plugin/verve-plugin.c:799
+msgid "Appearance"
+msgstr "Aparença"
+
+#. Plugin size label
+#: ../panel-plugin/verve-plugin.c:810
+msgid "Width (in chars):"
+msgstr "Amplada en caràcters:"
+
+#. Frame for behaviour settings
+#: ../panel-plugin/verve-plugin.c:830
+msgid "Behaviour"
+msgstr ""
+
+#. History length label
+#: ../panel-plugin/verve-plugin.c:841
+msgid "Number of saved history items:"
+msgstr ""
+
+# auto-completion = emplenament automàtic ?
+#. vim:set expandtab sts=2 ts=2 sw=2:
+#: ../panel-plugin/verve.desktop.in.in.h:1
+#, fuzzy
+msgid "Command line interface with auto-completion and command history"
+msgstr ""
+"Interfície de línia d'ordres amb emplenament automàtic i explorador de "
+"l'històric."
+
+#: ../panel-plugin/verve.desktop.in.in.h:2
+#, fuzzy
+msgid "Verve Command Line"
+msgstr "Línia d'ordres de «Verve»"
+
+#. Print error message
+#: ../scripts/verve-focus.c:61
+msgid "Failed to connect to the D-BUS session bus."
+msgstr ""
+
+#. Print error message
+#: ../scripts/verve-focus.c:84
+msgid ""
+"There seems to be no Verve D-BUS provider (e.g. the Verve panel plugin) "
+"running."
+msgstr ""
+
+#, fuzzy
+#~ msgid "Verve Properties"
+#~ msgstr "Propietats de «Verve»"

Deleted: verve-plugin/tags/0.3.5/po/cs.po

Copied: verve-plugin/tags/0.3.5/po/cs.po (from rev 2389, verve-plugin/trunk/po/cs.po)
===================================================================
--- verve-plugin/tags/0.3.5/po/cs.po	                        (rev 0)
+++ verve-plugin/tags/0.3.5/po/cs.po	2007-01-16 21:51:22 UTC (rev 2390)
@@ -0,0 +1,71 @@
+# Czech translations for verve-plugin package.
+# Copyright (C) 2006 THE verve-plugin'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the verve-plugin package.
+# Michal Várady  <miko.vaji at gmail.com>, 2006.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: verve-plugin 0.3.5\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2006-09-10 21:29+0200\n"
+"PO-Revision-Date: 2006-08-26 20:53+0100\n"
+"Last-Translator: Michal Várady <miko.vaji at gmail.com>\n"
+"Language-Team: Czech <translation-team-cs at lists.sourceforge.net>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
+
+#. Generate error message
+#: ../panel-plugin/verve-plugin.c:407
+msgid "Could not execute command:"
+msgstr "Nelze spustit příkaz:"
+
+#. Create properties dialog
+#: ../panel-plugin/verve-plugin.c:781
+msgid "Verve"
+msgstr "Verve"
+
+#. Frame for appearance settings
+#: ../panel-plugin/verve-plugin.c:799
+msgid "Appearance"
+msgstr "Vzhled"
+
+#. Plugin size label
+#: ../panel-plugin/verve-plugin.c:810
+msgid "Width (in chars):"
+msgstr "Šířka (počet znaků):"
+
+#. Frame for behaviour settings
+#: ../panel-plugin/verve-plugin.c:830
+msgid "Behaviour"
+msgstr "Chování"
+
+#. History length label
+#: ../panel-plugin/verve-plugin.c:841
+msgid "Number of saved history items:"
+msgstr "Množství zapamatovaných položek:"
+
+#. vim:set expandtab sts=2 ts=2 sw=2:
+#: ../panel-plugin/verve.desktop.in.in.h:1
+msgid "Command line interface with auto-completion and command history"
+msgstr ""
+"Prostředí příkazové řádky s automatickým doplňováním a historií příkazů"
+
+#: ../panel-plugin/verve.desktop.in.in.h:2
+msgid "Verve Command Line"
+msgstr "Příkazová řádka Verve"
+
+#. Print error message
+#: ../scripts/verve-focus.c:61
+msgid "Failed to connect to the D-BUS session bus."
+msgstr "Nepodařilo se připojení k sezení sběrnice D-BUS."
+
+#. Print error message
+#: ../scripts/verve-focus.c:84
+msgid ""
+"There seems to be no Verve D-BUS provider (e.g. the Verve panel plugin) "
+"running."
+msgstr ""
+"Zdá se, že neběží žádný zprostředkovatel sběrnice D-BUS pro Verve (například "
+"zásuvný modul panelu Verve)"

Deleted: verve-plugin/tags/0.3.5/po/de.po

Copied: verve-plugin/tags/0.3.5/po/de.po (from rev 2389, verve-plugin/trunk/po/de.po)
===================================================================
--- verve-plugin/tags/0.3.5/po/de.po	                        (rev 0)
+++ verve-plugin/tags/0.3.5/po/de.po	2007-01-16 21:51:22 UTC (rev 2390)
@@ -0,0 +1,68 @@
+# German translations for verve-plugin package.
+# Copyright (C) 2006 Jannis Pohlmann.
+# This file is distributed under the same license as the verve-plugin package.
+# Jannis Pohlmann <jannis at xfce.org>, 2006.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: verve-plugin 0.3.5\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2006-09-10 21:29+0200\n"
+"PO-Revision-Date: 2006-08-09 00:21+0100\n"
+"Last-Translator: Jannis Pohlmann <jannis at xfce.org>\n"
+"Language-Team: German <jannis at xfce.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. Generate error message
+#: ../panel-plugin/verve-plugin.c:407
+msgid "Could not execute command:"
+msgstr "Konnte den Befehl nicht ausführen:"
+
+#. Create properties dialog
+#: ../panel-plugin/verve-plugin.c:781
+msgid "Verve"
+msgstr "Verve"
+
+#. Frame for appearance settings
+#: ../panel-plugin/verve-plugin.c:799
+msgid "Appearance"
+msgstr "Erscheinungsbild"
+
+#. Plugin size label
+#: ../panel-plugin/verve-plugin.c:810
+msgid "Width (in chars):"
+msgstr "Breite (in Zeichen):"
+
+#. Frame for behaviour settings
+#: ../panel-plugin/verve-plugin.c:830
+msgid "Behaviour"
+msgstr "Verhalten"
+
+#. History length label
+#: ../panel-plugin/verve-plugin.c:841
+msgid "Number of saved history items:"
+msgstr "Gespeicherte Einträge im Verlauf:"
+
+#. vim:set expandtab sts=2 ts=2 sw=2:
+#: ../panel-plugin/verve.desktop.in.in.h:1
+msgid "Command line interface with auto-completion and command history"
+msgstr "Mit Autovervollständigung, Befehlsverlauf und URL-Erkennung"
+
+#: ../panel-plugin/verve.desktop.in.in.h:2
+msgid "Verve Command Line"
+msgstr "Verve-Kommandozeile"
+
+#. Print error message
+#: ../scripts/verve-focus.c:61
+msgid "Failed to connect to the D-BUS session bus."
+msgstr "Verbindung zu D-BUS konnte nicht hergestellt werden."
+
+#. Print error message
+#: ../scripts/verve-focus.c:84
+msgid ""
+"There seems to be no Verve D-BUS provider (e.g. the Verve panel plugin) "
+"running."
+msgstr ""
+"Es scheint kein Verve D-BUS-Service (z.B. das Verve-Panel-Plugin) zu laufen."

Deleted: verve-plugin/tags/0.3.5/po/el.po

Copied: verve-plugin/tags/0.3.5/po/el.po (from rev 2389, verve-plugin/trunk/po/el.po)
===================================================================
--- verve-plugin/tags/0.3.5/po/el.po	                        (rev 0)
+++ verve-plugin/tags/0.3.5/po/el.po	2007-01-16 21:51:22 UTC (rev 2390)
@@ -0,0 +1,74 @@
+# Greek translations for verve-plugin package.
+# Copyright (C) 2006 Jannis Pohlmann.
+# This file is distributed under the same license as the verve-plugin package.
+# Stavros Giannouris <stavrosg at serverhive.com>, 2006.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: verve-plugin 0.3.5\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2006-09-10 21:12+0200\n"
+"PO-Revision-Date: 2006-10-14 19:52+0200\n"
+"Last-Translator: Stavros Giannouris <stavrosg at serverhive.com>\n"
+"Language-Team: Greek <nls at tux.hellug.gr>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#. Generate error message
+#: ../panel-plugin/verve-plugin.c:407
+msgid "Could not execute command:"
+msgstr "Αδυναμία εκτέλεσης της εντολής:"
+
+#. Create properties dialog
+#: ../panel-plugin/verve-plugin.c:781
+msgid "Verve"
+msgstr "Verve"
+
+#. Frame for appearance settings
+#: ../panel-plugin/verve-plugin.c:799
+msgid "Appearance"
+msgstr "Εμφάνιση"
+
+#. Plugin size label
+#: ../panel-plugin/verve-plugin.c:810
+msgid "Width (in chars):"
+msgstr "Πλάτος (χαρακτήρες):"
+
+#. Frame for behaviour settings
+#: ../panel-plugin/verve-plugin.c:830
+msgid "Behaviour"
+msgstr "Συμπεριφορά"
+
+#. History length label
+#: ../panel-plugin/verve-plugin.c:841
+msgid "Number of saved history items:"
+msgstr "Μέγεθος λίστας ιστορικού:"
+
+#. vim:set expandtab sts=2 ts=2 sw=2:
+#: ../panel-plugin/verve.desktop.in.in.h:1
+msgid "Command line interface with auto-completion and command history"
+msgstr "Γραμμή εντολών με αυτόματη συμπλήρωση και ιστορικό"
+
+#: ../panel-plugin/verve.desktop.in.in.h:2
+msgid "Verve Command Line"
+msgstr "Γραμμή Εντολών Verve"
+
+#. Print error message
+#: ../scripts/verve-focus.c:61
+msgid "Failed to connect to the D-BUS session bus."
+msgstr "Η σύνδεση με το δίαυλο μηνυμάτων D-BUS απέτυχε."
+
+#. Print error message
+#: ../scripts/verve-focus.c:84
+msgid ""
+"There seems to be no Verve D-BUS provider (e.g. the Verve panel plugin) "
+"running."
+msgstr "Δεν φαίνεται να εκτελείται πάροχος μέσω D-BUS για το Verve."
+
+#~ msgid "Verve Properties"
+#~ msgstr "Ιδιότητες Verve"
+
+#~ msgid "Failed to deliver the org.xfce.Verve#GrabFocus method."
+#~ msgstr "Η παροχή της μεθόδου org.xfce.Verve#GrabFocus απέτυχε."

Deleted: verve-plugin/tags/0.3.5/po/eu.po

Copied: verve-plugin/tags/0.3.5/po/eu.po (from rev 2389, verve-plugin/trunk/po/eu.po)
===================================================================
--- verve-plugin/tags/0.3.5/po/eu.po	                        (rev 0)
+++ verve-plugin/tags/0.3.5/po/eu.po	2007-01-16 21:51:22 UTC (rev 2390)
@@ -0,0 +1,76 @@
+# Basque translations for PACKAGE package.
+# Copyright (C) 2006 THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# ^pi^ <pi at beobide.net>, 2006.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: verve-plugin 0.3.5\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2006-09-10 21:29+0200\n"
+"PO-Revision-Date: 2006-02-14 10:45+0100\n"
+"Last-Translator: Piarres Beobide <pi at beobide.net>\n"
+"Language-Team: Librezale <librezale at librezale.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Pootle 0.6.3.20060126\n"
+
+#. Generate error message
+#: ../panel-plugin/verve-plugin.c:407
+msgid "Could not execute command:"
+msgstr "Ezin da komandoa exekutatu:"
+
+#. Create properties dialog
+#: ../panel-plugin/verve-plugin.c:781
+msgid "Verve"
+msgstr "Verve"
+
+#. Frame for appearance settings
+#: ../panel-plugin/verve-plugin.c:799
+msgid "Appearance"
+msgstr "Itxura"
+
+#. Plugin size label
+#: ../panel-plugin/verve-plugin.c:810
+msgid "Width (in chars):"
+msgstr "Zabalera (karaktere):"
+
+#. Frame for behaviour settings
+#: ../panel-plugin/verve-plugin.c:830
+msgid "Behaviour"
+msgstr "Portaera"
+
+#. History length label
+#: ../panel-plugin/verve-plugin.c:841
+msgid "Number of saved history items:"
+msgstr "Gordeko diren historia elementu kopurua:"
+
+#. vim:set expandtab sts=2 ts=2 sw=2:
+#: ../panel-plugin/verve.desktop.in.in.h:1
+msgid "Command line interface with auto-completion and command history"
+msgstr "Komando lerro interfazea auto-betetze eta komando historiarekin"
+
+#: ../panel-plugin/verve.desktop.in.in.h:2
+msgid "Verve Command Line"
+msgstr "Verve Komando Lerroa"
+
+#. Print error message
+#: ../scripts/verve-focus.c:61
+msgid "Failed to connect to the D-BUS session bus."
+msgstr "Huts D-BUS saio bus-arekin konektatzerakoan."
+
+#. Print error message
+#: ../scripts/verve-focus.c:84
+msgid ""
+"There seems to be no Verve D-BUS provider (e.g. the Verve panel plugin) "
+"running."
+msgstr ""
+"Dirudienez ez dago Verve D-BUS hornitzailerik (adib. Verve panel plugin-a) "
+"abiarazirik"
+
+#~ msgid "Verve Properties"
+#~ msgstr "Verve Propietateak"
+
+#~ msgid "Failed to deliver the org.xfce.Verve#GrabFocus method."
+#~ msgstr "Huts org.xfce.Verve#GrabFocus metodoa erabiltzean."

Deleted: verve-plugin/tags/0.3.5/po/fi.po

Copied: verve-plugin/tags/0.3.5/po/fi.po (from rev 2389, verve-plugin/trunk/po/fi.po)
===================================================================
--- verve-plugin/tags/0.3.5/po/fi.po	                        (rev 0)
+++ verve-plugin/tags/0.3.5/po/fi.po	2007-01-16 21:51:22 UTC (rev 2390)
@@ -0,0 +1,68 @@
+# Finnish translations for verve-plugin.
+# This file is distributed under the same license as the verve-plugin package.
+# Copyright (C) 2006 Jannis Pohlmann.
+# Jari Rahkonen <jari.rahkonen at pp1.inet.fi>, 2006.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: verve-plugin 0.3.5\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2006-09-10 21:29+0200\n"
+"PO-Revision-Date: 2006-08-24 12:00+0300\n"
+"Last-Translator: jari <jari.rahkonen at pp1.inet.fi>\n"
+"Language-Team: Finnish <translation-team-fi at lists.sourceforge.net>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. Generate error message
+#: ../panel-plugin/verve-plugin.c:407
+msgid "Could not execute command:"
+msgstr "Komentoa ei voi suorittaa:"
+
+#. Create properties dialog
+#: ../panel-plugin/verve-plugin.c:781
+msgid "Verve"
+msgstr "Verve"
+
+#. Frame for appearance settings
+#: ../panel-plugin/verve-plugin.c:799
+msgid "Appearance"
+msgstr "Ulkoasu"
+
+#. Plugin size label
+#: ../panel-plugin/verve-plugin.c:810
+msgid "Width (in chars):"
+msgstr "Leveys (merkkiä):"
+
+#. Frame for behaviour settings
+#: ../panel-plugin/verve-plugin.c:830
+msgid "Behaviour"
+msgstr "Käytös"
+
+#. History length label
+#: ../panel-plugin/verve-plugin.c:841
+msgid "Number of saved history items:"
+msgstr "Historian kohteiden määrä:"
+
+#. vim:set expandtab sts=2 ts=2 sw=2:
+#: ../panel-plugin/verve.desktop.in.in.h:1
+msgid "Command line interface with auto-completion and command history"
+msgstr "Komentorivi automaattitäydennyksellä ja komentohistorialla"
+
+#: ../panel-plugin/verve.desktop.in.in.h:2
+msgid "Verve Command Line"
+msgstr "Verve-komentorivi"
+
+#. Print error message
+#: ../scripts/verve-focus.c:61
+msgid "Failed to connect to the D-BUS session bus."
+msgstr "Ei voi muodostaa yhteyttä D-BUS -istuntoväylään."
+
+#. Print error message
+#: ../scripts/verve-focus.c:84
+msgid ""
+"There seems to be no Verve D-BUS provider (e.g. the Verve panel plugin) "
+"running."
+msgstr ""
+"Verven D-BUS -tarjoajaa (esim. Verve-paneeliliitännäinen) ei ole käynnissä."

Deleted: verve-plugin/tags/0.3.5/po/fr.po

Copied: verve-plugin/tags/0.3.5/po/fr.po (from rev 2389, verve-plugin/trunk/po/fr.po)
===================================================================
--- verve-plugin/tags/0.3.5/po/fr.po	                        (rev 0)
+++ verve-plugin/tags/0.3.5/po/fr.po	2007-01-16 21:51:22 UTC (rev 2390)
@@ -0,0 +1,71 @@
+# French translation of the verve-plugin package.
+# Copyright (C) 2006 Jannis Pohlmann.
+# This file is distributed under the same license as the verve-plugin package.
+# Maximilian Schleiss <maxschleiss at bluewin.ch>, 2006.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: verve-plugin 0.3.5\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2006-09-10 21:29+0200\n"
+"PO-Revision-Date: 2006-09-16 22:57+0100\n"
+"Last-Translator: Maximilian Schleiss <maxschleiss at bluewin.ch>\n"
+"Language-Team: French <xfce-i18n at xfce.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. Generate error message
+#: ../panel-plugin/verve-plugin.c:407
+msgid "Could not execute command:"
+msgstr "Échec à l'exécution de la commande :"
+
+#. Create properties dialog
+#: ../panel-plugin/verve-plugin.c:781
+msgid "Verve"
+msgstr "Verve"
+
+#. Frame for appearance settings
+#: ../panel-plugin/verve-plugin.c:799
+msgid "Appearance"
+msgstr "Apparence"
+
+#. Plugin size label
+#: ../panel-plugin/verve-plugin.c:810
+msgid "Width (in chars):"
+msgstr "Largeur (en pixels) :"
+
+#. Frame for behaviour settings
+#: ../panel-plugin/verve-plugin.c:830
+msgid "Behaviour"
+msgstr "Comportement"
+
+#. History length label
+#: ../panel-plugin/verve-plugin.c:841
+msgid "Number of saved history items:"
+msgstr "Commandes max. dans l'historique :"
+
+#. vim:set expandtab sts=2 ts=2 sw=2:
+#: ../panel-plugin/verve.desktop.in.in.h:1
+msgid "Command line interface with auto-completion and command history"
+msgstr "Interface de ligne de commande avec saisie auto-complétée et historique"
+
+#: ../panel-plugin/verve.desktop.in.in.h:2
+msgid "Verve Command Line"
+msgstr "Ligne de commande Verve"
+
+#. Print error message
+#: ../scripts/verve-focus.c:61
+msgid "Failed to connect to the D-BUS session bus."
+msgstr "Impossible de se connecter à la session D-BUS."
+
+#. Print error message
+#: ../scripts/verve-focus.c:84
+msgid "There seems to be no Verve D-BUS provider (e.g. the Verve panel plugin) running."
+msgstr "Il semblerait qu'il n'y à pas de fournisseur D-BUS pour Verve (p.ex. le greffon verve pour le panneau) en cours."
+
+#~ msgid "Verve Properties"
+#~ msgstr "Préférences Verve"
+#~ msgid "Unkown command."
+#~ msgstr "Commande inconnue."
+

Deleted: verve-plugin/tags/0.3.5/po/it.po

Copied: verve-plugin/tags/0.3.5/po/it.po (from rev 2389, verve-plugin/trunk/po/it.po)
===================================================================
--- verve-plugin/tags/0.3.5/po/it.po	                        (rev 0)
+++ verve-plugin/tags/0.3.5/po/it.po	2007-01-16 21:51:22 UTC (rev 2390)
@@ -0,0 +1,72 @@
+# Italian translations for verve-plugin package.
+# Copyright (C) 2006 Jannis Pohlmann.
+# This file is distributed under the same license as the verve-plugin package.
+# Roberto Pariset <r.pariset at gmail.com>, 2006.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: verve-plugin 0.3.5\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2006-09-10 21:29+0200\n"
+"PO-Revision-Date: 2006-06-16 16:10+0100\n"
+"Last-Translator: Roberto Pariset <r.pariset at gmail.com>\n"
+"Language-Team: Italian <xfce-i18n at xfce.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. Generate error message
+#: ../panel-plugin/verve-plugin.c:407
+msgid "Could not execute command:"
+msgstr "Impossibile eseguire il comando:"
+
+#. Create properties dialog
+#: ../panel-plugin/verve-plugin.c:781
+msgid "Verve"
+msgstr "Verve"
+
+#. Frame for appearance settings
+#: ../panel-plugin/verve-plugin.c:799
+msgid "Appearance"
+msgstr "Aspetto"
+
+#. Plugin size label
+#: ../panel-plugin/verve-plugin.c:810
+msgid "Width (in chars):"
+msgstr "Larghezza (numero di caratteri):"
+
+#. Frame for behaviour settings
+#: ../panel-plugin/verve-plugin.c:830
+msgid "Behaviour"
+msgstr ""
+
+#. History length label
+#: ../panel-plugin/verve-plugin.c:841
+msgid "Number of saved history items:"
+msgstr ""
+
+#. vim:set expandtab sts=2 ts=2 sw=2:
+#: ../panel-plugin/verve.desktop.in.in.h:1
+#, fuzzy
+msgid "Command line interface with auto-completion and command history"
+msgstr ""
+"Interfaccia a riga di comando con completamento automatico e history browsing"
+
+#: ../panel-plugin/verve.desktop.in.in.h:2
+msgid "Verve Command Line"
+msgstr "Riga di comando di Verve"
+
+#. Print error message
+#: ../scripts/verve-focus.c:61
+msgid "Failed to connect to the D-BUS session bus."
+msgstr ""
+
+#. Print error message
+#: ../scripts/verve-focus.c:84
+msgid ""
+"There seems to be no Verve D-BUS provider (e.g. the Verve panel plugin) "
+"running."
+msgstr ""
+
+#~ msgid "Verve Properties"
+#~ msgstr "Proprietà di Verve"

Deleted: verve-plugin/tags/0.3.5/po/ja.po

Copied: verve-plugin/tags/0.3.5/po/ja.po (from rev 2389, verve-plugin/trunk/po/ja.po)
===================================================================
--- verve-plugin/tags/0.3.5/po/ja.po	                        (rev 0)
+++ verve-plugin/tags/0.3.5/po/ja.po	2007-01-16 21:51:22 UTC (rev 2390)
@@ -0,0 +1,71 @@
+# Japanese translations for verve-plugin package.
+# Copyright (C) 2006 Jannis Pohlmann.
+# This file is distributed under the same license as the verve-plugin package.
+# Daichi Kawahata <daichi at xfce.org>, 2006.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: verve-plugin 0.3.5\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2006-09-10 21:29+0200\n"
+"PO-Revision-Date: 2006-02-12 12:55+0900\n"
+"Last-Translator: Daichi Kawahata <daichi at xfce.org>\n"
+"Language-Team: Japanese <xfce-users-jp at ml.fdiary.net>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. Generate error message
+#: ../panel-plugin/verve-plugin.c:407
+msgid "Could not execute command:"
+msgstr "コマンドを実行できませんでした:"
+
+#. Create properties dialog
+#: ../panel-plugin/verve-plugin.c:781
+msgid "Verve"
+msgstr "Verve"
+
+#. Frame for appearance settings
+#: ../panel-plugin/verve-plugin.c:799
+msgid "Appearance"
+msgstr "外観"
+
+#. Plugin size label
+#: ../panel-plugin/verve-plugin.c:810
+msgid "Width (in chars):"
+msgstr "幅 (文字単位):"
+
+#. Frame for behaviour settings
+#: ../panel-plugin/verve-plugin.c:830
+msgid "Behaviour"
+msgstr ""
+
+#. History length label
+#: ../panel-plugin/verve-plugin.c:841
+msgid "Number of saved history items:"
+msgstr ""
+
+#. vim:set expandtab sts=2 ts=2 sw=2:
+#: ../panel-plugin/verve.desktop.in.in.h:1
+#, fuzzy
+msgid "Command line interface with auto-completion and command history"
+msgstr "コマンドの自動補完や履歴を参照できるコマンド行インターフェイスです。"
+
+#: ../panel-plugin/verve.desktop.in.in.h:2
+msgid "Verve Command Line"
+msgstr "Verve コマンドライン"
+
+#. Print error message
+#: ../scripts/verve-focus.c:61
+msgid "Failed to connect to the D-BUS session bus."
+msgstr ""
+
+#. Print error message
+#: ../scripts/verve-focus.c:84
+msgid ""
+"There seems to be no Verve D-BUS provider (e.g. the Verve panel plugin) "
+"running."
+msgstr ""
+
+#~ msgid "Verve Properties"
+#~ msgstr "Verveのプロパティ"

Deleted: verve-plugin/tags/0.3.5/po/nl.po

Copied: verve-plugin/tags/0.3.5/po/nl.po (from rev 2389, verve-plugin/trunk/po/nl.po)
===================================================================
--- verve-plugin/tags/0.3.5/po/nl.po	                        (rev 0)
+++ verve-plugin/tags/0.3.5/po/nl.po	2007-01-16 21:51:22 UTC (rev 2390)
@@ -0,0 +1,76 @@
+# Verve Command Line plugin
+# Copyright (C) 2006 Jannis Pohlmann.
+# This file is distributed under the same license as the Verve package.
+# Jannis <jannis at xfce.org>, 2006.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: verve-plugin 0.3.5\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2006-09-10 21:29+0200\n"
+"PO-Revision-Date: 2006-02-09 16:20+0100\n"
+"Last-Translator: Stephan Arts <stephan at xfce.org>\n"
+"Language-Team: Dutch <vertaling at vrijschrift.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. Generate error message
+#: ../panel-plugin/verve-plugin.c:407
+msgid "Could not execute command:"
+msgstr "Kan commando niet uitvoeren:"
+
+#. Create properties dialog
+#: ../panel-plugin/verve-plugin.c:781
+msgid "Verve"
+msgstr "Verve"
+
+#. Frame for appearance settings
+#: ../panel-plugin/verve-plugin.c:799
+msgid "Appearance"
+msgstr "Beeld"
+
+#. Plugin size label
+#: ../panel-plugin/verve-plugin.c:810
+msgid "Width (in chars):"
+msgstr "Breedte (in tekens):"
+
+#. Frame for behaviour settings
+#: ../panel-plugin/verve-plugin.c:830
+msgid "Behaviour"
+msgstr "Gedrag"
+
+#. History length label
+#: ../panel-plugin/verve-plugin.c:841
+msgid "Number of saved history items:"
+msgstr "Aantal opgeslagen geschiedenis items."
+
+#. vim:set expandtab sts=2 ts=2 sw=2:
+#: ../panel-plugin/verve.desktop.in.in.h:1
+#, fuzzy
+msgid "Command line interface with auto-completion and command history"
+msgstr "Commandoregel interface met auto-aanvulling en geschiedenis bladeren"
+
+#: ../panel-plugin/verve.desktop.in.in.h:2
+msgid "Verve Command Line"
+msgstr "Verve commandoregel"
+
+#. Print error message
+#: ../scripts/verve-focus.c:61
+msgid "Failed to connect to the D-BUS session bus."
+msgstr "Kan niet verbinden met de D-BUS sessie bus."
+
+#. Print error message
+#: ../scripts/verve-focus.c:84
+msgid ""
+"There seems to be no Verve D-BUS provider (e.g. the Verve panel plugin) "
+"running."
+msgstr ""
+"Er schijnt geen Verve D-BUS provider (de Verve paneel plugin) te "
+"draaien."
+
+#~ msgid "Verve Properties"
+#~ msgstr "Verve eigenschappen"
+
+#~ msgid "Unkown command."
+#~ msgstr "Onbekend commando."

Deleted: verve-plugin/tags/0.3.5/po/pl.po

Copied: verve-plugin/tags/0.3.5/po/pl.po (from rev 2389, verve-plugin/trunk/po/pl.po)
===================================================================
--- verve-plugin/tags/0.3.5/po/pl.po	                        (rev 0)
+++ verve-plugin/tags/0.3.5/po/pl.po	2007-01-16 21:51:22 UTC (rev 2390)
@@ -0,0 +1,70 @@
+# Polish translations for verve-plugin package.
+# Copyright (C) 2006 Jannis Pohlmann.
+# This file is distributed under the same license as the verve-plugin package.
+# Piotr Maliński <admin at rk.edu.pl>, 2006.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: verve-plugin 0.3.5\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2006-09-10 21:29+0200\n"
+"PO-Revision-Date: 2006-04-08 12:19+0900\n"
+"Last-Translator: Piotr Maliński <admin at rk.edu.pl>\n"
+"Language-Team: Polish <translation-team-pl at lists.sourceforge.net>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. Generate error message
+#: ../panel-plugin/verve-plugin.c:407
+msgid "Could not execute command:"
+msgstr "Nie mogę wykonać polecenia:"
+
+#. Create properties dialog
+#: ../panel-plugin/verve-plugin.c:781
+msgid "Verve"
+msgstr "Verve"
+
+#. Frame for appearance settings
+#: ../panel-plugin/verve-plugin.c:799
+msgid "Appearance"
+msgstr "Wygląd"
+
+#. Plugin size label
+#: ../panel-plugin/verve-plugin.c:810
+msgid "Width (in chars):"
+msgstr "Długość (znaki):"
+
+#. Frame for behaviour settings
+#: ../panel-plugin/verve-plugin.c:830
+msgid "Behaviour"
+msgstr "Zachowanie"
+
+#. History length label
+#: ../panel-plugin/verve-plugin.c:841
+msgid "Number of saved history items:"
+msgstr "Liczba zapisanych elementów historii:"
+
+#. vim:set expandtab sts=2 ts=2 sw=2:
+#: ../panel-plugin/verve.desktop.in.in.h:1
+msgid "Command line interface with auto-completion and command history"
+msgstr "Wiersz poleceń z autouzupełnianiem i historią komend"
+
+#: ../panel-plugin/verve.desktop.in.in.h:2
+msgid "Verve Command Line"
+msgstr "Wiersz Poleceń Verve"
+
+#. Print error message
+#: ../scripts/verve-focus.c:61
+msgid "Failed to connect to the D-BUS session bus."
+msgstr "Nie udało się połączyć z sesją D-BUSa."
+
+#. Print error message
+#: ../scripts/verve-focus.c:84
+msgid ""
+"There seems to be no Verve D-BUS provider (e.g. the Verve panel plugin) "
+"running."
+msgstr "Wygląda na to że nie ma działającej obecnie wtyczki panelu Verve."
+
+#~ msgid "Verve Properties"
+#~ msgstr "Ustawienia Verve"

Deleted: verve-plugin/tags/0.3.5/po/pt_BR.po

Copied: verve-plugin/tags/0.3.5/po/pt_BR.po (from rev 2389, verve-plugin/trunk/po/pt_BR.po)
===================================================================
--- verve-plugin/tags/0.3.5/po/pt_BR.po	                        (rev 0)
+++ verve-plugin/tags/0.3.5/po/pt_BR.po	2007-01-16 21:51:22 UTC (rev 2390)
@@ -0,0 +1,69 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# Tomas Acauan Schertel <tschertel at gmail.com>, 2006.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: verve plugin 0.3.5\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2006-09-10 21:12+0200\n"
+"PO-Revision-Date: 2006-11-07 13:11-0300\n"
+"Last-Translator: Tomas A. Schertel <tschertel at gmail.com>\n"
+"Language-Team: Brazilan Portuguese <xfce-i18n at xfce.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. Generate error message
+#: ../panel-plugin/verve-plugin.c:407
+msgid "Could not execute command:"
+msgstr "Não foi possível executar o comando:"
+
+#. Create properties dialog
+#: ../panel-plugin/verve-plugin.c:781
+msgid "Verve"
+msgstr "Verve"
+
+#. Frame for appearance settings
+#: ../panel-plugin/verve-plugin.c:799
+msgid "Appearance"
+msgstr "Aparência"
+
+#. Plugin size label
+#: ../panel-plugin/verve-plugin.c:810
+msgid "Width (in chars):"
+msgstr "Tamanho (em caracteres):"
+
+#. Frame for behaviour settings
+#: ../panel-plugin/verve-plugin.c:830
+msgid "Behaviour"
+msgstr "Comportamento"
+
+#. History length label
+#: ../panel-plugin/verve-plugin.c:841
+msgid "Number of saved history items:"
+msgstr "Número de itens salvos no histórico:"
+
+#. vim:set expandtab sts=2 ts=2 sw=2:
+#: ../panel-plugin/verve.desktop.in.in.h:1
+msgid "Command line interface with auto-completion and command history"
+msgstr "Linha de comando com auto-completar e histórico de comandos"
+
+#: ../panel-plugin/verve.desktop.in.in.h:2
+msgid "Verve Command Line"
+msgstr "Linha de comando"
+
+#. Print error message
+#: ../scripts/verve-focus.c:61
+msgid "Failed to connect to the D-BUS session bus."
+msgstr "Falha ao conectar com a sessão D-BUS."
+
+#. Print error message
+#: ../scripts/verve-focus.c:84
+msgid ""
+"There seems to be no Verve D-BUS provider (e.g. the Verve panel plugin) "
+"running."
+msgstr ""
+"Parece não existir um provedor D-BUS Verve (ex. plugin de painel Verve) "
+"rodando."

Deleted: verve-plugin/tags/0.3.5/po/ru.po

Copied: verve-plugin/tags/0.3.5/po/ru.po (from rev 2389, verve-plugin/trunk/po/ru.po)
===================================================================
--- verve-plugin/tags/0.3.5/po/ru.po	                        (rev 0)
+++ verve-plugin/tags/0.3.5/po/ru.po	2007-01-16 21:51:22 UTC (rev 2390)
@@ -0,0 +1,71 @@
+# Russian translation of verve-plugin.
+# Copyright (C) 2006 Jannis Pohlmann.
+# This file is distributed under the same license as the verve-plugin package.
+# Andrey Fedoseev <andrey.fedoseev at gmail.com>, 2006.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: verve-plugin 0.3.5\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2006-09-10 21:29+0200\n"
+"PO-Revision-Date: 2006-03-24 21:31+0500\n"
+"Last-Translator: Andrey Fedoseev <andrey.fedoseev at gmail.com>\n"
+"Language-Team: Russian <ru at li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. Generate error message
+#: ../panel-plugin/verve-plugin.c:407
+msgid "Could not execute command:"
+msgstr "Невозможно выполнить команду:"
+
+#. Create properties dialog
+#: ../panel-plugin/verve-plugin.c:781
+msgid "Verve"
+msgstr "Verve"
+
+#. Frame for appearance settings
+#: ../panel-plugin/verve-plugin.c:799
+msgid "Appearance"
+msgstr "Внешний вид"
+
+#. Plugin size label
+#: ../panel-plugin/verve-plugin.c:810
+msgid "Width (in chars):"
+msgstr "Ширина (в символах):"
+
+#. Frame for behaviour settings
+#: ../panel-plugin/verve-plugin.c:830
+msgid "Behaviour"
+msgstr ""
+
+#. History length label
+#: ../panel-plugin/verve-plugin.c:841
+msgid "Number of saved history items:"
+msgstr ""
+
+#. vim:set expandtab sts=2 ts=2 sw=2:
+#: ../panel-plugin/verve.desktop.in.in.h:1
+#, fuzzy
+msgid "Command line interface with auto-completion and command history"
+msgstr "Командная строка с автодополнением и просмотром истории"
+
+#: ../panel-plugin/verve.desktop.in.in.h:2
+msgid "Verve Command Line"
+msgstr "Командная строка Verve"
+
+#. Print error message
+#: ../scripts/verve-focus.c:61
+msgid "Failed to connect to the D-BUS session bus."
+msgstr ""
+
+#. Print error message
+#: ../scripts/verve-focus.c:84
+msgid ""
+"There seems to be no Verve D-BUS provider (e.g. the Verve panel plugin) "
+"running."
+msgstr ""
+
+#~ msgid "Verve Properties"
+#~ msgstr "Параметры Verve"

Deleted: verve-plugin/tags/0.3.5/po/vi.po

Copied: verve-plugin/tags/0.3.5/po/vi.po (from rev 2389, verve-plugin/trunk/po/vi.po)
===================================================================
--- verve-plugin/tags/0.3.5/po/vi.po	                        (rev 0)
+++ verve-plugin/tags/0.3.5/po/vi.po	2007-01-16 21:51:22 UTC (rev 2390)
@@ -0,0 +1,72 @@
+# This file is distributed under the same license as the PACKAGE package.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER.
+# Phan Vĩnh Thịnh <teppi at vnlinux.org>, 2006.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: verve-plugin 0.3.5\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2006-09-10 21:29+0200\n"
+"PO-Revision-Date: 2006-02-19 22:50+0300\n"
+"Last-Translator: Phan Vĩnh Thịnh <teppi at vnlinux.org>\n"
+"Language-Team: Vietnamese <none at li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.9.1\n"
+
+#. Generate error message
+#: ../panel-plugin/verve-plugin.c:407
+msgid "Could not execute command:"
+msgstr "Không thực hiện được câu lệnh:"
+
+#. Create properties dialog
+#: ../panel-plugin/verve-plugin.c:781
+msgid "Verve"
+msgstr "Verve"
+
+#. Frame for appearance settings
+#: ../panel-plugin/verve-plugin.c:799
+msgid "Appearance"
+msgstr "Vẻ ngoài"
+
+#. Plugin size label
+#: ../panel-plugin/verve-plugin.c:810
+msgid "Width (in chars):"
+msgstr "Rộng (theo ký tự):"
+
+#. Frame for behaviour settings
+#: ../panel-plugin/verve-plugin.c:830
+msgid "Behaviour"
+msgstr ""
+
+#. History length label
+#: ../panel-plugin/verve-plugin.c:841
+msgid "Number of saved history items:"
+msgstr ""
+
+#. vim:set expandtab sts=2 ts=2 sw=2:
+#: ../panel-plugin/verve.desktop.in.in.h:1
+#, fuzzy
+msgid "Command line interface with auto-completion and command history"
+msgstr ""
+"Giao diện dòng lệnh với khả năng tự động kết thúc dòng lệnh và duyệt lịch sử"
+
+#: ../panel-plugin/verve.desktop.in.in.h:2
+msgid "Verve Command Line"
+msgstr "Dòng lệnh Verve"
+
+#. Print error message
+#: ../scripts/verve-focus.c:61
+msgid "Failed to connect to the D-BUS session bus."
+msgstr ""
+
+#. Print error message
+#: ../scripts/verve-focus.c:84
+msgid ""
+"There seems to be no Verve D-BUS provider (e.g. the Verve panel plugin) "
+"running."
+msgstr ""
+
+#~ msgid "Verve Properties"
+#~ msgstr "Thuộc tính Verve"

Deleted: verve-plugin/tags/0.3.5/po/zh_TW.po

Copied: verve-plugin/tags/0.3.5/po/zh_TW.po (from rev 2389, verve-plugin/trunk/po/zh_TW.po)
===================================================================
--- verve-plugin/tags/0.3.5/po/zh_TW.po	                        (rev 0)
+++ verve-plugin/tags/0.3.5/po/zh_TW.po	2007-01-16 21:51:22 UTC (rev 2390)
@@ -0,0 +1,67 @@
+# Traditional Chinese translations for verve-plugin package.
+# Copyright (C) 2006 Jannis Pohlmann.
+# This file is distributed under the same license as the verve-plugin package.
+# Hydonsingore Cia <hydonsingore at educities.edu.tw>, 2006.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: verve-plugin 0.3.5\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2006-09-10 21:29+0200\n"
+"PO-Revision-Date: 2006-08-12 11:41+0800\n"
+"Last-Translator: Hydonsingore Cia <hydonsingore at educities.edu.tw>\n"
+"Language-Team: Chinese (traditional) <zh-l10n at linux.org.tw>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. Generate error message
+#: ../panel-plugin/verve-plugin.c:407
+msgid "Could not execute command:"
+msgstr "無法執行指令:"
+
+#. Create properties dialog
+#: ../panel-plugin/verve-plugin.c:781
+msgid "Verve"
+msgstr "Verve"
+
+#. Frame for appearance settings
+#: ../panel-plugin/verve-plugin.c:799
+msgid "Appearance"
+msgstr "外觀"
+
+#. Plugin size label
+#: ../panel-plugin/verve-plugin.c:810
+msgid "Width (in chars):"
+msgstr "寬度 (多少字元):"
+
+#. Frame for behaviour settings
+#: ../panel-plugin/verve-plugin.c:830
+msgid "Behaviour"
+msgstr "行為"
+
+#. History length label
+#: ../panel-plugin/verve-plugin.c:841
+msgid "Number of saved history items:"
+msgstr "歷史條目的儲存數量:"
+
+#. vim:set expandtab sts=2 ts=2 sw=2:
+#: ../panel-plugin/verve.desktop.in.in.h:1
+msgid "Command line interface with auto-completion and command history"
+msgstr "具有自動補齊和指令歷史紀錄的指令列介面"
+
+#: ../panel-plugin/verve.desktop.in.in.h:2
+msgid "Verve Command Line"
+msgstr "Verve 指令列"
+
+#. Print error message
+#: ../scripts/verve-focus.c:61
+msgid "Failed to connect to the D-BUS session bus."
+msgstr "無法連結至 D-BUS session 匯流排。"
+
+#. Print error message
+#: ../scripts/verve-focus.c:84
+msgid ""
+"There seems to be no Verve D-BUS provider (e.g. the Verve panel plugin) "
+"running."
+msgstr "似乎沒有 Verve D-BUS 提供者 (如 Verve 面板外掛程式) 執行中。"

Deleted: verve-plugin/tags/0.3.5/scripts/verve-focus.c

Copied: verve-plugin/tags/0.3.5/scripts/verve-focus.c (from rev 2389, verve-plugin/trunk/scripts/verve-focus.c)
===================================================================
--- verve-plugin/tags/0.3.5/scripts/verve-focus.c	                        (rev 0)
+++ verve-plugin/tags/0.3.5/scripts/verve-focus.c	2007-01-16 21:51:22 UTC (rev 2390)
@@ -0,0 +1,104 @@
+/* $Id$ */
+/* vi:set expandtab sw=2 sts=2: */
+/*-
+ * Copyright (c) 2006-2007 Jannis Pohlmann <jannis at xfce.org>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#ifdef HAVE_STDLIB_H
+#include <stdlib.h>
+#endif
+
+#include <libxfce4util/libxfce4util.h>
+
+#include <glib.h>
+
+#include <dbus/dbus.h>
+
+
+
+int 
+main (int     argc,
+      gchar **argv)
+{
+  DBusConnection *connection;
+  DBusMessage    *method;
+  DBusMessage    *result;
+  DBusError       error;
+  gint            exit_status;
+
+  /* Configure gettext */
+  xfce_textdomain (GETTEXT_PACKAGE, PACKAGE_LOCALE_DIR, "UTF-8");
+
+  /* Initialize error structure */
+  dbus_error_init (&error);
+
+  /* Connect to the session bus */
+  connection = dbus_bus_get (DBUS_BUS_SESSION, &error);
+
+  /* Print error if connection failed */
+  if (G_UNLIKELY (connection == NULL))
+    {
+      /* Print error message */
+      g_error (_("Failed to connect to the D-BUS session bus."));
+
+      /* Free error structure */
+      dbus_error_free (&error);
+
+      /* Exit with error code */
+      return EXIT_FAILURE;
+    }
+
+  /* Generate D-BUS message */
+  method = dbus_message_new_method_call ("org.xfce.Verve", "/org/xfce/RunDialog", "org.xfce.Verve", "GrabFocus");
+
+  /* Send message and wait for reply */
+  result = dbus_connection_send_with_reply_and_block (connection, method, 5000, &error);
+
+  /* Destroy sent message */
+  if (G_LIKELY (method != NULL))
+    dbus_message_unref (method);
+
+  /* Handle method send error */
+  if (G_UNLIKELY (result == NULL))
+    {
+      /* Print error message */
+      g_debug (_("There seems to be no Verve D-BUS provider (e.g. the Verve panel plugin) running."));
+
+      /* Free error structure */
+      dbus_error_free (&error);
+
+      /* Set exit status */
+      exit_status = EXIT_FAILURE;
+    }
+  else
+    exit_status = EXIT_SUCCESS;
+
+  /* Destroy result */
+  if (G_LIKELY (result != NULL))
+    dbus_message_unref (result);
+
+  /* Disconnect from session bus */
+  if (G_LIKELY (connection != NULL))
+    dbus_connection_unref (connection);
+
+  return exit_status;
+}




More information about the Goodies-commits mailing list