Skip to content

Conversation

@noisysocks
Copy link
Contributor

@noisysocks noisysocks commented Dec 3, 2025

Asana Task/Github Issue: N/A

Description

Refactors the ThemeProvider in the history special page to improve encapsulation. Instead of directly subscribing to theme updates via history.messaging.subscribe, ThemeProvider now calls a new onThemeUpdate method on the HistoryPage instance. This centralizes messaging bridge interactions within HistoryPage, aligning with patterns used in other special pages.

Testing Steps

  • Navigate to the History special page.
  • Change your system's theme (e.g., light/dark mode) and verify the History page theme updates correctly.
  • All existing history theme integration tests pass.

Checklist

Please tick all that apply:

  • I have tested this change locally
  • I have tested this change locally in all supported browsers
  • This change will be visible to users
  • I have added automated tests that cover this change
  • I have ensured the change is gated by config
  • This change was covered by a ship review
  • This change was covered by a tech design
  • Any dependent config has been merged

Open in Cursor Open in Web


Note

Adds HistoryPage.onThemeUpdate and updates ThemeProvider to subscribe via this API instead of accessing messaging directly.

  • HistoryPage API (special-pages/pages/history/src/index.js):
    • Add onThemeUpdate(callback) that delegates to this.messaging.subscribe('onThemeUpdate', callback).
  • ThemeProvider (special-pages/pages/history/app/global/Providers/ThemeProvider.js):
    • Replace direct history.messaging.subscribe('onThemeUpdate', ...) with history.onThemeUpdate(...) for theme updates.

Written by Cursor Bugbot for commit 1d17970. This will update automatically on new commits. Configure here.

Co-authored-by: randerson <randerson@duckduckgo.com>
@cursor
Copy link

cursor bot commented Dec 3, 2025

Cursor Agent can help with this pull request. Just @cursor in comments and I'll start working on changes in this branch.
Learn more about Cursor Agents

@netlify
Copy link

netlify bot commented Dec 3, 2025

Deploy Preview for content-scope-scripts ready!

Name Link
🔨 Latest commit 1d17970
🔍 Latest deploy log https://app.netlify.com/projects/content-scope-scripts/deploys/69321200689afd0008a0e8a1
😎 Deploy Preview https://deploy-preview-2074--content-scope-scripts.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@github-actions
Copy link

github-actions bot commented Dec 3, 2025

Temporary Branch Update

The temporary branch has been updated with the latest changes. Below are the details:

Please use the above install command to update to the latest version.

@github-actions
Copy link

github-actions bot commented Dec 3, 2025

[Beta] Generated file diff

Time updated: Thu, 04 Dec 2025 22:59:02 GMT

Apple
    - apple/pages/history/dist/index.js

File has changed

Integration
    - integration/pages/history/dist/index.js

File has changed

Windows
    - windows/pages/history/dist/index.js

File has changed

@noisysocks noisysocks marked this pull request as ready for review December 3, 2025 23:12
@noisysocks noisysocks requested review from a team, mgurgel and shakyShane as code owners December 3, 2025 23:12
@noisysocks noisysocks added this pull request to the merge queue Dec 8, 2025
Merged via the queue into main with commit f516b50 Dec 8, 2025
18 checks passed
@noisysocks noisysocks deleted the cursor/decouple-theme-provider-from-messaging-bridge-claude-4.5-opus-high-thinking-a781 branch December 8, 2025 09:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants