Commit graph

952 commits

Author SHA1 Message Date
Johan Malm
97846ae45b 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>
2022-03-21 17:57:20 +00:00
Consolatis
befe66d93f 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
2022-03-21 17:56:48 +00:00
Consolatis
067b0e8798 xwayland.c: Do not raise window if deactivating
Fixes #270
2022-03-21 17:15:09 +00:00
John Lindgren
08c537ebd9 xwayland: Honor size increments from WM_SIZE_HINTS 2022-03-21 09:38:05 +00:00
Johan Malm
06042337d6 Merge branch 'master' of https://github.com/labwc/labwc 2022-03-19 11:35:26 +00:00
Johan Malm
d844f6798b 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.
2022-03-19 11:34:11 +00:00
Consolatis
420c0712f8 menu.c: Handle keybinding based Reconfigure while menu is shown 2022-03-16 18:21:32 +00:00
Consolatis
428423cfa9 menu.c: Handle out of screen submenus
Fixes #276
2022-03-16 18:21:32 +00:00
Johan Malm
5fd5024ca6 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
2022-03-15 21:30:25 +00:00
Consolatis
4ee9f351ea ssd_extents: force initial manual ssd_extents update for x11 clients 2022-03-12 15:32:44 +00:00
Consolatis
3171aba0e2 ssd: dynamically adjust resize extents based on usable_area
Fixes #265
2022-03-12 15:32:44 +00:00
Consolatis
e086f6f5e0 ssd: move top border above titlebar 2022-03-12 15:32:44 +00:00
Consolatis
e4f1f9a975 ssd: use dynamic titlebar height based on font size and padding 2022-03-12 15:32:44 +00:00
Consolatis
3bb44fc9f2 ssd: increase resize corners 2022-03-12 15:32:44 +00:00
01micko
25fcc3910b 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
2022-03-09 21:03:35 +00:00
bi4k8
c23397f362 support wlr-output-power-management 2022-03-08 20:07:51 +00:00
bi4k8
748b3d38e7 add wlr-output-power-management protocol 2022-03-08 20:07:51 +00:00
Johan Malm
5624ef8cf3 Update NEWS.md 2022-03-07 21:24:33 +00:00
Johan Malm
6b8c10dcd4 view: show fullscreen views above top-layer
See https://github.com/LBCrion/sfwbar/issues/24
2022-03-07 21:20:44 +00:00
Johan Malm
d34efad7bb view: remove warning in view_move_resize() 2022-03-07 20:59:54 +00:00
Johan Malm
801a04a647 layers: always unmap on destroy
This sets seat->focused_layer to NULL if appropriate.
2022-03-07 20:54:22 +00:00
Johan Malm
c73628ced1
Merge pull request #264 from labwc/scene-graph
Use wlroots scene-graph API
2022-03-06 17:33:40 +00:00
Johan Malm
7a708a0dc9 xdg: set node position on commit and configure
To avoid incorrect view position, for example on initial placement.
2022-03-06 17:12:00 +00:00
Johan Malm
a601615866 ssd: add top border
Raise border on top of (z-order) titlebar
2022-03-06 17:06:14 +00:00
Johan Malm
852a6f02fa layers: fix layer_popup_tree implementation 2022-03-06 16:48:39 +00:00
Johan Malm
77ac3474b6 buffer.c: chase wlroots master
Include <wlr/interfaces/wlr_buffer.h>

39b68ea47a
2022-03-04 20:25:04 +00:00
Consolatis
5deeca833f ssd: Disable resize extents while in maximized or fullscreen state 2022-03-04 20:02:57 +00:00
Johan Malm
19f3a6ef83 output: attach node-descriptors to node-trees 2022-03-03 18:20:16 +00:00
Johan Malm
6fd400b493 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.
2022-03-03 17:56:38 +00:00
Johan Malm
34bd1fb6da layers: unconstrain popups correctly
...to show popups when using @Consolatis's example panel

https://github.com/Consolatis/wl_framework
2022-03-03 17:53:26 +00:00
Consolatis
8444ba4075 Convert menu to node_descriptors 2022-03-03 17:49:54 +00:00
Johan Malm
eb7645d0e0 node.c: use wlr_scene_node instead of node_descriptor 2022-03-02 22:24:30 +00:00
Johan Malm
b4cbc20e8c 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
2022-03-02 22:05:41 +00:00
Johan Malm
30298228e3 Rename node-descriptor.c to node.c
...in anticipation of adding helpers like node_view_from_node()
2022-03-02 21:07:04 +00:00
Consolatis
51e02e2afa src/desktop.c: Fix label error
Fixes "a label can only be part of a statement
and a declaration is not a statement".
2022-03-02 20:43:59 +00:00
Consolatis
db9a808dca debug.c: use node descriptors 2022-03-02 20:43:59 +00:00
Johan Malm
d3918eec0a layers: only define LAB_NR_LAYERS locally where needed 2022-03-02 20:39:46 +00:00
Johan Malm
98d5fd483d 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
2022-03-02 20:29:29 +00:00
Johan Malm
04580fa825 layers: arrange layers on output-layout change 2022-03-02 20:26:09 +00:00
Johan Malm
99361d6ad8 layers.c: fix coding style 2022-03-02 20:23:20 +00:00
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