mastodon.online is one of the many independent Mastodon servers you can use to participate in the fediverse.
A newer server operated by the Mastodon gGmbH non-profit

Server stats:

10K
active users

#appkit

3 posts2 participants1 post today
isaiah<p>sometimes simple code is best. i really like this category method on NSFileManager:</p><p>```<br>- (BOOL)linkOrCopyItemAtURL:(nonnull NSURL *)srcURL toURL:(nonnull NSURL *)dstURL error:(NSError *__autoreleasing _Nullable * _Nullable)error {</p><p> BOOL success = [self linkItemAtURL:srcURL toURL:dstURL error:error];</p><p> return (success) ?: [self copyItemAtURL:srcURL toURL:dstURL error:error];</p><p>}</p><p>```</p><p><a href="https://mastodon.social/tags/obj" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>obj</span></a>-C <a href="https://mastodon.social/tags/AppKit" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>AppKit</span></a></p>
Ammad<p>This also works seamlessly across windows and timelines.</p><p><a href="https://mastodon.social/tags/Cocoa" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Cocoa</span></a> <a href="https://mastodon.social/tags/AppKit" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>AppKit</span></a> <a href="https://mastodon.social/tags/Swift" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Swift</span></a> <a href="https://mastodon.social/tags/macOS" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>macOS</span></a> <a href="https://mastodon.social/tags/MacDev" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>MacDev</span></a></p>
Ammad<p>Another small detail I’ve implemented in <a href="https://mastodon.social/tags/Oliphaunt" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Oliphaunt</span></a>: the Lists timeline now synchronises with the sidebar’s Lists group. Quite pleased with the smooth animation — it’s those subtle touches that make the difference.</p><p><a href="https://mastodon.social/tags/Cocoa" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Cocoa</span></a> <a href="https://mastodon.social/tags/AppKit" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>AppKit</span></a> <a href="https://mastodon.social/tags/Swift" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Swift</span></a> <a href="https://mastodon.social/tags/macOS" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>macOS</span></a> <a href="https://mastodon.social/tags/MacDev" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>MacDev</span></a></p>
obrhoff<p>DarwinKit looks interesting. It’s a Golang Framework to build macOS apps and lets you call Objective-C APIs.<br><a href="https://mastodon.social/tags/golang" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>golang</span></a> <a href="https://mastodon.social/tags/macos" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>macos</span></a> <a href="https://mastodon.social/tags/macdev" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>macdev</span></a> <a href="https://mastodon.social/tags/objectivec" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>objectivec</span></a> <a href="https://mastodon.social/tags/appkit" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>appkit</span></a></p><p><a href="https://github.com/progrium/darwinkit" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="">github.com/progrium/darwinkit</span><span class="invisible"></span></a></p>
Uli Kusterer (Not a kitteh)<p>DST change reminded me of that time QA discovered that, if you build a date from NSDateComponents, any missing items will not be set to zero, but will be set to the corresponding value from the current date and time.</p><p>Which meant that my March 30th, 12:00 would get random one-minute-drift like 12:00:59 because the user entered the date right before a minute change.</p><p>Makes sense for the date, but was a bit bewildering for the time, especially seconds.</p><p><a href="https://chaos.social/tags/cocoa" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>cocoa</span></a> <a href="https://chaos.social/tags/appkit" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>appkit</span></a> <a href="https://chaos.social/tags/foundation" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>foundation</span></a> <a href="https://chaos.social/tags/macProgramming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>macProgramming</span></a></p>
marceloexc<p>RM2000 is now available for public beta testing via Apple TestFlight 🔥</p><p>I wanted to make a curating &amp; idea collection app (think of bookmark managers, PureRef, or Are.na) but for snippets of sound playing anywhere from your computer.</p><p>Let me know what you think! </p><p><a href="https://testflight.apple.com/join/jtGpAsYy" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">testflight.apple.com/join/jtGp</span><span class="invisible">AsYy</span></a> <a href="https://im-in.space/tags/skeuomorphism" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>skeuomorphism</span></a> <a href="https://im-in.space/tags/swiftui" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>swiftui</span></a> <a href="https://im-in.space/tags/appkit" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>appkit</span></a> <a href="https://im-in.space/tags/macos" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>macos</span></a></p>
Pasi Salenius<p>It’s kind of strange that if you have several NSToolbars in your app and the user customizes the display mode in one of them to, say, “Icon and Text” this state does not sync to all of the app’s toolbars. There also doesn’t seem to be any obvious way to observe changes to these settings. I guess that’s just okay and the user is expected to customize them all separately..?</p><p>Or I wait until next WWDC and our Mac windows won’t have toolbars anymore as they have been designed for “the next generation of users”.</p><p><a href="https://infosec.exchange/tags/appkit" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>appkit</span></a></p>
Jaanus Kase<p><a href="https://iosdev.space/tags/AppKit" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>AppKit</span></a> <a href="https://iosdev.space/tags/UIKit" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>UIKit</span></a> <a href="https://iosdev.space/tags/CollectionView" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>CollectionView</span></a></p><p>Any (NS/UI)CollectionView fans here? I’m trying to make a good collection view UI. It is just a simple flat scrolling column of things, should be simple layout.</p><p>I want the cells to size themselves to the SwiftUI content in them, which they almost do, but not when I resize the window and things start to wrap differently.</p><p>What am I missing? How should I make the heights respond better to window resizing?</p><p>Code: <a href="https://gist.github.com/jaanus/66e3d863941ba645c88220b8a22970e1" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">gist.github.com/jaanus/66e3d86</span><span class="invisible">3941ba645c88220b8a22970e1</span></a></p>
troz<p>The 2nd edition of macOS Apprentice is now available from Kodeco. This is my book for beginners or near-beginners who want to start learning Swift, SwiftUI and AppKit for building Mac apps.</p><p>It's now been updated for Swift 5.9, macOS 15 and Xcode 16.2.</p><p>More details at <a href="https://troz.net/post/2025/macos-apprentice-update/" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">troz.net/post/2025/macos-appre</span><span class="invisible">ntice-update/</span></a></p><p>Read the book at <a href="https://www.kodeco.com/books/macos-apprentice/" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://www.</span><span class="ellipsis">kodeco.com/books/macos-apprent</span><span class="invisible">ice/</span></a></p><p><a href="https://mastodon.social/tags/macOS" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>macOS</span></a> <a href="https://mastodon.social/tags/Swift" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Swift</span></a> <a href="https://mastodon.social/tags/SwiftUI" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>SwiftUI</span></a> <a href="https://mastodon.social/tags/AppKit" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>AppKit</span></a></p>
Ammad<p>A small detail I implemented in the <a href="https://mastodon.social/tags/Oliphaunt" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Oliphaunt</span></a> sidebars is synchronised animations when using drag and drop. I’m quite pleased with how it turns out!</p><p><a href="https://mastodon.social/tags/Cocoa" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Cocoa</span></a> <a href="https://mastodon.social/tags/AppKit" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>AppKit</span></a> <a href="https://mastodon.social/tags/Swift" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Swift</span></a></p>
bitbonk<p><span class="h-card" translate="no"><a href="https://mastodon.social/@woolie" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>woolie</span></a></span> <span class="h-card" translate="no"><a href="https://tapbots.social/@todd" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>todd</span></a></span> <span class="h-card" translate="no"><a href="https://tapbots.social/@ivory" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>ivory</span></a></span> Ah right. So it might be that this is a <a href="https://mastodon.social/tags/Catalyst" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Catalyst</span></a> problem only and wouldn’t be a problem with <a href="https://mastodon.social/tags/SwiftUI" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>SwiftUI</span></a> or <a href="https://mastodon.social/tags/UIKit" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>UIKit</span></a> <a href="https://mastodon.social/tags/AppKit" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>AppKit</span></a> <br>(I am not an apple developer, so I have no clue.)</p>
marceloexc<p>Introducing a little passion project 😌 RM2000 Tape Recorder is a macOS tool for recording and managing audio samples as fast as possible</p><p>Platform-agnostic tagging system, never meant to lock you into any service. Optimized for performance, private by design. The digital equivalent of a Yamaha SU10 with the looks of a Sony PCM-D100</p><p>Built using fully native macOS technologies (SwiftUI + AppKit). Modified version of Tachyo as the main font face (thank you <span class="h-card" translate="no"><a href="https://fedi.halcyon-is.land/@ensix" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>ensix</span></a></span> !)</p><p>Available on the Mac App Store soon — Free Public Beta Testing opens by Feburary via Apple TestFlight</p><p><a href="https://im-in.space/tags/swiftui" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>swiftui</span></a> <a href="https://im-in.space/tags/MadeWithSketch" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>MadeWithSketch</span></a> <a href="https://im-in.space/tags/macapps" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>macapps</span></a> <a href="https://im-in.space/tags/appkit" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>appkit</span></a> <a href="https://im-in.space/tags/skeuomorphism" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>skeuomorphism</span></a></p>
Nico Reese<p>30 seconds into a <a href="https://mastodon.social/tags/SwiftUI" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>SwiftUI</span></a> app and the toolbar divider does not disappear when completely scrolled to the top like any other <a href="https://mastodon.social/tags/AppKit" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>AppKit</span></a> or even <a href="https://mastodon.social/tags/UIKit" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>UIKit</span></a> <a href="https://mastodon.social/tags/Catalyst" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Catalyst</span></a> app. God, have mercy. So frustrating that I have to lose out on all the SwiftUI goodies just because the damn framework can't even get the basics right.</p>
GregInTheNorth<p><a href="https://mastodon.social/tags/SwiftUI" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>SwiftUI</span></a> <a href="https://mastodon.social/tags/List" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>List</span></a> is implicitly lazy loaded, it seems. This is vital for efficient management of large lists - one of my main concerns about SwiftUI esp. as the <a href="https://mastodon.social/tags/Macos" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Macos</span></a> experience is so important - it is a long-form writing app.</p><p>My UI/UX is both dynamic - rendering differing layouts based upon content - and flexible - switching that layout based upon preference. <a href="https://mastodon.social/tags/UIKit" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>UIKit</span></a>/ <a href="https://mastodon.social/tags/AppKit" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>AppKit</span></a> is king here of course, but I think <a href="https://mastodon.social/tags/SwiftUI" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>SwiftUI</span></a> might just be good enough now, after six iterations.</p><p><a href="https://developer.apple.com/documentation/swiftui/picking-container-views-for-your-content/" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">developer.apple.com/documentat</span><span class="invisible">ion/swiftui/picking-container-views-for-your-content/</span></a></p>
dasdom<p>Holy Smokes! I just downloaded a demo project from Apples website from 2010. After changing the SDK in the build settings Xcode builds the project without any problems.</p><p>Try that with you SwiftUI project from 2019.</p><p><a href="https://chaos.social/tags/swiftui" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>swiftui</span></a> <a href="https://chaos.social/tags/appkit" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>appkit</span></a></p>
Mario Guzmán<p>Cultured Code's Things app used to be one of those shining examples, good-Mac-citizen apps. The UI and UX was just *chef’s kiss*. The icons and design would make you think 2010 Apple designed it. </p><p>I miss when we had a good visual distinction between user content and UI belonging to the app. Not all types of content needs to "blend" with your app's UI. A computer is still a tool at the end of the day, not just something to sit there and look pretty.</p><p><a href="https://mastodon.social/tags/UI" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>UI</span></a> <a href="https://mastodon.social/tags/UIUX" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>UIUX</span></a> <a href="https://mastodon.social/tags/macOS" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>macOS</span></a> <a href="https://mastodon.social/tags/MacOSX" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>MacOSX</span></a> <a href="https://mastodon.social/tags/AppKit" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>AppKit</span></a></p>
Mario Guzmán<p>Did you know Music Widget has an option to change its app icon based on Music-player state *and* system light/dark mode? It also changes/persists in the Dock when Music Widget isn't running. 😊</p><p><a href="https://marioaguzman.github.io/musicwidget/" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">marioaguzman.github.io/musicwi</span><span class="invisible">dget/</span></a><br><a href="https://mastodon.social/tags/macOS" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>macOS</span></a> <a href="https://mastodon.social/tags/AppleMusic" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>AppleMusic</span></a> <a href="https://mastodon.social/tags/MusicWidget" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>MusicWidget</span></a> <a href="https://mastodon.social/tags/AppKit" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>AppKit</span></a></p>
troz<p>If you bought my macOS by Tutorials book, what is your preferred format for reading it? <a href="https://troz.net/books/macos_tutorials/" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="">troz.net/books/macos_tutorials/</span><span class="invisible"></span></a></p><p><a href="https://mastodon.social/tags/macOS" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>macOS</span></a> <a href="https://mastodon.social/tags/Swift" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Swift</span></a> <a href="https://mastodon.social/tags/SwiftUI" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>SwiftUI</span></a> <a href="https://mastodon.social/tags/AppKit" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>AppKit</span></a> <a href="https://mastodon.social/tags/ebook" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ebook</span></a></p>
obrhoff<p>Took me a while to figure out again that AppKits coordinate system is reversed. One of the most stupid things.<br><a href="https://chaos.social/tags/appkit" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>appkit</span></a> <a href="https://chaos.social/tags/macosdev" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>macosdev</span></a> <a href="https://chaos.social/tags/swift" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>swift</span></a> <a href="https://chaos.social/tags/iosdev" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>iosdev</span></a></p>
Ammad<p>If you have not tried <a href="https://mastodon.social/tags/HacKit" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>HacKit</span></a> yet, download it now or if you already have then update to the latest version and let me know what you think! Your feedback is appreciated and helps me to improve it.</p><p><a href="https://apps.apple.com/app/id1549557075" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="">apps.apple.com/app/id1549557075</span><span class="invisible"></span></a></p><p><a href="https://mastodon.social/tags/HacKit" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>HacKit</span></a> <a href="https://mastodon.social/tags/Cocoa" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Cocoa</span></a> <a href="https://mastodon.social/tags/AppKit" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>AppKit</span></a> <a href="https://mastodon.social/tags/Swift" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Swift</span></a> <a href="https://mastodon.social/tags/Oliphaunt" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Oliphaunt</span></a> <a href="https://mastodon.social/tags/HackerNews" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>HackerNews</span></a> <a href="https://mastodon.social/tags/Mastodon" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Mastodon</span></a> <a href="https://mastodon.social/tags/Mac" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Mac</span></a> <a href="https://mastodon.social/tags/macOS" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>macOS</span></a></p>