c++ - 在 KDE 上清除剪贴板

标签 c++ gtk clipboard fedora kde-plasma

我在使用 X11 的 Linux 平台上使用 gtk 清除剪贴板,我希望它能在所有 Linux 平台上运行。但是,我的 gtk 代码不适用于 Fedora KDE 和 Fedora 的某些发行版。当调用clipboard_clear函数时,剪贴板不会被清除。

void clipboard_clear() {
  gtk_init(&args,NULL);
  GtkClipboard* cb = gtk_clipboard_get(GDK_SELECTION_PRIMARY);
  gtk_clipboard_clear(cb);
  gtk_clipboard_set_text(cb, "", 0);

  cb = gtk_clipboard_get(GDK_SELECTION_CLIPBOARD);
  gtk_clipboard_clear(cb);
  gtk_clipboard_set_text(cb, "", 0);
}

我可以做些什么来使这个 gtk 实现在 Fedora KDE 上正常工作吗?如果没有,是否有任何库可以清除 KDE 上的剪贴板并静态链接? (由于许可限制,Qt 不在其中。)

最佳答案

外部剪贴板管理器阻止上述代码清除剪贴板。

在 Fedora 19 KDE 上,klipper 已预装。关闭后,清除功能就没有问题了。同样,在 Fedora 19 LXDE 上,clipit 已预安装。

关于c++ - 在 KDE 上清除剪贴板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18409919/

相关文章:

c - GtkWindow 未被文件选择器识别为 C

c# - OSx 单声道 gtk Hello World 。 Gtk.Container 抛出异常

gtk - GLib编译错误(ffi.h),但libffi已安装

c# - 有效地获取格式化的单元格值

reactjs - 异步剪贴板 API "ClipboardItem is not defined"- Reactjs 将图像复制到剪贴板

c++ - 在多线程应用程序中控制对输出的访问

Android NDK 中的 C++ 模板

c++ - 为什么不能用结构定义模板?

c++ - GpuMat - 访问自定义内核中的 2 channel float 据

java - Java系统剪贴板可以复制文件吗?