Loading services/surfaceflinger/Android.bp +0 −1 Original line number Diff line number Diff line Loading @@ -195,7 +195,6 @@ filegroup { "ScreenCaptureOutput.cpp", "StartPropertySetThread.cpp", "SurfaceFlinger.cpp", "SurfaceFlingerConfig.cpp", "SurfaceFlingerDefaultFactory.cpp", "Tracing/LayerTracing.cpp", "Tracing/TransactionTracing.cpp", Loading services/surfaceflinger/DisplayDevice.cpp +12 −12 Original line number Diff line number Diff line Loading @@ -78,19 +78,18 @@ DisplayDevice::DisplayDevice(DisplayDeviceCreationArgs& args) .setDisplayHeight(ANativeWindow_getHeight(args.nativeWindow.get())) .setNativeWindow(std::move(args.nativeWindow)) .setDisplaySurface(std::move(args.displaySurface)) .setMaxTextureCacheSize(static_cast<size_t>( mFlinger->getConfig().maxFrameBufferAcquiredBuffers)) .setMaxTextureCacheSize( static_cast<size_t>(SurfaceFlinger::maxFrameBufferAcquiredBuffers)) .build()); if (!mFlinger->getConfig().disableClientCompositionCache && mFlinger->getConfig().maxFrameBufferAcquiredBuffers > 0) { if (!mFlinger->mDisableClientCompositionCache && SurfaceFlinger::maxFrameBufferAcquiredBuffers > 0) { mCompositionDisplay->createClientCompositionCache( static_cast<uint32_t>(mFlinger->getConfig().maxFrameBufferAcquiredBuffers)); static_cast<uint32_t>(SurfaceFlinger::maxFrameBufferAcquiredBuffers)); } mCompositionDisplay->setPredictCompositionStrategy( mFlinger->getConfig().predictCompositionStrategy); mCompositionDisplay->setTreat170mAsSrgb(mFlinger->getConfig().treat170mAsSrgb); mCompositionDisplay->setPredictCompositionStrategy(mFlinger->mPredictCompositionStrategy); mCompositionDisplay->setTreat170mAsSrgb(mFlinger->mTreat170mAsSrgb); mCompositionDisplay->createDisplayColorProfile( compositionengine::DisplayColorProfileCreationArgsBuilder() .setHasWideColorGamut(args.hasWideColorGamut) Loading Loading @@ -412,22 +411,23 @@ HdrCapabilities DisplayDevice::getHdrCapabilities() const { capabilities.getDesiredMinLuminance()); } void DisplayDevice::enableRefreshRateOverlay(bool enable, bool setByHwc) { void DisplayDevice::enableRefreshRateOverlay(bool enable, bool setByHwc, bool showSpinner, bool showRenderRate, bool showInMiddle) { if (!enable) { mRefreshRateOverlay.reset(); return; } ftl::Flags<RefreshRateOverlay::Features> features; if (mFlinger->getConfig().refreshRateOverlay.showSpinner) { if (showSpinner) { features |= RefreshRateOverlay::Features::Spinner; } if (mFlinger->getConfig().refreshRateOverlay.showRenderRate) { if (showRenderRate) { features |= RefreshRateOverlay::Features::RenderRate; } if (mFlinger->getConfig().refreshRateOverlay.showInMiddle) { if (showInMiddle) { features |= RefreshRateOverlay::Features::ShowInMiddle; } Loading services/surfaceflinger/DisplayDevice.h +2 −1 Original line number Diff line number Diff line Loading @@ -236,7 +236,8 @@ public: } // Enables an overlay to be displayed with the current refresh rate void enableRefreshRateOverlay(bool enable, bool setByHwc) REQUIRES(kMainThreadContext); void enableRefreshRateOverlay(bool enable, bool setByHwc, bool showSpinner, bool showRenderRate, bool showInMiddle) REQUIRES(kMainThreadContext); void updateRefreshRateOverlayRate(Fps displayFps, Fps renderFps, bool setByHwc = false); bool isRefreshRateOverlayEnabled() const { return mRefreshRateOverlay != nullptr; } bool onKernelTimerChanged(std::optional<DisplayModeId>, bool timerExpired); Loading services/surfaceflinger/DisplayHardware/FramebufferSurface.cpp +3 −3 Original line number Diff line number Diff line Loading @@ -50,8 +50,7 @@ using ui::Dataspace; FramebufferSurface::FramebufferSurface(HWComposer& hwc, PhysicalDisplayId displayId, const sp<IGraphicBufferConsumer>& consumer, const ui::Size& size, const ui::Size& maxSize, int maxAcquiredBufferCount) const ui::Size& size, const ui::Size& maxSize) : ConsumerBase(consumer), mDisplayId(displayId), mMaxSize(maxSize), Loading @@ -71,7 +70,8 @@ FramebufferSurface::FramebufferSurface(HWComposer& hwc, PhysicalDisplayId displa GRALLOC_USAGE_HW_COMPOSER); const auto limitedSize = limitSize(size); mConsumer->setDefaultBufferSize(limitedSize.width, limitedSize.height); mConsumer->setMaxAcquiredBufferCount(maxAcquiredBufferCount); mConsumer->setMaxAcquiredBufferCount( SurfaceFlinger::maxFrameBufferAcquiredBuffers - 1); for (size_t i = 0; i < sizeof(mHwcBufferIds) / sizeof(mHwcBufferIds[0]); ++i) { mHwcBufferIds[i] = UINT64_MAX; Loading services/surfaceflinger/DisplayHardware/FramebufferSurface.h +1 −1 Original line number Diff line number Diff line Loading @@ -42,7 +42,7 @@ class FramebufferSurface : public ConsumerBase, public compositionengine::Displa public: FramebufferSurface(HWComposer& hwc, PhysicalDisplayId displayId, const sp<IGraphicBufferConsumer>& consumer, const ui::Size& size, const ui::Size& maxSize, int maxAcquiredBufferCount); const ui::Size& maxSize); virtual status_t beginFrame(bool mustRecompose); virtual status_t prepareFrame(CompositionType compositionType); Loading Loading
services/surfaceflinger/Android.bp +0 −1 Original line number Diff line number Diff line Loading @@ -195,7 +195,6 @@ filegroup { "ScreenCaptureOutput.cpp", "StartPropertySetThread.cpp", "SurfaceFlinger.cpp", "SurfaceFlingerConfig.cpp", "SurfaceFlingerDefaultFactory.cpp", "Tracing/LayerTracing.cpp", "Tracing/TransactionTracing.cpp", Loading
services/surfaceflinger/DisplayDevice.cpp +12 −12 Original line number Diff line number Diff line Loading @@ -78,19 +78,18 @@ DisplayDevice::DisplayDevice(DisplayDeviceCreationArgs& args) .setDisplayHeight(ANativeWindow_getHeight(args.nativeWindow.get())) .setNativeWindow(std::move(args.nativeWindow)) .setDisplaySurface(std::move(args.displaySurface)) .setMaxTextureCacheSize(static_cast<size_t>( mFlinger->getConfig().maxFrameBufferAcquiredBuffers)) .setMaxTextureCacheSize( static_cast<size_t>(SurfaceFlinger::maxFrameBufferAcquiredBuffers)) .build()); if (!mFlinger->getConfig().disableClientCompositionCache && mFlinger->getConfig().maxFrameBufferAcquiredBuffers > 0) { if (!mFlinger->mDisableClientCompositionCache && SurfaceFlinger::maxFrameBufferAcquiredBuffers > 0) { mCompositionDisplay->createClientCompositionCache( static_cast<uint32_t>(mFlinger->getConfig().maxFrameBufferAcquiredBuffers)); static_cast<uint32_t>(SurfaceFlinger::maxFrameBufferAcquiredBuffers)); } mCompositionDisplay->setPredictCompositionStrategy( mFlinger->getConfig().predictCompositionStrategy); mCompositionDisplay->setTreat170mAsSrgb(mFlinger->getConfig().treat170mAsSrgb); mCompositionDisplay->setPredictCompositionStrategy(mFlinger->mPredictCompositionStrategy); mCompositionDisplay->setTreat170mAsSrgb(mFlinger->mTreat170mAsSrgb); mCompositionDisplay->createDisplayColorProfile( compositionengine::DisplayColorProfileCreationArgsBuilder() .setHasWideColorGamut(args.hasWideColorGamut) Loading Loading @@ -412,22 +411,23 @@ HdrCapabilities DisplayDevice::getHdrCapabilities() const { capabilities.getDesiredMinLuminance()); } void DisplayDevice::enableRefreshRateOverlay(bool enable, bool setByHwc) { void DisplayDevice::enableRefreshRateOverlay(bool enable, bool setByHwc, bool showSpinner, bool showRenderRate, bool showInMiddle) { if (!enable) { mRefreshRateOverlay.reset(); return; } ftl::Flags<RefreshRateOverlay::Features> features; if (mFlinger->getConfig().refreshRateOverlay.showSpinner) { if (showSpinner) { features |= RefreshRateOverlay::Features::Spinner; } if (mFlinger->getConfig().refreshRateOverlay.showRenderRate) { if (showRenderRate) { features |= RefreshRateOverlay::Features::RenderRate; } if (mFlinger->getConfig().refreshRateOverlay.showInMiddle) { if (showInMiddle) { features |= RefreshRateOverlay::Features::ShowInMiddle; } Loading
services/surfaceflinger/DisplayDevice.h +2 −1 Original line number Diff line number Diff line Loading @@ -236,7 +236,8 @@ public: } // Enables an overlay to be displayed with the current refresh rate void enableRefreshRateOverlay(bool enable, bool setByHwc) REQUIRES(kMainThreadContext); void enableRefreshRateOverlay(bool enable, bool setByHwc, bool showSpinner, bool showRenderRate, bool showInMiddle) REQUIRES(kMainThreadContext); void updateRefreshRateOverlayRate(Fps displayFps, Fps renderFps, bool setByHwc = false); bool isRefreshRateOverlayEnabled() const { return mRefreshRateOverlay != nullptr; } bool onKernelTimerChanged(std::optional<DisplayModeId>, bool timerExpired); Loading
services/surfaceflinger/DisplayHardware/FramebufferSurface.cpp +3 −3 Original line number Diff line number Diff line Loading @@ -50,8 +50,7 @@ using ui::Dataspace; FramebufferSurface::FramebufferSurface(HWComposer& hwc, PhysicalDisplayId displayId, const sp<IGraphicBufferConsumer>& consumer, const ui::Size& size, const ui::Size& maxSize, int maxAcquiredBufferCount) const ui::Size& size, const ui::Size& maxSize) : ConsumerBase(consumer), mDisplayId(displayId), mMaxSize(maxSize), Loading @@ -71,7 +70,8 @@ FramebufferSurface::FramebufferSurface(HWComposer& hwc, PhysicalDisplayId displa GRALLOC_USAGE_HW_COMPOSER); const auto limitedSize = limitSize(size); mConsumer->setDefaultBufferSize(limitedSize.width, limitedSize.height); mConsumer->setMaxAcquiredBufferCount(maxAcquiredBufferCount); mConsumer->setMaxAcquiredBufferCount( SurfaceFlinger::maxFrameBufferAcquiredBuffers - 1); for (size_t i = 0; i < sizeof(mHwcBufferIds) / sizeof(mHwcBufferIds[0]); ++i) { mHwcBufferIds[i] = UINT64_MAX; Loading
services/surfaceflinger/DisplayHardware/FramebufferSurface.h +1 −1 Original line number Diff line number Diff line Loading @@ -42,7 +42,7 @@ class FramebufferSurface : public ConsumerBase, public compositionengine::Displa public: FramebufferSurface(HWComposer& hwc, PhysicalDisplayId displayId, const sp<IGraphicBufferConsumer>& consumer, const ui::Size& size, const ui::Size& maxSize, int maxAcquiredBufferCount); const ui::Size& maxSize); virtual status_t beginFrame(bool mustRecompose); virtual status_t prepareFrame(CompositionType compositionType); Loading