Skip to content
Snippets Groups Projects
Commit ac3705d7 authored by Anon's avatar Anon
Browse files

Tidy up main menu.

parent 39a45a28
No related branches found
No related tags found
No related merge requests found
...@@ -33,6 +33,7 @@ import androidx.fragment.app.Fragment ...@@ -33,6 +33,7 @@ import androidx.fragment.app.Fragment
import de.ccc.events.badge.card10.CARD10_BLUETOOTH_MAC_PREFIX import de.ccc.events.badge.card10.CARD10_BLUETOOTH_MAC_PREFIX
import de.ccc.events.badge.card10.R import de.ccc.events.badge.card10.R
import de.ccc.events.badge.card10.common.ConnectionService import de.ccc.events.badge.card10.common.ConnectionService
import de.ccc.events.badge.card10.filetransfer.FileTransferFragment
import de.ccc.events.badge.card10.hatchery.AppListFragment import de.ccc.events.badge.card10.hatchery.AppListFragment
import de.ccc.events.badge.card10.mood.MoodFragment import de.ccc.events.badge.card10.mood.MoodFragment
import de.ccc.events.badge.card10.scanner.ScannerFragment import de.ccc.events.badge.card10.scanner.ScannerFragment
...@@ -46,27 +47,23 @@ class MainFragment : Fragment() { ...@@ -46,27 +47,23 @@ class MainFragment : Fragment() {
inflater.inflate(R.layout.main_fragment, container, false) inflater.inflate(R.layout.main_fragment, container, false)
override fun onViewCreated(view: View, savedInstanceState: Bundle?) { override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
button_pair.setOnClickListener { startFragment(ScannerFragment()) }
button_mood.setOnClickListener { startFragment(MoodFragment()) }
button_beautiful.setOnClickListener { startFragment(BeautifulFragment()) }
button_hatchery.setOnClickListener { startFragment(AppListFragment()) }
button_send.setOnClickListener { startFragment(FileTransferFragment()) }
val bondedCard10s = val bondedCard10s =
bluetoothAdapter.bondedDevices.filter { it.address.startsWith(CARD10_BLUETOOTH_MAC_PREFIX, true) } bluetoothAdapter.bondedDevices.filter { it.address.startsWith(CARD10_BLUETOOTH_MAC_PREFIX, true) }
if (bondedCard10s.isNotEmpty()) { if (bondedCard10s.isNotEmpty()) {
val device = bondedCard10s.get(0) val device = bondedCard10s[0]
label_status.text = getString(R.string.main_label_paired, device.name, device.address) label_status.text = getString(R.string.main_label_paired, device.name, device.address)
container_paired.visibility = View.VISIBLE
} else {
label_status.text = getString(R.string.main_label_not_connected)
container_paired.visibility = View.GONE
}
if (ConnectionService.isConnected()) {
showConnectedView(view) showConnectedView(view)
} else { } else {
label_status.text = getString(R.string.main_label_not_connected)
showDisconnectedView(view) showDisconnectedView(view)
} }
button_pair.setOnClickListener { startFragment(ScannerFragment()) }
button_mood.setOnClickListener { startFragment(MoodFragment()) }
button_beautiful.setOnClickListener { startFragment(BeautifulFragment()) }
button_hatchery.setOnClickListener { startFragment(AppListFragment()) }
} }
private fun startFragment(fragment: Fragment) { private fun startFragment(fragment: Fragment) {
...@@ -79,19 +76,10 @@ class MainFragment : Fragment() { ...@@ -79,19 +76,10 @@ class MainFragment : Fragment() {
private fun showConnectedView(view: View) { private fun showConnectedView(view: View) {
view.findViewById<ConstraintLayout>(R.id.container_connected).visibility = View.VISIBLE view.findViewById<ConstraintLayout>(R.id.container_connected).visibility = View.VISIBLE
view.findViewById<ConstraintLayout>(R.id.container_disconnected).visibility = View.GONE view.findViewById<ConstraintLayout>(R.id.container_disconnected).visibility = View.GONE
val buttonSend = view.findViewById<Button>(R.id.button_send)
buttonSend.setOnClickListener {
// TODO: Open file transfer fragment
}
} }
private fun showDisconnectedView(view: View) { private fun showDisconnectedView(view: View) {
view.findViewById<ConstraintLayout>(R.id.container_connected).visibility = View.GONE view.findViewById<ConstraintLayout>(R.id.container_connected).visibility = View.GONE
view.findViewById<ConstraintLayout>(R.id.container_disconnected).visibility = View.VISIBLE view.findViewById<ConstraintLayout>(R.id.container_disconnected).visibility = View.VISIBLE
val buttonConnect = view.findViewById<Button>(R.id.button_connect)
buttonConnect.setOnClickListener {
// TODO: Open scan fragment
}
} }
} }
...@@ -24,77 +24,67 @@ ...@@ -24,77 +24,67 @@
app:layout_constraintTop_toBottomOf="@+id/image_logo"/> app:layout_constraintTop_toBottomOf="@+id/image_logo"/>
<androidx.constraintlayout.widget.ConstraintLayout android:layout_width="match_parent" <androidx.constraintlayout.widget.ConstraintLayout android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="0dp"
app:layout_constraintTop_toBottomOf="@+id/label_status" app:layout_constraintTop_toBottomOf="@+id/label_status"
app:layout_constraintBottom_toBottomOf="parent"
android:id="@+id/container_disconnected"> android:id="@+id/container_disconnected">
<Button android:id="@+id/button_pair" <Button android:id="@+id/button_pair"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:text="pair" android:text="@string/main_button_pair"
android:layout_marginTop="@dimen/main_label_margin"
style="@style/MainButton"
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"/> app:layout_constraintRight_toRightOf="parent"/>
<Button android:id="@+id/button_connect"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/main_button_connect"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toRightOf="@id/button_pair"/>
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>
<androidx.constraintlayout.widget.ConstraintLayout android:layout_width="match_parent" <androidx.constraintlayout.widget.ConstraintLayout android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="0dp"
app:layout_constraintTop_toBottomOf="@id/container_disconnected"
android:id="@+id/container_paired">
<Button android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/main_label_margin"
android:id="@+id/button_mood"
android:text="@string/main_button_mood"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
/>
<Button android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/main_label_margin"
android:id="@+id/button_beautiful"
android:text="Beautiful"
app:layout_constraintTop_toBottomOf="@id/button_mood"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
/>
</androidx.constraintlayout.widget.ConstraintLayout>
<androidx.constraintlayout.widget.ConstraintLayout android:layout_width="match_parent"
android:layout_height="wrap_content"
app:layout_constraintTop_toBottomOf="@+id/label_status" app:layout_constraintTop_toBottomOf="@+id/label_status"
android:id="@+id/container_connected"> android:id="@+id/container_connected">
<Button android:layout_width="wrap_content" <Button android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginTop="@dimen/main_label_margin" android:layout_marginTop="@dimen/main_label_margin"
style="@style/MainButton"
android:id="@+id/button_hatchery" android:id="@+id/button_hatchery"
android:text="@string/main_button_browse_apps" android:text="@string/main_button_browse_apps"
app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent" app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent"/> app:layout_constraintTop_toTopOf="parent"/>
<Button android:layout_width="wrap_content" <Button android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginTop="@dimen/main_label_margin" android:layout_marginTop="@dimen/main_button_margin"
style="@style/MainButton"
android:id="@+id/button_send" android:id="@+id/button_send"
android:text="@string/main_button_send_file" android:text="@string/main_button_send_file"
app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent" app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toBottomOf="@+id/button_hatchery"/> app:layout_constraintTop_toBottomOf="@+id/button_hatchery"/>
<Button android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/main_button_margin"
style="@style/MainButton"
android:id="@+id/button_mood"
android:text="@string/main_button_mood"
app:layout_constraintTop_toBottomOf="@+id/button_send"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"/>
<Button android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/main_button_margin"
style="@style/MainButton"
android:id="@+id/button_beautiful"
android:text="@string/main_button_beautiful"
app:layout_constraintTop_toBottomOf="@+id/button_mood"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"/>
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<resources> <resources>
<dimen name="activity_padding">24dp</dimen> <dimen name="activity_padding">24dp</dimen>
<dimen name="logo_margin_bottom">24dp</dimen> <dimen name="logo_margin_bottom">24dp</dimen>
<dimen name="main_label_margin">24dp</dimen> <dimen name="main_label_margin">32dp</dimen>
<dimen name="main_button_margin">16dp</dimen>
<dimen name="send_label_margin">24dp</dimen> <dimen name="send_label_margin">24dp</dimen>
<dimen name="app_list_item_padding">16dp</dimen> <dimen name="app_list_item_padding">16dp</dimen>
......
...@@ -4,10 +4,12 @@ ...@@ -4,10 +4,12 @@
<string name="main_label_paired">You are paired to %1$s (%2$s)</string> <string name="main_label_paired">You are paired to %1$s (%2$s)</string>
<string name="main_label_not_connected">You are currently not connected to your card10.</string> <string name="main_label_not_connected">You are currently not connected to your card10.</string>
<string name="main_label_status">You are connected to %1$s (%2$s)</string> <string name="main_label_status">You are connected to %1$s (%2$s)</string>
<string name="main_button_connect">Connect</string> <string name="main_button_pair">Pair</string>
<string name="main_button_manage_pairings">Manage Paired Devices</string>
<string name="main_button_browse_apps">Browse Apps</string> <string name="main_button_browse_apps">Browse Apps</string>
<string name="main_button_send_file">Send File</string> <string name="main_button_send_file">Send File</string>
<string name="main_button_mood">Change Mood</string> <string name="main_button_mood">Change Mood</string>
<string name="main_button_beautiful">Beautiful</string>
<string name="file_transfer_button_pick_file">Select</string> <string name="file_transfer_button_pick_file">Select</string>
<string name="file_transfer_button_start_transfer">Start</string> <string name="file_transfer_button_start_transfer">Start</string>
......
...@@ -8,4 +8,8 @@ ...@@ -8,4 +8,8 @@
<item name="colorAccent">@color/colorAccent</item> <item name="colorAccent">@color/colorAccent</item>
</style> </style>
<style name="MainButton" parent="Widget.AppCompat.Button.Colored">
<item name="android:minWidth">200dp</item>
</style>
</resources> </resources>
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment