Exemple #1
0
 public PublicAPIInstance(SettingWindowViewModel settingsVM, MainViewModel mainVM)
 {
     _settingsVM = settingsVM;
     _mainVM = mainVM;
     GlobalHotkey.Instance.hookedKeyboardCallback += KListener_hookedKeyboardCallback;
     WebRequest.RegisterPrefix("data", new DataWebRequestFactory());
 }
Exemple #2
0
 public MainWindow(Settings settings, MainViewModel mainVM)
 {
     InitializeComponent();
     DataContext = mainVM;
     _viewModel = mainVM;
     _settings = settings;
 }
Exemple #3
0
        public PublicAPIInstance(MainViewModel mainVM)
        {
            MainVM = mainVM;

            GlobalHotkey.Instance.hookedKeyboardCallback += KListener_hookedKeyboardCallback;
            WebRequest.RegisterPrefix("data", new DataWebRequestFactory());

            SetHotkey(UserSettingStorage.Instance.Hotkey, OnHotkey);
            SetCustomPluginHotkey();

            MainVM.ListeningKeyPressed += (o, e) => {

                if(e.KeyEventArgs.Key == Key.Back)
                {
                    BackKeyDownEvent?.Invoke(new WoxKeyDownEventArgs
                    {
                        Query = MainVM.QueryText,
                        keyEventArgs = e.KeyEventArgs
                    });
                }
            };
        }
Exemple #4
0
        protected override void OnStartup(StartupEventArgs e)
        {
            Stopwatch.Debug("Startup Time", () =>
            {
                base.OnStartup(e);
                WoxDirectroy.Executable = Directory.GetParent(Assembly.GetExecutingAssembly().Location).ToString();
                RegisterUnhandledException();

                ThreadPool.SetMaxThreads(30, 10);
                ThreadPool.SetMinThreads(10, 5);
                ThreadPool.QueueUserWorkItem(_ => { ImageLoader.ImageLoader.PreloadImages(); });

                MainViewModel mainVM = new MainViewModel();
                API = new PublicAPIInstance(mainVM);
                Window = new MainWindow {DataContext = mainVM};

                NotifyIconManager notifyIconManager = new NotifyIconManager(API);

                PluginManager.Init(API);
                CommandArgsFactory.Execute(e.Args.ToList());
            });
        }
Exemple #5
0
        private void OnStartup(object sender, StartupEventArgs e)
        {
            Stopwatch.Normal("Startup Time", () =>
            {
                RegisterDispatcherUnhandledException();

                var settingVM = new SettingWindowViewModel();
                _settings = settingVM.Settings;

                PluginManager.LoadPlugins(_settings.PluginSettings);
                var mainVM = new MainViewModel(_settings);
                var window = new MainWindow(_settings, mainVM);
                API = new PublicAPIInstance(settingVM, mainVM);
                PluginManager.InitializePlugins(API);

                ImageLoader.PreloadImages();

                Current.MainWindow = window;
                Current.MainWindow.Title = Infrastructure.Constant.Wox;

                RegisterExitEvents();

                AutoStartup();
                AutoUpdates();

                if (!_settings.HideOnStartup)
                {
                    mainVM.MainWindowVisibility = Visibility.Visible;
                }
            });
        }