]>
git.mdlowis.com Git - proto/labwc.git/log
bi4k8 [Sun, 6 Mar 2022 04:45:39 +0000 (04:45 +0000)]
add wlr-output-power-management protocol
Johan Malm [Mon, 7 Mar 2022 21:24:33 +0000 (21:24 +0000)]
Update NEWS.md
Johan Malm [Mon, 7 Mar 2022 21:18:23 +0000 (21:18 +0000)]
view: show fullscreen views above top-layer
See https://github.com/LBCrion/sfwbar/issues/24
Johan Malm [Mon, 7 Mar 2022 20:59:54 +0000 (20:59 +0000)]
view: remove warning in view_move_resize()
Johan Malm [Mon, 7 Mar 2022 20:54:22 +0000 (20:54 +0000)]
layers: always unmap on destroy
This sets seat->focused_layer to NULL if appropriate.
Johan Malm [Sun, 6 Mar 2022 17:33:40 +0000 (17:33 +0000)]
Merge pull request #264 from labwc/scene-graph
Use wlroots scene-graph API
Johan Malm [Sun, 6 Mar 2022 17:12:00 +0000 (17:12 +0000)]
xdg: set node position on commit and configure
To avoid incorrect view position, for example on initial placement.
Johan Malm [Sun, 6 Mar 2022 17:06:14 +0000 (17:06 +0000)]
ssd: add top border
Raise border on top of (z-order) titlebar
Johan Malm [Sun, 6 Mar 2022 16:48:39 +0000 (16:48 +0000)]
layers: fix layer_popup_tree implementation
Johan Malm [Fri, 4 Mar 2022 20:25:04 +0000 (20:25 +0000)]
buffer.c: chase wlroots master
Include <wlr/interfaces/wlr_buffer.h>
https://gitlab.freedesktop.org/wlroots/wlroots/-/commit/
39b68ea47a661b1f7562ce283652de08f222b2be
Consolatis [Fri, 4 Mar 2022 03:38:06 +0000 (04:38 +0100)]
ssd: Disable resize extents while in maximized or fullscreen state
Johan Malm [Thu, 3 Mar 2022 18:20:16 +0000 (18:20 +0000)]
output: attach node-descriptors to node-trees
Johan Malm [Thu, 3 Mar 2022 17:56:38 +0000 (17:56 +0000)]
layers: put popups in separate node-tree
This allows popups to be rendered above views and other layers. Without
this, the popups of a layer-shell application in the bottom layer would
render below views, which does not seem right. For example, consider the
case of a panel with right-click popups.
Johan Malm [Thu, 3 Mar 2022 17:53:26 +0000 (17:53 +0000)]
layers: unconstrain popups correctly
...to show popups when using @Consolatis's example panel
https://github.com/Consolatis/wl_framework
Consolatis [Thu, 3 Mar 2022 03:33:33 +0000 (04:33 +0100)]
Convert menu to node_descriptors
Johan Malm [Wed, 2 Mar 2022 22:24:30 +0000 (22:24 +0000)]
node.c: use wlr_scene_node instead of node_descriptor
Johan Malm [Wed, 2 Mar 2022 22:05:41 +0000 (22:05 +0000)]
node.c: add helpers for returning structs from node data
Support returning the following structs:
- view from LAB_NODE_DESC_VIEW or LAB_NODE_DESC_XDG_POPUP
- lab_layer_surface form LAB_NODE_DESC_LAYER_SURFACE
- lab_layer_popup from LAB_NODE_DESC_LAYER_POPUP
Johan Malm [Wed, 2 Mar 2022 21:07:04 +0000 (21:07 +0000)]
Rename node-descriptor.c to node.c
...in anticipation of adding helpers like node_view_from_node()
Consolatis [Wed, 2 Mar 2022 20:28:44 +0000 (21:28 +0100)]
src/desktop.c: Fix label error
Fixes "a label can only be part of a statement
and a declaration is not a statement".
Consolatis [Wed, 2 Mar 2022 20:26:33 +0000 (21:26 +0100)]
debug.c: use node descriptors
Johan Malm [Wed, 2 Mar 2022 20:39:46 +0000 (20:39 +0000)]
layers: only define LAB_NR_LAYERS locally where needed
Johan Malm [Wed, 2 Mar 2022 20:29:29 +0000 (20:29 +0000)]
layers: s/arrange_layers/layers_arrange/
Because we like to start public function names with the name of the
file.
Move prototype from labwc.h to layers.h
Johan Malm [Wed, 2 Mar 2022 20:25:57 +0000 (20:25 +0000)]
layers: arrange layers on output-layout change
Johan Malm [Wed, 2 Mar 2022 20:23:20 +0000 (20:23 +0000)]
layers.c: fix coding style
Johan Malm [Wed, 2 Mar 2022 20:21:57 +0000 (20:21 +0000)]
layers: position each layer_tree correctly relative to its output
Johan Malm [Tue, 1 Mar 2022 20:53:34 +0000 (20:53 +0000)]
Remove src/damage.c
Johan Malm [Tue, 1 Mar 2022 20:45:31 +0000 (20:45 +0000)]
xwayland-unmanaged: fix dereference NULL pointer bug
Discovered when right-clicking names in hexchat
Johan Malm [Tue, 1 Mar 2022 20:42:55 +0000 (20:42 +0000)]
README.md: add sfwbar to suggested apps
Johan Malm [Tue, 1 Mar 2022 20:42:00 +0000 (20:42 +0000)]
NEWS.md: fix typo
Johan Malm [Mon, 28 Feb 2022 23:06:28 +0000 (23:06 +0000)]
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
Johan Malm [Mon, 28 Feb 2022 22:30:36 +0000 (22:30 +0000)]
Enable presentation time
Johan Malm [Sat, 26 Feb 2022 23:30:02 +0000 (23:30 +0000)]
desktop.c: set *view_area right for layer-popup
Johan Malm [Sat, 26 Feb 2022 21:15:52 +0000 (21:15 +0000)]
layer: support popups
Johan Malm [Fri, 25 Feb 2022 22:31:24 +0000 (22:31 +0000)]
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
Consolatis [Fri, 25 Feb 2022 20:54:02 +0000 (21:54 +0100)]
include/ssd.h remove unnecessary struct definition
Instead, just tag the struct so we can reference it.
Consolatis [Fri, 25 Feb 2022 20:31:21 +0000 (21:31 +0100)]
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.
Consolatis [Thu, 24 Feb 2022 01:34:21 +0000 (02:34 +0100)]
[style] use __func__ in log message
Consolatis [Thu, 24 Feb 2022 01:33:17 +0000 (02:33 +0100)]
[style] fix open brace after function definition
Consolatis [Thu, 24 Feb 2022 01:16:19 +0000 (02:16 +0100)]
[style] rename action() to actions_run()
Consolatis [Thu, 24 Feb 2022 00:37:19 +0000 (01:37 +0100)]
ssd/ssd_titlebar.c: Only store title state if title has been changed
Consolatis [Thu, 24 Feb 2022 00:27:29 +0000 (01:27 +0100)]
src/ssd/: Don't access view->surface->current directly
Instead use view->{w,h} which are set on client commit
Johan Malm [Wed, 23 Feb 2022 22:39:57 +0000 (22:39 +0000)]
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
Johan Malm [Wed, 23 Feb 2022 22:19:16 +0000 (22:19 +0000)]
cursor+keyboard: chase wlroots master
Use wlr_input_device from input device base.
Use wlr_keyboard where possible.
Consolatis [Wed, 23 Feb 2022 00:32:07 +0000 (01:32 +0100)]
xdg/xwayland: Do not destroy scene node on unmap
This prevents segfaulting when unminimizing
Consolatis [Tue, 22 Feb 2022 18:29:14 +0000 (19:29 +0100)]
debug.c: try to id important elements
Consolatis [Tue, 22 Feb 2022 09:01:49 +0000 (10:01 +0100)]
xwayland.c: Fix xwayland views activating themself before mapping
Consolatis [Tue, 22 Feb 2022 06:57:17 +0000 (07:57 +0100)]
Handle 'lost' unmanaged xsurfaces + improve cursor handling
Consolatis [Mon, 21 Feb 2022 02:18:38 +0000 (03:18 +0100)]
Convert SSD to scene nodes
Consolatis [Sat, 19 Feb 2022 01:05:38 +0000 (02:05 +0100)]
Scene Menu
Johan Malm [Sun, 20 Feb 2022 15:00:20 +0000 (15:00 +0000)]
layers.h: define LAB_NR_LAYERS (4)
Johan Malm [Sun, 20 Feb 2022 14:53:21 +0000 (14:53 +0000)]
layers.c: set output->usable_area
Consolatis [Thu, 17 Feb 2022 00:46:32 +0000 (01:46 +0100)]
Prepare to move from wlr_texture to lab_data_buffer
Consolatis [Thu, 17 Feb 2022 23:07:37 +0000 (00:07 +0100)]
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
Johan Malm [Sun, 20 Feb 2022 13:15:58 +0000 (13:15 +0000)]
Handle layers under the scene-graph API
This excludes popups.
Johan Malm [Sun, 20 Feb 2022 13:14:10 +0000 (13:14 +0000)]
Handle popups under xdg-toplevels in xdg-popup.c
...to make it easier to deal them separetely from layer-shell popups
Johan Malm [Mon, 14 Feb 2022 20:22:23 +0000 (20:22 +0000)]
build: set 'check: false' on run_command
Future meson releases will change the default, so we explicitly set
check: false to maintain behaviour
Johan Malm [Mon, 14 Feb 2022 20:20:16 +0000 (20:20 +0000)]
Chase wlroots master
We need it for wlr_scene_layer_surface_v1_create()
Johan Malm [Sun, 13 Feb 2022 21:59:14 +0000 (21:59 +0000)]
buffer: use cairo_surface_destroy()
...rather than free(buffer->data)
Johan Malm [Sun, 13 Feb 2022 13:00:26 +0000 (13:00 +0000)]
buffer: create cairo_t inside buffer_create()
Johan Malm [Sun, 13 Feb 2022 11:47:03 +0000 (11:47 +0000)]
Refactor buffer implementation to take a cairo_t
Remove buffer_drop() and just destroy it.
Johan Malm [Sat, 12 Feb 2022 22:13:36 +0000 (22:13 +0000)]
xwayland: in map() use wlr_scene_subsurface_tree_create()
Johan Malm [Sat, 12 Feb 2022 22:04:27 +0000 (22:04 +0000)]
osd: destroy old osd_tree children
Johan Malm [Sat, 12 Feb 2022 19:43:32 +0000 (19:43 +0000)]
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>
Johan Malm [Fri, 11 Feb 2022 23:12:45 +0000 (23:12 +0000)]
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
Johan Malm [Fri, 11 Feb 2022 22:19:05 +0000 (22:19 +0000)]
Add buffer.c to cover cairo-surface to wlr_buffer
Johan Malm [Sun, 20 Feb 2022 15:02:53 +0000 (15:02 +0000)]
README.md: add link to IRC channel
Johan Malm [Sun, 20 Feb 2022 15:02:08 +0000 (15:02 +0000)]
README.md: fix typo (issue #248)
Johan Malm [Fri, 18 Feb 2022 21:54:07 +0000 (21:54 +0000)]
NEWS.md: add notes on 0.5.0
Johan Malm [Fri, 18 Feb 2022 21:24:38 +0000 (21:24 +0000)]
build: bump version to 0.5.0
hype3 [Thu, 17 Feb 2022 17:29:55 +0000 (19:29 +0200)]
Update README.md
hype3 [Thu, 17 Feb 2022 16:35:28 +0000 (18:35 +0200)]
Update README.md
Johan Malm [Sun, 13 Feb 2022 09:45:42 +0000 (09:45 +0000)]
output: render overlay lay popups
This enables sfwbar popups and fixes issue #239
https://github.com/LBCrion/sfwbar
ARDiDo [Wed, 9 Feb 2022 21:38:07 +0000 (16:38 -0500)]
OSD: Use separate OSD texture for each output
ARDiDo [Sun, 6 Feb 2022 00:23:30 +0000 (19:23 -0500)]
OSD: Scale OSD to the largest output scale
Consolatis [Tue, 8 Feb 2022 00:19:24 +0000 (01:19 +0100)]
Reload environment on SIGHUP. Partly fixes #227
Johan Malm [Mon, 7 Feb 2022 16:53:37 +0000 (16:53 +0000)]
wlroots.wrap: use 0.15.1
Michael Weiss [Fri, 4 Feb 2022 20:17:05 +0000 (21:17 +0100)]
build: Relax the version constraint for wlroots to accept patch releases
Patch releases only contain backwards compatible changes (mainly bug
fixes) so we want to allow them. This fixes the build with the recently
released wlroots 0.15.1 and uses the same version constraints as other
projects that depend on wlroots (e.g., Sway).
Consolatis [Sat, 29 Jan 2022 20:49:00 +0000 (21:49 +0100)]
Add missing docs for mouse window snapping
Consolatis [Sat, 29 Jan 2022 17:36:56 +0000 (18:36 +0100)]
src/cursor.c: Reduce damage on button hover detection
Consolatis [Sat, 29 Jan 2022 16:52:16 +0000 (17:52 +0100)]
Use proper enum argument type for desktop_surface_and_view_at
Consolatis [Sat, 29 Jan 2022 16:46:17 +0000 (17:46 +0100)]
Move is_button() into src/ssd.c and make it public
ARDiDo [Sat, 29 Jan 2022 15:44:15 +0000 (10:44 -0500)]
CSD: Fix no fullscreen at startup in some applications without ssd
Consolatis [Thu, 27 Jan 2022 18:35:17 +0000 (19:35 +0100)]
src/output.c: fix debug flag for full frame damage
Consolatis [Wed, 26 Jan 2022 01:54:03 +0000 (02:54 +0100)]
Add WindowMenu button
Consolatis [Tue, 25 Jan 2022 23:07:10 +0000 (00:07 +0100)]
Add window menu
Consolatis [Tue, 25 Jan 2022 09:17:43 +0000 (10:17 +0100)]
src/ssd.c: Clarify button dimension calculations
ARDiDo [Mon, 24 Jan 2022 22:57:35 +0000 (17:57 -0500)]
xwayland: Allow xorg applications to start in fullscreen
Johan Malm [Mon, 24 Jan 2022 17:54:06 +0000 (17:54 +0000)]
cursor: cursor_rebase() on mouse scroll
...to ensure that the surface under the mouse gets the focus even
if the mouse pointer has not moved.
Issue #162
Johan Malm [Mon, 24 Jan 2022 17:51:54 +0000 (17:51 +0000)]
cursor: revert 6651d; remove cursor_update_focus()
...to ensure new windows receive keyboard focus even if the cursor is
over an existing window.
Fix issue #210
Liam Middlebrook [Thu, 20 Jan 2022 19:38:23 +0000 (11:38 -0800)]
output: Add option to preview the contents of the current cycle_view
Add the 'cycleViewPreview.core' option to rc.xml to enable previews of
the selected view when cycling between windows. Default this option to
be disabled to match current behavior.
Consolatis [Sun, 23 Jan 2022 13:46:56 +0000 (14:46 +0100)]
config/rcxml: Prevent overwriting action argument
Consolatis [Sun, 23 Jan 2022 12:46:46 +0000 (13:46 +0100)]
Centralize freeing of action lists
Reduces some code duplication and makes it easier to extend struct action
ARDiDo [Fri, 21 Jan 2022 01:56:47 +0000 (20:56 -0500)]
xdg: Allow wayland applications to start in fullscreen
Consolatis [Mon, 17 Jan 2022 22:02:59 +0000 (23:02 +0100)]
Short term solution to prevent segfaulting on TTY switch. See #206.
This will still prevent touchscreens or other absolute pointers to
function correctly after switching the TTY when using a multi
screen setup. But that is still better than segfaulting.
Johan Malm [Mon, 17 Jan 2022 21:00:52 +0000 (21:00 +0000)]
ssd: revert last commit
It was just not a good implementation; we need to consider xdg-shell views
as well as xwayland ones.
Issue #207
Johan Malm [Mon, 10 Jan 2022 18:14:53 +0000 (18:14 +0000)]
ssd: do not render resize cursors over exclusive layer-shell clients
...such as panels, even if the invisible region of a view's server-side
decoration extends over that layer-shell client.
Issue #207
Johan Malm [Mon, 10 Jan 2022 18:08:27 +0000 (18:08 +0000)]
desktop: correctly forward cursor motion-event to layer-popup surfaces
...in preference to views and other layer surfaces (except those in the
OVERLAY layer which always go first)
Fixes issue #207 where a BOTTOM layer popup lost mouse focus when a
terminal was behind it.
Consolatis [Sun, 9 Jan 2022 04:48:27 +0000 (05:48 +0100)]
CodeStyle
John Lindgren [Sat, 8 Jan 2022 16:46:46 +0000 (11:46 -0500)]
view: Handle maximized view on disabled output more simply
Partially reverts commit
ab07b68d7e888211e9ef5a3731f5272912d4b878 .
Consolatis [Sat, 8 Jan 2022 10:25:18 +0000 (11:25 +0100)]
Allow mouse movements to trigger SnapToEdge