diff --git a/atoms.proto b/atoms.proto
index 7f6e41c..60b2f34 100644
--- a/atoms.proto
+++ b/atoms.proto
@@ -22,6 +22,7 @@
 
 import "frameworks/base/cmds/statsd/src/atom_field_options.proto";
 import "frameworks/base/core/proto/android/app/enums.proto";
+import "frameworks/base/core/proto/android/app/settings_enums.proto";
 import "frameworks/base/core/proto/android/app/job/enums.proto";
 import "frameworks/base/core/proto/android/bluetooth/enums.proto";
 import "frameworks/base/core/proto/android/os/enums.proto";
@@ -1445,59 +1446,20 @@
  */
 message SettingsUIChanged {
     /**
-     * The action performed in this event
-     */
-    enum Action {
-        ACTION_UNKNOWN = 0;
-        PAGE_VISIBLE = 1;
-        PAGE_HIDE = 2;
-        PREF_CHANGE = 3;
-    }
-
-    /**
-     * Id for Settings pages. Each page must have its own unique Id.
-     */
-    enum PageId {
-      // Unknown page. Should not be used in production code.
-      PAGE_UNKNOWN = 0;
-
-      // OPEN: Settings homepage
-      SETTINGS_HOMEPAGE = 1502;
-
-      // OPEN: Settings > System > Input & Gesture > Wake screen
-      SETTINGS_GESTURE_WAKE_SCREEN = 1570;
-
-      // OPEN: Settings > Network & internet > Mobile network
-      MOBILE_NETWORK = 1571;
-
-      // OPEN: Settings > Network & internet > Mobile network > Choose network
-      MOBILE_NETWORK_SELECT = 1581;
-
-      // OPEN: Settings > Network & internet > Mobile network > Mobile Data > Dialog
-      MOBILE_DATA_DIALOG = 1582;
-
-      // OPEN: Settings > Network & internet > Mobile network > Data roaming > Dialog
-      MOBILE_ROAMING_DIALOG = 1583;
-
-      // Settings > Display > Lock screen display > On lock screen
-      LOCK_SCREEN_NOTIFICATION_CONTENT = 1584;
-    }
-
-    /**
      * Where this SettingsUIChange event comes from. For example, if
      * it's a PAGE_VISIBLE event, where the page is opened from.
      */
-    optional PageId attribution = 1;
+    optional android.app.settings.PageId attribution = 1;
 
     /**
      * What the UI action is.
      */
-    optional Action action = 2;
+    optional android.app.settings.Action action = 2;
 
     /**
      * Where the action is happening
      */
-    optional PageId pageId = 3;
+    optional android.app.settings.PageId pageId = 3;
 
     /**
      * What preference changed in this event.
