1/*
2 * Copyright (C) 2023 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
17syntax = "proto2";
18
19package android.os.statsd.settings;
20
21import "frameworks/proto_logging/stats/atoms.proto";
22import "frameworks/proto_logging/stats/atom_field_options.proto";
23import "frameworks/proto_logging/stats/enums/app/settings_enums.proto";
24
25option java_package = "com.android.os.settings";
26option java_multiple_files = true;
27
28extend Atom {
29  optional SettingsSpaReported settings_spa_reported = 622 [(module) = "settings"];
30}
31
32
33/**
34 * Logs when Settings SPA UI has changed.
35 *
36 * Logged from:
37 *   packages/apps/Settings
38 */
39message SettingsSpaReported {
40  // Settings SPA session type.
41  optional android.app.settings.SessionType session_type = 1;
42
43  // The id value of SettingsPage.
44  optional string page_id = 2;
45
46  // The id value of target page.
47  optional string target = 3;
48
49  // What the UI action is.
50  optional android.app.settings.Action action = 4;
51
52  // The value of entry id
53  optional string key = 5;
54
55  // The value of any type (string, int, boolean etc),
56  // cast the value into string type.
57  optional string value = 6;
58
59  // Keeps the previous value while data changing.
60  optional string previous_value = 7;
61
62  // Data about elapsed time since setup wizard finished.
63  optional int64 elapsed_time_millis = 8;
64}