          else if (destination->label() == NAV_FAVORITE_LABEL_WORK) has_work = true;
        }
      }
    }
  
    // TODO: should we build a new layout and swap it in?
 
</s> remove   recent_layout->addStretch();
 </s> add   // add home and work if missing
  if (!has_home) {
    auto widget = new DestinationWidget(this);
    widget->unset(NAV_FAVORITE_LABEL_HOME);
    destinations_layout->insertWidget(0, widget);
  }
  if (!has_work) {
    auto widget = new DestinationWidget(this);
    widget->unset(NAV_FAVORITE_LABEL_WORK);
    // TODO: refactor to remove this hack
    int index = !has_home || (current_destination && current_destination->isFavorite() && current_destination->label() == NAV_FAVORITE_LABEL_HOME) ? 0 : 1;
    destinations_layout->insertWidget(index, widget);
  }

  destinations_layout->addStretch(); </s> remove     setVisible(dest.has_value());
 </s> add     emit requestVisible(dest.has_value()); </s> remove       MapWindow * m = new MapWindow(get_mapbox_settings());
 </s> add       auto m = new MapPanel(get_mapbox_settings());
      // skip current destination
      if (current_destination && *destination == *current_destination) continue;
      destinations.push_back(destination);
          else if (destination->label() == NAV_FAVORITE_LABEL_WORK) has_work = true;
        }
      // skip current destination
      if (current_destination && *destination == *current_destination) continue;
      destinations.push_back(destination);
      }
    }
  
    // TODO: should we build a new layout and swap it in?
keep add keep keep keep keep
 UI: improved nav destination entry (#28476) 
selfdrive/ui/qt/maps/map_settings.cc