Skip to content

Instantly share code, notes, and snippets.

@gabrielbmoro
Created August 10, 2020 14:38
Show Gist options
  • Save gabrielbmoro/89b601d153ee79acbd0899d877d285b4 to your computer and use it in GitHub Desktop.
Save gabrielbmoro/89b601d153ee79acbd0899d877d285b4 to your computer and use it in GitHub Desktop.
Change the soft input mode
/**
* Make sure that @param softInputMode is a value from WindowManager.LayoutParams, for example:
* - SOFT_INPUT_ADJUST_PAN
*
* @return the previous softInputMode
*/
fun FragmentActivity.setSoftInputMode(softInputMode: Int): Int? {
val previousSoftInputMode: Int? =
try {
packageManager.getActivityInfo(
componentName,
PackageManager.GET_META_DATA
).softInputMode
} catch (nameNotFoundException: PackageManager.NameNotFoundException) {
null
}
return previousSoftInputMode?.also {
window.setSoftInputMode(softInputMode)
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment