diff --git a/Habitica/res/values/strings.xml b/Habitica/res/values/strings.xml
index 8314dbe93..d1ffa9096 100644
--- a/Habitica/res/values/strings.xml
+++ b/Habitica/res/values/strings.xml
@@ -1174,7 +1174,6 @@
Purchase successful
Starting Objectives
Switch Class
- task_container_name
Starting Objectives
Task list mode
diff --git a/version.properties b/version.properties
index d50f527e0..1edd541a1 100644
--- a/version.properties
+++ b/version.properties
@@ -1,2 +1,2 @@
NAME=4.0
-CODE=4250
\ No newline at end of file
+CODE=4260
\ No newline at end of file
diff --git a/wearos/src/main/AndroidManifest.xml b/wearos/src/main/AndroidManifest.xml
index 72cf9cb4a..09f409142 100644
--- a/wearos/src/main/AndroidManifest.xml
+++ b/wearos/src/main/AndroidManifest.xml
@@ -19,7 +19,7 @@
android:required="true" />
+ android:value="false" />
() {
binding.signInOnPhoneButton.isVisible = false
binding.otherButton.isVisible = false
binding.googleLoginButton.isVisible = true
- binding.registerButton.isVisible = true
+ binding.registerButton.isVisible = binding.registerButton.isEnabled
binding.usernamePasswordButton.isVisible = true
binding.usernameEditText.isVisible = false
binding.passwordEditText.isVisible = false
diff --git a/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/views/ConnectedActionChipView.kt b/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/views/ConnectedActionChipView.kt
new file mode 100644
index 000000000..2545eebf4
--- /dev/null
+++ b/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/views/ConnectedActionChipView.kt
@@ -0,0 +1,30 @@
+package com.habitrpg.wearos.habitica.ui.views
+
+import android.content.Context
+import android.util.AttributeSet
+import androidx.core.view.isVisible
+import com.google.android.gms.tasks.Tasks
+import com.google.android.gms.wearable.CapabilityClient
+import com.google.android.gms.wearable.Wearable
+import kotlinx.coroutines.Dispatchers
+import kotlinx.coroutines.MainScope
+import kotlinx.coroutines.launch
+
+class ConnectedActionChipView(context: Context, attrs: AttributeSet? = null) :
+ TextActionChipView(context, attrs) {
+ private val capabilityClient: CapabilityClient by lazy { Wearable.getCapabilityClient(context) }
+
+ init {
+ checkIfPhoneAvailable()
+ }
+
+ private fun checkIfPhoneAvailable() {
+ MainScope().launch(Dispatchers.IO) {
+ val result = Tasks.await(capabilityClient.getCapability("open_activity", CapabilityClient.FILTER_REACHABLE))
+ launch(Dispatchers.Main) {
+ isEnabled = result.nodes.firstOrNull { it.isNearby } != null
+ isVisible = isEnabled
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/views/TextActionChipView.kt b/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/views/TextActionChipView.kt
index 9297debd5..e785c597c 100644
--- a/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/views/TextActionChipView.kt
+++ b/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/views/TextActionChipView.kt
@@ -7,7 +7,7 @@ import com.habitrpg.android.habitica.R
import com.habitrpg.android.habitica.databinding.TextActionChipBinding
import com.habitrpg.common.habitica.extensions.layoutInflater
-class TextActionChipView @JvmOverloads constructor(context: Context, attrs: AttributeSet? = null) :
+open class TextActionChipView @JvmOverloads constructor(context: Context, attrs: AttributeSet? = null) :
RelativeLayout(context, attrs) {
private val attributes = context.theme?.obtainStyledAttributes(
attrs,
diff --git a/wearos/src/main/res/layout/activity_login.xml b/wearos/src/main/res/layout/activity_login.xml
index 26fd513f9..f2037ab3c 100644
--- a/wearos/src/main/res/layout/activity_login.xml
+++ b/wearos/src/main/res/layout/activity_login.xml
@@ -34,7 +34,7 @@
android:textColor="@color/watch_white"
android:layout_marginBottom="18dp"/>
-
-
+ xmlns:tools="http://schemas.android.com/tools"
+ xmlns:app="http://schemas.android.com/apk/res-auto">
-
-
+ app:chipImage="@drawable/handoff"
+ app:chipText="@string/check_on_phone" />
-