Migrate to emoji2

This commit is contained in:
Mygod
2021-10-30 00:17:22 -04:00
parent c4b3362ee0
commit b866b6b707
7 changed files with 9 additions and 17 deletions

View File

@@ -75,7 +75,7 @@ dependencies {
implementation("androidx.appcompat:appcompat:1.4.0-rc01") // https://issuetracker.google.com/issues/151603528 implementation("androidx.appcompat:appcompat:1.4.0-rc01") // https://issuetracker.google.com/issues/151603528
implementation("androidx.browser:browser:1.4.0-rc01") implementation("androidx.browser:browser:1.4.0-rc01")
implementation("androidx.core:core-ktx:1.7.0") implementation("androidx.core:core-ktx:1.7.0")
implementation("androidx.emoji:emoji:1.1.0") implementation("androidx.emoji2:emoji2:1.0.0-rc01")
implementation("androidx.fragment:fragment-ktx:1.3.6") implementation("androidx.fragment:fragment-ktx:1.3.6")
implementation("androidx.lifecycle:lifecycle-livedata-ktx:$lifecycleVersion") implementation("androidx.lifecycle:lifecycle-livedata-ktx:$lifecycleVersion")
implementation("androidx.lifecycle:lifecycle-runtime-ktx:$lifecycleVersion") implementation("androidx.lifecycle:lifecycle-runtime-ktx:$lifecycleVersion")

View File

@@ -13,8 +13,8 @@ import androidx.browser.customtabs.CustomTabsIntent
import androidx.core.content.ContextCompat import androidx.core.content.ContextCompat
import androidx.core.content.getSystemService import androidx.core.content.getSystemService
import androidx.core.provider.FontRequest import androidx.core.provider.FontRequest
import androidx.emoji.text.EmojiCompat import androidx.emoji2.text.EmojiCompat
import androidx.emoji.text.FontRequestEmojiCompatConfig import androidx.emoji2.text.FontRequestEmojiCompatConfig
import androidx.preference.PreferenceManager import androidx.preference.PreferenceManager
import be.mygod.librootkotlinx.NoShellException import be.mygod.librootkotlinx.NoShellException
import be.mygod.vpnhotspot.net.DhcpWorkaround import be.mygod.vpnhotspot.net.DhcpWorkaround

View File

@@ -99,7 +99,7 @@ class BootReceiver : BroadcastReceiver() {
started = true started = true
} }
fun startIfEnabled() { fun startIfEnabled() {
if (started && userEnabled) startIfNecessary() if (!started && userEnabled) startIfNecessary()
} }
} }

View File

@@ -45,7 +45,7 @@ open class Client(val mac: MacAddressCompat, val iface: String) {
SpannableStringBuilder(if (record.nickname.isEmpty()) { SpannableStringBuilder(if (record.nickname.isEmpty()) {
if (record.macLookupPending) MacLookup.perform(mac) if (record.macLookupPending) MacLookup.perform(mac)
macIface macIface
} else emojize(record.nickname)).apply { } else record.nickname).apply {
if (record.blocked) setSpan(StrikethroughSpan(), 0, length, Spanned.SPAN_INCLUSIVE_INCLUSIVE) if (record.blocked) setSpan(StrikethroughSpan(), 0, length, Spanned.SPAN_INCLUSIVE_INCLUSIVE)
} }
} }

View File

@@ -16,6 +16,7 @@ import androidx.appcompat.app.AlertDialog
import androidx.appcompat.widget.PopupMenu import androidx.appcompat.widget.PopupMenu
import androidx.collection.LongSparseArray import androidx.collection.LongSparseArray
import androidx.databinding.BaseObservable import androidx.databinding.BaseObservable
import androidx.emoji2.text.EmojiCompat
import androidx.fragment.app.Fragment import androidx.fragment.app.Fragment
import androidx.fragment.app.activityViewModels import androidx.fragment.app.activityViewModels
import androidx.lifecycle.findViewTreeLifecycleOwner import androidx.lifecycle.findViewTreeLifecycleOwner
@@ -55,7 +56,7 @@ class ClientsFragment : Fragment() {
setTitle(getString(R.string.clients_nickname_title, MacAddressCompat(arg.mac).toString())) setTitle(getString(R.string.clients_nickname_title, MacAddressCompat(arg.mac).toString()))
setPositiveButton(android.R.string.ok, listener) setPositiveButton(android.R.string.ok, listener)
setNegativeButton(android.R.string.cancel, null) setNegativeButton(android.R.string.cancel, null)
setNeutralButton(emojize(getText(R.string.clients_nickname_set_to_vendor)), listener) setNeutralButton(EmojiCompat.get().process(getText(R.string.clients_nickname_set_to_vendor)), listener)
} }
override fun onCreateDialog(savedInstanceState: Bundle?) = super.onCreateDialog(savedInstanceState).apply { override fun onCreateDialog(savedInstanceState: Bundle?) = super.onCreateDialog(savedInstanceState).apply {

View File

@@ -1,9 +0,0 @@
package be.mygod.vpnhotspot.client
import androidx.emoji.text.EmojiCompat
fun emojize(text: CharSequence?): CharSequence? = if (text == null) null else try {
EmojiCompat.get().process(text)
} catch (_: IllegalStateException) {
text
}

View File

@@ -5,7 +5,7 @@
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
tools:viewBindingIgnore="true"> tools:viewBindingIgnore="true">
<androidx.emoji.widget.EmojiEditText <EditText
android:id="@android:id/edit" android:id="@android:id/edit"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
@@ -14,5 +14,5 @@
android:importantForAutofill="no" android:importantForAutofill="no"
tools:text="Nick"> tools:text="Nick">
<requestFocus/> <requestFocus/>
</androidx.emoji.widget.EmojiEditText> </EditText>
</FrameLayout> </FrameLayout>