using System; using System.Drawing; using System.Windows.Forms; using System.Threading; using System.Collections.Generic; // The 'windowHandle' parameter will contain the window handle for the: // - Active window when run by hotkey // - Window Location target when run by a Window Location rule // - TitleBar Button owner when run by a TitleBar Button // - Jump List owner when run from a Taskbar Jump List // - Currently focused window if none of these match public static class DisplayFusionFunction { private static readonly string SettingName = "DimMonitor_TransparentForm_Running"; public static void Run(IntPtr windowHandle) { //toggle the setting from running to not running, and vice versa ToggleSetting(); //check to see if we should exit bool isExiting = !IsTransparentWindowRunning(); //if we are exiting, exit if(isExiting) return; //add the primary monitor to the list of monitors that will be dimmed List