Commit Graph

645 Commits

Author SHA1 Message Date
Travis Nickles
4c70b7a8f0 Use SendToAsync and uncheck to improve UDP server performance 2018-08-03 20:05:44 -05:00
Travis Nickles
57af817c00 Use SendToAsync and uncheck to improve UDP server performance 2018-08-03 20:01:00 -05:00
Travis Nickles
24403394ad Merge branch 'jay' into vigem-udpserver 2018-08-03 01:48:27 -05:00
Travis Nickles
28f3414a05 Merge branch 'jay' into udpserver 2018-08-03 00:46:19 -05:00
Travis Nickles
0fc4cb1e32 Added unchecked blocks 2018-07-30 23:43:10 -05:00
Travis Nickles
a4002ade3a Added unchecked block around axis scaling 2018-07-30 17:01:15 -05:00
Travis Nickles
21350227c6 Added unchecked block for report generation 2018-07-30 16:35:58 -05:00
Travis Nickles
d74abc801f Merge branch 'jay' into vigem-udpserver 2018-07-29 11:40:23 -05:00
Travis Nickles
0f6eaed317 Merge branch 'jay' into udpserver 2018-07-29 10:59:02 -05:00
Travis Nickles
f076752404 Loosen enhanced precision curve 2018-07-28 02:50:05 -05:00
Travis Nickles
cb8ffee055 Merge branch 'jay' into vigem-udpserver 2018-07-23 00:17:08 -05:00
Travis Nickles
b92156f57d Changed thread affinity of UdpServer instance 2018-07-23 00:15:47 -05:00
Travis Nickles
fc62708abf Changed thread affinity of UdpServer instance 2018-07-23 00:10:00 -05:00
Travis Nickles
5a4ed6c440 Merge branch 'jay' into udpserver 2018-07-23 00:06:16 -05:00
Travis Nickles
01ccc74cdd Added SuppressUnmanagedCodeSecurity attribute to ScpDevice class
Leads to a decent speedup
2018-07-22 03:15:24 -05:00
Travis Nickles
3fa9d2f2b5 Added alt min to taskbar fix 2018-07-22 01:51:58 -05:00
Travis Nickles
70a4cd8989 Merge branch 'jay' into vigem-udpserver 2018-07-18 01:35:39 -05:00
Travis Nickles
53cd5d48d9 Merge branch 'jay' into udpserver 2018-07-18 01:26:24 -05:00
Travis Nickles
04140081ce Fixed problem when registry key does not exist 2018-07-18 00:56:05 -05:00
Travis Nickles
ce4a01b99b Merge branch 'jay' into vigem-udpserver
# Conflicts:
#	DS4Windows/DS4Control/ControlService.cs
2018-07-18 00:04:51 -05:00
Travis Nickles
239b9bceba Merge branch 'jay' into udpserver 2018-07-17 23:53:14 -05:00
Travis Nickles
192dedcbc3 Exit GetPadDetailForIdx after processing null reference 2018-07-17 20:46:40 -05:00
Travis Nickles
605c700362 Exit GetPadDetailForIdx after processing null reference
Might be related to issue #326.
2018-07-17 20:45:20 -05:00
Travis Nickles
f641b7f11c Removed unused component 2018-07-17 02:30:03 -05:00
Travis Nickles
f686b9711e Loosened enhanced precision curves more 2018-07-16 04:16:58 -05:00
Travis Nickles
bf9f476be3 Added placeholder routine to purge old HidGuardian whitelist entries.
Have not decided whether this is truly needed so it is not used
2018-07-16 00:21:34 -05:00
Travis Nickles
9c6e99ce6c Carry over enhanced precision curve changes to RS
New points were only used for LS before
2018-07-06 20:09:17 -05:00
Travis Nickles
8d4c7d0c57 Merge branch 'jay' into udpserver 2018-06-24 21:04:20 -05:00
Travis Nickles
cc23f7af0b Merge branch 'jay' into vigem-udpserver 2018-06-24 21:01:53 -05:00
Travis Nickles
600818a3c0 Changed enhanced precision curves 2018-06-17 19:52:36 -05:00
Travis Nickles
475723653d Changed logic for implicit stick mouse dead zone
Only force the implicit dead zone if the setting is set to 0.
Lower settings than the implicit dead zone are now possible
for looser aiming
2018-06-07 15:33:02 -05:00
Travis Nickles
b364330f50 Fixed enhanced precision stick curves 2018-06-05 16:16:38 -05:00
Travis Nickles
25b2adc8e5 Corrected stick angles and stick dir unit values 2018-06-05 16:12:11 -05:00
Travis Nickles
7229fee556 Merge branch 'jay' into vigem-udpserver 2018-06-04 14:12:58 -05:00
Travis Nickles
b596d82573 Merge branch 'jay' into udpserver 2018-06-04 14:08:57 -05:00
Travis Nickles
6c822e5968 Add minimize to taskbar as a setting
Related to issue #287.
2018-06-01 16:45:58 -05:00
Travis Nickles
241bee82a0 Merge branch 'jay' into vigem-udpserver 2018-05-24 14:49:26 -05:00
Travis Nickles
f11095fb5e Merge branch 'jay' into udpserver 2018-05-24 14:40:15 -05:00
Travis Nickles
3cd9912289 Changed parameters for touchpad jitter compensation 2018-05-20 02:18:28 -05:00
Travis Nickles
ffc2e45854 Fixed failed to unplug message from appearing when switching profiles using SONYWA 2018-05-13 12:59:13 -05:00
Travis Nickles
07878dafc3 Changed axis to button mapping routine. Now always take rotation angle into account
Related to issue #282
2018-05-12 21:46:48 -05:00
Travis Nickles
be6548a000 Commit UdpServer class 2018-05-06 02:16:37 -05:00
Travis Nickles
5e30393647 Initial commit with ViGEm and UdpServer support 2018-05-06 02:13:11 -05:00
Travis Nickles
d925452ed8 Initial commit with UdpServer change 2018-05-06 02:10:49 -05:00
Travis Nickles
0278deb763 Updated TODO file. Minor code removal 2018-04-09 18:21:49 -05:00
Travis Nickles
1c9cfc1dec Remove controller array scan from each report process 2018-04-09 16:04:44 -05:00
Travis Nickles
8859879396 Hold max and min lightbar color for pulse charging animation 2018-04-02 23:40:49 -05:00
Travis Nickles
99c812301d Take result status for virtual bus plugin events back into account 2018-04-01 03:01:45 -05:00
Travis Nickles
a1d0836091 Tweaks to improve hotplug detection
Check status of first output report before adding
device to the list
2018-03-25 23:36:46 -05:00
Travis Nickles
981e7afc22 Increased XINPUT_UNPLUG_SETTLE_TIME 2018-03-25 07:43:36 -05:00
Travis Nickles
3b33caf247 Remove reliance on plug return status
Plug change can be delayed but still be successful.
Possibly related to issue #147.
2018-03-21 17:43:30 -05:00
Travis Nickles
18bb83ceef Do not restart service when changing dinput option in profile
Only plug or unplug an xinput device as needed. Only perform
when saving a profile.
2018-03-21 17:31:22 -05:00
Travis Nickles
d91f696b66 Moved when sleep is performed when removing controller 2018-03-21 01:47:32 -05:00
Travis Nickles
3d463ce7e8 Fixed mouse sensitivity getting throttled when using custom extras 2018-03-18 06:42:12 -05:00
Travis Nickles
46c391f1d9 Changed Enhanced Precision curve for sticks
Actually loosened them a bit more. The curves now correspond
to the curves used in my changes to Touchmote
2018-03-17 01:27:35 -05:00
Travis Nickles
01e5246c61 Use suspending flag rather than using a parameter 2018-02-26 03:51:24 -06:00
Travis Nickles
16341d37b5 Force disconnect for wireless controllers when suspending
Related to issue #227
2018-02-26 02:55:17 -06:00
Travis Nickles
fece01e9e5 Explicitly close HID device when stopping service
Do not wait for runtime to close the HID device
2018-02-21 12:46:08 -06:00
Travis Nickles
387c137c8c Call StopUpdate for normal device removal when stopping DS4Windows 2018-02-21 01:30:36 -06:00
Travis Nickles
4fe6fc6660 Attempt to allow language preference to work across instances
Related to issue #205.
2018-01-30 22:20:46 -06:00
Travis Nickles
90e2e73dca Removed query by all classes 2018-01-29 13:22:56 -06:00
Travis Nickles
13e48f835f Changed argument for function call 2018-01-29 02:53:16 -06:00
Travis Nickles
a1e99344d2 Allow ScpVBus device to be found even when disabled. Reset device rumble state on next poll when loading a profile. 2018-01-28 23:21:49 -06:00
Travis Nickles
618c139607 First step to change how ScpVBus installation is checked
Related to issue #147.
2018-01-28 02:00:29 -06:00
Travis Nickles
4cfe5463a7 Added Sony Wireless Adapter to HidGuardian AffectedDevices list 2018-01-26 17:51:03 -06:00
Travis Nickles
3caf4fa514 Add HidGuardian AffectedDevices link to settings 2018-01-25 15:40:59 -06:00
Travis Nickles
84f1e7caae Merge branch 'language-switch' of https://github.com/czukowski/DS4Windows into czukowski-language-switch 2018-01-18 00:03:55 -06:00
Travis Nickles
cfbf7afe22 Minor tweak 2018-01-13 06:14:52 -06:00
Travis Nickles
a1a54c8429 Minor tweak for speed 2018-01-13 05:18:23 -06:00
Travis Nickles
fd9c56f13d Fix output curves for sixaxis 2018-01-13 04:00:57 -06:00
Travis Nickles
55f3e5ef66 Change sixaxis dead zone defaults to reflect recent changes 2018-01-12 22:48:20 -06:00
Travis Nickles
beca066207 Need to populate firstTouch object because Touch instances are being reused
Related to issue #190.
2018-01-12 00:45:16 -06:00
Travis Nickles
1ac7b79a10 Fix problem with rapid touchpad mouse action clicks
Related to issue #185.
2018-01-07 21:56:28 -06:00
Travis Nickles
42a67143ea Fix for device plugin changes while switching profiles 2018-01-07 11:44:04 -06:00
Travis Nickles
3dabad0be6 Make sure to use double for trackball friction when loading profile 2018-01-07 09:52:37 -06:00
Travis Nickles
ec9926cb69 Changed trackball constants 2018-01-03 04:31:25 -06:00
Travis Nickles
f906554743 Use proper delta time for trackball mode
It had been using the previous poll delta time instead
2018-01-03 03:55:40 -06:00
Travis Nickles
4bb6b08f72 Initial implementation of trackball mode
Related to issue #85
2018-01-01 12:21:35 -06:00
Travis Nickles
1d238e8b8b Fixed index bug in hotplug routine 2017-12-31 09:11:46 -06:00
Travis Nickles
3d387e5fde Change six axis dead zone calculation to be a proper dead zone 2017-12-20 22:19:40 -06:00
Travis Nickles
e6bab70de2 Break out of TouchUnchanged case more quickly 2017-12-14 20:54:32 -06:00
Travis Nickles
71b91bc745 Remove extra gyro dead zone from mapping routine 2017-12-14 00:26:37 -06:00
Korney Czukowski
babb48ac51 Add UseLang key to settings 2017-12-12 21:49:44 +01:00
Travis Nickles
41fa8cac82 Use delegate method of grabbing struct reference
Might replace the delegate with a class method later
but this method works pretty well as is
2017-12-11 03:57:48 -06:00
Travis Nickles
d66c98c139 Remove new DS4State object creation per poll 2017-12-02 01:45:51 -06:00
Travis Nickles
bc181b3e8b Add Enhanced Precision curve changes to LS 2017-11-30 14:25:46 -06:00
Travis Nickles
c479a30570 Loosen enhanced precision output curves for sticks 2017-11-30 01:40:28 -06:00
Travis Nickles
9a1590bf4f Fix macro binding for multiple touchpad swipe controls
Related to issue #162.
2017-11-27 12:43:38 -06:00
Travis Nickles
64b00804ce Change stick mouse speed. Remove old initial speed offset
The speed is the same at mouse sensitivity 25 compared
to the previous version. However, the new version will be
a bit stiffer using other sensitivity values
2017-11-25 03:13:22 -06:00
Travis Nickles
faa3a92378 Add reference count for macro array
Should be good enough to avoid macro checking for now
2017-11-23 02:31:35 -06:00
Travis Nickles
c073e721fc Update custom led color from main Controllers tab
Related to issue #153.
2017-11-22 19:23:23 -06:00
Travis Nickles
76136c71a9 Correct window location saving to take window state into account (negative values)
Related to issue #157.
2017-11-22 02:00:51 -06:00
Travis Nickles
e556213a44 Use new populateFieldMapping method for custom actions 2017-11-17 12:39:39 -06:00
Travis Nickles
c5c56cf78c Trim ScpUtil.cs. Do not create new instances of DS4StateFieldMapping each frame 2017-11-17 02:50:37 -06:00
Travis Nickles
e88f19ff1f Minor tweak 2017-11-10 11:22:26 -06:00
Travis Nickles
112e6ab232 Add delay before executing program linked to a profile 2017-11-09 22:14:49 -06:00
Travis Nickles
044e1ddad8 Minor tweak 2017-11-06 20:17:21 -06:00
Travis Nickles
9d6aa5413e Add convenience methods for managing HidGuardian whitelist key
Currently commented out to the public. Using for my local copy
2017-11-06 20:01:26 -06:00
Travis Nickles
30131ded30 More extended keys 2017-11-06 16:38:26 -06:00
Travis Nickles
1f8dcaa2ee Made sure to add extended key flag for more multimedia keys 2017-11-06 16:04:46 -06:00
Travis Nickles
e5c124fecd Add extended bit for next track and prev track keys 2017-11-06 00:48:54 -06:00
Travis Nickles
5df02aafa7 Save form position
Related to issue #142.
2017-11-05 20:18:36 -06:00
Travis Nickles
2fa075348c Remove unnecessary check 2017-10-31 18:36:48 -05:00
Travis Nickles
a7f4dec009 Parse extras before launching actions
Related to issue #133.
2017-10-26 01:37:21 -05:00
Travis Nickles
99715656e3 Lower times used for taps and holds
Related to issue #129
2017-10-23 13:17:55 -05:00
Travis Nickles
debbb23530 Remove unused method 2017-10-20 20:48:48 -05:00
Travis Nickles
ad2b6eea25 Different implementation of linked profile support
Related to issue #84.
2017-10-19 14:16:09 -05:00
Travis Nickles
e07f902751 Only load profiles as needed rather than at program startup 2017-10-19 03:21:33 -05:00
Travis Nickles
2c5576a7c5 Reduce gyro mouse deadzone 2017-10-13 02:48:44 -05:00
Travis Nickles
0c303a091a Correct touchpad toggle messages 2017-10-11 21:26:21 -05:00
Travis Nickles
6ab0f3f020 Make sure one full wheel click is used per action 2017-10-05 22:00:04 -05:00
Travis Nickles
4f4bf78bea Fixed service changing when dinput only mode has changed 2017-10-02 13:38:39 -05:00
Travis Nickles
2e8aee10e0 Default touchpad jitter compensation to true again
The current settings work pretty well and
would probably be preferred
2017-09-20 21:44:31 -05:00
Travis Nickles
f96731ea8a Correct reverse smoothing buffer traversal 2017-09-20 21:39:55 -05:00
Travis Nickles
cdb17f43a7 Change touchpad jitter compensation 2017-09-20 21:19:42 -05:00
Travis Nickles
9ae43db945 Remove unused parameters from method call 2017-09-20 00:52:33 -05:00
Travis Nickles
62051665bd Tweak pulse charging routine 2017-09-19 22:08:03 -05:00
Travis Nickles
6348720776 Minor tweak 2017-09-19 21:36:33 -05:00
Travis Nickles
ac4e940605 Split flash duration into segments.
Needed to reduce CPU usage while flashing is active
2017-09-19 21:13:46 -05:00
Travis Nickles
98c1a9ff41 Remove unused list 2017-09-19 20:42:10 -05:00
Travis Nickles
e8880c5d28 Minor tweak 2017-09-17 13:37:31 -05:00
Travis Nickles
e847fd6458 Tweak temp thread creation 2017-09-05 21:28:54 -05:00
Travis Nickles
c6d7507a01 Trim code. Use namespace 2017-09-05 04:27:24 -05:00
Travis Nickles
1fedb61d2b Change thread affinity of BackgroundWorker 2017-08-27 21:26:36 -05:00
Travis Nickles
c8809f37cb Thread priority changes 2017-08-27 03:45:35 -05:00
Travis Nickles
6190ddff9b Change thread affinity of DS4Device objects
Drastically improves performance. Might be able to remove the
need for the separate input thread later.
2017-08-26 04:25:42 -05:00
Travis Nickles
644c674a27 Remove async usage in method 2017-08-24 23:08:35 -05:00
Travis Nickles
2ea4967486 Change input key method to return DS4Controls value instead of string 2017-08-22 19:52:32 -05:00
Travis Nickles
0817da3864 Minor tweaks. Use different timer class for some timers.
Take some routines out of the main thread
2017-08-22 17:37:39 -05:00
Travis Nickles
dd1c2eca62 Change touchpad jitter values 2017-08-19 18:39:03 -05:00
Travis Nickles
c03c173f31 Use EaseOutQuad curve for idle disconnect led color
Linear seems to have the led blank too quickly towards the end
2017-08-18 23:33:37 -05:00
Travis Nickles
f0d967cd63 Minor tweak to touchpad jitter compensation code 2017-08-18 20:52:11 -05:00
Travis Nickles
55b2de6d67 Change touchpad jitter compensation routine 2017-08-18 02:41:37 -05:00
Travis Nickles
8dca930400 Create separate output accel values 2017-08-08 20:19:17 -05:00
Travis Nickles
a32e80fe61 Add offset for touchpad mouse 2017-08-06 20:31:55 -05:00
Travis Nickles
cb599a984f Make touchpad jitter compensation default to false 2017-08-06 19:50:49 -05:00
Travis Nickles
8ae6e062e3 Add experimental touchpad invert disable routine. Raise mouse stick offset 2017-08-04 22:36:46 -05:00
Travis Nickles
acb03500a0 Lower mouse speed factor 2017-08-04 06:11:55 -05:00
Travis Nickles
7f75565aec Rid another unnecessary state copy call. 2017-07-27 07:32:09 -05:00
Travis Nickles
60a21a9fe3 Minor changes 2017-07-26 21:38:34 -05:00
Travis Nickles
436d0ed1ef No longer make unnecessary state object copies 2017-07-26 06:13:18 -05:00
Travis Nickles
8250f9be5c Attempt to use timestamp from ds4. Preserve changes. 2017-07-26 04:30:50 -05:00
Travis Nickles
9d88fda0d2 Tweak gyro mouse 2017-07-24 22:55:28 -05:00
Travis Nickles
aab2bb13f4 Add finger on touchpad back as a shift modifier 2017-07-22 20:48:04 -05:00
Travis Nickles
3dcd4d94b9 Added clamping for rotation. Fixed bug with identical dict keys 2017-07-20 04:25:15 -05:00
Travis Nickles
1b0ddfd910 Minor changes 2017-07-20 00:57:14 -05:00
Travis Nickles
5a84f8b2e3 Added sixaxis output curve options 2017-07-19 18:17:11 -05:00
Travis Nickles
fd1479f09f Added output curve options for L2 and R2 2017-07-19 15:15:59 -05:00
Travis Nickles
0e8daf05b0 Make sure sixaxis value ratios do not go above 1.0 2017-07-18 20:18:01 -05:00
Travis Nickles
ec130f6156 Add sixaxis anti-deadzone settings 2017-07-18 19:44:55 -05:00
Travis Nickles
7ddd2c1bf5 Add sixaxis max zone setting 2017-07-18 17:28:16 -05:00
Travis Nickles
8eb9d6391f Some optimizations 2017-07-18 15:37:01 -05:00
Travis Nickles
a335decc90 Move accel dead zone calculations 2017-07-18 14:21:03 -05:00
Travis Nickles
9972e85e13 More minor gyro changes 2017-07-16 19:42:43 -05:00
Travis Nickles
dba2b1bbb3 Tweaks to how imu data is used 2017-07-16 07:11:58 -05:00
Travis Nickles
887a4fbdbd Make imu data part of the DS4State 2017-07-16 03:30:49 -05:00
Travis Nickles
817505a989 Take poll time into account for gyro mouse 2017-07-16 02:22:21 -05:00
Travis Nickles
53b0de087c Allow gyro roll to control mouse x axis. Related to issue #90. 2017-07-14 07:46:45 -05:00
Travis Nickles
56fff28f65 Try to correct some problems with imu data usage 2017-07-13 08:17:00 -05:00
Travis Nickles
c5dd97ebe5 Preserve minor optimizations before next test 2017-07-13 07:27:25 -05:00
Travis Nickles
c0403fa7ab Add touchpad mouse axis inverting. Related to issue #83. 2017-07-12 22:39:46 -05:00
Travis Nickles
6f069482a2 Minor optimizations 2017-07-12 08:04:37 -05:00
Travis Nickles
b62b490ff1 Allow Disconnect BT special action to work with Sony dongle connections
This might be temporary
2017-06-30 21:29:20 -07:00
Travis Nickles
d74820dbf5 Add rotation routine for LS and RS 2017-06-30 01:42:19 -07:00
Travis Nickles
2fabd860a2 Enable xinput hotplug from a sync change when using Sony dongle 2017-06-29 19:27:08 -07:00
Travis Nickles
6c21572249 Minor changes 2017-06-29 06:16:02 -07:00
Travis Nickles
484337f42f Add gyro mouse smoothing routine 2017-06-28 21:42:16 -07:00
Travis Nickles
86816db41a Lower gyro mouse offset 2017-06-27 08:19:55 -07:00
Travis Nickles
49024cddaf Tweak gyro mouse variables 2017-06-26 23:38:01 -07:00
Travis Nickles
64693190f0 Fix gyro mouse coefficient. Change base gyro mouse settings. 2017-06-24 19:09:03 -07:00
Travis Nickles
588c2d4385 Add vertical scale for gyro mouse mode 2017-06-24 02:52:39 -07:00
Travis Nickles
9f554cf6c1 Minor optimization 2017-06-22 09:02:51 -07:00
Travis Nickles
35031f5c5f Double check that mouse remainders are reset when gyro mouse is not active 2017-06-22 07:36:40 -07:00
Travis Nickles
6eb618a934 Lower gyro deadzone value 2017-06-22 06:49:02 -07:00
Travis Nickles
44aef8b90d Fixed distinction between one finger touchpad touch and two finger touch
Touch 2 being active does not necessarily mean two fingers
are currently on the touchpad
2017-06-22 03:24:51 -07:00
Travis Nickles
2d58034415 Allow gyro button triggers to disable gyro 2017-06-22 00:43:44 -07:00
Travis Nickles
162092800e Add deadzone routine to Gyro mouse
Not sure if this will stay
2017-06-21 21:18:15 -07:00
Travis Nickles
f4302a752d Initial attempt at fixing gyro support. Related to issue #48.
It will be a mess for the forseeable future
2017-06-21 18:07:21 -07:00
Travis Nickles
d6d6f63073 Change some thread priorities 2017-06-19 21:37:08 -07:00
Travis Nickles
328b2dc14c Attempt to smooth out mouse cursor for analog sticks 2017-06-19 08:50:28 -07:00
Travis Nickles
2780dc3ac4 Change thread affinity of x360Bus object 2017-06-18 07:07:48 -07:00
Travis Nickles
1f2f9f16db Minor tweaks to improve responsiveness 2017-06-18 03:20:10 -07:00
Travis Nickles
a473224293 Fix mouse distance offset for negative stick axes 2017-06-17 03:13:33 -07:00
Travis Nickles
2cf33e1bba Test hotplug changes. Change mouse remainder cutoff 2017-06-11 08:15:45 -07:00
Travis Nickles
7bf43f93f5 Revert to using temporary variables for now 2017-06-10 19:58:30 -07:00
Travis Nickles
1fc77c5537 Take current stick direction into account for mouse offset 2017-06-10 17:48:34 -07:00
Travis Nickles
ab9c3abe05 Move Quick Charge check to input thread 2017-06-09 23:45:19 -07:00
Travis Nickles
e1efb2bb5b Do not need temp profile index for some properties 2017-06-08 14:38:46 -07:00
Travis Nickles
1c613139ef Use temp arrays to help cache some data 2017-06-08 14:26:50 -07:00
Travis Nickles
63dddf4373 Changes to fix Quick Charge option 2017-06-08 13:52:47 -07:00
Travis Nickles
9a4fc0476e Change property access 2017-06-08 11:09:05 -07:00
Travis Nickles
8f0c5d84ac Define output curve ints in the class instead of using temporary variables 2017-06-08 11:01:14 -07:00
Travis Nickles
751e4f4e7a Add initial output curve options 2017-06-08 00:37:04 -07:00
Travis Nickles
ce0ac4f04a Make sure multi-action button can work with touchpad area button 2017-06-05 01:31:29 -07:00
Travis Nickles
31f1382245 Change when sleep is run for device removal 2017-06-03 15:35:13 -07:00
Travis Nickles
4b0e3dee62 Corrected some control identifiers 2017-06-01 22:58:01 -07:00
Travis Nickles
f7d3d1bf47 Cut off mouse remainders 2017-05-31 14:09:16 -07:00
Travis Nickles
5062e769ec Add initial offset for mouse actions bound to analog sticks
Use magic constant for now. Maybe this will be exposed as a setting
in the future
2017-05-31 13:06:52 -07:00
Travis Nickles
4a642db6e2 Change mouse actions for LS and RS to take poll time into account
Make sure speed stays consistent no matter which connection
type is used
2017-05-31 00:47:13 -07:00
Travis Nickles
0086b953e3 Move lightbar color change to execute later 2017-05-30 15:00:23 -07:00
Travis Nickles
24689aa701 Calculate lightbar color after interacting with ScpVBus 2017-05-29 19:28:21 -07:00
Travis Nickles
ba4bd72755 Minor updates for lightbar dimming 2017-05-27 07:05:46 -07:00
Travis Nickles
c781082425 Add DateTime fields to SpecialAction 2017-05-26 18:57:46 -07:00
Travis Nickles
5a0fb09291 Update serial for Sony dongle connection upon sync event
Related to issue #44.
2017-05-25 02:51:28 -07:00
Travis Nickles
1c6add01eb Change to allow multiple multi-action button actions to work
Related to issue #34
2017-05-22 08:06:20 -07:00
Travis Nickles
aa0e0fce50 Fix index out of bounds error 2017-05-20 18:56:11 -07:00
Travis Nickles
f9de32e184 Use proper index for dinput only flag 2017-05-18 18:16:08 -07:00
Travis Nickles
1e2c57a08a Minor optimizations 2017-05-18 17:51:01 -07:00
Travis Nickles
b3bd007219 Use proper xinput index on hotplug. Fix bad copy paste job 2017-05-18 16:33:37 -07:00
Travis Nickles
1ef0b04dbc Fixed bug with code executing with no user input
This should not be happening in the first place
2017-05-17 10:59:49 -07:00
Travis Nickles
84fdb26d18 Reset old backstore profile values before loading new profile values 2017-05-17 06:11:32 -07:00
Travis Nickles
2b741533bb Minor optimizations 2017-05-17 01:59:09 -07:00
Travis Nickles
1958f082c5 Change battery status change reporting 2017-05-17 00:57:06 -07:00
Travis Nickles
ac23921978 Allow BT poll rate to be specified. Use thread action queue now. Some bug fixes 2017-05-16 23:02:12 -07:00
Travis Nickles
9b78668935 Test new action invocation on input threads.
Only used to transfer idle disconnect time but
it might be more useful in the future.
2017-05-13 19:31:39 -07:00
Travis Nickles
b1c640eaa1 Enforce Launch Program with Profile during a hotplug event 2017-05-13 16:47:54 -07:00
Travis Nickles
bca7850a36 Stop using Async methods for FileStream instance. Reduce CPU usage. Initial thread action queue.
No longer uses an application set timeout but it looks like
a timeout will be handled by the system
2017-05-13 15:01:43 -07:00
Travis Nickles
edeaa30b59 Code clean up. Reset xinput mapping for more bound actions. 2017-05-12 07:48:58 -07:00
Travis Nickles
f3c9e08398 Minor changes 2017-05-11 08:13:51 -07:00
Travis Nickles
81b54a7dd9 Change plugin and unplug routines with ScpVBus 2017-05-11 06:41:18 -07:00
Travis Nickles
e620dce4b9 Minor clean up 2017-05-09 17:23:51 -07:00
Travis Nickles
7e61f52dd1 Launch new task for Launch Program with Profile 2017-05-09 16:34:56 -07:00
Travis Nickles
0e6514a072 Fixed reverse 360 button mapping generation
Share and Options were not being mapped properly.
Resolves issue #33.
2017-05-09 07:53:10 -07:00
Travis Nickles
6074445c03 Attempt at better clean up when removing devices
Use SynchronizationContext to run some tasks in main thread
as opposed to input thread
2017-05-09 03:11:50 -07:00
Travis Nickles
8b42562aec Alter how Launch Program with Profile works 2017-05-08 22:12:39 -07:00
Travis Nickles
74aa709583 Only use one instance of field mapping in case of multiple multi-action button assignments 2017-05-08 20:06:48 -07:00
Travis Nickles
22ebca3e01 Make sure extra flags are populated in more places for special actions 2017-05-08 07:29:38 -07:00
Travis Nickles
4980cd01dc Fix issue with multi-action button not working
Related to issue #26.
2017-05-08 07:27:41 -07:00
Travis Nickles
5bfd6df2d3 Added max zone settings 2017-05-05 09:13:12 -07:00
Travis Nickles
be27af50d3 Some optimizations. Use reverse mapping array. Skip xinput report in dinput mode. 2017-05-04 08:42:27 -07:00
Travis Nickles
400ba4f293 Fix process starting issue when activating exclusive mode
Only one hotplug request should be processed at a time now.
Hopefully this fixes issues with devices staying disabled
2017-05-01 11:28:07 -07:00
Travis Nickles
4ce52da612 Test minor change of usb device removal 2017-05-01 03:40:37 -07:00
Travis Nickles
d37e0709c0 More log messages. Tweak DisconnectBT. Other minor changes. 2017-05-01 02:29:19 -07:00
Travis Nickles
3f68c9bcb8 Removed usage of some unused namespaces
The only real import one is remove System.Windows.Forms
for non GUI items
2017-04-30 06:42:09 -07:00
Travis Nickles
1821658455 Change event check for newly opened devices 2017-04-30 06:39:09 -07:00
Travis Nickles
242843ab99 Another attempt at fixing Quick Charge to work better for other users
Hotplugging happens quicker now
2017-04-30 02:29:00 -07:00
Travis Nickles
83c7bb7740 Minor optimization for device refreshing and profile switching 2017-04-29 01:19:45 -07:00
Travis Nickles
2cfaee50e5 Corrects problem with old profiles with duplicate actions
Related to issue #24.
2017-04-28 17:19:05 -07:00
Travis Nickles
2fe4a6405d Use zero value for inactive gyro directions 2017-04-28 13:11:37 -07:00
Travis Nickles
9e153fff97 Fixed a couple of issue with gyro mappings 2017-04-28 13:06:58 -07:00
Travis Nickles
ca2074d76f Version 1.4.65 2017-04-28 11:57:33 -07:00
Travis Nickles
44501c24de Revert back to old disconnect bluetooth behavior 2017-04-26 18:39:33 -07:00
Travis Nickles
de1b6b223f Remove use of event in TouchPadOn since the event will be use later 2017-04-26 15:42:28 -07:00
Travis Nickles
508c2b2067 Rename new hotkey option. Some optimizations for Options form. 2017-04-26 14:51:15 -07:00
Travis Nickles
4a159d4216 Make hotkey execution an optional profile setting.
Related to issue #21
2017-04-26 12:43:01 -07:00
Travis Nickles
de0e9a88cb Change device removal event to only hide one device rather than refresh a list 2017-04-26 01:00:05 -07:00
Travis Nickles
2a20350b6b Some minor changes 2017-04-25 20:07:02 -07:00
Travis Nickles
05c94b677b Hopefully correct some behavior for axis to axis mappings 2017-04-25 07:10:36 -07:00
Travis Nickles
2b5ae4fd51 Show 1 based controller indexes in log 2017-04-25 03:36:50 -07:00
Travis Nickles
ea3b1401f0 Only update battery status for one controller instead of entire controller list
Event is also executed async now.
2017-04-25 02:24:14 -07:00
Travis Nickles
00b6c5e1ea Add new byte mapping and xy axis mapping methods 2017-04-24 07:16:42 -07:00
Travis Nickles
e34e8115ad Fix some button mapping issues. Style changes. Change runStartupPanel 2017-04-24 02:43:56 -07:00
Travis Nickles
bba8af6a63 Work around a couple of null reference problems that might occur 2017-04-23 17:48:13 -07:00
Travis Nickles
8df30a5bbb Change lightbar pulse charging mode to be time dependent 2017-04-22 18:01:31 -07:00
Travis Nickles
064b478683 Fix index out of bounds problem 2017-04-22 08:03:24 -07:00
Travis Nickles
3e4a5c0562 Fixes for Quick Charge mode
Resolves issue #19.
2017-04-22 07:49:01 -07:00
Travis Nickles
3c7aa0d477 Make sure lightbar rainbow mode works properly with multiple devices 2017-04-22 03:31:53 -07:00
Travis Nickles
133d092aab Make lightbar pulse mode time dependent.
Duration might change later. Related to issue #18.
2017-04-22 03:09:11 -07:00
Travis Nickles
23ee6f9d8a Minor style changes and excess removed 2017-04-22 00:26:44 -07:00
Travis Nickles
52c5fde941 Some minor changes 2017-04-21 21:22:36 -07:00
Travis Nickles
a11e4c9e6d Fix typo 2017-04-21 20:01:20 -07:00
Travis Nickles
8c02cb7309 Some changes made for lightbar modes 2017-04-21 19:58:27 -07:00
Travis Nickles
03029b32c0 More usage of cached data 2017-04-21 06:29:25 -07:00
Travis Nickles
9173ab72fe Cache control to state field information to speed up some methods 2017-04-21 02:48:13 -07:00
Travis Nickles
32cbd77708 Minor edits to improve readability 2017-04-20 20:09:08 -07:00
Travis Nickles
6c83ca2470 Calculate stick angles for each state change 2017-04-16 02:54:34 -07:00
Travis Nickles
92b4e2da24 Trim more property usage 2017-04-15 23:22:04 -07:00
Travis Nickles
5aff8d95f0 Trim some property usage 2017-04-15 22:15:54 -07:00
Travis Nickles
efeaf852ac Make sure analog to analog controls work as expected 2017-04-15 11:16:13 -07:00
Travis Nickles
269ca4782f Fix drifting mouse around dead zone 2017-04-15 00:07:56 -07:00
Travis Nickles
babed4eaf1 Speed up event detection for options window. Use angle for stick dirs controls instead of using an extra dead zone. 2017-04-14 20:11:48 -07:00
Travis Nickles
9de2f436e5 Make sure remainder is used for mouse movement. Minor changes to mouse movement routine. 2017-04-14 00:55:22 -07:00
Travis Nickles
c0152f58c9 Tweak mouse mapping method 2017-04-13 20:23:44 -07:00
Travis Nickles
d72c8539e9 Change keyboard events to use both vk and scan code. 2017-04-13 19:50:46 -07:00
Travis Nickles
2ca4d8c727 Optimizations for event commit method 2017-04-12 14:55:35 -07:00
Travis Nickles
af3c1c8531 Minor optimizations 2017-04-12 13:54:38 -07:00
Travis Nickles
65e7add5b3 Replace foreach loop for dictionary usage 2017-04-12 01:21:51 -07:00
Travis Nickles
4ea9289a0d Make sure profile loading and saving works for X360Controls actions 2017-04-11 14:56:37 -07:00
Travis Nickles
24865da04b Insert some more DS4Controls ids 2017-04-11 14:02:32 -07:00
Travis Nickles
31303fbb4d Change default DS4 to X360 binding to not use an explicit action 2017-04-11 13:57:39 -07:00
Travis Nickles
935bcb43f2 Change foreach loop to for loop 2017-04-11 01:13:27 -07:00
Travis Nickles
fd2eb0f006 Move if statements around and replace some foreach loops 2017-04-11 00:57:22 -07:00
Travis Nickles
7bb6a6cdbc Skip unneeded string operation that slows down actions 2017-04-10 23:19:24 -07:00
Travis Nickles
4a6f2fc278 Tweak button mapping translation 2017-04-09 10:14:44 -07:00
Travis Nickles
4ae7be8823 Missed one minor optimization before 2017-04-09 00:42:53 -07:00
Travis Nickles
c7231164d9 Refactor some mapping methods 2017-04-09 00:38:33 -07:00
Travis Nickles
da3efd2589 Fix idle disconnect for Sony Dongle connections
Related to issue #13
2017-04-08 16:13:56 -07:00
Travis Nickles
a6adf886dc More mapping translation speed up 2017-04-08 10:31:59 -07:00
Travis Nickles
a0811aa047 Create cache arrays and group statements to speed up output mapping 2017-04-08 02:00:50 -07:00
Travis Nickles
a1f103c483 Some small changes to the mapping routine 2017-04-07 17:13:19 -07:00
Travis Nickles
1a39c00a01 Fix profile action 2017-04-06 20:13:39 -07:00
Travis Nickles
773b90ebe1 Add details back for multiaction 2017-04-06 19:53:12 -07:00
Travis Nickles
91f36e4297 Fix errors when using multiple special actions 2017-04-06 18:16:12 -07:00
Travis Nickles
a65dfa0624 Only attempt device removal on exit when using Sony dongle 2017-04-06 08:30:41 -07:00
Travis Nickles
51cbe22a90 Tweak disconnect routine 2017-04-06 01:19:12 -07:00
Travis Nickles
5c74a00d90 Allow disconnect routines to work with Sony Dongle.
The main routine was made by aspalmer.
2017-04-05 18:37:38 -07:00
Travis Nickles
a85d1a50ab Change clause to use typeID instead of name string 2017-04-02 00:17:48 -07:00
Travis Nickles
03912ef1d5 Small performance change 2017-04-02 00:07:53 -07:00
Travis Nickles
54ffcf0201 Fix issue with actions not executing. Cache information for action execution. 2017-04-01 17:46:51 -07:00
Travis Nickles
2a5ee9abe3 Minor tweaks to speed up action execution 2017-03-31 22:42:10 -07:00
Travis Nickles
9a0966d966 Removed some property usage 2017-03-30 18:00:17 -07:00
Travis Nickles
f56d50c8a5 Remove some more unneeded loops from action detection 2017-03-30 07:07:04 -07:00
Travis Nickles
824a1e019c Faster action detection.
Trimmed a lot of foreach loops that slowed the method down.
2017-03-30 06:14:58 -07:00
Travis Nickles
550a860eaf Add anti-deadzone for L2 and R2. Tweak Options form. 2017-03-30 00:37:01 -07:00
Travis Nickles
a0cff7ba30 Fixed issue with an unreleased lock blocking device removal. Fixed chance for duplicate log entries for device removal.
Resolves issue #7.
2017-03-29 17:44:10 -07:00
Travis Nickles
a2fb603d72 Minor enhancements. Update changelog link. Add sleep period to reEnableDevice method. 2017-03-29 07:26:07 -07:00
Travis Nickles
96090fc857 Merge https://github.com/yonilerner/DS4Windows into jay 2017-03-29 03:06:03 -07:00
Travis Nickles
5ad4e83b58 Add null extras detection when opening button mapping window 2017-03-28 18:41:17 -07:00
Travis Nickles
ac4017fea2 Minor doc 2017-03-28 08:30:22 -07:00
Travis Nickles
f103d955f6 Speed up looking for custom action and extras 2017-03-28 08:27:15 -07:00
Travis Nickles
7d6e33ba2f Remove some property usage and minor improvements 2017-03-28 01:48:02 -07:00
Travis Nickles
0fc12c1038 Removed unnecessary method call 2017-03-27 20:27:51 -07:00
Travis Nickles
51dfa8b91b Remove some unneeded checks 2017-03-27 06:02:04 -07:00
Yoni Lerner
88ff296286 Fix an issue where the wrong action was being parsed, causing total failure in special action profile loading 2017-03-27 05:39:40 -07:00
Travis Nickles
9cfae83569 Tweak dead zone calculation 2017-03-27 03:37:05 -07:00
Travis Nickles
768e967e04 Minor property optimization 2017-03-27 02:55:53 -07:00
Travis Nickles
11cc515127 Make anti-deadzone setting persistent 2017-03-27 02:50:32 -07:00
Travis Nickles
11a7f8ca2f Slight tweak to anti-deadzone 2017-03-26 23:03:10 -07:00
Travis Nickles
fa8ba7a0ba Initial anti-deadzone feature. Minor R2 deadzone fix. 2017-03-26 20:55:05 -07:00
Travis Nickles
fc58383a82 Fix interpreting right stick values after leaving dead zone 2017-03-26 18:09:27 -07:00
Travis Nickles
a840089d59 Properly enforce dead zones and interpolate values.
Resolves issue #4.
2017-03-25 18:50:34 -07:00
Travis Nickles
2b42e327cc Minor property optimization 2017-03-25 16:42:34 -07:00
Travis Nickles
b41a669223 Interpolate L2 and R2 based on dead zone values 2017-03-25 16:32:45 -07:00
Travis Nickles
a5f51f78e9 Changed flash warning interval in settings 2017-03-25 06:31:39 -07:00
Travis Nickles
4e33578686 Remove some property usage and use explicit getter methods instead.
This shouldn't have been necessary but testing with optimized
release builds has shown that the overhead of using properties
frequently introduces undesired input lag.
2017-03-23 19:32:33 -07:00
Travis Nickles
ecd36237e7 Fixed issue with sleep being invoked too often
Supposedly the code was needed to help reset the color
of the lightbar. It doesn't seem like it is really needed
though. Keep an eye on this.
2017-03-22 21:45:20 -07:00
Travis Nickles
6a3e9ff913 Merge branch 'hold-repeat-macro-fix' of https://github.com/Gorgexpress/DS4Windows into jay 2017-03-19 17:14:14 -07:00
Travis Nickles
4d5b8ccb96 Raise L2Sens and R2Sens. Change default of Flush HID to false.
With some of the more recent changes, having Flush HID
enabled results in increased input lag.
2017-03-19 01:29:45 -07:00
Travis Nickles
1f42e17996 Merge tracking branch 'lag_reduce' into jay 2017-03-19 00:45:28 -07:00
Travis Nickles
36cc2c5012 Add flags to reduce input lag 2017-03-09 16:07:17 -08:00
Travis Nickles
183f88ac46 Allow full XInput axis range for sticks 2017-02-19 01:20:38 -06:00
Michael
6cd470c5ad fixed hold to repeat macros not working without manually editing the xml file 2016-10-21 01:43:26 -04:00
Jays2Kings
ad0d2f8648 Fixed senstivity errors, causing crashes when editing profiles 2016-10-08 21:36:21 -04:00
Jays2Kings
5b87490644 fixed a merge request 2016-09-21 22:42:25 -04:00
Jays2Kings
547bd7b001 Merge remote-tracking branch 'origin/jay' into jay
# Conflicts:
#	DS4Windows/DS4Control/ScpUtil.cs
2016-09-21 22:40:27 -04:00
Jays2Kings
1bfc69ee37 Version 1.4.5
Added support for the New DS4 USB Adapater (Thanks to boganhobo and
Chamilsaan)
Implemented teokp's amazing fix for hide ds4 not working on the
anniversary update of Windows 10: when a controller fails to enter
exclusive mode, DS4Windows will ask for admin privilages to fix the
issue.
Now (near)unlimited Special Actions can be made from the previous limit
of 50
Special Action Xbox Game DVR is now no longer limited to Windows 10,
renamed multi action button: Assign a macro to single tap, double tap,
and holding down a button
Added option for White DS4Windows Icon in the notification tray (While
not merged from, thanks to tehmantra)
Added option to temporarily turn off DS4Windows when using a certain
program (togglable in the Auto Profiles Tab) (Same case as above but
thanks to dedChar to bring to light)
Fixed Options crashes in certain locales where decimal points are
repesented with commas, such as German (Thanks to kiliansch)
Added/Updated translations for many languauges, now including Japanese,
Slovenian, Hungarian, Greek, Finnish, Czech, Indonesian, and Ukrainian
2016-09-21 21:38:38 -04:00
Kilian Schuster
465056fff1 Switched config seperator from comma to pipe to not collide with german comma seperated decimals 2016-03-07 18:18:03 +01:00
Jays2Kings
a06d77641f Version 1.4.401
Fixes for inverting the sticks
Updated French, German, Russian, and Vietnamese translations, and added
more credits
2015-12-18 23:11:12 -05:00
Jays2Kings
93936cf311 Version 1.4.4
Revised shift modifier: each button/control has their own independent
shift trigger instead of one universal one
Select an action window: this window now highlights what said control is
currently set to.
Removed unused images, making the exe a meg smaller
Completely revised how the code for custom mapping works
Updated all translations, added partial Dutch/Nederlands Support
2015-12-18 01:25:51 -05:00
Jays2Kings
fa639ba31c Version 1.4.321
Changed the Rainbow button to an actual button
For using the sixaxis as a mouse, changed none to Always on, also better
movement for the gyro when the sensitivity is lowered
Updated Hebrew, Chinese (Traditional), Itilian, Chinese (Simplified)
2015-12-13 16:30:54 -05:00
Jays2Kings
b528f3ec61 Version 1.4.32
Added Sensitivity settings for both sticks, triggers, and the gyro
Fixed the select an action window popping up after closing the profile
settings or in another tab
Fixed the lightbar button on the main tab being so long, along with some
other random ui fixes
Fixed many issues with making a new profile
When using a custom color the light now fades out based on the current
profile settings (ie. when the battery is low)
Added Hebrew and Vietnamese translations
Updated Chinese (T), Russian, German, Polish
2015-12-05 03:55:11 -05:00
Jays2Kings
2846a0389f Version 1.4.31
Revised the Profile settings UI to fit all the settings on the screen.
Fixed not being able to have a negative scroll value for the touchpad
Less lag when opening/reopening profile settings
Added Arabic Translation (Thanks K.F), updated French, Polish, and
Portuguese translations
2015-11-30 16:15:17 -05:00
Jays2Kings
8d9f69db44 Version 1.4.3
Complete rehaul of the profile settings, bigger workspace to edit
controls, and all the settings are on the side now
Added option to change the lightbar color, regardless of the profile's
lightbar setting (useful for using one profile on the same controller).
to change click the colored button beside edit in the main tab
Can now set the Gyro as an 1:1 absolute mouse, in this mode the mouse
now moves as the controller is moved
Removed the experimental exclusive connection button if on the newest
Windows 10 build (1511/TH2)
Finally updated all the translations and added some new ones (such as
Chinese and Polish, the translations sheets have been merged to one so
it's easier for me to update
2015-11-28 00:47:26 -05:00
jays2kings
3680b6b425 Version 1.4.27
(Windows 10) Thanks to another workaround found, it has been added to
DS4Windows, there is a button on the main tab, to connect your
controller exclusively, this will temporarily kill explorer (The
taskbar) and bring it back once a controller is connected
Macros: When recording with a delay, you can now add rumble and changing
the lightbar color during the macro, you can use the touchpad zones to
add rumble or lightbar options. To change how much rumble happens or the
lightbar color, just double click the item in the list
2015-08-12 23:56:39 -04:00
jays2kings
86079b029e Version 1.4.266
Flash Lightbar when at high latency now has the option to choose what
you decide is high latency
Show Notifications now has the option to only show warnings, such as
when a controller cannot be grabbed exclusively
Speaking of bad news for Windows 10 users: Hide DS4 has now been
disabled, until i can figure out why this is, it will be disabled, this
means some games that rely on this may not work properly or at all,
sorry about that
As for good news for Windows 10, did you know you can press Windows + G
to open a game bar which can record games. For Windows 10 users, there's
a new special action: Xbox Game DVR. Pick a trigger (only one button)
and tapping/holding/or double tapping does various things, such as
start/stop recording, save an ongoing recording, take a screenshot (via
the xbox app's option or your own hotkey ie form steam), or just open
the gamebar
Much of the code has been updated with c# 6.0
Added manifest so DS4Windows can notice Windows 10 and high DPIs, also
reorganized files
2015-07-30 23:34:22 -04:00