Putting together a document is great.

While you are working on it, you should take a look at the WebKit
documentation as a reference point if you're not already; while the
WebKit embedding method for Windows isn't as rich as NSWebView in
Cocoa, reading up on both will give you a good idea of the types of
embedding and extension that the WebKit and Chromium code bases are
already designed for

As one example, they both make extensive use of "delegate" objects
instead of individual functions as callbacks--while this isn't a
common idiom in Windows, it does have some advantages if you're not
trying to create a drop-in replacement for Microsoft's WebBrowser
control.

--Amanda

On Mon, Nov 24, 2008 at 10:51 AM, Marshall Greenblatt
<[EMAIL PROTECTED]> wrote:
> The ActiveX control that I'm developing for Windows isn't portable, but the
> underlying chrome-based functionality (like test_shell, for instance) is
> quite generic.  It would be rather easy to break the ActiveX project into
> two separate components -- one that provides the underlying chrome-based
> implementation as a simple, streamlined, C++ framework and the other that
> adds an ActiveX wrapper on top if it.  The framework would provide standard
> implementations for the browser window, message loop and default
> functionality (printing, context menus, resource loading, etc), allowing us
> to offer similar functionality and semantics on different platforms and
> technologies (ActiveX, ObjC, wxWidgets, etc).  The embedded client could
> then customize the default functionality and handle events by registering
> callback interfaces.  For instance, creating a fully functional embedded
> chrome window using this framework might be as easy as the following:
>
> // Create the new browser window object
> ChromeBrowerWindow *pWnd = new ChromeBrowerWindow();
>
> // Register our custom handler if we're interested in intercepting browser
> events
> // MyBrowserHandler implements the ChromeBrowserHandler interface
> MyBrowserHandler handler;
> pWnd->RegisterHandler(&handler);
>
> // Create the browser window parented to |parentWindow| and drawn at the
> specified location
> pWnd->Create(parentWindow, xpos, ypos, width, height, flags);
>
> // Navigate to a URL
> pWnd->LoadURL("http://www.google.com";);
>
> I'll put together a document describing what I think the framework should
> look like.
>
>
> On Mon, Nov 24, 2008 at 9:16 AM, Mike Pinkerton <[EMAIL PROTECTED]>
> wrote:
>>
>> On Mac we definitely want an objective-C wrapper around our framework.
>> That's what WebKit provides, and what all our consumers would
>> expect/demand.
>>
>> On Sun, Nov 23, 2008 at 7:05 AM, Avi Drissman <[EMAIL PROTECTED]> wrote:
>> > I've experienced CFPlugins, and I've never figured out why they use a
>> > COM-like system there. It adds a ton of complexity for no real benefit.
>> >
>> > I can't speak for other platforms, but using COM on the Mac is not
>> > needed
>> > when you have ObjC and its introspection capabilities. I don't see why a
>> > framework wouldn't do.
>> >
>> > Avi
>> >
>> > On Sat, Nov 22, 2008 at 11:40 PM, Marshall Greenblatt
>> > <[EMAIL PROTECTED]> wrote:
>> >>
>> >> Hi All,
>> >>
>> >> As many of you probably know there's been talk of developing a
>> >> chrome-based ActiveX (COM) control for Windows.  But what about other
>> >> platforms?
>> >>
>> >> For OSX, Apple offers a COM-like framework called "Core Foundation
>> >> Plug-ins":
>> >>
>> >>
>> >> http://developer.apple.com/documentation/CoreFoundation/Conceptual/CFPlugIns/CFPlugIns.html
>> >>
>> >> For linux, there's quite a collection of COM/CORBA-like
>> >> implementations:
>> >> http://linas.org/linux/corba.html
>> >>
>> >> Or, getting away from COM, we have frameworks such as Qt, gtk+,
>> >> wxWidgets,
>> >> etc.  What framework would you find the most useful for embedding a
>> >> browser
>> >> control in your development project(s) on the linux and/or osx
>> >> platforms?
>> >>
>> >> - Marshall
>> >>
>> >>
>> >>
>> >>
>> >
>> >
>> > >
>> >
>>
>>
>>
>> --
>> Mike Pinkerton
>> Mac Weenie
>> [EMAIL PROTECTED]
>>
>>
>
>
> >
>



-- 
--Amanda

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Chromium-dev" group.
To post to this group, send email to chromium-dev@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/chromium-dev?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to