ХаритоновСофт
51 subscribers
29 photos
1 video
10 files
103 links
Download Telegram
А меж тем, у Индикатора появился первый клиент из Саудовской Аравии. Пришлось освоить приём платежей через криптовалюту. Это оказался преподаватель университета из Джедда.

Ещё он любезно предложил перевести интерфейс на арабский. Вот уж не думал, что после английского и русского это будет следующий язык, который добавится в программу.
👍53👏1
Закрыл очень неприятную багулю, после конца триала программа превращалась в тыкву, не сообщая толком, что произошло. Страшно представить сколько людей просто удаляли программу после такого поведения и сколько ещё работающих копий с таким сюрпризом. Большое спасибо всем, кто сообщил об ошибке.
Нужно срочно готовить релиз.

Список изменений:
🛠 (исправление) Убрано зависание при показе формы окончания пробного периода
🛠 (исправление) Устранено ложное срабатывание детекции полного экрана при фокусе на рабочем столе в Windows 11
Индикатор подхватывает устройства Corsair даже если их сервер запускается после него
Добавлена поддержка арабского языка

https://khsoft.ru/download/test/LayoutIndicator.v2.8.4.test.zip
👍5
Новая версия — 2.8.6

Из-за исправления зависшей формы окончания пробного периода, пришлось сделать внеплановый релиз.

Список изменений:
Добавлен новый способ определения текущей раскладки по системному индикатору Виндовс, для случаев когда есть несколько раскладок одного языка
Снижена нагрузка на процессор при работе с заполненным чёрным списком и детекцией полноэкранных приложений
Индикатор мышиного курсора автоматически скрывается когда скрывается сам курсор
Поддержка индикации с помощью подсветки клавиатур Corsair
Добавлена поддержка арабского языка
Индикатор подхватывает устройства Corsair даже если их сервер запускается после него
🛠 (исправление) Подсветка панелей задач пропадала после сворачивания всех окон (win+d, win+m)
🛠 (исправление) Программа не стартовала при запуске Виндовс, если в пути до неё, была директория с пробелом в названии
🛠 (исправление) При отключении индикации цветом панели задач, возвращается изначальное значение её прозрачности. Тоже самое, происходит при использовании настройки «Aero»
🛠 (исправление) Убрано зависание при показе формы окончания пробного периода
🛠 (исправление) Устранено ложное срабатывание детекции полного экрана при фокусе на рабочем столе в Windows 11
🛠 (исправление) При включенной проверке полноэкранных приложений, на некоторых версиях Виндовс, индикация пропадала если фокус ввода

Работают все ключи регистрации от прошлых версий.

https://khsoft.ru/download/LayoutIndicator.v2.8.6.zip

#релиз
👍5
У меня отпуск, ура! Перед выездом на полный пансионат (в село к родителям), удалось поковыряться в Индикаторе.

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

Там же выяснилось, что после добавления кода получения уникального слепка компьютера, всё перестало работать на VirtualBox. Это исправление, конечно, большое для меня, вряд ли кто-то ещё столько времени гоняет Индикатор на виртуалках.

Дальше получилось заняться параметрами командной строки — это команды которые можно передать при запуске программы.
Сначала пошла хотелка от @Denis_e_87. Он написал, что не желает видеть иконку программы в систрее. На мой вопрос: «почему бы не переместить в её в скрытые?», получил внезапный ответ: «Но я то знаю, что она там есть» 🔥.
Я, как человек, который тоже регулярно хочет странного, не смог проигнорировать такой запрос, тем более, что добавить и поддерживать эту фичу — не сложно. Теперь, если вы выведёте команду «LayoutIndicator.exe -notrayicon», значка программы не будет в трее. Человек, сделавший такой финт, берёт на себя обязательство убивать процесс самостоятельно, т.к. меню с пунктом «Выход» у него не будет.

И чтобы два раза не вставать добавил там же команду «-withlog», она просто принудительно включает запись логов. Как-то нужна была такая функция, когда программа завершала работу сразу после запуска, отказываясь говорить, где у неё болит.

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

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

Желаю всем хорошо отдохнуть. Спасибо за багрепорты и поддержку!

Список изменений:
Добавлен параметр запуска «-notrayicon». Если программа будет запущена с ним, в системном трее не будет иконки приложения индикатора. В таком режиме, закрыть программу можно будет только через диспетчер задач
Добавлен параметр запуска «-withlog», который принудительно включает запись в лог
В расширенные настройки добавлен пункт для сброса всех настроек в изначальное состояние
🛠 (исправление) Не работала ссылка на форме оповещения о выходе новой версии программы
🛠 (исправление) Программа не работала на виртуальных машинах VirtualBox
🛠 (исправление) После перемещения форм-подложек, меняющих цвет панели задач, оставались следы

