Bug 80140 - [plan item] Macro recording and playback
Summary: [plan item] Macro recording and playback
Status: RESOLVED WONTFIX
Alias: None
Product: Platform
Classification: Eclipse Project
Component: UI (show other bugs)
Version: 3.0   Edit
Hardware: All All
: P4 enhancement (vote)
Target Milestone: ---   Edit
Assignee: Platform-UI-Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords: plan
: 251035 (view as bug list)
Depends on: 8519 35949 57105 234710
Blocks:
  Show dependency tree
 
Reported: 2004-12-03 14:28 EST by Jim des Rivieres CLA
Modified: 2009-08-30 02:25 EDT (History)
17 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Jim des Rivieres CLA 2004-12-03 14:28:34 EST
Add a mechanism for recording a sequence of user interface interactions, 
storing then in a file, and playing them back at a later time. File playback 
will be made available as an action for the benefit of cheat sheets and active 
help. [Platform UI]
Comment 1 Gunnar Wagenknecht CLA 2004-12-15 02:12:04 EST
Shouldn't this bug depend on bug 8519, bug 35949 and bug 57105? 
Comment 2 Ed Burnette CLA 2005-01-25 10:32:17 EST
See http://dev.eclipse.org/mhonarc/lists/platform-scripting-dev/msg00006.html
for pointers to a bunch of related info and efforts.
Comment 3 Dejan Glozic CLA 2005-04-06 17:43:28 EDT
Post 3.1
Comment 4 Mark McLaren CLA 2005-05-01 06:23:36 EDT
It seems to me that executing a script is very similar to 'redoing' a sequence
of commands that have been 'undone'.  Perhaps the scriping framwork could use
the same 'command pattern' code used to implement Undo/Redo?

Comment 5 Ed Burnette CLA 2005-12-09 00:29:08 EST
I see that TPTP and PDE UI tests have some way to record and play back user interface gestures, could any of that be used for implementing this feature?
Comment 6 Dejan Glozic CLA 2005-12-09 08:08:19 EST
PDE UI macro recorder/playback was written by us (by me, to me exact :-) and is the basis for this proposal. We would like to have a comprehensive solution that resolves the problems of script fragility that we encountered during the development of the initial solution.
Comment 7 Philippe Ombredanne CLA 2005-12-09 11:43:21 EST
Dejan,
I did examine and played a lot with your code earlier this year.
A major issue imho is the widget resolution at playback.
There are a lot of lessons learned there with abbot in terms of finding widgets in a repeatable and reasonably safe way.
In the PDE UI you rely on generated id which may not be re-created exactly in the same if UI changes occured, I think.
Comment 8 Philippe Ombredanne CLA 2005-12-09 11:45:49 EST
and I digged into the TPTP UI recorder code when it was released. The code looked to me as a derivative from the PDE UI test code from Dejan.
Comment 9 Curtis d'Entremont CLA 2005-12-09 11:53:08 EST
Including Ali in the conversation since he worked on the TPTP one.
Comment 10 Dejan Glozic CLA 2005-12-09 11:59:49 EST
I think a critical mass of the community push and converging ideas is gathering to start moving this item. You are right - PDE and TPTP code bases are 'sisters' (or should I say 'PDE's version is an older sister? :-).

Our initial assesment implied that unless a component explicitly declares a set of commands it can record and play back, we are really recording calling 'internal APIs' (an oxymoron if there was ever one). 

I have proposal for Eclipse Automation almost ready but the hectic pace of Eclipse M4 is driving me into the ground. The moment we ship M4, I will give it more attention and publish it to start the lively discussion. Although we cannot commit to this topic in 3.2, we should start talking about it as soon as possible so that we can start working on it right after 3.2 GA.
Comment 11 amehrega CLA 2005-12-09 12:09:25 EST
Dejan contirbuted his code to TPTP, which I integrated with TPTP's test project.  

Philippe, in response to your widget resolving mechanism you might be interested in http://www.eclipse.org/tptp/test/documents/userguides/Intro-Auto-GUI.html#2.4.1

Thanks Curtis for adding me to this list.
Comment 12 Dejan Glozic CLA 2005-12-09 12:18:05 EST
Ali, we want to make Eclipse Automation built in very deep in the platform and have one set of rules that all follow. As you are making future plans, don't try to create a fully autonomous framework because the investment will not be worthwhile considering the support in Eclipse. Instead, plan on participating in the upcoming work so that we have one automation story that is hopefully inclusive enough to accommodate various use cases (including TPTP's).
Comment 13 Ed Burnette CLA 2005-12-09 15:14:58 EST
See also the Dash/Monkey scripting effort described in various posts on http://eclipse-projects.blogspot.com and also on http://www.eclipse.org/proposals/dash/ . Adding Bjorn to the CC list.

Eventually, I think there should be one unified scripting / macro / keydef / command / automation / recording / etc. framework in Eclipse. But it may take a while to get there so the various experiments are useful.
Comment 14 Dejan Glozic CLA 2005-12-10 17:53:10 EST
Absolutely. Experiments are important to understand the issues and problems and are encouraged. What I would like to discourage is an effort to define a comprehensive solution that would then be pushed down into Eclipse.
Comment 15 Dejan Glozic CLA 2005-12-10 17:54:48 EST
We may also take advantage of the upcoming EclipseCon to hold a BOF talk or a panel on the possible future shape of Eclipse automation.
Comment 16 Dani Megert CLA 2008-10-16 02:50:32 EDT
*** Bug 251035 has been marked as a duplicate of this bug. ***
Comment 17 Denis Roy CLA 2009-08-30 02:25:42 EDT
As of now 'LATER' and 'REMIND' resolutions are no longer supported.
Please reopen this bug if it is still valid for you.