Browse Source

Updated repeater logging to new API.

Steven Kirk 5 years ago
parent
commit
a81306f72c

+ 1 - 1
src/Avalonia.Controls/Repeater/ItemsRepeater.cs

@@ -307,7 +307,7 @@ namespace Avalonia.Controls
                             virtInfo.AutoRecycleCandidate &&
                             !virtInfo.KeepAlive)
                         {
-                            Logger.TryGet(LogEventLevel.Verbose)?.Log("Repeater", this, "AutoClear - {Index}", virtInfo.Index);
+                            Logger.TryGet(LogEventLevel.Verbose, "Repeater")?.Log(this, "AutoClear - {Index}", virtInfo.Index);
                             ClearElementImpl(element);
                         }
                     }

+ 1 - 1
src/Avalonia.Controls/Repeater/RepeaterLayoutContext.cs

@@ -61,7 +61,7 @@ namespace Avalonia.Controls
 
         protected override void RecycleElementCore(ILayoutable element)
         {
-            Logger.TryGet(LogEventLevel.Verbose)?.Log("Repeater", this, "RepeaterLayout - RecycleElement: {Index}", _owner.GetElementIndex((IControl)element));
+            Logger.TryGet(LogEventLevel.Verbose, "Repeater")?.Log(this, "RepeaterLayout - RecycleElement: {Index}", _owner.GetElementIndex((IControl)element));
             _owner.ClearElementImpl((IControl)element);
         }
 

+ 2 - 2
src/Avalonia.Controls/Repeater/ViewManager.cs

@@ -61,13 +61,13 @@ namespace Avalonia.Controls
             if (suppressAutoRecycle)
             {
                 virtInfo.AutoRecycleCandidate = false;
-                Logger.TryGet(LogEventLevel.Verbose)?.Log("Repeater", this, "GetElement: {Index} Not AutoRecycleCandidate:", virtInfo.Index);
+                Logger.TryGet(LogEventLevel.Verbose, "Repeater")?.Log(this, "GetElement: {Index} Not AutoRecycleCandidate:", virtInfo.Index);
             }
             else
             {
                 virtInfo.AutoRecycleCandidate = true;
                 virtInfo.KeepAlive = true;
-                Logger.TryGet(LogEventLevel.Verbose)?.Log("Repeater", this, "GetElement: {Index} AutoRecycleCandidate:", virtInfo.Index);
+                Logger.TryGet(LogEventLevel.Verbose, "Repeater")?.Log(this, "GetElement: {Index} AutoRecycleCandidate:", virtInfo.Index);
             }
 
             return element;

+ 7 - 7
src/Avalonia.Controls/Repeater/ViewportManager.cs

