Viewにリサイズ用のアンカーをつけて、と考えていた。ちょうどDashBoardのいくつかのウィジェットのように。
しかしframeとbounds、Viewの座標系とWindowの座標系とscreen座標系の関係、などなど、知らないことが多すぎてにっちもさっちもいかない感じ。
もう面倒なので、サービスメニューから「ウィンドウ枠を表示する」みたいな選択肢を用意して、それでリサイズ可能、ということにしてしまおう。
あと、BackGroundOnlyで動作させればタイトルバーとリサイズ用のアンカーが表示してあってもそれほど気にならないので、せめてタイトルバーの高さをもう少し低くというか狭くできたらかっこいいかな、と考えてあれこれ調べ始める。
タイトルバーのカスタマイズはstack overflowあたりでもけっこうな質問が上がっていて、みんな考えることは一緒か。で、一般的な結論が
1,透明ウィンドウにして
2,独自のタイトルバーをつけよ(NSViewのカスタムクラスにして)
ってそれじゃあリサイズができんだろうが!
もう少し「NSBorderlessWindowMask resize」とかでググってみる必要があるなあ。
タイトルバーのカスタマイズを考えるにあたって、いくつかのアプリのタイトルバーを調べたら、やっぱApple謹製のアプリはやりたい放題であることがわかった。
純正Twitterアプリ。タイトルバーがウィンドウの左側にはりついている?クローズボタンとかもカスタマイズされているなあ。
MacのAppStore。タイトルバーがない・・・。
そしてGoogleのChrome。
Chormeのtabバーの再実装はすでにいくつかあるようで、身近なところではいつぞや紹介したKodというエディタ用に
chromium-tabs
といったプロジェクトがあったりする。もう少し調査してみよう。
0 件のコメント:
コメントを投稿