Codechange: Simplify logic of mouse loop

This commit is contained in:
Nicolas Chappe 2021-12-23 13:50:19 +01:00 committed by Michael Lutz
parent 65530a76f6
commit e660860d4b
1 changed files with 16 additions and 18 deletions

View File

@ -2882,27 +2882,25 @@ static void MouseLoop(MouseClick click, int mousewheel)
}
}
if (vp == nullptr || (w->flags & WF_DISABLE_VP_SCROLL)) {
switch (click) {
case MC_LEFT:
case MC_DOUBLE_LEFT:
DispatchLeftClickEvent(w, x - w->left, y - w->top, click == MC_DOUBLE_LEFT ? 2 : 1);
return;
switch (click) {
case MC_LEFT:
case MC_DOUBLE_LEFT:
DispatchLeftClickEvent(w, x - w->left, y - w->top, click == MC_DOUBLE_LEFT ? 2 : 1);
return;
default:
if (!scrollwheel_scrolling || w == nullptr || w->window_class != WC_SMALLMAP) break;
/* We try to use the scrollwheel to scroll since we didn't touch any of the buttons.
* Simulate a right button click so we can get started. */
FALLTHROUGH;
default:
if (!scrollwheel_scrolling || w == nullptr || w->window_class != WC_SMALLMAP) break;
/* We try to use the scrollwheel to scroll since we didn't touch any of the buttons.
* Simulate a right button click so we can get started. */
FALLTHROUGH;
case MC_RIGHT:
DispatchRightClickEvent(w, x - w->left, y - w->top);
return;
case MC_RIGHT:
DispatchRightClickEvent(w, x - w->left, y - w->top);
return;
case MC_HOVER:
DispatchHoverEvent(w, x - w->left, y - w->top);
break;
}
case MC_HOVER:
DispatchHoverEvent(w, x - w->left, y - w->top);
break;
}
/* We're not doing anything with 2D scrolling, so reset the value. */