Bumping this thread. I should have probably choose better time for posting this than just before release and EclipseCon :-)
Thanks, -Peter On Fri, Mar 18, 2011 at 10:53 AM, Peter Stibrany <[email protected]> wrote: > Hello Mylyn developers! > > I have created small prototype to explore possible integration between > browser-based task editor and rest of Mylyn/Eclipse. I would like to > show it to you (link to video is below), and to get some feedback. I > will use my connector for FogBugz as an example here, but idea is not > restricted to this system only. > > For connector that I work on (FogBugz connector), browser-based editor > would actually make lot of sense. Current version of connector uses > task editor based on mylyn UI. This has several problems. Since > FogBugz XML API is not complete, custom task editor can never support > all features known from Web UI. Even though task editor is trying hard > to duplicate stuff known from Web UI, it is far from perfect. Lot of > stuff is missing, some concepts are different in Mylyn than they are > in Web UI (i.e. displaying/uploading attachments, html editing, custom > fields, ...) Also Web UI progresses very fast, and it's very hard to > keep up with it. > > For these and some other reasons I have decided to give browser-based > task editor a try. But instead of using BrowserFormPage from Mylyn, my > idea is to integrate browser UI into Eclipse/Mylyn as much as > possible. I have developed a prototype to see how it would work in > practice, and it seems to me, that it might be the way to go forward. > > Deep integration is possible thanks to Browser component in SWT, which > supports executing additional Javascript code and calling Java code > from Javascript. Using some javascript, I can integrate FogBugz Web UI > and Eclipse/Mylyn together! > > I have recorded small demo for you to see what I mean by this > integration. You can see how FogBugz Web UI and Eclipse/Mylyn work > together: > > - When case is first opened, user is not authenticated. My javascript > code detects this situation, and asks connector for username/password > that user already supplied. Then it logs the user in with his > credentials. > - When user edits case in the web UI, my java code asks Mylyn to > refresh associated task. > - When user clicks case reference, instead of changing content of > current browser window, my code opens new Task editor instead (through > Mylyn) > - When user right-clicks on the attachment, we show Mylyn attachment > menu, with features like "Apply Patch..." > - When creating new task from Mylyn, we open FogBugz page for creating > new case. After user submits the case, we tell Mylyn to "convert" it's > associated local task to real task. > > See the demonstration here: http://vimeo.com/21166223 > > What are the benefits of such integration? > > First and foremost, task editing uses UI that people know and use > everyday. This is full UI with support for all the bells and whistles > that users are used to, not some limited replacement. Our task list is > still up-to-date, we can work with contexts (through Task list), we > can use nice features related to attachments. With some more hacking, > it would be possible to put missing pieces from Mylyn UI into the web > page (with javascript again): task category combo, attach context > checkbox, ... > > There are some cons too... e.g. offline mode doesn't work (although I > think it would be possible to implement some support with a some from > caching proxy) and it works differently than most other connectors. > > I am interested to hear what you think about this way of implementing > connector task editor. My prototype code also uses lot of Mylyn > internal API ... would you be interested in exposing required stuff to > make integration like this easier, or is this something you don't like > in principle? > > Thank you for your time, > -Peter Stibrany > _______________________________________________ mylyn-integrators mailing list [email protected] https://dev.eclipse.org/mailman/listinfo/mylyn-integrators
