Skip to content

Commit

Permalink
fixed refreshview background color
Browse files Browse the repository at this point in the history
  • Loading branch information
Alex-Dobrynin committed Oct 14, 2024
1 parent 0daf45b commit 57bd592
Show file tree
Hide file tree
Showing 4 changed files with 40 additions and 38 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -5,33 +5,33 @@

namespace MPowerKit.VirtualizeListView;

public class FixedRefreshViewRenderer : ViewHandler<FixedRefreshView, FixedRefreshViewRenderer.RefreshLayout>
public class FixedRefreshViewHandler : ViewHandler<FixedRefreshView, FixedRefreshViewHandler.RefreshLayout>
{
public static IPropertyMapper<FixedRefreshView, FixedRefreshViewRenderer> RefreshViewRendererMapper = new PropertyMapper<FixedRefreshView, FixedRefreshViewRenderer>(ViewMapper)
public static IPropertyMapper<FixedRefreshView, FixedRefreshViewHandler> FixedRefreshViewHandlerMapper = new PropertyMapper<FixedRefreshView, FixedRefreshViewHandler>(ViewMapper)
{
[FixedRefreshView.IsRefreshingProperty.PropertyName] = MapIsRefreshing,
[FixedRefreshView.ContentProperty.PropertyName] = MapContent,
[FixedRefreshView.RefreshColorProperty.PropertyName] = MapRefreshColor,
[FixedRefreshView.BackgroundProperty.PropertyName] = MapBackground,
[FixedRefreshView.IsEnabledProperty.PropertyName] = (r, v) => { },
[FixedRefreshView.IsEnabledProperty.PropertyName] = (h, v) => { },
};

public static CommandMapper<FixedRefreshView, FixedRefreshViewRenderer> RefreshViewRendererCommandMapper = new(ViewCommandMapper)
public static CommandMapper<FixedRefreshView, FixedRefreshViewHandler> FixedRefreshViewHandlerCommandMapper = new(ViewCommandMapper)
{
};

public FixedRefreshViewRenderer() : base(RefreshViewRendererMapper, RefreshViewRendererCommandMapper)
public FixedRefreshViewHandler() : base(FixedRefreshViewHandlerMapper, FixedRefreshViewHandlerCommandMapper)
{

}

public FixedRefreshViewRenderer(IPropertyMapper? mapper)
: base(mapper ?? RefreshViewRendererMapper, RefreshViewRendererCommandMapper)
public FixedRefreshViewHandler(IPropertyMapper? mapper)
: base(mapper ?? FixedRefreshViewHandlerMapper, FixedRefreshViewHandlerCommandMapper)
{
}

public FixedRefreshViewRenderer(IPropertyMapper? mapper, CommandMapper? commandMapper)
: base(mapper ?? RefreshViewRendererMapper, commandMapper ?? RefreshViewRendererCommandMapper)
public FixedRefreshViewHandler(IPropertyMapper? mapper, CommandMapper? commandMapper)
: base(mapper ?? FixedRefreshViewHandlerMapper, commandMapper ?? FixedRefreshViewHandlerCommandMapper)
{
}

Expand Down Expand Up @@ -64,20 +64,20 @@ protected virtual void OnSwipeRefresh(object? sender, EventArgs e)
else PlatformView.Refreshing = false;
}

static void UpdateContent(FixedRefreshViewRenderer handler)
static void UpdateContent(FixedRefreshViewHandler handler)
{
handler.PlatformView.UpdateContent(handler.VirtualView.Content, handler.MauiContext);
}

static void UpdateRefreshColor(FixedRefreshViewRenderer handler)
static void UpdateRefreshColor(FixedRefreshViewHandler handler)
{
var color = handler.VirtualView.RefreshColor?.ToInt();
if (color is null) return;

handler.PlatformView.SetColorSchemeColors(color.Value);
}

static void UpdateIsRefreshing(FixedRefreshViewRenderer handler)
static void UpdateIsRefreshing(FixedRefreshViewHandler handler)
{
var virtualView = handler.VirtualView;
var platformView = handler.PlatformView;
Expand All @@ -89,39 +89,39 @@ static void UpdateIsRefreshing(FixedRefreshViewRenderer handler)
platformView.Refreshing = refreshing;
}

