# Keep Downloaded

**URL:** <https://forum.xojo.com/t/keep-downloaded/88423>\
**Category:** macOS\
**Created:** [June 14, 2026, 4:10pm UTC](https://forum.xojo.com/t/keep-downloaded/88423 "2026-06-14T16:10:35Z")\
**Posts on this page:** 10\
**Page:** 1

<div class="post-metadata">

**Author:** ![Jeff\_Tullin](https://forum.xojo.com/user_avatar/forum.xojo.com/jeff_tullin/32/693_2.png) [@Jeff\_Tullin](https://forum.xojo.com/u/Jeff_Tullin)\
**Post date:** [June 14, 2026, 4:10pm UTC](https://forum.xojo.com/t/keep-downloaded/88423/1 "2026-06-14T16:10:35Z")

</div>

It is now possible to right click on a file in MacOS and choose ‘keep downloaded’

Is there something like a file attribute we can use to set that in code ?

MBS?

---

<div class="post-metadata">

**Author:** ![Tim\_Parnell](https://forum.xojo.com/user_avatar/forum.xojo.com/tim_parnell/32/161_2.png) [@Tim\_Parnell](https://forum.xojo.com/u/Tim_Parnell)\
**Post date:** [June 14, 2026, 5:13pm UTC](https://forum.xojo.com/t/keep-downloaded/88423/2 "2026-06-14T17:13:02Z")

</div>

It’s probably some undocumented `xattr`. I haven’t ever seen the “Keep Downloaded” item, so on a file you do see it run `xattr -l {file}` and see if anything jumps out. From there, if you find something of value, you might be able to set it on files you choose. I’m not sure whether that could be done with declares, MBS, or if it would require you to Shell out to `xattr`.

---

<div class="post-metadata">

**Author:** ![Christian\_Schmitz](https://forum.xojo.com/user_avatar/forum.xojo.com/christian_schmitz/32/158_2.png) [@Christian\_Schmitz](https://forum.xojo.com/u/Christian_Schmitz)\
**Post date:** [June 14, 2026, 5:35pm UTC](https://forum.xojo.com/t/keep-downloaded/88423/3 "2026-06-14T17:35:29Z")

</div>

I haven’t found an API to do this. Otherwise I would have added it to our plug-ins.  
So far you can check status and request download.

---

<div class="post-metadata">

**Author:** ![Emile\_Schwarz](https://forum.xojo.com/letter_avatar_proxy/v4/letter/e/90ced4/32.png) [@Emile\_Schwarz](https://forum.xojo.com/u/Emile_Schwarz)\
**Post date:** [June 14, 2026, 6:52pm UTC](https://forum.xojo.com/t/keep-downloaded/88423/4 "2026-06-14T18:52:46Z")

</div>

I think this resume feature is in the Terminal command to download a file.

Before REALbasic, nearly 30 years ago, I used an AppleScript to download files, and this chimes something from my memory (I forgot the command name, of course).

---

<div class="post-metadata">

**Author:** ![Jeff\_Tullin](https://forum.xojo.com/user_avatar/forum.xojo.com/jeff_tullin/32/693_2.png) [@Jeff\_Tullin](https://forum.xojo.com/u/Jeff_Tullin)\
**Post date:** [June 15, 2026, 9:10am UTC](https://forum.xojo.com/t/keep-downloaded/88423/5 "2026-06-15T09:10:49Z")

</div>

I have yet to try this possible option:

 ![image](https://forum.xojo.com/uploads/default/original/3X/6/6/66f5f4a2a4c836fa49c02e513a5dbbfe31db922f.png)

---

<div class="post-metadata">

**Author:** ![Greg\_O](https://forum.xojo.com/user_avatar/forum.xojo.com/greg_o/32/22785_2.png) [@Greg\_O](https://forum.xojo.com/u/Greg_O)\
**Post date:** [June 15, 2026, 9:41am UTC](https://forum.xojo.com/t/keep-downloaded/88423/6 "2026-06-15T09:41:50Z")

</div>

Even if that works, it won’t be permanent. Apple doesn’t let a program do that except for the files it creates.

---

<div class="post-metadata">

**Author:** ![Jeff\_Tullin](https://forum.xojo.com/user_avatar/forum.xojo.com/jeff_tullin/32/693_2.png) [@Jeff\_Tullin](https://forum.xojo.com/u/Jeff_Tullin)\
**Post date:** [June 15, 2026, 9:42am UTC](https://forum.xojo.com/t/keep-downloaded/88423/7 "2026-06-15T09:42:37Z")

</div>

xattr doesnt indicate any detectable change when run.

---

<div class="post-metadata">

**Author:** ![Thomas\_Roemert](https://forum.xojo.com/user_avatar/forum.xojo.com/thomas_roemert/32/827_2.png) [@Thomas\_Roemert](https://forum.xojo.com/u/Thomas_Roemert)\
**Post date:** [June 15, 2026, 11:21am UTC](https://forum.xojo.com/t/keep-downloaded/88423/8 "2026-06-15T11:21:38Z")

</div>

Isn’t “keep downloaded” meant for files in cloud folders, managed by Apples FileProvider framework?

---

<div class="post-metadata">

**Author:** ![Christian\_Schmitz](https://forum.xojo.com/user_avatar/forum.xojo.com/christian_schmitz/32/158_2.png) [@Christian\_Schmitz](https://forum.xojo.com/u/Christian_Schmitz)\
**Post date:** [June 15, 2026, 11:59am UTC](https://forum.xojo.com/t/keep-downloaded/88423/9 "2026-06-15T11:59:13Z")

</div>

The file provider seems to have a flag for that.  
But I don’t see an API for users.

---

<div class="post-metadata">

**Author:** ![Jeff\_Tullin](https://forum.xojo.com/user_avatar/forum.xojo.com/jeff_tullin/32/693_2.png) [@Jeff\_Tullin](https://forum.xojo.com/u/Jeff_Tullin)\
**Post date:** [June 15, 2026, 12:20pm UTC](https://forum.xojo.com/t/keep-downloaded/88423/10 "2026-06-15T12:20:06Z")

</div>

I appreciate my needs are unusual. But I am getting tired of fighting Apple at every turn.

I can browse for a file using Xojo or MBS file selectors. If a file is in a part of the drive that iCloud is synching, and _hasn’t been used in a while,_ it may only exist in the cloud. So having selected ‘it’, the folderitem returned by a Xojo action is incomplete or zero bytes in size. Then iCloud wakes up and downloads it, so a second attempt works. End user experience is not great.

I now use coordinateReadingItemAtURL to mitigate this, but seriously..?

My real problems come when listing the contents of a folder containing many files, of which I may need to examine the contents. If they too have been taken into the cloud, it’s really slow. I don’t think coordinateReadingItemAtURL is a suitable solution there.

On my own machine, I refuse to allow iCloud this kind of control. I backup to external drives and avoid iCloud as much as possible.

So if I can flag saved files as Keep Downloaded, most of those issues go away transparently.
