Глубока кроличья нора.
Ускорение запуска выявило ошибку. Оказывается, начальный фриз давал возможность успеть построится контекстному меню программы. Там же создавалась иконка систрея. Без этих зависаний, при запуске, код пытался поменять флаг иконки ещё до того как она была создана.
Всё держалось на подтормаживании при запуске! 🤭
На радостях не проверил новую версию в вируталке, а ошибка проявляется только если в системе больше одного языка. С одним всё успевает и без задержки.
Ссылку в посте выше обновил. Тут продублирую.
Спасибо @SannikovVV за тестирование!
https://khsoft.ru/download/test/LayoutIndicator.v2.6.1.test.zip
Ускорение запуска выявило ошибку. Оказывается, начальный фриз давал возможность успеть построится контекстному меню программы. Там же создавалась иконка систрея. Без этих зависаний, при запуске, код пытался поменять флаг иконки ещё до того как она была создана.
Всё держалось на подтормаживании при запуске! 🤭
На радостях не проверил новую версию в вируталке, а ошибка проявляется только если в системе больше одного языка. С одним всё успевает и без задержки.
Ссылку в посте выше обновил. Тут продублирую.
Спасибо @SannikovVV за тестирование!
https://khsoft.ru/download/test/LayoutIndicator.v2.6.1.test.zip
👍1
Первая тестовая сборка в новом году! 🎊
(исправление) Изменён способ работы с потоками, уменьшено количество потребляемых ресурсов процессора
(исправление) Не сохранялась настройка способа проверки раскладки
https://khsoft.ru/download/test/LayoutIndicator.v2.6.3.test.zip
(исправление) Изменён способ работы с потоками, уменьшено количество потребляемых ресурсов процессора
(исправление) Не сохранялась настройка способа проверки раскладки
https://khsoft.ru/download/test/LayoutIndicator.v2.6.3.test.zip
👍2
В этой версии я сделал автоматическую загрузку настроек с регистрацией.
Последующие версии можно будет просто копировать в директорию с файлом настроек «LayoutIndicator.json». Программа сама подтянет все значения и зарегистрирует копию.
Важный момент — по умолчанию регистрационные данные не сохраняются в файл, чтобы это происходило нужно включить специальную настройку.
Так сделано чтобы можно было контролировать распространение вашего кода регистрации.
Иначе, в случае утечки файла настроек, появится много копий, зарегистрированных на одного человека, а базовая лицензия ограничивает это количество двумя компьютерами.
Что нужно сделать чтобы получить файл настроек с регистрационными данными:
1. Сохраняем свои текущие настройки в файл LayoutIndicator.json, в каталог где лежит программа.
2. Копируем туда новую версию индикатора раскладки и запускаем её.
3. После запуска новой версии, загружаем настройки из LayoutIndicator.json и регистрируем программу
4. Переходим в «Расширенные настройки» (правый клик на иконке программы в систрее).
5. Ставим напротив пункта «Сохранять регистрационные данные в файл настроек» значение «True».
6. Сохраняем настройки в файл LayoutIndicator.json, в каталог где лежит программа, с заменой.
Всё, теперь ваш файл настроек LayoutIndicator.json содержит код регистрации и при запусках новых версий, копия будет регистрироваться автоматически.
https://khsoft.ru/download/test/LayoutIndicator.v2.6.4.test.zip
Последующие версии можно будет просто копировать в директорию с файлом настроек «LayoutIndicator.json». Программа сама подтянет все значения и зарегистрирует копию.
Важный момент — по умолчанию регистрационные данные не сохраняются в файл, чтобы это происходило нужно включить специальную настройку.
Так сделано чтобы можно было контролировать распространение вашего кода регистрации.
Иначе, в случае утечки файла настроек, появится много копий, зарегистрированных на одного человека, а базовая лицензия ограничивает это количество двумя компьютерами.
Что нужно сделать чтобы получить файл настроек с регистрационными данными:
1. Сохраняем свои текущие настройки в файл LayoutIndicator.json, в каталог где лежит программа.
2. Копируем туда новую версию индикатора раскладки и запускаем её.
3. После запуска новой версии, загружаем настройки из LayoutIndicator.json и регистрируем программу
4. Переходим в «Расширенные настройки» (правый клик на иконке программы в систрее).
5. Ставим напротив пункта «Сохранять регистрационные данные в файл настроек» значение «True».
6. Сохраняем настройки в файл LayoutIndicator.json, в каталог где лежит программа, с заменой.
Всё, теперь ваш файл настроек LayoutIndicator.json содержит код регистрации и при запусках новых версий, копия будет регистрироваться автоматически.
https://khsoft.ru/download/test/LayoutIndicator.v2.6.4.test.zip
❤3👍1
Тестировщик конечно из меня вышел не очень профессиональный.
Прошляпал базовую проверку, программа не ругалась если вводили неверный код регистрации, просто никак не реагировала, классическое «сам догадайся почему я обиделась». 🤭
В этой версии всего одно изменение:
(исправление) Не выводилось окно с ошибкой в случае неправильного кода регистрации
Зато отличный повод попробовать автоматическое применение настроек и регистрацию.
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