djpohly / dwl

dwm for Wayland - ARCHIVE: development has moved to Codeberg
https://codeberg.org/dwl/dwl
Other
1.93k stars 284 forks source link

context menu being cut off #514

Closed Zerogaku closed 9 months ago

Zerogaku commented 9 months ago

I don't know if this has to do with my resolution as everything is being sized properly, but when using firefox the context menu does not align away from the edge of the screen, instead it get cuts off by it.

image image image

sevz17 commented 9 months ago

version?

Zerogaku commented 9 months ago

image

sevz17 commented 9 months ago

That commit does not exist... can you try with vanilla dwl?

Zerogaku commented 9 months ago

do you mean without patches?

sevz17 commented 9 months ago

Yes

Zerogaku commented 9 months ago

same problem occurs image image and about the commit, it's from a fresh dwl install, i did git clone https://github.com/djpohly/dwl.git right now and just enabled:

# Uncomment to build XWayland support
XWAYLAND = -DXWAYLAND
XLIBS = xcb xcb-icccm

firefox is also running in wayland mode with: export MOZ_ENABLE_WAYLAND=1 firefox in my profile

sevz17 commented 9 months ago

Ah right, about the commit, totally my bad I forgot that git prepends g before the commit hash in git-describe

Please send the stderr of WAYLAND_DEBUG=1 firefox while reproducing the bug

Zerogaku commented 9 months ago

I figured it out. The problem was firefox running in wayland mode, running firefox in xwayland by removing the line in zprofile fixes it: image image

Zerogaku commented 9 months ago

most probably i'd have to open an issue on bugzilla for this

sevz17 commented 9 months ago

The problem is that it was already fixed.

What is your wlroots version?

Zerogaku commented 9 months ago

my wlroots version is 0.16.2-2

Zerogaku commented 9 months ago

also how should i send the output of WAYLAND_DEBUG=1 firefox, i ran the command and it's outputting a ton of information

sevz17 commented 9 months ago

pipe the stderr to a file and attach the file in a comment

Zerogaku commented 9 months ago

ok so i ran WAYLAND_DEBUG=1 firefox 2> out.log and opened the context menu at the edges of the screen a few times and received an absurdly long output, I'm assuming only the last lines are important xD: https://pastebin.com/vxeet3Fz

sevz17 commented 9 months ago

Good, I'll inspect the result and then see what to do.

sevz17 commented 9 months ago

It's pretty strange, seems like firefox did not even try to create a popup...

What is your firefox version?

Zerogaku commented 9 months ago

I'm using version 119.0.1

sevz17 commented 9 months ago

Can you apply this to your dwl and send the stderr of dwl (not firefox) while you reproduce the bug, it's very unlikely but not impossible that dwl will crash with the patch, so only apply it to the build you'll use to test

diff --git a/dwl.c b/dwl.c
index a7d41b0..fcf9890 100644
--- a/dwl.c
+++ b/dwl.c
@@ -986,15 +986,17 @@ createnotify(struct wl_listener *listener, void *data)
        struct wlr_box box;
        int type = toplevel_from_wlr_surface(xdg_surface->surface, &c, &l);
        if (!xdg_surface->popup->parent || type < 0)
-           return;
+           die("popup=[%p]: failed to get the parent", (void*)xdg_surface->popup);
+       fprintf(stderr, "\npopup=[%p]: parent=[%p], type=[%d]\n", (void*)xdg_surface->popup, (type == XDGShell ? (void*)c : (void*)l), type);
        xdg_surface->surface->data = wlr_scene_xdg_surface_create(
                xdg_surface->popup->parent->data, xdg_surface);
        if ((l && !l->mon) || (c && !c->mon))
-           return;
+           die("popup=[%p]: the parent=[%p] does not have a monitor", (void *)xdg_surface->popup, (type == XDGShell ? (void*)c : (void*)l));
        box = type == LayerShell ? l->mon->m : c->mon->w;
        box.x -= (type == LayerShell ? l->geom.x : c->geom.x);
        box.y -= (type == LayerShell ? l->geom.y : c->geom.y);
        wlr_xdg_popup_unconstrain_from_box(xdg_surface->popup, &box);
+       fprintf(stderr, "popup=[%p]: x=[%d], y=[%d], width=[%d], height=[%d]\n\n", (void*)xdg_surface->popup, box.x, box.y, box.width, box.height);
        return;
    } else if (xdg_surface->role == WLR_XDG_SURFACE_ROLE_NONE)
        return;
