Category Archives: LXPanel

LXPanel 0.7.2 released.

Another month has gone and next bugs fixing release of this major component happened. Few annoying bugs were fixed and we really hope it is better than before. Very possible it is last release in 0.7 line since there are a lot of improvements coming, and there is no room for any improvements in 0.7, you should wait 0.8.0 for new features.
New release tarball download link:
lxpanel-0.7.2.tar.xz – SHA1: 956851d4d465b2443c1253ceb0399386fd15bb82

Changes since previous release 0.7.1 (see git log for details):

  • Fixed unhiding panel if it becomes empty and height_when_hidden is 0.
  • Fixed invalid X protocol word size: despite of stating it 32 bit, the X server uses unsigned long which is 64 bit on 64-bit architectures.
  • Adapted to use libmenu-cache >= 1.0.0 – it could show empty folders in the desktop menu.
  • Fixed crash in taskbar after visible task changed name then gone.
  • Ensured panel background update after some plugin was resized.
  • FileManager statement from old config should never be scanned again.
  • Fixed positioning of new created panel, the edge was not saved.
  • Eliminated hardcoded “xterm” in ‘volumealsa’ plugin – LibFM has enough means to call terminal when needed.
  • Fixed crash if ‘volumealsa’ plugin initialization failed.

LXPanel 0.7.1 released.

After just a month after 0.7.0 version was released, the time came to release an update, simply because bugs were found. So it happens again. No new features this time, and only last number was changed. Next update is in slow preparation, don’t forget to report bug if you find one!
New release tarball download link:
lxpanel-0.7.1.tar.xz – SHA1: 2e5ee9c17c32d2f1a7c0d51e84816613ede09a1f

