Commit graph

2331 commits

Author SHA1 Message Date
lbonn
ccea31234a [WaylandWindow] Remove a scary log
Happens when destroy() is called without previous init()
2024-03-01 18:26:23 +01:00
lbonn
37b8e9fb99 [Wayland] Fix axis events handling
This was very buggy, we were counting the events twice...

* always use pointer frame, it's available since v5
* drop axis handler
* use axis_discrete or axis_120 (v >= 8) instead
* fail on some protocol minimum version checks
* simplify output protocol version check

Fixes #120
2024-03-01 11:27:45 +01:00
lbonn
217d6c46d4 [Wayland] Fix last missing non-strict prototype 2024-02-29 10:30:52 +01:00
lbonn
2a8380f260 [Config] Rename global-kbindings to global-kb 2024-02-28 12:02:53 +01:00
lbonn
ccb8385d93 Merge remote-tracking branch 'upstream/next' into wayland 2024-02-28 09:31:31 +01:00
lbonn
0cec298f91 [Wayland] Make bindings inhibitor opt-in
Fixes #119
2024-02-28 09:29:04 +01:00
Qball Cow
f2c0f75fd2 [run] fix missing doxygen and add explanation. 2024-02-28 00:54:23 +01:00
Qball Cow
ee1b68aea6 [Run] When passing raw entry, pass it unquoted to history
fixes: #1951
2024-02-28 00:46:23 +01:00
Dave Davenport
eae65b2c07 Replace deprecated g_memdup by g_memdup2 2024-02-27 20:53:26 +01:00
Dave Davenport
3a97e0cb91 Replace deprecated by g_memdup to g_memdup2 2024-02-27 20:47:51 +01:00
lbonn
d53738170c [Wayland] Inhibit compositor shortcuts
... with the dedicated wayland protocol.

