Download
Getting Started
Members
Projects
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
More
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
Toggle navigation
Bugzilla – Attachment 97484 Details for
Bug 224477
resume, suspend and step not enabled/disabled during stepping
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
Log In
[x]
|
Terms of Use
|
Copyright Agent
Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read
this important communication.
[patch]
patch
update-actions.patch (text/plain), 4.15 KB, created by
Darin Wright
on 2008-04-24 12:14:31 EDT
(
hide
)
Description:
patch
Filename:
MIME Type:
Creator:
Darin Wright
Created:
2008-04-24 12:14:31 EDT
Size:
4.15 KB
patch
obsolete
>### Eclipse Workspace Patch 1.0 >#P org.eclipse.debug.ui >Index: ui/org/eclipse/debug/internal/ui/views/launch/LaunchView.java >=================================================================== >RCS file: /cvsroot/eclipse/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/LaunchView.java,v >retrieving revision 1.180 >diff -u -r1.180 LaunchView.java >--- ui/org/eclipse/debug/internal/ui/views/launch/LaunchView.java 23 Oct 2007 02:56:59 -0000 1.180 >+++ ui/org/eclipse/debug/internal/ui/views/launch/LaunchView.java 24 Apr 2008 16:12:49 -0000 >@@ -12,6 +12,7 @@ > package org.eclipse.debug.internal.ui.views.launch; > > >+import java.util.ArrayList; > import java.util.Iterator; > > import org.eclipse.core.runtime.IAdaptable; >@@ -75,8 +76,10 @@ > import org.eclipse.jface.viewers.ISelection; > import org.eclipse.jface.viewers.ISelectionChangedListener; > import org.eclipse.jface.viewers.IStructuredSelection; >+import org.eclipse.jface.viewers.ITreeSelection; > import org.eclipse.jface.viewers.SelectionChangedEvent; > import org.eclipse.jface.viewers.StructuredViewer; >+import org.eclipse.jface.viewers.TreePath; > import org.eclipse.jface.viewers.TreeSelection; > import org.eclipse.jface.viewers.Viewer; > import org.eclipse.swt.SWT; >@@ -155,17 +158,16 @@ > > class Visitor implements IModelDeltaVisitor { > public boolean visit(IModelDelta delta, int depth) { >- Object element = delta.getElement(); > if ((delta.getFlags() & (IModelDelta.STATE | IModelDelta.CONTENT)) > 0) { > // state and/or content change > if ((delta.getFlags() & IModelDelta.SELECT) == 0) { > // no select flag > if ((delta.getFlags() & IModelDelta.CONTENT) > 0) { > // content has changed without select >> possible re-activation >- possibleChange(element, DebugContextEvent.ACTIVATED); >+ possibleChange(getViewerTreePath(delta), DebugContextEvent.ACTIVATED); > } else if ((delta.getFlags() & IModelDelta.STATE) > 0) { > // state has changed without select >> possible state change of active context >- possibleChange(element, DebugContextEvent.STATE); >+ possibleChange(getViewerTreePath(delta), DebugContextEvent.STATE); > } > } > } >@@ -173,6 +175,24 @@ > } > } > >+ /** >+ * Returns a tree path for the node, *not* including the root element. >+ * >+ * @param node >+ * model delta >+ * @return corresponding tree path >+ */ >+ private TreePath getViewerTreePath(IModelDelta node) { >+ ArrayList list = new ArrayList(); >+ IModelDelta parentDelta = node.getParentDelta(); >+ while (parentDelta != null) { >+ list.add(0, node.getElement()); >+ node = parentDelta; >+ parentDelta = node.getParentDelta(); >+ } >+ return new TreePath(list.toArray()); >+ } >+ > public ContextProvider(TreeModelViewer viewer) { > super(LaunchView.this); > fViewer = viewer; >@@ -198,18 +218,25 @@ > fire(new DebugContextEvent(this, selection, DebugContextEvent.ACTIVATED)); > } > >- protected void possibleChange(Object element, int type) { >+ protected void possibleChange(TreePath element, int type) { > DebugContextEvent event = null; > synchronized (this) { >- if (fContext instanceof IStructuredSelection) { >- IStructuredSelection ss = (IStructuredSelection) fContext; >- if (!(ss.size() == 1 && ss.getFirstElement().equals(element))) { >- return; >+ if (fContext instanceof ITreeSelection) { >+ ITreeSelection ss = (ITreeSelection) fContext; >+ if (ss.size() == 1) { >+ TreePath current = ss.getPaths()[0]; >+ if (current.startsWith(element, null)) { >+ if (type == DebugContextEvent.STATE || current.getSegmentCount() == element.getSegmentCount()) { >+ // update when a parent of the selected child changes state OR when >+ // the change is for the current context >+ event = new DebugContextEvent(this, fContext, type); >+ } >+ } > } >- } else { >- return; >- } >- event = new DebugContextEvent(this, fContext, type); >+ } >+ } >+ if (event == null) { >+ return; > } > if (getControl().getDisplay().getThread() == Thread.currentThread()) { > fire(event);
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 224477
: 97484