Giter Club home page Giter Club logo

alttab's People

Contributors

ankon avatar astier avatar cornerman avatar eater avatar inkeso avatar jidanni avatar jj1uzh avatar johnbeard avatar jubalh avatar sagb avatar sviatlana99 avatar veraellyunjie avatar ykaliuta avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

alttab's Issues

Bad work in AfterStep

AfterStep reports EWMH properties but fails to maintain correct window list.
The best option is setting -w 3 manually, but too bad anyway.

Debian "enhances" tag should contain only those WMs which are definitely enhanced by alttab

WM should have:

  1. stacking or fullscreen behaviour by default
  2. no built-in alt-tab feature or "inconvenient" one. Openbox-like (vertical) or our-style (horizontal) GUI are considered "convenient".

Definite candidates for "enhances" tag are marked bold.

i3: tiling by default, no alt-tab included. include because of positive user experience (#45, #46, #51, #52).
xmonad: tiling by default, dwm-style alt-tab
openbox: stacking, good ("openbox-style") alt-tab
stumpwm: tiling
dwm: tiling, "dwm-style" alt-tab
jwm: stacking, dwm-style alt-tab
twm (#29)
evilwm: fullscreen, dwm-style alt-tab
ratpoison: fullscreen by default, no alt-tab (dwm-style easily added), also include because of -w 2
fluxbox: stacking, dwm-style alt-tab, startup nuance (#93)
icewm: stacking, openbox-style alt-tab
matchbox: fullscreen, no built-in alt-tab, ignores centering (#34)
xfwm4, metacity etc: stacking, our-style built-in alt-tab (#24, #26, #27, #28)
enlightenment: stacking, openbox-style alt-tab
blackbox: stacking, no built-in alt-tab
window maker: stacking, our-style alt-tab
flwm: stacking, openbox-style alt-tab, ignores centering (#34).
cwm: stacking, dwm-like alt-tab, bug (#35)
wm2: stacking, no alt-tab
aewm: stacking, no alt-tab
fvwm: stacking, openbox-style alt-tab, ignores no-title hints
ctwm: stacking, no alt-tab, bug (#39)
lwm: stacking, no alt-tab, bug (#40)
sawfish: stacking, dwm-style alt-tab
awesome: stacking, no alt-tab, bug (#41), openbox-style alt-tab with plugin, our-style with this

Order of windows is always the same

Behaviour is not actually "microsoft", as readme says. The order of windows is always the same, regardless of last choice. Instead, it should pull selected window to the top, isn't it?

xpra

Surprisingly, alttab works from inside xpra (proxy for attaching to X windows remotely, like GNU screen):

DISPLAY=:20 alttab

(assuming xpra owns display :20).
Xpra appears to set its own properties on windows and is detected as EWMH, even if neither local nor remote WM are EWMH.
The issues are:

  • abscence of _NET_ACTIVE_WINDOW, so window order is bad
  • keystroke works only when any of xpra-proxied windows are active

Adopt for heavy EWMH WM like xfwm4

  1. same code as wmctrl -b skip_pager,skip_taskbar
  2. how to request no window decorations?
  3. skip special windows. in xfce: Desktop, xfce4-panel
  4. obey desktops?

Clarify usage in heavy WMs

  1. disable their own alt-tab:
    Mate/Metacity: System -> Preferences -> Hardware -> Keyboard Shortcuts
    xfwm4: ?
  2. startup

document wm behaviour

evilwm grabs alt-tab

i3 doesn't grab

twm
doesn't grab
WM_TWM

dwm
grabs
unknowm_ewmh_compatible

Non-functional in lwm

Incorrect EWMH support:

number of desktops: 1
current desktop: 0
window's desktop: _NET_WM_DESKTOP or _WIN_WORKSPACE aren't set.

Issues with jwm

When using jwm, the window is immediately moved from the center to the first unoccupied space in the upper left, picture attached. Additionally, there is no way to define custom behavior for alttab in the jwm configuration, because it selects based on values in WM_CLASS, which doesn't seem to exist here, as reported by xprop.

alttab

Otherwise, this is a very nice program, and a big improvement on jwm's stacking behavior!

"Enhances" tag

Enhances: x-window-manager or ratpoison|...
in next release

Focus in xfce

In xfce, focus isn't switched when switched from gtk apps to xterm

Enhancement: make Alttab switcher clickable

Especially when I have ~40 windows going, it would be a nice feature to be able to raise the switcher by hitting Alt-tab with my left hand, and then click on the correct option with the mouse in my right hand.

Segfault in cwm

cwm reports via ewmh:
number of desktops=10
active desktop=1
window's desktop=-1 (_NET_WM_DESKTOP(CARDINAL) = 4294967295)

Non-standard window ordering?

Most Recently Used (MRU) ordering criticized: http://www.azarask.in/blog/post/solving-the-alt-tab-problem/

But some professionals seem to object to that critic: https://news.ycombinator.com/item?id=1315942
"At the same time as the switcher program is trying to learn the user's common patterns, the user is also trying to learn how the switcher works."
Someone "suggest having new alternative to Alt-Tab that has static positions (reorderable for the power user.)"

Request for static order: https://ubuntuforums.org/showthread.php?t=1204947

Request for grouping: https://unix.stackexchange.com/questions/330656/application-window-switcher-on-xubuntu-xfce-group-windows-by-application

Request for switching without raising (should be easy): https://unix.stackexchange.com/questions/237087/keyboard-shortcut-to-switch-focus-without-raising-window

Request for partially hidden list: https://unix.stackexchange.com/questions/213854/how-to-hide-a-window-from-alttab-in-cinnamon/226422

Should alttab implement some crafty ordering of windows as an option?

Desktops (workspaces) support

Current goal of master (release) branch: full desktops support.
Current strategies:
-1 desktop: switch to any desktop, including -1 (as for i3), except in cwm.

The following madness must be taken into account:

lwm (#40):
number of desktops: 1
current desktop: 0
window's desktop: _NET_WM_DESKTOP or _WIN_WORKSPACE aren't set.

cwm (#35):
number of desktops=10
active desktop=1
window's desktop=-1 (_NET_WM_DESKTOP(CARDINAL) = 4294967295)
group membership switched by ctrl-alt-g (man openbsd-cwm),
-1 means "isn't member of any group"

i3 (#45):
number of desktops: 1
current desktop: 0
normal window's desktop: 0
window on hidden desktop aka "scratchpad": -1 (_NET_WM_DESKTOP(CARDINAL) = 4294967295)
Unlike cwm, -1 does indeed mean something.
Also, scratchpad window has:
WM_STATE(WM_STATE):
window state: Withdrawn

A comment in wmctrl:
/* special desktop ID -1 means "all desktops", so we
have to convert the desktop value to signed long */
also see "sticky window" in man
-d 2 for "sticky windows always shown" or "-1 desktop always shown"?

Focusing a window with mouse or keyboard commands should change MRU sort

Alttab seems to only change the MRU sort order when a new window is focused by Alttab.

  1. With the focus in a terminal window, call it Window A, launch the Alttab application. $ alttab -d 1
  2. With the mouse, click in another window, let's call it Window F.
  3. With the mouse, click back to Window A.
  4. Invoke the Alttab switcher.
    The sort order shown should now be A, F, B, C, D, etc. at this point, since Window F was recently used. But instead it is A, B, C, D, E, F.

Ideally, Alttab would listen for all window focusing events in the window manager, and change its sort order every time a window is focused by any means.

Segfault when pressing alt-tab after focusing window on another desktop

After focusing a window belonging to the group (desktop) other than current group, pressing alt-tab causes segfault.
WM: ratpoison
Command that changes focus to window on another desktop, without switching to that desktop: firefox-esr -new-tab ...

Program received signal SIGSEGV, Segmentation fault.
0xb7e651f9 in XftCharIndex () from /usr/lib/i386-linux-gnu/libXft.so.2
(gdb) bt
#0 0xb7e651f9 in XftCharIndex () from /usr/lib/i386-linux-gnu/libXft.so.2
#1 0xb7e618c5 in XftTextExtentsUtf8 () from /usr/lib/i386-linux-gnu/libXft.so.2
#2 0x0804cc8f in drawMultiLine (dpy=0x10, dpy@entry=0x8054008, d=119, d@entry=12582929,
font=0xbfffd4fc, font@entry=0x10, xftcolor=0x8053ab0 <g+4208>,
str=0x8070cd0 "ws rel", x1=0, y1=5, width=109, height=4294967291) at util.c:313
#3 0x0804d6b5 in drawMultiLine (dpy=0x8054008, d=12582929, font=0x10,
xftcolor=0x8053ab0 <g+4208>, str=0x8070cd0 "ws rel", x1=0, y1=5, width=109,
height=4294967291) at util.c:307
#4 0x0804b0fb in uiShow (dpy=0x8054008, root=627, direction=false) at gui.c:315
#5 0x08049a27 in main (argc=1, argv=0xbfffefc4) at alttab.c:299

Interference with rdesktop

When switching to/from rdesktop window started with -K option, alttab "eats" or "adds" modifiers.
Particularly, Ctrl-Shift and Alt-Shift shortcuts stop working in RDP session, or sometimes it behaves like 'Alt' key has been stuck.

UI bar not shown in Metacity

In Metacity (recognized as EWMH-compatible) alttab's UI is hidden behind all windows,
shown only on unobstructed desktop.

wordexp.h?

I'm trying to build this on OpenBSD 6.2-current, but I can't figure out where wordexp.h should come from. What package should I install?

job@victoria:~/source/alttab$ make
make  all-recursive
Making all in src
depbase=`echo alttab.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`; gcc -DHAVE_CONFIG_H -I. -I..     -I/usr/X11R6/include -I/usr/X11R6/include -I/usr/X11R6/include/freetype2 -I/usr/X11R6/include -I/usr/local/include/libpng16 -Wall -g -O2 -MT alttab.o -MD -MP -MF $depbase.Tpo -c -o alttab.o alttab.c && mv -f $depbase.Tpo $depbase.Po
In file included from alttab.h:62,
                 from alttab.c:29:
icon.h:36:21: error: wordexp.h: No such file or directory
*** Error 1 in src (Makefile:362 'alttab.o')
*** Error 1 in . (Makefile:386 'all-recursive')
*** Error 1 in /home/job/source/alttab (Makefile:302 'all')
job@victoria:~/source/alttab$ 

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.