如何创建类似于 yakuake 的 'desktop dropdown'?

How can I create a 'desktop dropdown' similar to yakuake?

我一直在为我和我的朋友开发一个 Messenger 应用程序(主要是用 Python 编写的)作为一个副项目。现在,由于桌面通常是一团糟,而且大多数人通常打开了太多 windows,我真的很想将它包装在 'desktop dropdown' 中(抱歉,我没有更好的词来形容它) .这样我可以在需要时使用快捷键弹出它,但它不会在不需要时添加 window 到混乱中。我对整个想法的灵感来自 Yakuake(Linux 下拉终端)。

现在的问题是我真的不知道从哪里开始。我知道这不是 SO 上的人们普遍喜欢的问题,但到目前为止我的所有研究都没有给我带来任何结果,我只是不知道我还能在哪里提出这样的问题。 所以,简而言之,我在寻找什么:

对于这个非常悬而未决的问题再次抱歉。在这一点上,经过我所有的研究,我只是希望能幸运地找到一个可以给我建议从哪里开始寻找的人。

这不是一个完整的答案,但我做了一些挖掘 Yakuake 是如何做到的:

Yakuake 是使用 KDE Frameworks, a C++ library that extends the Qt Framework. Qt is a UI framework mainly for C++ but it also has Python bindings 编写的。

在 KFW 的 source code for Yakuake, they are mainly referring to this function 中,将一些数据设置为实际的 window 系统。所以简而言之,Yakuake 使用 KFW 使用原生 window 效果做了一些奇特的事情。

如果你不想为此学习 C++,你可以只使用 Qt(或任何其他 Python UI 框架)并做一些动画 window身高.

您可能需要考虑的另一件事是设置快捷键,这也会根据您使用的 OS/DE 而有所不同。