Pproject Catalyst Any App Convert To Macos

11.09.2020by

By using our site, you acknowledge that you have read and understand our. And Apple revealed that the new Podcasts app used Catalyst to convert the app from iOS to Mac. For those who are already using the developer beta of MacOS 10.15 Catalina and noticed that new. Jun 19, 2019  We’ve heard quite a bit about Project Catalyst and what it means for developers who want to bring their iPad applications to the Mac with macOS Catalina. Apple is using Catalyst. Apple recently announced project Catalyst during its WWDC. Catalyst is designed to allow developers to release iOS apps for macOS, starting with the next major release of macOS Catania.

macOS Catalina highlight a longstanding Mac software problem. When Apple bought NeXT, it inherited the legit brilliant NeXTStep technology and the AppKit framework for making apps. Apple built on them for generations, adding everything from CoreGraphics to CoreAnimation, SceneKit to Metal. But, the Mac's market share was never huge. So, while the Mac always had great apps, phenomenal apps, it never attracted a great number of them.

Then came the iPhone and the enormous popularity of the App Store. It used a new framework called UIKit, built on the many lessons learned from AppKit. And it became so popular, millions of developers raced to make millions of apps for it.

The iPad also used UIKit, of course. So, many of those developers were willing to risk the tiny little step it took to make tablet versions as well.

The Mac, though… the Mac stuck with AppKit, and nowhere nearly as many developers were willing to risk that much bigger leap. And, even those that wanted to didn't often have the extra time and resources needed to commit to it.

That included the biggest Mac developer in the world, Apple.

Back then, Apple had separate teams working on the iOS and macOS versions of apps. iOS Mail and Mac Mail. iOS Messages and Mac Messages. iOS Safari and… you get the idea.

Even so, the iOS side had more resources because it faced far more demands. So, over time, iOS got new features first and the Mac would trail behind or sometimes just fall behind.

(sent with Fireworks)

Then, a few years ago, Apple merged the teams. One Mail team, one Messages team, one Safari team… again, you get the idea.

But that still left the teams with two sets of apps to code, UIKit for iPhone and iPad and AppKit for the Mac. It also often left them two times the work to implement new features and new frameworks.

Enter Marzipan, now Project Catalyst. Or, more plainly, UIKit for Mac.

Inventory Management software is used to track, manage and organize inventory levels, orders, sales and invoices. The software is commonly used alongside hardware such as barcode or radio-frequency identification (RFID) scanners. See Win 98 and Win 2000 to download software compatible with earlier versions of Windows. Mac OS X 10.5 or above; Download Inventoria Inventory Software. Download Inventoria for Windows; Download Inventoria for Mac OS X. Purchase Inventoria Stock Manager. Purchase Inventoria online here. Ordering and Receiving. Create purchase orders and email. Apr 23, 2020  Disk Inventory X is a free disk utility for Mac OS X that gives you a summary of your disk usage, both in text and visually. Need to know how much space is. Download and install Network Management Tool for Mac by just dragging the app to your Applications folder and run your first network scan instantly. Network Inventory Advisor collects all details about software and hardware present on the other Macs in your network and does this in a simple native Mac OS X user interface anyone would master in seconds. Inventory management software mac os x. Apr 28, 2020  Software inventory management is the answer to the growing complexity of the software market. With the proliferation of cloud-based enterprise software solutions and subscription-based licensing models, even relatively small companies often find it difficult to keep track of their software assets. Mac OS X, Linux computers and SNMP devices.

Project Catalyst is fiendishly clever in its simplicity: Developers were already making iPad-specific versions of their iPhone apps, why not let them make Mac-specific versions of their iPad apps?

Not AppKit versions, where they could maybe keep data models but have to relearn and redo all the app-specific code. But UIKit versions for the Mac, where they could maintain one code base across both platforms.

Running iOS apps on the Mac had been possible since Apple launched the iPhone SDK in 2008, but only as part of the Simulator in Xcode. The Simulator had and has its own copy of all the iOS frameworks, databases, and services, but it's meant to replicate the iPhone or iPad environment so developers can run and debug their apps as needed, not make those apps look and feel native to the Mac for end users to for end users to run them every hour of every day, all the time.

