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

Commit 0e22f152 authored by Android Build Coastguard Worker's avatar Android Build Coastguard Worker
Browse files

Snap for 10082168 from e34ee304 to udc-release

Change-Id: Ic6069a22fb6a7fee45f775bb7f8b6c95b4b76019
parents 903fba02 e34ee304
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
@@ -270,6 +270,14 @@ std::list<NotifyArgs> TouchpadInputMapper::reconfigure(nsecs_t when,
        accelCurveProp.setRealValues(
                createAccelerationCurveForSensitivity(config.touchpadPointerSpeed,
                                                      accelCurveProp.getCount()));
        mPropertyProvider.getProperty("Use Custom Touchpad Scroll Accel Curve")
                .setBoolValues({true});
        GesturesProp scrollCurveProp = mPropertyProvider.getProperty("Scroll Accel Curve");
        scrollCurveProp.setRealValues(
                createAccelerationCurveForSensitivity(config.touchpadPointerSpeed,
                                                      scrollCurveProp.getCount()));
        mPropertyProvider.getProperty("Scroll X Out Scale").setRealValues({1.0});
        mPropertyProvider.getProperty("Scroll Y Out Scale").setRealValues({1.0});
        mPropertyProvider.getProperty("Invert Scrolling")
                .setBoolValues({config.touchpadNaturalScrollingEnabled});
        mPropertyProvider.getProperty("Tap Enable")
+4 −12
Original line number Diff line number Diff line
@@ -254,8 +254,7 @@ Layer::~Layer() {
        mFlinger->mTunnelModeEnabledReporter->decrementTunnelModeCount();
    }
    if (mHadClonedChild) {
        auto& roots = mFlinger->mLayerMirrorRoots;
        roots.erase(std::remove(roots.begin(), roots.end(), this), roots.end());
        mFlinger->mNumClones--;
    }
    if (hasTrustedPresentationListener()) {
        mFlinger->mNumTrustedPresentationListeners--;
@@ -2595,7 +2594,7 @@ void Layer::updateCloneBufferInfo() {
    mDrawingState.inputInfo = tmpInputInfo;
}

bool Layer::updateMirrorInfo(const std::deque<Layer*>& cloneRootsPendingUpdates) {
void Layer::updateMirrorInfo() {
    if (mClonedChild == nullptr || !mClonedChild->isClonedFromAlive()) {
        // If mClonedChild is null, there is nothing to mirror. If isClonedFromAlive returns false,
        // it means that there is a clone, but the layer it was cloned from has been destroyed. In
@@ -2603,7 +2602,7 @@ bool Layer::updateMirrorInfo(const std::deque<Layer*>& cloneRootsPendingUpdates)
        // destroyed. The root, this layer, will still be around since the client can continue
        // to hold a reference, but no cloned layers will be displayed.
        mClonedChild = nullptr;
        return true;
        return;
    }

    std::map<sp<Layer>, sp<Layer>> clonedLayersMap;
@@ -2618,13 +2617,6 @@ bool Layer::updateMirrorInfo(const std::deque<Layer*>& cloneRootsPendingUpdates)
    mClonedChild->updateClonedDrawingState(clonedLayersMap);
    mClonedChild->updateClonedChildren(sp<Layer>::fromExisting(this), clonedLayersMap);
    mClonedChild->updateClonedRelatives(clonedLayersMap);

    for (Layer* root : cloneRootsPendingUpdates) {
        if (clonedLayersMap.find(sp<Layer>::fromExisting(root)) != clonedLayersMap.end()) {
            return false;
        }
    }
    return true;
}

void Layer::updateClonedDrawingState(std::map<sp<Layer>, sp<Layer>>& clonedLayersMap) {
@@ -2772,7 +2764,7 @@ bool Layer::isInternalDisplayOverlay() const {
void Layer::setClonedChild(const sp<Layer>& clonedChild) {
    mClonedChild = clonedChild;
    mHadClonedChild = true;
    mFlinger->mLayerMirrorRoots.push_back(this);
    mFlinger->mNumClones++;
}

bool Layer::setDropInputMode(gui::DropInputMode mode) {
+1 −1
Original line number Diff line number Diff line
@@ -651,7 +651,7 @@ public:

    gui::WindowInfo::Type getWindowType() const { return mWindowType; }

    bool updateMirrorInfo(const std::deque<Layer*>& cloneRootsPendingUpdates);
    void updateMirrorInfo();

    /*
     * doTransaction - process the transaction. This is a good place to figure
+1 −1
Original line number Diff line number Diff line
@@ -85,7 +85,7 @@ void LayerRenderArea::render(std::function<void()> drawLayers) {
    // If layer is offscreen, update mirroring info if it exists
    if (mLayer->isRemovedFromCurrentState()) {
        mLayer->traverse(LayerVector::StateSet::Drawing,
                         [&](Layer* layer) { layer->updateMirrorInfo({}); });
                         [&](Layer* layer) { layer->updateMirrorInfo(); });
        mLayer->traverse(LayerVector::StateSet::Drawing,
                         [&](Layer* layer) { layer->updateCloneBufferInfo(); });
    }
+3 −16
Original line number Diff line number Diff line
@@ -4024,21 +4024,8 @@ void SurfaceFlinger::doCommitTransactions() {
    }

    commitOffscreenLayers();
    if (mLayerMirrorRoots.size() > 0) {
        std::deque<Layer*> pendingUpdates;
        pendingUpdates.insert(pendingUpdates.end(), mLayerMirrorRoots.begin(),
                              mLayerMirrorRoots.end());
        std::vector<Layer*> needsUpdating;
        for (Layer* cloneRoot : mLayerMirrorRoots) {
            pendingUpdates.pop_front();
            if (cloneRoot->updateMirrorInfo(pendingUpdates)) {
            } else {
                needsUpdating.push_back(cloneRoot);
            }
        }
        for (Layer* cloneRoot : needsUpdating) {
            cloneRoot->updateMirrorInfo({});
        }
    if (mNumClones > 0) {
        mDrawingState.traverse([&](Layer* layer) { layer->updateMirrorInfo(); });
    }
}

@@ -4145,7 +4132,7 @@ bool SurfaceFlinger::latchBuffers() {
        mBootStage = BootStage::BOOTANIMATION;
    }

    if (mLayerMirrorRoots.size() > 0) {
    if (mNumClones > 0) {
        mDrawingState.traverse([&](Layer* layer) { layer->updateCloneBufferInfo(); });
    }

Loading