Tor Hedin Brønner
1a74a7eaef
tiling: Make signal control a bit easier
2018-04-13 18:50:42 +02:00
Tor Hedin Brønner
e894c45e7f
Push minimized windows to the scratch layer
...
TODO: Push to the bottom of the stack instead of the top
2018-04-12 22:52:33 +02:00
Tor Hedin Brønner
a66d8fc4e7
scratch: When detaching/attaching windows also show/hide the scratch layer
...
Attaching and detaching windows could be somewhat disorienting. Eg. making the
focused window hidden by other floating windows when attaching the current
window to the tiling.
2018-04-12 20:11:50 +02:00
Tor Hedin Brønner
83fb20eb6a
scratch: Add show/hide functions
2018-04-12 20:06:33 +02:00
Tor Hedin Brønner
030b030eab
topbar: Handle visibility correctly when fullscreen is toggled
2018-04-12 17:04:54 +02:00
Tor Hedin Brønner
0c7f454878
topbar: Refactor signal tracking
2018-04-12 17:04:49 +02:00
Tor Hedin Brønner
1d8af9cc97
Move previewWorkspace to navigator
2018-04-12 17:00:26 +02:00
Tor Hedin Brønner
efa637fc63
Move PreviewedWindowNavigator into new navigator module
2018-04-09 15:19:07 +02:00
Tor Hedin Brønner
83c2428507
disable -> enable: Reuse the old ordering if available
...
This is useful in the case of nothing changing between a disable and enable. For
instance when locking the screen. Having windows move around in that case is
pretty bad.
We do create a new spaces however as we want to support editing the `Space`
definition and getting the changes when we do a reload (this should work as long
as `Space` is an Array).
2018-04-09 15:19:07 +02:00
Tor Hedin Brønner
666aac0411
Move tiling specific enable functionality to tiling
2018-04-09 15:19:07 +02:00
Tor Hedin Brønner
6857d4f702
Don't execute toggle-scratch-layer when previewing windows
...
It doesn't make much sense to show the scratch layer when previewing. In
addition if using `super+escape` as the binding this makes it impossible to
abort the preview.
In the long run it's probably better to make a whitelist of bindings that's
appropriate to execute while a preview is active.
2018-04-06 14:23:34 +02:00
Tor Hedin Brønner
ec10e4baae
Hide the application button when previewing workspaces
...
This reduces the jumpiness caused by different workspace name length.
2018-04-06 13:50:12 +02:00
Tor Hedin Brønner
425f4077d1
bindings: Add Ctrl bindings for moving windows
2018-04-05 17:41:38 +02:00
Tor Hedin Brønner
d6de1585d6
topbar: Access the activities label in a more straightforward way
2018-04-05 13:56:44 +02:00
Tor Hedin Brønner
205cb781ff
tiling: move init, enable and disable to the top
...
This is a lot clearer
2018-04-04 14:26:32 +02:00
Tor Hedin Brønner
8366c15925
Move top bar specific code from tiling to topbar
2018-04-04 14:24:27 +02:00
Tor Hedin Brønner
769142f727
Repurpose the activity label as a worspace indicator
...
Introduces a topbar module.
2018-04-04 13:39:41 +02:00
Tor Hedin Brønner
6e198425e7
minimap: remove noisy and useless debug print
2018-04-04 05:45:17 +02:00
Tor Hedin Brønner
a7861474d5
Ensure parents of transient windows
...
ref #40
Also return if we're dealing with a window in the scratch layer.
2018-03-29 15:00:59 +02:00
Ole Jørgen Brønner
f3eb2b7b88
Fix change-workspace abort
...
Pressing <meta>-ESC will now abort workspace changes the same way window changes
are aborted
Probably fixes #37 too (untested since <super>-TAB is restricted to active workspace
atm.)
2018-03-29 14:53:59 +02:00
Tor Hedin Brønner
9351bf8607
Fix left over spaces._spaces references
2018-03-22 09:51:08 +01:00
Tor Hedin Brønner
2223ca20af
Disable default '<super>escape' binding
2018-03-22 05:28:38 +01:00
Tor Hedin Brønner
da64d0fcf9
scratch: Show top bar when a floating window is open
2018-03-16 21:31:51 +01:00
Tor Hedin Brønner
1e1506abb1
Don't disconnect focus when moving windows between spaces
2018-03-12 17:17:32 +01:00
Tor Hedin Brønner
ccf59e8a6b
Don't access label after it's destroyed
2018-03-11 22:16:14 +01:00
Tor Hedin Brønner
a00517b209
Don't connect the focus signal more than once
...
Resetting the `focus_signal` on reload should work, but it's better to just
handle it with `init`.
2018-03-11 22:03:17 +01:00
Tor Hedin Brønner
633af3a0df
Run scratch layer heuristic for all windows on startup
...
Since `add_filter` will filter out «stuck» windows the heuristic wasn't run on
any possible scratch windows (since most floating scratch windows are «stuck»).
2018-03-11 20:07:45 +01:00
Tor Hedin Brønner
cfe253a0fa
Handle scratch windows on focus
...
In particular we want to set `above` as it gets unset on minimize.
2018-03-11 19:13:08 +01:00
Tor Hedin Brønner
e4d1226100
focus handling: Add focus handler to all windows
...
Also set selectedWindow in `ensure_viewport`, as this avoids setting
selectedWindow on any windows not in a space.
2018-03-11 19:12:18 +01:00
Tor Hedin Brønner
dbc0a9ce70
Simplify and move focus_wrapper
2018-03-11 19:10:53 +01:00
Tor Hedin Brønner
5b01fbab68
spaces: Simplify structure
...
Make the spaces object a `Map`.
2018-03-11 18:33:22 +01:00
Tor Hedin Brønner
96b395efc3
spaces: Actually use Map
...
Somewhat long standing bug, where we introduced `Map`, but actually just used it
as a regular object.
2018-03-11 18:27:50 +01:00
Tor Hedin Brønner
a7b2bc11ef
Use class for Space, instead of function
2018-03-11 18:16:22 +01:00
Tor Hedin Brønner
e7e24c842d
ensure: Remove delay
...
Since we're now raising the target window immediately there's little use for
this delay.
2018-03-10 23:16:56 +01:00
Tor Hedin Brønner
b26d5fda1a
alt-tab: Restrict to the current workspace
2018-03-10 22:37:32 +01:00
Tor Hedin Brønner
def0d6c47c
isScratchWindow: don't fail on null
...
Silly regression
2018-03-10 22:09:53 +01:00
Tor Hedin Brønner
d80e2eacc6
scratch: Use an explicit marker for floating windows
...
On startup we use a heuristic to figure out which windows should float in the
scratch layer, but from then on we simply check if the window is marked as
floating.
NB: Since `above` is reset when a window is minimized there's no guarantee that
a floating window will be above when visible.
2018-03-10 20:42:00 +01:00
Tor Hedin Brønner
32cca42def
Use makeScratch when adding windows to the scratch layer
2018-03-10 20:21:54 +01:00
Tor Hedin Brønner
cc8cfac71c
add_filter: Add missing startup argument
2018-03-10 19:50:50 +01:00
Tor Hedin Brønner
9c4b53c306
startup: Don't make windows scratch based on current focus
...
This fixes a bug where all windows will be moved to the scratch layer if it's in
focus when doing a restart.
2018-03-07 16:39:37 +01:00
Tor Hedin Brønner
4e5007e544
bindings: Don't overwrite already registered actions
2018-02-26 20:26:33 +01:00
Tor Hedin Brønner
2b6a406071
scratch: Simplify scratch menu
2018-02-26 13:32:13 +01:00
Tor Hedin Brønner
9191f0677f
binding: <super><shift>tab should be reversed
2018-02-25 10:36:40 +01:00
Tor Hedin Brønner
47dc3298d7
Bind <super>above_tab to previous-workspace
2018-02-25 10:36:40 +01:00
Tor Hedin Brønner
1e3b841f94
Add compiled schema
...
Makes it less likely to trigger crashes due to missing schema keys. Also makes
it easier to install for other people.
2018-02-25 10:36:40 +01:00
Tor Hedin Brønner
fa0a0db195
Add scratch window toggle
...
Binding `<Super><Ctrl>Escape>`.
Schema change
2018-02-25 10:36:40 +01:00
Tor Hedin Brønner
769b66307d
Load rc file on enable
2018-02-25 10:36:40 +01:00
Tor Hedin Brønner
419a7d682c
propagate_forward: x is monitor relative
2018-02-25 10:36:40 +01:00
Tor Hedin Brønner
2ba2f64566
Reset leftOverlay when all windows are visible
2018-02-25 10:36:40 +01:00
Ole Jørgen Brønner
17c4d5ae4b
Notes keybinding system
2018-02-24 22:28:30 +01:00