Унификация реакции на окнчание выделения текста

Forums » Объявления и обсуждения » Предложения по браузерам Opera (wishlist)

You need to be logged in to post in the forums. If you do not have an account, please sign up first.

Go to last post

8. May 2010, 05:25:33

rstaganrog

Posts: 192

Унификация реакции на окнчание выделения текста

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

Однако, если выделять область страницы движением мыши, то после отпускания кнопки мыши и, соответственно, завершения процесса выделения, аналогичное контекстное меню не появляется.

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

После завершения выделения нередактируемой области страницы любым способом появляется контекстное меню

Option Results Votes
Да result bar - $percentage % 24% 4
Нет result bar - $percentage % 65% 11
Не важно result bar - $percentage % 12% 2
Total number of votes: 17

8. May 2010, 12:04:29

Fifonik

Posts: 1073

а кто сказал, что в данном случае "выделение" -- это именно то событие, на которое вешается action (контекстное меню)? тут событие -- double click, а выделение слова -- это action.

я -- категорически против.

P.S. а ещё можете посмотреть как это работает в текстовых процессорах, например MS Word, Open Office.
Win7 x64, Opera 12.16
Золотые правила, найденные когда-то в инете:
1. Молчи, за умного сойдешь.
2. Если нечего сказать, лучше не говори.
3. Если нельзя, но очень хочется, то все равно нельзя.

8. May 2010, 13:33:24

rstaganrog

Posts: 192

Originally posted by Fifonik:

тут событие -- double click, а выделение слова -- это action.


Даже если оперировать более точными терминами, то контекстное меню появляется в таком случае не на событие, а на действие - собственно выделение, в то время, как выделение происходит как раз в связи с двойным кликом.

Но дело даже не в этом. Я в общем-то даже не настаиваю на автоматическом связывании выделения с появлением контекстного меню. Я лишь выступаю за то, что несмотря на разницу в способах достижения такой цели, как выделение, реакция на окончание процедуры выделения была однотипной - будь то выделение двойным кликом, протягиванием мыши или вообще - клавиатурой.

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

8. May 2010, 13:34:03

rstaganrog

Posts: 192

Originally posted by Fifonik:

P.S. а ещё можете посмотреть как это работает в текстовых процессорах, например MS Word, Open Office


Ну точно не так, как в опере на выделение двойным кликом.

8. May 2010, 14:45:54

Ruzzz

Posts: 404

Вообще кажется что действительно, какой еще смысл от выделения мышью, кроме как вызвать контекстное меню? Но это может мешать яваскрипту. Поэтому это нужно как-то «обыграть» разработчикам. Да и некоторые работают одновременно мышкой и клавиатурой — выделил мышью, скопировал клавиатурой ). Что еще может быть?

Но я думаю что многие чаще после выделения текста вызывают контекстное меню. Вот если бы опционально и плюс избежать возможные проблемы.

8. May 2010, 14:55:12

Ruzzz

Posts: 404

Можно например так: Вызывать контекстное меню только если прошло определенное время между двумя событиями 1) Закончил выделение текста и 2) отпустил клавишу мишки. То есть чтобы вызвать контекстное меню, мне нужно будет не спешить отпускать кнопку мыши после того как выделил текст. Таймер сбивается если я, не отпуская кнопку мыши, вдруг изменил выделение. Можно по истечению таймера изменять немного курсор, чтобы было видно что будет вызвано контекстное меню.

пс. Автор, я проголосовал за, но в итоге «за» всего один голос smile ты прикалываешься или еще не голосовал? ))

8. May 2010, 15:31:42

the401

Posts: 262

Originally posted by Ruzzz:

Вообще кажется что действительно, какой еще смысл от выделения мышью, кроме как вызвать контекстное меню?

