在尝试使用 Wayland 的过程中,我费了好大劲才让它在使用功能方面达到 X11 的水平。但自从我切换了会话(没有做其他事情)后,现在最烦人的就是鼠标指针会卡在屏幕边缘。
想要拖动全屏窗口的滚动条?不,我显然应该调整窗口大小。想要将鼠标从一个屏幕移到下一个屏幕?不如停在边缘?这么小的问题,却让人如此恼火。
我发现如果我移动鼠标足够快,捕捉就会被忽略(对于瞄准滚动条真的很有用……)。
我一直在寻找各种选项,但无济于事。我也在网上搜索了很多次,但我只能找到有其他鼠标跳动问题的人——似乎与窗口/屏幕边缘无关。如果我的答案存在,它也会淹没在噪音中。
那么有人知道如何解决这个问题吗?或者我最好让 Wayland 再成熟 5 年再尝试一次?
我正在运行以下命令:
Operating System: openSUSE Tumbleweed 20240924
KDE Plasma Version: 6.1.5
KDE Frameworks Version: 6.6.0
Qt Version: 6.7.3
Kernel Version: 6.10.11-1-default (64-bit)
Graphics Platform: Wayland
以下是来自 Wayland 的(可能过于详细的)信息转储
interface: 'wl_compositor', version: 6, name: 1
interface: 'zwp_tablet_manager_v2', version: 1, name: 3
interface: 'zwp_keyboard_shortcuts_inhibit_manager_v1', version: 1, name: 4
interface: 'zxdg_decoration_manager_v1', version: 1, name: 5
interface: 'wp_viewporter', version: 1, name: 6
interface: 'wp_security_context_manager_v1', version: 1, name: 7
interface: 'wp_fractional_scale_manager_v1', version: 1, name: 8
interface: 'wl_shm', version: 1, name: 9
formats (fourcc):
0x38344258 = 'XB48'
0x38344241 = 'AB48'
0x30334258 = 'XB30'
0x30334241 = 'AB30'
0x30335258 = 'XR30'
0x30335241 = 'AR30'
1 = 'XR24'
0 = 'AR24'
interface: 'wl_seat', version: 9, name: 10
name:
capabilities: pointer keyboard touch
keyboard repeat rate: 25
keyboard repeat delay: 600
interface: 'zwp_pointer_gestures_v1', version: 3, name: 11
interface: 'zwp_pointer_constraints_v1', version: 1, name: 12
interface: 'zwp_relative_pointer_manager_v1', version: 1, name: 13
interface: 'wl_data_device_manager', version: 3, name: 14
interface: 'zwlr_data_control_manager_v1', version: 2, name: 15
interface: 'wp_cursor_shape_manager_v1', version: 1, name: 16
interface: 'zwp_primary_selection_device_manager_v1', version: 1, name: 17
interface: 'org_kde_kwin_idle', version: 1, name: 18
interface: 'zwp_idle_inhibit_manager_v1', version: 1, name: 19
interface: 'ext_idle_notifier_v1', version: 1, name: 20
interface: 'org_kde_plasma_shell', version: 8, name: 21
interface: 'org_kde_kwin_appmenu_manager', version: 1, name: 22
interface: 'org_kde_kwin_server_decoration_palette_manager', version: 1, name: 23
interface: 'org_kde_plasma_virtual_desktop_management', version: 2, name: 25
interface: 'org_kde_kwin_shadow_manager', version: 2, name: 27
interface: 'org_kde_kwin_dpms_manager', version: 1, name: 28
interface: 'org_kde_kwin_server_decoration_manager', version: 1, name: 29
interface: 'kde_output_management_v2', version: 9, name: 30
interface: 'zxdg_output_manager_v1', version: 3, name: 31
xdg_output_v1
output: 68
name: 'DP-1'
logical_x: 0, logical_y: 0
logical_width: 1080, logical_height: 1920
xdg_output_v1
output: 66
name: 'HDMI-A-1'
logical_x: 1080, logical_y: 420
logical_width: 1920, logical_height: 1080
xdg_output_v1
output: 61
name: 'eDP-1'
logical_x: 3000, logical_y: 840
logical_width: 1920, logical_height: 1080
interface: 'wl_subcompositor', version: 1, name: 32
interface: 'zxdg_exporter_v2', version: 1, name: 33
interface: 'zxdg_importer_v2', version: 1, name: 34
interface: 'xdg_activation_v1', version: 1, name: 37
interface: 'wp_content_type_manager_v1', version: 1, name: 39
interface: 'wp_tearing_control_manager_v1', version: 1, name: 40
interface: 'xdg_toplevel_drag_manager_v1', version: 1, name: 41
interface: 'kde_screen_edge_manager_v1', version: 1, name: 42
interface: 'frog_color_management_factory_v1', version: 1, name: 43
interface: 'wp_presentation', version: 1, name: 44
presentation clock id: 1 (CLOCK_MONOTONIC)
interface: 'xdg_wm_dialog_v1', version: 1, name: 45
interface: 'xdg_wm_base', version: 6, name: 48
interface: 'zwlr_layer_shell_v1', version: 5, name: 49
interface: 'wp_drm_lease_device_v1', version: 1, name: 51
path: /dev/dri/card1
interface: 'kde_output_order_v1', version: 1, name: 52
interface: 'zwp_text_input_manager_v1', version: 1, name: 53
interface: 'zwp_text_input_manager_v2', version: 1, name: 54
interface: 'zwp_text_input_manager_v3', version: 1, name: 55
interface: 'wl_drm', version: 2, name: 57
interface: 'zwp_linux_dmabuf_v1', version: 4, name: 58
main device: 0xE201 (/dev/dri/card1 or /dev/dri/renderD128)
tranche
target device: 0xE201 (/dev/dri/card1 or /dev/dri/renderD128)
flags: none
formats (fourcc) and modifiers (names):
0x38344241 = 'AB48'; 0x0000000000000000 = LINEAR
0x38344241 = 'AB48'; 0x0100000000000001 = INTEL_X_TILED
0x38344241 = 'AB48'; 0x0100000000000002 = INTEL_Y_TILED
0x38344241 = 'AB48'; 0x0100000000000006 = INTEL_Y_TILED_GEN12_RC_CCS
0x38344241 = 'AB48'; 0x0100000000000008 = INTEL_Y_TILED_GEN12_RC_CCS_CC
0x38344241 = 'AB48'; 0x00ffffffffffffff = INVALID
0x38344258 = 'XB48'; 0x0000000000000000 = LINEAR
0x38344258 = 'XB48'; 0x0100000000000001 = INTEL_X_TILED
0x38344258 = 'XB48'; 0x0100000000000002 = INTEL_Y_TILED
0x38344258 = 'XB48'; 0x0100000000000006 = INTEL_Y_TILED_GEN12_RC_CCS
0x38344258 = 'XB48'; 0x0100000000000008 = INTEL_Y_TILED_GEN12_RC_CCS_CC
0x38344258 = 'XB48'; 0x00ffffffffffffff = INVALID
0x35315241 = 'AR15'; 0x0000000000000000 = LINEAR
0x35315241 = 'AR15'; 0x0100000000000001 = INTEL_X_TILED
0x35315241 = 'AR15'; 0x0100000000000002 = INTEL_Y_TILED
0x35315241 = 'AR15'; 0x0100000000000006 = INTEL_Y_TILED_GEN12_RC_CCS
0x35315241 = 'AR15'; 0x0100000000000008 = INTEL_Y_TILED_GEN12_RC_CCS_CC
0x35315241 = 'AR15'; 0x00ffffffffffffff = INVALID
0x3231564e = 'NV12'; 0x0000000000000000 = LINEAR
0x3231564e = 'NV12'; 0x0100000000000001 = INTEL_X_TILED
0x3231564e = 'NV12'; 0x0100000000000002 = INTEL_Y_TILED
0x3231564e = 'NV12'; 0x00ffffffffffffff = INVALID
0x20203852 = 'R8 '; 0x0000000000000000 = LINEAR
0x20203852 = 'R8 '; 0x0100000000000001 = INTEL_X_TILED
0x20203852 = 'R8 '; 0x0100000000000002 = INTEL_Y_TILED
0x20203852 = 'R8 '; 0x0100000000000006 = INTEL_Y_TILED_GEN12_RC_CCS
0x20203852 = 'R8 '; 0x0100000000000008 = INTEL_Y_TILED_GEN12_RC_CCS_CC
0x20203852 = 'R8 '; 0x00ffffffffffffff = INVALID
0x48344241 = 'AB4H'; 0x0000000000000000 = LINEAR
0x48344241 = 'AB4H'; 0x0100000000000001 = INTEL_X_TILED
0x48344241 = 'AB4H'; 0x0100000000000002 = INTEL_Y_TILED
0x48344241 = 'AB4H'; 0x0100000000000006 = INTEL_Y_TILED_GEN12_RC_CCS
0x48344241 = 'AB4H'; 0x0100000000000008 = INTEL_Y_TILED_GEN12_RC_CCS_CC
0x48344241 = 'AB4H'; 0x00ffffffffffffff = INVALID
0x20363152 = 'R16 '; 0x0000000000000000 = LINEAR
0x20363152 = 'R16 '; 0x0100000000000001 = INTEL_X_TILED
0x20363152 = 'R16 '; 0x0100000000000002 = INTEL_Y_TILED
0x20363152 = 'R16 '; 0x0100000000000006 = INTEL_Y_TILED_GEN12_RC_CCS
0x20363152 = 'R16 '; 0x0100000000000008 = INTEL_Y_TILED_GEN12_RC_CCS_CC
0x20363152 = 'R16 '; 0x00ffffffffffffff = INVALID
0x48344258 = 'XB4H'; 0x0000000000000000 = LINEAR
0x48344258 = 'XB4H'; 0x0100000000000001 = INTEL_X_TILED
0x48344258 = 'XB4H'; 0x0100000000000002 = INTEL_Y_TILED
0x48344258 = 'XB4H'; 0x0100000000000006 = INTEL_Y_TILED_GEN12_RC_CCS
0x48344258 = 'XB4H'; 0x0100000000000008 = INTEL_Y_TILED_GEN12_RC_CCS_CC
0x48344258 = 'XB4H'; 0x00ffffffffffffff = INVALID
0x38385247 = 'GR88'; 0x0000000000000000 = LINEAR
0x38385247 = 'GR88'; 0x0100000000000001 = INTEL_X_TILED
0x38385247 = 'GR88'; 0x0100000000000002 = INTEL_Y_TILED
0x38385247 = 'GR88'; 0x0100000000000006 = INTEL_Y_TILED_GEN12_RC_CCS
0x38385247 = 'GR88'; 0x0100000000000008 = INTEL_Y_TILED_GEN12_RC_CCS_CC
0x38385247 = 'GR88'; 0x00ffffffffffffff = INVALID
0x36314752 = 'RG16'; 0x0000000000000000 = LINEAR
0x36314752 = 'RG16'; 0x0100000000000001 = INTEL_X_TILED
0x36314752 = 'RG16'; 0x0100000000000002 = INTEL_Y_TILED
0x36314752 = 'RG16'; 0x0100000000000006 = INTEL_Y_TILED_GEN12_RC_CCS
0x36314752 = 'RG16'; 0x0100000000000008 = INTEL_Y_TILED_GEN12_RC_CCS_CC
0x36314752 = 'RG16'; 0x00ffffffffffffff = INVALID
0x32335247 = 'GR32'; 0x0000000000000000 = LINEAR
0x32335247 = 'GR32'; 0x0100000000000001 = INTEL_X_TILED
0x32335247 = 'GR32'; 0x0100000000000002 = INTEL_Y_TILED
0x32335247 = 'GR32'; 0x0100000000000006 = INTEL_Y_TILED_GEN12_RC_CCS
0x32335247 = 'GR32'; 0x0100000000000008 = INTEL_Y_TILED_GEN12_RC_CCS_CC
0x32335247 = 'GR32'; 0x00ffffffffffffff = INVALID
0x32315241 = 'AR12'; 0x0000000000000000 = LINEAR
0x32315241 = 'AR12'; 0x0100000000000001 = INTEL_X_TILED
0x32315241 = 'AR12'; 0x0100000000000002 = INTEL_Y_TILED
0x32315241 = 'AR12'; 0x0100000000000006 = INTEL_Y_TILED_GEN12_RC_CCS
0x32315241 = 'AR12'; 0x0100000000000008 = INTEL_Y_TILED_GEN12_RC_CCS_CC
0x32315241 = 'AR12'; 0x00ffffffffffffff = INVALID
tranche
target device: 0xE201 (/dev/dri/card1 or /dev/dri/renderD128)
flags: none
formats (fourcc) and modifiers (names):
0x34325241 = 'AR24'; 0x0000000000000000 = LINEAR
0x34325241 = 'AR24'; 0x0100000000000001 = INTEL_X_TILED
0x34325241 = 'AR24'; 0x0100000000000002 = INTEL_Y_TILED
0x34325241 = 'AR24'; 0x0100000000000006 = INTEL_Y_TILED_GEN12_RC_CCS
0x34325241 = 'AR24'; 0x0100000000000008 = INTEL_Y_TILED_GEN12_RC_CCS_CC
0x34325241 = 'AR24'; 0x00ffffffffffffff = INVALID
0x34324241 = 'AB24'; 0x0000000000000000 = LINEAR
0x34324241 = 'AB24'; 0x0100000000000001 = INTEL_X_TILED
0x34324241 = 'AB24'; 0x0100000000000002 = INTEL_Y_TILED
0x34324241 = 'AB24'; 0x0100000000000006 = INTEL_Y_TILED_GEN12_RC_CCS
0x34324241 = 'AB24'; 0x0100000000000008 = INTEL_Y_TILED_GEN12_RC_CCS_CC
0x34324241 = 'AB24'; 0x00ffffffffffffff = INVALID
0x34324258 = 'XB24'; 0x0000000000000000 = LINEAR
0x34324258 = 'XB24'; 0x0100000000000001 = INTEL_X_TILED
0x34324258 = 'XB24'; 0x0100000000000002 = INTEL_Y_TILED
0x34324258 = 'XB24'; 0x0100000000000006 = INTEL_Y_TILED_GEN12_RC_CCS
0x34324258 = 'XB24'; 0x0100000000000008 = INTEL_Y_TILED_GEN12_RC_CCS_CC
0x34324258 = 'XB24'; 0x00ffffffffffffff = INVALID
0x34325258 = 'XR24'; 0x0000000000000000 = LINEAR
0x34325258 = 'XR24'; 0x0100000000000001 = INTEL_X_TILED
0x34325258 = 'XR24'; 0x0100000000000002 = INTEL_Y_TILED
0x34325258 = 'XR24'; 0x0100000000000006 = INTEL_Y_TILED_GEN12_RC_CCS
0x34325258 = 'XR24'; 0x0100000000000008 = INTEL_Y_TILED_GEN12_RC_CCS_CC
0x34325258 = 'XR24'; 0x00ffffffffffffff = INVALID
tranche
target device: 0xE201 (/dev/dri/card1 or /dev/dri/renderD128)
flags: none
formats (fourcc) and modifiers (names):
0x30335241 = 'AR30'; 0x0000000000000000 = LINEAR
0x30335241 = 'AR30'; 0x0100000000000001 = INTEL_X_TILED
0x30335241 = 'AR30'; 0x0100000000000002 = INTEL_Y_TILED
0x30335241 = 'AR30'; 0x0100000000000006 = INTEL_Y_TILED_GEN12_RC_CCS
0x30335241 = 'AR30'; 0x0100000000000008 = INTEL_Y_TILED_GEN12_RC_CCS_CC
0x30335241 = 'AR30'; 0x00ffffffffffffff = INVALID
0x30335258 = 'XR30'; 0x0000000000000000 = LINEAR
0x30335258 = 'XR30'; 0x0100000000000001 = INTEL_X_TILED
0x30335258 = 'XR30'; 0x0100000000000002 = INTEL_Y_TILED
0x30335258 = 'XR30'; 0x0100000000000006 = INTEL_Y_TILED_GEN12_RC_CCS
0x30335258 = 'XR30'; 0x0100000000000008 = INTEL_Y_TILED_GEN12_RC_CCS_CC
0x30335258 = 'XR30'; 0x00ffffffffffffff = INVALID
0x30334241 = 'AB30'; 0x0000000000000000 = LINEAR
0x30334241 = 'AB30'; 0x0100000000000001 = INTEL_X_TILED
0x30334241 = 'AB30'; 0x0100000000000002 = INTEL_Y_TILED
0x30334241 = 'AB30'; 0x0100000000000006 = INTEL_Y_TILED_GEN12_RC_CCS
0x30334241 = 'AB30'; 0x0100000000000008 = INTEL_Y_TILED_GEN12_RC_CCS_CC
0x30334241 = 'AB30'; 0x00ffffffffffffff = INVALID
interface: 'wp_linux_drm_syncobj_manager_v1', version: 1, name: 59
interface: 'kde_output_device_v2', version: 8, name: 60
interface: 'wl_output', version: 4, name: 61
name: eDP-1
x: 3000, y: 840, scale: 1,
physical_width: 309 mm, physical_height: 174 mm,
subpixel_orientation: unknown, output_transform: normal,
mode:
width: 1920 px, height: 1080 px, refresh: 60.049 Hz,
flags: current
interface: 'org_kde_kwin_blur_manager', version: 1, name: 62
interface: 'org_kde_kwin_contrast_manager', version: 2, name: 63
interface: 'org_kde_kwin_slide_manager', version: 1, name: 64
interface: 'kde_output_device_v2', version: 8, name: 65
interface: 'wl_output', version: 4, name: 66
name: HDMI-A-1
x: 1080, y: 420, scale: 1,
physical_width: 477 mm, physical_height: 268 mm,
subpixel_orientation: unknown, output_transform: normal,
mode:
width: 1920 px, height: 1080 px, refresh: 60.000 Hz,
flags: current
interface: 'kde_output_device_v2', version: 8, name: 67
interface: 'wl_output', version: 4, name: 68
name: DP-1
x: 0, y: 0, scale: 1,
physical_width: 477 mm, physical_height: 268 mm,
subpixel_orientation: unknown, output_transform: 90°,
mode:
width: 1920 px, height: 1080 px, refresh: 60.000 Hz,
flags: current
这可能不是答案,但有人要求在2020 年在 KDE KWin 中添加粘性边缘,该功能已在 2024 年的此提交中实现 。随后的 禁用请求 表示您可以在系统设置 > 鼠标和触摸板 > 屏幕边缘中禁用它。
除了错误修复之外,X11 的 KWin 处于冻结状态,因此不会看到添加此功能。