Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Guest List and Network Highlight] Add header #3755

Merged
merged 19 commits into from
Mar 25, 2025

Conversation

mebarbosa
Copy link
Contributor

@mebarbosa mebarbosa commented Mar 11, 2025

Description

Testing Instructions

  1. With GUEST_LISTS_NETWORK_HIGHLIGHTS_REDESIGN ON
  2. Open Discover
  3. Scroll until you see the Guest list, Guest Curator or Network highlight collection
  4. See that the collection shows a header only for the fist page ✅
  5. Tap on the header
  6. Ensure 🔵 Tracked: discover_list_collection_header_tapped, Properties: {"list_id":"ilst-name", ✅
  7. Ensure the collection opens ✅ (same behavior as tapping on show all button)

Screenshots or Screencast

Regular device Large font size Landscape
Screenshot_20250319_123111 Screenshot_20250319_123134 Screenshot_20250319_123155
Screen_recording_20250319_122915.webm

Checklist

  • If this is a user-facing change, I have added an entry in CHANGELOG.md
  • Ensure the linter passes (./gradlew spotlessApply to automatically apply formatting/linting)
  • I have considered whether it makes sense to add tests for my changes
  • All strings that need to be localized are in modules/services/localization/src/main/res/values/strings.xml
  • Any jetpack compose components I added or changed are covered by compose previews
  • I have updated (or requested that someone edit) the spreadsheet to reflect any new or changed analytics.

I have tested any UI changes...

  • with different themes
  • with a landscape orientation
  • with the device set to have a large display and font size
  • for accessibility with TalkBack

@mebarbosa mebarbosa added this to the 7.85 milestone Mar 11, 2025
@mebarbosa mebarbosa requested a review from a team as a code owner March 11, 2025 17:49
@mebarbosa mebarbosa requested review from geekygecko and removed request for a team March 11, 2025 17:49
@wpmobilebot
Copy link
Collaborator

wpmobilebot commented Mar 11, 2025

📲 You can test the changes from this Pull Request in 📱 Mobile by scanning the QR code below to install the corresponding build.
App Name 📱 Mobile
Build TypedebugProd
Commit29c9dc7
Direct Downloadpocketcasts-app-prototype-build-pr3755-29c9dc7.apk
📲 You can test the changes from this Pull Request in 🚗 Automotive by scanning the QR code below to install the corresponding build.
App Name 🚗 Automotive
Build TypedebugProd
Commit29c9dc7
Direct Downloadpocketcasts-automotive-prototype-build-pr3755-29c9dc7.apk
📲 You can test the changes from this Pull Request in ⌚ Wear by scanning the QR code below to install the corresponding build.
App Name ⌚ Wear
Build TypedebugProd
Commit29c9dc7
Direct Downloadpocketcasts-wear-prototype-build-pr3755-29c9dc7.apk

@wpmobilebot
Copy link
Collaborator

wpmobilebot commented Mar 11, 2025

Project manifest changes for app

The following changes in the app's merged AndroidManifest.xml file were detected (build variant: release):

--- ./build/reports/diff_manifest/app/release/base_manifest.txt	2025-03-25 13:56:33.583689010 +0000
+++ ./build/reports/diff_manifest/app/release/head_manifest.txt	2025-03-25 13:57:25.313624218 +0000
@@ -1,8 +1,8 @@
 <?xml version="1.0" encoding="utf-8"?>
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
     package="au.com.shiftyjelly.pocketcasts"
-    android:versionCode="9326"
-    android:versionName="7.85-rc-3" >
+    android:versionCode="9319"
+    android:versionName="7.84-rc-4" >
 
     <uses-sdk
         android:minSdkVersion="24"
@@ -968,25 +968,29 @@
                 android:resource="@xml/large_player_widget" />
         </receiver>
         <receiver
+            android:name="au.com.shiftyjelly.pocketcasts.sharing.ItemSharedReceiver"
+            android:exported="false" />
+
+        <provider
+            android:name="au.com.shiftyjelly.pocketcasts.repositories.playback.auto.AlbumArtContentProvider"
+            android:authorities="au.com.shiftyjelly.pocketcasts.media.library.provider"
+            android:exported="true" /> <!-- The widget can't move from the core package or it gets deleted when the new APK is installed -->
+        <receiver
             android:name="au.com.shiftyjelly.pocketcasts.core.ui.widget.PodcastWidget"
             android:exported="true"
             android:label="@string/medium_player_classic_widget_label" >
             <intent-filter>
                 <action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
+                <action android:name="au.com.shiftyjelly.pocketcasts.core.ui.widget.PREVIOUS" />
+                <action android:name="au.com.shiftyjelly.pocketcasts.core.ui.widget.NEXT" />
+                <action android:name="au.com.shiftyjelly.pocketcasts.core.ui.widget.PLAY" />
+                <action android:name="au.com.shiftyjelly.pocketcasts.core.ui.widget.PAUSE" />
             </intent-filter>
 
             <meta-data
                 android:name="android.appwidget.provider"
-                android:resource="@xml/classic_player_widget" />
-        </receiver>
-        <receiver
-            android:name="au.com.shiftyjelly.pocketcasts.sharing.ItemSharedReceiver"
-            android:exported="false" />
-
-        <provider
-            android:name="au.com.shiftyjelly.pocketcasts.repositories.playback.auto.AlbumArtContentProvider"
-            android:authorities="au.com.shiftyjelly.pocketcasts.media.library.provider"
-            android:exported="true" /> <!-- Workers -->
+                android:resource="@xml/widget" />
+        </receiver> <!-- Workers -->
         <service
             android:name="androidx.work.impl.foreground.SystemForegroundService"
             android:directBootAware="false"

Go to https://buildkite.com/automattic/pocket-casts-android/builds/11221/canvas?sid=0195cd93-a6a3-4cbf-bfd7-0eeae6ce79c2, click on the Artifacts tab and audit the files.

@wpmobilebot
Copy link
Collaborator

wpmobilebot commented Mar 11, 2025

Project manifest changes for wear

The following changes in the wear's merged AndroidManifest.xml file were detected (build variant: release):

--- ./build/reports/diff_manifest/wear/release/base_manifest.txt	2025-03-25 13:57:45.213618288 +0000
+++ ./build/reports/diff_manifest/wear/release/head_manifest.txt	2025-03-25 13:58:03.853601165 +0000
@@ -1,8 +1,8 @@
 <?xml version="1.0" encoding="utf-8"?>
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
     package="au.com.shiftyjelly.pocketcasts"
-    android:versionCode="9326"
-    android:versionName="7.85-rc-3" >
+    android:versionCode="9319"
+    android:versionName="7.84-rc-4" >
 
     <uses-sdk
         android:minSdkVersion="26"
@@ -244,8 +244,23 @@
         <provider
             android:name="au.com.shiftyjelly.pocketcasts.repositories.playback.auto.AlbumArtContentProvider"
             android:authorities="au.com.shiftyjelly.pocketcasts.media.library.provider"
-            android:exported="true" />
+            android:exported="true" /> <!-- The widget can't move from the core package or it gets deleted when the new APK is installed -->
+        <receiver
+            android:name="au.com.shiftyjelly.pocketcasts.core.ui.widget.PodcastWidget"
+            android:exported="true"
+            android:label="@string/medium_player_classic_widget_label" >
+            <intent-filter>
+                <action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
+                <action android:name="au.com.shiftyjelly.pocketcasts.core.ui.widget.PREVIOUS" />
+                <action android:name="au.com.shiftyjelly.pocketcasts.core.ui.widget.NEXT" />
+                <action android:name="au.com.shiftyjelly.pocketcasts.core.ui.widget.PLAY" />
+                <action android:name="au.com.shiftyjelly.pocketcasts.core.ui.widget.PAUSE" />
+            </intent-filter>
 
+            <meta-data
+                android:name="android.appwidget.provider"
+                android:resource="@xml/widget" />
+        </receiver>
         <receiver
             android:name="com.google.android.gms.cast.framework.media.MediaIntentReceiver"
             android:exported="false" />

Go to https://buildkite.com/automattic/pocket-casts-android/builds/11221/canvas?sid=0195cd93-a6a3-4cbf-bfd7-0eeae6ce79c2, click on the Artifacts tab and audit the files.

@wpmobilebot
Copy link
Collaborator

wpmobilebot commented Mar 11, 2025

Project manifest changes for automotive

The following changes in the automotive's merged AndroidManifest.xml file were detected (build variant: release):

--- ./build/reports/diff_manifest/automotive/release/base_manifest.txt	2025-03-25 13:58:20.483584122 +0000
+++ ./build/reports/diff_manifest/automotive/release/head_manifest.txt	2025-03-25 13:58:35.613569242 +0000
@@ -1,8 +1,8 @@
 <?xml version="1.0" encoding="utf-8"?>
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
     package="au.com.shiftyjelly.pocketcasts"
-    android:versionCode="9326"
-    android:versionName="7.85-rc-3" >
+    android:versionCode="9319"
+    android:versionName="7.84-rc-4" >
 
     <uses-sdk
         android:minSdkVersion="28"
@@ -216,7 +216,23 @@
         <provider
             android:name="au.com.shiftyjelly.pocketcasts.repositories.playback.auto.AlbumArtContentProvider"
             android:authorities="au.com.shiftyjelly.pocketcasts.media.library.provider"
-            android:exported="true" /> <!-- Workers -->
+            android:exported="true" /> <!-- The widget can't move from the core package or it gets deleted when the new APK is installed -->
+        <receiver
+            android:name="au.com.shiftyjelly.pocketcasts.core.ui.widget.PodcastWidget"
+            android:exported="true"
+            android:label="@string/medium_player_classic_widget_label" >
+            <intent-filter>
+                <action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
+                <action android:name="au.com.shiftyjelly.pocketcasts.core.ui.widget.PREVIOUS" />
+                <action android:name="au.com.shiftyjelly.pocketcasts.core.ui.widget.NEXT" />
+                <action android:name="au.com.shiftyjelly.pocketcasts.core.ui.widget.PLAY" />
+                <action android:name="au.com.shiftyjelly.pocketcasts.core.ui.widget.PAUSE" />
+            </intent-filter>
+
+            <meta-data
+                android:name="android.appwidget.provider"
+                android:resource="@xml/widget" />
+        </receiver> <!-- Workers -->
         <service
             android:name="androidx.work.impl.foreground.SystemForegroundService"
             android:directBootAware="false"

Go to https://buildkite.com/automattic/pocket-casts-android/builds/11221/canvas?sid=0195cd93-a6a3-4cbf-bfd7-0eeae6ce79c2, click on the Artifacts tab and audit the files.

Copy link
Member

@geekygecko geekygecko left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is it possible to get the following closer to the design:

  1. The drop shadows are being cut off.
  2. Can the subtitle have some more horizontal padding.
  3. Can the two podcasts title and author be cut off similar to the design rather than wrapped?

Screenshot_20250312_153458

Screenshot 2025-03-12 at 3 48 10 pm

@mebarbosa mebarbosa requested a review from geekygecko March 12, 2025 13:43
@mebarbosa
Copy link
Contributor Author

Hey @geekygecko I addressed all comments for this PR.

Can the two podcasts title and author be cut off similar to the design rather than wrapped?

Regarding to this one, I asked about this here p1741786537792849/1741720182.869959-slack-C08HC6RUH40

@wpmobilebot wpmobilebot removed this from the 7.85 milestone Mar 17, 2025
@wpmobilebot wpmobilebot added this to the 7.86 milestone Mar 17, 2025
@wpmobilebot
Copy link
Collaborator

Version 7.85 has now entered code-freeze, so the milestone of this PR has been updated to 7.86.

@geekygecko
Copy link
Member

How's this change going? Is matching the design tricky?

@geekygecko
Copy link
Member

Did you see my message above? Is this PR ready to review?

@mebarbosa
Copy link
Contributor Author

@geekygecko Sorry. I miss the notification for this PR. Yes, it's ready for review

@geekygecko
Copy link
Member

The new paging is great!

The only minor issues are:

  • The drop shadow on white artwork doesn't look right.
  • @david-gonzalez-a8c there is quite a bit of padding between the artwork and the paging dots when compared with the featured component. Is this correct?
Screenshot_20250325_154804 Screenshot_20250325_154817

@geekygecko geekygecko merged commit abeef4a into main Mar 25, 2025
17 checks passed
@geekygecko geekygecko deleted the task/add-header-to-discover-collection branch March 25, 2025 22:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants