From 1f724b13939c677e275a4aebf5180dbe15d513fa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C5=BDeljan=20Rikalo?= Date: Thu, 18 Jan 2024 22:20:03 +0100 Subject: [PATCH] Qt,Qt5,Qt6: fixed widget palette dangling pointers. (cherry picked from commit b2dc565bb3064e2253a6304ab426a0bc87334121) --- lcl/interfaces/qt/qtwidgets.pas | 7 +++++-- lcl/interfaces/qt5/qtwidgets.pas | 7 +++++-- lcl/interfaces/qt6/qtwidgets.pas | 7 +++++-- 3 files changed, 15 insertions(+), 6 deletions(-) diff --git a/lcl/interfaces/qt/qtwidgets.pas b/lcl/interfaces/qt/qtwidgets.pas index 459f943846..5982e8f8ec 100644 --- a/lcl/interfaces/qt/qtwidgets.pas +++ b/lcl/interfaces/qt/qtwidgets.pas @@ -2552,8 +2552,11 @@ begin begin // DebugLn('QEventEnabledChange: ',dbgsName(LCLObject),' enabled ',dbgs(getEnabled)); if not getEnabled then - Palette.setTextColor(@Palette.DisabledTextColor) - else + begin + BeginUpdate; + Palette.setTextColor(@Palette.DisabledTextColor); + EndUpdate; + end else begin setInitialColor; setInitialFontColor; diff --git a/lcl/interfaces/qt5/qtwidgets.pas b/lcl/interfaces/qt5/qtwidgets.pas index 9d34952cd8..79bbf477e4 100644 --- a/lcl/interfaces/qt5/qtwidgets.pas +++ b/lcl/interfaces/qt5/qtwidgets.pas @@ -2664,8 +2664,11 @@ begin begin // DebugLn('QEventEnabledChange: ',dbgsName(LCLObject),' enabled ',dbgs(getEnabled)); if not getEnabled then - Palette.setTextColor(@Palette.DisabledTextColor) - else + begin + BeginUpdate; + Palette.setTextColor(@Palette.DisabledTextColor); + EndUpdate; + end else begin setInitialColor; setInitialFontColor; diff --git a/lcl/interfaces/qt6/qtwidgets.pas b/lcl/interfaces/qt6/qtwidgets.pas index 07c6447b2d..28d8374019 100644 --- a/lcl/interfaces/qt6/qtwidgets.pas +++ b/lcl/interfaces/qt6/qtwidgets.pas @@ -2662,8 +2662,11 @@ begin begin // DebugLn('QEventEnabledChange: ',dbgsName(LCLObject),' enabled ',dbgs(getEnabled)); if not getEnabled then - Palette.setTextColor(@Palette.DisabledTextColor) - else + begin + BeginUpdate; + Palette.setTextColor(@Palette.DisabledTextColor); + EndUpdate; + end else begin setInitialColor; setInitialFontColor;