History log of /haiku/src/apps/powerstatus/PowerStatusView.cpp
Revision Date Author Comments
# 9c274ccd 28-Feb-2024 Pascal Abresch <nep-git@packageloss.eu>

Document new rgb_color apis, apply their usage.

Change-Id: I48f1bedd3abfb3b445c1c7090ce43504bcff4537
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7485
Reviewed-by: waddlesplash <waddlesplash@gmail.com>


# 96bad768 08-Jan-2024 Jérôme Duval <jerome.duval@gmail.com>

PowerStatus: add state "Not charging"

some laptops decide to not charge a fast full battery to not consume a cycle.
In this discharging state, the current rate is zero, thus no time left can be computed.
We add a state "Not charging" to clearly differentiate and avoid user confusion.
PowerStatus was triggering low battery notifications, this is also fixed.

Change-Id: I4745c78eb0863ab01fe34cb065707d068cff0f0e
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7300
Reviewed-by: Fredrik Holmqvist <fredrik.holmqvist@gmail.com>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>


# 5491ece2 26-Aug-2023 Humdinger <humdinger@mailbox.org>

PowerStatus: Rename 'battery low' sound, add 'critical' sound

* Renaming "Low battery" to "Battery low" so it's right next to
"Battery charged" in the Sounds prefs event list.

* Adding "Battery critical" sound. I think it makes sense to have
a different - more urgent - sound when there's only 15% left,
compared to "Low" (30%).

Change-Id: I46b5975e5797a9c3a84d4619e697be162e79b1cf
Reviewed-on: https://review.haiku-os.org/c/haiku/+/6900
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>


# 0f293bd7 30-May-2023 Theodore Wang <theodorewang12@gmail.com>

PowerStatus: Implemented sound cues for low battery and charging

* Added two beep events ("Low battery" and "Battery charged") to Sounds
* "Battery charged" is activated when the battery is fully charged to 100 percent
* "Low battery" is activated when the battery is less than 15 percent
or has less than 30 minutes of usage time left, whichever comes first

Change-Id: If95f812be7a0aa15d668a42fdcfaccd2995d2b4f
Reviewed-on: https://review.haiku-os.org/c/haiku/+/6481
Reviewed-by: Niels Sascha Reedijk <niels.reedijk@gmail.com>


# f6395def 15-Mar-2023 Emir SARI <bitigchi@me.com>

PowerStatus: Use BNumberFormat for percentage value

This provides automatic percentage formatting according to the locale
setting.

Change-Id: I022331866acc2e20d819625c6d070807f476c745
Reviewed-on: https://review.haiku-os.org/c/haiku/+/6209
Tested-by: Automation <automation@haiku-os.org>
Reviewed-by: Máximo Castañeda <antiswen@yahoo.es>
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>


# 10074df1 08-Dec-2020 Pawan Wadhwani <pawanw17@gmail.com>

PowerStatus: eliminate redundant power notification

patched duplicate low power notifications by adding a flag to
remove redundant notification calls by adding a parameter in
the update function.

Fixes #12277

Change-Id: Iec3859156e745ce0e1c08250151e17b3317847d5
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3493
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>


# ab05d368 17-Mar-2019 sushilhub <sushil.bit.cse@gmail.com>

src/apps: style fixes

* add break statement to the last clause of switch/cases
* fix some other minor issues

Change-Id: I9ac3dac0cda0b14043b975938caea88b79bb749f
Reviewed-on: https://review.haiku-os.org/c/haiku/+/1299
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>


# 47102c07 24-Feb-2020 X512 <danger_mail@list.ru>

Interface Kit: introduce B_TRANSPARENT_BACKGROUND flag

BeOS didn't support transparent views. As documented in the Be Book,
SetViewColor(B_TRANSPARENT_COLOR) only effect is to not fill the
invalidated areas with the view color before calling Draw() (it avoids
flickering, especially when combined with B_FULL_UPDATE_ON_RESIZE).

A previous change made B_TRANSPARENT_COLOR actually make the view
transparent (that is, additionally to the above, the underlying view is
drawn before the transparent children), but it creates compatibility
issues.

In order to keep the API compatible with BeOS, the new behavior is now
enabled explicitly using the B_TRANSPARENT_VIEW flag. This also opens
for future developments like allowing a view color with an alpha
channel (not supported yet).

Adjust programs that require transparent views.

