【macOS】SwiftUIのSettingsで、TabViewを切り替えたときにタブごとにウィンドウサイズを変える

Macのメニューバーに常駐するノートアプリ「Mizuame」を個人で開発・公開しています。 MizuameAkira Nakamuraユーティリティ無料apps.apple.com このアプリの設定ウィンドウ(よくcommand + , で出るアレ)はTabViewで実装しているのですが、各タブの内容に…

Swift UIのSettingsLinkで設定を開くと、画面が最前面にならない

以前に投稿したこちらの記事では、私個人で開発しているMacアプリで、macOS 14から使うことができるSettingsLinkの対応を行いました。というのも、macOS 14からは設定画面を開く仕様が変更され、SettingsLinkを使用しなければならないからです。 a3colorr.ha…

MacのUnrealEngine5で新規作成したばかりのプロジェクトが開なかった

今まではUnityを触っていたのですが、Unreal Engineに乗り換えようとしています。 そこで、とりあえずHello Worldをしようと、Unreal Engineをインストール、新規プロジェクト作成を行ったのですが、その新規作成したばかりのプロジェクトをUnreal Engine Ed…

SwiftUIのTextFieldに入力できる数値の最大値と最小値を設定する

個人で開発しているオープンソースのMacアプリMizuameでTextFieldに数値の入力制限を設けたのですが、間抜けな実装をしてしまったのでうまく動作せず、バグありのままAppStoreにリリースしてしまいました。macOS 13.xのときは動作していたはずなのですが、ma…

SwiftUIでmacOS14から利用できるSettingsLinkの背景色を変更する

macOS 14.xで設定画面を開く仕様が変わりました。 macOS 13.xではNSApp.sendAction()でshowSettingsWindow:を呼ぶことで設定画面を開いていましたが、macOS 14.xではSettingsLinkを使って設定画面を開きます。 下記は使い方の例です。 // macOS 13.x Image(s…

Windows11でHomeからProへアップグレードするのが簡単になっていた

久しぶりにWindows PCを買った 今までVMwareでWindowsをインストールして使っていましたが、Windows PCが単体で必要になったのでSurface Laptop 5を買いました。 その前に買ったのは、15年くらい前のWIndows 7時代に買ったWindows PCです。ほぼ同時期に、App…

Macの起動時にアプリも一緒に起動させる

Macで必ず使うアプリ Macで起動したときに、必ず立ち上げる・必ず使うアプリが誰しもにあると思います。それはSafariだったりターミナルだったりするかと思います。 私の場合は、メニューバーに置いておくタイプの自作ノートアプリMizuameです。 MizuameAkir…

Macのメニューバーに表示するノートアプリ「Mizuame」を作りました

Mizuame はメニューバーに置いておくノートアプリです よくあるメモアプリ・ノートアプリは、ランチャーからアプリを開いて、他のアプリのウインドウと並べながら使います。これはMacにしてもWIndowsにしても同じです。 一方、このMizuameというノートアプリ…

Tauri+Sycamoreで、sycamore-routerを使って画面遷移する

前回はTauri+SycamoreでYAMLの読み書きを実装しました。 今回は画面遷移を実装してみます。 前回はこちら a3colorr.hatenablog.com 基本的には公式ドキュメントのRoutingページをなぞれば実現できるのですが、一部の説明とサンプルコードに誤りがあるようで…

Tauri 1.3にアップデートしたらtokio関連のエラーが出るようになった

先日、Tauri 1.3がリリースされました。 tauri.app そこで、今使っているTauri 1.2を1.3にアップデートしたのですが、 既存アプリをcargo tauri devで起動させると、tokio関連のエラーが出るようになってしまいました。 ちなみに、tokioとはTauriで利用され…

SwiftUIで、Listに配置したTextFieldで日本語入力するとカーソルが文末へ勝手に移動する

環境 macOS 13.3.1 Xcode 14.3 TextFieldの日本語入力を確定するとカーソルが勝手に文末へ移動する Mac向けのアプリで、Listの行としてTextFieldを配置するようなUIをSwiftUIで実装しました。 そして、動作確認でTextFieldに日本語を入力してエンターキーで…

Tauri+SycamoreでYAMLの読み込みと書き出しをする

前回は、Tauri+SycamoreでHelloWorld(UIもほんの少しだけ変更)しました。 次は、ファイルの読み書きを行い、データを保存してみます。 前回はこちら a3colorr.hatenablog.com 環境 Macbook Pro M1 pro macOS 13.3.1 rustc 1.68.2 tauri-build 1.2 やること…

