Tor Hedin Brønner
b747d60e20
Use easeOutQuad for delayed the delayed window animations
...
Then we could remove the strange divide by two thing too.
2017-09-17 16:20:07 +02:00
Tor Hedin Brønner
a309776f37
Use somewhat proper delay calculation
...
This should in principle start the animation when the obscuring window have
moved margin - margin_lr frames, which is in the ballbark of what we want.
Had to divide the whole thing by two, not sure why that should've been necessary.
It might be better to use easeOutQuad though, since the other windows are
already moving.
2017-09-17 16:03:35 +02:00
Tor Hedin Brønner
e937745a65
Delete obsolete files
2017-09-17 14:20:43 +02:00
Tor Hedin Brønner
4d537d1647
Add license
2017-09-17 14:19:37 +02:00
Ole Jørgen Brønner
996a93b132
Use PreviewedWindowNavigator as primary next/prev action
2017-09-17 11:40:29 +02:00
Ole Jørgen Brønner
2478db8c75
PreviewedWindowNavigator: Don't wrap around when preview not visible
2017-09-17 11:35:31 +02:00
Tor Hedin Brønner
adbba75d52
Finally anchor the scaled position _properly_
...
Set the y pivot based on y_offset so we can specify the visible position of the
scaled window.
2017-09-17 11:21:55 +02:00
Tor Hedin Brønner
85d7dbc93c
Use the frame height to calculate scale
...
This make scaling and positioning windows with different buffer/frame deltas
consistent, and is what we actually want. ie. the height we're interested
setting is the height of the visible window (not the air around it).
2017-09-17 11:05:46 +02:00
Tor Hedin Brønner
d66c7129a8
Reduce the chance of windows passing through each other in the z-axis
...
When going to a scaled window set a tiny delay so the window to the left/right
have time to move out of the way before we `raise` and start the animation. The
animation time is reduced by the delay, so the animations should still finish at
the same time.
This isn't completely robust because it depends on the speed of window to the
left/right moves, which is determine by the width of the window we're ensuring.
2017-09-17 10:40:11 +02:00
Tor Hedin Brønner
770db65389
Use a static scaled height for windows stacked to the sides
...
This requires controlling the upper left/right most corner depending on which
side the window is stacked, ie. pivot points (0,0) and (1,0) respectively.
TODO: center fullscreen windows properly too
2017-09-17 00:23:18 +02:00
Tor Hedin Brønner
8728a57db7
TODO: make a proper github repo
2017-09-16 20:59:58 +02:00
Tor Hedin Brønner
071768969a
Fix: Add a gap properly when opening windows in the background
2017-09-16 20:08:15 +02:00
Ole Jørgen Brønner
d369476a9b
Bugfix/regression: two quick moves ended in invalid state
...
Second ensure is cancelled since animation isn't done yet. In effect it looks
like the move wasn't done.
2017-09-16 18:59:13 +02:00
Tor Hedin Brønner
4671d4c8f8
Add print debugging for the PreviewNavigator
...
Also use `this._switcherList.windows` instead of calling `_getWindowList`
again. (which might fix things, but probably not).
2017-09-16 16:18:50 +02:00
Ole Jørgen Brønner
f52289b5bb
Simple winprop system
...
Based on notion/ion3
'float' and 'oneshot' support atm.
2017-09-16 11:45:57 +02:00
Tor Hedin Brønner
0623284de9
Add debug filtering
...
Set `debug_all` to `false` and eg. `debug_filter["window-added"] = true` and
you'll only get output which starts with `window-added`
2017-09-15 21:45:03 +02:00
Tor Hedin Brønner
c3e08564c6
Add some convience globals
2017-09-15 19:48:19 +02:00
Ole Jørgen Brønner
ede4f10dfa
Select journal entries by executable
...
This will hopefully catch all relevant logs.
2017-09-15 18:46:48 +02:00
Tor Hedin Brønner
9c8986bc25
Only hide the statusbar when we're on a fullscreen window
2017-09-15 16:38:27 +02:00
Ole Jørgen Brønner
f252a62204
Notes: (minor)
2017-09-15 14:44:22 +02:00
Tor Hedin Brønner
7d030a40db
Support for tiling in new _static_ workspaces
...
Doesn't work with dynamic workspaces because they doesn't trigger the
`workspace-added` signal.
(Removed some superfluous logging)
2017-09-15 14:39:56 +02:00
Ole Jørgen Brønner
1c0e886bdd
Recover tiling order across gnome-shell restart
...
Notes:
- X11 ids isn't exposed(?) (MetaWindow.get_xwindow C only)
- No other stable id seems to be exposed (get_stable_sequence is not that
stable)
- Window title is too volatile (must persist order very frequently if used)
- Using the x position and stacking order seems to work (expect for windows that
take up 100% of the screen width)
2017-09-15 10:59:46 +02:00
Ole Jørgen Brønner
8ea4a9e3cf
Remove accidentally added file
2017-09-15 06:59:06 +02:00
Tor Hedin Brønner
38a9c9746a
Fix fullscreen position
...
`PreviewWindowNavigator` scrolling past fullscreen windows work perfectly too :)
2017-09-14 22:12:14 +02:00
Ole Jørgen Brønner
26c8f1ff77
Notes: How gjs imports works
2017-09-14 16:34:13 +02:00
Tor Hedin Brønner
d6e021e631
Regression: Don't set margin_lr globally in ensure_viewport
2017-09-14 11:53:13 +02:00
Tor Hedin Brønner
0ac8ba24c3
Don't don't ensure window is in view on first-frame
...
Only position the new inactive window correctly, we should never move the
focused window without also moving focus, or some explicit move/resize action.
2017-09-14 11:31:56 +02:00
Tor Hedin Brønner
a911459b65
Robust initial position via. first-frame signal
...
`focus` runs before `first-frame` which means we need to set initial position
there to make sure that `ensure_viewport` works correctly.
2017-09-14 11:19:30 +02:00
Ole Jørgen Brønner
d79af41297
Notes: bug
2017-09-14 11:15:54 +02:00
Tor Hedin Brønner
150f9ee242
Bug, not sure if valid
2017-09-14 10:47:56 +02:00
Ole Jørgen Brønner
d8e6f4f7f9
Bugfix preview_navigate: parent constructor re-assigned _selectedIndex
2017-09-14 09:39:53 +02:00
Tor Hedin Brønner
2f831b6ec8
Add gnome-shell-mode to dir-locals
2017-09-14 09:27:10 +02:00
Ole Jørgen Brønner
88e1d82f87
Notes: "navigate-mode"
2017-09-14 08:28:44 +02:00
Ole Jørgen Brønner
d68be69df4
PreviewedWindowNavigator: Navigate tiling with preview-strip and live changes
...
Temporary bindings: <super><ctrl>,/.
Note: can probably unify this and LiveWindowNavigator making the preview
optional. We probably want some sort of extra decoration on the actual windows
even when the preview is shown too.
2017-09-14 07:45:07 +02:00
Ole Jørgen Brønner
16edfa97f1
Remove debug noise
2017-09-14 07:23:46 +02:00
Ole Jørgen Brønner
dd838977f1
Naming: FocusCycler -> LiveWindowNavigator
2017-09-14 07:10:07 +02:00
Ole Jørgen Brønner
e965f03d7b
notes
2017-09-14 06:57:39 +02:00
Ole Jørgen Brønner
fee16e1dde
notes
2017-09-14 05:47:13 +02:00
Ole Jørgen Brønner
10d6f56bed
.dir-locals.el: enable org-indent-mode
2017-09-14 05:40:55 +02:00
Tor Hedin Brønner
11724bac52
Don't log the timestamp as journald already handles it
2017-09-14 02:38:09 +02:00
Tor Hedin Brønner
eb95aeb12d
Pass the workspace into the propogate functions
...
Also don't rely on declaration hoisting in `ensure_viewport`.
(sooo hard apparently to debug the fact I didn't pass the workspace in the
recursive calls at first...)
2017-09-14 02:38:04 +02:00
Tor Hedin Brønner
0e7c0276ed
Fix alignment when closing the very first or last window
...
There's very little delay between `focus` and `window-removed` so there's no
jumpiness when running ensure twice.
2017-09-14 01:39:08 +02:00
Tor Hedin Brønner
cc31091574
A problem with the stacklevel for two maximized windows
2017-09-14 01:11:32 +02:00
Tor Hedin Brønner
e0b877431f
Add a bug
2017-09-14 00:29:42 +02:00
Tor Hedin Brønner
e0ab1619dd
Closed bug
2017-09-14 00:28:43 +02:00
Tor Hedin Brønner
acfb736e78
Use first-frame signal for initial positioning
2017-09-14 00:24:55 +02:00
Tor Hedin Brønner
9ca625d1f0
Add some comments and pull out the move_to function call
2017-09-14 00:13:19 +02:00
Tor Hedin Brønner
8313254e1f
Add robust first/last window detection
...
Also some general cleanup of `ensure_viewport`.
2017-09-14 00:00:10 +02:00
Tor Hedin Brønner
3b49bcc066
Refactor out the common move code in ensure_viewport
2017-09-13 23:39:11 +02:00
Tor Hedin Brønner
c67dec5ff6
Quick and dirty fix so that we're not double ensuring on focus
...
Keep track of what window we're moving into view, so we can abort subsequent
calls on the same window.
2017-09-13 23:30:12 +02:00