Fix current page not updating when clicking on thumbnails list

This commit is contained in:
Paddy Xu
2017-05-02 00:07:45 +03:00
parent 7d05479b78
commit c6231cf7a7
3 changed files with 13 additions and 11 deletions

View File

@@ -62,7 +62,7 @@ namespace QuickLook.Plugin.OfficeViewer
context.Title = $"{Path.GetFileName(path)} (1 / {_pdfViewer.TotalPages})"; context.Title = $"{Path.GetFileName(path)} (1 / {_pdfViewer.TotalPages})";
}; };
_pdfViewer.CurrentPageChanged += (sender, e) => context.Title = _pdfViewer.CurrentPageChanged += (sender, e) => context.Title =
$"{Path.GetFileName(path)} ({_pdfViewer.CurrectPage + 1} / {_pdfViewer.TotalPages})"; $"{Path.GetFileName(path)} ({_pdfViewer.CurrentPage + 1} / {_pdfViewer.TotalPages})";
context.ViewerContent = _pdfViewer; context.ViewerContent = _pdfViewer;

View File

@@ -41,7 +41,7 @@ namespace QuickLook.Plugin.PDFViewer
public int TotalPages => PdfHandle.TotalPages; public int TotalPages => PdfHandle.TotalPages;
public int CurrectPage public int CurrentPage
{ {
get => listThumbnails.SelectedIndex; get => listThumbnails.SelectedIndex;
set set
@@ -97,18 +97,18 @@ namespace QuickLook.Plugin.PDFViewer
private void NextPage() private void NextPage()
{ {
if (CurrectPage < PdfHandle.TotalPages - 1) if (CurrentPage < PdfHandle.TotalPages - 1)
{ {
CurrectPage++; CurrentPage++;
pageViewPanel.ScrollToTop(); pageViewPanel.ScrollToTop();
} }
} }
private void PrevPage() private void PrevPage()
{ {
if (CurrectPage > 0) if (CurrentPage > 0)
{ {
CurrectPage--; CurrentPage--;
pageViewPanel.ScrollToBottom(); pageViewPanel.ScrollToBottom();
} }
} }
@@ -143,7 +143,7 @@ namespace QuickLook.Plugin.PDFViewer
if (!PdfLoaded) if (!PdfLoaded)
return; return;
var image = PdfHandle.GetPage(CurrectPage, ZoomFactor).ToBitmapSource(); var image = PdfHandle.GetPage(CurrentPage, ZoomFactor).ToBitmapSource();
pageViewPanelImage.Source = image; pageViewPanelImage.Source = image;
pageViewPanelImage.Width = pageViewPanelImage.Source.Width; pageViewPanelImage.Width = pageViewPanelImage.Source.Width;
@@ -162,9 +162,11 @@ namespace QuickLook.Plugin.PDFViewer
if (!PdfLoaded) if (!PdfLoaded)
return; return;
if (CurrectPage == -1) if (CurrentPage == -1)
return; return;
CurrentPageChanged?.Invoke(this, new EventArgs());
ReRenderCurrentPage(); ReRenderCurrentPage();
} }
@@ -173,7 +175,7 @@ namespace QuickLook.Plugin.PDFViewer
if (!PdfLoaded) if (!PdfLoaded)
return; return;
var size = PdfHandle.GetPageSize(CurrectPage, 1d); var size = PdfHandle.GetPageSize(CurrentPage, 1d);
var factor = Math.Min(pageViewPanel.ActualWidth / size.Width, pageViewPanel.ActualHeight / size.Height); var factor = Math.Min(pageViewPanel.ActualWidth / size.Width, pageViewPanel.ActualHeight / size.Height);
@@ -208,7 +210,7 @@ namespace QuickLook.Plugin.PDFViewer
Enumerable.Range(0, PdfHandle.TotalPages).ForEach(PageIds.Add); Enumerable.Range(0, PdfHandle.TotalPages).ForEach(PageIds.Add);
OnPropertyChanged(nameof(PageIds)); OnPropertyChanged(nameof(PageIds));
CurrectPage = 0; CurrentPage = 0;
// calculate zoom factor for first page // calculate zoom factor for first page
ZoomToFit(); ZoomToFit();

View File

@@ -43,7 +43,7 @@ namespace QuickLook.Plugin.PDFViewer
context.Title = $"{Path.GetFileName(path)} (1 / {_pdfControl.TotalPages})"; context.Title = $"{Path.GetFileName(path)} (1 / {_pdfControl.TotalPages})";
_pdfControl.CurrentPageChanged += (sender2, e2) => context.Title = _pdfControl.CurrentPageChanged += (sender2, e2) => context.Title =
$"{Path.GetFileName(path)} ({_pdfControl.CurrectPage + 1} / {_pdfControl.TotalPages})"; $"{Path.GetFileName(path)} ({_pdfControl.CurrentPage + 1} / {_pdfControl.TotalPages})";
context.IsBusy = false; context.IsBusy = false;
}; };