diff --git a/app/src/main/java/com/geeksville/mesh/MainActivity.kt b/app/src/main/java/com/geeksville/mesh/MainActivity.kt index 14420a6bb..3f3f462a1 100644 --- a/app/src/main/java/com/geeksville/mesh/MainActivity.kt +++ b/app/src/main/java/com/geeksville/mesh/MainActivity.kt @@ -1070,6 +1070,15 @@ class MainActivity : BaseActivity(), Logging, chooseMapStyle() return true } + R.id.prefernces_quick_chat -> { + val fragmentManager: FragmentManager = supportFragmentManager + val fragmentTransaction: FragmentTransaction = fragmentManager.beginTransaction() + val nameFragment = QuickChatSettingsFragment() + fragmentTransaction.add(R.id.mainActivityLayout, nameFragment) + fragmentTransaction.addToBackStack(null) + fragmentTransaction.commit() + return true + } else -> super.onOptionsItemSelected(item) } } diff --git a/app/src/main/java/com/geeksville/mesh/ui/MessagesFragment.kt b/app/src/main/java/com/geeksville/mesh/ui/MessagesFragment.kt index e925032ff..f6a54908b 100644 --- a/app/src/main/java/com/geeksville/mesh/ui/MessagesFragment.kt +++ b/app/src/main/java/com/geeksville/mesh/ui/MessagesFragment.kt @@ -6,9 +6,7 @@ import android.os.Bundle import android.text.InputType import android.view.* import android.view.inputmethod.EditorInfo -import android.widget.EditText -import android.widget.ImageView -import android.widget.TextView +import android.widget.* import androidx.appcompat.app.AppCompatActivity import androidx.appcompat.view.ActionMode import androidx.cardview.widget.CardView @@ -297,6 +295,16 @@ class MessagesFragment : Fragment(), Logging { binding.textInputLayout.isEnabled = connected binding.sendButton.isEnabled = connected } + + val test = Button(context) + test.setLayoutParams(LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT)) + test.setText("RGR") + test.setOnClickListener { + //model.messagesState.sendMessage("Roger", contactId) + binding.messageInputText.setText(binding.messageInputText.text?.append(" Roger")) + binding.messageInputText.setSelection(binding.messageInputText.text?.length ?: 0) + } + binding.quickChatLayout.addView(test) } private inner class ActionModeCallback : ActionMode.Callback { diff --git a/app/src/main/java/com/geeksville/mesh/ui/QuickChatSettingsFragment.kt b/app/src/main/java/com/geeksville/mesh/ui/QuickChatSettingsFragment.kt new file mode 100644 index 000000000..b3db127d3 --- /dev/null +++ b/app/src/main/java/com/geeksville/mesh/ui/QuickChatSettingsFragment.kt @@ -0,0 +1,35 @@ +package com.geeksville.mesh.ui + +import android.os.Bundle +import android.view.LayoutInflater +import android.view.View +import android.view.ViewGroup +import androidx.fragment.app.activityViewModels +import com.geeksville.android.Logging +import com.geeksville.mesh.databinding.AdvancedSettingsBinding +import com.geeksville.mesh.databinding.QuickChatSettingsFragmentBinding +import com.geeksville.mesh.model.UIViewModel +import dagger.hilt.android.AndroidEntryPoint + +@AndroidEntryPoint +class QuickChatSettingsFragment : ScreenFragment("Quick Chat settings"), Logging { + private var _binding: QuickChatSettingsFragmentBinding? = null + + private val binding get() = _binding!! + + private val model: UIViewModel by activityViewModels() + + override fun onCreateView( + inflater: LayoutInflater, container: ViewGroup?, + savedInstanceState: Bundle? + ): View { + _binding = QuickChatSettingsFragmentBinding.inflate(inflater, container, false) + return binding.root + } + + override fun onViewCreated(view: View, savedInstanceState: Bundle?) { + super.onViewCreated(view, savedInstanceState) + + // TODO + } +} \ No newline at end of file diff --git a/app/src/main/res/layout/messages_fragment.xml b/app/src/main/res/layout/messages_fragment.xml index 5cbbd5b92..f4e615d17 100644 --- a/app/src/main/res/layout/messages_fragment.xml +++ b/app/src/main/res/layout/messages_fragment.xml @@ -1,6 +1,7 @@ @@ -37,10 +38,28 @@ android:layout_height="0dp" android:layout_margin="8dp" android:contentDescription="@string/text_messages" - app:layout_constraintBottom_toTopOf="@+id/textInputLayout" + app:layout_constraintBottom_toTopOf="@+id/quickChatView" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toBottomOf="@id/toolbar" /> + app:layout_constraintTop_toBottomOf="@id/toolbar" > + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/menu/menu_main.xml b/app/src/main/res/menu/menu_main.xml index 748e1b9bf..eb598d76c 100644 --- a/app/src/main/res/menu/menu_main.xml +++ b/app/src/main/res/menu/menu_main.xml @@ -36,6 +36,10 @@ android:id="@+id/preferences_map_style" android:title="@string/preferences_map_style" app:showAsAction="withText" /> +