2013-02-12 7 views
1

Использование webkit версии 1.6 Я пытался выяснить метод/функцию класса, чтобы получить выделенный текст. Там has_selection, но это возвращает только bool.Какой способ получить выделенный текст webkit webview?

Я нахожусь на linux mint, используя python gtk3 с webkit 1.6.

Если у меня есть, я буду использовать javascript, но я бы предпочел метод webkit.

Мне действительно не нужен прослушиватель или сигнал. Событие уже создает всплывающее окно. Я хочу напечатать выделенный текст во всплывающем окне.

Я пробовал:

webkit.webview.get_selected_text()

webkit.webview.get_selection()

webkit.webview.selected_text()

webkit.webview. get_property ("selected-text")

Просто стрельба в темноте.

ответ

0

Похоже, нет специального метода для webkit, чтобы получить выделенный текст.

На данный момент буфер обмена gtk работает, чтобы получить текст из выделения в webkit.webview.

Использование:

c = Gtk.Clipboard.get(Gdk.SELECTION_PRIMARY) 
print c.wait_for_text() 

Это немного напуганный, но это работает.

+0

Похоже, что этот метод мешает execCommand в javascript, используемом с webview.execute_javascript. Я не знаю, является ли это ошибкой, или этого можно ожидать. –

+0

Проблема wait_for_text отменяет выбор текста, который он извлекает. У кого-нибудь есть идея исправить это? –