Re: Share NSView between processes

2012-09-22 Thread Ken Thomases
On Sep 19, 2012, at 9:05 PM, Zak Nelson wrote: At a high level, I'd like to share an NSView between processes. That's not a high level. That's a pre-determined implementation approach, which is at best mid-level. You should really rethink this. As stated – share an NSView between processes

Re: Share NSView between processes

2012-09-22 Thread Zak Nelson
Thanks for the detailed response and apologies for not mentioning my external constraints upfront. As stated ­ share an NSView between processes ­ it's not possible. Even on a more abstract level, it's generally not the way things are done. Why do you think you need/want to do this? I have a

Re: Share NSView between processes

2012-09-22 Thread Jens Alfke
On Sep 22, 2012, at 3:18 AM, Zak Nelson z...@adobe.com wrote: This framework renders HTML content and the user can interact with it. The framework only gives you access to the NSView which it renders into. Since the content is rendered in the subprocess, which is hidden, I'm trying to

Re: Share NSView between processes

2012-09-22 Thread Zak Nelson
: Share NSView between processes This is possible to do, but it’s a _buttload_ of work. Chrome does it (and now Safari). It involves setting up shared memory buffers for pixmaps and using a lot of IPC calls to route events back and forth. Which sounds straightforward at this level

Share NSView between processes

2012-09-21 Thread Zak Nelson
At a high level, I'd like to share an NSView between processes. On Windows, you can share HWNDs across the process boundary, but on mac this doesn't seem possible (http://stackoverflow.com/questions/583202/mac-os-x-can-one-process-render-to-another-processs-window). To get around this, I'm

Re: Share NSView between processes

2012-09-21 Thread Mikevann
Well there's CGEventPostToPSN (note you need the ProcessSerialNumber for the process and not its unix pid) but that's mostly useful if you're trying to control an app that's not yours. It might be a better approach to go the IPC route setting up communications and trading data objects between