@@ -23,7 +23,7 @@ local current_device = nil
23
23
24
24
--- @class flutter.Runner
25
25
--- @field is_running fun ( runner : flutter.Runner ): boolean
26
- --- @field run fun ( runner : flutter.Runner , paths : table , args : table , cwd : string , on_run_data : fun ( is_err : boolean , data : string ), on_run_exit : fun ( data : string[] , args : table , project_conf : flutter.ProjectConfig ?, launch_config : dap.Configuration ?), is_flutter_project : boolean , project_conf : flutter.ProjectConfig ?, launch_config : dap.Configuration ?)
26
+ --- @field run fun ( runner : flutter.Runner , opts : RunOpts , paths : table , args : table , cwd : string , on_run_data : fun ( is_err : boolean , data : string ), on_run_exit : fun ( data : string[] , args : table , opts : RunOpts ? , project_conf : flutter.ProjectConfig ?, launch_config : dap.Configuration ?), is_flutter_project : boolean , project_conf : flutter.ProjectConfig ?, launch_config : dap.Configuration ?)
27
27
--- @field cleanup fun ( funner : flutter.Runner )
28
28
--- @field send fun ( runner : flutter.Runner , cmd : string , quiet : boolean ?)
29
29
--- @field attach fun ( runner : flutter.Runner , paths : table , args : table , cwd : string , on_run_data : fun ( is_err : boolean , data : string ), on_run_exit : fun ( data : string[] , args : table , project_conf : flutter.ProjectConfig ?, launch_config : dap.Configuration ?))
84
84
--- Handle a finished flutter run command
85
85
--- @param result string[]
86
86
--- @param cli_args string[]
87
+ --- @param opts RunOpts ?
87
88
--- @param project_config flutter.ProjectConfig ?
88
89
--- @param launch_config dap.Configuration ?
89
- local function on_run_exit (result , cli_args , project_config , launch_config )
90
+ local function on_run_exit (result , cli_args , opts , project_config , launch_config )
90
91
local matched_error , msg = has_recoverable_error (result )
91
92
if matched_error then
92
93
local lines = devices .to_selection_entries (result )
@@ -96,7 +97,10 @@ local function on_run_exit(result, cli_args, project_config, launch_config)
96
97
on_select = function (device )
97
98
vim .list_extend (cli_args , { " -d" , device .id })
98
99
if launch_config then vim .list_extend (launch_config .args , { " -d" , device .id }) end
99
- M .run ({ cli_args = cli_args }, project_config , launch_config )
100
+ opts = opts or {}
101
+ opts .cli_args = cli_args
102
+
103
+ M .run (opts , project_config , launch_config )
100
104
end ,
101
105
})
102
106
end
@@ -281,6 +285,7 @@ local function run(opts, project_conf, launch_config)
281
285
end
282
286
runner = use_debugger_runner (opts .force_debug ) and debugger_runner or job_runner
283
287
runner :run (
288
+ opts ,
284
289
paths ,
285
290
args ,
286
291
cwd ,
0 commit comments