So, here's what Apple did.

AppKit had its own interface frameworks up top but, underneath, it had similar frameworks to iOS. CoreGraphics, CoreAnimation, Foundation, similar databases for photos, contacts, calendars, even similar services like clipboard, all built on the same Darwin kernel.

Apple started off by combining and unifying the underlying frameworks and databases. So, where there were two separate stacks under AppKit and UIKit now, on the Mac, there could be only one.

Apple had to keep the higher level frameworks separate, like WebKit, MapKit, RealityKit, and SceneKit, because AppKit and UIKit are still separate and each still needs its own implementations — and they didn't bring ARKit over at all, at least not yet. Likewise, HealthKit, HomeKit, and some other things also remain on the to-do and to-finish list as well. And, of course, most deprecated iOS frameworks have been brought over. So, Metal, not OpenGL.

Apple also automatically maps other things over for, quote unquote, free. That includes adding a default menu bar, settings pane, scrolling system, drag and drop, Touch Bar, contextual menus and keyboard commands and game controllers, if the app already has them, and Share extensions, and reducing text size by 77%, from the iOS standard 17pt down to the Mac standard 13pt.

UIKit multitasking gestures will also get automatically remapped to mouse and trackpad on the Mac. Single tap to mouse down, long press to mouse down and hold, and pan or swipe to drag. Pinch and rotate with also be mapped but instead of the middle point being used as the axis, the cursor position will be used as the axis.

Gestures like edge swipes, pull to refresh, don't translate well so won't be mapped over, but hover states get added for any app that wants to implement them.

And if apps are being updated to support new iOS 13 features like multi-window, Symbol Images, dark mode and the new system colors, that'll carry over as well.

All that to say if an app is using standard UIKit components and controls, Apple will do a lot of the heavy lifting and translation for it. In other words, the better the iPad app the better the Mac app starts off.

Some things aren't so automatic, though. Like developers will still have to make a Mac-specific icon with its distinctive silhouette if they really want to be Mac-like, decide if a sidebar gets the vibrancy treatment or not, remove custom tint colors so as not to clash with user-configurable accent colors on the Mac, add custom toolbars and Touch Bar controllers, adjust the positions of controls, add a sidebar if there isn't one already but it makes more sense to list locations or collections of content on the Mac, bump up the size of very small fonts, figure out how to handle custom gestures, and more.

So, the better the polish, the better the Mac app ends up.

Basically, Apple wanted to make it easy to start working with UIKit on the Mac, so developers could maintain one project, one source base, one target. And, while their apps will remain iPad on the inside, they could be first-class Mac experiences on the outside.

Last year, Apple tested it on a few apps like Home, Voice Memo, News, and Stocks. And… they weren't very good. Not only weren't they very Mac-like, they weren't even consistent unto themselves.

Apple's Senior Vice President of software engineering, Craig Federighi, has recently said that wasn't because of any limitation inherent to Catalyst but, because the technology was so new, it came down to the individual design decisions of the people and teams implementing each of those apps.

My guess is the technology was so new, and everything had to be done from scratch, it was half experimentation to see what was possible and half pragmatism or compromise just to get it all working.

Either way, it caused some anxiety in the Mac community — that Catalyst would be used to just dump a bunch of iPad apps onto the Mac, quickly, lazily, out of place, and with nothing approaching a Mac-like experience.

But this year, when Apple opened up Catalyst as a beta to developers, it also rolled out a new Podcast app using those UIKit frameworks and one that's almost indistinguishable from the new AppKit-based Music and TV apps.

Now, Apple isn't going back and redesigning or reimplementing Home, Voice Memo, News, and Stocks to be more like Podcasts, at least not yet. They are adding and polishing a few features here and there, but don't expect any major changes when Catalina launches this fall.

Maybe, hopefully, one day though.

