Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

Win+D (Show Desktop) does not hide the overlay - decide normal vs topmost window

オープン
#1 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

評価

難易度
5/5
見積もり時間
1週間以上
初心者へのやさしさ
35/100
issue の種類
機能追加
明瞭さ
説明が足りない
活発さ
活発
技術スタック
python
領域
desktop

調査の方向性

まず、現在の最前面 overlay を使用した Windows 上での Win+D の動作を再現し、Win+M およびタスクバーの「デスクトップを表示」アクションと比較します。通常のウィンドウ、キーボードフック、ハイブリッドの各オプションを、タスクバー、Alt+Tab、すべてを最小化、overlay の使用に対して評価します。完了の条件は、1 つの動作を選択して文書化することです。

索引モデルが issue の本文から書いたものです。

説明

Problem

Pressing Win+D (Show Desktop) does not hide the PlotRuler overlay along with other windows — it stays visible floating over the desktop.

Why

Windows implements Show Desktop by raising the desktop above everything in the window stack, but it explicitly cannot cover always-on-top (topmost) windows. PlotRuler is topmost by design (it's an overlay that must float above the graph being read), so the OS can't hide it natively on Win+D without dropping that flag.

WS_EX_TOOLWINDOW is not the blocker; WindowStaysOnTopHint (WS_EX_TOPMOST) is the reason it stays up.

Options considered

  1. Intercept Win+D / Win+M with a Win32 low-level keyboard hook, then hide the overlay to the tray. Keeps it topmost for reading graphs, disappears on show-desktop like a normal window. Slightly more Win32 code to maintain (hook lifecycle, edge cases like the taskbar "Show Desktop" button, which a keyboard hook won't catch).
  2. Drop the always-on-top flag and make it a fully normal window. Simplest and most predictable — appears in taskbar / Alt+Tab, hides on Win+D. But it no longer floats above other apps, so reading over a graph requires bringing it forward manually. This conflicts with the core overlay use case.
  3. Hybrid: keep topmost for the reading overlay, but respond to Win+D/Win+M by hiding to tray via a hook.

Other "normal window" behaviors

While here, this is a broader question: the overlay currently does not behave like a normal window for several OS operations. The issue is to decide how far to go toward "normal window" semantics (taskbar/Alt-Tab presence, minimize-all behavior, etc.) versus staying a specialized always-on-top tool.

Decision

Undecided — needs more real-world testing of the current topmost behavior before choosing. Filing to track the tradeoff and revisit.

主要言語
Python
スター
1
フォーク
0
PR マージ指標
30日以内にマージされた PR はありません

環境構築

このプロジェクトの環境構築ファイルはまだ確認していません。まず README を読み、一般的な手順ははじめてのコントリビューションガイドを参照してください。

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

endolith/plotruler のほかの issue

endolith/plotruler の issue をすべて見る

似ている issue

Python の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。