https://khsoft.ru/download/test/LayoutIndicator.v2.8.7.test.zip
👍8
Парочка изменений в Индикаторе раскладки

Недавно разбирал несколько ошибок: не подхватывался файл настроек, не работала автозагрузка. Оказалось, человек запускал программу прямо из архива. Архиватор каждый раз создавал временную директорию. Естественно, никакого файла настроек там не было, а путь, прописанный для автозапуска, был неверный.

Всё это натолкнуло меня на идею, сделать инсталлятор. Это решение даёт сразу несколько плюсов:
✔️ Запуск из архива невозможен, инсталлятор положит файл сразу в распакованном виде.
✔️ Для Индикатора автоматически создастся директория с известным мне именем и путём. Это облегчит поддержку, редко кто меняет это значение при установке.
✔️ Есть шанс, что Виндовс, из-за распространённости такой поставки софта, перестанет ругаться на вирусы и разводить прочую панику.
✔️ На рабочем столе автоматически создаётся ярлык для запуска.
✔️ Стало удобней удалять программу через стандартную процедуру Виндовс.

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

За одно исправил две надоедливых багули:
1. Формы подсветки панелей задач опять начали сворачиваться по win+d. Не помню уже, который раз я это правлю, баг просто рекордсмен по возвращению. Вылазит на свет только на особенных версия Виндовс. Надеюсь, попрощались навсегда.
2. При смене цвета панели задач, форма подсветки становилась на некоторое время бледной и только потом перекрашивалась. Меня это давно раздражало, только сейчас дошли руки поправить.

Параллельно провожу рефакторинг для реализации поддержки бесконечного количества раскладок. Дело оказалось более фундаментальным т.к. назрела переработка интерфейса. Хочу сделать настройки более зависимыми от языка. Чтобы можно было включать, выключить и настраивать индикацию для конкретной его раскладки.

А между делом пилю свою вторую программку от ХаритоновСофт. Там я упоролся в современное написание интерфейсов под Виндовс, изучаю и пробую WPF. Делают на нём, конечно, красивое. Нужно сделать на таком же уровне. Программа уже много месяцев работает у меня в виде MVP, сразу намертво вписалась в рабочий процесс, как будто всегда там и была. Очень хочется выпустить её в свет, но работы ещё очень много.

Индикатор раскладки 2.9.0 - тестовая версия

Список изменений:
У программы появился инсталлятор. Теперь это основной способ установки
🛠 (исправление) В очередной раз, исправлено исчезновение форм подсветки панели задач, по нажатию win+d, на некоторых версиях Виндовс
🛠 (исправление) Форма подсветки панели задач становились бледными на некоторое время, перед тем как поменять цвет
👍4
Немного процесса разработки

Добавил таблицу, в которую попадают все, установленные в системе раскладки.
И черновик формы для их настройки.
👍4
Бесконечные раскладки

Появление на свет Индикатора было спонтанным и стремительным. Чисто тулза для себя, проверить, какого это — иметь вменяемую индикацию языка. Данное обстоятельство, плюс многолетний перерыв в написании кода под десктоп, заложили кривой кирпич в фундамент программы — я решил, что поддержки трёх раскладок будет достаточно.

На первой картинке Индикатор 1.0

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

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

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

Теперь есть куда добавлять настройки звука, когда он будет готов. 😀

Всем тестирующим, советую поставить в отдельную директорию, изменений очень много, большой риск что-то упустить, так что лучше оставить себе путь к отступлению.

Ещё раз большое спасибо всем, кто тестирует и поддерживает! 💪

Список изменений:
Поддержка бесконечного количества раскладок
Новая форма редактирования настроек для конкретной раскладки
Новый формат файла хранения настроек для раскладок
Поддержка файлов настроек от предыдущих версий
Новые цвета раскладок по умолчанию
Появилась возможность отдельно задать альтернативный цвет и альтернативный текст для плавающих индикаторов (мышь + каретка)

Индикатор раскладки 2.9.1 - тестовая версия

#li291
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6
Индикация звуком

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

Когда Владимир написал эту идею, просто добавил в список, где лежат все задумки. Потом вспомнил как один коллега, которому я посоветовал поставить Индикатор, сказал, что он при печати не смотрит на экран, поэтому моё приложение не поможет. И вообще, стали часто попадаться на глаза люди, печатающие не на том языке, уткнувшись в клавиатуру. Так, потихоньку, эта идея становилась всё более привлекательной. Да и если бы я добавлял в программу только то, что нужно лично мне, она бы замерла примерно на версии 1.1 😊

