---
read_when:
    - تغییر رفتار آیکون نوار منو
summary: حالت‌ها و پویانمایی‌های نماد نوار منو برای OpenClaw در macOS
title: آیکون نوار منو
x-i18n:
    generated_at: "2026-04-29T23:11:21Z"
    model: gpt-5.5
    provider: openai
    source_hash: 6900d702358afcf0481f713ea334236e1abf973d0eeff60eaf0afcf88f9327b2
    source_path: platforms/mac/icon.md
    workflow: 16
---

# حالت‌های آیکون نوار منو

نویسنده: steipete · به‌روزرسانی‌شده: 2025-12-06 · دامنه: برنامه macOS (`apps/macos`)

- **بیکار:** انیمیشن عادی آیکون (پلک‌زدن، تکان گاه‌به‌گاه).
- **مکث‌شده:** آیتم وضعیت از `appearsDisabled` استفاده می‌کند؛ بدون حرکت.
- **فعال‌ساز صوتی (گوش‌های بزرگ):** آشکارساز بیدارباش صوتی وقتی واژه بیدارباش شنیده می‌شود `AppState.triggerVoiceEars(ttl: nil)` را فراخوانی می‌کند و هنگام ضبط گفته، `earBoostActive=true` را نگه می‌دارد. گوش‌ها بزرگ‌تر می‌شوند (1.9x)، برای خوانایی سوراخ‌های دایره‌ای گوش می‌گیرند، سپس پس از 1s سکوت از طریق `stopVoiceEars()` پایین می‌آیند. فقط از پایپ‌لاین صوتی درون‌برنامه فعال می‌شود.
- **در حال کار (agent در حال اجرا):** `AppState.isWorking=true` یک ریزحرکت «جنب‌وجوش دم/پا» را هدایت می‌کند: تکان سریع‌تر پا و جابه‌جایی جزئی هنگام در جریان بودن کار. در حال حاضر پیرامون اجراهای agent در WebChat تغییر وضعیت می‌دهد؛ وقتی کارهای طولانی دیگر را سیم‌کشی می‌کنید، همین تغییر وضعیت را پیرامون آن‌ها هم اضافه کنید.

نقاط سیم‌کشی

- بیدارباش صوتی: runtime/tester هنگام فعال‌سازی `AppState.triggerVoiceEars(ttl: nil)` را فراخوانی می‌کند و پس از 1s سکوت `stopVoiceEars()` را اجرا می‌کند تا با پنجره ضبط هماهنگ بماند.
- فعالیت agent: پیرامون بازه‌های کار `AppStateStore.shared.setWorking(true/false)` را تنظیم کنید (هم‌اکنون در فراخوانی agent در WebChat انجام شده است). بازه‌ها را کوتاه نگه دارید و در بلوک‌های `defer` بازنشانی کنید تا انیمیشن‌ها گیر نکنند.

شکل‌ها و اندازه‌ها

- آیکون پایه در `CritterIconRenderer.makeIcon(blink:legWiggle:earWiggle:earScale:earHoles:)` ترسیم می‌شود.
- مقدار پیش‌فرض مقیاس گوش `1.0` است؛ تقویت صوتی `earScale=1.9` را تنظیم می‌کند و بدون تغییر قاب کلی، `earHoles=true` را تغییر وضعیت می‌دهد (تصویر قالب 18×18 pt که در یک ذخیره‌گاه پشتی Retina با اندازه 36×36 px رندر می‌شود).
- جنب‌وجوش از تکان پا تا حدود ~1.0 با یک لرزش افقی کوچک استفاده می‌کند؛ این حرکت به هر تکان بیکار موجود اضافه می‌شود.

نکات رفتاری

- هیچ تغییر وضعیت CLI/broker خارجی برای گوش‌ها/در حال کار وجود ندارد؛ آن را داخلی و وابسته به سیگنال‌های خود برنامه نگه دارید تا از نوسان تصادفی جلوگیری شود.
- TTLها را کوتاه نگه دارید (&lt;10s) تا اگر کاری گیر کرد، آیکون سریع به حالت پایه برگردد.

## مرتبط

- [نوار منو](/fa/platforms/mac/menu-bar)
- [برنامه macOS](/fa/platforms/macos)
