Bug 441713 - [visualizer] Make pinning of multicore visualizer view possible
Summary: [visualizer] Make pinning of multicore visualizer view possible
Status: RESOLVED FIXED
Alias: None
Product: CDT
Classification: Tools
Component: cdt-debug-dsf-gdb (show other bugs)
Version: Next   Edit
Hardware: PC Linux
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: Marc Dumais CLA
QA Contact: Marc Khouzam CLA
URL:
Whiteboard:
Keywords:
Depends on: 436095
Blocks: 442312
  Show dependency tree
 
Reported: 2014-08-13 11:39 EDT by Marc Dumais CLA
Modified: 2014-08-22 07:14 EDT (History)
4 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Marc Dumais CLA 2014-08-13 11:39:54 EDT
It would be nice to be able to pin the multicore visualizer to a debug context (debug session). When pinned, the MV would stop responding to workbench selection changes that would otherwise make it switch to a different debug session.

This would be specially useful in combination to the visualizer view cloning feature (bug 436095).
Comment 1 Marc Dumais CLA 2014-08-19 10:51:43 EDT
Preliminary patch that implements pinning in the MV: 

https://git.eclipse.org/r/31898
Comment 2 Marc Dumais CLA 2014-08-21 13:14:48 EDT
Hi,

I posted a new version of this patch. 

One thing that might be a bit controversial is that in this patch, I removed the debug buttons from the multicore visualizer toolbar. Once you start having multiple MVs, the bars seem redundent. Also their presence on each instance of the MV might give the users the impression that they would act upon the debug session shown in the visualizer where the pressed button is, which is not the case (they act on the currently selected debug session from the debug view). 

I hesitated a bit about leaving or removing the debug actions from the MV context menu. These at least do not add to the workbench clutter, and in some cases right-clicking on a a MV will select it in the debug view, making it a bit more intuitive for the users, I think.

Comments are welcome!
Comment 3 William Swanson CLA 2014-08-21 13:36:20 EDT
(In reply to Marc Dumais from comment #2)
> 
> One thing that might be a bit controversial is that in this patch, I removed
> the debug buttons from the multicore visualizer toolbar. Once you start
> having multiple MVs, the bars seem redundent. Also their presence on each
> instance of the MV might give the users the impression that they would act
> upon the debug session shown in the visualizer where the pressed button is,
> which is not the case

Well, actually it _should_ be -- that was the general idea. The debug actions
in a visualizer should be applied to the selection in the visualizer,
which in the "normal" case should be the same as the debug view selection.

What are the case(s) where the selection in the visualizer is different
from that in the debug view? Are we talking about, for example, a pinned visualizer, etc.?

If we can't "remember" the appropriate debug session to use for each visualizer,
then we might remove (or disable) the debug toolbar actions in a pinned visualizer, but I'd say we shouldn't remove them from a non-pinned visualizer that _is_ tracking the current selection.
Comment 4 Marc Dumais CLA 2014-08-21 13:48:53 EDT
(In reply to William Swanson from comment #3)
> What are the case(s) where the selection in the visualizer is different
> from that in the debug view? Are we talking about, for example, a pinned
> visualizer, etc.?

Right - it's the case where a visualizer is pinned to a session that is not the one selected in the debug view. 

> 
> If we can't "remember" the appropriate debug session to use for each
> visualizer,
> then we might remove (or disable) the debug toolbar actions in a pinned
> visualizer, but I'd say we shouldn't remove them from a non-pinned
> visualizer that _is_ tracking the current selection.

Interesting idea - I'll try that and post an updated patch.

Thanks Bill!
Comment 5 Marc Dumais CLA 2014-08-22 07:14:40 EDT
committed in master