mirror of
https://fastgit.cc/github.com/sourcegit-scm/sourcegit
synced 2026-04-24 10:50:52 +08:00
fix<Diff, Blame>: check scroller before use it
This commit is contained in:
@@ -171,7 +171,7 @@ namespace SourceGit.UI {
|
||||
var minWidth = total - offset;
|
||||
|
||||
var scroller = GetVisualChild<ScrollViewer>(blame);
|
||||
if (scroller.ComputedVerticalScrollBarVisibility == Visibility.Visible) minWidth -= 8;
|
||||
if (scroller != null && scroller.ComputedVerticalScrollBarVisibility == Visibility.Visible) minWidth -= 8;
|
||||
|
||||
blame.Columns[1].MinWidth = minWidth;
|
||||
blame.Columns[1].Width = DataGridLength.SizeToCells;
|
||||
|
||||
@@ -466,12 +466,16 @@ namespace SourceGit.UI {
|
||||
if (e.VerticalChange != 0) {
|
||||
foreach (var editor in editors) {
|
||||
var scroller = GetVisualChild<ScrollViewer>(editor);
|
||||
if (scroller.VerticalOffset != e.VerticalOffset) scroller.ScrollToVerticalOffset(e.VerticalOffset);
|
||||
if (scroller != null && scroller.VerticalOffset != e.VerticalOffset) {
|
||||
scroller.ScrollToVerticalOffset(e.VerticalOffset);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
foreach (var editor in editors) {
|
||||
var scroller = GetVisualChild<ScrollViewer>(editor);
|
||||
if (scroller.HorizontalOffset != e.HorizontalOffset) scroller.ScrollToHorizontalOffset(e.HorizontalOffset);
|
||||
if (scroller != null && scroller.HorizontalOffset != e.HorizontalOffset) {
|
||||
scroller.ScrollToHorizontalOffset(e.HorizontalOffset);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -486,6 +490,8 @@ namespace SourceGit.UI {
|
||||
|
||||
var grid = editors[0];
|
||||
var scroller = GetVisualChild<ScrollViewer>(grid);
|
||||
if (scroller == null) return;
|
||||
|
||||
var firstVisible = (int)scroller.VerticalOffset;
|
||||
var firstModeEnded = false;
|
||||
var first = grid.Items[firstVisible] as ChangeBlock;
|
||||
@@ -512,6 +518,8 @@ namespace SourceGit.UI {
|
||||
|
||||
var grid = editors[0];
|
||||
var scroller = GetVisualChild<ScrollViewer>(grid);
|
||||
if (scroller == null) return;
|
||||
|
||||
var firstVisible = (int)scroller.VerticalOffset;
|
||||
var firstModeEnded = false;
|
||||
var first = grid.Items[firstVisible] as ChangeBlock;
|
||||
|
||||
Reference in New Issue
Block a user