diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/disassembly/editor/DisassemblyEditor.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/disassembly/editor/DisassemblyEditor.java index 8f508abfd37..93c3dbff2da 100644 --- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/disassembly/editor/DisassemblyEditor.java +++ b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/disassembly/editor/DisassemblyEditor.java @@ -164,10 +164,8 @@ public class DisassemblyEditor extends EditorPart implements ITextEditor, IReusa if ( document != null && viewer != null ) { DocumentContentProvider contentProvider = document.getContentProvider(); Object oldInput = contentProvider.getInput(); - if ( !oldInput.equals( debugContext ) ) { - contentProvider.changeInput( getViewer(), document.getPresentationContext(), oldInput, debugContext, document.getCurrentOffset() ); -// getViewer().refresh( false, true ); - } + contentProvider.changeInput( getViewer(), document.getPresentationContext(), oldInput, debugContext, document.getCurrentOffset() ); +// getViewer().refresh( false, true ); } } @@ -186,9 +184,7 @@ public class DisassemblyEditor extends EditorPart implements ITextEditor, IReusa if ( disassemblyContext != null ) { DisassemblyEditorInput oldInput = (DisassemblyEditorInput)getEditorInput(); if ( oldInput.getDisassemblyContext().equals( disassemblyContext ) ) { - if ( !oldInput.getDebugContext().equals( context ) ) { - setInput( new DisassemblyEditorInput( context, disassemblyContext ) ); - } + setInput( new DisassemblyEditorInput( context, disassemblyContext ) ); } } } diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/disassembly/editor/DisassemblyEditorPresentation.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/disassembly/editor/DisassemblyEditorPresentation.java index 15895196399..39cc1db0350 100644 --- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/disassembly/editor/DisassemblyEditorPresentation.java +++ b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/disassembly/editor/DisassemblyEditorPresentation.java @@ -11,6 +11,8 @@ package org.eclipse.cdt.debug.internal.ui.disassembly.editor; +import org.eclipse.cdt.debug.internal.ui.preferences.ICDebugPreferenceConstants; +import org.eclipse.cdt.debug.ui.CDebugUIPlugin; import org.eclipse.cdt.debug.ui.ICDebugUIConstants; import org.eclipse.cdt.debug.ui.disassembly.IDocumentPresentation; import org.eclipse.debug.internal.ui.viewers.model.provisional.PresentationContext; @@ -21,19 +23,21 @@ import org.eclipse.debug.internal.ui.viewers.model.provisional.PresentationConte */ public class DisassemblyEditorPresentation extends PresentationContext implements IDocumentPresentation { - private boolean fShowIntstructions = true; + private boolean fShowInstructions = true; private boolean fShowSource = false; public DisassemblyEditorPresentation() { super( ICDebugUIConstants.ID_DEFAULT_DISASSEMBLY_EDITOR ); + fShowInstructions = CDebugUIPlugin.getDefault().getPreferenceStore().getBoolean( ICDebugPreferenceConstants.PREF_DISASM_SHOW_INSTRUCTIONS ); + fShowSource = CDebugUIPlugin.getDefault().getPreferenceStore().getBoolean( ICDebugPreferenceConstants.PREF_DISASM_SHOW_SOURCE ); } public boolean showIntstructions() { - return fShowIntstructions; + return fShowInstructions; } public void setShowIntstructions( boolean showIntstructions ) { - fShowIntstructions = showIntstructions; + fShowInstructions = showIntstructions; } public boolean showSource() { diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/disassembly/viewer/DocumentContentProvider.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/disassembly/viewer/DocumentContentProvider.java index 11644655b9e..cc19bf1a825 100644 --- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/disassembly/viewer/DocumentContentProvider.java +++ b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/disassembly/viewer/DocumentContentProvider.java @@ -130,16 +130,14 @@ public class DocumentContentProvider implements IModelChangedListener { public void changeInput( VirtualSourceViewer viewer, IDocumentPresentation presentationContext, Object oldInput, Object newInput, int offset ) { fViewer = viewer; - if ( newInput != oldInput ) { - fInput = newInput; - IDocumentElementContentProvider contentAdapter = getContentAdapter( getInput() ); - if ( contentAdapter != null ) { - DocumentBaseChangeUpdate update = new DocumentBaseChangeUpdate( this, contentAdapter, presentationContext, getRoot(), getBase(), getInput(), offset ); - schedule( update ); - } - else { - inputChanged( new DocumentBaseChangeUpdate( this, contentAdapter, presentationContext, getRoot(), getBase(), getInput(), offset ) ); - } + fInput = newInput; + IDocumentElementContentProvider contentAdapter = getContentAdapter( getInput() ); + if ( contentAdapter != null ) { + DocumentBaseChangeUpdate update = new DocumentBaseChangeUpdate( this, contentAdapter, presentationContext, getRoot(), getBase(), getInput(), offset ); + schedule( update ); + } + else { + inputChanged( new DocumentBaseChangeUpdate( this, contentAdapter, presentationContext, getRoot(), getBase(), getInput(), offset ) ); } }