FlutterKaigi / conference-app-2023

The Official Conference Application for FlutterKaigi 2023
https://flutterkaigi.jp/conference-app-2023/
Apache License 2.0
132 stars 27 forks source link

feat/change primary scroll controller #246

Closed koji-1009 closed 11 months ago

koji-1009 commented 11 months ago

Description

Fixes #225

Type of change

How Has This Been Tested?

Confirm the operation with the iOS simulator at hand.

Checklist

Kurogoma4D commented 11 months ago
  1. セッション一覧を表示する
  2. スポンサー一覧を表示する
  3. 再度セッション一覧を表示してスクロール、status barをタップ の手順で操作すると期待通りにスクロールしません。 おそらくStatefulShellRouteなので遷移でのリビルドが発生せずにScrollControllerが更新されないのが原因かと思われます。

build メソッドを起点にするより、Routeの変更を起点にして切り替えるほうが確実そうですね。

koji-1009 commented 11 months ago

確かにそうでした! RouteかVisibilityの変更で対応してみます。StatefulShellRouteが、この機能とのトレードオフなんじゃないかってぐらい扱いにくいです。。

koji-1009 commented 11 months ago

de0a421にて、VisibilityDetectorに更新タイミングを変更しました。Routeの変化を検知する方法は、pathの変化を監視する箇所とPrimaryScrollControllerを取得するBuildContextを扱う箇所の関係で、いまいちうまく実装できなかったです。

github-actions[bot] commented 11 months ago

Commented by GitHub Bot

PR: #246 preview link