Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feature Request] Middle Button/Scroll #27

Closed
futcharist opened this issue Apr 26, 2021 · 0 comments
Closed

[Feature Request] Middle Button/Scroll #27

futcharist opened this issue Apr 26, 2021 · 0 comments
Assignees
Labels
enhancement New feature or request
Milestone

Comments

@futcharist
Copy link

I leave it to you to discern what button seems most appropriate for middle click (not a necessity), but for me the most natural implementation for scroll is right stick. It was where my mind went to when looking to perform the action, only to find the action was not implemented with any button combo. Other than that, absolutely stellar work so far!

@Moehammered Moehammered self-assigned this Aug 12, 2021
@Moehammered Moehammered added the enhancement New feature or request label Aug 12, 2021
@Moehammered Moehammered moved this from To do to In progress in Switch Remote Play - Road to version 1.0 Aug 12, 2021
Moehammered added a commit that referenced this issue Aug 12, 2021
Refactored mouse related virtual input into a class.

Moved logic out of main game pad stream thread function for mouse input in preparation for more refactoring.

Added prototype implementation for mouse scrolling, both vertically and horizontally with right analog stick.

Added middle mouse button press when user clicks the right analog stick.

Need to update Switch application to allow for configuration of mouse scroll sensitivity, mouse movement, and mouse scroll analog assignment.
Moehammered added a commit that referenced this issue Sep 12, 2021
Implemented a 'Mouse Configuration' menu to allow configuring mouse buttons.

Includes 2 additional configuration options compared to last: middle click, and scroll wheel analog assignment.

Configuration files need to be created, and controller menu needs to have mouse related parameters removed from it and the related configuration file.

SoftwareKeyboard helper file added to aid the start of numeric and string related data entry from users in the UI using the Switch's built in software keyboard.
Moehammered added a commit that referenced this issue Sep 19, 2021
Updated Switch app to send over the mouse and touch settings in the network payload.

Updated PC Host network payload definition to include the mouse and touch configuration objects.

Now uses the selected analog stick for mouse wheel and the opposite analog stick for mouse cursor movement.

Touch settings sent over from the Switch are used by the PC host now to configure deadzone and finger count.

Switch app still needs to have utilities made to save configuration for mouse and touch settings.
Moehammered added a commit that referenced this issue Sep 24, 2021
Added configuration objects now that can save and load the mouse and touch settings.

Network configuration object needs to be refactored to follow the 'mapped data' pattern in the project.

Touch setting related menus need to be modified to use the loaded values from their respective configuration files now.
Moehammered added a commit that referenced this issue Oct 5, 2021
Modified the polling function for virtual keyboard input to track the hold time for a key. This way, it now will function similar to a regular keyboard with the first press of the key registering as a single press, then after a delay becomes repeated presses.

The keys getting stuck that was mentioned in the previous commit was a Windows security feature. Programs sending input to a program with higher elevation will be blocked and fail. So the hotkey to open Task Manager would not be able to release because once it is opened, it is focused immediately. This caused the release events to become blocked by Task Manager.

The remedy to the key input privilege failure, is to run the program as Administrator. Wiki will need to be modified to explain this.

Side note (#27): mouse input has now been modified to have a poll time too, to make sure the mouse movement and scrolling is consistent with time rather than loop speed. This also makes it less likely for flooding mouse input.
@Moehammered Moehammered added this to the v1.0 milestone Oct 7, 2021
@Moehammered Moehammered moved this from In progress to Done in Switch Remote Play - Road to version 1.0 Oct 17, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Development

No branches or pull requests

2 participants