Remove textbox in linking dialog.

This commit is contained in:
Mikunj 2019-11-20 16:08:03 +11:00
parent c3bda57ac1
commit d96664cb6a
6 changed files with 24 additions and 82 deletions

View File

@ -1,18 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<org.thoughtcrime.securesms.DeviceListItem xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginStart="16dp"
android:layout_marginEnd="16dp">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:paddingBottom="8dp"
>
android:paddingBottom="8dp">
<TextView
android:id="@+id/name"
android:layout_width="wrap_content"
@ -36,6 +27,5 @@
android:textAppearance="?android:attr/textAppearanceMedium"
android:textColor="#A2A2A2"
android:textSize="14sp" />
</LinearLayout>
</org.thoughtcrime.securesms.DeviceListItem>

View File

@ -45,18 +45,6 @@
android:textAlignment="center"
android:text="word word word" />
<org.thoughtcrime.securesms.components.LabeledEditText
android:id="@+id/deviceNameText"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:ems="10"
android:inputType="text"
android:singleLine="true"
app:labeledEditText_label="@string/view_device_linking_device_name_edit_text_description"
app:labeledEditText_background="?attr/colorBackgroundFloating"
/>
<LinearLayout
android:id="@+id/buttonContainer"
android:layout_width="match_parent"

View File

@ -1635,7 +1635,6 @@
<string name="view_device_linking_explanation_3">Your device has been linked successfully</string>
<string name="view_device_linking_authorize_button_title">Authorize</string>
<string name="view_device_linking_cancel_button_title">Cancel</string>
<string name="view_device_linking_device_name_edit_text_description">Device Name (Optional)</string>
<!-- Scan QR code fragment -->
<string name="fragment_scan_qr_code_title">Scan QR Code</string>
<string name="fragment_scan_qr_code_explanation">Scan the QR code of the person you\'d like to securely message. They can find their QR code by going into Loki Messenger\'s in-app settings and clicking \"Show QR Code\".</string>

View File

@ -2,6 +2,7 @@ package org.thoughtcrime.securesms.loki
import org.whispersystems.signalservice.loki.api.PairingAuthorisation
// Loki - TODO: Remove this yucky delegate pattern for device linking dialog once we have the redesign
interface DeviceLinkingDelegate {
companion object {
fun combine(vararg delegates: DeviceLinkingDelegate?): DeviceLinkingDelegate {
@ -18,10 +19,6 @@ interface DeviceLinkingDelegate {
override fun sendPairingAuthorizedMessage(pairingAuthorisation: PairingAuthorisation) {
for (delegate in validDelegates) { delegate.sendPairingAuthorizedMessage(pairingAuthorisation) }
}
override fun setDeviceDisplayName(hexEncodedPublicKey: String, displayName: String) {
for (delegate in validDelegates) { delegate.setDeviceDisplayName(hexEncodedPublicKey, displayName) }
}
}
}
}
@ -29,5 +26,4 @@ interface DeviceLinkingDelegate {
fun handleDeviceLinkAuthorized(pairingAuthorisation: PairingAuthorisation) {}
fun handleDeviceLinkingDialogDismissed() {}
fun sendPairingAuthorizedMessage(pairingAuthorisation: PairingAuthorisation) {}
fun setDeviceDisplayName(hexEncodedPublicKey: String, displayName: String) {}
}

View File

@ -56,30 +56,6 @@ class DeviceLinkingView private constructor(context: Context, attrs: AttributeSe
authorizeButton.visibility = View.GONE
authorizeButton.setOnClickListener { authorizePairing() }
cancelButton.setOnClickListener { cancel() }
deviceNameText.visibility = View.GONE
deviceNameText.input.addTextChangedListener(object : TextWatcher {
override fun beforeTextChanged(s: CharSequence, start: Int, count: Int, after: Int) {}
override fun onTextChanged(s: CharSequence, start: Int, before: Int, count: Int) {}
override fun afterTextChanged(s: Editable?) {
val string = s?.toString() ?: ""
when {
string.trim().length > 30 -> {
deviceNameText.input.error = "Too Long"
enableAuthorizeButton(false)
}
else -> {
deviceNameText.input.error = null
enableAuthorizeButton(true)
}
}
}
})
}
private fun enableAuthorizeButton(enabled: Boolean) {
authorizeButton.isEnabled = enabled
authorizeButton.alpha = if (enabled) 1f else 0.5f
}
// endregion
@ -96,8 +72,6 @@ class DeviceLinkingView private constructor(context: Context, attrs: AttributeSe
mnemonicTextView.visibility = View.VISIBLE
mnemonicTextView.text = MnemonicUtilities.getFirst3Words(MnemonicCodec(languageFileDirectory), pairingAuthorisation.secondaryDevicePublicKey)
authorizeButton.visibility = View.VISIBLE
deviceNameText.visibility = View.VISIBLE
enableAuthorizeButton(true)
}
fun onDeviceLinkAuthorized(pairingAuthorisation: PairingAuthorisation) {
@ -129,7 +103,6 @@ class DeviceLinkingView private constructor(context: Context, attrs: AttributeSe
if (mode != Mode.Master || pairingAuthorisation == null) { return; }
delegate.sendPairingAuthorizedMessage(pairingAuthorisation)
delegate.handleDeviceLinkAuthorized(pairingAuthorisation)
delegate.setDeviceDisplayName(pairingAuthorisation.secondaryDevicePublicKey, deviceNameText.text.toString().trim())
dismiss?.invoke()
}

View File

@ -75,8 +75,4 @@ class LinkedDevicesActivity : PassphraseRequiredActionBarActivity(), DeviceLinki
Util.runOnMain { this.deviceListFragment.refresh() }
}
}
override fun setDeviceDisplayName(hexEncodedPublicKey: String, displayName: String) {
DatabaseFactory.getLokiUserDatabase(this).setDisplayName(hexEncodedPublicKey, displayName)
}
}