Fixes #15744, #15745.
Helps with #15645.

Change-Id: I529574ea23db0a23579521b263bc8d572775e35a
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2275
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>


# 98a8bc85 01-Mar-2020 John Scipione <jscipione@gmail.com>

PowerStatus: Draw battery icon even if there isn't enough space

This allows for drawing the battery icon in Deskbar at 8pt font.

Change-Id: Ibd8f151fe5a16da5f812083a3d5457991b3c49a8
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2300
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>


# f9b0390d 24-Feb-2020 X512 <danger_mail@list.ru>

PowerStatus: use transparent view

Change-Id: I04d988a54d0199e8c7dac37f5b78c6f1e2e0cadc
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2278
Reviewed-by: waddlesplash <waddlesplash@gmail.com>


# 7586efaf 19-Nov-2019 John Scipione <jscipione@gmail.com>

PowerStatus: Draw battery without BControlLook

Drawing the battery using BControlLook:DrawButtonBackground does not
work as expected with alternative ControlLook installed. Instead
draw the bevel and gradient without using BControlLook.

Renamed empty to unfilled. Replace single base color with unfilledColor
and fillColor.

unfilledColor appears to have change but it is the same #4c4c4c
(75, 75, 75) color just untinted. Specify the color using hex values.

Put all battery drawing inside the fHasBattery conditional block.

Copy rect to fill and use it to draw the filled area.

Use make_color() to make the unfilled color.

Change-Id: I615c4dc1b9e0206b4ac0259d3183fe691584209b
Reviewed-on: https://review.haiku-os.org/c/haiku/+/1967
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>


# efafab64 02-Nov-2018 Axel Dörfler <axeld@pinc-software.de>

Deskbar: Resizable tray

* Adds max width and height arguments to
instantiate_deskbar_(item|entry).
* Old applications just stay with a 16x16 scaled icon, though.
* All used apps within the repository are converted to the new call
besides the input_server input method icon (that will need further
API changes in the input_server).

Change-Id: I29cc439396917be2c24135888459d31364997dff
Reviewed-on: https://review.haiku-os.org/656
Reviewed-by: waddlesplash <waddlesplash@gmail.com>


# 54606559 24-Nov-2017 Kacper Kasper <kacperkasper@gmail.com>

PowerStatus: make tab size dependent on font size.


# d18b272d 21-Nov-2017 Janus <janus2@ymail.com>

[PowerStatus] The menu item quit doesn't close the Tracker

* Fixes #13790


# b06e48bb 21-Nov-2017 Janus <janus2@ymail.com>

[PowerStatus] Avoid crashes on exit when Info window is opened

* Fixes #10885


# 830758ad 20-Nov-2017 Kacper Kasper <kacperkasper@gmail.com>

PowerStatus: convert to BTabView.

* Move text inside battery if possible.
* Fix location of the spark.
* Fixes #5422 and #7330.


# 24c9b9df 18-Nov-2017 Janus <janus2@ymail.com>

[PowerStatus] Fixes some drawing glitches

* Fixes the position of the lightning over the battery
* Fixes the selection in the info Window (Why is the selected color hardcoded?)
* Fixes #13784


# 23871bd2 18-Nov-2017 Janus <janus2@ymail.com>

[PowerStatus] Fix different problems with the replicant

* Fixes #11329


# c62a3891 21-Oct-2017 John Scipione <jscipione@gmail.com>

PowerStatus: Make battery 16x16 in Deskbar

Frame was a bit wider than it needed to be to fit, battery is same
size as before.

Moved the lightning right 1px and down 1px to fit better

expands to show battery percentage more compactly as well.


# c0dc265c 19-Oct-2017 John Scipione <jscipione@gmail.com>

Deskbar & PowerStatus: Realign Replicants

Added a new message constant to Deskbar kRealignReplicants which
is called to realign replicant icons. Add routing so that if you knock on
Deskbar's front door (Application) it will get routed to the right view, in
this case the repliant tray that knows how to realign replicants.

Send a message with this newly created constant in PowerStatus when
the width changes because you turned the label on or off. This makes
it so that when you show or hide the battery percentage it will not overrun
the clock.

Realign Replicants is a common case.

Fixes the rest of #8641


# 9f6dbb5f 05-Jun-2017 Augustin Cavalier <waddlesplash@gmail.com>

Fix the build following the 64-bit time_t switch.


