Ejemplo n.º 1
0
        protected override void OnStartup(StartupEventArgs e)
        {
            // allow only one instance of file explorer gallery
            bool createdNew;

            _instanceMutex = new Mutex(true, @"Global\FileExplorerGallery", out createdNew);
            if (!createdNew)
            {
                _instanceMutex = null;
                Current.Shutdown();
                return;
            }

            using (var mgr = new UpdateManager(""))
            {
                // Note, in most of these scenarios, the app exits after this method
                // completes!
                SquirrelAwareApp.HandleEvents(
                    onInitialInstall: v => mgr.CreateShortcutForThisExe(),
                    onAppUpdate: v => mgr.CreateShortcutForThisExe(),
                    onAppUninstall: v => mgr.RemoveShortcutForThisExe(),
                    onFirstRun: () => ShowWelcome());
            }

            base.OnStartup(e);

            Bootstrapper.InitializeContainer(this);
            MigrateUserSettings();
            SetupTrayIcon();
            KeyboardMonitor.Start();
            Current.MainWindow = null;
        }
Ejemplo n.º 2
0
 private void Otherkeys(KeyboardMonitor h)
 {
     if (h.HasBeenPressed(Keys.F1, KeyboardMonitor.ShiftState.None))
     {
         displaycontrol.DumpTrees(0, null);
     }
 }
Ejemplo n.º 3
0
        public MainViewModel(
            IMouseInfoProvider mouseInfoProvider,
            ZoomWindowHelper zoomWindowHelper,
            AppStateHandler appStateHandler,
            KeyboardMonitor keyboardMonitor,
            IUserSettings userSettings)
        {
            _zoomWindowHelper = zoomWindowHelper;
            _appStateHandler  = appStateHandler;
            _userSettings     = userSettings;
            NativeEventWaiter.WaitForEventLoop(Constants.ShowColorPickerSharedEvent(), _appStateHandler.StartUserSession);
            NativeEventWaiter.WaitForEventLoop(Constants.ColorPickerSendSettingsTelemetryEvent(), _userSettings.SendSettingsTelemetry);

            if (mouseInfoProvider != null)
            {
                mouseInfoProvider.MouseColorChanged += Mouse_ColorChanged;
                mouseInfoProvider.OnMouseDown       += MouseInfoProvider_OnMouseDown;
                mouseInfoProvider.OnMouseWheel      += MouseInfoProvider_OnMouseWheel;
            }

            _userSettings.ShowColorName.PropertyChanged += (s, e) => { OnPropertyChanged(nameof(ShowColorName)); };

            // Only start a local keyboard low level hook if running as a standalone.
            // Otherwise, the global keyboard hook from runner will be used to activate Color Picker through ShowColorPickerSharedEvent
            // and the Escape key will be registered as a shortcut by appStateHandler when ColorPicker is being used.
            // This is much lighter than using a local low level keyboard hook.
            if ((System.Windows.Application.Current as ColorPickerUI.App).IsRunningDetachedFromPowerToys())
            {
                keyboardMonitor?.Start();
            }
        }
Ejemplo n.º 4
0
 public override void LoadContent()
 {
     _font              = Content.Load <SpriteFont>("Fonts/font");
     _buttonUpTexture   = Sprite.GetTextureFromColor(SceneManager.GraphicsDevice, Color.DarkSlateGray);
     _buttonDownTexture = Sprite.GetTextureFromColor(SceneManager.GraphicsDevice, Color.DarkSlateBlue);
     _keyboardMonitor   = new KeyboardMonitor();
     base.LoadContent();
 }
Ejemplo n.º 5
0
        public MainViewModel(
            IMouseInfoProvider mouseInfoProvider,
            ZoomWindowHelper zoomWindowHelper,
            AppStateHandler appStateHandler,
            KeyboardMonitor keyboardMonitor,
            IUserSettings userSettings)
        {
            _zoomWindowHelper = zoomWindowHelper;
            _appStateHandler  = appStateHandler;
            _userSettings     = userSettings;

            mouseInfoProvider.MouseColorChanged += Mouse_ColorChanged;
            mouseInfoProvider.OnMouseDown       += MouseInfoProvider_OnMouseDown;
            mouseInfoProvider.OnMouseWheel      += MouseInfoProvider_OnMouseWheel;

            keyboardMonitor.Start();
        }
Ejemplo n.º 6
0
        public UI(UIConfig config)
        {
            DefaultFont = config.DefaultFont;
            RootPanel.SetBounds(config.Bounds);
            RootPanel.SetFont(config.DefaultFont);
            Inputs       = config.Inputs;
            SceneManager = config.SceneManager;
            Catalog      = config.Catalog;

            if (config.DefaultBackground != null)
            {
                DefaultBackground = config.DefaultBackground;
            }

            MouseMonitor    = new MouseMonitor();
            KeyboardMonitor = new KeyboardMonitor();
            GamepadMonitor  = new GamepadMonitor();
        }
