Commit c4c3cf8
Update Settings: Address Ppro Issues (#5460)
Task/Issue URL:
https://app.asana.com/0/1207908166761516/1209138029097313/f
### Description
Address Ship Review comments regarding not being able to see Ppro
settings items when subscriptions expired.
It was necessary to consider available Products ([you may see these
referred to as "features" internally in the subscription
module](https://app.asana.com/0/414730916066338/1209117572597478/f))
when a user's subscription has expired or they are in a waiting state,
as their entitlements would end up being empty.
Now we know what Products are available to the user, we can display them
correctly in their disabled state to match the new Settings design.
### Steps to test this PR
Prerequisite: `newSettings` feature flag is enabled
Follow these
[instructions](https://app.asana.com/0/1142021229838617/1208861246073828/f)
to install Play Billing Lab so you can test US and ROW subscription
plans
**US**
Prerequisite: Country/Region is set to US in Play Billing Lab
_New Settings Top Level_
- [x] Open Settings screen
- [x] Verify items displayed match design Not Subscribed state
_Subscribed State_
- [ ] Tap "Get Privacy Pro"
- [ ] Purchase Ppro monthly
- [ ] One Purchase is completed return to top level settings screen
- [ ] Verify VPN, PIR, ITR and Settings items are displayed, matching
design Subscribed state
- [ ] Turn on VPN
- [ ] Return to top level settings screen
- [ ] Ensure VPN status indicator is on
- [ ] Turn VPN off
- [ ] Return to top level settings screen
- [ ] Ensure VPN status is off
_Expired State_
- [ ] Tap "Subscription Settings"
- [ ] Click "Update Plan or Cancel" item
- [ ] Cancel the Subscription
- [ ] Wait 5 mins
- [ ] Return to top level settings screen
- [ ] Verify VPN, PIR, ITR are in a disabled state like designs
- [ ] Verify VPN, PIR, ITR are not clickable
- [ ] Verify Settings item is in expired state
_Remove subscription_
- [ ] Re-purchase Ppro
- [ ] From the Subscription Settings screen click "Remove From this
Device"
- [ ] Return to top level settings screen
- [ ] Verify you're in the Not Subscribed state
_Activating State_
Prerequisite: Apply patch in
[task](https://app.asana.com/0/1207908166761516/1209138029097313/f) as
this is hard to reproduce via device
- [ ] Apply patch
- [ ] Open settings
- [ ] Verify Ppro is in Activating state like designs
- [ ] Verify VPN, PIR, ITR are not clickable
- [ ] Re-purchase Ppro
- [ ] From the Subscription Settings screen click "Remove From this
Device"
- [ ] Return to top level settings screen
- [ ] Verify you're in the Not Subscribed state
**ROW**
Prerequisite: Country/Region is set to UK in Play Billing Lab
_New Settings Top Level_
- [ ] Open Settings screen
- [ ] Verify items displayed match design Not Subscribed state
_Subscribed State_
- [ ] Tap "Get Privacy Pro"
- [ ] Purchase Ppro monthly
- [ ] One Purchase is completed return to top level settings screen
- [ ] Verify only VPN, ITR and Settings items are displayed and match
design Subscribed state
- [ ] Turn on VPN
- [ ] Return to top level settings screen
- [ ] Ensure VPN status indicator is on
- [ ] Turn VPN off
- [ ] Return to top level settings screen
- [ ] Ensure VPN status is off
_Expired State_
- [ ] Tap "Subscription Settings"
- [ ] Click "Update Plan or Cancel" item
- [ ] Cancel the Subscription
- [ ] Wait 5 mins
- [ ] Return to top level settings screen
- [ ] Verify only VPN, ITR are in a disabled state like designs
- [ ] Verify VPN, ITR are not clickable
- [ ] Verify Settings item is in expired state
_Remove subscription_
- [ ] Re-purchase Ppro
- [ ] From the Subscription Settings screen click "Remove From this
Device"
- [ ] Return to top level settings screen
- [ ] Verify you're in the Not Subscribed state
### UI changes
No UI changes but it's helpful to see the
[designs](https://www.figma.com/design/CjH849hL53lhsPlf6Ufeo4/%E2%9A%99%EF%B8%8F-Browser-Settings-Documentation-(All-Platforms)?node-id=7605-431390&t=RdmuNULWUyR1cMH7-4)
to remember our new states1 parent d88e5ae commit c4c3cf8
File tree
79 files changed
+1633
-632
lines changed- .github/workflows
- app
- src
- androidTest/java/com/duckduckgo/app
- browser
- cta/ui
- main
- java/com/duckduckgo/app
- browser
- cta/ui
- feedback/ui/initial
- pixels
- settings
- tabs
- trackerdetection/blocklist
- res
- layout
- values-bg
- values-cs
- values-da
- values-de
- values-el
- values-es
- values-et
- values-fi
- values-fr
- values-hr
- values-hu
- values-it
- values-lt
- values-lv
- values-nb
- values-nl
- values-pl
- values-pt
- values-ro
- values-ru
- values-sk
- values-sl
- values-sv
- values-tr
- values
- version
- autoconsent/autoconsent-impl/src/main
- java/com/duckduckgo/autoconsent/impl/ui
- res/drawable
- common/common-ui/src/main
- java/com/duckduckgo/common/ui
- themepreview/ui/component
- view/listitem
- res
- drawable
- layout
- values
- network-protection/network-protection-impl/src
- main/java/com/duckduckgo/networkprotection/impl/subscription
- settings
- test/java/com/duckduckgo/networkprotection/impl/subscription/settings
- subscriptions
- subscriptions-api/src/main/java/com/duckduckgo/subscriptions/api
- subscriptions-dummy-impl/src/main/java/com/duckduckgo/subscriptions/impl
- subscriptions-impl/src
- main
- java/com/duckduckgo/subscriptions/impl
- messaging
- settings/views
- res/layout
- test/java/com/duckduckgo/subscriptions/impl
- messaging
- settings
- views
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
79 files changed
+1633
-632
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
7 | 7 | | |
8 | 8 | | |
9 | 9 | | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
10 | 21 | | |
11 | 22 | | |
12 | 23 | | |
| |||
52 | 63 | | |
53 | 64 | | |
54 | 65 | | |
55 | | - | |
56 | | - | |
| 66 | + | |
| 67 | + | |
57 | 68 | | |
58 | 69 | | |
59 | | - | |
| 70 | + | |
60 | 71 | | |
61 | 72 | | |
62 | 73 | | |
63 | 74 | | |
64 | 75 | | |
65 | 76 | | |
66 | | - | |
| 77 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
5 | 9 | | |
6 | 10 | | |
7 | 11 | | |
| |||
20 | 24 | | |
21 | 25 | | |
22 | 26 | | |
| 27 | + | |
23 | 28 | | |
24 | 29 | | |
25 | 30 | | |
| |||
Lines changed: 35 additions & 6 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
27 | 27 | | |
28 | 28 | | |
29 | 29 | | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
30 | 33 | | |
31 | 34 | | |
32 | 35 | | |
| |||
41 | 44 | | |
42 | 45 | | |
43 | 46 | | |
| 47 | + | |
44 | 48 | | |
45 | 49 | | |
46 | 50 | | |
| |||
52 | 56 | | |
53 | 57 | | |
54 | 58 | | |
55 | | - | |
| 59 | + | |
56 | 60 | | |
| 61 | + | |
57 | 62 | | |
58 | 63 | | |
59 | 64 | | |
| |||
63 | 68 | | |
64 | 69 | | |
65 | 70 | | |
66 | | - | |
| 71 | + | |
67 | 72 | | |
68 | 73 | | |
69 | 74 | | |
| 75 | + | |
70 | 76 | | |
71 | 77 | | |
72 | 78 | | |
| |||
96 | 102 | | |
97 | 103 | | |
98 | 104 | | |
| 105 | + | |
99 | 106 | | |
100 | 107 | | |
101 | 108 | | |
| 109 | + | |
102 | 110 | | |
103 | 111 | | |
104 | | - | |
| 112 | + | |
105 | 113 | | |
106 | 114 | | |
107 | 115 | | |
108 | 116 | | |
| 117 | + | |
109 | 118 | | |
110 | | - | |
| 119 | + | |
111 | 120 | | |
| 121 | + | |
112 | 122 | | |
113 | 123 | | |
114 | | - | |
| 124 | + | |
| 125 | + | |
115 | 126 | | |
116 | | - | |
| 127 | + | |
117 | 128 | | |
118 | 129 | | |
119 | 130 | | |
120 | 131 | | |
121 | 132 | | |
| 133 | + | |
| 134 | + | |
| 135 | + | |
| 136 | + | |
| 137 | + | |
| 138 | + | |
| 139 | + | |
| 140 | + | |
| 141 | + | |
| 142 | + | |
| 143 | + | |
| 144 | + | |
| 145 | + | |
| 146 | + | |
| 147 | + | |
| 148 | + | |
122 | 149 | | |
123 | 150 | | |
124 | 151 | | |
| |||
173 | 200 | | |
174 | 201 | | |
175 | 202 | | |
| 203 | + | |
176 | 204 | | |
177 | 205 | | |
178 | 206 | | |
| |||
189 | 217 | | |
190 | 218 | | |
191 | 219 | | |
| 220 | + | |
192 | 221 | | |
193 | 222 | | |
194 | 223 | | |
| |||
Lines changed: 0 additions & 33 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
44 | 44 | | |
45 | 45 | | |
46 | 46 | | |
47 | | - | |
48 | 47 | | |
49 | 48 | | |
50 | | - | |
51 | 49 | | |
52 | 50 | | |
53 | 51 | | |
| |||
794 | 792 | | |
795 | 793 | | |
796 | 794 | | |
797 | | - | |
798 | 795 | | |
799 | 796 | | |
800 | 797 | | |
| |||
813 | 810 | | |
814 | 811 | | |
815 | 812 | | |
816 | | - | |
817 | | - | |
818 | | - | |
819 | | - | |
820 | | - | |
821 | | - | |
822 | | - | |
823 | | - | |
824 | | - | |
825 | | - | |
826 | | - | |
827 | | - | |
828 | | - | |
829 | | - | |
830 | | - | |
831 | | - | |
832 | | - | |
833 | | - | |
834 | | - | |
835 | | - | |
836 | | - | |
837 | | - | |
838 | | - | |
839 | | - | |
840 | | - | |
841 | | - | |
842 | | - | |
843 | | - | |
844 | | - | |
845 | | - | |
846 | 813 | | |
847 | 814 | | |
848 | 815 | | |
| |||
Lines changed: 17 additions & 7 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
26 | 26 | | |
27 | 27 | | |
28 | 28 | | |
| 29 | + | |
| 30 | + | |
29 | 31 | | |
30 | 32 | | |
31 | 33 | | |
| |||
61 | 63 | | |
62 | 64 | | |
63 | 65 | | |
| 66 | + | |
64 | 67 | | |
65 | 68 | | |
66 | 69 | | |
| |||
86 | 89 | | |
87 | 90 | | |
88 | 91 | | |
89 | | - | |
90 | | - | |
91 | | - | |
92 | | - | |
93 | | - | |
94 | | - | |
95 | | - | |
| 92 | + | |
| 93 | + | |
| 94 | + | |
| 95 | + | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
| 100 | + | |
| 101 | + | |
| 102 | + | |
| 103 | + | |
| 104 | + | |
| 105 | + | |
96 | 106 | | |
97 | 107 | | |
98 | 108 | | |
| |||
Lines changed: 0 additions & 11 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
42 | 42 | | |
43 | 43 | | |
44 | 44 | | |
45 | | - | |
46 | 45 | | |
47 | 46 | | |
48 | 47 | | |
49 | | - | |
50 | 48 | | |
51 | 49 | | |
52 | 50 | | |
| |||
486 | 484 | | |
487 | 485 | | |
488 | 486 | | |
489 | | - | |
490 | | - | |
491 | | - | |
492 | | - | |
493 | | - | |
494 | | - | |
495 | | - | |
496 | | - | |
497 | | - | |
498 | 487 | | |
499 | 488 | | |
500 | 489 | | |
| |||
Lines changed: 25 additions & 7 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
16 | 16 | | |
17 | 17 | | |
18 | 18 | | |
| 19 | + | |
19 | 20 | | |
| 21 | + | |
20 | 22 | | |
21 | 23 | | |
22 | 24 | | |
23 | 25 | | |
24 | 26 | | |
25 | | - | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
26 | 30 | | |
27 | 31 | | |
28 | 32 | | |
| |||
50 | 54 | | |
51 | 55 | | |
52 | 56 | | |
53 | | - | |
54 | | - | |
55 | | - | |
56 | | - | |
57 | | - | |
58 | | - | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
59 | 67 | | |
60 | 68 | | |
61 | 69 | | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
62 | 80 | | |
63 | 81 | | |
64 | 82 | | |
| |||
Lines changed: 0 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
49 | 49 | | |
50 | 50 | | |
51 | 51 | | |
52 | | - | |
53 | 52 | | |
54 | 53 | | |
55 | 54 | | |
| |||
Lines changed: 2 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
71 | 71 | | |
72 | 72 | | |
73 | 73 | | |
| 74 | + | |
74 | 75 | | |
75 | 76 | | |
76 | 77 | | |
| |||
201 | 202 | | |
202 | 203 | | |
203 | 204 | | |
| 205 | + | |
204 | 206 | | |
205 | 207 | | |
206 | 208 | | |
| |||
0 commit comments