]>
git.mdlowis.com Git - proto/labwc.git/log
Johan Malm [Mon, 28 Mar 2022 19:50:18 +0000 (20:50 +0100)]
touch.c: fix coding style
Mostly "foo* bar"-should-be-"foo *bar" warnings and space before brackets
Johan Malm [Mon, 28 Mar 2022 19:41:53 +0000 (20:41 +0100)]
Chase wlroots wlr_seat_keyboard() refactoring
wlr_seat_keyboard() now takes wlr_keyboard
bi4k8 [Sun, 20 Mar 2022 22:07:14 +0000 (22:07 +0000)]
fix crash when changing TTY
also add an assertion to clarify the contract of `output_by_name`
bi4k8 [Fri, 31 Dec 2021 23:50:31 +0000 (23:50 +0000)]
implement touch support
this is mostly plumbing; the most interesting logic is in touch_get_coords
Johan Malm [Mon, 21 Mar 2022 20:33:10 +0000 (20:33 +0000)]
cursor.c: fix bad cherry-pick in previous commit (
64f7b9d )
Consolatis [Sun, 27 Feb 2022 19:36:49 +0000 (20:36 +0100)]
Restore Drag mouse bindings and proper double click
Fixes #258 and #259
Reported-by: @ahmadraniri1994
Reported-by: @01micko
Suggested-by: bi4k8 <bi4k8@github>
Johan Malm [Sun, 26 Dec 2021 22:09:41 +0000 (22:09 +0000)]
cursor: add cursor_update_focus()
...and call it from desktop_move_to_front() in order force an enter event
on the surface below the cursor when cycling views.
Fixes #162 and #225
Inspired by PR #164 - just restructured it a bit.
Suggested-by: @bi4k8
Co-authored-by: Consolatis <35009135+Consolatis@users.noreply.github.com>
Consolatis [Sat, 26 Feb 2022 00:21:39 +0000 (01:21 +0100)]
cursor.c: Keep sending adjusted motion events while button is pressed
This allows to keep dragging a scrollbar or selecting text even when
moving outside of the window. Fixes #241
Consolatis [Sat, 12 Mar 2022 10:49:05 +0000 (11:49 +0100)]
xwayland.c: Do not raise window if deactivating
Fixes #270
John Lindgren [Sun, 20 Mar 2022 19:45:55 +0000 (15:45 -0400)]
xwayland: Honor size increments from WM_SIZE_HINTS
Johan Malm [Sat, 19 Mar 2022 11:35:26 +0000 (11:35 +0000)]
Merge branch 'master' of https://github.com/labwc/labwc
Johan Malm [Sat, 19 Mar 2022 11:34:11 +0000 (11:34 +0000)]
Chase wlroots wlr-device-input refactoring
Rename wlroots input device events, for example
's/wlr_event_pointer_motion/wlr_pointer_motion_event/'
seat.c:
- In configure_libinput() use wlr_input_device->type rather than width_mm
- In new_pointer() use wlr_input_device->type rather than output_name to
check that device is pointer.
Consolatis [Wed, 16 Mar 2022 05:08:08 +0000 (06:08 +0100)]
menu.c: Handle keybinding based Reconfigure while menu is shown
Consolatis [Wed, 16 Mar 2022 04:51:36 +0000 (05:51 +0100)]
menu.c: Handle out of screen submenus
Fixes #276
Johan Malm [Tue, 15 Mar 2022 21:30:25 +0000 (21:30 +0000)]
output: fix incorrect call to private wlroots function
Use wlr_output_test() instead of output_ensure_buffer() which is not a
public function and only compiled when linking statically to wlroots.
Also wlr_output_rollback() on failed test.
Fixes issue #273
Consolatis [Fri, 11 Mar 2022 05:23:08 +0000 (06:23 +0100)]
ssd_extents: force initial manual ssd_extents update for x11 clients
Consolatis [Thu, 10 Mar 2022 05:50:42 +0000 (06:50 +0100)]
ssd: dynamically adjust resize extents based on usable_area
Fixes #265
Consolatis [Wed, 9 Mar 2022 07:52:33 +0000 (08:52 +0100)]
ssd: move top border above titlebar
Consolatis [Wed, 9 Mar 2022 04:40:54 +0000 (05:40 +0100)]
ssd: use dynamic titlebar height based on font size and padding
Consolatis [Wed, 9 Mar 2022 00:55:50 +0000 (01:55 +0100)]
ssd: increase resize corners
01micko [Wed, 9 Mar 2022 09:08:59 +0000 (19:08 +1000)]
README.md: add `wlopm` to "6. Integrate" (recommended programs)
- made it first in the array of 'output managers' because since the
`scene_graph` merge it's the only way I have found to reliably
turn off/on outputs.
- it supports "wlr-output-power-management-unstable-v1"
- as does labwc since
c23397f
- works with swayidle/swaylock
bi4k8 [Sun, 6 Mar 2022 04:46:11 +0000 (04:46 +0000)]
support wlr-output-power-management
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