Fix issue that widgets with config activity jump
This also linked to the overlap we were seeing in bug 331816144 (as can be seen in before and after video) Bug: N/A Test: See videos Flag: aconfig launcher.enable_add_app_widget_via_config_activity_v2 NEXTFOOD Change-Id: I21717e0c4d4eab7efa1746e46d3218b8b3cee4ef
This commit is contained in:
@@ -46,6 +46,7 @@ import com.android.launcher3.util.PendingRequestArgs;
|
||||
import com.android.launcher3.views.ArrowTipView;
|
||||
import com.android.launcher3.widget.LauncherAppWidgetHostView;
|
||||
import com.android.launcher3.widget.LauncherAppWidgetProviderInfo;
|
||||
import com.android.launcher3.widget.PendingAppWidgetHostView;
|
||||
import com.android.launcher3.widget.util.WidgetSizes;
|
||||
|
||||
import java.util.ArrayList;
|
||||
@@ -474,8 +475,11 @@ public class AppWidgetResizeFrame extends AbstractFloatingView implements View.O
|
||||
mLastDirectionVector[1] = mDirectionVector[1];
|
||||
}
|
||||
|
||||
if (mCellLayout.createAreaForResize(cellX, cellY, spanX, spanY, mWidgetView,
|
||||
mDirectionVector, onDismiss)) {
|
||||
// We don't want to evaluate resize if a widget was pending config activity and was already
|
||||
// occupying a space on the screen. This otherwise will cause reorder algorithm evaluate a
|
||||
// different location for the widget and cause a jump.
|
||||
if (!(mWidgetView instanceof PendingAppWidgetHostView) && mCellLayout.createAreaForResize(
|
||||
cellX, cellY, spanX, spanY, mWidgetView, mDirectionVector, onDismiss)) {
|
||||
if (mStateAnnouncer != null && (lp.cellHSpan != spanX || lp.cellVSpan != spanY) ) {
|
||||
mStateAnnouncer.announce(
|
||||
mLauncher.getString(R.string.widget_resized, spanX, spanY));
|
||||
|
||||
Reference in New Issue
Block a user