Skip to content
Snippets Groups Projects
Verified Commit 2b00438e authored by Janne Mareike Koschinski's avatar Janne Mareike Koschinski
Browse files

Implement functionality to make emoji-only messages larger

parent fcb58edd
No related branches found
No related tags found
No related merge requests found
Pipeline #
......@@ -57,6 +57,7 @@ import de.kuschku.quasseldroid.settings.AutoCompleteSettings
import de.kuschku.quasseldroid.settings.BacklogSettings
import de.kuschku.quasseldroid.settings.MessageSettings
import de.kuschku.quasseldroid.ui.chat.ChatActivity
import de.kuschku.quasseldroid.util.Patterns
import de.kuschku.quasseldroid.util.avatars.AvatarHelper
import de.kuschku.quasseldroid.util.helper.*
import de.kuschku.quasseldroid.util.service.ServiceBoundFragment
......@@ -292,7 +293,8 @@ class MessageListFragment : ServiceBoundFragment() {
isSelected = selected.contains(it.messageId),
isExpanded = expanded.contains(it.messageId),
isMarkerLine = markerLine == it.messageId,
isEmoji = false
// Do not run the emoji regex if not necessary, this saves quite a bit of performance
isEmoji = messageSettings.largerEmoji && Patterns.EMOJI.matches(it.content)
)
}
}
......
......@@ -19,6 +19,7 @@
package de.kuschku.quasseldroid.util
import de.kuschku.quasseldroid.util.emoji.EmojiData
import org.intellij.lang.annotations.Language
@SuppressWarnings("Access")
......@@ -117,4 +118,14 @@ object Patterns {
@Language("RegExp")
const val IRC_NICK_STR = """[A-Za-z\x5b-\x60\x7b-\x7d][A-Za-z0-9\x5b-\x60\x7b-\x7d]*"""
val IRC_NICK = Regex(IRC_NICK_STR)
/**
* Regular expression to detect emoji
*/
val EMOJI_STRING = EmojiData.emojis.joinToString(
prefix = """(?:\s|\Q""",
separator = """\E|\Q""",
postfix = """\E)+"""
)
val EMOJI = Regex(EMOJI_STRING)
}
This diff is collapsed.
......@@ -207,14 +207,12 @@
android:key="@string/preference_time_at_end_key"
android:summary="@string/preference_time_at_end_summary"
android:title="@string/preference_time_at_end_title" />
<!--
<SwitchPreference
android:defaultValue="false"
android:dependency="@string/preference_nicks_on_new_line_key"
android:key="@string/preference_larger_emoji_key"
android:title="@string/preference_larger_emoji_title"
android:summary="@string/preference_larger_emoji_summary" />
-->
android:summary="@string/preference_larger_emoji_summary"
android:title="@string/preference_larger_emoji_title" />
</PreferenceCategory>
<PreferenceCategory android:layout="@layout/widget_preference_divider" />
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment