blob: 41a74982585df16499afec1db4df74f9937293d8 [file] [log] [blame]
/*
* Copyright (C) 2017 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
syntax = "proto2";
package android.providers.settings;
option java_multiple_files = true;
import "frameworks/base/core/proto/android/providers/settings/common.proto";
import "frameworks/base/libs/incident/proto/android/privacy.proto";
// Note: it's a conscious decision to add each setting as a separate field. This
// allows annotating each setting with its own privacy tag.
message SystemSettingsProto {
option (android.msg_privacy).dest = DEST_EXPLICIT;
repeated SettingsOperationProto historical_operations = 1;
optional SettingProto advanced_settings = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
message Alarm {
option (android.msg_privacy).dest = DEST_EXPLICIT;
// "alarm_alert" in code.
optional SettingProto default_uri = 1;
optional SettingProto alert_cache = 2;
}
optional Alarm alarm = 3;
message Bluetooth {
option (android.msg_privacy).dest = DEST_EXPLICIT;
// Whether remote devices may discover and/or connect to this device:
// 2 -- discoverable and connectable
// 1 -- connectable but not discoverable
// 0 -- neither connectable nor discoverable
optional SettingProto discoverability = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
optional SettingProto discoverability_timeout_secs = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
}
optional Bluetooth bluetooth = 4;
optional SettingProto date_format = 5 [ (android.privacy).dest = DEST_AUTOMATIC ];
optional SettingProto display_color_mode = 6 [ (android.privacy).dest = DEST_AUTOMATIC ];
message DevOptions {
option (android.msg_privacy).dest = DEST_EXPLICIT;
// Show pointer location on screen? 0 = no, 1 = yes. "pointer_location
// in code.
optional SettingProto pointer_location = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
optional SettingProto show_touches = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
// Log raw orientation data from {@link
// com.android.server.policy.WindowOrientationListener} for use with the
// orientationplot.py tool.
// 0 = no, 1 = yes
optional SettingProto window_orientation_listener_log = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
}
optional DevOptions developer_options = 7;
message DtmfTone {
option (android.msg_privacy).dest = DEST_EXPLICIT;
// "dtmf_tone_when_dialing" in code.
optional SettingProto play_when_dialing = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
// "dtmf_tone_type_when_dialing" in code.
optional SettingProto type_played_when_dialing = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
}
optional DtmfTone dtmf_tone = 8;
optional SettingProto egg_mode = 9 [ (android.privacy).dest = DEST_AUTOMATIC ];
optional SettingProto end_button_behavior = 10 [ (android.privacy).dest = DEST_AUTOMATIC ];
optional SettingProto font_scale = 11 [ (android.privacy).dest = DEST_AUTOMATIC ];
message HapticFeedback {
option (android.msg_privacy).dest = DEST_EXPLICIT;
optional SettingProto enabled = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
optional SettingProto intensity = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
}
optional HapticFeedback haptic_feedback = 12;
// Whether the hearing aid is enabled. The value is boolean (1 or 0).
optional SettingProto hearing_aid = 13 [ (android.privacy).dest = DEST_AUTOMATIC ];
optional SettingProto lock_to_app_enabled = 14 [ (android.privacy).dest = DEST_AUTOMATIC ];
message Lockscreen {
option (android.msg_privacy).dest = DEST_EXPLICIT;
optional SettingProto sounds_enabled = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
optional SettingProto disabled = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
}
optional Lockscreen lockscreen = 15;
// The system default media button event receiver.
optional SettingProto media_button_receiver = 16;
message Notification {
option (android.msg_privacy).dest = DEST_EXPLICIT;
optional SettingProto sound = 1;
optional SettingProto sound_cache = 2;
optional SettingProto light_pulse = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
optional SettingProto vibration_intensity = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
}
optional Notification notification = 17;
optional SettingProto pointer_speed = 18 [ (android.privacy).dest = DEST_AUTOMATIC ];
message Ringtone {
option (android.msg_privacy).dest = DEST_EXPLICIT;
// "ringtone" in code. The system-wide default ringtone URI.
optional SettingProto default_uri = 1;
optional SettingProto cache = 2;
}
optional Ringtone ringtone = 19;
message Rotation {
option (android.msg_privacy).dest = DEST_EXPLICIT;
// Control whether the accelerometer will be used to change screen
// orientation. If 0, it will not be used unless explicitly requested
// by the application; if 1, it will be used by default unless
// explicitly disabled by the application.
optional SettingProto accelerometer_rotation = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
// Default screen rotation when no other policy applies.
// When accelerometer_rotation is zero and no on-screen Activity expresses a
// preference, this rotation value will be used. Must be one of the
// {@link android.view.Surface#ROTATION_0 Surface rotation constants}.
optional SettingProto user_rotation = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
// Control whether the rotation lock toggle in the System UI should be hidden.
// Typically this is done for accessibility purposes to make it harder for
// the user to accidentally toggle the rotation lock while the display rotation
// has been locked for accessibility.
// If 0, then rotation lock toggle is not hidden for accessibility (although it may be
// unavailable for other reasons). If 1, then the rotation lock toggle is hidden.
optional SettingProto hide_rotation_lock_toggle_for_accessibility = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
}
optional Rotation rotation = 20;
reserved 21; // rtt_calling_mode moved to Settings.Secure
message Screen {
option (android.msg_privacy).dest = DEST_EXPLICIT;
optional SettingProto off_timeout = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
optional SettingProto brightness = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
optional SettingProto brightness_for_vr = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
optional SettingProto brightness_mode = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
optional SettingProto auto_brightness_adj = 5 [ (android.privacy).dest = DEST_AUTOMATIC ];
}
optional Screen screen = 22;
optional SettingProto setup_wizard_has_run = 23 [ (android.privacy).dest = DEST_AUTOMATIC ];
optional SettingProto show_battery_percent = 24 [ (android.privacy).dest = DEST_AUTOMATIC ];
optional SettingProto show_gtalk_service_status = 25 [ (android.privacy).dest = DEST_AUTOMATIC ];
message Sip {
option (android.msg_privacy).dest = DEST_EXPLICIT;
optional SettingProto receive_calls = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
optional SettingProto call_options = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
optional SettingProto always = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
optional SettingProto address_only = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
}
optional Sip sip = 26;
optional SettingProto sound_effects_enabled = 27 [ (android.privacy).dest = DEST_AUTOMATIC ];
optional SettingProto system_locales = 28 [ (android.privacy).dest = DEST_AUTOMATIC ];
message Text {
option (android.msg_privacy).dest = DEST_EXPLICIT;
optional SettingProto auto_replace = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
optional SettingProto auto_caps = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
optional SettingProto auto_punctuate = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
optional SettingProto show_password = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
}
optional Text text = 29;
optional SettingProto time_12_24 = 30 [ (android.privacy).dest = DEST_AUTOMATIC ];
optional SettingProto tty_mode = 31 [ (android.privacy).dest = DEST_AUTOMATIC ];
message Vibrate {
option (android.msg_privacy).dest = DEST_EXPLICIT;
optional SettingProto on = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
optional SettingProto input_devices = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
// Whether silent mode should allow vibration feedback. This is used
// internally in AudioService and the Sound settings activity to coordinate
// decoupling of vibrate and silent modes. This setting will likely be
// removed in a future release with support for audio/vibe feedback
// profiles.
// Not used anymore. On devices with vibrator, the user explicitly selects
// silent or vibrate mode. Kept for use by legacy database upgrade code in
// DatabaseHelper.
optional SettingProto in_silent = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
optional SettingProto when_ringing = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
}
optional Vibrate vibrate = 32;
message Volume {
option (android.msg_privacy).dest = DEST_EXPLICIT;
optional SettingProto ring = 1 [ (android.privacy).dest = DEST_AUTOMATIC ];
optional SettingProto system = 2 [ (android.privacy).dest = DEST_AUTOMATIC ];
optional SettingProto voice = 3 [ (android.privacy).dest = DEST_AUTOMATIC ];
optional SettingProto music = 4 [ (android.privacy).dest = DEST_AUTOMATIC ];
optional SettingProto alarm = 5 [ (android.privacy).dest = DEST_AUTOMATIC ];
optional SettingProto notification = 6 [ (android.privacy).dest = DEST_AUTOMATIC ];
optional SettingProto bluetooth_sco = 7 [ (android.privacy).dest = DEST_AUTOMATIC ];
optional SettingProto accessibility = 8 [ (android.privacy).dest = DEST_AUTOMATIC ];
optional SettingProto master = 9 [ (android.privacy).dest = DEST_AUTOMATIC ];
optional SettingProto master_mono = 10 [ (android.privacy).dest = DEST_AUTOMATIC ];
// Determines which streams are affected by ringer mode changes. The stream
// type's bit will be set to 1 if it should be muted when going into an
// inaudible ringer mode.
optional SettingProto mode_ringer_streams_affected = 11 [ (android.privacy).dest = DEST_AUTOMATIC ];
// Which streams are affected by mute. The stream type's bit should be set
// to 1 if it should be muted when a mute request is received.
optional SettingProto mute_streams_affected = 12 [ (android.privacy).dest = DEST_AUTOMATIC ];
// Master balance (float -1.f = 100% left, 0.f = dead center, 1.f = 100% right).
optional SettingProto master_balance = 13 [ (android.privacy).dest = DEST_AUTOMATIC ];
}
optional Volume volume = 33;
optional SettingProto when_to_make_wifi_calls = 34 [ (android.privacy).dest = DEST_AUTOMATIC ];
// Please insert fields in alphabetical order and group them into messages
// if possible (to avoid reaching the method limit).
// Next tag = 35;
}