diff --git a/android/app/src/main/java/com/metallic/chiaki/regist/RegistActivity.kt b/android/app/src/main/java/com/metallic/chiaki/regist/RegistActivity.kt
index fa1f2df..128251d 100644
--- a/android/app/src/main/java/com/metallic/chiaki/regist/RegistActivity.kt
+++ b/android/app/src/main/java/com/metallic/chiaki/regist/RegistActivity.kt
@@ -28,6 +28,14 @@ import kotlinx.android.synthetic.main.activity_regist.*
class RegistActivity: AppCompatActivity(), RevealActivity
{
+ companion object
+ {
+ const val EXTRA_HOST = "regist_host"
+ const val EXTRA_BROADCAST = "regist_broadcast"
+
+ private const val PIN_LENGTH = 8
+ }
+
override val revealWindow: Window get() = window
override val revealIntent: Intent get() = intent
override val revealRootLayout: View get() = rootLayout
@@ -37,5 +45,30 @@ class RegistActivity: AppCompatActivity(), RevealActivity
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_regist)
handleReveal()
+
+ hostEditText.setText(intent.getStringExtra(EXTRA_HOST) ?: "255.255.255.255")
+ broadcastCheckBox.isChecked = intent.getBooleanExtra(EXTRA_BROADCAST, true)
+
+ registButton.setOnClickListener { doRegist() }
+ }
+
+ private fun doRegist()
+ {
+ val host = hostEditText.text.toString().trim()
+ val hostValid = host.isNotEmpty()
+ val broadcast = broadcastCheckBox.isChecked
+ val psnId = psnIdEditText.text.toString().trim()
+ val psnIdValid = psnId.isNotEmpty()
+ val pin = pinEditText.text.toString()
+ val pinValid = pin.length == PIN_LENGTH
+
+ hostEditText.error = if(!hostValid) "Please enter a valid host name" else null
+ psnIdEditText.error = if(!psnIdValid) "Please enter a valid PSN ID" else null
+ pinEditText.error = if(!pinValid) "Please enter a valid 8-digit PIN" else null
+
+ if(!hostValid || !psnIdValid || ! pinValid)
+ return
+
+ // TODO
}
}
\ No newline at end of file
diff --git a/android/app/src/main/res/drawable/ic_host.xml b/android/app/src/main/res/drawable/ic_host.xml
new file mode 100644
index 0000000..fa79931
--- /dev/null
+++ b/android/app/src/main/res/drawable/ic_host.xml
@@ -0,0 +1,9 @@
+
+
+
diff --git a/android/app/src/main/res/drawable/ic_pin.xml b/android/app/src/main/res/drawable/ic_pin.xml
new file mode 100644
index 0000000..a77ef95
--- /dev/null
+++ b/android/app/src/main/res/drawable/ic_pin.xml
@@ -0,0 +1,9 @@
+
+
+
diff --git a/android/app/src/main/res/drawable/ic_psn_id.xml b/android/app/src/main/res/drawable/ic_psn_id.xml
new file mode 100644
index 0000000..b2cb337
--- /dev/null
+++ b/android/app/src/main/res/drawable/ic_psn_id.xml
@@ -0,0 +1,9 @@
+
+
+
diff --git a/android/app/src/main/res/layout/activity_regist.xml b/android/app/src/main/res/layout/activity_regist.xml
index 097c892..c0eeaa6 100644
--- a/android/app/src/main/res/layout/activity_regist.xml
+++ b/android/app/src/main/res/layout/activity_regist.xml
@@ -30,8 +30,8 @@
android:id="@+id/titleTextView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
- android:text="Register Console"
- android:textSize="32dp"
+ android:text="@string/title_regist"
+ android:textSize="32sp"
android:gravity="center"
android:layout_marginTop="16dp"
app:layout_constraintTop_toBottomOf="@id/iconImageView"
@@ -41,13 +41,16 @@
android:id="@+id/hostTextInputLayout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
- android:hint="Host"
- app:startIconDrawable="@drawable/ic_register"
+ android:hint="@string/hint_regist_host"
+ app:startIconDrawable="@drawable/ic_host"
app:layout_constraintTop_toBottomOf="@id/titleTextView"
android:layout_marginTop="32dp">
+ android:layout_height="wrap_content"
+ android:inputType="textNoSuggestions|textVisiblePassword"
+ android:maxLines="1"/>
+ android:text="@string/regist_broadcast"/>
+ android:layout_height="wrap_content"
+ android:inputType="textNoSuggestions|textVisiblePassword"
+ android:maxLines="1"/>
+ android:layout_marginTop="32dp"
+ android:alpha="0.6"/>
+
+
+
+ android:layout_height="wrap_content"
+ android:inputType="number"
+ android:maxLength="8" />
-
diff --git a/android/app/src/main/res/values/strings.xml b/android/app/src/main/res/values/strings.xml
index a90d7e4..477f86d 100644
--- a/android/app/src/main/res/values/strings.xml
+++ b/android/app/src/main/res/values/strings.xml
@@ -14,4 +14,13 @@
ID: %s
Register Console
Add Console Manually
+ On the PS4, navigate to
+ Settings →\nRemote Play Connection Settings →\nAdd Device
+ to obtain the PIN
+ Register Console
+ Host
+ Broadcast
+ PSN ID (username, case-sensitive)
+ PIN
+ Register
diff --git a/android/app/src/main/res/values/styles.xml b/android/app/src/main/res/values/styles.xml
index d73477c..a5e4046 100644
--- a/android/app/src/main/res/values/styles.xml
+++ b/android/app/src/main/res/values/styles.xml
@@ -59,6 +59,7 @@
- 16dp
- 16dp
- @color/mage_text_input_box_stroke
+ - ?attr/colorPrimaryDark