Sonos for Mac, free and safe download. Sonos latest version: Control your home's music with Sonos. Sonos is the control app for the speaker system of the same name. Once you've installed wireless. Take listening to the next level with Sonos S2. This new version of the app enables higher resolution audio, with 24-bit processing and Dolby Atmos support. It also sports an improved design, better security, new features like saved room groups, and smarter software to keep your system up to date. Download the Sonos app for iOS, Android, FireOS, Windows, and macOS. Download sonos app for mac os 10.

Still, even though it's early days, my take is optimistic. I think there are a ton of developers who would like to move their iPad apps to the Mac, good iPad apps that they want to make into good Mac apps, but just never had the time or resources to learn AppKit so they could do it.

Now, with Catalyst, they don't have too. They can bring their existing iPad apps over and, instead of spending time on AppKit, they can spend that time polishing the interface of their UIKit app to make it into a first-class Mac experience.

That includes developers that have an iPad app but either never made a Mac version or simply let the Mac version fall fallow over time. For them, a unified codebase makes creating or replacing the Mac app far more efficient. DC Universe and Twitter have already announced they'll be doing just exactly this.

Also, iPad apps that have relied on a website for the Mac. Here, native frameworks allow for far more features and far better performance. For example, Netflix could make a Mac version of their iPad app that would finally bring their 4K HDR content to the Mac.

And then there are my least favorites, the apps that use Electron on Mac, actively wasting my memory and destroying my battery life just to wrap themselves in Chromium for that oh-so-not-so-native look and feel anyway. Those, like Slack and Skype, desperately need to switch to Catalyst and fast.

Since I like to dream about the future, I'll also throw this out: Today you can drag an iPad app into a narrow split view and it takes on the characteristics of the iPhone version. Tomorrow, I want to toss an iPad app onto a 27-inch 16 by 9 external display — effectively what a 35-inch iPad would look like when you correct for scaling — and have it take on the characteristics of a Mac app.

VECTOR Rene Ritchie

Main

  • Video: YouTube
  • Podcast: Apple Overcast Pocket Casts RSS
  • Column: iMore RSS
  • Social: Twitter Instagram

We may earn a commission for purchases using our links. Learn more.

if only you knew the power of the dark side..

Apple doubles trade-in value of select Android devices for a limited time

Apple has quietly upped the trade-in price of several Android smartphones for a limited time, doubling the value of some handsets.

Update 29 October 2019: the macOS 10.15.1 release appears to have resolved the problem of not being able to interact with the preference windows of Catalyst apps when running VoiceOver.

In my early tests I have been able to access and configure settings in all three Catalyst apps which previously exhibited the problematic behaviour described in the post below.

It's great news that Apple appears to be making changes to the underlying app conversion process that should address some accessibility issues without developers needing to do anything.

If you encounter any further improvements to Catalyst apps after updating to macOS 10.15.1, please let us know by posting a comment below.

Original Post
In its recent “deep dive” in to Mac Catalyst, Ars Technica reported that Apple and developers they spoke with considered Catalyst apps to be “the future of Mac software”. If my early experience is anything to go by, Apple still has much to do if VoiceOver users are to be included in that future.

If you are unfamiliar with Mac Catalyst, it's new from Apple with the release of macOS Catalina and essentially enables developers to quickly and easily create Mac versions of their existing iPad apps.

According to Apple's developer website, developers need only check a box to select the Mac as a supported device when viewing their iPad project in Xcode.

By checking this box, Apple's Xcode software will do much of the ‘heavy lifting’ in regard to porting an iPad app to macOS: it will automatically create a default menu bar; add support for trackpad, mouse, and keyboard input; add support for window resizing and full-screen display; enable Mac-style scroll bars; add support for copy-and-paste and drag-and-drop; and add support for system Touch Bar controls.

Apple's vision is that by automating so much of what's required, developers can focus their time on adding desktop-specific features to their apps:

Your newly created Mac app runs natively, utilizing the same frameworks, resources, and runtime environment as apps built just for Mac. Fundamental Mac desktop and windowing features are added, and touch controls are adapted to the keyboard and mouse. Custom UI elements that you created with your code come across as-is. You can then continue to implement features in Xcode with UIKit APIs to make sure your app looks great and works seamlessly.

