@@ -24,7 +24,7 @@ public FindElementsController(ILogger<FindElementsController> logger, ISessionRe
2424 public async Task < ActionResult > FindElement ( [ FromRoute ] string sessionId , [ FromBody ] FindElementRequest findElementRequest )
2525 {
2626 var session = GetActiveSession ( sessionId ) ;
27- return await FindElementFrom ( ( ) => session . CurrentWindow , findElementRequest , session ) ;
27+ return await FindElementFrom ( ( ) => session . App == null ? session . Automation . GetDesktop ( ) : session . CurrentWindow , findElementRequest , session ) ;
2828 }
2929
3030 [ HttpPost ( "element/{elementId}/element" ) ]
@@ -39,7 +39,7 @@ public async Task<ActionResult> FindElementFromElement([FromRoute] string sessio
3939 public async Task < ActionResult > FindElements ( [ FromRoute ] string sessionId , [ FromBody ] FindElementRequest findElementRequest )
4040 {
4141 var session = GetActiveSession ( sessionId ) ;
42- return await FindElementsFrom ( ( ) => session . CurrentWindow , findElementRequest , session ) ;
42+ return await FindElementsFrom ( ( ) => session . App == null ? session . Automation . GetDesktop ( ) : session . CurrentWindow , findElementRequest , session ) ;
4343 }
4444
4545 [ HttpPost ( "element/{elementId}/elements" ) ]
@@ -203,7 +203,7 @@ private AutomationElement GetElement(Session session, string elementId)
203203 private Session GetActiveSession ( string sessionId )
204204 {
205205 var session = GetSession ( sessionId ) ;
206- if ( session . App == null || session . App . HasExited )
206+ if ( session . App != null && session . App . HasExited )
207207 {
208208 throw WebDriverResponseException . NoWindowsOpenForSession ( ) ;
209209 }
0 commit comments