Home | History | Annotate | Download | only in settings
      1 /*
      2  * Copyright (C) 2017 The Android Open Source Project
      3  *
      4  * Licensed under the Apache License, Version 2.0 (the "License");
      5  * you may not use this file except in compliance with the License.
      6  * You may obtain a copy of the License at
      7  *
      8  *      http://www.apache.org/licenses/LICENSE-2.0
      9  *
     10  * Unless required by applicable law or agreed to in writing, software
     11  * distributed under the License is distributed on an "AS IS" BASIS,
     12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     13  * See the License for the specific language governing permissions and
     14  * limitations under the License.
     15  */
     16 
     17 syntax = "proto2";
     18 package android.providers.settings;
     19 
     20 option java_multiple_files = true;
     21 
     22 import "frameworks/base/core/proto/android/providers/settings/common.proto";
     23 import "frameworks/base/libs/incident/proto/android/privacy.proto";
     24 
     25 // Note: it's a conscious decision to add each setting as a separate field. This
     26 // allows annotating each setting with its own privacy tag.
     27 message SecureSettingsProto {
     28     option (android.msg_privacy).dest = DEST_EXPLICIT;
     29 
     30     repeated SettingsOperationProto historical_operations = 1;
     31 
     32     message Accessibility {
     33         option (android.msg_privacy).dest = DEST_EXPLICIT;
     34 
     35         optional SettingProto enabled = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
     36         // List of the enabled accessibility providers.
     37         optional SettingProto enabled_accessibility_services = 2;
     38         optional SettingProto autoclick_enabled = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
     39         optional SettingProto autoclick_delay = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
     40         // Setting specifying the accessibility service or feature to be toggled via
     41         // the accessibility button in the navigation bar. This is either a
     42         // flattened ComponentName or the class name of a system class implementing
     43         // a supported accessibility feature.
     44         optional SettingProto button_target_component = 5 [ (android.privacy).dest = DEST_AUTOMATIC ];
     45         optional SettingProto captioning_enabled = 6 [ (android.privacy).dest = DEST_AUTOMATIC ];
     46         optional SettingProto captioning_locale = 7 [ (android.privacy).dest = DEST_AUTOMATIC ];
     47         optional SettingProto captioning_preset = 8 [ (android.privacy).dest = DEST_AUTOMATIC ];
     48         optional SettingProto captioning_background_color = 9 [ (android.privacy).dest = DEST_AUTOMATIC ];
     49         optional SettingProto captioning_foreground_color = 10 [ (android.privacy).dest = DEST_AUTOMATIC ];
     50         optional SettingProto captioning_edge_type = 11 [ (android.privacy).dest = DEST_AUTOMATIC ];
     51         optional SettingProto captioning_edge_color = 12 [ (android.privacy).dest = DEST_AUTOMATIC ];
     52         optional SettingProto captioning_window_color = 13 [ (android.privacy).dest = DEST_AUTOMATIC ];
     53         optional SettingProto captioning_typeface = 14 [ (android.privacy).dest = DEST_AUTOMATIC ];
     54         optional SettingProto captioning_font_scale = 15 [ (android.privacy).dest = DEST_AUTOMATIC ];
     55         optional SettingProto display_daltonizer_enabled = 16 [ (android.privacy).dest = DEST_AUTOMATIC ];
     56         // Integer property that specifies the type of color space adjustment to perform.
     57         optional SettingProto display_daltonizer = 17 [ (android.privacy).dest = DEST_AUTOMATIC ];
     58         optional SettingProto display_inversion_enabled = 18 [ (android.privacy).dest = DEST_AUTOMATIC ];
     59         optional SettingProto display_magnification_enabled = 19 [ (android.privacy).dest = DEST_AUTOMATIC ];
     60         optional SettingProto display_magnification_navbar_enabled = 20 [ (android.privacy).dest = DEST_AUTOMATIC ];
     61         optional SettingProto display_magnification_scale = 21 [ (android.privacy).dest = DEST_AUTOMATIC ];
     62         optional SettingProto high_text_contrast_enabled = 22 [ (android.privacy).dest = DEST_AUTOMATIC ];
     63         optional SettingProto large_pointer_icon = 23 [ (android.privacy).dest = DEST_AUTOMATIC ];
     64         optional SettingProto shortcut_enabled = 24 [ (android.privacy).dest = DEST_AUTOMATIC ];
     65         optional SettingProto shortcut_on_lock_screen = 25 [ (android.privacy).dest = DEST_AUTOMATIC ];
     66         optional SettingProto shortcut_dialog_shown = 26 [ (android.privacy).dest = DEST_AUTOMATIC ];
     67         optional SettingProto shortcut_target_service = 27 [ (android.privacy).dest = DEST_AUTOMATIC ];
     68         optional SettingProto soft_keyboard_mode = 28 [ (android.privacy).dest = DEST_AUTOMATIC ];
     69         // Whether to speak passwords while in accessibility mode.
     70         optional SettingProto speak_password = 29 [ (android.privacy).dest = DEST_AUTOMATIC ];
     71         optional SettingProto touch_exploration_enabled = 30 [ (android.privacy).dest = DEST_AUTOMATIC ];
     72         // List of the accessibility services to which the user has granted
     73         // permission to put the device into touch exploration mode.
     74         optional SettingProto touch_exploration_granted_accessibility_services = 31;
     75     }
     76     optional Accessibility accessibility = 2;
     77 
     78     // Origins for which browsers should allow geolocation by default.
     79     // The value is a space-separated list of origins.
     80     optional SettingProto allowed_geolocation_origins = 3;
     81 
     82     message AlwaysOnVpn {
     83         option (android.msg_privacy).dest = DEST_EXPLICIT;
     84 
     85         optional SettingProto app = 1;
     86         optional SettingProto lockdown = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
     87     }
     88     optional AlwaysOnVpn always_on_vpn = 4;
     89 
     90     optional SettingProto android_id = 5;
     91     optional SettingProto anr_show_background = 6 [ (android.privacy).dest = DEST_AUTOMATIC ];
     92 
     93     message Assist {
     94         option (android.msg_privacy).dest = DEST_EXPLICIT;
     95 
     96         // The current assistant component. It could be a voice interaction service,
     97         // or an activity that handles ACTION_ASSIST, or empty, which means using
     98         // the default handling.
     99         optional SettingProto assistant = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
    100         optional SettingProto structure_enabled = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
    101         optional SettingProto screenshot_enabled = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
    102         optional SettingProto disclosure_enabled = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
    103         optional SettingProto gesture_enabled = 5 [ (android.privacy).dest = DEST_AUTOMATIC ];
    104         optional SettingProto gesture_sensitivity = 6 [ (android.privacy).dest = DEST_AUTOMATIC ];
    105         optional SettingProto gesture_silence_alerts_enabled = 7 [ (android.privacy).dest = DEST_AUTOMATIC ];
    106         optional SettingProto gesture_wake_enabled = 8 [ (android.privacy).dest = DEST_AUTOMATIC ];
    107         optional SettingProto gesture_setup_complete = 9 [ (android.privacy).dest = DEST_AUTOMATIC ];
    108     }
    109     optional Assist assist = 7;
    110 
    111     message Autofill {
    112         option (android.msg_privacy).dest = DEST_EXPLICIT;
    113 
    114         // The currently selected autofill service flattened ComponentName.
    115         optional SettingProto service = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
    116         // Boolean indicating if Autofill supports field classification.
    117         optional SettingProto feature_field_classification = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
    118         optional SettingProto user_data_max_user_data_size = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
    119         optional SettingProto user_data_max_field_classification_ids_size = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
    120         optional SettingProto user_data_max_category_count = 5 [ (android.privacy).dest = DEST_AUTOMATIC ];
    121         optional SettingProto user_data_max_value_length = 6 [ (android.privacy).dest = DEST_AUTOMATIC ];
    122         optional SettingProto user_data_min_value_length = 7 [ (android.privacy).dest = DEST_AUTOMATIC ];
    123         // The query URI to find an auto fill service to install.
    124         optional SettingProto service_search_uri = 8 [ (android.privacy).dest = DEST_AUTOMATIC ];
    125     }
    126     optional Autofill autofill = 8;
    127 
    128     message AutomaticStorageManager {
    129         option (android.msg_privacy).dest = DEST_EXPLICIT;
    130 
    131         optional SettingProto enabled = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
    132         optional SettingProto days_to_retain = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
    133         optional SettingProto bytes_cleared = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
    134         optional SettingProto last_run = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
    135         optional SettingProto turned_off_by_policy = 5 [ (android.privacy).dest = DEST_AUTOMATIC ];
    136     }
    137     optional AutomaticStorageManager automatic_storage_manager = 9;
    138 
    139     message Backup {
    140         option (android.msg_privacy).dest = DEST_EXPLICIT;
    141 
    142         optional SettingProto enabled = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
    143         optional SettingProto auto_restore = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
    144         optional SettingProto provisioned = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
    145         optional SettingProto transport = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
    146         optional SettingProto manager_constants = 5;
    147         optional SettingProto local_transport_parameters = 6;
    148         optional SettingProto packages_to_clear_data_before_full_restore = 7;
    149     }
    150     optional Backup backup = 10;
    151 
    152     optional SettingProto bluetooth_on_while_driving = 11 [ (android.privacy).dest = DEST_AUTOMATIC ];
    153 
    154     message Camera {
    155         option (android.msg_privacy).dest = DEST_EXPLICIT;
    156 
    157         optional SettingProto gesture_disabled = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
    158         optional SettingProto double_tap_power_gesture_disabled = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
    159         optional SettingProto double_twist_to_flip_enabled = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
    160         optional SettingProto lift_trigger_enabled = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
    161     }
    162     optional Camera camera = 12;
    163 
    164     optional SettingProto carrier_apps_handled = 13 [ (android.privacy).dest = DEST_AUTOMATIC ];
    165     optional SettingProto cmas_additional_broadcast_pkg = 14 [ (android.privacy).dest = DEST_AUTOMATIC ];
    166     repeated SettingProto completed_categories = 15;
    167     optional SettingProto connectivity_release_pending_intent_delay_ms = 16 [ (android.privacy).dest = DEST_AUTOMATIC ];
    168     optional SettingProto device_paired = 17 [ (android.privacy).dest = DEST_AUTOMATIC ];
    169     optional SettingProto dialer_default_application = 18 [ (android.privacy).dest = DEST_AUTOMATIC ];
    170     optional SettingProto display_density_forced = 19 [ (android.privacy).dest = DEST_AUTOMATIC ];
    171     optional SettingProto double_tap_to_wake = 20 [ (android.privacy).dest = DEST_AUTOMATIC ];
    172 
    173     message Doze {
    174         option (android.msg_privacy).dest = DEST_EXPLICIT;
    175 
    176         optional SettingProto enabled = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
    177         optional SettingProto always_on = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
    178         optional SettingProto pulse_on_pick_up = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
    179         optional SettingProto pulse_on_long_press = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
    180         optional SettingProto pulse_on_double_tap = 5 [ (android.privacy).dest = DEST_AUTOMATIC ];
    181     }
    182     optional Doze doze = 21;
    183 
    184     optional SettingProto emergency_assistance_application = 22 [ (android.privacy).dest = DEST_AUTOMATIC ];
    185     optional SettingProto enhanced_voice_privacy_enabled = 23 [ (android.privacy).dest = DEST_AUTOMATIC ];
    186     optional SettingProto immersive_mode_confirmations = 24 [ (android.privacy).dest = DEST_AUTOMATIC ];
    187 
    188     message Incall {
    189         option (android.msg_privacy).dest = DEST_EXPLICIT;
    190 
    191         optional SettingProto power_button_behavior = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
    192         optional SettingProto back_button_behavior = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
    193     }
    194     optional Incall incall = 25;
    195 
    196     message InputMethods {
    197         option (android.msg_privacy).dest = DEST_EXPLICIT;
    198 
    199         optional SettingProto default_input_method = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
    200         optional SettingProto disabled_system_input_methods = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
    201         optional SettingProto enabled_input_methods = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
    202         optional SettingProto method_selector_visibility = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
    203         optional SettingProto subtype_history = 5 [ (android.privacy).dest = DEST_AUTOMATIC ];
    204         optional SettingProto selected_input_method_subtype = 6 [ (android.privacy).dest = DEST_AUTOMATIC ];
    205         optional SettingProto show_ime_with_hard_keyboard = 7 [ (android.privacy).dest = DEST_AUTOMATIC ];
    206     }
    207     optional InputMethods input_methods = 26;
    208 
    209     optional SettingProto install_non_market_apps = 27 [ (android.privacy).dest = DEST_AUTOMATIC ];
    210     optional SettingProto instant_apps_enabled = 28 [ (android.privacy).dest = DEST_AUTOMATIC ];
    211     // Uri of the slice that's presented on the keyguard. Defaults to a slice
    212     // with the date and next alarm.
    213     optional SettingProto keyguard_slice_uri = 29;
    214     optional SettingProto last_setup_shown = 30 [ (android.privacy).dest = DEST_AUTOMATIC ];
    215 
    216     message Launcher {
    217         option (android.msg_privacy).dest = DEST_EXPLICIT;
    218 
    219         optional SettingProto swipe_up_to_switch_apps_enabled = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
    220     }
    221     optional Launcher launcher = 70;
    222 
    223     message Location {
    224         option (android.msg_privacy).dest = DEST_EXPLICIT;
    225 
    226         // The degree of location access enabled by the user.
    227         optional SettingProto mode = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
    228         // The App or module that changes the location mode.
    229         optional SettingProto changer = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
    230     }
    231     optional Location location = 31;
    232 
    233     message LockScreen {
    234         option (android.msg_privacy).dest = DEST_EXPLICIT;
    235 
    236         optional SettingProto lock_after_timeout = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
    237         optional SettingProto allow_private_notifications = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
    238         optional SettingProto allow_remote_input = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
    239         optional SettingProto show_notifications = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
    240     }
    241     optional LockScreen lock_screen = 32;
    242 
    243     // Whether lock-to-app will lock the keyguard when exiting.
    244     optional SettingProto lock_to_app_exit_locked = 33 [ (android.privacy).dest = DEST_AUTOMATIC ];
    245     optional SettingProto lockdown_in_power_menu = 34 [ (android.privacy).dest = DEST_AUTOMATIC ];
    246     optional SettingProto long_press_timeout = 35 [ (android.privacy).dest = DEST_AUTOMATIC ];
    247 
    248     message ManagedProfile {
    249         option (android.msg_privacy).dest = DEST_EXPLICIT;
    250 
    251         optional SettingProto contact_remote_search = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
    252     }
    253     optional ManagedProfile managed_profile = 36;
    254 
    255     message Mount {
    256         option (android.msg_privacy).dest = DEST_EXPLICIT;
    257 
    258         // Whether or not alert sounds are played on StorageManagerService events.
    259         optional SettingProto play_notification_snd = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
    260         optional SettingProto ums_autostart = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
    261         optional SettingProto ums_prompt = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
    262         optional SettingProto ums_notify_enabled = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
    263     }
    264     optional Mount mount = 37;
    265 
    266     optional SettingProto multi_press_timeout = 38 [ (android.privacy).dest = DEST_AUTOMATIC ];
    267 
    268     message NfcPayment {
    269         option (android.msg_privacy).dest = DEST_EXPLICIT;
    270 
    271         optional SettingProto default_component = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
    272         // Whether NFC payment is handled by the foreground application or a default.
    273         optional SettingProto foreground = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
    274         // The query URI to find an NFC service to install.
    275         optional SettingProto payment_service_search_uri = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
    276     }
    277     optional NfcPayment nfc_payment = 39;
    278 
    279     message NightDisplay {
    280         option (android.msg_privacy).dest = DEST_EXPLICIT;
    281 
    282         optional SettingProto activated = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
    283         optional SettingProto auto_mode = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
    284         optional SettingProto color_temperature = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
    285         optional SettingProto custom_start_time = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
    286         optional SettingProto custom_end_time = 5 [ (android.privacy).dest = DEST_AUTOMATIC ];
    287         optional SettingProto last_activated_time = 6 [ (android.privacy).dest = DEST_AUTOMATIC ];
    288     }
    289     optional NightDisplay night_display = 40;
    290 
    291     message Notification {
    292         option (android.msg_privacy).dest = DEST_EXPLICIT;
    293 
    294         // Read only list of the service components that the current user has
    295         // explicitly allowed to see and assist with all of the user's
    296         // notifications.
    297         // "enabled_notification_assistant" in code.
    298         optional SettingProto enabled_assistant = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
    299         optional SettingProto enabled_listeners = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
    300         optional SettingProto enabled_policy_access_packages = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
    301         optional SettingProto badging = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
    302         optional SettingProto show_note_about_notification_hiding = 5 [ (android.privacy).dest = DEST_AUTOMATIC ];
    303     }
    304     optional Notification notification = 41;
    305 
    306     message PackageVerifier {
    307         option (android.msg_privacy).dest = DEST_EXPLICIT;
    308 
    309         optional SettingProto user_consent = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
    310         optional SettingProto state = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
    311     }
    312     optional PackageVerifier package_verifier = 42;
    313 
    314     message ParentalControl {
    315         option (android.msg_privacy).dest = DEST_EXPLICIT;
    316 
    317         optional SettingProto enabled = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
    318         optional SettingProto last_update = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
    319         optional SettingProto redirect_url = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
    320     }
    321     optional ParentalControl parental_control = 43;
    322 
    323     message PrintService {
    324         option (android.msg_privacy).dest = DEST_EXPLICIT;
    325 
    326         // The query URI to find a print service to install.
    327         optional SettingProto search_uri = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
    328         optional SettingProto disabled_print_services = 2;
    329         optional SettingProto enabled_print_services = 3;
    330     }
    331     optional PrintService print_service = 44;
    332 
    333     message QuickSettings {
    334         option (android.msg_privacy).dest = DEST_EXPLICIT;
    335 
    336         // Holds comma-separated list of ordering of QuickSettings tiles.
    337         optional SettingProto tiles = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
    338         optional SettingProto auto_added_tiles = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
    339     }
    340     optional QuickSettings qs = 45;
    341 
    342     message Rotation {
    343         option (android.msg_privacy).dest = DEST_EXPLICIT;
    344 
    345         optional SettingProto show_rotation_suggestions = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
    346         optional SettingProto num_rotation_suggestions_accepted = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
    347     }
    348     optional Rotation rotation = 46;
    349 
    350     // User-selected RTT mode. When on, outgoing and incoming calls will be
    351     // answered as RTT calls when supported by the device and carrier. Boolean
    352     // value.
    353     optional SettingProto rtt_calling_mode = 69 [ (android.privacy).dest = DEST_AUTOMATIC ];
    354 
    355     message Screensaver {
    356         option (android.msg_privacy).dest = DEST_EXPLICIT;
    357 
    358         optional SettingProto enabled = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
    359         optional SettingProto components = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
    360         optional SettingProto activate_on_dock = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
    361         optional SettingProto activate_on_sleep = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
    362         optional SettingProto default_component = 5 [ (android.privacy).dest = DEST_AUTOMATIC ];
    363     }
    364     optional Screensaver screensaver = 47;
    365 
    366     message Search {
    367         option (android.msg_privacy).dest = DEST_EXPLICIT;
    368 
    369         optional SettingProto global_search_activity = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
    370         optional SettingProto num_promoted_sources = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
    371         optional SettingProto max_results_to_display = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
    372         optional SettingProto max_results_per_source = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
    373         optional SettingProto web_results_override_limit = 5 [ (android.privacy).dest = DEST_AUTOMATIC ];
    374         optional SettingProto promoted_source_deadline_millis = 6 [ (android.privacy).dest = DEST_AUTOMATIC ];
    375         optional SettingProto source_timeout_millis = 7 [ (android.privacy).dest = DEST_AUTOMATIC ];
    376         optional SettingProto prefill_millis = 8 [ (android.privacy).dest = DEST_AUTOMATIC ];
    377         optional SettingProto max_stat_age_millis = 9 [ (android.privacy).dest = DEST_AUTOMATIC ];
    378         optional SettingProto max_source_event_age_millis = 10 [ (android.privacy).dest = DEST_AUTOMATIC ];
    379         optional SettingProto min_impressions_for_source_ranking = 11 [ (android.privacy).dest = DEST_AUTOMATIC ];
    380         optional SettingProto min_clicks_for_source_ranking = 12 [ (android.privacy).dest = DEST_AUTOMATIC ];
    381         optional SettingProto max_shortcuts_returned = 13 [ (android.privacy).dest = DEST_AUTOMATIC ];
    382         optional SettingProto query_thread_core_pool_size = 14 [ (android.privacy).dest = DEST_AUTOMATIC ];
    383         optional SettingProto query_thread_max_pool_size = 15 [ (android.privacy).dest = DEST_AUTOMATIC ];
    384         optional SettingProto shortcut_refresh_core_pool_size = 16 [ (android.privacy).dest = DEST_AUTOMATIC ];
    385         optional SettingProto shortcut_refresh_max_pool_size = 17 [ (android.privacy).dest = DEST_AUTOMATIC ];
    386         optional SettingProto thread_keepalive_seconds = 18 [ (android.privacy).dest = DEST_AUTOMATIC ];
    387         optional SettingProto per_source_concurrent_query_limit = 19 [ (android.privacy).dest = DEST_AUTOMATIC ];
    388     }
    389     optional Search search = 48;
    390 
    391     message SpellChecker {
    392         option (android.msg_privacy).dest = DEST_EXPLICIT;
    393 
    394         optional SettingProto enabled = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
    395         // "selected_spell_checker" in code.
    396         optional SettingProto selected = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
    397         // "selected_spell_checker_subtype" in code.
    398         optional SettingProto selected_subtype = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
    399     }
    400     optional SpellChecker spell_checker = 49;
    401 
    402     optional SettingProto settings_classname = 50 [ (android.privacy).dest = DEST_AUTOMATIC ];
    403     optional SettingProto show_first_crash_dialog_dev_option = 51 [ (android.privacy).dest = DEST_AUTOMATIC ];
    404     optional SettingProto skip_first_use_hints = 52 [ (android.privacy).dest = DEST_AUTOMATIC ];
    405     optional SettingProto sleep_timeout = 53 [ (android.privacy).dest = DEST_AUTOMATIC ];
    406     optional SettingProto sms_default_application = 54 [ (android.privacy).dest = DEST_AUTOMATIC ];
    407     // Defines whether managed profile ringtones should be synced from its
    408     // parent profile.
    409     optional SettingProto sync_parent_sounds = 55 [ (android.privacy).dest = DEST_AUTOMATIC ];
    410     optional SettingProto system_navigation_keys_enabled = 56 [ (android.privacy).dest = DEST_AUTOMATIC ];
    411     optional SettingProto trust_agents_initialized = 57 [ (android.privacy).dest = DEST_AUTOMATIC ];
    412 
    413     message Tts {
    414         option (android.msg_privacy).dest = DEST_EXPLICIT;
    415 
    416         optional SettingProto default_rate = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
    417         optional SettingProto default_pitch = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
    418         optional SettingProto default_synth = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
    419         optional SettingProto default_locale = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
    420         optional SettingProto enabled_plugins = 5;
    421     }
    422     optional Tts tts = 58;
    423 
    424     message Tty {
    425         option (android.msg_privacy).dest = DEST_EXPLICIT;
    426 
    427         optional SettingProto tty_mode_enabled = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
    428         // The preferred TTY mode:
    429         // 0 = TTy Off, CDMA default
    430         // 1 = TTY Full
    431         // 2 = TTY HCO
    432         // 3 = TTY VCO
    433         optional SettingProto preferred_tty_mode = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
    434     }
    435     optional Tty tty = 59;
    436 
    437     message Tv {
    438         option (android.msg_privacy).dest = DEST_EXPLICIT;
    439 
    440         // Whether the current user has been set up via setup wizard (0 = false,
    441         // 1 = true). This value differs from USER_SETUP_COMPLETE in that it can be
    442         // reset back to 0 in case SetupWizard has been re-enabled on TV devices.
    443         optional SettingProto user_setup_complete = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
    444         optional SettingProto input_hidden_inputs = 2;
    445         optional SettingProto input_custom_labels = 3;
    446     }
    447     optional Tv tv = 60;
    448 
    449     optional SettingProto ui_night_mode = 61 [ (android.privacy).dest = DEST_AUTOMATIC ];
    450     optional SettingProto unknown_sources_default_reversed = 62 [ (android.privacy).dest = DEST_AUTOMATIC ];
    451     optional SettingProto usb_audio_automatic_routing_disabled = 63 [ (android.privacy).dest = DEST_AUTOMATIC ];
    452     // Whether the current user has been set up via setup wizard (0 = false, 1 = true)
    453     optional SettingProto user_setup_complete = 64 [ (android.privacy).dest = DEST_AUTOMATIC ];
    454 
    455     message Voice {
    456         option (android.msg_privacy).dest = DEST_EXPLICIT;
    457 
    458         // The currently selected voice interaction service flattened ComponentName.
    459         optional SettingProto interaction_service = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
    460         // The ComponentName string of the service to be used as the voice
    461         // recognition service.
    462         optional SettingProto recognition_service = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
    463     }
    464     optional Voice voice = 65;
    465 
    466     message Volume {
    467         option (android.msg_privacy).dest = DEST_EXPLICIT;
    468 
    469         // What behavior should be invoked when the volume hush gesture is triggered
    470         // One of VOLUME_HUSH_OFF, VOLUME_HUSH_VIBRATE, VOLUME_HUSH_MUTE.
    471         optional SettingProto hush_gesture = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
    472         // Persisted playback time after a user confirmation of an unsafe volume level.
    473         optional SettingProto unsafe_volume_music_active_ms = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
    474     }
    475     optional Volume volume = 66;
    476 
    477     message Vr {
    478         option (android.msg_privacy).dest = DEST_EXPLICIT;
    479 
    480         optional SettingProto display_mode = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
    481         optional SettingProto enabled_listeners = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
    482     }
    483     optional Vr vr = 67;
    484 
    485     optional SettingProto wake_gesture_enabled = 68 [ (android.privacy).dest = DEST_AUTOMATIC ];
    486 
    487     // Please insert fields in alphabetical order and group them into messages
    488     // if possible (to avoid reaching the method limit).
    489     // Next tag = 71;
    490 }
    491