LINUX.ORG.RU

[wine] Очищается буфер обмена при закрытии программы. У всех так?


0

1

Здравствуйте!


Я недавно переехал с Lenny на Squeeze, и наткнулся на регрессию, которая мешает мне использовать нужную для работы win-программу. Не могу понять, кто виноват - Wine, KDE4 или X11.

Регрессия заключается в следующем. Если в окне запущенной win-программы выделить и скопировать какой-нибудь текст, то он нормально помещается в буфер обмена. Проблема в том, что он там лежит только на время работы программы. При выходе из win-программы в буфере обмена становится пусто.

В Debian Lenny с родным Wine 1.0.1 такого не наблюдалось.

В Debian Squeeze невозможно собрать Wine 1.0.x, так как в библиотеке freetype на текущий момент выпилили какие-то функции. Ошибка «freetype.c error: ‘FT_MulFix’ undeclared here (not in a function)».

Попытки собрать другие версии (чтоб «поймать» момент, когда же буфер стал обнуляться при выходе) показала, что та минимальная версия Wine, которая собирается и работает в Squeeze, уже имеет регрессию.

Были пророверены следующие версии Wine (номера выбирались методом бисекций, до момента неработающего функционала):


1.2.2 - Буфер обмена очищается при выходе

1.1.34 - Буфер обмена очищается при выходе

1.1.28 - Буфер обмена очищается при выходе

1.1.26 - Буфер обмена очищается при выходе

1.1.25 - Зависает при нажатии Ctrl+C, в буфер вообще ничего не копируется

1.1.23 - Программа не запускается, Access violation, exception 0x00000001

1.1.20 - Программа не запускается, Access violation, exception 0x00000001

1.1.17 - Зависает при нажатии Ctrl+C, в буфер вообще ничего не копируется

1.1.12 - Зависает при нажатии Ctrl+C, в буфер вообще ничего не копируется


В общем, в Squeeze использовать Wine стало невозможно.

А вопрос в следующем. Нужно выяснить, в чем причина такой регрессии. Вполне может быть что и не Wine виновата, а KDE4 или X11. Просьба к тем, у кого есть Wine, запустить команду:

wine ~/.wine/drive_c/windows/notepad.exe

написать пару строк и скопировать в буфер обмена. Вставить текст в другой редактор не закрывая notepad.exe, и попроовать вставить текст после закрытия notepad.exe.

Отпишите в эту тему, что у вас происходит. Желательно указать версию Wine и версию десктопа (Gnome, KDE, etc...).

Спасибо.

Ответ на: комментарий от vurdalak

> Запустите klipper, он будет хранить буфер даже при закрытии программ.

Не хранит, в том то и дело.

И даже галку поставил «Не допускать пустого буфера обмена» - тоже бестолку.

xintrea ()
Ответ на: комментарий от xintrea

xintrea> Так какой диагноз? Klipper в Squeeze не работает какнада?

Наверное версия кед более старая. Окошко настроек у нас отличается. Поищите другую подобную программу.

vurdalak ★★★★★ ()

Ты всё ещё запускаешь Фар под вайном?

akk ★★★★★ ()
Ответ на: комментарий от vurdalak

> Наверное версия кед более старая. Окошко настроек у нас отличается. Поищите другую подобную программу.

Да, это проблема не Wine, а Klipper-а и KDE4.

В других программах аналогично - буфер очищается при выходе из программы.

Мля, это такой явный баг, какого хрена в Squeeze он делает?


xintrea ()
Ответ на: комментарий от xintrea

Debian Squeeze KDE

Открываю два документа в KWrite: один будет источником, другой - приёмником.

Для чистоты эксперимента очищаю историю Klipper

Копирую кусок текста из первого документа, он появляется в истории Klipper и благополучно вставляется во второй документ.

Вырезаю кусок текста из первого документа - в истории Klipper его не видно, но во второй документ вставляется без проблем.

Очищаю историю Klipper

Повторяю эксперимент, но теперь документ-источник будет закрыт после того как текст из него будет скопирован/вырезан.

При копировании текст попадает в историю Klipper, но во второй документ не вставляется (хотя пункт «Вставить» активен); в истории Klipper выбираю нужный текст - теперь всё ok

В случае с «вырезанием» - текст утрачен: его нет в истории Klipper и «Вставить» его в документ-приёмник не удалось.

Thom ()
Ответ на: комментарий от Thom

> Повторяю эксперимент, но теперь документ-источник будет закрыт после того как текст из него будет скопирован/вырезан. При копировании текст попадает в историю Klipper, но во второй документ не вставляется (хотя пункт «Вставить» активен)

Ага, что и требовалось доказать.


> в истории Klipper выбираю нужный текст - теперь всё ok

Угу. У меня так же. Приходится каждый раз передергивать буфер обмена чтоб вытащить что там в последний раз было скопировано.

xintrea ()
Ответ на: комментарий от Thom

Не подтверждаю. Клиппер хранит все данные в буфере, как при вырезании с сохранением файла и закрытием, так и при копировании из одного файла в другой, загнал туда фрагменты 12 различных файлов. Баг локальный

coldy ★★ ()
Ответ на: комментарий от coldy

> Не подтверждаю. Клиппер хранит все данные в буфере, как при вырезании с сохранением файла и закрытием, так и при копировании из одного файла в другой, загнал туда фрагменты 12 различных файлов. Баг локальный

Squeeze,GNOME 2.30.2


Что-то я не понял, что ты проверял. Мы говорим про KDE4.

Проверь просто вот так: http://www.linux.org.ru/forum/general/5855585?lastmod=1296472263881

xintrea ()
Ответ на: комментарий от Thom

>Klipper из KDE3 в Lenny как-то более адекватно работал.

klipper в KDE3 вообще рулил. А в KDE4 в монстра какого-то превратился. Пока совсем у меня работать не перестал под Gnome, что в Ubuntu, что в Gentoo: http://www.linux.org.ru/forum/talks/5833376

KRoN73 ★★★★★ ()
Ответ на: комментарий от xintrea

Я не пользуюсь KDE, поэтому по рецепту сделать не могу, но мне вера не запрещает использовать Qt приложения, я их использую, могу сделать аналогичную операцию в GNOME

coldy ★★ ()
Ответ на: комментарий от KRoN73

> klipper в KDE3 вообще рулил. А в KDE4 в монстра какого-то превратился. Пока совсем у меня работать не перестал под Gnome, что в Ubuntu, что в Gentoo

Таки чем ты нынче пользуешься?

xintrea ()
Ответ на: комментарий от xintrea

>Таки чем ты нынче пользуешься?

На parcellite остановился. Единственная претензия - нет многостраничной разбивки истории. В остальном - всё удовлетворяет :)

KRoN73 ★★★★★ ()
Ответ на: комментарий от KRoN73

Не, в parcellite такая же беда.

Закрыл программу - буфер обмена пуст. Настройки «Не допускать пустого буфера обмена» или что-то подобного не нашел.

xintrea ()
Ответ на: комментарий от KRoN73

Мда, нормально работает только clipit, собранный из исходников.

Останавливаюсь на нём.

xintrea ()
Ответ на: комментарий от Zenitar

> Мне кажется, проблема в KDE4. С другими программами (например, для GTK) это проявляется?

Да, parcellite глючит так же как и klipper.

xintrea ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.