モノトーンの伝説日記

Apex Legends, Splatoon, Programming, and so on...

Development

iOS 16 リリースでようやく 320pt で確認しないでいいと思っている、そこの開発者の方へ。

結論から言うと、320ptから逃げることはできない!!

NavigationLink + Object 生成パターンの注意事項

もしかすると、画面が表示されなくてもオブジェクトが残っていて副作用が発生するかもしれません。 素晴らしき解決案: stackoverflow.com 1. 新しく ViewModel を生成し直すパターンなどは注意 2. よくわからんが要素数は 7 3. こねくり回して挙動を研究して…

<mini> watchOS の PUICNavigationBar のデバイスごとの設定値

watchOS 8.0 のシミュレーター(2021/11/23 現在、12/29 修正)で調査したので、置いておきます。

watchOS 7+ 向け SwiftUI「BorderedProminentButtonStyleCompatible」「EdgeCircularButtonStyle」の公開

watchOS アプリが増えて欲しいため、色々と要素を公開しようと思います。 もっとこうするといいよ! みたいなのがあるなら、コメントで。 1. BorderedProminentButtonStyleCompatible 2. EdgeCircularButtonStyle 3. ソースコード

<mini> watchOS の ASWebAuthenticationSession には不具合がある?

Apple Watch の OAuth ログインの簡易報告

<mini> Keychain の落とし穴

Keychain でテストコード書いてたら、めっちゃ上手くいかなくて、落とし穴結構ハマりましたw 1. kSecClass によって保持できる値が違う 2. データだけ欲しい場合、CFDictionary 型ではなく、CFData 型で帰ってくる。 3. watchOS では iCloud で同期できない…

<mini> SwiftUI + Combine (@Published) でメモリーリーク

※ SwiftUI 2.0 の iOS 14+, macOS 11+ (Big Sur / Monterey), tvOS 14+, watchOS 7+ のみ解決方法を掲載します。 サンプルコード

HttpParameterKit とかいうよくわからないもの作った。

どこに需要があるのか全くわからない。 github.com 1. 勝手にいい感じに条件で分けて、勝手にいい感じにデフォルト値のフィルターしてくれる子 2. 3 日ぐらいで書いた 3. 色々と危うい実装 最後に

<mini> watchOS 7 系でのみ発生する不具合

ウワアアアアアア。 SwiftUI は実質 2.0 の iOS 14+, watchOS 7+, tvOS 14+, macOS Big Sur ではあるが… toolbar の例 UIImage のロード例 最後に

<mini> watchOS の SwiftUI の Slider の純正実装があまりにも残念すぎる件

んー、クオリティー低いとしか… 想定される使い方 1. Form 直下に配置 2. Form の Section 下に配置 しかも

<mini> `View.onReceive(_:perform:) on watchOS 8 isn't working.` / watchOS 8 で `View.onReceive(_:perform:)` が正常に動作しない

実験してたらまさかの watchOS 7 では正しく動くという。 onAppear や onDisappear が呼ばれないケースはみなさんご存知 どうやって対処しようか…… 追記: 一連の問題発生に関して さらに追記: 解決編

<mini> Apple Watch の 40mm ケースの safe area は watchOS 5 の実装時からガイドラインと違うものだった模様。

