use of android.service.quicksettings.Tile in project muzei by romannurik.
the class NextArtworkTileService method updateTile.
private void updateTile() {
Tile tile = getQsTile();
if (tile == null) {
// We'll update the tile next time onStartListening is called.
return;
}
if (!mWallpaperActive) {
// If the wallpaper isn't active, the quick tile will activate it
tile.setState(Tile.STATE_INACTIVE);
tile.setLabel(getString(R.string.action_activate));
tile.setIcon(Icon.createWithResource(this, R.drawable.ic_stat_muzei));
tile.updateTile();
return;
}
// Else, the wallpaper is active so we query on whether the 'Next Artwork' command
// is available
Cursor data = getContentResolver().query(MuzeiContract.Sources.CONTENT_URI, new String[] { MuzeiContract.Sources.COLUMN_NAME_SUPPORTS_NEXT_ARTWORK_COMMAND }, MuzeiContract.Sources.COLUMN_NAME_IS_SELECTED + "=1", null, null);
if (data == null) {
return;
}
boolean supportsNextArtwork = false;
if (data.moveToFirst()) {
supportsNextArtwork = data.getInt(0) != 0;
}
data.close();
if (supportsNextArtwork) {
tile.setState(Tile.STATE_ACTIVE);
tile.setLabel(getString(R.string.action_next_artwork));
tile.setIcon(Icon.createWithResource(this, R.drawable.ic_notif_full_next_artwork));
} else {
tile.setState(Tile.STATE_UNAVAILABLE);
tile.setLabel(getString(R.string.action_next_artwork));
tile.setIcon(Icon.createWithResource(this, R.drawable.ic_notif_full_next_artwork));
}
tile.updateTile();
}
use of android.service.quicksettings.Tile in project platform_frameworks_base by android.
the class TileLifecycleManagerTests method setUp.
@Override
protected void setUp() throws Exception {
super.setUp();
mThread = new HandlerThread("TestThread");
mThread.start();
mHandler = new Handler(mThread.getLooper());
ComponentName component = new ComponentName(mContext, FakeTileService.class);
mStateManager = new TileLifecycleManager(mHandler, getContext(), Mockito.mock(IQSService.class), new Tile(), new Intent().setComponent(component), new UserHandle(UserHandle.myUserId()));
mCallbacks.clear();
getContext().registerReceiver(mReceiver, new IntentFilter(TILE_UPDATE_BROADCAST));
}
use of android.service.quicksettings.Tile in project Telecine by JakeWharton.
the class TelecineTileService method onStartListening.
@Override
public void onStartListening() {
Timber.i("Quick tile started listening");
Tile tile = getQsTile();
tile.setState(Tile.STATE_ACTIVE);
tile.updateTile();
}
use of android.service.quicksettings.Tile in project platform_frameworks_base by android.
the class QSTileHost method changeTiles.
public void changeTiles(List<String> previousTiles, List<String> newTiles) {
final int NP = previousTiles.size();
final int NA = newTiles.size();
for (int i = 0; i < NP; i++) {
String tileSpec = previousTiles.get(i);
if (!tileSpec.startsWith(CustomTile.PREFIX))
continue;
if (!newTiles.contains(tileSpec)) {
ComponentName component = CustomTile.getComponentFromSpec(tileSpec);
Intent intent = new Intent().setComponent(component);
TileLifecycleManager lifecycleManager = new TileLifecycleManager(new Handler(), mContext, mServices, new Tile(), intent, new UserHandle(ActivityManager.getCurrentUser()));
lifecycleManager.onStopListening();
lifecycleManager.onTileRemoved();
TileLifecycleManager.setTileAdded(mContext, component, false);
lifecycleManager.flushMessagesAndUnbind();
}
}
if (DEBUG)
Log.d(TAG, "saveCurrentTiles " + newTiles);
Secure.putStringForUser(getContext().getContentResolver(), QSTileHost.TILES_SETTING, TextUtils.join(",", newTiles), ActivityManager.getCurrentUser());
}
use of android.service.quicksettings.Tile in project android_frameworks_base by DirtyUnicorns.
the class QSTileHost method changeTiles.
public void changeTiles(List<String> previousTiles, List<String> newTiles) {
final int NP = previousTiles.size();
final int NA = newTiles.size();
for (int i = 0; i < NP; i++) {
String tileSpec = previousTiles.get(i);
if (!tileSpec.startsWith(CustomTile.PREFIX))
continue;
if (!newTiles.contains(tileSpec)) {
// Get the custom tile ready to be removed
ComponentName component = CustomTile.getComponentFromSpec(tileSpec);
Intent intent = new Intent().setComponent(component);
TileLifecycleManager lifecycleManager = new TileLifecycleManager(new Handler(), mContext, mServices, new Tile(), intent, new UserHandle(ActivityManager.getCurrentUser()));
lifecycleManager.onStopListening();
lifecycleManager.onTileRemoved();
TileLifecycleManager.setTileAdded(mContext, component, false);
lifecycleManager.flushMessagesAndUnbind();
}
}
if (DEBUG)
Log.d(TAG, "saveCurrentTiles " + newTiles);
Secure.putStringForUser(getContext().getContentResolver(), QSTileHost.TILES_SETTING, TextUtils.join(",", newTiles), ActivityManager.getCurrentUser());
}
Aggregations