Hi Glenn, Yeah, I'm mostly worried about developer orientation. I don't want to make myself the only maintainer :-)
And the tooling for C++ is more and more of a problem, I don't have Visual Studio on this machine, for example, so I can't do any significant changes... But I think it makes sense to move this into the core. Thanks, - Kim On Sat, Jan 10, 2009 at 20:48, Glenn Carr <[email protected]> wrote: > Kim, > > I don't think you can go wrong moving more of DQSD into C++. The only real > downside that I see is it limiting the number of developers that might be > willing of have the experienced to work on it, but since a significant > portion is C++ now, I don't think that should even be a concern. Honestly, > I'd love to see everything except configurable aspects (searches, etc) of > the tool moved into C++. > > Glenn > > On Sat, Jan 10, 2009 at 1:34 PM, Kim Gräsman <[email protected]> wrote: >> >> Hi guys, >> >> I've spent a little time investigating the Vista "blank window" issues >> that have been raised on the users list, and come up with a couple of >> ideas. >> >> There are two things you can launch from DQSD, a) searches and b) URLs >> (and a couple of other things, but let's leave it at that). >> >> Then there's a setting that affects how these launches are performed >> -- the launchmode, which can be 0) Use IE or 1) Use default browser. >> >> So there's essentially a behavior matrix for what happens in the >> respective cases- >> >> 0 >> 1 >> a form.submit Write out .html >> file to submit form in body onload + ShellExecute(file) >> b window.open + window.navigate ShellExecute(URL) >> >> Most of these methods have one issue or another with IE's new >> Protected Mode, because DQSD runs in un-PM, but launches searches and >> URLs that require PM, so there tends to be a lot of intermediary >> windows launched that bridge between the two modes. >> >> As if this wasn't complicated enough to follow, all cases with >> launchmode 0 happen in script, and all cases with launchmode 1 happen >> inside DQSDTools.Launcher. >> >> I'm wondering whether there would be value in moving all this logic >> into DQSDTools, and moving the actual logic to a simple class >> hierarchy of Launchers. Something like- >> >> class Launcher >> { >> public: >> virtual void SubmitForm(IHTMLFormElement* pForm, VARIANT options); >> virtual void LaunchUrl(BSTR url, VARIANT options); >> }; >> >> and then with implementations for the respective launch modes, say, >> IELauncher and DefaultBrowserLauncher. >> >> The primary benefit of having the complete logic in C++ code, is that >> we can (hopefully) use new Vista APIs to safely bridge between >> un-protected and protected mode. >> >> What's also cool about this is that we can easily select >> implementation based on launchmode, and adding a launchmode is as >> simple as adding a new implementation... >> >> ...which leads me to another thing: we should probably add a new >> launchmode called Explicit, which comes with an explicit browser path. >> That way, users can launch their searches with a specific browser. >> This should please the x64 crowd, who want to use the 32-bit Internet >> Explorer even if DQSD runs in the 64-bit version of the browser. >> >> So... Anyone opposed to moving form submittal/URL launching entirely >> into DQSDTools? What are the drawbacks I don't see? >> >> Thanks, >> - Kim >> >> >> ------------------------------------------------------------------------------ >> Check out the new SourceForge.net Marketplace. >> It is the best place to buy or sell services for >> just about anything Open Source. >> http://p.sf.net/sfu/Xq1LFB >> _______________________________________________ >> Archive: https://lists.sourceforge.net/lists/listinfo/dqsd-devel > > > ------------------------------------------------------------------------------ > Check out the new SourceForge.net Marketplace. > It is the best place to buy or sell services for > just about anything Open Source. > http://p.sf.net/sfu/Xq1LFB > _______________________________________________ > Archive: https://lists.sourceforge.net/lists/listinfo/dqsd-devel > > ------------------------------------------------------------------------------ Check out the new SourceForge.net Marketplace. It is the best place to buy or sell services for just about anything Open Source. http://p.sf.net/sfu/Xq1LFB _______________________________________________ Archive: https://lists.sourceforge.net/lists/listinfo/dqsd-devel