Достаточно и других случаев — собственно выделить текст (чтоб кому-то показать например), в Линуксе это уже копирование (в отдельный буфер), ну и самое главное — многие никогда не используют контекстное меню для таких операций, пользуясь горячими клавишами. Так что автоматическое появление контекстного меню, это зло из серии любимых окошек «Вы уверены?...».
Прощай, Опера! Хромоклон, блѢ!

8. May 2010, 16:10:24

vilpapa

Posts: 3854

Голосовал против. Разнообразие поведения приводит к разнообразию вариантов.

Originally posted by the401:

Достаточно и других случаев — собственно выделить текст (чтоб кому-то показать например), в Линуксе это уже копирование (в отдельный буфер), ну и самое главное — многие никогда не используют контекстное меню для таких операций, пользуясь горячими клавишами. Так что автоматическое появление контекстного меню, это зло из серии любимых окошек «Вы уверены?...».


Полностью согласен.
У меня всё работает... Но не всегда, как хочется.

8. May 2010, 17:29:50

rstaganrog

Posts: 192

Originally posted by vilpapa:

Голосовал против. Разнообразие поведения приводит к разнообразию вариантов.


Об устранении разнообразия я в общем-то и говорил в первом посте, это была основная цель.

В отношении самовольно всплывающего меню я уже говорил - мне оно в общем-то больше мешает, чем необходимо. Но поскольку оно уже имеет место быть при выделении двойным кликом, то пришлось приспособиться - вроде бы привык:). Исходя из этого, собственно, и возникло соображение - если уж приспосабливаться к этому меню, то имеет смысл унифицировать его появление при любых способах выделения.

Ну и если приспосабливаться к авто-меню, то для облегчения жизни меню должно в этом случае быть ориентировано на возможность продолжения работы с ним в том числе при помощи клавиатуры (если собственно выделение было клавиатурное) - для этого в меню следует ввести самые вероятные клавиатурные действия, следующие после выделения. Одно из этих вероятных действий - ПОИСК НА СТРАНИЦЕ (назначить в меню клавишу F).

Можно подумать, какие еще типичные действия следует добавить в автоменю после выделения, с соответствующим клавиатурными сочетаниями для этих пунктов меню.

Такое расширение автоменю сделает его более удобным, не заставляя сбрасывать его после выделения текста двойным кликом, для продолжения работы с клавиатурой.


Либо, для поддержания, опять же, единоообразия - вообще отказаться от автоменю при выделении. По мне - это лучший вариант. Но поскольку мне почему-то кажется, что разработчики его не уберут, то и был предложен способ унификации с применением автоменю.
smile

8. May 2010, 18:31:09

Ruzzz

Posts: 404

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

8. May 2010, 20:12:01

AntonDiaz

RuCommunity moderator

Posts:

No way / Нет пути / Ни за что

Для типичных задач все равно есть гор. клавиши.
А при ошибочном выделении придется будет сначала кликнуть, чтобы убралось меню, а только потом снова выделять.

8. May 2010, 20:57:56

the401

Posts: 262

Originally posted by Ruzzz:

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

Сложно получается и неинтуитивно. Предложенное решение — не решение совсем, я так часто держу ЛКМ достаточно долго, чтобы убедиться, не прилипли там случайно лишние пробелы, все ли символы попали в выделение и т.д. И тут мне — хоп! — вылезает менюшка? Не, это подпорки под костыль.

С дабл-трипл кликовым выделением все же отдельная песня, хорошо что сейчас менюшка отключаема.
Прощай, Опера! Хромоклон, блѢ!

9. May 2010, 19:02:00

Ruzzz

Posts: 404

Вот пример http://narod.ru/disk/20558815000/MenuTest.7z.html Требует Net Framework 3.5
Хелп:
Invert - Меню НЕ появляется по таймеру, иначе появляется
Only if selection changed - Сбрасывает таймер и свойство «показывать меню после отжатия кнопки», если изменили выделение, иначе реагируем на событие MouseMove

Вообщем типа для эксперимента smile Что скажите?

Forums » Объявления и обсуждения » Предложения по браузерам Opera (wishlist)