private async Task CreateController() { using (await BusyOverlay.Create()) { _book = _bookRepository.Get(ViewModel.BookId); if (_book == null) { return; } _readController = new ReadController(PageCanvas, ViewModel.BookId, _bookRepository, ViewModel.TokenOffset); await _readController.ShowNextPage(); PageCanvas.Manipulator.UpdatePanelsVisibility(); PageCanvas.Manipulator.IsFirstPage = _readController.IsFirst; PageCanvas.Manipulator.IsLastPage = _readController.IsLast; AppBar.TotalPages = _readController.TotalPages; AppBar.PageNumber = _readController.CurrentPage; AppBar.MenuItems[2].IsEnabled = ViewModel.CanPinToDesktop; if (_book.Trial) { AppBar.IconButtons = CreateAppBarIconsForTrial(); } else { AppBar.IconButtons[2].IsEnabled = true; UpdateIsFavouriteAppBarButton(_book.IsFavourite); } } }
public async Task <IBusyOverlayManager> Start(bool hideAppBar = true) { if (_counter > 0) { return(this); } _counter++; _hideAppBar = hideAppBar; _busyOverlay = (BusyOverlay)await BusyOverlay.Create(Content, Closable); _busyOverlay.Closed += OnClosed; _busyOverlay.Closing += OnClosing; return(this); }
private async void Translate(string text) { try { using (await BusyOverlay.Create()) { var translatedText = await _translateController.Translate(text, AppSettings.Default.CurrentTranslateLanguage.TwoLetterISOLanguageName); ClearTextSelection(); TranslationControl.Show(translatedText); } } catch (TranslationException) { MessageBox.Show(UIStrings.TranslateError_Body, UIStrings.TranslateError_Title, MessageBoxButton.OK); } }
public async void Redraw() { if (!_isLoaded) { return; } using (await BusyOverlay.Create()) { await _event.WaitAsync(); _pageManipulationListener = InitializePageManipulationListener(); _textManipulationListener = InitializeTextManipulationListener(); ManipulationService.SetManipulationListener(PageCanvas, _pageManipulationListener); SystemTray.IsVisible = true; SystemTray.SetForegroundColor(this, AppSettings.Default.ColorScheme.SystemTrayForegroundColor); Background = AppSettings.Default.ColorScheme.BackgroundBrush; SupportedOrientations = AppSettings.Default.Orientation; PageCanvas.Clear(); PageCanvas.SetSize(ActualWidth, ActualHeight, ActualWidth, ActualHeight - AppBar.HeightInMinimizedState); PageCanvas.AddBookmark -= AddBookmark; PageCanvas.AddBookmark += AddBookmark; PageCanvas.Translate -= Translate; PageCanvas.Translate += Translate; PageCanvas.Copy -= Copy; PageCanvas.Copy += Copy; PageCanvas.Share -= ShareText; PageCanvas.Share += ShareText; PageCanvas.Manipulator = new ManipulatorFactory(PageCanvas).CreateManipulator(AppSettings.Default.FlippingStyle, AppSettings.Default.FlippingMode); AppBar.Visibility = Visibility.Visible; AppBar.ApplicationBarMinimizedStateView = AppSettings.Default.HideMenu ? ApplicationBarMinimizedState.Hidden : ApplicationBarMinimizedState.Minimized; AppBar.Background = AppSettings.Default.ColorScheme.ApplicationBarBackgroundBrush; AppBar.SliderForegroundBrush = AppSettings.Default.ColorScheme.ProgressBarBrush; AppBar.PageSelected -= AppBar_PageSelected; AppBar.PageSelected += AppBar_PageSelected; AppBar.PageSelectionCancelled -= AppBarOnPageSelectionCancelled; AppBar.PageSelectionCancelled += AppBarOnPageSelectionCancelled; AppBar.PageSelectionApplied -= AppBarOnPageSelectionApplied; AppBar.PageSelectionApplied += AppBarOnPageSelectionApplied; UpdateFontMenuItemAvailability(); _offsetX = AppSettings.Default.Margin.Left; _offsetY = AppSettings.Default.Margin.Top; Brightness.Opacity = 1 - AppSettings.Default.Brightness / 100f; PageCanvas.Manipulator.TurnForward += () => TurnPage(true); PageCanvas.Manipulator.TurnBackward += () => TurnPage(false); if (!string.IsNullOrEmpty(ViewModel.BookId)) { _data = new BookData(ViewModel.BookId); PageCanvas.Bookmarks = _bookmarkRepository.GetBookmarks(ViewModel.BookId); } await CreateController(); AppBar.IconButtons[1].IsEnabled = _data.HasTableOfContents; UpdateTrayVisibility(); _event.Release(); } }