This way, rofi can re-use compositor bindings. The canonical example is
window switching with Alt-Tab.
2024-02-27 14:09:18 +01:00
lbonn
d2ad9fe828 [Wayland] Fix remaining non-strict C prototypes 2024-02-27 13:34:41 +01:00
lbonn
6c1a425d87 [WaylandWindow] Fix missing escaping 2024-02-27 13:31:02 +01:00
lbonn
54a2c45120 Merge remote-tracking branch 'upstream/next' into wayland 2024-02-27 13:29:54 +01:00
Aleksei Bavshin
cb6fd22118 [WaylandWindow] Unmap surface before sending activation request
Fixes lbonn/rofi#117
2024-02-26 19:32:40 +01:00
Qball Cow
43790b3eda Fix compiler warnings in window mode. 2024-02-25 23:39:05 +01:00
Qball Cow
2bbaa36b7a Fix some compiler warnings. 2024-02-25 23:33:22 +01:00
Qball Cow
058aac887f Small indent 2024-02-25 22:24:58 +01:00
Qball Cow
2d35397195 [RUN] shell escape command before processing it further. 2024-02-22 09:13:05 +01:00
lbonn
a4c8135533 Merge remote-tracking branch 'upstream/next' into wayland 2024-02-18 11:40:11 +01:00
Dave Davenport
1c8159c4c8 [DRun] Drun read url field from cache. 2024-02-18 11:35:39 +01:00
lbonn
f539a08222
[Build] Reduce amount of warnings (#1944)
* one unused parameter in recursivebrowser.c
* overlength strings are overly pedantic, modern compilers support large
  strings
* __FUNCTION__ creeped back in after #288
2024-02-16 18:41:07 +01:00
lbonn
070c830a92 Merge remote-tracking branch 'upstream/next' into wayland 2024-02-16 17:54:10 +01:00
Dave Davenport
3a5f95d69e [View] Don't use xcb surface to render to png, but create surface. 2024-02-16 13:36:21 +01:00
Dave Davenport
831bddc68b [Box] When estimating height, set correct width on children
Issue: #1943
2024-02-15 09:13:37 +01:00
Qball Cow
13c2a61766 [ThreadPool] Sort items in the queue based on priority 2024-02-11 14:00:03 +01:00
Aleksei Bavshin
b88dddd1a1 [Wayland] Compositor-side cursors via cursor-shape-v1 2024-01-08 16:08:01 +01:00
Aleksei Bavshin
8f259ce9b0 [Wayland] Cursor types support 2024-01-08 16:08:01 +01:00
Aleksei Bavshin
1592525edb [Wayland] Clear frame_cb after destroying resources 2024-01-08 16:08:01 +01:00
Aleksei Bavshin
5bc2f09241 Re-indent Wayland sources with clang-format 2024-01-07 14:02:17 +01:00
lbonn
2520c1ea16 [Wayland] Fix crash during layer shell destruction
Rofi will no longer crash if the current output is disconnected but
will respawn on the next output chosen by the compositor

Fixes #50
2024-01-06 16:30:19 +01:00
Aleksei Bavshin
8ea79da037 [Wayland] Implement config.dpi support.
The correct value of `config.dpi` is required to support physical units
in the themes (e.g. `mm` `in sidebar-v2`).
2024-01-05 17:10:52 +01:00
Aleksei Bavshin
ecdd2b2347 [Wayland] Support -m/-monitor <name>.
Defer layer surface creation until we read the configuration and know
the value of `config.monitor`. Wait for Wayland output details and try
to select a matching output by name.

Numeric values of -5..n are intentionally not supported, because
* the order of `wl_output` globals is not defined and may change between
  sessions
* the best we can do for -5..-1 is to let the compositor decide

`wid:` in theory can be emulated via `xdg-foreign`, but that requires a
regular `xdg_toplevel` instead of a layer surface.
2024-01-05 17:10:52 +01:00
Aleksei Bavshin
22ec839f27 [Wayland] Print monitor layout 2024-01-05 17:10:52 +01:00
Aleksei Bavshin
53d99c49ad [Wayland] Support wl_output version 4.
- Double-buffer the properties.
 - Fetch name, geometry and transform properties - we need these to
   calculate DPI and to implement `monitor` configuration field.
2024-01-05 17:10:52 +01:00
Aleksei Bavshin
ad784f1f0d [Window] Set mode type for Wayland implementation.
Reformat to match other Mode definitions.

The `.type` is required after d27cee8.
2024-01-05 17:10:52 +01:00
Aleksei Bavshin
9e09a0729d Restrict WM detection to XCB backend
Fixes `rofi --help` after e409322
2024-01-05 17:10:52 +01:00
Liao Junxuan
b29518f034 Enable pango markup for -window-format in wayland
Strings are already escaped when necessary. The x11 counterpart was implemented
in davatorium/rofi#1288.
2023-12-20 15:52:05 +01:00
Qball Cow
11d801ea9e [View] On mode switch force refilter instead of queuing.
issue: #1928
2023-12-17 17:26:34 +01:00
Dave Davenport
d042e20fff [View] Allow float delay
fixes: #1926
2023-12-08 13:51:04 +01:00
MoetaYuko
36621af0e4 [IconFetcher] Re-introduce icon scaling on wayland
This time, preserving ABI compatibility with upstream rofi

Fixes #96
2023-11-30 16:49:47 +01:00
lbonn
102e6de7a9 Revert "[IconFetcher] Apply scaling when loading images and icons"
This reverts commit 2c0fcf9da9.
2023-11-30 16:49:47 +01:00
ddmetz
78888dd80d hover select 2023-11-30 10:36:47 +01:00
Dave Davenport
b43a82f86d [View] Always forward motion to the grabbed widget first. 2023-11-24 12:26:24 +01:00
Dave Davenport
24c3258379 [IconFetcher] If last step fails to load icon, don't error out make warning 2023-11-16 15:25:40 +01:00
Dave Davenport
dbc1f8dcb4 [Dmenu][Script] Add 'display' row option to override whats displayed. 2023-11-06 20:02:48 +01:00
Dave Davenport
3c87321258 [DRun] Allow url field to be searched and fix c/p error
Issue: #1914
2023-10-31 13:24:37 +01:00
Dave Davenport
1481030947 [DRUN] Add {url} to drun-display-format.
Escape exec.

fixes: #1914
2023-10-31 11:28:45 +01:00
Wim Looman
5cd1e3ca2b Pass the xkb group (a.k.a. layout) to nk_bindings
The `group` is used by xkb to support switching between multiple
layouts, without telling `nk_bindings` about this rofi always sees key
presses as if they're in the first layout.
2023-10-11 21:24:16 +02:00
Dave Davenport
c78179dcc8 [lexer] Add dmenu as enabled option for media type.
fixes: #1903
2023-10-03 21:06:53 +02:00