Git Product home page Git Product logo

Comments (18)

cr1ogen avatar cr1ogen commented on August 16, 2024 1

Yes, I am using the latest version. When I get off work I'll update qtile with the latest changes

from qtile-extras.

elParaguayo avatar elParaguayo commented on August 16, 2024

Interesting.

I don't use Wayland so hadn't seen this but I suspect it's due to the changes that were made recently to how we handle certain window types.

I suspect any fix would be at the qtile level, rather than in this repo.

from qtile-extras.

elParaguayo avatar elParaguayo commented on August 16, 2024

Hmm. Having tested it. Context menu works for me Tested with both vlc and remmina.

from qtile-extras.

cr1ogen avatar cr1ogen commented on August 16, 2024

Okay. I tried with Steam and OBS, later when I get home from work I'll try with your 2 applications. Maybe it stopped working with apps that use Xwayland

from qtile-extras.

cr1ogen avatar cr1ogen commented on August 16, 2024

vlc and remmina doesn't even show the icons in my StatusNotifier config, neither Wayland nor X11.
Now in obs it does show the context menu, but in steam it doesn't and when I click on the icon it shows me this message

2022-03-04 23:18:42,162 ERROR libqtile loop.py:_handle_exception():L63 division by zero
Traceback (most recent call last):
  File "/usr/lib/python3.9/asyncio/events.py", line 80, in _run
    self._context.run(self._callback, *self._args)
  File "/usr/local/lib/python3.9/dist-packages/qtile_extras-0.1.0-py3.9.egg/qtile_extras/widget/statusnotifier.py", line 231, in parse_menu
    callback(menu)
  File "/usr/local/lib/python3.9/dist-packages/qtile_extras-0.1.0-py3.9.egg/qtile_extras/widget/statusnotifier.py", line 373, in display_menu
    self.menu = PopupMenu.from_dbus_menu(self.qtile, menu_items, **self.menu_config)
  File "/usr/local/lib/python3.9/dist-packages/qtile_extras-0.1.0-py3.9.egg/qtile_extras/popup/menu.py", line 188, in from_dbus_menu
    return cls.generate(qtile, menuitems, **config)
  File "/usr/local/lib/python3.9/dist-packages/qtile_extras-0.1.0-py3.9.egg/qtile_extras/popup/menu.py", line 212, in generate
    return cls(qtile, controls=menuitems, **menu_config)
  File "/usr/local/lib/python3.9/dist-packages/qtile_extras-0.1.0-py3.9.egg/qtile_extras/popup/menu.py", line 146, in __init__
    PopupGridLayout.__init__(self, qtile, controls=controls, **config)
  File "/usr/local/lib/python3.9/dist-packages/qtile_extras-0.1.0-py3.9.egg/qtile_extras/popup/toolkit.py", line 398, in __init__
    self._width = self.rows * round((self.width - 2 * self.margin) / self.rows)
ZeroDivisionError: division by zero

from qtile-extras.

cr1ogen avatar cr1ogen commented on August 16, 2024

And this is a general log, from my Qtile

