This commit changes the Blender macOS bundle and blender-thumbnailer
app extension bundle Info.plist `CFBundleVersion` key to use the "short"
version string (X.X.X) instead of the "long" version string (X.X.X +
date), following the specs.[^1]
This fixes an issue with Xcode bundle archiving where the previous long
version would cause an error to be thrown during archive validation:
```
ERROR: [ContentDelivery.Uploader.6000007BD0C0] CFBundleVersion, “5.0.0 2025-09-09”,
must be composed of one to three period-separated integers. (-19239)
```
The previous "long" version string is still used by the `CFBundleGetInfoString`
key and thus still shows up in the application informations.
See Pull Request for app preview before/after screenshots comparaison.
[^1]: https://developer.apple.com/documentation/bundleresources/information-property-list/cfbundleversion?language=objc
Pull Request: https://projects.blender.org/blender/blender/pulls/146030
Support thumbnail that shows the file contents instead
of the default blend file icon for all files in Finder.
Some files may still have the usual blender icon as thumbnail
depending on their contents.
blender-thumbnailer process is kept alive by the system
in the background and is invoked by QuickLook when needed.
The checkbox to disable the extension is present in
the Settings app.
It will NOT be an interactive "Preview" that allows richer
interactions like Panning viewport, or rotating 3D objects.
This was already the minimum requirement for Intel and Apple Silicon
GPUs. It is required for the Metal backend to work correctly.
Previously the minimum for AMD GPUs was 10.15.
Pull Request: https://projects.blender.org/blender/blender/pulls/118287
The 128x128 version presented some resizing artifacts. It has now
been re-done specifically for that resolution. This icon is only
visible in non-retina displays.
Pull Request: https://projects.blender.org/blender/blender/pulls/112807
Follow-up to #111232.
- Fix 128x128px version, rendered poorly on non HiDPI displays
- Ensure all versions of the icon have the correct dimensions. In the
previous version, one icon was off by 2px due to downsampling
- Remove unused large versions, makes file 10x smaller
Pull Request: https://projects.blender.org/blender/blender/pulls/112033
Didn't remove the key-value pair since old Xcode behavior is not
known.
warning: LSMinimumSystemVersion of '10.9.0' is less than the value of
MACOSX_DEPLOYMENT_TARGET '10.13' - setting to '10.13'. (in target
'blender' from project 'Blender')
Reviewed By: #platform_macos, brecht
Differential Revision: https://developer.blender.org/D13831
Re-adds a legacy document icon for macOS 10.14 Mojave that is
consistent with the system generated document icon on macOS 11
Big Sur. It uses the old-style document sheet icon, but includes the
file extension underneath the Blender icon (unlike the previous
legacy document icon that was removed in D10267).
Adds the missing description for the exported type identifier.
Finder now correctly displays “Blender File” instead of “data”
for Blender files.
Differential Revision: https://developer.blender.org/D10746
Adds Document Type Identifier configuration to use a system generated
document icon for Blender files on macOS. The system composites the
app’s icon and the extension name onto the document sheet icon
(new style on macOS 11 Big Sur and old style on macOS 10.15 Catalina
and earlier). This is in line with Apple’s Human Interface Guidelines.
Removes the previously used file icon because it is no longer needed.
Differential Revision: https://developer.blender.org/D10267
This reverts commit 3d9cc4d3f1. The commit
message and intent behind the commit is unclear. We generally want the
discrete GPU to be used for best performance, not the integrated GPU.
This adds the same high quality cursors on macOS as we have on Windows.
These are stored as 32*32 pt PDFs, same as the built-in OS cursors
Reviewed by: Brecht Van Lommel
Differential Revision: https://developer.blender.org/D5907
Using a capitalized app name fits the platform guidelines. Since macOS file
systems are case insensitive by default this should not break scripts that
assume lowercase.