- Uses standard toolbar items with the isBordered property enabled. This
makes it unnecessary to create custom views and menuFormRepresentation
objects. Also adds a workaround and visual tweaks for macOS 10.15.
- Changes the implementation of the menuFormRepresentation object in the
ButtonToolbarItem subclass to mimic the behaviour of standard toolbar
items. This also removes the now unnecessary NSToolbar subclass.
- Merges PlugInToolbarItem and SharingServiceToolbarItem into a subclass
that has a generic representedObject property, similar to menu items,
and removes the PlugInToolbarItemButton subclass.
This adds the discovery of JSON Feeds to BrowserTab.
This also prepares future improvements for handling multiple links,
as FeedDiscoverer can provide additional informations which could be
used as hints for the user.
This property has no meaningful practical purpose. It does not ensure
that a particular node cannot have child nodes, as this is overridden by
FoldersTree if needed, and using it in ‑outlineView:isItemExpandable: is
unnecessary, since countOfChildren can be used instead.
This property is only necessary for group folders as well as the root
node. By moving the ivar initialiser to ‑addChild:atIndex:, unnecessary
allocation is avoided.
If the property/ivar is accessed elsewhere and not set, sending messages
will return nil, 0 or NO.
Xcode was warning that potentially long-running AppleScript execution
was occurring on the main thread, which could cause UI stalling and
thread priority inversion.
Move AppleScript execution onto a background queue, run UI feedback on
main queue.
- CriteriaTree.init(predicate:) will fail if the predicate, which is
always an NSCompoundPredicate, has no subpredicates.
- Editing a smart folder will show a compound predicate template row if
no CriteriaTree could be retrieved from the database, to let the user
configure the smart folder.
The variables might be nil by the time the blocks are executed. In the
case of -createInitialSmartFolder: this leads to a smart folder with an
invalid search string.
NWPathMonitor seems to have issues on older macOS, especially on Intel
machines (Invalid address or Symbol missing…), which leads to crashes
at Vienna launch.
As SCNetworkReachability API was officially supported from Mac OS X 10.3
to macOS 14.4, we stick to its use for older versions of macOS.
Issue #2094