Merge pull request #974 from Naveen3Singh/fix_ime_inset
Apply IME insets on scroll view
This commit is contained in:
commit
e9da5e7ace
|
@ -120,7 +120,8 @@
|
|||
android:configChanges="orientation"
|
||||
android:exported="true"
|
||||
android:parentActivityName=".activities.MainActivity"
|
||||
android:theme="@style/TranslucentTheme">
|
||||
android:theme="@style/TranslucentTheme"
|
||||
android:windowSoftInputMode="adjustResize">
|
||||
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.EDIT" />
|
||||
|
|
|
@ -18,8 +18,12 @@ import android.telephony.PhoneNumberUtils
|
|||
import android.view.View
|
||||
import android.view.ViewGroup
|
||||
import android.view.WindowManager
|
||||
import android.widget.*
|
||||
import android.widget.EditText
|
||||
import android.widget.ImageView
|
||||
import android.widget.RelativeLayout
|
||||
import android.widget.TextView
|
||||
import androidx.core.content.ContextCompat
|
||||
import androidx.core.view.WindowInsetsCompat
|
||||
import androidx.core.widget.doAfterTextChanged
|
||||
import com.simplemobiletools.commons.dialogs.ConfirmationAdvancedDialog
|
||||
import com.simplemobiletools.commons.dialogs.RadioGroupDialog
|
||||
|
@ -39,16 +43,29 @@ import com.simplemobiletools.contacts.pro.dialogs.CustomLabelDialog
|
|||
import com.simplemobiletools.contacts.pro.dialogs.ManageVisibleFieldsDialog
|
||||
import com.simplemobiletools.contacts.pro.dialogs.MyDatePickerDialog
|
||||
import com.simplemobiletools.contacts.pro.dialogs.SelectGroupsDialog
|
||||
import com.simplemobiletools.contacts.pro.extensions.*
|
||||
import com.simplemobiletools.contacts.pro.helpers.*
|
||||
import com.simplemobiletools.contacts.pro.extensions.config
|
||||
import com.simplemobiletools.contacts.pro.extensions.getCachePhotoUri
|
||||
import com.simplemobiletools.contacts.pro.extensions.showContactSourcePicker
|
||||
import com.simplemobiletools.contacts.pro.helpers.ADD_NEW_CONTACT_NUMBER
|
||||
import com.simplemobiletools.contacts.pro.helpers.IS_FROM_SIMPLE_CONTACTS
|
||||
import com.simplemobiletools.contacts.pro.helpers.KEY_EMAIL
|
||||
import com.simplemobiletools.contacts.pro.helpers.KEY_NAME
|
||||
import kotlinx.android.synthetic.main.activity_edit_contact.*
|
||||
import kotlinx.android.synthetic.main.item_edit_address.view.*
|
||||
import kotlinx.android.synthetic.main.item_edit_email.view.*
|
||||
import kotlinx.android.synthetic.main.item_edit_group.view.*
|
||||
import kotlinx.android.synthetic.main.item_edit_im.view.*
|
||||
import kotlinx.android.synthetic.main.item_edit_phone_number.view.*
|
||||
import kotlinx.android.synthetic.main.item_edit_website.view.*
|
||||
import kotlinx.android.synthetic.main.item_event.view.*
|
||||
import kotlinx.android.synthetic.main.item_edit_address.view.contact_address
|
||||
import kotlinx.android.synthetic.main.item_edit_address.view.contact_address_type
|
||||
import kotlinx.android.synthetic.main.item_edit_email.view.contact_email
|
||||
import kotlinx.android.synthetic.main.item_edit_email.view.contact_email_type
|
||||
import kotlinx.android.synthetic.main.item_edit_group.view.contact_group
|
||||
import kotlinx.android.synthetic.main.item_edit_group.view.contact_group_remove
|
||||
import kotlinx.android.synthetic.main.item_edit_im.view.contact_im
|
||||
import kotlinx.android.synthetic.main.item_edit_im.view.contact_im_type
|
||||
import kotlinx.android.synthetic.main.item_edit_phone_number.view.contact_number
|
||||
import kotlinx.android.synthetic.main.item_edit_phone_number.view.contact_number_type
|
||||
import kotlinx.android.synthetic.main.item_edit_phone_number.view.default_toggle_icon
|
||||
import kotlinx.android.synthetic.main.item_edit_website.view.contact_website
|
||||
import kotlinx.android.synthetic.main.item_event.view.contact_event
|
||||
import kotlinx.android.synthetic.main.item_event.view.contact_event_remove
|
||||
import kotlinx.android.synthetic.main.item_event.view.contact_event_type
|
||||
|
||||
class EditContactActivity : ContactActivity() {
|
||||
private val INTENT_TAKE_PHOTO = 1
|
||||
|
@ -86,6 +103,7 @@ class EditContactActivity : ContactActivity() {
|
|||
}
|
||||
|
||||
contact_wrapper.systemUiVisibility = View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
|
||||
setupInsets()
|
||||
setupMenu()
|
||||
|
||||
val action = intent.action
|
||||
|
@ -289,6 +307,17 @@ class EditContactActivity : ContactActivity() {
|
|||
}
|
||||
}
|
||||
|
||||
private fun setupInsets() {
|
||||
contact_wrapper.setOnApplyWindowInsetsListener { _, insets ->
|
||||
val windowInsets = WindowInsetsCompat.toWindowInsetsCompat(insets)
|
||||
val imeInsets = windowInsets.getInsets(WindowInsetsCompat.Type.ime())
|
||||
contact_scrollview.run {
|
||||
setPadding(paddingLeft, paddingTop, paddingRight, imeInsets.bottom)
|
||||
}
|
||||
insets
|
||||
}
|
||||
}
|
||||
|
||||
private fun setupMenu() {
|
||||
(contact_appbar.layoutParams as RelativeLayout.LayoutParams).topMargin = statusBarHeight
|
||||
contact_toolbar.menu.apply {
|
||||
|
|
|
@ -10,6 +10,7 @@
|
|||
android:id="@+id/contact_scrollview"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:clipToPadding="false"
|
||||
android:scrollbars="none"
|
||||
android:visibility="gone"
|
||||
tools:visibility="visible">
|
||||
|
|
Loading…
Reference in New Issue