1 ポイント 投稿者 GN⁺ 27 일 전 | 1件のコメント | WhatsAppで共有
  • MacBookのノッチデザインによってメニューバーアイコンが隠れてしまう問題を解決するため、Tailscale は新しい macOS向けウィンドウ型インターフェース を導入
  • 当初はアイコンがノッチの後ろに隠れたときに ポップアップ通知 を表示する暫定対応を使っていたが、現在は完全な スタンドアロンUI へ移行
  • 新インターフェースは バージョン 1.96.2 からデフォルトで有効化され、TaildropExit Nodeデバイス検索 などの主要機能を視覚的に提供
  • メニューバーアイコンの 隠蔽検知ロジック は引き続き維持されており、ユーザーがアイコンを見つけられない問題を防止
  • 今回の変更は macOS のユーザー体験を改善し、今後は Windows向けの類似UI 開発へと拡張される予定

MacBookのノッチ問題とTailscaleの新しいmacOSインターフェース

  • Tailscale はユーザーのすべてのデバイスを接続する際、ほとんど見えない形で動作すべきだが、一部の MacBookのノッチデザイン によってメニューバーアイコンが消えてしまう問題が発生
  • これを解決するため、暫定通知方式と 新しいmacOS向けウィンドウ型インターフェース という2つのアプローチが導入された
  • 当初はアイコンがノッチの後ろに隠れた際にユーザーへ通知を表示する方式が使われたが、その後完全な スタンドアロンUI が追加され、アクセシビリティと機能性が向上
  • 新インターフェースは バージョン 1.96.2 からデフォルトで有効化され、TaildropExit Nodeデバイス検索 などの主要機能を視覚的に提供
  • この変化は macOS のユーザー体験を改善し、今後は Windows向けの類似UI 開発へとつながる予定

ノッチによるメニューバーアイコン問題

  • 2021年モデルの MacBook Pro 以降、画面上部中央にノッチが追加されたことで、メニューバーアイコンがノッチ領域に隠れる現象が発生
    • メニューバーに表示するアイコン数が多い場合、一部のアイコンがノッチの後ろに消えてクリックできなくなる
    • macOS はこの状況に対する 通知、オーバーフローメニュー、アイコン再配置機能 を提供していない
  • Apple はいくつかの間接的な解決策を提供しているが、完全ではない
    • システムアイコンを Control Center に移動する
    • Scale to fit below camera」オプションで画面比率を調整する方式
  • ICEBartender のようなサードパーティ製アプリでメニューバーアイコンを管理できるが、追加の複雑さやリソース負担がある
  • Tailscale のエンジニアは「メニューバーアプリとして登録すると macOS が位置を任意に決めるため、開発者は制御できない」と述べている
  • ノッチ導入後、ユーザーは「Tailscale が実行されていない」と報告したが、実際には アイコンがノッチの後ろに隠れていた

アイコン検知とユーザー通知機能

  • macOS の occlusionState データを活用して Tailscaleアイコンが隠れているかを検知 可能
  • アイコンが隠れた状態でも ポップアップメッセージ を表示してユーザーに通知
    • メッセージ内容: 「Tailscaleアイコンがノッチの後ろに隠れています。ほかのアイコンを整理または削除してください。」
  • この警告は完璧ではなく、画面切り替え、ノートPCのふたの開閉、外部モニター接続 などによって誤表示される可能性がある
  • それでも一定期間、「Tailscale の設定を見つけられない」問題を緩和する役割を果たした

Swiftコードベースのノッチ検知ロジック

  • アプリが隠れた際にそれを検知する Swiftコード を実装
    • NSWindow.didChangeOcclusionStateNotification を監視してアイコンの可視状態を確認
    • occlusionState.contains(.visible) の値が false の場合、アイコンが隠れたと判断
  • 新しいウィンドウ型アプリではこのコードは不要だが、Dockアイコンを隠すオプション を有効にすると引き続き動作可能

新しいmacOS向けウィンドウ型インターフェース

  • Tailscale 1.96.2 からデフォルトで有効化された ウィンドウ型UI は、メニューバーアプリとあわせて実行可能
    • Dock や Spotlight 検索から起動可能
    • Tailnetデバイス一覧接続状態ファイル転送(Taildrop)Exit Node選択 などの主要機能を視覚的に提供
  • 主な機能項目
    • デバイス検索と接続状態の表示

    • Ping、IPコピー、Taildrop送信機能

    • 遅延・性能・位置に基づく推奨Exit Node

    • Dockアイコンの赤い点表示によるエラー通知

    • 最小化された「ミニプレーヤー」モード

      • インストールまたはアップデート時に機能ツアーを提供
      • ユーザーフィードバックを収集してインターフェースを改善中で、Windows向けの類似UI も開発中
      • Tailscale は機能的な効率性とともに 「機能的な遊び心(functional whimsy)」 を維持する方向性を強調

