Здравствуйте! Подскажите, пожалуйста, библиотеки для решения этих задач. Язык не

важен.

Задача 1:
ОС: желательно macOS + Linux + Windows, можно только Linux с X Window System
ОЗУ: желательно меньше 20 мбайт
Необходимо нарисовать на экране RGBA-картинку в углу, картинка должна масштабироваться с учётом DPI и быть прокликиваемой насквозь. Желательно плавное появление и исчезновение
Что я уже пробовал:
* PyQt6: https://github.com/megahomyak/battery_overlay/tree/8cf1c6476bd37ce119b7bd7accf692c61f60afb1 (80 (или 50?) мбайт ОЗУ под такое - слишком много)
* Qt4: https://github.com/megahomyak/battery_overlay/tree/828ea567e247a4378c1c8b214b8213b8b74ce4af (Qt6 почему-то весит 13 гигабайт в установщике, столько я ставить не буду; с Qt сложно, но можно)
* Xlib: https://github.com/megahomyak/battery_overlay/tree/2770791258f406e6ed2e13f7b74a60e6030d224f (в разработке; Xlib сложный и не кроссплатформенный)

Задача 2:
ОС: macOS + Linux + Windows
Надо либо ОЗУ меньше 20 мбайт, либо чтобы запускалось мгновенно
Необходимо затенить весь экран и вывести поверх белый текст, который должен масштабироваться с учётом DPI. В тексте могут встречаться зелёные участки. Нужно уметь позиционировать текст и принимать нажатия на клавиатуру от пользователя (и получать не просто айди кнопки, а символ, введённый пользователем)

Подскажите, пожалуйста, какие библиотеки выбрать.

9 ответов

32 просмотра

ты винлокер пишешь?)

megahomyak- Автор вопроса
Алексей (lewa_j) Иванчуков
glfw

Спасибо, посмотрю.

megahomyak- Автор вопроса
feedable
ты винлокер пишешь?)

Нет, всё гораздо интереснее: хочу себе сделать такое окружение, где * Окна будут всегда занимать полный экран (поэтому необходимость в индикаторах заряда батареи и времени в виде оверлеев, возникающих при некоторых значениях) * Будет панель действий, которая будет вызываться на какую-нибудь клавишу (поэтому мне и нужно затенение с текстом сверху и принятием пользовательского ввода) А ещё эту же панель можно будет использовать и из других программ. Там очень интересный концепт конкретно для панели. Позволит отдавать приказы компьютеру быстро, при этом обучиться такому будет очень просто. Совмещение хоткеев (ну, почти) и фаззи-поиска. Могу рассказать подробнее, если хотите.

megahomyak
Нет, всё гораздо интереснее: хочу себе сделать так...

ты хочешь написать тогда менеджер окон?

megahomyak- Автор вопроса
feedable
ты хочешь написать тогда менеджер окон?

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

megahomyak- Автор вопроса
megahomyak
Нет, всё гораздо интереснее: хочу себе сделать так...

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

megahomyak- Автор вопроса
megahomyak
Конечно, всё окружение может выглядеть как тайлинг...

Возможно, окнами буду манипулировать через встроенные хоткеи wm. Но моя идея - про быстроту в целом, не только при обращении с окнами.

megahomyak- Автор вопроса
megahomyak
Конечно, всё окружение может выглядеть как тайлинг...

Фиксед: "окружение может выглядеть" -> "окружение может выглядеть для вас". Вам может казаться, что я переизобретаю wm, но даже без управления окнами моя задумка всё ещё должна быть полезной хотя бы мне самому.

Похожие вопросы

Обсуждают сегодня

Гайс, вопрос для разносторонее развитых: читаю стрим с юарта, нада выделять с него фреймы с определенной структурой, если ли чо готовое, или долбаться с ринг буффером? нада у...
Vitaly
9
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
длина пакета фиксированная, или меняется?
Okhsunrog
7
Вот еще странный косяк, подскажите как бороться. Я git clone сделал себе всего embassy и примеры там запускаю. Всё хорошо. Но вот решил в cargo.toml зависимости не как в приме...
Lukutin R2AJP
5
А в каком формате фреймы? Сам формат сейчас придумываешь, или что-то готовое нужно распарсить?
Okhsunrog
5
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Добрый вечер, Пока не совсем понимаю как наладить общение между телеграм ботом и ПО для работы с сим боксом. По самому боту так понял: - Нужен некий баланс, который можно поп...
Magic
6
Всем привет, нужна как никогда, нужна помощь с IO в загрузчике. Пишу в code16 после установки сегментных регистров, пишу вывод символа. Пробовал 2 варианта: # 1 mov $0x0E, %a...
Shadow Akira
14
Раз начали говорить про embassy, то присоединюсь со своими парой вопросов. 1) Есть ли сопоставимые аналоги для асинхронного кода в emdebbed? 2) Можно ли внутри задач embassy ...
NI_isx
6
сделал сайт, прикрутил в боте сайт, и виджет логина. как автоматически логинить пользователя в аккаунт(телеграм), при входе с бота?
Александра Чернивецкая
5
Карта сайта