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

Fix an issue with a missing "Mark as Unread" button in the More menu #23917

Merged
merged 4 commits into from
Jan 9, 2025

Conversation

kean
Copy link
Contributor

@kean kean commented Dec 20, 2024

Fixes #23916.

Changes:

  • Revert the change that removed the "Mark as Read/Unread" button from the post "More" menu
  • Add an understated "Read" indicator in the list (new feature)

This change applies to P2s. I don't think regular blogs support this.

To test:

  • Verify that the post you read have a checkmark in the lsit
  • Verify that after you open an unread post and return to the list, it shows the checkmark
  • Verify that you can toggle the "read" status using the "more" menu and that it updates state on the web

Regression Notes

  1. Potential unintended areas of impact

  2. What I did to test those areas of impact (or what existing automated tests I relied on)

  3. What automated tests I added (or what prevented me from doing so)

PR submission checklist:

  • I have completed the Regression Notes.
  • I have considered adding unit tests for my changes.
  • I have considered adding accessibility improvements for my changes.
  • I have considered if this change warrants user-facing release notes and have added them to RELEASE-NOTES.txt if necessary.

Testing checklist:

  • WordPress.com sites and self-hosted Jetpack sites.
  • Portrait and landscape orientations.
  • Light and dark modes.
  • Fonts: Larger, smaller and bold text.
  • High contrast.
  • VoiceOver.
  • Languages with large words or with letters/accents not frequently used in English.
  • Right-to-left languages. (Even if translation isn’t complete, formatting should still respect the right-to-left layout)
  • iPhone and iPad.
  • Multi-tasking: Split view and Slide over. (iPad)

@kean kean added the Reader label Dec 20, 2024
@kean kean requested a review from crazytonyli December 20, 2024 17:20
@kean kean added this to the 25.6 ❄️ milestone Dec 20, 2024
@kean kean changed the title Fix/toggle seen missing Fix an issue with a missing "Mark as Unread" button in the More menu Dec 20, 2024
@kean kean enabled auto-merge December 20, 2024 17:23
@wpmobilebot
Copy link
Contributor

wpmobilebot commented Dec 20, 2024

WordPress Alpha📲 You can test the changes from this Pull Request in WordPress Alpha by scanning the QR code below to install the corresponding build.
App NameWordPress Alpha WordPress Alpha
ConfigurationRelease-Alpha
Build Numberpr23917-4cd8e57
Version25.6
Bundle IDorg.wordpress.alpha
Commit4cd8e57
App Center BuildWPiOS - One-Offs #11317
Automatticians: You can use our internal self-serve MC tool to give yourself access to App Center if needed.

@wpmobilebot
Copy link
Contributor

Jetpack Alpha📲 You can test the changes from this Pull Request in Jetpack Alpha by scanning the QR code below to install the corresponding build.
App NameJetpack Alpha Jetpack Alpha
ConfigurationRelease-Alpha
Build Numberpr23917-d21ea43
Version25.6
Bundle IDcom.jetpack.alpha
Commitd21ea43
App Center Buildjetpack-installable-builds #10256
Automatticians: You can use our internal self-serve MC tool to give yourself access to App Center if needed.

@kean kean modified the milestones: 25.6 ❄️, 25.7 Jan 9, 2025
@kean kean force-pushed the fix/toggle-seen-missing branch from d21ea43 to 4cd8e57 Compare January 9, 2025 17:19
@kean kean removed the request for review from crazytonyli January 9, 2025 17:19
@kean kean changed the base branch from trunk to christmas-feature-branch January 9, 2025 17:19
@kean kean disabled auto-merge January 9, 2025 17:19
@kean kean merged commit 67ba286 into christmas-feature-branch Jan 9, 2025
1 of 17 checks passed
@kean kean deleted the fix/toggle-seen-missing branch January 9, 2025 17:19
@kean kean mentioned this pull request Jan 9, 2025
14 tasks
@@ -360,6 +370,17 @@ private final class ReaderPostCellView: UIView {
}
}

