예제 #1
0
        public void DisplayApplication(IApplication application)
        {
            var browserWindow = _browserWindowsManager.GetOrCreateBrowserWindow(application);

            _uiHelper.PerformInUiThread(() =>
            {
                browserWindow.Display();
            });
        }
예제 #2
0
        public virtual IBrowserWindow GetOrCreateSessionlessWindow(IApplication application)
        {
            if (application == null)
            {
                throw new ArgumentNullException("application");
            }

            var applicationId = application.Id;

            if (string.IsNullOrEmpty(applicationId))
            {
                throw new ArgumentNullException("application.Id");
            }

            lock (_lockObject)
            {
                if (!_browserWindowsWithoutSession.ContainsKey(applicationId))
                {
                    var model = new BrowserViewModel() { Application = application, Session = Session };

                    _uiHelper.PerformInUiThread(() =>
                    {
                        var browserWindow = _browserWindowsBuilder.CreateBrowserWindow(model);
                        _browserWindowsWithoutSession[applicationId] = browserWindow;
                    });
                }

                return _browserWindowsWithoutSession[applicationId];
            }
        }
예제 #3
0
        public void DisplayApplicationWithoutSession(IApplication application)
        {
            var browserWindow = _browserWindowsManager.GetOrCreateSessionlessWindow(application);

            _uiHelper.PerformInUiThread(() =>
            {
                browserWindow.Navigate();
                browserWindow.Display();
            });
        }
예제 #4
0
 public static bool IsUnsupported(IApplication application)
 {
     return UnsupportedAppNames.Contains(application.Name);
 }