# LLMs.txt - Sitemap for AI content discovery # アイディア・レーン開発ブログ > テキスト図解アプリの制作にflutter Webでチャレンジした記録 --- ## 固定ページ - [Why I cannot recommend developing production software by using Flutter Web [2025]](https://blog.idea-lane.com/?page_id=3351): Programming with flu... - [サイトマップ](https://blog.idea-lane.com/?page_id=167): ## 投稿 - [ランサーズのデザインコンペでロゴを募集した結果 - 開発日記(112)](https://blog.idea-lane.com/?p=3128): 2024/07/21 開発中の思考整理ツ... - [ユースケースロードマップを作ってみた - 開発日記(111)](https://blog.idea-lane.com/?p=3450): 2024/07/19 idea Lane... - [エリアを結合する機能の実装が思ったより大変 - 開発日記(110)](https://blog.idea-lane.com/?p=3164): 2024/07/15~07/18 ide... - [Flutter Webで本格的なソフトを作るのは "おすすめ出来ない" 理由 [2025年]](https://blog.idea-lane.com/?p=3178): Flutterでプログラムするのはとても... - [β版のフィードバックを頂いて対応 - 開発日記(109)](https://blog.idea-lane.com/?p=3131): 2024/07/01~07/14 ホーム... - [ついにβ版を公開 - 開発日記(108)](https://blog.idea-lane.com/?p=3110): 2024/06/30 β公開に向けての仕... - [settings_uiをフォークした flutter_settings_ui を元に設定画面を作る - 開発日記(107)](https://blog.idea-lane.com/?p=3088): 2024/06/29 アイディアレーンの... - [flutter WebのTextField入力不具合。直ってないじゃん - 開発日記(106)](https://blog.idea-lane.com/?p=3042): 2024/06/26 βリリースに向けて... - [こりゃ分からん、というトラブルに遭遇 - 開発日記(105)](https://blog.idea-lane.com/?p=3001): 2024/06/25(1) デプロイ済み... - [サンプル用の初期データを用意する - 開発日記(104)](https://blog.idea-lane.com/?p=2981): 2024/06/13 ~ 06/15 ア... - [スマホ実機でTextFieldにフォーカスすると起きるひどい画面ずれ - 開発日記(103)](https://blog.idea-lane.com/?p=2909): 2024/06/09 ~ 06/12 ロ... - [komojuの審査通過。連携実装もスムーズに進む - 開発日記(102)](https://blog.idea-lane.com/?p=2832): 2024/06/05 komojuから審... - [Cloud Functionsで課金されていることに気づいた - 開発日記(101)](https://blog.idea-lane.com/?p=2779): 2024/06/04 Google Cl... - [嘘でしょ!?fincodeから否決の連絡。そしてkomojuへ… - 開発日記(100)](https://blog.idea-lane.com/?p=2670): 2024/05/30 決済代行会社をSt... - [Stripeからfincodeへの乗り換えでかなり苦労した話 - 開発日記(99)](https://blog.idea-lane.com/?p=2551): 2024/05/15 Stripeからア... - [Stripeからアカウント閉鎖のメールが。乗り換え先を探す - 開発日記(98)](https://blog.idea-lane.com/?p=2519): 2024/05/06 Stripe以外の... - [SaaSとして提供するために - 開発日記(97)](https://blog.idea-lane.com/?p=2413): 2024/05/05 今作っている「アイ... - [flutterでURLをブラウザで開く UrlLauncher - 開発日記(96)](https://blog.idea-lane.com/?p=2403): 2024/05/05 flutterで、... - [go_routerの設定に苦しんだ - 開発日記(95)](https://blog.idea-lane.com/?p=2377): 2024/05/02 go_router... - [課金処理の画面を作りStripe連携について調査 - 開発日記(94)](https://blog.idea-lane.com/?p=2362): 2024/05/01 以下は調べた情報 ... - [Firebase Realtime Databaseの使用量が増えた問題(解決編) - 開発日記(93)](https://blog.idea-lane.com/?p=2344): 2024/04/30 Firebase ... - [Flutter Webでのスマホ対応 - 開発日記(92)](https://blog.idea-lane.com/?p=2336): 2024/04/27 スマホでの表示崩れ... - [Firebase realtime databaseの課金が増えた問題 - 開発日記(91)](https://blog.idea-lane.com/?p=2303): 2024/04/26 Firebase ... - [TextFieldで日本語入力中の不具合 - 開発日記(90)](https://blog.idea-lane.com/?p=2293): 2024/04/23~4/25 またもf... - [TextFieldの文字列を選択すると勝手に中身がスクロールしてしまう問題 - 開発日記(89)](https://blog.idea-lane.com/?p=2286): 2024/04/15 TextField... - [不思議な不具合で時間を浪費 - 開発日記(88)](https://blog.idea-lane.com/?p=2259): 2024/04/13 マウスで操作してい... - [TextFieldのちらつきを解消したい - 開発日記(87)](https://blog.idea-lane.com/?p=2245): アイディアの入力方法を改善したが... ... - [ホットリスタートをした回数分だけfirebaseのDBアクセスが重複問題 - 開発日記(86)](https://blog.idea-lane.com/?p=2230): FirebaseのDBアクセス多重問題の... - [様々な挙動を修正して動作を安定化 - 開発日記(85)](https://blog.idea-lane.com/?p=2223): 2024/03/30 アイディアをドラッ... - [ドメインを取得しホームページ公開の準備をする - 開発日記(84)](https://blog.idea-lane.com/?p=2182): ドメインの取得とコストバランスの検討 2... - [Stripeから「不正利用が複数確認されたのでアカウントは閉鎖されました」とメールが - 開発日記(83)](https://blog.idea-lane.com/?p=2134): Stripe社からのメールに驚く 202... - [Stripe連携の実装に着手 - 開発日記(82)](https://blog.idea-lane.com/?p=2114): 2024/03/20 Stripe連携の... - [RealtimeDBのトランザクション処理にトライ - 開発日記(81)](https://blog.idea-lane.com/?p=2096): 2024/03/15~2024/03/1... - [Flutterで独自アイコンを使いたい - 開発日記(80)](https://blog.idea-lane.com/?p=2046): SVGファイルの作成に苦戦 2024/0... - [キャンバス一覧を開くときの待たされ感の改善 - 開発日記(79)](https://blog.idea-lane.com/?p=2043): アニメーションのバックグラウンドで読み込... - [課金の仕組みの調査 - 開発日記(78)](https://blog.idea-lane.com/?p=2031): 課金の調査 2024/03/10 このツ... - [TextFieldで日本語入力中のEnterキーを拾いたくない問題 - 開発日記(77)](https://blog.idea-lane.com/?p=1832): 2024/03/07 引き続き海外出張中... - [スクロールバー2重化の問題 - 開発日記(76)](https://blog.idea-lane.com/?p=1729): 2024/03/01 スクロールバーの位... - [Flutter upgrade したら、機能廃止の予告が大量に - 開発日記(75)](https://blog.idea-lane.com/?p=1712): 2024/02/29 Flutterアッ... - [フォルダ&ファイル管理(キャンバス管理)を強化 - 開発日記(74)](https://blog.idea-lane.com/?p=1669): 2024/02/18 いわゆるファイル一... - [Flutter WebのHot-RestartでStream.listenが多重化してしまう問題 - 開発日記(73)](https://blog.idea-lane.com/?p=1658): デバッグ時に発生するListen多重化 ... - [アイディア同士を関連付ける「リレーション」の作成をドラッグ&ドロップで可能に - 開発日記(72)](https://blog.idea-lane.com/?p=1646): 2024/02/12 アイディア同士を関... - [設定画面を作り直し / データが他から変更されたことを検知 - 開発日記(71)](https://blog.idea-lane.com/?p=1624): 2024/02/07 設定画面は set... - [DB上の不整合データ対策 - 開発日記(70)](https://blog.idea-lane.com/?p=1605): 2024/02/02 Realtime ... - [アイディアの「複数選択」に対応 - 開発日記(69)](https://blog.idea-lane.com/?p=1570): 2024/01/26 アイディアの複数選... - [テキスト検索を実装 - 開発日記(68)](https://blog.idea-lane.com/?p=1549): 2024/01/21 キャンバス内のテキ... - [Firebase Realtime Database を使って気付いた2つのこと - 開発日記(67)](https://blog.idea-lane.com/?p=1486): 2024/01/13 ついに2024年に... - [キャンバス一覧を改善しつつフォルダ管理を実装 - 開発日記(66)](https://blog.idea-lane.com/?p=1435): 2023/12/14 キャンバス一覧を表... - [ファイルへのエクスポートとファイルからのインポート - 開発日記(65)](https://blog.idea-lane.com/?p=1397): 2023/12/09 アイディアをレーン... - [FirestoreからRealtime Databaseへの移行がようやく実現出来た - 開発日記(64)](https://blog.idea-lane.com/?p=1323): 2023/11/15 Realtime ... - [idea Laneで初めてロードマップを書いてみた - 開発日記(63)](https://blog.idea-lane.com/?p=1252): 2023/11/07 不動産の対応やら耳... - [RealTimeDB対応に向けて苦労 - 開発日記(62)](https://blog.idea-lane.com/?p=1181): 2023/10/29 Firebase ... - [描画軽量化で見違えるように速くなった! - 開発日記(61)](https://blog.idea-lane.com/?p=1134): 2023/10/23 描画が重いことが気... - [RealTime Database対応に備えてWidgetとモデルを分離 - 開発日記(60)](https://blog.idea-lane.com/?p=981): 2023/10/18 めずらしく5日間開... - [Flutter Webのレンダリング問題。文字がにじむ - 開発日記(59)](https://blog.idea-lane.com/?p=945): 2023/10/12 Flutterのク... - [Flutter Webで大量描画の速度をテスト - 開発日記(58)](https://blog.idea-lane.com/?p=912): 2023/10/08 画面でアイ... - [TextFieldの文字入力のUndoをDebounceで実現 - 開発日記(57)](https://blog.idea-lane.com/?p=894): 2023/09/30 アイディア・レーン... - [Firestore から Realtime Database の移行へ一歩踏み出す - 開発日記(56)](https://blog.idea-lane.com/?p=882): 2023/09/26 Firebase ... - [Flutter Webの日本語入力不具合その後 - 開発日記(55)](https://blog.idea-lane.com/?p=845): 2023/09/21 先日GitHubに... - [Firebase FireStore と RealTime Database どちらを選ぶか - 開発日記(54)](https://blog.idea-lane.com/?p=816): 2023/09/19 Firebaseで... - [実装ミスで一部データが消えた! - 開発日記(53)](https://blog.idea-lane.com/?p=780): 2023/09/15 描画の高速化のため... - [Undo/Redoの挙動および実装を改善 - 開発日記(52)](https://blog.idea-lane.com/?p=748): 2023/09/13 Undo/Redo... - [アイディアのドラッグ&ドロップを改善 - 開発日記(51)](https://blog.idea-lane.com/?p=711): 2023/09/04~08 アイディアの... - [フォーカスやコンテキストメニューの挙動を改善 - 開発日記(50)](https://blog.idea-lane.com/?p=709): 2023/08/29 アイディアとレーン... - [ESCキーを押したときのコンテクストメニューを作成 - 開発日記(49)](https://blog.idea-lane.com/?p=692): 2023/08/23 キーボードでESC... - [キーボードでの操作が快適になるように各種対応 - 開発日記(48)](https://blog.idea-lane.com/?p=676): 2023/08/20 アイディアをキーボ... - [アイディア操作をより自然に / TextField処理の難しさ - 開発日記(47)](https://blog.idea-lane.com/?p=648): 2023/08/09 アイディアの操作感... - [レーン操作を進化させツールバーがスッキリ - 開発日記(46)](https://blog.idea-lane.com/?p=633): 2023/08/03 レーンの新規追加を... - [レーンの表現やキーボード操作を改善 - 開発日記(45)](https://blog.idea-lane.com/?p=624): 2023/07/28 レーンの区切り線を... - [レーンの挿入・削除を実装 - 開発日記(44)](https://blog.idea-lane.com/?p=618): 2023/07/23 縦レーンの挿入・削... - [悩ましいUndo/Redo - 開発日記(43)](https://blog.idea-lane.com/?p=605): 2023/07/16 Undo、Redo... - [アイディアをドラッグ&ドロップで移動できるように - 開発日記(42)](https://blog.idea-lane.com/?p=586): 2023/07/08 アイディアの枠をマ... - [アイディアの移動やキーボード操作を改良 - 開発日記(41)](https://blog.idea-lane.com/?p=577): 2023/07/04 仮状態レーンに対し... - [Firebase周りのテコ入れ - 開発日記(40)](https://blog.idea-lane.com/?p=568): 2023/06/30 Firestore... - [不具合管理ができるようになってきた - 開発日記(39)](https://blog.idea-lane.com/?p=558): 2023/06/27 各種不具合を修正。... - [マウスオーバーで仮アイテムを作成 - 開発日記(38)](https://blog.idea-lane.com/?p=541): 2023/06/24 マウスオーバーで仮... - [エリアを選択出来るように - 開発日記(37)](https://blog.idea-lane.com/?p=532): 2023/06/16 エリアの選択モード... - [テーマカラーを設定できるように - 開発日記(36)](https://blog.idea-lane.com/?p=525): 2023/06/14 テーマカラーの変更... - [ツールバーの改善 - 開発日記(35)](https://blog.idea-lane.com/?p=514): 2023/06/12 このソフトIdea... - [ログインページ作成/Webでのホスティングを開始 - 開発日記(34)](https://blog.idea-lane.com/?p=493): 2023/06/09 Webサーバでのホ... - [クラウドデータの読み書きで苦戦/WindowsではFirestore SDKが使えない!? - 開発日記(33)](https://blog.idea-lane.com/?p=477): 2023/06/06 クラウド上のファイ... - [ついにGitHubを使うことに - 開発日記(32)](https://blog.idea-lane.com/?p=456): 2023/06/05 Notionでのフ... - [アニメーション実装・キーイベント処理の改善 - 開発日記(31)](https://blog.idea-lane.com/?p=441): 2023/06/04 ファイル一覧メニュ... - [Flutter Webのフォント問題 - 開発日記(30)](https://blog.idea-lane.com/?p=429): 2023/06/03 続き フォント埋め... - [Firebase認証とFirestoreへの保存・読込 - 開発日記(29)](https://blog.idea-lane.com/?p=417): 2023/06/01 2023/06... - [ツールバーの実装とテキストの色変更 - 開発日記(28)](https://blog.idea-lane.com/?p=405): 2023/05/29 2023/05... - [Macでのビルドにトライ/コンテクストメニューの実装着手 - 開発日記(27)](https://blog.idea-lane.com/?p=399): 2023/05/25 2023/05/2... - [複数プラットフォーム対応でWeb・Windowsともビルドできるように - 開発日記(26)](https://blog.idea-lane.com/?p=382): 2023/05/22 2023/05/2... - [レーンやリレーション表示の改善を実施 - 開発日記(25)](https://blog.idea-lane.com/?p=368): 2023/05/19 2023/05/2... - [横レーン単位でスクロール可能にしたが、2重スクロールバーがイマイチ… - 開発日記(24)](https://blog.idea-lane.com/?p=348): 2023/05/14 2023/05/1... - [レーンを超えたアイディアの移動 - 開発日記(23)](https://blog.idea-lane.com/?p=339): 2023/05/08 2023/05/0... - [横レーンの処理を強化しファイルの保存に対応 - 開発日記(22)](https://blog.idea-lane.com/?p=332): 2023/05/06 2023/05/0... - [横レーン本体の描画とタイトル編集 - 開発日記(21)](https://blog.idea-lane.com/?p=324): 2023/05/04 2023/05/0... - [横レーンの日本語タイトルを縦に表示 - 開発日記(20)](https://blog.idea-lane.com/?p=311): 2023/05/01 2023/05/0... - [縦と横のスクロールバー表示 - 開発日記(19)](https://blog.idea-lane.com/?p=299): 2023/04/30 2方向にスクロール... - [拡大・縮小・スクロールで試行錯誤 - 開発日記(18)](https://blog.idea-lane.com/?p=286): 2023/04/28 この時点でのflu... - [キーボード操作・ショートカットキーに対応 - 開発日記(17)](https://blog.idea-lane.com/?p=265): 2023/04/24 2023/04/2... - [アイディアの関係性を表現するための矢印 - 開発日記(16)](https://blog.idea-lane.com/?p=241): 矢印の描画に工夫 2023/04/19 ... - [リレーションの描画調整と設定ダイアログ - 開発日記(15)](https://blog.idea-lane.com/?p=236): 2023/04/17 flutterのソ... - [タイトル行を固定してそれ以外の領域のみスクロールしたい - 開発日記(14)](https://blog.idea-lane.com/?p=216): 2023/04/13 flutterのソ... - [ChatGPTに大きなヒントをもらう - 開発日記(13)](https://blog.idea-lane.com/?p=212): 2023/04/10 flutterのソ... - [Flutterで記述ミスに気づかず苦しめられる - 開発日記(12)](https://blog.idea-lane.com/?p=170): 2023/04/09 その他行った対応と... - [拡大縮小機能で試行錯誤 - 開発日記(11)](https://blog.idea-lane.com/?p=162): 2023/04/08 flutterのソ... - [ついにアイディア同士のリレーションがつながった - 開発日記(10)](https://blog.idea-lane.com/?p=141): 2023/04/06 関連付けたIdea... - [アイディア同士を線でつなぐ「リレーション」機能に挑戦 - 開発日記(9)](https://blog.idea-lane.com/?p=136): 2023/04/03 Idea同士を線で... - [この時点での機能まとめ - 開発日記(8)](https://blog.idea-lane.com/?p=131): 2023/04/02 昨日実装したファイ... - [ファイルへの保存・読込機能を実装 - 開発日記(7)](https://blog.idea-lane.com/?p=126): 2023/03/29 Inherited... - [ブログに掲載されているソースの実行方法](https://blog.idea-lane.com/?p=109): 本ブログに掲載しているソースの多くは、簡... - [アイディアがうまく描画されず苦戦 - 開発日記(6)](https://blog.idea-lane.com/?p=100): Flutterの基礎でつまづく 2023... - [カーソルキーでアイディアを自動追加 - 開発日記(5)](https://blog.idea-lane.com/?p=88): キーボード操作の機能改善 2023/03... - [複数レーンと拡大縮小 - 開発日記(4)](https://blog.idea-lane.com/?p=77): 初めてのソース分割 2023/03/19... - [アイディアのツリー表示 - 開発日記(3)](https://blog.idea-lane.com/?p=56): ChatGPTは早くも限界 2023/0... - [Flutterで文字を並べて階層化してみる - 開発日記(2)](https://blog.idea-lane.com/?p=39): 実装開始 2023/03/17 まずは文... - [私が欲しいソフトのイメージ - 開発日記(1)](https://blog.idea-lane.com/?p=34): 2023年 3月某日 私が欲しいソフトの... - [初めまして! アイディアをまとめるソフト「idea Lane」](https://blog.idea-lane.com/?p=13): 頭の中の”もやもや”を整理するためのツー... --- # # Detailed Content ## 固定ページ ### Why I cannot recommend developing production software by using Flutter Web [2025] - Published: 2025-02-07 - Modified: 2025-02-10 - URL: https://blog.idea-lane.com/?page_id=3351 Programming with flutter is a lot of fun. In fact, I've been developing idea Lane for about two years now. But to be honest, I currently feel that it's difficult to recommend Flutter Web for developing proper software. I'll explain why. Why I don't... --- ### サイトマップ - Published: 2024-09-08 - Modified: 2024-09-08 - URL: https://blog.idea-lane.com/?page_id=167 --- ## 投稿 ### ランサーズのデザインコンペでロゴを募集した結果 - 開発日記(112) - Published: 2025-02-28 - Modified: 2025-02-28 - URL: https://blog.idea-lane.com/?p=3128 - カテゴリー: flutter, 開発日記 2024/07/21 開発中の思考整理ツールidea Laneは、無料もしくは安価で提供したいので開発費用もなるべく抑えている。 ただロゴだけは、生成AIではどうしてもしっくり来なくてプロにお願いすることにした。その結果が出たので過程も含めて書いていきたい。 活用したのはランサーズ。 私がクラウドソーシングのサービスを使うのは初めてで、類似サービスはココナラなど色々あって迷った。ただ自分が調べたり比較した限りでは、ある程度信頼できる人が集まっていてロゴコンペでも質の高いものが出てきそうと感じLa... --- ### ユースケースロードマップを作ってみた - 開発日記(111) - Published: 2025-02-27 - Modified: 2025-02-27 - URL: https://blog.idea-lane.com/?p=3450 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac 2024/07/19 idea Laneで実現したい機能は膨大にある。 そこでidea Laneのロードマップをidea Lane自身で書いた。それに従って機能を実装している。 しかし、個々の機能が付いたとして、それがいったいどういう価値を生むのか。 コーチングの先生と話すなかで、あらためてロードマップを整理してはどうかと投げかけをいただき、ユースケースロードマップを考えてみることにした。 アイディアレーンで書いた、アイディアレーンのユースケースロードマップ 上記画像は一見めちゃくちゃに見えるが... --- ### エリアを結合する機能の実装が思ったより大変 - 開発日記(110) - Published: 2025-02-26 - Modified: 2025-02-26 - URL: https://blog.idea-lane.com/?p=3164 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac 2024/07/15~07/18 idea Laneではレーン同士が交わる部分をエリアと読んでいる。そのエリアの"結合機能"の実装を少し前から始めており、この期間は集中して進めた。 エリアを選択して... ... 結合ボタンを押すと合体する。 Excelのセル結合のようなイメージだが、エリアの中にはアイディアがツリー上に存在しており、処理はなかなか複雑だ。 たとえばエリアを選択するUI/UXの検討、結合後の描画、DBへの反映、Undo/Redo、スクロールの制御、キーボード操作など、考慮・修正す... --- ### Flutter Webで本格的なソフトを作るのは "おすすめ出来ない" 理由 [2025年] - Published: 2025-02-07 - Modified: 2025-02-10 - URL: https://blog.idea-lane.com/?p=3178 - カテゴリー: flutter Flutterでプログラムするのはとても楽しいです。実際idea Laneの開発を続けて約2年経ちました。しかし私は現在「Flutter Webをきちんとしたソフトで使うにはおすすめしづらい」と感じているのが正直なところです。 その理由を書きます。 Flutter Webの本格利用がおすすめ出来ない理由 大きな理由は3つです。基本的に、致命的な不具合が治らないことに起因しています。 1つ目:TextFieldのフォーカス切り替えで大変なことになる スマホ実機のブラウザで、画面下部のTex... --- ### β版のフィードバックを頂いて対応 - 開発日記(109) - Published: 2025-02-02 - Modified: 2025-02-05 - URL: https://blog.idea-lane.com/?p=3131 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac 2024/07/01~07/14 ホームページを作ってアイディアレーンのβ版を公開したものの、すぐにアクセスがあるわけでもない。 まずは知り合いに声をかけて、10数人くらいのグループでソフトについてのフィードバックをお願いした。皆さんなんだかんだと反応・協力してくださり、大変ありがたい。 使い勝手や画面表示など多数の意見を頂き、それを元に反映したり優先度を変えたりしたものは数多い。 この当時アイディアレーンで書いた「アイディアレーンのロードマップ」 2024年7月時点のロードマップ 本来作りたい... --- ### ついにβ版を公開 - 開発日記(108) - Published: 2025-02-02 - Modified: 2025-02-02 - URL: https://blog.idea-lane.com/?p=3110 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac 2024/06/30 β公開に向けての仕上げ。決済連携のWebhook周りの確認・修正や、ユーザ登録周りの処理の確認・修正を行った。 そしてついにこの日、アイディアレーンをβ版として公開。長かった... 。 ホームページ ログイン画面 実装を始めた2023年3月から、ここまで1年と3ヶ月ほどかかっている。 当然ソフトそのものの開発に一番時間がかかっているが、今年の3月以降は ホームページの作成 ドメインの取得 決済代行会社との連携実装 大勢に使ってもらえるようなユーザ登録・管理系機能の実装 サー... --- ### settings_uiをフォークした flutter_settings_ui を元に設定画面を作る - 開発日記(107) - Published: 2025-01-26 - Modified: 2025-01-29 - URL: https://blog.idea-lane.com/?p=3088 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac 2024/06/29 アイディアレーンの設定画面は、当初 settings_ui というパッケージを使っていた。ただこのパッケージ、見た目は良いのだが細かい部分で色々問題があった。 しかもバージョンアップされていないこともあって、最終的にはパッケージを使わず自前で実装する形に変更した。 しかしその自前で作った設定画面は、スマホで開くとかなり崩れてしまう状態であることに気づいた。てこ入れが必要だ。 崩れすぎていて、この状態からデザインを1つずつ直していくのは手間がかかる。 そんななか、settin... --- ### flutter WebのTextField入力不具合。直ってないじゃん - 開発日記(106) - Published: 2025-01-23 - Modified: 2025-01-25 - URL: https://blog.idea-lane.com/?p=3042 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac 2024/06/26 βリリースに向けて、初期データの整備やホームページの整備を行う。 そんななか、レーンヘッダーの不具合を発見。スクロールした状態で横レーンヘッダーのサイズを変更したときに、描画がおかしい時がある。 画像一番左(レーンヘッダー)が崩れてしまっている いつからこうなっていたのだろうか... 。 昨日見つけたflutterのTextFieldの不具合については、GitHubにイシューを上げた。https://github. com/flutter/flutter/issues/15... --- ### こりゃ分からん、というトラブルに遭遇 - 開発日記(105) - Published: 2025-01-22 - Modified: 2025-01-22 - URL: https://blog.idea-lane.com/?p=3001 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac 2024/06/25(1) デプロイ済みのソフトが突然動かなくなる 意味不明な現象に遭遇した。 あるタイミングから突然、Webデプロイ済みのIdea Laneが開けなくなった。 Loading... (index. htmlで表示しているもの)から先に進まなくなる。ブラウザのDeveloper Consoleで見るとエラーが発生している。 エラーの内容↓Rejecting promise with error: FormatException: SyntaxError: Unexpected t... --- ### サンプル用の初期データを用意する - 開発日記(104) - Published: 2025-01-22 - Modified: 2025-01-22 - URL: https://blog.idea-lane.com/?p=2981 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac 2024/06/13 ~ 06/15 アイディアレーンに初めてユーザ登録をしたとき、サンプルとして用意しておく初期データが必要だ。 そのために、まずは「初期キャンバスデータ」を登録出来る内部機能を作成した。この3日間でだいたい出来た。 2024/06/16 色々なテストしているなかで不要データがたまってきたので、DBの中身を整理したり、Komoju(決済代行会社)との連携の修正などを行った。 それにしても、Flutter Webは不具合が未だ多い印象を受ける。 ログイン画面でAutoFill(入... --- ### スマホ実機でTextFieldにフォーカスすると起きるひどい画面ずれ - 開発日記(103) - Published: 2025-01-20 - Modified: 2025-01-22 - URL: https://blog.idea-lane.com/?p=2909 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac 2024/06/09 ~ 06/12 ログイン・ログアウト周りの処理を改善をしながら、スマホのブラウザでアイディアレーンがどの程度動くのかを確認していた。 そのなかでスマホ実機で動作確認をしていたところ、ひどい不具合に遭遇している。 事象としては、TextFieldにフォーカスをあててキーボードが出てくると画面下部に謎の空間が入りこむというもの。 下記画像はTextFieldにフォーカスが当たりキーボードが表示され、画面全体が押し上げられている状態。(色が派手なのは気にしないで下さい。フォーカス... --- ### komojuの審査通過。連携実装もスムーズに進む - 開発日記(102) - Published: 2025-01-19 - Modified: 2025-01-19 - URL: https://blog.idea-lane.com/?p=2832 - カテゴリー: flutter, 課金・決済代行会社, 開発日記 - タグ: Fireauth, Firebase, Mac 2024/06/05 komojuから審査の結果が来て、JCBとAMEXも通過した。良かった!VISAとMasterは既に審査通過済みだったので、これでクレカの決済が一通り出来る。ほっと一安心。 思えば決済連携は3月からずっと検討調査してきた。実際の連携テストを行ったもstripe → fincode → komojuと遠回りしたなぁ。決済代行会社の連携に関連する記事(時系列) 課金の仕組みの調査 - 開発日記(78) 2024/03/10 Stripe連携の実装に着手 - 開発日記(82) 2... --- ### Cloud Functionsで課金されていることに気づいた - 開発日記(101) - Published: 2025-01-19 - Modified: 2025-01-19 - URL: https://blog.idea-lane.com/?p=2779 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac 2024/06/04 Google Cloud Functionsで課金が発生していることに気づいた。 Firebase側のconsoleでは請求が発生していないのに、Google Cloud Consoleを開いたら費用がかかっているとの表示が。(115円) GCPはまだ決済連携のテストでしか使っていないのに、なぜ? CPU時間が主な要因のようなので確認してみる。すると、Firebase Cloud Functionsを第2世代に移行するときに参考に貼り付けたものが影響していそうだ。setGl... --- ### 嘘でしょ!?fincodeから否決の連絡。そしてkomojuへ… - 開発日記(100) - Published: 2025-01-19 - Modified: 2025-01-19 - URL: https://blog.idea-lane.com/?p=2670 - カテゴリー: flutter, 課金・決済代行会社, 開発日記 - タグ: Fireauth, Firebase, Mac 2024/05/30 決済代行会社をStripeからfincodeへの乗り換えするのにかなり苦労した話の続きです。 なんと今日、fincodeから「審査否決」の連絡が来た。 え、これじゃfincode使えないじゃん! なぜだろう。 理由は開示しないとのこと fincodeの参考リンク:審査が通過しなかった理由を教えてください 取扱商材が禁止商材(賭博、ギャンブルなど一覧はこちら)に該当すると判断された 継続的役務に酷似するサービス内容である その他クレジットカード会社等が独自に調査した事由 上記... --- ### Stripeからfincodeへの乗り換えでかなり苦労した話 - 開発日記(99) - Published: 2025-01-19 - Modified: 2025-01-19 - URL: https://blog.idea-lane.com/?p=2551 - カテゴリー: flutter, 課金・決済代行会社, 開発日記 - タグ: Fireauth, Firebase, Mac 2024/05/15 Stripeからアカウント閉鎖のお知らせが来て不信感が募ったので、fincodeに乗り換えることにした話の続きです。 fincodeで決済連携を行うための調査を色々実施。 ユーザが支払いをするとき、自社サイトではなく「決済代行会社のサイトに用意されているページ」に飛ばして決済する、いわゆるリンク型決済を使いたい。(fincodeではリダイレクト型決済と呼ぶ)しかもidea LaneはSaaS型なので継続課金でそれを使いたい。 ところが調査の結果、fincodeでは難しそうだ... --- ### Stripeからアカウント閉鎖のメールが。乗り換え先を探す - 開発日記(98) - Published: 2025-01-14 - Modified: 2025-01-19 - URL: https://blog.idea-lane.com/?p=2519 - カテゴリー: flutter, 課金・決済代行会社, 開発日記 - タグ: Fireauth, Firebase, Mac 2024/05/06 この一週間は、ほぼStripe連携の実装に費やした。 Stripeの仕様を調査し、それに合わせてサーバサイドの実装方法を検討。Firebase Cloud Functionsを学びながら連携用のWebHookを構築した。 だいたい出来てきたかなと思った昨日、なんとStripeからアカウント閉鎖のお知らせがメールが来た。3月にも「閉鎖しましたメール」が来ていたが誤報レベルの内容だった。まだ利用開始もしていないのに不正利用が発生したので閉鎖するという文面だったし、そのまま普通に... --- ### SaaSとして提供するために - 開発日記(97) - Published: 2025-01-13 - Modified: 2025-01-14 - URL: https://blog.idea-lane.com/?p=2413 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac 2024/05/05 今作っている「アイディア・レーン」は、Webで動くソフトでありインストール不要でどこでも使える。 しかも基本無料で提供しようとしている。 ただサーバへのアクセスが増えるとどうしてもコストがかかってくるので、ある程度以上使う方向けには有料プランを用意することにした。 有料プランを作ると一口に言っても、そのためにやらねばならないことは結構ある。製品機能(コア機能)の開発の他に、下記の事を考慮しなければならない。 コストシミュレーション及び課金の金額設定 どのくらいのユーザのとき... --- ### flutterでURLをブラウザで開く UrlLauncher - 開発日記(96) - Published: 2025-01-13 - Modified: 2025-01-13 - URL: https://blog.idea-lane.com/?p=2403 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac 2024/05/05 flutterで、URLを指定してChromeなどブラウザで開くにはどうすれば良いか。 url_launcher を使うと良いという記事を見かけたので使ってみた。//使い方のイメージ import 'package:url_launcher/url_launcher. dart'; Future openUrl(String url, BuildContext context, String errorMessage) async { Uri uri = Uri. pars... --- ### go_routerの設定に苦しんだ - 開発日記(95) - Published: 2024-12-27 - Modified: 2025-01-13 - URL: https://blog.idea-lane.com/?p=2377 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac 2024/05/02 go_routerを設定したが、謎の挙動に苦しんだ。 なぜかredirectが2回呼ばれてしまう。 たとえばブラウザで /login にジャンプすると、まず/loginへのredirect判定が呼ばれ(これはOK)、そしてloginページが表示されたあとに、なぜかもう一度redirectが呼ばれる。しかもその時のpathは / 。 ソースを追ったりネットを検索したりして長時間かけたがどうしても理由が分からず。 しかし結局は、redirectが2回呼ばれるのは画面のbuild... --- ### 課金処理の画面を作りStripe連携について調査 - 開発日記(94) - Published: 2024-11-19 - Modified: 2025-01-19 - URL: https://blog.idea-lane.com/?p=2362 - カテゴリー: flutter, 課金・決済代行会社, 開発日記 - タグ: Fireauth, Firebase, Mac 2024/05/01 課金の処理を作成どのようなフローにするかとても迷った。結局flutterのUIにプラン選択画面を用意し(普通にコードで作成)、StripeのPayment Links にジャンプする形にした 以下は調べた情報 UI 課金 UI まとめてみた ストライプ関連の用語メモ Stripe関連用語 Payment Links 特徴 コーディング不要の決済ページ。いきなり決済ページに飛べる サブスクリプション可能 疑問 メールアドレスを、ページに渡すことは出来るか? 出来そうだ:Str... --- ### Firebase Realtime Databaseの使用量が増えた問題(解決編) - 開発日記(93) - Published: 2024-11-13 - Modified: 2024-11-13 - URL: https://blog.idea-lane.com/?p=2344 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac 2024/04/30 Firebase Realtime Databaseの使用量の質問についてGoogleから回答が来たが、質問したことについて直接の回答はなく、ヘルプの案内程度だった。。。残念。 仕方なく自分であらためて調査することに。 まずはデータベースのupdateのみ集中して実行してみた。2024/04/30のピークは0. 0673。この前の4/25のピークは0. 008未満だったので、10倍近く実行。 課金には影響は見られないが、どうなることか。 その後も全く増えない。とするとupd... --- ### Flutter Webでのスマホ対応 - 開発日記(92) - Published: 2024-11-13 - Modified: 2024-11-13 - URL: https://blog.idea-lane.com/?p=2336 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac 2024/04/27 スマホでの表示崩れを一部改善 Firebase realtime databaseのセキュリティルールの設定変更 2024/04/28 アイディアのドラッグ&ドロップがスマホでもできるよう、構造を大幅変更 これまではドラッグ&ドロップ関連の表現をMouseRegionで制御している部分が多かった。ところがスマホで試したら”マウス”では無いためドラッグ&ドロップが全然効かないことに気づいた。 MouseRegionの処理をDragTargetなどに置き換えるなどして、スマホで... --- ### Firebase realtime databaseの課金が増えた問題 - 開発日記(91) - Published: 2024-11-11 - Modified: 2024-11-11 - URL: https://blog.idea-lane.com/?p=2303 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac 2024/04/26 Firebase realtime databaseの課金問題 このところDBの利用データ量がどんどんデータが増えている。 現時点では自分しか使っていない(ユーザ1名)し、データとしてはテキストしか入れていないのに、ついに1日で200MBのダウンロード量に達した。 どうも直感と合わない。可能性としては下記だろうか Firebaseの管理コンソールのアクセスが影響している? FirebaseのRealtimeDBの管理コンソールを開いたまま作業したりドキュメントが更新されると... --- ### TextFieldで日本語入力中の不具合 - 開発日記(90) - Published: 2024-11-10 - Modified: 2024-11-10 - URL: https://blog.idea-lane.com/?p=2293 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac 2024/04/23~4/25 またもflutterの不具合に遭遇 TextFieldで日本語入力中にTabを押すと、予測変換の処理ではなくいきなり確定されて次のTextFieldにフォーカスが移ってしまう。 TextInputActionパラメータが関係するのかと思ったが、TextInputAction. noneにしても再現する。flutterをversion 3. 19. 2 → 3. 19. 6へバージョンアップしても変わらず。 うーむ。Flutter Webの日本語入力周りはどうもダメ... --- ### TextFieldの文字列を選択すると勝手に中身がスクロールしてしまう問題 - 開発日記(89) - Published: 2024-11-10 - Modified: 2024-11-10 - URL: https://blog.idea-lane.com/?p=2286 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac 2024/04/15 TextFieldで、TextFieldの幅より長い文字列を選択すると勝手に中身がスクロールしてしまうという仕様に困っていた。 たとえば下記1枚目の画像で文字列を選択すると、自動的に2枚目の画像のようになる。 TextField単体の仕様としては問題ないのだが、これを制御したい場面があった。 しかしどうしたら良いか分からず、そもそもその挙動が変えられるのかも分からず途方にくれていたところ... ... こちらの記事がヒットして、制御できることが分かった。 textfield... --- ### 不思議な不具合で時間を浪費 - 開発日記(88) - Published: 2024-11-08 - Modified: 2024-12-27 - URL: https://blog.idea-lane.com/?p=2259 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac 2024/04/13 マウスで操作しているとき、TextField(開発しているアイディアレーンではアイディアの描画に利用)のフォーカスが切り替わったタイミングで時々発生する不具合を発見した。 これが不思議な不具合。 デバッグモードでChrome上でソフトを実行している状況で発生する。その不具合に遭遇すると突然Android Studioがアクティブになる。普通はこういうとき、問題箇所でカーソルが止まって「ソースのどこで問題が起きたか」が分かるのだが、これに関してはどこにも飛ばない。つまりソース... --- ### TextFieldのちらつきを解消したい - 開発日記(87) - Published: 2024-11-08 - Modified: 2024-11-08 - URL: https://blog.idea-lane.com/?p=2245 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac アイディアの入力方法を改善したが... ... 2024/04/09 アイディアにフォーカスしている状態でキーボードから文字入力を開始したときに、自動的にReadOnlyが外れて文字が入るようにした。 これまではEnterを押したときだけ編集モードにしていた。そのためまずEnterを押す→編集モードになる→文字入力開始となっていた。これを編集モードなど関係なく、キーボードのaなどを普通に押したときは自然に文字入力が始まってかつ編集モードに入るようにした。 と書くと簡単そうに見えるが、非常に苦戦し... --- ### ホットリスタートをした回数分だけfirebaseのDBアクセスが重複問題 - 開発日記(86) - Published: 2024-11-06 - Modified: 2024-11-06 - URL: https://blog.idea-lane.com/?p=2230 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac FirebaseのDBアクセス多重問題の回避策 2024/04/06 Hot Restart問題で生産性低下が続いている。 以前にも書いたが、ホットリスタートをした回数分だけfirebaseのDBアクセスが重複するようになり、下記例外が発生するError: TypeError: Instance of '_Exception': type '_Exception' is not a subtype of type 'JavaScriptObject' たとえば3回ホットリスタートすれば3回連続で... --- ### 様々な挙動を修正して動作を安定化 - 開発日記(85) - Published: 2024-11-05 - Modified: 2024-11-05 - URL: https://blog.idea-lane.com/?p=2223 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac 2024/03/30 アイディアをドラッグ&ドロップしたときのUndoで、一部不具合があったので修正。 これはDBの反映をリアルタイムにして全体を大きく変えた時に async を付けるべきところの漏れだった。やはり非同期処理は不具合を生みやすい。だいぶ慣れてきたがこういったものは見落としがちだ。 その他細かい使い勝手を改善。 2024/03/31 キャンバスのエクスポート・インポート周りを改善。 それに関連して、RealTimeDatabaseでの使用容量が少しでも減るようにと、使用頻度の特に多... --- ### ドメインを取得しホームページ公開の準備をする - 開発日記(84) - Published: 2024-11-04 - Modified: 2024-11-04 - URL: https://blog.idea-lane.com/?p=2182 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac ドメインの取得とコストバランスの検討 2024/03/22 idea-lane. comのドメインを取得した。(ちなみにドメインとHPのサーバはConoHaWingというサービスを使っています) またサービス公開にあたってのコスト算出も行った。どのくらいのユーザがどれだけ利用したら、このくらいのお金がかかるということを改めて試算。有料ユーザの料金が月200円くらいでも、サーバ代はまかなえるだろうと判断。 WordPressでHP作成開始 2024/03/23 いよいよホームページの作成。 Wor... --- ### Stripeから「不正利用が複数確認されたのでアカウントは閉鎖されました」とメールが - 開発日記(83) - Published: 2024-11-04 - Modified: 2025-01-19 - URL: https://blog.idea-lane.com/?p=2134 - カテゴリー: flutter, 課金・決済代行会社, 開発日記 - タグ: Fireauth, Firebase, Mac Stripe社からのメールに驚く 2024/03/21 Stripeから「 Stripe アカウントの閉鎖について」というタイトルのお知らせメールが来た。中を見ると 「先頃、不正利用と思われる複数の支払いがシステムによって確認されましたことをご連絡いたします。(中略)Stripe は 決済の受け付けを継続できなくなりました。」そして結びは以下の文で終わっている。「サービスのご提供を継続できずに申し訳ございません。お客様のビジネスのご発展をお祈りいたします。」 いやいや、不正利用もなにも、まだテス... --- ### Stripe連携の実装に着手 - 開発日記(82) - Published: 2024-11-03 - Modified: 2025-01-19 - URL: https://blog.idea-lane.com/?p=2114 - カテゴリー: flutter, 課金・決済代行会社, 開発日記 - タグ: Fireauth, Firebase, Mac 2024/03/20 Stripe連携の実装の仕方を調べる 決済代行会社のStripeと連携すべく、いよいよ実装に着手。 連携の仕方については、概要をつかむのにこちらの記事が参考になった。 https://zenn. dev/ryota_iwamoto/articles/web_checkout_on_mobile_app もちろん公式を踏まえる:サブスクリプションの実装を構築する | Stripe のドキュメント さて実際に連携するには、サーバーサイドでAPIを呼び出したりWebhookを受け... --- ### RealtimeDBのトランザクション処理にトライ - 開発日記(81) - Published: 2024-11-03 - Modified: 2024-11-03 - URL: https://blog.idea-lane.com/?p=2096 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac 2024/03/15~2024/03/16 各種挙動調整・不具合修正を実施 ideaCount描画問題の対応画面のスクロールやブラウザのウィンドウサイズ変更などの場合に、場所がずれることがあった) リレーションをマウスドラッグで行う処理の調整、など FlutterのHot Restart(Hot Reload)問題 ある時からflutterのホットリスタート(自分はついホットリロードと呼んでしまいがち)を行うと、firebase realtime database へのアクセスにエラーが出るよう... --- ### Flutterで独自アイコンを使いたい - 開発日記(80) - Published: 2024-11-03 - Modified: 2024-11-03 - URL: https://blog.idea-lane.com/?p=2046 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac SVGファイルの作成に苦戦 2024/03/12 ソフト内で使っている各種アイコンは、ネットで探したものをそのまま使っている。アイコンはたとえば下記のようなサイトで見つけることができる。 Icons class - material library - Dart API Material Symbols & Icons - Google Fonts FlutterIcon - Flutter custom icons generator Free Icons | Font Awesome たださ... --- ### キャンバス一覧を開くときの待たされ感の改善 - 開発日記(79) - Published: 2024-11-03 - Modified: 2024-11-03 - URL: https://blog.idea-lane.com/?p=2043 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac アニメーションのバックグラウンドで読み込み 2024/03/11 今日はキャンバス一覧(ファイル一覧)の操作感を改善。 これまではメニューを開いてからファイル一覧を読み込んでいた。 それをバックグラウンドでの読み込みに変えた。 メニューを開いたときに非同期で読み込みスタート ↓アニメーションスタート(メニューが開く) ↓DBからの読み込みが終わったら画面更新 のようにすることで、メニューオープン時の待たされ感を軽減した。 ※開発日記は当時の記録をもとに作成し、必要に応じて加筆・補... --- ### 課金の仕組みの調査 - 開発日記(78) - Published: 2024-11-03 - Modified: 2025-01-19 - URL: https://blog.idea-lane.com/?p=2031 - カテゴリー: flutter, 課金・決済代行会社, 開発日記 - タグ: Fireauth, Firebase, Mac 課金の調査 2024/03/10 このツールにどの程度の需要があるか分からないが、役に立つという人もいるだろう。 そのような人々にはぜひ使ってもらいたいが、Cloudでデータを扱う以上、たくさん使ってもらうほど、私がGoogleに「支払い」しなければならない。 基本無料にしたいが、ある程度利用をする方にはシステムを維持するためのお金を払ってもらう仕組みにしたい。ただしできれば月200円前後と負担の少ない形にしたい。そのためにわざわざFirestoreからRealtimeDatabaseに乗り換え... --- ### TextFieldで日本語入力中のEnterキーを拾いたくない問題 - 開発日記(77) - Published: 2024-10-31 - Modified: 2024-10-31 - URL: https://blog.idea-lane.com/?p=1832 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac 2024/03/07 引き続き海外出張中。本業(サラリーマン)の仕事や交流が終わってからとなると、どうしてもアイディアレーンの開発時間は限られる。 そしてやっていることはこの前のFlutter Upgradeで起きたキーボードイベント仕様変更の対応の続き。未だに直りきらず。 今困っているのは下記の問題。 Flutterバージョンアップに合わせてやむなくEnterキーの判定処理をRawKeyDownEvent から KeyDownEvent に変えた その結果、これまで拾っていなかった日本語入力中... --- ### スクロールバー2重化の問題 - 開発日記(76) - Published: 2024-10-30 - Modified: 2024-10-31 - URL: https://blog.idea-lane.com/?p=1729 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac 2024/03/01 スクロールバーの位置を調整しようとしたが苦戦。 画面ショット内のスクロールバーのうち、縦スクロールバー(右側)は問題ない。 しかし横スクロールバー(下側)は、レーンに重なって表示されている。これだと数値の部分が見づらいので、右側と同じように、スクロールバーがレーンに重ならないようにしたい。 ところがそんな簡単そうに見える事がどうしてもうまく行かない。 スクロールバーの位置や、キャンバスを描画するのに使っているStackのPositionの問題かと思っていろいろ試したがダメだ... --- ### Flutter upgrade したら、機能廃止の予告が大量に - 開発日記(75) - Published: 2024-10-30 - Modified: 2024-10-30 - URL: https://blog.idea-lane.com/?p=1712 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac 2024/02/29 Flutterアップグレードで、大量の「機能廃止の予告」が表示されてしまった。 100を軽く超える。 このままだと本来表示すべきヒントが埋もれてしまうし、かといって数が多いヒントを非表示にしたところで、いずれは直さないといけない。 限られた開発時間は機能改善に使いたいのだが、やむを得ない。今日はこれを直すか... ... 。 数が多いのがキーボード関連の指摘。'onKey' is deprecated and shouldn't be used. Use onKeyEven... --- ### フォルダ&ファイル管理(キャンバス管理)を強化 - 開発日記(74) - Published: 2024-10-29 - Modified: 2024-10-29 - URL: https://blog.idea-lane.com/?p=1669 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac 2024/02/18 いわゆるファイル一覧である「キャンバス一覧メニュー」をスマホでもなんとか使えるように修正。 これまで:完全に画面からはみ出していた。 Before 新しいバージョン:画面内に収まっている。 After 今回の修正でキャンバス一覧表示は以前より良くなったが、まだフォルダ管理周りは手を入れないといけない。 2024/02/19 スマホにおける挙動調整。といってもスマホアプリではなく、Webブラウザから開いた場合だが。 もちろんスマホのブラウザでも動くことは動くが、小さい画面用に... --- ### Flutter WebのHot-RestartでStream.listenが多重化してしまう問題 - 開発日記(73) - Published: 2024-10-28 - Modified: 2024-11-03 - URL: https://blog.idea-lane.com/?p=1658 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac デバッグ時に発生するListen多重化 2024/02/17 DBの処理周りを修正するなかで、やっかいな問題が発覚。 Firebase RealtimeDatabaseで特定項目の変化をlistenしているのだが、FlutterでHotReloadすればするほどlistenが多重化してしまうことが分かった。 まずそこに気づくまで時間がかかった。 disposeでStreamを閉じても適切に破棄されないため、HotReloadの時にさらにListenしてしまうようだ。デバッグのとき何度もHotRe... --- ### アイディア同士を関連付ける「リレーション」の作成をドラッグ&ドロップで可能に - 開発日記(72) - Published: 2024-10-28 - Modified: 2024-10-28 - URL: https://blog.idea-lane.com/?p=1646 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac 2024/02/12 アイディア同士を関連付ける「リレーション」機能。 アイディア・レーンの特徴的なこの機能を、キーボードやツールバーだけでなく、マウスのドラッグだけで簡単に出来るようにしたい。 そこでマウスドラッグでリレーションを張る機能の実装に着手した。 2024/02/13 マウスドラッグでリレーションを張る機能の続き。 2024/02/14 マウスドラッグでリレーションを張る機能の続き。 なんとなくそれっぽい動きになってきた。アイディアの右側にある小さな◯をマウスでドラッグて、接続先でマ... --- ### 設定画面を作り直し / データが他から変更されたことを検知 - 開発日記(71) - Published: 2024-10-28 - Modified: 2024-10-28 - URL: https://blog.idea-lane.com/?p=1624 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac 2024/02/07 設定画面は settings_ui というパッケージを使っている。これは短時間できれいな見た目にできて重宝していたものの、細かな調整がしづらく感じてきた。 たとえば文字サイズがプラットフォームごとにハードコーディングされていたり、テーマの持ち方が独自だったり、(画面ショットでは見えないが)スクロールバーの位置が中身と重なりがちだったり。これをベースに修正しても良いが、今後のことも考えると自分でコンポーネントを作ったほうが良さそうと思い始めてきた。 設定画面以外にも細かな不具... --- ### DB上の不整合データ対策 - 開発日記(70) - Published: 2024-10-27 - Modified: 2024-10-27 - URL: https://blog.idea-lane.com/?p=1605 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac 2024/02/02 Realtime Databaseに格納しているデータの、不整合対策を実施。 Undo/Redo周りで時々データの不整合が起きることが判明していて、気づいたものは直している。それに今後もネットワーク寸断などなどさまざまな理由によりDB上のデータの不整合が起きる可能性はありうる。(トランザクションやロックで解決すべきものも含まれるが) 今チェックしたい不整合 レーンの中にアイディアはあるが、アイディアマスターが存在しない状態 レーンの中のアイディアのインデックス値が重複する状... --- ### アイディアの「複数選択」に対応 - 開発日記(69) - Published: 2024-10-27 - Modified: 2024-10-27 - URL: https://blog.idea-lane.com/?p=1570 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac 2024/01/26 アイディアの複数選択に向けた実装に着手。 まずは見た目だけアイディアを複数選択出来るようになった。 当然ここから、複数選択したアイディアに対して一括で様々なコマンドを実行出来るように実装していく。結構大変だ。 2024/01/27 アイディア複数選択処理の実装の続き。 様々なコマンドを「複数選択したアイディアに対応」させるのは、単純なものではない この複数選択もそうだが、機能が増える度にその組み合わせも増えてくる。 コピー&ペースト、アイディアの見た目の変更(太字や斜線など... --- ### テキスト検索を実装 - 開発日記(68) - Published: 2024-10-27 - Modified: 2024-10-27 - URL: https://blog.idea-lane.com/?p=1549 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac 2024/01/21 キャンバス内のテキストを検索する機能を付けた。検索対象はアイディア・レーンヘッダー・リレーション。 検索処理は文字列を探せば良いだけなのでイメージが付くのだが、ヒットした文字列をハイライトするにはどうすれば良いのだろうか? ネットで探したところ substring_highlight というパッケージがあった。素晴らしい。これのおかげで実装が簡単かと思いきや、「縦書き」の部分は結局自分で実装しなければダメだった。 それでも、比較的速くテキスト検索+ハイライト機能が実現出来た... --- ### Firebase Realtime Database を使って気付いた2つのこと - 開発日記(67) - Published: 2024-10-25 - Modified: 2024-10-25 - URL: https://blog.idea-lane.com/?p=1486 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac 2024/01/13 ついに2024年に突入してしまった。 フォルダ管理機能の実装を続けるなかで、Firebase Realtime Databaseについて気付いた点が2つある。 1.RealtimeDBの"クエリ"が思った以上に弱い 並び替えは降順指定すら出来ないし、並び替えとWhereによる絞り込みとが一体化しているのもとても不便。 たとえば「特定のフォルダIDを持つキャンバス一覧」を"更新日付順"で取得しようとしても出来ない。やるとすればクライアント側でソートするか、始めから絞り込み(ま... --- ### キャンバス一覧を改善しつつフォルダ管理を実装 - 開発日記(66) - Published: 2024-10-25 - Modified: 2024-10-25 - URL: https://blog.idea-lane.com/?p=1435 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac 2023/12/14 キャンバス一覧を表示する部分を改善するのに備えて、画面レイアウト(コンポーネントの配置)について学ぶ。 今まであまりにも適当だったので、少しここで基礎を理解しておきたい。 Creating responsive and adaptive apps 2023/12/15 画面レイアウトのテスト。 アニメーションで徐々に左から表示される形にした。徐々にwidthを変える処理にしたのだが、キャンバス一覧(書類一覧)ゾーンの幅が極端に狭くなったときにエラーが起きないようにするのが意... --- ### ファイルへのエクスポートとファイルからのインポート - 開発日記(65) - Published: 2024-10-24 - Modified: 2024-10-24 - URL: https://blog.idea-lane.com/?p=1397 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac 2023/12/09 アイディアをレーンで整理するというコンセプトのソフトとして、当初は in Lane という仮の名前にしていた。 作りながら名前を色々考えた末「アイディアレーン」にしようと決めた。 実装を始めて間もなく9ヶ月。ついにFireBaseのプロジェクト名もin_laneからidea_laneに変えた。 その移行のためにソフト上のデータをバックアップするべく、(idea Laneの機能で)キャンバスをファイルにエクスポートした。 しかしそのエクスポートの途中でjson出力する際、謎不... --- ### FirestoreからRealtime Databaseへの移行がようやく実現出来た - 開発日記(64) - Published: 2024-10-24 - Modified: 2025-01-13 - URL: https://blog.idea-lane.com/?p=1323 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac 2023/11/15 Realtime Databaseにしてから、キャンバスの読み込みが遅い。 これはFirestoreから移行するにあたり、単純にそのまま同じ処理ではなく、将来の拡張に備える目的でパーツごとに都度中身を読み取りに行く構造に変えたためだった。たとえばアイディアが100個あれば100回読みに行くことになる。 しかしこれは、遅延処理を使っても予想以上に体感的に遅かった。(Realtime DBのせいではなく、やり方の問題) 仕方なく普通にまるごとDBから読み込んで構築する形にしたら... --- ### idea Laneで初めてロードマップを書いてみた - 開発日記(63) - Published: 2024-10-22 - Modified: 2024-10-24 - URL: https://blog.idea-lane.com/?p=1252 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac 2023/11/07 不動産の対応やら耳鳴り問題(突発性難聴?)やらでなかなか実装が進まない。 あまりにも進捗が思わしくなく時間が足りずストレスが溜まるので、今作っているアイディア・レーンでアイディア・レーンのロードマップを書いて整理してみた。 この時点で使ったのは、今作っているRealtimeDatabase対応バージョンではなくFireStore版。とはいえロードマップが描けてミニマムの実用レベルになってきたのだから、確実に開発が進んでは居る。 しかしVer1. 0は来年4月か。 当初思った... --- ### RealTimeDB対応に向けて苦労 - 開発日記(62) - Published: 2024-10-20 - Modified: 2024-10-22 - URL: https://blog.idea-lane.com/?p=1181 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac 2023/10/29 Firebase FireStoreからFirebase RealTime Databaseへの移行に向けた実装を続ける。 DBへの書き込み側の処理はそれなりに進捗があった。 読み込み側も少し実装できはじめている。RealtimeDBの値が変更されたとき、Provider/Notificationsにてウィジェットの表示に反映するという挙動が一部動きだした。 基本的にはうまく動いていたが、アイディアが画面外に移動したあと再度画面内に入ったとき(レーン内のアイディアが多いとき... --- ### 描画軽量化で見違えるように速くなった! - 開発日記(61) - Published: 2024-10-20 - Modified: 2024-10-20 - URL: https://blog.idea-lane.com/?p=1134 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac 2023/10/23 描画が重いことが気になっていたので、軽量化のための試行錯誤を行った。 一番のポイントはTextFieldを画面にたくさん置くのでは無く、「TextFieldに見えるContainer」を配置しておくこと。そして必要なタイミングで(ユーザに気づかれないように)TextFieldに切り替えて何事もなく処理を継続。終わったらまたContainerに戻すというもの。 しかしそのためにはこれまでと色々な前提が変わってしまうので、大規模な修正が必要になる。 1つの問題として、TextF... --- ### RealTime Database対応に備えてWidgetとモデルを分離 - 開発日記(60) - Published: 2024-10-15 - Modified: 2024-10-18 - URL: https://blog.idea-lane.com/?p=981 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac 2023/10/18 めずらしく5日間開発期間が空いた。このところプライベートの用事や耳鳴り問題のため、まともに進めなかった。 FireStoreからRealTimeDBへの移行に向けた検討の続き。 DBにモデル情報を格納する形式についての参考になる記事 Firebase Realtime DBを実践投入するにあたって考えたこと #Firebase - Qiita Flutter+Firestoreでリアルタイム取得する Firebase Realtime Database編|Flutter と... --- ### Flutter Webのレンダリング問題。文字がにじむ - 開発日記(59) - Published: 2024-10-14 - Modified: 2024-10-18 - URL: https://blog.idea-lane.com/?p=945 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac 2023/10/12 Flutterのクロスプラットフォーム対応で文字がにじむ問題に困っている。 Windows版とWeb版それぞれでビルドしたものを比べると、見た目が全く同じにならずテイストが違う。それはまぁ良いのだがWeb側の文字はいつも少しぼやけたような印象がある(1枚目左がWindows、右がWeb(Chrome))。 左:Windows、右:Web(Chrome) しかもこの現象はChromeが顕著のようだ(2枚目左Edge、右Chorome)。 同じWebでもブラウザによって違う。分... --- ### Flutter Webで大量描画の速度をテスト - 開発日記(58) - Published: 2024-10-14 - Modified: 2025-01-16 - URL: https://blog.idea-lane.com/?p=912 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac 画面で大量描画を行う際、レンダリング速度は重要です。 特にFlutter Webではどうしても遅くなりがちではないでしょうか。 今回の日記には「TextField」と「Container」をそれぞれ大量に配置した場合のパフォーマンス検証結果が含まれます。 参考になれば幸いです。 2023/10/08 画面でアイディアを移動したなどの操作に応じて、リアルタイムでデータベースに反映したい。FirestoreからRealTimeDBへの移行に向けた実装に合わせて、画面の表示ロジックや描画パフォ... --- ### TextFieldの文字入力のUndoをDebounceで実現 - 開発日記(57) - Published: 2024-10-14 - Modified: 2025-01-19 - URL: https://blog.idea-lane.com/?p=894 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac 2023/09/30 アイディア・レーンでは、テキストの入力を原則1行1アイディアという形で表現している。テキスト入力のUndo/Redo実装は避けて通れない話だ。 そしてついにテキスト入力のUndoの実装に着手することに。 結果かなり苦戦。 TextFieldにあるundoControllerに任せると、"複数のTextField"にまたがった処理をうまく成り立たせることが難しい。 テキスト入力中どのタイミングでUndoが追加されたかを外から知ることが出来ない。CanUndoがONになったタイ... --- ### Firestore から Realtime Database の移行へ一歩踏み出す - 開発日記(56) - Published: 2024-10-14 - Modified: 2025-01-13 - URL: https://blog.idea-lane.com/?p=882 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac 2023/09/26 Firebase Realtime Databaseのキャッチアップ。 保存するJSONの構造は、今までと大幅に変えないとダメそうだ。 2023/09/27 FirebaseのWebサーバにソフトをデプロイすると、xxxxx. web. app や xxxx. firebaseapp. com という形でドメイン名が割り当てられて、そこにアクセスすることでソフトを使うことができる。これまではテストで適当なプロジェクト名を入れていたのだが、ちゃんとした名前にしようと思い色々調... --- ### Flutter Webの日本語入力不具合その後 - 開発日記(55) - Published: 2024-10-14 - Modified: 2024-10-18 - URL: https://blog.idea-lane.com/?p=845 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac 2023/09/21 先日GitHubに報告したWebでの日本語入力の不具合の件(https://github. com/flutter/flutter/issues/134926)にコメントが来た。 不具合としてはTextFieldで日本語入力したときに表示される「下線」がずれて表示されるというもの。 どうも、まだ公開されていないFlutter最新版なら直っているらしい。 Please switch to master channel as follows and confirm: flutt... --- ### Firebase FireStore と RealTime Database どちらを選ぶか - 開発日記(54) - Published: 2024-10-11 - Modified: 2025-01-13 - URL: https://blog.idea-lane.com/?p=816 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac 2023/09/19 Firebaseで利用しているデータベースをFireStoreからRealTime Databaseへ移すほうが良いのか調査中。 「idea Lane」は、将来的にできるだけ無料か安い費用で使えるようにして、多くの人に気軽に使ってほしいと思っている。しかし実際のところはデータベースの使用に応じて私がGoogleにお金を払わなければならないことになる。 つまり大勢の人に無料や安く提供するには、なるべくDBの使用量やアクセス量を減らすことが非常に重要だ。 今のところは画面で「保... --- ### 実装ミスで一部データが消えた! - 開発日記(53) - Published: 2024-10-11 - Modified: 2024-10-18 - URL: https://blog.idea-lane.com/?p=780 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac 2023/09/15 描画の高速化のために、スクロール範囲から見えないアイディアの描画を省略するようにした。(後にこの修正が大きな問題を起こすのですが... ... この時点では知る由もなし) アイディアが多いときに処理が重くなっていたのは改善された。しかし描画しないとそのIdeaのStateが存在しなくなってしまい、フォーカスなどの処理に支障が出てくることが分かった。 処理のたびにいちいちアイディアが画面上にあるか(Stateが存在するか)の判断が必要になり、またもや全体的に複雑になってしまっ... --- ### Undo/Redoの挙動および実装を改善 - 開発日記(52) - Published: 2024-10-07 - Modified: 2024-10-18 - URL: https://blog.idea-lane.com/?p=748 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac 2023/09/13 Undo/Redo周りを整備する手始めとして、Undo/Redoボタンを画面上側のツールバーに移動した。 画面の一番上にUndo/Redoボタンを配置した これまではサブツールバーにUndo/Redoがあった(画面左下) Undo/Redoボタンの位置はどこが正解かという問題はあるが、押す頻度を踏まえて画面上部に持ってくることにした。 2023/09/14 ドラッグ&ドロップ周りと、Undo/Redo周りの挙動を修正。 Undo/Redoは、複数のコマンドをUndo/Red... --- ### アイディアのドラッグ&ドロップを改善 - 開発日記(51) - Published: 2024-10-07 - Modified: 2024-10-18 - URL: https://blog.idea-lane.com/?p=711 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac 2023/09/04~08 アイディアのドラッグ&ドロップを改善に取り掛かり、アイディアのマウス操作(メニュークリック&ドラッグ)を調整した。 2023/09/09 引き続きアイディアのドラッグ&ドロップの改善。 FlutterのDraggableでドラッグを行うと「オブジェクト上のクリックした場所に応じfeedbackアイテムの位置が自動でずれる」のだが、それがむしろ困るので止めたかった。調べるのにかなり手こずったが、結局Draggableウィジェット の dragAnchorStrategy... --- ### フォーカスやコンテキストメニューの挙動を改善 - 開発日記(50) - Published: 2024-10-06 - Modified: 2024-10-18 - URL: https://blog.idea-lane.com/?p=709 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac 2023/08/29 アイディアとレーンをまたいだフォーカスの処理などを調整。 気になることはたくさんあるが、1つずつ1つずつ解決している。だいぶ実用レベルになってきた。 2023/08/30~2023/08/31 フォーカスの移動など、使い勝手にまつわる部分を引き続き修正。 カーソル移動時に、画面からはみ出したらスクロールバーを移動させて画面内に入れるという処理の調整はそれなりに苦労した。 2023/09/01 ESCキーを押したときのコンテキストメニューのキーボード操作に対応中。フォーカスの... --- ### ESCキーを押したときのコンテクストメニューを作成 - 開発日記(49) - Published: 2024-10-06 - Modified: 2024-10-18 - URL: https://blog.idea-lane.com/?p=692 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac 2023/08/23 キーボードでESCを押したときのメニュー(ContextMenu的なもの)を作りたかったが、既存のWidgetやパッケージでは思ったものにならない。 各メニューの横にアイコンが表示できて、かつショートカットキーを表示したい。パッケージは結構探して時間を使ったが良い感じのが見つからなかった。(この当時) これは結局のところListTileやCardなどで自作しか無いか。 2023/08/25 細かな挙動改善や不具合修正。 ログインページをパスワードマネジャーの入力に対応させる... --- ### キーボードでの操作が快適になるように各種対応 - 開発日記(48) - Published: 2024-10-06 - Modified: 2024-10-18 - URL: https://blog.idea-lane.com/?p=676 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac 2023/08/20 アイディアをキーボード操作で削除したときのUndoを実装。とはいえフォーカスの復旧まではまだきちんと出来ていない。 Undo/Redo系対応状況 Ideaのチェックボックス ON/OFF Ideaのキーボードでの移動系 Ideaのキーボードでの追加 Ideaのキーボードでの削除(フォーカス復旧が未完了) Ideaのドラッグ&ドロップでの移動系 同レーン内 上側へ移動 下側へ移動 アイディア単体で移動 ツリーごと移動 他レーンへの移動 アイディア単体で移動 ツリーごと移動 新... --- ### アイディア操作をより自然に / TextField処理の難しさ - 開発日記(47) - Published: 2024-10-05 - Modified: 2024-10-18 - URL: https://blog.idea-lane.com/?p=648 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac 2023/08/09 アイディアの操作感をどうするかは課題。 これまで単にTextFieldが並んでいて文字が直接入力出来る状態になっていた。しかしアイディアを選択したい場合など、常に文字入力状態だと違和感を感じることもあった。 デフォルトではアイディアを「表示モード」として、文字を入力するときに「編集モード」にした方が良いのではと思い始めている。 そこで、以前からやりたかった文字入力ではない「表示モード」の概念にトライしてみることに。但しまだ実装としては始まったばかり。 2023/08/10~... --- ### レーン操作を進化させツールバーがスッキリ - 開発日記(46) - Published: 2024-10-05 - Modified: 2024-10-18 - URL: https://blog.idea-lane.com/?p=633 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac 2023/08/03 レーンの新規追加をマウスホバーで出来るようにした。その結果画面上部のツールバーのボタンを減らすことができたので、スッキリした。 画面上部のボタンが一気に減った こちらは以前の画面。上部ツールバーの真ん中にレーン操作ボタンがあった 実際にはボタンが常に画面に出ている方が、初めて使う場合などむしろ分かりやすいこともある。ただ機能が増えるにしたがってボタンだらけになってしまう面もあり、どうするかは工夫が求められる。 UIやUXは良く「シンプルに」と言われその通りだと思うが、機能が... --- ### レーンの表現やキーボード操作を改善 - 開発日記(45) - Published: 2024-10-05 - Modified: 2024-10-18 - URL: https://blog.idea-lane.com/?p=624 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac 2023/07/28 レーンの区切り線を描画するかしないか指定できるようにした。 2023/07/29 Ideaをキーボードで移動する処理の見直し。Undo/Redoに対応し、一部不具合修正。 アイディア内でカーソルが先頭にあるときにEnterを押した場合、そのアイディアの上側に新アイディアを追加するように変更。本当は「Shift+Enterを押したときに上側にアイディアを追加」もやりたかったのだが... ... 。WebでTextFieldからShift+Enterの検知がうまく出来なかった。... --- ### レーンの挿入・削除を実装 - 開発日記(44) - Published: 2024-10-05 - Modified: 2024-10-18 - URL: https://blog.idea-lane.com/?p=618 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac 2023/07/23 縦レーンの挿入・削除 いくつかの不具合修正の他、縦レーンの挿入・削除の実装に取り組んだ。普通に処理するロジックを組むことに加え、Undo・Redoを同時に実装するのはなかなか面倒だ。 動作したコマンドの履歴ウィンドウを作ってみた(画面ショット右側) 2023/07/24 横レーンの挿入(とUndo・Redo)を実装した。 2023/07/26 横レーンの削除(とUndo・Redo)を実装した。 レーンの削除をすると、その中にあるアイディアやリレーションも全部消すことになる。... --- ### 悩ましいUndo/Redo - 開発日記(43) - Published: 2024-10-04 - Modified: 2024-10-18 - URL: https://blog.idea-lane.com/?p=605 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac 2023/07/16 Undo、Redoの実装に着手 どうやって実装するか全体的に悩ましいが、中でもTextFieldのUndo/Redoの扱いが難しい。ネットを相当調べたりソースを読んだりしたが、なかなか良い感じに解決できていない。 TextFieldで元々使えるundo/redo機能を活用したかったが、カプセル化されていて他のClassから中が見られないので使い勝手が悪い。 残り回数なども見られずにただundo/redoが実行出来るだけなので、他のWidgetも含めた全体のUndo/Redo... --- ### アイディアをドラッグ&ドロップで移動できるように - 開発日記(42) - Published: 2024-10-03 - Modified: 2024-10-18 - URL: https://blog.idea-lane.com/?p=586 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac 2023/07/08 アイディアの枠をマウスでドラッグして移動出来るようにする挙動に着手。 ただ、ちょうど良い領域でマウスカーソルを変化させたり、ドラッグさせたりするのはなかなか難しい。TextField上だとカーソル変化の制御がかぶるし、Windowsだけ SystemMouseCursors. grab は使えなかったり... ... 。作り込めば出来るが。 他に、いくつかの不具合修正やリファクタリングを実施。 2023/07/09 結局、アイディアの枠でドラッグ&ドラッグ出来るように実装し... --- ### アイディアの移動やキーボード操作を改良 - 開発日記(41) - Published: 2024-10-03 - Modified: 2024-10-18 - URL: https://blog.idea-lane.com/?p=577 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac 2023/07/04 仮状態レーンに対してのキーボードの挙動を改善。まあまあ普通に操作できるようになってきた。 2023/07/05 アイディア移動の改善 アイディアを移動するとき、ツリー構造の一部ならその子要素ごと移動するようにした。アイディアレーンは見た目だけツリーにしているがツリー構造を持っているわけではない。そのため、移動するだけなのにロジックはややこしくなってしまった。(特に同一レーン内での縦方向の移動) たとえば上記で「あああ」を移動すると、「いいい」「ううう」も一緒に移動するように... --- ### Firebase周りのテコ入れ - 開発日記(40) - Published: 2024-10-03 - Modified: 2024-10-18 - URL: https://blog.idea-lane.com/?p=568 - カテゴリー: flutter, 開発日記 - タグ: Fireauth, Firebase, Mac 2023/06/30 Firestoreがテストモードのままだったので、設定を変更した。 これまでは認証なしでも通っていたのだが当然ダメになり、firedartについては記述方法が変わったのでそれなりに対応に時間がかかってしまった。 この当時はidea LaneではなくInLaneという名称でした 2023/07/01 認証周りの挙動を改善。ログイン状態を維持したり画面表示を分かりやすくしたり。まだやることは残っているが前より良くなった。 ちなみにここで表示されているパスワードの最低文字数6文字... --- ### 不具合管理ができるようになってきた - 開発日記(39) - Published: 2024-10-03 - Modified: 2024-10-18 - URL: https://blog.idea-lane.com/?p=558 - カテゴリー: flutter, 開発日記 2023/06/27 各種不具合を修正。 自分で作ったツールで不具合管理が出来るようになってきているのは良い。しかし直したい不具合や早く付けたい最低限の機能がたくさんだ... ... 。 2023/06/28 不具合修正。 Flutterの色周りは結構やっかいだ。今まで何気なくPrimaryColor=Colors. blueを指定して、アクセントカラーはLightblueAccentColorを使っていたが、色を変更できるようにしたためにその対応が自動で出来なくなったり。とはいえあまりここに時... --- ### マウスオーバーで仮アイテムを作成 - 開発日記(38) - Published: 2024-09-29 - Modified: 2024-10-18 - URL: https://blog.idea-lane.com/?p=541 - カテゴリー: flutter, 開発日記 2023/06/24 マウスオーバーで仮のアイディアやヘッダーを表示し、文字入力を開始すると実体化するという処理をに取り組み始めた。アイディアが簡単に作成できるし、なかなか便利になってきた。(画像の右側の薄い枠が仮アイディア状態) しかし処理を後から付け足し付け足ししているせいで、全体的にソースがかなりごちゃごちゃになってきてしまっている。 2023/06/25 マウスオーバー処理の続き。レーン内のアイディアも仮生成できるようになった。 2023/06/26 マウスオーバーの続き。マウスオーバー... --- ### エリアを選択出来るように - 開発日記(37) - Published: 2024-09-28 - Modified: 2024-10-18 - URL: https://blog.idea-lane.com/?p=532 - カテゴリー: flutter, 開発日記 2023/06/16 エリアの選択モードに着手。 ※当時は「レーンボディ」と呼んでいましたが、現在はレーンの中身の1区画のことをエリアと呼んでおりその表記に統一しています 2023/06/18 エリアの選択モードを引き続き開発。 2023/06/23 エリア選択の処理のうち、キーボード周りを中心に引き続き開発。色々複雑になってきて、実装や動作チェックに時間がかかってしまう。 ※本記事は当時の記録をもとに作成し、必要に応じて加筆・補足しています テキストベースの思考整理ツール「アイディア・レーン」... --- ### テーマカラーを設定できるように - 開発日記(36) - Published: 2024-09-28 - Modified: 2024-10-18 - URL: https://blog.idea-lane.com/?p=525 - カテゴリー: flutter, 開発日記 2023/06/14 テーマカラーの変更対応に着手。しかし設定画面で使っていたライブラリはPCでは動くものの、Webで動かないことが判明... ... 。 2023/06/15 設定画面をWebで動かすだけでかなりの労力を使ってしまった。 まだ完全ではないがテーマカラーの変更は出来るようになってきた。 とはいえ色の設定をクラウドに保存・読み込みする処理を付けようとしたところで苦戦。Material Colorを全部ではなく代表色だけクラウドに保存・読み込みしたいのだが難しい。 ※本記事は当時の記... --- ### ツールバーの改善 - 開発日記(35) - Published: 2024-09-28 - Modified: 2024-10-20 - URL: https://blog.idea-lane.com/?p=514 - カテゴリー: flutter, 開発日記 2023/06/12 このソフトIdeaLaneの不具合のメモを、IdeaLane上で管理してみた。まだ一部見切れているところがあったりするが、少しずつ実用レベルに近づいている感触がある。 アイディア用ツールバーを左に配置できるようにしたいと思ってやってみたところ盛大にバグった。 2023/06/13 昨日の続き。アイディア用ツールバーの配置を画面下部、そして左部にも変更できるようにした。 その後メインツールバー(画面上部)のボタンを減らすため、ファイルメニュー「新規作成」「別名保存」「読込」を... --- ### ログインページ作成/Webでのホスティングを開始 - 開発日記(34) - Published: 2024-09-27 - Modified: 2024-10-18 - URL: https://blog.idea-lane.com/?p=493 - カテゴリー: flutter, 開発日記 - タグ: Firebase 2023/06/09 Webサーバでのホスティングを目差し、Web版のみログインを強制にしたい。そのためログイン画面を作り始めた。 2023/06/11 昨日から今日にかけログインページ・ユーザ登録ページ・ログアウトを実装。 画面の構成をどうするか、そしてログインした後の画面遷移の制御など、思ったよりも時間がかかってしまった。でもこれで本格的なWebアプリっぽくなってきた。 そしてFirebaseでのWebホスティングも実施。これでどこでも誰でも使えるという状態になった。(誰もURLを知らないの... --- ### クラウドデータの読み書きで苦戦/WindowsではFirestore SDKが使えない!? - 開発日記(33) - Published: 2024-09-26 - Modified: 2024-10-20 - URL: https://blog.idea-lane.com/?p=477 - カテゴリー: flutter, 開発日記 2023/06/06 クラウド上のファイルを一覧表示する機能は出来てきた。次は個別ファイルをクリックしたときに「中身を読み込み」する処理に取り掛かった。Firestoreを扱うのは初めてなので、引っかかりポイントや覚えねばならない事が結構出てくる。 2023/06/07 ファイル一覧パネルをアニメーションで表示するときの不具合対応で難儀した。 アニメーションでWidgetのサイズを連続的に変える場合は、表示され始めなど小さい状態でも問題が出ないようにしないといけない。たとえばWidthが0とか1... --- ### ついにGitHubを使うことに - 開発日記(32) - Published: 2024-09-26 - Modified: 2024-10-20 - URL: https://blog.idea-lane.com/?p=456 - カテゴリー: flutter, 開発日記 2023/06/05 Notionでのファイル履歴管理が辛くなってきたので、ついにGitHubを利用開始。実はここまで開発記録をNotionに都度メモして、そこにソースファイルを貼り付けることでソースの履歴管理(? )をしていました。 ファイルが1つか2つのときはそれで十分だったのですが、さすがに辛くなってきたのでこの段階でGitHubを使うことにしました。 なお2024年現在、ソースだけで161ファイルあります。一人で開発していますがさすがにこれはgit無しでの管理は厳しいですね。 実装... --- ### アニメーション実装・キーイベント処理の改善 - 開発日記(31) - Published: 2024-09-26 - Modified: 2024-10-20 - URL: https://blog.idea-lane.com/?p=441 - カテゴリー: flutter, 開発日記 2023/06/04 ファイル一覧メニューの表示に着手。(画像でヘッダーと表示されているところ) ファイル一覧は、アニメーションで左からスライド表示 初めてアニメーションを実装した 左からスライドして表示されるようになった。 但し後日、ドロワー(Drawer)を使ったほうが便利であることが分かったが... ... 。 その他の対応 Firebaseのライブラリを入れた影響でWindowsアプリがビルド出来なくなっていた問題を解消。但しWindowsではまだクラウド関連の機能は使えない。 Webで... --- ### Flutter Webのフォント問題 - 開発日記(30) - Published: 2024-09-26 - Modified: 2024-10-20 - URL: https://blog.idea-lane.com/?p=429 - カテゴリー: flutter, 開発日記 - タグ: クロスプラットフォーム 2023/06/03 続き FlutterのWeb対応は色々と課題がある。 起動時に文字が豆腐になってしまう 漢字が中国フォントになってしまう 日本語入力の制御がおかしい(判定出来ない) 挙動がPC版ビルドに比べて遅くなる これまでWindows用にビルドしていたが、そのときは起きていなかった問題だ。 Windows用アプリにするよりも「インストール不要で動かせるようにした方が便利だろう」と安易にWeb対応に着手したが、色々つらい・・・。 漢字をよく見ると中国語のようになっている Webで漢字が... --- ### Firebase認証とFirestoreへの保存・読込 - 開発日記(29) - Published: 2024-09-25 - Modified: 2024-10-20 - URL: https://blog.idea-lane.com/?p=417 - カテゴリー: flutter, 開発日記 - タグ: Firebase, Firestore 2023/06/01 Firebase認証とFirestoreの利用に着手。 色々な日本語のFlutter関連サイトに助けられた。本当に感謝。 このブログも制作過程を書いた上でソースを公開しているのは、多少は参考になる人がいるかも知れないと願ってのことです。(勉強しながら作っているので、未熟な部分が多いと思いますが) FirebaseはWindowsアプリに対応していない模様。firedartを使えばなんとかなるのだろうか?(link) 2023/06/02 Firestoreへの保存・読込... --- ### ツールバーの実装とテキストの色変更 - 開発日記(28) - Published: 2024-09-25 - Modified: 2024-10-20 - URL: https://blog.idea-lane.com/?p=405 - カテゴリー: flutter, 開発日記 2023/05/29 ツールバーの実装に着手。 設定画面をコンテキストメニューに対応させた。 スイッチ切り替えがなぜか動かなくて苦労したが、最終的にはSetStateが出来ていなかっただけだった... ... 。 ついでに画面の上部を少しスッキリさせた。 2023/05/30 アイディアの文字スタイル指定(太字・斜体・下線・取り消し線)の実装。 フォーカスしているアイディアの文字スタイルの状態と、ツールバーのアイコンの状態も連動させた。 文字スタイルの状態をファイル保存・読込にも対応させた。... --- ### Macでのビルドにトライ/コンテクストメニューの実装着手 - 開発日記(27) - Published: 2024-09-24 - Modified: 2024-10-20 - URL: https://blog.idea-lane.com/?p=399 - カテゴリー: flutter, 開発日記 - タグ: クロスプラットフォーム 2023/05/25 色々行き詰まる Flutterは何かやるたびにひたすらつまづく。 例えばMacで単にビルドしようとするだけで、全然動かない。XCodeのバージョンを下げないとダメだったり、GoogleDriveとSyncしているとダメだったり... ... 。そんなの分かるわけがない。 そんなか、StackOverFlowや、日本語のFlutterの記事には本当にいつも助けられている。あらためて感謝。 その後Macで動かすところまではなんとかいけたが... 、おかしな挙動が色々発生した。考... --- ### 複数プラットフォーム対応でWeb・Windowsともビルドできるように - 開発日記(26) - Published: 2024-09-23 - Modified: 2024-10-20 - URL: https://blog.idea-lane.com/?p=382 - カテゴリー: flutter, 開発日記 - タグ: クロスプラットフォーム 2023/05/22 あらためてWebでの動作に対応させてみようとして、まずはファイル読み込みから着手。 Webでもファイルが読めるようになってちょっと感動。ワンソースでマルチプラットフォームに対応。これはflutterの凄いところ。 2023/05/23 Web上でのファイル保存(ダウンロード)を実装。ただし今度はWindows用にビルド出来なくなった... ... 。 レーンの区切り線など描画も修正。 2023/05/24 Web用もPC用もビルドできるように、条件付きビルド(インポート)を... --- ### レーンやリレーション表示の改善を実施 - 開発日記(25) - Published: 2024-09-22 - Modified: 2024-10-20 - URL: https://blog.idea-lane.com/?p=368 - カテゴリー: flutter, 開発日記 2023/05/19 レーンサイズがファイルのセーブ・ロード時にも反映されるようにした。 縦レーンの横幅調整機能を実装した。 画面をパンしすぎたときに横レーンの区切り線がヘッダーと離れないようにしたり、縦レーンのヘッダーを小さくしたときにエラーが出ないようにするなど細かい点を改善。 2023/05/20 ログを重要度に応じて出力できるようにした。 リレーションの改善 横レーン内の縦スクロール時、リレーションがずれていたのを修正。また線の両端が画面内に収まらない場合は色が薄くなるような対応も入れた... --- ### 横レーン単位でスクロール可能にしたが、2重スクロールバーがイマイチ… - 開発日記(24) - Published: 2024-09-22 - Modified: 2024-10-20 - URL: https://blog.idea-lane.com/?p=348 - カテゴリー: flutter, 開発日記 2023/05/14 横レーンを考慮したリレーションの描画に着手。 座標決めと表示は意外と簡単に実装できた。但しアイディアがレーン内でスクロールしている時や、隠れてしまっている場合にどう描画するかはこれから考えねばならない。 2023/05/16 キャンバスの縦スクロールバーが表示出来なくなって苦戦(画面一番右に出したい) その後なんとか縦スクロールバーを出すことが出来た。出なかった理由は、単純に画面の外(さらに右側)にはみ出てしまっていたらしい。原因が分かるまで苦労した。 ついでに、スクロール... --- ### レーンを超えたアイディアの移動 - 開発日記(23) - Published: 2024-09-20 - Modified: 2024-10-20 - URL: https://blog.idea-lane.com/?p=339 - カテゴリー: flutter, 開発日記 2023/05/08 Firebase関連のファイルを組み込み。実装はまだ。 2023/05/09 レーンの高さ最適化機能実装のトライアル。 ウィンドウサイズを変えたときに、レーンの高さも自動で変わるようにするようにした。 2023/05/11 レーンを超えたアイディアの移動を実装。横レーン追加によりこれまでの挙動を結構見直すことになった。 キーボード操作としてはCtrl+矢印を割り当てていたが、いったんAlt+カーソルキーに変更した。かつShift+Alt+カーソルキーで明示的にレーンを超えた... --- ### 横レーンの処理を強化しファイルの保存に対応 - 開発日記(22) - Published: 2024-09-19 - Modified: 2024-10-20 - URL: https://blog.idea-lane.com/?p=332 - カテゴリー: flutter, 開発日記 2023/05/06 ファイルの保存を横レーンに対応するための実装に着手 その他少しの挙動改善 2023/05/07 横レーンに対応したファイルの読み書きを実装。ファイルの項目が変わったのでjsonファイルも添付。 横レーンの削除にも対応。 横レーンの高さ変更に関連した描画の改善。 この時点でのflutterソースファイル:main. dartimport 'package:flutter/material. dart'; import 'package:flutter/services. da... --- ### 横レーン本体の描画とタイトル編集 - 開発日記(21) - Published: 2024-09-19 - Modified: 2024-10-20 - URL: https://blog.idea-lane.com/?p=324 - カテゴリー: flutter, 開発日記 2023/05/04 横レーンのタイトルを編集出来るようにした。 そしてついに横レーン本体の描画にとりかかる。 設定画面の実装もテストし始めた。 2023/05/05 横レーンの高さの変更に対応。どんどん複雑さが増してきた。今のところは問題ないが描画速度が心配。 この時点でのflutterソースファイル:main. dartimport 'package:flutter/material. dart'; import 'package:flutter/services. dart'; impor... --- ### 横レーンの日本語タイトルを縦に表示 - 開発日記(20) - Published: 2024-09-19 - Modified: 2024-10-20 - URL: https://blog.idea-lane.com/?p=311 - カテゴリー: flutter, 開発日記 2023/05/01 横レーンを追加できるようにするための実装に着手 画像の黄緑色の部分をヘッダーとして表示し、まずはここに文字を書けるようにしたい。実際の横レーンの描画はそのあとで対応する 2023/05/03 横レーンのタイトル文字を「縦」にしたかったが、Flutterかつ日本語に関して標準機能では難しいようだ 検索した結果「Flutterで日本語の縦書きを実現する②」を元に表示が実現出来た。ありがたい。こちらの情報が無ければどうなっていたか... ... 。 (2024/09/19追記:紹... --- ### 縦と横のスクロールバー表示 - 開発日記(19) - Published: 2024-09-17 - Modified: 2024-10-20 - URL: https://blog.idea-lane.com/?p=299 - カテゴリー: flutter, 開発日記 2023/04/30 2方向にスクロールできるスクロールバーを表示するため、試行錯誤。 シンプルなプログラムでテストした結果 ScrollbarとSingleChildScrollViewをダブルでネストする形に。 scroll_test_doublescroll(調査に使ったプログラム):main. dart ※実際に動かす場合はこれまでのプロジェクトとは別にプロジェクトを作成するか、DartPadを利用してくださいimport 'package:flutter/material. dart'... --- ### 拡大・縮小・スクロールで試行錯誤 - 開発日記(18) - Published: 2024-09-17 - Modified: 2024-10-20 - URL: https://blog.idea-lane.com/?p=286 - カテゴリー: flutter, 開発日記 2023/04/28 拡大縮小対応で引き続き試行錯誤 縮小したとき画面に隙間(空間)が出来てしまう問題を解決するために、またtransform. scaleを使う形に戻してみた。 すると縮小はなんとかなったが、今度はスクロールがイマイチになってしまった。flutterはウィジェットごとにクセがあり、思い通りに動かすのは難しい。。。 結局スクロールはInteractiveViewerを外して自分で計算することにした。加速度処理が無くなって快適さはなくなったが、「上にドラッグ開始すると斜めにパンでき... --- ### キーボード操作・ショートカットキーに対応 - 開発日記(17) - Published: 2024-09-17 - Modified: 2024-10-20 - URL: https://blog.idea-lane.com/?p=265 - カテゴリー: flutter, 開発日記 2023/04/24 キーボードの Ctrl+カーソル左右キーで、レーンを超えたアイディアの移動に対応。 2023/04/25 リレーション指定の開始操作をとりあえずF1キーにしていたが、Ctrl+Enter で出来るようにした。 F1キーでもWindowsで動かしているときは問題なかったが、Web版でブラウザで動かすようにしたら操作を取得できなくなった。またCtrl+Tabもブラウザでは取得出来ないようだ。 キーボード操作で気軽にアイディア同士のリレーションを張れるようにしたいのだが、ショート... --- ### アイディアの関係性を表現するための矢印 - 開発日記(16) - Published: 2024-09-16 - Modified: 2024-10-31 - URL: https://blog.idea-lane.com/?p=241 - カテゴリー: flutter, 開発日記 矢印の描画に工夫 2023/04/19 矢印の描画にトライ。ソースもある程度整理した。 複数の矢印を1つのアイディアに引くと、矢印が重なって見づらい。少しだけずらすようにした。 そろそろ画面にスクロールバーを表示したいが、こちらはまだうまくいかない。 リレーションの設定ができるように 2023/04/20 リレーションの描画を改善。さらに特定の線を選んで、プロパティの設定画面を呼び出せるようにした。 リレーションの設定画面を改善 2023/04/21~2023/04/22 線のダイアログを改善。... --- ### リレーションの描画調整と設定ダイアログ - 開発日記(15) - Published: 2024-09-16 - Modified: 2024-10-20 - URL: https://blog.idea-lane.com/?p=236 - カテゴリー: flutter, 開発日記 2023/04/17 あらためてアイディア同士をつなぐ線(リレーション)の描画に取りかかる。 今回はCustomPaintではなくContainerを丸や線として直接配置している。自分で計算するようにしたらうまくいっている。スクロールしてもずれない。 なおRenderBoxの描画位置から求める方法だと、パンしたときにどんどんずれていってsいまった。また起動時のinitStateでContextが取得出来ずNullになってしまうため、起動直後の描画に失敗するなど、うまく対応できなかった 拡大縮小処... --- ### タイトル行を固定してそれ以外の領域のみスクロールしたい - 開発日記(14) - Published: 2024-09-16 - Modified: 2024-10-20 - URL: https://blog.idea-lane.com/?p=216 - カテゴリー: flutter, 開発日記 2023/04/13 interactiveViewerは、慣性スクロールが止められず、ずれてしまう。制御しづらいのでやはり厳しいか。(下記はinteractive_viewer_scroll_test) flutterのソースファイル:main. dartimport 'package:flutter/material. dart'; void main { runApp(const MyApp); } class MyApp extends StatelessWidget { const M... --- ### ChatGPTに大きなヒントをもらう - 開発日記(13) - Published: 2024-09-16 - Modified: 2024-10-20 - URL: https://blog.idea-lane.com/?p=212 - カテゴリー: flutter, 開発日記 2023/04/10 flutterのInteractiveViewerで拡大縮小したときの、線の描画ずれと格闘中。日本語の情報が少なくなかなか難しい。 flutterのソースファイル:main. dartimport 'package:flutter/material. dart'; import 'package:flutter/services. dart'; import 'package:flutter_riverpod/flutter_riverpod. dart'; import ... --- ### Flutterで記述ミスに気づかず苦しめられる - 開発日記(12) - Published: 2024-09-10 - Modified: 2024-11-15 - URL: https://blog.idea-lane.com/?p=170 - カテゴリー: flutter, 開発日記 2023/04/09 自分のプログラムの不具合に苦しめられた。function;とfunction;の違いをよく意識しないといけない。 たとえば addNewLane; と書くべきところを addNewLane; と書いていた。それに気づかず、思った挙動にならず混乱してしまった。 あとから振り返るとしょぼいミスなのだが、これはflutter・dartの仕様の微妙な部分に思える。単にカッコを打ち漏れたり、コピペの時に足し忘れてしまうこともある。ちょっとしたミスなのだが、やってしまうと気付きづらい。... --- ### 拡大縮小機能で試行錯誤 - 開発日記(11) - Published: 2024-09-08 - Modified: 2024-10-20 - URL: https://blog.idea-lane.com/?p=162 - カテゴリー: flutter, 開発日記 2023/04/08 いくつか不具合を修正するとともに、ファイル読み書きのロジックをwidgetから切り出し。 ツールバーとCanvasの描画領域のクラス分離を実施。予想通りの挙動になかなかならず、かなり苦労した。 これまで画面の拡大縮小はTransformを使って実現していた。しかしTransformだと縮小したときに不要な空間が出来てしまうなどしてしまい、うまく改善出来なかった。そこでInteractiveViewerを初めて使ってみた しかしInteractionViewerも、マウスでパ... --- ### ついにアイディア同士のリレーションがつながった - 開発日記(10) - Published: 2024-09-06 - Modified: 2024-10-20 - URL: https://blog.idea-lane.com/?p=141 - カテゴリー: flutter, 開発日記 2023/04/06 関連付けたIdea同士の線を描画をしようと思ったがうまくいかない。 今の描画状況を確認するためにデバッガで表示を変えてみた。こういった機能があるのはありがたい。 2023/04/07 引き続きアイディア同士を線で結ぶ機能(リレーション)の作成。 Paintを使って描画することも探りながらなので、座標など、描画位置を確認しつつ実装を試行錯誤。 そしてついに線がつながった。ソースも載せておきます。 flutterのソースファイル:main. dartimport 'packag... --- ### アイディア同士を線でつなぐ「リレーション」機能に挑戦 - 開発日記(9) - Published: 2024-09-04 - Modified: 2024-10-20 - URL: https://blog.idea-lane.com/?p=136 - カテゴリー: flutter, 開発日記 2023/04/03 Idea同士を線で結ぶための準備。(リレーション機能) flutterの実装としてはRiverpodの利用にトライ。Snackbarに、選択したIdeaと関連付けたIdeaの情報を表示。 flutterのソースファイル:main. dartimport 'package:flutter/material. dart'; import 'package:flutter/services. dart'; import 'package:flutter_riverpod/flut... --- ### この時点での機能まとめ - 開発日記(8) - Published: 2024-09-03 - Modified: 2024-10-20 - URL: https://blog.idea-lane.com/?p=131 - カテゴリー: flutter, 開発日記 2023/04/02 昨日実装したファイルの読み書きを改善。 任意ファイルの指定やタイトルの保存・読み込みにも対応した。default. jsonがあれば起動時に読み込むようにもした。 この時点での機能をまとめると下記のような感じ レーンの追加、削除 アイディアの追加、削除 アイディアの階層化 画面の拡大・縮小 ファイル(json)への保存・読込 せっかくなのでAndroid用に初めてビルドしてみた。※この時点ではWindows用のアプリとして作っています。将来に備えスマホ向けにビルド出来るか試... --- ### ファイルへの保存・読込機能を実装 - 開発日記(7) - Published: 2024-09-02 - Modified: 2024-10-20 - URL: https://blog.idea-lane.com/?p=126 - カテゴリー: flutter, 開発日記 2023/03/29 InheritedWidgetやBLOC、Providerなどの状態管理の基礎を勉強中。コードは微修正程度。 2023/04/01 ファイルへの保存・読込機能とタイトル欄を付けた。基礎を勉強したおかげでFlutterに慣れてきた。 ちなみにキャプチャ内にある★3キャラというのは、東方アルカディアレコードというゲームを指している。 main. dartimport 'package:flutter/material. dart'; import 'package:flutte... --- ### ブログに掲載されているソースの実行方法 - Published: 2024-09-02 - Modified: 2024-10-01 - URL: https://blog.idea-lane.com/?p=109 - カテゴリー: flutter, お役立ち 本ブログに掲載しているソースの多くは、簡単に動かすことが出来ます。idea Laneの初期のプログラムをそのまま掲載していますので、勉強目的など興味のある方はお試しください。 なお flutter に慣れていない方は、ソースが1つだけ(main. dartのみ)の記事でお試しください。 FlutterとAndroid Studioのセットアップ flutterとAndroid Studioのセットアップは下記を参考にしてください。 Windowsの場合:Flutterの開発環境を構築(Windo... --- ### アイディアがうまく描画されず苦戦 - 開発日記(6) - Published: 2024-08-31 - Modified: 2024-10-31 - URL: https://blog.idea-lane.com/?p=100 - カテゴリー: flutter, 開発日記 Flutterの基礎でつまづく 2023/03/21 「一度レーン(Lane)が生成した後だと、追加されたアイディア(Idea)がうまく描画されない」という問題が直らない。。。 Flutterの基礎やRiverpodなどを学ぶも、結構難しくまだ理解しきれていない。 Keyの問題なのか。データは生成されているはずだが描画がされないように見える。なぜEnterキーででさらに新しいIdeaを作ると、古いものも含めて描画されるのか。分からない。 再現専用のessential版を作った。 main_ess... --- ### カーソルキーでアイディアを自動追加 - 開発日記(5) - Published: 2024-08-31 - Modified: 2024-10-31 - URL: https://blog.idea-lane.com/?p=88 - カテゴリー: flutter, 開発日記 キーボード操作の機能改善 2023/03/20 カーソル右を押したときに隣のレーンに移動し、かつ不足するアイディアを自動で追加するようにした。 ただ、やや挙動がおかしい。laneKeysにうまく値が入らないようだ。 main. dartimport 'package:flutter/material. dart'; import 'package:flutter/services. dart'; import 'indent_line_painter. dart'; import 'dart:m... --- ### 複数レーンと拡大縮小 - 開発日記(4) - Published: 2024-08-31 - Modified: 2024-10-31 - URL: https://blog.idea-lane.com/?p=77 - カテゴリー: flutter, 開発日記 初めてのソース分割 2023/03/19 これまでは1つのソースファイル(main. dart)だけで書いていたが、ChatGPTがソースの長さを受け入れられなくなってきたのでファイルを分割してみることにした。 インデントの線を書く部分を外出しにして2ファイルに。挙動自体は変わっていない。これでChatGPTが読んでくれると良いのだが。 main. dart indent_line_painter. dart その後、画面(キャンバスと読んでいます)の拡大縮小ボタンを付けた。制御は甘いがなんとか... --- ### アイディアのツリー表示 - 開発日記(3) - Published: 2024-08-30 - Modified: 2024-10-31 - URL: https://blog.idea-lane.com/?p=56 - カテゴリー: flutter, 開発日記 ChatGPTは早くも限界 2023/03/18 ツリーが付いた。苦労したもののなんとかきれいに描画出来るようになった。 ソースの生成は、ChatGPT 4. 0になってChatGPT 3. 5よりは良くなっている。ただChatGPT 4. 0でも、「このソースをこのように直してください」とプロンプトに指示するとき、渡すソース自体が長くなってきてこれ以上長いものは受け入れてくれないようだ。早くも限界。 描画エラーのとき調査しやすいよう、内部の管理情報も画面に表示できるようにした。 コードはこんな... --- ### Flutterで文字を並べて階層化してみる - 開発日記(2) - Published: 2024-08-28 - Modified: 2024-10-31 - URL: https://blog.idea-lane.com/?p=39 - カテゴリー: flutter, 開発日記 実装開始 2023/03/17 まずは文字を縦に並べる。 そして階層化出来るようにしてみた。 といってもいきなりこんなにコーディング出来たわけでなく、リリースされたばかりのChatGPTにコードを生成してもらったものだ。 正直あまりflutterもdartも分からない状態で、AIが作ってくれたコードを元になんとか動かしたというところ。 しかしChatGPTが生成するコードを動かそうとすると、ほぼ必ずエラーが出てビルドに失敗する。でもそのエラーを見ても何のことか全くわからないので、ネットでエラーメ... --- ### 私が欲しいソフトのイメージ - 開発日記(1) - Published: 2024-08-27 - Modified: 2024-10-31 - URL: https://blog.idea-lane.com/?p=34 - カテゴリー: flutter, 開発日記 2023年 3月某日 私が欲しいソフトのイメージは、こんな感じ。 テキストで書いたアイディアを、縦・横にならべたり階層化できる それを「優先度」「緊急度」とか「役割別」「プロジェクト別」のように表のような形で分類したい 表というとExcelをイメージするが、1つ1つがセルではなくてもっと大きいもの。1つのセルの中で階層化したり色々できる 行列ではなくて「レーン」という呼び方の方が、思い描く概念に近そう。 イメージは、アイディアを分類するときにラベルやタグを前提とするのではなく、マウスやキーボード... --- ### 初めまして! アイディアをまとめるソフト「idea Lane」 - Published: 2024-08-26 - Modified: 2025-02-04 - URL: https://blog.idea-lane.com/?p=13 - カテゴリー: flutter, 開発日記 頭の中の"もやもや"を整理するためのツール 「アイディア・レーン」というソフトをご存知でしょうか。 まだ出来たてなので、ご存知の方はほとんど居ないと思いますが... ... 簡単に言うと、頭の中の"もやもや"を整理するためのツールです。 どんなソフトか? まずはホームページをご覧ください:https://idea-lane. com 基本無料で使えます。ただサーバ維持のため少額有料プラン(月100円台から)も提供します。 日々機能改善中であり、まだまだ私の思い描く状態にはほど遠いですが、現状でも... ---