9
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

新型MacBook Proのノッチをいち早く体験してみた

Last updated at Posted at 2021-10-20

Apple から新型 MacBook Pro が発表され、iOS エンジニア界隈は盛り上がりましたね。新型 MacBook Pro は高性能な M1 Pro チップやさらに高性能な M1 Max チップが搭載されたり、Touch Bar が立場を失ってリストラされたり、高品質なスピーカーが搭載されたり、HDMI ポートや SD カードスロットが復活したりと様々注目ポイントがありますが、パッと見でもわかる変化としては iPhone のようにディスプレイにノッチが採用されたことが大きいのではないでしょうか?

ということで、世界的に見ると何番煎じかわかりませんが、例に漏れず私も macOS アプリ開発者の端くれとしてノッチが体験できるクソアプリを作って体験してみました。

iNotch

demo.png

Releases からアプリをダウンロードして試せます。

技術要約

  • NSScreen.main.frameで画面の中央上部の座標を算出
  • NSPanelで最前面に透明なウインドウを固定
    • styleMask[.borderless, .nonactivatingPanel]を指定
    • level.popUpMenuに指定
    • hasShadow = falseでパネルの影を消す
  • NSViewNSBezierPathを描画してノッチを再現
  • ノッチへのクリックをmouseDownで取得してCombinePassthroughSubjectを使ってイベント伝搬

所感

ノッチは結構威圧感があって邪魔ですね 😅
Swift Combine の練習としては良かったと思います。

  • item
  • item
  • item "
"
9
4
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
9
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?