### Apache Airflow version

main (development)

### What happened

Currently when a new task is added to a dag and in the grid view, a user selects the top level of a dag run and then clicks on "Queue up new tasks", the list returned by the confirmation box is always empty. 

It appears that where the list of tasks is expected to be set, [here](https://github.com/apache/airflow/blob/ada91b686508218752fee176d29d63334364a7f2/airflow/api/common/mark_tasks.py#L516), `res` will always be an empty list. 


### What you think should happen instead

The UI should return a list of tasks that will be queued up once the confirmation button is pressed. 

### How to reproduce

Create a dag, trigger the dag, allow it to complete. 

Add a new task to the dag, click on "Queue up new tasks", the list will be empty.

### Operating System

n/a

### Versions of Apache Airflow Providers

2.3.3 and upwards including main. I've not looked at earlier releases. 

### Deployment

Other 3rd-party Helm chart

### Deployment details

_No response_

### Anything else

I have a PR prepared for this issue. 

### Are you willing to submit PR?

- [X] Yes I am willing to submit a PR!

### Code of Conduct

- [X] I agree to follow this project's [Code of Conduct](https://github.com/apache/airflow/blob/main/CODE_OF_CONDUCT.md)

from airflow.www.widgets import AirflowModelListWidget, AirflowVariableShowWidget
PAGE_SIZE = conf.getint("webserver", "page_size")
FILTER_TAGS_COOKIE = "tags_filter"
FILTER_STATUS_COOKIE = "dag_status_filter"
LINECHART_X_AXIS_TICKFORMAT = (
    "function (d, i) { let xLabel;"
    "if (i === undefined) {xLabel = d3.time.format('%H:%M, %d %b %Y')(new Date(parseInt(d)));"
    "} else {xLabel = d3.time.format('%H:%M, %d %b')(new Date(parseInt(d)));} return xLabel;}"
)
def truncate_task_duration(task_duration):
    """
    Cast the task_duration to an int was for optimization for large/huge dags if task_duration > 10s
    otherwise we keep it as a float with 3dp
    """
    return int(task_duration) if task_duration > 10.0 else round(task_duration, 3)
def get_safe_url(url):
    """Given a user-supplied URL, ensure it points to our web server"""
    if not url:
        return url_for("Airflow.index")
    
    
    if ";" in unquote(url):
        return url_for("Airflow.index")
    host_url = urlsplit(request.host_url)
    redirect_url = urlsplit(urljoin(request.host_url, url))
    if not (redirect_url.scheme in ("http", "https") and host_url.netloc == redirect_url.netloc):
        return url_for("Airflow.index")
    
    return redirect_url.geturl()
def get_date_time_num_runs_dag_runs_form_data(www_request, session, dag):