forked from colonelpanic/dotfiles
Fix chrome tab handling with chromix
This commit is contained in:
parent
b1294ccd3b
commit
03d4ea76ac
@ -1,5 +1,3 @@
|
|||||||
#!/usr/bin/env sh
|
#!/usr/bin/env sh
|
||||||
|
|
||||||
windowId=$(chromix-too raw chrome.tabs.update "$1" '{"active": true}' | jq .windowId)
|
chromix-too focus "$1"
|
||||||
chromix-too raw chrome.windows.update "$windowId" '{"focused": true}'
|
|
||||||
|
|
||||||
|
3
dotfiles/lib/bin/split_current_chrome_tab.sh
Executable file
3
dotfiles/lib/bin/split_current_chrome_tab.sh
Executable file
@ -0,0 +1,3 @@
|
|||||||
|
#!/usr/bin/env zsh
|
||||||
|
|
||||||
|
chromix-too raw chrome.windows.getLastFocused '{"populate": true}' | jq -cM '.tabs[]' | jq 'select(.active)' | jq .id | xargs split_tab_by_id.sh
|
@ -1,5 +0,0 @@
|
|||||||
#!/usr/bin/env sh
|
|
||||||
sleep .6
|
|
||||||
xdotool key --clearmodifiers Escape
|
|
||||||
xdotool key --clearmodifiers Tab
|
|
||||||
xdotool key --clearmodifiers "W"
|
|
@ -1,4 +0,0 @@
|
|||||||
#!/usr/bin/env zsh
|
|
||||||
split_out.sh
|
|
||||||
sleep .2
|
|
||||||
xdotool key --clearmodifiers "Shift_L+Super_L+z"
|
|
@ -1,3 +1,4 @@
|
|||||||
#!/usr/bin/env zsh
|
#!/usr/bin/env zsh
|
||||||
|
|
||||||
|
echo $1
|
||||||
chromix-too raw chrome.windows.create '{"tabId": '"$1}"
|
chromix-too raw chrome.windows.create '{"tabId": '"$1}"
|
||||||
|
@ -23,6 +23,7 @@ executable imalison-xmonad
|
|||||||
gtk-traymanager>=0.1.6,
|
gtk-traymanager>=0.1.6,
|
||||||
hostname>=1.0,
|
hostname>=1.0,
|
||||||
multimap>=1.2.1,
|
multimap>=1.2.1,
|
||||||
|
process>=1.4.3.0,
|
||||||
split,
|
split,
|
||||||
taffybar>=0.4.6,
|
taffybar>=0.4.6,
|
||||||
transformers>=0.5.2.0,
|
transformers>=0.5.2.0,
|
||||||
|
@ -17,6 +17,7 @@ import Graphics.X11.ExtraTypes.XF86
|
|||||||
import Network.HostName
|
import Network.HostName
|
||||||
import System.Directory
|
import System.Directory
|
||||||
import System.FilePath.Posix
|
import System.FilePath.Posix
|
||||||
|
import System.Process
|
||||||
import System.Taffybar.Hooks.PagerHints
|
import System.Taffybar.Hooks.PagerHints
|
||||||
import Text.Printf
|
import Text.Printf
|
||||||
|
|
||||||
@ -89,6 +90,8 @@ main =
|
|||||||
writeToHomeDirLog stuff = io $ getLogFile >>= flip appendFile (stuff ++ "\n")
|
writeToHomeDirLog stuff = io $ getLogFile >>= flip appendFile (stuff ++ "\n")
|
||||||
where getLogFile = (</> "temp" </> "xmonad.log") <$> getHomeDirectory
|
where getLogFile = (</> "temp" </> "xmonad.log") <$> getHomeDirectory
|
||||||
|
|
||||||
|
xRunCommand cmd = void $ io $ readCreateProcess (shell cmd) ""
|
||||||
|
|
||||||
(<..>) :: Functor f => (a -> b) -> f (f a) -> f (f b)
|
(<..>) :: Functor f => (a -> b) -> f (f a) -> f (f b)
|
||||||
(<..>) = fmap . fmap
|
(<..>) = fmap . fmap
|
||||||
|
|
||||||
@ -397,7 +400,7 @@ myWindowAct c@WindowBringerConfig { menuCommand = cmd
|
|||||||
do
|
do
|
||||||
visible <- visibleWindows
|
visible <- visibleWindows
|
||||||
ws <- windowMap' c { windowFilter = not . flip elem visible }
|
ws <- windowMap' c { windowFilter = not . flip elem visible }
|
||||||
let chromeTabs = M.empty -- chromeTabs <- liftIO getChromeTabInfo
|
chromeTabs <- liftIO getChromeTabInfo
|
||||||
let options = M.union (M.map Left ws) (M.map Right chromeTabs)
|
let options = M.union (M.map Left ws) (M.map Right chromeTabs)
|
||||||
selection <- DM.menuMapArgs cmd args options
|
selection <- DM.menuMapArgs cmd args options
|
||||||
whenJust selection action
|
whenJust selection action
|
||||||
@ -820,7 +823,7 @@ addKeys conf@XConfig { modMask = modm } =
|
|||||||
|
|
||||||
, ((modm .|. controlMask, xK_t), spawn taffybarCommand)
|
, ((modm .|. controlMask, xK_t), spawn taffybarCommand)
|
||||||
, ((modm, xK_v), spawn "copyq paste")
|
, ((modm, xK_v), spawn "copyq paste")
|
||||||
, ((modm .|. controlMask, xK_s), spawn "split_out.sh")
|
, ((modm .|. controlMask, xK_s), spawn "split_current_chrome_tab.sh")
|
||||||
, ((hyper, xK_v), spawn "copyq_rofi.sh")
|
, ((hyper, xK_v), spawn "copyq_rofi.sh")
|
||||||
, ((hyper, xK_p), spawn "rofi-pass")
|
, ((hyper, xK_p), spawn "rofi-pass")
|
||||||
, ((hyper, xK_h), spawn "screenshot.sh")
|
, ((hyper, xK_h), spawn "screenshot.sh")
|
||||||
@ -834,7 +837,7 @@ addKeys conf@XConfig { modMask = modm } =
|
|||||||
, ((hyper, xK_r), spawn "rofi_systemd.sh")
|
, ((hyper, xK_r), spawn "rofi_systemd.sh")
|
||||||
, ((hyper, xK_0), spawn "tvpower.js")
|
, ((hyper, xK_0), spawn "tvpower.js")
|
||||||
, ((modalt, xK_w), spawn "rofi_wallpaper.sh")
|
, ((modalt, xK_w), spawn "rofi_wallpaper.sh")
|
||||||
, ((modalt, xK_z), spawn "split_out_chrome_tab.sh")
|
, ((modalt, xK_z), spawn "split_chrome_tab_to_next_screen.sh")
|
||||||
, ((hyper, xK_9), spawn "start_synergy.sh")
|
, ((hyper, xK_9), spawn "start_synergy.sh")
|
||||||
, ((hyper, xK_8), spawn "rofi_paswitch.sh")
|
, ((hyper, xK_8), spawn "rofi_paswitch.sh")
|
||||||
, ((hyper, xK_slash), spawn "toggle_taffybar.sh")
|
, ((hyper, xK_slash), spawn "toggle_taffybar.sh")
|
||||||
|
Loading…
Reference in New Issue
Block a user