Releases: Fuku856/AXIS-Alert-Receiver
Release list
v2.0 - PySide6へのUI全面移行とデザイン・操作性の大幅改善
概要
GUIフレームワークをPySide6 (Qt) へ全面移行し、デザインのモダナイズとパフォーマンス・操作性を大幅に向上しました。
主な変更点
UI/UX の大幅な改善
- ダークモード / ライトモード対応: 洗練されたUIテーマを導入し、両モードに完全対応
- カスタム通知(ToastNotification): スムーズなアニメーション付きポップアップ通知を実装
- ホバー中は自動クローズを一時停止
- 高さ上限と pending キューによる複数通知の順次表示
- ポップアップ自動クリア時間を設定画面から変更可能
- 設定画面(SettingsWindow)の刷新:
- トークン入力欄にパスワードモードと表示/非表示トグルボタンを追加
- ポップアップ自動クリア時間設定のコンボボックスを追加
- ログ画面(LogWindow)の刷新:
- Ctrl+F で検索バーを表示(全件ハイライト・上下ナビゲーション・件数表示・クリアボタン)
- チャンネル別カラーでのログ表示
- 5000行超えで先頭500行を自動トリム
- トレイアイコンへの接続状態表示: 緑 / 黄 / 赤のカラードットで接続状態を重畳表示
- イベント駆動アーキテクチャ: Signal/Slot によるUIスレッドとバックグラウンド処理の堅牢な連携
バグ修正
- チェックボックスのチェックマークが表示されない問題を解消(システム一時ディレクトリを利用した画像キャッシュ方式へ変更)
message_dataが文字列で渡された際のAttributeErrorクラッシュを防止- ポップアップ移動アニメーション中に閉じた際のアニメーション競合を修正
- ポップアップ通知の位置計算・キュー処理・テーマ適用バグを修正
- テーマ設定の大文字/小文字不一致によりDarkテーマが反映されない問題を修正
- URL バリデーションを追加(http/https のみ許可)
破壊的変更
- GUIフレームワークが tkinter から PySide6 (Qt) に移行されました。依存パッケージの更新が必要です。
pip install PySide6
v1.4.1
feat: 速報受信時のログ画面自動表示を設定できるオプションを追加 (#35)
- feat: 速報受信時のログ画面自動表示を設定できるオプションを追加
- configに
auto_open_logオプションを追加。 (デフォルトはオフ) - UI設定タブに「受信時にログ画面を自動表示する」設定を追加。
- オプションが有効な場合のみ、受信時にログ画面を表示するよう修正。
- 設定保存時にオプションの状態を保存するように変更。
- Update ui_manager.py
タブの名称の不整合を修正
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
- README.mdを更新
v1.4
feat: アプリ更新の自動確認機能とUI設定を拡張 (#34)
- feat: アプリ更新の自動確認機能とUI設定を拡張
- 起動時および定期的なバックグラウンドでの更新確認機能を追加
- 設定画面に「更新設定」セクションを追加(起動時確認の有無、確認間隔の設定)
- 「アプリについて」タブで最新バージョンの場合は
(最新)、そうでない場合は(アップデートあり)と表示する機能を追加 - 「更新情報」タブに切り替えた際、自動で最新のリリース情報を取得するように変更
- 設定状態を保持するため
config.pyに更新確認関連のプロパティを追加
- feat: ローカルデバッグ(開発版)用の挙動と設定ファイル管理を改善
- 開発版(dev/vdev)の実行時は専用の
config_dev.jsonを使用し、起動・終了時に自動で削除・リセットされる仕様に - 「アプリについて」タブで開発版の場合はバージョンの末尾に
(開発版)と表示するように - 開発版での手動更新確認時、予期せぬエラーを防ぐための警告ポップアップを表示するように
- 開発版での自動更新チェック(バックグラウンドorタブ切り替え時)を、通信を行わずサイレントスキップするように
-
add config_dev.json
-
refactor: UIの更新確認処理とタブ判定ロジックをリファクタリング
messageboxのインポートをメソッド内からファイル先頭の標準インポートセクションに移動(PEP 8準拠)- タブの切り替え判定を文字列依存からウィジェット参照(
self.tab_updates)を利用する方式に変更し、堅牢性を向上 - 更新情報の取得状態を管理する内部フラグ(
self._update_info_fetched)を導入し、UIの表示文言への依存を排除
v1.3.2
fix(installer): インストール・更新フローの改善とアプリ終了エラーの解消 (#31)
- fix(installer): インストール・更新フローの改善とアプリ終了エラーの解消
- Inno SetupのRestart Managerがアプリを自動終了できずにエラーになる問題を解決するため、インストールおよびアンインストール開始時に
taskkillを実行してプロセスをバックグラウンドで強制終了する処理を追加。 - インストール完了画面の「Readmeを表示する」オプションを廃止し、「更新情報を表示」チェックボックス(デフォルトはチェック無効)を追加。
- refactor(installer): アプリ終了処理の堅牢性向上とUX改善
- taskkill の実行処理を
KillAppプロシージャに抽出し、コードの重複を排除。 taskkill.exeのパスを{sys}からフルパスで取得し、引数のファイル名をダブルクォートで囲むことで、環境依存やパスのスペースによるエラーを防止。- アプリの強制終了タイミングを
InitializeSetupからPrepareToInstallに変更し、ユーザーがインストールを続行すると決定した後にのみ終了するようUXを改善。
v1.3.1
fix: OS通知(トースト通知)が表示されない不具合を修正。
- winotifyのNotification生成時に、取得したアイコンパス(icon)が渡されていなかった問題を修正。
- 実行環境でPowerShellにパスが通っていない場合(WinError 2)でも通知できるよう、通知実行前にos.environ["PATH"]へ一時的にPowerShellのパスを補完するフェイルセーフを追加。
- 通知失敗時に原因が特定できるよう、%APPDATA% 配下にエラーログ (notification_error.log) を出力する処理を追加。
v1.3
What's Changed
Feat/GitHub release sync (#22)
-
feat: add about tab
-
fix: repo URLのテキストカラーを修正
-
fix: アプリについての情報をconfig.pyに統合して参照するように
-
feat: 設定画面に「更新情報」タブを追加し、GitHubからリリースノートとバージョンを取得する機能を追加。
-
refactor: 更新確認機能の改善
- 連打防止
- URLの動的化
- エラーハンドリング強化
-
feat: 更新確認のリリースノートでmd表示に対応。
画像が添付されている場合は、"image"とだけ表示してURLを埋め込む。 -
feat: GitHub Releaseから取得したバージョンをワークフロー実行時にconfig.pyに書き込むように
-
feat: 新しいバージョン取得時に更新を促すポップアップを表示する機能を追加。
-
Update ui_manager.py
URL形式の変更が起きても対応できるように/を削除
http
/
- fix: バージョン比較でプレリリースタグを正しくパースできるように修正
Full Changelog: v1.2...v1.3
v1.2
v1.1.3
fix: config.json save error
Full Changelog: v1.1.2...v1.1.3
