Merge remote-tracking branch 'origin/GP-1479_Dan_memBytesSnapshotBorder' into patch

This commit is contained in:
ghidra1 2021-12-18 00:03:16 -05:00
commit 390b3128c0
2 changed files with 23 additions and 5 deletions

View file

@ -1034,7 +1034,11 @@ public class DebuggerListingProvider extends CodeViewerProvider {
public void cloneWindow() {
final DebuggerListingProvider newProvider = plugin.createNewDisconnectedProvider();
final ViewerPosition vp = getListingPanel().getFieldPanel().getViewerPosition();
final SaveState saveState = new SaveState();
writeConfigState(saveState);
Swing.runLater(() -> {
newProvider.readConfigState(saveState);
newProvider.goToCoordinates(current);
newProvider.getListingPanel()
.getFieldPanel()

View file

@ -25,6 +25,7 @@ import org.apache.commons.lang3.StringUtils;
import docking.ActionContext;
import docking.action.*;
import docking.menu.MultiStateDockingAction;
import docking.widgets.fieldpanel.support.ViewerPosition;
import ghidra.app.plugin.core.byteviewer.*;
import ghidra.app.plugin.core.debug.DebuggerCoordinates;
import ghidra.app.plugin.core.debug.gui.DebuggerLocationLabel;
@ -217,6 +218,11 @@ public class DebuggerMemoryBytesProvider extends ProgramByteViewerComponentProvi
return super.getByteViewerPanel();
}
@Override
protected void addToToolbar() {
// Prevent this from being added to the toolbar
}
/**
* Deal with the fact that initialization order is hard to control
*/
@ -363,6 +369,11 @@ public class DebuggerMemoryBytesProvider extends ProgramByteViewerComponentProvi
return trackingTrait.getSpec();
}
@Override
public boolean isConnected() {
return false;
}
public boolean isMainViewer() {
return isMainViewer;
}
@ -417,13 +428,16 @@ public class DebuggerMemoryBytesProvider extends ProgramByteViewerComponentProvi
@Override
public void cloneWindow() {
final DebuggerMemoryBytesProvider newProvider = myPlugin.createNewDisconnectedProvider();
SaveState saveState = new SaveState();
final ViewerPosition vp = panel.getViewerPosition();
final SaveState saveState = new SaveState();
writeConfigState(saveState);
Swing.runLater(() -> {
newProvider.readConfigState(saveState);
newProvider.goToCoordinates(current);
newProvider.setLocation(currentLocation);
newProvider.panel.setViewerPosition(panel.getViewerPosition());
newProvider.panel.setViewerPosition(vp);
});
}
@Override