Closed GoogleCodeExporter closed 8 years ago
С копированием участника конференции
понятно - надо исправлять. Но такая же
ситуация получается если предварительно
выделить текст в теме конфы (тот что
сверху). Как в таком случае поступать,
копировать текст из темы или текст из чата
конференции?
Original comment by li...@mail.ru
on 16 Nov 2012 at 4:27
если последнее действие было выделение
текста в чате, то естественно надо
копировать текст из чата.
если последнее действие - выделение текста
в теме конфы, то копировать текст из темы
конфы.
такое поведение пользователь ожидает. его
ему и нужно дать.
Original comment by W.prox...@gmail.com
on 16 Nov 2012 at 7:26
А если пользователь уже не помнит что там
последнее выделялось? :)
Естественным, как мне видится, будет
копирование того что выделено. Но у нас
четыре независимых объекта для выделения в
конференции: лог конференции (log), строка
ввода сообщения или команд (mle) список
участников конференции (lv_users) и топик(le_topic).
Может имеет смысл при выделении на одном из
перечисленных виджетов снимать выделение
на остальных?
Сейчас обработчик события универсальный -
один и тот же код работает для конфы и для
обычного чата (bool ChatView::handleCopyEvent(QObject *object,
QEvent *event, ChatEdit *chatEdit).
Original comment by li...@mail.ru
on 22 Nov 2012 at 2:47
1) То, что отдельно взятый пользователь не
помнит что он выделял - это его проблемы.
Копировать нужно именно то, что выделялось
в последнюю очередь и никак иначе.
2) Снятие лишнего выделения на том, что
выделялось ранее, более чем логично.
Original comment by W.prox...@gmail.com
on 22 Nov 2012 at 2:56
Чатлог невыделяемый (nofocus), в этом проблема
Original comment by wadea...@gmail.com
on 22 Nov 2012 at 3:59
> Чатлог невыделяемый (nofocus), в этом проблема
Там всего лишь определяется от кого пришло
событие и есть ли выделенный текст у строки
ввода. А для конференций придется добавить
пару механизмов дополнительно.
Original comment by li...@mail.ru
on 22 Nov 2012 at 5:19
надо клик на чатлоге перехватывать и
фокусировать поле ввода. а там уже есть все
механизмы
Original comment by rion4ik
on 22 Nov 2012 at 5:30
> надо клик на чатлоге перехватывать и
фокусировать поле ввода. а там уже есть все
механизмы
а если это будет клик с целью выделения
мышью?
Похоже правильно что я не стал сразу
патчить. Сколько людей, столько мнений.
Будем ждать консенсуса :)
Original comment by li...@mail.ru
on 22 Nov 2012 at 8:15
я не совсем в теме (хотя бы потому что в код
не смотрел), но я никак не могу взять в толк,
почему окно (виджет или что там) чата,
которое должно относиться по идее к классу,
могущему ловить фокус, относится к классу
имеющему характеристику nofocus? может
все-таки переделать класс /
перенаследовать будет правильнее?..
точно такая же гадость в Ткаббере с
отсутствием фокуса у окна чата, из-за чего
там приходится химичить в файле
конфигурации, который есть скрипт tcl (без
этого там нельзя копировать текст из чата
обычными хоткеями!). это определенно ошибка
архитектуры программы.
Original comment by W.prox...@gmail.com
on 22 Nov 2012 at 8:32
> а если это будет клик с целью выделения
мышью?
без разницы.
Original comment by rion4ik
on 23 Nov 2012 at 2:14
Ну раз других предложений нет, тогда
перебросом фокуса. Все равно выделение с
темы должно само сняться в таком случае. Я
смогу только после приезда. rion4ik может ты
запатчишь? Код, как я понял, ты уже
посмотрел :)
Original comment by li...@mail.ru
on 23 Nov 2012 at 6:53
не думаю что переброска фокуса как-то
повлияет на выделение. ведь на самом
чатлоге фокуса всё равно никогда нет.
Original comment by rion4ik
on 23 Nov 2012 at 6:56
Я сейчас писал про строку с темой конфы. С
чатлогом и так все понятно.
Original comment by li...@mail.ru
on 23 Nov 2012 at 7:25
liuch, ты ж уже переехал, правда?Обещания
держать надо...
https://code.google.com/p/psi-dev/issues/detail?id=524#c11
Original comment by korobcoff
on 18 Dec 2013 at 12:01
http://code.google.com/p/psi-dev/issues/detail?id=524#c12
> не думаю что переброска фокуса как-то
повлияет на выделение. ведь на самом
чатлоге фокуса всё равно никогда нет.
при выделении чего-либо в чатлоге фокус
можно перебрасывать в поле ввода (раз в
чатлог нельзя). тогда копирование текста
потом будет идти из чатлога.
Original comment by W.prox...@gmail.com
on 24 Dec 2013 at 5:17
по идее мы можем отловить нажатие кнопки
мыши на чатлоге и сразу перекидывать фокус.
согласен. правда не знаю как это повлияет
на выделение.
Original comment by rion4ik
on 24 Dec 2013 at 5:52
Я решил использовать способ переброса
фокуса при клике на чатлог. В линуксе
нареканий нет. Надо попробовать в других
ОС. Пришлось немного покопаться, т.к. у меня
eventFilter не работал если его установить на
QTextEdit, только если на дочерний виджет. С
QWebView все нормально. Ввиду небольшой
костыльности патча не рискнул выкладывать
его в репу. Может будут идеи по-лучше, в
частности по поводу QTextEdit. Условное
компилирование пришлось добавить именно
из-за его странного поведения.
Протестировано на обоих сборках в Debian testing,
Qt 4.8.6.
Патч прилагается.
Original comment by li...@mail.ru
on 13 Jan 2014 at 10:37
Attachments:
Исправлено:
https://github.com/psi-plus/main/commit/98f0b71a5844b167c3399c0f4f9e7e1336fb13a6
Original comment by li...@mail.ru
on 14 Jan 2014 at 8:20
[22:03:44] <proxy_m> liuch: привет. помнишь ты фиксил
багу с копированием текста из чата
конференции? есть такая же фигня с
копированием текста из чата личного.
кликаешь там в том текстовое поле где
название контакта. а потом пытаешься
выделить и скопировать текст из чата и
копируется не то.
[22:06:25] <liuch> proxy_m: Ага, есть такое. Надо
выяснить как правильно сделать. Т.к. при
клике на текст который хочется
скопировать, фокус не передается. И я не
уверен, нужно ли тут такое поведение. В
конфе я именно так поправил, передачей
фокуса.
[22:15:41] <mrDoctorWho> копируется обычно то что в
поле ввода
[22:16:03] <mrDoctorWho> порой напрягает кстати, но
привыкнуть можно
[22:19:22] <satrap> proxy_m: *dntknw* зачем еще жать на
кнопки клавы. Если есть правая мышь
[22:19:58] <mrDoctorWho> зачем мышь если есть клава?
[22:20:05] <liuch> mrDoctorWho: +1
Original comment by W.prox...@gmail.com
on 27 Feb 2014 at 7:04
[23:51:34] <nsof_> А я один приверженец того, что
копироваться должно то, что выделили
послдним, а остальные выдления должны
сбрасываться?
Original comment by W.prox...@gmail.com
on 27 Feb 2014 at 8:07
Исправлено для чата:
https://github.com/psi-plus/main/commit/d83079aa1103bfb4699a46f29ce2a29822964ca7
Original comment by li...@mail.ru
on 19 Mar 2014 at 7:22
Original comment by vladimir.shelukhin
on 2 May 2014 at 1:22
Original issue reported on code.google.com by
W.prox...@gmail.com
on 19 Oct 2012 at 11:10