Changes since previous release (see git log for details):

  • Fixed search for the gtkrc file.
  • Fixed search path for configuration – it should be not compilation time path but paths using $XDG_CONFIG_DIRS.
  • Fixed incorrect flag for ‘launchbar’ plugin which marks him expandable.
  • Fixed dragging of task buttons.
  • Corrected using $XDG_MENU_PREFIX to work the same way as libfm does.
  • Fixed using font description, font in gtkrc file was ignored.
  • Improved search for hw sensors in /sys/class/hwmon/ hierarchy.
  • Improved check for critical temperatures in ‘termal’ plugin, now each individual hardware setting (if available) is also taken into
    consideration.
  • Fixed parsing alias name in ‘weather’ plugin settings.
  • Got rid of all individual plugins/*/Makefile – those rules more easily can be contained in the plugins/Makefile.am. Adding a simple plugin basically would mean to add two or three lines into that file instead of writing whole Makefile.am.
  • Fixed invalid system config path search (“lxpanel” part was missing).
  • Fixed incorrect requirements in the lxpanel.pc file.
  • Fixed memory leak in the ‘volumealsa’ plugin.
  • Now ‘volumealsa’ checks for ‘MixerCommand’ setting in the configuration before guessing it.
  • Fixed color saving in the configuration.
  • Fixed incomplete resources deallocation in ‘volumealsa’ plugin.
  • Fixed make uninstall (it left plugins installed).
  • Fixed monitor number set from GUI.
  • Fixed hang on netstatus icon in auto-hidden panel.
  • Fixed icon grid compilation with GTK+ < 2.20.
  • Fixed compilation without menu-cache.
  • Now man pages are included in the GIT and tarball, not just xml files.
  • Fixed incorrect printf arguments in ‘netstatus’ plugin.

LXPanel 0.7.0 released

A huge update to the GTK+ panel was released. See the list below for some changes. Full log of changes can be fund in git.

lxpanel-0.7.0.tar.xz, sha1sum: deccc11a05d4c23f10b0cefddf4fca4eaea7206b

  •  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//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.

LXPanel 0.5.10 released!

Some weeks ago we gave you 0.5.9, this time some changes has been made to the plugins distributed with LXPanel and thus we put a new version for your feets. Given the translation status in this release a new version is very probably coming out soon as most languages did not get their strings to 100% done.

lxpanel-0.5.10.tar.gz, sha1: 867c1beec136d932e4ef15679691ac4bf50d3b29

Changelog
4d1a2cf – gtk-run: reload menu cache
6bd86e3 – monitors: fix potentially truncated message in translated tooltip
b957082 – fix enabling dynamic width and autohide results in 1 pixel panel
ad987a0 – volumealsa: fix unloading and add restart logic
61910ad – AUTHORS: credit SuxPanel
d40b660 – fix a few compilation warnings
7a08372 – monitors: gettext’ize tooltips
7e6a8c4 – monitors: clean tooltip, and also print memory in MB
c247a33 – monitors: count ‘mem_buffers’ towards ‘mem_free’
e0eb2f8 – volumealsa: fix detection of ALSA error
58e8805 – plugins: fix “Invalid read of size 8″
c95393d – configurator: fix file chooser action
206ad65 – monitors: make redraw_pixmap() readable
13d82f2 – plugins: change monitors, thermal, and batt timeouts to my liking :)
e25a253 – plugins: Use g_timeout_add_seconds() when possible
ab602c7 – menu,taskbar: minor cleanup
1093a9d – thermal: Use lxpanel error and log facilities
bdecea0 – thermal: Show all sensors in tooltip
b90ba1d – thermal: Use highest temperature when using automatic sensor location
6877b46 – thermal: prepare for multiple sensors
b7c830a – monitors: Open application when clicked, lxtask by default
7349314 – Update debian directory with current Debian one, without the patches which should be discussed

LXPanel 0.5.9 released!

A month ago we released the 0.5.9 version of LXPanel fixing a bunch of bugs since the last version and as always bringing some translation updates and additions.

lxpanel-0.5.9.tar.gz, sha1: c607bf93b7941d21f9b29e6d6429b48fe2f7e388

Changelog
815f98f – thermal: use automatic levels by default
93bfb7e – batt: Read absolute current_now, power_now
05599a4 – Corrected grammatical error in volumealsa.
00a3ef3 – Added data/two_panels/panels/{bottom,top} to .gitignore.
003c094 – Added ap_info_node definition to APLIST typedef
fcb3555 – Cleaned up compilation warnings. Added wireless-tools-devel check (iwlib.h) to configure.ac
e1d11c0 – monitors: Fix deallocated memory access when changing colors
7748d13 – batt: Fix computation of percentage when battery uses charge_now
2122fc3 – netstat: fix possible creation of thread zombies
9e5bf3c – netstat: fix some memory leaks in lxnm_client.c
4276792 – netstat: fix uninitialized value and potential segfault
a048055 – netstat: fix many compile warnings
9a82da9 – Use *-panel icons when available in the theme for volumealsa plugin.
ea70b4b – Fix LxPanel Launch Bar Dialog – ID: 3487238 – Thanks Axel FILMORE
59ba11f – Add also .ui files in POTFILES
169abdf – Really remove glade file
6537f28 – Remove gnome-netstatus.glade, it’s not used or installed
65efa14 – Complete previous commit for make distcheck fixes
54fed98 – Some fixes for make distcheck
0c1fb08 – taskbar: Fix infinite loop
37f5734 – Fix launchpad bug #889414 – Run dialog opens up in the background.
71f5bda – Add new lang in LINGUAS
e41dd2d – Merge missing pieces from original indicator applet. Commenting appmenu support since it crashs on start.
359de8b – monitors: fix compile warnings
c763b20 – thermal: Don’t print useless info on startup, fix compile warning
cffb026 – monitors: cached memory should be counted as ‘free’
ce6d9cc – monitors: Fix segfault in *_tooltip_update() functions
9dda825 – Add indicator applet, turn off by default
552475e – Add a way to launch external configuration program when using volume applet
0aa9911 – Remove default configuration patch in debian/, not needed in an upstream git
b4118b4 – Add more items to .gitignore
9acb4d2 – Remove 1 debian patch
176a000 – thermal: use applyConfig() in the constructor
15992b6 – thermal: be more careful in case th->sensor is NULL
83af5ca – thermal: fix using custom or automatic warning levels, and set the get_functions
f990fee – thermal: Automatic sensor location also works for sysfs interface
80d2a31 – batt: Fix segmentation fault on resume from suspend-to-ram
ab2b8cb – Fix type unsafety while opening plugin configuration dialogs
ef3cf14 – wnckpager: fix plugin_class version
2ae466a – Make wnckpager a dynamic plugin.
c4ff9fd – Add pager2 plugins, compatible with compiz (apply patch from ID 2802191)
9770479 – Add monitors plugin (apply patch from ID 3026608)
3aa5cb1 – Prevent clipping button for taskbar (apply patch v2 from ID 2968307)
a374356 – Add plugin by double-click (apply patch from ID 3029596)
266c072 – plugins/thermal: support both /proc and sysfs interfaces
1869ef9 – Added font size setting to Appearance preferences.
907deaa – Center text in dClock (Apply patch from ID 3102621)
4896be7 – Apply patch from ID 3103192
b37f46a – batt: Fix low battery check
eef7d6f – batt.c: Consistently indent ‘update_display()’
c34ca91 – batt.c: Don’t modify battery struct outside of the batt_sys
7f9ba86 – batt.c: Check NULL-pointer-derefernce before using it
ee3eb0c – batt_sys.c: Round percentage properly
bb13068 – batt_sys.c: Always set all values when reading from sysfs
ce09d36 – battery plugin: Name variables the same as the sysfs files
553ac7a – batt.c: Don’t call ‘battery_update()’ redundantly on startup
edd0944 – batt_sys.c: Fix ‘battery_print()’
5a333b8 – batt_sys.c: Also try reading “power_now” from sysfs
aaedb01 – batt_sys.c: Remove ‘acpi_sys_get_battery_from_dir()’
f41fec0 – batt_sys.c: Replace ‘get_unit_value()’ with ‘atoi()’
46781b9 – Revert “Apply patch from Debian to fix battery plugin display”
239fe47 – update TODO
0a03867 – .gitignore for data/ui/*.ui
56807b4 – add TODO list
dcb50c6 – Fix sizeof on 64 bits, thanks Richard Hirst for the fix
d3ee730 – Fix position of the menu, and add the same fix to pager.
afc7bfa – Add libmenu-cache to the packages modules in configure.ac, needed by launchbar.c
bf2b243 – enable configure to use gtk3

LXPanel 0.5.1 is released.

Soon after Marty Jack released LXPanel 0.5.0, I made some minor enhancements and here comes LXPanel 0.5.1.
Changes:

  1. The “Run” dialog no longer hangs. Now it’s showed immediately when you open it. Available commands for auto-completion is loaded in background with multi-threading.
  2. Restore the old behavior of taskbar in earlier versions: Taskbar button for the currently focused window is depressed if “Flat buttons” option is turned off.
  3. Some internal changes to reduce program size.
  4. Hide signal strength display in the icon of the netstatus applet if the monitored iface is not wireless.

Please give it a try!  Have fun!

LXNM current status and the plan in the future

Next generation of LXNM (Lightweight Network Manager) is still under development right now, You guys can see the prototype which was implemented in SVN already. In the future, LXNM will provide some programs includes lxnm daemon, utility which is a command line program to make control of all kind of networking devices be unified into only one utility, a LXPanel plugin and a standalone applet for running without LXPanel.

So the project will has three parts to be maintained:
1. lxnm (LXNM Daemon and command line utility – lxnetctl)
2. lxpanel-netstat (LXPanel plugin)
3. lxnm-applet (standalone applet)

For the current version in SVN, lxnm can be working now, we can using lxnetctl utility to connect to lxnm daemon to control our networking devices and get informations include ethernet and wireless interface.

BTW, I am now working on lxnm-applet to implement a graphical LXNM client to display and control network devices.

Besides, in the future, LXNM will provide a library to make easy to write a new LXNM client(eg, lxnm-applet) for developer.

xkb: New Applet for LXPanel

PCMan has added a new branch named lxpanel-xkb in the LXDE Repository.

svn co https://lxde.svn.sourceforge.net/svnroot/lxde/branches/lxpanel-xkb

It’s a new applet for lxpanel which will be a keyboard layout switcher. The original one in lxpanel is broken, and will be removed. The new one will be based on libxlavier, a good library handling xkb. However, we’re from Taiwan, and we don’t know how keyboard layouts work. So help is needed. If you’re a developer living in Europe or some other places requiring switching between different keyboard layouts, please help. (PCMan)

If you are interested in the development of LXDE, please also join our developers mailing list.

Links

* http://wiki.lxde.org/en/LXPanel

* https://lists.sourceforge.net/lists/listinfo/lxde-list