buildingEnd1stStepTestNeedResetFocus method

void buildingEnd1stStepTestNeedResetFocus([
  1. FocusNode? buildingEndFocusNode
])

构建过程中原本聚焦的点位没有在build中调用时启动新点位(最后在build阶段创建的点位继承该焦点)

Implementation

void buildingEnd1stStepTestNeedResetFocus([FocusNode? buildingEndFocusNode]){
  /// 避免因为 build 导致焦点丢失
  if(__buildingHasFocusNode == null && currentFocusNode.isFocused && currentFocusNode != DEFAULT_FOCUS_NODE){
    // debugger();
    currentFocusNode.blur();
    (_currentFocusNode = buildingEndFocusNode ?? _buildingFocusNode).focus();
    WidgetsBinding.instance.addPostFrameCallback((_){
      focusUpdate((){});
    });
  }
  __buildingHasFocusNode = null;
}