Skip to content

Jess/271 multi share#272

Open
jesscmoore wants to merge 26 commits intodevfrom
jess/271_multi_share
Open

Jess/271 multi share#272
jesscmoore wants to merge 26 commits intodevfrom
jess/271_multi_share

Conversation

@jesscmoore
Copy link
Copy Markdown
Collaborator

@jesscmoore jesscmoore commented Apr 8, 2026

Pull Request Details

What issue does this PR address

  • Supports resourceNames parameter to GrantPermissionUI allowing user to alternately provide a list of resources on which to perform the grant permission operation.

Associated Issue

Type of Change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • This change requires a documentation update

breaking change:

After PR merge, all apps that use GrantPermissionUi() with resourceName: 'filename', now need to change to use resourceNames: [filename'], as per updated Readme. Demopod apps in solidui and solidpod are updated.

How Has This Been Tested?

First make sure you have webids of two users of whichever app you are testing, as sharing will fail if the recipient has not logged into that app before to create the requisite app/data folder and permission log file. Use charliesolidtester's webid for the recipient if desired.

  1. Test of Sharing Multiple Files

Currently only the personallibrary app has been modified to demonstrate sharing multiple files. However the same changes can easily be made in notepod or communitypod for sharing multiple files. It can probably easily be added in filebrowser.

Better on a mobile device, as quick to add books. Can only use android, as install on current iOS devices requires setup with signing certificate (not yet added).

Preferable, connect a physical android device:

  • Android: make sure developer mode on, set to receive files by usb
cd personallibrary
gco jess/16_multi_share
flutter devices <- use to find device id
flutter run --debug -d [device id]
  • Add 2 books to your library using mobile camera scanner, as it dynamically focusses, until the barcode is recognised, usually < 1 sec. Follow the Adding Book instructions in the README of this branch.
  • Share multiple books - follow the 'Sharing Books' instructions in the README of this branch.
  1. Testing the branch still supports single file sharing

This can be done in apps:

  • personal Library by just selecting the share icon on a single book record item,
  • solidpod/example Demopod app.

Here is how to do it with Demopod. Again make sure you have two accounts.

cd solidpod/example
vi pubspec.yaml <- point solidui to ../../solidui
  • First make sure you have saved a file in that user's Pod for this app. Click the add file button at the top, enter key and value, and save. This saves the file to keyvalue/key-value.ttl
  • From menu, click 'Share a specified resource', fill in the sharing page as usual, by selecting 'Share Resource' and filling in the grant permission form, providing the webid of someone else who uses DemoPod, and hit 'Grant Permission'. Then inspect the changes to the current permissions and permission history on the sharing page.
  • From the menu, click 'Share any resource' button. In the text field, enter the file name keyvalue/key-value.ttl`. Then follow steps in previous step to share it.

Checklist

Complete the check-list below to ensure your branch is ready for PR.

  • Screenshots included in linked issue #
  • Changes adhere to the style and coding guidelines
  • I have performed a self-review of my code
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation
  • Any dependent changes have been merged and published in downstream modules
  • The update contains no confidential information
  • The update has no duplicated content
  • No lint check errors are related to these changes (make prep or flutter analyze lib)
  • Integration test dart test output or screenshot included in issue #
  • I tested the PR on these devices:
    • Android
    • iOS
    • Linux
    • MacOS
    • Windows
    • Web
  • I have identified reviewers
  • The PR has been approved by reviewers

Finalising

Once PR discussion is complete and reviewers have approved:

  • Merge dev into the this branch
  • Resolve any conflicts
  • Add a one line summary into the CHANGELOG.md
  • Push to the git repository and review
  • Merge the PR into dev

@jesscmoore jesscmoore requested a review from gjwgit April 10, 2026 06:54
@anushkavidanage
Copy link
Copy Markdown
Contributor

Unfortunately, I am getting error MSB8066 when trying to build the app using this branch. flutter clean did not work. Will investigate further.

@jesscmoore
Copy link
Copy Markdown
Collaborator Author

error MSB8066

HI @anushkavidanage, Sounds like a windows issue. Can you try verbose mode? Other suggestions below.

To resolve the issue, try the following steps:

Run flutter clean, delete the build/windows folder, and execute flutter pub get.
Ensure Visual Studio 2022 (or later) is installed with the "Desktop development with C++" workload and the Windows SDK.
Run flutter doctor -v to verify all dependencies are correctly configured.
If the error persists, disable parallel builds by editing the .vcxproj file or running MSBuild with -m:1. 
Check for special characters or spaces in the project path and move the project to a simpler directory if needed. 
Use flutter run -d windows -v to obtain verbose logs that may reveal the specific underlying cause. 
If none of these steps work, consider reinstalling Visual Studio or regenerating the project files using flutter create . --platforms=windows. 

@jesscmoore
Copy link
Copy Markdown
Collaborator Author

In regards testing, please test with either

The example app in solidui seems to be out of date with unrelated bugs

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