Craig Hockenberry Profile picture
May 9, 2019 12 tweets 2 min read Read on X
Hopefully you've had a chance to read my post about Marzipan by now:

blog.iconfactory.com/2019/05/what-t…

Here's a thread of some thoughts that didn't make it into the post (it was already too long!)
Marzipan is obviously the next thing. But there are hints that this is just a first step in a much larger vision from Apple. What might that look like?
There have been rumors about iPads with mice and Macs with touch screens.

Crossing the streams between platforms seems like an interaction nightmare, right?
You could have said the same thing at one point about different screen sizes on iOS devices (and, in fact, having different sizes was a nightmare at one point.)

But auto layout and size classes solved that problem. It's still not _easy_ but it's not insurmountable.
So what if a similar system came along that adapted to devices? Call them "interaction classes".

Your apps could know if it had a mouse or not. Or a touchscreen. Or augmented reality. Or …
Some of the system could adapt automatically - like the frames around views changing when you rotate a device or put it in split screen.

So you connect a mouse and controls in your app get smaller and an auto layout pass.
Correspondingly, when you get a touch screen Mac, controls get larger.

But there would also be other non-visual changes. Like the difference between a mouse dragging and a finger scrolling would change.

Some interaction classes would have hover states, others would not.
This is obviously a radical change. And would probably mean that both AppKit and UIKit would be deprecated.

There would be a lot of code to rewrite, but apps would be freed from knowing the details of user interactions.
I think this is especially important when you consider all the new interaction types that are on the near horizon: augmented reality and/or voice control.

It's also a bold and pragmatic change that Apple is famous for. No one else in the industry is doing it either…
There is a long history of "cross platform frameworks" that suck. We've been down that road many times and always end up in the same place.

Cross platform interactions would be totally new and very forward thinking.
There's also no doubt in my mind that this new Kit would be Swift-only (remember, forward thinking!)

And unlike Marzipan, it won't be something where the old & new can coexist. It's a fresh start for EVERYTHING.
Or I could just be full of shit.

/end

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with Craig Hockenberry

Craig Hockenberry Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @chockenberry

Sep 21, 2022
Who at Apple thought that this was a keyboard layout worth investing time in?

(That's a trick question: the answer is "no one" - this thing is buggy as hell!) Image
A fun UIKeyboard notification fact: there are two active keyboard frames in this screenshot. And both are as wide as the screen, even though they aren't.

Pico isn't impressed. Image
It's a shame that it's impossible for an app to determine the state of the keyboard (either physical or virtual).

There's a ton of inference involved - is the frame height less than the height of "keys" or how big is this frame relative to my inputAccessoryView?
Read 6 tweets
Sep 19, 2022
If you're interested in some of the SwiftUI techniques we used to build @wallaroo_app, check out the Iconfactory blog. @BigZaphod is going to spend the week showing our solutions for common issues. First up, using the Layout protocol in a ScrollView:

blog.iconfactory.com/2022/09/wallar…
Next up in @BigZaphod's series of SwiftUI in @wallaroo_app: how he did the parallax effect while scrolling. Also, some pointers on how to use blurhash for better previews:

blog.iconfactory.com/2022/09/wallar…
Today's installment exploring SwiftUI in @wallaroo_app by @BigZaphod: scrolling hitches caused by AsyncImage and .mask modifiers. Also, caching lots of remote images.

blog.iconfactory.com/2022/09/wallar…
Read 7 tweets
Jun 7, 2022
Did you know that you can run macOS Ventura in a virtual machine on Apple Silicon using sample code? It's a great way to kick the tires without disk partitioning, rebooting, etc. Thread...
First step: get the sample code here: developer.apple.com/documentation/…

And Read The Fine Manual. But, of course, you won't.
Select the InstallationTool-Swift target and run it. The debug console will give you feedback. There are two phases: download (which takes awhile) and install (which takes awhile). Be patient (I wasn't). You need about 83 GB of free space.
Read 10 tweets
Oct 7, 2021
A new version of @kaleidoscopeapp is now available.

I’ve been beta testing it for the past couple of months and it’s great. Stuff I rely on remains reliable and new things don’t get in the way. A smooth transition.

kaleidoscope.app

Now, let’s talk about that price…
@kaleidoscopeapp "Holy crap!" "$150!" "WTH!!!!"

Yeah, and that's a bargain. Why?
@kaleidoscopeapp As far as I can tell, I spent $30 for the app back in 2013. So a tool that I've been using _every day_ for the past eight years has cost me $0.01 PER DAY.

That's a hell of a deal for what I've been getting.
Read 8 tweets
Sep 1, 2021
So many people are having problems with the new Banking Information requirements in App Store Connect.

Here is what you need to do:
1) Go to Agreements, Tax, and Banking, then select Banking in the subnav.

You should see a list of your bank accounts. Likely, there is only one. Click on that.
Here comes the fun part: you may or may not see Address, City, State, etc. fields.

If you don't see it, refresh the page. Then do it again. Keep going until you see it. Then enter your info, but don't enter the second line of the address field (it gets rejected).
Read 11 tweets
Jun 18, 2021
If your app has a UITableView, you're in good company. Pretty much every app ever written has one :-)

Here are some changes to be aware of with iOS 15:
You may notice a gap between section headers. This is an example of what I saw in our @linea_app - the yellow gap is new in iOS 15.

It took me awhile to figure out where it was coming from and how to get rid of it.
@linea_app The yellow isn't a new view and it's not a part of the section header. It's actually showing the table view's backgroundColor because there's a new gap between the row cell and the header.

This is part of what makes it confusing.
Read 7 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Don't want to be a Premium member but still want to support us?

Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal

Or Donate anonymously using crypto!

Ethereum

0xfe58350B80634f60Fa6Dc149a72b4DFbc17D341E copy

Bitcoin

3ATGMxNzCUFzxpMCHL5sWSt4DVtS8UqXpi copy

Thank you for your support!

Follow Us!

:(