2022-03-04 23:06:23,113 ERROR libqtile loop.py:_handle_exception():L63 invalid object path: org.kde.StatusNotifierItem-2880-2
Trace (most recent recent calls):
  File "/usr/lib/python3.9/asyncio/events.py", line 80, in _run
    self._context.run(self._callback, *self._args)
  File "/usr/local/lib/python3.9/dist-packages/libqtile/widget/statusnotifier.py", line 480, in item_added
    success = future.result()
  File "/usr/local/lib/python3.9/dist-packages/libqtile/widget/statusnotifier.py", line 97, at start
    introspect = expect self.bus.introspect(self.service, self.path)
  File "/usr/local/lib/python3.9/dist-packages/dbus_next/aio/message_bus.py", line 214, in introspection
    super().introspect(bus_name, route, answer_handler)
  File "/usr/local/lib/python3.9/dist-packages/dbus_next/message_bus.py", line 204, in introspection
    Message(destination=bus_name,
  File "/usr/local/lib/python3.9/dist-packages/dbus_next/message.py", line 92, in __init__
    assert_object_path_valid(auto.path)
  File "/usr/local/lib/python3.9/dist-packages/dbus_next/validators.py", line 153, in assert_object_path_valid
    raise InvalidObjectPathError(path)
dbus_next.errors.InvalidObjectPathError: invalid object path: org.kde.StatusNotifierItem-2880-2
2022-03-04 23:07:37,909 WARNING libqtile lifecycle.py:_atexit():L37 Qtile will now terminate
2022-03-04 23:07:48,850 WARNING libqtile prompt.py:_configure():L429 Prompt widget only supports audible chime on X11
2022-03-04 23:07:48,850 WARNING libqtile tasklist.py:_configure():L294 Tasklist icons are not supported in Wayland.
2022-03-04 23:09:47,211 WARNING libqtile prompt.py:_configure():L429 Prompt widget only supports audible chime on X11
2022-03-04 23:09:47,211 WARNING libqtile tasklist.py:_configure():L294 Tasklist icons are not supported in Wayland.
2022-03-04 23:12:42,298 WARNING libqtile prompt.py:_configure():L429 Prompt widget only supports audible chime on X11
2022-03-04 23:12:42,299 WARNING libqtile tasklist.py:_configure():L294 Tasklist icons are not supported in Wayland.

from qtile-extras.

elParaguayo avatar elParaguayo commented on August 16, 2024

Thanks for posting more info.

I tried installing obs and steam and the menus work on both of them for me.

Your first error is interesting as it suggests that there are no menu items. I don't think the code currently handles that possibility so I can try adding something there. However, as above, the menus work for me so I'm not sure this is the problem.

from qtile-extras.

elParaguayo avatar elParaguayo commented on August 16, 2024

I've pushed a change that will stop the widget trying to create a menu when there are no menu items. You could see if that makes any difference here.

from qtile-extras.

cr1ogen avatar cr1ogen commented on August 16, 2024

I've pushed a change that will stop the widget trying to create a menu when there are no menu items. You could see if that makes any difference here.

Update the repository and do not notice any changes. Also as you say, maybe it's more because of the qtile code, since I'm always updating it and it worked before.
Also do not worry about this issue, but it would be nice if they could incorporate part of the code of your StatusNotifier widget to the official Qtile since yours has context menus, in order to improve it

from qtile-extras.

elParaguayo avatar elParaguayo commented on August 16, 2024

It will never be merged into the main repo as there's too much extra code required.

If the menus worked before, can you try doing a git bisect? Again, I'm dubious if that would work because I can't replicate this

from qtile-extras.

cr1ogen avatar cr1ogen commented on August 16, 2024

I update all pip packages and steam context menu and obs started working. But I have to restart qtile with mod+ctrl+r for it to work. I guess it's some problem with the qtile bar, because sometimes when I move the mouse up in some widget the pointer disappears. Also for the mouse pointer to appear I have to have a window open, but that is already a problem of qtile with wayland. So I'm going to close this issue. Thank you very much

from qtile-extras.

cr1ogen avatar cr1ogen commented on August 16, 2024

I install nm-tray (QT app) and give me this error in the log file

Traceback (most recent call last): File "/usr/lib/python3.9/asyncio/events.py", line 80, in _run self._context.run(self._callback, *self._args) File "/usr/local/lib/python3.9/dist-packages/libqtile/widget/statusnotifier.py", line 480, in item_added success = future.result() File "/usr/local/lib/python3.9/dist-packages/libqtile/widget/statusnotifier.py", line 97, in start introspection = await self.bus.introspect(self.service, self.path) File "/usr/local/lib/python3.9/dist-packages/dbus_next/aio/message_bus.py", line 214, in introspect super().introspect(bus_name, path, reply_handler) File "/usr/local/lib/python3.9/dist-packages/dbus_next/message_bus.py", line 204, in introspect Message(destination=bus_name, File "/usr/local/lib/python3.9/dist-packages/dbus_next/message.py", line 92, in __init__ assert_object_path_valid(self.path) File "/usr/local/lib/python3.9/dist-packages/dbus_next/validators.py", line 153, in assert_object_path_valid raise InvalidObjectPathError(path) dbus_next.errors.InvalidObjectPathError: invalid object path: org.kde.StatusNotifierItem-1771-1

An this in the app (i launched by kitty)

QSystemTrayIcon::setVisible: No Icon set QDBusTrayIcon encountered a D-Bus error: QDBusError("org.freedesktop.DBus.Error.NoReply", "Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.")

If I use any GTK widget it doesn't give me any error but the widget doesn't appear either

I re-open the issue. If you want, feel free to close it. Thank you

from qtile-extras.

elParaguayo avatar elParaguayo commented on August 16, 2024

Just to check: are you running latest qtile-extras now?

The second error message is hopefully fixed by qtile/qtile#3434

I've installed nm-tray from the AUR but can't get it to run. Get an error No Icon Set. This happens because they don't provide any fallback icons. There's an unmerged PR that fixes this so I may have to build it manually unless you know how to fix that (the fix in palinek/nm-tray#40 didn't work for me).

from qtile-extras.

elParaguayo avatar elParaguayo commented on August 16, 2024

OK. Built from git with their PR to add fallback icons.

Menus work for me on both.

from qtile-extras.

cr1ogen avatar cr1ogen commented on August 16, 2024

I have applied the changes in Qtile, in my case nm-tray still does not show the icon in the system tray, but icons that were not shown before like VLC now do.
The context menus for which I made this issue now work, but first I have to restart qtile with mod4+Ctrl+R for them to do so.

from qtile-extras.

elParaguayo avatar elParaguayo commented on August 16, 2024

You really shouldn't have to restart. Do any of your widgets respond to mouse clicks before restarting?

from qtile-extras.

cr1ogen avatar cr1ogen commented on August 16, 2024

No, the mouse does not respond to clicks before restart

from qtile-extras.

elParaguayo avatar elParaguayo commented on August 16, 2024

Can you check if the same thing happens if you remove the status notifier widget. If it does, post an issue on the qtile repo instead and we'll take a look.

from qtile-extras.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.