Multi monitor cursor scrolling
reyandme opened this issue · 0 comments
As continuation of #317 and #318 I would like to rethink all the ideas here.
Defined:
2 or more monitors system. One is used for game, others - for work etc.
In window mode : if game window placed on two or more monitors, we do not care, and do not apply some specific logic. If it is not maximized on 1 monitor, then anyway we assume this monitor as "game" monitor.
If user has 1 monitor, then same logic is applied as for now.
In options menu new control is added: "Confine cursor" (or other name).
Scenario 1: 100% player
Requirements:
- easy mouse scroll, same as on 1 monitor system.
Implementation:
"Confine cursor" set to true,
then in FullScreen mode we lock cursor. Its questionable if we need to lock cursor even in window mode. Usually its not locked in games. But:
If cursor is not locked in window mode, then at least game scroll should continue even when cursor is on 2nd/other monitor. Anyway its not 100% comfortable to play then. So mostly 2 monitor 100% player will be limited to FullScreen mode.
Scenario 2: 50% player, 50% work/other
Requirements:
- 100% availability of 2nd/other monitor
- game should not scroll, when cursor is on 2nd/other monitor
- it's desirable to give oppotunity to easy scroll with mouse anyway. There is alway keyboard scroll available, but mouse scrolling is usually more comfortable.
Implementation:
"Confine cursor" set to false.
Then 1st and 2nd requirement should be implemented is this case.
But for 3rd is not working in current implementation, because of tiny 4px border width. We can add new setting (ini setting?) to set internal border width, where scroll started (on game monitor). So if user sets it for lets say 50-100px then he could scroll with mouse. Value should be adjustable to let users to choose best for them.
Can be added as ini setting or as some Edit/SpinEdit/TrackBar control on game Options menu page