Focus on edit text + open keyboard when landing on screen
This commit is contained in:
		
							parent
							
								
									5498a7e96e
								
							
						
					
					
						commit
						bd9b843df7
					
				| @ -19,6 +19,7 @@ package im.vector.app.features.settings.devices.v2.rename | ||||
| import android.content.Context | ||||
| import android.content.Intent | ||||
| import android.os.Bundle | ||||
| import android.view.WindowManager | ||||
| import com.airbnb.mvrx.Mavericks | ||||
| import dagger.hilt.android.AndroidEntryPoint | ||||
| import im.vector.app.core.extensions.addFragment | ||||
| @ -37,6 +38,7 @@ class RenameSessionActivity : VectorBaseActivity<ActivitySimpleBinding>() { | ||||
|         super.onCreate(savedInstanceState) | ||||
| 
 | ||||
|         if (isFirstCreation()) { | ||||
|             window.setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_VISIBLE) | ||||
|             addFragment( | ||||
|                     container = views.simpleFragmentContainer, | ||||
|                     fragmentClass = RenameSessionFragment::class.java, | ||||
|  | ||||
| @ -24,6 +24,7 @@ import androidx.core.widget.doOnTextChanged | ||||
| import com.airbnb.mvrx.fragmentViewModel | ||||
| import com.airbnb.mvrx.withState | ||||
| import dagger.hilt.android.AndroidEntryPoint | ||||
| import im.vector.app.core.extensions.showKeyboard | ||||
| import im.vector.app.core.platform.VectorBaseFragment | ||||
| import im.vector.app.databinding.FragmentSessionRenameBinding | ||||
| import javax.inject.Inject | ||||
| @ -59,6 +60,7 @@ class RenameSessionFragment : | ||||
|     } | ||||
| 
 | ||||
|     private fun initEditText() { | ||||
|         views.renameSessionEditText.showKeyboard(andRequestFocus = true) | ||||
|         views.renameSessionEditText.doOnTextChanged { text, _, _, _ -> | ||||
|             viewModel.handle(RenameSessionAction.EditLocally(text.toString())) | ||||
|         } | ||||
| @ -86,6 +88,7 @@ class RenameSessionFragment : | ||||
|     override fun invalidate() = withState(viewModel) { state -> | ||||
|         if (renameEditTextInitialized.not()) { | ||||
|             views.renameSessionEditText.setText(state.editedDeviceName) | ||||
|             views.renameSessionEditText.setSelection(views.renameSessionEditText.length()) | ||||
|             renameEditTextInitialized = true | ||||
|         } | ||||
|         views.renameSessionSave.isEnabled = state.editedDeviceName.isNotEmpty() | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user