@@ -79,10 +79,12 @@ class Config:
79
79
raise_on_escape(bool): If True, functions will raise Abort whenever the escape key is encountered when waiting for input, otherwise,
80
80
they will return some sane alternative to their usual return. For `select`, `prompt` and `confirm` this means `None`, while for
81
81
`select_multiple` it means an empty list - `[]`. Defaults to False.
82
+ transient(bool): If False, elements will remain displayed after its context has ended. Defaults to True.
82
83
"""
83
84
84
85
raise_on_interrupt : bool = False
85
86
raise_on_escape : bool = False
87
+ transient : bool = False
86
88
87
89
88
90
_navigation_keys = [DefaultKeys .up , DefaultKeys .down , DefaultKeys .right , DefaultKeys .left , DefaultKeys .home , DefaultKeys .end ]
@@ -212,6 +214,7 @@ def prompt(
212
214
cursor_position = len (initial_value or '' ),
213
215
),
214
216
renderer = renderer ,
217
+ transient = Config .transient
215
218
)
216
219
217
220
with element .displayed ():
@@ -304,6 +307,7 @@ def select(
304
307
page_size = page_size ,
305
308
),
306
309
renderer = renderer ,
310
+ transient = Config .transient
307
311
)
308
312
309
313
with element .displayed ():
@@ -397,6 +401,7 @@ def select_multiple(
397
401
page_size = page_size ,
398
402
),
399
403
renderer = renderer ,
404
+ transient = Config .transient
400
405
)
401
406
402
407
with element .displayed ():
@@ -445,7 +450,7 @@ def confirm(
445
450
Optional[bool]
446
451
"""
447
452
rendered = ''
448
- with _cursor_hidden (console ), Live (rendered , console = console , auto_refresh = False , transient = True ) as live :
453
+ with _cursor_hidden (console ), Live (rendered , console = console , auto_refresh = False , transient = Config . transient ) as live :
449
454
if cursor_style in ['' , None ]:
450
455
warnings .warn ('`cursor_style` should be a valid style, defaulting to `white`' )
451
456
cursor_style = 'white'
0 commit comments