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
Tor Hedin Brønner
0177bf6770
Use a windows destination when ensuring it's in view
...
This makes it possible to «peak» by quickly doing `super-<>` or `super-><`.
2018-02-19 07:54:41 +01:00
Tor Hedin Brønner
fc453fb7a7
Automate module init/enable/disable
2018-02-17 21:52:46 +01:00
Tor Hedin Brønner
c0a65058b8
Add a kludge module to monkey patch around gnome shell oddities
2018-02-17 21:52:31 +01:00
Tor Hedin Brønner
4d9c75ca71
Sort the stack by distance and then mru
...
O(`max`*`space.length`) ~ O(`space.length`) for finitely wide screens. Doesn't
seem like there's a large performance penalty to decide ties between
equidistant windows using the mru, instead of deciding ties by sorting on
left/right.
2018-02-17 21:16:27 +01:00