public virtual void Initialize(bool isGlobalKeyboard)
 {
     keyboard = new ImpKeyboard <TCmdType>();
     keyboard.Add(GenerateDefaultKeyCommands());
     if (isGlobalKeyboard)
     {
         globalKeyboard = true;
         GlobalKeyboard.SetModifierKeys(keyboard.ModKeys);
     }
 }
        public virtual void Update()
        {
            var cmdList = keyboard.Update(Selected, AllowedStyles);

            GlobalKeyboard.SetModifierKeys(keyboard.ModKeys);
            if (Focused)
            {
                foreach (var command in cmdList)
                {
                    Exec(command.Command, command.Argument);
                }
            }
        }
Beispiel #3
0
        private void HandleKeyboard()
        {
            if (GlobalKeyboard.InputPressed(InputFlags.Escape))
            {
                Exit();
            }

            if (GlobalKeyboard.InputPressed(InputFlags.Debug1))
            {
                _drawDebug = !_drawDebug;
            }

            if (GlobalKeyboard.InputPressed(InputFlags.Debug2))
            {
                CurrentRoom = Rooms.GetRoom("test_1_fuji");
            }

            if (GlobalKeyboard.InputPressed(InputFlags.Debug3))
            {
                CurrentRoom = Rooms.GetRoom("test_2_yamato");
            }
        }
Beispiel #4
0
        private void Application_Startup(object sender, StartupEventArgs e)
        {
            if (e.Args.Length > 0)
            {
                // exec "<path-to-package>"
                var arg0    = e.Args[0].ToLower();
                var isDebug = arg0 == "execdebug";

                if (arg0 == "exec" || isDebug)
                {
                    FridaService.RunProcessWithPackage(e.Args[2], e.Args.Skip(3).ToArray(), isDebug || GlobalKeyboard.IsDebugKeyDown(), Package.Load(e.Args[1]));
                    // Stay resident. Detaching frida when the target quits will tear down this process.
                    return;
                }

                // attach "<path-to-package>"
                if (arg0 == "attach")
                {
                    isDebug = true;
                    FridaService.AttachToProcessWithPackage(uint.Parse(e.Args[3]), "", isDebug || GlobalKeyboard.IsDebugKeyDown(), Package.Load(e.Args[1]));
                    // Stay resident. Detaching frida when the target quits will tear down this process.
                    return;
                }

                // <DeploymentAction> "<path-to-package>"
                foreach (PackageDeploymentService.DeploymentAction operation in Enum.GetValues(typeof(PackageDeploymentService.DeploymentAction)))
                {
                    if (operation.ToString().ToUpper() == e.Args[0].ToUpper())
                    {
                        PackageDeploymentService.DeployPackageElevated(Package.Load(e.Args[1]), operation);
                        Environment.Exit(0);
                    }
                }

                if (arg0 == "/register")
                {
                    // re-register appx apps, since the registration goes away after logout.
                    foreach (var pkg in PackageStoreService.Enumerate())
                    {
                        if (!pkg.IsExe)
                        {
                            PackageDeploymentService.DeployPackageUnElevated(pkg, PackageDeploymentService.DeploymentAction.Install_Package);
                        }
                    }
                    return;
                }

                // Default to filetype association launch for package
                // <path-to-package>
                new InstallWindow(e.Args[0]).Show();
            }
            else
            {
                // Package Manager UI
                new MainWindow().Show();
            }
        }