diff --git a/asset/xml/emoji.xml b/asset/xml/emoji.xml new file mode 100644 index 0000000..636f35a --- /dev/null +++ b/asset/xml/emoji.xml @@ -0,0 +1,1077 @@ + + + + ๐Ÿถ + ๐Ÿบ + ๐Ÿฑ + ๐Ÿญ + ๐Ÿน + ๐Ÿฐ + ๐Ÿธ + ๐Ÿฏ + ๐Ÿจ + ๐Ÿป + ๐Ÿท + ๐Ÿฝ + ๐Ÿฎ + ๐Ÿ— + ๐Ÿต + ๐Ÿ’ + ๐Ÿด + ๐Ÿ‘ + ๐Ÿ˜ + ๐Ÿผ + ๐Ÿง + ๐Ÿฆ + ๐Ÿค + ๐Ÿฅ + ๐Ÿฃ + ๐Ÿ” + ๐Ÿ + ๐Ÿข + ๐Ÿ› + ๐Ÿ + ๐Ÿœ + ๐Ÿž + ๐ŸŒ + ๐Ÿ™ + ๐Ÿš + ๐Ÿ  + ๐ŸŸ + ๐Ÿฌ + ๐Ÿณ + ๐Ÿ‹ + ๐Ÿ„ + ๐Ÿ + ๐Ÿ€ + ๐Ÿƒ + ๐Ÿ… + ๐Ÿ‡ + ๐Ÿ‰ + ๐ŸŽ + ๐Ÿ + ๐Ÿ“ + ๐Ÿ• + ๐Ÿ– + ๐Ÿ + ๐Ÿ‚ + ๐Ÿฒ + ๐Ÿก + ๐ŸŠ + ๐Ÿซ + ๐Ÿช + ๐Ÿ† + ๐Ÿˆ + ๐Ÿฉ + ๐Ÿพ + ๐Ÿ’ + ๐ŸŒธ + ๐ŸŒท + ๐Ÿ€ + ๐ŸŒน + ๐ŸŒป + ๐ŸŒบ + ๐Ÿ + ๐Ÿƒ + ๐Ÿ‚ + ๐ŸŒฟ + ๐ŸŒพ + ๐Ÿ„ + ๐ŸŒต + ๐ŸŒด + ๐ŸŒฒ + ๐ŸŒณ + ๐ŸŒฐ + ๐ŸŒฑ + ๐ŸŒผ + + + ๐Ÿ˜บ + ๐Ÿ˜ธ + ๐Ÿ˜ป + ๐Ÿ˜ฝ + ๐Ÿ˜ผ + ๐Ÿ™€ + ๐Ÿ˜ฟ + ๐Ÿ˜น + ๐Ÿ˜พ + + + ๐Ÿ˜„ + ๐Ÿ˜ƒ + ๐Ÿ˜€ + ๐Ÿ˜Š + โ˜บ + ๐Ÿ˜‰ + ๐Ÿ˜ + ๐Ÿ˜˜ + ๐Ÿ˜š + ๐Ÿ˜— + ๐Ÿ˜™ + ๐Ÿ˜œ + ๐Ÿ˜ + ๐Ÿ˜› + ๐Ÿ˜ณ + ๐Ÿ˜ + ๐Ÿ˜” + ๐Ÿ˜Œ + ๐Ÿ˜’ + ๐Ÿ˜ž + ๐Ÿ˜ฃ + ๐Ÿ˜ข + ๐Ÿ˜‚ + ๐Ÿ˜ญ + ๐Ÿ˜ช + ๐Ÿ˜ฅ + ๐Ÿ˜ฐ + ๐Ÿ˜… + ๐Ÿ˜“ + ๐Ÿ˜ฉ + ๐Ÿ˜ซ + ๐Ÿ˜จ + ๐Ÿ˜ฑ + ๐Ÿ˜  + ๐Ÿ˜ก + ๐Ÿ˜ค + ๐Ÿ˜– + ๐Ÿ˜† + ๐Ÿ˜‹ + ๐Ÿ˜ท + ๐Ÿ˜Ž + ๐Ÿ˜ด + ๐Ÿ˜ต + ๐Ÿ˜ฒ + ๐Ÿ˜Ÿ + ๐Ÿ˜ฆ + ๐Ÿ˜ง + ๐Ÿ˜ˆ + ๐Ÿ‘ฟ + ๐Ÿ˜ฎ + ๐Ÿ˜ฌ + ๐Ÿ˜ + ๐Ÿ˜• + ๐Ÿ˜ฏ + ๐Ÿ˜ถ + ๐Ÿ˜‡ + ๐Ÿ˜ + ๐Ÿ˜‘ + ๐Ÿ‘ฒ + ๐Ÿ‘ณ + ๐Ÿ‘ฎ + ๐Ÿ‘ท + ๐Ÿ’‚ + ๐Ÿ‘ถ + ๐Ÿ‘ฆ + ๐Ÿ‘ง + ๐Ÿ‘จ + ๐Ÿ‘ฉ + ๐Ÿ‘ด + ๐Ÿ‘ต + ๐Ÿ‘ฑ + ๐Ÿ‘ผ + ๐Ÿ‘ธ + ๐Ÿ‘น + ๐Ÿ‘บ + ๐Ÿ™ˆ + ๐Ÿ™‰ + ๐Ÿ™Š + ๐Ÿ’€ + ๐Ÿ‘ฝ + ๐Ÿ’ฉ + + + โ˜• + ๐Ÿต + ๐Ÿถ + ๐Ÿผ + ๐Ÿบ + ๐Ÿป + ๐Ÿธ + ๐Ÿน + ๐Ÿท + ๐Ÿด + ๐Ÿ• + ๐Ÿ” + ๐ŸŸ + ๐Ÿ— + ๐Ÿ– + ๐Ÿ + ๐Ÿ› + ๐Ÿค + ๐Ÿฑ + ๐Ÿฃ + ๐Ÿฅ + ๐Ÿ™ + ๐Ÿ˜ + ๐Ÿš + ๐Ÿœ + ๐Ÿฒ + ๐Ÿข + ๐Ÿก + ๐Ÿณ + ๐Ÿž + ๐Ÿฉ + ๐Ÿฎ + ๐Ÿฆ + ๐Ÿจ + ๐Ÿง + ๐ŸŽ‚ + ๐Ÿฐ + ๐Ÿช + ๐Ÿซ + ๐Ÿฌ + ๐Ÿญ + ๐Ÿฏ + ๐ŸŽ + ๐Ÿ + ๐ŸŠ + ๐Ÿ‹ + ๐Ÿ’ + ๐Ÿ‡ + ๐Ÿ‰ + ๐Ÿ“ + ๐Ÿ‘ + ๐Ÿˆ + ๐ŸŒ + ๐Ÿ + ๐Ÿ + ๐Ÿ  + ๐Ÿ† + ๐Ÿ… + ๐ŸŒฝ + + + ๐Ÿ”ฅ + โœจ + ๐ŸŒŸ + ๐Ÿ’ซ + ๐Ÿ’ฅ + ๐Ÿ’ข + ๐Ÿ’ฆ + ๐Ÿ’ง + ๐Ÿ’ค + ๐Ÿ’จ + ๐Ÿ‘‚ + ๐Ÿ‘€ + ๐Ÿ‘ƒ + ๐Ÿ‘… + ๐Ÿ‘„ + ๐Ÿ‘ + ๐Ÿ‘Ž + ๐Ÿ‘Œ + ๐Ÿ‘Š + โœŠ + โœŒ + ๐Ÿ‘‹ + โœ‹ + ๐Ÿ‘ + ๐Ÿ‘† + ๐Ÿ‘‡ + ๐Ÿ‘‰ + ๐Ÿ‘ˆ + ๐Ÿ™Œ + ๐Ÿ™ + โ˜ + ๐Ÿ‘ + ๐Ÿ’ช + ๐Ÿšถ + ๐Ÿƒ + ๐Ÿ’ƒ + ๐Ÿ‘ซ + ๐Ÿ‘ช + ๐Ÿ‘ฌ + ๐Ÿ‘ญ + ๐Ÿ’ + ๐Ÿ’‘ + ๐Ÿ‘ฏ + ๐Ÿ™† + ๐Ÿ™… + ๐Ÿ’ + ๐Ÿ™‹ + ๐Ÿ’† + ๐Ÿ’‡ + ๐Ÿ’… + ๐Ÿ‘ฐ + ๐Ÿ™Ž + ๐Ÿ™ + ๐Ÿ™‡ + + + ๐ŸŽจ + ๐ŸŽฌ + ๐ŸŽค + ๐ŸŽง + ๐ŸŽผ + ๐ŸŽต + ๐ŸŽถ + ๐ŸŽน + ๐ŸŽป + ๐ŸŽบ + ๐ŸŽท + ๐ŸŽธ + ๐Ÿ‘พ + ๐ŸŽฎ + ๐Ÿƒ + ๐ŸŽด + ๐Ÿ€„ + ๐ŸŽฒ + ๐ŸŽฏ + ๐Ÿˆ + ๐Ÿ€ + โšฝ + โšพ + ๐ŸŽพ + ๐ŸŽฑ + ๐Ÿ‰ + ๐ŸŽณ + โ›ณ + ๐Ÿšต + ๐Ÿšด + ๐Ÿ + ๐Ÿ‡ + ๐Ÿ† + ๐ŸŽฟ + ๐Ÿ‚ + ๐ŸŠ + ๐Ÿ„ + ๐ŸŽฃ + + + ๐ŸŽ + ๐Ÿ’ + ๐ŸŽŽ + ๐ŸŽ’ + ๐ŸŽ“ + ๐ŸŽ + ๐ŸŽ† + ๐ŸŽ‡ + ๐ŸŽ + ๐ŸŽ‘ + ๐ŸŽƒ + ๐Ÿ‘ป + ๐ŸŽ… + ๐ŸŽ„ + ๐ŸŽ + ๐ŸŽ‹ + ๐ŸŽ‰ + ๐ŸŽŠ + ๐ŸŽˆ + ๐ŸŽŒ + ๐Ÿ”ฎ + ๐ŸŽฅ + ๐Ÿ“ท + ๐Ÿ“น + ๐Ÿ“ผ + ๐Ÿ’ฟ + ๐Ÿ“€ + ๐Ÿ’ฝ + ๐Ÿ’พ + ๐Ÿ’ป + ๐Ÿ“ฑ + โ˜Ž + ๐Ÿ“ž + ๐Ÿ“Ÿ + ๐Ÿ“  + ๐Ÿ“ก + ๐Ÿ“บ + ๐Ÿ“ป + ๐Ÿ”Š + ๐Ÿ”‰ + ๐Ÿ”ˆ + ๐Ÿ”‡ + ๐Ÿ”” + ๐Ÿ”• + ๐Ÿ“ข + ๐Ÿ“ฃ + โณ + โŒ› + โฐ + โŒš + ๐Ÿ”“ + ๐Ÿ”’ + ๐Ÿ” + ๐Ÿ” + ๐Ÿ”‘ + ๐Ÿ”Ž + ๐Ÿ’ก + ๐Ÿ”ฆ + ๐Ÿ”† + ๐Ÿ”… + ๐Ÿ”Œ + ๐Ÿ”‹ + ๐Ÿ” + ๐Ÿ› + ๐Ÿ›€ + ๐Ÿšฟ + ๐Ÿšฝ + ๐Ÿ”ง + ๐Ÿ”ฉ + ๐Ÿ”จ + ๐Ÿšช + ๐Ÿšฌ + ๐Ÿ’ฃ + ๐Ÿ”ซ + ๐Ÿ”ช + ๐Ÿ’Š + ๐Ÿ’‰ + ๐Ÿ’ฐ + ๐Ÿ’ด + ๐Ÿ’ต + ๐Ÿ’ท + ๐Ÿ’ถ + ๐Ÿ’ณ + ๐Ÿ’ธ + ๐Ÿ“ฒ + ๐Ÿ“ง + ๐Ÿ“ฅ + ๐Ÿ“ค + โœ‰ + ๐Ÿ“ฉ + ๐Ÿ“จ + ๐Ÿ“ฏ + ๐Ÿ“ซ + ๐Ÿ“ช + ๐Ÿ“ฌ + ๐Ÿ“ญ + ๐Ÿ“ฎ + ๐Ÿ“ฆ + ๐Ÿ“ + ๐Ÿ“„ + ๐Ÿ“ƒ + ๐Ÿ“‘ + ๐Ÿ“Š + ๐Ÿ“ˆ + ๐Ÿ“‰ + ๐Ÿ“œ + ๐Ÿ“‹ + ๐Ÿ“… + ๐Ÿ“† + ๐Ÿ“‡ + ๐Ÿ“ + ๐Ÿ“‚ + โœ‚ + ๐Ÿ“Œ + ๐Ÿ“Ž + โœ’ + โœ + ๐Ÿ“ + ๐Ÿ“ + ๐Ÿ“• + ๐Ÿ“— + ๐Ÿ“˜ + ๐Ÿ“™ + ๐Ÿ““ + ๐Ÿ“” + ๐Ÿ“’ + ๐Ÿ“š + ๐Ÿ“– + ๐Ÿ”– + ๐Ÿ“› + ๐Ÿ”ฌ + ๐Ÿ”ญ + ๐Ÿ“ฐ + + + ๐Ÿ  + ๐Ÿก + ๐Ÿซ + ๐Ÿข + ๐Ÿฃ + ๐Ÿฅ + ๐Ÿฆ + ๐Ÿช + ๐Ÿฉ + ๐Ÿจ + ๐Ÿ’’ + โ›ช + ๐Ÿฌ + ๐Ÿค + ๐ŸŒ‡ + ๐ŸŒ† + ๐Ÿฏ + ๐Ÿฐ + โ›บ + ๐Ÿญ + ๐Ÿ—ผ + ๐Ÿ—พ + ๐Ÿ—ป + ๐ŸŒ„ + ๐ŸŒ… + ๐ŸŒƒ + ๐Ÿ—ฝ + ๐ŸŒ‰ + ๐ŸŽ  + ๐ŸŽก + โ›ฒ + ๐ŸŽข + ๐Ÿšข + + + ๐ŸŒก + ๐ŸŒข + ๐ŸŒฃ + ๐ŸŒค + ๐ŸŒฅ + ๐ŸŒฆ + ๐ŸŒง + ๐ŸŒจ + ๐ŸŒฉ + ๐ŸŒช + ๐ŸŒซ + ๐ŸŒฌ + ๐ŸŒถ + ๐Ÿฝ + ๐ŸŽ” + ๐ŸŽ• + ๐ŸŽ– + ๐ŸŽ— + ๐ŸŽ˜ + ๐ŸŽ™ + ๐ŸŽš + ๐ŸŽ› + ๐ŸŽœ + ๐ŸŽ + ๐ŸŽž + ๐ŸŽŸ + ๐Ÿ… + ๐Ÿ‹ + ๐ŸŒ + ๐Ÿ + ๐ŸŽ + ๐Ÿ” + ๐Ÿ• + ๐Ÿ– + ๐Ÿ— + ๐Ÿ˜ + ๐Ÿ™ + ๐Ÿš + ๐Ÿ› + ๐Ÿœ + ๐Ÿ + ๐Ÿž + ๐ŸŸ + ๐Ÿฑ + ๐Ÿฒ + ๐Ÿณ + ๐Ÿด + ๐Ÿต + ๐Ÿถ + ๐Ÿท + ๐Ÿฟ + ๐Ÿ‘ + ๐Ÿ“ธ + ๐Ÿ“ฝ + ๐Ÿ“พ + ๐Ÿ”พ + ๐Ÿ”ฟ + ๐Ÿ•„ + ๐Ÿ•… + ๐Ÿ•† + ๐Ÿ•‡ + ๐Ÿ•ˆ + ๐Ÿ•‰ + ๐Ÿ•Š + ๐Ÿ•จ + ๐Ÿ•ฉ + ๐Ÿ•ช + ๐Ÿ•ซ + ๐Ÿ•ฌ + ๐Ÿ•ญ + ๐Ÿ•ฎ + ๐Ÿ•ฏ + ๐Ÿ•ฐ + ๐Ÿ•ฑ + ๐Ÿ•ฒ + ๐Ÿ•ณ + ๐Ÿ•ด + ๐Ÿ•ต + ๐Ÿ•ถ + ๐Ÿ•ท + ๐Ÿ•ธ + ๐Ÿ•น + ๐Ÿ•ป + ๐Ÿ•ผ + ๐Ÿ•ฝ + ๐Ÿ•พ + ๐Ÿ•ฟ + ๐Ÿ–€ + ๐Ÿ– + ๐Ÿ–‚ + ๐Ÿ–ƒ + ๐Ÿ–„ + ๐Ÿ–… + ๐Ÿ–† + ๐Ÿ–‡ + ๐Ÿ–ˆ + ๐Ÿ–‰ + ๐Ÿ–Š + ๐Ÿ–‹ + ๐Ÿ–Œ + ๐Ÿ– + ๐Ÿ–Ž + ๐Ÿ– + ๐Ÿ– + ๐Ÿ–‘ + ๐Ÿ–’ + ๐Ÿ–“ + ๐Ÿ–” + ๐Ÿ–• + ๐Ÿ–– + ๐Ÿ–— + ๐Ÿ–˜ + ๐Ÿ–™ + ๐Ÿ–š + ๐Ÿ–› + ๐Ÿ–œ + ๐Ÿ– + ๐Ÿ–ž + ๐Ÿ–Ÿ + ๐Ÿ–  + ๐Ÿ–ก + ๐Ÿ–ข + ๐Ÿ–ฃ + ๐Ÿ–ฅ + ๐Ÿ–ฆ + ๐Ÿ–ง + ๐Ÿ–จ + ๐Ÿ–ฉ + ๐Ÿ–ช + ๐Ÿ–ซ + ๐Ÿ–ฌ + ๐Ÿ–ญ + ๐Ÿ–ฎ + ๐Ÿ–ฏ + ๐Ÿ–ฐ + ๐Ÿ–ฑ + ๐Ÿ–ฒ + ๐Ÿ–ณ + ๐Ÿ–ด + ๐Ÿ–ต + ๐Ÿ–ถ + ๐Ÿ–ท + ๐Ÿ–ธ + ๐Ÿ–น + ๐Ÿ–บ + ๐Ÿ–ป + ๐Ÿ–ผ + ๐Ÿ–ฝ + ๐Ÿ–พ + ๐Ÿ–ฟ + ๐Ÿ—€ + ๐Ÿ—€ + ๐Ÿ—‚ + ๐Ÿ—ƒ + ๐Ÿ—„ + ๐Ÿ—… + ๐Ÿ—† + ๐Ÿ—‡ + ๐Ÿ—ˆ + ๐Ÿ—‰ + ๐Ÿ—Š + ๐Ÿ—‹ + ๐Ÿ—Œ + ๐Ÿ— + ๐Ÿ—Ž + ๐Ÿ— + ๐Ÿ— + ๐Ÿ—‘ + ๐Ÿ—’ + ๐Ÿ—“ + ๐Ÿ—” + ๐Ÿ—• + ๐Ÿ—– + ๐Ÿ—— + ๐Ÿ—˜ + ๐Ÿ—™ + ๐Ÿ—š + ๐Ÿ—› + ๐Ÿ—œ + ๐Ÿ— + ๐Ÿ—ž + ๐Ÿ—Ÿ + ๐Ÿ—  + ๐Ÿ—ก + ๐Ÿ—ข + ๐Ÿ—ฃ + ๐Ÿ—ค + ๐Ÿ—ฅ + ๐Ÿ—ฆ + ๐Ÿ—ง + ๐Ÿ—จ + ๐Ÿ—ฉ + ๐Ÿ—ช + ๐Ÿ—ซ + ๐Ÿ—ฌ + ๐Ÿ—ญ + ๐Ÿ—ฏ + ๐Ÿ—ฏ + ๐Ÿ—ฐ + ๐Ÿ—ฑ + ๐Ÿ—ฒ + ๐Ÿ—ณ + ๐Ÿ—ด + ๐Ÿ—ต + ๐Ÿ—ถ + ๐Ÿ—ท + ๐Ÿ—ธ + ๐Ÿ—น + ๐Ÿ—บ + ๐Ÿ™ + ๐Ÿ™‚ + ๐Ÿ›† + ๐Ÿ›‡ + ๐Ÿ›ˆ + ๐Ÿ›‰ + ๐Ÿ›Š + ๐Ÿ›‹ + ๐Ÿ›Œ + ๐Ÿ› + ๐Ÿ›Ž + ๐Ÿ› + ๐Ÿ›  + ๐Ÿ›ก + ๐Ÿ›ข + ๐Ÿ›ฃ + ๐Ÿ›ค + ๐Ÿ›ฅ + ๐Ÿ›ฆ + ๐Ÿ›ง + ๐Ÿ›จ + ๐Ÿ›ฉ + ๐Ÿ›ช + ๐Ÿ›ซ + ๐Ÿ›ฌ + ๐Ÿ›ฐ + ๐Ÿ›ฑ + ๐Ÿ›ฒ + ๐Ÿ›ณ + + + 1โƒฃ + 2โƒฃ + 3โƒฃ + 4โƒฃ + 5โƒฃ + 6โƒฃ + 7โƒฃ + 8โƒฃ + 9โƒฃ + 0โƒฃ + ๐Ÿ”Ÿ + ๐Ÿ”ข + #โƒฃ + ๐Ÿ”ฃ + โฌ† + โฌ‡ + โฌ… + โžก + ๐Ÿ”  + ๐Ÿ”ก + ๐Ÿ”ค + โ†— + โ†– + โ†˜ + โ†™ + โ†” + โ†• + ๐Ÿ”„ + โ—€ + โ–ถ + ๐Ÿ”ผ + ๐Ÿ”ฝ + โ†ฉ + โ†ช + โ„น + โช + โฉ + โซ + โฌ + โคต + โคด + ๐Ÿ†— + ๐Ÿ”€ + ๐Ÿ” + ๐Ÿ”‚ + ๐Ÿ†• + ๐Ÿ†™ + ๐Ÿ†’ + ๐Ÿ†“ + ๐Ÿ†– + ๐Ÿ“ถ + ๐ŸŽฆ + ๐Ÿˆ + ๐Ÿˆฏ + ๐Ÿˆณ + ๐Ÿˆต + ๐Ÿˆด + ๐Ÿˆฒ + ๐Ÿ‰ + ๐Ÿˆน + ๐Ÿˆบ + ๐Ÿˆถ + ๐Ÿˆš + ๐Ÿšป + ๐Ÿšน + ๐Ÿšบ + ๐Ÿšผ + ๐Ÿšพ + ๐Ÿšฐ + ๐Ÿšฎ + ๐Ÿ…ฟ + โ™ฟ + ๐Ÿšญ + ๐Ÿˆท + ๐Ÿˆธ + ๐Ÿˆ‚ + โ“‚ + ๐Ÿ›‚ + ๐Ÿ›„ + ๐Ÿ›… + ๐Ÿ›ƒ + ๐Ÿ‰‘ + ใŠ™ + ใŠ— + ๐Ÿ†‘ + ๐Ÿ†˜ + ๐Ÿ†” + ๐Ÿšซ + ๐Ÿ”ž + ๐Ÿ“ต + ๐Ÿšฏ + ๐Ÿšฑ + ๐Ÿšณ + ๐Ÿšท + ๐Ÿšธ + โ›” + โœณ + โ‡ + โŽ + โœ… + โœด + ๐Ÿ’Ÿ + ๐Ÿ†š + ๐Ÿ“ณ + ๐Ÿ“ด + ๐Ÿ…ฐ + ๐Ÿ…ฑ + ๐Ÿ†Ž + ๐Ÿ…พ + ๐Ÿ’  + โžฟ + โ™ป + โ™ˆ + โ™‰ + โ™Š + โ™‹ + โ™Œ + โ™ + โ™Ž + โ™ + โ™ + โ™‘ + โ™’ + โ™“ + โ›Ž๐Ÿ”ฏ + ๐Ÿง + ๐Ÿ’น + ๐Ÿ’ฒ + ๐Ÿ’ฑ + ยฉ + ยฎ + โ„ข + โŒ + โ€ผ + โ‰ + โ— + โ“ + โ• + โ” + โญ• + ๐Ÿ” + ๐Ÿ”š + ๐Ÿ”™ + ๐Ÿ”› + ๐Ÿ”œ + ๐Ÿ”ƒ + ๐Ÿ•› + ๐Ÿ•ง + ๐Ÿ• + ๐Ÿ•œ + ๐Ÿ•‘ + ๐Ÿ• + ๐Ÿ•’ + ๐Ÿ•ž + ๐Ÿ•“ + ๐Ÿ•Ÿ + ๐Ÿ•” + ๐Ÿ•  + ๐Ÿ•• + ๐Ÿ•– + ๐Ÿ•— + ๐Ÿ•˜ + ๐Ÿ•™ + ๐Ÿ•š + ๐Ÿ•ก + ๐Ÿ•ข + ๐Ÿ•ฃ + ๐Ÿ•ค + ๐Ÿ•ฅ + ๐Ÿ•ฆ + โœ– + โž• + โž– + โž— + โ™  + โ™ฅ + โ™ฃ + โ™ฆ + ๐Ÿ’ฎ + ๐Ÿ’ฏ + โœ” + โ˜‘ + ๐Ÿ”˜ + ๐Ÿ”— + โžฐ + ใ€ฐ + ใ€ฝ + ๐Ÿ”ฑ + โ—ผ + โ—ป + โ—พ + โ—ฝ + โ–ช + โ–ซ + ๐Ÿ”บ + ๐Ÿ”ฒ + ๐Ÿ”ณ + โšซ + โšช + ๐Ÿ”ด + ๐Ÿ”ต + ๐Ÿ”ป + โฌœ + โฌ› + ๐Ÿ”ถ + ๐Ÿ”ท + ๐Ÿ”ธ + ๐Ÿ”น + + + โ›ต + ๐Ÿšค + ๐Ÿšฃ + โš“ + ๐Ÿš€ + โœˆ + ๐Ÿ’บ + ๐Ÿš + ๐Ÿš‚ + ๐ŸšŠ + ๐Ÿš‰ + ๐Ÿšž + ๐Ÿš† + ๐Ÿš„ + ๐Ÿš… + ๐Ÿšˆ + ๐Ÿš‡ + ๐Ÿš + ๐Ÿš‹ + ๐Ÿšƒ + ๐ŸšŽ + ๐ŸšŒ + ๐Ÿš + ๐Ÿš™ + ๐Ÿš˜ + ๐Ÿš— + ๐Ÿš• + ๐Ÿš– + ๐Ÿš› + ๐Ÿšš + ๐Ÿšจ + ๐Ÿš“ + ๐Ÿš” + ๐Ÿš’ + ๐Ÿš‘ + ๐Ÿš + ๐Ÿšฒ + ๐Ÿšก + ๐ŸšŸ + ๐Ÿš  + ๐Ÿšœ + ๐Ÿ’ˆ + ๐Ÿš + ๐ŸŽซ + ๐Ÿšฆ + ๐Ÿšฅ + โš  + ๐Ÿšง + ๐Ÿ”ฐ + โ›ฝ + ๐Ÿฎ + ๐ŸŽฐ + โ™จ + ๐Ÿ—ฟ + ๐ŸŽช + ๐ŸŽญ + ๐Ÿ“ + ๐Ÿšฉ + + + + + Faces + ๐Ÿ˜œ + faces + + + Faces of Cats + ๐Ÿ˜ธ + cat_faces + + + Animals and Plants + ๐Ÿง + animals_and_plants + + + Food and Drinks + ๐Ÿป + food_and_drink + + + Places + ๐Ÿฏ + places + + + Music and Sport + ๐ŸŽง + music_and_sport + + + Objects + ๐Ÿ’ฝ + objects + + + Miscellaneous + ๐Ÿ‘Œ + misc + + + Symbols + ๐Ÿ”ž + symbols + + + Transport + ๐ŸšŽ + transport + + + Unicode 7.0 + ๐Ÿ•ด + seven + + + diff --git a/qml/component/EmojiPicker.qml b/qml/component/EmojiPicker.qml new file mode 100644 index 0000000..3cf17d2 --- /dev/null +++ b/qml/component/EmojiPicker.qml @@ -0,0 +1,93 @@ +import QtQuick 2.9 +import QtQuick.Controls 2.2 +import QtQuick.Layouts 1.3 +import QtQuick.XmlListModel 2.0 + +Popup { + property var textArea + property string emojiCategory: "faces" + + ColumnLayout { + anchors.fill: parent + + GridView { + Layout.fillWidth: true + Layout.fillHeight: true + + cellWidth: 36 + cellHeight: 36 + + boundsBehavior: Flickable.DragOverBounds + + clip: true + + model: XmlListModel { + source: "qrc:/asset/xml/emoji.xml" + query: "/root/emoji_by_category/" +emojiCategory + "/element" + + XmlRole { name: "emoji"; query: "string()" } + } + + delegate: Label { + width: 36 + height: 36 + + horizontalAlignment: Text.AlignHCenter + verticalAlignment: Text.AlignVCenter + + font.pointSize: 20 + text: emoji + + MouseArea { + anchors.fill: parent + onClicked: textArea.insert(textArea.cursorPosition, emoji) + } + } + + ScrollBar.vertical: ScrollBar {} + } + + Rectangle { + Layout.fillWidth: true + Layout.preferredHeight: 2 + color: "white" + } + + ListView { + Layout.fillWidth: true + Layout.preferredHeight: 48 + + orientation: ListView.Horizontal + + boundsBehavior: Flickable.DragOverBounds + + clip: true + + model: XmlListModel { + source: "qrc:/asset/xml/emoji.xml" + query: "/root/emoji_categories/element" + + XmlRole { name: "emoji_unified"; query: "emoji_unified/string()" } + XmlRole { name: "name"; query: "name/string()" } + } + + delegate: Label { + width: 48 + height: 48 + + horizontalAlignment: Text.AlignHCenter + verticalAlignment: Text.AlignVCenter + + font.pointSize: 20 + text: emoji_unified + + MouseArea { + anchors.fill: parent + onClicked: emojiCategory = name + } + } + + ScrollBar.horizontal: ScrollBar {} + } + } +} diff --git a/qml/form/RoomForm.qml b/qml/form/RoomForm.qml index c5588d7..a8ce137 100644 --- a/qml/form/RoomForm.qml +++ b/qml/form/RoomForm.qml @@ -385,12 +385,30 @@ Item { } ItemDelegate { + id: emojiButton + Layout.preferredWidth: height Layout.fillHeight: true contentItem: MaterialIcon { icon: "\ue24e" } background: Rectangle { color: Material.theme == Material.Light ? "#eaeaea" : "#242424" } + + onClicked: emojiPicker.visible ? emojiPicker.close() : emojiPicker.open() + + EmojiPicker { + id: emojiPicker + + parent: ApplicationWindow.overlay + + x: window.width - 370 + y: window.height - 440 + + width: 360 + height: 360 + + textArea: inputField + } } } } diff --git a/res.qrc b/res.qrc index 93f5142..b8e9e3b 100644 --- a/res.qrc +++ b/res.qrc @@ -30,5 +30,7 @@ qml/component/TextDelegate.qml qml/component/MessageContextMenu.qml qml/form/SettingGeneralForm.qml + qml/component/EmojiPicker.qml + asset/xml/emoji.xml