mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-04-22 06:02:11 +02:00
Bug 511029 - Debug views become permanently pinned...
... if they are closed and reopened whilst pinned. This was because IPartListener2 was being removed before #partClosed() was called. Change-Id: I16de016387131b775237b5d61639bb32107231fe Signed-off-by: Bruno Medeiros <bruno.do.medeiros@gmail.com>
This commit is contained in:
parent
d45c67967a
commit
5c93171cbc
1 changed files with 9 additions and 4 deletions
|
@ -145,10 +145,7 @@ public class PinDebugContextActionDelegate implements IViewActionDelegate, IActi
|
|||
public void partClosed(IWorkbenchPartReference partRef) {
|
||||
IWorkbenchPart part = partRef.getPart(false);
|
||||
if (part.equals(fPart)) {
|
||||
if (fAction.isChecked()) {
|
||||
DebugEventFilterService.getInstance().removeDebugEventFilter(fPart);
|
||||
fAction.setChecked(false);
|
||||
}
|
||||
unpinPart();
|
||||
}
|
||||
}
|
||||
@Override
|
||||
|
@ -174,6 +171,14 @@ public class PinDebugContextActionDelegate implements IViewActionDelegate, IActi
|
|||
public void dispose() {
|
||||
DebugUITools.removePartDebugContextListener(fPart.getSite(), this);
|
||||
fPart.getSite().getWorkbenchWindow().getPartService().removePartListener(fPartListener);
|
||||
unpinPart();
|
||||
}
|
||||
|
||||
protected void unpinPart() {
|
||||
if (fAction.isChecked()) {
|
||||
DebugEventFilterService.getInstance().removeDebugEventFilter(fPart);
|
||||
fAction.setChecked(false);
|
||||
}
|
||||
}
|
||||
|
||||
protected ISelection getActiveDebugContext() {
|
||||
|
|
Loading…
Add table
Reference in a new issue