2 * Copyright (C) 2016 The Android Open Source Project
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
8 * http://www.apache.org/licenses/LICENSE-2.0
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.
18 option java_package = "com.android.launcher3.userevent";
19 option java_outer_classname = "LauncherLogProto";
31 optional Type type = 1;
33 // For container type and item type
34 // Used mainly for ContainerType.FOLDER, ItemType.*
35 optional int32 page_index = 2;
36 optional int32 rank = 3;
37 optional int32 grid_x = 4;
38 optional int32 grid_y = 5;
40 // For container types only
41 optional ContainerType container_type = 6;
42 optional int32 cardinality = 7;
44 // For control types only
45 optional ControlType control_type = 8;
47 // For item types only
48 optional ItemType item_type = 9;
49 optional int32 package_name_hash = 10;
50 optional int32 component_hash = 11; // Used for ItemType.WIDGET
51 optional int32 intent_hash = 12; // Used for ItemType.SHORTCUT
52 optional int32 span_x = 13 [default = 1];// Used for ItemType.WIDGET
53 optional int32 span_y = 14 [default = 1];// Used for ItemType.WIDGET
54 optional int32 predictedRank = 15;
57 // Used to define what type of item a Target would represent.
70 // Used to define what type of container a Target would represent.
72 DEFAULT_CONTAINERTYPE = 0;
82 PINITEM = 10; // confirmation screen
85 // Used to define what type of control a Target would represent.
87 DEFAULT_CONTROLTYPE = 0;
97 HOME_INTENT = 10; // Deprecated, use enum Command instead
98 BACK_BUTTON = 11; // Deprecated, use enum Command instead
102 // Used to define the action component of the LauncherEvent.
108 // SOFT_KEYBOARD, HARD_KEYBOARD, ASSIST
128 ENTRY = 2; // Indicates entry to one of Launcher container type target
129 // not using the HOME_INTENT
130 CANCEL = 3; // Indicates that a confirmation screen was cancelled
131 CONFIRM = 4; // Indicates thata confirmation screen was accepted
133 optional Type type = 1;
134 optional Touch touch = 2;
135 optional Direction dir = 3;
136 optional Command command = 4;
137 // Log if the action was performed on outside of the container
138 optional bool is_outside = 5;
142 // Context free grammar of typical user interaction:
143 // Action (Touch) + Target
144 // Action (Touch) + Target + Target
146 message LauncherEvent {
148 required Action action = 1;
150 // List of targets that touch actions can be operated on.
151 repeated Target src_target = 2;
152 repeated Target dest_target = 3;
154 optional int64 action_duration_millis = 4;
155 optional int64 elapsed_container_millis = 5;
156 optional int64 elapsed_session_millis = 6;
158 optional bool is_in_multi_window_mode = 7;