Zerogaku commented 9 months ago

i ran dwl with dwl 2> dwllog.txt after applying the patch and reproduced the bug a bunch of times, here is the file:

libinput error: event7  - TPD1019:00 093A:0255 Touchpad: kernel bug: clickpad advertising right button. See https://wayland.freedesktop.org/libinput/doc/1.24.0/clickpad-with-right-button.html for details
dbus-daemon[3620]: Failed to start message bus: In D-Bus address, character '$' should have been escaped

info: fcft.c:338: fcft: 3.1.6 +graphemes +runs +svg(nanosvg) -assertions
info: fcft.c:377: fontconfig: 2.14.2, freetype: 2.13.2, harfbuzz: 8.3.0, utf8proc: 2.9.0 (Unicode 15.1.0)
info: fcft.c:838: /usr/share/fonts/noto/NotoSans-Regular.ttf: size=12.00pt/13px, dpi=75.00
info: fcft.c:838: /usr/share/fonts/TTF/JetBrainsMonoNerdFont-Regular.ttf: size=12.00pt/13px, dpi=75.00
info: fcft.c:838: /usr/share/fonts/TTF/JetBrainsMonoNerdFont-Regular.ttf: size=14.00pt/15px, dpi=75.00
info: bar/wayland.c:558: monitor: eDP-1: 1366x768+0+0 (260x140mm)
info: warn: modules/pulse.c:368: connection lost
modules/network.c:502: wlan0: ifindex=2
warn: modules/pulse.c:368: connection lost
info: modules/network.c:1000: wlan0: SSID: Casablanca Hotel
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
info: modules/battery.c:437: BAT1: Standard SF20GM7 (at 102.5% of original capacity)
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
The XKEYBOARD keymap compiler (xkbcomp) reports:
> Warning:          Could not resolve keysym XF86CameraAccessEnable
> Warning:          Could not resolve keysym XF86CameraAccessDisable
> Warning:          Could not resolve keysym XF86CameraAccessToggle
> Warning:          Could not resolve keysym XF86NextElement
> Warning:          Could not resolve keysym XF86PreviousElement
> Warning:          Could not resolve keysym XF86AutopilotEngageToggle
> Warning:          Could not resolve keysym XF86MarkWaypoint
> Warning:          Could not resolve keysym XF86Sos
> Warning:          Could not resolve keysym XF86NavChart
> Warning:          Could not resolve keysym XF86FishingChart
> Warning:          Could not resolve keysym XF86SingleRangeRadar
> Warning:          Could not resolve keysym XF86DualRangeRadar
> Warning:          Could not resolve keysym XF86RadarOverlay
> Warning:          Could not resolve keysym XF86TraditionalSonar
> Warning:          Could not resolve keysym XF86ClearvuSonar
> Warning:          Could not resolve keysym XF86SidevuSonar
> Warning:          Could not resolve keysym XF86NavInfo
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
Errors from xkbcomp are not fatal to the X server
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
The XKEYBOARD keymap compiler (xkbcomp) reports:
> Warning:          Unsupported maximum keycode 708, clipping.
>                   X11 cannot support keycodes above 255.
> Warning:          Could not resolve keysym XF86CameraAccessEnable
> Warning:          Could not resolve keysym XF86CameraAccessDisable
> Warning:          Could not resolve keysym XF86CameraAccessToggle
> Warning:          Could not resolve keysym XF86NextElement
> Warning:          Could not resolve keysym XF86PreviousElement
> Warning:          Could not resolve keysym XF86AutopilotEngageToggle
> Warning:          Could not resolve keysym XF86MarkWaypoint
> Warning:          Could not resolve keysym XF86Sos
> Warning:          Could not resolve keysym XF86NavChart
> Warning:          Could not resolve keysym XF86FishingChart
> Warning:          Could not resolve keysym XF86SingleRangeRadar
> Warning:          Could not resolve keysym XF86DualRangeRadar
> Warning:          Could not resolve keysym XF86RadarOverlay
> Warning:          Could not resolve keysym XF86TraditionalSonar
> Warning:          Could not resolve keysym XF86ClearvuSonar
> Warning:          Could not resolve keysym XF86SidevuSonar
> Warning:          Could not resolve keysym XF86NavInfo
Errors from xkbcomp are not fatal to the X server
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
warn: modules/pulse.c:368: connection lost
[W][00901.854125] mod.rt       | [     module-rt.c:  298 translate_error()] RTKit error: org.freedesktop.DBus.Error.ServiceUnknown
[W][00901.854159] mod.rt       | [     module-rt.c:  988 do_rtkit_setup()] RTKit does not give us MaxRealtimePriority, using 1
[W][00901.854525] mod.rt       | [     module-rt.c:  298 translate_error()] RTKit error: org.freedesktop.DBus.Error.ServiceUnknown
[W][00901.854531] mod.rt       | [     module-rt.c:  993 do_rtkit_setup()] RTKit does not give us MinNiceLevel, using 0
[W][00901.854685] mod.rt       | [     module-rt.c:  298 translate_error()] RTKit error: org.freedesktop.DBus.Error.ServiceUnknown
[W][00901.854690] mod.rt       | [     module-rt.c:  998 do_rtkit_setup()] RTKit does not give us RTTimeUSecMax, using -1
info: modules/pulse.c:290: PulseAudio (on PipeWire 0.3.84), version 15.0.0
 err: modules/pulse.c:267: failed to get sink info: No such entity
 err: modules/pulse.c:280: failed to get source info: No such entity