@@ -190,7 +190,7 @@ namespace Avalonia.Controls
             // We tolerate viewport imprecisions up to 1 pixel to avoid invaliding layout too much.
             if (Math.Abs(_expectedViewportShift.X) > 1 || Math.Abs(_expectedViewportShift.Y) > 1)
             {
-                Logger.TryGet(LogEventLevel.Verbose)?.Log("Repeater", this, "{LayoutId}: Expecting viewport shift of ({Shift})",
+                Logger.TryGet(LogEventLevel.Verbose, "Repeater")?.Log(this, "{LayoutId}: Expecting viewport shift of ({Shift})",
                     _owner.Layout.LayoutId, _expectedViewportShift);
 
                 // There are cases where we might be expecting a shift but not get it. We will
@@ -301,7 +301,7 @@ namespace Avalonia.Controls
             // that can scroll in the direction where the shift is expected.
             if (_pendingViewportShift.X != 0 || _pendingViewportShift.Y != 0)
             {
-                Logger.TryGet(LogEventLevel.Verbose)?.Log("Repeater", this, "{LayoutId}: Layout Updated with pending shift {Shift}- invalidating measure",
+                Logger.TryGet(LogEventLevel.Verbose, "Repeater")?.Log(this, "{LayoutId}: Layout Updated with pending shift {Shift}- invalidating measure",
                     _owner.Layout.LayoutId,
                     _pendingViewportShift);
 
@@ -422,7 +422,7 @@ namespace Avalonia.Controls
 
         private void OnEffectiveViewportChanged(Rect effectiveViewport)
         {
-            Logger.TryGet(LogEventLevel.Verbose)?.Log("Repeater", this, "{LayoutId}: EffectiveViewportChanged event callback", _owner.Layout.LayoutId);
+            Logger.TryGet(LogEventLevel.Verbose, "Repeater")?.Log(this, "{LayoutId}: EffectiveViewportChanged event callback", _owner.Layout.LayoutId);
             UpdateViewport(effectiveViewport);
 
             _pendingViewportShift = default;
@@ -481,7 +481,7 @@ namespace Avalonia.Controls
             var currentVisibleWindow = viewport;
             var previousVisibleWindow = _visibleWindow;
 
-            Logger.TryGet(LogEventLevel.Verbose)?.Log("Repeater", this, "{LayoutId}: Effective Viewport: ({Before})->({After})",
+            Logger.TryGet(LogEventLevel.Verbose, "Repeater")?.Log(this, "{LayoutId}: Effective Viewport: ({Before})->({After})",
                 _owner.Layout.LayoutId,
                 previousVisibleWindow,
                 viewport);
@@ -489,7 +489,7 @@ namespace Avalonia.Controls
             if (-currentVisibleWindow.X <= ItemsRepeater.ClearedElementsArrangePosition.X &&
                 -currentVisibleWindow.Y <= ItemsRepeater.ClearedElementsArrangePosition.Y)
             {
-                Logger.TryGet(LogEventLevel.Verbose)?.Log("Repeater", this, "{LayoutId}: Viewport is invalid. visible window cleared", _owner.Layout.LayoutId);
+                Logger.TryGet(LogEventLevel.Verbose, "Repeater")?.Log(this, "{LayoutId}: Viewport is invalid. visible window cleared", _owner.Layout.LayoutId);
                 // We got cleared.
                 _visibleWindow = default;
             }
@@ -500,7 +500,7 @@ namespace Avalonia.Controls
 
             if (_visibleWindow != previousVisibleWindow)
             {
-                Logger.TryGet(LogEventLevel.Verbose)?.Log("Repeater", this, "{LayoutId}: Used Viewport: ({Before})->({After})",
+                Logger.TryGet(LogEventLevel.Verbose, "Repeater")?.Log(this, "{LayoutId}: Used Viewport: ({Before})->({After})",
                     _owner.Layout.LayoutId,
                     previousVisibleWindow,
                     currentVisibleWindow);
@@ -524,7 +524,7 @@ namespace Avalonia.Controls
                 // We invalidate measure instead of just invalidating arrange because
                 // we don't invalidate measure in UpdateViewport if the view is changing to
                 // avoid layout cycles.
-                Logger.TryGet(LogEventLevel.Verbose)?.Log("Repeater", this, "{LayoutId}: Invalidating measure due to viewport change", _owner.Layout.LayoutId);
+                Logger.TryGet(LogEventLevel.Verbose, "Repeater")?.Log(this, "{LayoutId}: Invalidating measure due to viewport change", _owner.Layout.LayoutId);
                 _owner.InvalidateMeasure();
             }
         }

+ 2 - 2
src/Avalonia.Layout/ElementManager.cs

@@ -79,7 +79,7 @@ namespace Avalonia.Layout
                 {
                     // Sentinel. Create the element now since we need it.
                     int dataIndex = GetDataIndexFromRealizedRangeIndex(realizedIndex);
-                    Logger.TryGet(LogEventLevel.Verbose)?.Log("Repeater", this, "Creating element for sentinal with data index {Index}", dataIndex);
+                    Logger.TryGet(LogEventLevel.Verbose, "Repeater")?.Log(this, "Creating element for sentinal with data index {Index}", dataIndex);
                     element = _context.GetOrCreateElementAt(
                         dataIndex,
                         ElementRealizationOptions.ForceCreate | ElementRealizationOptions.SuppressAutoRecycle);
@@ -235,7 +235,7 @@ namespace Avalonia.Layout
                     Insert(0, dataIndex, element);
                 }
 
-                Logger.TryGet(LogEventLevel.Verbose)?.Log("Repeater", this, "{LayoutId}: Created element for index {index}", layoutId, dataIndex);
+                Logger.TryGet(LogEventLevel.Verbose, "Repeater")?.Log(this, "{LayoutId}: Created element for index {index}", layoutId, dataIndex);
             }
         }
 

+ 16 - 16
src/Avalonia.Layout/FlowLayoutAlgorithm.cs

@@ -83,7 +83,7 @@ namespace Avalonia.Layout
             // If minor size is infinity, there is only one line and no need to align that line.
             _scrollOrientationSameAsFlow = double.IsInfinity(_orientation.Minor(availableSize));
             var realizationRect = RealizationRect;
-            Logger.TryGet(LogEventLevel.Verbose)?.Log("Repeater", this, "{LayoutId}: MeasureLayout Realization({Rect})",
+            Logger.TryGet(LogEventLevel.Verbose, "Repeater")?.Log(this, "{LayoutId}: MeasureLayout Realization({Rect})",
                 layoutId,
                 realizationRect);
 
@@ -104,7 +104,7 @@ namespace Avalonia.Layout
             Generate(GenerateDirection.Backward, anchorIndex, availableSize, minItemSpacing, lineSpacing, maxItemsPerLine, disableVirtualization, layoutId);
             if (isWrapping && IsReflowRequired())
             {
-                Logger.TryGet(LogEventLevel.Verbose)?.Log("Repeater", this, "{LayoutId}: Reflow Pass", layoutId);
+                Logger.TryGet(LogEventLevel.Verbose, "Repeater")?.Log(this, "{LayoutId}: Reflow Pass", layoutId);
                 var firstElementBounds = _elementManager.GetLayoutBoundsForRealizedIndex(0);
                 _orientation.SetMinorStart(ref firstElementBounds, 0);
                 _elementManager.SetLayoutBoundsForRealizedIndex(0, firstElementBounds);
@@ -126,7 +126,7 @@ namespace Avalonia.Layout
             LineAlignment lineAlignment,
             string layoutId)
         {
-            Logger.TryGet(LogEventLevel.Verbose)?.Log("Repeater", this, "{LayoutId}: ArrangeLayout", layoutId);
+            Logger.TryGet(LogEventLevel.Verbose, "Repeater")?.Log(this, "{LayoutId}: ArrangeLayout", layoutId);
             ArrangeVirtualizingLayout(finalSize, lineAlignment, isWrapping, layoutId);
 
             return new Size(
@@ -190,7 +190,7 @@ namespace Avalonia.Layout
 
                 if (isAnchorSuggestionValid)
                 {
-                    Logger.TryGet(LogEventLevel.Verbose)?.Log("Repeater", this, "{LayoutId}: Using suggested anchor {Anchor}", layoutId, suggestedAnchorIndex);
+                    Logger.TryGet(LogEventLevel.Verbose, "Repeater")?.Log(this, "{LayoutId}: Using suggested anchor {Anchor}", layoutId, suggestedAnchorIndex);
                     anchorIndex = _algorithmCallbacks.Algorithm_GetAnchorForTargetElement(
                         suggestedAnchorIndex,
                         availableSize,
@@ -230,8 +230,8 @@ namespace Avalonia.Layout
                 }
                 else if (needAnchorColumnRevaluation || !isRealizationWindowConnected)
                 {
-                    if (needAnchorColumnRevaluation) { Logger.TryGet(LogEventLevel.Verbose)?.Log("Repeater", this, "{LayoutId}: NeedAnchorColumnReevaluation", layoutId); }
-                    if (!isRealizationWindowConnected) { Logger.TryGet(LogEventLevel.Verbose)?.Log("Repeater", this, "{LayoutId}: Disconnected Window", layoutId); }
+                    if (needAnchorColumnRevaluation) { Logger.TryGet(LogEventLevel.Verbose, "Repeater")?.Log(this, "{LayoutId}: NeedAnchorColumnReevaluation", layoutId); }
+                    if (!isRealizationWindowConnected) { Logger.TryGet(LogEventLevel.Verbose, "Repeater")?.Log(this, "{LayoutId}: Disconnected Window", layoutId); }
 
                     // The anchor is based on the realization window because a connected ItemsRepeater might intersect the realization window
                     // but not the visible window. In that situation, we still need to produce a valid anchor.
@@ -241,7 +241,7 @@ namespace Avalonia.Layout
                 }
                 else
                 {
-                    Logger.TryGet(LogEventLevel.Verbose)?.Log("Repeater", this, "{LayoutId}: Connected Window - picking first realized element as anchor", layoutId);
+                    Logger.TryGet(LogEventLevel.Verbose, "Repeater")?.Log(this, "{LayoutId}: Connected Window - picking first realized element as anchor", layoutId);
                     // No suggestion - just pick first in realized range
                     anchorIndex = _elementManager.GetDataIndexFromRealizedRangeIndex(0);
                     var firstElementBounds = _elementManager.GetLayoutBoundsForRealizedIndex(0);
@@ -249,14 +249,14 @@ namespace Avalonia.Layout
                 }
             }
 
-            Logger.TryGet(LogEventLevel.Verbose)?.Log("Repeater", this, "{LayoutId}: Picked anchor: {Anchor}", layoutId, anchorIndex);
+            Logger.TryGet(LogEventLevel.Verbose, "Repeater")?.Log(this, "{LayoutId}: Picked anchor: {Anchor}", layoutId, anchorIndex);
             _firstRealizedDataIndexInsideRealizationWindow = _lastRealizedDataIndexInsideRealizationWindow = anchorIndex;
             if (_elementManager.IsIndexValidInData(anchorIndex))
             {
                 if (!_elementManager.IsDataIndexRealized(anchorIndex))
                 {
                     // Disconnected, throw everything and create new anchor
-                    Logger.TryGet(LogEventLevel.Verbose)?.Log("Repeater", this, "{LayoutId} Disconnected Window - throwing away all realized elements", layoutId);
+                    Logger.TryGet(LogEventLevel.Verbose, "Repeater")?.Log(this, "{LayoutId} Disconnected Window - throwing away all realized elements", layoutId);
                     _elementManager.ClearRealizedRange();
 
                     var anchor = _context.GetOrCreateElementAt(anchorIndex, ElementRealizationOptions.ForceCreate | ElementRealizationOptions.SuppressAutoRecycle);
@@ -268,7 +268,7 @@ namespace Avalonia.Layout
                 var layoutBounds = new Rect(anchorPosition.X, anchorPosition.Y, desiredSize.Width, desiredSize.Height);
                 _elementManager.SetLayoutBoundsForDataIndex(anchorIndex, layoutBounds);
 
-                Logger.TryGet(LogEventLevel.Verbose)?.Log("Repeater", this, "{LayoutId}: Layout bounds of anchor {anchor} are ({Bounds})",
+                Logger.TryGet(LogEventLevel.Verbose, "Repeater")?.Log(this, "{LayoutId}: Layout bounds of anchor {anchor} are ({Bounds})",
                     layoutId,
                     anchorIndex,
                     layoutBounds);
@@ -276,7 +276,7 @@ namespace Avalonia.Layout
             else
             {
                 // Throw everything away
-                Logger.TryGet(LogEventLevel.Verbose)?.Log("Repeater", this, "{LayoutId} Anchor index is not valid - throwing away all realized elements",
+                Logger.TryGet(LogEventLevel.Verbose, "Repeater")?.Log(this, "{LayoutId} Anchor index is not valid - throwing away all realized elements",
                     layoutId);
                 _elementManager.ClearRealizedRange();
             }
@@ -302,7 +302,7 @@ namespace Avalonia.Layout
             {
                 int step = (direction == GenerateDirection.Forward) ? 1 : -1;
 
-                Logger.TryGet(LogEventLevel.Verbose)?.Log("Repeater", this, "{LayoutId}: Generating {Direction} from anchor {Anchor}",
+                Logger.TryGet(LogEventLevel.Verbose, "Repeater")?.Log(this, "{LayoutId}: Generating {Direction} from anchor {Anchor}",
                     layoutId,
                     direction,
                     anchorIndex);
@@ -392,7 +392,7 @@ namespace Avalonia.Layout
                                         _orientation.SetMajorStart(ref bounds, previousLineOffset - lineMajorSize - lineSpacing);
                                         _orientation.SetMajorSize(ref bounds, lineMajorSize);
                                         _elementManager.SetLayoutBoundsForDataIndex(dataIndex, bounds);
-                                        Logger.TryGet(LogEventLevel.Verbose)?.Log("Repeater", this, "{LayoutId}: Corrected Layout bounds of element {Index} are ({Bounds})",
+                                        Logger.TryGet(LogEventLevel.Verbose, "Repeater")?.Log(this, "{LayoutId}: Corrected Layout bounds of element {Index} are ({Bounds})",
                                             layoutId,
                                             dataIndex,
                                             bounds);
@@ -419,7 +419,7 @@ namespace Avalonia.Layout
 
                     _elementManager.SetLayoutBoundsForDataIndex(currentIndex, currentBounds);
 
-                    Logger.TryGet(LogEventLevel.Verbose)?.Log("Repeater", this, "{LayoutId}: Layout bounds of element {Index} are ({Bounds}).",
+                    Logger.TryGet(LogEventLevel.Verbose, "Repeater")?.Log(this, "{LayoutId}: Layout bounds of element {Index} are ({Bounds}).",
                         layoutId,
                         currentIndex,
                         currentBounds);
@@ -541,7 +541,7 @@ namespace Avalonia.Layout
                 lastDataIndex,
                 lastBounds);
 
-            Logger.TryGet(LogEventLevel.Verbose)?.Log("Repeater", this, "{LayoutId} Extent: ({Bounds})", layoutId, extent);
+            Logger.TryGet(LogEventLevel.Verbose, "Repeater")?.Log(this, "{LayoutId} Extent: ({Bounds})", layoutId, extent);
             return extent;
         }
 
@@ -711,7 +711,7 @@ namespace Avalonia.Layout
 
                 var element = _elementManager.GetAt(rangeIndex);
 
-                Logger.TryGet(LogEventLevel.Verbose)?.Log("Repeater", this, "{LayoutId}: Arranging element {Index} at ({Bounds})",
+                Logger.TryGet(LogEventLevel.Verbose, "Repeater")?.Log(this, "{LayoutId}: Arranging element {Index} at ({Bounds})",
                     layoutId,
                     _elementManager.GetDataIndexFromRealizedRangeIndex(rangeIndex),
                     bounds);

+ 2 - 2
src/Avalonia.Layout/StackLayout.cs

@@ -110,12 +110,12 @@ namespace Avalonia.Layout
                 }
                 else
                 {
-                    Logger.TryGet(LogEventLevel.Verbose)?.Log("Repeater", this, "{LayoutId}: Estimating extent with no realized elements",
+                    Logger.TryGet(LogEventLevel.Verbose, "Repeater")?.Log(this, "{LayoutId}: Estimating extent with no realized elements",
                         LayoutId);
                 }
             }
 
-            Logger.TryGet(LogEventLevel.Verbose)?.Log("Repeater", this, "{LayoutId}: Extent is ({Size}). Based on average {Average}",
+            Logger.TryGet(LogEventLevel.Verbose, "Repeater")?.Log(this, "{LayoutId}: Extent is ({Size}). Based on average {Average}",
                 LayoutId, extent.Size, averageElementSize);
             return extent;
         }

+ 2 - 2
src/Avalonia.Layout/UniformGridLayout.cs

@@ -382,11 +382,11 @@ namespace Avalonia.Layout
                 }
                 else
                 {
-                    Logger.TryGet(LogEventLevel.Verbose)?.Log("Repeater", this, "{LayoutId}: Estimating extent with no realized elements", LayoutId);
+                    Logger.TryGet(LogEventLevel.Verbose, "Repeater")?.Log(this, "{LayoutId}: Estimating extent with no realized elements", LayoutId);
                 }
             }
 
-            Logger.TryGet(LogEventLevel.Verbose)?.Log("Repeater", this, "{LayoutId}: Extent is ({Size}). Based on lineSize {LineSize} and items per line {ItemsPerLine}",
+            Logger.TryGet(LogEventLevel.Verbose, "Repeater")?.Log(this, "{LayoutId}: Extent is ({Size}). Based on lineSize {LineSize} and items per line {ItemsPerLine}",
                 LayoutId, extent.Size, lineSize, itemsPerLine);
             return extent;
         }