![]() |
|
|
![]()
|
|
||
|
|
| 12345c |
|
|||
![]() Круглый ![]() ![]() ![]() ![]() Профиль Группа: Vingrad developer Сообщений: 2018 Регистрация: 26.12.2005 Где: наша не пропадала ? Репутация: 4 Всего: 101 |
Да ничего, спасибо, что вернулся
И сразу скажу, что тест эта штука не прошла в IE Процесс "эксплойта" : 1) дописываем несколько переносов строки в самом инзу тестовых строк и ничего после них не ставим - ни пробела, ни символа; 2) выделяем текст или часть его с нижними переносами; 3) жмём Ctrl+] 4) вместо того, чтобы получить N строк, в каждой из которых будет по 4 пробела, получаем строки, в которых был текст, с 4 пробелами в каждой, а все переносы в конце исчезают. Ни пробелов, ни переносов. (Т.е., хотел юзер заготовить себе 5 строк под коды с отступом, сделал 5 переносов, нажал Ctrl+] - и на тебе.) |
|||
|
||||
| pythonwin |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2529 Регистрация: 18.4.2006 Где: за компом Репутация: 2 Всего: 36 |
многие пользуются Tab для навигации и таких довольно много |
|||
|
||||
| Sardar |
|
|||
![]() Бегун ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6986 Регистрация: 19.4.2002 Где: Нидерланды, Groni ngen Репутация: 6 Всего: 317 |
Да, но только на onkeydown. Читай да Хоткеи теперь привязаны к textarea, вне её таб может работать как обычно. Другое дело что так с ходу прикрутить не получиться... хоткеи вообще бы пересмотреть/переписать... 12345c, а у тебя получилось пофиксить это? Дело в том, что ИЕ сам отрубает последние пустые переводы строк в document.selection.createRange() - т.е. я начинаю работу уже не имея этих переносов. Если в конце будет хоть один символ, то ИЕ так уже не делает и всё работает. -------------------- Опыт - сын ошибок трудных © А. С. Пушкин Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik Оценить мои качества можно тут. |
|||
|
||||
| 12345c |
|
|||
![]() Круглый ![]() ![]() ![]() ![]() Профиль Группа: Vingrad developer Сообщений: 2018 Регистрация: 26.12.2005 Где: наша не пропадала ? Репутация: 4 Всего: 101 |
Да, пример и тема здесь: http://forum.vingrad.ru/index.php?showtopi...st&p=886924
Кроме того, как я писал в текущей теме выше, этот баг относится ко всем кнопкам (B, I, цвета). Встроив сделанную процедуру в остальные скрипты, исправим все кнопки. |
|||
|
||||
| Sardar |
|
|||
![]() Бегун ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6986 Регистрация: 19.4.2002 Где: Нидерланды, Groni ngen Репутация: 6 Всего: 317 |
12345c, неужели оно того стоит? Переводить ИЕ на не родные для него selectionStart/End, вычисляя их несколькими TextRange...? Может тормозить и не будет, но менять придётся почти весь функционал TextAreaSelectionHelper для ИЕ...
Тогда уж лучше начать заново и реализовать в TextAreaSelectionHelper множественные селекции, просто станет сделать автодополнение и прочие фичи современного редактора. А затем взять и выбросить весь код, когда textarea замениться WYSIWYG редактором... Кстати, попроси у Wowa доступ до SVN'a, там скрипты не сжатые. -------------------- Опыт - сын ошибок трудных © А. С. Пушкин Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik Оценить мои качества можно тут. |
|||
|
||||
| 12345c |
|
|||
![]() Круглый ![]() ![]() ![]() ![]() Профиль Группа: Vingrad developer Сообщений: 2018 Регистрация: 26.12.2005 Где: наша не пропадала ? Репутация: 4 Всего: 101 |
А иначе будет присутствовать этот баг с пропаданием в селекции последних переносов.
Для чего нужны множественные селекции? Это, наверное, другой вопрос. Когда планируется заменить на WYSIWYG ? |
|||
|
||||
| Zeroglif |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 644 Регистрация: 22.9.2005 Репутация: 2 Всего: 66 |
А так ли нужно захватывать в селекцию пустые строки в конце и делать им индент? Не знаю, кто как, но я за собой такого не замечал. Взвешенный вариант, пусть даже и с некоторыми IE-багами, вполне подойдёт. Мне лично не хватает того, чтобы был индент по TAB и чтобы при инденте была видимая (подсвеченная) селекция блока, который двигается. Кстати, этого же самого не хватает при применении BBCodes, хотца, чтобы выделенный текст оставался выделенным, пока я сам ручками с него не уйду. |
|||
|
||||
| 12345c |
|
|||
![]() Круглый ![]() ![]() ![]() ![]() Профиль Группа: Vingrad developer Сообщений: 2018 Регистрация: 26.12.2005 Где: наша не пропадала ? Репутация: 4 Всего: 101 |
Разве приятно, когда редактор делает не то, что от него ожидают? А тут он делает не просто не то, а удаляет переносы, которые выставлены с определённой целью. И "работает" баг не только в конце текста (писал выше), а в любом случае, если в конце выделенного участка находятся переносы. Он (IE) их все удаляет.
В IE7, кстати, баг сохранился, чему я нисколько не удивляюсь |
|||
|
||||
| Sardar |
|
|||
![]() Бегун ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6986 Регистрация: 19.4.2002 Где: Нидерланды, Groni ngen Репутация: 6 Всего: 317 |
На самом деле текст остаётся выделенным (мне тоже так нравиться), но вроде как думали что большинству это будет не удобно, потому сразу после вставки селекция коллапсируется в конец. Надо закоментировать post.collapse(false); во всех ubbc_* функцях. Удобно с текстом работать. Разного рода авто дополнения, одновременное редактирование в нескольких местах (изменяем имя переменной, оно изменяется везде), в общем всё то, что для простой textarea никогда не нужно будет Не знаю, но то, что когда-нибудь это произойдёт, уверен. Вывод: может проголосуем? Менять ли код для ИЕ (и фактически переписать TextAreaSelectionHelper) или оставить как есть предположив что большинство программистов сидят на лисе или опере? Я против. -------------------- Опыт - сын ошибок трудных © А. С. Пушкин Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik Оценить мои качества можно тут. |
|||
|
||||
| 12345c |
|
|||
![]() Круглый ![]() ![]() ![]() ![]() Профиль Группа: Vingrad developer Сообщений: 2018 Регистрация: 26.12.2005 Где: наша не пропадала ? Репутация: 4 Всего: 101 |
для них же нужен интуитивный интерфейс. Где они вообще применяются, в каком продукте? Как переключаться с одной на другую?
Мне тоже до лампочки, хотя в основном сижу под IE. Потому что в среднем на сайтах его лучше поддерживают, чем остальные. А в поле ввода не пишу коды длиннее 50 символов. Но если людям надо, то почему бы не сделать, и сам будешь знать, что вставлять при таких случаях. Я вот сделал "4 пробела" для IE - знаю, во что это выливается |
|||
|
||||
| Sardar |
|
|||
![]() Бегун ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6986 Регистрация: 19.4.2002 Где: Нидерланды, Groni ngen Репутация: 6 Всего: 317 |
Это вообще скрыто от пользователя, API для конкретного софта. Изначально задумывалось (этак с недели две назад) для работы по шаблону. Например вставляется некий шаблон (ctrl-T shift-A), курсор прыгает в нужную позицию в тексте. Написали, затем tab и курсор прыгает на какое нибудь другое поле в тексте. Также можно писать в одном месте, а оно будет как бы печататься во многих местах. Селекция в данном случае обьект, через который текст вставляется/изменяется. Множественная селекция позволяет создать селекцию в определённом месте (визуально не видно), а при изменении текста она сама подправляет смещения, что бы оставаться на своём месте. А вообще это оффтоп, если интересно, пиши в личку -------------------- Опыт - сын ошибок трудных © А. С. Пушкин Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik Оценить мои качества можно тут. |
|||
|
||||
| Zeroglif |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 644 Регистрация: 22.9.2005 Репутация: 2 Всего: 66 |
Я аналогично, мороки столько и без этого. Мы с Sardar-ом тоже... как-никак узнали. :-)
А и нефиг народу выделять оконечные пустые строки для индента, в этом сложно смысл найти по большому счёту. Или пустая строка для красоты, или для писанины, тогда уж напиши в неё, а потому уж индентом её, родимую, индентом. |
|||
|
||||
| 12345c |
|
|||
![]() Круглый ![]() ![]() ![]() ![]() Профиль Группа: Vingrad developer Сообщений: 2018 Регистрация: 26.12.2005 Где: наша не пропадала ? Репутация: 4 Всего: 101 |
Girder,
...И? |
|||
|
||||
| Girder |
|
|||
![]() Лентяй 2 ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1993 Регистрация: 12.5.2004 Репутация: 25 Всего: 155 |
Что и?
PS: Sardar кое какие решения залилвал на SVN. Или ты про енто: -------------------- Как слышим, так и пишим. Истина где-то там... |
|||
|
||||
| S.A.P. |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2664 Регистрация: 11.6.2004 Репутация: нет Всего: 71 |
Exception, можно. Но это не понравится клавиатурщикам, которые используют таб для перемещения по элементам.
|
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Обсуждение форума | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |