1
0
mirror of https://github.com/gryf/wmaker.git synced 2025-12-19 12:28:22 +01:00

Preference to open the switchpanel without selecting a window.

If the new preference SwitchPanelOnlyOpen is set to YES, pressing
alt-tab or similar shortcut will only open the panel without
automatically switching to the next window.  Shortcuts will continue to
function normally once the panel is open.

Users can enable the new preference if they find themselves regularly
opening the switchpanel just to visualise which windows are open, or to
initiate same-class cycling.

The default value of the new preference is NO.  Behaviour is unchanged
unless the preference is explicitly enabled with the following command:

  $ wdwrite WindowMaker SwitchPanelOnlyOpen YES
This commit is contained in:
Iain Patterson
2013-06-02 15:33:27 +01:00
committed by Carlos R. Mafra
parent 4c7d0025dd
commit a6b1833b41
4 changed files with 10 additions and 1 deletions

6
NEWS
View File

@@ -81,6 +81,12 @@ command:
$ wdwrite WindowMaker StrictWindozeCycling NO $ wdwrite WindowMaker StrictWindozeCycling NO
If you find yourself regularly opening the switchpanel just to visualise open
windows, you can run the following command to force the first "FocusNextKey"
or similar shortcut to open the panel without switching to a new window.
$ wdwrite WindowMaker SwitchPanelOnlyOpen YES
--- 0.95.2 --- 0.95.2

View File

@@ -419,6 +419,7 @@ typedef struct WPreferences {
char cycle_active_head_only; /* Cycle only windows on the active head */ char cycle_active_head_only; /* Cycle only windows on the active head */
char cycle_ignore_minimized; /* Ignore minimized windows when cycling */ char cycle_ignore_minimized; /* Ignore minimized windows when cycling */
char strict_windoze_cycle; /* don't close switchpanel when shift is released */ char strict_windoze_cycle; /* don't close switchpanel when shift is released */
char panel_only_open; /* Only open the switchpanel; don't switch */
/* All delays here are in ms. 0 means instant auto-action. */ /* All delays here are in ms. 0 means instant auto-action. */
int clip_auto_raise_delay; /* Delay after which the clip will be raised when entered */ int clip_auto_raise_delay; /* Delay after which the clip will be raised when entered */

View File

@@ -129,7 +129,7 @@ void StartWindozeCycle(WWindow * wwin, XEvent * event, Bool next, Bool class_onl
if (swpanel) { if (swpanel) {
if (wwin->flags.mapped) if (wwin->flags.mapped && !wPreferences.panel_only_open)
newFocused = wSwitchPanelSelectNext(swpanel, !next, True, False); newFocused = wSwitchPanelSelectNext(swpanel, !next, True, False);
else else
newFocused = wSwitchPanelSelectFirst(swpanel, False); newFocused = wSwitchPanelSelectFirst(swpanel, False);

View File

@@ -478,6 +478,8 @@ WDefaultEntry optionList[] = {
&wPreferences.single_click, getBool, NULL, NULL, NULL}, &wPreferences.single_click, getBool, NULL, NULL, NULL},
{"StrictWindozeCycle", "YES", NULL, {"StrictWindozeCycle", "YES", NULL,
&wPreferences.strict_windoze_cycle, getBool, NULL, NULL, NULL}, &wPreferences.strict_windoze_cycle, getBool, NULL, NULL, NULL},
{"SwitchPanelOnlyOpen", "NO", NULL,
&wPreferences.panel_only_open, getBool, NULL, NULL, NULL},
/* style options */ /* style options */