TF-2046 Move passFocusNode to controller to dispose it when view disposed
(cherry picked from commit acfd76687537e81d1865f2c153d8d5324649ea4f)
This commit is contained in:
@@ -30,8 +30,6 @@ abstract class BaseLoginView extends GetWidget<LoginController> {
|
|||||||
final responsiveUtils = Get.find<ResponsiveUtils>();
|
final responsiveUtils = Get.find<ResponsiveUtils>();
|
||||||
final imagePaths = Get.find<ImagePaths>();
|
final imagePaths = Get.find<ImagePaths>();
|
||||||
|
|
||||||
final FocusNode passFocusNode = FocusNode();
|
|
||||||
|
|
||||||
Widget buildLoginMessage(BuildContext context, Either<Failure, Success> viewState) {
|
Widget buildLoginMessage(BuildContext context, Either<Failure, Success> viewState) {
|
||||||
return Padding(
|
return Padding(
|
||||||
padding: const EdgeInsets.only(top: 11, bottom: 36, left: 58, right: 58),
|
padding: const EdgeInsets.only(top: 11, bottom: 36, left: 58, right: 58),
|
||||||
@@ -146,7 +144,7 @@ abstract class BaseLoginView extends GetWidget<LoginController> {
|
|||||||
itemBuilder: (context, loginUsername) => RecentItemTileWidget(loginUsername, imagePath: imagePaths),
|
itemBuilder: (context, loginUsername) => RecentItemTileWidget(loginUsername, imagePath: imagePaths),
|
||||||
onSuggestionSelected: (recentUsername) {
|
onSuggestionSelected: (recentUsername) {
|
||||||
controller.setUsername(recentUsername.username);
|
controller.setUsername(recentUsername.username);
|
||||||
passFocusNode.requestFocus();
|
controller.passFocusNode.requestFocus();
|
||||||
},
|
},
|
||||||
suggestionsBoxDecoration: const SuggestionsBoxDecoration(borderRadius: BorderRadius.all(Radius.circular(14))),
|
suggestionsBoxDecoration: const SuggestionsBoxDecoration(borderRadius: BorderRadius.all(Radius.circular(14))),
|
||||||
noItemsFoundBuilder: (context) => const SizedBox(),
|
noItemsFoundBuilder: (context) => const SizedBox(),
|
||||||
@@ -174,7 +172,7 @@ abstract class BaseLoginView extends GetWidget<LoginController> {
|
|||||||
..onChange(controller.setPasswordText)
|
..onChange(controller.setPasswordText)
|
||||||
..textInputAction(TextInputAction.done)
|
..textInputAction(TextInputAction.done)
|
||||||
..hintText(AppLocalizations.of(context).password)
|
..hintText(AppLocalizations.of(context).password)
|
||||||
..setFocusNode(passFocusNode))
|
..setFocusNode(controller.passFocusNode))
|
||||||
.build()));
|
.build()));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -70,6 +70,7 @@ class LoginController extends BaseController {
|
|||||||
|
|
||||||
final TextEditingController urlInputController = TextEditingController();
|
final TextEditingController urlInputController = TextEditingController();
|
||||||
final TextEditingController usernameInputController = TextEditingController();
|
final TextEditingController usernameInputController = TextEditingController();
|
||||||
|
final FocusNode passFocusNode = FocusNode();
|
||||||
|
|
||||||
LoginController(
|
LoginController(
|
||||||
this._authenticationInteractor,
|
this._authenticationInteractor,
|
||||||
@@ -378,6 +379,7 @@ class LoginController extends BaseController {
|
|||||||
|
|
||||||
@override
|
@override
|
||||||
void onClose() {
|
void onClose() {
|
||||||
|
passFocusNode.dispose();
|
||||||
urlInputController.dispose();
|
urlInputController.dispose();
|
||||||
usernameInputController.dispose();
|
usernameInputController.dispose();
|
||||||
super.onClose();
|
super.onClose();
|
||||||
|
|||||||
Reference in New Issue
Block a user