Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

feat(widget): dockear al monitor principal por defecto y avisar si el widget queda en otro display

Đang mở
#113 2 bình luận 0 reaction 0 người được giao Xem trên GitHub

Maintainer thường phản hồi trong vòng 1 ngày

Chưa có ai nhận issue này.

Đánh giá

Độ khó
3/5
Thời gian dự kiến
1-2 ngày
Mức phù hợp với người mới
35/100
Loại issue
Tính năng
Độ rõ ràng
Khá rõ ràng
Mức độ hoạt động
Sôi nổi
Công nghệ
rust, typescript
Lĩnh vực
desktop, frontend

Hướng nghiên cứu

Start where the frontend resolves the dock geometry when dockMonitor is null and find the currentMonitor() call that should become primaryMonitor(). The Rust geometry code the issue mentions is the second place to check. Done means a null dockMonitor docks to the primary display, and a notice or re-dock happens when the strip shows on a non-primary display. The issue asks for product review before implementation, so confirm the behavior with the maintainer first.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

Pre-flight checks
  • Busqué issues existentes y no encontré duplicados.
  • Entiendo que esta propuesta requiere revisión de producto antes de implementarse.
Problem to solve

Descubierto durante el port a macOS (#69, verificación M3): con dockMonitor: null, el frontend resuelve la posición del widget con currentMonitor() (el monitor "actual", que depende de dónde esté el cursor/foco) en vez del monitor principal. En un setup multi-display el widget puede dockearse al borde de un monitor externo — incluso uno ubicado fuera de la vista natural del usuario (arriba del principal) — y como la tira en modo peek es una franja fina (~210 px), el widget parece "desaparecido".

Reproducción real: macOS multi-display (Retina principal + externos, uno de 3008×1692 arriba del principal), dockEdge: "top", dockOffset: 0.53, dockMonitor: null → la ventana del widget quedó en y = -1692 (borde superior del externo). En Windows no se nota porque la taskbar vive en el display principal; el dockeo actual nunca tuvo este caso a la vista.

Proposed solution

Dos cambios de comportamiento (ambos acotados al frontend/Rust de geometría ya existente):

  1. Con dockMonitor: null, resolver la geometría contra el monitor principal (primaryMonitor()) por defecto, no contra currentMonitor(). El "actual" queda solo cuando el usuario fijó explícitamente un monitor en Ajustes.
  2. Al mostrar la tira en un display no principal, emitir una notificación/aviso breve ("Quorb está en el monitor X") o re-dockear al principal si el elegido no está visible.
Affected area

Application behavior

Scope and non-goals

Incluye: default de monitor para el dockeo, aviso/redock de seguridad. No incluye: soporte de widget simultáneo en varios displays, gestión de perfiles por display, cambios de estilo del widget, ni la validación del port macOS (eso sigue en #69 / PR #112).

Alternatives considered
  • Dejar el comportamiento actual y solo documentarlo: descartado, el "widget invisible" es una mala primera experiencia en multi-display.
  • Recordar el último monitor por coordenadas de ventana en vez de por nombre: frágil si cambia la disposición de displays; el nombre + fallback a principal es más estable.
Ngôn ngữ chính
TypeScript
Star
10
Fork
2
Merge trung bình
3 giờ 54 phút
Pull request đã merge (30 ngày)
94

Chuẩn bị môi trường

Dự án này không cung cấp dev container, Dockerfile hay hướng dẫn đóng góp, nên bạn cần tự thiết lập môi trường: hãy bắt đầu từ README và xem hướng dẫn đóng góp lần đầu của chúng tôi để biết các bước chung.

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của egdev6/quorb

Tất cả issue của egdev6/quorb

Issue tương tự

Thêm issue về TypeScript

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.