Bug 1857139 - Add translation bottom sheet boilerplate
[gecko.git] / mobile / android / fenix / app / src / main / res / navigation / nav_graph.xml
blob7cb97cae4ba93a256f906aa8020c7f0b5cc633ef
1 <?xml version="1.0" encoding="utf-8"?>
2 <!-- This Source Code Form is subject to the terms of the Mozilla Public
3    - License, v. 2.0. If a copy of the MPL was not distributed with this
4    - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
6 <navigation xmlns:android="http://schemas.android.com/apk/res/android"
7     xmlns:app="http://schemas.android.com/apk/res-auto"
8     xmlns:tools="http://schemas.android.com/tools"
9     android:id="@+id/nav_graph"
10     app:startDestination="@id/startupFragment">
12     <action
13         android:id="@+id/action_startup_home"
14         app:destination="@id/homeFragment"
15         app:popUpTo="@id/startupFragment"
16         app:popUpToInclusive="true" />
18     <action
19         android:id="@+id/action_global_home"
20         app:destination="@id/homeFragment"
21         app:popUpTo="@id/homeFragment"
22         app:popUpToInclusive="true" />
24     <action
25         android:id="@+id/action_global_browser"
26         app:destination="@id/browserFragment"
27         app:popUpTo="@id/homeFragment"
28         app:popUpToInclusive="false" />
30     <action
31         android:id="@+id/action_global_external_app_browser"
32         app:destination="@id/externalAppBrowserFragment"
33         app:popUpTo="@id/homeFragment"
34         app:popUpToInclusive="false" />
36     <action
37         android:id="@+id/action_global_juno_onboarding"
38         app:destination="@id/junoOnboardingFragment"
39         app:popUpTo="@id/startupFragment"
40         app:popUpToInclusive="true" />
42     <action
43         android:id="@+id/action_global_home_onboarding_dialog"
44         app:destination="@id/homeOnboardingDialogFragment" />
46     <action
47         android:id="@+id/action_global_home_notification_permission_dialog"
48         app:destination="@id/homeNotificationPermissionDialogFragment" />
50     <action
51         android:id="@+id/action_global_wallpaper_onboarding_dialog"
52         app:destination="@id/wallpaperOnboardingDialogFragment"
53         app:popUpTo="@id/homeFragment" />
55     <action
56         android:id="@+id/action_global_search_dialog"
57         app:destination="@id/searchDialogFragment"
58         app:popUpTo="@id/searchDialogFragment"
59         app:popUpToInclusive="true" />
61     <action
62         android:id="@+id/action_global_recently_closed"
63         app:destination="@id/recentlyClosedFragment" />
65     <action
66         android:id="@+id/action_global_history_metadata_group"
67         app:destination="@id/historyMetadataGroupFragment" />
69     <action
70         android:id="@+id/action_global_wallpaperSettingsFragment"
71         app:destination="@id/wallpaperSettingsFragment" />
73     <action
74         android:id="@+id/action_global_shareFragment"
75         app:destination="@id/shareFragment" />
76     <action
77         android:id="@+id/action_global_turn_on_sync"
78         app:destination="@id/turnOnSyncFragment" />
79     <action
80         android:id="@+id/action_global_searchEngineFragment"
81         app:destination="@id/search_engine_graph" />
82     <action
83         android:id="@+id/action_global_accessibilityFragment"
84         app:destination="@id/accessibilityFragment" />
85     <action
86         android:id="@+id/action_global_deleteBrowsingDataFragment"
87         app:destination="@id/deleteBrowsingDataFragment" />
88     <action
89         android:id="@+id/action_global_webExtensionActionPopupFragment"
90         app:destination="@id/webExtensionActionPopupFragment" />
91     <action
92         android:id="@+id/action_global_settingsFragment"
93         app:destination="@id/settingsFragment" />
94     <action
95         android:id="@+id/action_global_homeSettingsFragment"
96         app:destination="@id/homeSettingsFragment" />
97     <action
98         android:id="@+id/action_global_privateBrowsingFragment"
99         app:destination="@id/privateBrowsingFragment" />
100     <action
101         android:id="@+id/action_global_bookmarkFragment"
102         app:destination="@id/bookmarkFragment" />
103     <action
104         android:id="@+id/action_global_historyFragment"
105         app:destination="@id/historyFragment" />
107     <action
108         android:id="@+id/action_global_downloadsFragment"
109         app:destination="@id/downloadsFragment" />
110     <action
111         android:id="@+id/action_global_accountProblemFragment"
112         app:destination="@id/accountProblemFragment" />
113     <action
114         android:id="@+id/action_global_SitePermissionsManagePhoneFeature"
115         app:destination="@id/SitePermissionsManagePhoneFeature" />
116     <action
117         android:id="@+id/action_global_collectionCreationFragment"
118         app:destination="@id/collectionCreationFragment" />
119     <action
120         android:id="@+id/action_global_bookmarkEditFragment"
121         app:destination="@id/bookmarkEditFragment" />
122     <action
123         android:id="@+id/action_global_addonsManagementFragment"
124         app:destination="@id/addons_management_graph" />
125     <action
126         android:id="@+id/action_global_trackingProtectionFragment"
127         app:destination="@id/trackingProtectionFragment" />
128     <action
129         android:id="@+id/action_global_trackingProtectionExceptionsFragment"
130         app:destination="@id/trackingProtectionExceptionsFragment" />
131     <action
132         android:id="@+id/action_global_accountSettingsFragment"
133         app:destination="@id/accountSettingsFragment"
134         app:enterAnim="@anim/slide_in_right"
135         app:exitAnim="@anim/slide_out_left"
136         app:popEnterAnim="@anim/slide_in_left"
137         app:popExitAnim="@anim/slide_out_right" />
138     <action
139         android:id="@+id/action_global_trackingProtectionPanelDialogFragment"
140         app:destination="@id/trackingProtectionPanelDialogFragment" />
141     <action
142         android:id="@+id/action_global_cookieBannerProtectionPanelDialogFragment"
143         app:destination="@id/cookieBannerPanelDialogFragment" />
144     <action
145         android:id="@+id/action_global_quickSettingsSheetDialogFragment"
146         app:destination="@id/quickSettingsSheetDialogFragment" />
147     <action
148         android:id="@+id/action_global_connectionDetailsDialogFragment"
149         app:destination="@id/connectionPanelDialogFragment" />
150     <action
151         android:id="@+id/action_global_tabsTrayFragment"
152         app:destination="@id/tabsTrayFragment"
153         app:popUpTo="@id/tabsTrayFragment"
154         app:popUpToInclusive="true" />
155     <action
156         android:id="@+id/action_global_savedLoginsAuthFragment"
157         app:destination="@id/savedLoginsAuthFragment" />
158     <action
159         android:id="@+id/action_global_autofillSettingFragment"
160         app:destination="@id/autofill_graph" />
161     <action
162         android:id="@+id/action_global_tabHistoryDialogFragment"
163         app:destination="@id/tabHistoryDialogFragment" />
164     <action
165         android:id="@+id/action_global_tabSettingsFragment"
166         app:destination="@id/tabsSettingsFragment" />
168     <dialog
169         android:id="@+id/tabsTrayFragment"
170         android:name="org.mozilla.fenix.tabstray.TabsTrayFragment">
171         <argument
172             android:name="enterMultiselect"
173             android:defaultValue="false"
174             app:argType="boolean" />
175         <argument
176             android:name="page"
177             android:defaultValue="NormalTabs"
178             app:argType="org.mozilla.fenix.tabstray.Page" />
179         <argument
180             android:name="accessPoint"
181             android:defaultValue="None"
182             app:argType="org.mozilla.fenix.tabstray.TabsTrayAccessPoint" />
183     </dialog>
185     <fragment
186         android:id="@+id/startupFragment"
187         android:name="org.mozilla.fenix.StartupFragment">
188     </fragment>
190     <fragment
191         android:id="@+id/junoOnboardingFragment"
192         android:name="org.mozilla.fenix.onboarding.JunoOnboardingFragment">
193         <action
194             android:id="@+id/action_home"
195             app:destination="@id/homeFragment"
196             app:popUpTo="@id/junoOnboardingFragment"
197             app:popUpToInclusive="true" />
198     </fragment>
200     <fragment
201         android:id="@+id/homeFragment"
202         android:name="org.mozilla.fenix.home.HomeFragment"
203         tools:layout="@layout/fragment_home">
204         <argument
205             android:name="focusOnAddressBar"
206             android:defaultValue="false"
207             app:argType="boolean" />
208         <argument
209             android:name="scrollToCollection"
210             android:defaultValue="false"
211             app:argType="boolean" />
212     </fragment>
214     <dialog
215         android:id="@+id/homeOnboardingDialogFragment"
216         android:name="org.mozilla.fenix.onboarding.HomeOnboardingDialogFragment" />
218     <dialog
219         android:id="@+id/researchSurfaceDialogFragment"
220         android:name="org.mozilla.fenix.experiments.ResearchSurfaceDialogFragment" >
221         <argument
222             android:name="KEY_MESSAGE_TEXT"
223             app:nullable="true"
224             app:argType="string" />
225         <argument
226             android:name="KEY_ACCEPT_BUTTON_TEXT"
227             app:nullable="true"
228             app:argType="string" />
229         <argument
230             android:name="KEY_DISMISS_BUTTON_TEXT"
231             app:nullable="true"
232             app:argType="string" />
233     </dialog>
235     <dialog
236         android:id="@+id/homeNotificationPermissionDialogFragment"
237         android:name="org.mozilla.fenix.onboarding.HomeNotificationPermissionDialogFragment" />
239     <dialog
240         android:id="@+id/wallpaperOnboardingDialogFragment"
241         android:name="org.mozilla.fenix.onboarding.WallpaperOnboardingDialogFragment" />
243     <dialog
244         android:id="@+id/searchDialogFragment"
245         android:name="org.mozilla.fenix.search.SearchDialogFragment"
246         tools:layout="@layout/fragment_search_dialog">
247         <argument
248             android:name="session_id"
249             app:argType="string"
250             app:nullable="true" />
251         <argument
252             android:name="pastedText"
253             android:defaultValue="@null"
254             app:argType="string"
255             app:nullable="true" />
256         <argument
257             android:name="search_access_point"
258             android:defaultValue="NONE"
259             app:argType="org.mozilla.fenix.components.metrics.MetricsUtils$Source" />
260         <argument
261             android:name="search_engine"
262             android:defaultValue="@null"
263             app:argType="string"
264             app:nullable="true" />
265     </dialog>
267     <fragment
268         android:id="@+id/recentlyClosedFragment"
269         android:name="org.mozilla.fenix.library.recentlyclosed.RecentlyClosedFragment"
270         android:label="@string/library_recently_closed_tabs" />
272     <fragment
273         android:id="@+id/SitePermissionsManagePhoneFeature"
274         android:name="org.mozilla.fenix.settings.sitepermissions.SitePermissionsManagePhoneFeatureFragment"
275         tools:layout="@layout/fragment_manage_site_permissions_feature_phone">
276         <argument
277             android:name="phoneFeature"
278             app:argType="org.mozilla.fenix.settings.PhoneFeature" />
279     </fragment>
281     <fragment
282         android:id="@+id/browserFragment"
283         android:name="org.mozilla.fenix.browser.BrowserFragment"
284         app:exitAnim="@anim/fade_out"
285         tools:layout="@layout/fragment_browser">
286         <argument
287             android:name="activeSessionId"
288             app:argType="string"
289             app:nullable="true" />
290         <action
291             android:id="@+id/action_browserFragment_to_settingsFragment"
292             app:destination="@id/settingsFragment" />
293         <action
294             android:id="@+id/action_browserFragment_to_createShortcutFragment"
295             app:destination="@id/createShortcutFragment" />
296         <action
297             android:id="@+id/action_browserFragment_to_pwaOnboardingDialogFragment"
298             app:destination="@id/pwaOnboardingDialogFragment" />
299         <action
300             android:id="@+id/action_browserFragment_to_quickSettingsSheetDialogFragment"
301             app:destination="@id/quickSettingsSheetDialogFragment" />
302         <action
303             android:id="@+id/action_browserFragment_to_cookieBannerDialogFragment"
304             app:destination="@id/cookieBannerDialogFragment" />
305         <action
306             android:id="@+id/action_browserFragment_to_reviewQualityCheckDialogFragment"
307             app:destination="@id/reviewQualityCheckFragment" />
308         <action
309             android:id="@+id/action_browserFragment_to_translationsDialogFragment"
310             app:destination="@id/translationsDialogFragment" />
311     </fragment>
313     <fragment
314         android:id="@+id/externalAppBrowserFragment"
315         android:name="org.mozilla.fenix.customtabs.ExternalAppBrowserFragment"
316         tools:layout="@layout/fragment_browser">
317         <argument
318             android:name="activeSessionId"
319             app:argType="string"
320             app:nullable="true" />
321         <argument
322             android:name="webAppManifest"
323             app:argType="string"
324             app:nullable="true" />
325         <argument
326             android:name="isSandboxCustomTab"
327             app:argType="boolean" />
328     </fragment>
330     <fragment
331         android:id="@+id/historyFragment"
332         android:name="org.mozilla.fenix.library.history.HistoryFragment"
333         android:label="@string/library_history"
334         tools:layout="@layout/fragment_history">
335     </fragment>
337     <fragment
338         android:id="@+id/historyMetadataGroupFragment"
339         android:name="org.mozilla.fenix.library.historymetadata.HistoryMetadataGroupFragment">
340         <argument
341             android:name="title"
342             app:argType="string" />
343         <argument
344             android:name="historyMetadataItems"
345             app:argType="org.mozilla.fenix.library.history.History[]" />
346     </fragment>
348     <fragment
349         android:id="@+id/downloadsFragment"
350         android:name="org.mozilla.fenix.library.downloads.DownloadFragment"
351         android:label="Downloads"
352         tools:layout="@layout/fragment_downloads" />
354     <fragment
355         android:id="@+id/bookmarkFragment"
356         android:name="org.mozilla.fenix.library.bookmarks.BookmarkFragment"
357         tools:layout="@layout/fragment_bookmark">
358         <argument
359             android:name="currentRoot"
360             app:argType="string" />
361         <action
362             android:id="@+id/action_bookmarkFragment_self"
363             app:destination="@id/bookmarkFragment" />
364         <action
365             android:id="@+id/action_bookmarkFragment_to_bookmarkEditFragment"
366             app:destination="@id/bookmarkEditFragment" />
367         <action
368             android:id="@+id/action_bookmarkFragment_to_bookmarkAddFolderFragment"
369             app:destination="@id/bookmarkAddFolderFragment" />
370     </fragment>
372     <fragment
373         android:id="@+id/bookmarkEditFragment"
374         android:name="org.mozilla.fenix.library.bookmarks.edit.EditBookmarkFragment"
375         tools:layout="@layout/fragment_edit_bookmark">
376         <argument
377             android:name="guidToEdit"
378             app:argType="string"
379             app:nullable="false" />
380         <action
381             android:id="@+id/action_bookmarkEditFragment_to_bookmarkSelectFolderFragment"
382             app:destination="@id/bookmarkSelectFolderFragment" />
383         <argument
384             android:name="requiresSnackbarPaddingForToolbar"
385             android:defaultValue="false"
386             app:argType="boolean" />
387     </fragment>
389     <fragment
390         android:id="@+id/bookmarkSelectFolderFragment"
391         android:name="org.mozilla.fenix.library.bookmarks.selectfolder.SelectBookmarkFolderFragment"
392         android:label="@string/bookmark_select_folder_fragment_label"
393         tools:layout="@layout/fragment_select_bookmark_folder">
394         <action
395             android:id="@+id/action_bookmarkSelectFolderFragment_self"
396             app:destination="@id/bookmarkSelectFolderFragment" />
397         <action
398             android:id="@+id/action_bookmarkSelectFolderFragment_to_bookmarkAddFolderFragment"
399             app:destination="@id/bookmarkAddFolderFragment" />
400         <argument
401             android:name="allowCreatingNewFolder"
402             android:defaultValue="false"
403             app:argType="boolean" />
404         <argument
405             android:name="hideFolderGuid"
406             android:defaultValue="@null"
407             app:nullable="true"
408             app:argType="string" />
409     </fragment>
411     <fragment
412         android:id="@+id/bookmarkAddFolderFragment"
413         android:name="org.mozilla.fenix.library.bookmarks.addfolder.AddBookmarkFolderFragment"
414         android:label="@string/bookmark_add_folder_fragment_label"
415         tools:layout="@layout/fragment_edit_bookmark">
416         <action
417             android:id="@+id/action_bookmarkAddFolderFragment_to_bookmarkSelectFolderFragment"
418             app:destination="@id/bookmarkSelectFolderFragment" />
419     </fragment>
421     <dialog
422         android:id="@+id/reviewQualityCheckFragment"
423         android:name="org.mozilla.fenix.shopping.ReviewQualityCheckFragment"/>
425     <dialog
426         android:id="@+id/translationsDialogFragment"
427         android:name="org.mozilla.fenix.translations.TranslationsDialogFragment"/>
429     <fragment
430         android:id="@+id/savedLoginsAuthFragment"
431         android:name="org.mozilla.fenix.settings.logins.fragment.SavedLoginsAuthFragment"
432         android:label="@string/preferences_passwords_logins_and_passwords">
433         <action
434             android:id="@+id/action_savedLoginsAuthFragment_to_loginsListFragment"
435             app:destination="@id/savedLogins"
436             app:enterAnim="@anim/slide_in_right"
437             app:exitAnim="@anim/slide_out_left"
438             app:popEnterAnim="@anim/slide_in_left"
439             app:popExitAnim="@anim/slide_out_right" />
440         <action
441             android:id="@+id/action_savedLoginsAuthFragment_to_turnOnSyncFragment"
442             app:destination="@id/turnOnSyncFragment"
443             app:enterAnim="@anim/slide_in_right"
444             app:exitAnim="@anim/slide_out_left"
445             app:popEnterAnim="@anim/slide_in_left"
446             app:popExitAnim="@anim/slide_out_right" />
447         <action
448             android:id="@+id/action_savedLoginsAuthFragment_to_savedLoginsSettingFragment"
449             app:destination="@id/saveLoginSettingFragment"
450             app:enterAnim="@anim/slide_in_right"
451             app:exitAnim="@anim/slide_out_left"
452             app:popEnterAnim="@anim/slide_in_left"
453             app:popExitAnim="@anim/slide_out_right" />
454         <action
455             android:id="@+id/action_savedLoginsAuthFragment_to_loginExceptionsFragment"
456             app:destination="@id/loginExceptionsFragment"
457             app:enterAnim="@anim/slide_in_right"
458             app:exitAnim="@anim/slide_out_left"
459             app:popEnterAnim="@anim/slide_in_left"
460             app:popExitAnim="@anim/slide_out_right" />
461     </fragment>
463     <fragment
464         android:id="@+id/loginExceptionsFragment"
465         android:name="org.mozilla.fenix.exceptions.login.LoginExceptionsFragment"
466         android:label="@string/preferences_passwords_exceptions"
467         tools:layout="@layout/fragment_exceptions" />
469     <action
470             android:id="@+id/action_loginDetailFragment_to_savedLogins"
471             app:destination="@id/savedLogins"
472             app:popUpTo="@id/savedLoginsFragment"
473             app:popUpToInclusive="true"/>
475     <fragment
476         android:id="@+id/settingsFragment"
477         android:name="org.mozilla.fenix.settings.SettingsFragment"
478         android:label="@string/settings_title">
479         <argument
480             android:name="preference_to_scroll_to"
481             android:defaultValue="@null"
482             app:argType="string"
483             app:nullable="true" />
484         <action
485             android:id="@+id/action_settingsFragment_to_dataChoicesFragment"
486             app:destination="@id/dataChoicesFragment"
487             app:enterAnim="@anim/slide_in_right"
488             app:exitAnim="@anim/slide_out_left"
489             app:popEnterAnim="@anim/slide_in_left"
490             app:popExitAnim="@anim/slide_out_right"
491             app:popUpTo="@id/settingsFragment" />
492         <action
493             android:id="@+id/action_settingsFragment_to_sitePermissionsFragment"
494             app:destination="@id/sitePermissionsFragment"
495             app:enterAnim="@anim/slide_in_right"
496             app:exitAnim="@anim/slide_out_left"
497             app:popEnterAnim="@anim/slide_in_left"
498             app:popExitAnim="@anim/slide_out_right" />
499         <action
500             android:id="@+id/action_settingsFragment_to_savedLoginsAuthFragment"
501             app:destination="@id/savedLoginsAuthFragment"
502             app:enterAnim="@anim/slide_in_right"
503             app:exitAnim="@anim/slide_out_left"
504             app:popEnterAnim="@anim/slide_in_left"
505             app:popExitAnim="@anim/slide_out_right" />
506         <action
507             android:id="@+id/action_settingsFragment_to_autofillSettingFragment"
508             app:destination="@id/autofill_graph"
509             app:enterAnim="@anim/slide_in_right"
510             app:exitAnim="@anim/slide_out_left"
511             app:popEnterAnim="@anim/slide_in_left"
512             app:popExitAnim="@anim/slide_out_right" />
513         <action
514             android:id="@+id/action_settingsFragment_to_accessibilityFragment"
515             app:destination="@id/accessibilityFragment"
516             app:enterAnim="@anim/slide_in_right"
517             app:exitAnim="@anim/slide_out_left"
518             app:popEnterAnim="@anim/slide_in_left"
519             app:popExitAnim="@anim/slide_out_right" />
520         <action
521             android:id="@+id/action_settingsFragment_to_accountSettingsFragment"
522             app:destination="@id/accountSettingsFragment"
523             app:enterAnim="@anim/slide_in_right"
524             app:exitAnim="@anim/slide_out_left"
525             app:popEnterAnim="@anim/slide_in_left"
526             app:popExitAnim="@anim/slide_out_right" />
527         <action
528             android:id="@+id/action_settingsFragment_to_searchEngineFragment"
529             app:destination="@id/search_engine_graph"
530             app:enterAnim="@anim/slide_in_right"
531             app:exitAnim="@anim/slide_out_left"
532             app:popEnterAnim="@anim/slide_in_left"
533             app:popExitAnim="@anim/slide_out_right" />
534         <action
535             android:id="@+id/action_settingsFragment_to_turnOnSyncFragment"
536             app:destination="@id/turnOnSyncFragment"
537             app:enterAnim="@anim/slide_in_right"
538             app:exitAnim="@anim/slide_out_left"
539             app:popEnterAnim="@anim/slide_in_left"
540             app:popExitAnim="@anim/slide_out_right" />
541         <action
542             android:id="@+id/action_settingsFragment_to_aboutFragment"
543             app:destination="@id/aboutFragment"
544             app:enterAnim="@anim/slide_in_right"
545             app:exitAnim="@anim/slide_out_left"
546             app:popEnterAnim="@anim/slide_in_left"
547             app:popExitAnim="@anim/slide_out_right" />
548         <action
549             android:id="@+id/action_settingsFragment_to_secretSettingsFragment"
550             app:destination="@id/secretSettingsPreference"
551             app:enterAnim="@anim/slide_in_right"
552             app:exitAnim="@anim/slide_out_left"
553             app:popEnterAnim="@anim/slide_in_left"
554             app:popExitAnim="@anim/slide_out_right" />
555         <action
556             android:id="@+id/action_settingsFragment_to_secretInfoSettingsFragment"
557             app:destination="@id/secretInfoSettingsFragment"
558             app:enterAnim="@anim/slide_in_right"
559             app:exitAnim="@anim/slide_out_left"
560             app:popEnterAnim="@anim/slide_in_left"
561             app:popExitAnim="@anim/slide_out_right" />
562         <action
563             android:id="@+id/action_settingsFragment_to_nimbusExperimentsFragment"
564             app:destination="@id/nimbus_experiment_graph"
565             app:enterAnim="@anim/slide_in_right"
566             app:exitAnim="@anim/slide_out_left"
567             app:popEnterAnim="@anim/slide_in_left"
568             app:popExitAnim="@anim/slide_out_right" />
569         <action
570             android:id="@+id/action_settingsFragment_to_customizationFragment"
571             app:destination="@id/customizationFragment"
572             app:enterAnim="@anim/slide_in_right"
573             app:exitAnim="@anim/slide_out_left"
574             app:popEnterAnim="@anim/slide_in_left"
575             app:popExitAnim="@anim/slide_out_right" />
576         <action
577             android:id="@+id/action_settingsFragment_to_privateBrowsingFragment"
578             app:destination="@id/privateBrowsingFragment"
579             app:enterAnim="@anim/slide_in_right"
580             app:exitAnim="@anim/slide_out_left"
581             app:popEnterAnim="@anim/slide_in_left"
582             app:popExitAnim="@anim/slide_out_right" />
583         <action
584             android:id="@+id/action_settingsFragment_to_httpsOnlyFragment"
585             app:destination="@id/httpsOnlyFragment"
586             app:enterAnim="@anim/slide_in_right"
587             app:exitAnim="@anim/slide_out_left"
588             app:popEnterAnim="@anim/slide_in_left"
589             app:popExitAnim="@anim/slide_out_right" />
590         <action
591             android:id="@+id/action_settingsFragment_to_cookieBannerFragment"
592             app:destination="@id/cookieBannerFragment"
593             app:enterAnim="@anim/slide_in_right"
594             app:exitAnim="@anim/slide_out_left"
595             app:popEnterAnim="@anim/slide_in_left"
596             app:popExitAnim="@anim/slide_out_right" />
597         <action
598             android:id="@+id/action_settingsFragment_to_trackingProtectionFragment"
599             app:destination="@id/trackingProtectionFragment"
600             app:enterAnim="@anim/slide_in_right"
601             app:exitAnim="@anim/slide_out_left"
602             app:popEnterAnim="@anim/slide_in_left"
603             app:popExitAnim="@anim/slide_out_right" />
604         <action
605             android:id="@+id/action_settingsFragment_to_deleteBrowsingDataFragment"
606             app:destination="@id/deleteBrowsingDataFragment"
607             app:enterAnim="@anim/slide_in_right"
608             app:exitAnim="@anim/slide_out_left"
609             app:popEnterAnim="@anim/slide_in_left"
610             app:popExitAnim="@anim/slide_out_right" />
611         <action
612             android:id="@+id/action_settingsFragment_to_accountProblemFragment"
613             app:destination="@id/accountProblemFragment"
614             app:enterAnim="@anim/slide_in_right"
615             app:exitAnim="@anim/slide_out_left"
616             app:popEnterAnim="@anim/slide_in_left"
617             app:popExitAnim="@anim/slide_out_right" />
618         <action
619             android:id="@+id/action_settingsFragment_to_deleteBrowsingDataOnQuitFragment"
620             app:destination="@id/deleteBrowsingDataOnQuitFragment"
621             app:enterAnim="@anim/slide_in_right"
622             app:exitAnim="@anim/slide_out_left"
623             app:popEnterAnim="@anim/slide_in_left"
624             app:popExitAnim="@anim/slide_out_right" />
625         <action
626             android:id="@+id/action_settingsFragment_to_localeSettingsFragment"
627             app:destination="@id/localeSettingsFragment"
628             app:enterAnim="@anim/slide_in_right"
629             app:exitAnim="@anim/slide_out_left"
630             app:popEnterAnim="@anim/slide_in_left"
631             app:popExitAnim="@anim/slide_out_right" />
632         <action
633             android:id="@+id/action_settingsFragment_to_addonsFragment"
634             app:destination="@id/addons_management_graph"
635             app:enterAnim="@anim/slide_in_right"
636             app:exitAnim="@anim/slide_out_left"
637             app:popEnterAnim="@anim/slide_in_left"
638             app:popExitAnim="@anim/slide_out_right" />
639         <action
640             android:id="@+id/action_settingsFragment_to_openLinksInAppsFragment"
641             app:destination="@id/openLinksInAppsFragment"
642             app:enterAnim="@anim/slide_in_right"
643             app:exitAnim="@anim/slide_out_left"
644             app:popEnterAnim="@anim/slide_in_left"
645             app:popExitAnim="@anim/slide_out_right" />
646         <action
647             android:id="@+id/action_settingsFragment_to_tabsSettingsFragment"
648             app:destination="@id/tabsSettingsFragment"
649             app:enterAnim="@anim/slide_in_right"
650             app:exitAnim="@anim/slide_out_left"
651             app:popEnterAnim="@anim/slide_in_left"
652             app:popExitAnim="@anim/slide_out_right" />
653         <action
654             android:id="@+id/action_settingsFragment_to_homeSettingsFragment"
655             app:destination="@id/homeSettingsFragment"
656             app:enterAnim="@anim/slide_in_right"
657             app:exitAnim="@anim/slide_out_left"
658             app:popEnterAnim="@anim/slide_in_left"
659             app:popExitAnim="@anim/slide_out_right" />
660         <action
661             android:id="@+id/action_settingsFragment_to_startProfilerDialog"
662             app:destination="@id/profilerStartDialogFragment"
663             app:enterAnim="@anim/slide_in_right"
664             app:exitAnim="@anim/slide_out_left"
665             app:popEnterAnim="@anim/slide_in_left"
666             app:popExitAnim="@anim/slide_out_right" />
667         <action
668             android:id="@+id/action_settingsFragment_to_stopProfilerDialog"
669             app:destination="@id/profilerStopDialogFragment"
670             app:enterAnim="@anim/slide_in_right"
671             app:exitAnim="@anim/slide_out_left"
672             app:popEnterAnim="@anim/slide_in_left"
673             app:popExitAnim="@anim/slide_out_right" />
674         <action
675             android:id="@+id/action_settingsFragment_to_syncDebugFragment"
676             app:destination="@id/syncDebugFragment"
677             app:enterAnim="@anim/slide_in_right"
678             app:exitAnim="@anim/slide_out_left"
679             app:popEnterAnim="@anim/slide_in_left"
680             app:popExitAnim="@anim/slide_out_right" />
681     </fragment>
682     <dialog
683         android:id="@+id/profilerStartDialogFragment"
684         android:name="org.mozilla.fenix.perf.ProfilerStartDialogFragment">
685     </dialog>
686     <dialog
687         android:id="@+id/profilerStopDialogFragment"
688         android:name="org.mozilla.fenix.perf.ProfilerStopDialogFragment">
689     </dialog>
690     <fragment
691         android:id="@+id/tabsSettingsFragment"
692         android:name="org.mozilla.fenix.settings.TabsSettingsFragment"
693         android:label="@string/preferences_tabs" />
694     <fragment
695         android:id="@+id/homeSettingsFragment"
696         android:name="org.mozilla.fenix.settings.HomeSettingsFragment"
697         android:label="@string/preferences_home_2">
698         <action
699             android:id="@+id/action_homeSettingsFragment_to_wallpaperSettingsFragment"
700             app:destination="@id/wallpaperSettingsFragment"
701             app:enterAnim="@anim/slide_in_right"
702             app:exitAnim="@anim/slide_out_left"
703             app:popEnterAnim="@anim/slide_in_left"
704             app:popExitAnim="@anim/slide_out_right" />
705     </fragment>
706     <fragment
707         android:id="@+id/wallpaperSettingsFragment"
708         android:name="org.mozilla.fenix.settings.wallpaper.WallpaperSettingsFragment"
709         android:label="@string/customize_wallpapers"/>
710     <fragment
711         android:id="@+id/dataChoicesFragment"
712         android:name="org.mozilla.fenix.settings.DataChoicesFragment"
713         android:label="@string/preferences_data_choices">
714         <action
715             android:id="@+id/action_dataChoicesFragment_to_studiesFragment"
716             app:destination="@id/studiesFragment"
717             app:enterAnim="@anim/slide_in_right"
718             app:exitAnim="@anim/slide_out_left"
719             app:popEnterAnim="@anim/slide_in_left"
720             app:popExitAnim="@anim/slide_out_right"
721             app:popUpTo="@id/dataChoicesFragment" />
722     </fragment>
723     <fragment
724         android:id="@+id/studiesFragment"
725         android:name="org.mozilla.fenix.settings.studies.StudiesFragment"
726         android:label="@string/preference_experiments_2" />
727     <fragment
728         android:id="@+id/sitePermissionsFragment"
729         android:name="org.mozilla.fenix.settings.sitepermissions.SitePermissionsFragment"
730         android:label="@string/preferences_site_permissions">
731         <action
732             android:id="@+id/action_site_permissions_to_manage_phone_features"
733             app:destination="@id/SitePermissionsManagePhoneFeature"
734             app:enterAnim="@anim/slide_in_right"
735             app:exitAnim="@anim/slide_out_left"
736             app:popEnterAnim="@anim/slide_in_left"
737             app:popExitAnim="@anim/slide_out_right"
738             app:popUpTo="@id/sitePermissionsFragment" />
739         <action
740             android:id="@+id/action_site_permissions_to_exceptions"
741             app:destination="@id/site_permissions_exceptions_graph"
742             app:enterAnim="@anim/slide_in_right"
743             app:exitAnim="@anim/slide_out_left"
744             app:popEnterAnim="@anim/slide_in_left"
745             app:popExitAnim="@anim/slide_out_right"
746             app:popUpTo="@id/sitePermissionsFragment" />
747     </fragment>
749     <fragment
750         android:id="@+id/accessibilityFragment"
751         android:name="org.mozilla.fenix.settings.AccessibilityFragment"
752         android:label="@string/preferences_accessibility" />
753     <fragment
754         android:id="@+id/accountSettingsFragment"
755         android:name="org.mozilla.fenix.settings.account.AccountSettingsFragment"
756         android:label="@string/preferences_account_settings">
757         <action
758             android:id="@+id/action_accountSettingsFragment_to_signOutFragment"
759             app:destination="@id/signOutFragment" />
760     </fragment>
762     <fragment
763         android:id="@+id/turnOnSyncFragment"
764         android:name="org.mozilla.fenix.settings.account.TurnOnSyncFragment"
765         android:label="@string/preferences_sync_2"
766         tools:layout="@layout/fragment_turn_on_sync">
767         <argument
768             android:name="padSnackbar"
769             android:defaultValue="false"
770             app:argType="boolean" />
771         <action
772             android:id="@+id/action_turnOnSyncFragment_to_pairFragment"
773             app:destination="@id/pairFragment" />
774         <argument
775             android:name="entrypoint"
776             app:argType="org.mozilla.fenix.components.accounts.FenixFxAEntryPoint" />
777     </fragment>
779     <fragment
780         android:id="@+id/pairFragment"
781         android:name="org.mozilla.fenix.settings.PairFragment"
782         android:label="@string/preferences_sync_2"
783         tools:layout="@layout/fragment_pair" >
784         <argument
785             android:name="entrypoint"
786             app:argType="org.mozilla.fenix.components.accounts.FenixFxAEntryPoint" />
787     </fragment>
789     <fragment
790         android:id="@+id/aboutFragment"
791         android:name="org.mozilla.fenix.settings.about.AboutFragment"
792         tools:layout="@layout/fragment_about">
793         <action
794             android:id="@+id/action_aboutFragment_to_aboutLibrariesFragment"
795             app:destination="@id/aboutLibrariesFragment"
796             app:enterAnim="@anim/slide_in_right"
797             app:exitAnim="@anim/slide_out_left"
798             app:popEnterAnim="@anim/slide_in_left"
799             app:popExitAnim="@anim/slide_out_right" />
800     </fragment>
801     <fragment
802         android:id="@+id/secretSettingsPreference"
803         android:name="org.mozilla.fenix.settings.SecretSettingsFragment"
804         android:label="@string/preferences_debug_settings">
805         <action
806             android:id="@+id/action_secretSettingsFragment_to_sponsoredStoriesSettings"
807             app:destination="@id/sponsoredStoriesSettings"
808             app:enterAnim="@anim/slide_in_right"
809             app:exitAnim="@anim/slide_out_left"
810             app:popEnterAnim="@anim/slide_in_left"
811             app:popExitAnim="@anim/slide_out_right" />
812     </fragment>
813     <fragment
814         android:id="@+id/secretInfoSettingsFragment"
815         android:name="org.mozilla.fenix.settings.SecretDebugSettingsFragment"
816         android:label="@string/preferences_debug_info" />
817     <fragment
818         android:id="@+id/aboutLibrariesFragment"
819         android:name="org.mozilla.fenix.settings.about.AboutLibrariesFragment"
820         tools:layout="@layout/fragment_about_libraries" />
821     <fragment
822         android:id="@+id/customizationFragment"
823         android:name="org.mozilla.fenix.settings.CustomizationFragment"
824         android:label="@string/preferences_customize" />
825     <fragment
826         android:id="@+id/privateBrowsingFragment"
827         android:name="org.mozilla.fenix.settings.PrivateBrowsingFragment"
828         android:label="@string/preferences_private_browsing_options" />
829     <fragment
830         android:id="@+id/httpsOnlyFragment"
831         android:name="org.mozilla.fenix.settings.HttpsOnlyFragment"
832         android:label="@string/preferences_https_only_title" />
833     <fragment
834         android:id="@+id/cookieBannerFragment"
835         android:name="org.mozilla.fenix.settings.CookieBannersFragment"
836         android:label="@string/preferences_cookie_banner_reduction" />
837     <fragment
838         android:id="@+id/sponsoredStoriesSettings"
839         android:name="org.mozilla.fenix.settings.SponsoredStoriesSettingsFragment"
840         android:label="@string/preferences_debug_settings_custom_sponsored_stories_parameters" />
841     <fragment
842         android:id="@+id/trackingProtectionFragment"
843         android:name="org.mozilla.fenix.settings.TrackingProtectionFragment">
844         <action
845             android:id="@+id/action_trackingProtectionFragment_to_exceptionsFragment"
846             app:destination="@id/trackingProtectionExceptionsFragment"
847             app:enterAnim="@anim/slide_in_right"
848             app:exitAnim="@anim/slide_out_left"
849             app:popEnterAnim="@anim/slide_in_left"
850             app:popExitAnim="@anim/slide_out_right" />
851         <action
852             android:id="@+id/action_trackingProtectionFragment_to_trackingProtectionBlockingFragment"
853             app:destination="@id/trackingProtectionBlockingFragment"
854             app:enterAnim="@anim/slide_in_right"
855             app:exitAnim="@anim/slide_out_left"
856             app:popEnterAnim="@anim/slide_in_left"
857             app:popExitAnim="@anim/slide_out_right" />
858     </fragment>
859     <fragment
860         android:id="@+id/openLinksInAppsFragment"
861         android:name="org.mozilla.fenix.settings.OpenLinksInAppsFragment" />
862     <fragment
863         android:id="@+id/deleteBrowsingDataFragment"
864         android:name="org.mozilla.fenix.settings.deletebrowsingdata.DeleteBrowsingDataFragment"
865         android:label="@string/preferences_delete_browsing_data"
866         tools:layout="@layout/fragment_delete_browsing_data" />
867     <fragment
868         android:id="@+id/trackingProtectionExceptionsFragment"
869         android:name="org.mozilla.fenix.exceptions.trackingprotection.TrackingProtectionExceptionsFragment"
870         android:label="@string/preference_exceptions"
871         tools:layout="@layout/fragment_exceptions" />
872     <fragment
873         android:id="@+id/syncDebugFragment"
874         android:name="org.mozilla.fenix.settings.SyncDebugFragment"
875         android:label="@string/preferences_sync_debug" />
876     <dialog
877         android:id="@+id/collectionCreationFragment"
878         android:name="org.mozilla.fenix.collections.CollectionCreationFragment"
879         tools:layout="@layout/fragment_create_collection">
880         <argument
881             android:name="tabIds"
882             android:defaultValue="@null"
883             app:argType="string[]"
884             app:nullable="true" />
885         <argument
886             android:name="selectedTabIds"
887             android:defaultValue="@null"
888             app:argType="string[]"
889             app:nullable="true" />
890         <!-- nav_graph does not allow nullable Longs, so this defaults to -1 -->
891         <argument
892             android:name="selectedTabCollectionId"
893             android:defaultValue="-1L"
894             app:argType="long" />
895         <argument
896             android:name="saveCollectionStep"
897             app:argType="org.mozilla.fenix.collections.SaveCollectionStep"
898             app:nullable="false" />
899     </dialog>
901     <dialog
902         android:id="@+id/createShortcutFragment"
903         android:name="org.mozilla.fenix.shortcut.CreateShortcutFragment"
904         tools:layout="@layout/fragment_create_shortcut" />
905     <dialog
906         android:id="@+id/pwaOnboardingDialogFragment"
907         android:name="org.mozilla.fenix.shortcut.PwaOnboardingDialogFragment"
908         tools:layout="@layout/fragment_pwa_onboarding" />
910     <dialog
911         android:id="@+id/shareFragment"
912         android:name="org.mozilla.fenix.share.ShareFragment"
913         tools:layout="@layout/fragment_share">
914         <argument
915             android:name="data"
916             app:argType="mozilla.components.concept.engine.prompt.ShareData[]" />
917         <argument
918             android:name="showPage"
919             android:defaultValue="false"
920             app:argType="boolean" />
921         <action
922             android:id="@+id/action_shareFragment_to_addNewDeviceFragment"
923             app:destination="@id/addNewDeviceFragment" />
924         <argument
925             android:name="sessionId"
926             android:defaultValue="@null"
927             app:argType="string"
928             app:nullable="true" />
929         <argument
930             android:name="shareSubject"
931             android:defaultValue="@null"
932             app:argType="string"
933             app:nullable="true" />
934     </dialog>
935     <dialog
936         android:id="@+id/quickSettingsSheetDialogFragment"
937         android:name="org.mozilla.fenix.settings.quicksettings.QuickSettingsSheetDialogFragment"
938         tools:layout="@layout/fragment_quick_settings_dialog_sheet">
939         <argument
940             android:name="sessionId"
941             app:argType="string" />
942         <argument
943             android:name="title"
944             app:argType="string" />
945         <argument
946             android:name="url"
947             app:argType="string" />
948         <argument
949             android:name="isSecured"
950             app:argType="boolean" />
951         <argument
952             android:name="sitePermissions"
953             app:argType="mozilla.components.concept.engine.permission.SitePermissions"
954             app:nullable="true" />
955         <argument
956             android:name="gravity"
957             android:defaultValue="80"
958             app:argType="integer" />
959         <argument
960             android:name="certificateName"
961             android:defaultValue=" "
962             app:argType="string" />
963         <argument
964             android:name="permissionHighlights"
965             app:argType="mozilla.components.browser.state.state.content.PermissionHighlightsState" />
966         <argument
967             android:name="isTrackingProtectionEnabled"
968             app:argType="boolean" />
969         <argument
970             android:name="cookieBannerUIMode"
971             app:argType="org.mozilla.fenix.trackingprotection.CookieBannerUIMode" />
972     </dialog>
973     <dialog
974         android:id="@+id/cookieBannerDialogFragment"
975         android:name="org.mozilla.fenix.settings.quicksettings.protections.cookiebanners.dialog.CookieBannerReEngagementDialog" />
976     <fragment
977         android:id="@+id/accountProblemFragment"
978         android:name="org.mozilla.fenix.settings.account.AccountProblemFragment">
979         <action
980             android:id="@+id/action_accountProblemFragment_to_signOutFragment"
981             app:destination="@id/signOutFragment" />
982         <argument
983             android:name="entrypoint"
984             app:argType="org.mozilla.fenix.components.accounts.FenixFxAEntryPoint" />
985     </fragment>
986     <dialog
987         android:id="@+id/signOutFragment"
988         android:name="org.mozilla.fenix.settings.account.SignOutFragment"
989         tools:layout="@layout/fragment_sign_out" />
990     <dialog
991         android:id="@+id/trackingProtectionPanelDialogFragment"
992         android:name="org.mozilla.fenix.trackingprotection.TrackingProtectionPanelDialogFragment"
993         tools:layout="@layout/fragment_tracking_protection">
994         <argument
995             android:name="sessionId"
996             app:argType="string" />
997         <argument
998             android:name="url"
999             app:argType="string" />
1000         <argument
1001             android:name="trackingProtectionEnabled"
1002             app:argType="boolean" />
1003         <argument
1004             android:name="cookieBannerUIMode"
1005             app:argType="org.mozilla.fenix.trackingprotection.CookieBannerUIMode" />
1006         <argument
1007             android:name="gravity"
1008             android:defaultValue="80"
1009             app:argType="integer" />
1010         <argument
1011             android:name="sitePermissions"
1012             app:argType="mozilla.components.concept.engine.permission.SitePermissions"
1013             app:nullable="true" />
1014     </dialog>
1015     <dialog
1016         android:id="@+id/connectionPanelDialogFragment"
1017         android:name="org.mozilla.fenix.settings.quicksettings.ConnectionPanelDialogFragment"
1018         tools:layout="@layout/quicksettings_website_info">
1019         <argument
1020             android:name="sessionId"
1021             app:argType="string" />
1022         <argument
1023             android:name="title"
1024             app:argType="string" />
1025         <argument
1026             android:name="url"
1027             app:argType="string" />
1028         <argument
1029             android:name="isSecured"
1030             app:argType="boolean" />
1031         <argument
1032             android:name="certificateName"
1033             android:defaultValue=" "
1034             app:argType="string" />
1035         <argument
1036             android:name="sitePermissions"
1037             app:argType="mozilla.components.concept.engine.permission.SitePermissions"
1038             app:nullable="true" />
1039         <argument
1040             android:name="gravity"
1041             android:defaultValue="80"
1042             app:argType="integer" />
1043     </dialog>
1045     <dialog
1046         android:id="@+id/cookieBannerPanelDialogFragment"
1047         android:name="org.mozilla.fenix.settings.quicksettings.protections.cookiebanners.CookieBannerPanelDialogFragment"
1048         tools:layout="@layout/quicksettings_website_info">
1049         <argument
1050             android:name="sessionId"
1051             app:argType="string" />
1052         <argument
1053             android:name="url"
1054             app:argType="string" />
1055         <argument
1056             android:name="trackingProtectionEnabled"
1057             app:argType="boolean" />
1058         <argument
1059             android:name="cookieBannerUIMode"
1060             app:argType="org.mozilla.fenix.trackingprotection.CookieBannerUIMode" />
1061         <argument
1062             android:name="gravity"
1063             android:defaultValue="80"
1064             app:argType="integer" />
1065         <argument
1066             android:name="sitePermissions"
1067             app:argType="mozilla.components.concept.engine.permission.SitePermissions"
1068             app:nullable="true" />
1070     </dialog>
1071     <fragment
1072         android:id="@+id/trackingProtectionBlockingFragment"
1073         android:name="org.mozilla.fenix.trackingprotection.TrackingProtectionBlockingFragment"
1074         tools:layout="@layout/fragment_tracking_protection_blocking">
1075         <argument
1076             android:name="protectionMode"
1077             app:argType="org.mozilla.fenix.trackingprotection.TrackingProtectionMode" />
1078     </fragment>
1079     <fragment
1080         android:id="@+id/deleteBrowsingDataOnQuitFragment"
1081         android:name="org.mozilla.fenix.settings.deletebrowsingdata.DeleteBrowsingDataOnQuitFragment" />
1083     <fragment
1084         android:id="@+id/addNewDeviceFragment"
1085         android:name="org.mozilla.fenix.share.AddNewDeviceFragment"
1086         tools:layout="@layout/fragment_add_new_device" />
1087     <fragment
1088         android:id="@+id/localeSettingsFragment"
1089         android:name="org.mozilla.fenix.settings.advanced.LocaleSettingsFragment"
1090         tools:layout="@layout/fragment_locale_settings" />
1091     <fragment
1092         android:id="@+id/saveLoginSettingFragment"
1093         android:name="org.mozilla.fenix.settings.logins.fragment.SavedLoginsSettingFragment"
1094         android:label="SaveLoginSettingFragment" />
1095     <fragment
1096         android:id="@+id/webExtensionActionPopupFragment"
1097         android:name="org.mozilla.fenix.addons.WebExtensionActionPopupFragment"
1098         tools:layout="@layout/fragment_add_on_internal_settings">
1099         <argument
1100             android:name="webExtensionId"
1101             app:argType="string" />
1102         <argument
1103             android:name="webExtensionTitle"
1104             app:argType="string"
1105             app:nullable="true" />
1106     </fragment>
1107     <dialog
1108         android:id="@+id/tabHistoryDialogFragment"
1109         android:name="org.mozilla.fenix.tabhistory.TabHistoryDialogFragment"
1110         tools:layout="@layout/fragment_tab_history_dialog">
1111         <argument
1112             android:name="activeSessionId"
1113             app:argType="string"
1114             app:nullable="true" />
1115     </dialog>
1117     <navigation
1118         android:id="@+id/site_permissions_exceptions_graph"
1119         app:startDestination="@id/sitePermissionsExceptionsFragment">
1121         <fragment
1122             android:id="@+id/sitePermissionsExceptionsFragment"
1123             android:name="org.mozilla.fenix.settings.sitepermissions.SitePermissionsExceptionsFragment"
1124             android:label="@string/preference_exceptions"
1125             tools:layout="@layout/fragment_site_permissions_exceptions">
1126             <action
1127                 android:id="@+id/action_site_permissions_to_exceptions_to_site_permissions_details"
1128                 app:destination="@id/sitePermissionsDetailsExceptionsFragment"
1129                 app:popUpTo="@+id/sitePermissionsExceptionsFragment" />
1130         </fragment>
1132         <fragment
1133             android:id="@+id/sitePermissionsManageExceptionsPhoneFeatureFragment"
1134             android:name="org.mozilla.fenix.settings.sitepermissions.SitePermissionsManageExceptionsPhoneFeatureFragment"
1135             tools:layout="@layout/fragment_manage_site_permissions_feature_phone">
1136             <argument
1137                 android:name="phoneFeature"
1138                 app:argType="org.mozilla.fenix.settings.PhoneFeature" />
1139             <argument
1140                 android:name="sitePermissions"
1141                 app:argType="mozilla.components.concept.engine.permission.SitePermissions" />
1142         </fragment>
1144         <fragment
1145             android:id="@+id/sitePermissionsDetailsExceptionsFragment"
1146             android:name="org.mozilla.fenix.settings.sitepermissions.SitePermissionsDetailsExceptionsFragment">
1147             <action
1148                 android:id="@+id/action_site_permissions_to_exceptions_to_manage_phone_feature"
1149                 app:destination="@id/sitePermissionsManageExceptionsPhoneFeatureFragment"
1150                 app:popUpTo="@+id/sitePermissionsDetailsExceptionsFragment" />
1151             <argument
1152                 android:name="sitePermissions"
1153                 app:argType="mozilla.components.concept.engine.permission.SitePermissions" />
1154         </fragment>
1155     </navigation>
1157     <navigation
1158         android:id="@+id/addons_management_graph"
1159         app:startDestination="@id/addonsManagementFragment">
1160         <fragment
1161             android:id="@+id/addonsManagementFragment"
1162             android:name="org.mozilla.fenix.addons.AddonsManagementFragment"
1163             tools:layout="@layout/fragment_add_ons_management">
1164             <action
1165                 android:id="@+id/action_addonsManagementFragment_to_addonDetailsFragment"
1166                 app:destination="@id/addonDetailsFragment" />
1167             <action
1168                 android:id="@+id/action_addonsManagementFragment_to_installedAddonDetails"
1169                 app:destination="@id/installedAddonDetailsFragment" />
1170             <action
1171                 android:id="@+id/action_addonsManagementFragment_to_notYetSupportedAddonFragment"
1172                 app:destination="@id/notYetSupportedAddonFragment" />
1173             <argument
1174                 android:name="installAddonId"
1175                 android:defaultValue="@null"
1176                 app:argType="string"
1177                 app:nullable="true" />
1178         </fragment>
1179         <fragment
1180             android:id="@+id/installedAddonDetailsFragment"
1181             android:name="org.mozilla.fenix.addons.InstalledAddonDetailsFragment"
1182             tools:layout="@layout/fragment_installed_add_on_details">
1183             <action
1184                 android:id="@+id/action_installedAddonFragment_to_addonInternalSettingsFragment"
1185                 app:destination="@id/addonInternalSettingsFragment" />
1186             <action
1187                 android:id="@+id/action_installedAddonFragment_to_addonDetailsFragment"
1188                 app:destination="@id/addonDetailsFragment" />
1189             <action
1190                 android:id="@+id/action_installedAddonFragment_to_addonPermissionsDetailsFragment"
1191                 app:destination="@id/addonPermissionsDetailFragment" />
1192             <argument
1193                 android:name="addon"
1194                 app:argType="mozilla.components.feature.addons.Addon" />
1195         </fragment>
1196         <fragment
1197             android:id="@+id/notYetSupportedAddonFragment"
1198             android:name="org.mozilla.fenix.addons.NotYetSupportedAddonFragment"
1199             tools:layout="@layout/fragment_not_yet_supported_addons">
1200             <argument
1201                 android:name="addons"
1202                 app:argType="mozilla.components.feature.addons.Addon[]" />
1203         </fragment>
1204         <fragment
1205             android:id="@+id/addonPermissionsDetailFragment"
1206             android:name="org.mozilla.fenix.addons.AddonPermissionsDetailsFragment"
1207             tools:layout="@layout/fragment_add_on_permissions">
1208             <argument
1209                 android:name="addon"
1210                 app:argType="mozilla.components.feature.addons.Addon" />
1211         </fragment>
1212         <fragment
1213             android:id="@+id/addonInternalSettingsFragment"
1214             android:name="org.mozilla.fenix.addons.AddonInternalSettingsFragment"
1215             tools:layout="@layout/fragment_add_on_internal_settings">
1216             <argument
1217                 android:name="addon"
1218                 app:argType="mozilla.components.feature.addons.Addon" />
1219         </fragment>
1220         <fragment
1221             android:id="@+id/addonDetailsFragment"
1222             android:name="org.mozilla.fenix.addons.AddonDetailsFragment"
1223             tools:layout="@layout/fragment_add_on_details">
1224             <argument
1225                 android:name="addon"
1226                 app:argType="mozilla.components.feature.addons.Addon" />
1227         </fragment>
1228     </navigation>
1230     <navigation
1231         android:id="@+id/search_engine_graph"
1232         app:startDestination="@id/searchEngineFragment">
1233         <fragment
1234             android:id="@+id/searchEngineFragment"
1235             android:name="org.mozilla.fenix.settings.search.SearchEngineFragment"
1236             android:label="@string/preferences_search">
1237             <action
1238                 android:id="@+id/action_searchEngineFragment_to_addSearchEngineFragment"
1239                 app:destination="@+id/addSearchEngineFragment" />
1240             <action
1241                 android:id="@+id/action_searchEngineFragment_to_editCustomSearchEngineFragment"
1242                 app:destination="@+id/editCustomSearchEngineFragment" />
1243             <action
1244                 android:id="@+id/action_searchEngineFragment_to_defaultEngineFragment"
1245                 app:destination="@+id/defaultEngineFragment" />
1246             <action
1247                 android:id="@+id/action_searchEngineFragment_to_searchShortcutsFragment"
1248                 app:destination="@+id/searchShortcutsFragment" />
1249         </fragment>
1250         <fragment
1251             android:id="@+id/defaultEngineFragment"
1252             android:name="org.mozilla.fenix.settings.search.DefaultSearchEngineFragment">
1253             <action
1254                 android:id="@+id/action_defaultEngineFragment_to_saveSearchEngineFragment"
1255                 app:destination="@+id/saveSearchEngineFragment" />
1256         </fragment>
1257         <fragment
1258             android:id="@+id/searchShortcutsFragment"
1259             android:name="org.mozilla.fenix.settings.search.SearchShortcutsFragment"
1260             tools:layout="@layout/fragment_search_shortcuts">
1261             <action
1262                 android:id="@+id/action_searchShortcutsFragment_to_saveSearchEngineFragment"
1263                 app:destination="@+id/saveSearchEngineFragment" />
1264         </fragment>
1265         <fragment
1266             android:id="@+id/saveSearchEngineFragment"
1267             android:name="org.mozilla.fenix.settings.search.SaveSearchEngineFragment">
1268             <argument
1269                 android:name="searchEngineIdentifier"
1270                 app:argType="string"
1271                 app:nullable="true"/>
1272         </fragment>
1273         <fragment
1274             android:id="@+id/addSearchEngineFragment"
1275             android:name="org.mozilla.fenix.settings.search.AddSearchEngineFragment"
1276             tools:layout="@layout/fragment_add_search_engine" />
1277         <fragment
1278             android:id="@+id/editCustomSearchEngineFragment"
1279             android:name="org.mozilla.fenix.settings.search.EditCustomSearchEngineFragment"
1280             tools:layout="@layout/fragment_add_search_engine">
1281             <argument
1282                 android:name="searchEngineIdentifier"
1283                 app:argType="string" />
1284         </fragment>
1285     </navigation>
1287     <navigation
1288         android:id="@+id/nimbus_experiment_graph"
1289         app:startDestination="@id/nimbusExperimentsFragment">
1290         <fragment
1291             android:id="@+id/nimbusExperimentsFragment"
1292             android:name="org.mozilla.fenix.nimbus.NimbusExperimentsFragment"
1293             android:label="@string/preferences_nimbus_experiments"
1294             tools:layout="@layout/mozac_service_nimbus_experiments">
1295             <action
1296                 android:id="@+id/action_nimbusExperimentsFragment_to_nimbusBranchesFragment"
1297                 app:destination="@+id/nimbusBranchesFragment" />
1298         </fragment>
1299         <fragment
1300             android:id="@+id/nimbusBranchesFragment"
1301             android:name="org.mozilla.fenix.nimbus.NimbusBranchesFragment"
1302             tools:layout="@layout/mozac_service_nimbus_experiment_details">
1303             <argument
1304                 android:name="experimentId"
1305                 app:argType="string" />
1306             <argument
1307                 android:name="experimentName"
1308                 app:argType="string" />
1309             <action
1310                 android:id="@+id/action_nimbusBranchesFragment_to_dataChoicesFragment"
1311                 app:destination="@id/dataChoicesFragment"
1312                 app:enterAnim="@anim/slide_in_right"
1313                 app:exitAnim="@anim/slide_out_left"
1314                 app:popEnterAnim="@anim/slide_in_left"
1315                 app:popExitAnim="@anim/slide_out_right"
1316                 app:popUpTo="@id/settingsFragment" />
1317         </fragment>
1318     </navigation>
1320     <navigation
1321         android:id="@+id/autofill_graph"
1322         app:startDestination="@id/autofillSettingFragment">
1323         <fragment
1324             android:id="@+id/autofillSettingFragment"
1325             android:name="org.mozilla.fenix.settings.autofill.AutofillSettingFragment"
1326             android:label="@string/preferences_credit_cards">
1327             <action
1328                 android:id="@+id/action_autofillSettingFragment_to_creditCardEditorFragment"
1329                 app:destination="@id/creditCardEditorFragment"
1330                 app:enterAnim="@anim/slide_in_right"
1331                 app:exitAnim="@anim/slide_out_left"
1332                 app:popEnterAnim="@anim/slide_in_left"
1333                 app:popExitAnim="@anim/slide_out_right" />
1334             <action
1335                 android:id="@+id/action_autofillSettingFragment_to_creditCardsManagementFragment"
1336                 app:destination="@id/creditCardsManagementFragment"
1337                 app:enterAnim="@anim/slide_in_right"
1338                 app:exitAnim="@anim/slide_out_left"
1339                 app:popEnterAnim="@anim/slide_in_left"
1340                 app:popExitAnim="@anim/slide_out_right" />
1341             <action
1342                 android:id="@+id/action_autofillSettingFragment_to_addressEditorFragment"
1343                 app:destination="@id/addressEditorFragment"
1344                 app:enterAnim="@anim/slide_in_right"
1345                 app:exitAnim="@anim/slide_out_left"
1346                 app:popEnterAnim="@anim/slide_in_left"
1347                 app:popExitAnim="@anim/slide_out_right" />
1348             <action
1349                 android:id="@+id/action_autofillSettingFragment_to_addressManagementFragment"
1350                 app:destination="@id/addressManagementFragment"
1351                 app:enterAnim="@anim/slide_in_right"
1352                 app:exitAnim="@anim/slide_out_left"
1353                 app:popEnterAnim="@anim/slide_in_left"
1354                 app:popExitAnim="@anim/slide_out_right" />
1355         </fragment>
1356         <fragment
1357             android:id="@+id/creditCardEditorFragment"
1358             android:name="org.mozilla.fenix.settings.creditcards.CreditCardEditorFragment"
1359             android:label="@string/credit_cards_add_card">
1360             <argument
1361                 android:name="creditCard"
1362                 android:defaultValue="@null"
1363                 app:argType="mozilla.components.concept.storage.CreditCard"
1364                 app:nullable="true" />
1365         </fragment>
1366         <fragment
1367             android:id="@+id/creditCardsManagementFragment"
1368             android:name="org.mozilla.fenix.settings.creditcards.CreditCardsManagementFragment"
1369             android:label="@string/credit_cards_saved_cards">
1370             <action
1371                 android:id="@+id/action_creditCardsManagementFragment_to_creditCardEditorFragment"
1372                 app:destination="@id/creditCardEditorFragment"
1373                 app:enterAnim="@anim/slide_in_right"
1374                 app:exitAnim="@anim/slide_out_left"
1375                 app:popEnterAnim="@anim/slide_in_left"
1376                 app:popExitAnim="@anim/slide_out_right" />
1377         </fragment>
1378         <fragment
1379             android:id="@+id/addressEditorFragment"
1380             android:name="org.mozilla.fenix.settings.address.AddressEditorFragment"
1381             android:label="@string/addresses_add_address">
1382             <argument
1383                 android:name="address"
1384                 android:defaultValue="@null"
1385                 app:argType="mozilla.components.concept.storage.Address"
1386                 app:nullable="true" />
1387         </fragment>
1388         <fragment
1389             android:id="@+id/addressManagementFragment"
1390             android:name="org.mozilla.fenix.settings.address.AddressManagementFragment"
1391             android:label="@string/addresses_manage_addresses">
1392             <action
1393                 android:id="@+id/action_addressManagementFragment_to_addressEditorFragment"
1394                 app:destination="@id/addressEditorFragment"
1395                 app:enterAnim="@anim/slide_in_right"
1396                 app:exitAnim="@anim/slide_out_left"
1397                 app:popEnterAnim="@anim/slide_in_left"
1398                 app:popExitAnim="@anim/slide_out_right" />
1399         </fragment>
1400     </navigation>
1401     <navigation
1402         android:id="@+id/savedLogins"
1403         app:startDestination="@id/savedLoginsFragment">
1404         <fragment
1405             android:id="@+id/savedLoginsFragment"
1406             android:name="org.mozilla.fenix.settings.logins.fragment.SavedLoginsFragment"
1407             tools:layout="@layout/fragment_saved_logins">
1408             <action
1409                 android:id="@+id/action_savedLoginsFragment_to_loginDetailFragment"
1410                 app:destination="@id/loginDetailFragment" />
1411             <action
1412                 android:id="@+id/action_savedLoginsFragment_to_addLoginFragment"
1413                 app:destination="@id/addLoginFragment"
1414                 app:popUpTo="@id/addLoginFragment"
1415                 app:popUpToInclusive="true" />
1416             <action
1417                 android:id="@+id/action_savedLoginsFragment_to_browserFragment"
1418                 app:destination="@id/browserFragment"
1419                 app:popUpTo="@id/settingsFragment"
1420                 app:popUpToInclusive="true" />
1421         </fragment>
1422         <fragment
1423             android:id="@+id/addLoginFragment"
1424             android:name="org.mozilla.fenix.settings.logins.fragment.AddLoginFragment"
1425             android:label="@string/add_login"
1426             tools:layout="@layout/fragment_add_login">
1427             <action
1428                 android:id="@+id/action_addLoginFragment_to_loginDetailFragment"
1429                 app:destination="@id/loginDetailFragment"
1430                 app:popUpTo="@id/savedLoginsFragment"
1431                 app:popUpToInclusive="false" />
1432         </fragment>
1433         <fragment
1434             android:id="@+id/loginDetailFragment"
1435             android:name="org.mozilla.fenix.settings.logins.fragment.LoginDetailFragment"
1436             tools:layout="@layout/fragment_login_detail">
1437             <argument
1438                 android:name="savedLoginId"
1439                 app:argType="string"
1440                 app:nullable="false" />
1441             <action
1442                 android:id="@+id/action_loginDetailFragment_to_editLoginFragment"
1443                 app:destination="@id/editLoginFragment"
1444                 app:popUpTo="@id/editLoginFragment"
1445                 app:popUpToInclusive="true" />
1446         </fragment>
1447         <fragment
1448             android:id="@+id/editLoginFragment"
1449             android:name="org.mozilla.fenix.settings.logins.fragment.EditLoginFragment"
1450             android:label="@string/edit"
1451             tools:layout="@layout/fragment_edit_login">
1452             <argument
1453                 android:name="savedLoginItem"
1454                 app:argType="org.mozilla.fenix.settings.logins.SavedLogin"
1455                 app:nullable="false" />
1456             <action
1457                 android:id="@+id/action_editLoginFragment_to_loginDetailFragment"
1458                 app:destination="@id/loginDetailFragment"
1459                 app:popUpTo="@id/loginDetailFragment"
1460                 app:popUpToInclusive="true" />
1461         </fragment>
1462     </navigation>
1463 </navigation>