Tauri+Sycamoreをインストールして、ほんの少しUIを変えてみる

環境 Macbook Pro M1 pro macOS 13.3.1 Tauriとは? TauriはRustで開発されているGUIフレームワークで、Windows、macOS、Linux向けのデスクトップアプリを開発できます。アプリはバックグラウンドはRustを使用し、フロントエンドは既存の多様なフロントエン…

MacでHomebrewを通常ユーザで使いたくてやったこと

PC環境 Macbook Pro M1 pro macOS 13.3 初めてHomebrewが必要になった Homebrewの存在と何をするものかは知っていたのですが、今までHomebrew経由で何かをインストールしないといけない状況にならなかったので、Homebrew自体をインストールしていませんでし…

SwiftUIのNavigationSplitViewで、サブViewにObservedObjectを渡す

さいしょに MacOS向けのアプリをSwiftUIで作っていて、グループリスト > コンテンツリスト > 詳細と3セクションに分けることにしました。各セクションのViewはサブViewにして、ObservedObjectとしてデータを渡すことにします。 NavigationViewは非推奨にな…

RubyXLでセルに数式を入れてファイルを作成したら「ファイル破損エラー」が出た

Excelファイルの作成や編集などを行えるRuby GemのrubyXLを使って、予め用意したYAMLファイルを元にして、Excelに表を作ろうとしました。 rubyXL:RubyGems rubygems.org rubyXL:Github github.com しかし、作成したExcelファイルを開くと「ファイル破損エ…

Githubリポジトリでブランチのプロテクトを有効にする(自分ひとりで運用する)

Githubのリポジトリで、mainブランチへ直接pushできないようにします。 Githubのリポジトリを見に行くと「あんたのmainブランチ、守られてないよ?」と言ったメッセージが以前から出ていたものの、何もせずに放置していたのですが、そろそろプロテクトを掛け…

手元のMacbook Pro + iPad AirでSidecarが復活した

実はSidecarが登場した2019年後半から2020年前半頃、Macbook Air(macOS Catalina)+ iPad Air(iPadOS 14)で使用できていました。 しかし、2020年に登場したM1チップ搭載のMacbook Pro(macOS Big Sur)に飛びついてからは、手元の環境ではSidecarを使って…

Google Pixel WatchでLINEを使えるようにする

(2023.11.25 追記) Pixel Watch2でも同じ手順でインストールできます。(Playストアは日々バージョンアップされているので表記が違っているかもしれません) Pixel 7に機種変更したときに、Pixel Watchも一緒に買いました。人生初のウェアラブルデバイスと…

Apple Silicon Macをセーフモードで起動する

Intel Macと違うセーフモード起動の手順 Intel Macだと、電源ONと共にShiftキーを押しっぱなしでセーフモード起動できるのですが、Apple Silicon Macは違います。 手順は以下の通りです。 Macをシャットダウンする(完全に電源を落とす) Macの電源ボタンを…

Android StudioでCannot obtain the application IDエラーが出た

AndroidStudio上で git pull したらCannot obtain the application IDエラーが出た AndroidStudio上で Update Project(git pull)をしたところ、下記のエラーが突然出ました。 Run/Dubug Configurationsダイアログにエラーメッセージが出ていました。 Error…

Xcode+XCTestで独自クラスのテストでエラーになった

開発環境 Xcode 13.3.1 Swift 5 Target:iOS 15.4 標準のXCTestでテストケースを書いて実行したらエラー 作っているiOSアプリで独自クラス(以下、ClassDoggo)を定義して、そのテストケースを標準のXCTestで書いたのですが、ビルドエラーとなってしまいまし…

VMware Fusion 12 PlayerにWindows10をUSBからインストールする

背景 Windows10環境が必要になったので、VMware上にIOSイメージからインストールしようとしました。Microsoftの公式ページを見る限りWindows10のISOイメージを手に入れるには、専用ツールをダウンロード&インストールしてIOSファイルを自前で作成するみたい…

本を買ったとき、まずどうする?

気になった本をとりあえず買っている あいかわらず本は紙派なので、気になった本はとりあえず買っています。 値段の問題で、AmazonやYahooショッピングのカートに入ったままになっている本もあります。 ただ、四六時中、本を読んでいるような生活ではありま…

Androidアプリの紹介「電話が切れたら振える」

電話が終わった時に、スマホが分かりやすい反応をしてほしいと思ったことはありませんか? このアプリを使えば、電話が終わった時にスマホが振動する機能を、あなたのスマホ に追加することができます 設定はカンタン アプリを起動して、パターンを選ぶだけ…