Automattic / Automattic/pocket-casts-android

Stream warning notification instead of stream warning dialog unexpectedly presented

Open
#398 0 comments 0 reactions 0 assignees View on GitHub
[Area] Player UI [Type] Enhancement
Dominant language
Kotlin
Stars
2.8k
Forks
308
Avg merge
1d 13h
Merged PRs (30d)
143

Description

### Description

Sometimes when we need to present the user a warning before streaming an episode from the full-screen player, we present the warning dialog at the bottom of the screen, and other times we present a notification warning about the stream.

It seems like we should always use the dialog when playing is initiated from the full-screen player.

### Step-by-step reproduction instructions

1. Make sure you are on a metered connection and you the warn before streaming setting turned on
2. If you don't already have a NOT downloaded episode loaded, start playing such an episode and then pause it so that it will be loaded the next time we open the app
3. Kill the app and reopen it
4. Open the full screen player
5. Tap Play
6. 🟢 Observe the warning dialog at the bottom of the screen
7. Tap "Stream Anyway"
8. Tap the pause button
9. Tap the play button
10. 🔴 Observe that the warning notification is presented this time instead of the warning dialog

### Screenshots or screen recording

| Dialog | Notification |
| --- | --- |
| ![image](https://user-images.githubusercontent.com/4656348/195366184-d02e90d3-e0ff-4f67-8021-6eba67d9c40d.png) | ![image](https://user-images.githubusercontent.com/4656348/195366652-f438dba1-77c4-434a-97a6-4fd51c7b5556.png) |

### Did you search for existing bug reports?

- [X] I have searched for existing bug reports.

### Device, Operating system, and Pocket Casts app version

Pixel 3, Android 12, Pocket Casts `7.24-rc-1`

Contributor guide

Open the contributing guide

Research direction

No source file or test is named. Start by reproducing the metered-connection flow in the full-screen player, then trace how warning dialogs and notifications are selected after pausing and resuming. Done means playback initiated from the full-screen player consistently uses the warning dialog.

Written by the indexing model from the issue text.

Assessment

Tech stack
android, kotlin
Domain
mobile
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.