13f471440a8b6b71d4c15501a96befd3b715c9e8fHyunyoung Song/* 23f471440a8b6b71d4c15501a96befd3b715c9e8fHyunyoung Song * Copyright (C) 2015 The Android Open Source Project 33f471440a8b6b71d4c15501a96befd3b715c9e8fHyunyoung Song * 43f471440a8b6b71d4c15501a96befd3b715c9e8fHyunyoung Song * Licensed under the Apache License, Version 2.0 (the "License"); 53f471440a8b6b71d4c15501a96befd3b715c9e8fHyunyoung Song * you may not use this file except in compliance with the License. 63f471440a8b6b71d4c15501a96befd3b715c9e8fHyunyoung Song * You may obtain a copy of the License at 73f471440a8b6b71d4c15501a96befd3b715c9e8fHyunyoung Song * 83f471440a8b6b71d4c15501a96befd3b715c9e8fHyunyoung Song * http://www.apache.org/licenses/LICENSE-2.0 93f471440a8b6b71d4c15501a96befd3b715c9e8fHyunyoung Song * 103f471440a8b6b71d4c15501a96befd3b715c9e8fHyunyoung Song * Unless required by applicable law or agreed to in writing, software 113f471440a8b6b71d4c15501a96befd3b715c9e8fHyunyoung Song * distributed under the License is distributed on an "AS IS" BASIS, 123f471440a8b6b71d4c15501a96befd3b715c9e8fHyunyoung Song * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 133f471440a8b6b71d4c15501a96befd3b715c9e8fHyunyoung Song * See the License for the specific language governing permissions and 143f471440a8b6b71d4c15501a96befd3b715c9e8fHyunyoung Song * limitations under the License. 153f471440a8b6b71d4c15501a96befd3b715c9e8fHyunyoung Song */ 163f471440a8b6b71d4c15501a96befd3b715c9e8fHyunyoung Songpackage com.android.launcher3.widget; 173f471440a8b6b71d4c15501a96befd3b715c9e8fHyunyoung Song 183f471440a8b6b71d4c15501a96befd3b715c9e8fHyunyoung Songimport android.appwidget.AppWidgetHostView; 1916466f1bbb935d56c01b10551ead416feb7fc943Sunny Goyalimport android.content.Context; 203f471440a8b6b71d4c15501a96befd3b715c9e8fHyunyoung Songimport android.os.Bundle; 213f471440a8b6b71d4c15501a96befd3b715c9e8fHyunyoung Songimport android.os.Parcelable; 223f471440a8b6b71d4c15501a96befd3b715c9e8fHyunyoung Song 232e6da1539bc7286336b3c24d96ab76434939ce4dAdam Cohenimport com.android.launcher3.Launcher; 243f471440a8b6b71d4c15501a96befd3b715c9e8fHyunyoung Songimport com.android.launcher3.LauncherAppWidgetProviderInfo; 253f471440a8b6b71d4c15501a96befd3b715c9e8fHyunyoung Songimport com.android.launcher3.LauncherSettings; 263f471440a8b6b71d4c15501a96befd3b715c9e8fHyunyoung Songimport com.android.launcher3.PendingAddItemInfo; 27ffd0ab4da1c163d167ec2891753264040d0ca03dHyunyoung Songimport com.android.launcher3.compat.AppWidgetManagerCompat; 283f471440a8b6b71d4c15501a96befd3b715c9e8fHyunyoung Song 293f471440a8b6b71d4c15501a96befd3b715c9e8fHyunyoung Song/** 303f471440a8b6b71d4c15501a96befd3b715c9e8fHyunyoung Song * Meta data used for late binding of {@link LauncherAppWidgetProviderInfo}. 313f471440a8b6b71d4c15501a96befd3b715c9e8fHyunyoung Song * 323f471440a8b6b71d4c15501a96befd3b715c9e8fHyunyoung Song * @see {@link PendingAddItemInfo} 333f471440a8b6b71d4c15501a96befd3b715c9e8fHyunyoung Song */ 343f471440a8b6b71d4c15501a96befd3b715c9e8fHyunyoung Songpublic class PendingAddWidgetInfo extends PendingAddItemInfo { 353f471440a8b6b71d4c15501a96befd3b715c9e8fHyunyoung Song public int previewImage; 363f471440a8b6b71d4c15501a96befd3b715c9e8fHyunyoung Song public int icon; 373f471440a8b6b71d4c15501a96befd3b715c9e8fHyunyoung Song public LauncherAppWidgetProviderInfo info; 383f471440a8b6b71d4c15501a96befd3b715c9e8fHyunyoung Song public AppWidgetHostView boundWidget; 393f471440a8b6b71d4c15501a96befd3b715c9e8fHyunyoung Song public Bundle bindOptions = null; 403f471440a8b6b71d4c15501a96befd3b715c9e8fHyunyoung Song 4116466f1bbb935d56c01b10551ead416feb7fc943Sunny Goyal public PendingAddWidgetInfo(Context context, LauncherAppWidgetProviderInfo i) { 423f471440a8b6b71d4c15501a96befd3b715c9e8fHyunyoung Song if (i.isCustomWidget) { 433f471440a8b6b71d4c15501a96befd3b715c9e8fHyunyoung Song itemType = LauncherSettings.Favorites.ITEM_TYPE_CUSTOM_APPWIDGET; 443f471440a8b6b71d4c15501a96befd3b715c9e8fHyunyoung Song } else { 453f471440a8b6b71d4c15501a96befd3b715c9e8fHyunyoung Song itemType = LauncherSettings.Favorites.ITEM_TYPE_APPWIDGET; 463f471440a8b6b71d4c15501a96befd3b715c9e8fHyunyoung Song } 473f471440a8b6b71d4c15501a96befd3b715c9e8fHyunyoung Song this.info = i; 4816466f1bbb935d56c01b10551ead416feb7fc943Sunny Goyal user = AppWidgetManagerCompat.getInstance(context).getUser(i); 493f471440a8b6b71d4c15501a96befd3b715c9e8fHyunyoung Song componentName = i.provider; 503f471440a8b6b71d4c15501a96befd3b715c9e8fHyunyoung Song previewImage = i.previewImage; 513f471440a8b6b71d4c15501a96befd3b715c9e8fHyunyoung Song icon = i.icon; 523f471440a8b6b71d4c15501a96befd3b715c9e8fHyunyoung Song 53233ee964a9ecf419a3e8330a67456d422879132dSunny Goyal spanX = i.spanX; 54233ee964a9ecf419a3e8330a67456d422879132dSunny Goyal spanY = i.spanY; 55233ee964a9ecf419a3e8330a67456d422879132dSunny Goyal minSpanX = i.minSpanX; 56233ee964a9ecf419a3e8330a67456d422879132dSunny Goyal minSpanY = i.minSpanY; 573f471440a8b6b71d4c15501a96befd3b715c9e8fHyunyoung Song } 583f471440a8b6b71d4c15501a96befd3b715c9e8fHyunyoung Song 593f471440a8b6b71d4c15501a96befd3b715c9e8fHyunyoung Song public boolean isCustomWidget() { 603f471440a8b6b71d4c15501a96befd3b715c9e8fHyunyoung Song return itemType == LauncherSettings.Favorites.ITEM_TYPE_CUSTOM_APPWIDGET; 613f471440a8b6b71d4c15501a96befd3b715c9e8fHyunyoung Song } 623f471440a8b6b71d4c15501a96befd3b715c9e8fHyunyoung Song} 63