Skip to content

Tony/257 notification#266

Open
tonypioneer wants to merge 8 commits intodevfrom
tony/257_notification
Open

Tony/257 notification#266
tonypioneer wants to merge 8 commits intodevfrom
tony/257_notification

Conversation

@tonypioneer
Copy link
Copy Markdown
Collaborator

@tonypioneer tonypioneer commented Apr 2, 2026

Pull Request Details

What issue does this PR address

  • Added a series of methods related to notification.
  • Added a notification icon on the AppBar.
  • Added a notification centre.
  • Fixed some minor issues in POD initialisation.

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

How Has This Been Tested?

Build and run the app.

Please modify the pointed branches of SolidUI and SolidPod in pubspec.yaml to dev before merge.

Checklist

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

  • Screenshots included in linked issue APPBAR: Add notification when resource shared to user #257
  • 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
  • - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ] - [ ]

@tonypioneer tonypioneer requested a review from jesscmoore April 2, 2026 13:57
@tonypioneer tonypioneer linked an issue Apr 2, 2026 that may be closed by this pull request
3 tasks
Copy link
Copy Markdown
Collaborator

@jesscmoore jesscmoore left a comment

Choose a reason for hiding this comment

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

Hi Tony,
I tested this branch using the matching notepod branch. I used my standard webid, which has many notes in its pods. However on login, I got the setup pod window, which shouldn't happen. Can you figure out why and resolve?

Image

@tonypioneer
Copy link
Copy Markdown
Collaborator Author

tonypioneer commented Apr 6, 2026

Hi Tony,
I tested this branch using the matching notepod branch. I used my standard webid, which has many notes in its pods. However on login, I got the setup pod window, which shouldn't happen. Can you figure out why and resolve?

Image

Hi @jesscmoore, thank you very much for the feedback.

The current notification mechanism works like this:

When a sender sends a notification to a receiver, the system creates an unencrypted JSON file inside the receiver’s app/notification directory.

After the receiver logs in, and also during runtime every 10 seconds, the app will check this folder for new messages automatically. If new notifications are found, the user is alerted through a badge on the appbar notification icon.

The notification folder is a newly introduced directory under the app folder. During POD initialisation, an .acl file also needs to be created inside this folder.

If the user does not already have this folder, a Setup Wizard will appear. By clicking the Resources button on the bottom-right of the wizard, the user can see that this initialisation step only creates the notification folder and its corresponding .acl file.

This is why there will be a setup wizard after login.

But before the test, please back up all the notes on the POD or use a test account.

Copy link
Copy Markdown
Collaborator

@jesscmoore jesscmoore left a comment

Choose a reason for hiding this comment

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

Thanks @tonypioneer, I've now tested this well with notepod. Works nicely. It would be good to have a little tuning of this branch in solidui. Otherwise works really nicely!! Is the notification centre all internal to the app, or is there integration with the platform notification system?

  1. With the notification icon in appbar, on iphone17 (simulator running iOS26.4 in debug mode), there is not space for 7 icons between the hamburger and the 'more' dots icons. The number of icons in the middle should probably be limited to 5 with others moved to 'more' in very narrow screens.
Image
  1. The list item notification text can be briefer. Suggest change the text to:

'Shared to you: [fileTitle]'
[Keep the subtitle as is]

Maybe use the info icon rather than email icon.
Suggest that the delete icon, and new symbol on email icon, and number badge on notification icon in app bar are grey rather than red.

Screenshot 2026-04-06 at 20 11 39
  1. Suggest also make the notification message more succinct, to something like below. It will need to have a scrollbar so that it displays when the expanded tile is shown.

[Date time]

(Next bit in bold, where id is the username part of their webid]
[id] shared the
[title]
file to you

[next bit in normal font]
with [permissions] permission

[horizontal line]
Expanding tile with label 'Details' and content in smaller text:
Date: [date time]
File: [fileUrl]
Title: [fileTitle]
Shared by: [permission granter]
Owner: [resource owner]
Permissions: [permissions]

The Delete icon should be an elevated button like the close button, but in red.

Image

@tonypioneer
Copy link
Copy Markdown
Collaborator Author

Thanks @tonypioneer, I've now tested this well with notepod. Works nicely. It would be good to have a little tuning in notepod.

  1. With the notification icon in appbar, on iphone17 (simulator running iOS26.4 in debug mode), there is not space for 7 icons between the hamburger and the 'more' dots icons. The number of icons in the middle should probably be limited to 5 with others moved to 'more' in very narrow screens.
Image
  1. The list item notification text can be briefer. Suggest change the text to:

'Shared to you: [fileTitle]'
[Keep the subtitle as is]

Maybe use the info icon rather than email.

  1. Suggest also make the notification message more succinct, to something like below. It will need to have a scrollbar so that it displays when the expanded tile is shown.

[Date time]

(Next bit in bold, where id is the username part of their webid]
[id] shared the
[title]
file to you

[next bit in normal font]
with [permissions] permission

[horizontal line]
Expanding tile with label 'Details' and content in smaller text:
Date: [date time]
File: [fileUrl]
Title: [fileTitle]
Shared by: [permission granter]
Owner: [resource owner]
Permissions: [permissions]

Image

Thanks @jesscmoore. I'll adjust code according to your suggestions.

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.

APPBAR: Add notification when resource shared to user

2 participants