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

Commit bd2c943a authored by Evan Laird's avatar Evan Laird
Browse files

Send ChannelDialogController finish message on dismiss

NotificationInfo keeps track of whether or not it's presenting the
channel dialog editor, but was missing messages from the "tap outside"
dismissal of the dialog and would not present the dialog on subesquent
taps. This change makes the controller send the finish message on any
dismiss event

Fixes: 135484257
Test: atest ChannelEditorDialogControllerTest; visual
Change-Id: I25a124e4d875c146024a2051cd7c2e896d801c23
parent b765c605
Loading
Loading
Loading
Loading
+6 −1
Original line number Diff line number Diff line
@@ -23,6 +23,7 @@ import android.app.NotificationChannel.DEFAULT_CHANNEL_ID
import android.app.NotificationChannelGroup
import android.app.NotificationManager.IMPORTANCE_NONE
import android.content.Context
import android.content.DialogInterface
import android.graphics.Color
import android.graphics.PixelFormat
import android.graphics.drawable.Drawable
@@ -171,7 +172,6 @@ class ChannelEditorDialogController @Inject constructor(
    private fun done() {
        resetState()
        dialog.dismiss()
        onFinishListener?.onChannelEditorDialogFinished()
    }

    private fun resetState() {
@@ -261,6 +261,11 @@ class ChannelEditorDialogController @Inject constructor(
        dialog.apply {
            setContentView(R.layout.notif_half_shelf)
            setCanceledOnTouchOutside(true)
            setOnDismissListener(object : DialogInterface.OnDismissListener {
                override fun onDismiss(dialog: DialogInterface?) {
                    onFinishListener?.onChannelEditorDialogFinished()
                }
            })
            findViewById<ChannelEditorListView>(R.id.half_shelf_container).apply {
                controller = this@ChannelEditorDialogController
                appIcon = this@ChannelEditorDialogController.appIcon