# 02036219 27-Aug-2016 Kacper Kasper <kacperkasper@gmail.com>

PowerStatus: Show extended info window on middle button click.

* Fixes #7473.
* Minor style cleanup.

Signed-off-by: Adrien Destugues <pulkomandy@pulkomandy.tk>


# 405208a7 09-Jan-2016 looncraz <looncraz@looncraz.net>

PowerStatus background tint

Recent changes require us to adopt the tint value for PowerStatus's
low color as well as the ViewUIColor.

This repairs the issue where the replicant's background color was lighter
than the Deskbar's tray color.

Fixes #12566.

Signed-off-by: Jessica Hamilton <jessica.l.hamilton@gmail.com>


# fa19dd44 10-Dec-2015 looncraz <looncraz@looncraz.net>

apps: Convert to using Set*UIColor.

Signed-off-by: Augustin Cavalier <waddlesplash@gmail.com>
Patches 0045-0075, 0077-0087 from looncraz, unmodified.


# 1deb22eb 23-Aug-2015 Adrien Destugues <pulkomandy@pulkomandy.tk>

PowerStatus: style fixes.


# 4b26da64 22-Aug-2015 Adrien Destugues <pulkomandy@pulkomandy.tk>

PowerStatus: show when the battery is charging.


# 070e77cc 08-Jan-2015 Axel Dörfler <axeld@pinc-software.de>

PowerStatus: added note battery color.

* When the capacity drops below 30%, it now turns yellow.


# e889ce25 08-Jan-2015 Axel Dörfler <axeld@pinc-software.de>

PowerStatus: fixed how the info is retrieved.

* The state was usually 0 once there was more than one battery
slot.
* We now ignore missing batteries completely, instead of taking
eventually bogus data into account.
* Fixed how to determine fOnline, and fHasBattery, and when to ignore
probes.
* Made it more strict when to show the notification, ie. it's now only
shown when actually discharging.
* This fixes all spurious notifications for me.


# b19e9d5b 08-Jan-2015 Axel Dörfler <axeld@pinc-software.de>

PowerStatus: improved API, minor fixes.

* ioctl() does not return a status_t; fixed its usage.
* Do not overwrite the cached battery info with bogus data (this is
quite strict, though).
* Improved DriverInterface API with a more "natural" argument order.
* Simplified some code.


# d854d711 29-Dec-2014 Axel Dörfler <axeld@pinc-software.de>

PowerStatus: hide obviously invalid probes.

