Thread with 15 posts

jump to expanded post

today we discovered that a UIWindow can be smaller than the screen and that subviews of a UIWindow can be outside the bounds of the UIWindow and yet still be rendered, though of course they don't receive touch input

in other words, it's just a UIView like any other

Open thread at this post

we also discovered that the documentation for -[CALayer convertPoint:toLayer:] is… so unclear as to basically be wrong, but its actual behaviour is the one we hoped it might be, so that's nice :)

Open thread at this post

one of touchHLE's great original sins, entirely my fault, is that more or less everything in the code assumes that all layers and views are axis-aligned rectangles that can't be rotated, and that the only co-ordinate space transform that propagates hierarchically is translation

Open thread at this post

this was of course a temporary limitation to make it easier to implement correctly, but as everyone knows, there is nothing more permanent than a temporary solution, and it's been haunting us for two years now

it's also an embarrassment for me as a graphics programmer really

Open thread at this post

but while the fix for it is β€œjust” a bunch of matrix multiplications (a thing I ought to find a piece of cake given my ostensible career history), they affect all sorts of different places in the code, and cascade, and you'd better make sure you do them in exactly the right order

Open thread at this post

so this is why I was very excited at finding a viable way for us to build simple iPhone OS 2 apps without using Xcode 3 on fucking Mac OS X Leopard in that insufferably slow VM, because the only way to fix all this and remain sane is to make gradually more complex visual tests

Open thread at this post

and that's what you're getting a taste of with the images in this thread: I'm gradually accumulating little test screens in touchHLE's imaginatively named β€œTestApp”, each of which provides a visual test of some aspect of Core Animation's layer hierarchy and affine transforms

Open thread at this post