diff --git a/wear/src/main/java/io/homeassistant/companion/android/onboarding/integration/MobileAppIntegrationActivity.kt b/wear/src/main/java/io/homeassistant/companion/android/onboarding/integration/MobileAppIntegrationActivity.kt index cd023ea369c..bcb791c0fcf 100644 --- a/wear/src/main/java/io/homeassistant/companion/android/onboarding/integration/MobileAppIntegrationActivity.kt +++ b/wear/src/main/java/io/homeassistant/companion/android/onboarding/integration/MobileAppIntegrationActivity.kt @@ -10,6 +10,7 @@ import androidx.wear.activity.ConfirmationActivity import dagger.hilt.android.AndroidEntryPoint import io.homeassistant.companion.android.databinding.ActivityIntegrationBinding import io.homeassistant.companion.android.home.HomeActivity +import io.homeassistant.companion.android.util.adjustInset import javax.inject.Inject import io.homeassistant.companion.android.common.R as commonR @@ -39,17 +40,20 @@ class MobileAppIntegrationActivity : AppCompatActivity(), MobileAppIntegrationVi binding = ActivityIntegrationBinding.inflate(layoutInflater) setContentView(binding.root) - binding.serverUrl.setText(Build.MODEL) + binding.deviceName.setText(Build.MODEL) binding.finish.setOnClickListener { - presenter.onRegistrationAttempt(serverId, binding.serverUrl.text.toString()) + presenter.onRegistrationAttempt(serverId, binding.deviceName.text.toString()) } + + adjustInset(applicationContext, binding, null) } override fun onResume() { super.onResume() binding.loadingView.visibility = View.GONE + binding.constraintLayout.visibility = View.VISIBLE } override fun deviceRegistered() { @@ -61,6 +65,7 @@ class MobileAppIntegrationActivity : AppCompatActivity(), MobileAppIntegrationVi override fun showLoading() { binding.loadingView.visibility = View.VISIBLE + binding.constraintLayout.visibility = View.GONE } override fun showError() { @@ -74,6 +79,7 @@ class MobileAppIntegrationActivity : AppCompatActivity(), MobileAppIntegrationVi } startActivity(intent) binding.loadingView.visibility = View.GONE + binding.constraintLayout.visibility = View.VISIBLE } override fun onDestroy() { diff --git a/wear/src/main/java/io/homeassistant/companion/android/onboarding/manual/ManualSetupActivity.kt b/wear/src/main/java/io/homeassistant/companion/android/onboarding/manual/ManualSetupActivity.kt index 1f44fb5c728..292b76c2439 100644 --- a/wear/src/main/java/io/homeassistant/companion/android/onboarding/manual/ManualSetupActivity.kt +++ b/wear/src/main/java/io/homeassistant/companion/android/onboarding/manual/ManualSetupActivity.kt @@ -12,6 +12,7 @@ import dagger.hilt.android.AndroidEntryPoint import io.homeassistant.companion.android.R import io.homeassistant.companion.android.databinding.ActivityManualSetupBinding import io.homeassistant.companion.android.onboarding.integration.MobileAppIntegrationActivity +import io.homeassistant.companion.android.util.adjustInset import javax.inject.Inject import io.homeassistant.companion.android.common.R as commonR @@ -36,8 +37,10 @@ class ManualSetupActivity : AppCompatActivity(), ManualSetupView { setContentView(binding.root) binding.buttonNext.setOnClickListener { - presenter.onNextClicked(this, findViewById(R.id.server_url).text.toString()) + presenter.onNextClicked(this, findViewById(R.id.device_name).text.toString()) } + + adjustInset(applicationContext, null, binding) } override fun startIntegration(serverId: Int) { @@ -46,6 +49,7 @@ class ManualSetupActivity : AppCompatActivity(), ManualSetupView { override fun showLoading() { binding.loadingView.visibility = View.VISIBLE + binding.constraintLayout.visibility = View.GONE } override fun showContinueOnPhone() { @@ -59,6 +63,7 @@ class ManualSetupActivity : AppCompatActivity(), ManualSetupView { } startActivity(confirmation) binding.loadingView.visibility = View.GONE + binding.constraintLayout.visibility = View.VISIBLE } override fun showError(@StringRes message: Int) { @@ -72,12 +77,14 @@ class ManualSetupActivity : AppCompatActivity(), ManualSetupView { } startActivity(intent) binding.loadingView.visibility = View.GONE + binding.constraintLayout.visibility = View.VISIBLE } override fun onResume() { super.onResume() binding.loadingView.visibility = View.GONE + binding.constraintLayout.visibility = View.VISIBLE } override fun onDestroy() { diff --git a/wear/src/main/java/io/homeassistant/companion/android/util/OnboardingPadding.kt b/wear/src/main/java/io/homeassistant/companion/android/util/OnboardingPadding.kt new file mode 100755 index 00000000000..9fc25e0822e --- /dev/null +++ b/wear/src/main/java/io/homeassistant/companion/android/util/OnboardingPadding.kt @@ -0,0 +1,23 @@ +package io.homeassistant.companion.android.util + +import android.content.Context +import android.content.res.Resources +import io.homeassistant.companion.android.databinding.ActivityIntegrationBinding +import io.homeassistant.companion.android.databinding.ActivityManualSetupBinding + +private const val FACTOR = 0.146467f // c = a * sqrt(2) + +fun adjustInset( + context: Context, + integrationBinding: ActivityIntegrationBinding? = null, + manualSetupBinding: ActivityManualSetupBinding? = null +) { + if (context.resources.configuration.isScreenRound) { + val inset = (FACTOR * Resources.getSystem().displayMetrics.widthPixels).toInt() + if (integrationBinding != null) { + integrationBinding.linearLayout.setPadding(inset, inset, inset, inset) + } else { + manualSetupBinding?.linearLayout?.setPadding(inset, inset, inset, inset) + } + } +} diff --git a/wear/src/main/res/layout/activity_integration.xml b/wear/src/main/res/layout/activity_integration.xml index b8d555ff4d8..d2623c7c72e 100644 --- a/wear/src/main/res/layout/activity_integration.xml +++ b/wear/src/main/res/layout/activity_integration.xml @@ -1,60 +1,71 @@ - + android:layout_height="match_parent"> + - - - - - - - - - - - + android:layout_height="wrap_content" + android:gravity="center" + tools:context=".onboarding.integration.MobileAppIntegrationActivity" + tools:deviceIds="wear" + android:orientation="vertical"> + + + + + + + + + + + + - \ No newline at end of file + + diff --git a/wear/src/main/res/layout/activity_manual_setup.xml b/wear/src/main/res/layout/activity_manual_setup.xml index a1dadfc9668..e26592c0682 100644 --- a/wear/src/main/res/layout/activity_manual_setup.xml +++ b/wear/src/main/res/layout/activity_manual_setup.xml @@ -1,58 +1,71 @@ - + android:layout_height="match_parent"> + - - - - - - - - - - - + android:layout_height="wrap_content" + android:id="@+id/linear_layout" + android:gravity="center" + tools:deviceIds="wear" + android:orientation="vertical"> + + + + + + + + + + + + - \ No newline at end of file + +