As both a Mac and iPad user, this is a vision that I can readily buy in to - the prospect of being able to use the same apps across both platforms is extremely appealing; as is the thought of having a much greater selection of apps available on my Mac.

Regrettably, my early experience suggests that Mac Catalyst currently does not deliver when it comes to ensuring that macOS versions of an app offer the same level of accessibility and user experience as they do on iPad.

One Important Caveat

Before I share my early experiences with some Catalyst apps, I need to stress that I am not an advanced VoiceOver user on macOS.

Although I have been using a Mac for many years, I have transitioned over time from using colour inversion alone; to using colour inversion along side screen magnification; to using VoiceOver as an occasional aid; to now relying completely on VoiceOver. It's been an incremental learning process with no professional training or support. Consequently, I have learned what I think I need to know for my own use case, and along the way have certainly skipped or missed much of VoiceOver's capabilities.

All of that to say that what follows is not the experience or opinion of an advanced VoiceOver user who knows all of VoiceOver's capabilities and features on macOS. I simply know what works for me and my use case. Accordingly, more advanced VoiceOver users may have different experiences and opinions to those below; I certainly hope that you will share them by posting replies.

My Early Experiences with Catalyst Apps

Following the release of macOS Catalina earlier this week, I have use three Catalyst apps:

Fiery Feeds (US$31.99)
lire (US$19.99)
Twitter (Free)

My intent in this post is not to discuss any app-specific issues, as I believe that focusing on accessibility failings of initial releases of apps created with a tool which is still mostly unfamiliar and unproven would be unfair on the app developers concerned. Doing so would also potentially distract from the more fundamental and pressing issue: the current implementation of Mac Catalyst does not deliver a basic level of VoiceOver support ‘out of the box’.

My early experience suggests that there are currently at least two significant issues for VoiceOver users that are likely to be common to all Catalyst apps:

  1. How preferences windows are generated by Mac Catalyst.
  2. Keyboard navigation of Catalyst apps.

Project Catalyst Any App Convert To Macos Download

Where did the Preferences Go?

Mac applications typically let users manage app-specific settings via a preferences window. Users access this window by selecting the application menu followed by the Preferences menu item in the menu bar, or by using the Command-comma keyboard shortcut.

With Mac Catalyst, developers are told that if their iPad app has a “Settings bundle”, the system automatically provides the Catalyst version of their app with a preferences window:

When a user runs your app on their Mac device and selects the Preferences menu item, the system displays a Mac-friendly preferences window based on the options provided in your Settings bundle. You can further enhance the user experience by adding child panes and optional Mac-specific keys to your Settings bundle.

The issue I've consistently encountered with all three Catalyst apps is that although the preferences window may be “Mac-friendly”, it is definitely not VoiceOver-friendly.

My experience with all three apps is that I can use the VoiceOver modifier keys in conjunction with the left and right arrow keys to move VoiceOver focus through some of what's on the preferences window. I say “some”, as common sense and experience of the iPad apps tells me that there should be more to find, and on occasions a lucky click of the mouse pointer will find and enable me to navigate through some of what was previously missing.

However, the far more significant problem comes when I VO-Space on anything on the preferences window: without fail, VoiceOver focus immediately returns to the main window of the app.

If I use the Window Switcher to return to the preferences window, nothing has changed. If I had attempted to navigate to a section of the preferences window or change a setting, it will not have happened. The preferences window will still be on its initial view and with its default settings.

Routing the mouse pointer to a UI element on the preferences window returns the same result.

Project catalyst any app convert to macos pdf

In the case of all three of my test Catalyst apps, the inability to configure them through their preferences window effectively makes the apps unusable.

If an RSS Reader won't allow me to add an RSS service or import an OPML file, it is effectively nothing more than wallpaper. And, at $20 or $32, it's pretty darn expensive wallpaper!