[W][00901.876020] mod.rt       | [     module-rt.c:  298 translate_error()] RTKit error: org.freedesktop.DBus.Error.ServiceUnknown
[W][00901.876047] mod.rt       | [     module-rt.c:  988 do_rtkit_setup()] RTKit does not give us MaxRealtimePriority, using 1
[W][00901.876104] mod.protocol-pulse | [        server.c:  589 start_unix_server()] server 0x55f8c2920460: socket '/run/user/1000/pulse/native' is in use
[W][00901.876143] mod.protocol-pulse | [        server.c: 1021 servers_create_and_start()] pulse-server 0x55f8c291fcb0: failed to start server on 'unix:/run/user/1000/pulse/native': Address already in use
[E][00901.876153] mod.protocol-pulse | [  pulse-server.c: 5542 pw_protocol_pulse_new()] 0x55f8c291fcb0: no servers could be started: Address already in use
[E][00901.876230] pw.conf      | [          conf.c:  573 load_module()] 0x55f8c28c85a0: could not load mandatory module "libpipewire-module-protocol-pulse": Address already in use
[W][00901.876268] mod.rt       | [     module-rt.c:  298 translate_error()] RTKit error: org.freedesktop.DBus.Error.ServiceUnknown
[W][00901.876273] mod.rt       | [     module-rt.c:  993 do_rtkit_setup()] RTKit does not give us MinNiceLevel, using 0
[W][00901.876523] mod.rt       | [     module-rt.c:  298 translate_error()] RTKit error: org.freedesktop.DBus.Error.ServiceUnknown
[W][00901.876529] mod.rt       | [     module-rt.c:  998 do_rtkit_setup()] RTKit does not give us RTTimeUSecMax, using -1
[E][00901.876823] default      | [      pipewire.c:  105 main()] failed to create context: Address already in use
M 00:29:47.716161             mod.rt ../pipewire/src/modules/module-rt.c:298:translate_error: RTKit error: org.freedesktop.DBus.Error.ServiceUnknown
M 00:29:47.716237             mod.rt ../pipewire/src/modules/module-rt.c:988:do_rtkit_setup: RTKit does not give us MaxRealtimePriority, using 1
M 00:29:47.716399             mod.rt ../pipewire/src/modules/module-rt.c:298:translate_error: RTKit error: org.freedesktop.DBus.Error.ServiceUnknown
M 00:29:47.716410             mod.rt ../pipewire/src/modules/module-rt.c:993:do_rtkit_setup: RTKit does not give us MinNiceLevel, using 0
M 00:29:47.716581             mod.rt ../pipewire/src/modules/module-rt.c:298:translate_error: RTKit error: org.freedesktop.DBus.Error.ServiceUnknown
M 00:29:47.716590             mod.rt ../pipewire/src/modules/module-rt.c:998:do_rtkit_setup: RTKit does not give us RTTimeUSecMax, using -1
W 00:29:47.760369                 pw ../pipewire/spa/plugins/bluez5/upower.c:54:upower_get_percentage_properties_reply: Failed to get percentage from UPower: org.freedesktop.DBus.Error.NameHasNoOwner
[0:15:02.084839142] [3654] ERROR IPAModule ipa_module.cpp:172 Symbol ipaModuleInfo not found
[0:15:02.084875271] [3654] ERROR IPAModule ipa_module.cpp:292 v4l2-compat.so: IPA module has no valid info
[0:15:02.084906482] [3654]  INFO Camera camera_manager.cpp:284 libcamera v0.1.0
W 00:29:48.208754           spa.alsa ../pipewire/spa/plugins/alsa/acp/alsa-mixer.c:1660:element_probe_volume: The decibel volume range for element 'PCM' (-4500 dB - -500 dB) has negative maximum. Disabling the decibel range.
W 00:29:48.208805           spa.alsa ../pipewire/spa/plugins/alsa/acp/alsa-mixer.c:1660:element_probe_volume: The decibel volume range for element 'PCM' (-4500 dB - -500 dB) has negative maximum. Disabling the decibel range.
W 00:29:48.208821           spa.alsa ../pipewire/spa/plugins/alsa/acp/alsa-mixer.c:1660:element_probe_volume: The decibel volume range for element 'PCM' (-4500 dB - -500 dB) has negative maximum. Disabling the decibel range.
W 00:29:48.208836           spa.alsa ../pipewire/spa/plugins/alsa/acp/alsa-mixer.c:1660:element_probe_volume: The decibel volume range for element 'PCM' (-4500 dB - -500 dB) has negative maximum. Disabling the decibel range.
W 00:29:48.208848           spa.alsa ../pipewire/spa/plugins/alsa/acp/alsa-mixer.c:1660:element_probe_volume: The decibel volume range for element 'PCM' (-4500 dB - -500 dB) has negative maximum. Disabling the decibel range.
W 00:29:48.478329         spa.bluez5 ../pipewire/spa/plugins/bluez5/bluez5-dbus.c:5323:get_managed_objects_reply: GetManagedObjects() failed: org.freedesktop.DBus.Error.NameHasNoOwner
[0:15:02.802505372] [3619] ERROR IPAModule ipa_module.cpp:172 Symbol ipaModuleInfo not found
[0:15:02.802538124] [3619] ERROR IPAModule ipa_module.cpp:292 v4l2-compat.so: IPA module has no valid info
[0:15:02.802573468] [3619]  INFO Camera camera_manager.cpp:284 libcamera v0.1.0
W 00:29:48.513920 m-portal-permissio ../wireplumber/modules/module-portal-permissionstore.c:63:wp_portal_permissionstore_plugin_lookup: <WpPortalPermissionStorePlugin:0x55b02fcaadb0> Failed to call Lookup: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.impl.portal.PermissionStore was not provided by any .service files
W 00:29:48.514420 m-portal-permissio ../wireplumber/modules/module-portal-permissionstore.c:63:wp_portal_permissionstore_plugin_lookup: <WpPortalPermissionStorePlugin:0x55b02fcaadb0> Failed to call Lookup: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.impl.portal.PermissionStore was not provided by any .service files
warn: wayland.c:1509: fractional scaling not available
warn: wayland.c:1512: no server-side cursors available, falling back to client-side cursors
warn: wayland.c:1523: text input interface not implemented by compositor; IME will be disabled
00:00:08.080 [ERROR] [backend/drm/atomic.c:72] connector eDP-1: Atomic commit failed: Device or resource busy
00:00:08.130 [ERROR] [backend/drm/atomic.c:72] connector eDP-1: Atomic commit failed: Device or resource busy
00:00:08.147 [ERROR] [backend/drm/atomic.c:72] connector eDP-1: Atomic commit failed: Device or resource busy
00:00:08.264 [ERROR] [backend/drm/atomic.c:72] connector eDP-1: Atomic commit failed: Device or resource busy
00:00:08.613 [ERROR] [backend/drm/atomic.c:72] connector eDP-1: Atomic commit failed: Device or resource busy
00:00:08.680 [ERROR] [backend/drm/atomic.c:72] connector eDP-1: Atomic commit failed: Device or resource busy
00:00:08.980 [ERROR] [backend/drm/atomic.c:72] connector eDP-1: Atomic commit failed: Device or resource busy
(EE) failed to read Wayland events: Broken pipe
info: main.c:378: aborted: Terminated (15)
Gdk-Message: 00:30:38.554: Lost connection to Wayland compositor.
Exiting due to channel error.
Exiting due to channel error.
Exiting due to channel error.
Exiting due to channel error.
Exiting due to channel error.
Exiting due to channel error.
Exiting due to channel error.
Exiting due to channel error.
Exiting due to channel error.
Exiting due to channel error.
Exiting due to channel error.
M 00:30:38.739392        wireplumber ../wireplumber/src/main.c:364:on_disconnected: disconnected from pipewire