* When we get bogus values back as the current battery state, there
is little reason to present this to the user when we can detect it.
* While it would be nice to solve the underlying bug, too (if there is
one, this should make the new low battery notification feature a lot
nicer in practice.


# f1bfd2df 29-Dec-2014 Axel Dörfler <axeld@pinc-software.de>

PowerStatus: minor cleanup.

* Moved low battery notification code into its own method.
* Slightly changed low battery notification text.


# 1180b660 23-Oct-2014 Michael Lotz <mmlr@mlotz.ch>

PowerStatus: Implement battery low/critical notifications.

It shows a notification once the "low percentage" is reached (currently
at 15 percent) and once when the battery is about to die. This logic
should probably be revised to be based on remaining time instead. The
notification icons are simple variations of the PowerStatus icon.


# bf97f54d 15-Oct-2014 Axel Dörfler <axeld@pinc-software.de>

PowerStatus: removed unused uninitialized variable.

* Might help with #11329; I can't test this right now.


# 7cf7fa23 28-Nov-2013 Jérôme Duval <jerome.duval@gmail.com>

PowerStatus: fix a possible division error.

* also fix some types misuses.


# 3e4cf3a1 04-May-2013 Jérôme Duval <jerome.duval@gmail.com>

PowerStatus: some 64 bit fixes


# df2257de 01-May-2013 Adrien Destugues <pulkomandy@gmail.com>

Make BAboutWindow movable again.

Also fix build, forgot some files in previous commit.


# fd19c736 30-Apr-2013 Adrien Destugues <pulkomandy@gmail.com>

Fix BAboutWindow lifecycle

BAboutWindow returned false in QuitRequested in order to hide instead of closing.
Not only this keeps a BLooper running for a rarely used window, but it also
prevents quitting an application in the window was not destroyed first.

* Remove aforementioned QuitRequested method,
* Add a static GetWindow method that returns the existing about window, if there
is one, or creates one if there is not. A boolean can be set to tell the caller
what happened,
* Adjust all callers to use that new method, instead of managing the window themselves.


# 19ec4667 10-Feb-2013 John Scipione <jscipione@gmail.com>

Lock about window before deleting it on destruction

This fixes #9543


# b23f8cd4 12-Nov-2012 John Scipione <jscipione@gmail.com>

Destroy AboutWindow on destruction


# d4d5bf6c 12-Nov-2012 John Scipione <jscipione@gmail.com>

Update PowerStatus about window


# 5070e7e2 12-Nov-2012 John Scipione <jscipione@gmail.com>

Init fAboutWindow NULL first


# aed35104 05-Aug-2012 Humdinger <humdingerb@gmail.com>

Close alerts with ESCAPE key.

Added SetFlags(B_CLOSE_ON_ESCAPE) or SetShortcut(index, B_ESCAPE) to BAlerts
depending if the result gets used later in the code, or if it's a one-button
BAlert.


# e2c343a2 24-Jul-2012 Fredrik Modéen <fredrik@modeen.se>

Fixing #6913.
* Checking and setting a default value if both icon and text are false.


# 546208a5 16-Apr-2012 Oliver Tappe <zooey@hirschkaefer.de>

More catalog-related cleanup.

* rename B_TRANSLATE_CONTEXT to B_TRANSLATION_CONTEXT and
B_TRANSLATE_WITH_CONTEXT to B_TRANSLATE_CONTEXT, squashing a TODO
* adjust all uses of both macros in Haiku's source tree
* use correct header guard for collecting/Catalog.h

The renamed macros require adjustments to all external applications
using catalogs.


# c39eaa9d 19-Feb-2011 Siarzhuk Zharski <zharik@gmx.li>

Fix the font formatting issues introduced by r40557, r40558.
Fixes #7238. Pointed by Diver. Thanks ... and sorry.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40559 a95241bf-73f2-0310-859d-f6bbb57e9c96


# dc15e113 19-Feb-2011 Siarzhuk Zharski <zharik@gmx.li>

Yet another localization patch made by Jorma Karvonen.
Fixes #7237.

Notes:
1) proposed in original patch localization of the
Deskbar item name I found a bad idea so it is rejected;
2) I have additionally removed translation for console
messages visible only in terminal. They are purposed
mainly for debugging and are not visible to the user
in usual usage conditions;
3) Translation of the name of settings file also was
removed as common localization practice.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40557 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 3bd54e05 24-Dec-2010 Adrien Destugues <pulkomandy@pulkomandy.ath.cx>

Patch by Mike Roll: i18n PowerStatus. Thanks!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39939 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 35d62b2c 04-Dec-2010 Clemens Zeidler <clemens.zeidler@googlemail.com>

Patch by Alexander von Gluck. Detect not-present / empty batteries. Fix #6952.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39732 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 7974d3dc 13-Jan-2010 Stephan Aßmus <superstippi@gmx.de>

Patch by Humdinger:
Updated Haiku apps to use sentence-case. What a huge undertaking...
The files where I had to apply the patch manually (for mysterious
reasons) have also gotten a whitespace cleanup. I've proof-read
everything so hopefully there should be no problems.

This should be the final part of #5169.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35049 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 581e498d 13-Nov-2009 Axel Dörfler <axeld@pinc-software.de>

* Now it should work correctly, but apparently, the battery info is not updated
in the way it should be.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34022 a95241bf-73f2-0310-859d-f6bbb57e9c96


# c4791066 13-Nov-2009 Axel Dörfler <axeld@pinc-software.de>

* charging/discharging text was mixed up.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34021 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 6761e2d9 01-Sep-2009 Axel Dörfler <axeld@pinc-software.de>

* PowerStatus now checks if full_capacity is valid, based on a patch by tqh.
This closes bug #4305.

+alphabranch


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32888 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 7ec29ae9 13-Aug-2009 Axel Dörfler <axeld@pinc-software.de>

* Further improved look.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32299 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b31b5233 11-Aug-2009 Axel Dörfler <axeld@pinc-software.de>

* The deskbar replicant now memorizes its settings.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32265 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 113bd77e 11-Aug-2009 Axel Dörfler <axeld@pinc-software.de>

* Made the battery frame black, this looks better on the desktop.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32260 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 43d5e9c5 11-Aug-2009 Axel Dörfler <axeld@pinc-software.de>

