Commit graph

962 commits

Author SHA1 Message Date
Johan Malm
a1d93cc97c layers: position each layer_tree correctly relative to its output 2022-03-02 20:21:57 +00:00
Johan Malm
bd9ac3478a Remove src/damage.c 2022-03-01 20:54:52 +00:00
Johan Malm
e289100a54 xwayland-unmanaged: fix dereference NULL pointer bug
Discovered when right-clicking names in hexchat
2022-03-01 20:45:31 +00:00
Johan Malm
36570856fe README.md: add sfwbar to suggested apps 2022-03-01 20:42:55 +00:00
Johan Malm
265f25d1cd NEWS.md: fix typo 2022-03-01 20:42:00 +00:00
Johan Malm
e4a8672b05 NEWS.md: align with https://keepachangelog.com/
- Re-add details for 0.1.0 - 0.4.0
- Add 0.5.1-unreleased notes
- Split sections into change-types, for example "added" and "changed"
- Describe current branches
- Add lines-of-code to the summary table
2022-02-28 23:06:28 +00:00
Johan Malm
c0f369aafb Enable presentation time 2022-02-28 22:30:36 +00:00
Johan Malm
cec0c5cee6 desktop.c: set *view_area right for layer-popup 2022-02-26 23:30:02 +00:00
Johan Malm
49e8658a7b layer: support popups 2022-02-26 22:36:16 +00:00
Johan Malm
2891ff245e Add node-descriptor for wlr_scene_nodes
Support identification of wlr_scene_node role to enable simplification
of codebase including the avoidance of iterating over lists of
layer-surface, menuitems, and so on.

Use node-descriptors for xdg toplevels and popups
2022-02-26 22:35:51 +00:00
Consolatis
4c981b845f include/ssd.h remove unnecessary struct definition
Instead, just tag the struct so we can reference it.
2022-02-25 21:52:10 +00:00
Consolatis
5f62f2ba99 xwayland.c: Fix positioning with multiple queued configure events
Prevents a single action like ToggleDecorations + ToggleMaximize to
position the view somewhere with negative coordinates when unmaximizing.

