mirror of
https://github.com/moparisthebest/k-9
synced 2024-11-10 11:35:11 -05:00
Refactoring of emoji transcoding code into the htmlconverter class
This commit is contained in:
parent
4dcf32d2a9
commit
ab5c7ea6ff
@ -225,6 +225,879 @@ public class HtmlConverter
|
|||||||
return text;
|
return text;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Lightweight method to check whether the message contains emoji or not.
|
||||||
|
* Useful to avoid calling the heavyweight convertEmoji2Img method.
|
||||||
|
* We don't use String.codePointAt here for performance reasons.
|
||||||
|
*/
|
||||||
|
private static boolean hasEmoji(String html)
|
||||||
|
{
|
||||||
|
for (int i = 0; i < html.length(); ++i)
|
||||||
|
{
|
||||||
|
char c = html.charAt(i);
|
||||||
|
if (c >= 0xDBB8 && c < 0xDBBC)
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static String convertEmoji2Img(String html)
|
||||||
|
{
|
||||||
|
if (!hasEmoji(html))
|
||||||
|
{
|
||||||
|
return html;
|
||||||
|
|
||||||
|
}
|
||||||
|
StringBuilder buff = new StringBuilder(html.length() + 512);
|
||||||
|
for (int i = 0; i < html.length(); i = html.offsetByCodePoints(i, 1))
|
||||||
|
{
|
||||||
|
int codePoint = html.codePointAt(i);
|
||||||
|
String emoji = getEmojiForCodePoint(codePoint);
|
||||||
|
if (emoji != null)
|
||||||
|
buff.append("<img src=\"file:///android_asset/emoticons/" + emoji + ".gif\" alt=\"" + emoji + "\" />");
|
||||||
|
else
|
||||||
|
buff.appendCodePoint(codePoint);
|
||||||
|
|
||||||
|
}
|
||||||
|
return buff.toString();
|
||||||
|
}
|
||||||
|
private static String getEmojiForCodePoint(int codePoint)
|
||||||
|
{
|
||||||
|
// Derived from http://code.google.com/p/emoji4unicode/source/browse/trunk/data/emoji4unicode.xml
|
||||||
|
// XXX: This doesn't cover all the characters. More emoticons are wanted.
|
||||||
|
switch (codePoint)
|
||||||
|
{
|
||||||
|
case 0xFE000:
|
||||||
|
return "sun";
|
||||||
|
case 0xFE001:
|
||||||
|
return "cloud";
|
||||||
|
case 0xFE002:
|
||||||
|
return "rain";
|
||||||
|
case 0xFE003:
|
||||||
|
return "snow";
|
||||||
|
case 0xFE004:
|
||||||
|
return "thunder";
|
||||||
|
case 0xFE005:
|
||||||
|
return "typhoon";
|
||||||
|
case 0xFE006:
|
||||||
|
return "mist";
|
||||||
|
case 0xFE007:
|
||||||
|
return "sprinkle";
|
||||||
|
case 0xFE008:
|
||||||
|
return "night";
|
||||||
|
case 0xFE009:
|
||||||
|
return "sun";
|
||||||
|
case 0xFE00A:
|
||||||
|
return "sun";
|
||||||
|
case 0xFE00C:
|
||||||
|
return "sun";
|
||||||
|
case 0xFE010:
|
||||||
|
return "night";
|
||||||
|
case 0xFE011:
|
||||||
|
return "newmoon";
|
||||||
|
case 0xFE012:
|
||||||
|
return "moon1";
|
||||||
|
case 0xFE013:
|
||||||
|
return "moon2";
|
||||||
|
case 0xFE014:
|
||||||
|
return "moon3";
|
||||||
|
case 0xFE015:
|
||||||
|
return "fullmoon";
|
||||||
|
case 0xFE016:
|
||||||
|
return "moon2";
|
||||||
|
case 0xFE018:
|
||||||
|
return "soon";
|
||||||
|
case 0xFE019:
|
||||||
|
return "on";
|
||||||
|
case 0xFE01A:
|
||||||
|
return "end";
|
||||||
|
case 0xFE01B:
|
||||||
|
return "sandclock";
|
||||||
|
case 0xFE01C:
|
||||||
|
return "sandclock";
|
||||||
|
case 0xFE01D:
|
||||||
|
return "watch";
|
||||||
|
case 0xFE01E:
|
||||||
|
return "clock";
|
||||||
|
case 0xFE01F:
|
||||||
|
return "clock";
|
||||||
|
case 0xFE020:
|
||||||
|
return "clock";
|
||||||
|
case 0xFE021:
|
||||||
|
return "clock";
|
||||||
|
case 0xFE022:
|
||||||
|
return "clock";
|
||||||
|
case 0xFE023:
|
||||||
|
return "clock";
|
||||||
|
case 0xFE024:
|
||||||
|
return "clock";
|
||||||
|
case 0xFE025:
|
||||||
|
return "clock";
|
||||||
|
case 0xFE026:
|
||||||
|
return "clock";
|
||||||
|
case 0xFE027:
|
||||||
|
return "clock";
|
||||||
|
case 0xFE028:
|
||||||
|
return "clock";
|
||||||
|
case 0xFE029:
|
||||||
|
return "clock";
|
||||||
|
case 0xFE02A:
|
||||||
|
return "clock";
|
||||||
|
case 0xFE02B:
|
||||||
|
return "aries";
|
||||||
|
case 0xFE02C:
|
||||||
|
return "taurus";
|
||||||
|
case 0xFE02D:
|
||||||
|
return "gemini";
|
||||||
|
case 0xFE02E:
|
||||||
|
return "cancer";
|
||||||
|
case 0xFE02F:
|
||||||
|
return "leo";
|
||||||
|
case 0xFE030:
|
||||||
|
return "virgo";
|
||||||
|
case 0xFE031:
|
||||||
|
return "libra";
|
||||||
|
case 0xFE032:
|
||||||
|
return "scorpius";
|
||||||
|
case 0xFE033:
|
||||||
|
return "sagittarius";
|
||||||
|
case 0xFE034:
|
||||||
|
return "capricornus";
|
||||||
|
case 0xFE035:
|
||||||
|
return "aquarius";
|
||||||
|
case 0xFE036:
|
||||||
|
return "pisces";
|
||||||
|
case 0xFE038:
|
||||||
|
return "wave";
|
||||||
|
case 0xFE03B:
|
||||||
|
return "night";
|
||||||
|
case 0xFE03C:
|
||||||
|
return "clover";
|
||||||
|
case 0xFE03D:
|
||||||
|
return "tulip";
|
||||||
|
case 0xFE03E:
|
||||||
|
return "bud";
|
||||||
|
case 0xFE03F:
|
||||||
|
return "maple";
|
||||||
|
case 0xFE040:
|
||||||
|
return "cherryblossom";
|
||||||
|
case 0xFE042:
|
||||||
|
return "maple";
|
||||||
|
case 0xFE04E:
|
||||||
|
return "clover";
|
||||||
|
case 0xFE04F:
|
||||||
|
return "cherry";
|
||||||
|
case 0xFE050:
|
||||||
|
return "banana";
|
||||||
|
case 0xFE051:
|
||||||
|
return "apple";
|
||||||
|
case 0xFE05B:
|
||||||
|
return "apple";
|
||||||
|
case 0xFE190:
|
||||||
|
return "eye";
|
||||||
|
case 0xFE191:
|
||||||
|
return "ear";
|
||||||
|
case 0xFE193:
|
||||||
|
return "kissmark";
|
||||||
|
case 0xFE194:
|
||||||
|
return "bleah";
|
||||||
|
case 0xFE195:
|
||||||
|
return "rouge";
|
||||||
|
case 0xFE198:
|
||||||
|
return "hairsalon";
|
||||||
|
case 0xFE19A:
|
||||||
|
return "shadow";
|
||||||
|
case 0xFE19B:
|
||||||
|
return "happy01";
|
||||||
|
case 0xFE19C:
|
||||||
|
return "happy01";
|
||||||
|
case 0xFE19D:
|
||||||
|
return "happy01";
|
||||||
|
case 0xFE19E:
|
||||||
|
return "happy01";
|
||||||
|
case 0xFE1B7:
|
||||||
|
return "dog";
|
||||||
|
case 0xFE1B8:
|
||||||
|
return "cat";
|
||||||
|
case 0xFE1B9:
|
||||||
|
return "snail";
|
||||||
|
case 0xFE1BA:
|
||||||
|
return "chick";
|
||||||
|
case 0xFE1BB:
|
||||||
|
return "chick";
|
||||||
|
case 0xFE1BC:
|
||||||
|
return "penguin";
|
||||||
|
case 0xFE1BD:
|
||||||
|
return "fish";
|
||||||
|
case 0xFE1BE:
|
||||||
|
return "horse";
|
||||||
|
case 0xFE1BF:
|
||||||
|
return "pig";
|
||||||
|
case 0xFE1C8:
|
||||||
|
return "chick";
|
||||||
|
case 0xFE1C9:
|
||||||
|
return "fish";
|
||||||
|
case 0xFE1CF:
|
||||||
|
return "aries";
|
||||||
|
case 0xFE1D0:
|
||||||
|
return "dog";
|
||||||
|
case 0xFE1D8:
|
||||||
|
return "dog";
|
||||||
|
case 0xFE1D9:
|
||||||
|
return "fish";
|
||||||
|
case 0xFE1DB:
|
||||||
|
return "foot";
|
||||||
|
case 0xFE1DD:
|
||||||
|
return "chick";
|
||||||
|
case 0xFE1E0:
|
||||||
|
return "pig";
|
||||||
|
case 0xFE1E3:
|
||||||
|
return "cancer";
|
||||||
|
case 0xFE320:
|
||||||
|
return "angry";
|
||||||
|
case 0xFE321:
|
||||||
|
return "sad";
|
||||||
|
case 0xFE322:
|
||||||
|
return "wobbly";
|
||||||
|
case 0xFE323:
|
||||||
|
return "despair";
|
||||||
|
case 0xFE324:
|
||||||
|
return "wobbly";
|
||||||
|
case 0xFE325:
|
||||||
|
return "coldsweats02";
|
||||||
|
case 0xFE326:
|
||||||
|
return "gawk";
|
||||||
|
case 0xFE327:
|
||||||
|
return "lovely";
|
||||||
|
case 0xFE328:
|
||||||
|
return "smile";
|
||||||
|
case 0xFE329:
|
||||||
|
return "bleah";
|
||||||
|
case 0xFE32A:
|
||||||
|
return "bleah";
|
||||||
|
case 0xFE32B:
|
||||||
|
return "delicious";
|
||||||
|
case 0xFE32C:
|
||||||
|
return "lovely";
|
||||||
|
case 0xFE32D:
|
||||||
|
return "lovely";
|
||||||
|
case 0xFE32F:
|
||||||
|
return "happy02";
|
||||||
|
case 0xFE330:
|
||||||
|
return "happy01";
|
||||||
|
case 0xFE331:
|
||||||
|
return "coldsweats01";
|
||||||
|
case 0xFE332:
|
||||||
|
return "happy02";
|
||||||
|
case 0xFE333:
|
||||||
|
return "smile";
|
||||||
|
case 0xFE334:
|
||||||
|
return "happy02";
|
||||||
|
case 0xFE335:
|
||||||
|
return "delicious";
|
||||||
|
case 0xFE336:
|
||||||
|
return "happy01";
|
||||||
|
case 0xFE337:
|
||||||
|
return "happy01";
|
||||||
|
case 0xFE338:
|
||||||
|
return "coldsweats01";
|
||||||
|
case 0xFE339:
|
||||||
|
return "weep";
|
||||||
|
case 0xFE33A:
|
||||||
|
return "crying";
|
||||||
|
case 0xFE33B:
|
||||||
|
return "shock";
|
||||||
|
case 0xFE33C:
|
||||||
|
return "bearing";
|
||||||
|
case 0xFE33D:
|
||||||
|
return "pout";
|
||||||
|
case 0xFE33E:
|
||||||
|
return "confident";
|
||||||
|
case 0xFE33F:
|
||||||
|
return "sad";
|
||||||
|
case 0xFE340:
|
||||||
|
return "think";
|
||||||
|
case 0xFE341:
|
||||||
|
return "shock";
|
||||||
|
case 0xFE342:
|
||||||
|
return "sleepy";
|
||||||
|
case 0xFE343:
|
||||||
|
return "catface";
|
||||||
|
case 0xFE344:
|
||||||
|
return "coldsweats02";
|
||||||
|
case 0xFE345:
|
||||||
|
return "coldsweats02";
|
||||||
|
case 0xFE346:
|
||||||
|
return "bearing";
|
||||||
|
case 0xFE347:
|
||||||
|
return "wink";
|
||||||
|
case 0xFE348:
|
||||||
|
return "happy01";
|
||||||
|
case 0xFE349:
|
||||||
|
return "smile";
|
||||||
|
case 0xFE34A:
|
||||||
|
return "happy02";
|
||||||
|
case 0xFE34B:
|
||||||
|
return "lovely";
|
||||||
|
case 0xFE34C:
|
||||||
|
return "lovely";
|
||||||
|
case 0xFE34D:
|
||||||
|
return "weep";
|
||||||
|
case 0xFE34E:
|
||||||
|
return "pout";
|
||||||
|
case 0xFE34F:
|
||||||
|
return "smile";
|
||||||
|
case 0xFE350:
|
||||||
|
return "sad";
|
||||||
|
case 0xFE351:
|
||||||
|
return "ng";
|
||||||
|
case 0xFE352:
|
||||||
|
return "ok";
|
||||||
|
case 0xFE357:
|
||||||
|
return "paper";
|
||||||
|
case 0xFE359:
|
||||||
|
return "sad";
|
||||||
|
case 0xFE35A:
|
||||||
|
return "angry";
|
||||||
|
case 0xFE4B0:
|
||||||
|
return "house";
|
||||||
|
case 0xFE4B1:
|
||||||
|
return "house";
|
||||||
|
case 0xFE4B2:
|
||||||
|
return "building";
|
||||||
|
case 0xFE4B3:
|
||||||
|
return "postoffice";
|
||||||
|
case 0xFE4B4:
|
||||||
|
return "hospital";
|
||||||
|
case 0xFE4B5:
|
||||||
|
return "bank";
|
||||||
|
case 0xFE4B6:
|
||||||
|
return "atm";
|
||||||
|
case 0xFE4B7:
|
||||||
|
return "hotel";
|
||||||
|
case 0xFE4B9:
|
||||||
|
return "24hours";
|
||||||
|
case 0xFE4BA:
|
||||||
|
return "school";
|
||||||
|
case 0xFE4C1:
|
||||||
|
return "ship";
|
||||||
|
case 0xFE4C2:
|
||||||
|
return "bottle";
|
||||||
|
case 0xFE4C3:
|
||||||
|
return "fuji";
|
||||||
|
case 0xFE4C9:
|
||||||
|
return "wrench";
|
||||||
|
case 0xFE4CC:
|
||||||
|
return "shoe";
|
||||||
|
case 0xFE4CD:
|
||||||
|
return "shoe";
|
||||||
|
case 0xFE4CE:
|
||||||
|
return "eyeglass";
|
||||||
|
case 0xFE4CF:
|
||||||
|
return "t-shirt";
|
||||||
|
case 0xFE4D0:
|
||||||
|
return "denim";
|
||||||
|
case 0xFE4D1:
|
||||||
|
return "crown";
|
||||||
|
case 0xFE4D2:
|
||||||
|
return "crown";
|
||||||
|
case 0xFE4D6:
|
||||||
|
return "boutique";
|
||||||
|
case 0xFE4D7:
|
||||||
|
return "boutique";
|
||||||
|
case 0xFE4DB:
|
||||||
|
return "t-shirt";
|
||||||
|
case 0xFE4DC:
|
||||||
|
return "moneybag";
|
||||||
|
case 0xFE4DD:
|
||||||
|
return "dollar";
|
||||||
|
case 0xFE4E0:
|
||||||
|
return "dollar";
|
||||||
|
case 0xFE4E2:
|
||||||
|
return "yen";
|
||||||
|
case 0xFE4E3:
|
||||||
|
return "dollar";
|
||||||
|
case 0xFE4EF:
|
||||||
|
return "camera";
|
||||||
|
case 0xFE4F0:
|
||||||
|
return "bag";
|
||||||
|
case 0xFE4F1:
|
||||||
|
return "pouch";
|
||||||
|
case 0xFE4F2:
|
||||||
|
return "bell";
|
||||||
|
case 0xFE4F3:
|
||||||
|
return "door";
|
||||||
|
case 0xFE4F9:
|
||||||
|
return "movie";
|
||||||
|
case 0xFE4FB:
|
||||||
|
return "flair";
|
||||||
|
case 0xFE4FD:
|
||||||
|
return "sign05";
|
||||||
|
case 0xFE4FF:
|
||||||
|
return "book";
|
||||||
|
case 0xFE500:
|
||||||
|
return "book";
|
||||||
|
case 0xFE501:
|
||||||
|
return "book";
|
||||||
|
case 0xFE502:
|
||||||
|
return "book";
|
||||||
|
case 0xFE503:
|
||||||
|
return "book";
|
||||||
|
case 0xFE505:
|
||||||
|
return "spa";
|
||||||
|
case 0xFE506:
|
||||||
|
return "toilet";
|
||||||
|
case 0xFE507:
|
||||||
|
return "toilet";
|
||||||
|
case 0xFE508:
|
||||||
|
return "toilet";
|
||||||
|
case 0xFE50F:
|
||||||
|
return "ribbon";
|
||||||
|
case 0xFE510:
|
||||||
|
return "present";
|
||||||
|
case 0xFE511:
|
||||||
|
return "birthday";
|
||||||
|
case 0xFE512:
|
||||||
|
return "xmas";
|
||||||
|
case 0xFE522:
|
||||||
|
return "pocketbell";
|
||||||
|
case 0xFE523:
|
||||||
|
return "telephone";
|
||||||
|
case 0xFE524:
|
||||||
|
return "telephone";
|
||||||
|
case 0xFE525:
|
||||||
|
return "mobilephone";
|
||||||
|
case 0xFE526:
|
||||||
|
return "phoneto";
|
||||||
|
case 0xFE527:
|
||||||
|
return "memo";
|
||||||
|
case 0xFE528:
|
||||||
|
return "faxto";
|
||||||
|
case 0xFE529:
|
||||||
|
return "mail";
|
||||||
|
case 0xFE52A:
|
||||||
|
return "mailto";
|
||||||
|
case 0xFE52B:
|
||||||
|
return "mailto";
|
||||||
|
case 0xFE52C:
|
||||||
|
return "postoffice";
|
||||||
|
case 0xFE52D:
|
||||||
|
return "postoffice";
|
||||||
|
case 0xFE52E:
|
||||||
|
return "postoffice";
|
||||||
|
case 0xFE535:
|
||||||
|
return "present";
|
||||||
|
case 0xFE536:
|
||||||
|
return "pen";
|
||||||
|
case 0xFE537:
|
||||||
|
return "chair";
|
||||||
|
case 0xFE538:
|
||||||
|
return "pc";
|
||||||
|
case 0xFE539:
|
||||||
|
return "pencil";
|
||||||
|
case 0xFE53A:
|
||||||
|
return "clip";
|
||||||
|
case 0xFE53B:
|
||||||
|
return "bag";
|
||||||
|
case 0xFE53E:
|
||||||
|
return "hairsalon";
|
||||||
|
case 0xFE540:
|
||||||
|
return "memo";
|
||||||
|
case 0xFE541:
|
||||||
|
return "memo";
|
||||||
|
case 0xFE545:
|
||||||
|
return "book";
|
||||||
|
case 0xFE546:
|
||||||
|
return "book";
|
||||||
|
case 0xFE547:
|
||||||
|
return "book";
|
||||||
|
case 0xFE548:
|
||||||
|
return "memo";
|
||||||
|
case 0xFE54D:
|
||||||
|
return "book";
|
||||||
|
case 0xFE54F:
|
||||||
|
return "book";
|
||||||
|
case 0xFE552:
|
||||||
|
return "memo";
|
||||||
|
case 0xFE553:
|
||||||
|
return "foot";
|
||||||
|
case 0xFE7D0:
|
||||||
|
return "sports";
|
||||||
|
case 0xFE7D1:
|
||||||
|
return "baseball";
|
||||||
|
case 0xFE7D2:
|
||||||
|
return "golf";
|
||||||
|
case 0xFE7D3:
|
||||||
|
return "tennis";
|
||||||
|
case 0xFE7D4:
|
||||||
|
return "soccer";
|
||||||
|
case 0xFE7D5:
|
||||||
|
return "ski";
|
||||||
|
case 0xFE7D6:
|
||||||
|
return "basketball";
|
||||||
|
case 0xFE7D7:
|
||||||
|
return "motorsports";
|
||||||
|
case 0xFE7D8:
|
||||||
|
return "snowboard";
|
||||||
|
case 0xFE7D9:
|
||||||
|
return "run";
|
||||||
|
case 0xFE7DA:
|
||||||
|
return "snowboard";
|
||||||
|
case 0xFE7DC:
|
||||||
|
return "horse";
|
||||||
|
case 0xFE7DF:
|
||||||
|
return "train";
|
||||||
|
case 0xFE7E0:
|
||||||
|
return "subway";
|
||||||
|
case 0xFE7E1:
|
||||||
|
return "subway";
|
||||||
|
case 0xFE7E2:
|
||||||
|
return "bullettrain";
|
||||||
|
case 0xFE7E3:
|
||||||
|
return "bullettrain";
|
||||||
|
case 0xFE7E4:
|
||||||
|
return "car";
|
||||||
|
case 0xFE7E5:
|
||||||
|
return "rvcar";
|
||||||
|
case 0xFE7E6:
|
||||||
|
return "bus";
|
||||||
|
case 0xFE7E8:
|
||||||
|
return "ship";
|
||||||
|
case 0xFE7E9:
|
||||||
|
return "airplane";
|
||||||
|
case 0xFE7EA:
|
||||||
|
return "yacht";
|
||||||
|
case 0xFE7EB:
|
||||||
|
return "bicycle";
|
||||||
|
case 0xFE7EE:
|
||||||
|
return "yacht";
|
||||||
|
case 0xFE7EF:
|
||||||
|
return "car";
|
||||||
|
case 0xFE7F0:
|
||||||
|
return "run";
|
||||||
|
case 0xFE7F5:
|
||||||
|
return "gasstation";
|
||||||
|
case 0xFE7F6:
|
||||||
|
return "parking";
|
||||||
|
case 0xFE7F7:
|
||||||
|
return "signaler";
|
||||||
|
case 0xFE7FA:
|
||||||
|
return "spa";
|
||||||
|
case 0xFE7FC:
|
||||||
|
return "carouselpony";
|
||||||
|
case 0xFE7FF:
|
||||||
|
return "fish";
|
||||||
|
case 0xFE800:
|
||||||
|
return "karaoke";
|
||||||
|
case 0xFE801:
|
||||||
|
return "movie";
|
||||||
|
case 0xFE802:
|
||||||
|
return "movie";
|
||||||
|
case 0xFE803:
|
||||||
|
return "music";
|
||||||
|
case 0xFE804:
|
||||||
|
return "art";
|
||||||
|
case 0xFE805:
|
||||||
|
return "drama";
|
||||||
|
case 0xFE806:
|
||||||
|
return "event";
|
||||||
|
case 0xFE807:
|
||||||
|
return "ticket";
|
||||||
|
case 0xFE808:
|
||||||
|
return "slate";
|
||||||
|
case 0xFE809:
|
||||||
|
return "drama";
|
||||||
|
case 0xFE80A:
|
||||||
|
return "game";
|
||||||
|
case 0xFE813:
|
||||||
|
return "note";
|
||||||
|
case 0xFE814:
|
||||||
|
return "notes";
|
||||||
|
case 0xFE81A:
|
||||||
|
return "notes";
|
||||||
|
case 0xFE81C:
|
||||||
|
return "tv";
|
||||||
|
case 0xFE81D:
|
||||||
|
return "cd";
|
||||||
|
case 0xFE81E:
|
||||||
|
return "cd";
|
||||||
|
case 0xFE823:
|
||||||
|
return "kissmark";
|
||||||
|
case 0xFE824:
|
||||||
|
return "loveletter";
|
||||||
|
case 0xFE825:
|
||||||
|
return "ring";
|
||||||
|
case 0xFE826:
|
||||||
|
return "ring";
|
||||||
|
case 0xFE827:
|
||||||
|
return "kissmark";
|
||||||
|
case 0xFE829:
|
||||||
|
return "heart02";
|
||||||
|
case 0xFE82B:
|
||||||
|
return "freedial";
|
||||||
|
case 0xFE82C:
|
||||||
|
return "sharp";
|
||||||
|
case 0xFE82D:
|
||||||
|
return "mobaq";
|
||||||
|
case 0xFE82E:
|
||||||
|
return "one";
|
||||||
|
case 0xFE82F:
|
||||||
|
return "two";
|
||||||
|
case 0xFE830:
|
||||||
|
return "three";
|
||||||
|
case 0xFE831:
|
||||||
|
return "four";
|
||||||
|
case 0xFE832:
|
||||||
|
return "five";
|
||||||
|
case 0xFE833:
|
||||||
|
return "six";
|
||||||
|
case 0xFE834:
|
||||||
|
return "seven";
|
||||||
|
case 0xFE835:
|
||||||
|
return "eight";
|
||||||
|
case 0xFE836:
|
||||||
|
return "nine";
|
||||||
|
case 0xFE837:
|
||||||
|
return "zero";
|
||||||
|
case 0xFE960:
|
||||||
|
return "fastfood";
|
||||||
|
case 0xFE961:
|
||||||
|
return "riceball";
|
||||||
|
case 0xFE962:
|
||||||
|
return "cake";
|
||||||
|
case 0xFE963:
|
||||||
|
return "noodle";
|
||||||
|
case 0xFE964:
|
||||||
|
return "bread";
|
||||||
|
case 0xFE96A:
|
||||||
|
return "noodle";
|
||||||
|
case 0xFE973:
|
||||||
|
return "typhoon";
|
||||||
|
case 0xFE980:
|
||||||
|
return "restaurant";
|
||||||
|
case 0xFE981:
|
||||||
|
return "cafe";
|
||||||
|
case 0xFE982:
|
||||||
|
return "bar";
|
||||||
|
case 0xFE983:
|
||||||
|
return "beer";
|
||||||
|
case 0xFE984:
|
||||||
|
return "japanesetea";
|
||||||
|
case 0xFE985:
|
||||||
|
return "bottle";
|
||||||
|
case 0xFE986:
|
||||||
|
return "wine";
|
||||||
|
case 0xFE987:
|
||||||
|
return "beer";
|
||||||
|
case 0xFE988:
|
||||||
|
return "bar";
|
||||||
|
case 0xFEAF0:
|
||||||
|
return "upwardright";
|
||||||
|
case 0xFEAF1:
|
||||||
|
return "downwardright";
|
||||||
|
case 0xFEAF2:
|
||||||
|
return "upwardleft";
|
||||||
|
case 0xFEAF3:
|
||||||
|
return "downwardleft";
|
||||||
|
case 0xFEAF4:
|
||||||
|
return "up";
|
||||||
|
case 0xFEAF5:
|
||||||
|
return "down";
|
||||||
|
case 0xFEAF6:
|
||||||
|
return "leftright";
|
||||||
|
case 0xFEAF7:
|
||||||
|
return "updown";
|
||||||
|
case 0xFEB04:
|
||||||
|
return "sign01";
|
||||||
|
case 0xFEB05:
|
||||||
|
return "sign02";
|
||||||
|
case 0xFEB06:
|
||||||
|
return "sign03";
|
||||||
|
case 0xFEB07:
|
||||||
|
return "sign04";
|
||||||
|
case 0xFEB08:
|
||||||
|
return "sign05";
|
||||||
|
case 0xFEB0B:
|
||||||
|
return "sign01";
|
||||||
|
case 0xFEB0C:
|
||||||
|
return "heart01";
|
||||||
|
case 0xFEB0D:
|
||||||
|
return "heart02";
|
||||||
|
case 0xFEB0E:
|
||||||
|
return "heart03";
|
||||||
|
case 0xFEB0F:
|
||||||
|
return "heart04";
|
||||||
|
case 0xFEB10:
|
||||||
|
return "heart01";
|
||||||
|
case 0xFEB11:
|
||||||
|
return "heart02";
|
||||||
|
case 0xFEB12:
|
||||||
|
return "heart01";
|
||||||
|
case 0xFEB13:
|
||||||
|
return "heart01";
|
||||||
|
case 0xFEB14:
|
||||||
|
return "heart01";
|
||||||
|
case 0xFEB15:
|
||||||
|
return "heart01";
|
||||||
|
case 0xFEB16:
|
||||||
|
return "heart01";
|
||||||
|
case 0xFEB17:
|
||||||
|
return "heart01";
|
||||||
|
case 0xFEB18:
|
||||||
|
return "heart02";
|
||||||
|
case 0xFEB19:
|
||||||
|
return "cute";
|
||||||
|
case 0xFEB1A:
|
||||||
|
return "heart";
|
||||||
|
case 0xFEB1B:
|
||||||
|
return "spade";
|
||||||
|
case 0xFEB1C:
|
||||||
|
return "diamond";
|
||||||
|
case 0xFEB1D:
|
||||||
|
return "club";
|
||||||
|
case 0xFEB1E:
|
||||||
|
return "smoking";
|
||||||
|
case 0xFEB1F:
|
||||||
|
return "nosmoking";
|
||||||
|
case 0xFEB20:
|
||||||
|
return "wheelchair";
|
||||||
|
case 0xFEB21:
|
||||||
|
return "free";
|
||||||
|
case 0xFEB22:
|
||||||
|
return "flag";
|
||||||
|
case 0xFEB23:
|
||||||
|
return "danger";
|
||||||
|
case 0xFEB26:
|
||||||
|
return "ng";
|
||||||
|
case 0xFEB27:
|
||||||
|
return "ok";
|
||||||
|
case 0xFEB28:
|
||||||
|
return "ng";
|
||||||
|
case 0xFEB29:
|
||||||
|
return "copyright";
|
||||||
|
case 0xFEB2A:
|
||||||
|
return "tm";
|
||||||
|
case 0xFEB2B:
|
||||||
|
return "secret";
|
||||||
|
case 0xFEB2C:
|
||||||
|
return "recycle";
|
||||||
|
case 0xFEB2D:
|
||||||
|
return "r-mark";
|
||||||
|
case 0xFEB2E:
|
||||||
|
return "ban";
|
||||||
|
case 0xFEB2F:
|
||||||
|
return "empty";
|
||||||
|
case 0xFEB30:
|
||||||
|
return "pass";
|
||||||
|
case 0xFEB31:
|
||||||
|
return "full";
|
||||||
|
case 0xFEB36:
|
||||||
|
return "new";
|
||||||
|
case 0xFEB44:
|
||||||
|
return "fullmoon";
|
||||||
|
case 0xFEB48:
|
||||||
|
return "ban";
|
||||||
|
case 0xFEB55:
|
||||||
|
return "cute";
|
||||||
|
case 0xFEB56:
|
||||||
|
return "flair";
|
||||||
|
case 0xFEB57:
|
||||||
|
return "annoy";
|
||||||
|
case 0xFEB58:
|
||||||
|
return "bomb";
|
||||||
|
case 0xFEB59:
|
||||||
|
return "sleepy";
|
||||||
|
case 0xFEB5A:
|
||||||
|
return "impact";
|
||||||
|
case 0xFEB5B:
|
||||||
|
return "sweat01";
|
||||||
|
case 0xFEB5C:
|
||||||
|
return "sweat02";
|
||||||
|
case 0xFEB5D:
|
||||||
|
return "dash";
|
||||||
|
case 0xFEB5F:
|
||||||
|
return "sad";
|
||||||
|
case 0xFEB60:
|
||||||
|
return "shine";
|
||||||
|
case 0xFEB61:
|
||||||
|
return "cute";
|
||||||
|
case 0xFEB62:
|
||||||
|
return "cute";
|
||||||
|
case 0xFEB63:
|
||||||
|
return "newmoon";
|
||||||
|
case 0xFEB64:
|
||||||
|
return "newmoon";
|
||||||
|
case 0xFEB65:
|
||||||
|
return "newmoon";
|
||||||
|
case 0xFEB66:
|
||||||
|
return "newmoon";
|
||||||
|
case 0xFEB67:
|
||||||
|
return "newmoon";
|
||||||
|
case 0xFEB77:
|
||||||
|
return "shine";
|
||||||
|
case 0xFEB81:
|
||||||
|
return "id";
|
||||||
|
case 0xFEB82:
|
||||||
|
return "key";
|
||||||
|
case 0xFEB83:
|
||||||
|
return "enter";
|
||||||
|
case 0xFEB84:
|
||||||
|
return "clear";
|
||||||
|
case 0xFEB85:
|
||||||
|
return "search";
|
||||||
|
case 0xFEB86:
|
||||||
|
return "key";
|
||||||
|
case 0xFEB87:
|
||||||
|
return "key";
|
||||||
|
case 0xFEB8A:
|
||||||
|
return "key";
|
||||||
|
case 0xFEB8D:
|
||||||
|
return "search";
|
||||||
|
case 0xFEB90:
|
||||||
|
return "key";
|
||||||
|
case 0xFEB91:
|
||||||
|
return "recycle";
|
||||||
|
case 0xFEB92:
|
||||||
|
return "mail";
|
||||||
|
case 0xFEB93:
|
||||||
|
return "rock";
|
||||||
|
case 0xFEB94:
|
||||||
|
return "scissors";
|
||||||
|
case 0xFEB95:
|
||||||
|
return "paper";
|
||||||
|
case 0xFEB96:
|
||||||
|
return "punch";
|
||||||
|
case 0xFEB97:
|
||||||
|
return "good";
|
||||||
|
case 0xFEB9D:
|
||||||
|
return "paper";
|
||||||
|
case 0xFEB9F:
|
||||||
|
return "ok";
|
||||||
|
case 0xFEBA0:
|
||||||
|
return "down";
|
||||||
|
case 0xFEBA1:
|
||||||
|
return "paper";
|
||||||
|
case 0xFEE10:
|
||||||
|
return "info01";
|
||||||
|
case 0xFEE11:
|
||||||
|
return "info02";
|
||||||
|
case 0xFEE12:
|
||||||
|
return "by-d";
|
||||||
|
case 0xFEE13:
|
||||||
|
return "d-point";
|
||||||
|
case 0xFEE14:
|
||||||
|
return "appli01";
|
||||||
|
case 0xFEE15:
|
||||||
|
return "appli02";
|
||||||
|
case 0xFEE1C:
|
||||||
|
return "movie";
|
||||||
|
default:
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
private static String htmlifyMessageHeader()
|
private static String htmlifyMessageHeader()
|
||||||
{
|
{
|
||||||
if (K9.messageViewFixedWidthFont())
|
if (K9.messageViewFixedWidthFont())
|
||||||
|
@ -3218,877 +3218,11 @@ public class LocalStore extends Store implements Serializable
|
|||||||
html = HtmlConverter.textToHtml(text);
|
html = HtmlConverter.textToHtml(text);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (hasEmoji(html))
|
html = HtmlConverter.convertEmoji2Img(html);
|
||||||
html = convertEmoji2Img(html);
|
|
||||||
|
|
||||||
return html;
|
return html;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
* Lightweight method to check whether the message contains emoji or not.
|
|
||||||
* Useful to avoid calling the heavyweight convertEmoji2Img method.
|
|
||||||
* We don't use String.codePointAt here for performance reasons.
|
|
||||||
*/
|
|
||||||
private boolean hasEmoji(String html)
|
|
||||||
{
|
|
||||||
for (int i = 0; i < html.length(); ++i)
|
|
||||||
{
|
|
||||||
char c = html.charAt(i);
|
|
||||||
if (c >= 0xDBB8 && c < 0xDBBC)
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String convertEmoji2Img(String html)
|
|
||||||
{
|
|
||||||
StringBuilder buff = new StringBuilder(html.length() + 512);
|
|
||||||
for (int i = 0; i < html.length(); i = html.offsetByCodePoints(i, 1))
|
|
||||||
{
|
|
||||||
int codePoint = html.codePointAt(i);
|
|
||||||
String emoji = getEmojiForCodePoint(codePoint);
|
|
||||||
if (emoji != null)
|
|
||||||
buff.append("<img src=\"file:///android_asset/emoticons/" + emoji + ".gif\" alt=\"" + emoji + "\" />");
|
|
||||||
else
|
|
||||||
buff.appendCodePoint(codePoint);
|
|
||||||
|
|
||||||
}
|
|
||||||
return buff.toString();
|
|
||||||
}
|
|
||||||
private String getEmojiForCodePoint(int codePoint)
|
|
||||||
{
|
|
||||||
// Derived from http://code.google.com/p/emoji4unicode/source/browse/trunk/data/emoji4unicode.xml
|
|
||||||
// XXX: This doesn't cover all the characters. More emoticons are wanted.
|
|
||||||
switch (codePoint)
|
|
||||||
{
|
|
||||||
case 0xFE000:
|
|
||||||
return "sun";
|
|
||||||
case 0xFE001:
|
|
||||||
return "cloud";
|
|
||||||
case 0xFE002:
|
|
||||||
return "rain";
|
|
||||||
case 0xFE003:
|
|
||||||
return "snow";
|
|
||||||
case 0xFE004:
|
|
||||||
return "thunder";
|
|
||||||
case 0xFE005:
|
|
||||||
return "typhoon";
|
|
||||||
case 0xFE006:
|
|
||||||
return "mist";
|
|
||||||
case 0xFE007:
|
|
||||||
return "sprinkle";
|
|
||||||
case 0xFE008:
|
|
||||||
return "night";
|
|
||||||
case 0xFE009:
|
|
||||||
return "sun";
|
|
||||||
case 0xFE00A:
|
|
||||||
return "sun";
|
|
||||||
case 0xFE00C:
|
|
||||||
return "sun";
|
|
||||||
case 0xFE010:
|
|
||||||
return "night";
|
|
||||||
case 0xFE011:
|
|
||||||
return "newmoon";
|
|
||||||
case 0xFE012:
|
|
||||||
return "moon1";
|
|
||||||
case 0xFE013:
|
|
||||||
return "moon2";
|
|
||||||
case 0xFE014:
|
|
||||||
return "moon3";
|
|
||||||
case 0xFE015:
|
|
||||||
return "fullmoon";
|
|
||||||
case 0xFE016:
|
|
||||||
return "moon2";
|
|
||||||
case 0xFE018:
|
|
||||||
return "soon";
|
|
||||||
case 0xFE019:
|
|
||||||
return "on";
|
|
||||||
case 0xFE01A:
|
|
||||||
return "end";
|
|
||||||
case 0xFE01B:
|
|
||||||
return "sandclock";
|
|
||||||
case 0xFE01C:
|
|
||||||
return "sandclock";
|
|
||||||
case 0xFE01D:
|
|
||||||
return "watch";
|
|
||||||
case 0xFE01E:
|
|
||||||
return "clock";
|
|
||||||
case 0xFE01F:
|
|
||||||
return "clock";
|
|
||||||
case 0xFE020:
|
|
||||||
return "clock";
|
|
||||||
case 0xFE021:
|
|
||||||
return "clock";
|
|
||||||
case 0xFE022:
|
|
||||||
return "clock";
|
|
||||||
case 0xFE023:
|
|
||||||
return "clock";
|
|
||||||
case 0xFE024:
|
|
||||||
return "clock";
|
|
||||||
case 0xFE025:
|
|
||||||
return "clock";
|
|
||||||
case 0xFE026:
|
|
||||||
return "clock";
|
|
||||||
case 0xFE027:
|
|
||||||
return "clock";
|
|
||||||
case 0xFE028:
|
|
||||||
return "clock";
|
|
||||||
case 0xFE029:
|
|
||||||
return "clock";
|
|
||||||
case 0xFE02A:
|
|
||||||
return "clock";
|
|
||||||
case 0xFE02B:
|
|
||||||
return "aries";
|
|
||||||
case 0xFE02C:
|
|
||||||
return "taurus";
|
|
||||||
case 0xFE02D:
|
|
||||||
return "gemini";
|
|
||||||
case 0xFE02E:
|
|
||||||
return "cancer";
|
|
||||||
case 0xFE02F:
|
|
||||||
return "leo";
|
|
||||||
case 0xFE030:
|
|
||||||
return "virgo";
|
|
||||||
case 0xFE031:
|
|
||||||
return "libra";
|
|
||||||
case 0xFE032:
|
|
||||||
return "scorpius";
|
|
||||||
case 0xFE033:
|
|
||||||
return "sagittarius";
|
|
||||||
case 0xFE034:
|
|
||||||
return "capricornus";
|
|
||||||
case 0xFE035:
|
|
||||||
return "aquarius";
|
|
||||||
case 0xFE036:
|
|
||||||
return "pisces";
|
|
||||||
case 0xFE038:
|
|
||||||
return "wave";
|
|
||||||
case 0xFE03B:
|
|
||||||
return "night";
|
|
||||||
case 0xFE03C:
|
|
||||||
return "clover";
|
|
||||||
case 0xFE03D:
|
|
||||||
return "tulip";
|
|
||||||
case 0xFE03E:
|
|
||||||
return "bud";
|
|
||||||
case 0xFE03F:
|
|
||||||
return "maple";
|
|
||||||
case 0xFE040:
|
|
||||||
return "cherryblossom";
|
|
||||||
case 0xFE042:
|
|
||||||
return "maple";
|
|
||||||
case 0xFE04E:
|
|
||||||
return "clover";
|
|
||||||
case 0xFE04F:
|
|
||||||
return "cherry";
|
|
||||||
case 0xFE050:
|
|
||||||
return "banana";
|
|
||||||
case 0xFE051:
|
|
||||||
return "apple";
|
|
||||||
case 0xFE05B:
|
|
||||||
return "apple";
|
|
||||||
case 0xFE190:
|
|
||||||
return "eye";
|
|
||||||
case 0xFE191:
|
|
||||||
return "ear";
|
|
||||||
case 0xFE193:
|
|
||||||
return "kissmark";
|
|
||||||
case 0xFE194:
|
|
||||||
return "bleah";
|
|
||||||
case 0xFE195:
|
|
||||||
return "rouge";
|
|
||||||
case 0xFE198:
|
|
||||||
return "hairsalon";
|
|
||||||
case 0xFE19A:
|
|
||||||
return "shadow";
|
|
||||||
case 0xFE19B:
|
|
||||||
return "happy01";
|
|
||||||
case 0xFE19C:
|
|
||||||
return "happy01";
|
|
||||||
case 0xFE19D:
|
|
||||||
return "happy01";
|
|
||||||
case 0xFE19E:
|
|
||||||
return "happy01";
|
|
||||||
case 0xFE1B7:
|
|
||||||
return "dog";
|
|
||||||
case 0xFE1B8:
|
|
||||||
return "cat";
|
|
||||||
case 0xFE1B9:
|
|
||||||
return "snail";
|
|
||||||
case 0xFE1BA:
|
|
||||||
return "chick";
|
|
||||||
case 0xFE1BB:
|
|
||||||
return "chick";
|
|
||||||
case 0xFE1BC:
|
|
||||||
return "penguin";
|
|
||||||
case 0xFE1BD:
|
|
||||||
return "fish";
|
|
||||||
case 0xFE1BE:
|
|
||||||
return "horse";
|
|
||||||
case 0xFE1BF:
|
|
||||||
return "pig";
|
|
||||||
case 0xFE1C8:
|
|
||||||
return "chick";
|
|
||||||
case 0xFE1C9:
|
|
||||||
return "fish";
|
|
||||||
case 0xFE1CF:
|
|
||||||
return "aries";
|
|
||||||
case 0xFE1D0:
|
|
||||||
return "dog";
|
|
||||||
case 0xFE1D8:
|
|
||||||
return "dog";
|
|
||||||
case 0xFE1D9:
|
|
||||||
return "fish";
|
|
||||||
case 0xFE1DB:
|
|
||||||
return "foot";
|
|
||||||
case 0xFE1DD:
|
|
||||||
return "chick";
|
|
||||||
case 0xFE1E0:
|
|
||||||
return "pig";
|
|
||||||
case 0xFE1E3:
|
|
||||||
return "cancer";
|
|
||||||
case 0xFE320:
|
|
||||||
return "angry";
|
|
||||||
case 0xFE321:
|
|
||||||
return "sad";
|
|
||||||
case 0xFE322:
|
|
||||||
return "wobbly";
|
|
||||||
case 0xFE323:
|
|
||||||
return "despair";
|
|
||||||
case 0xFE324:
|
|
||||||
return "wobbly";
|
|
||||||
case 0xFE325:
|
|
||||||
return "coldsweats02";
|
|
||||||
case 0xFE326:
|
|
||||||
return "gawk";
|
|
||||||
case 0xFE327:
|
|
||||||
return "lovely";
|
|
||||||
case 0xFE328:
|
|
||||||
return "smile";
|
|
||||||
case 0xFE329:
|
|
||||||
return "bleah";
|
|
||||||
case 0xFE32A:
|
|
||||||
return "bleah";
|
|
||||||
case 0xFE32B:
|
|
||||||
return "delicious";
|
|
||||||
case 0xFE32C:
|
|
||||||
return "lovely";
|
|
||||||
case 0xFE32D:
|
|
||||||
return "lovely";
|
|
||||||
case 0xFE32F:
|
|
||||||
return "happy02";
|
|
||||||
case 0xFE330:
|
|
||||||
return "happy01";
|
|
||||||
case 0xFE331:
|
|
||||||
return "coldsweats01";
|
|
||||||
case 0xFE332:
|
|
||||||
return "happy02";
|
|
||||||
case 0xFE333:
|
|
||||||
return "smile";
|
|
||||||
case 0xFE334:
|
|
||||||
return "happy02";
|
|
||||||
case 0xFE335:
|
|
||||||
return "delicious";
|
|
||||||
case 0xFE336:
|
|
||||||
return "happy01";
|
|
||||||
case 0xFE337:
|
|
||||||
return "happy01";
|
|
||||||
case 0xFE338:
|
|
||||||
return "coldsweats01";
|
|
||||||
case 0xFE339:
|
|
||||||
return "weep";
|
|
||||||
case 0xFE33A:
|
|
||||||
return "crying";
|
|
||||||
case 0xFE33B:
|
|
||||||
return "shock";
|
|
||||||
case 0xFE33C:
|
|
||||||
return "bearing";
|
|
||||||
case 0xFE33D:
|
|
||||||
return "pout";
|
|
||||||
case 0xFE33E:
|
|
||||||
return "confident";
|
|
||||||
case 0xFE33F:
|
|
||||||
return "sad";
|
|
||||||
case 0xFE340:
|
|
||||||
return "think";
|
|
||||||
case 0xFE341:
|
|
||||||
return "shock";
|
|
||||||
case 0xFE342:
|
|
||||||
return "sleepy";
|
|
||||||
case 0xFE343:
|
|
||||||
return "catface";
|
|
||||||
case 0xFE344:
|
|
||||||
return "coldsweats02";
|
|
||||||
case 0xFE345:
|
|
||||||
return "coldsweats02";
|
|
||||||
case 0xFE346:
|
|
||||||
return "bearing";
|
|
||||||
case 0xFE347:
|
|
||||||
return "wink";
|
|
||||||
case 0xFE348:
|
|
||||||
return "happy01";
|
|
||||||
case 0xFE349:
|
|
||||||
return "smile";
|
|
||||||
case 0xFE34A:
|
|
||||||
return "happy02";
|
|
||||||
case 0xFE34B:
|
|
||||||
return "lovely";
|
|
||||||
case 0xFE34C:
|
|
||||||
return "lovely";
|
|
||||||
case 0xFE34D:
|
|
||||||
return "weep";
|
|
||||||
case 0xFE34E:
|
|
||||||
return "pout";
|
|
||||||
case 0xFE34F:
|
|
||||||
return "smile";
|
|
||||||
case 0xFE350:
|
|
||||||
return "sad";
|
|
||||||
case 0xFE351:
|
|
||||||
return "ng";
|
|
||||||
case 0xFE352:
|
|
||||||
return "ok";
|
|
||||||
case 0xFE357:
|
|
||||||
return "paper";
|
|
||||||
case 0xFE359:
|
|
||||||
return "sad";
|
|
||||||
case 0xFE35A:
|
|
||||||
return "angry";
|
|
||||||
case 0xFE4B0:
|
|
||||||
return "house";
|
|
||||||
case 0xFE4B1:
|
|
||||||
return "house";
|
|
||||||
case 0xFE4B2:
|
|
||||||
return "building";
|
|
||||||
case 0xFE4B3:
|
|
||||||
return "postoffice";
|
|
||||||
case 0xFE4B4:
|
|
||||||
return "hospital";
|
|
||||||
case 0xFE4B5:
|
|
||||||
return "bank";
|
|
||||||
case 0xFE4B6:
|
|
||||||
return "atm";
|
|
||||||
case 0xFE4B7:
|
|
||||||
return "hotel";
|
|
||||||
case 0xFE4B9:
|
|
||||||
return "24hours";
|
|
||||||
case 0xFE4BA:
|
|
||||||
return "school";
|
|
||||||
case 0xFE4C1:
|
|
||||||
return "ship";
|
|
||||||
case 0xFE4C2:
|
|
||||||
return "bottle";
|
|
||||||
case 0xFE4C3:
|
|
||||||
return "fuji";
|
|
||||||
case 0xFE4C9:
|
|
||||||
return "wrench";
|
|
||||||
case 0xFE4CC:
|
|
||||||
return "shoe";
|
|
||||||
case 0xFE4CD:
|
|
||||||
return "shoe";
|
|
||||||
case 0xFE4CE:
|
|
||||||
return "eyeglass";
|
|
||||||
case 0xFE4CF:
|
|
||||||
return "t-shirt";
|
|
||||||
case 0xFE4D0:
|
|
||||||
return "denim";
|
|
||||||
case 0xFE4D1:
|
|
||||||
return "crown";
|
|
||||||
case 0xFE4D2:
|
|
||||||
return "crown";
|
|
||||||
case 0xFE4D6:
|
|
||||||
return "boutique";
|
|
||||||
case 0xFE4D7:
|
|
||||||
return "boutique";
|
|
||||||
case 0xFE4DB:
|
|
||||||
return "t-shirt";
|
|
||||||
case 0xFE4DC:
|
|
||||||
return "moneybag";
|
|
||||||
case 0xFE4DD:
|
|
||||||
return "dollar";
|
|
||||||
case 0xFE4E0:
|
|
||||||
return "dollar";
|
|
||||||
case 0xFE4E2:
|
|
||||||
return "yen";
|
|
||||||
case 0xFE4E3:
|
|
||||||
return "dollar";
|
|
||||||
case 0xFE4EF:
|
|
||||||
return "camera";
|
|
||||||
case 0xFE4F0:
|
|
||||||
return "bag";
|
|
||||||
case 0xFE4F1:
|
|
||||||
return "pouch";
|
|
||||||
case 0xFE4F2:
|
|
||||||
return "bell";
|
|
||||||
case 0xFE4F3:
|
|
||||||
return "door";
|
|
||||||
case 0xFE4F9:
|
|
||||||
return "movie";
|
|
||||||
case 0xFE4FB:
|
|
||||||
return "flair";
|
|
||||||
case 0xFE4FD:
|
|
||||||
return "sign05";
|
|
||||||
case 0xFE4FF:
|
|
||||||
return "book";
|
|
||||||
case 0xFE500:
|
|
||||||
return "book";
|
|
||||||
case 0xFE501:
|
|
||||||
return "book";
|
|
||||||
case 0xFE502:
|
|
||||||
return "book";
|
|
||||||
case 0xFE503:
|
|
||||||
return "book";
|
|
||||||
case 0xFE505:
|
|
||||||
return "spa";
|
|
||||||
case 0xFE506:
|
|
||||||
return "toilet";
|
|
||||||
case 0xFE507:
|
|
||||||
return "toilet";
|
|
||||||
case 0xFE508:
|
|
||||||
return "toilet";
|
|
||||||
case 0xFE50F:
|
|
||||||
return "ribbon";
|
|
||||||
case 0xFE510:
|
|
||||||
return "present";
|
|
||||||
case 0xFE511:
|
|
||||||
return "birthday";
|
|
||||||
case 0xFE512:
|
|
||||||
return "xmas";
|
|
||||||
case 0xFE522:
|
|
||||||
return "pocketbell";
|
|
||||||
case 0xFE523:
|
|
||||||
return "telephone";
|
|
||||||
case 0xFE524:
|
|
||||||
return "telephone";
|
|
||||||
case 0xFE525:
|
|
||||||
return "mobilephone";
|
|
||||||
case 0xFE526:
|
|
||||||
return "phoneto";
|
|
||||||
case 0xFE527:
|
|
||||||
return "memo";
|
|
||||||
case 0xFE528:
|
|
||||||
return "faxto";
|
|
||||||
case 0xFE529:
|
|
||||||
return "mail";
|
|
||||||
case 0xFE52A:
|
|
||||||
return "mailto";
|
|
||||||
case 0xFE52B:
|
|
||||||
return "mailto";
|
|
||||||
case 0xFE52C:
|
|
||||||
return "postoffice";
|
|
||||||
case 0xFE52D:
|
|
||||||
return "postoffice";
|
|
||||||
case 0xFE52E:
|
|
||||||
return "postoffice";
|
|
||||||
case 0xFE535:
|
|
||||||
return "present";
|
|
||||||
case 0xFE536:
|
|
||||||
return "pen";
|
|
||||||
case 0xFE537:
|
|
||||||
return "chair";
|
|
||||||
case 0xFE538:
|
|
||||||
return "pc";
|
|
||||||
case 0xFE539:
|
|
||||||
return "pencil";
|
|
||||||
case 0xFE53A:
|
|
||||||
return "clip";
|
|
||||||
case 0xFE53B:
|
|
||||||
return "bag";
|
|
||||||
case 0xFE53E:
|
|
||||||
return "hairsalon";
|
|
||||||
case 0xFE540:
|
|
||||||
return "memo";
|
|
||||||
case 0xFE541:
|
|
||||||
return "memo";
|
|
||||||
case 0xFE545:
|
|
||||||
return "book";
|
|
||||||
case 0xFE546:
|
|
||||||
return "book";
|
|
||||||
case 0xFE547:
|
|
||||||
return "book";
|
|
||||||
case 0xFE548:
|
|
||||||
return "memo";
|
|
||||||
case 0xFE54D:
|
|
||||||
return "book";
|
|
||||||
case 0xFE54F:
|
|
||||||
return "book";
|
|
||||||
case 0xFE552:
|
|
||||||
return "memo";
|
|
||||||
case 0xFE553:
|
|
||||||
return "foot";
|
|
||||||
case 0xFE7D0:
|
|
||||||
return "sports";
|
|
||||||
case 0xFE7D1:
|
|
||||||
return "baseball";
|
|
||||||
case 0xFE7D2:
|
|
||||||
return "golf";
|
|
||||||
case 0xFE7D3:
|
|
||||||
return "tennis";
|
|
||||||
case 0xFE7D4:
|
|
||||||
return "soccer";
|
|
||||||
case 0xFE7D5:
|
|
||||||
return "ski";
|
|
||||||
case 0xFE7D6:
|
|
||||||
return "basketball";
|
|
||||||
case 0xFE7D7:
|
|
||||||
return "motorsports";
|
|
||||||
case 0xFE7D8:
|
|
||||||
return "snowboard";
|
|
||||||
case 0xFE7D9:
|
|
||||||
return "run";
|
|
||||||
case 0xFE7DA:
|
|
||||||
return "snowboard";
|
|
||||||
case 0xFE7DC:
|
|
||||||
return "horse";
|
|
||||||
case 0xFE7DF:
|
|
||||||
return "train";
|
|
||||||
case 0xFE7E0:
|
|
||||||
return "subway";
|
|
||||||
case 0xFE7E1:
|
|
||||||
return "subway";
|
|
||||||
case 0xFE7E2:
|
|
||||||
return "bullettrain";
|
|
||||||
case 0xFE7E3:
|
|
||||||
return "bullettrain";
|
|
||||||
case 0xFE7E4:
|
|
||||||
return "car";
|
|
||||||
case 0xFE7E5:
|
|
||||||
return "rvcar";
|
|
||||||
case 0xFE7E6:
|
|
||||||
return "bus";
|
|
||||||
case 0xFE7E8:
|
|
||||||
return "ship";
|
|
||||||
case 0xFE7E9:
|
|
||||||
return "airplane";
|
|
||||||
case 0xFE7EA:
|
|
||||||
return "yacht";
|
|
||||||
case 0xFE7EB:
|
|
||||||
return "bicycle";
|
|
||||||
case 0xFE7EE:
|
|
||||||
return "yacht";
|
|
||||||
case 0xFE7EF:
|
|
||||||
return "car";
|
|
||||||
case 0xFE7F0:
|
|
||||||
return "run";
|
|
||||||
case 0xFE7F5:
|
|
||||||
return "gasstation";
|
|
||||||
case 0xFE7F6:
|
|
||||||
return "parking";
|
|
||||||
case 0xFE7F7:
|
|
||||||
return "signaler";
|
|
||||||
case 0xFE7FA:
|
|
||||||
return "spa";
|
|
||||||
case 0xFE7FC:
|
|
||||||
return "carouselpony";
|
|
||||||
case 0xFE7FF:
|
|
||||||
return "fish";
|
|
||||||
case 0xFE800:
|
|
||||||
return "karaoke";
|
|
||||||
case 0xFE801:
|
|
||||||
return "movie";
|
|
||||||
case 0xFE802:
|
|
||||||
return "movie";
|
|
||||||
case 0xFE803:
|
|
||||||
return "music";
|
|
||||||
case 0xFE804:
|
|
||||||
return "art";
|
|
||||||
case 0xFE805:
|
|
||||||
return "drama";
|
|
||||||
case 0xFE806:
|
|
||||||
return "event";
|
|
||||||
case 0xFE807:
|
|
||||||
return "ticket";
|
|
||||||
case 0xFE808:
|
|
||||||
return "slate";
|
|
||||||
case 0xFE809:
|
|
||||||
return "drama";
|
|
||||||
case 0xFE80A:
|
|
||||||
return "game";
|
|
||||||
case 0xFE813:
|
|
||||||
return "note";
|
|
||||||
case 0xFE814:
|
|
||||||
return "notes";
|
|
||||||
case 0xFE81A:
|
|
||||||
return "notes";
|
|
||||||
case 0xFE81C:
|
|
||||||
return "tv";
|
|
||||||
case 0xFE81D:
|
|
||||||
return "cd";
|
|
||||||
case 0xFE81E:
|
|
||||||
return "cd";
|
|
||||||
case 0xFE823:
|
|
||||||
return "kissmark";
|
|
||||||
case 0xFE824:
|
|
||||||
return "loveletter";
|
|
||||||
case 0xFE825:
|
|
||||||
return "ring";
|
|
||||||
case 0xFE826:
|
|
||||||
return "ring";
|
|
||||||
case 0xFE827:
|
|
||||||
return "kissmark";
|
|
||||||
case 0xFE829:
|
|
||||||
return "heart02";
|
|
||||||
case 0xFE82B:
|
|
||||||
return "freedial";
|
|
||||||
case 0xFE82C:
|
|
||||||
return "sharp";
|
|
||||||
case 0xFE82D:
|
|
||||||
return "mobaq";
|
|
||||||
case 0xFE82E:
|
|
||||||
return "one";
|
|
||||||
case 0xFE82F:
|
|
||||||
return "two";
|
|
||||||
case 0xFE830:
|
|
||||||
return "three";
|
|
||||||
case 0xFE831:
|
|
||||||
return "four";
|
|
||||||
case 0xFE832:
|
|
||||||
return "five";
|
|
||||||
case 0xFE833:
|
|
||||||
return "six";
|
|
||||||
case 0xFE834:
|
|
||||||
return "seven";
|
|
||||||
case 0xFE835:
|
|
||||||
return "eight";
|
|
||||||
case 0xFE836:
|
|
||||||
return "nine";
|
|
||||||
case 0xFE837:
|
|
||||||
return "zero";
|
|
||||||
case 0xFE960:
|
|
||||||
return "fastfood";
|
|
||||||
case 0xFE961:
|
|
||||||
return "riceball";
|
|
||||||
case 0xFE962:
|
|
||||||
return "cake";
|
|
||||||
case 0xFE963:
|
|
||||||
return "noodle";
|
|
||||||
case 0xFE964:
|
|
||||||
return "bread";
|
|
||||||
case 0xFE96A:
|
|
||||||
return "noodle";
|
|
||||||
case 0xFE973:
|
|
||||||
return "typhoon";
|
|
||||||
case 0xFE980:
|
|
||||||
return "restaurant";
|
|
||||||
case 0xFE981:
|
|
||||||
return "cafe";
|
|
||||||
case 0xFE982:
|
|
||||||
return "bar";
|
|
||||||
case 0xFE983:
|
|
||||||
return "beer";
|
|
||||||
case 0xFE984:
|
|
||||||
return "japanesetea";
|
|
||||||
case 0xFE985:
|
|
||||||
return "bottle";
|
|
||||||
case 0xFE986:
|
|
||||||
return "wine";
|
|
||||||
case 0xFE987:
|
|
||||||
return "beer";
|
|
||||||
case 0xFE988:
|
|
||||||
return "bar";
|
|
||||||
case 0xFEAF0:
|
|
||||||
return "upwardright";
|
|
||||||
case 0xFEAF1:
|
|
||||||
return "downwardright";
|
|
||||||
case 0xFEAF2:
|
|
||||||
return "upwardleft";
|
|
||||||
case 0xFEAF3:
|
|
||||||
return "downwardleft";
|
|
||||||
case 0xFEAF4:
|
|
||||||
return "up";
|
|
||||||
case 0xFEAF5:
|
|
||||||
return "down";
|
|
||||||
case 0xFEAF6:
|
|
||||||
return "leftright";
|
|
||||||
case 0xFEAF7:
|
|
||||||
return "updown";
|
|
||||||
case 0xFEB04:
|
|
||||||
return "sign01";
|
|
||||||
case 0xFEB05:
|
|
||||||
return "sign02";
|
|
||||||
case 0xFEB06:
|
|
||||||
return "sign03";
|
|
||||||
case 0xFEB07:
|
|
||||||
return "sign04";
|
|
||||||
case 0xFEB08:
|
|
||||||
return "sign05";
|
|
||||||
case 0xFEB0B:
|
|
||||||
return "sign01";
|
|
||||||
case 0xFEB0C:
|
|
||||||
return "heart01";
|
|
||||||
case 0xFEB0D:
|
|
||||||
return "heart02";
|
|
||||||
case 0xFEB0E:
|
|
||||||
return "heart03";
|
|
||||||
case 0xFEB0F:
|
|
||||||
return "heart04";
|
|
||||||
case 0xFEB10:
|
|
||||||
return "heart01";
|
|
||||||
case 0xFEB11:
|
|
||||||
return "heart02";
|
|
||||||
case 0xFEB12:
|
|
||||||
return "heart01";
|
|
||||||
case 0xFEB13:
|
|
||||||
return "heart01";
|
|
||||||
case 0xFEB14:
|
|
||||||
return "heart01";
|
|
||||||
case 0xFEB15:
|
|
||||||
return "heart01";
|
|
||||||
case 0xFEB16:
|
|
||||||
return "heart01";
|
|
||||||
case 0xFEB17:
|
|
||||||
return "heart01";
|
|
||||||
case 0xFEB18:
|
|
||||||
return "heart02";
|
|
||||||
case 0xFEB19:
|
|
||||||
return "cute";
|
|
||||||
case 0xFEB1A:
|
|
||||||
return "heart";
|
|
||||||
case 0xFEB1B:
|
|
||||||
return "spade";
|
|
||||||
case 0xFEB1C:
|
|
||||||
return "diamond";
|
|
||||||
case 0xFEB1D:
|
|
||||||
return "club";
|
|
||||||
case 0xFEB1E:
|
|
||||||
return "smoking";
|
|
||||||
case 0xFEB1F:
|
|
||||||
return "nosmoking";
|
|
||||||
case 0xFEB20:
|
|
||||||
return "wheelchair";
|
|
||||||
case 0xFEB21:
|
|
||||||
return "free";
|
|
||||||
case 0xFEB22:
|
|
||||||
return "flag";
|
|
||||||
case 0xFEB23:
|
|
||||||
return "danger";
|
|
||||||
case 0xFEB26:
|
|
||||||
return "ng";
|
|
||||||
case 0xFEB27:
|
|
||||||
return "ok";
|
|
||||||
case 0xFEB28:
|
|
||||||
return "ng";
|
|
||||||
case 0xFEB29:
|
|
||||||
return "copyright";
|
|
||||||
case 0xFEB2A:
|
|
||||||
return "tm";
|
|
||||||
case 0xFEB2B:
|
|
||||||
return "secret";
|
|
||||||
case 0xFEB2C:
|
|
||||||
return "recycle";
|
|
||||||
case 0xFEB2D:
|
|
||||||
return "r-mark";
|
|
||||||
case 0xFEB2E:
|
|
||||||
return "ban";
|
|
||||||
case 0xFEB2F:
|
|
||||||
return "empty";
|
|
||||||
case 0xFEB30:
|
|
||||||
return "pass";
|
|
||||||
case 0xFEB31:
|
|
||||||
return "full";
|
|
||||||
case 0xFEB36:
|
|
||||||
return "new";
|
|
||||||
case 0xFEB44:
|
|
||||||
return "fullmoon";
|
|
||||||
case 0xFEB48:
|
|
||||||
return "ban";
|
|
||||||
case 0xFEB55:
|
|
||||||
return "cute";
|
|
||||||
case 0xFEB56:
|
|
||||||
return "flair";
|
|
||||||
case 0xFEB57:
|
|
||||||
return "annoy";
|
|
||||||
case 0xFEB58:
|
|
||||||
return "bomb";
|
|
||||||
case 0xFEB59:
|
|
||||||
return "sleepy";
|
|
||||||
case 0xFEB5A:
|
|
||||||
return "impact";
|
|
||||||
case 0xFEB5B:
|
|
||||||
return "sweat01";
|
|
||||||
case 0xFEB5C:
|
|
||||||
return "sweat02";
|
|
||||||
case 0xFEB5D:
|
|
||||||
return "dash";
|
|
||||||
case 0xFEB5F:
|
|
||||||
return "sad";
|
|
||||||
case 0xFEB60:
|
|
||||||
return "shine";
|
|
||||||
case 0xFEB61:
|
|
||||||
return "cute";
|
|
||||||
case 0xFEB62:
|
|
||||||
return "cute";
|
|
||||||
case 0xFEB63:
|
|
||||||
return "newmoon";
|
|
||||||
case 0xFEB64:
|
|
||||||
return "newmoon";
|
|
||||||
case 0xFEB65:
|
|
||||||
return "newmoon";
|
|
||||||
case 0xFEB66:
|
|
||||||
return "newmoon";
|
|
||||||
case 0xFEB67:
|
|
||||||
return "newmoon";
|
|
||||||
case 0xFEB77:
|
|
||||||
return "shine";
|
|
||||||
case 0xFEB81:
|
|
||||||
return "id";
|
|
||||||
case 0xFEB82:
|
|
||||||
return "key";
|
|
||||||
case 0xFEB83:
|
|
||||||
return "enter";
|
|
||||||
case 0xFEB84:
|
|
||||||
return "clear";
|
|
||||||
case 0xFEB85:
|
|
||||||
return "search";
|
|
||||||
case 0xFEB86:
|
|
||||||
return "key";
|
|
||||||
case 0xFEB87:
|
|
||||||
return "key";
|
|
||||||
case 0xFEB8A:
|
|
||||||
return "key";
|
|
||||||
case 0xFEB8D:
|
|
||||||
return "search";
|
|
||||||
case 0xFEB90:
|
|
||||||
return "key";
|
|
||||||
case 0xFEB91:
|
|
||||||
return "recycle";
|
|
||||||
case 0xFEB92:
|
|
||||||
return "mail";
|
|
||||||
case 0xFEB93:
|
|
||||||
return "rock";
|
|
||||||
case 0xFEB94:
|
|
||||||
return "scissors";
|
|
||||||
case 0xFEB95:
|
|
||||||
return "paper";
|
|
||||||
case 0xFEB96:
|
|
||||||
return "punch";
|
|
||||||
case 0xFEB97:
|
|
||||||
return "good";
|
|
||||||
case 0xFEB9D:
|
|
||||||
return "paper";
|
|
||||||
case 0xFEB9F:
|
|
||||||
return "ok";
|
|
||||||
case 0xFEBA0:
|
|
||||||
return "down";
|
|
||||||
case 0xFEBA1:
|
|
||||||
return "paper";
|
|
||||||
case 0xFEE10:
|
|
||||||
return "info01";
|
|
||||||
case 0xFEE11:
|
|
||||||
return "info02";
|
|
||||||
case 0xFEE12:
|
|
||||||
return "by-d";
|
|
||||||
case 0xFEE13:
|
|
||||||
return "d-point";
|
|
||||||
case 0xFEE14:
|
|
||||||
return "appli01";
|
|
||||||
case 0xFEE15:
|
|
||||||
return "appli02";
|
|
||||||
case 0xFEE1C:
|
|
||||||
return "movie";
|
|
||||||
default:
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean isInTopGroup()
|
public boolean isInTopGroup()
|
||||||
|
Loading…
Reference in New Issue
Block a user