Release 0.7.0. 0.7.0
authorAndriy Grytsenko <andrej@rep.kiev.ua>
Thu, 21 Aug 2014 14:50:53 +0000 (17:50 +0300)
committerAndriy Grytsenko <andrej@rep.kiev.ua>
Thu, 21 Aug 2014 15:41:38 +0000 (18:41 +0300)
ChangeLog
README
VERSIONING
configure.ac
src/plugin.h

index ee312b5..f4704c2 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,76 @@
+0.7.0
+-------------------------------------------------------------------------
+* New plugin 'launchtaskbar' with combined functionality from 'launchbar'
+    and 'taskbar'. For easy support codebase is merged instead of doing
+    duplicates but appearance is still the same in dependency from mode
+    chosen.
+* Integrated with LibFM, all launching and application selection in the
+    launchbar settings is done by LibFM now.
+* New simpler plugins API implementation, using LibFM plugins loader. In
+    new API some callbacks were simplified and some removed, see all the
+    detailed descriptions in the file plugin.h.
+* New plugins are GtkWidgets now, therefore there is no explicit destroy
+    for them or their data, all will be handled implicitly.
+* Changed config access with simple API similar to libconfig one.
+* Using icon caching from LibFM.
+* Applications properties in the menu are managed by LibFM API, no more
+    calls to lxshortcut application.
+* Setting for file manager is not handled on its own but XDG setting is
+    used now, i.e. default choice for "inode/directory" MIME type.
+* Setting for terminal is handled by LibFM, therefore it is the same as
+    in PCManFM now, no own setting anymore.
+* Replaced configure option --enable-cast-checks with --enable-debug.
+* Replaced 'pager' plugin with former 'wnckpager' one. The 'wnckpager'
+    name is still supported for compatibility but it is the same plugin.
+* Added new plugin 'weather', written by Piotr Sipika.
+* Using drag & drop handling from LibFM in launchbar. It is possible now
+    to use any kind of files as launchbuttons, and folders can receive
+    drops as well.
+* Allowed drag applications from system menu plugin so they now can be
+    dropped somewhere. The obvious example is drop on the desktop.
+* Using human readable sensor names if available (like 'Core 0', etc.).
+* Panel is allowed to hide completely (setting width when hidden to 0).
+* The IconGrid converted into GtkContainer derived class PanelIconGrid.
+* Allowed to use <USER_CONFIG_DIR>/lxpanel/<profile>/gtkrc for the panel
+    custom style setup.
+* The panel itself in not a struct now but a GtkWindow derived class so
+    no special API to destroy it is required.
+* Improved the layout of icons in panel, they will not align to the edge
+    of screen but appropriately to panel height. Some of them did that
+    already but some were aligned to the screen edge without any gap.
+* The button to configure plugin in panel plugins configuration tab is
+    renamed from 'Edit' to 'Properties'.
+* All logging is unified. The option --log is deprecated and isn't used
+    anymore. User can change logs appearance using G_MESSAGES_DEBUG and
+    G_MESSAGES_PREFIXED environment variables (see GLib docs).
+* Old APIs are in place still for backward compatibility with third party
+    plugins but will be dropped later, supposedly on next feature release
+    point. Old APIs are not present in public headers, compatibility is
+    on binary level only.
+* A whole lot of bugfixes.
+
+0.6.x
+-------------------------------------------------------------------------
+***
+
+0.5.x
+-------------------------------------------------------------------------
+***
+
+0.4.x
+-------------------------------------------------------------------------
+***
+
+0.3.x
+-------------------------------------------------------------------------
+***
+
+0.2.9.x
+-------------------------------------------------------------------------
+
+0.2.8.x
+-------------------------------------------------------------------------
+
 0.2.7.2
 -------------------------------------------------------------------------
 1. Add manapages of lxpanelctl.
diff --git a/README b/README
index 613a2ca..70c35c4 100644 (file)
--- a/README
+++ b/README
@@ -46,7 +46,7 @@ About theming & lxpanel:
        *possibly more, as yet unfound.
 
 3. You can also set theme for any plugin specifically using it's widget name
-    which is equal to plugin name.
+    which is equal to plugin type.
 
 4. There is a specific RC file which can be loaded by LXPanel, it can be placed
     as ~/.config/lxpanel/$PROFILE/gtkrc, where $PROFILE is the profile used on
index 24710da..05e76fc 100644 (file)
@@ -19,7 +19,7 @@ The lxpanel API consists of:
         * data/ui/netstatus.ui
 
     - The plugin API:
-        * include/lxpanel/plugin.h (Must be the same as src/plugin.h)
+        * /usr/include/lxpanel/plugin.h (Must be the same as src/plugin.h)
 
     - The command line arguments to lxpanel and lxpanelctl.
 
index 3f34302..4a08f98 100644 (file)
@@ -1,5 +1,5 @@
 AC_PREREQ(2.53)
-AC_INIT(lxpanel, 0.6.99.0, http://lxde.org/)
+AC_INIT(lxpanel, 0.7.0, http://lxde.org/)
 AM_INIT_AUTOMAKE([-Wall foreign no-dist-gzip dist-xz])
 AC_CONFIG_HEADER([config.h])
 AC_CONFIG_MACRO_DIR([m4])
index d162e6b..a689066 100644 (file)
@@ -111,6 +111,25 @@ typedef struct {
     int superseded : 1;         /* True if plugin was superseded by another */
 } LXPanelPluginInit; /* constant data */
 
+/*
+ * This descriptor instance should be defined in each plugin code as main
+ * entry point for plugin creation. Primitive plugin example follows:
+ *
+ * #include <lxpanel/plugin.h>
+ *
+ * GtkWidget *test_new_instance(LXPanel *panel, config_setting_t *settings)
+ * {
+ *      return gtk_image_new_from_stock(GTK_STOCK_OK, panel_get_icon_size(panel));
+ * }
+ *
+ * FM_DEFINE_MODULE(lxpanel_gtk, test)
+ *
+ * LXPanelPluginInit fm_module_init_lxpanel_gtk = {
+ *      .name = "Test plugin",
+ *      .description = "An image with OK icon",
+ *      .new_instance = test_new_instance
+ * }
+ */
 extern LXPanelPluginInit fm_module_init_lxpanel_gtk;
 
 extern GQuark lxpanel_plugin_qdata; /* access to plugin private data */