though is seems to not have outputed any of the relevant information

sevz17 commented 9 months ago

Yeah, firefox bugzilla is it. I don't know why this happens, for me it works perfectly...

Oh, before that, does it only happen with firefox or it also happens with other apps?

EDIT: can you try with the wlroots-next branch?, and while you are on it please also test with the master branch of sway, in both cases please attach the debug output (in both it is enabled with the -d option)

Zerogaku commented 9 months ago

The issue could be caused by something simple like resolution (as mine is 1366x768) but in the meantime i'll continue test with other apps, as of now no other apps that i've used (inkscape and gimp-devel) has this issue, also what is the wlroots-next branch? I considered using it before starting to use dwl. Is it better to build dwl with that branch?

another side note that could be related, sometimes dwl has issues with floating popup windows spawning behind the main window (like app preferences) though i might make a separate issue for that.

I'll test with sway when i have the time. thanks for the help!

sevz17 commented 9 months ago

The issue could be caused by something simple like resolution (as mine is 1366x768) ...

Mine is the same and I don't have this issue, so probably it's not it.

... also what is the wlroots-next branch? I considered using it before starting to use dwl. Is it better to build dwl with that branch?

It's the branch dwl uses to track wlroots master branch. Hm, it has new features introduced in wlroots master, as well wlroots' bug fixes, although, of course, you could hit a regression, I have using that branch (along with my patches and also testing PRs) for a quite long time (since v0.4?), and I have encountered a few bugs (including some crashes) but they were quickly fixed. As for now it's been a long time since I hit a bug introduced by wlroots.

