Commit Graph
113 Commits
Author SHA1 Message Date
Sebastian Reichel 3c45cf29c7 Battery: Split operating system specific code
This removes all operating system specific code from the main
battery file into their own source files. CMake will add the
correct implementation automatically.
2015-08-07 05:08:44 +02:00
Sebastian Reichel 66acd8ed38 Add battery Mains/AC support for Linux
Add initial support for mains/ac adapters. This adds the
state only to the tooltip, but the code has been prepared
to update AC state together with normal battery updates,
so that it's possible to forward the state to the normal
panel area or trigger something on AC (dis)connection.
2015-08-07 04:35:33 +02:00
Sebastian Reichel d1c22762c4 battery: move percentage calculation to linux code
Only Linux provides detailed energy statistics. The BSDs directly
provide percentage values. This change makes it easier to split
out the BSD code and reduces code overhead on BSD systems.
2015-08-07 04:35:24 +02:00
Sebastian Reichel edad9bb7f5 Fix memory leak for battery tooltips
Instead of returning a const string, that is fed into strdup, tooltip
functions are now supposed to return allocated strings. This fixes a
memory leak in the battery tooltip.

This is used instead of simply freeing the memory in the battery
tooltip function, since it also avoids a uselesss strdup().
2015-08-07 02:09:53 +02:00
Sebastian Reichel 9df55d5ef7 Update copyright info in battery files 2015-08-06 22:01:02 +02:00
Sebastian Reichel ffd659208a Add battery tooltip support
This adds a new config option 'battery_tooltip' (enabled
by default), which can be used to enable a tooltip for
the battery widget providing details for all installed
batteries.
2015-08-06 22:01:02 +02:00
Sebastian Reichel ae375ae526 Split out Linux battery implementation and support multiple batteries
Some notebooks, like the ThinkPad X240 and X250 have two batteries
installed. So far only one of the batteries have been checked by
the tint2 widget making it more or less useless on those systems.

After this patch tint2 will aggregate the data from all batteries
instead.
2015-08-05 02:07:31 +02:00
berkley4 fd78e6d886 Allow clicking and mousewheeling on the battery panel
This commit is the same as vimishor's original [*] except that I have
added middle-click and up/down mousewheel actions. In order to fix a
ftbs I also added guards to panel.c, panel.h & tint.c

The following configuration settings have been created :-

battery_lclick_command
battery_mclick_command
battery_rclick_command
battery_uwheel_command
battery_dwheel_command

