Ryan Dwyer
02d385e06f
Use swayc rather than wlr_output when rendering
2018-06-01 23:14:58 +10:00
Ryan Dwyer
3281574fa3
Remove check for if floating view intersects output
2018-06-01 23:14:58 +10:00
Ryan Dwyer
7d2b33a458
Render floating views before top layer and unmanaged
2018-06-01 23:14:58 +10:00
Ryan Dwyer
e4e912ea91
Store swayc coordinates as layout-local
2018-06-01 23:14:58 +10:00
Ryan Dwyer
dc83b158e1
Fix issues with sticky containers and workspaces
...
* Attach sticky containers to new workspaces when switching
* Fire the close event *before* we start destroying the workspace to
prevent a crash
Because the sticky container now follows the visible workspace, this
simplifies the rendering and container_at logic.
2018-06-01 23:14:58 +10:00
Ryan Dwyer
754cb7944c
Respect view's border config for floating containers
2018-06-01 23:14:58 +10:00
Ryan Dwyer
aaba7642b3
Replace is_floating boolean with function
2018-06-01 23:14:58 +10:00
Ryan Dwyer
34f35f0bad
Use L_FLOATING instead of reapable boolean
2018-06-01 23:14:58 +10:00
Ryan Dwyer
1f2e399ade
Implement floating
2018-06-01 23:14:58 +10:00
Drew DeVault
71db8de4be
Render floating views
2018-06-01 23:14:58 +10:00
Brian Ashworth
205a1732cf
Force fullscreen views to be fully opaque
2018-05-28 13:55:38 -04:00
Ryan Dwyer
f6c3682c05
Use constants for titlebar dimensions
2018-05-22 08:27:42 +10:00
Ryan Dwyer
664169fbf1
Implement stacked layout
2018-05-22 08:27:24 +10:00
Ryan Dwyer
048b29527b
Pre-multiply alpha for tab decorations
2018-05-21 20:16:56 +10:00
Ryan Dwyer
90607dc329
Add left/right borders to tabs
2018-05-21 20:16:56 +10:00
Ryan Dwyer
5ab4930185
Fix tab border issues
2018-05-21 20:16:56 +10:00
Ryan Dwyer
efc07fb3d4
Don't track damage for views on inactive tabs
2018-05-21 20:16:56 +10:00
Ryan Dwyer
c08f9bf257
Implement tabbed layout
2018-05-21 20:16:56 +10:00
Brian Ashworth
750a497a8b
Pre-multiply alpha for non-textures
2018-05-20 09:33:47 -04:00
Konstantin Pospelov
fcc11f9771
Fix pixel bar below title
...
This commit changes how the left and right indents are calculated for the
title bottom pixel bar, so that it is displayed properly in case the left or
right border is hidden.
2018-05-19 18:39:01 +03:00
Ryan Dwyer
f0212d66ee
Update marks textures on output scale event
2018-05-17 08:29:14 +10:00
Ryan Dwyer
ebb0d051db
Fix many border opacity issues
2018-05-17 08:29:14 +10:00
Ryan Dwyer
0e2cc0af30
Implement show_marks
2018-05-17 08:29:14 +10:00
emersion
79e970d86e
Correctly clip title texture if necessary
2018-05-15 08:38:28 +01:00
Brian Ashworth
9ba0dca7ba
Merge branch 'master' into fix-1975
2018-05-14 09:06:23 -04:00
Brian Ashworth
77b42ec821
Always render top border for border normal
2018-05-14 09:04:18 -04:00
emersion
95a10dd4f3
Kill wl_shell
2018-05-14 13:26:10 +01:00
Brian Ashworth
6ff7c52736
Fix titles and detect edges for hide_edge_borders
2018-05-14 00:20:34 -04:00
Brian Ashworth
2adf23c2a3
Only count views for hide_edge_borders smart
2018-05-12 12:56:26 -04:00
Brian Ashworth
e3625d8f33
Count descendant views for hide_edge_borders smart
2018-05-12 12:37:48 -04:00
Brian Ashworth
3db7fc2bb2
Implement hide_edge_borders
2018-05-11 18:44:56 -04:00
Ryan Dwyer
83e314bf51
Highlight all child borders when using focus parent
2018-05-11 09:20:46 +10:00
emersion
44fcc06efd
Fix damage tracking on HiDPI
2018-05-10 23:22:00 +01:00
emersion
90614f3a63
Accumulate surface damage even if whole=true
2018-05-10 23:03:51 +01:00
emersion
bec80f1551
Damage borders when damaging view
2018-05-10 23:03:50 +01:00
emersion
98f7ee8f59
Render borders with damage
2018-05-10 23:03:50 +01:00
emersion
c8a9ea3903
Implement full damage tracking
2018-05-10 23:02:37 +01:00
Ryan Dwyer
4922d269b8
Fix titles on rotated outputs
...
If the output is rotated, the scissor box needs to be transformed in the
opposite rotation.
2018-05-09 16:41:54 +10:00
Ryan Dwyer
e83e5487be
Use scissor to render title texture
...
This allows the title's texture to always be the full width of the text,
and clipped at render time according to the desired width (eg. tabs...).
As an added bonus, the texture no longer needs to be updated when
containers are arranged.
2018-05-05 20:32:31 +10:00
Ryan Dwyer
b667298a0a
Render titles
2018-05-03 15:12:00 +10:00
Ryan Dwyer
daab8e3503
Support alpha in border colours
...
The alpha component is merged with the container's opacity.
Completes #1882 .
2018-05-02 08:40:38 +10:00
Ryan Dwyer
a19a511b90
Implement indicator border
2018-05-01 19:21:29 +10:00
Ryan Dwyer
d847ac1120
Scale borders according to output scale
2018-05-01 18:35:58 +10:00
Ryan Dwyer
e67f354333
Implement borders
...
Implements rendering of borders. Title text is still to do.
Implements the following configuration directives:
* client.focused
* client.focused_inactive
* client.unfocused
* client.urgent
* border
* default_border
2018-04-30 21:24:13 +10:00
Ryan Dwyer
167c2e1aa9
Refactor arrange_windows()
...
Replaces arrange_windows() with arrange_root(), arrange_output(),
arrange_workspace() and arrange_children_of().
Also makes fullscreen views save and restore their dimensions, which
allows it to preserve any custom resize and is also a requirement for
floating views once they are implemented.
2018-04-28 11:26:14 +10:00
Ryan Dwyer
4d2b3fc950
Render unmanaged xwayland views when an xwayland view is fullscreen
...
This makes Chromium and Firefox context menus appear when fullscreen.
2018-04-23 09:20:19 +10:00
Ryan Dwyer
6afccd07d9
Add TODO about rendering fullscreen views smaller than the output
2018-04-20 08:12:03 +10:00
Ryan Dwyer
bd67342bdc
Don't render top layer when fullscreen.
2018-04-20 08:08:34 +10:00
Ryan Dwyer
9715e38ca8
render_output(): When fullscreen, clear to black and don't render background
2018-04-19 13:01:43 +10:00
Ryan Dwyer
8d06b222f0
Fullscreen rendering and input fixes.
...
* Render background when using fullscreen, because transparency.
* Check that fullscreen surface allows input.
* Don't look for surfaces in top layer if there's a fullscreen view.
2018-04-18 13:06:10 +10:00