mirror of
https://github.com/Frooodle/Stirling-PDF.git
synced 2026-02-17 13:52:14 +01:00
# Summary - Adds desktop file tracking: local paths are preserved and save buttons now work as expcted (doing Save/Save As as appropriate) - Adds logic to track whether files are 'dirty' (they've been modified by some tool, and not saved to disk yet). - Improves file state UX (dirty vs saved) and close warnings - Web behaviour should be unaffected by these changes ## Indicators Files now have indicators in desktop mode to tell you their state. ### File up-to-date with disk <img width="318" height="393" alt="image" src="https://github.com/user-attachments/assets/06325f9a-afd7-4c2f-8a5b-6d11e3093115" /> ### File modified by a tool but not saved to disk yet <img width="357" height="385" alt="image" src="https://github.com/user-attachments/assets/1a7716d9-c6f7-4d13-be0d-c1de6493954b" /> ### File not tracked on disk <img width="312" height="379" alt="image" src="https://github.com/user-attachments/assets/9cffe300-bd9a-4e19-97c7-9b98bebefacc" /> # Limitations - It's a bit weird that we still have files stored in indexeddb in the app, which are still loadable. We might want to change this behaviour in the future - Viewer's Save doesn't persist to disk. I've left that out here because it'd need a lot of testing to make sure the logic's right with making sure you can leave the Viewer with applying the changes to the PDF _without_ saving to disk - There's no current way to do Save As on a file that has already been persisted to disk - it's only ever Save. Similarly, there's no way to duplicate a file. --------- Co-authored-by: James Brunton <jbrunton96@gmail.com> Co-authored-by: James Brunton <james@stirlingpdf.com>
60 lines
1.6 KiB
JSON
60 lines
1.6 KiB
JSON
{
|
|
"$schema": "../gen/schemas/desktop-schema.json",
|
|
"identifier": "default",
|
|
"description": "enables the default permissions",
|
|
"windows": [
|
|
"main"
|
|
],
|
|
"permissions": [
|
|
"core:default",
|
|
"core:window:allow-destroy",
|
|
"http:default",
|
|
{
|
|
"identifier": "http:allow-fetch",
|
|
"allow": [
|
|
{ "url": "http://*" },
|
|
{ "url": "http://*:*" },
|
|
{ "url": "https://*" },
|
|
{ "url": "https://*:*" },
|
|
{ "url": "http://192.168.*.*" },
|
|
{ "url": "http://192.168.*.*:*" },
|
|
{ "url": "https://192.168.*.*" },
|
|
{ "url": "https://192.168.*.*:*" },
|
|
{ "url": "http://10.*.*.*" },
|
|
{ "url": "http://10.*.*.*:*" },
|
|
{ "url": "https://10.*.*.*" },
|
|
{ "url": "https://10.*.*.*:*" },
|
|
{ "url": "http://172.16.*.*" },
|
|
{ "url": "http://172.16.*.*:*" },
|
|
{ "url": "https://172.16.*.*" },
|
|
{ "url": "https://172.16.*.*:*" },
|
|
{ "url": "http://localhost:*" },
|
|
{ "url": "https://localhost:*" },
|
|
{ "url": "http://127.0.0.1:*" },
|
|
{ "url": "https://127.0.0.1:*" }
|
|
]
|
|
},
|
|
"http:allow-fetch-cancel",
|
|
"http:allow-fetch-read-body",
|
|
"http:allow-fetch-send",
|
|
{
|
|
"identifier": "fs:allow-read-file",
|
|
"allow": [{ "path": "**" }]
|
|
},
|
|
{
|
|
"identifier": "fs:allow-write-file",
|
|
"allow": [{ "path": "**" }]
|
|
},
|
|
{
|
|
"identifier": "fs:allow-remove",
|
|
"allow": [{ "path": "**" }]
|
|
},
|
|
"dialog:default",
|
|
"dialog:allow-message",
|
|
"dialog:allow-open",
|
|
"dialog:allow-save",
|
|
"opener:default",
|
|
"shell:allow-open"
|
|
]
|
|
}
|