abouttreesummaryrefslogcommitdiff
path: root/srcs/juloo.keyboard2/ClipboardHistoryService.java
diff options
context:
space:
mode:
authorMatej Drobnič2025-09-29 00:56:23 +0200
committerGitHub2025-09-29 00:56:23 +0200
commitdf8e7a01e0e69c2a8463a27096d4d3c33b1f6b46 (patch)
tree354034f08133fa4aa6073ba386258b408e2bd046 /srcs/juloo.keyboard2/ClipboardHistoryService.java
parent7fdf63b930e51a06011ce911cf87a03c41b8334d (diff)
downloadunexpected-keyboard-df8e7a01e0e69c2a8463a27096d4d3c33b1f6b46.tar.gz
unexpected-keyboard-df8e7a01e0e69c2a8463a27096d4d3c33b1f6b46.zip
Make history duration configurable (#1074)
Diffstat (limited to 'srcs/juloo.keyboard2/ClipboardHistoryService.java')
-rw-r--r--srcs/juloo.keyboard2/ClipboardHistoryService.java14
1 files changed, 11 insertions, 3 deletions
diff --git a/srcs/juloo.keyboard2/ClipboardHistoryService.java b/srcs/juloo.keyboard2/ClipboardHistoryService.java
index 9554bca..27e2eb9 100644
--- a/srcs/juloo.keyboard2/ClipboardHistoryService.java
+++ b/srcs/juloo.keyboard2/ClipboardHistoryService.java
@@ -7,6 +7,7 @@ import android.os.Build.VERSION;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
+import java.util.concurrent.TimeUnit;
public final class ClipboardHistoryService
{
@@ -50,8 +51,6 @@ public final class ClipboardHistoryService
gives a sense to the user that the history is not persisted and can be
forgotten as soon as the app stops. */
public static final int MAX_HISTORY_SIZE = 6;
- /** Time in ms until history entries expire. */
- public static final long HISTORY_TTL_MS = 5 * 60 * 1000;
static ClipboardHistoryService _service = null;
static ClipboardPasteCallback _paste_callback = null;
@@ -150,6 +149,10 @@ public final class ClipboardHistoryService
}
}
+ int get_history_ttl_minutes() {
+ return Config.globalConfig().clipboard_history_duration;
+ }
+
final class SystemListener implements ClipboardManager.OnPrimaryClipChangedListener
{
public SystemListener() {}
@@ -171,7 +174,12 @@ public final class ClipboardHistoryService
public HistoryEntry(String c)
{
content = c;
- expiry_timestamp = System.currentTimeMillis() + HISTORY_TTL_MS;
+ final int historyTtlMinutes = _service.get_history_ttl_minutes();
+ if (historyTtlMinutes >= 0) {
+ expiry_timestamp = System.currentTimeMillis() + TimeUnit.MINUTES.toMillis(historyTtlMinutes);
+ } else {
+ expiry_timestamp = Long.MAX_VALUE;
+ }
}
}