浏览代码

feat: Copy ICCID to clipboard on long click

Peter Cai 1 年之前
父节点
当前提交
47c6bbb864

+ 10 - 0
app-common/src/main/java/im/angry/openeuicc/ui/EuiccManagementFragment.kt

@@ -1,6 +1,8 @@
 package im.angry.openeuicc.ui
 
 import android.annotation.SuppressLint
+import android.content.ClipData
+import android.content.ClipboardManager
 import android.content.Intent
 import android.os.Bundle
 import android.text.method.PasswordTransformationMethod
@@ -293,6 +295,14 @@ open class EuiccManagementFragment : Fragment(), EuiccProfilesChangedListener,
                 }
             }
 
+            iccid.setOnLongClickListener {
+                requireContext().getSystemService(ClipboardManager::class.java)
+                    .setPrimaryClip(ClipData.newPlainText("iccid", iccid.text))
+                Toast.makeText(requireContext(), R.string.toast_iccid_copied, Toast.LENGTH_SHORT)
+                    .show()
+                true
+            }
+
             profileMenu.setOnClickListener { showOptionsMenu() }
         }
 

+ 1 - 0
app-common/src/main/res/values/strings.xml

@@ -23,6 +23,7 @@
 
     <string name="toast_profile_enable_failed">Cannot switch to new eSIM profile.</string>
     <string name="toast_profile_name_too_long">Nickname cannot be longer than 64 characters</string>
+    <string name="toast_iccid_copied">ICCID copied to clipboard</string>
 
     <string name="slot_select">Select Slot</string>
     <string name="slot_select_select">Select</string>