Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Added dynamic battery widget #3

Conversation

RaresCon
Copy link

@RaresCon RaresCon commented Jan 11, 2023

Description

For bottom to know that there are no batteries on the system, I added the battery::Manager to the options.rs file because here is the first moment bottom verifies battery configuration by reading the config file, which may or may not contain the battery field, but for a better UX, it doesn't matter what bottom finds in the config file now, if it doesn't retrieve battery data, it just ignores the battery widget all together.
If needed, it can be adjusted so that if the config file contains the battery field, it will still show the widget even without batteries on the system.

Issue

#1

Testing

If relevant, please state how this was tested. All changes must be tested to work:
It was tested with and without config files on a PC without battery and on a laptop with and without battery installed.

If this is a code change, please also indicate which platforms were tested:

  • Windows
  • macOS
  • Linux

Checklist

If relevant, ensure the following have been met:

  • Areas your change affects have been linted using rustfmt (cargo fmt)
  • The change has been tested and doesn't appear to cause any unintended breakage
  • Documentation has been added/updated if needed (README.md, help menu, doc pages, etc.)
  • The pull request passes the provided CI pipeline
  • There are no merge conflicts
  • If relevant, new tests were added (don't worry too much about coverage)

For bottom to know that there are no batteries on the system,
I added the battery::Manager to the options.rs file because
here is the first moment bottom verifies battery configuration
by reading the config file, which may or may not contain the
battery field, but for a better UX, it doesn't matter what bottom
finds in the config file now, if it doesn't retrieve battery data,
it just ignores the battery widget all together.
If needed, it can be adjusted so that if the config file contains
the battery field, it will still show the widget.
@alexandruradovici
Copy link

I tested this using macOS and it works.

src/options.rs Show resolved Hide resolved
I guarded the options.rs in two places for battery module that can be missing in the feature list.
@alexandruradovici
Copy link

alexandruradovici commented Jan 13, 2023

I think you can send the PR to upstream, place a link to it in the pull request.

@RaresCon
Copy link
Author

I think you can send the PR to upstream, place a link to it in the pull request.

I've sent the PR, I've put a link to this one in there. Thank you for the tip about #cfg directive.

@alexandruradovici
Copy link

Link ClementTsang#975

@alexandruradovici alexandruradovici added the upstream This pull request was opened in the upstream reposiotry label Jan 14, 2023
@RaresCon
Copy link
Author

Link ClementTsang#975

The PR was approved. Thank you once again!

@alexandruradovici
Copy link

Thanks.

@RaresCon RaresCon deleted the dynamic_battery_widget branch January 20, 2023 23:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
upstream This pull request was opened in the upstream reposiotry
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants