Skip to content

fix: Share the common app download page - #3566

Merged
marcnause merged 3 commits into
fossasia:mainfrom
shrutikbalwan:fix-3023-share-downloads
Sep 21, 2026
Merged

marcnause merged 3 commits into
fossasia:mainfrom
shrutikbalwan:fix-3023-share-downloads

Conversation

@shrutikbalwan

@shrutikbalwan shrutikbalwan commented Sep 16, 2026 •

Copy link
Copy Markdown
Contributor

Related to #3023

Change

The drawer's Share App action currently shares only its translated label. Include the common download page recommended in the issue discussion so recipients can choose Android, iOS, Windows, macOS or Linux. Keep the existing translated caption.

Validation

  • Focused Flutter analysis: no issues.
  • Existing Flutter suite: 8 tests passed on the isolated branch.
  • Formatting and git diff checks passed.
  • Native Windows/Linux builds passed in GitHub CI. Interactive native share-sheet verification remains pending.

Coordination

@rahul31124, this small draft implements the common download URL suggested in the issue. Please let me know if it overlaps with work already in progress. Native share-sheet verification remains pending.

Screenshots / Recordings

N/A: share payload only; drawer layout is unchanged.

Summary by Sourcery

Share the common PSLab download page alongside the localized app-sharing caption.

New Features:

  • Include the common PSLab download page in the Share App action so recipients can select their platform.

Enhancements:

  • Preserve the localized Share App caption while adding the download link to the shared content.

CI validation update

GitHub Actions run.

Passed: Codacy Static Code Analysis, Screenshots (Android), Linux ARM64 Flutter Build, Linux Flutter Build, Android Flutter Build, Windows Flutter Build, Web App Flutter Build, Validate PR title, Common Build, Detect Changes.

All application builds and Android/iPhone screenshots passed. The iPad screenshot job exceeded its time limit; maintainer rerun request.

Ready for review of the stated scope. Remaining manual checks and broader issue work above are not claimed complete.

Summary by CodeRabbit

  • New Features
    • Shared app messages now include a link to the application documentation.
    • Recipients can access setup, usage, and help information directly from the shared message.

Copilot AI lite review requested due to automatic review settings September 16, 2026 02:59
@coderabbitai

coderabbitai Bot commented Sep 16, 2026 •

Copy link
Copy Markdown

Review Change StackReview Change Stack

Understand this PR’s impact

Explore downstream dependencies and potential security impact with Blast Radius.

View blast radius →

Note

Reviews paused

It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Advanced

Run ID: a04019c3-da54-453d-927c-eb5566b72d8f

📥 Commits

Reviewing files that changed from the base of the PR and between 695649b and 16d3221.

📒 Files selected for processing (1)
  • lib/view/widgets/navigation_drawer.dart
🚧 Files skipped from review as they are similar to previous changes (1)
  • lib/view/widgets/navigation_drawer.dart

Included review availability: Your plan provides up to 8 included reviews per hour; 7 remain after this review.


📝 Walkthrough

Walkthrough

The share-app menu item now appends the PSLab documentation URL to the localized share text.

Changes

Share App Link

Layer / File(s) Summary
Share payload update
lib/view/widgets/navigation_drawer.dart
The share action now uses the corrected documentation URL after the localized share text.

Priority: ⬇️ Low

Estimated code review effort: 1 (Trivial) | ~5 minutes

Change: Feature

Suggested reviewers: marcnause

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly describes the main change: updating the Share App action to share the common app download page.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 0…
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create a new PR

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@sourcery-ai

sourcery-ai Bot commented Sep 16, 2026 •

Copy link
Copy Markdown
Contributor
Reviewer's guide (collapsed on small PRs)

Reviewer's Guide

The Share App action now sends the existing localized caption together with the common PSLab application download URL, enabling recipients to choose the appropriate platform while leaving the drawer layout unchanged.

Sequence diagram for sharing the common PSLab download page

sequenceDiagram
    actor User
    participant NavDrawer
    participant SharePlus
    participant ShareSheet

    User->>NavDrawer: onTap()
    NavDrawer->>SharePlus: share(ShareParams(text))
    SharePlus->>ShareSheet: Open share payload
    Note over SharePlus,ShareSheet: Localized caption + https://docs.pslab.io/application/Readme.html
Loading

File-Level Changes

Change Details Files
Extend the drawer’s Share App payload with the common PSLab download page while preserving the localized caption.
  • Append the shared download URL to the existing translated share text.
  • Keep the drawer UI and share action wiring otherwise unchanged.
lib/view/widgets/navigation_drawer.dart

Possibly linked issues


Tips and commands

Interacting with Sourcery

  • Trigger a new review: Comment @sourcery-ai review on the pull request.
  • Continue discussions: Reply directly to Sourcery's review comments.
  • Generate a GitHub issue from a review comment: Ask Sourcery to create an
    issue from a review comment by replying to it. You can also reply to a
    review comment with @sourcery-ai issue to create an issue from it.
  • Generate a pull request title: Write @sourcery-ai anywhere in the pull
    request title to generate a title at any time. You can also comment
    @sourcery-ai title on the pull request to (re-)generate the title at any time.
  • Generate a pull request summary: Write @sourcery-ai summary anywhere in
    the pull request body to generate a PR summary at any time exactly where you
    want it. You can also comment @sourcery-ai summary on the pull request to
    (re-)generate the summary at any time.
  • Generate reviewer's guide: Comment @sourcery-ai guide on the pull
    request to (re-)generate the reviewer's guide at any time.
  • Resolve all Sourcery comments: Comment @sourcery-ai resolve on the
    pull request to resolve all Sourcery comments. Useful if you've already
    addressed all the comments and don't want to see them anymore.
  • Dismiss all Sourcery reviews: Comment @sourcery-ai dismiss on the pull
    request to dismiss all existing Sourcery reviews. Especially useful if you
    want to start fresh with a new review - don't forget to comment
    @sourcery-ai review to trigger a new review!

Customizing Your Experience

Access your dashboard to:

  • Enable or disable review features such as the Sourcery-generated pull request
    summary, the reviewer's guide, and others.
  • Change the review language.
  • Add, remove or edit custom review instructions.
  • Adjust other review settings.

Getting Help

@shrutikbalwan
shrutikbalwan marked this pull request as ready for review September 16, 2026 03:24

@sourcery-ai sourcery-ai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Hey - I've reviewed your changes and they look great!

Sourcery assessment

Needs a human reviewer. The share action now sends an additional fixed URL to recipients whenever users share the app, so an incorrect or unintended link could be distributed externally. Reverting stops future shares but cannot retract messages already sent.


Sourcery is free for open source - if you like our reviews please consider sharing them ✨

@shrutikbalwan

Copy link
Copy Markdown
Contributor Author

@rahul31124, the iPad screenshot job was cancelled with this annotation: The job has exceeded the maximum execution time of 30m0s. All application builds and the Android/iPhone screenshot jobs passed.

Could a maintainer rerun this job? My targeted rerun request on the companion PR #3567 returned 403: Must have admin rights to Repository, so I cannot initiate the rerun myself. This PR only changes the share payload; the screenshot workflow is unchanged.

@github-actions

github-actions Bot commented Sep 16, 2026 •

Copy link
Copy Markdown
Contributor

Build Status: Build workflow failed. Please check the Actions logs for details.

Build artifacts to test

(Available before failure)

Note: Screenshots are not generated on failed builds. Below are the latest screenshots from the pr-screenshots branch, if they exist.

Screenshots

Android Screenshots
iPhone Screenshots
iPad Screenshots

Comment thread lib/view/widgets/navigation_drawer.dart Outdated

@rahul31124 rahul31124 left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

@marcnause, I think we can proceed with this PR for now. For adding the URL, I can improve the UI later to have a proper sheet.

@shrutikbalwan, for now, just update the PR to use the correct URL link.

sourcery-ai[bot]
sourcery-ai Bot previously approved these changes Sep 20, 2026

@sourcery-ai sourcery-ai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Sourcery assessment

Approved.

@sourcery-ai
sourcery-ai Bot dismissed their stale review September 20, 2026 18:23

Sourcery withdrew this approval because the latest commits introduced blocking findings.

@marcnause
marcnause force-pushed the fix-3023-share-downloads branch from b162861 to 695649b Compare September 21, 2026 20:46
sourcery-ai[bot]
sourcery-ai Bot previously approved these changes Sep 21, 2026

@sourcery-ai sourcery-ai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Sourcery assessment

Approved.

@sourcery-ai
sourcery-ai Bot dismissed their stale review September 21, 2026 21:00

Sourcery withdrew this approval because the latest commits introduced blocking findings.

@marcnause
marcnause enabled auto-merge (squash) September 21, 2026 21:00
@marcnause
marcnause merged commit b63d97f into fossasia:main Sep 21, 2026
16 of 17 checks passed
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.

4 participants