Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit a1fcecd7 authored by Moez Bhatti's avatar Moez Bhatti
Browse files

Only show recents when sharing

parent 5dbc7aee
Loading
Loading
Loading
Loading
+2 −1
Original line number Original line Diff line number Diff line
@@ -284,10 +284,11 @@ class ComposeActivity : QkThemedActivity(), ComposeView {
        startActivityForResult(Intent.createChooser(intent, null), ATTACH_CONTACT_REQUEST_CODE)
        startActivityForResult(Intent.createChooser(intent, null), ATTACH_CONTACT_REQUEST_CODE)
    }
    }


    override fun showContacts(chips: List<Chip>) {
    override fun showContacts(sharing: Boolean, chips: List<Chip>) {
        message.hideKeyboard()
        message.hideKeyboard()
        val serialized = HashMap(chips.associate { chip -> chip.address to chip.contact?.lookupKey })
        val serialized = HashMap(chips.associate { chip -> chip.address to chip.contact?.lookupKey })
        val intent = Intent(this, ContactsActivity::class.java)
        val intent = Intent(this, ContactsActivity::class.java)
                .putExtra(ContactsActivity.SharingKey, sharing)
                .putExtra(ContactsActivity.ChipsKey, serialized)
                .putExtra(ContactsActivity.ChipsKey, serialized)
        startActivityForResult(intent, SELECT_CONTACT_REQUEST_CODE)
        startActivityForResult(intent, SELECT_CONTACT_REQUEST_CODE)
    }
    }
+1 −1
Original line number Original line Diff line number Diff line
@@ -61,7 +61,7 @@ interface ComposeView : QkView<ComposeState> {
    fun requestDefaultSms()
    fun requestDefaultSms()
    fun requestStoragePermission()
    fun requestStoragePermission()
    fun requestSmsPermission()
    fun requestSmsPermission()
    fun showContacts(chips: List<Chip>)
    fun showContacts(sharing: Boolean, chips: List<Chip>)
    fun showKeyboard()
    fun showKeyboard()
    fun requestCamera()
    fun requestCamera()
    fun requestGallery()
    fun requestGallery()
+4 −3
Original line number Original line Diff line number Diff line
@@ -224,9 +224,10 @@ class ComposeViewModel @Inject constructor(
    override fun bindView(view: ComposeView) {
    override fun bindView(view: ComposeView) {
        super.bindView(view)
        super.bindView(view)


        val sharing = sharedText.isNotEmpty() || sharedAttachments.isNotEmpty()
        if (shouldShowContacts) {
        if (shouldShowContacts) {
            shouldShowContacts = false
            shouldShowContacts = false
            view.showContacts(selectedChips.blockingFirst())
            view.showContacts(sharing, selectedChips.blockingFirst())
        }
        }


        view.chipsSelectedIntent
        view.chipsSelectedIntent
@@ -257,7 +258,7 @@ class ComposeViewModel @Inject constructor(
        view.optionsItemIntent
        view.optionsItemIntent
                .filter { it == R.id.add }
                .filter { it == R.id.add }
                .withLatestFrom(selectedChips) { _, chips ->
                .withLatestFrom(selectedChips) { _, chips ->
                    view.showContacts(chips)
                    view.showContacts(sharing, chips)
                }
                }
                .autoDisposable(view.scope())
                .autoDisposable(view.scope())
                .subscribe()
                .subscribe()
@@ -269,7 +270,7 @@ class ComposeViewModel @Inject constructor(
                    chipsReducer.onNext { contacts ->
                    chipsReducer.onNext { contacts ->
                        val result = contacts.filterNot { it == contact }
                        val result = contacts.filterNot { it == contact }
                        if (result.isEmpty()) {
                        if (result.isEmpty()) {
                            view.showContacts(result)
                            view.showContacts(sharing, result)
                        }
                        }
                        result
                        result
                    }
                    }
+1 −0
Original line number Original line Diff line number Diff line
@@ -47,6 +47,7 @@ import javax.inject.Inject
class ContactsActivity : QkThemedActivity(), ContactsContract {
class ContactsActivity : QkThemedActivity(), ContactsContract {


    companion object {
    companion object {
        const val SharingKey = "sharing"
        const val ChipsKey = "chips"
        const val ChipsKey = "chips"
    }
    }


+5 −0
Original line number Original line Diff line number Diff line
@@ -27,6 +27,11 @@ import dagger.multibindings.IntoMap
@Module
@Module
class ContactsActivityModule {
class ContactsActivityModule {


    @Provides
    fun provideIsSharing(activity: ContactsActivity): Boolean {
        return activity.intent.extras?.getBoolean(ContactsActivity.SharingKey, false) ?: false
    }

    @Provides
    @Provides
    fun provideChips(activity: ContactsActivity): HashMap<String, String?> {
    fun provideChips(activity: ContactsActivity): HashMap<String, String?> {
        return activity.intent.extras?.getSerializable(ContactsActivity.ChipsKey)
        return activity.intent.extras?.getSerializable(ContactsActivity.ChipsKey)
Loading