From bd68969daced696648c647b009340956ee721f76 Mon Sep 17 00:00:00 2001 From: csf Date: Thu, 20 Oct 2022 11:20:41 +0900 Subject: [PATCH] file transfer BreadCrumb handle mouse wheel --- .../lib/desktop/pages/file_manager_page.dart | 25 +++++++++++++------ 1 file changed, 18 insertions(+), 7 deletions(-) diff --git a/flutter/lib/desktop/pages/file_manager_page.dart b/flutter/lib/desktop/pages/file_manager_page.dart index 622a86fb7..e31a0e1d9 100644 --- a/flutter/lib/desktop/pages/file_manager_page.dart +++ b/flutter/lib/desktop/pages/file_manager_page.dart @@ -3,6 +3,7 @@ import 'dart:io'; import 'dart:math'; import 'package:desktop_drop/desktop_drop.dart'; +import 'package:flutter/gestures.dart'; import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; import 'package:flutter_breadcrumb/flutter_breadcrumb.dart'; @@ -793,13 +794,23 @@ class _FileManagerPageState extends State mainAxisAlignment: MainAxisAlignment.spaceBetween, children: [ Expanded( - child: BreadCrumb( - items: items, - divider: Text("/", - style: TextStyle(color: Theme.of(context).hintColor)), - overflow: ScrollableOverflow( - controller: getBreadCrumbScrollController(isLocal)), - )), + child: Listener( + // handle mouse wheel + onPointerSignal: (e) { + if (e is PointerScrollEvent) { + final sc = getBreadCrumbScrollController(isLocal); + sc.jumpTo(sc.offset + e.scrollDelta.dy / 4); + } + }, + child: BreadCrumb( + items: items, + divider: Text("/", + style: TextStyle( + color: Theme.of(context).hintColor)), + overflow: ScrollableOverflow( + controller: + getBreadCrumbScrollController(isLocal)), + ))), ActionIcon( message: "", icon: Icons.arrow_drop_down,