2009-05-29 Mike Massonnet === Release 1.0.2 === 2009-06-28 Mike Massonnet Drop inhibit option - panel-plugin/collector.[ch]: Remove inhibit property. - panel-plugin/main.c, panel-plugin/menu.c: Same here, wipe out code related to the inhibit option. 2009-05-15 Mike Massonnet Only consider XFCE for OnlyShowIn - xfce4-clipman-plugin.desktop.in: Do not include GNOME, KDE and LXDE, it is best to show the Xfce Clipman Plugin only inside an XFCE menu. 2009-05-15 Mike Massonnet Do not consider text/html as text - panel-plugin/collector.c(cb_clipboard_owner_change): Drop check on text/html atom. 2009-05-14 Mike Massonnet === Release 1.0.1 === 2009-05-14 Mike Massonnet Ask the user if the clipboard manager should be restarted - panel-plugin/main.c(update_autostart_file): New function to set the Hidden key to true or false. - panel-plugin/main.c(cb_status_icon_quit): Ask the user if the manager should be restarted. 2009-04-26 Mike Massonnet Rename "Add selections" to "Sync selections" - panel-plugin/settings-dialog.glade: Rename the option Add selections. 2009-04-25 Mike Massonnet Make strings in authors about dialog translatable - panel-plugin/main.c(plugin_about): Don't declare static strings cause gettext isn't usable this way. 2009-04-24 Mike Massonnet Proper block/unblock menu functions and fix locale bug - panel-plugin/main.c: Add new functions plugin_block_menu/unblock_menu to block the popup menu of the status icon in a proper way. - panel-plugin/main.c(plugin_about): Drop the macro XFCE_LICENSE_GPL in favor of a static text. Fixes bug #5285. 2009-04-24 Mike Massonnet Fix dummy warning 2009-04-23 Mike Massonnet Use stock item for the main icon - panel-plugin/main.c(cb_status_icon_set_size), panel-plugin/main.c(panel_plugin_set_size): Use stock icon paste to fit the user icon theme. 2009-04-23 Mike Massonnet Yet another GMarkup fix 2009-04-22 Mike Massonnet Update documentation 2009-04-22 Mike Massonnet New option to exclude selections from the history - panel-plugin/settings-dialog.glade: Move option "Add selections" to new frame "Behavior" and add a new option that allows to exclude the selections from the history. - panel-plugin/collector.c: Install a new property history-ignore-primary-clipboard use it inside cb_check_primary_clipboard() to prevent a selection from going into the history. - panel-plugin/main.c: Bind new property to xfconf and the settings dialog. - panel-plugin/common.h: New default setting for history-ignore-primary-clipboard. 2009-04-21 Mike Massonnet Refixing the last two commits with the right function calls - panel-plugin/main.c: Use g_markup_printf_escaped() instead of in-between variables being set with g_markup_escape_text(). 2009-04-21 Mike Massonnet Same commit for the regex and the command that are also displayed 2009-04-21 Mike Massonnet Markup escape for action name and command name in the treeview 2009-04-21 Mike Massonnet Add OnlyShowIn to the desktop entry file for the menu - xfce4-clipman-plugin.desktop.in: The file is using a reserved category and therefore must have a OnlyShowIn key. 2009-04-21 Mike Massonnet Open the documentation in the user locale - panel-plugin/main.c(cb_show_help): Trigger through possible filenames based on the user locale. 2009-04-21 Mike Massonnet Update documentation 2009-04-20 Mike Massonnet === Release 1.0.0 === 2009-04-19 Mike Massonnet Add me to the documenters 2009-04-19 Mike Massonnet Set Help button sensitive in dialog and add code to show the help - panel-plugin/Makefile.am: Define DATAROOTDIR to be able to point into xfce4/doc. - panel-plugin/main.c: New callback cb_show_help to run a command that opens the html manual file. 2009-04-19 Mike Massonnet Add documentation 2009-04-18 Mike Massonnet Add a simple signal for items being added in ClipmanHistory - panel-plugin/history.c, panel-plugin/history.h: Install a signal item-added in the class. Emit it when a new item is added into the history. - panel-plugin/main.c(plugin_register): Connect to the signal item-added after loading the data. - panel-plugin/main.c(cb_status_icon_quit), panel-plugin/main.c(cb_status_icon_popup_menu): New callback for the Quit item in the status icon popup menu. Hide the status icon before leaving the main loop as it can take a little moment sometimes. 2009-04-18 Mike Massonnet Update credits for the translator and previous authors 2009-04-18 Mike Massonnet Add about dialog 2009-04-16 Mike Massonnet Init the locale one stage earlier - panel-plugin/main.c: Call xfce_textdomain() in the preinit callback otherwise the error message wouldn't be localisated. 2009-04-16 Mike Massonnet Prepare for release 2009-04-15 Mike Massonnet Use a WeakNotify callback... useless but well... - panel-plugin/main.c: Unref the status icon and move the plugin_save/free calls to a WeakNotify callback on the status icon. 2009-04-15 Mike Massonnet Install autostart file automagically - panel-plugin/xfce4-clipman-plugin-autostart.desktop.in, panel-plugin/Makefile.am: Install a system wide autostart file with Hidden set to true by default. - panel-plugin/main.c: New function install_autostart_file() called after creating the status icon to install the autostart file to the user config directory (thus at the first run) with the key Hidden set automatically to either false or left to true. 2009-04-15 Mike Massonnet Replace g_idle against g_timeout - panel-plugin/main.c(status_icon_register): Use g_timeout of 60 seconds instead of g_idle (asap as the main loop is idle) since I noticed that logging in with the plugin being autostarted and the panel was not yet all run up, the plugin quit as it has been reported to be not embedded within the notification area. 2009-04-14 Mike Massonnet Drop startup notification from the desktop entry file - xfce4-clipman-plugin.desktop.in: Set StartupNotify to false 2009-04-14 Mike Massonnet Block status icon popup menu if settings dialog is open - panel-plugin/main.c(cb_status_icon_popup_menu): Don't popup the menu if the settings dialog is open. 2009-04-13 Mike Massonnet Forgot the desktop entry files - panel-plugin/xfce4-clipman-plugin.desktop.in.in, xfce4-clipman-plugin.desktop.in: Use the new icons in these files aswell. 2009-04-13 Mike Massonnet Add home-made icon for the touch of personalization - Makefile.am, configure.ac.in, icons/*: Build and install icons. - panel-plugin/main.c, panel-plugin/settings-dialog.glade: Use new icon (keep the stock icon as fallback). 2009-04-13 Mike Massonnet Add (invisible) option in the action settings dialog - panel-plugin/settings-dialog.glade: Add a new checkbox for individual actions "Activate only on default clipboard" to restrict the use of an action only when manually copied (for instance a URL pattern). For the moment this setting is left unimplemented, but there so it can already be translated for the time being. 2009-04-13 Mike Massonnet Add Inhibit option in the Clipman menu - panel-plugin/collector.c, panel-plugin/collector.h: Add a GObject property inhibit and ignore changes happening on the clipboards in the clipboard owner changes callback if it is set to TRUE. Add a public function clipman_collector_inhibit(). - panel-plugin/menu.c: Add a Enable check item in the menu. Use libexo to bind the inhibit property of ClipmanCollector to the active property of the check item -- with a negation as inhibit on TRUE would mean disabled. - panel-plugin/main.c: Bind the inhibit property of ClipmanCollector to the new xfconf property inhibit. 2009-04-13 Mike Massonnet Set ownership on CLIPBOARD_MANAGER - panel-plugin/main.c: Add a panel plugin check function and acquire ownership on the X11 Selection CLIPBOARD_MANAGER. Quit the application if there is an application already with the ownership. This part follows the "clipboard manager spec" from freedesktop, but it doesn't implement the possibility to be replaced by another manager. - panel-plugin/main.c(plugin_preinit): Set human readable name for the application if run in the notification area. 2009-04-13 Mike Massonnet Make the plugin run as a standalone application - panel-plugin/main.c: Rename panel-plugin.c to main.c and use the Full register function from libxfce4panel to check if the plugin is run from the command line and build a status icon instead of the panel plugin with a button. - panel-plugin/Makefile.am: Install the plugin to bindir. - Makefile.am, xfce4-clipman-plugin.desktop.in: Install a desktop entry file for the menu. 2009-04-11 Mike Massonnet Set Clipman the owner of a text content only on specific target - panel-plugin/collector.c(cb_clipboard_owner_change): Check target of text content and make Clipman the owner of the text only if the targets text/plain or text/html is available. - panel-plugin/collector.c(cb_check_primary_clipboard): Useless call to clipman_history_add_text() as the text is going into the default clipboard. 2009-04-10 Mike Massonnet New test program to report targets 2009-04-02 Mike Massonnet String update (Regex > Pattern) 2009-04-02 Mike Massonnet Fix Makefile - panel-plugin/Makefile.am: I forgot to finish the changes on this file... 2009-04-02 Mike Massonnet Install a popup command - configure.ac.in, panel-plugin/Makefile.am: Install the new binary xfce4-popup-clipman. - panel-plugin/panel-plugin.c, panel-plugin/common.h: Add an X11 selection on the panel plugin and listen to it. - panel-plugin/xfce4-popup-clipman.c: New binary that sends a message to the X11 selection installed in the panel plugin. 2009-04-01 Mike Massonnet Set long URLs to 120 characters at least - panel-plugin/xfce4-clipman-actions.xml.in: Change the minimum size of long URLs from 80 to 120 2009-04-01 Mike Massonnet Update the strings, yet again 2009-04-01 Mike Massonnet Update the strings 2009-04-01 Mike Massonnet April April I restore the actions - panel-plugin/collector.c(cb_clipboard_owner_change): I broked the actions earlier, fixed now. - panel-plugin/xfce4-clipman-actions.xml.in: New action for long URLs with a command to send the link to TinyURL 2009-03-31 Mike Massonnet Set sensitivity of OK button in action dialog - panel-plugin/panel-plugin.c(panel_plugin_configure): Put the action dialog in the same window group as the settings dialog to respect its modal state. - panel-plugin/panel-plugin.c(panel_plugin_configure): Connect action-name, regex, and buttons add-command/delete-command to the new callback cb_set_action_dialog_button_ok to set automatically the sensitivity of the OK button in the action dialog. - panel-plugin/panel-plugin.c(cb_actions_row_activated): Set the entry texts after the commands in the treeview so it updates the OK button sensitivity via the entry text changes. - panel-plugin/panel-plugin.c(cb_add_command): Fix the condition to add a new command and do the same check in cb_refresh_command. - panel-plugin/panel-plugin.c(cb_set_action_dialog_button_ok): Verify that there is a command-name, a valid regex, and at least one command to set the OK button sensitive, otherwise not. 2009-03-31 Mike Massonnet Make Clipman the owner of the clipboard contents - panel-plugin/collector.c: Rename priv->restoring to priv->internal_change. Drop function _clipman_collector_restore_clipboard in favor of making Clipman automatically the owner of the clipboard contents. This doesn't work for the primary clipboard as it would destroy the selection under hand thus it will lack this functionnality, but all-in-all this clipboard is not as mandatory as the default clipboard. 2009-03-31 Mike Massonnet Save/Load the history in the correct order - panel-plugin/panel-plugin.c(panel_plugin_save): Obviously I was sure I did that already, but then no trace in the logs, so once again, the history was displayed in the reverse order each time the plugin restarted, so the list is reversed before being saved. Also free the memory allocated to texts as it has to even if there is no texts to be saved. 2009-03-30 Mike Massonnet Redesign the actions settings dialog - panel-plugin/settings-dialog.glade: Unify the commands and the actions dialog. Add a refresh button for the command (makes the commands editable). - panel-plugin/panel-plugin.c: Implement the new callbacks. Set the settings dialog back to transient and put it inside a window group (cause gtk_dialog_run makes the dialog modal, cf. bug #4977). - panel-plugin/xfce4-clipman-actions.xml.in: Change the regex' a little bit. 2009-02-11 Mike Massonnet Add i18n support for the default XML actions file. - panel-plugin/actions.c, panel-plugin/xfce4-clipman-actions.xml.in, panel-plugin/Makefile.am: Make it possible to have the action and command names translated inside the settings dialog just like it is done with the Thunar User Custom Actions. - panel-plugin/xfce4-clipman-actions.xml: This file is now auto-generated, delete it. - po/POTFILES.in: Add the new .xml.in file to the list of files to translate. 2009-01-30 Mike Massonnet Drop the idea of an icon for an action. - panel-plugin/panel-plugin.c, panel-plugin/actions.c, panel-plugin/actions.h: Remove the code that was intended to show an icon for an action. It is more a waste of time to set it, and not that useful inside the menu. 2009-01-30 Mike Massonnet Add support for GLib < 2.16 for the commands treeview. - panel-plugin/panel-plugin.c: New function __foreach_command_fill_commands for versions of GLib prior to 2.16. 2009-01-30 Mike Massonnet Fix a crasher. - panel-plugin/history.c(clipman_history_clear): Set the item_to_restore to NULL when clearing the history. - panel-plugin/collector.c(_clipman_collector_restore_clipboard): Check if the item to restore is not NULL. 2009-01-30 Mike Massonnet Remove the origin of the clipboard from the history items. - panel-plugin/history.h, panel-plugin/history.c: Don't store from where a clipboard originated from (useless). Update the public methods and the struct ClipmanHistoryItem. - panel-plugin/collector.c, panel-plugin/panel-plugin.c: Update the code to use the new function declarations. 2009-01-30 Mike Massonnet Set the settings dialog "buggy". - panel-plugin/panel-plugin.c: In a way to fix weird bugs, the settings dialog is no more transient for the top level widget of the panel plugin. - panel-plugin/settings-dialog.glade: Both dialogs "action-dialog" and "command-dialog" skip the taskbar and have the type hint "dialog". 2009-01-26 Mike Massonnet Actions are configurable through the settings dialog. - panel-plugin/actions.c: Fix a crasher in clipman_actions_load() when reading the XML file from the user config directory. Add debug messages when loading and saving the XML file. - panel-plugin/actions.c(clipman_actions_get_entries): New method to retrieve the list of every acion. - panel-plugin/actions.c(clipman_actions_remove_command): Renamed the method clipman_actions_remove() to clipman_actions_remove_command() and re-implement clipman_actions_remove() to remove an entry entirely. - panel-plugin/settings-dialog.glade: Rename some widgets and add signal handlers. - panel-plugin/panel-plugin.c: Set up the actions dialog in panel_plugin_configure() and a add a load of new callbacks and functions specific to the settings dialog to add/edit/delete actions. 2009-01-26 Mike Massonnet Small tweak in the GRegex. - panel-plugin/actions.c(clipman_actions_add): Add the compile flag "caseless" and move the match option "anchored" to the compile flags. - configure.ac.in: Add GTK+/GLib requirements to 2.10/2.14. 2009-01-25 Mike Massonnet Forget to add support for GLib < 2.16 to save the actions. - panel-plugin/actions.c: I somehow was too hasty to commit, and forgot about support for GLib < 2.16 to save the actions to the XML file. 2009-01-25 Mike Massonnet Fix g_debug(). - Looks like I left some g_debug() calls in the code. 2009-01-25 Mike Massonnet Actions are saved/loaded to/from an XML file. - panel-plugin/actions.c(clipman_actions_load): Load actions from an XML file from the user config directory or fallback to a system wide config directory. Drop the hard-coded actions. - panel-plugin/actions.c(clipman_actions_save): Save the actions in an XML format inside the user config directory. - panel-plugin/actions.c(clipman_actions_add): Create the regex with the flag "anchored" to force the regex' with a starting ^ and an ending $. - panel-plugin/Makefile.am: Declare SYSCONFDIF and add XML actions file. - panel-plugin/xfce4-clipman-actions.xml: Default system wide configuration file of the actions. 2009-01-25 Mike Massonnet Actions are available but hard-coded at this time. - configure.ac.in, tests/*: Add a test program for the actions. - panel-plugin/actions.c, panel-plugin/actions.h, panel-plugin/Makefile.am: A new GObject ClipmanActions with methods to add and remove commands for a specific regex. The code to save and load from an XML file still needs to be written. - panel-plugin/collector.c, panel-plugin/panel-plugin.c: Install new property "enable-actions" which will match the clipboard texts for actions. Bind the property to xfconf inside panel_plugin_register(). - panel-plugin/collector.c(cb_clipboard_owner_change): Change timeout from 500 to 250 milliseconds to make the actions respond faster on a mouse release. - panel-plugin/settings-dialog.glade: New dialogs for the actions. 2009-01-15 Mike Massonnet Some minor changes. - panel-plugin/panel-plugin.c(panel_plugin_configure), panel-plugin/settings-dialog.glade: The menu is blocked while the dialog is shown. Set the dialog transient for the panel plugin toplevel window and destroy with the parent (this introduces a bug: the panel button remains unclickable but dunno why). - panel-plugin/collector.c(cb_check_primary_clipboard): Change the behavior of the "add-primary-selection" option to copy the text to the default clipboard, so that it now behaves like "what you select can be pasted". - panel-plugin/panel-plugin.c(panel_plugin_load,panel_plugin_save): Load/Save the images with the extension ".png". - panel-plugin/panel-plugin.c(panel_plugin_load,panel_plugin_save): Correct the size allocated to texts. Fixes a free corruption! 2009-01-14 Mike Massonnet The settings dialog is in. - configure.ac.in, panel-plugin/Makefile.am: Add Glade dependency for the settings dialog. - panel-plugin/common.h, panel-plugin/history.c, panel-plugin/collector.c: Declare define names for the default values, also rename the property ignore-primary-clipboard from ClipmanCollector to add-primary-clipboard to keep the easiness of Xfconf bindings inside the settings dialog. - panel-plugin/panel-plugin.c: Connect configure function from XfcePanelPlugin. - panel-plugin/settings-dialog.glade: The Glade interface of the settings dialog. 2009-01-13 Mike Massonnet New property in ClipmanHistory "save-on-quit". - panel-plugin/history.c: Install new property "save-on-quit". - panel-plugin/panel-plugin.c: Bind property "save-on-quit" from ClipmanHistory to Xfconf and use it in plugin_panel_load() and plugin_panel_save(). 2009-01-13 Mike Massonnet Save the history on disk. - panel-plugin/history.c, panel-plugin/history.h: New function clipman_history_get_list() and drop the functions clipman_history_get_texts() and clipman_history_get_images(). - panel-plugin/menu.c(_clipman_menu_update_list): Use the new function replacement from ClipmanHistory. - panel-plugin/panel-plugin.c: Implement new functions panel_plugin_load() and panel_plugin_save() to respectively load the history (images and texts) and save the history. 2009-01-09 Mike Massonnet Some small fixes. - panel-plugin/history.c(clipman_history_add_text): Don't escape the text for markups as the preview is displayed as a label, and not as a markup. - panel-plugin/history.c(clipman_history_finalize): Clear the GSLists stored inside ClipmanHistory on finalize. - panel-plugin/menu.c(_clipman_menu_update_list): Set the clear history menu item sensitive/insensitive given the status of the history. For that store a pointer of the menu item inside the private data. - panel-plugin/collector.c(cb_clipboard_owner_change): Make sure the image is not NULL before adding it to the history 2009-01-09 Mike Massonnet Major rewrite of the plugin using GObjects and Xfconf. - The plugin now uses GObjects with properties binded to Xfconf for easy configuration. - The plugin is able to store texts and images. - The changes over the clipboards are noticed with signals and no more a timeout which saves a lot of CPU wakeups.