[*] https://github.com/vimishor/tint2/commit/c78732c46a058a39cc4264505f63c2317d3e5e5d
2015-07-13 04:57:16 +01:00
o9000 1ff028e99f Fix some battery issues when unplugging/replugging 2015-05-08 23:35:44 +02:00
o9000 7384fd8270 Battery: fixes for FreeBSD 2015-05-03 08:52:39 +02:00
o9000 b4f15db397 Use font shadows for all elements except tooltips
git-svn-id: http://tint2.googlecode.com/svn/trunk@766 121b4492-b84c-0410-8b4c-0d4edfb3f3cc
2015-04-18 13:22:07 +00:00
o9000 66cae4bb7c Fix dangling pointers causing erratic timer behaviour (affects taskbar with spacing); use calloc instead of malloc for safer initializations
git-svn-id: http://tint2.googlecode.com/svn/trunk@758 121b4492-b84c-0410-8b4c-0d4edfb3f3cc
2015-04-17 20:17:25 +00:00
o9000 af003d0e19 Memory management review: match char-malloc/strdup-free, gchar-g_str*/g_free; set pointers to null after free; initialize fonts/backgrounds correctly when missing from config
git-svn-id: http://tint2.googlecode.com/svn/trunk@748 121b4492-b84c-0410-8b4c-0d4edfb3f3cc
2015-04-11 09:51:10 +00:00
o9000 321ccc0794 Fix no handling of battery removal
git-svn-id: http://tint2.googlecode.com/svn/trunk@747 121b4492-b84c-0410-8b4c-0d4edfb3f3cc
2015-04-09 09:24:25 +00:00
o9000 cab31cb726 Fix battery error handling
git-svn-id: http://tint2.googlecode.com/svn/trunk@746 121b4492-b84c-0410-8b4c-0d4edfb3f3cc
2015-04-09 09:11:57 +00:00
o9000 1a41159142 Battery: cleanup code and make detection more resilient
git-svn-id: http://tint2.googlecode.com/svn/trunk@739 121b4492-b84c-0410-8b4c-0d4edfb3f3cc
2015-03-28 18:08:44 +00:00
o9000 1272ce4bb9 Fix issue 442: do not overflow when processing buggy battery input
git-svn-id: http://tint2.googlecode.com/svn/trunk@682 121b4492-b84c-0410-8b4c-0d4edfb3f3cc
2015-02-01 23:42:05 +00:00
andreas.fink85 b3b26e199c *fix* battery: set background_id to 0 if none has been specified
git-svn-id: http://tint2.googlecode.com/svn/trunk@623 121b4492-b84c-0410-8b4c-0d4edfb3f3cc
2011-02-05 08:32:11 +00:00
Andreas.Fink85 10f50cf29b *fix* issue 319
git-svn-id: http://tint2.googlecode.com/svn/trunk@621 121b4492-b84c-0410-8b4c-0d4edfb3f3cc
2011-01-08 13:56:26 +00:00
Andreas.Fink85 ad716c907a *fix* applied patch from issue 299
git-svn-id: http://tint2.googlecode.com/svn/trunk@576 121b4492-b84c-0410-8b4c-0d4edfb3f3cc
2010-10-21 07:29:52 +00:00
thilor77 98c3cbe874 cleanup code
git-svn-id: http://tint2.googlecode.com/svn/trunk@562 121b4492-b84c-0410-8b4c-0d4edfb3f3cc
2010-09-23 18:09:30 +00:00
thilor77 b4fb372f52 panel_items : fixed hide/unhide of baterry and systray
git-svn-id: http://tint2.googlecode.com/svn/trunk@560 121b4492-b84c-0410-8b4c-0d4edfb3f3cc
2010-09-22 19:33:10 +00:00
thilor77 f8e31774b6 panel_items : fixed battery. draw battery only if values changed.
git-svn-id: http://tint2.googlecode.com/svn/trunk@559 121b4492-b84c-0410-8b4c-0d4edfb3f3cc
2010-09-21 22:07:11 +00:00
thilor77 d2d2277bfe cleanup : Area posx/posy managed by layering engine (area.c)
git-svn-id: http://tint2.googlecode.com/svn/trunk@558 121b4492-b84c-0410-8b4c-0d4edfb3f3cc
2010-09-21 09:54:19 +00:00
thilor77 500981b052 panel_items : fixed some segfault.
git-svn-id: http://tint2.googlecode.com/svn/trunk@549 121b4492-b84c-0410-8b4c-0d4edfb3f3cc
2010-09-18 14:58:00 +00:00
thilor77 52eb843047 order of panel items : position of each object is update by layering engine (area)
git-svn-id: http://tint2.googlecode.com/svn/trunk@547 121b4492-b84c-0410-8b4c-0d4edfb3f3cc
2010-09-18 10:41:34 +00:00
thilor77 aabe6b11b9 add comment
git-svn-id: http://tint2.googlecode.com/svn/trunk@545 121b4492-b84c-0410-8b4c-0d4edfb3f3cc
2010-09-16 23:24:25 +00:00
thilor77 3eb1b736e3 fixed Issue 282
git-svn-id: http://tint2.googlecode.com/svn/trunk@526 121b4492-b84c-0410-8b4c-0d4edfb3f3cc
2010-08-08 14:06:15 +00:00
Andreas.Fink85 9899d8a7c0 *add* use ACPI api for freebsd (thx to yamagi.burmeister)
git-svn-id: http://tint2.googlecode.com/svn/trunk@515 121b4492-b84c-0410-8b4c-0d4edfb3f3cc
2010-06-26 16:19:18 +00:00
Andreas.Fink85 5521275bef *fix* execute an external command by calling fork/execl and do not ignore SIGCHLD (maybe fixes issue 263)
git-svn-id: http://tint2.googlecode.com/svn/trunk@480 121b4492-b84c-0410-8b4c-0d4edfb3f3cc
2010-06-11 18:47:26 +00:00
thilor77 642abfc7e0 etend OpenBSD patch to FreeBSD and NetBSD
git-svn-id: http://tint2.googlecode.com/svn/trunk@462 121b4492-b84c-0410-8b4c-0d4edfb3f3cc
2010-05-18 16:03:54 +00:00
thilor77 c0a0f647d5 battery patch for Openbsd by vext01
git-svn-id: http://tint2.googlecode.com/svn/trunk@459 121b4492-b84c-0410-8b4c-0d4edfb3f3cc
2010-05-15 23:35:57 +00:00
thilor77 4d5fe440c8 fixed : battery disabled when needed
git-svn-id: http://tint2.googlecode.com/svn/trunk@438 121b4492-b84c-0410-8b4c-0d4edfb3f3cc
2010-04-20 17:22:05 +00:00
thilor77 64530181d9 qutodetect composite manager and automaticaly switch real/fake transparency
git-svn-id: http://tint2.googlecode.com/svn/trunk@425 121b4492-b84c-0410-8b4c-0d4edfb3f3cc
2010-04-18 14:49:50 +00:00
thilor77 7ee42e8ca1 SIGUSR1 does now a full restat of tint2
git-svn-id: http://tint2.googlecode.com/svn/trunk@424 121b4492-b84c-0410-8b4c-0d4edfb3f3cc
2010-04-18 14:28:45 +00:00
thilor77 c298a39d00 moved initial values in function default_xxx
git-svn-id: http://tint2.googlecode.com/svn/trunk@423 121b4492-b84c-0410-8b4c-0d4edfb3f3cc
2010-04-18 12:07:36 +00:00
thilor77 3adb7e2080 cleanup default value on SIGUSR1
git-svn-id: http://tint2.googlecode.com/svn/trunk@421 121b4492-b84c-0410-8b4c-0d4edfb3f3cc
2010-04-16 18:50:03 +00:00
Andreas.Fink85 bf1dc33ca7 *add* drag'n'drop task reordering
*fix* autohide and tooltip after SIGUSR1
*fix* send low_battery_cmd only once
*fix* update clock if time difference > 60 sec (after hibernation or supsension)
*fix* changed transient window behaviour


