Тестировщик конечно из меня вышел не очень профессиональный.
Прошляпал базовую проверку, программа не ругалась если вводили неверный код регистрации, просто никак не реагировала, классическое «сам догадайся почему я обиделась». 🤭
В этой версии всего одно изменение:
(исправление) Не выводилось окно с ошибкой в случае неправильного кода регистрации
Зато отличный повод попробовать автоматическое применение настроек и регистрацию.
https://khsoft.ru/download/test/LayoutIndicator.v2.6.5.test.zip
Прошляпал базовую проверку, программа не ругалась если вводили неверный код регистрации, просто никак не реагировала, классическое «сам догадайся почему я обиделась». 🤭
В этой версии всего одно изменение:
(исправление) Не выводилось окно с ошибкой в случае неправильного кода регистрации
Зато отличный повод попробовать автоматическое применение настроек и регистрацию.
https://khsoft.ru/download/test/LayoutIndicator.v2.6.5.test.zip
👍2
Ненадолго выполз из под завала рабочих задач.
Позанимался индикатором. Накопились багули, победил три штуки:
1. Снижена нагрузка на процессор при проверке раскладки по таймеру
Ошибка появлялась с включенным способом проверки раскладки «по таймеру», низкой задержкой и большой нагрузкой на компьютер от других задач. Пару дней посидел с опросом в 10мс, поймал её пару раз.
2. Не выводим экранный индикатор-прямоугольник если он чёрного цвета
Это особый режим экранной индикации, он позволяет покрасить хоть весь экран в прозрачную дымку цвета раскладки. Давно про него никто не вспоминал, оказалось там поломалось игнорирование чёрного цвета, из-за чего нельзя было сделать так, чтобы для определённых раскладок он не отображался.
3. Интерфейс не переводился на английский язык при запуске, если он был выбран как основной
У меня пока всего один активный англоязычный пользователь, а я так невежливо с ним поступил)
Человеку приходилось каждый раз менять язык интерфейса туда-обратно, чтобы появился английский язык.
Как всегда ссылка на тестовую сборку. Спасибо всем кто тестирует!
https://khsoft.ru/download/test/LayoutIndicator.v2.6.7.test.zip
Позанимался индикатором. Накопились багули, победил три штуки:
1. Снижена нагрузка на процессор при проверке раскладки по таймеру
Ошибка появлялась с включенным способом проверки раскладки «по таймеру», низкой задержкой и большой нагрузкой на компьютер от других задач. Пару дней посидел с опросом в 10мс, поймал её пару раз.
2. Не выводим экранный индикатор-прямоугольник если он чёрного цвета
Это особый режим экранной индикации, он позволяет покрасить хоть весь экран в прозрачную дымку цвета раскладки. Давно про него никто не вспоминал, оказалось там поломалось игнорирование чёрного цвета, из-за чего нельзя было сделать так, чтобы для определённых раскладок он не отображался.
3. Интерфейс не переводился на английский язык при запуске, если он был выбран как основной
У меня пока всего один активный англоязычный пользователь, а я так невежливо с ним поступил)
Человеку приходилось каждый раз менять язык интерфейса туда-обратно, чтобы появился английский язык.
Как всегда ссылка на тестовую сборку. Спасибо всем кто тестирует!
https://khsoft.ru/download/test/LayoutIndicator.v2.6.7.test.zip
👍3
Разбирая подробное письмо об ошибке (с видеозаписью за что отдельная благодарность),
обнаружил, что индикатор совсем не учитывает дополнительные экраны без панели задач.
Если кто не работал с несколькими мониторами или не обращал внимания, то знайте, на дополнительный экран, в виндовс, можно выводить панель задач, а можно и не выводить.
Второй вариант я никогда не использовал, поэтому завязал количество экранных индикаторов на количество панелей задач.
И когда экранов оказалось больше чем панелей, случилась ошибка.
В этой версии сделал первый подход к решению, на виртуальной машине всё заработало.
Но об окончательной победе можно будет сказать после проверки у пользователя.
https://khsoft.ru/download/test/LayoutIndicator.v2.6.8.test.zip
обнаружил, что индикатор совсем не учитывает дополнительные экраны без панели задач.
Если кто не работал с несколькими мониторами или не обращал внимания, то знайте, на дополнительный экран, в виндовс, можно выводить панель задач, а можно и не выводить.
Второй вариант я никогда не использовал, поэтому завязал количество экранных индикаторов на количество панелей задач.
И когда экранов оказалось больше чем панелей, случилась ошибка.
В этой версии сделал первый подход к решению, на виртуальной машине всё заработало.
Но об окончательной победе можно будет сказать после проверки у пользователя.
https://khsoft.ru/download/test/LayoutIndicator.v2.6.8.test.zip
👍3
Это были два дня полные жёсткого программерского отрыва.)
Разбирая лог файл с багом, вышел на целую жилу улучшений. Провёл стресс-тест программы. Основной упор пришёлся на производительность и снижение нагрузки. Программа стала мега-отзывчивой и быстрой: при запуске, открытии настроек и в рабочем режиме. А у процессора теперь появится больше ресурсов на другие задачи.
Плюс новое поведение индикатора каретки: исчезает при переключении между приложениями — оказалось очень удобным.
При таком количестве правок, ошибки неизбежны, но оно того стоит.)
Всех желающих приглашаю попробовать тестовую версию со мной.
Полный список изменений:
• (исправление) Уменьшена нагрузка на процессор при изменении настроек
• (исправление) Устранена ошибка, приводящая к краху приложения
• (исправление) Убрано небольшое зависание при повторном открытии окна настроек
• (исправление) При переключении языка интерфейса не переводилось описание событий проверки раскладки
• (исправление) Снижена нагрузка на систему при запуске программы
• (исправление) Снижена нагрузка на процессор при нахождении в приложении, у которого невозможно вычислить координаты каретки
• (исправление) Снижена нагрузка на процессор при штатной работе программы
• (исправление) Увеличена скорость реакции индикаторов на смену раскладки
• Индикатор каретки теперь исчезает со старого места, при переключении на другое приложение
• Убрана настройка частоты обновления индикатора каретки. Она вычисляется автоматически, оптимальным способом
https://khsoft.ru/download/test/LayoutIndicator.v2.6.9.test.zip
Разбирая лог файл с багом, вышел на целую жилу улучшений. Провёл стресс-тест программы. Основной упор пришёлся на производительность и снижение нагрузки. Программа стала мега-отзывчивой и быстрой: при запуске, открытии настроек и в рабочем режиме. А у процессора теперь появится больше ресурсов на другие задачи.
Плюс новое поведение индикатора каретки: исчезает при переключении между приложениями — оказалось очень удобным.
При таком количестве правок, ошибки неизбежны, но оно того стоит.)
Всех желающих приглашаю попробовать тестовую версию со мной.
Полный список изменений:
• (исправление) Уменьшена нагрузка на процессор при изменении настроек
• (исправление) Устранена ошибка, приводящая к краху приложения
• (исправление) Убрано небольшое зависание при повторном открытии окна настроек
• (исправление) При переключении языка интерфейса не переводилось описание событий проверки раскладки
• (исправление) Снижена нагрузка на систему при запуске программы
• (исправление) Снижена нагрузка на процессор при нахождении в приложении, у которого невозможно вычислить координаты каретки
• (исправление) Снижена нагрузка на процессор при штатной работе программы
• (исправление) Увеличена скорость реакции индикаторов на смену раскладки
• Индикатор каретки теперь исчезает со старого места, при переключении на другое приложение
• Убрана настройка частоты обновления индикатора каретки. Она вычисляется автоматически, оптимальным способом
https://khsoft.ru/download/test/LayoutIndicator.v2.6.9.test.zip
👍7
Разгребая ваши ошибки в виндовс 11 (всем ещё раз большое спасибо за логи, скрины и видео), обнаружил, что в нём, перестало работать определение раскладки по системному индикатору языка.
А приложений, которые не позволяют определять их язык обычным способом, в разы больше чем в десятке. Даже родной блокнот с поддержкой вкладок не говорит свой язык при обращении через документированный вызов апи.
Это всё конечно от того, что я как старый луддит, до сих пор сижу на десятке.
Но так не могло продолжаться. Сначала долго изучал новую структуру панели задач, искал причину поломки старого способа. Оказалось, он перестал работать в принципе. Видимо, что-то основательно переписали в самом индикаторе языка. Начал искать другие способы, нашёл работающий, и за пару раундов смог выцарапать из недр таскбара название текущей раскладки.
Чтобы в будущем такие изменения оперативно учитывались, написал библиотеку, которая строит дерево всех элементов виндовс тремя разными технологиями.
Начиная с этой версии, при первом запуске, программа пробует поставить системный индикатор языка в качестве основного источника информации. Если не получается, в каталоге создаётся файл UITreeList.txt в котором лежит структура всех элементов, всех работающих приложений.
С этим файлом, разобраться что поменяли и подстроиться будет гораздо легче. Он просто лежит, никуда не передаётся, отправлять можно будет только по желанию.
В следующей версии, возьмусь за ошибку определения языка, когда в системе есть несколько раскладок для одного и того же языка. Оказалось это довольно частая история.
По традиции делюсь тестовой сборкой.
Список изменений:
• (исправление) В виндовс 11, язык не определялся по системному индикатору
• При первом запуске, программа пробует включить в качестве источника определения раскладки, системный индикатор языка
• Если найти системный индикатор языка не удалось, в директории с программой, создаётся файл «UITreeList.txt» со всеми элементами рабочего стола виндовс. Это нужно для последующей диагностики и исправления.
https://khsoft.ru/download/test/LayoutIndicator.v2.7.0.test.zip
А приложений, которые не позволяют определять их язык обычным способом, в разы больше чем в десятке. Даже родной блокнот с поддержкой вкладок не говорит свой язык при обращении через документированный вызов апи.
Это всё конечно от того, что я как старый луддит, до сих пор сижу на десятке.
Но так не могло продолжаться. Сначала долго изучал новую структуру панели задач, искал причину поломки старого способа. Оказалось, он перестал работать в принципе. Видимо, что-то основательно переписали в самом индикаторе языка. Начал искать другие способы, нашёл работающий, и за пару раундов смог выцарапать из недр таскбара название текущей раскладки.
Чтобы в будущем такие изменения оперативно учитывались, написал библиотеку, которая строит дерево всех элементов виндовс тремя разными технологиями.
Начиная с этой версии, при первом запуске, программа пробует поставить системный индикатор языка в качестве основного источника информации. Если не получается, в каталоге создаётся файл UITreeList.txt в котором лежит структура всех элементов, всех работающих приложений.
С этим файлом, разобраться что поменяли и подстроиться будет гораздо легче. Он просто лежит, никуда не передаётся, отправлять можно будет только по желанию.
В следующей версии, возьмусь за ошибку определения языка, когда в системе есть несколько раскладок для одного и того же языка. Оказалось это довольно частая история.
По традиции делюсь тестовой сборкой.
Список изменений:
• (исправление) В виндовс 11, язык не определялся по системному индикатору
• При первом запуске, программа пробует включить в качестве источника определения раскладки, системный индикатор языка
• Если найти системный индикатор языка не удалось, в директории с программой, создаётся файл «UITreeList.txt» со всеми элементами рабочего стола виндовс. Это нужно для последующей диагностики и исправления.
https://khsoft.ru/download/test/LayoutIndicator.v2.7.0.test.zip
👍2🔥1
Доработал получение раскладки по системному индикатору в виндовс 11.
Судя по логам, разработчики майкрософта на бешенном креативе переставляют его туда-сюда во внутренней иерархии объектов, в каждой версии. Так что мне предстоит узнать все места, где он может скрываться. Надеюсь, строители структуры элементов помогут.
Попутно прибил пару незначительных багов.
Внезапно обнаружил, что настройки из файла, сделанного в виндовс 10, не подтягиваются
в 11й, и наоборот. Оказалось, строка хранения шрифта немного отличается. Точки с запятой заменили на запятые, а точку дробной части размера, на запятую. Чисто чтобы не расслаблялись.))
Список изменений:
* (исправление) В виндовс 11 панель задач больше не красится в чёрный при выходе, если была использована настройка Аэро
* (исправление) Настройки шрифтов индикаторов не загружались в виндовс 11, если файл настроек было сделан в виндовс 10
* (исправление) При отключении проверки раскладки по клавишам модификаторам автоматически включалась настройка по системному индикатору
* (исправление) На некоторых компьютерах, возникала ошибка при определении раскладки по системному индикатору в виндовс 11
* (исправление) При изменении настроек экранного индикатора типа «надпись», он не перерисовывался
https://khsoft.ru/download/test/LayoutIndicator.v2.7.1.test.zip
Судя по логам, разработчики майкрософта на бешенном креативе переставляют его туда-сюда во внутренней иерархии объектов, в каждой версии. Так что мне предстоит узнать все места, где он может скрываться. Надеюсь, строители структуры элементов помогут.
Попутно прибил пару незначительных багов.
Внезапно обнаружил, что настройки из файла, сделанного в виндовс 10, не подтягиваются
в 11й, и наоборот. Оказалось, строка хранения шрифта немного отличается. Точки с запятой заменили на запятые, а точку дробной части размера, на запятую. Чисто чтобы не расслаблялись.))
w10: "screenLabelFont": {"Font": "Microsoft Sans Serif; 171,75pt; style=Bold"},
w11: "screenLabelFont": {"Font": "Microsoft Sans Serif, 171.75pt, style=Bold"},Список изменений:
* (исправление) В виндовс 11 панель задач больше не красится в чёрный при выходе, если была использована настройка Аэро
* (исправление) Настройки шрифтов индикаторов не загружались в виндовс 11, если файл настроек было сделан в виндовс 10
* (исправление) При отключении проверки раскладки по клавишам модификаторам автоматически включалась настройка по системному индикатору
* (исправление) На некоторых компьютерах, возникала ошибка при определении раскладки по системному индикатору в виндовс 11
* (исправление) При изменении настроек экранного индикатора типа «надпись», он не перерисовывался
https://khsoft.ru/download/test/LayoutIndicator.v2.7.1.test.zip
❤1
Немного исправленных багов перед добавлением поддержки разных раскладок для одного языка.
Случилось эпохальное событие в истории индикатора — побеждена ошибка с выходом из программы). Казалось бы, такое простое действие, но я регулярно ловил жуткие фризы всей системы, при закрытии.
Единственное, что убивало наповал без этих ужасных зависаний, это выполнение taskkill с именем exe-файла. Мега-костыль конечно). Проблема скрывалась в последнем скидывании записей в лог-файл, перед выходом.Стоило убрать его в параллельный запуск, как ошибка ушла, а выходить теперь можно без танцев с бубном.
Так же порадовала багуля с индикатором надписью, её не то, что исправлять, даже формулировать тяжело) (см. список исправлений)
Ну и проще всего далось исправление неверного положения экранных индикаторов, если экраны в виндовс расположены вертикально.
А меж тем, с последнего релиза, накопилось 38 исправлений и дополнений. Пора выходить на стабилизацию и новый релиз. Надеюсь, получится это сделать после фичи с разными раскладками и исправления нескольких багов.
https://khsoft.ru/download/test/LayoutIndicator.v2.7.2.test.zip
Список изменений:
• (исправление) Закрытие программы теперь происходит быстрее и потребляет меньше ресурсов
• (исправление) При загрузке настроек с отключенными флагами, индикатор каретки не менялся на текстовый
• (исправление) При отключенной индикации для мыши, но включенной для каретки, индикатор не показывался до вызова настроек, если при этом были выключены флаги
• (исправление) Неверно отображались экранные индикаторы если экраны располагались вертикально
Случилось эпохальное событие в истории индикатора — побеждена ошибка с выходом из программы). Казалось бы, такое простое действие, но я регулярно ловил жуткие фризы всей системы, при закрытии.
Единственное, что убивало наповал без этих ужасных зависаний, это выполнение taskkill с именем exe-файла. Мега-костыль конечно). Проблема скрывалась в последнем скидывании записей в лог-файл, перед выходом.Стоило убрать его в параллельный запуск, как ошибка ушла, а выходить теперь можно без танцев с бубном.
Так же порадовала багуля с индикатором надписью, её не то, что исправлять, даже формулировать тяжело) (см. список исправлений)
Ну и проще всего далось исправление неверного положения экранных индикаторов, если экраны в виндовс расположены вертикально.
А меж тем, с последнего релиза, накопилось 38 исправлений и дополнений. Пора выходить на стабилизацию и новый релиз. Надеюсь, получится это сделать после фичи с разными раскладками и исправления нескольких багов.
https://khsoft.ru/download/test/LayoutIndicator.v2.7.2.test.zip
Список изменений:
• (исправление) Закрытие программы теперь происходит быстрее и потребляет меньше ресурсов
• (исправление) При загрузке настроек с отключенными флагами, индикатор каретки не менялся на текстовый
• (исправление) При отключенной индикации для мыши, но включенной для каретки, индикатор не показывался до вызова настроек, если при этом были выключены флаги
• (исправление) Неверно отображались экранные индикаторы если экраны располагались вертикально
👍8
Длинные выходные помогли добраться до Индикатора.
Мой ограничитель частоты запусков, который я написал, чтобы не разгребать путаницу с зависимостями настроек, привёл к такой неочевидной багуле, что пришлось много часов вдумчиво смотреть на код. Благо, что по пути многое привёл в порядок.
Видимо, жизнь меня ничему не учит, потому что я пристроил его, с небольшими доработками, на ограничение запусков проверки раскладки, при нажатии клавиш.
На каждое нажатие запускается проверка, т.к. хоткеев на переключение языка бесконечное множество, если учитывать разного рода экзотику. Теперь с какой бы частотой не нажимались клавиши, поток проверки будет ограничен. Процессора, а следовательно и батареи ноутбука, теперь тратиться меньше.
Виндовс 11 удивила разной структурой системного индикатора в русской и английских версиях. Казалось бы, ставишь русский язык на английскую версию и не отличить, а вот нет, системный индикатор с другими классами элементов.
При простое, пропадала краска панели задач, если использовалось Aero, поставил дополнительного сторожа, будет красить дополнительно в таких конфигурациях, за одно проследит, чтобы все индикаторы принимали одинаковое значение, а то реакция на события может сильно растянуться во времени, зависит от ресурсов. Поэтому кликнули сейчас, а язык поменялся через секунду. Кстати, переключение на первый язык системы происходит быстрее чем на второй, если переключать кликом по встроенному индикатору)
Ну и самое главное! Тестовая поддержка нескольких раскладок с одним языком, при определении через системный индикатор. Давно хотел добавить. Ниже будет скрин, в названии языка теперь есть раскладка, чтобы отличать.
Спасибо всем, кто тестирует и присылает ошибки!
Список изменений:
* Доработка проверки раскладки по системному индикатору в виндовс 11
* Снижение нагрузки на процессор, при проверке по нажатию клавиш или ключевым событиям
* Повышена надёжность определения текущей раскладки
* Добавлена поддержка нескольких раскладок для одного языка
* Индикатор каретки теперь исчезает при перемещении окон
* (исправление) Некорректная работа при включении/отключении индикации флагами
* (исправление) При использовании настройки Aero, панель задач теряла цвет если компьютер долго находился в бездействии или она меняла размер
https://khsoft.ru/download/test/LayoutIndicator.v2.7.5.test.zip
Мой ограничитель частоты запусков, который я написал, чтобы не разгребать путаницу с зависимостями настроек, привёл к такой неочевидной багуле, что пришлось много часов вдумчиво смотреть на код. Благо, что по пути многое привёл в порядок.
Видимо, жизнь меня ничему не учит, потому что я пристроил его, с небольшими доработками, на ограничение запусков проверки раскладки, при нажатии клавиш.
На каждое нажатие запускается проверка, т.к. хоткеев на переключение языка бесконечное множество, если учитывать разного рода экзотику. Теперь с какой бы частотой не нажимались клавиши, поток проверки будет ограничен. Процессора, а следовательно и батареи ноутбука, теперь тратиться меньше.
Виндовс 11 удивила разной структурой системного индикатора в русской и английских версиях. Казалось бы, ставишь русский язык на английскую версию и не отличить, а вот нет, системный индикатор с другими классами элементов.
При простое, пропадала краска панели задач, если использовалось Aero, поставил дополнительного сторожа, будет красить дополнительно в таких конфигурациях, за одно проследит, чтобы все индикаторы принимали одинаковое значение, а то реакция на события может сильно растянуться во времени, зависит от ресурсов. Поэтому кликнули сейчас, а язык поменялся через секунду. Кстати, переключение на первый язык системы происходит быстрее чем на второй, если переключать кликом по встроенному индикатору)
Ну и самое главное! Тестовая поддержка нескольких раскладок с одним языком, при определении через системный индикатор. Давно хотел добавить. Ниже будет скрин, в названии языка теперь есть раскладка, чтобы отличать.
Спасибо всем, кто тестирует и присылает ошибки!
Список изменений:
* Доработка проверки раскладки по системному индикатору в виндовс 11
* Снижение нагрузки на процессор, при проверке по нажатию клавиш или ключевым событиям
* Повышена надёжность определения текущей раскладки
* Добавлена поддержка нескольких раскладок для одного языка
* Индикатор каретки теперь исчезает при перемещении окон
* (исправление) Некорректная работа при включении/отключении индикации флагами
* (исправление) При использовании настройки Aero, панель задач теряла цвет если компьютер долго находился в бездействии или она меняла размер
https://khsoft.ru/download/test/LayoutIndicator.v2.7.5.test.zip
👍3
В обсуждении зашла речь про скриншоты и индикаторы на них. Сам регулярно сталкиваюсь с этой проблемой. Пару раз отсылал снимки с флагами в переписке.
Сделал первый подход к снаряду. Обрабатывать одиночные нажатия PrintScr смысла нет, снимок успевает попасть в буфер обмена, до того как сработает перехват нажатия.
А вот хоткеи в сочетании с ctrl или win можно обработать. Комбинация начинается с них и можно успеть всё спрятать.
Для этого, в расширенных настройках появилось две дополнительные опции.
Сам пользуюсь LigthShot и хоткеем ctrl + alt + c, всё скрывается. С настройкой для win, работает для встроенное shift + win + s
Если уходить с PrtScr совсем не хочется, можно включить настройки для win или ctrl и нажимать их перед снимком, как вариант.
Скрытие по PrtScr, на полторы секунды, я оставил включенным по умолчанию, если бахнуть два раза, второй раз будет уже без индикаторов.
Список изменений:
* Добавлены настройки для скрытия индикатора по нажатию клавиш win и ctrl. Нажатие PrnScr так же скрывает индикатор на 1,5 секунды
https://khsoft.ru/download/test/LayoutIndicator.v2.7.6.test.zip
Сделал первый подход к снаряду. Обрабатывать одиночные нажатия PrintScr смысла нет, снимок успевает попасть в буфер обмена, до того как сработает перехват нажатия.
А вот хоткеи в сочетании с ctrl или win можно обработать. Комбинация начинается с них и можно успеть всё спрятать.
Для этого, в расширенных настройках появилось две дополнительные опции.
Сам пользуюсь LigthShot и хоткеем ctrl + alt + c, всё скрывается. С настройкой для win, работает для встроенное shift + win + s
Если уходить с PrtScr совсем не хочется, можно включить настройки для win или ctrl и нажимать их перед снимком, как вариант.
Скрытие по PrtScr, на полторы секунды, я оставил включенным по умолчанию, если бахнуть два раза, второй раз будет уже без индикаторов.
Список изменений:
* Добавлены настройки для скрытия индикатора по нажатию клавиш win и ctrl. Нажатие PrnScr так же скрывает индикатор на 1,5 секунды
https://khsoft.ru/download/test/LayoutIndicator.v2.7.6.test.zip
👍4
После моей лихой оптимизации, время от времени, при первом запуске, не появлялся экранный индикатор. Расследование показало, что его замыкало от одновременного обновления в нескольких потоках. Под эту лавочку обратил на него пристальное внимание, ускорил и оптимизировал. Теперь должен вести себя стабильнее.
Прошлая багуля показала, что при загрузке формы настроек, когда все чек-боксы и бегунки получают свои значения, яростно вызывая обновления индикаторов, нельзя обновляться асинхронно. Поэтому первый запуск насиловал систему в холостую.
Я долго избегал этой муторной переработки, но в воскресенье собрался с силами и перебрал все настройки, теперь, при первом показе формы, индикаторы не дёргаются вообще. Оказалось, достаточно поставить проверку на изменение настроек, если ничего не поменяли, значит просто молча выставляем что есть. Жаль эта простая идея не пришла ко мне раньше.
Тестирование моего ограничителя частоты запусков дало свои плоды. Выяснилось, если пропускать запуски проверок, можно прохлопать изменение состояний клавиш-модификаторов. Так как я переключаюсь капсом, поймал эту багулю лично — капс горит, а индикатор показывает неверный язык. Исправляя ошибку, убрал проверку раскладки по нажатию любых клавиш-не-модификаторов, если включена настройка проверки по состоянию. А это значит, что в этом режиме, при наборе текста процессор вообще не напрягается, это ещё экономичнее, чем с моим ограничителем. Ресурсы тратятся только на перемещение индикатора каретки.
Кстати, о нём. Спасибо @serglight, подсказал, что при получении координат каретки, можно смотреть её ширину. Если она нулевая, то показывать индикатор не нужно, это значит курсор где-то в дебрях приложения и без фокуса. Поглядел как себя ведут эти значения, добавил проверки, теперь индикатор не показывается в некоторых приложения, где он висел в непонятных местах.
Давно не видел криво загруженного флага в индикаторах, раньше встречался время от времени. Пропал баг?
Дело близится к релизу...
Список изменений:
* (исправление) Иногда, экранный индикатор не показывался при запуске
* Оптимизирован вывода экранного индикатора
* На вкладке «Чёрный список» удалена кнопка «Новое». Добавление происходит по нажатию на «Сохранить»
* Уменьшена нагрузка на процессор при наборе текста, если включена настройка определения раскладки по состоянию клавиш
* Улучшен алгоритм индикатор каретки, стал меньше срабатывать там где не нужно
https://khsoft.ru/download/test/LayoutIndicator.v2.7.8.test.zip
Прошлая багуля показала, что при загрузке формы настроек, когда все чек-боксы и бегунки получают свои значения, яростно вызывая обновления индикаторов, нельзя обновляться асинхронно. Поэтому первый запуск насиловал систему в холостую.
Я долго избегал этой муторной переработки, но в воскресенье собрался с силами и перебрал все настройки, теперь, при первом показе формы, индикаторы не дёргаются вообще. Оказалось, достаточно поставить проверку на изменение настроек, если ничего не поменяли, значит просто молча выставляем что есть. Жаль эта простая идея не пришла ко мне раньше.
Тестирование моего ограничителя частоты запусков дало свои плоды. Выяснилось, если пропускать запуски проверок, можно прохлопать изменение состояний клавиш-модификаторов. Так как я переключаюсь капсом, поймал эту багулю лично — капс горит, а индикатор показывает неверный язык. Исправляя ошибку, убрал проверку раскладки по нажатию любых клавиш-не-модификаторов, если включена настройка проверки по состоянию. А это значит, что в этом режиме, при наборе текста процессор вообще не напрягается, это ещё экономичнее, чем с моим ограничителем. Ресурсы тратятся только на перемещение индикатора каретки.
Кстати, о нём. Спасибо @serglight, подсказал, что при получении координат каретки, можно смотреть её ширину. Если она нулевая, то показывать индикатор не нужно, это значит курсор где-то в дебрях приложения и без фокуса. Поглядел как себя ведут эти значения, добавил проверки, теперь индикатор не показывается в некоторых приложения, где он висел в непонятных местах.
Давно не видел криво загруженного флага в индикаторах, раньше встречался время от времени. Пропал баг?
Дело близится к релизу...
Список изменений:
* (исправление) Иногда, экранный индикатор не показывался при запуске
* Оптимизирован вывода экранного индикатора
* На вкладке «Чёрный список» удалена кнопка «Новое». Добавление происходит по нажатию на «Сохранить»
* Уменьшена нагрузка на процессор при наборе текста, если включена настройка определения раскладки по состоянию клавиш
* Улучшен алгоритм индикатор каретки, стал меньше срабатывать там где не нужно
https://khsoft.ru/download/test/LayoutIndicator.v2.7.8.test.zip
👍5
Подготовил версию к релизу. Выкладываю здесь для удобства, чтобы не нужно было ходить на сайт за обновлением.
Закрыл мелкие баги и разобрался с блоком выхода из виндовс. Совсем забыл, что заблокировал уничтожение формы настроек, чтобы она каждый раз не создавала заново все свои многочисленные элементы управления. Она-то и не давала системе спокойно завершиться. Сам бы я этот баг не нашёл никогда, т.к. перезагружаю компьютер примерно раз в год.)
Следующая новость — официальный релиз.
Список изменений:
* (исправление) Неверно считалось количество компьютеров на которых программа может работать одновременно. В стандартной лицензии их 2
* (исправление) Форма окончания пробного периода не переводилась на выбранный язык
* (исправление) Уменьшено «дребезжание» текстовой каретки при быстром наборе текста
* (исправление) Программа не давала завершить работу Виндовс, если до этого вызывалась форма настроек
https://khsoft.ru/download/test/LayoutIndicator.v2.7.9.test.zip
Закрыл мелкие баги и разобрался с блоком выхода из виндовс. Совсем забыл, что заблокировал уничтожение формы настроек, чтобы она каждый раз не создавала заново все свои многочисленные элементы управления. Она-то и не давала системе спокойно завершиться. Сам бы я этот баг не нашёл никогда, т.к. перезагружаю компьютер примерно раз в год.)
Следующая новость — официальный релиз.
Список изменений:
* (исправление) Неверно считалось количество компьютеров на которых программа может работать одновременно. В стандартной лицензии их 2
* (исправление) Форма окончания пробного периода не переводилась на выбранный язык
* (исправление) Уменьшено «дребезжание» текстовой каретки при быстром наборе текста
* (исправление) Программа не давала завершить работу Виндовс, если до этого вызывалась форма настроек
https://khsoft.ru/download/test/LayoutIndicator.v2.7.9.test.zip
👍2
Самый большой релиз за всю историю Индикатора раскладки! Версия 2.7.9
19 улучшений и 36 исправлений ошибок.
Что-то было переписано полностью, что-то приведено в порядок, проект стал более упорядоченным.
А значит более дружелюбным для добавления новых, крутых функций!
Не устаю говорить спасибо всем, кто присылал репорты. Писал, делал снимки экрана, записывал видео, делился советами и идеями. Без вас, программа бы не эволюционировала до матёрого приложения, готового к работе в самых разнообразных ситуациях.
Отдельное спасибо за покупки ключей и поддержку!
Все ключи регистрации работают в новой версии.
Наиболее значимые доработки:
* Добавлена поддержка нескольких раскладок для одного языка
* Улучшена проверка раскладки по системному индикатору в Виндовс 11
* Повышена надёжность определения текущей раскладки
* Оптимизирован вывод экранного индикатора
* Улучшен алгоритм индикатора каретки, стал меньше срабатывать там, где не нужно
Полное описание изменений: https://khsoft.ru/li/?action=li.change.log
Сайт программы: https://khsoft.ru/li/
19 улучшений и 36 исправлений ошибок.
Что-то было переписано полностью, что-то приведено в порядок, проект стал более упорядоченным.
А значит более дружелюбным для добавления новых, крутых функций!
Не устаю говорить спасибо всем, кто присылал репорты. Писал, делал снимки экрана, записывал видео, делился советами и идеями. Без вас, программа бы не эволюционировала до матёрого приложения, готового к работе в самых разнообразных ситуациях.
Отдельное спасибо за покупки ключей и поддержку!
Все ключи регистрации работают в новой версии.
Наиболее значимые доработки:
* Добавлена поддержка нескольких раскладок для одного языка
* Улучшена проверка раскладки по системному индикатору в Виндовс 11
* Повышена надёжность определения текущей раскладки
* Оптимизирован вывод экранного индикатора
* Улучшен алгоритм индикатора каретки, стал меньше срабатывать там, где не нужно
Полное описание изменений: https://khsoft.ru/li/?action=li.change.log
Сайт программы: https://khsoft.ru/li/
khsoft.ru
Индикатор раскладки (Layout Indicator)
Программа для индикации текущего языка ввода
👍6❤1
Индикатор попал в дайджест РодуктРадара, это ресурс про стартапы и прочие IT-продукты
https://productradar.ru/product/indikator-raskladki/
За него можно проголосовать (нажать кнопку «Поддержать»)
https://productradar.ru/product/indikator-raskladki/
За него можно проголосовать (нажать кнопку «Поддержать»)
❤2
Из комментариев.
Клавиатура Corsair K55 RGB PRO + Индикатор раскладки = изменение цвета подсветки в зависимости от языка
от @TutEvgen1984
Выглядит очень круто!
https://youtube.com/shorts/ziScI_4Ck7s?si=eVJEBGeAa4mLObOn
Клавиатура Corsair K55 RGB PRO + Индикатор раскладки = изменение цвета подсветки в зависимости от языка
от @TutEvgen1984
Выглядит очень круто!
https://youtube.com/shorts/ziScI_4Ck7s?si=eVJEBGeAa4mLObOn
YouTube
Corsair K55 RGB PRO + layout indicator = изменение цвета подсветки в зависимости от языка раскладки
👍4