Merge pull request #694 from Savestate2A03/preview_scrolling_while_locked
UI: Enable scrolling while preview is locked
This commit is contained in:
@@ -380,8 +380,7 @@ void OBSBasicPreview::GetStretchHandleData(const vec2 &pos)
|
||||
|
||||
void OBSBasicPreview::keyPressEvent(QKeyEvent *event)
|
||||
{
|
||||
if (locked ||
|
||||
GetScalingMode() == ScalingMode::Window ||
|
||||
if (GetScalingMode() == ScalingMode::Window ||
|
||||
event->isAutoRepeat()) {
|
||||
OBSQTDisplay::keyPressEvent(event);
|
||||
return;
|
||||
@@ -416,6 +415,19 @@ void OBSBasicPreview::keyReleaseEvent(QKeyEvent *event)
|
||||
|
||||
void OBSBasicPreview::mousePressEvent(QMouseEvent *event)
|
||||
{
|
||||
if (scrollMode && GetScalingMode() != ScalingMode::Window &&
|
||||
event->button() == Qt::LeftButton) {
|
||||
setCursor(Qt::ClosedHandCursor);
|
||||
scrollingFrom.x = event->x();
|
||||
scrollingFrom.y = event->y();
|
||||
return;
|
||||
}
|
||||
|
||||
if (event->button() == Qt::RightButton) {
|
||||
scrollMode = false;
|
||||
setCursor(Qt::ArrowCursor);
|
||||
}
|
||||
|
||||
if (locked) {
|
||||
OBSQTDisplay::mousePressEvent(event);
|
||||
return;
|
||||
@@ -430,13 +442,6 @@ void OBSBasicPreview::mousePressEvent(QMouseEvent *event)
|
||||
|
||||
OBSQTDisplay::mousePressEvent(event);
|
||||
|
||||
if (scrollMode && GetScalingMode() != ScalingMode::Window) {
|
||||
setCursor(Qt::ClosedHandCursor);
|
||||
scrollingFrom.x = event->x();
|
||||
scrollingFrom.y = event->y();
|
||||
return;
|
||||
}
|
||||
|
||||
if (event->button() != Qt::LeftButton &&
|
||||
event->button() != Qt::RightButton)
|
||||
return;
|
||||
@@ -500,14 +505,14 @@ void OBSBasicPreview::ProcessClick(const vec2 &pos)
|
||||
|
||||
void OBSBasicPreview::mouseReleaseEvent(QMouseEvent *event)
|
||||
{
|
||||
if (scrollMode)
|
||||
setCursor(Qt::OpenHandCursor);
|
||||
|
||||
if (locked) {
|
||||
OBSQTDisplay::mouseReleaseEvent(event);
|
||||
return;
|
||||
}
|
||||
|
||||
if (scrollMode)
|
||||
setCursor(Qt::OpenHandCursor);
|
||||
|
||||
if (mouseDown) {
|
||||
vec2 pos = GetMouseEventPos(event);
|
||||
|
||||
@@ -998,9 +1003,6 @@ void OBSBasicPreview::StretchItem(const vec2 &pos)
|
||||
|
||||
void OBSBasicPreview::mouseMoveEvent(QMouseEvent *event)
|
||||
{
|
||||
if (locked)
|
||||
return;
|
||||
|
||||
if (scrollMode && event->buttons() == Qt::LeftButton) {
|
||||
scrollingOffset.x += event->x() - scrollingFrom.x;
|
||||
scrollingOffset.y += event->y() - scrollingFrom.y;
|
||||
@@ -1010,6 +1012,9 @@ void OBSBasicPreview::mouseMoveEvent(QMouseEvent *event)
|
||||
return;
|
||||
}
|
||||
|
||||
if (locked)
|
||||
return;
|
||||
|
||||
if (mouseDown) {
|
||||
vec2 pos = GetMouseEventPos(event);
|
||||
|
||||
|
Reference in New Issue
Block a user