git-svn-id: http://tint2.googlecode.com/svn/trunk@393 121b4492-b84c-0410-8b4c-0d4edfb3f3cc
2010-02-08 22:44:56 +00:00
thilor77 a5a39b0bb2 lower battery drawing : update to 10s and battery_hide config
git-svn-id: http://tint2.googlecode.com/svn/trunk@364 121b4492-b84c-0410-8b4c-0d4edfb3f3cc
2010-01-19 19:29:28 +00:00
Andreas.Fink85 06518a0f4b *fix* 2 memleaks
*fix* no more warnings


git-svn-id: http://tint2.googlecode.com/svn/trunk@335 121b4492-b84c-0410-8b4c-0d4edfb3f3cc
2010-01-10 22:16:27 +00:00
Andreas.Fink85 739af13714 *add* more task states (normal, active, iconified, urgent), with each an own background, font and asb
*fix* two memleaks
*fix* some code beautification



git-svn-id: http://tint2.googlecode.com/svn/trunk@327 121b4492-b84c-0410-8b4c-0d4edfb3f3cc
2010-01-09 00:11:01 +00:00
Andreas.Fink85 adb784a859 *add* autohide
*fix* issue 182 by using select instead of pselect


git-svn-id: http://tint2.googlecode.com/svn/trunk@321 121b4492-b84c-0410-8b4c-0d4edfb3f3cc
2010-01-05 20:38:49 +00:00
Andreas.Fink85 3767eb58f1 *fix* use another timer implementation, coz *BSD does not support timerfd :(
git-svn-id: http://tint2.googlecode.com/svn/trunk@296 121b4492-b84c-0410-8b4c-0d4edfb3f3cc
2009-12-27 20:33:02 +00:00
Andreas.Fink85 c46e1341aa *fix* tooltip fixed
*fix* send battery low command if below the value, not exactly the value


git-svn-id: http://tint2.googlecode.com/svn/trunk@289 121b4492-b84c-0410-8b4c-0d4edfb3f3cc
2009-12-17 18:25:51 +00:00
Andreas.Fink85 d1e7d189bf *fix* use XFlush to really make use of the tooltip timeouts and do not rely on some timer running in the background
*fix* moved panel_refresh in the mainloop to the top for panels without a clock for updating first and then going to the pselect statement
*changed* battery updates every 5 secs (I do not know if this is a good value...)
*fix* blinking urgent windows has a panel_refresh now



git-svn-id: http://tint2.googlecode.com/svn/trunk@270 121b4492-b84c-0410-8b4c-0d4edfb3f3cc
2009-11-16 10:06:45 +00:00
Andreas.Fink85 806451955b *add* changed everything to kernel timer for easier integration with new timer
*todo* adapt tooltip also to the timer syntax
*fix* memory leak



git-svn-id: http://tint2.googlecode.com/svn/trunk@266 121b4492-b84c-0410-8b4c-0d4edfb3f3cc
2009-11-15 16:55:50 +00:00
Andreas.Fink85 3f9adec3e3 *fix* allow minimizing omnipresent windows also on desktop 2-n
*fix* hopefully fixed issue 145
*fix* removed two unused variables



git-svn-id: http://tint2.googlecode.com/svn/trunk@262 121b4492-b84c-0410-8b4c-0d4edfb3f3cc
2009-11-11 17:12:24 +00:00
lorthiois@bbsoft.fr c763cf7172 fixed config reload SIGUSR1. added systray = 1 parameter to enable systray
git-svn-id: http://tint2.googlecode.com/svn/trunk@242 121b4492-b84c-0410-8b4c-0d4edfb3f3cc
2009-10-30 17:18:44 +00:00
lorthiois@bbsoft.fr 51b9ce356a fixed battery drawing
git-svn-id: http://tint2.googlecode.com/svn/trunk@241 121b4492-b84c-0410-8b4c-0d4edfb3f3cc
2009-10-28 23:01:32 +00:00
lorthiois@bbsoft.fr d0799e91dd patch for FULL battery by peter.ebden
git-svn-id: http://tint2.googlecode.com/svn/trunk@240 121b4492-b84c-0410-8b4c-0d4edfb3f3cc
2009-10-28 10:58:12 +00:00