After updating my distro a few months ago, I somehow lost my tweaks to the Alt-Tab behavior in gnome-shell.
The default is to have
Alt-Tab switch you between applications in the
current workspace. One can use
Alt-backtick (or whatever key you
have above Tab) to switch between windows in the current application.
I prefer a Windows-like setup, where
Alt-Tab switches between
windows in the current workspace, regardless of the application to
which they belong.
Many moons ago there was a gnome-shell extension to change this behavior, but these days (GNOME 3.24) it can be done without extensions. It is a bit convoluted.
With the GUI
If you are using X instead of Wayland, this works:
Unset the Switch applications command. To do this, run
gnome-control-center, go to Keyboard, and find the Switch applications command. Click on it, and hit
Backspacein the dialog that prompts you for the keyboard shortcut. Click on the Set button.
Set the Switch windows command. While still in the Keyboard settings, find the Switch windows command. Click on it, and hit
Alt-Tab. Click Set.
That should be all you need, unless you are in Wayland. In that case, you need to do it on the command line.
With the command line, or in Wayland
The kind people on
#gnome-hackers tell me that as of GNOME
Alt-Tab doesn't work on Wayland as in (2) above,
because the compositor captures the
Alt-Tab key when you type it
inside the dialog that prompts you for a keyboard shortcut. In that
case, you have to change the configuration keys directly instead of
using the GUI:
gsettings set org.gnome.desktop.wm.keybindings switch-applications "" gsettings set org.gnome.desktop.wm.keybindings switch-applications-backward "" gsettings set org.gnome.desktop.wm.keybindings switch-windows "['<Alt>Tab', '<Super>Tab']" gsettings set org.gnome.desktop.wm.keybindings switch-windows-backward "['<Alt><Shift>Tab', '<Super><Shift>Tab']"
Of course the above also works in X, too.
Changing windows across all workspaces
If you'd like to switch between windows in all workspaces, rather than
in the current workspace, find the
current-workspace-only GSettings key and change it. You can do this
dconf-editor, or on the command line with
gsettings set org.gnome.shell.window-switcher current-workspace-only true