* Made the window much larger by default.
* Cleaned up the about requester a bit.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32258 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 95ea1dab 11-Aug-2009 Axel Dörfler <axeld@pinc-software.de>

* Improved the disabled look (in case there is no battery -- apparently, the
ACPI interface needs some more work, as it currently uses
BATTERY_CRITICAL_STATE to report that there is no battery...).
* Cleanup of many more of Clemens' coding style violations...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32256 a95241bf-73f2-0310-859d-f6bbb57e9c96


# bd767f5a 11-Aug-2009 Axel Dörfler <axeld@pinc-software.de>

* Worked over the battery look a bit, looks much better now IMO.
* Made the replicant transparent (for background images).
* Fixed many of Clemen's coding style violations.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32255 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 08145692 30-Jul-2009 Clemens Zeidler <clemens.zeidler@googlemail.com>

Aside from I locked the wrong (base) class. The problem was more that the driver interface was deleted to early.
Using a Referenceable seems to fix it now.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31992 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b2cdb463 30-Jul-2009 Clemens Zeidler <clemens.zeidler@googlemail.com>

The monitor watcher list was not locked when broadcast a message.
Probably it caused #4151



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31982 a95241bf-73f2-0310-859d-f6bbb57e9c96


# e391ec67 11-Jul-2009 Clemens Zeidler <clemens.zeidler@googlemail.com>

- extended info window looks a little bit better now.
- cache the battery status and read it out in the polling thread
- fix time label



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31517 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 6aed176c 09-Jul-2009 Clemens Zeidler <clemens.zeidler@googlemail.com>

Add a ACPI battery driver interface to the PowerStatus app. If there is anyone with a working APM please test if its still working!
TODO:
- Get along with the Layout engine, the extended info window looks "no very nice".
- Reading the battery status takes too long so put it into a thread or cache it.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31484 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 6b202f4e 13-May-2008 Ingo Weinhold <ingo_weinhold@gmx.de>