1件のコメント

 
GN⁺ 27 일 전
Hacker Newsのコメント
  • ノッチのせいでメニューバーアイコンが隠れてしまう問題は本当にひどい
    毎週何時間も、アプリが起動しないとかインターフェースがないと苦情を送ってくるユーザーのメール対応に時間を無駄にしている
    FAQでも解決できず、返金要求やチャージバックにまで発展して損害が大きい
    最近、兄が作った PiPiri というシンプルなPiPアプリを公開したが、最初の2日で半分が返金された。アイコンが多すぎてアプリが見えず、動いていないと勘違いされたためだ
    以前はBartenderアプリがこの問題を緩和してくれていたが、macOS Tahoeの内部API変更で完全に壊れた
    Appleはこの件をもっと上手く処理すべきだった

    • Appleの立場では、サードパーティ開発者がメニュー項目を誤用していると見ている
      もともとはAppleだけがメニューエクストラを追加でき、開発者はMenuCrackerのような非公式ツールを使うしかなかった
      後になって公式APIができたが、それはアプリ実行中にだけ一時的に表示される一時的なメニュー項目向けだった
      そのためAppleはこれをバグではなく開発者の責任だと見ている
      個人的には、Control Centerの拡張機能を提供して、常駐アイコンはそちらへ移せるようにするのがよいと思う
    • アイコンが多すぎるならオーバーフローメニューに入れればよい
      Windowsは何十年も前からシステムトレイのオーバーフローメニューで解決しており、ブラウザーも拡張アイコンを隠せる
      macOSはただ静かにアイコンを隠してしまうので、ユーザーは何かが隠れたことに気づかない
    • お兄さんのアプリを探していたところで、以前はHeliumを使っていた。一度試してみようと思う
    • Appleがこの問題を知っていながら直さない理由が気になる。何か合理的な理由でもあるのだろうか?
    • アイコンが多すぎるユーザーはサポートコストが高いので、その比率を見て価格を調整する必要があるかもしれない
  • 新しいMacを買うたびに、メニューバーのアイコン間隔を詰めるコマンドを実行している
    こうすると2倍以上多くの項目を表示できる

    defaults -currentHost write -globalDomain NSStatusItemSpacing -int 2
    defaults -currentHost write -globalDomain NSStatusItemSelectionPadding -int 2
    
    • macOSは「ただ動く」と言われるが、その言葉も空しい。結局いろいろなコマンドやアプリを入れないと実用的にならない
    • macOS 26.3(Tahoe)ではこのコマンドは動かないようだ。何か変わったらしい
    • ずっと良くなった、ありがとう
    • 既定値に戻す方法も知りたい
  • Appleがこの問題をいまだに直していないのが理解できない
    Tailscaleのような大きな会社がこんな問題を回避しなければならないというのは、Appleのソフトウェア管理のずさんさを示す事例だ

  • まだアイコンがそれほど多くないので経験はないが、本当にノッチの後ろにアイコンがそのまま消えるのか?
    Windows XPですら25年前に解決した問題なのに、macOSがこれをできないとは品質低下が深刻だ

    • 実際にこの問題を抱えている。だが文句を言うと「不要なアイコンを隠せ」としか返ってこない
      関連議論はこちら
    • その通り、何の表示もなくただ隠れる
    • Appleがこんな基本的なことを処理しないのは衝撃的だ
    • これは特殊なケースではなく、予測可能な状況だった。設計のまずさ、あるいは無能の結果だ
    • 自分はRiderを使うときに経験した。テキストサイズを大きくしていたせいでメニューが多くなり、標準のmacOSアイコンが隠れてしまった
      Riderのウィンドウから外れないとアイコンが見えない。スクリーンショット を参照
  • 自宅ネットワークにリモート接続する今どきの方法を探している

    • 自宅サーバーへのアクセス
    • 海外から米国のTVストリーミング視聴
    • 非技術者の家族でも簡単に接続できること
    • Linuxサーバーが起動時に自動接続すること
      こうした要件を満たすには、おそらくTailscaleが中心になりそうだ
    • 自分はUnraid NASでTailscaleを使ってうまく運用している。各コンテナにホスト名も自動で付く
      無料ティアの上限にもまだ余裕があり、Mullvad連携も問題ない
    • Tailscaleですべて可能だ。米国内のデバイスをExit Nodeに設定し、他のデバイスがそれ経由でプロキシするようにすればよい
    • 自分は単にWireGuardで直接つないでいる。中間段階を増やす理由がない
    • 家族をTailnetに招待してExit Nodeを設定すれば終わりだ。本当に簡単
    • 家族それぞれに別アカウントを持たせるべきか悩んでいる。今は自分のアカウントでログインしたままだが、ログアウトされると再度ログインさせる必要があり面倒だ
  • 複数のアイコンを一つにまとめて隠せるMacメニューバーマネージャー Ice を勧めたい

    • 自分は Hidden を何年も使っているが、シンプルで完璧に動作する
    • 最近はThawというフォーク版が頻繁に更新されている
    • KDEにはこの機能が標準で含まれている
  • 昨日GCP VMにTailscaleをインストールしてルート広告を有効にしたところ、インスタンスにはpingできるがパケットロス率が高い
    SSHトンネルは問題なく動くので、Tailscale側の問題に見える

  • VPNの代替を探していてClaudeAIに聞いているうちにTailscaleを知った
    古いWindows環境でもすぐに動作し、設定も簡単だった
    両親のPCをリモート管理する用途にも完璧なツールだ

    • 自分もそうしている。家族のiMacにTailscaleをシステムデーモンとしてインストールし、ログイン前でも動くようにしている
      GUIがないので、ユーザーのミスで無効化されることもない
      インストール方法は公式Wikiを参照
  • 会社用MacにVPN、MDM、カレンダー、バックアップなど複数のアプリを入れると、このバグはすぐ表面化する
    致命的ではないが、macOSがいまだに公式オーバーフローメニューを提供していないのは驚きだ

  • LinuxユーザーとしてGUIアプリは好きだが、TailscaleはCLIしかなくて残念だ
    単純なトレイアイコンですらバグの多いGNOME拡張に依存しなければならない
    エコシステムが分散しているので理解はするが、いつか改善されてほしい