Commit graph

971 commits

Author SHA1 Message Date
o9000
8b6aad3a41 Refactored svg image loading 2015-10-18 16:53:27 +02:00
o9000
985c557dcd Refactored text size computation 2015-10-18 16:51:08 +02:00
o9000
6937aa8b9d Updated changelog 2015-09-26 20:26:24 +00:00
o9000
2299132cd3 tint2conf: Add background labels 2015-09-23 23:56:38 +02:00
o9000
005e5a49c0 Battery: minor code style change 2015-09-12 12:23:50 +02:00
o9000
85b3b8a749 Battery: fix comment in estimate_power_usage 2015-09-12 12:22:32 +02:00
o9000
42d1ba2b20 Battery: prevent division by zero 2015-09-12 12:21:31 +02:00
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
o9000
dca5c2586c Merge branch 'sre/tint2-fix-battery-memleak' 2015-09-12 11:14:11 +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
5b01670a22 Fix lost font setting for desktop name 2015-09-12 03:08:25 +02:00
o9000
1f7f1971ec Updated tint2.desktop (fixes issue #523) 2015-08-23 16:57:14 +00:00
o9000
7109bac4a0 Updated for 0.12.2 2015-08-11 09:31:41 +02:00
o9000
00a1803348 if( -> if ( 2015-08-08 08:51:44 +02:00
o9000
03dd8b8483 uevent: Use strchr here 2015-08-08 08:47:32 +02:00
o9000
553adbb946 Updated IDE files 2015-08-08 08:47:07 +02:00
o9000
2fb556031b Merge branch 'hotplug' into 'master'
Hotplug

Hi,

So I went on and added the hotplug stuff. It's currently used for two things:

 1. reconfigure battery if a power_supply add/remove event has been received (e.g. new battery)
 2. update battery if a power_supply change event has been received (e.g. sent for AC connect/disconnect)

The second one is useful to make "ac_connect_cmd" and "ac_disconnect_cmd"
react instantly. Otherwise they are only executed when the battery update
routine is scheduled again. It does not introduce any new library dependencies
and the kernel interface is considered as ABI, so there won't be any frequent changes.

I also added a little fix on top, that prevents ac_connect_cmd execution
during tint2 startup (with AC connected).

-- Sebastian

See merge request !10
2015-08-08 06:42:19 +00: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
Sebastian Reichel
46a6d2c2ad Add Linux kernel event handling code
This is a simple handler for uevents send by the Linux
kernel.
2015-08-08 06:29:54 +02:00
o9000
1051be9815 Merge branch 'do-not-link-against-disabled-optional-features' into 'master'
Avoid linking against disabled features

If rsvg or startup-notification features are disabled, the
binary should not be linked against the associated libraries.

See merge request !9
2015-08-07 19:25:21 +00:00
Sebastian Reichel
f241c4546b Avoid linking against disabled features
If rsvg or startup-notification features are disabled, the
binary should not be linked against the associated libraries.
2015-08-07 20:59:06 +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
133bbc911e Update file list for IDE 2015-08-07 08:23:42 +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
o9000
cf748d6d41 Revert "Remove static clock tooltip buffer" (g_date_time_format uses format strings slightly different from strftime)
This reverts commit 441c420773.
2015-08-07 07:54:13 +02:00
o9000
8528a6a4a4 Merge branch 'misc-battery-updates' into 'master'
Misc battery updates

Hi,

So here are a couple of more patches. I did only minimal testing for the battery BSD stuff
(basically compilation under Linux and check, that only sensible errors appear). The second
patch (remove static clock tooltip buffer) is independent of the remaining changes, but
depends on the first patch.

I guess the battery code for Linux could be further improved by using libudev
to handle kernel events for added batteries and AC plug changes.

-- Sebastian

See merge request !8
2015-08-07 05:52:22 +00:00
Sebastian Reichel
169278c9d8 tint2conf: add support for ac_connected_cmd and ac_disconnected_cmd 2015-08-07 05:33:33 +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
441c420773 Remove static clock tooltip buffer
Use GLib's GDateTime to generate the tooltip, so that a
correctly sized string is automatically created.
2015-08-07 02:32:18 +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
o9000
f954be3e87 Updated changelog 2015-08-06 23:14:57 +02:00
o9000
cbd52d1a48 Update IDE file list 2015-08-06 22:39:44 +02:00
o9000
aa47642161 Merge branch 'multi-battery-support' into 'master'
Multi battery support

Hi ,

I have a couple of patches for the battery widget
making it actually useful on my ThinkPad X250.

-- Sebastian

See merge request !6
2015-08-06 20:38:29 +00:00
Sebastian Reichel
57c38c462c Add support for battery tooltip option in tint2conf 2015-08-06 22:01:02 +02:00
Sebastian Reichel
995ae3c72b fix battery option parsing
Fix copy&paste mistake, battery should be enabled
for obsolete "battery" option instead of obsolete
"systray" option.
2015-08-06 22:01:02 +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