another side note that could be related, sometimes dwl has issues with floating popup windows spawning behind the main window (like app preferences) though i might make a separate issue for that.

Yeah, that sounds like another bug, please open another issue.

I'll test with sway when i have the time. thanks for the help!

Thanks to you!

Zerogaku commented 9 months ago

Hey quick question, are you using an arch-based distro? If so what firefox version are you using? Regular firefox from the main repository? Or this https://aur.archlinux.org/packages/firefox-wayland-hg?

Also good news, i installed wlroots-next and wlroots-git and the context menu bug is fixed! Problem is firefox spawns with black bars on the sides of the window witch is weird.

sevz17 commented 9 months ago

Hey quick question, are you using an arch-based distro? If so what firefox version are you using? Regular firefox from the main repository? Or this https://aur.archlinux.org/packages/firefox-wayland-hg?

I am using gentoo, with the following USE: USE="clang dbus geckodriver gmp-autoupdate hardened hwaccel jumbo-build lto pgo pulseaudio screencast system-av1 system-harfbuzz system-icu system-jpeg system-libevent system-libvpx system-webp telemetry wayland wifi -X -debug -eme-free -jack -libproxy -openh264 (-selinux) -sndio -system-png (-system-python-libs) (-valgrind)"

Also good news, i installed wlroots-next and wlroots-git and the context menu bug is fixed! Problem is firefox spawns with black bars on the sides of the window witch is weird.

Ah yeah, that's a known issue I have to fix before releasing v0.5

Zerogaku commented 9 months ago

Thanks! Can't wait for 0.5 😄 @sevz17 I have tried the latest commit and the issue got fixed for firefox, thank you for you help!

One last thing, when patching dwl, i noticed that some of the patches included are called wlroots-next (xxxx-xx-xx) like autostart patch and client opacity patch, what does that mean? Does that mean that the wlroots-next branch of dwl already includes them as features? Or does that mean that if I use wlroots-next branch that I have to use those patches instead?

sevz17 commented 9 months ago

Most of the time main and wlroots-next are not compatible, which means that a patch created based on main will not apply to wlroots-next. Patches named like that are meant to be applied onto wlroots-next branch

Zerogaku commented 9 months ago

Most of the time main and wlroots-next are not compatible, which means that a patch created based on main will not apply to wlroots-next. Patches named like that are meant to be applied onto wlroots-next branch

What's strange is that I was able to apply the 2023-10-15 autostart patch no problem, and it works well on the wlroots-next branch