@@ -18,8 +18,12 @@ import android.telephony.PhoneNumberUtils
1818import android.view.View
1919import android.view.ViewGroup
2020import android.view.WindowManager
21- import android.widget.*
21+ import android.widget.EditText
22+ import android.widget.ImageView
23+ import android.widget.RelativeLayout
24+ import android.widget.TextView
2225import androidx.core.content.ContextCompat
26+ import androidx.core.view.WindowInsetsCompat
2327import androidx.core.widget.doAfterTextChanged
2428import com.simplemobiletools.commons.dialogs.ConfirmationAdvancedDialog
2529import com.simplemobiletools.commons.dialogs.RadioGroupDialog
@@ -39,16 +43,29 @@ import com.simplemobiletools.contacts.pro.dialogs.CustomLabelDialog
3943import com.simplemobiletools.contacts.pro.dialogs.ManageVisibleFieldsDialog
4044import com.simplemobiletools.contacts.pro.dialogs.MyDatePickerDialog
4145import com.simplemobiletools.contacts.pro.dialogs.SelectGroupsDialog
42- import com.simplemobiletools.contacts.pro.extensions.*
43- import com.simplemobiletools.contacts.pro.helpers.*
46+ import com.simplemobiletools.contacts.pro.extensions.config
47+ import com.simplemobiletools.contacts.pro.extensions.getCachePhotoUri
48+ import com.simplemobiletools.contacts.pro.extensions.showContactSourcePicker
49+ import com.simplemobiletools.contacts.pro.helpers.ADD_NEW_CONTACT_NUMBER
50+ import com.simplemobiletools.contacts.pro.helpers.IS_FROM_SIMPLE_CONTACTS
51+ import com.simplemobiletools.contacts.pro.helpers.KEY_EMAIL
52+ import com.simplemobiletools.contacts.pro.helpers.KEY_NAME
4453import kotlinx.android.synthetic.main.activity_edit_contact.*
45- import kotlinx.android.synthetic.main.item_edit_address.view.*
46- import kotlinx.android.synthetic.main.item_edit_email.view.*
47- import kotlinx.android.synthetic.main.item_edit_group.view.*
48- import kotlinx.android.synthetic.main.item_edit_im.view.*
49- import kotlinx.android.synthetic.main.item_edit_phone_number.view.*
50- import kotlinx.android.synthetic.main.item_edit_website.view.*
51- import kotlinx.android.synthetic.main.item_event.view.*
54+ import kotlinx.android.synthetic.main.item_edit_address.view.contact_address
55+ import kotlinx.android.synthetic.main.item_edit_address.view.contact_address_type
56+ import kotlinx.android.synthetic.main.item_edit_email.view.contact_email
57+ import kotlinx.android.synthetic.main.item_edit_email.view.contact_email_type
58+ import kotlinx.android.synthetic.main.item_edit_group.view.contact_group
59+ import kotlinx.android.synthetic.main.item_edit_group.view.contact_group_remove
60+ import kotlinx.android.synthetic.main.item_edit_im.view.contact_im
61+ import kotlinx.android.synthetic.main.item_edit_im.view.contact_im_type
62+ import kotlinx.android.synthetic.main.item_edit_phone_number.view.contact_number
63+ import kotlinx.android.synthetic.main.item_edit_phone_number.view.contact_number_type
64+ import kotlinx.android.synthetic.main.item_edit_phone_number.view.default_toggle_icon
65+ import kotlinx.android.synthetic.main.item_edit_website.view.contact_website
66+ import kotlinx.android.synthetic.main.item_event.view.contact_event
67+ import kotlinx.android.synthetic.main.item_event.view.contact_event_remove
68+ import kotlinx.android.synthetic.main.item_event.view.contact_event_type
5269
5370class EditContactActivity : ContactActivity () {
5471 private val INTENT_TAKE_PHOTO = 1
@@ -86,6 +103,7 @@ class EditContactActivity : ContactActivity() {
86103 }
87104
88105 contact_wrapper.systemUiVisibility = View .SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
106+ setupInsets()
89107 setupMenu()
90108
91109 val action = intent.action
@@ -289,6 +307,17 @@ class EditContactActivity : ContactActivity() {
289307 }
290308 }
291309
310+ private fun setupInsets () {
311+ contact_wrapper.setOnApplyWindowInsetsListener { _, insets ->
312+ val windowInsets = WindowInsetsCompat .toWindowInsetsCompat(insets)
313+ val imeInsets = windowInsets.getInsets(WindowInsetsCompat .Type .ime())
314+ contact_scrollview.run {
315+ setPadding(paddingLeft, paddingTop, paddingRight, imeInsets.bottom)
316+ }
317+ insets
318+ }
319+ }
320+
292321 private fun setupMenu () {
293322 (contact_appbar.layoutParams as RelativeLayout .LayoutParams ).topMargin = statusBarHeight
294323 contact_toolbar.menu.apply {
0 commit comments