diff --git a/modules/xmonad/XMonadLog.hs b/modules/xmonad/XMonadLog.hs
index 78b707b..b07485c 100644
--- a/modules/xmonad/XMonadLog.hs
+++ b/modules/xmonad/XMonadLog.hs
@@ -35,10 +35,10 @@
       purple = "#c678dd"
       red    = "#e06c75"
   in def { ppOutput          = dbusOutput dbus
-         , ppCurrent         = wrapper blue
-         , ppVisible         = wrapper red
+         , ppCurrent         = wrapper red
+         , ppVisible         = wrapper blue
          , ppUrgent          = wrapper orange
-         , ppHidden          = wrapper red
+         , ppHidden          = wrapper blue
          , ppHiddenNoWindows = wrapper grey
          , ppTitle           = shorten 100 . wrapper purple
          }
diff --git a/modules/xmonad/xmonad.hs b/modules/xmonad/xmonad.hs
index 660db50..b478be1 100644
--- a/modules/xmonad/xmonad.hs
+++ b/modules/xmonad/xmonad.hs
@@ -8,25 +8,38 @@
 import           XMonad.Hooks.EwmhDesktops
 import           XMonad.Hooks.ManageDocks
 
-import qualified DBus.Client                as D
+import qualified DBus.Client                  as D
 import           XMonad.Hooks.DynamicLog
 import           XMonadLog
 
-import           XMonad.Hooks.ManageHelpers (isInProperty, doLower)
+import           Blaze.ByteString.Builder     (toByteString)
+import           Foreign.C
+import           XMonad
+import           XMonad.Hooks.DynamicProperty (dynamicPropertyChange)
+import           XMonad.Hooks.ManageHelpers   (doFullFloat, doLower,
+                                               isInProperty, doRectFloat)
+import           XMonad.Hooks.UrgencyHook
+import           XMonad.Layout.Drawer         (propertyToQuery)
 import           XMonad.Layout.Gaps
 import           XMonad.Layout.Spacing
-import Foreign.C
-import Blaze.ByteString.Builder (toByteString)
-import XMonad.Layout.Drawer (propertyToQuery)
+import qualified XMonad.StackSet              as W
+import           XMonad.Util.Hacks
+import qualified XMonad as W
+import XMonad.Util.PureX (curScreenId, curScreen)
 
 terminal = "kitty"      -- Kitty, my beloved <3
 launcher = "pkill rofi; rofi -show combi"
-networkManager = "wpa_cli select_network $(wpa_cli list_networks | tail -n +3 | rofi -dmenu -window-title 'Select Network' | awk '{print $1;}')"
+networkManager = "wpa_cli select_network $(wpa_cli list_networks | tail -n +3 | awk '!seen[$2]++' | rofi -dmenu -window-title 'Select Network' | awk '{print $1;}')"
+
+screenshot = "mkdir -p ~/Screenshots && maim | tee ~/Screenshots/\"$(date --rfc-3339=seconds)\".png | xclip -select clipboard -t image/png"
+selectScreenshot = "mkdir -p ~/Screenshots && maim -s | tee ~/Screenshots/\"$(date --rfc-3339=seconds)\".png | xclip -select clipboard -t image/png"
+
 modifierKey = mod4Mask  -- Use Super as our mod key
 
 statusBar = "pkill polybar; polybar"
 compositor = "pkill picom; picom"
-background = "pkill show; show ~/.xmonad/wallpaper.glsl"
+background = "pkill show; show ~/.xmonad/wallpaper.glsl > /dev/null"
+keybindings = "setxkbmap -option caps:none && xmodmap ~/.Xmodmap"
 
 shift = shiftMask
 
@@ -34,32 +47,47 @@
   spawn Main.statusBar
   spawn Main.compositor
   spawn background
+  spawn keybindings
 
 
 main :: IO ()
 main = XMonadLog.xmonadLog >>= main'
 
 main' :: D.Client -> IO ()
-main' dbus = xmonad $ ewmh . ewmhFullscreen $ docks $ def
+main' dbus = xmonad
+           $ javaHack
+           $ ewmh . setEwmhActivateHook doAskUrgent
+           $ docks
+           $ def
   { modMask = modifierKey  -- Use Super as our mod key
   , borderWidth = 0
   , XMonad.terminal = Main.terminal
   , XMonad.startupHook = Main.startupHook
   , XMonad.logHook = dynamicLogWithPP (polybarHook dbus)
-  , XMonad.layoutHook = avoidStruts $
-                        smartSpacing 5 $
-                        gaps [(U, 5), (D, 5), (L, 5), (R, 5)] $
-                        layoutHook def
+  , XMonad.layoutHook = avoidStruts
+                      $ smartSpacing 5
+                      $ gaps [(U, 5), (D, 5), (L, 5), (R, 5)]
+                      $ layoutHook def
   , XMonad.manageHook = composeAll
-                        [ className =? "Show" --> doIgnore <+> doLower <+> doLower
-                        -- You can't check if "Show" is a desktop window,
-                        -- I believe it's because show doesn't instantly set
-                        -- desktop. Do not try. It is not worth it.
+                        [ isInProperty "_NET_WM_WINDOW_TYPE" "_NET_WM_WINDOW_TYPE_DESKTOP"
+                          --> doIgnore <+> doLower <+> doLower
                         ] <+> manageHook def
+  , XMonad.handleEventHook = composeAll
+                        [ windowedFullscreenFixEventHook
+                        , dynamicPropertyChange "_NET_WM_WINDOW_TYPE"
+                          (isInProperty "_NET_WM_WINDOW_TYPE" "_NET_WM_WINDOW_TYPE_DESKTOP"
+                          --> doLower
+                          <+> (ask >>= \w -> liftX (modifyWindowSet (W.delete w))
+                                          >> mempty)
+                          <+> (ask >>= \w -> liftX (withDisplay $ \dpy -> io (moveResizeWindow dpy w 0 0 (fromIntegral $ displayWidth dpy $ defaultScreen dpy) (fromIntegral $ displayHeight dpy $ defaultScreen dpy))) >> mempty))
+                        ]
+                        <+> handleEventHook def
   } `additionalKeys`
   [ ((modifierKey, xK_d), spawn launcher)
   , ((modifierKey, xK_n), spawn networkManager)
-  , ((modifierKey .|. shift, xK_q), kill)
+  , ((modifierKey .|. Main.shift, xK_q), kill)
   , ((modifierKey, xK_q), spawn "xmonad --restart")
-  , ((modifierKey .|. shift, xK_c), io exitSuccess)
+  , ((modifierKey .|. Main.shift, xK_c), io exitSuccess)
+  , ((modifierKey .|. Main.shift, xK_s), spawn selectScreenshot)
+  , ((0, xK_Print), spawn screenshot)
   ]