static void UpdateBackground(FixedRefreshViewRenderer handler)
static void UpdateBackground(FixedRefreshViewHandler handler)
{
var color = (handler.VirtualView as IView)?.Background?.ToColor()?.ToInt();
if (color is null) return;

handler.PlatformView.SetProgressBackgroundColorSchemeColor(color.Value);
}

public static void MapBackground(FixedRefreshViewRenderer handler, FixedRefreshView refreshView)
public static void MapBackground(FixedRefreshViewHandler handler, FixedRefreshView refreshView)
{
UpdateBackground(handler);
}

public static void MapIsRefreshing(FixedRefreshViewRenderer handler, FixedRefreshView refreshView)
public static void MapIsRefreshing(FixedRefreshViewHandler handler, FixedRefreshView refreshView)
{
UpdateIsRefreshing(handler);
}

public static void MapContent(FixedRefreshViewRenderer handler, FixedRefreshView refreshView)
public static void MapContent(FixedRefreshViewHandler handler, FixedRefreshView refreshView)
{
UpdateContent(handler);
}

public static void MapRefreshColor(FixedRefreshViewRenderer handler, FixedRefreshView refreshView)
public static void MapRefreshColor(FixedRefreshViewHandler handler, FixedRefreshView refreshView)
{
UpdateRefreshColor(handler);
}

public class RefreshLayout : MauiSwipeRefreshLayout
{
private readonly FixedRefreshViewRenderer _renderer;
private readonly FixedRefreshViewHandler _renderer;

public RefreshLayout(Context context, FixedRefreshViewRenderer renderer) : base(context)
public RefreshLayout(Context context, FixedRefreshViewHandler renderer) : base(context)
{
_renderer = renderer;
}
Expand Down
2 changes: 1 addition & 1 deletion MPowerKit.VirtualizeListView/BuilderExtensions.cs
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ public static MauiAppBuilder UseMPowerKitListView(this MauiAppBuilder builder)
#endif
#if ANDROID || MACIOS
handlers.AddHandler<FixedRefreshView, FixedRefreshViewRenderer>();
handlers.AddHandler<FixedRefreshView, FixedRefreshViewHandler>();
#endif
});

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,34 +9,34 @@

namespace MPowerKit.VirtualizeListView;

public class FixedRefreshViewRenderer : ViewHandler<FixedRefreshView, FixedRefreshViewRenderer.RefreshViewWrapper>
public class FixedRefreshViewHandler : ViewHandler<FixedRefreshView, FixedRefreshViewHandler.RefreshViewWrapper>
{
public static IPropertyMapper<FixedRefreshView, FixedRefreshViewRenderer> RefreshViewRendererMapper = new PropertyMapper<FixedRefreshView, FixedRefreshViewRenderer>(ViewMapper)
public static IPropertyMapper<FixedRefreshView, FixedRefreshViewHandler> FixedRefreshViewHandlerMapper = new PropertyMapper<FixedRefreshView, FixedRefreshViewHandler>(ViewMapper)
{
[FixedRefreshView.IsRefreshingProperty.PropertyName] = MapIsRefreshing,
[FixedRefreshView.ContentProperty.PropertyName] = MapContent,
[FixedRefreshView.RefreshColorProperty.PropertyName] = MapRefreshColor,
[FixedRefreshView.BackgroundProperty.PropertyName] = MapBackground,
[FixedRefreshView.BackgroundProperty.PropertyName] = (h, v) => { },
[FixedRefreshView.IsPullToRefreshEnabledProperty.PropertyName] = MapIsPullToRefreshEnabled,
[FixedRefreshView.IsEnabledProperty.PropertyName] = (r, v) => { },
[FixedRefreshView.IsEnabledProperty.PropertyName] = (h, v) => { },
};

public static CommandMapper<FixedRefreshView, FixedRefreshViewRenderer> RefreshViewRendererCommandMapper = new(ViewCommandMapper)
public static CommandMapper<FixedRefreshView, FixedRefreshViewHandler> FixedRefreshViewHandlerCommandMapper = new(ViewCommandMapper)
{
};

public FixedRefreshViewRenderer() : base(RefreshViewRendererMapper, RefreshViewRendererCommandMapper)
public FixedRefreshViewHandler() : base(FixedRefreshViewHandlerMapper, FixedRefreshViewHandlerCommandMapper)
{

}

public FixedRefreshViewRenderer(IPropertyMapper? mapper)
: base(mapper ?? RefreshViewRendererMapper, RefreshViewRendererCommandMapper)
public FixedRefreshViewHandler(IPropertyMapper? mapper)
: base(mapper ?? FixedRefreshViewHandlerMapper, FixedRefreshViewHandlerCommandMapper)
{
}

public FixedRefreshViewRenderer(IPropertyMapper? mapper, CommandMapper? commandMapper)
: base(mapper ?? RefreshViewRendererMapper, commandMapper ?? RefreshViewRendererCommandMapper)
public FixedRefreshViewHandler(IPropertyMapper? mapper, CommandMapper? commandMapper)
: base(mapper ?? FixedRefreshViewHandlerMapper, commandMapper ?? FixedRefreshViewHandlerCommandMapper)
{
}

Expand Down Expand Up @@ -75,32 +75,32 @@ protected virtual void OnRefresh(object? sender, EventArgs e)
else PlatformView.IsRefreshing = false;
}

