Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions res/values/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -230,6 +230,8 @@
<string name="batterybar_height_dialog">Height of BatteryBar in dp.\n(Non-numeric characters are ignored.)</string>
<string name="batterybar_animate_title">Animate Charging</string>
<string name="batterybar_animate_summary">Show Animation while Charging</string>
<string name="batterybar_animate_offset">Animation Offset</string>
<string name="batterybar_animate_offset_summary">Time between animations</string>
<string name="batterybar_color_title">BatteryBar Color</string>

<string name="batterybar_color_screen_title">Customize Color</string>
Expand Down
12 changes: 12 additions & 0 deletions res/xml/pref_setting.xml
Original file line number Diff line number Diff line change
Expand Up @@ -84,6 +84,18 @@
android:summary="@string/batterybar_animate_summary"
android:title="@string/batterybar_animate_title" />

<com.zst.xposed.xuimod.preference.SeekBarDialog
defaultValue="0"
maximum="12000"
minimum="0"
suffix="ms"
android:dialogLayout="@layout/pref_seekbar"
android:dialogTitle="@string/batterybar_animate_offset"
android:key="batterybar_animate_offset"
android:dependency="batterybar_animate"
android:summary="@string/batterybar_animate_offset_summary"
android:title="@string/batterybar_animate_offset" />

<CheckBoxPreference
android:dependency="batterybar_enable"
android:key="batterybar_style"
Expand Down
2 changes: 2 additions & 0 deletions src/com/zst/xposed/xuimod/Common.java
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,7 @@ public class Common {

public static final String KEY_BATTERYBAR_ENABLE = "batterybar_enable";
public static final String KEY_BATTERYBAR_ANIMATE = "batterybar_animate";
public static final String KEY_BATTERYBAR_ANIMATE_OFFSET = "batterybar_animate_offset";
public static final String KEY_BATTERYBAR_STYLE = "batterybar_style";
public static final String[] KEYS_BATTERYBAR_POSITION = new String[] {
"batterybar_position_sb",
Expand Down Expand Up @@ -167,6 +168,7 @@ public class Common {

public static final boolean DEFAULT_BATTERYBAR_ENABLE = false;
public static final boolean DEFAULT_BATTERYBAR_ANIMATE = false;
public static final int DEFAULT_BATTERYBAR_ANIMATE_OFFSET = 0;
public static final boolean DEFAULT_BATTERYBAR_STYLE = false;
public static final String DEFAULT_BATTERYBAR_COLOR_MODE = "0";
public static final String DEFAULT_BATTERYBAR_COLOR = COLOR_HOLO_BLUE;
Expand Down
14 changes: 13 additions & 1 deletion src/com/zst/xposed/xuimod/mods/batterybar/BatteryBarView.java
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,7 @@
public class BatteryBarView extends RelativeLayout implements Animatable {
// Total animation duration
private static final int ANIM_DURATION = 1000; // 1 second
private static int ANIM_OFFSET = 0; // Time between animations in milliseconds.

public static final int MODE_COLOR_SINGLE = 0;
public static final int MODE_COLOR_MULTIPLE = 1;
Expand Down Expand Up @@ -193,7 +194,16 @@ private void updateSettings() {

mSymmetric = pref.getBoolean(Common.KEY_BATTERYBAR_STYLE,
Common.DEFAULT_BATTERYBAR_STYLE);


int tempAnimOffset = pref.getInt(Common.KEY_BATTERYBAR_ANIMATE_OFFSET,
Common.DEFAULT_BATTERYBAR_ANIMATE_OFFSET);

if(tempAnimOffset != ANIM_OFFSET) {
ANIM_OFFSET = tempAnimOffset;
stop();
start();
}

setProgress(mBatteryLevel);
updateBatteryColor();
updateBatteryBackground();
Expand Down Expand Up @@ -312,6 +322,7 @@ public void start() {
a.setInterpolator(new AccelerateInterpolator());
a.setDuration(ANIM_DURATION);
a.setRepeatCount(Animation.INFINITE);
a.setStartOffset(ANIM_OFFSET);
mChargerLayout.startAnimation(a);
mChargerLayout.setVisibility(View.VISIBLE);
} else {
Expand All @@ -324,6 +335,7 @@ public void start() {
a.setInterpolator(new AccelerateInterpolator());
a.setDuration(ANIM_DURATION);
a.setRepeatCount(Animation.INFINITE);
a.setStartOffset(ANIM_OFFSET);
mChargerLayout.startAnimation(a);
mChargerLayout.setVisibility(View.VISIBLE);
}
Expand Down