diff options
| author | Po Lu | 2023-03-10 09:40:41 +0800 |
|---|---|---|
| committer | Po Lu | 2023-03-10 09:40:41 +0800 |
| commit | 488a75f2e2b73038ff341f3484a8cf8584633eff (patch) | |
| tree | 4871fe49e7009816a004f96d59fcb3b945c294d8 /src/androidfns.c | |
| parent | 4392423cb6df5a8af9a0520da04378e189fd387e (diff) | |
| download | emacs-488a75f2e2b73038ff341f3484a8cf8584633eff.tar.gz emacs-488a75f2e2b73038ff341f3484a8cf8584633eff.zip | |
Port Android battery status to Android 4.4 and earlier
* java/org/gnu/emacs/EmacsService.java (EmacsService)
(queryBattery19): New function.
(queryBattery): Call it on old systems. Also, return AC line
status and temperature.
* lisp/battery.el (battery-android): Implement more format
directives.
* src/android.c (android_query_battery): Handle new status
fields.
* src/android.h (struct android_battery_state): Add `plugged'
and `temperature'.
* src/androidfns.c (Fandroid_query_battery): Return new fields.
Diffstat (limited to 'src/androidfns.c')
| -rw-r--r-- | src/androidfns.c | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/src/androidfns.c b/src/androidfns.c index 5a23e8bd196..2724b9595c1 100644 --- a/src/androidfns.c +++ b/src/androidfns.c | |||
| @@ -2797,11 +2797,13 @@ frame_parm_handler android_frame_parm_handlers[] = | |||
| 2797 | DEFUN ("android-query-battery", Fandroid_query_battery, | 2797 | DEFUN ("android-query-battery", Fandroid_query_battery, |
| 2798 | Sandroid_query_battery, 0, 0, 0, | 2798 | Sandroid_query_battery, 0, 0, 0, |
| 2799 | doc: /* Perform a query for battery information. | 2799 | doc: /* Perform a query for battery information. |
| 2800 | This function will not work before Android 5.0. | ||
| 2801 | Value is nil upon failure, or a list of the form: | 2800 | Value is nil upon failure, or a list of the form: |
| 2802 | 2801 | ||
| 2803 | (CAPACITY CHARGE-COUNTER CURRENT-AVERAGE CURRENT-NOW STATUS | 2802 | (CAPACITY CHARGE-COUNTER CURRENT-AVERAGE CURRENT-NOW STATUS |
| 2804 | REMAINING) | 2803 | REMAINING PLUGGED TEMP) |
| 2804 | |||
| 2805 | where REMAINING, CURRENT-AVERAGE, and CURRENT-NOW are undefined prior | ||
| 2806 | to Android 5.0. | ||
| 2805 | 2807 | ||
| 2806 | See the documentation at | 2808 | See the documentation at |
| 2807 | 2809 | ||
| @@ -2822,12 +2824,14 @@ for more details about these values. */) | |||
| 2822 | if (android_query_battery (&state)) | 2824 | if (android_query_battery (&state)) |
| 2823 | return Qnil; | 2825 | return Qnil; |
| 2824 | 2826 | ||
| 2825 | return listn (6, make_int (state.capacity), | 2827 | return listn (8, make_int (state.capacity), |
| 2826 | make_int (state.charge_counter), | 2828 | make_fixnum (state.charge_counter), |
| 2827 | make_int (state.current_average), | 2829 | make_int (state.current_average), |
| 2828 | make_int (state.current_now), | 2830 | make_int (state.current_now), |
| 2829 | make_int (state.status), | 2831 | make_fixnum (state.status), |
| 2830 | make_int (state.remaining)); | 2832 | make_int (state.remaining), |
| 2833 | make_fixnum (state.plugged), | ||
| 2834 | make_fixnum (state.temperature)); | ||
| 2831 | } | 2835 | } |
| 2832 | 2836 | ||
| 2833 | #endif | 2837 | #endif |