initState method

  1. @override
void initState()
override

Init controllers

Implementation

@override
void initState() {
  super.initState();

  _menuAnimationController = AnimationController(vsync: this)
    ..addListener(() {
      setState(() {});
    });

  _subMenuAnimationController = AnimationController(vsync: this)
    ..addListener(() {
      setState(() {});
    });

  if (widget.controller != null) {
    // Initialize values based on controller values
    isMenuOpen = widget.controller!.isMenuOpen;
    isSubMenuOpen = widget.controller!.isSubMenuOpen;

    // Start listen controller changes
    widget.controller!.addListener(() {
      isMenuOpen = widget.controller!.isMenuOpen;
      isSubMenuOpen = widget.controller!.isSubMenuOpen;
    });
  }
}