@@ -327,22 +327,27 @@ $(document).ready(function () {
327327 $ ( '#btn_submit_screengrabber' ) . off ( ) . on ( 'click' , function ( ) {
328328 let saveOptions = conf_editor_screen . getValue ( ) ;
329329
330+ // As the DDA grabber will not issue updates when no screen activity, set all instances to a timeout of 5 minutes to avoid off/on blinking
331+ // until a better design is in place
332+ if ( saveOptions . framegrabber . device === "dda" ) {
333+ let instCaptOptions = window . serverConfig . instCapture ;
334+ instCaptOptions . systemEnable = saveOptions . framegrabber . enable ;
335+ instCaptOptions . screenInactiveTimeout = DDA_INACTIVE_TIMEOUT ;
336+
337+ saveOptions . instCapture = instCaptOptions ;
338+ requestWriteConfig ( saveOptions , false , getConfiguredInstances ( ) ) ;
339+ return ;
340+ }
341+
330342 const currentInstance = window . currentHyperionInstance ;
331343 //If an instance exists, enable/disable grabbing in line with the global state
332344 if ( currentInstance !== null && window . serverConfig . instCapture ) {
333345 let instCaptOptions = window . serverConfig . instCapture ;
334346 instCaptOptions . systemEnable = saveOptions . framegrabber . enable ;
335-
336- // As the DDA grabber will not issue updates when no screen activity, set the timeout to 5 minutes to avoid off/on blinking
337- if ( saveOptions . framegrabber . device === "dda" && instCaptOptions . screenInactiveTimeout < DDA_INACTIVE_TIMEOUT ) {
338- instCaptOptions . screenInactiveTimeout = DDA_INACTIVE_TIMEOUT ;
339- } else {
340- instCaptOptions . screenInactiveTimeout = window . schema . instCapture . properties . screenInactiveTimeout . default ;
341- }
347+ instCaptOptions . screenInactiveTimeout = window . schema . instCapture . properties . screenInactiveTimeout . default ;
342348
343349 saveOptions . instCapture = instCaptOptions ;
344350 }
345-
346351 requestWriteConfig ( saveOptions ) ;
347352 } ) ;
348353 }
0 commit comments