|
36 | 36 | from src.screens.NFTMintScreen import NFTMintScreen |
37 | 37 | from src.screens.SendXRPScreen import SendXRPScreen |
38 | 38 | from src.screens.SettingsScreen import SettingsScreen |
39 | | -from src.screens.Web3BrowserScreen import Web3BrowserScreen |
| 39 | +from src.core.feature_flags import ENABLE_WEB3_BROWSER |
| 40 | +if ENABLE_WEB3_BROWSER: |
| 41 | + from src._deferred.Web3BrowserScreen import Web3BrowserScreen # type: ignore |
40 | 42 | from src.screens.WebViewScreen import WebViewScreen |
41 | 43 | from src.utils.wallet_connect.xaman_connector import XamanConnector |
42 | 44 | from src.utils.responsive import init_responsive, get_size_class, scale_dp, scale_font, ResponsiveDebugOverlay |
@@ -246,7 +248,9 @@ def build(self): |
246 | 248 | self.barcode_scan_screen = BarcodeScanScreen(name="barcode_scan_screen") |
247 | 249 | self.camera_scan_screen = CameraScanScreen(name="camera_scan_screen") |
248 | 250 | self.settings_screen = SettingsScreen(name="settings_screen") |
249 | | - self.web3_browser_screen = Web3BrowserScreen(name="web3_browser_screen") |
| 251 | + if ENABLE_WEB3_BROWSER: |
| 252 | + self.web3_browser_screen = Web3BrowserScreen(name="web3_browser_screen") |
| 253 | + self.manager.add_widget(self.web3_browser_screen) |
250 | 254 | self.webview_screen = WebViewScreen(name="webview_screen") |
251 | 255 |
|
252 | 256 | # Add all screens to manager |
@@ -276,7 +280,9 @@ def build(self): |
276 | 280 | self.manager.add_widget(self.barcode_scan_screen) |
277 | 281 | self.manager.add_widget(self.camera_scan_screen) |
278 | 282 | self.manager.add_widget(self.settings_screen) |
279 | | - self.manager.add_widget(self.web3_browser_screen) |
| 283 | + if ENABLE_WEB3_BROWSER: |
| 284 | + # Already added above when created |
| 285 | + pass |
280 | 286 | self.manager.add_widget(self.webview_screen) |
281 | 287 |
|
282 | 288 | # Determine initial screen based on wallet data - optimized for speed |
@@ -415,8 +421,11 @@ def navigate_to_settings(self): |
415 | 421 | self.manager.current = "settings_screen" |
416 | 422 |
|
417 | 423 | def navigate_to_web3_browser(self): |
418 | | - """Navigate to Web3 Browser screen""" |
419 | | - self.manager.current = "web3_browser_screen" |
| 424 | + """Navigate to Web3 Browser screen (deferred)""" |
| 425 | + if ENABLE_WEB3_BROWSER: |
| 426 | + self.manager.current = "web3_browser_screen" |
| 427 | + else: |
| 428 | + print("Web3 browser feature deferred (flag disabled)") |
420 | 429 |
|
421 | 430 | def navigate_to_webview(self): |
422 | 431 | """Navigate to in-app WebView screen (feature flagged)""" |
|
0 commit comments