Merge branch 'master' into jgrpp

# Conflicts:
#	src/debug.cpp
#	src/saveload/afterload.cpp
#	src/saveload/saveload.cpp
#	src/settings_type.h
#	src/town_cmd.cpp
#	src/window.cpp
This commit is contained in:
Jonathan G Rennison
2018-05-03 23:54:51 +01:00
161 changed files with 1702 additions and 1304 deletions

View File

@@ -2446,7 +2446,7 @@ static EventState HandleViewportScroll()
* outside of the window and should not left-mouse scroll anymore. */
if (_last_scroll_window == NULL) _last_scroll_window = FindWindowFromPt(_cursor.pos.x, _cursor.pos.y);
if (_last_scroll_window == NULL || !(_right_button_down || scrollwheel_scrolling || (_settings_client.gui.left_mouse_btn_scrolling && _left_button_down))) {
if (_last_scroll_window == NULL || !((_settings_client.gui.scroll_mode != VSM_MAP_LMB && _right_button_down) || scrollwheel_scrolling || (_settings_client.gui.scroll_mode == VSM_MAP_LMB && _left_button_down))) {
_cursor.fix_at = false;
_scrolling_viewport = NULL;
_last_scroll_window = NULL;
@@ -2461,7 +2461,7 @@ static EventState HandleViewportScroll()
}
Point delta;
if (_settings_client.gui.reverse_scroll || (_settings_client.gui.left_mouse_btn_scrolling && _left_button_down)) {
if (_settings_client.gui.scroll_mode != VSM_VIEWPORT_RMB_FIXED) {
delta.x = -_cursor.delta.x;
delta.y = -_cursor.delta.y;
} else {
@@ -2898,7 +2898,7 @@ static void MouseLoop(MouseClick click, int mousewheel)
case MC_LEFT:
if (HandleViewportClicked(vp, x, y, click == MC_DOUBLE_LEFT)) return;
if (!(w->flags & WF_DISABLE_VP_SCROLL) &&
_settings_client.gui.left_mouse_btn_scrolling) {
_settings_client.gui.scroll_mode == VSM_MAP_LMB) {
_scrolling_viewport = w;
_cursor.fix_at = false;
return;
@@ -2906,9 +2906,11 @@ static void MouseLoop(MouseClick click, int mousewheel)
break;
case MC_RIGHT:
if (!(w->flags & WF_DISABLE_VP_SCROLL)) {
if (!(w->flags & WF_DISABLE_VP_SCROLL) &&
_settings_client.gui.scroll_mode != VSM_MAP_LMB) {
_scrolling_viewport = w;
_cursor.fix_at = true;
_cursor.fix_at = (_settings_client.gui.scroll_mode == VSM_VIEWPORT_RMB_FIXED ||
_settings_client.gui.scroll_mode == VSM_MAP_RMB_FIXED);
/* clear 2D scrolling caches before we start a 2D scroll */
_cursor.h_wheel = 0;