11using WindowsInput ;
2- using static CommonHelpers . Log ;
32
43namespace SteamController . Devices
54{
@@ -77,14 +76,17 @@ public void Dispose()
7776 {
7877 }
7978
80- private void Safe ( Func < bool > action )
79+ private void Safe ( Action action )
8180 {
8281 try
8382 {
8483 action ( ) ;
84+
85+ Managers . SASManager . Valid = true ;
8586 }
8687 catch ( InvalidOperationException )
8788 {
89+ Managers . SASManager . Valid = false ;
8890 }
8991 }
9092
@@ -103,67 +105,55 @@ internal void Update()
103105 // Mouse Up: it is missing now
104106 foreach ( var button in lastMouseButtons . Except ( mouseButtons ) )
105107 {
106- Safe ( ( ) =>
108+ switch ( button )
107109 {
108- switch ( button )
109- {
110- case Button . Left :
111- simulator . Mouse . LeftButtonUp ( ) ;
112- return true ;
113-
114- case Button . Right :
115- simulator . Mouse . RightButtonUp ( ) ;
116- return true ;
117-
118- case Button . Middle :
119- simulator . Mouse . MiddleButtonUp ( ) ;
120- return true ;
121-
122- case Button . X :
123- simulator . Mouse . XButtonUp ( XButtonID ) ;
124- return true ;
125-
126- case Button . Y :
127- simulator . Mouse . XButtonUp ( YButtonID ) ;
128- return true ;
129-
130- default :
131- return false ;
132- }
133- } ) ;
110+ case Button . Left :
111+ Safe ( ( ) => simulator . Mouse . LeftButtonUp ( ) ) ;
112+ break ;
113+
114+ case Button . Right :
115+ Safe ( ( ) => simulator . Mouse . RightButtonUp ( ) ) ;
116+ break ;
117+
118+ case Button . Middle :
119+ Safe ( ( ) => simulator . Mouse . MiddleButtonUp ( ) ) ;
120+ break ;
121+
122+ case Button . X :
123+ Safe ( ( ) => simulator . Mouse . XButtonUp ( XButtonID ) ) ;
124+ break ;
125+
126+ case Button . Y :
127+ Safe ( ( ) => simulator . Mouse . XButtonUp ( YButtonID ) ) ;
128+ break ;
129+ }
134130 }
135131
136132 // Key Down: new keys being down
137133 foreach ( var button in mouseButtons . Except ( lastMouseButtons ) )
138134 {
139- Safe ( ( ) =>
135+ switch ( button )
140136 {
141- switch ( button )
142- {
143- case Button . Left :
144- simulator . Mouse . LeftButtonDown ( ) ;
145- return true ;
146-
147- case Button . Right :
148- simulator . Mouse . RightButtonDown ( ) ;
149- return true ;
150-
151- case Button . Middle :
152- simulator . Mouse . MiddleButtonDown ( ) ;
153- return true ;
154-
155- case Button . X :
156- simulator . Mouse . XButtonDown ( XButtonID ) ;
157- return true ;
158-
159- case Button . Y :
160- simulator . Mouse . XButtonDown ( YButtonID ) ;
161- return true ;
162-
163- default :
164- return false ;
165- }
166- } ) ;
137+ case Button . Left :
138+ Safe ( ( ) => simulator . Mouse . LeftButtonDown ( ) ) ;
139+ break ;
140+
141+ case Button . Right :
142+ Safe ( ( ) => simulator . Mouse . RightButtonDown ( ) ) ;
143+ break ;
144+
145+ case Button . Middle :
146+ Safe ( ( ) => simulator . Mouse . MiddleButtonDown ( ) ) ;
147+ break ;
148+
149+ case Button . X :
150+ Safe ( ( ) => simulator . Mouse . XButtonDown ( XButtonID ) ) ;
151+ break ;
152+
153+ case Button . Y :
154+ Safe ( ( ) => simulator . Mouse . XButtonDown ( YButtonID ) ) ;
155+ break ;
156+ }
167157 }
168158
169159 // Move cursor
@@ -173,11 +163,7 @@ internal void Update()
173163 int y = movedY . Consume ( ) ;
174164 if ( x != 0 || y != 0 )
175165 {
176- Safe ( ( ) =>
177- {
178- simulator . Mouse . MoveMouseBy ( x , y ) ;
179- return true ;
180- } ) ;
166+ Safe ( ( ) => simulator . Mouse . MoveMouseBy ( x , y ) ) ;
181167 }
182168 }
183169
@@ -187,11 +173,7 @@ internal void Update()
187173 int value = verticalScroll . Consume ( ) ;
188174 if ( value != 0 )
189175 {
190- Safe ( ( ) =>
191- {
192- simulator . Mouse . VerticalScroll ( value ) ;
193- return true ;
194- } ) ;
176+ Safe ( ( ) => simulator . Mouse . VerticalScroll ( value ) ) ;
195177 }
196178 }
197179
@@ -200,77 +182,61 @@ internal void Update()
200182 int value = horizontalScroll . Consume ( ) ;
201183 if ( value != 0 )
202184 {
203- Safe ( ( ) =>
204- {
205- simulator . Mouse . HorizontalScroll ( value ) ;
206- return true ;
207- } ) ;
185+ Safe ( ( ) => simulator . Mouse . HorizontalScroll ( value ) ) ;
208186 }
209187 }
210188 }
211189
212190 public void MouseClick ( Button button )
213191 {
214- Safe ( ( ) =>
192+ switch ( button )
215193 {
216- switch ( button )
217- {
218- case Button . Left :
219- simulator . Mouse . LeftButtonClick ( ) ;
220- return true ;
194+ case Button . Left :
195+ Safe ( ( ) => simulator . Mouse . LeftButtonClick ( ) ) ;
196+ break ;
221197
222- case Button . Right :
223- simulator . Mouse . RightButtonClick ( ) ;
224- return true ;
198+ case Button . Right :
199+ Safe ( ( ) => simulator . Mouse . RightButtonClick ( ) ) ;
200+ break ;
225201
226- case Button . Middle :
227- simulator . Mouse . MiddleButtonClick ( ) ;
228- return true ;
202+ case Button . Middle :
203+ Safe ( ( ) => simulator . Mouse . MiddleButtonClick ( ) ) ;
204+ break ;
229205
230- case Button . X :
231- simulator . Mouse . XButtonClick ( XButtonID ) ;
232- return true ;
233-
234- case Button . Y :
235- simulator . Mouse . XButtonClick ( YButtonID ) ;
236- return true ;
206+ case Button . X :
207+ Safe ( ( ) => simulator . Mouse . XButtonClick ( XButtonID ) ) ;
208+ break ;
237209
238- default :
239- return false ;
240- }
241- } ) ;
210+ case Button . Y :
211+ Safe ( ( ) => simulator . Mouse . XButtonClick ( YButtonID ) ) ;
212+ break ;
213+ }
242214 }
243215
244216 public void MouseDoubleClick ( Button button )
245217 {
246- Safe ( ( ) =>
218+ switch ( button )
247219 {
248- switch ( button )
249- {
250- case Button . Left :
251- simulator . Mouse . LeftButtonDoubleClick ( ) ;
252- return true ;
220+ case Button . Left :
221+ Safe ( ( ) => simulator . Mouse . LeftButtonDoubleClick ( ) ) ;
222+ break ;
253223
254- case Button . Right :
255- simulator . Mouse . RightButtonDoubleClick ( ) ;
256- return true ;
224+ case Button . Right :
225+ Safe ( ( ) => simulator . Mouse . RightButtonDoubleClick ( ) ) ;
226+ break ;
257227
258- case Button . Middle :
259- simulator . Mouse . MiddleButtonDoubleClick ( ) ;
260- return true ;
228+ case Button . Middle :
229+ Safe ( ( ) => simulator . Mouse . MiddleButtonDoubleClick ( ) ) ;
230+ break ;
261231
262- case Button . X :
263- simulator . Mouse . XButtonDoubleClick ( XButtonID ) ;
264- return true ;
232+ case Button . X :
233+ Safe ( ( ) => simulator . Mouse . XButtonDoubleClick ( XButtonID ) ) ;
234+ break ;
265235
266- case Button . Y :
267- simulator . Mouse . XButtonDoubleClick ( YButtonID ) ;
268- return true ;
269-
270- default :
271- return false ;
272- }
273- } ) ;
236+ case Button . Y :
237+ Safe ( ( ) => simulator . Mouse . XButtonDoubleClick ( YButtonID ) ) ;
238+ break ;
239+ }
274240 }
275241
276242 public void MoveBy ( double pixelDeltaX , double pixelDeltaY )
@@ -281,11 +247,7 @@ public void MoveBy(double pixelDeltaX, double pixelDeltaY)
281247
282248 public void MoveTo ( double absoluteX , double absoluteY )
283249 {
284- Safe ( ( ) =>
285- {
286- simulator . Mouse . MoveMouseTo ( absoluteX , absoluteY ) ;
287- return true ;
288- } ) ;
250+ Safe ( ( ) => simulator . Mouse . MoveMouseTo ( absoluteX , absoluteY ) ) ;
289251 }
290252
291253 public void VerticalScroll ( double scrollAmountInClicks )
0 commit comments