Ejemplo n.º 7
0
        static KeyBindsEmitter()
        {
            var settingsType = typeof(Properties.Settings);

            foreach (var actionName in Enum.GetNames(typeof(ActionTypes)))
            {
                var property = settingsType.GetProperty(actionName, BindingFlags.Instance | BindingFlags.Public);
                if (property != null)
                {
                    var         value = property.GetValue(Properties.Settings.Default) as string;
                    var         keys  = DeserializeKeyBindsHash(value);
                    ActionTypes atype;
                    Enum.TryParse(actionName, out atype);
                    _keyPressHolder.Add(atype, new KeyBindsContainer(keys, value, atype, property));
                }
            }
            //Добавить реакцию на нажатия кнопок
            KeyboardMonitor.SubscribeCommonHandler(KeyPressed);
        }
Ejemplo n.º 8
0
        public MainViewModel(
            IMouseInfoProvider mouseInfoProvider,
            ZoomWindowHelper zoomWindowHelper,
            AppStateHandler appStateHandler,
            KeyboardMonitor keyboardMonitor,
            AppUpdateManager appUpdateManager,
            IUserSettings userSettings)
        {
            _zoomWindowHelper = zoomWindowHelper;
            _appStateHandler  = appStateHandler;
            mouseInfoProvider.MouseColorChanged += Mouse_ColorChanged;
            mouseInfoProvider.OnMouseDown       += MouseInfoProvider_OnMouseDown;
            mouseInfoProvider.OnMouseWheel      += MouseInfoProvider_OnMouseWheel;

            keyboardMonitor.Start();

            #if !DEBUG
            CheckForUpdates(appUpdateManager, userSettings);
            #endif
        }
Ejemplo n.º 9
0
        public MainViewModel(
            IMouseInfoProvider mouseInfoProvider,
            ZoomWindowHelper zoomWindowHelper,
            AppStateHandler appStateHandler,
            KeyboardMonitor keyboardMonitor,
            IUserSettings userSettings)
        {
            _zoomWindowHelper = zoomWindowHelper;
            _appStateHandler  = appStateHandler;
            _userSettings     = userSettings;

            if (mouseInfoProvider != null)
            {
                mouseInfoProvider.MouseColorChanged += Mouse_ColorChanged;
                mouseInfoProvider.OnMouseDown       += MouseInfoProvider_OnMouseDown;
                mouseInfoProvider.OnMouseWheel      += MouseInfoProvider_OnMouseWheel;
            }

            _userSettings.ShowColorName.PropertyChanged += (s, e) => { OnPropertyChanged(nameof(ShowColorName)); };
            keyboardMonitor?.Start();
        }
Ejemplo n.º 10
0
        public MainViewModel(
            IMouseInfoProvider mouseInfoProvider,
            ZoomWindowHelper zoomWindowHelper,
            AppStateHandler appStateHandler,
            KeyboardMonitor keyboardMonitor,
            IUserSettings userSettings)
        {
            _zoomWindowHelper = zoomWindowHelper;
            _appStateHandler  = appStateHandler;
            _userSettings     = userSettings;
            NativeEventWaiter.WaitForEventLoop(Constants.ShowColorPickerSharedEvent(), _appStateHandler.StartUserSession);
            NativeEventWaiter.WaitForEventLoop(Constants.ColorPickerSendSettingsTelemetryEvent(), _userSettings.SendSettingsTelemetry);

            if (mouseInfoProvider != null)
            {
                mouseInfoProvider.MouseColorChanged += Mouse_ColorChanged;
                mouseInfoProvider.OnMouseDown       += MouseInfoProvider_OnMouseDown;
                mouseInfoProvider.OnMouseWheel      += MouseInfoProvider_OnMouseWheel;
            }

            _userSettings.ShowColorName.PropertyChanged += (s, e) => { OnPropertyChanged(nameof(ShowColorName)); };
            keyboardMonitor?.Start();
        }
Ejemplo n.º 11
0
        /// <summary>
        /// Initialize the application
        /// </summary>
        void Init()
        {
            //create instances
            keySimulator   = new KeyboardSimulator();
            keyMonitor     = new KeyboardMonitor();
            commandCapture = new StringBuilder();

            //initialize ui
            liveStats = new LiveStatsUI();
            InitNotify();

            //load commands
            commands = BlazeCommands.FromFile(CommandsFile);
            if (commands == null)
            {
                //MessageBox.Show($"Could not load Commands from \n{CommandsFile}", "Cannot Load Commands", MessageBoxButtons.OK, MessageBoxIcon.Error);
                //Application.Exit();

                //load default commands
                File.Copy(DEFAULT_COMMANDS_FILE, CommandsFile);
                commands = BlazeCommands.FromFile(CommandsFile);
                SendNotification("Default Commands were loaded!");
            }

            //sanity- check: commands should be loaded by now
            if (commands == null)
            {
                return;
            }

            //initialize monitor
            keyMonitor.Init();
            keyMonitor.KeyPressed += OnGlobalKeyPress;

            AfterInit();
        }