Third-party dock (C++): how to support AutoHide (Screen Edge) and Global Shortcuts ?

Viet Dang <[email protected]> Fri, 18 Oct 2024 21:03:44 +0100
Newsgroups gmane.comp.kde.devel.kwin
Message-ID <CAO-rTSE3P2x1Lyebyo2aFZfT4FmRNwg8TKNUZTbDzYvJct13pQ@mail.gmail.com>
--00000000000084d14c0624c5cd0d
Content-Type: text/plain; charset="UTF-8"

Hi,

I'm working on some improvements of my third-party dock (written in C++
here: https://github.com/dangvd/crystal-dock) and have some questions about
AutoHide (Screen Edge) and Global Shortcuts support in KWin:
- AutoHide: I'd like to get my dock to have an AutoHide behaviour like that
of a Plasma panel. Is Screen Edge protocol (
https://wayland.app/protocols/kde-screen-edge-v1) the right one to use? And
if it is, what's the best way to get wl_surface object from my main widget?
(I already use layer-shell-qt for my main widget)
- Global Shortcuts: how do I support global shortcuts for my dock (e.g.
Meta-1 to activate launcher 1 and so on). Is xdg-desktop-portal (
https://github.com/flatpak/xdg-desktop-portal/blob/main/data/org.freedesktop.portal.GlobalShortcuts.xml)
the right one to use?

Thanks a lot,
Viet

--00000000000084d14c0624c5cd0d
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">Hi,<div><br></div><div>I&#39;m working on some improvement=
s of my third-party dock (written in C++ here: <a href=3D"https://github.co=
m/dangvd/crystal-dock">https://github.com/dangvd/crystal-dock</a>) and have=
 some questions about AutoHide (Screen Edge) and Global Shortcuts support i=
n KWin:</div><div>- AutoHide: I&#39;d like to get my dock to have an AutoHi=
de behaviour like that of a Plasma panel. Is Screen Edge protocol (<a href=
=3D"https://wayland.app/protocols/kde-screen-edge-v1">https://wayland.app/p=
rotocols/kde-screen-edge-v1</a>) the right one to use? And if it is, what&#=
39;s the best way to get=C2=A0wl_surface object from my main widget? (I alr=
eady use layer-shell-qt for my main widget)</div><div>- Global Shortcuts: h=
ow do I support global shortcuts for my dock (e.g. Meta-1 to activate launc=
her 1 and so on). Is xdg-desktop-portal (<a href=3D"https://github.com/flat=
pak/xdg-desktop-portal/blob/main/data/org.freedesktop.portal.GlobalShortcut=
s.xml">https://github.com/flatpak/xdg-desktop-portal/blob/main/data/org.fre=
edesktop.portal.GlobalShortcuts.xml</a>) the right one to use?</div><div><b=
r></div><div>Thanks a lot,</div><div>Viet</div><div><br></div></div>

--00000000000084d14c0624c5cd0d--