module TreeSelect where import Data.Tree import XMonad import qualified XMonad.StackSet as W import XMonad.Actions.TreeSelect import Defaults showTS x = treeselectAction myTSConfig x myBrowserTS :: Forest (TSNode (X ())) myBrowserTS = [ Node (TSNode "LibreWolf" "The default" (spawn myBrowser)) [] , Node (TSNode "LibreWolf (private)" "" (spawn myPrivateBrowser)) [] , Node (TSNode "Vivaldi" "" (spawn myBrowser')) [] , Node (TSNode "TOR" "" (spawn "torbrowser-launcher")) [] , Node (TSNode "Firefox" "" (spawn "firefox")) [] , Node (TSNode "Brave" "" (spawn "brave")) [] ] myEditingTS :: Forest (TSNode (X ())) myEditingTS = [ Node (TSNode "GIMP" "Hackerman's photoshop" (spawn "gimp")) [] , Node (TSNode "Kdenlive" "Main video editor" (spawn "kdenlive")) [] , Node (TSNode "Audacity" "" (spawn "audacity")) [] , Node (TSNode "OBS" "" (spawn "obs-studio")) [] , Node (TSNode "Canva" "Zoomer's photoshop" (spawn $ myBrowser ++ " https://canva.com")) [] ] myDevTS :: Forest (TSNode (X ())) myDevTS = [ Node (TSNode "Doom Emacs" "" (spawn myTextEditor)) [] , Node (TSNode "Postman" "" (spawn "postman")) [] , Node (TSNode "Virt Manager" "" (spawn "virt-manager")) [] , Node (TSNode "IntelliJ IDEA" "Java IDE" (spawn "idea")) [] , Node (TSNode "Android Studio" "" (spawn "android-studio")) [] , Node (TSNode "PyCharm" "Python IDE" (spawn "pycharm")) [] ] myUtilTS :: Forest (TSNode (X ())) myUtilTS = [ Node (TSNode "File Manager" "" (spawn myFileManager)) [] , Node (TSNode "Volume Control" "pavucontrol" (spawn "pavucontrol")) [] , Node (TSNode "Password Manager" "keepassxc" (spawn myPasswordManager)) [] , Node (TSNode "Calculator" "" (spawn myCalculator)) [] , Node (TSNode "Screenshot" "" (spawn fullScreenshot)) [] , Node (TSNode "Torrent" "" (spawn myTorrentClient)) [] , Node (TSNode "Email Client" "" (spawn myEmailClient)) [] , Node (TSNode "Screen Recorder" "OBS" (spawn "obs-studio")) [] , Node (TSNode "Display Setup" "" (spawn myDisplayMenu)) [] , Node (TSNode "Wallpapers" "" (spawn myWallpaperMenu)) [] , Node (TSNode "Google Docs" "" (spawn $ myBrowser ++ " https://docs.google.com")) [] , Node (TSNode "Google Sheets" "" (spawn $ myBrowser ++ " https://sheets.google.com")) [] , Node (TSNode "Google Slides" "" (spawn $ myBrowser ++ " https://slides.google.com")) [] , Node (TSNode "Google Forms" "" (spawn $ myBrowser ++ " https://forms.google.com")) [] ] myPowerTS :: Forest (TSNode (X ())) myPowerTS = [ Node (TSNode "Shut Down" "" (spawn "shutdown now")) [] , Node (TSNode "Reboot" "" (spawn "reboot")) [] ] myMainTS :: Forest (TSNode (X ())) myMainTS = [ Node (TSNode "Web Browser" "Open for more options" (spawn myBrowser)) myBrowserTS , Node (TSNode "Discord" "Zoomer's Spyware" (spawn myDiscord)) [] , Node (TSNode "Editing" "Makin' memes" (return())) myEditingTS , Node (TSNode "Development" "Hackering tools" (return())) myDevTS , Node (TSNode "Utilities" "Misc n settings" (return())) myUtilTS , Node (TSNode "Power" "" (return())) myPowerTS ]