mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
WI-33168 Application no longer takes focus when hitting a breakpoint in 2016.3 EAP during PHP Debug
This commit is contained in:
@@ -785,20 +785,21 @@ public class XDebugSessionImpl implements XDebugSession {
|
||||
|
||||
updateExecutionPosition();
|
||||
|
||||
if (myShowTabOnSuspend.compareAndSet(true, false)) {
|
||||
final boolean showOnSuspend = myShowTabOnSuspend.compareAndSet(true, false);
|
||||
if (showOnSuspend || attract) {
|
||||
AppUIUtil.invokeLaterIfProjectAlive(myProject, () -> {
|
||||
initSessionTab(null);
|
||||
showSessionTab();
|
||||
});
|
||||
}
|
||||
if (showOnSuspend) {
|
||||
initSessionTab(null);
|
||||
showSessionTab();
|
||||
}
|
||||
|
||||
myDispatcher.getMulticaster().sessionPaused();
|
||||
|
||||
// user attractions should only be made if event happens independently (e.g. program paused/suspended)
|
||||
// and should not be made when user steps in the code
|
||||
if (attract) {
|
||||
UIUtil.invokeLaterIfNeeded(() -> {
|
||||
if (mySessionTab != null) {
|
||||
// user attractions should only be made if event happens independently (e.g. program paused/suspended)
|
||||
// and should not be made when user steps in the code
|
||||
if (attract) {
|
||||
if (mySessionTab == null) {
|
||||
LOG.warn("Can not request focus because Session Tab is not initialized yet");
|
||||
return;
|
||||
}
|
||||
|
||||
if (XDebuggerSettingManagerImpl.getInstanceImpl().getGeneralSettings().isShowDebuggerOnBreakpoint()) {
|
||||
mySessionTab.toFront(true, this::updateExecutionPosition);
|
||||
@@ -814,6 +815,8 @@ public class XDebugSessionImpl implements XDebugSession {
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
myDispatcher.getMulticaster().sessionPaused();
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
Reference in New Issue
Block a user