private func configureSeenCheckmarkIfNeeded() {
guard !isSeenCheckmarkConfigured else { return }
isSeenCheckmarkConfigured = true
Copy link
Contributor

Choose a reason for hiding this comment

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

Out of curiosity, why is a special flag used here? If the idea is to prevent repeated changes to image, maybe a lazy var is more appropriate?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

It's a bit cumbersome, but the view is created eagerly during the setup:

let headerView = UIStackView(alignment: .center, [buttonAuthor, dot, timeLabel, seenCheckmark])

Ideally, I should create it lazily and add it lazily to the stack view, but I felt it was simpler this way.

Copy link
Contributor

Choose a reason for hiding this comment

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

I guess you could make a lazy var seenCheckmar: UIImage so that this configuration function can be called repeatedly. Maybe it's personal preference, but I'm not a big fan of boolean flag type of states.

github-merge-queue bot pushed a commit that referenced this pull request Jan 13, 2025
* Rename ImageLoadingController

* Add LightboxViewController to replace WPImageViewController

* Integrate LightboxViewController in Reader

* Add Media support in LightboxViewController

* Add convenience init to LightboxViewController

* Integrate LightboxViewController in SiteMedia

* Integrate LightboxViewController in ReaderDetailsCoordinator (cover image)

* INtegrate in DefaultContentCoordinator

* Integrate LightboxViewController in Guteberg

* Integrate LightboxViewController in ExternalMediaPickerViewController

* Integrate LightboxViewController in PostSettingsViewController (featured image)

* Remove FeaturedImageViewController (ObjC)

* Rewrite PostFeaturedImageCell

* Integrate LightboxViewController in ReaderCommentsViewController

* Update WPRichTextImage to use AsyncImageView

* Automatically pick thumbnail when available

* Remove WPImageViewController

* Update release notes

* Remove ImageLoader

* Remove ImageDimensionParser

* Update MediaItemHeaderView to use AsyncImageView instead of CachedAnimatedImageView

* Fix code formatting in RichTextView

* Update AnimatedGifAttachmentViewProvider to use GIFImageView directly

* Remove SolidColorActivityIndicator

* Remove CachedAnimatedImageView

* Remove GIFPlaybackStrategy

* Update EditorMediaUtility to use ImageDownloader directly (without AuthenticatedImageDownload redirect)

* Remove AuthenticatedImageDownload

* Update MediaExternalExporter to use ImageDownloader for downloading GIF data

* Remove AnimatedImageCache

* Remove remaining AlamofireImage usages from the anouncement cells

* Remove AlamofireImageCacheAdapter

* Remove AlamofireImage

* Add ImagePrefetcher

* Update releaes notes

* Add ImageRequest support in AsyncImageView

* Add ImageSize

* Fix an issue with blogging reminders flow not being shown after publishing a new post

* Remove unused LightNavigationController

* Remove BottomSheetViewController usage from BloggingReminders flow

* Simplify BloggingRemindersFlowIntroViewController

* Add SpacerView

* Add BottomToolbarView

* Fix notice covering the blogging reminders fow

* Replace FancyButton

* Add close button to BloggingRemindersFlowSettingsViewController

* Fix BloggingRemindersTimeSelectionViewController presentation

* Remove FancyButton from BloggingRemindersPushPromptViewController

* Remove dismiss button (it now shows back)

* Update BloggingRemindersPushPromptViewController layout

* Remove FancyButton from BloggingRemindersFlowCompletionViewController

* Update BloggingRemindersFlowCompletionViewController layout

* Update releaes notes

* Fix typo in release notes

* Fix compliance popover accessibility settings

* Fix an issue with compliance popover not dismissing

* Update release notes

* Remove unused CircularProgressView extensions

* Remove BottomSheetViewController usage from JetpackBrandingCoordinator

* Remove ottomSheetViewControllerTests

* Remove BottomSheetViewController

* Remove DrawerPresentationController

* Update release notes

* Add Share action to the site link on dashboard

* Remove duplicated Share actions

* Remove duplicated Strings.ok

* Update release notes

* Fix layout issues in Privacy Settings

* Add assertion

* Update release notes

* Rename WordPressMedia to AsyncImageKit

* Remove MediaHost from AsyncImageKit

* Move ImageDownloader.shared to AsyncImageKit

* Move AsyncImageView and other related types to AsyncImageKit

* Fix unit tests

* Cleanup MediaHost initializers

* Optimize account lookup

* Fix MediaHostTests

* Fix crash in ReaderDetailFeaturedImageView

* Fix RTL support in WebKitViewController

* Use semantic back/forward chevrons in other places

* Update StatsBaseCell

* Update SiteStatsTableHeaderView

* Replace disclosure-chevron and editor-chevron-left

* Fix remainig incorrect chevron usages

* Remove remainig chevron images

* Update release notes

* Fix separator insets on homepage

* Fix an issue with clear navigation bar background in revision browser

* Fix an issue with clear navigation bar background in revision browser

* Fix toolbar inset to safe area in revision browser

* Modernize menus and stuff

* Fix MediaRequestAuthenticatorTests

* Remove preflight connection check when sending replies (can be lagging behind)

* Fix an issue with comments disppearing if request fails

* Update other screens using TextView

* Update release notes

* Fix formatting

* Fix an issue with referrers showing invalid icons

* Update release notes

* Remove some of the scenarios where isInternetConnected used

* Update site menu style on iPhone

* Update release notes

* Integrate zoom transitions in Theme browser

* Update release notes

* Fix tint colors in wpios

* Remove UIAppColor.brand

* Enable zoom transitions in Reader (iPad)

* Update release notes

* Remove unused isVisibleInScrollView

* Enable toolbar hiding on iPad

* Fix ReaderDetailFeaturedImageView gradienet showing up when no image is present

* Fix an issue with Publisize options appearing in the prepublishing sheet for XMLRPC sites

* Fix code formatting and remove unused imports

* Move SiteIconView to WordPressUI

* Update Share extension to use SiteIconView

* Remove UIImageView+Blavatar

* Use firstLetter

* Update release notes

* Disable universal links support for QR code login

* Fix an issue with the confirmation screen shown more than once

* Update release notes

* Enable fast deceleration for filters on the Discover tab

* Update release notes

* Show selected filter in the Discover navigation bar

* Update release notes

* Remove unused makeCreateButtonAnnouncementAlertController

* Add scroll-to-top button to Reader

* Cleanup

* Update design for iPad

* Add analytics

* Update releaes notes

* Flatten a nested localized string to avoid `genstrings` failure

* Import `WordPressUI` in `SiteIconViewModelTests`

Otherwise, it won't build

* Add initial MediaPicker implementation

* Add initial PostSettingsFeaturedImageCell implementation

* Add configurable MediaPicker content

* Add ViewModel to PostSettingsFeaturedImageCell

* Add reuseIdentifier for featured image cells

* Pass selection from MediaPicker to PostSettingsFeaturedImageViewModel

* Show upload status using PostMediaUploadItemView

* Rename MediaUploadItemViewModel

* Add PostSettingsFeaturedImageUploadView to show upload progress

* Simlify how the app shows media upload status

* Handle upload failure

* Implement featured image save

* Add support for showing a selected featured image

* Add support for removing featured image

* Simplify lightbox

* Add support for camera as a source

* Add .siteMedia(blog:) source

* Add ImagePlayground source support

* Add ImagePlayground support in MediaPicker

* Add free photos and GIFs support to MediaPicker

* Remove unused media upload code from PostSettingsViewController

* Remove WPTableViewActivityCell

* Remove WPProgressTableViewCell

* Remvove unused featured image size

* Remove more unused code

* Remove unused code

* Add SiteMediaImageView

* Remove unused code

* Integrate FeaturedImageDelegate

* Fix SiteMediaImage background when loading with spinner

* Fix animations

* Add zoom transition

* Add shadow to more menu

* Make the entire cell tappable

* Add View action

* Add replace action

* Show spinner when replacing an image

* Remove unused reloadFeaturedImageCell

* Update release notse

* Revert "Update site menu style on iPhone"

This reverts commit 565a34b.

* Fix an issue with wrong cover images appearing in Reader (#23914)

* Fix an issue with wrong cover images appearing in Reader

* Update release notes

* Update release notes

* Point back to wpios-edition

* Fix an issue with non-stable order in Posts and Pages in stats (#23915)

* Fix an issue with non-stable order in Posts and Pages in stats

* Update release notes

* Update release notes

* Fix an issue with a missing "Mark as Unread" button in the More menu (#23917)

* Add missing toggle read/unread button

* Show read status in the list

* Update release notes

* Update release notes

* Add missing social sharing icons (#23918)

* Add missing social sharing icons

* Update release notes

* Update release notes

* Update release notes

* Fix build

* Update UI tests

* Use medium font for main navigation area in Reader to align with Home

* Remove commented-out code

* Add context menus and previews for sites in Reader (#23964)

* Fix l10n typo

* Add Unsubscribe context menu to Reader sidebar sites

* Extract ReaderSiteFavoriteButton

* Move actions to ReaderSidebarSubscriptionCell

* Extract ReaderSubscriptionContextMenu and add Share

* Add Notification Settings and Copy Link buttons

* Add context menu for sites in Subscriptions view

* Add previews

* Fix notification settings sometimes being clipped on iPad

* Fix layout in ReaderSubscriptionCel actions

* Update release notes

* Fix more button color in dark mode

* Fix an issue with fullscreen button in reply view clipped by the notch (#23965)

* Fix an issue with fullscreen button in reply view clipped by the notch

* Update release notes

* Fix display of certain topics in Discover recommendations

* Remove "Lazy Images" Jetpack option (#23966)

* Remove lazy loading:

* Add error handling

* Update release notes

* Update WordPressKit (has lazy-load fix)

* Update release notes

* Reoder site actions

* Update release notes

* Add missing imports

---------

Co-authored-by: Gio Lodi <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Reader: Mark as Unseen
3 participants