From d4e0c2196f80a14fd7f88e0b503db5999cd09dba Mon Sep 17 00:00:00 2001 From: Lken-cmd <149530183+Lken-cmd@users.noreply.github.com> Date: Sun, 17 May 2026 11:21:55 +0200 Subject: [PATCH] chore: Improve tray icon rendering --- assets/SuperLightBattery.ico | Bin 13278 -> 29189 bytes assets/SuperLightBatteryInstaller.ico | Bin 8407 -> 36861 bytes src/superlightbattery.c | 270 +++++++------------------- 3 files changed, 71 insertions(+), 199 deletions(-) diff --git a/assets/SuperLightBattery.ico b/assets/SuperLightBattery.ico index efbeca696e656d1b56373957056c7b5b6666e461..b914c08cdc51ec5820e3ae22f231aa7cbb80717d 100644 GIT binary patch literal 29189 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 literal 13278 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 PyxX;_BXpa;U!wmPKt9qJ diff --git a/assets/SuperLightBatteryInstaller.ico b/assets/SuperLightBatteryInstaller.ico index 3cfb8e7500ca1f7c2048ce1b18f6932b1e5f76b1..68c9b1564bfd5e528590ed51f53eb2c43d74b7cf 100644 GIT binary patch literal 36861 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®+@2I%7n6 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ÄaN-t!1=z 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 TT4RBw00000NkvXXu0mjfqX|lc literal 8407 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 AkpKVy diff --git a/src/superlightbattery.c b/src/superlightbattery.c index 8ef2776..9990a4d 100644 --- a/src/superlightbattery.c +++ b/src/superlightbattery.c @@ -1708,149 +1708,97 @@ static HDEVNOTIFY g_hidDeviceNotify = NULL; static void AddTrayIcon(HWND hwnd); -static DWORD Argb(BYTE a, BYTE r, BYTE g, BYTE b) -{ - return ((DWORD)a << 24) | ((DWORD)r << 16) | ((DWORD)g << 8) | b; -} +typedef struct IconPixel { + BYTE r; + BYTE g; + BYTE b; + BYTE a; +} IconPixel; -static BOOL PointInRoundedRect(int x, int y, int left, int top, int right, int bottom, int radius) -{ - int cx = x; - int cy = y; - int dx; - int dy; +static const IconPixel ICON_CLEAR = {0, 0, 0, 0}; +static const IconPixel ICON_INK = {14, 15, 18, 255}; +static const IconPixel ICON_EMPTY = {245, 246, 248, 255}; +static const IconPixel ICON_UNKNOWN = {165, 174, 185, 255}; +static const IconPixel ICON_HIGH = {31, 191, 107, 255}; +static const IconPixel ICON_MID = {231, 178, 58, 255}; +static const IconPixel ICON_LOW = {226, 90, 58, 255}; - if (x < left || x > right || y < top || y > bottom) { - return FALSE; - } - - if (cx < left + radius) { - cx = left + radius; - } else if (cx > right - radius) { - cx = right - radius; - } - - if (cy < top + radius) { - cy = top + radius; - } else if (cy > bottom - radius) { - cy = bottom - radius; - } - - dx = x - cx; - dy = y - cy; - return dx * dx + dy * dy <= radius * radius; -} - -static void DrawRoundedRect(DWORD *pixels, int width, int height, int left, int top, int right, int bottom, int radius, DWORD color) +static DWORD PremultipliedArgb(IconPixel pixel) { - for (int y = top; y <= bottom; ++y) { - if (y < 0 || y >= height) { - continue; - } - - for (int x = left; x <= right; ++x) { - if (x < 0 || x >= width) { - continue; - } + BYTE b = (BYTE)((pixel.b * pixel.a + 127) / 255); + BYTE g = (BYTE)((pixel.g * pixel.a + 127) / 255); + BYTE r = (BYTE)((pixel.r * pixel.a + 127) / 255); - if (PointInRoundedRect(x, y, left, top, right, bottom, radius)) { - pixels[(size_t)y * width + x] = color; - } - } - } + return ((DWORD)pixel.a << 24) | ((DWORD)r << 16) | ((DWORD)g << 8) | b; } -static BOOL PointInPolygon(int x, int y, const POINT *points, int pointCount) +static IconPixel BatteryLevelColor(int percent) { - BOOL inside = FALSE; - - for (int i = 0, j = pointCount - 1; i < pointCount; j = i++) { - if (((points[i].y > y) != (points[j].y > y)) && - (x < (points[j].x - points[i].x) * (y - points[i].y) / (points[j].y - points[i].y) + points[i].x)) { - inside = !inside; - } + if (percent >= 60) { + return ICON_HIGH; } - - return inside; + if (percent >= 25) { + return ICON_MID; + } + return ICON_LOW; } -static void DrawPolygon(DWORD *pixels, int width, int height, const POINT *points, int pointCount, int dx, int dy, DWORD color) +static void FillIconRect16(IconPixel pixels[16 * 16], int left, int top, int width, int height, IconPixel color) { - POINT moved[8]; - int left; - int right; - int top; - int bottom; - - if (pointCount <= 0 || pointCount > (int)ARRAY_LEN(moved)) { - return; - } - - for (int i = 0; i < pointCount; ++i) { - moved[i].x = points[i].x + dx; - moved[i].y = points[i].y + dy; - } - - left = right = moved[0].x; - top = bottom = moved[0].y; - for (int i = 1; i < pointCount; ++i) { - if (moved[i].x < left) { - left = moved[i].x; - } - if (moved[i].x > right) { - right = moved[i].x; - } - if (moved[i].y < top) { - top = moved[i].y; - } - if (moved[i].y > bottom) { - bottom = moved[i].y; - } - } - - for (int y = top; y <= bottom; ++y) { - if (y < 0 || y >= height) { + for (int y = top; y < top + height; ++y) { + if (y < 0 || y >= 16) { continue; } - for (int x = left; x <= right; ++x) { - if (x < 0 || x >= width) { + for (int x = left; x < left + width; ++x) { + if (x < 0 || x >= 16) { continue; } - if (PointInPolygon(x, y, moved, pointCount)) { - pixels[(size_t)y * width + x] = color; - } + pixels[y * 16 + x] = color; } } } -static void DrawChargingBolt(DWORD *pixels, int hi) +static void RenderBatteryIcon16(IconPixel pixels[16 * 16], int percent, BOOL charging) { - static const POINT bolt[] = { - {37, 14}, {25, 36}, {34, 35}, {29, 53}, {46, 28}, {37, 30} - }; - POINT scaled[ARRAY_LEN(bolt)]; - int shadow = (2 * hi + 32) / 64; - - if (shadow < 1) { - shadow = 1; + for (int i = 0; i < 16 * 16; ++i) { + pixels[i] = ICON_CLEAR; } - for (int i = 0; i < (int)ARRAY_LEN(bolt); ++i) { - scaled[i].x = (bolt[i].x * hi + 32) / 64; - scaled[i].y = (bolt[i].y * hi + 32) / 64; - } + FillIconRect16(pixels, 6, 1, 4, 1, ICON_INK); + FillIconRect16(pixels, 3, 2, 10, 13, ICON_INK); + FillIconRect16(pixels, 4, 3, 8, 11, ICON_EMPTY); - DrawPolygon(pixels, hi, hi, scaled, (int)ARRAY_LEN(scaled), shadow, shadow, Argb(150, 0, 0, 0)); - DrawPolygon(pixels, hi, hi, scaled, (int)ARRAY_LEN(scaled), 0, 0, Argb(255, 255, 211, 75)); + if (charging) { + FillIconRect16(pixels, 4, 3, 8, 11, ICON_HIGH); + FillIconRect16(pixels, 8, 4, 2, 1, ICON_INK); + FillIconRect16(pixels, 7, 5, 2, 1, ICON_INK); + FillIconRect16(pixels, 7, 6, 1, 1, ICON_INK); + FillIconRect16(pixels, 6, 7, 4, 1, ICON_INK); + FillIconRect16(pixels, 8, 8, 1, 1, ICON_INK); + FillIconRect16(pixels, 7, 9, 1, 1, ICON_INK); + FillIconRect16(pixels, 7, 10, 1, 1, ICON_INK); + FillIconRect16(pixels, 6, 11, 1, 1, ICON_INK); + } else if (percent >= 0) { + int fillHeight = (percent * 11 + 50) / 100; + + if (fillHeight > 11) { + fillHeight = 11; + } + if (percent > 0 && fillHeight < 1) { + fillHeight = 1; + } + if (fillHeight > 0) { + FillIconRect16(pixels, 4, 14 - fillHeight, 8, fillHeight, BatteryLevelColor(percent)); + } + } else { + FillIconRect16(pixels, 4, 3, 8, 11, ICON_UNKNOWN); + } } static HICON CreateBatteryTrayIcon(int targetSize) { - enum { SUPERSAMPLE = 4 }; - int hi; - int samples = SUPERSAMPLE * SUPERSAMPLE; BITMAPINFO bmi; void *bits = NULL; HDC screenDc = NULL; @@ -1858,22 +1806,17 @@ static HICON CreateBatteryTrayIcon(int targetSize) HBITMAP maskBitmap = NULL; HICON icon = NULL; ICONINFO iconInfo; - DWORD *highPixels = NULL; BYTE *maskBits = NULL; - DWORD *pixels; + DWORD *targetPixels; int maskRowBytes; int percent = -1; BOOL charging = FALSE; - DWORD shell = Argb(255, 22, 27, 34); - DWORD surface = Argb(255, 245, 247, 250); - DWORD empty = Argb(255, 165, 174, 185); - DWORD fill = Argb(255, 32, 201, 117); + IconPixel sourcePixels[16 * 16]; if (targetSize <= 0 || targetSize > 256) { return NULL; } - hi = targetSize * SUPERSAMPLE; maskRowBytes = ((targetSize + 31) / 32) * 4; if (g_traySnapshotValid) { @@ -1883,59 +1826,12 @@ static HICON CreateBatteryTrayIcon(int targetSize) } } - if (percent >= 0 && percent <= 20) { - fill = Argb(255, 238, 76, 76); - } else if (percent >= 0 && percent <= 50) { - fill = Argb(255, 245, 183, 66); - } - - highPixels = (DWORD *)calloc((size_t)hi * (size_t)hi, sizeof(DWORD)); maskBits = (BYTE *)calloc((size_t)maskRowBytes * (size_t)targetSize, 1); - if (!highPixels || !maskBits) { - free(highPixels); - free(maskBits); + if (!maskBits) { return NULL; } -#define DSX(v) (((v) * hi + 32) / 64) - - DrawRoundedRect(highPixels, hi, hi, DSX(10), DSX(8), DSX(58), DSX(63), DSX(10), Argb(90, 0, 0, 0)); - DrawRoundedRect(highPixels, hi, hi, DSX(22), DSX(0), DSX(42), DSX(10), DSX(4), shell); - DrawRoundedRect(highPixels, hi, hi, DSX(8), DSX(5), DSX(56), DSX(63), DSX(10), shell); - DrawRoundedRect(highPixels, hi, hi, DSX(15), DSX(12), DSX(49), DSX(57), DSX(7), surface); - - { - int fillLeft = DSX(19); - int fillRight = DSX(45); - int fillTop = DSX(16); - int fillBottom = DSX(53); - int radius = DSX(5); - - if (percent >= 0) { - int height = ((fillBottom - fillTop + 1) * percent + 99) / 100; - int visibleTop = fillBottom - height + 1; - - if (percent > 0 && visibleTop > fillBottom) { - visibleTop = fillBottom; - } - - for (int y = fillTop; y <= fillBottom; ++y) { - for (int x = fillLeft; x <= fillRight; ++x) { - if (y >= visibleTop && PointInRoundedRect(x, y, fillLeft, fillTop, fillRight, fillBottom, radius)) { - highPixels[(size_t)y * hi + x] = fill; - } - } - } - } else { - DrawRoundedRect(highPixels, hi, hi, fillLeft, fillTop, fillRight, fillBottom, radius, empty); - } - } - -#undef DSX - - if (charging) { - DrawChargingBolt(highPixels, hi); - } + RenderBatteryIcon16(sourcePixels, percent, charging); ZeroMemory(&bmi, sizeof(bmi)); bmi.bmiHeader.biSize = sizeof(BITMAPINFOHEADER); @@ -1947,7 +1843,6 @@ static HICON CreateBatteryTrayIcon(int targetSize) screenDc = GetDC(NULL); if (!screenDc) { - free(highPixels); free(maskBits); return NULL; } @@ -1958,45 +1853,22 @@ static HICON CreateBatteryTrayIcon(int targetSize) if (colorBitmap) { DeleteObject(colorBitmap); } - free(highPixels); free(maskBits); return NULL; } - pixels = (DWORD *)bits; - ZeroMemory(pixels, (size_t)targetSize * (size_t)targetSize * sizeof(DWORD)); - + targetPixels = (DWORD *)bits; for (int y = 0; y < targetSize; ++y) { + int sourceY = (y * 16) / targetSize; + for (int x = 0; x < targetSize; ++x) { - unsigned int a = 0; - unsigned int r = 0; - unsigned int g = 0; - unsigned int b = 0; - - for (int sy = 0; sy < SUPERSAMPLE; ++sy) { - for (int sx = 0; sx < SUPERSAMPLE; ++sx) { - DWORD c = highPixels[(size_t)(y * SUPERSAMPLE + sy) * hi + (x * SUPERSAMPLE + sx)]; - BYTE ca = (BYTE)((c >> 24) & 0xFF); - - a += ca; - r += ((c >> 16) & 0xFF) * ca; - g += ((c >> 8) & 0xFF) * ca; - b += (c & 0xFF) * ca; - } - } + int sourceX = (x * 16) / targetSize; - if (a > 0) { - r /= a; - g /= a; - b /= a; - a /= samples; - pixels[(size_t)y * targetSize + x] = Argb((BYTE)a, (BYTE)r, (BYTE)g, (BYTE)b); - } + targetPixels[(size_t)y * targetSize + x] = PremultipliedArgb(sourcePixels[sourceY * 16 + sourceX]); } } maskBitmap = CreateBitmap(targetSize, targetSize, 1, 1, maskBits); - free(highPixels); free(maskBits); if (!maskBitmap) { DeleteObject(colorBitmap);