* Introduced new header directory headers/private/system which is supposed
to contain headers shared by kernel and userland (mainly libroot).
* Moved quite a few private kernel headers to the new location. Split
several kernel headers into a shared part and one that is still kernel
private. Adjusted all affected Jamfiles and source in the standard x86
build accordingly. The build for other architectures and for test code
may be broken.
* Quite a bit of userland code still includes private kernel headers.
Mostly those are <util/*> headers. The ones that aren't strictly
kernel-only should be moved to some other place (maybe
headers/private/shared/util).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25486 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 8ec143c8 18-Jun-2007 Stephan Aßmus <superstippi@gmx.de>

* compile fix provided by Michael Berg

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21446 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 8ca57645 16-May-2007 Axel Dörfler <axeld@pinc-software.de>

* Implemented APM generic syscall API to query the current power status.
* PowerStatus is now using this API when compiled for Haiku.
* Note, I'm not sure why yet, but running PowerStatus in the background
crashes at least my laptop after some time.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21154 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 2d6123a6 29-Oct-2006 Axel Dörfler <axeld@pinc-software.de>

* Time view was broken
* The view wasn't updated on changes... (you shouldn't develop such an application
on a desktop computer)
* enlarged the polling interval to 2 seconds.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19146 a95241bf-73f2-0310-859d-f6bbb57e9c96


# d493e695 29-Oct-2006 Axel Dörfler <axeld@pinc-software.de>

Wrote a small application to show the power status in a window, replicant, or the
Deskbar tray. Currently only works under BeOS, and has rather ugly graphics; Haiku
doesn't have an APM kernel interface yet, and I was too lazy to make any nice
icons/drawings :)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19145 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 1deb22eb4bc0b7e58fa9feccc94fab9eb63d52ab 23-Aug-2015 Adrien Destugues <pulkomandy@pulkomandy.tk>

PowerStatus: style fixes.


# 4b26da642b959ca65d926b52c64b369b9a61b021 22-Aug-2015 Adrien Destugues <pulkomandy@pulkomandy.tk>

PowerStatus: show when the battery is charging.


# 070e77cc591bbd58756040c4b5b67aae15cd9e99 08-Jan-2015 Axel Dörfler <axeld@pinc-software.de>

PowerStatus: added note battery color.

* When the capacity drops below 30%, it now turns yellow.


# e889ce25192fe68ce2415018895bf53150bccdb2 08-Jan-2015 Axel Dörfler <axeld@pinc-software.de>

PowerStatus: fixed how the info is retrieved.

* The state was usually 0 once there was more than one battery
slot.
* We now ignore missing batteries completely, instead of taking
eventually bogus data into account.
* Fixed how to determine fOnline, and fHasBattery, and when to ignore
probes.
* Made it more strict when to show the notification, ie. it's now only
shown when actually discharging.
* This fixes all spurious notifications for me.


# b19e9d5b71831ec5df3f2b06632bfef3d0bdcab9 08-Jan-2015 Axel Dörfler <axeld@pinc-software.de>

PowerStatus: improved API, minor fixes.

* ioctl() does not return a status_t; fixed its usage.
* Do not overwrite the cached battery info with bogus data (this is
quite strict, though).
* Improved DriverInterface API with a more "natural" argument order.
* Simplified some code.


# d854d71111a537220435da0c6a26af705186c54a 29-Dec-2014 Axel Dörfler <axeld@pinc-software.de>

PowerStatus: hide obviously invalid probes.

* When we get bogus values back as the current battery state, there
is little reason to present this to the user when we can detect it.
* While it would be nice to solve the underlying bug, too (if there is
one, this should make the new low battery notification feature a lot
nicer in practice.


# f1bfd2dff3c1d50f2f1cf199ab4b175c8ddaa694 29-Dec-2014 Axel Dörfler <axeld@pinc-software.de>

PowerStatus: minor cleanup.

* Moved low battery notification code into its own method.
* Slightly changed low battery notification text.


# 1180b66081b3618bdcb8710a76e1fa10ce7b1e87 23-Oct-2014 Michael Lotz <mmlr@mlotz.ch>

PowerStatus: Implement battery low/critical notifications.

It shows a notification once the "low percentage" is reached (currently
at 15 percent) and once when the battery is about to die. This logic
should probably be revised to be based on remaining time instead. The
notification icons are simple variations of the PowerStatus icon.


# bf97f54d1769f791546b2a9bbcf2350e0226659b 15-Oct-2014 Axel Dörfler <axeld@pinc-software.de>

PowerStatus: removed unused uninitialized variable.

* Might help with #11329; I can't test this right now.


# 7cf7fa23f491cc1a7d4350b696c38968de554e2a 28-Nov-2013 Jérôme Duval <jerome.duval@gmail.com>

PowerStatus: fix a possible division error.

* also fix some types misuses.


# 3e4cf3a1b815340796780eb8ae0e648b2d1a72f3 04-May-2013 Jérôme Duval <jerome.duval@gmail.com>

PowerStatus: some 64 bit fixes


# df2257de36ed24b46ea52c5b301d9d3861297e1b 01-May-2013 Adrien Destugues <pulkomandy@gmail.com>

Make BAboutWindow movable again.

Also fix build, forgot some files in previous commit.


# fd19c7366df2134106131c370c99c3ed7f38757f 30-Apr-2013 Adrien Destugues <pulkomandy@gmail.com>

Fix BAboutWindow lifecycle

BAboutWindow returned false in QuitRequested in order to hide instead of closing.
Not only this keeps a BLooper running for a rarely used window, but it also
prevents quitting an application in the window was not destroyed first.

* Remove aforementioned QuitRequested method,
* Add a static GetWindow method that returns the existing about window, if there
is one, or creates one if there is not. A boolean can be set to tell the caller
what happened,
* Adjust all callers to use that new method, instead of managing the window themselves.


# 19ec4667bc7ca7b40bba7ac54499df4a50c33405 10-Feb-2013 John Scipione <jscipione@gmail.com>

Lock about window before deleting it on destruction

This fixes #9543


# b23f8cd41f1dcd1b6d58964b6b1ebd6594d19089 12-Nov-2012 John Scipione <jscipione@gmail.com>

Destroy AboutWindow on destruction


# d4d5bf6c50e67ebc57430df8dc1fec2b2b682c8b 12-Nov-2012 John Scipione <jscipione@gmail.com>

Update PowerStatus about window


# 5070e7e2228b34caae7f8d99846059672bb86b69 12-Nov-2012 John Scipione <jscipione@gmail.com>

Init fAboutWindow NULL first


# aed35104852941f0f6f3d1dcc5338b5f337d0a3c 05-Aug-2012 Humdinger <humdingerb@gmail.com>

Close alerts with ESCAPE key.

Added SetFlags(B_CLOSE_ON_ESCAPE) or SetShortcut(index, B_ESCAPE) to BAlerts
depending if the result gets used later in the code, or if it's a one-button
BAlert.


# e2c343a22a731d4ec7f6ede64adb36dbf275021e 24-Jul-2012 Fredrik Modéen <fredrik@modeen.se>

Fixing #6913.
* Checking and setting a default value if both icon and text are false.


# 546208a53940a26c6379c48a7854ade1a8250fc5 16-Apr-2012 Oliver Tappe <zooey@hirschkaefer.de>

More catalog-related cleanup.

* rename B_TRANSLATE_CONTEXT to B_TRANSLATION_CONTEXT and
B_TRANSLATE_WITH_CONTEXT to B_TRANSLATE_CONTEXT, squashing a TODO
* adjust all uses of both macros in Haiku's source tree
* use correct header guard for collecting/Catalog.h

The renamed macros require adjustments to all external applications
using catalogs.


# c39eaa9d2d01c659a4a5ed50a63a8c8be5b86711 19-Feb-2011 Siarzhuk Zharski <zharik@gmx.li>

Fix the font formatting issues introduced by r40557, r40558.
Fixes #7238. Pointed by Diver. Thanks ... and sorry.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40559 a95241bf-73f2-0310-859d-f6bbb57e9c96


# dc15e113e46653abfda42ed15f6f05740e782093 19-Feb-2011 Siarzhuk Zharski <zharik@gmx.li>

Yet another localization patch made by Jorma Karvonen.
Fixes #7237.

Notes:
1) proposed in original patch localization of the
Deskbar item name I found a bad idea so it is rejected;
2) I have additionally removed translation for console
messages visible only in terminal. They are purposed
mainly for debugging and are not visible to the user
in usual usage conditions;
3) Translation of the name of settings file also was
removed as common localization practice.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40557 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 3bd54e05be18c72d8a22cae8aa0cd9657ebefb7c 24-Dec-2010 Adrien Destugues <pulkomandy@pulkomandy.ath.cx>

Patch by Mike Roll: i18n PowerStatus. Thanks!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39939 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 35d62b2c4056dc585e6ea58724af3768e0ed9086 04-Dec-2010 Clemens Zeidler <clemens.zeidler@googlemail.com>

Patch by Alexander von Gluck. Detect not-present / empty batteries. Fix #6952.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39732 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 7974d3dcf39ce78e5885b481eee12e561ad6e096 13-Jan-2010 Stephan Aßmus <superstippi@gmx.de>

Patch by Humdinger:
Updated Haiku apps to use sentence-case. What a huge undertaking...
The files where I had to apply the patch manually (for mysterious
reasons) have also gotten a whitespace cleanup. I've proof-read
everything so hopefully there should be no problems.

This should be the final part of #5169.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35049 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 581e498d5bba0ee60a99d53d84f19358ba644370 13-Nov-2009 Axel Dörfler <axeld@pinc-software.de>

* Now it should work correctly, but apparently, the battery info is not updated
in the way it should be.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34022 a95241bf-73f2-0310-859d-f6bbb57e9c96


# c4791066122151f21f93649b03b88a2e641e53fb 13-Nov-2009 Axel Dörfler <axeld@pinc-software.de>

* charging/discharging text was mixed up.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34021 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 6761e2d915e89f5d6cd7a5d8b2080e62c641536e 01-Sep-2009 Axel Dörfler <axeld@pinc-software.de>

* PowerStatus now checks if full_capacity is valid, based on a patch by tqh.
This closes bug #4305.

+alphabranch


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32888 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 7ec29ae9a245936731ffd3931f36b33a28cb1034 13-Aug-2009 Axel Dörfler <axeld@pinc-software.de>

* Further improved look.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32299 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b31b52339c574717cbd352c2b294aa831d35bee8 11-Aug-2009 Axel Dörfler <axeld@pinc-software.de>

* The deskbar replicant now memorizes its settings.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32265 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 113bd77e7e52f1e1dade3b9586465690a6bfc00a 11-Aug-2009 Axel Dörfler <axeld@pinc-software.de>

* Made the battery frame black, this looks better on the desktop.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32260 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 43d5e9c5d18cb7582f89b6066ac22ffb7794f335 11-Aug-2009 Axel Dörfler <axeld@pinc-software.de>

* Made the window much larger by default.
* Cleaned up the about requester a bit.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32258 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 95ea1dab5af35be055bf55b19937dfc9bf55caae 11-Aug-2009 Axel Dörfler <axeld@pinc-software.de>

* Improved the disabled look (in case there is no battery -- apparently, the
ACPI interface needs some more work, as it currently uses
BATTERY_CRITICAL_STATE to report that there is no battery...).
* Cleanup of many more of Clemens' coding style violations...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32256 a95241bf-73f2-0310-859d-f6bbb57e9c96


# bd767f5a4e51e6fb6ee3d4f81085052dfb6ee11c 11-Aug-2009 Axel Dörfler <axeld@pinc-software.de>

* Worked over the battery look a bit, looks much better now IMO.
* Made the replicant transparent (for background images).
* Fixed many of Clemen's coding style violations.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32255 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 08145692162a862016dc9a473b7372e879df9d7a 30-Jul-2009 Clemens Zeidler <clemens.zeidler@googlemail.com>

Aside from I locked the wrong (base) class. The problem was more that the driver interface was deleted to early.
Using a Referenceable seems to fix it now.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31992 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b2cdb463b3c335901edabaab244e80431418b028 30-Jul-2009 Clemens Zeidler <clemens.zeidler@googlemail.com>

The monitor watcher list was not locked when broadcast a message.
Probably it caused #4151



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31982 a95241bf-73f2-0310-859d-f6bbb57e9c96


# e391ec67b76eb39e7ecdb4da2693e1adf19cd0f7 11-Jul-2009 Clemens Zeidler <clemens.zeidler@googlemail.com>

- extended info window looks a little bit better now.
- cache the battery status and read it out in the polling thread
- fix time label



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31517 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 6aed176c0988537d716a89e11130b4253179f607 09-Jul-2009 Clemens Zeidler <clemens.zeidler@googlemail.com>

Add a ACPI battery driver interface to the PowerStatus app. If there is anyone with a working APM please test if its still working!
TODO:
- Get along with the Layout engine, the extended info window looks "no very nice".
- Reading the battery status takes too long so put it into a thread or cache it.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31484 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 6b202f4e3da73d4c131355fcd82b792d153f84f6 13-May-2008 Ingo Weinhold <ingo_weinhold@gmx.de>

* Introduced new header directory headers/private/system which is supposed
to contain headers shared by kernel and userland (mainly libroot).
* Moved quite a few private kernel headers to the new location. Split
several kernel headers into a shared part and one that is still kernel
private. Adjusted all affected Jamfiles and source in the standard x86
build accordingly. The build for other architectures and for test code
may be broken.
* Quite a bit of userland code still includes private kernel headers.
Mostly those are <util/*> headers. The ones that aren't strictly
kernel-only should be moved to some other place (maybe
headers/private/shared/util).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25486 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 8ec143c887677166f4c037018c3494f41e2155b9 18-Jun-2007 Stephan Aßmus <superstippi@gmx.de>

* compile fix provided by Michael Berg

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21446 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 8ca57645543d928602faf4b2b7f311e9c2c1be29 16-May-2007 Axel Dörfler <axeld@pinc-software.de>

* Implemented APM generic syscall API to query the current power status.
* PowerStatus is now using this API when compiled for Haiku.
* Note, I'm not sure why yet, but running PowerStatus in the background
crashes at least my laptop after some time.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21154 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 2d6123a6ea275104e96e8eea98f1fcf89e6b3c1d 29-Oct-2006 Axel Dörfler <axeld@pinc-software.de>

* Time view was broken
* The view wasn't updated on changes... (you shouldn't develop such an application
on a desktop computer)
* enlarged the polling interval to 2 seconds.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19146 a95241bf-73f2-0310-859d-f6bbb57e9c96


# d493e695274d0c429af354899cfdef575d23569a 29-Oct-2006 Axel Dörfler <axeld@pinc-software.de>

Wrote a small application to show the power status in a window, replicant, or the
Deskbar tray. Currently only works under BeOS, and has rather ugly graphics; Haiku
doesn't have an APM kernel interface yet, and I was too lazy to make any nice
icons/drawings :)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19145 a95241bf-73f2-0310-859d-f6bbb57e9c96