Commit Graph
130 Commits
Author SHA1 Message Date
o9000 b887d50409 Merge branch 'sre/support-missing-power-usage-information' 2015-09-12 12:17:25 +02:00
o9000 66b38cc7d6 Initialize ac_connected_cmd and ac_disconnected_cmd 2015-09-12 11:18:21 +02:00
Sebastian Reichel 89f26595b6 support missing power usage data
Some notebooks do not provide power usage data. This code tries
to estimate the current power usage by measuring the battery level
difference in a specific time interval.
2015-09-12 04:34:32 +02:00
Sebastian Reichel 3d39da9330 correctly free battery linked list 2015-09-12 04:32:45 +02:00
Sebastian Reichel eb86d5ac00 free ac_connected_cmd and ac_disconnected_cmd on cleanup 2015-09-12 04:31:12 +02:00
o9000 00a1803348 if( -> if ( 2015-08-08 08:51:44 +02:00
Sebastian Reichel 9e85b6dcfe Battery: Avoid executing ac_connected cmd on startup
Previously ac_connected_cmd was executed during tint2 startup (if
AC is connected during startup).
2015-08-08 06:39:45 +02:00
Sebastian Reichel 0d0b1249c7 Battery: Handle Linux kernel events
The Kernel sends notifications for AC (un)plug and some
other important power supply events, so that we can
instantly update the widget. Apart from that it sends
notifications for any added or removed power supplies,
so that the battery support can be reinitialized (useful
on systems with removable batteries).
2015-08-08 06:31:01 +02:00
o9000 00b88c2725 battery: Updates for OpenBSD 2015-08-07 08:54:15 +02:00
o9000 10b006ffb2 battery: Updates for OpenBSD 2015-08-07 08:36:02 +02:00
o9000 28272621b0 battery: Capitalize AC state in tooltips 2015-08-07 08:22:54 +02:00
o9000 61d786cf4f battery: Tooltips for FreeBSD (fix format string) 2015-08-07 08:20:34 +02:00
o9000 9d2e62f724 battery: Tooltips for FreeBSD (fix typo) 2015-08-07 08:19:48 +02:00
o9000 6e77b59ef8 battery: Tooltips for FreeBSD 2015-08-07 08:18:26 +02:00
o9000 3a733d7353 battery: Update AC status on FreeBSD 2015-08-07 08:08:53 +02:00
o9000 8df9ed5977 Update type for ac_connected variables 2015-08-07 08:07:51 +02:00
Sebastian Reichel db490247e0 Battery: support for ac connection event cmd
This add two new config options "ac_connected_cmd" and
"ac_disconnected_cmd". These commands are executed when
AC (mains supply) is connected or disconnected.
2015-08-07 05:22:09 +02:00
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