What's particularly frustrating in the cases of lire and Fiery Feeds, is that the developers of each app has longstanding and demonstrable commitments to not only making their apps accessible, but proactively seeking to enhance the experience for VoiceOver users. Now, they find themselves unable to do the same on macOS because of apparent failings with Mac Catalyst.

With three out of three Catalyst apps sharing an identical problem with their preferences windows, it doesn't seem unreasonable to expect that this behaviour will be common to any Catalyst app which has automatically generated preferences windows. Which, is likely to be the very vast majority of them. Some of these apps will be usable without needing to access or change any settings. But, if my expectation is correct, I would personally be very reluctant to buy a Catalyst app in the hope that it's usable ’out of the box’.

However, a problem accessing preferences windows may not be the only current issue of note with Catalyst apps for VoiceOver users.

Where did the Keyboard Navigation Go?

With sighted help I was able to get all three of my test Catalyst apps setup and configured as desired.

This should have left me happily enjoying apps which I know to be great on iPad (well, certainly true for lire and Fiery Feeds).

Regrettably, the user experience of all three apps when relying solely on keyboard navigation is nothing less than painful.

In all three cases, none of the keyboard shortcuts I would typically use to quickly jump between the main sections of a Mac application work. Tab, VO-j, and various VoiceOver rotor options all leave focus stubbornly where it is.

I have tried the keyboard shortcuts I use with my iPad - just in case these had been ported across - but, VoiceOver focus remains stubborn.

This is the part of the post where I most want (and probably expect) an advanced VoiceOver user to step forward and point me towards something I am missing, as having to rely on VO and the arrow keys to navigate these three apps is not a user experience I wish to revisit. Not only is it a poor user experience, but I am quite sure that there are sections of each app which are not being located when navigating by arrow key alone (something which seems to be confirmed by others in regard to the Twitter app).

As with the preferences window issue, it's extremely hard to believe that the paucity of keyboard navigation options - and their apparent unreliability - is app-specific. In my opinion, it has all the appearance of being something that will be common to all Catalyst apps.

Closing Thoughts

It's hard not to feel anything other than completely disappointed by my initial experiences with Catalyst apps.

I didn't approach them expecting there to be no ‘teething problems’, but I did expect Apple to ensure that everything generated automatically by Xcode as part of the porting process would be accessible with VoiceOver, and that Catalyst apps would be at least mostly usable with VoiceOver. This was particularly true for Mac versions of apps that I know provide a great VoiceOver experience on iPad.

Early reports indicate that VoiceOver users aren't the only ones facing problems with Catalyst apps. Bloomberg has reported on numerous teething problems, with developers saying that they've had to work harder than expected to get their iPad apps working well on the Mac:

Developers have found several problems with Apple’s tools for bringing iPad apps over to Mac computers. Some features that only make sense on iPad touchscreens, such as scrollable lists that help users select dates and times on calendars, are showing up on the Mac, where the input paradigm is still built around a keyboard and mouse or trackpad.

Troughton-Smith said Mac versions of some apps can’t hide the mouse cursor while video is playing. He’s also found problems with video recording and two-finger scrolling in some cases, along with issues with using the keyboard and full-screen mode in video games. Thomson, the PCalc developer, said some older Mac computers struggle to handle Catalyst apps that use another Apple system called SceneKit for 3-D gaming and animations.

It seems that we can add poor VoiceOver support to the list of problems faced by developers and users of early Catalyst apps. It's extremely disappointing that something as fundamental as the accessibility of preferences windows and support for keyboard navigation have made it past Apple's QA testing of Mac Catalyst. We can only hope that this is corrected quickly by Apple, and that VoiceOver support will be part of the porting process when a developer checks the ‘Mac’ box in Xcode.

I look forward to hearing everybody's early thoughts and experiences of Catalyst apps. Have you found any that you would recommend? Have you found workarounds for the issues I mention above? Or, can you simply confirm my fears that Mac Catalyst still needs a lot of work in regard to VoiceOver? Add your comments below!

Mac Notes App Code Block
Comments are closed.