tastudio: properly set input while unpaused
replicates taseditor behavior: if autorestore is off, emulation resumes running, otherwise it pauses on it. todo: fix this during left button held
This commit is contained in:
parent
7c868e5996
commit
f23767ae6a
|
@ -1428,6 +1428,38 @@ namespace BizHawk.Client.EmuHawk
|
|||
RowScroll(this, e);
|
||||
}
|
||||
}
|
||||
|
||||
if (!GlobalWin.MainForm.EmulatorPaused && _currentX.HasValue)
|
||||
{
|
||||
Cell newCell = CalculatePointedCell(_currentX.Value, _currentY.Value);
|
||||
// SuuperW: Hide lag frames
|
||||
if (QueryFrameLag != null && newCell.RowIndex.HasValue)
|
||||
{
|
||||
newCell.RowIndex += CountLagFramesDisplay(newCell.RowIndex.Value);
|
||||
}
|
||||
newCell.RowIndex += FirstVisibleRow;
|
||||
if (newCell.RowIndex < 0)
|
||||
newCell.RowIndex = 0;
|
||||
|
||||
if (!newCell.Equals(CurrentCell))
|
||||
{
|
||||
CellChanged(newCell);
|
||||
|
||||
if (IsHoveringOnColumnCell ||
|
||||
(WasHoveringOnColumnCell && !IsHoveringOnColumnCell))
|
||||
{
|
||||
Refresh();
|
||||
}
|
||||
else if (_columnDown != null)
|
||||
{
|
||||
Refresh();
|
||||
}
|
||||
}
|
||||
else if (_columnDown != null) // Kind of silly feeling to have this check twice, but the only alternative I can think of has it refreshing twice when pointed column changes with column down, and speed matters
|
||||
{
|
||||
Refresh();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void HorizontalBar_ValueChanged(object sender, EventArgs e)
|
||||
|
|
|
@ -453,6 +453,7 @@ namespace BizHawk.Client.EmuHawk
|
|||
}
|
||||
else // User changed input
|
||||
{
|
||||
bool wasPaused = GlobalWin.MainForm.EmulatorPaused;
|
||||
if (Global.MovieSession.MovieControllerAdapter.Type.BoolButtons.Contains(buttonName))
|
||||
{
|
||||
CurrentTasMovie.ChangeLog.BeginNewBatch("Paint Bool " + buttonName + " from frame " + frame);
|
||||
|
@ -523,6 +524,13 @@ namespace BizHawk.Client.EmuHawk
|
|||
RefreshDialog();
|
||||
}
|
||||
}
|
||||
|
||||
// taseditor behavior
|
||||
if (!wasPaused)
|
||||
GlobalWin.MainForm.UnpauseEmulator();
|
||||
|
||||
if (!Settings.AutoRestoreLastPosition)
|
||||
IgnoreSeekFrame = true;
|
||||
}
|
||||
}
|
||||
else if (e.Button == System.Windows.Forms.MouseButtons.Right)
|
||||
|
|
|
@ -68,7 +68,7 @@ namespace BizHawk.Client.EmuHawk
|
|||
FollowCursorScrollMethod = "near";
|
||||
BranchCellHoverInterval = 1;
|
||||
SeekingCutoffInterval = 2; // unused, relying on VisibleRows is smarter
|
||||
AutoRestoreOnMouseUpOnly = true;
|
||||
AutoRestoreOnMouseUpOnly = false; // default to taseditor way, must be harmless since we suspend rerecord counting while drawing
|
||||
AutosaveInterval = 120000;
|
||||
AutosaveAsBk2 = false;
|
||||
AutosaveAsBackupFile = false;
|
||||
|
|
Loading…
Reference in New Issue