Soon Objective-J and Cappuccino will be open sourced and all your questions will be answered, but until then...
Yes, that's correct. Most visual elements are absolutely positioned divs (called "views", CPView in Cappuccino, NSView in OpenStep/Cocoa). We catch all events and handle them ourselves (i.e. determining which views get the event, etc). This gives us things like the "responder chain" and much better control over events. Normally it's impossible for an element behind another element to receive an event, but not in Cappuccino. A lot of little problems are solved by this approach.
There's a lot more to it than that, but it's late and I need sleep...
Awesome, i really didnt go through your code much, but i was trying myself to make this technique happen using simple old javascript. Things that were bothering me were for example the fact of passing the div element around, i think you have the CGRectMake() function that returns that div element, interesting though is that you dont add any of your methods/property to that div dom element. Another interesting thing is that you're able to figure out the size of elements before they are written to the client (browser), do you write it 2 times, one to get size and another to actually display it?
Yes, that's correct. Most visual elements are absolutely positioned divs (called "views", CPView in Cappuccino, NSView in OpenStep/Cocoa). We catch all events and handle them ourselves (i.e. determining which views get the event, etc). This gives us things like the "responder chain" and much better control over events. Normally it's impossible for an element behind another element to receive an event, but not in Cappuccino. A lot of little problems are solved by this approach.
There's a lot more to it than that, but it's late and I need sleep...