Это в основном тот же вопрос, что и this one, но для GTK + вместо Qt.Как сохранить буфер обмена при выходе приложения
Как я могу предотвратить сброс буфера обмена при выходе приложения?
Это в основном тот же вопрос, что и this one, но для GTK + вместо Qt.Как сохранить буфер обмена при выходе приложения
Как я могу предотвратить сброс буфера обмена при выходе приложения?
Образец кода, показанный в принятом ответе, предназначен только для Windows. GTK + already preserves the clipboard itself when gtk_main()
returns, где он может; вам не нужно делать ничего особенного (но вам нужно вернуться с gtk_main()
, поэтому не вызывайте exit()
из обработчика сигнала).
Что касается платформ Unix, то ответ rr-s по-прежнему применяется: вы не можете сделать это в Linux и других подобных Unix-системах, поскольку сам X11 вытирает ваш буфер обмена, когда программа завершает работу. У вас должен быть установлен менеджер буфера обмена.
Благодарим за сообщение, что использование менеджера буфера обмена устраняет эту проблему в Unixes. Тем не менее, Firefox сохраняет буфер обмена без менеджера буфера обмена, поэтому мне интересно, как он это делает. Считаете ли вы, что использование 'XStoreBytes' или буфера вырезания сделает это? – antoyo