From b09cdde8d33bc0e9b5fe5f1116da4ff822bc3931 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Leon=20B=C3=B6sche?= Date: Sun, 11 Jan 2026 04:21:33 +0100 Subject: [PATCH] =?UTF-8?q?Reload=20file=20explorer=20on=20org=20change=20?= =?UTF-8?q?to=20avoid=20stale=20items\n\n-=20Add=20didUpdateWidget=20in=20?= =?UTF-8?q?FileExplorer=20to=20ResetFileBrowser=20and=20LoadDirectory=20wh?= =?UTF-8?q?en=20orgId=20changes\n-=20Ensures=20org-created=20folders/files?= =?UTF-8?q?=20don=E2=80=99t=20appear=20in=20Personal=20after=20switching?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- b0esche_cloud/lib/pages/file_explorer.dart | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/b0esche_cloud/lib/pages/file_explorer.dart b/b0esche_cloud/lib/pages/file_explorer.dart index bbd9385..aaa310d 100644 --- a/b0esche_cloud/lib/pages/file_explorer.dart +++ b/b0esche_cloud/lib/pages/file_explorer.dart @@ -60,6 +60,17 @@ class _FileExplorerState extends State { ); context.read().add(LoadPermissions(widget.orgId)); } + + @override + void didUpdateWidget(covariant FileExplorer oldWidget) { + super.didUpdateWidget(oldWidget); + if (oldWidget.orgId != widget.orgId) { + // Reset and reload when switching between Personal and Org workspaces + final bloc = context.read(); + bloc.add(ResetFileBrowser()); + bloc.add(LoadDirectory(orgId: widget.orgId, path: '/')); + } + } Future _showCreateFolderDialog(BuildContext context) async { final TextEditingController controller = TextEditingController();