mirror of
https://github.com/immich-app/immich.git
synced 2025-12-19 09:13:14 +03:00
refactor: replace copyWith method with withButtonPosition for ActionButtonContext
This commit is contained in:
@@ -63,35 +63,21 @@ class ActionButtonContext {
|
||||
this.buttonPosition = ButtonPosition.other,
|
||||
});
|
||||
|
||||
ActionButtonContext copyWith({
|
||||
BaseAsset? asset,
|
||||
bool? isOwner,
|
||||
bool? isArchived,
|
||||
bool? isTrashEnabled,
|
||||
bool? isStacked,
|
||||
bool? isInLockedView,
|
||||
RemoteAlbum? currentAlbum,
|
||||
bool? advancedTroubleshooting,
|
||||
ActionSource? source,
|
||||
bool? isCasting,
|
||||
TimelineOrigin? timelineOrigin,
|
||||
ThemeData? originalTheme,
|
||||
ButtonPosition? buttonPosition,
|
||||
}) {
|
||||
ActionButtonContext withButtonPosition(ButtonPosition position) {
|
||||
return ActionButtonContext(
|
||||
asset: asset ?? this.asset,
|
||||
isOwner: isOwner ?? this.isOwner,
|
||||
isArchived: isArchived ?? this.isArchived,
|
||||
isTrashEnabled: isTrashEnabled ?? this.isTrashEnabled,
|
||||
isStacked: isStacked ?? this.isStacked,
|
||||
isInLockedView: isInLockedView ?? this.isInLockedView,
|
||||
currentAlbum: currentAlbum ?? this.currentAlbum,
|
||||
advancedTroubleshooting: advancedTroubleshooting ?? this.advancedTroubleshooting,
|
||||
source: source ?? this.source,
|
||||
isCasting: isCasting ?? this.isCasting,
|
||||
timelineOrigin: timelineOrigin ?? this.timelineOrigin,
|
||||
originalTheme: originalTheme ?? this.originalTheme,
|
||||
buttonPosition: buttonPosition ?? this.buttonPosition,
|
||||
asset: asset,
|
||||
isOwner: isOwner,
|
||||
isArchived: isArchived,
|
||||
isTrashEnabled: isTrashEnabled,
|
||||
isStacked: isStacked,
|
||||
isInLockedView: isInLockedView,
|
||||
currentAlbum: currentAlbum,
|
||||
advancedTroubleshooting: advancedTroubleshooting,
|
||||
source: source,
|
||||
isCasting: isCasting,
|
||||
timelineOrigin: timelineOrigin,
|
||||
originalTheme: originalTheme,
|
||||
buttonPosition: position,
|
||||
);
|
||||
}
|
||||
}
|
||||
@@ -358,7 +344,7 @@ class ActionButtonBuilder {
|
||||
}
|
||||
|
||||
static List<ActionButtonType> getViewerBottomBarTypes(ActionButtonContext context) {
|
||||
final bottomBarContext = context.copyWith(buttonPosition: ButtonPosition.bottomBar);
|
||||
final bottomBarContext = context.withButtonPosition(ButtonPosition.bottomBar);
|
||||
return _defaultViewerBottomBarOrder.where((type) => type.shouldShow(bottomBarContext)).take(4).toList();
|
||||
}
|
||||
|
||||
|
||||
@@ -1019,7 +1019,7 @@ void main() {
|
||||
|
||||
final bottomBarTypes = ActionButtonBuilder.getViewerBottomBarTypes(context);
|
||||
final kebabTypes = ActionButtonBuilder.getViewerKebabMenuTypes(
|
||||
context.copyWith(buttonPosition: ButtonPosition.kebabMenu),
|
||||
context.withButtonPosition(ButtonPosition.kebabMenu),
|
||||
);
|
||||
|
||||
expect(const ListEquality().equals(bottomBarTypes, expectedTypes), isTrue);
|
||||
@@ -1049,7 +1049,7 @@ void main() {
|
||||
|
||||
final bottomBarTypes = ActionButtonBuilder.getViewerBottomBarTypes(context);
|
||||
final kebabTypes = ActionButtonBuilder.getViewerKebabMenuTypes(
|
||||
context.copyWith(buttonPosition: ButtonPosition.kebabMenu),
|
||||
context.withButtonPosition(ButtonPosition.kebabMenu),
|
||||
);
|
||||
|
||||
expect(const ListEquality().equals(bottomBarTypes, expectedTypes), isTrue);
|
||||
@@ -1080,7 +1080,7 @@ void main() {
|
||||
|
||||
final bottomBarTypes = ActionButtonBuilder.getViewerBottomBarTypes(context);
|
||||
final kebabTypes = ActionButtonBuilder.getViewerKebabMenuTypes(
|
||||
context.copyWith(buttonPosition: ButtonPosition.kebabMenu),
|
||||
context.withButtonPosition(ButtonPosition.kebabMenu),
|
||||
);
|
||||
|
||||
expect(const ListEquality().equals(bottomBarTypes, expectedTypes), isTrue);
|
||||
|
||||
Reference in New Issue
Block a user