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);
|
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)
|
private void HorizontalBar_ValueChanged(object sender, EventArgs e)
|
||||||
|
|
|
@ -453,6 +453,7 @@ namespace BizHawk.Client.EmuHawk
|
||||||
}
|
}
|
||||||
else // User changed input
|
else // User changed input
|
||||||
{
|
{
|
||||||
|
bool wasPaused = GlobalWin.MainForm.EmulatorPaused;
|
||||||
if (Global.MovieSession.MovieControllerAdapter.Type.BoolButtons.Contains(buttonName))
|
if (Global.MovieSession.MovieControllerAdapter.Type.BoolButtons.Contains(buttonName))
|
||||||
{
|
{
|
||||||
CurrentTasMovie.ChangeLog.BeginNewBatch("Paint Bool " + buttonName + " from frame " + frame);
|
CurrentTasMovie.ChangeLog.BeginNewBatch("Paint Bool " + buttonName + " from frame " + frame);
|
||||||
|
@ -523,6 +524,13 @@ namespace BizHawk.Client.EmuHawk
|
||||||
RefreshDialog();
|
RefreshDialog();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// taseditor behavior
|
||||||
|
if (!wasPaused)
|
||||||
|
GlobalWin.MainForm.UnpauseEmulator();
|
||||||
|
|
||||||
|
if (!Settings.AutoRestoreLastPosition)
|
||||||
|
IgnoreSeekFrame = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (e.Button == System.Windows.Forms.MouseButtons.Right)
|
else if (e.Button == System.Windows.Forms.MouseButtons.Right)
|
||||||
|
|
|
@ -68,7 +68,7 @@ namespace BizHawk.Client.EmuHawk
|
||||||
FollowCursorScrollMethod = "near";
|
FollowCursorScrollMethod = "near";
|
||||||
BranchCellHoverInterval = 1;
|
BranchCellHoverInterval = 1;
|
||||||
SeekingCutoffInterval = 2; // unused, relying on VisibleRows is smarter
|
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;
|
AutosaveInterval = 120000;
|
||||||
AutosaveAsBk2 = false;
|
AutosaveAsBk2 = false;
|
||||||
AutosaveAsBackupFile = false;
|
AutosaveAsBackupFile = false;
|
||||||
|
|
Loading…
Reference in New Issue