defbindings("WScreen", { mpress("Button4", "WScreen.switch_prev(_)"), mpress("Button5", "WScreen.switch_next(_)"), mpress(MOD1.."Button4", "WScreen.switch_prev(_)"), mpress(MOD1.."Button5", "WScreen.switch_next(_)"), mpress("Button2", "WClientWin.set_fullscreen(_sub, 'toggle')"), }) defbindings("WFrame", { bdoc("Bring up a context menu from anywhere in the frame."), mpress(MOD1.."Shift+Button3", "mod_menu.pmenu(_, _sub, 'ctxmenu')"), bdoc("Toggle tagged."), mpress(MOD1.."Button2", "_sub:set_tagged('toggle')"), bdoc("Attach tagged regions."), mpress(MOD1.."Shift+Button2", "_:attach_tagged()"), mpress("Button1@client", "mod_menu.pmenu(_, _sub, 'mainmenu')"), mpress("Button2@border", "mod_menu.pmenu(_, _sub, 'mainmenu')"), bdoc("Maximize vertical on double click"), mdblclick("Button1", "WFrame.maximize_vert(_)"), mpress("Button5@tab", "WScreen.switch_next(_)"), mpress("Button4@tab", "WScreen.switch_prev(_)"), mpress("Button5", "_:parent():switch_next()"), mpress("Button4", "_:parent():switch_prev()"), mpress(MOD1.."Button4", "_:parent():switch_prev()"), mpress(MOD1.."Button5", "_:parent():switch_next()"), bdoc("Drag without aiming for a tab, using Mod1+Shift"), mdrag(MOD1.."Shift+Button1", "WFrame.p_tabdrag(_)"), mpress(MOD1.."Control+Button4", "ioncore.exec_on(_, 'amixer set PCM 1+')"), mpress(MOD1.."Control+Button5", "ioncore.exec_on(_, 'amixer set PCM 1-')"), }) if MOD4 then defbindings("WFrame", { bdoc("Show/hide tab"), mpress(MOD4.."Button1", "WFrame.set_tabbar(_, 'toggle')"), bdoc("Quickly rename a frame."), mpress(MOD4.."Shift+Button3", "mod_query.query_renameframe(_)"), mpress(MOD4.."Button5", "WScreen.switch_next(_)"), mpress(MOD4.."Button4", "WScreen.switch_prev(_)"), }) else defbindings("WFrame", { bdoc("Show/hide tab"), mclick(MOD1.."Shift+Button1", "WFrame.set_tabbar(_, 'toggle')"), bdoc("Quickly rename a frame."), mpress(MOD1.."Shift+Control+Button3", "mod_query.query_renameframe(_)"), mpress(MOD1.."Shift+Button5", "WScreen.switch_next(_)"), mpress(MOD1.."Shift+Button4", "WScreen.switch_prev(_)"), }) end if mod_ionws then defbindings("WFrame-on-WIonWS", { mpress("Button2@tab", "mod_menu.pmenu(_, _sub, 'mainmenu')"), }) end if mod_query then defbindings("WInput", { bdoc("No sense reaching for the keyboard just to bat away a WMessage"), mpress("Button3", "WInput.cancel(_)"), }) end if mod_menu then defbindings("WMenu", { bdoc("...or to close a menu."), mpress("Button3", "WMenu.cancel(_)"), }) end