From d1ebf226cd53b86212b020398ec274495216f65b Mon Sep 17 00:00:00 2001 From: tibbi Date: Mon, 26 Oct 2020 11:08:24 +0100 Subject: [PATCH] start rewriting the View Contact screen with a bigger top image --- app/build.gradle | 2 +- app/src/main/AndroidManifest.xml | 3 +- .../contacts/pro/activities/MainActivity.kt | 3 +- .../pro/activities/ViewContactActivity.kt | 52 +++++++++++-------- .../main/res/layout/activity_view_contact.xml | 26 ++++++++++ 5 files changed, 62 insertions(+), 24 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 19495511..a528c198 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -57,7 +57,7 @@ android { } dependencies { - implementation 'com.simplemobiletools:commons:5.31.8' + implementation 'com.simplemobiletools:commons:5.31.9' implementation 'joda-time:joda-time:2.10.1' implementation 'com.googlecode.ez-vcard:ez-vcard:0.10.5' implementation 'com.github.tibbi:IndicatorFastScroll:08f512858a' diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 2d2a76d3..ce27f3d1 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -69,7 +69,8 @@ + android:parentActivityName=".activities.MainActivity" + android:theme="@style/TranslucentTheme"> diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/pro/activities/MainActivity.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/pro/activities/MainActivity.kt index 8cd0db8d..d36c1a4e 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/pro/activities/MainActivity.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/pro/activities/MainActivity.kt @@ -550,7 +550,8 @@ class MainActivity : SimpleActivity(), RefreshContactsListener { FAQItem(R.string.faq_1_title, R.string.faq_1_text), FAQItem(R.string.faq_2_title_commons, R.string.faq_2_text_commons), FAQItem(R.string.faq_6_title_commons, R.string.faq_6_text_commons), - FAQItem(R.string.faq_7_title_commons, R.string.faq_7_text_commons) + FAQItem(R.string.faq_7_title_commons, R.string.faq_7_text_commons), + FAQItem(R.string.faq_9_title_commons, R.string.faq_9_text_commons) ) startAboutActivity(R.string.app_name, licenses, BuildConfig.VERSION_NAME, faqItems, true) diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/pro/activities/ViewContactActivity.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/pro/activities/ViewContactActivity.kt index 3bdbbc91..7b889b07 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/pro/activities/ViewContactActivity.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/pro/activities/ViewContactActivity.kt @@ -1,10 +1,10 @@ package com.simplemobiletools.contacts.pro.activities import android.content.Intent +import android.graphics.Color +import android.graphics.drawable.ColorDrawable import android.os.Bundle import android.provider.ContactsContract -import android.view.Menu -import android.view.MenuItem import android.view.View import android.view.WindowManager import android.widget.RelativeLayout @@ -44,6 +44,7 @@ class ViewContactActivity : ContactActivity() { private val COMPARABLE_PHONE_NUMBER_LENGTH = 9 override fun onCreate(savedInstanceState: Bundle?) { + useDynamicTheme = false super.onCreate(savedInstanceState) setContentView(R.layout.activity_view_contact) @@ -52,10 +53,14 @@ class ViewContactActivity : ContactActivity() { } showFields = config.showContactFields + contact_wrapper.systemUiVisibility = View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN + contact_wrapper.background = ColorDrawable(config.backgroundColor) + setupMenu() } override fun onResume() { super.onResume() + window.statusBarColor = Color.TRANSPARENT isViewIntent = intent.action == ContactsContract.QuickContact.ACTION_QUICK_CONTACT || intent.action == Intent.ACTION_VIEW if (isViewIntent) { handlePermission(PERMISSION_READ_CONTACTS) { @@ -83,28 +88,33 @@ class ViewContactActivity : ContactActivity() { } } - override fun onCreateOptionsMenu(menu: Menu): Boolean { - menuInflater.inflate(R.menu.menu_view_contact, menu) - menu.apply { - findItem(R.id.open_with).isVisible = contact?.isPrivate() == false - updateMenuItemColors(this) - } - return true - } + private fun setupMenu() { + (activity_track_appbar.layoutParams as RelativeLayout.LayoutParams).topMargin = statusBarHeight + activity_track_toolbar.menu.apply { + findItem(R.id.share).setOnMenuItemClickListener { + shareContact(fullContact!!) + true + } - override fun onOptionsItemSelected(item: MenuItem): Boolean { - if (contact == null) { - return true + findItem(R.id.edit).setOnMenuItemClickListener { + launchEditContact(contact!!) + true + } + + findItem(R.id.open_with).setOnMenuItemClickListener { + openWith() + true + } + + findItem(R.id.delete).setOnMenuItemClickListener { + deleteContactFromAllSources() + true + } } - when (item.itemId) { - R.id.edit -> launchEditContact(contact!!) - R.id.share -> shareContact(fullContact!!) - R.id.open_with -> openWith() - R.id.delete -> deleteContactFromAllSources() - else -> return super.onOptionsItemSelected(item) + activity_track_toolbar.setNavigationOnClickListener { + finish() } - return true } private fun initContact() { @@ -203,7 +213,7 @@ class ViewContactActivity : ContactActivity() { contact_send_email.setOnClickListener { trySendEmail() } updateTextColors(contact_scrollview) - invalidateOptionsMenu() + activity_track_toolbar.menu.findItem(R.id.open_with).isVisible = contact?.isPrivate() == false } private fun setupViewContact() { diff --git a/app/src/main/res/layout/activity_view_contact.xml b/app/src/main/res/layout/activity_view_contact.xml index f1809df4..d1f607b9 100644 --- a/app/src/main/res/layout/activity_view_contact.xml +++ b/app/src/main/res/layout/activity_view_contact.xml @@ -1,5 +1,6 @@ @@ -438,4 +439,29 @@ android:src="@drawable/img_write_storage" android:visibility="gone" /> + + + + + + +