public static void MapBackground(FixedRefreshViewRenderer handler, FixedRefreshView view)
public static void MapBackground(FixedRefreshViewHandler handler, FixedRefreshView view)
{
handler.PlatformView.RefreshControl.UpdateBackground(view);
}

public static void MapIsRefreshing(FixedRefreshViewRenderer handler, FixedRefreshView refreshView)
public static void MapIsRefreshing(FixedRefreshViewHandler handler, FixedRefreshView refreshView)
{
UpdateIsRefreshing(handler);
}

public static void MapContent(FixedRefreshViewRenderer handler, FixedRefreshView refreshView)
public static void MapContent(FixedRefreshViewHandler handler, FixedRefreshView refreshView)
{
UpdateContent(handler);
}

public static void MapRefreshColor(FixedRefreshViewRenderer handler, FixedRefreshView refreshView)
public static void MapRefreshColor(FixedRefreshViewHandler handler, FixedRefreshView refreshView)
{
UpdateRefreshColor(handler);
}

public static void MapIsPullToRefreshEnabled(FixedRefreshViewRenderer handler, FixedRefreshView refreshView)
public static void MapIsPullToRefreshEnabled(FixedRefreshViewHandler handler, FixedRefreshView refreshView)
{
handler.PlatformView?.UpdateIsEnabled(refreshView.IsPullToRefreshEnabled);
}

static void UpdateIsRefreshing(FixedRefreshViewRenderer handler)
static void UpdateIsRefreshing(FixedRefreshViewHandler handler)
{
var virtualView = handler.VirtualView;
var platformView = handler.PlatformView;
Expand All @@ -112,12 +112,12 @@ static void UpdateIsRefreshing(FixedRefreshViewRenderer handler)
platformView.IsRefreshingAnimated = refreshing;
}

static void UpdateContent(FixedRefreshViewRenderer handler)
static void UpdateContent(FixedRefreshViewHandler handler)
{
handler.PlatformView.UpdateContent(handler.VirtualView.Content, handler.MauiContext);
}

static void UpdateRefreshColor(FixedRefreshViewRenderer handler)
static void UpdateRefreshColor(FixedRefreshViewHandler handler)
{
var color = handler.VirtualView?.RefreshColor?.ToPlatform();

Expand Down
2 changes: 2 additions & 0 deletions MPowerKit.VirtualizeListView/VirtualizeListView.cs
Original file line number Diff line number Diff line change
Expand Up @@ -320,6 +320,7 @@ public virtual bool IsOrientation(ScrollOrientation orientation)
|| (Orientation == ScrollOrientation.Neither && PrevScrollOrientation == orientation);
}

#if MACIOS
protected override Size MeasureOverride(double widthConstraint, double heightConstraint)
{
var size = base.MeasureOverride(widthConstraint, heightConstraint);
Expand All @@ -345,6 +346,7 @@ protected override Size MeasureOverride(double widthConstraint, double heightCon

return new Size(Math.Min(desiredWidth, widthConstraint), Math.Min(desiredHeight, heightConstraint));
}
#endif

#region Adapter
public DataAdapter Adapter
Expand Down

0 comments on commit 57bd592

Please sign in to comment.