Есть в Aml Pages такая фигня, как умный mouse wheel, когда по вращению колесика мыши скроллится не панель с фокусом ввода (панель, которая будет принимать клавиатурный ввод), а панель именно под курсором мыши.
Дык вот написана отдельная тулза, которая оный фокес-покес распространяет на всю систему Windows (благо надоело лажаться в остальных программах). Писалось что называется на интерес, софтина фришная.
Рабочее название Mouse Hunter (сдвоенная система: очень тонкий агент, который выполняет всю полезную работу, и отдельный exe-шник на модной библиотеке для конфигурирования. Потому и отдельный, что для модного интерфейса настроек. В момент выполнения полезной работы сама "модная" библиотека не нужна).
Кому нить надо такое софтино? Могу выложить на сайт?
Тока эта... (C) Чего там в описании писать, бог его знает... Ну не филолог я Может народ поможет?
Post №: 5176
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 09.06.11 18:18. Post subject: SetQ пишет: А что д..
SetQ пишет:
quote:
А что должно было произойти? Пока не заметно разницы в прокрутке с агентом и без агента. Вот у меня запущено два окошка которые можно прокручивать, одно над другим. Нажимаю колёсико, фокус переходит к окну под курсором.
При нажатии колесика прокручивает элемент находящийся именно под курсором мыши, а не элемент управления, имеющий фокус ввода (принимающий ввод с клавиатуры) — как это обычно сделано в Windows.
• Работает в любых приложениях. • Размещает иконку в системной панели (рядом с часиками Windows). • Левой кнопкой по иконке — - включить\выключить работу Mouse Hunter. Правой кнопкой по иконке — меню и настройки.
Как это работает внутри Aml Pages - написано здесь, Mouse Hunter это фокус проделывает в любых (почти) приложениях.
Post №: 5374
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 23.09.11 12:16. Post subject: SetQ пишет: Да я в ..
SetQ пишет:
quote:
Да я в простом chm пробовал, а потом Проводник попробовал.
Ну стандартный старенький просмотрщик CHM вроде как банально стандартное дерево использует (класс окна SysTreeView32) - оно вроде как по умолчанию есть в настройках (хотя я конечно не сразу его добавил, а в какой-то там версии Икс)...
Post №: 5380
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 24.09.11 22:24. Post subject: Убедительная просьба..
Убедительная просьба про Mouse Hunter: сообщать о глюках, пожеланиях, непонятках как использовать - медленно, но верно тулза развивается..
PS: а то у меня тут самого неясности кое-какие возникли на машине - "повесело повеселело нах", и начались они аккурат с пару недель назад, с глобального запуска Mouse Hunter (хотя тогда какого *авна на машину только и не ставилось, начиная с левых тулз под шел, и заканчивая обновлениями от MS)... Но грешил отчасти и на Mouse Hunter - поэтому определенные вещи переделываются, тестируются, добавляются настройки и описания.
Много баг-фикса, причем достаточно критического, именно в агенте (т.е. не в моднявых настройках, а именно когда выполняется полезная работа мышом).
Добавлен перехват мыша в соседних приложениях (раньше "умное" колесико работало только если окно приложения активно, теперь пофиг - активно может быть хоть вообще другое приложение, если крутанули мыша над другим - там скролл и отработает)
Posted: 02.10.11 18:43. Post subject: В тотале работает, т..
В тотале работает, только его надо добавить в список окон.
Только когда щёлкаешь по иконке в трее, то хантер переключается он/оф. Но однако ж "Настройки" в меню горят жирным, т.е. настройки должны запускаться по двойному клику. Ан нет.
Только когда щёлкаешь по иконке в трее, то хантер переключается он/оф. Но однако ж "Настройки" в меню горят жирным, т.е. настройки должны запускаться по двойному клику. Ан нет.
Двойной щелчок не выйдет обработать, т.к. уже будет обработан одинарный щелчок...
Post №: 5435
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 06.10.11 18:40. Post subject: SetQ пишет: Отчего ..
SetQ пишет:
quote:
Отчего же тогда Настройки жирным текстом? Для красоты?
Именно, чтобы привлечь внимание!
Не выйдет фокус с двойным кликом в синхронной модели: если на первый клик запускается сравнительно длительное действие (в данном случае On\Off), то пока действие пройдет - второй клик после первого уже будет иметь больше положенного интервала. И винда вообще не посчитает его за двойной клик.
Post №: 1089
Joined: 16.04.10
Location: Cеверная столица
Rank:
0
Posted: 06.10.11 21:20. Post subject: Carc пишет: Именно,..
Carc пишет:
quote:
Именно, чтобы привлечь внимание!
Не выйдет фокус с двойным кликом в синхронной модели: если на первый клик запускается сравнительно длительное действие (в данном случае On\Off), то пока действие пройдет - второй клик после первого уже будет иметь больше положенного интервала. И винда вообще не посчитает его за двойной клик.
А почему тогда не сделать on/off по среднему клику?
Post №: 5439
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 06.10.11 21:35. Post subject: DenisSMI пишет: А п..
DenisSMI пишет:
quote:
А почему тогда не сделать on/off по среднему клику?
Можно и сделать...
Но есть проблема: Но средний клик случаем не будет ли неочевиден для непросвещенного пользователя? Левым-то кликом рано или поздно обязательно кликнут - куда нафиг денутся, и все станет ясно и понятно. А со средним еще догадаться надо. Уж далеко не все знают-то про контекстное меню по правому клику, чего уж говорить про клик средней кнопкой мыша!?!
Post №: 1091
Joined: 16.04.10
Location: Cеверная столица
Rank:
0
Posted: 06.10.11 21:47. Post subject: Carc пишет: Можно и..
Carc пишет:
quote:
Можно и сделать...
Но есть проблема: Но средний клик случаем не будет ли неочевиден для непросвещенного пользователя? Левым-то кликом рано или поздно обязательно кликнут - куда нафиг денутся, и все станет ясно и понятно. А со средним еще догадаться надо. Уж далеко не все знают-то про контекстное меню по правому клику, чего уж говорить про клик средней кнопкой мыша!?!
Post №: 5442
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 06.10.11 22:09. Post subject: DenisSMI пишет: Ну ..
DenisSMI пишет:
quote:
Ну или среднюю запрограммировать по запросу SetQ
Дык я про то и говорю, что клик средней кнопкой мыши неочевиден для обычного домотканного, посконного пользователя. А уж клик средней кнопкой мыши да еще и в трее - тем более не очевиден... Не догадаются. А уж о том, что клик средней кнопкой в трее - тем паче загадка за семью печатями.
Я как-то писал в блоге про полный ппц с кликами в трее - причем происходил он именно со мной. А он вроде как бы для меня не загадка - ан фиг, хорошая дело привычка. Ведь сколько лет не мог врубиться.
В принципе есть решение: такое же как в пагесах. Отлавливать клики хитрее. То бишь реагировать на первый клик не сразу, а по прошествии времени. Ну точно так же, как обрабатываются клики правой кнопкой мыши в Aml Pages по панели Заголовок 1) Одинарный клик - меню. 2) Двойной клик - развернуть дерево.
Post №: 1093
Joined: 16.04.10
Location: Cеверная столица
Rank:
0
Posted: 06.10.11 23:35. Post subject: Carc пишет: Дык я ..
Carc пишет:
quote:
Дык я про то и говорю, что клик средней кнопкой мыши неочевиден для обычного домотканного, посконного пользователя. А уж клик средней кнопкой мыши да еще и в трее - тем более не очевиден... Не догадаются. А уж о том, что клик средней кнопкой в трее - тем паче загадка за семью печатями
Домотканные и посконные пускай из меню вызывают, а мы - знающие и продвинутые - будем пользоваться средней кнопкой!
Posted: 25.10.11 14:18. Post subject: Carc пишет: Прокрут..
Carc пишет:
quote:
Прокрутки чего именно?
содержимого контрола над которым находится курсор. сейчас Mouse Hunter, если можно так выразится, воздействует на вертикальную прокрутку, я предлагают добавить дополнительно фичу "воздействия" на горизонтальную прокрутку.
Carc пишет:
quote:
И какая клавиша? Какая нить ctrl к примеру?
лучше сделать эту клавишу настраиваемой. ctrl+колесико мыши часто используется для изменения масштаба. нажатие Alt вызывает обычно меню. Поэтому наверное Shift по дефолту был бы самым беспроблемным вариантом.
Post №: 5506
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 25.10.11 14:27. Post subject: DrakonHaSh пишет: л..
DrakonHaSh пишет:
quote:
лучше сделать эту клавишу настраиваемой. ctrl+колесико мыши часто используется для изменения масштаба. нажатие Alt вызывает обычно меню. Поэтому наверное Shift по дефолту был бы самым беспроблемным вариантом.
Posted: 17.11.11 07:21. Post subject: Хук слетат в момент ..
Хук слетат в момент закрытия какого-нибудь приложения. Почему - не разобрался. Кстати, Carc, зачем используешь file mapping? Если только чтобы хэндл хука передать, то на NT линейке можно обойтись без него. Если я правильно понял, ты удаляешь оригинальные WM_MOUSEWHEEL с помощью PeakMessage. Зачем? И еще, "уточнение" окна под курсором путем поиска наименьшего в этой точке, принадлежащего тому же родителю - не самый точный способ. Хотя и лучше чем просто WindowFromPoint.
Post №: 5541
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 17.11.11 11:47. Post subject: GrelVl пишет: Хук с..
GrelVl пишет:
quote:
Хук слетат в момент закрытия какого-нибудь приложения. Почему - не разобрался.
Как ты это определяешь?
GrelVl пишет:
quote:
Кстати, Carc, зачем используешь file mapping? Если только чтобы хэндл хука передать, то на NT линейке можно обойтись без него.
Нет, хук ему и проще можно передать. Это нужно чтобы передавать классы окон для pessimisctic strategy (для optimistic по идее можно и без них обойтись).
GrelVl пишет:
quote:
Если я правильно понял, ты удаляешь оригинальные WM_MOUSEWHEEL с помощью PeakMessage. Зачем?
Оно ж в таргетное окно летит, а я его оттуда вынимаю, и пересылаю куда нужно. Зачем тогда отправлять его и с в изначальное окно?
GrelVl пишет:
quote:
И еще, "уточнение" окна под курсором путем поиска наименьшего в этой точке, принадлежащего тому же родителю - не самый точный способ. Хотя и лучше чем просто WindowFromPoint.
Ну а какие мысли вслух: WindowFromPointХХ - частенько лажают, AccessibleObjectFromPoint - мысль, не пробовал, но нах, а если IAcessible не вернется потому как какое-нить китайское полудуро вроде Оперы даже и не представляет что это такое? Я других вариантов вроде бы не вижу...
PS: весьма любопытные замечания. Откуда дровишки, если не секрет? И как определяешь что хук слетел? WH_DEBUG?
Posted: 17.11.11 13:42. Post subject: Carc пишет: И как о..
Carc пишет:
quote:
И как определяешь что хук слетел? WH_DEBUG?
Да нет, просто есть у меня тузла, которая показывает какие модули какие хуки установили. В ней вижу, что SMW.dll установил WH_GETMESSAGE. Также вижу, что SMW.dll пропадает из списка, когда закрывается какое-то приложение. Carc пишет:
quote:
Оно ж в таргетное окно летит, а я его оттуда вынимаю, и пересылаю куда нужно.
Так вынимать не обязательно, достаточно вернуть результат твоего обработчика ловушки, отличный от 0. Так стоп, у тебя же хук на GetMessage, а он не позволяет отменить сообщение. Ну тогда все нормально. А я, когда этим хуком пользовался, для отмены сообщения просто заменял его на WM_NULL. Благо, модифицировать сообщения этот хук позволяет. По поводу определения окна под курсором, я долго бился над этой проблемой. И как это не смешно, но просветлление пришло после прочтения одной из статей из серии для чайников. В ней рассказывалось о классах окон в Windows и о том, на что они влияют. Вобщем алгоритм я вывел, но он получился громоздким и неслабо грузил процессор. И дело не в том, что код не оптимален, просто там приходится многократно в цикле вызавать несколько api. И наверное, другого способа точно определить окно под курсором нет. Зато окна определяет так, что некоторым платным тузлам и не снилось. По ходу такой же алгоритм использует и KatMouse. Кстати, на мой взгляд KatMouse - лучшая прога подобного рода именно с точки зрения технической реализации. Про ее юзабилити я не буду говорить, многим она не нравится, но то, с какой легкостью автору удалось разрешить некоторые технические проблемы, впечетляет. Я декомпилил ее, но листинг получися ужасно читаемым. От попытки его понять в голове образровалась каша, однако некоторые моменты отложились и потом, когда я до чего-то доходил сам, то вдруг понимал, что в KatMouse именно так и сделано. Ну ты уже наверное понял, что MouseHunter а тоже декомпилил. Результат конечно удобочитаемым не назовешь, но разобраться можно. А вообще я подобную прогу разрабатываю уже давно. Сейчас временная передышка, никак с силами не соберусь.
Post №: 5543
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 17.11.11 14:50. Post subject: GrelVl пишет: Да не..
GrelVl пишет:
quote:
Да нет, просто есть у меня тузла, которая показывает какие модули какие хуки установили. В ней вижу, что SMW.dll установил WH_GETMESSAGE. Также вижу, что SMW.dll пропадает из списка, когда закрывается какое-то приложение.
Что за тулза, если не секрет? Архинаиполезнейший же Вам доложу (С) струмент же в работе?
Post №: 5544
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 17.11.11 14:55. Post subject: GrelVl пишет: Ну т..
GrelVl пишет:
quote:
Ну тогда все нормально. А я, когда этим хуком пользовался, для отмены сообщения просто заменял его на WM_NULL. Благо, модифицировать сообщения этот хук позволяет.
Да, пожалуй это будет логичнее как-то.
GrelVl пишет:
quote:
По поводу определения окна под курсором, я долго бился над этой проблемой. И как это не смешно, но просветлление пришло после прочтения одной из статей из серии для чайников. В ней рассказывалось о классах окон в Windows и о том, на что они влияют. Вобщем алгоритм я вывел, но он получился громоздким и неслабо грузил процессор. И дело не в том, что код не оптимален, просто там приходится многократно в цикле вызавать несколько api. И наверное, другого способа точно определить окно под курсором нет. Зато окна определяет так, что некоторым платным тузлам и не снилось. По ходу такой же алгоритм использует и KatMouse. Кстати, на мой взгляд KatMouse - лучшая прога подобного рода именно с точки зрения технической реализации. Про ее юзабилити я не буду говорить, многим она не нравится, но то, с какой легкостью автору удалось разрешить некоторые технические проблемы, впечетляет. Я декомпилил ее, но листинг получися ужасно читаемым. От попытки его понять в голове образровалась каша, однако некоторые моменты отложились и потом, когда я до чего-то доходил сам, то вдруг понимал, что в KatMouse именно так и сделано.
Хм, а классы тут причем? Как бы для чего: прозрачность или что? есть кое-какие идее про слать WM_HITTEST но до ума я эти мысли так и не довел...
Posted: 17.11.11 15:39. Post subject: Carc пишет: Хм, а к..
Carc пишет:
quote:
Хм, а классы тут причем?
Сейчас уже и сам не вспомню, но здесь главное разобраться с классом WS_CLIPSIBLINGS. Его наличие/отсутствие сильно влияет на z-order окна. А вообще мой код ищет самого верхнего родителя того что под курсором, а потом начинает перебирать его детей, выполняя при этом кучу проверок. Проверки устроены так, что программа проходит единственно верный путь в дереве окон, не заруливая в ненужные ветки. По сути программа обрабатывает дерево плостами, при каждой интерации цикла находя окно, которое визуально находится выше всех на этом уровне вложенности.
Post №: 5548
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 17.11.11 15:42. Post subject: GrelVl пишет: Сейча..
GrelVl пишет:
quote:
Сейчас уже и сам не вспомню, но здесь главное разобраться с классом WS_CLIPSIBLINGS. Его наличие/отсутствие сильно влияет на z-order окна. А вообще мой код ищет самого верхнего родителя того что под курсором, а потом начинает перебирать его детей, выполняя при этом кучу проверок. Проверки устроены так, что программа проходит единственно верный путь в дереве окон, не заруливая в ненужные ветки. По сути программа обрабатывает дерево плостами, при каждой интерации цикла находя окно, которое визуально находится выше всех на этом уровне вложенности.
Да, такой код на каждом шорохе мыша дело тяжелое конечно... Но вроде мой вычислятор по размерам тоже сносно работает: я по моему только раз видел когда он облажался. В принципе для моих задач вроде бы хватает.
Post №: 5545
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 17.11.11 15:02. Post subject: GrelVl пишет: Ну ты..
GrelVl пишет:
quote:
Ну ты уже наверное понял, что MouseHunter а тоже декомпилил. Результат конечно удобочитаемым не назовешь, но разобраться можно. А вообще я подобную прогу разрабатываю уже давно. Сейчас временная передышка, никак с силами не соберусь.
Хантер выросла из Пагесов - это именно в ней была фишка крутить под курсором. Но там все локально, все практически в пределах потока, все свое-родное, поэтому быстро было сделано. А потом я настолько привык крутить мыша где хочу, что мсдынь старый просто стал уже утомлять нафиг, когда крутишь - а оно мне список кейвордов крутит ибо фокус там. Ну и решил написать... А заодно и HTMLayout в деле попробовать. На ХТМЛэйауте только настройки: передача конечно тупая через файл, можно и через MMF крутануть - но вся это синхронка уровня курсовой второго курса. Мороки много, а смысла нет. Пока сделал так - а потом посмотрим чего там да как. И вообще, солнце всходит и ничего не трогай рано пока. Это я потом займусь своей прямой обязанностью программиста: "с упорством достойным лучшего применения, чинить абсолютно нормально работающую весчь, до тех пор пока она наконец-то не сломается"
Post №: 5546
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 17.11.11 15:16. Post subject: GrelVl пишет: Да не..
GrelVl пишет:
quote:
Да нет, просто есть у меня тузла, которая показывает какие модули какие хуки установили. В ней вижу, что SMW.dll установил WH_GETMESSAGE. Также вижу, что SMW.dll пропадает из списка, когда закрывается какое-то приложение.
Респект и уважуха 3 раза! Водочка с закусоидами с меня само собой...
Нашел... Вот млин, епырш, все классы-классы - долой копи-паст! А что вышло? Копи-пастил бы - написал бы нормально, а так у меня локальный объект заобразовался. Локален то он на процесс, но убирает за собой вполне глобальные для ОС вещи (класс дестроится на выходе из main рано или поздно, а вот хук то он глобальный).
Спасибо за наводку! (в данном случае "наводку" пишется вместе)
Posted: 18.11.11 10:39. Post subject: Прекрасно работает! ..
Прекрасно работает! Поправь еще одну мелочь в инсталляторе. Он в меню Пуск-Программы создает ярлык на несуществующий AppMainExe.exe вместо MHAgent.exe.
Post №: 5550
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 18.11.11 12:14. Post subject: GrelVl пишет: Прекр..
GrelVl пишет:
quote:
Прекрасно работает! Поправь еще одну мелочь в инсталляторе. Он в меню Пуск-Программы создает ярлык на несуществующий AppMainExe.exe вместо MHAgent.exe.
О! Спасибо! А то я и забыл (сам ясное дело из ярлыков вообще ее не запускал). Как сгенерил визардом, так и осталось. Исправил и перезалил.
Post №: 5572
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 23.11.11 22:01. Post subject: DenisSMI пишет: У м..
DenisSMI пишет:
quote:
У меня с Ctrl не работает, а с Shift нормально.
Да, действительно была бага. Спасибо! Перезалил новую версию на сайт, пробуй. (номера версий изменились только в DLL, в ней бага была - в агент-модуле и модуле конфигурации все ОК вроде. Они и не пересобирались).
Post №: 5592
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 28.11.11 11:14. Post subject: DenisSMI пишет: Так..
DenisSMI пишет:
quote:
Так пашет, что и не остановить В общем, нормально все.
Фул зер гут! В принципе я перезаливал под выходные Mouse Hunter - но там все больше косметические изменения, не более того. В основном исключительно надписи в конфиг-модуле менялись... Но можно и обновить для актуализации...
Нужна помощь! Люди, человеки! У кого более-менее приличный английский, помогите перевести русское описание на английский в более-менее приемлемом виде. Полтора абзаца не займет у Вас много времени. Скиньте, пожалуйста, аглицкое описание в форму обратной связи ну или прямо сюда в форум можно черкнуть.
Post №: 1179
Joined: 16.04.10
Location: Cеверная столица
Rank:
0
Posted: 30.11.11 12:31. Post subject: Carc пишет: Нужна п..
Carc пишет:
quote:
Нужна помощь! Люди, человеки! У кого более-менее приличный английский, помогите перевести русское описание на английский в более-менее приемлемом виде. Полтора абзаца не займет у Вас много времени.
Post №: 5618
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 30.11.11 14:35. Post subject: DenisSMI пишет: Мой..
DenisSMI пишет:
quote:
Мой не прокатил? :)
Ой, извини дружище... Я просто закрутился! Он где-то лежит на диске у меня. Тут вот какое дело. Пока мы доводили альфу, выяснилось куда пропадает вдруг суть Хантера, с фигов ли отваливается умный скроллинг. И вот что вышло: по сути стала ненужной очень большая часть Хантера: а именно настройки в каких окнах работать, а в каких нет. Причем этой фичи в последних альфах нет: причем не только нет в настройках - это еще пол-дела, галки они и в африке галки. Эта сущность вообще была исключена из Хантера (теперь он всегда работает со всеми окнами). А сущность эта внутри весьма нехилая: взаимодействие через границы процессов, мрачный MMF, парсинг ручками безо всяких даже минимальных библиотек (очень нужна скорость работы)...
Ну и соответственно даже русское описание сильно изменилось. Поэтому я с разу попробовал написать новый аглицкий текст. Твой текст не ушел в никуда. Просто предлагаю сделать симбиозъ - скрестить их оба.
PS: плюс я тут малехо зашиваюсь по времени, сейчас на девелопмент уходит очень много времени. И появилось ошущение, что если я не выложу хоть что-то, хоть как-то по Хантеру в аглицкой части прямо сейчас, я просто не сделаю этого никогда. А тем не менее, Хантер по сути уже почти готов причем недели как три. Проверено годами: в декабре буде и так полный затык по времени. В общем, я подумал, и решил что надо "прыгать". А то застрянем если не навсегда, то надолго.
В общем, предлагаю просто дорабатывать и скрещать эти 2 текста. И еще раз спасибо за текст. Я по любому во многом на него ориентировался, когда писал вчера аглицкий (да и то в основном грамматику правил).
Post №: 1186
Joined: 16.04.10
Location: Cеверная столица
Rank:
0
Posted: 02.12.11 17:09. Post subject: Carc пишет: Нормале..
Carc пишет:
quote:
Нормалек?
Хорошо. Непонятно только что значит "The the Mouse Hunter..."
И форму "Mouse Hunter is work" никогда не вскречал. На мой слух странно звучит. Я бы сказал "is working", "works" или "in work". Но может и правильно, а я просто не встречал.
Post №: 5625
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 02.12.11 17:32. Post subject: DenisSMI пишет: Хор..
DenisSMI пишет:
quote:
Хорошо. Непонятно только что значит "The the Mouse Hunter..."
И форму "Mouse Hunter is work" никогда не вскречал. На мой слух странно звучит. Я бы сказал "is working", "works" или "in work". Но может и правильно, а я просто не встречал.
ОК, ошибки в большом тексте точно есть. Но как тогда написать?
Post №: 5627
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 03.12.11 02:06. Post subject: DenisSMI пишет: Пер..
DenisSMI пишет:
quote:
Перезалил скриншот с новым текстом, теперь выглядит так
Да там в этом FC блин нельзя сохранить отрисованный и подписанный скриншот как проект. Сильно мучает. Чего автор не приделает эту фичу в толк не возьму. Там невооруженным взглядом разработчика видно, что работы максимум на пару вечеров - слегка толково\бестолковая сериализация, компресс на лету в единый файл для красоты и все готово.
Но автор FC мрачно отмалчивается на подобные предложения, хоть я ему и чуть ли не куски кода предлагал... Фиг ты, не отвечает. Хотя у него и так активность как-то спала последнее время.
Ну отсюда и все проблемы: банальная опечатка, замеченная уже на готовом скриншоте, и уп-пс! На колу мочало, начинай с начала. С полного причем нуля, ну разве сам скрин можно где-то промежуточно сохранить - все остальное приходится делать с нуля заново.
Posted: 14.12.11 13:34. Post subject: можно добавить настр..
можно добавить настройку "размер горизонтального скроллинга" ? т.е. хотелось бы иметь возможность двигать горизонтальный скроллинг за одну прокрутку колесика на большее "расстояние"
можно ли изменить или добавить возможность менять направления горизонтального скроллинга. а то у меня четкая ассоциация: вверх колесико - это в начало, вниз - в конец. а сейчас наоборот.
в firefox 3.6.24 горизонтальный скроллинг не работает :(
Post №: 5675
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 14.12.11 14:32. Post subject: DrakonHaSh пишет: м..
DrakonHaSh пишет:
quote:
можно добавить настройку "размер горизонтального скроллинга" ? т.е. хотелось бы иметь возможность двигать горизонтальный скроллинг за одну прокрутку колесика на большее "расстояние"
Подумаем: там копаться надо как маус вил по умолчанию разворачивается.
DrakonHaSh пишет:
quote:
можно ли изменить или добавить возможность менять направления горизонтального скроллинга. а то у меня четкая ассоциация: вверх колесико - это в начало, вниз - в конец. а сейчас наоборот.
Да, действительно - косячок. Тупанул. По уму действительно надо - колесико вверх значь влево (в начало), вниз - значит вправо (в конец). Спасибо за репорт! Поправлю.
DrakonHaSh пишет:
quote:
в firefox 3.6.24 горизонтальный скроллинг не работает :(
Подробности в студию - лучше прямо с УРЛОМ проблемной страницы, чтобы врубиться получше в ситуацию.
Posted: 14.12.11 18:45. Post subject: Даю подсказку: Fx не..
Даю подсказку: Fx не понимает WM_HSCROLL, зато прекрасно реагирует на WM_MOUSEHWHEEL. Но самый большой сюрприз ждет в Опере: она ни то ни другое не понимает.
Posted: 15.12.11 12:06. Post subject: можно добавить настр..
quote:
можно добавить настройку "размер горизонтального скроллинга" ? т.е. хотелось бы иметь возможность двигать горизонтальный скроллинг за одну прокрутку колесика на большее "расстояние"
Carc пишет:
quote:
Подумаем: там копаться надо как маус вил по умолчанию разворачивается.
можно, по моему, проще: 1x 2x 3x ... того же "действия", что сейчас.
кста, если прав GrelVl (а он наверное прав), то может сделать возможность настройки, результат который бы, например, мог "выглядеть" так: shift + колесо мыши - попытка горизонтальной прокрутки используя WM_HSCROLL alt + колесо мыши - попытка горизонтальной прокрутки используя WM_MOUSEHWHEEL или так: shift + колесо мыши - попытка горизонтальной прокрутки используя WM_HSCROLL и используя WM_MOUSEHWHEEL [то, что в некоторых программах будет двойной эффект(2x) не беда, главное чтоб работало]
Post №: 5678
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 15.12.11 14:16. Post subject: DrakonHaSh пишет: м..
DrakonHaSh пишет:
quote:
можно, по моему, проще: 1x 2x 3x ... того же "действия", что сейчас.
Любопытная идея. Только сдается мне это не будет одинаково работать везде. У меня вот в Бате работает вполне, в Хроме горизонтальный скроллинг тоже ничего так, а вот в Акробат Ридере маловато будет... И как тут для всех использовать одни и те же настройки кратности?
Post №: 5680
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 15.12.11 14:24. Post subject: DrakonHaSh пишет: к..
DrakonHaSh пишет:
quote:
кста, если прав GrelVl (а он наверное прав), то может сделать возможность настройки, результат который бы, например, мог "выглядеть" так: shift + колесо мыши - попытка вертикальной прокрутки используя WM_HSCROLL alt + колесо мыши - попытка вертикальной прокрутки используя WM_MOUSEHWHEEL или так: shift + колесо мыши - попытка вертикальной прокрутки используя WM_HSCROLL и используя WM_MOUSEHWHEEL [то, что в некоторых программах будет двойной эффект(2x) не беда, главное чтоб работало]
Хм, а WM_MOUSEWHELL само по себе ничего не крутит. Реакцию на него определяет только хост приложение - так что попытка вертикальной прокрутки смысла не имеет - она и так делается. Да и мудренность мне не нравится - просто с точки зрения того, что пользователь будет вынужден об этом помнить.
Должно быть проще: нажаты клавиши (кнопки, шифты чего там выставлено в настройках) хирачим тьфу-ты, реализуем... ну да точно кажись так горизонтальный скроллинг. Не нажаты клавиши: дык по умолчанию - юзим вертикальный.
Posted: 15.12.11 14:53. Post subject: Carc пишет: Хм, а W..
Carc пишет:
quote:
Хм, а WM_MOUSEWHELL само по себе ничего не крутит. Реакцию на него определяет только хост приложение - так что попытка вертикальной прокрутки смысла не имеет - она и так делается.
Carc, то ли я твою мысль не понял, то ли ты не внимательно прочитал. Я писал про WM_MOUSEHWHEEL, а не про WM_MOUSEWHELL.
Post №: 5685
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 15.12.11 16:08. Post subject: GrelVl пишет: А и н..
GrelVl пишет:
quote:
А и не надо. Сам же писал, что реакцию на сообщение определяет только хост приложение.
Настройку надо - хотя бы для тестов я так думаю. Потом если все хорошо, то можно просто убрать (причем можно в тестовом режиме убрать - старый прием test-case, который работает лучше новых. Вот в последних Пагесах отлино себя показал).
GrelVl пишет:
quote:
Можно обозвать его типа "имитация наклона колеса".
Предлагаю проще: В названии че-нить написать чуть ли не от балды "эдвенсед скроль он горизонталь", по умолчанию для начала включить и только висты и старше. На крайняк чего в тултипе прописать для продвинутых.
Кому надо найдет или спросит - остальным побоку. Тут как-то пост мелькал про настройки пользователей. Если в 2-ух словах одна контора пользователей планктонного вида попросила скинуть файл конфигурации Ворда. Контора какая-то известная, с именем - ей доверяют.
Короче скинули тысячи (но меньше десятки, но все ж статистика). Изменены дефолты у 5 процентов, да и то по ходу папка по умолчанию для документов. И это-то известнейшее приложение, и пользуют и знают... И изменили папку для документов... И это "крутые" пользователи...
Я это про Гуд Дефаултс.... Это к тому что правильные настройки по умолчанию важнее, и никто в них не лазит. А если любопытно, могу дать ссылку на душераздирающую историю про гуд дефаултс. Как я родному-то!!! деду битый час доказывал - что это не крутой эксель - а моя Мапля работает. Вот вам и все настройки. Никто в них не лазиет. А для тех кто полез и правда смыслит, можно и в тултипе написать.
Post №: 5684
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 15.12.11 15:55. Post subject: Залил версию 1.11. ..
Залил версию 1.11.
Изменений мало, в основном менял в таргетной ДЛЛ направление горизонтального скроллинга. Колесико на себя - вправо (т.е. к концу документа по аналогии с вертикальным сроллингом), и колесико от себя - влево (опять же по аналогии в начало документа).
+ шутки-прибаутки в конфиг-модуле (если что, это не я! Это поклонники Пагес придумали "здесь могла быть ваша реклама")... В общем-то шутка юмора такая. А потом когда-нить может быть что-нить там и по делу будет (может спасибки какие со ссылками, может еще чего. А пока чего место пропадает? ).
А теперь уже займемся WM_MOUSEHWHEEL для висты. ОК?
Posted: 15.12.11 18:36. Post subject: А почему, собственно..
А почему, собственно, MOUSEHWHEEL - для висты? Да, первый драйвер от MS, который начал генерировать это сообщение, появился в висте. Но мы же не отлавливать его собираемся, а сами посылать. А винде-то пофиг, какое сообщение мы посылаем. Поэтому работать будет и ниже висты. По поводу настройки для типа сообщения для гор. прокрутки я сомневаюсь. Во-первых, мало приложений обрабатывают MOUSEHWHEEL, а во-вторых, я не встречал больше ни одного приложения, которое не понимало бы HSCROLL. В результате у пользователя, который включит в настройках MOUSEHWHEEL вместо HSCROLL. отвалится гор. прокрутка в большинстве приложений. Если уж и делать такую настройку, то только с возможностью задавать классы окон, в которых она будет работать. Но в текущей реализации по-моему проще и более правильно отлавливать Fx по классу окна и слать ему (и только ему) MOUSEHWHEEL. Для других окон все по-старому. На счет Гуд Дефаултс я с тобой согласен. Идеальная программа вообще не должна иметь настроек и иметь всего лишь одну кнопку: "сделать, что бы все было ништяк":).
Post №: 5686
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 15.12.11 18:51. Post subject: GrelVl пишет: А поч..
GrelVl пишет:
quote:
А почему, собственно, MOUSEHWHEEL - для висты? Да, первый драйвер от MS, который начал генерировать это сообщение, появился в висте. Но мы же не отлавливать его собираемся, а сами посылать. А винде-то пофиг, какое сообщение мы посылаем. Поэтому работать будет и ниже висты.
Потому что мы должны быть уверены, что после отсылки MOUSEHWHEEL работа выполнена корректно... А как мы об этом узнаем?
В противном случае отсылка 2-ух сообщений: MOUSEHWHEEL + HSCROLL будет приводить к прокрутке горизонтально дважды (отрабатывает и 1-ое, и 2-ое сообщение) - т.е. это будет на новых виндах. А в старых виндах та же пара будет отрабывать единожды, за счет HSCROLL.
Проще говоря, мы понятия не имеет привел ли к успеху первый MOUSEHWHEEL, и нужен ли второй посыл HSCROLL. Причем причину неудачи мы не знаем никак: ос старая, не поддерживается или что? Поэтому и не получится использовать и то, и другое. Эффект будет разный на разных виндах. Или я где-то ошибаюсь?
Posted: 19.12.11 07:25. Post subject: Чего-то тут уже все ..
Чего-то тут уже все смешалось: и горизонтальная прокрутка и вертикальная. DrakonHaSh, давай уточним, тебя только горизонтальная прокрутка не устраивает или и вертикальная тоже?
Carc, я тоже долго про MOUSEHWHEEL не знал, а когда узнал, то тоже поначалу думал что оно только начиная с висты будет работать. Так что не ты первый. Слать ли одновременно MOUSEHWHEEL и HSCROLL - дело твое. Тут тестить надо. На большом количестве приложений. А вот по поводу скорости горизонтальной прокрутки я могу сказать из своего опыта, что прокрутка с помощью HSCROLL часто оказывается меньше чем ожидается. Но с другой стороны, есть такие окна, где очень важна прокрутка по одной позиции, иначе просто проскакиваем нужную информацию. Например, такими окнами являются некоторые (не все) диалоги открытия/сохранения файлов. Мое решение было таким: засекаем время между сообщениями, если оно больше какой-то величины, скажем 100мсек, то шлем одно HSCROLL. Если меньше, то несколько. Т. о. при медленном вращении колеса прокрутка будет по одной позиции, а при быстром - больше. Ну вобще-то у меня немного посложнее, увеличение происходит в несколько этапов, чтобы не было рывка. Т. о. убиваем двух зайцев: по обстоятельствам можем делать и медленную и быструю прокрутку, не меняя настроек. PS. Не хочу тебя пугать, но если у Mouse Hunter будет большое количество поклонников, то тебя еще столькими вопросами и пожеланиями завалят, что... Вобщем это еще цветочки. Но мне интересно, что у тебя получится. И в первую очередь интересны решения, отличные от моих. Поэтому постараюсь не сбивать тебя с твоего мысленного пути.
Posted: 15.12.11 19:27. Post subject: Ошибаешся ты только ..
Ошибаешся ты только в том, что считаешь что mousehwheel не будет проходить на старых виндах. У меня под XP огнелис прекрасно принимает его отсылку из моей проги. Единственное, что важно - это чтобы в конечное приложение была заложена обработка этого сообщения, т. к. дефолтной виндовой оконной процедурой оно вообще не обрабатывается. А винда может быть хоть 98 :). А вот узнать, правильно ли отреагировало конечное приложение на наше сообщение мы действительно не можем. Ну по крайней мере надежных способов не существует.
Post №: 5689
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 22.12.11 00:25. Post subject: GrelVl пишет: Ошиба..
GrelVl пишет:
quote:
Ошибаешся ты только в том, что считаешь что mousehwheel не будет проходить на старых виндах. У меня под XP огнелис прекрасно принимает его отсылку из моей проги. Единственное, что важно - это чтобы в конечное приложение была заложена обработка этого сообщения, т. к. дефолтной виндовой оконной процедурой оно вообще не обрабатывается. А винда может быть хоть 98 :). А вот узнать, правильно ли отреагировало конечное приложение на наше сообщение мы действительно не можем. Ну по крайней мере надежных способов не существует.
Ну а я о чем говорил? Старая винда это 98\NT\2000 - там запросто может и не быть обработчика такого сообщения....
Posted: 22.12.11 14:08. Post subject: Carc пишет: Старая ..
Carc пишет:
quote:
Старая винда это 98\NT\2000 - там запросто может и не быть обработчика такого сообщения....
Так... Почитал MSDN. DefWindowProc обрабатывает WM_MOUSEHWHEEL начиная с висты, а WM_MOUSEWHEEL начиная с 2000. Но для обоих сообщений вся обработка сводится к тому, что DefWindowProc перенаправляет их к окну-родителю того окна, которое его получило. И так продолжается пока либо сообщение не будет обработано либо пока не будет достигнуто окно верхнего уровня этого приложения. Вся "полезная реакция" (собственно прокрутка окна) возлогается на разработчиков приложений. Единственная разница между вистой и 98 при обработке этих сообщений лишь в том, что прод 98 разработчик не может пологаться на то, что они будут переданны вверх по цепочке парентов. Следовательно он должен вставить код по их обработке в то самое окно, которое должно на них реагировать. Такая программа будет одинаково работать и в висте и в 98. Если же он вставит их обработку в парент этого окна, такое приложение будет корректно работать в висте, но в 98 - только если активен тот самый парент. Хороший разработчик выберет первый путь. Собственно по этому мы и наблюдаем реакцию на WM_MOUSEHWHEEL в огнелисе под XP. Хотя не понятно почему они не добавили обработку WM_HSCROLL. А вообще WM_MOUSEHWHEEL так и осталось экзотикой. Не смотря на то что оно придумано давно, программисты не торопятся включать его обработку в свои программы.
Post №: 5696
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 22.12.11 14:20. Post subject: GrelVl пишет: Так....
GrelVl пишет:
quote:
Так... Почитал MSDN. DefWindowProc обрабатывает WM_MOUSEHWHEEL начиная с висты, а WM_MOUSEWHEEL начиная с 2000. Но для обоих сообщений вся обработка сводится к тому, что DefWindowProc перенаправляет их к окну-родителю того окна, которое его получило.
Ну понятно что перенаправляет, и конкретной прокруткой рулит конкретное приложение. Вопрос в другом: что а) будет ли перенаправлять вообще? Увидит DefWindowProc под ХП непонятное сообщение, и просто банально на него забьет - ничего не перенаправляя.
б) еще бабка надвое сказала как именно она его перенаправляет. Может действительно напрямки правит его в окно и кладет с прибором. А может и иначе: отправляет, и если целевое приложение не реагирует на него (по возвращаемому значению), то рендерит сообщение во что-нить другое - тот же HSCROLL к примеру.
Как оно на самом деле - никто не знает. Design by behavior и привет. Так что хотя бы поначалу галки понадобятся, чтобы точно знать что именно делает Хантер. А то потом угадайка начнется - где хантер нашуровал, а где винда сама....
Сори, чего-то я отвечать стал на первую фразу - а по сути мы об одном и том же говорим.
GrelVl пишет:
quote:
Собственно по этому мы и наблюдаем реакцию на WM_MOUSEHWHEEL в огнелисе под XP. Хотя не понятно почему они не добавили обработку WM_HSCROLL. А вообще WM_MOUSEHWHEEL так и осталось экзотикой. Не смотря на то что оно придумано давно, программисты не торопятся включать его обработку в свои программы.
Ну вот собственно и я про то же: надо попробовать с галкой сначала, делать так или эдак. А там видно будет: оставить галку или захардкодить. Или как обычно галка пусть будет, но в 99 из 100 по умолчанию всех будет устраивать.
Posted: 22.12.11 15:43. Post subject: Ладно, не будем лезт..
Ладно, не будем лезть в дебри. Выходов у тебя 2: либо слать одновременно hscroll и mousehwheel (отключаемая опция) либо захардкорить mousehwheel только для огнелиса.
Post №: 5698
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 22.12.11 16:48. Post subject: GrelVl пишет: Ладно..
GrelVl пишет:
quote:
Ладно, не будем лезть в дебри. Выходов у тебя 2: либо слать одновременно hscroll и mousehwheel (отключаемая опция) либо захардкорить mousehwheel только для огнелиса.
Сдается мне как раз не надо дважды отсылать эти сообщения. А то в определенных случаях будем получать двойной эффект, прокручиваться будет дважды. А в других стандартный, одинарный эффект. Зачем нам такое неопределенное поведение?
А хардкодить под огнелис имхо тоже сомнительная идея: завтра появится еще одно приложение, которое не сечет WM_HSCROLL, послезавтра третье - и что на каждое окно код переписывать? И сколько раз его придется переписывать?
Posted: 23.12.11 07:07. Post subject: Но тогда в режиме mo..
Но тогда в режиме mousehwheel перестанет работать гор. прокрутка в большинстве приложений, т. к. оно поддерживается очень малым количеством приложений. DrakonHaSh просто хотел чтобы в Fx гор. прокрутка заработала, а получится что там она заработает, а в остальных прогах отвалится.
Post №: 5709
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 24.12.11 01:52. Post subject: GrelVl пишет: Но то..
GrelVl пишет:
quote:
Но тогда в режиме mousehwheel перестанет работать гор. прокрутка в большинстве приложений, т. к. оно поддерживается очень малым количеством приложений. DrakonHaSh просто хотел чтобы в Fx гор. прокрутка заработала, а получится что там она заработает, а в остальных прогах отвалится.
Posted: 18.12.11 17:37. Post subject: Carc пишет: Проще г..
Carc пишет:
quote:
Проще говоря, мы понятия не имеет привел ли к успеху первый MOUSEHWHEEL, и нужен ли второй посыл HSCROLL.
я про эту ситуацию писал в своем пред сообщении (в начале этой страницы):
quote:
shift + колесо мыши - попытка горизонтальной прокрутки используя WM_HSCROLL и используя WM_MOUSEHWHEEL [то, что в некоторых программах будет двойной эффект(2x) не беда, главное чтоб работало]
нам не принципиально, по мне, знать, был ли успешным вызов MOUSEHWHEEL. нам надо чтобы Mouse Hunter заставлял приложение двигать горизонтальную прокрутку, а на сколько делений (одно срабатывание или 2) - для горизонтальной прокрутки это в 99% случаев никак не принципиально, принципиален сам факт срабатывания в приложении горизонтальной прокрутки.
Posted: 18.12.11 17:53. Post subject: DrakonHaSh пишет: мо..
DrakonHaSh пишет:
quote:
можно, по моему, проще: 1x 2x 3x ... того же "действия", что сейчас.
Carc пишет:
quote:
Любопытная идея. Только сдается мне это не будет одинаково работать везде. У меня вот в Бате работает вполне, в Хроме горизонтальный скроллинг тоже ничего так, а вот в Акробат Ридере маловато будет... И как тут для всех использовать одни и те же настройки кратности?
ну так и реальное нажатие мышкой на стрелках < > горизонтальной прокрутки не работает одинаково везде - у каждого приложения своё понятие масштаба, так что универсального "одинаково везде" навряд ли получится достичь. а мое предложение (1x 2x 3x ...) - это легкий и практичный способ добиться хорошего результата.
Post №: 5703
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 22.12.11 23:14. Post subject: Carc пишет: Легко. ..
Carc пишет:
quote:
Легко. Выбираем нужное сообщение, и внизу его ссылка "ответить".
Хм, тут кстати и подписка на ответы по почте есть... Но правда пойди найди ее. В самом низу, слева галка есть... Я сам ее года через 3 только обнаружил (вернее мне ее обнаружили)
Post №: 5690
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 22.12.11 00:27. Post subject: DrakonHaSh пишет: н..
DrakonHaSh пишет:
quote:
ну так и реальное нажатие мышкой на стрелках < > горизонтальной прокрутки не работает одинаково везде - у каждого приложения своё понятие масштаба, так что универсального "одинаково везде" навряд ли получится достичь. а мое предложение (1x 2x 3x ...) - это легкий и практичный способ добиться хорошего результата.
Ну так а я про что? Если везде масштаб разный, то как тогда ко всем подряд применять одни и те же настройки 1х-2х-3х?
Posted: 23.12.11 21:51. Post subject: Carc пишет: Ну так ..
Carc пишет:
quote:
Ну так а я про что? Если везде масштаб разный, то как тогда ко всем подряд применять одни и те же настройки 1х-2х-3х?
под опциями 1x-2x-3x... я подразумеваю количество повторов "посылок сообщения" приложению за одну прокрутку колесика мыши.
еще раз сформулирую на различных примерах, какой функционал я бы хотел иметь возможность настроить в MouseHunter : *пример1* Shift+КолесикоМыши = 2x (Метод1 + Метод2) *пример2* Ctrl+КолесикоМыши = 3x (Метод1) *пример3* Alt+КолесикоМыши = 1x (Метод2) ...
где Метод1 это посылка сообщения WM_HSCROLL где Метод2 это посылка сообщения WM_MOUSEHWHEEL
Post №: 5710
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 24.12.11 01:54. Post subject: DrakonHaSh пишет: п..
DrakonHaSh пишет:
quote:
под опциями 1x-2x-3x... я подразумеваю количество повторов "посылок сообщения" приложению за одну прокрутку колесика мыши.
еще раз сформулирую на различных примерах, какой функционал я бы хотел иметь возможность настроить в MouseHunter : *пример1* Shift+КолесикоМыши = 2x (Метод1 + Метод2) *пример2* Ctrl+КолесикоМыши = 3x (Метод1) *пример3* Alt+КолесикоМыши = 1x (Метод2) ... где Метод1 это посылка сообщения WM_HSCROLL где Метод2 это посылка сообщения WM_MOUSEHWHEEL
Ну это можно, но со временем. Может так будет что MOUSEHWHEEL и в единственном посыле все решит.
Post №: 5711
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 24.12.11 02:13. Post subject: Ну попробовал я в ХП..
Ну попробовал я в ХП СП3
Короче, за WM_MOUSEHWHEEL отвечает всегда и только всегда целевое приложение и только. Гугл Хром обработал, 6-ая студия нет. Зе Бат 5-ый тоже нет. Т.е. в ХП на 99 процентов этот способ работать не будет. То бишь виндовая процедурка пересылает в целевое приложение, а чего с ним делать - решает само приложение.
А С вистой и старше надо как-то отдельно проверять - у меня их нету просто. Firefox последний обновленнный все-таки реагирует... Как кстати и Хром. Но Firefox крутит прямо в противоположном направлении... Мутотень короче какая-то получилась пока.
Posted: 28.12.11 12:38. Post subject: Carc пишет: Залил н..
Carc пишет:
quote:
Залил новую версию Mouse Hunter 1.12
xp + FF 3.6.24 - работает, но как в версии до 1.11 - колесико вперед - в начало(право), колесико назад - в начало(лево).
xp/7 + последний chrome 16... - очень дерганая прокрутка - chrome пытается одновременно выполнять 2 действия - и прокрутки влево и прокрутку вправо.
xp/7 + 1c77 (древняя прога) - нормальная работа, также как и в 1.11
получается что посылается WM_MOUSEHWHEEL в одну сторону, а WM_HSCROLL в другую.
и можно, все таки, добавить возможность выбора "множителя"(кол-во повторов на единицу прокрутки колесика) для "горизонтали" (1x 2x ...), а то текущая "1x" для меня слишком мала :(
Post №: 5717
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 28.12.11 12:49. Post subject: DrakonHaSh пишет: x..
DrakonHaSh пишет:
quote:
xp + FF 3.6.24 - работает, но как в версии до 1.11 - колесико вперед - в начало(право), колесико назад - в начало(лево).
Не понял, дык влево или вправо?
DrakonHaSh пишет:
quote:
xp/7 + последний chrome 16... - очень дерганая прокрутка - chrome пытается одновременно выполнять 2 действия - и прокрутки влево и прокрутку вправо.
Такая же байда. Ну что я и говорил в принципе: что не стоит слать и то и другое одновременно. А сейчас для тестирования именно так. Наверное стоит результаты в лог добавить, чтобы посмотреть что там с LRESULT на выходе имеем.
DrakonHaSh пишет:
quote:
получается что посылается WM_MOUSEHWHEEL в одну сторону, а WM_HSCROLL в другую.
Хм, не понял - давай поподробнее, плз.
DrakonHaSh пишет:
quote:
и можно, все таки, добавить возможность выбора "множителя"(кол-во повторов на единицу прокрутки колесика) для "горизонтали" (1x 2x ...), а то текущая "1x" для меня слишком мала :(
Добавим, только с начала с мессагами разберемся, и добавим.
Post №: 5718
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 28.12.11 13:11. Post subject: Кстати, а дайте ссыл..
Кстати, а дайте ссылку на страницу где FF горизонтальный скроллинг включает, а то ведь еще и поискать надо.
Кстати говоря, Хром и на WM_HSCROLL, и на WM_MOUSEHWHEEL - мрачно как и ожидалось возвращает ноль. Так что как предполагалось, скорее всего результат отсылки сообщений узнать нельзя... Ну разве что танцы с бубнами проводить на предмет GetScrollBarInfo и иже с ними, но это все равно эвристика получится...
quote: получается что посылается WM_MOUSEHWHEEL в одну сторону, а WM_HSCROLL в другую.
Хм, не понял - давай поподробнее, плз.
XP+CHROME: полоска прокрутки в крайнем левом положении, "нажимаю" [SHIFT + колесико вперед] полоска прокрутки сдвигается вправо, в логе: HS delta=120
HS delta=120
т.е. никакого вправо не ожидалось, но зато получилось :)
XP+1c77 (на WM_MOUSEHWHEEL никак не реагирует): полоска прокрутки в крайнем левом положении, "нажимаю" [SHIFT + колесико вперед] - ничего не происходит (как и ожидалось), "нажимаю" [SHIFT + колесико назад] - полоска прокрутки сдвигается вправо(как и ожидалось), в логе: HS delta=120
HS delta=120
HS delta=-120
HS delta=-120
XP+FF (на WM_HSCROLL никак не реагирует): полоска прокрутки в крайнем левом положении, "нажимаю" [SHIFT + колесико вперед] - полоска прокрутки сдвигается вправо (ожидалось что ничего не произойдет), "нажимаю" [SHIFT + колесико назад] - полоска прокрутки сдвигается влево(ожидалось что вправо), в логе: HS delta=120
HS delta=120
HS delta=-120
HS delta=-120
=============================================================== из этого (chrome+ff) вроде как следует что посылка WM_MOUSEHWHEEL крутит не в ту сторону, что предполагается Вами, а в противоположную.
Добавлено настройка: запрет на скроллинг окна, если нажата средняя кнопка мыша. PS: я помню про HWHELL - просто народ с бетаньюс попросил эту настройку, а там работы то на 5 строчек кода. Поэтому и форсировал. С HWHELL, или я все-же склоняюсь к настройки кратности отсылки WM_HSCROLL будет разбираться теперь.
Post №: 5930
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 21.03.12 10:39. Post subject: DrakonHaSh пишет: а..
DrakonHaSh пишет:
quote:
а новая версия с доделанной горизонтальной прокруткой когда нить увидит свет, а то уже 2 месяца прошло ... :( ?
Та не вопрос! Только надо договориться до ума что делать-то!?! А то толкуем, толкуем, что-то обсуждаем, потом кто-нить куда-нить пропадает, потом мне некогда банально Хантером заниматься, потом опять в запой командировку...
И в результате я уже окончательно запутался кто чего хотел? Где HWHELL, где кратность прокрутки, кто хотел везде применять, а кто хотел только для конкретных приложений.... у кого чего в каком Firefox не работало и на какой винде... В общем в голове у меня каша полная теперь по этому вопросу. Так что сделать не особая проблема - нужно только определиться что именно.
Post №: 1345
Joined: 16.04.10
Location: Cеверная столица
Rank:
0
Posted: 21.03.12 22:53. Post subject: Carc пишет: А что и..
Carc пишет:
quote:
А что именно не скроллится? Скрпиншотни что-ли...
А чего там скриншотить? При удержании пр.кл.мыши или соотв. клавиши на клавиауре должен происходить горизонтальный скроллинг (если страница шире экрана). Так вот НЕ СКРОЛЛИТСЯ.
Post №: 5934
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 21.03.12 23:32. Post subject: DenisSMI пишет: А ч..
DenisSMI пишет:
quote:
А чего там скриншотить? При удержании пр.кл.мыши или соотв. клавиши на клавиауре должен происходить горизонтальный скроллинг (если страница шире экрана). Так вот НЕ СКРОЛЛИТСЯ.
Как что скриншотить? Страницу Ворда.... Лучше один раз увидеть
У меня в 2003-го нет. Но кстати говоря даже в старинном 97-ом не скроллится... Любопытное явление...
Post №: 5936
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 21.03.12 23:39. Post subject: ОК. Буду ковырять на..
ОК. Буду ковырять на досуге. У меня ни при каких не скроллит горизонтально даже в 97-ом ворде, куда мыша не таскай по окну ворда. Вертикально все в порядке, а вот горизонтально - никак.
1c77 (понимает только WM_HSCROLL) 1c77 - shift + колесико на себя - право 1c77 - shift + колесико от себя - лево => все так, как и надо
ff 3.6.28 (понимает только WM_MOUSEHWHEEL) ff 3.6.28 - shift + колесико на себя - ЛЕВО ff 3.6.28 - shift + колесико от себя - ПРАВО => наоборот от того, как надо
chrome 17 (понимает как WM_HSCROLL, так и WM_MOUSEHWHEEL) chrome 17 - shift + колесико на себя - ДЕРГАНЬЕ ТУДА СЮДА chrome 17 - shift + колесико от себя - ДЕРГАНЬЕ ТУДА СЮДА => WM_HSCROLL пытается крутить в одну сторону, а WM_MOUSEHWHEEL в другую
===>>> ( === Posted: 28.12.11) из этого (chrome+ff) следует что посылка WM_MOUSEHWHEEL крутит не в ту сторону, что предполагается Вами, а в противоположную.
Post №: 5966
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 02.04.12 10:09. Post subject: DrakonHaSh пишет: c..
DrakonHaSh пишет:
quote:
c чего не знаю, но почему бы вам не выложить версию с инверсией WM_MOUSEHWHEEL - а я потещу и отпишусь о результатах.
Да я не против... Просто ее пока нет, потому что я не знаю что делать. Ты что предлагаешь? Добавить галку юзать WM_MOUSEHWHEEL для горизонтального скроллинга и собственно всё? Ставим галку - шлется HWHEEL, в остальном всё стандартно. Так?
Posted: 02.04.12 13:08. Post subject: ff 3.6.28 (понимает ..
ff 3.6.28 (понимает только WM_MOUSEHWHEEL) ff 3.6.28 - shift + колесико на себя - ЛЕВО (а надо право) ff 3.6.28 - shift + колесико от себя - ПРАВО (а надо лево) => наоборот от того, как надо
в тестовой версии меняем(инвертируем) направление прокрутки (*только* касательно WM_MOUSEHWHEEL), т.е. то "действие(WM_MOUSEHWHEEL)", которое происходит сейчас при "shift + колесико на себя" - перекидываем на "shift + колесико от себя" и наоборот.
Post №: 5969
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 02.04.12 14:57. Post subject: DrakonHaSh пишет: f..
DrakonHaSh пишет:
quote:
ff 3.6.28 - shift + колесико на себя - ЛЕВО (а надо лево) ff 3.6.28 - shift + колесико от себя - ПРАВО (а надо право)
Ничего не понял... Получаем лево, а надо влево... Что ты имел ввиду?
DrakonHaSh пишет:
quote:
в тестовой версии меняем(инвертируем) направление прокрутки (*только* касательно WM_MOUSEHWHEEL), т.е. то "действие(WM_MOUSEHWHEEL)", которое происходит сейчас при "shift + колесико на себя" - перекидываем на "shift + колесико от себя" и наоборот.
Инверт - это банальные детали, даже не 2 строки кода. Меня другое интересует. При заданной настройке (предпочитать HWHEEL или обычный HSCROLL) - это будет распространяться на все приложения. Т.е. или всем HWHEEL или всем HSCROLL.
Не буду скрывать я пьян я делал возможности кастомной настройки для конкретных приложений в ранних версиях. В стиле спая или Мапли - прицел на мыша, и перетаскиваем на таргетное приложение. Соответственно, это такой инструмент выбора. Но в UI он плохо вписывается.
Поэтому я предлагаю в первой тестовой версии сделать сначала выбор для всех (HWHEEL или HSCROLL). Потом будем думать. Я себе одно место на китайский флаг порвал, пока писал тул выбора. Но главное нужно поддерживать список выбранного в UI. А он уже фактически туда не влезает. Поэтому пока предлагаю просто сделать галку использовать HWHEEL для всех. Потом разберемся - может там всего будет с 4 приложений. Чего там тогда выбор писать - захардкодить их, и дело с концом.
Posted: 02.04.12 15:23. Post subject: Carc пишет: Инверт ..
Carc пишет:
quote:
Инверт - это банальные детали, даже не 2 строки кода. Меня другое интересует. При заданной настройке (предпочитать HWHEEL или обычный HSCROLL) - это будет распространяться на все приложения. Т.е. или всем HWHEEL или всем HSCROLL.
так блин, сделайте эти "2 строчки кода" и я успокоюсь т.к. скорее всего после этого все будет ок - во всех приложениях.
т.к. сейчас WM_MOUSEHWHEEL работает наоборот от нужного в обеих приложениях, что я тестировал - что в FF что в хроме.
Post №: 5971
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 02.04.12 15:33. Post subject: DrakonHaSh пишет: т..
DrakonHaSh пишет:
quote:
так блин, сделайте эти "2 строчки кода" и я успокоюсь т.к. скорее всего после этого все будет ок - во всех приложениях. т.к. сейчас WM_MOUSEHWHEEL работает наоборот от нужного в обеих приложениях, что я тестировал - что в FF что в хроме. с WM_HSCROLL все нормально, его не надо трогать.
1) В текущей версии вообще нет WM_MOUSEHWHEEL... Так что непонятно что там вообще может работать неверно, если его нет.
2) Я бы и не трогал HSCROLL. Но как приложение должно определять кому слать HWHEEL, а кому HSCROLL? Или должно быть задано условие для выбора, или оно будет всем подряд рассылать или первое, или второе. Я конечно могу сделать так, что сначала шлется HSCROLL, а потом HWHEELL. Опять же не нужно условия выбора кому что. По любому всем и первое и второе?
Posted: 02.04.12 21:29. Post subject: Привет, Carc. Все уж..
Привет, Carc. Все уже до тебя исследованно. 1) FF такой один, не понимающий HSCROLL. Так что определяем его по классу окна и шлем ему HWEEL, не забыв инвертировать направление. Всем остальным шлем HSCROLL. 2) В Word-е горизонтально не крутит потому что там не встроенные в окно сколбары, а scrollbarcontrol-ы, которые являются самостоятельными окнами. По MSDN-у, если шлется HSCROLL (или VSCROLL) от имени скролбарконтрола, в нем должен передаваться хендл этого контрола. Не все приложения придерживаются этого правила, но вот Word придерживается. Если нет хендла в сообщении, он ничего крутить не будет. Кстати Word не один такой. Таков весь Office и еще проги есть. На вопрос что делать я сам до сих пор ответить затрудняюсь. Нет никаких признаков, по которым можно достоверно соотнести скролбарконтролы с окном, которое они должны прокручивать. А если их не 2, а скажем 4, задачка становится еще веселее. Вобщем я перебираю все окна приложения, нахожу среди них скролбарконтролы, проверяю их колличество. Если более одного контрола одного типа (вертикального или горизонтального), то эти контролы отбрасываем - не судьба крутить в этом направлении. А вот если какой-то один, с его хендлом и шлем HSCROLL или VSCROLL. Да, забыл сказать, у меня вертикальная прокрутка по возможности идет через VSCROLL. У тебя нет, так что искать надо будет только горизонтальные скролбарконтролы. 3)Тут просят сделать настраиваемой скорость горизонтальной прокрутки. Это не покатит. Есть окна, в которых принципиально важно посылать 1 HSCROLL за один щелчек колеса. Лучше мерить время между сообщениями и, если оно меньше где-то 30 мсек, слать несколько HSCROLL (возможно с постепенным увеличением их колличества), иначе 1.
Post №: 5974
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 02.04.12 23:00. Post subject: GrelVl пишет: 1) FF..
GrelVl пишет:
quote:
1) FF такой один, не понимающий HSCROLL. Так что определяем его по классу окна и шлем ему HWEEL, не забыв инвертировать направление. Всем остальным шлем HSCROLL.
Чего то сумневаюся я... Наверняка и еще будут аппликухи такие. FF же не на голом асме писан, а фреймворк какой-нить. Соответственно должны быть и другие приложения.
Post №: 5975
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 02.04.12 23:01. Post subject: GrelVl пишет: 2) В ..
GrelVl пишет:
quote:
2) В Word-е горизонтально не крутит потому что там не встроенные в окно сколбары, а scrollbarcontrol-ы, которые являются самостоятельными окнами. По MSDN-у, если шлется HSCROLL (или VSCROLL) от имени скролбарконтрола, в нем должен передаваться хендл этого контрола. Не все приложения придерживаются этого правила, но вот Word придерживается. Если нет хендла в сообщении, он ничего крутить не будет. Кстати Word не один такой. Таков весь Office и еще проги есть. На вопрос что делать я сам до сих пор ответить затрудняюсь. Нет никаких признаков, по которым можно достоверно соотнести скролбарконтролы с окном, которое они должны прокручивать. А если их не 2, а скажем 4, задачка становится еще веселее. Вобщем я перебираю все окна приложения, нахожу среди них скролбарконтролы, проверяю их колличество. Если более одного контрола одного типа (вертикального или горизонтального), то эти контролы отбрасываем - не судьба крутить в этом направлении. А вот если какой-то один, с его хендлом и шлем HSCROLL или VSCROLL. Да, забыл сказать, у меня вертикальная прокрутка по возможности идет через VSCROLL. У тебя нет, так что искать надо будет только горизонтальные скролбарконтролы.
Да я не спорю. В принципе кастомизоваться несложно. Сложно как это толково описать, + дать пользователю возможности настройки, и так чтобы каждый чих не заставлял править код.
Post №: 5976
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 02.04.12 23:04. Post subject: GrelVl пишет: 3)Тут..
GrelVl пишет:
quote:
3)Тут просят сделать настраиваемой скорость горизонтальной прокрутки. Это не покатит. Есть окна, в которых принципиально важно посылать 1 HSCROLL за один щелчек колеса. Лучше мерить время между сообщениями и, если оно меньше где-то 30 мсек, слать несколько HSCROLL (возможно с постепенным увеличением их колличества), иначе 1.
Ускорение это следующий шаг. Просто сначала надо разобраться с HWHEEL\HSCROLL, потому как это даст кучу случаев. Если на это наложить еще кучу случаев ускорения - представлешь сколько получаем в результате матрицы вариантов конечного решения?
А если сначала разобраться хорошо с первой задачей, все корректно разобрать и описать. То сведется все к конечному числу случаев. И соответственно, даже кастомизация по второму случаю даст конечное число вариантов.
Posted: 03.04.12 07:19. Post subject: Это сейчас одновреме..
Это сейчас одновременно HWHEEL и HSCROLL шлется? Есть у меня один въедливый тестер. Он мне столько апликух с нестандартным поведением накидал, что я год разбирался. Поэтому я и говорю: FF такой один. Ему только HWHEEL, остальным только HSCROLL. Я тоже по началу сомневался и сделал настройку, что слать: то или другое. Но много времени прошло, а больше кроме FF таких апликух не нашлось. Сейчас потихоньку переписываю на фасм и решил эту настройку выкинуть. Сделал HWHEEL только для FF.
Post №: 5979
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 03.04.12 10:18. Post subject: GrelVl пишет: Это с..
GrelVl пишет:
quote:
Это сейчас одновременно HWHEEL и HSCROLL шлется?
Да, именно одновременно.
GrelVl пишет:
quote:
Есть у меня один въедливый тестер. Он мне столько апликух с нестандартным поведением накидал, что я год разбирался. Поэтому я и говорю: FF такой один. Ему только HWHEEL, остальным только HSCROLL. Я тоже по началу сомневался и сделал настройку, что слать: то или другое. Но много времени прошло, а больше кроме FF таких апликух не нашлось. Сейчас потихоньку переписываю на фасм и решил эту настройку выкинуть. Сделал HWHEEL только для FF.
А где гарантия что только FF? Ладно - чо то я с утрянки...
Вернее как точно определять FF? Имя класса окна? Имя процесса? И то и другое? И не будет ли это меняться с развитием FF? Та же студия, баловница старенькая меняет - *опа - имена классов, я еще не понял как отловить их. В тестах удавалось ломануть - вай как красиво работать проект-трюха начинала.
Причем меняет студия имена классов не от версии к версии - эти баги MS мы поправим. А от запуска к запуску. Во как нах. Другой старт - другое имя класса для TT, а надо его парент найти а не ему слать. По ходу какой-то странный надклассинг что ли юзает. А ломануть ну ой как хочется. Самому надо.
Posted: 03.04.12 10:48. Post subject: Carc пишет: Вернее ..
Carc пишет:
quote:
Вернее как точно определять FF? Имя класса окна?
Да. Оно у них отродясь не менялось. MozillaWindowClass. А к имегни процесса не надо привязываться. Мало ли какой процесс будет использовать движок Gecko.
Post №: 5981
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 03.04.12 10:52. Post subject: GrelVl пишет: Да. О..
GrelVl пишет:
quote:
Да. Оно у них отродясь не менялось. MozillaWindowClass. А к имегни процесса не надо привязываться. Мало ли какой процесс будет использовать движок Gecko.
Да вроде и так все нормально работает пока даже с двойной отсылкой обоих сообщений. Пока посмотрим короче.
Posted: 03.04.12 10:42. Post subject: Про Word я не все ск..
Про Word я не все сказал. Там немного сложнее. Мало найти скролбарконтролл, HSCROLL надо слать паренту этого контрола, а не окну под курсором. Иначе не крутит. Короче полная (_x_).
Post №: 5980
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 03.04.12 10:51. Post subject: GrelVl пишет: Про W..
GrelVl пишет:
quote:
Про Word я не все сказал. Там немного сложнее. Мало найти скролбарконтролл, HSCROLL надо слать паренту этого контрола, а не окну под курсором. Иначе не крутит. Короче полная (_x_).
Post №: 5983
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 03.04.12 11:11. Post subject: DrakonHaSh пишет: с..
DrakonHaSh пишет:
quote:
спасибо, теперь я все работает как надо. СПАСИБО
Спасибо не булькает Шютка конечно! Вот думаю, как бы это ненавязчиво монетизировать... Ненавязчиво конечно. Может какой рекламный баллун в трее крутить со ссылкой на мои другие продукты? Дык при старте смысла нет - MH часто в автозагрузке стоит. Можно потом конечно, через полчасика... И вообще по любому сделаю эту "рекламу" отключаемой, иначе она отключается брутально
Могу живописать пронзительнейшую историю про емейл-маркетинг одного продукта четыре раза в день, со скидками начинающимися с 20% и доходящими до 90%.... И так 15 раз на дню. Дал им блин емейл при скачке. Теперь мой честно купленный Бат с этими письмами ровно как и арабским спамом разбирается прям на входе... Хороший пример, годный. Торгаши хуже цыганов. После этого в принципе дела с ними иметь не хочется.
Так что лишняя "реклама" всегда зло! Только отрицательный эффект, а нужно хотя бы нулевой. Вот идеи бы мне и помогли. А то в настройки блондинки то не лазиют, там чего хочешь можно писать - да кто туда смотрит.
Posted: 04.04.12 10:33. Post subject: Добрый день! Автор, ..
Добрый день! Автор, сделайте, пожалуйста, русскую версию вашей программы. Мне понравилась, но английским плохо владею. Здесь выложили русификатор: http://zhmak.info/1151673426-mouse-hunter-130-rus.html но что мешает сделать официальную русскую версию?
Насчёт рекламы - чтобы можно было её полностью отключить, иначе пропадёт интерес! И чтобы поменьше потребляла памяти - окно настроек кушает около 17 МБ.
Post №: 5986
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 04.04.12 19:09. Post subject: Kapelka пишет: Добр..
Kapelka пишет:
quote:
Добрый день! Автор, сделайте, пожалуйста, русскую версию вашей программы. Мне понравилась, но английским плохо владею.
Со временем планируется... Видимо агент будем ломать по какой-нить инжектной технологии, с конфиг-модулем все несколько сложнее. У этого фреймворка есть официальный подход к локализации, но там далеко не все так просто. Поэтому пока с этим и отложили.
Любопытная хреновина.... Только сделана она тупо в лоб. Что будет когда попросят чешскую локализацию, потом немецкую!?! На каждую будут бинарник новый готовить?
И я бы вообще советовал поаккуратнее пользоваться "шедеврами" подобных переводчиков. На такое напоритесь, что потом Винду полностью переустанвливать придется. Плавали, знаем. Хотя к чести сказать конкретно этих переводчиков - тут всё чисто. Вышесказанное о всякой заразе к ним никак не относится. Но ровно также следующие "переводчики" сделают все наоборот. Переведут не софт, а что-нибудь еще (работающую Windows, пароли, логины, вирусы и.т.д.)
Kapelka пишет:
quote:
Насчёт рекламы - чтобы можно было её полностью отключить, иначе пропадёт интерес!
Отключалка будет - без разговоров. Только мне самому не шибко интересно вживлять подобную само-рекламу соседних продуктов. Толку с нее с гулькин нос в базарный день, в обычный же день полный, абсолютный и безоговорочный ноль пользы. А людям только мешает. Нафига ж?
Kapelka пишет:
quote:
И чтобы поменьше потребляла памяти - окно настроек кушает около 17 МБ.
Дык и фиг с ним что кушает!?! Оно работает у меня от силы 3 раза за день по ходу тестов, в остальное время отдыхает. А у обычного пользователя и подавно будет запускаться от силы 3-5 раз за всю жизнь. Неспроста же я все настройки в отдельный exe-шник выносил. Для самой сути работы такая красотища не нужна. Вполне достаточно 3-4 десятков килобайт кода, которые написаны в агенте.
PS: вот переводчики, то блин, а описание Aml Pages и Aml Maple так и не удосужились перевести....
Post №: 6067
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 20.05.12 11:20. Post subject: Kapelka пишет: Добр..
Kapelka пишет:
quote:
Добрый день! Автор, сделайте, пожалуйста, русскую версию вашей программы. Мне понравилась, но английским плохо владею. Здесь выложили русификатор: http://zhmak.info/1151673426-mouse-hunter-130-rus.html но что мешает сделать официальную русскую версию?
Ну в принципе в версии 1.40 приделана русская локализация для агента (то, что постоянно болтается в трее). Для настроек будет чуть позже - аккурат сейчас разбираюсь, в принципе русский релиз не за горами.
Post №: 6041
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 18.04.12 17:28. Post subject: Sis-Terr пишет: Пас..
Sis-Terr пишет:
quote:
Пасиб, буду заглядывать
Залил версию 1.31 на сервер. У меня корректно работает с VolumeControl в Windows XP SP3 (хотя, если по уму, то не только с VolumeControl конфликты устранены).
Post №: 6045
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 20.04.12 10:30. Post subject: Sis-Terr пишет: да ..
Sis-Terr пишет:
quote:
да , на ХР СП2 тоже нормально работает, благодарю автора
Та собсна пожалста
Там вопрос правильно ли будет работать в других виндах. В 2К, в Висте, в семерке. Собственно, SP не влияет. Но вопрос более теоретический, причем совсем "тетеритический". На 99 процентов уверен что да, но могут быть некоторые отличия в других виндах. Суть собственно в методе определения что колесико крутанули над ВолумКонтрол в трее.
Posted: 02.05.12 08:22. Post subject: Особо не вникал, но ..
Особо не вникал, но по-моему, Carc, ты раньше заменял сообщение на WM_NULL, а потом передавал его в CallNextHookEx. А теперь передаешь в CallNextHookEx оригинальное сообщение. И это правильно. Только не понял, при чем тут
quote:
Суть собственно в методе определения что колесико крутанули над ВолумКонтрол в трее.
Post №: 6057
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 02.05.12 09:21. Post subject: GrelVl пишет: Особо..
GrelVl пишет:
quote:
Особо не вникал, но по-моему, Carc, ты раньше заменял сообщение на WM_NULL, а потом передавал его в CallNextHookEx. А теперь передаешь в CallNextHookEx оригинальное сообщение. И это правильно. Только не понял, при чем тут
Да тупо там все в лоб!
Раньше MH забирал себе сообщение, а теперь проверяет куда шло сообщение. Если в трей, то пропускает его по назначению без изменений, чтобы таргетная программа могла его сама обработать как хочет.
Честно говоря, VolumeControl там и вовсе частный случай. Обрабатывается весь трей. По любому в трее крутить нечего и это сообщение Хантер может и вовсе не обрабатывать. Вернее, как правило нечего, на практике можно получить интересный эффект. Но это скорее исключение.
Насколько понимаю, что делает Volume Control в принципе пояснять профи не надо? Там всё просто как пилорама. Просто старые версии Хантера не пропускали в него сообщения колесика.
Posted: 02.05.12 11:58. Post subject: Я сейчас глянул Volu..
Я сейчас глянул Volume Control. Там CallNextHookEx вызывается безусловно в самом начале обработчика хука. Такой подход позволяет сэкономить немного кода. Однако разработчик не учел, что структура MSG в этом типе хука гуляет между разными обработчиками в единственном экземпляре и может быть изменена любым из них. Ему бы сделать себе локальную копию этой структуры, а потом уж вызывать CallNextHookEx. Но он этого не сделал. Так что можно считать это багом Volume Control. Но ты молодец, что не перевел стрелки на Volume Control, а решил проблему со своей стороны, одобряю .
Post №: 6058
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 02.05.12 12:07. Post subject: GrelVl пишет: Я сей..
GrelVl пишет:
quote:
Я сейчас глянул Volume Control. Там CallNextHookEx вызывается безусловно в самом начале обработчика хука. Такой подход позволяет сэкономить немного кода. Однако разработчик не учел, что структура MSG в этом типе хука гуляет между разными обработчиками в единственном экземпляре и может быть изменена любым из них. Ему бы сделать себе локальную копию этой структуры, а потом уж вызывать CallNextHookEx. Но он этого не сделал. Так что можно считать это багом Volume Control. Но ты молодец, что не перевел стрелки на Volume Control, а решил проблему со своей стороны, одобряю
Ну дык профит-то ба-а-а-альшой....
1) Волум будет работать - а ереси такой много написано: вроде часиков всяких и прочия. Много чего может в трее работать с колесиком. Так что сразу на корню решил проблему (в первом приближении)
2) А вот во втором приближении можно словить знатный фидбек. Поскольку трей пропускается весь, то рано или поздно можно получить какую-нить интересную мессагу что Хантер что-то не крутит в трее.... Очень хотелось бы взглянуть на софт, который умеет в трее создавать что-нибудь крутабельное. Технически проблем нет: права+инжект+добрались до окна трея - понеслась радимая: и давай там всякие Edit`ы распихивать...
Я все это к чему: оно вроде как и ни к чему. Но сама идея абсолютно новая и неожиданная. Возможность что-то написать в трее пользователю. Оно вроде как ни к чему, но тем не менее, может попасться красивая мысль - ну я не знаю в принципе... Ну например командная строка та же, эдакое вечно висящая команда "Выполнить"? Ну чем не рулез для каких нить сисадминов (если конечно до ума довести, ясное дело юзкейз там прорабатывать надо). В общем это я так - фантазии всякие.
Post №: 6122
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 17.08.12 22:30. Post subject: fikus пишет: Чтоб н..
fikus пишет:
quote:
Чтоб не давить ни контролов, ни шифтов, ни кнопок мыши. А просто навёл на горизонтальную полосу, крутнул колесо, оно и прокрутило по горизонтали.
Сделал. Пробуем версию 1.50 с сайта. На всём подряд не тестил, но вроде как нормально реагирует на колесико именно над вертикальными и горизонтальными прокрутками (без шифтов и прочего, это только для клиентской области).
Posted: 12.09.12 16:55. Post subject: Carc пишет: Пробуем..
Carc пишет:
quote:
Пробуем версию 1.50 с сайта. На всём подряд не тестил, но вроде как нормально реагирует на колесико именно над вертикальными и горизонтальными прокрутками (без шифтов и прочего, это только для клиентской области).
Posted: 18.08.12 12:40. Post subject: Хм. У меня не получа..
Хм. У меня не получается. Может, криво рассказал чего хочу? Хочу, чтоб поведение проги было таким, как изначально. Кроме одного случая: если мышиный курсор оказывается над горизонтальным скролбаром, то чтоб скроллинг был по горизонтали при вращении колёсика. Правда, это уже фляцики, я понимаю. То, как она щас работает, очень сильно облегчает жизнь и сохраняет нервы. Без воплощения моего пожелания можно легко обойтись.
Post №: 6124
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 25.08.12 07:59. Post subject: fikus пишет: Хм. У ..
fikus пишет:
quote:
Хм. У меня не получается. Может, криво рассказал чего хочу? Хочу, чтоб поведение проги было таким, как изначально. Кроме одного случая: если мышиный курсор оказывается над горизонтальным скролбаром, то чтоб скроллинг был по горизонтали при вращении колёсика. Правда, это уже фляцики, я понимаю. То, как она щас работает, очень сильно облегчает жизнь и сохраняет нервы. Без воплощения моего пожелания можно легко обойтись.
Не получается в какой именно программе? Я тестил на The Bat - отлично работает.
Posted: 26.08.12 14:07. Post subject: Carc пишет: Не полу..
Carc пишет:
quote:
Не получается в какой именно программе? Я тестил на The Bat - отлично работает.
попробовал на win7 akelpad - работает, но не совсем так, как ожидается по логике. т.е. одна прокрутка колесика отправляет в самый конец или в самое начало горизонтальной прокрутки. shift+колесико работает нориально - т.е. двигает прокрутку плавно по "чуть-чуть".
Post №: 6132
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 13.09.12 16:45. Post subject: DrakonHaSh пишет: п..
DrakonHaSh пишет:
quote:
попробовал на win7 akelpad - работает, но не совсем так, как ожидается по логике. т.е. одна прокрутка колесика отправляет в самый конец или в самое начало горизонтальной прокрутки. shift+колесико работает нориально - т.е. двигает прокрутку плавно по "чуть-чуть".
А там вообще говоря несколько другая логика работы на самом деле, когда обнаруживает что колесико скроллится на скроллбаре, и работает Mouse Hunter в этом случае уже непосредственно со скроллбаром окна, а не с самим окном... Отсюда и разница.
Posted: 12.09.12 16:56. Post subject: Carc пишет: Пробуем..
Carc пишет:
quote:
Пробуем версию 1.50 с сайта. На всём подряд не тестил, но вроде как нормально реагирует на колесико именно над вертикальными и горизонтальными прокрутками (без шифтов и прочего, это только для клиентской области).
Posted: 05.01.13 20:40. Post subject: 4-й пункт (вести фай..
4-й пункт (вести файл журнала) работает наоборот. Если отмечено - не ведёт (файлы не появляются), если не отмечен - появляются. 3-й пункт называется "Запускать .... вместе с Windows" (так же, как и пункт первый), а на самом деле запускает в отключенном состоянии.
Post №: 6358
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 05.01.13 23:19. Post subject: fikus пишет: 4-й пу..
fikus пишет:
quote:
4-й пункт (вести файл журнала) работает наоборот. Если отмечено - не ведёт (файлы не появляются), если не отмечен - появляются. 3-й пункт называется "Запускать .... вместе с Windows" (так же, как и пункт первый), а на самом деле запускает в отключенном состоянии.
О как... Спасибо! Проверю, давненько настройки не переделывал - может что-то случайно напутал с идентификаторами.
Posted: 09.01.13 11:39. Post subject: Microsoft Windows Vi..
Microsoft Windows Vista Home Premium 32 English HP Pavilion a6230.is Desktop PC Keyboard & Mouse Logitech Wireless Combo MK520
Во-первых, очень полезная штукаб сохраняет нервную систему (Microsoft делает всё возможное чтобы ей навредить, как извесно ...)
Не сильно мешает, но факт. Описанное было и в прошлой версии 1.5.3.124 Сегодня установил 1.61 - не помогло.
Ситуация: Outlook 2007, открыть 2 письма так, что они перекрываются частично или не перекрывают друг друга. Крутить колёсико мышки в одном, затем перейти к другому и покрутить. Outlook и письма зависнут - то есть не закрыть, ни двинуть. Если удасться нажать на закрытие ("Х") одного из писем - при этом ничего не изменится, а затем нажать на Mouse Hunter на трее, это письмо закоется и всё пойдёт путём.
Повторяю, когда знаешь - не мешает. Можно и без этого. Но факт, что баг :-(
Post №: 6374
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 10.01.13 14:38. Post subject: karu116 пишет: Ситу..
karu116 пишет:
quote:
Ситуация: Outlook 2007, открыть 2 письма так, что они перекрываются частично или не перекрывают друг друга. Крутить колёсико мышки в одном, затем перейти к другому и покрутить. Outlook и письма зависнут - то есть не закрыть, ни двинуть. Если удасться нажать на закрытие ("Х") одного из писем - при этом ничего не изменится, а затем нажать на Mouse Hunter на трее, это письмо закоется и всё пойдёт путём.
Posted: 31.03.13 17:44. Post subject: Спасибо за вашу про..
Спасибо за вашу программу, я считаю, что она замечательная. Отлично работает на Windows 7 32bit, но недавно я решил проверить на Windows 8 64bit и было обнаружено, что там скролл или не работает или работает через раз, в общем, есть "проблемы". Здесь уже писали про поддержку 64bit, а вот про поддержку новейшей операционной системы Windows 8 какие новости\планы?
Post №: 6685
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 01.04.13 12:43. Post subject: EdwardNigma пишет: ..
EdwardNigma пишет:
quote:
Спасибо за вашу программу, я считаю, что она замечательная. Отлично работает на Windows 7 32bit, но недавно я решил проверить на Windows 8 64bit и было обнаружено, что там скролл или не работает или работает через раз, в общем, есть "проблемы". Здесь уже писали про поддержку 64bit, а вот про поддержку новейшей операционной системы Windows 8 какие новости\планы?
А чего там поддерживать? Должна из коробки по идее работать....
Post №: 6708
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 02.04.13 15:17. Post subject: EdwardNigma пишет: ..
EdwardNigma пишет:
quote:
Сейчас тестирую на Цштвщцы 8 64ише, 32bit пока не проверял
Та на 32-битной должна бы работать - с чего бы нет? А под 64 проверять надо. С одной стороны по идее там практически независимое ядро от битности. Но с другой стороны Win64 не любит запущать такого рода 32-битные программы.
А чем пересобрать 64-битную версию непонятки полные. C MS-овскими компиляторами лицензия вроде как не позволяет. А то что у меня есть лицензионное - это именно 32-битные компиляторы. Надо ковырять какой-нить MinGW, GCC и иже с ними. Да все руки не доходят.
Post №: 7010
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 30.06.13 23:44. Post subject: DenisSMI пишет: Наж..
DenisSMI пишет:
quote:
Нажать колесико и крутить его в нажатом состоянии
Это и так есть из коробки в Windows - только там используется вертикальная прокрутка. Ну и только что перемещение при нажатом колесике, а не "крутить" (или уж крутить, или уж нажато - одно из двух).
Post №: 1723
Joined: 16.04.10
Location: Cеверная столица
Rank:
0
Posted: 01.07.13 14:35. Post subject: Carc пишет: Это и т..
Carc пишет:
quote:
Это и так есть из коробки в Windows - только там используется вертикальная прокрутка. Ну и только что перемещение при нажатом колесике, а не "крутить" (или уж крутить, или уж нажато - одно из двух).
Post №: 7475
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 18.05.14 09:20. Post subject: EdwardNigma пишет: ..
EdwardNigma пишет:
quote:
Давай, Гош, будь мужиком, сделай это!
Компилер надо искать, хоть тот же MinGW какой нить - ставить, разбираться. Там с ядром то работы минуты на 3, да все некогда - мощный Features Release в Aml Pages, Мапля, ТвинкиПасте доработки требует...
Post №: 7520
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 11.06.14 12:07. Post subject: EdwardNigma пишет: ..
EdwardNigma пишет:
quote:
Давай, Гош, будь мужиком, сделай это!
Да я то чо! Я ниччо! (ц)
Компилер мне дайте 64-битный. Хоть поделочный - и все готово. Там только DLL собрать надо. И только. Агентный модуль можно с нуля минут за двадцать написать, а можно и просто саму винду заставить все делать через RunDLL.
Posted: 13.10.14 11:06. Post subject: Че та, так и нету 64..
Че та, так и нету 64 разрядной версии. Я нашол, как замену, такую программку http://ehiti.de/katmouse/ Проверил, win7x64 все работает. У всех уже 64 битные версии ОС, а такие маленькие полезные программы не работают как надо и это огорчает.
Post №: 7800
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 13.10.14 12:59. Post subject: EdwardNigma пишет: ..
EdwardNigma пишет:
quote:
Че та, так и нету 64 разрядной версии. Я нашол, как замену, такую программку http://ehiti.de/katmouse/ Проверил, win7x64 все работает. У всех уже 64 битные версии ОС, а такие маленькие полезные программы не работают как надо и это огорчает.
Да надо бы скомпилять, нашел я тут чего то 64-битное.... С DLL заморочек быть не должно, а вот с клиентским exe наверняка будут проблемы. Он же на WTL был написан. Ну а настройки и вовсе не нужно переделывать - они только для красоты, там все в порядке будет работать и из-под 32-битной версии.
Post №: 7912
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 18.11.14 13:24. Post subject: EdwardNigma пишет: ..
EdwardNigma пишет:
quote:
Че та, так и нету 64 разрядной версии.
Ну ядро я пересобрал уже в 64-битном варианте. Вроде все нормалек.
Управление настройками можно и вовсе не трогать. Оно к самому функционалу вообще мало отношения имеет... В смысле модная библиотека, проба сил, куча галочек и все тут. Модуль настроек их редактирует, клиент тупо считывает и применяет их. Никакого взаимодействия по сути.
А до клиента (MHAgent.exe) у меня пока все руки не доходят. Но кагбэ на досуге я постараюсь написать...
Вопрос: можете ли вы в будущих версиях "mouse hunter" сделать возможность ремапить "кнопки скролла" Logitech M500 (или любые другие HID-кнопки) на горизонтальный скролл ?
Post №: 8410
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 16.11.15 17:22. Post subject: usr-nd пишет: Вопро..
usr-nd пишет:
quote:
Вопрос: можете ли вы в будущих версиях "mouse hunter" сделать возможность ремапить "кнопки скролла" Logitech M500 (или любые другие HID-кнопки) на горизонтальный скролл ?
В настройках есть ремап кнопок при всяких Ctrl, Shift и иже с ними.
Posted: 20.11.15 09:17. Post subject: Carc пишет: есть ре..
quote:
Именно.
А по умолчанию что кнопачки делают? Как на них разный софт реагирует? Что делает? Скроллит? Или что то иное? Весь софт более менее одинаково реагирует, или каждый по своему вплоть до "не реагирует"?
Posted: 20.11.15 09:32. Post subject: А по умолчанию что к..
quote:
А по умолчанию что кнопачки делают? Как на них разный софт реагирует? Что делает? Скроллит? Или что то иное? Весь софт более менее одинаково реагирует, или каждый по своему вплоть до "не реагирует"?
Я не видел чтобы хоть какой-то софт хоть как-то реагировал на их нажатие.
Posted: 20.11.15 09:30. Post subject: Попробую ещё раз объ..
Попробую ещё раз объяснить о чём речь. На другой мышке (Logitech M305) также (по бокам скролла) присутствуют дополнительные кнопки скрола.
Status Virtual Scan Flag Time ExtraInfo
left scroll button (down &hold) HID_KEY: 0000000028000000270275870000000000000000000888FF00000000000000000000000000000000 left scroll button (release) HID_KEY: 00000000280000002702758700000000000000000000000000000000000000000000000000000000
right scroll button (down &hold) HID_KEY: 00000000280000002702758700000000000000000008780000000000000000000000000000000000 right scroll button (release) HID_KEY: 00000000280000002702758700000000000000000000000000000000000000000000000000000000
При нажатии в браузере "колеса слево" (left scroll button) в браузере ничего не происходит. Мне же хочется чтобы осуществлялся возврат на предыдущую страницу (ну или хотя бы горизонтально скроллить, что сейчас реализовано в программе, по при других условиях).
Вопрос: возможно ли вы в будущих версиях "mouse hunter" сделать возможность ремапить "кнопки скролла" (или любые другие HID-кнопки) на горизонтальный скролл (или кнопку "назад") ?
Post №: 8424
Joined: 28.05.05
Location: Россия, Москва
Rank:
2
Posted: 20.11.15 09:48. Post subject: usr-nd пишет: Вопро..
usr-nd пишет:
quote:
Вопрос: возможно ли вы в будущих версиях "mouse hunter" сделать возможность ремапить "кнопки скролла" (или любые другие HID-кнопки) на горизонтальный скролл (или кнопку "назад") ?
Ну можно попробовать... Почему нет. Поэмсдэнил тут малехо - есть вроде как интерфейсы для обработки HID`ов от устройства. Только тут тестирования понадобится мама не горюй. У меня ж такого мыша нету - сам проверить не смогу.
А в настройках мыша, в самой винде ничего нету на эту тему? Я бы посмотрел там. Там могут быть настройки, как реагировать на эти кнопки.
Вернее не совсем так. Под капотом там должно быть нечто такое, что транслирует эти события по HID`кнопкам в нечто более обобщенное. Которое виндовый софт в массе уже умеет обрабатывать. Нету там такого?
PS: Mouse Hunter по сути то именно это и делает, ловит события мышов в одном месте и перенаправляет в другое. Ну плюс в зависимости от настроек может кое-чего и поменять.
All times are GMT
3 Hours. Hits today: 1
You can: smiles yes, images yes, types yes, poll no
avatars yes, links on, premoderation off, edit new post no