abouttreesummaryrefslogcommitdiff
path: root/srcs/juloo.keyboard2/EmojiGridView.java
diff options
context:
space:
mode:
authorjaguillo2015-10-26 20:48:07 +0100
committerjaguillo2015-10-26 20:48:07 +0100
commit2c859f30a64606377c8b9ee5bb7eea3e8389b51f (patch)
treec8ceaf36dc3a4cb6ad260c2efd8f729677133854 /srcs/juloo.keyboard2/EmojiGridView.java
parente95ccbec0018298bc8b80477b4cc5a5aee0e6214 (diff)
downloadunexpected-keyboard-2c859f30a64606377c8b9ee5bb7eea3e8389b51f.tar.gz
unexpected-keyboard-2c859f30a64606377c8b9ee5bb7eea3e8389b51f.zip
More emoji category + Fix last emoji used saving
Diffstat (limited to 'srcs/juloo.keyboard2/EmojiGridView.java')
-rw-r--r--srcs/juloo.keyboard2/EmojiGridView.java21
1 files changed, 9 insertions, 12 deletions
diff --git a/srcs/juloo.keyboard2/EmojiGridView.java b/srcs/juloo.keyboard2/EmojiGridView.java
index ec02f58..deb726f 100644
--- a/srcs/juloo.keyboard2/EmojiGridView.java
+++ b/srcs/juloo.keyboard2/EmojiGridView.java
@@ -57,6 +57,7 @@ public class EmojiGridView extends GridView
_lastUsed.put(_emojiArray[pos], (used == null) ? 1 : used.intValue() + 1);
main.handleKeyUp(_emojiArray[pos], 0);
+ saveLastUsed(); // TODO: opti
}
@Override
@@ -66,12 +67,6 @@ public class EmojiGridView extends GridView
setNumColumns(getMeasuredWidth() / COLUMN_WIDTH);
}
- @Override
- public void onDetachedFromWindow()
- {
- saveLastUsed();
- }
-
private Emoji[] getLastEmojis()
{
final HashMap<Emoji, Integer> map = _lastUsed;
@@ -96,6 +91,7 @@ public class EmojiGridView extends GridView
for (Emoji emoji : _lastUsed.keySet())
set.add(String.valueOf(_lastUsed.get(emoji)) + "-" + emoji.getName());
edit.putStringSet(LAST_USE_PREF, set);
+ edit.apply();
}
private void loadLastUsed()
@@ -107,14 +103,15 @@ public class EmojiGridView extends GridView
if (lastUseSet != null)
for (String emojiData : lastUseSet)
{
- String[] emoji = emojiData.split("-", 1);
+ String[] data = emojiData.split("-", 2);
+ Emoji emoji;
- if (emoji.length != 2)
- {
- System.out.println("Warn: Bad emoji data: " + emojiData);
+ if (data.length != 2)
+ continue ;
+ emoji = Emoji.getEmojiByName(data[1]);
+ if (emoji == null)
continue ;
- }
- _lastUsed.put((Emoji)KeyValue.getKeyByName(emoji[1]), Integer.getInteger(emoji[0]));
+ _lastUsed.put(emoji, Integer.getInteger(data[0]));
}
}