3535 FLET_APP ,
3636]
3737
38+ WebRenderer = Literal [None , "auto" , "html" , "canvaskit" ]
39+
3840
3941def page (
40- name = "" , port = 0 , permissions = None , view : AppViewer = WEB_BROWSER , assets_dir = None
42+ name = "" ,
43+ port = 0 ,
44+ permissions = None ,
45+ view : AppViewer = WEB_BROWSER ,
46+ assets_dir = None ,
47+ web_renderer = None ,
4148):
4249 conn = _connect_internal (
4350 page_name = name ,
4451 port = port ,
4552 is_app = False ,
4653 permissions = permissions ,
4754 assets_dir = assets_dir ,
55+ web_renderer = web_renderer ,
4856 )
4957 print ("Page URL:" , conn .page_url )
5058 page = Page (conn , constants .ZERO_SESSION )
@@ -63,6 +71,7 @@ def app(
6371 permissions = None ,
6472 view : AppViewer = FLET_APP ,
6573 assets_dir = None ,
74+ web_renderer = None ,
6675):
6776
6877 if target == None :
@@ -75,6 +84,7 @@ def app(
7584 permissions = permissions ,
7685 session_handler = target ,
7786 assets_dir = assets_dir ,
87+ web_renderer = web_renderer ,
7888 )
7989 print ("App URL:" , conn .page_url )
8090
@@ -129,6 +139,7 @@ def _connect_internal(
129139 permissions = None ,
130140 session_handler = None ,
131141 assets_dir = None ,
142+ web_renderer = None ,
132143):
133144 if share and server == None :
134145 server = constants .HOSTED_SERVICE_URL
@@ -141,7 +152,7 @@ def _connect_internal(
141152 # page with a custom port starts detached process
142153 attached = False if not is_app and port != 0 else True
143154
144- port = _start_flet_server (port , attached , assets_dir )
155+ port = _start_flet_server (port , attached , assets_dir , web_renderer )
145156 server = f"http://localhost:{ port } "
146157
147158 connected = threading .Event ()
@@ -209,7 +220,7 @@ def _on_ws_failed_connect():
209220 return conn
210221
211222
212- def _start_flet_server (port , attached , assets_dir ):
223+ def _start_flet_server (port , attached , assets_dir , web_renderer ):
213224
214225 if port == 0 :
215226 port = _get_free_tcp_port ()
@@ -243,6 +254,10 @@ def _start_flet_server(port, attached, assets_dir):
243254 logging .info (f"Assets path configured: { assets_dir } " )
244255 fletd_env ["FLET_STATIC_ROOT_DIR" ] = assets_dir
245256
257+ if web_renderer not in [None , "" , "auto" ]:
258+ logging .info (f"Web renderer configured: { web_renderer } " )
259+ fletd_env ["FLET_WEB_RENDERER" ] = web_renderer
260+
246261 args = [fletd_path , "--port" , str (port )]
247262
248263 creationflags = 0
0 commit comments