chore(logo): fix release yml and chang logo (#42)

This commit is contained in:
Haze
2026-02-11 11:32:26 +08:00
committed by GitHub
Unverified
parent a0505490cd
commit 563fcd2f24
17 changed files with 64 additions and 12 deletions

View File

@@ -350,8 +350,8 @@ jobs:
echo "" echo ""
echo "=== Verify release-info.json ===" echo "=== Verify release-info.json ==="
echo "Reading release-info.json directly from OSS..." ossutil cp oss://valuecell-clawx/latest/release-info.json /tmp/release-info.json -f
ossutil cat oss://valuecell-clawx/latest/release-info.json | jq . jq . /tmp/release-info.json
echo "" echo ""
echo "✅ All files uploaded and verified successfully!" echo "✅ All files uploaded and verified successfully!"

View File

@@ -29,8 +29,9 @@ export function createTray(mainWindow: BrowserWindow): Tray {
// Windows: use .ico for best quality in system tray // Windows: use .ico for best quality in system tray
iconPath = join(iconsDir, 'icon.ico'); iconPath = join(iconsDir, 'icon.ico');
} else if (process.platform === 'darwin') { } else if (process.platform === 'darwin') {
// macOS: use 16x16 PNG as template image // macOS: use Template.png for proper status bar icon
iconPath = join(iconsDir, '16x16.png'); // The "Template" suffix tells macOS to treat it as a template image
iconPath = join(iconsDir, 'tray-icon-Template.png');
} else { } else {
// Linux: use 32x32 PNG // Linux: use 32x32 PNG
iconPath = join(iconsDir, '32x32.png'); iconPath = join(iconsDir, '32x32.png');
@@ -41,9 +42,14 @@ export function createTray(mainWindow: BrowserWindow): Tray {
// Fallback to icon.png if platform-specific icon not found // Fallback to icon.png if platform-specific icon not found
if (icon.isEmpty()) { if (icon.isEmpty()) {
icon = nativeImage.createFromPath(join(iconsDir, 'icon.png')); icon = nativeImage.createFromPath(join(iconsDir, 'icon.png'));
// Still try to set as template for macOS
if (process.platform === 'darwin') {
icon.setTemplateImage(true);
}
} }
// On macOS, set as template image for proper dark/light mode support // Note: Using "Template" suffix in filename automatically marks it as template image
// But we can also explicitly set it for safety
if (process.platform === 'darwin') { if (process.platform === 'darwin') {
icon.setTemplateImage(true); icon.setTemplateImage(true);
} }

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.0 KiB

After

Width:  |  Height:  |  Size: 8.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 547 B

After

Width:  |  Height:  |  Size: 574 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 19 KiB

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 KiB

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.3 KiB

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 43 KiB

After

Width:  |  Height:  |  Size: 47 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.3 KiB

After

Width:  |  Height:  |  Size: 3.3 KiB

View File

@@ -11,6 +11,8 @@ This directory contains the application icons for all supported platforms.
| `icon.ico` | Windows | Windows ICO format | | `icon.ico` | Windows | Windows ICO format |
| `icon.png` | All | 512x512 PNG fallback | | `icon.png` | All | 512x512 PNG fallback |
| `16x16.png` - `512x512.png` | Linux | PNG set for Linux | | `16x16.png` - `512x512.png` | Linux | PNG set for Linux |
| `tray-icon-template.svg` | Source | macOS tray icon template source |
| `tray-icon-Template.png` | macOS | 22x22 status bar icon (note: "Template" suffix required) |
## Generating Icons ## Generating Icons
@@ -55,14 +57,23 @@ If you prefer to generate icons manually:
## Design Guidelines ## Design Guidelines
- **Background**: Gradient from #6366f1 to #8b5cf6 (Indigo to Violet) ### Application Icon
- **Corner Radius**: ~20% of width (200px on 1024px canvas) - **Corner Radius**: ~20% of width (200px on 1024px canvas)
- **Foreground**: White claw symbol with "X" accent - **Foreground**: White claw symbol with "X" accent
- **Safe Area**: Keep 10% margin from edges - **Safe Area**: Keep 10% margin from edges
### macOS Tray Icon
- **Format**: Single-color (black) on transparent background
- **Size**: 22x22 pixels (system automatically handles @2x retina)
- **Naming**: Must end with "Template.png" for automatic template mode
- **Design**: Simplified monochrome version of main icon (ClawX logo)
- **Source**: Use `tray-icon-template.svg` as the source
- **Important**: Must be pure black (#000000) on transparent background - no gradients or colors
## Updating the Icon ## Updating the Icon
1. Edit `icon.svg` with your vector editor (Figma, Illustrator, Inkscape) 1. Edit `icon.svg` with your vector editor (Figma, Illustrator, Inkscape)
2. Run `./scripts/generate-icons.sh` 2. For macOS tray icon, edit `tray-icon-template.svg` (must be single-color black on transparent)
3. Verify generated icons look correct 3. Run `node scripts/generate-icons.mjs`
4. Commit all generated files 4. Verify generated icons look correct
5. Commit all generated files

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 422 KiB

After

Width:  |  Height:  |  Size: 422 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 43 KiB

After

Width:  |  Height:  |  Size: 47 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 9.1 KiB

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 428 B

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 9.0 KiB

View File

@@ -77,6 +77,20 @@ try {
} }
echo` ✅ Created ${generatedCount} Linux PNG icons`; echo` ✅ Created ${generatedCount} Linux PNG icons`;
// 5. Generate macOS Tray Icon Template
echo`📍 Generating macOS tray icon template...`;
const TRAY_SVG_SOURCE = path.join(ICONS_DIR, 'tray-icon-template.svg');
if (fs.existsSync(TRAY_SVG_SOURCE)) {
await sharp(TRAY_SVG_SOURCE)
.resize(22, 22)
.png()
.toFile(path.join(ICONS_DIR, 'tray-icon-Template.png'));
echo` ✅ Created tray-icon-Template.png (22x22)`;
} else {
echo` ⚠️ tray-icon-template.svg not found, skipping tray icon generation`;
}
echo`\n✨ Icon generation complete! Files located in: ${ICONS_DIR}`; echo`\n✨ Icon generation complete! Files located in: ${ICONS_DIR}`;
} catch (error) { } catch (error) {