Still use CTRL+Wheel for PdfViewer

This commit is contained in:
Paddy Xu
2019-10-09 20:54:44 +03:00
parent 1f198f1e5f
commit 6f0e7a6a2b
2 changed files with 21 additions and 2 deletions

View File

@@ -58,6 +58,7 @@ namespace QuickLook.Plugin.ImageViewer
private bool _zoomToFit = true; private bool _zoomToFit = true;
private double _zoomToFitFactor; private double _zoomToFitFactor;
private bool _zoomWithControlKey;
public ImagePanel() public ImagePanel()
{ {
@@ -99,6 +100,16 @@ namespace QuickLook.Plugin.ImageViewer
Theme = ContextObject.Theme; Theme = ContextObject.Theme;
} }
public bool ZoomWithControlKey
{
get => _zoomWithControlKey;
set
{
_zoomWithControlKey = value;
OnPropertyChanged();
}
}
public bool ShowZoomLevelInfo public bool ShowZoomLevelInfo
{ {
get => _showZoomLevelInfo; get => _showZoomLevelInfo;
@@ -372,7 +383,15 @@ namespace QuickLook.Plugin.ImageViewer
{ {
e.Handled = true; e.Handled = true;
// zoom // normal scroll when Control is not pressed, useful for PdfViewer
if (ZoomWithControlKey && (Keyboard.Modifiers & ModifierKeys.Control) == 0)
{
viewPanel.ScrollToVerticalOffset(viewPanel.VerticalOffset - e.Delta);
ImageScrolled?.Invoke(this, e.Delta);
return;
}
// otherwise, perform normal zooming
var newZoom = ZoomFactor + ZoomFactor * e.Delta / 120 * 0.1; var newZoom = ZoomFactor + ZoomFactor * e.Delta / 120 * 0.1;
Zoom(newZoom); Zoom(newZoom);

View File

@@ -75,7 +75,7 @@
</ListBox> </ListBox>
<Grid Grid.Column="1" Background="#33FFFFFF"> <Grid Grid.Column="1" Background="#33FFFFFF">
<imageViewer:ImagePanel x:Name="pagePanel" RenderMode="NearestNeighbor" ShowZoomLevelInfo="False" <imageViewer:ImagePanel x:Name="pagePanel" RenderMode="NearestNeighbor" ShowZoomLevelInfo="False"
BackgroundVisibility="Collapsed" MetaIconVisibility="Collapsed" /> ZoomWithControlKey="True" BackgroundVisibility="Collapsed" MetaIconVisibility="Collapsed" />
</Grid> </Grid>
</Grid> </Grid>
</UserControl> </UserControl>