[fenix] For https://github.com/mozilla-mobile/fenix/issues/10163 - Adds tab multisele...
[gecko.git] / mobile / android / fenix / app / src / main / res / navigation / nav_graph.xml
blobc33f8f0f42a4ab398de61faafd85046ff195869b
1 <?xml version="1.0" encoding="utf-8"?>
2 <navigation xmlns:android="http://schemas.android.com/apk/res/android"
3     xmlns:app="http://schemas.android.com/apk/res-auto"
4     xmlns:tools="http://schemas.android.com/tools"
5     android:id="@+id/nav_graph"
6     app:startDestination="@id/homeFragment">
8     <action
9         android:id="@+id/action_global_home"
10         app:destination="@+id/homeFragment"
11         app:popUpTo="@id/homeFragment"
12         app:popUpToInclusive="true" />
14     <action
15         android:id="@+id/action_global_browser"
16         app:destination="@id/browserFragment"
17         app:popUpTo="@id/homeFragment"
18         app:popUpToInclusive="false" />
20     <action
21         android:id="@+id/action_global_external_app_browser"
22         app:destination="@id/externalAppBrowserFragment"
23         app:popUpTo="@id/homeFragment"
24         app:popUpToInclusive="false" />
26     <action
27         android:id="@+id/action_global_search"
28         app:destination="@id/searchFragment" />
30     <action
31         android:id="@+id/action_global_shareFragment"
32         app:destination="@id/shareFragment" />
33     <action
34         android:id="@+id/action_global_crash_reporter"
35         app:destination="@id/crashReporterFragment" />
36     <action
37         android:id="@+id/action_global_turn_on_sync"
38         app:destination="@id/turnOnSyncFragment" />
39     <action
40         android:id="@+id/action_global_settings_addonsManagementFragment"
41         app:destination="@id/addonsManagementFragment" />
42     <action
43         android:id="@+id/action_global_searchEngineFragment"
44         app:destination="@id/searchEngineFragment" />
45     <action
46         android:id="@+id/action_global_accessibilityFragment"
47         app:destination="@id/accessibilityFragment" />
48     <action
49         android:id="@+id/action_global_deleteBrowsingDataFragment"
50         app:destination="@id/deleteBrowsingDataFragment" />
51     <action
52         android:id="@+id/action_global_webExtensionActionPopupFragment"
53         app:destination="@id/webExtensionActionPopupFragment" />
54     <action
55         android:id="@+id/action_global_settingsFragment"
56         app:destination="@id/settingsFragment" />
57     <action
58         android:id="@+id/action_global_syncedTabsFragment"
59         app:destination="@+id/syncedTabsFragment" />
60     <action
61         android:id="@+id/action_global_privateBrowsingFragment"
62         app:destination="@id/privateBrowsingFragment" />
63     <action
64         android:id="@+id/action_global_bookmarkFragment"
65         app:destination="@id/bookmarkFragment" />
66     <action
67         android:id="@+id/action_global_historyFragment"
68         app:destination="@id/historyFragment" />
69     <action
70         android:id="@+id/action_global_accountProblemFragment"
71         app:destination="@id/accountProblemFragment" />
72     <action
73         android:id="@+id/action_global_SitePermissionsManagePhoneFeature"
74         app:destination="@id/SitePermissionsManagePhoneFeature" />
75     <action
76         android:id="@+id/action_global_collectionCreationFragment"
77         app:destination="@id/collectionCreationFragment" />
78     <action
79         android:id="@+id/action_global_bookmarkEditFragment"
80         app:destination="@id/bookmarkEditFragment" />
81     <action
82         android:id="@+id/action_global_addonsManagementFragment"
83         app:destination="@id/addonsManagementFragment" />
84     <action
85         android:id="@+id/action_global_trackingProtectionFragment"
86         app:destination="@id/trackingProtectionFragment" />
87     <action
88         android:id="@+id/action_global_trackingProtectionExceptionsFragment"
89         app:destination="@id/trackingProtectionExceptionsFragment" />
90     <action
91         android:id="@+id/action_global_accountSettingsFragment"
92         app:destination="@id/accountSettingsFragment" />
93     <action
94         android:id="@+id/action_global_trackingProtectionPanelDialogFragment"
95         app:destination="@id/trackingProtectionPanelDialogFragment" />
96     <action
97         android:id="@+id/action_global_quickSettingsSheetDialogFragment"
98         app:destination="@id/quickSettingsSheetDialogFragment" />
99     <action
100         android:id="@+id/action_global_tabTrayDialogFragment"
101         app:destination="@id/tabTrayDialogFragment" />
102     <action
103         android:id="@+id/action_global_savedLoginsAuthFragment"
104         app:destination="@id/savedLoginsAuthFragment" />
105     <action
106         android:id="@+id/action_global_tabHistoryDialogFragment"
107         app:destination="@id/tabHistoryDialogFragment" />
109     <dialog
110         android:id="@+id/tabTrayDialogFragment"
111         android:name="org.mozilla.fenix.tabtray.TabTrayDialogFragment"
112         tools:layout="@layout/fragment_tab_tray_dialog">
113         <argument
114             android:name="enterMultiselect"
115             android:defaultValue="false"
116             app:argType="boolean" />
117     </dialog>
119     <fragment
120         android:id="@+id/homeFragment"
121         android:name="org.mozilla.fenix.home.HomeFragment"
122         tools:layout="@layout/fragment_home">
123         <action
124             android:id="@+id/action_homeFragment_to_browserFragment"
125             app:destination="@id/browserFragment"
126             app:exitAnim="@anim/zoom_in_fade"
127             app:popEnterAnim="@anim/zoom_out_fade" />
129         <argument
130             android:name="focusOnAddressBar"
131             android:defaultValue="false"
132             app:argType="boolean" />
133         <argument
134             android:name="session_to_delete"
135             android:defaultValue="@null"
136             app:argType="string"
137             app:nullable="true" />
138     </fragment>
140     <fragment
141         android:id="@+id/searchFragment"
142         android:name="org.mozilla.fenix.search.SearchFragment"
143         tools:layout="@layout/fragment_search">
144         <argument
145             android:name="session_id"
146             app:argType="string"
147             app:nullable="true" />
148         <argument
149             android:name="pastedText"
150             android:defaultValue="@null"
151             app:argType="string"
152             app:nullable="true" />
153         <argument
154             android:name="search_access_point"
155             android:defaultValue="NONE"
156             app:argType="org.mozilla.fenix.components.metrics.Event$PerformedSearch$SearchAccessPoint" />
157     </fragment>
159     <fragment
160         android:id="@+id/SitePermissionsManagePhoneFeature"
161         android:name="org.mozilla.fenix.settings.sitepermissions.SitePermissionsManagePhoneFeatureFragment"
162         tools:layout="@layout/fragment_manage_site_permissions_feature_phone">
163         <argument
164             android:name="phoneFeature"
165             app:argType="org.mozilla.fenix.settings.PhoneFeature" />
166     </fragment>
168     <fragment
169         android:id="@+id/sitePermissionsExceptionsFragment"
170         android:name="org.mozilla.fenix.settings.sitepermissions.SitePermissionsExceptionsFragment"
171         android:label="@string/preference_exceptions"
172         tools:layout="@layout/fragment_site_permissions_exceptions">
173         <action
174             android:id="@+id/action_site_permissions_to_exceptions_to_site_permissions_details"
175             app:destination="@id/sitePermissionsDetailsExceptionsFragment"
176             app:popUpTo="@+id/sitePermissionsExceptionsFragment" />
177     </fragment>
179     <fragment
180         android:id="@+id/sitePermissionsDetailsExceptionsFragment"
181         android:name="org.mozilla.fenix.settings.sitepermissions.SitePermissionsDetailsExceptionsFragment"
182         tools:layout="@xml/site_permissions_details_exceptions_preferences">
183         <action
184             android:id="@+id/action_site_permissions_to_exceptions_to_manage_phone_feature"
185             app:destination="@id/sitePermissionsManageExceptionsPhoneFeatureFragment"
186             app:popUpTo="@+id/sitePermissionsDetailsExceptionsFragment" />
187         <argument
188             android:name="sitePermissions"
189             app:argType="mozilla.components.feature.sitepermissions.SitePermissions" />
190     </fragment>
192     <fragment
193         android:id="@+id/sitePermissionsManageExceptionsPhoneFeatureFragment"
194         android:name="org.mozilla.fenix.settings.sitepermissions.SitePermissionsManageExceptionsPhoneFeatureFragment"
195         tools:layout="@layout/fragment_manage_site_permissions_feature_phone">
196         <argument
197             android:name="phoneFeature"
198             app:argType="org.mozilla.fenix.settings.PhoneFeature" />
199         <argument
200             android:name="sitePermissions"
201             app:argType="mozilla.components.feature.sitepermissions.SitePermissions" />
202     </fragment>
204     <fragment
205         android:id="@+id/browserFragment"
206         android:name="org.mozilla.fenix.browser.BrowserFragment"
207         app:exitAnim="@anim/fade_out"
208         tools:layout="@layout/fragment_browser">
209         <action
210             android:id="@+id/action_browserFragment_to_searchFragment"
211             app:destination="@id/searchFragment"
212             app:enterAnim="@anim/fade_in_up"
213             app:popExitAnim="@anim/fade_out_down" />
214         <argument
215             android:name="activeSessionId"
216             app:argType="string"
217             app:nullable="true" />
218         <argument
219             android:name="shouldAnimate"
220             android:defaultValue="false"
221             app:argType="boolean" />
222         <action
223             android:id="@+id/action_browserFragment_to_syncedTabsFragment"
224             app:destination="@id/syncedTabsFragment" />
225         <action
226             android:id="@+id/action_browserFragment_to_settingsFragment"
227             app:destination="@id/settingsFragment" />
228         <action
229             android:id="@+id/action_browserFragment_to_createShortcutFragment"
230             app:destination="@id/createShortcutFragment" />
231         <action
232             android:id="@+id/action_browserFragment_to_pwaOnboardingDialogFragment"
233             app:destination="@id/pwaOnboardingDialogFragment" />
234         <action
235             android:id="@+id/action_browserFragment_to_quickSettingsSheetDialogFragment"
236             app:destination="@id/quickSettingsSheetDialogFragment" />
237         <action
238             android:id="@+id/action_browserFragment_to_trackingProtectionPanelDialogFragment"
239             app:destination="@id/trackingProtectionPanelDialogFragment" />
240         <action
241             android:id="@+id/action_browserFragment_to_tabsTrayFragment"
242             app:destination="@+id/tabTrayFragment" />
243     </fragment>
245     <fragment
246         android:id="@+id/externalAppBrowserFragment"
247         android:name="org.mozilla.fenix.customtabs.ExternalAppBrowserFragment"
248         tools:layout="@layout/fragment_browser">
249         <argument
250             android:name="activeSessionId"
251             app:argType="string"
252             app:nullable="true" />
253         <argument
254             android:name="webAppManifest"
255             app:argType="string"
256             app:nullable="true" />
257     </fragment>
259     <fragment
260         android:id="@+id/historyFragment"
261         android:name="org.mozilla.fenix.library.history.HistoryFragment"
262         android:label="@string/library_history"
263         tools:layout="@layout/fragment_history" />
265     <fragment
266         android:id="@+id/bookmarkFragment"
267         android:name="org.mozilla.fenix.library.bookmarks.BookmarkFragment"
268         tools:layout="@layout/fragment_bookmark">
269         <argument
270             android:name="currentRoot"
271             app:argType="string" />
272         <action
273             android:id="@+id/action_bookmarkFragment_self"
274             app:destination="@id/bookmarkFragment" />
275         <action
276             android:id="@+id/action_bookmarkFragment_to_bookmarkEditFragment"
277             app:destination="@id/bookmarkEditFragment" />
278         <action
279             android:id="@+id/action_bookmarkFragment_to_bookmarkAddFolderFragment"
280             app:destination="@id/bookmarkAddFolderFragment" />
281     </fragment>
283     <fragment
284         android:id="@+id/bookmarkEditFragment"
285         android:name="org.mozilla.fenix.library.bookmarks.edit.EditBookmarkFragment"
286         tools:layout="@layout/fragment_edit_bookmark">
287         <argument
288             android:name="guidToEdit"
289             app:argType="string"
290             app:nullable="false" />
291         <action
292             android:id="@+id/action_bookmarkEditFragment_to_bookmarkSelectFolderFragment"
293             app:destination="@id/bookmarkSelectFolderFragment" />
294         <argument
295             android:name="requiresSnackbarPaddingForToolbar"
296             android:defaultValue="false"
297             app:argType="boolean" />
298     </fragment>
300     <fragment
301         android:id="@+id/bookmarkSelectFolderFragment"
302         android:name="org.mozilla.fenix.library.bookmarks.selectfolder.SelectBookmarkFolderFragment"
303         android:label="@string/bookmark_select_folder_fragment_label"
304         tools:layout="@layout/fragment_select_bookmark_folder">
305         <argument
306             android:name="folderGuid"
307             app:argType="string"
308             app:nullable="true" />
309         <action
310             android:id="@+id/action_bookmarkSelectFolderFragment_self"
311             app:destination="@id/bookmarkSelectFolderFragment" />
312         <action
313             android:id="@+id/action_bookmarkSelectFolderFragment_to_bookmarkAddFolderFragment"
314             app:destination="@id/bookmarkAddFolderFragment" />
315         <argument
316             android:name="visitedAddBookmark"
317             android:defaultValue="false"
318             app:argType="boolean" />
319     </fragment>
321     <fragment
322         android:id="@+id/bookmarkAddFolderFragment"
323         android:name="org.mozilla.fenix.library.bookmarks.addfolder.AddBookmarkFolderFragment"
324         android:label="@string/bookmark_add_folder_fragment_label">
325         <action
326             android:id="@+id/action_bookmarkAddFolderFragment_to_bookmarkSelectFolderFragment"
327             app:destination="@id/bookmarkSelectFolderFragment" />
328     </fragment>
330     <fragment
331         android:id="@+id/savedLoginsAuthFragment"
332         android:name="org.mozilla.fenix.settings.logins.fragment.SavedLoginsAuthFragment"
333         android:label="@string/preferences_passwords_logins_and_passwords">
334         <action
335             android:id="@+id/action_savedLoginsAuthFragment_to_loginsListFragment"
336             app:destination="@id/savedLoginsFragment"
337             app:enterAnim="@anim/slide_in_right"
338             app:exitAnim="@anim/slide_out_left"
339             app:popEnterAnim="@anim/slide_in_left"
340             app:popExitAnim="@anim/slide_out_right" />
341         <action
342             android:id="@+id/action_savedLoginsAuthFragment_to_turnOnSyncFragment"
343             app:destination="@id/turnOnSyncFragment"
344             app:enterAnim="@anim/slide_in_right"
345             app:exitAnim="@anim/slide_out_left"
346             app:popEnterAnim="@anim/slide_in_left"
347             app:popExitAnim="@anim/slide_out_right" />
348         <action
349             android:id="@+id/action_savedLoginsAuthFragment_to_savedLoginsSettingFragment"
350             app:destination="@id/saveLoginSettingFragment"
351             app:enterAnim="@anim/slide_in_right"
352             app:exitAnim="@anim/slide_out_left"
353             app:popEnterAnim="@anim/slide_in_left"
354             app:popExitAnim="@anim/slide_out_right" />
355         <action
356             android:id="@+id/action_savedLoginsAuthFragment_to_loginExceptionsFragment"
357             app:destination="@id/loginExceptionsFragment"
358             app:enterAnim="@anim/slide_in_right"
359             app:exitAnim="@anim/slide_out_left"
360             app:popEnterAnim="@anim/slide_in_left"
361             app:popExitAnim="@anim/slide_out_right" />
362     </fragment>
364     <fragment
365         android:id="@+id/savedLoginsFragment"
366         android:name="org.mozilla.fenix.settings.logins.fragment.SavedLoginsFragment"
367         tools:layout="@layout/fragment_saved_logins">
368         <action
369             android:id="@+id/action_savedLoginsFragment_to_loginDetailFragment"
370             app:destination="@id/loginDetailFragment" />
371         <action
372             android:id="@+id/action_savedLoginsFragment_to_browserFragment"
373             app:destination="@id/browserFragment"
374             app:popUpTo="@id/settingsFragment"
375             app:popUpToInclusive="true" />
376     </fragment>
378     <fragment
379         android:id="@+id/syncedTabsFragment"
380         android:name="org.mozilla.fenix.sync.SyncedTabsFragment"
381         android:label="@string/synced_tabs"
382         tools:layout="@layout/fragment_synced_tabs" />
384     <fragment
385         android:id="@+id/loginExceptionsFragment"
386         android:name="org.mozilla.fenix.loginexceptions.LoginExceptionsFragment"
387         android:label="@string/preferences_passwords_exceptions"
388         tools:layout="@layout/fragment_exceptions" />
390     <fragment
391         android:id="@+id/loginDetailFragment"
392         android:name="org.mozilla.fenix.settings.logins.fragment.LoginDetailFragment"
393         tools:layout="@layout/fragment_login_detail">
394         <argument
395             android:name="savedLoginId"
396             app:argType="string"
397             app:nullable="false" />
398         <action
399             android:id="@+id/action_loginDetailFragment_to_editLoginFragment"
400             app:destination="@id/editLoginFragment"
401             app:popUpTo="@id/editLoginFragment"
402             app:popUpToInclusive="true" />
403     </fragment>
405     <fragment
406         android:id="@+id/editLoginFragment"
407         android:name="org.mozilla.fenix.settings.logins.fragment.EditLoginFragment"
408         android:label="@string/edit">
409         <argument
410             android:name="savedLoginItem"
411             app:argType="org.mozilla.fenix.settings.logins.SavedLogin"
412             app:nullable="false" />
413         <action
414             android:id="@+id/action_editLoginFragment_to_loginDetailFragment"
415             app:destination="@id/loginDetailFragment"
416             app:popUpTo="@id/loginDetailFragment"
417             app:popUpToInclusive="true" />
418     </fragment>
420     <fragment
421         android:id="@+id/settingsFragment"
422         android:name="org.mozilla.fenix.settings.SettingsFragment"
423         android:label="@string/settings_title">
424         <action
425             android:id="@+id/action_settingsFragment_to_dataChoicesFragment"
426             app:destination="@id/dataChoicesFragment"
427             app:enterAnim="@anim/slide_in_right"
428             app:exitAnim="@anim/slide_out_left"
429             app:popEnterAnim="@anim/slide_in_left"
430             app:popExitAnim="@anim/slide_out_right"
431             app:popUpTo="@+id/settingsFragment" />
432         <action
433             android:id="@+id/action_settingsFragment_to_sitePermissionsFragment"
434             app:destination="@id/sitePermissionsFragment"
435             app:enterAnim="@anim/slide_in_right"
436             app:exitAnim="@anim/slide_out_left"
437             app:popEnterAnim="@anim/slide_in_left"
438             app:popExitAnim="@anim/slide_out_right" />
439         <action
440             android:id="@+id/action_settingsFragment_to_savedLoginsAuthFragment"
441             app:destination="@id/savedLoginsAuthFragment"
442             app:enterAnim="@anim/slide_in_right"
443             app:exitAnim="@anim/slide_out_left"
444             app:popEnterAnim="@anim/slide_in_left"
445             app:popExitAnim="@anim/slide_out_right" />
446         <action
447             android:id="@+id/action_settingsFragment_to_accessibilityFragment"
448             app:destination="@id/accessibilityFragment"
449             app:enterAnim="@anim/slide_in_right"
450             app:exitAnim="@anim/slide_out_left"
451             app:popEnterAnim="@anim/slide_in_left"
452             app:popExitAnim="@anim/slide_out_right" />
453         <action
454             android:id="@+id/action_settingsFragment_to_accountSettingsFragment"
455             app:destination="@id/accountSettingsFragment"
456             app:enterAnim="@anim/slide_in_right"
457             app:exitAnim="@anim/slide_out_left"
458             app:popEnterAnim="@anim/slide_in_left"
459             app:popExitAnim="@anim/slide_out_right" />
460         <action
461             android:id="@+id/action_settingsFragment_to_searchEngineFragment"
462             app:destination="@id/searchEngineFragment"
463             app:enterAnim="@anim/slide_in_right"
464             app:exitAnim="@anim/slide_out_left"
465             app:popEnterAnim="@anim/slide_in_left"
466             app:popExitAnim="@anim/slide_out_right" />
467         <action
468             android:id="@+id/action_settingsFragment_to_turnOnSyncFragment"
469             app:destination="@id/turnOnSyncFragment"
470             app:enterAnim="@anim/slide_in_right"
471             app:exitAnim="@anim/slide_out_left"
472             app:popEnterAnim="@anim/slide_in_left"
473             app:popExitAnim="@anim/slide_out_right" />
474         <action
475             android:id="@+id/action_settingsFragment_to_aboutFragment"
476             app:destination="@id/aboutFragment"
477             app:enterAnim="@anim/slide_in_right"
478             app:exitAnim="@anim/slide_out_left"
479             app:popEnterAnim="@anim/slide_in_left"
480             app:popExitAnim="@anim/slide_out_right" />
481         <action
482             android:id="@+id/action_settingsFragment_to_secretSettingsFragment"
483             app:destination="@id/secretSettingsPreference"
484             app:enterAnim="@anim/slide_in_right"
485             app:exitAnim="@anim/slide_out_left"
486             app:popEnterAnim="@anim/slide_in_left"
487             app:popExitAnim="@anim/slide_out_right" />
488         <action
489             android:id="@+id/action_settingsFragment_to_customizationFragment"
490             app:destination="@id/customizationFragment"
491             app:enterAnim="@anim/slide_in_right"
492             app:exitAnim="@anim/slide_out_left"
493             app:popEnterAnim="@anim/slide_in_left"
494             app:popExitAnim="@anim/slide_out_right" />
495         <action
496             android:id="@+id/action_settingsFragment_to_privateBrowsingFragment"
497             app:destination="@id/privateBrowsingFragment"
498             app:enterAnim="@anim/slide_in_right"
499             app:exitAnim="@anim/slide_out_left"
500             app:popEnterAnim="@anim/slide_in_left"
501             app:popExitAnim="@anim/slide_out_right" />
502         <action
503             android:id="@+id/action_settingsFragment_to_trackingProtectionFragment"
504             app:destination="@id/trackingProtectionFragment"
505             app:enterAnim="@anim/slide_in_right"
506             app:exitAnim="@anim/slide_out_left"
507             app:popEnterAnim="@anim/slide_in_left"
508             app:popExitAnim="@anim/slide_out_right" />
509         <action
510             android:id="@+id/action_settingsFragment_to_deleteBrowsingDataFragment"
511             app:destination="@id/deleteBrowsingDataFragment"
512             app:enterAnim="@anim/slide_in_right"
513             app:exitAnim="@anim/slide_out_left"
514             app:popEnterAnim="@anim/slide_in_left"
515             app:popExitAnim="@anim/slide_out_right" />
516         <action
517             android:id="@+id/action_settingsFragment_to_accountProblemFragment"
518             app:destination="@id/accountProblemFragment"
519             app:enterAnim="@anim/slide_in_right"
520             app:exitAnim="@anim/slide_out_left"
521             app:popEnterAnim="@anim/slide_in_left"
522             app:popExitAnim="@anim/slide_out_right" />
523         <action
524             android:id="@+id/action_settingsFragment_to_deleteBrowsingDataOnQuitFragment"
525             app:destination="@id/deleteBrowsingDataOnQuitFragment"
526             app:enterAnim="@anim/slide_in_right"
527             app:exitAnim="@anim/slide_out_left"
528             app:popEnterAnim="@anim/slide_in_left"
529             app:popExitAnim="@anim/slide_out_right" />
530         <action
531             android:id="@+id/action_settingsFragment_to_localeSettingsFragment"
532             app:destination="@id/localeSettingsFragment"
533             app:enterAnim="@anim/slide_in_right"
534             app:exitAnim="@anim/slide_out_left"
535             app:popEnterAnim="@anim/slide_in_left"
536             app:popExitAnim="@anim/slide_out_right" />
537         <action
538             android:id="@+id/action_settingsFragment_to_addonsFragment"
539             app:destination="@id/addonsManagementFragment"
540             app:enterAnim="@anim/slide_in_right"
541             app:exitAnim="@anim/slide_out_left"
542             app:popEnterAnim="@anim/slide_in_left"
543             app:popExitAnim="@anim/slide_out_right" />
544     </fragment>
545     <fragment
546         android:id="@+id/dataChoicesFragment"
547         android:name="org.mozilla.fenix.settings.DataChoicesFragment"
548         android:label="@string/preferences_data_choices" />
549     <fragment
550         android:id="@+id/sitePermissionsFragment"
551         android:name="org.mozilla.fenix.settings.sitepermissions.SitePermissionsFragment"
552         android:label="@string/preferences_site_permissions">
553         <action
554             android:id="@+id/action_site_permissions_to_manage_phone_features"
555             app:destination="@id/SitePermissionsManagePhoneFeature"
556             app:enterAnim="@anim/slide_in_right"
557             app:exitAnim="@anim/slide_out_left"
558             app:popEnterAnim="@anim/slide_in_left"
559             app:popExitAnim="@anim/slide_out_right"
560             app:popUpTo="@id/sitePermissionsFragment" />
561         <action
562             android:id="@+id/action_site_permissions_to_exceptions"
563             app:destination="@id/sitePermissionsExceptionsFragment"
564             app:enterAnim="@anim/slide_in_right"
565             app:exitAnim="@anim/slide_out_left"
566             app:popEnterAnim="@anim/slide_in_left"
567             app:popExitAnim="@anim/slide_out_right"
568             app:popUpTo="@id/sitePermissionsFragment" />
569     </fragment>
571     <fragment
572         android:id="@+id/accessibilityFragment"
573         android:name="org.mozilla.fenix.settings.AccessibilityFragment"
574         android:label="@string/preferences_accessibility" />
575     <fragment
576         android:id="@+id/accountSettingsFragment"
577         android:name="org.mozilla.fenix.settings.account.AccountSettingsFragment"
578         android:label="@string/preferences_account_settings">
579         <action
580             android:id="@+id/action_accountSettingsFragment_to_signOutFragment"
581             app:destination="@id/signOutFragment" />
582     </fragment>
583     <fragment
584         android:id="@+id/searchEngineFragment"
585         android:name="org.mozilla.fenix.settings.search.SearchEngineFragment"
586         android:label="@string/preferences_search">
587         <action
588             android:id="@+id/action_searchEngineFragment_to_addSearchEngineFragment"
589             app:destination="@+id/addSearchEngineFragment" />
590         <action
591             android:id="@+id/action_searchEngineFragment_to_editCustomSearchEngineFragment"
592             app:destination="@+id/editCustomSearchEngineFragment" />
593     </fragment>
595     <fragment
596         android:id="@+id/turnOnSyncFragment"
597         android:name="org.mozilla.fenix.settings.account.TurnOnSyncFragment"
598         android:label="@string/preferences_sync">
599         <argument
600             android:name="padSnackbar"
601             android:defaultValue="false"
602             app:argType="boolean" />
603         <action
604             android:id="@+id/action_turnOnSyncFragment_to_pairFragment"
605             app:destination="@id/pairFragment" />
606     </fragment>
608     <fragment
609         android:id="@+id/pairFragment"
610         android:name="org.mozilla.fenix.settings.PairFragment"
611         android:label="@string/preferences_sync" />
613     <fragment
614         android:id="@+id/aboutFragment"
615         android:name="org.mozilla.fenix.settings.about.AboutFragment" />
616     <fragment
617         android:id="@+id/secretSettingsPreference"
618         android:name="org.mozilla.fenix.settings.SecretSettingsFragment"
619         android:label="@string/preferences_debug_settings" />
620     <fragment
621         android:id="@+id/crashReporterFragment"
622         android:name="org.mozilla.fenix.crashes.CrashReporterFragment">
623         <argument
624             android:name="crashIntent"
625             app:argType="android.content.Intent" />
626     </fragment>
627     <fragment
628         android:id="@+id/customizationFragment"
629         android:name="org.mozilla.fenix.settings.CustomizationFragment"
630         android:label="@string/preferences_customize" />
631     <fragment
632         android:id="@+id/privateBrowsingFragment"
633         android:name="org.mozilla.fenix.settings.PrivateBrowsingFragment"
634         android:label="@string/preferences_private_browsing_options" />
635     <fragment
636         android:id="@+id/trackingProtectionFragment"
637         android:name="org.mozilla.fenix.settings.TrackingProtectionFragment">
638         <action
639             android:id="@+id/action_trackingProtectionFragment_to_exceptionsFragment"
640             app:destination="@id/trackingProtectionExceptionsFragment"
641             app:enterAnim="@anim/slide_in_right"
642             app:exitAnim="@anim/slide_out_left"
643             app:popEnterAnim="@anim/slide_in_left"
644             app:popExitAnim="@anim/slide_out_right" />
645         <action
646             android:id="@+id/action_trackingProtectionFragment_to_trackingProtectionBlockingFragment"
647             app:destination="@id/trackingProtectionBlockingFragment"
648             app:enterAnim="@anim/slide_in_right"
649             app:exitAnim="@anim/slide_out_left"
650             app:popEnterAnim="@anim/slide_in_left"
651             app:popExitAnim="@anim/slide_out_right" />
652     </fragment>
653     <fragment
654         android:id="@+id/deleteBrowsingDataFragment"
655         android:name="org.mozilla.fenix.settings.deletebrowsingdata.DeleteBrowsingDataFragment"
656         android:label="@string/preferences_delete_browsing_data" />
657     <fragment
658         android:id="@+id/trackingProtectionExceptionsFragment"
659         android:name="org.mozilla.fenix.trackingprotectionexceptions.TrackingProtectionExceptionsFragment"
660         android:label="@string/preference_exceptions" />
661     <dialog
662         android:id="@+id/collectionCreationFragment"
663         android:name="org.mozilla.fenix.collections.CollectionCreationFragment"
664         tools:layout="@layout/fragment_create_collection">
665         <argument
666             android:name="tabIds"
667             android:defaultValue="@null"
668             app:argType="string[]"
669             app:nullable="true" />
670         <argument
671             android:name="selectedTabIds"
672             android:defaultValue="@null"
673             app:argType="string[]"
674             app:nullable="true" />
675         <!-- nav_graph does not allow nullable Longs, so this defaults to -1 -->
676         <argument
677             android:name="selectedTabCollectionId"
678             android:defaultValue="-1L"
679             app:argType="long" />
680         <argument
681             android:name="saveCollectionStep"
682             app:argType="org.mozilla.fenix.collections.SaveCollectionStep"
683             app:nullable="false" />
684     </dialog>
686     <dialog
687         android:id="@+id/createShortcutFragment"
688         android:name="org.mozilla.fenix.shortcut.CreateShortcutFragment"
689         tools:layout="@layout/fragment_create_shortcut" />
690     <dialog
691         android:id="@+id/pwaOnboardingDialogFragment"
692         android:name="org.mozilla.fenix.shortcut.PwaOnboardingDialogFragment"
693         tools:layout="@layout/fragment_pwa_onboarding" />
695     <dialog
696         android:id="@+id/shareFragment"
697         android:name="org.mozilla.fenix.share.ShareFragment"
698         tools:layout="@layout/fragment_share">
699         <argument
700             android:name="data"
701             app:argType="mozilla.components.concept.engine.prompt.ShareData[]" />
702         <argument
703             android:name="showPage"
704             android:defaultValue="false"
705             app:argType="boolean" />
706         <action
707             android:id="@+id/action_shareFragment_to_addNewDeviceFragment"
708             app:destination="@id/addNewDeviceFragment" />
709         <argument
710             android:name="sessionId"
711             android:defaultValue="null"
712             app:argType="string"
713             app:nullable="true" />
714     </dialog>
715     <dialog
716         android:id="@+id/quickSettingsSheetDialogFragment"
717         android:name="org.mozilla.fenix.settings.quicksettings.QuickSettingsSheetDialogFragment">
718         <argument
719             android:name="sessionId"
720             app:argType="string" />
721         <argument
722             android:name="title"
723             app:argType="string" />
724         <argument
725             android:name="url"
726             app:argType="string" />
727         <argument
728             android:name="isSecured"
729             app:argType="boolean" />
730         <argument
731             android:name="sitePermissions"
732             app:argType="mozilla.components.feature.sitepermissions.SitePermissions"
733             app:nullable="true" />
734         <argument
735             android:name="gravity"
736             android:defaultValue="80"
737             app:argType="integer" />
738         <argument
739             android:name="certificateName"
740             android:defaultValue=" "
741             app:argType="string" />
742     </dialog>
743     <fragment
744         android:id="@+id/accountProblemFragment"
745         android:name="org.mozilla.fenix.settings.account.AccountProblemFragment">
746         <action
747             android:id="@+id/action_accountProblemFragment_to_signOutFragment"
748             app:destination="@id/signOutFragment" />
749     </fragment>
750     <dialog
751         android:id="@+id/signOutFragment"
752         android:name="org.mozilla.fenix.settings.account.SignOutFragment" />
753     <dialog
754         android:id="@+id/trackingProtectionPanelDialogFragment"
755         android:name="org.mozilla.fenix.trackingprotection.TrackingProtectionPanelDialogFragment">
756         <argument
757             android:name="sessionId"
758             app:argType="string" />
759         <argument
760             android:name="url"
761             app:argType="string" />
762         <argument
763             android:name="trackingProtectionEnabled"
764             app:argType="boolean" />
765         <argument
766             android:name="gravity"
767             android:defaultValue="80"
768             app:argType="integer" />
769     </dialog>
770     <fragment
771         android:id="@+id/trackingProtectionBlockingFragment"
772         android:name="org.mozilla.fenix.trackingprotection.TrackingProtectionBlockingFragment"
773         tools:layout="@layout/fragment_tracking_protection_blocking">
774         <argument
775             android:name="protectionMode"
776             app:argType="org.mozilla.fenix.trackingprotection.TrackingProtectionMode" />
777     </fragment>
778     <fragment
779         android:id="@+id/deleteBrowsingDataOnQuitFragment"
780         android:name="org.mozilla.fenix.settings.deletebrowsingdata.DeleteBrowsingDataOnQuitFragment" />
782     <fragment
783         android:id="@+id/addNewDeviceFragment"
784         android:name="org.mozilla.fenix.share.AddNewDeviceFragment" />
785     <fragment
786         android:id="@+id/addSearchEngineFragment"
787         android:name="org.mozilla.fenix.settings.search.AddSearchEngineFragment" />
788     <fragment
789         android:id="@+id/editCustomSearchEngineFragment"
790         android:name="org.mozilla.fenix.settings.search.EditCustomSearchEngineFragment">
791         <argument
792             android:name="searchEngineIdentifier"
793             app:argType="string" />
794     </fragment>
795     <fragment
796         android:id="@+id/localeSettingsFragment"
797         android:name="org.mozilla.fenix.settings.advanced.LocaleSettingsFragment" />
798     <fragment
799         android:id="@+id/saveLoginSettingFragment"
800         android:name="org.mozilla.fenix.settings.logins.fragment.SavedLoginsSettingFragment"
801         android:label="SaveLoginSettingFragment" />
802     <fragment
803         android:id="@+id/addonsManagementFragment"
804         android:name="org.mozilla.fenix.addons.AddonsManagementFragment">
805         <action
806             android:id="@+id/action_addonsManagementFragment_to_addonDetailsFragment"
807             app:destination="@id/addonDetailsFragment" />
808         <action
809             android:id="@+id/action_addonsManagementFragment_to_installedAddonDetails"
810             app:destination="@id/installedAddonDetailsFragment" />
811         <action
812             android:id="@+id/action_addonsManagementFragment_to_notYetSupportedAddonFragment"
813             app:destination="@id/notYetSupportedAddonFragment" />
814     </fragment>
815     <fragment
816         android:id="@+id/addonDetailsFragment"
817         android:name="org.mozilla.fenix.addons.AddonDetailsFragment">
818         <argument
819             android:name="addon"
820             app:argType="mozilla.components.feature.addons.Addon" />
821     </fragment>
822     <fragment
823         android:id="@+id/installedAddonDetailsFragment"
824         android:name="org.mozilla.fenix.addons.InstalledAddonDetailsFragment">
825         <action
826             android:id="@+id/action_installedAddonFragment_to_addonInternalSettingsFragment"
827             app:destination="@id/addonInternalSettingsFragment" />
828         <action
829             android:id="@+id/action_installedAddonFragment_to_addonDetailsFragment"
830             app:destination="@id/addonDetailsFragment" />
831         <action
832             android:id="@+id/action_installedAddonFragment_to_addonPermissionsDetailsFragment"
833             app:destination="@id/addonPermissionsDetailFragment" />
834         <argument
835             android:name="addon"
836             app:argType="mozilla.components.feature.addons.Addon" />
837     </fragment>
838     <fragment
839         android:id="@+id/notYetSupportedAddonFragment"
840         android:name="org.mozilla.fenix.addons.NotYetSupportedAddonFragment">
841         <argument
842             android:name="addons"
843             app:argType="mozilla.components.feature.addons.Addon[]" />
844     </fragment>
845     <fragment
846         android:id="@+id/addonInternalSettingsFragment"
847         android:name="org.mozilla.fenix.addons.AddonInternalSettingsFragment">
848         <argument
849             android:name="addon"
850             app:argType="mozilla.components.feature.addons.Addon" />
851     </fragment>
852     <fragment
853         android:id="@+id/addonPermissionsDetailFragment"
854         android:name="org.mozilla.fenix.addons.AddonPermissionsDetailsFragment">
855         <argument
856             android:name="addon"
857             app:argType="mozilla.components.feature.addons.Addon" />
858     </fragment>
859     <fragment
860         android:id="@+id/webExtensionActionPopupFragment"
861         android:name="org.mozilla.fenix.addons.WebExtensionActionPopupFragment">
862         <argument
863             android:name="webExtensionId"
864             app:argType="string" />
865         <argument
866             android:name="webExtensionTitle"
867             app:argType="string"
868             app:nullable="true" />
869     </fragment>
870     <dialog
871         android:id="@+id/tabHistoryDialogFragment"
872         android:name="org.mozilla.fenix.tabhistory.TabHistoryDialogFragment" />
873 </navigation>