aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--0001-Added-possibility-to-also-use-pictures-as-smilies.patch1400
-rw-r--r--ManualBuildForFdroid.md10
-rw-r--r--TODO10
-rw-r--r--build.gradle6
-rw-r--r--gradle/wrapper/gradle-wrapper.properties2
-rw-r--r--libs/bcprov-jdk15on-1.50.jarbin0 -> 2732684 bytes
-rw-r--r--libs/colorpicker/.gitignore1
-rw-r--r--libs/colorpicker/build.gradle18
-rw-r--r--libs/colorpicker/proguard-rules.pro17
-rw-r--r--libs/colorpicker/src/main/AndroidManifest.xml2
-rw-r--r--libs/colorpicker/src/main/java/yuku/ambilwarna/AmbilWarnaDialog.java298
-rw-r--r--libs/colorpicker/src/main/java/yuku/ambilwarna/AmbilWarnaSquare.java46
-rw-r--r--libs/colorpicker/src/main/java/yuku/ambilwarna/widget/AmbilWarnaPrefWidgetView.java34
-rw-r--r--libs/colorpicker/src/main/java/yuku/ambilwarna/widget/AmbilWarnaPreference.java134
-rw-r--r--libs/colorpicker/src/main/res/drawable-hdpi/ambilwarna_arrow_down.pngbin0 -> 1032 bytes
-rw-r--r--libs/colorpicker/src/main/res/drawable-hdpi/ambilwarna_arrow_right.pngbin0 -> 1041 bytes
-rw-r--r--libs/colorpicker/src/main/res/drawable-hdpi/ambilwarna_cursor.pngbin0 -> 666 bytes
-rw-r--r--libs/colorpicker/src/main/res/drawable-hdpi/ambilwarna_target.pngbin0 -> 983 bytes
-rw-r--r--libs/colorpicker/src/main/res/drawable-ldpi/ambilwarna_arrow_down.pngbin0 -> 748 bytes
-rw-r--r--libs/colorpicker/src/main/res/drawable-ldpi/ambilwarna_arrow_right.pngbin0 -> 751 bytes
-rw-r--r--libs/colorpicker/src/main/res/drawable-ldpi/ambilwarna_cursor.pngbin0 -> 480 bytes
-rw-r--r--libs/colorpicker/src/main/res/drawable-ldpi/ambilwarna_target.pngbin0 -> 607 bytes
-rw-r--r--libs/colorpicker/src/main/res/drawable-mdpi/ambilwarna_alphacheckered.pngbin0 -> 135 bytes
-rw-r--r--libs/colorpicker/src/main/res/drawable-mdpi/ambilwarna_arrow_down.pngbin0 -> 889 bytes
-rw-r--r--libs/colorpicker/src/main/res/drawable-mdpi/ambilwarna_arrow_right.pngbin0 -> 814 bytes
-rw-r--r--libs/colorpicker/src/main/res/drawable-mdpi/ambilwarna_cursor.pngbin0 -> 579 bytes
-rw-r--r--libs/colorpicker/src/main/res/drawable-mdpi/ambilwarna_hue.pngbin0 -> 455 bytes
-rw-r--r--libs/colorpicker/src/main/res/drawable-mdpi/ambilwarna_target.pngbin0 -> 816 bytes
-rw-r--r--libs/colorpicker/src/main/res/drawable-xhdpi/ambilwarna_arrow_down.pngbin0 -> 1097 bytes
-rw-r--r--libs/colorpicker/src/main/res/drawable-xhdpi/ambilwarna_arrow_right.pngbin0 -> 1151 bytes
-rw-r--r--libs/colorpicker/src/main/res/drawable-xhdpi/ambilwarna_cursor.pngbin0 -> 782 bytes
-rw-r--r--libs/colorpicker/src/main/res/drawable-xhdpi/ambilwarna_target.pngbin0 -> 1526 bytes
-rw-r--r--libs/colorpicker/src/main/res/drawable/ambilwarna_alphacheckered_tiled.xml6
-rw-r--r--libs/colorpicker/src/main/res/layout-land/ambilwarna_dialog.xml127
-rw-r--r--libs/colorpicker/src/main/res/layout/ambilwarna_dialog.xml122
-rw-r--r--libs/colorpicker/src/main/res/layout/ambilwarna_pref_widget.xml23
-rw-r--r--libs/colorpicker/src/main/res/values-land/dimen.xml5
-rw-r--r--libs/colorpicker/src/main/res/values-xlarge-land/dimen.xml5
-rw-r--r--libs/colorpicker/src/main/res/values/attrs.xml7
-rw-r--r--libs/colorpicker/src/main/res/values/dimen.xml7
-rw-r--r--libs/emojicon/build.gradle22
-rw-r--r--libs/emojicon/lint.xml3
-rw-r--r--libs/emojicon/src/main/AndroidManifest.xml12
-rw-r--r--libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/EmojiAdapter.java74
-rw-r--r--libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/EmojiconEditText.java67
-rw-r--r--libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/EmojiconGridView.java78
-rw-r--r--libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/EmojiconHandler.java1623
-rw-r--r--libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/EmojiconImageSpan.java14
-rw-r--r--libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/EmojiconRecents.java28
-rw-r--r--libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/EmojiconRecentsGridView.java62
-rw-r--r--libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/EmojiconRecentsManager.java124
-rw-r--r--libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/EmojiconSpan.java51
-rw-r--r--libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/EmojiconTextView.java76
-rw-r--r--libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/EmojiconsPopup.java428
-rw-r--r--libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/emoji/Emojicon.java74
-rw-r--r--libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/emoji/Nature.java141
-rw-r--r--libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/emoji/Objects.java255
-rw-r--r--libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/emoji/People.java214
-rw-r--r--libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/emoji/Places.java126
-rw-r--r--libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/emoji/Symbols.java237
-rw-r--r--libs/emojicon/src/main/res/drawable-hdpi/ic_emoji_nature_light_activated.pngbin0 -> 1850 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-hdpi/ic_emoji_nature_light_normal.pngbin0 -> 1800 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-hdpi/ic_emoji_objects_light_activated.pngbin0 -> 1744 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-hdpi/ic_emoji_objects_light_normal.pngbin0 -> 1581 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-hdpi/ic_emoji_people_light_activated.pngbin0 -> 1767 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-hdpi/ic_emoji_people_light_normal.pngbin0 -> 1820 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-hdpi/ic_emoji_places_light_activated.pngbin0 -> 1418 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-hdpi/ic_emoji_places_light_normal.pngbin0 -> 1341 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-hdpi/ic_emoji_recent_light_activated.pngbin0 -> 1667 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-hdpi/ic_emoji_recent_light_normal.pngbin0 -> 1703 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-hdpi/ic_emoji_symbols_light_activated.pngbin0 -> 1087 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-hdpi/ic_emoji_symbols_light_normal.pngbin0 -> 1053 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-hdpi/ic_launcher.pngbin0 -> 9397 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-hdpi/keyboard_background_holo.9.pngbin0 -> 227 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-hdpi/orca_attach_camera_normal.pngbin0 -> 2021 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-hdpi/orca_attach_camera_pressed.pngbin0 -> 2008 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-hdpi/orca_attach_location_normal.pngbin0 -> 1676 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-hdpi/orca_attach_location_pressed.pngbin0 -> 1671 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-hdpi/orca_attach_photo_normal.pngbin0 -> 1740 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-hdpi/orca_attach_photo_pressed.pngbin0 -> 1707 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-hdpi/orca_attachments_arrow.pngbin0 -> 250 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-hdpi/orca_attachments_arrow_reversed.pngbin0 -> 197 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-hdpi/orca_composer_divider_horizontal.9.pngbin0 -> 98 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-hdpi/orca_composer_divider_vertical.9.pngbin0 -> 94 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-hdpi/orca_composer_popup_active_normal.pngbin0 -> 941 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-hdpi/orca_composer_popup_active_pressed.pngbin0 -> 1430 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-hdpi/orca_composer_popup_normal.pngbin0 -> 429 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-hdpi/orca_composer_popup_pressed.pngbin0 -> 838 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-hdpi/orca_composer_tab.9.pngbin0 -> 100 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-hdpi/orca_composer_tab_active.9.pngbin0 -> 98 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-hdpi/orca_composer_tab_dark.9.pngbin0 -> 100 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-hdpi/orca_composer_tab_pressed.9.pngbin0 -> 105 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-hdpi/orca_composer_top_divider.9.pngbin0 -> 105 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-hdpi/orca_emoji_backspace_back_normal.pngbin0 -> 656 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-hdpi/orca_emoji_backspace_front_normal.pngbin0 -> 1160 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-hdpi/orca_emoji_backspace_front_pressed.pngbin0 -> 1044 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-hdpi/orca_emoji_category_cars.pngbin0 -> 912 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-hdpi/orca_emoji_category_nature.pngbin0 -> 1378 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-hdpi/orca_emoji_category_objects.pngbin0 -> 1020 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-hdpi/orca_emoji_category_people.pngbin0 -> 905 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-hdpi/orca_emoji_category_punctuation.pngbin0 -> 759 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-hdpi/orca_emoji_more_back_normal.pngbin0 -> 458 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-hdpi/orca_emoji_more_front_normal.pngbin0 -> 936 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-hdpi/orca_emoji_more_front_pressed.pngbin0 -> 828 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-hdpi/sym_keyboard_delete_holo_dark.pngbin0 -> 1024 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-mdpi/ic_emoji_nature_light_activated.pngbin0 -> 1213 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-mdpi/ic_emoji_nature_light_normal.pngbin0 -> 1130 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-mdpi/ic_emoji_objects_light_activated.pngbin0 -> 1193 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-mdpi/ic_emoji_objects_light_normal.pngbin0 -> 1092 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-mdpi/ic_emoji_people_light_activated.pngbin0 -> 1170 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-mdpi/ic_emoji_people_light_normal.pngbin0 -> 1132 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-mdpi/ic_emoji_places_light_activated.pngbin0 -> 1032 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-mdpi/ic_emoji_places_light_normal.pngbin0 -> 963 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-mdpi/ic_emoji_recent_light_activated.pngbin0 -> 1105 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-mdpi/ic_emoji_recent_light_normal.pngbin0 -> 1106 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-mdpi/ic_emoji_symbols_light_activated.pngbin0 -> 805 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-mdpi/ic_emoji_symbols_light_normal.pngbin0 -> 775 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-mdpi/ic_launcher.pngbin0 -> 5237 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-mdpi/keyboard_background_holo.9.pngbin0 -> 204 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-mdpi/orca_attach_camera_normal.pngbin0 -> 1084 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-mdpi/orca_attach_camera_pressed.pngbin0 -> 1080 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-mdpi/orca_attach_location_normal.pngbin0 -> 945 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-mdpi/orca_attach_location_pressed.pngbin0 -> 930 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-mdpi/orca_attach_photo_normal.pngbin0 -> 972 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-mdpi/orca_attach_photo_pressed.pngbin0 -> 969 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-mdpi/orca_attachments_arrow.pngbin0 -> 161 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-mdpi/orca_attachments_arrow_reversed.pngbin0 -> 142 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-mdpi/orca_composer_divider_horizontal.9.pngbin0 -> 92 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-mdpi/orca_composer_divider_vertical.9.pngbin0 -> 90 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-mdpi/orca_composer_popup_active_normal.pngbin0 -> 509 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-mdpi/orca_composer_popup_active_pressed.pngbin0 -> 754 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-mdpi/orca_composer_popup_normal.pngbin0 -> 238 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-mdpi/orca_composer_popup_pressed.pngbin0 -> 455 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-mdpi/orca_composer_tab.9.pngbin0 -> 92 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-mdpi/orca_composer_tab_active.9.pngbin0 -> 94 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-mdpi/orca_composer_tab_dark.9.pngbin0 -> 95 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-mdpi/orca_composer_tab_pressed.9.pngbin0 -> 95 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-mdpi/orca_composer_top_divider.9.pngbin0 -> 103 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-mdpi/orca_emoji_backspace_back_normal.pngbin0 -> 342 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-mdpi/orca_emoji_backspace_front_normal.pngbin0 -> 664 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-mdpi/orca_emoji_backspace_front_pressed.pngbin0 -> 541 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-mdpi/orca_emoji_category_cars.pngbin0 -> 499 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-mdpi/orca_emoji_category_nature.pngbin0 -> 729 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-mdpi/orca_emoji_category_objects.pngbin0 -> 540 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-mdpi/orca_emoji_category_people.pngbin0 -> 498 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-mdpi/orca_emoji_category_punctuation.pngbin0 -> 391 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-mdpi/orca_emoji_more_back_normal.pngbin0 -> 276 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-mdpi/orca_emoji_more_front_normal.pngbin0 -> 560 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-mdpi/orca_emoji_more_front_pressed.pngbin0 -> 432 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-mdpi/sym_keyboard_delete_holo_dark.pngbin0 -> 773 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_0023.pngbin0 -> 3259 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_0030.pngbin0 -> 3076 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_0031.pngbin0 -> 2491 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_0032.pngbin0 -> 3026 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_0033.pngbin0 -> 3177 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_0034.pngbin0 -> 2767 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_0035.pngbin0 -> 3061 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_0036.pngbin0 -> 3201 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_0037.pngbin0 -> 2678 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_0038.pngbin0 -> 3235 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_0039.pngbin0 -> 3178 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_00a9.pngbin0 -> 1907 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_00ae.pngbin0 -> 1906 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f004.pngbin0 -> 3021 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f0cf.pngbin0 -> 3414 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f170.pngbin0 -> 2979 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f171.pngbin0 -> 2817 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f17e.pngbin0 -> 3165 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f17f.pngbin0 -> 2838 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f18e.pngbin0 -> 3487 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f191.pngbin0 -> 3053 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f192.pngbin0 -> 3345 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f193.pngbin0 -> 3194 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f194.pngbin0 -> 3309 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f195.pngbin0 -> 3308 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f196.pngbin0 -> 3392 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f197.pngbin0 -> 3492 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f198.pngbin0 -> 3311 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f199.pngbin0 -> 3124 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f19a.pngbin0 -> 3097 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f1e8_1f1f3.pngbin0 -> 2484 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f1e9_1f1ea.pngbin0 -> 2328 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f1ea_1f1f8.pngbin0 -> 2992 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f1eb_1f1f7.pngbin0 -> 2342 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f1ec_1f1e7.pngbin0 -> 4421 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f1ee_1f1f9.pngbin0 -> 2477 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f1ef_1f1f5.pngbin0 -> 2455 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f1f0_1f1f7.pngbin0 -> 3838 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f1f7_1f1fa.pngbin0 -> 3001 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f1fa_1f1f8.pngbin0 -> 4286 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f201.pngbin0 -> 2818 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f202.pngbin0 -> 3182 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f21a.pngbin0 -> 3694 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f22f.pngbin0 -> 3847 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f232.pngbin0 -> 3973 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f233.pngbin0 -> 3422 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f234.pngbin0 -> 3078 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f235.pngbin0 -> 3759 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f236.pngbin0 -> 3034 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f237.pngbin0 -> 2871 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f238.pngbin0 -> 2934 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f239.pngbin0 -> 3719 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f23a.pngbin0 -> 3153 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f250.pngbin0 -> 2888 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f251.pngbin0 -> 3759 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f300.pngbin0 -> 3896 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f301.pngbin0 -> 3334 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f302.pngbin0 -> 2936 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f303.pngbin0 -> 3269 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f304.pngbin0 -> 4254 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f305.pngbin0 -> 2953 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f306.pngbin0 -> 3408 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f307.pngbin0 -> 3472 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f308.pngbin0 -> 4023 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f309.pngbin0 -> 3722 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f30a.pngbin0 -> 4285 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f30b.pngbin0 -> 4194 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f30c.pngbin0 -> 3692 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f30d.pngbin0 -> 4939 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f30e.pngbin0 -> 4881 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f30f.pngbin0 -> 4986 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f310.pngbin0 -> 4310 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f311.pngbin0 -> 3285 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f312.pngbin0 -> 4160 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f313.pngbin0 -> 3998 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f314.pngbin0 -> 4296 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f315.pngbin0 -> 4486 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f316.pngbin0 -> 4457 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f317.pngbin0 -> 4134 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f318.pngbin0 -> 3884 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f319.pngbin0 -> 3000 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f31a.pngbin0 -> 4133 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f31b.pngbin0 -> 3152 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f31c.pngbin0 -> 3148 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f31d.pngbin0 -> 4851 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f31e.pngbin0 -> 5476 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f31f.pngbin0 -> 3648 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f330.pngbin0 -> 3938 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f331.pngbin0 -> 1900 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f332.pngbin0 -> 3400 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f333.pngbin0 -> 4808 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f334.pngbin0 -> 3263 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f335.pngbin0 -> 3179 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f337.pngbin0 -> 4419 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f338.pngbin0 -> 5293 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f339.pngbin0 -> 3266 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f33a.pngbin0 -> 5555 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f33b.pngbin0 -> 4732 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f33c.pngbin0 -> 2977 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f33d.pngbin0 -> 4788 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f33e.pngbin0 -> 3881 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f33f.pngbin0 -> 4173 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f340.pngbin0 -> 4245 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f341.pngbin0 -> 3521 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f342.pngbin0 -> 3591 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f343.pngbin0 -> 4255 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f344.pngbin0 -> 3768 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f345.pngbin0 -> 4316 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f346.pngbin0 -> 3672 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f347.pngbin0 -> 3986 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f348.pngbin0 -> 5001 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f349.pngbin0 -> 3945 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f34a.pngbin0 -> 4511 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f34b.pngbin0 -> 4042 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f34c.pngbin0 -> 2862 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f34d.pngbin0 -> 3817 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f34e.pngbin0 -> 3985 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f34f.pngbin0 -> 4160 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f350.pngbin0 -> 4403 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f351.pngbin0 -> 4103 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f352.pngbin0 -> 4111 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f353.pngbin0 -> 3911 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f354.pngbin0 -> 4011 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f355.pngbin0 -> 3607 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f356.pngbin0 -> 4005 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f357.pngbin0 -> 3163 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f358.pngbin0 -> 5128 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f359.pngbin0 -> 3708 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f35a.pngbin0 -> 3737 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f35b.pngbin0 -> 3850 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f35c.pngbin0 -> 4913 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f35d.pngbin0 -> 4855 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f35e.pngbin0 -> 4297 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f35f.pngbin0 -> 4478 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f360.pngbin0 -> 3970 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f361.pngbin0 -> 3511 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f362.pngbin0 -> 3897 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f363.pngbin0 -> 3756 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f364.pngbin0 -> 5067 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f365.pngbin0 -> 4491 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f366.pngbin0 -> 3514 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f367.pngbin0 -> 4359 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f368.pngbin0 -> 4236 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f369.pngbin0 -> 3924 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f36a.pngbin0 -> 5370 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f36b.pngbin0 -> 3527 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f36c.pngbin0 -> 3311 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f36d.pngbin0 -> 4207 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f36e.pngbin0 -> 4165 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f36f.pngbin0 -> 4162 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f370.pngbin0 -> 4325 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f371.pngbin0 -> 4034 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f372.pngbin0 -> 4092 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f373.pngbin0 -> 3921 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f374.pngbin0 -> 2704 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f375.pngbin0 -> 4429 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f376.pngbin0 -> 3860 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f377.pngbin0 -> 2650 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f378.pngbin0 -> 2317 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f379.pngbin0 -> 3486 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f37a.pngbin0 -> 4547 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f37b.pngbin0 -> 4809 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f37c.pngbin0 -> 3135 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f380.pngbin0 -> 3953 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f381.pngbin0 -> 4856 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f382.pngbin0 -> 4541 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f383.pngbin0 -> 4021 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f384.pngbin0 -> 3654 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f385.pngbin0 -> 4732 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f386.pngbin0 -> 4306 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f387.pngbin0 -> 3975 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f388.pngbin0 -> 2013 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f389.pngbin0 -> 4685 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f38a.pngbin0 -> 4483 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f38b.pngbin0 -> 3435 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f38c.pngbin0 -> 3336 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f38d.pngbin0 -> 3254 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f38e.pngbin0 -> 4977 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f38f.pngbin0 -> 4484 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f390.pngbin0 -> 2840 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f391.pngbin0 -> 4642 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f392.pngbin0 -> 4049 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f393.pngbin0 -> 3072 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3a0.pngbin0 -> 4245 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3a1.pngbin0 -> 4469 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3a2.pngbin0 -> 3780 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3a3.pngbin0 -> 3484 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3a4.pngbin0 -> 2865 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3a5.pngbin0 -> 2939 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3a6.pngbin0 -> 3139 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3a7.pngbin0 -> 2672 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3a8.pngbin0 -> 4837 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3a9.pngbin0 -> 2484 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3aa.pngbin0 -> 3755 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3ab.pngbin0 -> 3022 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3ac.pngbin0 -> 3711 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3ad.pngbin0 -> 4603 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3ae.pngbin0 -> 3513 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3af.pngbin0 -> 4612 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3b0.pngbin0 -> 4045 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3b1.pngbin0 -> 3286 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3b2.pngbin0 -> 2867 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3b3.pngbin0 -> 3500 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3b4.pngbin0 -> 2482 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3b5.pngbin0 -> 2684 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3b6.pngbin0 -> 1855 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3b7.pngbin0 -> 3056 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3b8.pngbin0 -> 3150 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3b9.pngbin0 -> 2170 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3ba.pngbin0 -> 3084 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3bb.pngbin0 -> 3648 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3bc.pngbin0 -> 2044 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3bd.pngbin0 -> 4365 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3be.pngbin0 -> 4269 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3bf.pngbin0 -> 3428 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3c0.pngbin0 -> 4396 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3c1.pngbin0 -> 2367 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3c2.pngbin0 -> 4671 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3c3.pngbin0 -> 2694 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3c4.pngbin0 -> 4640 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3c6.pngbin0 -> 3990 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3c7.pngbin0 -> 4178 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3c8.pngbin0 -> 4746 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3c9.pngbin0 -> 5015 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3ca.pngbin0 -> 3431 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3e0.pngbin0 -> 2878 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3e1.pngbin0 -> 4553 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3e2.pngbin0 -> 4003 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3e3.pngbin0 -> 4134 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3e4.pngbin0 -> 4368 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3e5.pngbin0 -> 4152 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3e6.pngbin0 -> 4207 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3e7.pngbin0 -> 3431 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3e8.pngbin0 -> 4064 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3e9.pngbin0 -> 4857 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3ea.pngbin0 -> 3661 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3eb.pngbin0 -> 4325 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3ec.pngbin0 -> 4306 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3ed.pngbin0 -> 4212 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3ee.pngbin0 -> 2814 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3ef.pngbin0 -> 4054 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3f0.pngbin0 -> 4126 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f400.pngbin0 -> 3793 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f401.pngbin0 -> 2980 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f402.pngbin0 -> 3931 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f403.pngbin0 -> 3112 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f404.pngbin0 -> 3636 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f405.pngbin0 -> 3701 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f406.pngbin0 -> 3758 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f407.pngbin0 -> 3190 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f408.pngbin0 -> 3901 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f409.pngbin0 -> 5044 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f40a.pngbin0 -> 4340 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f40b.pngbin0 -> 4067 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f40c.pngbin0 -> 4660 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f40d.pngbin0 -> 3376 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f40e.pngbin0 -> 3469 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f40f.pngbin0 -> 4344 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f410.pngbin0 -> 3610 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f411.pngbin0 -> 3665 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f412.pngbin0 -> 3667 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f413.pngbin0 -> 4185 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f414.pngbin0 -> 3452 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f415.pngbin0 -> 4080 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f416.pngbin0 -> 3644 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f417.pngbin0 -> 3379 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f418.pngbin0 -> 3857 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f419.pngbin0 -> 4205 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f41a.pngbin0 -> 3939 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f41b.pngbin0 -> 4131 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f41c.pngbin0 -> 1909 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f41d.pngbin0 -> 4675 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f41e.pngbin0 -> 3579 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f41f.pngbin0 -> 3520 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f420.pngbin0 -> 4427 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f421.pngbin0 -> 2516 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f422.pngbin0 -> 3869 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f423.pngbin0 -> 4459 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f424.pngbin0 -> 3221 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f425.pngbin0 -> 4147 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f426.pngbin0 -> 3615 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f427.pngbin0 -> 3582 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f428.pngbin0 -> 3998 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f429.pngbin0 -> 4866 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f42a.pngbin0 -> 3927 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f42b.pngbin0 -> 3678 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f42c.pngbin0 -> 3439 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f42d.pngbin0 -> 4864 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f42e.pngbin0 -> 4363 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f42f.pngbin0 -> 4523 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f430.pngbin0 -> 4128 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f431.pngbin0 -> 4229 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f432.pngbin0 -> 4383 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f433.pngbin0 -> 3886 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f434.pngbin0 -> 3391 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f435.pngbin0 -> 3923 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f436.pngbin0 -> 4386 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f437.pngbin0 -> 4455 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f438.pngbin0 -> 3448 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f439.pngbin0 -> 5308 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f43a.pngbin0 -> 3598 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f43b.pngbin0 -> 4020 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f43c.pngbin0 -> 4065 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f43d.pngbin0 -> 3655 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f43e.pngbin0 -> 2073 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f440.pngbin0 -> 3353 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f442.pngbin0 -> 3287 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f443.pngbin0 -> 2724 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f444.pngbin0 -> 2798 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f445.pngbin0 -> 3016 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f446.pngbin0 -> 2548 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f447.pngbin0 -> 2577 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f448.pngbin0 -> 2569 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f449.pngbin0 -> 2524 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f44a.pngbin0 -> 3705 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f44b.pngbin0 -> 3748 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f44c.pngbin0 -> 3584 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f44d.pngbin0 -> 3771 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f44e.pngbin0 -> 3783 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f44f.pngbin0 -> 5168 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f450.pngbin0 -> 3337 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f451.pngbin0 -> 4227 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f452.pngbin0 -> 5373 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f453.pngbin0 -> 3824 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f454.pngbin0 -> 4332 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f455.pngbin0 -> 3625 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f456.pngbin0 -> 2385 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f457.pngbin0 -> 2800 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f458.pngbin0 -> 3741 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f459.pngbin0 -> 3082 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f45a.pngbin0 -> 3391 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f45b.pngbin0 -> 3569 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f45c.pngbin0 -> 3887 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f45d.pngbin0 -> 3335 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f45e.pngbin0 -> 3520 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f45f.pngbin0 -> 3609 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f460.pngbin0 -> 3388 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f461.pngbin0 -> 3095 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f462.pngbin0 -> 2544 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f463.pngbin0 -> 1816 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f464.pngbin0 -> 1975 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f465.pngbin0 -> 2834 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f466.pngbin0 -> 4372 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f467.pngbin0 -> 4518 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f468.pngbin0 -> 4408 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f469.pngbin0 -> 4721 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f46a.pngbin0 -> 5273 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f46b.pngbin0 -> 5540 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f46c.pngbin0 -> 5257 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f46d.pngbin0 -> 6056 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f46e.pngbin0 -> 5123 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f46f.pngbin0 -> 5685 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f470.pngbin0 -> 5625 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f471.pngbin0 -> 4679 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f472.pngbin0 -> 3862 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f473.pngbin0 -> 4673 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f474.pngbin0 -> 4640 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f475.pngbin0 -> 4427 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f476.pngbin0 -> 4216 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f477.pngbin0 -> 4608 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f478.pngbin0 -> 5301 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f479.pngbin0 -> 4884 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f47a.pngbin0 -> 3943 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f47b.pngbin0 -> 3804 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f47c.pngbin0 -> 4954 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f47d.pngbin0 -> 3840 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f47e.pngbin0 -> 4059 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f47f.pngbin0 -> 4621 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f480.pngbin0 -> 2779 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f481.pngbin0 -> 4654 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f482.pngbin0 -> 2770 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f483.pngbin0 -> 3000 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f484.pngbin0 -> 2704 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f485.pngbin0 -> 4294 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f486.pngbin0 -> 4223 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f487.pngbin0 -> 4970 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f488.pngbin0 -> 3471 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f489.pngbin0 -> 2434 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f48a.pngbin0 -> 3774 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f48b.pngbin0 -> 3988 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f48c.pngbin0 -> 2343 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f48d.pngbin0 -> 3902 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f48e.pngbin0 -> 3702 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f48f.pngbin0 -> 5232 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f490.pngbin0 -> 4723 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f491.pngbin0 -> 5173 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f492.pngbin0 -> 4522 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f493.pngbin0 -> 3111 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f494.pngbin0 -> 3695 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f495.pngbin0 -> 2833 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f496.pngbin0 -> 4177 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f497.pngbin0 -> 4494 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f498.pngbin0 -> 4250 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f499.pngbin0 -> 3390 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f49a.pngbin0 -> 3482 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f49b.pngbin0 -> 3549 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f49c.pngbin0 -> 3341 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f49d.pngbin0 -> 4499 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f49e.pngbin0 -> 4324 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f49f.pngbin0 -> 2918 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4a0.pngbin0 -> 4184 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4a1.pngbin0 -> 2952 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4a2.pngbin0 -> 2681 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4a3.pngbin0 -> 3743 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4a4.pngbin0 -> 2004 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4a5.pngbin0 -> 3558 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4a6.pngbin0 -> 3806 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4a7.pngbin0 -> 2583 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4a8.pngbin0 -> 4351 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4a9.pngbin0 -> 3579 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4aa.pngbin0 -> 3587 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4ab.pngbin0 -> 2698 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4ac.pngbin0 -> 2832 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4ad.pngbin0 -> 2945 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4ae.pngbin0 -> 4317 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4af.pngbin0 -> 2443 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4b0.pngbin0 -> 4069 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4b1.pngbin0 -> 2192 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4b2.pngbin0 -> 1448 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4b3.pngbin0 -> 2368 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4b4.pngbin0 -> 3472 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4b5.pngbin0 -> 3300 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4b6.pngbin0 -> 3506 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4b7.pngbin0 -> 3513 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4b8.pngbin0 -> 5432 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4b9.pngbin0 -> 4014 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4ba.pngbin0 -> 4218 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4bb.pngbin0 -> 2330 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4bc.pngbin0 -> 2078 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4bd.pngbin0 -> 5691 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4be.pngbin0 -> 2610 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4bf.pngbin0 -> 4904 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4c0.pngbin0 -> 5077 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4c1.pngbin0 -> 3652 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4c2.pngbin0 -> 3860 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4c3.pngbin0 -> 3009 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4c4.pngbin0 -> 2479 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4c5.pngbin0 -> 3152 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4c6.pngbin0 -> 3116 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4c7.pngbin0 -> 3401 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4c8.pngbin0 -> 3678 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4c9.pngbin0 -> 3676 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4ca.pngbin0 -> 3272 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4cb.pngbin0 -> 3595 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4cc.pngbin0 -> 3036 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4cd.pngbin0 -> 1542 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4ce.pngbin0 -> 2133 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4cf.pngbin0 -> 2966 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4d0.pngbin0 -> 2326 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4d1.pngbin0 -> 3180 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4d2.pngbin0 -> 4118 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4d3.pngbin0 -> 4357 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4d4.pngbin0 -> 3787 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4d5.pngbin0 -> 3081 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4d6.pngbin0 -> 4383 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4d7.pngbin0 -> 3280 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4d8.pngbin0 -> 3274 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4d9.pngbin0 -> 3315 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4da.pngbin0 -> 4705 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4db.pngbin0 -> 3169 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4dc.pngbin0 -> 4356 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4dd.pngbin0 -> 3858 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4de.pngbin0 -> 2392 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4df.pngbin0 -> 2881 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4e0.pngbin0 -> 3442 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4e1.pngbin0 -> 4162 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4e2.pngbin0 -> 4541 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4e3.pngbin0 -> 3536 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4e4.pngbin0 -> 3120 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4e5.pngbin0 -> 3098 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4e6.pngbin0 -> 4156 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4e7.pngbin0 -> 2301 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4e8.pngbin0 -> 2395 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4e9.pngbin0 -> 2469 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4ea.pngbin0 -> 3215 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4eb.pngbin0 -> 3232 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4ec.pngbin0 -> 3531 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4ed.pngbin0 -> 2832 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4ee.pngbin0 -> 2610 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4ef.pngbin0 -> 3571 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4f0.pngbin0 -> 3636 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4f1.pngbin0 -> 2752 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4f2.pngbin0 -> 3401 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4f3.pngbin0 -> 3452 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4f4.pngbin0 -> 3208 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4f5.pngbin0 -> 4256 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4f6.pngbin0 -> 2884 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4f7.pngbin0 -> 3411 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4f9.pngbin0 -> 3614 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4fa.pngbin0 -> 3572 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4fb.pngbin0 -> 3986 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4fc.pngbin0 -> 2272 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f500.pngbin0 -> 3573 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f501.pngbin0 -> 3301 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f502.pngbin0 -> 3461 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f503.pngbin0 -> 1818 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f504.pngbin0 -> 3851 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f505.pngbin0 -> 2130 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f506.pngbin0 -> 3400 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f507.pngbin0 -> 4742 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f508.pngbin0 -> 5007 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f509.pngbin0 -> 3753 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f50a.pngbin0 -> 3846 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f50b.pngbin0 -> 2766 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f50c.pngbin0 -> 2192 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f50d.pngbin0 -> 3305 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f50e.pngbin0 -> 2956 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f50f.pngbin0 -> 3919 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f510.pngbin0 -> 4279 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f511.pngbin0 -> 2665 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f512.pngbin0 -> 2964 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f513.pngbin0 -> 2884 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f514.pngbin0 -> 3607 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f515.pngbin0 -> 4579 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f516.pngbin0 -> 3558 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f517.pngbin0 -> 2947 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f518.pngbin0 -> 2671 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f519.pngbin0 -> 2357 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f51a.pngbin0 -> 1898 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f51b.pngbin0 -> 2048 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f51c.pngbin0 -> 2179 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f51d.pngbin0 -> 3175 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f51e.pngbin0 -> 4448 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f51f.pngbin0 -> 3378 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f520.pngbin0 -> 4120 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f521.pngbin0 -> 3755 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f522.pngbin0 -> 3845 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f523.pngbin0 -> 4257 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f524.pngbin0 -> 3306 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f525.pngbin0 -> 3153 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f526.pngbin0 -> 3734 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f527.pngbin0 -> 2272 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f528.pngbin0 -> 2987 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f529.pngbin0 -> 2514 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f52a.pngbin0 -> 2148 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f52b.pngbin0 -> 2498 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f52c.pngbin0 -> 3468 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f52d.pngbin0 -> 2963 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f52e.pngbin0 -> 4235 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f52f.pngbin0 -> 3884 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f530.pngbin0 -> 2558 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f531.pngbin0 -> 3748 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f532.pngbin0 -> 1893 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f533.pngbin0 -> 1488 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f534.pngbin0 -> 3221 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f535.pngbin0 -> 3273 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f536.pngbin0 -> 2936 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f537.pngbin0 -> 2857 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f538.pngbin0 -> 1529 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f539.pngbin0 -> 1456 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f53a.pngbin0 -> 1682 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f53b.pngbin0 -> 1678 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f53c.pngbin0 -> 2597 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f53d.pngbin0 -> 2519 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f550.pngbin0 -> 3011 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f551.pngbin0 -> 3043 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f552.pngbin0 -> 2945 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f553.pngbin0 -> 3053 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f554.pngbin0 -> 3042 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f555.pngbin0 -> 4486 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f556.pngbin0 -> 3039 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f557.pngbin0 -> 3045 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f558.pngbin0 -> 2932 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f559.pngbin0 -> 3054 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f55a.pngbin0 -> 3035 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f55b.pngbin0 -> 2922 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f55c.pngbin0 -> 3073 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f55d.pngbin0 -> 3104 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f55e.pngbin0 -> 3018 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f55f.pngbin0 -> 3072 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f560.pngbin0 -> 3055 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f561.pngbin0 -> 2984 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f562.pngbin0 -> 3025 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f563.pngbin0 -> 3075 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f564.pngbin0 -> 3010 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f565.pngbin0 -> 3090 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f566.pngbin0 -> 3075 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f567.pngbin0 -> 3058 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f5fb.pngbin0 -> 3387 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f5fc.pngbin0 -> 3522 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f5fd.pngbin0 -> 4400 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f5fe.pngbin0 -> 2966 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f5ff.pngbin0 -> 2446 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f600.pngbin0 -> 4042 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f601.pngbin0 -> 4137 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f602.pngbin0 -> 4561 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f603.pngbin0 -> 4337 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f604.pngbin0 -> 4274 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f605.pngbin0 -> 4738 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f606.pngbin0 -> 4432 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f607.pngbin0 -> 5071 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f608.pngbin0 -> 4713 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f609.pngbin0 -> 4073 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f60a.pngbin0 -> 4050 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f60b.pngbin0 -> 4301 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f60c.pngbin0 -> 4067 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f60d.pngbin0 -> 4203 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f60e.pngbin0 -> 4114 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f60f.pngbin0 -> 4017 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f610.pngbin0 -> 3612 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f611.pngbin0 -> 3137 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f612.pngbin0 -> 4007 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f613.pngbin0 -> 4303 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f614.pngbin0 -> 3803 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f615.pngbin0 -> 3488 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f616.pngbin0 -> 4183 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f617.pngbin0 -> 3587 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f618.pngbin0 -> 4320 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f619.pngbin0 -> 3698 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f61a.pngbin0 -> 4146 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f61b.pngbin0 -> 3826 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f61c.pngbin0 -> 4452 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f61d.pngbin0 -> 4247 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f61e.pngbin0 -> 3660 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f61f.pngbin0 -> 3790 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f620.pngbin0 -> 3903 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f621.pngbin0 -> 3919 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f622.pngbin0 -> 4297 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f623.pngbin0 -> 4032 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f624.pngbin0 -> 4419 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f625.pngbin0 -> 4299 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f626.pngbin0 -> 3537 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f627.pngbin0 -> 3779 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f628.pngbin0 -> 4256 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f629.pngbin0 -> 4478 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f62a.pngbin0 -> 4379 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f62b.pngbin0 -> 4436 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f62c.pngbin0 -> 3886 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f62d.pngbin0 -> 4323 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f62e.pngbin0 -> 3524 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f62f.pngbin0 -> 3698 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f630.pngbin0 -> 4492 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f631.pngbin0 -> 4707 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f632.pngbin0 -> 4412 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f633.pngbin0 -> 4325 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f634.pngbin0 -> 4184 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f635.pngbin0 -> 4415 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f636.pngbin0 -> 3574 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f637.pngbin0 -> 3827 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f638.pngbin0 -> 4550 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f639.pngbin0 -> 5097 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f63a.pngbin0 -> 4524 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f63b.pngbin0 -> 4587 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f63c.pngbin0 -> 4463 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f63d.pngbin0 -> 4649 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f63e.pngbin0 -> 3833 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f63f.pngbin0 -> 4728 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f640.pngbin0 -> 5095 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f645.pngbin0 -> 4839 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f646.pngbin0 -> 5060 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f647.pngbin0 -> 3973 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f648.pngbin0 -> 4848 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f649.pngbin0 -> 4674 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f64a.pngbin0 -> 4425 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f64b.pngbin0 -> 4590 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f64c.pngbin0 -> 4013 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f64d.pngbin0 -> 3558 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f64e.pngbin0 -> 3966 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f64f.pngbin0 -> 4672 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f680.pngbin0 -> 4128 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f681.pngbin0 -> 3212 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f682.pngbin0 -> 3997 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f683.pngbin0 -> 3044 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f684.pngbin0 -> 2974 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f685.pngbin0 -> 3788 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f686.pngbin0 -> 3775 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f687.pngbin0 -> 3084 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f688.pngbin0 -> 2960 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f689.pngbin0 -> 4031 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f68a.pngbin0 -> 3564 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f68b.pngbin0 -> 1883 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f68c.pngbin0 -> 3066 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f68d.pngbin0 -> 4169 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f68e.pngbin0 -> 3585 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f68f.pngbin0 -> 1643 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f690.pngbin0 -> 2879 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f691.pngbin0 -> 3279 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f692.pngbin0 -> 3863 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f693.pngbin0 -> 3081 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f694.pngbin0 -> 4271 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f695.pngbin0 -> 3178 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f696.pngbin0 -> 4513 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f697.pngbin0 -> 3195 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f698.pngbin0 -> 4949 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f699.pngbin0 -> 3266 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f69a.pngbin0 -> 2790 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f69b.pngbin0 -> 2441 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f69c.pngbin0 -> 4222 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f69d.pngbin0 -> 3439 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f69e.pngbin0 -> 4984 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f69f.pngbin0 -> 3212 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6a0.pngbin0 -> 3691 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6a1.pngbin0 -> 2782 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6a2.pngbin0 -> 3434 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6a3.pngbin0 -> 3788 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6a4.pngbin0 -> 2766 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6a5.pngbin0 -> 2656 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6a6.pngbin0 -> 3058 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6a7.pngbin0 -> 3370 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6a8.pngbin0 -> 4703 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6a9.pngbin0 -> 1273 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6aa.pngbin0 -> 2292 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6ab.pngbin0 -> 2888 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6ac.pngbin0 -> 2163 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6ad.pngbin0 -> 3654 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6ae.pngbin0 -> 3416 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6af.pngbin0 -> 4397 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6b0.pngbin0 -> 3422 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6b1.pngbin0 -> 4354 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6b2.pngbin0 -> 3612 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6b3.pngbin0 -> 4351 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6b4.pngbin0 -> 4965 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6b5.pngbin0 -> 6234 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6b6.pngbin0 -> 2224 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6b7.pngbin0 -> 4423 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6b8.pngbin0 -> 3228 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6b9.pngbin0 -> 2890 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6ba.pngbin0 -> 3184 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6bb.pngbin0 -> 3628 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6bc.pngbin0 -> 2780 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6bd.pngbin0 -> 2265 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6be.pngbin0 -> 3541 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6bf.pngbin0 -> 4810 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6c0.pngbin0 -> 2769 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6c1.pngbin0 -> 2513 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6c2.pngbin0 -> 3420 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6c3.pngbin0 -> 3309 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6c4.pngbin0 -> 3160 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6c5.pngbin0 -> 3379 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_203c.pngbin0 -> 2192 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_2049.pngbin0 -> 2673 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_2122.pngbin0 -> 1407 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_2139.pngbin0 -> 3021 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_2194.pngbin0 -> 2903 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_2195.pngbin0 -> 2983 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_2196.pngbin0 -> 2875 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_2197.pngbin0 -> 2876 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_2198.pngbin0 -> 2944 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_2199.pngbin0 -> 2910 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_21a9.pngbin0 -> 3120 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_21aa.pngbin0 -> 3072 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_231a.pngbin0 -> 3871 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_231b.pngbin0 -> 3453 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_23e9.pngbin0 -> 2781 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_23ea.pngbin0 -> 2752 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_23eb.pngbin0 -> 2891 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_23ec.pngbin0 -> 2834 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_23f0.pngbin0 -> 5171 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_23f3.pngbin0 -> 3419 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_24c2.pngbin0 -> 4058 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_25aa.pngbin0 -> 1286 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_25ab.pngbin0 -> 1376 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_25b6.pngbin0 -> 2770 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_25c0.pngbin0 -> 2753 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_25fb.pngbin0 -> 1417 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_25fc.pngbin0 -> 1265 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_25fd.pngbin0 -> 1187 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_25fe.pngbin0 -> 1013 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_2600.pngbin0 -> 3140 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_2601.pngbin0 -> 3126 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_260e.pngbin0 -> 4058 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_2611.pngbin0 -> 2500 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_2614.pngbin0 -> 3565 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_2615.pngbin0 -> 3487 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_261d.pngbin0 -> 2521 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_263a.pngbin0 -> 4085 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_2648.pngbin0 -> 3556 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_2649.pngbin0 -> 3736 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_264a.pngbin0 -> 3532 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_264b.pngbin0 -> 4360 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_264c.pngbin0 -> 4090 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_264d.pngbin0 -> 3951 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_264e.pngbin0 -> 3450 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_264f.pngbin0 -> 3701 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_2650.pngbin0 -> 3805 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_2651.pngbin0 -> 3918 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_2652.pngbin0 -> 4210 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_2653.pngbin0 -> 3821 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_2660.pngbin0 -> 2133 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_2663.pngbin0 -> 2161 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_2665.pngbin0 -> 2517 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_2666.pngbin0 -> 2471 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_2668.pngbin0 -> 3045 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_267b.pngbin0 -> 3323 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_267f.pngbin0 -> 3690 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_2693.pngbin0 -> 3569 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_26a0.pngbin0 -> 2662 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_26a1.pngbin0 -> 2031 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_26aa.pngbin0 -> 2517 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_26ab.pngbin0 -> 1964 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_26bd.pngbin0 -> 3905 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_26be.pngbin0 -> 4654 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_26c4.pngbin0 -> 3506 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_26c5.pngbin0 -> 4314 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_26ce.pngbin0 -> 3895 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_26d4.pngbin0 -> 2924 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_26ea.pngbin0 -> 3700 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_26f2.pngbin0 -> 3715 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_26f3.pngbin0 -> 2724 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_26f5.pngbin0 -> 3061 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_26fa.pngbin0 -> 3441 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_26fd.pngbin0 -> 3603 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_2702.pngbin0 -> 2959 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_2705.pngbin0 -> 3086 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_2708.pngbin0 -> 3893 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_2709.pngbin0 -> 1820 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_270a.pngbin0 -> 4226 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_270b.pngbin0 -> 3132 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_270c.pngbin0 -> 3404 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_270f.pngbin0 -> 3246 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_2712.pngbin0 -> 2695 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_2714.pngbin0 -> 1379 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_2716.pngbin0 -> 918 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_2728.pngbin0 -> 2142 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_2733.pngbin0 -> 3628 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_2734.pngbin0 -> 3013 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_2744.pngbin0 -> 4456 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_2747.pngbin0 -> 4511 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_274c.pngbin0 -> 1936 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_274e.pngbin0 -> 3388 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_2753.pngbin0 -> 1615 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_2754.pngbin0 -> 1544 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_2755.pngbin0 -> 1334 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_2757.pngbin0 -> 1206 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_2764.pngbin0 -> 2973 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_2795.pngbin0 -> 840 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_2796.pngbin0 -> 357 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_2797.pngbin0 -> 731 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_27a1.pngbin0 -> 2700 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_27b0.pngbin0 -> 1425 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_27bf.pngbin0 -> 3147 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_2934.pngbin0 -> 2934 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_2935.pngbin0 -> 2968 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_2b05.pngbin0 -> 2704 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_2b06.pngbin0 -> 2784 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_2b07.pngbin0 -> 2758 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_2b1b.pngbin0 -> 1658 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_2b1c.pngbin0 -> 2071 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_2b50.pngbin0 -> 2991 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_2b55.pngbin0 -> 2308 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_3030.pngbin0 -> 847 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_303d.pngbin0 -> 2335 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_3297.pngbin0 -> 4056 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-nodpi/emoji_3299.pngbin0 -> 4327 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-xhdpi/ic_emoji_nature_light_activated.pngbin0 -> 2437 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-xhdpi/ic_emoji_nature_light_normal.pngbin0 -> 2371 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-xhdpi/ic_emoji_objects_light_activated.pngbin0 -> 2319 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-xhdpi/ic_emoji_objects_light_normal.pngbin0 -> 2074 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-xhdpi/ic_emoji_people_light_activated.pngbin0 -> 2519 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-xhdpi/ic_emoji_people_light_normal.pngbin0 -> 2526 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-xhdpi/ic_emoji_places_light_activated.pngbin0 -> 1828 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-xhdpi/ic_emoji_places_light_normal.pngbin0 -> 1667 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-xhdpi/ic_emoji_recent_light_activated.pngbin0 -> 2459 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-xhdpi/ic_emoji_recent_light_normal.pngbin0 -> 2346 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-xhdpi/ic_emoji_symbols_light_activated.pngbin0 -> 1457 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-xhdpi/ic_emoji_symbols_light_normal.pngbin0 -> 1267 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-xhdpi/ic_launcher.pngbin0 -> 14383 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-xhdpi/keyboard_background_holo.9.pngbin0 -> 267 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-xhdpi/orca_attach_camera_normal.pngbin0 -> 3384 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-xhdpi/orca_attach_camera_pressed.pngbin0 -> 3390 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-xhdpi/orca_attach_location_normal.pngbin0 -> 1882 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-xhdpi/orca_attach_location_pressed.pngbin0 -> 3078 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-xhdpi/orca_attach_photo_normal.pngbin0 -> 2956 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-xhdpi/orca_attach_photo_pressed.pngbin0 -> 2947 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-xhdpi/orca_attachments_arrow.pngbin0 -> 1126 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-xhdpi/orca_attachments_arrow_reversed.pngbin0 -> 1076 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-xhdpi/orca_composer_divider_horizontal.9.pngbin0 -> 95 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-xhdpi/orca_composer_divider_vertical.9.pngbin0 -> 95 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-xhdpi/orca_composer_popup_active_normal.pngbin0 -> 687 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-xhdpi/orca_composer_popup_active_pressed.pngbin0 -> 1365 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-xhdpi/orca_composer_popup_normal.pngbin0 -> 441 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-xhdpi/orca_composer_popup_pressed.pngbin0 -> 1088 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-xhdpi/orca_composer_tab.9.pngbin0 -> 106 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-xhdpi/orca_composer_tab_active.9.pngbin0 -> 109 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-xhdpi/orca_composer_tab_dark.9.pngbin0 -> 110 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-xhdpi/orca_composer_tab_pressed.9.pngbin0 -> 116 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-xhdpi/orca_composer_top_divider.9.pngbin0 -> 113 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-xhdpi/orca_emoji_backspace_back_normal.pngbin0 -> 1659 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-xhdpi/orca_emoji_backspace_front_normal.pngbin0 -> 1174 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-xhdpi/orca_emoji_backspace_front_pressed.pngbin0 -> 2289 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-xhdpi/orca_emoji_category_cars.pngbin0 -> 1806 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-xhdpi/orca_emoji_category_nature.pngbin0 -> 2551 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-xhdpi/orca_emoji_category_objects.pngbin0 -> 2023 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-xhdpi/orca_emoji_category_people.pngbin0 -> 2011 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-xhdpi/orca_emoji_category_punctuation.pngbin0 -> 1490 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-xhdpi/orca_emoji_more_back_normal.pngbin0 -> 1383 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-xhdpi/orca_emoji_more_front_normal.pngbin0 -> 1028 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-xhdpi/orca_emoji_more_front_pressed.pngbin0 -> 1987 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable-xhdpi/sym_keyboard_delete_holo_dark.pngbin0 -> 1318 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable/emo_im_angel.pngbin0 -> 3592 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable/emo_im_cool.pngbin0 -> 3466 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable/emo_im_crying.pngbin0 -> 3558 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable/emo_im_embarrassed.pngbin0 -> 3619 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable/emo_im_foot_in_mouth.pngbin0 -> 3603 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable/emo_im_happy.pngbin0 -> 3591 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable/emo_im_heart.pngbin0 -> 684 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable/emo_im_kissing.pngbin0 -> 3492 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable/emo_im_laughing.pngbin0 -> 3624 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable/emo_im_lips_are_sealed.pngbin0 -> 3670 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable/emo_im_money_mouth.pngbin0 -> 3649 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable/emo_im_sad.pngbin0 -> 3572 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable/emo_im_surprised.pngbin0 -> 3490 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable/emo_im_tongue_sticking_out.pngbin0 -> 3653 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable/emo_im_undecided.pngbin0 -> 3552 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable/emo_im_winking.pngbin0 -> 3568 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable/emo_im_wtf.pngbin0 -> 3591 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable/emo_im_yelling.pngbin0 -> 3575 bytes
-rw-r--r--libs/emojicon/src/main/res/drawable/ic_emoji_nature_light.xml33
-rw-r--r--libs/emojicon/src/main/res/drawable/ic_emoji_objects_light.xml32
-rw-r--r--libs/emojicon/src/main/res/drawable/ic_emoji_people_light.xml32
-rw-r--r--libs/emojicon/src/main/res/drawable/ic_emoji_places_light.xml32
-rw-r--r--libs/emojicon/src/main/res/drawable/ic_emoji_recent_light.xml32
-rw-r--r--libs/emojicon/src/main/res/drawable/ic_emoji_symbols_light.xml32
-rw-r--r--libs/emojicon/src/main/res/drawable/orca_composer_attach_camera_button.xml6
-rw-r--r--libs/emojicon/src/main/res/drawable/orca_composer_attach_location_button.xml21
-rw-r--r--libs/emojicon/src/main/res/drawable/orca_composer_attach_photo_button.xml6
-rw-r--r--libs/emojicon/src/main/res/drawable/orca_composer_popup_button.xml6
-rw-r--r--libs/emojicon/src/main/res/drawable/orca_composer_popup_button_active.xml6
-rw-r--r--libs/emojicon/src/main/res/drawable/orca_emoji_backspace_front_button.xml5
-rw-r--r--libs/emojicon/src/main/res/drawable/orca_emoji_more_front_button.xml5
-rw-r--r--libs/emojicon/src/main/res/drawable/orca_emoji_tab_background.xml7
-rw-r--r--libs/emojicon/src/main/res/drawable/orca_emoji_tab_dark_background.xml22
-rw-r--r--libs/emojicon/src/main/res/layout/emojicon_grid.xml27
-rw-r--r--libs/emojicon/src/main/res/layout/emojicon_item.xml32
-rw-r--r--libs/emojicon/src/main/res/layout/emojicons.xml119
-rw-r--r--libs/emojicon/src/main/res/values/attrs.xml39
-rw-r--r--libs/emojicon/src/main/res/values/strings.xml3
-rw-r--r--libs/libidn-1.15.jarbin0 -> 111731 bytes
-rw-r--r--libs/minidns/AndroidManifest.xml13
-rw-r--r--libs/minidns/lint.xml3
-rw-r--r--libs/minidns/project.properties14
-rw-r--r--libs/otr4j-0.21.jarbin0 -> 95763 bytes
-rw-r--r--libs/zxing/android-core-3.1.0.jarbin0 -> 11415 bytes
-rw-r--r--libs/zxing/android-integration-3.1.0.jarbin0 -> 11171 bytes
-rw-r--r--libs/zxing/core-3.1.0.jarbin0 -> 538421 bytes
-rw-r--r--lookshe.patch1601
-rw-r--r--manifest-merger-release-report.txt270
-rw-r--r--settings.gradle2
-rw-r--r--src/main/.project33
-rw-r--r--src/main/java/de/tzur/conversations/Settings.java94
-rw-r--r--src/main/java/eu/siacs/conversations/Config.java2
-rw-r--r--src/main/java/eu/siacs/conversations/crypto/PgpEngine.java9
-rw-r--r--src/main/java/eu/siacs/conversations/entities/Account.java5
-rw-r--r--src/main/java/eu/siacs/conversations/entities/Bookmark.java7
-rw-r--r--src/main/java/eu/siacs/conversations/entities/Contact.java8
-rw-r--r--src/main/java/eu/siacs/conversations/entities/Conversation.java10
-rw-r--r--src/main/java/eu/siacs/conversations/entities/ListItem.java2
-rw-r--r--src/main/java/eu/siacs/conversations/entities/Message.java62
-rw-r--r--src/main/java/eu/siacs/conversations/generator/AbstractGenerator.java5
-rw-r--r--src/main/java/eu/siacs/conversations/http/HttpDownloadConnection.java31
-rw-r--r--src/main/java/eu/siacs/conversations/parser/AbstractParser.java39
-rw-r--r--src/main/java/eu/siacs/conversations/parser/MessageParser.java3
-rw-r--r--src/main/java/eu/siacs/conversations/services/NotificationService.java5
-rw-r--r--src/main/java/eu/siacs/conversations/services/XmppConnectionService.java39
-rw-r--r--src/main/java/eu/siacs/conversations/ui/ChangePasswordActivity.java9
-rw-r--r--src/main/java/eu/siacs/conversations/ui/ConversationActivity.java4
-rw-r--r--src/main/java/eu/siacs/conversations/ui/ConversationFragment.java156
-rw-r--r--src/main/java/eu/siacs/conversations/ui/EditMessage.java3
-rw-r--r--src/main/java/eu/siacs/conversations/ui/SettingsActivity.java87
-rw-r--r--src/main/java/eu/siacs/conversations/ui/XmppActivity.java4
-rw-r--r--src/main/java/eu/siacs/conversations/ui/adapter/AccountAdapter.java1
-rw-r--r--src/main/java/eu/siacs/conversations/ui/adapter/ConversationAdapter.java42
-rw-r--r--src/main/java/eu/siacs/conversations/ui/adapter/ListItemAdapter.java27
-rw-r--r--src/main/java/eu/siacs/conversations/ui/adapter/MessageAdapter.java15
-rw-r--r--src/main/java/eu/siacs/conversations/ui/listeners/ConversationMoreMessagesLoadedListener.java118
-rw-r--r--src/main/java/eu/siacs/conversations/ui/listeners/ConversationSwipeRefreshListener.java48
-rw-r--r--src/main/java/eu/siacs/conversations/utils/UIHelper.java26
-rw-r--r--src/main/java/eu/siacs/conversations/xmpp/jingle/JingleConnection.java6
-rw-r--r--src/main/java/eu/siacs/conversations/xmpp/jingle/JingleConnectionManager.java1
-rw-r--r--src/main/project.properties14
-rw-r--r--src/main/res/drawable-hdpi/ic_action_keyboard.pngbin0 -> 359 bytes
-rw-r--r--src/main/res/drawable-hdpi/smiley.pngbin0 -> 1679 bytes
-rw-r--r--src/main/res/drawable-mdpi/ic_action_keyboard.pngbin0 -> 433 bytes
-rw-r--r--src/main/res/drawable-mdpi/smiley.pngbin0 -> 987 bytes
-rw-r--r--src/main/res/drawable-xhdpi/ic_action_keyboard.pngbin0 -> 492 bytes
-rw-r--r--src/main/res/drawable-xhdpi/smiley.pngbin0 -> 1898 bytes
-rw-r--r--src/main/res/drawable-xxhdpi/ic_action_keyboard.pngbin0 -> 472 bytes
-rw-r--r--src/main/res/drawable-xxhdpi/smiley.pngbin0 -> 3140 bytes
-rw-r--r--src/main/res/layout/account_row.xml23
-rw-r--r--src/main/res/layout/activity_edit_account.xml12
-rw-r--r--src/main/res/layout/activity_muc_details.xml12
-rw-r--r--src/main/res/layout/contact.xml5
-rw-r--r--src/main/res/layout/contact_key.xml2
-rw-r--r--src/main/res/layout/conversation_list_row.xml12
-rw-r--r--src/main/res/layout/fragment_conversation.xml19
-rw-r--r--src/main/res/layout/message_received.xml11
-rw-r--r--src/main/res/layout/message_sent.xml11
-rw-r--r--src/main/res/values-ar-rEG/strings.xml2
-rw-r--r--src/main/res/values-bg/strings.xml2
-rw-r--r--src/main/res/values-de/strings.xml367
-rw-r--r--src/main/res/values-fr/strings.xml2
-rw-r--r--src/main/res/values-gl/strings.xml2
-rw-r--r--src/main/res/values-iw/strings.xml2
-rw-r--r--src/main/res/values-ja/strings.xml1
-rw-r--r--src/main/res/values-zh-rTW/strings.xml2
-rw-r--r--src/main/res/values/arrays.xml13
-rw-r--r--src/main/res/values/attrs.xml5
-rw-r--r--src/main/res/values/dimens.xml4
-rw-r--r--src/main/res/values/strings.xml18
-rw-r--r--src/main/res/xml/preferences.xml64
1150 files changed, 9503 insertions, 392 deletions
diff --git a/0001-Added-possibility-to-also-use-pictures-as-smilies.patch b/0001-Added-possibility-to-also-use-pictures-as-smilies.patch
new file mode 100644
index 00000000..1cd6eaf6
--- /dev/null
+++ b/0001-Added-possibility-to-also-use-pictures-as-smilies.patch
@@ -0,0 +1,1400 @@
+From 5e50b597b6aaa4ecdae0135b179cc19ed71bd1d8 Mon Sep 17 00:00:00 2001
+From: lookshe <github@lookshe.org>
+Date: Wed, 10 Sep 2014 21:10:20 +0200
+Subject: [PATCH] Added possibility to also use pictures as smilies
+
+---
+ src/main/res/drawable/emo_im_angel.png | Bin 0 -> 3592 bytes
+ src/main/res/drawable/emo_im_cool.png | Bin 0 -> 3466 bytes
+ src/main/res/drawable/emo_im_crying.png | Bin 0 -> 3558 bytes
+ src/main/res/drawable/emo_im_embarrassed.png | Bin 0 -> 3619 bytes
+ src/main/res/drawable/emo_im_foot_in_mouth.png | Bin 0 -> 3603 bytes
+ src/main/res/drawable/emo_im_happy.png | Bin 0 -> 3591 bytes
+ src/main/res/drawable/emo_im_heart.png | Bin 0 -> 684 bytes
+ src/main/res/drawable/emo_im_kissing.png | Bin 0 -> 3492 bytes
+ src/main/res/drawable/emo_im_laughing.png | Bin 0 -> 3624 bytes
+ src/main/res/drawable/emo_im_lips_are_sealed.png | Bin 0 -> 3670 bytes
+ src/main/res/drawable/emo_im_money_mouth.png | Bin 0 -> 3649 bytes
+ src/main/res/drawable/emo_im_sad.png | Bin 0 -> 3572 bytes
+ src/main/res/drawable/emo_im_surprised.png | Bin 0 -> 3490 bytes
+ src/main/res/drawable/emo_im_tongue_sticking_out.png | Bin 0 -> 3653 bytes
+ src/main/res/drawable/emo_im_undecided.png | Bin 0 -> 3552 bytes
+ src/main/res/drawable/emo_im_winking.png | Bin 0 -> 3568 bytes
+ src/main/res/drawable/emo_im_wtf.png | Bin 0 -> 3591 bytes
+ src/main/res/drawable/emo_im_yelling.png | Bin 0 -> 3575 bytes
+ 22 files changed, 105 insertions(+), 10 deletions(-)
+ create mode 100644 src/main/res/drawable/emo_im_angel.png
+ create mode 100644 src/main/res/drawable/emo_im_cool.png
+ create mode 100644 src/main/res/drawable/emo_im_crying.png
+ create mode 100644 src/main/res/drawable/emo_im_embarrassed.png
+ create mode 100644 src/main/res/drawable/emo_im_foot_in_mouth.png
+ create mode 100644 src/main/res/drawable/emo_im_happy.png
+ create mode 100644 src/main/res/drawable/emo_im_heart.png
+ create mode 100644 src/main/res/drawable/emo_im_kissing.png
+ create mode 100644 src/main/res/drawable/emo_im_laughing.png
+ create mode 100644 src/main/res/drawable/emo_im_lips_are_sealed.png
+ create mode 100644 src/main/res/drawable/emo_im_money_mouth.png
+ create mode 100644 src/main/res/drawable/emo_im_sad.png
+ create mode 100644 src/main/res/drawable/emo_im_surprised.png
+ create mode 100644 src/main/res/drawable/emo_im_tongue_sticking_out.png
+ create mode 100644 src/main/res/drawable/emo_im_undecided.png
+ create mode 100644 src/main/res/drawable/emo_im_winking.png
+ create mode 100644 src/main/res/drawable/emo_im_wtf.png
+ create mode 100644 src/main/res/drawable/emo_im_yelling.png
+
+diff --git a/src/main/res/drawable/emo_im_angel.png b/src/main/res/drawable/emo_im_angel.png
+new file mode 100644
+index 0000000000000000000000000000000000000000..c34dfa69b4b1becdc3e8c107d54b276b110d9a8f
+GIT binary patch
+literal 3592
+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
+O0000<MNUMnLSTaa3c_#z
+
+literal 0
+HcmV?d00001
+
+diff --git a/src/main/res/drawable/emo_im_cool.png b/src/main/res/drawable/emo_im_cool.png
+new file mode 100644
+index 0000000000000000000000000000000000000000..d8eeb34e5d43a9390c9075ec16e7a183ec8cbf1f
+GIT binary patch
+literal 3466
+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
+
+literal 0
+HcmV?d00001
+
+diff --git a/src/main/res/drawable/emo_im_crying.png b/src/main/res/drawable/emo_im_crying.png
+new file mode 100644
+index 0000000000000000000000000000000000000000..1cafdb32613c890dbb4f7317ff98cf3711514550
+GIT binary patch
+literal 3558
+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
+
+literal 0
+HcmV?d00001
+
+diff --git a/src/main/res/drawable/emo_im_embarrassed.png b/src/main/res/drawable/emo_im_embarrassed.png
+new file mode 100644
+index 0000000000000000000000000000000000000000..e4db9634f83afd35404fc577ab0764a7005ea229
+GIT binary patch
+literal 3619
+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
+
+literal 0
+HcmV?d00001
+
+diff --git a/src/main/res/drawable/emo_im_foot_in_mouth.png b/src/main/res/drawable/emo_im_foot_in_mouth.png
+new file mode 100644
+index 0000000000000000000000000000000000000000..09d1fba62e4ac6381f50da3b030b1f248fc74a5c
+GIT binary patch
+literal 3603
+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
+ZYXJRYNqc9=?u7sV002ovPDHLkV1jnTzBvE@
+
+literal 0
+HcmV?d00001
+
+diff --git a/src/main/res/drawable/emo_im_happy.png b/src/main/res/drawable/emo_im_happy.png
+new file mode 100644
+index 0000000000000000000000000000000000000000..b86602ae7e996b160558e88cce1cb8a6b87f4e06
+GIT binary patch
+literal 3591
+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
+N002ovPDHLkV1nAjz<2-v
+
+literal 0
+HcmV?d00001
+
+diff --git a/src/main/res/drawable/emo_im_heart.png b/src/main/res/drawable/emo_im_heart.png
+new file mode 100644
+index 0000000000000000000000000000000000000000..d88bcccd946ac77bf5ccba1603044a8d9bdf8297
+GIT binary patch
+literal 684
+zcmeAS@N?(olHy`uVBq!ia0vp^A|TAc3?z4jzqMyzU{nb3332`Z|36S<v#JviT}Z2j
+zFo5I%hsej>vw!V5`g7-@pSupfnziDHXX2Cod0#i}c{6drm)Xm|E?&RaJm`RJ_#vn0
+z8>v;F+oykOo%*D*=T1(;CRN8*CG8&yTRv5Fzpw5Ea#t(aelBQ!mr%M?!Qx{=>D!=;
+zd9uduL$hDG#ZH&ff9W3g)GF|qZSYeI|JUA0lO(jSx<=hsvb?Wm`#{(Ep^?W!Q}0LS
+zKF6&5r^_2Wbqu?$WPV%4^0vD5ZDor`u2FN8O_%A~K5-1ap=5HyKB!w-<C0_WO)cvy
+ziiUUe9ZuT%Pn6dw;T7Ly>3P%K{eq(Y5^W10w?|&<g00UPMV;yDMs*SjXKlPrC}>uQ
+z%3QSdI&0}#C@3~r!vGj;D%1Br1qM(;NswPK1A{_AgFrw-!h2w-{qF~p4G97F|Nnn~
+z-vA`!Q1JhM0~iH>xc>#fN`TTpK@doo4<x|s_X!5)|NlR)(EtDc`~;u`P<Xw<;kM=~
+zpk22;T^vIsF6W-ljCXXDIQH=QwmCYS6DI_v=ugtsYAM_F{?YGx?&37RzZNn1^Q!;7
+zZ_AKpkXq}vI#ImprNgDorxzW}Fp`hzyRqTc8MD=neUtu1JS&*jkyyU5;?=i;xb-{U
+z8Bcis$LYiGsfCrUjSseZ88|E~a8Z?6l%caus5|J<GqatlrPCLDsa2bOT3l|2lil>Q
+zB9~h(J)Zn#XUw_}fwdFsLspxc?YZ{D{NuNOA6NePmDjbOdF}kN_U!WNAKec11}SXH
+zAA^*RO@3Kobgb-1&b}Y5R!KXL<i)K0_gqSPihf{T-Ly48Z!&ng`njxgN@xNAVp&%6
+
+literal 0
+HcmV?d00001
+
+diff --git a/src/main/res/drawable/emo_im_kissing.png b/src/main/res/drawable/emo_im_kissing.png
+new file mode 100644
+index 0000000000000000000000000000000000000000..56378f6a8dd200ae0664d5154b78de141d809777
+GIT binary patch
+literal 3492
+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
+SPZf;-0000<MNUMnLSTZN>4Gf)
+
+literal 0
+HcmV?d00001
+
+diff --git a/src/main/res/drawable/emo_im_laughing.png b/src/main/res/drawable/emo_im_laughing.png
+new file mode 100644
+index 0000000000000000000000000000000000000000..980bf28118b738ddfda089b920161265847a1942
+GIT binary patch
+literal 3624
+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
+
+literal 0
+HcmV?d00001
+
+diff --git a/src/main/res/drawable/emo_im_lips_are_sealed.png b/src/main/res/drawable/emo_im_lips_are_sealed.png
+new file mode 100644
+index 0000000000000000000000000000000000000000..f2de993b366123a5b9b36cc324b46cc095a0744f
+GIT binary patch
+literal 3670
+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
+
+literal 0
+HcmV?d00001
+
+diff --git a/src/main/res/drawable/emo_im_money_mouth.png b/src/main/res/drawable/emo_im_money_mouth.png
+new file mode 100644
+index 0000000000000000000000000000000000000000..08c53fd690d00bdbde5c7c8f89826449bb8ff199
+GIT binary patch
+literal 3649
+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
+TH1iCn00000NkvXXu0mjfH-h7(
+
+literal 0
+HcmV?d00001
+
+diff --git a/src/main/res/drawable/emo_im_sad.png b/src/main/res/drawable/emo_im_sad.png
+new file mode 100644
+index 0000000000000000000000000000000000000000..31c08d06d522bb87bf8f6e3592cae9c4be49452d
+GIT binary patch
+literal 3572
+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
+
+literal 0
+HcmV?d00001
+
+diff --git a/src/main/res/drawable/emo_im_surprised.png b/src/main/res/drawable/emo_im_surprised.png
+new file mode 100644
+index 0000000000000000000000000000000000000000..abe8c7ad0d2445772de6365fb20a3fee91cb8284
+GIT binary patch
+literal 3490
+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
+Q@&Et;07*qoM6N<$f>?!)(*OVf
+
+literal 0
+HcmV?d00001
+
+diff --git a/src/main/res/drawable/emo_im_tongue_sticking_out.png b/src/main/res/drawable/emo_im_tongue_sticking_out.png
+new file mode 100644
+index 0000000000000000000000000000000000000000..6f0f47b0e1a6115619c8b16f8ca1997d286e8a58
+GIT binary patch
+literal 3653
+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
+XE1h!kIdlzY00000NkvXXu0mjfLeSRg
+
+literal 0
+HcmV?d00001
+
+diff --git a/src/main/res/drawable/emo_im_undecided.png b/src/main/res/drawable/emo_im_undecided.png
+new file mode 100644
+index 0000000000000000000000000000000000000000..eb4f8c5bd39230600f6c0fe9d7f86929c418ccff
+GIT binary patch
+literal 3552
+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
+a_Xhx-&S;z!o5<<_0000<MNUMnLSTYvVxt8B
+
+literal 0
+HcmV?d00001
+
+diff --git a/src/main/res/drawable/emo_im_winking.png b/src/main/res/drawable/emo_im_winking.png
+new file mode 100644
+index 0000000000000000000000000000000000000000..568562ad6fa7a239c0601e02ed9b296340ce25c4
+GIT binary patch
+literal 3568
+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
+
+literal 0
+HcmV?d00001
+
+diff --git a/src/main/res/drawable/emo_im_wtf.png b/src/main/res/drawable/emo_im_wtf.png
+new file mode 100644
+index 0000000000000000000000000000000000000000..41dd47fcc16f24316f5cba2e980f61152658cb1b
+GIT binary patch
+literal 3591
+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
+N002ovPDHLkV1j&|w`l+X
+
+literal 0
+HcmV?d00001
+
+diff --git a/src/main/res/drawable/emo_im_yelling.png b/src/main/res/drawable/emo_im_yelling.png
+new file mode 100644
+index 0000000000000000000000000000000000000000..c3c8612bd102058c07ff7b3a2ae425c74bd03aaf
+GIT binary patch
+literal 3575
+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
+
+literal 0
+HcmV?d00001
+
diff --git a/ManualBuildForFdroid.md b/ManualBuildForFdroid.md
new file mode 100644
index 00000000..26e4f3e5
--- /dev/null
+++ b/ManualBuildForFdroid.md
@@ -0,0 +1,10 @@
+### Build with Android Studio
+1. Adjust build.gradle
+ a. increment versionCode
+ b. enter new versionName
+2. Generate APK
+ a. (menu) Build -> Generate Signed APK
+ b. choose Key store path (AndroidKeystore.jks) -> choose key alias (android-key) -> Next -> Finish
+3. Upload APK to VM with installed FDroid into folder /var/www/fdroid/repo (Repo Folder)
+4. Run fdroid update --create-metadata in directory /var/www/fdroid
+5. Rsync Repo Folder to public F-Droid Repo \ No newline at end of file
diff --git a/TODO b/TODO
new file mode 100644
index 00000000..d4f6bc84
--- /dev/null
+++ b/TODO
@@ -0,0 +1,10 @@
+settings:
+- cleanup and structure
+- remove/fix "enter is send" and "show enter key"
+code:
+- check parseTimestamp
+- change crash reports
+- notification with emojicon textview
+general:
+- add comments to code of XEPs
+- add comments in general
diff --git a/build.gradle b/build.gradle
index 90878de3..30bd1050 100644
--- a/build.gradle
+++ b/build.gradle
@@ -39,6 +39,8 @@ dependencies {
compile 'com.kyleduo.switchbutton:library:1.2.8'
compile 'org.whispersystems:axolotl-android:1.3.4'
compile 'com.makeramen:roundedimageview:2.1.1'
+ compile project(':libs:emojicon')
+ compile project(':libs:colorpicker')
}
android {
@@ -48,8 +50,8 @@ android {
defaultConfig {
minSdkVersion 14
targetSdkVersion 21
- versionCode 87
- versionName "1.6.3"
+ versionCode 65
+ versionName "1.6.3.1"
}
compileOptions {
diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties
index 81cfe7fe..5b7e8296 100644
--- a/gradle/wrapper/gradle-wrapper.properties
+++ b/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
+distributionUrl=http\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/libs/bcprov-jdk15on-1.50.jar b/libs/bcprov-jdk15on-1.50.jar
new file mode 100644
index 00000000..d4b510d7
--- /dev/null
+++ b/libs/bcprov-jdk15on-1.50.jar
Binary files differ
diff --git a/libs/colorpicker/.gitignore b/libs/colorpicker/.gitignore
new file mode 100644
index 00000000..796b96d1
--- /dev/null
+++ b/libs/colorpicker/.gitignore
@@ -0,0 +1 @@
+/build
diff --git a/libs/colorpicker/build.gradle b/libs/colorpicker/build.gradle
new file mode 100644
index 00000000..1920d0f6
--- /dev/null
+++ b/libs/colorpicker/build.gradle
@@ -0,0 +1,18 @@
+apply plugin: 'com.android.library'
+
+android {
+ compileSdkVersion 21
+ buildToolsVersion "21.1.2"
+
+ defaultConfig {
+ minSdkVersion 7
+ targetSdkVersion 21
+ versionCode 2
+ versionName "2.0"
+ }
+ buildTypes {
+ release {
+ minifyEnabled false
+ }
+ }
+}
diff --git a/libs/colorpicker/proguard-rules.pro b/libs/colorpicker/proguard-rules.pro
new file mode 100644
index 00000000..f665b348
--- /dev/null
+++ b/libs/colorpicker/proguard-rules.pro
@@ -0,0 +1,17 @@
+# Add project specific ProGuard rules here.
+# By default, the flags in this file are appended to flags specified
+# in /Developer/android-sdk-macosx/tools/proguard/proguard-android.txt
+# You can edit the include path and order by changing the proguardFiles
+# directive in build.gradle.
+#
+# For more details, see
+# http://developer.android.com/guide/developing/tools/proguard.html
+
+# Add any project specific keep options here:
+
+# If your project uses WebView with JS, uncomment the following
+# and specify the fully qualified class name to the JavaScript interface
+# class:
+#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
+# public *;
+#}
diff --git a/libs/colorpicker/src/main/AndroidManifest.xml b/libs/colorpicker/src/main/AndroidManifest.xml
new file mode 100644
index 00000000..e59bd5b5
--- /dev/null
+++ b/libs/colorpicker/src/main/AndroidManifest.xml
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="utf-8"?>
+<manifest package="yuku.ambilwarna" />
diff --git a/libs/colorpicker/src/main/java/yuku/ambilwarna/AmbilWarnaDialog.java b/libs/colorpicker/src/main/java/yuku/ambilwarna/AmbilWarnaDialog.java
new file mode 100644
index 00000000..5c05e4ec
--- /dev/null
+++ b/libs/colorpicker/src/main/java/yuku/ambilwarna/AmbilWarnaDialog.java
@@ -0,0 +1,298 @@
+package yuku.ambilwarna;
+
+import android.app.AlertDialog;
+import android.content.Context;
+import android.content.DialogInterface;
+import android.content.DialogInterface.OnCancelListener;
+import android.graphics.Color;
+import android.graphics.drawable.GradientDrawable;
+import android.view.LayoutInflater;
+import android.view.MotionEvent;
+import android.view.View;
+import android.view.ViewGroup;
+import android.view.ViewTreeObserver;
+import android.widget.ImageView;
+import android.widget.RelativeLayout;
+
+public class AmbilWarnaDialog {
+ public interface OnAmbilWarnaListener {
+ void onCancel(AmbilWarnaDialog dialog);
+
+ void onOk(AmbilWarnaDialog dialog, int color);
+ }
+
+ final AlertDialog dialog;
+ private final boolean supportsAlpha;
+ final OnAmbilWarnaListener listener;
+ final View viewHue;
+ final AmbilWarnaSquare viewSatVal;
+ final ImageView viewCursor;
+ final ImageView viewAlphaCursor;
+ final View viewOldColor;
+ final View viewNewColor;
+ final View viewAlphaOverlay;
+ final ImageView viewTarget;
+ final ImageView viewAlphaCheckered;
+ final ViewGroup viewContainer;
+ final float[] currentColorHsv = new float[3];
+ int alpha;
+
+ /**
+ * Create an AmbilWarnaDialog.
+ *
+ * @param context activity context
+ * @param color current color
+ * @param listener an OnAmbilWarnaListener, allowing you to get back error or OK
+ */
+ public AmbilWarnaDialog(final Context context, int color, OnAmbilWarnaListener listener) {
+ this(context, color, false, listener);
+ }
+
+ /**
+ * Create an AmbilWarnaDialog.
+ *
+ * @param context activity context
+ * @param color current color
+ * @param supportsAlpha whether alpha/transparency controls are enabled
+ * @param listener an OnAmbilWarnaListener, allowing you to get back error or OK
+ */
+ public AmbilWarnaDialog(final Context context, int color, boolean supportsAlpha, OnAmbilWarnaListener listener) {
+ this.supportsAlpha = supportsAlpha;
+ this.listener = listener;
+
+ if (!supportsAlpha) { // remove alpha if not supported
+ color = color | 0xff000000;
+ }
+
+ Color.colorToHSV(color, currentColorHsv);
+ alpha = Color.alpha(color);
+
+ final View view = LayoutInflater.from(context).inflate(R.layout.ambilwarna_dialog, null);
+ viewHue = view.findViewById(R.id.ambilwarna_viewHue);
+ viewSatVal = (AmbilWarnaSquare) view.findViewById(R.id.ambilwarna_viewSatBri);
+ viewCursor = (ImageView) view.findViewById(R.id.ambilwarna_cursor);
+ viewOldColor = view.findViewById(R.id.ambilwarna_oldColor);
+ viewNewColor = view.findViewById(R.id.ambilwarna_newColor);
+ viewTarget = (ImageView) view.findViewById(R.id.ambilwarna_target);
+ viewContainer = (ViewGroup) view.findViewById(R.id.ambilwarna_viewContainer);
+ viewAlphaOverlay = view.findViewById(R.id.ambilwarna_overlay);
+ viewAlphaCursor = (ImageView) view.findViewById(R.id.ambilwarna_alphaCursor);
+ viewAlphaCheckered = (ImageView) view.findViewById(R.id.ambilwarna_alphaCheckered);
+
+ { // hide/show alpha
+ viewAlphaOverlay.setVisibility(supportsAlpha? View.VISIBLE: View.GONE);
+ viewAlphaCursor.setVisibility(supportsAlpha? View.VISIBLE: View.GONE);
+ viewAlphaCheckered.setVisibility(supportsAlpha? View.VISIBLE: View.GONE);
+ }
+
+ viewSatVal.setHue(getHue());
+ viewOldColor.setBackgroundColor(color);
+ viewNewColor.setBackgroundColor(color);
+
+ viewHue.setOnTouchListener(new View.OnTouchListener() {
+ @Override
+ public boolean onTouch(View v, MotionEvent event) {
+ if (event.getAction() == MotionEvent.ACTION_MOVE
+ || event.getAction() == MotionEvent.ACTION_DOWN
+ || event.getAction() == MotionEvent.ACTION_UP) {
+
+ float y = event.getY();
+ if (y < 0.f) y = 0.f;
+ if (y > viewHue.getMeasuredHeight()) {
+ y = viewHue.getMeasuredHeight() - 0.001f; // to avoid jumping the cursor from bottom to top.
+ }
+ float hue = 360.f - 360.f / viewHue.getMeasuredHeight() * y;
+ if (hue == 360.f) hue = 0.f;
+ setHue(hue);
+
+ // update view
+ viewSatVal.setHue(getHue());
+ moveCursor();
+ viewNewColor.setBackgroundColor(getColor());
+ updateAlphaView();
+ return true;
+ }
+ return false;
+ }
+ });
+
+ if (supportsAlpha) viewAlphaCheckered.setOnTouchListener(new View.OnTouchListener() {
+ @Override
+ public boolean onTouch(View v, MotionEvent event) {
+ if ((event.getAction() == MotionEvent.ACTION_MOVE)
+ || (event.getAction() == MotionEvent.ACTION_DOWN)
+ || (event.getAction() == MotionEvent.ACTION_UP)) {
+
+ float y = event.getY();
+ if (y < 0.f) {
+ y = 0.f;
+ }
+ if (y > viewAlphaCheckered.getMeasuredHeight()) {
+ y = viewAlphaCheckered.getMeasuredHeight() - 0.001f; // to avoid jumping the cursor from bottom to top.
+ }
+ final int a = Math.round(255.f - ((255.f / viewAlphaCheckered.getMeasuredHeight()) * y));
+ AmbilWarnaDialog.this.setAlpha(a);
+
+ // update view
+ moveAlphaCursor();
+ int col = AmbilWarnaDialog.this.getColor();
+ int c = a << 24 | col & 0x00ffffff;
+ viewNewColor.setBackgroundColor(c);
+ return true;
+ }
+ return false;
+ }
+ });
+ viewSatVal.setOnTouchListener(new View.OnTouchListener() {
+ @Override
+ public boolean onTouch(View v, MotionEvent event) {
+ if (event.getAction() == MotionEvent.ACTION_MOVE
+ || event.getAction() == MotionEvent.ACTION_DOWN
+ || event.getAction() == MotionEvent.ACTION_UP) {
+
+ float x = event.getX(); // touch event are in dp units.
+ float y = event.getY();
+
+ if (x < 0.f) x = 0.f;
+ if (x > viewSatVal.getMeasuredWidth()) x = viewSatVal.getMeasuredWidth();
+ if (y < 0.f) y = 0.f;
+ if (y > viewSatVal.getMeasuredHeight()) y = viewSatVal.getMeasuredHeight();
+
+ setSat(1.f / viewSatVal.getMeasuredWidth() * x);
+ setVal(1.f - (1.f / viewSatVal.getMeasuredHeight() * y));
+
+ // update view
+ moveTarget();
+ viewNewColor.setBackgroundColor(getColor());
+
+ return true;
+ }
+ return false;
+ }
+ });
+
+ dialog = new AlertDialog.Builder(context)
+ .setPositiveButton(android.R.string.ok, new DialogInterface.OnClickListener() {
+ @Override
+ public void onClick(DialogInterface dialog, int which) {
+ if (AmbilWarnaDialog.this.listener != null) {
+ AmbilWarnaDialog.this.listener.onOk(AmbilWarnaDialog.this, getColor());
+ }
+ }
+ })
+ .setNegativeButton(android.R.string.cancel, new DialogInterface.OnClickListener() {
+ @Override
+ public void onClick(DialogInterface dialog, int which) {
+ if (AmbilWarnaDialog.this.listener != null) {
+ AmbilWarnaDialog.this.listener.onCancel(AmbilWarnaDialog.this);
+ }
+ }
+ })
+ .setOnCancelListener(new OnCancelListener() {
+ // if back button is used, call back our listener.
+ @Override
+ public void onCancel(DialogInterface paramDialogInterface) {
+ if (AmbilWarnaDialog.this.listener != null) {
+ AmbilWarnaDialog.this.listener.onCancel(AmbilWarnaDialog.this);
+ }
+
+ }
+ })
+ .create();
+ // kill all padding from the dialog window
+ dialog.setView(view, 0, 0, 0, 0);
+
+ // move cursor & target on first draw
+ ViewTreeObserver vto = view.getViewTreeObserver();
+ vto.addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() {
+ @Override
+ public void onGlobalLayout() {
+ moveCursor();
+ if (AmbilWarnaDialog.this.supportsAlpha) moveAlphaCursor();
+ moveTarget();
+ if (AmbilWarnaDialog.this.supportsAlpha) updateAlphaView();
+ view.getViewTreeObserver().removeGlobalOnLayoutListener(this);
+ }
+ });
+ }
+
+ protected void moveCursor() {
+ float y = viewHue.getMeasuredHeight() - (getHue() * viewHue.getMeasuredHeight() / 360.f);
+ if (y == viewHue.getMeasuredHeight()) y = 0.f;
+ RelativeLayout.LayoutParams layoutParams = (RelativeLayout.LayoutParams) viewCursor.getLayoutParams();
+ layoutParams.leftMargin = (int) (viewHue.getLeft() - Math.floor(viewCursor.getMeasuredWidth() / 2) - viewContainer.getPaddingLeft());
+ layoutParams.topMargin = (int) (viewHue.getTop() + y - Math.floor(viewCursor.getMeasuredHeight() / 2) - viewContainer.getPaddingTop());
+ viewCursor.setLayoutParams(layoutParams);
+ }
+
+ protected void moveTarget() {
+ float x = getSat() * viewSatVal.getMeasuredWidth();
+ float y = (1.f - getVal()) * viewSatVal.getMeasuredHeight();
+ RelativeLayout.LayoutParams layoutParams = (RelativeLayout.LayoutParams) viewTarget.getLayoutParams();
+ layoutParams.leftMargin = (int) (viewSatVal.getLeft() + x - Math.floor(viewTarget.getMeasuredWidth() / 2) - viewContainer.getPaddingLeft());
+ layoutParams.topMargin = (int) (viewSatVal.getTop() + y - Math.floor(viewTarget.getMeasuredHeight() / 2) - viewContainer.getPaddingTop());
+ viewTarget.setLayoutParams(layoutParams);
+ }
+
+ protected void moveAlphaCursor() {
+ final int measuredHeight = this.viewAlphaCheckered.getMeasuredHeight();
+ float y = measuredHeight - ((this.getAlpha() * measuredHeight) / 255.f);
+ final RelativeLayout.LayoutParams layoutParams = (RelativeLayout.LayoutParams) this.viewAlphaCursor.getLayoutParams();
+ layoutParams.leftMargin = (int) (this.viewAlphaCheckered.getLeft() - Math.floor(this.viewAlphaCursor.getMeasuredWidth() / 2) - this.viewContainer.getPaddingLeft());
+ layoutParams.topMargin = (int) ((this.viewAlphaCheckered.getTop() + y) - Math.floor(this.viewAlphaCursor.getMeasuredHeight() / 2) - this.viewContainer.getPaddingTop());
+
+ this.viewAlphaCursor.setLayoutParams(layoutParams);
+ }
+
+ private int getColor() {
+ final int argb = Color.HSVToColor(currentColorHsv);
+ return alpha << 24 | (argb & 0x00ffffff);
+ }
+
+ private float getHue() {
+ return currentColorHsv[0];
+ }
+
+ private float getAlpha() {
+ return this.alpha;
+ }
+
+ private float getSat() {
+ return currentColorHsv[1];
+ }
+
+ private float getVal() {
+ return currentColorHsv[2];
+ }
+
+ private void setHue(float hue) {
+ currentColorHsv[0] = hue;
+ }
+
+ private void setSat(float sat) {
+ currentColorHsv[1] = sat;
+ }
+
+ private void setAlpha(int alpha) {
+ this.alpha = alpha;
+ }
+
+ private void setVal(float val) {
+ currentColorHsv[2] = val;
+ }
+
+ public void show() {
+ dialog.show();
+ }
+
+ public AlertDialog getDialog() {
+ return dialog;
+ }
+
+ private void updateAlphaView() {
+ final GradientDrawable gd = new GradientDrawable(GradientDrawable.Orientation.TOP_BOTTOM, new int[] {
+ Color.HSVToColor(currentColorHsv), 0x0
+ });
+ viewAlphaOverlay.setBackgroundDrawable(gd);
+ }
+}
diff --git a/libs/colorpicker/src/main/java/yuku/ambilwarna/AmbilWarnaSquare.java b/libs/colorpicker/src/main/java/yuku/ambilwarna/AmbilWarnaSquare.java
new file mode 100644
index 00000000..1f0c86e4
--- /dev/null
+++ b/libs/colorpicker/src/main/java/yuku/ambilwarna/AmbilWarnaSquare.java
@@ -0,0 +1,46 @@
+package yuku.ambilwarna;
+
+import android.annotation.SuppressLint;
+import android.content.Context;
+import android.graphics.Canvas;
+import android.graphics.Color;
+import android.graphics.ComposeShader;
+import android.graphics.LinearGradient;
+import android.graphics.Paint;
+import android.graphics.PorterDuff;
+import android.graphics.Shader;
+import android.graphics.Shader.TileMode;
+import android.util.AttributeSet;
+import android.view.View;
+
+public class AmbilWarnaSquare extends View {
+ Paint paint;
+ Shader luar;
+ final float[] color = { 1.f, 1.f, 1.f };
+
+ public AmbilWarnaSquare(Context context, AttributeSet attrs) {
+ super(context, attrs);
+ }
+
+ public AmbilWarnaSquare(Context context, AttributeSet attrs, int defStyle) {
+ super(context, attrs, defStyle);
+ }
+
+ @SuppressLint("DrawAllocation") @Override protected void onDraw(Canvas canvas) {
+ super.onDraw(canvas);
+ if (paint == null) {
+ paint = new Paint();
+ luar = new LinearGradient(0.f, 0.f, 0.f, this.getMeasuredHeight(), 0xffffffff, 0xff000000, TileMode.CLAMP);
+ }
+ int rgb = Color.HSVToColor(color);
+ Shader dalam = new LinearGradient(0.f, 0.f, this.getMeasuredWidth(), 0.f, 0xffffffff, rgb, TileMode.CLAMP);
+ ComposeShader shader = new ComposeShader(luar, dalam, PorterDuff.Mode.MULTIPLY);
+ paint.setShader(shader);
+ canvas.drawRect(0.f, 0.f, this.getMeasuredWidth(), this.getMeasuredHeight(), paint);
+ }
+
+ void setHue(float hue) {
+ color[0] = hue;
+ invalidate();
+ }
+}
diff --git a/libs/colorpicker/src/main/java/yuku/ambilwarna/widget/AmbilWarnaPrefWidgetView.java b/libs/colorpicker/src/main/java/yuku/ambilwarna/widget/AmbilWarnaPrefWidgetView.java
new file mode 100644
index 00000000..7ed4c4e3
--- /dev/null
+++ b/libs/colorpicker/src/main/java/yuku/ambilwarna/widget/AmbilWarnaPrefWidgetView.java
@@ -0,0 +1,34 @@
+package yuku.ambilwarna.widget;
+
+import android.content.Context;
+import android.graphics.Canvas;
+import android.graphics.Paint;
+import android.graphics.Paint.Style;
+import android.util.AttributeSet;
+import android.util.FloatMath;
+import android.view.View;
+
+public class AmbilWarnaPrefWidgetView extends View {
+ Paint paint;
+ float rectSize;
+ float strokeWidth;
+
+ public AmbilWarnaPrefWidgetView(Context context, AttributeSet attrs) {
+ super(context, attrs);
+
+ float density = context.getResources().getDisplayMetrics().density;
+ rectSize = FloatMath.floor(24.f * density + 0.5f);
+ strokeWidth = FloatMath.floor(1.f * density + 0.5f);
+
+ paint = new Paint();
+ paint.setColor(0xffffffff);
+ paint.setStyle(Style.STROKE);
+ paint.setStrokeWidth(strokeWidth);
+ }
+
+ @Override protected void onDraw(Canvas canvas) {
+ super.onDraw(canvas);
+
+ canvas.drawRect(strokeWidth, strokeWidth, rectSize - strokeWidth, rectSize - strokeWidth, paint);
+ }
+}
diff --git a/libs/colorpicker/src/main/java/yuku/ambilwarna/widget/AmbilWarnaPreference.java b/libs/colorpicker/src/main/java/yuku/ambilwarna/widget/AmbilWarnaPreference.java
new file mode 100644
index 00000000..2c634eb9
--- /dev/null
+++ b/libs/colorpicker/src/main/java/yuku/ambilwarna/widget/AmbilWarnaPreference.java
@@ -0,0 +1,134 @@
+package yuku.ambilwarna.widget;
+
+import android.content.Context;
+import android.content.res.TypedArray;
+import android.os.Parcel;
+import android.os.Parcelable;
+import android.preference.Preference;
+import android.util.AttributeSet;
+import android.view.View;
+
+import yuku.ambilwarna.AmbilWarnaDialog;
+import yuku.ambilwarna.R;
+
+public class AmbilWarnaPreference extends Preference {
+ private final boolean supportsAlpha;
+ int value;
+
+ public AmbilWarnaPreference(Context context, AttributeSet attrs) {
+ super(context, attrs);
+
+ final TypedArray ta = context.obtainStyledAttributes(attrs, R.styleable.AmbilWarnaPreference);
+ supportsAlpha = ta.getBoolean(R.styleable.AmbilWarnaPreference_supportsAlpha, false);
+
+ setWidgetLayoutResource(R.layout.ambilwarna_pref_widget);
+ }
+
+ @Override protected void onBindView(View view) {
+ super.onBindView(view);
+
+ // Set our custom views inside the layout
+ final View box = view.findViewById(R.id.ambilwarna_pref_widget_box);
+ if (box != null) {
+ box.setBackgroundColor(value);
+ }
+ }
+
+ @Override protected void onClick() {
+ new AmbilWarnaDialog(getContext(), value, supportsAlpha, new AmbilWarnaDialog.OnAmbilWarnaListener() {
+ @Override public void onOk(AmbilWarnaDialog dialog, int color) {
+ if (!callChangeListener(color)) return; // They don't want the value to be set
+ value = color;
+ persistInt(value);
+ notifyChanged();
+ }
+
+ @Override public void onCancel(AmbilWarnaDialog dialog) {
+ // nothing to do
+ }
+ }).show();
+ }
+
+ public void forceSetValue(int value) {
+ this.value = value;
+ persistInt(value);
+ notifyChanged();
+ }
+
+ @Override protected Object onGetDefaultValue(TypedArray a, int index) {
+ // This preference type's value type is Integer, so we read the default value from the attributes as an Integer.
+ return a.getInteger(index, 0);
+ }
+
+ @Override protected void onSetInitialValue(boolean restoreValue, Object defaultValue) {
+ if (restoreValue) { // Restore state
+ value = getPersistedInt(value);
+ } else { // Set state
+ int value = (Integer) defaultValue;
+ this.value = value;
+ persistInt(value);
+ }
+ }
+
+ /*
+ * Suppose a client uses this preference type without persisting. We
+ * must save the instance state so it is able to, for example, survive
+ * orientation changes.
+ */
+ @Override protected Parcelable onSaveInstanceState() {
+ final Parcelable superState = super.onSaveInstanceState();
+ if (isPersistent()) return superState; // No need to save instance state since it's persistent
+
+ final SavedState myState = new SavedState(superState);
+ myState.value = value;
+ return myState;
+ }
+
+ @Override protected void onRestoreInstanceState(Parcelable state) {
+ if (!state.getClass().equals(SavedState.class)) {
+ // Didn't save state for us in onSaveInstanceState
+ super.onRestoreInstanceState(state);
+ return;
+ }
+
+ // Restore the instance state
+ SavedState myState = (SavedState) state;
+ super.onRestoreInstanceState(myState.getSuperState());
+ this.value = myState.value;
+ notifyChanged();
+ }
+
+ /**
+ * SavedState, a subclass of {@link android.preference.Preference.BaseSavedState}, will store the state
+ * of MyPreference, a subclass of Preference.
+ * <p>
+ * It is important to always call through to super methods.
+ */
+ private static class SavedState extends BaseSavedState {
+ int value;
+
+ public SavedState(Parcel source) {
+ super(source);
+ value = source.readInt();
+ }
+
+ @Override public void writeToParcel(Parcel dest, int flags) {
+ super.writeToParcel(dest, flags);
+ dest.writeInt(value);
+ }
+
+ public SavedState(Parcelable superState) {
+ super(superState);
+ }
+
+ @SuppressWarnings("unused") public static final Creator<SavedState> CREATOR = new Creator<SavedState>() {
+ public SavedState createFromParcel(Parcel in) {
+ return new SavedState(in);
+ }
+
+ public SavedState[] newArray(int size) {
+ return new SavedState[size];
+ }
+ };
+ }
+}
diff --git a/libs/colorpicker/src/main/res/drawable-hdpi/ambilwarna_arrow_down.png b/libs/colorpicker/src/main/res/drawable-hdpi/ambilwarna_arrow_down.png
new file mode 100644
index 00000000..d2aa1b09
--- /dev/null
+++ b/libs/colorpicker/src/main/res/drawable-hdpi/ambilwarna_arrow_down.png
Binary files differ
diff --git a/libs/colorpicker/src/main/res/drawable-hdpi/ambilwarna_arrow_right.png b/libs/colorpicker/src/main/res/drawable-hdpi/ambilwarna_arrow_right.png
new file mode 100644
index 00000000..faf1bd75
--- /dev/null
+++ b/libs/colorpicker/src/main/res/drawable-hdpi/ambilwarna_arrow_right.png
Binary files differ
diff --git a/libs/colorpicker/src/main/res/drawable-hdpi/ambilwarna_cursor.png b/libs/colorpicker/src/main/res/drawable-hdpi/ambilwarna_cursor.png
new file mode 100644
index 00000000..28cebc32
--- /dev/null
+++ b/libs/colorpicker/src/main/res/drawable-hdpi/ambilwarna_cursor.png
Binary files differ
diff --git a/libs/colorpicker/src/main/res/drawable-hdpi/ambilwarna_target.png b/libs/colorpicker/src/main/res/drawable-hdpi/ambilwarna_target.png
new file mode 100644
index 00000000..6f7bf906
--- /dev/null
+++ b/libs/colorpicker/src/main/res/drawable-hdpi/ambilwarna_target.png
Binary files differ
diff --git a/libs/colorpicker/src/main/res/drawable-ldpi/ambilwarna_arrow_down.png b/libs/colorpicker/src/main/res/drawable-ldpi/ambilwarna_arrow_down.png
new file mode 100644
index 00000000..19d6d4ef
--- /dev/null
+++ b/libs/colorpicker/src/main/res/drawable-ldpi/ambilwarna_arrow_down.png
Binary files differ
diff --git a/libs/colorpicker/src/main/res/drawable-ldpi/ambilwarna_arrow_right.png b/libs/colorpicker/src/main/res/drawable-ldpi/ambilwarna_arrow_right.png
new file mode 100644
index 00000000..ace7986b
--- /dev/null
+++ b/libs/colorpicker/src/main/res/drawable-ldpi/ambilwarna_arrow_right.png
Binary files differ
diff --git a/libs/colorpicker/src/main/res/drawable-ldpi/ambilwarna_cursor.png b/libs/colorpicker/src/main/res/drawable-ldpi/ambilwarna_cursor.png
new file mode 100644
index 00000000..539eeeb9
--- /dev/null
+++ b/libs/colorpicker/src/main/res/drawable-ldpi/ambilwarna_cursor.png
Binary files differ
diff --git a/libs/colorpicker/src/main/res/drawable-ldpi/ambilwarna_target.png b/libs/colorpicker/src/main/res/drawable-ldpi/ambilwarna_target.png
new file mode 100644
index 00000000..4fdf5977
--- /dev/null
+++ b/libs/colorpicker/src/main/res/drawable-ldpi/ambilwarna_target.png
Binary files differ
diff --git a/libs/colorpicker/src/main/res/drawable-mdpi/ambilwarna_alphacheckered.png b/libs/colorpicker/src/main/res/drawable-mdpi/ambilwarna_alphacheckered.png
new file mode 100644
index 00000000..5ceec214
--- /dev/null
+++ b/libs/colorpicker/src/main/res/drawable-mdpi/ambilwarna_alphacheckered.png
Binary files differ
diff --git a/libs/colorpicker/src/main/res/drawable-mdpi/ambilwarna_arrow_down.png b/libs/colorpicker/src/main/res/drawable-mdpi/ambilwarna_arrow_down.png
new file mode 100644
index 00000000..5f434552
--- /dev/null
+++ b/libs/colorpicker/src/main/res/drawable-mdpi/ambilwarna_arrow_down.png
Binary files differ
diff --git a/libs/colorpicker/src/main/res/drawable-mdpi/ambilwarna_arrow_right.png b/libs/colorpicker/src/main/res/drawable-mdpi/ambilwarna_arrow_right.png
new file mode 100644
index 00000000..23d54619
--- /dev/null
+++ b/libs/colorpicker/src/main/res/drawable-mdpi/ambilwarna_arrow_right.png
Binary files differ
diff --git a/libs/colorpicker/src/main/res/drawable-mdpi/ambilwarna_cursor.png b/libs/colorpicker/src/main/res/drawable-mdpi/ambilwarna_cursor.png
new file mode 100644
index 00000000..c336e883
--- /dev/null
+++ b/libs/colorpicker/src/main/res/drawable-mdpi/ambilwarna_cursor.png
Binary files differ
diff --git a/libs/colorpicker/src/main/res/drawable-mdpi/ambilwarna_hue.png b/libs/colorpicker/src/main/res/drawable-mdpi/ambilwarna_hue.png
new file mode 100644
index 00000000..09d28397
--- /dev/null
+++ b/libs/colorpicker/src/main/res/drawable-mdpi/ambilwarna_hue.png
Binary files differ
diff --git a/libs/colorpicker/src/main/res/drawable-mdpi/ambilwarna_target.png b/libs/colorpicker/src/main/res/drawable-mdpi/ambilwarna_target.png
new file mode 100644
index 00000000..56fa0de9
--- /dev/null
+++ b/libs/colorpicker/src/main/res/drawable-mdpi/ambilwarna_target.png
Binary files differ
diff --git a/libs/colorpicker/src/main/res/drawable-xhdpi/ambilwarna_arrow_down.png b/libs/colorpicker/src/main/res/drawable-xhdpi/ambilwarna_arrow_down.png
new file mode 100644
index 00000000..592dd7ca
--- /dev/null
+++ b/libs/colorpicker/src/main/res/drawable-xhdpi/ambilwarna_arrow_down.png
Binary files differ
diff --git a/libs/colorpicker/src/main/res/drawable-xhdpi/ambilwarna_arrow_right.png b/libs/colorpicker/src/main/res/drawable-xhdpi/ambilwarna_arrow_right.png
new file mode 100644
index 00000000..04f655ad
--- /dev/null
+++ b/libs/colorpicker/src/main/res/drawable-xhdpi/ambilwarna_arrow_right.png
Binary files differ
diff --git a/libs/colorpicker/src/main/res/drawable-xhdpi/ambilwarna_cursor.png b/libs/colorpicker/src/main/res/drawable-xhdpi/ambilwarna_cursor.png
new file mode 100644
index 00000000..ddea3167
--- /dev/null
+++ b/libs/colorpicker/src/main/res/drawable-xhdpi/ambilwarna_cursor.png
Binary files differ
diff --git a/libs/colorpicker/src/main/res/drawable-xhdpi/ambilwarna_target.png b/libs/colorpicker/src/main/res/drawable-xhdpi/ambilwarna_target.png
new file mode 100644
index 00000000..bb4b1eb7
--- /dev/null
+++ b/libs/colorpicker/src/main/res/drawable-xhdpi/ambilwarna_target.png
Binary files differ
diff --git a/libs/colorpicker/src/main/res/drawable/ambilwarna_alphacheckered_tiled.xml b/libs/colorpicker/src/main/res/drawable/ambilwarna_alphacheckered_tiled.xml
new file mode 100644
index 00000000..049f1332
--- /dev/null
+++ b/libs/colorpicker/src/main/res/drawable/ambilwarna_alphacheckered_tiled.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="utf-8"?>
+<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
+ android:src="@drawable/ambilwarna_alphacheckered"
+ android:tileMode="repeat" >
+
+</bitmap> \ No newline at end of file
diff --git a/libs/colorpicker/src/main/res/layout-land/ambilwarna_dialog.xml b/libs/colorpicker/src/main/res/layout-land/ambilwarna_dialog.xml
new file mode 100644
index 00000000..bd4b9089
--- /dev/null
+++ b/libs/colorpicker/src/main/res/layout-land/ambilwarna_dialog.xml
@@ -0,0 +1,127 @@
+<?xml version="1.0" encoding="utf-8"?>
+
+<RelativeLayout
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:id="@+id/ambilwarna_viewContainer"
+ android:paddingTop="@dimen/ambilwarna_spacer"
+ android:paddingRight="@dimen/ambilwarna_spacer"
+ android:paddingBottom="0dp"
+ android:paddingLeft="@dimen/ambilwarna_spacer"
+ android:clipToPadding="false"
+ android:layout_gravity="center"
+>
+ <LinearLayout
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:id="@+id/ambilwarna_state"
+ android:orientation="vertical"
+ android:paddingRight="@dimen/ambilwarna_spacer"
+ android:gravity="center"
+ android:layout_centerVertical="true"
+ >
+ <FrameLayout
+ android:layout_width="60dp"
+ android:layout_height="30dp">
+
+ <View
+ android:layout_width="fill_parent"
+ android:layout_height="fill_parent"
+ android:background="@drawable/ambilwarna_alphacheckered_tiled" />
+
+ <View
+ android:id="@+id/ambilwarna_oldColor"
+ android:layout_width="fill_parent"
+ android:layout_height="fill_parent"
+ android:background="#faa" />
+ </FrameLayout>
+
+ <ImageView
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:src="@drawable/ambilwarna_arrow_down"
+ android:paddingTop="@dimen/ambilwarna_spacer"
+ android:paddingBottom="@dimen/ambilwarna_spacer"
+ />
+ <FrameLayout
+ android:layout_width="60dp"
+ android:layout_height="30dp">
+
+ <View
+ android:layout_width="fill_parent"
+ android:layout_height="fill_parent"
+ android:background="@drawable/ambilwarna_alphacheckered_tiled" />
+
+ <View
+ android:id="@+id/ambilwarna_newColor"
+ android:layout_width="fill_parent"
+ android:layout_height="fill_parent"
+ android:background="#aaf" />
+ </FrameLayout>
+ </LinearLayout>
+ <yuku.ambilwarna.AmbilWarnaSquare
+ android:id="@+id/ambilwarna_viewSatBri"
+ android:layout_width="@dimen/ambilwarna_hsvWidth"
+ android:layout_height="@dimen/ambilwarna_hsvHeight"
+ android:layout_toRightOf="@id/ambilwarna_state"
+ android:layerType="software"
+ />
+ <!-- needed because i can't get parent keeping its bottom layout
+ and its wrap_content height. This view will serve as a bottom spacer. -->
+ <View
+ android:layout_width="@dimen/ambilwarna_spacer"
+ android:layout_height="@dimen/ambilwarna_spacer"
+ android:layout_below="@id/ambilwarna_viewSatBri"
+ />
+ <ImageView
+ android:id="@+id/ambilwarna_viewHue"
+ android:layout_width="@dimen/ambilwarna_hueWidth"
+ android:layout_height="@dimen/ambilwarna_hsvHeight"
+ android:layout_toRightOf="@id/ambilwarna_viewSatBri"
+ android:layout_marginLeft="@dimen/ambilwarna_spacer"
+ android:src="@drawable/ambilwarna_hue"
+ android:scaleType="fitXY"
+ />
+
+ <ImageView
+ android:id="@+id/ambilwarna_alphaCheckered"
+ android:layout_width="@dimen/ambilwarna_hueWidth"
+ android:layout_height="@dimen/ambilwarna_hsvHeight"
+ android:layout_marginLeft="@dimen/ambilwarna_spacer"
+ android:layout_toRightOf="@id/ambilwarna_viewHue"
+ android:scaleType="fitXY"
+ android:src="@drawable/ambilwarna_alphacheckered_tiled" />
+
+ <View
+ android:id="@+id/ambilwarna_overlay"
+ android:layout_width="@dimen/ambilwarna_hueWidth"
+ android:layout_height="@dimen/ambilwarna_hsvHeight"
+ android:layout_marginLeft="@dimen/ambilwarna_spacer"
+ android:layout_toRightOf="@id/ambilwarna_viewHue" />
+
+ <ImageView
+ android:id="@+id/ambilwarna_cursor"
+ android:layout_width="9dp"
+ android:layout_height="9dp"
+ android:src="@drawable/ambilwarna_cursor"
+ android:scaleType="matrix"
+ />
+
+ <ImageView
+ android:id="@+id/ambilwarna_alphaCursor"
+ android:layout_width="9dp"
+ android:layout_height="9dp"
+ android:scaleType="matrix"
+ android:src="@drawable/ambilwarna_cursor" />
+
+ <ImageView
+ android:id="@+id/ambilwarna_target"
+ android:layout_width="15dp"
+ android:layout_height="15dp"
+ android:src="@drawable/ambilwarna_target"
+ android:scaleType="matrix"
+ />
+
+
+</RelativeLayout>
diff --git a/libs/colorpicker/src/main/res/layout/ambilwarna_dialog.xml b/libs/colorpicker/src/main/res/layout/ambilwarna_dialog.xml
new file mode 100644
index 00000000..8a1a403e
--- /dev/null
+++ b/libs/colorpicker/src/main/res/layout/ambilwarna_dialog.xml
@@ -0,0 +1,122 @@
+<?xml version="1.0" encoding="utf-8"?>
+<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ android:id="@+id/ambilwarna_dialogView"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:layout_gravity="center" >
+
+ <RelativeLayout
+ android:id="@+id/ambilwarna_viewContainer"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_gravity="center"
+ android:clipToPadding="false"
+ android:paddingBottom="@dimen/ambilwarna_spacer"
+ android:paddingLeft="@dimen/ambilwarna_spacer"
+ android:paddingRight="@dimen/ambilwarna_spacer"
+ android:paddingTop="@dimen/ambilwarna_spacer" >
+
+ <yuku.ambilwarna.AmbilWarnaSquare
+ android:id="@+id/ambilwarna_viewSatBri"
+ android:layout_width="@dimen/ambilwarna_hsvWidth"
+ android:layout_height="@dimen/ambilwarna_hsvHeight"
+ android:layerType="software" />
+
+ <ImageView
+ android:id="@+id/ambilwarna_viewHue"
+ android:layout_width="@dimen/ambilwarna_hueWidth"
+ android:layout_height="@dimen/ambilwarna_hsvHeight"
+ android:layout_marginLeft="@dimen/ambilwarna_spacer"
+ android:layout_toRightOf="@id/ambilwarna_viewSatBri"
+ android:scaleType="fitXY"
+ android:src="@drawable/ambilwarna_hue" />
+
+ <ImageView
+ android:id="@+id/ambilwarna_alphaCheckered"
+ android:layout_width="@dimen/ambilwarna_hueWidth"
+ android:layout_height="@dimen/ambilwarna_hsvHeight"
+ android:layout_marginLeft="@dimen/ambilwarna_spacer"
+ android:layout_toRightOf="@id/ambilwarna_viewHue"
+ android:scaleType="fitXY"
+ android:src="@drawable/ambilwarna_alphacheckered_tiled" />
+
+ <View
+ android:id="@+id/ambilwarna_overlay"
+ android:layout_width="@dimen/ambilwarna_hueWidth"
+ android:layout_height="@dimen/ambilwarna_hsvHeight"
+ android:layout_marginLeft="@dimen/ambilwarna_spacer"
+ android:layout_toRightOf="@id/ambilwarna_viewHue" />
+
+ <ImageView
+ android:id="@+id/ambilwarna_cursor"
+ android:layout_width="9dp"
+ android:layout_height="9dp"
+ android:scaleType="matrix"
+ android:src="@drawable/ambilwarna_cursor" />
+
+ <ImageView
+ android:id="@+id/ambilwarna_alphaCursor"
+ android:layout_width="9dp"
+ android:layout_height="9dp"
+ android:scaleType="matrix"
+ android:src="@drawable/ambilwarna_cursor" />
+
+ <ImageView
+ android:id="@+id/ambilwarna_target"
+ android:layout_width="15dp"
+ android:layout_height="15dp"
+ android:scaleType="matrix"
+ android:src="@drawable/ambilwarna_target" />
+
+ <LinearLayout
+ android:id="@+id/ambilwarna_state"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_below="@id/ambilwarna_viewSatBri"
+ android:layout_centerHorizontal="true"
+ android:layout_marginTop="@dimen/ambilwarna_spacer"
+ android:gravity="center"
+ android:orientation="horizontal" >
+
+ <FrameLayout
+ android:layout_width="60dp"
+ android:layout_height="30dp" >
+
+ <View
+ android:layout_width="fill_parent"
+ android:layout_height="fill_parent"
+ android:background="@drawable/ambilwarna_alphacheckered_tiled" />
+
+ <View
+ android:id="@+id/ambilwarna_oldColor"
+ android:layout_width="fill_parent"
+ android:layout_height="fill_parent"
+ android:background="#faa" />
+ </FrameLayout>
+
+ <ImageView
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:paddingLeft="@dimen/ambilwarna_spacer"
+ android:paddingRight="@dimen/ambilwarna_spacer"
+ android:src="@drawable/ambilwarna_arrow_right" />
+
+ <FrameLayout
+ android:layout_width="60dp"
+ android:layout_height="30dp" >
+
+ <View
+ android:layout_width="fill_parent"
+ android:layout_height="fill_parent"
+ android:background="@drawable/ambilwarna_alphacheckered_tiled" />
+
+ <View
+ android:id="@+id/ambilwarna_newColor"
+ android:layout_width="fill_parent"
+ android:layout_height="fill_parent"
+ android:background="#aaf" />
+ </FrameLayout>
+ </LinearLayout>
+ </RelativeLayout>
+
+</FrameLayout> \ No newline at end of file
diff --git a/libs/colorpicker/src/main/res/layout/ambilwarna_pref_widget.xml b/libs/colorpicker/src/main/res/layout/ambilwarna_pref_widget.xml
new file mode 100644
index 00000000..bbab8d95
--- /dev/null
+++ b/libs/colorpicker/src/main/res/layout/ambilwarna_pref_widget.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="utf-8"?>
+<FrameLayout
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:layout_width="24dp"
+ android:layout_height="24dp"
+ android:layout_gravity="center_vertical"
+ android:layout_marginRight="6dp"
+ android:focusable="false"
+ android:clickable="false">
+
+ <ImageView
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:scaleType="fitXY"
+ android:src="@drawable/ambilwarna_alphacheckered_tiled"/>
+
+
+ <yuku.ambilwarna.widget.AmbilWarnaPrefWidgetView
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:id="@+id/ambilwarna_pref_widget_box"
+ />
+</FrameLayout>
diff --git a/libs/colorpicker/src/main/res/values-land/dimen.xml b/libs/colorpicker/src/main/res/values-land/dimen.xml
new file mode 100644
index 00000000..f1c48326
--- /dev/null
+++ b/libs/colorpicker/src/main/res/values-land/dimen.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+ <dimen name="ambilwarna_hsvWidth">240dp</dimen>
+ <dimen name="ambilwarna_hsvHeight">120dp</dimen>
+</resources> \ No newline at end of file
diff --git a/libs/colorpicker/src/main/res/values-xlarge-land/dimen.xml b/libs/colorpicker/src/main/res/values-xlarge-land/dimen.xml
new file mode 100644
index 00000000..1e72cca5
--- /dev/null
+++ b/libs/colorpicker/src/main/res/values-xlarge-land/dimen.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+ <dimen name="ambilwarna_hsvWidth">240dp</dimen>
+ <dimen name="ambilwarna_hsvHeight">240dp</dimen>
+</resources> \ No newline at end of file
diff --git a/libs/colorpicker/src/main/res/values/attrs.xml b/libs/colorpicker/src/main/res/values/attrs.xml
new file mode 100644
index 00000000..ee65a5b9
--- /dev/null
+++ b/libs/colorpicker/src/main/res/values/attrs.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+ <declare-styleable name="AmbilWarnaPreference">
+ <attr name="supportsAlpha"
+ format="boolean"/>
+ </declare-styleable>
+</resources>
diff --git a/libs/colorpicker/src/main/res/values/dimen.xml b/libs/colorpicker/src/main/res/values/dimen.xml
new file mode 100644
index 00000000..92f53a2e
--- /dev/null
+++ b/libs/colorpicker/src/main/res/values/dimen.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+ <dimen name="ambilwarna_hsvHeight">240dp</dimen>
+ <dimen name="ambilwarna_hsvWidth">240dp</dimen>
+ <dimen name="ambilwarna_hueWidth">30dp</dimen>
+ <dimen name="ambilwarna_spacer">8dp</dimen>
+</resources>
diff --git a/libs/emojicon/build.gradle b/libs/emojicon/build.gradle
new file mode 100644
index 00000000..a9776be0
--- /dev/null
+++ b/libs/emojicon/build.gradle
@@ -0,0 +1,22 @@
+apply plugin: 'com.android.library'
+
+android {
+ compileSdkVersion 19
+ buildToolsVersion "21.1.2"
+
+ defaultConfig {
+ minSdkVersion 8
+ targetSdkVersion 19
+ }
+
+ buildTypes {
+ release {
+ minifyEnabled false
+ proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
+ }
+ }
+}
+
+dependencies {
+ compile 'com.android.support:support-v4:19.1.0'
+}
diff --git a/libs/emojicon/lint.xml b/libs/emojicon/lint.xml
new file mode 100644
index 00000000..8423c0ef
--- /dev/null
+++ b/libs/emojicon/lint.xml
@@ -0,0 +1,3 @@
+<?xml version="1.0" encoding="utf-8"?>
+<lint>
+</lint> \ No newline at end of file
diff --git a/libs/emojicon/src/main/AndroidManifest.xml b/libs/emojicon/src/main/AndroidManifest.xml
new file mode 100644
index 00000000..a07b8e21
--- /dev/null
+++ b/libs/emojicon/src/main/AndroidManifest.xml
@@ -0,0 +1,12 @@
+<manifest xmlns:android="http://schemas.android.com/apk/res/android"
+ package="github.ankushsachdeva.emojicon">
+
+ <uses-sdk android:minSdkVersion="8" android:targetSdkVersion="19"/>
+
+ <application android:allowBackup="true"
+ android:label="@string/app_name"
+ android:icon="@drawable/ic_launcher">
+
+ </application>
+
+</manifest>
diff --git a/libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/EmojiAdapter.java b/libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/EmojiAdapter.java
new file mode 100644
index 00000000..e3dc221d
--- /dev/null
+++ b/libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/EmojiAdapter.java
@@ -0,0 +1,74 @@
+/*
+ * Copyright 2014 Ankush Sachdeva
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package github.ankushsachdeva.emojicon;
+
+import github.ankushsachdeva.emojicon.EmojiconGridView.OnEmojiconClickedListener;
+import github.ankushsachdeva.emojicon.emoji.Emojicon;
+
+import java.util.List;
+
+import android.content.Context;
+import android.view.View;
+import android.view.View.OnClickListener;
+import android.view.ViewGroup;
+import android.widget.ArrayAdapter;
+import android.widget.TextView;
+
+import github.ankushsachdeva.emojicon.R;
+
+/**
+ * @author Ankush Sachdeva (sankush@yahoo.co.in)
+ */
+class EmojiAdapter extends ArrayAdapter<Emojicon> {
+ OnEmojiconClickedListener emojiClickListener;
+ public EmojiAdapter(Context context, List<Emojicon> data) {
+ super(context, R.layout.emojicon_item, data);
+ }
+
+ public EmojiAdapter(Context context, Emojicon[] data) {
+ super(context, R.layout.emojicon_item, data);
+ }
+
+ public void setEmojiClickListener(OnEmojiconClickedListener listener){
+ this.emojiClickListener = listener;
+ }
+
+ @Override
+ public View getView(final int position, View convertView, ViewGroup parent) {
+ View v = convertView;
+ if (v == null) {
+ v = View.inflate(getContext(), R.layout.emojicon_item, null);
+ ViewHolder holder = new ViewHolder();
+ holder.icon = (TextView) v.findViewById(R.id.emojicon_icon);
+ v.setTag(holder);
+ }
+ Emojicon emoji = getItem(position);
+ ViewHolder holder = (ViewHolder) v.getTag();
+ holder.icon.setText(emoji.getEmoji());
+ holder.icon.setOnClickListener(new OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ emojiClickListener.onEmojiconClicked(getItem(position));
+ }
+ });
+ return v;
+ }
+
+ class ViewHolder {
+ TextView icon;
+ }
+} \ No newline at end of file
diff --git a/libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/EmojiconEditText.java b/libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/EmojiconEditText.java
new file mode 100644
index 00000000..8301dd14
--- /dev/null
+++ b/libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/EmojiconEditText.java
@@ -0,0 +1,67 @@
+/*
+ * Copyright 2014 Ankush Sachdeva
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package github.ankushsachdeva.emojicon;
+
+import github.ankushsachdeva.emojicon.R;
+
+import android.content.Context;
+import android.content.res.TypedArray;
+import android.util.AttributeSet;
+import android.widget.EditText;
+
+/**
+ * @author Hieu Rocker (rockerhieu@gmail.com).
+ */
+public class EmojiconEditText extends EditText {
+ private int mEmojiconSize;
+
+ public EmojiconEditText(Context context) {
+ super(context);
+ mEmojiconSize = (int) getTextSize();
+
+ }
+
+ public EmojiconEditText(Context context, AttributeSet attrs) {
+ super(context, attrs);
+ init(attrs);
+ }
+
+ public EmojiconEditText(Context context, AttributeSet attrs, int defStyle) {
+ super(context, attrs, defStyle);
+ init(attrs);
+ }
+
+ private void init(AttributeSet attrs) {
+ TypedArray a = getContext().obtainStyledAttributes(attrs, R.styleable.Emojicon);
+ mEmojiconSize = (int) a.getDimension(R.styleable.Emojicon_emojiconSize, getTextSize());
+ a.recycle();
+ setText(getText());
+ }
+
+ @Override
+ protected void onTextChanged(CharSequence text, int start, int lengthBefore, int lengthAfter) {
+ super.onTextChanged(text,start,lengthBefore,lengthAfter);
+ EmojiconHandler.addEmojis(getContext(), getText(), mEmojiconSize);
+ }
+
+ /**
+ * Set the size of emojicon in pixels.
+ */
+ public void setEmojiconSize(int pixels) {
+ mEmojiconSize = pixels;
+ }
+}
diff --git a/libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/EmojiconGridView.java b/libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/EmojiconGridView.java
new file mode 100644
index 00000000..38df8b13
--- /dev/null
+++ b/libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/EmojiconGridView.java
@@ -0,0 +1,78 @@
+/*
+ * Copyright 2014 Ankush Sachdeva
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package github.ankushsachdeva.emojicon;
+
+import github.ankushsachdeva.emojicon.emoji.Emojicon;
+import github.ankushsachdeva.emojicon.emoji.People;
+
+import java.util.Arrays;
+
+import android.app.Activity;
+import android.content.Context;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.widget.GridView;
+
+import github.ankushsachdeva.emojicon.R;
+
+/**
+ * @author Hieu Rocker (rockerhieu@gmail.com)
+ * @author Ankush Sachdeva (sankush@yahoo.co.in)
+ */
+public class EmojiconGridView{
+ public View rootView;
+ EmojiconsPopup mEmojiconPopup;
+ EmojiconRecents mRecents;
+ Emojicon[] mData;
+
+ public EmojiconGridView(Context context, Emojicon[] emojicons, EmojiconRecents recents, EmojiconsPopup emojiconPopup) {
+ LayoutInflater inflater = (LayoutInflater) context.getSystemService(Activity.LAYOUT_INFLATER_SERVICE);
+ mEmojiconPopup = emojiconPopup;
+ rootView = inflater.inflate(R.layout.emojicon_grid, null);
+ setRecents(recents);
+ GridView gridView = (GridView) rootView.findViewById(R.id.Emoji_GridView);
+ if (emojicons== null) {
+ mData = People.DATA;
+ } else {
+ Object[] o = (Object[]) emojicons;
+ mData = Arrays.asList(o).toArray(new Emojicon[o.length]);
+ }
+ EmojiAdapter mAdapter = new EmojiAdapter(rootView.getContext(), mData);
+ mAdapter.setEmojiClickListener(new OnEmojiconClickedListener() {
+
+ @Override
+ public void onEmojiconClicked(Emojicon emojicon) {
+ if (mEmojiconPopup.onEmojiconClickedListener != null) {
+ mEmojiconPopup.onEmojiconClickedListener.onEmojiconClicked(emojicon);
+ }
+ if (mRecents != null) {
+ mRecents.addRecentEmoji(rootView.getContext(), emojicon);
+ }
+ }
+ });
+ gridView.setAdapter(mAdapter);
+ }
+
+ private void setRecents(EmojiconRecents recents) {
+ mRecents = recents;
+ }
+
+ public interface OnEmojiconClickedListener {
+ void onEmojiconClicked(Emojicon emojicon);
+ }
+
+}
diff --git a/libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/EmojiconHandler.java b/libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/EmojiconHandler.java
new file mode 100644
index 00000000..bc1d670d
--- /dev/null
+++ b/libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/EmojiconHandler.java
@@ -0,0 +1,1623 @@
+/*
+ * Copyright 2014 Ankush Sachdeva
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package github.ankushsachdeva.emojicon;
+
+import github.ankushsachdeva.emojicon.R;
+
+import android.content.Context;
+import android.text.Spannable;
+import android.util.Pair;
+import android.util.Patterns;
+import android.util.SparseIntArray;
+
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.Map;
+import java.util.Set;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+
+/**
+ * @author Hieu Rocker (rockerhieu@gmail.com)
+ */
+public final class EmojiconHandler {
+ private EmojiconHandler() {
+ }
+
+ public static boolean isParseEmoticons() {
+ return bParseEmoticons;
+ }
+
+ public static void setParseEmoticons(boolean bParseEmoticons) {
+ EmojiconHandler.bParseEmoticons = bParseEmoticons;
+ }
+
+ private static boolean bParseEmoticons = true;
+
+ private static final SparseIntArray sEmojisMap = new SparseIntArray(846);
+ private static final SparseIntArray sSoftbanksMap = new SparseIntArray(471);
+
+ static {
+ // People
+ sEmojisMap.put(0x1f604, R.drawable.emoji_1f604);
+ sEmojisMap.put(0x1f603, R.drawable.emoji_1f603);
+ sEmojisMap.put(0x1f600, R.drawable.emoji_1f600);
+ sEmojisMap.put(0x1f60a, R.drawable.emoji_1f60a);
+ sEmojisMap.put(0x263a, R.drawable.emoji_263a);
+ sEmojisMap.put(0x1f609, R.drawable.emoji_1f609);
+ sEmojisMap.put(0x1f60d, R.drawable.emoji_1f60d);
+ sEmojisMap.put(0x1f618, R.drawable.emoji_1f618);
+ sEmojisMap.put(0x1f61a, R.drawable.emoji_1f61a);
+ sEmojisMap.put(0x1f617, R.drawable.emoji_1f617);
+ sEmojisMap.put(0x1f619, R.drawable.emoji_1f619);
+ sEmojisMap.put(0x1f61c, R.drawable.emoji_1f61c);
+ sEmojisMap.put(0x1f61d, R.drawable.emoji_1f61d);
+ sEmojisMap.put(0x1f61b, R.drawable.emoji_1f61b);
+ sEmojisMap.put(0x1f633, R.drawable.emoji_1f633);
+ sEmojisMap.put(0x1f601, R.drawable.emoji_1f601);
+ sEmojisMap.put(0x1f614, R.drawable.emoji_1f614);
+ sEmojisMap.put(0x1f60c, R.drawable.emoji_1f60c);
+ sEmojisMap.put(0x1f612, R.drawable.emoji_1f612);
+ sEmojisMap.put(0x1f61e, R.drawable.emoji_1f61e);
+ sEmojisMap.put(0x1f623, R.drawable.emoji_1f623);
+ sEmojisMap.put(0x1f622, R.drawable.emoji_1f622);
+ sEmojisMap.put(0x1f602, R.drawable.emoji_1f602);
+ sEmojisMap.put(0x1f62d, R.drawable.emoji_1f62d);
+ sEmojisMap.put(0x1f62a, R.drawable.emoji_1f62a);
+ sEmojisMap.put(0x1f625, R.drawable.emoji_1f625);
+ sEmojisMap.put(0x1f630, R.drawable.emoji_1f630);
+ sEmojisMap.put(0x1f605, R.drawable.emoji_1f605);
+ sEmojisMap.put(0x1f613, R.drawable.emoji_1f613);
+ sEmojisMap.put(0x1f629, R.drawable.emoji_1f629);
+ sEmojisMap.put(0x1f62b, R.drawable.emoji_1f62b);
+ sEmojisMap.put(0x1f628, R.drawable.emoji_1f628);
+ sEmojisMap.put(0x1f631, R.drawable.emoji_1f631);
+ sEmojisMap.put(0x1f620, R.drawable.emoji_1f620);
+ sEmojisMap.put(0x1f621, R.drawable.emoji_1f621);
+ sEmojisMap.put(0x1f624, R.drawable.emoji_1f624);
+ sEmojisMap.put(0x1f616, R.drawable.emoji_1f616);
+ sEmojisMap.put(0x1f606, R.drawable.emoji_1f606);
+ sEmojisMap.put(0x1f60b, R.drawable.emoji_1f60b);
+ sEmojisMap.put(0x1f637, R.drawable.emoji_1f637);
+ sEmojisMap.put(0x1f60e, R.drawable.emoji_1f60e);
+ sEmojisMap.put(0x1f634, R.drawable.emoji_1f634);
+ sEmojisMap.put(0x1f635, R.drawable.emoji_1f635);
+ sEmojisMap.put(0x1f632, R.drawable.emoji_1f632);
+ sEmojisMap.put(0x1f61f, R.drawable.emoji_1f61f);
+ sEmojisMap.put(0x1f626, R.drawable.emoji_1f626);
+ sEmojisMap.put(0x1f627, R.drawable.emoji_1f627);
+ sEmojisMap.put(0x1f608, R.drawable.emoji_1f608);
+ sEmojisMap.put(0x1f47f, R.drawable.emoji_1f47f);
+ sEmojisMap.put(0x1f62e, R.drawable.emoji_1f62e);
+ sEmojisMap.put(0x1f62c, R.drawable.emoji_1f62c);
+ sEmojisMap.put(0x1f610, R.drawable.emoji_1f610);
+ sEmojisMap.put(0x1f615, R.drawable.emoji_1f615);
+ sEmojisMap.put(0x1f62f, R.drawable.emoji_1f62f);
+ sEmojisMap.put(0x1f636, R.drawable.emoji_1f636);
+ sEmojisMap.put(0x1f607, R.drawable.emoji_1f607);
+ sEmojisMap.put(0x1f60f, R.drawable.emoji_1f60f);
+ sEmojisMap.put(0x1f611, R.drawable.emoji_1f611);
+ sEmojisMap.put(0x1f472, R.drawable.emoji_1f472);
+ sEmojisMap.put(0x1f473, R.drawable.emoji_1f473);
+ sEmojisMap.put(0x1f46e, R.drawable.emoji_1f46e);
+ sEmojisMap.put(0x1f477, R.drawable.emoji_1f477);
+ sEmojisMap.put(0x1f482, R.drawable.emoji_1f482);
+ sEmojisMap.put(0x1f476, R.drawable.emoji_1f476);
+ sEmojisMap.put(0x1f466, R.drawable.emoji_1f466);
+ sEmojisMap.put(0x1f467, R.drawable.emoji_1f467);
+ sEmojisMap.put(0x1f468, R.drawable.emoji_1f468);
+ sEmojisMap.put(0x1f469, R.drawable.emoji_1f469);
+ sEmojisMap.put(0x1f474, R.drawable.emoji_1f474);
+ sEmojisMap.put(0x1f475, R.drawable.emoji_1f475);
+ sEmojisMap.put(0x1f471, R.drawable.emoji_1f471);
+ sEmojisMap.put(0x1f47c, R.drawable.emoji_1f47c);
+ sEmojisMap.put(0x1f478, R.drawable.emoji_1f478);
+ sEmojisMap.put(0x1f63a, R.drawable.emoji_1f63a);
+ sEmojisMap.put(0x1f638, R.drawable.emoji_1f638);
+ sEmojisMap.put(0x1f63b, R.drawable.emoji_1f63b);
+ sEmojisMap.put(0x1f63d, R.drawable.emoji_1f63d);
+ sEmojisMap.put(0x1f63c, R.drawable.emoji_1f63c);
+ sEmojisMap.put(0x1f640, R.drawable.emoji_1f640);
+ sEmojisMap.put(0x1f63f, R.drawable.emoji_1f63f);
+ sEmojisMap.put(0x1f639, R.drawable.emoji_1f639);
+ sEmojisMap.put(0x1f63e, R.drawable.emoji_1f63e);
+ sEmojisMap.put(0x1f479, R.drawable.emoji_1f479);
+ sEmojisMap.put(0x1f47a, R.drawable.emoji_1f47a);
+ sEmojisMap.put(0x1f648, R.drawable.emoji_1f648);
+ sEmojisMap.put(0x1f649, R.drawable.emoji_1f649);
+ sEmojisMap.put(0x1f64a, R.drawable.emoji_1f64a);
+ sEmojisMap.put(0x1f480, R.drawable.emoji_1f480);
+ sEmojisMap.put(0x1f47d, R.drawable.emoji_1f47d);
+ sEmojisMap.put(0x1f4a9, R.drawable.emoji_1f4a9);
+ sEmojisMap.put(0x1f525, R.drawable.emoji_1f525);
+ sEmojisMap.put(0x2728, R.drawable.emoji_2728);
+ sEmojisMap.put(0x1f31f, R.drawable.emoji_1f31f);
+ sEmojisMap.put(0x1f4ab, R.drawable.emoji_1f4ab);
+ sEmojisMap.put(0x1f4a5, R.drawable.emoji_1f4a5);
+ sEmojisMap.put(0x1f4a2, R.drawable.emoji_1f4a2);
+ sEmojisMap.put(0x1f4a6, R.drawable.emoji_1f4a6);
+ sEmojisMap.put(0x1f4a7, R.drawable.emoji_1f4a7);
+ sEmojisMap.put(0x1f4a4, R.drawable.emoji_1f4a4);
+ sEmojisMap.put(0x1f4a8, R.drawable.emoji_1f4a8);
+ sEmojisMap.put(0x1f442, R.drawable.emoji_1f442);
+ sEmojisMap.put(0x1f440, R.drawable.emoji_1f440);
+ sEmojisMap.put(0x1f443, R.drawable.emoji_1f443);
+ sEmojisMap.put(0x1f445, R.drawable.emoji_1f445);
+ sEmojisMap.put(0x1f444, R.drawable.emoji_1f444);
+ sEmojisMap.put(0x1f44d, R.drawable.emoji_1f44d);
+ sEmojisMap.put(0x1f44e, R.drawable.emoji_1f44e);
+ sEmojisMap.put(0x1f44c, R.drawable.emoji_1f44c);
+ sEmojisMap.put(0x1f44a, R.drawable.emoji_1f44a);
+ sEmojisMap.put(0x270a, R.drawable.emoji_270a);
+ sEmojisMap.put(0x270c, R.drawable.emoji_270c);
+ sEmojisMap.put(0x1f44b, R.drawable.emoji_1f44b);
+ sEmojisMap.put(0x270b, R.drawable.emoji_270b);
+ sEmojisMap.put(0x1f450, R.drawable.emoji_1f450);
+ sEmojisMap.put(0x1f446, R.drawable.emoji_1f446);
+ sEmojisMap.put(0x1f447, R.drawable.emoji_1f447);
+ sEmojisMap.put(0x1f449, R.drawable.emoji_1f449);
+ sEmojisMap.put(0x1f448, R.drawable.emoji_1f448);
+ sEmojisMap.put(0x1f64c, R.drawable.emoji_1f64c);
+ sEmojisMap.put(0x1f64f, R.drawable.emoji_1f64f);
+ sEmojisMap.put(0x261d, R.drawable.emoji_261d);
+ sEmojisMap.put(0x1f44f, R.drawable.emoji_1f44f);
+ sEmojisMap.put(0x1f4aa, R.drawable.emoji_1f4aa);
+ sEmojisMap.put(0x1f6b6, R.drawable.emoji_1f6b6);
+ sEmojisMap.put(0x1f3c3, R.drawable.emoji_1f3c3);
+ sEmojisMap.put(0x1f483, R.drawable.emoji_1f483);
+ sEmojisMap.put(0x1f46b, R.drawable.emoji_1f46b);
+ sEmojisMap.put(0x1f46a, R.drawable.emoji_1f46a);
+ sEmojisMap.put(0x1f46c, R.drawable.emoji_1f46c);
+ sEmojisMap.put(0x1f46d, R.drawable.emoji_1f46d);
+ sEmojisMap.put(0x1f48f, R.drawable.emoji_1f48f);
+ sEmojisMap.put(0x1f491, R.drawable.emoji_1f491);
+ sEmojisMap.put(0x1f46f, R.drawable.emoji_1f46f);
+ sEmojisMap.put(0x1f646, R.drawable.emoji_1f646);
+ sEmojisMap.put(0x1f645, R.drawable.emoji_1f645);
+ sEmojisMap.put(0x1f481, R.drawable.emoji_1f481);
+ sEmojisMap.put(0x1f64b, R.drawable.emoji_1f64b);
+ sEmojisMap.put(0x1f486, R.drawable.emoji_1f486);
+ sEmojisMap.put(0x1f487, R.drawable.emoji_1f487);
+ sEmojisMap.put(0x1f485, R.drawable.emoji_1f485);
+ sEmojisMap.put(0x1f470, R.drawable.emoji_1f470);
+ sEmojisMap.put(0x1f64e, R.drawable.emoji_1f64e);
+ sEmojisMap.put(0x1f64d, R.drawable.emoji_1f64d);
+ sEmojisMap.put(0x1f647, R.drawable.emoji_1f647);
+ sEmojisMap.put(0x1f3a9, R.drawable.emoji_1f3a9);
+ sEmojisMap.put(0x1f451, R.drawable.emoji_1f451);
+ sEmojisMap.put(0x1f452, R.drawable.emoji_1f452);
+ sEmojisMap.put(0x1f45f, R.drawable.emoji_1f45f);
+ sEmojisMap.put(0x1f45e, R.drawable.emoji_1f45e);
+ sEmojisMap.put(0x1f461, R.drawable.emoji_1f461);
+ sEmojisMap.put(0x1f460, R.drawable.emoji_1f460);
+ sEmojisMap.put(0x1f462, R.drawable.emoji_1f462);
+ sEmojisMap.put(0x1f455, R.drawable.emoji_1f455);
+ sEmojisMap.put(0x1f454, R.drawable.emoji_1f454);
+ sEmojisMap.put(0x1f45a, R.drawable.emoji_1f45a);
+ sEmojisMap.put(0x1f457, R.drawable.emoji_1f457);
+ sEmojisMap.put(0x1f3bd, R.drawable.emoji_1f3bd);
+ sEmojisMap.put(0x1f456, R.drawable.emoji_1f456);
+ sEmojisMap.put(0x1f458, R.drawable.emoji_1f458);
+ sEmojisMap.put(0x1f459, R.drawable.emoji_1f459);
+ sEmojisMap.put(0x1f4bc, R.drawable.emoji_1f4bc);
+ sEmojisMap.put(0x1f45c, R.drawable.emoji_1f45c);
+ sEmojisMap.put(0x1f45d, R.drawable.emoji_1f45d);
+ sEmojisMap.put(0x1f45b, R.drawable.emoji_1f45b);
+ sEmojisMap.put(0x1f453, R.drawable.emoji_1f453);
+ sEmojisMap.put(0x1f380, R.drawable.emoji_1f380);
+ sEmojisMap.put(0x1f302, R.drawable.emoji_1f302);
+ sEmojisMap.put(0x1f484, R.drawable.emoji_1f484);
+ sEmojisMap.put(0x1f49b, R.drawable.emoji_1f49b);
+ sEmojisMap.put(0x1f499, R.drawable.emoji_1f499);
+ sEmojisMap.put(0x1f49c, R.drawable.emoji_1f49c);
+ sEmojisMap.put(0x1f49a, R.drawable.emoji_1f49a);
+ sEmojisMap.put(0x2764, R.drawable.emoji_2764);
+ sEmojisMap.put(0x1f494, R.drawable.emoji_1f494);
+ sEmojisMap.put(0x1f497, R.drawable.emoji_1f497);
+ sEmojisMap.put(0x1f493, R.drawable.emoji_1f493);
+ sEmojisMap.put(0x1f495, R.drawable.emoji_1f495);
+ sEmojisMap.put(0x1f496, R.drawable.emoji_1f496);
+ sEmojisMap.put(0x1f49e, R.drawable.emoji_1f49e);
+ sEmojisMap.put(0x1f498, R.drawable.emoji_1f498);
+ sEmojisMap.put(0x1f48c, R.drawable.emoji_1f48c);
+ sEmojisMap.put(0x1f48b, R.drawable.emoji_1f48b);
+ sEmojisMap.put(0x1f48d, R.drawable.emoji_1f48d);
+ sEmojisMap.put(0x1f48e, R.drawable.emoji_1f48e);
+ sEmojisMap.put(0x1f464, R.drawable.emoji_1f464);
+ sEmojisMap.put(0x1f465, R.drawable.emoji_1f465);
+ sEmojisMap.put(0x1f4ac, R.drawable.emoji_1f4ac);
+ sEmojisMap.put(0x1f463, R.drawable.emoji_1f463);
+ sEmojisMap.put(0x1f4ad, R.drawable.emoji_1f4ad);
+
+ // Nature
+ sEmojisMap.put(0x1f436, R.drawable.emoji_1f436);
+ sEmojisMap.put(0x1f43a, R.drawable.emoji_1f43a);
+ sEmojisMap.put(0x1f431, R.drawable.emoji_1f431);
+ sEmojisMap.put(0x1f42d, R.drawable.emoji_1f42d);
+ sEmojisMap.put(0x1f439, R.drawable.emoji_1f439);
+ sEmojisMap.put(0x1f430, R.drawable.emoji_1f430);
+ sEmojisMap.put(0x1f438, R.drawable.emoji_1f438);
+ sEmojisMap.put(0x1f42f, R.drawable.emoji_1f42f);
+ sEmojisMap.put(0x1f428, R.drawable.emoji_1f428);
+ sEmojisMap.put(0x1f43b, R.drawable.emoji_1f43b);
+ sEmojisMap.put(0x1f437, R.drawable.emoji_1f437);
+ sEmojisMap.put(0x1f43d, R.drawable.emoji_1f43d);
+ sEmojisMap.put(0x1f42e, R.drawable.emoji_1f42e);
+ sEmojisMap.put(0x1f417, R.drawable.emoji_1f417);
+ sEmojisMap.put(0x1f435, R.drawable.emoji_1f435);
+ sEmojisMap.put(0x1f412, R.drawable.emoji_1f412);
+ sEmojisMap.put(0x1f434, R.drawable.emoji_1f434);
+ sEmojisMap.put(0x1f411, R.drawable.emoji_1f411);
+ sEmojisMap.put(0x1f418, R.drawable.emoji_1f418);
+ sEmojisMap.put(0x1f43c, R.drawable.emoji_1f43c);
+ sEmojisMap.put(0x1f427, R.drawable.emoji_1f427);
+ sEmojisMap.put(0x1f426, R.drawable.emoji_1f426);
+ sEmojisMap.put(0x1f424, R.drawable.emoji_1f424);
+ sEmojisMap.put(0x1f425, R.drawable.emoji_1f425);
+ sEmojisMap.put(0x1f423, R.drawable.emoji_1f423);
+ sEmojisMap.put(0x1f414, R.drawable.emoji_1f414);
+ sEmojisMap.put(0x1f40d, R.drawable.emoji_1f40d);
+ sEmojisMap.put(0x1f422, R.drawable.emoji_1f422);
+ sEmojisMap.put(0x1f41b, R.drawable.emoji_1f41b);
+ sEmojisMap.put(0x1f41d, R.drawable.emoji_1f41d);
+ sEmojisMap.put(0x1f41c, R.drawable.emoji_1f41c);
+ sEmojisMap.put(0x1f41e, R.drawable.emoji_1f41e);
+ sEmojisMap.put(0x1f40c, R.drawable.emoji_1f40c);
+ sEmojisMap.put(0x1f419, R.drawable.emoji_1f419);
+ sEmojisMap.put(0x1f41a, R.drawable.emoji_1f41a);
+ sEmojisMap.put(0x1f420, R.drawable.emoji_1f420);
+ sEmojisMap.put(0x1f41f, R.drawable.emoji_1f41f);
+ sEmojisMap.put(0x1f42c, R.drawable.emoji_1f42c);
+ sEmojisMap.put(0x1f433, R.drawable.emoji_1f433);
+ sEmojisMap.put(0x1f40b, R.drawable.emoji_1f40b);
+ sEmojisMap.put(0x1f404, R.drawable.emoji_1f404);
+ sEmojisMap.put(0x1f40f, R.drawable.emoji_1f40f);
+ sEmojisMap.put(0x1f400, R.drawable.emoji_1f400);
+ sEmojisMap.put(0x1f403, R.drawable.emoji_1f403);
+ sEmojisMap.put(0x1f405, R.drawable.emoji_1f405);
+ sEmojisMap.put(0x1f407, R.drawable.emoji_1f407);
+ sEmojisMap.put(0x1f409, R.drawable.emoji_1f409);
+ sEmojisMap.put(0x1f40e, R.drawable.emoji_1f40e);
+ sEmojisMap.put(0x1f410, R.drawable.emoji_1f410);
+ sEmojisMap.put(0x1f413, R.drawable.emoji_1f413);
+ sEmojisMap.put(0x1f415, R.drawable.emoji_1f415);
+ sEmojisMap.put(0x1f416, R.drawable.emoji_1f416);
+ sEmojisMap.put(0x1f401, R.drawable.emoji_1f401);
+ sEmojisMap.put(0x1f402, R.drawable.emoji_1f402);
+ sEmojisMap.put(0x1f432, R.drawable.emoji_1f432);
+ sEmojisMap.put(0x1f421, R.drawable.emoji_1f421);
+ sEmojisMap.put(0x1f40a, R.drawable.emoji_1f40a);
+ sEmojisMap.put(0x1f42b, R.drawable.emoji_1f42b);
+ sEmojisMap.put(0x1f42a, R.drawable.emoji_1f42a);
+ sEmojisMap.put(0x1f406, R.drawable.emoji_1f406);
+ sEmojisMap.put(0x1f408, R.drawable.emoji_1f408);
+ sEmojisMap.put(0x1f429, R.drawable.emoji_1f429);
+ sEmojisMap.put(0x1f43e, R.drawable.emoji_1f43e);
+ sEmojisMap.put(0x1f490, R.drawable.emoji_1f490);
+ sEmojisMap.put(0x1f338, R.drawable.emoji_1f338);
+ sEmojisMap.put(0x1f337, R.drawable.emoji_1f337);
+ sEmojisMap.put(0x1f340, R.drawable.emoji_1f340);
+ sEmojisMap.put(0x1f339, R.drawable.emoji_1f339);
+ sEmojisMap.put(0x1f33b, R.drawable.emoji_1f33b);
+ sEmojisMap.put(0x1f33a, R.drawable.emoji_1f33a);
+ sEmojisMap.put(0x1f341, R.drawable.emoji_1f341);
+ sEmojisMap.put(0x1f343, R.drawable.emoji_1f343);
+ sEmojisMap.put(0x1f342, R.drawable.emoji_1f342);
+ sEmojisMap.put(0x1f33f, R.drawable.emoji_1f33f);
+ sEmojisMap.put(0x1f33e, R.drawable.emoji_1f33e);
+ sEmojisMap.put(0x1f344, R.drawable.emoji_1f344);
+ sEmojisMap.put(0x1f335, R.drawable.emoji_1f335);
+ sEmojisMap.put(0x1f334, R.drawable.emoji_1f334);
+ sEmojisMap.put(0x1f332, R.drawable.emoji_1f332);
+ sEmojisMap.put(0x1f333, R.drawable.emoji_1f333);
+ sEmojisMap.put(0x1f330, R.drawable.emoji_1f330);
+ sEmojisMap.put(0x1f331, R.drawable.emoji_1f331);
+ sEmojisMap.put(0x1f33c, R.drawable.emoji_1f33c);
+ sEmojisMap.put(0x1f310, R.drawable.emoji_1f310);
+ sEmojisMap.put(0x1f31e, R.drawable.emoji_1f31e);
+ sEmojisMap.put(0x1f31d, R.drawable.emoji_1f31d);
+ sEmojisMap.put(0x1f31a, R.drawable.emoji_1f31a);
+ sEmojisMap.put(0x1f311, R.drawable.emoji_1f311);
+ sEmojisMap.put(0x1f312, R.drawable.emoji_1f312);
+ sEmojisMap.put(0x1f313, R.drawable.emoji_1f313);
+ sEmojisMap.put(0x1f314, R.drawable.emoji_1f314);
+ sEmojisMap.put(0x1f315, R.drawable.emoji_1f315);
+ sEmojisMap.put(0x1f316, R.drawable.emoji_1f316);
+ sEmojisMap.put(0x1f317, R.drawable.emoji_1f317);
+ sEmojisMap.put(0x1f318, R.drawable.emoji_1f318);
+ sEmojisMap.put(0x1f31c, R.drawable.emoji_1f31c);
+ sEmojisMap.put(0x1f31b, R.drawable.emoji_1f31b);
+ sEmojisMap.put(0x1f319, R.drawable.emoji_1f319);
+ sEmojisMap.put(0x1f30d, R.drawable.emoji_1f30d);
+ sEmojisMap.put(0x1f30e, R.drawable.emoji_1f30e);
+ sEmojisMap.put(0x1f30f, R.drawable.emoji_1f30f);
+ sEmojisMap.put(0x1f30b, R.drawable.emoji_1f30b);
+ sEmojisMap.put(0x1f30c, R.drawable.emoji_1f30c);
+ sEmojisMap.put(0x1f320, R.drawable.emoji_1f303); // TODO (rockerhieu) review this emoji
+ sEmojisMap.put(0x2b50, R.drawable.emoji_2b50);
+ sEmojisMap.put(0x2600, R.drawable.emoji_2600);
+ sEmojisMap.put(0x26c5, R.drawable.emoji_26c5);
+ sEmojisMap.put(0x2601, R.drawable.emoji_2601);
+ sEmojisMap.put(0x26a1, R.drawable.emoji_26a1);
+ sEmojisMap.put(0x2614, R.drawable.emoji_2614);
+ sEmojisMap.put(0x2744, R.drawable.emoji_2744);
+ sEmojisMap.put(0x26c4, R.drawable.emoji_26c4);
+ sEmojisMap.put(0x1f300, R.drawable.emoji_1f300);
+ sEmojisMap.put(0x1f301, R.drawable.emoji_1f301);
+ sEmojisMap.put(0x1f308, R.drawable.emoji_1f308);
+ sEmojisMap.put(0x1f30a, R.drawable.emoji_1f30a);
+
+ // Objects
+ sEmojisMap.put(0x1f38d, R.drawable.emoji_1f38d);
+ sEmojisMap.put(0x1f49d, R.drawable.emoji_1f49d);
+ sEmojisMap.put(0x1f38e, R.drawable.emoji_1f38e);
+ sEmojisMap.put(0x1f392, R.drawable.emoji_1f392);
+ sEmojisMap.put(0x1f393, R.drawable.emoji_1f393);
+ sEmojisMap.put(0x1f38f, R.drawable.emoji_1f38f);
+ sEmojisMap.put(0x1f386, R.drawable.emoji_1f386);
+ sEmojisMap.put(0x1f387, R.drawable.emoji_1f387);
+ sEmojisMap.put(0x1f390, R.drawable.emoji_1f390);
+ sEmojisMap.put(0x1f391, R.drawable.emoji_1f391);
+ sEmojisMap.put(0x1f383, R.drawable.emoji_1f383);
+ sEmojisMap.put(0x1f47b, R.drawable.emoji_1f47b);
+ sEmojisMap.put(0x1f385, R.drawable.emoji_1f385);
+ sEmojisMap.put(0x1f384, R.drawable.emoji_1f384);
+ sEmojisMap.put(0x1f381, R.drawable.emoji_1f381);
+ sEmojisMap.put(0x1f38b, R.drawable.emoji_1f38b);
+ sEmojisMap.put(0x1f389, R.drawable.emoji_1f389);
+ sEmojisMap.put(0x1f38a, R.drawable.emoji_1f38a);
+ sEmojisMap.put(0x1f388, R.drawable.emoji_1f388);
+ sEmojisMap.put(0x1f38c, R.drawable.emoji_1f38c);
+ sEmojisMap.put(0x1f52e, R.drawable.emoji_1f52e);
+ sEmojisMap.put(0x1f3a5, R.drawable.emoji_1f3a5);
+ sEmojisMap.put(0x1f4f7, R.drawable.emoji_1f4f7);
+ sEmojisMap.put(0x1f4f9, R.drawable.emoji_1f4f9);
+ sEmojisMap.put(0x1f4fc, R.drawable.emoji_1f4fc);
+ sEmojisMap.put(0x1f4bf, R.drawable.emoji_1f4bf);
+ sEmojisMap.put(0x1f4c0, R.drawable.emoji_1f4c0);
+ sEmojisMap.put(0x1f4bd, R.drawable.emoji_1f4bd);
+ sEmojisMap.put(0x1f4be, R.drawable.emoji_1f4be);
+ sEmojisMap.put(0x1f4bb, R.drawable.emoji_1f4bb);
+ sEmojisMap.put(0x1f4f1, R.drawable.emoji_1f4f1);
+ sEmojisMap.put(0x260e, R.drawable.emoji_260e);
+ sEmojisMap.put(0x1f4de, R.drawable.emoji_1f4de);
+ sEmojisMap.put(0x1f4df, R.drawable.emoji_1f4df);
+ sEmojisMap.put(0x1f4e0, R.drawable.emoji_1f4e0);
+ sEmojisMap.put(0x1f4e1, R.drawable.emoji_1f4e1);
+ sEmojisMap.put(0x1f4fa, R.drawable.emoji_1f4fa);
+ sEmojisMap.put(0x1f4fb, R.drawable.emoji_1f4fb);
+ sEmojisMap.put(0x1f50a, R.drawable.emoji_1f50a);
+ sEmojisMap.put(0x1f509, R.drawable.emoji_1f509);
+ sEmojisMap.put(0x1f508, R.drawable.emoji_1f508); // TODO (rockerhieu): review this emoji
+ sEmojisMap.put(0x1f507, R.drawable.emoji_1f507);
+ sEmojisMap.put(0x1f514, R.drawable.emoji_1f514);
+ sEmojisMap.put(0x1f515, R.drawable.emoji_1f515);
+ sEmojisMap.put(0x1f4e2, R.drawable.emoji_1f4e2);
+ sEmojisMap.put(0x1f4e3, R.drawable.emoji_1f4e3);
+ sEmojisMap.put(0x23f3, R.drawable.emoji_23f3);
+ sEmojisMap.put(0x231b, R.drawable.emoji_231b);
+ sEmojisMap.put(0x23f0, R.drawable.emoji_23f0);
+ sEmojisMap.put(0x231a, R.drawable.emoji_231a);
+ sEmojisMap.put(0x1f513, R.drawable.emoji_1f513);
+ sEmojisMap.put(0x1f512, R.drawable.emoji_1f512);
+ sEmojisMap.put(0x1f50f, R.drawable.emoji_1f50f);
+ sEmojisMap.put(0x1f510, R.drawable.emoji_1f510);
+ sEmojisMap.put(0x1f511, R.drawable.emoji_1f511);
+ sEmojisMap.put(0x1f50e, R.drawable.emoji_1f50e);
+ sEmojisMap.put(0x1f4a1, R.drawable.emoji_1f4a1);
+ sEmojisMap.put(0x1f526, R.drawable.emoji_1f526);
+ sEmojisMap.put(0x1f506, R.drawable.emoji_1f506);
+ sEmojisMap.put(0x1f505, R.drawable.emoji_1f505);
+ sEmojisMap.put(0x1f50c, R.drawable.emoji_1f50c);
+ sEmojisMap.put(0x1f50b, R.drawable.emoji_1f50b);
+ sEmojisMap.put(0x1f50d, R.drawable.emoji_1f50d);
+ sEmojisMap.put(0x1f6c1, R.drawable.emoji_1f6c1);
+ sEmojisMap.put(0x1f6c0, R.drawable.emoji_1f6c0);
+ sEmojisMap.put(0x1f6bf, R.drawable.emoji_1f6bf);
+ sEmojisMap.put(0x1f6bd, R.drawable.emoji_1f6bd);
+ sEmojisMap.put(0x1f527, R.drawable.emoji_1f527);
+ sEmojisMap.put(0x1f529, R.drawable.emoji_1f529);
+ sEmojisMap.put(0x1f528, R.drawable.emoji_1f528);
+ sEmojisMap.put(0x1f6aa, R.drawable.emoji_1f6aa);
+ sEmojisMap.put(0x1f6ac, R.drawable.emoji_1f6ac);
+ sEmojisMap.put(0x1f4a3, R.drawable.emoji_1f4a3);
+ sEmojisMap.put(0x1f52b, R.drawable.emoji_1f52b);
+ sEmojisMap.put(0x1f52a, R.drawable.emoji_1f52a);
+ sEmojisMap.put(0x1f48a, R.drawable.emoji_1f48a);
+ sEmojisMap.put(0x1f489, R.drawable.emoji_1f489);
+ sEmojisMap.put(0x1f4b0, R.drawable.emoji_1f4b0);
+ sEmojisMap.put(0x1f4b4, R.drawable.emoji_1f4b4);
+ sEmojisMap.put(0x1f4b5, R.drawable.emoji_1f4b5);
+ sEmojisMap.put(0x1f4b7, R.drawable.emoji_1f4b7);
+ sEmojisMap.put(0x1f4b6, R.drawable.emoji_1f4b6);
+ sEmojisMap.put(0x1f4b3, R.drawable.emoji_1f4b3);
+ sEmojisMap.put(0x1f4b8, R.drawable.emoji_1f4b8);
+ sEmojisMap.put(0x1f4f2, R.drawable.emoji_1f4f2);
+ sEmojisMap.put(0x1f4e7, R.drawable.emoji_1f4e7);
+ sEmojisMap.put(0x1f4e5, R.drawable.emoji_1f4e5);
+ sEmojisMap.put(0x1f4e4, R.drawable.emoji_1f4e4);
+ sEmojisMap.put(0x2709, R.drawable.emoji_2709);
+ sEmojisMap.put(0x1f4e9, R.drawable.emoji_1f4e9);
+ sEmojisMap.put(0x1f4e8, R.drawable.emoji_1f4e8);
+ sEmojisMap.put(0x1f4ef, R.drawable.emoji_1f4ef);
+ sEmojisMap.put(0x1f4eb, R.drawable.emoji_1f4eb);
+ sEmojisMap.put(0x1f4ea, R.drawable.emoji_1f4ea);
+ sEmojisMap.put(0x1f4ec, R.drawable.emoji_1f4ec);
+ sEmojisMap.put(0x1f4ed, R.drawable.emoji_1f4ed);
+ sEmojisMap.put(0x1f4ee, R.drawable.emoji_1f4ee);
+ sEmojisMap.put(0x1f4e6, R.drawable.emoji_1f4e6);
+ sEmojisMap.put(0x1f4dd, R.drawable.emoji_1f4dd);
+ sEmojisMap.put(0x1f4c4, R.drawable.emoji_1f4c4);
+ sEmojisMap.put(0x1f4c3, R.drawable.emoji_1f4c3);
+ sEmojisMap.put(0x1f4d1, R.drawable.emoji_1f4d1);
+ sEmojisMap.put(0x1f4ca, R.drawable.emoji_1f4ca);
+ sEmojisMap.put(0x1f4c8, R.drawable.emoji_1f4c8);
+ sEmojisMap.put(0x1f4c9, R.drawable.emoji_1f4c9);
+ sEmojisMap.put(0x1f4dc, R.drawable.emoji_1f4dc);
+ sEmojisMap.put(0x1f4cb, R.drawable.emoji_1f4cb);
+ sEmojisMap.put(0x1f4c5, R.drawable.emoji_1f4c5);
+ sEmojisMap.put(0x1f4c6, R.drawable.emoji_1f4c6);
+ sEmojisMap.put(0x1f4c7, R.drawable.emoji_1f4c7);
+ sEmojisMap.put(0x1f4c1, R.drawable.emoji_1f4c1);
+ sEmojisMap.put(0x1f4c2, R.drawable.emoji_1f4c2);
+ sEmojisMap.put(0x2702, R.drawable.emoji_2702);
+ sEmojisMap.put(0x1f4cc, R.drawable.emoji_1f4cc);
+ sEmojisMap.put(0x1f4ce, R.drawable.emoji_1f4ce);
+ sEmojisMap.put(0x2712, R.drawable.emoji_2712);
+ sEmojisMap.put(0x270f, R.drawable.emoji_270f);
+ sEmojisMap.put(0x1f4cf, R.drawable.emoji_1f4cf);
+ sEmojisMap.put(0x1f4d0, R.drawable.emoji_1f4d0);
+ sEmojisMap.put(0x1f4d5, R.drawable.emoji_1f4d5);
+ sEmojisMap.put(0x1f4d7, R.drawable.emoji_1f4d7);
+ sEmojisMap.put(0x1f4d8, R.drawable.emoji_1f4d8);
+ sEmojisMap.put(0x1f4d9, R.drawable.emoji_1f4d9);
+ sEmojisMap.put(0x1f4d3, R.drawable.emoji_1f4d3);
+ sEmojisMap.put(0x1f4d4, R.drawable.emoji_1f4d4);
+ sEmojisMap.put(0x1f4d2, R.drawable.emoji_1f4d2);
+ sEmojisMap.put(0x1f4da, R.drawable.emoji_1f4da);
+ sEmojisMap.put(0x1f4d6, R.drawable.emoji_1f4d6);
+ sEmojisMap.put(0x1f516, R.drawable.emoji_1f516);
+ sEmojisMap.put(0x1f4db, R.drawable.emoji_1f4db);
+ sEmojisMap.put(0x1f52c, R.drawable.emoji_1f52c);
+ sEmojisMap.put(0x1f52d, R.drawable.emoji_1f52d);
+ sEmojisMap.put(0x1f4f0, R.drawable.emoji_1f4f0);
+ sEmojisMap.put(0x1f3a8, R.drawable.emoji_1f3a8);
+ sEmojisMap.put(0x1f3ac, R.drawable.emoji_1f3ac);
+ sEmojisMap.put(0x1f3a4, R.drawable.emoji_1f3a4);
+ sEmojisMap.put(0x1f3a7, R.drawable.emoji_1f3a7);
+ sEmojisMap.put(0x1f3bc, R.drawable.emoji_1f3bc);
+ sEmojisMap.put(0x1f3b5, R.drawable.emoji_1f3b5);
+ sEmojisMap.put(0x1f3b6, R.drawable.emoji_1f3b6);
+ sEmojisMap.put(0x1f3b9, R.drawable.emoji_1f3b9);
+ sEmojisMap.put(0x1f3bb, R.drawable.emoji_1f3bb);
+ sEmojisMap.put(0x1f3ba, R.drawable.emoji_1f3ba);
+ sEmojisMap.put(0x1f3b7, R.drawable.emoji_1f3b7);
+ sEmojisMap.put(0x1f3b8, R.drawable.emoji_1f3b8);
+ sEmojisMap.put(0x1f47e, R.drawable.emoji_1f47e);
+ sEmojisMap.put(0x1f3ae, R.drawable.emoji_1f3ae);
+ sEmojisMap.put(0x1f0cf, R.drawable.emoji_1f0cf);
+ sEmojisMap.put(0x1f3b4, R.drawable.emoji_1f3b4);
+ sEmojisMap.put(0x1f004, R.drawable.emoji_1f004);
+ sEmojisMap.put(0x1f3b2, R.drawable.emoji_1f3b2);
+ sEmojisMap.put(0x1f3af, R.drawable.emoji_1f3af);
+ sEmojisMap.put(0x1f3c8, R.drawable.emoji_1f3c8);
+ sEmojisMap.put(0x1f3c0, R.drawable.emoji_1f3c0);
+ sEmojisMap.put(0x26bd, R.drawable.emoji_26bd);
+ sEmojisMap.put(0x26be, R.drawable.emoji_26be);
+ sEmojisMap.put(0x1f3be, R.drawable.emoji_1f3be);
+ sEmojisMap.put(0x1f3b1, R.drawable.emoji_1f3b1);
+ sEmojisMap.put(0x1f3c9, R.drawable.emoji_1f3c9);
+ sEmojisMap.put(0x1f3b3, R.drawable.emoji_1f3b3);
+ sEmojisMap.put(0x26f3, R.drawable.emoji_26f3);
+ sEmojisMap.put(0x1f6b5, R.drawable.emoji_1f6b5);
+ sEmojisMap.put(0x1f6b4, R.drawable.emoji_1f6b4);
+ sEmojisMap.put(0x1f3c1, R.drawable.emoji_1f3c1);
+ sEmojisMap.put(0x1f3c7, R.drawable.emoji_1f3c7);
+ sEmojisMap.put(0x1f3c6, R.drawable.emoji_1f3c6);
+ sEmojisMap.put(0x1f3bf, R.drawable.emoji_1f3bf);
+ sEmojisMap.put(0x1f3c2, R.drawable.emoji_1f3c2);
+ sEmojisMap.put(0x1f3ca, R.drawable.emoji_1f3ca);
+ sEmojisMap.put(0x1f3c4, R.drawable.emoji_1f3c4);
+ sEmojisMap.put(0x1f3a3, R.drawable.emoji_1f3a3);
+ sEmojisMap.put(0x2615, R.drawable.emoji_2615);
+ sEmojisMap.put(0x1f375, R.drawable.emoji_1f375);
+ sEmojisMap.put(0x1f376, R.drawable.emoji_1f376);
+ sEmojisMap.put(0x1f37c, R.drawable.emoji_1f37c);
+ sEmojisMap.put(0x1f37a, R.drawable.emoji_1f37a);
+ sEmojisMap.put(0x1f37b, R.drawable.emoji_1f37b);
+ sEmojisMap.put(0x1f378, R.drawable.emoji_1f378);
+ sEmojisMap.put(0x1f379, R.drawable.emoji_1f379);
+ sEmojisMap.put(0x1f377, R.drawable.emoji_1f377);
+ sEmojisMap.put(0x1f374, R.drawable.emoji_1f374);
+ sEmojisMap.put(0x1f355, R.drawable.emoji_1f355);
+ sEmojisMap.put(0x1f354, R.drawable.emoji_1f354);
+ sEmojisMap.put(0x1f35f, R.drawable.emoji_1f35f);
+ sEmojisMap.put(0x1f357, R.drawable.emoji_1f357);
+ sEmojisMap.put(0x1f356, R.drawable.emoji_1f356);
+ sEmojisMap.put(0x1f35d, R.drawable.emoji_1f35d);
+ sEmojisMap.put(0x1f35b, R.drawable.emoji_1f35b);
+ sEmojisMap.put(0x1f364, R.drawable.emoji_1f364);
+ sEmojisMap.put(0x1f371, R.drawable.emoji_1f371);
+ sEmojisMap.put(0x1f363, R.drawable.emoji_1f363);
+ sEmojisMap.put(0x1f365, R.drawable.emoji_1f365);
+ sEmojisMap.put(0x1f359, R.drawable.emoji_1f359);
+ sEmojisMap.put(0x1f358, R.drawable.emoji_1f358);
+ sEmojisMap.put(0x1f35a, R.drawable.emoji_1f35a);
+ sEmojisMap.put(0x1f35c, R.drawable.emoji_1f35c);
+ sEmojisMap.put(0x1f372, R.drawable.emoji_1f372);
+ sEmojisMap.put(0x1f362, R.drawable.emoji_1f362);
+ sEmojisMap.put(0x1f361, R.drawable.emoji_1f361);
+ sEmojisMap.put(0x1f373, R.drawable.emoji_1f373);
+ sEmojisMap.put(0x1f35e, R.drawable.emoji_1f35e);
+ sEmojisMap.put(0x1f369, R.drawable.emoji_1f369);
+ sEmojisMap.put(0x1f36e, R.drawable.emoji_1f36e);
+ sEmojisMap.put(0x1f366, R.drawable.emoji_1f366);
+ sEmojisMap.put(0x1f368, R.drawable.emoji_1f368);
+ sEmojisMap.put(0x1f367, R.drawable.emoji_1f367);
+ sEmojisMap.put(0x1f382, R.drawable.emoji_1f382);
+ sEmojisMap.put(0x1f370, R.drawable.emoji_1f370);
+ sEmojisMap.put(0x1f36a, R.drawable.emoji_1f36a);
+ sEmojisMap.put(0x1f36b, R.drawable.emoji_1f36b);
+ sEmojisMap.put(0x1f36c, R.drawable.emoji_1f36c);
+ sEmojisMap.put(0x1f36d, R.drawable.emoji_1f36d);
+ sEmojisMap.put(0x1f36f, R.drawable.emoji_1f36f);
+ sEmojisMap.put(0x1f34e, R.drawable.emoji_1f34e);
+ sEmojisMap.put(0x1f34f, R.drawable.emoji_1f34f);
+ sEmojisMap.put(0x1f34a, R.drawable.emoji_1f34a);
+ sEmojisMap.put(0x1f34b, R.drawable.emoji_1f34b);
+ sEmojisMap.put(0x1f352, R.drawable.emoji_1f352);
+ sEmojisMap.put(0x1f347, R.drawable.emoji_1f347);
+ sEmojisMap.put(0x1f349, R.drawable.emoji_1f349);
+ sEmojisMap.put(0x1f353, R.drawable.emoji_1f353);
+ sEmojisMap.put(0x1f351, R.drawable.emoji_1f351);
+ sEmojisMap.put(0x1f348, R.drawable.emoji_1f348);
+ sEmojisMap.put(0x1f34c, R.drawable.emoji_1f34c);
+ sEmojisMap.put(0x1f350, R.drawable.emoji_1f350);
+ sEmojisMap.put(0x1f34d, R.drawable.emoji_1f34d);
+ sEmojisMap.put(0x1f360, R.drawable.emoji_1f360);
+ sEmojisMap.put(0x1f346, R.drawable.emoji_1f346);
+ sEmojisMap.put(0x1f345, R.drawable.emoji_1f345);
+ sEmojisMap.put(0x1f33d, R.drawable.emoji_1f33d);
+
+ // Places
+ sEmojisMap.put(0x1f3e0, R.drawable.emoji_1f3e0);
+ sEmojisMap.put(0x1f3e1, R.drawable.emoji_1f3e1);
+ sEmojisMap.put(0x1f3eb, R.drawable.emoji_1f3eb);
+ sEmojisMap.put(0x1f3e2, R.drawable.emoji_1f3e2);
+ sEmojisMap.put(0x1f3e3, R.drawable.emoji_1f3e3);
+ sEmojisMap.put(0x1f3e5, R.drawable.emoji_1f3e5);
+ sEmojisMap.put(0x1f3e6, R.drawable.emoji_1f3e6);
+ sEmojisMap.put(0x1f3ea, R.drawable.emoji_1f3ea);
+ sEmojisMap.put(0x1f3e9, R.drawable.emoji_1f3e9);
+ sEmojisMap.put(0x1f3e8, R.drawable.emoji_1f3e8);
+ sEmojisMap.put(0x1f492, R.drawable.emoji_1f492);
+ sEmojisMap.put(0x26ea, R.drawable.emoji_26ea);
+ sEmojisMap.put(0x1f3ec, R.drawable.emoji_1f3ec);
+ sEmojisMap.put(0x1f3e4, R.drawable.emoji_1f3e4);
+ sEmojisMap.put(0x1f307, R.drawable.emoji_1f307);
+ sEmojisMap.put(0x1f306, R.drawable.emoji_1f306);
+ sEmojisMap.put(0x1f3ef, R.drawable.emoji_1f3ef);
+ sEmojisMap.put(0x1f3f0, R.drawable.emoji_1f3f0);
+ sEmojisMap.put(0x26fa, R.drawable.emoji_26fa);
+ sEmojisMap.put(0x1f3ed, R.drawable.emoji_1f3ed);
+ sEmojisMap.put(0x1f5fc, R.drawable.emoji_1f5fc);
+ sEmojisMap.put(0x1f5fe, R.drawable.emoji_1f5fe);
+ sEmojisMap.put(0x1f5fb, R.drawable.emoji_1f5fb);
+ sEmojisMap.put(0x1f304, R.drawable.emoji_1f304);
+ sEmojisMap.put(0x1f305, R.drawable.emoji_1f305);
+ sEmojisMap.put(0x1f303, R.drawable.emoji_1f303);
+ sEmojisMap.put(0x1f5fd, R.drawable.emoji_1f5fd);
+ sEmojisMap.put(0x1f309, R.drawable.emoji_1f309);
+ sEmojisMap.put(0x1f3a0, R.drawable.emoji_1f3a0);
+ sEmojisMap.put(0x1f3a1, R.drawable.emoji_1f3a1);
+ sEmojisMap.put(0x26f2, R.drawable.emoji_26f2);
+ sEmojisMap.put(0x1f3a2, R.drawable.emoji_1f3a2);
+ sEmojisMap.put(0x1f6a2, R.drawable.emoji_1f6a2);
+ sEmojisMap.put(0x26f5, R.drawable.emoji_26f5);
+ sEmojisMap.put(0x1f6a4, R.drawable.emoji_1f6a4);
+ sEmojisMap.put(0x1f6a3, R.drawable.emoji_1f6a3);
+ sEmojisMap.put(0x2693, R.drawable.emoji_2693);
+ sEmojisMap.put(0x1f680, R.drawable.emoji_1f680);
+ sEmojisMap.put(0x2708, R.drawable.emoji_2708);
+ sEmojisMap.put(0x1f4ba, R.drawable.emoji_1f4ba);
+ sEmojisMap.put(0x1f681, R.drawable.emoji_1f681);
+ sEmojisMap.put(0x1f682, R.drawable.emoji_1f682);
+ sEmojisMap.put(0x1f68a, R.drawable.emoji_1f68a);
+ sEmojisMap.put(0x1f689, R.drawable.emoji_1f689);
+ sEmojisMap.put(0x1f69e, R.drawable.emoji_1f69e);
+ sEmojisMap.put(0x1f686, R.drawable.emoji_1f686);
+ sEmojisMap.put(0x1f684, R.drawable.emoji_1f684);
+ sEmojisMap.put(0x1f685, R.drawable.emoji_1f685);
+ sEmojisMap.put(0x1f688, R.drawable.emoji_1f688);
+ sEmojisMap.put(0x1f687, R.drawable.emoji_1f687);
+ sEmojisMap.put(0x1f69d, R.drawable.emoji_1f69d);
+ sEmojisMap.put(0x1f68b, R.drawable.emoji_1f68b); // TODO (rockerhieu) review this emoji
+ sEmojisMap.put(0x1f683, R.drawable.emoji_1f683);
+ sEmojisMap.put(0x1f68e, R.drawable.emoji_1f68e);
+ sEmojisMap.put(0x1f68c, R.drawable.emoji_1f68c);
+ sEmojisMap.put(0x1f68d, R.drawable.emoji_1f68d);
+ sEmojisMap.put(0x1f699, R.drawable.emoji_1f699);
+ sEmojisMap.put(0x1f698, R.drawable.emoji_1f698);
+ sEmojisMap.put(0x1f697, R.drawable.emoji_1f697);
+ sEmojisMap.put(0x1f695, R.drawable.emoji_1f695);
+ sEmojisMap.put(0x1f696, R.drawable.emoji_1f696);
+ sEmojisMap.put(0x1f69b, R.drawable.emoji_1f69b);
+ sEmojisMap.put(0x1f69a, R.drawable.emoji_1f69a);
+ sEmojisMap.put(0x1f6a8, R.drawable.emoji_1f6a8);
+ sEmojisMap.put(0x1f693, R.drawable.emoji_1f693);
+ sEmojisMap.put(0x1f694, R.drawable.emoji_1f694);
+ sEmojisMap.put(0x1f692, R.drawable.emoji_1f692);
+ sEmojisMap.put(0x1f691, R.drawable.emoji_1f691);
+ sEmojisMap.put(0x1f690, R.drawable.emoji_1f690);
+ sEmojisMap.put(0x1f6b2, R.drawable.emoji_1f6b2);
+ sEmojisMap.put(0x1f6a1, R.drawable.emoji_1f6a1);
+ sEmojisMap.put(0x1f69f, R.drawable.emoji_1f69f);
+ sEmojisMap.put(0x1f6a0, R.drawable.emoji_1f6a0);
+ sEmojisMap.put(0x1f69c, R.drawable.emoji_1f69c);
+ sEmojisMap.put(0x1f488, R.drawable.emoji_1f488);
+ sEmojisMap.put(0x1f68f, R.drawable.emoji_1f68f);
+ sEmojisMap.put(0x1f3ab, R.drawable.emoji_1f3ab);
+ sEmojisMap.put(0x1f6a6, R.drawable.emoji_1f6a6);
+ sEmojisMap.put(0x1f6a5, R.drawable.emoji_1f6a5);
+ sEmojisMap.put(0x26a0, R.drawable.emoji_26a0);
+ sEmojisMap.put(0x1f6a7, R.drawable.emoji_1f6a7);
+ sEmojisMap.put(0x1f530, R.drawable.emoji_1f530);
+ sEmojisMap.put(0x26fd, R.drawable.emoji_26fd);
+ sEmojisMap.put(0x1f3ee, R.drawable.emoji_1f3ee);
+ sEmojisMap.put(0x1f3b0, R.drawable.emoji_1f3b0);
+ sEmojisMap.put(0x2668, R.drawable.emoji_2668);
+ sEmojisMap.put(0x1f5ff, R.drawable.emoji_1f5ff);
+ sEmojisMap.put(0x1f3aa, R.drawable.emoji_1f3aa);
+ sEmojisMap.put(0x1f3ad, R.drawable.emoji_1f3ad);
+ sEmojisMap.put(0x1f4cd, R.drawable.emoji_1f4cd);
+ sEmojisMap.put(0x1f6a9, R.drawable.emoji_1f6a9);
+// Emoji.fromChars("\ud83c\uddef\ud83c\uddf5");
+// Emoji.fromChars("\ud83c\uddf0\ud83c\uddf7");
+// Emoji.fromChars("\ud83c\udde9\ud83c\uddea");
+// Emoji.fromChars("\ud83c\udde8\ud83c\uddf3");
+// Emoji.fromChars("\ud83c\uddfa\ud83c\uddf8");
+// Emoji.fromChars("\ud83c\uddeb\ud83c\uddf7");
+// Emoji.fromChars("\ud83c\uddea\ud83c\uddf8");
+// Emoji.fromChars("\ud83c\uddee\ud83c\uddf9");
+// Emoji.fromChars("\ud83c\uddf7\ud83c\uddfa");
+// Emoji.fromChars("\ud83c\uddec\ud83c\udde7");
+
+ // Symbols
+// Emoji.fromChars("\u0031\u20e3"),
+// Emoji.fromChars("\u0032\u20e3"),
+// Emoji.fromChars("\u0033\u20e3"),
+// Emoji.fromChars("\u0034\u20e3"),
+// Emoji.fromChars("\u0035\u20e3"),
+// Emoji.fromChars("\u0036\u20e3"),
+// Emoji.fromChars("\u0037\u20e3"),
+// Emoji.fromChars("\u0038\u20e3"),
+// Emoji.fromChars("\u0039\u20e3"),
+// Emoji.fromChars("\u0030\u20e3"),
+ sEmojisMap.put(0x1f51f, R.drawable.emoji_1f51f);
+ sEmojisMap.put(0x1f522, R.drawable.emoji_1f522);
+// Emoji.fromChars("\u0023\u20e3"),
+ sEmojisMap.put(0x1f523, R.drawable.emoji_1f523);
+ sEmojisMap.put(0x2b06, R.drawable.emoji_2b06);
+ sEmojisMap.put(0x2b07, R.drawable.emoji_2b07);
+ sEmojisMap.put(0x2b05, R.drawable.emoji_2b05);
+ sEmojisMap.put(0x27a1, R.drawable.emoji_27a1);
+ sEmojisMap.put(0x1f520, R.drawable.emoji_1f520);
+ sEmojisMap.put(0x1f521, R.drawable.emoji_1f521);
+ sEmojisMap.put(0x1f524, R.drawable.emoji_1f524);
+ sEmojisMap.put(0x2197, R.drawable.emoji_2197);
+ sEmojisMap.put(0x2196, R.drawable.emoji_2196);
+ sEmojisMap.put(0x2198, R.drawable.emoji_2198);
+ sEmojisMap.put(0x2199, R.drawable.emoji_2199);
+ sEmojisMap.put(0x2194, R.drawable.emoji_2194);
+ sEmojisMap.put(0x2195, R.drawable.emoji_2195);
+ sEmojisMap.put(0x1f504, R.drawable.emoji_1f504);
+ sEmojisMap.put(0x25c0, R.drawable.emoji_25c0);
+ sEmojisMap.put(0x25b6, R.drawable.emoji_25b6);
+ sEmojisMap.put(0x1f53c, R.drawable.emoji_1f53c);
+ sEmojisMap.put(0x1f53d, R.drawable.emoji_1f53d);
+ sEmojisMap.put(0x21a9, R.drawable.emoji_21a9);
+ sEmojisMap.put(0x21aa, R.drawable.emoji_21aa);
+ sEmojisMap.put(0x2139, R.drawable.emoji_2139);
+ sEmojisMap.put(0x23ea, R.drawable.emoji_23ea);
+ sEmojisMap.put(0x23e9, R.drawable.emoji_23e9);
+ sEmojisMap.put(0x23eb, R.drawable.emoji_23eb);
+ sEmojisMap.put(0x23ec, R.drawable.emoji_23ec);
+ sEmojisMap.put(0x2935, R.drawable.emoji_2935);
+ sEmojisMap.put(0x2934, R.drawable.emoji_2934);
+ sEmojisMap.put(0x1f197, R.drawable.emoji_1f197);
+ sEmojisMap.put(0x1f500, R.drawable.emoji_1f500);
+ sEmojisMap.put(0x1f501, R.drawable.emoji_1f501);
+ sEmojisMap.put(0x1f502, R.drawable.emoji_1f502);
+ sEmojisMap.put(0x1f195, R.drawable.emoji_1f195);
+ sEmojisMap.put(0x1f199, R.drawable.emoji_1f199);
+ sEmojisMap.put(0x1f192, R.drawable.emoji_1f192);
+ sEmojisMap.put(0x1f193, R.drawable.emoji_1f193);
+ sEmojisMap.put(0x1f196, R.drawable.emoji_1f196);
+ sEmojisMap.put(0x1f4f6, R.drawable.emoji_1f4f6);
+ sEmojisMap.put(0x1f3a6, R.drawable.emoji_1f3a6);
+ sEmojisMap.put(0x1f201, R.drawable.emoji_1f201);
+ sEmojisMap.put(0x1f22f, R.drawable.emoji_1f22f);
+ sEmojisMap.put(0x1f233, R.drawable.emoji_1f233);
+ sEmojisMap.put(0x1f235, R.drawable.emoji_1f235);
+ sEmojisMap.put(0x1f234, R.drawable.emoji_1f234);
+ sEmojisMap.put(0x1f232, R.drawable.emoji_1f232);
+ sEmojisMap.put(0x1f250, R.drawable.emoji_1f250);
+ sEmojisMap.put(0x1f239, R.drawable.emoji_1f239);
+ sEmojisMap.put(0x1f23a, R.drawable.emoji_1f23a);
+ sEmojisMap.put(0x1f236, R.drawable.emoji_1f236);
+ sEmojisMap.put(0x1f21a, R.drawable.emoji_1f21a);
+ sEmojisMap.put(0x1f6bb, R.drawable.emoji_1f6bb);
+ sEmojisMap.put(0x1f6b9, R.drawable.emoji_1f6b9);
+ sEmojisMap.put(0x1f6ba, R.drawable.emoji_1f6ba);
+ sEmojisMap.put(0x1f6bc, R.drawable.emoji_1f6bc);
+ sEmojisMap.put(0x1f6be, R.drawable.emoji_1f6be);
+ sEmojisMap.put(0x1f6b0, R.drawable.emoji_1f6b0);
+ sEmojisMap.put(0x1f6ae, R.drawable.emoji_1f6ae);
+ sEmojisMap.put(0x1f17f, R.drawable.emoji_1f17f);
+ sEmojisMap.put(0x267f, R.drawable.emoji_267f);
+ sEmojisMap.put(0x1f6ad, R.drawable.emoji_1f6ad);
+ sEmojisMap.put(0x1f237, R.drawable.emoji_1f237);
+ sEmojisMap.put(0x1f238, R.drawable.emoji_1f238);
+ sEmojisMap.put(0x1f202, R.drawable.emoji_1f202);
+ sEmojisMap.put(0x24c2, R.drawable.emoji_24c2);
+ sEmojisMap.put(0x1f6c2, R.drawable.emoji_1f6c2);
+ sEmojisMap.put(0x1f6c4, R.drawable.emoji_1f6c4);
+ sEmojisMap.put(0x1f6c5, R.drawable.emoji_1f6c5);
+ sEmojisMap.put(0x1f6c3, R.drawable.emoji_1f6c3);
+ sEmojisMap.put(0x1f251, R.drawable.emoji_1f251);
+ sEmojisMap.put(0x3299, R.drawable.emoji_3299);
+ sEmojisMap.put(0x3297, R.drawable.emoji_3297);
+ sEmojisMap.put(0x1f191, R.drawable.emoji_1f191);
+ sEmojisMap.put(0x1f198, R.drawable.emoji_1f198);
+ sEmojisMap.put(0x1f194, R.drawable.emoji_1f194);
+ sEmojisMap.put(0x1f6ab, R.drawable.emoji_1f6ab);
+ sEmojisMap.put(0x1f51e, R.drawable.emoji_1f51e);
+ sEmojisMap.put(0x1f4f5, R.drawable.emoji_1f4f5);
+ sEmojisMap.put(0x1f6af, R.drawable.emoji_1f6af);
+ sEmojisMap.put(0x1f6b1, R.drawable.emoji_1f6b1);
+ sEmojisMap.put(0x1f6b3, R.drawable.emoji_1f6b3);
+ sEmojisMap.put(0x1f6b7, R.drawable.emoji_1f6b7);
+ sEmojisMap.put(0x1f6b8, R.drawable.emoji_1f6b8);
+ sEmojisMap.put(0x26d4, R.drawable.emoji_26d4);
+ sEmojisMap.put(0x2733, R.drawable.emoji_2733);
+ sEmojisMap.put(0x2747, R.drawable.emoji_2747);
+ sEmojisMap.put(0x274e, R.drawable.emoji_274e);
+ sEmojisMap.put(0x2705, R.drawable.emoji_2705);
+ sEmojisMap.put(0x2734, R.drawable.emoji_2734);
+ sEmojisMap.put(0x1f49f, R.drawable.emoji_1f49f);
+ sEmojisMap.put(0x1f19a, R.drawable.emoji_1f19a);
+ sEmojisMap.put(0x1f4f3, R.drawable.emoji_1f4f3);
+ sEmojisMap.put(0x1f4f4, R.drawable.emoji_1f4f4);
+ sEmojisMap.put(0x1f170, R.drawable.emoji_1f170);
+ sEmojisMap.put(0x1f171, R.drawable.emoji_1f171);
+ sEmojisMap.put(0x1f18e, R.drawable.emoji_1f18e);
+ sEmojisMap.put(0x1f17e, R.drawable.emoji_1f17e);
+ sEmojisMap.put(0x1f4a0, R.drawable.emoji_1f4a0);
+ sEmojisMap.put(0x27bf, R.drawable.emoji_27bf);
+ sEmojisMap.put(0x267b, R.drawable.emoji_267b);
+ sEmojisMap.put(0x2648, R.drawable.emoji_2648);
+ sEmojisMap.put(0x2649, R.drawable.emoji_2649);
+ sEmojisMap.put(0x264a, R.drawable.emoji_264a);
+ sEmojisMap.put(0x264b, R.drawable.emoji_264b);
+ sEmojisMap.put(0x264c, R.drawable.emoji_264c);
+ sEmojisMap.put(0x264d, R.drawable.emoji_264d);
+ sEmojisMap.put(0x264e, R.drawable.emoji_264e);
+ sEmojisMap.put(0x264f, R.drawable.emoji_264f);
+ sEmojisMap.put(0x2650, R.drawable.emoji_2650);
+ sEmojisMap.put(0x2651, R.drawable.emoji_2651);
+ sEmojisMap.put(0x2652, R.drawable.emoji_2652);
+ sEmojisMap.put(0x2653, R.drawable.emoji_2653);
+ sEmojisMap.put(0x26ce, R.drawable.emoji_26ce);
+ sEmojisMap.put(0x1f52f, R.drawable.emoji_1f52f);
+ sEmojisMap.put(0x1f3e7, R.drawable.emoji_1f3e7);
+ sEmojisMap.put(0x1f4b9, R.drawable.emoji_1f4b9);
+ sEmojisMap.put(0x1f4b2, R.drawable.emoji_1f4b2);
+ sEmojisMap.put(0x1f4b1, R.drawable.emoji_1f4b1);
+ sEmojisMap.put(0x00a9, R.drawable.emoji_00a9);
+ sEmojisMap.put(0x00ae, R.drawable.emoji_00ae);
+ sEmojisMap.put(0x2122, R.drawable.emoji_2122);
+ sEmojisMap.put(0x274c, R.drawable.emoji_274c);
+ sEmojisMap.put(0x203c, R.drawable.emoji_203c);
+ sEmojisMap.put(0x2049, R.drawable.emoji_2049);
+ sEmojisMap.put(0x2757, R.drawable.emoji_2757);
+ sEmojisMap.put(0x2753, R.drawable.emoji_2753);
+ sEmojisMap.put(0x2755, R.drawable.emoji_2755);
+ sEmojisMap.put(0x2754, R.drawable.emoji_2754);
+ sEmojisMap.put(0x2b55, R.drawable.emoji_2b55);
+ sEmojisMap.put(0x1f51d, R.drawable.emoji_1f51d);
+ sEmojisMap.put(0x1f51a, R.drawable.emoji_1f51a);
+ sEmojisMap.put(0x1f519, R.drawable.emoji_1f519);
+ sEmojisMap.put(0x1f51b, R.drawable.emoji_1f51b);
+ sEmojisMap.put(0x1f51c, R.drawable.emoji_1f51c);
+ sEmojisMap.put(0x1f503, R.drawable.emoji_1f503);
+ sEmojisMap.put(0x1f55b, R.drawable.emoji_1f55b);
+ sEmojisMap.put(0x1f567, R.drawable.emoji_1f567);
+ sEmojisMap.put(0x1f550, R.drawable.emoji_1f550);
+ sEmojisMap.put(0x1f55c, R.drawable.emoji_1f55c);
+ sEmojisMap.put(0x1f551, R.drawable.emoji_1f551);
+ sEmojisMap.put(0x1f55d, R.drawable.emoji_1f55d);
+ sEmojisMap.put(0x1f552, R.drawable.emoji_1f552);
+ sEmojisMap.put(0x1f55e, R.drawable.emoji_1f55e);
+ sEmojisMap.put(0x1f553, R.drawable.emoji_1f553);
+ sEmojisMap.put(0x1f55f, R.drawable.emoji_1f55f);
+ sEmojisMap.put(0x1f554, R.drawable.emoji_1f554);
+ sEmojisMap.put(0x1f560, R.drawable.emoji_1f560);
+ sEmojisMap.put(0x1f555, R.drawable.emoji_1f555);
+ sEmojisMap.put(0x1f556, R.drawable.emoji_1f556);
+ sEmojisMap.put(0x1f557, R.drawable.emoji_1f557);
+ sEmojisMap.put(0x1f558, R.drawable.emoji_1f558);
+ sEmojisMap.put(0x1f559, R.drawable.emoji_1f559);
+ sEmojisMap.put(0x1f55a, R.drawable.emoji_1f55a);
+ sEmojisMap.put(0x1f561, R.drawable.emoji_1f561);
+ sEmojisMap.put(0x1f562, R.drawable.emoji_1f562);
+ sEmojisMap.put(0x1f563, R.drawable.emoji_1f563);
+ sEmojisMap.put(0x1f564, R.drawable.emoji_1f564);
+ sEmojisMap.put(0x1f565, R.drawable.emoji_1f565);
+ sEmojisMap.put(0x1f566, R.drawable.emoji_1f566);
+ sEmojisMap.put(0x2716, R.drawable.emoji_2716);
+ sEmojisMap.put(0x2795, R.drawable.emoji_2795);
+ sEmojisMap.put(0x2796, R.drawable.emoji_2796);
+ sEmojisMap.put(0x2797, R.drawable.emoji_2797);
+ sEmojisMap.put(0x2660, R.drawable.emoji_2660);
+ sEmojisMap.put(0x2665, R.drawable.emoji_2665);
+ sEmojisMap.put(0x2663, R.drawable.emoji_2663);
+ sEmojisMap.put(0x2666, R.drawable.emoji_2666);
+ sEmojisMap.put(0x1f4ae, R.drawable.emoji_1f4ae);
+ sEmojisMap.put(0x1f4af, R.drawable.emoji_1f4af);
+ sEmojisMap.put(0x2714, R.drawable.emoji_2714);
+ sEmojisMap.put(0x2611, R.drawable.emoji_2611);
+ sEmojisMap.put(0x1f518, R.drawable.emoji_1f518);
+ sEmojisMap.put(0x1f517, R.drawable.emoji_1f517);
+ sEmojisMap.put(0x27b0, R.drawable.emoji_27b0);
+ sEmojisMap.put(0x3030, R.drawable.emoji_3030);
+ sEmojisMap.put(0x303d, R.drawable.emoji_303d);
+ sEmojisMap.put(0x1f531, R.drawable.emoji_1f531);
+ sEmojisMap.put(0x25fc, R.drawable.emoji_25fc);
+ sEmojisMap.put(0x25fb, R.drawable.emoji_25fb);
+ sEmojisMap.put(0x25fe, R.drawable.emoji_25fe);
+ sEmojisMap.put(0x25fd, R.drawable.emoji_25fd);
+ sEmojisMap.put(0x25aa, R.drawable.emoji_25aa);
+ sEmojisMap.put(0x25ab, R.drawable.emoji_25ab);
+ sEmojisMap.put(0x1f53a, R.drawable.emoji_1f53a);
+ sEmojisMap.put(0x1f532, R.drawable.emoji_1f532);
+ sEmojisMap.put(0x1f533, R.drawable.emoji_1f533);
+ sEmojisMap.put(0x26ab, R.drawable.emoji_26ab);
+ sEmojisMap.put(0x26aa, R.drawable.emoji_26aa);
+ sEmojisMap.put(0x1f534, R.drawable.emoji_1f534);
+ sEmojisMap.put(0x1f535, R.drawable.emoji_1f535);
+ sEmojisMap.put(0x1f53b, R.drawable.emoji_1f53b);
+ sEmojisMap.put(0x2b1c, R.drawable.emoji_2b1c);
+ sEmojisMap.put(0x2b1b, R.drawable.emoji_2b1b);
+ sEmojisMap.put(0x1f536, R.drawable.emoji_1f536);
+ sEmojisMap.put(0x1f537, R.drawable.emoji_1f537);
+ sEmojisMap.put(0x1f538, R.drawable.emoji_1f538);
+ sEmojisMap.put(0x1f539, R.drawable.emoji_1f539);
+
+
+ sSoftbanksMap.put(0xe001, R.drawable.emoji_1f466);
+ sSoftbanksMap.put(0xe002, R.drawable.emoji_1f467);
+ sSoftbanksMap.put(0xe003, R.drawable.emoji_1f48b);
+ sSoftbanksMap.put(0xe004, R.drawable.emoji_1f468);
+ sSoftbanksMap.put(0xe005, R.drawable.emoji_1f469);
+ sSoftbanksMap.put(0xe006, R.drawable.emoji_1f455);
+ sSoftbanksMap.put(0xe007, R.drawable.emoji_1f45e);
+ sSoftbanksMap.put(0xe008, R.drawable.emoji_1f4f7);
+ sSoftbanksMap.put(0xe009, R.drawable.emoji_1f4de);
+ sSoftbanksMap.put(0xe00a, R.drawable.emoji_1f4f1);
+ sSoftbanksMap.put(0xe00b, R.drawable.emoji_1f4e0);
+ sSoftbanksMap.put(0xe00c, R.drawable.emoji_1f4bb);
+ sSoftbanksMap.put(0xe00d, R.drawable.emoji_1f44a);
+ sSoftbanksMap.put(0xe00e, R.drawable.emoji_1f44d);
+ sSoftbanksMap.put(0xe00f, R.drawable.emoji_261d);
+ sSoftbanksMap.put(0xe010, R.drawable.emoji_270a);
+ sSoftbanksMap.put(0xe011, R.drawable.emoji_270c);
+ sSoftbanksMap.put(0xe012, R.drawable.emoji_1f64b);
+ sSoftbanksMap.put(0xe013, R.drawable.emoji_1f3bf);
+ sSoftbanksMap.put(0xe014, R.drawable.emoji_26f3);
+ sSoftbanksMap.put(0xe015, R.drawable.emoji_1f3be);
+ sSoftbanksMap.put(0xe016, R.drawable.emoji_26be);
+ sSoftbanksMap.put(0xe017, R.drawable.emoji_1f3c4);
+ sSoftbanksMap.put(0xe018, R.drawable.emoji_26bd);
+ sSoftbanksMap.put(0xe019, R.drawable.emoji_1f3a3);
+ sSoftbanksMap.put(0xe01a, R.drawable.emoji_1f434);
+ sSoftbanksMap.put(0xe01b, R.drawable.emoji_1f697);
+ sSoftbanksMap.put(0xe01c, R.drawable.emoji_26f5);
+ sSoftbanksMap.put(0xe01d, R.drawable.emoji_2708);
+ sSoftbanksMap.put(0xe01e, R.drawable.emoji_1f683);
+ sSoftbanksMap.put(0xe01f, R.drawable.emoji_1f685);
+ sSoftbanksMap.put(0xe020, R.drawable.emoji_2753);
+ sSoftbanksMap.put(0xe021, R.drawable.emoji_2757);
+ sSoftbanksMap.put(0xe022, R.drawable.emoji_2764);
+ sSoftbanksMap.put(0xe023, R.drawable.emoji_1f494);
+ sSoftbanksMap.put(0xe024, R.drawable.emoji_1f550);
+ sSoftbanksMap.put(0xe025, R.drawable.emoji_1f551);
+ sSoftbanksMap.put(0xe026, R.drawable.emoji_1f552);
+ sSoftbanksMap.put(0xe027, R.drawable.emoji_1f553);
+ sSoftbanksMap.put(0xe028, R.drawable.emoji_1f554);
+ sSoftbanksMap.put(0xe029, R.drawable.emoji_1f555);
+ sSoftbanksMap.put(0xe02a, R.drawable.emoji_1f556);
+ sSoftbanksMap.put(0xe02b, R.drawable.emoji_1f557);
+ sSoftbanksMap.put(0xe02c, R.drawable.emoji_1f558);
+ sSoftbanksMap.put(0xe02d, R.drawable.emoji_1f559);
+ sSoftbanksMap.put(0xe02e, R.drawable.emoji_1f55a);
+ sSoftbanksMap.put(0xe02f, R.drawable.emoji_1f55b);
+ sSoftbanksMap.put(0xe030, R.drawable.emoji_1f338);
+ sSoftbanksMap.put(0xe031, R.drawable.emoji_1f531);
+ sSoftbanksMap.put(0xe032, R.drawable.emoji_1f339);
+ sSoftbanksMap.put(0xe033, R.drawable.emoji_1f384);
+ sSoftbanksMap.put(0xe034, R.drawable.emoji_1f48d);
+ sSoftbanksMap.put(0xe035, R.drawable.emoji_1f48e);
+ sSoftbanksMap.put(0xe036, R.drawable.emoji_1f3e0);
+ sSoftbanksMap.put(0xe037, R.drawable.emoji_26ea);
+ sSoftbanksMap.put(0xe038, R.drawable.emoji_1f3e2);
+ sSoftbanksMap.put(0xe039, R.drawable.emoji_1f689);
+ sSoftbanksMap.put(0xe03a, R.drawable.emoji_26fd);
+ sSoftbanksMap.put(0xe03b, R.drawable.emoji_1f5fb);
+ sSoftbanksMap.put(0xe03c, R.drawable.emoji_1f3a4);
+ sSoftbanksMap.put(0xe03d, R.drawable.emoji_1f3a5);
+ sSoftbanksMap.put(0xe03e, R.drawable.emoji_1f3b5);
+ sSoftbanksMap.put(0xe03f, R.drawable.emoji_1f511);
+ sSoftbanksMap.put(0xe040, R.drawable.emoji_1f3b7);
+ sSoftbanksMap.put(0xe041, R.drawable.emoji_1f3b8);
+ sSoftbanksMap.put(0xe042, R.drawable.emoji_1f3ba);
+ sSoftbanksMap.put(0xe043, R.drawable.emoji_1f374);
+ sSoftbanksMap.put(0xe044, R.drawable.emoji_1f377);
+ sSoftbanksMap.put(0xe045, R.drawable.emoji_2615);
+ sSoftbanksMap.put(0xe046, R.drawable.emoji_1f370);
+ sSoftbanksMap.put(0xe047, R.drawable.emoji_1f37a);
+ sSoftbanksMap.put(0xe048, R.drawable.emoji_26c4);
+ sSoftbanksMap.put(0xe049, R.drawable.emoji_2601);
+ sSoftbanksMap.put(0xe04a, R.drawable.emoji_2600);
+ sSoftbanksMap.put(0xe04b, R.drawable.emoji_2614);
+ sSoftbanksMap.put(0xe04c, R.drawable.emoji_1f313);
+ sSoftbanksMap.put(0xe04d, R.drawable.emoji_1f304);
+ sSoftbanksMap.put(0xe04e, R.drawable.emoji_1f47c);
+ sSoftbanksMap.put(0xe04f, R.drawable.emoji_1f431);
+ sSoftbanksMap.put(0xe050, R.drawable.emoji_1f42f);
+ sSoftbanksMap.put(0xe051, R.drawable.emoji_1f43b);
+ sSoftbanksMap.put(0xe052, R.drawable.emoji_1f429);
+ sSoftbanksMap.put(0xe053, R.drawable.emoji_1f42d);
+ sSoftbanksMap.put(0xe054, R.drawable.emoji_1f433);
+ sSoftbanksMap.put(0xe055, R.drawable.emoji_1f427);
+ sSoftbanksMap.put(0xe056, R.drawable.emoji_1f60a);
+ sSoftbanksMap.put(0xe057, R.drawable.emoji_1f603);
+ sSoftbanksMap.put(0xe058, R.drawable.emoji_1f61e);
+ sSoftbanksMap.put(0xe059, R.drawable.emoji_1f620);
+ sSoftbanksMap.put(0xe05a, R.drawable.emoji_1f4a9);
+ sSoftbanksMap.put(0xe101, R.drawable.emoji_1f4ea);
+ sSoftbanksMap.put(0xe102, R.drawable.emoji_1f4ee);
+ sSoftbanksMap.put(0xe103, R.drawable.emoji_1f4e7);
+ sSoftbanksMap.put(0xe104, R.drawable.emoji_1f4f2);
+ sSoftbanksMap.put(0xe105, R.drawable.emoji_1f61c);
+ sSoftbanksMap.put(0xe106, R.drawable.emoji_1f60d);
+ sSoftbanksMap.put(0xe107, R.drawable.emoji_1f631);
+ sSoftbanksMap.put(0xe108, R.drawable.emoji_1f613);
+ sSoftbanksMap.put(0xe109, R.drawable.emoji_1f435);
+ sSoftbanksMap.put(0xe10a, R.drawable.emoji_1f419);
+ sSoftbanksMap.put(0xe10b, R.drawable.emoji_1f437);
+ sSoftbanksMap.put(0xe10c, R.drawable.emoji_1f47d);
+ sSoftbanksMap.put(0xe10d, R.drawable.emoji_1f680);
+ sSoftbanksMap.put(0xe10e, R.drawable.emoji_1f451);
+ sSoftbanksMap.put(0xe10f, R.drawable.emoji_1f4a1);
+ sSoftbanksMap.put(0xe110, R.drawable.emoji_1f331);
+ sSoftbanksMap.put(0xe111, R.drawable.emoji_1f48f);
+ sSoftbanksMap.put(0xe112, R.drawable.emoji_1f381);
+ sSoftbanksMap.put(0xe113, R.drawable.emoji_1f52b);
+ sSoftbanksMap.put(0xe114, R.drawable.emoji_1f50d);
+ sSoftbanksMap.put(0xe115, R.drawable.emoji_1f3c3);
+ sSoftbanksMap.put(0xe116, R.drawable.emoji_1f528);
+ sSoftbanksMap.put(0xe117, R.drawable.emoji_1f386);
+ sSoftbanksMap.put(0xe118, R.drawable.emoji_1f341);
+ sSoftbanksMap.put(0xe119, R.drawable.emoji_1f342);
+ sSoftbanksMap.put(0xe11a, R.drawable.emoji_1f47f);
+ sSoftbanksMap.put(0xe11b, R.drawable.emoji_1f47b);
+ sSoftbanksMap.put(0xe11c, R.drawable.emoji_1f480);
+ sSoftbanksMap.put(0xe11d, R.drawable.emoji_1f525);
+ sSoftbanksMap.put(0xe11e, R.drawable.emoji_1f4bc);
+ sSoftbanksMap.put(0xe11f, R.drawable.emoji_1f4ba);
+ sSoftbanksMap.put(0xe120, R.drawable.emoji_1f354);
+ sSoftbanksMap.put(0xe121, R.drawable.emoji_26f2);
+ sSoftbanksMap.put(0xe122, R.drawable.emoji_26fa);
+ sSoftbanksMap.put(0xe123, R.drawable.emoji_2668);
+ sSoftbanksMap.put(0xe124, R.drawable.emoji_1f3a1);
+ sSoftbanksMap.put(0xe125, R.drawable.emoji_1f3ab);
+ sSoftbanksMap.put(0xe126, R.drawable.emoji_1f4bf);
+ sSoftbanksMap.put(0xe127, R.drawable.emoji_1f4c0);
+ sSoftbanksMap.put(0xe128, R.drawable.emoji_1f4fb);
+ sSoftbanksMap.put(0xe129, R.drawable.emoji_1f4fc);
+ sSoftbanksMap.put(0xe12a, R.drawable.emoji_1f4fa);
+ sSoftbanksMap.put(0xe12b, R.drawable.emoji_1f47e);
+ sSoftbanksMap.put(0xe12c, R.drawable.emoji_303d);
+ sSoftbanksMap.put(0xe12d, R.drawable.emoji_1f004);
+ sSoftbanksMap.put(0xe12e, R.drawable.emoji_1f19a);
+ sSoftbanksMap.put(0xe12f, R.drawable.emoji_1f4b0);
+ sSoftbanksMap.put(0xe130, R.drawable.emoji_1f3af);
+ sSoftbanksMap.put(0xe131, R.drawable.emoji_1f3c6);
+ sSoftbanksMap.put(0xe132, R.drawable.emoji_1f3c1);
+ sSoftbanksMap.put(0xe133, R.drawable.emoji_1f3b0);
+ sSoftbanksMap.put(0xe134, R.drawable.emoji_1f40e);
+ sSoftbanksMap.put(0xe135, R.drawable.emoji_1f6a4);
+ sSoftbanksMap.put(0xe136, R.drawable.emoji_1f6b2);
+ sSoftbanksMap.put(0xe137, R.drawable.emoji_1f6a7);
+ sSoftbanksMap.put(0xe138, R.drawable.emoji_1f6b9);
+ sSoftbanksMap.put(0xe139, R.drawable.emoji_1f6ba);
+ sSoftbanksMap.put(0xe13a, R.drawable.emoji_1f6bc);
+ sSoftbanksMap.put(0xe13b, R.drawable.emoji_1f489);
+ sSoftbanksMap.put(0xe13c, R.drawable.emoji_1f4a4);
+ sSoftbanksMap.put(0xe13d, R.drawable.emoji_26a1);
+ sSoftbanksMap.put(0xe13e, R.drawable.emoji_1f460);
+ sSoftbanksMap.put(0xe13f, R.drawable.emoji_1f6c0);
+ sSoftbanksMap.put(0xe140, R.drawable.emoji_1f6bd);
+ sSoftbanksMap.put(0xe141, R.drawable.emoji_1f50a);
+ sSoftbanksMap.put(0xe142, R.drawable.emoji_1f4e2);
+ sSoftbanksMap.put(0xe143, R.drawable.emoji_1f38c);
+ sSoftbanksMap.put(0xe144, R.drawable.emoji_1f50f);
+ sSoftbanksMap.put(0xe145, R.drawable.emoji_1f513);
+ sSoftbanksMap.put(0xe146, R.drawable.emoji_1f306);
+ sSoftbanksMap.put(0xe147, R.drawable.emoji_1f373);
+ sSoftbanksMap.put(0xe148, R.drawable.emoji_1f4c7);
+ sSoftbanksMap.put(0xe149, R.drawable.emoji_1f4b1);
+ sSoftbanksMap.put(0xe14a, R.drawable.emoji_1f4b9);
+ sSoftbanksMap.put(0xe14b, R.drawable.emoji_1f4e1);
+ sSoftbanksMap.put(0xe14c, R.drawable.emoji_1f4aa);
+ sSoftbanksMap.put(0xe14d, R.drawable.emoji_1f3e6);
+ sSoftbanksMap.put(0xe14e, R.drawable.emoji_1f6a5);
+ sSoftbanksMap.put(0xe14f, R.drawable.emoji_1f17f);
+ sSoftbanksMap.put(0xe150, R.drawable.emoji_1f68f);
+ sSoftbanksMap.put(0xe151, R.drawable.emoji_1f6bb);
+ sSoftbanksMap.put(0xe152, R.drawable.emoji_1f46e);
+ sSoftbanksMap.put(0xe153, R.drawable.emoji_1f3e3);
+ sSoftbanksMap.put(0xe154, R.drawable.emoji_1f3e7);
+ sSoftbanksMap.put(0xe155, R.drawable.emoji_1f3e5);
+ sSoftbanksMap.put(0xe156, R.drawable.emoji_1f3ea);
+ sSoftbanksMap.put(0xe157, R.drawable.emoji_1f3eb);
+ sSoftbanksMap.put(0xe158, R.drawable.emoji_1f3e8);
+ sSoftbanksMap.put(0xe159, R.drawable.emoji_1f68c);
+ sSoftbanksMap.put(0xe15a, R.drawable.emoji_1f695);
+ sSoftbanksMap.put(0xe201, R.drawable.emoji_1f6b6);
+ sSoftbanksMap.put(0xe202, R.drawable.emoji_1f6a2);
+ sSoftbanksMap.put(0xe203, R.drawable.emoji_1f201);
+ sSoftbanksMap.put(0xe204, R.drawable.emoji_1f49f);
+ sSoftbanksMap.put(0xe205, R.drawable.emoji_2734);
+ sSoftbanksMap.put(0xe206, R.drawable.emoji_2733);
+ sSoftbanksMap.put(0xe207, R.drawable.emoji_1f51e);
+ sSoftbanksMap.put(0xe208, R.drawable.emoji_1f6ad);
+ sSoftbanksMap.put(0xe209, R.drawable.emoji_1f530);
+ sSoftbanksMap.put(0xe20a, R.drawable.emoji_267f);
+ sSoftbanksMap.put(0xe20b, R.drawable.emoji_1f4f6);
+ sSoftbanksMap.put(0xe20c, R.drawable.emoji_2665);
+ sSoftbanksMap.put(0xe20d, R.drawable.emoji_2666);
+ sSoftbanksMap.put(0xe20e, R.drawable.emoji_2660);
+ sSoftbanksMap.put(0xe20f, R.drawable.emoji_2663);
+ sSoftbanksMap.put(0xe210, R.drawable.emoji_0023);
+ sSoftbanksMap.put(0xe211, R.drawable.emoji_27bf);
+ sSoftbanksMap.put(0xe212, R.drawable.emoji_1f195);
+ sSoftbanksMap.put(0xe213, R.drawable.emoji_1f199);
+ sSoftbanksMap.put(0xe214, R.drawable.emoji_1f192);
+ sSoftbanksMap.put(0xe215, R.drawable.emoji_1f236);
+ sSoftbanksMap.put(0xe216, R.drawable.emoji_1f21a);
+ sSoftbanksMap.put(0xe217, R.drawable.emoji_1f237);
+ sSoftbanksMap.put(0xe218, R.drawable.emoji_1f238);
+ sSoftbanksMap.put(0xe219, R.drawable.emoji_1f534);
+ sSoftbanksMap.put(0xe21a, R.drawable.emoji_1f532);
+ sSoftbanksMap.put(0xe21b, R.drawable.emoji_1f533);
+ sSoftbanksMap.put(0xe21c, R.drawable.emoji_0031);
+ sSoftbanksMap.put(0xe21d, R.drawable.emoji_0032);
+ sSoftbanksMap.put(0xe21e, R.drawable.emoji_0033);
+ sSoftbanksMap.put(0xe21f, R.drawable.emoji_0034);
+ sSoftbanksMap.put(0xe220, R.drawable.emoji_0035);
+ sSoftbanksMap.put(0xe221, R.drawable.emoji_0036);
+ sSoftbanksMap.put(0xe222, R.drawable.emoji_0037);
+ sSoftbanksMap.put(0xe223, R.drawable.emoji_0038);
+ sSoftbanksMap.put(0xe224, R.drawable.emoji_0039);
+ sSoftbanksMap.put(0xe225, R.drawable.emoji_0030);
+ sSoftbanksMap.put(0xe226, R.drawable.emoji_1f250);
+ sSoftbanksMap.put(0xe227, R.drawable.emoji_1f239);
+ sSoftbanksMap.put(0xe228, R.drawable.emoji_1f202);
+ sSoftbanksMap.put(0xe229, R.drawable.emoji_1f194);
+ sSoftbanksMap.put(0xe22a, R.drawable.emoji_1f235);
+ sSoftbanksMap.put(0xe22b, R.drawable.emoji_1f233);
+ sSoftbanksMap.put(0xe22c, R.drawable.emoji_1f22f);
+ sSoftbanksMap.put(0xe22d, R.drawable.emoji_1f23a);
+ sSoftbanksMap.put(0xe22e, R.drawable.emoji_1f446);
+ sSoftbanksMap.put(0xe22f, R.drawable.emoji_1f447);
+ sSoftbanksMap.put(0xe230, R.drawable.emoji_1f448);
+ sSoftbanksMap.put(0xe231, R.drawable.emoji_1f449);
+ sSoftbanksMap.put(0xe232, R.drawable.emoji_2b06);
+ sSoftbanksMap.put(0xe233, R.drawable.emoji_2b07);
+ sSoftbanksMap.put(0xe234, R.drawable.emoji_27a1);
+ sSoftbanksMap.put(0xe235, R.drawable.emoji_1f519);
+ sSoftbanksMap.put(0xe236, R.drawable.emoji_2197);
+ sSoftbanksMap.put(0xe237, R.drawable.emoji_2196);
+ sSoftbanksMap.put(0xe238, R.drawable.emoji_2198);
+ sSoftbanksMap.put(0xe239, R.drawable.emoji_2199);
+ sSoftbanksMap.put(0xe23a, R.drawable.emoji_25b6);
+ sSoftbanksMap.put(0xe23b, R.drawable.emoji_25c0);
+ sSoftbanksMap.put(0xe23c, R.drawable.emoji_23e9);
+ sSoftbanksMap.put(0xe23d, R.drawable.emoji_23ea);
+ sSoftbanksMap.put(0xe23e, R.drawable.emoji_1f52e);
+ sSoftbanksMap.put(0xe23f, R.drawable.emoji_2648);
+ sSoftbanksMap.put(0xe240, R.drawable.emoji_2649);
+ sSoftbanksMap.put(0xe241, R.drawable.emoji_264a);
+ sSoftbanksMap.put(0xe242, R.drawable.emoji_264b);
+ sSoftbanksMap.put(0xe243, R.drawable.emoji_264c);
+ sSoftbanksMap.put(0xe244, R.drawable.emoji_264d);
+ sSoftbanksMap.put(0xe245, R.drawable.emoji_264e);
+ sSoftbanksMap.put(0xe246, R.drawable.emoji_264f);
+ sSoftbanksMap.put(0xe247, R.drawable.emoji_2650);
+ sSoftbanksMap.put(0xe248, R.drawable.emoji_2651);
+ sSoftbanksMap.put(0xe249, R.drawable.emoji_2652);
+ sSoftbanksMap.put(0xe24a, R.drawable.emoji_2653);
+ sSoftbanksMap.put(0xe24b, R.drawable.emoji_26ce);
+ sSoftbanksMap.put(0xe24c, R.drawable.emoji_1f51d);
+ sSoftbanksMap.put(0xe24d, R.drawable.emoji_1f197);
+ sSoftbanksMap.put(0xe24e, R.drawable.emoji_00a9);
+ sSoftbanksMap.put(0xe24f, R.drawable.emoji_00ae);
+ sSoftbanksMap.put(0xe250, R.drawable.emoji_1f4f3);
+ sSoftbanksMap.put(0xe251, R.drawable.emoji_1f4f4);
+ sSoftbanksMap.put(0xe252, R.drawable.emoji_26a0);
+ sSoftbanksMap.put(0xe253, R.drawable.emoji_1f481);
+ sSoftbanksMap.put(0xe301, R.drawable.emoji_1f4c3);
+ sSoftbanksMap.put(0xe302, R.drawable.emoji_1f454);
+ sSoftbanksMap.put(0xe303, R.drawable.emoji_1f33a);
+ sSoftbanksMap.put(0xe304, R.drawable.emoji_1f337);
+ sSoftbanksMap.put(0xe305, R.drawable.emoji_1f33b);
+ sSoftbanksMap.put(0xe306, R.drawable.emoji_1f490);
+ sSoftbanksMap.put(0xe307, R.drawable.emoji_1f334);
+ sSoftbanksMap.put(0xe308, R.drawable.emoji_1f335);
+ sSoftbanksMap.put(0xe309, R.drawable.emoji_1f6be);
+ sSoftbanksMap.put(0xe30a, R.drawable.emoji_1f3a7);
+ sSoftbanksMap.put(0xe30b, R.drawable.emoji_1f376);
+ sSoftbanksMap.put(0xe30c, R.drawable.emoji_1f37b);
+ sSoftbanksMap.put(0xe30d, R.drawable.emoji_3297);
+ sSoftbanksMap.put(0xe30e, R.drawable.emoji_1f6ac);
+ sSoftbanksMap.put(0xe30f, R.drawable.emoji_1f48a);
+ sSoftbanksMap.put(0xe310, R.drawable.emoji_1f388);
+ sSoftbanksMap.put(0xe311, R.drawable.emoji_1f4a3);
+ sSoftbanksMap.put(0xe312, R.drawable.emoji_1f389);
+ sSoftbanksMap.put(0xe313, R.drawable.emoji_2702);
+ sSoftbanksMap.put(0xe314, R.drawable.emoji_1f380);
+ sSoftbanksMap.put(0xe315, R.drawable.emoji_3299);
+ sSoftbanksMap.put(0xe316, R.drawable.emoji_1f4bd);
+ sSoftbanksMap.put(0xe317, R.drawable.emoji_1f4e3);
+ sSoftbanksMap.put(0xe318, R.drawable.emoji_1f452);
+ sSoftbanksMap.put(0xe319, R.drawable.emoji_1f457);
+ sSoftbanksMap.put(0xe31a, R.drawable.emoji_1f461);
+ sSoftbanksMap.put(0xe31b, R.drawable.emoji_1f462);
+ sSoftbanksMap.put(0xe31c, R.drawable.emoji_1f484);
+ sSoftbanksMap.put(0xe31d, R.drawable.emoji_1f485);
+ sSoftbanksMap.put(0xe31e, R.drawable.emoji_1f486);
+ sSoftbanksMap.put(0xe31f, R.drawable.emoji_1f487);
+ sSoftbanksMap.put(0xe320, R.drawable.emoji_1f488);
+ sSoftbanksMap.put(0xe321, R.drawable.emoji_1f458);
+ sSoftbanksMap.put(0xe322, R.drawable.emoji_1f459);
+ sSoftbanksMap.put(0xe323, R.drawable.emoji_1f45c);
+ sSoftbanksMap.put(0xe324, R.drawable.emoji_1f3ac);
+ sSoftbanksMap.put(0xe325, R.drawable.emoji_1f514);
+ sSoftbanksMap.put(0xe326, R.drawable.emoji_1f3b6);
+ sSoftbanksMap.put(0xe327, R.drawable.emoji_1f493);
+ sSoftbanksMap.put(0xe328, R.drawable.emoji_1f48c);
+ sSoftbanksMap.put(0xe329, R.drawable.emoji_1f498);
+ sSoftbanksMap.put(0xe32a, R.drawable.emoji_1f499);
+ sSoftbanksMap.put(0xe32b, R.drawable.emoji_1f49a);
+ sSoftbanksMap.put(0xe32c, R.drawable.emoji_1f49b);
+ sSoftbanksMap.put(0xe32d, R.drawable.emoji_1f49c);
+ sSoftbanksMap.put(0xe32e, R.drawable.emoji_2728);
+ sSoftbanksMap.put(0xe32f, R.drawable.emoji_2b50);
+ sSoftbanksMap.put(0xe330, R.drawable.emoji_1f4a8);
+ sSoftbanksMap.put(0xe331, R.drawable.emoji_1f4a6);
+ sSoftbanksMap.put(0xe332, R.drawable.emoji_2b55);
+ sSoftbanksMap.put(0xe333, R.drawable.emoji_2716);
+ sSoftbanksMap.put(0xe334, R.drawable.emoji_1f4a2);
+ sSoftbanksMap.put(0xe335, R.drawable.emoji_1f31f);
+ sSoftbanksMap.put(0xe336, R.drawable.emoji_2754);
+ sSoftbanksMap.put(0xe337, R.drawable.emoji_2755);
+ sSoftbanksMap.put(0xe338, R.drawable.emoji_1f375);
+ sSoftbanksMap.put(0xe339, R.drawable.emoji_1f35e);
+ sSoftbanksMap.put(0xe33a, R.drawable.emoji_1f366);
+ sSoftbanksMap.put(0xe33b, R.drawable.emoji_1f35f);
+ sSoftbanksMap.put(0xe33c, R.drawable.emoji_1f361);
+ sSoftbanksMap.put(0xe33d, R.drawable.emoji_1f358);
+ sSoftbanksMap.put(0xe33e, R.drawable.emoji_1f35a);
+ sSoftbanksMap.put(0xe33f, R.drawable.emoji_1f35d);
+ sSoftbanksMap.put(0xe340, R.drawable.emoji_1f35c);
+ sSoftbanksMap.put(0xe341, R.drawable.emoji_1f35b);
+ sSoftbanksMap.put(0xe342, R.drawable.emoji_1f359);
+ sSoftbanksMap.put(0xe343, R.drawable.emoji_1f362);
+ sSoftbanksMap.put(0xe344, R.drawable.emoji_1f363);
+ sSoftbanksMap.put(0xe345, R.drawable.emoji_1f34e);
+ sSoftbanksMap.put(0xe346, R.drawable.emoji_1f34a);
+ sSoftbanksMap.put(0xe347, R.drawable.emoji_1f353);
+ sSoftbanksMap.put(0xe348, R.drawable.emoji_1f349);
+ sSoftbanksMap.put(0xe349, R.drawable.emoji_1f345);
+ sSoftbanksMap.put(0xe34a, R.drawable.emoji_1f346);
+ sSoftbanksMap.put(0xe34b, R.drawable.emoji_1f382);
+ sSoftbanksMap.put(0xe34c, R.drawable.emoji_1f371);
+ sSoftbanksMap.put(0xe34d, R.drawable.emoji_1f372);
+ sSoftbanksMap.put(0xe401, R.drawable.emoji_1f625);
+ sSoftbanksMap.put(0xe402, R.drawable.emoji_1f60f);
+ sSoftbanksMap.put(0xe403, R.drawable.emoji_1f614);
+ sSoftbanksMap.put(0xe404, R.drawable.emoji_1f601);
+ sSoftbanksMap.put(0xe405, R.drawable.emoji_1f609);
+ sSoftbanksMap.put(0xe406, R.drawable.emoji_1f623);
+ sSoftbanksMap.put(0xe407, R.drawable.emoji_1f616);
+ sSoftbanksMap.put(0xe408, R.drawable.emoji_1f62a);
+ sSoftbanksMap.put(0xe409, R.drawable.emoji_1f445);
+ sSoftbanksMap.put(0xe40a, R.drawable.emoji_1f606);
+ sSoftbanksMap.put(0xe40b, R.drawable.emoji_1f628);
+ sSoftbanksMap.put(0xe40c, R.drawable.emoji_1f637);
+ sSoftbanksMap.put(0xe40d, R.drawable.emoji_1f633);
+ sSoftbanksMap.put(0xe40e, R.drawable.emoji_1f612);
+ sSoftbanksMap.put(0xe40f, R.drawable.emoji_1f630);
+ sSoftbanksMap.put(0xe410, R.drawable.emoji_1f632);
+ sSoftbanksMap.put(0xe411, R.drawable.emoji_1f62d);
+ sSoftbanksMap.put(0xe412, R.drawable.emoji_1f602);
+ sSoftbanksMap.put(0xe413, R.drawable.emoji_1f622);
+ sSoftbanksMap.put(0xe414, R.drawable.emoji_263a);
+ sSoftbanksMap.put(0xe415, R.drawable.emoji_1f605);
+ sSoftbanksMap.put(0xe416, R.drawable.emoji_1f621);
+ sSoftbanksMap.put(0xe417, R.drawable.emoji_1f61a);
+ sSoftbanksMap.put(0xe418, R.drawable.emoji_1f618);
+ sSoftbanksMap.put(0xe419, R.drawable.emoji_1f440);
+ sSoftbanksMap.put(0xe41a, R.drawable.emoji_1f443);
+ sSoftbanksMap.put(0xe41b, R.drawable.emoji_1f442);
+ sSoftbanksMap.put(0xe41c, R.drawable.emoji_1f444);
+ sSoftbanksMap.put(0xe41d, R.drawable.emoji_1f64f);
+ sSoftbanksMap.put(0xe41e, R.drawable.emoji_1f44b);
+ sSoftbanksMap.put(0xe41f, R.drawable.emoji_1f44f);
+ sSoftbanksMap.put(0xe420, R.drawable.emoji_1f44c);
+ sSoftbanksMap.put(0xe421, R.drawable.emoji_1f44e);
+ sSoftbanksMap.put(0xe422, R.drawable.emoji_1f450);
+ sSoftbanksMap.put(0xe423, R.drawable.emoji_1f645);
+ sSoftbanksMap.put(0xe424, R.drawable.emoji_1f646);
+ sSoftbanksMap.put(0xe425, R.drawable.emoji_1f491);
+ sSoftbanksMap.put(0xe426, R.drawable.emoji_1f647);
+ sSoftbanksMap.put(0xe427, R.drawable.emoji_1f64c);
+ sSoftbanksMap.put(0xe428, R.drawable.emoji_1f46b);
+ sSoftbanksMap.put(0xe429, R.drawable.emoji_1f46f);
+ sSoftbanksMap.put(0xe42a, R.drawable.emoji_1f3c0);
+ sSoftbanksMap.put(0xe42b, R.drawable.emoji_1f3c8);
+ sSoftbanksMap.put(0xe42c, R.drawable.emoji_1f3b1);
+ sSoftbanksMap.put(0xe42d, R.drawable.emoji_1f3ca);
+ sSoftbanksMap.put(0xe42e, R.drawable.emoji_1f699);
+ sSoftbanksMap.put(0xe42f, R.drawable.emoji_1f69a);
+ sSoftbanksMap.put(0xe430, R.drawable.emoji_1f692);
+ sSoftbanksMap.put(0xe431, R.drawable.emoji_1f691);
+ sSoftbanksMap.put(0xe432, R.drawable.emoji_1f693);
+ sSoftbanksMap.put(0xe433, R.drawable.emoji_1f3a2);
+ sSoftbanksMap.put(0xe434, R.drawable.emoji_1f687);
+ sSoftbanksMap.put(0xe435, R.drawable.emoji_1f684);
+ sSoftbanksMap.put(0xe436, R.drawable.emoji_1f38d);
+ sSoftbanksMap.put(0xe437, R.drawable.emoji_1f49d);
+ sSoftbanksMap.put(0xe438, R.drawable.emoji_1f38e);
+ sSoftbanksMap.put(0xe439, R.drawable.emoji_1f393);
+ sSoftbanksMap.put(0xe43a, R.drawable.emoji_1f392);
+ sSoftbanksMap.put(0xe43b, R.drawable.emoji_1f38f);
+ sSoftbanksMap.put(0xe43c, R.drawable.emoji_1f302);
+ sSoftbanksMap.put(0xe43d, R.drawable.emoji_1f492);
+ sSoftbanksMap.put(0xe43e, R.drawable.emoji_1f30a);
+ sSoftbanksMap.put(0xe43f, R.drawable.emoji_1f367);
+ sSoftbanksMap.put(0xe440, R.drawable.emoji_1f387);
+ sSoftbanksMap.put(0xe441, R.drawable.emoji_1f41a);
+ sSoftbanksMap.put(0xe442, R.drawable.emoji_1f390);
+ sSoftbanksMap.put(0xe443, R.drawable.emoji_1f300);
+ sSoftbanksMap.put(0xe444, R.drawable.emoji_1f33e);
+ sSoftbanksMap.put(0xe445, R.drawable.emoji_1f383);
+ sSoftbanksMap.put(0xe446, R.drawable.emoji_1f391);
+ sSoftbanksMap.put(0xe447, R.drawable.emoji_1f343);
+ sSoftbanksMap.put(0xe448, R.drawable.emoji_1f385);
+ sSoftbanksMap.put(0xe449, R.drawable.emoji_1f305);
+ sSoftbanksMap.put(0xe44a, R.drawable.emoji_1f307);
+ sSoftbanksMap.put(0xe44b, R.drawable.emoji_1f303);
+ sSoftbanksMap.put(0xe44b, R.drawable.emoji_1f30c);
+ sSoftbanksMap.put(0xe44c, R.drawable.emoji_1f308);
+ sSoftbanksMap.put(0xe501, R.drawable.emoji_1f3e9);
+ sSoftbanksMap.put(0xe502, R.drawable.emoji_1f3a8);
+ sSoftbanksMap.put(0xe503, R.drawable.emoji_1f3a9);
+ sSoftbanksMap.put(0xe504, R.drawable.emoji_1f3ec);
+ sSoftbanksMap.put(0xe505, R.drawable.emoji_1f3ef);
+ sSoftbanksMap.put(0xe506, R.drawable.emoji_1f3f0);
+ sSoftbanksMap.put(0xe507, R.drawable.emoji_1f3a6);
+ sSoftbanksMap.put(0xe508, R.drawable.emoji_1f3ed);
+ sSoftbanksMap.put(0xe509, R.drawable.emoji_1f5fc);
+ sSoftbanksMap.put(0xe50b, R.drawable.emoji_1f1ef_1f1f5);
+ sSoftbanksMap.put(0xe50c, R.drawable.emoji_1f1fa_1f1f8);
+ sSoftbanksMap.put(0xe50d, R.drawable.emoji_1f1eb_1f1f7);
+ sSoftbanksMap.put(0xe50e, R.drawable.emoji_1f1e9_1f1ea);
+ sSoftbanksMap.put(0xe50f, R.drawable.emoji_1f1ee_1f1f9);
+ sSoftbanksMap.put(0xe510, R.drawable.emoji_1f1ec_1f1e7);
+ sSoftbanksMap.put(0xe511, R.drawable.emoji_1f1ea_1f1f8);
+ sSoftbanksMap.put(0xe512, R.drawable.emoji_1f1f7_1f1fa);
+ sSoftbanksMap.put(0xe513, R.drawable.emoji_1f1e8_1f1f3);
+ sSoftbanksMap.put(0xe514, R.drawable.emoji_1f1f0_1f1f7);
+ sSoftbanksMap.put(0xe515, R.drawable.emoji_1f471);
+ sSoftbanksMap.put(0xe516, R.drawable.emoji_1f472);
+ sSoftbanksMap.put(0xe517, R.drawable.emoji_1f473);
+ sSoftbanksMap.put(0xe518, R.drawable.emoji_1f474);
+ sSoftbanksMap.put(0xe519, R.drawable.emoji_1f475);
+ sSoftbanksMap.put(0xe51a, R.drawable.emoji_1f476);
+ sSoftbanksMap.put(0xe51b, R.drawable.emoji_1f477);
+ sSoftbanksMap.put(0xe51c, R.drawable.emoji_1f478);
+ sSoftbanksMap.put(0xe51d, R.drawable.emoji_1f5fd);
+ sSoftbanksMap.put(0xe51e, R.drawable.emoji_1f482);
+ sSoftbanksMap.put(0xe51f, R.drawable.emoji_1f483);
+ sSoftbanksMap.put(0xe520, R.drawable.emoji_1f42c);
+ sSoftbanksMap.put(0xe521, R.drawable.emoji_1f426);
+ sSoftbanksMap.put(0xe522, R.drawable.emoji_1f420);
+ sSoftbanksMap.put(0xe523, R.drawable.emoji_1f423);
+ sSoftbanksMap.put(0xe524, R.drawable.emoji_1f439);
+ sSoftbanksMap.put(0xe525, R.drawable.emoji_1f41b);
+ sSoftbanksMap.put(0xe526, R.drawable.emoji_1f418);
+ sSoftbanksMap.put(0xe527, R.drawable.emoji_1f428);
+ sSoftbanksMap.put(0xe528, R.drawable.emoji_1f412);
+ sSoftbanksMap.put(0xe529, R.drawable.emoji_1f411);
+ sSoftbanksMap.put(0xe52a, R.drawable.emoji_1f43a);
+ sSoftbanksMap.put(0xe52b, R.drawable.emoji_1f42e);
+ sSoftbanksMap.put(0xe52c, R.drawable.emoji_1f430);
+ sSoftbanksMap.put(0xe52d, R.drawable.emoji_1f40d);
+ sSoftbanksMap.put(0xe52e, R.drawable.emoji_1f414);
+ sSoftbanksMap.put(0xe52f, R.drawable.emoji_1f417);
+ sSoftbanksMap.put(0xe530, R.drawable.emoji_1f42b);
+ sSoftbanksMap.put(0xe531, R.drawable.emoji_1f438);
+ sSoftbanksMap.put(0xe532, R.drawable.emoji_1f170);
+ sSoftbanksMap.put(0xe533, R.drawable.emoji_1f171);
+ sSoftbanksMap.put(0xe534, R.drawable.emoji_1f18e);
+ sSoftbanksMap.put(0xe535, R.drawable.emoji_1f17e);
+ sSoftbanksMap.put(0xe536, R.drawable.emoji_1f43e);
+ sSoftbanksMap.put(0xe537, R.drawable.emoji_2122);
+ }
+
+ private static boolean isSoftBankEmoji(char c) {
+ return ((c >> 12) == 0xe);
+ }
+
+ private static int getEmojiResource(Context context, int codePoint) {
+ return sEmojisMap.get(codePoint);
+ }
+
+ private static int getSoftbankEmojiResource(char c) {
+ return sSoftbanksMap.get(c);
+ }
+
+ /**
+ * Convert emoji characters of the given Spannable to the according emojicon.
+ *
+ * @param context
+ * @param text
+ * @param emojiSize
+ */
+ public static void addEmojis(Context context, Spannable text, int emojiSize) {
+ addEmojis(context, text, emojiSize, 0, -1);
+ }
+
+ public static final Map<Pattern, Integer> ANDROID_EMOTICONS = new HashMap<Pattern, Integer>();
+
+ private static final Spannable.Factory spannableFactory = Spannable.Factory
+ .getInstance();
+
+ static {
+ addPattern(ANDROID_EMOTICONS, ":-?\\)", R.drawable.emo_im_happy);
+ addPattern(ANDROID_EMOTICONS, ":-?\\(", R.drawable.emo_im_sad);
+ addPattern(ANDROID_EMOTICONS, ";-?\\)", R.drawable.emo_im_winking);
+ addPattern(ANDROID_EMOTICONS, ":-?[pP]",
+ R.drawable.emo_im_tongue_sticking_out);
+ addPattern(ANDROID_EMOTICONS, "=-[oO0]", R.drawable.emo_im_surprised);
+ addPattern(ANDROID_EMOTICONS, ":-?\\*", R.drawable.emo_im_kissing);
+ addPattern(ANDROID_EMOTICONS, ":-?[oO0]", R.drawable.emo_im_wtf);
+ addPattern(ANDROID_EMOTICONS, "[8B]-?\\)", R.drawable.emo_im_cool);
+ addPattern(ANDROID_EMOTICONS, ":-?\\$", R.drawable.emo_im_money_mouth);
+ addPattern(ANDROID_EMOTICONS, ":-?!", R.drawable.emo_im_foot_in_mouth);
+ addPattern(ANDROID_EMOTICONS, ":-?\\[", R.drawable.emo_im_embarrassed);
+ addPattern(ANDROID_EMOTICONS, "[oO0]:-?\\)", R.drawable.emo_im_angel);
+ addPattern(ANDROID_EMOTICONS, ":-?[\\\\/]", R.drawable.emo_im_undecided);
+ addPattern(ANDROID_EMOTICONS, ":'-?\\(", R.drawable.emo_im_crying);
+ addPattern(ANDROID_EMOTICONS, ":-?D", R.drawable.emo_im_laughing);
+ addPattern(ANDROID_EMOTICONS, "O_o", R.drawable.emo_im_wtf);
+ addPattern(ANDROID_EMOTICONS, "o_O", R.drawable.emo_im_wtf);
+ addPattern(ANDROID_EMOTICONS, ">:[oO0]", R.drawable.emo_im_yelling);
+ addPattern(ANDROID_EMOTICONS, ":-?[sS]", R.drawable.emo_im_lips_are_sealed);
+ addPattern(ANDROID_EMOTICONS, "<3", R.drawable.emo_im_heart);
+ }
+
+ private static void addPattern(Map<Pattern, Integer> map, String smile,
+ int resource) {
+ map.put(Pattern.compile(smile), resource);
+ }
+
+ private static boolean getSmiledText(Context context, Spannable spannable) {
+ // remove spans throughout all text
+ EmojiconImageSpan[] oldSpans = spannable.getSpans(0, spannable.length(), EmojiconImageSpan.class);
+ for (int i = 0; i < oldSpans.length; i++) {
+ spannable.removeSpan(oldSpans[i]);
+ }
+ boolean hasChanges = false;
+
+ Matcher webUrlMatcher = Patterns.WEB_URL.matcher(spannable);
+ Set<Pair<Integer, Integer>> webUrls = new HashSet<Pair<Integer, Integer>>();
+ while (webUrlMatcher.find()) {
+ webUrls.add(Pair.create(webUrlMatcher.start(), webUrlMatcher.end()));
+ }
+
+ Map<Pattern, Integer> emoticons = ANDROID_EMOTICONS;
+ for (Map.Entry<Pattern, Integer> entry : emoticons.entrySet()) {
+ Matcher matcher = entry.getKey().matcher(spannable);
+ while (matcher.find()) {
+ boolean set = true;
+ for (EmojiconImageSpan span : spannable.getSpans(matcher.start(),
+ matcher.end(), EmojiconImageSpan.class)) {
+ if (spannable.getSpanStart(span) >= matcher.start()
+ && spannable.getSpanEnd(span) <= matcher.end())
+ spannable.removeSpan(span);
+ else {
+ set = false;
+ break;
+ }
+ }
+ if (set) {
+ // check that found emojicon is not in an web url
+ for (Pair<Integer, Integer> webUrl : webUrls) {
+ if ((matcher.start() >= webUrl.first && matcher.start() <= webUrl.second)
+ || (matcher.end() >= webUrl.first && matcher.end() <= webUrl.second)) {
+ set = false;
+ break;
+ }
+ }
+ }
+ if (set) {
+ spannable.setSpan(new EmojiconImageSpan(context, entry.getValue()),
+ matcher.start(), matcher.end(),
+ Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
+ hasChanges = true;
+ }
+ }
+ }
+ return hasChanges;
+ }
+
+ /**
+ * Convert emoji characters of the given Spannable to the according emojicon.
+ *
+ * @param context
+ * @param text
+ * @param emojiSize
+ * @param index
+ * @param length
+ */
+ public static void addEmojis(Context context, Spannable text, int emojiSize, int index, int length) {
+ if (isParseEmoticons()) {
+ getSmiledText(context, text);
+ }
+ int textLength = text.length();
+ int textLengthToProcessMax = textLength - index;
+ int textLengthToProcess = length < 0 || length >= textLengthToProcessMax ? textLength : (length+index);
+
+ // remove spans throughout all text
+ EmojiconSpan[] oldSpans = text.getSpans(0, textLength, EmojiconSpan.class);
+ for (int i = 0; i < oldSpans.length; i++) {
+ text.removeSpan(oldSpans[i]);
+ }
+
+ int skip;
+ for (int i = index; i < textLengthToProcess; i += skip) {
+ skip = 0;
+ int icon = 0;
+ char c = text.charAt(i);
+ if (isSoftBankEmoji(c)) {
+ icon = getSoftbankEmojiResource(c);
+ skip = icon == 0 ? 0 : 1;
+ }
+
+ if (icon == 0) {
+ int unicode = Character.codePointAt(text, i);
+ skip = Character.charCount(unicode);
+
+ if (unicode > 0xff) {
+ icon = getEmojiResource(context, unicode);
+ }
+
+ if (icon == 0 && i + skip < textLengthToProcess) {
+ int followUnicode = Character.codePointAt(text, i + skip);
+ if (followUnicode == 0x20e3) {
+ int followSkip = Character.charCount(followUnicode);
+ switch (unicode) {
+ case 0x0031:
+ icon = R.drawable.emoji_0031;
+ break;
+ case 0x0032:
+ icon = R.drawable.emoji_0032;
+ break;
+ case 0x0033:
+ icon = R.drawable.emoji_0033;
+ break;
+ case 0x0034:
+ icon = R.drawable.emoji_0034;
+ break;
+ case 0x0035:
+ icon = R.drawable.emoji_0035;
+ break;
+ case 0x0036:
+ icon = R.drawable.emoji_0036;
+ break;
+ case 0x0037:
+ icon = R.drawable.emoji_0037;
+ break;
+ case 0x0038:
+ icon = R.drawable.emoji_0038;
+ break;
+ case 0x0039:
+ icon = R.drawable.emoji_0039;
+ break;
+ case 0x0030:
+ icon = R.drawable.emoji_0030;
+ break;
+ case 0x0023:
+ icon = R.drawable.emoji_0023;
+ break;
+ default:
+ followSkip = 0;
+ break;
+ }
+ skip += followSkip;
+ } else {
+ int followSkip = Character.charCount(followUnicode);
+ switch (unicode) {
+ case 0x1f1ef:
+ icon = (followUnicode == 0x1f1f5) ? R.drawable.emoji_1f1ef_1f1f5 : 0;
+ break;
+ case 0x1f1fa:
+ icon = (followUnicode == 0x1f1f8) ? R.drawable.emoji_1f1fa_1f1f8 : 0;
+ break;
+ case 0x1f1eb:
+ icon = (followUnicode == 0x1f1f7) ? R.drawable.emoji_1f1eb_1f1f7 : 0;
+ break;
+ case 0x1f1e9:
+ icon = (followUnicode == 0x1f1ea) ? R.drawable.emoji_1f1e9_1f1ea : 0;
+ break;
+ case 0x1f1ee:
+ icon = (followUnicode == 0x1f1f9) ? R.drawable.emoji_1f1ee_1f1f9 : 0;
+ break;
+ case 0x1f1ec:
+ icon = (followUnicode == 0x1f1e7) ? R.drawable.emoji_1f1ec_1f1e7 : 0;
+ break;
+ case 0x1f1ea:
+ icon = (followUnicode == 0x1f1f8) ? R.drawable.emoji_1f1ea_1f1f8 : 0;
+ break;
+ case 0x1f1f7:
+ icon = (followUnicode == 0x1f1fa) ? R.drawable.emoji_1f1f7_1f1fa : 0;
+ break;
+ case 0x1f1e8:
+ icon = (followUnicode == 0x1f1f3) ? R.drawable.emoji_1f1e8_1f1f3 : 0;
+ break;
+ case 0x1f1f0:
+ icon = (followUnicode == 0x1f1f7) ? R.drawable.emoji_1f1f0_1f1f7 : 0;
+ break;
+ default:
+ followSkip = 0;
+ break;
+ }
+ skip += followSkip;
+ }
+ }
+ }
+
+ if (icon > 0) {
+ text.setSpan(new EmojiconSpan(context, icon, emojiSize), i, i + skip, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
+ }
+ }
+ }
+}
diff --git a/libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/EmojiconImageSpan.java b/libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/EmojiconImageSpan.java
new file mode 100644
index 00000000..8ad8fbb5
--- /dev/null
+++ b/libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/EmojiconImageSpan.java
@@ -0,0 +1,14 @@
+package github.ankushsachdeva.emojicon;
+
+import android.content.Context;
+import android.text.style.ImageSpan;
+
+/**
+ * Created by lookshe on 16.08.2015.
+ */
+public class EmojiconImageSpan extends ImageSpan {
+
+ EmojiconImageSpan(Context context, int resourceId) {
+ super(context, resourceId);
+ }
+}
diff --git a/libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/EmojiconRecents.java b/libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/EmojiconRecents.java
new file mode 100644
index 00000000..195c86ab
--- /dev/null
+++ b/libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/EmojiconRecents.java
@@ -0,0 +1,28 @@
+/*
+ * Copyright 2014 Ankush Sachdeva
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package github.ankushsachdeva.emojicon;
+
+import github.ankushsachdeva.emojicon.emoji.Emojicon;
+
+import android.content.Context;
+
+/**
+* @author Daniele Ricci
+*/
+public interface EmojiconRecents {
+ public void addRecentEmoji(Context context, Emojicon emojicon);
+}
diff --git a/libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/EmojiconRecentsGridView.java b/libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/EmojiconRecentsGridView.java
new file mode 100644
index 00000000..2aecbb59
--- /dev/null
+++ b/libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/EmojiconRecentsGridView.java
@@ -0,0 +1,62 @@
+/*
+ * Copyright 2014 Ankush Sachdeva
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package github.ankushsachdeva.emojicon;
+
+import github.ankushsachdeva.emojicon.emoji.Emojicon;
+import android.content.Context;
+import android.widget.GridView;
+
+import github.ankushsachdeva.emojicon.R;
+
+/**
+ * @author Daniele Ricci
+ * @author Ankush Sachdeva (sankush@yahoo.co.in)
+ */
+public class EmojiconRecentsGridView extends EmojiconGridView implements EmojiconRecents {
+ EmojiAdapter mAdapter;
+
+ public EmojiconRecentsGridView(Context context, Emojicon[] emojicons,
+ EmojiconRecents recents,EmojiconsPopup emojiconsPopup) {
+ super(context, emojicons, recents, emojiconsPopup);
+ EmojiconRecentsManager recents1 = EmojiconRecentsManager
+ .getInstance(rootView.getContext());
+ mAdapter = new EmojiAdapter(rootView.getContext(), recents1);
+ mAdapter.setEmojiClickListener(new OnEmojiconClickedListener() {
+
+ @Override
+ public void onEmojiconClicked(Emojicon emojicon) {
+ if (mEmojiconPopup.onEmojiconClickedListener != null) {
+ mEmojiconPopup.onEmojiconClickedListener.onEmojiconClicked(emojicon);
+ }
+ }
+ });
+ GridView gridView = (GridView) rootView.findViewById(R.id.Emoji_GridView);
+ gridView.setAdapter(mAdapter);
+ }
+
+ @Override
+ public void addRecentEmoji(Context context, Emojicon emojicon) {
+ EmojiconRecentsManager recents = EmojiconRecentsManager
+ .getInstance(context);
+ recents.push(emojicon);
+
+ // notify dataset changed
+ if (mAdapter != null)
+ mAdapter.notifyDataSetChanged();
+ }
+
+}
diff --git a/libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/EmojiconRecentsManager.java b/libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/EmojiconRecentsManager.java
new file mode 100644
index 00000000..9fbb987e
--- /dev/null
+++ b/libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/EmojiconRecentsManager.java
@@ -0,0 +1,124 @@
+/*
+ * Copyright 2014 Ankush Sachdeva
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package github.ankushsachdeva.emojicon;
+
+import github.ankushsachdeva.emojicon.emoji.Emojicon;
+
+import java.util.ArrayList;
+import java.util.StringTokenizer;
+
+import android.content.Context;
+import android.content.SharedPreferences;
+
+
+/**
+* @author Daniele Ricci
+*/
+public class EmojiconRecentsManager extends ArrayList<Emojicon> {
+
+ private static final String PREFERENCE_NAME = "emojicon";
+ private static final String PREF_RECENTS = "recent_emojis";
+ private static final String PREF_PAGE = "recent_page";
+
+ private static final Object LOCK = new Object();
+ private static EmojiconRecentsManager sInstance;
+
+ private Context mContext;
+
+ private EmojiconRecentsManager(Context context) {
+ mContext = context.getApplicationContext();
+ loadRecents();
+ }
+
+ public static EmojiconRecentsManager getInstance(Context context) {
+ if (sInstance == null) {
+ synchronized (LOCK) {
+ if (sInstance == null) {
+ sInstance = new EmojiconRecentsManager(context);
+ }
+ }
+ }
+ return sInstance;
+ }
+
+ public int getRecentPage() {
+ return getPreferences().getInt(PREF_PAGE, 0);
+ }
+
+ public void setRecentPage(int page) {
+ getPreferences().edit().putInt(PREF_PAGE, page).commit();
+ }
+
+ public void push(Emojicon object) {
+ // FIXME totally inefficient way of adding the emoji to the adapter
+ // TODO this should be probably replaced by a deque
+ if (contains(object)) {
+ super.remove(object);
+ }
+ add(0, object);
+ }
+
+ @Override
+ public boolean add(Emojicon object) {
+ boolean ret = super.add(object);
+ return ret;
+ }
+
+ @Override
+ public void add(int index, Emojicon object) {
+ super.add(index, object);
+ }
+
+ @Override
+ public boolean remove(Object object) {
+ boolean ret = super.remove(object);
+ return ret;
+ }
+
+ private SharedPreferences getPreferences() {
+ return mContext.getSharedPreferences(PREFERENCE_NAME, Context.MODE_PRIVATE);
+ }
+
+ private void loadRecents() {
+ SharedPreferences prefs = getPreferences();
+ String str = prefs.getString(PREF_RECENTS, "");
+ StringTokenizer tokenizer = new StringTokenizer(str, "~");
+ while (tokenizer.hasMoreTokens()) {
+ try {
+ add(new Emojicon(tokenizer.nextToken()));
+ }
+ catch (NumberFormatException e) {
+ // ignored
+ }
+ }
+ }
+
+ public void saveRecents() {
+ StringBuilder str = new StringBuilder();
+ int c = size();
+ for (int i = 0; i < c; i++) {
+ Emojicon e = get(i);
+ str.append(e.getEmoji());
+ if (i < (c - 1)) {
+ str.append('~');
+ }
+ }
+ SharedPreferences prefs = getPreferences();
+ prefs.edit().putString(PREF_RECENTS, str.toString()).commit();
+ }
+
+}
diff --git a/libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/EmojiconSpan.java b/libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/EmojiconSpan.java
new file mode 100644
index 00000000..1afeea95
--- /dev/null
+++ b/libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/EmojiconSpan.java
@@ -0,0 +1,51 @@
+/*
+ * Copyright 2014 Ankush Sachdeva
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package github.ankushsachdeva.emojicon;
+
+import android.content.Context;
+import android.graphics.drawable.Drawable;
+import android.text.style.DynamicDrawableSpan;
+
+/**
+ * @author Hieu Rocker (rockerhieu@gmail.com)
+ */
+class EmojiconSpan extends DynamicDrawableSpan {
+ private final Context mContext;
+ private final int mResourceId;
+ private final int mSize;
+ private Drawable mDrawable;
+
+ public EmojiconSpan(Context context, int resourceId, int size) {
+ super();
+ mContext = context;
+ mResourceId = resourceId;
+ mSize = size;
+ }
+
+ public Drawable getDrawable() {
+ if (mDrawable == null) {
+ try {
+ mDrawable = mContext.getResources().getDrawable(mResourceId);
+ int size = mSize;
+ mDrawable.setBounds(0, 0, size, size);
+ } catch (Exception e) {
+ // swallow
+ }
+ }
+ return mDrawable;
+ }
+} \ No newline at end of file
diff --git a/libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/EmojiconTextView.java b/libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/EmojiconTextView.java
new file mode 100644
index 00000000..5822e478
--- /dev/null
+++ b/libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/EmojiconTextView.java
@@ -0,0 +1,76 @@
+/*
+ * Copyright 2014 Ankush Sachdeva
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package github.ankushsachdeva.emojicon;
+
+import github.ankushsachdeva.emojicon.R;
+
+import android.content.Context;
+import android.content.res.TypedArray;
+import android.text.SpannableStringBuilder;
+import android.util.AttributeSet;
+import android.widget.TextView;
+
+/**
+ * @author Hieu Rocker (rockerhieu@gmail.com).
+ */
+public class EmojiconTextView extends TextView {
+ private int mEmojiconSize;
+ private int mTextStart = 0;
+ private int mTextLength = -1;
+
+ public EmojiconTextView(Context context) {
+ super(context);
+ init(null);
+ }
+
+ public EmojiconTextView(Context context, AttributeSet attrs) {
+ super(context, attrs);
+ init(attrs);
+ }
+
+ public EmojiconTextView(Context context, AttributeSet attrs, int defStyle) {
+ super(context, attrs, defStyle);
+ init(attrs);
+ }
+
+ private void init(AttributeSet attrs) {
+ if (attrs == null) {
+ mEmojiconSize = (int) getTextSize();
+ } else {
+ TypedArray a = getContext().obtainStyledAttributes(attrs, R.styleable.Emojicon);
+ mEmojiconSize = (int) a.getDimension(R.styleable.Emojicon_emojiconSize, getTextSize());
+ mTextStart = a.getInteger(R.styleable.Emojicon_emojiconTextStart, 0);
+ mTextLength = a.getInteger(R.styleable.Emojicon_emojiconTextLength, -1);
+ a.recycle();
+ }
+ setText(getText());
+ }
+
+ @Override
+ public void setText(CharSequence text, BufferType type) {
+ SpannableStringBuilder builder = new SpannableStringBuilder(text);
+ EmojiconHandler.addEmojis(getContext(), builder, mEmojiconSize, mTextStart, mTextLength);
+ super.setText(builder, type);
+ }
+
+ /**
+ * Set the size of emojicon in pixels.
+ */
+ public void setEmojiconSize(int pixels) {
+ mEmojiconSize = pixels;
+ }
+}
diff --git a/libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/EmojiconsPopup.java b/libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/EmojiconsPopup.java
new file mode 100644
index 00000000..b5d26047
--- /dev/null
+++ b/libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/EmojiconsPopup.java
@@ -0,0 +1,428 @@
+/*
+ * Copyright 2014 Ankush Sachdeva
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package github.ankushsachdeva.emojicon;
+
+import github.ankushsachdeva.emojicon.EmojiconGridView.OnEmojiconClickedListener;
+import github.ankushsachdeva.emojicon.emoji.Emojicon;
+import github.ankushsachdeva.emojicon.emoji.Nature;
+import github.ankushsachdeva.emojicon.emoji.Objects;
+import github.ankushsachdeva.emojicon.emoji.People;
+import github.ankushsachdeva.emojicon.emoji.Places;
+import github.ankushsachdeva.emojicon.emoji.Symbols;
+
+import java.util.Arrays;
+import java.util.List;
+
+import android.app.Activity;
+import android.content.Context;
+import android.content.res.Resources;
+import android.graphics.Rect;
+import android.os.Build;
+import android.os.Handler;
+import android.os.SystemClock;
+import android.support.v4.view.PagerAdapter;
+import android.support.v4.view.ViewPager;
+import android.view.Gravity;
+import android.view.KeyCharacterMap;
+import android.view.KeyEvent;
+import android.view.LayoutInflater;
+import android.view.MotionEvent;
+import android.view.View;
+import android.view.View.OnClickListener;
+import android.view.ViewConfiguration;
+import android.view.ViewGroup;
+import android.view.ViewTreeObserver.OnGlobalLayoutListener;
+import android.view.WindowManager.LayoutParams;
+import android.widget.PopupWindow;
+
+
+/**
+ * @author Ankush Sachdeva (sankush@yahoo.co.in).
+ */
+
+public class EmojiconsPopup extends PopupWindow implements ViewPager.OnPageChangeListener, EmojiconRecents {
+ private int mEmojiTabLastSelectedIndex = -1;
+ private View[] mEmojiTabs;
+ private PagerAdapter mEmojisAdapter;
+ private EmojiconRecentsManager mRecentsManager;
+ private int keyBoardHeight = 0;
+ private Boolean pendingOpen = false;
+ private Boolean isOpened = false;
+ OnEmojiconClickedListener onEmojiconClickedListener;
+ OnEmojiconBackspaceClickedListener onEmojiconBackspaceClickedListener;
+ OnSoftKeyboardOpenCloseListener onSoftKeyboardOpenCloseListener;
+ View rootView;
+ Context mContext;
+
+ private ViewPager emojisPager;
+ /**
+ * Constructor
+ * @param rootView The top most layout in your view hierarchy. The difference of this view and the screen height will be used to calculate the keyboard height.
+ * @param mContext The context of current activity.
+ */
+ public EmojiconsPopup(View rootView, Context mContext){
+ super(mContext);
+ this.mContext = mContext;
+ this.rootView = rootView;
+ View customView = createCustomView();
+ setContentView(customView);
+ setSoftInputMode(LayoutParams.SOFT_INPUT_STATE_ALWAYS_VISIBLE);
+ //default size
+ setSize((int) mContext.getResources().getDimension(R.dimen.keyboard_height), LayoutParams.MATCH_PARENT);
+ }
+ /**
+ * Set the listener for the event of keyboard opening or closing.
+ */
+ public void setOnSoftKeyboardOpenCloseListener(OnSoftKeyboardOpenCloseListener listener){
+ this.onSoftKeyboardOpenCloseListener = listener;
+ }
+
+ /**
+ * Set the listener for the event when any of the emojicon is clicked
+ */
+ public void setOnEmojiconClickedListener(OnEmojiconClickedListener listener){
+ this.onEmojiconClickedListener = listener;
+ }
+
+ /**
+ * Set the listener for the event when backspace on emojicon popup is clicked
+ */
+ public void setOnEmojiconBackspaceClickedListener(OnEmojiconBackspaceClickedListener listener){
+ this.onEmojiconBackspaceClickedListener = listener;
+ }
+
+ /**
+ * Use this function to show the emoji popup.
+ * NOTE: Since, the soft keyboard sizes are variable on different android devices, the
+ * library needs you to open the soft keyboard atleast once before calling this function.
+ * If that is not possible see showAtBottomPending() function.
+ *
+ */
+ public void showAtBottom(){
+ showAtLocation(rootView, Gravity.BOTTOM, 0, 0);
+ }
+ /**
+ * Use this function when the soft keyboard has not been opened yet. This
+ * will show the emoji popup after the keyboard is up next time.
+ * Generally, you will be calling InputMethodManager.showSoftInput function after
+ * calling this function.
+ */
+ public void showAtBottomPending(){
+ if(isKeyBoardOpen())
+ showAtBottom();
+ else
+ pendingOpen = true;
+ }
+
+ /**
+ *
+ * @return Returns true if the soft keyboard is open, false otherwise.
+ */
+ public Boolean isKeyBoardOpen(){
+ return isOpened;
+ }
+
+ /**
+ * Dismiss the popup
+ */
+ @Override
+ public void dismiss() {
+ super.dismiss();
+ EmojiconRecentsManager
+ .getInstance(mContext).saveRecents();
+ }
+
+ /**
+ * Call this function to resize the emoji popup according to your soft keyboard size
+ */
+ public void setSizeForSoftKeyboard(){
+ rootView.getViewTreeObserver().addOnGlobalLayoutListener(new OnGlobalLayoutListener() {
+ @Override
+ public void onGlobalLayout() {
+ Rect r = new Rect();
+ rootView.getWindowVisibleDisplayFrame(r);
+
+ int screenHeight = rootView.getRootView()
+ .getHeight();
+ int heightDifference = screenHeight
+ - (r.bottom - r.top);
+ Resources resources = mContext.getResources();
+ int statusBarId = resources
+ .getIdentifier("status_bar_height",
+ "dimen", "android");
+ if (statusBarId > 0) {
+ heightDifference -= resources
+ .getDimensionPixelSize(statusBarId);
+ }
+
+ //Resolved using http://stackoverflow.com/a/16608481/2853322
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
+ int navBarId = resources.getIdentifier("navigation_bar_height", "dimen", "android");
+ boolean hasMenuKey;
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.ICE_CREAM_SANDWICH) {
+ hasMenuKey = ViewConfiguration.get(mContext).hasPermanentMenuKey();
+ } else hasMenuKey = true; //Skip has menu key below ICS
+ boolean hasBackKey = KeyCharacterMap.deviceHasKey(KeyEvent.KEYCODE_BACK);
+ if (navBarId > 0 && !hasMenuKey && !hasBackKey) {
+ heightDifference -= resources.getDimensionPixelSize(navBarId);
+ }
+ }
+
+ if (heightDifference > 100) {
+ keyBoardHeight = heightDifference;
+ setSize(LayoutParams.MATCH_PARENT, keyBoardHeight);
+ if(isOpened == false){
+ if(onSoftKeyboardOpenCloseListener!=null)
+ onSoftKeyboardOpenCloseListener.onKeyboardOpen(keyBoardHeight);
+ }
+ isOpened = true;
+ if(pendingOpen){
+ showAtBottom();
+ pendingOpen = false;
+ }
+ }
+ else{
+ isOpened = false;
+ if(onSoftKeyboardOpenCloseListener!=null)
+ onSoftKeyboardOpenCloseListener.onKeyboardClose();
+ }
+ }
+ });
+ }
+
+ /**
+ * Manually set the popup window size
+ * @param width Width of the popup
+ * @param height Height of the popup
+ */
+ public void setSize(int width, int height){
+ setWidth(width);
+ setHeight(height);
+ }
+
+ private View createCustomView() {
+ LayoutInflater inflater = (LayoutInflater) mContext.getSystemService(Activity.LAYOUT_INFLATER_SERVICE);
+ View view = inflater.inflate(R.layout.emojicons, null, false);
+ emojisPager = (ViewPager) view.findViewById(R.id.emojis_pager);
+ emojisPager.setOnPageChangeListener(this);
+ EmojiconRecents recents = this;
+ mEmojisAdapter = new EmojisPagerAdapter(
+ Arrays.asList(
+ new EmojiconRecentsGridView(mContext, null, null, this),
+ new EmojiconGridView(mContext, People.DATA, recents, this),
+ new EmojiconGridView(mContext, Nature.DATA, recents, this),
+ new EmojiconGridView(mContext, Objects.DATA, recents, this),
+ new EmojiconGridView(mContext, Places.DATA, recents, this),
+ new EmojiconGridView(mContext, Symbols.DATA, recents, this)
+ )
+ );
+ emojisPager.setAdapter(mEmojisAdapter);
+ mEmojiTabs = new View[6];
+ mEmojiTabs[0] = view.findViewById(R.id.emojis_tab_0_recents);
+ mEmojiTabs[1] = view.findViewById(R.id.emojis_tab_1_people);
+ mEmojiTabs[2] = view.findViewById(R.id.emojis_tab_2_nature);
+ mEmojiTabs[3] = view.findViewById(R.id.emojis_tab_3_objects);
+ mEmojiTabs[4] = view.findViewById(R.id.emojis_tab_4_cars);
+ mEmojiTabs[5] = view.findViewById(R.id.emojis_tab_5_punctuation);
+ for (int i = 0; i < mEmojiTabs.length; i++) {
+ final int position = i;
+ mEmojiTabs[i].setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ emojisPager.setCurrentItem(position);
+ }
+ });
+ }
+ view.findViewById(R.id.emojis_backspace).setOnTouchListener(new RepeatListener(1000, 50, new OnClickListener() {
+
+ @Override
+ public void onClick(View v) {
+ if(onEmojiconBackspaceClickedListener != null)
+ onEmojiconBackspaceClickedListener.onEmojiconBackspaceClicked(v);
+ }
+ }));
+
+ // get last selected page
+ mRecentsManager = EmojiconRecentsManager.getInstance(view.getContext());
+ int page = mRecentsManager.getRecentPage();
+ // last page was recents, check if there are recents to use
+ // if none was found, go to page 1
+ if (page == 0 && mRecentsManager.size() == 0) {
+ page = 1;
+ }
+
+ if (page == 0) {
+ onPageSelected(page);
+ }
+ else {
+ emojisPager.setCurrentItem(page, false);
+ }
+ return view;
+ }
+
+ @Override
+ public void addRecentEmoji(Context context, Emojicon emojicon) {
+ EmojiconRecentsGridView fragment = ((EmojisPagerAdapter)emojisPager.getAdapter()).getRecentFragment();
+ fragment.addRecentEmoji(context, emojicon);
+ }
+
+
+ @Override
+ public void onPageScrolled(int i, float v, int i2) {
+ }
+
+ @Override
+ public void onPageSelected(int i) {
+ if (mEmojiTabLastSelectedIndex == i) {
+ return;
+ }
+ switch (i) {
+ case 0:
+ case 1:
+ case 2:
+ case 3:
+ case 4:
+ case 5:
+ if (mEmojiTabLastSelectedIndex >= 0 && mEmojiTabLastSelectedIndex < mEmojiTabs.length) {
+ mEmojiTabs[mEmojiTabLastSelectedIndex].setSelected(false);
+ }
+ mEmojiTabs[i].setSelected(true);
+ mEmojiTabLastSelectedIndex = i;
+ mRecentsManager.setRecentPage(i);
+ break;
+ }
+ }
+
+ @Override
+ public void onPageScrollStateChanged(int i) {
+ }
+
+ private static class EmojisPagerAdapter extends PagerAdapter {
+ private List<EmojiconGridView> views;
+ public EmojiconRecentsGridView getRecentFragment(){
+ for (EmojiconGridView it : views) {
+ if(it instanceof EmojiconRecentsGridView)
+ return (EmojiconRecentsGridView)it;
+ }
+ return null;
+ }
+ public EmojisPagerAdapter(List<EmojiconGridView> views) {
+ super();
+ this.views = views;
+ }
+
+ @Override
+ public int getCount() {
+ return views.size();
+ }
+
+
+ @Override
+ public Object instantiateItem(ViewGroup container, int position) {
+ View v = views.get(position).rootView;
+ ((ViewPager)container).addView(v, 0);
+ return v;
+ }
+
+ @Override
+ public void destroyItem(ViewGroup container, int position, Object view) {
+ ((ViewPager)container).removeView((View)view);
+ }
+
+ @Override
+ public boolean isViewFromObject(View view, Object key) {
+ return key == view;
+ }
+ }
+
+ /**
+ * A class, that can be used as a TouchListener on any view (e.g. a Button).
+ * It cyclically runs a clickListener, emulating keyboard-like behaviour. First
+ * click is fired immediately, next before initialInterval, and subsequent before
+ * normalInterval.
+ * <p/>
+ * <p>Interval is scheduled before the onClick completes, so it has to run fast.
+ * If it runs slow, it does not generate skipped onClicks.
+ */
+ public static class RepeatListener implements View.OnTouchListener {
+
+ private Handler handler = new Handler();
+
+ private int initialInterval;
+ private final int normalInterval;
+ private final View.OnClickListener clickListener;
+
+ private Runnable handlerRunnable = new Runnable() {
+ @Override
+ public void run() {
+ if (downView == null) {
+ return;
+ }
+ handler.removeCallbacksAndMessages(downView);
+ handler.postAtTime(this, downView, SystemClock.uptimeMillis() + normalInterval);
+ clickListener.onClick(downView);
+ }
+ };
+
+ private View downView;
+
+ /**
+ * @param initialInterval The interval before first click event
+ * @param normalInterval The interval before second and subsequent click
+ * events
+ * @param clickListener The OnClickListener, that will be called
+ * periodically
+ */
+ public RepeatListener(int initialInterval, int normalInterval, View.OnClickListener clickListener) {
+ if (clickListener == null)
+ throw new IllegalArgumentException("null runnable");
+ if (initialInterval < 0 || normalInterval < 0)
+ throw new IllegalArgumentException("negative interval");
+
+ this.initialInterval = initialInterval;
+ this.normalInterval = normalInterval;
+ this.clickListener = clickListener;
+ }
+
+ public boolean onTouch(View view, MotionEvent motionEvent) {
+ switch (motionEvent.getAction()) {
+ case MotionEvent.ACTION_DOWN:
+ downView = view;
+ handler.removeCallbacks(handlerRunnable);
+ handler.postAtTime(handlerRunnable, downView, SystemClock.uptimeMillis() + initialInterval);
+ clickListener.onClick(view);
+ return true;
+ case MotionEvent.ACTION_UP:
+ case MotionEvent.ACTION_CANCEL:
+ case MotionEvent.ACTION_OUTSIDE:
+ handler.removeCallbacksAndMessages(downView);
+ downView = null;
+ return true;
+ }
+ return false;
+ }
+ }
+
+ public interface OnEmojiconBackspaceClickedListener {
+ void onEmojiconBackspaceClicked(View v);
+ }
+
+ public interface OnSoftKeyboardOpenCloseListener{
+ void onKeyboardOpen(int keyBoardHeight);
+ void onKeyboardClose();
+ }
+}
diff --git a/libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/emoji/Emojicon.java b/libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/emoji/Emojicon.java
new file mode 100644
index 00000000..2ba8ca1e
--- /dev/null
+++ b/libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/emoji/Emojicon.java
@@ -0,0 +1,74 @@
+/*
+ * Copyright 2014 Ankush Sachdeva
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package github.ankushsachdeva.emojicon.emoji;
+
+import java.io.Serializable;
+
+/**
+ * @author Hieu Rocker (rockerhieu@gmail.com)
+ */
+public class Emojicon implements Serializable {
+ private static final long serialVersionUID = 1L;
+ private String emoji;
+
+ private Emojicon() {
+ }
+
+ public static Emojicon fromCodePoint(int codePoint) {
+ Emojicon emoji = new Emojicon();
+ emoji.emoji = newString(codePoint);
+ return emoji;
+ }
+
+ public static Emojicon fromChar(char ch) {
+ Emojicon emoji = new Emojicon();
+ emoji.emoji = Character.toString(ch);
+ return emoji;
+ }
+
+ public static Emojicon fromChars(String chars) {
+ Emojicon emoji = new Emojicon();
+ emoji.emoji = chars;
+ return emoji;
+ }
+
+ public Emojicon(String emoji) {
+ this.emoji = emoji;
+ }
+
+ public String getEmoji() {
+ return emoji;
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ return o instanceof Emojicon && emoji.equals(((Emojicon) o).emoji);
+ }
+
+ @Override
+ public int hashCode() {
+ return emoji.hashCode();
+ }
+
+ public static final String newString(int codePoint) {
+ if (Character.charCount(codePoint) == 1) {
+ return String.valueOf(codePoint);
+ } else {
+ return new String(Character.toChars(codePoint));
+ }
+ }
+}
diff --git a/libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/emoji/Nature.java b/libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/emoji/Nature.java
new file mode 100644
index 00000000..b354c9a0
--- /dev/null
+++ b/libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/emoji/Nature.java
@@ -0,0 +1,141 @@
+/*
+ * Copyright 2014 Ankush Sachdeva
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package github.ankushsachdeva.emojicon.emoji;
+
+/**
+ * @author Hieu Rocker (rockerhieu@gmail.com)
+ */
+public class Nature {
+ public static final Emojicon[] DATA = new Emojicon[]{
+ Emojicon.fromCodePoint(0x1f436),
+ Emojicon.fromCodePoint(0x1f43a),
+ Emojicon.fromCodePoint(0x1f431),
+ Emojicon.fromCodePoint(0x1f42d),
+ Emojicon.fromCodePoint(0x1f439),
+ Emojicon.fromCodePoint(0x1f430),
+ Emojicon.fromCodePoint(0x1f438),
+ Emojicon.fromCodePoint(0x1f42f),
+ Emojicon.fromCodePoint(0x1f428),
+ Emojicon.fromCodePoint(0x1f43b),
+ Emojicon.fromCodePoint(0x1f437),
+ Emojicon.fromCodePoint(0x1f43d),
+ Emojicon.fromCodePoint(0x1f42e),
+ Emojicon.fromCodePoint(0x1f417),
+ Emojicon.fromCodePoint(0x1f435),
+ Emojicon.fromCodePoint(0x1f412),
+ Emojicon.fromCodePoint(0x1f434),
+ Emojicon.fromCodePoint(0x1f411),
+ Emojicon.fromCodePoint(0x1f418),
+ Emojicon.fromCodePoint(0x1f43c),
+ Emojicon.fromCodePoint(0x1f427),
+ Emojicon.fromCodePoint(0x1f426),
+ Emojicon.fromCodePoint(0x1f424),
+ Emojicon.fromCodePoint(0x1f425),
+ Emojicon.fromCodePoint(0x1f423),
+ Emojicon.fromCodePoint(0x1f414),
+ Emojicon.fromCodePoint(0x1f40d),
+ Emojicon.fromCodePoint(0x1f422),
+ Emojicon.fromCodePoint(0x1f41b),
+ Emojicon.fromCodePoint(0x1f41d),
+ Emojicon.fromCodePoint(0x1f41c),
+ Emojicon.fromCodePoint(0x1f41e),
+ Emojicon.fromCodePoint(0x1f40c),
+ Emojicon.fromCodePoint(0x1f419),
+ Emojicon.fromCodePoint(0x1f41a),
+ Emojicon.fromCodePoint(0x1f420),
+ Emojicon.fromCodePoint(0x1f41f),
+ Emojicon.fromCodePoint(0x1f42c),
+ Emojicon.fromCodePoint(0x1f433),
+ Emojicon.fromCodePoint(0x1f40b),
+ Emojicon.fromCodePoint(0x1f404),
+ Emojicon.fromCodePoint(0x1f40f),
+ Emojicon.fromCodePoint(0x1f400),
+ Emojicon.fromCodePoint(0x1f403),
+ Emojicon.fromCodePoint(0x1f405),
+ Emojicon.fromCodePoint(0x1f407),
+ Emojicon.fromCodePoint(0x1f409),
+ Emojicon.fromCodePoint(0x1f40e),
+ Emojicon.fromCodePoint(0x1f410),
+ Emojicon.fromCodePoint(0x1f413),
+ Emojicon.fromCodePoint(0x1f415),
+ Emojicon.fromCodePoint(0x1f416),
+ Emojicon.fromCodePoint(0x1f401),
+ Emojicon.fromCodePoint(0x1f402),
+ Emojicon.fromCodePoint(0x1f432),
+ Emojicon.fromCodePoint(0x1f421),
+ Emojicon.fromCodePoint(0x1f40a),
+ Emojicon.fromCodePoint(0x1f42b),
+ Emojicon.fromCodePoint(0x1f42a),
+ Emojicon.fromCodePoint(0x1f406),
+ Emojicon.fromCodePoint(0x1f408),
+ Emojicon.fromCodePoint(0x1f429),
+ Emojicon.fromCodePoint(0x1f43e),
+ Emojicon.fromCodePoint(0x1f490),
+ Emojicon.fromCodePoint(0x1f338),
+ Emojicon.fromCodePoint(0x1f337),
+ Emojicon.fromCodePoint(0x1f340),
+ Emojicon.fromCodePoint(0x1f339),
+ Emojicon.fromCodePoint(0x1f33b),
+ Emojicon.fromCodePoint(0x1f33a),
+ Emojicon.fromCodePoint(0x1f341),
+ Emojicon.fromCodePoint(0x1f343),
+ Emojicon.fromCodePoint(0x1f342),
+ Emojicon.fromCodePoint(0x1f33f),
+ Emojicon.fromCodePoint(0x1f33e),
+ Emojicon.fromCodePoint(0x1f344),
+ Emojicon.fromCodePoint(0x1f335),
+ Emojicon.fromCodePoint(0x1f334),
+ Emojicon.fromCodePoint(0x1f332),
+ Emojicon.fromCodePoint(0x1f333),
+ Emojicon.fromCodePoint(0x1f330),
+ Emojicon.fromCodePoint(0x1f331),
+ Emojicon.fromCodePoint(0x1f33c),
+ Emojicon.fromCodePoint(0x1f310),
+ Emojicon.fromCodePoint(0x1f31e),
+ Emojicon.fromCodePoint(0x1f31d),
+ Emojicon.fromCodePoint(0x1f31a),
+ Emojicon.fromCodePoint(0x1f311),
+ Emojicon.fromCodePoint(0x1f312),
+ Emojicon.fromCodePoint(0x1f313),
+ Emojicon.fromCodePoint(0x1f314),
+ Emojicon.fromCodePoint(0x1f315),
+ Emojicon.fromCodePoint(0x1f316),
+ Emojicon.fromCodePoint(0x1f317),
+ Emojicon.fromCodePoint(0x1f318),
+ Emojicon.fromCodePoint(0x1f31c),
+ Emojicon.fromCodePoint(0x1f31b),
+ Emojicon.fromCodePoint(0x1f319),
+ Emojicon.fromCodePoint(0x1f30d),
+ Emojicon.fromCodePoint(0x1f30e),
+ Emojicon.fromCodePoint(0x1f30f),
+ Emojicon.fromCodePoint(0x1f30b),
+ Emojicon.fromCodePoint(0x1f30c),
+ Emojicon.fromCodePoint(0x1f320),
+ Emojicon.fromChar((char) 0x2b50),
+ Emojicon.fromChar((char) 0x2600),
+ Emojicon.fromChar((char) 0x26c5),
+ Emojicon.fromChar((char) 0x2601),
+ Emojicon.fromChar((char) 0x26a1),
+ Emojicon.fromChar((char) 0x2614),
+ Emojicon.fromChar((char) 0x2744),
+ Emojicon.fromChar((char) 0x26c4),
+ Emojicon.fromCodePoint(0x1f300),
+ Emojicon.fromCodePoint(0x1f301),
+ Emojicon.fromCodePoint(0x1f308),
+ Emojicon.fromCodePoint(0x1f30a),
+ };
+}
diff --git a/libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/emoji/Objects.java b/libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/emoji/Objects.java
new file mode 100644
index 00000000..222c9bac
--- /dev/null
+++ b/libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/emoji/Objects.java
@@ -0,0 +1,255 @@
+/*
+ * Copyright 2014 Ankush Sachdeva
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package github.ankushsachdeva.emojicon.emoji;
+
+/**
+ * @author Hieu Rocker (rockerhieu@gmail.com)
+ */
+public class Objects {
+ public static final Emojicon[] DATA = new Emojicon[]{
+ Emojicon.fromCodePoint(0x1f38d),
+ Emojicon.fromCodePoint(0x1f49d),
+ Emojicon.fromCodePoint(0x1f38e),
+ Emojicon.fromCodePoint(0x1f392),
+ Emojicon.fromCodePoint(0x1f393),
+ Emojicon.fromCodePoint(0x1f38f),
+ Emojicon.fromCodePoint(0x1f386),
+ Emojicon.fromCodePoint(0x1f387),
+ Emojicon.fromCodePoint(0x1f390),
+ Emojicon.fromCodePoint(0x1f391),
+ Emojicon.fromCodePoint(0x1f383),
+ Emojicon.fromCodePoint(0x1f47b),
+ Emojicon.fromCodePoint(0x1f385),
+ Emojicon.fromCodePoint(0x1f384),
+ Emojicon.fromCodePoint(0x1f381),
+ Emojicon.fromCodePoint(0x1f38b),
+ Emojicon.fromCodePoint(0x1f389),
+ Emojicon.fromCodePoint(0x1f38a),
+ Emojicon.fromCodePoint(0x1f388),
+ Emojicon.fromCodePoint(0x1f38c),
+ Emojicon.fromCodePoint(0x1f52e),
+ Emojicon.fromCodePoint(0x1f3a5),
+ Emojicon.fromCodePoint(0x1f4f7),
+ Emojicon.fromCodePoint(0x1f4f9),
+ Emojicon.fromCodePoint(0x1f4fc),
+ Emojicon.fromCodePoint(0x1f4bf),
+ Emojicon.fromCodePoint(0x1f4c0),
+ Emojicon.fromCodePoint(0x1f4bd),
+ Emojicon.fromCodePoint(0x1f4be),
+ Emojicon.fromCodePoint(0x1f4bb),
+ Emojicon.fromCodePoint(0x1f4f1),
+ Emojicon.fromChar((char) 0x260e),
+ Emojicon.fromCodePoint(0x1f4de),
+ Emojicon.fromCodePoint(0x1f4df),
+ Emojicon.fromCodePoint(0x1f4e0),
+ Emojicon.fromCodePoint(0x1f4e1),
+ Emojicon.fromCodePoint(0x1f4fa),
+ Emojicon.fromCodePoint(0x1f4fb),
+ Emojicon.fromCodePoint(0x1f508),
+ Emojicon.fromCodePoint(0x1f509),
+ Emojicon.fromCodePoint(0x1f50a),
+ Emojicon.fromCodePoint(0x1f507),
+ Emojicon.fromCodePoint(0x1f514),
+ Emojicon.fromCodePoint(0x1f515),
+ Emojicon.fromCodePoint(0x1f4e2),
+ Emojicon.fromCodePoint(0x1f4e3),
+ Emojicon.fromChar((char) 0x23f3),
+ Emojicon.fromChar((char) 0x231b),
+ Emojicon.fromChar((char) 0x23f0),
+ Emojicon.fromChar((char) 0x231a),
+ Emojicon.fromCodePoint(0x1f513),
+ Emojicon.fromCodePoint(0x1f512),
+ Emojicon.fromCodePoint(0x1f50f),
+ Emojicon.fromCodePoint(0x1f510),
+ Emojicon.fromCodePoint(0x1f511),
+ Emojicon.fromCodePoint(0x1f50e),
+ Emojicon.fromCodePoint(0x1f4a1),
+ Emojicon.fromCodePoint(0x1f526),
+ Emojicon.fromCodePoint(0x1f506),
+ Emojicon.fromCodePoint(0x1f505),
+ Emojicon.fromCodePoint(0x1f50c),
+ Emojicon.fromCodePoint(0x1f50b),
+ Emojicon.fromCodePoint(0x1f50d),
+ Emojicon.fromCodePoint(0x1f6c1),
+ Emojicon.fromCodePoint(0x1f6c0),
+ Emojicon.fromCodePoint(0x1f6bf),
+ Emojicon.fromCodePoint(0x1f6bd),
+ Emojicon.fromCodePoint(0x1f527),
+ Emojicon.fromCodePoint(0x1f529),
+ Emojicon.fromCodePoint(0x1f528),
+ Emojicon.fromCodePoint(0x1f6aa),
+ Emojicon.fromCodePoint(0x1f6ac),
+ Emojicon.fromCodePoint(0x1f4a3),
+ Emojicon.fromCodePoint(0x1f52b),
+ Emojicon.fromCodePoint(0x1f52a),
+ Emojicon.fromCodePoint(0x1f48a),
+ Emojicon.fromCodePoint(0x1f489),
+ Emojicon.fromCodePoint(0x1f4b0),
+ Emojicon.fromCodePoint(0x1f4b4),
+ Emojicon.fromCodePoint(0x1f4b5),
+ Emojicon.fromCodePoint(0x1f4b7),
+ Emojicon.fromCodePoint(0x1f4b6),
+ Emojicon.fromCodePoint(0x1f4b3),
+ Emojicon.fromCodePoint(0x1f4b8),
+ Emojicon.fromCodePoint(0x1f4f2),
+ Emojicon.fromCodePoint(0x1f4e7),
+ Emojicon.fromCodePoint(0x1f4e5),
+ Emojicon.fromCodePoint(0x1f4e4),
+ Emojicon.fromChar((char) 0x2709),
+ Emojicon.fromCodePoint(0x1f4e9),
+ Emojicon.fromCodePoint(0x1f4e8),
+ Emojicon.fromCodePoint(0x1f4ef),
+ Emojicon.fromCodePoint(0x1f4eb),
+ Emojicon.fromCodePoint(0x1f4ea),
+ Emojicon.fromCodePoint(0x1f4ec),
+ Emojicon.fromCodePoint(0x1f4ed),
+ Emojicon.fromCodePoint(0x1f4ee),
+ Emojicon.fromCodePoint(0x1f4e6),
+ Emojicon.fromCodePoint(0x1f4dd),
+ Emojicon.fromCodePoint(0x1f4c4),
+ Emojicon.fromCodePoint(0x1f4c3),
+ Emojicon.fromCodePoint(0x1f4d1),
+ Emojicon.fromCodePoint(0x1f4ca),
+ Emojicon.fromCodePoint(0x1f4c8),
+ Emojicon.fromCodePoint(0x1f4c9),
+ Emojicon.fromCodePoint(0x1f4dc),
+ Emojicon.fromCodePoint(0x1f4cb),
+ Emojicon.fromCodePoint(0x1f4c5),
+ Emojicon.fromCodePoint(0x1f4c6),
+ Emojicon.fromCodePoint(0x1f4c7),
+ Emojicon.fromCodePoint(0x1f4c1),
+ Emojicon.fromCodePoint(0x1f4c2),
+ Emojicon.fromChar((char) 0x2702),
+ Emojicon.fromCodePoint(0x1f4cc),
+ Emojicon.fromCodePoint(0x1f4ce),
+ Emojicon.fromChar((char) 0x2712),
+ Emojicon.fromChar((char) 0x270f),
+ Emojicon.fromCodePoint(0x1f4cf),
+ Emojicon.fromCodePoint(0x1f4d0),
+ Emojicon.fromCodePoint(0x1f4d5),
+ Emojicon.fromCodePoint(0x1f4d7),
+ Emojicon.fromCodePoint(0x1f4d8),
+ Emojicon.fromCodePoint(0x1f4d9),
+ Emojicon.fromCodePoint(0x1f4d3),
+ Emojicon.fromCodePoint(0x1f4d4),
+ Emojicon.fromCodePoint(0x1f4d2),
+ Emojicon.fromCodePoint(0x1f4da),
+ Emojicon.fromCodePoint(0x1f4d6),
+ Emojicon.fromCodePoint(0x1f516),
+ Emojicon.fromCodePoint(0x1f4db),
+ Emojicon.fromCodePoint(0x1f52c),
+ Emojicon.fromCodePoint(0x1f52d),
+ Emojicon.fromCodePoint(0x1f4f0),
+ Emojicon.fromCodePoint(0x1f3a8),
+ Emojicon.fromCodePoint(0x1f3ac),
+ Emojicon.fromCodePoint(0x1f3a4),
+ Emojicon.fromCodePoint(0x1f3a7),
+ Emojicon.fromCodePoint(0x1f3bc),
+ Emojicon.fromCodePoint(0x1f3b5),
+ Emojicon.fromCodePoint(0x1f3b6),
+ Emojicon.fromCodePoint(0x1f3b9),
+ Emojicon.fromCodePoint(0x1f3bb),
+ Emojicon.fromCodePoint(0x1f3ba),
+ Emojicon.fromCodePoint(0x1f3b7),
+ Emojicon.fromCodePoint(0x1f3b8),
+ Emojicon.fromCodePoint(0x1f47e),
+ Emojicon.fromCodePoint(0x1f3ae),
+ Emojicon.fromCodePoint(0x1f0cf),
+ Emojicon.fromCodePoint(0x1f3b4),
+ Emojicon.fromCodePoint(0x1f004),
+ Emojicon.fromCodePoint(0x1f3b2),
+ Emojicon.fromCodePoint(0x1f3af),
+ Emojicon.fromCodePoint(0x1f3c8),
+ Emojicon.fromCodePoint(0x1f3c0),
+ Emojicon.fromChar((char) 0x26bd),
+ Emojicon.fromChar((char) 0x26be),
+ Emojicon.fromCodePoint(0x1f3be),
+ Emojicon.fromCodePoint(0x1f3b1),
+ Emojicon.fromCodePoint(0x1f3c9),
+ Emojicon.fromCodePoint(0x1f3b3),
+ Emojicon.fromChar((char) 0x26f3),
+ Emojicon.fromCodePoint(0x1f6b5),
+ Emojicon.fromCodePoint(0x1f6b4),
+ Emojicon.fromCodePoint(0x1f3c1),
+ Emojicon.fromCodePoint(0x1f3c7),
+ Emojicon.fromCodePoint(0x1f3c6),
+ Emojicon.fromCodePoint(0x1f3bf),
+ Emojicon.fromCodePoint(0x1f3c2),
+ Emojicon.fromCodePoint(0x1f3ca),
+ Emojicon.fromCodePoint(0x1f3c4),
+ Emojicon.fromCodePoint(0x1f3a3),
+ Emojicon.fromChar((char) 0x2615),
+ Emojicon.fromCodePoint(0x1f375),
+ Emojicon.fromCodePoint(0x1f376),
+ Emojicon.fromCodePoint(0x1f37c),
+ Emojicon.fromCodePoint(0x1f37a),
+ Emojicon.fromCodePoint(0x1f37b),
+ Emojicon.fromCodePoint(0x1f378),
+ Emojicon.fromCodePoint(0x1f379),
+ Emojicon.fromCodePoint(0x1f377),
+ Emojicon.fromCodePoint(0x1f374),
+ Emojicon.fromCodePoint(0x1f355),
+ Emojicon.fromCodePoint(0x1f354),
+ Emojicon.fromCodePoint(0x1f35f),
+ Emojicon.fromCodePoint(0x1f357),
+ Emojicon.fromCodePoint(0x1f356),
+ Emojicon.fromCodePoint(0x1f35d),
+ Emojicon.fromCodePoint(0x1f35b),
+ Emojicon.fromCodePoint(0x1f364),
+ Emojicon.fromCodePoint(0x1f371),
+ Emojicon.fromCodePoint(0x1f363),
+ Emojicon.fromCodePoint(0x1f365),
+ Emojicon.fromCodePoint(0x1f359),
+ Emojicon.fromCodePoint(0x1f358),
+ Emojicon.fromCodePoint(0x1f35a),
+ Emojicon.fromCodePoint(0x1f35c),
+ Emojicon.fromCodePoint(0x1f372),
+ Emojicon.fromCodePoint(0x1f362),
+ Emojicon.fromCodePoint(0x1f361),
+ Emojicon.fromCodePoint(0x1f373),
+ Emojicon.fromCodePoint(0x1f35e),
+ Emojicon.fromCodePoint(0x1f369),
+ Emojicon.fromCodePoint(0x1f36e),
+ Emojicon.fromCodePoint(0x1f366),
+ Emojicon.fromCodePoint(0x1f368),
+ Emojicon.fromCodePoint(0x1f367),
+ Emojicon.fromCodePoint(0x1f382),
+ Emojicon.fromCodePoint(0x1f370),
+ Emojicon.fromCodePoint(0x1f36a),
+ Emojicon.fromCodePoint(0x1f36b),
+ Emojicon.fromCodePoint(0x1f36c),
+ Emojicon.fromCodePoint(0x1f36d),
+ Emojicon.fromCodePoint(0x1f36f),
+ Emojicon.fromCodePoint(0x1f34e),
+ Emojicon.fromCodePoint(0x1f34f),
+ Emojicon.fromCodePoint(0x1f34a),
+ Emojicon.fromCodePoint(0x1f34b),
+ Emojicon.fromCodePoint(0x1f352),
+ Emojicon.fromCodePoint(0x1f347),
+ Emojicon.fromCodePoint(0x1f349),
+ Emojicon.fromCodePoint(0x1f353),
+ Emojicon.fromCodePoint(0x1f351),
+ Emojicon.fromCodePoint(0x1f348),
+ Emojicon.fromCodePoint(0x1f34c),
+ Emojicon.fromCodePoint(0x1f350),
+ Emojicon.fromCodePoint(0x1f34d),
+ Emojicon.fromCodePoint(0x1f360),
+ Emojicon.fromCodePoint(0x1f346),
+ Emojicon.fromCodePoint(0x1f345),
+ Emojicon.fromCodePoint(0x1f33d),
+ };
+}
diff --git a/libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/emoji/People.java b/libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/emoji/People.java
new file mode 100644
index 00000000..93e34f59
--- /dev/null
+++ b/libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/emoji/People.java
@@ -0,0 +1,214 @@
+/*
+ * Copyright 2014 Ankush Sachdeva
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package github.ankushsachdeva.emojicon.emoji;
+
+/**
+ * @author Hieu Rocker (rockerhieu@gmail.com)
+ */
+public class People {
+ public static final Emojicon[] DATA = new Emojicon[]{
+ Emojicon.fromCodePoint(0x1f604),
+ Emojicon.fromCodePoint(0x1f603),
+ Emojicon.fromCodePoint(0x1f600),
+ Emojicon.fromCodePoint(0x1f60a),
+ Emojicon.fromChar((char) 0x263a),
+ Emojicon.fromCodePoint(0x1f609),
+ Emojicon.fromCodePoint(0x1f60d),
+ Emojicon.fromCodePoint(0x1f618),
+ Emojicon.fromCodePoint(0x1f61a),
+ Emojicon.fromCodePoint(0x1f617),
+ Emojicon.fromCodePoint(0x1f619),
+ Emojicon.fromCodePoint(0x1f61c),
+ Emojicon.fromCodePoint(0x1f61d),
+ Emojicon.fromCodePoint(0x1f61b),
+ Emojicon.fromCodePoint(0x1f633),
+ Emojicon.fromCodePoint(0x1f601),
+ Emojicon.fromCodePoint(0x1f614),
+ Emojicon.fromCodePoint(0x1f60c),
+ Emojicon.fromCodePoint(0x1f612),
+ Emojicon.fromCodePoint(0x1f61e),
+ Emojicon.fromCodePoint(0x1f623),
+ Emojicon.fromCodePoint(0x1f622),
+ Emojicon.fromCodePoint(0x1f602),
+ Emojicon.fromCodePoint(0x1f62d),
+ Emojicon.fromCodePoint(0x1f62a),
+ Emojicon.fromCodePoint(0x1f625),
+ Emojicon.fromCodePoint(0x1f630),
+ Emojicon.fromCodePoint(0x1f605),
+ Emojicon.fromCodePoint(0x1f613),
+ Emojicon.fromCodePoint(0x1f629),
+ Emojicon.fromCodePoint(0x1f62b),
+ Emojicon.fromCodePoint(0x1f628),
+ Emojicon.fromCodePoint(0x1f631),
+ Emojicon.fromCodePoint(0x1f620),
+ Emojicon.fromCodePoint(0x1f621),
+ Emojicon.fromCodePoint(0x1f624),
+ Emojicon.fromCodePoint(0x1f616),
+ Emojicon.fromCodePoint(0x1f606),
+ Emojicon.fromCodePoint(0x1f60b),
+ Emojicon.fromCodePoint(0x1f637),
+ Emojicon.fromCodePoint(0x1f60e),
+ Emojicon.fromCodePoint(0x1f634),
+ Emojicon.fromCodePoint(0x1f635),
+ Emojicon.fromCodePoint(0x1f632),
+ Emojicon.fromCodePoint(0x1f61f),
+ Emojicon.fromCodePoint(0x1f626),
+ Emojicon.fromCodePoint(0x1f627),
+ Emojicon.fromCodePoint(0x1f608),
+ Emojicon.fromCodePoint(0x1f47f),
+ Emojicon.fromCodePoint(0x1f62e),
+ Emojicon.fromCodePoint(0x1f62c),
+ Emojicon.fromCodePoint(0x1f610),
+ Emojicon.fromCodePoint(0x1f615),
+ Emojicon.fromCodePoint(0x1f62f),
+ Emojicon.fromCodePoint(0x1f636),
+ Emojicon.fromCodePoint(0x1f607),
+ Emojicon.fromCodePoint(0x1f60f),
+ Emojicon.fromCodePoint(0x1f611),
+ Emojicon.fromCodePoint(0x1f472),
+ Emojicon.fromCodePoint(0x1f473),
+ Emojicon.fromCodePoint(0x1f46e),
+ Emojicon.fromCodePoint(0x1f477),
+ Emojicon.fromCodePoint(0x1f482),
+ Emojicon.fromCodePoint(0x1f476),
+ Emojicon.fromCodePoint(0x1f466),
+ Emojicon.fromCodePoint(0x1f467),
+ Emojicon.fromCodePoint(0x1f468),
+ Emojicon.fromCodePoint(0x1f469),
+ Emojicon.fromCodePoint(0x1f474),
+ Emojicon.fromCodePoint(0x1f475),
+ Emojicon.fromCodePoint(0x1f471),
+ Emojicon.fromCodePoint(0x1f47c),
+ Emojicon.fromCodePoint(0x1f478),
+ Emojicon.fromCodePoint(0x1f63a),
+ Emojicon.fromCodePoint(0x1f638),
+ Emojicon.fromCodePoint(0x1f63b),
+ Emojicon.fromCodePoint(0x1f63d),
+ Emojicon.fromCodePoint(0x1f63c),
+ Emojicon.fromCodePoint(0x1f640),
+ Emojicon.fromCodePoint(0x1f63f),
+ Emojicon.fromCodePoint(0x1f639),
+ Emojicon.fromCodePoint(0x1f63e),
+ Emojicon.fromCodePoint(0x1f479),
+ Emojicon.fromCodePoint(0x1f47a),
+ Emojicon.fromCodePoint(0x1f648),
+ Emojicon.fromCodePoint(0x1f649),
+ Emojicon.fromCodePoint(0x1f64a),
+ Emojicon.fromCodePoint(0x1f480),
+ Emojicon.fromCodePoint(0x1f47d),
+ Emojicon.fromCodePoint(0x1f4a9),
+ Emojicon.fromCodePoint(0x1f525),
+ Emojicon.fromChar((char) 0x2728),
+ Emojicon.fromCodePoint(0x1f31f),
+ Emojicon.fromCodePoint(0x1f4ab),
+ Emojicon.fromCodePoint(0x1f4a5),
+ Emojicon.fromCodePoint(0x1f4a2),
+ Emojicon.fromCodePoint(0x1f4a6),
+ Emojicon.fromCodePoint(0x1f4a7),
+ Emojicon.fromCodePoint(0x1f4a4),
+ Emojicon.fromCodePoint(0x1f4a8),
+ Emojicon.fromCodePoint(0x1f442),
+ Emojicon.fromCodePoint(0x1f440),
+ Emojicon.fromCodePoint(0x1f443),
+ Emojicon.fromCodePoint(0x1f445),
+ Emojicon.fromCodePoint(0x1f444),
+ Emojicon.fromCodePoint(0x1f44d),
+ Emojicon.fromCodePoint(0x1f44e),
+ Emojicon.fromCodePoint(0x1f44c),
+ Emojicon.fromCodePoint(0x1f44a),
+ Emojicon.fromChar((char) 0x270a),
+ Emojicon.fromChar((char) 0x270c),
+ Emojicon.fromCodePoint(0x1f44b),
+ Emojicon.fromChar((char) 0x270b),
+ Emojicon.fromCodePoint(0x1f450),
+ Emojicon.fromCodePoint(0x1f446),
+ Emojicon.fromCodePoint(0x1f447),
+ Emojicon.fromCodePoint(0x1f449),
+ Emojicon.fromCodePoint(0x1f448),
+ Emojicon.fromCodePoint(0x1f64c),
+ Emojicon.fromCodePoint(0x1f64f),
+ Emojicon.fromChar((char) 0x261d),
+ Emojicon.fromCodePoint(0x1f44f),
+ Emojicon.fromCodePoint(0x1f4aa),
+ Emojicon.fromCodePoint(0x1f6b6),
+ Emojicon.fromCodePoint(0x1f3c3),
+ Emojicon.fromCodePoint(0x1f483),
+ Emojicon.fromCodePoint(0x1f46b),
+ Emojicon.fromCodePoint(0x1f46a),
+ Emojicon.fromCodePoint(0x1f46c),
+ Emojicon.fromCodePoint(0x1f46d),
+ Emojicon.fromCodePoint(0x1f48f),
+ Emojicon.fromCodePoint(0x1f491),
+ Emojicon.fromCodePoint(0x1f46f),
+ Emojicon.fromCodePoint(0x1f646),
+ Emojicon.fromCodePoint(0x1f645),
+ Emojicon.fromCodePoint(0x1f481),
+ Emojicon.fromCodePoint(0x1f64b),
+ Emojicon.fromCodePoint(0x1f486),
+ Emojicon.fromCodePoint(0x1f487),
+ Emojicon.fromCodePoint(0x1f485),
+ Emojicon.fromCodePoint(0x1f470),
+ Emojicon.fromCodePoint(0x1f64e),
+ Emojicon.fromCodePoint(0x1f64d),
+ Emojicon.fromCodePoint(0x1f647),
+ Emojicon.fromCodePoint(0x1f3a9),
+ Emojicon.fromCodePoint(0x1f451),
+ Emojicon.fromCodePoint(0x1f452),
+ Emojicon.fromCodePoint(0x1f45f),
+ Emojicon.fromCodePoint(0x1f45e),
+ Emojicon.fromCodePoint(0x1f461),
+ Emojicon.fromCodePoint(0x1f460),
+ Emojicon.fromCodePoint(0x1f462),
+ Emojicon.fromCodePoint(0x1f455),
+ Emojicon.fromCodePoint(0x1f454),
+ Emojicon.fromCodePoint(0x1f45a),
+ Emojicon.fromCodePoint(0x1f457),
+ Emojicon.fromCodePoint(0x1f3bd),
+ Emojicon.fromCodePoint(0x1f456),
+ Emojicon.fromCodePoint(0x1f458),
+ Emojicon.fromCodePoint(0x1f459),
+ Emojicon.fromCodePoint(0x1f4bc),
+ Emojicon.fromCodePoint(0x1f45c),
+ Emojicon.fromCodePoint(0x1f45d),
+ Emojicon.fromCodePoint(0x1f45b),
+ Emojicon.fromCodePoint(0x1f453),
+ Emojicon.fromCodePoint(0x1f380),
+ Emojicon.fromCodePoint(0x1f302),
+ Emojicon.fromCodePoint(0x1f484),
+ Emojicon.fromCodePoint(0x1f49b),
+ Emojicon.fromCodePoint(0x1f499),
+ Emojicon.fromCodePoint(0x1f49c),
+ Emojicon.fromCodePoint(0x1f49a),
+ Emojicon.fromChar((char) 0x2764),
+ Emojicon.fromCodePoint(0x1f494),
+ Emojicon.fromCodePoint(0x1f497),
+ Emojicon.fromCodePoint(0x1f493),
+ Emojicon.fromCodePoint(0x1f495),
+ Emojicon.fromCodePoint(0x1f496),
+ Emojicon.fromCodePoint(0x1f49e),
+ Emojicon.fromCodePoint(0x1f498),
+ Emojicon.fromCodePoint(0x1f48c),
+ Emojicon.fromCodePoint(0x1f48b),
+ Emojicon.fromCodePoint(0x1f48d),
+ Emojicon.fromCodePoint(0x1f48e),
+ Emojicon.fromCodePoint(0x1f464),
+ Emojicon.fromCodePoint(0x1f465),
+ Emojicon.fromCodePoint(0x1f4ac),
+ Emojicon.fromCodePoint(0x1f463),
+ Emojicon.fromCodePoint(0x1f4ad),
+ };
+}
diff --git a/libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/emoji/Places.java b/libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/emoji/Places.java
new file mode 100644
index 00000000..cf2f0e5a
--- /dev/null
+++ b/libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/emoji/Places.java
@@ -0,0 +1,126 @@
+/*
+ * Copyright 2014 Ankush Sachdeva
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package github.ankushsachdeva.emojicon.emoji;
+
+/**
+ * @author Hieu Rocker (rockerhieu@gmail.com)
+ */
+public class Places {
+ public static final Emojicon[] DATA = new Emojicon[]{
+ Emojicon.fromCodePoint(0x1f3e0),
+ Emojicon.fromCodePoint(0x1f3e1),
+ Emojicon.fromCodePoint(0x1f3eb),
+ Emojicon.fromCodePoint(0x1f3e2),
+ Emojicon.fromCodePoint(0x1f3e3),
+ Emojicon.fromCodePoint(0x1f3e5),
+ Emojicon.fromCodePoint(0x1f3e6),
+ Emojicon.fromCodePoint(0x1f3ea),
+ Emojicon.fromCodePoint(0x1f3e9),
+ Emojicon.fromCodePoint(0x1f3e8),
+ Emojicon.fromCodePoint(0x1f492),
+ Emojicon.fromChar((char) 0x26ea),
+ Emojicon.fromCodePoint(0x1f3ec),
+ Emojicon.fromCodePoint(0x1f3e4),
+ Emojicon.fromCodePoint(0x1f307),
+ Emojicon.fromCodePoint(0x1f306),
+ Emojicon.fromCodePoint(0x1f3ef),
+ Emojicon.fromCodePoint(0x1f3f0),
+ Emojicon.fromChar((char) 0x26fa),
+ Emojicon.fromCodePoint(0x1f3ed),
+ Emojicon.fromCodePoint(0x1f5fc),
+ Emojicon.fromCodePoint(0x1f5fe),
+ Emojicon.fromCodePoint(0x1f5fb),
+ Emojicon.fromCodePoint(0x1f304),
+ Emojicon.fromCodePoint(0x1f305),
+ Emojicon.fromCodePoint(0x1f303),
+ Emojicon.fromCodePoint(0x1f5fd),
+ Emojicon.fromCodePoint(0x1f309),
+ Emojicon.fromCodePoint(0x1f3a0),
+ Emojicon.fromCodePoint(0x1f3a1),
+ Emojicon.fromChar((char) 0x26f2),
+ Emojicon.fromCodePoint(0x1f3a2),
+ Emojicon.fromCodePoint(0x1f6a2),
+ Emojicon.fromChar((char) 0x26f5),
+ Emojicon.fromCodePoint(0x1f6a4),
+ Emojicon.fromCodePoint(0x1f6a3),
+ Emojicon.fromChar((char) 0x2693),
+ Emojicon.fromCodePoint(0x1f680),
+ Emojicon.fromChar((char) 0x2708),
+ Emojicon.fromCodePoint(0x1f4ba),
+ Emojicon.fromCodePoint(0x1f681),
+ Emojicon.fromCodePoint(0x1f682),
+ Emojicon.fromCodePoint(0x1f68a),
+ Emojicon.fromCodePoint(0x1f689),
+ Emojicon.fromCodePoint(0x1f69e),
+ Emojicon.fromCodePoint(0x1f686),
+ Emojicon.fromCodePoint(0x1f684),
+ Emojicon.fromCodePoint(0x1f685),
+ Emojicon.fromCodePoint(0x1f688),
+ Emojicon.fromCodePoint(0x1f687),
+ Emojicon.fromCodePoint(0x1f69d),
+ Emojicon.fromCodePoint(0x1f68b),
+ Emojicon.fromCodePoint(0x1f683),
+ Emojicon.fromCodePoint(0x1f68e),
+ Emojicon.fromCodePoint(0x1f68c),
+ Emojicon.fromCodePoint(0x1f68d),
+ Emojicon.fromCodePoint(0x1f699),
+ Emojicon.fromCodePoint(0x1f698),
+ Emojicon.fromCodePoint(0x1f697),
+ Emojicon.fromCodePoint(0x1f695),
+ Emojicon.fromCodePoint(0x1f696),
+ Emojicon.fromCodePoint(0x1f69b),
+ Emojicon.fromCodePoint(0x1f69a),
+ Emojicon.fromCodePoint(0x1f6a8),
+ Emojicon.fromCodePoint(0x1f693),
+ Emojicon.fromCodePoint(0x1f694),
+ Emojicon.fromCodePoint(0x1f692),
+ Emojicon.fromCodePoint(0x1f691),
+ Emojicon.fromCodePoint(0x1f690),
+ Emojicon.fromCodePoint(0x1f6b2),
+ Emojicon.fromCodePoint(0x1f6a1),
+ Emojicon.fromCodePoint(0x1f69f),
+ Emojicon.fromCodePoint(0x1f6a0),
+ Emojicon.fromCodePoint(0x1f69c),
+ Emojicon.fromCodePoint(0x1f488),
+ Emojicon.fromCodePoint(0x1f68f),
+ Emojicon.fromCodePoint(0x1f3ab),
+ Emojicon.fromCodePoint(0x1f6a6),
+ Emojicon.fromCodePoint(0x1f6a5),
+ Emojicon.fromChar((char) 0x26a0),
+ Emojicon.fromCodePoint(0x1f6a7),
+ Emojicon.fromCodePoint(0x1f530),
+ Emojicon.fromChar((char) 0x26fd),
+ Emojicon.fromCodePoint(0x1f3ee),
+ Emojicon.fromCodePoint(0x1f3b0),
+ Emojicon.fromChar((char) 0x2668),
+ Emojicon.fromCodePoint(0x1f5ff),
+ Emojicon.fromCodePoint(0x1f3aa),
+ Emojicon.fromCodePoint(0x1f3ad),
+ Emojicon.fromCodePoint(0x1f4cd),
+ Emojicon.fromCodePoint(0x1f6a9),
+ Emojicon.fromChars("\ud83c\uddef\ud83c\uddf5"),
+ Emojicon.fromChars("\ud83c\uddf0\ud83c\uddf7"),
+ Emojicon.fromChars("\ud83c\udde9\ud83c\uddea"),
+ Emojicon.fromChars("\ud83c\udde8\ud83c\uddf3"),
+ Emojicon.fromChars("\ud83c\uddfa\ud83c\uddf8"),
+ Emojicon.fromChars("\ud83c\uddeb\ud83c\uddf7"),
+ Emojicon.fromChars("\ud83c\uddea\ud83c\uddf8"),
+ Emojicon.fromChars("\ud83c\uddee\ud83c\uddf9"),
+ Emojicon.fromChars("\ud83c\uddf7\ud83c\uddfa"),
+ Emojicon.fromChars("\ud83c\uddec\ud83c\udde7"),
+ };
+}
diff --git a/libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/emoji/Symbols.java b/libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/emoji/Symbols.java
new file mode 100644
index 00000000..b81c322f
--- /dev/null
+++ b/libs/emojicon/src/main/java/github/ankushsachdeva/emojicon/emoji/Symbols.java
@@ -0,0 +1,237 @@
+/*
+ * Copyright 2014 Ankush Sachdeva
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package github.ankushsachdeva.emojicon.emoji;
+
+/**
+ * @author Hieu Rocker (rockerhieu@gmail.com)
+ */
+public class Symbols {
+ public static final Emojicon[] DATA = new Emojicon[]{
+ Emojicon.fromChars("\u0031\u20e3"),
+ Emojicon.fromChars("\u0032\u20e3"),
+ Emojicon.fromChars("\u0033\u20e3"),
+ Emojicon.fromChars("\u0034\u20e3"),
+ Emojicon.fromChars("\u0035\u20e3"),
+ Emojicon.fromChars("\u0036\u20e3"),
+ Emojicon.fromChars("\u0037\u20e3"),
+ Emojicon.fromChars("\u0038\u20e3"),
+ Emojicon.fromChars("\u0039\u20e3"),
+ Emojicon.fromChars("\u0030\u20e3"),
+ Emojicon.fromCodePoint(0x1f51f),
+ Emojicon.fromCodePoint(0x1f522),
+ Emojicon.fromChars("\u0023\u20e3"),
+ Emojicon.fromCodePoint(0x1f523),
+ Emojicon.fromChar((char) 0x2b06),
+ Emojicon.fromChar((char) 0x2b07),
+ Emojicon.fromChar((char) 0x2b05),
+ Emojicon.fromChar((char) 0x27a1),
+ Emojicon.fromCodePoint(0x1f520),
+ Emojicon.fromCodePoint(0x1f521),
+ Emojicon.fromCodePoint(0x1f524),
+ Emojicon.fromChar((char) 0x2197),
+ Emojicon.fromChar((char) 0x2196),
+ Emojicon.fromChar((char) 0x2198),
+ Emojicon.fromChar((char) 0x2199),
+ Emojicon.fromChar((char) 0x2194),
+ Emojicon.fromChar((char) 0x2195),
+ Emojicon.fromCodePoint(0x1f504),
+ Emojicon.fromChar((char) 0x25c0),
+ Emojicon.fromChar((char) 0x25b6),
+ Emojicon.fromCodePoint(0x1f53c),
+ Emojicon.fromCodePoint(0x1f53d),
+ Emojicon.fromChar((char) 0x21a9),
+ Emojicon.fromChar((char) 0x21aa),
+ Emojicon.fromChar((char) 0x2139),
+ Emojicon.fromChar((char) 0x23ea),
+ Emojicon.fromChar((char) 0x23e9),
+ Emojicon.fromChar((char) 0x23eb),
+ Emojicon.fromChar((char) 0x23ec),
+ Emojicon.fromChar((char) 0x2935),
+ Emojicon.fromChar((char) 0x2934),
+ Emojicon.fromCodePoint(0x1f197),
+ Emojicon.fromCodePoint(0x1f500),
+ Emojicon.fromCodePoint(0x1f501),
+ Emojicon.fromCodePoint(0x1f502),
+ Emojicon.fromCodePoint(0x1f195),
+ Emojicon.fromCodePoint(0x1f199),
+ Emojicon.fromCodePoint(0x1f192),
+ Emojicon.fromCodePoint(0x1f193),
+ Emojicon.fromCodePoint(0x1f196),
+ Emojicon.fromCodePoint(0x1f4f6),
+ Emojicon.fromCodePoint(0x1f3a6),
+ Emojicon.fromCodePoint(0x1f201),
+ Emojicon.fromCodePoint(0x1f22f),
+ Emojicon.fromCodePoint(0x1f233),
+ Emojicon.fromCodePoint(0x1f235),
+ Emojicon.fromCodePoint(0x1f234),
+ Emojicon.fromCodePoint(0x1f232),
+ Emojicon.fromCodePoint(0x1f250),
+ Emojicon.fromCodePoint(0x1f239),
+ Emojicon.fromCodePoint(0x1f23a),
+ Emojicon.fromCodePoint(0x1f236),
+ Emojicon.fromCodePoint(0x1f21a),
+ Emojicon.fromCodePoint(0x1f6bb),
+ Emojicon.fromCodePoint(0x1f6b9),
+ Emojicon.fromCodePoint(0x1f6ba),
+ Emojicon.fromCodePoint(0x1f6bc),
+ Emojicon.fromCodePoint(0x1f6be),
+ Emojicon.fromCodePoint(0x1f6b0),
+ Emojicon.fromCodePoint(0x1f6ae),
+ Emojicon.fromCodePoint(0x1f17f),
+ Emojicon.fromChar((char) 0x267f),
+ Emojicon.fromCodePoint(0x1f6ad),
+ Emojicon.fromCodePoint(0x1f237),
+ Emojicon.fromCodePoint(0x1f238),
+ Emojicon.fromCodePoint(0x1f202),
+ Emojicon.fromChar((char) 0x24c2),
+ Emojicon.fromCodePoint(0x1f6c2),
+ Emojicon.fromCodePoint(0x1f6c4),
+ Emojicon.fromCodePoint(0x1f6c5),
+ Emojicon.fromCodePoint(0x1f6c3),
+ Emojicon.fromCodePoint(0x1f251),
+ Emojicon.fromChar((char) 0x3299),
+ Emojicon.fromChar((char) 0x3297),
+ Emojicon.fromCodePoint(0x1f191),
+ Emojicon.fromCodePoint(0x1f198),
+ Emojicon.fromCodePoint(0x1f194),
+ Emojicon.fromCodePoint(0x1f6ab),
+ Emojicon.fromCodePoint(0x1f51e),
+ Emojicon.fromCodePoint(0x1f4f5),
+ Emojicon.fromCodePoint(0x1f6af),
+ Emojicon.fromCodePoint(0x1f6b1),
+ Emojicon.fromCodePoint(0x1f6b3),
+ Emojicon.fromCodePoint(0x1f6b7),
+ Emojicon.fromCodePoint(0x1f6b8),
+ Emojicon.fromChar((char) 0x26d4),
+ Emojicon.fromChar((char) 0x2733),
+ Emojicon.fromChar((char) 0x2747),
+ Emojicon.fromChar((char) 0x274e),
+ Emojicon.fromChar((char) 0x2705),
+ Emojicon.fromChar((char) 0x2734),
+ Emojicon.fromCodePoint(0x1f49f),
+ Emojicon.fromCodePoint(0x1f19a),
+ Emojicon.fromCodePoint(0x1f4f3),
+ Emojicon.fromCodePoint(0x1f4f4),
+ Emojicon.fromCodePoint(0x1f170),
+ Emojicon.fromCodePoint(0x1f171),
+ Emojicon.fromCodePoint(0x1f18e),
+ Emojicon.fromCodePoint(0x1f17e),
+ Emojicon.fromCodePoint(0x1f4a0),
+ Emojicon.fromChar((char) 0x27bf),
+ Emojicon.fromChar((char) 0x267b),
+ Emojicon.fromChar((char) 0x2648),
+ Emojicon.fromChar((char) 0x2649),
+ Emojicon.fromChar((char) 0x264a),
+ Emojicon.fromChar((char) 0x264b),
+ Emojicon.fromChar((char) 0x264c),
+ Emojicon.fromChar((char) 0x264d),
+ Emojicon.fromChar((char) 0x264e),
+ Emojicon.fromChar((char) 0x264f),
+ Emojicon.fromChar((char) 0x2650),
+ Emojicon.fromChar((char) 0x2651),
+ Emojicon.fromChar((char) 0x2652),
+ Emojicon.fromChar((char) 0x2653),
+ Emojicon.fromChar((char) 0x26ce),
+ Emojicon.fromCodePoint(0x1f52f),
+ Emojicon.fromCodePoint(0x1f3e7),
+ Emojicon.fromCodePoint(0x1f4b9),
+ Emojicon.fromCodePoint(0x1f4b2),
+ Emojicon.fromCodePoint(0x1f4b1),
+// Emoji.fromChar((char)0x00a9),
+// Emoji.fromChar((char)0x00ae),
+ Emojicon.fromChar((char) 0xe24e),
+ Emojicon.fromChar((char) 0xe24f),
+
+ Emojicon.fromChar((char) 0x2122),
+ Emojicon.fromChar((char) 0x274c),
+ Emojicon.fromChar((char) 0x203c),
+ Emojicon.fromChar((char) 0x2049),
+ Emojicon.fromChar((char) 0x2757),
+ Emojicon.fromChar((char) 0x2753),
+ Emojicon.fromChar((char) 0x2755),
+ Emojicon.fromChar((char) 0x2754),
+ Emojicon.fromChar((char) 0x2b55),
+ Emojicon.fromCodePoint(0x1f51d),
+ Emojicon.fromCodePoint(0x1f51a),
+ Emojicon.fromCodePoint(0x1f519),
+ Emojicon.fromCodePoint(0x1f51b),
+ Emojicon.fromCodePoint(0x1f51c),
+ Emojicon.fromCodePoint(0x1f503),
+ Emojicon.fromCodePoint(0x1f55b),
+ Emojicon.fromCodePoint(0x1f567),
+ Emojicon.fromCodePoint(0x1f550),
+ Emojicon.fromCodePoint(0x1f55c),
+ Emojicon.fromCodePoint(0x1f551),
+ Emojicon.fromCodePoint(0x1f55d),
+ Emojicon.fromCodePoint(0x1f552),
+ Emojicon.fromCodePoint(0x1f55e),
+ Emojicon.fromCodePoint(0x1f553),
+ Emojicon.fromCodePoint(0x1f55f),
+ Emojicon.fromCodePoint(0x1f554),
+ Emojicon.fromCodePoint(0x1f560),
+ Emojicon.fromCodePoint(0x1f555),
+ Emojicon.fromCodePoint(0x1f556),
+ Emojicon.fromCodePoint(0x1f557),
+ Emojicon.fromCodePoint(0x1f558),
+ Emojicon.fromCodePoint(0x1f559),
+ Emojicon.fromCodePoint(0x1f55a),
+ Emojicon.fromCodePoint(0x1f561),
+ Emojicon.fromCodePoint(0x1f562),
+ Emojicon.fromCodePoint(0x1f563),
+ Emojicon.fromCodePoint(0x1f564),
+ Emojicon.fromCodePoint(0x1f565),
+ Emojicon.fromCodePoint(0x1f566),
+ Emojicon.fromChar((char) 0x2716),
+ Emojicon.fromChar((char) 0x2795),
+ Emojicon.fromChar((char) 0x2796),
+ Emojicon.fromChar((char) 0x2797),
+ Emojicon.fromChar((char) 0x2660),
+ Emojicon.fromChar((char) 0x2665),
+ Emojicon.fromChar((char) 0x2663),
+ Emojicon.fromChar((char) 0x2666),
+ Emojicon.fromCodePoint(0x1f4ae),
+ Emojicon.fromCodePoint(0x1f4af),
+ Emojicon.fromChar((char) 0x2714),
+ Emojicon.fromChar((char) 0x2611),
+ Emojicon.fromCodePoint(0x1f518),
+ Emojicon.fromCodePoint(0x1f517),
+ Emojicon.fromChar((char) 0x27b0),
+ Emojicon.fromChar((char) 0x3030),
+ Emojicon.fromChar((char) 0x303d),
+ Emojicon.fromCodePoint(0x1f531),
+ Emojicon.fromChar((char) 0x25fc),
+ Emojicon.fromChar((char) 0x25fb),
+ Emojicon.fromChar((char) 0x25fe),
+ Emojicon.fromChar((char) 0x25fd),
+ Emojicon.fromChar((char) 0x25aa),
+ Emojicon.fromChar((char) 0x25ab),
+ Emojicon.fromCodePoint(0x1f53a),
+ Emojicon.fromCodePoint(0x1f532),
+ Emojicon.fromCodePoint(0x1f533),
+ Emojicon.fromChar((char) 0x26ab),
+ Emojicon.fromChar((char) 0x26aa),
+ Emojicon.fromCodePoint(0x1f534),
+ Emojicon.fromCodePoint(0x1f535),
+ Emojicon.fromCodePoint(0x1f53b),
+ Emojicon.fromChar((char) 0x2b1c),
+ Emojicon.fromChar((char) 0x2b1b),
+ Emojicon.fromCodePoint(0x1f536),
+ Emojicon.fromCodePoint(0x1f537),
+ Emojicon.fromCodePoint(0x1f538),
+ Emojicon.fromCodePoint(0x1f539),
+ };
+}
diff --git a/libs/emojicon/src/main/res/drawable-hdpi/ic_emoji_nature_light_activated.png b/libs/emojicon/src/main/res/drawable-hdpi/ic_emoji_nature_light_activated.png
new file mode 100644
index 00000000..5525df2f
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-hdpi/ic_emoji_nature_light_activated.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-hdpi/ic_emoji_nature_light_normal.png b/libs/emojicon/src/main/res/drawable-hdpi/ic_emoji_nature_light_normal.png
new file mode 100644
index 00000000..34e16b9d
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-hdpi/ic_emoji_nature_light_normal.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-hdpi/ic_emoji_objects_light_activated.png b/libs/emojicon/src/main/res/drawable-hdpi/ic_emoji_objects_light_activated.png
new file mode 100644
index 00000000..c3c7ec1b
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-hdpi/ic_emoji_objects_light_activated.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-hdpi/ic_emoji_objects_light_normal.png b/libs/emojicon/src/main/res/drawable-hdpi/ic_emoji_objects_light_normal.png
new file mode 100644
index 00000000..f012d770
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-hdpi/ic_emoji_objects_light_normal.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-hdpi/ic_emoji_people_light_activated.png b/libs/emojicon/src/main/res/drawable-hdpi/ic_emoji_people_light_activated.png
new file mode 100644
index 00000000..cfacbc2e
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-hdpi/ic_emoji_people_light_activated.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-hdpi/ic_emoji_people_light_normal.png b/libs/emojicon/src/main/res/drawable-hdpi/ic_emoji_people_light_normal.png
new file mode 100644
index 00000000..c54dbc1f
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-hdpi/ic_emoji_people_light_normal.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-hdpi/ic_emoji_places_light_activated.png b/libs/emojicon/src/main/res/drawable-hdpi/ic_emoji_places_light_activated.png
new file mode 100644
index 00000000..959dfdfd
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-hdpi/ic_emoji_places_light_activated.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-hdpi/ic_emoji_places_light_normal.png b/libs/emojicon/src/main/res/drawable-hdpi/ic_emoji_places_light_normal.png
new file mode 100644
index 00000000..fc0d9711
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-hdpi/ic_emoji_places_light_normal.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-hdpi/ic_emoji_recent_light_activated.png b/libs/emojicon/src/main/res/drawable-hdpi/ic_emoji_recent_light_activated.png
new file mode 100644
index 00000000..de570a18
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-hdpi/ic_emoji_recent_light_activated.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-hdpi/ic_emoji_recent_light_normal.png b/libs/emojicon/src/main/res/drawable-hdpi/ic_emoji_recent_light_normal.png
new file mode 100644
index 00000000..b2562088
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-hdpi/ic_emoji_recent_light_normal.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-hdpi/ic_emoji_symbols_light_activated.png b/libs/emojicon/src/main/res/drawable-hdpi/ic_emoji_symbols_light_activated.png
new file mode 100644
index 00000000..af1fd27e
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-hdpi/ic_emoji_symbols_light_activated.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-hdpi/ic_emoji_symbols_light_normal.png b/libs/emojicon/src/main/res/drawable-hdpi/ic_emoji_symbols_light_normal.png
new file mode 100644
index 00000000..02b84d51
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-hdpi/ic_emoji_symbols_light_normal.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-hdpi/ic_launcher.png b/libs/emojicon/src/main/res/drawable-hdpi/ic_launcher.png
new file mode 100644
index 00000000..96a442e5
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-hdpi/ic_launcher.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-hdpi/keyboard_background_holo.9.png b/libs/emojicon/src/main/res/drawable-hdpi/keyboard_background_holo.9.png
new file mode 100644
index 00000000..73868751
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-hdpi/keyboard_background_holo.9.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-hdpi/orca_attach_camera_normal.png b/libs/emojicon/src/main/res/drawable-hdpi/orca_attach_camera_normal.png
new file mode 100644
index 00000000..be062995
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-hdpi/orca_attach_camera_normal.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-hdpi/orca_attach_camera_pressed.png b/libs/emojicon/src/main/res/drawable-hdpi/orca_attach_camera_pressed.png
new file mode 100644
index 00000000..30ac6db9
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-hdpi/orca_attach_camera_pressed.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-hdpi/orca_attach_location_normal.png b/libs/emojicon/src/main/res/drawable-hdpi/orca_attach_location_normal.png
new file mode 100644
index 00000000..c52740f2
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-hdpi/orca_attach_location_normal.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-hdpi/orca_attach_location_pressed.png b/libs/emojicon/src/main/res/drawable-hdpi/orca_attach_location_pressed.png
new file mode 100644
index 00000000..764b78be
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-hdpi/orca_attach_location_pressed.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-hdpi/orca_attach_photo_normal.png b/libs/emojicon/src/main/res/drawable-hdpi/orca_attach_photo_normal.png
new file mode 100644
index 00000000..fccbc66b
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-hdpi/orca_attach_photo_normal.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-hdpi/orca_attach_photo_pressed.png b/libs/emojicon/src/main/res/drawable-hdpi/orca_attach_photo_pressed.png
new file mode 100644
index 00000000..faa94926
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-hdpi/orca_attach_photo_pressed.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-hdpi/orca_attachments_arrow.png b/libs/emojicon/src/main/res/drawable-hdpi/orca_attachments_arrow.png
new file mode 100644
index 00000000..4417128e
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-hdpi/orca_attachments_arrow.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-hdpi/orca_attachments_arrow_reversed.png b/libs/emojicon/src/main/res/drawable-hdpi/orca_attachments_arrow_reversed.png
new file mode 100644
index 00000000..556e5cef
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-hdpi/orca_attachments_arrow_reversed.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-hdpi/orca_composer_divider_horizontal.9.png b/libs/emojicon/src/main/res/drawable-hdpi/orca_composer_divider_horizontal.9.png
new file mode 100644
index 00000000..51492dbd
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-hdpi/orca_composer_divider_horizontal.9.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-hdpi/orca_composer_divider_vertical.9.png b/libs/emojicon/src/main/res/drawable-hdpi/orca_composer_divider_vertical.9.png
new file mode 100644
index 00000000..ebf5e2d8
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-hdpi/orca_composer_divider_vertical.9.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-hdpi/orca_composer_popup_active_normal.png b/libs/emojicon/src/main/res/drawable-hdpi/orca_composer_popup_active_normal.png
new file mode 100644
index 00000000..c5b1ec7f
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-hdpi/orca_composer_popup_active_normal.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-hdpi/orca_composer_popup_active_pressed.png b/libs/emojicon/src/main/res/drawable-hdpi/orca_composer_popup_active_pressed.png
new file mode 100644
index 00000000..1b325a44
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-hdpi/orca_composer_popup_active_pressed.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-hdpi/orca_composer_popup_normal.png b/libs/emojicon/src/main/res/drawable-hdpi/orca_composer_popup_normal.png
new file mode 100644
index 00000000..e19ec166
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-hdpi/orca_composer_popup_normal.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-hdpi/orca_composer_popup_pressed.png b/libs/emojicon/src/main/res/drawable-hdpi/orca_composer_popup_pressed.png
new file mode 100644
index 00000000..438c0605
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-hdpi/orca_composer_popup_pressed.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-hdpi/orca_composer_tab.9.png b/libs/emojicon/src/main/res/drawable-hdpi/orca_composer_tab.9.png
new file mode 100644
index 00000000..47a8f4bd
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-hdpi/orca_composer_tab.9.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-hdpi/orca_composer_tab_active.9.png b/libs/emojicon/src/main/res/drawable-hdpi/orca_composer_tab_active.9.png
new file mode 100644
index 00000000..2ae02683
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-hdpi/orca_composer_tab_active.9.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-hdpi/orca_composer_tab_dark.9.png b/libs/emojicon/src/main/res/drawable-hdpi/orca_composer_tab_dark.9.png
new file mode 100644
index 00000000..1e97ae0b
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-hdpi/orca_composer_tab_dark.9.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-hdpi/orca_composer_tab_pressed.9.png b/libs/emojicon/src/main/res/drawable-hdpi/orca_composer_tab_pressed.9.png
new file mode 100644
index 00000000..e5e223a4
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-hdpi/orca_composer_tab_pressed.9.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-hdpi/orca_composer_top_divider.9.png b/libs/emojicon/src/main/res/drawable-hdpi/orca_composer_top_divider.9.png
new file mode 100644
index 00000000..6fb5d363
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-hdpi/orca_composer_top_divider.9.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-hdpi/orca_emoji_backspace_back_normal.png b/libs/emojicon/src/main/res/drawable-hdpi/orca_emoji_backspace_back_normal.png
new file mode 100644
index 00000000..af084791
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-hdpi/orca_emoji_backspace_back_normal.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-hdpi/orca_emoji_backspace_front_normal.png b/libs/emojicon/src/main/res/drawable-hdpi/orca_emoji_backspace_front_normal.png
new file mode 100644
index 00000000..982e5aad
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-hdpi/orca_emoji_backspace_front_normal.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-hdpi/orca_emoji_backspace_front_pressed.png b/libs/emojicon/src/main/res/drawable-hdpi/orca_emoji_backspace_front_pressed.png
new file mode 100644
index 00000000..ecf5259e
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-hdpi/orca_emoji_backspace_front_pressed.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-hdpi/orca_emoji_category_cars.png b/libs/emojicon/src/main/res/drawable-hdpi/orca_emoji_category_cars.png
new file mode 100644
index 00000000..e6a4aeb8
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-hdpi/orca_emoji_category_cars.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-hdpi/orca_emoji_category_nature.png b/libs/emojicon/src/main/res/drawable-hdpi/orca_emoji_category_nature.png
new file mode 100644
index 00000000..5fa53e56
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-hdpi/orca_emoji_category_nature.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-hdpi/orca_emoji_category_objects.png b/libs/emojicon/src/main/res/drawable-hdpi/orca_emoji_category_objects.png
new file mode 100644
index 00000000..26851048
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-hdpi/orca_emoji_category_objects.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-hdpi/orca_emoji_category_people.png b/libs/emojicon/src/main/res/drawable-hdpi/orca_emoji_category_people.png
new file mode 100644
index 00000000..c96c7fdf
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-hdpi/orca_emoji_category_people.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-hdpi/orca_emoji_category_punctuation.png b/libs/emojicon/src/main/res/drawable-hdpi/orca_emoji_category_punctuation.png
new file mode 100644
index 00000000..8c272367
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-hdpi/orca_emoji_category_punctuation.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-hdpi/orca_emoji_more_back_normal.png b/libs/emojicon/src/main/res/drawable-hdpi/orca_emoji_more_back_normal.png
new file mode 100644
index 00000000..629e35a7
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-hdpi/orca_emoji_more_back_normal.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-hdpi/orca_emoji_more_front_normal.png b/libs/emojicon/src/main/res/drawable-hdpi/orca_emoji_more_front_normal.png
new file mode 100644
index 00000000..8932aed6
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-hdpi/orca_emoji_more_front_normal.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-hdpi/orca_emoji_more_front_pressed.png b/libs/emojicon/src/main/res/drawable-hdpi/orca_emoji_more_front_pressed.png
new file mode 100644
index 00000000..54a266d2
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-hdpi/orca_emoji_more_front_pressed.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-hdpi/sym_keyboard_delete_holo_dark.png b/libs/emojicon/src/main/res/drawable-hdpi/sym_keyboard_delete_holo_dark.png
new file mode 100644
index 00000000..d2d3560a
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-hdpi/sym_keyboard_delete_holo_dark.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-mdpi/ic_emoji_nature_light_activated.png b/libs/emojicon/src/main/res/drawable-mdpi/ic_emoji_nature_light_activated.png
new file mode 100644
index 00000000..d4c8d8da
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-mdpi/ic_emoji_nature_light_activated.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-mdpi/ic_emoji_nature_light_normal.png b/libs/emojicon/src/main/res/drawable-mdpi/ic_emoji_nature_light_normal.png
new file mode 100644
index 00000000..1555aa7a
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-mdpi/ic_emoji_nature_light_normal.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-mdpi/ic_emoji_objects_light_activated.png b/libs/emojicon/src/main/res/drawable-mdpi/ic_emoji_objects_light_activated.png
new file mode 100644
index 00000000..081dc66c
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-mdpi/ic_emoji_objects_light_activated.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-mdpi/ic_emoji_objects_light_normal.png b/libs/emojicon/src/main/res/drawable-mdpi/ic_emoji_objects_light_normal.png
new file mode 100644
index 00000000..58e6f6e7
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-mdpi/ic_emoji_objects_light_normal.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-mdpi/ic_emoji_people_light_activated.png b/libs/emojicon/src/main/res/drawable-mdpi/ic_emoji_people_light_activated.png
new file mode 100644
index 00000000..067ad549
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-mdpi/ic_emoji_people_light_activated.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-mdpi/ic_emoji_people_light_normal.png b/libs/emojicon/src/main/res/drawable-mdpi/ic_emoji_people_light_normal.png
new file mode 100644
index 00000000..d835d4ec
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-mdpi/ic_emoji_people_light_normal.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-mdpi/ic_emoji_places_light_activated.png b/libs/emojicon/src/main/res/drawable-mdpi/ic_emoji_places_light_activated.png
new file mode 100644
index 00000000..1aecec59
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-mdpi/ic_emoji_places_light_activated.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-mdpi/ic_emoji_places_light_normal.png b/libs/emojicon/src/main/res/drawable-mdpi/ic_emoji_places_light_normal.png
new file mode 100644
index 00000000..c70e484e
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-mdpi/ic_emoji_places_light_normal.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-mdpi/ic_emoji_recent_light_activated.png b/libs/emojicon/src/main/res/drawable-mdpi/ic_emoji_recent_light_activated.png
new file mode 100644
index 00000000..8009e932
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-mdpi/ic_emoji_recent_light_activated.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-mdpi/ic_emoji_recent_light_normal.png b/libs/emojicon/src/main/res/drawable-mdpi/ic_emoji_recent_light_normal.png
new file mode 100644
index 00000000..c2e598df
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-mdpi/ic_emoji_recent_light_normal.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-mdpi/ic_emoji_symbols_light_activated.png b/libs/emojicon/src/main/res/drawable-mdpi/ic_emoji_symbols_light_activated.png
new file mode 100644
index 00000000..caea8719
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-mdpi/ic_emoji_symbols_light_activated.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-mdpi/ic_emoji_symbols_light_normal.png b/libs/emojicon/src/main/res/drawable-mdpi/ic_emoji_symbols_light_normal.png
new file mode 100644
index 00000000..0edada62
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-mdpi/ic_emoji_symbols_light_normal.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-mdpi/ic_launcher.png b/libs/emojicon/src/main/res/drawable-mdpi/ic_launcher.png
new file mode 100644
index 00000000..359047df
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-mdpi/ic_launcher.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-mdpi/keyboard_background_holo.9.png b/libs/emojicon/src/main/res/drawable-mdpi/keyboard_background_holo.9.png
new file mode 100644
index 00000000..fbe97f7a
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-mdpi/keyboard_background_holo.9.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-mdpi/orca_attach_camera_normal.png b/libs/emojicon/src/main/res/drawable-mdpi/orca_attach_camera_normal.png
new file mode 100644
index 00000000..da9b2174
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-mdpi/orca_attach_camera_normal.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-mdpi/orca_attach_camera_pressed.png b/libs/emojicon/src/main/res/drawable-mdpi/orca_attach_camera_pressed.png
new file mode 100644
index 00000000..c0a1ad5b
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-mdpi/orca_attach_camera_pressed.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-mdpi/orca_attach_location_normal.png b/libs/emojicon/src/main/res/drawable-mdpi/orca_attach_location_normal.png
new file mode 100644
index 00000000..796e9412
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-mdpi/orca_attach_location_normal.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-mdpi/orca_attach_location_pressed.png b/libs/emojicon/src/main/res/drawable-mdpi/orca_attach_location_pressed.png
new file mode 100644
index 00000000..76dc17c8
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-mdpi/orca_attach_location_pressed.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-mdpi/orca_attach_photo_normal.png b/libs/emojicon/src/main/res/drawable-mdpi/orca_attach_photo_normal.png
new file mode 100644
index 00000000..7d405538
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-mdpi/orca_attach_photo_normal.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-mdpi/orca_attach_photo_pressed.png b/libs/emojicon/src/main/res/drawable-mdpi/orca_attach_photo_pressed.png
new file mode 100644
index 00000000..0e3e452e
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-mdpi/orca_attach_photo_pressed.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-mdpi/orca_attachments_arrow.png b/libs/emojicon/src/main/res/drawable-mdpi/orca_attachments_arrow.png
new file mode 100644
index 00000000..cec8039f
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-mdpi/orca_attachments_arrow.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-mdpi/orca_attachments_arrow_reversed.png b/libs/emojicon/src/main/res/drawable-mdpi/orca_attachments_arrow_reversed.png
new file mode 100644
index 00000000..ab41be48
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-mdpi/orca_attachments_arrow_reversed.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-mdpi/orca_composer_divider_horizontal.9.png b/libs/emojicon/src/main/res/drawable-mdpi/orca_composer_divider_horizontal.9.png
new file mode 100644
index 00000000..1e63d7cf
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-mdpi/orca_composer_divider_horizontal.9.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-mdpi/orca_composer_divider_vertical.9.png b/libs/emojicon/src/main/res/drawable-mdpi/orca_composer_divider_vertical.9.png
new file mode 100644
index 00000000..bff2c6c5
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-mdpi/orca_composer_divider_vertical.9.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-mdpi/orca_composer_popup_active_normal.png b/libs/emojicon/src/main/res/drawable-mdpi/orca_composer_popup_active_normal.png
new file mode 100644
index 00000000..46b1e6f3
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-mdpi/orca_composer_popup_active_normal.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-mdpi/orca_composer_popup_active_pressed.png b/libs/emojicon/src/main/res/drawable-mdpi/orca_composer_popup_active_pressed.png
new file mode 100644
index 00000000..cd963c0e
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-mdpi/orca_composer_popup_active_pressed.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-mdpi/orca_composer_popup_normal.png b/libs/emojicon/src/main/res/drawable-mdpi/orca_composer_popup_normal.png
new file mode 100644
index 00000000..179c1c56
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-mdpi/orca_composer_popup_normal.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-mdpi/orca_composer_popup_pressed.png b/libs/emojicon/src/main/res/drawable-mdpi/orca_composer_popup_pressed.png
new file mode 100644
index 00000000..9c334bce
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-mdpi/orca_composer_popup_pressed.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-mdpi/orca_composer_tab.9.png b/libs/emojicon/src/main/res/drawable-mdpi/orca_composer_tab.9.png
new file mode 100644
index 00000000..f377b526
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-mdpi/orca_composer_tab.9.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-mdpi/orca_composer_tab_active.9.png b/libs/emojicon/src/main/res/drawable-mdpi/orca_composer_tab_active.9.png
new file mode 100644
index 00000000..9fdffacf
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-mdpi/orca_composer_tab_active.9.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-mdpi/orca_composer_tab_dark.9.png b/libs/emojicon/src/main/res/drawable-mdpi/orca_composer_tab_dark.9.png
new file mode 100644
index 00000000..06510fd9
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-mdpi/orca_composer_tab_dark.9.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-mdpi/orca_composer_tab_pressed.9.png b/libs/emojicon/src/main/res/drawable-mdpi/orca_composer_tab_pressed.9.png
new file mode 100644
index 00000000..74adc994
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-mdpi/orca_composer_tab_pressed.9.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-mdpi/orca_composer_top_divider.9.png b/libs/emojicon/src/main/res/drawable-mdpi/orca_composer_top_divider.9.png
new file mode 100644
index 00000000..5a0f06d5
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-mdpi/orca_composer_top_divider.9.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-mdpi/orca_emoji_backspace_back_normal.png b/libs/emojicon/src/main/res/drawable-mdpi/orca_emoji_backspace_back_normal.png
new file mode 100644
index 00000000..3ef16b52
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-mdpi/orca_emoji_backspace_back_normal.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-mdpi/orca_emoji_backspace_front_normal.png b/libs/emojicon/src/main/res/drawable-mdpi/orca_emoji_backspace_front_normal.png
new file mode 100644
index 00000000..dcd91375
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-mdpi/orca_emoji_backspace_front_normal.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-mdpi/orca_emoji_backspace_front_pressed.png b/libs/emojicon/src/main/res/drawable-mdpi/orca_emoji_backspace_front_pressed.png
new file mode 100644
index 00000000..b30152f1
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-mdpi/orca_emoji_backspace_front_pressed.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-mdpi/orca_emoji_category_cars.png b/libs/emojicon/src/main/res/drawable-mdpi/orca_emoji_category_cars.png
new file mode 100644
index 00000000..377653c3
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-mdpi/orca_emoji_category_cars.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-mdpi/orca_emoji_category_nature.png b/libs/emojicon/src/main/res/drawable-mdpi/orca_emoji_category_nature.png
new file mode 100644
index 00000000..d8e95cda
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-mdpi/orca_emoji_category_nature.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-mdpi/orca_emoji_category_objects.png b/libs/emojicon/src/main/res/drawable-mdpi/orca_emoji_category_objects.png
new file mode 100644
index 00000000..26f88c77
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-mdpi/orca_emoji_category_objects.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-mdpi/orca_emoji_category_people.png b/libs/emojicon/src/main/res/drawable-mdpi/orca_emoji_category_people.png
new file mode 100644
index 00000000..c3463bb2
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-mdpi/orca_emoji_category_people.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-mdpi/orca_emoji_category_punctuation.png b/libs/emojicon/src/main/res/drawable-mdpi/orca_emoji_category_punctuation.png
new file mode 100644
index 00000000..085d4d55
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-mdpi/orca_emoji_category_punctuation.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-mdpi/orca_emoji_more_back_normal.png b/libs/emojicon/src/main/res/drawable-mdpi/orca_emoji_more_back_normal.png
new file mode 100644
index 00000000..41ea3bcf
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-mdpi/orca_emoji_more_back_normal.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-mdpi/orca_emoji_more_front_normal.png b/libs/emojicon/src/main/res/drawable-mdpi/orca_emoji_more_front_normal.png
new file mode 100644
index 00000000..0e10df57
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-mdpi/orca_emoji_more_front_normal.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-mdpi/orca_emoji_more_front_pressed.png b/libs/emojicon/src/main/res/drawable-mdpi/orca_emoji_more_front_pressed.png
new file mode 100644
index 00000000..b0e57396
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-mdpi/orca_emoji_more_front_pressed.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-mdpi/sym_keyboard_delete_holo_dark.png b/libs/emojicon/src/main/res/drawable-mdpi/sym_keyboard_delete_holo_dark.png
new file mode 100644
index 00000000..edd9d164
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-mdpi/sym_keyboard_delete_holo_dark.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_0023.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_0023.png
new file mode 100644
index 00000000..cd262df8
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_0023.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_0030.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_0030.png
new file mode 100644
index 00000000..5184cb46
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_0030.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_0031.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_0031.png
new file mode 100644
index 00000000..78750110
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_0031.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_0032.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_0032.png
new file mode 100644
index 00000000..c33eea72
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_0032.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_0033.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_0033.png
new file mode 100644
index 00000000..005634d8
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_0033.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_0034.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_0034.png
new file mode 100644
index 00000000..9e80b1b1
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_0034.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_0035.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_0035.png
new file mode 100644
index 00000000..599ae59a
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_0035.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_0036.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_0036.png
new file mode 100644
index 00000000..4fa34945
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_0036.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_0037.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_0037.png
new file mode 100644
index 00000000..abe8adce
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_0037.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_0038.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_0038.png
new file mode 100644
index 00000000..25631804
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_0038.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_0039.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_0039.png
new file mode 100644
index 00000000..75c92468
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_0039.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_00a9.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_00a9.png
new file mode 100644
index 00000000..b84e3ac6
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_00a9.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_00ae.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_00ae.png
new file mode 100644
index 00000000..3ffe4983
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_00ae.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f004.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f004.png
new file mode 100644
index 00000000..38a4af6e
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f004.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f0cf.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f0cf.png
new file mode 100644
index 00000000..1c6abf0e
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f0cf.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f170.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f170.png
new file mode 100644
index 00000000..5d15e34b
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f170.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f171.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f171.png
new file mode 100644
index 00000000..2d48a2ce
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f171.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f17e.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f17e.png
new file mode 100644
index 00000000..c20179c6
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f17e.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f17f.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f17f.png
new file mode 100644
index 00000000..0b2f1124
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f17f.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f18e.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f18e.png
new file mode 100644
index 00000000..98b83cd2
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f18e.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f191.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f191.png
new file mode 100644
index 00000000..29ad3da2
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f191.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f192.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f192.png
new file mode 100644
index 00000000..68deffb9
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f192.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f193.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f193.png
new file mode 100644
index 00000000..038e7709
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f193.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f194.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f194.png
new file mode 100644
index 00000000..89bdc5dd
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f194.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f195.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f195.png
new file mode 100644
index 00000000..3a5456d1
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f195.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f196.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f196.png
new file mode 100644
index 00000000..85c41699
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f196.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f197.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f197.png
new file mode 100644
index 00000000..7babf2b2
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f197.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f198.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f198.png
new file mode 100644
index 00000000..dc40548e
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f198.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f199.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f199.png
new file mode 100644
index 00000000..9e365e4a
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f199.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f19a.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f19a.png
new file mode 100644
index 00000000..7291c3d1
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f19a.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f1e8_1f1f3.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f1e8_1f1f3.png
new file mode 100644
index 00000000..d79d2e03
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f1e8_1f1f3.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f1e9_1f1ea.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f1e9_1f1ea.png
new file mode 100644
index 00000000..54d7fd96
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f1e9_1f1ea.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f1ea_1f1f8.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f1ea_1f1f8.png
new file mode 100644
index 00000000..0cc8c8ea
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f1ea_1f1f8.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f1eb_1f1f7.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f1eb_1f1f7.png
new file mode 100644
index 00000000..af1ab4c2
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f1eb_1f1f7.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f1ec_1f1e7.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f1ec_1f1e7.png
new file mode 100644
index 00000000..60891d6e
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f1ec_1f1e7.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f1ee_1f1f9.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f1ee_1f1f9.png
new file mode 100644
index 00000000..28f32eb4
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f1ee_1f1f9.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f1ef_1f1f5.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f1ef_1f1f5.png
new file mode 100644
index 00000000..0bf73305
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f1ef_1f1f5.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f1f0_1f1f7.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f1f0_1f1f7.png
new file mode 100644
index 00000000..97ae83e5
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f1f0_1f1f7.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f1f7_1f1fa.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f1f7_1f1fa.png
new file mode 100644
index 00000000..d87ed85e
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f1f7_1f1fa.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f1fa_1f1f8.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f1fa_1f1f8.png
new file mode 100644
index 00000000..d99223df
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f1fa_1f1f8.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f201.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f201.png
new file mode 100644
index 00000000..ef5519ec
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f201.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f202.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f202.png
new file mode 100644
index 00000000..4be1f4c7
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f202.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f21a.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f21a.png
new file mode 100644
index 00000000..2f19a71c
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f21a.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f22f.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f22f.png
new file mode 100644
index 00000000..495ce01b
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f22f.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f232.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f232.png
new file mode 100644
index 00000000..eb2ad640
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f232.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f233.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f233.png
new file mode 100644
index 00000000..4438ff2b
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f233.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f234.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f234.png
new file mode 100644
index 00000000..d039a91b
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f234.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f235.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f235.png
new file mode 100644
index 00000000..a3b8c0c1
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f235.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f236.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f236.png
new file mode 100644
index 00000000..4494a12c
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f236.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f237.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f237.png
new file mode 100644
index 00000000..68ea8d60
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f237.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f238.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f238.png
new file mode 100644
index 00000000..48157fb5
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f238.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f239.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f239.png
new file mode 100644
index 00000000..cca958c7
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f239.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f23a.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f23a.png
new file mode 100644
index 00000000..37909757
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f23a.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f250.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f250.png
new file mode 100644
index 00000000..f1c93ded
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f250.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f251.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f251.png
new file mode 100644
index 00000000..eabeec88
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f251.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f300.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f300.png
new file mode 100644
index 00000000..47dc2813
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f300.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f301.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f301.png
new file mode 100644
index 00000000..d317b007
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f301.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f302.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f302.png
new file mode 100644
index 00000000..2068fb79
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f302.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f303.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f303.png
new file mode 100644
index 00000000..731803e3
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f303.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f304.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f304.png
new file mode 100644
index 00000000..43533fc5
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f304.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f305.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f305.png
new file mode 100644
index 00000000..4cffbad9
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f305.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f306.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f306.png
new file mode 100644
index 00000000..9ee8e9ed
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f306.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f307.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f307.png
new file mode 100644
index 00000000..65041c06
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f307.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f308.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f308.png
new file mode 100644
index 00000000..2718c5fb
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f308.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f309.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f309.png
new file mode 100644
index 00000000..829133bc
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f309.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f30a.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f30a.png
new file mode 100644
index 00000000..9d7ac595
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f30a.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f30b.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f30b.png
new file mode 100644
index 00000000..958f1be0
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f30b.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f30c.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f30c.png
new file mode 100644
index 00000000..2bea92b8
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f30c.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f30d.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f30d.png
new file mode 100644
index 00000000..151a5eb9
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f30d.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f30e.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f30e.png
new file mode 100644
index 00000000..106e6111
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f30e.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f30f.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f30f.png
new file mode 100644
index 00000000..8f8ff7cd
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f30f.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f310.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f310.png
new file mode 100644
index 00000000..2e948b42
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f310.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f311.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f311.png
new file mode 100644
index 00000000..a8a9d0f1
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f311.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f312.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f312.png
new file mode 100644
index 00000000..76d74282
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f312.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f313.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f313.png
new file mode 100644
index 00000000..1276f2e6
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f313.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f314.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f314.png
new file mode 100644
index 00000000..3a81f693
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f314.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f315.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f315.png
new file mode 100644
index 00000000..d9ff086a
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f315.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f316.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f316.png
new file mode 100644
index 00000000..705005d1
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f316.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f317.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f317.png
new file mode 100644
index 00000000..bd91605e
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f317.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f318.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f318.png
new file mode 100644
index 00000000..6d425a99
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f318.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f319.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f319.png
new file mode 100644
index 00000000..ab65ae83
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f319.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f31a.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f31a.png
new file mode 100644
index 00000000..bd0f763b
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f31a.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f31b.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f31b.png
new file mode 100644
index 00000000..f147db29
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f31b.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f31c.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f31c.png
new file mode 100644
index 00000000..e523c19c
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f31c.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f31d.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f31d.png
new file mode 100644
index 00000000..dcd8a2b4
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f31d.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f31e.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f31e.png
new file mode 100644
index 00000000..5993c3b8
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f31e.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f31f.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f31f.png
new file mode 100644
index 00000000..7e735b41
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f31f.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f330.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f330.png
new file mode 100644
index 00000000..9f2fdaea
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f330.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f331.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f331.png
new file mode 100644
index 00000000..da2ff7b7
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f331.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f332.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f332.png
new file mode 100644
index 00000000..2a047bc9
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f332.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f333.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f333.png
new file mode 100644
index 00000000..16af23b0
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f333.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f334.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f334.png
new file mode 100644
index 00000000..34c9d480
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f334.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f335.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f335.png
new file mode 100644
index 00000000..a77e355b
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f335.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f337.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f337.png
new file mode 100644
index 00000000..cc0bfb81
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f337.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f338.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f338.png
new file mode 100644
index 00000000..dab7a580
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f338.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f339.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f339.png
new file mode 100644
index 00000000..e00f9f2a
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f339.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f33a.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f33a.png
new file mode 100644
index 00000000..00e66b57
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f33a.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f33b.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f33b.png
new file mode 100644
index 00000000..ca48befe
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f33b.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f33c.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f33c.png
new file mode 100644
index 00000000..d73a39da
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f33c.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f33d.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f33d.png
new file mode 100644
index 00000000..793e0fba
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f33d.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f33e.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f33e.png
new file mode 100644
index 00000000..e5722788
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f33e.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f33f.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f33f.png
new file mode 100644
index 00000000..5515e952
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f33f.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f340.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f340.png
new file mode 100644
index 00000000..42879d2e
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f340.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f341.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f341.png
new file mode 100644
index 00000000..61975c1b
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f341.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f342.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f342.png
new file mode 100644
index 00000000..0e50ce27
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f342.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f343.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f343.png
new file mode 100644
index 00000000..4e417c1f
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f343.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f344.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f344.png
new file mode 100644
index 00000000..dc2e974f
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f344.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f345.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f345.png
new file mode 100644
index 00000000..fcfe9176
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f345.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f346.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f346.png
new file mode 100644
index 00000000..8a9f10aa
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f346.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f347.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f347.png
new file mode 100644
index 00000000..90079555
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f347.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f348.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f348.png
new file mode 100644
index 00000000..e0d89062
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f348.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f349.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f349.png
new file mode 100644
index 00000000..2652e5aa
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f349.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f34a.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f34a.png
new file mode 100644
index 00000000..08dd2cf9
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f34a.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f34b.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f34b.png
new file mode 100644
index 00000000..7f9bde30
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f34b.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f34c.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f34c.png
new file mode 100644
index 00000000..22149459
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f34c.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f34d.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f34d.png
new file mode 100644
index 00000000..11397fac
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f34d.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f34e.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f34e.png
new file mode 100644
index 00000000..6a1b5229
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f34e.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f34f.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f34f.png
new file mode 100644
index 00000000..dfd4cf2e
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f34f.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f350.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f350.png
new file mode 100644
index 00000000..b78c9693
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f350.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f351.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f351.png
new file mode 100644
index 00000000..cdca1f39
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f351.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f352.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f352.png
new file mode 100644
index 00000000..82832cb6
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f352.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f353.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f353.png
new file mode 100644
index 00000000..5fd5a2aa
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f353.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f354.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f354.png
new file mode 100644
index 00000000..0be7873b
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f354.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f355.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f355.png
new file mode 100644
index 00000000..0bcb35dd
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f355.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f356.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f356.png
new file mode 100644
index 00000000..12f8d0f2
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f356.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f357.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f357.png
new file mode 100644
index 00000000..a67cd384
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f357.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f358.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f358.png
new file mode 100644
index 00000000..4fb752f6
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f358.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f359.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f359.png
new file mode 100644
index 00000000..ac8c92ab
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f359.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f35a.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f35a.png
new file mode 100644
index 00000000..04d3e5db
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f35a.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f35b.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f35b.png
new file mode 100644
index 00000000..7e5e1304
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f35b.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f35c.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f35c.png
new file mode 100644
index 00000000..b7544103
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f35c.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f35d.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f35d.png
new file mode 100644
index 00000000..88689813
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f35d.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f35e.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f35e.png
new file mode 100644
index 00000000..cba06c52
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f35e.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f35f.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f35f.png
new file mode 100644
index 00000000..bae167a3
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f35f.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f360.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f360.png
new file mode 100644
index 00000000..9452e776
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f360.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f361.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f361.png
new file mode 100644
index 00000000..6666409c
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f361.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f362.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f362.png
new file mode 100644
index 00000000..70af8576
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f362.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f363.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f363.png
new file mode 100644
index 00000000..549aa21f
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f363.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f364.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f364.png
new file mode 100644
index 00000000..240c9b15
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f364.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f365.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f365.png
new file mode 100644
index 00000000..2576744c
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f365.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f366.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f366.png
new file mode 100644
index 00000000..7e169d74
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f366.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f367.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f367.png
new file mode 100644
index 00000000..2c54aac3
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f367.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f368.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f368.png
new file mode 100644
index 00000000..9349e2f7
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f368.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f369.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f369.png
new file mode 100644
index 00000000..872f6d85
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f369.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f36a.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f36a.png
new file mode 100644
index 00000000..d061014b
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f36a.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f36b.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f36b.png
new file mode 100644
index 00000000..fa782383
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f36b.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f36c.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f36c.png
new file mode 100644
index 00000000..be3c993e
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f36c.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f36d.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f36d.png
new file mode 100644
index 00000000..d80575c7
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f36d.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f36e.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f36e.png
new file mode 100644
index 00000000..0e1bcfe5
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f36e.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f36f.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f36f.png
new file mode 100644
index 00000000..5b54d5d6
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f36f.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f370.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f370.png
new file mode 100644
index 00000000..8d2dd9f8
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f370.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f371.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f371.png
new file mode 100644
index 00000000..6d64b48d
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f371.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f372.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f372.png
new file mode 100644
index 00000000..156b3ffe
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f372.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f373.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f373.png
new file mode 100644
index 00000000..619ec5d7
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f373.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f374.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f374.png
new file mode 100644
index 00000000..8e834171
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f374.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f375.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f375.png
new file mode 100644
index 00000000..1be8e235
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f375.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f376.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f376.png
new file mode 100644
index 00000000..532bbfba
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f376.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f377.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f377.png
new file mode 100644
index 00000000..8129495f
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f377.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f378.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f378.png
new file mode 100644
index 00000000..69468a52
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f378.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f379.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f379.png
new file mode 100644
index 00000000..52571da0
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f379.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f37a.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f37a.png
new file mode 100644
index 00000000..6cf497db
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f37a.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f37b.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f37b.png
new file mode 100644
index 00000000..63146af0
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f37b.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f37c.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f37c.png
new file mode 100644
index 00000000..af5f2fd6
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f37c.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f380.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f380.png
new file mode 100644
index 00000000..c202602b
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f380.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f381.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f381.png
new file mode 100644
index 00000000..db41bb24
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f381.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f382.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f382.png
new file mode 100644
index 00000000..9b236e1f
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f382.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f383.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f383.png
new file mode 100644
index 00000000..db9d788e
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f383.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f384.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f384.png
new file mode 100644
index 00000000..477d0cf6
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f384.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f385.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f385.png
new file mode 100644
index 00000000..e14bc286
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f385.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f386.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f386.png
new file mode 100644
index 00000000..a337926f
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f386.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f387.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f387.png
new file mode 100644
index 00000000..5d2423ff
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f387.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f388.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f388.png
new file mode 100644
index 00000000..8e2b90b0
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f388.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f389.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f389.png
new file mode 100644
index 00000000..b70bbeb4
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f389.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f38a.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f38a.png
new file mode 100644
index 00000000..d1c54d49
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f38a.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f38b.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f38b.png
new file mode 100644
index 00000000..d3fa582c
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f38b.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f38c.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f38c.png
new file mode 100644
index 00000000..56f39e7e
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f38c.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f38d.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f38d.png
new file mode 100644
index 00000000..058295ef
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f38d.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f38e.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f38e.png
new file mode 100644
index 00000000..51021723
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f38e.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f38f.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f38f.png
new file mode 100644
index 00000000..4c9ce190
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f38f.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f390.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f390.png
new file mode 100644
index 00000000..a59d1f98
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f390.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f391.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f391.png
new file mode 100644
index 00000000..6fdc3aa7
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f391.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f392.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f392.png
new file mode 100644
index 00000000..cc41a185
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f392.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f393.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f393.png
new file mode 100644
index 00000000..639734ec
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f393.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3a0.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3a0.png
new file mode 100644
index 00000000..b8977198
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3a0.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3a1.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3a1.png
new file mode 100644
index 00000000..b2c9c601
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3a1.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3a2.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3a2.png
new file mode 100644
index 00000000..2eb38a8c
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3a2.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3a3.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3a3.png
new file mode 100644
index 00000000..09d2bb70
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3a3.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3a4.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3a4.png
new file mode 100644
index 00000000..8ed2dbd2
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3a4.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3a5.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3a5.png
new file mode 100644
index 00000000..92b6d576
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3a5.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3a6.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3a6.png
new file mode 100644
index 00000000..ecc180fe
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3a6.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3a7.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3a7.png
new file mode 100644
index 00000000..72f5fdce
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3a7.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3a8.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3a8.png
new file mode 100644
index 00000000..028d0906
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3a8.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3a9.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3a9.png
new file mode 100644
index 00000000..e0cfc211
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3a9.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3aa.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3aa.png
new file mode 100644
index 00000000..ca366602
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3aa.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3ab.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3ab.png
new file mode 100644
index 00000000..c4ce971f
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3ab.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3ac.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3ac.png
new file mode 100644
index 00000000..0184ae65
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3ac.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3ad.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3ad.png
new file mode 100644
index 00000000..0643b27e
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3ad.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3ae.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3ae.png
new file mode 100644
index 00000000..2818b5d4
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3ae.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3af.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3af.png
new file mode 100644
index 00000000..aac2e5d1
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3af.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3b0.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3b0.png
new file mode 100644
index 00000000..666fa5fa
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3b0.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3b1.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3b1.png
new file mode 100644
index 00000000..777124fd
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3b1.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3b2.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3b2.png
new file mode 100644
index 00000000..49da8cf0
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3b2.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3b3.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3b3.png
new file mode 100644
index 00000000..3582d63b
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3b3.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3b4.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3b4.png
new file mode 100644
index 00000000..c4da4ac7
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3b4.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3b5.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3b5.png
new file mode 100644
index 00000000..749e1ba0
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3b5.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3b6.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3b6.png
new file mode 100644
index 00000000..a53ec6e5
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3b6.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3b7.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3b7.png
new file mode 100644
index 00000000..b60a3e15
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3b7.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3b8.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3b8.png
new file mode 100644
index 00000000..3ccd524f
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3b8.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3b9.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3b9.png
new file mode 100644
index 00000000..5749ab8b
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3b9.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3ba.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3ba.png
new file mode 100644
index 00000000..3289022c
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3ba.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3bb.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3bb.png
new file mode 100644
index 00000000..f3085775
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3bb.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3bc.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3bc.png
new file mode 100644
index 00000000..a7d0d76b
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3bc.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3bd.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3bd.png
new file mode 100644
index 00000000..dfa9a7f6
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3bd.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3be.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3be.png
new file mode 100644
index 00000000..be95cd77
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3be.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3bf.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3bf.png
new file mode 100644
index 00000000..20f22045
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3bf.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3c0.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3c0.png
new file mode 100644
index 00000000..6ea9b765
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3c0.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3c1.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3c1.png
new file mode 100644
index 00000000..f6347466
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3c1.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3c2.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3c2.png
new file mode 100644
index 00000000..57e68f09
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3c2.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3c3.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3c3.png
new file mode 100644
index 00000000..d75e4aa4
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3c3.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3c4.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3c4.png
new file mode 100644
index 00000000..010c29e2
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3c4.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3c6.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3c6.png
new file mode 100644
index 00000000..4d8f33b6
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3c6.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3c7.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3c7.png
new file mode 100644
index 00000000..89bcba0f
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3c7.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3c8.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3c8.png
new file mode 100644
index 00000000..8ae16e91
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3c8.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3c9.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3c9.png
new file mode 100644
index 00000000..3c604b3e
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3c9.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3ca.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3ca.png
new file mode 100644
index 00000000..367001c5
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3ca.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3e0.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3e0.png
new file mode 100644
index 00000000..4d5514a9
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3e0.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3e1.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3e1.png
new file mode 100644
index 00000000..20160c76
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3e1.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3e2.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3e2.png
new file mode 100644
index 00000000..4dba9c97
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3e2.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3e3.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3e3.png
new file mode 100644
index 00000000..6dd88b4b
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3e3.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3e4.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3e4.png
new file mode 100644
index 00000000..fa96db79
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3e4.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3e5.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3e5.png
new file mode 100644
index 00000000..874f408d
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3e5.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3e6.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3e6.png
new file mode 100644
index 00000000..6dd112ec
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3e6.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3e7.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3e7.png
new file mode 100644
index 00000000..e514ecbd
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3e7.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3e8.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3e8.png
new file mode 100644
index 00000000..c3ed57ba
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3e8.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3e9.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3e9.png
new file mode 100644
index 00000000..0959ff10
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3e9.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3ea.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3ea.png
new file mode 100644
index 00000000..fd042212
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3ea.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3eb.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3eb.png
new file mode 100644
index 00000000..d55a34e6
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3eb.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3ec.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3ec.png
new file mode 100644
index 00000000..59d239a8
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3ec.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3ed.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3ed.png
new file mode 100644
index 00000000..3d81ba06
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3ed.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3ee.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3ee.png
new file mode 100644
index 00000000..8987ad86
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3ee.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3ef.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3ef.png
new file mode 100644
index 00000000..347e9228
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3ef.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3f0.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3f0.png
new file mode 100644
index 00000000..a619b042
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f3f0.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f400.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f400.png
new file mode 100644
index 00000000..7b57a28f
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f400.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f401.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f401.png
new file mode 100644
index 00000000..3a1bd23e
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f401.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f402.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f402.png
new file mode 100644
index 00000000..66a557cb
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f402.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f403.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f403.png
new file mode 100644
index 00000000..d809c547
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f403.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f404.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f404.png
new file mode 100644
index 00000000..45f45d68
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f404.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f405.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f405.png
new file mode 100644
index 00000000..91671ad5
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f405.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f406.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f406.png
new file mode 100644
index 00000000..2fdf254b
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f406.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f407.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f407.png
new file mode 100644
index 00000000..a0fbac27
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f407.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f408.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f408.png
new file mode 100644
index 00000000..42b7a9e1
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f408.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f409.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f409.png
new file mode 100644
index 00000000..90c1c9f6
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f409.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f40a.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f40a.png
new file mode 100644
index 00000000..62614569
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f40a.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f40b.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f40b.png
new file mode 100644
index 00000000..9f39167d
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f40b.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f40c.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f40c.png
new file mode 100644
index 00000000..3b726409
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f40c.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f40d.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f40d.png
new file mode 100644
index 00000000..6be0f159
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f40d.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f40e.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f40e.png
new file mode 100644
index 00000000..7f03a208
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f40e.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f40f.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f40f.png
new file mode 100644
index 00000000..078f1d58
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f40f.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f410.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f410.png
new file mode 100644
index 00000000..1137836f
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f410.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f411.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f411.png
new file mode 100644
index 00000000..713285c7
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f411.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f412.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f412.png
new file mode 100644
index 00000000..ae4076be
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f412.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f413.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f413.png
new file mode 100644
index 00000000..96a4a0ff
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f413.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f414.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f414.png
new file mode 100644
index 00000000..0d6d4580
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f414.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f415.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f415.png
new file mode 100644
index 00000000..e2b019f7
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f415.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f416.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f416.png
new file mode 100644
index 00000000..75ca5864
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f416.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f417.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f417.png
new file mode 100644
index 00000000..387a4b2e
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f417.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f418.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f418.png
new file mode 100644
index 00000000..68c0b235
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f418.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f419.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f419.png
new file mode 100644
index 00000000..3816372e
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f419.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f41a.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f41a.png
new file mode 100644
index 00000000..807e5233
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f41a.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f41b.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f41b.png
new file mode 100644
index 00000000..a1453888
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f41b.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f41c.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f41c.png
new file mode 100644
index 00000000..1ede54c1
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f41c.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f41d.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f41d.png
new file mode 100644
index 00000000..2bec410b
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f41d.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f41e.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f41e.png
new file mode 100644
index 00000000..80b92065
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f41e.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f41f.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f41f.png
new file mode 100644
index 00000000..d6563c64
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f41f.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f420.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f420.png
new file mode 100644
index 00000000..f3c03db3
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f420.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f421.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f421.png
new file mode 100644
index 00000000..2dd0d85f
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f421.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f422.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f422.png
new file mode 100644
index 00000000..799b6849
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f422.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f423.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f423.png
new file mode 100644
index 00000000..961439aa
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f423.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f424.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f424.png
new file mode 100644
index 00000000..c8e1eb5f
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f424.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f425.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f425.png
new file mode 100644
index 00000000..6b084ab8
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f425.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f426.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f426.png
new file mode 100644
index 00000000..84e69f6b
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f426.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f427.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f427.png
new file mode 100644
index 00000000..2ebf0405
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f427.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f428.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f428.png
new file mode 100644
index 00000000..52ce947b
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f428.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f429.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f429.png
new file mode 100644
index 00000000..9ee0ead8
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f429.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f42a.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f42a.png
new file mode 100644
index 00000000..8e127751
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f42a.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f42b.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f42b.png
new file mode 100644
index 00000000..89ca0b49
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f42b.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f42c.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f42c.png
new file mode 100644
index 00000000..3e404285
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f42c.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f42d.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f42d.png
new file mode 100644
index 00000000..0370fa50
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f42d.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f42e.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f42e.png
new file mode 100644
index 00000000..0d6e0a84
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f42e.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f42f.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f42f.png
new file mode 100644
index 00000000..35485279
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f42f.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f430.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f430.png
new file mode 100644
index 00000000..4928af99
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f430.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f431.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f431.png
new file mode 100644
index 00000000..5d4cdc5a
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f431.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f432.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f432.png
new file mode 100644
index 00000000..9b25664a
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f432.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f433.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f433.png
new file mode 100644
index 00000000..075a41d1
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f433.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f434.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f434.png
new file mode 100644
index 00000000..b9267c8a
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f434.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f435.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f435.png
new file mode 100644
index 00000000..3b93600a
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f435.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f436.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f436.png
new file mode 100644
index 00000000..eabe2194
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f436.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f437.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f437.png
new file mode 100644
index 00000000..a4a9cd88
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f437.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f438.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f438.png
new file mode 100644
index 00000000..0dd6eb4f
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f438.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f439.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f439.png
new file mode 100644
index 00000000..d856c744
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f439.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f43a.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f43a.png
new file mode 100644
index 00000000..9d40a6bd
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f43a.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f43b.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f43b.png
new file mode 100644
index 00000000..699f8d6c
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f43b.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f43c.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f43c.png
new file mode 100644
index 00000000..1daf9c28
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f43c.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f43d.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f43d.png
new file mode 100644
index 00000000..ccd61af9
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f43d.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f43e.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f43e.png
new file mode 100644
index 00000000..cf610df6
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f43e.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f440.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f440.png
new file mode 100644
index 00000000..aa7de710
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f440.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f442.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f442.png
new file mode 100644
index 00000000..8ec9c143
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f442.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f443.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f443.png
new file mode 100644
index 00000000..b1841169
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f443.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f444.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f444.png
new file mode 100644
index 00000000..077cc85b
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f444.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f445.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f445.png
new file mode 100644
index 00000000..78316b1e
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f445.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f446.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f446.png
new file mode 100644
index 00000000..ddc5d311
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f446.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f447.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f447.png
new file mode 100644
index 00000000..ab56ecd2
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f447.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f448.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f448.png
new file mode 100644
index 00000000..3661ba53
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f448.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f449.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f449.png
new file mode 100644
index 00000000..47a35fd2
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f449.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f44a.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f44a.png
new file mode 100644
index 00000000..cf4f656f
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f44a.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f44b.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f44b.png
new file mode 100644
index 00000000..52168819
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f44b.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f44c.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f44c.png
new file mode 100644
index 00000000..9d405a7c
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f44c.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f44d.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f44d.png
new file mode 100644
index 00000000..a6a8c98b
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f44d.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f44e.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f44e.png
new file mode 100644
index 00000000..b53d1b85
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f44e.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f44f.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f44f.png
new file mode 100644
index 00000000..0d34bf17
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f44f.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f450.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f450.png
new file mode 100644
index 00000000..d11b8c35
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f450.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f451.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f451.png
new file mode 100644
index 00000000..5fd8111d
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f451.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f452.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f452.png
new file mode 100644
index 00000000..d5fdf64d
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f452.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f453.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f453.png
new file mode 100644
index 00000000..eb882775
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f453.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f454.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f454.png
new file mode 100644
index 00000000..ff9efecb
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f454.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f455.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f455.png
new file mode 100644
index 00000000..e55197b9
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f455.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f456.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f456.png
new file mode 100644
index 00000000..fcb9db75
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f456.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f457.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f457.png
new file mode 100644
index 00000000..ae4ad367
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f457.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f458.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f458.png
new file mode 100644
index 00000000..c2fbc3fb
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f458.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f459.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f459.png
new file mode 100644
index 00000000..dc99dd53
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f459.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f45a.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f45a.png
new file mode 100644
index 00000000..8c866ec4
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f45a.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f45b.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f45b.png
new file mode 100644
index 00000000..c3a33cff
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f45b.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f45c.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f45c.png
new file mode 100644
index 00000000..e9065505
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f45c.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f45d.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f45d.png
new file mode 100644
index 00000000..8ae855a8
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f45d.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f45e.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f45e.png
new file mode 100644
index 00000000..064a713e
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f45e.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f45f.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f45f.png
new file mode 100644
index 00000000..f57b1d25
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f45f.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f460.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f460.png
new file mode 100644
index 00000000..c172cf2c
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f460.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f461.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f461.png
new file mode 100644
index 00000000..06d9e705
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f461.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f462.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f462.png
new file mode 100644
index 00000000..88cf7634
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f462.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f463.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f463.png
new file mode 100644
index 00000000..c1deb545
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f463.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f464.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f464.png
new file mode 100644
index 00000000..22cf7315
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f464.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f465.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f465.png
new file mode 100644
index 00000000..e095fd71
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f465.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f466.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f466.png
new file mode 100644
index 00000000..5229a676
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f466.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f467.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f467.png
new file mode 100644
index 00000000..2201da45
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f467.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f468.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f468.png
new file mode 100644
index 00000000..0630ef9e
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f468.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f469.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f469.png
new file mode 100644
index 00000000..79d2a02d
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f469.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f46a.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f46a.png
new file mode 100644
index 00000000..37cfb938
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f46a.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f46b.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f46b.png
new file mode 100644
index 00000000..8cec7408
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f46b.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f46c.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f46c.png
new file mode 100644
index 00000000..f0b646fd
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f46c.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f46d.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f46d.png
new file mode 100644
index 00000000..96bf6dfe
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f46d.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f46e.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f46e.png
new file mode 100644
index 00000000..889fb9fc
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f46e.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f46f.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f46f.png
new file mode 100644
index 00000000..efaf9509
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f46f.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f470.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f470.png
new file mode 100644
index 00000000..5d57da2f
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f470.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f471.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f471.png
new file mode 100644
index 00000000..19c3f317
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f471.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f472.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f472.png
new file mode 100644
index 00000000..2560803f
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f472.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f473.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f473.png
new file mode 100644
index 00000000..4b77e43b
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f473.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f474.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f474.png
new file mode 100644
index 00000000..c272701e
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f474.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f475.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f475.png
new file mode 100644
index 00000000..526626be
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f475.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f476.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f476.png
new file mode 100644
index 00000000..7921dfae
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f476.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f477.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f477.png
new file mode 100644
index 00000000..d371662e
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f477.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f478.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f478.png
new file mode 100644
index 00000000..feed8214
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f478.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f479.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f479.png
new file mode 100644
index 00000000..835a0292
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f479.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f47a.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f47a.png
new file mode 100644
index 00000000..ee76ae30
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f47a.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f47b.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f47b.png
new file mode 100644
index 00000000..d0b4f57f
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f47b.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f47c.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f47c.png
new file mode 100644
index 00000000..23b32010
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f47c.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f47d.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f47d.png
new file mode 100644
index 00000000..a9dcf40f
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f47d.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f47e.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f47e.png
new file mode 100644
index 00000000..13b4f7b9
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f47e.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f47f.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f47f.png
new file mode 100644
index 00000000..62a40058
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f47f.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f480.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f480.png
new file mode 100644
index 00000000..56c3a72a
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f480.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f481.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f481.png
new file mode 100644
index 00000000..3b2204d3
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f481.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f482.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f482.png
new file mode 100644
index 00000000..69d343d0
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f482.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f483.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f483.png
new file mode 100644
index 00000000..671ab819
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f483.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f484.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f484.png
new file mode 100644
index 00000000..d97ff869
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f484.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f485.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f485.png
new file mode 100644
index 00000000..fd0f61f2
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f485.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f486.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f486.png
new file mode 100644
index 00000000..e4522303
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f486.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f487.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f487.png
new file mode 100644
index 00000000..54e058d3
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f487.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f488.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f488.png
new file mode 100644
index 00000000..c487fdac
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f488.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f489.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f489.png
new file mode 100644
index 00000000..7d002ec5
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f489.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f48a.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f48a.png
new file mode 100644
index 00000000..737795b4
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f48a.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f48b.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f48b.png
new file mode 100644
index 00000000..6098a9c7
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f48b.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f48c.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f48c.png
new file mode 100644
index 00000000..ea79e207
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f48c.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f48d.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f48d.png
new file mode 100644
index 00000000..2068281d
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f48d.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f48e.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f48e.png
new file mode 100644
index 00000000..d282426c
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f48e.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f48f.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f48f.png
new file mode 100644
index 00000000..6b40a3ae
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f48f.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f490.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f490.png
new file mode 100644
index 00000000..a6d0998b
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f490.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f491.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f491.png
new file mode 100644
index 00000000..061da00d
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f491.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f492.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f492.png
new file mode 100644
index 00000000..0a7b20f7
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f492.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f493.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f493.png
new file mode 100644
index 00000000..2b478912
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f493.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f494.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f494.png
new file mode 100644
index 00000000..5ff63fa0
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f494.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f495.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f495.png
new file mode 100644
index 00000000..24fe2097
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f495.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f496.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f496.png
new file mode 100644
index 00000000..3d9a9b18
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f496.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f497.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f497.png
new file mode 100644
index 00000000..cd429d32
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f497.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f498.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f498.png
new file mode 100644
index 00000000..3312561a
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f498.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f499.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f499.png
new file mode 100644
index 00000000..7f91aebd
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f499.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f49a.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f49a.png
new file mode 100644
index 00000000..5786b4c7
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f49a.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f49b.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f49b.png
new file mode 100644
index 00000000..113d52e8
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f49b.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f49c.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f49c.png
new file mode 100644
index 00000000..ce024238
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f49c.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f49d.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f49d.png
new file mode 100644
index 00000000..a5a2f546
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f49d.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f49e.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f49e.png
new file mode 100644
index 00000000..adffa011
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f49e.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f49f.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f49f.png
new file mode 100644
index 00000000..f254e631
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f49f.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4a0.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4a0.png
new file mode 100644
index 00000000..9ad5fef4
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4a0.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4a1.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4a1.png
new file mode 100644
index 00000000..959a69a6
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4a1.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4a2.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4a2.png
new file mode 100644
index 00000000..77b600bb
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4a2.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4a3.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4a3.png
new file mode 100644
index 00000000..f47f1a0f
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4a3.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4a4.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4a4.png
new file mode 100644
index 00000000..06acfc90
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4a4.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4a5.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4a5.png
new file mode 100644
index 00000000..ccc8b6ee
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4a5.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4a6.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4a6.png
new file mode 100644
index 00000000..6fcc4832
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4a6.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4a7.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4a7.png
new file mode 100644
index 00000000..412dad0f
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4a7.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4a8.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4a8.png
new file mode 100644
index 00000000..7ca125b8
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4a8.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4a9.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4a9.png
new file mode 100644
index 00000000..de7c9589
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4a9.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4aa.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4aa.png
new file mode 100644
index 00000000..55c04bd5
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4aa.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4ab.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4ab.png
new file mode 100644
index 00000000..afdc6456
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4ab.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4ac.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4ac.png
new file mode 100644
index 00000000..eace2a2b
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4ac.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4ad.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4ad.png
new file mode 100644
index 00000000..d54c4728
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4ad.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4ae.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4ae.png
new file mode 100644
index 00000000..c7ba70d7
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4ae.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4af.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4af.png
new file mode 100644
index 00000000..f83afe89
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4af.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4b0.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4b0.png
new file mode 100644
index 00000000..257a42dd
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4b0.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4b1.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4b1.png
new file mode 100644
index 00000000..d208a9df
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4b1.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4b2.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4b2.png
new file mode 100644
index 00000000..ba9008e5
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4b2.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4b3.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4b3.png
new file mode 100644
index 00000000..d2028c49
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4b3.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4b4.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4b4.png
new file mode 100644
index 00000000..b264f87b
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4b4.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4b5.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4b5.png
new file mode 100644
index 00000000..9035db86
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4b5.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4b6.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4b6.png
new file mode 100644
index 00000000..fc627d58
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4b6.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4b7.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4b7.png
new file mode 100644
index 00000000..cc729a33
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4b7.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4b8.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4b8.png
new file mode 100644
index 00000000..59481da0
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4b8.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4b9.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4b9.png
new file mode 100644
index 00000000..da834963
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4b9.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4ba.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4ba.png
new file mode 100644
index 00000000..834536de
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4ba.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4bb.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4bb.png
new file mode 100644
index 00000000..1936847c
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4bb.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4bc.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4bc.png
new file mode 100644
index 00000000..a7e2173f
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4bc.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4bd.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4bd.png
new file mode 100644
index 00000000..a4ede2fe
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4bd.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4be.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4be.png
new file mode 100644
index 00000000..7bbc8bf6
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4be.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4bf.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4bf.png
new file mode 100644
index 00000000..7514a64e
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4bf.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4c0.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4c0.png
new file mode 100644
index 00000000..015f49aa
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4c0.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4c1.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4c1.png
new file mode 100644
index 00000000..2271f9cf
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4c1.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4c2.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4c2.png
new file mode 100644
index 00000000..c017e1c8
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4c2.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4c3.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4c3.png
new file mode 100644
index 00000000..a29b72e9
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4c3.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4c4.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4c4.png
new file mode 100644
index 00000000..9dec7c3c
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4c4.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4c5.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4c5.png
new file mode 100644
index 00000000..1e4e3138
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4c5.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4c6.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4c6.png
new file mode 100644
index 00000000..fa8a72e2
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4c6.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4c7.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4c7.png
new file mode 100644
index 00000000..ce3e45a9
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4c7.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4c8.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4c8.png
new file mode 100644
index 00000000..d4b5efc9
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4c8.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4c9.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4c9.png
new file mode 100644
index 00000000..923aa789
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4c9.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4ca.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4ca.png
new file mode 100644
index 00000000..0dc5e22b
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4ca.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4cb.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4cb.png
new file mode 100644
index 00000000..f0cfa3f3
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4cb.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4cc.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4cc.png
new file mode 100644
index 00000000..856ac4ce
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4cc.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4cd.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4cd.png
new file mode 100644
index 00000000..0bd8daf1
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4cd.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4ce.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4ce.png
new file mode 100644
index 00000000..3a8ffeeb
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4ce.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4cf.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4cf.png
new file mode 100644
index 00000000..3ba4d5ce
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4cf.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4d0.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4d0.png
new file mode 100644
index 00000000..84352abe
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4d0.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4d1.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4d1.png
new file mode 100644
index 00000000..745a812f
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4d1.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4d2.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4d2.png
new file mode 100644
index 00000000..0a7e46f0
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4d2.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4d3.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4d3.png
new file mode 100644
index 00000000..34d2b0da
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4d3.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4d4.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4d4.png
new file mode 100644
index 00000000..ccaa3dba
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4d4.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4d5.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4d5.png
new file mode 100644
index 00000000..4c6e64f7
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4d5.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4d6.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4d6.png
new file mode 100644
index 00000000..2b6ffca2
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4d6.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4d7.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4d7.png
new file mode 100644
index 00000000..d5ca3cd6
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4d7.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4d8.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4d8.png
new file mode 100644
index 00000000..58677f79
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4d8.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4d9.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4d9.png
new file mode 100644
index 00000000..f504e6a2
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4d9.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4da.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4da.png
new file mode 100644
index 00000000..f327ba53
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4da.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4db.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4db.png
new file mode 100644
index 00000000..a6cdddcb
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4db.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4dc.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4dc.png
new file mode 100644
index 00000000..cb1b5556
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4dc.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4dd.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4dd.png
new file mode 100644
index 00000000..8133e34c
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4dd.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4de.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4de.png
new file mode 100644
index 00000000..5a603f9b
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4de.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4df.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4df.png
new file mode 100644
index 00000000..bfddff03
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4df.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4e0.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4e0.png
new file mode 100644
index 00000000..0bae34a8
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4e0.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4e1.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4e1.png
new file mode 100644
index 00000000..e5348e56
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4e1.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4e2.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4e2.png
new file mode 100644
index 00000000..374a23d4
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4e2.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4e3.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4e3.png
new file mode 100644
index 00000000..04cf93eb
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4e3.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4e4.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4e4.png
new file mode 100644
index 00000000..59490638
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4e4.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4e5.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4e5.png
new file mode 100644
index 00000000..50c0c8b7
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4e5.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4e6.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4e6.png
new file mode 100644
index 00000000..68174d9f
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4e6.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4e7.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4e7.png
new file mode 100644
index 00000000..7b7473e6
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4e7.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4e8.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4e8.png
new file mode 100644
index 00000000..b929a874
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4e8.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4e9.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4e9.png
new file mode 100644
index 00000000..64a7cdeb
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4e9.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4ea.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4ea.png
new file mode 100644
index 00000000..51bf301f
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4ea.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4eb.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4eb.png
new file mode 100644
index 00000000..988faad5
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4eb.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4ec.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4ec.png
new file mode 100644
index 00000000..68fb8fde
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4ec.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4ed.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4ed.png
new file mode 100644
index 00000000..356e0199
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4ed.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4ee.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4ee.png
new file mode 100644
index 00000000..3c5aff04
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4ee.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4ef.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4ef.png
new file mode 100644
index 00000000..a11b1a54
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4ef.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4f0.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4f0.png
new file mode 100644
index 00000000..becd5e9a
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4f0.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4f1.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4f1.png
new file mode 100644
index 00000000..cdf9cccf
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4f1.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4f2.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4f2.png
new file mode 100644
index 00000000..06f66c04
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4f2.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4f3.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4f3.png
new file mode 100644
index 00000000..768e435f
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4f3.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4f4.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4f4.png
new file mode 100644
index 00000000..ba5389bb
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4f4.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4f5.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4f5.png
new file mode 100644
index 00000000..2edc5e67
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4f5.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4f6.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4f6.png
new file mode 100644
index 00000000..7c47b809
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4f6.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4f7.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4f7.png
new file mode 100644
index 00000000..3ace077f
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4f7.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4f9.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4f9.png
new file mode 100644
index 00000000..34c051d7
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4f9.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4fa.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4fa.png
new file mode 100644
index 00000000..cc1caf1c
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4fa.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4fb.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4fb.png
new file mode 100644
index 00000000..48815f3d
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4fb.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4fc.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4fc.png
new file mode 100644
index 00000000..5cb8bbf5
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f4fc.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f500.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f500.png
new file mode 100644
index 00000000..4ea8c664
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f500.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f501.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f501.png
new file mode 100644
index 00000000..2c12fffa
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f501.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f502.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f502.png
new file mode 100644
index 00000000..3251fc61
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f502.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f503.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f503.png
new file mode 100644
index 00000000..13c3a3a3
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f503.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f504.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f504.png
new file mode 100644
index 00000000..ee37316c
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f504.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f505.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f505.png
new file mode 100644
index 00000000..e80ad709
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f505.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f506.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f506.png
new file mode 100644
index 00000000..33d5c786
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f506.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f507.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f507.png
new file mode 100644
index 00000000..70afde1f
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f507.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f508.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f508.png
new file mode 100644
index 00000000..6552d97d
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f508.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f509.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f509.png
new file mode 100644
index 00000000..d95b54bf
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f509.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f50a.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f50a.png
new file mode 100644
index 00000000..1c2b7e51
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f50a.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f50b.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f50b.png
new file mode 100644
index 00000000..58ffd9e2
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f50b.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f50c.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f50c.png
new file mode 100644
index 00000000..42f68454
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f50c.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f50d.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f50d.png
new file mode 100644
index 00000000..056742af
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f50d.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f50e.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f50e.png
new file mode 100644
index 00000000..ddc1440a
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f50e.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f50f.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f50f.png
new file mode 100644
index 00000000..f4e73e14
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f50f.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f510.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f510.png
new file mode 100644
index 00000000..6c8da6ca
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f510.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f511.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f511.png
new file mode 100644
index 00000000..bf053b0d
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f511.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f512.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f512.png
new file mode 100644
index 00000000..aa83835f
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f512.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f513.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f513.png
new file mode 100644
index 00000000..4a903933
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f513.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f514.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f514.png
new file mode 100644
index 00000000..59859df8
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f514.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f515.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f515.png
new file mode 100644
index 00000000..7370450c
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f515.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f516.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f516.png
new file mode 100644
index 00000000..20659d64
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f516.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f517.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f517.png
new file mode 100644
index 00000000..d2eb2407
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f517.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f518.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f518.png
new file mode 100644
index 00000000..71ecd951
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f518.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f519.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f519.png
new file mode 100644
index 00000000..8d9b31b9
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f519.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f51a.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f51a.png
new file mode 100644
index 00000000..1e43af68
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f51a.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f51b.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f51b.png
new file mode 100644
index 00000000..79bd56e8
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f51b.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f51c.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f51c.png
new file mode 100644
index 00000000..1e863b6d
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f51c.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f51d.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f51d.png
new file mode 100644
index 00000000..7d7bf408
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f51d.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f51e.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f51e.png
new file mode 100644
index 00000000..7538ee87
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f51e.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f51f.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f51f.png
new file mode 100644
index 00000000..7ae43d93
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f51f.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f520.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f520.png
new file mode 100644
index 00000000..aae094a5
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f520.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f521.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f521.png
new file mode 100644
index 00000000..b801824e
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f521.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f522.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f522.png
new file mode 100644
index 00000000..f9bb1d03
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f522.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f523.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f523.png
new file mode 100644
index 00000000..0cb6382c
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f523.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f524.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f524.png
new file mode 100644
index 00000000..bb8b462c
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f524.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f525.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f525.png
new file mode 100644
index 00000000..cbded866
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f525.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f526.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f526.png
new file mode 100644
index 00000000..b410517c
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f526.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f527.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f527.png
new file mode 100644
index 00000000..a9ea8766
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f527.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f528.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f528.png
new file mode 100644
index 00000000..c694625f
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f528.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f529.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f529.png
new file mode 100644
index 00000000..99e39b22
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f529.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f52a.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f52a.png
new file mode 100644
index 00000000..1649e672
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f52a.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f52b.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f52b.png
new file mode 100644
index 00000000..32d2c710
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f52b.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f52c.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f52c.png
new file mode 100644
index 00000000..74708ba7
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f52c.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f52d.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f52d.png
new file mode 100644
index 00000000..fe155807
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f52d.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f52e.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f52e.png
new file mode 100644
index 00000000..5f89af7f
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f52e.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f52f.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f52f.png
new file mode 100644
index 00000000..62e2c458
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f52f.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f530.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f530.png
new file mode 100644
index 00000000..9c57a830
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f530.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f531.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f531.png
new file mode 100644
index 00000000..8bdc2bc7
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f531.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f532.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f532.png
new file mode 100644
index 00000000..f89f4d7e
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f532.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f533.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f533.png
new file mode 100644
index 00000000..1146503f
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f533.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f534.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f534.png
new file mode 100644
index 00000000..e0df9684
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f534.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f535.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f535.png
new file mode 100644
index 00000000..8dce0ba3
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f535.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f536.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f536.png
new file mode 100644
index 00000000..e383d6d8
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f536.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f537.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f537.png
new file mode 100644
index 00000000..10437e09
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f537.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f538.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f538.png
new file mode 100644
index 00000000..75b8da24
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f538.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f539.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f539.png
new file mode 100644
index 00000000..a70f8c18
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f539.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f53a.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f53a.png
new file mode 100644
index 00000000..100346c9
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f53a.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f53b.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f53b.png
new file mode 100644
index 00000000..834cfc6e
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f53b.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f53c.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f53c.png
new file mode 100644
index 00000000..1e213ef8
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f53c.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f53d.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f53d.png
new file mode 100644
index 00000000..2ae38590
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f53d.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f550.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f550.png
new file mode 100644
index 00000000..a19dd291
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f550.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f551.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f551.png
new file mode 100644
index 00000000..2f7a7466
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f551.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f552.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f552.png
new file mode 100644
index 00000000..bd51e4e3
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f552.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f553.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f553.png
new file mode 100644
index 00000000..37a72d1d
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f553.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f554.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f554.png
new file mode 100644
index 00000000..1cc95413
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f554.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f555.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f555.png
new file mode 100644
index 00000000..279c7f3f
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f555.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f556.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f556.png
new file mode 100644
index 00000000..50e3a012
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f556.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f557.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f557.png
new file mode 100644
index 00000000..1a4cd2fd
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f557.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f558.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f558.png
new file mode 100644
index 00000000..8eb06de5
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f558.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f559.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f559.png
new file mode 100644
index 00000000..32627f9b
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f559.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f55a.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f55a.png
new file mode 100644
index 00000000..00b2e8c6
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f55a.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f55b.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f55b.png
new file mode 100644
index 00000000..e5e500cf
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f55b.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f55c.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f55c.png
new file mode 100644
index 00000000..6b59f51b
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f55c.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f55d.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f55d.png
new file mode 100644
index 00000000..7e496808
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f55d.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f55e.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f55e.png
new file mode 100644
index 00000000..e2864f2b
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f55e.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f55f.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f55f.png
new file mode 100644
index 00000000..9c9d4739
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f55f.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f560.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f560.png
new file mode 100644
index 00000000..f9d0f99c
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f560.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f561.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f561.png
new file mode 100644
index 00000000..67ad2e99
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f561.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f562.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f562.png
new file mode 100644
index 00000000..9395f687
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f562.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f563.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f563.png
new file mode 100644
index 00000000..776723ae
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f563.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f564.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f564.png
new file mode 100644
index 00000000..cd748035
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f564.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f565.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f565.png
new file mode 100644
index 00000000..8405f1e3
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f565.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f566.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f566.png
new file mode 100644
index 00000000..278afe27
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f566.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f567.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f567.png
new file mode 100644
index 00000000..cc25c62a
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f567.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f5fb.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f5fb.png
new file mode 100644
index 00000000..c75e8b82
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f5fb.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f5fc.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f5fc.png
new file mode 100644
index 00000000..f575fc5e
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f5fc.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f5fd.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f5fd.png
new file mode 100644
index 00000000..eb97b192
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f5fd.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f5fe.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f5fe.png
new file mode 100644
index 00000000..35b8e2bc
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f5fe.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f5ff.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f5ff.png
new file mode 100644
index 00000000..031bb9ce
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f5ff.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f600.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f600.png
new file mode 100644
index 00000000..99779dbe
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f600.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f601.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f601.png
new file mode 100644
index 00000000..820372c2
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f601.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f602.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f602.png
new file mode 100644
index 00000000..210a8c9f
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f602.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f603.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f603.png
new file mode 100644
index 00000000..0f385a96
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f603.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f604.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f604.png
new file mode 100644
index 00000000..34817cf7
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f604.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f605.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f605.png
new file mode 100644
index 00000000..749c0e05
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f605.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f606.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f606.png
new file mode 100644
index 00000000..73798474
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f606.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f607.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f607.png
new file mode 100644
index 00000000..bf481cf6
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f607.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f608.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f608.png
new file mode 100644
index 00000000..4cbad25b
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f608.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f609.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f609.png
new file mode 100644
index 00000000..208abec1
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f609.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f60a.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f60a.png
new file mode 100644
index 00000000..383ddaa9
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f60a.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f60b.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f60b.png
new file mode 100644
index 00000000..ba22141e
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f60b.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f60c.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f60c.png
new file mode 100644
index 00000000..cef05489
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f60c.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f60d.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f60d.png
new file mode 100644
index 00000000..3fd9102c
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f60d.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f60e.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f60e.png
new file mode 100644
index 00000000..67157d0d
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f60e.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f60f.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f60f.png
new file mode 100644
index 00000000..93925145
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f60f.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f610.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f610.png
new file mode 100644
index 00000000..856329d1
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f610.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f611.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f611.png
new file mode 100644
index 00000000..7453423d
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f611.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f612.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f612.png
new file mode 100644
index 00000000..1b66ec1e
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f612.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f613.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f613.png
new file mode 100644
index 00000000..7d20cb15
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f613.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f614.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f614.png
new file mode 100644
index 00000000..1db911ac
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f614.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f615.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f615.png
new file mode 100644
index 00000000..7870f69d
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f615.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f616.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f616.png
new file mode 100644
index 00000000..1c938287
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f616.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f617.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f617.png
new file mode 100644
index 00000000..d5a7406f
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f617.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f618.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f618.png
new file mode 100644
index 00000000..dca65247
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f618.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f619.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f619.png
new file mode 100644
index 00000000..b9193595
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f619.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f61a.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f61a.png
new file mode 100644
index 00000000..89a7039d
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f61a.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f61b.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f61b.png
new file mode 100644
index 00000000..ac98ef9b
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f61b.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f61c.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f61c.png
new file mode 100644
index 00000000..2bb1a28a
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f61c.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f61d.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f61d.png
new file mode 100644
index 00000000..2757c407
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f61d.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f61e.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f61e.png
new file mode 100644
index 00000000..ee0d1acf
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f61e.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f61f.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f61f.png
new file mode 100644
index 00000000..e8599c7b
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f61f.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f620.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f620.png
new file mode 100644
index 00000000..934aeb95
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f620.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f621.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f621.png
new file mode 100644
index 00000000..9657bdb8
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f621.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f622.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f622.png
new file mode 100644
index 00000000..58a00832
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f622.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f623.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f623.png
new file mode 100644
index 00000000..2224c5fe
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f623.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f624.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f624.png
new file mode 100644
index 00000000..0ffa230a
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f624.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f625.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f625.png
new file mode 100644
index 00000000..9cfc9343
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f625.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f626.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f626.png
new file mode 100644
index 00000000..654cf154
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f626.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f627.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f627.png
new file mode 100644
index 00000000..af8dfcd1
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f627.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f628.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f628.png
new file mode 100644
index 00000000..69c7d48a
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f628.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f629.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f629.png
new file mode 100644
index 00000000..ed1dfb20
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f629.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f62a.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f62a.png
new file mode 100644
index 00000000..c70f1718
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f62a.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f62b.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f62b.png
new file mode 100644
index 00000000..eb9e76a5
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f62b.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f62c.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f62c.png
new file mode 100644
index 00000000..0f4387d7
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f62c.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f62d.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f62d.png
new file mode 100644
index 00000000..0a03af72
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f62d.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f62e.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f62e.png
new file mode 100644
index 00000000..4a218ed3
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f62e.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f62f.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f62f.png
new file mode 100644
index 00000000..53dc4ad2
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f62f.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f630.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f630.png
new file mode 100644
index 00000000..f2b62ca6
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f630.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f631.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f631.png
new file mode 100644
index 00000000..a7ba403e
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f631.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f632.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f632.png
new file mode 100644
index 00000000..ce249e5b
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f632.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f633.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f633.png
new file mode 100644
index 00000000..58f132bc
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f633.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f634.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f634.png
new file mode 100644
index 00000000..11d6f05b
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f634.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f635.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f635.png
new file mode 100644
index 00000000..9587a230
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f635.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f636.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f636.png
new file mode 100644
index 00000000..54956426
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f636.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f637.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f637.png
new file mode 100644
index 00000000..8a0d283e
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f637.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f638.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f638.png
new file mode 100644
index 00000000..23ae526c
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f638.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f639.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f639.png
new file mode 100644
index 00000000..3357b239
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f639.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f63a.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f63a.png
new file mode 100644
index 00000000..c92309c6
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f63a.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f63b.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f63b.png
new file mode 100644
index 00000000..25d05e21
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f63b.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f63c.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f63c.png
new file mode 100644
index 00000000..7476d15e
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f63c.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f63d.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f63d.png
new file mode 100644
index 00000000..d349473a
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f63d.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f63e.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f63e.png
new file mode 100644
index 00000000..ad7542b9
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f63e.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f63f.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f63f.png
new file mode 100644
index 00000000..1f03f0b0
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f63f.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f640.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f640.png
new file mode 100644
index 00000000..10ae3896
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f640.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f645.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f645.png
new file mode 100644
index 00000000..a981d391
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f645.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f646.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f646.png
new file mode 100644
index 00000000..2073df78
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f646.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f647.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f647.png
new file mode 100644
index 00000000..14f30d3f
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f647.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f648.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f648.png
new file mode 100644
index 00000000..a79deacd
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f648.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f649.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f649.png
new file mode 100644
index 00000000..5f72094c
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f649.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f64a.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f64a.png
new file mode 100644
index 00000000..46ba8b9b
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f64a.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f64b.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f64b.png
new file mode 100644
index 00000000..d02a375a
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f64b.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f64c.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f64c.png
new file mode 100644
index 00000000..e9c6b064
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f64c.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f64d.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f64d.png
new file mode 100644
index 00000000..239d9244
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f64d.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f64e.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f64e.png
new file mode 100644
index 00000000..56a226af
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f64e.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f64f.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f64f.png
new file mode 100644
index 00000000..1c6c98ab
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f64f.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f680.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f680.png
new file mode 100644
index 00000000..de404972
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f680.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f681.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f681.png
new file mode 100644
index 00000000..878d8dc9
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f681.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f682.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f682.png
new file mode 100644
index 00000000..3b630342
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f682.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f683.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f683.png
new file mode 100644
index 00000000..fa9bbe8a
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f683.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f684.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f684.png
new file mode 100644
index 00000000..eccdda1f
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f684.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f685.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f685.png
new file mode 100644
index 00000000..f7b9d2fe
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f685.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f686.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f686.png
new file mode 100644
index 00000000..8ebd614c
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f686.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f687.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f687.png
new file mode 100644
index 00000000..123456d6
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f687.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f688.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f688.png
new file mode 100644
index 00000000..372b10a2
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f688.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f689.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f689.png
new file mode 100644
index 00000000..88f0f9f4
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f689.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f68a.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f68a.png
new file mode 100644
index 00000000..96869acb
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f68a.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f68b.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f68b.png
new file mode 100644
index 00000000..6719f68b
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f68b.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f68c.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f68c.png
new file mode 100644
index 00000000..5ec8dae2
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f68c.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f68d.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f68d.png
new file mode 100644
index 00000000..18368ce3
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f68d.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f68e.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f68e.png
new file mode 100644
index 00000000..a6110151
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f68e.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f68f.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f68f.png
new file mode 100644
index 00000000..48fdd962
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f68f.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f690.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f690.png
new file mode 100644
index 00000000..58bb8b60
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f690.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f691.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f691.png
new file mode 100644
index 00000000..6ab4a3e2
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f691.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f692.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f692.png
new file mode 100644
index 00000000..a2b6abce
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f692.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f693.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f693.png
new file mode 100644
index 00000000..4a6ab74e
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f693.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f694.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f694.png
new file mode 100644
index 00000000..895884d2
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f694.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f695.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f695.png
new file mode 100644
index 00000000..175c263e
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f695.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f696.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f696.png
new file mode 100644
index 00000000..305fd085
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f696.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f697.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f697.png
new file mode 100644
index 00000000..123c4659
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f697.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f698.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f698.png
new file mode 100644
index 00000000..23acfc07
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f698.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f699.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f699.png
new file mode 100644
index 00000000..1a100c03
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f699.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f69a.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f69a.png
new file mode 100644
index 00000000..b204ad2d
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f69a.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f69b.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f69b.png
new file mode 100644
index 00000000..c0665bfd
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f69b.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f69c.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f69c.png
new file mode 100644
index 00000000..7177d38a
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f69c.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f69d.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f69d.png
new file mode 100644
index 00000000..c72dd0d1
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f69d.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f69e.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f69e.png
new file mode 100644
index 00000000..151ee81e
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f69e.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f69f.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f69f.png
new file mode 100644
index 00000000..68cf93b5
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f69f.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6a0.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6a0.png
new file mode 100644
index 00000000..6f99de01
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6a0.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6a1.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6a1.png
new file mode 100644
index 00000000..d82efc7b
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6a1.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6a2.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6a2.png
new file mode 100644
index 00000000..06f78161
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6a2.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6a3.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6a3.png
new file mode 100644
index 00000000..87350038
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6a3.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6a4.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6a4.png
new file mode 100644
index 00000000..ded17ac1
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6a4.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6a5.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6a5.png
new file mode 100644
index 00000000..d383b40c
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6a5.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6a6.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6a6.png
new file mode 100644
index 00000000..674ff2db
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6a6.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6a7.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6a7.png
new file mode 100644
index 00000000..f10c03d9
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6a7.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6a8.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6a8.png
new file mode 100644
index 00000000..5a31025e
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6a8.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6a9.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6a9.png
new file mode 100644
index 00000000..898c79dd
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6a9.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6aa.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6aa.png
new file mode 100644
index 00000000..6854dcbd
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6aa.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6ab.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6ab.png
new file mode 100644
index 00000000..906fb73a
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6ab.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6ac.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6ac.png
new file mode 100644
index 00000000..aaf02a8a
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6ac.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6ad.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6ad.png
new file mode 100644
index 00000000..3dcc1950
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6ad.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6ae.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6ae.png
new file mode 100644
index 00000000..8cf64e4d
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6ae.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6af.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6af.png
new file mode 100644
index 00000000..b056c02b
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6af.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6b0.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6b0.png
new file mode 100644
index 00000000..8e64f1b7
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6b0.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6b1.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6b1.png
new file mode 100644
index 00000000..80479e62
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6b1.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6b2.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6b2.png
new file mode 100644
index 00000000..6f03f199
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6b2.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6b3.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6b3.png
new file mode 100644
index 00000000..4a63e81f
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6b3.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6b4.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6b4.png
new file mode 100644
index 00000000..b67bbddf
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6b4.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6b5.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6b5.png
new file mode 100644
index 00000000..dc617e3a
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6b5.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6b6.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6b6.png
new file mode 100644
index 00000000..a1418a0d
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6b6.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6b7.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6b7.png
new file mode 100644
index 00000000..5f71b9bb
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6b7.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6b8.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6b8.png
new file mode 100644
index 00000000..75eb16ca
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6b8.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6b9.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6b9.png
new file mode 100644
index 00000000..4f5809ef
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6b9.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6ba.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6ba.png
new file mode 100644
index 00000000..5cad5038
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6ba.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6bb.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6bb.png
new file mode 100644
index 00000000..d2bd93ac
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6bb.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6bc.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6bc.png
new file mode 100644
index 00000000..067ffce7
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6bc.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6bd.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6bd.png
new file mode 100644
index 00000000..b27838c0
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6bd.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6be.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6be.png
new file mode 100644
index 00000000..d6f258cf
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6be.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6bf.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6bf.png
new file mode 100644
index 00000000..41a347b0
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6bf.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6c0.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6c0.png
new file mode 100644
index 00000000..de5dfa4e
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6c0.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6c1.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6c1.png
new file mode 100644
index 00000000..812f9b15
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6c1.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6c2.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6c2.png
new file mode 100644
index 00000000..71c51c99
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6c2.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6c3.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6c3.png
new file mode 100644
index 00000000..06b82c0d
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6c3.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6c4.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6c4.png
new file mode 100644
index 00000000..42102d01
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6c4.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6c5.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6c5.png
new file mode 100644
index 00000000..512acb28
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_1f6c5.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_203c.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_203c.png
new file mode 100644
index 00000000..5feb4552
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_203c.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_2049.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2049.png
new file mode 100644
index 00000000..1c068020
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2049.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_2122.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2122.png
new file mode 100644
index 00000000..1e9f114f
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2122.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_2139.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2139.png
new file mode 100644
index 00000000..d0df5521
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2139.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_2194.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2194.png
new file mode 100644
index 00000000..7481d37e
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2194.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_2195.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2195.png
new file mode 100644
index 00000000..571ce2c7
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2195.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_2196.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2196.png
new file mode 100644
index 00000000..631334c8
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2196.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_2197.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2197.png
new file mode 100644
index 00000000..a4ccae97
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2197.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_2198.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2198.png
new file mode 100644
index 00000000..7e79c14f
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2198.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_2199.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2199.png
new file mode 100644
index 00000000..dcfe55bc
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2199.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_21a9.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_21a9.png
new file mode 100644
index 00000000..b98eef26
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_21a9.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_21aa.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_21aa.png
new file mode 100644
index 00000000..f6a67023
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_21aa.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_231a.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_231a.png
new file mode 100644
index 00000000..78cbca46
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_231a.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_231b.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_231b.png
new file mode 100644
index 00000000..373fb68c
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_231b.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_23e9.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_23e9.png
new file mode 100644
index 00000000..990ebbfe
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_23e9.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_23ea.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_23ea.png
new file mode 100644
index 00000000..9fbff0e2
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_23ea.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_23eb.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_23eb.png
new file mode 100644
index 00000000..9cfa7023
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_23eb.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_23ec.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_23ec.png
new file mode 100644
index 00000000..d17b8ef6
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_23ec.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_23f0.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_23f0.png
new file mode 100644
index 00000000..ccf232a6
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_23f0.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_23f3.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_23f3.png
new file mode 100644
index 00000000..ae7029bd
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_23f3.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_24c2.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_24c2.png
new file mode 100644
index 00000000..b80ac837
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_24c2.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_25aa.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_25aa.png
new file mode 100644
index 00000000..6b39168c
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_25aa.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_25ab.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_25ab.png
new file mode 100644
index 00000000..18143e2b
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_25ab.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_25b6.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_25b6.png
new file mode 100644
index 00000000..23a162d1
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_25b6.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_25c0.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_25c0.png
new file mode 100644
index 00000000..59eca5e0
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_25c0.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_25fb.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_25fb.png
new file mode 100644
index 00000000..8c81ebff
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_25fb.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_25fc.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_25fc.png
new file mode 100644
index 00000000..a76c7906
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_25fc.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_25fd.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_25fd.png
new file mode 100644
index 00000000..f277b9a0
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_25fd.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_25fe.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_25fe.png
new file mode 100644
index 00000000..e8418e2c
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_25fe.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_2600.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2600.png
new file mode 100644
index 00000000..230c4fd8
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2600.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_2601.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2601.png
new file mode 100644
index 00000000..ed0fa18a
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2601.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_260e.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_260e.png
new file mode 100644
index 00000000..3bfa02e9
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_260e.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_2611.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2611.png
new file mode 100644
index 00000000..229242b9
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2611.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_2614.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2614.png
new file mode 100644
index 00000000..5fdda1ab
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2614.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_2615.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2615.png
new file mode 100644
index 00000000..db892ff8
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2615.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_261d.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_261d.png
new file mode 100644
index 00000000..3b3b726c
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_261d.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_263a.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_263a.png
new file mode 100644
index 00000000..bd46e8d9
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_263a.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_2648.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2648.png
new file mode 100644
index 00000000..75384dfe
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2648.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_2649.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2649.png
new file mode 100644
index 00000000..313526ad
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2649.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_264a.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_264a.png
new file mode 100644
index 00000000..5c713983
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_264a.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_264b.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_264b.png
new file mode 100644
index 00000000..526f2638
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_264b.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_264c.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_264c.png
new file mode 100644
index 00000000..62691e24
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_264c.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_264d.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_264d.png
new file mode 100644
index 00000000..101737b9
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_264d.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_264e.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_264e.png
new file mode 100644
index 00000000..26edfec3
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_264e.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_264f.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_264f.png
new file mode 100644
index 00000000..7fd15000
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_264f.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_2650.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2650.png
new file mode 100644
index 00000000..1e3ea98e
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2650.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_2651.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2651.png
new file mode 100644
index 00000000..3a50b36d
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2651.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_2652.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2652.png
new file mode 100644
index 00000000..6de3ffdf
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2652.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_2653.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2653.png
new file mode 100644
index 00000000..3d6bccf4
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2653.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_2660.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2660.png
new file mode 100644
index 00000000..9081cada
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2660.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_2663.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2663.png
new file mode 100644
index 00000000..61378790
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2663.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_2665.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2665.png
new file mode 100644
index 00000000..7217496e
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2665.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_2666.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2666.png
new file mode 100644
index 00000000..766f4d23
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2666.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_2668.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2668.png
new file mode 100644
index 00000000..afbf672e
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2668.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_267b.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_267b.png
new file mode 100644
index 00000000..90a93d92
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_267b.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_267f.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_267f.png
new file mode 100644
index 00000000..7c746846
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_267f.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_2693.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2693.png
new file mode 100644
index 00000000..ae29cc63
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2693.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_26a0.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_26a0.png
new file mode 100644
index 00000000..1621c6a0
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_26a0.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_26a1.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_26a1.png
new file mode 100644
index 00000000..b0fd2e71
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_26a1.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_26aa.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_26aa.png
new file mode 100644
index 00000000..eae160f7
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_26aa.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_26ab.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_26ab.png
new file mode 100644
index 00000000..6f7f0aca
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_26ab.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_26bd.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_26bd.png
new file mode 100644
index 00000000..7ec0e93a
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_26bd.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_26be.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_26be.png
new file mode 100644
index 00000000..340d6495
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_26be.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_26c4.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_26c4.png
new file mode 100644
index 00000000..3ef62975
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_26c4.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_26c5.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_26c5.png
new file mode 100644
index 00000000..8adf1528
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_26c5.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_26ce.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_26ce.png
new file mode 100644
index 00000000..cdeedfca
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_26ce.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_26d4.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_26d4.png
new file mode 100644
index 00000000..ecbd1356
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_26d4.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_26ea.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_26ea.png
new file mode 100644
index 00000000..a857deef
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_26ea.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_26f2.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_26f2.png
new file mode 100644
index 00000000..c964b23c
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_26f2.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_26f3.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_26f3.png
new file mode 100644
index 00000000..8f306770
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_26f3.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_26f5.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_26f5.png
new file mode 100644
index 00000000..62aa3cca
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_26f5.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_26fa.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_26fa.png
new file mode 100644
index 00000000..b840ea24
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_26fa.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_26fd.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_26fd.png
new file mode 100644
index 00000000..20742a65
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_26fd.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_2702.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2702.png
new file mode 100644
index 00000000..3b57f92d
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2702.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_2705.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2705.png
new file mode 100644
index 00000000..e6373c2f
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2705.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_2708.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2708.png
new file mode 100644
index 00000000..a3b95b7d
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2708.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_2709.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2709.png
new file mode 100644
index 00000000..da52edf1
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2709.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_270a.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_270a.png
new file mode 100644
index 00000000..10a3f786
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_270a.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_270b.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_270b.png
new file mode 100644
index 00000000..2e6dc04a
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_270b.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_270c.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_270c.png
new file mode 100644
index 00000000..a3fec61d
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_270c.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_270f.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_270f.png
new file mode 100644
index 00000000..cd780731
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_270f.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_2712.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2712.png
new file mode 100644
index 00000000..bc6a5430
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2712.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_2714.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2714.png
new file mode 100644
index 00000000..4f01b579
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2714.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_2716.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2716.png
new file mode 100644
index 00000000..3bb3bb4e
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2716.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_2728.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2728.png
new file mode 100644
index 00000000..5fe3bd44
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2728.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_2733.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2733.png
new file mode 100644
index 00000000..0d9e31b3
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2733.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_2734.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2734.png
new file mode 100644
index 00000000..3654def9
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2734.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_2744.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2744.png
new file mode 100644
index 00000000..f58a79eb
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2744.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_2747.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2747.png
new file mode 100644
index 00000000..cb6405a4
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2747.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_274c.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_274c.png
new file mode 100644
index 00000000..cce953c8
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_274c.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_274e.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_274e.png
new file mode 100644
index 00000000..8741883e
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_274e.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_2753.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2753.png
new file mode 100644
index 00000000..4af7ca78
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2753.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_2754.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2754.png
new file mode 100644
index 00000000..3bf3d429
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2754.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_2755.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2755.png
new file mode 100644
index 00000000..bd59b2f0
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2755.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_2757.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2757.png
new file mode 100644
index 00000000..a73c60e3
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2757.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_2764.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2764.png
new file mode 100644
index 00000000..cbcf82d7
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2764.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_2795.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2795.png
new file mode 100644
index 00000000..d8bab924
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2795.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_2796.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2796.png
new file mode 100644
index 00000000..7cf64d49
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2796.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_2797.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2797.png
new file mode 100644
index 00000000..897f6469
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2797.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_27a1.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_27a1.png
new file mode 100644
index 00000000..48789028
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_27a1.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_27b0.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_27b0.png
new file mode 100644
index 00000000..a744180f
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_27b0.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_27bf.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_27bf.png
new file mode 100644
index 00000000..05518fc0
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_27bf.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_2934.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2934.png
new file mode 100644
index 00000000..9ec9c887
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2934.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_2935.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2935.png
new file mode 100644
index 00000000..9e4fc255
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2935.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_2b05.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2b05.png
new file mode 100644
index 00000000..f09ad480
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2b05.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_2b06.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2b06.png
new file mode 100644
index 00000000..96e8a7fd
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2b06.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_2b07.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2b07.png
new file mode 100644
index 00000000..555b0289
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2b07.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_2b1b.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2b1b.png
new file mode 100644
index 00000000..f16a92e4
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2b1b.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_2b1c.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2b1c.png
new file mode 100644
index 00000000..6fff6fb7
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2b1c.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_2b50.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2b50.png
new file mode 100644
index 00000000..63107b93
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2b50.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_2b55.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2b55.png
new file mode 100644
index 00000000..8e84d32d
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_2b55.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_3030.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_3030.png
new file mode 100644
index 00000000..c17b4cad
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_3030.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_303d.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_303d.png
new file mode 100644
index 00000000..4b38413b
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_303d.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_3297.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_3297.png
new file mode 100644
index 00000000..9a62dcae
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_3297.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-nodpi/emoji_3299.png b/libs/emojicon/src/main/res/drawable-nodpi/emoji_3299.png
new file mode 100644
index 00000000..bf1db1f7
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-nodpi/emoji_3299.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-xhdpi/ic_emoji_nature_light_activated.png b/libs/emojicon/src/main/res/drawable-xhdpi/ic_emoji_nature_light_activated.png
new file mode 100644
index 00000000..3e674434
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-xhdpi/ic_emoji_nature_light_activated.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-xhdpi/ic_emoji_nature_light_normal.png b/libs/emojicon/src/main/res/drawable-xhdpi/ic_emoji_nature_light_normal.png
new file mode 100644
index 00000000..5344a9ee
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-xhdpi/ic_emoji_nature_light_normal.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-xhdpi/ic_emoji_objects_light_activated.png b/libs/emojicon/src/main/res/drawable-xhdpi/ic_emoji_objects_light_activated.png
new file mode 100644
index 00000000..75695d43
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-xhdpi/ic_emoji_objects_light_activated.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-xhdpi/ic_emoji_objects_light_normal.png b/libs/emojicon/src/main/res/drawable-xhdpi/ic_emoji_objects_light_normal.png
new file mode 100644
index 00000000..2adb186e
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-xhdpi/ic_emoji_objects_light_normal.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-xhdpi/ic_emoji_people_light_activated.png b/libs/emojicon/src/main/res/drawable-xhdpi/ic_emoji_people_light_activated.png
new file mode 100644
index 00000000..e6baa2e5
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-xhdpi/ic_emoji_people_light_activated.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-xhdpi/ic_emoji_people_light_normal.png b/libs/emojicon/src/main/res/drawable-xhdpi/ic_emoji_people_light_normal.png
new file mode 100644
index 00000000..c26aa4ef
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-xhdpi/ic_emoji_people_light_normal.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-xhdpi/ic_emoji_places_light_activated.png b/libs/emojicon/src/main/res/drawable-xhdpi/ic_emoji_places_light_activated.png
new file mode 100644
index 00000000..eaa3b86c
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-xhdpi/ic_emoji_places_light_activated.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-xhdpi/ic_emoji_places_light_normal.png b/libs/emojicon/src/main/res/drawable-xhdpi/ic_emoji_places_light_normal.png
new file mode 100644
index 00000000..d6e1eaa3
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-xhdpi/ic_emoji_places_light_normal.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-xhdpi/ic_emoji_recent_light_activated.png b/libs/emojicon/src/main/res/drawable-xhdpi/ic_emoji_recent_light_activated.png
new file mode 100644
index 00000000..06003b82
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-xhdpi/ic_emoji_recent_light_activated.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-xhdpi/ic_emoji_recent_light_normal.png b/libs/emojicon/src/main/res/drawable-xhdpi/ic_emoji_recent_light_normal.png
new file mode 100644
index 00000000..da2effed
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-xhdpi/ic_emoji_recent_light_normal.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-xhdpi/ic_emoji_symbols_light_activated.png b/libs/emojicon/src/main/res/drawable-xhdpi/ic_emoji_symbols_light_activated.png
new file mode 100644
index 00000000..438fde2b
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-xhdpi/ic_emoji_symbols_light_activated.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-xhdpi/ic_emoji_symbols_light_normal.png b/libs/emojicon/src/main/res/drawable-xhdpi/ic_emoji_symbols_light_normal.png
new file mode 100644
index 00000000..75786323
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-xhdpi/ic_emoji_symbols_light_normal.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-xhdpi/ic_launcher.png b/libs/emojicon/src/main/res/drawable-xhdpi/ic_launcher.png
new file mode 100644
index 00000000..71c6d760
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-xhdpi/ic_launcher.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-xhdpi/keyboard_background_holo.9.png b/libs/emojicon/src/main/res/drawable-xhdpi/keyboard_background_holo.9.png
new file mode 100644
index 00000000..f5c9df3e
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-xhdpi/keyboard_background_holo.9.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-xhdpi/orca_attach_camera_normal.png b/libs/emojicon/src/main/res/drawable-xhdpi/orca_attach_camera_normal.png
new file mode 100644
index 00000000..d1c02cf6
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-xhdpi/orca_attach_camera_normal.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-xhdpi/orca_attach_camera_pressed.png b/libs/emojicon/src/main/res/drawable-xhdpi/orca_attach_camera_pressed.png
new file mode 100644
index 00000000..9bb11a42
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-xhdpi/orca_attach_camera_pressed.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-xhdpi/orca_attach_location_normal.png b/libs/emojicon/src/main/res/drawable-xhdpi/orca_attach_location_normal.png
new file mode 100644
index 00000000..af8a2fda
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-xhdpi/orca_attach_location_normal.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-xhdpi/orca_attach_location_pressed.png b/libs/emojicon/src/main/res/drawable-xhdpi/orca_attach_location_pressed.png
new file mode 100644
index 00000000..12b8608a
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-xhdpi/orca_attach_location_pressed.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-xhdpi/orca_attach_photo_normal.png b/libs/emojicon/src/main/res/drawable-xhdpi/orca_attach_photo_normal.png
new file mode 100644
index 00000000..86f17352
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-xhdpi/orca_attach_photo_normal.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-xhdpi/orca_attach_photo_pressed.png b/libs/emojicon/src/main/res/drawable-xhdpi/orca_attach_photo_pressed.png
new file mode 100644
index 00000000..d6d1869b
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-xhdpi/orca_attach_photo_pressed.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-xhdpi/orca_attachments_arrow.png b/libs/emojicon/src/main/res/drawable-xhdpi/orca_attachments_arrow.png
new file mode 100644
index 00000000..b339725e
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-xhdpi/orca_attachments_arrow.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-xhdpi/orca_attachments_arrow_reversed.png b/libs/emojicon/src/main/res/drawable-xhdpi/orca_attachments_arrow_reversed.png
new file mode 100644
index 00000000..918d0baf
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-xhdpi/orca_attachments_arrow_reversed.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-xhdpi/orca_composer_divider_horizontal.9.png b/libs/emojicon/src/main/res/drawable-xhdpi/orca_composer_divider_horizontal.9.png
new file mode 100644
index 00000000..f10e37bf
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-xhdpi/orca_composer_divider_horizontal.9.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-xhdpi/orca_composer_divider_vertical.9.png b/libs/emojicon/src/main/res/drawable-xhdpi/orca_composer_divider_vertical.9.png
new file mode 100644
index 00000000..523493ca
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-xhdpi/orca_composer_divider_vertical.9.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-xhdpi/orca_composer_popup_active_normal.png b/libs/emojicon/src/main/res/drawable-xhdpi/orca_composer_popup_active_normal.png
new file mode 100644
index 00000000..08ccb0fc
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-xhdpi/orca_composer_popup_active_normal.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-xhdpi/orca_composer_popup_active_pressed.png b/libs/emojicon/src/main/res/drawable-xhdpi/orca_composer_popup_active_pressed.png
new file mode 100644
index 00000000..b91b2063
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-xhdpi/orca_composer_popup_active_pressed.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-xhdpi/orca_composer_popup_normal.png b/libs/emojicon/src/main/res/drawable-xhdpi/orca_composer_popup_normal.png
new file mode 100644
index 00000000..d5f15ac1
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-xhdpi/orca_composer_popup_normal.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-xhdpi/orca_composer_popup_pressed.png b/libs/emojicon/src/main/res/drawable-xhdpi/orca_composer_popup_pressed.png
new file mode 100644
index 00000000..ddb6e9b7
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-xhdpi/orca_composer_popup_pressed.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-xhdpi/orca_composer_tab.9.png b/libs/emojicon/src/main/res/drawable-xhdpi/orca_composer_tab.9.png
new file mode 100644
index 00000000..1a6c0fed
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-xhdpi/orca_composer_tab.9.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-xhdpi/orca_composer_tab_active.9.png b/libs/emojicon/src/main/res/drawable-xhdpi/orca_composer_tab_active.9.png
new file mode 100644
index 00000000..c636c870
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-xhdpi/orca_composer_tab_active.9.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-xhdpi/orca_composer_tab_dark.9.png b/libs/emojicon/src/main/res/drawable-xhdpi/orca_composer_tab_dark.9.png
new file mode 100644
index 00000000..33d4b909
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-xhdpi/orca_composer_tab_dark.9.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-xhdpi/orca_composer_tab_pressed.9.png b/libs/emojicon/src/main/res/drawable-xhdpi/orca_composer_tab_pressed.9.png
new file mode 100644
index 00000000..fa7c6809
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-xhdpi/orca_composer_tab_pressed.9.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-xhdpi/orca_composer_top_divider.9.png b/libs/emojicon/src/main/res/drawable-xhdpi/orca_composer_top_divider.9.png
new file mode 100644
index 00000000..c80da27e
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-xhdpi/orca_composer_top_divider.9.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-xhdpi/orca_emoji_backspace_back_normal.png b/libs/emojicon/src/main/res/drawable-xhdpi/orca_emoji_backspace_back_normal.png
new file mode 100644
index 00000000..861ce7ba
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-xhdpi/orca_emoji_backspace_back_normal.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-xhdpi/orca_emoji_backspace_front_normal.png b/libs/emojicon/src/main/res/drawable-xhdpi/orca_emoji_backspace_front_normal.png
new file mode 100644
index 00000000..d1d49c41
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-xhdpi/orca_emoji_backspace_front_normal.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-xhdpi/orca_emoji_backspace_front_pressed.png b/libs/emojicon/src/main/res/drawable-xhdpi/orca_emoji_backspace_front_pressed.png
new file mode 100644
index 00000000..807a000e
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-xhdpi/orca_emoji_backspace_front_pressed.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-xhdpi/orca_emoji_category_cars.png b/libs/emojicon/src/main/res/drawable-xhdpi/orca_emoji_category_cars.png
new file mode 100644
index 00000000..91a51df4
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-xhdpi/orca_emoji_category_cars.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-xhdpi/orca_emoji_category_nature.png b/libs/emojicon/src/main/res/drawable-xhdpi/orca_emoji_category_nature.png
new file mode 100644
index 00000000..52b9003f
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-xhdpi/orca_emoji_category_nature.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-xhdpi/orca_emoji_category_objects.png b/libs/emojicon/src/main/res/drawable-xhdpi/orca_emoji_category_objects.png
new file mode 100644
index 00000000..e5965e81
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-xhdpi/orca_emoji_category_objects.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-xhdpi/orca_emoji_category_people.png b/libs/emojicon/src/main/res/drawable-xhdpi/orca_emoji_category_people.png
new file mode 100644
index 00000000..437692e7
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-xhdpi/orca_emoji_category_people.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-xhdpi/orca_emoji_category_punctuation.png b/libs/emojicon/src/main/res/drawable-xhdpi/orca_emoji_category_punctuation.png
new file mode 100644
index 00000000..cef75d77
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-xhdpi/orca_emoji_category_punctuation.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-xhdpi/orca_emoji_more_back_normal.png b/libs/emojicon/src/main/res/drawable-xhdpi/orca_emoji_more_back_normal.png
new file mode 100644
index 00000000..57a22ee0
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-xhdpi/orca_emoji_more_back_normal.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-xhdpi/orca_emoji_more_front_normal.png b/libs/emojicon/src/main/res/drawable-xhdpi/orca_emoji_more_front_normal.png
new file mode 100644
index 00000000..2fe38cc0
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-xhdpi/orca_emoji_more_front_normal.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-xhdpi/orca_emoji_more_front_pressed.png b/libs/emojicon/src/main/res/drawable-xhdpi/orca_emoji_more_front_pressed.png
new file mode 100644
index 00000000..57b04f8d
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-xhdpi/orca_emoji_more_front_pressed.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable-xhdpi/sym_keyboard_delete_holo_dark.png b/libs/emojicon/src/main/res/drawable-xhdpi/sym_keyboard_delete_holo_dark.png
new file mode 100644
index 00000000..e3e37d5f
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable-xhdpi/sym_keyboard_delete_holo_dark.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable/emo_im_angel.png b/libs/emojicon/src/main/res/drawable/emo_im_angel.png
new file mode 100644
index 00000000..c34dfa69
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable/emo_im_angel.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable/emo_im_cool.png b/libs/emojicon/src/main/res/drawable/emo_im_cool.png
new file mode 100644
index 00000000..d8eeb34e
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable/emo_im_cool.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable/emo_im_crying.png b/libs/emojicon/src/main/res/drawable/emo_im_crying.png
new file mode 100644
index 00000000..1cafdb32
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable/emo_im_crying.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable/emo_im_embarrassed.png b/libs/emojicon/src/main/res/drawable/emo_im_embarrassed.png
new file mode 100644
index 00000000..e4db9634
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable/emo_im_embarrassed.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable/emo_im_foot_in_mouth.png b/libs/emojicon/src/main/res/drawable/emo_im_foot_in_mouth.png
new file mode 100644
index 00000000..09d1fba6
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable/emo_im_foot_in_mouth.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable/emo_im_happy.png b/libs/emojicon/src/main/res/drawable/emo_im_happy.png
new file mode 100644
index 00000000..b86602ae
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable/emo_im_happy.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable/emo_im_heart.png b/libs/emojicon/src/main/res/drawable/emo_im_heart.png
new file mode 100644
index 00000000..d88bcccd
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable/emo_im_heart.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable/emo_im_kissing.png b/libs/emojicon/src/main/res/drawable/emo_im_kissing.png
new file mode 100644
index 00000000..56378f6a
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable/emo_im_kissing.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable/emo_im_laughing.png b/libs/emojicon/src/main/res/drawable/emo_im_laughing.png
new file mode 100644
index 00000000..980bf281
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable/emo_im_laughing.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable/emo_im_lips_are_sealed.png b/libs/emojicon/src/main/res/drawable/emo_im_lips_are_sealed.png
new file mode 100644
index 00000000..f2de993b
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable/emo_im_lips_are_sealed.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable/emo_im_money_mouth.png b/libs/emojicon/src/main/res/drawable/emo_im_money_mouth.png
new file mode 100644
index 00000000..08c53fd6
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable/emo_im_money_mouth.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable/emo_im_sad.png b/libs/emojicon/src/main/res/drawable/emo_im_sad.png
new file mode 100644
index 00000000..31c08d06
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable/emo_im_sad.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable/emo_im_surprised.png b/libs/emojicon/src/main/res/drawable/emo_im_surprised.png
new file mode 100644
index 00000000..abe8c7ad
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable/emo_im_surprised.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable/emo_im_tongue_sticking_out.png b/libs/emojicon/src/main/res/drawable/emo_im_tongue_sticking_out.png
new file mode 100644
index 00000000..6f0f47b0
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable/emo_im_tongue_sticking_out.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable/emo_im_undecided.png b/libs/emojicon/src/main/res/drawable/emo_im_undecided.png
new file mode 100644
index 00000000..eb4f8c5b
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable/emo_im_undecided.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable/emo_im_winking.png b/libs/emojicon/src/main/res/drawable/emo_im_winking.png
new file mode 100644
index 00000000..568562ad
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable/emo_im_winking.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable/emo_im_wtf.png b/libs/emojicon/src/main/res/drawable/emo_im_wtf.png
new file mode 100644
index 00000000..41dd47fc
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable/emo_im_wtf.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable/emo_im_yelling.png b/libs/emojicon/src/main/res/drawable/emo_im_yelling.png
new file mode 100644
index 00000000..c3c8612b
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable/emo_im_yelling.png
Binary files differ
diff --git a/libs/emojicon/src/main/res/drawable/ic_emoji_nature_light.xml b/libs/emojicon/src/main/res/drawable/ic_emoji_nature_light.xml
new file mode 100644
index 00000000..543409e0
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable/ic_emoji_nature_light.xml
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+**
+** Copyright 2013, The Android Open Source Project
+**
+** Licensed under the Apache License, Version 2.0 (the "License");
+** you may not use this file except in compliance with the License.
+** You may obtain a copy of the License at
+**
+** http://www.apache.org/licenses/LICENSE-2.0
+**
+** Unless required by applicable law or agreed to in writing, software
+** distributed under the License is distributed on an "AS IS" BASIS,
+** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+** See the License for the specific language governing permissions and
+** limitations under the License.
+*/
+-->
+
+<selector xmlns:android="http://schemas.android.com/apk/res/android">
+ <item
+ android:state_focused="true"
+ android:drawable="@drawable/ic_emoji_nature_light_activated" />
+ <item
+ android:state_pressed="true"
+ android:drawable="@drawable/ic_emoji_nature_light_activated" />
+ <item
+ android:state_selected="true"
+ android:drawable="@drawable/ic_emoji_nature_light_activated" />
+ <item
+ android:drawable="@drawable/ic_emoji_nature_light_normal" />
+</selector>
diff --git a/libs/emojicon/src/main/res/drawable/ic_emoji_objects_light.xml b/libs/emojicon/src/main/res/drawable/ic_emoji_objects_light.xml
new file mode 100644
index 00000000..4096e695
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable/ic_emoji_objects_light.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+**
+** Copyright 2013, The Android Open Source Project
+**
+** Licensed under the Apache License, Version 2.0 (the "License");
+** you may not use this file except in compliance with the License.
+** You may obtain a copy of the License at
+**
+** http://www.apache.org/licenses/LICENSE-2.0
+**
+** Unless required by applicable law or agreed to in writing, software
+** distributed under the License is distributed on an "AS IS" BASIS,
+** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+** See the License for the specific language governing permissions and
+** limitations under the License.
+*/
+-->
+
+<selector xmlns:android="http://schemas.android.com/apk/res/android">
+ <item
+ android:state_focused="true"
+ android:drawable="@drawable/ic_emoji_objects_light_activated" />
+ <item
+ android:state_pressed="true"
+ android:drawable="@drawable/ic_emoji_objects_light_activated" />
+ <item
+ android:state_selected="true"
+ android:drawable="@drawable/ic_emoji_objects_light_activated" />
+ <item android:drawable="@drawable/ic_emoji_objects_light_normal" />
+</selector>
diff --git a/libs/emojicon/src/main/res/drawable/ic_emoji_people_light.xml b/libs/emojicon/src/main/res/drawable/ic_emoji_people_light.xml
new file mode 100644
index 00000000..ea9e406a
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable/ic_emoji_people_light.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+**
+** Copyright 2013, The Android Open Source Project
+**
+** Licensed under the Apache License, Version 2.0 (the "License");
+** you may not use this file except in compliance with the License.
+** You may obtain a copy of the License at
+**
+** http://www.apache.org/licenses/LICENSE-2.0
+**
+** Unless required by applicable law or agreed to in writing, software
+** distributed under the License is distributed on an "AS IS" BASIS,
+** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+** See the License for the specific language governing permissions and
+** limitations under the License.
+*/
+-->
+
+<selector xmlns:android="http://schemas.android.com/apk/res/android">
+ <item
+ android:state_focused="true"
+ android:drawable="@drawable/ic_emoji_people_light_activated" />
+ <item
+ android:state_pressed="true"
+ android:drawable="@drawable/ic_emoji_people_light_activated" />
+ <item
+ android:state_selected="true"
+ android:drawable="@drawable/ic_emoji_people_light_activated" />
+ <item android:drawable="@drawable/ic_emoji_people_light_normal" />
+</selector>
diff --git a/libs/emojicon/src/main/res/drawable/ic_emoji_places_light.xml b/libs/emojicon/src/main/res/drawable/ic_emoji_places_light.xml
new file mode 100644
index 00000000..312cad9c
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable/ic_emoji_places_light.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+**
+** Copyright 2013, The Android Open Source Project
+**
+** Licensed under the Apache License, Version 2.0 (the "License");
+** you may not use this file except in compliance with the License.
+** You may obtain a copy of the License at
+**
+** http://www.apache.org/licenses/LICENSE-2.0
+**
+** Unless required by applicable law or agreed to in writing, software
+** distributed under the License is distributed on an "AS IS" BASIS,
+** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+** See the License for the specific language governing permissions and
+** limitations under the License.
+*/
+-->
+
+<selector xmlns:android="http://schemas.android.com/apk/res/android">
+ <item
+ android:state_focused="true"
+ android:drawable="@drawable/ic_emoji_places_light_activated" />
+ <item
+ android:state_pressed="true"
+ android:drawable="@drawable/ic_emoji_places_light_activated" />
+ <item
+ android:state_selected="true"
+ android:drawable="@drawable/ic_emoji_places_light_activated" />
+ <item android:drawable="@drawable/ic_emoji_places_light_normal" />
+</selector>
diff --git a/libs/emojicon/src/main/res/drawable/ic_emoji_recent_light.xml b/libs/emojicon/src/main/res/drawable/ic_emoji_recent_light.xml
new file mode 100644
index 00000000..8c2123f8
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable/ic_emoji_recent_light.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+**
+** Copyright 2013, The Android Open Source Project
+**
+** Licensed under the Apache License, Version 2.0 (the "License");
+** you may not use this file except in compliance with the License.
+** You may obtain a copy of the License at
+**
+** http://www.apache.org/licenses/LICENSE-2.0
+**
+** Unless required by applicable law or agreed to in writing, software
+** distributed under the License is distributed on an "AS IS" BASIS,
+** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+** See the License for the specific language governing permissions and
+** limitations under the License.
+*/
+-->
+
+<selector xmlns:android="http://schemas.android.com/apk/res/android">
+ <item
+ android:state_focused="true"
+ android:drawable="@drawable/ic_emoji_recent_light_activated" />
+ <item
+ android:state_pressed="true"
+ android:drawable="@drawable/ic_emoji_recent_light_activated" />
+ <item
+ android:state_selected="true"
+ android:drawable="@drawable/ic_emoji_recent_light_activated" />
+ <item android:drawable="@drawable/ic_emoji_recent_light_normal" />
+</selector>
diff --git a/libs/emojicon/src/main/res/drawable/ic_emoji_symbols_light.xml b/libs/emojicon/src/main/res/drawable/ic_emoji_symbols_light.xml
new file mode 100644
index 00000000..79aaf0fc
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable/ic_emoji_symbols_light.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+**
+** Copyright 2013, The Android Open Source Project
+**
+** Licensed under the Apache License, Version 2.0 (the "License");
+** you may not use this file except in compliance with the License.
+** You may obtain a copy of the License at
+**
+** http://www.apache.org/licenses/LICENSE-2.0
+**
+** Unless required by applicable law or agreed to in writing, software
+** distributed under the License is distributed on an "AS IS" BASIS,
+** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+** See the License for the specific language governing permissions and
+** limitations under the License.
+*/
+-->
+
+<selector xmlns:android="http://schemas.android.com/apk/res/android">
+ <item
+ android:state_focused="true"
+ android:drawable="@drawable/ic_emoji_symbols_light_activated" />
+ <item
+ android:state_pressed="true"
+ android:drawable="@drawable/ic_emoji_symbols_light_activated" />
+ <item
+ android:state_selected="true"
+ android:drawable="@drawable/ic_emoji_symbols_light_activated" />
+ <item android:drawable="@drawable/ic_emoji_symbols_light_normal" />
+</selector>
diff --git a/libs/emojicon/src/main/res/drawable/orca_composer_attach_camera_button.xml b/libs/emojicon/src/main/res/drawable/orca_composer_attach_camera_button.xml
new file mode 100644
index 00000000..0b255fb2
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable/orca_composer_attach_camera_button.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="utf-8"?>
+<selector
+ xmlns:android="http://schemas.android.com/apk/res/android">
+ <item android:state_pressed="true" android:drawable="@drawable/orca_attach_camera_pressed" />
+ <item android:drawable="@drawable/orca_attach_camera_normal" />
+</selector> \ No newline at end of file
diff --git a/libs/emojicon/src/main/res/drawable/orca_composer_attach_location_button.xml b/libs/emojicon/src/main/res/drawable/orca_composer_attach_location_button.xml
new file mode 100644
index 00000000..4971113a
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable/orca_composer_attach_location_button.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ ~ Copyright (C) 2013 Klamr. All rights reserved.
+ ~
+ ~ This software is the confidential and proprietary information of Klamr or one of its
+ ~ subsidiaries. You shall not disclose this confidential information and shall use it only in
+ ~ accordance with the terms of the license agreement or other applicable agreement you entered into
+ ~ with Klamr.
+ ~
+ ~ KLAMR MAKES NO REPRESENTATIONS OR WARRANTIES ABOUT THE SUITABILITY OF THE SOFTWARE, EITHER
+ ~ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF MERCHANTABILITY,
+ ~ FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT. KLAMR SHALL NOT BE LIABLE FOR ANY LOSSES
+ ~ OR DAMAGES SUFFERED BY LICENSEE AS A RESULT OF USING, MODIFYING OR DISTRIBUTING THIS SOFTWARE OR
+ ~ ITS DERIVATIVES.
+ -->
+
+<selector
+ xmlns:android="http://schemas.android.com/apk/res/android">
+ <item android:state_pressed="true" android:drawable="@drawable/orca_attach_location_pressed"/>
+ <item android:drawable="@drawable/orca_attach_location_normal"/>
+</selector> \ No newline at end of file
diff --git a/libs/emojicon/src/main/res/drawable/orca_composer_attach_photo_button.xml b/libs/emojicon/src/main/res/drawable/orca_composer_attach_photo_button.xml
new file mode 100644
index 00000000..ca7508dd
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable/orca_composer_attach_photo_button.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="utf-8"?>
+<selector
+ xmlns:android="http://schemas.android.com/apk/res/android">
+ <item android:state_pressed="true" android:drawable="@drawable/orca_attach_photo_pressed" />
+ <item android:drawable="@drawable/orca_attach_photo_normal" />
+</selector> \ No newline at end of file
diff --git a/libs/emojicon/src/main/res/drawable/orca_composer_popup_button.xml b/libs/emojicon/src/main/res/drawable/orca_composer_popup_button.xml
new file mode 100644
index 00000000..d43dc26e
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable/orca_composer_popup_button.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="utf-8"?>
+<selector
+ xmlns:android="http://schemas.android.com/apk/res/android">
+ <item android:state_pressed="true" android:drawable="@drawable/orca_composer_popup_pressed" />
+ <item android:drawable="@drawable/orca_composer_popup_normal" />
+</selector> \ No newline at end of file
diff --git a/libs/emojicon/src/main/res/drawable/orca_composer_popup_button_active.xml b/libs/emojicon/src/main/res/drawable/orca_composer_popup_button_active.xml
new file mode 100644
index 00000000..f5e40ef8
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable/orca_composer_popup_button_active.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="utf-8"?>
+<selector
+ xmlns:android="http://schemas.android.com/apk/res/android">
+ <item android:state_pressed="true" android:drawable="@drawable/orca_composer_popup_active_pressed" />
+ <item android:drawable="@drawable/orca_composer_popup_active_normal" />
+</selector> \ No newline at end of file
diff --git a/libs/emojicon/src/main/res/drawable/orca_emoji_backspace_front_button.xml b/libs/emojicon/src/main/res/drawable/orca_emoji_backspace_front_button.xml
new file mode 100644
index 00000000..a2d2f5b6
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable/orca_emoji_backspace_front_button.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="utf-8"?>
+<selector xmlns:android="http://schemas.android.com/apk/res/android">
+ <item android:state_pressed="true" android:drawable="@drawable/orca_emoji_backspace_front_pressed"/>
+ <item android:drawable="@drawable/orca_emoji_backspace_front_normal"/>
+</selector> \ No newline at end of file
diff --git a/libs/emojicon/src/main/res/drawable/orca_emoji_more_front_button.xml b/libs/emojicon/src/main/res/drawable/orca_emoji_more_front_button.xml
new file mode 100644
index 00000000..a799d56d
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable/orca_emoji_more_front_button.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="utf-8"?>
+<selector xmlns:android="http://schemas.android.com/apk/res/android">
+ <item android:state_pressed="true" android:drawable="@drawable/orca_emoji_more_front_pressed"/>
+ <item android:drawable="@drawable/orca_emoji_more_front_normal"/>
+</selector> \ No newline at end of file
diff --git a/libs/emojicon/src/main/res/drawable/orca_emoji_tab_background.xml b/libs/emojicon/src/main/res/drawable/orca_emoji_tab_background.xml
new file mode 100644
index 00000000..f68e6212
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable/orca_emoji_tab_background.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="utf-8"?>
+<selector
+ xmlns:android="http://schemas.android.com/apk/res/android">
+ <item android:state_selected="true" android:drawable="@drawable/orca_composer_tab_pressed" />
+ <item android:state_pressed="true" android:drawable="@drawable/orca_composer_tab_active" />
+ <item android:drawable="@drawable/orca_composer_tab" />
+</selector> \ No newline at end of file
diff --git a/libs/emojicon/src/main/res/drawable/orca_emoji_tab_dark_background.xml b/libs/emojicon/src/main/res/drawable/orca_emoji_tab_dark_background.xml
new file mode 100644
index 00000000..07ff608c
--- /dev/null
+++ b/libs/emojicon/src/main/res/drawable/orca_emoji_tab_dark_background.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ ~ Copyright (C) 2013 Klamr. All rights reserved.
+ ~
+ ~ This software is the confidential and proprietary information of Klamr or one of its
+ ~ subsidiaries. You shall not disclose this confidential information and shall use it only in
+ ~ accordance with the terms of the license agreement or other applicable agreement you entered into
+ ~ with Klamr.
+ ~
+ ~ KLAMR MAKES NO REPRESENTATIONS OR WARRANTIES ABOUT THE SUITABILITY OF THE SOFTWARE, EITHER
+ ~ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF MERCHANTABILITY,
+ ~ FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT. KLAMR SHALL NOT BE LIABLE FOR ANY LOSSES
+ ~ OR DAMAGES SUFFERED BY LICENSEE AS A RESULT OF USING, MODIFYING OR DISTRIBUTING THIS SOFTWARE OR
+ ~ ITS DERIVATIVES.
+ -->
+
+<selector
+ xmlns:android="http://schemas.android.com/apk/res/android">
+ <item android:state_pressed="true" android:drawable="@drawable/orca_composer_tab_pressed" />
+ <item android:drawable="@drawable/orca_composer_tab_active" android:state_checked="true" />
+ <item android:drawable="@drawable/orca_composer_tab_dark" />
+</selector> \ No newline at end of file
diff --git a/libs/emojicon/src/main/res/layout/emojicon_grid.xml b/libs/emojicon/src/main/res/layout/emojicon_grid.xml
new file mode 100644
index 00000000..457f8756
--- /dev/null
+++ b/libs/emojicon/src/main/res/layout/emojicon_grid.xml
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ ~ Copyright (C) 2013 Klamr. All rights reserved.
+ ~
+ ~ This software is the confidential and proprietary information of Klamr or one of its
+ ~ subsidiaries. You shall not disclose this confidential information and shall use it only in
+ ~ accordance with the terms of the license agreement or other applicable agreement you entered into
+ ~ with Klamr.
+ ~
+ ~ KLAMR MAKES NO REPRESENTATIONS OR WARRANTIES ABOUT THE SUITABILITY OF THE SOFTWARE, EITHER
+ ~ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF MERCHANTABILITY,
+ ~ FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT. KLAMR SHALL NOT BE LIABLE FOR ANY LOSSES
+ ~ OR DAMAGES SUFFERED BY LICENSEE AS A RESULT OF USING, MODIFYING OR DISTRIBUTING THIS SOFTWARE OR
+ ~ ITS DERIVATIVES.
+ -->
+
+<GridView xmlns:android="http://schemas.android.com/apk/res/android"
+ android:id="@+id/Emoji_GridView"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:background="@android:color/transparent"
+ android:cacheColorHint="@android:color/transparent"
+ android:columnWidth="40dip"
+ android:horizontalSpacing="0dip"
+ android:numColumns="auto_fit"
+ android:scrollbars="vertical"
+ android:verticalSpacing="0dip" />
diff --git a/libs/emojicon/src/main/res/layout/emojicon_item.xml b/libs/emojicon/src/main/res/layout/emojicon_item.xml
new file mode 100644
index 00000000..ed11041a
--- /dev/null
+++ b/libs/emojicon/src/main/res/layout/emojicon_item.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ ~ Copyright 2014 Ankush Sachdeva
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~ http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License.
+ -->
+
+<FrameLayout
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:emojicon="http://schemas.android.com/apk/res-auto"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content">
+ <github.ankushsachdeva.emojicon.EmojiconTextView
+ android:layout_gravity="center"
+ android:id="@+id/emojicon_icon"
+ android:layout_width="36dip"
+ android:layout_height="36dip"
+ emojicon:emojiconSize="30dip"
+ android:focusable="false"
+ android:focusableInTouchMode="false"
+ android:gravity="center"/>
+</FrameLayout> \ No newline at end of file
diff --git a/libs/emojicon/src/main/res/layout/emojicons.xml b/libs/emojicon/src/main/res/layout/emojicons.xml
new file mode 100644
index 00000000..287923d1
--- /dev/null
+++ b/libs/emojicon/src/main/res/layout/emojicons.xml
@@ -0,0 +1,119 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ ~ Copyright 2014 Ankush Sachdeva
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~ http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License.
+ -->
+
+<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ android:background="@drawable/keyboard_background_holo"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent">
+ <LinearLayout
+ android:id="@+id/emojis_tab"
+ android:layout_width="match_parent"
+ android:layout_height="50dip"
+ android:layout_alignParentTop="true"
+ android:orientation="horizontal">
+ <ImageButton
+ android:background="@null"
+ android:layout_width="0dip"
+ android:layout_height="match_parent"
+ android:layout_weight="1"
+ android:scaleType="center"
+ android:id="@+id/emojis_tab_0_recents"
+ android:src="@drawable/ic_emoji_recent_light"/>
+ <View
+ android:layout_width="1px"
+ android:layout_height="match_parent"
+ android:background="#888888"/>
+ <ImageButton
+ android:background="@null"
+ android:layout_width="0dip"
+ android:layout_height="match_parent"
+ android:layout_weight="1"
+ android:scaleType="center"
+ android:id="@+id/emojis_tab_1_people"
+ android:src="@drawable/ic_emoji_people_light"/>
+ <View
+ android:layout_width="1px"
+ android:layout_height="match_parent"
+ android:background="#888888"/>
+ <ImageButton
+ android:background="@null"
+ android:layout_width="0dip"
+ android:layout_height="match_parent"
+ android:layout_weight="1"
+ android:scaleType="center"
+ android:id="@+id/emojis_tab_2_nature"
+ android:src="@drawable/ic_emoji_nature_light"/>
+ <View
+ android:layout_width="1px"
+ android:layout_height="match_parent"
+ android:background="#888888"/>
+ <ImageButton
+ android:background="@null"
+ android:layout_width="0dip"
+ android:layout_height="match_parent"
+ android:layout_weight="1"
+ android:scaleType="center"
+ android:id="@+id/emojis_tab_3_objects"
+ android:src="@drawable/ic_emoji_objects_light"/>
+ <View
+ android:layout_width="1px"
+ android:layout_height="match_parent"
+ android:background="#888888"/>
+ <ImageButton
+ android:background="@null"
+ android:layout_width="0dip"
+ android:layout_height="match_parent"
+ android:layout_weight="1"
+ android:scaleType="center"
+ android:id="@+id/emojis_tab_4_cars"
+ android:src="@drawable/ic_emoji_places_light"/>
+ <View
+ android:layout_width="1px"
+ android:layout_height="match_parent"
+ android:background="#888888"/>
+ <ImageButton
+ android:background="@null"
+ android:layout_width="0dip"
+ android:layout_height="match_parent"
+ android:layout_weight="1"
+ android:scaleType="center"
+ android:id="@+id/emojis_tab_5_punctuation"
+ android:src="@drawable/ic_emoji_symbols_light"/>
+ <View
+ android:layout_width="1px"
+ android:layout_height="match_parent"
+ android:background="#888888"/>
+ <ImageButton
+ android:background="@null"
+ android:layout_width="0dip"
+ android:layout_height="match_parent"
+ android:layout_weight="1"
+ android:id="@+id/emojis_backspace"
+ android:src="@drawable/sym_keyboard_delete_holo_dark"/>
+ </LinearLayout>
+ <android.support.v4.view.ViewPager
+ android:layout_below="@id/emojis_tab"
+ android:id="@+id/emojis_pager"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:layout_alignParentBottom="true"/>
+ <View
+ android:layout_width="match_parent"
+ android:layout_height="1px"
+ android:layout_below="@id/emojis_tab"
+ android:background="#8f8f8f"/>
+</RelativeLayout>
diff --git a/libs/emojicon/src/main/res/values/attrs.xml b/libs/emojicon/src/main/res/values/attrs.xml
new file mode 100644
index 00000000..9810158d
--- /dev/null
+++ b/libs/emojicon/src/main/res/values/attrs.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ ~ Copyright 2014 Ankush Sachdeva
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~ http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License.
+-->
+
+<resources>
+
+ <declare-styleable name="Emojicon">
+ <attr name="emojiconSize" format="dimension" />
+ <attr name="emojiconTextStart" format="integer" />
+ <attr name="emojiconTextLength" format="integer" />
+ </declare-styleable>
+
+ <dimen name="keyboard_height">250dp</dimen>
+
+ <style name="emojiDialog" parent="@android:style/Theme.Dialog">
+ <item name="android:layout_width">fill_parent</item>
+ <item name="android:layout_height">fill_parent</item>
+
+ <!-- No backgrounds, titles or window float -->
+ <item name="android:windowFrame">@null</item>
+ <item name="android:windowBackground">@null</item>
+ <item name="android:windowNoTitle">true</item>
+ <item name="android:windowIsFloating">false</item>
+ </style>
+
+</resources> \ No newline at end of file
diff --git a/libs/emojicon/src/main/res/values/strings.xml b/libs/emojicon/src/main/res/values/strings.xml
new file mode 100644
index 00000000..bc419171
--- /dev/null
+++ b/libs/emojicon/src/main/res/values/strings.xml
@@ -0,0 +1,3 @@
+<resources>
+ <string name="app_name">Emojicon</string>
+</resources>
diff --git a/libs/libidn-1.15.jar b/libs/libidn-1.15.jar
new file mode 100644
index 00000000..79a44f92
--- /dev/null
+++ b/libs/libidn-1.15.jar
Binary files differ
diff --git a/libs/minidns/AndroidManifest.xml b/libs/minidns/AndroidManifest.xml
new file mode 100644
index 00000000..6c9477d9
--- /dev/null
+++ b/libs/minidns/AndroidManifest.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="utf-8"?>
+<manifest xmlns:android="http://schemas.android.com/apk/res/android"
+ package="de.measite.minidns"
+ android:versionCode="1"
+ android:versionName="1.0" >
+
+ <uses-sdk
+ android:minSdkVersion="9"
+ android:targetSdkVersion="19" />
+
+ <application/>
+
+</manifest>
diff --git a/libs/minidns/lint.xml b/libs/minidns/lint.xml
new file mode 100644
index 00000000..ee0eead5
--- /dev/null
+++ b/libs/minidns/lint.xml
@@ -0,0 +1,3 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<lint>
+</lint> \ No newline at end of file
diff --git a/libs/minidns/project.properties b/libs/minidns/project.properties
new file mode 100644
index 00000000..4ab12569
--- /dev/null
+++ b/libs/minidns/project.properties
@@ -0,0 +1,14 @@
+# This file is automatically generated by Android Tools.
+# Do not modify this file -- YOUR CHANGES WILL BE ERASED!
+#
+# This file must be checked in Version Control Systems.
+#
+# To customize properties used by the Ant build system edit
+# "ant.properties", and override values to adapt the script to your
+# project structure.
+#
+# To enable ProGuard to shrink and obfuscate your code, uncomment this (available properties: sdk.dir, user.home):
+#proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt
+
+# Project target.
+target=android-19
diff --git a/libs/otr4j-0.21.jar b/libs/otr4j-0.21.jar
new file mode 100644
index 00000000..85bc69e6
--- /dev/null
+++ b/libs/otr4j-0.21.jar
Binary files differ
diff --git a/libs/zxing/android-core-3.1.0.jar b/libs/zxing/android-core-3.1.0.jar
new file mode 100644
index 00000000..0c6137de
--- /dev/null
+++ b/libs/zxing/android-core-3.1.0.jar
Binary files differ
diff --git a/libs/zxing/android-integration-3.1.0.jar b/libs/zxing/android-integration-3.1.0.jar
new file mode 100644
index 00000000..fb621f8b
--- /dev/null
+++ b/libs/zxing/android-integration-3.1.0.jar
Binary files differ
diff --git a/libs/zxing/core-3.1.0.jar b/libs/zxing/core-3.1.0.jar
new file mode 100644
index 00000000..63c228a9
--- /dev/null
+++ b/libs/zxing/core-3.1.0.jar
Binary files differ
diff --git a/lookshe.patch b/lookshe.patch
new file mode 100644
index 00000000..d8310452
--- /dev/null
+++ b/lookshe.patch
@@ -0,0 +1,1601 @@
+From 5e50b597b6aaa4ecdae0135b179cc19ed71bd1d8 Mon Sep 17 00:00:00 2001
+From: lookshe <github@lookshe.org>
+Date: Wed, 10 Sep 2014 21:10:20 +0200
+Subject: [PATCH] Added possibility to also use pictures as smilies
+
+---
+ res/drawable/emo_im_angel.png | Bin 0 -> 3592 bytes
+ res/drawable/emo_im_cool.png | Bin 0 -> 3466 bytes
+ res/drawable/emo_im_crying.png | Bin 0 -> 3558 bytes
+ res/drawable/emo_im_embarrassed.png | Bin 0 -> 3619 bytes
+ res/drawable/emo_im_foot_in_mouth.png | Bin 0 -> 3603 bytes
+ res/drawable/emo_im_happy.png | Bin 0 -> 3591 bytes
+ res/drawable/emo_im_heart.png | Bin 0 -> 684 bytes
+ res/drawable/emo_im_kissing.png | Bin 0 -> 3492 bytes
+ res/drawable/emo_im_laughing.png | Bin 0 -> 3624 bytes
+ res/drawable/emo_im_lips_are_sealed.png | Bin 0 -> 3670 bytes
+ res/drawable/emo_im_money_mouth.png | Bin 0 -> 3649 bytes
+ res/drawable/emo_im_sad.png | Bin 0 -> 3572 bytes
+ res/drawable/emo_im_surprised.png | Bin 0 -> 3490 bytes
+ res/drawable/emo_im_tongue_sticking_out.png | Bin 0 -> 3653 bytes
+ res/drawable/emo_im_undecided.png | Bin 0 -> 3552 bytes
+ res/drawable/emo_im_winking.png | Bin 0 -> 3568 bytes
+ res/drawable/emo_im_wtf.png | Bin 0 -> 3591 bytes
+ res/drawable/emo_im_yelling.png | Bin 0 -> 3575 bytes
+ src/eu/siacs/conversations/Config.java | 1 +
+ .../ui/adapter/ConversationAdapter.java | 7 +-
+ .../conversations/ui/adapter/MessageAdapter.java | 7 +-
+ src/eu/siacs/conversations/utils/UIHelper.java | 100 ++++++++++++++++++++-
+ 22 files changed, 105 insertions(+), 10 deletions(-)
+ create mode 100644 res/drawable/emo_im_angel.png
+ create mode 100644 res/drawable/emo_im_cool.png
+ create mode 100644 res/drawable/emo_im_crying.png
+ create mode 100644 res/drawable/emo_im_embarrassed.png
+ create mode 100644 res/drawable/emo_im_foot_in_mouth.png
+ create mode 100644 res/drawable/emo_im_happy.png
+ create mode 100644 res/drawable/emo_im_heart.png
+ create mode 100644 res/drawable/emo_im_kissing.png
+ create mode 100644 res/drawable/emo_im_laughing.png
+ create mode 100644 res/drawable/emo_im_lips_are_sealed.png
+ create mode 100644 res/drawable/emo_im_money_mouth.png
+ create mode 100644 res/drawable/emo_im_sad.png
+ create mode 100644 res/drawable/emo_im_surprised.png
+ create mode 100644 res/drawable/emo_im_tongue_sticking_out.png
+ create mode 100644 res/drawable/emo_im_undecided.png
+ create mode 100644 res/drawable/emo_im_winking.png
+ create mode 100644 res/drawable/emo_im_wtf.png
+ create mode 100644 res/drawable/emo_im_yelling.png
+
+diff --git a/res/drawable/emo_im_angel.png b/res/drawable/emo_im_angel.png
+new file mode 100644
+index 0000000000000000000000000000000000000000..c34dfa69b4b1becdc3e8c107d54b276b110d9a8f
+GIT binary patch
+literal 3592
+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
+O0000<MNUMnLSTaa3c_#z
+
+literal 0
+HcmV?d00001
+
+diff --git a/res/drawable/emo_im_cool.png b/res/drawable/emo_im_cool.png
+new file mode 100644
+index 0000000000000000000000000000000000000000..d8eeb34e5d43a9390c9075ec16e7a183ec8cbf1f
+GIT binary patch
+literal 3466
+zcmV;54R!K~P)<h;3K|Lk000e1NJLTq000yK000yS1^@s6jfou%00009a7bBm000XU
+z000XU0RWnu7ytkYPiaF#P*7-ZbZ>KLZ*U+<Lqi~Na&Km7Y-Iodc-oy)XH-+^7Crag
+z^g>IBfRsybQWXdwQbLP>6p<z>Aqfylh#{fb6;Z(vMMVS~$e@S=j*ftg6;Uh<iVD~V
+z<RPMtgQJLw%KPDaqifc@_vX$1wbwr9tn;0-&j-K=43<bUQ8j=JsX`tR;Dg7+#^K~H
+zK!FM*Z~zbpvt%K2{UZSY_<lS*D<Z%Lz5oGu(+dayz)hRLFdT>f59&ghTmgWD0l;*T
+zI7<kC6aYYajzXpYKt=(8otP$50H6c_V9R4-;{Z@C0AMG7=F<Rxo%or10RUT+Ar%3j
+zkpLhQWr#!oXgdI`&sK^>09Y^p6lP1rIRMx#05C~cW=H_Aw*bJ-5DT&Z2n+x)QHX^p
+z00esgV8|mQcmRZ%02D^@S3L16t`O%c004NIvOKvYIYoh62rY33S640`D9%Y2D-<?i
+z0%4j!F2Z@488U%158(66005wo6%pWr^Zj_v4zAA5HjcIqUoGmt2LB>rV&neh&#Q1i
+z007~1e$oCcFS8neI|hJl{-P!B1ZZ9hpmq0)X0i`JwE&>$+E?>%_<lS*MWK+n+1cgf
+z<k(8YLR(?VSAG6x!e78w{cQPuJpA|d;J)G{fihizM+Erb!p!tcr5w+a34~(Y=8s4G
+zw+sLL9n&JjNn*KJDiq^U5^;`1nvC-@r6P$!k}1U{(*I=Q-z@tBKHoI}uxdU5dyy@u
+zU1J0GOD7Ombim^G008p4Z^6_k2m^p<gW=D2|L;HjN1!DDfM!XOaR2~bL?kX$%CkSm
+z2mk;?pn)o|K^yeJ7%adB9Ki+L!3+FgHiSYX#KJ-lLJDMn9CBbOtb#%)hRv`YDqt_v
+zKpix|QD}yfa1JiQRk#j4a1Z)n2%f<xynzV>LC6RbVIkUx0b+_+BaR3cnT7Zv!AJxW
+zizFb)h!jyGOOZ85F;a?DAXP{m@;!0_Ifq<Ex{*7`05XF7hP+2Hl!3BQJ=6@fL%FCo
+z8iYoo3(#bAF`ADSpqtQgv>H8(HlgRxt7s3}k3K`kFu>>-2Q$QMFfPW!La{h336o>X
+zu_CMttHv6zR;&ZNiS=X8v3CR#fknUxHUxJ<AYmRsNLWl*PS{AOARHt#5!wki2?K;t
+z!Y3k=s7tgax)J%r7-BLphge7~Bi0g+6E6^Zh(p9TBoc{3GAFr^0!gu?RMHaCM$&Fl
+zBk3%un>0uoBa_M6WNWeqIg~6QE69c9o#eyhGvpiOA@W-aonk<7r1(?fC{oI5N*U!4
+z<uv66WtcKSRim0x-Ke2d5jBrmLam{;Qm;{ms1r1GnmNsb7D-E`t)i9F8fX`2_i3-_
+zbh;7Ul^#x)&{xvS=|||7=mYe33=M`AgU5(xC>fg=2N-7=cNnjjOr{yriy6mMFgG#l
+znCF=fnQv8CDz++o6_Lscl}eQ+l^ZHARH>?_s@|##Rr6KLRFA1%Q+=*RRWnoLsR`7U
+zt5vF<Q0r40Q)j6=sE4X&sBct1q<&fbi3VB2Ov6t@q*0);U*o*SAPZv|vv@2aYYnT0
+zb%8a+Cb7-ge0D0knEf5Qi#@8Tp*ce{N;6lpQuCB%KL_KOarm5cP6_8Ir<e17iry6O
+zDdH&`rZh~sF=bq9s+O0QSgS~@QL9Jmy*94xr=6y~MY~!1fet~(N+(<=M`w@D1)b+p
+z*;C!83a1uLJv#NSE~;y#8=<>IcfW3@?wFpwUVxrVZ>QdQz32KIeJ}k~{cZZE^+ya?
+z2D1z#2HOnI7(B%_ac?{wFUQ;QQA1tBKtrWrm0_3Rgps+?Jfqb{jYbcQX~taRB;#$y
+zZN{S}1|}gUOHJxc?wV3fxuz+mJ4`!F$IZ;mqRrNsHJd##*D~ju=bP7?-?v~|cv>vB
+zsJ6IeNwVZxrdjT`yl#bBIa#GxRa#xMMy;K#CDyyGyQdMSxlWT#tDe?p!?5wT$+oGt
+z8L;Kp2HUQ-ZMJ=3XJQv;x5ci*?vuTfeY$;({XGW_huIFR9a<fJbF^|4I#xQ~n$Dc=
+zKYhjYmgz5NSkDm8*fZm{6U!;YX`NG>(?@3)XSs8O^N5RyOM=TTmp(3=8^+zpz2r)C
+z^>JO{deZfso3oq3?Wo(Y?l$ge?uXo;%ru`Vo>?<<(8I_>;8Eq#KMS9gFl*neeosSB
+zfoHYnBQIkwkyowPu(zdms`p{<7e4kra-ZWq<2*OsGTvEV%s0Td$hXT+!*8Bnh2KMe
+zBmZRodjHV?r+_5^X9J0WL4jKW`}lf%A-|44I@@LTvf1rHjG(ze6+w@Jt%Bvjts!X0
+z?2xS?_ve_-k<Mujg;0Lz*3buG=3$G&ehepthlN*$KaOySSQ^nWmo<0M+(UEUMEXRQ
+zMBbZcF;6+KElM>iKB_KiJlZ$9G`c^=E@oNG)mWWaNo-3TIW8)$Hg0Ub-~8?KhvJ>$
+z3*&nim@mj(aCxE5!t{lw7O5^0EIO7zOo&c6l<+|iDySBWCGrz@C5{St!X3hAA}`T4
+z(TLbXTq+(;@<=L8dXnssyft|w#WSTW<++3>sgS%(4NTpeI-VAqb|7ssJvzNHgOZVu
+zaYCvgO_R1~>SyL=cFU|~g|hy|Zi}}s9+d~lYqOB71z9Z$wnC=pR9Yz4DhIM>Wmjgu
+z&56o6maCpC&F##y%G;1PobR9i?GnNg;gYtchD%p19a!eQtZF&3JaKv33gZ<8D~47E
+ztUS1iwkmDaPpj=$m#%)jCVEY4fnLGNg2A-`YwHVD3gv};>)hAvT~AmqS>Lr``i7kw
+zJ{5_It`yrBmlc25DBO7E8;5VoznR>Ww5hAaxn$2~(q`%A-YuS64wkBy=9dm`4cXeX
+z4c}I@?e+FW+b@^RDBHV(wnMq2zdX3SWv9u`%{xC-q*U}&`cyXV(%rRT*Z6MH?i+i&
+z_B8C(+grT%{XWUQ+f@NoP1R=AW&26{v-dx)iK^-Nmiuj8txj!m?Z*Ss1N{dh4z}01
+z)YTo*JycSU)+_5r4#yw9{+;i4Ee$peRgIj+;v;ZGdF1K$3E%e~4LaI(jC-u%2h$&R
+z9cLXcYC@Xwnns&bn)_Q~Te?roKGD|d-g^8;+aC{{G(1^(O7m37Y1-+6)01cN&y1aw
+zoqc{T`P^XJqPBbIW6s}d4{z_f5Om?vMgNQEJG?v2T=KYd^0M3I6IZxbny)%vZR&LD
+zJpPl@Psh8QyPB@KTx+@RdcC!KX7}kEo;S|j^u2lU7XQ}Oo;f|;z4Ll+_r>@1-xl3|
+zawq-H%e&ckC+@AhPrP6BK<z=<L*0kfKU@CX*zeqbYQT4(^U>T#_XdT7&;F71j}Joy
+zkC~6lh7E@6o;W@^IpRNZ{ptLtL(gQ-CY~4mqW;US7Zxvm_|@yz&e53Bp_lTPlfP|z
+zrTyx_>lv@x#=^!PzR7qqF<$gm`|ZJZ+;<)Cqu&ot<a{81DF0~rvGr5Xr~8u`lav1h
+z1DNytV>2z=0000WV@Og>004R=004l4008;_004mL004C`008P>0026e000+nl3&F}
+z0008DNkl<Zc-pL#OHUI~7>1vjP7SoyP8HCiXcIMF;ss^pqKLP|jR^}^ZbVmZ6l>y2
+zV_1xC^$+N%e?Sr!CN8`#h=~{CEs+SV3Mz%6RoYHx=FA)y1r#-Cls7q>FW>i^H|Ndy
+z05HsS$}rP9|0u&u>xP+50jP$VZUwSH)-cmu{{TBVJrAG(xv7%^Ov6kc1~Lkv6tEL$
+z{fW^J+?V({;KtP4bRFe~n|gq5Kvz%!g%u5PmN&$aQsM^zzVGvKVv>BZj3fXgKoQ8C
+zJ@WACv_op-(50Fq*|BkD6K!i-SR9Xnln6h-69U)s*wC^BYqHFnVT*V9uYl4I^nT|6
+z=gkfsxT}TK*7i*;v@|A&*4GmbYrg;;*QMgR*p9>4mom?@6ZnDb2X>t~a<8bYUX_x}
+zqtvN4m@gHzqdlqKD?PccQ`h?#8m}<)euVM2FDQ)UC|IM^y??;H`v(z1uy;={nQMJy
+zEt}l%C&mX~QW(imv_=VM?{Ksy)vE!W051o!d@hMuuwddH&CO9_u?2WSC7FzH_tp()
+z-Z~3bEshbcIqcK`eS3SH+s2_;-s^x^YyqcF@0h6_@7}@%<07S!H&Y8woo(qjfUcZ3
+zJ7i-*BbkV>IJOWy5+xpu{#D9l$D!g>DOFv**e-d?N1eBHRb?jSUo`Tu@<+hqXH_m=
+zDe&aU>|X76%}<|y<;1x>n>RJGJQ*RmtR6{-QA;IXsN?k@gu=~iUSrYL_JLB>of~*y
+z|1x%WM7a5=iGk4uUgZ{{XkippBhhHHZ{26sFCAdX!Z9iie|8Aal#m=dV1XQ;Bb4v`
+zK_F*<#Y#2MOSV8&9E4D@T}fTpMbk7u;`_Bt;|YN)1diw72tn0#sd@t24Jegsn@0mO
+sWjnYyWLI>k{MWYwGK!S*x*Pa50JK+Yk(f#W-~a#s07*qoM6N<$g3icsYybcN
+
+literal 0
+HcmV?d00001
+
+diff --git a/res/drawable/emo_im_crying.png b/res/drawable/emo_im_crying.png
+new file mode 100644
+index 0000000000000000000000000000000000000000..1cafdb32613c890dbb4f7317ff98cf3711514550
+GIT binary patch
+literal 3558
+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
+
+literal 0
+HcmV?d00001
+
+diff --git a/res/drawable/emo_im_embarrassed.png b/res/drawable/emo_im_embarrassed.png
+new file mode 100644
+index 0000000000000000000000000000000000000000..e4db9634f83afd35404fc577ab0764a7005ea229
+GIT binary patch
+literal 3619
+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
+
+literal 0
+HcmV?d00001
+
+diff --git a/res/drawable/emo_im_foot_in_mouth.png b/res/drawable/emo_im_foot_in_mouth.png
+new file mode 100644
+index 0000000000000000000000000000000000000000..09d1fba62e4ac6381f50da3b030b1f248fc74a5c
+GIT binary patch
+literal 3603
+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
+ZYXJRYNqc9=?u7sV002ovPDHLkV1jnTzBvE@
+
+literal 0
+HcmV?d00001
+
+diff --git a/res/drawable/emo_im_happy.png b/res/drawable/emo_im_happy.png
+new file mode 100644
+index 0000000000000000000000000000000000000000..b86602ae7e996b160558e88cce1cb8a6b87f4e06
+GIT binary patch
+literal 3591
+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
+N002ovPDHLkV1nAjz<2-v
+
+literal 0
+HcmV?d00001
+
+diff --git a/res/drawable/emo_im_heart.png b/res/drawable/emo_im_heart.png
+new file mode 100644
+index 0000000000000000000000000000000000000000..d88bcccd946ac77bf5ccba1603044a8d9bdf8297
+GIT binary patch
+literal 684
+zcmeAS@N?(olHy`uVBq!ia0vp^A|TAc3?z4jzqMyzU{nb3332`Z|36S<v#JviT}Z2j
+zFo5I%hsej>vw!V5`g7-@pSupfnziDHXX2Cod0#i}c{6drm)Xm|E?&RaJm`RJ_#vn0
+z8>v;F+oykOo%*D*=T1(;CRN8*CG8&yTRv5Fzpw5Ea#t(aelBQ!mr%M?!Qx{=>D!=;
+zd9uduL$hDG#ZH&ff9W3g)GF|qZSYeI|JUA0lO(jSx<=hsvb?Wm`#{(Ep^?W!Q}0LS
+zKF6&5r^_2Wbqu?$WPV%4^0vD5ZDor`u2FN8O_%A~K5-1ap=5HyKB!w-<C0_WO)cvy
+ziiUUe9ZuT%Pn6dw;T7Ly>3P%K{eq(Y5^W10w?|&<g00UPMV;yDMs*SjXKlPrC}>uQ
+z%3QSdI&0}#C@3~r!vGj;D%1Br1qM(;NswPK1A{_AgFrw-!h2w-{qF~p4G97F|Nnn~
+z-vA`!Q1JhM0~iH>xc>#fN`TTpK@doo4<x|s_X!5)|NlR)(EtDc`~;u`P<Xw<;kM=~
+zpk22;T^vIsF6W-ljCXXDIQH=QwmCYS6DI_v=ugtsYAM_F{?YGx?&37RzZNn1^Q!;7
+zZ_AKpkXq}vI#ImprNgDorxzW}Fp`hzyRqTc8MD=neUtu1JS&*jkyyU5;?=i;xb-{U
+z8Bcis$LYiGsfCrUjSseZ88|E~a8Z?6l%caus5|J<GqatlrPCLDsa2bOT3l|2lil>Q
+zB9~h(J)Zn#XUw_}fwdFsLspxc?YZ{D{NuNOA6NePmDjbOdF}kN_U!WNAKec11}SXH
+zAA^*RO@3Kobgb-1&b}Y5R!KXL<i)K0_gqSPihf{T-Ly48Z!&ng`njxgN@xNAVp&%6
+
+literal 0
+HcmV?d00001
+
+diff --git a/res/drawable/emo_im_kissing.png b/res/drawable/emo_im_kissing.png
+new file mode 100644
+index 0000000000000000000000000000000000000000..56378f6a8dd200ae0664d5154b78de141d809777
+GIT binary patch
+literal 3492
+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
+SPZf;-0000<MNUMnLSTZN>4Gf)
+
+literal 0
+HcmV?d00001
+
+diff --git a/res/drawable/emo_im_laughing.png b/res/drawable/emo_im_laughing.png
+new file mode 100644
+index 0000000000000000000000000000000000000000..980bf28118b738ddfda089b920161265847a1942
+GIT binary patch
+literal 3624
+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
+
+literal 0
+HcmV?d00001
+
+diff --git a/res/drawable/emo_im_lips_are_sealed.png b/res/drawable/emo_im_lips_are_sealed.png
+new file mode 100644
+index 0000000000000000000000000000000000000000..f2de993b366123a5b9b36cc324b46cc095a0744f
+GIT binary patch
+literal 3670
+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
+
+literal 0
+HcmV?d00001
+
+diff --git a/res/drawable/emo_im_money_mouth.png b/res/drawable/emo_im_money_mouth.png
+new file mode 100644
+index 0000000000000000000000000000000000000000..08c53fd690d00bdbde5c7c8f89826449bb8ff199
+GIT binary patch
+literal 3649
+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
+TH1iCn00000NkvXXu0mjfH-h7(
+
+literal 0
+HcmV?d00001
+
+diff --git a/res/drawable/emo_im_sad.png b/res/drawable/emo_im_sad.png
+new file mode 100644
+index 0000000000000000000000000000000000000000..31c08d06d522bb87bf8f6e3592cae9c4be49452d
+GIT binary patch
+literal 3572
+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
+
+literal 0
+HcmV?d00001
+
+diff --git a/res/drawable/emo_im_surprised.png b/res/drawable/emo_im_surprised.png
+new file mode 100644
+index 0000000000000000000000000000000000000000..abe8c7ad0d2445772de6365fb20a3fee91cb8284
+GIT binary patch
+literal 3490
+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
+Q@&Et;07*qoM6N<$f>?!)(*OVf
+
+literal 0
+HcmV?d00001
+
+diff --git a/res/drawable/emo_im_tongue_sticking_out.png b/res/drawable/emo_im_tongue_sticking_out.png
+new file mode 100644
+index 0000000000000000000000000000000000000000..6f0f47b0e1a6115619c8b16f8ca1997d286e8a58
+GIT binary patch
+literal 3653
+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
+XE1h!kIdlzY00000NkvXXu0mjfLeSRg
+
+literal 0
+HcmV?d00001
+
+diff --git a/res/drawable/emo_im_undecided.png b/res/drawable/emo_im_undecided.png
+new file mode 100644
+index 0000000000000000000000000000000000000000..eb4f8c5bd39230600f6c0fe9d7f86929c418ccff
+GIT binary patch
+literal 3552
+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
+a_Xhx-&S;z!o5<<_0000<MNUMnLSTYvVxt8B
+
+literal 0
+HcmV?d00001
+
+diff --git a/res/drawable/emo_im_winking.png b/res/drawable/emo_im_winking.png
+new file mode 100644
+index 0000000000000000000000000000000000000000..568562ad6fa7a239c0601e02ed9b296340ce25c4
+GIT binary patch
+literal 3568
+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
+
+literal 0
+HcmV?d00001
+
+diff --git a/res/drawable/emo_im_wtf.png b/res/drawable/emo_im_wtf.png
+new file mode 100644
+index 0000000000000000000000000000000000000000..41dd47fcc16f24316f5cba2e980f61152658cb1b
+GIT binary patch
+literal 3591
+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
+N002ovPDHLkV1j&|w`l+X
+
+literal 0
+HcmV?d00001
+
+diff --git a/res/drawable/emo_im_yelling.png b/res/drawable/emo_im_yelling.png
+new file mode 100644
+index 0000000000000000000000000000000000000000..c3c8612bd102058c07ff7b3a2ae425c74bd03aaf
+GIT binary patch
+literal 3575
+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
+
+literal 0
+HcmV?d00001
+
+diff --git a/src/eu/siacs/conversations/Config.java b/src/eu/siacs/conversations/Config.java
+index 1725eca..f781db2 100644
+--- a/src/eu/siacs/conversations/Config.java
++++ b/src/eu/siacs/conversations/Config.java
+@@ -18,6 +18,7 @@ public final class Config {
+ public static final int MESSAGE_MERGE_WINDOW = 20;
+
+ public static final boolean PARSE_EMOTICONS = false;
++ public static final boolean UTF8_EMOTICONS = false;
+
+ private Config() {
+
+diff --git a/src/eu/siacs/conversations/ui/adapter/ConversationAdapter.java b/src/eu/siacs/conversations/ui/adapter/ConversationAdapter.java
+index bfcba13..8a988d8 100644
+--- a/src/eu/siacs/conversations/ui/adapter/ConversationAdapter.java
++++ b/src/eu/siacs/conversations/ui/adapter/ConversationAdapter.java
+@@ -64,10 +64,9 @@ public class ConversationAdapter extends ArrayAdapter<Conversation> {
+ || latestMessage.getType() == Message.TYPE_PRIVATE) {
+ if ((latestMessage.getEncryption() != Message.ENCRYPTION_PGP)
+ && (latestMessage.getEncryption() != Message.ENCRYPTION_DECRYPTION_FAILED)) {
+- String body = Config.PARSE_EMOTICONS ? UIHelper
+- .transformAsciiEmoticons(latestMessage.getBody())
+- : latestMessage.getBody();
+- convLastMsg.setText(body);
++ convLastMsg.setText(Config.PARSE_EMOTICONS ? UIHelper
++ .transformAsciiEmoticons(getContext(), latestMessage.getBody())
++ : latestMessage.getBody());
+ } else {
+ convLastMsg.setText(R.string.encrypted_message_received);
+ }
+diff --git a/src/eu/siacs/conversations/ui/adapter/MessageAdapter.java b/src/eu/siacs/conversations/ui/adapter/MessageAdapter.java
+index 967042d..1566688 100644
+--- a/src/eu/siacs/conversations/ui/adapter/MessageAdapter.java
++++ b/src/eu/siacs/conversations/ui/adapter/MessageAdapter.java
+@@ -217,10 +217,9 @@ public class MessageAdapter extends ArrayAdapter<Message> {
+ viewHolder.messageBody.setVisibility(View.VISIBLE);
+ if (message.getBody() != null) {
+ if (message.getType() != Message.TYPE_PRIVATE) {
+- String body = Config.PARSE_EMOTICONS ? UIHelper
+- .transformAsciiEmoticons(message.getMergedBody())
+- : message.getMergedBody();
+- viewHolder.messageBody.setText(body);
++ viewHolder.messageBody.setText(Config.PARSE_EMOTICONS ? UIHelper
++ .transformAsciiEmoticons(getContext(), message.getMergedBody())
++ : message.getMergedBody());
+ } else {
+ String privateMarker;
+ if (message.getStatus() <= Message.STATUS_RECEIVED) {
+diff --git a/src/eu/siacs/conversations/utils/UIHelper.java b/src/eu/siacs/conversations/utils/UIHelper.java
+index 54c370e..8925e45 100644
+--- a/src/eu/siacs/conversations/utils/UIHelper.java
++++ b/src/eu/siacs/conversations/utils/UIHelper.java
+@@ -4,11 +4,15 @@ import java.io.FileNotFoundException;
+ import java.util.ArrayList;
+ import java.util.Calendar;
+ import java.util.Date;
++import java.util.HashMap;
+ import java.util.List;
+ import java.util.Locale;
++import java.util.Map;
++import java.util.Map.Entry;
+ import java.util.regex.Pattern;
+ import java.util.regex.Matcher;
+
++import eu.siacs.conversations.Config;
+ import eu.siacs.conversations.R;
+ import eu.siacs.conversations.entities.Account;
+ import eu.siacs.conversations.entities.Contact;
+@@ -38,9 +42,12 @@ import android.preference.PreferenceManager;
+ import android.provider.ContactsContract.Contacts;
+ import android.support.v4.app.NotificationCompat;
+ import android.support.v4.app.TaskStackBuilder;
++import android.text.Spannable.Factory;
+ import android.text.format.DateFormat;
+ import android.text.format.DateUtils;
++import android.text.style.ImageSpan;
+ import android.text.Html;
++import android.text.Spannable;
+ import android.util.DisplayMetrics;
+ import android.view.LayoutInflater;
+ import android.view.View;
+@@ -544,7 +551,84 @@ public class UIHelper {
+ return getContactPicture(account.getJid(), size, context, false);
+ }
+ }
++
++ public static final Map<Pattern, Integer> ANDROID_EMOTICONS = new HashMap<Pattern, Integer>();
++
++ private static final Factory spannableFactory = Spannable.Factory
++ .getInstance();
++
++ static {
++ addPattern(ANDROID_EMOTICONS, ":)", R.drawable.emo_im_happy);
++ addPattern(ANDROID_EMOTICONS, ":-)", R.drawable.emo_im_happy);
++ addPattern(ANDROID_EMOTICONS, ":(", R.drawable.emo_im_sad);
++ addPattern(ANDROID_EMOTICONS, ":-(", R.drawable.emo_im_sad);
++ addPattern(ANDROID_EMOTICONS, ";)", R.drawable.emo_im_winking);
++ addPattern(ANDROID_EMOTICONS, ";-)", R.drawable.emo_im_winking);
++ addPattern(ANDROID_EMOTICONS, ":P",
++ R.drawable.emo_im_tongue_sticking_out);
++ addPattern(ANDROID_EMOTICONS, ":-P",
++ R.drawable.emo_im_tongue_sticking_out);
++ addPattern(ANDROID_EMOTICONS, "=-O", R.drawable.emo_im_surprised);
++ addPattern(ANDROID_EMOTICONS, ":*", R.drawable.emo_im_kissing);
++ addPattern(ANDROID_EMOTICONS, ":-*", R.drawable.emo_im_kissing);
++ addPattern(ANDROID_EMOTICONS, ":O", R.drawable.emo_im_wtf);
++ addPattern(ANDROID_EMOTICONS, ":-O", R.drawable.emo_im_wtf);
++ addPattern(ANDROID_EMOTICONS, "B)", R.drawable.emo_im_cool);
++ addPattern(ANDROID_EMOTICONS, "B-)", R.drawable.emo_im_cool);
++ addPattern(ANDROID_EMOTICONS, "8)", R.drawable.emo_im_cool);
++ addPattern(ANDROID_EMOTICONS, "8-)", R.drawable.emo_im_cool);
++ addPattern(ANDROID_EMOTICONS, ":$", R.drawable.emo_im_money_mouth);
++ addPattern(ANDROID_EMOTICONS, ":-$", R.drawable.emo_im_money_mouth);
++ addPattern(ANDROID_EMOTICONS, ":-!", R.drawable.emo_im_foot_in_mouth);
++ addPattern(ANDROID_EMOTICONS, ":-[", R.drawable.emo_im_embarrassed);
++ addPattern(ANDROID_EMOTICONS, "O:)", R.drawable.emo_im_angel);
++ addPattern(ANDROID_EMOTICONS, "O:-)", R.drawable.emo_im_angel);
++ addPattern(ANDROID_EMOTICONS, ":\\", R.drawable.emo_im_undecided);
++ addPattern(ANDROID_EMOTICONS, ":-\\", R.drawable.emo_im_undecided);
++ addPattern(ANDROID_EMOTICONS, ":'(", R.drawable.emo_im_crying);
++ addPattern(ANDROID_EMOTICONS, ":D", R.drawable.emo_im_laughing);
++ addPattern(ANDROID_EMOTICONS, ":-D", R.drawable.emo_im_laughing);
++ addPattern(ANDROID_EMOTICONS, "O_o", R.drawable.emo_im_wtf);
++ addPattern(ANDROID_EMOTICONS, "o_O", R.drawable.emo_im_wtf);
++ addPattern(ANDROID_EMOTICONS, ">:O", R.drawable.emo_im_yelling);
++ addPattern(ANDROID_EMOTICONS, ">:0", R.drawable.emo_im_yelling);
++ addPattern(ANDROID_EMOTICONS, ":S", R.drawable.emo_im_lips_are_sealed);
++ addPattern(ANDROID_EMOTICONS, ":-S", R.drawable.emo_im_lips_are_sealed);
++ addPattern(ANDROID_EMOTICONS, "<3", R.drawable.emo_im_heart);
++ }
+
++ private static void addPattern(Map<Pattern, Integer> map, String smile,
++ int resource) {
++ map.put(Pattern.compile(Pattern.quote(smile)), resource);
++ }
++
++ private static boolean getSmiledText(Context context, Spannable spannable) {
++ boolean hasChanges = false;
++ Map<Pattern, Integer> emoticons = ANDROID_EMOTICONS;
++ for (Entry<Pattern, Integer> entry : emoticons.entrySet()) {
++ Matcher matcher = entry.getKey().matcher(spannable);
++ while (matcher.find()) {
++ boolean set = true;
++ for (ImageSpan span : spannable.getSpans(matcher.start(),
++ matcher.end(), ImageSpan.class))
++ if (spannable.getSpanStart(span) >= matcher.start()
++ && spannable.getSpanEnd(span) <= matcher.end())
++ spannable.removeSpan(span);
++ else {
++ set = false;
++ break;
++ }
++ if (set) {
++ spannable.setSpan(new ImageSpan(context, entry.getValue()),
++ matcher.start(), matcher.end(),
++ Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
++ hasChanges = true;
++ }
++ }
++ }
++ return hasChanges;
++ }
++
+ private final static class EmoticonPattern {
+ Pattern pattern;
+ String replacement;
+@@ -575,8 +659,8 @@ public class UIHelper {
+ new EmoticonPattern(":-?\\(", 0x1f61e),
+ new EmoticonPattern(":-?[0Oo]", 0x1f62e),
+ new EmoticonPattern("\\\\o/", 0x1F631), };
+-
+- public static String transformAsciiEmoticons(String body) {
++
++ private static String transformAsciiEmoticonsToUtf8(String body) {
+ if (body != null) {
+ for (EmoticonPattern p : patterns) {
+ body = p.replaceAll(body);
+@@ -585,4 +669,16 @@ public class UIHelper {
+ }
+ return body;
+ }
++
++ public static Spannable transformAsciiEmoticons(Context context, String body) {
++ Spannable spannable;
++ if (Config.UTF8_EMOTICONS) {
++ spannable = spannableFactory.newSpannable(transformAsciiEmoticonsToUtf8(body));
++ }
++ else {
++ spannable = spannableFactory.newSpannable(body);
++ getSmiledText(context, spannable);
++ }
++ return spannable;
++ }
+ }
+--
+1.9.4.msysgit.1
+
diff --git a/manifest-merger-release-report.txt b/manifest-merger-release-report.txt
new file mode 100644
index 00000000..b02dcf65
--- /dev/null
+++ b/manifest-merger-release-report.txt
@@ -0,0 +1,270 @@
+-- Merging decision tree log ---
+manifest
+ADDED from AndroidManifest.xml:2:1
+ package
+ ADDED from AndroidManifest.xml:3:5
+ android:versionName
+ INJECTED from AndroidManifest.xml:0:0
+ INJECTED from AndroidManifest.xml:0:0
+ xmlns:tools
+ ADDED from AndroidManifest.xml:5:5
+ xmlns:android
+ ADDED from AndroidManifest.xml:4:5
+ android:versionCode
+ INJECTED from AndroidManifest.xml:0:0
+ INJECTED from AndroidManifest.xml:0:0
+uses-permission#android.permission.WRITE_EXTERNAL_STORAGE
+ADDED from AndroidManifest.xml:7:5
+ android:name
+ ADDED from AndroidManifest.xml:7:22
+uses-permission#android.permission.READ_EXTERNAL_STORAGE
+ADDED from AndroidManifest.xml:8:5
+ android:name
+ ADDED from AndroidManifest.xml:8:22
+uses-permission#android.permission.READ_CONTACTS
+ADDED from AndroidManifest.xml:9:5
+ android:name
+ ADDED from AndroidManifest.xml:9:22
+uses-permission#android.permission.READ_PROFILE
+ADDED from AndroidManifest.xml:10:5
+ android:name
+ ADDED from AndroidManifest.xml:10:22
+uses-permission#android.permission.INTERNET
+ADDED from AndroidManifest.xml:11:5
+ android:name
+ ADDED from AndroidManifest.xml:11:22
+uses-permission#android.permission.ACCESS_NETWORK_STATE
+ADDED from AndroidManifest.xml:12:5
+ android:name
+ ADDED from AndroidManifest.xml:12:22
+uses-permission#android.permission.WAKE_LOCK
+ADDED from AndroidManifest.xml:13:5
+ android:name
+ ADDED from AndroidManifest.xml:13:22
+uses-permission#android.permission.RECEIVE_BOOT_COMPLETED
+ADDED from AndroidManifest.xml:14:5
+ android:name
+ ADDED from AndroidManifest.xml:14:22
+uses-permission#android.permission.VIBRATE
+ADDED from AndroidManifest.xml:15:5
+ android:name
+ ADDED from AndroidManifest.xml:15:22
+uses-permission#android.permission.NFC
+ADDED from AndroidManifest.xml:16:5
+ android:name
+ ADDED from AndroidManifest.xml:16:22
+application
+ADDED from AndroidManifest.xml:18:5
+MERGED from Conversations.libs:openpgp-api-lib:unspecified:11:5
+MERGED from Conversations.libs:MemorizingTrustManager:unspecified:11:5
+MERGED from com.android.support:support-v13:21.0.3:16:5
+MERGED from com.android.support:support-v4:21.0.3:16:5
+ android:label
+ ADDED from AndroidManifest.xml:21:9
+ REJECTED from Conversations.libs:MemorizingTrustManager:unspecified:11:18
+ android:allowBackup
+ ADDED from AndroidManifest.xml:19:9
+ android:icon
+ ADDED from AndroidManifest.xml:20:9
+ android:theme
+ ADDED from AndroidManifest.xml:22:9
+ tools:replace
+ ADDED from AndroidManifest.xml:23:9
+service#eu.siacs.conversations.services.XmppConnectionService
+ADDED from AndroidManifest.xml:24:9
+ android:name
+ ADDED from AndroidManifest.xml:24:18
+receiver#eu.siacs.conversations.services.EventReceiver
+ADDED from AndroidManifest.xml:26:9
+ android:name
+ ADDED from AndroidManifest.xml:26:19
+intent-filter#android.intent.action.ACTION_SHUTDOWN+android.intent.action.BOOT_COMPLETED+android.net.conn.CONNECTIVITY_CHANGE
+ADDED from AndroidManifest.xml:27:13
+action#android.intent.action.BOOT_COMPLETED
+ADDED from AndroidManifest.xml:28:17
+ android:name
+ ADDED from AndroidManifest.xml:28:25
+action#android.net.conn.CONNECTIVITY_CHANGE
+ADDED from AndroidManifest.xml:29:17
+ android:name
+ ADDED from AndroidManifest.xml:29:25
+action#android.intent.action.ACTION_SHUTDOWN
+ADDED from AndroidManifest.xml:30:17
+ android:name
+ ADDED from AndroidManifest.xml:30:25
+activity#eu.siacs.conversations.ui.ConversationActivity
+ADDED from AndroidManifest.xml:34:9
+ android:label
+ ADDED from AndroidManifest.xml:36:13
+ android:launchMode
+ ADDED from AndroidManifest.xml:37:13
+ android:windowSoftInputMode
+ ADDED from AndroidManifest.xml:38:13
+ android:name
+ ADDED from AndroidManifest.xml:35:13
+intent-filter#android.intent.action.MAIN+android.intent.category.LAUNCHER
+ADDED from AndroidManifest.xml:39:13
+action#android.intent.action.MAIN
+ADDED from AndroidManifest.xml:40:17
+ android:name
+ ADDED from AndroidManifest.xml:40:25
+category#android.intent.category.LAUNCHER
+ADDED from AndroidManifest.xml:42:17
+ android:name
+ ADDED from AndroidManifest.xml:42:27
+activity#eu.siacs.conversations.ui.StartConversationActivity
+ADDED from AndroidManifest.xml:45:9
+ android:label
+ ADDED from AndroidManifest.xml:48:13
+ android:configChanges
+ ADDED from AndroidManifest.xml:47:13
+ android:name
+ ADDED from AndroidManifest.xml:46:13
+intent-filter#android.intent.action.SENDTO+android.intent.category.DEFAULT
+ADDED from AndroidManifest.xml:49:13
+action#android.intent.action.SENDTO
+ADDED from AndroidManifest.xml:50:17
+ android:name
+ ADDED from AndroidManifest.xml:50:25
+category#android.intent.category.DEFAULT
+ADDED from AndroidManifest.xml:52:17
+ android:name
+ ADDED from AndroidManifest.xml:52:27
+data
+ADDED from AndroidManifest.xml:54:17
+ android:scheme
+ ADDED from AndroidManifest.xml:54:23
+intent-filter#android.intent.action.VIEW+android.intent.category.BROWSABLE+android.intent.category.DEFAULT
+ADDED from AndroidManifest.xml:57:13
+action#android.intent.action.VIEW
+ADDED from AndroidManifest.xml:58:17
+ android:name
+ ADDED from AndroidManifest.xml:58:25
+category#android.intent.category.BROWSABLE
+ADDED from AndroidManifest.xml:61:17
+ android:name
+ ADDED from AndroidManifest.xml:61:27
+intent-filter#android.intent.category.DEFAULT+android.nfc.action.NDEF_DISCOVERED
+ADDED from AndroidManifest.xml:65:13
+action#android.nfc.action.NDEF_DISCOVERED
+ADDED from AndroidManifest.xml:66:17
+ android:name
+ ADDED from AndroidManifest.xml:66:25
+activity#eu.siacs.conversations.ui.SettingsActivity
+ADDED from AndroidManifest.xml:73:9
+ android:label
+ ADDED from AndroidManifest.xml:75:13
+ android:name
+ ADDED from AndroidManifest.xml:74:13
+activity#eu.siacs.conversations.ui.ChooseContactActivity
+ADDED from AndroidManifest.xml:76:9
+ android:label
+ ADDED from AndroidManifest.xml:78:13
+ android:name
+ ADDED from AndroidManifest.xml:77:13
+activity#eu.siacs.conversations.ui.BlocklistActivity
+ADDED from AndroidManifest.xml:79:9
+ android:label
+ ADDED from AndroidManifest.xml:81:13
+ android:name
+ ADDED from AndroidManifest.xml:80:13
+activity#eu.siacs.conversations.ui.ChangePasswordActivity
+ADDED from AndroidManifest.xml:82:6
+ android:label
+ ADDED from AndroidManifest.xml:84:7
+ android:name
+ ADDED from AndroidManifest.xml:83:7
+activity#eu.siacs.conversations.ui.ManageAccountActivity
+ADDED from AndroidManifest.xml:85:9
+ android:label
+ ADDED from AndroidManifest.xml:88:13
+ android:configChanges
+ ADDED from AndroidManifest.xml:87:13
+ android:name
+ ADDED from AndroidManifest.xml:86:13
+activity#eu.siacs.conversations.ui.EditAccountActivity
+ADDED from AndroidManifest.xml:89:9
+ android:windowSoftInputMode
+ ADDED from AndroidManifest.xml:91:13
+ android:name
+ ADDED from AndroidManifest.xml:90:13
+activity#eu.siacs.conversations.ui.ConferenceDetailsActivity
+ADDED from AndroidManifest.xml:92:9
+ android:label
+ ADDED from AndroidManifest.xml:94:13
+ android:windowSoftInputMode
+ ADDED from AndroidManifest.xml:95:13
+ android:name
+ ADDED from AndroidManifest.xml:93:13
+activity#eu.siacs.conversations.ui.ContactDetailsActivity
+ADDED from AndroidManifest.xml:96:9
+ android:label
+ ADDED from AndroidManifest.xml:98:13
+ android:windowSoftInputMode
+ ADDED from AndroidManifest.xml:99:13
+ android:name
+ ADDED from AndroidManifest.xml:97:13
+activity#eu.siacs.conversations.ui.PublishProfilePictureActivity
+ADDED from AndroidManifest.xml:100:9
+ android:label
+ ADDED from AndroidManifest.xml:102:13
+ android:windowSoftInputMode
+ ADDED from AndroidManifest.xml:103:13
+ android:name
+ ADDED from AndroidManifest.xml:101:13
+activity#eu.siacs.conversations.ui.VerifyOTRActivity
+ADDED from AndroidManifest.xml:104:9
+ android:label
+ ADDED from AndroidManifest.xml:106:13
+ android:windowSoftInputMode
+ ADDED from AndroidManifest.xml:107:13
+ android:name
+ ADDED from AndroidManifest.xml:105:13
+activity#eu.siacs.conversations.ui.ShareWithActivity
+ADDED from AndroidManifest.xml:108:9
+ android:label
+ ADDED from AndroidManifest.xml:110:13
+ android:name
+ ADDED from AndroidManifest.xml:109:13
+intent-filter#android.intent.action.SEND+android.intent.category.DEFAULT
+ADDED from AndroidManifest.xml:111:13
+action#android.intent.action.SEND
+ADDED from AndroidManifest.xml:112:17
+ android:name
+ ADDED from AndroidManifest.xml:112:25
+activity#de.duenndns.ssl.MemorizingActivity
+ADDED from AndroidManifest.xml:126:9
+MERGED from Conversations.libs:MemorizingTrustManager:unspecified:12:9
+ android:theme
+ ADDED from AndroidManifest.xml:128:13
+ REJECTED from Conversations.libs:MemorizingTrustManager:unspecified:14:13
+ tools:replace
+ ADDED from AndroidManifest.xml:129:13
+ android:name
+ ADDED from AndroidManifest.xml:127:13
+activity#eu.siacs.conversations.ui.AboutActivity
+ADDED from AndroidManifest.xml:130:9
+ android:label
+ ADDED from AndroidManifest.xml:132:13
+ android:parentActivityName
+ ADDED from AndroidManifest.xml:133:13
+ android:name
+ ADDED from AndroidManifest.xml:131:13
+meta-data#android.support.PARENT_ACTIVITY
+ADDED from AndroidManifest.xml:134:13
+ android:value
+ ADDED from AndroidManifest.xml:136:17
+ android:name
+ ADDED from AndroidManifest.xml:135:17
+uses-sdk
+INJECTED from AndroidManifest.xml:0:0 reason: use-sdk injection requested
+MERGED from Conversations.libs:openpgp-api-lib:unspecified:7:5
+MERGED from Conversations.libs:MemorizingTrustManager:unspecified:7:5
+MERGED from com.android.support:support-v13:21.0.3:15:5
+MERGED from com.android.support:support-v4:21.0.3:15:5
+ android:targetSdkVersion
+ INJECTED from AndroidManifest.xml:0:0
+ INJECTED from AndroidManifest.xml:0:0
+ android:minSdkVersion
+ INJECTED from AndroidManifest.xml:0:0
+ INJECTED from AndroidManifest.xml:0:0
diff --git a/settings.gradle b/settings.gradle
index aee35962..7e97c5bd 100644
--- a/settings.gradle
+++ b/settings.gradle
@@ -1,4 +1,4 @@
-include ':libs:MemorizingTrustManager'
+include ':libs:MemorizingTrustManager', ':libs:emojicon', ':libs:colorpicker'
include ':libs:openpgp-api-lib'
rootProject.name = 'Conversations'
diff --git a/src/main/.project b/src/main/.project
new file mode 100644
index 00000000..d2f05ef9
--- /dev/null
+++ b/src/main/.project
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>ConversationActivity</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>com.android.ide.eclipse.adt.ResourceManagerBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>com.android.ide.eclipse.adt.PreCompilerBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>com.android.ide.eclipse.adt.ApkBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>com.android.ide.eclipse.adt.AndroidNature</nature>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ </natures>
+</projectDescription>
diff --git a/src/main/java/de/tzur/conversations/Settings.java b/src/main/java/de/tzur/conversations/Settings.java
new file mode 100644
index 00000000..c919d60c
--- /dev/null
+++ b/src/main/java/de/tzur/conversations/Settings.java
@@ -0,0 +1,94 @@
+package de.tzur.conversations;
+
+import android.content.SharedPreferences;
+import android.util.Log;
+
+/**
+ * This class is used to provide access to settings which have to be accessed frequently.
+ * Every setting in this class has to be updated using @see SettingsActivity#onSharedPreferenceChanged.
+ */
+public final class Settings {
+
+ /**
+ * Initializes the settings provided via this static class.
+ * @param preferences the shared preferences of the app.
+ */
+ public static void initSettingsClassWithPreferences(SharedPreferences preferences) {
+ Log.d("SETTING", "Initializing settings");
+ String[] preferenceNames = { "parse_emoticons", "send_button_status", "led_notification_color", "auto_download_file_wlan", "auto_download_file_link", "confirm_messages_list" };
+ for (String name : preferenceNames) {
+ Settings.synchronizeSettingsClassWithPreferences(preferences, name);
+ }
+ }
+
+ /**
+ * Synchronizes the setting value in this class on settings update in SettingsActivity.
+ * @param preferences the shared preferences of the app.
+ * @param name the name of the setting to synchronize.
+ */
+ public static void synchronizeSettingsClassWithPreferences(SharedPreferences preferences, String name) {
+ Log.d("SETTING", "Synchronizing settings");
+ switch (name) {
+ case "parse_emoticons":
+ Settings.PARSE_EMOTICONS = preferences.getBoolean(name, Settings.PARSE_EMOTICONS);
+ break;
+ case "send_button_status":
+ Settings.SHOW_ONLINE_STATUS = preferences.getBoolean(name, Settings.SHOW_ONLINE_STATUS);
+ break;
+ case "led_notify_color":
+ Settings.LED_COLOR = preferences.getInt(name, Settings.LED_COLOR);
+ break;
+ case "auto_download_file_wlan":
+ Settings.DOWNLOAD_ONLY_WLAN = preferences.getBoolean(name, Settings.DOWNLOAD_ONLY_WLAN);
+ break;
+ case "auto_download_file_link":
+ Settings.DOWNLOAD_IMAGE_LINKS = preferences.getBoolean(name, Settings.DOWNLOAD_IMAGE_LINKS);
+ break;
+ case "confirm_messages_list":
+ int iPref = Settings.CONFIRM_MESSAGE_RECEIVED && Settings.CONFIRM_MESSAGE_READ ? 2 : Settings.CONFIRM_MESSAGE_RECEIVED ? 1 : 0;
+ try {
+ iPref = Integer.valueOf(preferences.getString(name, new Integer(iPref).toString()));
+ } catch (NumberFormatException e) {
+ // ignored, fallback-value set above
+ }
+ Settings.CONFIRM_MESSAGE_RECEIVED = iPref >= 1;
+ Settings.CONFIRM_MESSAGE_READ = iPref >= 2;
+ break;
+ }
+ }
+ /**
+ * Boolean if emoticons should be parsed to emoticons or not.
+ */
+ public static boolean PARSE_EMOTICONS = true;
+ /**
+ * Boolean if online status should be shown or not.
+ */
+ public static boolean SHOW_ONLINE_STATUS = true;
+ /**
+ * LED Color
+ */
+ public static int LED_COLOR = 0xffffffff;
+ /**
+ * Boolean if image-links should be downloaded or not.
+ */
+ public static boolean DOWNLOAD_IMAGE_LINKS = true;
+ /**
+ * Boolean if automatic downloads should be done only jif connected to WLAN.
+ */
+ public static boolean DOWNLOAD_ONLY_WLAN = true;
+ /**
+ * Boolean if confirm received messages
+ */
+ public static boolean CONFIRM_MESSAGE_RECEIVED = true;
+ /**
+ * Boolean if confirm read message
+ */
+ public static boolean CONFIRM_MESSAGE_READ = true;
+
+ /**
+ * This is a utility class - private constructor avoids any instantiation.
+ */
+ private Settings() {
+ // Private constructor to avoid instantiation
+ }
+}
diff --git a/src/main/java/eu/siacs/conversations/Config.java b/src/main/java/eu/siacs/conversations/Config.java
index f3cbffe6..f2303626 100644
--- a/src/main/java/eu/siacs/conversations/Config.java
+++ b/src/main/java/eu/siacs/conversations/Config.java
@@ -30,6 +30,8 @@ public final class Config {
public static final int MESSAGE_MERGE_WINDOW = 20;
+ public static final boolean UTF8_EMOTICONS = false;
+
public static final int PAGE_SIZE = 50;
public static final int MAX_NUM_PAGES = 3;
diff --git a/src/main/java/eu/siacs/conversations/crypto/PgpEngine.java b/src/main/java/eu/siacs/conversations/crypto/PgpEngine.java
index 8f8122f0..33089a8c 100644
--- a/src/main/java/eu/siacs/conversations/crypto/PgpEngine.java
+++ b/src/main/java/eu/siacs/conversations/crypto/PgpEngine.java
@@ -17,6 +17,7 @@ import java.io.InputStream;
import java.io.OutputStream;
import java.net.URL;
+import de.tzur.conversations.Settings;
import eu.siacs.conversations.R;
import eu.siacs.conversations.entities.Account;
import eu.siacs.conversations.entities.Contact;
@@ -61,6 +62,8 @@ public class PgpEngine {
final HttpConnectionManager manager = mXmppConnectionService.getHttpConnectionManager();
if (message.trusted()
&& message.treatAsDownloadable() != Message.Decision.NEVER
+ && Settings.DOWNLOAD_IMAGE_LINKS
+ && mXmppConnectionService.isDownloadAllowedInConnection()
&& manager.getAutoAcceptFileSize() > 0) {
manager.createNewDownloadConnection(message);
}
@@ -167,7 +170,7 @@ public class PgpEngine {
String[] lines = os.toString().split("\n");
for (int i = 2; i < lines.length - 1; ++i) {
if (!lines[i].contains("Version")) {
- encryptedMessageBody.append(lines[i].trim());
+ encryptedMessageBody.append(lines[i]);
}
}
message.setEncryptedBody(encryptedMessageBody
@@ -242,7 +245,7 @@ public class PgpEngine {
pgpSig.append("-----BEGIN PGP SIGNATURE-----");
pgpSig.append('\n');
pgpSig.append('\n');
- pgpSig.append(signature.replace("\n", "").trim());
+ pgpSig.append(signature.replace("\n", ""));
pgpSig.append('\n');
pgpSig.append("-----END PGP SIGNATURE-----");
Intent params = new Intent();
@@ -295,7 +298,7 @@ public class PgpEngine {
sig = false;
} else {
if (!line.contains("Version")) {
- signatureBuilder.append(line.trim());
+ signatureBuilder.append(line);
}
}
}
diff --git a/src/main/java/eu/siacs/conversations/entities/Account.java b/src/main/java/eu/siacs/conversations/entities/Account.java
index 7a2dc3f7..a8b9252f 100644
--- a/src/main/java/eu/siacs/conversations/entities/Account.java
+++ b/src/main/java/eu/siacs/conversations/entities/Account.java
@@ -130,6 +130,7 @@ public class Account extends AbstractEntity {
private final Roster roster = new Roster(this);
private List<Bookmark> bookmarks = new CopyOnWriteArrayList<>();
private final Collection<Jid> blocklist = new CopyOnWriteArraySet<>();
+ private XmppConnectionService mXmppConnectionService;
public Account() {
this.uuid = "0";
@@ -429,4 +430,8 @@ public class Account extends AbstractEntity {
public boolean isOnlineAndConnected() {
return this.getStatus() == State.ONLINE && this.getXmppConnection() != null;
}
+
+ public XmppConnectionService getXmppConnectionService() {
+ return mXmppConnectionService;
+ }
}
diff --git a/src/main/java/eu/siacs/conversations/entities/Bookmark.java b/src/main/java/eu/siacs/conversations/entities/Bookmark.java
index cc6f146b..06c46c1c 100644
--- a/src/main/java/eu/siacs/conversations/entities/Bookmark.java
+++ b/src/main/java/eu/siacs/conversations/entities/Bookmark.java
@@ -1,5 +1,7 @@
package eu.siacs.conversations.entities;
+import android.graphics.Color;
+
import java.util.ArrayList;
import java.util.List;
import java.util.Locale;
@@ -74,6 +76,11 @@ public class Bookmark extends Element implements ListItem {
return tags;
}
+ @Override
+ public int getStatusColor() {
+ return Color.parseColor("#259B23");
+ }
+
public String getNick() {
return this.findChildContent("nick");
}
diff --git a/src/main/java/eu/siacs/conversations/entities/Contact.java b/src/main/java/eu/siacs/conversations/entities/Contact.java
index f924c05a..2d103faf 100644
--- a/src/main/java/eu/siacs/conversations/entities/Contact.java
+++ b/src/main/java/eu/siacs/conversations/entities/Contact.java
@@ -2,6 +2,7 @@ package eu.siacs.conversations.entities;
import android.content.ContentValues;
import android.database.Cursor;
+import android.graphics.Color;
import org.json.JSONArray;
import org.json.JSONException;
@@ -152,11 +153,16 @@ public class Contact implements ListItem, Blockable {
return tags;
}
+ @Override
+ public int getStatusColor() {
+ return Color.parseColor(UIHelper.getStatusColor(getMostAvailableStatus()));
+ }
+
public boolean match(String needle) {
if (needle == null || needle.isEmpty()) {
return true;
}
- needle = needle.toLowerCase(Locale.US).trim();
+ needle = needle.toLowerCase(Locale.US);
String[] parts = needle.split("\\s+");
if (parts.length > 1) {
for(int i = 0; i < parts.length; ++i) {
diff --git a/src/main/java/eu/siacs/conversations/entities/Conversation.java b/src/main/java/eu/siacs/conversations/entities/Conversation.java
index 36d6b43b..1c985e2f 100644
--- a/src/main/java/eu/siacs/conversations/entities/Conversation.java
+++ b/src/main/java/eu/siacs/conversations/entities/Conversation.java
@@ -775,10 +775,16 @@ public class Conversation extends AbstractEntity implements Blockable {
synchronized (this.messages) {
int count = 0;
for(int i = this.messages.size() - 1; i >= 0; --i) {
- if (this.messages.get(i).isRead()) {
+ Message message = this.messages.get(i);
+ if (message.isRead()) {
return count;
}
- ++count;
+ if (getMode() == Conversation.MODE_SINGLE
+ || account.getXmppConnectionService().getNotificationService().conferenceNotificationsEnabled()
+ || account.getXmppConnectionService().getNotificationService().wasHighlightedOrPrivate(message)
+ ) {
+ ++count;
+ }
}
return count;
}
diff --git a/src/main/java/eu/siacs/conversations/entities/ListItem.java b/src/main/java/eu/siacs/conversations/entities/ListItem.java
index efc1c2b9..aba2aef2 100644
--- a/src/main/java/eu/siacs/conversations/entities/ListItem.java
+++ b/src/main/java/eu/siacs/conversations/entities/ListItem.java
@@ -11,6 +11,8 @@ public interface ListItem extends Comparable<ListItem> {
public List<Tag> getTags();
+ public int getStatusColor();
+
public final class Tag {
private final String name;
private final int color;
diff --git a/src/main/java/eu/siacs/conversations/entities/Message.java b/src/main/java/eu/siacs/conversations/entities/Message.java
index 0eff99cf..6a878e90 100644
--- a/src/main/java/eu/siacs/conversations/entities/Message.java
+++ b/src/main/java/eu/siacs/conversations/entities/Message.java
@@ -63,7 +63,7 @@ public class Message extends AbstractEntity {
protected String conversationUuid;
protected Jid counterpart;
protected Jid trueCounterpart;
- protected String body;
+ private String body;
protected String encryptedBody;
protected long timeSent;
protected int encryption;
@@ -345,16 +345,16 @@ public class Message extends AbstractEntity {
public boolean equals(Message message) {
if (this.serverMsgId != null && message.getServerMsgId() != null) {
return this.serverMsgId.equals(message.getServerMsgId());
- } else if (this.body == null || this.counterpart == null) {
+ } else if (this.getBody() == null || this.counterpart == null) {
return false;
} else {
String body, otherBody;
if (this.hasFileOnRemoteHost()) {
body = getFileParams().url.toString();
- otherBody = message.body == null ? null : message.body.trim();
+ otherBody = message.getBody() == null ? null : message.getBody();
} else {
- body = this.body;
- otherBody = message.body;
+ body = this.getBody();
+ otherBody = message.getBody();
}
if (message.getRemoteMsgId() != null) {
return (message.getRemoteMsgId().equals(this.remoteMsgId) || message.getRemoteMsgId().equals(this.uuid))
@@ -411,13 +411,11 @@ public class Message extends AbstractEntity {
this.getCounterpart().equals(message.getCounterpart()) &&
(message.getTimeSent() - this.getTimeSent()) <= (Config.MESSAGE_MERGE_WINDOW * 1000) &&
!GeoHelper.isGeoUri(message.getBody()) &&
- !GeoHelper.isGeoUri(this.body) &&
+ !GeoHelper.isGeoUri(this.getBody()) &&
message.treatAsDownloadable() == Decision.NEVER &&
this.treatAsDownloadable() == Decision.NEVER &&
!message.getBody().startsWith(ME_COMMAND) &&
!this.getBody().startsWith(ME_COMMAND) &&
- !this.bodyIsHeart() &&
- !message.bodyIsHeart() &&
this.isTrusted() == message.isTrusted()
);
}
@@ -439,7 +437,7 @@ public class Message extends AbstractEntity {
while(current.mergeable(current.next())) {
current = current.next();
body.append(MERGE_SEPARATOR);
- body.append(current.getBody().trim());
+ body.append(current.getBody());
}
return body.toString();
}
@@ -506,17 +504,28 @@ public class Message extends AbstractEntity {
private static String extractRelevantExtension(URL url) {
String path = url.getPath();
+ return extractRelevantExtension(path);
+ }
+
+ private static String extractRelevantExtension(String path) {
if (path == null || path.isEmpty()) {
return null;
}
+
String filename = path.substring(path.lastIndexOf('/') + 1).toLowerCase();
- String[] extensionParts = filename.split("\\.");
- if (extensionParts.length == 2) {
- return extensionParts[extensionParts.length - 1];
- } else if (extensionParts.length == 3 && Arrays
- .asList(Transferable.VALID_CRYPTO_EXTENSIONS)
- .contains(extensionParts[extensionParts.length - 1])) {
- return extensionParts[extensionParts.length -2];
+
+ int dotPosition = filename.lastIndexOf(".");
+
+ if (dotPosition != -1)
+ {
+ String extension = filename.substring(dotPosition + 1);
+
+ // we want the real file extension, not the crypto one
+ if (Arrays.asList(Transferable.VALID_CRYPTO_EXTENSIONS).contains(extension)) {
+ return extractRelevantExtension(path.substring(0,dotPosition));
+ } else {
+ return extension;
+ }
}
return null;
}
@@ -531,7 +540,7 @@ public class Message extends AbstractEntity {
}
} else {
try {
- return MimeUtils.guessMimeTypeFromExtension(extractRelevantExtension(new URL(body.trim())));
+ return MimeUtils.guessMimeTypeFromExtension(extractRelevantExtension(new URL(this.getBody())));
} catch (MalformedURLException e) {
return null;
}
@@ -539,7 +548,12 @@ public class Message extends AbstractEntity {
}
public Decision treatAsDownloadable() {
- if (body.trim().contains(" ")) {
+ /**
+ * there are a few cases where spaces result in an unwanted behavior, e.g.
+ * "http://example.com/image.jpg" text that will not be shown /abc.png"
+ * or more than one image link in one message.
+ */
+ if (getBody().contains(" ")) {
return Decision.NEVER;
}
try {
@@ -572,10 +586,6 @@ public class Message extends AbstractEntity {
}
}
- public boolean bodyIsHeart() {
- return body != null && UIHelper.HEARTS.contains(body.trim());
- }
-
public FileParams getFileParams() {
FileParams params = getLegacyFileParams();
if (params != null) {
@@ -585,10 +595,10 @@ public class Message extends AbstractEntity {
if (this.transferable != null) {
params.size = this.transferable.getFileSize();
}
- if (body == null) {
+ if (this.getBody() == null) {
return params;
}
- String parts[] = body.split("\\|");
+ String parts[] = this.getBody().split("\\|");
switch (parts.length) {
case 1:
try {
@@ -647,10 +657,10 @@ public class Message extends AbstractEntity {
public FileParams getLegacyFileParams() {
FileParams params = new FileParams();
- if (body == null) {
+ if (this.getBody() == null) {
return params;
}
- String parts[] = body.split(",");
+ String parts[] = this.getBody().split(",");
if (parts.length == 3) {
try {
params.size = Long.parseLong(parts[0]);
diff --git a/src/main/java/eu/siacs/conversations/generator/AbstractGenerator.java b/src/main/java/eu/siacs/conversations/generator/AbstractGenerator.java
index 69bb1803..3a256219 100644
--- a/src/main/java/eu/siacs/conversations/generator/AbstractGenerator.java
+++ b/src/main/java/eu/siacs/conversations/generator/AbstractGenerator.java
@@ -12,6 +12,7 @@ import java.util.List;
import java.util.Locale;
import java.util.TimeZone;
+import de.tzur.conversations.Settings;
import eu.siacs.conversations.crypto.axolotl.AxolotlService;
import eu.siacs.conversations.services.XmppConnectionService;
import eu.siacs.conversations.utils.PhoneHelper;
@@ -72,7 +73,7 @@ public abstract class AbstractGenerator {
s.append(feature + "<");
}
byte[] sha1 = md.digest(s.toString().getBytes());
- return new String(Base64.encode(sha1, Base64.DEFAULT)).trim();
+ return new String(Base64.encode(sha1, Base64.DEFAULT));
}
public static String getTimestamp(long time) {
@@ -83,7 +84,7 @@ public abstract class AbstractGenerator {
public List<String> getFeatures() {
ArrayList<String> features = new ArrayList<>();
features.addAll(Arrays.asList(FEATURES));
- if (mXmppConnectionService.confirmMessages()) {
+ if (Settings.CONFIRM_MESSAGE_RECEIVED) {
features.addAll(Arrays.asList(MESSAGE_CONFIRMATION_FEATURES));
}
Collections.sort(features);
diff --git a/src/main/java/eu/siacs/conversations/http/HttpDownloadConnection.java b/src/main/java/eu/siacs/conversations/http/HttpDownloadConnection.java
index 0d202bb9..356f9417 100644
--- a/src/main/java/eu/siacs/conversations/http/HttpDownloadConnection.java
+++ b/src/main/java/eu/siacs/conversations/http/HttpDownloadConnection.java
@@ -165,7 +165,7 @@ public class HttpDownloadConnection implements Transferable {
return;
}
file.setExpectedSize(size);
- if (size <= mHttpConnectionManager.getAutoAcceptFileSize()) {
+ if (size != -1 && size <= mHttpConnectionManager.getAutoAcceptFileSize()) {
HttpDownloadConnection.this.acceptedAutomatically = true;
new Thread(new FileDownloader(interactive)).start();
} else {
@@ -176,25 +176,22 @@ public class HttpDownloadConnection implements Transferable {
}
private long retrieveFileSize() throws IOException {
+ Log.d(Config.LOGTAG,"retrieve file size. interactive:"+String.valueOf(interactive));
+ changeStatus(STATUS_CHECKING);
+ HttpURLConnection connection = (HttpURLConnection) mUrl.openConnection();
+ connection.setRequestMethod("HEAD");
+ if (connection instanceof HttpsURLConnection) {
+ mHttpConnectionManager.setupTrustManager((HttpsURLConnection) connection, interactive);
+ }
+ connection.connect();
+ String contentLength = connection.getHeaderField("Content-Length");
+ if (contentLength == null) {
+ return -1;
+ }
try {
- Log.d(Config.LOGTAG, "retrieve file size. interactive:" + String.valueOf(interactive));
- changeStatus(STATUS_CHECKING);
- HttpURLConnection connection = (HttpURLConnection) mUrl.openConnection();
- connection.setRequestMethod("HEAD");
- if (connection instanceof HttpsURLConnection) {
- mHttpConnectionManager.setupTrustManager((HttpsURLConnection) connection, interactive);
- }
- connection.connect();
- String contentLength = connection.getHeaderField("Content-Length");
- connection.disconnect();
- if (contentLength == null) {
- throw new IOException();
- }
return Long.parseLong(contentLength, 10);
- } catch (IOException e) {
- throw e;
} catch (NumberFormatException e) {
- throw new IOException();
+ return -1;
}
}
diff --git a/src/main/java/eu/siacs/conversations/parser/AbstractParser.java b/src/main/java/eu/siacs/conversations/parser/AbstractParser.java
index 18331796..3f11f756 100644
--- a/src/main/java/eu/siacs/conversations/parser/AbstractParser.java
+++ b/src/main/java/eu/siacs/conversations/parser/AbstractParser.java
@@ -1,16 +1,21 @@
package eu.siacs.conversations.parser;
+import android.util.Log;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Locale;
+import javax.xml.datatype.DatatypeConfigurationException;
+import javax.xml.datatype.DatatypeFactory;
+
import eu.siacs.conversations.entities.Account;
import eu.siacs.conversations.entities.Contact;
import eu.siacs.conversations.services.XmppConnectionService;
import eu.siacs.conversations.xml.Element;
import eu.siacs.conversations.xmpp.jid.Jid;
+import eu.siacs.conversations.xmpp.stanzas.MessagePacket;
public abstract class AbstractParser {
@@ -20,6 +25,15 @@ public abstract class AbstractParser {
this.mXmppConnectionService = service;
}
+ /**
+ * Gets the timestamp from the 'delay' element.
+ * Refer to XEP-0203: Delayed Delivery for details. @link{http://xmpp.org/extensions/xep-0203.html}
+ * @param packet the element to find the child element 'delay' in.
+ * @return the time in milli seconds of the attribute 'stamp' of the
+ * element 'delay'. In case there is no 'delay' element or no 'stamp'
+ * attribute or the current time is less than the value of the 'stamp'
+ * attribute the current time is returned.
+ */
public static Long getTimestamp(Element element, Long defaultValue) {
Element delay = element.findChild("delay","urn:xmpp:delay");
if (delay != null) {
@@ -39,12 +53,27 @@ public abstract class AbstractParser {
return getTimestamp(packet,System.currentTimeMillis());
}
+ /**
+ * Parses the timestamp according to XEP-0082: XMPP Date and Time Profiles.
+ * @link{http://xmpp.org/extensions/xep-0082.html}
+ *
+ * @param timestamp the timestamp to parse
+ * @return Date
+ * @throws ParseException
+ */
public static Date parseTimestamp(String timestamp) throws ParseException {
- timestamp = timestamp.replace("Z", "+0000");
- SimpleDateFormat dateFormat;
- timestamp = timestamp.substring(0,19)+timestamp.substring(timestamp.length() -5,timestamp.length());
- dateFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssZ",Locale.US);
- return dateFormat.parse(timestamp);
+ /*try {
+ Log.d("TIMESTAMP", timestamp);
+ return DatatypeFactory.newInstance().newXMLGregorianCalendar(timestamp).toGregorianCalendar().getTime();
+ } catch (DatatypeConfigurationException e) {
+ Log.d("TIMESTAMP", e.getMessage());
+ return new Date();
+ }*/
+ timestamp = timestamp.replace("Z", "+0000");
+ SimpleDateFormat dateFormat;
+ timestamp = timestamp.substring(0,19)+timestamp.substring(timestamp.length() -5,timestamp.length());
+ dateFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssZ",Locale.US);
+ return dateFormat.parse(timestamp);
}
protected void updateLastseen(final Element packet, final Account account, final boolean presenceOverwrite) {
diff --git a/src/main/java/eu/siacs/conversations/parser/MessageParser.java b/src/main/java/eu/siacs/conversations/parser/MessageParser.java
index 025ed1e7..e2f13bd3 100644
--- a/src/main/java/eu/siacs/conversations/parser/MessageParser.java
+++ b/src/main/java/eu/siacs/conversations/parser/MessageParser.java
@@ -8,6 +8,7 @@ import net.java.otr4j.session.SessionStatus;
import java.util.Set;
+import de.tzur.conversations.Settings;
import eu.siacs.conversations.Config;
import eu.siacs.conversations.crypto.axolotl.AxolotlService;
import eu.siacs.conversations.crypto.axolotl.XmppAxolotlMessage;
@@ -117,6 +118,8 @@ public class MessageParser extends AbstractParser implements
this.jid = jid;
this.password = password;
}
+ return false;
+ }
public boolean execute(Account account) {
if (jid != null) {
diff --git a/src/main/java/eu/siacs/conversations/services/NotificationService.java b/src/main/java/eu/siacs/conversations/services/NotificationService.java
index 90e4d216..d03dcb84 100644
--- a/src/main/java/eu/siacs/conversations/services/NotificationService.java
+++ b/src/main/java/eu/siacs/conversations/services/NotificationService.java
@@ -31,6 +31,7 @@ import java.util.List;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
+import de.tzur.conversations.Settings;
import eu.siacs.conversations.Config;
import eu.siacs.conversations.R;
import eu.siacs.conversations.entities.Account;
@@ -218,7 +219,7 @@ public class NotificationService {
mBuilder.setDefaults(0);
mBuilder.setSmallIcon(R.drawable.ic_notification);
mBuilder.setDeleteIntent(createDeleteIntent());
- mBuilder.setLights(0xff00FF00, 2000, 3000);
+ mBuilder.setLights(Settings.LED_COLOR, 2000, 4000);
final Notification notification = mBuilder.build();
notificationManager.notify(NOTIFICATION_ID, notification);
}
@@ -442,7 +443,7 @@ public class NotificationService {
return PendingIntent.getService(mXmppConnectionService,0,intent,PendingIntent.FLAG_UPDATE_CURRENT);
}
- private boolean wasHighlightedOrPrivate(final Message message) {
+ public boolean wasHighlightedOrPrivate(final Message message) {
final String nick = message.getConversation().getMucOptions().getActualNick();
final Pattern highlight = generateNickHighlightPattern(nick);
if (message.getBody() == null || nick == null) {
diff --git a/src/main/java/eu/siacs/conversations/services/XmppConnectionService.java b/src/main/java/eu/siacs/conversations/services/XmppConnectionService.java
index 36d6cd49..b165ede4 100644
--- a/src/main/java/eu/siacs/conversations/services/XmppConnectionService.java
+++ b/src/main/java/eu/siacs/conversations/services/XmppConnectionService.java
@@ -49,6 +49,7 @@ import java.util.Map;
import java.util.concurrent.CopyOnWriteArrayList;
import de.duenndns.ssl.MemorizingTrustManager;
+import de.tzur.conversations.Settings;
import eu.siacs.conversations.Config;
import eu.siacs.conversations.R;
import eu.siacs.conversations.crypto.PgpEngine;
@@ -579,6 +580,25 @@ public class XmppConnectionService extends Service implements OnPhoneContactsLoa
return activeNetwork != null && activeNetwork.isConnected();
}
+ /**
+ * check whether we are allowed to download at the moment
+ */
+ public boolean isDownloadAllowedInConnection() {
+ if (Settings.DOWNLOAD_ONLY_WLAN) {
+ return isWifiConnected();
+ }
+ return true;
+ }
+
+ /**
+ * check whether wifi is connected
+ */
+ public boolean isWifiConnected() {
+ ConnectivityManager cm = (ConnectivityManager) getApplicationContext().getSystemService(Context.CONNECTIVITY_SERVICE);
+ NetworkInfo niWifi = cm.getNetworkInfo(ConnectivityManager.TYPE_WIFI);
+ return niWifi.isConnected();
+ }
+
@SuppressLint("TrulyRandom")
@Override
public void onCreate() {
@@ -1069,6 +1089,7 @@ public class XmppConnectionService extends Service implements OnPhoneContactsLoa
public void loadMoreMessages(final Conversation conversation, final long timestamp, final OnMoreMessagesLoaded callback) {
Log.d(Config.LOGTAG, "load more messages for " + conversation.getName() + " prior to " + MessageGenerator.getTimestamp(timestamp));
if (XmppConnectionService.this.getMessageArchiveService().queryInProgress(conversation,callback)) {
+ Log.d("mam", "Query in progress");
return;
}
Runnable runnable = new Runnable() {
@@ -1076,19 +1097,26 @@ public class XmppConnectionService extends Service implements OnPhoneContactsLoa
public void run() {
final Account account = conversation.getAccount();
List<Message> messages = databaseBackend.getMessages(conversation, 50,timestamp);
+ Log.d("mam", "runnable load more messages");
if (messages.size() > 0) {
+ Log.d("mam", "At least one message");
conversation.addAll(0, messages);
checkDeletedFiles(conversation);
callback.onMoreMessagesLoaded(messages.size(), conversation);
} else if (conversation.hasMessagesLeftOnServer()
&& account.isOnlineAndConnected()
&& account.getXmppConnection().getFeatures().mam()) {
+ Log.d("mam", "mam activate, account online and connected and messages left on server");
MessageArchiveService.Query query = getMessageArchiveService().query(conversation,0,timestamp - 1);
if (query != null) {
query.setCallback(callback);
}
callback.informUser(R.string.fetching_history_from_server);
- }
+ } else {
+ Log.d("mam", ((!conversation.hasMessagesLeftOnServer()) ? "no" : "") + " more messages left on server, mam " + ((account.getXmppConnection().getFeatures().mam()) ? "" : "not") + " activated, account is " + ((account.isOnlineAndConnected()) ? "" : "not") + " online or connected)");
+ callback.onMoreMessagesLoaded(0, conversation);
+ callback.informUser(R.string.no_more_history_on_server);
+ }
}
};
mDatabaseExecutor.execute(runnable);
@@ -2371,7 +2399,7 @@ public class XmppConnectionService extends Service implements OnPhoneContactsLoa
public void sendReadMarker(final Conversation conversation) {
final Message markable = conversation.getLatestMarkableMessage();
this.markRead(conversation);
- if (confirmMessages() && markable != null && markable.getRemoteMsgId() != null) {
+ if (Settings.CONFIRM_MESSAGE_READ && markable != null && markable.getRemoteMsgId() != null) {
Log.d(Config.LOGTAG, conversation.getAccount().getJid().toBareJid() + ": sending read marker to " + markable.getCounterpart().toString());
Account account = conversation.getAccount();
final Jid to = markable.getCounterpart();
@@ -2549,7 +2577,12 @@ public class XmppConnectionService extends Service implements OnPhoneContactsLoa
public void clearConversationHistory(final Conversation conversation) {
conversation.clearMessages();
- conversation.setHasMessagesLeftOnServer(false); //avoid messages getting loaded through mam
+ /*
+ * In case the history was loaded completely before.
+ * The flag "hasMessagesLeftOnServer" is set to false and no messages will be loaded anymore
+ * Therefore set this flag to true and try to get messages from server
+ */
+ conversation.setHasMessagesLeftOnServer(true);
new Thread(new Runnable() {
@Override
public void run() {
diff --git a/src/main/java/eu/siacs/conversations/ui/ChangePasswordActivity.java b/src/main/java/eu/siacs/conversations/ui/ChangePasswordActivity.java
index aa986bd1..09988b7c 100644
--- a/src/main/java/eu/siacs/conversations/ui/ChangePasswordActivity.java
+++ b/src/main/java/eu/siacs/conversations/ui/ChangePasswordActivity.java
@@ -26,11 +26,14 @@ public class ChangePasswordActivity extends XmppActivity implements XmppConnecti
mCurrentPassword.requestFocus();
mCurrentPassword.setError(getString(R.string.account_status_unauthorized));
} else if (!newPassword.equals(newPasswordConfirm)) {
- mNewPasswordConfirm.requestFocus();
- mNewPasswordConfirm.setError(getString(R.string.passwords_do_not_match));
+ mNewPasswordConfirm.requestFocus();
+ mNewPasswordConfirm.setError(getString(R.string.passwords_do_not_match));
+ } else if (newPassword.isEmpty()) {
+ mNewPassword.requestFocus();
+ mNewPassword.setError(getString(R.string.password_should_not_be_empty));
} else if (newPassword.trim().isEmpty()) {
mNewPassword.requestFocus();
- mNewPassword.setError(getString(R.string.password_should_not_be_empty));
+ mNewPassword.setError(getString(R.string.password_should_not_contain_only_spaces));
} else {
mCurrentPassword.setError(null);
mNewPassword.setError(null);
diff --git a/src/main/java/eu/siacs/conversations/ui/ConversationActivity.java b/src/main/java/eu/siacs/conversations/ui/ConversationActivity.java
index 219a4fca..7fec827b 100644
--- a/src/main/java/eu/siacs/conversations/ui/ConversationActivity.java
+++ b/src/main/java/eu/siacs/conversations/ui/ConversationActivity.java
@@ -53,6 +53,7 @@ import eu.siacs.conversations.utils.ExceptionHelper;
import eu.siacs.conversations.xmpp.OnUpdateBlocklist;
import eu.siacs.conversations.xmpp.jid.InvalidJidException;
import eu.siacs.conversations.xmpp.jid.Jid;
+import github.ankushsachdeva.emojicon.EmojiconEditText;
public class ConversationActivity extends XmppActivity
implements OnAccountUpdate, OnConversationUpdate, OnRosterUpdate, OnUpdateBlocklist, XmppConnectionService.OnShowErrorToast {
@@ -257,6 +258,7 @@ public class ConversationActivity extends XmppActivity
}
});
listView.enableSwipeToDismiss();
+ listView.setSwipeDirection(EnhancedListView.SwipeDirection.START);
listView.setSwipingLayout(R.id.swipeable_item);
listView.setUndoStyle(EnhancedListView.UndoStyle.SINGLE_POPUP);
listView.setUndoHideDelay(5000);
@@ -1144,7 +1146,7 @@ public class ConversationActivity extends XmppActivity
}
prepareFileToast = Toast.makeText(getApplicationContext(),getText(R.string.preparing_file), Toast.LENGTH_LONG);
prepareFileToast.show();
- xmppConnectionService.attachFileToConversation(conversation,uri, new UiCallback<Message>() {
+ xmppConnectionService.attachFileToConversation(conversation, uri, new UiCallback<Message>() {
@Override
public void success(Message message) {
hidePrepareFileToast();
diff --git a/src/main/java/eu/siacs/conversations/ui/ConversationFragment.java b/src/main/java/eu/siacs/conversations/ui/ConversationFragment.java
index de758efc..f645b241 100644
--- a/src/main/java/eu/siacs/conversations/ui/ConversationFragment.java
+++ b/src/main/java/eu/siacs/conversations/ui/ConversationFragment.java
@@ -11,7 +11,9 @@ import android.content.Intent;
import android.content.IntentSender;
import android.content.IntentSender.SendIntentException;
import android.os.Bundle;
+import android.support.v4.widget.SwipeRefreshLayout;
import android.text.InputType;
+import android.util.Log;
import android.view.ContextMenu;
import android.view.ContextMenu.ContextMenuInfo;
import android.view.Gravity;
@@ -23,12 +25,12 @@ import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.view.inputmethod.EditorInfo;
import android.view.inputmethod.InputMethodManager;
-import android.widget.AbsListView;
-import android.widget.AbsListView.OnScrollListener;
import android.widget.AdapterView;
import android.widget.AdapterView.AdapterContextMenuInfo;
import android.widget.ImageButton;
+import android.widget.ImageView;
import android.widget.ListView;
+import android.widget.PopupWindow;
import android.widget.RelativeLayout;
import android.widget.TextView;
import android.widget.TextView.OnEditorActionListener;
@@ -47,7 +49,13 @@ import eu.siacs.conversations.crypto.PgpEngine;
import eu.siacs.conversations.entities.Account;
import eu.siacs.conversations.entities.Contact;
import eu.siacs.conversations.entities.Conversation;
+<<<<<<< HEAD
+import eu.siacs.conversations.entities.Transferable;
+import eu.siacs.conversations.entities.DownloadableFile;
+import eu.siacs.conversations.entities.TransferablePlaceholder;
+=======
import eu.siacs.conversations.entities.DownloadableFile;
+>>>>>>> 1.6.3
import eu.siacs.conversations.entities.Message;
import eu.siacs.conversations.entities.MucOptions;
import eu.siacs.conversations.entities.Presences;
@@ -59,10 +67,14 @@ import eu.siacs.conversations.ui.XmppActivity.OnValueEdited;
import eu.siacs.conversations.ui.adapter.MessageAdapter;
import eu.siacs.conversations.ui.adapter.MessageAdapter.OnContactPictureClicked;
import eu.siacs.conversations.ui.adapter.MessageAdapter.OnContactPictureLongClicked;
+import eu.siacs.conversations.ui.listeners.ConversationSwipeRefreshListener;
import eu.siacs.conversations.utils.GeoHelper;
import eu.siacs.conversations.utils.UIHelper;
import eu.siacs.conversations.xmpp.chatstate.ChatState;
import eu.siacs.conversations.xmpp.jid.Jid;
+import github.ankushsachdeva.emojicon.EmojiconGridView;
+import github.ankushsachdeva.emojicon.EmojiconsPopup;
+import github.ankushsachdeva.emojicon.emoji.Emojicon;
public class ConversationFragment extends Fragment implements EditMessage.KeyboardListener {
@@ -101,10 +113,14 @@ public class ConversationFragment extends Fragment implements EditMessage.Keyboa
}
};
protected ListView messagesView;
- final protected List<Message> messageList = new ArrayList<>();
+ protected SwipeRefreshLayout swipeLayout;
+ final protected List<Message> messageList = new ArrayList<>();
protected MessageAdapter messageListAdapter;
private EditMessage mEditMessage;
private ImageButton mSendButton;
+ private ImageView mEmojButton;
+ private View mRootView;
+ private EmojiconsPopup mEmojPopup;
private RelativeLayout snackbar;
private TextView snackbarMessage;
private TextView snackbarAction;
@@ -371,6 +387,107 @@ public class ConversationFragment extends Fragment implements EditMessage.Keyboa
});
mEditMessage.setOnEditorActionListener(mEditorActionListener);
+ // Start of emojicon
+ mEmojButton = (ImageView) view.findViewById(R.id.emoji_btn);
+ mRootView = view.findViewById(R.id.textsend);
+
+ // Give the topmost view of your activity layout hierarchy. This will be used to measure soft keyboard height
+ mEmojPopup = new EmojiconsPopup(mRootView, this.getActivity());
+
+ //Will automatically set size according to the soft keyboard size
+ mEmojPopup.setSizeForSoftKeyboard();
+
+ //If the emoji popup is dismissed, change emojiButton to smiley icon
+ mEmojPopup.setOnDismissListener(new PopupWindow.OnDismissListener() {
+
+ @Override
+ public void onDismiss() {
+ changeEmojiKeyboardIcon(mEmojButton, R.drawable.smiley);
+ }
+ });
+
+ //If the text keyboard closes, also dismiss the emoji popup
+ mEmojPopup.setOnSoftKeyboardOpenCloseListener(new EmojiconsPopup.OnSoftKeyboardOpenCloseListener() {
+
+ @Override
+ public void onKeyboardOpen(int keyBoardHeight) {
+
+ }
+
+ @Override
+ public void onKeyboardClose() {
+ if (mEmojPopup.isShowing())
+ mEmojPopup.dismiss();
+ }
+ });
+
+ //On emoji clicked, add it to edittext
+ mEmojPopup.setOnEmojiconClickedListener(new EmojiconGridView.OnEmojiconClickedListener() {
+
+ @Override
+ public void onEmojiconClicked(Emojicon emojicon) {
+ if (mEditMessage == null || emojicon == null) {
+ return;
+ }
+
+ int start = mEditMessage.getSelectionStart();
+ int end = mEditMessage.getSelectionEnd();
+ if (start < 0) {
+ mEditMessage.append(emojicon.getEmoji());
+ } else {
+ mEditMessage.getText().replace(Math.min(start, end),
+ Math.max(start, end), emojicon.getEmoji(), 0,
+ emojicon.getEmoji().length());
+ }
+ }
+ });
+
+ //On backspace clicked, emulate the KEYCODE_DEL key event
+ mEmojPopup.setOnEmojiconBackspaceClickedListener(new EmojiconsPopup.OnEmojiconBackspaceClickedListener() {
+
+ @Override
+ public void onEmojiconBackspaceClicked(View v) {
+ KeyEvent event = new KeyEvent(
+ 0, 0, 0, KeyEvent.KEYCODE_DEL, 0, 0, 0, 0, KeyEvent.KEYCODE_ENDCALL);
+ mEditMessage.dispatchKeyEvent(event);
+ }
+ });
+
+ // To toggle between text keyboard and emoji keyboard keyboard(Popup)
+ mEmojButton.setOnClickListener(new OnClickListener() {
+
+ @Override
+ public void onClick(View v) {
+
+ //If popup is not showing => emoji keyboard is not visible, we need to show it
+ if(!mEmojPopup.isShowing()){
+
+ //If keyboard is visible, simply show the emoji popup
+ if(mEmojPopup.isKeyBoardOpen()){
+ mEmojPopup.showAtBottom();
+ changeEmojiKeyboardIcon(mEmojButton, R.drawable.ic_action_keyboard);
+ }
+
+ //else, open the text keyboard first and immediately after that show the emoji popup
+ else{
+ mEditMessage.setFocusableInTouchMode(true);
+ mEditMessage.requestFocus();
+ mEmojPopup.showAtBottomPending();
+ final InputMethodManager inputMethodManager = (InputMethodManager) getActivity().getSystemService(Context.INPUT_METHOD_SERVICE);
+ inputMethodManager.showSoftInput(mEditMessage, InputMethodManager.SHOW_IMPLICIT);
+ changeEmojiKeyboardIcon(mEmojButton, R.drawable.ic_action_keyboard);
+ }
+ }
+
+ //If popup is showing, simply dismiss it to show the undelying text keyboard
+ else{
+ mEmojPopup.dismiss();
+ }
+ }
+ });
+
+ // End of emojicon
+
mSendButton = (ImageButton) view.findViewById(R.id.textSendButton);
mSendButton.setOnClickListener(this.mSendButtonListener);
@@ -434,6 +551,12 @@ public class ConversationFragment extends Fragment implements EditMessage.Keyboa
registerForContextMenu(messagesView);
+ // Start of swipe refresh
+ // New Swipe refresh
+ swipeLayout = (SwipeRefreshLayout) view.findViewById(R.id.swipe_refresh_container);
+ swipeLayout.setOnRefreshListener(new ConversationSwipeRefreshListener(messageList, swipeLayout, this, messagesView, messageListAdapter));
+ // End of swipe refresh
+
return view;
}
@@ -572,7 +695,7 @@ public class ConversationFragment extends Fragment implements EditMessage.Keyboa
resId = R.string.file_url;
url = message.getFileParams().url.toString();
} else {
- url = message.getBody().trim();
+ url = message.getBody();
resId = R.string.file_url;
}
if (activity.copyTextToClipboard(url, resId)) {
@@ -603,7 +726,7 @@ public class ConversationFragment extends Fragment implements EditMessage.Keyboa
}
protected void highlightInConference(String nick) {
- String oldString = mEditMessage.getText().toString().trim();
+ String oldString = mEditMessage.getText().toString();
if (oldString.isEmpty() || mEditMessage.getSelectionStart() == 0) {
mEditMessage.getText().insert(0, nick + ": ");
} else {
@@ -669,6 +792,7 @@ public class ConversationFragment extends Fragment implements EditMessage.Keyboa
if (size > 0) {
messagesView.setSelection(size - 1);
}
+ swipeLayout.setRefreshing(false);
}
private OnClickListener mUnblockClickListener = new OnClickListener() {
@@ -1151,15 +1275,15 @@ public class ConversationFragment extends Fragment implements EditMessage.Keyboa
final ConversationActivity activity = (ConversationActivity) getActivity();
final XmppConnectionService xmppService = activity.xmppConnectionService;
activity.selectPresence(message.getConversation(),
- new OnPresenceSelected() {
-
- @Override
- public void onPresenceSelected() {
- message.setCounterpart(conversation.getNextCounterpart());
- xmppService.sendMessage(message);
- messageSent();
- }
- });
+ new OnPresenceSelected() {
+
+ @Override
+ public void onPresenceSelected() {
+ message.setCounterpart(conversation.getNextCounterpart());
+ xmppService.sendMessage(message);
+ messageSent();
+ }
+ });
}
public void appendText(String text) {
@@ -1224,4 +1348,8 @@ public class ConversationFragment extends Fragment implements EditMessage.Keyboa
}
}
+ private void changeEmojiKeyboardIcon(ImageView iconToBeChanged, int drawableResourceId){
+ iconToBeChanged.setImageResource(drawableResourceId);
+ }
+
}
diff --git a/src/main/java/eu/siacs/conversations/ui/EditMessage.java b/src/main/java/eu/siacs/conversations/ui/EditMessage.java
index a58cf2b8..a7aa2024 100644
--- a/src/main/java/eu/siacs/conversations/ui/EditMessage.java
+++ b/src/main/java/eu/siacs/conversations/ui/EditMessage.java
@@ -7,8 +7,9 @@ import android.view.KeyEvent;
import android.widget.EditText;
import eu.siacs.conversations.Config;
+import github.ankushsachdeva.emojicon.EmojiconEditText;
-public class EditMessage extends EditText {
+public class EditMessage extends EmojiconEditText {
public EditMessage(Context context, AttributeSet attrs) {
super(context, attrs);
diff --git a/src/main/java/eu/siacs/conversations/ui/SettingsActivity.java b/src/main/java/eu/siacs/conversations/ui/SettingsActivity.java
index 6e5fe610..f9238f13 100644
--- a/src/main/java/eu/siacs/conversations/ui/SettingsActivity.java
+++ b/src/main/java/eu/siacs/conversations/ui/SettingsActivity.java
@@ -1,6 +1,21 @@
package eu.siacs.conversations.ui;
+import java.security.KeyStoreException;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.Locale;
+
+import de.tzur.conversations.Settings;
+import de.duenndns.ssl.MemorizingTrustManager;
+
+import eu.siacs.conversations.R;
+import eu.siacs.conversations.entities.Account;
+import eu.siacs.conversations.xmpp.XmppConnection;
+import github.ankushsachdeva.emojicon.EmojiconHandler;
+
import android.app.AlertDialog;
+import android.app.Fragment;
import android.app.FragmentManager;
import android.content.DialogInterface;
import android.content.SharedPreferences;
@@ -12,17 +27,6 @@ import android.preference.Preference;
import android.preference.PreferenceManager;
import android.widget.Toast;
-import java.security.KeyStoreException;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.Locale;
-
-import de.duenndns.ssl.MemorizingTrustManager;
-import eu.siacs.conversations.R;
-import eu.siacs.conversations.entities.Account;
-import eu.siacs.conversations.xmpp.XmppConnection;
-
public class SettingsActivity extends XmppActivity implements
OnSharedPreferenceChangeListener {
private SettingsFragment mSettingsFragment;
@@ -130,37 +134,46 @@ public class SettingsActivity extends XmppActivity implements
@Override
public void onSharedPreferenceChanged(SharedPreferences preferences,
String name) {
- if (name.equals("resource")) {
- String resource = preferences.getString("resource", "mobile")
- .toLowerCase(Locale.US);
- if (xmppConnectionServiceBound) {
- for (Account account : xmppConnectionService.getAccounts()) {
- if (account.setResource(resource)) {
+ // need to synchronize the settings class first
+ Settings.synchronizeSettingsClassWithPreferences(getPreferences(), name);
+ switch (name) {
+ case "resource":
+ String resource = preferences.getString("resource", "mobile")
+ .toLowerCase(Locale.US);
+ if (xmppConnectionServiceBound) {
+ for (Account account : xmppConnectionService.getAccounts()) {
+ if (account.setResource(resource)) {
+ if (!account.isOptionSet(Account.OPTION_DISABLED)) {
+ XmppConnection connection = account.getXmppConnection();
+ if (connection != null) {
+ connection.resetStreamId();
+ }
+ xmppConnectionService.reconnectAccountInBackground(account);
+ }
+ }
+ }
+ }
+ break;
+ case "keep_foreground_service":
+ xmppConnectionService.toggleForegroundService();
+ break;
+ case "confirm_messages":
+ if (xmppConnectionServiceBound) {
+ for (Account account : xmppConnectionService.getAccounts()) {
if (!account.isOptionSet(Account.OPTION_DISABLED)) {
- XmppConnection connection = account.getXmppConnection();
- if (connection != null) {
- connection.resetStreamId();
- }
- xmppConnectionService.reconnectAccountInBackground(account);
+ xmppConnectionService.sendPresence(account);
}
}
}
- }
- } else if (name.equals("keep_foreground_service")) {
- xmppConnectionService.toggleForegroundService();
- } else if (name.equals("confirm_messages")) {
- if (xmppConnectionServiceBound) {
- for (Account account : xmppConnectionService.getAccounts()) {
- if (!account.isOptionSet(Account.OPTION_DISABLED)) {
- xmppConnectionService.sendPresence(account);
- }
- }
- }
- } else if (name.equals("dont_trust_system_cas")) {
- xmppConnectionService.updateMemorizingTrustmanager();
- reconnectAccounts();
+ break;
+ case "dont_trust_system_cas":
+ xmppConnectionService.updateMemorizingTrustmanager();
+ reconnectAccounts();
+ break;
+ case "parse_emoticons":
+ EmojiconHandler.setParseEmoticons(Settings.PARSE_EMOTICONS);
+ break;
}
-
}
private void displayToast(final String msg) {
diff --git a/src/main/java/eu/siacs/conversations/ui/XmppActivity.java b/src/main/java/eu/siacs/conversations/ui/XmppActivity.java
index 7734dc11..2d780eda 100644
--- a/src/main/java/eu/siacs/conversations/ui/XmppActivity.java
+++ b/src/main/java/eu/siacs/conversations/ui/XmppActivity.java
@@ -68,6 +68,7 @@ import java.util.Hashtable;
import java.util.List;
import java.util.concurrent.RejectedExecutionException;
+import de.tzur.conversations.Settings;
import eu.siacs.conversations.Config;
import eu.siacs.conversations.R;
import eu.siacs.conversations.crypto.axolotl.XmppAxolotlSession;
@@ -361,6 +362,9 @@ public abstract class XmppActivity extends Activity {
setTheme(this.mTheme);
this.mUsingEnterKey = usingEnterKey();
mUseSubject = getPreferences().getBoolean("use_subject", true);
+
+ Settings.initSettingsClassWithPreferences(getPreferences());
+
final ActionBar ab = getActionBar();
if (ab!=null) {
ab.setDisplayHomeAsUpEnabled(true);
diff --git a/src/main/java/eu/siacs/conversations/ui/adapter/AccountAdapter.java b/src/main/java/eu/siacs/conversations/ui/adapter/AccountAdapter.java
index 98250af9..141dbc3a 100644
--- a/src/main/java/eu/siacs/conversations/ui/adapter/AccountAdapter.java
+++ b/src/main/java/eu/siacs/conversations/ui/adapter/AccountAdapter.java
@@ -8,6 +8,7 @@ import android.widget.ArrayAdapter;
import android.widget.CompoundButton;
import android.widget.ImageView;
import android.widget.TextView;
+import android.widget.Switch;
import java.util.List;
diff --git a/src/main/java/eu/siacs/conversations/ui/adapter/ConversationAdapter.java b/src/main/java/eu/siacs/conversations/ui/adapter/ConversationAdapter.java
index 6918713e..b89dd01a 100644
--- a/src/main/java/eu/siacs/conversations/ui/adapter/ConversationAdapter.java
+++ b/src/main/java/eu/siacs/conversations/ui/adapter/ConversationAdapter.java
@@ -19,13 +19,29 @@ import java.lang.ref.WeakReference;
import java.util.List;
import java.util.concurrent.RejectedExecutionException;
+import de.tzur.conversations.Settings;
+import eu.siacs.conversations.Config;
import eu.siacs.conversations.R;
+import eu.siacs.conversations.entities.Account;
import eu.siacs.conversations.entities.Conversation;
import eu.siacs.conversations.entities.Message;
import eu.siacs.conversations.entities.Transferable;
import eu.siacs.conversations.ui.ConversationActivity;
import eu.siacs.conversations.ui.XmppActivity;
import eu.siacs.conversations.utils.UIHelper;
+import github.ankushsachdeva.emojicon.EmojiconTextView;
+
+import android.content.Context;
+import android.graphics.Color;
+import android.graphics.Typeface;
+import android.preference.PreferenceManager;
+import android.util.Log;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+import android.widget.ArrayAdapter;
+import android.widget.ImageView;
+import android.widget.TextView;
public class ConversationAdapter extends ArrayAdapter<Conversation> {
@@ -56,10 +72,34 @@ public class ConversationAdapter extends ArrayAdapter<Conversation> {
} else {
convName.setText(conversation.getJid().toBareJid().toString());
}
- TextView mLastMessage = (TextView) view.findViewById(R.id.conversation_lastmsg);
+ EmojiconTextView mLastMessage = (EmojiconTextView) view.findViewById(R.id.conversation_lastmsg);
TextView mTimestamp = (TextView) view.findViewById(R.id.conversation_lastupdate);
ImageView imagePreview = (ImageView) view.findViewById(R.id.conversation_lastimage);
+ if (Settings.SHOW_ONLINE_STATUS && conversation != null && conversation.getAccount().getStatus() == Account.State.ONLINE) {
+ TextView status = (TextView) view.findViewById(R.id.status);
+
+ String color = "#000000";
+ if (conversation.getMode() == Conversation.MODE_SINGLE) {
+ switch (conversation.getContact().getMostAvailableStatus()) {
+ case Presences.ONLINE:
+ case Presences.CHAT:
+ color = "#259B23";
+ break;
+ case Presences.AWAY:
+ case Presences.XA:
+ color = "#FF9800";
+ break;
+ case Presences.DND:
+ color = "#E51C23";
+ break;
+ }
+ } else if (conversation.getMode() == Conversation.MODE_MULTI && conversation.getMucOptions().online()) {
+ color = "#259B23";
+ }
+ status.setBackgroundColor(Color.parseColor(color));
+ }
+
Message message = conversation.getLatestMessage();
if (!conversation.isRead()) {
diff --git a/src/main/java/eu/siacs/conversations/ui/adapter/ListItemAdapter.java b/src/main/java/eu/siacs/conversations/ui/adapter/ListItemAdapter.java
index ad7d7622..4187ec60 100644
--- a/src/main/java/eu/siacs/conversations/ui/adapter/ListItemAdapter.java
+++ b/src/main/java/eu/siacs/conversations/ui/adapter/ListItemAdapter.java
@@ -1,5 +1,16 @@
package eu.siacs.conversations.ui.adapter;
+import java.lang.ref.WeakReference;
+import java.util.List;
+import java.util.concurrent.RejectedExecutionException;
+
+import de.tzur.conversations.Settings;
+import eu.siacs.conversations.R;
+import eu.siacs.conversations.entities.ListItem;
+import eu.siacs.conversations.ui.XmppActivity;
+import eu.siacs.conversations.utils.UIHelper;
+import eu.siacs.conversations.xmpp.jid.Jid;
+
import android.content.Context;
import android.content.SharedPreferences;
import android.content.res.Resources;
@@ -16,16 +27,6 @@ import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.TextView;
-import java.lang.ref.WeakReference;
-import java.util.List;
-import java.util.concurrent.RejectedExecutionException;
-
-import eu.siacs.conversations.R;
-import eu.siacs.conversations.entities.ListItem;
-import eu.siacs.conversations.ui.XmppActivity;
-import eu.siacs.conversations.utils.UIHelper;
-import eu.siacs.conversations.xmpp.jid.Jid;
-
public class ListItemAdapter extends ArrayAdapter<ListItem> {
protected XmppActivity activity;
@@ -57,6 +58,12 @@ public class ListItemAdapter extends ArrayAdapter<ListItem> {
if (view == null) {
view = inflater.inflate(R.layout.contact, parent, false);
}
+
+ if (Settings.SHOW_ONLINE_STATUS) {
+ TextView tvStatus = (TextView) view.findViewById(R.id.contact_status);
+ tvStatus.setBackgroundColor(item.getStatusColor());
+ }
+
TextView tvName = (TextView) view.findViewById(R.id.contact_display_name);
TextView tvJid = (TextView) view.findViewById(R.id.contact_jid);
ImageView picture = (ImageView) view.findViewById(R.id.contact_photo);
diff --git a/src/main/java/eu/siacs/conversations/ui/adapter/MessageAdapter.java b/src/main/java/eu/siacs/conversations/ui/adapter/MessageAdapter.java
index 1ddd6c44..a5b25967 100644
--- a/src/main/java/eu/siacs/conversations/ui/adapter/MessageAdapter.java
+++ b/src/main/java/eu/siacs/conversations/ui/adapter/MessageAdapter.java
@@ -6,6 +6,7 @@ import android.content.pm.ResolveInfo;
import android.graphics.Color;
import android.graphics.Typeface;
import android.net.Uri;
+import android.preference.PreferenceManager;
import android.text.Spannable;
import android.text.SpannableString;
import android.text.Spanned;
@@ -26,6 +27,8 @@ import android.widget.Toast;
import java.util.List;
+import de.tzur.conversations.Settings;
+import eu.siacs.conversations.Config;
import eu.siacs.conversations.R;
import eu.siacs.conversations.crypto.axolotl.XmppAxolotlSession;
import eu.siacs.conversations.entities.Account;
@@ -38,6 +41,7 @@ import eu.siacs.conversations.entities.Transferable;
import eu.siacs.conversations.ui.ConversationActivity;
import eu.siacs.conversations.utils.GeoHelper;
import eu.siacs.conversations.utils.UIHelper;
+import github.ankushsachdeva.emojicon.EmojiconTextView;
public class MessageAdapter extends ArrayAdapter<Message> {
@@ -279,13 +283,14 @@ public class MessageAdapter extends ArrayAdapter<Message> {
i = body.indexOf(Message.MERGE_SEPARATOR,end);
}
if (message.getType() != Message.TYPE_PRIVATE) {
+
if (message.hasMeCommand()) {
final Spannable span = new SpannableString(formattedBody);
span.setSpan(new StyleSpan(Typeface.BOLD_ITALIC), 0, nick.length(),
Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
viewHolder.messageBody.setText(span);
} else {
- viewHolder.messageBody.setText(formattedBody);
+ viewHolder.messageBody.setText(formattedBody);
}
} else {
String privateMarker;
@@ -424,7 +429,7 @@ public class MessageAdapter extends ArrayAdapter<Message> {
.findViewById(R.id.security_indicator);
viewHolder.image = (ImageView) view
.findViewById(R.id.message_image);
- viewHolder.messageBody = (TextView) view
+ viewHolder.messageBody = (EmojiconTextView) view
.findViewById(R.id.message_body);
viewHolder.time = (TextView) view
.findViewById(R.id.message_time);
@@ -444,7 +449,7 @@ public class MessageAdapter extends ArrayAdapter<Message> {
.findViewById(R.id.security_indicator);
viewHolder.image = (ImageView) view
.findViewById(R.id.message_image);
- viewHolder.messageBody = (TextView) view
+ viewHolder.messageBody = (EmojiconTextView) view
.findViewById(R.id.message_body);
viewHolder.time = (TextView) view
.findViewById(R.id.message_time);
@@ -555,8 +560,6 @@ public class MessageAdapter extends ArrayAdapter<Message> {
} else {
if (GeoHelper.isGeoUri(message.getBody())) {
displayLocationMessage(viewHolder,message);
- } else if (message.bodyIsHeart()) {
- displayHeartMessage(viewHolder, message.getBody().trim());
} else if (message.treatAsDownloadable() == Message.Decision.MUST) {
displayDownloadableMessage(viewHolder, message, activity.getString(R.string.check_x_filesize, UIHelper.getFileDescriptionString(activity, message)));
} else {
@@ -632,7 +635,7 @@ public class MessageAdapter extends ArrayAdapter<Message> {
protected ImageView indicator;
protected ImageView indicatorReceived;
protected TextView time;
- protected TextView messageBody;
+ protected EmojiconTextView messageBody;
protected ImageView contact_picture;
protected TextView status_message;
}
diff --git a/src/main/java/eu/siacs/conversations/ui/listeners/ConversationMoreMessagesLoadedListener.java b/src/main/java/eu/siacs/conversations/ui/listeners/ConversationMoreMessagesLoadedListener.java
new file mode 100644
index 00000000..2154f8d8
--- /dev/null
+++ b/src/main/java/eu/siacs/conversations/ui/listeners/ConversationMoreMessagesLoadedListener.java
@@ -0,0 +1,118 @@
+package eu.siacs.conversations.ui.listeners;
+
+import android.support.v4.widget.SwipeRefreshLayout;
+import android.view.View;
+import android.widget.ListView;
+import android.widget.Toast;
+
+import java.util.List;
+
+import eu.siacs.conversations.entities.Conversation;
+import eu.siacs.conversations.entities.Message;
+import eu.siacs.conversations.services.XmppConnectionService;
+import eu.siacs.conversations.ui.ConversationActivity;
+import eu.siacs.conversations.ui.ConversationFragment;
+import eu.siacs.conversations.ui.adapter.MessageAdapter;
+
+/**
+ * This listener updates the UI when messages are loaded from the server.
+ */
+public class ConversationMoreMessagesLoadedListener implements XmppConnectionService.OnMoreMessagesLoaded {
+ private SwipeRefreshLayout swipeLayout;
+ private List<Message> messageList;
+ private ConversationFragment fragment;
+ private ListView messagesView;
+ private MessageAdapter messageListAdapter;
+ private Toast messageLoaderToast;
+
+ public ConversationMoreMessagesLoadedListener(SwipeRefreshLayout swipeLayout, List<Message> messageList, ConversationFragment fragment, ListView messagesView, MessageAdapter messageListAdapter) {
+ this.swipeLayout = swipeLayout;
+ this.messageList = messageList;
+ this.fragment = fragment;
+ this.messagesView = messagesView;
+ this.messageListAdapter = messageListAdapter;
+ }
+
+ @Override
+ public void onMoreMessagesLoaded(final int c, final Conversation conversation) {
+ ConversationActivity activity = (ConversationActivity) fragment.getActivity();
+ if (activity.getSelectedConversation() != conversation) {
+ activity.runOnUiThread(new Runnable() {
+ @Override
+ public void run() {
+ swipeLayout.setRefreshing(false);
+ }
+ });
+ return;
+ }
+ if (0 == c) {
+ activity.runOnUiThread(new Runnable() {
+ @Override
+ public void run() {
+ swipeLayout.setRefreshing(false);
+ }
+ });
+ }
+ activity.runOnUiThread(new Runnable() {
+ @Override
+ public void run() {
+ final int oldPosition = messagesView.getFirstVisiblePosition();
+ int pos = 0;
+ View v = messagesView.getChildAt(0);
+ final int pxOffset = (v == null) ? 0 : v.getTop();
+ if (-1 < oldPosition && messageList.size() > oldPosition) {
+ Message message = messageList.get(oldPosition);
+ String uuid = message != null ? message.getUuid() : null;
+ pos = getIndexOf(uuid, messageList);
+ }
+ conversation.populateWithMessages(messageList);
+ fragment.updateStatusMessages();
+ messageListAdapter.notifyDataSetChanged();
+ messagesView.setSelectionFromTop(pos, pxOffset);
+
+ if (messageLoaderToast != null) {
+ messageLoaderToast.cancel();
+ }
+ swipeLayout.setRefreshing(false);
+ }
+ });
+ }
+
+ @Override
+ public void informUser(final int resId) {
+ final ConversationActivity activity = (ConversationActivity) fragment.getActivity();
+
+ activity.runOnUiThread(new Runnable() {
+ @Override
+ public void run() {
+ if (messageLoaderToast != null) {
+ messageLoaderToast.cancel();
+ }
+ messageLoaderToast = Toast.makeText(activity, resId, Toast.LENGTH_LONG);
+ messageLoaderToast.show();
+ }
+ });
+
+ }
+
+ private int getIndexOf(String uuid, List<Message> messages) {
+ if (uuid == null) {
+ return 0;
+ }
+ for(int i = 0; i < messages.size(); ++i) {
+ if (uuid.equals(messages.get(i).getUuid())) {
+ return i;
+ } else {
+ Message next = messages.get(i);
+ while(next != null && next.wasMergedIntoPrevious()) {
+ if (uuid.equals(next.getUuid())) {
+ return i;
+ }
+ next = next.next();
+ }
+
+ }
+ }
+ return 0;
+ }
+}
diff --git a/src/main/java/eu/siacs/conversations/ui/listeners/ConversationSwipeRefreshListener.java b/src/main/java/eu/siacs/conversations/ui/listeners/ConversationSwipeRefreshListener.java
new file mode 100644
index 00000000..09a8d730
--- /dev/null
+++ b/src/main/java/eu/siacs/conversations/ui/listeners/ConversationSwipeRefreshListener.java
@@ -0,0 +1,48 @@
+package eu.siacs.conversations.ui.listeners;
+
+import android.support.v4.widget.SwipeRefreshLayout;
+import android.util.Log;
+import android.view.View;
+import android.widget.ListView;
+import android.widget.Toast;
+
+import java.util.List;
+
+import eu.siacs.conversations.Config;
+import eu.siacs.conversations.entities.Conversation;
+import eu.siacs.conversations.entities.Message;
+import eu.siacs.conversations.services.XmppConnectionService;
+import eu.siacs.conversations.ui.ConversationActivity;
+import eu.siacs.conversations.ui.ConversationFragment;
+import eu.siacs.conversations.ui.adapter.MessageAdapter;
+
+/**
+ * This listener starts loading messages from the server.
+ */
+public class ConversationSwipeRefreshListener implements SwipeRefreshLayout.OnRefreshListener {
+ private List<Message> messageList;
+ private ConversationFragment fragment;
+ private ConversationMoreMessagesLoadedListener listener;
+
+ public ConversationSwipeRefreshListener(List<Message> messageList, SwipeRefreshLayout swipeLayout, ConversationFragment fragment, ListView messagesView, MessageAdapter messageListAdapter) {
+ this.messageList = messageList;
+ this.fragment = fragment;
+ this.listener = new ConversationMoreMessagesLoadedListener(swipeLayout, messageList, fragment, messagesView, messageListAdapter);
+ }
+
+ @Override
+ public void onRefresh() {
+ Log.d(Config.LOGTAG, "Refresh swipe container");
+ synchronized (this.messageList) {
+ long timestamp;
+ if (messageList.isEmpty()) {
+ timestamp = System.currentTimeMillis();
+ } else {
+ timestamp = this.messageList.get(0).getTimeSent();
+ }
+ ConversationActivity activity = (ConversationActivity) fragment.getActivity();
+ activity.xmppConnectionService.loadMoreMessages(activity.getSelectedConversation(), timestamp, this.listener);
+ }
+ Log.d(Config.LOGTAG, "End Refresh swipe container");
+ }
+}
diff --git a/src/main/java/eu/siacs/conversations/utils/UIHelper.java b/src/main/java/eu/siacs/conversations/utils/UIHelper.java
index cac23f07..44a38728 100644
--- a/src/main/java/eu/siacs/conversations/utils/UIHelper.java
+++ b/src/main/java/eu/siacs/conversations/utils/UIHelper.java
@@ -11,11 +11,13 @@ import java.util.Calendar;
import java.util.Date;
import java.util.Locale;
+import eu.siacs.conversations.Config;
import eu.siacs.conversations.R;
import eu.siacs.conversations.entities.Contact;
import eu.siacs.conversations.entities.Conversation;
-import eu.siacs.conversations.entities.Message;
+import eu.siacs.conversations.entities.Presences;
import eu.siacs.conversations.entities.Transferable;
+import eu.siacs.conversations.entities.Message;
import eu.siacs.conversations.xmpp.jid.Jid;
public class UIHelper {
@@ -190,7 +192,7 @@ public class UIHelper {
return new Pair<>(context.getString(R.string.location), true);
}
} else{
- return new Pair<>(message.getBody().trim(), false);
+ return new Pair<>(message.getBody(), false);
}
}
}
@@ -241,13 +243,27 @@ public class UIHelper {
}
}
+ public static String getStatusColor(int status) {
+ switch (status) {
+ case Presences.ONLINE:
+ case Presences.CHAT:
+ return "#259B23";
+ case Presences.AWAY:
+ case Presences.XA:
+ return "#FF9800";
+ case Presences.DND:
+ return "#E51C23";
+ }
+ return "#CCCCCC";
+ }
+
private static String getDisplayedMucCounterpart(final Jid counterpart) {
if (counterpart==null) {
return "";
} else if (!counterpart.isBareJid()) {
- return counterpart.getResourcepart().trim();
+ return counterpart.getResourcepart();
} else {
- return counterpart.toString().trim();
+ return counterpart.toString();
}
}
@@ -257,7 +273,7 @@ public class UIHelper {
|| message.getType() != Message.TYPE_TEXT) {
return false;
}
- String body = message.getBody() == null ? null : message.getBody().trim().toLowerCase(Locale.getDefault());
+ String body = message.getBody() == null ? null : message.getBody().toLowerCase(Locale.getDefault());
body = body.replace("?","").replace("¿","");
return LOCATION_QUESTIONS.contains(body);
}
diff --git a/src/main/java/eu/siacs/conversations/xmpp/jingle/JingleConnection.java b/src/main/java/eu/siacs/conversations/xmpp/jingle/JingleConnection.java
index 4f733b10..42b14330 100644
--- a/src/main/java/eu/siacs/conversations/xmpp/jingle/JingleConnection.java
+++ b/src/main/java/eu/siacs/conversations/xmpp/jingle/JingleConnection.java
@@ -355,8 +355,10 @@ public class JingleConnection implements Transferable {
message.setBody(Long.toString(size));
conversation.add(message);
mXmppConnectionService.updateConversationUi();
- if (size < this.mJingleConnectionManager.getAutoAcceptFileSize()) {
- Log.d(Config.LOGTAG, "auto accepting file from "+ packet.getFrom());
+ if (size <= this.mJingleConnectionManager.getAutoAcceptFileSize()
+ && mXmppConnectionService.isDownloadAllowedInConnection()) {
+ Log.d(Config.LOGTAG, "auto accepting file from "
+ + packet.getFrom());
this.acceptedAutomatically = true;
this.sendAccept();
} else {
diff --git a/src/main/java/eu/siacs/conversations/xmpp/jingle/JingleConnectionManager.java b/src/main/java/eu/siacs/conversations/xmpp/jingle/JingleConnectionManager.java
index ab564480..2c888d0f 100644
--- a/src/main/java/eu/siacs/conversations/xmpp/jingle/JingleConnectionManager.java
+++ b/src/main/java/eu/siacs/conversations/xmpp/jingle/JingleConnectionManager.java
@@ -11,6 +11,7 @@ import java.util.concurrent.CopyOnWriteArrayList;
import eu.siacs.conversations.Config;
import eu.siacs.conversations.entities.Account;
+import eu.siacs.conversations.entities.Transferable;
import eu.siacs.conversations.entities.Message;
import eu.siacs.conversations.entities.Transferable;
import eu.siacs.conversations.services.AbstractConnectionManager;
diff --git a/src/main/project.properties b/src/main/project.properties
new file mode 100644
index 00000000..4ab12569
--- /dev/null
+++ b/src/main/project.properties
@@ -0,0 +1,14 @@
+# This file is automatically generated by Android Tools.
+# Do not modify this file -- YOUR CHANGES WILL BE ERASED!
+#
+# This file must be checked in Version Control Systems.
+#
+# To customize properties used by the Ant build system edit
+# "ant.properties", and override values to adapt the script to your
+# project structure.
+#
+# To enable ProGuard to shrink and obfuscate your code, uncomment this (available properties: sdk.dir, user.home):
+#proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt
+
+# Project target.
+target=android-19
diff --git a/src/main/res/drawable-hdpi/ic_action_keyboard.png b/src/main/res/drawable-hdpi/ic_action_keyboard.png
new file mode 100644
index 00000000..37c04af2
--- /dev/null
+++ b/src/main/res/drawable-hdpi/ic_action_keyboard.png
Binary files differ
diff --git a/src/main/res/drawable-hdpi/smiley.png b/src/main/res/drawable-hdpi/smiley.png
new file mode 100644
index 00000000..c841c4c0
--- /dev/null
+++ b/src/main/res/drawable-hdpi/smiley.png
Binary files differ
diff --git a/src/main/res/drawable-mdpi/ic_action_keyboard.png b/src/main/res/drawable-mdpi/ic_action_keyboard.png
new file mode 100644
index 00000000..481e4222
--- /dev/null
+++ b/src/main/res/drawable-mdpi/ic_action_keyboard.png
Binary files differ
diff --git a/src/main/res/drawable-mdpi/smiley.png b/src/main/res/drawable-mdpi/smiley.png
new file mode 100644
index 00000000..9f6d6511
--- /dev/null
+++ b/src/main/res/drawable-mdpi/smiley.png
Binary files differ
diff --git a/src/main/res/drawable-xhdpi/ic_action_keyboard.png b/src/main/res/drawable-xhdpi/ic_action_keyboard.png
new file mode 100644
index 00000000..c1af1a2f
--- /dev/null
+++ b/src/main/res/drawable-xhdpi/ic_action_keyboard.png
Binary files differ
diff --git a/src/main/res/drawable-xhdpi/smiley.png b/src/main/res/drawable-xhdpi/smiley.png
new file mode 100644
index 00000000..b06e0073
--- /dev/null
+++ b/src/main/res/drawable-xhdpi/smiley.png
Binary files differ
diff --git a/src/main/res/drawable-xxhdpi/ic_action_keyboard.png b/src/main/res/drawable-xxhdpi/ic_action_keyboard.png
new file mode 100644
index 00000000..a4668c41
--- /dev/null
+++ b/src/main/res/drawable-xxhdpi/ic_action_keyboard.png
Binary files differ
diff --git a/src/main/res/drawable-xxhdpi/smiley.png b/src/main/res/drawable-xxhdpi/smiley.png
new file mode 100644
index 00000000..2f11d408
--- /dev/null
+++ b/src/main/res/drawable-xxhdpi/smiley.png
Binary files differ
diff --git a/src/main/res/layout/account_row.xml b/src/main/res/layout/account_row.xml
index cac9a9fa..1837475c 100644
--- a/src/main/res/layout/account_row.xml
+++ b/src/main/res/layout/account_row.xml
@@ -1,21 +1,21 @@
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:background="?android:attr/activatedBackgroundIndicator"
- android:paddingLeft="8dp"
- android:paddingBottom="8dp"
- android:paddingTop="8dp">
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:background="?android:attr/activatedBackgroundIndicator"
+ android:paddingLeft="8dp"
+ android:paddingBottom="8dp"
+ android:paddingTop="8dp">
- <com.makeramen.roundedimageview.RoundedImageView
+ <ImageView
android:id="@+id/account_image"
android:layout_width="48dp"
android:layout_height="48dp"
android:layout_alignParentLeft="true"
android:src="@drawable/ic_profile"
- android:contentDescription="@string/account_image_description"
- app:riv_corner_radius="2dp" />
+ android:contentDescription="@string/account_image_description">
+ </ImageView>
<LinearLayout
android:layout_width="fill_parent"
@@ -46,14 +46,13 @@
android:textStyle="bold" />
</LinearLayout>
- <eu.siacs.conversations.ui.widget.Switch
- style="@style/MD"
+ <Switch
android:id="@+id/tgl_account_status"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
- android:padding="16dp"
+ android:padding="8dp"
android:focusable="false"/>
</RelativeLayout> \ No newline at end of file
diff --git a/src/main/res/layout/activity_edit_account.xml b/src/main/res/layout/activity_edit_account.xml
index 0be934a8..9d7a670b 100644
--- a/src/main/res/layout/activity_edit_account.xml
+++ b/src/main/res/layout/activity_edit_account.xml
@@ -1,9 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
- xmlns:tools="http://schemas.android.com/tools"
+ xmlns:tools="http://schemas.android.com/tools"
xmlns:app="http://schemas.android.com/apk/res-auto"
- android:layout_width="match_parent"
- android:layout_height="match_parent"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
android:background="@color/grey200">
<ScrollView
@@ -28,14 +28,12 @@
android:background="@drawable/infocard_border"
android:orientation="vertical"
android:padding="@dimen/infocard_padding">
- <com.makeramen.roundedimageview.RoundedImageView
- android:id="@+id/avater"
+ <ImageView android:id="@+id/avater"
android:layout_width="72dp"
android:layout_height="72dp"
android:layout_alignParentTop="true"
android:layout_marginRight="16dp"
- android:contentDescription="@string/account_image_description"
- app:riv_corner_radius="2dp"/>
+ android:contentDescription="@string/account_image_description"/>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
diff --git a/src/main/res/layout/activity_muc_details.xml b/src/main/res/layout/activity_muc_details.xml
index 6edbb706..8c75760a 100644
--- a/src/main/res/layout/activity_muc_details.xml
+++ b/src/main/res/layout/activity_muc_details.xml
@@ -1,9 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
- android:layout_width="fill_parent"
- android:layout_height="fill_parent"
- android:background="@color/grey200">
+ android:layout_width="fill_parent"
+ android:layout_height="fill_parent"
+ android:background="@color/grey200">
<LinearLayout
android:layout_width="fill_parent"
@@ -36,13 +36,13 @@
android:layout_height="wrap_content"
android:layout_marginBottom="32dp">
- <com.makeramen.roundedimageview.RoundedImageView
+ <ImageView
android:id="@+id/your_photo"
android:layout_width="48dp"
android:layout_height="48dp"
android:layout_alignParentLeft="true"
- android:src="@drawable/ic_profile"
- app:riv_corner_radius="2dp" />
+ android:src="@drawable/ic_profile">
+ </ImageView>
<LinearLayout
android:layout_width="fill_parent"
diff --git a/src/main/res/layout/contact.xml b/src/main/res/layout/contact.xml
index 56443c34..29cd9886 100644
--- a/src/main/res/layout/contact.xml
+++ b/src/main/res/layout/contact.xml
@@ -6,14 +6,13 @@
android:background="?android:attr/activatedBackgroundIndicator"
android:padding="8dp">
- <com.makeramen.roundedimageview.RoundedImageView
+ <ImageView
android:id="@+id/contact_photo"
android:layout_width="48dp"
android:layout_height="48dp"
android:layout_alignParentLeft="true"
android:scaleType="centerCrop"
- android:src="@drawable/ic_profile"
- app:riv_corner_radius="2dp" />
+ android:src="@drawable/ic_profile" />
<LinearLayout
android:layout_width="wrap_content"
diff --git a/src/main/res/layout/contact_key.xml b/src/main/res/layout/contact_key.xml
index a4fd29e9..f0bd2fc1 100644
--- a/src/main/res/layout/contact_key.xml
+++ b/src/main/res/layout/contact_key.xml
@@ -56,7 +56,7 @@
android:visibility="gone" />
- <eu.siacs.conversations.ui.widget.Switch
+ <Switch
android:id="@+id/tgl_trust"
android:visibility="invisible"
android:layout_width="wrap_content"
diff --git a/src/main/res/layout/conversation_list_row.xml b/src/main/res/layout/conversation_list_row.xml
index 15fa60af..21b0f389 100644
--- a/src/main/res/layout/conversation_list_row.xml
+++ b/src/main/res/layout/conversation_list_row.xml
@@ -7,7 +7,7 @@
<View
android:layout_width="fill_parent"
android:layout_height="fill_parent"
- android:background="@color/green500"/>
+ android:background="@color/red500"/>
<FrameLayout
android:id="@+id/swipeable_item"
@@ -22,13 +22,12 @@
android:orientation="horizontal"
android:padding="8dp" >
- <com.makeramen.roundedimageview.RoundedImageView
+ <ImageView
android:id="@+id/conversation_image"
android:layout_width="56dp"
android:layout_height="56dp"
android:layout_alignParentLeft="true"
- android:scaleType="centerCrop"
- app:riv_corner_radius="2dp" />
+ android:scaleType="centerCrop" />
<RelativeLayout
android:layout_width="fill_parent"
@@ -56,14 +55,15 @@
android:orientation="vertical"
android:paddingTop="3dp" >
- <TextView
+ <github.ankushsachdeva.emojicon.EmojiconTextView
android:id="@+id/conversation_lastmsg"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:scrollHorizontally="false"
android:singleLine="true"
android:textColor="@color/black87"
- android:textSize="?attr/TextSizeBody" />
+ android:textSize="?attr/TextSizeBody"
+ emojicon:emojiconSize="20sp" />
<ImageView
android:id="@+id/conversation_lastimage"
diff --git a/src/main/res/layout/fragment_conversation.xml b/src/main/res/layout/fragment_conversation.xml
index db92c05f..927e7239 100644
--- a/src/main/res/layout/fragment_conversation.xml
+++ b/src/main/res/layout/fragment_conversation.xml
@@ -5,6 +5,13 @@
android:layout_height="match_parent"
android:background="@color/grey200" >
+ <android.support.v4.widget.SwipeRefreshLayout
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:layout_above="@+id/snackbar"
+ android:layout_alignParentLeft="true"
+ android:layout_alignParentTop="true"
+ android:id="@+id/swipe_refresh_container">
<ListView
android:id="@+id/messages_view"
android:layout_width="fill_parent"
@@ -20,6 +27,7 @@
android:transcriptMode="normal"
tools:listitem="@layout/message_sent">
</ListView>
+ </android.support.v4.widget.SwipeRefreshLayout>
<RelativeLayout
android:id="@+id/textsend"
@@ -33,8 +41,8 @@
android:id="@+id/textinput"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:layout_alignParentLeft="true"
android:layout_toLeftOf="@+id/textSendButton"
+ android:layout_toRightOf="@+id/emoji_btn"
android:background="@color/grey50"
android:ems="10"
android:imeOptions="flagNoExtractUi|actionSend"
@@ -58,6 +66,15 @@
android:layout_centerVertical="true"
android:background="?android:selectableItemBackground"
android:src="@drawable/ic_send_text_offline" />
+
+ <ImageView
+ android:layout_width="48dp"
+ android:layout_height="48dp"
+ android:id="@+id/emoji_btn"
+ android:layout_centerVertical="true"
+ android:layout_alignParentLeft="true"
+ android:padding="4dp"
+ android:src="@drawable/smiley" />
</RelativeLayout>
<RelativeLayout
diff --git a/src/main/res/layout/message_received.xml b/src/main/res/layout/message_received.xml
index 76df710b..fefe6af1 100644
--- a/src/main/res/layout/message_received.xml
+++ b/src/main/res/layout/message_received.xml
@@ -1,6 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
+ xmlns:emojicon="http://schemas.android.com/apk/res-auto"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
@@ -9,15 +10,14 @@
android:paddingRight="8dp"
android:paddingTop="3dp">
- <com.makeramen.roundedimageview.RoundedImageView
+ <ImageView
android:id="@+id/message_photo"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:scaleType="fitXY"
- android:src="@drawable/ic_profile"
- app:riv_corner_radius="2dp" />
+ android:src="@drawable/ic_profile" />
<LinearLayout
android:id="@+id/message_box"
@@ -48,7 +48,7 @@
android:background="@color/black87"
android:scaleType="centerCrop" />
- <TextView
+ <github.ankushsachdeva.emojicon.EmojiconTextView
android:id="@+id/message_body"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
@@ -56,7 +56,8 @@
android:textColorLink="@color/white"
android:textColor="@color/white"
android:textColorHighlight="@color/grey800"
- android:textSize="?attr/TextSizeBody" />
+ android:textSize="?attr/TextSizeBody"
+ emojicon:emojiconSize="28sp" />
<Button
android:id="@+id/download_button"
diff --git a/src/main/res/layout/message_sent.xml b/src/main/res/layout/message_sent.xml
index e3b38cd9..cf7322ee 100644
--- a/src/main/res/layout/message_sent.xml
+++ b/src/main/res/layout/message_sent.xml
@@ -1,6 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
+ xmlns:emojicon="http://schemas.android.com/apk/res-auto"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
@@ -9,7 +10,7 @@
android:paddingRight="8dp"
android:paddingTop="3dp">
- <com.makeramen.roundedimageview.RoundedImageView
+ <ImageView
android:id="@+id/message_photo"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
@@ -18,8 +19,7 @@
android:src="@drawable/ic_profile"
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true"
- android:layout_alignParentEnd="true"
- app:riv_corner_radius="2dp" />
+ android:layout_alignParentEnd="true"" />
<LinearLayout
android:id="@+id/message_box"
@@ -49,7 +49,7 @@
android:background="@color/black87"
android:scaleType="centerCrop" />
- <TextView
+ <github.ankushsachdeva.emojicon.EmojiconTextView
android:id="@+id/message_body"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
@@ -57,7 +57,8 @@
android:textColorLink="@color/black87"
android:textColor="@color/black87"
android:textColorHighlight="@color/grey500"
- android:textSize="?attr/TextSizeBody" />
+ android:textSize="?attr/TextSizeBody"
+ emojicon:emojiconSize="28sp" />
<Button
android:id="@+id/download_button"
diff --git a/src/main/res/values-ar-rEG/strings.xml b/src/main/res/values-ar-rEG/strings.xml
index 0d85e55c..5c94b966 100644
--- a/src/main/res/values-ar-rEG/strings.xml
+++ b/src/main/res/values-ar-rEG/strings.xml
@@ -96,7 +96,7 @@
<string name="pref_general">عام</string>
<string name="pref_xmpp_resource">الريسورس</string>
<string name="pref_accept_files">ضبط استقبال الملفات</string>
- <string name="pref_accept_files_summary">اقبل تلقائيا الملفات أقل من</string>
+ <string name="pref_accept_files_size_summary">اقبل تلقائيا الملفات أقل من</string>
<string name="pref_notification_settings">اعدادات الإشعارات</string>
<string name="pref_notifications">الإشعارات</string>
<string name="pref_notifications_summary">أخبرني عندما تصل رساله جديده</string>
diff --git a/src/main/res/values-bg/strings.xml b/src/main/res/values-bg/strings.xml
index e21a6cee..1ee8a7d6 100644
--- a/src/main/res/values-bg/strings.xml
+++ b/src/main/res/values-bg/strings.xml
@@ -98,7 +98,7 @@
<string name="pref_xmpp_resource">XMPP ресурс</string>
<string name="pref_xmpp_resource_summary">Името, с което се определя този клиент</string>
<string name="pref_accept_files">Приемане на файлове</string>
- <string name="pref_accept_files_summary">Автоматично приемане на файлове с размер, по-малък от...</string>
+ <string name="pref_accept_files_size_summary">Автоматично приемане на файлове с размер, по-малък от...</string>
<string name="pref_notification_settings">Настройки за известията</string>
<string name="pref_notifications">Известия</string>
<string name="pref_notifications_summary">Известяване при получаване на ново съобщение</string>
diff --git a/src/main/res/values-de/strings.xml b/src/main/res/values-de/strings.xml
index 178738ea..f1cf580d 100644
--- a/src/main/res/values-de/strings.xml
+++ b/src/main/res/values-de/strings.xml
@@ -1,104 +1,111 @@
<?xml version='1.0' encoding='UTF-8'?>
<resources>
- <string name="action_settings">Einstellungen</string>
- <string name="action_add">Neue Unterhaltung</string>
- <string name="action_accounts">Konten verwalten</string>
- <string name="action_end_conversation">Unterhaltung beenden</string>
+ <string name="action_settings">Einstellungen</string>
+ <string name="action_add">Neue Unterhaltung</string>
+ <string name="action_accounts">Konten verwalten</string>
+ <string name="action_end_conversation">Unterhaltung beenden</string>
<string name="action_contact_details">Kontakt-Details</string>
<string name="action_muc_details">Konferenz-Details</string>
- <string name="action_secure">Verschlüsselte Unterhaltung</string>
- <string name="action_add_account">Konto hinzufügen</string>
+ <string name="action_secure">Verschlüsselte Unterhaltung</string>
+ <string name="action_add_account">Konto hinzufügen</string>
<string name="action_edit_contact">Namen bearbeiten</string>
- <string name="action_add_phone_book">Zum Telefonbuch hinzufügen</string>
- <string name="action_delete_contact">Aus Kontaktliste entfernen</string>
- <string name="action_block_contact">Kontakt sperren</string>
- <string name="action_unblock_contact">Kontakt entsperren</string>
- <string name="action_block_domain">Domain sperren</string>
- <string name="action_unblock_domain">Domain entsperren</string>
- <string name="title_activity_manage_accounts">Konten verwalten</string>
- <string name="title_activity_settings">Einstellungen</string>
+ <string name="action_add_phone_book">Zum Telefonbuch hinzufügen</string>
+ <string name="action_delete_contact">Aus Kontaktliste entfernen</string>
+ <string name="action_block_contact">Kontakt sperren</string>
+ <string name="action_unblock_contact">Kontakt entsperren</string>
+ <string name="action_block_domain">Domain sperren</string>
+ <string name="action_unblock_domain">Domain entsperren</string>
+ <string name="title_activity_manage_accounts">Konten verwalten</string>
+ <string name="title_activity_settings">Einstellungen</string>
<string name="title_activity_conference_details">Konferenz-Details</string>
<string name="title_activity_contact_details">Kontakt-Details</string>
- <string name="title_activity_sharewith">Mit Unterhaltung teilen</string>
- <string name="title_activity_start_conversation">Beginne Unterhaltung</string>
- <string name="title_activity_choose_contact">Kontakt auswählen</string>
- <string name="title_activity_block_list">Sperrliste</string>
- <string name="just_now">gerade</string>
- <string name="minute_ago">vor einer Minute</string>
- <string name="minutes_ago">vor %d Minuten</string>
- <string name="unread_conversations">ungelesene Unterhaltungen</string>
+ <string name="title_activity_sharewith">Mit Unterhaltung teilen</string>
+ <string name="title_activity_start_conversation">Beginne Unterhaltung</string>
+ <string name="title_activity_choose_contact">Kontakt auswählen</string>
+ <string name="title_activity_block_list">Sperrliste</string>
+ <string name="just_now">gerade</string>
+ <string name="minute_ago">vor einer Minute</string>
+ <string name="minutes_ago">vor %d Minuten</string>
+ <string name="unread_conversations">ungelesene Unterhaltungen</string>
<string name="sending">senden…</string>
<string name="encrypted_message">Entschlüssele Nachricht. Bitte warten…</string>
- <string name="nick_in_use">Nickname wird bereits verwendet</string>
- <string name="admin">Administrator</string>
- <string name="owner">Eigentümer</string>
- <string name="moderator">Moderator</string>
- <string name="participant">Teilnehmer</string>
- <string name="visitor">Besucher</string>
- <string name="remove_contact_text">Möchtest du %s von deiner Kontaktliste entfernen? Die Unterhaltung mit diesem Kontakt wird dabei nicht entfernt.</string>
- <string name="block_contact_text">Möchtest du %s sperren und keine Nachrichten mehr erhalten?</string>
- <string name="unblock_contact_text">Möchtest du %s entsperren und wieder Nachrichten empfangen?</string>
- <string name="block_domain_text">Sperre alle Kontakte von %s?</string>
- <string name="unblock_domain_text">Entsperre alle Kontakte %s?</string>
- <string name="contact_blocked">Kontakt gesperrt</string>
+ <string name="nick_in_use">Nickname wird bereits verwendet</string>
+ <string name="admin">Administrator</string>
+ <string name="owner">Eigentümer</string>
+ <string name="moderator">Moderator</string>
+ <string name="participant">Teilnehmer</string>
+ <string name="visitor">Besucher</string>
+ <string name="remove_contact_text">Möchtest du %s von deiner Kontaktliste entfernen? Die Unterhaltung mit diesem Kontakt wird dabei nicht entfernt.</string>
+ <string name="block_contact_text">Möchtest du %s sperren und keine Nachrichten mehr erhalten?</string>
+ <string name="unblock_contact_text">Möchtest du %s entsperren und wieder Nachrichten empfangen?</string>
+ <string name="block_domain_text">Sperre alle Kontakte von %s?</string>
+ <string name="unblock_domain_text">Entsperre alle Kontakte %s?</string>
+ <string name="contact_blocked">Kontakt gesperrt</string>
<string name="remove_bookmark_text">Möchtest du %s von deiner Kontaktliste entfernen? Die Unterhaltung mit dieser Konferenz wird dabei nicht entfernt.</string>
- <string name="register_account">Neues Konto auf dem Server erstellen</string>
- <string name="change_password_on_server">Passwort ändern</string>
+ <string name="register_account">Neues Konto auf dem Server erstellen</string>
+ <string name="change_password_on_server">Passwort ändern</string>
<string name="share_with">Teile mit…</string>
- <string name="start_conversation">Beginne Unterhaltung</string>
- <string name="invite_contact">Kontakt einladen</string>
- <string name="contacts">Kontakte</string>
- <string name="cancel">Abbrechen</string>
- <string name="set">Einstellen</string>
- <string name="add">Hinzufügen</string>
- <string name="edit">Bearbeiten</string>
- <string name="delete">Entfernen</string>
- <string name="block">Sperren</string>
- <string name="unblock">Entsperren</string>
- <string name="save">Speichern</string>
- <string name="ok">OK</string>
- <string name="crash_report_title">Conversations ist abgestürzt</string>
- <string name="crash_report_message">Durch das Einsenden von Fehlerberichten hilfst du bei der stetigen Verbesserung von Conversations.\n<b>Achtung:</b> Dies wird eines deiner XMPP-Konten benutzen, um den Entwickler zu kontaktieren.</string>
- <string name="send_now">Jetzt abschicken</string>
- <string name="send_never">Nie mehr nachfragen</string>
- <string name="problem_connecting_to_account">Es gibt Probleme beim Verbindungsaufbau mit einem Konto</string>
- <string name="problem_connecting_to_accounts">Es gibt Probleme beim Verbindungsaufbau mit mehreren Konten</string>
- <string name="touch_to_fix">Drücke hier, um das Konto zu verwalten</string>
- <string name="attach_file">Datei anfügen</string>
- <string name="not_in_roster">Der Kontakt ist nicht in deiner Kontaktliste. Möchtest du ihn hinzufügen?</string>
+ <string name="start_conversation">Beginne Unterhaltung</string>
+ <string name="invite_contact">Kontakt einladen</string>
+ <string name="contacts">Kontakte</string>
+ <string name="cancel">Abbrechen</string>
+ <string name="set">Einstellen</string>
+ <string name="add">Hinzufügen</string>
+ <string name="edit">Bearbeiten</string>
+ <string name="delete">Entfernen</string>
+ <string name="block">Sperren</string>
+ <string name="unblock">Entsperren</string>
+ <string name="save">Speichern</string>
+ <string name="ok">OK</string>
+ <string name="crash_report_title">Conversations ist abgestürzt</string>
+ <string name="crash_report_message">Durch das Einsenden von Fehlerberichten hilfst du bei der stetigen Verbesserung von Conversations.\n<b>Achtung:</b> Dies wird eines deiner XMPP-Konten benutzen, um den Entwickler zu kontaktieren.</string>
+ <string name="send_now">Jetzt abschicken</string>
+ <string name="send_never">Nie mehr nachfragen</string>
+ <string name="problem_connecting_to_account">Es gibt Probleme beim Verbindungsaufbau mit einem Konto</string>
+ <string name="problem_connecting_to_accounts">Es gibt Probleme beim Verbindungsaufbau mit mehreren Konten</string>
+ <string name="touch_to_fix">Drücke hier, um das Konto zu verwalten</string>
+ <string name="attach_file">Datei anfügen</string>
+ <string name="not_in_roster">Der Kontakt ist nicht in deiner Kontaktliste. Möchtest du ihn hinzufügen?</string>
<string name="add_contact">Zur Kontaktliste hinzufügen</string>
- <string name="send_failed">Zustellung nicht erfolgreich</string>
- <string name="send_rejected">abgelehnt</string>
- <string name="preparing_image">Bereite Bild für die Übertragung vor</string>
- <string name="action_clear_history">Verlauf löschen</string>
+ <string name="send_failed">Zustellung nicht erfolgreich</string>
+ <string name="send_rejected">abgelehnt</string>
+ <string name="preparing_image">Bereite Bild für die Übertragung vor</string>
+ <string name="action_clear_history">Verlauf löschen</string>
<string name="clear_conversation_history">Verlauf löschen</string>
- <string name="clear_histor_msg">Möchtest du alle Nachrichten in dieser Unterhaltung löschen?\n\n<b>Achtung:</b> Dies beeinflusst nicht Nachrichten, die auf anderen Geräten oder Servern gespeichert sind.</string>
- <string name="delete_messages">Nachrichten löschen</string>
- <string name="also_end_conversation">Diese Unterhaltung danach beenden</string>
- <string name="choose_presence">Ressource des Kontakts auswählen</string>
+ <string name="clear_histor_msg">Möchtest du alle Nachrichten in dieser Unterhaltung löschen?\n\n<b>Achtung:</b> Dies beeinflusst nicht Nachrichten, die auf anderen Geräten oder Servern gespeichert sind.</string>
+ <string name="delete_messages">Nachrichten löschen</string>
+ <string name="also_end_conversation">Diese Unterhaltung danach beenden</string>
+ <string name="choose_presence">Ressource des Kontakts auswählen</string>
<string name="send_plain_text_message">Normal schreiben…</string>
<string name="send_otr_message">OTR-verschlüsselt schreiben…</string>
<string name="send_omemo_message">OMEMO-verschlüsselt schreiben…</string>
<string name="send_pgp_message">OpenPGP-verschlüsselt schreiben…</string>
- <string name="your_nick_has_been_changed">Dein Nickname wurde geändert</string>
+ <string name="your_nick_has_been_changed">Dein Nickname wurde geändert</string>
+ <string name="download_image">Bild herunterladen</string>
<string name="send_unencrypted">Normal verschicken</string>
- <string name="decryption_failed">Entschlüsselung fehlgeschlagen. Vielleicht hast du nicht den richtigen privaten Schlüssel.</string>
- <string name="openkeychain_required">OpenKeychain</string>
- <string name="openkeychain_required_long">Conversations benutzt eine Drittanwendung namens <b>OpenKeychain</b>, um Nachrichten zu ver- und entschlüsseln und um deine Schlüssel zu verwalten.\n\nOpenKeychain ist GPLv3-lizenziert und kann über F-Droid oder Google Play bezogen werden.\n\n<small>(Bitte starte Conversations danach neu.)</small></string>
+ <string name="decryption_failed">Entschlüsselung fehlgeschlagen. Vielleicht hast du nicht den richtigen privaten Schlüssel.</string>
+ <string name="openkeychain_required">OpenKeychain</string>
+ <string name="openkeychain_required_long">Conversations benutzt eine Drittanwendung namens <b>OpenKeychain</b>, um Nachrichten zu ver- und entschlüsseln und um deine Schlüssel zu verwalten.\n\nOpenKeychain ist GPLv3-lizenziert und kann über F-Droid oder Google Play bezogen werden.\n\n<small>(Bitte starte Conversations danach neu.)</small></string>
<string name="restart">Neu starten</string>
- <string name="install">Installieren</string>
+ <string name="install">Installieren</string>
<string name="offering">angeboten…</string>
<string name="waiting">warten…</string>
- <string name="no_pgp_key">Kein OpenPGP-Schlüssel gefunden</string>
- <string name="contact_has_no_pgp_key">Conversations ist nicht in der Lage, deine Nachrichten zu verschlüsseln, weil dein Kontakt seinen oder ihren Schlüssel nicht preisgibt.\n\n<small>Bitte sag deinem Kontakt, er oder sie möge OpenPGP einrichten.</small></string>
- <string name="no_pgp_keys">Keine OpenPGP-Schlüssel gefunden</string>
+ <string name="no_pgp_key">Kein OpenPGP-Schlüssel gefunden</string>
+ <string name="contact_has_no_pgp_key">Conversations ist nicht in der Lage, deine Nachrichten zu verschlüsseln, weil dein Kontakt seinen oder ihren Schlüssel nicht preisgibt.\n\n<small>Bitte sag deinem Kontakt, er oder sie möge OpenPGP einrichten.</small></string>
+ <string name="no_pgp_keys">Keine OpenPGP-Schlüssel gefunden</string>
<string name="contacts_have_no_pgp_keys">Conversations ist nicht in der Lage, deine Nachrichten zu verschlüsseln, weil deine Kontakte ihre Schlüssel nicht preisgeben.\n\n<small>Bitte sage deinen Kontakten, sie mögen OpenPGP einrichten.</small></string>
<string name="encrypted_message_received"><i>Verschlüsselte Nachricht erhalten. Drücke hier, um sie zu entschlüsseln und anzuzeigen.</i></string>
<string name="pref_general">Allgemeines</string>
<string name="pref_xmpp_resource">XMPP-Ressource</string>
<string name="pref_xmpp_resource_summary">Der Name, mit dem sich der Client selbst identifiziert</string>
<string name="pref_accept_files">Dateiannahme</string>
- <string name="pref_accept_files_summary">Dateien, die kleiner sind als …, automatisch annehmen</string>
+ <string name="pref_accept_files_summary">Einstellungen für Dateiannahme und automatischen Download</string>
+ <string name="pref_accept_files_size">Größe</string>
+ <string name="pref_accept_files_size_summary">Dateien, die kleiner sind als …, automatisch annehmen</string>
+ <string name="pref_accept_files_download">nur WLAN</string>
+ <string name="pref_accept_files_download_summary">Automatisches Herunterladen und Akzpetieren von Dateien nur im WLAN</string>
+ <string name="pref_accept_files_download_link">Bilder-Links</string>
+ <string name="pref_accept_files_download_link_summary">Bilder-Links automatisch herunterladen</string>
<string name="pref_notification_settings">Benachrichtigungen</string>
<string name="pref_notifications">Benachrichtigungen</string>
<string name="pref_notifications_summary">Benachrichtige mich, wenn eine neue Nachricht ankommt</string>
@@ -114,8 +121,13 @@
<string name="pref_never_send_crash">Sende niemals Absturzberichte</string>
<string name="pref_never_send_crash_summary">Wenn du Absturzberichte einschickst, hilfst du Conversations stetig zu verbessern</string>
<string name="pref_confirm_messages">Lese- und Empfangsbestätigung senden</string>
- <string name="pref_confirm_messages_summary">Informiere deine Kontakte, wenn du eine Nachricht empfangen und gelesen hast</string>
+ <string name="pref_confirm_messages_summary">Informiere deine Kontakte, wenn du eine Nachricht empfangen oder gelesen hast</string>
+ <string name="pref_confirm_messages_none">Keine Bestätigungen</string>
+ <string name="pref_confirm_messages_received">Nur Empfangsbestätigung</string>
+ <string name="pref_confirm_messages_read_and_received">Lese- und Empfangsbestätigung</string>
<string name="pref_ui_options">Benutzeroberfläche</string>
+ <string name="pref_parse_emoticons">Smilies ersetzen</string>
+ <string name="pref_parse_emoticons_summary">Zeige Smilie-Bilder anstelle von Emoticons.</string>
<string name="openpgp_error">Fehler mit OpenKeychain</string>
<string name="error_decrypting_file">Fehler beim Entschlüsseln der Datei</string>
<string name="accept">Annehmen</string>
@@ -130,15 +142,15 @@
<string name="ask_for_presence_updates">Online-Status anfragen</string>
<string name="attach_choose_picture">Bild auswählen</string>
<string name="attach_take_picture">Bild aufnehmen</string>
- <string name="preemptively_grant">Erlaube Statusanfrage vorab</string>
- <string name="error_not_an_image_file">Die ausgewählte Datei ist kein Bild</string>
- <string name="error_compressing_image">Fehler beim Umwandeln des Bildes</string>
- <string name="error_file_not_found">Datei nicht gefunden</string>
- <string name="error_io_exception">Allgemeiner Fehler. Vielleicht hast du keinen Speicherplatz mehr?</string>
- <string name="error_security_exception_during_image_copy">Die App, mit der du das Bild ausgesucht hast, hat uns keine Rechte eingeräumt, das Bild zu betrachten.\n\n<small>Benutze einen anderen Dateimanager</small></string>
- <string name="account_status_unknown">Unbekannt</string>
- <string name="account_status_disabled">Vorübergehend abgeschaltet</string>
- <string name="account_status_online">Online</string>
+ <string name="preemptively_grant">Erlaube Statusanfrage vorab</string>
+ <string name="error_not_an_image_file">Die ausgewählte Datei ist kein Bild</string>
+ <string name="error_compressing_image">Fehler beim Umwandeln des Bildes</string>
+ <string name="error_file_not_found">Datei nicht gefunden</string>
+ <string name="error_io_exception">Allgemeiner Fehler. Vielleicht hast du keinen Speicherplatz mehr?</string>
+ <string name="error_security_exception_during_image_copy">Die App, mit der du das Bild ausgesucht hast, hat uns keine Rechte eingeräumt, das Bild zu betrachten.\n\n<small>Benutze einen anderen Dateimanager</small></string>
+ <string name="account_status_unknown">Unbekannt</string>
+ <string name="account_status_disabled">Vorübergehend abgeschaltet</string>
+ <string name="account_status_online">Online</string>
<string name="account_status_connecting">Verbinde…</string>
<string name="account_status_offline">Offline</string>
<string name="account_status_unauthorized">Ungültige Zugangsdaten</string>
@@ -162,33 +174,33 @@
<string name="mgmt_account_enable">Anschalten</string>
<string name="mgmt_account_are_you_sure">Bist du dir sicher?</string>
<string name="mgmt_account_delete_confirm_text">Wenn du dein Konto löschst, gehen alle Gesprächsverläufe verloren</string>
- <string name="attach_record_voice">Sprache aufzeichnen</string>
+ <string name="attach_record_voice">Sprache aufzeichnen</string>
<string name="account_settings_jabber_id">Jabber-ID</string>
<string name="account_settings_password">Passwort</string>
- <string name="account_settings_example_jabber_id">benutzer@domain.de</string>
- <string name="account_settings_confirm_password">Passwort bestätigen</string>
- <string name="password">Passwort</string>
- <string name="confirm_password">Passwort bestätigen</string>
- <string name="passwords_do_not_match">Passwörter stimmen nicht überein</string>
- <string name="invalid_jid">Ungültige Jabber-ID</string>
- <string name="error_out_of_memory">Zu wenig Speicher vorhanden. Das Bild ist zu groß</string>
- <string name="add_phone_book_text">Möchtest du %s zum Telefonbuch hinzufügen?</string>
+ <string name="account_settings_example_jabber_id">benutzer@domain.de</string>
+ <string name="account_settings_confirm_password">Passwort bestätigen</string>
+ <string name="password">Passwort</string>
+ <string name="confirm_password">Passwort bestätigen</string>
+ <string name="passwords_do_not_match">Passwörter stimmen nicht überein</string>
+ <string name="invalid_jid">Ungültige Jabber-ID</string>
+ <string name="error_out_of_memory">Zu wenig Speicher vorhanden. Das Bild ist zu groß</string>
+ <string name="add_phone_book_text">Möchtest du %s zum Telefonbuch hinzufügen?</string>
<string name="contact_status_online">online</string>
- <string name="contact_status_free_to_chat">Bereit</string>
- <string name="contact_status_away">Abwesend</string>
- <string name="contact_status_extended_away">Abwesend (erweitert)</string>
- <string name="contact_status_do_not_disturb">Nicht stören</string>
- <string name="contact_status_offline">Offline</string>
- <string name="muc_details_conference">Konferenz</string>
- <string name="muc_details_other_members">Andere Mitglieder</string>
- <string name="server_info_show_more">Server Info</string>
- <string name="server_info_mam">XEP-0313: MAM</string>
- <string name="server_info_carbon_messages">XEP-0280: Message Carbons</string>
+ <string name="contact_status_free_to_chat">Bereit</string>
+ <string name="contact_status_away">Abwesend</string>
+ <string name="contact_status_extended_away">Abwesend (erweitert)</string>
+ <string name="contact_status_do_not_disturb">Nicht stören</string>
+ <string name="contact_status_offline">Offline</string>
+ <string name="muc_details_conference">Konferenz</string>
+ <string name="muc_details_other_members">Andere Mitglieder</string>
+ <string name="server_info_show_more">Server Info</string>
+ <string name="server_info_mam">XEP-0313: MAM</string>
+ <string name="server_info_carbon_messages">XEP-0280: Message Carbons</string>
<string name="server_info_csi">XEP-0352: CSI</string>
- <string name="server_info_blocking">XEP-0191: Blocking Command</string>
- <string name="server_info_roster_version">XEP-0237: Roster Versioning</string>
- <string name="server_info_stream_management">XEP-0198: Stream Management</string>
- <string name="server_info_pep">XEP-0163: PEP (Avatare)</string>
+ <string name="server_info_blocking">XEP-0191: Blocking Command</string>
+ <string name="server_info_roster_version">XEP-0237: Roster Versioning</string>
+ <string name="server_info_stream_management">XEP-0198: Stream Management</string>
+ <string name="server_info_pep">XEP-0163: PEP (Avatare)</string>
<string name="server_info_available">ja</string>
<string name="server_info_unavailable">nein</string>
<string name="missing_public_keys">Öffentlicher Schlüssel fehlt</string>
@@ -219,40 +231,40 @@
<string name="search">Suche</string>
<string name="create_contact">Kontakt erstellen</string>
<string name="join_conference">Konferenz betreten</string>
- <string name="delete_contact">Kontakt löschen</string>
+ <string name="delete_contact">Kontakt löschen</string>
<string name="view_contact_details">Kontakt-Details anzeigen</string>
- <string name="block_contact">Kontakt sperren</string>
+ <string name="block_contact">Kontakt sperren</string>
<string name="unblock_contact">Kontakt entsperren</string>
- <string name="create">Erstellen</string>
- <string name="contact_already_exists">Der Kontakt existiert bereits</string>
- <string name="join">Beitreten</string>
+ <string name="create">Erstellen</string>
+ <string name="contact_already_exists">Der Kontakt existiert bereits</string>
+ <string name="join">Beitreten</string>
<string name="conference_address">Konferenz-Adresse</string>
<string name="conference_address_example">raum@conference.domain.de</string>
<string name="save_as_bookmark">Zur Kontaktliste hinzufügen</string>
<string name="delete_bookmark">Von Kontaktliste entfernen</string>
<string name="bookmark_already_exists">Die Konferenz befindet sich bereits auf deiner Kontaktliste</string>
- <string name="you">Du</string>
+ <string name="you">Du</string>
<string name="action_edit_subject">Konferenz-Thema anpassen</string>
- <string name="conference_not_found">Konferenz nicht gefunden</string>
- <string name="leave">Verlassen</string>
- <string name="contact_added_you">Der Kontakt hat dich zur Kontaktliste hinzugefügt</string>
- <string name="add_back">Auch hinzufügen</string>
- <string name="contact_has_read_up_to_this_point">%s hat bis zu diesem Punkt gelesen</string>
- <string name="publish">Veröffentlichen</string>
+ <string name="conference_not_found">Konferenz nicht gefunden</string>
+ <string name="leave">Verlassen</string>
+ <string name="contact_added_you">Der Kontakt hat dich zur Kontaktliste hinzugefügt</string>
+ <string name="add_back">Auch hinzufügen</string>
+ <string name="contact_has_read_up_to_this_point">%s hat bis zu diesem Punkt gelesen</string>
+ <string name="publish">Veröffentlichen</string>
<string name="touch_to_choose_picture">Hier klicken, um einen Avatar auszuwählen</string>
- <string name="publish_avatar_explanation">Achtung: Jeder, der deinen Status sehen darf, sieht auch deinen Avatar.</string>
+ <string name="publish_avatar_explanation">Achtung: Jeder, der deinen Status sehen darf, sieht auch deinen Avatar.</string>
<string name="publishing">Veröffentliche…</string>
- <string name="error_publish_avatar_server_reject">Der Server hat die Veröffentlichung des Avatars abgelehnt.</string>
- <string name="error_publish_avatar_converting">Bei der Konvertierung des Avatars lief etwas schief.</string>
- <string name="error_saving_avatar">Kann Avatar nicht speichern.</string>
- <string name="or_long_press_for_default">(Oder klicke lange, um Standard wiederherzustellen)</string>
- <string name="error_publish_avatar_no_server_support">Dein Server unterstützt die Veröffentlichung von Avataren nicht.</string>
+ <string name="error_publish_avatar_server_reject">Der Server hat die Veröffentlichung des Avatars abgelehnt.</string>
+ <string name="error_publish_avatar_converting">Bei der Konvertierung des Avatars lief etwas schief.</string>
+ <string name="error_saving_avatar">Kann Avatar nicht speichern.</string>
+ <string name="or_long_press_for_default">(Oder klicke lange, um Standard wiederherzustellen)</string>
+ <string name="error_publish_avatar_no_server_support">Dein Server unterstützt die Veröffentlichung von Avataren nicht.</string>
<string name="private_message">private Nachricht:</string>
<string name="private_message_to">privat an %s:</string>
<string name="send_private_message_to">Sende private Nachricht an %s…</string>
- <string name="connect">Verbinden</string>
- <string name="account_already_exists">Das Konto existiert bereits</string>
- <string name="next">Weiter</string>
+ <string name="connect">Verbinden</string>
+ <string name="account_already_exists">Das Konto existiert bereits</string>
+ <string name="next">Weiter</string>
<string name="server_info_session_established">Sitzung wiederhergestellt</string>
<string name="additional_information">Zusätzliche Informationen</string>
<string name="skip">Überspringen</string>
@@ -287,7 +299,7 @@
<string name="pref_use_larger_font_summary">Größere Schrift verwenden</string>
<string name="pref_use_send_button_to_indicate_status">Absende-Knopf zeigt Online-Status an</string>
<string name="pref_use_indicate_received">Anfrage für Nachrichtenempfang</string>
- <string name="pref_use_indicate_received_summary">Empfangene Nachrichten werden mit einem grünen Häkchen markiert. Bitte beachte, dass dies nicht in allen Fällen funktioniert.</string>
+ <string name="pref_use_indicate_received_summary">Empfangene Nachrichten werden mit einem grünen Häkchen markiert. Bitte beachte, dass dies nicht in allen Fällen funktioniert.</string>
<string name="pref_use_send_button_to_indicate_status_summary">Absende-Knopf einfärben, um den Online-Status des Kontakts zu signalisieren</string>
<string name="pref_expert_options_other">Sonstiges</string>
<string name="pref_conference_name">Konferenz-Name</string>
@@ -314,46 +326,46 @@
<string name="show_qr_code">Zeige QR-Code</string>
<string name="show_block_list">Zeige Sperrliste</string>
<string name="account_details">Konto-Details</string>
- <string name="verify_otr">Prüfe OTR</string>
- <string name="remote_fingerprint">Fingerabdruck der Gegenseite</string>
- <string name="scan">Scanne</string>
- <string name="or_touch_phones">(oder Touch-Handys)</string>
- <string name="smp">Socialist Millionaire Protocol</string>
- <string name="shared_secret_hint">Hinweis oder Frage</string>
- <string name="shared_secret_secret">Gemeinsamer Schlüssel</string>
- <string name="confirm">Bestätige</string>
- <string name="in_progress">In Bearbeitung</string>
- <string name="respond">Antworten</string>
- <string name="failed">Fehlgeschlagen</string>
- <string name="secrets_do_not_match">Schlüssel stimmen nicht überein</string>
- <string name="try_again">Erneut versuchen</string>
- <string name="finish">Fertig</string>
- <string name="verified">Überprüft!</string>
+ <string name="verify_otr">Prüfe OTR</string>
+ <string name="remote_fingerprint">Fingerabdruck der Gegenseite</string>
+ <string name="scan">Scanne</string>
+ <string name="or_touch_phones">(oder Touch-Handys)</string>
+ <string name="smp">Socialist Millionaire Protocol</string>
+ <string name="shared_secret_hint">Hinweis oder Frage</string>
+ <string name="shared_secret_secret">Gemeinsamer Schlüssel</string>
+ <string name="confirm">Bestätige</string>
+ <string name="in_progress">In Bearbeitung</string>
+ <string name="respond">Antworten</string>
+ <string name="failed">Fehlgeschlagen</string>
+ <string name="secrets_do_not_match">Schlüssel stimmen nicht überein</string>
+ <string name="try_again">Erneut versuchen</string>
+ <string name="finish">Fertig</string>
+ <string name="verified">Überprüft!</string>
<string name="smp_requested">Kontakt fordert eine Überprüfung an</string>
- <string name="no_otr_session_found">Keine gültige OTR Sitzung gefunden!</string>
- <string name="conversations_foreground_service">Conversations</string>
- <string name="pref_keep_foreground_service">Den Dienst im Vordergrund ausführen.</string>
+ <string name="no_otr_session_found">Keine gültige OTR Sitzung gefunden!</string>
+ <string name="conversations_foreground_service">Conversations</string>
+ <string name="pref_keep_foreground_service">Den Dienst im Vordergrund ausführen.</string>
<string name="pref_keep_foreground_service_summary">Verhindert, dass Android Conversations beendet und die Verbindung unterbricht</string>
- <string name="choose_file">Datei auswählen</string>
+ <string name="choose_file">Datei auswählen</string>
<string name="receiving_x_file">Empfange %1$s (%2$d%% abgeschlossen)</string>
<string name="download_x_file">Lade %s herunter</string>
<string name="file">Datei</string>
<string name="open_x_file">Öffne %s</string>
<string name="sending_file">Sende (%1$d%% gesendet)</string>
- <string name="preparing_file">Bereite Datei für die Übertragung vor</string>
+ <string name="preparing_file">Bereite Datei für die Übertragung vor</string>
<string name="x_file_offered_for_download">%s zum Herunterladen angeboten</string>
- <string name="cancel_transmission">Datei-Übertragung abbrechen</string>
- <string name="file_transmission_failed">Datei-Übertragung fehlgeschlagen</string>
- <string name="file_deleted">Datei wurde gelöscht</string>
- <string name="no_application_found_to_open_file">Keine Anwendung zum Öffnen der Datei gefunden</string>
- <string name="could_not_verify_fingerprint">Kann Fingerabdruck nicht überprüfen</string>
- <string name="manually_verify">Manuell überprüfen</string>
- <string name="are_you_sure_verify_fingerprint">Bist du sicher, dass du den OTR-Fingerabdruck des Kontakts überprüfen willst?</string>
- <string name="pref_show_dynamic_tags">Dynamische Tags anzeigen</string>
- <string name="pref_show_dynamic_tags_summary">Zeige schreibgeschützte Tags unterhalb der Kontakte</string>
- <string name="enable_notifications">Aktiviere Benachrichtigungen</string>
+ <string name="cancel_transmission">Datei-Übertragung abbrechen</string>
+ <string name="file_transmission_failed">Datei-Übertragung fehlgeschlagen</string>
+ <string name="file_deleted">Datei wurde gelöscht</string>
+ <string name="no_application_found_to_open_file">Keine Anwendung zum Öffnen der Datei gefunden</string>
+ <string name="could_not_verify_fingerprint">Kann Fingerabdruck nicht überprüfen</string>
+ <string name="manually_verify">Manuell überprüfen</string>
+ <string name="are_you_sure_verify_fingerprint">Bist du sicher, dass du den OTR-Fingerabdruck des Kontakts überprüfen willst?</string>
+ <string name="pref_show_dynamic_tags">Dynamische Tags anzeigen</string>
+ <string name="pref_show_dynamic_tags_summary">Zeige schreibgeschützte Tags unterhalb der Kontakte</string>
+ <string name="enable_notifications">Aktiviere Benachrichtigungen</string>
<string name="conference_with">Beginne Konferenz mit…</string>
- <string name="no_conference_server_found">Konferenz-Server kann nicht gefunden werden</string>
+ <string name="no_conference_server_found">Konferenz-Server kann nicht gefunden werden</string>
<string name="conference_creation_failed">Beginnen der Konferenz fehlgeschlagen!</string>
<string name="conference_created">Konferenz erstellt!</string>
<string name="secret_accepted">Schlüssel akzeptiert!</string>
@@ -371,22 +383,23 @@
<string name="fetching_history_from_server">Lade Chatverlauf…</string>
<string name="no_more_history_on_server">Keine weiteren Nachrichten vorhanden</string>
<string name="updating">Aktualisiere…</string>
- <string name="password_changed">Passwort geändert.</string>
- <string name="could_not_change_password">Passwort kann nicht geändert werden.</string>
- <string name="otr_session_not_started">Sende eine Nachricht, um eine verschlüsselte Unterhaltung zu beginnen</string>
- <string name="ask_question">Frage stellen</string>
- <string name="smp_explain_question">Falls du mit deinem Kontakt ein gemeinsames Geheimnis hast (z.B. ein Insider-Witz oder was ihr zuletzt gemeinsam zum Mittag gegessen habt), kann dies zur gegenseitigen Überprüfung des Fingerabdrucks genutzt werden.\n\nDu stellst eine Frage oder gibst einen Hinweis und dein Kontakt gibt eine eindeutige Antwort.</string>
- <string name="smp_explain_answer">Dein Kontakt möchte deinen Fingerabdruck mit Hilfe eines gemeinsamen Schlüssels überprüfen. Dein Kontakt hat dazu folgende Frage gestellt.</string>
- <string name="shared_secret_hint_should_not_be_empty">Deine Frage darf nicht leer sein.</string>
- <string name="shared_secret_can_not_be_empty">Dein gemeinsamer Schlüssel darf nicht leer sein</string>
- <string name="manual_verification_explanation">Vergleiche den angezeigten Fingerabdruck sorgfältig mit dem deines Kontakts.\nDu kannst dazu einen sicheren Kommunikationsweg (z.B. verschlüsselte E-Mail oder Telefonanruf) zum Austausch nutzen.</string>
- <string name="change_password">Passwort ändern</string>
- <string name="current_password">Aktuelles Passwort</string>
- <string name="new_password">Neues Passwort</string>
- <string name="password_should_not_be_empty">Das Passwort darf nicht leer sein</string>
- <string name="enable_all_accounts">Alle Konten anschalten</string>
- <string name="disable_all_accounts">Alle Konten abschalten</string>
- <string name="perform_action_with">Aktion durchführen mit</string>
+ <string name="password_changed">Passwort geändert.</string>
+ <string name="could_not_change_password">Passwort kann nicht geändert werden.</string>
+ <string name="otr_session_not_started">Sende eine Nachricht, um eine verschlüsselte Unterhaltung zu beginnen</string>
+ <string name="ask_question">Frage stellen</string>
+ <string name="smp_explain_question">Falls du mit deinem Kontakt ein gemeinsames Geheimnis hast (z.B. ein Insider-Witz oder was ihr zuletzt gemeinsam zum Mittag gegessen habt), kann dies zur gegenseitigen Überprüfung des Fingerabdrucks genutzt werden.\n\nDu stellst eine Frage oder gibst einen Hinweis und dein Kontakt gibt eine eindeutige Antwort.</string>
+ <string name="smp_explain_answer">Dein Kontakt möchte deinen Fingerabdruck mit Hilfe eines gemeinsamen Schlüssels überprüfen. Dein Kontakt hat dazu folgende Frage gestellt.</string>
+ <string name="shared_secret_hint_should_not_be_empty">Deine Frage darf nicht leer sein.</string>
+ <string name="shared_secret_can_not_be_empty">Dein gemeinsamer Schlüssel darf nicht leer sein</string>
+ <string name="manual_verification_explanation">Vergleiche den angezeigten Fingerabdruck sorgfältig mit dem deines Kontakts.\nDu kannst dazu einen sicheren Kommunikationsweg (z.B. verschlüsselte E-Mail oder Telefonanruf) zum Austausch nutzen.</string>
+ <string name="change_password">Passwort ändern</string>
+ <string name="current_password">Aktuelles Passwort</string>
+ <string name="new_password">Neues Passwort</string>
+ <string name="password_should_not_be_empty">Das Passwort darf nicht leer sein</string>
+ <string name="password_should_not_contain_only_spaces">Das Passwort darf nicht nur aus Leerzeichen bestehen</string>
+ <string name="enable_all_accounts">Alle Konten anschalten</string>
+ <string name="disable_all_accounts">Alle Konten abschalten</string>
+ <string name="perform_action_with">Aktion durchführen mit</string>
<string name="no_affiliation">Keine Zugehörigkeit</string>
<string name="no_role">Keine Rolle</string>
<string name="outcast">Ausgeschlossen</string>
@@ -475,4 +488,6 @@
<string name="download_failed_server_not_found">Download fehlgeschlagen: Server nicht gefunden</string>
<string name="download_failed_file_not_found">Download fehlgeschlagen: Datei nicht gefunden</string>
<string name="download_failed_could_not_connect">Download fehlgeschlagen: keine Verbindung zum Host</string>
+ <string name="pref_led_notification_color">LED-Benachrichtigung Farbe</string>
+ <string name="pref_led_notification_color_summary">Setze die Farbe der LED-Benachrichtigung</string>
</resources>
diff --git a/src/main/res/values-fr/strings.xml b/src/main/res/values-fr/strings.xml
index 646f5414..cfd79136 100644
--- a/src/main/res/values-fr/strings.xml
+++ b/src/main/res/values-fr/strings.xml
@@ -97,7 +97,7 @@
<string name="pref_xmpp_resource">Ressource XMPP</string>
<string name="pref_xmpp_resource_summary">Nom permettant d\'identifier ce client XMPP</string>
<string name="pref_accept_files">Accepter les fichiers</string>
- <string name="pref_accept_files_summary">Accepter automatiquement les fichiers plus petits que…</string>
+ <string name="pref_accept_files_size_summary">Accepter automatiquement les fichiers plus petits que…</string>
<string name="pref_notification_settings">Paramètres de notification</string>
<string name="pref_notifications">Notifications</string>
<string name="pref_notifications_summary">Notifier l\'arrivée d\'un message</string>
diff --git a/src/main/res/values-gl/strings.xml b/src/main/res/values-gl/strings.xml
index 6a6b23c1..aad7906b 100644
--- a/src/main/res/values-gl/strings.xml
+++ b/src/main/res/values-gl/strings.xml
@@ -61,7 +61,7 @@
<string name="pref_xmpp_resource">Recurso</string>
<string name="pref_xmpp_resource_summary">O nome que identifica o cliente que estás a empregar</string>
<string name="pref_accept_files">Aceptar arquivos</string>
- <string name="pref_accept_files_summary">De forma automática aceptar arquivos menores de…</string>
+ <string name="pref_accept_files_size_summary">De forma automática aceptar arquivos menores de…</string>
<string name="pref_notification_settings">Axustes de notificación</string>
<string name="pref_notifications">Notificacións</string>
<string name="pref_notifications_summary">Notifica cuando chega unha nova mensaxe</string>
diff --git a/src/main/res/values-iw/strings.xml b/src/main/res/values-iw/strings.xml
index 8eeaab6b..3b62cd5e 100644
--- a/src/main/res/values-iw/strings.xml
+++ b/src/main/res/values-iw/strings.xml
@@ -82,7 +82,7 @@
<string name="pref_xmpp_resource">משאב XMPP</string>
<string name="pref_xmpp_resource_summary">השם שלקוח זה מזהה את עצמו עם</string>
<string name="pref_accept_files">קבל קבצים</string>
- <string name="pref_accept_files_summary">קבל אוטומטית קבצים קטנים יותר מאשר…</string>
+ <string name="pref_accept_files_size_summary">קבל אוטומטית קבצים קטנים יותר מאשר…</string>
<string name="pref_notification_settings">הגדרות התראה</string>
<string name="pref_notifications">התראות</string>
<string name="pref_notifications_summary">תודיע כאשר הודעה חדשה מגיעה</string>
diff --git a/src/main/res/values-ja/strings.xml b/src/main/res/values-ja/strings.xml
index bd65c7c7..aae2e48d 100644
--- a/src/main/res/values-ja/strings.xml
+++ b/src/main/res/values-ja/strings.xml
@@ -78,7 +78,6 @@
<string name="choose_presence">連絡する参加を選択</string>
<string name="send_plain_text_message">プレーンテキストを送信</string>
<string name="send_otr_message">OTR 暗号化メッセージを送信</string>
- <string name="send_omemo_message">OMEMO 暗号化メッセージを送信</string>
<string name="send_pgp_message">OpenPGP 暗号化メッセージを送信</string>
<string name="your_nick_has_been_changed">あなたのニックネームが変更されました</string>
<string name="send_unencrypted">暗号化されていない送信</string>
diff --git a/src/main/res/values-zh-rTW/strings.xml b/src/main/res/values-zh-rTW/strings.xml
index 8a4d3539..a0f21acc 100644
--- a/src/main/res/values-zh-rTW/strings.xml
+++ b/src/main/res/values-zh-rTW/strings.xml
@@ -81,7 +81,7 @@
<string name="pref_xmpp_resource">XMPP 資源</string>
<string name="pref_xmpp_resource_summary">客戶端標示名稱</string>
<string name="pref_accept_files">接收文件</string>
- <string name="pref_accept_files_summary">自動接收小於 … 的文件</string>
+ <string name="pref_accept_files_size_summary">自動接收小於 … 的文件</string>
<string name="pref_notification_settings">通知設定</string>
<string name="pref_notifications">通知</string>
<string name="pref_notifications_summary">收到新訊息時通知</string>
diff --git a/src/main/res/values/arrays.xml b/src/main/res/values/arrays.xml
index 5be352d1..c555d4ba 100644
--- a/src/main/res/values/arrays.xml
+++ b/src/main/res/values/arrays.xml
@@ -57,4 +57,17 @@
<item>voice</item>
<item>location</item>
</string-array>
+
+ <string-array name="confirm_strings">
+ <item>@string/pref_confirm_messages_none</item>
+ <item>@string/pref_confirm_messages_received</item>
+ <item>@string/pref_confirm_messages_read_and_received</item>
+ </string-array>
+
+ <string-array name="confirm_values">
+ <item>0</item>
+ <item>1</item>
+ <item>2</item>
+ </string-array>
+
</resources>
diff --git a/src/main/res/values/attrs.xml b/src/main/res/values/attrs.xml
index d471e54a..0d6d19b1 100644
--- a/src/main/res/values/attrs.xml
+++ b/src/main/res/values/attrs.xml
@@ -25,5 +25,8 @@
<attr name="icon_secure" format="reference"/>
<attr name="icon_settings" format="reference"/>
<attr name="icon_import_export" format="reference"/>
-
+ <declare-styleable name="AmbilWarnaPreference">
+ <attr name="supportsAlpha"
+ format="boolean"/>
+ </declare-styleable>
</resources> \ No newline at end of file
diff --git a/src/main/res/values/dimens.xml b/src/main/res/values/dimens.xml
index 95e80055..3ea590fa 100644
--- a/src/main/res/values/dimens.xml
+++ b/src/main/res/values/dimens.xml
@@ -5,4 +5,8 @@
<dimen name="infocard_padding">16dp</dimen>
<dimen name="conversations_overview_width">288dp</dimen>
<dimen name="image_button_padding">8dp</dimen>
+ <dimen name="ambilwarna_hsvHeight">240dp</dimen>
+ <dimen name="ambilwarna_hsvWidth">240dp</dimen>
+ <dimen name="ambilwarna_hueWidth">30dp</dimen>
+ <dimen name="ambilwarna_spacer">8dp</dimen>
</resources>
diff --git a/src/main/res/values/strings.xml b/src/main/res/values/strings.xml
index 2a03847d..9b5ccc80 100644
--- a/src/main/res/values/strings.xml
+++ b/src/main/res/values/strings.xml
@@ -100,7 +100,13 @@
<string name="pref_xmpp_resource">XMPP resource</string>
<string name="pref_xmpp_resource_summary">The name this client identifies itself with</string>
<string name="pref_accept_files">Accept files</string>
- <string name="pref_accept_files_summary">Automatically accept files smaller than…</string>
+ <string name="pref_accept_files_summary">Settings for accepting and automatically downloading files</string>
+ <string name="pref_accept_files_size">Size</string>
+ <string name="pref_accept_files_size_summary">Automatically accept files smaller than…</string>
+ <string name="pref_accept_files_download">WLAN only</string>
+ <string name="pref_accept_files_download_summary">Download and accept files automatically only when using WLAN</string>
+ <string name="pref_accept_files_download_link">Image links</string>
+ <string name="pref_accept_files_download_link_summary">Automatically download image links</string>
<string name="pref_notification_settings">Notification Settings</string>
<string name="pref_notifications">Notifications</string>
<string name="pref_notifications_summary">Notify when a new message arrives</string>
@@ -116,8 +122,13 @@
<string name="pref_never_send_crash">Never send crash reports</string>
<string name="pref_never_send_crash_summary">By sending in stack traces you are helping the ongoing development of Conversations</string>
<string name="pref_confirm_messages">Confirm Messages</string>
- <string name="pref_confirm_messages_summary">Let your contact know when you have received and read a message</string>
+ <string name="pref_confirm_messages_summary">Let your contact know when you have received or read a message</string>
+ <string name="pref_confirm_messages_none">No confirmation</string>
+ <string name="pref_confirm_messages_received">Confirmation for received message</string>
+ <string name="pref_confirm_messages_read_and_received">Confirmation for received and read message</string>
<string name="pref_ui_options">UI Options</string>
+ <string name="pref_parse_emoticons">Parse Emoticons</string>
+ <string name="pref_parse_emoticons_summary">Replace emoticons with smilies.</string>
<string name="openpgp_error">OpenKeychain reported an error</string>
<string name="error_decrypting_file">I/O Error decrypting file</string>
<string name="accept">Accept</string>
@@ -419,6 +430,7 @@
<string name="current_password">Current password</string>
<string name="new_password">New password</string>
<string name="password_should_not_be_empty">Password should not be empty</string>
+ <string name="password_should_not_contain_only_spaces">Password should not contain only spaces</string>
<string name="enable_all_accounts">Enable all accounts</string>
<string name="disable_all_accounts">Disable all accounts</string>
<string name="perform_action_with">Perform action with</string>
@@ -510,4 +522,6 @@
<string name="download_failed_server_not_found">Download failed: Server not found</string>
<string name="download_failed_file_not_found">Download failed: File not found</string>
<string name="download_failed_could_not_connect">Download failed: Could not connect to host</string>
+ <string name="pref_led_notification_color">LED notification color</string>
+ <string name="pref_led_notification_color_summary">Change the color of the LED notification</string>
</resources>
diff --git a/src/main/res/xml/preferences.xml b/src/main/res/xml/preferences.xml
index 8ab35c09..c858b9e6 100644
--- a/src/main/res/xml/preferences.xml
+++ b/src/main/res/xml/preferences.xml
@@ -15,17 +15,38 @@
android:key="resource"
android:summary="@string/pref_xmpp_resource_summary"
android:title="@string/pref_xmpp_resource"/>
- <ListPreference
- android:defaultValue="524288"
- android:entries="@array/filesizes"
- android:entryValues="@array/filesizes_values"
- android:key="auto_accept_file_size"
+
+ <PreferenceScreen
android:summary="@string/pref_accept_files_summary"
- android:title="@string/pref_accept_files"/>
+ android:title="@string/pref_accept_files">
- <CheckBoxPreference
- android:defaultValue="true"
- android:key="confirm_messages"
+ <CheckBoxPreference
+ android:defaultValue="true"
+ android:key="auto_download_file_link"
+ android:summary="@string/pref_accept_files_download_link_summary"
+ android:title="@string/pref_accept_files_download_link" />
+
+ <ListPreference
+ android:defaultValue="524288"
+ android:entries="@array/filesizes"
+ android:entryValues="@array/filesizes_values"
+ android:key="auto_accept_file_size"
+ android:summary="@string/pref_accept_files_size_summary"
+ android:title="@string/pref_accept_files_size" />
+
+ <CheckBoxPreference
+ android:defaultValue="true"
+ android:key="auto_download_file_wlan"
+ android:summary="@string/pref_accept_files_download_summary"
+ android:title="@string/pref_accept_files_download" />
+
+ </PreferenceScreen>
+
+ <ListPreference
+ android:defaultValue="2"
+ android:entries="@array/confirm_strings"
+ android:entryValues="@array/confirm_values"
+ android:key="confirm_messages_list"
android:summary="@string/pref_confirm_messages_summary"
android:title="@string/pref_confirm_messages"/>
@@ -34,11 +55,16 @@
android:key="chat_states"
android:summary="@string/pref_chat_states_summary"
android:title="@string/pref_chat_states"/>
-
+ <CheckBoxPreference
+ android:defaultValue="true"
+ android:key="parse_emoticons"
+ android:summary="@string/pref_parse_emoticons_summary"
+ android:title="@string/pref_parse_emoticons"/>
</PreferenceCategory>
- <PreferenceCategory
- android:key="notifications"
- android:title="@string/pref_notification_settings">
+ <PreferenceCategory android:title="@string/pref_notification_settings" >
+ <PreferenceScreen
+ android:summary="@string/pref_notification_settings"
+ android:title="@string/pref_notifications" >
<CheckBoxPreference
android:defaultValue="true"
android:key="show_notification"
@@ -80,14 +106,22 @@
android:key="notification_ringtone"
android:ringtoneType="notification"
android:summary="@string/pref_sound_summary"
- android:title="@string/pref_sound"/>
+ android:title="@string/pref_sound"/>
+
+ <yuku.ambilwarna.widget.AmbilWarnaPreference
+ android:defaultValue="0xffffffff"
+ android:key="led_notify_color"
+ android:title="@string/pref_led_notification_color"
+ app:supportsAlpha="true"
+ android:summary="@string/pref_led_notification_color_summary"/>
<CheckBoxPreference
android:defaultValue="false"
android:dependency="show_notification"
android:key="always_notify_in_conference"
android:summary="@string/pref_conference_notifications_summary"
- android:title="@string/pref_conference_notifications"/>
+ android:title="@string/pref_conference_notifications"/>
+ </PreferenceScreen>
</PreferenceCategory>
<PreferenceCategory android:title="@string/pref_ui_options">
<CheckBoxPreference