Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 970d4b46 authored by Sunny Goyal's avatar Sunny Goyal
Browse files

Fixing dimensions for AppWidgetProviderInfo not getting updated properly

for PinItemRequest

Test: Manually tested on device
Change-Id: I7bbf7e93e052ef25c2a4a98ff0795ef500f68cc0
parent a0ad7385
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -9849,7 +9849,7 @@ package android.content.pm {
    method public boolean accept(android.os.Bundle);
    method public boolean accept();
    method public int describeContents();
    method public android.appwidget.AppWidgetProviderInfo getAppWidgetProviderInfo();
    method public android.appwidget.AppWidgetProviderInfo getAppWidgetProviderInfo(android.content.Context);
    method public int getRequestType();
    method public android.content.pm.ShortcutInfo getShortcutInfo();
    method public boolean isValid();
+1 −1
Original line number Diff line number Diff line
@@ -10277,7 +10277,7 @@ package android.content.pm {
    method public boolean accept(android.os.Bundle);
    method public boolean accept();
    method public int describeContents();
    method public android.appwidget.AppWidgetProviderInfo getAppWidgetProviderInfo();
    method public android.appwidget.AppWidgetProviderInfo getAppWidgetProviderInfo(android.content.Context);
    method public int getRequestType();
    method public android.content.pm.ShortcutInfo getShortcutInfo();
    method public boolean isValid();
+1 −1
Original line number Diff line number Diff line
@@ -9877,7 +9877,7 @@ package android.content.pm {
    method public boolean accept(android.os.Bundle);
    method public boolean accept();
    method public int describeContents();
    method public android.appwidget.AppWidgetProviderInfo getAppWidgetProviderInfo();
    method public android.appwidget.AppWidgetProviderInfo getAppWidgetProviderInfo(android.content.Context);
    method public int getRequestType();
    method public android.content.pm.ShortcutInfo getShortcutInfo();
    method public boolean isValid();
+1 −10
Original line number Diff line number Diff line
@@ -36,7 +36,6 @@ import android.os.RemoteException;
import android.os.ServiceManager;
import android.util.DisplayMetrics;
import android.util.SparseArray;
import android.util.TypedValue;
import android.widget.RemoteViews;
import android.widget.RemoteViews.OnClickHandler;

@@ -381,15 +380,7 @@ public class AppWidgetHost {
        // Convert complex to dp -- we are getting the AppWidgetProviderInfo from the
        // AppWidgetService, which doesn't have our context, hence we need to do the
        // conversion here.
        appWidget.minWidth =
            TypedValue.complexToDimensionPixelSize(appWidget.minWidth, mDisplayMetrics);
        appWidget.minHeight =
            TypedValue.complexToDimensionPixelSize(appWidget.minHeight, mDisplayMetrics);
        appWidget.minResizeWidth =
            TypedValue.complexToDimensionPixelSize(appWidget.minResizeWidth, mDisplayMetrics);
        appWidget.minResizeHeight =
            TypedValue.complexToDimensionPixelSize(appWidget.minResizeHeight, mDisplayMetrics);

        appWidget.updateDimensions(mDisplayMetrics);
        synchronized (mViews) {
            v = mViews.get(appWidgetId);
        }
+2 −15
Original line number Diff line number Diff line
@@ -31,7 +31,6 @@ import android.os.Process;
import android.os.RemoteException;
import android.os.UserHandle;
import android.util.DisplayMetrics;
import android.util.TypedValue;
import android.widget.RemoteViews;

import com.android.internal.appwidget.IAppWidgetService;
@@ -760,7 +759,7 @@ public class AppWidgetManager {
            }
            for (AppWidgetProviderInfo info : providers.getList()) {
                // Converting complex to dp.
                convertSizesToPixels(info);
                info.updateDimensions(mDisplayMetrics);
            }
            return providers.getList();
        } catch (RemoteException e) {
@@ -782,7 +781,7 @@ public class AppWidgetManager {
            AppWidgetProviderInfo info = mService.getAppWidgetInfo(mPackageName, appWidgetId);
            if (info != null) {
                // Converting complex to dp.
                convertSizesToPixels(info);
                info.updateDimensions(mDisplayMetrics);
            }
            return info;
        } catch (RemoteException e) {
@@ -1072,18 +1071,6 @@ public class AppWidgetManager {
        }
    }

    private void convertSizesToPixels(AppWidgetProviderInfo info) {
        // Converting complex to dp.
        info.minWidth = TypedValue.complexToDimensionPixelSize(info.minWidth,
                mDisplayMetrics);
        info.minHeight = TypedValue.complexToDimensionPixelSize(info.minHeight,
                mDisplayMetrics);
        info.minResizeWidth = TypedValue.complexToDimensionPixelSize(info.minResizeWidth,
                mDisplayMetrics);
        info.minResizeHeight = TypedValue.complexToDimensionPixelSize(info.minResizeHeight,
                mDisplayMetrics);
    }

    /**
     * Request to pin an app widget on the current launcher. It's up to the launcher to accept this
     * request (optionally showing a user confirmation). If the request is accepted, the caller will
Loading