diff options
author | Spencer Janssen <sjanssen@cse.unl.edu> | 2007-03-07 07:42:23 +0100 |
---|---|---|
committer | Spencer Janssen <sjanssen@cse.unl.edu> | 2007-03-07 07:42:23 +0100 |
commit | d0fc61f3f0b3686aedc288e01b3ed4cf0fa48398 (patch) | |
tree | 896a131e809341d93ac50ef8a09d90e9e4771750 /TODO | |
parent | a527baa7ee333ac0c94a20ddae7bd2808a25604b (diff) | |
download | xmonad-d0fc61f3f0b3686aedc288e01b3ed4cf0fa48398.tar.gz xmonad-d0fc61f3f0b3686aedc288e01b3ed4cf0fa48398.tar.xz xmonad-d0fc61f3f0b3686aedc288e01b3ed4cf0fa48398.zip |
Plan for statusbar/multithreading
darcs-hash:20070307064223-a5988-0580a4fe6cc01238e55f00d9dc637212afc3d165.gz
Diffstat (limited to 'TODO')
-rw-r--r-- | TODO | 16 |
1 files changed, 16 insertions, 0 deletions
@@ -0,0 +1,16 @@ +- think about the statusbar/multithreading. + Three shared TVars: + windowTitle :: TVar String + workspace :: TVar Int + statusText :: TVar String + Three threads: + Main thread, handles all of the events that it handles now. When + necessary, it writes to workspace or windowTitle + + Status IO thread, the algorithm is something like this: + forever $ do + s <- getLine + atomic (writeTVar statusText s) + + Statusbar drawing thread, waits for changes in all three TVars, and + redraws whenever it finds a change. |