It may still position the view on negative coordinates but later commit
events will fix the position. This issue only exists on xwayland because
there are no configure serials which we could use to ignore all
repositioning until we are at the latest desired state.
2022-02-25 21:51:40 +00:00
Consolatis
00ff00d9f9 [style] use __func__ in log message 2022-02-24 21:17:51 +00:00
Consolatis
9c4bacc9b7 [style] fix open brace after function definition 2022-02-24 21:17:51 +00:00
Consolatis
953e8a4f9d [style] rename action() to actions_run() 2022-02-24 21:17:51 +00:00
Consolatis
7d98bc7aa2 ssd/ssd_titlebar.c: Only store title state if title has been changed 2022-02-24 06:56:25 +00:00
Consolatis
c033667716 src/ssd/: Don't access view->surface->current directly
Instead use view->{w,h} which are set on client commit
2022-02-24 06:56:25 +00:00
Johan Malm
f4c9d1ba9f Set node position in xdg/xwayland commit handlers
...in order to sync resize/move events to avoid left/bottom edge wobbling
when resizing with top/left resize edges
2022-02-23 22:39:57 +00:00
Johan Malm
581a2bb2f1 cursor+keyboard: chase wlroots master
Use wlr_input_device from input device base.
Use wlr_keyboard where possible.
2022-02-23 22:19:16 +00:00
Consolatis
29021dad6a xdg/xwayland: Do not destroy scene node on unmap
This prevents segfaulting when unminimizing
2022-02-23 21:47:01 +00:00
Consolatis
c2f7e0be3d debug.c: try to id important elements 2022-02-23 21:47:01 +00:00
Consolatis
17d83402ee xwayland.c: Fix xwayland views activating themself before mapping 2022-02-23 21:47:01 +00:00
Consolatis
a2523081e2 Handle 'lost' unmanaged xsurfaces + improve cursor handling 2022-02-23 21:47:01 +00:00
Consolatis
5862b65f89 Convert SSD to scene nodes 2022-02-23 21:47:01 +00:00
Consolatis
f2d40a8d69 Scene Menu 2022-02-23 21:47:01 +00:00
Johan Malm
f26b61137d layers.h: define LAB_NR_LAYERS (4) 2022-02-23 21:47:01 +00:00
Johan Malm
6488b933fa layers.c: set output->usable_area 2022-02-23 21:47:01 +00:00
Consolatis
044388a5cd Prepare to move from wlr_texture to lab_data_buffer 2022-02-23 21:47:01 +00:00
Consolatis
7ea733761b Use view->scene_tree as toplevel for view + some legwork:
desktop.c move_to_front() calls wlr_scene_node_raise_to_top
desktop.c, ssd/include.h add LAB_SSD_{OSD, MENU, LAYER_SURFACE} enums
desktop.c desktop_surface_and_view_at() -> desktop_node_and_view_at()
cursor.c reenable cursor_rebase()
cursor.c reenable button click on layer surface
2022-02-23 21:47:01 +00:00
Johan Malm
688abf7db1 Handle layers under the scene-graph API
This excludes popups.
2022-02-23 21:47:01 +00:00
Johan Malm
9fed8e0998 Handle popups under xdg-toplevels in xdg-popup.c
...to make it easier to deal them separetely from layer-shell popups
2022-02-23 21:47:01 +00:00
Johan Malm
177c130183 build: set 'check: false' on run_command
Future meson releases will change the default, so we explicitly set
check: false to maintain behaviour
2022-02-23 21:47:01 +00:00
Johan Malm
b79744e7b0 Chase wlroots master
We need it for wlr_scene_layer_surface_v1_create()
2022-02-23 21:47:01 +00:00
Johan Malm
04ca9fbdf5 buffer: use cairo_surface_destroy()
...rather than free(buffer->data)
2022-02-23 21:47:01 +00:00
Johan Malm
f22bfc96b2 buffer: create cairo_t inside buffer_create() 2022-02-23 21:47:01 +00:00
Johan Malm
ba909e4fc7 Refactor buffer implementation to take a cairo_t
Remove buffer_drop() and just destroy it.
2022-02-23 21:47:01 +00:00
Johan Malm
ebabc066ba xwayland: in map() use wlr_scene_subsurface_tree_create() 2022-02-23 21:47:01 +00:00
Johan Malm
4593909744 osd: destroy old osd_tree children 2022-02-23 21:47:01 +00:00
Johan Malm
5934ed6682 Add debug_dump_scene()
Dump view_tree and osd_tree on calling debug-action. Example bind:

<keybind key="A-F12">
  <action name="Debug"></action>
</keybind>
2022-02-23 21:47:01 +00:00
Johan Malm
532656ad5b Use wlroots scene-graph API
Move xdg-shell and xwayland-shell surfaces to new API

Also render alt-tab on-screen-display by converting cairo-surface to
wlr_buffer
2022-02-23 21:46:48 +00:00
Johan Malm
d2552232c7 Add buffer.c to cover cairo-surface to wlr_buffer 2022-02-23 21:41:01 +00:00
Johan Malm
3d6e942eee README.md: add link to IRC channel 2022-02-20 15:02:53 +00:00
Johan Malm
1baf5cb9b8 README.md: fix typo (issue #248) 2022-02-20 15:02:08 +00:00
Johan Malm
68d897e1f5 NEWS.md: add notes on 0.5.0 2022-02-18 21:54:07 +00:00
Johan Malm
b7818df434 build: bump version to 0.5.0 2022-02-18 21:24:38 +00:00
hype3
9ba2a4fd4b Update README.md 2022-02-17 18:45:41 +01:00
hype3
603280bd89 Update README.md 2022-02-17 17:45:05 +01:00
Johan Malm
588f233151 output: render overlay lay popups
This enables sfwbar popups and fixes issue #239

https://github.com/LBCrion/sfwbar
2022-02-13 09:45:42 +00:00
ARDiDo
7c437eac2f OSD: Use separate OSD texture for each output 2022-02-09 21:57:32 +00:00
ARDiDo
049b84409e OSD: Scale OSD to the largest output scale 2022-02-09 21:57:32 +00:00