Merge branch 'master' into jgrpp

# Conflicts:
#	src/lang/russian.txt
#	src/linkgraph/linkgraph_gui.cpp
#	src/news_gui.cpp
#	src/town_cmd.cpp
#	src/town_gui.cpp
This commit is contained in:
Jonathan G Rennison
2022-10-19 18:35:35 +01:00
19 changed files with 182 additions and 47 deletions

View File

@@ -3023,6 +3023,7 @@ static void MouseLoop(MouseClick click, int mousewheel)
_scrolling_viewport = w;
_cursor.fix_at = (_settings_client.gui.scroll_mode == VSM_VIEWPORT_RMB_FIXED ||
_settings_client.gui.scroll_mode == VSM_MAP_RMB_FIXED);
DispatchRightClickEvent(w, x - w->left, y - w->top);
return;
}
break;
@@ -3032,27 +3033,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. */
@@ -3121,6 +3120,7 @@ void HandleMouseEvents()
click = MC_HOVER;
_input_events_this_tick++;
_mouse_hovering = true;
hover_time = std::chrono::steady_clock::now();
}
}
} else {