From 92e02a821cc4d859834c7147fcaf6f068bb848c7 Mon Sep 17 00:00:00 2001 From: Hayden Hargreaves Date: Thu, 29 May 2025 20:57:38 -0700 Subject: [PATCH] (FIX): Fixed the silly rendering of selected bug. I need to rewrite this POS. The codebase sucks. --- frontend/src/components/Directory.jsx | 16 ++++++++++------ frontend/src/components/DirectoryList.jsx | 13 ++++++++----- frontend/src/pages/Dashboard.jsx | 9 ++++++--- 3 files changed, 24 insertions(+), 14 deletions(-) diff --git a/frontend/src/components/Directory.jsx b/frontend/src/components/Directory.jsx index c939710..4cb9d2c 100644 --- a/frontend/src/components/Directory.jsx +++ b/frontend/src/components/Directory.jsx @@ -1,5 +1,5 @@ import "../index.css" -import { useState } from "react"; +import { useEffect, useState } from "react"; function FileIcon() { return <> @@ -32,8 +32,12 @@ function DirectoryIcon() { * @returns {{}} * @constructor */ -export default function Directory({ entry, showHidden, appendPath, toggleSelected, toggleEditing }) { - const [selected, setSelected] = useState(false); +export default function Directory({ entry, selected, showHidden, appendPath, toggleSelected, toggleEditing }) { + const [_selected, setSelected] = useState(false); + + useEffect(() => { + setSelected(selected); + }, [selected]); const handleClick = () => { if (entry.directory) { @@ -45,7 +49,7 @@ export default function Directory({ entry, showHidden, appendPath, toggleSelecte const handleCheck = () => { toggleSelected(entry.name); - setSelected(!selected); + setSelected(!_selected); } // This is temporary, eventually I will have a real data model that stores @@ -56,11 +60,11 @@ export default function Directory({ entry, showHidden, appendPath, toggleSelecte } return <> -