mirror of
https://codeberg.org/shroff/phylum.git
synced 2026-05-04 19:30:24 -05:00
[client] Add builder for resource item
This commit is contained in:
@@ -86,12 +86,20 @@ class _FolderListViewState extends State<FolderListView> {
|
||||
index: index,
|
||||
resource: resource,
|
||||
dropTargetActive: dropTargetActive,
|
||||
buildItem: (resource, dropTargetActive) => ResourceDetailsRow(
|
||||
resource: resource,
|
||||
dropTargetActive: dropTargetActive,
|
||||
),
|
||||
),
|
||||
)
|
||||
: ResourceItemGestureHandler(
|
||||
index: index,
|
||||
resource: resource,
|
||||
dropTargetActive: false,
|
||||
buildItem: (resource, dropTargetActive) => ResourceDetailsRow(
|
||||
resource: resource,
|
||||
dropTargetActive: dropTargetActive,
|
||||
),
|
||||
);
|
||||
});
|
||||
}),
|
||||
|
||||
@@ -7,7 +7,6 @@ import 'package:phylum/libphylum/local_upload_errors.dart';
|
||||
import 'package:phylum/libphylum/phylum_account.dart';
|
||||
import 'package:phylum/ui/explorer/explorer_controller.dart';
|
||||
import 'package:phylum/ui/explorer/paste_helpers.dart';
|
||||
import 'package:phylum/ui/explorer/resource_details_row.dart';
|
||||
import 'package:phylum/ui/explorer/resource_icon_extension.dart';
|
||||
import 'package:phylum/ui/explorer/selection_mode.dart';
|
||||
import 'package:phylum/util/upload_utils.dart';
|
||||
@@ -133,8 +132,15 @@ class ResourceDraggable extends StatelessWidget {
|
||||
final int index;
|
||||
final Resource resource;
|
||||
final bool dropTargetActive;
|
||||
final Widget Function(Resource, bool) buildItem;
|
||||
|
||||
const ResourceDraggable({super.key, required this.resource, required this.index, required this.dropTargetActive});
|
||||
const ResourceDraggable({
|
||||
super.key,
|
||||
required this.resource,
|
||||
required this.index,
|
||||
required this.dropTargetActive,
|
||||
required this.buildItem,
|
||||
});
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
@@ -168,10 +174,7 @@ class ResourceDraggable extends StatelessWidget {
|
||||
context.read<ExplorerController>().setDragging(false);
|
||||
},
|
||||
feedback: _feedback(context),
|
||||
child: ResourceDetailsRow(
|
||||
resource: resource,
|
||||
dropTargetActive: dropTargetActive,
|
||||
)),
|
||||
child: buildItem(resource, dropTargetActive)),
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
@@ -16,9 +16,15 @@ class ResourceItemGestureHandler extends StatefulWidget {
|
||||
final int index;
|
||||
final Resource resource;
|
||||
final bool dropTargetActive;
|
||||
final Widget Function(Resource, bool) buildItem;
|
||||
|
||||
const ResourceItemGestureHandler(
|
||||
{super.key, required this.index, required this.resource, required this.dropTargetActive});
|
||||
const ResourceItemGestureHandler({
|
||||
super.key,
|
||||
required this.index,
|
||||
required this.resource,
|
||||
required this.dropTargetActive,
|
||||
required this.buildItem,
|
||||
});
|
||||
|
||||
@override
|
||||
State<ResourceItemGestureHandler> createState() => _ResourceItemGestureHandlerState();
|
||||
@@ -122,6 +128,7 @@ class _ResourceItemGestureHandlerState extends State<ResourceItemGestureHandler>
|
||||
resource: widget.resource,
|
||||
index: widget.index,
|
||||
dropTargetActive: dropTargetActive,
|
||||
buildItem: widget.buildItem,
|
||||
),
|
||||
),
|
||||
);
|
||||
|
||||
Reference in New Issue
Block a user