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

Commit 86fe9ea9 authored by Xiaowen Lei's avatar Xiaowen Lei Committed by Android (Google) Code Review
Browse files

Merge "Remove SmartSpaceComplication when the SmartspaceTargetListener is removed." into tm-qpr-dev

parents 38df5710 2a2a8e1b
Loading
Loading
Loading
Loading
+6 −0
Original line number Diff line number Diff line
@@ -101,6 +101,9 @@ public class DreamOverlayStateController implements
    public void addComplication(Complication complication) {
        mExecutor.execute(() -> {
            if (mComplications.add(complication)) {
                if (DEBUG) {
                    Log.d(TAG, "addComplication: added " + complication);
                }
                mCallbacks.stream().forEach(callback -> callback.onComplicationsChanged());
            }
        });
@@ -112,6 +115,9 @@ public class DreamOverlayStateController implements
    public void removeComplication(Complication complication) {
        mExecutor.execute(() -> {
            if (mComplications.remove(complication)) {
                if (DEBUG) {
                    Log.d(TAG, "removeComplication: removed " + complication);
                }
                mCallbacks.stream().forEach(callback -> callback.onComplicationsChanged());
            }
        });
+1 −0
Original line number Diff line number Diff line
@@ -82,6 +82,7 @@ public class SmartSpaceComplication implements Complication {
                        mSmartSpaceController.addListener(mSmartspaceListener);
                    } else {
                        mSmartSpaceController.removeListener(mSmartspaceListener);
                        mDreamOverlayStateController.removeComplication(mComplication);
                    }
                }
            });
+8 −1
Original line number Diff line number Diff line
@@ -21,6 +21,7 @@ import static com.android.systemui.dreams.complication.dagger.ComplicationModule

import android.graphics.Rect;
import android.graphics.Region;
import android.os.Debug;
import android.util.Log;
import android.view.View;

@@ -44,7 +45,8 @@ import javax.inject.Named;
 * a {@link ComplicationLayoutEngine}.
 */
public class ComplicationHostViewController extends ViewController<ConstraintLayout> {
    public static final String TAG = "ComplicationHostVwCtrl";
    private static final String TAG = "ComplicationHostVwCtrl";
    private static final boolean DEBUG = Log.isLoggable(TAG, Log.DEBUG);

    private final ComplicationLayoutEngine mLayoutEngine;
    private final LifecycleOwner mLifecycleOwner;
@@ -90,6 +92,11 @@ public class ComplicationHostViewController extends ViewController<ConstraintLay
    }

    private void updateComplications(Collection<ComplicationViewModel> complications) {
        if (DEBUG) {
            Log.d(TAG, "updateComplications called. Callers = " + Debug.getCallers(25));
            Log.d(TAG, "    mComplications = " + mComplications.toString());
            Log.d(TAG, "    complications = " + complications.toString());
        }
        final Collection<ComplicationId> ids = complications.stream()
                .map(complicationViewModel -> complicationViewModel.getId())
                .collect(Collectors.toSet());
+2 −2
Original line number Diff line number Diff line
@@ -54,7 +54,7 @@ import javax.inject.Named;
 */
@DreamOverlayComponent.DreamOverlayScope
public class ComplicationLayoutEngine implements Complication.VisibilityController {
    public static final String TAG = "ComplicationLayoutEngine";
    public static final String TAG = "ComplicationLayoutEng";

    /**
     * {@link ViewEntry} is an internal container, capturing information necessary for working with
@@ -529,7 +529,7 @@ public class ComplicationLayoutEngine implements Complication.VisibilityControll
     */
    public void addComplication(ComplicationId id, View view,
            ComplicationLayoutParams lp, @Complication.Category int category) {
        Log.d(TAG, "engine: " + this + " addComplication");
        Log.d(TAG, "@" + Integer.toHexString(this.hashCode()) + " addComplication: " + id);

        // If the complication is present, remove.
        if (mEntries.containsKey(id)) {
+5 −0
Original line number Diff line number Diff line
@@ -64,4 +64,9 @@ public class ComplicationViewModel extends ViewModel {
    public void exitDream() {
        mHost.requestExitDream();
    }

    @Override
    public String toString() {
        return mId + "=" + mComplication.toString();
    }
}
Loading