They appear to work fine. My app looks almost completely unchanged, aside from alert sheets. They still work fine, but the sheets have a new design that I could take or leave. I think I prefer the old alert sheets with the centered icon, but whatever.
Outside of Xojo apps, there are things I don’t like. I think the new sidebar is disgusting. As is the rounded/chubby arrow cursor. I’m concerned about readability, but I’ll reserve judgement until I can actually use it daily.
Anyway, I’m not trying to dunk on the OS, but I just wanted to update people who might be concerned about the new design with their existing apps.
The most interesting will be how long it will take for Xojo to adapt the IDE to take advantages of the new Liquid Glass components. I cannot wait for it. Windows is now such a dinosaur.
Well Xojo apps fall further and further behind modern design trends with each year. I don’t see anything here that Xojo could adopt, aside from maybe the hideous toolbar. If Xojo had a native sidebar element, maybe they could update the navigator with it. But they don’t.
You’ll never replicate the effect yourself. I’m not sure if it’s mentioned in the video, but the animations have a bit of randomness, and their timing affects their behavior.
What I mean is if you use the simulator to enable slow animations, you can clearly see the tab bubble grow as it moves, and shrink back into place. But each time it does is a little different. Sometimes it’s a little wider, sometimes it’s a little shorter. But it’s definitely random. Most interestingly, if you turn off the slow animations, it changes beyond just the duration of the animation. There is SIGNIFICANTLY more “spring” in the animation.
Between the animations and the refractions, this isn’t something that can be replicated. Xojo’s years of neglecting Apple’s way of drawing things, for example vibrancy layers, have caught up to them. If you want these effects, you’ll need to go through MBS and all the inconveniences that comes with using single-platform controls.
Which is a big problem, not just for Xojo. Cross platform development of all kinds has just been dealt a blow. Web-based UI tools like Electron will never be able to achieve this. Sorry 1Password, Slack, and Discord. That should give native UI tools like Xojo a serious advantage in the cross platform space. But it also means that cross platform as a whole is much harder. You’d have to use that ugly native sidebar on macOS, and something completely different on Windows. You can’t really achieve similar design cross platform anymore. Again, this should have been a case where Xojo would have an advantage, where your XojoSidebar control uses the native macOS sidebar on Mac, and something else on Windows, from a single set of code. This is Xojo’s bread and butter.
Well it was… 20 years ago. Back when Xojo would abstract things like sheets on Mac into modals on Windows. Today we get lots of single-platform things like WinUI, and even when we do get cross platform stuff, they are implemented poorly, like popovers. Supporting these new technologies has become an insurmountable task due to a lack of incremental progress over the years. Xojo should be triaging. Whether or not they are, I have no idea.
I will install the beta in the next days and check out what it has to offer.
There is a lot of time over the summer to try and fix things until the October release.
I’d assume a lot of animations will just happen automatically.
But if needed, we can add more properties via plugin.
I would expect Xojo Inc. to also put some effort into making Xojo apps enjoy this.
I haven’t looked into it yet, but now, besides SF Symbols, there’s a new Icon Composer app you can download. I assume the output facilitates some kind of hover effects etc. Sounds like you can use the app to export an icon image, but Xojo will have to do something to support the native format.
I’ve used IconComposer. No, there is nothing for Xojo to do. You can use it to generate rendered PNGs for marketing purposes, but otherwise you import it its file into Xcode and Xcode generates the ICNS when you build. So you could use Icon Composer to export icons for Xojo, but none of this explains how the operating system figures out how to recolor the icon correctly.
Oh I did notice one problem. SearchFields are invisible. This is likely an Apple bug that will get fixed in later betas, but for the sake of not letting things fall through the cracks, I filed https://tracker.xojo.com/xojoinc/xojo/-/issues/79323 with Xojo.
Now that most of Apple’s product line is on Apple Silicon and is capable of extremely efficient hardware accelerated graphics (and also typically has high-refresh-rate displays), multi-layer animations are something that cross-platform developers don’t have the luxury of assuming other target devices can handle smoothly.
Apple knows this, and it’s a strategy for product differentation. Their stuff has to maintain its premium image, and they’re flexing their capabilities a bit. Can’t say I blame them.
Cross platform apps like electron have never been about having a native look and feel. They’re about per-app consistency on different platforms.
Xojo is different because native look-and-feel has always been a major selling point. I’ll be curious to see how, or if, they decide to address this because it’s probably going to be Apple’s design language for the next half decade at least.
Yep, we are aware of that. They are invisible when they don’t have the focus. In addition they don’t render the widgets (loupe and “x”) when they have the focus.
As Bjorn mentioned, Xojo has no concept of layering, which this really depends on. I think the quickest way to get somewhere is to allow a container control to be pick a background type.
The trouble with that is Xojo iOS projects are not cross platform, so they don’t need to worry about the “never place controls on top of each other” rule if you are targeting Windows. Simply adding that to DesktopRectangle would not be sufficient. I wouldn’t object if it were also there, but we’d need it on DesktopContainer too.
Standard components from SwiftUI, UIKit, and AppKit like controls and navigation elements pick up the appearance and behavior of this material automatically.
That leads me to believe AppKit and UIKit will be fine.