mirror of
				https://github.com/SimpleMobileTools/Simple-Contacts.git
				synced 2025-06-05 21:59:27 +02:00 
			
		
		
		
	add websites to the Edit screen too
This commit is contained in:
		| @@ -29,6 +29,7 @@ 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_phone_number.view.* | ||||
| import kotlinx.android.synthetic.main.item_edit_website.view.* | ||||
| import kotlinx.android.synthetic.main.item_event.view.* | ||||
| import org.joda.time.DateTime | ||||
| import org.joda.time.format.DateTimeFormat | ||||
| @@ -179,9 +180,10 @@ class EditContactActivity : ContactActivity() { | ||||
|         contact_addresses_image.applyColorFilter(textColor) | ||||
|         contact_events_image.applyColorFilter(textColor) | ||||
|         contact_notes_image.applyColorFilter(textColor) | ||||
|         contact_source_image.applyColorFilter(textColor) | ||||
|         contact_groups_image.applyColorFilter(textColor) | ||||
|         contact_organization_image.applyColorFilter(textColor) | ||||
|         contact_websites_image.applyColorFilter(textColor) | ||||
|         contact_groups_image.applyColorFilter(textColor) | ||||
|         contact_source_image.applyColorFilter(textColor) | ||||
|  | ||||
|         val adjustedPrimaryColor = getAdjustedPrimaryColor() | ||||
|         contact_numbers_add_new.applyColorFilter(adjustedPrimaryColor) | ||||
| @@ -192,6 +194,8 @@ class EditContactActivity : ContactActivity() { | ||||
|         contact_addresses_add_new.background.applyColorFilter(textColor) | ||||
|         contact_events_add_new.applyColorFilter(adjustedPrimaryColor) | ||||
|         contact_events_add_new.background.applyColorFilter(textColor) | ||||
|         contact_websites_add_new.applyColorFilter(adjustedPrimaryColor) | ||||
|         contact_websites_add_new.background.applyColorFilter(textColor) | ||||
|         contact_groups_add_new.applyColorFilter(adjustedPrimaryColor) | ||||
|         contact_groups_add_new.background.applyColorFilter(textColor) | ||||
|  | ||||
| @@ -204,6 +208,7 @@ class EditContactActivity : ContactActivity() { | ||||
|         contact_emails_add_new.setOnClickListener { addNewEmailField() } | ||||
|         contact_addresses_add_new.setOnClickListener { addNewAddressField() } | ||||
|         contact_events_add_new.setOnClickListener { addNewEventField() } | ||||
|         contact_websites_add_new.setOnClickListener { addNewWebsiteField() } | ||||
|         contact_groups_add_new.setOnClickListener { showSelectGroupsDialog() } | ||||
|  | ||||
|         setupFieldVisibility() | ||||
| @@ -285,6 +290,11 @@ class EditContactActivity : ContactActivity() { | ||||
|         contact_events_holder.beVisibleIf(areEventsVisible) | ||||
|         contact_events_add_new.beVisibleIf(areEventsVisible) | ||||
|  | ||||
|         val areWebsitesVisible = showFields and SHOW_WEBSITES_FIELD != 0 | ||||
|         contact_websites_image.beVisibleIf(areWebsitesVisible) | ||||
|         contact_websites_holder.beVisibleIf(areWebsitesVisible) | ||||
|         contact_websites_add_new.beVisibleIf(areWebsitesVisible) | ||||
|  | ||||
|         val areGroupsVisible = showFields and SHOW_GROUPS_FIELD != 0 | ||||
|         contact_groups_image.beVisibleIf(areGroupsVisible) | ||||
|         contact_groups_holder.beVisibleIf(areGroupsVisible) | ||||
| @@ -311,6 +321,7 @@ class EditContactActivity : ContactActivity() { | ||||
|         setupAddresses() | ||||
|         setupNotes() | ||||
|         setupOrganization() | ||||
|         setupWebsites() | ||||
|         setupEvents() | ||||
|         setupGroups() | ||||
|     } | ||||
| @@ -379,6 +390,20 @@ class EditContactActivity : ContactActivity() { | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     private fun setupWebsites() { | ||||
|         if (showFields and SHOW_WEBSITES_FIELD != 0) { | ||||
|             contact!!.websites.forEachIndexed { index, website -> | ||||
|                 var websitesHolder = contact_websites_holder.getChildAt(index) | ||||
|                 if (websitesHolder == null) { | ||||
|                     websitesHolder = layoutInflater.inflate(R.layout.item_edit_website, contact_websites_holder, false) | ||||
|                     contact_websites_holder.addView(websitesHolder) | ||||
|                 } | ||||
|  | ||||
|                 websitesHolder!!.contact_website.setText(website) | ||||
|             } | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     private fun setupEvents() { | ||||
|         if (showFields and SHOW_EVENTS_FIELD != 0) { | ||||
|             contact!!.events.forEachIndexed { index, event -> | ||||
| @@ -463,7 +488,6 @@ class EditContactActivity : ContactActivity() { | ||||
|     } | ||||
|  | ||||
|     private fun setupNewContact() { | ||||
|         //window.setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_VISIBLE) | ||||
|         supportActionBar?.title = resources.getString(R.string.new_contact) | ||||
|         val contactSource = if (hasContactPermissions()) config.lastUsedContactSource else SMT_PRIVATE | ||||
|         val organization = Organization("", "") | ||||
| @@ -844,6 +868,16 @@ class EditContactActivity : ContactActivity() { | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     private fun addNewWebsiteField() { | ||||
|         val websitesHolder = layoutInflater.inflate(R.layout.item_edit_website, contact_websites_holder, false) as ViewGroup | ||||
|         updateTextColors(websitesHolder) | ||||
|         contact_websites_holder.addView(websitesHolder) | ||||
|         contact_websites_holder.onGlobalLayout { | ||||
|             websitesHolder.contact_website.requestFocus() | ||||
|             showKeyboard(websitesHolder.contact_website) | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     private fun isContactStarred() = contact_toggle_favorite.tag == 1 | ||||
|  | ||||
|     private fun getStarDrawable(on: Boolean) = resources.getDrawable(if (on) R.drawable.ic_star_on_big else R.drawable.ic_star_off_big) | ||||
|   | ||||
| @@ -200,9 +200,9 @@ | ||||
|             android:layout_height="wrap_content" | ||||
|             android:layout_below="@+id/contact_numbers_holder" | ||||
|             android:layout_centerHorizontal="true" | ||||
|             android:layout_marginBottom="@dimen/medium_margin" | ||||
|             android:background="@drawable/button_background" | ||||
|             android:paddingBottom="@dimen/medium_margin" | ||||
|             android:layout_marginBottom="@dimen/medium_margin" | ||||
|             android:paddingLeft="@dimen/activity_margin" | ||||
|             android:paddingRight="@dimen/activity_margin" | ||||
|             android:paddingTop="@dimen/medium_margin" | ||||
| @@ -386,6 +386,44 @@ | ||||
|             android:textCursorDrawable="@null" | ||||
|             android:textSize="@dimen/bigger_text_size"/> | ||||
|  | ||||
|         <ImageView | ||||
|             android:id="@+id/contact_websites_image" | ||||
|             android:layout_width="@dimen/contact_icons_size" | ||||
|             android:layout_height="@dimen/contact_icons_size" | ||||
|             android:layout_alignTop="@+id/contact_websites_holder" | ||||
|             android:paddingBottom="@dimen/small_margin" | ||||
|             android:paddingEnd="@dimen/small_margin" | ||||
|             android:paddingRight="@dimen/small_margin" | ||||
|             android:paddingTop="@dimen/medium_margin" | ||||
|             android:src="@drawable/ic_link"/> | ||||
|  | ||||
|         <LinearLayout | ||||
|             android:id="@+id/contact_websites_holder" | ||||
|             android:layout_width="match_parent" | ||||
|             android:layout_height="wrap_content" | ||||
|             android:layout_below="@+id/contact_organization_job_position" | ||||
|             android:layout_marginTop="@dimen/medium_margin" | ||||
|             android:layout_toRightOf="@+id/contact_name_image" | ||||
|             android:orientation="vertical"> | ||||
|  | ||||
|             <include layout="@layout/item_edit_website"/> | ||||
|  | ||||
|         </LinearLayout> | ||||
|  | ||||
|         <ImageView | ||||
|             android:id="@+id/contact_websites_add_new" | ||||
|             android:layout_width="wrap_content" | ||||
|             android:layout_height="wrap_content" | ||||
|             android:layout_below="@+id/contact_websites_holder" | ||||
|             android:layout_centerHorizontal="true" | ||||
|             android:layout_marginTop="@dimen/small_margin" | ||||
|             android:background="@drawable/button_background" | ||||
|             android:paddingBottom="@dimen/medium_margin" | ||||
|             android:paddingLeft="@dimen/activity_margin" | ||||
|             android:paddingRight="@dimen/activity_margin" | ||||
|             android:paddingTop="@dimen/medium_margin" | ||||
|             android:src="@drawable/ic_plus"/> | ||||
|  | ||||
|         <ImageView | ||||
|             android:id="@+id/contact_groups_image" | ||||
|             android:layout_width="@dimen/contact_icons_size" | ||||
| @@ -401,7 +439,7 @@ | ||||
|             android:id="@+id/contact_groups_holder" | ||||
|             android:layout_width="match_parent" | ||||
|             android:layout_height="wrap_content" | ||||
|             android:layout_below="@+id/contact_organization_job_position" | ||||
|             android:layout_below="@+id/contact_websites_add_new" | ||||
|             android:layout_marginTop="@dimen/medium_margin" | ||||
|             android:layout_toRightOf="@+id/contact_name_image" | ||||
|             android:orientation="vertical"> | ||||
|   | ||||
							
								
								
									
										21
									
								
								app/src/main/res/layout/item_edit_website.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										21
									
								
								app/src/main/res/layout/item_edit_website.xml
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,21 @@ | ||||
| <?xml version="1.0" encoding="utf-8"?> | ||||
| <RelativeLayout | ||||
|     xmlns:android="http://schemas.android.com/apk/res/android" | ||||
|     android:id="@+id/contact_website_holder" | ||||
|     android:layout_width="match_parent" | ||||
|     android:layout_height="wrap_content"> | ||||
|  | ||||
|     <com.simplemobiletools.commons.views.MyEditText | ||||
|         android:id="@+id/contact_website" | ||||
|         android:layout_width="match_parent" | ||||
|         android:layout_height="wrap_content" | ||||
|         android:layout_centerVertical="true" | ||||
|         android:hint="@string/website" | ||||
|         android:inputType="textWebEditText" | ||||
|         android:lines="1" | ||||
|         android:maxLines="1" | ||||
|         android:singleLine="true" | ||||
|         android:textCursorDrawable="@null" | ||||
|         android:textSize="@dimen/bigger_text_size"/> | ||||
|  | ||||
| </RelativeLayout> | ||||
		Reference in New Issue
	
	Block a user