36 lines
1.7 KiB
Markdown
36 lines
1.7 KiB
Markdown
On a regular system, a reasonable simplifying assumption is that all the
|
|
files in the folder will be synced to the system. A user might want to
|
|
disable syncing of some subdirectories, for eg, archived files. But in
|
|
general, things are simpler to understand and implement if all files sync.
|
|
|
|
But, an Android gadget probably cannot hold all a user's files. Indeed,
|
|
it's likely that old files will be aggressively dropped from the Android
|
|
after syncing to elsewhere, in order to keep enough free space on it for
|
|
new files.
|
|
|
|
There needs to be a way for the user to browse files not on the gadget and
|
|
request they be transferred to it. This could be done as a browser in the
|
|
web app, or using a subdirectory full of placeholder files (not symlinks;
|
|
see [[Android]]) that start transfer of the real file when accessed.
|
|
|
|
----
|
|
|
|
Currently, Android uses the "source" repository type in some
|
|
configurations. This makes files be removed as soon as they are sent
|
|
somewhere else.
|
|
|
|
A compromise that avoids needing UI might be to change "source" so it
|
|
retained files for a while after they were created, even after they were
|
|
uploaded elsewhere. For example, it could hold onto them for a day. This
|
|
would allow the user time to do things with new files before they are
|
|
removed from the android device.
|
|
|
|
One way to implement that would be a new preferred content expression like
|
|
"age(1 day)". But this would need at least a daily full transfer scan to be
|
|
run.
|
|
|
|
Another way would be to have a way to make drops of files be deferred
|
|
for a period of time. This approach would not need to be specific to the
|
|
"source" repository type. And seems easy enough to do, just have a
|
|
configuration setting for the time interval, and an ordered drop queue
|
|
and a thread that waits as needed before dropping.
|