am 289d797a: QS: 7 day timeout for color-inversion tile.

* commit '289d797a6a748cfc7dcca8c815fab6c37061bf05':
  QS: 7 day timeout for color-inversion tile.
This commit is contained in:
John Spurlock
2014-10-17 16:20:48 +00:00
committed by Android Git Automerger
4 changed files with 15 additions and 9 deletions

View File

@@ -238,8 +238,11 @@
<!-- Volume: time to delay dismissing the volume panel after a click is performed --> <!-- Volume: time to delay dismissing the volume panel after a click is performed -->
<integer name="volume_panel_dismiss_delay">200</integer> <integer name="volume_panel_dismiss_delay">200</integer>
<!-- Tiles with feature timeouts: number of days to show after feature is used. --> <!-- Hotspot tile: number of days to show after feature is used. -->
<integer name="days_to_show_timeout_tiles">30</integer> <integer name="days_to_show_hotspot_tile">30</integer>
<!-- Color inversion tile: number of days to show after feature is used. -->
<integer name="days_to_show_color_inversion_tile">7</integer>
<!-- Number of times to show the strong alarm warning text in the volume dialog --> <!-- Number of times to show the strong alarm warning text in the volume dialog -->
<integer name="zen_mode_alarm_warning_threshold">5</integer> <integer name="zen_mode_alarm_warning_threshold">5</integer>

View File

@@ -22,7 +22,6 @@ import android.content.Intent;
import android.content.IntentFilter; import android.content.IntentFilter;
import android.content.SharedPreferences; import android.content.SharedPreferences;
import com.android.systemui.R;
import com.android.systemui.statusbar.policy.Listenable; import com.android.systemui.statusbar.policy.Listenable;
public class UsageTracker implements Listenable { public class UsageTracker implements Listenable {
@@ -35,11 +34,10 @@ public class UsageTracker implements Listenable {
private boolean mRegistered; private boolean mRegistered;
public UsageTracker(Context context, Class<?> tile) { public UsageTracker(Context context, Class<?> tile, int timeoutResource) {
mContext = context; mContext = context;
mPrefKey = tile.getSimpleName() + "LastUsed"; mPrefKey = tile.getSimpleName() + "LastUsed";
mTimeToShowTile = MILLIS_PER_DAY * mContext.getResources() mTimeToShowTile = MILLIS_PER_DAY * mContext.getResources().getInteger(timeoutResource);
.getInteger(R.integer.days_to_show_timeout_tiles);
mResetAction = "com.android.systemui.qs." + tile.getSimpleName() + ".usage_reset"; mResetAction = "com.android.systemui.qs." + tile.getSimpleName() + ".usage_reset";
} }

View File

@@ -44,7 +44,8 @@ public class ColorInversionTile extends QSTile<QSTile.BooleanState> {
} }
} }
}; };
mUsageTracker = new UsageTracker(host.getContext(), ColorInversionTile.class); mUsageTracker = new UsageTracker(host.getContext(), ColorInversionTile.class,
R.integer.days_to_show_color_inversion_tile);
if (mSetting.getValue() != 0 && !mUsageTracker.isRecentlyUsed()) { if (mSetting.getValue() != 0 && !mUsageTracker.isRecentlyUsed()) {
mUsageTracker.trackUsage(); mUsageTracker.trackUsage();
} }

View File

@@ -34,7 +34,7 @@ public class HotspotTile extends QSTile<QSTile.BooleanState> {
public HotspotTile(Host host) { public HotspotTile(Host host) {
super(host); super(host);
mController = host.getHotspotController(); mController = host.getHotspotController();
mUsageTracker = new UsageTracker(host.getContext(), HotspotTile.class); mUsageTracker = newUsageTracker(host.getContext());
mUsageTracker.setListening(true); mUsageTracker.setListening(true);
} }
@@ -84,6 +84,10 @@ public class HotspotTile extends QSTile<QSTile.BooleanState> {
} }
} }
private static UsageTracker newUsageTracker(Context context) {
return new UsageTracker(context, HotspotTile.class, R.integer.days_to_show_hotspot_tile);
}
private final class Callback implements HotspotController.Callback { private final class Callback implements HotspotController.Callback {
@Override @Override
public void onHotspotChanged(boolean enabled) { public void onHotspotChanged(boolean enabled) {
@@ -101,7 +105,7 @@ public class HotspotTile extends QSTile<QSTile.BooleanState> {
@Override @Override
public void onReceive(Context context, Intent intent) { public void onReceive(Context context, Intent intent) {
if (mUsageTracker == null) { if (mUsageTracker == null) {
mUsageTracker = new UsageTracker(context, HotspotTile.class); mUsageTracker = newUsageTracker(context);
} }
mUsageTracker.trackUsage(); mUsageTracker.trackUsage();
} }