private static void OnApplicationFocusCommandChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)
        {
            var watcher = GetGlobalEventWatcher(d);

            if (watcher != null)
            {
                watcher.Dispose();
            }

            if (e.NewValue != null)
            {
                watcher = new GlobalEventWatcher(d);
                SetGlobalEventWatcher(d, watcher);
            }
        }
 private static void SetGlobalEventWatcher(DependencyObject obj, GlobalEventWatcher value)
 {
     obj.SetValue(GlobalEventWatcherProperty, value);
 }