Fix chrome tab handling with chromix
This commit is contained in:
parent
b1294ccd3b
commit
03d4ea76ac
@ -1,5 +1,3 @@
|
||||
#!/usr/bin/env sh
|
||||
|
||||
windowId=$(chromix-too raw chrome.tabs.update "$1" '{"active": true}' | jq .windowId)
|
||||
chromix-too raw chrome.windows.update "$windowId" '{"focused": true}'
|
||||
|
||||
chromix-too focus "$1"
|
||||
|
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
|
||||
|
||||
echo $1
|
||||
chromix-too raw chrome.windows.create '{"tabId": '"$1}"
|
||||
|
@ -23,6 +23,7 @@ executable imalison-xmonad
|
||||
gtk-traymanager>=0.1.6,
|
||||
hostname>=1.0,
|
||||
multimap>=1.2.1,
|
||||
process>=1.4.3.0,
|
||||
split,
|
||||
taffybar>=0.4.6,
|
||||
transformers>=0.5.2.0,
|
||||
|
@ -17,6 +17,7 @@ import Graphics.X11.ExtraTypes.XF86
|
||||
import Network.HostName
|
||||
import System.Directory
|
||||
import System.FilePath.Posix
|
||||
import System.Process
|
||||
import System.Taffybar.Hooks.PagerHints
|
||||
import Text.Printf
|
||||
|
||||
@ -89,6 +90,8 @@ main =
|
||||
writeToHomeDirLog stuff = io $ getLogFile >>= flip appendFile (stuff ++ "\n")
|
||||
where getLogFile = (</> "temp" </> "xmonad.log") <$> getHomeDirectory
|
||||
|
||||
xRunCommand cmd = void $ io $ readCreateProcess (shell cmd) ""
|
||||
|
||||
(<..>) :: Functor f => (a -> b) -> f (f a) -> f (f b)
|
||||
(<..>) = fmap . fmap
|
||||
|
||||
@ -397,7 +400,7 @@ myWindowAct c@WindowBringerConfig { menuCommand = cmd
|
||||
do
|
||||
visible <- visibleWindows
|
||||
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)
|
||||
selection <- DM.menuMapArgs cmd args options
|
||||
whenJust selection action
|
||||
@ -820,7 +823,7 @@ addKeys conf@XConfig { modMask = modm } =
|
||||
|
||||
, ((modm .|. controlMask, xK_t), spawn taffybarCommand)
|
||||
, ((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_p), spawn "rofi-pass")
|
||||
, ((hyper, xK_h), spawn "screenshot.sh")
|
||||
@ -834,7 +837,7 @@ addKeys conf@XConfig { modMask = modm } =
|
||||
, ((hyper, xK_r), spawn "rofi_systemd.sh")
|
||||
, ((hyper, xK_0), spawn "tvpower.js")
|
||||
, ((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_8), spawn "rofi_paswitch.sh")
|
||||
, ((hyper, xK_slash), spawn "toggle_taffybar.sh")
|
||||
|
Loading…
Reference in New Issue
Block a user