К пожеланиям Владимира присоединился Oleg, с тезисом, что озвучивать каждое нажатие — это перебор, нужно отключать звук после какого-то времени с момента переключения либо после определённого количества символов.

Такое ТЗ легло в основу доработки. Благо теперь настройки для каждой раскладки на отдельной форме, просто добавил вкладку «🎶 Звуки». Сообразил, что в названия можно добавлять иконки юникода и добавил их, между делом, для всех вкладок.

У раскладки есть два события которые можно озвучить:
1. Переключение на неё
2. Нажатие клавиши, когда она активна

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

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

Моё погружение в мир работы со звуком в .Net это история, заслуживающая отдельного поста. Там был весь спектр эмоций. 😊

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

Спасибо всем причастным!

Список изменений:
Перевод новой части интерфейса на английский и арабский
Добавлена возможность индикации звуком при переключении раскладок и наборе текста
У вкладок настроек появились иконки
🛠 (исправление) Опечатки в английском переводе

Индикатор раскладки 2.9.3 - тестовая версия
👍41
ХаритоновСофт
Индикация звуком Не думал об озвучивании нажатий клавиш для разных раскладок. Давно печатаю в слепую на обоих языках и сразу вижу, если начал не на том, плюс цвет панели и флажки помогают. Когда Владимир написал эту идею, просто добавил в список, где лежат…
Небольшие изменения перед релизом

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

Так же добавил перевод закладки с настройками звука.

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

Список изменений:
Перевод новой части интерфейса на английский и арабский
🛠 (исправление) Озвучивание нажатия происходит один раз, при нажатии. При удерживании клавиши, звук не воспроизводится.

Индикатор раскладки 2.9.4 - тестовая версия
Релиз Индикатор раскладки. Версия 3.0

Новая версия показала себя как стабильная.
Выложил все наработки на официальный сайт и повысил версию до 3.0

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

Изменил схему монетизации программы:
1. Увеличил цену на 200₽, теперь Индикатор стоит 500₽.
2. Написал на сайте, что все обновления, после покупки, будут бесплатными в течении года. Пока это только анонс, в программе ничего для этого не сделано. Сразу скажу, что все поддержавшие разработку деньгами и тестированием, так же будут получать обновления бесплатно, бессрочно. Когда проверка придёт в код, пока не знаю.

Подсмотрел эту схему на чужих продуктах, считаю вполне справедливой. Это увеличит мизерные шансы вывода программы на самоокупаемость.

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

Идеи для дальнейшего улучшения Индикатора:
* Менять цвет активного окна в зависимости раскладки. Будет работать не со всеми приложениями, лютый кастом не реагирует на системные вызовы смены цвета.
* Заменять системный курсор мыши. Программно это все делают через замену файла курсора. Не знаю, получится ли делать это быстро, без лагов. Нужно тестировать. Это позволит менять цвет самого указателя и снизит нагрузку на процессор, который кушает перемещение формы вслед за курсором.
* Улучшение формы назначения команд при переключении. Тут можно добавить встроенные операции, например, изменение состояний CapsLock и ScrollLock. Вывод уведомлений и т.п. Будет удобно выбирать готовые шаблоны и править их под себя.
* Отдельная закладка настроек для Undead раскладки. Это редкая экзотика, для тех кто работает с билингвальной раскладкой. Думаю, у этой фичи очень маленькая аудитория, но я один из них.)
* Продвинутый экранный индикатор. Чтобы можно было добавить несколько цветовых областей в разных частях экрана, а не только надпись и прямоугольник как сейчас.
* Добавить сбор статистики по настройкам с которыми работает программа. Это поможет понять, чем чаще люди пользуются, а чем не пользуются вообще. Плюс поможет с разбором багов.

Что из этого действительно нужно, понятия не имею. Всегда открыт к обратной связи и новым идеям. Обычно это основной источник новых фич. Сейчас планирую переключится на следующую свою разработку.

Сайт программы