オリジナルのタイトル名: Apple Watch の 40mm ケースの safe area が watchOS 8 から変更されている模様。 Minimum layout margins が 8pt から 8.5pt にたぶん増量です 詳しく調べていないですが、たぶん watchOS 7 からの変更(もし間違っていたら情報お…

<mini> iOS 15 からアプリごとに Dynamic Type の設定を変えることができるようになったようだ

コントロールセンターからアクセスすると、簡単に設定できる。

また Webkit (Safari) の position: sticky のバグっぽい挙動を発見してしまったようだ

ハハハ。さすがに草。 1. 条件によって挙動が異なる。 2. table > tr > th/td 構造 3. table > thead/tbody > tr > th/td 構造 4. table > thead/tbody/tfoot > tr > th/td 構造 まとめ

MediaWiki で使える Lua で書いた tableutil の話。

結構いい感じだと思います。 1. table と graph を合わせた表 2. Lua で生成 3. ドキュメント 3.1 [Class] Cell (root) Cell.new(name, opts) 3.2 [Class] ValueCell: Cell ValueCell.new(name, dataIndex, opts) 3.3 [Class] RankCell: Cell RankCell.new(n…

Windows 10 の仮想デスクトップ関連 API について,21H2 で変更が入ります

一応メモもかねて。 動作検証はしていません。これから実装も含め検討します。整理を兼ねてとりあえず公開記事に。 また,リオーダー機能や仮想デスクトップごとの壁紙変更機能については公式 Insider Blog をご覧ください。 blogs.windows.com 1. 検証結果 …

ブログテーマ「Superliner」を公開しました

タイトルの通りです。 blog.hatena.ne.jp 1. 不具合は粗方取り切ったつもりです 2. 今後のアップデートに関して 3. 対応したパフォーマンス面の話 3.1 contain 3.2 overflow: clip 最後に

新しいブログテーマ「Superliner」を作成しました

OSのダークテーマ設定に対応した線を基調とするはてなブログのテーマ「Superliner」に関する記事です。

WebKit ベース (Safari) ブラウザーで「device-pixel-ratio: 3」のデバイスで,table の td 要素に対する小数点境界線が正しく表示されない問題

整理しつつ,問題について。公式に投げた方がいいのですかね? 1. 再現環境 2. 不思議な事案 3. 再現条件とテストコード まとめ

【自作PC①】9 年ぶりに自作 PC の準備中。

前の PC 振り返りつつ,新しく組もうとしてるのを紹介。 1. 前の PC 1.1 初期構成 1.2 第1メンテ: 2016/4/10 1.3 第2メンテ: 2017/3/14 1.3 第2メンテ: 2017/9/27 1.4 その他 2. 新規 PC 3. 組もうと思った意図 最後に

iPhone 12 mini を購入する際の画面サイズの注意点

久々のダウンスケールがあります。 1. iPhone 12 mini は今までの iPhone シリーズの中で,最も情報量が多く表示される 1.1 Plus を除く液晶パネル (以降 LCD) 搭載 iPhone はすべて同じ情報量のまま画面サイズだけが変わっていた。 1.2 Plus 系列と有機EL …

<mini> WPF で手動で Per-monitor DPI を取り扱っている場合の注意点。

テキストレンダリングにポイント。

Windowsの近代的なHighDPIについて自分なりにまとめてみる。

SylphyHorn を Per-monitor DPI 対応しようとしたら,Per-monitor DPI に不具合があってさらに調査進めていたらめっちゃ不具合見つかるという…… .NET Core 3.1 WPF でも Per-monitor DPI に不具合あるっぽいし,いろいろ不具合見つかる模様… 1. Per-monitor …

Desktop Window Manager によって管理される DirectComposition の歴史

DWM の DComp について調べていたらもうそれが結構地獄でした。 Windows NT 6.2 時代に必要に応じて作られたものの,紆余曲折あり断片化と言った感じ。現状では歴史的経緯により Windows Runtime がメインになっている模様。 1. DirectComposition とは? 2.…

『WPFでカスタムウィンドウを作るのに人類は奮闘してきた』最終回(簡易コード付き)

前回の記事を読んでない人はまず読んできてください。 mntone.hateblo.jp 実はこの方法,タスク バーの移動ができない(ウィンドウサイズ調整に追従できない)んですよね…… 1. WindowChrome (WindowChromeWorker) で実現していること。 2. Windows 95 からあ…

『WPFでカスタムウィンドウを作るのに人類は奮闘してきた』(カスタムウィンドウ最大化問題) 序章

HAHAHA。なんでなんやろ,歴史調べたら人々が奮闘してきたのがわかる。 1. この原因を調べるきっかけ。 2. 人々の歴史。 2.1 回避方法 1: ハードコード 2.2 回避方法 2: インテリジェンス 3. やっぱり自動で隠れるタスク バーがひらけない。 まとめ おまけ

WICの対応フォーマットの判定(C#)

〈更新履歴〉2021/5/28: AVIF 対応のビルド番号判定追加及び,Build 19041 (2004), 19042 (20H2), 19043 (21H1) 向け hotfix KB5003214 で拡張子 `.hif` に対応したことによる拡張子の追加に対応 WIC (Windows Imaging Component) で WebP や HEIF (AVIC, HE…

SylphyHorn に実装したら良さそうな機能(考えたことを書きます)

1. 仮想デスクトップに名前が割り当てられたが…… 2. ならば条件分岐を取り込めば良いのでは? 3. 結論: 仮想デスクトップの名前,自動化は今の Windows にはあったら便利そう

System Menu のテーマ切り替えに不具合? (1909/2004 のみで確認済み; 回避策掲載済み)

1. 特定の AppMode 切り替えの場合,正常に AppMode が切り替わらない。 2. Win32 の Dark Mode 実装の参考に まとめ

Windows 10 2004 (20H1) で追加された `IVirtualDesktopNotification2` について

一応参照しやすい形としてブログに残しておきます。 1. IVirtualDesktopNotification との違い 2. 仮想デスクトップの名前の取得および設定に関して 最後に