helloSystem / Menu

Global menu bar written in Qt
43 stars 14 forks source link

Make menu Zeroconf-aware #19

Open probonopd opened 3 years ago

probonopd commented 3 years ago

RIght now we display various applications in the menu. Wouldn't it be nice if we could also show for each application's menu entry a submenu with services announced on the network that can be used with this application? E.g., the Printer application would show all printers in a submenu, the Terminal application would show all servers reachable on the LAN via SSH in a submenu, the Browser appliaction would show all websites on the LAN in a submenu, and so on.

This should also automatically make the network services available from Action Search... and remove the need for a separate Zeroconf chooser utility like the one we currently have:

image

Instead, the "Chromium" menu entry would get submenus for http://Asterisk.local.:8088 etc.

image

We could then also type aster... into the Action Search box and would get a result that would open http://Asterisk.local.:8088 with Chrome (and each other browser installed):

image

For this to work, each application would have to specify which Zeroconf services it can handle and for how to invoke the application using the arguments provided by Zeroconf.

probonopd commented 3 years ago

https://github.com/jbagg/QtZeroConf ("please contact me for a copy of QZeroConf with a BSD licence")

Reference:

probonopd commented 1 year ago

https://github.com/nitroshare/qmdnsengine is a Multicast DNS library for Qt applications which requires only QtCore and QtNetwork - no other dependencies. No Avahi! No Glib! No (L)GPL! Yay! And it is already in FreeBSD: https://www.freshports.org/dns/qmdnsengine