private IOperation BuildShellOperation() { var aboutInfo = new AboutNotificationInfo(text); var aboutController = new AboutNotificationController(context.AppConfig, uiFactory); var audio = new Audio(context.Settings.Audio, ModuleLogger(nameof(Audio))); var keyboard = new Keyboard(ModuleLogger(nameof(Keyboard))); var logInfo = new LogNotificationInfo(text); var logController = new LogNotificationController(logger, uiFactory); var powerSupply = new PowerSupply(ModuleLogger(nameof(PowerSupply))); var wirelessAdapter = new WirelessAdapter(ModuleLogger(nameof(WirelessAdapter))); var operation = new ShellOperation( actionCenter, audio, aboutInfo, aboutController, context, keyboard, logger, logInfo, logController, powerSupply, systemInfo, taskbar, taskview, text, uiFactory, wirelessAdapter); context.Activators.Add(new ActionCenterKeyboardActivator(ModuleLogger(nameof(ActionCenterKeyboardActivator)), nativeMethods)); context.Activators.Add(new ActionCenterTouchActivator(ModuleLogger(nameof(ActionCenterTouchActivator)), nativeMethods)); context.Activators.Add(new TaskviewKeyboardActivator(ModuleLogger(nameof(TaskviewKeyboardActivator)), nativeMethods)); context.Activators.Add(new TerminationActivator(ModuleLogger(nameof(TerminationActivator)), nativeMethods)); return(operation); }
internal SEBContext(AppSettings settings) { appSettings = settings; logger = new Logger(); hashAlgorithm = new HashAlgorithm(); InitializeLogging(); InitializeText(); _dispatcher = Dispatcher.CurrentDispatcher; uiFactory = new UserInterfaceFactory(text); messageBox = new MessageBoxFactory(text); taskbar = uiFactory.CreateTaskbar(logger); taskbar.QuitButtonClicked += Shell_QuitButtonClicked; taskbar.Show(); workingAreaHandler = new WorkingAreaHandler(new ModuleLogger(logger, nameof(WorkingAreaHandler))); workingAreaHandler.InitializeWorkingArea(taskbar.GetAbsoluteHeight()); taskview = uiFactory.CreateTaskview(); var audioSettings = new AudioSettings(); var audio = new Audio(audioSettings, new ModuleLogger(logger, nameof(Audio))); audio.Initialize(); taskbar.AddSystemControl(uiFactory.CreateAudioControl(audio, Location.Taskbar)); var keyboard = new Keyboard(new ModuleLogger(logger, nameof(Keyboard))); keyboard.Initialize(); taskbar.AddSystemControl(uiFactory.CreateKeyboardLayoutControl(keyboard, Location.Taskbar)); var powerSupply = new PowerSupply(new ModuleLogger(logger, nameof(PowerSupply))); powerSupply.Initialize(); taskbar.AddSystemControl(uiFactory.CreatePowerSupplyControl(powerSupply, Location.Taskbar)); var wirelessAdapter = new WirelessAdapter(new ModuleLogger(logger, nameof(WirelessAdapter))); wirelessAdapter.Initialize(); taskbar.AddSystemControl(uiFactory.CreateWirelessNetworkControl(wirelessAdapter, Location.Taskbar)); browser = new BrowserApplication(appSettings, messageBox, true, new ModuleLogger(logger, nameof(BrowserApplication)), text); taskbar.AddApplicationControl(uiFactory.CreateApplicationControl(browser, Location.Taskbar), true); browser.TerminationRequested += () => { Browser_TerminationRequested(); }; taskview.Add(browser); InitializeCef(); foreach (string startUrl in appSettings.StartUrls) { browser.CreateNewInstance(startUrl); } }
private IOperation BuildShellOperation() { var aboutInfo = new AboutNotificationInfo(text); var aboutController = new AboutNotificationController(configuration.AppConfig, uiFactory); var audio = new Audio(configuration.Settings.Audio, new ModuleLogger(logger, nameof(Audio))); var keyboard = new Keyboard(new ModuleLogger(logger, nameof(Keyboard))); var logInfo = new LogNotificationInfo(text); var logController = new LogNotificationController(logger, uiFactory); var powerSupply = new PowerSupply(new ModuleLogger(logger, nameof(PowerSupply))); var wirelessAdapter = new WirelessAdapter(new ModuleLogger(logger, nameof(WirelessAdapter))); var activators = new IActionCenterActivator[] { new KeyboardActivator(new ModuleLogger(logger, nameof(KeyboardActivator))), new TouchActivator(new ModuleLogger(logger, nameof(TouchActivator))) }; var operation = new ShellOperation( actionCenter, activators, configuration.Settings.ActionCenter, audio, aboutInfo, aboutController, keyboard, logger, logInfo, logController, powerSupply, systemInfo, taskbar, configuration.Settings.Taskbar, terminationActivator, text, uiFactory, wirelessAdapter); return(operation); }