- Multiplatform: Add iOS target. #834 (vanniktech)
- Technical: Import JvmField annotation for Multiplatform. #1107 (vanniktech)
- Technical: Update Android Gradle Plugin to 8.5.0 #1101 (vanniktech)
- Technical: Update Kotlin to 2.0.0 #1095 (renovate[bot])
- Technical: Use equals without referencing javaClass. #1106 (vanniktech)
- Use generator to create
unicode
String #1109 (cketti)
Huge thanks to cketti for helping making this library available on iOS!
- API: Remove no longer needed isDuplicate property from Emoji interface. #1090 (vanniktech)
- API: VariantEmoji#getVariants method to modify which variants shall be displayed. Also by default filters out the Variant Selector 16 variants. #1092 (vanniktech)
- Behavior change: Stop filtering out emojis which have been obsoleted. This way we also have the neutral version of many emojis such like fairy. Assimilates behavior to Telegram/Whatsapp. #1089 (vanniktech)
- Behavior change: Stop filtering out neutral emojis that contain male & female variants such as juggling, handball, water_polo, person_doing_cartwheel, wrestlers, shrug & facepalm. #1088 (vanniktech)
- API: New emoji-androidx-emoji2 module which uses androidx.emoji2:emoji2 #1086 (vanniktech)
- Bug fix: Fix EmojiUtils.isOnlyEmojis not detecting emojis with variant selectors. #1087 (vanniktech)
- Technical: Update Emoji source to 15.1.2 to include new emojis. #1085 (vanniktech)
- Behavior change: SearchEmojiManager sorts by found index and then by shortcode. #1041 (vanniktech)
- Breaking change: Emoji is no longer Parcelable. #1043 (vanniktech)
- Bug fix: Correctly use stable ids in EmojiAdapter to prevent showing the same Emoji multiple times. #1040 (vanniktech)
- Technical: Kotlin 1.9.21 & Target Android 34. #1044 (vanniktech)
- Support Emoji Version 15.0 #991 (vanniktech)
- Gradle: Set Jvm Toolchain to 11. #990 (vanniktech)
- Android: Target 33. #888 (vanniktech)
- Breaking: EmojiTheming constructor requires all colors to be set. New EmojiTheming.from(Context) to retrieve colors from your Activity/Fragment. #904 (vanniktech)
- Generate smaller Emoji Chunks classes to avoid MethodTooLargeException #884 (bmarty)
- Technical: Use Android Source Set Layout Version 2. #962 (vanniktech)
- Theming: Fix Cursor color with Android Material 1.8.0 and later. #954 (vanniktech)
- Multiplatform: Fix Android publishing. #837 (vanniktech)
There was a problem publishing Android artifacts with 0.14.0, please update directly to 0.15.0
- Multiplatform: JVM example. #836 (vanniktech)
- Nuke PMD configuration. #835 (vanniktech)
- Action: First do jvmTest, ktlint & testDebug & then build. #833 (vanniktech)
- Multiplatform: Move emoji-ios tests into commonTest. #832 (vanniktech)
- Android: Generate list with sheets and stop using Resource reflection. #831 (vanniktech)
- Breaking: Rename EmojiDrawableProvider to EmojiAndroidProvider. #830 (vanniktech)
- Multiplatform: Generate EmojiProviders into jvmMain. #829 (vanniktech)
- Multiplatform: EmojiCategory implementations into commonMain. #828 (vanniktech)
- Breaking: Use EmojiDrawableProvider#getIcon(EmojiCategory) instead of EmojiCategory#icon for proper Multiplatform support. #827 (vanniktech)
- Multiplatform: Move most of the tests into commonTest. #826 (vanniktech)
- Multiplatform: Move SearchEmojiManager into commonMain. #825 (vanniktech)
- Multiplatform: Move CharSequence extension methods into commonMain. #824 (vanniktech)
- Breaking: Use EmojiCategory#categoryNames Map<String, String> instead of Android Resource for proper Multiplatform support. #823 (vanniktech)
- Multiplatform: Move EmojiManager into commonMain. #822 (vanniktech)
- Breaking: Extract EmojiManager#replaceWithImages as an extension function. #821 (vanniktech)
- Move EmojiDrawableProvider#release() into EmojiProvider. #820 (vanniktech)
- Multiplatform: Move EmojiCategory into commonMain. #819 (vanniktech)
- Multiplatform: Add JVM target. #818 (vanniktech)
- Multiplatform: Move EmojiProvider into commonMain. #817 (vanniktech)
- Breaking: Rename EmojiProvider#destroy() to EmojiProvider#release(). #816 (vanniktech)
- Multiplatform: Move Chunks of generated Categories into commonMain. #815 (vanniktech)
- Multiplatform: Move NoSearchEmoji into commonMain. #814 (vanniktech)
- Multiplatform: Move SearchEmoji into commonMain. #813 (vanniktech)
- Multiplatform: Move EmptyEmojiTrait into commonMain. #812 (vanniktech)
- Multiplatform: Move EmojiInformation into commonMain. #811 (vanniktech)
- Multiplatform: Move NoRecentEmoji into commonMain. #810 (vanniktech)
- Multiplatform: Move NoVariantEmoji into commonMain. #809 (vanniktech)
- Multiplatform: Move EmojiTraitable into commonMain. #808 (vanniktech)
- Multiplatform: Move RecentEmoji into commonMain. #807 (vanniktech)
- Multiplatform: Move SearchEmojiResult into commonMain. #806 (vanniktech)
- Multiplatform: Move EmojiTrait into commonMain. #805 (vanniktech)
- Multiplatform: Move VariantEmoji into commonMain. #804 (vanniktech)
- Multiplatform: EmojiAndroidCategory interface to start preparing EmojiCategory for commonMain. #803 (vanniktech)
- Multiplatform: Move EmojiRange into commonMain. #802 (vanniktech)
- Multiplatform: Move Emoji implementations into commonMain. #801 (vanniktech)
- Multiplatform: Move EmojiTrait into commonMain. #800 (vanniktech)
- Multiplatform: Move Emoji interface to commonMain. #799 (vanniktech)
- Multiplatform: EmojiDrawableProvider interface to start preparing Emoji for commonMain. #798 (vanniktech)
- Generator: Update directories & don't delete values directory. #797 (vanniktech)
- Multiplatform: Parcelize support for Android. #796 (vanniktech)
- Tests: Do full exception format logging. #795 (vanniktech)
- Bug fix: Recent Emojis were not removing last recent Emoji. #794 (vanniktech)
- Start with Kotlin Multiplatform (android only for now) #780 (vanniktech)
- Use EmojiTheming on internal ViewPager. #793 (vanniktech)
- Sample: Showcase theming + fix edge case when searching for an Emoji which hasn't been downloaded and shown as a glyph. #792 (vanniktech)
- Use EmojiTheming on internal RecyclerViews. #791 (vanniktech)
- Add Dependency Guard plugin. #790 (vanniktech)
- EmojiSearchDialog: Fix crash when typing in swim (each letter one by one with some delay) #787 (vanniktech)
- Improve compatibility with Java Code. #786 (vanniktech)
- Mark almost all resources as private. #783 (vanniktech)
- Translate category names into German. #782 (vanniktech)
- Stricter android resource prefixes. #781 (vanniktech)
- EmojiRange: Replace start & end with IntRange. #779 (vanniktech)
- EmojiPopup: Hide EmojiResultReceiver.Receiver usage. #778 (vanniktech)
- EmojiReplacer interface is now a fun interface. #777 (vanniktech)
- Ignore whitespace when using force single emoji & searching for an Emoji. #776 (vanniktech)
- EditText#input gets addWhitespace parameter. #775 (vanniktech)
- Use Emojis name when calling extension functions from Java. #774 (vanniktech)
- Remove deprecated methods. #773 (vanniktech)
- Add metalava. #680 (vanniktech)
This release has quite a few internal and external changes. Most noticeably, everything has been converted to Kotlin. Please also have a look at the sample app for the breaking changes as well as the new features.
Big thanks to @rubengees for updating to emojis 14.0 & @mario for reviews!
- Update dependencies. #772 (vanniktech)
- Use android.namespace. #771 (vanniktech)
- Use Gradle's Version Catalog. #770 (vanniktech)
- Disable PMD as we're Kotlin only now. #769 (vanniktech)
- Move Emoji interface to com.vanniktech.emoji #768 (vanniktech)
- EmojiCategory now wants List<Emoji> and also ditch CategoryUtils. #767 (vanniktech)
- Use Kotlin's sortWith instead of java.util.Comparator. #766 (vanniktech)
- EmojiManager#verifyInstalled is now internal. #765 (vanniktech)
- Move EmojiCategory interface to com.vanniktech.emoji #764 (vanniktech)
- Use Kotlin's Regex to search for Emojis. #763 (vanniktech)
- Inline EmojiEditable interface and provide extension functions. #762 (vanniktech)
- Generate toString()/equals()/hashcode() for Emoji implementations and remove data keyword. #761 (vanniktech)
- EmojiVariantPopup: Make scrollable. #760 (vanniktech)
- Reduce Java footprint by using Kotlin equivalents. #759 (vanniktech)
- Emoji classes are now parcelable. #757 (vanniktech)
- Let generated Emoji classes be data class. #756 (vanniktech)
- Emoji generate directly unicode instead of internal code points. #755 (vanniktech)
- Emoji shortcodes is now a List<String> #754 (vanniktech)
- Generate GoogleCompatEmoji class. #753 (vanniktech)
- Emoji variants is now a List<Emoji> #752 (vanniktech)
- Emoji is now an interface. #751 (vanniktech)
- Recent package which contains everything for recenting. #750 (vanniktech)
- Variant package which contains everything for varianting. #749 (vanniktech)
- Search package which contains everything for searching. #748 (vanniktech)
- Remove Emoji#length. #747 (vanniktech)
- Inline Emoji#hasVariants. #746 (vanniktech)
- Open MaterialEmojiLayoutFactory. #745 (vanniktech)
- Move internals into internal package. #744 (vanniktech)
- NoVariantEmoji in case you don't want variant selection. #743 (vanniktech)
- Emoji class is now abstract. #742 (vanniktech)
- Remove Emoji#resource. #741 (vanniktech)
- Emoji class only use one constructor. #740 (vanniktech)
- Emoji remove constructor with single code point. #739 (vanniktech)
- Use Point instead of CacheKey. #738 (vanniktech)
- Emoji search also append whitespace and auto close after clicking an entry. #737 (vanniktech)
- Update copyrights. #736 (vanniktech)
- emoji-material: Use defStyleAttr constructor with default value. #735 (vanniktech)
- Allow subclasses from EmojiDisplayable & EmojiEditable components. #734 (vanniktech)
- Use base plugin for publishing. #733 (vanniktech)
- Sample: Face lift and regenerate screenshots. #732 (vanniktech)
- Deprecate EmojiPopup.Builder in favor of EmojiPopup constructor. #731 (vanniktech)
- Hide more APIs in emoji module. #730 (vanniktech)
- Refactoring: Move SearchInPlaceTrait into traits package. #729 (vanniktech)
- Drop Java Support (indirectly by removing @JvmField annotations) #728 (vanniktech)
- Lint: Check everything. #727 (vanniktech)
- Let build fail if there are any warnings. #726 (vanniktech)
- emoji-google is now Kotlin only. #725 (vanniktech)
- emoji-facebook is now Kotlin only. #724 (vanniktech)
- emoji-ios is now Kotlin only. #723 (vanniktech)
- emoji-google-compat is now Kotlin only. #722 (vanniktech)
- emoji-twitter is now Kotlin only. #721 (vanniktech)
- Use Vector Drawable for recent icon. #720 (vanniktech)
- Avoid generating accessor method. #719 (vanniktech)
- Sample: Use Timber for logging. #718 (vanniktech)
- Remove deprecated systemWindowInsetBottom usage. #717 (vanniktech)
- Hide more APIs in each provider module. #716 (vanniktech)
- Enhance generated code. #715 (vanniktech)
- Remove deprecated stableInsetBottom usage. #714 (vanniktech)
- Make Utils internal and move EditText & TextView extensions into their own file. #713 (vanniktech)
- Convert GoogleCompatEmoji class to Kotlin. #712 (vanniktech)
- Generate CategoryChunk in Kotlin. #711 (vanniktech)
- Generate CategoryUtils class in Kotlin. #710 (vanniktech)
- Generate Emoji Class in Kotlin. #709 (vanniktech)
- Generate GoogleCompatEmojiProvider as Kotlin. #708 (vanniktech)
- Generate all EmojiProvider implementations in Kotlin. #707 (vanniktech)
- Public TextView#init. #706 (vanniktech)
- Generate all EmojiCategory implementations in Kotlin. #705 (vanniktech)
- Inline Utils#asListWithoutDuplicates. #704 (vanniktech)
- Improve updating documentation. #703 (vanniktech)
- EmojiEditable remove backspace & input function and instead provide public extension functions for all EditText. #702 (vanniktech)
- Convert GoogleCompatEmojiDrawable class to Kotlin. #701 (vanniktech)
- EmojiReplacer fallback can be optional. #700 (vanniktech)
- Public EditText.inputEmoji. #699 (vanniktech)
- Remove EmojiPopup#setPopupWindowHeight #698 (vanniktech)
- emoji is now Kotlin only. #697 (vanniktech)
- Unify lint.xml files. #696 (vanniktech)
- Public EditText.dispatchBackspace. #695 (vanniktech)
- Convert Utils class to Kotlin. #694 (vanniktech)
- Convert EmojiPopup class to Kotlin. #693 (vanniktech)
- Update emojis to version 14.0 #691 (rubengees)
- Convert EmojiManager class to Kotlin. #689 (vanniktech)
- Inline EmojiInput interface into EmojiEditable so that all UI components benefit from traits. #688 (vanniktech)
- EmojiEditable: Emoji Input is always non-null. #687 (vanniktech)
- EmojiEditable: Consistent isEditMode handling. #686 (vanniktech)
- Convert Emoji class to Kotlin. #685 (vanniktech)
- Refactoring: Move Kotlin functions to top level and deprecate old mechanisms. #684 (vanniktech)
- Convert EmojiUtils class to Kotlin. #683 (vanniktech)
- app is now Kotlin only. #682 (vanniktech)
- emoji-material is now Kotlin only. #681 (vanniktech)
- Convert EmojiMultiAutoCompleteTextView class to Kotlin. #679 (vanniktech)
- Convert EmojiEditText class to Kotlin. #678 (vanniktech)
- Convert EmojiMaterialCheckBox class to Kotlin. #677 (vanniktech)
- Convert EmojiMaterialRadioButton class to Kotlin. #676 (vanniktech)
- Convert EmojiTextInputEditText class to Kotlin. #675 (vanniktech)
- Convert EmojiMaterialButton class to Kotlin. #674 (vanniktech)
- Convert EmojiButton class to Kotlin. #673 (vanniktech)
- Convert EmojiAutoCompleteTextView class to Kotlin. #672 (vanniktech)
- Convert EmojiCheckbox class to Kotlin. #671 (vanniktech)
- Convert EmojiTextView class to Kotlin. #670 (vanniktech)
- Refactoring: Replace disableKeyboardInput with installDisableKeyboardInput and handle more cases. #669 (vanniktech)
- Convert EmojiView class to Kotlin. #668 (vanniktech)
- ScreenshotsTest: Use DemoModeRule for better screenshots. #667 (vanniktech)
- Convert ScreenshotsTest class to Kotlin. #666 (vanniktech)
- Refactoring: Use espresso utils, get rid of assertj & more. #665 (vanniktech)
- Convert MainActivity class to Kotlin. #664 (vanniktech)
- Convert MainDialog class to Kotlin. #663 (vanniktech)
- Convert EmojiPagerAdapter class to Kotlin. #662 (vanniktech)
- Bring back AsyncTask as Executors sometimes don't work. #661 (vanniktech)
- Convert EmojiVariantPopup class to Kotlin. #660 (vanniktech)
- Refactoring: Use fun interface to functional interfaces. #659 (vanniktech)
- Convert PageTransformer class to Kotlin. #658 (vanniktech)
- Convert CustomViewActivity class to Kotlin. #657 (vanniktech)
- Convert EmojiApplication class to Kotlin. #656 (vanniktech)
- Convert ChatAdapter class to Kotlin. #655 (vanniktech)
- Convert EmojiImageView class to Kotlin. #654 (vanniktech)
- Convert RecentEmojiManager class to Kotlin. #653 (vanniktech)
- Convert EmojiSpan class to Kotlin. #652 (vanniktech)
- Convert GridView classes to Kotlin. #651 (vanniktech)
- Convert MaterialEmojiLayoutFactory class to Kotlin. #650 (vanniktech)
- Refactoring: Extract inset variables. #649 (vanniktech)
- Refactoring: Move MaximalNumberOfEmojisInputFilter into inputfilters package. #648 (vanniktech)
- Remove deprecated AsyncTask with Executors. #647 (vanniktech)
- Convert MaximalNumberOfEmojisInputFilter class to Kotlin. #646 (vanniktech)
- Convert VariantEmojiManager class to Kotlin. #645 (vanniktech)
- Convert EmojiArrayAdapter class to Kotlin. #644 (vanniktech)
- Refactorign: Move OnlyEmojisInputFilter into inputfilters package. #643 (vanniktech)
- UI Components: Properly init them using their own StylableRes. #642 (vanniktech)
- Convert EmojiDisplayable interface to Kotlin. #641 (vanniktech)
- Convert EmojiEditable interface to Kotlin. #640 (vanniktech)
- Convert EmojiResultReceiver class to Kotlin. #639 (vanniktech)
- Convert all Tests to Kotlin. #638 (vanniktech)
- Refactoring: Start moving most of the Trait infrastructure into its own package. #637 (vanniktech)
- Rename forceSingleEmoji() to installForceSingleEmoji() and leverage EmojiTrait mechanism. #636 (vanniktech)
- Convert SingleEmojiTrait class to Kotlin. #635 (vanniktech)
- SearchInPlaceTrait: Allow searching for emojis. #634 (vanniktech)
- Search Dialog: Tint Edit Text cursor and handles correctly. #633 (vanniktech)
- Emoji Search: Highlight which part of the shortcode matches the query. #632 (vanniktech)
- Search RecyclerView limit height to 300dp. #631 (vanniktech)
- In place dialog when typing : in an EditText constructed from EmojiPopup. #630 (vanniktech)
- Sample: Showcase EmojiView on it's own without a keyboard. #629 (vanniktech)
- Internal: EmojiView rearrange a few things and move EmojiPopUp#dismiss behavior into EmojiView#tearDown. #628 (vanniktech)
- Internal: EmojiView prepare for public usage. #627 (vanniktech)
- Convert EmojiForceable interface to Kotlin. #626 (vanniktech)
- Convert EmojiProvider interface to Kotlin. #625 (vanniktech)
- Convert EmojiInformation class to Kotlin. #624 (vanniktech)
- Convert EmojiLayoutFactory class to Kotlin. #623 (vanniktech)
- Convert EmojiRange class to Kotlin. #622 (vanniktech)
- Remove View parameter from OnEmojiBackspaceClickListener interface. #621 (vanniktech)
- Remove EmojiImageView parameter from OnEmojiClickListener interface. #620 (vanniktech)
- Convert OnSoftKeyboardOpenListener interface to Kotlin. #619 (vanniktech)
- Convert OnSoftKeyboardCloseListener interface to Kotlin. #618 (vanniktech)
- Convert OnEmojiPopupShownListener interface to Kotlin. #617 (vanniktech)
- Convert OnEmojiPopupDismissListener interface to Kotlin. #616 (vanniktech)
- Convert OnEmojiLongClickListener interface to Kotlin. #615 (vanniktech)
- Convert OnEmojiClickListener interface to Kotlin. #614 (vanniktech)
- Convert OnEmojiBackspaceClickListener interface to Kotlin. #613 (vanniktech)
- Convert CacheKey class to Kotlin. #612 (vanniktech)
- Convert EmojiCategory interface to Kotlin. #611 (vanniktech)
- Convert RepeatListener class to Kotlin. #610 (vanniktech)
- NoSearchEmoji which allows you to hide the search feature. #609 (vanniktech)
- Convert OnlyEmojisInputFilter class to Kotlin. #608 (vanniktech)
- Convert NoRecentEmoji class to Kotlin. #607 (vanniktech)
- Convert EmojiReplacer interface to Kotlin. #606 (vanniktech)
- Convert VariantEmoji interface to Kotlin. #605 (vanniktech)
- Convert RecentEmoji interface to Kotlin. #604 (vanniktech)
- SearchEmoji interface which allows customizing the search algorithm. #603 (vanniktech)
- Internal: EmojiView hide backspace when EditText is null and no Backspace listener is set. #602 (vanniktech)
- Internal: EmojiView EditText is optional. #601 (vanniktech)
- Internal: EmojiView handles backspace on it's own. #600 (vanniktech)
- Delete JaCoCo as CodeCov has been turned off for quite a while. #599 (vanniktech)
- Sample: Move custom view sample from Menu to Button. #598 (vanniktech)
- Sample: Move dialog sample from Menu to Button to also showcase MaterialEmojiLayoutFactory. #597 (vanniktech)
- Sample: Move option to switch between Provider from Menu to Button. #596 (vanniktech)
- Sample: Nuke MainActivityAutoCompleteTextView & MainActivityMultiAutoCompleteTextView (unused and only differ in one XML line, the View for entering Text + Emojis) #595 (vanniktech)
- Internal: EmojiView gets setUp method. #594 (vanniktech)
- Internal: EmojiView handles clicking on it's own. #593 (vanniktech)
- Internal: EmojiView is taking each dependency instead of EmojiPopup.Builder. #592 (vanniktech)
- Sample: Fix Custom View and explain what it's actually doing. #591 (vanniktech)
- Make EmojiResultReceiver private. #590 (vanniktech)
- Internal: EmojiView is now holding the EmojiVariantPopup. #589 (vanniktech)
- Fix ANR when persisting Recent-& Variant emojis. #588 (vanniktech)
- Remove library config file. #587 (vanniktech)
- Update generator for new data source version #586 (rubengees)
- Sample: Follow system setting for dark mode & fix dialog. #585 (vanniktech)
- Unified EmojiTheming which has all of the colors for each Emoji UI component. #584 (vanniktech)
- Rename: color/emoji_divider to color/emoji_divider_color and attr/emojiDivider to attr/emojiDividerColor. #583 (vanniktech)
- Rename: color/emoji_background to color/emoji_background_color and attr/emojiBackground to attr/emojiBackgroundColor. #582 (vanniktech)
- Rename: color/emoji_icons to color/emoji_primary_color and attr/emojiIcons to attr/emojiPrimaryColor. #581 (vanniktech)
- Update ktlint to 0.45.2 & disable Detekt. #580 (vanniktech)
- Inline emoji-kotlin into emoji module and remove emoji-kotlin module. #579 (vanniktech)
- Add failing test for isOnlyEmojis() #578 (vanniktech)
- Stop using Gradle's subproject. #577 (vanniktech)
- Update LeakCanary to 2.9.1 #576 (vanniktech)
- Update Kotlin to 1.6.21 #575 (vanniktech)
- Editorconfig file. #574 (vanniktech)
- Add EmojiTextInputEditText. #573 (vanniktech)
- Emoji search icon next to categories, which allows to search emoji by name (english names only) #563 (vanniktech)
- Fix Memory Leak with setOnApplyWindowInsetsListener. #569 (vanniktech)
- Keep file to keep sheets which are accessed through reflection. #562 (vanniktech)
- Update dependencies. #561 (vanniktech)
- NoRecentEmoji implementation. Fixes #477 #510 (vanniktech)
- Fix Memory Leak with OnAttachStateChangeListener. #508 (vanniktech)
- Update gradle-maven-publish-plugin to 0.16.0 #504 (vanniktech)
- Switch to GitHub workflows. #503 (vanniktech)
- EmojiEditText cursor height is too small by wirting emojis followed by text fixes #492 #493 (denjoo)
- Only construct RecentEmojiManager if one hasn’t already been set #478 (lukesleeman)
- minSdk 21, targetSdk 29 & update all of the dependencies #465 (vanniktech)
- Fix hardcoded text not displaying Emojis correctly #462 (vanniktech)
- Add EmojiCheckbox. #460 (vanniktech)
- Add duplicate support for Emoji start with variant selector. #456 (vanniktech)
- Add license headers to JS/KT/Java files. #455 (vanniktech)
- Add 3-arg-view constructors. #454 (vanniktech)
- EmojiPopUp: RequestApplyInsets #452 (ghshenavar)
- Call EmojiPopup#start() when rootView is already laid out. #448 (vanniktech)
- Add shortcodes to emojis #446 (rubengees)
- Unify code across widgets. #443 (vanniktech)
- Add SingleEmojiTrait to force single (replaceable) on an EditText #442 (vanniktech)
- Fix render issue when isInEditMode() #435 (Namolem)
- Update generator for Unicode 12.1 #426 (rubengees)
- Allow to pass in selectedIconColor. #425 (vanniktech)
- Fix emoji keyboard in samples #411 (mario)
- Delay opening of the popup to correctly align with window insets. Fixes #400 #410 (mario)
- Add sample with custom view. #409 (vanniktech)
- Fix set popup window height method #402 (mario)
- Automatically call start and stop when attaching/detaching EmojiPopup #397 (rubengees)
- Add MaterialEmojiLayoutFactory. #396 (vanniktech)
- Add EmojiLayoutFactory. #395 (vanniktech)
- Add emoji-material module for material bindings. #394 (vanniktech)
- Fix emoji only filter #393 (mario)
- Fix custom keyboard height #392 (mario)
- Fix keyboard calculation for API v21+ by introducing start/stop into EmojiPopup #389 (mario)
- Support textAllCaps option. Fixes #361 #383 (mario)
- Don't use bundled AppCompat emojis. Instead download the font. #380 (vanniktech)
- Support use case where only Emoji Dialog should be shown. #378 (vanniktech)
- Ship OnlyEmojisInputFilter & MaximalNumberOfEmojisInputFilter. #377 (vanniktech)
- Update dependencies. #376 (vanniktech)
- Allow popup height to be changed with a setter #373 (VitalyKuznetsov)
- Fix memory leak in EmojiPopup #370 (rubengees)
- Optimise the category png's to save some space #367 (rocboronat)
- Make EmojiManager's initialization methods synchronized #365 (rubengees)
- Change default Keyboard + ViewPager animation. #353 (vanniktech)
- Content descriptors added for supporting talkback accessibility #352 (AlexMavDev)
- Remove EmojiOne #338 (rubengees)
- Update everything to AndroidX #335 (mario)
- Update README license #332 (mario)
I want to thank each and every contributor. Special thanks goes out to @mario & @rubengees.
- Add disclaimer about instantiating the EmojiPopup early to the README #337 (rubengees)
- Show duplicate emojis in the input but not in the picker #336 (rubengees)
- Add support for custom ViewPager.PageTransformer. #334 (mario)
- Add keyboard animation #333 (mario)
- Fix emoji visibility issue #330 (mario)
- Fix Emoji keyboard in certain cases #329 (mario)
- Update Android SDK license. #327 (vanniktech)
- Fix Layout issues in EmojiDialog for several edge cases. #326 (mario)
- Nuke EmojiEditTextInterface and allow any kind of EditText to be passed. #324 (vanniktech)
- Add attrs for color customization on theme level #320 (rubengees)
- Remove sudo: false from travis config. #316 (vanniktech)
- Fix some typos in CHANGELOG.md #309 (felixonmars)
- Upgrade Jimp to 0.5.0, remove manual promises #302 (akwizgran)
- Fix a crash when context instanceof ContextThemeWrapper #298 (AlanGinger)
- Use soft references to hold sprites #297 (akwizgran)
- Allow to override background, icon and divider colors #295 (RashidianPeyman)
- Add support to AutoCompleteTextView and MultiAutoCompleteTextView #292 (rocboronat)
- Use Gradle Maven Publish Plugin for publishing. #283 (vanniktech)
- Add latest emojis for EmojiOne #281 (rubengees)
- Introduce EmojiEditTextInterface which allows custom EditText to work with the Popup. #277 (Foo-Manroot)
- Nuke badges in README. #276 (vanniktech)
- Expose instance so that can access replaceWithImages from external package #270 (SY102134)
- Tweak Travis configuration. #267 (vanniktech)
- Add release method which releases the sheet but not the data structure #266 (rubengees)
- Add missing verifyInstalled to the EmojiManager #265 (rubengees)
- Slightly improve README. #262 (vanniktech)
- Update emojis and use sprite sheet instead of individual images #252 (rubengees)
- Expose some API so that the library can also be used with other systems such as React. #246 (SY102134)
- Unify Detekt configurations with RC6. #232 (vanniktech)
- Better travis.yml #230 (vanniktech)
- Remove duplicates from Checkstyle configuration file. #229 (vanniktech)
- Fix for emoji keyboard UI artifact (while fast scrolling) #223 (yshubin)
- Update Support Library version #208 (MrHadiSatrio)
- Empty list memory optimization #201 (stefanhaustein)
- Obey library loading state and add modifiers only where needed #199 (stefanhaustein)
- Add infrastructure to let the provider perform emoji span replacements and utilize in emoji-google-compat #198 (stefanhaustein)
- Emoji Support Library integration #196 (stefanhaustein)
- Let Emoji provide a drawable in addition to the resource id. #195 (stefanhaustein)
- Don't clean build again when deploying SNAPSHOTS. #193 (vanniktech)
- Adjust README for Snapshots #189 (rubengees)
- Delete codecov yml file. #186 (vanniktech)
- Let Gradle install all of the Android dependencies. #178 (vanniktech)
- Kotlin module #147 (aballano)
I want to thank each and every contributor. Thanks @aballano for adding a kotlin module. @stefanhaustein for integrating Google's Emoji AppCompat. Big thanks to @rubengees & @mario who did most of the work and are actively contributing to this library.
- Showcase different sizes. #172 (vanniktech)
- Avoid scrolling the emoji grid after opening the variant popup #171 (rubengees)
- Fix emoji height calculations #170 (rubengees)
- Update Error Prone to 2.0.20 #169 (vanniktech)
- Update generator for latest changes #166 (rubengees)
- Refactor the VariantEmojiManager #165 (rubengees)
- Update Android Studio Gradle Build Tools to 2.3.3 #163 (vanniktech)
- Update Checkstyle to 7.8.2 #162 (vanniktech)
- Update PMD to 5.8.0 #161 (vanniktech)
- Reflect Emoji Skin Tone automatically in Emoji List. #157 (vanniktech)
- Also don't generate BuildConfig for Emoji Vendors. #154 (vanniktech)
- Pull out EmojiRange to package level. #152 (vanniktech)
- EmojiUtils: Add some documentation to public methods and clean a few things up. #151 (vanniktech)
- Merge EmojiHandler into EmojiManager. #150 (vanniktech)
- Add back Emoji Size and use line height as the default. #146 (vanniktech)
- Added EmojiUtils #145 (aballano)
- Don't generate BuildConfig file for release builds. #143 (vanniktech)
- Add fastlane screengrab to capture screenshots automatically. #142 (vanniktech)
- Add EmojiButton. #137 (vanniktech)
- Do some clean ups. #135 (vanniktech)
- Add night theme support to sample and library. #134 (vanniktech)
- Add new twitter module and clean up gradle files #133 (rubengees)
- New emojis #132 (rubengees)
- Performance optimization #129 (rubengees)
- Update all emojis to emoji 5.0 #119 (rubengees)
- Adjust generator for emoji 5.0 #118 (rubengees)
- Better emoji height management #117 (rubengees)
- Update Code Quality Configurations. #111 (vanniktech)
- Remove right Scrollbar in Categories #108 (RicoChr)
- Improve Popup logic #97 (rubengees)
- Add support for Google emojis #95 (rubengees)
- Make the EmojiEditText more performant #93 (rubengees)
- Support for skin tones in the picker #91 (rubengees)
Many thanks to rubengees for helping out with a lot of issues.
Note:
0.5.1 does contain a few breaking changes. Please consult with the README.
There was a problem with publishing to mavenCentral. Please don't use this version. Instead use 0.5.1
.
- Soft keyboard not detected when toggling the emoji-popup #60
- Can't show keyboard #58
- Opening emoticons, and change the keyboard #57
- On android 6 emoji not averlays keyboard #20
- Optimize EmojiGridView hierarchy #39 (vanniktech)
- Split v4 #49 (vanniktech)
- Make colors customizable #70 (rubengees)
- Rewrite for more Emojis, modularity and performance #77 (rubengees)
Huge thanks to rubengees for making this library able to support multiple Emojis (iOS & Emoji One) as well as fixing those issues:
Note:
0.4.0 is a breaking change so please consult with the README in order to set it up correctly. If you want to continue using the iOS Emojis change this:
-compile 'com.vanniktech:emoji:0.4.0'
+compile 'com.vanniktech:emoji-ios:0.4.0'
and add EmojiManager.install(new IosEmojiProvider());
in your Applications onCreate()
method.
- Remove Global Layout listener when dismissing the popup. Fixes #22 #24 (vanniktech)
- Show People category first when no recent emojis are present #16 (vanniktech)
- Add Recent Emojis Tab #13 (vanniktech)
- Adding new emojis #9 (vanniktech)
- Add Library resource config file. Fixes #6 #7 (vanniktech)
- Initial release