/* * 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"; option java_package = "com.android.launcher3.model"; option java_outer_classname = "LauncherDumpProto"; package model; message DumpTarget { enum Type { NONE = 0; ITEM = 1; CONTAINER = 2; } optional Type type = 1; optional int32 page_id = 2; optional int32 grid_x = 3; optional int32 grid_y = 4; // For container types only optional ContainerType container_type = 5; // For item types only optional ItemType item_type = 6; optional string package_name = 7; // All ItemTypes except UNKNOWN type optional string component = 8; // All ItemTypes except UNKNOWN type optional string item_id = 9; // For Pinned Shortcuts and appWidgetId optional int32 span_x = 10 [default = 1];// Used for ItemType.WIDGET optional int32 span_y = 11 [default = 1];// Used for ItemType.WIDGET optional UserType user_type = 12; } // Used to define what type of item a Target would represent. enum ItemType { UNKNOWN_ITEMTYPE = 0; // Launcher specific items APP_ICON = 1; // Regular app icons WIDGET = 2; // Elements from AppWidgetManager SHORTCUT = 3; // ShortcutManager } // Used to define what type of container a Target would represent. enum ContainerType { UNKNOWN_CONTAINERTYPE = 0; WORKSPACE = 1; HOTSEAT = 2; FOLDER = 3; } // Used to define what type of control a Target would represent. enum UserType { DEFAULT = 0; WORK = 1; } // Main message; message LauncherImpression { repeated DumpTarget targets = 1; }