Список изменений
У программы появился инсталлятор. Теперь это основной способ установки
Поддержка бесконечного количества раскладок
Новая форма редактирования настроек для конкретной раскладки
Новый формат файла хранения настроек для раскладок
Поддержка файлов настроек от предыдущих версий
Новые цвета раскладок по умолчанию
Появилась возможность отдельно задать альтернативный цвет и альтернативный текст для плавающих индикаторов (мышь + каретка)
Перевод новой части интерфейса на английский и арабский
Добавлена возможность индикации звуком при переключении раскладок и наборе текста
У вкладок настроек появились иконки
Перевод новой части интерфейса на арабский и английский
🛠 (исправление) Форма подсветки панели задач становились бледными на некоторое время, перед тем как поменять цвет
🛠 (исправление) Опечатки в английском переводе
🛠 (исправление) Озвучивание нажатия происходит один раз, при нажатии. При удерживании клавиши, звук не воспроизводится.
🛠 (исправление) В очередной раз, исправлено исчезновение форм подсветки панели задач, по нажатию win+d, на некоторых версиях Виндовс
👍4🔥1
Статистика и проникновение Индикатор в мир

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

Там же, выводится гистограмма по Индикатору. Каждый день представлен четырьмя столбиками: сколько раз приложение было скачано, сколько раз триальные копии вышли на связь, аналогичная цифра по зарегистрированным и количество покупок.

Недавно проснулся, а у меня за день 500+ скачиваний, это аномалия, обычно меньше 20ти. Пошёл смотреть, оказалось какой-то умелец с немецкого хостинга поставил скачивание файла или проверку его даты создания (это один и тот же запрос), на _каждую_ минуту. Я привык к тому, что боты некоторых софтверных порталов ставят чекеры на случай обновления, чтобы побыстрей скачать новую версию, начинить её троянами и выложить бесплатно. Но чтобы каждую минуту, это он явно погорячился, я с таким рвением новые релизы не делаю. 😊

Смотреть статистику — это отдельный вид удовольствия. Можно узнать из какой страны кулхацкер ломает программку, это видно по изменённому содержимому исполняемого файла. Видел запросы из Тайланда и Алжира. Но самая активная, ломанная версия, приходит с Родины, в зарегистрированном на IP адресе, стоит Верхняя Пышма, Ленина, 1 😂

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

Вот такие образчики маркетинговой мысли там можно прочесть:
«В постоянно развивающемся мире инструментов повышения производительности «Индикатор раскладки» от Kharitonov Soft выделяется как выдающаяся утилита, предназначенная для оптимизации процесса набора текста.» 🔥🔥

Запишу себе в резюме, что являюсь автором выдающейся утилиты для повышения производительности. 💪
👍8😁1
Первый! Ниша занята 💪
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥10👍3
This media is not supported in your browser
VIEW IN TELEGRAM
В далёком, 2021, я выкатываю фичу, позволяющую выполнять любую команду, при переключении на каждую раскладку.

В 2025, находится человек, её применивший. 💪

https://www.youtube.com/watch?v=26XHb_cpiAA — инструкция для желающих повторить.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5👍1😁1
3.0.3 — тестовая

Накопилась кучка неприятных багуль по Индикатору.
Были безжалостно повержены.

Так же сделал дополнительную вкладку на форме настроек «Dev».
Там будет собираться всякая краткая диагностика с удобной кнопкой для копирования в буфер.
Даже подумал сделать автоматическую отправку в телегу, но побоялся дудоса)

В арихве, по старинке, один exe-файл. Для желающих потестировать, просто заменить.

Напоминаю, что нужно сделать, чтобы не пришлось регистрировать программу заново:

1. Переходим в «Расширенные настройки» (правый клик на иконке программы в систрее).
2. Ставим напротив пункта «Сохранять регистрационные данные в файл настроек» значение «True».
3. Сохраняем настройки в файл LayoutIndicator.json, в каталог где лежит программа.

Список изменений

Добавлена вкладка с информацией о текущем состоянии программы для удобной диагностики ошибок
🛠 (исправление) При загрузке команд, запускающихся при переключении языка, из файла настроек, пути обрабатывались неверно
🛠 (исправление) Некорректное отображение некоторых элементов UI при масштабировании
🛠 (исправление) Не работала сортировка раскладок в последней версии Win 11
🛠 (исправление) Опечатки в английской версии перевода

https://khsoft.ru/download/test/LayoutIndicator.v3.0.3.test.zip
👍3
This media is not supported in your browser
VIEW IN TELEGRAM
3.0.4 — тестовая

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


Список изменений

Индикатор каретки теперь можно перемещать мышкой
Добавлена информация об экранах на вкладке диагностики
🛠 (исправление) Кнопки выбора цвета не красились в выбранный цвет

https://khsoft.ru/download/test/LayoutIndicator.v3.0.4.test.zip
👍3🔥1