Ole Jørgen Brønner
d7fa57592c
(empty) Minimap for all spaces!
...
Not hooked up to 'window-added/removed' so the map will be empty.
2017-09-27 21:26:08 +02:00
Tor Hedin Brønner
75220ee83d
Set a max protrusion when folded
...
Also use frame coordinates
2017-09-27 20:11:07 +02:00
Tor Hedin Brønner
e6af7c7a41
Basic fold with tons of hardcoded values
...
ref: #33
2017-09-27 19:46:35 +02:00
Ole Jørgen Brønner
9be97a5f36
Minimap prototype
...
NB: Only one workspace supported
Ref: #33
2017-09-27 18:43:53 +02:00
Ole Jørgen Brønner
5c28deb0e4
Copy-paste bugfix
...
(untested)
2017-09-27 14:35:35 +02:00
Ole Jørgen Brønner
17053b2ab5
Don't position windows on non-integer pixel positions
...
Results in blurry content.
Maybe we want to enforce this in `move`/`move_to` too?
2017-09-27 13:15:35 +02:00
Tor Hedin Brønner
b6447a2f4c
Use minimum for delay calculation
...
Returns NaN when margin_lr is largen than stack_margin obviously.
2017-09-27 13:08:24 +02:00
Tor Hedin Brønner
a6e646127b
Make a minimumMargin property for maximize and ensure
...
Maximize using `minimumMargin` so a high `margin_lr` will not interact with
maximize. Also use it to determine if a window should be pushed into the
viewport using the regular horizontal margins.
(Also let `primary` be a global, it breaks eval of basically everything)
2017-09-27 11:55:00 +02:00
Tor Hedin Brønner
77a4e432d4
Position the first window on a workspace correctly
2017-09-26 15:28:03 +02:00
Tor Hedin Brønner
c4f14d495e
Remove alignment on animation overwrite
...
Caused some weirdness when going back and forth fast, and didn't seem to do
anything useful.
2017-09-26 14:31:48 +02:00
Ole Jørgen Brønner
ced00ebcb3
Don't enable() more than once. Workaround until disable is implemented
...
The extension sometimes go through multiple init -> enable -> disable cycles at
login or gnome-shell-restart.
This is especially problematic as we don't yet implement `disable`. Note that
`init` is **also** called multiple times when this happens..
Fixes #30
2017-09-26 13:30:37 +02:00
Tor Hedin Brønner
2964ab3d90
Use setInitialPosition for positioning existing windows too
...
Also set update `selectedWindow` correctly.
2017-09-26 13:28:25 +02:00
Tor Hedin Brønner
555cf7fe6b
Hook up focus_wrapper on first-frame for new windows
...
This properly fixes the raciness between `setInitialPosition` and
`ensure_viewport` on first `focus`.
Also positions new focused windows properly by moving the frame before we
ensure.
2017-09-26 12:57:47 +02:00
Tor Hedin Brønner
0e182d6b1d
Use move_to for initial positioning
...
Makes opening windows in the background less jumpy, eg. when emacs starts its
position at the left of the screen for a moment before jumping to it's initial
position.
2017-09-26 11:22:19 +02:00
Tor Hedin Brønner
7f9f43b5b0
Refactor setInitialPosition out of first-frame and focus
...
A bit hacky, but seems to work, and will actually clean up after itself (the old
disconnect didn't work as we know).
2017-09-26 00:35:38 +02:00
Tor Hedin Brønner
9b5f4e0a4a
Refactor insertWindow out of add_handler
2017-09-25 18:47:22 +02:00
Tor Hedin Brønner
89f4cf9f3d
Align the window frame to the actor when overwriting animations
...
Should decrease jumpiness
2017-09-25 18:09:38 +02:00
Tor Hedin Brønner
393339fa5a
Fix silly regression, wrong argument ordering
2017-09-25 18:01:28 +02:00
Tor Hedin Brønner
7282d3ef79
Shouldn't be necesarry to force here
...
It might have caused some jumpiness on early release, though not sure how.
2017-09-25 15:52:39 +02:00
Tor Hedin Brønner
fe9c2bb9e3
Remove obsolete code
...
Navigation and moving is handled by `PreviewedWindowNavigator` now.
2017-09-25 14:43:11 +02:00
Tor Hedin Brønner
6f4a77e4bc
Also set selectedwindow on restart
2017-09-25 13:49:08 +02:00
Tor Hedin Brønner
f25a023047
Run relayout on restart
2017-09-25 11:56:18 +02:00
Tor Hedin Brønner
4c6456df18
When adding scratch windows make them above
2017-09-25 11:49:53 +02:00
Tor Hedin Brønner
d2b8e5771b
Only force ensure when we reorder the space
2017-09-25 11:17:54 +02:00
Tor Hedin Brønner
c215761b7c
Refactor move_to out of ensure_viewport
...
Use `move_to` when adding already existing windows to a workspace.
2017-09-25 11:05:17 +02:00
Tor Hedin Brønner
cc9d59c6ea
Refactor ensure_viewport to take an explicit space argument
2017-09-25 11:05:17 +02:00
Ole Jørgen Brønner
37731b7cc6
Notes: More keybindings (eg. modifier-only keybindings)
2017-09-25 00:15:41 +02:00
Tor Hedin Brønner
269d91bc07
Fall back to focus_window when selectedWindow isn't set
...
`selectedWindow` won't be set when we restart.
2017-09-24 23:42:54 +02:00
Tor Hedin Brønner
db19967416
Use space.selectedWindow to pick the starting point of navigation
...
This makes it possible to navigate the tiling while the scratch layer is
focused.
2017-09-24 22:32:58 +02:00
Ole Jørgen Brønner
9f8438e1e0
Remove obsolete LiveWindowNavigator
...
Superseded by PreviewedWindowNavigator. We don't need both, and if want
navigation without minimap we can just make a flag
2017-09-24 20:44:04 +02:00
Tor Hedin Brønner
c4439cdaa6
Declare margin and gaps in schema
...
Makes it possible to customize in dconf.
2017-09-24 20:39:38 +02:00
Ole Jørgen Brønner
6eaa8333f9
Use hardcoded actions in PreviewedWindowNavigator
2017-09-24 20:33:21 +02:00
Ole Jørgen Brønner
1e34d37100
Integrate move-right/left into PreviewedWindowNavigator
...
Works towards #2
2017-09-24 20:00:10 +02:00
Ole Jørgen Brønner
b1ee11e579
Global reference to extension object
2017-09-24 18:12:43 +02:00
Ole Jørgen Brønner
ca35cf2595
Rename + store action ids for the rest of our custom actions too
2017-09-23 23:28:09 +02:00
Ole Jørgen Brønner
deb9492e9d
Use our own keybinding-actions to switch next/previous window in the space
...
NB: The user need to reset the switch-windows and switch-windows-backward
bindings using eg. dconf-editor
See the notes.org changes for some insight in why certain things is changed.
2017-09-23 23:16:46 +02:00
Ole Jørgen Brønner
67c5dd0b94
Don't ensure null window (when last window-removed)
...
Also include worspace index in window-added/removed log.
2017-09-23 20:24:57 +02:00
Tor Hedin Brønner
ce1642718e
Animate windows moving between workspaces
...
Use ensure when the window has focus, and just move when not.
TODO: propogate the changes properly when using `move`. This shuold really be
done by having a proper `insertWindow` function which fully handles positioning
of new windows, inserting them to the foreground or background approriately.
2017-09-23 19:31:06 +02:00
Tor Hedin Brønner
dc4b1e7663
Fix "typo"
2017-09-23 19:21:53 +02:00
Tor Hedin Brønner
cf7f0e868b
window-removed: don't ensure windows that aren't part of the space
2017-09-23 17:08:17 +02:00
Tor Hedin Brønner
f724ab372f
Add detach utility function which can be called from lg
2017-09-23 16:59:12 +02:00
Tor Hedin Brønner
219c774c8a
Delete obsolete margin variable/state
2017-09-23 16:14:23 +02:00
Tor Hedin Brønner
5be8617543
Make centering a proper case when moving windows into view
...
Centering shouldn't be implemented by mutating `margin`, but be its own case of
course. (can drop `margin` here now).
2017-09-23 15:55:33 +02:00
Tor Hedin Brønner
30637ddfbe
We should center based on margin_lr too
...
`margin_lr` can be used for eg. always center mode, by setting it to half the
monitor width, or just having active windows always be eg. 20% off the monitor
edge.
2017-09-23 15:38:35 +02:00
Tor Hedin Brønner
ab9e9ec0b0
Handle primary monitor changes
2017-09-23 15:22:58 +02:00
Tor Hedin Brønner
e2bbccbf77
Animate the top bar using scale_y instead of position
...
Fixes #27
2017-09-23 14:06:40 +02:00
Tor Hedin Brønner
481c351d2e
Add some missing monitor offsets
2017-09-23 13:41:35 +02:00
Ole Jørgen Brønner
6f5baa2ed7
Minor: remove obsolete/ill-positioned comment
2017-09-23 11:51:24 +02:00
Ole Jørgen Brønner
0d1fc33d98
Update selectedWindow when a window in a inactive WS is closed/moved
2017-09-23 11:29:01 +02:00
Ole Jørgen Brønner
ac62fa75ae
Bugfix: focus_window is null when activities/overview is open
...
Caused windows opened from activities to be opened as scratch/sticky windows.
2017-09-23 11:27:11 +02:00