Activity Log: free-tier follow-ups (inert overlay + branded illustration)#48531
Activity Log: free-tier follow-ups (inert overlay + branded illustration)#48531
Conversation
Per #48527 (and the original PR #48418 review): the `aria-disabled` + `tabindex="-1"` + `pointer-events: none` triple was chosen to keep the `title` upgrade tooltip working in Firefox. We're accepting that tradeoff and going back to the cleaner `inert` attribute, which blocks pointer + keyboard interaction and hides descendants from the a11y tree in one shot. Firefox suppresses `title` tooltips inside an inert subtree, so the upgrade nudge won't appear there — accepted per the issue. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
- Swap the upsell callout illustration for the Jetpack-branded version (per #48418 (comment)). Filename kept as `activity-logs-callout-illustration.svg` so the webpack import in `UpsellCallout.tsx` resolves untouched. - Lowercase "activity logs" in the upsell title — sentence case to match Jetpack copy conventions. - Drop the inert-revert changelog from the previous commit; that change has no user-visible behavior shift, so a single user-benefit entry covering the visible refresh suffices. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
Are you an Automattician? Please test your changes on all WordPress.com environments to help mitigate accidental explosions.
Interested in more tips and information?
|
|
Thank you for your PR! When contributing to Jetpack, we have a few suggestions that can help us test and review your patch:
This comment will be updated as you work on your PR and make changes. If you think that some of those checks are not needed for your PR, please explain why you think so. Thanks for cooperation 🤖 Follow this PR Review Process:
If you have questions about anything, reach out in #jetpack-developers for guidance! Jetpack plugin: No scheduled milestone found for this plugin. If you have any questions about the release process, please ask in the #jetpack-releases channel on Slack. |
Code Coverage SummaryThis PR did not change code coverage! That could be good or bad, depending on the situation. Everything covered before, and still is? Great! Nothing was covered before? Not so great. 🤷 |
The DataViews "Manage backup" row action was a disabled placeholder waiting for a future Backup wp-admin page. Wire it up to open Calypso's Backup restore flow for the row's rewind point in a new tab — `https://wordpress.com/backup/{calypsoSlug}/restore/{rewindId}` — which gives users an actionable path today without waiting on the in-progress port. - `actions.tsx`: read `calypsoSlug` from Initial_State at module load, render the action only when the row is rewindable AND has a `rewindId` AND a slug is available, and on click `window.open` the Calypso URL with `noopener,noreferrer`. Also accept an optional `tracks` handle and emit a `jetpack_activity_log_manage_backup_click` event. - `index.tsx`: pass `tracks` through to `useActivityActions`, and drop the "Coming soon" tooltip MutationObserver effect — the action is no longer disabled so the textContent-matching DOM hack is obsolete. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Jetpack Cloud (cloud.jetpack.com) is the Jetpack-branded analog of the Calypso Backup flow and is what we want users to land on from a Jetpack admin surface. Swap the deep-link host accordingly: `https://cloud.jetpack.com/backup/{calypsoSlug}/restore/{rewindId}`. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
Thanks for the review @CGastrell!
Can't spot the issue in my testing. Are you seeing a different behavior than this: https://wordpress.github.io/gutenberg/?path=/docs/dataviews-dataviews--docs
Addressing now! |
Yeah, I realized this is my very specific screen width playing tricks on me. I edited the comment just for papertrail. |
- Label "Manage backup" → "Restore backup" — the button opens the Backup restore flow, so the label should describe that. - Tracks event renamed in lockstep: jetpack_activity_log_manage_backup_click → jetpack_activity_log_restore_backup_click. - Document in the hook's docblock that the cloud.jetpack.com deep-link is a stop-gap until the Backup wp-admin port (#48236) lands. After that ships, every row action here should point at the in-admin Backup page instead of cloud.jetpack.com so users stay inside their own wp-admin. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
This is ready for a final review. |
…ion) (#48531) * Activity Log: revert free-tier search overlay to use inert Per #48527 (and the original PR #48418 review): the `aria-disabled` + `tabindex="-1"` + `pointer-events: none` triple was chosen to keep the `title` upgrade tooltip working in Firefox. We're accepting that tradeoff and going back to the cleaner `inert` attribute, which blocks pointer + keyboard interaction and hides descendants from the a11y tree in one shot. Firefox suppresses `title` tooltips inside an inert subtree, so the upgrade nudge won't appear there — accepted per the issue. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> * Activity Log: refresh free-tier upsell illustration + lowercase title - Swap the upsell callout illustration for the Jetpack-branded version (per #48418 (comment)). Filename kept as `activity-logs-callout-illustration.svg` so the webpack import in `UpsellCallout.tsx` resolves untouched. - Lowercase "activity logs" in the upsell title — sentence case to match Jetpack copy conventions. - Drop the inert-revert changelog from the previous commit; that change has no user-visible behavior shift, so a single user-benefit entry covering the visible refresh suffices. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> * Activity Log: deep-link Manage backup action to Calypso restore flow The DataViews "Manage backup" row action was a disabled placeholder waiting for a future Backup wp-admin page. Wire it up to open Calypso's Backup restore flow for the row's rewind point in a new tab — `https://wordpress.com/backup/{calypsoSlug}/restore/{rewindId}` — which gives users an actionable path today without waiting on the in-progress port. - `actions.tsx`: read `calypsoSlug` from Initial_State at module load, render the action only when the row is rewindable AND has a `rewindId` AND a slug is available, and on click `window.open` the Calypso URL with `noopener,noreferrer`. Also accept an optional `tracks` handle and emit a `jetpack_activity_log_manage_backup_click` event. - `index.tsx`: pass `tracks` through to `useActivityActions`, and drop the "Coming soon" tooltip MutationObserver effect — the action is no longer disabled so the textContent-matching DOM hack is obsolete. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> * Activity Log: point Manage backup at cloud.jetpack.com instead of WPCOM Jetpack Cloud (cloud.jetpack.com) is the Jetpack-branded analog of the Calypso Backup flow and is what we want users to land on from a Jetpack admin surface. Swap the deep-link host accordingly: `https://cloud.jetpack.com/backup/{calypsoSlug}/restore/{rewindId}`. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> * Activity Log: rename action to "Restore backup", flag link as temporary - Label "Manage backup" → "Restore backup" — the button opens the Backup restore flow, so the label should describe that. - Tracks event renamed in lockstep: jetpack_activity_log_manage_backup_click → jetpack_activity_log_restore_backup_click. - Document in the hook's docblock that the cloud.jetpack.com deep-link is a stop-gap until the Backup wp-admin port (#48236) lands. After that ships, every row action here should point at the in-admin Backup page instead of cloud.jetpack.com so users stay inside their own wp-admin. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>






Fixes #48527
Proposed changes
aria-disabled+tabindex="-1"+pointer-events: nonetriple for a singleinertattribute on.dataviews__search.inertnatively blocks pointer + keyboard interaction and removes descendants from the a11y tree. Tradeoff: Firefox suppressestitletooltips inside an inert subtree, so the upgrade nudge won't appear there — accepted per the issue.https://cloud.jetpack.com/backup/{calypsoSlug}/restore/{rewindId}). Drops the "Coming soon" tooltip MutationObserver hack the placeholder needed.useActivityActionsdocblock.Related product discussion/links
Does this pull request change what data or activity we track or use?
Adds a new Tracks event:
jetpack_activity_log_restore_backup_click(props:rewind_id,activity_name) when the user clicks the "Restore backup" row action.Testing instructions
Free-tier follow-ups:
Restore backup action:
9. On a site with Backup access, navigate to Jetpack → Activity Log.
10. Hover a rewindable activity row (one with a backup icon in Calypso) — the "Restore backup" action should be present and enabled.
11. Click it — a new tab should open at
https://cloud.jetpack.com/backup/{your-site-slug}/restore/{rewind-id}.12. Rows that aren't rewindable should not show the action at all (not even disabled).
13. Confirm a
jetpack_activity_log_restore_backup_clickTracks event fires on click.