Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/stefan-niedermann/nextcloud-deck.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorstefan-niedermann <info@niedermann.it>2019-10-20 17:08:30 +0300
committerstefan-niedermann <info@niedermann.it>2019-10-20 17:08:30 +0300
commite66b548f32aad0ba3f33f08c6528bc3e3ad4af2d (patch)
tree1545bbecb6946945224b89c575bab5974f8aa921 /app/src/main/java
parent4aee072680ca64bb620a3e9d24fd1a2081b67882 (diff)
Add tile for quickly creating a new card
Diffstat (limited to 'app/src/main/java')
-rw-r--r--app/src/main/java/it/niedermann/nextcloud/deck/ui/tiles/EditCardTileService.java37
1 files changed, 37 insertions, 0 deletions
diff --git a/app/src/main/java/it/niedermann/nextcloud/deck/ui/tiles/EditCardTileService.java b/app/src/main/java/it/niedermann/nextcloud/deck/ui/tiles/EditCardTileService.java
new file mode 100644
index 000000000..1bc7a4433
--- /dev/null
+++ b/app/src/main/java/it/niedermann/nextcloud/deck/ui/tiles/EditCardTileService.java
@@ -0,0 +1,37 @@
+package it.niedermann.nextcloud.deck.ui.tiles;
+
+import android.annotation.TargetApi;
+import android.content.Intent;
+import android.os.Build;
+import android.service.quicksettings.Tile;
+import android.service.quicksettings.TileService;
+
+import it.niedermann.nextcloud.deck.ui.EditActivity;
+
+import static it.niedermann.nextcloud.deck.ui.card.CardAdapter.BUNDLE_KEY_ACCOUNT_ID;
+import static it.niedermann.nextcloud.deck.ui.card.CardAdapter.BUNDLE_KEY_BOARD_ID;
+import static it.niedermann.nextcloud.deck.ui.card.CardAdapter.BUNDLE_KEY_LOCAL_ID;
+
+@TargetApi(Build.VERSION_CODES.N)
+public class EditCardTileService extends TileService {
+
+ @Override
+ public void onStartListening() {
+ Tile tile = getQsTile();
+ tile.setState(Tile.STATE_ACTIVE);
+ tile.updateTile();
+ }
+
+ @Override
+ public void onClick() {
+ Intent intent = new Intent(getApplicationContext(), EditActivity.class);
+ // create new note intent
+ intent.putExtra(BUNDLE_KEY_ACCOUNT_ID, -1);
+ intent.putExtra(BUNDLE_KEY_BOARD_ID, -1);
+ intent.putExtra(BUNDLE_KEY_LOCAL_ID, -1);
+ // ensure it won't open twice if already running
+ intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP | Intent.FLAG_ACTIVITY_NEW_TASK);
+ // ask to unlock the screen if locked, then start new note intent
+ unlockAndRun(() -> startActivityAndCollapse(intent));
+ }
+}